@charset "utf-8";
/* ===================================================
	Home CSS
====================================================== */
/* 共通 */
[class^="br_"] { display: none; }
h2 .en { letter-spacing: 10px; }

#header_wrap { background: none; }
#header_wrap #logo { opacity: 0; }
#header_wrap.scroll { background: #fff; }
#header_wrap.scroll #logo { transition: opacity .7s; opacity: 1; }

@media screen and (max-width: 600px) {
	#header_wrap { position: absolute; border: none; }
	#header_wrap.scroll { background: none; }
	#header_wrap #logo { display: none; }
}

/* class判定テキストカラー指定 */
#main_img h1::before,
#main_img h1::after { transition: all .8s; }
#main_img h1 span,
#side_sns { transition: all .5s; }
#gnav .txt_b a { color: #000; }
#gnav ul:not(.txt_b) a { color: #fff;}
#side_sns { position: fixed; top: auto; bottom: 25px; }
#side_sns.txt_b { color: #000; }
#side_sns:not(.txt_b) { color: #fff; }
#side_sns a { position: relative; }
#side_sns.txt_b a::before,
#side_sns:not(.txt_b) a::after { opacity: 1; }
#side_sns:not(.txt_b) a::before,
#side_sns.txt_b a::after { opacity: 0; }
#side_sns:not(.txt_b) a::after { position: absolute; top: 0; }
#side_sns a::after { content: ''; display: block; }
#side_sns:not(.txt_b) a:nth-of-type(1)::after {
	width: 11px; height: 24px; background: url(../img/side_fb_w.png); }
#side_sns:not(.txt_b) a:nth-of-type(2)::after {
	width: 20px; height: 20px; background: url(../img/side_insta_w.png) }
#side_sns a::before,
#side_sns a::after { transition: all .5s; }
#side_sns a:hover::before,
#side_sns a:hover::after { opacity: 0.5; }

/* ---------------------------------------------------
  アニメーション
------------------------------------------------------ */
@-webkit-keyframes loop {
	0% {
		-webkit-transform: translateX(100%);
		-ms-transform: translateX(100%);
		transform: translateX(100%);
	}
	100% {
		-webkit-transform: translateX(-100%);
		-ms-transform: translateX(-100%);
		transform: translateX(-100%);
	}
}
@-o-keyframes loop {
	0% {
		-webkit-transform: translateX(100%);
		-ms-transform: translateX(100%);
		transform: translateX(100%);
	}
	100% {
		-webkit-transform: translateX(-100%);
		-ms-transform: translateX(-100%);
		transform: translateX(-100%);
	}
}
@-moz-keyframes loop {
	0% {
		-webkit-transform: translateX(100%);
		-ms-transform: translateX(100%);
		transform: translateX(100%);
	}
	100% {
		-webkit-transform: translateX(-100%);
		-ms-transform: translateX(-100%);
		transform: translateX(-100%);
	}
}
@keyframes loop {
	0% {
		-webkit-transform: translateX(100%);
		-ms-transform: translateX(100%);
		transform: translateX(100%);
	}
	100% {
		-webkit-transform: translateX(-100%);
		-ms-transform: translateX(-100%);
		transform: translateX(-100%);
	}
}
@-webkit-keyframes loop2 {
	0% {
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
	100% {
		-webkit-transform: translateX(-200%);
		-ms-transform: translateX(-200%);
		transform: translateX(-200%);
	}
}
@-o-keyframes loop2 {
	0% {
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
	100% {
		-webkit-transform: translateX(-200%);
		-ms-transform: translateX(-200%);
		transform: translateX(-200%);
	}
}
@-moz-keyframes loop2 {
	0% {
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
	100% {
		-webkit-transform: translateX(-200%);
		-ms-transform: translateX(-200%);
		transform: translateX(-200%);
	}
}
@keyframes loop2 {
	0% {
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
	100% {
		-webkit-transform: translateX(-200%);
		-ms-transform: translateX(-200%);
		transform: translateX(-200%);
	}
}
@-webkit-keyframes hover_bar {
  0% { transform: translateY(-100%);}
  100% { transform: translateY(100%);}
}
@keyframes hover_bar {
  0% { transform: translateY(-100%);}
  100% { transform: translateY(100%);}
}

/* ---------------------------------------------------
  Main_img
------------------------------------------------------ */
#main_img { width: 100%; height: 100vh; min-height: 330px; position: relative; z-index: 0; overflow: hidden;}
#main_img h1::before,
#main_img h1::after {
  content: ''; display: block; width: 356px; height: 91px; margin: 0 0 40px;
  background-repeat: no-repeat; background-size: 100%;
}
#main_img h1:not(.txt_b)::before { opacity: 0; }
#main_img h1:not(.txt_b)::after { opacity: 1; position: absolute; top: 0; background-image: url(); }
#main_img h1.txt_b::before { opacity: 1; background-image: url(); }
#main_img h1.txt_b::after { opacity: 0; }
#main_img h1 span { display: block; text-align: left; font-size: 20px; line-height: 2; letter-spacing: 0.15em; }
#main_img h1:not(.txt_b) span { color: #fff; }
#main_img h1.txt_b span { color: #000; }
#main_img h1 { display: block; position: absolute; left: 140px; top: 35%; z-index: 5; text-align: left;
}
#main_img .flex_fade { height: 100vh; min-height: 600px; position: relative; z-index: 0;}
#main_img .flex_fade img {
	width: 100%; height: 100vh; min-height: 600px;
	-webkit-transition: transform 8s linear;
	-o-transition: transform 8s linear;
	transition: transform 8s linear;
}
#main_img .flex_fade .active img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
#main_img .flex-nav-container { display: block; width: 100%; height: auto; position: absolute; top: auto; left: 0; bottom: 45px; z-index: 5; }
#main_img .flex-control-nav {
	display: flex; align-items: flex-end; justify-content: flex-end;
	position: static; font-size: 0; line-height: 0; text-align: right; width: 100%; min-width: 1100px; padding-right: 30px; margin: 0!important; -webkit-box-sizing: border-box; box-sizing: border-box; }
