@charset "UTF-8";

/* ---------------------------------------------------------
	マップ
---------------------------------------------------------*/
#map_wrapper{
	width: 55%;
	margin-right: 30px;
	position: relative;
}
#map_wrapper iframe{
	width: 100%;
	height: 450px;
}

/* ---------------------------------------------------------
	ショーカットメニュー
---------------------------------------------------------*/
#other_link{
	width: calc(100% - 55% - 30px);
}
#other_link a.outlink{
	display: block;
	margin-bottom: 30px;
	padding: 15px 190px 15px 0;
	font-size: 16px;
	font-size: 16rem;
	text-align: center;
	text-decoration: none;
	color: #FFF;
	background: #1592E6 url(https://www.rado.co.jp/ski/oneday/_common/logo.png) no-repeat calc(100% - 10px) center;
	background-size: 180px;
	border: 2px solid #FFF;
	box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 3px 1px;
	border-radius: 5px;
	transition: 0.3s;
}
#other_link a.outlink:hover{
	background-color: #52A437;
}
a.outlink span{
	font-size: 18px;
	font-size: 18rem;
	color: #FF0;
	font-weight: bold;
}
#other_link dl#short_menu{
	padding: 20px;
	font-size: 16px;
	font-size: 16rem;
	background: #DBEEED;
	border-radius: 10px;
}
dl#short_menu dt{
	padding: 10px;
	text-align: center;
	font-weight: bold;
	color: #FFF;
	border: 1px solid #FFF;
	background: #83B3B6;
	border-radius: 5px;
}
dl#short_menu dd{
	margin-top: 15px;
}
dl#short_menu dd ul{
	gap: 15px 3%;
	justify-content: flex-start;
	text-align: left;
}
dl#short_menu dd ul li{
	width: calc(47.5% - 1em);
	text-indent: -1em;
	margin-left: 1em;
}
dl#short_menu dd ul li a::before{
	content: "\f138";
	font-family: "Font Awesome 5 Free";
	font-size: 14px;
	font-size: 14rem;
	font-weight: 900;
	padding-right: 3px;
}

@media screen and (max-width: 1024px){
	#other_link a.outlink{
		padding: 15px;
		height: calc(4em + 55px);
		line-height: 1.3;
		background-position: center calc(100% - 3px);
	}
}
@media screen and (max-width: 820px){
	dl#short_menu dd ul{
		gap: 10px 0;
	}
	dl#short_menu dd ul li{
		width: calc(100% - 1em);
	}
}
@media screen and (max-width: 430px){
	#other_link{
		margin-top: 30px;
		width: 100%;
	}
	#other_link a.outlink{
		display: block;
		padding: 10px;
	}
	#other_link dl#short_menu{
		padding: 10px;
	}
	#other_link dl#short_menu dt{
		cursor: pointer;
		color: #FF0;
		background: #1592E6;
	}
	#other_link dl#short_menu dt:hover{
		color: #FFF;
		background: #52A437;
	}
	#other_link dl#short_menu dt.opn{
		border-radius: 10px 10px 0 0;
	}
	#other_link dl#short_menu dd{
		display: none;
	}
	#other_link dl#short_menu dd ul{
		gap: 15px 15px;
		justify-content: flex-start;
		font-size: 14px;
		font-size: 14rem;
	}
}

/* ---------------------------------------------------------
	スケジュール
--------------------------------------------------------- */
article#schedule_wrapper{
	width: calc(45% - 30px);
}
article#schedule_wrapper h1{
	padding: 5px 10px;
	font-size: 14px;
	font-size: 14rem;
	font-weight: bold;
	text-align: center;
	background: #DBEEED;
}
article#schedule_wrapper h1 > span{
	display: inline-block;
	margin: 0 5px 0 10px;
	padding: 2px 5px;
	line-height: 1.2;
	font-weight: bold;
	text-align: center;
	border-radius: 3px;
}
#schedule section table{
	width: 100%;
	margin-top: 5px;
	background: #FFF;
}
#schedule section table caption{
	padding-bottom: 5px;
	background: #DBEEED;
}
#schedule section table tr{
	border: 5px solid #DBEEED;
}
#schedule section table th,
#schedule section table td{
	padding: 8px 10px;
}
#schedule section table th{
	border-right: 2px solid #DBEEED;
	white-space: nowrap;
}
#schedule section table strong{
	font-weight: bold;
	color: #F00;
}
#schedule section table a{
	color: #1592E6;
	font-weight: bold;
}
#schedule section table a:hover{
	color: #000;
}
#schedule ul{
	margin-top: 10px;
	font-size: 12px;
	font-size: 12rem;
}
#schedule ul li{
	padding-left: 1em;
	text-indent: -1em;
}
#schedule ul li:not(:first-of-type){
	margin-top: 3px;
}

