@charset "utf-8";


/* CMS Template(CSS編集はCMS管理画面から)

/common/css/common.css

Update:  2024-11-11 PM 02:13

- ～ 520px：スマートフォン(縦)
- ～ 960px：タブレット
- ～ 1200px：PC(コンテンツ内 基本幅)
- ～ 1920px：PC
- 1921px ～：PC Wide
====================*/
/* ----------------------------------------------------
全端末共通
---------------------------------------------------- */
/* common reset ==== */
html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed,figure, figcaption, footer, header, hgroup,menu, nav, output, ruby, ection, summary,time, mark, audio, video { margin: 0; padding : 0; border: 0; font-style : normal; font-weight: normal;font-size: 100%; vertical-align: baseline; }
article, aside, details, figcaption, figure,footer, header, hgroup, menu, nav, section { display: block; }
html { overflow-y: scroll; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after,q:before, q:after { content: ''; content: none; }
input, textarea{ margin: 0; padding: 0; vertical-align: middle; }
ol, ul { list-style: none; }
table { border-collapse: collapse; border-spacing: 0; }
caption, th{ text-align: left; }
a:focus { outline: none; }
a { -webkit-tap-highlight-color: transparent; }
main { display: block; }
a,area,button,[role="button"],input:not([type="range"]),label,select,summary,textarea {-ms-touch-action: manipulation;touch-action: manipulation; }
svg { overflow: hidden; vertical-align: middle;}
img{ max-width: 100%; height: auto; vertical-align: bottom; image-rendering: -webkit-optimize-contrast;}
html, body { overflow-x: hidden;}
*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

/* common ==== */
html { -webkit-text-size-adjust: 100%; /* フォントサイズ自動調整OFF */ font-size: 62.5%;/* 10px */}
body{
	color: #333333;
	font-size: 16px; font-size: 1.6rem;
	position: relative;/* page top ボタン用 */
  font-family:"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic","Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	font-feature-settings: "palt";
  letter-spacing: 1px;
}
.mincho{font-family: "Times New Roman", "Hiragino Mincho ProN","YuMincho","Yu Mincho",serif;}
strong, .bold{font-weight:bold !important;}
/* web font ==== */
.nsfont,.CLASS h2{
  font-family:'Zen Maru Gothic' ,"メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}
.font-new .nsfont{ font-family: 'Noto Sans JP', sans-serif;font-weight: 300;}
.font-new .details h1,.font-new p,.font-new h2,.font-new h3,.font-new h4,.font-new dt,.font-new dd,.font-new a,.font-new li,.font-new span{
  font-family:'Noto Sans JP' ,"メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 300;
}
/* clearFix ==== */
.cf::after {display: block;clear: both;content: "";}
/* particular case ==== */
.fl { float: left;}.fr { float: right;}.cl { clear: both;}
.tc { text-align: center !important; }.tl { text-align: left !important; }.tr { text-align: right !important; }.vt { vertical-align : top !important; }
.mt-15 { margin-top: -15px !important; }.mt-30 { margin-top: -30px !important; }.mt0 { margin-top: 0px !important; }.mt5 { margin-top: 5px !important; }.mt10 { margin-top: 10px !important; }.mt15 { margin-top: 15px !important; }.mt20 { margin-top: 20px !important; }.mt30 { margin-top: 30px !important; }.mt40 { margin-top: 40px !important; }.mt50 { margin-top: 50px !important; }.mt80 { margin-top: 80px !important; }.mb0 { margin-bottom: 0 !important; }.mb5 { margin-bottom: 5px !important; }.mb10 { margin-bottom: 10px !important; }.mb15 { margin-bottom: 15px !important; }.mb20 { margin-bottom: 20px !important; }.mb30 { margin-bottom: 30px !important; }.mb40 { margin-bottom: 40px !important; }.mb50 { margin-bottom: 50px !important; }.mb80 { margin-bottom: 80px !important; }.mr0 { margin-right: 0 !important; }.mr10 { margin-right: 10px !important; }.mr20 { margin-right: 20px !important; }.mr30 { margin-right: 30px !important; }.mr40 { margin-right: 40px !important; }.mr50 { margin-right: 50px !important; }.ml0 { margin-left: 0 !important; }.ml10 { margin-left: 10px !important; }.ml20 { margin-left: 20px !important; }.ml30 { margin-left: 30px !important; }.ml40 { margin-left: 40px !important; }.ml50 { margin-left: 50px !important; }.pt0 { padding-top: 0 !important; }.pt15 { padding-top: 15px !important; }.pt30 { padding-top: 30px !important; }.pl0 { padding-left: 0 !important; }.pl15 { padding-left: 15px !important; }.pl30 { padding-left: 30px !important; }.pr0 { padding-right: 0 !important; }.pr15 { padding-right: 15px !important; }.pr30 { padding-right: 30px !important; }.pb0 { padding-bottom: 0 !important; }.pb15 { padding-bottom: 15px !important; }.pb30 { padding-bottom: 30px !important; }.pb50 { padding-bottom: 50px !important; }.pb80 { padding-bottom: 80px !important; }

/* Others */
.hide {display:none;}
sup { font-size: 70%; vertical-align: top; position: relative; top: -0.1em;}
sub { font-size: 70%; vertical-align: bottom; position: relative; bottom: -0.1em;}
/* ----------------------------------------------------
Media query All
---------------------------------------------------- */
/* common */

/* header */
.site-header a {text-decoration: none !important;}
/* nav */
/* .site-header nav > ul > li {position: relative;} */

.site-header nav a {color: #000000;}
.site-header nav li#gm1 {background: url("../img/mnv_lakeside.png") no-repeat center 10%;background-size: 80% auto;}
.site-header nav li#gm2 {background: url("../img/mnv_activity.png") no-repeat center 10%;background-size: 80% auto;}
.site-header nav li#gm-museum {background: url("../img/mnv_museum02.png") no-repeat center 8%;background-size: 80% auto;}
.site-header nav li#gm-food {background: url("../img/mnv_food.png") no-repeat center 12%;background-size: 70% auto;}
.site-header nav li#gm-shop {background: url("../img/mnv_shop02.png") no-repeat center 10%;background-size: 80% auto;}
.site-header nav li#gm-hotspring {background: url("../img/mnv_hot-spring.png") no-repeat center 10%;background-size: 80% auto;}
.site-header nav li#gm-hotel{background: url("../img/mnv_ikenotaira-hotel.png") no-repeat center 12%;background-size: 70% auto;}
.site-header nav li#gm-staymap {background: url("../img/mnv_map.png") no-repeat center 10%;background-size: 80% auto;}
.site-header nav li#gm-map {background: url("../img/mnv_map2.png") no-repeat center 10%;background-size: 80% auto;}
/* footer */
.site-footer {
  position: relative;
	text-align: center;
	padding: 50px 0 0 0;
}
.fallback .site-footer {
	background: linear-gradient(0deg, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 1) 100%), url("../img/bg_footer.jpg") no-repeat center bottom 60px;
}
.webp .site-footer {
	background: linear-gradient(0deg, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 1) 100%), url("../img/bg_footer.webp") no-repeat center bottom 60px;
}
.avif .site-footer {
	background: linear-gradient(0deg, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 1) 100%), url("../img/bg_footer.avif") no-repeat center bottom 60px;
}
.site-footer .menu-footer-local {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 0 70px 0;
}
.site-footer .menu-footer-local a {
	display: block;
	font-size: 1.4rem;
	padding: 1px 18px 1px 18px;
	color: #000000;
	text-decoration: none;
}
.site-footer .menu-footer-local li+li {border-left: 1px solid #e7e7e7;}
.site-footer .info-address {
	max-width: 1200px;
	margin: 0 auto 0;
	padding: 0 10px 200px;
	text-align: left;
}
.site-footer .info-address dl {display: flex;}
.site-footer .info-address dt {
	margin: 0 12px 0 0;
	padding: 2px 8px 2px 8px;
	background: #4fbec4;
	border-radius: 3px;
	color: #FFFFFF;
	font-size: 1.6rem;
}
.site-footer .info-address address p {margin-bottom: 10px;}
.site-footer .info-address dd {margin: 0 35px 0 0;color: #333333;}
.site-footer .menu-footer-global {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	background-color: #FFFFFF;
	margin: 0 auto 0;
	padding: 23px 0 23px 0;
}
.site-footer .menu-footer-global a,.copy {font-size: 1.2rem;color: #878787;text-decoration: none;}
.site-footer .menu-footer-global li+li {margin-left: 40px;}
#page_top {
	width: 48px;
	height: 48px;
	position: fixed;
	right: 10px;
	bottom: 10px;
	opacity: .3;
	background: #000000;
}
#page_top a {
	position: relative;
	display: block;
	width: 48px;
	height: 48px;
	text-decoration: none;
}
#page_top a::before {
	content: '';
	width: 14px;
	height: 14px;
	border: 0px;
	border-top: solid 2px #FFFFFF;
	border-right: solid 2px #FFFFFF;
	transform: rotate(-45deg);
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	margin: -4px auto 0 auto;
	text-align: center;
}
/* slider */
.slider,.slide { opacity: 0; transition: opacity .3s linear;}
.slider.slick-initialized,.slide.slick-initialized { opacity: 1;}

