@charset "utf-8";
/* CSS Document */

html {
  scroll-behavior: smooth;
}
#container{
	 font-family: "Noto Sans JP", serif;
    width: 100%;
    margin: 0;
	font-size: 16px;
	color: #333333;
	line-height: 1.6;
	box-sizing: border-box;
}

#container th{font-family: 'Source Han Sans Japanese', sans-serif; font-size: 14px;}
* { box-sizing: border-box; }
#container a{
	text-decoration: none;
/*	color: #333;*/
}
#container a:hover{
/*	color: #333;*/
	opacity: .6;
}

/*reset　cssにかかっているので打消し*/
#container:after, .content:after, .inner:after, dl:after{
    visibility: visible;
    height: auto;
    font-size: 100%;
}

.w1000{
	width: 1000px;
	margin: 0 auto;
}


.pc{display: block;}
.sp{display: none;}

ul {
	list-style: none;
    display: block;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 0;
}

*{margin: 0; padding: 0;}

/*-- 画像位置 --*/
#container img {
    margin: 0;
    padding: 0;
    vertical-align: bottom;
	max-width: 100%;
/*	width: 100%;*/
}

/*-- font --*/
/*.gosic{font-family: 'Source Han Sans Japanese', sans-serif;}
.min{font-family: 'Source Han Serif Japanese', serif;}
.fude{font-family: 'ta-fuga-fude', sans-serif;}*/


/*.noto-sans-jp-<uniquifier> {
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
*/




/*--------------------page_top */
#container .page_top{
    position: fixed;
    z-index: 100;
    right: 20px;
    bottom: 30px;
}
#container .page_top a{
    color: #1a2833;
    border: #1a2833 1px solid;
    padding:20px 15px 10px 15px;
    border-radius:100px;
    background: #ffffff;
    opacity: 0.7;
}
#container .page_top a:hover{
    color: #ffffff;
    background: #1a2833;
    transition: .3s;
}


/*--------------------パンくず */
#pankuzu{
	margin: 15px auto;
	width: 1000px;
	font-size: .85em;
	font-family: 'Noto Sans JP', sans-serif;
}

#pankuzu ul{
    padding: 0 0 5px;
    _zoom: 1;
}
#pankuzu li{
    float: left;
    list-style: none;

}
#pankuzu li + li:before{
    margin: 0 8px;
    content: '>';
}

/*---------- icon*/


.material-symbols-outlined {
  font-variation-settings:
  'FILL' 0,
  'wght' 300,
  'GRAD' 0,
  'opsz' 40
}

.icon_yajisita{
    position: absolute;
    top:35%;
    right: 5%;
}

.detail .icon_yajimigi{
    position: absolute;
    top:28%;
    right: 8%;
	font-size: 40px;
}

#commonFooter .icon_yajiue{
    position: absolute;
    bottom:10px;
    right: 2%;
    font-size: 20px;
    color: #ffffff;
   /* background: #b38c61;*/
    padding: 15px;
    position:fixed;
    border-radius:50px;
    border:#b38c61 2px solid;
}

#commonFooter a:hover .icon_yajiue {
    opacity: 0.6;
}

.w1300{
    width: 1300px;
	margin: 0 auto;
}


/*--------------------top */
.logo{
	text-align: center;
	padding: 1em 0;
}

#title{
	background-image:url("../img/bg.jpg");
	background-position:center;
	background-repeat: no-repeat;
	height: 700px;
	background-size: cover;
    position: relative;
}


.title_cap{
    color: #ffffff;
    font-size: 0.9em;
    position: absolute;
    right:10%;
    bottom: 0;
}
/*------------------------------------------------------main*/

h1 {
	text-indent:5000px;
	white-space: nowrap;
	overflow: hidden;
	background-image: url("../img/title.png");
	background-repeat: no-repeat;
	background-position:50% 5%;
	max-width: 1300px;
	margin: auto;
	z-index: 99;
    height: 700px;
}

.main p{ text-align: right; font-size: .9em;}


/*----------------------------タブ切替 */
.course_tl{
	text-align: center;
	padding-bottom: 20px;
}

