@charset "UTF-8";

/*-----------------------------------------------------
sub
-------------------------------------------------------*/

#sub_content{
    padding: 160px 0 0 0;
	background: url(../../images/sub/bg2.png) no-repeat right -28px top 60px, url(../../images/sub/bg.png) no-repeat left -28px top 1000px;
}

.sub_main{
	padding: 100px 0 200px 0;
}

.sub_title{
	padding: 0 0 70px;
}

/*-----------------------------------------------------
global_sub
-------------------------------------------------------*/
.g_sub_t1{
	font-family: 'notoSerifJP', serif;
  	display:flex;
  	flex-direction: column;
	gap: 14px;
	text-align: left;
}

.g_sub_t1 h2{
	font-size: var(--s40);
	font-weight: 500;
}

.g_sub_t1 span{
	font-size: var(--s16);
	display: block;
}

.g_sub_t1 span{
	font-size: var(--s16);
	display: block;
}


.g_sub_text{
	line-height: var(--lh18);
}

.g_sub_text span{
	font-weight: bold;
	display: block;
}


/*-----------------------------------------------------
sub_table
-------------------------------------------------------*/

.sub_table{
}

.sub_table dl{
    padding: 30px 0px;
    border-bottom: solid 1px #ddd;
    display: flex;
    justify-content: space-between;
    line-height: var(--lh18);
}

.sub_table dl dt{
    padding-left: 20px;
    width: 25%;
    font-weight: bold;
}

.sub_table dl dd{
    padding-left: 20px;
    width: 75%;
}


/*-----------------------------------------------------
news
-------------------------------------------------------*/
.news_box ul{
  	display:flex;
  	flex-direction: column;
	gap: 40px;
}

.news_box ul li{
	border-bottom: 1px solid #ddd;
	padding-bottom: 40px;
}

.news_box ul li:last-child{
	border-bottom: none;
}

.news_box ul li a{
  	display:flex;
    justify-content: space-between;
}

.news_box ul li .img{
	width: 30%;
}

.news_box ul li .text{
	width: 62%;
}

.news_box ul li .text .time{
	font-size: var(--s14);
	display: block;
	margin-bottom: 12px;
}

.news_box ul li .text .t{
	display: block;
	line-height: var(--lh16);
}

.news_st{
	font-size: var(--s24);
	line-height: var(--lh16)!important;
}

.news_stime{
    font-size: var(--s14);
	margin-bottom: 20px;
}

.news_simg{
	padding: 60px 0;
	width: 70%;
	margin: 0 auto;
}

.news_stext{
	line-height: var(--lh20);
}

/*-----------------------------------------------------
course
-------------------------------------------------------*/

.course_box{
	display:flex;
  	flex-direction: column;
	gap: 60px 0;
	margin-bottom: 60px;
}

.course_list{
	border-bottom: 1px solid #ddd;
	padding-bottom: 40px
}

.course_list:last-child{
	border-bottom: none;
	padding-bottom: 0px
}

dl.course_datail{
	display:flex;
  	flex-direction: column;
	gap: 40px 0;

}

dl.course_datail dt{
	width: 100%;
}

dl.course_datail dd{
	width: 90%;
	margin: 0 auto;
}

.course_ct{
	display:flex;
	justify-content: flex-start;
	align-items: flex-end;
	gap: 0 16px;
	margin-bottom: 26px;
}

.course_ct h3{
	color: var(--color2);
	font-size: var(--s32);
}


dl.course_datail dt span.price{
	font-size: var(--s32);
	color: var(--color1);
	margin-bottom: 16px;
	display: block;
}

dl.course_datail dt span.price:last-child{
	margin-bottom: none;
}

dl.course_datail dt span.text{
	font-size: var(--s22);
	color: #000!important;
	display: inline-block;
	margin-right: 10px;
}

dl.course_datail dt span.price span.tax{
	font-size: var(--s17);
	color: #000!important;
}