#main_img .flex-control-nav li { margin: 0;}
#main_img .flex-control-nav li + li { margin: 0 0 0 12px;}
#main_img .flex-control-nav li a { width: 1px; height: 11px; background: #fff; overflow: hidden; -webkit-box-shadow: none; box-shadow: none; transition: all .5s;}
#main_img .flex-control-nav li a:hover { background: rgba(255,255,255,0.5);}
#main_img .flex-control-nav li a.flex-active { height: 31px; }

@media screen and (max-width: 600px) {
  #main_img,
  #main_img .flex_fade,
	.flexslider .slides,
	#main_img .flex_fade img { height: calc(100vh - 240px)!important; }
  #main_img h1 { width: 90%; left: 50%; transform: translateX(-50%); }
  #main_img h1::before,
  #main_img h1::after { width: 76vw; height: 20vw; margin: 0 auto 4vw; background-size: contain; }
	#main_img h1:not(.txt_b)::after { left: calc(50% - 38vw); }
  #main_img h1 span { font-size: 15px; text-align: center; line-height: 1.7; }
	#main_img .flex-nav-container { bottom: 25px; }
  #main_img .flex-control-nav { min-width: 0; padding-right: 20px; }
  #main_img .flex-control-nav li + li { margin-left: 2vw; }
}

@media screen and (max-width: 360px) {
	.br_360 { display: block; }
}

/* 共通 */
h2+p { font-size: 18px; line-height: 2.2; }
.txt_area {
  width: 910px; padding: 40px 40px 0; background: #fff; position: relative; top: -68px; }
.txt_area h3:not([class]) { margin: 0 0 30px; font-size: 22px; font-weight: bold; letter-spacing: 3px; }
.txt_area p { font-size: 18px; line-height: 2; }
.txt_area+ul { display: flex; justify-content: space-between; }
.txt_area p:last-of-type { font-size: 0; }

@media screen and (max-width: 600px) {
  h2+p { font-size: 15px; line-height: 2; }
  .txt_area { position: static; width: 100%; padding: 4%; }
  .txt_area h3:not([class]) { margin: 0 0 3vw; font-size: 20px; }
  .txt_area p { font-size: 16px; line-height: 1.8; }
  .txt_area p br { display: none; }
  .txt_area p:last-of-type {
    display: flex; align-items: center; justify-content: flex-end; font-size: 16px; }
  .txt_area+ul { flex-wrap: wrap; padding: 0 4%; }
  .txt_area+ul li:nth-of-type(1) { width: 100%; margin: 0 0 3px; }
  .txt_area+ul li img { width: 100%; }
  .txt_area+ul li:not(:first-of-type) { width: calc(50% - 1.5px); }

}

/* ---------------------------------------------------
  sec1
------------------------------------------------------ */
#sec1 { padding: 50px 0; border-bottom: 1px solid #ccc; }
#sec1 .inner { display: flex; max-width: 1480px;}
#sec1 h2 { margin: 0 45px 10px 0; font-size: 26px; letter-spacing: 10px; }
#sec1 p { font-size: 14px; }
#news_col { width: 370px; padding-right: 80px; position: relative; }
#news_col img,
#info_col img { margin: 0 0 10px; border-radius: 3px; }
#news_col img { height: 140px; width: 100%; object-fit: cover; }
#news_col p span { display: block; }
#news_col::after {
  content: ''; width: 1px; height: 200px; display: block; border-left: 1px solid #cdcdcd; position: absolute; right: 0; bottom: 0; }
#info_col { width: calc(100% - 400px); padding-left: 80px; }
#info_col ul { display: flex; }
#info_col .tit_col { display: flex; align-items: center; }
#info_col .tit_col .slide_bottom { position: relative;}
#info_col .tit_col .slick-counter { padding: 0 0 5px; font-size: 12px; }

#info_col #info_slide li { max-width: 280px; margin-right: 10px;}
#info_col #info_slide .slick-prev,
#info_col #info_slide .slick-next { width: 22px; height: 41px; z-index: 1; top: 70px; }
#info_col #info_slide .slick-prev { left: -40px; right: auto; }
#info_col #info_slide .slick-next { right: -10px; left: auto; }
#info_col #info_slide .slick-prev::before,
#info_col #info_slide .slick-next::before {
  background: url(../../img/topics_arrow_l.svg) no-repeat; content: ''; width: 22px; height: 41px; position: absolute; left: 0; bottom: 0; opacity: 1; }
#info_col #info_slide .slick-next::before { transform: rotate(180deg); }

@media screen and (max-width: 1400px) {
  #sec1 .inner { padding: 0 4%; }
  #news_col { width: 27%; padding-right: 5%; }
  #info_col { width: 73%; padding-left: 5%; }
  #info_col #info_slide li { max-width: 98%;}
  #info_col #info_slide .slick-prev { left: -40px; }
  #info_col #info_slide .slick-next  { right: -40px;  }
}

@media screen and (max-width: 600px) {
  #sec1 { padding: 0; }
  #sec1.sa,
  #info_col.sa { visibility: visible; opacity: 1; }
  #sec1 .inner { flex-direction: column; padding: 0;}
  #news_col { width: 100%; padding: 4%; border-bottom: 1px solid #cdcdcd; }
  #news_col::after { content: none; }
	#news_col img { display: none; }
  #news_col p span { display: inline-block; }
  #news_col p .date { margin-right: 10px; }
  #info_col { width: 100%; padding: 7vw 0; }
  #info_col .tit_col { padding: 0 4%; }
  #info_col #info_slide li { max-width: 280px; }
  #info_col #info_slide .slick-prev,
  #info_col #info_slide .slick-next { display: none!important; }
	#news_col p span:not([class]),
	#info_col #info_slide p { text-decoration: underline; }
}

@media screen and (max-width: 360px) {
	#sec1 h2 { letter-spacing: 6px; }
}

/* ---------------------------------------------------
  sec-banner
------------------------------------------------------ */
#sec-banner img {
  max-width: 800px;
  margin: 0 auto;
}

.sec-banner-list-item {
  text-align: center;
  margin-top: 50px;
}

@media screen and (max-width: 600px) {
  #sec-banner { padding: 6vw 4% 12vw; }

  #sec-banner img {
    max-width: 100%;
    width: 100%;
  }
}