#tab_bg{
    padding: 2.5em 0;
    background: #fdfcf6;
}
.tab-area {
	display: flex;
    flex-wrap: wrap;
	cursor: pointer;
	padding: 0.3em 0 .5em;
	/*justify-content: space-around;*/
    font-family: 'ta-fuga-fude', sans-serif;
    font-size: 20px;
    letter-spacing: 1px;
	column-gap: 20px;
	justify-content:center;
}

.tab-area li {
	/*width: calc(100%/2 - 1em);*/
	width:40%;
	padding: 0.6em 0;
	color: #fff;
	display: block;	
	text-align: center;	
    position: relative;
	font-weight: 600;
	 transition-property: opacity;
    transition-duration: 0.5s;
}

.tab-area li:hover{
	opacity: 0.7; 
}

.a_course_scroll{
    background-color: #e5004f;
}
.b_course_scroll {
    background-color: #004ea2;
}

.a_course_scroll a, .b_course_scroll a {
    color: #ffffff;
}



.panel {
  display: none;
/*  text-align: center;*/
}
.panel.active {
  display: block;
}


h2{
	text-align: center;
	padding: 50px 0 10px 0;
}

.schedule .sm{
	font-size: 0.8em;
font-weight: 400;
}


 .text_center{
	text-align: center;
}

.hanbai{
	text-align: center;
	font-size: 1.5em;
	font-weight: 600;
	padding-top: 2em;
}

/*-------------------------------------------------------------発売前*/

#a_course  .mae .detail,  #b_course  .mae .detail{
    display: block;
    background: #B9B9B9;
    color: #ffffff;
    padding: 20px 0;
	font-size: 1.5em;
   
}

/*---------------------------------------------a_course*/
#a_course{
	/*background: #ffe1f3;*/
	background:#ffe1f3  url("../img/fujibg.png") no-repeat  center bottom/ 100% 305px;
	padding: 30px 0;
}

#a_course .airport{
	color: #e60012;
	font-size: 22px;
	font-weight: 700;
	border: #e60012 3px solid;
	padding: 3px 10px;
	background: #ffffff;
	text-align: center;
	width:210px;
	margin: 0 auto;
	border-radius:15px;
}

.course_box{
	display: flex;
	flex-wrap: wrap;
	column-gap: 20px;
	padding: 100px 0;
}


#a_course .course_box ul{
	width:35%;
}

 #a_course .course_box dl{
	width:calc(65%/2 - 20px);
}

.course_box dl img{
	width:100%;
}

#a_course .course_box ul{
	background: #fff4d6;
	border: #a67f00 3px solid;
	border-radius:15px;
	/*padding: 10px 20px;*/
}

#a_course .course_box ul li{
	padding: 0 20px; 
	font-size: 22px;
	font-weight: 600;
	position: relative;
	line-height: 1.5;
}

#a_course .course_box ul li p{
	padding-left: 0.8em;
	}

#a_course .course_box ul li:not(:first-child)::before{
	content:"●";
	top:10px;
	position: absolute;
	font-size: 10px;
}

#a_course .course_box .point{
	background: url("../img/point_bg.png") no-repeat;
	background-size:100%;
	margin:10px 0;
	text-align: center;
	color: #ffffff;
	font-size: 22px;
	font-weight: 700;
	padding: 0 0 3px 0; 
}

#a_course .schedule{
	font-size: 22px;
	background: #ffffff;
	display: flex;
	flex-wrap: wrap;
	width:960px;
	margin: 0 auto;
	font-weight: 600;
}

#a_course .schedule dt, #a_course .schedule dd{
	border: #000000 1px solid;
	padding: 8px 20px;
}

#a_course .schedule dt{
	width:20%;
	text-align: center;
}

#a_course .schedule dd{
	width:80%;
}

.map{
	padding: 100px 0;
	display: flex;
	flex-wrap: wrap;
	column-gap: 20px;
	justify-content:center;
}

/*.map p{
	width:calc(50% - 20px);
}*/

#a_course .detail ul{
    display: flex;
    flex-wrap: wrap;
    justify-content:center;
}

