/* ============================================================
   よくある質問ページ – page-faq.css
   ============================================================ */

/* カテゴリータブ */
.faq-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-10);
}

.faq-tab {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-4);
  font-size: var(--text-sm);
  font-weight: var(--weight-bold);
  color: var(--color-text-sub);
  background: var(--color-white);
  border: 2px solid var(--color-border);
  border-radius: var(--radius-full);
  cursor: pointer;
  transition: all var(--transition-base);
  white-space: nowrap;
}

.faq-tab:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
}

.faq-tab.is-active {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-white);
}

.faq-tab__icon {
  font-size: 1.1rem;
}

.faq-tab__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  font-size: var(--text-xs);
  border-radius: var(--radius-full);
  background: rgba(0,0,0,.1);
}

.faq-tab.is-active .faq-tab__count {
  background: rgba(255,255,255,.25);
}

/* カテゴリーセクション */
.faq-section {
  display: none;
}

.faq-section.is-active {
  display: block;
}

.faq-section__header {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-4);
  border-bottom: 2px solid var(--color-primary);
}

.faq-section__icon {
  font-size: 1.5rem;
  color: var(--color-primary);
}

.faq-section__title {
  font-size: var(--text-xl);
  font-weight: var(--weight-bold);
  color: var(--color-navy);
}
