/* FAQ: generated hover + responsive vars */
.page-faq{--rv-faqCols:260px minmax(0,1fr);--rv-tabPos:sticky;--rv-tabDir:column;--rv-tabGap:4px;--rv-tabRadius:8px;--rv-tabPad:16px 20px}
@media (max-width:1099.98px){.page-faq{--rv-faqCols:minmax(0,1fr);--rv-tabPos:static;--rv-tabDir:row;--rv-tabGap:8px;--rv-tabRadius:999px;--rv-tabPad:10px 18px}}
@media (hover:hover){
  .hv-faq-14:hover{background-position:0% 0 !important;color:#0B1026 !important}
  .hv-faq-15:hover{background:rgba(201,169,110,0.12) !important;color:var(--gold-light) !important}
}
.hv-faq-14:focus-visible{background-position:0% 0 !important;color:#0B1026 !important}
.hv-faq-15:focus-visible{background:rgba(201,169,110,0.12) !important;color:var(--gold-light) !important}

/* ---------- カテゴリのナビ（ページ内リンク。PC=sticky の左ナビ、スマホ=横並びのチップ） ---------- */
.faq-nav-wrap{position:var(--rv-tabPos);top:112px;min-width:0}
.faq-nav{display:flex;flex-direction:var(--rv-tabDir);gap:var(--rv-tabGap);overflow-x:auto;scrollbar-width:none}
.faq-nav::-webkit-scrollbar{display:none}
.faq-nav__link{
  flex:none;white-space:nowrap;display:flex;align-items:center;gap:14px;min-height:44px;text-align:left;
  background:transparent;color:var(--text);border:1px solid transparent;border-radius:var(--rv-tabRadius);padding:var(--rv-tabPad);
  transition:background 0.4s, color 0.4s, border-color 0.4s;
}
.faq-nav__num{font-family:'Cormorant Garamond',serif;font-size:18px;opacity:0.7}
.faq-nav__label{font-size:14px;letter-spacing:0.04em}
.faq-nav__link.is-current{background:#0B1026;color:#F7F5F0;border-color:#0B1026}
@media (hover:hover){
  .faq-nav__link:not(.is-current):hover{color:var(--gold-deep);border-color:rgba(126,99,52,0.35)}
}
.faq-nav__link:not(.is-current):focus-visible{color:var(--gold-deep)}
@media (max-width:1099.98px){
  .faq-nav{
    margin:0 calc(-1 * clamp(20px,5vw,40px));padding:0 clamp(20px,5vw,40px);
    -webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent);
  }
  .faq-nav__link{border-color:rgba(26,26,31,0.18)}
  .faq-nav__link.is-current{border-color:#0B1026}
}

/* ---------- カテゴリ（4つを縦に並べる） ---------- */
.faq-cat + .faq-cat{margin-top:clamp(64px,7vw,104px)}

/* ---------- 質問・回答 ---------- */
@media (hover:hover){ .faq-q:hover{color:var(--gold-deep) !important} }
.faq-q:focus-visible{color:var(--gold-deep) !important}
.faq-a{display:flex;gap:20px;padding:0 52px 36px 0}
.faq-a__mark{font-family:'Cormorant Garamond',serif;font-size:30px;line-height:1;color:var(--text-muted);flex:none;width:32px}
@media (max-width:1099.98px){
  .faq-a{gap:12px;padding:0 0 28px 0}
  .faq-a__mark{width:24px;font-size:24px}
}
