/* ======================================== メインビジュアルの基本構造 ======================================== */
.ghr26-mv { position:relative; isolation:isolate; width:100%; height:clamp(520px,43.75vw,820px); overflow:hidden; background:#333; color:#fff; }
.ghr26-mv, .ghr26-mv * { box-sizing:border-box; }
.ghr26-mv__swiper, .ghr26-mv__shade { position:absolute; inset:0; }
.ghr26-mv__swiper { overflow:hidden; }
.ghr26-mv__wrapper { position:relative; display:flex; width:100%; height:100%; box-sizing:content-box; }
.ghr26-mv__slide { position:relative; flex-shrink:0; width:100%; height:100%; pointer-events:none; transition-property:opacity; }
.ghr26-mv__image { display:block; width:100%; height:100%; max-width:none; margin:0; object-fit:cover; object-position:center; }
.ghr26-mv__shade { z-index:1; pointer-events:none; background: rgba(0, 0, 0, 0.3); }
/* ======================================== 固定コピーと性能表示 ======================================== */
.ghr26-mv__content { position:absolute; z-index:2; top:50%; left:50%; transform:translate(-50%,-50%); width:min(900px,calc(100% - 48px)); text-align:center; }
.ghr26-mv .ghr26-mv__copy { margin:0 0 12px; padding:0; border:0; background:none; color:#fff; font-family: 'Noto Serif JP', serif; font-weight:400; font-size:clamp(44px,5.2vw,84px); line-height:1.45; letter-spacing:.1em; text-shadow:0 2px 18px rgba(0,0,0,.18); }
.ghr26-mv__copy::before, .ghr26-mv__copy::after { content:none !important; }
.ghr26-mv .ghr26-mv__specs { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; max-width:740px; margin:0 auto; padding:0; list-style:none; font-family: 'Noto Serif JP', serif;}
.ghr26-mv .ghr26-mv__spec { display:flex; align-items:center; justify-content:center; gap:7px; min-height:60px; padding:12px 8px; margin:0; background:rgba(255,255,255,.77); color:#333; font-size:clamp(15px,1.4vw,21px); line-height:1.4; letter-spacing:.06em; white-space:nowrap; }
.ghr26-mv__mobile-break { display:none; }
.ghr26-mv__spec strong { font-weight:400; }
.ghr26-mv__unit { font-size:.58em; letter-spacing:0; font-weight:700; }
.ghr26-mv .ghr26-mv__note { margin:10px auto 0; padding:0; color:#fff; font-size:11px; line-height:1.8; text-shadow:0 1px 5px #333; }
/* ======================================== ライン型プログレスページネーション ======================================== */
.ghr26-mv__controls { position:absolute; z-index:3; bottom:22px; left:50%; transform:translateX(-50%); display:none; align-items:center; gap:14px; }
.ghr26-mv__controls[hidden] { display:none; }
.ghr26-mv__pagination { display:flex; gap:10px; }
.ghr26-mv .ghr26-mv__page, .ghr26-mv .ghr26-mv__toggle { appearance:none; display:flex; align-items:center; justify-content:center; padding:0; margin:0; border:0; border-radius:0; background:transparent; box-shadow:none; color:#fff; cursor:pointer; min-height:44px; }
.ghr26-mv .ghr26-mv__page { width:64px; }
.ghr26-mv__track { display:block; width:100%; height:2px; background:rgba(255,255,255,.4); overflow:hidden; }
.ghr26-mv__progress { display:block; width:100%; height:100%; background:#fff; transform:scaleX(0); transform-origin:left; }
.ghr26-mv__page[aria-current="true"] .ghr26-mv__progress { transform:scaleX(var(--ghr26-progress,0)); }
.ghr26-mv .ghr26-mv__toggle { width:44px; font:16px/1 sans-serif; }
.ghr26-mv__page:focus-visible, .ghr26-mv__toggle:focus-visible { outline:2px solid #fff; outline-offset:2px; }
/* ======================================== スマートフォン表示 ======================================== */
@media (max-width:767px) {
  .ghr26-mv { height:clamp(440px,72svh,660px); }
  .ghr26-mv__content { width:calc(100% - 32px); }
  .ghr26-mv .ghr26-mv__copy { font-size:clamp(30px,7.8vw,56px); letter-spacing:.05em; margin-bottom:22px; }
  .ghr26-mv .ghr26-mv__specs { gap:5px; }
  .ghr26-mv .ghr26-mv__spec { min-height:44px; padding:6px 3px; gap:3px; font-size:clamp(10px,2.7vw,18px); letter-spacing:0; }
  .ghr26-mv__mobile-break { display:initial; }
  .ghr26-mv__spec strong { font-weight:700; }
  .ghr26-mv .ghr26-mv__note { max-width:440px; font-size:10px; text-align:center; }
  .ghr26-mv__controls { bottom:14px; gap:8px; }
  .ghr26-mv .ghr26-mv__page { width:48px; }
}
/* ======================================== 動きを減らす設定 ======================================== */
@media (prefers-reduced-motion:reduce) { .ghr26-mv__slide { transition-duration:0ms !important; } }
