/**
 * BELAUN - トップページ比較版 B (?v=b)
 *
 * ヒーローを全画面で見せ、スクロールするとサイドバー（SPでは上部ヘッダー）が
 * スライドインしてコンテンツが横にずれる挙動を検証するための一時スタイル。
 *
 * body.belaun-topb        : バリアント適用中
 * body.belaun-topb.is-in  : 閾値を超えてスクロールし、chrome が出ている状態
 *
 * 通常のトップページ (/) には一切読み込まれない。検証終了後はこのファイルごと削除する。
 */

/* ===== サイドバー: 初期は画面外、スクロールでスライドイン ===== */
body.belaun-topb .belaun-sidebar {
  transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
  will-change: transform;
}

/* SP (<768px): 上部固定ヘッダーなので上に逃がす */
@media (max-width: 767px) {
  body.belaun-topb .belaun-sidebar {
    transform: translateY(-100%);
  }

  body.belaun-topb.is-in .belaun-sidebar {
    transform: translateY(0);
  }
}

/* PC (>=768px): 左固定サイドバーなので左に逃がす */
@media (min-width: 768px) {
  body.belaun-topb .belaun-sidebar {
    transform: translateX(-100%);
  }

  body.belaun-topb.is-in .belaun-sidebar {
    transform: translateX(0);
  }

  /* コンテンツとフッターのサイドバー分オフセットを、chrome の出入りに追従させる。
     既定値は critical.css の margin-left: var(--belaun-sidebar-width)。
     対象は critical.css のオフセット指定と同じ一覧（全ページ分）。 */
  body.belaun-topb .elementor,
  body.belaun-topb main.belaun-news-archive,
  body.belaun-topb main.belaun-news-single,
  body.belaun-topb main.belaun-room,
  body.belaun-topb > .belaun-footer {
    margin-left: 0;
    transition: margin-left 0.8s cubic-bezier(0.25, 1, 0.5, 1);
  }

  body.belaun-topb.is-in .elementor,
  body.belaun-topb.is-in main.belaun-news-archive,
  body.belaun-topb.is-in main.belaun-news-single,
  body.belaun-topb.is-in main.belaun-room,
  body.belaun-topb.is-in > .belaun-footer {
    margin-left: var(--belaun-sidebar-width);
  }
}

/* SP: 下層ページは固定ヘッダー分の padding-top を持つ。
   ヘッダーが隠れている間はその余白も畳み、出てきたら戻す。
   （TOP はもともとヒーローをヘッダー下まで敷くため除外されている） */
@media (max-width: 767px) {
  body.belaun-topb:not(.belaun-front-page) .elementor,
  body.belaun-topb:not(.belaun-front-page) main.belaun-news-archive,
  body.belaun-topb:not(.belaun-front-page) main.belaun-news-single,
  body.belaun-topb:not(.belaun-front-page) main.belaun-room {
    padding-top: 0;
    transition: padding-top 0.8s cubic-bezier(0.25, 1, 0.5, 1);
  }

  body.belaun-topb.is-in:not(.belaun-front-page) .elementor,
  body.belaun-topb.is-in:not(.belaun-front-page) main.belaun-news-archive,
  body.belaun-topb.is-in:not(.belaun-front-page) main.belaun-news-single,
  body.belaun-topb.is-in:not(.belaun-front-page) main.belaun-room {
    padding-top: var(--belaun-header-height);
  }
}

/* ===== ヒーローのスクロール誘導: chrome が出たら引っ込める ===== */
body.belaun-topb .belaun-hero__scroll {
  transition: opacity 0.5s ease;
}

body.belaun-topb.is-in .belaun-hero__scroll {
  opacity: 0;
  pointer-events: none;
}

/* ===== 動きを減らす設定の利用者には即時切替にする ===== */
@media (prefers-reduced-motion: reduce) {
  body.belaun-topb .belaun-sidebar,
  body.belaun-topb .elementor,
  body.belaun-topb > .belaun-footer,
  body.belaun-topb .belaun-hero__scroll {
    transition: none;
  }
}
