:root{--ink: #0b1220;--ink-2: #1e293b;--body: #334155;--muted: #64748b;--line: #e2e8f0;--bg: #ffffff;--surface: #f8fafc;--accent: #1d4ed8;--accent-soft: #eff6ff;--warn: #b45309;--warn-soft: #fffbeb;--max: 1080px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--body);font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,Meiryo,sans-serif;font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}h1,h2,h3{color:var(--ink);line-height:1.5;letter-spacing:-.01em;margin:0}p{margin:0}a{color:var(--accent)}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}.narrow{max-width:760px}header.site{position:sticky;top:0;z-index:50;background:#ffffffe6;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}header.site .inner{display:flex;align-items:center;justify-content:space-between;height:62px}.brand{display:flex;align-items:center;gap:9px;font-weight:800;color:var(--ink);text-decoration:none;letter-spacing:-.02em;font-size:17px}.brand svg{display:block}.nav{display:flex;align-items:center;gap:22px}.nav a{color:var(--ink-2);text-decoration:none;font-size:14px;font-weight:600}.nav a:hover{color:var(--accent)}@media (max-width: 720px){.nav .hide-sm{display:none}}.btn{display:inline-block;padding:13px 26px;border-radius:8px;background:var(--ink);color:#fff;text-decoration:none;font-weight:700;font-size:15px;border:1px solid var(--ink);transition:opacity .15s}.btn:hover{opacity:.86}.btn.sm{padding:8px 16px;font-size:13px}.btn.ghost{background:transparent;color:var(--ink)}.btn.on-dark{background:#fff;color:var(--ink);border-color:#fff}.btn.on-dark.ghost{background:transparent;color:#fff;border-color:#ffffff59}.hero{background:var(--ink);color:#cbd5e1;padding:92px 0 96px}.hero h1{color:#fff;font-size:clamp(30px,5.2vw,50px);font-weight:800;letter-spacing:-.03em}.hero .lead{margin-top:26px;font-size:17px;line-height:2;max-width:640px}.hero .cta{margin-top:38px;display:flex;gap:12px;flex-wrap:wrap}.eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.12em;padding:5px 12px;border-radius:99px;margin-bottom:22px;background:#60a5fa24;color:#93c5fd;border:1px solid rgba(96,165,250,.28)}.eyebrow.light{background:var(--accent-soft);color:var(--accent);border-color:#bfdbfe}section{padding:88px 0}section.alt{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sec-head{max-width:720px;margin-bottom:48px}.sec-head h2{font-size:clamp(23px,3.4vw,32px);font-weight:800}.sec-head p{margin-top:18px;color:var(--body)}.grid{display:grid;gap:20px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}@media (max-width: 860px){.g2,.g3,.g4{grid-template-columns:1fr}}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px 24px}.card h3{font-size:17px;font-weight:800;margin-bottom:10px}.card p{font-size:14.5px;line-height:1.9}.card .tag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.06em;padding:3px 9px;border-radius:5px;margin-bottom:14px;background:var(--accent-soft);color:var(--accent)}.card .tag.warn{background:var(--warn-soft);color:var(--warn)}.steps{counter-reset:s;display:grid;gap:0}.step{display:grid;grid-template-columns:44px 1fr;gap:20px;padding:24px 0;border-top:1px solid var(--line)}.step:last-child{border-bottom:1px solid var(--line)}.step .n{counter-increment:s;width:34px;height:34px;border-radius:8px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;font-variant-numeric:tabular-nums}.step .n:before{content:counter(s)}.step h3{font-size:16px;font-weight:800;margin-bottom:6px}.step p{font-size:14.5px}.plan{background:#fff;border:1px solid var(--line);border-radius:12px;padding:30px 26px;display:flex;flex-direction:column}.plan.featured{border-color:var(--ink);box-shadow:0 12px 32px #0b122014}.plan .name{font-size:14px;font-weight:800;color:var(--ink);letter-spacing:.04em}.plan .price{margin:14px 0 4px;font-size:30px;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}.plan .price small{font-size:14px;font-weight:600;color:var(--muted)}.plan ul{list-style:none;padding:0;margin:20px 0 0}.plan li{font-size:14px;padding:7px 0 7px 22px;position:relative}.plan li:before{content:"";position:absolute;left:4px;top:15px;width:7px;height:7px;border-radius:99px;background:var(--accent)}details{border-bottom:1px solid var(--line);padding:20px 0}details summary{cursor:pointer;font-weight:700;color:var(--ink);font-size:15.5px;list-style:none}details summary::-webkit-details-marker{display:none}details summary:after{content:"＋";float:right;color:var(--muted);font-weight:400}details[open] summary:after{content:"−"}details p{margin-top:14px;font-size:14.5px}table.info{width:100%;border-collapse:collapse;font-size:14.5px}table.info th,table.info td{text-align:left;vertical-align:top;padding:15px 8px;border-bottom:1px solid var(--line)}table.info th{width:170px;color:var(--ink);font-weight:700;white-space:nowrap}@media (max-width: 620px){table.info th,table.info td{display:block;width:auto;border-bottom:none;padding:4px 0}table.info tr{display:block;padding:14px 0;border-bottom:1px solid var(--line)}}.legal h2{font-size:19px;margin:44px 0 14px}.legal h3{font-size:16px;margin:26px 0 10px}.legal p,.legal li{font-size:15px}.legal ol,.legal ul{padding-left:1.4em}.legal li{margin:6px 0}.band{background:var(--ink);color:#cbd5e1;padding:76px 0;text-align:center}.band h2{color:#fff;font-size:clamp(22px,3.4vw,30px);font-weight:800}.band p{margin-top:16px}.band .cta{margin-top:32px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}footer.site{border-top:1px solid var(--line);padding:52px 0 40px;background:var(--surface)}footer.site .cols{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}footer.site .links{display:flex;gap:26px;flex-wrap:wrap}footer.site a{color:var(--ink-2);text-decoration:none;font-size:14px}footer.site a:hover{color:var(--accent)}footer.site .copy{margin-top:34px;font-size:12.5px;color:var(--muted)}.addr{font-size:13px;color:var(--muted);line-height:1.9;margin-top:12px}
