:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;--black:#020402;--black-soft:#080c08;--paper:#f0eadf;--paper-bright:#f7f3eb;--ink:#11130f;--white:#f8f6ef;--muted:#aeb5ad;--muted-dark:#666b65;--green:#25d832;--green-bright:#55f063;--gold:#e7cd65;--line-dark:#f8f6ef29;--line-light:#11130f33;--serif:"Shippori Mincho", "Yu Mincho", "Hiragino Mincho ProN", serif;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--shell:min(1240px, calc(100vw - 96px));font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif}*{box-sizing:border-box}html{background:var(--black);scroll-behavior:smooth;scroll-padding-top:92px}body{background:var(--black);min-width:320px;min-height:100vh;color:var(--white);-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}#root{isolation:isolate;min-height:100vh;position:relative}.ambient-scene{z-index:0;background:var(--black);pointer-events:none;width:100%;height:100%;position:fixed;inset:0;overflow:hidden}.ambient-scene canvas{width:100%;height:100%}.site-foreground{z-index:1;position:relative}body[data-menu-open=true]{overflow:hidden}::selection{background:var(--green);color:var(--black)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit}img,canvas{max-width:100%;display:block}.skip-link{z-index:200;background:var(--green);color:var(--black);transition:transform .18s var(--ease-out);padding:11px 16px;font-size:.875rem;font-weight:700;position:fixed;top:14px;left:14px;transform:translateY(-160%)}.skip-link:focus{transform:translate(0,0)}:focus-visible{outline:2px solid var(--green-bright);outline-offset:5px}.section-shell{width:var(--shell);margin-inline:auto}.section-label{color:var(--muted-dark);letter-spacing:.19em;margin:0 0 28px;font-size:.72rem;font-weight:700}.section-label--dark{color:var(--green)}.brand-logo{background:0 0;width:220px;height:66px;display:block;position:relative;overflow:hidden}.brand-logo img{object-fit:cover;object-position:50% 49%;filter:contrast(1.8)saturate(1.08);mix-blend-mode:screen;width:100%;height:100%}.brand-logo--compact{width:188px;height:54px}.site-header{z-index:100;width:100%;height:92px;transition:background-color .24s var(--ease-out), border-color .24s var(--ease-out);background:#02040200;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:0 4.2vw;display:flex;position:fixed;top:0;left:0}.site-header[data-scrolled=true]{background:#020402f0;border-bottom-color:#ffffff14}.header-brand{z-index:2;flex:none;position:relative}.global-navigation{align-items:center;gap:clamp(28px,3.4vw,58px);display:flex}.global-navigation a{color:#f8f6efc7;letter-spacing:.04em;transition:color .18s var(--ease-out);padding:12px 0;font-size:.82rem;font-weight:600;position:relative}.global-navigation a:after{transform-origin:100%;background:var(--green);content:"";width:100%;height:1px;transition:transform .22s var(--ease-out);position:absolute;bottom:4px;left:0;transform:scaleX(0)}.global-navigation a[data-active=true]{color:var(--white)}.global-navigation a[data-active=true]:after{transform-origin:0;transform:scaleX(1)}.menu-toggle{z-index:2;cursor:pointer;width:44px;height:44px;transition:transform .14s var(--ease-out), border-color .18s var(--ease-out);background:#020402b8;border:1px solid #fff3;border-radius:50%;place-items:center;padding:0;display:none;position:relative}.menu-toggle:active{transform:scale(.97)}.scroll-progress{transform-origin:0;background:var(--green);will-change:transform;height:2px;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.hero{isolation:isolate;background:#02040229;height:clamp(780px,100svh,1080px);min-height:780px;display:grid;position:relative;overflow:hidden}.hero:before,.hero:after{z-index:2;pointer-events:none;content:"";position:absolute;left:0;right:0}.hero:before{background:linear-gradient(90deg,#02040280 0%,#0204021f 46%,#02040200 72%);top:0;bottom:0}.hero:after{mix-blend-mode:screen;background:radial-gradient(at 50% 112%,#54f4656b 0%,#25d83229 38%,#0000 69%),linear-gradient(#0000 72%,#25d83221 100%);height:92px;bottom:-1px}.hero-visual,.hero-visual>img{width:100%;height:100%;position:absolute;inset:0}.hero-visual>img{object-fit:cover;object-position:center;opacity:0;animation:heroImageIn 1.4s .1s var(--ease-out) forwards}.hero-content{z-index:3;width:var(--shell);align-self:center;margin:74px auto 0;position:relative}.hero-title{max-width:780px;font-family:var(--serif);letter-spacing:.015em;margin:0;font-size:clamp(3.65rem,6.45vw,6.35rem);font-weight:700;line-height:1.2}.hero-title-line{display:block;overflow:hidden}.hero-title-line>span{opacity:0;animation:heroLineIn .92s .25s var(--ease-out) forwards;display:block;transform:translateY(108%)}.hero-title-line:nth-child(2)>span{animation-delay:.35s}.hero-description{color:#f8f6efd1;letter-spacing:.045em;opacity:0;animation:heroCopyIn .7s .67s var(--ease-out) forwards;margin:40px 0 0;font-size:clamp(.96rem,1.22vw,1.08rem);font-weight:500;line-height:2;transform:translateY(16px)}.text-link{letter-spacing:.06em;min-height:48px;transition:color .18s var(--ease-out), transform .14s var(--ease-out);border-bottom:1px solid;justify-content:space-between;align-items:center;gap:32px;padding:0 0 9px;font-size:.96rem;font-weight:600;display:inline-flex;position:relative}.text-link svg{transition:transform .2s var(--ease-out);flex:none}.text-link:active{transform:scale(.98)}.hero-link{border-bottom-color:var(--green);color:var(--white);opacity:0;animation:heroCopyIn .7s .76s var(--ease-out) forwards;margin-top:54px;transform:translateY(16px)}.hero-link svg{color:var(--green)}.scroll-cue{z-index:3;color:#f8f6ef94;letter-spacing:.25em;transform-origin:100% 100%;align-items:center;gap:14px;font-size:.58rem;font-weight:600;display:flex;position:absolute;bottom:38px;right:4.3vw;transform:rotate(90deg)translate(-100%)}.scroll-cue i{transform-origin:0;background:var(--green);width:64px;height:1px;animation:scrollLine 1.9s 1.1s var(--ease-in-out) infinite;display:block;transform:scaleX(.25)}.product-section{isolation:isolate;min-height:1020px;color:var(--ink);background:#f0eadfe6;padding:clamp(96px,7.5vw,124px) 0 clamp(120px,10vw,164px);position:relative;overflow:hidden}.product-section:before{z-index:-2;content:"";opacity:.65;mix-blend-mode:multiply;background:url(/assets/washi-paper.jpg);position:absolute;inset:0}.product-ink{z-index:-1;aspect-ratio:16/9;opacity:.5;mix-blend-mode:multiply;background:url(/assets/inkwash.jpg) 50%/cover no-repeat;width:min(76vw,1100px);position:absolute;bottom:-8vw;right:-9vw;transform:rotate(-2deg)}.product-layout{grid-template:"heading visual""details visual"/minmax(0,1.02fr) minmax(420px,.98fr);align-content:center;column-gap:clamp(48px,5.5vw,88px);display:grid}.product-heading,.product-details{z-index:2;position:relative}.product-heading{grid-area:heading;align-self:end}.product-details{grid-area:details;align-self:start}.product-brandline{align-items:center;gap:18px;display:flex}.product-brandline img{border-radius:17px;width:80px;height:80px;box-shadow:0 10px 28px #2118112e}.product-brandline .section-label{margin:0 0 4px}.product-name{font-family:var(--serif);letter-spacing:.025em;margin:0;font-size:clamp(3.15rem,4.7vw,4.6rem);font-weight:700;line-height:1.15}.product-accent{background:#bd3a27;width:72px;height:3px;margin-top:34px;display:block}.product-tagline{font-family:var(--serif);letter-spacing:.045em;margin:30px 0 0;font-size:clamp(1.55rem,2.15vw,2.15rem);font-weight:600;line-height:1.55}.product-description{color:#383b36;max-width:520px;margin:30px 0 0;font-size:.98rem;line-height:2.05}.product-story{width:min(100%,520px);margin:28px 0 0;padding:0;list-style:none;display:grid}.product-beat{border-top:1px solid #11130f29;grid-template-columns:minmax(112px,.42fr) minmax(0,1fr);align-items:baseline;gap:24px;padding:18px 0;display:grid}.product-beat:last-child{border-bottom:1px solid #11130f29}.product-beat h3,.product-beat p{margin:0}.product-beat h3{font-family:var(--serif);font-size:clamp(1.15rem,1.5vw,1.45rem);font-weight:600;line-height:1.55}.product-beat p{color:#383b36;font-size:.86rem;line-height:1.85}.product-link{margin-top:40px}.product-meta{color:var(--muted-dark);letter-spacing:.02em;margin:20px 0 0;font-size:.72rem}.product-visual{grid-area:visual;grid-template-columns:minmax(0,1fr);place-items:center;min-width:0;min-height:750px;display:grid;position:relative}.product-device-stage{isolation:isolate;grid-template:1fr/1fr;justify-self:end;align-items:end;width:min(50vw,660px);height:clamp(560px,46vw,680px);display:grid;position:relative}.product-device{aspect-ratio:862/1825;grid-area:1/1;align-self:end;width:min(22vw,300px);margin:0;position:relative;transform:none}.product-device--center{z-index:3;filter:drop-shadow(0 38px 42px #140f0b52);justify-self:center}.product-device--left,.product-device--right{z-index:1;filter:brightness(.93)drop-shadow(0 26px 34px #140f0b3d);width:min(19.4vw,264px)}.product-device--left{justify-self:start}.product-device--right{justify-self:end}.device-screen{z-index:0;background:var(--paper);border-radius:12%/5.5%;position:absolute;inset:8.4% 12%;overflow:hidden}.device-screen img{object-fit:cover;object-position:50% 0;width:100%;max-width:none;height:100%}.device-frame{z-index:1;object-fit:contain;pointer-events:none;width:100%;max-width:none;height:100%;position:absolute;inset:0}.about-section{background:#020402c7;min-height:1040px;padding:clamp(130px,12vw,190px) 0;position:relative}.about-shell{grid-template-columns:minmax(0,1.05fr) minmax(500px,.95fr);align-items:start;gap:clamp(70px,7.5vw,110px);display:grid}.about-intro{position:sticky;top:150px}.about-intro h2{font-family:var(--serif);letter-spacing:.02em;margin:0;font-size:clamp(1.85rem,2.5vw,2.25rem);font-weight:700;line-height:1.5}.about-intro h2 span,.principle-row h3 span{display:block}.about-intro h2 span{white-space:nowrap}.principle-list{border-top:1px solid var(--line-dark)}.principle-row{border-bottom:1px solid var(--line-dark);grid-template-columns:54px 1fr;align-content:center;gap:30px;min-height:244px;display:grid;position:relative}.principle-index{color:var(--green);letter-spacing:.12em;padding-top:7px;font-size:.72rem;font-weight:700}.principle-row h3{font-family:var(--serif);letter-spacing:.025em;margin:0;font-size:clamp(1.45rem,1.9vw,1.9rem);font-weight:600;line-height:1.65}.principle-line{transform-origin:0;background:var(--green);height:1px;transition:transform .9s var(--ease-out);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.principle-row[data-visible=true] .principle-line{transform:scaleX(1)}@media (max-width:1180px){.product-section{min-height:0}.product-layout{grid-template-columns:1fr;grid-template-areas:"heading""visual""details"}.product-heading,.product-details{max-width:680px}.product-visual{min-height:650px}.product-device-stage{justify-self:center;width:min(88vw,680px);height:660px}.product-device{width:min(39vw,300px)}.product-device--left,.product-device--right{width:min(34.3vw,264px)}.about-shell{grid-template-columns:1fr}.about-intro{max-width:700px;position:static}.about-intro h2{font-size:clamp(1.8rem,4vw,2.6rem)}}.future-section{isolation:isolate;background:#020402a3;min-height:880px;padding:clamp(128px,10vw,160px) 0 82px;position:relative;overflow:hidden}.future-background{z-index:-1;object-fit:cover;object-position:center bottom;opacity:.72;will-change:transform;width:100%;max-width:none;height:100%;position:absolute;inset:0}.future-shell{z-index:1;position:relative}.future-intro{text-align:center;max-width:1120px;margin-inline:auto}.future-intro h2{font-family:var(--serif);letter-spacing:.025em;margin:0;font-size:clamp(1.65rem,2.05vw,2.2rem);font-weight:600;line-height:1.5}.future-intro h2:after{background:var(--green);content:"";width:min(820px,76%);height:1px;margin:26px auto 0;display:block}.future-intro>p:last-child{max-width:600px;color:var(--muted);margin:24px auto 0;font-size:.88rem;line-height:2.05}.future-list{border-top:1px solid var(--line-dark);width:min(840px,74vw);margin:190px auto 0}.future-row{border-bottom:1px solid var(--line-dark);justify-content:space-between;align-items:center;gap:24px;min-height:82px;display:flex}.future-row>span{font-family:var(--serif);letter-spacing:.025em;font-size:clamp(1rem,1.6vw,1.35rem);font-weight:600}.future-row small{color:var(--green);letter-spacing:.13em;flex:none;font-size:.68rem;font-weight:700}.site-footer{border-top:1px solid var(--line-dark);background:#020402d6;padding:120px 0 54px;position:relative}.footer-heading>p{color:var(--green);letter-spacing:.18em;text-transform:uppercase;margin:0 0 20px;font-size:.72rem;font-weight:700}.footer-heading>a{font-family:var(--serif);transition:color .18s var(--ease-out);border-bottom:1px solid #f8f6efa6;align-items:center;gap:20px;font-size:clamp(2.1rem,5vw,4.6rem);line-height:1.4;display:inline-flex}.footer-heading svg{transition:transform .2s var(--ease-out);flex:none}.footer-bottom{border-top:1px solid var(--line-dark);grid-template-columns:1fr auto auto;align-items:end;gap:clamp(34px,5vw,90px);margin-top:130px;padding-top:38px;display:grid}.footer-bottom nav{gap:30px;display:flex}.footer-bottom nav a,.footer-bottom>p{color:var(--muted);letter-spacing:.04em;transition:color .18s var(--ease-out);margin:0;font-size:.72rem}.reveal{opacity:0;transition:opacity .7s var(--reveal-delay,0s) var(--ease-out), transform .7s var(--reveal-delay,0s) var(--ease-out);will-change:transform, opacity;transform:translateY(28px)}.reveal[data-visible=true]{opacity:1;transform:translate(0,0)}@keyframes heroImageIn{0%{opacity:0;transform:scale(1.035)}to{opacity:.76;transform:scale(1)}}@keyframes heroLineIn{0%{opacity:0;transform:translateY(108%)}to{opacity:1;transform:translate(0,0)}}@keyframes heroCopyIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translate(0,0)}}@keyframes scrollLine{0%,to{transform-origin:0;transform:scaleX(.18)}45%{transform-origin:0;transform:scaleX(1)}55%{transform-origin:100%;transform:scaleX(1)}to{transform-origin:100%;transform:scaleX(.18)}}@media (hover:hover) and (pointer:fine){.global-navigation a:hover,.footer-bottom nav a:hover{color:var(--white)}.global-navigation a:hover:after{transform-origin:0;transform:scaleX(1)}.menu-toggle:hover{border-color:var(--green)}.text-link:hover{color:var(--green)}.text-link:hover svg,.footer-heading>a:hover svg{transform:translate(4px,-4px)}.footer-heading>a:hover{color:var(--green)}}@media (max-width:1000px){:root{--shell:min(100% - 56px, 900px)}.site-header{padding-inline:28px}.about-shell{grid-template-columns:1fr 1fr;gap:60px}.future-list{width:74vw}}@media (max-width:900px){:root{--shell:calc(100% - 48px)}html{scroll-padding-top:72px}.site-header{height:72px;padding-inline:24px}.brand-logo--compact{width:158px;height:44px}.menu-toggle{display:grid}.global-navigation{opacity:0;pointer-events:none;transform-origin:100% 0;transition:opacity .18s var(--ease-out), transform .22s var(--ease-out);background:#030703;border:1px solid #ffffff24;gap:0;padding:18px 22px;display:grid;position:absolute;top:64px;left:16px;right:16px;transform:translateY(-8px)scale(.98);box-shadow:0 24px 70px #0000006b}.global-navigation[data-open=true]{opacity:1;pointer-events:auto;transform:translate(0,0)scale(1)}.global-navigation a{border-bottom:1px solid #ffffff1a;min-height:52px;padding:16px 2px;font-size:.92rem}.global-navigation a:last-child{border-bottom:0}.global-navigation a:after{display:none}.hero-content{margin-top:52px}.hero-title{max-width:680px;font-size:clamp(3.45rem,8.4vw,5.4rem)}.about-section{min-height:0}.about-shell{grid-template-columns:1fr}.about-intro{max-width:700px;position:static}.future-list{width:100%;margin-top:180px}.footer-bottom{grid-template-columns:1fr auto}.footer-bottom>p{grid-column:1/-1}}@media (max-width:640px){:root{--shell:calc(100% - 36px)}.site-header{padding-inline:18px}.brand-logo--compact{width:145px;height:42px}.hero{height:clamp(740px,100svh,920px);min-height:740px}.hero-visual>img{object-position:62% center;animation-name:heroImageInMobile}.hero:before{background:linear-gradient(#02040247 0%,#020402b3 20%,#0204028c 48%,#02040214 76%),linear-gradient(90deg,#0204027a 0%,#02040214 88%)}.hero-content{align-self:start;width:calc(100% - 20px);margin-top:0;padding-top:152px}.hero-title{max-width:100%;font-size:clamp(2.45rem,10.8vw,3rem);line-height:1.32}.hero-description{letter-spacing:.02em;margin-top:34px;font-size:.88rem;line-height:1.95}.hero-description br{display:none}.hero-link{margin-top:36px}.scroll-cue{display:none}.product-section,.about-section,.future-section{padding-top:110px;padding-bottom:110px}.product-brandline img{border-radius:14px;width:64px;height:64px}.product-name{font-size:clamp(2.4rem,11vw,3.35rem)}.product-accent{margin-top:28px}.product-tagline{margin-top:25px;font-size:clamp(1.35rem,6.5vw,1.75rem)}.product-description{font-size:.91rem;line-height:1.95}.product-beat{grid-template-columns:1fr;gap:6px;padding:16px 0}.product-beat h3{font-size:1.2rem}.product-visual{min-height:520px}.product-device-stage{width:min(100vw - 20px,580px);height:500px}.product-device{width:min(54vw,230px)}.product-device--left,.product-device--right{width:min(40vw,190px)}.about-intro h2{font-size:clamp(1rem,5.4vw,2.3rem)}.future-intro h2{font-size:clamp(1.5rem,6.7vw,2.05rem);line-height:1.65}.future-intro h2 span{display:block}.future-intro>p:last-child{margin-top:34px;font-size:.9rem;line-height:2}.principle-row{grid-template-columns:36px 1fr;gap:16px;min-height:230px}.principle-row h3{font-size:1.38rem}.future-section{min-height:820px}.future-background{object-position:58% bottom}.future-list{margin-top:155px}.future-row{min-height:76px}.future-row>span{max-width:75%;font-size:.94rem;line-height:1.6}.site-footer{padding-top:96px}.footer-heading>a{gap:10px;font-family:Noto Sans JP,sans-serif;font-size:clamp(1.38rem,6vw,2rem)}.footer-heading>a svg{width:22px;height:22px}.footer-bottom{grid-template-columns:1fr;align-items:start;margin-top:94px}.footer-bottom nav{flex-wrap:wrap;gap:18px 24px}.footer-bottom>p{grid-column:auto}.brand-logo{width:188px;height:56px}.reveal{transform:translateY(20px)}}@keyframes heroImageInMobile{0%{opacity:0;transform:scale(1.025)}to{opacity:.68;transform:scale(1)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-visual>img,.hero-title-line>span,.hero-description,.hero-link,.scroll-cue i{animation:none}.hero-visual>img{opacity:.84;transform:none}.hero-title-line>span,.hero-description,.hero-link{opacity:1;transform:none}.ambient-scene{display:none}.future-background{transform:none!important}.reveal{opacity:1;transition:opacity .2s var(--ease-out);transform:none}.principle-line{transition:none;transform:scaleX(1)}}
