/* FAQ追加後もPC・スマホの共通ナビゲーションを収める。 */
@media (min-width: 1080px) {
  #header_menu, .page-index .header { gap: 18px; }
  .header .hd_logo { width: clamp(210px, 22vw, 320px); }
  .header .nav.nav--with-faq { gap: clamp(8px, 1.05vw, 20px); padding: 14px clamp(16px, 1.5vw, 28px); }
  .header .nav.nav--with-faq .nav-item p { white-space: nowrap; font-size: clamp(12px, 1.05vw, 17px); }
}
.footer .footer-nav.footer-nav--with-faq { flex-wrap: wrap; gap: 18px; }
.footer-nav--with-faq .footer-nav__item p { white-space: nowrap; }
.nav--with-faq a[aria-current="page"] .nav-item__uLine,
.footer-nav--with-faq a[aria-current="page"] .footer-nav__item-uLine { transform: translate(0, 3px) scale(1, 1); }
.hm-list a[aria-current="page"] p { text-decoration: underline; text-underline-offset: 6px; }
#hamburger_menu_container .hm-area { justify-content: flex-start; padding-top: 90px; padding-bottom: 40px; }
#hamburger_menu_container .hm-list { flex-shrink: 0; }
@media (max-width: 1079px) {
  .footer .footer-nav.footer-nav--with-faq { display: flex; justify-content: center; gap: 18px 24px; }
}
@media (max-width: 540px) {
  #footer_section .footer { padding-bottom: 140px; }
  .footer .footer-nav.footer-nav--with-faq { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; gap: 8px 14px; }
  .footer-nav--with-faq .footer-nav__item { min-height: 44px; }
  .footer-nav--with-faq .footer-nav__item p { white-space: normal; font-size: 13px; line-height: 1.6; }
}
