:root{--ink:#11110f;--paper:#f3f1ea;--orange:#ff4d00;--line:rgba(17,17,15,.18);--white:#fff;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans JP",sans-serif;font-size:16px;line-height:1.75;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.intro{position:fixed;inset:0;z-index:9999;background:#090908;color:white;display:grid;place-items:center;overflow:hidden;transition:opacity .55s ease,visibility .55s}.intro.hide{opacity:0;visibility:hidden}.intro-grid,.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:54px 54px}.scan{position:absolute;inset:-20% 0 auto;height:25%;background:linear-gradient(transparent,rgba(255,77,0,.18),var(--orange));filter:blur(1px);animation:scan 2.3s cubic-bezier(.6,0,.3,1) forwards}.intro-core{position:relative;width:min(820px,82vw)}.intro-kicker,.intro-done{font:700 12px/1 Inter,sans-serif;letter-spacing:.25em}.intro-meter{height:2px;background:#333;margin:18px 0 12px}.intro-meter i{display:block;height:100%;background:var(--orange);animation:meter 2.1s ease forwards}.intro-log{display:flex;justify-content:space-between;color:#777;font:600 11px Inter,sans-serif;letter-spacing:.12em}.intro-core h2{font:900 clamp(58px,12vw,150px)/.78 Inter,sans-serif;letter-spacing:-.075em;margin:65px 0 28px;animation:glitch .18s 8 alternate}.intro-core h2 span{color:var(--orange)}.intro-done{opacity:0;animation:done .3s 2.1s forwards}.intro-done b{color:#57ff78}.header{position:absolute;z-index:20;top:0;left:0;width:100%;height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;color:white;border-bottom:1px solid rgba(255,255,255,.25)}.brand{display:flex;align-items:center;gap:12px;font:800 15px Inter,sans-serif;letter-spacing:.08em}.brand span,.footer-brand span{width:38px;height:38px;display:grid;place-items:center;background:var(--orange);color:white;font:900 14px Inter,sans-serif}.header nav{display:flex;align-items:center;gap:34px;font:700 12px Inter,sans-serif;letter-spacing:.12em}.nav-cta{background:white;color:var(--ink);padding:12px 22px}.menu{display:none}.hero{position:relative;height:max(720px,100svh);min-height:680px;color:white;overflow:hidden}.hero-media,.hero-shade,.hero-grid{position:absolute;inset:0}.hero-media{background:#252522}.hero-media img{filter:saturate(.75) contrast(1.05)}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.43) 55%,rgba(0,0,0,.25)),linear-gradient(0deg,rgba(0,0,0,.55),transparent 45%)}.hero-grid{opacity:.38}.hero-content{position:absolute;z-index:2;left:max(5vw,calc((100vw - var(--max))/2));top:19%;width:min(800px,88vw)}.eyebrow,.num{font:700 11px/1.3 Inter,sans-serif;letter-spacing:.22em;text-transform:uppercase}.eyebrow:before{content:"";display:inline-block;width:48px;height:2px;background:var(--orange);vertical-align:middle;margin-right:14px}.hero h1{font-size:clamp(56px,7.4vw,116px);line-height:.98;letter-spacing:-.065em;margin:28px 0 24px;font-weight:900}.hero h1 em{color:var(--orange);font-style:normal}.hero-copy{font-size:clamp(17px,1.4vw,21px);font-weight:600;line-height:1.65}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:36px}.btn{min-height:58px;padding:0 26px;display:inline-flex;align-items:center;justify-content:space-between;gap:34px;border:0;font-weight:800;font-size:14px;cursor:pointer}.btn.primary{background:var(--orange);color:white}.btn b{font-size:19px}.text-link{font-weight:700;border-bottom:1px solid white;padding:12px 0}.text-link span{margin-left:20px}.hero-proof{position:absolute;z-index:2;right:4vw;bottom:7%;display:flex;align-items:center;gap:16px;padding-left:25px;border-left:2px solid var(--orange)}.hero-proof strong{font:800 54px/1 Inter,sans-serif}.hero-proof strong span{font-size:17px}.hero-proof p{font-size:12px;line-height:1.5}.replay{position:absolute;z-index:5;right:4vw;top:110px;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.35);color:white;padding:10px 14px;font:600 10px Inter;letter-spacing:.1em;cursor:pointer}.scroll{position:absolute;z-index:2;left:4vw;bottom:5%;font:600 10px Inter;letter-spacing:.2em;writing-mode:vertical-rl;display:flex;align-items:center;gap:10px}.scroll i{width:1px;height:50px;background:white}.ticker{overflow:hidden;background:var(--orange);color:white;padding:13px 0;white-space:nowrap}.ticker div{font:900 15px Inter,sans-serif;letter-spacing:.09em;display:inline-block;animation:ticker 20s linear infinite}.ticker i{padding:0 22px;font-style:normal}.section{max-width:var(--max);margin:auto;padding:130px 4vw}.section-head{display:grid;grid-template-columns:1fr 2fr;align-items:start;margin-bottom:70px}.section-head h2{font-size:clamp(40px,5.1vw,72px);line-height:1.14;letter-spacing:-.055em;margin:0;font-weight:900}.num{color:var(--orange)}.symptoms{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.symptom{padding:35px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:370px;display:flex;flex-direction:column}.symptom>span{font:800 13px Inter;color:var(--orange)}.symptom h3{font-size:25px;line-height:1.55;margin:55px 0 15px}.symptom p{font-size:14px;color:#555}.symptom i{font:700 10px Inter;letter-spacing:.15em;color:#999;margin-top:auto}.manifesto{display:grid;grid-template-columns:1.08fr .92fr;min-height:800px;background:#d8d5cc}.manifesto-photo{min-height:650px}.manifesto-copy{padding:10vw 8vw}.manifesto-copy h2{font-size:clamp(52px,6vw,86px);line-height:1.05;letter-spacing:-.06em;margin:35px 0}.manifesto-copy>p{max-width:560px}.manifesto-copy dl{margin-top:60px}.manifesto-copy dl div{display:grid;grid-template-columns:50px 1fr;border-top:1px solid var(--line);padding:17px 0}.manifesto-copy dt{color:var(--orange);font:700 12px Inter}.manifesto-copy dd{margin:0;font-weight:700}.services{max-width:none;background:var(--ink);color:white;padding-left:max(4vw,calc((100vw - var(--max))/2));padding-right:max(4vw,calc((100vw - var(--max))/2))}.section-head.light{border-color:#333}.service-list{border-top:1px solid #40403e}.service-list article{display:grid;grid-template-columns:60px 1.1fr 1.6fr 40px;gap:30px;align-items:center;border-bottom:1px solid #40403e;padding:33px 0}.service-list article>b{color:var(--orange);font:800 13px Inter}.service-list small{color:#777;font:700 10px Inter;letter-spacing:.15em}.service-list h3{font-size:27px;margin:3px 0}.service-list p{color:#aaa;margin:0;font-size:14px}.service-list article>span{font-size:27px;color:var(--orange)}.case-grid{display:grid;grid-template-columns:1fr 1fr}.case{padding:55px;min-height:420px;display:flex;flex-direction:column}.case.dark{background:var(--ink);color:white}.case.orange{background:var(--orange);color:white}.case>p:first-child{font:700 10px Inter;letter-spacing:.15em}.case h3{font-size:18px;margin:45px 0 5px}.case strong{font:800 clamp(42px,5.5vw,78px)/1 Inter;letter-spacing:-.06em}.case strong small{font-size:14px}.case strong span{font-size:17px}.case strong i{font-style:normal;font-size:35px;margin:0 13px}.case>em{font:900 13px Inter;letter-spacing:.14em;margin-top:15px}.case-note{font-size:13px;max-width:430px;margin-top:auto}.legal-note{font-size:11px;color:#777;text-align:right}.steps{list-style:none;padding:0;margin:0;border-top:2px solid var(--ink)}.steps li{display:grid;grid-template-columns:90px 1fr 140px;gap:35px;align-items:start;border-bottom:1px solid var(--line);padding:35px 0}.steps li>b{font:900 42px Inter;color:var(--orange)}.steps h3{font-size:25px;margin:0 0 8px}.steps p{margin:0;color:#555;font-size:14px}.steps small{text-align:right;font:700 10px Inter;letter-spacing:.12em}.price{max-width:none;background:linear-gradient(135deg,#252522,#080808);padding-left:max(4vw,calc((100vw - var(--max))/2));padding-right:max(4vw,calc((100vw - var(--max))/2))}.price-card{background:var(--paper);padding:70px;display:grid;grid-template-columns:1.35fr .65fr;gap:60px}.price-card h2{font-size:clamp(45px,5vw,70px);line-height:1.1;letter-spacing:-.055em;margin:28px 0}.price-card>div:first-child>p:last-child{max-width:550px}.price-number{border-left:1px solid var(--line);padding-left:50px}.price-number small{font:700 10px Inter;letter-spacing:.18em}.price-number strong{display:block;font:900 100px/1 Inter;letter-spacing:-.07em;margin:20px 0}.price-number strong span{font-size:32px}.price-number p{font-size:12px}.price-number .btn{width:100%;margin-top:20px}.recruit{position:relative;min-height:900px;color:white;display:flex;align-items:center;padding:10vw max(4vw,calc((100vw - var(--max))/2));overflow:hidden}.recruit-photo,.recruit-overlay{position:absolute;inset:0}.recruit-overlay{background:linear-gradient(90deg,rgba(0,0,0,.87),rgba(0,0,0,.2))}.recruit-copy{position:relative;width:min(660px,90%)}.recruit-copy h2{font-size:clamp(58px,7vw,100px);line-height:1;letter-spacing:-.06em;margin:30px 0}.recruit-copy p{max-width:550px}.recruit-copy ul{list-style:none;padding:0;margin:45px 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.recruit-copy li{border-top:1px solid rgba(255,255,255,.4);padding:10px 0;font:700 11px Inter;letter-spacing:.12em}.btn.outline{border:1px solid white;color:white;background:transparent}.news-list{border-top:1px solid var(--line)}.news-list a{display:grid;grid-template-columns:130px 85px 1fr 30px;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:26px 0}.news-list time{font:600 12px Inter}.news-list span{font:700 9px Inter;color:var(--orange);letter-spacing:.1em}.news-list p{margin:0}.accordions{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:40px 1fr 30px;gap:20px;align-items:center;padding:25px 0;font-weight:700;font-size:18px}summary::-webkit-details-marker{display:none}summary b{color:var(--orange);font:800 21px Inter}summary span{text-align:center;font-size:24px;transition:.25s}details[open] summary span{transform:rotate(45deg)}details>p{padding:0 50px 26px;margin:0;color:#555}.contact{max-width:none;background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-left:max(4vw,calc((100vw - var(--max))/2));padding-right:max(4vw,calc((100vw - var(--max))/2))}.contact-intro h2{font-size:clamp(55px,6.7vw,94px);line-height:1.05;letter-spacing:-.065em;margin:35px 0}.contact-intro h2 em{color:var(--orange);font-style:normal}.contact-form{display:grid;gap:25px}.contact-form>label{display:grid;gap:8px;font-size:13px;font-weight:700}.contact-form label span,.contact-form legend span{font-size:9px;background:var(--orange);padding:2px 5px;margin-left:8px}.contact-form input,.contact-form textarea{width:100%;background:transparent;color:white;border:0;border-bottom:1px solid #555;border-radius:0;padding:13px 2px;font:inherit;font-size:16px;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--orange)}.contact-form fieldset{border:0;padding:0;margin:0}.contact-form legend{font-size:13px;font-weight:700;margin-bottom:12px}.contact-form fieldset label{display:inline-flex;align-items:center;margin:0 20px 8px 0;font-size:13px}.contact-form fieldset input,.agree input{width:auto;margin-right:8px;accent-color:var(--orange)}.contact-form .agree{display:flex;grid-template-columns:auto 1fr;align-items:center;font-weight:400}.form-status{font-size:13px;color:#7eff98}.contact-form .btn{width:100%}footer{background:#070706;color:white;padding:80px max(4vw,calc((100vw - var(--max))/2)) 35px;display:grid;grid-template-columns:1fr 1fr;gap:70px}footer .footer-brand{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:12px}footer h2{font:900 26px Inter;margin:0;letter-spacing:-.03em}.footer-brand p{grid-column:2;margin:0;color:#888}.footer-info{font-size:13px;color:#aaa}.footer-info nav{display:flex;gap:22px;margin-top:30px;color:white;font:600 11px Inter}.copy{grid-column:1/-1;margin-top:50px;border-top:1px solid #333;padding-top:25px;font:500 9px Inter;color:#777;letter-spacing:.1em}.reveal{opacity:0;transform:translateY(34px);transition:opacity .75s ease,transform .75s ease}.reveal.on{opacity:1;transform:none}@keyframes scan{to{transform:translateY(580%)}}@keyframes meter{from{width:0}to{width:100%}}@keyframes done{to{opacity:1}}@keyframes glitch{from{transform:translateX(-3px);text-shadow:4px 0 var(--orange)}to{transform:translateX(3px);text-shadow:-4px 0 #1677ff}}@keyframes ticker{to{transform:translateX(-50%)}}
@media(max-width:800px){.header{height:68px;padding:0 20px}.header nav{position:absolute;top:68px;left:0;right:0;background:#111;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px 20px 25px}.header nav.open{display:flex}.header nav a{padding:14px 0;border-bottom:1px solid #333}.menu{display:grid;background:none;border:0;gap:6px}.menu span{display:block;width:27px;height:2px;background:white}.brand b{font-size:12px}.hero{min-height:700px;height:100svh}.hero-media img{object-position:62% center}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.35)),linear-gradient(0deg,rgba(0,0,0,.75),transparent 50%)}.hero-content{left:20px;top:18%;width:calc(100% - 40px)}.hero h1{font-size:clamp(51px,15vw,74px);line-height:1.02}.hero-copy{font-size:15px}.hero-actions{align-items:stretch;flex-direction:column;gap:12px;width:270px;margin-top:26px}.hero-actions .text-link{font-size:13px}.hero-proof{right:20px;bottom:30px}.hero-proof strong{font-size:38px}.scroll{display:none}.replay{right:20px;top:83px}.intro-core{width:86vw}.intro-log{font-size:8px}.intro-core h2{font-size:19vw;margin-top:48px}.ticker div{font-size:12px}.section{padding:85px 20px}.section-head{display:block;margin-bottom:45px}.section-head .num{margin-bottom:25px}.section-head h2{font-size:40px}.symptoms{grid-template-columns:1fr}.symptom{min-height:280px;padding:28px}.symptom h3{margin-top:32px;font-size:22px}.manifesto{grid-template-columns:1fr}.manifesto-photo{min-height:480px}.manifesto-copy{padding:85px 20px}.manifesto-copy h2{font-size:57px}.services{padding:85px 20px}.service-list article{grid-template-columns:35px 1fr 25px;gap:14px}.service-list article p{grid-column:2/4}.service-list h3{font-size:22px}.case-grid{grid-template-columns:1fr}.case{padding:35px 25px;min-height:350px}.case strong{font-size:45px}.steps li{grid-template-columns:55px 1fr;gap:18px}.steps li>b{font-size:32px}.steps li small{grid-column:2;text-align:left}.price{padding:70px 20px}.price-card{grid-template-columns:1fr;padding:35px 24px;gap:35px}.price-card h2{font-size:42px}.price-number{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.price-number strong{font-size:86px}.recruit{min-height:820px;padding:100px 20px}.recruit-photo img{object-position:63% center}.recruit-overlay{background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.45))}.recruit-copy h2{font-size:60px}.recruit-copy ul{grid-template-columns:1fr}.news-list a{grid-template-columns:95px 60px 1fr 18px;gap:8px;font-size:13px}.contact{grid-template-columns:1fr;padding:90px 20px;gap:55px}.contact-intro h2{font-size:57px}.contact-form fieldset label{display:flex}footer{grid-template-columns:1fr;padding:65px 20px 30px;gap:35px}.copy{grid-column:auto;margin-top:10px}.intro-grid,.hero-grid{background-size:32px 32px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.intro{display:none}.ticker div,.reveal{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

.hero-slider img{position:absolute;inset:0;opacity:0;transform:scale(1.04);transition:opacity 1.4s ease,transform 7s linear}
.hero-slider img.active{opacity:1;transform:scale(1)}
.field-notes{padding-top:120px;padding-bottom:130px}
.field-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:310px 310px;gap:18px}
.field-grid figure{position:relative;margin:0;overflow:hidden;background:#222}
.field-grid .field-wide{grid-row:1/3}
.field-grid img{transition:transform .8s ease}
.field-grid figure:hover img{transform:scale(1.025)}
.field-grid figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:18px;padding:22px 24px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.78))}
.field-grid figcaption b{font:800 11px Inter,sans-serif;letter-spacing:.15em;color:var(--orange)}
.field-grid figcaption span{font-size:13px;font-weight:700}
@media(max-width:800px){.field-notes{padding-top:80px;padding-bottom:85px}.field-grid{grid-template-columns:1fr;grid-template-rows:420px 260px 260px}.field-grid .field-wide{grid-row:auto}.field-grid figcaption{padding:18px}}
@media(prefers-reduced-motion:reduce){.hero-slider img{transition:none}.hero-slider img:not(.active){display:none}}