dl.course_datail dt p{
	padding: 20px 0 0;
	line-height: var(--lh18);
}

dl.course_datail dt p span{
	font-size: var(--s16);
	display: block;
	margin-top: 10px;
}

.course_drink{
    padding: 40px 80px;
    background: url(../../images/index/bg.jpg) repeat;
	margin-bottom: 40px;
}

.course_drink .g_t1{
	text-align: left;
    margin-bottom: 30px;
}

.course_drink p{
	line-height: var(--lh16);
}

.course_others{
    padding: 40px 80px;
    background: url(../../images/index/bg.jpg) repeat;
}

.course_others .g_t1{
	text-align: left;
    margin-bottom: 30px;
}

.course_others p{
	color: var(--color2);
	font-size: var(--s26);
	margin-bottom: 16px;
}

.course_others span.price{
	font-size: var(--s32);
	color: var(--color1);
	margin-bottom: 16px;
	display: block;
}

.course_others span.price:last-child{
	margin-bottom: none;
}

.course_others span.text{
	font-size: var(--s22);
	color: #000!important;
	display: inline-block;
	margin-right: 10px;
}

.course_others span.price span.tax{
	font-size: var(--s17);
	color: #000!important;
}

.course_others span.price span.hosoku{
	font-size: var(--s17);
	color: #000!important;
}

/*-----------------------------------------------------
season
-------------------------------------------------------*/

.season_box{
	display:flex;
  	flex-direction: column;
	gap: 60px 0;
}

.season_list{
	width: 100%;
	margin: 0 auto;
	border-bottom: 1px solid #ddd;
	padding-bottom: 40px
}

.season_list:last-child{
	border-bottom: none;
}


dl.season_datail{
	display:flex;
  	flex-direction: column;
	gap: 40px 0;
}

dl.season_datail dt{
	width: 100%;
}

dl.season_datail dd{
	width: 70%;
	margin: 0 auto;
}

dl.season_datail dt h3{
	font-size: var(--s32);
	margin-bottom: 18px;
}

dl.season_datail dt span.price{
	font-size: var(--s32);
	color: var(--color1);
	display: block;
}

dl.season_datail dt span.hosoku{
	display: block;
	margin-top: 16px;
}


dl.season_datail dt span.text{
	font-size: var(--s26);
	color: #000!important;
	display: inline-block;
	margin-right: 10px;
}

dl.season_datail dt span.price span.tax{
	font-size: var(--s17);
	color: #000!important;
}



/*-----------------------------------------------------
menu
-------------------------------------------------------*/

.menu_t{
	font-size: var(--s32);
	color: var(--color2);
	margin-bottom: 40px;
	font-weight: normal;
}

.menu_list ul.menu_img{
  	display:flex;
	justify-content: flex-start;
  	flex-wrap: wrap;
	gap: 0 2%;
	margin-bottom: 60px;
}

.menu_list ul.menu_img li{
	width: 28%;
}

.menu_list ul.menu_img li span{
	font-size: var(--s14);
	display: block;
	margin-top: 10px;
}


.menu_list ul.menu_text{
  	display:flex;
	justify-content: flex-start;
  	flex-wrap: wrap;
	gap: 20px 3%;
	margin-bottom: 26px;
}

.menu_list ul.menu_text li{
	width: 31.3333%;
	line-height: var(--lh14);
  	display:flex;
    justify-content: space-between;
    align-items: center;
	padding: 0 0 14px;
	border-bottom: 1px solid #ddd;
	font-size: var(--s17);
}

.menu_list ul.menu_text li p{
	width: 66%;
}

.menu_list ul.menu_text li span{
	width: 34%;
	display: block;
	text-align: right;
	color: var(--color1);
}

.menu_hosoku{
	font-size: var(--s16);
	margin-bottom: 60px;
}

/*-----------------------------------------------------
lunch
-------------------------------------------------------*/
.lunch_text {
	margin-bottom: 40px;
}

