/* NEON OUTLINE — responsive.css : カラム削減→縦積み（文字は縮小しない） */

/* ===== タブレット（〜1024px） ===== */
@media (max-width: 1024px) {
  .host-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .news-list, .gallery-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .footer__grid { grid-template-columns: 1.4fr 1fr; }
  .footer__brand { grid-column: 1 / -1; }
}

/* ===== モバイル（〜920px）：ドロワー化・縦積み・固定CTA ===== */
@media (max-width: 920px) {
  :root { --header-h: 62px; }
  .nav, .header__side .btn { display: none; }
  .hamburger { display: inline-flex; }

  /* HERO 縦積み（コピー上・メディア下） */
  .hero__inner { grid-template-columns: minmax(0,1fr); gap: 1.8rem; }
  .hero__outline { inset: -8px; }

  /* TODAY 縦積み見出し */
  .today { grid-template-columns: minmax(0,1fr); gap: 1.2rem; align-items: start; }

  /* GUIDE / SYSTEM / ACCESS / RECRUIT 縦積み */
  .guide, .system, .access-grid { grid-template-columns: minmax(0,1fr); }
  .system { gap: 1.6rem; }
  .recruit-band__inner { grid-template-columns: minmax(0,1fr); gap: 1.2rem; }

  /* 固定CTA 表示・本文末尾に余白 */
  .cta-bar { display: grid; }
  body { padding-bottom: var(--cta-h); }
  .pagetop { bottom: calc(14px + var(--cta-h)); }

  /* スライダーの矢印を内側へ */
  .lightbox__nav--prev { left: .4rem; } .lightbox__nav--next { right: .4rem; }
  .lightbox__close { top: -3rem; }

  /* 下層ページの2カラム系を縦積み */
  .detail, .article-wrap, .two-col, .form-cols { grid-template-columns: minmax(0,1fr); }
  .detail__dl { grid-template-columns: minmax(0,1fr); }
}

/* ===== スモール（〜600px） ===== */
@media (max-width: 600px) {
  .host-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .news-list, .gallery-grid { grid-template-columns: minmax(0,1fr); }
  .gallery-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .access-dl > div { grid-template-columns: 6rem minmax(0,1fr); }
  .news-row { grid-template-columns: auto minmax(0,1fr); }
  .news-row__date { grid-column: 1 / -1; }
  .info-dl > div { grid-template-columns: 6.5rem minmax(0,1fr); }
  .detail__pager { flex-wrap: wrap; gap: .6rem; font-size: .82rem; }
  .footer__grid { grid-template-columns: minmax(0,1fr); }
  .footer__brand { grid-column: auto; }
  .footer__bottom { flex-direction: column; }
  .slider__foot { flex-direction: column-reverse; gap: 1rem; align-items: stretch; }
  .slider__btns { justify-content: center; }
  .event-card__ex { display: none; } /* 横長カード内の情報過多を回避（見出し＋日付は残す） */
}

/* ===== 極小（〜400px）：HOST 1列 ===== */
@media (max-width: 400px) {
  .host-grid { grid-template-columns: minmax(0,1fr); }
  .gallery-grid { grid-template-columns: minmax(0,1fr); }
}

/* デスクトップ：ドロワーとCTAは隠す（保険） */
@media (min-width: 921px) {
  .drawer { display: none; }
  .cta-bar { display: none; }
}
