
/*  カテゴリフィルターボタン全体のスタイル */
.faq-category-filter {
  margin-bottom: 40px;
}
/*  各フィルターボタンの見た目 */
.faq-filter-btn {
  cursor: pointer;
  background: #eee;
  border: none;
  padding: 12px 24px;
  margin: 0 8px 8px 0;
  border-radius: 30px;
  font-size: 18px;
  color: #0055aa;
  transition: background-color 0.3s ease, color 0.3s ease;
}
/* ボタンがアクティブ or ホバーされたときのスタイル */
.faq-filter-btn.active,
.faq-filter-btn:hover {
  background-color: #0055aa;
  color: white;
}

/* FAQ全体のラッパー */
.faq-wrapper {
  max-width: 1000px;
  margin: 0 auto 80px;
  font-family: "Yu Gothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

/* 個別のFAQ項目 */
.faq-item {
  border-bottom: 1px solid #ccc;
  padding: 20px 15px;
}

/* 質問部分 */
.faq-question {
  cursor: pointer;
  font-weight: bold;
  position: relative;
  padding-right: 25px;
  font-size: 22px;
  color: #0055aa;
  user-select: none;
}

/* アイコン  +  */
.faq-question::after {
  content: '+';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 26px;
  transition: transform 0.3s ease;
  color: #0055aa;
}
/* アイコン  -  */
.faq-question.active::after {
  content: '−';
  transform: translateY(-50%) rotate(180deg);
}

/*  答え部分のスタイル */
.faq-answer {
  display: none;
  padding: 12px 16px;
  color: #333;
  font-size: 16px;
  line-height: 1.7;
  background-color: #f3f7fc;
  border-radius: 6px;
  border: 1px solid #cce0f4;
  margin-top: 8px;
  user-select: text;
}

/* カーソル合わせると色変わる */
.faq-question:hover {
  color: #003366;
  background-color: rgb(182, 214, 255);
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* セクションタイトル */
.faq-section-title {
  font-weight: bold;
  font-size: 28px;
  margin: 80px 0 30px;
  color: #333;
  text-align: center;
}

/* スクロール時に見出しが隠れないよう余白を確保 */
#selection, #training, #job {
  scroll-margin-top: 120px;
}

/* ヒーローセクション（ページの最上部の大きなビジュアル） */

/* ヒーロー全体のコンテナ */
.pageFv__container {
  position: relative;
  width: 100%;
  height: 700px;
}

/* ヒーローで使う背景画像 */
.pageFv__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ヒーロー上のタイトルテキスト */
.pageFv__title {
  position: absolute;
  top: 30%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 100px;
  padding: 100px 100px;
  text-align: center;
}

.faq-category-filter {
  max-width: 1000px;
  margin: 40px auto;
  text-align: center;
}

/*  非表示にするクラス（カテゴリ切り替え用） */
.is-hidden {
  display: none;
}

/*  フッター上の余白確保 */
.footer-spacer {
  margin-top: 250px;
}

