:root{
  --ink:#0f172a;
  --line:#e2e8f0;
  --accent:#0ea5e9;
}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans JP",sans-serif;color:var(--ink)}
.container{max-width:900px;margin:0 auto;padding:20px}
.header{border-bottom:1px solid var(--line)}
.brand__name{font-weight:800}
.brand__sub{font-size:12px;color:#64748b}
.hero{padding:60px 0}
.badge{display:inline-block;border:1px solid var(--line);padding:6px 10px;border-radius:999px;font-size:12px}
h1{font-size:36px;margin:16px 0}
.lead{color:#475569}
.cta{margin-top:20px;display:flex;gap:12px;flex-wrap:wrap}
.btn{padding:12px 16px;border-radius:10px;text-decoration:none;font-weight:700;border:1px solid var(--line)}
.btn--primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.btn--secondary{background:#fff;color:var(--ink)}
.footer{border-top:1px solid var(--line);padding:20px 0;margin-top:40px}
.fineprint{font-size:12px;color:#64748b;margin-top:12px;line-height:1.6}


/* Booking-focused helpers */
.cta-help{margin-top:8px}
.help-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.help-label{font-size:12px;color:#64748b}
.help-link{font-size:12px;color:#0f172a;text-decoration:underline}
.copy-btn{font-size:12px;font-weight:700;border:1px solid #cbd5e1;background:#fff;border-radius:999px;padding:6px 10px;cursor:pointer}
.copy-btn:hover{transform:translateY(-1px)}
.card-note{margin-top:12px;padding:10px 12px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;font-size:13px;color:#334155;line-height:1.6}
.flow-cta{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}
.faq{display:grid;gap:10px;margin-top:14px}
.faq-item{border:1px solid #e2e8f0;border-radius:14px;padding:10px 12px;background:#fff}
.faq-item summary{cursor:pointer;font-weight:800}
.faq-item p{margin:10px 0 0;color:#475569;line-height:1.7}
.toast{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);background:rgba(15,23,42,0.92);color:#fff;padding:10px 12px;border-radius:12px;font-size:13px;opacity:0;pointer-events:none;transition:opacity .18s ease}
.toast--show{opacity:1}
