/* =============================================
   Ouchi Medical — レスポンシブ
   ============================================= */

@media (max-width: 1024px) {
  .hero-catch { font-size: 30px; }
  .stats { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
  section { padding: 60px 0; }
  .section-title { font-size: 22px; margin-bottom: 32px; }

  .inner,
  .hero-inner,
  .footer-inner,
  .header-inner { padding: 0 20px; }

  /* ヘッダー */
  .nav-toggle { display: flex; }
  .global-nav {
    position: absolute;
    top: 72px;
    left: 0;
    right: 0;
    background: var(--color-main-dk);
    padding: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s ease, padding .3s ease;
  }
  .global-nav.is-open {
    max-height: 400px;
    padding: 16px 0;
  }
  .nav-list { flex-direction: column; gap: 0; }
  .nav-list li { width: 100%; }
  .nav-list a {
    display: block;
    padding: 14px 24px;
    border-bottom: 1px solid rgba(255,255,255,.1);
  }

  /* ヒーロー */
  .hero { padding: 60px 24px 48px; }
  .hero-inner { grid-template-columns: 1fr; gap: 36px; }
  .hero-catch { font-size: 26px; }
  .hero-img { height: 220px; }

  /* カード */
  .cards-3 { grid-template-columns: 1fr; }
  .cards-6 { grid-template-columns: 1fr 1fr; }

  /* 実績 */
  .stats { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .stat-num { font-size: 36px; }

  /* ラボ */
  .labo-inner { grid-template-columns: 1fr; gap: 36px; }
  .labo-img { height: 220px; }
  .labo-catch { font-size: 20px; }

  /* ニュース */
  .news-item a { flex-wrap: wrap; gap: 8px; }

  /* CTA */
  .cta-title { font-size: 22px; }
  .cta-tel { font-size: 24px; }

  /* フッター */
  .footer-nav-list { flex-direction: column; gap: 8px; }

  /* ページ共通 */
  .page-hero h1 { font-size: 24px; }
  .single-article { padding: 48px 24px; }
}

@media (max-width: 480px) {
  .hero-catch { font-size: 22px; }
  .cards-6 { grid-template-columns: 1fr; }
  .stats { grid-template-columns: 1fr 1fr; }
}
