@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap');
:root{--paper:#fff;--ink:#141616;--ink2:#343b3a;--muted:#6b7370;--line:#e5e8e4;--lime:#d9fc57;--warm:#f7f8f3;--grey:#f1f3ed;--deep:#152121;--ease:cubic-bezier(.2,.7,.12,1);--width:1360px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans JP',sans-serif;line-height:1.8;letter-spacing:.02em}body.no-scroll{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}::selection{background:var(--lime);color:#131915}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #64a600;outline-offset:3px}.wrap{width:min(var(--width),calc(100% - 7.2vw));margin:0 auto}.topnote{background:#121b19;color:#d5e2d7;font-size:11px;letter-spacing:.12em;text-align:center;padding:7px 16px}.topnote strong{color:var(--lime)}.header{position:sticky;top:0;background:rgba(255,255,255,.93);backdrop-filter:blur(18px);z-index:50;border-bottom:1px solid rgba(0,0,0,.075)}.nav{display:flex;justify-content:space-between;align-items:center;min-height:90px;gap:26px}.brand{display:inline-flex;align-items:center;gap:11px;min-width:226px}.brand img{width:50px;height:50px;object-fit:contain;mix-blend-mode:multiply}.brand b{display:block;font-size:16px;line-height:1.15;letter-spacing:-.05em}.brand small{font-size:9px;letter-spacing:.1em;color:#66716b}.links{display:flex;align-items:center;gap:29px;margin-left:auto}.links>a:not(.nav-cta){font-weight:700;font-size:12px;position:relative;white-space:nowrap}.links>a:not(.nav-cta)::after{content:'';position:absolute;bottom:-7px;left:0;width:100%;height:1px;background:#000;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}.links>a:hover::after{transform:scaleX(1)}.nav-cta{background:var(--ink);color:#fff;border-radius:2px;padding:12px 18px;font-size:12px;font-weight:700;display:inline-flex;gap:20px;align-items:center;white-space:nowrap;transition:background .3s,color .3s}.nav-cta:hover{background:var(--lime);color:var(--ink)}.hamb{display:none;border:0;background:none;width:45px;height:45px}.hamb i{display:block;height:2px;background:#171d17;margin:6px;width:24px;transition:transform .3s}.page{min-height:65vh}.eyebrow{font-size:11px;letter-spacing:.19em;text-transform:uppercase;font-weight:800;color:#5e6b65}.eyebrow em{font-style:normal;color:#a1ab9f;padding-right:12px}.display{font-size:clamp(64px,8.9vw,148px);font-weight:900;line-height:1.09;letter-spacing:-.092em;margin:0}.display-s{font-size:clamp(50px,6.4vw,104px);font-weight:900;line-height:1.14;letter-spacing:-.075em;margin:0}.display-m{font-size:clamp(42px,5.1vw,80px);font-weight:900;line-height:1.2;letter-spacing:-.075em;margin:0}.serif{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.11em}.muted{color:var(--muted)}.label{color:#69806f;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.line-link{display:inline-flex;align-items:center;gap:26px;justify-content:space-between;font-size:13px;font-weight:800;border-bottom:1px solid currentColor;padding:13px 0;transition:padding .3s var(--ease);white-space:nowrap}.line-link:hover{padding-left:10px;padding-right:10px}.arrow-circ{display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid currentColor;border-radius:50%;transition:transform .45s var(--ease),background .3s,color .3s;flex-shrink:0;font-size:20px}.line-link:hover .arrow-circ,.more:hover .arrow-circ{transform:rotate(45deg);background:var(--lime);border-color:var(--lime);color:var(--ink)}.big-link{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:27px 0;font-weight:900;letter-spacing:-.045em;font-size:clamp(22px,2.6vw,36px);transition:padding .45s var(--ease),color .3s}.big-link:hover{padding-left:16px;color:#4f7205}.big-link .arrow-circ{width:52px;height:52px}.section{padding:clamp(95px,10vw,165px) 0}.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}.intro-grid p{font-size:clamp(15px,1.35vw,19px);max-width:460px;line-height:2.3;color:#3d4640}.hero{position:relative;background:linear-gradient(#fff,#fff);padding:95px 0 86px;overflow:hidden}.hero>.wrap{position:relative}.hero-stage{display:grid;grid-template-columns:1.14fr .86fr;gap:4vw;align-items:center;min-height:580px}.hero-heading{position:relative;z-index:4}.hero-heading h1{margin:28px 0 32px;font-size:clamp(60px,8.35vw,135px);line-height:1.25;letter-spacing:-.105em;font-weight:900}.hero-heading h1 span{display:block;white-space:nowrap}.hero-heading h1 .accent{position:relative;display:inline-block}.hero-heading h1 .accent:after{content:'';height:.14em;bottom:-.04em;left:2%;width:97%;background:var(--lime);position:absolute;z-index:-1;transform:scaleX(0);transform-origin:left;animation:underline 1.1s .7s var(--ease) both}.hero-lead{font-size:clamp(14px,1.26vw,18px);max-width:470px;line-height:2.4;margin:0 0 36px}.hero-cta{display:flex;gap:34px;flex-wrap:wrap}.hero-cta a{font-size:14px}.hero-image-wrap{position:relative;min-width:0;height:min(560px,50vw);z-index:1}.hero-photo{position:absolute;inset:8% -6% 7% 5%;overflow:hidden;border-radius:50% 50% 43% 57% / 52% 45% 55% 48%;transform:rotate(-4deg);background:#e9f0eb}.hero-photo img{height:100%;width:100%;object-fit:cover;filter:saturate(.7) contrast(1.02);animation:heroZoom 15s ease-in-out infinite alternate}.hero-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(30deg,rgba(32,46,39,.17),transparent 55%)}.hero-outline{position:absolute;inset:0 -14% 0 -4%;border:1px solid rgba(20,35,22,.25);border-radius:51% 49% 54% 46%;transform:rotate(10deg);animation:orbit 26s linear infinite}.hero-round{position:absolute;right:-9%;bottom:9%;width:clamp(115px,14vw,205px);aspect-ratio:1;border-radius:50%;background:var(--lime);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-weight:900;font-size:12px;letter-spacing:.11em;box-shadow:0 20px 35px rgba(36,43,20,.10);animation:float 6s ease-in-out infinite}.hero-round span{font-size:36px;font-weight:400;line-height:1}.vertical-note{position:absolute;right:0;top:4%;writing-mode:vertical-rl;letter-spacing:.27em;font-size:10px;font-weight:800;color:#65796e}.hero-index{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:25px;font-size:11px;font-weight:700;letter-spacing:.15em;color:#69736b}.hero-index span:last-child{display:inline-flex;align-items:center;gap:12px}.hero-index b{height:1px;width:75px;background:#9eb1a2}.ticker{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}.ticker-track{display:flex;gap:45px;white-space:nowrap;width:max-content;animation:marquee 28s linear infinite}.ticker-track b{font-weight:900;font-size:clamp(23px,2.7vw,42px);letter-spacing:-.06em}.ticker-track em{color:#b7c2b8;font-style:normal}.statement{background:var(--warm)}.statement .statement-lead{max-width:900px;font-size:clamp(33px,4.35vw,70px);line-height:1.55;font-weight:900;letter-spacing:-.08em;margin:45px 0 0}.statement .statement-lead strong{position:relative;font-weight:900;white-space:nowrap}.statement .statement-lead strong:after{content:'';position:absolute;left:0;bottom:.09em;height:.13em;width:100%;background:var(--lime);z-index:-1}.statement-foot{margin-top:55px;display:flex;justify-content:space-between;align-items:end;gap:28px}.statement-foot p{max-width:340px;font-size:14px;line-height:2.2;color:#53615a}.chapter{border-bottom:1px solid var(--line);padding:80px 0;display:grid;grid-template-columns:minmax(120px,.24fr) minmax(0,1fr) 240px;gap:32px;align-items:center}.chapter h3{font-size:clamp(38px,4.7vw,72px);line-height:1.35;letter-spacing:-.075em;margin:0 0 14px}.chapter p{color:#67736c;max-width:620px;font-size:15px;margin:0}.chapter .chapter-link{justify-self:end}.chapter .chapter-link .arrow-circ{width:78px;height:78px;font-size:32px}.chapter:hover .arrow-circ{transform:rotate(45deg);background:var(--lime);border-color:var(--lime)}.chapter .seq{align-self:start;padding-top:10px;font-size:12px;letter-spacing:.12em}.image-band{height:min(670px,58vw);min-height:390px;position:relative;overflow:hidden;background:#eff0eb}.image-band img{width:100%;height:115%;object-fit:cover;object-position:center;filter:saturate(.66);transform:translateY(-5%)}.image-band::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.20),transparent 70%)}.image-band .band-text{position:absolute;left:max(calc((100vw - var(--width))/2),3.6vw);bottom:10%;color:white;font-size:clamp(58px,8.4vw,136px);line-height:1;font-weight:900;letter-spacing:-.095em;z-index:2}.services{padding-bottom:150px}.service-row{border-top:1px solid var(--line);padding:38px 0 50px;display:grid;grid-template-columns:70px .8fr 1.1fr 130px;gap:28px;align-items:start;transition:background .3s}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row:hover{background:#fbfdf6}.service-row .n{color:#798878;font-weight:800;font-size:13px}.service-row h3{font-size:clamp(29px,3.2vw,54px);letter-spacing:-.08em;margin:0;line-height:1.2}.service-row p{color:#5d6962;font-size:15px;margin:0;max-width:510px}.service-row .arrow-circ{margin-left:auto;width:54px;height:54px}.work-stage{background:#1c2420;color:#fff;overflow:hidden}.work-stage .eyebrow{color:#a9b7ac}.work-stage h2{font-size:clamp(53px,7.4vw,116px);line-height:1.25;letter-spacing:-.09em;margin:36px 0}.work-stage .work-split{display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;align-items:end}.work-stage p{color:#c4d3c7;font-size:16px;line-height:2.1;max-width:480px}.work-stage .big-link{color:#fff;border-color:#526057}.work-stage .big-link:hover{color:var(--lime)}.work-stage .work-no{font-weight:900;font-size:clamp(100px,17vw,260px);letter-spacing:-.14em;line-height:1;color:var(--lime);opacity:.93}.work-stage .job-segment{display:flex;gap:12px;flex-wrap:wrap;margin-top:50px}.chip{border:1px solid #819083;color:#eaf2e9;padding:10px 16px;font-size:12px;letter-spacing:.06em;border-radius:30px;transition:.3s}.chip:hover{background:var(--lime);color:#131915;border-color:var(--lime);transform:translateY(-4px)}.closing{padding:130px 0;background:var(--lime);overflow:hidden}.closing h2{font-size:clamp(49px,7vw,110px);letter-spacing:-.09em;line-height:1.3;margin:28px 0}.closing .big-link{border-color:#a0c230;max-width:610px}.footer{background:#101512;color:#e5ede6;padding:75px 0 25px}.footer .footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:60px}.footer .brand img{background:#fff;border-radius:50%;padding:4px}.footer p{font-size:12px;line-height:2.1;color:#aeb9af}.footer h4{font-size:11px;color:#889b8c;letter-spacing:.13em}.footer a:not(.brand){display:block;padding:5px 0;font-size:14px;transition:color .2s}.footer a:hover{color:var(--lime)}.footer-bottom{margin-top:70px;border-top:1px solid #3a433b;padding-top:25px;display:flex;justify-content:space-between;gap:15px;color:#9dac9d;font-size:11px;letter-spacing:.05em}.inner-hero{padding:96px 0 77px;background:#fff;overflow:hidden}.inner-hero .wrap{position:relative}.inner-hero h1{margin:24px 0 20px;font-size:clamp(50px,7.7vw,122px);font-weight:900;line-height:1.22;letter-spacing:-.09em}.inner-hero p{max-width:740px;color:#58655e;font-size:16px;line-height:2.1}.inner-hero::after{content:'';display:block;width:min(500px,35vw);height:min(160px,12vw);background:var(--lime);position:absolute;right:-7vw;top:205px;border-radius:50%;filter:blur(95px);z-index:-1}.line-grid{border-top:1px solid var(--line);display:grid;grid-template-columns:.32fr 1fr;gap:40px;padding:50px 0;border-bottom:1px solid var(--line)}.line-grid>div:first-child{font-size:12px;letter-spacing:.14em;color:#89988d;font-weight:800}.line-grid h2{font-size:clamp(30px,3.6vw,56px);margin:0 0 22px;letter-spacing:-.07em}.line-grid p{font-size:16px;color:#48534a;line-height:2.1;max-width:850px}.line-grid ul{padding-left:20px}.line-grid li{margin:10px 0}.company-list{border-top:1px solid var(--line);margin-top:65px}.company-list>div{display:grid;grid-template-columns:220px 1fr;gap:25px;border-bottom:1px solid var(--line);padding:27px 0;font-size:15px}.company-list dt{font-size:13px;font-weight:800;color:#728173}.company-list dd{margin:0}.form-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;padding:30px 0 120px}.form-intro h2{font-size:clamp(37px,4.2vw,60px);line-height:1.4;letter-spacing:-.07em;margin:0 0 22px}.form-intro p{color:#5e6a63}.form-intro a{border-bottom:1px solid currentColor}.form-ui{border-top:2px solid var(--ink);padding-top:28px}.field{margin:0 0 27px}.field label{font-size:13px;font-weight:800;display:block;margin-bottom:9px}.field .required{color:#7b9e24;font-size:11px;margin-left:8px}.field input,.field textarea,.field select{width:100%;border:none;border-bottom:1px solid #b8c3ba;background:#fff;border-radius:0;padding:14px 2px;font-size:15px;color:var(--ink);outline:none;transition:border-color .25s}.field input:focus,.field textarea:focus,.field select:focus{border-color:#7cad10}.field textarea{min-height:155px;resize:vertical}.submit{background:#161d17;color:#fff;border:0;padding:17px 27px;font-weight:900;display:inline-flex;align-items:center;gap:60px;font-size:15px;transition:.25s}.submit:hover{background:#e2fa84;color:var(--ink)}.notice{font-size:12px;color:#68786b;line-height:1.8}.jobbar{position:sticky;top:90px;z-index:15;background:rgba(255,255,255,.96);border-top:1px solid var(--line);border-bottom:1px solid var(--line);backdrop-filter:blur(20px);padding:21px 0}.filter-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr auto;gap:15px;align-items:center}.filter-grid input,.filter-grid select{height:46px;width:100%;border:1px solid #d7dfd9;background:#fff;padding:0 14px;color:#1b281d;font-size:13px;border-radius:0}.filter-clear{background:transparent;border:0;font-size:12px;font-weight:800;text-decoration:underline}.job-list{padding:60px 0 125px}.job-status{font-size:13px;color:#718078;margin:0 0 25px}.job-item{display:grid;grid-template-columns:110px minmax(0,1fr) 150px;gap:30px;border-top:1px solid var(--line);padding:34px 0;transition:padding .3s,background .3s;align-items:start}.job-item:last-child{border-bottom:1px solid var(--line)}.job-item:hover{padding-left:12px;background:#fcfef7}.job-item .job-index{font-size:11px;color:#8a988e;letter-spacing:.12em}.job-item h3{font-size:clamp(20px,2.2vw,30px);line-height:1.55;letter-spacing:-.045em;margin:0 0 12px}.tags{display:flex;flex-wrap:wrap;gap:7px}.tag{font-size:11px;background:#f0f3ed;padding:5px 11px;border-radius:2px;color:#526451}.job-item .comp{text-align:right}.job-item .comp strong{display:block;font-size:15px}.job-item .comp small{font-size:10px;color:#718078}.job-detail{padding:50px 0 115px}.job-title{font-size:clamp(32px,4.9vw,70px);line-height:1.5;letter-spacing:-.067em;max-width:1100px;margin:27px 0 35px}.job-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.job-meta>div{display:flex;flex-direction:column;gap:10px}.job-meta .label{font-size:11px}.job-meta strong{font-size:16px}.job-copy{display:grid;grid-template-columns:220px 1fr;gap:55px;border-bottom:1px solid var(--line);padding:52px 0}.job-copy h2{font-size:17px;margin:0}.job-copy p{white-space:pre-line;font-size:15px;line-height:2.1;margin:0;overflow-wrap:anywhere}.job-apply{background:var(--lime);padding:50px;margin:65px 0 0;display:flex;justify-content:space-between;gap:28px;align-items:center}.job-apply h2{margin:0 0 8px;font-size:clamp(24px,3.3vw,43px);letter-spacing:-.06em}.job-apply p{margin:0;font-size:13px}.job-apply a{padding:14px 25px;background:#1a2418;color:#fff;white-space:nowrap;font-weight:800}.empty{padding:65px 20px;text-align:center;background:#f8faf4}.empty p{color:#6a7b6e}.reveal{opacity:0;transform:translateY(40px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}.reveal.is-visible{opacity:1;transform:none}.stagger>*{transition-delay:calc(var(--order,0)*120ms)}.wordmask{overflow:hidden}.wordmask span{display:inline-block;transform:translateY(120%);animation:wordin 1.15s var(--ease) forwards}.wordmask span:nth-child(2){animation-delay:.17s}.interactive-image{overflow:hidden}.interactive-image img{transition:transform 1.2s var(--ease)}.interactive-image:hover img{transform:scale(1.07)}.scroll-progress{height:3px;background:var(--lime);position:fixed;top:0;left:0;width:0;z-index:60;pointer-events:none}.skip{position:absolute;top:-100px;left:0;background:#d9fc57;color:#000;z-index:100;padding:14px}.skip:focus{top:0}@keyframes underline{to{transform:scaleX(1)}}@keyframes heroZoom{to{transform:scale(1.13)}}@keyframes float{50%{transform:translateY(-15px)}}@keyframes orbit{to{transform:rotate(370deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes wordin{to{transform:translateY(0)}}
@media(max-width:1060px){.links{gap:15px}.hero-stage{grid-template-columns:1fr}.hero-image-wrap{height:490px;width:min(70vw,600px);margin:0 auto}.hero-heading h1{font-size:clamp(60px,9vw,112px)}.chapter{grid-template-columns:100px 1fr 90px}.service-row{grid-template-columns:40px 1fr 1fr 60px}.footer .footer-grid{gap:30px}.jobbar{top:90px}}
@media(max-width:820px){.nav{min-height:78px}.hamb{display:block}.links{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:25px 5vw 35px;box-shadow:0 26px 32px rgba(0,0,0,.09);flex-direction:column;gap:20px;align-items:stretch}.links.open{display:flex}.links>a{font-size:16px!important}.hero{padding-top:65px}.hero-stage{display:block}.hero-image-wrap{height:470px;width:min(82vw,540px);margin-top:30px}.hero-heading h1{font-size:clamp(50px,9.1vw,82px)}.intro-grid,.work-stage .work-split{grid-template-columns:1fr;gap:25px}.chapter{grid-template-columns:50px 1fr;gap:12px}.chapter .chapter-link{grid-column:2;justify-self:start}.service-row{grid-template-columns:30px 1fr;gap:17px}.service-row p{grid-column:2}.service-row .arrow-circ{grid-column:2;margin:0}.footer .footer-grid{grid-template-columns:1fr 1fr}.filter-grid{grid-template-columns:1fr 1fr}.jobbar{position:static}.job-item{grid-template-columns:60px 1fr}.job-item .comp{grid-column:2;text-align:left}.job-meta{grid-template-columns:1fr}.job-copy{grid-template-columns:1fr;gap:18px}.job-apply{display:block}.job-apply a{display:inline-block;margin-top:22px}.form-grid{grid-template-columns:1fr;gap:30px}}
@media(max-width:540px){.wrap{width:calc(100% - 38px)}.brand{min-width:0}.brand img{width:42px;height:42px}.brand b{font-size:14px}.hero-heading h1{font-size:clamp(44px,10.6vw,64px);line-height:1.37}.hero-heading h1 span{white-space:normal}.hero-image-wrap{width:90vw;height:380px}.hero-round{right:1%;width:130px;font-size:10px}.hero-round span{font-size:24px}.vertical-note{right:3%}.hero-cta{gap:12px;display:grid;grid-template-columns:1fr}.hero-cta .line-link{width:100%}.hero-index{font-size:10px}.display-s{font-size:clamp(38px,11vw,62px)}.display-m{font-size:clamp(36px,9vw,54px)}.section{padding:85px 0}.statement-foot{display:block}.chapter{padding:50px 0}.chapter h3{font-size:36px}.service-row h3{font-size:34px}.image-band{min-height:340px}.work-stage .work-no{font-size:130px}.closing{padding:95px 0}.closing h2{font-size:clamp(40px,10vw,63px)}.footer .footer-grid{grid-template-columns:1fr}.footer-bottom{display:block;margin-top:40px}.inner-hero{padding:80px 0 70px}.inner-hero h1{font-size:clamp(47px,12vw,70px)}.line-grid{grid-template-columns:1fr;gap:12px}.company-list>div{grid-template-columns:1fr;gap:4px}.filter-grid{grid-template-columns:1fr}.job-item{grid-template-columns:1fr;gap:10px}.job-item .comp{grid-column:1}.job-apply{padding:30px}.job-copy{padding:35px 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.wordmask span{transform:none}}

/* CMS job timestamps */
.job-updated{font-size:11px;color:#63756a;margin:15px 0 0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.job-id-help{margin:0 0 22px;color:#63756a;font-size:13px;line-height:1.7}
.job-identifiers{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 0;font-size:12px;color:#49584e}
.job-identifiers b{font-weight:800}
.source-code{display:inline-flex;align-items:center;border:1px solid #d9e1d7;border-radius:2px;padding:2px 7px;font-size:10px;color:#526451;background:#f7f9f5}
.listing-status{border:1px solid #d9e1d7;padding:3px 8px;font-size:10px;border-radius:2px;background:#fff}
.job-dates{display:flex;gap:22px;flex-wrap:wrap;padding:19px 0;border-bottom:1px solid var(--line);color:#64716b;font-size:12px}

/* 2026-10-23: keep the first desktop screen comfortably readable at 100% zoom. */
html,body{max-width:100%;overflow-x:clip}
@media (min-width:821px){
 .hero{padding:clamp(24px,3.6vh,45px) 0 clamp(20px,3.2vh,42px)}
 .hero-stage{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:clamp(22px,3vw,48px);min-height:clamp(385px,calc(100svh - 250px),600px);align-items:center}
 .hero-heading{min-width:0}
 .hero-heading h1{font-size:clamp(46px,5.25vw,87px);line-height:1.13;letter-spacing:-.082em;margin:16px 0 23px}
 .hero-heading h1 span{max-width:100%}
 .hero .eyebrow{font-size:clamp(10px,.8vw,12px);letter-spacing:.09em}
 .hero-lead{font-size:clamp(13px,1.0vw,16px);line-height:1.8;max-width:510px;margin-bottom:23px}
 .hero-cta{gap:clamp(12px,2vw,28px)}
 .hero-image-wrap{width:100%;margin:0;height:clamp(300px,34vw,455px)}
 .hero-round{right:0%;width:clamp(100px,10vw,148px);font-size:11px}
 .hero-index{padding-top:14px;font-size:10px;letter-spacing:.09em}
 .nav{min-height:72px}
 .brand img{width:44px;height:44px}
 .topnote{padding:4px 12px;font-size:10px}
 .wordmask span{white-space:normal}
}
@media(min-width:821px) and (max-height:760px){
 .hero{padding-top:20px;padding-bottom:15px}
 .hero-stage{min-height:390px}
 .hero-heading h1{font-size:clamp(43px,4.8vw,76px);margin:12px 0 15px;line-height:1.1}
 .hero-image-wrap{height:clamp(270px,31vw,390px)}
 .hero-lead{line-height:1.66;margin-bottom:16px}
 .hero-index{padding-top:10px}
}
@media(min-width:821px) and (max-width:1080px){
 .hero-stage{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}
 .hero-image-wrap{width:100%;margin:0;height:clamp(260px,36vw,350px)}
 .hero-heading h1{font-size:clamp(45px,5.3vw,62px)}
 .hero-lead{font-size:13px;line-height:1.65}
 .hero-round{width:100px}
}
@media(max-width:820px){.hero{padding:45px 0 38px}.hero-stage{min-height:0}.hero-image-wrap{margin-top:26px}.hero-heading h1{line-height:1.2}}
@media(max-width:540px){.hero{padding:35px 0 32px}.hero-heading h1{font-size:clamp(42px,9vw,58px);margin:22px 0 24px}.hero-image-wrap{height:min(340px,78vw)}}
.tag-detail{background:#fff;border:1px solid #e0e8db;color:#64746c}

/* Accessibility and branding refinement — Oct 2026 */
body{font-size:16px}
@media(min-width:821px){
 .nav{min-height:98px;gap:28px}
 .brand{min-width:305px;gap:17px}
 .brand img{width:76px;height:76px;mix-blend-mode:normal}
 .brand b{font-size:18px;line-height:1.35;letter-spacing:-.025em}
 .brand small{font-size:11px;line-height:1.5}
 .links{gap:clamp(17px,1.7vw,32px)}
 .links>a:not(.nav-cta){font-size:clamp(14px,1.06vw,16px);letter-spacing:0}
 .nav-cta{font-size:15px;padding:15px 20px;min-height:48px}
 .hero-heading h1{font-size:clamp(48px,5.6vw,91px)}
 .hero-lead{font-size:clamp(16px,1.22vw,19px);line-height:1.9}
 .hero-cta .line-link{font-size:16px}
 .hero .eyebrow{font-size:12px}
}
@media(min-width:821px) and (max-width:1180px){
 .brand{min-width:265px;gap:11px}
 .brand img{width:66px;height:66px}
 .brand b{font-size:16px}
 .links{gap:12px}
 .links>a:not(.nav-cta){font-size:13px}
 .nav-cta{font-size:13px;padding:13px 16px}
}
@media(max-width:820px){
 .brand{gap:11px}
 .brand img{width:61px;height:61px}
 .brand b{font-size:16px}
 .brand small{font-size:10px}
 .links>a:not(.nav-cta){padding:10px 0}
 .nav-cta{font-size:16px;padding:15px 18px}
}
@media(max-width:540px){
 .brand img{width:56px;height:56px}
 .brand b{font-size:15px}
 .brand small{font-size:10px}
}
.page p,.chapter p,.company-list dd{font-size:max(15px,1rem)}
.inner-hero p{font-size:clamp(16px,1.15vw,19px)}
.section .eyebrow{font-size:12px}
.company-timeline{margin-top:78px}
.company-timeline h3{font-size:clamp(29px,3.4vw,47px);line-height:1.2;letter-spacing:-.06em;margin:18px 0 24px}
.history-list{margin:0}
.history-list>div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;padding:20px 0;border-top:1px solid var(--line)}
.history-list>div:last-child{border-bottom:1px solid var(--line)}
.history-list dt{font-size:15px;font-weight:800;color:#4a6c43}
.history-list dd{margin:0;font-size:15px;line-height:1.9}
.archive-note{font-size:12px!important;color:#78827b;margin:20px 0 0;line-height:1.7}
.legal-link-small{border-top:1px solid var(--line);margin-top:60px;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}
.legal-link-small span{font-size:12px;color:#78827b}
.legal-link-small a{font-size:13px;color:#515e54;text-decoration:underline;text-underline-offset:4px}
.legal-link-small a:hover{color:#1c3025}
.margin-hero{padding-bottom:52px}
.margin-details{padding-top:54px;padding-bottom:120px}
.margin-details h2{font-size:clamp(27px,3vw,40px);line-height:1.25;margin:16px 0 35px;letter-spacing:-.05em}
.margin-notice{padding:26px 30px;border-left:4px solid #a5c33e;background:#f7faee;margin-bottom:35px}
.margin-notice strong{font-size:16px}
.margin-notice p{margin:12px 0 0;font-size:14px!important;color:#546056;line-height:1.9}
.margin-list dd{color:#424d45}
.small-return{font-size:14px;text-decoration:underline;display:inline-block;margin-top:35px;text-underline-offset:4px}
@media(max-width:640px){.history-list>div{display:block}.history-list dd{margin-top:8px}.legal-link-small{display:block}.legal-link-small a{display:block;margin-top:8px}}

/* ────────────────────────────────────────
   KKS Recruit Studio + ZATSUDAN | 2026
   White editorial identity, clear interactive behavior.
   ──────────────────────────────────────── */
@media(min-width:1081px){.links{gap:clamp(12px,1.2vw,20px)}.links>a:not(.nav-cta){font-size:clamp(12px,.97vw,15px)}.brand{min-width:275px}.nav-cta{font-size:14px;padding:14px 16px}}
@media(min-width:821px) and (max-width:1080px){.nav{min-height:84px}.links{position:absolute;top:100%;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:23px 5vw 30px;flex-direction:column;align-items:stretch;display:none}.links.open{display:flex}.links>a:not(.nav-cta){padding:10px 0;font-size:16px}.hamb{display:block;margin-left:auto}}
.studio-pill{display:inline-flex;align-items:center;gap:10px;border:1px solid #dbe1d5;padding:8px 13px;border-radius:30px;font-size:11px;font-weight:800;letter-spacing:.12em;background:rgba(255,255,255,.7)}
.live-dot{width:7px;height:7px;background:#8db51b;border-radius:50%;box-shadow:0 0 0 4px rgba(177,222,69,.17)}
.studio-hero{background:radial-gradient(circle at 89% 18%,#f5f9e7 0,transparent 30%),linear-gradient(145deg,#fff,#f8f9f3);border-bottom:1px solid #e7ece5;overflow:hidden;min-height:600px;padding:72px 0 60px}
.studio-main-hero{background:radial-gradient(circle at 83% 23%,#e9f7e8 0,transparent 31%),#fff}
.studio-b2b-hero{background:radial-gradient(circle at 78% 35%,#eaf4e0 0,transparent 32%),#fff}
.studio-hero-inner{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);gap:clamp(28px,5vw,76px);align-items:center;margin-top:34px}
.studio-hero h1{font-size:clamp(49px,5.5vw,88px);font-weight:900;letter-spacing:-.082em;line-height:1.26;margin:16px 0 24px}
.studio-hero h1 em{font-style:normal;position:relative;z-index:0;white-space:nowrap}
.studio-hero h1 em::after{content:'';position:absolute;bottom:.1em;left:1%;right:0;height:.14em;z-index:-1;background:var(--lime)}
.studio-intro{font-size:clamp(16px,1.35vw,19px);line-height:2;max-width:610px;color:#4b5750;margin:0 0 24px}
.studio-intro strong{color:#182219}
.studio-hero-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px}
.studio-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:57px;border:1px solid #1b211b;padding:14px 20px;font-size:14px;line-height:1.4;font-weight:800;text-align:left;border-radius:2px;background:transparent;color:#1b211b;transition:transform .22s var(--ease),background .22s,border-color .22s,color .22s;cursor:pointer}
.studio-button span{font-size:22px;font-weight:500;display:inline-block;line-height:1;transition:transform .25s}
.studio-button:hover{transform:translateY(-3px)}.studio-button:hover span{transform:translate(3px,-3px)}
.studio-button-dark{background:#17221a;border-color:#17221a;color:#fff}.studio-button-dark:hover{background:#2b4530}
.studio-button-outline:hover{background:var(--lime);border-color:var(--lime)}
.studio-button:disabled{opacity:.45;cursor:not-allowed;transform:none}
.studio-hero-note{font-size:12px;color:#738072;margin-top:32px;margin-bottom:0}
.studio-section{padding:clamp(74px,8.2vw,122px) 0}.studio-soft{background:#f6f8f3}.studio-section .eyebrow{font-size:12px}
.studio-split-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:end;gap:40px;margin:19px 0 48px}
.studio-split-head h2,.studio-feature-footer h2{margin:0;font-size:clamp(36px,4.1vw,64px);letter-spacing:-.075em;line-height:1.34;font-weight:900}
.studio-split-head p,.studio-feature-footer p{margin:0;color:#59665a;font-size:16px;line-height:2;max-width:515px}
.studio-front-intro{background:#f7faef;position:relative;overflow:hidden}
.studio-front-intro:before{content:"";position:absolute;width:480px;height:480px;border:1px solid #e2ead7;border-radius:50%;right:-220px;top:-270px}
.studio-front-head{display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:center}
.studio-front-head h2{font-size:clamp(38px,4.25vw,67px);letter-spacing:-.075em;line-height:1.28;margin:25px 0}
.studio-front-head h2 span{position:relative;z-index:0}
.studio-front-head h2 span::after{content:"";position:absolute;bottom:3px;left:0;right:0;height:.15em;background:var(--lime);z-index:-1}
.studio-front-head p{font-size:17px;color:#536156;line-height:2.05;max-width:590px}
.studio-front-mark{height:260px;width:260px;border:1px solid #b9cfba;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin:0 auto;position:relative}
.studio-front-mark:before{content:"";position:absolute;inset:16px;border:1px dashed #bfc9b8;border-radius:50%;animation:studioSpin 60s linear infinite}
.studio-front-mark span{font-size:113px;font-weight:700;line-height:1;color:#1f4c30}
.studio-front-mark small{font-size:10px;letter-spacing:.17em;color:#69836f}
.studio-front-links{margin-top:42px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #cfd8ca;border-bottom:1px solid #cfd8ca}
.studio-front-links>a{display:flex;flex-direction:column;gap:21px;min-height:195px;padding:24px 24px 26px;border-right:1px solid #cfd8ca;transition:background .25s,padding .3s}
.studio-front-links>a:first-child{padding-left:4px}.studio-front-links>a:last-child{border-right:0}
.studio-front-links>a:hover{background:#edfacf;padding-left:28px}
.studio-front-links>a>span{font-size:11px;color:#52675a;font-weight:800;letter-spacing:.12em}
.studio-front-links>a>strong{font-size:clamp(24px,2.4vw,36px);font-weight:900;line-height:1.2;letter-spacing:-.07em}
.studio-front-links>a>em{font-style:normal;font-size:13px;color:#5a685c;display:flex;justify-content:space-between;gap:10px;margin-top:auto}
.studio-front-links>a>em>b{font-size:23px;color:#1e3226;font-weight:400;transition:transform .3s}
.studio-front-links>a:hover>em>b{transform:translate(5px,-5px)}
.studio-front-note{color:#768272;font-size:12px;margin-top:19px}
.studio-orbit{position:relative;aspect-ratio:1;margin:0 auto;width:min(100%,425px)}
.orbit-one,.orbit-two,.orbit-three{position:absolute;border:1px solid #d1dec9;border-radius:50%;inset:4%;animation:studioSpin 60s linear infinite}
.orbit-two{inset:15%;border-style:dashed;border-color:#bfcfbd;animation-duration:45s;animation-direction:reverse}
.orbit-three{inset:27%;border:2px solid #d4e6bc;animation-duration:30s}
.studio-orbit>strong{position:absolute;inset:36%;display:grid;place-items:center;background:var(--lime);border-radius:50%;font-size:clamp(55px,7vw,105px);font-weight:900;letter-spacing:-.09em}
.orbit-label{position:absolute;font-size:12px;font-weight:900;letter-spacing:.15em;background:#fff;padding:9px 13px;border:1px solid #e4e8e2;box-shadow:0 10px 35px #d5e0d044}
.orbit-label-a{left:0;top:12%}.orbit-label-b{right:0;top:42%}.orbit-label-c{left:12%;bottom:9%}
.zatsudan-choices{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.zatsudan-choice{display:grid;grid-template-columns:42px 1fr 30px;gap:16px;align-items:center;padding:28px 25px;border:1px solid #dce4da;background:#fff;min-height:125px;text-align:left;transition:background .25s,transform .25s,border-color .25s}
.zatsudan-choice:hover,.zatsudan-choice.selected{background:#f2fbdc;border-color:#a4bf66;transform:translateY(-3px)}
.zatsudan-choice>span{font-size:12px;font-weight:700;color:#81917b}
.zatsudan-choice>strong{font-size:20px;font-weight:900;line-height:1.5;letter-spacing:-.045em}
.zatsudan-choice>i{font-style:normal;font-size:25px;transition:transform .3s}
.zatsudan-choice:hover>i{transform:translate(3px,-3px)}
.zatsudan-answer{margin-top:24px;padding:32px 35px;background:#f6f9ef;border-left:5px solid #b7d96b;display:flex;align-items:center;justify-content:space-between;gap:20px}
.zatsudan-answer[hidden]{display:none}.zatsudan-answer h3{font-size:25px;letter-spacing:-.05em;margin:8px 0}
.zatsudan-answer p{margin:0;color:#56665a;max-width:680px;font-size:15px}
.studio-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.studio-three>article{border-top:1px solid #bccdba;padding:30px 16px 25px 0;min-height:240px}
.studio-three .step-num{font-size:11px;font-weight:900;letter-spacing:.14em;color:#658068}
.studio-three h3{font-size:clamp(23px,2.5vw,32px);margin:24px 0 13px;letter-spacing:-.05em}
.studio-three p{font-size:15px;color:#647067;line-height:2;max-width:360px}
.studio-feature-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:center}
.studio-feature-footer p{margin-top:22px}
.studio-interface-visual{padding:30px;border:1px solid #dbe5d8;background:#f6f9f2;box-shadow:0 30px 80px #cbd5c733;transform:rotate(2deg);border-radius:4px;position:relative;overflow:hidden}
.studio-interface-visual:before{content:"";position:absolute;width:260px;height:260px;border:1px solid #dae6d2;border-radius:50%;top:-120px;right:-90px}
.flow-title{font-size:10px;letter-spacing:.2em;font-weight:900;color:#5d785d;margin:0 0 28px}
.flow-circle{display:flex;align-items:center;gap:16px;border:1px solid #d2dfcc;border-radius:5px;padding:19px;background:white;position:relative;z-index:2}
.flow-circle>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#d9fc57;font-weight:900;font-size:13px}
.flow-circle>div{font-size:13px;color:#66736b;line-height:1.7}.flow-circle b{font-size:21px;color:#15201a;letter-spacing:-.05em}
.flow-circle-b{margin-left:45px}.flow-track{height:46px;margin-left:50%;width:1px;background:linear-gradient(#b4d093,#52774e);animation:flowPulse 2.5s ease-in-out infinite}
.flow-finish{margin:30px 0 0;background:#1c2920;color:white;padding:19px 20px;display:flex;justify-content:space-between;align-items:center;font-weight:900;font-size:18px;letter-spacing:-.03em}
.flow-finish>span{font-size:25px;color:var(--lime)}
.studio-tool-section{scroll-margin-top:100px}.studio-form-card{background:#f8faf5;border:1px solid #dce4d7;padding:clamp(22px,4vw,48px)}
.studio-preferences{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.studio-input label{display:flex;justify-content:space-between;gap:12px;font-size:15px;font-weight:800;margin-bottom:11px}
.studio-input label>span{font-size:10px;color:#849084;letter-spacing:.13em;font-weight:700}
.studio-input input,.studio-input select{width:100%;min-height:59px;background:#fff;border:1px solid #d7dfd5;border-radius:1px;padding:12px 15px;color:#25332a;font-size:16px;box-shadow:none}
.studio-input input::placeholder{color:#9aa69a;font-size:13px}
.studio-form-foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid #dce4d7;padding-top:25px}
.studio-form-foot p{font-size:13px;font-weight:800;margin:0 0 5px;color:#384b3f}
.studio-form-foot small{font-size:12px;color:#738075}
.studio-form-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:end}
.studio-results-section{padding:76px 0 0;scroll-margin-top:90px}
.studio-results-section[hidden]{display:none}
.studio-results-header{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 26px}
.studio-results-header h2{font-size:clamp(33px,4vw,52px);letter-spacing:-.07em;line-height:1.1;margin:17px 0 0}
.studio-results-header>p{font-size:14px;color:#6a796b;margin:0}
.studio-indeed-search{display:flex;align-items:center;gap:16px;margin:0 0 24px;padding:18px 20px;border:1px solid #d6ddd2;background:#f7f9f5}
.studio-indeed-search .studio-button{min-height:46px;padding:10px 15px;font-size:13px;white-space:nowrap}
.studio-indeed-search p{font-size:13px;line-height:1.6;color:#687369;margin:0}
.indeed-preview{margin:22px 0 28px;padding:24px;border:1px solid #d8e0d5;background:#f8faf6}
.indeed-preview-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.indeed-preview-label{display:inline-block;padding:5px 9px;background:#eef3e9;color:#586b57;font-size:10px;font-weight:800;letter-spacing:.08em}
.indeed-preview-head h3{margin:10px 0 0;font-size:clamp(20px,2.3vw,28px);letter-spacing:-.045em}
.indeed-preview-brand{color:#275da8;font-size:24px;font-weight:900;letter-spacing:-.06em}
.indeed-preview-note{margin:14px 0 18px;color:#667369;font-size:12px;line-height:1.8}
.indeed-preview-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.indeed-preview-card{padding:18px 20px;border:1px solid #dfe5dc;background:#fff}
.indeed-preview-chip{display:inline-block;padding:4px 8px;background:#eef4fc;color:#315f9c;font-size:10px;font-weight:800}
.indeed-preview-card h4{margin:14px 0 8px;color:#344238;font-size:16px}
.indeed-preview-card p{margin:5px 0;color:#768078;font-size:12px}
.indeed-preview-link{display:inline-block;margin-top:12px;color:#315f9c;font-size:12px;font-weight:800}
.studio-result{border:1px solid #dce4d8;margin:12px 0;background:#fff;animation:studioAppear .4s both;animation-delay:calc(var(--index)*45ms)}
.studio-result-top{display:flex;gap:25px;padding:26px 30px;align-items:flex-start}
.studio-score{width:101px;flex-shrink:0;border-right:1px solid #dce5db;display:flex;align-items:flex-start;flex-direction:column;padding-right:20px}
.studio-score strong{font-size:48px;letter-spacing:-.08em;font-weight:900;line-height:1}
.studio-score strong small{font-size:18px}
.studio-score span{font-size:11px;letter-spacing:.04em;color:#698071;margin-top:6px}
.studio-result-head{min-width:0;flex:1}
.studio-overline{font-size:10px;letter-spacing:.16em;font-weight:900;color:#70806f}
.studio-result-head h3{font-size:clamp(19px,2.15vw,28px);letter-spacing:-.06em;line-height:1.5;margin:8px 0}
.studio-result-head p{font-size:13px;color:#65766d;margin:0}
.studio-analysis{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:22px 30px;background:#f7faf5;border-top:1px solid #e4e9e1}
.studio-analysis>div>b{font-size:13px;color:#293d2e}
.studio-analysis>div:nth-child(2)>b{color:#736b41}
.studio-analysis ul{margin:8px 0 0;padding-left:18px}.studio-analysis li{font-size:13px;line-height:1.8;color:#4d6452;margin:3px 0}
.studio-analysis>div:nth-child(2) li{color:#766f5b}.studio-analysis p{font-size:13px;margin:8px 0}
.studio-result-actions{padding:19px 30px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.studio-result-actions .studio-button{min-height:46px;padding:10px 15px;font-size:13px}
.studio-smallnote{font-size:11px;color:#808a82}
.studio-empty{padding:40px;border:1px solid #dee7d9;background:#f8faf6;color:#647268}
.studio-disclaimer{color:#788579;font-size:12px;line-height:2;margin:26px 0 0}
.studio-wide-link{display:flex;justify-content:space-between;gap:22px;align-items:center;padding:28px 0;border-top:1px solid #d6ddd4;border-bottom:1px solid #d6ddd4;transition:padding .3s}
.studio-wide-link:hover{padding-left:12px;padding-right:12px}
.studio-wide-link strong{font-size:12px;letter-spacing:.12em;color:#718075}
.studio-wide-link span{font-size:clamp(20px,2.5vw,34px);font-weight:900;letter-spacing:-.05em}
.studio-wide-link b{font-size:36px;font-weight:400}
.b2b-art{position:relative;min-height:370px;background:#1a271f;overflow:hidden;color:#f8fff1;display:flex;align-items:center;justify-content:center}
.b2b-grid{position:absolute;inset:0;opacity:.13;background-image:linear-gradient(to right,#d9fc57 1px,transparent 1px),linear-gradient(to bottom,#d9fc57 1px,transparent 1px);background-size:38px 38px;transform:rotate(14deg) scale(1.5)}
.b2b-art>strong{position:relative;z-index:1;font-size:clamp(60px,7.2vw,113px);font-weight:900;line-height:.95;letter-spacing:-.095em}
.art-orbit{position:absolute;background:var(--lime);color:#16221a;font-size:10px;font-weight:900;letter-spacing:.15em;padding:9px 13px;z-index:2;animation:float 6s ease-in-out infinite}.orbit-top{top:11%;left:10%}.orbit-bottom{bottom:14%;right:7%;animation-delay:1s}
.art-corner{position:absolute;bottom:18px;left:20px;font-size:10px;letter-spacing:.13em;color:#a7bda7}
.enterprise-result{padding:35px 40px;background:#eaf7e8;border:1px solid #c0d8b8;margin-top:20px}
.enterprise-result[hidden]{display:none}
.enterprise-result h3{font-size:clamp(25px,3vw,38px);line-height:1.3;letter-spacing:-.06em;margin:18px 0 14px}
.enterprise-result p{font-size:15px;line-height:1.8;color:#50604e}
.studio-checkline{font-size:13px!important;padding:17px 0;border-top:1px solid #cfddc9}
.studio-roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.studio-roadmap>div{border:1px solid #d9e1d5;padding:27px;background:#fff;display:flex;flex-direction:column;min-height:195px;gap:15px}
.studio-roadmap span{font-size:11px;color:#6f816f;font-weight:800;letter-spacing:.12em}
.studio-roadmap strong{font-size:21px;line-height:1.4;letter-spacing:-.04em}
.studio-roadmap small{font-size:13px;color:#6c786d;line-height:1.8}
.studio-business-banner{background:#f4f9ed}
.studio-job-banner{border-top:1px solid #d7e3d1;border-bottom:1px solid #d7e3d1;padding:18px 0;margin-top:30px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.studio-job-banner span{font-size:10px;letter-spacing:.1em;font-weight:900;color:#65806d}
.studio-job-banner p{margin:0;font-size:14px;flex:1;min-width:250px}
.studio-job-banner a{font-size:14px;font-weight:800;color:#2d532e;border-bottom:1px solid #9fc69c;white-space:nowrap}
@keyframes studioSpin{to{transform:rotate(360deg)}}@keyframes studioAppear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes flowPulse{50%{opacity:.15}}
@media(max-width:1080px){.studio-hero h1{font-size:clamp(44px,5vw,70px)}.studio-front-head{grid-template-columns:1fr .6fr}}
@media(max-width:820px){.studio-hero{padding:55px 0}.studio-hero-inner{grid-template-columns:1fr;gap:40px}.studio-interface-visual{max-width:470px;width:100%;margin:auto;transform:none}.studio-orbit{max-width:340px}.b2b-art{min-height:290px}.studio-split-head,.studio-front-head{grid-template-columns:1fr;gap:12px}.studio-front-mark{display:none}.studio-front-links{grid-template-columns:1fr}.studio-front-links>a{border-right:0;border-bottom:1px solid #cfd8ca;min-height:0;padding:22px 12px}.studio-front-links>a:first-child{padding-left:12px}.studio-front-links>a:last-child{border-bottom:0}.studio-three{grid-template-columns:1fr;gap:8px}.studio-three>article{min-height:0}.studio-feature-footer{grid-template-columns:1fr}.studio-form-foot{align-items:flex-start;flex-direction:column}.studio-form-buttons{width:100%;justify-content:start}.zatsudan-choices{grid-template-columns:1fr}.zatsudan-answer{flex-direction:column;align-items:flex-start}.studio-roadmap{grid-template-columns:1fr}}
@media(max-width:650px){.studio-hero h1{font-size:clamp(39px,9vw,59px)}.studio-hero h1 em{white-space:normal}.studio-intro{font-size:15px}.studio-hero-links{align-items:stretch;flex-direction:column}.studio-button{width:100%}.studio-section{padding:70px 0}.studio-split-head h2,.studio-feature-footer h2{font-size:36px}.studio-form-card{padding:20px}.studio-preferences{grid-template-columns:1fr;gap:19px}.studio-result-top{padding:20px;gap:14px}.studio-score{width:74px;padding-right:10px}.studio-score strong{font-size:35px}.studio-score strong small{font-size:14px}.studio-analysis{grid-template-columns:1fr;gap:12px;padding:19px 20px}.studio-result-actions{padding:15px 20px}.studio-result-actions .studio-button{width:100%}.studio-results-header{flex-direction:column;align-items:flex-start}.studio-indeed-search{align-items:stretch;flex-direction:column;padding:15px}.studio-indeed-search .studio-button{width:100%}.indeed-preview{padding:17px}.indeed-preview-cards{grid-template-columns:1fr}.studio-wide-link{flex-wrap:wrap}.studio-wide-link span{order:3;flex-basis:100%}.zatsudan-choice{padding:20px 15px;grid-template-columns:28px 1fr 26px}.zatsudan-choice strong{font-size:17px}.enterprise-result{padding:26px}.b2b-art strong{font-size:68px}}
@media(prefers-reduced-motion:reduce){.studio-orbit *,.studio-front-mark:before,.flow-track,.art-orbit,.studio-result{animation:none!important}}

/* 2026-10-23: unified accessible typography and descriptive navigation */
body{font-size:17px;line-height:1.9}
p,li,dd{font-size:clamp(16px,1.18vw,18px);line-height:1.95}
.eyebrow,.label,.seq{font-size:clamp(12px,0.95vw,14px)}
.brand img{width:76px;height:76px;padding:2px}
.brand{min-width:265px;gap:13px}
.brand b{font-size:clamp(17px,1.23vw,20px);letter-spacing:-.04em}
.brand small{font-size:12px}
.nav{min-height:98px;gap:12px}
.links{gap:4px;align-items:center}
.links>a:not(.nav-cta){font-size:clamp(15px,1.08vw,17px);font-weight:800;border-radius:12px;padding:15px 12px;transition:background .23s,transform .25s;color:#172119}
.links>a:not(.nav-cta):hover,.links>a:not(.nav-cta):focus-visible{background:#edf8d2;transform:translateY(-2px)}
.links>a:not(.nav-cta)::after{display:none}
.links>.nav-cta{font-size:clamp(15px,1vw,17px);min-height:50px;min-width:170px;display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;margin-left:5px;border-radius:13px;font-weight:800}
.links>a[data-help]{position:relative}
.links>a[data-help]::before{content:attr(data-help);position:absolute;z-index:200;top:calc(100% + 13px);left:50%;transform:translate(-50%,-7px);width:min(282px,70vw);padding:18px 20px;border:1px solid #cadcc5;border-radius:16px;background:#fafff6;color:#1a2920;box-shadow:0 18px 45px rgba(22,42,26,.17);font-size:14px;font-weight:600;line-height:1.65;letter-spacing:0;white-space:normal;text-align:left;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s,transform .22s,visibility .22s}
.links>a[data-help]:hover::before,.links>a[data-help]:focus-visible::before{opacity:1;visibility:visible;transform:translate(-50%,0)}
.links>a[data-help]:first-child::before{left:0;transform:translate(0,-7px)}
.links>a[data-help]:first-child:hover::before,.links>a[data-help]:first-child:focus-visible::before{transform:translate(0,0)}
.links>a[data-help]:last-child::before{left:auto;right:0;transform:translate(0,-7px)}
.links>a[data-help]:last-child:hover::before,.links>a[data-help]:last-child:focus-visible::before{transform:translate(0,0)}
.hero-lead{font-size:clamp(16px,1.22vw,20px)!important;line-height:2.0!important}
.hero-cta a,.line-link,.big-link{font-size:clamp(16px,1.25vw,19px)}
.intro-grid p,.chapter p,.service-row p,.inner-hero p,.studio-intro,.studio-three p,.studio-split-head p,.studio-form-foot p,.studio-result p{font-size:clamp(16px,1.18vw,18px)!important;line-height:1.95}
.chapter .seq,.service-row .n,.service-row .label,.studio-disclaimer,.studio-smallnote{font-size:clamp(12px,.95vw,14px)}
.studio-input label,.studio-input select,.studio-input input,.studio-button,.studio-result-actions a{font-size:clamp(16px,1.1vw,18px)}
.footer a:not(.brand),.footer p{font-size:15px;line-height:1.9}
/* At laptop widths use spacious mobile navigation rather than cramping the labels */
@media(max-width:1150px){
 .hamb{display:block}
 .links{display:none;position:absolute;z-index:300;top:100%;left:0;right:0;background:#fff;box-shadow:0 20px 35px #101d1420;padding:22px 4vw 34px;flex-direction:column;gap:4px;align-items:stretch}
 .links.open{display:flex}
 .links>a:not(.nav-cta),.links>.nav-cta{font-size:17px;display:flex;justify-content:flex-start;min-height:56px;padding:13px 20px;border-radius:10px;margin-left:0}
 .links>a[data-help]::before{position:static;visibility:visible;opacity:1;transform:none!important;background:none;border:0;box-shadow:none;padding:0 0 0 13px;width:auto;color:#56665b;font-size:13px;display:block;align-self:center}
 .nav{min-height:86px}
}
@media(max-width:620px){
 body{font-size:16px}
 .brand img{width:55px;height:55px}
 .brand b{font-size:16px}
 .brand small{font-size:11px}
 .nav{min-height:80px}
 .links>a[data-help]::before{font-size:12px;line-height:1.45;max-width:46vw}
 .hero-lead{font-size:16px!important}
 .footer p{font-size:14px}
}

/* Private browser-side CSV normalizer */
.csv-tool{padding:40px 0 110px}
.csv-tool p{font-size:16px;line-height:1.85;color:#58675d}
.csv-warning{padding:24px 28px;background:#fff9e9;border:1px solid #eee0af;border-left:5px solid #b69b32;margin-bottom:26px;border-radius:8px;font-size:16px;line-height:1.9}
.csv-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.csv-panel{background:#fff;border:1px solid #dce4dc;padding:30px;margin:0 0 22px;min-width:0}
.csv-panel h2{font-size:clamp(23px,2.3vw,32px);margin:0 0 16px;letter-spacing:-.035em}
.csv-field{font-weight:800;display:grid;gap:12px;margin:0 0 14px;font-size:17px}
.csv-field input[type=file],.csv-field select,.csv-field input[type=number]{width:100%;border:1px solid #becbbd;border-radius:7px;padding:15px;background:#fff;font-size:16px;font-weight:500;min-width:0}
.csv-mini{color:#5d6b61!important;font-size:13px!important;line-height:1.65!important}
.csv-check{display:flex;gap:11px;align-items:flex-start;font-size:16px;line-height:1.7;margin:13px 0;cursor:pointer}
.csv-check input{margin-top:7px;width:19px;height:19px;accent-color:#245b35;flex:none}
.csv-file{padding:16px 0;border-top:1px solid #e2e8df;font-size:14px}
.csv-file strong{display:block;word-break:break-word;color:#243c2c}
.csv-file small{display:block;color:#66756a}
.csv-map-file{padding:24px 0;border-top:1px solid #dce4dc}
.csv-map-file h3{margin:0 0 18px;font-size:21px;overflow-wrap:anywhere}
.csv-map-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.csv-map-grid label{font-size:14px;font-weight:800;display:grid;gap:6px}
.csv-map-grid select{font-size:14px;min-width:0;padding:10px;border:1px solid #bbc9bc;border-radius:6px;background:#fff}
.csv-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:14px 0 24px}
.csv-actions button:disabled{cursor:not-allowed;opacity:.4}
.csv-preview{overflow-x:auto;width:100%;border-radius:8px}
.csv-preview table{border-collapse:collapse;width:100%;font-size:14px;min-width:780px}
.csv-preview th{background:#e9f4de;text-align:left;white-space:nowrap}
.csv-preview th,.csv-preview td{border:1px solid #dce6d9;padding:10px 12px;max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.csv-kpis{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.csv-kpis span{padding:9px 14px;background:#e6f3da;border-radius:6px;font-size:15px}
@media(max-width:850px){.csv-grid{grid-template-columns:1fr}.csv-map-grid{grid-template-columns:1fr 1fr}.csv-panel{padding:22px}}
@media(max-width:550px){.csv-map-grid{grid-template-columns:1fr}.csv-warning{padding:18px}}


/* User-facing Recruit Studio 2026-10-26 */
.krs-public{padding:0 0 clamp(65px,8vw,126px);background:#f6f8ef}
.krs-public .wrap{max-width:1300px}
.krs-trustbar{background:#dcff73;color:#101513;display:flex;justify-content:space-between;gap:15px;padding:23px clamp(20px,4vw,50px);font-size:clamp(13px,1.25vw,18px);font-weight:650;flex-wrap:wrap;border-bottom:1px solid #c4e75c}
.krs-trustbar span{display:flex;align-items:center;gap:13px}.krs-trustbar b{font-size:12px;letter-spacing:.09em;padding:5px 8px;border:1px solid #53662b;border-radius:5px}
.krs-public-head{display:grid;grid-template-columns:1.35fr 1fr;gap:55px;align-items:end;padding:80px 0 48px}
.krs-public-head h2{font-size:clamp(39px,5.1vw,79px);line-height:1.16;letter-spacing:-.06em;margin:19px 0 0}
.krs-public-head h2 em{font-style:normal;box-shadow:inset 0 -14px #dbff6d}
.krs-public-head p{font-size:clamp(17px,1.47vw,21px);line-height:1.85;color:#4d544a;max-width:500px}
.krs-journey{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.krs-journey article{padding:32px;min-height:212px;background:white;border:1px solid #e3e8d6;display:flex;flex-direction:column}
.krs-journey article span{font-size:12px;color:#64801e;letter-spacing:.13em;font-weight:700}
.krs-journey article h3{font-size:clamp(22px,2vw,30px);margin:22px 0 11px;line-height:1.35}
.krs-journey article p{font-size:16px;color:#62695e;line-height:1.75}
.krs-assist{margin-top:30px;border:2px solid #19211a;background:#fff;border-radius:18px;padding:clamp(25px,4.5vw,62px);box-shadow:13px 13px 0 #d9e9b2}
.krs-assist-kicker{font-size:13px;letter-spacing:.03em;font-weight:750;color:#506725;display:flex;gap:10px;align-items:center}
.krs-assist-kicker i{width:10px;height:10px;display:inline-block;border-radius:50%;background:#80b00b}
.krs-assist h3{font-size:clamp(26px,3vw,43px);line-height:1.2;margin:16px 0}
.krs-assist-heading p{font-size:16px;line-height:1.7;color:#5c6258}
.krs-assist label{display:block;margin-top:26px;margin-bottom:11px;font-size:17px;font-weight:750}
.krs-assist textarea{box-sizing:border-box;width:100%;background:#fafbf7;border:1.5px solid #a9b19d;border-radius:11px;padding:20px 22px;min-height:118px;font:inherit;font-size:18px;line-height:1.6;resize:vertical;color:#141a13}
.krs-assist textarea:focus-visible{outline:3px solid #afd34c;outline-offset:2px}
.krs-examples{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-top:15px}
.krs-examples span{font-size:14px;color:#555e4a;margin-right:8px}
.krs-examples button{background:#eaf5d4;border:1px solid #afc583;color:#304516;border-radius:100px;cursor:pointer;padding:9px 17px;font-size:15px}
.krs-examples button:hover,.krs-examples button:focus-visible{background:#ddff73;border-color:#607f1a}
.krs-assist-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:30px}
.krs-assist-actions>span{font-size:13px;color:#727a6c}
.krs-assist-feedback{padding:18px 23px;border-left:5px solid #708e32;background:#f1f8e6;margin-top:20px;font-size:16px;line-height:1.7}
.krs-assist-feedback[hidden]{display:none}
.krs-next-choices{padding-top:60px;padding-bottom:115px}
.krs-next-head{max-width:780px}.krs-next-head h2{font-size:clamp(35px,4vw,56px);line-height:1.25;letter-spacing:-.04em;margin:18px 0}
.krs-next-head p{font-size:18px;color:#626960;line-height:1.7}
.krs-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:40px}
.krs-choice-grid a{min-height:255px;display:flex;flex-direction:column;position:relative;padding:31px;background:#f0f4eb;border:1px solid #e1e5da;color:#101510;text-decoration:none}
.krs-choice-grid a:hover,.krs-choice-grid a:focus-visible{background:#ddff73;border-color:#819e39}
.krs-choice-grid a span{font-size:11px;letter-spacing:.1em;color:#566a3c;font-weight:750}
.krs-choice-grid a strong{font-size:clamp(25px,2.6vw,37px);line-height:1.28;margin:23px 0 16px}
.krs-choice-grid a small{font-size:15px;color:#4f5b4c}
.krs-choice-grid a b{font-size:26px;position:absolute;bottom:20px;right:22px}
.krs-next-note{margin-top:20px;font-size:14px;line-height:1.7;color:#777}
.krs-b2b-cta{background:#e0ff79;padding:82px 0}
.krs-b2b-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:42px}
.krs-b2b-inner>div{max-width:760px}
.krs-b2b-inner span{font-size:12px;font-weight:800;letter-spacing:.18em}
.krs-b2b-inner h2{font-size:clamp(35px,4.6vw,63px);line-height:1.22;margin:19px 0}
.krs-b2b-inner p{font-size:17px;line-height:1.8;margin:0}
.krs-b2b-inner>a{flex:0 0 auto}
@media(max-width:850px){.krs-public-head{grid-template-columns:1fr;gap:18px;padding:50px 0 36px}.krs-public-head p{max-width:none}.krs-journey{grid-template-columns:1fr}.krs-journey article{min-height:unset;padding:26px}.krs-choice-grid{grid-template-columns:1fr}.krs-choice-grid a{min-height:180px}.krs-b2b-inner{display:block}.krs-b2b-inner>a{margin-top:28px;display:inline-flex}}
@media(max-width:500px){.krs-trustbar{gap:13px}.krs-trustbar span{font-size:13px}.krs-assist{box-shadow:6px 6px 0 #d9e9b2}.krs-assist textarea{font-size:16px}}


/* Readability: company profile and public disclosure */
.company-list>div{font-size:17px;padding:29px 0}
.company-list dt{font-size:15px}
.company-list dd{font-size:17px;line-height:1.9}
.history-list dt{font-size:16px}
.history-list dd{font-size:17px}
.margin-intro{font-size:17px!important}
.margin-subheading{font-size:clamp(21px,2.1vw,27px);line-height:1.4;margin:48px 0 16px}
.table-scroll{overflow-x:auto;margin:20px 0 35px}
.training-table{border-collapse:collapse;width:100%;min-width:760px;font-size:15px}
.training-table th,.training-table td{border:1px solid var(--line);padding:13px 14px;text-align:left;vertical-align:top}
.training-table th{background:var(--warm);font-weight:800}
.agreement-occupations{columns:2;column-gap:50px;padding-left:28px;line-height:1.9}
.agreement-occupations li{break-inside:avoid;padding-left:5px}
@media(max-width:640px){.agreement-occupations{columns:1}.margin-subheading{margin-top:38px}}