/* ---------------------------------------------------
  sec2
------------------------------------------------------ */
#sec2 { padding: 90px 0; text-align: center; }
#sec2 h2 { margin: 0 0 40px; letter-spacing: 3px; }
#sec2 h2 .en { font-size: 50px; }
#sec2 h2 span:nth-of-type(2) { display: block; margin: 28px 0 0; font-size: 28px; }
#sec2 .lr_link {
  font-size: 17px; border: 1px solid #b2b2b2;
  margin: 40px auto 0; padding: 11px 84px; }
#sec2 .lr_link::before { background: #f1f1e8; }

#sec2 #bestrate_col { margin: 95px 0 160px; padding: 100px 0 125px; background: #f8f8f6; }
#sec2 #bestrate_col .stit { font-size: 50px; letter-spacing: 10px; }
#sec2 #bestrate_col .tit { font-weight: bold; font-size: 28px; margin-top: 50px; }
#sec2 #bestrate_col .box01 { margin-top: 55px; display: flex; justify-content: space-between; text-align: left; }
#sec2 #bestrate_col .box01 .photo { width: 50%; }
#sec2 #bestrate_col .box01 .txt { width: 45.5%; line-height: 1.7; }
#sec2 #bestrate_col .box01 .txt h4 { font-size: 23px; color: #0757a2; padding-left: 42px; background: url(../../img/bestrate_icon.svg) no-repeat center left/30px; }
#sec2 #bestrate_col .box01 .txt p { margin-top: 1em; }
#sec2 #bestrate_col .box01 .txt .caution { font-size: 15px; text-indent: -1em; padding-left: 1em; }
#sec2 #bestrate_col .box01 .txt .caution::before { content: '※';}
#sec2 #bestrate_col .box02 { padding: 50px 55px; margin-top: 80px; background: #bdd8f6; }
#sec2 #bestrate_col .box02 h4 { font-size: 28px; letter-spacing: 0.1em; }
#sec2 #bestrate_col .box02 h4 span { font-size: 40px; }
#sec2 #bestrate_col .box02 ul { display: flex; justify-content: space-between; gap: 2%; margin-top: 30px; }
#sec2 #bestrate_col .box02 ul li { background: #fff; flex: 1; padding: 25px 3%; box-sizing: border-box; }
#sec2 #bestrate_col .box02 ul li dl { display: flex; flex-direction: column; height: 100%; }
#sec2 #bestrate_col .box02 ul li dl dt { color: #0757a2; font-size: 27px; display: flex; justify-content: center; align-items: center; border-bottom: 1px solid #373737; margin-bottom: 20px; padding-bottom: 5px; }
#sec2 #bestrate_col .box02 ul li dl dt span { font-size: 36px; padding: 0 5px; }
#sec2 #bestrate_col .box02 ul li dl dd { font-size: 15px; flex-grow: 1; display: flex; flex-direction: column; justify-content: center; align-items: center; letter-spacing: 0.1em; }
#sec2 #bestrate_col .box02 ul li dl dd span > span { font-size: 25px; }

#sec2 > .bnr_col{margin-top: 50px;display: flex;justify-content: center;}
#sec2 > .bnr_col img{padding: 10px;}

@media screen and (max-width: 600px) {
  #sec2 { padding: 6vw 4% 12vw; }
  #sec2 h2 { margin: 0 0 4vw; }
  #sec2 h2 .en { font-size: 40px; }
  #sec2 h2 span:nth-of-type(2) { margin: 2vw 0 0; font-size: 20px; }
  #sec2 .lr_link { margin: 4vw auto 0; }

  #sec2 #bestrate_col { margin: 50px 0 80px; padding: 50px 0; }
  #sec2 #bestrate_col .stit { font-size: 36px; }
  #sec2 #bestrate_col .tit { font-size: 22px; margin-top: 15px; }
  #sec2 #bestrate_col .box01 { margin-top: 35px;  flex-direction: column; }
  #sec2 #bestrate_col .box01 .photo { width: 100%; }
  #sec2 #bestrate_col .box01 .txt { width: 100%; margin-top: 35px; }
  #sec2 #bestrate_col .box01 .txt h4 { font-size: 20px; padding-left: 30px; background-size: 24px;}
  #sec2 #bestrate_col .box01 .txt p { margin-top: 0.8em; }
  #sec2 #bestrate_col .box01 .txt .caution { font-size: 14px; }
  #sec2 #bestrate_col .box02 { padding: 30px 4%; margin-top: 50px; }
  #sec2 #bestrate_col .box02 h4 { font-size: 20px; }
  #sec2 #bestrate_col .box02 h4 span { font-size: 28px; }
  #sec2 #bestrate_col .box02 ul { flex-direction: column; margin-top: 30px; gap: 0; }
  #sec2 #bestrate_col .box02 ul li { width: 100%; padding: 20px 6%; }
  #sec2 #bestrate_col .box02 ul li + li { margin-top: 20px;}
  #sec2 #bestrate_col .box02 ul li dl { height: auto; }
  #sec2 #bestrate_col .box02 ul li dl dt { font-size: 18px; margin-bottom: 10px; }
  #sec2 #bestrate_col .box02 ul li dl dt span { font-size: 24px; }
  #sec2 #bestrate_col .box02 ul li dl dd { font-size: 14px; }
  #sec2 #bestrate_col .box02 ul li dl dd span > span { font-size: 19px; }

  #sec2 > .bnr_col{display:block;margin-top:30px;}
  #sec2 > .bnr_col img{padding: 0 0 15px;}
}


/* ---------------------------------------------------
  sec3
------------------------------------------------------ */
#sec3 { padding: 0 0 140px; box-sizing: border-box; }
#sec3 h2 {
  display: flex; align-items: center; justify-content: center;
  height: 845px; font-size: 50px; color: #fff; letter-spacing: 38px;
  background: url(../../img/sec3_main.jpg)no-repeat center / cover;
}

#sec3 .txt_area+ul { max-width: 1480px; margin: 0 auto; }
#sec3 .txt_area+ul li { max-width: 32%; box-shadow: 0px 20px 20px 0 rgb(0 0 0 / 15%); }