.lunch_text p{
	line-height: var(--lh18);
}

.lunch_text span.s{
	font-size: var(--s16);
}

.lunch_menu{
	margin-bottom: 36px;
}

.lunch_menu h3{
	color: var(--color2);
	font-size: var(--s26);
	margin-bottom: 16px;
}

.lunch_menu h3 span.price{
	font-size: var(--s32);
	color: var(--color1)!important;
	display: inline-block;
	margin-left: 10px;
}

.lunch_menu h3 span.tax{
	font-size: var(--s16);
	color: #000!important;
}

.lunch_menu span.s{
	font-size: var(--s16);
	line-height: var(--lh18);
}

.lunch_menu p{
	padding-top: 16px;
	line-height: var(--lh18);
}

.lunch_list dl{
	display:flex;
  	flex-direction: column;
	gap: 60px;
}

.lunch_list dl dt{
	width: 70%;
	margin: 0 auto;
}

.lunch_list dl dd{
	width: 100%;
}

.lunch_list dl dd p{
	color: var(--color2);
	font-size: var(--s20);
	margin-bottom: 16px;
}

.lunch_list dl dd ul{
	display:flex;
	justify-content: flex-start;
  	flex-wrap: wrap;
	gap: 30px 1%;
	margin-bottom: 60px;
}

.lunch_list dl dd ul li{
	width: 19.2%;
}

.lunch_list dl dd ul li span{
	display: block;
	text-align: center;
	padding-top: 16px;
	line-height: var(--lh14);
}

.lunch_img{
	width: 70%;
	margin: 0 auto 60px;
}

/*-----------------------------------------------------
demae
-------------------------------------------------------*/
.demae_text {
	margin-bottom: 40px;
}

.demae_text p{
	line-height: var(--lh18);
}

.demae_text span.t{
	font-size: var(--s32);
	display: block;
	margin-bottom: 16px;
}

.demae_text span.t span{
	color: var(--color1);
}

.demae_text span.s{
	font-size: var(--s16);
}

.demae_img{
	width: 80%;
	margin: 40px auto 0px;
}

.demae_pgf{
  	display:flex;
    align-items: center;
	justify-content: flex-start;
	gap: 0 10px;
}

.demae_pgf img{
	width: 28px;
}

/*-----------------------------------------------------
hachimori
-------------------------------------------------------*/

.hachimori_box{
	display:flex;
  	flex-direction: column;
	gap: 100px 0;
}

dl.hachimori_datail{
	display:flex;
    justify-content: space-between;
}

dl.hachimori_datail dt{
	width: 45%;
}

dl.hachimori_datail dd{
	width: 50%;
}

dl.hachimori_datail dd h3{
	color: var(--color2);
	font-size: var(--s26);
	margin-bottom: 16px;
}

dl.hachimori_datail dd h3 span{
	font-size: var(--s44);
	display: inline-block;
	margin-left: 10px;
}

dl.hachimori_datail dd span.price{
	font-size: var(--s32);
	color: var(--color1);
	margin-bottom: 30px;
	display: block;
}

dl.hachimori_datail dd span.price span{
	font-size: var(--s17);
	color: #000;
}

dl.hachimori_datail dd p{
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	padding: 30px 0;
	line-height: var(--lh18);
}

dl.hachimori_datail dd p.text{
	border: none!important;
	padding: 0 0 20px 0!important;
	line-height: var(--lh18);
}

dl.hachimori_datail dd p span{
	font-size: var(--s16);
	display: block;
}

.hachimori_table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

.hachimori_table td {
	width: 25%;
	border: 1px solid #ddd;
	padding: 12px 10px;
	text-align: center;
	font-size: var(--s16);
	line-height: var(--lh16);
}

.hachimori_box2{
	display:flex;
  	flex-direction: column;
	gap: 80px 0;
}

.hachimori_list2 dl.hachimori_datail dt{
	width: 30%!important;
}

