@charset "utf-8";

body{
	font-size:12px;
  	-webkit-text-size-adjust: 100%;
}
img{
	-ms-interpolation-mode: bicubic;
}
.ryokoujouken {
	font-size:10px;
	text-align:right;
}
.sp{
	display:none !important;
}
.boxsize *{
	box-sizing:border-box;
	line-height:160%;
}
figure{
	margin:0;
	position: relative
}
figure img {
	width:100%;
}
figcaption{
	font-size: 10px;
    position: absolute;
    bottom: 5px;
    right: 10px;
    color: #FFF;
    text-shadow: 1px 1px 1px #333, -1px 1px 1px #333, 1px -1px 1px #333, -1px -1px 1px #333;
}
.notice {
    background-color: #e50012;
    color: white;
    font-size: 20px;
    font-weight: bold;
    padding: 8px;
    text-align: center;
}
.bg-oneday{
    background-color: #c0ddfd;
    /*background-image: url(../img/bg01.png), url(../img/bg02.png);*/
    background-position: center top, center bottom;
    background-repeat: repeat, no-repeat;
    background-size: auto, 100%;
    /*padding: 15px 0 100px;*/
}
#k_contents{
	width:960px;
	margin:0 auto;
}

/*title-------------------
--------------------------*/
#title_wrap{
	margin: 0 auto;
    background-image: url(../../img/title_bg2.jpg);
    background-repeat:repeat-x;
    background-position: center;
}
#title_wrap .top img{
	display:block;
	margin:0 auto;
}
#title_wrap h2 img{
	margin:0 auto;
	display:block;
}
h2 span.title {
	display:none;
}
.syukuhaku_link{
    position: absolute;
    right: 10px;
    bottom: 0;
}
#title_wrap h2{
	position: relative;
}
.syukuhaku_link a{
	display: inline-block;
	font-size: 16px;
	font-weight: bold;
	background-color:#3c5ca8;
	border-radius: 10px;
	color: #FFF;
	padding: 20px 25px;
	box-shadow: 0 1px 2px #9b9b9b;
}
.syukuhaku_link a:hover{
	opacity: 1;
	color:#3c5ca8;
	background-color:#ffff00;
}
.title_plan{
  width: 100%;
  font-size: 24px;
  color: #070d59;  
  text-align: center;
  font-weight: bold;
  margin: 50px 0 30px;
  border-bottom: solid #070d59 1px;
}
.t_link {	
	width: 1200px;
	margin: 0 auto;
	text-align: right;
}
.t_link a{
	display: inline-block;
	position: relative;
	font-size: 20px;
	font-weight: 600;
	color: #fff;
	border-radius: 5px;
	border: 1px solid #1069a8;
	padding: 5px 10px 5px 25px;
	background-color: #2589d0;
	line-height: 1.4;
	margin:10px 0;
}
/*------------------------
skiresort_table
---------------------------*/
.skiresort_table{
	margin: 0 0 40px;
}
.skiresort_table table{
	background-color: #FFF;
	width: 100%;
}
.skiresort_table th, .skiresort_table td{
	text-align: center;
	font-weight: normal;
	border: solid 1px #89add5;
	padding: 5px;
}
.skiresort_table .th01{
  color: #FFF;
  line-height: 120%;
  background-color: #5893d4;
	padding: 7px 5px;
}
.skiresort_table .level th{
	padding: 3px 10px;
}
.skiresort_table a{
	color: #5893d4;
	font-weight: bold;
	text-decoration: underline;
}
.th_beginner{
	background-color:#FCE4EC;
}
.th_intermediate{
	background-color:#FFF8E1;
}
.th_advanced{
	background-color:#E8EAF6;
}