#sec3 .menu { margin: 70px 0 0; text-align: center; }
#sec3 .menu .en { margin: 0 0 18px; font-size: 28px; }
#sec3 .menu .Pagelink {
  display: flex; justify-content: center; position: relative; max-width: 1120px; width: 100%; margin: 0 auto; }
#sec3 .menu .Pagelink::before {
  content: ''; width: 1px; height: 18px; background: #d4d4d4; position: absolute; top: -18px; }
#sec3 .menu .Pagelink li { width: 560px; }
#sec3 .menu .Pagelink li+li { border-left: 1px solid #d4d4d4; }
#sec3 .menu .Pagelink .lr_link {
  display: flex; align-items: center; border-top: 1px solid #d4d4d4; border-bottom: 1px solid #d4d4d4; padding: 20px; position: relative; }
#sec3 .menu .Pagelink .lr_link::before { background: #f1f1e8; }
#sec3 .menu .Pagelink .lr_link::after {
  content: ''; background: url(../img/link_arrow.svg)no-repeat center; width: 23px; height: 15px; display: block; position: absolute; right: 50px; }
#sec3 .menu .Pagelink .lr_link:hover { text-decoration: none; }
#sec3 .menu .Pagelink .lr_link img { margin-right: 25px; }
#sec3 .menu .Pagelink .lr_link:hover img { opacity: 1; }
#sec3 .menu .Pagelink .lr_link span { font-size: 21px; font-weight: bold; }

.circle_link { position: absolute; top: 35px; right: 40px; }

@media screen and (max-width: 600px) {
  #sec3 { padding: 0 0 12vw; }
  #sec3 h2 {
    height: 340px; font-size: 28px; letter-spacing: 14px; background: url(../../img/sec3_main_sp.jpg)no-repeat center; }
  #sec3 .txt_area+ul li { max-width: 100%; }
  .circle_link { position: static; width: 50px; height: 50px; margin-left: 10px; }
  #sec3 .menu { margin: 7vw 0 0; }
  #sec3 .menu .Pagelink { flex-direction: column; width: 92%; }
	#sec3 .menu .Pagelink::before { left: 50%; }
  #sec3 .menu .Pagelink li { width: 100%; }
  #sec3 .menu .Pagelink li+li { border: none; }
  #sec3 .menu .Pagelink li+li .lr_link { border-top: none; }
  #sec3 .menu .Pagelink .lr_link { padding: 10px; }
  #sec3 .menu .Pagelink .lr_link::after { right: 10px; background-size: 70%; }
  #sec3 .menu .Pagelink .lr_link img { width: 33%; }
  #sec3 .menu .Pagelink .lr_link span { font-size: 16px; }
}

@media screen and (max-width: 360px) {
  #sec3 .menu .Pagelink .lr_link::after { content: none; }
}


/* ---------------------------------------------------
  sec4
------------------------------------------------------ */
#sec4 { padding: 0 0 140px; box-sizing: border-box;}
#sec4 h2 {
  display: flex; align-items: center; justify-content: center;
  height: 845px; font-size: 50px; color: #fff; letter-spacing: 38px;
  background: url(../../img/sec4_main.jpg)no-repeat center / cover;
}
#sec4 .txt_area { margin-left: auto; }

#room_link a { display: block; position: relative; }
#room_link a img { width: 100%; transition: transform .5s; opacity: 1; }
#room_link a:hover img { transform: scale(1.1); }
#room_link li { width: 23.6%; position: relative; }
#room_link li:hover .bar,
#room_link li:hover div:not([class])::after  { opacity: 1;}
#room_link .bar {
  display: block;
  width: 1px;
  height: 110px;
  position: absolute;
  z-index: 1;
  bottom: 70px;
  left: 50%;
  overflow: hidden;
  transition: opacity .5s;
}
#room_link .bar::before {
  content: '';
  display: block;
  width: 1px;
  height: 100%;
  background: rgba(102, 102, 102, .5);
  position: absolute;
  left: 0;
  top: 0;
}
#room_link .bar::after {
  content: '';
  display: block;
  width: 1px;
  height: 100%;
  background: #666;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: hover_bar cubic-bezier(0.645,0.045,0.355,1) 1.5s infinite;
  animation: hover_bar cubic-bezier(0.645,0.045,0.355,1) 1.5s infinite;
	opacity: 0;
}
#room_link li:hover .bar::after { opacity: 1; }
#room_link li::after {
  content: ''; width: 3px; height: 3px; background: #666; border-radius: 50%; display: block; position: absolute; left: calc(50% - 1px); bottom: 70px; transition: transform .5s; }
#room_link p { font-size: 16px; text-align: center; }
#room_link .img { overflow: hidden; }
#room_link p:not([class]) { margin-top: 60px; }
#room_link p span { font-size: 19px; display: block; }

@media screen and (max-width: 600px) {
  #sec4 { padding: 0 0 12vw; }
  #sec4 h2 {
    height: 340px; font-size: 28px; letter-spacing: 14px; background: url(../../img/sec4_main_sp.jpg)no-repeat center; }
  #room_link li { width: 49%; }
  #room_link li:nth-child(-n+2) { margin: 0 0 20px;}
  #room_link li::after { content: none; }
  #room_link p { font-size: 15px; }
	#room_link .img { box-shadow: 0px 15px 15px 0 rgb(0 0 0 / 15%); }
	#room_link p:not([class]) { margin: 10px 0 0; }
  #room_link p span { font-size: 16px; }
  #room_link .bar { display: none; }
}

/* ---------------------------------------------------
  sec8
------------------------------------------------------ */
#sec8 { padding: 0 0 140px; box-sizing: border-box;}
#sec8 h2 {
  display: flex; align-items: center; justify-content: center;
  height: 845px; font-size: 50px; color: #fff; letter-spacing: 38px;
  background: url(../../img/sec8_main.jpg)no-repeat center / cover;
}