#a_course .detail{
    width:70%;
    text-align: center;
    background: #e5004f;
    position: relative; 
	margin: 10px auto 30px auto;
	border-radius:10px;
	 transition-property: opacity;
  transition-duration: 0.5s;
}

#a_course .detail a{
    display: block;
    color: #ffffff;
    padding:20px 0;
	   font-size: 22px;
		font-weight: 700;
}

/*販売開始　#a_course .detail:hover{
    opacity: .6;
}


/*---------------------------------------------b_course*/
#b_course{
	/*background: #ffe1f3;*/
	background:#e5f6fd  url("../img/fujibg.png") no-repeat  center bottom/ 100% 305px;
	padding: 30px 0;
}

#b_course .airport{
	color: #004ea2;
	font-size: 22px;
	font-weight: 700;
	border: #004ea2 3px solid;
	padding: 3px 10px;
	background: #ffffff;
	text-align: center;
	width:410px;
	margin: 0 auto;
	border-radius:15px;
}


 #b_course .course_box dl{
	width:calc(60%/2 - 20px);
}

#b_course .course_box  .course_box_b{
	width:70%;
	background: #fff4d6;
	border: #a67f00 3px solid;
	border-radius:15px;
	/*padding: 10px 20px;*/
	display: flex;
	flex-wrap: wrap;
	align-items:center;
}

.course_box_b_left{
	width:55%;
}

.course_box_b_right{
	width:45%;
}

#b_course .course_box .course_box_b li{
	padding: 0 20px; 
	font-size: 22px;
	font-weight: 600;
	position: relative;
	line-height: 1.5;
}

#b_course .course_box ul li p{
	padding-left: 0.8em;
	}

#b_course .course_box ul li:not(:first-child)::before{
	content:"●";
	top:10px;
	position: absolute;
	font-size: 10px;
}

#b_course .course_box .point{
	background: url("../img/point_bg.png") no-repeat;
	background-size:100%;
	margin:10px 0;
	text-align: center;
	color: #ffffff;
	font-size: 22px;
	font-weight: 700;
	padding: 0 0 3px 0; 
}

#b_course .schedule{
    font-size: 22px;
    background: #ffffff;
    display: flex;
    flex-wrap: wrap;
    /* [disabled]width:900px; */
    margin: 0 auto;
    font-weight: 600;
	width:950px;
}

#b_course .schedule dt, #b_course .schedule dd{
	border: #000000 1px solid;
	padding: 3px 20px;
}

#b_course .schedule dt{
	width:20%;
	text-align: center;
}

#b_course .schedule dd{
	width:80%;
}

#b_course .detail ul{
    display: flex;
    flex-wrap: wrap;
    justify-content:center;
}

#b_course .detail{
    width:70%;
    text-align: center;
    background: #004ea2;
    position: relative; 
	margin: 10px auto 30px auto;
	border-radius:10px;
	 transition-property: opacity;
  transition-duration: 0.5s;
}

 #b_course .detail a{
    display: block;
    color: #ffffff;
    padding:20px 0;
	   font-size: 22px;
		font-weight: 700;
}

/*販売開始　#b_course .detail:hover{
    opacity: .6;
}

/*---------------------------------------------link_wrap*/

.price{
	text-align: center;	
}

.price_li{
	font-size: 18px;
	font-weight: 500;
}

.price_li span{
	font-size: 22px;
	font-weight: 700;
	background: #ad9449;
	color: #ffffff;
	padding: 5px 10px;
	margin-right: 1em;
}

.price_list{
	display: flex;
	flex-wrap: wrap;
	width:50%;
	margin: 0 auto;
	justify-content:center;
}

.price_list dl{
		width:50%;
	   display: flex;
	   flex-wrap: wrap;
	  align-items:center;
}

.price_list dt{
	font-size: 24px;
	font-weight: 700;
	color: #e60012;  
	text-shadow:
    3px 3px 0 #ffffff,
    -3px 3px 0 #ffffff,
    -3px -3px 0 #ffffff,
    3px -3px 0 #ffffff;
	width:35%;
}

