@charset "utf-8";

/*****************************
slider
*****************************/

#slider {
	position: relative;
}

.slider .item {
/*    margin: 5px;*/
/*    aspect-ratio: 4 / 3;*/
}

slider img {
	    object-position: center;
}

#thumbnail {
	margin-top: 30px;
}

#thumbnail li {
	margin-left: 5px;
	margin-right: 5px;
}

.slider {
  position: relative;
  
  /* ▼ここが最大のポイント！▼ 
     左右に50pxの「矢印を置くための余白」をスライダー内部に作ります */
  padding: 0 10%; 
  
  max-width: 900px; /* PCで見た時の最大幅（お好みで調整） */
  margin: 0 auto;   /* 全体を中央寄せ */
}

/* --- 1. 矢印の色を変更 --- */
.slide-arrow {
  /* 以前の color: #333; を以下に書き換えてください */
  color: #a9a9a9; 
  
  /* ※もし「丸い白背景」が不要で、矢印の記号だけを見せたい場合は、
     background: transparent; に変更するとスッキリします */
}

/* （お好みで）マウスを乗せた時の色も少し濃くするなど調整できます */
.slide-arrow:hover {
  color: #f5f5f5; 
}

/* --- 2. スライダーの画像エリアに「緑の枠線」と「角丸」をつける --- */
.slider-1 .slick-list {
  border: 2px solid rgba(108,159,86,1);
  border-radius: 30px;
  overflow: hidden; /* ★超重要：これがないと中の画像が四角いまま角から飛び出してしまいます */
}
.slider-1 .item img {
  width: 100%;
  aspect-ratio: 16 / 9; 
  object-fit: cover;    
  margin: 0 auto;
    border-radius: 30px 30px 0 0;
}

.slider-2 .slick-list {
  overflow: hidden; /* ★超重要：これがないと中の画像が四角いまま角から飛び出してしまいます */
}
.slider-2 .item img {
  width: 100%;
  aspect-ratio: 16 / 9; 
  object-fit: cover;    
  margin: 0 auto;
}

.slider-3  .item img,.slider-4 .item img {
  width: 100%;
  aspect-ratio: 16 / 9; 
  object-fit: cover;    
  margin: 0 auto;
    border-radius: 30px;
}

/* --- 前回の設定をリセット（不要になった左右の余白を消す） --- */
.slider-3, .slider-4 {
  padding: 0; /* 前回の padding: 0 50px; を消して元に戻す */
}

.slider-3 .slide-arrow, .slider-4 .slide-arrow {color:#1f3f19;}

/* --- 1. ナビエリアをFlexbox（横並び）にする --- */
.slider-nav-area {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 15px !important;      /* 矢印とドットの隙間（お好みで調整） */
    margin-top: 1%;
}

/* --- 2. ★超重要★ 並び順を「◀ ••• ▶」に強制変更する --- */
.slider-nav-area .prev-arrow { order: 1 !important; } /* ◀を1番目 */
.slider-nav-area .slick-dots { order: 2 !important; } /* •••を2番目 */
.slider-nav-area .next-arrow { order: 3 !important; } /* ▶を3番目 */

/* --- 3. 矢印とドットが空中に飛ばないように箱の中に固定する --- */
.slider-nav-area .slide-arrow,
.slider-nav-area .slick-dots {
  position: static !important;
  transform: none !important;
  width: auto !important;
  bottom: auto !important;
  margin: 0 !important;
}

/* --- 4. （おまけ）矢印の見た目調整 --- */
.slider-nav-area .slide-arrow {
  background: transparent !important; /* 白い丸背景を消す */
  color: #1f3f19 !important;          /* 矢印の色 */
        font-size: clamp(20px, 6vw, 50px);
}



/* --- 2. 矢印をその「空き地」にスッポリはめ込む --- */
.prev-arrow {left: 0; }

.next-arrow {
  right: 0; /* 確保した右側の余白（50px）のピッタリ右端に置く */
}

/* --- スライダー全体を中央に寄せ、矢印のスペースを作る --- */
.slider-box {
  position: relative;
  max-width: 900px; /* PCで見た時に広がりすぎないように最大幅を指定 */
  margin: 0 auto;   /* 画面のど真ん中に配置 */
}

.slider-1,.slider-2,.slider-3,.slider-4 {
  width: 100%;       /* ★スライダー本体の幅を100%に固定 */
  display: block;
}

.slider-1 .item,
.slider-2 .item,
.slider-3 .item, 
.slider-4 .item {
  width: 100%;       /* ★各スライドの幅を100%に固定 */
  display: block;
}
#slider4 .cover {
	object-fit: cover;
	object-position: top;
}