#glamping_link {max-width: 1480px; margin: 0 auto;}
#glamping_link a { display: block; position: relative; }
#glamping_link a img { width: 100%; transition: transform .5s; opacity: 1; }
#glamping_link a:hover img { transform: scale(1.1); }
#glamping_link li { width: 49%; position: relative; }
#glamping_link li:hover .bar,
#glamping_link li:hover div:not([class])::after  { opacity: 1;}
#glamping_link .bar {
  display: block;
  width: 1px;
  height: 110px;
  position: absolute;
  z-index: 1;
  bottom: 50px;
  left: 50%;
  overflow: hidden;
  transition: opacity .5s;
}
#glamping_link .bar::before {
  content: '';
  display: block;
  width: 1px;
  height: 100%;
  background: rgba(102, 102, 102, .5);
  position: absolute;
  left: 0;
  top: 0;
}
#glamping_link .bar::after {
  content: '';
  display: block;
  width: 1px;
  height: 100%;
  background: #666;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: hover_bar cubic-bezier(0.645,0.045,0.355,1) 1.5s infinite;
  animation: hover_bar cubic-bezier(0.645,0.045,0.355,1) 1.5s infinite;
	opacity: 0;
}
#glamping_link li:hover .bar::after { opacity: 1; }
#glamping_link li::after {
  content: ''; width: 3px; height: 3px; background: #666; border-radius: 50%; display: block; position: absolute; left: calc(50% - 1px); bottom: 50px; transition: transform .5s; }
#glamping_link p { font-size: 19px; text-align: center; }
#glamping_link .img { overflow: hidden; }
#glamping_link p:not([class]) { margin-top: 60px; }


@media screen and (max-width: 600px) {
  #sec8 { padding: 0 0 12vw; }
  #sec8 h2 {
    height: 340px; font-size: 28px; letter-spacing: 14px; background: url(../../img/sec8_main_sp.jpg)no-repeat center; background-size: cover;}
	#sec8 h3 span { display: block;}
  #glamping_link li { width: 49%; }
  #glamping_link li:nth-child(-n+2) { margin: 0 0 20px;}
  #glamping_link li::after { content: none; }
  #glamping_link p { font-size: 16px; }
	#glamping_link .img { box-shadow: 0px 15px 15px 0 rgb(0 0 0 / 15%); }
	#glamping_link p:not([class]) { margin: 10px 0 0; }
  #glamping_link .bar { display: none; }
}

/* ---------------------------------------------------
  sec5
------------------------------------------------------ */
#sec5 { padding: 0 0 120px; background: url(../../img/sec5_bg.jpg)no-repeat center bottom / cover #d6e8ff; overflow: hidden; text-align: center; }
#sec5 h2 .en { color: #fff;}
#sec5 h2 span:nth-of-type(2) { color: #0757a2; }
#sec5 h2,
#sec5 h2+p { margin: 0 0 30px; }

#sec5 .slick-slide .img {
	width: 36.25vw; min-width: 975px; overflow: hidden;
	-webkit-transform: scale(0.8);
	-ms-transform: scale(0.8);
	transform: scale(0.8);
	-webkit-box-shadow: 0 10px 10px -3px rgba(151,182,213,0);
	box-shadow: 0 10px 10px -3px rgba(151,182,213,0);
	-webkit-transition: transform 0.5s, box-shadow 0.5s;
	-o-transition: transform 0.5s, box-shadow 0.5s;
	transition: transform 0.5s, box-shadow 0.5s;
}
#sec5 .slick-slide.active .img {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-box-shadow: 0 10px 10px -3px rgb(151,182,213 / 30%);
  box-shadow: 0 10px 10px -3px rgb(151,182,213 / 30%);
}
#sec5 .slick-slider .slick-prev,
#sec5 .slick-slider .slick-next { width: 36px; height: 71px; z-index: 1; }
#sec5 .slick-slider .slick-prev { left: calc(50% - 555px); }
#sec5 .slick-slider .slick-next { right: calc(50% - 555px); }
#sec5 .slick-slider .slick-prev:before,
#sec5 .slick-slider .slick-next:before {
  background: url(../../img/slide_arrow_l.svg) no-repeat;
  content: '';
  width: 36px;
  height: 71px;
  position: absolute;
  left: 0;
  bottom: 0;
  opacity: 1;
}
#sec5 .slick-slider .slick-next:before {
  transform: rotate(180deg);
}
#sec5 .slick-slider div>div { position: relative; }
#sec5 .slick-slider .img span {
  position: absolute; bottom: 0; right: 0; padding: 10px 40px; background: #000; color: #fff; font-size: 16px;
}

#sec5 .lr_link { margin: 70px auto 0; padding: 25px 130px; font-weight: bold; color: #373737; background: #fff; font-size: 16px; }
#sec5 .lr_link::before { background: #e4f0ff; }

@media screen and (max-width: 1200px) {
	#sec5 .slick-slider .slick-prev { left: 0; }
	#sec5 .slick-slider .slick-next { right: 0; }
}

@media screen and (max-width: 600px) {
  #sec5 { overflow: hidden; }
  #sec5.inner {
    padding: 0 0 12vw; background: url(../../img/sec5_bg.jpg)no-repeat center bottom #cbe0fc; }
  #sec5 h2, #sec5 h2+p { margin: 0 0 4vw; }
  #sec5 h2 .en { font-size: 8vw; letter-spacing: calc((130vw - 8vw * 14) / (14 - 1)); white-space: nowrap; }
  #sec5 h2 span:nth-of-type(2) { margin: 2vw 0 0; font-size: 22px; }
  #sec5 h2+p { padding: 0 4%; text-align: left; }
  #sec5 h2+p br { display: none; }

  #sec5 .slick-slider { padding: 0 40px; }
  #sec5 .slick-slider .slick-prev { left: 12px; right: auto; }
  #sec5 .slick-slider .slick-next { right: 12px; left: auto; }
  #sec5 .slick-slider .slick-prev,
  #sec5 .slick-slider .slick-next { width: 18px; height: 36px; }
  #sec5 .slick-slider .slick-prev:before,
  #sec5 .slick-slider .slick-next:before { background-size: cover; width: 18px; height: 36px; }
  #sec5 .slick-slide .img { width: 100%; min-width: 0;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }
  #sec5 .slick-slider .img span { padding: 5px 20px; font-size: 14px; }
  #sec5 .lr_link { width: calc(100% - 80px); margin: 6vw auto 0; padding: 20px 0; box-sizing: border-box; }
}


