:root{--black:#10110e;--ink:#181a16;--paper:#f0f0e8;--white:#f7f7f0;--acid:#d8ff42;--orange:#ff603b;--line:rgba(24,26,22,.22);--sans:'Noto Sans JP',sans-serif;--latin:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}em{font-style:normal}.header{position:absolute;z-index:20;top:0;left:0;right:0;height:96px;display:flex;align-items:center;padding:0 3.5vw;color:white;border-bottom:1px solid rgba(255,255,255,.28);mix-blend-mode:difference}.logo{width:152px}.logo img{height:auto;filter:brightness(0) invert(1)}.header-center{position:absolute;left:50%;transform:translateX(-50%);font:500 9px var(--latin);letter-spacing:.17em}.header-center span{margin-left:20px}.header nav{margin-left:auto;display:flex;align-items:center;gap:28px;font:500 10px var(--latin);letter-spacing:.13em}.nav-recruit{border:1px solid white;border-radius:50%;width:100px;height:42px;display:grid;place-items:center}.menu{display:none;background:none;border:0;color:white}.hero{height:100svh;min-height:720px;position:relative;overflow:hidden;background:#111;color:white}.hero-image{position:absolute;inset:-4%;background:url('assets/sms-headquarters.jpg') center/cover;filter:saturate(.68) contrast(1.08);transform:scale(1.06);animation:heroIn 1.6s cubic-bezier(.2,.65,.2,1) both}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,12,10,.25),rgba(8,12,10,.04) 35%,rgba(5,8,7,.83) 100%)}.hero-noise{position:absolute;inset:0;z-index:1;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}.hero-place,.hero-index{position:absolute;z-index:2;top:130px;font:500 9px/1.6 var(--latin);letter-spacing:.16em}.hero-place{left:3.5vw}.hero-index{right:3.5vw}.hero-title{position:absolute;z-index:2;left:3vw;top:50%;transform:translateY(-52%);display:flex;flex-direction:column;font:500 clamp(90px,14vw,220px)/.72 var(--latin);letter-spacing:-.075em;white-space:nowrap}.hero-title .outline{margin-left:13vw;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.78)}.hero-bottom{position:absolute;z-index:2;left:3.5vw;right:3.5vw;bottom:40px;padding-top:28px;border-top:1px solid rgba(255,255,255,.48);display:flex;justify-content:space-between;align-items:end}.hero-bottom h1{font-size:clamp(28px,3.1vw,50px);line-height:1.35;letter-spacing:-.05em;margin:0}.hero-bottom>div{text-align:right}.hero-bottom p{font-size:12px}.hero-bottom a{font:500 10px var(--latin);letter-spacing:.13em}.hero-bottom a b{display:inline-grid;place-items:center;width:32px;height:32px;margin-left:12px;border:1px solid white;border-radius:50%}@keyframes heroIn{from{opacity:0;transform:scale(1.18)}to{opacity:1;transform:scale(1.06)}}
.vision{padding:150px 3.5vw 130px}.kicker{display:flex;gap:13px;align-items:center;font:500 10px var(--latin);letter-spacing:.15em}.kicker b{width:34px;height:34px;display:grid;place-items:center;border:1px solid;border-radius:50%;font-size:9px}.kicker.light{color:var(--white)}.vision-lead{font-size:clamp(54px,8.2vw,128px);line-height:1.12;letter-spacing:-.075em;margin:100px 0 110px}.vision-lead em{color:var(--orange)}.vision-copy{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-left:30%}.vision-copy .jp{font-size:17px;line-height:2.15;margin:0}.vision-copy .en{font:500 12px/1.7 var(--latin);letter-spacing:.14em}.facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:100px;border-top:1px solid var(--line)}.facts>div{padding:35px 15px;display:flex;align-items:end;gap:14px;border-right:1px solid var(--line)}.facts>div:last-child{border:0}.facts strong{font:500 clamp(60px,7vw,105px)/.8 var(--latin);letter-spacing:-.07em}.facts sup{font-size:25px}.facts span{font:500 9px/1.4 var(--latin);letter-spacing:.1em}.ticker{background:var(--acid);overflow:hidden;padding:21px 0;border-block:1px solid var(--ink)}.ticker div{font:500 17px var(--latin);letter-spacing:.08em;white-space:nowrap;width:max-content;animation:tick 32s linear infinite}@keyframes tick{to{transform:translateX(-50%)}}
.business{background:var(--black);color:var(--white);padding:140px 3.5vw}.business-head{display:grid;grid-template-columns:.6fr 1.4fr .8fr;align-items:end;margin-bottom:90px}.business-head h2{font-size:clamp(60px,7vw,110px);line-height:1;letter-spacing:-.07em;margin:0}.business-head>p{font-size:12px;line-height:2;color:#adb0a8}.projects{display:grid;grid-template-columns:repeat(12,1fr);gap:5vw 18px}.project{grid-column:span 4;height:470px;position:relative;overflow:hidden;background:#222}.project-large{grid-column:span 8;height:660px}.project-tall{grid-column:span 5;height:650px}.project-wide{grid-column:span 7;height:470px}.project:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.83),transparent 65%)}.project img{transition:transform .8s cubic-bezier(.2,.65,.2,1),filter .8s;filter:saturate(.75)}.project:hover img{transform:scale(1.045);filter:saturate(1)}.project-meta{position:absolute;z-index:2;left:24px;right:24px;bottom:22px}.project-meta span{font:500 9px var(--latin);letter-spacing:.15em;color:var(--acid)}.project-meta h3{font-size:30px;margin:3px 0 5px;letter-spacing:-.04em}.project-meta p{font-size:12px;margin:0;color:#d4d6d0}
.hq{display:grid;grid-template-columns:1.25fr .75fr;min-height:860px;background:var(--white)}.hq-photo{position:relative;overflow:hidden;min-height:720px}.hq-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(0,0,0,.55))}.hq-photo img{filter:saturate(.7);transition:transform 1s}.hq-photo:hover img{transform:scale(1.025)}.hq-photo span{position:absolute;z-index:2;left:32px;bottom:28px;color:white;font:500 10px var(--latin);letter-spacing:.17em}.hq-content{padding:90px 4vw;display:flex;flex-direction:column}.hq-content h2{font-size:clamp(55px,6vw,96px);line-height:1.12;letter-spacing:-.075em;margin:90px 0 60px}.hq-text{margin-left:18%;font-size:13px;line-height:2}.hq-content dl{margin:auto 0 0}.hq-content dl>div{display:grid;grid-template-columns:90px 1fr;padding:16px 0;border-top:1px solid var(--line)}.hq-content dt{font:500 9px var(--latin);letter-spacing:.13em}.hq-content dd{margin:0;font-size:11px}
.manifesto{background:var(--black);color:var(--white);padding:120px 3.5vw 130px;position:relative;overflow:hidden}.manifesto-word{position:absolute;right:-2vw;top:0;color:#181a17;font:500 23vw/.8 var(--latin);letter-spacing:-.09em}.manifesto blockquote{position:relative;font-size:clamp(50px,7.8vw,118px);font-weight:600;line-height:1.28;letter-spacing:-.07em;margin:150px 0 130px}.manifesto blockquote em{color:var(--acid)}.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #42443e}.principles>div{padding:35px 40px 20px 0;border-right:1px solid #42443e;margin-right:40px}.principles>div:last-child{border:0}.principles b{font:500 10px var(--latin);color:var(--acid)}.principles h3{font:500 25px var(--latin);margin:25px 0 12px}.principles p{font-size:12px;color:#a9aca4}.recruit{background:var(--acid);padding:55px 3.5vw 70px;min-height:720px;display:flex;flex-direction:column}.recruit-small{font:500 10px var(--latin);letter-spacing:.16em}.recruit h2{font-size:clamp(62px,9.8vw,150px);line-height:.98;letter-spacing:-.08em;margin:auto 0}.recruit h2 em{color:transparent;-webkit-text-stroke:2px var(--ink)}.recruit-bottom{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--ink);padding-top:24px}.recruit-bottom p{font-size:13px;line-height:1.8}.recruit-bottom a{width:230px;height:70px;border-radius:50%;background:var(--ink);color:white;display:flex;justify-content:space-between;align-items:center;padding:0 28px;font-size:13px}.recruit-bottom a span{font-size:23px}footer{background:var(--paper);padding:80px 3.5vw 25px}.footer-main{min-height:260px;display:flex;align-items:start;justify-content:space-between}.footer-main img{width:190px;height:auto}.footer-main p{font:500 24px/1.15 var(--latin);letter-spacing:-.04em}.footer-main a{font:500 9px var(--latin);letter-spacing:.13em;border-bottom:1px solid;padding-bottom:7px}.footer-bottom{padding-top:20px;border-top:1px solid var(--line);display:flex;gap:40px;font:500 8px var(--latin);letter-spacing:.13em}.footer-bottom a{margin-left:auto}.reveal{opacity:0;transform:translateY(35px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.65,.2,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.header{height:74px}.header-center,.header nav{display:none}.menu{display:block;margin-left:auto}.menu i{display:block;width:27px;height:1px;background:white;margin:7px}.header.nav-open nav{display:flex;position:absolute;top:74px;left:0;right:0;background:var(--black);padding:35px;flex-direction:column;align-items:start}.logo{width:130px}.hero{min-height:780px}.hero-title{font-size:20vw;top:43%}.hero-title .outline{margin-left:4vw}.hero-place,.hero-index{top:105px}.hero-bottom{display:block}.hero-bottom>div{text-align:left}.hero-bottom>div p{display:none}.vision{padding-top:100px}.vision-lead{font-size:12vw;margin:75px 0}.vision-copy{margin-left:0;grid-template-columns:1fr;gap:20px}.business-head{grid-template-columns:1fr}.business-head h2{margin:60px 0 35px}.projects{gap:12px}.project,.project-large,.project-tall,.project-wide{grid-column:span 6;height:430px}.hq{grid-template-columns:1fr}.hq-photo{min-height:620px}.hq-content{padding:80px 6vw}.principles{grid-template-columns:1fr}.principles>div{border-right:0;border-bottom:1px solid #42443e;margin:0}.recruit{min-height:650px}.footer-main{min-height:220px}}
@media(max-width:600px){.hero-title{font-size:23vw;top:39%}.hero-place{display:none}.hero-index{left:5vw;right:auto}.hero-bottom{left:5vw;right:5vw}.hero-bottom h1{font-size:27px}.vision,.business{padding-left:5vw;padding-right:5vw}.vision-lead{font-size:13.5vw}.facts{grid-template-columns:1fr}.facts>div{border-right:0;border-bottom:1px solid var(--line)}.business-head h2{font-size:17vw}.projects{display:block}.project,.project-large,.project-tall,.project-wide{height:460px;margin-bottom:12px}.hq-photo{min-height:500px}.hq-content h2{font-size:16vw}.hq-text{margin-left:0}.manifesto{padding-left:5vw;padding-right:5vw}.manifesto blockquote{font-size:13vw;margin:110px 0 80px}.recruit{min-height:620px}.recruit h2{font-size:17vw}.recruit-bottom{display:block}.recruit-bottom a{margin-top:30px}.footer-main{display:grid;gap:35px}.footer-main p{font-size:20px}.footer-bottom{flex-wrap:wrap}.footer-bottom a{margin-left:0}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}.reveal{opacity:1;transform:none}}