.hachimori_list2 dl.hachimori_datail dd{
	width: 66%!important;
}


/*-----------------------------------------------------
option
-------------------------------------------------------*/
.option_box{
	display:flex;
  	flex-direction: column;
	gap: 40px 0;
}

.option_list{
	border-bottom: 1px solid #ddd;	
	padding: 0 0 40px;
}

.option_list h3{
	margin-bottom: 16px;
	font-weight: bold;
}

.option_list p{
	line-height: var(--lh18);
}


.option_other{
	border: 1px solid #ddd;
	padding: 20px 26px;
	margin-top: 26px;
	display: inline-block;
	color: var(--color1);
	line-height: var(--lh18);
}

.option_other span{
	font-weight: bold;
}

.option_img{
	width: 230px;
	margin-top: 26px;
}

.option_img2 ul{
	display:flex;
	justify-content: flex-start;
	gap: 26px;
	margin-top: 26px;
}

.option_img2 ul li{
	width: 40%;
}

.option_img2 ul li span{
	display: block;
	padding-top: 16px;
	font-size: var(--s15);
	text-align: center;
}


/*-----------------------------------------------------
floor
-------------------------------------------------------*/

.floor_t{
	display:flex;
    align-items: center;
	gap: 30px;
	margin-bottom: 40px;
}

.floor_t h3{
	width: 70px;
	text-align: left;
    font-size: var(--s38);
	font-weight: 500;
    font-family: 'notoSerifJP', serif;
	border-right: 1px solid #ccc;
}

.floor_t p{
	line-height: var(--lh16);
}

.floor_t p span{
	display: block;
	margin-top: 6px;
	font-size: var(--s15);
}


.floor_table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	margin-bottom: 50px;
}

.floor_table td {
	border: 1px solid #ddd;
	padding: 20px 0;
	text-align: center;
	font-size: var(--s16);
}

.floor_box ul{
  	display:flex;
	justify-content: flex-start;
  	flex-wrap: wrap;
	gap: 12px 1%;
	margin-bottom: 100px;
}

.floor_box ul:last-child{
	margin-bottom: 0px;
}

.floor_box ul li{
	width: 32.6666%;
}


/*-----------------------------------------------------
access
-------------------------------------------------------*/
.access_map {
	margin-top: 100px;
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}

.access_map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/*-----------------------------------------------------
mail
-------------------------------------------------------*/

.mail_tb{
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	border-top: 1px solid #eaeaea;
	padding: 0 0 0;
}

.mail_tb th,
.mail_tb td{
	padding: 50px 0 0 0;
	line-height: var(--lh16);
	text-align: left;
}

.mail_tb th{
	width: 28%;
	background: #fff;
}

.mail_tb td{
	width: 72%;
	background: #fff;
}

.mail_tb td input{
}

.mw_wp_form .error{
	font-size: 14px!important;
}


.mail_tb span.hissu{
	display: inline-block;
	margin: 0 0 0 8px;
	background: #F13716;
	padding: 4px 6px;
	font-size: var(--s13);
	color: #FFF;
	border-radius: 3px;
}

.mail_tb td input[type=text],[type=email],[type=tel]{
	width: 100%;
    height: 48px;
    padding: 15px;
    box-sizing: border-box;
    border: 1px solid #eaeaea;
    background: #f7f7f7;
    border-radius: 3px;
}

.mail_tb td span.input_s input[type=text]{
	width: 60%;
}

.mail_tb td span.input_ss input[type=text]{
	width: 20%;
}

.mail_tb td input[type="text"]:focus, textarea:focus{
    border: 2px solid #eaeaea !important;
    outline: 0;
    box-sizing: border-box;
    transition: all 0.1s ease-out;
}

input:focus::-webkit-input-placeholder {
	color: transparent;
}
input:focus::-moz-placeholder {
	color: transparent;
}
input:focus::-ms-input-placeholder {
	color: transparent;
}
input:focus::placeholder {
	color: transparent;
}