/* ---------------------------------------------------
  sec6
------------------------------------------------------ */
#sec6.inner { padding: 70px 0 120px; border-bottom: 1px solid #e1e1d8; background: #f8f8f6; }
#sec6 h2 { margin: 0 0 30px; text-align: center; }
#sec6 h2 .en { font-size: 50px; }
#sec6 h2 span:nth-of-type(2) { display: block; font-size: 18px; }

/* おすすめプラン */
#recommend_489ban { max-width: 1120px; margin: 0 auto 80px; }
#sec6 .slick-slide { padding: 10px 20px; }
#sec6 .PlanView {
  display: flex!important; position: relative; max-width: 525px; height: 300px; /*height: 250px;*/ padding: 17px;
	background: #fff; box-shadow: 0px 0px 10px 4px rgb(201 199 188 / 35%);
	position: relative; text-align: center; text-decoration: none; -webkit-transition: 0.2s ease all;
  transition: 0.2s ease all; text-align: center; z-index: 1; box-sizing: border-box; }
#sec6 .PlanView::before {
	position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; content: ''; transition: transform .3s; transform-origin: right top; transform: scale(0, 1); background: #f8f8f6; }
#sec6 .PlanView:hover::before {
  transform-origin: left top;
  transform: scale(1, 1); }
#sec6 .PlanView,
#sec6 .PlanView .planlist a { transition: all .5s; }
#sec6 .PlanView:hover .planlist a { background: #2e60a9; text-decoration: none; }
#sec6 .PlanView p { height: 140px; overflow: hidden;text-align: left; line-height: 1.8; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 5;}
#sec6 .PlanView .picture { width: 200px; height: 100%;}
#sec6 .PlanView .picture a:hover img { opacity: 1; }
#sec6 .PlanView .plan { height: 65px; margin: 0 0 20px; overflow: hidden; }
#sec6 .PlanView .plan a { font-size: 18px; font-weight: bold; color: #0c4291; }
#sec6 .PlanView .plan a:hover { text-decoration: none; }
#sec6 .PlanView .explan { width: 326px; padding-left: 30px; }
#sec6 .PlanView .comment { /*max-height: 115px; overflow: hidden;*/ font-size: 16px; }
#sec6 .PlanView .comment div,
#sec6 .PlanView .comment p:not(:nth-of-type(1)),
#sec6 .PlanView .roomlist { display: none; }
#sec6 .PlanView .planlist a {
  position: absolute; bottom: 0; right: 0; display: block; width: 172px; padding: 6px; box-sizing: border-box; background: #214d8d; color: #fff; text-align: center; outline: none; font-size: 16px; }
#sec6 .slick-slider .slick-prev,
#sec6 .slick-slider .slick-next { width: 36px; height: 71px; z-index: 1; }
#sec6 .slick-slider .slick-prev { left: auto; right: calc(50% + 560px); }
#sec6 .slick-slider .slick-next { right: auto; left: calc(50% + 560px); }
#sec6 .slick-slider .slick-prev:before,
#sec6 .slick-slider .slick-next:before {
  background: url(../../img/slide_arrow_l.svg) no-repeat; content: ''; width: 36px; height: 71px; position: absolute; left: 0; bottom: 0; opacity: 1; }
#sec6 .slick-slider .slick-next:before { transform: rotate(180deg); }

#sec6 .member {
  align-items: center; max-width: 1100px; width: 100%; margin: 0 auto; padding: 20px 20px 20px 40px;
  background: linear-gradient(20deg, #ddd 47%, #d7d7d7 47%); }
#sec6 .member div { text-align: center; }
#sec6 .member div>p {
  width: 433px; background: #f5f5f5; font-size: 18px; font-weight: bold; text-align: center; border-radius: 20px; margin: 0 auto 20px; }
#sec6 .member div>p span { font-size: 24px; color: #9b7729; }
#sec6 .member h3 span:nth-of-type(1) { justify-content: center; }
#sec6 .member h3 .en { margin: 20px 0 30px; }
#sec6 .member div ul:not([class]) { justify-content: center; margin: 0 0 30px; }
#sec6 .member div li p span { text-align: left; }
#sec6 .member .btn_link { flex-direction: row; }
#sec6 .member .btn_link li+li { margin-top: 0; margin-left: 25px; }

@media screen and (max-width: 1300px) {
	#recommend_489ban { max-width: 1100px; padding: 0 2%; }
	#sec6 .slick-slide { padding: 10px 16px; }
	#sec6 .PlanView { max-width: 490px; }
	#sec6 .PlanView p { height: auto; }
	#sec6 .slick-slider .slick-prev { left: 0; right: auto; }
	#sec6 .slick-slider .slick-next { right: 0; left: auto; }
}

@media screen and (max-width: 600px) {
  #sec6.inner {
    padding: 7vw 0 12vw; box-sizing: border-box; }
  #sec6 h2 { margin: 0 0 3vw; }

  #sec6 .slider_wrap { margin: 0 auto 7vw; }
  #sec6 .slick-slider .slick-prev:before,
  #sec6 .slick-slider .slick-next:before {
    width: 18px; height: 36px; background-size: cover; }
  #sec6 .slick-slider .slick-prev,
  #sec6 .slick-slider .slick-next { width: 18px; height: 36px; }
  #sec6 .slick-slider .slick-prev { left: 0; right: auto; }
  #sec6 .slick-slider .slick-next { left: auto; right: 0; }
	#sec6 .slick-slide { margin: 0; }
  #sec6 .PlanView { flex-direction: column; height: 100%; max-width: 100%; padding: 17px 17px 40px; }
	#sec6 .PlanView .picture { width: 100%; }
  #sec6 .PlanView .explan { width: 100%; padding: 2vw 3%; }

  #sec6 .member { width: 92%; padding: 7vw 4%; }
  #sec6 .member div,
  #sec6 .member div>p { width: 100%; }
  #sec6 .member div>p,
  #sec6 .member h3 span:nth-of-type(1),
  #sec6 .member h3 span span { white-space: nowrap; font-size: 16px!important; }
  #sec6 .member h3 span:nth-of-type(1) { flex-wrap: wrap; }
  #sec6 .member h3 .en { font-size: 54px; margin: 4vw auto; }
  #sec6 .member div ul:not([class]) { flex-direction: column; margin: 0 0 3vw; }
  #sec6 .member div ul:not([class]) li+li { margin: 2vw 0 0;}
  #sec6 .member div li p br { display: none; }
  #sec6 .member div li p span { padding: 0; line-height: 1.5; }
  #sec6 .member div li+li { margin-left: 15px; }
  #sec6 .member div li p::before { width: 26px; height: 26px; font-size: 15px; }
  #sec6 .member div>p span { font-size: 18px; }
  #sec6 .member .btn_link { flex-direction: column; }
  #sec6 .member .btn_link li a { width: 100%; height: 62px; }
  #sec6 .member .btn_link li+li { margin: 2vw 0 0; }
}

