/********************************************************
 * 印刷専用の調整 (@media print)
 * これ以降のスタイルは、他のPC用スタイルよりも優先されます。
 ********************************************************/
@media print {

  /* --- 1. 基本設定とフォント安定化 --- */
  html {
    /* PC表示の基準フォントサイズ(16px)に固定 (style.css参照) */
    /* vw単位の指定を上書きするために!importantが必要 */
    font-size: 16px !important;
  }

  body {
    background: #fff !important;
    color: #1a1a1a !important;
    min-height: auto !important;
  }

  /* --- 2. 視覚効果の無効化と色の調整 --- */
  * {
    /* 背景色やボーダーを印刷するための設定（ブラウザ依存） */
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    color-adjust: exact;
    /* アニメーション、トランジション、影、画面用の表示効果の無効化 */
    animation: none !important;
    transition: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    /* 画面表示用の半透明などを無効化 */
    opacity: 1 !important;
    transform: none !important;
  }

  /* フェードイン効果(l-fadeIn)の無効化 */
  .l-fadeIn, .l-fadeIn.is-show {
      opacity: 1 !important;
      transform: none !important;
  }

  /* --- 3. 印刷に不要な要素の非表示 --- */
  /* ヘッダー、フッター、ナビゲーション、インタラクティブ要素、バナー等を非表示 */
  /* ※必要に応じてクラス名を追加・削除してください */
  .p-header, .p-footer, .p-hamburger, .p-drawer, .p-floating,
  .p-cookie, .p-breadcrumb, .scroll-hint, .p-banner-top,
  .p-common-pages-btm-banners, .p-category__wrapper, .p-about-nav__items,
  
  /* ボタン類 (style.css, style_add.cssより抜粋) */
  .c-arrow-btn, .c-section__btn, .c-oc__btn, .c-about-btn,
  .c-change-btn, .c-top-section__btn, .c-cookie__btn, .p-faq-point__btn,
  .p-about-point__btn, .p-alumni__btn, .p-guide__item-contents__btn,
  .p-admission-flow__btn, .p-all-list__btn, .p-abroad__btn, 
  .p-ao-page__btn, .p-campus-questionnaire__btn, .p-about-point__training-accordion-btn,
  
  /* スライダー/カレンダー関連 */
  .swiper-pagination, .swiper-button-next, .swiper-button-prev, .swiper-scrollbar,
  .p-interview__swiper-pagination, .p-banner-top__swiper-pagination,
  .c-calendar__btn
  {
    display: none !important;
  }

  /* --- 4. レイアウト調整 --- */

  /* 固定ヘッダーによる余白のリセット (style_add.cssのPC設定を打ち消す) */
  main {
    padding-top: 0 !important;
  }
  
  /* ヘッダーの固定を解除（非表示にしていない場合）*/
  .p-header {
      position: static !important;
  }

  /* リンクの調整 (ホバー効果などを無効化) */
  a, a:visited, a:hover {
    text-decoration: none !important;
    color: inherit !important;
    opacity: 1 !important;
  }
  
  /* スライダーの表示調整（印刷時は全スライドを表示）*/
  .swiper-wrapper {
    display: flex !important;
    flex-wrap: wrap !important; /* 必要に応じて折り返しを許可 */
    transform: none !important; 
  }
  .swiper-slide {
    /* デザインに応じて幅や余白の調整が必要な場合があります */
    /* 例: width: auto !important; margin-right: 1rem !important; */
  }

  /* アコーディオンの表示調整（コンテンツを常に表示）*/
  /* style.cssでPC表示時にflex指定されているため合わせる */
   .p-about-point__recruiting-accordion__body {
       display: flex !important; 
   }

  /* --- 5. 改ページ制御 --- */
  h1, h2, h3, h4, h5, h6 {
    page-break-after: avoid; /* 見出し直後の改ページ禁止 */
  }
  p, li, img, table, tr, blockquote, .p-alumni__item, .p-about-point__training {
    page-break-inside: avoid; /* 要素内の途中改ページ禁止 */
  }
}

/* 用紙設定 */
@page {
  size: A4; /* 用紙サイズ */
  margin: 20mm; /* 余白 */
}