:root{--ink:#101F33;--ink-2:#41526A;--ink-3:#77879B;--navy:#16345C;--navy-2:#1F4E86;--brand:#2E6FB7;--brand-d:#215691;--brand-soft:#EAF1F9;--accent:#E5892C;--accent-soft:#FDF2E4;--teal:#0E8C76;--teal-soft:#E5F4F1;--pink:#E4677E;--pink-soft:#FCECEF;--line:#E1E8F1;--line-2:#EFF3F8;--bg:#FFFFFF;--bg-2:#F6F9FD;--radius:14px;--shadow:0 1px 2px rgba(16,31,51,.05), 0 8px 28px rgba(16,31,51,.07);--max:1080px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Noto Sans CJK JP,Yu Gothic Medium,sans-serif;font-size:16px;line-height:1.85;-webkit-font-smoothing:antialiased;font-feature-settings:"palt" 1}img{max-width:100%;display:block}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}header{position:sticky;top:0;z-index:50;background:#ffffffeb;backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;height:68px}.logo{display:flex;align-items:center;gap:11px;color:var(--navy)}.logo:hover{text-decoration:none}.logo .n{font-weight:700;font-size:16px;letter-spacing:.06em;line-height:1.25}.logo .e{font-size:9px;letter-spacing:.26em;color:var(--ink-3)}.nav ul{display:flex;gap:26px;list-style:none;margin:0;padding:0;font-size:14px}.nav ul a{color:var(--ink-2);font-weight:500}.nav ul a:hover{color:var(--brand);text-decoration:none}.nav .cta{background:var(--brand);color:#fff;padding:9px 20px;border-radius:999px;font-size:14px;font-weight:600}.nav .cta:hover{background:var(--brand-d);text-decoration:none}.burger{display:none;background:none;border:0;cursor:pointer;padding:8px}.hero{background:radial-gradient(900px 520px at 82% 8%,rgba(229,137,44,.13),transparent 62%),radial-gradient(760px 480px at 8% 92%,rgba(14,140,118,.11),transparent 60%),linear-gradient(180deg,#f8fbff,#fff);padding:84px 0 76px;border-bottom:1px solid var(--line-2)}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}.hero-center{max-width:720px;margin:0 auto;text-align:center}.eyebrow{display:inline-block;font-size:12px;letter-spacing:.16em;font-weight:700;color:var(--brand);background:var(--brand-soft);padding:6px 14px;border-radius:999px;margin-bottom:22px}.hero h1{font-size:clamp(30px,4.4vw,45px);line-height:1.42;margin:0 0 22px;letter-spacing:.01em;font-weight:800;color:var(--navy)}.hero h1 em{font-style:normal;color:var(--accent)}.hero p.lead{font-size:17px;color:var(--ink-2);margin:0 0 32px;line-height:2}.btn-row{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:9px;padding:14px 28px;border-radius:999px;font-weight:700;font-size:15px;transition:.16s}.btn-primary{background:var(--brand);color:#fff;box-shadow:0 6px 18px #2e6fb747}.btn-primary:hover{background:var(--brand-d);text-decoration:none;transform:translateY(-1px)}.btn-ghost{background:#fff;color:var(--navy);border:1.5px solid var(--line)}.btn-ghost:hover{border-color:var(--brand);color:var(--brand);text-decoration:none}.mock{background:linear-gradient(155deg,#12294a,#1f4e86);border-radius:26px;padding:26px;box-shadow:0 24px 60px #10345c47}.mock-in{background:#fff;border-radius:16px;padding:24px 22px}.mock-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.mock-h .t{font-weight:800;color:var(--navy);font-size:15px}.mock-h .b{font-size:11px;background:var(--accent-soft);color:#a45e10;padding:4px 10px;border-radius:999px;font-weight:700}.mock-q{border:2px solid var(--line);border-radius:12px;padding:18px;text-align:center;margin-bottom:14px}.mock-q .k{font-size:52px;font-weight:800;color:var(--navy);line-height:1;letter-spacing:.06em}.mock-q .s{font-size:12px;color:var(--ink-3);margin-top:8px}.mock-opts{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.mock-opts div{border-radius:10px;padding:12px 0;text-align:center;font-weight:700;font-size:19px;background:var(--bg-2);color:var(--ink-2);border:1.5px solid var(--line)}.mock-opts div.ok{background:var(--teal-soft);border-color:#9fd8cc;color:#0a6e5c}section{padding:78px 0}section.alt{background:var(--bg-2);border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}.sec-head{text-align:center;max-width:660px;margin:0 auto 48px}.sec-head .kicker{font-size:12px;letter-spacing:.2em;color:var(--brand);font-weight:700;margin-bottom:12px}.sec-head h2{font-size:clamp(24px,3vw,32px);margin:0 0 16px;color:var(--navy);font-weight:800;letter-spacing:.01em;line-height:1.5}.sec-head p{color:var(--ink-2);margin:0;font-size:16px}.sec-head.left{text-align:left;margin-left:0}h3.blk{font-size:20px;color:var(--navy);font-weight:800;margin:0 0 16px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cards.c2{grid-template-columns:repeat(2,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;transition:.18s}.card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.card .ic{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:18px}.card.area{border-top:3px solid var(--area,var(--brand))}.card h3{font-size:18px;margin:0 0 10px;color:var(--navy);font-weight:800}.card p{margin:0;color:var(--ink-2);font-size:14.5px;line-height:1.85}.card .ex{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line);font-size:13px;color:var(--ink-3)}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}.plan{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px 26px;text-align:center;position:relative}.plan.reco{border:2px solid var(--brand);box-shadow:0 14px 40px #2e6fb729}.plan .badge{position:absolute;top:-13px;left:50%;transform:translate(-50%);background:var(--brand);color:#fff;font-size:12px;font-weight:700;padding:5px 18px;border-radius:999px;white-space:nowrap}.plan .pn{font-size:15px;font-weight:800;color:var(--navy);margin-bottom:16px}.plan .pp{font-size:40px;font-weight:800;color:var(--navy);line-height:1.1}.plan .pp small{font-size:17px;font-weight:700}.plan .pu{font-size:13px;color:var(--ink-3);margin-top:8px}.plan ul{list-style:none;padding:0;margin:22px 0 0;text-align:left;font-size:14px;color:var(--ink-2)}.plan ul li{padding:9px 0 9px 26px;position:relative;border-bottom:1px solid var(--line-2)}.plan ul li:last-child{border-bottom:0}.plan ul li:before{content:"";position:absolute;left:2px;top:16px;width:13px;height:7px;border-left:2.4px solid var(--teal);border-bottom:2.4px solid var(--teal);transform:rotate(-45deg)}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.step{position:relative}.step .n{width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;margin-bottom:14px}.step h4{font-size:15px;margin:0 0 8px;color:var(--navy);font-weight:800}.step p{font-size:13.5px;color:var(--ink-2);margin:0;line-height:1.8}.step:not(:last-child):after{content:"";position:absolute;left:44px;top:19px;right:-9px;height:2px;background:var(--line)}table.tbl{width:100%;border-collapse:collapse;font-size:15px;background:#fff}table.tbl th,table.tbl td{border-bottom:1px solid var(--line);padding:16px 18px;text-align:left;vertical-align:top}table.tbl th{background:var(--bg-2);color:var(--navy);font-weight:700;width:26%;white-space:nowrap}table.tbl thead th{background:var(--navy);color:#fff;white-space:normal}table.tbl tr:last-child th,table.tbl tr:last-child td{border-bottom:0}.tbl-wrap{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.note{background:var(--brand-soft);border:1px solid #CFE0F1;border-radius:var(--radius);padding:24px 26px;font-size:15px;color:var(--ink-2)}.note.ok{background:var(--teal-soft);border-color:#c3e4dc}.note.warn{background:var(--accent-soft);border-color:#f3ddbe}.note b{color:var(--navy)}.note .t{display:block;font-weight:800;color:var(--navy);margin-bottom:8px;font-size:16px}.cta-band{background:linear-gradient(140deg,#12294a,#1f4e86);color:#fff;text-align:center;padding:70px 24px}.cta-band h2{font-size:clamp(23px,3vw,31px);margin:0 0 16px;font-weight:800;line-height:1.55}.cta-band p{color:#c3d9f0;margin:0 0 30px;font-size:16px}.cta-band .btn-primary{background:#fff;color:var(--navy);box-shadow:0 8px 26px #0000003d}.cta-band .btn-primary:hover{background:#f0f5fb}.doc{max-width:800px;margin:0 auto}.doc h2{font-size:22px;color:var(--navy);margin:44px 0 14px;padding-bottom:10px;border-bottom:2px solid var(--line);font-weight:800}.doc h2:first-child{margin-top:0}.doc h3{font-size:17px;color:var(--navy-2);margin:26px 0 10px;font-weight:700}.doc p{color:var(--ink-2);font-size:15.5px}.doc ul,.doc ol{color:var(--ink-2);font-size:15.5px;padding-left:22px}.doc li{margin-bottom:8px}.phead{background:var(--bg-2);border-bottom:1px solid var(--line);padding:52px 0 46px}.phead .kicker{font-size:12px;letter-spacing:.2em;color:var(--brand);font-weight:700;margin-bottom:10px}.phead h1{font-size:clamp(26px,3.4vw,36px);margin:0;color:var(--navy);font-weight:800}.phead p{margin:14px 0 0;color:var(--ink-2)}footer{background:#0e1f35;color:#a9bbd0;padding:56px 0 30px;font-size:14px}footer .cols{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;margin-bottom:38px}footer .logo .n{color:#fff}footer .logo .e{color:#7e93ac}footer h4{color:#fff;font-size:13px;letter-spacing:.1em;margin:0 0 14px;font-weight:700}footer ul{list-style:none;padding:0;margin:0}footer li{margin-bottom:9px}footer a{color:#a9bbd0}footer a:hover{color:#fff}footer .addr{margin-top:16px;line-height:1.95;font-size:13px;color:#8ca1ba}footer .btm{border-top:1px solid #22364F;padding-top:22px;font-size:12px;color:#7e93ac;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}.todo{background:#fff3cd;border-bottom:2px dotted #C9922A;color:#8a6410;font-weight:700;padding:0 3px}@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:40px}.cards,.cards.c2,.plans{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.step:after{display:none}footer .cols{grid-template-columns:1fr;gap:28px}.nav ul{display:none}.nav ul.open{display:flex;flex-direction:column;position:absolute;top:68px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 24px;gap:4px}.nav ul.open li{padding:10px 0;border-bottom:1px solid var(--line-2)}.burger{display:block}.nav .cta{display:none}table.tbl th{width:34%;white-space:normal}section{padding:56px 0}}@media(max-width:560px){.steps{grid-template-columns:1fr}table.tbl th,table.tbl td{padding:12px 13px;font-size:14px}}