/*-----------------------------
plan_sec
--------------------------------*/
.plan_sec{
	margin: 0 auto 60px;
}
.subttl{
	font-family: 'Mochiy Pop P One', sans-serif;
	font-size:31px;
	color:#070d59;
	font-weight: 400;
	text-align:center;
	background-image: url(../../img/img_subtitle.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 510px;
	padding:30px 0 0;
	margin:0 auto 20px;
	min-height: 86px;
}

.about_resort .resort_access {
	font-size: 13px;
	margin: 0 0 10px;
}
.about_resort .resort_access .sp01{
		font-size: 10px;
    color: #FFF;
    background-color: #5893d4;
	border-radius: 1px;
    padding: 1px 5px;
    margin: 0 5px 0 0;
}
.about_resort .resort_cap {
	font-size: 13px;
	font-weight: bold;
	margin: 0 0 10px;
}

.one_re_table th, .one_re_table td{
	font-weight: normal;
	border: solid 1px #89add5;
}
.one_re_table .th01{
	font-size: 10px;
  color: #FFF;
	line-height: 120%;
  background-color: #5893d4;
  padding: 3px;
}
.one_re_table td{
	font-size: 11px;
	text-align: center;
  padding: 3px 8px;
}
.one_re_table .level th{
	font-size: 11px;
}

.recommend_plan .one_resort{
	background-color: #FFF;
	border-radius: 10px;
	padding:15px;
	margin: 0 5px 30px;
	position: relative;
}
.recommend_plan .about_resort{
	display: flex;
	align-items: flex-start;
	margin: 0 0 20px;
}
.recommend_plan .about_resort figure{
	width: 300px;
	margin:55px 30px 0 0;
}
.recommend_plan .about_resort .resort-info_wrap{
	width: 600px;
}
.recommend_plan .about_resort h4{
	font-size: 26px;
	margin: 0 0 10px;
}
.recommend_plan .about_resort .resort_access {
	margin: 0 0 15px;
}
.recommend_plan .one_re_table{
	display: flex;
	align-items: flex-end;
}
.recommend_plan .table01{
	width: 300px;
	height: 65px;
	margin: 0 3px 0 0;
}
.recommend_plan .table02{
	width: 160px;
	height: 65px;
}



.threecol_wrap{
	display: flex;
	flex-wrap: wrap;
}
.threecol_wrap .one_resort{
	background-color: #FFF;
	border-radius: 10px;
	padding:10px 5px;
	margin: 0 5px 30px;
	width: 310px;
}
.threecol_wrap .about_resort figure{
	margin: 0 5px 10px;
}
.threecol_wrap .resort-info_wrap{
	margin: 0 5px 10px;
}
.threecol_wrap .about_resort h4{
	font-size: 18px;
	margin: 0 0 5px;
}
.threecol_wrap .one_re_table{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
}
.threecol_wrap .table01{
	width: 100%;
	margin: 0 0 3px;
}


.about_resort .gelande_link a{
	font-size: 12px;
	color: #070d59;
	font-weight: bold;
	text-align: center;
	border: solid 2px #070d59;
	border-radius: 10px;
	padding: 3px 10px;
	width:  fit-content;
	box-shadow: 0 1px 1px rgb(0 0 0 / 28%);
	display: block;
	margin:0 0 0 20px;
}
.about_resort .gelande_link a:hover{
	opacity: 1;
	color: #FFF;
	background-color: #070d59;
}

.ribbon {
  display: inline-block;
  height: 50px;
  line-height:50px;
  text-align: center;
  padding: 0 120px 0 30px;
	font-family: 'Mochiy Pop P One', sans-serif;
	font-weight: 400;
  font-size: 20px;
  background: #FFB74D;
  color: #FFF;
  box-sizing: border-box;
	position: absolute;
	top:10px;
	left: -10px;
	z-index: 10;
}
.ribbon:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}
.ribbon:after {
  top: 0;
  right: 0;
  border-width: 25px 15px 25px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}

.sugotoku_ic{
	position: relative;
}
.sugotoku_ic:before{
	content:'スゴ得対応';
	font-size: 12px;
    color: #FFF;
    font-weight: bold;
    padding: 3px 10px;
	background-color: #006064;
	border: solid 2px #FFF;
	border-radius: 50px;
	position: absolute;
	top:0;
	right:0;
	z-index: 10;
}
.recommend_plan .sugotoku_ic:before{
	font-size: 14px;
    padding: 5px 15px;
	top:5px;
	right:5px;
}


