@charset "UTF-8";

/* よくある質問 — Figma: PC 1165:16726
   コンテンツ760px（1440基準で左右340px）・CVボタンのみ974px
   ※SPは Figma 実寸での作り直し未着手（横スクロールしないための暫定調整のみ）
***************************************************************/
.w-faq {
  background: var(--w-green02);
  padding: 100px 20px;
}
.w-faq__inner {
  width: min(974px, 100%);
  margin: 0 auto;
}

/* カテゴリボタン: 240x54 を3列・行間20px（5個なので2行目は2個） */
.w-faqNav {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 240px));
  justify-content: center;
  gap: 20px;
}
.w-faqNav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  min-height: 54px;
  /* 1000px以下でボタン幅が縮むと文字が折り返すので、余白と文字も一緒に縮める */
  padding: 14px min(30px, 3.57vw);
  background: #fff;
  border-radius: 67px;
  box-shadow: 0 4px 2.5px rgba(0, 0, 0, 0.1);
  font-size: min(16px, 1.9vw);
  font-weight: 600;
  line-height: 26px;
  letter-spacing: 0.8px;
  color: var(--w-black);
}
.w-faqNav a::after {
  content: "";
  flex: none;
  width: 17px;
  height: 12px;
  background: url("../img/common/chevron_down_green.svg") no-repeat center / contain;
}

.w-faqBody {
  width: min(760px, 100%);
  margin: 80px auto 0;
}
.w-faqGroup {
  margin-bottom: 20px;
  /* 固定ヘッダー分だけアンカーの着地位置を下げる */
  scroll-margin-top: calc(min(106px, 7.361vw) + 20px);
}
.w-faqGroup h2 {
  margin-bottom: 20px;
  font-size: 25px;
  font-weight: 600;
  line-height: 42.1px;
  letter-spacing: 1.25px;
  color: var(--w-black);
}
/* カード: 左に緑10pxの帯、右側だけ角丸20px */
.w-faqCard {
  position: relative;
  margin-bottom: 20px;
  padding: 40px 40px 40px 50px;
  background: #fff;
  border-radius: 0 20px 20px 0;
}
.w-faqCard::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 10px;
  background: var(--w-green);
}
.w-faqCard .q {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  font-size: 18px;
  font-weight: 600;
  line-height: 26px;
  letter-spacing: 0.9px;
  color: var(--w-green);
}
.w-faqCard .q .mark {
  flex: none;
  width: 34px;
  font-family: "Outfit", sans-serif;
  font-size: 30px;
  font-weight: 500;
  line-height: 26px;
  letter-spacing: -3px;
}
.w-faqCard .q .txt {
  flex: 1;
  min-width: 0;
}
.w-faqCard .a {
  margin-top: 10px;
  font-size: 16px;
  font-weight: 500;
  line-height: 26px;
  letter-spacing: 0.8px;
  color: var(--w-black);
}
.w-faq .w-cvBtn {
  /* common.css の margin: 30px 0 を打ち消して Figma の余白（下100px）にする */
  margin: 100px 0 0;
}

@media all and (max-width: 680px) {
  /* SP — Figma 1165:18187（コンテンツ340px・アンカーボタン240pxを1列） */
  .w-faq {
    padding: 50px 25px 100px;
  }
  .w-faq__inner {
    width: 100%;
  }
  .w-faqNav {
    grid-template-columns: 240px;
    gap: 10px;
  }
  /* PCの縮小指定（min(16px,1.9vw)など）がSPに効かないよう実寸に戻す */
  .w-faqNav a {
    padding: 14px 30px;
    font-size: 16px;
  }
  .w-faqBody {
    width: 100%;
    margin-top: 50px;
  }
  .w-faqGroup {
    margin-bottom: 30px;
  }
  .w-faqGroup h2 {
    margin-bottom: 18px;
    font-size: 20px;
    line-height: 22px;
    letter-spacing: 1px;
    text-align: center;
  }
  /* SPは左の緑帯ではなく上に緑8pxの帯 */
  .w-faqCard {
    margin-bottom: 30px;
    padding: 40px 30px;
    border-top: 8px solid var(--w-green);
    border-radius: 0 0 20px 20px;
  }
  .w-faqCard::before {
    content: none;
  }
  .w-faqCard .q {
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }
  .w-faqCard .q .txt {
    width: 100%;
    text-align: justify;
  }
  .w-faqCard .a {
    text-align: justify;
  }
  .w-faq .w-cvBtn {
    margin: 60px 0 0;
  }
}