#mainvis-slide{
	max-width: 1800px;
	position: relative;
	margin: 0 auto 60px auto;
}
#mainvis-slide h1 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  font-size: 3.0rem;
  font-family: "Times New Roman", "Hiragino Mincho ProN", "YuMincho", "Yu Mincho", serif;
  color: #189fdd;
  text-shadow: 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF;
	z-index: 10;
}
.font-new #mainvis-slide h1{
  font-family:'Noto Sans JP' ,"メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 300;
  font-size: 3.6rem;
}
/* mainvis */
#mainvis-normal {
  position: relative;
  margin: 0 0 60px 0;
  text-align: center;
}
#mainvis-normal img {
  width: 100%;
  height: 460px;
  object-fit: cover;
}
#mainvis-normal h1 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  font-size: 3.0rem;
  font-family: "Times New Roman", "Hiragino Mincho ProN", "YuMincho", "Yu Mincho", serif;
  color: #189fdd;
  text-shadow: 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF, 0 0 10px #FFFFFF;
}
.font-new #mainvis-normal h1{
  font-family:'Noto Sans JP' ,"メイリオ", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 3.6rem;
  font-weight: 300;
  text-shadow:none;
  color: #FFFFFF;
}
/* AIチャットbot */
#web_plugin_chat_box #web_plugin_auto_speak .cu-ui-util-speak-balloon {margin: 0 0 32px 0 !important;}
#web_plugin_auto_speak p {font-size: 10px !important;}
/* 検索 */
.gsc-control-cse{
  font-size: 1.3rem !important;
}
.gsc-control-cse{
  background: none !important;
  border: none !important;
  padding: 0 !important;
}
.gsc-input-box{
  background: none !important;
  border: none !important;
}
#search-wrap{
  padding: 6px 10px 0 0;
  position: relative;
}
#search-wrap input{
-webkit-appearance:none;
  width: 24px !important;
  height: 24px !important;
  padding: 2px 6px !important;
  border: none !important;
  background:url("/common/img/icon_search2.svg") no-repeat 6px center !important;
  background-size: 16px 16px !important;
  transition: all 0.5s;
  outline: none;
  cursor: pointer;
}
#search-wrap input:focus {
  width: 120px !important;
  padding: 2px 0 2px 20px !important;
  background:#fff !important;
  background-size: 16px 16px;
}
.info-area #search-wrap a{
  padding: 0 !important;
}
.gsc-search-button{
  display: none;
}
/* グループ */
.shirakaba-info{
  width: 96%;
  max-width: 950px;
  margin: 0 auto 180px;
  padding: 25px 50px 50px;
  background-color:rgba(255,255,255,0.65);
  border-radius: 10px;
  text-align: center;
}
.shirakaba-info .rogo-shirakaba{
  margin-bottom: 15px;
}
.shirakaba-info .txt-shirakaba{
  margin-bottom: 30px;
}
.shirakaba-info dt {
  max-width:1200px;
  display: flex;
  align-items: center;
  margin:0 auto 30px auto;
}
.shirakaba-info dt:before,
.shirakaba-info dt:after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #e5e5e5;
}
.shirakaba-info dt::before {
  margin-right: 1rem;
}
.shirakaba-info dt::after {
  margin-left: 1rem;
}
.shirakaba-info dd{
  display: inline-block;
  margin: 0 50px 0 0;
}
.shirakaba-info dd a{
  background: url("/common/img/icon_blank2.svg") no-repeat right center;
  background-size: 13px 11px;
  text-decoration: none;
  padding-right: 20px;
  color: #000000;
}