/*-----------------------------
form
-------------------------------*/
form {
	margin: 0 5px 10px;
}
select {
	width : calc(100% - 85px);
	border: 1px solid #666;
	height:35px;
	background-color: #fff;
	vertical-align: middle;
}
.btn01 {
    font-size: 12px;
	font-weight: bold;
    color: #FFF;
    background-color: #070d59;
    border-radius: 5px;
    text-align: center;
	padding:7px 10px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
    border: none;
	vertical-align: middle;
}

.planBOX01{
	margin: 0 0 10px;
}
.planBOX01 .plan_ttl01{ 
  font-size: 13px;
  font-weight: bold;
  color: #070d59;
	border-left: solid 3px;
	padding: 0 0 0 5px;
	margin: 0 0 10px;
}

.plan_price {
  font-size: 21px;
  font-weight: bold;
  color: #bb0204;
  margin: 15px 0 5px;
  line-height: 1;
}
.plan_price span {
  font-size: 0.6em;
}
.plan_price span.ex {
  font-size: 0.5em;
  font-weight: normal;
  color: #333;
  display: inline-block;
}

.off_form {
	margin: 0 5px 10px;
}
.off_form .soon{
	color: #ababab;
	font-size: 14px;
	width : calc(100% - 85px);
	border: 1px solid #ababab;
	border-radius: 5px;
	height:35px;
	background-color: #fff;
	vertical-align: middle;
	padding: 5px 5px 0;
	display: inline-block;
}
.off_form .off_btn {
    font-size: 12px;
	font-weight: bold;
    color: #FFF;
    background-color: #ababab;
    border-radius: 5px;
    text-align: center;
	padding:7px 10px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
    border: none;
	vertical-align: middle;
	display: inline-block;
	margin: 0 0 0 3px;
}


.recommend_plan .about_plan {
  background-image: url(../../img/line_yado03.png);
  background-position: center 5px;
  background-repeat: repeat-x;
  background-size:300px;
	padding:45px 0 0;
}
.recommend_plan .planBOX01 .plan_ttl01{
	font-size: 15px;
}
.recommend_plan .planBOX01 .plan_ttl01 .sp01{
	font-size: 12px;
}
#one_resort01 .about_plan, #one_resort14 .about_plan{
  display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
  justify-content: space-between;  
}
#one_resort01 .planBOX01, #one_resort14 .planBOX01{
	width: calc( ( 920px – 30px ) / 2 );
	padding: 0 15px 20px;
}
#one_resort01 .plan_ttl02, .one_resort .plan_ttl02{
	color: #4273a3;
	font-weight: bold;
	margin: 0 0 5px;
}
#one_resort01 .planBOX01:nth-child(2n){
	border-left: dotted 2px #ababab;
}

#one_resort02 .about_plan{
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
  justify-content: space-between; 
}
#one_resort02 .planBOX01{
	/*width: 296px;*/
  width: calc( ( 900px – 20px ) / 3 );
}
#one_resort02 .planBOX01 + .planBOX01{
	border-left: dotted 2px #ababab;
	padding: 0 0 0 10px;
	margin: 0 0 10px 10px;
}
/*#one_resort14 .planBOX01{
	width: 600px;
	margin: 0 auto 20px;
}*/

#one_resort01 h5, #one_resort02 h5 {
font-size: 18px;
color:#002A9E;
text-align: center;
display: block;
margin: 1.5em 0 0.5em;
padding: 2px;
background:  #bdebdc;
}

#one_resort03 h5, #one_resort04 h5, #one_resort05 h5, #one_resort06 h5, #one_resort07 h5, #one_resort08 h5, #one_resort09 h5, #one_resort10 h5, #one_resort11 h5, #one_resort12 h5, #one_resort13 h5, #one_resort14 h5, #one_resort15 h5 {
font-size: 14px;
color: #002A9E;
text-align: center;
display: block;
margin: 1.5em 0 0.5em;
padding: 2px;
background:  #bdebdc;
}

.threecol_wrap .about_plan{
  background-image: url(../../img/line_yado03.png);
  background-position: center 5px;
  background-repeat: no-repeat;
  background-size:250px;
	padding:30px 5px 0;
}