/* ---------------------------------------------------------
	スキー場リスト
--------------------------------------------------------- */
article#gelendelist_wrapper{
	width: 100%;
	margin-top: 50px;
}
#gelendelist_wrapper > .gelendelist:not(:first-of-type){
	margin-top: 50px;
}

#gelendelist_wrapper > .gelendelist{
	margin-top: 30px;
	padding: 10px;
	background: #FFF;
}
.gelendelist > h2{
	width: 100%;
}
.gelendelist > h2 a{
	display: block;
	margin-bottom: 10px;
	padding: 5px;
	font-size: 21px;
	font-size: 21rem;
	border-top: dotted 1px gray;
	border-bottom: dotted 1px gray;
}
.gelendelist > h2 a:before{
	content: "\f138";
	font-family: "Font Awesome 5 Free";
	font-size: 18px;
	font-size: 18rem;
	font-weight: 900;
	padding-right: 3px;
}
.gelendelist > h2 a:hover::before{
	color: #1592E6;
}
.gelendelist > figure{
	width: 240px;
	margin-right: 20px;
}
.gelendelist > figure	a{
	position: relative;
	display: block;
}
.gelendelist > figure	a::after{
	position: absolute;
	right: 3px;
	bottom: 3px;
	content: "\f00e";
	font-family: "Font Awesome 5 Free";
	font-size: 16px;
	font-size: 16rem;
	font-weight: 900;
	padding-right: 3px;
}
.gelendelist > figure:hover::after{
	color: #1592E6;
}
.gelendelist > figure a:hover img{
	opacity: 0.6;
}
.gelendelist > .outline{
	width: calc(100% - 630px);
	margin-right: 20px;
	font-size: 16px;
	font-size: 16rem;
}
.gelendelist > .outline span.carplan{
	display: inline-block;
	width: 11em;
	margin: 0 0 5px 10px;
	padding: 5px 0;
	font-size: 12px;
	font-size: 12rem;
	font-weight: bold;
	text-align: center;
	color: #FFF;
	border-radius: 5px;
}
.gelendelist > .outline span.carplan.daypln{
	background: #52A437;
}
.gelendelist > .outline span.carplan.htlpln{
	background: #FF871B;
}
.gelendelist > .outline span.carplan.noplan{
	background: none;
}
.gelendelist > .outline span.carplan:first-of-type{
	margin-left: 0;
}
.gelendelist > dl{
	width: 350px;
	-webkit-box-align: center !important;
	-ms-flex-align: center !important;
	align-items: center !important;
}
.gelendelist > dl dt{
  position: relative;
	width: 6.5em;
	padding: 5px;
	text-align: center;
	font-size: 12px;
	font-size: 12rem;
	font-weight: bold;
	color: #FFF;
	background: #78C7E7;
	border-radius: 5px;
}
.gelendelist > dl dt::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -5px;
  border: 5px solid transparent;
  border-left: 5px solid #78C7E7;
}
.gelendelist > dl dd{
	width: calc(100% - 100px);
	margin-left: 10px;
}
.gelendelist > dl dd:nth-of-type(-n+2){
	width: calc(50% - 100px);
}
.gelendelist > dl dt:not(:last-of-type),
.gelendelist > dl dd:not(:last-of-type){
	margin-bottom: 10px;
}
.gelendelist > dl dd table{
	width: 100%;
}
.gelendelist > dl dd table td{
	font-weight: bold;
	white-space: nowrap;
	padding: 3px 0;
	text-align: center;
	line-height: 1.2;
	color: #FFF;
}
.gelendelist > dl dd table td span{
	display: block;
	font-size: 10px;
	font-size: 10rem;
	font-weight: normal;
	color: #FFF;
}
.gelendelist > dl dd table td:nth-of-type(1){ background: #6AB218; }
.gelendelist > dl dd table td:nth-of-type(2){ background: #EF8A18; }
.gelendelist > dl dd table td:nth-of-type(3){ background: #D1201E; }

/* ---------------------------------------------------------
	特集スキープラン
--------------------------------------------------------- */
article#special_wrapper{
	width: 100%;
}
#contents h1.ribbon{
	font-size: 32px;
	font-size: 32rem;
	letter-spacing: 0.2em;
}
#contents h1.ribbon::before{
	border-width: 28px 0px 28px 18px;
}
#contents h1.ribbon::after{
	border-width: 28px 18px 28px 0px;
}
#special_wrapper > section.special{
	width: calc((100% - 100px) / 3);
	margin: 50px 49px 0 0;
}
#special_wrapper > section.special:nth-of-type(3n){
	margin-right: 0;
}
section.special > a{
	display: block;
	text-decoration: none;
	position: relative;
}
section.special > a h2{
	padding: 8px 0;
	line-height: 1.2;
	text-align: center;
	background: #DBEEED;
	color: #FFF;
	background: #1592E6;
}
section.special > a:hover h2{
	background: #FF871B;
}
section.special > a figure{
	overflow: hidden;
}
section.special > a figure img{
-webkit-transition: 300ms;
transition: 300ms;
}
section.special > a:hover figure img{
  -webkit-transform: scale(1.03);
  transform: scale(1.03);
}
section.special > a p{
	padding: 10px;
	background: #FFF;
}
section.special > a:hover p{
	color: #000;
  background: #FFFFDD;
}

