@charset "UTF-8";
/* ==========================================================================
   top-custom.css  TOPページ固有
   ========================================================================== */

/* ----- メインビュー（#slideshow / 静止画。CMSスライダー差し替え対応） ----- */
#slideshow.senri-mv {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 88vh;
  border-bottom-left-radius: 60px;
}
.senri-mv__slide,
.senri-mv .main_slider__inner,
.senri-mv__slide img {
  width: 100%;
  height: 100%;
}
/* 背景画像（静止画 / CMSスライダー）はフルカバー表示 */
.senri-mv__slide img {
  object-fit: cover;
  object-position: center;
}
/* CMSスライダー差し込み領域：MV全体を満たし、内部の z-index を独立コンテキスト(0)に閉じ込める。
   これを行わないと、注入されるスライド要素(position:absolute + z-index)が
   オーバーレイ(::before / z-index:1)より上に描画され、オーバーレイが効かなくなる。 */
.senri-mv #cms-slider-1-1-area {
  position: relative;
  z-index: 0;
  width: 100%;
  height: 100%;
}
/* 写真の上に薄いオーバーレイ（キャッチコピーを読みやすく） */
.senri-mv::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.15) 0%, rgba(31, 58, 34, 0.28) 100%);
  z-index: 1;
  pointer-events: none; /* スライダーのスワイプ/クリックを透過させる */
}
/* キャッチコピー画像（catch.png）を背景の上に中央表示 */
/* ※ AOS が transform を上書きするため、中央寄せは flex で行う */
.senri-mv__catch {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5%;
  pointer-events: none; /* スライダーのスワイプ/クリックを透過させる */
}
.senri-mv__catch-img {
  width: 90%;
  height: auto;
  max-width: 560px;
}
@media all and (max-width: 1100px) {
  #slideshow.senri-mv { height: 60vh; border-bottom-left-radius: 40px; }
  .senri-mv__catch-img { max-width: 440px; }
}
@media all and (max-width: 639px) {
  #slideshow.senri-mv { height: 56vh; border-bottom-left-radius: 24px; }
  .senri-mv__catch-img { width: 80%; max-width: 320px; }
}

/* ----- CONTENTS：ナビバナー（緑寄りのやさしいオーバーレイ） ----- */
.senri-bnr .card-bnr__img { height: 320px; }
.senri-bnr .card-bnr__overlay {
  background: linear-gradient(to top, rgba(31, 58, 34, 0.72) 0%, rgba(31, 58, 34, 0.12) 55%, rgba(31, 58, 34, 0) 100%);
}
.senri-bnr .card-bnr__arrow {
  color: #21a818;
  font-size: 1.4rem;
}
.senri-bnr:hover .card-bnr__arrow {
  background: #2fd920;
  color: #fff;
}
@media all and (max-width: 639px) {
  .senri-bnr .card-bnr__img { height: 200px; }
}

/* ----- NEWS：カテゴリラベルを緑系に ----- */
.senri-news .card-blog__category {
  background: #e9f7e6;
  color: #21a818;
  font-weight: 700;
  border-radius: 4px;
}
.senri-news .card-blog__date { border-radius: 4px; }
