/* ============================================================
   v3-line.css — 路線ページ専用 chrome（ヒーロー/サマリー/駅一覧/料金表/FAQ/ブランド/Tips）
   旧: functions.php v3_line_page 内 <style> を外部化。
   カード表示は v3-list.css 側。
   ============================================================ */
.v3-lp-hero{background:linear-gradient(135deg,#0a4f8e 0%,#1d3557 100%);color:#fff;padding:48px 16px 40px;text-align:center;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
.v3-lp-hero h1{font-size:clamp(22px,4vw,32px);color:#fff!important;background:transparent!important;padding:0!important;border:none!important;margin:0;}
.v3-lp-hero .sub{margin-top:8px;opacity:.9;}
.v3-lp-wrap{max-width:1120px;margin:0 auto;padding:32px 12px;}
.v3-lp-wrap h2{font-size:18px!important;color:#2a3142!important;background:transparent!important;padding:0!important;border:none!important;margin:24px 0 14px!important;}
.v3-lp-wrap h2::before,.v3-lp-wrap h2::after{content:none!important;display:none!important;}
.v3-lp-summary{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:18px 22px;margin-bottom:24px;}
.v3-lp-summary dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px 24px;margin:0;}
.v3-lp-summary dt{font-size:12px;color:#6b7280;font-weight:600;margin-top:6px;}
.v3-lp-summary dd{margin:0 0 4px;font-size:15px;color:#1a3a5c;font-weight:600;}
.v3-lp-summary dd .unit{font-size:12px;color:#6b7280;font-weight:400;margin-left:4px;}
.v3-lp-sts{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;}
.v3-lp-sts a{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;text-decoration:none;color:#1a1a1a;}
.v3-lp-sts a.no-posts{opacity:.5;background:#f9fafb;}
.v3-lp-sts a:hover:not(.no-posts){border-color:#0a4f8e;background:#f5f7fa;}
.v3-lp-sts .cnt{font-size:12px;color:#666;}
.v3-lp-top{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;}
.v3-lp-top a{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border:2px solid #0a4f8e;border-radius:8px;text-decoration:none;color:#1a3a5c;font-weight:600;}
.v3-lp-top a:hover{background:#0a4f8e;color:#fff;}
.v3-lp-top .cnt{font-size:12px;color:#666;font-weight:400;}
.v3-lp-top a:hover .cnt{color:#fff;}
.v3-lp-faq details{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px 16px;margin-bottom:8px;}
.v3-lp-faq summary{font-weight:600;color:#1a3a5c;cursor:pointer;list-style:none;font-size:14px;}
.v3-lp-faq summary::-webkit-details-marker{display:none;}
.v3-lp-faq summary::before{content:'Q. ';color:#0a4f8e;}
.v3-lp-faq details[open] summary{margin-bottom:8px;}
.v3-lp-faq .a{font-size:13px;color:#444;line-height:1.7;padding-left:1.4em;text-indent:-1.4em;margin:0;}
.v3-lp-faq .a::before{content:'A. ';color:#e63946;font-weight:700;}
.v3-lp-pricing table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;}
.v3-lp-pricing thead{background:#f8fafc;}
.v3-lp-pricing th{text-align:left;padding:10px 14px;font-size:13px;color:#1a3a5c;border-bottom:1px solid #e5e7eb;}
.v3-lp-pricing td{padding:8px 14px;font-size:13px;border-bottom:1px solid #f1f5f9;}
.v3-lp-pricing td.num{text-align:right;font-weight:600;color:#0a4f8e;}
.v3-lp-brands{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;}
.v3-lp-brands a{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;text-decoration:none;color:#1a1a1a;font-size:13px;}
.v3-lp-tips{margin:32px 0;padding:24px;background:#fafafa;border-top:1px solid #e5e5e5;border-radius:8px;}
.v3-lp-tips ol{margin:0;padding:0 0 0 24px;line-height:1.9;color:#333;font-size:14px;}
/* 路線地図 */
.v3-lp-map{height:480px;width:100%;border-radius:10px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.08);margin-bottom:24px;}
.v3-lp-map-caption{font-size:12px;color:#888;margin:-18px 0 18px;padding-left:6px;}
