/* ============================================================
   印刷レイアウト（野島技研 2026-08-02）
   会社概要・事業紹介を印刷して提出/保管する場面を想定
   ⚠️ .section-header は本文の見出しなので消さないこと
   ============================================================ */
@media print {

  /* ---- 印刷しない要素（ナビゲーション類のみを厳密に指定）---- */
  .site-header,
  .header-inner,
  .header-cta,
  body > header,
  nav,
  .nav,
  .drawer,
  .menu-toggle,
  .site-footer,
  footer,
  .footer-top,
  .footer-inner,
  .footer-bottom,
  .hero-ctas,
  .btn,
  .btn-primary,
  .btn-ghost,
  .btn-arrow,
  .floating,
  .float-cta,
  .fixed-cta,
  .breadcrumb,
  form,
  video,
  script,
  iframe { display: none !important; }

  /* ---- 基本 ---- */
  @page { size: A4; margin: 14mm 12mm; }

  html, body {
    background: #fff !important;
    color: #000 !important;
    font-size: 10.5pt;
    line-height: 1.7;
  }
  .container, .inner, main, section {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  section { padding-top: 0 !important; padding-bottom: 6mm !important; }

  /* ---- 文字を印刷向けに ---- */
  h1, h2, h3, h4, h5, p, li, td, th, dt, dd, span, div, a {
    color: #000 !important;
    text-shadow: none !important;
    background-image: none !important;
  }
  h1 { font-size: 16pt; }
  h2 { font-size: 13pt; }
  h3 { font-size: 11.5pt; }

  /* ---- 改ページ制御 ---- */
  h1, h2, h3, .section-header { break-after: avoid; page-break-after: avoid; }
  table, .card, .box, figure, .service-card, .work-card {
    break-inside: avoid; page-break-inside: avoid;
  }
  img, svg { break-inside: avoid; max-width: 100% !important; height: auto !important; }

  /* ---- 表 ---- */
  table { width: 100% !important; border-collapse: collapse !important; }
  th, td {
    border: 0.5pt solid #666 !important;
    padding: 2mm 3mm !important;
    background: #fff !important;
  }
  thead { display: table-header-group; }

  /* ---- 装飾の除去 ---- */
  * { box-shadow: none !important; text-shadow: none !important; }
  .hero, .card, .box, section { background: #fff !important; }

  /* ---- 画像を印刷向けに抑える（紙面とインクの節約）---- */
  img { max-height: 90mm !important; object-fit: contain; }
  .gallery img, .gallery-grid img { max-height: 60mm !important; }
  .hero img, .hero-image, .hero-visual { max-height: 70mm !important; }

  /* ---- アニメーション用の初期状態を解除（fade-in が非表示のまま印刷されるのを防ぐ）---- */
  .fade-in, [class*="fade"], [class*="reveal"], [data-aos] {
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
    animation: none !important;
    transition: none !important;
  }

  /* ---- リンク ---- */
  a { text-decoration: underline; }
  a[href^="http"]::after { content: ""; }
}
