@font-face{font-family:Bricolage Fallback;src:local(Arial Bold),local(Arial-BoldMT);font-weight:700 900;size-adjust:92%}@font-face{font-family:Figtree Fallback;src:local(Arial);font-weight:300 600;size-adjust:98.7%}@font-face{font-family:Figtree Fallback;src:local(Arial Bold),local(Arial-BoldMT);font-weight:700 900;size-adjust:96%}:root{--paper:#fff;--card:#fff;--soft:#f4f6fa;--soft2:#ebeff7;--ink:#0e1a36;--muted:#52607d;--line:#e2e6ef;--line2:#c9d0df;--night:#0a1430;--night2:#0f1d44;--night3:#16285c;--navy:#13265c;--on-navy:#fff;--navy-ink:#13265c;--navy-soft:#dce3f2;--red:#d8262c;--cta:#d8262c;--cta-hover:#be1d23;--on-cta:#fff;--blush:#f6c9cb;--gold:#d9a441;--gold-soft:#f6e7c4;--ok:#1b7f4b;--ok-soft:#ddf3e7;--err:#b3261e;--on-dark:#fff;--on-dark-2:#ffffffb8;--on-dark-3:#ffffff24;--f-display:"Bricolage Grotesque","Bricolage Fallback",system-ui,-apple-system,"Segoe UI",sans-serif;--f-jp:"Zen Kaku Gothic New","Hiragino Sans","Yu Gothic",sans-serif;--f-body:"Figtree","Figtree Fallback",system-ui,-apple-system,"Segoe UI",sans-serif;--f-mono:"JetBrains Mono",ui-monospace,Menlo,monospace;--r:18px;--r-lg:26px;--rb:14px;--gutter:clamp(16px,4vw,48px);color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{background:var(--paper);color:var(--ink);font-family:var(--f-body);padding-inline:var(--gutter);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}.wrap{max-width:1180px;margin-inline:auto}h1,h2,h3,h4{font-family:var(--f-display);text-wrap:balance;letter-spacing:-.03em;font-optical-sizing:auto;margin:0;font-weight:800;line-height:1.06}h1{font-size:clamp(2.3rem,6vw,4.3rem)}h2{font-size:clamp(1.8rem,3.8vw,2.9rem)}h3{font-size:1.2rem}p{margin:0}a{color:inherit}img,svg{max-width:100%}:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}[hidden]{display:none!important}.jp{font-family:var(--f-jp)}.skip{position:absolute;left:-9999px}.skip:focus{z-index:50;background:var(--card);border-radius:10px;padding:.5rem 1rem;top:1rem;left:1rem}.btn{border-radius:var(--rb);min-height:50px;font:700 .95rem var(--f-body);letter-spacing:.01em;cursor:pointer;white-space:nowrap;border:1.5px solid #0000;justify-content:center;align-items:center;gap:.6rem;padding:.7rem 1.5rem;text-decoration:none;transition:transform .15s,background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn .arr{transition:transform .2s;display:inline-block}.btn:hover .arr{transform:translate(4px)}.btn-primary{background:var(--cta);color:var(--on-cta);box-shadow:0 8px 24px -10px #d8262cb3}.btn-primary:hover{background:var(--cta-hover)}.btn-ghost{color:var(--navy-ink);border-color:var(--navy-ink);background:0 0}.btn-ghost:hover{background:var(--navy);color:var(--on-navy)}.btn-light{color:var(--on-dark);background:0 0;border-color:#ffffff73}.btn-sm{min-height:42px;padding:.4rem 1.1rem;font-size:.88rem}header.top{--hh:68px;z-index:20;padding-inline:var(--gutter);background:0 0;border-bottom:1px solid #0000;transition:background .25s,border-color .25s,box-shadow .25s;position:fixed;top:0;left:0;right:0}header.top:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#070f248c,#070f2400);transition:opacity .25s;position:absolute;inset:0 0 -26px}header.top.scrolled{-webkit-backdrop-filter:saturate(1.4)blur(10px);border-bottom-color:var(--line);background:#fffffff0;box-shadow:0 6px 24px -18px #0a143080}header.top.scrolled:before{opacity:0}header.top:not(.scrolled) .logo img{box-sizing:border-box;background:#fff;width:44px;height:44px;padding:3px}header.top:not(.scrolled) .logo b{color:#fff}header.top:not(.scrolled) .logo small{color:#ffffffbf}header.top:not(.scrolled) nav a{color:#ffffffdb}header.top:not(.scrolled) nav a:hover,header.top:not(.scrolled) nav a[aria-current=page]{color:#fff}header.top:not(.scrolled) .menu summary{color:#fff;border-color:#ffffffb3}.bar{align-items:center;gap:1.4rem;max-width:1180px;margin-inline:auto;padding-block:.6rem;display:flex}.logo{align-items:center;gap:.7rem;text-decoration:none;display:flex}.logo img{object-fit:contain;border-radius:50%;width:40px;height:40px;display:block}.logo b{font:800 1.2rem var(--f-display);letter-spacing:-.03em;color:var(--navy-ink);line-height:1.1;display:block}.logo small{font:500 .62rem var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);line-height:1.3;display:block}nav{gap:1.6rem;margin-left:auto;font-size:.9rem;font-weight:600;display:flex}nav a{color:var(--muted);padding-block:.3rem;text-decoration:none;transition:color .15s;position:relative}nav a:after{content:"";background:var(--red);transform-origin:0;height:2px;transition:transform .25s;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}nav a:hover,nav a[aria-current=page]{color:var(--navy-ink)}nav a:hover:after,nav a[aria-current=page]:after{transform:scaleX(1)}.menu{display:none;position:relative}.menu summary{cursor:pointer;border:1.5px solid var(--navy-ink);min-height:42px;color:var(--navy-ink);border-radius:12px;align-items:center;gap:.5rem;padding:.4rem 1rem;font-size:.88rem;font-weight:700;list-style:none;display:flex}.menu summary::-webkit-details-marker{display:none}.menu ul{z-index:6;background:var(--card);border:1px solid var(--line);border-radius:16px;min-width:210px;margin:0;padding:.5rem;list-style:none;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 24px 48px -20px #0a143073}.menu li a{color:var(--navy-ink);border-radius:10px;padding:.65rem .85rem;font-weight:600;text-decoration:none;display:block}.menu li a:hover{background:var(--soft)}@media (width<=860px){nav{display:none}.menu{margin-left:auto;display:block}}@media (width<=520px){.bar{gap:.7rem}.logo small{display:none}.bar .btn{padding-inline:1rem}}.s{padding-block:clamp(4rem,9vw,7rem);position:relative}.s-dark{background:var(--night);color:var(--on-dark);margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter)}.s-soft{background:var(--soft);margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter)}.s-dark h2,.s-dark h3{color:#fff}.s-dark p{color:var(--on-dark-2)}.eyebrow{font:500 .72rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--red);align-items:center;gap:.5rem;display:inline-flex}.s-dark .eyebrow{color:var(--gold)}.eyebrow .jp{letter-spacing:.1em;text-transform:none;font-size:.9rem}.sec-head{gap:1rem;max-width:62ch;margin-bottom:clamp(2rem,5vw,3.4rem);display:grid}.sec-head p{color:var(--muted);font-size:1.06rem}.s-dark .sec-head p{color:var(--on-dark-2)}.sec-head.center{text-align:center;justify-items:center;margin-inline:auto}[data-reveal]{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0)*80ms);transform:translateY(22px)}[data-reveal].in,.no-js [data-reveal]{opacity:1;transform:none}.spot{position:relative;overflow:hidden}.spot:before{content:"";background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),#d8262c1a,transparent 42%);opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.spot:hover:before{opacity:1}.s-dark .spot:before{background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),#d9a44129,transparent 42%)}.hero{margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter);background:var(--night);color:#fff;isolation:isolate;position:relative;overflow:hidden}.hero-photo{object-fit:cover;z-index:-2;width:100%;height:100%;display:block;position:absolute;inset:0}.hero-shade{z-index:-1;background:linear-gradient(90deg,#070f24e6 0%,#070f24b8 42%,#070f244d 70%,#070f2400 100%),linear-gradient(#070f2400 60%,#070f2499 100%);position:absolute;inset:0}.hero.no-photo .hero-shade{background:linear-gradient(120deg,var(--night),var(--night3))}.hero-grid{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem;min-height:clamp(600px,86vh,800px);padding-block:calc(68px + clamp(2.5rem,6vw,4.5rem)) clamp(2.5rem,5vw,4rem);display:grid}.hero .eyebrow{color:var(--gold)}.hero h1{color:#fff;text-shadow:0 2px 28px #070f2473;max-width:none;margin-top:1rem;font-size:clamp(2rem,5.2vw,4.5rem);line-height:1.04}.hero h1 .h1-2{display:block}.hero h1 mark{background:var(--red);color:#fff;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.16em;padding:0 .18em}.hero .lead{color:#ffffffe0;max-width:50ch;margin-top:1.3rem;font-size:clamp(1.02rem,1.5vw,1.2rem)}.cta-row{flex-wrap:wrap;gap:.8rem;margin-top:1.8rem;display:flex}.hero-facts{color:#ffffffd1;flex-wrap:wrap;gap:.4rem 1.6rem;margin:1.8rem 0 0;padding:0;font-size:.88rem;list-style:none;display:flex}.hero-facts li{align-items:center;gap:.55rem;display:flex}.hero-facts li:before{content:"";background:var(--gold);width:7px;height:7px;transform:rotate(45deg)}.hero-chips{align-self:end;justify-items:end;gap:.7rem;display:grid}.chip-f{-webkit-backdrop-filter:blur(12px);color:#fff;background:#ffffff24;border:1px solid #ffffff4d;border-radius:16px;gap:.1rem;min-width:150px;padding:.7rem 1.1rem;font-size:.82rem;display:grid}.chip-f b{font:800 1.1rem var(--f-display)}.chip-f .mono{color:#ffffffbf}.btn-light{color:#fff;backdrop-filter:blur(6px);background:#ffffff1a;border-color:#fff9}.btn-light:hover{color:var(--night);background:#fff}@media (width<=900px){.hero-photo{height:calc(78vw + 90px);bottom:auto;object-position:54% 62%!important}.hero-shade{background:linear-gradient(180deg,#070f2440 0%,#070f2400 25%,#070f248c calc(78vw - 20px),var(--night) calc(78vw + 90px))}.hero-grid{grid-template-columns:1fr;align-items:start;min-height:0;padding-top:calc(78vw - 10px);padding-bottom:2.5rem}.hero-chips{display:none}}.marquee{backdrop-filter:blur(8px);color:#fff;margin-inline:calc(-1*var(--gutter));background:#070f24c7;padding-block:.9rem;overflow:hidden}.marquee .t{width:max-content;font:700 1.4rem var(--f-jp);gap:2.4rem;animation:40s linear infinite slide;display:flex}.marquee .t span{white-space:nowrap}.marquee .t span:after{content:"◆";color:var(--gold);margin-left:2.4rem;font-size:.7em}@keyframes slide{to{transform:translate(-50%)}}@keyframes rise{0%{transform:translateY(18px)}}.hero-in{animation:.8s cubic-bezier(.2,.7,.2,1) both rise;animation-delay:calc(var(--i,0)*70ms)}@media (width<=900px){.hero-grid{grid-template-columns:1fr}.collage{max-width:380px}}@media (prefers-reduced-motion:reduce){.marquee .t,.hero-in{animation:none}[data-reveal]{opacity:1;transition:none;transform:none}html{scroll-behavior:auto}.btn,.btn .arr{transition:none}}.strip{background:var(--soft);margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter);border-bottom:1px solid var(--line)}.strip-in{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));max-width:1180px;margin-inline:auto;display:grid}.strip-in>div{border-left:1px solid var(--line);gap:.15rem;padding:1.3rem 1.4rem;display:grid}.strip-in>div:first-child{border-left:0;padding-left:0}.strip-in b{font:800 1.2rem var(--f-display);letter-spacing:-.03em;color:var(--ink)}.strip-in span{color:var(--muted);font-size:.84rem}@media (width<=700px){.strip-in>div{border-left:0;border-top:1px solid var(--line);padding-left:0}.strip-in>div:first-child{border-top:0}}.bleed{margin-inline:calc(-1*var(--gutter));background:var(--night);color:#fff;isolation:isolate;align-items:flex-end;height:clamp(340px,44vw,560px);display:flex;position:relative;overflow:hidden}.bleed.tall{height:clamp(420px,52vw,660px)}.bleed>img,.bleed>video{object-fit:cover;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.bleed:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#070f24cc 0%,#070f2466 50%,#070f2400 85%),linear-gradient(#070f2400 50%,#070f2499);position:absolute;inset:0}.bleed.plain{background:linear-gradient(120deg,var(--night),var(--night3))}.bleed-in{gap:.6rem;width:100%;max-width:1180px;padding-block:clamp(1.6rem,4vw,3.2rem);display:grid}.bleed-in>*{max-width:34rem}.bleed .jp{font:800 clamp(1.5rem,3.6vw,2.9rem)/1.25 var(--f-jp)}.bleed small{font:500 .74rem var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.bleed p:last-child{color:#ffffffdb;font-size:1rem}#suasana .bleed-in>*{max-width:44rem}@media (width<=700px){.bleed:after{background:linear-gradient(#070f2433 0%,#070f2459 40%,#070f24d9 100%)}}.mosaic{grid-template-rows:repeat(2,clamp(180px,20vw,280px));grid-template-columns:1fr 1.2fr 1.2fr 1fr;gap:.9rem;display:grid}.tile{border-radius:var(--r-lg);background:var(--soft2);min-width:0;margin:0;position:relative;overflow:hidden}.tile img{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.tile:hover img{transform:scale(1.05)}.tile:after{content:"";pointer-events:none;background:linear-gradient(#070f2400 45%,#070f24b8);position:absolute;inset:0}.tile figcaption{z-index:1;color:#fff;gap:.1rem;font-size:.88rem;font-weight:600;display:grid;position:absolute;bottom:.9rem;left:1rem;right:1rem}.tile figcaption .mono{color:var(--gold);font-size:.66rem}.tile:first-child{grid-area:1/1/3}.tile:nth-child(2){grid-area:1/2}.tile:nth-child(3){grid-area:1/3}.tile:nth-child(4){grid-area:2/2/auto/4}.tile:nth-child(5){grid-area:1/4/3}@media (width<=700px){.mosaic{grid-template-rows:none;grid-template-columns:1fr 1fr;grid-auto-rows:150px}.tile:first-child{grid-area:span 2/1}.tile:nth-child(2),.tile:nth-child(3){grid-area:auto/2}.tile:nth-child(4),.tile:nth-child(5){grid-area:auto/1/auto/3}}.about{grid-template-columns:1fr 1fr;align-items:stretch;gap:clamp(2rem,5vw,5rem);display:grid}.about>div{flex-direction:column;display:flex}.about>div:first-child .vm{margin-top:auto;padding-top:2rem}@media (width>=901px){.about>div+div .gc{flex:1;grid-auto-rows:1fr}}@media (width<=900px){.about{grid-template-columns:1fr}}.statement{font:600 clamp(1.5rem,3vw,2.3rem)/1.25 var(--f-display);color:var(--navy-ink);letter-spacing:-.01em}.statement em{color:var(--red);font-style:normal}.quote{border-left:3px solid var(--gold);background:var(--soft);border-radius:0 var(--r) var(--r) 0;margin-top:2rem;padding:1.4rem 1.5rem}.quote .jp{color:var(--navy-ink);font-size:clamp(1.3rem,2.4vw,1.7rem);font-weight:700;line-height:1.4}.quote small{font:500 .72rem var(--f-mono);letter-spacing:.06em;color:var(--red);margin-top:.3rem;display:block}.quote p{color:var(--muted);margin-top:.8rem;font-size:.95rem}.vm{gap:1rem;margin-top:2rem;display:grid}.vm div{border-left:2px solid var(--line2);padding-left:1.1rem}.vm h3{font-size:.78rem;font:500 .74rem var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:.3rem}.vm p{color:var(--muted);font-size:.98rem}.gc{gap:.9rem;display:grid}.gc-item{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);grid-template-columns:auto 1fr;gap:1.1rem;padding:1.3rem 1.4rem;transition:border-color .2s,transform .2s,box-shadow .2s;display:grid}.gc-item:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 18px 40px -26px #0a143080}.gc-item .k{width:54px;height:54px;font:700 .72rem var(--f-mono);letter-spacing:.1em;color:var(--navy-ink);background:radial-gradient(circle at 30% 30%,var(--gold-soft),var(--gold));border-radius:50%;flex:none;place-items:center;display:grid}.gc-item h3{margin-bottom:.2rem;font-size:1.05rem}.gc-item p{color:var(--muted);font-size:.95rem}.values{flex-wrap:wrap;gap:.6rem;margin-top:1.4rem;display:flex}.values span{border:1.5px solid var(--navy-ink);color:var(--navy-ink);border-radius:999px;padding:.45rem 1.1rem;font-size:.86rem;font-weight:700}.promise{background:var(--navy);border-radius:var(--r-lg);color:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 2rem;margin-top:clamp(2rem,4vw,3rem);padding:1.6rem clamp(1.2rem,3vw,2.2rem);display:flex}.promise b{font:500 .72rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.promise p{font:600 clamp(1.15rem,2.2vw,1.5rem)/1.3 var(--f-display);color:#fff}.ocha{grid-template-columns:minmax(280px,.8fr) 1.2fr;align-items:stretch;gap:clamp(1.5rem,4vw,3.5rem);display:grid}.ocha>div:first-child{flex-direction:column;display:flex}@media (width<=900px){.ocha{grid-template-columns:1fr}}.otiles{grid-template-columns:1fr 1fr;gap:.8rem;max-width:440px;display:grid;position:relative}.otile .t{display:none}@media (width>=901px){.otiles{flex:1;grid-auto-rows:1fr;max-width:none}.otile .t{color:var(--on-dark-2);font-size:.84rem;line-height:1.45;display:block}.otile[aria-selected=true] .t{color:#ffffffeb}}.otile{all:unset;box-sizing:border-box;cursor:pointer;border-radius:var(--r-lg);border:1px solid var(--on-dark-3);background:#ffffff0a;align-content:space-between;gap:.4rem;min-height:132px;padding:1.1rem 1.1rem 1rem;transition:background .25s,border-color .25s,transform .25s;display:grid}.otile:hover{border-color:#fff6;transform:translateY(-3px)}.otile .l{font:800 3rem/1 var(--f-display);color:#ffffff59;transition:color .25s}.otile span:last-child{color:var(--on-dark-2);font-size:.76rem;line-height:1.35}.otile[aria-selected=true]{background:linear-gradient(160deg,var(--red),#a81b21);border-color:#0000;box-shadow:0 24px 50px -24px #d8262ce6}.otile[aria-selected=true] .l{color:#fff}.otile[aria-selected=true] span:last-child{color:#ffffffe6}.otile:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.ohub{background:var(--night);border:1.5px solid var(--gold);width:84px;height:84px;font:800 .95rem var(--f-display);letter-spacing:.08em;color:#fff;pointer-events:none;box-shadow:0 0 0 6px var(--night);border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.opanel{border:1px solid var(--on-dark-3);border-radius:var(--r-lg);background:linear-gradient(#ffffff0f,#ffffff05);min-height:100%;padding:clamp(1.3rem,3vw,2.2rem)}.opanel[data-swap]{animation:.45s swap}@keyframes swap{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.opanel .key{font:500 .72rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.opanel h3{margin:.4rem 0 .3rem;font-size:clamp(1.4rem,2.6vw,1.9rem)}.opanel .tag{font:600 1.05rem var(--f-display);color:#fff;font-style:italic}.opanel .intro{margin-top:.7rem;font-size:.96rem}.blocks{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;margin-top:1.5rem;display:grid}@media (width>=901px){.opanel{flex-direction:column;display:flex}.opanel .blocks{flex:1}}.blk{border:1px solid var(--on-dark-3);border-radius:var(--r);background:#ffffff08;padding:1rem 1.1rem}.blk h4{font:600 .8rem var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:#fff;margin-bottom:.5rem}.blk ul{color:var(--on-dark-2);gap:.3rem;margin:0;padding:0;font-size:.9rem;list-style:none;display:grid}.blk li{padding-left:1rem;position:relative}.blk li:before{content:"";background:var(--gold);width:5px;height:5px;position:absolute;top:.62em;left:0;transform:rotate(45deg)}.flow{flex-wrap:wrap;align-items:center;gap:.4rem .5rem;margin-top:1.4rem;display:flex}.flow span{color:#fff;border:1px solid #ffffff4d;border-radius:999px;padding:.35rem .85rem;font-size:.8rem;font-weight:600}.flow i{color:var(--gold);font-style:normal}.opanel .foot{border-top:1px solid var(--on-dark-3);margin-top:1.4rem;padding-top:1rem;font-size:.92rem}.opanel .foot b{font:500 .7rem var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:.2rem;display:block}.px{gap:1.6rem;display:grid}.px-path{scrollbar-width:thin;gap:0;padding:.3rem 0 .8rem;display:flex;overflow-x:auto}.node{all:unset;box-sizing:border-box;cursor:pointer;text-align:center;flex:1 0 auto;justify-items:center;gap:.5rem;min-width:104px;padding:.2rem .6rem;display:grid;position:relative}.node:before{content:"";background:var(--line2);height:2px;position:absolute;top:22px;left:-50%;right:50%}.node:first-child:before{display:none}.node .dot{z-index:1;background:var(--paper);border:2px solid var(--line2);width:46px;height:46px;font:700 .85rem var(--f-display);color:var(--muted);border-radius:50%;place-items:center;transition:all .25s;display:grid;position:relative}.node small{color:var(--muted);font-size:.74rem;font-weight:600;line-height:1.25}.node:hover .dot{border-color:var(--navy-ink);color:var(--navy-ink)}.node[aria-selected=true] .dot{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 0 0 6px var(--navy-soft)}.node[aria-selected=true] small{color:var(--navy-ink)}.node.past:before,.node[aria-selected=true]:before{background:var(--navy)}.node:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.px-body{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);grid-template-columns:1fr 1.05fr;gap:0;display:grid;overflow:hidden;box-shadow:0 30px 60px -40px #0a14308c}@media (width<=860px){.px-body{grid-template-columns:1fr}}.px-info{background:linear-gradient(160deg,var(--night2),var(--night));color:#fff;align-content:start;gap:1rem;padding:clamp(1.4rem,3vw,2.2rem);display:grid}.px-info .eyebrow{color:var(--gold)}.px-info h3{color:#fff;font-size:clamp(1.6rem,3vw,2.2rem)}.px-info p{color:var(--on-dark-2);font-size:.96rem}.facts{grid-template-columns:1fr 1fr;gap:.7rem;margin:.4rem 0 0;display:grid}.facts div{border:1px solid var(--on-dark-3);background:#ffffff0a;border-radius:12px;padding:.8rem .9rem}.facts dt{font:500 .66rem var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark-2)}.facts dd{font:700 1.15rem var(--f-display);color:#fff;margin:.15rem 0 0}.px-price{align-content:start;gap:1.1rem;padding:clamp(1.4rem,3vw,2.2rem);display:grid}.ctl{gap:.45rem;display:grid}.ctl>b{font:500 .68rem var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.seg{flex-wrap:wrap;gap:.4rem;display:flex}.seg button{all:unset;box-sizing:border-box;cursor:pointer;border:1.5px solid var(--line2);color:var(--muted);border-radius:10px;padding:.5rem 1.05rem;font-size:.88rem;font-weight:700;transition:all .2s}@media (hover:hover){.seg button:hover:not(:disabled):not([aria-pressed=true]){border-color:var(--navy-ink);color:var(--navy-ink)}}.seg button[aria-pressed=true],.seg button[aria-pressed=true]:hover,.seg button[aria-pressed=true]:focus{background:var(--navy);border-color:var(--navy);color:#fff}.seg button:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}.seg button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.priceblock{border-radius:var(--r);background:var(--soft);border:1px solid var(--line);gap:.25rem;padding:1.2rem 1.3rem;transition:opacity .2s;display:grid}.priceblock .was{color:var(--muted);font-size:.9rem;text-decoration:line-through}.priceblock .now{font:800 clamp(2rem,4vw,2.8rem)/1.05 var(--f-display);color:var(--navy-ink)}.priceblock .save{background:var(--gold-soft);color:#7a5410;width:fit-content;font:700 .76rem var(--f-body);border-radius:999px;padding:.2rem .7rem;display:inline-flex}.pm{grid-template-columns:1fr 1fr;gap:.7rem;display:grid}.pm div{border:1px solid var(--line);border-radius:12px;padding:.75rem .9rem}.pm dt{font:500 .64rem var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.pm dd{color:var(--ink);margin:.1rem 0 0;font-weight:700}.px-note{color:var(--muted);font-size:.84rem}.px-actions{flex-wrap:wrap;gap:.7rem;display:flex}.fade{opacity:.35}.tbl-wrap{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card);overflow-x:auto}table.tbl{border-collapse:collapse;width:100%;min-width:760px;font-size:.9rem}.tbl th{text-align:left;background:var(--night);color:#fff;font:500 .68rem var(--f-mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;padding:.85rem 1rem;position:sticky;top:0}.tbl td{border-top:1px solid var(--line);white-space:nowrap;padding:.8rem 1rem}.tbl tr.grp td{background:var(--soft2);font:700 .95rem var(--f-display);color:var(--navy-ink);padding-block:.7rem}.tbl td.num{text-align:right;font-variant-numeric:tabular-nums}.tbl td.strong{color:var(--navy-ink);font-weight:700}.tbl .na{color:var(--line2)}.journey{--p:0;counter-reset:j;grid-template-columns:repeat(5,1fr);gap:1.2rem;display:grid;position:relative}.journey:before{content:"";background:var(--line2);height:2px;position:absolute;top:27px;left:10%;right:10%}.journey:after{content:"";background:var(--red);width:80%;height:2px;transform:scaleX(var(--p));transform-origin:0;transition:transform .15s linear;position:absolute;top:27px;left:10%}.jstep{text-align:center;justify-items:center;gap:.7rem;padding-inline:.4rem;display:grid;position:relative}.jstep .n{z-index:1;background:var(--paper);border:2px solid var(--line2);width:56px;height:56px;font:800 1.15rem var(--f-display);color:var(--muted);border-radius:50%;place-items:center;transition:all .35s;display:grid;position:relative}.jstep.on .n{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 0 0 7px #d8262c24}.jstep h3{font-size:1.02rem}.jstep p{color:var(--muted);max-width:22ch;font-size:.88rem}.jstep .kj{font:700 1.3rem var(--f-jp);color:var(--line2);transition:color .35s}.jstep.on .kj{color:var(--gold)}@media (width<=760px){.journey{grid-template-columns:1fr;gap:1.6rem;padding-left:.2rem}.journey:before{width:2px;height:auto;inset:20px auto 20px 27px}.journey:after{width:2px;height:auto;transform:scaleY(var(--p));transform-origin:top;top:20px;bottom:20px;left:27px}.jstep{text-align:left;grid-template-columns:56px 1fr;justify-items:start;gap:.1rem 1rem}.jstep .n{grid-row:1/4}.jstep p{max-width:none}.jstep .kj{display:none}}.ptband{border-radius:var(--r-lg);background:linear-gradient(120deg,var(--night),var(--night3));color:#fff;grid-template-columns:1.2fr .8fr;align-items:center;gap:2rem;padding:clamp(2rem,5vw,3.6rem);display:grid;position:relative;overflow:hidden}.ptband:before{content:"試";font:800 17rem/1 var(--f-jp);color:#ffffff0d;pointer-events:none;position:absolute;bottom:-3.5rem;right:-1rem}.ptband h2{color:#fff}.ptband p{color:var(--on-dark-2);max-width:52ch;margin-top:.8rem}.ptband .lv{flex-wrap:wrap;gap:.5rem;margin-top:1.4rem;display:flex}.ptband .lv span{font:700 .82rem var(--f-display);border:1px solid #ffffff4d;border-radius:999px;padding:.3rem .9rem}.ptband .go{z-index:1;gap:.8rem;display:grid;position:relative}@media (width<=860px){.ptband{grid-template-columns:1fr}}.vocab{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem;display:grid}.word{all:unset;box-sizing:border-box;cursor:pointer;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card);align-content:space-between;gap:.25rem;min-height:128px;padding:1.2rem 1.3rem;transition:border-color .2s,transform .2s,background .2s;display:grid;position:relative}.word:hover{border-color:var(--navy-ink);transform:translateY(-3px)}.word b{font:700 1.5rem var(--f-jp);color:var(--navy-ink);overflow-wrap:anywhere}.word i{font:500 .78rem var(--f-mono);color:var(--red);font-style:normal}.word span{color:var(--muted);opacity:0;max-height:0;font-size:.92rem;transition:max-height .3s,opacity .3s;overflow:hidden}.word[aria-pressed=true]{background:var(--navy);border-color:var(--navy)}.word[aria-pressed=true] b{color:#fff}.word[aria-pressed=true] i{color:var(--gold)}.word[aria-pressed=true] span{opacity:1;color:#ffffffd9;max-height:4rem}.word:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.faq{grid-template-columns:1fr 1fr;align-items:start;gap:.6rem 1rem;display:grid}.faq-col{align-content:start;gap:.6rem;min-width:0;display:grid}@media (width<=860px){.faq{grid-template-columns:1fr}}.faq details{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding-inline:1.3rem;transition:border-color .2s,box-shadow .2s}.faq details[open]{border-color:var(--navy-ink);box-shadow:0 16px 36px -28px #0a143099}.faq summary{cursor:pointer;color:var(--navy-ink);justify-content:space-between;gap:1rem;padding:1.05rem 0;font-weight:700;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font:400 1.5rem/1 var(--f-display);color:var(--red);transition:transform .25s}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{color:var(--muted);max-width:66ch;padding-bottom:1.2rem}.menu{background:0 0;border:0;padding:0}.form-wrap{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(1.5rem,5vw,4.5rem);display:grid}@media (width<=900px){.form-wrap{grid-template-columns:1fr}}.form-wrap .side p{margin-top:1rem;font-size:1.04rem}.contact-lines{gap:.8rem;margin-top:1.8rem;padding:0;list-style:none;display:grid}.contact-lines li{color:var(--on-dark-2);align-items:flex-start;gap:.8rem;font-size:.95rem;display:flex}.contact-lines li:before{content:"";background:var(--gold);flex:none;width:7px;height:7px;margin-top:.55em;transform:rotate(45deg)}form.lead-form{background:var(--card);color:var(--ink);border-radius:var(--r-lg);gap:1.1rem;min-width:0;padding:clamp(1.3rem,3vw,2rem);display:grid;box-shadow:0 40px 80px -40px #000000b3}.lead-form label{color:var(--ink);gap:.35rem;font-size:.9rem;font-weight:700;display:grid}.lead-form input[type=text],.lead-form input[type=tel],.lead-form select,.field input[type=text],.field input[type=tel],.field input[type=number]{font:400 1rem var(--f-body);color:var(--ink);background:var(--paper);border:1.5px solid var(--line2);border-radius:12px;width:100%;min-height:50px;padding:.7rem .9rem;transition:border-color .15s,box-shadow .15s}.lead-form input:focus,.lead-form select:focus{border-color:var(--navy-ink);box-shadow:0 0 0 4px var(--navy-soft);outline:none}.chk{color:var(--muted);align-items:flex-start;gap:.7rem;font-size:.86rem;font-weight:400;display:flex}.chk input{width:18px;height:18px;accent-color:var(--cta);flex:none;margin-top:.25rem}.chk a{color:var(--navy-ink)}.err{color:var(--err);min-height:1em;font-size:.82rem;font-weight:600}.ok{background:var(--ok-soft);color:var(--ok);border-radius:var(--r);gap:.7rem;padding:1.1rem 1.2rem;display:grid}.ok .btn{justify-self:start}.ok strong{font:500 1.05rem var(--f-mono)}.honey{width:1px;height:1px;left:-9999px;overflow:hidden;position:absolute!important}.pagehead{background:var(--night);color:#fff;margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter);isolation:isolate;position:relative;overflow:hidden}.pagehead:before{content:"";z-index:-1;background:radial-gradient(700px 360px at 85% 0%,#d8262c40,transparent 60%),linear-gradient(180deg,var(--night),var(--night2));position:absolute;inset:0}.pagehead-in{max-width:1180px;margin-inline:auto;padding-block:calc(68px + clamp(2.2rem,6vw,4rem)) clamp(2.5rem,6vw,4.5rem)}.pagehead h1{color:#fff;margin-top:1rem;font-size:clamp(2rem,5vw,3.4rem)}.pagehead .lead{color:var(--on-dark-2);max-width:60ch;margin-top:1rem;font-size:1.08rem}.pagehead .eyebrow{color:var(--gold)}.crumb{color:var(--on-dark-2);margin-bottom:1rem;font-size:.86rem;text-decoration:none;display:inline-block}.crumb:hover{color:#fff}.page-body{padding-block:clamp(2.5rem,6vw,4.5rem)}.prose{max-width:68ch}.prose h2{margin:2.2rem 0 .6rem;font-size:1.5rem}.prose p,.prose li{color:var(--muted)}.prose ul{padding-left:1.2rem}.ticks{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.ticks li{align-items:flex-start;gap:.8rem;display:flex}.ticks li:before{content:"";background:var(--red);flex:none;width:7px;height:7px;margin-top:.6em;transform:rotate(45deg)}.fn{color:var(--muted);margin-top:1.4rem;font-size:.86rem}.soon{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--soft);gap:1rem;max-width:56ch;padding:2rem;display:grid}.soon p{color:var(--muted)}.opt-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card);gap:.8rem;padding:1.3rem 1.4rem;display:grid}.opt-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1rem;display:grid}.opt-card h3{font-size:1.1rem}.opt-card .now{font:800 1.6rem var(--f-display);color:var(--navy-ink)}.opt-card .was{color:var(--muted);font-size:.85rem;text-decoration:line-through}.opt-card dl{grid-template-columns:1fr 1fr;gap:.4rem .8rem;margin:0;font-size:.88rem;display:grid}.opt-card dt{color:var(--muted)}.opt-card dd{text-align:right;margin:0;font-weight:600}.tags{flex-wrap:wrap;gap:.4rem;display:flex}.tags span{background:var(--soft2);font:600 .76rem var(--f-body);color:var(--navy-ink);border-radius:999px;padding:.2rem .7rem}.tag-sample{font:500 .68rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--red);border:1px dashed var(--red);border-radius:999px;padding:.1rem .6rem;display:inline-block}footer.site{background:var(--night);color:var(--on-dark-2);margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter)}.foot-in{grid-template-columns:1.4fr 1fr 1fr;gap:2rem;max-width:1180px;margin-inline:auto;padding-block:clamp(2.5rem,6vw,4rem) 2rem;display:grid}@media (width<=760px){.foot-in{grid-template-columns:1fr}}.foot-brand{align-content:start;gap:1rem;display:grid}.foot-brand .plate{background:#fff;border-radius:50%;place-items:center;width:56px;height:56px;display:grid}.foot-brand .plate img{object-fit:contain;width:44px;height:44px}.foot-brand b{font:700 1.3rem var(--f-display);color:#fff}.foot-brand p{max-width:36ch;font-size:.9rem}.foot-col h4{font:500 .7rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:.9rem}.foot-col ul{gap:.5rem;margin:0;padding:0;font-size:.92rem;list-style:none;display:grid}.foot-col a{text-decoration:none}.foot-col a:hover{color:#fff}.foot-bar{border-top:1px solid var(--on-dark-3);flex-wrap:wrap;justify-content:space-between;gap:.6rem 2rem;max-width:1180px;margin-inline:auto;padding-block:1.2rem 2rem;font-size:.8rem;display:flex}footer.site{border-top:1px solid var(--on-dark-3)}.cta-row.dark .btn-ghost{color:#fff;border-color:#ffffff73}.lead-form .chk{color:var(--muted);font-size:.86rem;font-weight:400;display:flex}.jstep{align-content:start}.otile:nth-child(2),.otile:nth-child(4){text-align:right;justify-items:end}.ohub{width:64px;height:64px;font-size:.8rem}.px-info{flex-direction:column;display:flex}.px-info .tip{border-left:3px solid var(--gold);color:var(--on-dark-2);background:#ffffff0d;border-radius:0 12px 12px 0;margin-top:auto;padding:1rem 1.1rem;font-size:.9rem}.px-info .tip a{color:#fff;text-underline-offset:3px;font-weight:700}.px-info .avail{flex-wrap:wrap;gap:.4rem;display:flex}.px-info .avail span{border:1px solid var(--on-dark-3);color:var(--on-dark-2);border-radius:999px;padding:.2rem .7rem;font-size:.76rem}.nw{white-space:nowrap}.px-info{position:relative;overflow:hidden}.px-info:after{content:attr(data-mark);font:800 clamp(7rem,14vw,11rem)/1 var(--f-display);color:#ffffff0b;pointer-events:none;letter-spacing:-.04em;position:absolute;top:42%;right:-.4rem}.px-info>*{z-index:1;position:relative}#suasana{padding-block:clamp(1.2rem,3vw,2.4rem)}.atmo-in{max-width:820px}.atmo .jp{font-size:clamp(1.35rem,3vw,2.3rem)}.atmo.plain{background:linear-gradient(120deg,var(--night),var(--night3))}.about-banner{border-radius:var(--r-lg);aspect-ratio:3;background:var(--soft2);margin:clamp(2rem,4vw,3rem) 0 0;overflow:hidden}.about-banner img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=900px){.about-banner{aspect-ratio:16/10}}.ptband{grid-template-columns:1fr}.ptband.has-img{grid-template-columns:1.15fr .85fr}.ptband .go{flex-wrap:wrap;gap:.8rem;margin-top:1.6rem;display:flex}.pt-img{z-index:1;border-radius:var(--r);aspect-ratio:4/5;margin:0;width:100%;max-width:380px;margin-inline:auto;position:relative;overflow:hidden}.pt-img img{object-fit:cover;width:100%;height:100%;display:block}.pagehead.has-img:after{content:"";z-index:-2;background:var(--ph-sm) center/cover no-repeat;position:absolute;inset:0}@media (width>=700px){.pagehead.has-img:after{background-image:var(--ph-md)}}@media (width>=1500px){.pagehead.has-img:after{background-image:var(--ph-lg)}}.pagehead.has-img:before{background:linear-gradient(90deg,#0a1430f0 0%,#0a1430b8 55%,#0a143080 100%)}@media (width<=860px){.ptband.has-img{grid-template-columns:1fr}}.wa-float{right:max(16px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));z-index:30;color:#fff;min-height:56px;font:700 .95rem var(--f-body);opacity:0;pointer-events:none;background:#1faf55;border-radius:999px;align-items:center;gap:.6rem;padding:0 1.2rem 0 1rem;text-decoration:none;transition:opacity .3s,transform .3s,background .15s;display:inline-flex;position:fixed;transform:translateY(16px);box-shadow:0 14px 30px -10px #0a14308c,inset 0 0 0 1px #fff3}.wa-float.on{opacity:1;pointer-events:auto;transform:none}.wa-float:hover{background:#178f44}.no-js .wa-float{opacity:1;pointer-events:auto;transform:none}@media (width<=560px){.wa-float{justify-content:center;width:56px;padding:0}.wa-float span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}@media (prefers-reduced-motion:reduce){.wa-float{transition:none}}.wa-float-mascot{pointer-events:none;filter:drop-shadow(0 6px 10px #0a143059);width:30px;height:auto;position:absolute;bottom:42px;left:-10px}@media (width<=560px){.wa-float-mascot{width:26px;bottom:40px;left:-8px}}.foot-mascot{opacity:.85;width:34px;height:auto;margin-top:.2rem}footer.site{padding-bottom:max(0px,env(safe-area-inset-bottom,0px))}.jlpt-inc{margin:.6rem 0 0;padding:0;list-style:none}.jlpt .opt-card dl{grid-template-columns:1fr auto}.vid-frame{aspect-ratio:16/9;border-radius:var(--r-lg,20px);background:var(--night);position:relative;overflow:hidden;box-shadow:0 30px 70px -34px #070f248c}.vid-frame video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.vid-toggle{z-index:2;-webkit-backdrop-filter:blur(8px);color:#fff;cursor:pointer;background:#070f248c;border:1.5px solid #ffffffb3;border-radius:50%;place-items:center;width:48px;height:48px;padding:0;display:grid;position:absolute;bottom:16px;left:16px}.vid-toggle:hover{background:#070f24cc}.vid-toggle .i-pause{border-inline:4px solid #fff;width:14px;height:16px}.vid-toggle .i-play{border-left:14px solid #fff;border-block:9px solid #0000;margin-left:3px;display:none}.vid-toggle[aria-pressed=true] .i-pause{display:none}.vid-toggle[aria-pressed=true] .i-play{display:block}
