:root{--ink:#101316;--ink2:#171b20;--soft:#22272e;--white:#f7f8f7;--cream:#f1efe9;--paper:#fbfbf9;--muted:#8f979d;--line:rgba(255,255,255,.14);--lineDark:rgba(16,19,22,.14);--accent:#b8ff56;--accent2:#71ddff;--max:1240px;--pad:clamp(24px,6.5vw,96px);--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.75;letter-spacing:.02em}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(var(--max),calc(100% - var(--pad)*2));margin-inline:auto}.section-dark{background:var(--ink);color:var(--white)}.section-dark-soft{background:var(--ink2);color:var(--white)}.section-light{background:var(--paper)}.section-cream{background:var(--cream)}.eyebrow{font-size:12px;letter-spacing:.22em;font-weight:700;color:var(--accent);margin:0 0 28px}.eyebrow.dark{color:#596167}.nowrap{white-space:nowrap}
.site-header{height:88px;position:fixed;top:0;left:0;right:0;z-index:1000;display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:0 36px;gap:28px;color:white;transition:.35s;border-bottom:1px solid transparent}.site-header.scrolled{height:76px;background:rgba(247,248,247,.9);backdrop-filter:blur(18px);color:var(--ink);border-bottom-color:rgba(16,19,22,.09)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font:700 18px/1 Georgia,serif}.brand-copy{display:flex;flex-direction:column;line-height:1.1}.brand-copy strong{font-size:18px;letter-spacing:.17em}.brand-copy small{font-size:9px;opacity:.65;margin-top:6px;letter-spacing:.1em}.desktop-nav{display:flex;justify-content:flex-end;gap:24px}.desktop-nav a{font-size:11px;font-weight:650;letter-spacing:.08em;opacity:.8}.desktop-nav a:hover{opacity:1}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 22px;border-radius:999px;font-size:13px;font-weight:700;transition:.25s}.button:hover{transform:translateY(-2px)}.button-dark{background:white;color:var(--ink)}.site-header.scrolled .button-dark{background:var(--ink);color:white}.button-primary{background:var(--accent);color:var(--ink)}.button-small{padding:12px 18px;font-size:11px}.button-large{padding:21px 34px;font-size:15px}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:13px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:4px}.text-link.dark{color:var(--ink)}.menu-button{display:none;background:none;border:0;color:inherit}.mobile-menu{display:none}
.hero{min-height:900px;position:relative;overflow:hidden;padding-top:88px}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 45%,rgba(113,221,255,.13),transparent 28%),radial-gradient(circle at 82% 28%,rgba(184,255,86,.09),transparent 20%)}.hero-noise{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:44px 44px}.hero-grid{min-height:760px;display:grid;grid-template-columns:55% 45%;align-items:center;position:relative}.hero h1{font-size:clamp(52px,5.25vw,76px);line-height:1.13;letter-spacing:-.045em;margin:0 0 34px;font-weight:750}.hero h1 span{color:#dbe0e2}.hero-lead{font-size:17px;color:#bec5c9;max-width:680px;line-height:2}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:42px}.hero-proof{display:flex;gap:11px;align-items:center;margin-top:70px;color:#8e969b;font-size:9px;letter-spacing:.12em}.hero-proof i{width:20px;height:1px;background:#4f565c}.hero-visual{padding-left:20px}.hero-visual img{width:100%;filter:drop-shadow(0 25px 80px rgba(0,0,0,.3))}.ticker{height:66px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;display:flex;align-items:center;position:relative}.ticker-track{white-space:nowrap;display:flex;gap:24px;align-items:center;animation:ticker 36s linear infinite;font-size:12px;letter-spacing:.08em;color:#aeb5b9}.ticker-track b{color:var(--accent);font-size:16px}@keyframes ticker{to{transform:translateX(-50%)}}
.one-ai{padding:145px 0 120px}.centered{text-align:center}.display-heading{font-size:clamp(46px,5.1vw,72px);line-height:1.18;letter-spacing:-.04em;margin:0}.section-lead{color:#a9b0b4;font-size:16px;margin:32px auto 0;max-width:650px}.section-lead strong{color:white}.triad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:90px}.triad-card{border:1px solid var(--line);border-radius:var(--radius);padding:38px;min-height:310px;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.01))}.triad-index{font-size:10px;color:var(--accent);letter-spacing:.15em}.triad-card h3{font-size:26px;margin:38px 0 16px}.triad-card>p:not(.triad-index){font-size:14px;color:#aeb5b9}.chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:36px}.chip-row span{border:1px solid var(--line);border-radius:99px;padding:7px 10px;font-size:10px;color:#d9dee1}.one-ai-conclusion{text-align:center;font-size:18px;margin:75px 0 0;color:#aeb5b9}.one-ai-conclusion strong{color:white}
.problems{padding:145px 0}.split-heading{display:grid;grid-template-columns:34% 66%;gap:72px}.sticky-intro{align-self:start;position:sticky;top:120px}.sticky-intro h2,.section-heading h2,.technology-intro h2,.creative-copy h2,.xr-copy h2,.about h2,.contact h2{font-size:clamp(40px,4.3vw,62px);line-height:1.18;letter-spacing:-.04em;margin:0 0 28px}.sticky-intro>p{color:#737b80}.problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.problem-card{padding:30px;border:1px solid var(--lineDark);min-height:170px;border-radius:18px;background:white;transition:.3s}.problem-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(16,19,22,.06)}.problem-card span{font-size:10px;color:#7c858b}.problem-card h3{font-size:17px;line-height:1.6;margin:35px 0 0;font-weight:620}
.services{padding:145px 0}.section-heading{max-width:850px;margin-bottom:70px}.section-heading h2 span,.creative-copy h2 span,.xr-copy h2 span,.why .section-heading h2 span,.cases .section-heading h2 span,.lab h2 span,.about h2 span,.contact h2 span{color:#6e787f}.section-heading>p:not(.eyebrow){color:#697177}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.service-card{background:var(--paper);border:1px solid var(--lineDark);padding:30px 26px 26px;min-height:610px;display:flex;flex-direction:column;transition:.35s;position:relative;overflow:hidden}.service-card:before{content:"";position:absolute;inset:auto -40% -35% -40%;height:260px;background:radial-gradient(circle,var(--accent),transparent 60%);opacity:0;transition:.35s}.service-card:hover{background:var(--ink);color:white;transform:translateY(-9px)}.service-card:hover:before{opacity:.07}.service-num{font-size:10px;color:#828a90}.service-en{font-size:10px;letter-spacing:.14em;margin:55px 0 12px}.service-card h3{font-size:35px;margin:0}.service-punch{font-size:15px;line-height:1.7;min-height:82px;margin:24px 0}.service-card ul{list-style:none;margin:16px 0 30px;padding:0;border-top:1px solid currentColor;color:inherit;opacity:.7}.service-card li{padding:10px 0;border-bottom:1px solid currentColor;font-size:11px}.service-card a{font-size:11px;font-weight:700;margin-top:auto}
.method{padding:130px 0}.method-flow{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--lineDark);border-bottom:1px solid var(--lineDark);padding:48px 0}.method-flow div{display:flex;flex-direction:column;gap:7px}.method-flow b{font-size:9px;color:#8a9297}.method-flow strong{font-size:12px;letter-spacing:.08em}.method-flow span{font-size:12px;color:#666f74}.method-flow i{font-style:normal;color:#a8aeb2}
.technology{padding:145px 0}.technology-grid{display:grid;grid-template-columns:38% 62%;gap:80px}.technology-intro{align-self:start;position:sticky;top:125px}.technology-intro>p:not(.eyebrow){color:#9ea6aa;max-width:420px}.tech-visual-small{margin-top:55px;max-width:370px}.technology-list{border-top:1px solid var(--line)}.tech-row{display:grid;grid-template-columns:55px 1fr;border-bottom:1px solid var(--line);padding:34px 0 38px;transition:.3s}.tech-row:hover{padding-left:14px;background:linear-gradient(90deg,rgba(184,255,86,.035),transparent)}.tech-row>span{font-size:10px;color:#717b81}.tech-row p{font-size:10px;letter-spacing:.14em;color:var(--accent);margin:0 0 13px}.tech-row h3{font-size:24px;line-height:1.4;margin:0;font-weight:560;color:#e9edef}
.combination{padding:145px 0}.combo-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.combo-card{border:1px solid var(--lineDark);padding:38px;min-height:420px;background:white;border-radius:3px}.combo-top{display:flex;justify-content:space-between;font-size:10px;color:#717a80}.combo-top p{letter-spacing:.14em;margin:0}.combo-card h3{font-size:30px;line-height:1.35;margin:54px 0 38px}.formula{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.formula span{background:#f0f1ef;padding:9px 12px;border-radius:5px;font-size:10px;font-weight:650}.formula b{font-size:13px;color:#9ba2a6}.combo-result{margin-top:45px;border-top:1px solid var(--lineDark);padding-top:24px;font-size:13px;font-weight:700;display:flex;justify-content:space-between}
.kai{padding:145px 0}.kai-grid{display:grid;grid-template-columns:55% 45%;gap:70px;align-items:center}.kai-visual img{width:100%;filter:drop-shadow(0 30px 70px rgba(0,0,0,.28))}.kai-label{font-size:10px;letter-spacing:.16em;color:#99a1a6}.kai-copy h2{font-size:86px;line-height:1;margin:10px 0 30px;letter-spacing:-.05em}.kai-copy h3{font-size:28px;line-height:1.45;margin:0 0 25px}.kai-copy>p:not(.eyebrow,.kai-label){color:#aeb5b9;font-size:14px}.mini-flow{display:flex;align-items:center;gap:9px;margin-top:35px}.mini-flow span,.mini-flow strong{font-size:9px;border:1px solid var(--line);border-radius:99px;padding:8px 10px}.mini-flow strong{color:var(--accent)}.mini-flow i{font-style:normal;color:#697277}
.creative-studio{padding:145px 0}.creative-grid{display:grid;grid-template-columns:42% 58%;gap:70px;align-items:center}.creative-copy>p:not(.eyebrow){color:#6c7479}.creative-copy h3{font-size:22px;margin-top:45px}.creative-flow{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:30px 0}.creative-flow span{font-size:9px;font-weight:700}.creative-flow i{font-style:normal;font-size:9px;color:#91989c}.creative-visual img{filter:drop-shadow(0 25px 55px rgba(16,19,22,.12))}
.xr{padding:145px 0}.xr-grid{display:grid;grid-template-columns:58% 42%;gap:75px;align-items:center}.xr-visual{background:#101316;border-radius:24px;padding:16px}.xr-copy>p:not(.eyebrow){color:#687177}.tag-cloud{display:flex;flex-wrap:wrap;gap:8px;margin-top:36px}.tag-cloud span{font-size:10px;border:1px solid var(--lineDark);border-radius:99px;padding:9px 12px;background:white}
.why{padding:145px 0}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.why-card{border:1px solid var(--line);padding:30px;min-height:260px}.why-card b{font-size:10px;color:#778187}.why-card p{font-size:10px;color:var(--accent);letter-spacing:.14em;margin:52px 0 12px}.why-card h3{font-size:22px;line-height:1.45;margin:0}.why-card.feature{grid-column:span 3;display:grid;grid-template-columns:70px 1fr 2fr;align-items:center;min-height:190px}.why-card.feature p{margin:0}.why-card.feature h3{font-size:30px}.why-card.feature h3 span{color:#aeb6ba}
.cases{padding:145px 0}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.case-card{border:1px solid var(--lineDark);background:white;overflow:hidden}.case-image{height:260px;position:relative;display:flex;align-items:flex-end;padding:22px;color:white;background-color:#15191d}.case-image:before,.case-image:after{content:"";position:absolute;border-radius:50%;filter:blur(0)}.case-ai:before{width:180px;height:180px;left:20%;top:15%;background:radial-gradient(circle,rgba(184,255,86,.7),transparent 65%)}.case-ai:after{width:180px;height:180px;right:10%;bottom:5%;background:radial-gradient(circle,rgba(113,221,255,.5),transparent 65%)}.case-creative:before{width:250px;height:120px;left:13%;top:25%;background:linear-gradient(100deg,rgba(113,221,255,.65),rgba(184,255,86,.35));border-radius:12px;transform:rotate(-8deg)}.case-bim:before{width:240px;height:170px;left:15%;top:16%;background:repeating-linear-gradient(90deg,rgba(255,255,255,.22) 0 1px,transparent 1px 28px),repeating-linear-gradient(0deg,rgba(255,255,255,.22) 0 1px,transparent 1px 28px);transform:perspective(300px) rotateX(50deg) rotateZ(-20deg)}.case-image span{position:relative;z-index:2;font-size:9px;letter-spacing:.15em}.case-body{padding:26px}.case-tags{display:flex;gap:5px;flex-wrap:wrap}.case-tags span{font-size:8px;background:#edf0ed;border-radius:99px;padding:5px 7px}.case-body h3{font-size:20px;line-height:1.55;margin:25px 0 13px}.case-body p{font-size:12px;color:#6f777c;min-height:62px}.case-body a{font-size:9px;font-weight:700}
.lab{padding:130px 0}.lab-grid{display:grid;grid-template-columns:44% 56%;gap:90px}.lab h2{font-size:50px;line-height:1.25;margin:0 0 22px}.lab p{color:#697177}.lab-list{border-top:1px solid var(--lineDark)}.lab-list div{display:grid;grid-template-columns:50px 1fr;border-bottom:1px solid var(--lineDark);padding:20px 0}.lab-list span{font-size:9px;color:#8a9297}.lab-list p{margin:0;color:var(--ink);font-size:14px}
.about{padding:155px 0;text-align:center}.about-inner{max-width:900px}.about h2{font-size:clamp(46px,5vw,70px)}.about p:not(.eyebrow){color:#aeb5b9}.about-word{font-family:Georgia,serif;font-size:28px;font-style:italic;color:#667078;margin:50px 0 32px}
.contact{padding:165px 0 140px;text-align:center}.contact-inner{max-width:1000px}.contact h2{font-size:clamp(58px,6.3vw,92px);line-height:1.05}.contact h3{font-size:26px;margin:35px 0 20px}.contact p{color:#aeb5b9}.contact .button{margin-top:35px}.contact-types{margin-top:70px;display:flex;justify-content:center;gap:15px;flex-wrap:wrap;color:#767f84;font-size:9px;letter-spacing:.09em}.contact-types span+span:before{content:"•";margin-right:15px;color:var(--accent)}
.footer{background:#090b0d;color:#aeb5b9;padding:75px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px}.footer-brand{color:white;margin-bottom:22px}.footer p{font-size:12px}.footer-links{display:flex;flex-direction:column;gap:14px;font-size:10px;letter-spacing:.08em}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:65px;padding-top:22px;display:flex;justify-content:space-between;font-size:9px}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}.reveal-delay{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}
@media(max-width:1100px){.desktop-nav{display:none}.site-header{grid-template-columns:auto 1fr auto auto}.menu-button{display:block;width:38px;height:38px;position:relative}.menu-button span{position:absolute;left:7px;right:7px;height:1px;background:currentColor;top:14px}.menu-button span:last-child{top:22px}.mobile-menu{display:block;position:fixed;inset:0;background:rgba(10,12,14,.98);z-index:999;padding:120px 8vw;opacity:0;pointer-events:none;transition:.3s}.mobile-menu.open{opacity:1;pointer-events:auto}.mobile-menu nav{display:flex;flex-direction:column;color:white;font-size:28px;gap:18px}.hero-grid,.technology-grid,.kai-grid,.creative-grid,.xr-grid{grid-template-columns:1fr}.hero{min-height:auto}.hero-grid{padding:160px 0 80px}.hero-visual{max-width:650px;margin:50px auto 0}.service-grid{grid-template-columns:1fr 1fr}.split-heading{grid-template-columns:1fr}.sticky-intro{position:static}.why-grid{grid-template-columns:1fr 1fr}.why-card.feature{grid-column:span 2}.case-grid{grid-template-columns:1fr 1fr}.technology-intro{position:static}.triad-grid{grid-template-columns:1fr}.lab-grid{grid-template-columns:1fr}.method-flow{overflow:auto;gap:25px}.method-flow div{min-width:110px}}
@media(max-width:720px){:root{--pad:22px}.site-header{height:70px;padding:0 18px}.site-header>.button{display:none}.brand-copy small{display:none}.hero-grid{padding-top:130px}.hero h1{font-size:44px}.hero-lead{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-proof{display:none}.one-ai,.problems,.services,.method,.technology,.combination,.kai,.creative-studio,.xr,.why,.cases,.lab,.about,.contact{padding:95px 0}.problem-grid,.service-grid,.combo-grid,.why-grid,.case-grid{grid-template-columns:1fr}.why-card.feature{grid-column:auto;display:block}.why-card.feature p{margin:52px 0 12px}.kai-copy h2{font-size:70px}.formula{gap:5px}.footer-grid{grid-template-columns:1fr}.contact-types{display:none}.section-heading h2,.sticky-intro h2,.technology-intro h2,.creative-copy h2,.xr-copy h2,.about h2{font-size:38px}.display-heading{font-size:42px}.ticker{display:none}}
