/* =========================================================
   固定ページ: /faq /faucet /law-info /privacy-policy
   ========================================================= */

/* ---------- よくある質問 ---------- */
.faq-page { background: rgba(212, 239, 250, .3); padding: 36px 44px 48px; }
.faq-page > h1 {
  text-align: center; font-family: var(--f-roboto); font-weight: 700; font-size: 24px; line-height: 1.4; color: #000;
}
.faq-page .intro {
  max-width: 1020px; margin: 42px auto 0; font-family: var(--f-roboto); font-size: 20px; line-height: 1.8; color: var(--ink2);
}
.faq-page .cart-btn {
  display: flex; align-items: center; justify-content: center; gap: 10px;
  width: fit-content; min-width: 354px; height: 80px; margin: 22px auto 0; padding: 0 20px; white-space: nowrap;
  background: var(--fblue); border-radius: 8px; box-shadow: var(--shadow);
  color: #fff; font-family: var(--f-mg); font-weight: 600; font-size: 24px; line-height: 1.2; text-align: center;
}
.faq-page .cart-btn .material-icons { font-size: 44px; }
.faq-cols { display: grid; grid-template-columns: 1fr 1fr; column-gap: 48px; row-gap: 48px; margin-top: 66px; }
.faq-cols h2 {
  padding: 20px 0; margin-bottom: 0; text-align: center;
  font-family: var(--f-roboto); font-weight: 700; font-size: 24px; line-height: 1.4; color: #000;
}
@media (max-width: 840px) {
  .faq-page { padding: 36px 24px 48px; }
  .faq-cols { grid-template-columns: 1fr; row-gap: 48px; }
  .faq-cols h2 { padding: 20px 0; }
}
@media (max-width: 540px) {
  .faq-page > h1 { font-family: var(--f-mg); font-weight: 600; }
  .faq-page .intro { font-size: 18px; }
  .faq-page .cart-btn { width: 261px; height: 60px; font-size: 16px; }
  .faq-page .cart-btn .material-icons { font-size: 36px; }
  .faq-cols { margin-top: 48px; }
  .faq-cols h2 { font-family: var(--f-mg); font-weight: 600; }
}

/* ---------- 取付可能な蛇口一覧 ---------- */
body.faucet-body { background: var(--sky); }
.faucet-col { width: 480px; margin: 0 auto; background: #fff; }
.faucet-col img { width: 100%; height: auto; display: block; }
@media (max-width: 540px) { .faucet-col { width: 100%; } }

/* ---------- 特商法・プライバシー ---------- */
.legal { background: #fff; padding: 60px 124px 80px; }
.legal h1 {
  text-align: center; font-family: var(--f-lato); font-weight: 700; font-size: 32px; line-height: 1.2; color: #111;
  margin-bottom: 80px;
}
.legal .lead { font-family: var(--f-lato); font-size: 20px; line-height: 1.6; color: var(--ink); }
.legal dt { margin-top: 50px; font-family: var(--f-lato); font-weight: 700; font-size: 20px; line-height: 1.2; color: #000; }
.legal dt:first-child { margin-top: 0; }
.legal .lead + dl dt:first-child { margin-top: 50px; }
.legal dd { margin-top: 15px; font-family: var(--f-lato); font-size: 20px; line-height: 1.6; color: var(--ink); }
.legal a { color: #007CFF; }
@media (max-width: 840px) {
  .legal { padding: 48px 24px 64px; }
  .legal h1 { font-size: 26px; margin-bottom: 48px; }
  .legal .lead, .legal dd { font-size: 16px; }
  .legal dt { font-size: 17px; margin-top: 36px; }
  .legal dd { margin-top: 12px; }
}