.price_list dd{
	font-size: 48px;
	font-weight: 700;
	color: #e60012;  
	text-shadow:
    3px 3px 0 #ffffff,
    -3px 3px 0 #ffffff,
    -3px -3px 0 #ffffff,
    3px -3px 0 #ffffff;
	width:65%;
	text-align: left;
}


	.price_list .lunch_null{
		width:100%;
		font-size: 1em;
		color: #e60012;
		font-weight: 500;
		text-align: left;
		padding-top: 2em;
		font-size: 1.3em;
	}	

.price_list dd span{
	font-size: 30px;
}

  /*color: #fff;
  text-shadow:
    3px 3px 0 #000,
    -3px 3px 0 #000,
    -3px -3px 0 #000,
    3px -3px 0 #000;

/************************************************************
					★max1500px
************************************************************/
@media screen and (max-width: 1500px){
.hotel_wrap,
.tabs {
	min-width: 100%;  
	width: 100%;
	margin: 0;
	padding-left: 5px;
	padding-right: 5px;
}
	
#container, .w1000, #container .w1300 {
		min-width: 100%;  
	width: 100%;
	margin: 0;
	overflow: hidden;
}
	
	
}

/************************************************************
					★min770px－max999px
************************************************************/
@media screen /*and (min-width: 770px) */and (max-width: 1000px){
	
#container, .w1000, #container .w1300 {
	min-width: 100%;  
	width: 100%;
	margin: 0;
	overflow: hidden;
}
.w1000 {	padding: 0 5px;}
/*-------------------------------------------------------------タブ切替 */
.tab-area {	padding: 1.5em 0;}	
/*---------------------------------*/
.text + .flex_box{align-items: flex-start;}
/*--------------------------------------------------------------------------------------------------------set */
h1{
    background-size: contain;    
}

#title{
    height: 580px;
}

#tab_bg{
    padding: 0;
}

	
#a_course, #b_course{
		padding: 30px 10px;
	}	
	
.course_box{
		padding: 10px 0;
	}	
	
#a_course .course_box ul,  #b_course .course_box .course_box_b{
		width:100%;
	 padding-bottom: 20px;
	}
	
.tab-area li{
		width:48%;
		font-size: 18px;
	}	
	
#a_course .course_box dl, #b_course .course_box dl{
		width:48%;
		padding: 20px 0;
	}	
	
.map{
		padding: 20px 0;
	}	
	
.map p{
		width:48%;
	}
	
.price_list dl{
		width:100%;
	}		

#a_course .schedule, #b_course .schedule{
		width:100%;
	}
 
}
/************************************************************
					★タブレット対応
************************************************************/
@media screen /*and (min-width:600px)*/ and (max-width:769px)  {
	
/*--------------------パンくず */
#pankuzu{ display: none;}
	
.tab-area{
		font-size: 16px;
	}	
	
h2{
		padding: 20px 0 10px 0;
	}	
	
.course_box{
		padding: 10px 0;
	}	
	
#a_course, #b_course{
		padding: 30px 10px;
	}	
		
	
#a_course .course_box ul li, #b_course .course_box ul li{
		font-size: 18px;
	}
	
#a_course .course_box ul, #b_course .course_box ul{
		width:100%;
	}	
	
	#a_course .course_box dl, #b_course .course_box dl{
		width:48%;
		padding: 20px 0;
	}	
	
#a_course .schedule, #b_course .schedule{
		width:98%;
	}	
	
	.map{
		padding: 20px 0;
	}	
	
	.map p{
		width:100%;
	}	
	
	.price_list{
		width:80%;
	}	
}

/************************************************************
						★スマホ対応
************************************************************/
@media screen and (max-width:599px)  {	
.sp{display: block;}	
.pc{display: none;}

	
/*----------------------------タブ切替 */
.tab-area {	padding: .5em 0 .5em;}
.tab {	width: calc(100%/3 - .2em);}	
/*------------------------------------------------------intro*/
#title{
    height: 400px;
}
	.logo{
		width:80%;
		margin: 0 auto;
	}	

h1{
    height: 455px;
    background-image:url("../img/title_sp.png");
    background-size: contain;
    }

.course_tl{
	padding-bottom:0;
	}	
	
