@charset "UTF-8";
/* ============================================================
   print.css  上武大学サイト 印刷用スタイル
   ------------------------------------------------------------
   方針：
     - 印刷時も PC（デスクトップ）レイアウトで出力する
       ※サイトのレスポンシブ指定はすべて「only screen」のため、
         印刷メディアにはスマホ用CSSが適用されず、PC用CSSが効く
     - PC幅でレイアウトさせ、用紙幅（A4）に収まるよう縮小する
     - 印刷に不要な操作系・固定要素は非表示にする

   読み込み例（head 内）：
     <link rel="stylesheet" href="/assets/css/print.css" media="print">

   ★前提：印刷プレビューが即閉じる不具合は JS 側が原因のため、
     matchMedia("(max-width:900px)") → location.reload() を
     beforeprint 中は実行しないようガードしておくこと。
     （ガード未対応だと、このCSSが効く前にプレビューが閉じます）
   ============================================================ */

/* 用紙設定（A4縦・余白10mm）。横向きにしたい場合は landscape に変更 */
@page {
  size: A4 portrait;
  margin: 10mm;
}

@media print {
  /* 背景色・背景画像も印刷し、アニメーションは停止して描画を安定させる */
  *,
  *::before,
  *::after {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    color-adjust: exact !important;
    animation: none !important;
    transition: none !important;
  }

  html {
    width: auto !important;
    background: #fff !important;
  }

  /* PC幅で組ませ、zoom で用紙幅に縮小（zoom はページ分割に対応） */
  /* 1180px × 0.6 ≒ 708px ＝ A4印刷可能幅(約718px)に収まる。必要に応じ調整 */
  body {
    width: 1180px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    zoom: 0.6;
  }

  /* 主要ブロックを全幅で表示（PCレイアウト維持） */
  #wrapper,
  #main_area,
  footer,
  #footer {
    width: auto !important;
    float: none !important;
  }

  /* 印刷に不要な操作系・固定要素を非表示 */
  #pagetop,            /* ページトップへ戻るボタン（固定） */
  #header_menu,        /* スマホ用スライドメニュー */
  #hd_btn,
  .hd_btn,             /* ハンバーガーボタン */
  .slick-arrow,
  .slick-prev,
  .slick-next,
  .slick-dots,         /* スライダーの矢印・ドット */
  .chrome_websiteIP,
  #footer {
    /* ブラウザ拡張が挿入する要素（存在する場合） */
    display: none !important;
  }

  /* スライダーは先頭スライドを表示（横長トラックの暴走を防止） */
  .slick-list {
    overflow: hidden !important;
  }
  .slick-track {
    width: auto !important;
    transform: none !important;
  }
  .slick-cloned {
    display: none !important;
  }

  /* 画像・表・スライダー・見出しの不自然な改ページを抑制 */
  img,
  figure,
  table,
  .slick-slider {
    page-break-inside: avoid;
    break-inside: avoid;
  }
  h1,
  h2,
  h3,
  h4 {
    page-break-after: avoid;
    break-after: avoid;
  }

  /* 遅延読み込み画像が隠れたままにならないように */
  img.lazy {
    opacity: 1 !important;
    visibility: visible !important;
  }
}
/* /print.css */
