


.cs-c1-heading{margin:32px 0 24px}
.cs-c1-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0;gap:18px}
.cs-c1-four>li{position:relative;background:var(--paper);padding:24px 20px 28px;border-top:3px solid var(--ink);min-width:0}
.cs-c1-four>li+li::before{content:'→';position:absolute;left:-17px;top:78px;font-size:18px;color:var(--ink)}
.cs-c1-icon{display:inline-flex;width:32px;height:32px;color:var(--ink)}
.cs-c1-icon svg{display:block;width:100%;height:100%;stroke-width:var(--icon-stroke)}
.cs-c1-four h2{font-size:14px;font-weight:500;margin:18px 0 12px;color:var(--ink-2)}
.cs-c1-answer{font-size:clamp(16px,1.25vw,19px);line-height:1.65;font-weight:700;overflow-wrap:anywhere;text-wrap:pretty}
.cs-c1-four .nw{white-space:normal}.cs-c1-four .nw.keep{white-space:nowrap}
.cs-c1-four .cs-num{font:inherit}
.cs-c1-four>li:last-child{background:var(--ink);color:var(--paper)}
.cs-c1-four>li:last-child h2,.cs-c1-four>li:last-child .cs-c1-icon{color:var(--paper)}
.cs-c1-note{margin:26px 0 0;padding:16px 20px;border-left:3px solid var(--rule-2);font-size:14px;line-height:1.8;max-width:1000px;color:var(--ink)}
.cs-c1-note p+p{margin-top:7px}
.cs-c1-body{margin:0 0 32px}
.cs-c1-body .cs-face{margin:0 var(--pad)}
main>.cs-links{margin:32px var(--pad)}
@media(max-width:1100px){
 .cs-c1-four>li{padding:20px 12px}
 .cs-c1-answer{font-size:16px}
}
@media(max-width:900px){
 .cs-c1-four{grid-template-columns:1fr}
 .cs-c1-four>li{padding:20px 16px;display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px 18px}
 .cs-c1-four h2{margin:4px 0 0}
 .cs-c1-four .cs-c1-answer{grid-column:1 / -1;font-size:17px}
 .cs-c1-four>li+li::before{content:'↓';left:24px;top:-23px}
 .cs-c1-note{padding:12px 14px;font-size:13px}
}

:root{
  --rb1:#2D5F8A;
  --rb2:#0D9488;
  --rb3:#27AE60;
  --rb4:#E67E22;
  --rb5:#C0392B;
  --rb6:#8E44AD;
  --icon-stroke:1.5;             
  --ground:#F4F3EF;
  --paper:#FFFFFF;
  --ink:#10193A;
  --ink-hover:#2B4075;
  --ink-2:#4A5675;
  --rule:rgba(16,25,58,.13);
  --rule-2:rgba(16,25,58,.26);
  --axis:rgba(16,25,58,.045);
  --tint:rgba(16,25,58,.05);
  --accent:#3BA1D3;
  --accent-ink:#1A6E9C;           
  --mark:rgba(59,161,211,.30);    
  --night:#10193A;
  --pad:64px;
  --hd:72px;
  --jp:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;
  --en:'Barlow Condensed','Arial Narrow',sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
}
@media (max-width:1100px){:root{--pad:40px}}
@media (max-width:900px){:root{--pad:20px;--hd:60px}}


@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}
::view-transition-old(root){animation:260ms var(--ease) both vt-out}
::view-transition-new(root){animation:420ms var(--ease-out) both vt-in}
@keyframes vt-out{to{opacity:0;transform:translateY(-10px)}}
@keyframes vt-in{from{opacity:0;transform:translateY(14px)}}
.hd{view-transition-name:hd}
#axes{view-transition-name:axes}
::view-transition-group(hd),::view-transition-group(axes){animation:none}

*{box-sizing:border-box}
html{scroll-padding-top:calc(var(--hd) + 20px);-webkit-text-size-adjust:100%}
html,body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--jp);-webkit-font-smoothing:antialiased}
body{font-size:16px;line-height:1.85;letter-spacing:.04em;overflow-x:clip}
h1,h2,h3,h4{font-feature-settings:'palt' 1;letter-spacing:.02em;text-wrap:balance}
p,figure,dl,dd,ol,ul,blockquote{margin:0}
main p,main li,main dd,main dt,main h1,main h2,main h3,main h4,main td,main th,main figcaption,.row .a,.row .b,.ft .creed,.ft p,.ft li,.crumb{word-break:auto-phrase;line-break:strict}

main p,main li,main dd,main dt,main td,main figcaption,.row .a,.row .b,.ft p,.ft li,.crumb{text-wrap:pretty}
.nw{white-space:nowrap}
a{color:inherit}
img{max-width:100%}

:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.ft :focus-visible{outline-color:#fff}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.en{font-family:var(--en);font-weight:600;letter-spacing:.16em}
.lab{font-family:var(--en);font-weight:600;font-size:13px;letter-spacing:.2em;text-transform:uppercase;line-height:1.4}
#intro > .eyebrow.lab{text-transform:none}
.num{font-family:var(--en);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.06em}
.skip{position:absolute;left:12px;top:-60px;z-index:60;padding:10px 16px;background:var(--ink);color:#fff;text-decoration:none}
.skip:focus{top:12px}


#axes{position:fixed;left:var(--pad);right:var(--pad);top:0;bottom:0;z-index:0;pointer-events:none}
#axes i{position:absolute;top:0;bottom:0;width:.5px;background:var(--axis);transform-origin:50% 0}
html.js.draw #axes i{transform:scaleY(0);transition:transform 1100ms var(--ease-out)}
html.js.draw.drawn #axes i{transform:none}
main,.ft,.hd{position:relative;z-index:1}


.g6{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:0}
.c1-2{grid-column:1 / 3}.c1-3{grid-column:1 / 4}.c1-4{grid-column:1 / 5}.c1-5{grid-column:1 / 6}.c1-6{grid-column:1 / -1}
.c2-6{grid-column:2 / -1}.c3-6{grid-column:3 / -1}.c3-5{grid-column:3 / 6}.c4-6{grid-column:4 / -1}.c5-6{grid-column:5 / -1}

.in-l{padding-left:22px}
.in-r{padding-right:22px}
@media (max-width:900px){
  .g6{grid-template-columns:minmax(0,1fr)}
  .g6 > *{grid-column:1 / -1 !important}
  .in-l{padding-left:0}.in-r{padding-right:0}
}


.hd{position:sticky;top:0;z-index:30;height:var(--hd);display:flex;align-items:center;gap:30px;
  padding:0 var(--pad);background:color-mix(in srgb,var(--ground) 92%,transparent);
  -webkit-backdrop-filter:saturate(1.2) blur(10px);backdrop-filter:saturate(1.2) blur(10px)}
.hd::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--rule);opacity:0;transition:opacity var(--motion-mid) var(--ease-out)}
.hd.scrolled::after{opacity:1}