/* All END */

/* ----------------------------------------------------
- 520px (Smartphone layout Only)
---------------------------------------------------- */
@media (max-width: 520px) {




/* - 520px (Smartphone layout Only) END */
}

/* ----------------------------------------------------
- 960px (Smartphone Tablet layout Only)
---------------------------------------------------- */
@media (max-width: 960px) {
	.pc-only {
		display: none;
	}
  .font-new #mainvis-slide h1{
    font-size: 2.8rem;
  }
  .font-new #mainvis-normal h1{
    font-size: 2.8rem;
  }
	.btn-hotel-reservation{display: none;}
	.site-header .inr {
		position: relative;
		margin: 0 auto 16px;
		padding: 20px 0 0;
	}
	.site-header .site-logo {
		z-index: 99999;
		width: 40%;
		max-width: 250px;
		position: relative;
	}
	.clone-nav{
		display: none !important;
	}
	/* sp用ハンバーガーナビ */
	.site-header {
		position: relative;
		height: 80px;
	}
	.nav-main {
		position: fixed;
		z-index: -1;
		opacity: 0;
		top: 0;
		width: 100%;
		height: 100vh;
		background: #FFFFFF;
		transition: all 0.3s;
	}
	.nav-main.panelactive {
		opacity: 1;
		z-index: 17000000;/*chat botより前面へ*/
	}
	.nav-main.panelactive .nav-main-list {
		position: fixed;		
		width: 100%;
		height: 100vh;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}	
	.openbtn1 {
		position: fixed;
		background: #1395bf;
		cursor: pointer;
		width: 50px;
		height: 50px;
		border-radius: 5px;
		z-index: 17000010;
		top: 10px;
		right: 10px;
		caret-color: transparent;
	}
	.openbtn1 span {
		display: inline-block;
		transition: all .4s;
		position: absolute;
		left: 14px;
		height: 2px;
		border-radius: 5px;
		background: #fff;
		width: 45%;
	}
	.openbtn1 span:nth-of-type(1) {	top: 13px;}
	.openbtn1 span:nth-of-type(2) {	top: 19px;}
	.openbtn1 span:nth-of-type(3) {	top: 25px;}
	.openbtn1 span:nth-of-type(3)::after {content: "Menu";position: absolute;	top: 5px;	left: -3px;	color: #fff;	font-size: 0.6rem;	text-transform: uppercase;}
	.openbtn1.active span:nth-of-type(1) {top: 14px;	left: 18px;	transform: translateY(6px) rotate(-45deg);	width: 30%;}
	.openbtn1.active span:nth-of-type(2) {	opacity: 0;}
	.openbtn1.active span:nth-of-type(3) {top: 26px;left: 18px;transform: translateY(-6px) rotate(45deg);width: 30%;}
	.openbtn1.active span:nth-of-type(3)::after {	content: "Close";	transform: translateY(0) rotate(-45deg);top: 7px;	left: 1px;}
	/* nav */
	.nav-main-list {padding: 30px 1px 0;}
	.logo-resort,.logo-hotel{
		width: 45%;
		margin: 0 auto 12px;
	}
	.nav-main #gm-hotel{
		display: none;
	}
	.site-header nav > ul {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		background: #FFFFFF;
		border-bottom: 1px solid #e7e7e7;
		margin-bottom: 30px;
	}
	.site-header nav > ul > li {
		width: 50%;
		height: 75px;
		overflow: hidden;
		position: relative;
		border-top: 1px solid #e7e7e7;
		align-self:center;
	}
	.site-header nav li.active a {
		color: #1395bf;
	}
	.site-header li#gm-museum,.site-header li#gm-shop,.site-header li#gm-map {
		border-left: 1px solid #e7e7e7;
	}
	.site-header #nav-info{
		display: none;
	}
