
:root{--paper:#F3F4F2;--ink:#141A24;--ink2:#1D2530;--sub:#5B6472;--faint:#8B94A2;--line:#DCDFE5;--gray:#E8EAEE;--ac:#537C7B;
  --n-ink:#EDEEF5;--n-sub:#B6BCC4;--n-line:#39424F;
  --en:Inter,"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace;
  --gut:clamp(24px,5vw,80px);--max:1240px;--G:clamp(32px,4vw,64px)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-padding-top:72px}
body{background:var(--paper);color:var(--ink);font-family:var(--en);font-feature-settings:"palt" 1;font-variant-numeric:slashed-zero;line-height:1.8;-webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:inherit}
svg{display:block}
.wrap{width:100%;max-width:calc(var(--max) + var(--gut) * 2);margin:0 auto;padding:0 var(--gut)}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.22em;color:var(--sub)}
.tbd{color:#9b2c2c;font-size:12px;letter-spacing:0;font-family:var(--en)}
:is(h1,h2,h3,h4,p,li,dd){word-break:auto-phrase;line-break:strict}
:is(h1,h2,h3){text-wrap:balance}


.hd{position:fixed;top:0;left:0;right:0;z-index:20;height:68px;display:flex;align-items:center;gap:32px;padding:0 max(var(--gut),calc((100% - var(--max)) / 2));color:var(--n-ink);
  background:rgba(20,26,36,.92);backdrop-filter:blur(12px) saturate(140%);border-bottom:1px solid rgba(57,66,79,.7)}
.hd-logo{display:inline-flex;align-items:center;gap:.36em;text-decoration:none;font-size:16px;font-weight:500}
.hd-logo .logotype,.ft-logo .logotype{height:.88em;width:auto}
.hd-logo span,.ft-logo span{font-size:1.06em;letter-spacing:.14em}
.hd-nav{margin-left:auto;display:flex;gap:28px;font-size:13px}
.hd-nav a{text-decoration:none;opacity:.8}.hd-nav a:hover{opacity:1}
.hd-cta{padding:10px 18px;border:1px solid var(--n-ink);font-size:13px;text-decoration:none;font-weight:500}
.hd-cta:hover{background:var(--n-ink);color:var(--ink)}
@media (max-width:860px){.hd-nav{display:none}.hd-cta{margin-left:0}}
.hd-logo,.hd-cta{white-space:nowrap}
@media (max-width:480px){.hd{gap:10px}.hd-logo{font-size:14px}.hd-cta{padding:8px 12px;font-size:12px}}


.ctas{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:10px;padding:16px 26px;border:1px solid currentColor;font-size:14px;font-weight:500;text-decoration:none;letter-spacing:.02em;transition:background .2s,color .2s}
.btn.pri{background:var(--n-ink);color:var(--ink);border-color:var(--n-ink)}
.btn.pri:hover{background:#fff}
.btn:not(.pri):hover{background:var(--n-ink);color:var(--ink)}


.fv{position:relative;min-height:100svh;background:#fff;color:var(--ink);display:flex;align-items:center;overflow:hidden}
.fv .fv-iso{position:absolute;z-index:0;pointer-events:none}
.fv::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.9) 34%,rgba(255,255,255,.35) 50%,rgba(255,255,255,0) 62%)}
.fv-in{position:relative;z-index:1;padding-top:68px}
.fv .eyebrow{color:var(--sub);margin-bottom:28px}
.fv-h{font-size:clamp(40px,6.2vw,96px);font-weight:600;line-height:1.18;letter-spacing:-.035em;margin-bottom:32px}
.fv-lead{font-size:clamp(15px,1.25vw,18px);line-height:2;color:var(--sub);margin-bottom:40px}
@media (max-width:900px){.fv{align-items:flex-end;padding-bottom:96px}}


section{padding:clamp(88px,9vw,136px) 0}
.sec-h{margin-bottom:clamp(40px,4.4vw,64px)}
.h2{font-size:clamp(34px,4.4vw,64px);font-weight:600;letter-spacing:-.03em;line-height:1.25}
.body{font-size:16px;line-height:2.05;color:#2A3242;margin-bottom:1.3em}
.body.lg{font-size:clamp(20px,1.8vw,26px);line-height:1.8;font-weight:500;color:var(--ink);letter-spacing:-.01em}


.intro{background:var(--ink);color:var(--n-ink)}
.proof-sec{background:var(--paper)}
.proof-sec .proof{margin-top:0}
.intro-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:center}
.intro .body.lg{font-size:clamp(18px,1.55vw,22px)}
.intro-txt .body:last-child{margin-bottom:0}
.intro-key{width:fit-content;margin-top:clamp(28px,3vw,44px);padding-top:24px;border-top:1px solid var(--ink);font-size:17px;font-weight:600;line-height:1.9}
.intro-fig{min-width:0}
.fig-cap{font-size:12px;color:var(--sub);margin-bottom:14px;letter-spacing:.04em}
.src{margin-top:14px;font-size:11px;color:var(--faint)}

.proof{margin-top:0}
.proof-k{font-size:clamp(34px,4.4vw,64px);font-weight:600;letter-spacing:-.03em;line-height:1.25}
.proof-nums{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:clamp(40px,5vw,72px)}
.proof-nums article{border-top:1px solid rgba(20,26,36,.22);padding:20px 0 0 clamp(20px,3vw,40px);min-width:0}
.proof-nums article:first-child{padding-left:0}
.proof-nums article+article{border-left:1px solid rgba(20,26,36,.22)}
.pn-k{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:var(--sub)}
.pn-b{font-family:Inter,var(--en);font-size:clamp(96px,14.5vw,236px);line-height:1.08;letter-spacing:-.07em;font-weight:400;padding:14px 0 10px;white-space:nowrap;font-variant-numeric:tabular-nums slashed-zero;color:var(--ink)}
.pn-b small{font-family:var(--en);font-size:.18em;font-weight:500;letter-spacing:0;margin-left:.35em}
.pn-b small.pre{margin:0 .25em 0 0}
.pn-s{font-size:15px;font-weight:600}
.proof-tbd{margin-top:20px}
@media (max-width:900px){.intro-in{grid-template-columns:1fr}}
@media (max-width:640px){.proof-nums article{padding:14px 0 0 14px}.pn-b{font-size:clamp(52px,15.5vw,96px);padding:10px 0 8px}.pn-b small{font-size:13px;margin-left:4px}.pn-b small.pre{margin-right:3px}.pn-s{font-size:12px}.pn-k{font-size:11px;letter-spacing:.1em}}


.areas{background:#fff;border-top:1px solid var(--line)}
.area-sub{font-size:clamp(17px,1.4vw,20px);font-weight:600;line-height:1.7;margin-bottom:28px;padding-left:16px;border-left:2px solid var(--ink)}
.area-take{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);font-size:16px;font-weight:700;line-height:1.85}
.sym{list-style:none;counter-reset:s;margin:0 0 1.3em;display:flex;flex-direction:column;gap:6px}
.sym li{counter-increment:s;position:relative;padding-left:2.2em;font-size:15.5px;line-height:1.9}
.sym li::before{content:counter(s);position:absolute;left:0;top:.35em;width:1.5em;height:1.5em;border-radius:50%;background:var(--ink);color:#fff;font-family:var(--mono);font-size:11px;display:grid;place-items:center;line-height:1}


.result{background:var(--ink);color:var(--n-ink)}
.result-t{margin-top:24px;font-size:clamp(20px,1.9vw,28px);font-weight:600;line-height:1.6;color:var(--n-ink)}
.result-fig{margin-bottom:clamp(64px,7vw,104px)}
.chg-h{font-size:14px;font-weight:600;letter-spacing:.06em;margin-bottom:20px}
.chg-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px var(--G)}

:is(.chg,.cc){position:relative;padding:28px 28px 30px;border:1px solid rgba(237,238,245,.1);border-radius:6px;
  background:linear-gradient(165deg,#222830 0%,#191F29 48%,#161C26 100%);
  transition:translate .45s cubic-bezier(.2,.7,.1,1),border-color .45s,box-shadow .45s}
:is(.chg,.cc)::before{content:"";position:absolute;top:-1px;left:10%;right:10%;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(134,189,186,.55) 50%,transparent)}
@media (hover:hover){:is(.chg,.cc):hover{translate:0 -4px;border-color:rgba(237,238,245,.2);box-shadow:0 22px 44px -26px rgba(0,0,0,.75)}}
.motion-on .rv-stagger>:is(.chg,.cc){transition:opacity .8s cubic-bezier(.2,.6,.2,1),transform .9s cubic-bezier(.2,.6,.2,1),translate .45s cubic-bezier(.2,.7,.1,1),border-color .45s,box-shadow .45s}
.motion-on .rv-stagger.in>:is(.chg,.cc):nth-child(2){transition-delay:.16s,.16s,0s,0s,0s}.motion-on .rv-stagger.in>:is(.chg,.cc):nth-child(3){transition-delay:.32s,.32s,0s,0s,0s}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) :is(.chg,.cc){transition:none}:root:not([data-motion="full"]) :is(.chg,.cc):hover{translate:none}}
.chg-n,.cc-n{display:block;font-family:var(--mono);font-size:26px;font-weight:400;line-height:1;letter-spacing:.02em;color:#86BDBA}
.chg h4{margin:20px 0 10px;font-size:17px;font-weight:600;line-height:1.6}
.chg p{font-size:14px;line-height:1.95;color:var(--n-sub)}
@media (max-width:900px){.chg-row{grid-template-columns:1fr}:is(.chg,.cc){padding:24px 22px 26px}}


.others{background:var(--paper)}
.arc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px var(--G)}
.arc-i{position:relative;aspect-ratio:4/3;border:1px dashed rgba(20,26,36,.3);background:transparent;display:flex;flex-direction:column;justify-content:space-between;padding:20px 22px}
.arc-i .iso{position:absolute;left:50%;top:50%;width:46%;height:auto;transform:translate(-50%,-54%)}
.arc-n{font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:var(--sub)}
.arc-n::before{content:"RESEARCH "}
.arc-s{position:relative;font-family:var(--en);font-size:clamp(20px,1.8vw,24px);font-weight:500;letter-spacing:-.01em;color:var(--sub)}
.arc-note{margin-top:28px;font-size:13px;color:var(--sub)}
@media (max-width:900px){.arc{grid-template-columns:1fr}}


.members{background:#fff;border-top:1px solid var(--line)}
.mem-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,64px)}
.mem-photo{position:relative;aspect-ratio:4/5;background:#E8EAEE;border:0;display:grid;place-items:center;margin-bottom:24px;overflow:hidden}
.mem-photo span{font-family:var(--mono);font-size:clamp(40px,5vw,72px);color:#C8CDD5;letter-spacing:.06em}
.mem-photo em{position:absolute;left:16px;bottom:14px;font-style:normal;font-size:11px;color:var(--faint);letter-spacing:.1em}
.mem-role{font-family:var(--en);font-size:13px;font-weight:600;letter-spacing:.12em;color:var(--ac)}
.mem-name{font-size:clamp(24px,2.4vw,32px);font-weight:600;letter-spacing:.04em;margin:6px 0 14px}
@media (max-width:760px){.mem-row{grid-template-columns:1fr}}


.about{background:var(--paper)}
.about-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px) var(--G);align-items:start}
.spec{border-top:1px solid var(--ink)}
.spec div{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,5fr);gap:0;padding:22px 0;border-bottom:1px solid var(--line)}
.spec dt{font-size:13px;color:var(--sub);letter-spacing:.08em}
.spec dd{font-size:16px;font-weight:500}
@media (max-width:900px){.about-in{grid-template-columns:1fr}.spec div{grid-template-columns:96px 1fr;gap:16px}}


