@charset "UTF-8";
/* Scss Document */
:root {
  --text-color: #333;
  /*メイン色*/
  --main-color: #b69358;
  /*サブ色*/
  --sub-color: #8dc21f;
  /*サイドメニュー・レイアウト類の背景色*/
  --bg-color: #f5f5f5;
  /*境界線色*/
  --border-color: #eee5d7;
  /*ボタンなどの色*/
  --btn-color: #000;
  /*フォント*/
  --A1: "A1 Mincho";
  --ShuL: "Shuei Mincho L";
  --ShuM: "Shuei Mincho M";
  --ShuB: "Shuei Mincho B";
  --HGW3: "Hiragino Kaku Gothic W3 JIS2004";
  --HGW6: "Hiragino Kaku Gothic W6 JIS2004";
  --Gar: "EB Garamond", serif;
}

#mainvisual {
  height: 763px;
  background-color: unset;
  background-image: unset;
	background-position: center;
}

.mainvisual_wrap {
  height: 763px;
}
#mainvisual .mainvisual_wrap::before {
	content: "";
	width: 100%;
	height: 100%;
	background: #000;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0.3;
	z-index: 9;
}
#mainvisual .inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
	z-index: 99;
}
/* キャッチフレーズ */
.mainvisual_catch {
  position: absolute;
  top: 160px;
  color: #fff;
  font-family: "Ryumin ExtraBold KL";
  /*font-size: 95px;*/
  /*font-size: 69px;*/
  font-size: 67px;
  line-height: 1.2;
  letter-spacing: 0.1em;
  /*text-shadow: 0 0 2px #333,0 0 2px #333,0 0 2px #333;*/
	text-shadow: 2px 2px 4px #000;
}

.mainvisual_catch span {
  margin-top: 40px;
  display: block;
  letter-spacing: 0.08em;
  /*font-size: 28px;*/
  font-size: 26px;
  font-family: "Ryumin ExtraBold KL";
}

.mainvisual_open {
  position: absolute;
  bottom: 30px;
  right: 0;
  width: 250px;
}

.mainvisual_open img {
  width: 100%;
}

.mainvisual_btn_list {
  position: absolute;
  left: 0;
  bottom: 30px;
  display: flex;
  gap: 15px 16px;
}

.btn_point {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 173px;
  height: 173px;
  border-radius: 100%;
}
.btn_point a, .btn_point p {
  display: flex;
  flex-flow: column wrap;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #fff;
  font-family: var(--ShuB);
  font-size: 19px;
  letter-spacing: 0.1em;
  border-radius: 100%;
  background: linear-gradient(53deg, #a3762b 0%, #c7a976 50%, #a3762b 100%);
  transition: 0.2s ease-in-out;
}
.btn_point a .tit, .btn_point p .tit {
  margin-top: 15px;
}
.mainvisual_btn_list li:nth-child(2) .btn_point p .tit, .mainvisual_btn_list li:nth-child(1) .btn_point p .tit {
	margin-top: 8px;
    line-height: 1.25em;
    text-align: center;
    margin-bottom: 10px;
}
.mainvisual_btn_list li:nth-child(1) .btn_point p .tit {
    margin-top: 10px;
    margin-bottom: 2px;
    font-size: 16px;
}
.btn_point a .arrow, .btn_point p .arrow {
  display: flex;
  margin-top: 12px;
}

/* メインスライド */
#slick_fade {
  width: 100%;
  height: 763px;
}

#slick_fade li img {
  width: 100%;
  height: 763px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.mainvisual_wrap .slick-slider .slick-track {
	display: flex;
	justify-content: center;
}
.mainvisual_wrap .slick-initialized .slick-slide {
display: flex;
  justify-content: center;
}
.footer_info {
	padding-top: 95px;
}

@media screen and (max-width: 640px) {
  #wrapper, html, body {
    min-height: 500px;
  }
  #mainvisual {
    height: calc(100vh - 105px);
    max-height: 650px;
  }
  .mainvisual_wrap {
    height: calc(100vh - 105px);
    max-height: 650px;
  }
  /* トップページキャッチフレーズ */
  .mainvisual_catch {
  	position: absolute;
  	/*top: 20px;*/
  	top: 80px;
  	left: 10px;
  	margin-bottom: 10px;
	font-size: min(8.2vw, 28px);
  	/*font-size: min(8.2vw, 32px);*/
  	letter-spacing: 0;
  	line-height: 1.6;
  }
  .mainvisual_catch span {
    margin-top: 15px;
    /*font-size: 15px;*/
	font-size: 14px;
  }
  .mainvisual_open {
    right: 10px;
    bottom: 10px;
    width: 150px;
  }
  .mainvisual_btn_list {
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 15vh;
    gap: 5px;
    justify-content: center;
  }
  .btn_point {
    width: 100px;
    height: 100px;
  }
  .btn_point p {
    /*padding-bottom: 15px;*/
    padding-bottom: 7px;
    /*font-size: 13px;*/
    font-size: 12px;
  }
  .btn_point p .icon img {
    width: 35px;
    height: auto;
  }
  .btn_point p .tit {
    margin-top: 10px;
  }
  .mainvisual_btn_list li:nth-child(3) .btn_point p .tit {
    margin-top: 4px;
  }
  .btn_point p .arrow {
    display: flex;
    margin-top: 7px;
  }
  /* メインスライド */
  #slick_fade {
    height: calc(100vh - 105px);
    max-height: 650px;
  }
  #slick_fade picture img, #slick_fade picture source {
    width: 800px;
    height: calc(100vh - 105px);
    max-height: 650px;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
	.mainvisual_btn_list li:nth-child(1) .btn_point p .tit {
		    margin-top: 10px;
    margin-bottom: 2px;
    font-size: 11px;
	}
}
@media screen and (max-width: 320px) {
  .mainvisual_catch {
    font-size: 28px;
  }
}