@media screen and (max-width: 360px) {
  #sec6 .member h3 span span { margin: 0 0 2vw; }
  #sec6 .member h3 span:nth-of-type(1) { flex-direction: column; }
}


/* ---------------------------------------------------
  sec7
------------------------------------------------------ */
#sec7.inner { padding: 70px 0 120px; border-bottom: 1px solid #e1e1d8; background: #f8f8f6; }
#sec7 h2 { margin: 0 0 60px; text-align: center; }
#sec7 h2 .en { font-size: 50px; }
#sec7 h2 span:nth-of-type(2) { display: block; font-size: 18px; }

#sec7 #feed2 { padding: 0 220px; font-size: 18px; }
#sec7 #feed2 li { display: flex; align-items: center; }
#sec7 #feed2 li+li { margin: 30px 0 0; }
#sec7 #feed2 li a { text-decoration: underline; }
#sec7 #feed2 li a:hover { text-decoration: none; opacity: 0.5; }
#sec7 #feed2 li span { margin-right: 25px; }
#sec7 #feed2 li .cat {
  display: flex; align-items: center; justify-content: center; padding: 0 10px; font-size: 13px; background: #fff; }
#sec7 #feed2+p { margin: 50px 0 90px; text-align: center; font-size: 18px; }
#sec7 #feed2+p a { transition: opacity .5s; display: flex; align-items: center; justify-content: center; }
#sec7 #feed2+p a:hover { opacity: .5; text-decoration: none; }
#sec7 #feed2+p a::before {
	content: ''; width: 10px; height: 1px; background: #717171; display: inline-block; margin-right: 10px; }

#bn_area { max-width: 1100px; width: 96%; margin: 0 auto; }
#bn_area ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
#bn_area li { width: 31.9%; }
#bn_area li:nth-child(-n+2) { max-width: 537px; width: 49%; margin: 0 0 20px; }
#bn_area .lr_link {
  padding: 17px; border: 1px solid #c6c6c6; border-radius: 3px; background: #ebebeb; }
#bn_area .lr_link::before { background: #fff; }
#bn_area .lr_link span {
  display: flex; align-items: center; justify-content: center; font-size: 21px; }
#bn_area .lr_link span::before { content: ''; display: inline-block; margin-right: 20px; }
#bn_area li:nth-of-type(1) .lr_link span::before {
  background: url(../../img/bn_ico1.png)no-repeat center; width: 27px; height: 30px; }
#bn_area li:nth-of-type(2) .lr_link span::before {
  background: url(../../img/bn_ico2.png)no-repeat center; width: 32px; height: 26px; }
#bn_area a { display: block; }

@media screen and (max-width: 600px) {
  #sec7.inner { padding: 7vw 4%; box-sizing: border-box; }
  #sec7 #feed2 { padding: 0; }
  #sec7 #feed2 li { flex-wrap: wrap; line-height: 1.8; }
  #sec7 #feed2 li+li { margin: 3vw 0 0; }
  #sec7 #feed2 li span { margin-right: 15px; }
  #sec7 #feed2 li a { display: block; width: 100%; font-size: 16px; text-align: left; }
  #sec7 #feed2+p { margin: 8vw 0 10vw; }

  #bn_area ul { flex-direction: column; }
  #bn_area li,
  #bn_area li:nth-child(-n+2) {  width: 100%; margin: 0 0 2vw; text-align: center; }
  #bn_area li:last-of-type { margin: 0; }
  #bn_area .lr_link { width: 100%; max-width: 350px; margin: 0 auto; box-sizing: border-box; }
  #bn_area .lr_link span { font-size: 16px; }
}

  /* ---------------------------------------------------
  sec9
------------------------------------------------------ */
#sec9 { padding: 0 0 140px; box-sizing: border-box; }
#sec9 h2 {
  display: flex; align-items: center; justify-content: center;
  height: 845px; font-size: 50px; color: #fff; letter-spacing: 38px;
  background: url(../../img/sec9_main.jpg)no-repeat center / cover;
}

#sec9 .txt_area+ul { max-width: 1480px; margin: 0 auto; }
#sec9 .txt_area+ul li { max-width: 32%; box-shadow: 0px 20px 20px 0 rgb(0 0 0 / 15%); }
#sec9 .txt_area p:last-of-type{font-size: 18px;line-height: 2;}
#sec9 .menu { margin: 70px 0 0; text-align: center; }
#sec9 .menu .en { margin: 0 0 18px; font-size: 28px; }
#sec9 .menu .Pagelink {
  display: flex; justify-content: center; position: relative; max-width: 1120px; width: 100%; margin: 0 auto; }
#sec9 .menu .Pagelink::before {
  content: ''; width: 1px; height: 18px; background: #d4d4d4; position: absolute; top: -18px; }
#sec9 .menu .Pagelink li { width: 560px; }
#sec9 .menu .Pagelink li+li { border-left: 1px solid #d4d4d4; }
#sec9 .menu .Pagelink .lr_link {
  display: flex; align-items: center; border-top: 1px solid #d4d4d4; border-bottom: 1px solid #d4d4d4; padding: 20px; position: relative; }
#sec9 .menu .Pagelink .lr_link::before { background: #f1f1e8; }
#sec9 .menu .Pagelink .lr_link::after {
  content: ''; background: url(../../img/link_arrow.svg)no-repeat center; width: 23px; height: 15px; display: block; position: absolute; right: 50px; }
