/* ============================================================
   FAQ PAGE — css/faq.css
   ============================================================ */

/* ── Page Hero ── */


/* ── Category Nav ── */
.faq-nav{background:var(--c-bg-2);border-bottom:1px solid var(--c-line);padding:16px 0;position:sticky;top:56px;z-index:50}.faq-nav__list{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.faq-nav__link{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--c-bg-3);border:1px solid var(--c-line);border-radius:3px;font-size:12.5px;font-weight:700;color:var(--c-text-sub);text-decoration:none;transition:all .2s ease;white-space:nowrap}.faq-nav__link:hover,.faq-nav__link.is-active{color:var(--c-yellow);border-color:var(--c-yellow);background:rgba(255,196,0,0.06)}.faq-nav__link svg{width:14px;height:14px;flex-shrink:0;opacity:.7}

/* ── Section common ── */
.sec{padding:clamp(40px,6vw,64px) 0}.sec__head{margin-bottom:32px}.sec__eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--ff-en);font-weight:700;font-size:13px;color:var(--c-yellow);letter-spacing:.2em;margin-bottom:18px}.sec__eyebrow::before{content:"";width:36px;height:2px;background:var(--c-yellow);flex-shrink:0;box-shadow:0 4px 0 -1px #111,0 5px 0 -0.5px var(--c-yellow)}.sec h2{font-family:var(--ff-jp-display);font-weight:900;font-size:clamp(22px,4vw,32px);line-height:1.4;margin-bottom:8px}.sec h2 .mark{background:linear-gradient(transparent 60%,rgba(255,196,0,0.45) 60%);padding:0 4px}.sec__lead{color:var(--c-text-sub);font-size:clamp(13px,1.7vw,15px);line-height:1.9;max-width:720px}

/* ── FAQ List ── */
.faq-list{display:flex;flex-direction:column;gap:10px}

/* ── FAQ Item (details/summary) ── */
.faq-item{background:linear-gradient(160deg,var(--c-bg-2) 0,#181818 100%);border:1px solid var(--c-line);border-radius:4px;overflow:hidden;transition:border-color .2s ease}.faq-item[open]{border-color:rgba(255,196,0,0.35)}.faq-item summary{display:flex;align-items:center;gap:14px;padding:18px 48px 18px 20px;font-weight:700;font-size:clamp(14px,1.8vw,15.5px);line-height:1.55;color:var(--c-text);cursor:pointer;position:relative;list-style:none;transition:background .2s ease}.faq-item summary:hover{background:rgba(255,196,0,0.02)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::before{content:"Q";flex-shrink:0;width:28px;height:28px;background:var(--c-yellow);color:#111;display:grid;place-items:center;font-family:var(--ff-en);font-weight:900;font-size:13px;border-radius:3px}.faq-item summary::after{content:"";position:absolute;right:18px;top:50%;width:10px;height:10px;border-right:2px solid var(--c-text-sub);border-bottom:2px solid var(--c-text-sub);transform:translateY(-70%) rotate(45deg);transition:transform .25s ease}.faq-item[open] summary::after{transform:translateY(-30%) rotate(-135deg)}

/* ── FAQ Answer ── */
.faq-answer{padding:0 20px 22px 62px;font-size:14px;color:var(--c-text);line-height:1.85}.faq-answer p{margin-bottom:12px}.faq-answer p:last-child{margin-bottom:0}.faq-answer strong{color:var(--c-yellow);font-weight:700}.faq-answer ul{margin:8px 0 12px;padding:0}.faq-answer li{position:relative;padding-left:18px;margin-bottom:4px;color:var(--c-text);font-size:13.5px;line-height:1.75;list-style:none}.faq-answer li::before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;background:var(--c-yellow);border-radius:50%;opacity:.6}

/* Answer note callout */
.faq-note{margin-top:14px;padding:12px 16px;background:rgba(255,196,0,0.05);border:1px solid rgba(255,196,0,0.2);border-left:3px solid var(--c-yellow);border-radius:3px;font-size:12.5px;line-height:1.7;color:var(--c-text-sub)}.faq-note strong{color:var(--c-yellow)}

/* Answer tags */
.faq-tags{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.faq-tag{padding:3px 10px;background:rgba(255,196,0,0.08);border:1px solid rgba(255,196,0,0.2);color:var(--c-yellow);font-size:11.5px;font-weight:700;border-radius:2px;letter-spacing:.02em}

/* Answer table */
.faq-table{width:100%;border-collapse:collapse;margin:12px 0;font-size:13px}.faq-table th,.faq-table td{padding:10px 14px;border:1px solid var(--c-line);text-align:left}.faq-table th{background:var(--c-bg-3);color:var(--c-yellow);font-weight:700;white-space:nowrap;width:120px}.faq-table td{color:var(--c-text)}

/* ── CTA Section ── */
.faq-cta{padding:clamp(50px,8vw,80px) 0;border-top:2px solid var(--c-yellow);border-bottom:2px solid var(--c-yellow);background:radial-gradient(circle at 50% 50%,rgba(6,199,85,0.06),transparent 60%),linear-gradient(180deg,var(--c-bg-2) 0,#0f0f0f 100%)}.faq-cta__grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:24px}@media(min-width:768px){.faq-cta__grid{grid-template-columns:1fr 1fr;gap:20px}}.faq-cta__card{position:relative;padding:24px 26px;background:var(--c-bg-2);border:1px solid var(--c-line);border-radius:4px}.faq-cta__card--line{border-color:rgba(6,199,85,0.3);border-left:4px solid var(--c-line-green)}.faq-cta__card--line::before{position:absolute;top:-10px;right:16px;padding:4px 12px;border-radius:2px;background:var(--c-line-green);color:#fff;content:"推奨";font-weight:900;font-size:11px;letter-spacing:.05em}.faq-cta__kind{margin-bottom:6px;font-family:var(--ff-en);font-weight:700;font-size:10.5px;color:var(--c-text-sub);letter-spacing:.2em}.faq-cta__card--line .faq-cta__kind{color:var(--c-line-green)}.faq-cta__card h3{margin-bottom:10px;font-family:var(--ff-jp-display);font-weight:900;font-size:16px;line-height:1.4;color:var(--c-text)}.faq-cta__card p{margin-bottom:16px;color:var(--c-text-sub);font-size:13px;line-height:1.75}.faq-cta__btn{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:3px;font-weight:900;font-size:14px;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}.faq-cta__btn:hover{transform:translateY(-2px)}.faq-cta__btn:active{transform:translateY(0)}.faq-cta__btn--line{background:var(--c-line-green);color:#fff;box-shadow:0 3px 0 #035C29}.faq-cta__btn--tel{background:var(--c-yellow);color:#111;box-shadow:0 3px 0 #c99500}.faq-cta__perks{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.faq-cta__perk{padding:4px 10px;background:rgba(6,199,85,0.1);color:var(--c-line-green);font-size:11px;font-weight:700;border-radius:2px}

/* ── Responsive ── */
@media(max-width:768px){.faq-nav{top:0}.faq-nav__list{gap:6px;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;-webkit-overflow-scrolling:touch}.faq-nav__link{padding:7px 12px;font-size:11.5px}.faq-item summary{padding:14px 40px 14px 16px;gap:10px;font-size:13.5px}.faq-item summary::before{width:24px;height:24px;font-size:11px}.faq-answer{padding:0 16px 18px 50px;font-size:13px}}@media(max-width:480px){.faq-answer{padding-left:16px}}