.tab{
    width:calc(100%/2 - 1em);
    padding: 0.5em 0 1.2em 0;
    line-height: 1.3;
    }

.tab-area{
    font-size: 16px;
	line-height: 1.3;
    }
	
.tab-area li{
		padding:0.7em 0 1.2em 0;
	width:40%;
	font-size: 14px;
	}	

.icon_yajisita{
    bottom:0;
    top:auto;
    right:45%;
    }
	
h2{
		padding:10px 0 10px 0 ;
	}	
	
.course_box{
		padding: 30px 0;
	}	
	
.text_center{
		font-size: 0.8em;
		line-height: 1.3;
		padding-top: 10px;
	}	
	
	.hanbai{
		font-size: 1.2em;
	}	
	
	.price_list dt{
		text-align: right;
	}	
	
	.price_list dd{
		text-align: center;
	}	
	
	
#a_course{
		padding: 50px 10px;
		background:#ffe1f3  url("../img/fujibg.png") no-repeat  center bottom/100%;
	}	
	
#a_course .course_box ul, #b_course .course_box ul{
		width:100%;
	}	

#a_course .course_box .point, #a_course .course_box ul li,  #b_course .course_box .course_box_b .point, #b_course .course_box .course_box_b li{
		font-size: 18px;
	}
	
#a_course .course_box ul, #b_course .course_box ul{
		padding: 5px 0 20px 0;
	}	
	
#a_course .course_box dl, #b_course .course_box dl{
	width:100%;
	padding-top:20px;
	}
	
#a_course .schedule, #b_course .schedule{
		font-size: 17px;
		width:96%;
	}
	
#a_course .schedule dt, #b_course .schedule dt{
		width:100%;
	}	
	
#a_course .schedule dt, #a_course .schedule dd, #b_course .schedule dt, #b_course .schedule dd{
		padding: 8px;
	}	
	
#a_course .schedule dd, #b_course .schedule dd{
		width:100%;
	line-height: 1.8;
	}	
	
.map{
		padding: 40px 0;
	}	
	
.map p{
		padding-top: 20px;
	}	

.price_li{
		font-size: 16px;
	}	
	
.price_li span{
		font-size: 16px;
		padding: 3px 5px;
	}	
	
#a_course .detail, #b_course .detail{
    width:90%;
}	
	
	
.detail .icon_yajimigi{
	  top:25%;
		right:3%;
	}	
	
.price{
		text-align: left;
	}

.price_list{
		width:90%;
	}	
	
	.price_list dl{
		width:100%;
	}	
	
.price_list dd{
		font-size: 40px;
	}
	
.price_list dd span{
	font-size: 25px;
	}	
	
/*--------------------------------------------------------------------------------------------------------bコース */
	#b_course{
		padding: 50px 10px;
		background:#e5f6fd  url("../img/fujibg.png") no-repeat  center bottom/100%;
	}	
	
	#b_course .airport{
		font-size: 18px;
		padding: 3px 0px;
		width:90%;
	}
	
	#b_course .course_box_b_left, #b_course .course_box_b_right{
		width:100%;
	}
	
		#b_course	.price_list dl{
		width:100%;
			/*padding-bottom: 1em;*/
	}	
	
/*--------------------------------------------------------------------------------------------------------link */    
.link_wrap{
    padding: 50px 10px;
    }

.link_wrap li{
     width:100%;   
    }

.link_wrap li:first-of-type{
    margin-bottom: 20px;
    }

}


#a_course  .mae .detail,  #b_course  .mae .detail{
    display: block;
    background: #B9B9B9;
    color: #ffffff;
    padding: 20px 0;
	font-size: 1.15em;
   
}

#a_course .detail a,  #b_course .detail a{
	font-size: 1.15em;
   
}

/*--------------------------------------------------24/11/11追加　soldout */ 
.soldout{
	position: relative;
}
.soldout::before{
	content: "満席御礼";
	position: absolute;
	top:1.7em;
	left:9em;
	background:rgba(233,250,4,0.85);
	color: #FF0509;
	padding: 0 1em;
	font-weight: 800;
	transform: rotate(-15deg);
}