.contact{background:var(--ink);color:var(--n-ink)}
.contact-h{font-size:clamp(40px,5.6vw,80px);font-weight:600;letter-spacing:-.035em;line-height:1.2;margin-bottom:clamp(40px,5vw,64px)}
.cc-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:40px}
.cc{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;align-content:start;gap:22px 16px}
.cc .iso{width:auto;height:64px;justify-self:start}
.cc-t{grid-column:1 / -1;font-size:17px;font-weight:600;line-height:1.6;word-break:auto-phrase}
.btn.inv{background:var(--n-ink);color:var(--ink)}
.contact-tbd{margin-top:24px}.contact-tbd .tbd{color:#e58e8e}
@media (max-width:900px){.cc-row{grid-template-columns:1fr}}


.ft{background:var(--ink);color:var(--n-sub);border-top:1px solid var(--n-line);padding:48px 0}
.ft-in{display:flex;align-items:center;gap:24px 40px;flex-wrap:wrap}
.ft-logo{display:inline-flex;align-items:center;gap:.36em;color:var(--n-ink);font-size:18px;font-weight:500;margin-right:auto}
.ft-c{font-size:12px}


.motion-on .rv{opacity:0;transform:translateY(22px);transition:opacity .9s cubic-bezier(.2,.6,.2,1),transform 1s cubic-bezier(.2,.6,.2,1)}
.motion-on .rv.in{opacity:1;transform:none}
.rv-lines .ln{display:block;overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}
.rv-lines .ln>span{display:block}
.motion-on .rv-lines .ln>span{transform:translateY(110%);transition:transform 1.1s cubic-bezier(.2,.7,.1,1)}
.motion-on .rv-lines.in .ln>span{transform:none}
.motion-on .rv-lines.in .ln:nth-child(2)>span{transition-delay:.12s}
.motion-on .rv-stagger>*{opacity:0;transform:translateX(-28px);transition:opacity .8s cubic-bezier(.2,.6,.2,1),transform .9s cubic-bezier(.2,.6,.2,1)}
.motion-on .rv-stagger.in>*{opacity:1;transform:none}
.motion-on .rv-stagger.in>*:nth-child(2){transition-delay:.16s}.motion-on .rv-stagger.in>*:nth-child(3){transition-delay:.32s}

.mem-row{grid-template-columns:repeat(2,minmax(0,1fr))}
.mem{display:grid;grid-template-columns:200px minmax(0,1fr);gap:28px;align-items:start;padding-top:28px;border-top:1px solid var(--ink)}
.mem-photo{aspect-ratio:3/4;margin-bottom:0}
.mem-photo em{left:12px;bottom:10px;font-size:11px}
.mem-prof{margin-top:4px;font-size:14px;line-height:1.9;color:#2A3242}
@media (max-width:760px){.mem-row{grid-template-columns:1fr}}
.others-lead{margin-top:20px;font-size:17px;font-weight:600;line-height:1.8}
.others-lead .tbd{display:block;font-weight:400;margin-top:4px}
@media (max-width:900px){.fv::after{background:linear-gradient(0deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.9) 42%,rgba(255,255,255,0) 60%)}}


.rel{margin-top:clamp(48px,6vw,80px);padding-top:32px;border-top:1px solid var(--line)}
.rel-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}
.rel-head .eyebrow{margin-bottom:8px}
.rel-head h3{font-size:22px;font-weight:600;letter-spacing:-.01em}
.rel-link{font-size:12px;text-decoration:none;padding-bottom:6px;border-bottom:1px solid var(--ink)}
.rel-lane{overflow:hidden;margin:0 calc(-1 * var(--gut));-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.rel-track{display:flex;width:max-content;animation:rel-scroll 110s linear infinite}
.rel-track ul{list-style:none;display:flex;gap:16px;padding-right:16px;flex-shrink:0}
.rel-track li{width:clamp(170px,14vw,220px);flex-shrink:0}
.rel-card{display:block;aspect-ratio:16/9;background:#fff;border:1px solid var(--line);overflow:hidden}
.rel-card img{display:block;width:100%;height:100%;object-fit:contain}
.rel:hover .rel-track,.rel:focus-within .rel-track{animation-play-state:paused}
@keyframes rel-scroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .rel-track{animation:none}:root:not([data-motion="full"]) .rel-lane{overflow-x:auto}:root:not([data-motion="full"]) .rel-track ul[aria-hidden]{display:none}}
@media (max-width:700px){.rel-track li{width:150px}.rel-track ul{gap:12px;padding-right:12px}}


.fx,.ai-fig,.fv{--f-bg:#0E131A;--f-top:#1C2430;--f-lf:#161D26;--f-rt:#11161E;--f-ln:#46515F;--f-fn:#2B3441;--f-tx:#98A2AF;--f-hi:#E9ECF1;--f-ac:#86BDBA;--f-acd:#5A9491;--f-acf:#1F3537;--f-warn:#F0565B;--f-warnd:#B4474B}
.fx,.ai-fig{
  background:radial-gradient(110% 85% at 55% 48%,#16202A 0%,#0F141B 58%,#0B0F15 100%);border:1px solid #232B36;color:var(--f-tx)}
.fx{position:relative;margin:0;overflow:hidden}
.fx::before,.ai-fig::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(233,236,241,.075) 1px,transparent 1.3px);background-size:22px 22px;
  -webkit-mask-image:radial-gradient(75% 70% at 50% 50%,#000 25%,transparent 100%);mask-image:radial-gradient(75% 70% at 50% 50%,#000 25%,transparent 100%)}
.fx-hd,.fx-ft{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 20px;font-family:var(--mono);font-size:11px;letter-spacing:.14em}
.fx-name{color:var(--f-hi);font-family:var(--en);font-size:13px;font-weight:600;letter-spacing:.04em}
.fx-en{color:var(--f-tx);text-align:right}
.fx-ft{border-top:1px solid #1D2530;letter-spacing:.06em;min-height:56px;flex-wrap:wrap}
.fx-hint{color:var(--f-tx);display:flex;align-items:center;gap:10px}
.fx-stat{display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right;margin-left:auto}
.fx-stat .b-ja{color:var(--f-hi);font-family:var(--en);font-size:12.5px;letter-spacing:.02em}
.fx-stat .b-en{color:var(--f-tx);font-family:var(--mono);font-size:11px;letter-spacing:.04em}
.fx-hint .b-ja{font-family:var(--en);font-size:11.5px;letter-spacing:.04em}.fx-hint .b-en{margin-left:8px;font-size:11px}
.fx-btn .b-ja{font-family:var(--en);font-size:11.5px;letter-spacing:.02em}.fx-btn .b-en{margin-left:6px;font-family:var(--mono);font-size:11px;opacity:.7}
.fx-body{position:relative;z-index:1}
.fx-stage{padding:4px clamp(8px,2vw,28px) 8px}
.fx-btn{appearance:none;font:inherit;font-size:11px;letter-spacing:.06em;color:var(--f-hi);background:transparent;border:1px solid #3A4554;padding:7px 12px;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.fx-btn:hover{border-color:var(--f-ac)}
.fx-btn:focus-visible{outline:2px solid var(--f-ac);outline-offset:2px}
.fx-segs{display:inline-flex}.fx-segs .fx-btn+.fx-btn{border-left:0}
.fx-seg{transition:none}
.fx-seg[aria-pressed="true"]{background:var(--f-hi);color:#0E131A;border-color:var(--f-hi)}
.iso{display:block;width:100%;height:auto;overflow:visible;font-family:var(--en)}
.iso *{vector-effect:non-scaling-stroke}
.iso .ft{fill:var(--f-top);stroke:var(--f-ln);stroke-width:1;stroke-linejoin:round}
.iso .fl{fill:var(--f-lf);stroke:var(--f-ln);stroke-width:1;stroke-linejoin:round}
.iso .fr,.iso .fs{fill:var(--f-rt);stroke:var(--f-ln);stroke-width:1;stroke-linejoin:round}
.iso .tk,.iso .tx,.iso .groove,.iso .vent,.iso .g-tk{stroke:var(--f-fn);stroke-width:1;fill:none}
.iso .tx-c{fill:none;stroke:var(--f-fn)}
.iso .tx-d{fill:#3A4554}
.iso .tx-on{fill:rgba(134,189,186,.12);stroke:none}
.iso .pool{pointer-events:none}

.iso .co-ln{fill:none;stroke:#566273;stroke-width:1}
.iso .co-dot{fill:var(--f-hi)}
.iso .co-t{fill:var(--f-hi);font-family:var(--en);font-size:calc(14px*var(--ts,1));font-weight:600;letter-spacing:.02em}
.iso .co-s{fill:var(--f-tx);font-size:calc(11px*var(--ts,1));font-family:var(--mono);letter-spacing:.06em}
.iso .co-s.co-sj{font-size:calc(13px*var(--ts,1))}.iso .co-se{font-size:calc(11px*var(--ts,1))}
.iso .co-ac .co-t{fill:var(--f-ac)}.iso .co-ac .co-ln{stroke:var(--f-acd)}.iso .co-ac .co-dot{fill:var(--f-ac)}

.iso .pk circle{fill:#D8F0EE}.iso .pk .pk-h{fill:rgba(134,189,186,.22)}
.iso .glow,.iso .edge,.iso .ghost,.iso .trail,.iso .core-ring,.iso .sig-c,.iso .flag-cap,.iso .peg-on .head,.iso .gauge-sl .g-tip{filter:url(#fx-glow)}


.fx-delay .iso{height:clamp(300px,44vw,620px)}
.iso .base>.ft{fill:#19212B}
.iso .tower>.ft{fill:#212A36}
.iso .cell .ft{fill:#28323F}
.iso .mo{fill:#6E7987;font-size:10px;font-family:var(--mono)}
.iso .mo-on{fill:var(--f-ac)}
.iso .tk-m{stroke:#3A4553;transition:stroke .3s}
.iso .tk-m.is-on{stroke:var(--f-ac)}
.iso .band{fill:rgba(134,189,186,.06);stroke:rgba(134,189,186,.22);stroke-dasharray:3 4}
.iso .trail{fill:none;stroke:var(--f-ac);stroke-width:2.4;stroke-dasharray:1 1;stroke-dashoffset:1;stroke-linecap:round}
.iso .flag{stroke:var(--f-ac);stroke-width:1}
.iso .flag-cap .ft,.iso .flag-cap .fl,.iso .flag-cap .fr{fill:var(--f-ac);stroke:var(--f-ac)}
.iso .sig-h{fill:rgba(134,189,186,.16)}.iso .sig-c{fill:#D8F0EE;stroke:var(--f-ac)}
.fx-big{position:absolute;left:clamp(20px,3vw,44px);bottom:clamp(10px,2vw,28px);z-index:2;display:flex;align-items:baseline;gap:.14em;margin:0;color:var(--f-hi);font-family:Inter,var(--en);font-weight:400;font-size:clamp(52px,8.6vw,148px);line-height:1;letter-spacing:-.06em;pointer-events:none}
.fx-big small{display:flex;flex-direction:column;gap:5px;color:var(--f-ac)}
.fx-big small b{font-family:var(--en);font-size:clamp(14px,1.4vw,19px);font-weight:600;letter-spacing:.04em}
.fx-big small i{font-style:normal;font-family:var(--mono);font-size:clamp(9px,.8vw,11px);letter-spacing:.14em;color:var(--f-tx)}


.iso .plate>.ft{fill:#1A222D}
.iso .bar-a .ft{fill:var(--f-acf);stroke:var(--f-ac)}
.iso .ghost{fill:none;stroke:var(--f-ac);stroke-width:1.2;stroke-dasharray:4 4}
.iso .ruler .ft{fill:#22393A;stroke:var(--f-ac)}.iso .ruler .fs{fill:#152325;stroke:var(--f-acd)}
.iso .tk-r{stroke:var(--f-ac);stroke-width:1}
.iso .rn{fill:var(--f-ac);font-family:var(--mono);font-size:calc(11px*var(--ts,1))}
.iso .edge{stroke:var(--f-ac);stroke-width:1.8}
.iso .peg .ft{fill:#252F3B}
.iso .peg-on .head .ft{fill:var(--f-ac);stroke:var(--f-ac);transition:fill .5s}
.fx-bridge .bridge{transition:transform 1s cubic-bezier(.2,.75,.15,1),opacity .6s}
.fx-bridge:not(.is-on) .bridge{transform:translateY(-70px);opacity:0}
.fx-bridge .flow,.fx-bridge .co-br{transition:opacity .5s}
.fx-bridge:not(.is-on) .flow{opacity:0}
.fx-bridge:not(.is-on) .peg-on .head .ft{fill:var(--f-top);stroke:var(--f-ln)}
.fx-bridge:not(.is-on) .peg-on .head{filter:none}


.iso .lp>.ft{fill:#1B232E}
.iso .lc{fill:#98A2AF;font-family:var(--mono);font-size:calc(11px*var(--ts,1));letter-spacing:.1em}
.iso .core-r{fill:none;stroke:var(--f-acd)}.iso .core-c{fill:var(--f-acd)}
.iso .layer{transition:transform .6s cubic-bezier(.2,.75,.15,1);cursor:pointer}
.iso .layer.is-sel{transform:translateY(-14px)}
.iso .layer.is-sel .lp>.ft{stroke:var(--f-ac);fill:#1C2B30}.iso .layer.is-sel .lp>.fs{stroke:var(--f-acd)}
.iso .layer.is-sel .tx,.iso .layer.is-sel .tx-c{stroke:#3F6466}.iso .layer.is-sel .tx-d{fill:#5A8C8A}.iso .layer.is-sel .lc{fill:var(--f-ac)}
.iso .lab .co-t{transition:fill .4s}
.fx-layers.is-js .lab:not(.is-sel) .co-t{fill:#B6BCC4}
.iso .lab.is-sel .co-t{fill:var(--f-ac)}.iso .lab.is-sel .co-ln{stroke:var(--f-acd)}.iso .lab.is-sel .co-dot{fill:var(--f-ac)}
.iso .g-col .ft,.iso .g-base>.ft{fill:#202935}
.iso .gauge-sl{transition:transform .7s cubic-bezier(.2,.75,.15,1)}
.iso .g-sl .ft{fill:#2A3542}
.iso .g-arm .ft,.iso .g-arm .fl,.iso .g-arm .fr{fill:var(--f-acf);stroke:var(--f-ac)}
.iso .g-tip{fill:var(--f-ac)}
.iso .tag rect{fill:none;stroke:var(--f-ac)}.iso .tag text{fill:var(--f-ac);font-family:var(--en);font-size:calc(13px*var(--ts,1));font-weight:600}.iso .tag .tag-en{font-family:var(--mono);font-size:calc(10.5px*var(--ts,1));font-weight:500;letter-spacing:.06em}
.iso .tag-d rect{fill:var(--f-hi);stroke:var(--f-hi)}.iso .tag-d text{fill:#0E131A}


.iso .board>.ft{fill:#18202A}
.iso .tr{fill:none;stroke:var(--f-acd);stroke-width:1.4;transition:stroke .5s,opacity .5s}
.iso .tr-sp{stroke-dasharray:2 4;stroke-width:1}
.iso .node .ft{fill:#212A36}
.iso .node-t,.iso .chip-t{fill:#8D98A6;font-family:var(--mono);font-size:calc(11px*var(--ts,1));letter-spacing:.1em}
.iso .chip .ft{fill:var(--f-acf);stroke:var(--f-ac)}.iso .chip-t{fill:var(--f-ac)}
.iso .sheet>.ft{fill:#2A3441;stroke:#7D8896}.iso .sheet>.fs{fill:#1A212B;stroke:#7D8896}
.iso .sh-l{stroke:#6E7987;stroke-width:1.2}.iso .sh-n{fill:#9AA4B1;font-family:var(--mono);font-size:calc(11px*var(--ts,1))}
.iso .shadow{fill:rgba(0,0,0,.28);stroke:rgba(233,236,241,.12);stroke-dasharray:2 4}
.fx-system .g-con,.fx-system .g-now,.fx-system .flow,.fx-system .labs .co-ac{transition:opacity .7s,transform 1s cubic-bezier(.2,.75,.15,1)}
.fx-system.is-on .g-now{opacity:0;transform:translateY(-26px)}
.fx-system:not(.is-on) .g-con{opacity:0;transform:translateY(-34px)}
.fx-system:not(.is-on) .flow,.fx-system:not(.is-on) .labs .co-ac{opacity:0}
.fx-system:not(.is-on) .tr{stroke:#3A4553;stroke-dasharray:3 5}


.iso .sheet{}
.iso .st-in .sheet>.ft{fill:#1F2833;stroke:var(--f-ln)}.iso .st-in .sheet>.fs{fill:#141A22;stroke:var(--f-ln)}
.iso .core-base>.ft{fill:#1A222D}
.iso .rk{stroke:#4A5565}.iso .rk-l{stroke:#8A95A3}
.iso .core-disc .ft{fill:#1E3133;stroke:var(--f-acd)}
.iso .core-ring{fill:none;stroke:var(--f-ac);stroke-width:1.6}
.iso .core-t{fill:var(--f-ac);font-family:var(--mono);font-size:calc(32px*var(--ts,1));font-weight:500;letter-spacing:.06em}
.iso .bay{cursor:pointer}
.iso .bay-b .ft{fill:#1E2631}
.iso .bay-s>.ft{fill:#2A3441;transition:fill .4s,stroke .4s}

.iso .bay-k rect{fill:#0E131A;stroke:#566273;stroke-width:1;transition:fill .4s,stroke .4s}
.iso .bay-k text{fill:#C9D0D8;font-family:var(--mono);font-size:calc(13px*var(--ts,1));font-weight:500;transition:fill .4s}
.iso .bay-k-m{display:none}.iso .bay-k-m text{font-size:calc(11px*var(--km,1))}
.iso .bay.is-sel .bay-s>.ft{fill:var(--f-acf);stroke:var(--f-ac)}.iso .bay.is-sel .bay-k rect{fill:var(--f-ac);stroke:var(--f-ac)}.iso .bay.is-sel .bay-k text{fill:#0E131A}
.iso .tr-o{stroke:#33404D}.iso .tr-o.is-sel{stroke:var(--f-ac)}
.iso .pk-o{transition:opacity .4s}
.fx-jtl.is-js .pk-o:not(.is-sel){opacity:.18}
.fx-jtl .fx-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px)}
.fx-side{padding:6px 28px 24px;border-left:1px solid #1D2530;display:flex;flex-direction:column;justify-content:center}
.lg-k{display:flex;align-items:center;font-family:var(--en);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--f-hi);margin:20px 0 6px}.lg-k span{margin-left:10px;font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:.16em;color:#8B95A3}
.lg-k:first-child{margin-top:0}
.lg-in{padding-left:32px;font-size:13px;line-height:1.6;color:var(--f-tx)}.lg-in small{display:block;margin-top:2px;font-family:var(--en);font-size:11px;line-height:1.45;letter-spacing:-.005em;color:#8B95A3}
.lg-t b{display:block;font-weight:500}.lg-t small{display:block;margin-top:1px;font-family:var(--en);font-size:11px;line-height:1.45;letter-spacing:-.005em;color:#8B95A3}
.lgd{list-style:none;display:flex;flex-direction:column;border-top:1px solid #1D2530}
.lgd li{border-bottom:1px solid #1D2530}
.lg-b{appearance:none;width:100%;display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start;text-align:left;font:inherit;font-size:13px;line-height:1.55;color:var(--f-tx);background:none;border:0;padding:10px 0;cursor:pointer;transition:color .3s}
.lg-n{display:grid;place-items:center;height:20px;margin-top:1px;border:1px solid #566273;border-radius:2px;font-family:var(--mono);font-size:11px;font-weight:500;color:#C9D0D8;transition:background .4s,border-color .4s,color .4s}
.lgd li.is-sel .lg-b{color:var(--f-hi)}.lgd li.is-sel .lg-n{background:var(--f-ac);border-color:var(--f-ac);color:#0E131A}
.lg-b:focus-visible{outline:2px solid var(--f-ac);outline-offset:2px}




.iso-crate .cr-floor{fill:rgba(20,26,36,.035);stroke:rgba(20,26,36,.14)}
.iso-crate .cr-w{fill:none;stroke:rgba(20,26,36,.38);stroke-dasharray:3 4}
.iso-crate .cr-fill .ft{fill:#fff;stroke:rgba(20,26,36,.32)}.iso-crate .cr-fill .fl{fill:#E8EAEE;stroke:rgba(20,26,36,.32)}.iso-crate .cr-fill .fr{fill:#DCDFE5;stroke:rgba(20,26,36,.32)}
.iso-crate .cr-t{fill:var(--sub);font-family:var(--mono);font-size:16px}


.iso-glyph .gl>.ft,.iso-glyph .gl-b .ft{fill:#232C38;stroke:#5A6576}
.iso-glyph .gl>.fs,.iso-glyph .gl-b .fl,.iso-glyph .gl-b .fr{fill:#161D26;stroke:#5A6576}
.iso-glyph .gl-ac>.ft{fill:#22393A;stroke:#86BDBA}.iso-glyph .gl-ac>.fs{fill:#152325;stroke:#5A9491}
.iso-glyph .gl-m{stroke:#86BDBA}.iso-glyph .gl-mh{fill:#86BDBA}

@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .fx *,:root:not([data-motion="full"]) .ai-fig *{transition:none!important}}
@media (max-width:900px){.fx-jtl .fx-body{grid-template-columns:1fr}.fx-side{border-left:0;border-top:1px solid #1D2530;padding:20px}}
@media (max-width:640px){.fx-hd,.fx-ft{padding:12px 14px;font-size:11px}.fx-stat{font-size:11.5px;text-align:left;margin-left:0;width:100%}.fx-stage{padding:0 4px 6px}
  .fx-big{position:relative;left:auto;bottom:auto;padding:0 14px 14px;font-size:clamp(48px,15vw,72px)}
  .fx-delay .iso{height:auto}}


.motion-on :is(.intro-fig,.result-fig).rv{opacity:1;transform:none}
.motion-on :is(.intro-fig,.result-fig).rv>.fx{clip-path:inset(0 0 100% 0);transition:clip-path 1.25s cubic-bezier(.7,0,.2,1)}
.motion-on :is(.intro-fig,.result-fig).rv.in>.fx{clip-path:inset(0 0 0 0)}
.motion-on .intro-fig.rv>:not(.fx){opacity:0;transition:opacity .8s cubic-bezier(.2,.6,.2,1)}
.motion-on .intro-fig.rv.in>:not(.fx){opacity:1}


.iso .kv-base>.ft{fill:#161E27}
.iso .kv-stock .ft{fill:#212A36}
.iso .kv-bx .ft{fill:#1D2531}
.iso .kv-bar-c .kv-bx .ft{fill:#1E3437;stroke:var(--f-ac)}.iso .kv-bar-c .kv-bx .fl,.iso .kv-bar-c .kv-bx .fr{fill:#132326;stroke:var(--f-acd)}
.iso .kv-tk{stroke:#5B6676;stroke-width:1}.iso .kv-tk-c{stroke:var(--f-ac)}
.iso .kv-ja{fill:#C9D0D8;font-family:var(--en);font-size:calc(13.5px*var(--ts,1));font-weight:600;letter-spacing:.04em}
.iso .kv-lab{fill:#8D98A6;font-family:var(--mono);font-size:calc(10.5px*var(--ts,1));letter-spacing:.02em}.iso .kv-lab-c{fill:var(--f-ac)}
.iso .kv-num{fill:var(--f-ac);font-family:var(--mono);font-size:calc(11px*var(--ts,1))}
.iso .kv-rail .ft{fill:#2A3441}
.iso .kv-glass>.ft{fill:rgba(134,189,186,.075);stroke:rgba(134,189,186,.6)}.iso .kv-glass>.fs{fill:rgba(134,189,186,.05);stroke:rgba(134,189,186,.35)}
.iso .kv-hair{stroke:var(--f-ac);stroke-width:2;filter:url(#fx-glow)}
.iso .kv-readout .ft{fill:#232C38}.iso .kv-readout .fl{fill:#1A212B}.iso .kv-readout .fr{fill:#141A22}
.iso .kv-read{fill:var(--f-ac);font-family:var(--mono);font-size:calc(11px*var(--ts,1));letter-spacing:.06em}
.iso .kv-screw{fill:#10151C;stroke:#566273}
.iso .kv-led{fill:var(--f-ac);stroke:none;filter:url(#fx-glow);animation:kv-blink 2.6s ease-in-out 3}
@keyframes kv-blink{50%{opacity:.25}}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .iso .kv-led{animation:none}}
@media (min-width:641px) and (max-width:900px){.fv .fv-iso{right:-6vw;top:84px;bottom:auto;width:112vw}}


.iso .island>.ft{fill:#1A222D}
.iso .rail>.ft{fill:#28323F;stroke:#5B6676}.iso .rail>.fs{fill:#161D26;stroke:#5B6676}
.iso .gap{fill:rgba(233,236,241,.025);stroke:#8D98A6;stroke-dasharray:3 4}
.iso .gap-x{fill:none;stroke:#E9ECF1;stroke-width:1.6;stroke-linecap:round}
.iso .axis{fill:none;stroke:#46515F}
.iso .ax-t{fill:#9AA4B1;font-family:var(--en);font-size:calc(14px*var(--ts,1));font-weight:600}.iso .ax-on{fill:var(--f-ac)}
.iso .ax-e{fill:var(--f-tx);font-family:var(--mono);font-size:calc(11px*var(--ts,1));letter-spacing:.12em}
.iso .co-gap .co-ln{stroke-dasharray:3 3}.iso .co-gap .co-dot{fill:#C9D0D8}.iso .co-gap .co-t{font-size:calc(16px*var(--ts,1))}
@media (max-width:640px){.fx-stat{align-items:flex-start;text-align:left}.fx-big small b{font-size:13px}}


.iso .gap{fill:rgba(240,86,91,.06);stroke:var(--f-warn);stroke-dasharray:3 4}
.iso .warn{filter:url(#fx-glow);animation:warn-pulse 1.8s ease-in-out infinite}
.iso .warn-b{fill:rgba(240,86,91,.18);stroke:var(--f-warn);stroke-width:1.4;stroke-linejoin:round}
.iso .warn-m{fill:none;stroke:var(--f-warn);stroke-width:1.9;stroke-linecap:round}.iso .warn-d{fill:var(--f-warn)}
@keyframes warn-pulse{50%{opacity:.35}}
.iso .band-warn{fill:rgba(240,86,91,.13);stroke:rgba(240,86,91,.6)}
.iso .tk-m.tk-late.is-on{stroke:var(--f-warn)}
.iso .co-warn .co-t{fill:var(--f-warn)}.iso .co-warn .co-ln{stroke:var(--f-warnd)}.iso .co-warn .co-dot{fill:var(--f-warn)}.iso .co-warn .co-s{fill:#C98B8E}
.fx-tag{display:inline-flex;align-items:center;gap:6px;margin-left:14px;padding:3px 9px 3px 7px;border:1px solid var(--f-warn);color:var(--f-warn);font-size:11px;font-weight:600;vertical-align:1px}
.fx-tag i{font-style:normal;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;font-weight:500}
.ic-warn{width:14px;height:13px;flex:none}
.fx-delay .fx-big small{color:var(--f-warn)}.fx-delay .fx-big small .ic-warn{width:clamp(16px,1.5vw,22px);height:auto;margin-bottom:2px}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .iso .warn{animation:none}}


.intro .fx-delay .iso{height:auto}
.intro .fx-big{font-size:clamp(40px,4.6vw,76px);left:auto;bottom:auto;right:clamp(18px,2.2vw,30px);top:clamp(64px,5.6vw,84px)}


.ar-run{position:relative;height:340svh}
.ar-stage{--argap:clamp(32px,4vw,64px);position:sticky;top:68px;height:calc(100svh - 68px);display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:var(--argap);align-items:center}
.ar-list{grid-column:2;list-style:none;margin:0;padding:0;border-bottom:1px solid var(--line)}
.ar-item{padding:20px 0;border-top:1px solid var(--line);transition:color .45s,border-color .45s}
.ar-item.is-active{opacity:1;border-top-color:var(--ink)}
.ar-n{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--ac);margin-bottom:6px;text-transform:uppercase}
.ar-t{font-size:clamp(22px,2.1vw,30px);font-weight:600;letter-spacing:-.03em;line-height:1.35}
.ar-more{display:grid;grid-template-rows:0fr;transition:grid-template-rows .7s cubic-bezier(.2,.7,.1,1)}
.ar-more>div{overflow:hidden;min-height:0}
.ar-item.is-active .ar-more{grid-template-rows:1fr}
.ar-more .area-sub{margin:16px 0;font-size:clamp(15px,1.2vw,17px)}
.ar-more .body{font-size:14.5px;line-height:1.95;margin-bottom:.9em}
.ar-more .sym li{font-size:14.5px}
.ar-more .area-take{margin-top:14px;padding-top:14px;font-size:15px}
.ar-fig{position:absolute;left:0;top:50%;width:calc((100% - var(--argap)) * 7 / 12);transform:translateY(-50%);opacity:0;visibility:hidden;transition:opacity .6s,visibility .6s}
.ar-item.is-active .ar-fig{opacity:1;visibility:visible}
.ar-fig .fx{display:flex;flex-direction:column;height:min(calc(100svh - 160px),640px)}
.ar-fig .fx-body{flex:1 1 auto;min-height:0}
.ar-fig .fx-stage{height:100%}
.ar-fig .fx-stage .iso{width:100%;height:100%}
.ar-fig .fx-ft{flex:none;height:112px;flex-direction:column;flex-wrap:nowrap;align-items:flex-start;justify-content:center;gap:10px}
.ar-fig .fx-stat{align-items:flex-start;text-align:left;margin-left:0}
@media (max-width:900px){
  .ar-run{height:auto}
  .ar-stage{position:static;height:auto;display:block}
  .ar-item{opacity:1;border-top-color:var(--line);padding:28px 0}
  .ar-more{grid-template-rows:1fr}
  .ar-fig{position:static;width:auto;transform:none;opacity:1;visibility:visible;margin-top:24px}
  .ar-fig .fx{height:auto}.ar-fig .fx-stage{height:84vw;max-height:560px}
}


.fx.fx-bare{background:none;border:0;overflow:visible}
.fx-bare::before{display:none}
.fx-bare .fx-hd{display:none}
.fx-bare .fx-stage{padding:0}
.fx-bare .fx-ft{border-top:0;padding:10px 0 0}
.fx-bare .fx-side{border-left:1px solid var(--n-line);padding-right:0}


.fv{--f-top:#FFFFFF;--f-lf:#DCE1E7;--f-rt:#C6CDD6;--f-ln:#707A88;--f-fn:#9BA3AE;--f-tx:#5B6472;--f-hi:#141A24;--f-ac:#3F7472;--f-acd:#537C7B;--f-acf:#E1EEED}
.fv .btn.pri{background:var(--ink);color:#fff;border-color:var(--ink)}.fv .btn.pri:hover{background:#2A3242}
.fv .btn:not(.pri){color:var(--ink)}.fv .btn:not(.pri):hover{background:var(--ink);color:#fff}
.fv .iso .kv-base>.ft{fill:#FAFBFB}
.fv .iso .kv-stock .ft{fill:#F2F4F6}
.fv .iso .kv-bx .ft{fill:#FFFFFF}
.fv .iso .kv-bar-c .kv-bx .ft{fill:#E4F0EF;stroke:var(--f-ac)}.fv .iso .kv-bar-c .kv-bx .fl,.fv .iso .kv-bar-c .kv-bx .fr{fill:#CFE3E1;stroke:var(--f-acd)}
.fv .iso .kv-tk{stroke:#5D6775}
.fv .iso .kv-ja{fill:var(--ink)}.fv .iso .kv-lab{fill:#6B7480}
.fv .iso .kv-rail .ft{fill:#EEF1F4}
.fv .iso .kv-glass>.ft{fill:rgba(83,124,123,.07);stroke:rgba(63,116,114,.78)}.fv .iso .kv-glass>.fs{fill:rgba(83,124,123,.05);stroke:rgba(63,116,114,.35)}
.fv .iso .kv-readout .ft{fill:#fff}.fv .iso .kv-readout .fl{fill:#ECEFF2}.fv .iso .kv-readout .fr{fill:#DFE3E8}
.fv .iso .kv-screw{fill:#fff;stroke:#8C95A3}


.intro .body{color:var(--n-sub)}.intro .body.lg{color:var(--n-ink)}
.intro .intro-key{border-top-color:rgba(237,238,245,.55)}
.intro .fig-cap{color:var(--n-sub)}.intro .src{color:#8B94A2}.intro .tbd{color:#e58e8e}



.sec-tag{display:inline-flex;align-items:center;gap:8px;margin-bottom:22px;padding:6px 12px 6px 10px;border:1px solid rgba(20,26,36,.7);color:var(--ink);font-size:13px;font-weight:600;letter-spacing:.06em}
.sec-tag i{font-style:normal;font-family:var(--mono);font-size:11px;letter-spacing:.16em;font-weight:500}

.iso .orbit{filter:url(#fx-glow)}
.iso .orbit .od{fill:var(--f-ac);opacity:.75}.iso .orbit .od-hi{fill:#D8F0EE}

.mem-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}


.fv::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:repeating-linear-gradient(30deg,rgba(20,26,36,.07) 0 1px,transparent 1px 56px),repeating-linear-gradient(150deg,rgba(20,26,36,.07) 0 1px,transparent 1px 56px);
  -webkit-mask-image:radial-gradient(75% 85% at 70% 62%,#000 35%,transparent 100%);mask-image:radial-gradient(75% 85% at 70% 62%,#000 35%,transparent 100%)}


.intro{position:relative;overflow:hidden;min-height:100svh;display:flex;align-items:center}
.intro::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(20,26,36,.94) 0%,rgba(20,26,36,.8) 28%,rgba(20,26,36,0) 50%)}
.intro .intro-in{position:relative;z-index:2;display:block;width:100%}
.intro-txt{max-width:520px}
.intro-fig{position:absolute;z-index:0;top:0;bottom:0;right:clamp(12px,1.6vw,32px);left:clamp(560px,41.7vw,760px);width:auto;display:flex;flex-direction:column;justify-content:center}
.intro-fig .fig-cap{margin:0 0 6px}
.intro .fx-delay .iso{height:auto}
:is(.intro,.result,.contact) .sec-tag{border-color:rgba(237,238,245,.7);color:var(--n-ink)}
@media (max-width:1100px){
  .intro{display:flex;flex-direction:column;align-items:stretch;min-height:0}
  .intro::before{display:none}
  .intro-fig{position:static;order:2;left:auto;width:auto;margin-top:32px;padding:0 var(--gut)}
  .intro-fig .fig-cap{margin-left:0}
  .intro .fx-big{position:relative;top:auto;right:auto;left:auto;padding:0 0 8px}
}


.ar-fig .fx-hd{height:60px;padding-top:0;padding-bottom:0}
.fx-ba{display:inline-flex;align-items:baseline;gap:8px;font-family:var(--en);font-size:12px;letter-spacing:.02em;padding:7px 14px}
.fx-ba small{font-family:var(--mono);font-size:11px;letter-spacing:.16em;opacity:.7}


.iso .av-b{fill:#1D2530;stroke:#7D8896;stroke-width:1.2}.iso .av-h{fill:#C9D0D8}.iso .av-s{fill:#C9D0D8}
.iso .dl-ar{fill:none;stroke:var(--f-warn);stroke-width:1.4;stroke-dasharray:5 5}
.iso .dl-hd{fill:none;stroke:var(--f-warn);stroke-width:1.6;stroke-linecap:round}
.iso .dl rect{fill:#8E2F33}
.iso .dl-n{fill:#fff;font-family:Inter,var(--en);font-size:calc(27px*var(--ts,1));font-weight:600;letter-spacing:-.02em}
.iso .dl-u{font-size:calc(15px*var(--ts,1));font-weight:600;letter-spacing:0}
.iso .dl-t{fill:var(--f-warn);font-family:var(--en);font-size:calc(22px*var(--ts,1));font-weight:700}
.iso .dl-e{fill:#C98B8E;font-family:var(--mono);font-size:calc(11px*var(--ts,1));letter-spacing:.14em}



@media (min-width:901px){.ar-item:not(.is-active) .ar-t{color:#7A8391}.ar-item:not(.is-active) .ar-n{color:#6B7480}}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .ar-more,:root:not([data-motion="full"]) .ar-item,:root:not([data-motion="full"]) .ar-fig{transition:none}}

.mem-photo img{filter:saturate(.92) contrast(1.02)}
.mem-photo img[src*="iwase"]{transform:scale(1.6);transform-origin:50% 24%}

@media (max-width:640px){
  .ar-fig .fx-hd{height:auto;flex-direction:column;align-items:stretch;gap:10px;padding:14px}
  .fx-name{white-space:nowrap;font-size:14px}
  .fx-segs{display:flex;width:100%}
  .fx-ba{flex:1 1 0;flex-direction:column;align-items:center;gap:2px;padding:8px 6px;min-height:44px;white-space:nowrap;font-size:12px}
  .fx-ba small{font-size:11px}
}

:focus-visible{outline:2px solid #537C7B;outline-offset:3px}
:is(.hd,.intro,.result,.contact,.ft) :focus-visible{outline-color:#86BDBA}

.iso .co-n circle{fill:#0E131A;stroke:var(--f-ac);stroke-width:1.2}
.iso .co-n text{fill:var(--f-ac);font-family:Inter,var(--en);font-weight:600;font-size:calc(12px*var(--ts,1))}

.iso .v-sp{display:none}
@media (max-width:640px){.iso .v-pc{display:none}.iso .v-sp{display:inline;--ts:var(--km)}}

.sec-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:clamp(32px,4vw,64px);align-items:end}
.sec-split>p{margin:0;padding-bottom:.3em}
@media (max-width:900px){.sec-split{grid-template-columns:1fr}.sec-split>p{margin-top:20px}}

.lg-hint{font-size:12px;color:var(--f-tx);margin:0 0 10px}.lg-hint span{margin-left:8px;font:400 11px var(--mono);letter-spacing:.06em}
.fx-jtl .fx-ft{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;padding:0;border:0;min-height:0}

.hd-menu{display:none}
@media (max-width:860px){
  .hd-menu{display:inline-grid;place-items:center;width:40px;height:40px;margin-left:auto;background:none;border:1px solid rgba(237,238,245,.5);color:var(--n-ink);cursor:pointer}
  .hd-menu i,.hd-menu i::after{display:block;width:18px;height:1px;background:currentColor;transition:transform .3s}
  .hd-menu i::after{content:"";transform:translateY(6px)}.hd-menu i{transform:translateY(-3px)}
  .hd.is-open .hd-menu i{transform:rotate(45deg)}.hd.is-open .hd-menu i::after{transform:rotate(-90deg)}
  .hd.is-open .hd-nav{display:flex;position:fixed;top:68px;left:0;right:0;flex-direction:column;gap:0;padding:8px var(--gut) 24px;background:#141A24;border-bottom:1px solid var(--n-line)}
  .hd.is-open .hd-nav a{opacity:1;font-size:16px;padding:16px 0;border-bottom:1px solid var(--n-line)}
}

.hd-menu{flex:none}
@media (max-width:480px){.hd{gap:8px}.hd-cta{padding:8px 10px}}
@media (max-width:400px){.hd-logo{font-size:13px}}

@keyframes kv-in{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
.motion-on .fv .fv-iso{animation:kv-in .8s .1s cubic-bezier(.2,.7,.1,1) both}

@media (max-width:640px){
  .fv{align-items:flex-start;padding-top:0;padding-bottom:72px}
  .fv .fv-iso{top:100px;right:12px;width:calc(100% - 24px)}
  .fv-in{padding-top:calc(74vw + 96px)}
  .fv .eyebrow{margin-bottom:20px}
  .fv-lead br{display:none}
  .motion-on .fv .ctas.rv{animation:kv-in 1s .7s cubic-bezier(.2,.7,.1,1) both}
  .fv::after{display:none}
  .fv .iso :is(.kv-ja,.kv-lab,.kv-num,.kv-read){display:none}
}

.fx-layers .lab{cursor:pointer}
.iso .lab:focus-visible{outline:none}.iso .lab:focus-visible .co-ln{stroke:var(--f-ac);stroke-width:2}.iso .lab:focus-visible .co-t{fill:var(--f-ac)}

:is(.proof-sec,.areas,.others,.members,.about){position:relative;border-top:1px solid var(--line)}
:is(.proof-sec,.areas,.others,.members,.about)::before{content:"";position:absolute;top:0;height:10px;pointer-events:none;z-index:1;
  left:max(var(--gut),calc((100% - var(--max)) / 2));right:max(var(--gut),calc((100% - var(--max)) / 2));
  background:
    linear-gradient(90deg,rgba(20,26,36,.34) 0 1px,transparent 1px) 0 0/80px 10px repeat-x,
    linear-gradient(90deg,rgba(20,26,36,.16) 0 1px,transparent 1px) 0 0/8px 4px repeat-x}



.btn.pri.inv[aria-disabled="true"]{background:transparent;color:rgba(237,238,245,.62);border:1px dashed rgba(237,238,245,.42);cursor:not-allowed}
.btn.pri.inv[aria-disabled="true"]:hover{background:transparent;color:rgba(237,238,245,.62)}
.cc-row{gap:16px var(--G)}

.rel-track li{width:clamp(240px,22vw,320px)}
.rel-track{animation-duration:270s}
.rel-card img{filter:grayscale(1) contrast(.96);opacity:.9;transition:filter .4s,opacity .4s}
.rel-card:is(:hover,:focus-visible) img{filter:none;opacity:1}
.rel-lane{-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.proof-sec{padding-bottom:clamp(64px,6vw,96px)}
@media (max-width:700px){.rel-track li{width:220px}}

.proof-nums{grid-template-rows:repeat(3,auto)}
.proof-nums article{display:grid;grid-row:span 3;grid-template-rows:subgrid;align-content:start}

@media (max-width:640px){
  .arc{gap:12px}
  .arc-i{aspect-ratio:auto;display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto auto;column-gap:16px;row-gap:2px;align-content:center;min-height:96px;padding:12px 16px}
  .arc-i .iso{position:static;transform:none;width:72px;grid-column:1;grid-row:1 / span 2}
  .arc-n{grid-column:2;grid-row:1;align-self:end}
  .arc-s{grid-column:2;grid-row:2;align-self:start;font-size:20px}
  .arc-i .iso .cr-t{display:none}
}

@media (max-width:860px){.hd.is-open::before{content:"";position:fixed;top:68px;left:0;right:0;height:100svh;background:rgba(14,19,26,.55)}}


@supports (animation-timeline:view()){
  @keyframes seam-in{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
  .motion-on :is(.proof-sec,.areas,.others,.members,.about)::before{animation:seam-in linear both;animation-timeline:view();animation-range:entry 0% cover 30%}
}

@media (min-width:901px){
  .fv .fv-iso{top:auto;right:0;bottom:2svh;width:min(98svh,63vw,1280px)}
  .fv::after{display:none}
}
.iso .kv-rd-l{stroke:var(--f-ac);stroke-width:2.4;stroke-linecap:round}.iso .kv-rd circle{fill:var(--f-ac)}.iso .kv-rd{filter:url(#fx-glow)}
.iso .kv-beam{fill:var(--f-ac);stroke:none;opacity:.08}
@keyframes kv-bar{from{opacity:0;transform:translate(-104px,60px)}}
.motion-on .fv .kv-bar{animation:kv-bar .8s cubic-bezier(.2,.7,.1,1) both}
.motion-on .fv .kv-bar-m{animation-delay:.3s}.motion-on .fv .kv-bar-c{animation-delay:.42s}.motion-on .fv .kv-bar-h{animation-delay:.54s}
@keyframes kv-show{from{opacity:0}}
.motion-on .fv .kv-cur{animation:kv-show .4s .85s both}
.motion-on .fv-iso:not(.is-read) .kv-rd{opacity:0;transform:scale(.3)}
.fv-iso .kv-rd{transform-box:fill-box;transform-origin:50% 50%;transition:opacity .3s,transform .5s cubic-bezier(.3,1.5,.5,1)}
.fv-iso.is-read .kv-rd-c{transition-delay:.09s}.fv-iso.is-read .kv-rd-h{transition-delay:.18s}
@keyframes kv-pulse{30%{stroke-width:4.5}}
.fv-iso.is-lock .kv-hair{animation:kv-pulse .9s ease-out}
@keyframes kv-beam{20%{opacity:.3}}
.fv-iso.is-lock .kv-beam{animation:kv-beam 1.1s ease-out}
@keyframes kv-name{25%{fill:var(--f-ac)}}
.fv-iso.is-lock .kv-ja{animation:kv-name 1.4s .55s ease-out}
.fv-iso.is-lock .kv-bar-c .kv-ja{animation-delay:.64s}.fv-iso.is-lock .kv-bar-h .kv-ja{animation-delay:.73s}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .fv-iso .kv-rd{transition:none}}


.lg-k .k-n{display:inline-grid;place-items:center;flex:none;width:22px;height:22px;margin-right:10px;border:1px solid var(--f-ac);border-radius:50%;font:600 12px/1 Inter,var(--en);color:var(--f-ac)}
@media (max-width:640px){
  .iso-jtl .bay-k{display:none}.iso-jtl .bay-k-m{display:inline}
  .result-fig .fx-stage{margin:0 calc(-1 * var(--gut))}
}

.lg-hint::before{content:"";display:inline-block;width:6px;height:6px;margin:0 9px 2px 1px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg)}
.lg-b{position:relative;padding-right:14px}
.lg-b::after{content:"›";position:absolute;right:2px;top:9px;color:var(--f-tx);transition:transform .2s,color .2s}
.lg-b:is(:hover,:focus-visible) b{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.lg-b:hover::after,.lgd li.is-sel .lg-b::after{color:var(--f-ac)}.lg-b:hover::after{transform:translateX(3px)}
.iso .bay:hover .bay-s>.ft{stroke:var(--f-ac)}

.iso .slot{fill:none;stroke:#566273;stroke-width:1;stroke-dasharray:3 4}
.fx-bridge .br-slot{transition:opacity .5s}.fx-bridge.is-on .br-slot{opacity:0}
.fx-bridge .co-br{transition:opacity .5s,visibility 0s .5s}
.fx-bridge.is-on .co-br{transition:opacity .5s .3s,visibility 0s}
.fx-bridge:not(.is-on) .co-br{opacity:0;visibility:hidden}

@media (max-width:640px){
  .motion-on .result-fig.rv>.fx{clip-path:inset(0 calc(-1 * var(--gut)) 100% calc(-1 * var(--gut)))}
  .motion-on .result-fig.rv.in>.fx{clip-path:inset(0 calc(-1 * var(--gut)) 0 calc(-1 * var(--gut)))}
}

.areas{--arT:max(0px, calc((100svh - 816px) / 2));--arB:max(32px, var(--arT));padding:max(24px, calc(clamp(88px,9vw,136px) - var(--arT))) 0}
.ar-stage{align-items:start;align-content:start;padding-top:var(--arT)}
.ar-head{grid-column:1;grid-row:1;margin:0}
.ar-list{grid-row:1 / span 2}
.ar-fig{top:auto;bottom:var(--arB);transform:none}
@media (min-width:901px){.ar-fig .fx{height:min(584px, calc(100svh - 232px - var(--arT) - var(--arB)))}}
@media (max-width:900px){.areas{padding:clamp(88px,9vw,136px) 0}.ar-stage{padding-top:0}.ar-head{margin-bottom:clamp(40px,4.4vw,64px)}}

.mem-wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:var(--G);align-items:start}
.mem-wrap>.sec-h{margin-bottom:0}
.mem-row{gap:clamp(24px,3vw,48px)}
.mem{grid-template-columns:160px minmax(0,1fr);grid-template-areas:"ph hd" "pr pr";column-gap:32px;row-gap:22px}
.mem-photo{grid-area:ph;width:160px;margin:9px 0 0 9px;box-shadow:0 0 0 8px var(--paper),0 0 0 9px var(--line);background:#C9CED6}
.mem-hd{grid-area:hd;align-self:end;padding-bottom:4px}
.mem-name{margin:6px 0 0}
.mem-prof{grid-area:pr;margin-top:0}
@media (max-width:1100px){.mem-wrap{grid-template-columns:1fr}.mem-wrap>.sec-h{margin-bottom:clamp(40px,4.4vw,64px)}}
@media (max-width:760px){.mem{grid-template-columns:120px minmax(0,1fr)}.mem-photo{width:120px}}

.fx-hd-r{display:inline-flex;align-items:center;gap:12px}
.fx-pause{width:32px;height:32px;padding:0;display:inline-grid;place-items:center}
.fx-pause i{width:8px;height:10px;border-left:2px solid currentColor;border-right:2px solid currentColor}
.fx-pause[aria-pressed="true"] i{width:0;height:0;border:0;border-left:9px solid currentColor;border-top:5.5px solid transparent;border-bottom:5.5px solid transparent;margin-left:3px}
.motion-off .fx-pause{display:none}
.fx[data-paused] *{animation-play-state:paused!important}
.lg-hint{display:flex;align-items:center}.lg-hint .fx-pause{margin-left:auto;flex:none}.lg-hint span{margin-right:10px}
@media (min-width:901px){.lg-hint{flex-wrap:wrap}.lg-hint span{order:2;flex-basis:100%;margin:0 0 0 16px}.lg-hint .fx-pause{order:1}}
@media (max-width:640px){.ar-fig .fx-hd-r{justify-content:space-between}}



@media (min-width:1101px){
  .mem-row{grid-template-columns:1fr;row-gap:clamp(32px,3vw,48px)}
  .mem{grid-template-columns:minmax(0,2fr) minmax(0,5fr);grid-template-areas:"ph hd" "ph pr";column-gap:0;row-gap:12px;align-items:start}
  .mem-hd{align-self:start;padding:0}
}

@media (min-width:641px){
  .arc-i{aspect-ratio:auto;display:grid;grid-template-columns:88px minmax(0,1fr);grid-template-rows:auto auto;column-gap:20px;row-gap:4px;align-content:center;min-height:120px;padding:14px 20px}
  .arc-i .iso{position:static;transform:none;width:88px;grid-column:1;grid-row:1 / span 2}
  .arc-n{grid-column:2;grid-row:1;align-self:end}
  .arc-s{grid-column:2;grid-row:2;align-self:start}
  .arc-i .iso .cr-t{display:none}
}

.mem-photo::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(72% 60% at 50% 40%,transparent 52%,rgba(201,206,214,.6) 100%)}
.mem-photo img[src*="amemiya"]{transform:scale(1.12);transform-origin:50% 30%}

@media (max-width:640px){.result-fig .fx-stage{position:sticky;top:68px;z-index:2;background:var(--ink);border-bottom:1px solid var(--n-line);padding-bottom:8px}}

@media (max-width:900px){.fx-bare .fx-side{border-left:0;padding-left:0;padding-right:0}}

.iso .kv-ping{fill:none;stroke:var(--f-ac);stroke-width:1.6;opacity:0;transform-box:fill-box;transform-origin:50% 50%}
@keyframes kv-ping{0%{opacity:.9;transform:scale(.04)}70%{opacity:.35}100%{opacity:0;transform:scale(1)}}
.fv-iso.is-lock .kv-ping{animation:kv-ping 2s cubic-bezier(.15,.6,.3,1) both}
.fv-iso.is-lock .kv-ping+.kv-ping{animation-delay:.3s}
.iso .kv-rd-o{fill:none;stroke:var(--f-ac);stroke-width:1.4;opacity:0;transform-box:fill-box;transform-origin:50% 50%}
@keyframes kv-ring{0%{opacity:.95;transform:scale(.6)}100%{opacity:0;transform:scale(2.6)}}
.fv-iso.is-lock .kv-rd-o{animation:kv-ring 1.1s ease-out both}
.fv-iso.is-lock .kv-rd-c .kv-rd-o{animation-delay:.09s}.fv-iso.is-lock .kv-rd-h .kv-rd-o{animation-delay:.18s}
.iso .kv-flow{fill:none;stroke:var(--f-ac);stroke-width:2.2;stroke-linecap:round;opacity:0;stroke-dasharray:1 1;stroke-dashoffset:1}
@keyframes kv-flow{0%{opacity:1;stroke-dashoffset:1}50%{opacity:1;stroke-dashoffset:0}100%{opacity:0;stroke-dashoffset:0}}
.fv-iso.is-lock .kv-flow{animation:kv-flow 1.4s .12s cubic-bezier(.3,.6,.3,1) both}
.fv-iso.is-lock .kv-bar-c .kv-flow{animation-delay:.21s}.fv-iso.is-lock .kv-bar-h .kv-flow{animation-delay:.3s}

.result .h2{font-size:clamp(40px,5.6vw,80px);letter-spacing:-.035em;line-height:1.2}
.result .sec-h{margin-bottom:clamp(32px,3.4vw,48px)}

.ar-rm summary{display:inline-flex;align-items:center;gap:10px;padding:2px 0;cursor:pointer;list-style:none;font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--ink)}
.ar-rm summary::-webkit-details-marker{display:none}
.ar-rm summary::before{content:"";width:11px;height:11px;flex:none;color:var(--ac);background:linear-gradient(currentColor,currentColor) 50% 50%/11px 1.5px no-repeat,linear-gradient(currentColor,currentColor) 50% 50%/1.5px 11px no-repeat;transition:background-size .3s}
.ar-rm[open] summary::before{background-size:11px 1.5px,1.5px 0}
.ar-rm summary i{font-style:normal;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.16em;color:var(--sub)}
.ar-rm summary:hover{color:var(--ac)}
.ar-rm[open] summary{margin-bottom:12px}

@media (min-width:901px){
  .ar-list{display:flex;flex-direction:column;max-height:calc(100svh - 68px - var(--arT) - var(--arB))}
  .ar-item{flex:none}
  .ar-item.is-active{flex:0 1 auto;min-height:0;display:flex;flex-direction:column}
  .ar-item.is-active .ar-more{flex:0 1 auto;min-height:0}
  .ar-item.is-active .ar-more>div{overflow-y:auto;scrollbar-width:thin}
}


:is(.proof-sec,.areas,.others,.members,.about)::before{display:none}



.hd{background:rgba(255,255,255,0);color:var(--ink);border-bottom:1px solid transparent;
  -webkit-backdrop-filter:blur(14px) saturate(150%);backdrop-filter:blur(14px) saturate(150%);transition:background-color .35s,color .35s,border-color .35s}
.hd.hd-light{background:rgba(255,255,255,.74);color:var(--ink);border-bottom-color:rgba(20,26,36,.08)}
.hd.hd-dark{background:rgba(20,26,36,.72);color:var(--n-ink);border-bottom-color:rgba(57,66,79,.6)}
.hd-cta{border-color:currentColor;color:inherit}
.hd:not(.hd-dark) .hd-cta:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.hd.hd-dark .hd-cta:hover{background:var(--n-ink);color:var(--ink);border-color:var(--n-ink)}
@media (max-width:860px){
  .hd-menu{border-color:currentColor;color:inherit;opacity:.85}
  .hd.is-open{background:rgba(20,26,36,.94);color:var(--n-ink)}
  .hd.is-open .hd-nav{color:var(--n-ink)}
}

.rel-card img{filter:none;opacity:1}

.spec{border-top:0}

.btn.pri.inv[aria-disabled="true"],.btn.pri.inv[aria-disabled="true"]:hover{background:var(--n-ink);color:var(--ink);border:1px solid var(--n-ink);cursor:default}

.cc{min-height:260px;padding:30px 30px 32px;overflow:hidden;
  background:radial-gradient(120% 90% at 0% 0%,rgba(134,189,186,.13),transparent 55%),linear-gradient(165deg,#232A33 0%,#1A2029 50%,#161C26 100%)}
.cc::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:repeating-linear-gradient(30deg,rgba(237,238,245,.05) 0 1px,transparent 1px 24px),repeating-linear-gradient(150deg,rgba(237,238,245,.05) 0 1px,transparent 1px 24px);
  -webkit-mask-image:radial-gradient(90% 85% at 100% 0%,#000 10%,transparent 70%);mask-image:radial-gradient(90% 85% at 100% 0%,#000 10%,transparent 70%)}
.cc>*{position:relative;z-index:1}
.cc .iso{height:96px;filter:drop-shadow(0 0 22px rgba(134,189,186,.22));transition:filter .45s,transform .6s cubic-bezier(.2,.7,.1,1)}
.cc-t{font-size:18px;line-height:1.65}
@media (hover:hover){.cc:hover .iso{filter:drop-shadow(0 0 28px rgba(134,189,186,.4));transform:translateY(-4px)}}

.mem-photo .mem-dither{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;image-rendering:pixelated}



@media (min-width:901px){
  .ar-list{height:calc(100svh - 68px - var(--arT) - var(--arB))}
  .ar-item.is-active{flex:1 1 auto}
  .ar-item.is-active .ar-more>div{overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column}
  .ar-more>div>:not(.ar-rm){flex:none}
  .ar-item.is-active .ar-rm{flex:0 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
  .ar-item.is-active .ar-rm[open]{min-height:3.5em}
  .ar-rm summary{position:sticky;top:0;z-index:1;display:flex;background:#fff}
  .ar-rm[data-more]{-webkit-mask-image:linear-gradient(#000 calc(100% - min(40px, 30%)),transparent);mask-image:linear-gradient(#000 calc(100% - min(40px, 30%)),transparent)}
}
.ar-rm[open] summary{margin-bottom:0;padding-bottom:12px}

@media (prefers-reduced-motion:no-preference){
  .ar-rm{interpolate-size:allow-keywords}
  .ar-rm::details-content{block-size:0;overflow-y:clip;transition:block-size .55s cubic-bezier(.2,.7,.1,1),content-visibility .55s allow-discrete}
  .ar-rm[open]::details-content{block-size:auto}
}
:root[data-motion="full"] .ar-rm{interpolate-size:allow-keywords}:root[data-motion="full"] .ar-rm::details-content{block-size:0;overflow-y:clip;transition:block-size .55s cubic-bezier(.2,.7,.1,1),content-visibility .55s allow-discrete}:root[data-motion="full"] .ar-rm[open]::details-content{block-size:auto}

.rel{border-top:0;padding-top:0}
.rel-head{align-items:center}
.rel-head .rel-tag{margin:0;font-size:13px;font-weight:600;letter-spacing:.06em;line-height:1.8}

@media (min-width:1101px){.mem-wrap>.sec-h{position:sticky;top:120px}}
@media (min-width:901px){.about-in>.sec-h{position:sticky;top:120px}}

.area-take>span{display:block;text-wrap:balance}


@media (min-width:1101px){
  .intro-fig{top:68px;padding:24px 0 32px;--fw:min(92%, calc((100svh - 68px - 24px - 32px - 36px) * var(--vbr, 1.15)))}
  .intro-fig>:is(.fig-cap,.fx){width:var(--fw);margin-left:auto}
}

@media (min-width:901px){
  .ar-stage{grid-template-rows:auto auto minmax(0,1fr);padding-bottom:var(--arB)}
  .ar-head{display:contents}
  .ar-head>.sec-tag{grid-column:1;grid-row:1;justify-self:start}
  .ar-head>.h2{grid-column:1;grid-row:2}
  .ar-list{grid-row:2 / span 2;align-self:stretch;height:auto;max-height:none;min-height:0}
}

@media (min-width:901px) and (max-height:860px){
  .ar-item{padding:14px 0}
  .ar-n{margin-bottom:4px}
  .ar-more .area-sub{margin:10px 0 12px}
  .ar-more .area-take{margin-top:10px;padding-top:10px}
}

@media (min-width:901px){.lg-hint{flex-wrap:nowrap}.lg-hint span{order:0;flex-basis:auto;margin:0 0 0 8px}}

.iso .trail{stroke-dasharray:none;stroke-dashoffset:0}

.fx-layers .lab .co-sj{font-family:var(--en);fill:#C9D0D8;letter-spacing:.02em}
.fx-layers .lab .co-sj .co-se{font-family:var(--mono);fill:var(--f-tx)}

.iso .sig-s{transform-origin:0 0;transition:transform .3s cubic-bezier(.2,.7,.1,1),opacity .3s}
.iso .sig-h{transition:opacity .3s}

.iso,.iso *{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.iso :focus:not(:focus-visible),.iso .lab:focus:not(:focus-visible){outline:none}
.fx :is(.fx-btn,.lg-b){-webkit-tap-highlight-color:transparent}
.fx :is(.fx-btn,.lg-b):focus:not(:focus-visible){outline:none}

@font-face{font-family:"Inter";src:url(assets/fonts/inter-zero-400.woff) format("woff");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0030}
@font-face{font-family:"Inter";src:url(assets/fonts/inter-zero-500.woff) format("woff");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+0030}
@font-face{font-family:"Inter";src:url(assets/fonts/inter-zero-600.woff) format("woff");font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0030}
@font-face{font-family:"Inter";src:url(assets/fonts/inter-zero-700.woff) format("woff");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0030}
@font-face{font-family:"Souken Zero Mono";src:url(assets/fonts/zero-mono-400.woff) format("woff");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0030}
@font-face{font-family:"Souken Zero Mono";src:url(assets/fonts/zero-mono-500.woff) format("woff");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+0030}
:root{--mono:"Souken Zero Mono","IBM Plex Mono",ui-monospace,monospace}



.iso .x2-k .ft{fill:var(--f-acf);stroke:var(--f-ac)}.iso .x2-k .fl{fill:#18302F;stroke:none}.iso .x2-k .fr{fill:#142725;stroke:none}
.fx-bridge .x2-k{opacity:0;transition:opacity .22s}
.fx-bridge.is-on .x2-k{opacity:1;transition-delay:calc(.75s + var(--k) * .09s)}
.fx-bridge .co-x2{opacity:0;transition:opacity .4s}
.fx-bridge.is-on .co-x2{opacity:1;transition-delay:1.5s}
.fx-bridge.is-on .peg-on .head .ft{transition:fill .45s calc(1.7s + var(--d) * .2s),stroke .45s calc(1.7s + var(--d) * .2s)}
.fx-bridge.is-on .peg-on .head{animation:peg-glow .45s calc(1.7s + var(--d) * .2s) both}
@keyframes peg-glow{from{filter:none}to{filter:url(#fx-glow)}}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .fx-bridge .x2-k,:root:not([data-motion="full"]) .fx-bridge .co-x2,:root:not([data-motion="full"]) .fx-bridge .peg-on .head .ft{transition:none}:root:not([data-motion="full"]) .fx-bridge .peg-on .head{animation:none}}

@media (min-width:901px){
  .ar-list{grid-row:3;align-self:end;height:min(584px, calc(100svh - 232px - var(--arT) - var(--arB)))}
}

.iso .ripple{fill:none;stroke:var(--f-ac);stroke-width:1.4;filter:url(#fx-glow);pointer-events:none}



.st-in .bar :is(.ft,.fl,.fr){transition:fill .4s,stroke .4s}
.st-in .bar-a .fl{fill:#18302F;stroke:var(--f-acd)}.st-in .bar-a .fr{fill:#142725;stroke:var(--f-acd)}

.proof-lead{margin-top:clamp(20px,2vw,28px);max-width:44em;font-size:clamp(15px,1.25vw,17px);font-weight:500;line-height:1.9;color:var(--ink)}
.proof-nums{grid-template-rows:repeat(4,auto)}
.proof-nums article{grid-row:span 4}
.pn-d{margin-top:6px;font-size:13px;line-height:1.7;color:var(--sub)}
.rel-hl{display:flex;align-items:center;gap:16px;flex-wrap:wrap;min-width:0}
.rel-d{margin:0;font-size:13px;line-height:1.7;color:var(--sub)}
@media (max-width:640px){.proof-lead br{display:none}.pn-d{font-size:11.5px}.rel-hl{gap:8px}}


.fv .iso .kv-tk[data-t]{transform-box:fill-box;transform-origin:0 0;vector-effect:non-scaling-stroke;transform:scale(calc(1 + var(--k,0) * var(--g,1)));stroke:color-mix(in srgb,var(--f-ac) calc(var(--k,0) * 100%),#5D6775);stroke-width:calc(1px + var(--k,0) * 1.2px)}
.fv .iso .kv-tk-c[data-t]{stroke:var(--f-ac)}


.safety{background:var(--ink);color:var(--n-ink)}
.safety .sec-tag{border-color:rgba(237,238,245,.7);color:var(--n-ink)}
.safety .h2{font-size:clamp(32px,4.8vw,68px);letter-spacing:-.035em;line-height:1.25}
.safety .sec-h{margin-bottom:clamp(40px,5vw,64px)}
.safety .cc-row{margin-bottom:0}
.cc.sf{min-height:0}
.cc-d{grid-column:1 / -1;margin:-8px 0 0;font-size:14px;line-height:1.95;color:var(--n-sub)}
.iso-glyph .av-b{fill:#22393A;stroke:#86BDBA}.iso-glyph .av-h,.iso-glyph .av-s{fill:#86BDBA;stroke:none}
.iso-glyph .gl-bac .ft{fill:#22393A;stroke:#86BDBA}
@media (max-width:640px){.iso-glyph .av{display:inline}}

.mem-photo img[src*="iwase"]{transform:scale(1.3);transform-origin:50% 30%}
.mem-photo img[src*="amemiya"]{transform:none}


.fx-delay .iso .trail{stroke:url(#trail-fade)}


.iso .tk-x{stroke:#2E3845;stroke-width:1;fill:none}
@media (max-width:640px){.fx-delay .ax-q{display:none}}
.iso .ext{stroke:#46515F;stroke-width:1;stroke-dasharray:2 3;fill:none}
.fx-delay .ax-t.ax-q{fill:#7D8896}


.motion-on .fx-delay .dl-line{clip-path:inset(-20px 100% -20px -20px);transition:clip-path .9s cubic-bezier(.7,0,.2,1)}
.motion-on .fx-delay.is-late .dl-line{clip-path:inset(-20px -20px -20px -20px)}
.motion-on .fx-delay .dl-in{opacity:0;transform:translateY(12px);transition:opacity .3s,transform .3s}
.motion-on .fx-delay.is-late .dl-in{opacity:1;transform:none;transition:opacity .5s .6s,transform .7s .6s cubic-bezier(.2,.7,.1,1)}


.fx-bridge.is-live .peg .head .ft{transition:fill .35s,stroke .35s}
.fx-bridge.is-live .peg-on .head{animation:peg-glow .35s both}

@media (min-width:901px){
  .ar-item:not(.is-active){padding:12px 0}
  .ar-item:not(.is-active) .ar-n{display:inline-block;margin:0 16px 0 0;vertical-align:baseline}
  .ar-item:not(.is-active) .ar-t{display:inline;font-size:18px;line-height:1.6}
  .ar-t{transition:font-size .45s cubic-bezier(.2,.7,.1,1),color .45s}
  .ar-rm .body{line-height:1.8}
  .ar-item.is-active .area-sub{line-height:1.6}
}
@media (min-width:901px){
  .ar-rm .body{font-size:14px}
  .ar-rm .body+.body,.ar-rm .body+.sym,.ar-rm .sym+.body{margin-top:8px}
  .ar-more .area-take{margin-top:10px;padding-top:10px}
}
@media (min-width:901px){.ar-rm .body{margin-bottom:.5em}.ar-rm>:last-child{margin-bottom:0}}


@media (min-width:901px){
  .ar-item:not(.is-active){cursor:pointer}
  .ar-item:not(.is-active):hover .ar-t,.ar-item:not(.is-active):focus-visible .ar-t{color:var(--ink)}
  .ar-item:focus-visible{outline:2px solid var(--ac);outline-offset:4px}
  .ar-list{overflow:visible;border-bottom:0}
  .ar-item:last-child{border-bottom:1px solid var(--line)}
  .ar-item.is-active{flex:1 0 auto;min-height:auto}
  .ar-item.is-active .ar-more,.ar-item.is-active .ar-more>div,.ar-item.is-active .ar-rm{flex:none;min-height:auto;overflow:visible;max-height:none}
  .ar-rm[data-more]{-webkit-mask-image:none;mask-image:none}
}


.sec-tag,.rel-head .rel-tag{border:0;padding:0;font-family:var(--mono);font-size:13px;font-weight:500;letter-spacing:.16em;line-height:1.6}


.mem-photo img{filter:url(#duo)}

.mem{border-top:1px solid rgba(20,26,36,.1)}
.mem:first-child{border-top:0}
.mem-photo{margin:0;box-shadow:none}


.mem-photo.is-dmask{background:none;overflow:visible}
.mem-photo.is-dmask img{opacity:0}
.mem-photo.is-dmask::after{display:none}
.mem-photo.is-dmask .mem-dither{filter:url(#duo);image-rendering:auto}


.mem-photo{aspect-ratio:4/5}
.mem-photo img[src*="iwase"]{transform:none}



@media (hover:hover){.cc.sf:hover{--sf-run:running;--sf-show:1}}
@media (hover:none){.rv-stagger.in>.cc.sf{--sf-run:running;--sf-show:1}}
.iso-glyph :is(.sf-a,.sf-bx .ft){animation-play-state:var(--sf-run,paused)}
.iso-glyph :is(.sf-pk,.sf-lp){fill:#E4F6F4;filter:drop-shadow(0 0 4px #86BDBA)}
.iso-glyph .sf-pk{opacity:0;animation:sf-move 2.4s cubic-bezier(.45,0,.55,1) infinite}
@keyframes sf-move{0%{opacity:0;transform:translate(0,0)}12%{opacity:1;transform:translate(0,0)}70%{opacity:1;transform:translate(var(--dx),var(--dy))}82%,100%{opacity:0;transform:translate(var(--dx),var(--dy))}}
.iso-glyph .sf-av{animation:sf-glow 2.4s infinite}
@keyframes sf-glow{0%,62%,100%{filter:none}74%{filter:drop-shadow(0 0 7px #86BDBA) brightness(1.25)}}
.iso-glyph .sf-l{transform-box:fill-box;transform-origin:center;animation:sf-ping 2.4s infinite;animation-delay:calc(.2s + var(--i) * .5s)}
@keyframes sf-ping{0%,30%,100%{transform:scale(1);fill:#86BDBA}8%{transform:scale(1.9);fill:#F2FFFE}}
.iso-glyph .sf-lp{opacity:var(--sf-show,0);transition:opacity .3s;animation:sf-loop 3.2s linear infinite}
@keyframes sf-loop{0%,100%{transform:translate(0,0)}25%{transform:translate(var(--x1),var(--y1))}50%{transform:translate(var(--x2),var(--y2))}75%{transform:translate(var(--x3),var(--y3))}}
.iso-glyph .sf-bx .ft{animation:sf-box 3.2s infinite;animation-delay:calc(var(--i) * .8s)}
@keyframes sf-box{0%,22%,100%{fill:#232C38;stroke:#5A6576}4%{fill:#2C4A4A;stroke:#B9E3DF}}
.iso-glyph .gl-bac.sf-bx .ft{animation-name:sf-box-ac}
@keyframes sf-box-ac{0%,22%,100%{fill:#22393A;stroke:#86BDBA}4%{fill:#2C4A4A;stroke:#B9E3DF}}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .iso-glyph :is(.sf-a,.sf-bx .ft){animation:none}}


@property --chg-a{syntax:'<angle>';inherits:false;initial-value:0deg}
.chg::after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;opacity:0;transition:opacity .35s;
  background:conic-gradient(from var(--chg-a),rgba(134,189,186,.95) 0deg,rgba(134,189,186,0) 70deg,rgba(134,189,186,0) 290deg,rgba(134,189,186,.95) 360deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
.chg::before{transition:opacity .35s}
@media (hover:hover) and (prefers-reduced-motion:no-preference){.chg:hover::after{opacity:1;animation:chg-spin 2.6s linear infinite}.chg:hover::before{opacity:0}}
@media (hover:hover){:root[data-motion="full"] .chg:hover::after{opacity:1;animation:chg-spin 2.6s linear infinite}:root[data-motion="full"] .chg:hover::before{opacity:0}}
@keyframes chg-spin{to{--chg-a:360deg}}

.motion-on .intro-fig.rv>.fx{clip-path:inset(0 -100vw 100% -100vw)}
.motion-on .intro-fig.rv.in>.fx{clip-path:inset(-30vh -100vw -30vh -100vw)}
@media (min-width:901px){
  .motion-on .result-fig.rv>.fx{clip-path:inset(0 -100vw 100% -100vw)}
  .motion-on .result-fig.rv.in>.fx{clip-path:inset(-30vh -100vw -30vh -100vw)}
}


@media (hover:hover){.cc.ct:hover{--sf-run:running;--sf-show:1}}
@media (hover:none){.rv-stagger.in>.cc.ct{--sf-run:running;--sf-show:1}}
.iso-glyph .gl-g{stroke:rgba(134,189,186,.3);stroke-width:.8;fill:none}
.iso-glyph .gl-d{stroke:#5A6576;stroke-width:1;stroke-dasharray:2 3;fill:none}
.iso-glyph .gl-t{stroke:#6C7888;stroke-width:1.3;stroke-linecap:round;fill:none}
.iso-glyph .gl>.fs,.iso-glyph .cy.gl .fs{fill:#161D26;stroke:#5A6576}.iso-glyph .cy.gl .ft{fill:#232C38;stroke:#5A6576}
.iso-glyph .ct-lift{transform:translateY(calc(var(--lz) * var(--sf-show, 0)));transition:transform .6s cubic-bezier(.2,.7,.1,1)}
.iso-glyph .sf-tk{animation:sf-tick 2.4s infinite;animation-delay:calc(var(--i) * .16s)}
@keyframes sf-tick{0%,34%,100%{stroke:#6C7888}10%{stroke:#C9F0EC;filter:drop-shadow(0 0 3px #86BDBA)}}
.iso-glyph .ct-back{animation-delay:1.2s}
.iso-glyph .ct-bx .ft{animation:sf-box 2.4s infinite;animation-delay:calc(1.6s + var(--i) * -1.2s)}
.iso-glyph .ct-wave{fill:none;stroke:#86BDBA;stroke-width:1.2;opacity:0;transform-box:fill-box;transform-origin:center;animation:ct-wave 1.8s infinite;animation-delay:calc(.1s + var(--i) * .6s)}
@keyframes ct-wave{0%{transform:scale(.3);opacity:.9}100%{transform:scale(2.6);opacity:0}}
.iso-glyph :is(.sf-a,.ct-bx .ft){animation-play-state:var(--sf-run,paused)}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .iso-glyph :is(.sf-a,.ct-bx .ft){animation:none}:root:not([data-motion="full"]) .iso-glyph .ct-lift{transition:none}}
.cc.ct .iso{height:112px}

.iso-glyph :is(.sf-a,.sf-bx .ft,.ct-bx .ft){animation-play-state:var(--sf-run,paused)}



.fx :is(.b-en,[lang="en"]){display:none}

.iso-glyph .gl-glass{fill:none;stroke:rgba(134,189,186,.55);stroke-width:1}
.iso-glyph .gl-scan{fill:rgba(134,189,186,.16);stroke:#86BDBA;stroke-width:1;opacity:0;animation:gl-scan 2.4s cubic-bezier(.45,0,.55,1) infinite}
@keyframes gl-scan{0%{transform:translateY(0);opacity:0}12%{opacity:1}75%{transform:translateY(var(--dz));opacity:1}90%,100%{transform:translateY(var(--dz));opacity:0}}
.iso-glyph .sf-sh .ft{animation-duration:2.4s;animation-delay:.9s}

.contact .ctas{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px}
.ct-mail{color:var(--n-ink);font-family:var(--mono);font-size:14px;letter-spacing:.04em;text-decoration:none;border-bottom:1px solid rgba(237,238,245,.4);padding-bottom:2px}
.ct-mail:hover{border-bottom-color:var(--n-ink)}
.iso-glyph :is(.sf-a,.sf-bx .ft,.ct-bx .ft){animation-play-state:var(--sf-run,paused)}

.ar-fig .fx{--f-bg:#F6F7F6;--f-top:#FFFFFF;--f-lf:#E1E6EB;--f-rt:#CDD3DB;--f-ln:#7A8592;--f-fn:#B3BAC3;--f-tx:#5B6472;--f-hi:#141A24;--f-ac:#3F7472;--f-acd:#537C7B;--f-acf:#E1EEED;
  background:radial-gradient(110% 85% at 55% 48%,#FFFFFF 0%,#F7F8F7 60%,#EEF1F0 100%);border-color:var(--line);color:var(--f-tx)}
.ar-fig .fx::before{background-image:radial-gradient(rgba(20,26,36,.1) 1px,transparent 1.3px)}
.ar-fig .fx-btn{color:var(--f-hi);border-color:#C3C9D1}.ar-fig .fx-btn:hover{border-color:var(--f-hi)}
.ar-fig .fx-seg[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.ar-fig .iso .co-ln{stroke:#9AA3AE}.ar-fig .iso .co-ac .co-ln{stroke:var(--f-acd)}
.ar-fig .iso .pk circle{fill:var(--f-ac)}.ar-fig .iso .pk .pk-h{fill:rgba(63,116,114,.18)}
.ar-fig .iso :is(.plate,.lp,.board,.g-base,.base)>.ft{fill:#FBFCFC}
.ar-fig .iso :is(.g-col,.node,.peg,.g-sl) .ft{fill:#FFFFFF}
.ar-fig .iso .tx-d{fill:#C6CDD6}.ar-fig .iso .tx-on{fill:rgba(63,116,114,.1)}
.ar-fig .iso .ruler .ft{fill:#E4F0EF;stroke:var(--f-ac)}.ar-fig .iso .ruler .fs{fill:#CFE3E1;stroke:var(--f-acd)}
.ar-fig .iso .x2-k .fl{fill:#CFE3E1;stroke:none}.ar-fig .iso .x2-k .fr{fill:#BFD9D6;stroke:none}
.ar-fig .iso .peg-on .head .ft{fill:var(--f-ac);stroke:var(--f-ac)}
.ar-fig .iso .layer.is-sel .lp>.ft{fill:#E9F3F2}.ar-fig .iso .layer.is-sel :is(.tx,.tx-c){stroke:#9EC4C1}.ar-fig .iso .layer.is-sel .tx-d{fill:#8FB8B5}
.ar-fig .iso .lc{fill:#7A8592}.ar-fig .iso .layer.is-sel .lc{fill:var(--f-ac)}
.ar-fig .fx-layers.is-js .lab:not(.is-sel) .co-t{fill:#9AA3AE}
.ar-fig .fx-layers .lab .co-sj{fill:#5B6472}
.ar-fig .iso .tag-d rect{fill:var(--ink);stroke:var(--ink)}.ar-fig .iso .tag-d text{fill:#fff}
.ar-fig .iso :is(.node-t,.sh-n){fill:#6B7480}
.ar-fig .iso .sheet>.ft{fill:#FFFFFF;stroke:#8C95A3}.ar-fig .iso .sheet>.fs{fill:#E3E7EC;stroke:#8C95A3}.ar-fig .iso .sh-l{stroke:#A3ABB5}
.ar-fig .iso .shadow{fill:rgba(20,26,36,.07);stroke:rgba(20,26,36,.18)}
.ar-fig .fx-system:not(.is-on) .tr{stroke:#B9C0C8}
.ar-fig .iso .slot{stroke:#B9C0C8}
.ar-fig .iso .co-n circle{fill:#fff;stroke:var(--f-ac)}
.ar-fig .iso .x2-k .ft{stroke:none}


html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:hidden}
.lenis.lenis-smooth iframe{pointer-events:none}
.fv .fv-iso{translate:0 var(--kvp,0px)}


.ar-fig .iso .co-n circle{fill:#fff;stroke:var(--f-ac);stroke-width:1.2}.ar-fig .iso .co-n text{fill:var(--f-ac);font-family:Inter,var(--en);font-weight:600;font-size:calc(12px*var(--ts,1))}
.ar-fig .iso :is(.co-dec,.co-req) .co-s{fill:var(--f-ac)}


.iso .bb-s{transform:scale(var(--ts,1))}
.iso .bb-b{fill:#fff;stroke:var(--f-ac);stroke-width:1.2}
.iso .bb2 .bb-b{fill:var(--f-acf)}
.iso .bb-q{fill:var(--f-hi);font-family:var(--en);font-size:14px;font-weight:700;letter-spacing:.02em}
.iso .bb-t{fill:var(--f-tx);font-family:var(--en);font-size:12.5px;font-weight:600}
.iso .bb .co-n circle{fill:#fff;stroke:var(--f-ac);stroke-width:1.2}.iso .bb .co-n text{fill:var(--f-ac);font-family:Inter,var(--en);font-weight:600;font-size:11px}
.iso .bb-ln{fill:none;stroke:#9AA3AE;stroke-width:1;stroke-dasharray:2 3}
.ar-fig .iso .bb .av-b{fill:#fff;stroke:var(--f-ac)}.ar-fig .iso .bb .av-h,.ar-fig .iso .bb .av-s{fill:var(--f-ac)}
.fx-bridge .bb-in{opacity:0;translate:0 8px;transition:opacity .3s,translate .3s}
.fx-bridge.is-on .bb1 .bb-in{opacity:1;translate:0 0;transition:opacity .5s .2s,translate .7s .2s cubic-bezier(.2,.7,.1,1)}
.fx-bridge.is-on .bb2 .bb-in{opacity:1;translate:0 0;transition:opacity .5s 2.6s,translate .7s 2.6s cubic-bezier(.2,.7,.1,1)}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .fx-bridge .bb-in{opacity:1;translate:none;transition:none}}
.fx-bridge .bb-ln.bb2{opacity:0;transition:opacity .3s}.fx-bridge.is-on .bb-ln.bb2{opacity:1;transition:opacity .5s 2.4s}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .fx-bridge .bb-ln.bb2{opacity:1;transition:none}}


.iso .rq-b{fill:var(--f-acf);stroke:var(--f-ac);stroke-width:1.2}
.iso .rq-ln{fill:none;stroke:var(--f-acd);stroke-width:1;stroke-dasharray:2 3}
.iso .dr-ln{fill:none;stroke:var(--f-ac);stroke-width:1;opacity:.55}
.iso .dr-dot{fill:var(--f-ac);animation:dr-fall 1.6s cubic-bezier(.5,0,.75,0) infinite;animation-delay:calc(var(--i) * .35s)}
@keyframes dr-fall{0%{transform:translateY(0);opacity:0}10%{opacity:1}85%{transform:translateY(var(--dy));opacity:1}100%{transform:translateY(var(--dy));opacity:0}}
.iso .dr-ring{fill:none;stroke:var(--f-ac);stroke-width:1;transform-box:fill-box;transform-origin:center;opacity:0;animation:dr-ring 1.6s ease-out infinite;animation-delay:calc(1.36s + var(--i) * .35s)}
@keyframes dr-ring{0%{transform:scale(.4);opacity:.9}100%{transform:scale(2.2);opacity:0}}
.fx-bridge:not(.is-vis) :is(.dr-dot,.dr-ring){animation-play-state:paused}
.fx-bridge .rq-c .bb-in,.fx-bridge .rq-ln,.fx-bridge .rq-drop{opacity:0;transition:opacity .3s,translate .3s}
.fx-bridge .rq-c .bb-in{translate:0 8px}
.fx-bridge.is-on .rq-ln{opacity:1;transition:opacity .4s 2.3s}
.fx-bridge.is-on .rq-c .bb-in{opacity:1;translate:0 0;transition:opacity .5s 2.5s,translate .7s 2.5s cubic-bezier(.2,.7,.1,1)}
.fx-bridge.is-on .rq-drop{opacity:1;transition:opacity .5s 3.1s}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .fx-bridge :is(.rq-c .bb-in,.rq-ln,.rq-drop){opacity:1;translate:none;transition:none}:root:not([data-motion="full"]) .iso :is(.dr-dot,.dr-ring){animation:none}:root:not([data-motion="full"]) .iso .dr-dot{opacity:0}}


.hd{transition:transform .45s cubic-bezier(.2,.7,.1,1),background-color .3s,color .3s,border-color .3s}
.hd.hd-hide{transform:translateY(-100%)}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .hd{transition:none}}

main>section:not(.fv,.intro,.areas){min-height:100svh;display:flex;flex-direction:column;justify-content:center}


.fv-en{margin:-6px 0 22px;font-family:Inter,var(--en);font-size:clamp(15px,1.25vw,18px);font-weight:500;letter-spacing:.04em;color:var(--sub)}
@media (max-width:640px){.fv-en{margin:-4px 0 14px;font-size:13px}}

@media (max-width:860px){.hd-cta{margin-left:auto}.hd-menu{order:2;margin-left:0}}

@media (max-width:640px){
  :is(h1,h2,h3,h4,p,li,dd,dt,b,small,span,a,em,strong){word-break:keep-all;overflow-wrap:anywhere;line-break:strict}
  main :is(.body,.fv-lead,.intro-key,.cc-d,.mem-prof,.proof-lead,.pn-d,.others-lead,.arc-note,.chg p,.lg-in){text-align:justify;text-align-last:start;text-justify:inter-character;word-break:normal;line-break:strict}
  main :is(.body,.fv-lead,.intro-key,.cc-d,.mem-prof,.proof-lead,.others-lead,.arc-note,.chg p) br{display:none}
}

@media (max-width:640px){
  .intro-fig{padding:0}
  .ar-fig .fx{margin:0 calc(-1 * var(--gut));border-left:0;border-right:0}
  .ar-fig .fx-hd{padding:14px var(--gut)}
  .ar-fig .fx-stage{height:auto;max-height:none;padding:0}
  .ar-fig .fx-stage .iso{height:auto}
  :is(.intro-fig,.ar-fig,.result-fig) .fx-stage .iso{max-width:460px;margin-inline:auto}
}
@media (max-width:640px){.iso .rq-c .co-n text{font-size:11px}}

@media (max-width:640px){

  section,.areas{padding:72px 0}
  main>section:not(.fv,.intro,.areas){min-height:0}
  .sec-h,.ar-head{margin-bottom:32px}

  .hd-logo,.hd-cta{min-height:44px}
  .hd-cta{display:inline-flex;align-items:center}
  .hd-menu{width:44px;height:44px}

  .lg-b{min-height:44px;align-items:center}.lg-b::after{top:50%;translate:0 -50%}

  .contact-h{font-size:32px;margin-bottom:32px}
  .contact .ctas{flex-direction:column;align-items:flex-start;gap:8px}
  .contact .btn{align-self:stretch;justify-content:center}
  .ct-mail{display:inline-flex;align-items:center;min-height:44px;padding:0;border-bottom:0;text-decoration:underline;text-decoration-color:rgba(237,238,245,.4);text-underline-offset:6px}

  .cc,.cc.sf{min-height:0;grid-template-columns:96px minmax(0,1fr);grid-template-rows:auto auto 1fr;gap:6px 18px;padding:22px 20px 22px 16px;align-content:center}
  .cc .iso,.cc.ct .iso{grid-column:1;grid-row:1 / span 3;align-self:center;width:96px;height:auto;max-height:96px}
  .cc-n{grid-column:2;grid-row:1;font-size:18px}
  .cc-t{grid-column:2;grid-row:2;font-size:16px;line-height:1.6}
  .cc-d{grid-column:2;grid-row:3;margin:2px 0 0;font-size:13.5px;line-height:1.85}
  .cc-row{margin-bottom:32px}

  .spec div{grid-template-columns:72px minmax(0,1fr);gap:12px;padding:18px 0}
  .spec dd{font-size:15px}
  .ft{padding:40px 0}
}
@media (max-width:640px){main p:is(.others-lead,.cc-d){text-align:start;word-break:keep-all;text-wrap:balance}}
@media (max-width:640px){main :is(.body,.fv-lead,.intro-key,.mem-prof,.proof-lead,.pn-d,.arc-note,.chg p,.lg-in){text-wrap:pretty}}

@media (max-width:640px){
  .proof-nums{grid-template-columns:1fr;grid-template-rows:none;row-gap:28px}
  .proof-nums article{grid-row:auto;display:block;padding:16px 0 0;border-left:0}
  .proof-nums article+article{border-left:0}
  .pn-b{font-size:clamp(84px,27vw,120px);padding:8px 0 6px}
  .pn-b small{font-size:18px;margin-left:6px}.pn-b small.pre{margin-right:4px}
  .pn-s{font-size:14px}.pn-d{font-size:12.5px}
}


.fx-system .labs-now,.fx-system .labs-con{transition:opacity .6s}
.fx-system.is-on .labs-now,.fx-system:not(.is-on) .labs-con{opacity:0}
.fx-system .labs-now :is(.co-t,.co-s){opacity:0}
.fx-system:not(.is-on) .labs-con{opacity:1}.fx-system:not(.is-on) .labs-con :is(.co-ln,.co-dot,.co-ac){opacity:0}
.fx-system .labs-con :is(.co-ln,.co-dot){transition:opacity .6s}
