@charset "utf-8";

/* winter
-------------------------------------------------*/

#winter h1{
	width:940px;
	margin:0 auto;
}
.mainimg{
	position:relative;
	width:100%;
	max-width:940px;
}
#bn_mov{
	position:absolute;
	left:49.6%;
	top:28%;
	width:52%;
	max-width:453px;
	height:auto;
}
#bn_mov img{
	display:block;
	width:100%;
	max-width:501px;
	height:auto;
}
@media screen and (max-width: 959px){
	#winter h1{
		width:100%;
	}
}


.sec_ttl{
	text-align:center;
	margin:0 auto 0;
}
	.sec_ttl img{
		width:95%;
		max-width:503px;
		height:auto;
	}

.allergen{
	text-align:right;
	font-size:.8rem;
	line-height:1.2;
	margin:0 1rem 1rem;
}
.allergen img{
	vertical-align:middle;
	margin:0 2px;
}

.fs_small{
	font-size:.8rem;
	font-size:calc(55% + .7vh);
}

.f_item{
	position:relative;
	float:left;
	width:46%;
	margin:0 2% 1.5rem;
}
	.f_item > img{
		width:100%;
		box-shadow: 1px 1px 8px rgba(0,0,0,0.2);
		margin:0 0 10px;
	}
	.f_item .eve_fin{
		position:absolute;
		display:block;
		left:10px;
		top:10px;
		padding:1rem;
		color:#fff;
		font-size:1.1rem;
		font-weight:bold;
		background:rgba(255,51,0,.7);
		border-radius:6px;
	}
	.f_item h3{
		color:#444 !important;
		font-size:1.1rem;
		font-weight:bold;
		line-height:1.3;
		margin-bottom:.7rem;
	}
	.f_item h3 span{
		color:rgb(192,63,63) !important;
	}
	.f_item .img{
		margin-bottom:1rem;
	}
	.f_item .img img{
		max-width:400px;
	}
	.f_item p{
		font-size:.9rem;
		line-height:1.6;
	}
	.f_item footer{
		display:inline-block;
		min-width:10em;
		padding:.8vh 1.5vh 1vh;
		font-size:.9rem;
		line-height:1.2;
		background:#eec224;
		border-radius:3px;
	}
	
	
.data{
	color:rgb(192,63,63);
	font-size: .85rem;
	line-height:1.4;
}


.hr1{
	float:left;
	width:100%;
	height:1px;
}


.btn_set{
	clear:both;
	margin:2rem auto 0;
	text-align:center;
}
	.btn_set p{
		font-size:.875rem;
		font-weight:bold;
		margin:0 0 .5em;
	}
	.btn_set a{
		position:relative;
		display:inline-block;
		min-width:50%;
		padding:.5em 1em;
		color:#fb6e34;
		font-weight:bold;
		background:#fff;
		border:3px solid #fb6e34;
		border-radius:5px;
		box-shadow:0 0 5px rgba(0,0,0,.2);
	}


#info{
	position:relative;
	margin:0 auto 3rem;
}
	#info h2{
		padding:8px 10px;
		text-align:center;
		color:#fff;
		font-size:1.4rem;
		font-weight:bold;
		background:rgb(44,150,255);
		border-radius:5px;
		margin:0 0 2rem;
	}
	#ttl_winter{
		text-align:center;
		width:90%;
		max-width:680px;
		margin:0 auto 1.5rem !important;
	}
	
	#winter_term{
		text-align:center;
		color:rgb(44,150,255);
		font-size:1.7rem;
		font-weight:bold;
		line-height:1.1;
		margin:0 auto 1.5rem;
	}
	#winter_term span{
		font-size:1.1rem;
		line-height:1.3;
	}
	#winter_term small{
		margin:0.5rem 0 0;
		display:block;
		color:rgb(192,63,63);
		font-size:.9rem;
		line-height:1.3;
	}
@media screen and (max-width: 600px){
	#winter_term{
		text-align:left;
	}
}

	#winter_open{
		border-top:2px solid rgb(44,150,255);
		margin:0 auto 3rem;
	}
	#winter_open th,
	#winter_open td{
		width:25%;
		padding:1rem .5rem .7rem;
		vertical-align:middle;
		border-bottom:2px solid rgb(44,150,255);
	}
	#winter_open td{
		padding:1rem 0;
		width:75%;
	}
@media screen and (max-width: 850px){
	#winter_open{
		display:block;
	}
	#winter_open th,
	#winter_open td{
		display:block;
		width:100%;
		padding:1rem .5rem .7rem;
	}
}

	#info #table_fct{
		width:100%;
		border-collapse: separate;
		border-spacing: 0;
		border-bottom:2px solid rgb(44,150,255);
	}
	#info #table_fct th,
	#info #table_fct td{
		padding:.7rem .7rem;
		vertical-align:middle;
		text-align:left;
		border-top:2px solid rgb(44,150,255);
	}
	#info #table_fct th{
		white-space:nowrap;
		font-weight:bold;
		background:rgba(44,150,255,.15);
	}
	#bokkasoft{
		position:relative;
		margin: 10px 0;
	}



#snow_attraction .wrap,
#animal .wrap,
#taiken .wrap,
#gourmet .wrap,
#spa .wrap{
	position:relative;
	width:100%;
	padding:0 0 2rem
}