/* ---------------------------------------------------------
	レスポンシブ
--------------------------------------------------------- */
@media screen and (max-width: 768px){
	#map_wrapper iframe{
		height: 340px;
	}
	#schedule section table{
	  font-size: 12px;
	  font-size: 12rem;
	}
	#schedule section table th, #schedule section table td{
		padding: 5px;
	}
	#gelendelist_wrapper > .gelendelist{
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
	}
	.gelendelist > figure{
		width: 200px;
	}
	.gelendelist > .outline{
		width: calc(100% - 220px);
		margin-right: 0;
	}
	.gelendelist > dl{
		width: calc(100% - 220px);
		margin-top: 10px;
	}
	#special_wrapper > section.special{
		width: calc((100% - 60px) / 3);
		margin: 30px 30px 0 0;
	}
}
@media screen and (max-width: 767px){
	#contents h1.ribbon{
		font-size: 24px;
		font-size: 24rem;
	}
	#contents h1.ribbon::before{
		border-width: 24px 0px 24px 18px;
	}
	#contents h1.ribbon::after{
		border-width: 24px 18px 24px 0px;
	}
}
@media screen and (max-width: 568px){
	#map_wrapper{
		width: 100%;
		margin-right: 0;
	}
	article#schedule_wrapper{
		margin-top: 50px;
		width: 100%;
	}
	.gelendelist > figure{
		width: 180px;
	}
	.gelendelist > .outline{
		width: calc(100% - 200px);
		margin-right: 0;
	}
	.gelendelist > dl{
		width: 100%;
		margin-top: 10px;
	}
	#special_wrapper > section.special{
		width: calc((100% - 30px) / 2);
		margin: 30px 30px 0 0;
	}
	#special_wrapper > section.special:nth-of-type(3n){
		margin-right: 30px;
	}
	#special_wrapper > section.special:nth-of-type(2n){
		margin-right: 0;
	}
	section.special > a p{
		font-size: 12px;
		font-size: 12rem;
	}
}
@media screen and (max-width: 567px){
	#contents h1.ribbon{
		font-size: 21px;
		font-size: 21rem;
	}
	#contents h1.ribbon::before{
		border-width: 22px 0px 22px 18px;
	}
	#contents h1.ribbon::after{
		border-width: 22px 18px 22px 0px;
	}
	.gelendelist > h2 a{
		font-size: 18px;
		font-size: 18rem;
	}
	.gelendelist > figure{
		width: 100%;
		margin-right: 0;
	}
	.gelendelist > .outline{
		width: 100%;
		margin-top: 10px;
	}
	#special_wrapper > section.special{
		width: 100%;
		margin: 30px 0 0 0 !important;
	}
}