/*-----------------------------
tab
-------------------------------*/
.ap-group{
	margin:0;
}
.tab-group{
  display: flex;
  justify-content: center;
	margin:0 5px;
} 
.tab{
	font-size: 11px;
  flex-grow: 1;
  padding:3px;
  list-style:none;
	border-radius: 10px 10px 0 0;
  background-color:#f5f5f5;
	font-weight: bold;
  text-align:center;
  cursor:pointer;
	color:#4273a3;
	width: 32%;
	border-right: solid 2px #4273a3;
	border-left: solid 2px #4273a3;
	border-top: solid 2px #4273a3;
	margin: 0 0.5%;
}
.panel-group{
  height:auto;
  border-top:none;
  padding: 10px 15px 5px;
  border:solid 2px #4273a3;
}
.panel{
  display:none;
}
.tab.is-active{
  background:#4273a3;
  color:#FFF;
  transition: all 0.2s ease-out;
}
.tab.is-active .wari{
	color: #FFF;
}
.panel.is-show{
  display:block;
}


.tab_wrap {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin:20px 0;
  border-bottom: solid #eb7669 3px;
}
.tabs_list {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}
.tab_label {
  width: 100%;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  color: #FFF;  
  text-align: center;
  background: #eb7669;
  white-space: nowrap;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 5px 5px 3px 0 ;
  padding: 20px 1em;
  border-radius: 10px 10px 0 0;
  overflow: hidden;
  position: relative;
  z-index: 0;
  cursor: pointer;
  flex: 1;
}
.tab_label a {
color: #FFF;
}
.tab_label_right {
  margin-right: 0 ;
}
.tab_label_off {
  background: #999;
  line-height: 1;
}


/*-------------------
.about_sugotoku02
---------------------*/
.about_sugotoku02{
	background-color: #FFF;
	border-radius: 20px;
	padding: 20px;
	margin: 0 0 60px;
}
.about_sugotoku02 dl>div{
	margin: 0 0 20px;
}
.about_sugotoku02 dt{
	font-size: 18px;
	color: #FFF;
	font-weight: bold;
	padding:5px 10px;
	margin: 0 0 10px;
}
.about_sugotoku02 .dt01{
	background-color: #006064;
}
.about_sugotoku02 .dt01 .sp01{
	color: #FFA726;
}
.about_sugotoku02 .dt02{
	background-color: #1E88E5;
}

.about_sugotoku02 dd{
	font-size: 14px;
	padding: 0 0 0 15px;
	margin:0 5px;
	position: relative;
}
.about_sugotoku02 .mark{
	position:absolute;
	top:0;
	left: 0;
}
.about_sugotoku02 a{
	display: block;
	font-size: 18px;
	color: #fff;
	text-align: center;
	background-color: #070d59;
	border-radius: 5px;
	padding: 7px;
	margin: 0 auto;
	width:500px;
	box-shadow: 0 1px 1px rgb(0 0 0 / 28%);
}




/*---------------------------
about_sugotoku
-----------------------------*/
#about_sugotoku .btn_back {
  width: 1200px;
  position: relative;
  margin: 0 auto;
}
#about_sugotoku .btn_back a {
  position: absolute;
  top: -145px;
  right: 0;
}
#about_sugotoku h3{
	font-size:28px;
	text-align: center;
	margin: 0 0 20px;
}
#about_sugotoku .page_link{
	display: flex;
	justify-content: center;
	margin: 0 0 40px;
}
#about_sugotoku .page_link a{
	font-size: 16px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
	padding: 10px;
	width: 400px;
	margin: 0 10px;
	display: block;
}
#about_sugotoku .page_link .a01{
	background-color: #006064;
}
#about_sugotoku .page_link .a01 .sp01{
	color: #FFA726;
}
#about_sugotoku .page_link .a02{
	background-color: #1E88E5;
}

.sugo_sec{
	background-color:#FFF;
	border-radius: 20px;
	width: 1200px;
	padding: 15px 0 15px;
	margin: 0 auto 100px;
}
.sugo_sec h4{
	font-size: 22px;
	color: #FFF;
	font-weight: bold;
	padding: 7px 20px;
	margin: 0 10px 25px;
}
#sugotoku h4{
	background-color: #006064;
}
#sugotoku h4 .sp01{
	color: #FFA726;
}
#no-sugotoku h4{
	background-color: #1E88E5;
}