#sec9 .menu .Pagelink .lr_link:hover { text-decoration: none; }
#sec9 .menu .Pagelink .lr_link img { margin-right: 25px; }
#sec9 .menu .Pagelink .lr_link:hover img { opacity: 1; }
#sec9 .menu .Pagelink .lr_link span { font-size: 21px; font-weight: bold; }


.circle_link { position: absolute; top: 35px; right: 40px; }

#sec9 .other_col {line-height: 2;display: flex;justify-content: space-between;flex-wrap: wrap;border: 1px solid #d4d4d4; max-width: 1100px; width: 92%; margin: 80px auto 0; align-items: center; padding: 50px 10px 55px 55px; box-sizing: border-box; }
#sec9 .other_col dt { font-weight: bold; margin-right: 10%; }
#sec9 .other_col dd { flex-grow: 1; padding-top: 10px; }
#sec9 .other_col dd ul { display: flex; flex-direction: column; flex-wrap: wrap; height: 8em; }
#sec9 .other_col dd ul li { text-indent: -0.5em; padding-left: 0.5em; }
#sec9 .other_col dd ul li .br_wine{ display:none;}
#sec9 .other_col dd ul li::before { content: '・'; margin-right: 4px; }
#sec9 .drink{max-width: 1100px; width: 92%;margin: 20px auto 0;font-size: 15px;line-height:25px;}
@media screen and (max-width: 600px) {
  #sec9 { padding: 0 0 12vw; }
  #sec9 h2 {height: 340px; font-size: 28px; letter-spacing: 14px; background: url(../../img/sec9_main_sp.jpg)no-repeat center; }
  #sec9 .txt_area+ul li { max-width: 100%; }
  .circle_link { position: static; width: 50px; height: 50px; margin-left: 10px; }
  #sec9 .menu { margin: 7vw 0 0; }
  #sec9 .menu .Pagelink { flex-direction: column; width: 92%; }
	#sec9 .menu .Pagelink::before { left: 50%; }
  #sec9 .menu .Pagelink li { width: 100%; }
  #sec9 .menu .Pagelink li+li { border: none; }
  #sec9 .menu .Pagelink li+li .lr_link { border-top: none; }
  #sec9 .menu .Pagelink .lr_link { padding: 10px; }
  #sec9 .menu .Pagelink .lr_link::after { right: 10px; background-size: 70%; }
  #sec9 .menu .Pagelink .lr_link img { width: 33%; }
  #sec9 .menu .Pagelink .lr_link span { font-size: 16px; }
  #sec9 .txt_area+ul .item1{order:1;}
  #sec9 .other_col { width: 92%; margin: 40px auto 0; padding: 30px 4% 25px; }
	#sec9 .other_col dd ul { column-count: 2; line-height: 1.5; display: block; height: auto; }
	#sec9 .other_col dd ul li { padding-bottom: 10px; }
	#sec9 .other_col dd ul li::before { margin-right: 0;}
}
@media screen and (max-width: 465px) {#sec9 .other_col dd ul li .br_cocktail{display:initial;}}
@media screen and (max-width: 415px) {#sec9 .other_col dd ul li .br_wine{display:initial;}}
@media screen and (max-width: 360px) {
  #sec9 .menu .Pagelink .lr_link::after {content: none;}
}

/* ---------------------------------------------------
  insta_col
------------------------------------------------------ */
#insta_col { margin: 0 auto 60px; position: relative; }
#insta_col .tit_col {
	display: -webkit-flex; display: -ms-flex; display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-align-items: center; align-items: center;
	justify-content: center; height: 100%;
	position: absolute; top: 0; left: calc(50% - 112px); z-index: 1;
}
#insta_col .tit_col a {
  margin: 15px auto 0;
  padding: 0px 29px;
  font-size: 22px;
  color: #000;
  background: #fff;
  transition: all .3s;
  border-radius: 18px; }
#insta_col .tit_col a:hover {
  text-decoration: none;
  color: #fff;
  background: #214d8d; }

#ticker,
#ticker ul { display: -webkit-flex; display: -ms-flex; display: flex;}
#ticker { width: 100%; overflow: hidden; position: relative; z-index: 0;}
#ticker ul {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	will-change: transform;
}
#ticker li { width: 25vw; min-width: 301px;}
#ticker li img { width: 100%; max-height: 362px; min-height: 362px; object-fit: cover; }

#ticker ul:first-child {
	-webkit-animation: loop 120s -60s linear infinite;
	animation: loop 120s -60s linear infinite;
}
#ticker ul+ul {
	-webkit-animation: loop2 120s linear infinite;
	animation: loop2 120s linear infinite;
}

@media screen and (max-width: 600px) {
	#insta_col { margin: 0 auto; }
	#insta_col .tit_col { width: 150px; top: 50%; left: 50%; transform: translate(-50%,-50%);}
	#insta_col .tit_col a { margin: 10px auto 0; padding: 0 18px; font-size: 16px; }
	#insta_col .tit_col > img { width: 100px;}
	#insta_col .tit_col p { margin: 5px 0 10px; font-size: 12px;}
	#insta_col .tit_col .btn { width: 100px; padding: 5px 10px; font-size: 12px;}
	#ticker li { width: 45vw; max-width: 150px; min-width: 0;}
	#ticker li img { max-height: 150px; min-height: 150px; }
}

/* ---------------------------------------------------
  map_col
------------------------------------------------------ */
#map_col { line-height: 0; }
#map_col iframe,
#map_col object,
#map_col embed {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
}

@media screen and (max-width: 600px) {
  #map_col iframe { height: 300px; }
}


/* ---------------------------------------------------
  bnr_col
------------------------------------------------------ */
#bnr_col { padding: 50px 3%; background: #1d263b; text-align: center; }
#bnr_col a { display: block; }
#bnr_col a + a { margin-top: 20px; }

@media screen and (max-width: 600px) {
	#bnr_col { padding: 30px 3%; }
	#bnr_col a + a { margin-top: 10px; }
}


/* ---------------------------------------------------

------------------------------------------------------ */

@media screen and (max-width: 600px) {
}
