@charset "utf-8";
/* ============================================================
   /faq よくあるご質問：検索＋カテゴリ絞り込み＋Q&Aアコーディオン
   faq-list.js が描画。2025のデザイン言語に統一・名前空間 .faq-
   ============================================================ */
.faq{ max-width:820px; margin:8px auto 0; }
.faq__search{ display:flex; align-items:center; gap:9px; background:#fff; border:1px solid #d4e3ef;
  border-radius:12px; padding:11px 15px; }
.faq__search:focus-within{ border-color:#51bfeb; box-shadow:0 0 0 3px rgba(81,191,235,.18); }
.faq__search svg{ width:19px; height:19px; color:#9fb6c4; flex:0 0 auto; }
.faq__search input{ border:0; outline:0; width:100%; font-size:1rem; color:#26323a; background:transparent; }
.faq__chips{ display:flex; gap:6px; flex-wrap:wrap; margin-top:12px; }
.faq-chip{ background:transparent; border:0; color:#6b7d88; font-size:.84rem; padding:6px 13px;
  border-radius:99px; cursor:pointer; transition:.15s; }
.faq-chip:hover{ background:#eef6fc; color:#0561c5; }
.faq-chip.is-active{ background:#eef6fc; color:#0561c5; font-weight:700; }
.faq__count{ font-size:.8rem; color:#9fb6c4; margin:16px 2px 0; }
.faq__count b{ color:#0288c2; }
.faq-group{ margin-top:18px; }
.faq-group[hidden]{ display:none; }
.faq-group__head{ font-size:.82rem; font-weight:800; color:#5f8298; letter-spacing:.04em; margin:0 0 8px; }
.faq-group__head span{ color:#9fb6c4; font-weight:700; }
.faq-rows{ display:flex; flex-direction:column; gap:10px; }
.faq-item{ border:1px solid #e3eef5; border-radius:14px; overflow:hidden; background:#fff;
  transition:border-color .15s, box-shadow .15s; }
.faq-item[hidden]{ display:none; }
.faq-item:hover{ border-color:#bfe0f6; }
.faq-row{ display:flex; align-items:center; gap:12px; width:100%; text-align:left; background:#fff;
  border:0; padding:16px 18px; cursor:pointer; }
.faq-row:hover{ background:#f8fcff; }
.faq-row[aria-expanded="true"]{ background:#f8fcff; }
.faq-q{ flex:0 0 auto; width:26px; height:26px; border-radius:50%; background:#01a0e9; color:#fff;
  font-weight:800; font-size:.8rem; display:flex; align-items:center; justify-content:center;
  font-family:"Poppins",sans-serif; }
.faq-row__q{ flex:1; font-size:.98rem; font-weight:700; color:#26323a; line-height:1.55; min-width:0; }
.faq-row__chev{ width:17px; height:17px; color:#b6c6d0; flex:0 0 auto; transition:transform .2s; }
.faq-row[aria-expanded="true"] .faq-row__chev{ transform:rotate(180deg); }
.faq-ans{ display:none; gap:12px; padding:0 18px 18px; background:#f8fcff; }
.faq-row[aria-expanded="true"] + .faq-ans{ display:flex; }
.faq-a{ flex:0 0 auto; width:26px; height:26px; border-radius:50%; background:#ffc828; color:#073b52;
  font-weight:800; font-size:.8rem; display:flex; align-items:center; justify-content:center;
  font-family:"Poppins",sans-serif; }
.faq-ans__body{ flex:1; min-width:0; font-size:.92rem; line-height:1.9; color:#39474f; padding-top:3px; }
.faq-ans__body a{ color:#0288c2; text-decoration:underline; }
.faq__empty{ text-align:center; color:#9fb6c4; padding:34px 0; }
@media (max-width:575px){
  .faq-row{ padding:14px 14px; gap:10px; }
  .faq-row__q{ font-size:.92rem; }
  .faq-ans{ padding:0 14px 16px; }
}
