:root{--brand:#2563eb;--line:#34d399;--dark:#121826;--dark2:#0d1117;--navy:#1e2d3d;--paper:#fafaf8;--ink:#1a1a1a;--muted:#4a4a4a;--soft:#6b7280;--line-gray:#e5e5e0;--footer:#080808;--fs-hero:clamp(2.6rem, 5.5vw, 4.5rem);--fs-h2:clamp(1.8rem, 3.5vw, 3rem);--fs-num:clamp(2.8rem, 5vw, 4.5rem);--fs-num-sub:clamp(2rem, 3.5vw, 2.8rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--dark);margin:0;font-family:Noto Sans JP,sans-serif}img{max-width:100%;display:block}a{color:inherit}.container{width:100%;margin:0 auto;padding:0 1rem}@media (width>=640px){.container{padding:0 1.5rem}}@media (width>=1024px){.container{max-width:1280px;padding:0 2rem}}.eyebrow{align-items:center;gap:.75rem;margin-bottom:3rem;display:flex}.eyebrow:before{content:"";background:var(--brand);width:2rem;height:1px}.eyebrow span{letter-spacing:.16em;text-transform:uppercase;color:var(--brand);font-size:.75rem;font-weight:900}.h2{font-weight:900;font-size:var(--fs-h2);margin:0;line-height:1.2}.btn{cursor:pointer;border:none;border-radius:4px;justify-content:center;align-items:center;gap:.5rem;font-weight:900;text-decoration:none;transition:opacity .15s;display:inline-flex}.btn:hover{opacity:.9}.btn-brand{background:var(--brand);color:#fff}.btn-line{background:var(--line);color:var(--dark2)}.btn-lg{height:3.5rem;padding:0 2.5rem;font-size:1rem}.btn-md{height:3rem;padding:0 2.5rem;font-size:.875rem}.btn-nav{height:2.25rem;padding:0 1.25rem;font-size:.875rem}.site-header{z-index:50;background:var(--dark);backdrop-filter:blur(16px);position:fixed;inset:0 0 auto}.header-inner{justify-content:space-between;align-items:center;height:4rem;display:flex}.header-logo{width:auto;height:1.75rem}.header-nav{align-items:center;gap:2rem;display:none}.header-nav a{color:#ffffffb3;font-size:.875rem;text-decoration:none}.header-nav a:hover{color:#fff}.header-toggle{color:#fff;background:0 0;border:0;font-size:1.5rem;line-height:1;display:block}.header-menu{background:var(--dark);border-top:1px solid #2563eb33;flex-direction:column;gap:1rem;padding:1rem 1.5rem 1.25rem;display:none}.header-menu.is-open{display:flex}.header-menu a{color:#fffc;text-decoration:none}.header-menu-ctas{gap:.75rem;padding-top:.5rem;display:flex}.header-menu-ctas .btn{flex:1;height:2.5rem;font-size:.875rem}@media (width>=768px){.header-nav{display:flex}.header-toggle,.header-menu{display:none!important}}.hero{background:linear-gradient(135deg, var(--dark2) 0%, var(--navy) 60%, var(--dark2) 100%);align-items:center;min-height:100vh;display:flex;position:relative}.hero-bg,.hero-shade{position:absolute;inset:0}.hero-bg{opacity:.5;background-position:50%;background-size:cover}.hero-shade{background:linear-gradient(90deg,#0d1117f7 40%,#0d111799 70%,#0d111740 100%)}.hero-accent{background:linear-gradient(to bottom, transparent, var(--brand), transparent);width:4px;position:absolute;top:0;bottom:0;left:0}.hero-inner{z-index:1;padding:7rem 0 5rem;position:relative}.hero-copy{max-width:48rem}.hero-eyebrow{margin-bottom:2rem}.hero h1{color:#fff;font-weight:900;font-size:var(--fs-hero);margin:0 0 .5rem;line-height:1.1}.hero h1 em{color:var(--brand);font-style:normal}.hero-body{color:#ffffffa6;max-width:520px;margin:0 0 3rem;font-size:clamp(1rem,1.8vw,1.15rem);line-height:1.7}.hero-ctas{flex-wrap:wrap;gap:1rem;margin-bottom:4rem;display:flex}.hero-ctas small{color:#fff6;margin-bottom:.25rem;font-size:.75rem;display:block}.hero-stat-label{letter-spacing:.16em;text-transform:uppercase;color:var(--brand);margin-bottom:.5rem;font-size:.75rem;font-weight:900}.hero-stats{align-items:flex-end;gap:2rem;display:flex}.hero-stat-main{color:var(--brand);font-size:clamp(2.8rem,5vw,4rem);font-weight:900;line-height:1}.hero-stat-sub{font-weight:900;font-size:var(--fs-num-sub);color:#fff6;line-height:1}.hero-stat-cap{margin-top:.25rem;font-size:.75rem}.hero-stat-cap.main{color:#ffffff80}.hero-stat-cap.sub{color:#ffffff4d}.hero-vs{color:#fff3;margin-bottom:.5rem;font-size:1.5rem;font-weight:900}.hero-source{color:#fff3;margin-top:.5rem;font-size:.75rem}.section-paper{background:var(--paper);padding:7rem 0}.section-dark{background:var(--dark2);padding:7rem 0}.section-navy{background:var(--dark);padding:7rem 0}.problem-title{max-width:700px;margin:0 0 4rem}.problem-grid{gap:0;display:grid}@media (width>=768px){.problem-grid{grid-template-columns:1fr 1.2fr 1fr;align-items:start}}.problem-phone{justify-content:center;padding-right:2.5rem;display:none}.problem-phone img{border-radius:24px;width:100%;max-width:180px;box-shadow:0 20px 60px #00000026}@media (width>=768px){.problem-phone{display:flex}.problem-copy{padding-right:2.5rem}}.problem-copy p{color:#3a3a3a;margin:0 0 2rem;font-size:1.125rem;line-height:1.75}.problem-copy strong{color:var(--ink)}.faq-box{border:1px solid var(--line-gray);border-left:4px solid var(--brand);background:#fff;padding:1.5rem}.faq-box h3{color:var(--brand);margin:0 0 .5rem;font-size:.875rem;font-weight:900}.faq-box p{color:var(--muted);margin:0;font-size:.875rem;line-height:1.7}.stat-grid{background:var(--line-gray);grid-template-columns:1fr 1fr;gap:1px;margin-top:3rem;display:grid}@media (width>=768px){.stat-grid{margin-top:0}}.stat-card{background:var(--paper);flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.stat-card .value{font-weight:900;font-size:var(--fs-num-sub);line-height:1}.stat-card p{margin:0 0 .5rem;font-weight:700}.stat-card small{color:#b0b0a8;font-size:.75rem}.opp-head{gap:2rem;margin-bottom:4rem;display:grid}@media (width>=768px){.opp-head{grid-template-columns:1fr 1fr;align-items:center;gap:4rem}}.opp-head h2{color:#fff}.opp-head h2 em{color:var(--brand);font-style:normal}.opp-head p{color:#ffffff8c;margin:0;font-size:1.125rem;line-height:1.7}.opp-cards{background:#ffffff14;gap:1px;display:grid}@media (width>=768px){.opp-cards{grid-template-columns:1fr 1fr 1fr}}.opp-card{background:var(--dark2);padding:2.5rem}.opp-card svg{color:var(--brand);margin-bottom:1.5rem}.opp-card .value{color:#fff;margin-bottom:1rem;font-size:clamp(3rem,5vw,4.5rem);font-weight:900;line-height:1}.opp-card hr{border:0;border-top:1px solid var(--brand);width:3rem;margin:0 0 1rem}.opp-card h3{color:#fff;margin:0 0 .75rem;font-size:1.25rem}.opp-card p{color:#ffffff80;margin:0;font-size:.875rem;line-height:1.7}.opp-card small{color:#fff3;margin-top:1rem;font-size:.75rem;display:block}.service-title{max-width:600px;margin:0 0 4rem}.service-grid{background:var(--line-gray);gap:1px;display:grid}@media (width>=768px){.service-grid{grid-template-columns:1fr 1fr}}.service-card{background:var(--paper);gap:1.5rem;padding:2.5rem;display:flex}.service-num{color:var(--line-gray);margin-bottom:1.5rem;font-size:2.25rem;font-weight:900;line-height:1}.service-card svg{color:var(--brand)}.service-card .sub{color:var(--brand);margin-bottom:.25rem;font-size:.75rem;font-weight:700}.service-card h3{margin:0 0 .75rem;font-size:1.25rem}.service-card p{color:var(--soft);margin:0;font-size:.875rem;line-height:1.7}.pricing-copy{max-width:48rem}.pricing-copy h2{color:#fff;margin-bottom:1.5rem}.pricing-copy>p{color:#ffffff80;margin:0 0 3rem;line-height:1.7}.price-block{border-left:3px solid var(--brand);margin-bottom:1rem;padding-left:2rem}.price-block .label{letter-spacing:.16em;text-transform:uppercase;color:var(--brand);margin-bottom:1rem;font-size:.75rem;font-weight:900}.price-block .amount{color:var(--brand);font-size:clamp(3.5rem,6vw,5rem);font-weight:900;line-height:1}.price-block .amount span{font-size:1.875rem}.price-block .period{color:#fff6;margin-top:.75rem;font-size:.875rem}.pricing-note{color:#ffffff59;margin:0 0 2.5rem;font-size:.875rem}.profile-grid{gap:4rem;max-width:64rem;display:grid}@media (width>=768px){.profile-grid{grid-template-columns:2fr 1fr;align-items:start}}.profile-photo-mobile{object-fit:cover;object-position:top;border:4px solid var(--brand);border-radius:1rem;width:8rem;height:8rem;margin-bottom:1.5rem}.profile-photo-desk{aspect-ratio:1;object-fit:cover;object-position:top;border:4px solid var(--brand);border-radius:1rem;width:100%;max-width:240px;display:none}@media (width>=768px){.profile-photo-mobile{display:none}.profile-photo-desk{display:block}}.profile-copy h2{margin:0 0 .25rem;font-size:1.875rem}.profile-role{color:var(--brand);margin:0 0 1.5rem;font-size:.875rem;font-weight:900}.profile-copy hr{border:0;border-top:1px solid var(--line-gray);margin:0 0 1.5rem}.career{margin-bottom:1.5rem}.career .label{color:#9ca3af;margin:0 0 .5rem;font-size:.75rem}.career p{color:var(--muted);margin:0 0 .5rem;font-size:.875rem;line-height:1.7}.career p strong{color:var(--ink)}.career a{color:#9ca3af;font-size:.75rem}.cta-grid{display:grid}@media (width>=768px){.cta-grid{grid-template-columns:1fr 1fr}}.cta-col{padding:3rem 0}@media (width>=768px){.cta-col.apply{padding-right:4rem}.cta-col.line{padding-left:4rem}}.cta-col .kicker{letter-spacing:.16em;text-transform:uppercase;margin:0 0 1rem;font-size:.75rem;font-weight:900}.cta-col.apply .kicker{color:var(--brand)}.cta-col.line .kicker{color:var(--line)}.cta-col h3{color:#fff;margin:0 0 1rem}.cta-col>p{color:#ffffff80;margin:0 0 2rem;font-size:.875rem;line-height:1.7}.steps{margin:0 0 2rem}.step{border-left:1px solid #2563eb4d;margin-left:10px;padding:0 0 1.5rem 24px;position:relative}.cta-col.line .step{border-left-color:#34d3994d}.step:last-child{border-left-color:#0000}.step-num{border-radius:999px;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;font-size:.75rem;font-weight:900;display:flex;position:absolute;top:0;left:-10px}.cta-col.apply .step-num{background:var(--brand);color:#fff}.cta-col.line .step-num{background:var(--line);color:var(--dark2)}.step strong{color:#fff;margin-bottom:.25rem;font-size:.875rem;display:block}.step p{color:#fff6;margin:0;font-size:.75rem;line-height:1.6}.cta-note{color:#fff3;margin:.75rem 0 0;font-size:.75rem}.legal-header{background:var(--dark2);border-bottom:1px solid #2563eb33;padding:1rem 1.5rem}.legal-header .container{justify-content:space-between;align-items:center;max-width:none;display:flex}.legal-header img{height:1.5rem}.legal-header a{color:#ffffff80;font-size:.75rem;text-decoration:none}.legal-header a:hover{color:#fff}.legal-main{background:var(--paper);padding:5rem 0}.legal-wrap{max-width:48rem}.legal-main h1{margin:0 0 .5rem;font-size:2.25rem;font-weight:900}.legal-updated{color:#9ca3af;margin:0 0 3rem;font-size:.875rem}.legal-body{color:var(--muted);font-size:1rem;line-height:1.75}.legal-body h2{color:var(--ink);margin:2.5rem 0 .75rem;font-size:1.125rem;font-weight:900}.legal-body p{margin:0 0 1rem}.legal-body ul{padding-left:1.25rem}.legal-body li{margin-bottom:.35rem}.legal-footer{border-top:1px solid var(--line-gray);color:#9ca3af;white-space:pre-line;margin-top:4rem;padding-top:2rem;font-size:.875rem}.toku-list{border-top:1px solid var(--line-gray);border-bottom:1px solid var(--line-gray)}.toku-row{border-bottom:1px solid var(--line-gray);gap:1rem;padding:1.25rem 0;display:grid}.toku-row:last-child{border-bottom:0}@media (width>=768px){.toku-row{grid-template-columns:1fr 2fr}}.toku-row dt{font-size:.875rem;font-weight:900}.toku-row dd{color:var(--muted);white-space:pre-line;margin:0;font-size:.875rem;line-height:1.7}.toku-row a{color:var(--brand)}.toku-note{border:1px solid var(--line-gray);border-left:4px solid var(--brand);color:#6a6a6a;white-space:pre-line;background:#fff;margin-top:3rem;padding:1.5rem;font-size:.75rem;line-height:1.7}.site-footer{background:var(--footer);border-top:1px solid #2563eb33;padding:2rem 0}.footer-inner{flex-direction:column;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.footer-inner img{height:1.25rem}.footer-links{flex-wrap:wrap;justify-content:center;gap:.5rem 1.5rem;display:flex}.footer-links a{color:#ffffff4d;font-size:.75rem;text-decoration:none}.footer-links a:hover{color:#fff9}.site-footer p{color:#fff3;margin:0;font-size:.75rem}@media (width>=768px){.footer-inner{flex-direction:row}}.contact-wait{background:var(--dark);color:#ffffff80;justify-content:center;align-items:center;min-height:100vh;font-size:.875rem;display:flex}.not-found{background:var(--paper);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:70vh;padding:6rem 1.5rem;display:flex}.not-found h1{margin:0 0 1rem;font-size:2rem}.not-found a{color:var(--brand);font-weight:700}