/* Light editorial direction — the building is framed with generous white space. */
.header{color:var(--ink);border-bottom-color:rgba(24,26,22,.24);mix-blend-mode:normal}
.logo img{filter:none}
.nav-recruit{border-color:var(--ink)}
.menu i{background:var(--ink)}
.hero{background:var(--white);color:var(--ink)}
.hero-image{inset:116px 9vw 165px;background-size:contain;background-repeat:no-repeat;background-color:#e8e7df;filter:saturate(.72) contrast(1.02);transform:scale(1);animation:heroLightIn 1.4s cubic-bezier(.2,.65,.2,1) both}
.hero:after{background:linear-gradient(180deg,rgba(247,247,240,.04),rgba(247,247,240,0) 60%,rgba(247,247,240,.76) 100%)}
.hero-noise{opacity:.045}
.hero-title{top:47%}
.hero-title .outline{color:transparent;-webkit-text-stroke:1.5px rgba(24,26,22,.8)}
.hero-bottom{border-top-color:rgba(24,26,22,.46)}
.hero-bottom a b{border-color:var(--ink)}
@keyframes heroLightIn{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
.business{background:var(--white);color:var(--ink)}
.kicker.light{color:var(--ink)}
.business-head>p{color:#5f625b}
.manifesto{background:#e9e9e1;color:var(--ink)}
.manifesto-word{color:#deded5}
.manifesto .kicker.light{color:var(--ink)}
.principles{border-top-color:rgba(24,26,22,.28)}
.principles>div{border-right-color:rgba(24,26,22,.28)}
.principles p{color:#5d6059}
@media(max-width:900px){.hero-image{inset:100px 5vw 190px}.hero-title{top:43%}.header.nav-open nav{background:var(--white);color:var(--ink);border-bottom:1px solid var(--line)}}
@media(max-width:600px){.hero-image{inset:90px 5vw 250px;background-size:cover}.hero-title{top:40%}.principles>div{border-bottom-color:rgba(24,26,22,.28)}}