.slider-box {
	position: relative;
}
.thumbnail-box {}

.slider-heading {
	text-align: center;
	font-size: 3rem;
	margin-bottom: 10px;
}

.slider-top {
	/*max-width: 1480px;*/
	margin-bottom: 50px;
	/*position: relative;*/
	overflow: hidden;
}
.thumbnail-img{
  padding: 1%;
	height:100%;
}


.slider-top .slide-logo {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 500px;
	width: 40%;
	z-index: 999;
	pointer-events: none;
	transform: translate(-50%, -50%);
}
	.slider-top .slide-logo {
		width: 70%;
}

/******************************
pc表示
******************************/

@media screen and (min-width: 768px) {
	#slider img {
    max-height: 60vw;
	}
	#slider2 img {
    max-height: 60vw;
	}
	#slider3 img {
    max-height: 60vw;
	}
	.slider-box {
/*		width: 100%;
        margin: 30px auto;*/
	}
	.thumbnail-box {
		width: 80%;
		margin: 0 auto;
	}
	.slider-top .slide-logo {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 500px;
	width: 40%;
	z-index: 999;
	pointer-events: none;
	transform: translate(-50%, -50%);
	}
	
}

/******************************
text-box
******************************/

.slider-text-box {padding: 2%;}

.slider-text-box h3 {
    display: inline-block;
    font-size: clamp(12px, 4vw, 24px);
    margin-bottom: 1%;
}

.slider-text-box p {margin-bottom: 2%;}

.text-link a {
    font-size: clamp(12px, 4vw, 24px);
    color: var(--main-color);
}


/******************************
slick-dots
******************************/

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 40px;
  width: 40px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px;
  z-index: 999;  }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {margin-bottom: 0; }

.slick-dots {
  position: absolute;
  bottom: -40px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
/*    margin: 0 10px;*/
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
	  border-radius: 50px;
      background: transparent;
      display: block;
      height: 15px;
      width: 15px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 2px;
        left: 1px;
        content: "•";
        width: 15px;
        height: 15px;
        font-family: "slick";
        font-size: 16px;
        line-height: 15px;
        text-align: center;
        /*color: black;
        opacity: 0.25;*/
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: #1f3f19;
      opacity: 1; }

@media screen and (max-width: 768px) {
	.slick-dots {
		bottom: -35px;
	}
}

.topics_box li button:before {
	color: #fff;
	opacity: 1;
}


/* --- スライダー全体の基準点を作る --- */
.slider {
  position: relative; /* 矢印を絶対配置（absolute）するための基準になります */
}

/* --- 矢印ボタンの共通設定 --- */
.slide-arrow {
  position: absolute;
  top: 50%;                      /* 上から50%の位置に */
  transform: translateY(-50%);   /* ボタン自体の高さの半分を戻して、完璧など真ん中に */
  z-index: 10;                   /* 画像より手前（上）に表示させる */
  
  /* ボタンの見た目クリア＆装飾 */
  /*background: rgba(255, 255, 255, 0.7); /* 半透明の白背景（丸） */
  border: none;
  border-radius: 50%;            /* 丸くする */
  width: 40px;                   /* ボタンの幅 */
  height: 40px;                  /* ボタンの高さ */
  font-size: 20px;               /* 矢印（◀▶）の大きさ */
/*  color: #333;*/
  cursor: pointer;               /* マウスを乗せたら指マークに */
  display: flex;
  justify-content: center;
  align-items: center;
}

/* マウスを乗せた時の色変化（お好みで） */
.slide-arrow:hover {
  background: rgba(255, 255, 255, 1);
  color: #000;
}

/* --- 左矢印（◀）の個別位置 --- */
.prev-arrow {
  left: 0; /* 左端から10px内側に配置 */
}

/* --- 右矢印（▶）の個別位置 --- */
.next-arrow {
  right: 0; /* 右端から10px内側に配置 */
}
