:root{--navy-900:#0c1f3d;--navy-800:#102a4d;--navy-700:#173766;--navy-500:#355184;--navy-300:#8597b6;--navy-100:#d9e0ec;--navy-50:#eef2f8;--ink:#19243a;--ink-2:#3a4660;--muted:#6b7891;--line:#e4e8ef;--cream:#f7f3eb;--cream-2:#f1ebde;--paper:#fff;--bg:#fbfaf6;--accent:#ef7f2c;--accent-soft:#fde7d4;--accent-deep:#c9601a;--accent-ink:#fff;--shadow-sm:0 1px 2px #0f203d0f, 0 1px 1px #0f203d0a;--shadow-md:0 6px 18px -8px #0f203d2e, 0 2px 6px -2px #0f203d14;--shadow-lg:0 24px 50px -20px #0f203d47, 0 6px 16px -8px #0f203d1f;--shadow-xl:0 40px 80px -30px #0f203d61, 0 12px 28px -12px #0f203d2e;--radius-sm:8px;--radius:12px;--radius-lg:18px;--radius-xl:24px;--font-jp:"Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", system-ui, sans-serif;--font-en:"Inter", "SF Pro Text", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-jp);font-feature-settings:"palt" 1;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;letter-spacing:.01em;line-height:1.7}img,svg{max-width:100%;display:block}button{font-family:inherit}a{color:inherit;text-decoration:none}.container{width:100%;max-width:1180px;margin:0 auto;padding:0 24px}.eyebrow{font-family:var(--font-en);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-deep);background:var(--accent-soft);border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 10px;font-size:12px;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;display:inline-block}.section-title{letter-spacing:.02em;color:var(--navy-900);text-wrap:balance;margin:14px 0 12px;font-size:clamp(28px,3.2vw,40px);font-weight:700;line-height:1.3}.section-lead{color:var(--muted);text-wrap:pretty;max-width:620px;font-size:16px}.section-head{text-align:center;flex-direction:column;align-items:center;margin-bottom:56px;display:flex}.section-head .section-lead{text-align:center}section{padding:96px 0;position:relative}.btn{font-family:var(--font-jp);letter-spacing:.04em;cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:14px 22px;font-size:15px;font-weight:700;line-height:1;transition:transform .15s,box-shadow .2s,background .2s,color .2s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 8px 20px -6px color-mix(in oklab, var(--accent) 70%, black)}.btn-primary:hover{background:var(--accent-deep);box-shadow:0 12px 24px -6px color-mix(in oklab, var(--accent) 80%, black)}.btn-secondary{background:var(--navy-900);color:#fff}.btn-secondary:hover{background:#000}.btn-ghost{color:var(--navy-900);border:1px solid var(--navy-100);background:0 0}.btn-ghost:hover{background:var(--navy-50)}.btn-lg{padding:18px 28px;font-size:16px}.btn-disabled{background:var(--navy-50);color:var(--muted);cursor:not-allowed;border:1px dashed var(--navy-100)}.btn-disabled:hover{background:var(--navy-50)}.nav{z-index:100;-webkit-backdrop-filter:blur(16px)saturate(160%);background:#fbfaf6d9;border-bottom:1px solid #0000;transition:border-color .2s,background .2s;position:sticky;top:0}.nav.scrolled{border-bottom-color:var(--line);background:#fbfaf6eb}.nav-inner{justify-content:space-between;align-items:center;height:72px;display:flex}.brand{color:var(--navy-900);letter-spacing:.02em;align-items:center;gap:10px;font-weight:800;display:flex}.brand-mark{background:var(--navy-900);color:#fff;border-radius:9px;place-items:center;width:32px;height:32px;display:grid;position:relative;overflow:hidden}.brand-mark:after{content:"";background:radial-gradient(circle at 50% 130%, var(--accent) 0 28%, transparent 29%);opacity:.45;position:absolute;inset:0}.brand-text{flex-direction:column;line-height:1;display:flex}.brand-text .en{font-family:var(--font-en);font-size:17px;font-weight:800}.brand-text .jp{color:var(--muted);letter-spacing:.18em;margin-top:3px;font-size:9.5px;font-weight:500}.nav-links{align-items:center;gap:28px;display:flex}.nav-links a{color:var(--ink-2);font-size:13.5px;font-weight:500}.nav-links a:hover{color:var(--navy-900)}.nav-cta{align-items:center;gap:8px;display:flex}.nav-burger{appearance:none;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;padding:0;display:none;position:relative}.nav-burger span{background:var(--navy-900);border-radius:2px;height:2px;transition:transform .25s,opacity .2s,top .25s;position:absolute;left:11px;right:11px}.nav-burger span:first-child{top:14px}.nav-burger span:nth-child(2){top:20px}.nav-burger span:nth-child(3){top:26px}.nav-burger.open span:first-child{top:20px;transform:rotate(45deg)}.nav-burger.open span:nth-child(2){opacity:0}.nav-burger.open span:nth-child(3){top:20px;transform:rotate(-45deg)}.mobile-menu{background:var(--bg);border-bottom:1px solid var(--line);visibility:hidden;max-height:0;transition:max-height .35s;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 24px 40px -16px #0f203d2e}.mobile-menu.open{visibility:visible;max-height:calc(100vh - 72px);overflow-y:auto}.mobile-menu-inner{flex-direction:column;gap:18px;padding:16px 24px 28px;display:flex}.mobile-nav{flex-direction:column;display:flex}.mobile-nav a{color:var(--navy-900);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 4px;font-size:16px;font-weight:600;display:flex}.mobile-nav a:after{content:"›";color:var(--muted);font-family:var(--font-en);font-size:22px;line-height:1}.mobile-nav a:last-child{border-bottom:none}.mobile-cta{flex-direction:column;gap:10px;margin-top:4px;display:flex}.mobile-foot{text-align:center;color:var(--muted);padding-top:6px;font-size:12px}@media (width<=820px){.nav-links{display:none}.nav-burger{display:inline-flex}.desktop-only{display:none!important}}.hero{background:radial-gradient(ellipse 60% 50% at 80% 0%, color-mix(in oklab, var(--accent) 18%, transparent) 0%, transparent 60%), radial-gradient(ellipse 50% 50% at 0% 100%, color-mix(in oklab, var(--navy-100) 60%, transparent) 0%, transparent 50%), var(--bg);padding:64px 0 80px;overflow:hidden}.hero-grid{grid-template-columns:1.05fr 1.15fr;align-items:center;gap:56px;display:grid}.hero[data-layout=centered] .hero-grid{text-align:center;grid-template-columns:1fr;gap:48px}.hero[data-layout=centered] .hero-copy{max-width:720px;margin:0 auto}.hero[data-layout=centered] .hero-actions,.hero[data-layout=centered] .hero-stats{justify-content:center}.hero[data-layout=centered] .hero-visual{max-width:980px;margin:0 auto}@media (width<=940px){.hero-grid{text-align:center;grid-template-columns:1fr;gap:48px}.hero-actions,.hero-stats{justify-content:center}.hero-copy{max-width:620px;margin:0 auto}}.hero-title{letter-spacing:.01em;color:var(--navy-900);text-wrap:balance;margin:18px 0;font-size:clamp(36px,5vw,60px);font-weight:800;line-height:1.18}.hero-title em{color:var(--accent-deep);white-space:nowrap;font-style:normal;position:relative}.hero-title em:after{content:"";background:var(--accent);opacity:.22;z-index:-1;border-radius:999px;height:10px;position:absolute;bottom:-6px;left:0;right:0}.hero-sub{color:var(--ink-2);text-wrap:pretty;margin-bottom:32px;font-size:17px;line-height:1.85}.hero-actions{flex-wrap:wrap;gap:12px;margin-bottom:36px;display:flex}.hero-stats{border-top:1px dashed var(--line);flex-wrap:wrap;gap:28px;padding-top:28px;display:flex}.hero-stat .num{font-family:var(--font-en);color:var(--navy-900);letter-spacing:-.01em;align-items:baseline;gap:4px;font-size:26px;font-weight:700;display:flex}.hero-stat .num small{color:var(--muted);font-size:13px;font-weight:600}.hero-stat .lbl{color:var(--muted);letter-spacing:.08em;margin-top:2px;font-size:12px}.hero-visual,.dash-wrap{position:relative}.dash-wrap:before{content:"";background:radial-gradient(ellipse at 50% 50%, color-mix(in oklab, var(--accent) 16%, transparent), transparent 70%);filter:blur(40px);z-index:-1;position:absolute;inset:-40px -40px -20px}.dash{border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--line);font-family:var(--font-jp);background:#fff;overflow:hidden}.dash-bar{border-bottom:1px solid var(--line);background:#f7f7f9;align-items:center;gap:8px;padding:12px 14px;display:flex}.dash-bar .dot{border-radius:50%;width:11px;height:11px}.dash-bar .url{border:1px solid var(--line);font-family:var(--font-en);color:var(--muted);background:#fff;border-radius:6px;flex:1;align-items:center;gap:6px;max-width:320px;margin-left:8px;padding:4px 10px;font-size:11px;display:flex}.dash-bar .url:before{content:"";background:var(--accent);border-radius:2px;width:9px;height:9px}.dash-head{border-bottom:1px solid var(--line);background:var(--navy-900);color:#fff;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.dash-head .league{align-items:center;gap:10px;display:flex}.dash-head .league-mark{background:var(--accent);color:#fff;width:30px;height:30px;font-family:var(--font-en);border-radius:8px;place-items:center;font-size:14px;font-weight:800;display:grid}.dash-head .league-name{letter-spacing:.04em;font-size:14px;font-weight:700}.dash-head .season{color:#fff9;font-size:11px;font-family:var(--font-en)}.dash-head .badge{color:#fff;letter-spacing:.06em;background:#ffffff1f;border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:10px;display:flex}.dash-head .badge:before{content:"";background:#4ade80;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #4ade8033}.dash-body{grid-template-columns:1.4fr 1fr;gap:0;min-height:420px;padding:0;display:grid}.dash-pane{padding:18px 20px}.dash-pane+.dash-pane{border-left:1px solid var(--line)}.dash-pane h4{color:var(--navy-900);letter-spacing:.08em;justify-content:space-between;align-items:center;margin:0 0 12px;font-size:12px;font-weight:700;display:flex}.dash-pane h4 .more{color:var(--muted);font-size:10px;font-weight:500}.standings{border-collapse:collapse;width:100%;font-size:12px}.standings th{text-align:left;color:var(--muted);letter-spacing:.08em;border-bottom:1px solid var(--line);padding:6px;font-size:10px;font-weight:600}.standings td{border-bottom:1px dashed var(--line);vertical-align:middle;padding:9px 6px}.standings tr:last-child td{border-bottom:none}.standings .rank{font-family:var(--font-en);color:var(--navy-900);width:24px;font-weight:700}.standings .team{color:var(--navy-900);align-items:center;gap:8px;font-weight:600;display:flex}.standings .team-mark{background:var(--navy-100);width:18px;height:18px;color:var(--navy-900);font-size:9px;font-weight:800;font-family:var(--font-en);border-radius:5px;place-items:center;display:grid}.standings .num{font-family:var(--font-en);text-align:center;font-variant-numeric:tabular-nums;font-size:11px}.standings .pct{color:var(--navy-900);font-weight:700}.standings tr.top td{background:color-mix(in oklab, var(--accent) 6%, transparent)}.standings tr.top .rank{color:var(--accent-deep)}.sched{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.sched-row{border-bottom:1px dashed var(--line);grid-template-columns:56px 1fr auto;align-items:center;gap:10px;padding:9px 0;display:grid}.sched-row:last-child{border-bottom:0}.sched-date{background:var(--navy-50);text-align:center;border-radius:6px;padding:4px}.sched-date .m{color:var(--muted);font-size:9px;font-family:var(--font-en);font-weight:700}.sched-date .d{color:var(--navy-900);font-size:14px;font-family:var(--font-en);font-weight:800;line-height:1}.sched-match{color:var(--navy-900);align-items:center;gap:6px;font-size:11px;display:flex}.sched-match .vs{color:var(--muted);font-family:var(--font-en);font-size:9px}.sched-time{font-family:var(--font-en);color:var(--muted);font-size:11px}.dash-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:4px;display:grid}.dash-stat{background:var(--cream);text-align:left;border-radius:8px;padding:10px}.dash-stat .lbl{color:var(--muted);letter-spacing:.08em;font-size:9px;font-weight:600}.dash-stat .val{font-size:16px;font-family:var(--font-en);color:var(--navy-900);margin-top:2px;font-weight:800}.float-card{box-shadow:var(--shadow-lg);border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:10px;padding:10px 14px;font-size:12px;display:flex;position:absolute}.float-card.notif{animation:4s ease-in-out infinite bobby;top:-18px;right:-16px}.float-card.score{animation:4.5s ease-in-out -2s infinite bobby;bottom:-22px;left:-22px}.float-card .ic{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-deep);border-radius:8px;place-items:center;display:grid}.float-card .ic.b{background:var(--navy-50);color:var(--navy-900)}.float-card .ttl{color:var(--navy-900);font-size:12px;font-weight:700}.float-card .sub{color:var(--muted);font-size:11px}.float-card .score-num{font-family:var(--font-en);color:var(--navy-900);font-size:14px;font-weight:800}@keyframes bobby{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media (width<=640px){.float-card.notif{padding:8px 10px;top:-10px;right:-4px}.float-card.score{padding:8px 10px;bottom:-10px;left:-4px}.dash-body{grid-template-columns:1fr;min-height:0}.dash-pane+.dash-pane{border-left:none;border-top:1px solid var(--line)}}.admin{border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--line);font-family:var(--font-jp);background:#fff;overflow:hidden}.team-mark.big{background:var(--accent);color:#fff;width:32px;height:32px;font-weight:800;font-family:var(--font-en);border-radius:8px;place-items:center;font-size:14px;display:grid}.admin-body{grid-template-columns:220px 1fr;min-height:540px;display:grid}.admin-side{border-right:1px solid var(--line);background:#fbfaf8;flex-direction:column;padding:16px 12px;display:flex}.admin-side-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:6px 8px 14px;display:flex}.admin-side-head .league-mark{background:var(--navy-900);color:#fff;border-radius:8px;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.admin-side-head .league-name{color:var(--navy-900);font-size:12px;font-weight:700}.admin-side-head .season{color:var(--muted);margin-top:2px;font-size:10.5px}.admin-nav{flex-direction:column;flex:1;gap:2px;padding-top:12px;display:flex}.admin-nav-item{color:var(--ink-2);cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:12.5px;display:flex}.admin-nav-item:hover{background:#0000000a}.admin-nav-item.active{background:var(--navy-900);color:#fff}.admin-nav-item.active svg{color:var(--accent)}.admin-side-foot{border-top:1px solid var(--line);padding-top:14px}.admin-plan{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px}.plan-lbl{color:var(--navy-900);font-size:11px;font-weight:700}.plan-bar{background:var(--navy-50);border-radius:999px;height:6px;margin:6px 0;overflow:hidden}.plan-bar span{background:var(--accent);border-radius:999px;height:100%;display:block}.plan-sub{color:var(--muted);font-size:10px;font-family:var(--font-en)}.admin-main{background:#f8f7f3;padding:20px 24px;overflow:auto}.admin-bcrumb{color:var(--muted);align-items:center;gap:6px;margin-bottom:12px;font-size:11px;display:flex}.admin-bcrumb .cur{color:var(--navy-900);font-weight:600}.admin-title-row{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.admin-title-row h3{color:var(--navy-900);margin:0;font-size:18px;font-weight:700}.admin-title-row p{color:var(--muted);margin:4px 0 0;font-size:12px}.admin-actions{flex-shrink:0;gap:8px;display:flex}.abtn{appearance:none;border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:12px;font-weight:600;display:inline-flex}.abtn.sm{padding:6px 10px;font-size:11px}.abtn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.abtn-ghost{color:var(--ink-2);background:#fff}.admin-card{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:14px;padding:18px}.admin-card-head{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.admin-card-head h4{color:var(--navy-900);margin:0;font-size:13px;font-weight:700}.admin-card-head .meta{color:var(--muted);font-size:11px}.admin-form-grid{grid-template-columns:1.4fr 1fr 1.2fr 1fr;gap:12px;margin-bottom:14px;display:grid}.afield label{color:var(--muted);letter-spacing:.06em;margin-bottom:5px;font-size:10.5px;font-weight:600;display:block}.afield .ainput{background:var(--navy-50);border:1px solid var(--line);color:var(--navy-900);border-radius:8px;align-items:center;gap:6px;padding:8px 10px;font-size:12px;font-weight:600;display:flex}.amatch{background:var(--cream);border-radius:10px;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:14px;display:grid}.amatch-team{justify-content:space-between;align-items:center;gap:8px;display:flex}.amatch-team.away{flex-direction:row-reverse}.amatch-team-row{align-items:center;gap:8px;display:flex}.amatch-team-name{color:var(--navy-900);font-size:13px;font-weight:700}.amatch-score{font-family:var(--font-en);color:var(--navy-900);border:1.5px solid var(--accent);background:#fff;border-radius:10px;place-items:center;width:56px;height:56px;font-size:32px;font-weight:800;line-height:1;display:grid}.amatch-vs{font-family:var(--font-en);color:var(--muted);letter-spacing:.1em;font-size:11px;font-weight:700}.abat{border-collapse:collapse;width:100%;font-size:11.5px}.abat th{text-align:left;color:var(--muted);letter-spacing:.08em;border-bottom:1px solid var(--line);padding:8px 6px;font-size:10px;font-weight:600}.abat td{border-bottom:1px dashed var(--line);vertical-align:middle;padding:9px 6px}.abat tr:last-child td{border-bottom:0}.abat .num{font-family:var(--font-en);font-variant-numeric:tabular-nums}.abat .bold{color:var(--navy-900);font-weight:700}.abat-name{color:var(--navy-900);font-weight:600}.abat-edit{border:1px solid var(--line);background:#fff;border-radius:6px;place-items:center;min-width:28px;height:24px;padding:0 4px;font-weight:600;display:inline-grid}.abat-edit.filled{border-color:var(--accent);background:color-mix(in oklab, var(--accent) 10%, #fff);color:var(--accent-deep)}@media (width<=760px){.admin-body{grid-template-columns:1fr;min-height:0}.admin-side{display:none}.admin-form-grid{grid-template-columns:1fr 1fr}.abat{font-size:10.5px}.abat th:nth-child(3),.abat td:nth-child(3){display:none}}.admin-showcase{background:var(--bg);padding-top:96px;padding-bottom:96px}.admin-showcase .container{position:relative}.admin-showcase-grid{grid-template-columns:1fr;align-items:center;gap:40px;display:grid}.admin-showcase-head{text-align:center;max-width:720px;margin:0 auto 40px}.admin-showcase-mock{max-width:1100px;margin:0 auto;position:relative}.admin-showcase-mock:before{content:"";background:radial-gradient(ellipse at 50% 50%, color-mix(in oklab, var(--navy-700) 10%, transparent), transparent 70%);filter:blur(40px);z-index:-1;position:absolute;inset:-20px -40px 20px}.admin-callouts{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px;display:grid}@media (width<=760px){.admin-callouts{grid-template-columns:1fr}}.admin-callout{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:flex-start;gap:12px;padding:18px 20px;display:flex}.admin-callout .ic{background:var(--accent-soft);width:38px;height:38px;color:var(--accent-deep);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.admin-callout h4{color:var(--navy-900);margin:0 0 4px;font-size:14px;font-weight:700}.admin-callout p{color:var(--ink-2);margin:0;font-size:12.5px;line-height:1.7}.placeholder-note{text-align:center;color:var(--muted);font-size:11.5px;font-family:var(--font-en);letter-spacing:.04em;margin-top:14px}.placeholder-note:before{content:"✱";color:var(--accent);margin-right:6px}.logo-strip{border-top:1px solid var(--line);margin-top:56px;padding-top:32px}.logo-strip-label{text-align:center;letter-spacing:.12em;color:var(--muted);margin-bottom:20px;font-size:12px}.logos{opacity:.7;flex-wrap:wrap;justify-content:center;align-items:center;gap:36px;display:flex}.logos .lg{font-family:var(--font-en);color:var(--ink-2);align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.logos .lg .ic{background:var(--navy-900);color:#fff;border-radius:6px;place-items:center;width:22px;height:22px;font-size:10px;font-weight:800;display:grid}.features{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.feature-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}@media (width<=880px){.feature-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.feature-grid{grid-template-columns:1fr}}.feature{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px 26px;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.feature:hover{border-color:color-mix(in oklab, var(--accent) 50%, var(--line));box-shadow:var(--shadow-md);transform:translateY(-2px)}.feature .ic{background:var(--cream);width:52px;height:52px;color:var(--navy-900);border-radius:14px;place-items:center;margin-bottom:18px;display:grid}.feature:hover .ic{background:var(--accent-soft);color:var(--accent-deep)}.feature h3{color:var(--navy-900);margin:0 0 6px;font-size:18px;font-weight:700}.feature p{color:var(--ink-2);margin:0;font-size:14px;line-height:1.85}.feature .tag{font-family:var(--font-en);color:var(--navy-300);letter-spacing:.08em;font-size:10px;font-weight:700;position:absolute;top:18px;right:18px}.usecases{background:var(--bg)}.uc-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}@media (width<=900px){.uc-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=540px){.uc-grid{grid-template-columns:1fr}}.uc{border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;flex-direction:column;gap:10px;padding:24px;display:flex;position:relative;overflow:hidden}.uc-illust{background:var(--navy-50);width:56px;height:56px;color:var(--navy-900);border-radius:14px;place-items:center;margin-bottom:4px;display:grid}.uc h3{color:var(--navy-900);margin:0;font-size:17px;font-weight:700}.uc .quote{color:var(--ink-2);border-left:3px solid var(--accent);margin-top:4px;padding-left:12px;font-size:13px;line-height:1.8}.uc .quote .from{color:var(--muted);margin-top:6px;font-size:11px;display:block}.how{background:linear-gradient(180deg, transparent 0%, color-mix(in oklab, var(--navy-50) 70%, transparent) 100%)}.steps{grid-template-columns:repeat(3,1fr);gap:20px;display:grid;position:relative}@media (width<=880px){.steps{grid-template-columns:1fr}}.step{border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;padding:28px;position:relative}.step-num{font-family:var(--font-en);color:var(--accent-deep);letter-spacing:.06em;margin-bottom:10px;font-size:14px;font-weight:800}.step-num span{color:var(--accent);margin-bottom:4px;font-size:36px;line-height:1;display:block}.step h3{color:var(--navy-900);margin:0 0 8px;font-size:19px}.step p{color:var(--ink-2);margin:0;font-size:14px;line-height:1.85}.step .ic{color:var(--navy-100);position:absolute;top:24px;right:24px}.testimonials{background:var(--navy-900);color:#fff}.testimonials .section-title{color:#fff}.testimonials .section-lead{color:#ffffffb3}.test-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (width<=880px){.test-grid{grid-template-columns:1fr}}.testimonial{border-radius:var(--radius-lg);background:#ffffff0a;border:1px solid #ffffff1a;flex-direction:column;gap:16px;padding:28px;display:flex}.testimonial .stars{color:var(--accent);letter-spacing:2px;font-size:16px}.testimonial .body{color:#ffffffeb;flex:1;font-size:15px;line-height:1.9}.testimonial .who{border-top:1px solid #ffffff1a;align-items:center;gap:12px;padding-top:16px;display:flex}.testimonial .avatar{background:linear-gradient(135deg, var(--accent), var(--accent-deep));color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;font-size:14px;font-weight:700;display:grid}.testimonial .who-name{font-size:14px;font-weight:700}.testimonial .who-role{color:#fff9;font-size:12px}.pricing{background:var(--bg);text-align:center}.price-card{border:1px solid var(--line);border-radius:var(--radius-xl);max-width:720px;box-shadow:var(--shadow-md);background:#fff;margin:0 auto;padding:48px 40px 40px;position:relative;overflow:hidden}.price-card:before{content:"";background:linear-gradient(180deg, color-mix(in oklab, var(--accent) 8%, transparent), transparent 40%);pointer-events:none;position:absolute;inset:0}.price-badge{background:var(--accent);color:#fff;letter-spacing:.08em;border-radius:999px;margin-bottom:12px;padding:6px 14px;font-size:12px;font-weight:700;display:inline-flex}.price-card h3{color:var(--navy-900);margin:0;font-size:22px;font-weight:700}.price-amount{font-family:var(--font-en);color:var(--navy-900);letter-spacing:-.02em;margin:16px 0 4px;font-size:72px;font-weight:800;line-height:1.1}.price-amount .yen{vertical-align:18px;margin-right:4px;font-size:36px}.price-amount .per{font-family:var(--font-jp);color:var(--muted);vertical-align:16px;margin-left:6px;font-size:18px;font-weight:500}.price-tax{color:var(--muted);margin-bottom:28px;font-size:12px}.price-features{text-align:left;border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);grid-template-columns:1fr 1fr;gap:12px 24px;max-width:520px;margin:24px auto 32px;padding:24px 0;display:grid}@media (width<=540px){.price-features{grid-template-columns:1fr}}.price-feature{color:var(--ink);align-items:center;gap:10px;font-size:14px;display:flex}.price-feature .check{background:var(--accent-soft);width:22px;height:22px;color:var(--accent-deep);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.news{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.news-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:32px;display:flex}.news-head h2{color:var(--navy-900);margin:0;font-size:clamp(24px,3vw,32px);font-weight:700}.news-head .lead{color:var(--muted);margin:8px 0 0;font-size:14px}.news-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}@media (width<=880px){.news-grid{grid-template-columns:1fr}}.news-card{border:1px solid var(--line);border-radius:var(--radius-lg);cursor:pointer;background:#fff;flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden}.news-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.news-thumb{aspect-ratio:16/10;background:var(--cream);color:var(--navy-300);place-items:center;display:grid;position:relative;overflow:hidden}.news-thumb.alt-1{background:linear-gradient(135deg, var(--navy-50), var(--cream))}.news-thumb.alt-2{background:linear-gradient(135deg, var(--accent-soft), var(--cream))}.news-thumb.alt-3{background:linear-gradient(135deg, var(--cream-2), var(--cream))}.news-thumb .pat{opacity:.16;background-image:radial-gradient(circle at 25% 25%, var(--navy-900) 1px, transparent 1.5px), radial-gradient(circle at 75% 75%, var(--navy-900) 1px, transparent 1.5px);background-size:24px 24px;position:absolute;inset:0}.news-card .body{flex-direction:column;flex:1;gap:8px;padding:18px 20px 22px;display:flex}.news-card .meta{color:var(--muted);font-size:11px;font-family:var(--font-en);letter-spacing:.04em;align-items:center;gap:10px;display:flex}.news-card .cat{background:var(--accent-soft);color:var(--accent-deep);letter-spacing:.06em;border-radius:999px;padding:2px 8px;font-weight:700}.news-card h3{color:var(--navy-900);margin:4px 0 0;font-size:16px;font-weight:700;line-height:1.55}.news-card p{color:var(--ink-2);margin:0;font-size:13px;line-height:1.8}.news-foot{text-align:center;margin-top:28px}.faq{background:var(--bg)}.faq-list{flex-direction:column;gap:10px;max-width:820px;margin:0 auto;display:flex}.faq-item{border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:border-color .2s,box-shadow .2s;overflow:hidden}.faq-item.open{border-color:color-mix(in oklab, var(--accent) 40%, var(--line));box-shadow:var(--shadow-sm)}.faq-q{text-align:left;cursor:pointer;width:100%;color:var(--navy-900);background:0 0;border:none;align-items:center;gap:16px;padding:18px 22px;font-family:inherit;font-size:15.5px;font-weight:600;display:flex}.faq-q .q-mark{font-family:var(--font-en);color:var(--accent);flex-shrink:0;font-size:14px;font-weight:800}.faq-q .toggle{color:var(--muted);margin-left:auto;transition:transform .25s}.faq-item.open .toggle{color:var(--accent);transform:rotate(45deg)}.faq-a{max-height:0;transition:max-height .3s;overflow:hidden}.faq-item.open .faq-a{max-height:320px}.faq-a-inner{color:var(--ink-2);padding:0 22px 22px;font-size:14px;line-height:1.9}.form-section{background:linear-gradient(180deg, var(--navy-900) 0%, color-mix(in oklab, var(--navy-900) 90%, black) 100%);color:#fff;position:relative;overflow:hidden}.form-section:before{content:"";background:radial-gradient(ellipse 50% 30% at 100% 0%, color-mix(in oklab, var(--accent) 25%, transparent), transparent 60%), radial-gradient(ellipse 60% 40% at 0% 100%, color-mix(in oklab, var(--navy-700) 60%, transparent), transparent 60%);pointer-events:none;position:absolute;inset:0}.form-section .container{position:relative}.form-grid{grid-template-columns:1fr 1.3fr;align-items:start;gap:56px;display:grid}@media (width<=880px){.form-grid{grid-template-columns:1fr;gap:36px}}.form-section .section-title{color:#fff}.form-section .section-lead{color:#ffffffbf}.form-info ul{flex-direction:column;gap:14px;margin:28px 0 0;padding:0;list-style:none;display:flex}.form-info li{color:#ffffffd9;align-items:flex-start;gap:12px;font-size:14px;line-height:1.7;display:flex}.form-info li .ic{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;margin-top:2px;display:grid}.form-card{color:var(--ink);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);background:#fff;padding:36px}.form-row{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.form-row label{color:var(--navy-900);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.form-row label .opt{background:var(--navy-50);color:var(--muted);letter-spacing:.06em;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:500}.form-row label .req{background:var(--accent-soft);color:var(--accent-deep);letter-spacing:.06em;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:700}.form-row input,.form-row textarea,.form-row select{border:1.5px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}.form-row input:focus,.form-row textarea:focus,.form-row select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 22%, transparent)}.form-row textarea{resize:vertical;min-height:100px}.form-segments{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.form-seg{border:1.5px solid var(--line);cursor:pointer;color:var(--ink-2);text-align:center;background:#fff;border-radius:10px;padding:12px 8px;font-family:inherit;font-size:13px;font-weight:600;transition:border-color .15s,background .15s,color .15s}.form-seg:hover{border-color:var(--accent)}.form-seg.active{background:var(--accent);color:#fff;border-color:var(--accent)}.form-seg .top{opacity:.8;font-size:11px}.form-seg.active .top{opacity:1}.form-submit{width:100%;margin-top:8px}.form-note{color:var(--muted);text-align:center;margin-top:14px;font-size:12px}.form-success{background:var(--accent-soft);color:var(--accent-deep);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:24px;font-weight:600;display:flex}.flow-steps{flex-wrap:wrap;align-items:center;gap:8px;margin:24px 0 28px;display:flex}.flow-step{color:#ffffffb3;align-items:center;gap:8px;font-size:12px;font-weight:500;display:flex}.flow-step .n{width:24px;height:24px;font-family:var(--font-en);color:#ffffffb3;background:#ffffff1a;border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid}.flow-step.cur{color:#fff}.flow-step.cur .n{background:var(--accent);color:#fff;box-shadow:0 0 0 4px color-mix(in oklab, var(--accent) 25%, transparent)}.flow-step.done .n{color:var(--navy-900);background:#fff}.flow-arrow{color:#ffffff4d;font-family:var(--font-en)}.contact{background:var(--bg);padding:80px 0}.contact-grid{grid-template-columns:1fr 1.2fr;align-items:start;gap:48px;max-width:980px;margin:0 auto;display:grid}@media (width<=800px){.contact-grid{grid-template-columns:1fr;gap:28px}}.contact-info h2{color:var(--navy-900);letter-spacing:.02em;margin:14px 0 12px;font-size:clamp(24px,3vw,32px);font-weight:700}.contact-info p{color:var(--ink-2);margin:0 0 22px;font-size:14.5px;line-height:1.9}.contact-channels{border-top:1px dashed var(--line);flex-direction:column;gap:12px;padding-top:22px;display:flex}.contact-channel{color:var(--ink-2);align-items:center;gap:12px;font-size:13px;display:flex}.contact-channel .ic{background:var(--navy-50);width:32px;height:32px;color:var(--navy-900);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.contact-channel b{color:var(--navy-900);font-size:13.5px}.contact-channel small{color:var(--muted);margin-top:2px;font-size:11.5px;display:block}.contact-card{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;padding:28px}.foot{border-top:1px solid var(--line);color:var(--ink-2);background:#fff;padding:64px 0 28px;font-size:13.5px}.foot-grid{border-bottom:1px solid var(--line);grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;padding-bottom:40px;display:grid}@media (width<=760px){.foot-grid{grid-template-columns:1fr 1fr}}.foot-brand p{color:var(--muted);max-width:280px;margin:14px 0 0;font-size:13px;line-height:1.8}.foot-col h4{color:var(--navy-900);letter-spacing:.08em;margin:0 0 14px;font-size:12px;font-weight:700}.foot-col ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.foot-col a{color:var(--ink-2);font-size:13px}.foot-col a:hover{color:var(--accent-deep)}.foot-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:22px;display:flex}.foot-bottom small{font-family:var(--font-en);color:var(--muted);font-size:12px}.cta-strip{background:var(--accent);color:#fff;text-align:center;padding:56px 0}.cta-strip h2{letter-spacing:.02em;margin:0 0 8px;font-size:clamp(24px,3vw,34px);font-weight:800}.cta-strip p{color:#ffffffeb;margin:0 0 26px;font-size:15px}.cta-strip .btn-primary{color:var(--accent-deep);background:#fff}.cta-strip .btn-primary:hover{background:var(--navy-900);color:#fff}.cta-strip .btn-secondary{color:#fff;background:0 0;border:1.5px solid #ffffff80}.cta-strip .btn-secondary:hover{background:#ffffff1f}.seam{border:2px dashed color-mix(in oklab, var(--accent) 40%, transparent);opacity:.5;pointer-events:none;border-radius:50%;width:240px;height:240px;position:absolute}.reveal{opacity:1;transform:none}