#snow_attraction{
	position:relative;
	padding:20px 20px 0;
	background:#d9edff;
	border-radius:13px;
	margin:0 auto 3rem;
}
	#snow_attraction h2 img{
		width:100%;
		max-width:503px;
		height:auto;
	}
	#snow_attraction #noski{
		width:100%;
		max-width:371px;
		margin:0 auto 1.3rem;
	}
@media screen and (max-width: 450px){
	#snow_attraction{
		padding:10px 10px 0;
	}
}

#wear{
	clear:both;
	text-align:center;
}
	#wear img{
		padding:2rem 0 0;
		width:100%;
		max-width:683px;
		height:auto;
		margin:0 auto;
	}

#animal{
	position:relative;
	padding:5px 10px 0 20px;
	background:#fff7c3;
	border-radius:13px;
	margin:0 auto 3rem;
}
	#animal h2 img{
		width:100%;
		max-width:752px;
		height:auto;
	}
	#animal .f_item{
		width:29%;
	}

#taiken{
	position:relative;
	padding:20px 10px 0 20px;
	background:#f5e5ec;
	border-radius:13px;
	margin:0 auto 3rem;
}
	#taiken h2 img{
		width:70%;
		max-width:312px;
		height:auto;
	}
	#taiken .f_item{
		width:45.5%;
	}

@media screen and (max-width: 500px){
	#animal,#taiken{
		padding:5px 10px 0 10px;
	}
	#animal .f_item,
	#taiken .f_item{
		width:95%;
	}
}

#gourmet{
	position:relative;
	padding:15px 10px 0 20px;
	background:#fcd8ba;
	border-radius:13px;
	margin:0 auto 3rem;
}
	#gourmet h2 img{
		width:100%;
		max-width:550px;
		height:auto;
	}
	.gourmet_menu{
		display:flex;
		justify-content:space-between;
		align-items:top;
		width:98%;
		margin:auto;
	}
	.gourmet_menu li{
		display:inline-block;
		width:49%;
		white-space:wrap;
		font-size: .9rem;
		font-weight: bold;
		line-height: 1.4;
		padding:.6rem 1rem .6rem 0;
		border-bottom:1px solid rgba(0,0,0,.3);
	}
	.gourmet_menu li.double{
		width:98%;
	}
	.gourmet_menu li small{
		font-size: .8rem;
	}
	.gourmet_menu li span{
		display:inline-block;
		color: rgb(192,63,63);
		font-size: .9rem;
	}

#takasu_yukimatsuri{
	position:relative;
	padding:20px 20px;
	text-align:center;
	background:#3399ff;
	border-radius:13px;
	margin:0 auto 3rem;
}
	.ty_date{
		width:100%;
		text-align:center;
		color:#ffff33;
		font-weight:bold;
		line-height:1.4;
		margin:0 0 1rem;
	}
	.ty_eve{
		width:70%;
		margin:0 auto;
	}
	.ty_eve li{
		display:inline-block;
		padding:0 1em 0 0;
		color:#fff;
		font-weight:bold;
		line-height:1.3;
	}
	#takasu_yukimatsuri .btn_set{
		margin:0 auto 1rem;
	}

#spa{
	position:relative;
	padding:2em 20px 2em;
	background:#ab1649;
	border-radius:13px;
	margin:0 auto 3rem;
}
	.img_spa{
		float:left;
		width:48%;
		text-align:center;
		margin:0 0 30px;
	}
	.spa_info{
		float:left;
		width:52%;
		padding:0 1.5em 0 3em;
		margin:0 0 30px;
	}
	.spa_info h3{
		color:#ffff33;
		font-size:1.8rem;
		font-weight:bold;
		line-height:1.3;
		margin:0 0 1rem;
	}
	.spa_info .spa_open{
		color:#fff;
		font-weight:bold;
		margin:0 0 1rem;
	}
	.spa_info .spa_note{
		color:#fff;
		font-size:.9rem;
		line-height:1.4;
		margin:0 0 1rem;
	}
	.spa_info .spa_fee dt,
	.spa_info .spa_fee dd{
		color:#ffff33;
		font-size:1.1rem;
		font-weight:bold;
	}
	
	#spa .gourmet_menu{
		margin:0 0 1em;
	}
	#spa small{
		font-size:.8rem;
	}
	#spa .f_item{
		margin: 0 2% 1rem;
	}
	#spa .f_item h3,
	#spa .gourmet_menu li{
		color:#fff !important;
	}
	#spa .f_item h3 span,
	#spa .gourmet_menu li span{
		color:rgb(255,204,0) !important;
	}

@media screen and (max-width: 700px){
	.img_spa{
		float:none;
		width:100%;
		max-width:382px;
	}
	.spa_info{
		float:none;
		width:100%;
		padding:0 0 0 0;
	}
}

.i_paused{
	display:block;
	position:absolute;
	left:-4%;
	top:-15px;
	width:47%;
	max-width:110px;
	height:auto;
}


#takasu_yukimatsuri{
	position:relative;
	padding:20px 20px;
	text-align:center;
	background:#3399ff;
	border-radius:13px;
	margin:0 0 30px;
}
	#takasu_yukimatsuri .inner{
		position:relative;
		width:96%;
	}
	.ty_date{
		width:100%;
		text-align:center;
		color:#ffff33;
		font-size:20px;
		font-weight:bold;
		line-height:1.3;
		margin:0 0 20px;
	}
	.ty_eve{
		width:70%;
		margin:0 auto;
	}
	.ty_eve li{
		display:inline-block;
		padding:0 1em 0 0;
		color:#fff;
		font-size:18px;
		font-weight:bold;
		line-height:1.3;
	}