:root{color-scheme:dark;--bg:#08090b;--surface:#101114;--surface-2:#17181d;--surface-soft:#12151b;--surface-soft-2:#171b22;--surface-panel:#1b2028;--ink:#f1f0ed;--dim:#a2a4ab;--line:rgba(255,255,255,.16);--magenta:#da63e1;--cyan:#7cdef1;--main-padding:clamp(24px,5.6vw,104px);--content-width:1660px;--font-en:'Manrope',Arial,Helvetica,sans-serif;--font-ja:'Noto Sans JP',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{background:var(--bg);color:var(--ink);margin:0;font-family:var(--font-ja);font-size:15px;line-height:1.85;overflow-x:hidden;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}::selection{background:#9470ec;color:#08090b}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #a8e8fb;outline-offset:5px}img,iframe{max-width:100%}.skip-link{position:fixed;left:24px;top:-200px;z-index:9999;background:#fff;color:#000;padding:12px}.skip-link:focus{top:12px}.scroll-progress{position:fixed;z-index:120;top:0;left:0;width:100%;height:2px;transform:scaleX(0);transform-origin:left center;background:linear-gradient(90deg,var(--magenta),var(--cyan));pointer-events:none}
.site-header{height:84px;position:fixed;z-index:110;top:0;left:0;width:100%;display:flex;align-items:center;gap:40px;padding:0 var(--main-padding);background:linear-gradient(180deg,rgba(0,0,0,.44),transparent);transition:background .4s,border-color .4s; border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(8,9,11,.88);backdrop-filter:blur(18px);border-bottom-color:var(--line)}.brand{display:flex;align-items:baseline;gap:4px;white-space:nowrap;line-height:1;font-family:var(--font-en);font-weight:800;letter-spacing:-.065em}.brand-main{font-size:26px}.brand-dot{color:var(--magenta)}.brand-sub{font-size:11px;font-weight:700;letter-spacing:.13em;margin-left:4px}.desktop-nav{display:flex;gap:clamp(18px,2.1vw,42px);margin-left:auto;align-items:center}.desktop-nav a,.header-contact{font-family:var(--font-en);font-size:10px;font-weight:800;letter-spacing:.16em;transition:color .2s}.desktop-nav a:hover{color:var(--cyan)}.header-contact{border:1px solid rgba(255,255,255,.6);padding:12px 18px;white-space:nowrap;transition:background .2s,color .2s}.header-contact span{padding-left:12px;font-size:15px}.header-contact:hover{color:#000;background:#fff}.menu-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:6px;border:1px solid rgba(255,255,255,.5);color:#fff;background:rgba(0,0,0,.3)}.menu-toggle span{height:1px;width:20px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav{position:fixed;top:84px;left:0;right:0;bottom:0;z-index:100;background:#0a0b0d;padding:32px var(--main-padding);flex-direction:column;gap:8px;overflow-y:auto}.mobile-nav:not([hidden]){display:flex}.mobile-nav[hidden]{display:none}.mobile-nav a{font-family:var(--font-en);font-weight:800;font-size:clamp(24px,7vw,42px);padding:12px 0;border-bottom:1px solid var(--line)}
.hero{height:min(980px,100svh);min-height:580px;position:relative;overflow:hidden;background:#9da3d6}.hero-image{position:absolute;inset:-24px 0 0;background-image:url('./hero-infizz.webp');background-size:cover;background-position:center 53%;transform:scale(1.035);will-change:transform}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,8,20,.28) 0%,rgba(12,10,25,0) 30%,rgba(15,13,21,0) 65%,rgba(8,9,11,.90) 99%)}.hero-kicker{position:absolute;z-index:2;top:134px;left:var(--main-padding);display:flex;align-items:center;gap:15px;font-family:var(--font-en);font-size:10px;font-weight:800;letter-spacing:.2em;color:#27233c}.kicker-line{width:26px;height:1px;background:#27233c;opacity:.5}.hero-bottom{position:absolute;z-index:2;left:var(--main-padding);right:var(--main-padding);bottom:78px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.hero-bottom-copy .hero-eyebrow{font-family:var(--font-en);font-size:clamp(22px,3vw,49px);font-weight:800;letter-spacing:-.045em;color:#fff;line-height:1.12}.hero-bottom-copy p{font-size:clamp(12px,1.1vw,15px);margin:16px 0 0;letter-spacing:.12em;color:#f2eff5}.hero-scroll{display:flex;gap:16px;align-items:center;white-space:nowrap;font-family:var(--font-en);font-weight:800;font-size:10px;letter-spacing:.13em}.scroll-track{width:60px;height:60px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.45);border-radius:50%;position:relative}.scroll-track:before{content:'';height:20px;width:1px;background:rgba(255,255,255,.85)}.scroll-track:after{content:'';width:6px;height:6px;border-right:1px solid rgba(255,255,255,.85);border-bottom:1px solid rgba(255,255,255,.85);transform:rotate(45deg);position:absolute;top:33px}.hero-index{position:absolute;z-index:2;right:var(--main-padding);bottom:26px;font:700 10px var(--font-en);letter-spacing:.2em;color:rgba(255,255,255,.7)}
.section{position:relative;padding:130px var(--main-padding) 150px;max-width:var(--content-width);margin:auto}.section-label{font:800 11px var(--font-en);letter-spacing:.17em;color:var(--ink);display:inline-flex;align-items:center;gap:22px;margin-bottom:72px;padding:11px 18px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);border-radius:999px;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}.label-no{color:var(--magenta)}.micro-label,.small-label{font:800 11px var(--font-en);letter-spacing:.22em;color:var(--dim)}.micro-label{margin:0 0 34px}.period{color:var(--magenta)}.accent-text{background:linear-gradient(95deg,#cf85ed 5%,#96daf1 83%);-webkit-background-clip:text;background-clip:text;color:transparent}.outline-type{-webkit-text-stroke:1.5px var(--ink);color:transparent}.mega-title,.section-headline,.contact-title{font-family:var(--font-en);font-weight:800;letter-spacing:-.092em;line-height:.97;margin:0}.mega-title{font-size:clamp(74px,10vw,188px)}.section-headline{font-size:clamp(62px,10.2vw,170px)}.section-headline em{font-style:normal;color:var(--cyan)}.purpose-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(50px,6.5vw,140px);align-items:end}.purpose-copy{padding-bottom:22px}.big-japanese{font-weight:700;font-size:clamp(26px,2.6vw,44px);line-height:1.4;letter-spacing:.02em}.purpose-copy>p:not(.big-japanese){color:#c7c8cd;font-size:15px;line-height:2.45;margin-top:38px}.inline-divider{width:100%;height:1px;background:var(--line);margin:50px 0 28px}.credo p{font-size:15px;line-height:2.3}.large-decor-text{position:relative;top:140px;left:-.035em;color:rgba(255,255,255,.025);white-space:nowrap;font:800 clamp(80px,16vw,260px)/.7 var(--font-en);letter-spacing:-.1em;pointer-events:none;overflow:hidden}
.section-services{background:linear-gradient(130deg,#10141b,#161a22 72%,#0c0f14);max-width:none;padding-left:max(var(--main-padding),calc((100vw - var(--content-width))/2 + var(--main-padding)));padding-right:max(var(--main-padding),calc((100vw - var(--content-width))/2 + var(--main-padding)))}.section-heading-grid{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:96px}.section-heading-grid p{max-width:310px;font-size:14px;color:#bec0c8;line-height:2.2;margin:0 0 10px}.service-item{display:grid;grid-template-columns:70px minmax(0,1fr);gap:24px;align-items:start;border-top:1px solid var(--line);padding:37px 0 40px;transition:background .3s}.service-item:last-child{border-bottom:1px solid var(--line)}.service-item:hover{background:rgba(255,255,255,.025)}.service-num{font:800 11px var(--font-en);color:var(--magenta);padding-top:16px}.service-content{min-width:0}.service-heading{margin:0}.service-toggle{display:grid;grid-template-columns:minmax(0,1fr) 54px;align-items:center;gap:16px;width:100%;padding:0;text-align:left;border:0;background:none;color:var(--ink)}.service-title{display:block;min-width:0}.service-main{display:block;font:800 clamp(27px,4.5vw,74px)/1.02 var(--font-en);letter-spacing:-.065em;transition:color .2s}.service-subtitle{display:block;color:var(--dim);font-size:13px;margin:12px 0 0}.service-toggle:hover .service-main,.service-toggle[aria-expanded="true"] .service-main{color:#bdeaf4}.service-icon{justify-self:end;display:block;width:44px;height:44px;border:1px solid rgba(255,255,255,.4);border-radius:50%;position:relative;transition:background .25s,border-color .25s}.service-icon:before,.service-icon:after{content:'';position:absolute;left:50%;top:50%;width:16px;height:1px;background:#fff;transform:translate(-50%,-50%)}.service-icon:after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .3s}.service-toggle[aria-expanded="true"] .service-icon{background:#c1adf6;border-color:#c1adf6}.service-toggle[aria-expanded="true"] .service-icon:before,.service-toggle[aria-expanded="true"] .service-icon:after{background:#08090b}.service-toggle[aria-expanded="true"] .service-icon:after{transform:translate(-50%,-50%) rotate(0)}.service-panel[hidden]{display:none}.service-panel-inner{padding:28px 64px 10px 0;max-width:850px}.service-panel-inner p{color:#c8c8d0;font-size:clamp(14px,1.2vw,17px);line-height:2.15;margin:0}
.section-overview{padding-top:160px;background:linear-gradient(180deg,#0d1015 0%,#08090b 100%)}.section-overview>.section-headline{margin:0 0 100px}.overview-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:10%;align-items:start}.overview-intro{font:500 clamp(24px,2.7vw,46px)/1.5 var(--font-en);letter-spacing:-.055em;margin:0;color:#a2a3aa}.overview-intro strong{color:#fff;font-weight:800}.facts{margin:0}.fact-row{display:grid;grid-template-columns:135px 1fr;gap:32px;border-top:1px solid var(--line);padding:23px 0}.fact-row:last-child{border-bottom:1px solid var(--line)}.fact-row dt{color:#9b9da4;font-size:12px;font-weight:500;padding-top:3px}.fact-row dd{font-size:14px;margin:0;line-height:2;overflow-wrap:anywhere}.fact-row dd a{border-bottom:1px solid #888}.english-name{display:block;font:600 11px var(--font-en);color:var(--dim);margin:5px 0}.fact-note{font-size:11px;color:#a7a8b0;display:block}.group-block{margin-top:110px;background:linear-gradient(180deg,#1b2028 0%,#171b22 100%);padding:clamp(30px,4vw,72px);position:relative;overflow:hidden;border:1px solid #2a3038;box-shadow:0 20px 45px rgba(0,0,0,.22)}.group-block:before{content:'';position:absolute;width:380px;height:380px;border-radius:50%;top:-260px;right:-110px;background:#9062ac;filter:blur(130px);opacity:.3;pointer-events:none}.group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:48px}.group-symbol{font-size:30px;color:#a1d9e6}.group-content{display:grid;grid-template-columns:1.05fr .95fr;gap:12%;align-items:end}.group-eyebrow{font:800 10px var(--font-en);letter-spacing:.2em;color:var(--cyan)}.group-content h3{font:800 clamp(41px,5vw,84px)/1.04 var(--font-en);letter-spacing:-.08em;margin:18px 0 24px}.group-content p:not(.group-eyebrow){max-width:420px;color:#babdc4;font-size:13px;line-height:2.2}.group-links a{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #43464e;padding:22px 0;font-weight:700;font-size:14px;transition:color .2s}.group-links a:first-child{border-top:1px solid #43464e}.group-links a:hover{color:var(--cyan)}.group-links a span:last-child{font-size:22px}.group-links small{display:block;color:#8c9099;font:800 9px var(--font-en);letter-spacing:.17em;margin-bottom:7px}
.section-recruit{max-width:none;background:linear-gradient(180deg,#12161d 0%,#0c0f14 100%);padding-left:max(var(--main-padding),calc((100vw - var(--content-width))/2 + var(--main-padding)));padding-right:max(var(--main-padding),calc((100vw - var(--content-width))/2 + var(--main-padding)))}.recruit-top{display:grid;grid-template-columns:1.15fr .85fr;gap:10%;align-items:end;margin-bottom:100px}.recruit-intro{max-width:390px;padding-bottom:9px}.recruit-intro h3{font-size:clamp(21px,2vw,30px);font-weight:700;line-height:1.6}.recruit-intro p{font-size:14px;color:#b5b7c0;line-height:2.3}.small-muted{font-size:12px!important;color:#8e929b!important}.accordion{border-top:1px solid rgba(255,255,255,.28)}.accordion:last-child{border-bottom:1px solid rgba(255,255,255,.28)}.accordion-toggle{width:100%;display:grid;grid-template-columns:170px 1fr 64px;gap:24px;align-items:center;text-align:left;background:none;border:0;color:var(--ink);padding:30px 12px 31px 0}.accordion-index{font:800 11px var(--font-en);letter-spacing:.15em;color:var(--magenta)}.accordion-name{font-size:clamp(28px,3.6vw,58px);line-height:1.4;font-weight:800;letter-spacing:-.045em}.accordion-name small{display:block;font:700 11px var(--font-en);letter-spacing:.12em;color:var(--dim);margin:8px 0 0}.accordion-icon{justify-self:end;display:block;width:48px;height:48px;border:1px solid rgba(255,255,255,.45);border-radius:50%;position:relative;transition:background .25s,transform .25s}.accordion-icon:before,.accordion-icon:after{content:'';position:absolute;left:50%;top:50%;width:16px;height:1px;background:#fff;transform:translate(-50%,-50%)}.accordion-icon:after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .3s}.accordion-toggle[aria-expanded="true"] .accordion-icon{background:#c1adf6;transform:rotate(0)}.accordion-toggle[aria-expanded="true"] .accordion-icon:before,.accordion-toggle[aria-expanded="true"] .accordion-icon:after{background:#000}.accordion-toggle[aria-expanded="true"] .accordion-icon:after{transform:translate(-50%,-50%) rotate(0deg)}.accordion-toggle:hover .accordion-name{color:var(--cyan)}.accordion-panel[hidden]{display:none}.accordion-inner{padding:13px 0 58px max(0px,calc(170px + 24px));max-width:1100px}.accordion-lead{font-size:14px;color:#d0d1d7;line-height:2.25;max-width:800px;margin:0 0 37px}.job-table{margin:0}.job-table>div{border-top:1px solid var(--line);display:grid;grid-template-columns:165px 1fr;gap:32px;padding:17px 0}.job-table>div:last-child{border-bottom:1px solid var(--line)}.job-table dt{font-size:12px;color:#9d9fa9}.job-table dd{font-size:13px;color:#e3e4e6;line-height:2.0;margin:0;overflow-wrap:anywhere}.job-table a{border-bottom:1px solid var(--cyan)}.job-apply{display:inline-flex;align-items:center;justify-content:space-between;gap:90px;background:#f0eff0;color:#08090b;padding:18px 22px;margin-top:36px;font-weight:800;font-size:13px;transition:background .2s}.job-apply:hover{background:#a0e4f0}.job-apply span{font-size:22px}
.section-access{background:linear-gradient(180deg,#10141a 0%,#0b0d11 100%)}.access-content{padding-bottom:80px}.access-top{display:flex;justify-content:space-between;align-items:end;gap:40px}.access-top>div{padding:0 1.5vw 0 10px}.access-station{font:800 13px var(--font-en);letter-spacing:.15em;color:var(--cyan);margin:0 0 22px}.access-top>div>p:not(.access-station){font-size:14px;color:#c7c9d0;line-height:2.1}.access-note{font-size:12px!important;color:#8d9099!important}.text-link{display:inline-block;border-bottom:1px solid #aaa;font:800 11px var(--font-en);letter-spacing:.07em;padding:10px 0;margin-top:10px}.map-fullwidth{width:100%;height:clamp(430px,49vw,680px);position:relative;overflow:hidden;background:#2b3036}.map-fullwidth iframe{border:0;width:100%;height:100%;display:block;filter:grayscale(1) invert(.91) contrast(.78) sepia(.15) hue-rotate(174deg) saturate(.55) brightness(.84);transition:filter .3s}.map-fullwidth:hover iframe{filter:grayscale(.9) invert(.87) contrast(.82) sepia(.12) hue-rotate(174deg) saturate(.7) brightness(.93)}.map-edge{position:absolute;inset:0;border-top:1px solid #414449;border-bottom:1px solid #414449;pointer-events:none}
.section-contact{padding-top:150px;padding-bottom:170px;background:linear-gradient(180deg,#0f1318 0%,#08090b 100%)}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:10%;align-items:start}.contact-title{font-size:clamp(48px,7vw,115px);line-height:1.03}.contact-grid>div>p{font-size:14px;color:#b9bbc3;line-height:2.2;margin:40px 0 28px}.contact-tel{display:inline-flex;gap:25px;align-items:center;font:700 clamp(26px,3vw,44px) var(--font-en);letter-spacing:-.045em;border-bottom:1px solid var(--line);padding:12px 0}.contact-tel span{color:var(--cyan)}.contact-form-box{border:1px solid #303641;padding:clamp(20px,3vw,50px);background:linear-gradient(180deg,#171b22 0%,#11151b 100%);box-shadow:0 16px 36px rgba(0,0,0,.2)}.form-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:0 0 25px;border-bottom:1px solid #3a404a;font:800 11px var(--font-en);letter-spacing:.13em}.form-status{font-size:9px;color:var(--cyan)}#contact-form label{display:block;font-size:12px;font-weight:600;color:#d1d2d8;margin-top:25px}#contact-form label>span{color:#f79ed4}#contact-form input,#contact-form textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #4a4e56;border-radius:0;color:#f4f4f6;padding:13px 2px 15px;margin-top:8px;outline:none;resize:vertical}#contact-form input:focus,#contact-form textarea:focus{border-bottom-color:#aee8f8}#contact-form input::placeholder,#contact-form textarea::placeholder{color:#797d87}.form-submit{width:100%;padding:17px 21px;border:0;background:#dedfe2;color:#0a0a0a;display:flex;align-items:center;justify-content:space-between;text-align:left;font-weight:800;margin-top:32px;transition:background .3s}.form-submit:hover{background:#a1deee}.form-submit span{font-size:24px}.form-notice{font-size:11px!important;color:#999eab!important;line-height:1.8!important;margin:18px 0 0!important}.form-notice-active{color:#abe5f1!important}
.footer{padding:65px var(--main-padding) 32px;border-top:1px solid var(--line);max-width:var(--content-width);margin:0 auto}.footer-top{display:flex;justify-content:space-between;align-items:end;gap:20px}.footer-logo{font:800 clamp(32px,5vw,80px)/1 var(--font-en);letter-spacing:-.09em}.footer-logo span{color:var(--magenta)}.back-to-top{font:800 11px var(--font-en);letter-spacing:.15em;border-bottom:1px solid #aaa;padding-bottom:8px}.footer-bottom{display:flex;gap:24px;justify-content:space-between;margin-top:80px;padding-top:18px;border-top:1px solid var(--line);font:700 10px var(--font-en);letter-spacing:.08em;color:#9da0aa}.footer-bottom p{margin:0}.footer-bottom>div{display:flex;gap:32px;align-items:center}.footer-bottom a:hover{color:var(--cyan)}.draft-note{opacity:.55}
.reveal{opacity:0;transform:translateY(44px);transition:opacity .85s cubic-bezier(.2,.65,.25,1),transform .95s cubic-bezier(.2,.65,.25,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}.service-item.reveal:nth-child(2){transition-delay:.07s}.service-item.reveal:nth-child(3){transition-delay:.14s}.service-item.reveal:nth-child(4){transition-delay:.21s}
.privacy-page{min-height:100svh;background:#090a0d}.privacy-main{max-width:940px;margin:auto;padding:clamp(50px,8vw,110px) 28px}.privacy-main h1{font:800 clamp(58px,9vw,130px)/1 var(--font-en);letter-spacing:-.085em;margin:35px 0 70px}.privacy-placeholder{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:35px 0 45px}.privacy-placeholder h2{font-size:26px}.privacy-placeholder p{font-size:15px;color:#bec0c8;line-height:2.2}.privacy-placeholder strong{color:#fff}.privacy-close{display:inline-block;margin-top:40px;padding:16px 20px;color:#090a0d;background:#fff;border:0;font-weight:800}.privacy-back{margin-top:30px;color:#9297a0}
@media(max-width:1080px){.desktop-nav{gap:18px}.desktop-nav a{font-size:9px}.header-contact{padding:9px 12px}.purpose-layout{grid-template-columns:1fr 1fr;gap:48px}.mega-title{font-size:clamp(60px,9.2vw,120px)}.overview-grid{gap:6%}.group-content{gap:6%}.recruit-top{gap:6%}.contact-grid{gap:6%}}
@media(max-width:820px){.site-header{height:76px;padding:0 25px}.desktop-nav,.header-contact{display:none}.menu-toggle{display:flex;margin-left:auto}.mobile-nav{top:76px}.section{padding:100px 26px 110px}.section-services,.section-recruit{padding:100px 26px 110px}.section-label{margin-bottom:45px}.hero{height:92svh;min-height:590px}.hero-kicker{top:115px;left:26px;font-size:9px;gap:10px}.hero-bottom{left:26px;right:26px;bottom:78px}.hero-index{right:26px}.hero-scroll>span:first-child{display:none}.purpose-layout,.overview-grid,.group-content,.recruit-top,.contact-grid{grid-template-columns:1fr}.purpose-copy{max-width:540px;margin-left:auto}.large-decor-text{top:80px}.overview-grid{gap:45px}.overview-intro{font-size:32px}.section-overview>.section-headline{margin-bottom:65px}.group-content,.recruit-top,.contact-grid{gap:45px}.recruit-intro{max-width:590px}.accordion-inner{padding-left:0}.access-top{align-items:start;flex-direction:column}.access-top>div{padding:0}.section-heading-grid{align-items:start;flex-direction:column;gap:30px}.section-heading-grid p{max-width:unset}.contact-title{font-size:clamp(55px,9vw,95px)}.contact-grid>div>p{margin-top:25px}.footer{padding:50px 26px 25px}}
@media(max-width:540px){.brand-main{font-size:23px}.brand-sub{font-size:9px}.hero{min-height:550px;height:83svh}.hero-image{background-image:url('./hero-infizz-mobile.webp');background-position:center center;background-size:cover;background-repeat:no-repeat;background-color:#9c98ca}.hero-kicker{font-size:8px;letter-spacing:.11em;white-space:nowrap}.hero-bottom-copy .hero-eyebrow{font-size:26px}.hero-bottom-copy p{font-size:11px}.scroll-track{width:44px;height:44px}.scroll-track:before{height:17px}.scroll-track:after{top:25px}.mega-title{font-size:clamp(55px,12vw,90px)}.outline-type{-webkit-text-stroke:1px var(--ink)}.section-headline{font-size:clamp(58px,13vw,96px)}.big-japanese{font-size:26px}.purpose-copy>p:not(.big-japanese){font-size:13px}.large-decor-text{font-size:80px;top:60px}.service-item{grid-template-columns:31px minmax(0,1fr);gap:8px;padding:28px 0}.service-toggle{grid-template-columns:minmax(0,1fr) 36px;gap:6px}.service-main{font-size:clamp(26px,7vw,39px)}.service-icon{width:34px;height:34px}.service-num{font-size:9px;padding-top:8px}.service-subtitle{font-size:11px}.service-panel-inner{padding:22px 0 4px}.service-panel-inner p{font-size:13px}.fact-row{grid-template-columns:80px 1fr;gap:16px;padding:19px 0}.fact-row dt{font-size:11px}.fact-row dd{font-size:12px}.group-block{padding:25px}.group-content h3{font-size:44px}.group-links a{font-size:12px}.accordion-toggle{grid-template-columns:1fr 42px;gap:8px;padding:26px 0}.accordion-index{grid-column:1 / -1;font-size:9px}.accordion-name{font-size:31px}.accordion-name small{font-size:9px}.accordion-icon{width:40px;height:40px}.job-table>div{grid-template-columns:1fr;gap:5px;padding:14px 0}.job-table dt{font-size:11px;color:var(--cyan)}.job-table dd{font-size:12px}.accordion-lead{font-size:12px}.job-apply{width:100%}.map-fullwidth{height:440px}.contact-title{font-size:clamp(45px,10vw,66px)}.contact-tel{font-size:27px}.footer-top{align-items:start;flex-direction:column;gap:25px}.footer-bottom{align-items:start;flex-direction:column;gap:16px;margin-top:55px}.footer-bottom>div{align-items:start;flex-direction:column;gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.hero-image{transform:scale(1.035)!important}}

/* Production contact form: visual state and consent */
#contact-form .privacy-consent{display:flex;gap:10px;align-items:center;line-height:1.7;margin-top:26px;cursor:pointer}
#contact-form .privacy-consent input{width:17px;height:17px;flex:none;accent-color:#a1deee;margin:0;cursor:pointer}
#contact-form .privacy-consent span{color:#d1d2d8}
#contact-form .privacy-consent a{color:#a1deee;text-decoration:underline;text-underline-offset:4px}
#contact-form .contact-honeypot{display:none!important}
#contact-form .turnstile-container{min-height:65px;margin-top:24px}
#contact-form .form-submit:disabled{opacity:.45;cursor:not-allowed}

/* Official privacy / information-security policy */
.policy-topbar{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:35px;margin-bottom:75px;border-bottom:1px solid var(--line)}
.policy-brand{font:800 clamp(22px,3vw,34px)/1 var(--font-en);letter-spacing:-.055em;white-space:nowrap}.policy-brand span{color:var(--magenta)}
.policy-topback{font:800 11px var(--font-en);letter-spacing:.12em;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:7px;white-space:nowrap}
.policy-lead{color:#b9bdc6;font-size:clamp(14px,1.5vw,18px);margin:-38px 0 90px}
.policy-sections{border-top:1px solid var(--line)}
.policy-section{position:relative;border-bottom:1px solid var(--line);padding:48px 0 56px}
.policy-number{font:700 11px var(--font-en);letter-spacing:.18em;color:var(--magenta);margin-bottom:15px}
.policy-section h2{font-size:clamp(22px,2.4vw,30px);line-height:1.55;margin:0 0 26px;letter-spacing:.025em}
.policy-section h3{font-size:17px;color:#e2e4eb;margin:32px 0 8px;line-height:1.6}
.policy-section p,.policy-section li{color:#c4c7ce;font-size:clamp(14px,1.24vw,16px);line-height:2.25;letter-spacing:.018em}
.policy-section p{margin:10px 0}.policy-section ol{margin:20px 0 0;padding-left:1.7em}.policy-section li{padding-left:.25em;margin:0 0 11px}
.policy-footer{margin:54px 0 0;text-align:right;color:#d2d4da;font-size:14px;line-height:2.2}
.policy-navigation{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:75px}
.policy-navigation>a{color:#cbd0db;border-bottom:1px solid var(--line);padding-bottom:6px}
.policy-navigation .privacy-close{margin-top:0}
@media(max-width:600px){.privacy-main{padding:28px 22px 60px}.privacy-main h1{font-size:clamp(53px,11.5vw,76px);margin:26px 0 58px}.policy-topbar{margin-bottom:65px}.policy-topback{font-size:9px}.policy-lead{margin:-27px 0 60px}.policy-section{padding:35px 0 42px}.policy-section h3{font-size:15px}.policy-navigation{align-items:stretch;flex-direction:column-reverse}.policy-navigation .privacy-close{text-align:center}}

.service-panel-inner,.accordion-inner{background:rgba(255,255,255,.022);border:1px solid rgba(255,255,255,.06);border-radius:18px;padding:28px 28px 22px 28px;margin-top:18px}
.accordion-inner{padding:24px 28px 34px 28px;margin-left:max(0px,calc(170px + 24px))}
@media(max-width:820px){.accordion-inner{margin-left:0}}
@media(max-width:540px){.section-label{padding:9px 14px;gap:14px}.service-panel-inner,.accordion-inner{padding:20px 18px 18px 18px;border-radius:14px}}


/* Targeted glass panels for right-side content */
.purpose-copy,
.facts,
.recruit-intro,
.contact-form-box{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 42px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.purpose-copy{
  padding:clamp(24px,3vw,38px);
  border-radius:26px;
}
.facts{
  padding:clamp(24px,3vw,36px);
  border-radius:24px;
}
.recruit-intro{
  padding:clamp(22px,2.8vw,34px);
  border-radius:24px;
}
.contact-form-box{
  background:rgba(255,255,255,.075);
  border-color:rgba(255,255,255,.14);
}
.purpose-copy>p:not(.big-japanese),
.facts .fact-row dd,
.recruit-intro p,
.contact-grid>div>p,
#contact-form label,
.form-notice{color:#e1e4eb}
.facts .fact-row,
.form-heading{border-color:rgba(255,255,255,.16)}
.facts .fact-row dt,
.recruit-intro .small-muted{color:#bec4cf!important}
@media(max-width:820px){
  .purpose-copy,.facts,.recruit-intro,.contact-form-box{border-radius:20px}
}
@media(max-width:540px){
  .purpose-copy,.facts,.recruit-intro,.contact-form-box{padding:18px 16px;border-radius:16px}
}
