@charset "UTF-8";
/* ==========================================================================
   Print styles（PCブラウザ印刷対応・EZ公式「印刷チェック」準拠）
   (A) 背景色・背景画像を印刷に反映する
   (B) スクロールアニメで初期非表示になる要素を強制表示する
   (C) ヘッダーナビを表示する（ハンバーガーにしない）
   ========================================================================== */
@media print {
  /* (A) ピンク地に白文字のボタン・カード（View more / business ボタン /
     contact のメールボタン / ドロワー）が白紙上で消えないよう背景を保持する。
     box-shadow / text-shadow のみ除去。 */
  *,
  *::before,
  *::after {
    -webkit-print-color-adjust: exact !important;
    color-adjust: exact !important;
    print-color-adjust: exact !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    text-shadow: none !important;
  }
  body {
    font-size: 12pt;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  img {
    page-break-inside: avoid;
    max-width: 100% !important;
  }
  p,
  h1,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h1,
  h2,
  h3 {
    page-break-after: avoid;
  }
  /* (B) GSAP（my-gsap.js）と IntersectionObserver が inline style や class で
     visibility:hidden / opacity:0 / transform を残すため、!important で最終状態にする。
     TOP の FV 登場アニメーション（js-fv-*）は初期状態を my-gsap.js が inline style で
     作るため、読み込み直後に印刷すると英字と Scroll 表示が消える。同じ列挙に含める。 */
  .js-fadeIn,
  .js-fadeUp,
  .js-popUp,
  .js-popUps,
  .js-popUps > *,
  .js-trimming-animation,
  .js-in-view,
  .js-fv-bg,
  .js-fv-bg img,
  .js-fv-catch,
  .js-fv-catch .home-fv__catch-char,
  .js-fv-en,
  .js-fv-scroll-txt,
  .js-fv-scroll-line {
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-transform: none !important;
            transform: none !important;
    -webkit-clip-path: none !important;
    clip-path: none !important;
    -webkit-animation: none !important;
    animation: none !important;
  }
  /* (C) ヘッダーは白地・ナビを展開して表示（ハンバーガーとドロワーは出さない）。
     ヘッダーは通常 FV / MV に重なる absolute なので、印刷時は通常フローに戻す。 */
  .l-header {
    position: static !important;
    height: auto !important;
    background-color: #fff !important;
  }
  .l-header__inner {
    height: auto !important;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .l-header__nav {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .l-header__hamburger,
  .l-drawer,
  .l-footer__pagetop {
    display: none !important;
  }
  /* ヘッダーが static になるため MV の押し下げ余白は不要 */
  .l-mv {
    margin-top: 0 !important;
  }
}