.site-header nav li#gm1 {background: url("../img/mnv_lakeside.png") no-repeat left center;background-size: 80px 45px;order: 1;}
.site-header nav li#gm-museum {background: url("../img/mnv_museum02.png") no-repeat left center;background-size: 80px 45px;order: 2;}
.site-header nav li#gm2 {background: url("../img/mnv_activity.png") no-repeat left center;background-size: 80px 45px;order: 3;}
.site-header nav li#gm2-sub {order: 4;}
.site-header nav li#gm-food {background: url("../img/mnv_food.png") no-repeat left center;background-size: 80px 45px;order: 5;}
.site-header nav li#gm-shop {background: url("../img/mnv_shop02.png") no-repeat left center;background-size: 80px 45px;order: 6;}
.site-header nav li#gm-hotspring {background: url("../img/mnv_hot-spring.png") no-repeat left center;background-size: 80px 45px;order: 7;}
.site-header nav li#gm-staymap {background: url("../img/mnv_map.png") no-repeat left center;background-size: 80px 45px;order:8;}
.site-header nav li#gm-map {background: url("../img/mnv_area-map.png") no-repeat left center;background-size: 80px 45px;order: 9;}

	.site-header .nav-set a {
		display: block;
		height: 100%;
		padding: 28px 0 30px 90px;
		overflow: hidden;
		position: relative;
		font-size:clamp(13px, 1.867vw, 14px);
		text-align: left;
		z-index: 10;
	}
	.site-header nav > ul > li#gm1 a{
		padding: 15px 0 30px 90px;
	}
  .site-header nav li#gm2-sub a{
		padding: 12px 0 12px 30px;
		position: relative;
		font-size:clamp(13px, 1.867vw, 14px);
	}
	.site-header nav li#gm2-sub{
		padding: 10px 0 0 15px;
	}
	.site-header nav li#gm2-sub a::after{
		content: '';
		width: 6px;
		height: 6px;
		border: 0px;
		border-top: solid 2px #b1b1b1;
		border-right: solid 2px #b1b1b1;
		transform: rotate(45deg);
		position: absolute;
		top: 50%;
		left: 0;
		margin-top: -4px;
	}
	.nav-main-list .home a {
		display: block;
		max-width: 120px;
		margin: 0 auto 8px 0px;
		padding: 12px 0 12px 20px !important;
		color: #000000;
		text-decoration: none;
		position: relative;
		text-align: left;
	}
	.nav-main-list .home a::before {
		content: "";
		display: inline-block;
		margin: 0 8px 0 0;
		background: url("/common/img/icon_home02.svg") no-repeat;
		width: 22px;
		height: 22px;
		background-size: 22px 22px;
		position: relative;
		top: 4px;
	}
	#hotel-nav{
		margin: 40px auto 0;
	}
	.logo-hotel + p{
		margin: 0 auto 10px;
		font-size: 1.6rem;
		text-align: center;
	}
	.nav-main-list #hotel-nav .home a {
		max-width: 250px;
	}
	.gm-hotel-set{
		width: calc(250 / 750 * 100%) !important;
	}
	.site-header #hotel-nav nav > ul > li > a {
		padding: 28px 0 30px 15px;
		text-align: left;
		z-index: 10;
		display: block;
	}
	#hotel-nav .nav-sub-room a{
		font-size: 1.2rem;
	}
	.site-header li#gm-hotel-hotspring,.site-header li#gm-hotel-shop {
		border-left: 1px solid #e7e7e7;
	}
	#gm-hotel-room{	width: 100%;}
	#gm-hotel-room ul{
		display: flex;
		justify-content: space-between;
	}
	#gm-hotel-room a{
		display: block;
		position: relative;
		font-size:clamp(13px, 1.867vw, 14px);
		padding: 25px 20px 25px 15px;
	}
	.nav-sub-room a::before {
		content: '';
		width: 6px;
		height: 6px;
		border: 0px;
		border-top: solid 2px #b1b1b1;
		border-right: solid 2px #b1b1b1;
		transform: rotate(45deg);
		position: absolute;
		top: 50%;
		left: 0;
		margin-top: -4px;
	}
	#gm-hotel-room .nav-sub-room{
		font-size: 1.1rem;
	}
	.nav-main-list .menu-sub {
		display: flex;
		flex-wrap: wrap;
	}
	.nav-main-list .menu-sub.txt {
		margin: 0 10px 10px 10px;
		font-size:clamp(13px, 1.867vw, 14px);
	}
	.nav-main-list .menu-sub.txt li {
		width: 48%;
		margin: 0 0 10px 0;
		padding: 0 0 0 15px;
		position: relative;
	}
	.nav-main-list .menu-sub.txt li a{
		padding: 14px 0 14px 0;
		position: relative;
		color: #000;
	}
	.nav-main-list .menu-sub.txt li::before {
		content: '';
		width: 6px;
		height: 6px;
		border: 0px;
		border-top: solid 2px #b1b1b1;
		border-right: solid 2px #b1b1b1;
		transform: rotate(45deg);
		position: absolute;
		top: 50%;
		left: 0;
		margin-top: -4px;
	}
	.nav-main-list .menu-sub.stay,.nav-main-list .menu-sub.others,.nav-main-list .menu-sub.access {
		font-size:clamp(13px, 1.867vw, 14px);
		margin: 0 10px 25px;
	}
	.nav-main-list .menu-sub.stay li,.nav-main-list .menu-sub.others li {
		width: 48%;
	}
	.nav-main-list .menu-sub.access li{
		width: 100%;
	}
	.nav-main-list .menu-sub.stay li a::before,.nav-main-list .menu-sub.others li a::before,.nav-main-list .menu-sub.access li a::before {
		content: '';
		width: 6px;
		height: 6px;
		border: 0px;
		border-top: solid 2px #FFFFFF;
		border-right: solid 2px #FFFFFF;
		transform: rotate(45deg);
		position: absolute;
		top: 50%;
		right: 10px;
		margin-top: -4px;
	}
	.nav-main-list .menu-sub.txt li:nth-child(odd),.nav-main-list .menu-sub.stay li:nth-child(odd),.nav-main-list .menu-sub.contact li:nth-child(odd),.nav-main-list .menu-sub.others li:nth-child(odd) {	margin-right: 4%;	}
	.menu-sub.stay a{
		position: relative;
		display: block;
		background-color: #1d7277;
		margin-bottom: 15px;
		padding: 25px 0 25px 20px;
		color: #FFFFFF;
		border-radius: 6px;
	}
	.menu-sub.others a{
		position: relative;
		display: block;
		background-color: #e3e3e3;
		padding: 25px 0 25px 20px;
		color: #000000;
		border-radius: 6px;
	}
	.menu-sub.access a{
		position: relative;
		display: block;
		background-color: #eaeadc;
		padding: 25px 0 25px 20px;
		color: #000000;
		border-radius: 6px;
	}

	/* nav rocal*/
	#nav-sub {
		background-color: #FFFFFF;
		margin: 0;
		padding: 0;
	}
	#nav-sub a {
		color: #000000 !important;
		font-size: 1.1rem;
		text-decoration: none !important;
	}
  #nav-sub li.active a{ background: #f9f3f0;}
	#nav-sub {
		border-top: 1px solid #e9e9e9;
		border-bottom: 1px solid #e9e9e9;
		border-left: 1px solid #e9e9e9;
	}
	#nav-sub ul {
		display: flex;
		flex-wrap: wrap;
		max-width: 1200px;
		margin: 0 auto 0 auto;
		border-left: 1px solid #e9e9e9;
	}
	#nav-sub li {
		width: calc(100% / 3);
		text-align: center;
		border-right: 1px solid #e9e9e9;
		border-bottom: 1px solid #e9e9e9;
		margin-bottom: -1px;
	}
	#nav-sub li figure {
		display: none;
	}
	#nav-sub li > a {
		padding: 0 0 0 0;
		height: 54px;
		color: #000000;
		text-decoration: none;
		vertical-align: middle;
		display: flex;
		justify-content: center;
		align-items: center;
		line-height: 1.5;
		transition: all .3s;
	}
	#nav-sub li a.active {
		background: #f9f3f0;
	}
  #nav-sub li img{
    border-radius: 4px;
  }
 /* mainvis */
  #mainvis-normal {
    margin: 0 0 35px 0;
  }
  
	/* footer */
  .site-footer {
    padding: 80px 0 0 0;
}
	.site-footer .menu-footer-local {
		display: none;
	}
	.menu-footer-global li:not(:last-child) {
		display: none;
	}
	.site-footer .info-address {
		padding: 0 10px 200px 10px;
		text-align: left;
		position: relative;  
	}
	.site-footer .info-address::before {
		position: absolute;
		content: "";
		top: -60px;
		left: 10px;
		margin: 0px 0 0 0;
		background: url("/common/img/logo_shirakaba-resort.svg") no-repeat;
		width: 230px;
		height: 32px;
		background-size: 230px 32px;
	}
	.site-footer .info-address dl{
    flex-wrap: wrap;
  }
	.site-footer .info-address dt {
    width: 35%;
		margin: 0 12px 12px 0;
		padding: 2px 8px 2px 8px;
		background: #4fbec4;
		border-radius: 3px;
		color: #FFFFFF;
		font-size: 1.3rem;
    text-align: center;
	}
	.site-footer .info-address address p {
		margin-bottom: 10px;
		font-size: 1.3rem;
	}
	.site-footer .info-address dd {
    width: 60%;
		margin: 0 0 12px 0;
		font-size: 1.3rem;
	}
  .shirakaba-info{
    width: 98%;
    margin: 0 auto 50px;
    padding: 10px 10px 15px;
  }
  .shirakaba-info .rogo-shirakaba{
    margin-bottom: 15px;
  }
  .shirakaba-info .txt-shirakaba{
    margin-bottom: 30px;
    text-align: left;
  }
  .shirakaba-info dd{
    display: block;
    margin: 0 0 8px 0;
    text-align: left;
  }

  a[href^="tel:"] {	pointer-events: auto;}