.mail_tb ::placeholder {
    color:#9f9e9f;
}

.mail_tb td label{
	display: inline-block;
	margin: 0 10px 0 0;
}

.mail_tb select{
	border:1px solid #ccc;
	padding: 4px 10px;

}

.mail_tb input[type=radio]{
	display: inline-block;
	position: relative;
	top:1px;
	margin: 6px 0;
}

.mail_tb input[type=checkbox]{
	display: inline-block;
	position: relative;
	top:2px;
	margin: 6px 0;
}

.mail_tb td input[type=file]{
	display: block;
	margin: 0 0 10px;
}

.mail_tb td span.txt{
	display: inline-block;
	margin: 0 16px 0 0;
}


.mail_tb td span.txt2{
	display: inline-block;
	margin: 0 16px 0 10px;
}


.mail_tb td textarea{
	width: 100%;
    height: 200px;
    padding: 15px;
    border: 1px solid #eaeaea;
    box-sizing: border-box;
    background: #f7f7f7;
    border-radius: 3px;
}


.mail_bt{
	width: 100%;
	box-sizing: border-box;
	background: #fff;
	padding: 60px 0px 0 0px;
	border-collapse:0;
	border-spacing:0;
	text-align: center;
}

.mail_bt input.submit{
	width: 36%;
	padding: 22px 0 22px 0;
	border-radius: 100px;
	position: relative;
	display: inline-block;
	text-align: center;
	font-size: var(--s15);
	background: #fff;
	font-weight: bold;
	border: 1px solid #005BAC;
	cursor: pointer;
	color: #000000;
}

.mail_bt input.submit:hover{
	text-decoration: none;
    opacity: 0.8;
	cursor: pointer;
}

.trigger_other{
    height: 60px !important;
    margin-top: 15px;
}

/*-----------------------------------------------------
privacy
-------------------------------------------------------*/

.privacy_box{
	padding: 40px 0 0 0;
}

.privacy_box .text{
    line-height: var(--lh18);
    margin-bottom: 40px;
}

.privacy_box .list .row:first-child{
    border-top: 1px solid #ccc;
}

.privacy_box .list .row{
    padding: 35px 0px;
    border-bottom: 1px solid #ccc;
}

.privacy_box .list .row h3{
    display: block;
    font-weight: bold;
    padding-bottom: 16px;
}

.privacy_box .list .row p{
    line-height: var(--lh18);
}


/*-----------------------------------------------------
pagenation
-------------------------------------------------------*/

.pagenation{
	width: auto;
	text-align: center;
	margin: 0 auto;
  	display:-webkit-box;
	display: -webkit-flex;
  	display:-ms-flexbox;
  	display:flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
	gap: 6px 10px;
}

a.page-numbers,
.pagination .current{
    color: #000;
	text-align: center;
	line-height: 1;
	padding: 14px 16px;
	display: inline-block;
	background: #fff;
	border: 1px solid #ccc;
	text-decoration: none;
	border-radius: 6px;
}

.current {
    color: #fff;
	background: var(--main_color);
	text-align: center;
	line-height: 1;
	padding: 14px 16px;
	display: inline-block;
	text-decoration: none;
	border-radius: 6px;
}

a.page-numbers:hover,
.pagination a:hover .current a:hover {
	color: #fff;
	background: var(--main_color);
	border: 1px solid var(--main_color);
	text-decoration: none;
}

/*-----------------------------------------------------
breadcrumb
-------------------------------------------------------*/

#breadcrumb{
}

#breadcrumb ul{
    display: flex;
	justify-content: flex-end;
	padding-right: 30px;
}

#breadcrumb ul li{
    display: flex;
    font-size: var(--s13);
    white-space: nowrap;
}

#breadcrumb ul li::after {
    content: '>';
    padding: 0px 8px;
}


#breadcrumb ul li:last-child::after {
    content: none;
    padding: 0px;
}
