/* 販売ページ(lp.html)。共通の style.css の上に重ねる */
body.lp{background:#fbfaf7}
@media (prefers-color-scheme:dark){body.lp{background:var(--bg)}}
.lp-top{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;max-width:1080px;margin:0 auto}
.lp-top nav{display:flex;gap:16px;align-items:center;font-size:14px}.lp-top nav a{color:var(--fg);text-decoration:none}
.btn-sm{border:1px solid var(--line);border-radius:999px;padding:6px 14px}
.fv{max-width:1080px;margin:24px auto 40px;padding:0 24px;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
@media (max-width:860px){.fv{grid-template-columns:1fr}}
.eyebrow{color:var(--acc);font-weight:700;margin:0 0 8px}
.fv h1{font-size:40px;line-height:1.3;margin:0 0 16px}@media (max-width:600px){.fv h1{font-size:30px}}
.mark{background:linear-gradient(transparent 60%,#ffe08a 60%)}
@media (prefers-color-scheme:dark){.mark{background:linear-gradient(transparent 60%,#6b5a1a 60%)}}
.sub{font-size:17px;color:var(--fg)}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 12px}
.btn-buy{display:inline-block;background:var(--acc);color:#fff;font-weight:800;padding:14px 26px;border-radius:12px;text-decoration:none;font-size:17px;box-shadow:0 6px 18px rgba(36,88,214,.25)}
.btn-buy.wide{display:block;text-align:center;margin:16px 0 8px}
.btn-ghost{display:inline-block;border:1px solid var(--line);color:var(--fg);padding:14px 22px;border-radius:12px;text-decoration:none;background:var(--card)}
.fine{font-size:13px;color:var(--mut)}
.fv-demo{background:#12151a;color:#f2f4f7;border-radius:18px;padding:18px 20px;box-shadow:0 18px 50px rgba(0,0,0,.25);position:relative}
.mock-q{font-size:13px;color:#9aa4b2;margin-bottom:8px}.mock-one{font-size:24px;font-weight:800;line-height:1.45}
.mock-pts{margin:10px 0;padding-left:1.3em;color:#dfe7f5}.mock-body{border-top:1px solid #2a2f38;padding-top:8px;color:#c9d1dc;font-size:14px}
.mock-tag{position:absolute;right:12px;bottom:-24px;font-size:12px;color:var(--mut)}
.band{background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:40px 24px}
.band>*,.steps3>*,.price>*,.faq>*,.final>*{max-width:860px;margin-left:auto;margin-right:auto}
.band h2,.steps3 h2,.price h2,.faq h2,.final h2{font-size:26px;text-align:center;margin-bottom:20px}
.checks{list-style:none;padding:0}.checks li{padding:10px 0 10px 32px;position:relative;border-bottom:1px dashed var(--line)}.checks li::before{content:'✓';position:absolute;left:4px;color:var(--ok);font-weight:900}
.steps3{padding:48px 24px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width:760px){.grid3{grid-template-columns:1fr}}
.step{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px}.step .n{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--acc);color:#fff;font-weight:800}.step h3{font-size:18px}
.plain-list{padding-left:1.2em}.plain-list li{margin:10px 0}.center-text{text-align:center}
.price{padding:48px 24px}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:900px!important}@media (max-width:760px){.price-grid{grid-template-columns:1fr}}.price-card.best{border-color:#d9a520;box-shadow:0 10px 30px rgba(217,165,32,.18)}.tagline{font-size:12px;font-weight:600;color:var(--mut);margin-left:6px}.price-card{background:var(--card);border:2px solid var(--acc);border-radius:20px;padding:28px;max-width:440px!important}
.plan{font-weight:800;color:var(--acc)}.yen{font-size:46px;font-weight:900}.yen span{font-size:16px;font-weight:600;color:var(--mut)}.once{color:var(--mut);margin-bottom:10px}
.refund{margin-top:20px!important;font-size:14px;background:var(--bg);border-radius:12px;padding:14px}
.faq{padding:40px 24px}.faq details{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin:8px auto}.faq summary{font-weight:700;cursor:pointer}
.final{padding:48px 24px;text-align:center}
.lp-foot{text-align:center;font-size:13px;color:var(--mut);padding:24px;border-top:1px solid var(--line)}.lp-foot a{color:var(--mut)}
/* 体験ページ */
.demo-wrap{max-width:860px;margin:10px auto 40px;padding:0 20px}.demo-wrap h1{font-size:30px}
.demo-qs{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.demo-qs button{border-radius:999px;padding:8px 14px;font-size:14px}.demo-qs button.on{border-color:var(--acc);background:var(--acc2);color:var(--acc);font-weight:700}
.demo-stage{background:#101318;color:#f2f4f7;border-radius:18px;padding:16px 20px;min-height:260px;box-shadow:0 18px 50px rgba(0,0,0,.25)}
.stage-top{display:flex;gap:8px;align-items:center;font-size:13px;color:#9aa4b2;border-bottom:1px solid #2a2f38;padding-bottom:8px;margin-bottom:10px}.stage-top .dot{width:9px;height:9px;border-radius:50%;background:#9aa4b2}.stage-top .dot.listening{background:#4cd18a}
.stage-top .timer{margin-left:auto;color:#ffcf5c;font-weight:700}
.stage-one{font-size:28px;font-weight:800;line-height:1.45;color:#fff}.stage-pts{color:#dfe7f5;margin:10px 0 0;padding-left:1.4em}.stage-body{margin-top:10px;padding-top:8px;border-top:1px solid #2a2f38;white-space:pre-wrap;line-height:1.8;color:#c9d1dc}
.demo-stage .ph{color:#ffcf5c;background:transparent}
.center-row{justify-content:center}
.brand-link{text-decoration:none;color:inherit}