.sugopage_link{
	margin: 0 20px 20px;
}
.sugopage_link a{
	font-size: 14px;
	color: #3c5ca8;
	background-color:#d5f2f5;
	border-radius: 20px;
	padding: 5px 20px;
	margin: 0 10px;
	display: inline-block;
}

.slide_list li{
	margin: 0 0 70px;
}
.slide_list h5{
	font-size:20px;
	background-color: #f5f5f5;
	padding: 7px;
	margin: 0 20px 30px;
}
.slide_list h5 .sp01{
	font-size:16px;
	color: red;
}
#sugotoku .slide_list h5{
	border-left: solid 8px #006064;
}
#no-sugotoku .slide_list h5{
	border-left: solid 8px #1E88E5;
}
.sugo_sec .p01{
	font-size: 16px;
	margin: 0 30px;
}
.sugo_sec .p02{
	font-size: 21px;
	color: #df0403;
	margin: 0 30px;
}
.sugo_sec .p02 a{
	color:#df0403;
}
.application-slide {
	width: 1186px;
	margin: auto;
}


/*-------------------------------
pr_area
---------------------------------*/
#pr_area {
  margin: 0 auto 50px;
  padding: 20px;
  border: double 5px #104a7c;
  font-size: 18px;
  font-weight: bold;
  background: #fff5c4;
  width: fit-content;
  text-align: center;
  border-radius: 15px;
}
#pr_area p {
  color: #002756;
}
#pr_area span {
  color: #cb0101;
  font-size: 1.2em;
}
#pr_area a:before{
  content:"▼";
  margin-right: 5px;
}


/*-------------------------------
faq
---------------------------------*/
#faq {
	background-color: #FFF;
	border: solid 1px #999;
  padding: 25px 30px;
	margin: 60px auto 80px;
	width: 960px;
}
.faq_lead {
  font-size: 24px;
	color: #604c3f;
  margin: 0 auto 10px;
}
#faq dl {
	font-size: 14px;
	margin:0;
}
#faq dt {
  font-weight: bold;
	margin: 0 0 8px;
}
#faq dt:not(:first-of-type) {
  border-top: 1px dashed #999;
  padding: 10px 0 0;
  margin: 20px auto 8px;
}
#faq dt:before,
#faq dd:before {
  font-size: 26px;
  font-weight: bold;
  margin-right: 6px;
}
#faq dt:before {
  content: "Q.";
  color: #62b9c3;
}
#faq dd:before {
  content: "A.";
  color: #d3628f;
}
#faq dd{
	margin-left:10px !important;
}


/*-----------------------------
transition
-------------------------------*/
#transition{
  width: 960px;
	margin: 0 auto;
	padding: 10px 0 40px;
}
#transition ul {
  display:flex;
  justify-content:space-between;
  align-items:stretch;
  list-style-type: none;
}
#transition ul li {
  display: flex;
  align-self: auto;
  flex: 1;
	margin: 0 5px;
  min-width: 0; 
}
#transition a img {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
	box-shadow: 2px 2px 5px 2px #ccc;
	width: 100%;
	opacity: 0.5;
}
#transition a img:hover {
	box-shadow: none!important;
	opacity: 1!important;
}
#transition a:hover {
	opacity: 1!important;
}
#transition .active img {
	border: 4px solid yellow;
	opacity: 1;
}



/*-----------------------------
bunner-slide
-------------------------------*/
.bunner-slide_wrap{
	margin:30px 0 60px;
}
.bunner-slide_wrap h3{
	font-size:28px;
	color:#5f6368;
	text-align:center;
	margin:0 auto 10px;
	min-height:54px;
	padding:5px 0 0;
	background-image: url(../../img/img_subtitle.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 380px;
}
.bunner-slide{
	width:960px;
	margin:0 auto;
}
.bunner-slide img{
	width:220px;
}

/*clearfix*/
.clearfix:after {
	content:" ";
	display:block;
	clear:both;
}


/*受付終了対応*/
.btn01 {
	pointer-events: none;
	background-color: #ccc!important;
}