/* - 960px (Smartphone Tablet layout Only) END*/
}

/* ----------------------------------------------------
961px- (Pc layout Only)
---------------------------------------------------- */
@media (min-width: 961px) {
	.sp-only {display: none;}

	/* header */
	
	.site-header  p,.site-header  a,.site-header  span{
		font-family: 'Noto Sans JP', sans-serif;font-weight: 300 !important;
		text-decoration: none;
		color: #000000;
	}
	.site-header .inr {
		position: relative;
		max-width: 1400px;
		margin: 0 auto 16px;
		padding: 55px 0 0;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.site-header nav ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.site-header .site-logo {	width: 20%;padding-top: 20px;}
	.nav-main {	width: 72%;}
	.site-header #nav-info {position: absolute;	top: 0;	right: 0;}
	.site-header nav > ul > li {	width: calc(100% / 7);text-align: center;}
	.site-header li {	font-size: 1.3rem;}
	/* nav sub */
	.site-header nav > ul > li{
		/* position: relative; */
	}
  .site-header nav li.active .nav-set::before {
    position: absolute;content: "";top: 0;left: 0;	right: 0;	bottom: 0;margin: 0 0 0 0;width: 100%;height: 100%;
    border-radius: 7px;
    background-color: #FFFFFF;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    /* background-size: 20px 14px; */
    z-index: -2;
  }
  .site-header nav li.active .nav-set::after {
    position: absolute;	content: "";top: 0;left: -10%;right: -10%;bottom: -10%;	margin: 0 0 0 0;width: 120%;height: 110%;
    background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    z-index: -1;
  }
	#nav-info {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	#nav-info ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.info-area {
		background-color: #ededed;
		border-radius: 0 0 4px 4px;
		padding: 0 0 0 0;
	}
	.info-area a {
		color: #000000 !important;
		padding: 11px 15px 11px 15px;
		display: block;
	}
	.reserve-area {
		background-color: #1d7277;
		border-radius: 0 0 4px 4px;
		margin-left: 6px;
		padding: 4px 6px 4px 6px;
	}
	.reserve-area a {
		display: block;
		background-color: #1d7277;
		border-radius: 2px;
		color: #FFFFFF !important;
		padding: 9px 10px;
	}
	.reserve-area span {
		display: block;
		color: #FFFFFF !important;
		padding: 9px 10px;
	}
	.reserve-area li+li {	margin-left: 6px;}
  .site-header .nav-set{
    position: relative;
  }
	.site-header .nav-set a {
		display: block;
		padding: 70px 0 0 0;
		position: relative;
	}
  .sub-navi-pc{
    z-index: 999999;
  }
	.sub-navi-pc li{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: 100%;
    max-width: 622px;
    margin: 0 auto 0;
		text-align: left;
	}
  nav > ul > li:hover .sub-navi-pc {
    max-height: 9999px;
    opacity: 1;
		padding: 30px 0 25px;
  }
	#gm2 > a:hover{
		position: relative;
	}
	#gm2:hover .nav-set a::before {
		content: '';
		position: absolute;
		bottom: -16px;
		width:0;
		height:0;
		border-style:solid;
		border-width: 0 10px 12px 10px;
		border-color: transparent transparent #F5F2E9 transparent;
		left: 50%;
		transform: translateX(-50%) translateY(0%);
	}
  .sub-navi-pc:hover li > div {
    transition: all .2s ease-in;
  }
	nav > ul  > li .sub-navi-pc .sub-navi-top{
		width: 100%;
		margin-bottom: 20px;
	}
	nav > ul  > li .sub-navi-pc .sub-navi-top a{
		display: block;
		background-color: #FFFFFF;
		padding: 8px 0 8px;
		text-align: center;
		border-radius: 6px;
	}
  nav > ul  > li .sub-navi-pc {		
    transition: all .2s ease-in;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    width: 100vw;
    left: 0;
		margin: 16px 0 0;
		margin-left: calc(((100vw - 100%) / 2) * -1);
		margin-right: calc(((100vw - 100%) / 2) * -1);
		position: absolute;
		background: url("/common/img/bg_navi.png") no-repeat right 3% bottom 3% #f5f2e9;
  }
	.sub-navi-pc div:not(.sub-navi-top){
		width: 48.2%;
	}
	.sub-navi-pc div img{
		border-radius: 6px;
	}
	.sub-navi-pc div p{
		margin: 10px 0 0 8px;
	}
	/* nav rocal*/
	#nav-sub {background-color: #edfbe6;padding: 13px 8px 12px 8px;}
	#nav-sub ul {
		width:100%;
		max-width: 1400px;
		margin: 0 auto 0;
		display: flex;
		justify-content: center;
	}
	#nav-sub li{
		width: calc(160 / 1200 * 100%);
	}
	#nav-sub a {
		color: #000000 !important;
		font-size: clamp(11px, 1.083vw, 13px);
		text-decoration: none !important;
	}
	/* #nav-sub li+li {margin-left: 25px;} */
	#nav-sub figure {	margin-bottom: 8px;}
	/* .js-scroll {
		white-space: nowrap;
		overflow: auto;
		scrollbar-width: none;
	}
	.js-scroll::-webkit-scrollbar {	display: none;}
	.js-scroll > li {
    display: inline-block;
    white-space: normal;
    vertical-align: top;
  } */
	#nav-sub li.active,#nav-sub li div.active img {opacity: .5;}
  #nav-sub li img{
    border-radius: 4px;
  }

	/* nav スクロール・固定 */
	.clone-nav {
		max-width: none;
		width: 100%;
		position: fixed;
		top: 0;left: 0;right: 0;
		padding: 15px 8px 8px 8px;
		z-index: 1000;
		transition: .3s;
		transform: translateY(-100%);
		background: rgba(255, 255, 255, 1);
		box-shadow: 0 4px 8px -3px rgba(17, 17, 17, .06);
	}
	.is-show {transform: translateY(0);}
  .clone-nav.is-show .sub-navi-pc{
    display: none !important;
  }
	.clone-nav .site-header .inr {
		margin: 0 auto 0;
		padding: 6px 0 0;
		flex-wrap: nowrap;
	}
	.clone-nav #nav-sub {	background-color: #FFFFFF;	padding: 6px 0 6px 0; border-top: none;}
	.clone-nav #nav-sub ul {padding-top: 12px;}
	.clone-nav .nav-main ul {	max-width: 1400px;margin: 0 auto 0 auto;flex-wrap: nowrap;}
	.clone-nav .nav-main li a {	padding: 0px 0 0 0;	font-size: 1.2rem;}
	.clone-nav .nav-icon li {background: none;}
	.clone-nav .sub-area {display: none;}
	.clone-nav #nav-info {display: none;}
	.clone-nav .site-logo {	max-width: 150px;padding-top: 0;}
	.clone-nav #nav-sub figure {display: none;}
	.clone-nav .site-header{border-bottom: 1px dotted #e6e6e6;padding-bottom: 12px;}
	.clone-nav .site-header nav > ul > li {text-align: left;	padding: 5px 0 5px 60px;}
	.clone-nav .site-header nav li#gm1 {	background: url("../img/mnv_lakeside.png") no-repeat left center;	background-size: 50px 28px;}
	.clone-nav .site-header nav li#gm2 {	background: url("../img/mnv_activity.png") no-repeat left center;	background-size: 50px 28px;}
  .clone-nav .site-header nav li#gm-museum {	background: url("../img/mnv_museum02.png") no-repeat left center;	background-size: 50px 28px;}
	.clone-nav .site-header nav li#gm-food {	background: url("../img/mnv_food.png") no-repeat left center;	background-size: 50px 28px;}
	.clone-nav .site-header nav li#gm-shop {	background: url("../img/mnv_shop02.png") no-repeat left center;	background-size: 50px 28px;}
	.clone-nav .site-header nav li#gm-hotspring {	background: url("../img/mnv_hot-spring.png") no-repeat left center;	background-size: 50px 28px;}
	.clone-nav .site-header nav li#gm-hotel {	background: url("../img/mnv_ikenotaira-hotel.png") no-repeat left center;	background-size: 50px 28px;}
	/* .clone-nav .site-header nav li#gm-staymap {	background: url("../img/mnv_map.png") no-repeat left center;background-size: 50px 28px;}
	.clone-nav .site-header nav li#gm-map {	background: url("../img/mnv_map2.png") no-repeat left center;	background-size: 50px 28px;} */

	.clone-nav .site-header nav li.active::before {display: none;}
	.clone-nav .site-header nav li.active::after {display: none;}
	.clone-nav .site-header nav li a {display: flex;align-items: center;}
	.clone-nav .site-header .site-logo {width: 8%;}
	.clone-nav .nav-main {width: 90%;}
	.clone-nav .site-header nav li {width: auto;}

  a[href^="tel:"] {	pointer-events: none;}

/* 961px - END*/
}

