/* =====================================================
   ex.css
   既存CSSは触らず、exスライダー + footerだけ安定させる
   ===================================================== */

/* ------------------------------
   ex hero 全体
------------------------------ */
.ex-hero {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  background: #000;
}

/* スライダー表示領域 */
.ex-hero__stage {
  position: relative;
  width: 100%;
}

/* 各スライド */
.ex-hero__slide {
  display: none;
  width: 100%;
}

.ex-hero__slide.is-active {
  display: block;
}

/* 画像は必ず全体表示 */
.ex-hero__img {
  width: 100%;
  height: auto;
  display: block;
}

/* サムネ（PC用） */
.ex-hero__thumbs {
  display: flex;
  justify-content: center;   /* 中央寄せ */
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  width: 100%;
  box-sizing: border-box;
}

.ex-hero__thumb {
  width: 120px;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.2s ease;
}

.ex-hero__thumb img {
  width: 100%;
  height: auto;
  display: block;
}

.ex-hero__thumb.is-active {
  opacity: 1;
}

/* スマホ：サムネ消す */
@media (max-width: 768px) {
  .ex-hero__thumbs { display: none !important; }
}

/* =====================================================
   footer が「左にズレる／2列消える」対策
   → どこかで .row や .col-* の余白が潰されてるので
     footerの中だけ Bootstrap の標準に“戻す”
   ===================================================== */

/* footer が fixed/absolute になって被る事故も同時に潰す */
footer {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  width: 100% !important;
}

/* container を必ず中央に */
footer .container {
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
  box-sizing: border-box !important;
}

/* row の左右マイナス余白（Bootstrap標準）を復元 */
footer .row {
  margin-left: -15px !important;
  margin-right: -15px !important;
}

/* col の左右パディング（Bootstrap標準）を復元 */
footer [class*="col-"] {
  padding-left: 15px !important;
  padding-right: 15px !important;
  box-sizing: border-box !important;
}

/* float が殺されて列が落ちる事故を防ぐ（古いBootstrap想定） */
footer [class*="col-"] {
  float: left;
}

/* row の clearfix（古いBootstrap対策） */
footer .row::before,
footer .row::after {
  content: " ";
  display: table;
}
footer .row::after {
  clear: both;
}

/* =====================================================
   preloader が残る事故防止（必要最低限）
   ※ これが原因で崩れることは通常ない
   ===================================================== */
#preloader { display: none; }
.preloader_hide { display: block; }