.hd .prog{position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--ink);transform-origin:0 50%;transform:scaleX(var(--p,0));z-index:1}
.hd .mk{display:flex;align-items:center;margin-right:auto;text-decoration:none}
.hd .mk img{display:block;height:40px;width:auto}
.hd nav{display:flex;gap:30px;font-size:14px;font-weight:500;letter-spacing:.06em}
.hd nav a{position:relative;text-decoration:none;padding:8px 0}
.hd nav a::after{content:'';position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:100% 50%;transition:transform var(--motion-slow) var(--ease)}
.hd nav a[aria-current]::after{transform:scaleX(1);transform-origin:0 50%}
@media(hover:hover) and (pointer:fine){.hd nav a:hover::after{transform:scaleX(1);transform-origin:0 50%}}
.hd nav a:focus-visible::after{transform:scaleX(1);transform-origin:0 50%}
.hd .cta{min-height:44px;height:44px;padding:0 22px;font-size:14px}
.hd details{display:none}
@media (max-width:1000px){.hd nav{gap:20px;font-size:13px}}
@media (max-width:900px){
  .hd{gap:10px}
  .hd nav{display:none}
  .hd .mk img{height:40px}
  .hd .cta{min-height:38px;height:38px;padding:0 14px;font-size:13px}
  .hd .cta::after{display:none}
  .hd details{display:block}
  .hd summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-right:-10px}
  .hd summary::-webkit-details-marker{display:none}
  .hd summary i{position:relative;display:block;width:20px;height:1.5px;background:var(--ink);transition:background var(--motion-mid) var(--ease-out)}
  .hd summary i::before,.hd summary i::after{content:'';position:absolute;left:0;width:20px;height:1.5px;background:var(--ink);transition:transform var(--motion-mid) var(--ease)}
  .hd summary i::before{top:-6px}.hd summary i::after{top:6px}
  .hd details[open] summary i{background:transparent}
  .hd details[open] summary i::before{transform:translateY(6px) rotate(45deg)}
  .hd details[open] summary i::after{transform:translateY(-6px) rotate(-45deg)}
  .hd .menu{position:absolute;left:0;right:0;top:var(--hd);display:flex;flex-direction:column;background:var(--ground);
    border-bottom:1px solid var(--rule);padding:6px var(--pad) 22px;box-shadow:0 18px 30px rgba(16,25,58,.08)}
  .hd .menu a{display:flex;align-items:center;justify-content:space-between;min-height:54px;border-bottom:1px solid var(--rule);text-decoration:none;font-size:16px;font-weight:500}
  .hd .menu a::after{content:'→';font-family:var(--en);color:var(--ink-2)}
  .hd .menu a.primary{margin-top:14px;justify-content:center;background:var(--ink);color:#fff;border:0}
  .hd .menu a.primary::after{display:none}
}


.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:56px;padding:0 34px;
  background:var(--ink);color:#fff;text-decoration:none;font-size:16px;font-weight:500;letter-spacing:.06em;border:0;cursor:pointer;
  font-family:inherit;overflow:hidden;transition:background var(--motion-mid) var(--ease-out)}
.btn::after{content:'→';font-family:var(--en);font-weight:500;transition:transform var(--motion-slow) var(--ease)}
.btn:hover{background:var(--ink-hover)}
.lnk{display:inline-flex;align-items:center;min-height:44px;font-size:15px;font-weight:500;text-decoration:none;
  background:linear-gradient(var(--ink),var(--ink)) 0 calc(100% - 9px)/0 1px no-repeat,linear-gradient(var(--rule-2),var(--rule-2)) 0 calc(100% - 9px)/100% 1px no-repeat;
  transition:background-size var(--motion-mid) var(--ease-out)}
.lnk:hover{background-size:100% 1px,100% 1px}
.more{display:inline-flex;align-items:center;gap:12px;min-height:44px;margin-top:44px;font-size:15px;font-weight:500;text-decoration:none;
  background:linear-gradient(var(--ink),var(--ink)) 0 calc(100% - 8px)/0 1px no-repeat,linear-gradient(var(--rule-2),var(--rule-2)) 0 calc(100% - 8px)/100% 1px no-repeat;
  transition:background-size var(--motion-mid) var(--ease-out)}
.more::after{content:'→';font-family:var(--en);transition:transform var(--motion-slow) var(--ease)}
.more:hover{background-size:100% 1px,100% 1px}
.acts{display:flex;flex-wrap:wrap;align-items:center;gap:18px 30px}


.chip{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:2px 10px;border:1px solid var(--rule-2);
  font-size:12px;line-height:1.4;letter-spacing:.04em;color:var(--ink-2);background:var(--paper);white-space:nowrap;vertical-align:middle}
.chip b{font-weight:700;color:var(--ink)}
.sample-note{font-size:12px;font-weight:400;line-height:1.5;letter-spacing:.04em;color:var(--ink-2)}
.pending{color:var(--ink-2);background:repeating-linear-gradient(135deg,transparent 0 6px,var(--tint) 6px 12px)}

.em{color:var(--accent-ink)}

.hl{color:var(--ink)}
.ans{color:var(--ink);font-weight:700}
.soft{color:var(--ink-2)}
.hl{background:linear-gradient(var(--mark),var(--mark)) 0 88%/0% .5em no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone;
  padding:0 .06em;margin:0 -.06em;transition:background-size var(--motion-slow) var(--ease-out) min(var(--motion-delay-max), var(--hl-delay,var(--motion-delay-max)))}
.hl.is-in,[data-land].is-in .hl:not([data-hl-manual]),[data-reveal].is-in .hl:not([data-hl-manual]){background-size:100% .5em}
html:not(.js) .hl,:root[data-motion="off"] .hl{background-size:100% .5em}

.ft .creed .em{white-space:nowrap}

.ft .em{color:var(--accent)}

.tho-tip{fill:var(--ink);transition:opacity var(--motion-slow) var(--ease)}


.k{display:block;margin-bottom:4px;font-size:12.5px;line-height:1.5;letter-spacing:.08em;color:var(--ink-2);font-weight:700}
.note{margin-top:16px;font-size:13.5px;line-height:1.75;color:var(--ink-2)}


.sec{position:relative;padding:128px var(--pad)}

.sec + .sec::before,.sec.ruled::before{content:'';position:absolute;left:var(--pad);right:var(--pad);top:0;height:1px;background:var(--rule);transform-origin:0 50%}
html.js .sec + .sec:not(.is-in)::before,html.js .sec.ruled:not(.is-in)::before{transform:scaleX(0)}
html.js .sec::before{transition:transform var(--motion-slow) var(--ease-out)}
.sec.paper{background:var(--paper)}
.sec.paper + .sec::before,.sec + .sec.paper::before{display:none}
@media (max-width:900px){.sec{padding:76px var(--pad)}}


.eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 28px;color:var(--accent-ink)}
.eyebrow::before{content:'';width:30px;height:1px;background:var(--accent);transform-origin:0 50%;transition:transform var(--motion-slow) var(--ease-out)}
.eyebrow .num{color:var(--ink)}
html.js .eyebrow:not(.is-in)::before{transform:scaleX(0)}
.h2{margin:0;font-size:clamp(28px,3.1vw,44px);line-height:1.42;font-weight:700;max-width:21em}
.lead{margin-top:28px;font-size:18px;line-height:1.95;max-width:34em}
.lead.sub{font-size:16px;color:var(--ink-2)}
@media (max-width:900px){
  .eyebrow{margin-bottom:20px}
  .h2{font-size:clamp(24px,6.6vw,30px);line-height:1.45}
  .lead{margin-top:20px;font-size:16px;line-height:1.9}
}