/* ----------------------------------------------------
- 1200px (Pc layout Only コンテンツ内 基本幅)
---------------------------------------------------- */
@media (max-width: 1200px) {


	/* - 1200px (Pc layout Only) END*/
}

/* ----------------------------------------------------
961px- 1250px (Pc layout Only)
---------------------------------------------------- */

@media (min-width: 961px) and (max-width: 1250px) {
	.site-header .site-logo {width: 15%;}
	.nav-main {width: 83%;}

}

/* ----------------------------------------------------
- 1920px (Pc layout Only)
---------------------------------------------------- */
@media (max-width: 1920px) {


/* - 1920px - END*/
}

/* ----------------------------------------------------
1921px- (Pc layout Only Wide)
---------------------------------------------------- */
@media (min-width: 1921px) {

  .fallback .site-footer { background: linear-gradient(0deg, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 1) 100%), url("../img/bg_footer.jpg") no-repeat center bottom 60px; background-size: 100% auto;}
  .webp .site-footer { background: linear-gradient(0deg, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 1) 100%), url("../img/bg_footer.webp") no-repeat center bottom 60px; background-size: 100% auto;}
  .avif .site-footer { background: linear-gradient(0deg, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 1) 100%), url("../img/bg_footer.avif") no-repeat center bottom 60px; background-size: 100% auto;}

	/* 1921px - END*/
}