/* 料金ページ: 本番トップ（staging-v11）の料金セクションを、新デザインのトークンで移植 */
:root{--bg2:#eceae4;--faint:#6b6760} /* 注記・税込表示は本文並みのコントラスト（白地で約5:1）。#a29e98 は 2.4:1 で不合格だった */
.mng__scroll:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.prc-hero{padding-bottom:30px}
.prc-hero .detail-title>div>p strong{color:var(--ink);font-weight:900}
.prc-sec{padding-top:30px;padding-bottom:30px}
.prc{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.6vw,20px)}
.prc__card{background:#fff;border:1px solid var(--line);border-top:2px solid var(--red);padding:clamp(22px,2.6vw,34px);display:flex;flex-direction:column;gap:14px;transition:.3s}
.prc__card:hover{border-color:var(--red);transform:translateY(-3px)}
.prc__tag{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--red)}
.prc__name{font-weight:900;font-size:clamp(19px,2vw,24px)}
.prc__price{font-family:var(--display);font-size:clamp(24px,2.2vw,30px);letter-spacing:-.02em;line-height:1.15;white-space:nowrap}
.prc__price small{font-family:var(--mono);font-size:10px;color:var(--faint);letter-spacing:.08em;margin-left:6px}
.prc__spec{display:flex;flex-wrap:wrap;gap:6px}
.prc__spec span{font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:var(--red);border:1px solid rgba(216,0,24,.35);padding:4px 7px;white-space:nowrap}
.prc__word{color:var(--muted);font-size:13px;line-height:1.85}
.prc__inc{list-style:none;padding:12px 0 0;margin:0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.prc__inc li{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--muted)}
.prc__inc li::before{content:'/ ';color:var(--red)}
.prc__inc b{color:var(--ink)}
.prc__ex{margin-top:2px;padding-top:12px;border-top:1px dashed rgba(25,25,25,.2)}
.prc__ex b{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--faint);font-weight:400;margin-bottom:6px}
.prc__ex a{display:inline-block;font-weight:700;color:var(--ink);border-bottom:1px solid var(--red);margin-right:14px;font-size:13.5px}
.prc__ex a:hover{color:var(--red)}
.prc__ref{margin-top:auto;padding-top:12px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--faint)}
.mng{background:#fff;border:1px solid var(--line);border-left:3px solid var(--red);padding:clamp(18px,2.2vw,24px) clamp(20px,2.6vw,30px)}
.mng__tag{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--red);margin-bottom:14px}
.mng__scroll{overflow-x:auto}
.mng__t{width:100%;min-width:660px;border-collapse:collapse;font-variant-numeric:tabular-nums}
.mng__t th,.mng__t td{text-align:left;vertical-align:top;padding:13px 14px;border-bottom:1px solid var(--line)}
.mng__t tbody tr:last-child th,.mng__t tbody tr:last-child td{border-bottom:0}
.mng__t thead th{text-align:center;vertical-align:bottom;width:16%;border-bottom:1px solid rgba(25,25,25,.25);padding-top:0}
.mng__t thead th.mng__rowhead{width:52%}
.mng__t tbody th{font-weight:900;font-size:13.5px;color:var(--ink);line-height:1.65}
.mng__t tbody th em{display:block;font-family:var(--mono);font-style:normal;font-weight:400;font-size:10.5px;letter-spacing:.04em;color:var(--faint);line-height:1.8;margin-top:5px}
.mng__t tbody td{text-align:center}
.mng__badge{display:inline-block;font-family:var(--mono);font-size:9px;letter-spacing:.12em;color:#fff;background:var(--red);padding:3px 7px;margin-bottom:7px}
.mng__name{display:block;font-weight:900;font-size:clamp(15px,1.7vw,18px);color:var(--ink)}
.mng__price{display:block;font-family:var(--display);font-size:clamp(15px,1.7vw,19px);letter-spacing:-.01em;white-space:nowrap;margin-top:4px}
.mng__price small{font-family:var(--mono);font-size:9px;color:var(--faint);letter-spacing:.08em;margin-left:4px}
.mng__t .is-pick{background:rgba(216,0,24,.05)}
.mng__t thead th.is-pick{box-shadow:inset 0 2px 0 var(--red)}
.mng__t .yes{color:var(--red);font-weight:900;font-size:17px;line-height:1}
.mng__t .no{color:var(--faint);font-size:15px;line-height:1}
.mng__t tbody td b{font-weight:900;font-size:14px;color:var(--ink)}
.mng__notes{list-style:none;margin:16px 0 0;padding:14px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.mng__notes li{font-size:12.5px;line-height:1.8;color:var(--muted)}
.mng__notes li::before{content:'／ ';color:var(--red)}
.mng__notes b{color:var(--ink);font-weight:700}
.mng__notes a{border-bottom:1px solid var(--red)}
.prc__opt{margin-top:clamp(14px,2vw,20px);background:#fff;border:1px solid var(--line);border-left:3px solid var(--red);padding:clamp(18px,2.2vw,24px) clamp(20px,2.6vw,30px);display:grid;grid-template-columns:auto 1fr;gap:6px 26px;align-items:baseline}
.prc__opt__tag{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--red);grid-column:1/-1}
.prc__opt__name{font-weight:900;font-size:clamp(15px,1.8vw,19px);white-space:nowrap}
.prc__opt__name b{font-family:var(--display);color:var(--red);margin-left:10px;font-size:clamp(17px,2vw,22px)}
.prc__opt__desc{color:var(--muted);font-size:13px;line-height:1.85}
.prc__opt__desc strong{color:var(--ink);font-weight:900}
.prc__opt__vs{grid-column:1/-1;margin:16px 0 0;padding:16px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:14px 30px;list-style:none}
.prc__opt__vs li{font-size:12.5px;line-height:1.8;color:var(--muted)}
.prc__opt__vs b{display:block;font-weight:900;font-size:14px;color:var(--ink);margin-bottom:4px}
.prc__opt__vs b::before{content:'／ ';color:var(--red)}
.prc__terms{margin:clamp(20px,3vh,30px) 0 0;padding:clamp(18px,2.4vw,26px) clamp(20px,2.6vw,32px);border:1px solid var(--line);background:var(--bg2);display:grid;grid-template-columns:repeat(2,1fr);gap:10px 40px;list-style:none}
.prc__terms li{font-weight:700;font-size:clamp(12.5px,1.4vw,14px);color:var(--ink)}
.prc__terms li::before{content:'— ';color:var(--red)}
.prc__note{margin-top:14px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:var(--faint);line-height:1.9}
.service-contact p a{border-bottom:1px solid #fff}
@media(max-width:1100px){.prc{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.prc{grid-template-columns:1fr}.prc__terms{grid-template-columns:1fr}}
@media(max-width:720px){.prc__opt{grid-template-columns:1fr}.prc__opt__vs{grid-template-columns:1fr}.prc__opt__name{white-space:normal}}