.split{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.split > .head{grid-column:1 / 3;padding-right:40px}
.split > .head .sticky{position:sticky;top:calc(var(--hd) + 40px)}
.split > .head .h2{font-size:clamp(24px,2.3vw,34px)}
.split > .body{grid-column:3 / -1;padding-left:22px}
@media (max-width:1100px){.split > .head{grid-column:1 / 4}.split > .body{grid-column:4 / -1}}
@media (max-width:900px){
  .split{grid-template-columns:minmax(0,1fr)}
  .split > .head,.split > .body{grid-column:1 / -1;padding:0}
  .split > .head .sticky{position:static}
  .split > .body{margin-top:36px}
}


.crumb{padding:30px var(--pad) 0;font-family:var(--en);font-weight:500;font-size:13px;letter-spacing:.14em;color:var(--ink-2);text-transform:uppercase}
.crumb a{text-decoration:none}
.crumb a:hover{color:var(--ink)}

.crumb span[aria-hidden]{margin:0 10px;opacity:.6}
.crumb [aria-current]{color:var(--ink);font-weight:500;text-transform:none;letter-spacing:.06em}
.ph{position:relative;padding:56px var(--pad) 96px}
.ph .kicker{display:flex;align-items:baseline;gap:18px;margin-bottom:26px;color:var(--accent-ink)}
.ph h1{margin:0;font-size:clamp(38px,5vw,72px);line-height:1.22;font-weight:700;letter-spacing:.01em;max-width:15em}
.ph .who{margin-top:26px;font-size:15px;line-height:1.8;color:var(--ink-2);max-width:40em}
.ph .lead{margin-top:34px;font-size:20px;line-height:1.9;max-width:32em}
.ph::after{content:'';position:absolute;left:var(--pad);right:var(--pad);bottom:0;height:1px;background:var(--rule-2);transform-origin:0 50%;transition:transform var(--motion-slow) var(--ease-out) var(--motion-delay-max)}
html.js .ph:not(.is-in)::after{transform:scaleX(0)}
@media (max-width:900px){
  .crumb{padding-top:20px;font-size:12.5px}
  .ph{padding:34px var(--pad) 60px}
  .ph h1{font-size:clamp(32px,9vw,42px);line-height:1.28}
  .ph .lead{font-size:17px;margin-top:24px}
}


.toc{position:sticky;top:calc(var(--hd) + 36px);display:flex;flex-direction:column;gap:2px;font-size:13.5px;line-height:1.5}
.toc a{display:grid;grid-template-columns:2.4em 1fr;gap:6px;padding:7px 0;text-decoration:none;color:var(--ink-2);transition:color var(--motion-mid) var(--ease-out)}
.toc a .num{font-size:13px}
.toc a:hover,.toc a[aria-current="true"]{color:var(--ink)}
.toc a[aria-current="true"] .num{color:var(--accent-ink)}
.toc a[aria-current="true"]{font-weight:700}


.cv-band{padding:64px var(--pad) 72px;border-top:1px solid var(--rule-2);background:var(--ground)}
.cv-band h2{margin:0;font-size:clamp(28px,3.1vw,44px);line-height:1.42;font-weight:700;letter-spacing:.02em;color:var(--ink)}
.cv-copy p{margin:20px 0 0;font-size:16px;line-height:1.9;color:var(--ink-2)}
.cv-band .cv-button{box-shadow:inset 0 0 0 1px var(--ink);min-height:56px;height:auto;padding:15px 22px;gap:10px;line-height:1.6;letter-spacing:.02em;font-size:15px;text-align:center;max-width:100%;flex:none}
.cv-band .cv-button::after{display:none;content:none}
.cv-band .cv-button.cv-button-guide{background:var(--paper);color:var(--ink)}
.cv-band .cv-button.cv-button-guide:hover{background:var(--ground)}
.cv-band .cv-button.cv-button-contact{background:var(--ink);color:var(--paper)}
.cv-band .cv-button.cv-button-contact:hover{background:var(--ink-hover)}
.cv-band .icon{width:18px;height:18px}
.cv-agenda{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.cv-agenda .cv-copy{max-width:34em}
.cv-agenda-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}
.cv-agenda-list li{display:flex;gap:18px;align-items:baseline;font-size:18px;font-weight:400;line-height:1.9;padding:20px 0;border-bottom:1px solid var(--rule)}
.cv-number{flex:none;font-family:var(--en);font-size:16px;font-weight:600;letter-spacing:.06em;color:var(--accent-ink)}
.cv-actions{display:flex;justify-content:flex-end;gap:24px;margin-top:36px;padding-top:28px;border-top:1px solid var(--rule-2)}
.cv-action{display:grid;gap:8px;flex:0 1 260px;min-width:0}
.cv-action>p{font-size:16px;line-height:1.7;color:var(--ink-2)}
.cv-action small{font-size:14px;color:var(--ink-2);line-height:1.7}
.cv-action .cv-button{width:100%}
.cv-band .cv-button:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
@media(max-width:1100px){
  .cv-agenda{gap:32px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
  .cv-desktop-break{display:none}
}
@media(max-width:900px){
  .cv-band h2{font-size:clamp(24px,6.6vw,30px);line-height:1.45}
}
@media(max-width:700px){
  .cv-band{padding:40px var(--pad) 48px}
  .cv-copy p{margin-top:16px}
  .cv-desktop-break{display:initial}
  .cv-agenda{grid-template-columns:minmax(0,1fr);gap:28px}
  .cv-agenda-list li{font-size:16px;padding:16px 0;gap:14px}
  .cv-number{font-size:15px}
  .cv-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;margin-top:28px;padding-top:24px}
  .cv-action{gap:7px}
}
@media(prefers-reduced-motion:reduce){.cv-band .btn{transition:none}}


.prose{max-width:38em}
.prose h2{font-size:clamp(22px,2.1vw,28px);line-height:1.55;margin:72px 0 20px}
.prose h3{font-size:19px;line-height:1.6;margin:44px 0 12px}
.prose p + p{margin-top:1.1em}
.prose ul,.prose ol{padding-left:1.3em;margin-top:1em}
.prose li + li{margin-top:.4em}


.dl{border-top:1px solid var(--ink)}
.dl > div{display:grid;grid-template-columns:minmax(8em,1fr) minmax(0,3fr);gap:24px;padding:20px 0;border-bottom:1px solid var(--rule)}
.dl dt{font-size:14px;font-weight:700;color:var(--ink-2);letter-spacing:.06em}
.dl dd{font-size:16px;line-height:1.8}
@media (max-width:900px){.chip{white-space:normal;max-width:100%}.dl > div{grid-template-columns:minmax(0,1fr);gap:4px;padding:16px 0}}


#next{padding:128px var(--pad) 120px}
#next h2{margin:0 0 52px;font-size:clamp(20px,2.3vw,30px);line-height:1.6;font-weight:700}
.rows{--before:color-mix(in srgb,var(--ground) 93%,var(--ink));   
  background:linear-gradient(var(--paper),var(--paper)) 100% 0/50% 100% no-repeat,linear-gradient(var(--before),var(--before)) 0 0/50% 100% no-repeat;
  border-bottom:1px solid var(--rule-2)}
.ba-hd{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.ba-hd > span{display:flex;align-items:baseline;gap:16px;padding:22px 22px 20px}
.ba-hd .lab{font-size:clamp(26px,2.4vw,34px);line-height:1;letter-spacing:.14em}
.ba-hd .ja{font-size:14px;font-weight:700;line-height:1;letter-spacing:.1em}
.ba-hd .ba-b{color:var(--ink-2);border-top:1px solid var(--rule-2)}
.ba-hd .ba-a{padding-left:30px;background:var(--ink);color:#fff}
.ba-hd .ba-a .ja{color:rgba(255,255,255,.8)}

.row{display:grid;grid-template-columns:minmax(0,max-content) minmax(64px,1fr) 50%;align-items:center;min-height:76px;padding:12px 0;background:linear-gradient(var(--rule),var(--rule)) 0 0/100% 1px no-repeat}
.ba-hd + .row{background:none}
.row .a{padding-left:22px;font-size:16px;line-height:1.75;color:var(--ink-2)}

.row .ar{position:relative;height:14px;margin-left:20px;font-size:0;
  background:linear-gradient(90deg,var(--rule-2),var(--ink)) 0 50%/calc(100% - 8px) 2px no-repeat}
.row .ar::after{content:'';position:absolute;right:0;top:0;width:12px;height:14px;background:var(--ink);clip-path:polygon(0 0,100% 50%,0 100%)}
.row .b{padding:0 22px 0 30px;font-size:17px;line-height:1.75;font-weight:500;color:var(--ink);text-wrap:wrap}

.row .b .em{white-space:nowrap}
html.js .row .ar{transition:clip-path var(--motion-slow) var(--ease-out)}
html.js .row:not(.is-in) .ar{clip-path:inset(0 100% 0 0)}
html.js .row .b{transition:opacity var(--motion-slow) var(--ease) var(--motion-delay-max),transform var(--motion-slow) var(--ease) var(--motion-delay-max)}
html.js .row:not(.is-in) .b{opacity:0;transform:translateY(10px)}
#next .acts{margin-top:56px}
@media (max-width:1100px){.row .a{font-size:15px}.row .b{font-size:16px}}
@media (max-width:900px){
  #next{padding:76px var(--pad) 84px}
  #next h2{margin-bottom:24px}
  .rows{background:none;border-bottom:0}
  .ba-hd{display:none}
  .row,.ba-hd + .row{grid-template-columns:minmax(0,1fr);min-height:0;padding:30px 0 0;background:none}
  
  .row .a::before,.row .b::before{display:table;margin-bottom:8px;padding:3px 8px 2px;font-family:'Barlow Condensed','Noto Sans JP',sans-serif;font-weight:600;font-size:12px;line-height:1.4;letter-spacing:.16em;text-transform:uppercase}
  .row .a::before{content:'Before\3000\5165\308B\524D';content:'Before\3000\5165\308B\524D' / '';box-shadow:inset 0 0 0 1px var(--rule-2);color:var(--ink-2)}
  .row .b::before{content:'After\3000\5165\3063\305F\5F8C';content:'After\3000\5165\3063\305F\5F8C' / '';background:var(--ink);color:#fff}
  .row .a{padding:12px 16px 14px;background:var(--before);font-size:14px;line-height:1.7}
  .row .ar{width:14px;height:26px;margin:6px 0 6px 18px;background:linear-gradient(180deg,var(--rule-2),var(--ink)) 50% 0/2px calc(100% - 8px) no-repeat}
  .row .ar::after{top:auto;bottom:0;width:14px;height:12px;clip-path:polygon(0 0,100% 0,50% 100%)}
  .row .b{padding:12px 16px 14px;background:var(--paper);box-shadow:inset 0 2px 0 var(--ink);font-size:15px;line-height:1.7}
  html.js .row:not(.is-in) .ar{clip-path:inset(0 0 100% 0)}
  
  html.js .row .b,html.js .row .b .em{transition:color var(--motion-slow) var(--ease) var(--motion-delay-max)}
  html.js .row:not(.is-in) .b{opacity:1;transform:none;color:transparent}
  html.js .row:not(.is-in) .b .em{color:transparent}
  #next .acts{margin-top:40px;flex-direction:column;align-items:stretch;gap:8px}
  #next .acts .btn{width:100%}
}
@media (max-width:374px){.row .b{padding-left:14px;padding-right:14px;font-size:14.5px}}   


.ln{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.ln > span{display:block;transition:transform var(--motion-slow) var(--ease-out)}
html.js [data-land]:not(.is-in) .ln > span{transform:translateY(112%)}
html.js [data-land]:not(.is-split){visibility:hidden}


html.js [data-reveal]{transition:opacity var(--motion-slow) var(--ease),transform var(--motion-slow) var(--ease)}
html.js [data-reveal]:not(.is-in){opacity:0;transform:translateY(16px)}
html.js [data-stagger] > *{transition:opacity var(--motion-slow) var(--ease),transform var(--motion-slow) var(--ease)}
html.js [data-stagger] > :not(.is-in){opacity:0;transform:translateY(12px)}


.ft{background:var(--night);color:#fff;padding:120px var(--pad) 84px;overflow:hidden}
.ft .axes{position:absolute;left:var(--pad);right:var(--pad);top:0;bottom:0;pointer-events:none}
.ft .axes i{position:absolute;top:0;bottom:0;width:.5px;background:rgba(255,255,255,.06)}
.ft .ticks{position:absolute;left:var(--pad);right:var(--pad);bottom:24px;height:18px}
.ft .ticks span{position:absolute;top:0;padding-left:8px;font-family:var(--en);font-weight:600;font-size:12px;line-height:18px;letter-spacing:.16em;color:rgba(255,255,255,.42);transition:color var(--motion-slow) var(--ease-out)}

.ft .ticks span:nth-child(2){left:16.6667%}.ft .ticks span:nth-child(3){left:33.3333%}.ft .ticks span:nth-child(4){left:50%}.ft .ticks span:nth-child(5){left:66.6667%}.ft .ticks span:nth-child(6){left:83.3333%}
.ft .ticks span.on{color:#fff}
.ft .creed{position:relative;margin:0 0 96px;font-size:clamp(28px,3.4vw,50px);line-height:1.4;font-weight:700;letter-spacing:.02em;max-width:16em}
.ft .bigmark{position:absolute;right:0;transform:translateX(35%);bottom:-80px;width:min(1008px,111.6vw);max-width:none;opacity:.045;pointer-events:none}

.ft .grid{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.ft .grid > div:first-child{grid-column:1 / 4;padding-right:30px}
.ft .grid > div:not(:first-child){padding-left:22px}
.ft h3{margin:0 0 18px;font-family:var(--en);font-size:13px;letter-spacing:.2em;font-weight:600;color:rgba(255,255,255,.6)}
.ft p,.ft li{font-size:14px;line-height:1.95;color:rgba(255,255,255,.86)}
.ft ul{margin:0;padding:0;list-style:none}
.ft a{text-decoration:none;background:linear-gradient(#fff,#fff) 0 100%/0 1px no-repeat;transition:background-size var(--motion-mid) var(--ease-out)}
.ft a:hover{background-size:100% 1px}

.ft-map{position:relative;padding-top:30px;border-top:1px solid rgba(255,255,255,.14)}
.ft .ft-map-h{display:flex;align-items:baseline;gap:16px;margin:0 0 34px;font-family:var(--jp);font-size:14px;font-weight:700;letter-spacing:.06em;color:#fff}
.ft .ft-map-h .lab{color:var(--accent)}
.ft-cols{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));row-gap:40px}
.ft .ft-col{padding:0 0 0 22px}   
.ft .ft-col h3{margin:0 0 14px;font-family:var(--jp);font-size:15px;line-height:1.5;letter-spacing:.04em;font-weight:700;color:#fff}
.ft .ft-col ul + h3{margin-top:30px}   
.ft .ft-col ul{display:flex;flex-direction:column;gap:4px}
.ft .ft-col li{font-size:13px;line-height:1.6;color:rgba(255,255,255,.74)}
.ft .ft-col li a{display:inline-block;padding:3px 0}
.ft .ft-col a:hover{color:#fff}
.ft .ft-col .ft-th{display:block;font-size:12.5px;line-height:1.55;color:rgba(255,255,255,.58)}   
.ft-base{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;margin-top:84px}
.ft-base .ft-id{grid-column:1 / 4}
.ft .ft-group{grid-column:4 / -1;padding-left:22px;font-size:13.5px;color:rgba(255,255,255,.74)}
@media (max-width:1100px){.ft-cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){
  .ft .ft-map-h{margin-bottom:24px}
  .ft-cols{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:30px;column-gap:16px}
  .ft .ft-col{padding:0}
  .ft .ft-col li a{padding:5px 0}
  .ft-base{grid-template-columns:minmax(0,1fr);gap:20px;margin-top:56px}
  .ft-base .ft-id,.ft .ft-group{grid-column:1 / -1;padding:0}
}
.ft .fine{position:relative;margin-top:84px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);font-size:12.5px;color:rgba(255,255,255,.6)}
.ft .pending{background:repeating-linear-gradient(135deg,transparent 0 6px,rgba(255,255,255,.07) 6px 12px);color:rgba(255,255,255,.74)}
@media (max-width:900px){
  .ft{padding:76px var(--pad) 76px}
  .ft .creed{margin-bottom:56px}
  .ft .grid{grid-template-columns:minmax(0,1fr);gap:34px}
  .ft .grid > div:first-child,.ft .grid > div:not(:first-child){grid-column:1 / -1;padding:0}
  .ft .fine{margin-top:48px}
}


.hd{gap:24px;flex-wrap:nowrap}
.hd .mk{flex:none}
.hd nav{gap:24px;white-space:nowrap;flex:none}
.hf-actions,.hf-menu-actions,.hf-mobile-bar{display:flex;gap:8px;flex:none}
.hd .hf-actions .btn,.hd .hf-menu-actions .btn,.hf-mobile-bar .btn{width:160px;min-height:44px;height:44px;padding:0 16px;gap:6px;font-size:14px;line-height:1.4;white-space:nowrap;flex:none;letter-spacing:.02em;box-shadow:inset 0 0 0 1px var(--ink)}
.icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:none}
.icon svg{display:block;width:100%;height:100%;stroke-width:var(--icon-stroke)}
.ct-step-sign h3{display:flex;align-items:center;gap:6px}
.ct-step-sign .icon{width:20px;height:20px}
.hf-mobile-bar{display:none}
.hd .hf-actions .btn::after,.hd .hf-menu-actions .btn::after,.hf-mobile-bar .btn::after{content:none;display:none}
.hf-B .hf-guide{background:var(--paper);color:var(--ink)}
.hf-B .hf-guide:hover{background:var(--ground)}
.ft .creed{max-width:20em}
.ft .creed .em{color:var(--accent)}
.ft-col{min-width:0}
.ft-col a{overflow-wrap:anywhere}
.ft .hf-group{position:relative;display:flex;color:#fff;background:none;transition:border-color var(--motion-mid) var(--ease-out),background-color var(--motion-mid) var(--ease-out)}
.ft .hf-group:hover{background:rgba(255,255,255,.05)}
.hf-ms-logo{display:block;width:160px;height:auto;flex:none}
.hf-group-link{text-decoration:underline;text-underline-offset:5px;font-size:14px}
.hf-group-desc{font-size:13px;line-height:1.8}
.ft .hf-group-g2{align-items:center;gap:24px;padding:14px 0}
.hf-group-g2 .hf-group-copy{display:grid;gap:12px;min-width:0}

.ft .ms-a{margin-top:0;padding-top:22px;border-top:1px solid rgba(255,255,255,.14)}
.ft .ms-a h3{display:block;margin:0 0 10px;font-family:var(--jp);font-size:12px;font-weight:500;letter-spacing:.04em;color:rgba(255,255,255,.6)}
.ft .ms-a .hf-group{gap:12px 20px;align-items:center;flex-wrap:wrap;padding:4px 0}
.ft .ms-a .hf-ms-logo{width:168px;height:auto}
.ft .ms-a .hf-group-copy{gap:6px}
.ft .ms-a .hf-group-desc{font-size:14px}
.ft .ms-a .hf-group-link{font-size:13px}
@media(max-width:600px){
 .ft .ms-a .hf-group{align-items:flex-start;flex-wrap:wrap}
}
@media(min-width:901px) and (max-width:1280px){
 .hd{padding-inline:24px;gap:16px}
 .hd nav{gap:14px;font-size:12px;letter-spacing:.02em}
 .hd .mk img{width:auto;height:40px}
 .hd .hf-actions .btn{width:140px;padding-inline:16px;font-size:13px}
}
@media(max-width:900px){
 .hd{gap:10px}
 .hd .hf-actions .btn{width:132px;padding-inline:10px;font-size:13px}
 .hd .menu{max-height:calc(100dvh - var(--hd));overflow-y:auto;overscroll-behavior:contain}
 .hd .hf-menu-actions{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .hd .hf-menu-actions .btn{width:100%;padding:0 10px;min-height:48px;height:48px;justify-content:center;border:0;font-size:13px}
 .ft .hf-group-g2{gap:20px}
 .hf-group-g2 .hf-ms-logo{width:132px}
}
@media(max-width:600px){
 .hd{padding-inline:8px;gap:6px}
 .hd .mk img{width:auto;height:40px}
 .hd .hf-actions{gap:4px}
 .hd .hf-actions .btn{width:94px;padding-inline:6px;font-size:11px;gap:0}
 .hd summary{width:32px;height:44px;margin:0}
 .hd details{flex:none}
 .hd .hf-actions .btn::after{display:none}
 .hf-B .hd{padding-inline:20px}
 
 .hf-B .hd .mk img{width:auto;height:48px;max-width:calc(100vw - 78px);object-fit:contain}
 .hf-B .hd>.hf-actions{display:none}
 .hf-B{--hf-bar-height:calc(74px + env(safe-area-inset-bottom,0px));padding-bottom:var(--hf-bar-height)}
 .hf-B .hf-mobile-bar{position:fixed;bottom:0;left:0;right:0;z-index:35;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));background:var(--ground);border-top:1px solid var(--rule)}
 .hf-mobile-bar .btn{width:100%;height:48px;min-height:48px;padding:0 10px;gap:6px;font-size:13px}
 
 .hf-B .hd .menu,.hf-B #cover-slot ~ .hd .menu{max-height:calc(100dvh - var(--hd) - var(--hf-bar-height))}
 html:has(> body.hf-B){scroll-padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}   
 .hf-B :is(a,button,summary,input,textarea,select){scroll-margin-bottom:var(--hf-bar-height)}
 .hf-group-g2 .hf-ms-logo{width:132px}
 .ft .hf-group-g2{gap:16px}
}
@media(max-width:360px){
 .hd .mk img{width:auto}
 .hd .hf-actions .btn{width:88px}
}


.ftmap-mobile{display:none}
@media(max-width:600px){
  .ftmap-mobile{display:block}
  .ft[data-ftmap="s1"] .ft-cols{display:none}
  .ft .ftmap-row{display:flex;align-items:stretch;gap:8px;margin:0;border-top:1px solid rgba(255,255,255,.2);font-family:var(--jp);font-size:15px;line-height:1.5;letter-spacing:.04em;color:#fff}
  .ftmap-row>a{display:flex;align-items:center;flex:1;min-width:0;min-height:52px;padding:10px 0;overflow-wrap:anywhere}
  .ftmap-toggle{align-items:center;justify-content:center;flex:none;width:48px;min-height:48px;margin:2px 0;padding:0;border:0;background:transparent;color:#fff;font:inherit;font-size:24px;cursor:pointer}
  .ftmap-toggle:not([hidden]){display:flex}
  .ftmap-sections{border-bottom:1px solid rgba(255,255,255,.2)}
  .ft .ftmap-panel{display:flex;flex-direction:column;gap:4px;margin:0;padding:4px 0 18px}
  .ft .ftmap-panel li{font-size:14px;line-height:1.6}
  .ft .ftmap-panel li a{display:flex;flex-direction:column;justify-content:center;min-height:44px;padding:8px 0}
  .ftmap-panel .ft-th{display:block;font-size:12.5px;line-height:1.55;color:rgba(255,255,255,.74)}
  .ftmap-ready .ftmap-panel[data-collapsed="true"]{display:none}
  .ftmap-toggle:hover{background:rgba(255,255,255,.05)}
}


.review{position:fixed;right:12px;bottom:12px;z-index:50;display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-end;
  max-width:min(640px,calc(100vw - 24px));padding:8px;background:rgba(255,255,255,.95);border:1px solid var(--rule-2);
  font-family:var(--en);font-weight:500;font-size:12px;letter-spacing:.06em;box-shadow:0 6px 18px rgba(16,25,58,.12)}
.review summary{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 6px;cursor:pointer;list-style:none;font-weight:600}
.review summary::-webkit-details-marker{display:none}
.review:not([open]){padding:0}
.review:not([open]) summary{min-width:64px;min-height:44px}
.review button,.review select{height:30px;padding:0 10px;border:1px solid var(--rule-2);background:#fff;color:var(--ink);font:inherit;cursor:pointer}
.review button[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
@media (max-width:900px){.review[open]{left:8px;right:8px;bottom:8px;max-width:none;justify-content:flex-start}}
@media print{.review{display:none}}


:root[data-cases="0"] .if-cases{display:none !important}


@media (prefers-reduced-motion:reduce){
  html.js *,html.js *::before,html.js *::after{transition:none !important;animation:none !important}
  html.js [data-land] .ln > span,html.js [data-reveal],html.js [data-stagger] > *,html.js .row .a,html.js .row .b,html.js .row .ar{opacity:1 !important;transform:none !important}
  html.js .row .ar{clip-path:none !important}
  html.js .sec::before,html.js .ph::after,html.js .eyebrow::before,html.js #axes i{transform:none !important}
  html.js [data-land]:not(.is-split){visibility:visible}
  html.js .hl{background-size:100% .5em !important}
}
:root[data-motion="off"] *,:root[data-motion="off"] *::before,:root[data-motion="off"] *::after{transition:none !important;animation:none !important}


.icon.place-icon{width:var(--place-size,24px);height:var(--place-size,24px);color:currentColor;vertical-align:-.22em;flex:none}
.place-icon svg{animation:none;transition:none}
#start .ct-hd h3,#areas .sv-ah h3{display:flex;align-items:flex-start;gap:10px}
#start .ct-hd h3 .place-icon,#areas .sv-ah h3 .place-icon{margin-top:.22em}
#start .ct-hd h3>span:last-child,#areas .sv-ah h3>span:last-child{min-width:0}
#contents .gd-map .k,#promise .gd-after-flow .k{display:flex;align-items:center;gap:8px}
#nf-routes .nf-t>.place-icon{margin-right:8px}

:is(.rb>.st,.rb-panel>.rb-pane,.bp-idx>li,.bp-sub li,.ab-steps>li,.cs-steps>li):nth-child(1),#fact{--rb-color:var(--rb1)}
:is(.rb>.st,.rb-panel>.rb-pane,.bp-idx>li,.bp-sub li,.ab-steps>li,.cs-steps>li):nth-child(2),#insight{--rb-color:var(--rb2)}
:is(.rb>.st,.rb-panel>.rb-pane,.bp-idx>li,.bp-sub li,.ab-steps>li,.cs-steps>li):nth-child(3),#who{--rb-color:var(--rb3)}
:is(.rb>.st,.rb-panel>.rb-pane,.bp-idx>li,.bp-sub li,.ab-steps>li,.cs-steps>li):nth-child(4),#how{--rb-color:var(--rb4)}
:is(.rb>.st,.rb-panel>.rb-pane,.bp-idx>li,.bp-sub li,.ab-steps>li,.cs-steps>li):nth-child(5),#number{--rb-color:var(--rb5)}
:is(.rb>.st,.rb-panel>.rb-pane,.bp-idx>li,.bp-sub li,.ab-steps>li,.cs-steps>li):nth-child(6),#team{--rb-color:var(--rb6)}
body .ft a[href$="#fact"]{--rb-color:var(--rb1)}
body .ft a[href$="#insight"]{--rb-color:var(--rb2)}
body .ft a[href$="#who"]{--rb-color:var(--rb3)}
body .ft a[href$="#how"]{--rb-color:var(--rb4)}
body .ft a[href$="#number"]{--rb-color:var(--rb5)}
body .ft a[href$="#team"]{--rb-color:var(--rb6)}


#method .rb,#bp-idx{--rb-color:var(--rb1)}
#method .rb:has(>.st:nth-child(1)[aria-selected="true"]),#bp-idx:has(>li:nth-child(1).inked){--rb-color:var(--rb1)}
#method .rb:has(>.st:nth-child(2)[aria-selected="true"]),#bp-idx:has(>li:nth-child(2).inked){--rb-color:var(--rb2)}
#method .rb:has(>.st:nth-child(3)[aria-selected="true"]),#bp-idx:has(>li:nth-child(3).inked){--rb-color:var(--rb3)}
#method .rb:has(>.st:nth-child(4)[aria-selected="true"]),#bp-idx:has(>li:nth-child(4).inked){--rb-color:var(--rb4)}
#method .rb:has(>.st:nth-child(5)[aria-selected="true"]),#bp-idx:has(>li:nth-child(5).inked){--rb-color:var(--rb5)}
#method .rb:has(>.st:nth-child(6)[aria-selected="true"]),#bp-idx:has(>li:nth-child(6).inked){--rb-color:var(--rb6)}
#method .rb::before,#method .rb::after{background-color:var(--rb-color)}
#method .rb:not(.live) .st .no{color:var(--rb-color);-webkit-text-stroke-color:var(--rb-color)}
#method .rb:not(.live) .st.here::before,#method .rb.live .st[aria-selected="true"]::before{background-color:var(--rb-color)}
#method .st.here .tag,#method .rb-pane .tag{border-top-color:var(--rb-color)}
@media (min-width:901px){
  #method .rb.live .st.past .no,#method .rb.live .st[aria-selected="true"] .no{color:var(--rb-color);-webkit-text-stroke-color:var(--rb-color)}
}
#method .rb-pane .no{-webkit-text-stroke-color:var(--rb-color);background-image:linear-gradient(var(--rb-color),var(--rb-color))}
#method .rb-pane .do::before,#method .rb-pane .rest::before{background-color:var(--rb-color)}
html:not(.js) #bp-idx .num,html.js #bp-idx li.inked .num{color:var(--rb-color);-webkit-text-stroke-color:var(--rb-color)}
body #bp-idx .ja span{background-image:linear-gradient(var(--rb-color),var(--rb-color))}
body .bp-sub a::after{background-color:var(--rb-color)}
body .bp-st .bp-mk::before,body .bp-st .bp-mk::after{background-color:var(--rb-color)}
html:not(.js) .bp-st .bp-no>span{color:var(--rb-color)}
html.js .bp-st .bp-no>span{background-image:linear-gradient(var(--rb-color),var(--rb-color))}
html.js .bp-st .bp-mk.inked .bp-no>span{-webkit-text-stroke-color:var(--rb-color)}
body .bp-st .bp-keep::before,body .bp-st .bp-keep li::before{background-color:var(--rb-color)}

body #group .ab-steps li{border-top:5px solid var(--rb-color);color:var(--ink);background:var(--paper)}
body #group .ab-steps li::before{background:none}
body #group .ab-steps .num{color:var(--ink)}

body .cs-steps>li.cs-did{--ink:var(--rb-color)}
body .cs-steps>li.cs-key{background-color:var(--rb-color)}
body .ft a:is([href$="#fact"],[href$="#insight"],[href$="#who"],[href$="#how"],[href$="#number"],[href$="#team"]){background-image:linear-gradient(var(--rb-color),var(--rb-color))}

.ph .cs-kicker{flex-wrap:wrap;row-gap:8px}
.ph .cs-kicker>.lab{flex:none}
.ph .cs-kicker>.cs-wtag{min-width:0}
#contents .gd-map .k{white-space:nowrap}
@media(max-width:900px){
  #contents .gd-map li{grid-template-columns:max-content minmax(0,1fr) minmax(0,2fr)}
}
@media(max-width:600px){
  #contents .gd-map li{grid-template-columns:max-content minmax(0,1fr)}
}



:root{
  --motion-scale:1.4;
  --motion-fast:224ms;
  --motion-mid:336ms;
  --motion-slow:588ms;
  --motion-stagger:84ms;
  --motion-delay-max:420ms;
}
html.js .sec::before,.ph::after,.eyebrow::before{transition:transform var(--motion-mid) var(--ease-out)}
#intro .eyebrow::before{transition:transform 700ms var(--ease-out)}
html.js .motion-reading [data-land]{visibility:visible!important}
html.js .motion-reading [data-land] .ln>span{transform:none!important;transition:none!important}
.motion-reading [data-land] .hl{background-size:100% .5em!important;transition:none!important}
html.js .motion-reading .ph [data-reveal]{opacity:1;transform:none;transition:none}
.motion-heading{position:relative}
.motion-heading-rule{position:absolute;left:0;bottom:-12px;width:44px;height:2px;background:var(--accent-ink);transform-origin:left;pointer-events:none}


html.js .motion-static :is([data-reveal],[data-stagger]>*),html.js .motion-static .nf-d>span,
html.js .motion-static .nf-wait,html.js .motion-static .nf-rt a>*{opacity:1!important;transform:none!important;visibility:visible!important;transition:none!important}
html.js .motion-static .nf-code,html.js .motion-static .nf-rt li{--t:1}
.motion-static .nf-code::before,.motion-static .nf-rt li::before{display:none}
.motion-static .hl{background-size:100% .5em!important;transition:none!important}


html.js #bp-idx::before,html.js #bp-idx::after,html.js .bp-mk::before,html.js .bp-mk::after{display:none}
#bp-idx>li{position:relative}
html.js #bp-idx a>*{opacity:1!important;transform:none!important;transition:none!important}
html.js #bp-idx .num{color:var(--rb-color)!important;-webkit-text-stroke-color:var(--rb-color)!important}
html.js .bp-no>span{color:var(--rb-color)!important;background:none!important;-webkit-text-stroke:0!important;transition:none!important}
html.js .bp-st [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}
html.js .bp-keep::before{transform:none!important;transition:none!important}
html.js .bp-st .hl{background-size:100% .5em!important;transition:none!important}
.motion-rb-index{position:absolute;left:0;right:0;top:0;height:2px;background:var(--rb-color);transform-origin:left;pointer-events:none}
.motion-rb-step{position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--rb-color);transform-origin:top;pointer-events:none}


.motion-story-rule{position:absolute;left:0;right:0;top:-3px;height:3px;background:var(--accent-ink);transform-origin:left;pointer-events:none}
.cs-c1-four>li:last-child .motion-story-rule{background:var(--accent)}
.cs-c1-four>li.motion-story-ready+li::before{content:none}
.motion-story-arrow{position:absolute;left:-17px;top:78px;font-size:18px;font-style:normal;color:var(--ink);line-height:inherit}
.motion-story-arrow::before{content:'→'}
@media(max-width:900px){.motion-story-arrow{left:24px;top:-23px}.motion-story-arrow::before{content:'↓'}}


html.js #group [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}
html.js .guide .cover,.guide .cover:hover{transform:none!important;transition:none!important;box-shadow:0 1px 0 var(--rule),0 30px 60px -20px rgba(16,25,58,.28)!important}
html.js .guide .sheet{transform:translate(10%,4%) rotate(2.2deg)!important;transition:none!important}
html.js .guide .sheet i{transition:none!important}
.motion-guide-rule{position:absolute;left:20px;bottom:8px;width:44px;height:1px;background:var(--rule-2);transform-origin:left;pointer-events:none}
.gd-sheet b.motion-sheet-ready::before{display:none}
.motion-sheet-rule{position:absolute;left:0;top:0;width:100%;height:1.5px;background:var(--rule-2);transform-origin:left;pointer-events:none}
.gd-sheet b:nth-child(2) .motion-sheet-rule{width:80%}
.gd-sheet b:nth-child(4) .motion-sheet-rule{width:66%}
.gd-vow .hl{background-size:100% .5em!important;transition:none!important}


.lnk,.more{position:relative;background:none;border:0;transition:none}
.lnk::before,.more::before{content:'';position:absolute;left:0;right:0;bottom:9px;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform var(--motion-mid) var(--ease-out)}
.more::before{bottom:8px}
.lnk,.more{background:linear-gradient(var(--rule-2),var(--rule-2)) 0 calc(100% - 9px)/100% 1px no-repeat}
.more{background-position:0 calc(100% - 8px)}
.btn::after,.more::after,.hd nav a::after{transition:transform var(--motion-mid) var(--ease-out)}
.btn:hover::after,.more:hover::after{transform:none}
.lnk:hover,.more:hover{background-size:100% 1px}
@media(hover:hover) and (pointer:fine){
  .btn:hover::after,.more:hover::after{transform:translateX(3px)}
  .lnk:hover::before,.more:hover::before{transform:scaleX(1)}
}
:where(a,button,summary):focus-visible,:where(a,button,summary):focus-visible::before,:where(a,button,summary):focus-visible::after{transition:none!important}
:where(a,button,summary):focus-visible *{transition:none!important}
.lnk:focus-visible::before,.more:focus-visible::before{transform:scaleX(1)}
.hd .cta::after{display:none}
.bp-sub a::after{transition-duration:var(--motion-mid)}
@media(prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){
  html.js:not([data-motion="off"]) .motion-static .nf-rt a>.nf-go{transition:transform var(--motion-mid) var(--ease-out)!important;transition-delay:0ms!important}
  html.js:not([data-motion="off"]) .motion-static .nf-rt a:hover>.nf-go{transform:translateX(3px)!important}
  html.js:not([data-motion="off"]) .motion-static .nf-rt a:focus-visible>.nf-go{transition:none!important}
}
@media(prefers-reduced-motion:reduce){
  .hd .prog,.tho-tip{display:none!important}
  .btn::after,.more::after,.nf-go,.ar-ra,.cl-go .ar{transform:none!important}
  .cl-ol a::after{transform:translateY(-50%)!important}
  html.js #intro .iv i,html.js #intro-h .fl>span,html.js #intro-h .key::after{transform:none!important}
  html.js #intro :is(.eyebrow,.intro-lede,.intro-scroll,.intro-rail b){opacity:1!important}
  html.js #intro-h .blk{color:var(--ink)!important}
  html.js .row .b{color:var(--ink)!important}
  html.js .row .b .em{color:var(--accent-ink)!important}
}
:root[data-motion="off"] .hd .prog,:root[data-motion="off"] .tho-tip{display:none!important}
:root[data-motion="off"] .btn::after,:root[data-motion="off"] .more::after,:root[data-motion="off"] .nf-go,:root[data-motion="off"] .ar-ra{transform:none!important}
:root[data-motion="off"] .cl-ol a::after{transform:translateY(-50%)!important}
:root[data-motion="off"] [data-land]{visibility:visible!important}
:root[data-motion="off"] [data-land] .ln>span,:root[data-motion="off"] [data-reveal],:root[data-motion="off"] [data-stagger]>*{opacity:1!important;transform:none!important}
:root[data-motion="off"] .row .b{color:var(--ink)!important}
:root[data-motion="off"] .row .b .em{color:var(--accent-ink)!important}
:root[data-motion="off"] #intro .iv i,:root[data-motion="off"] #intro-h .fl>span,:root[data-motion="off"] #intro-h .key::after{transform:none!important}
:root[data-motion="off"] #intro :is(.eyebrow,.intro-lede,.intro-scroll,.intro-rail b){opacity:1!important}
:root[data-motion="off"] #intro-h .blk{color:var(--ink)!important}





.ind-block{position:relative;margin-top:64px;padding-top:32px;border-top:1px solid var(--rule-2);min-width:0;max-width:100%;color:var(--ink)}
.ind-title{margin:0;font-size:clamp(23px,2.3vw,32px);line-height:1.5;letter-spacing:.02em;font-weight:700;overflow-wrap:anywhere}
.ind-lead{margin:20px 0 0;max-width:62em;font-size:16px;line-height:1.9}
.ind-legend{display:flex;flex-wrap:wrap;gap:8px 28px;margin:24px 0 18px;color:var(--ink-2);font-size:13px;line-height:1.8}
.ind-legend>span{min-width:0}
.ind-legend .ind-legend-symbol{display:inline-block;width:1.5em;margin-right:4px;text-align:center;font-weight:700}
.ind-legend-symbol.is-main{background:var(--ink);color:var(--paper)}
.ind-legend-symbol.is-often{background:var(--accent);color:var(--ink)}
.ind-table{width:100%;max-width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px;line-height:1.75;letter-spacing:.01em}
.ind-table .ind-industry-col{width:21%}
.ind-table .ind-wall-col{width:5.5%}
.ind-table .ind-description-col{width:46%}
.ind-table th,.ind-table td{padding:11px 8px;border-bottom:1px solid var(--rule);vertical-align:middle;overflow-wrap:anywhere}
.ind-table thead{background:var(--ink);color:var(--paper)}
.ind-table thead th{text-align:center;font-weight:700;font-size:13px}
.ind-table thead th:first-child,.ind-table thead th:last-child{text-align:left}
.ind-table tbody th{text-align:left;font-weight:500}
.ind-table .ind-wall-cell{text-align:center}
.ind-mark{display:inline-flex;width:100%;max-width:36px;height:28px;align-items:center;justify-content:center;vertical-align:middle;background:#E7E6E0;color:var(--ink-2);font-size:16px;font-weight:700;line-height:1}
.ind-mark.is-main{background:var(--ink);color:var(--paper)}
.ind-mark.is-often{background:var(--accent);color:var(--ink)}
.ind-mobile-wall{display:none}
.ind-source{margin:22px 0 0;font-size:12px;line-height:1.85;color:var(--ink-2);overflow-wrap:anywhere}

.ind-table tfoot td.ind-source{padding:14px 10px 4px;margin:0;text-align:left;font-weight:400;border-top:1px solid var(--rule-2);border-bottom:0}
html.js .ind-industry[data-expanded="false"] .ind-table tfoot{display:none}
html.js .ind-table tbody tr[hidden]{display:none}
.ind-controls{display:none;position:relative;justify-content:center;min-width:0;padding:50px 0 24px}
html.js .ind-industry[data-expanded] .ind-controls{display:flex}
.ind-industry[data-expanded="true"] .ind-controls{padding-top:20px}
.ind-action{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:12px;box-sizing:border-box;min-height:48px;max-width:100%;padding:12px 20px;border:0;border-radius:0;box-shadow:inset 0 0 0 1px var(--ink);background:var(--paper);color:var(--ink);font-family:inherit;font-size:15px;font-weight:500;line-height:1.5;letter-spacing:.02em;overflow-wrap:anywhere;cursor:pointer}
.ind-action[hidden]{display:none}
.ind-action .ind-label{min-width:0}
.ind-sign{flex:none;font-size:20px;line-height:1}
.ind-action:focus-visible{outline:3px solid var(--accent-ink);outline-offset:4px}
@media(hover:hover){.ind-action:hover{background:var(--ground)}}
@media(forced-colors:active){.ind-action{border:1px solid ButtonText;box-shadow:none}}

.ind-teaser-fade{position:absolute;inset:0 0 auto;height:68px;overflow:hidden;pointer-events:none}
.ind-teaser-fade::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent,var(--ground) 90%)}
.ind-ghost-row{display:grid;grid-template-columns:21% 33% 46%;align-items:center;height:32px;filter:blur(2px);opacity:.5}
.ind-ghost-line{display:block;width:66%;height:7px;margin-left:8px;background:color-mix(in srgb,var(--ink) 22%,var(--ground))}
.ind-ghost-marks{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:0 8px}
.ind-ghost-marks>i{height:18px;background:var(--ground)}
.ind-ghost-marks>.is-main{background:var(--ink)}
.ind-ghost-marks>.is-often{background:var(--accent)}
.ind-industry[data-expanded="true"] .ind-teaser-fade{display:none}
@media(max-width:900px){
  .ind-block{margin-top:44px;padding-top:24px}
  .ind-title{font-size:23px}
  .ind-lead{font-size:15px;line-height:1.85}
  .ind-legend{display:block;font-size:12px;margin:22px 0 18px}
  .ind-legend>span{display:block;margin-top:6px}
  .ind-table{display:block;font-size:14px}
  .ind-table colgroup{display:none}
  .ind-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .ind-table tbody{display:block;width:100%}
  .ind-table tfoot,.ind-table tfoot tr,.ind-table tfoot td{display:block;width:100%}
  .ind-table tfoot td.ind-source{padding:14px 0 4px}
  .ind-table tbody tr{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0 4px;min-width:0;padding:18px 0 20px;border-top:1px solid var(--rule-2)}
  .ind-table tbody th,.ind-table tbody td{display:block;min-width:0;padding:0;border:0}
  .ind-table tbody th{grid-column:1 / -1;font-size:16px;font-weight:700;margin-bottom:14px}
  .ind-table .ind-description{grid-column:1 / -1;margin-top:16px;line-height:1.85}
  .ind-mobile-wall{display:block;margin-bottom:6px;font-size:12px;line-height:1.4;font-weight:500;color:var(--ink-2)}
  .ind-mark{width:28px;height:28px}
  .ind-source{margin-top:8px;font-size:12px}
}
@media(max-width:700px){
  .ind-action{width:100%}
  .ind-ghost-row{grid-template-columns:1fr}
  .ind-ghost-line{display:none}
  .ind-ghost-marks{padding:0;gap:4px}
  .ind-ghost-marks>i{width:28px;justify-self:center}
}
