@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Klee+One:wght@400;600&display=swap');


/* ================================================================
( ・∋ Reset
================================================================ */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video { margin: 0; padding: 0; border: 0; font-style:normal; font-size: 100%; vertical-align: baseline;}

strong { font-style: normal; font-weight: bold;}
img { border: 0; vertical-align:bottom; -ms-interpolation-mode: bicubic;/*ie7*/}
a img:hover {opacity: 0.6;transition: 0.3s;}
ul,ol { list-style: none;}

/* ================================================================
( ・∋ Base
================================================================ */

body {color: #000; background:#f1f0f5;
	font-family:'Klee One',cursive;
	font-size:1rem; letter-spacing:0;
	line-height: 2.3em;
    font-weight: 600;
    font-size: 1.2rem;
	}
p{ margin-top:-8px;}

table { width:100%; border-collapse: collapse;border-spacing: 0;margin-bottom: 20px;border-top:#c9c8c8 solid 1px;}
th,td { padding: 10px;border-bottom:#c9c8c8 solid 1px;}
th { width:25%; text-align:left; font-weight:normal;}

a:link, a:visited{color:#000;text-decoration: none; transition:0.3s;}
a:hover, a:active{color:#000;text-decoration: none;outline: 0;}
a:focus { outline: thin dotted/*chrome*/;}

h2{ margin:0 0 60px 0;}
h4{font-size:16px;}
.title_line_b{ position:relative; min-width:90px;}
.title_line_b:after{background:#c9c8c8; width:90px; height:1px; display:block; content:""; position:absolute; bottom:-24px;}
.title_line_t{ position:relative; display:inline-block;}
.title_line_t:after{background:#c9c8c8; width:1px; height:40px; display:block; content:""; position:absolute; top:-50px; left:0; right:0; margin:0 auto;}

#toggle{display:none;}
.sp_display{display:none;}
#menu{ display: none; z-index:-100; position:absolute;}

/* Clear Settings
-----------------------------------------------------------------------------*/
.clearfix:before,.clearfix:after {content:"";
  display:table;}
.clearfix:after { clear:both;}
.clearfix { clear:both; zoom:1;}


#header_wrap {width: 100%;height: 100%;position: relative;overflow:hidden;}
h1{position:absolute; right:30px; top:30px; z-index:100;}
nav {position: absolute; top:30px; left:20px;z-index:100;}
nav ul{}
nav li{ float:right; margin:0 0 0 20px;}
nav li:last-cihld{margin:0 0 0 0;}
#cuisine header , #facilities header , #reservation header , #enkai header , #access header , #history header , #miyage header , #kiseian header{ width:100%; height:400px;}
.header_image{ position:absolute; top:0; left:0;width:100%; height:400px; z-index:-1;}
#facilities .header_image{background:url(../img/facilities/header.jpg) no-repeat center top;background-size:cover;}
#reservation .header_image{background:url(../img/reservation/header.jpg) no-repeat center top;background-size:cover;}
#access .header_image{background:url(../img/access/header.jpg) no-repeat center top;background-size:cover;}
#enkai .header_image{background:url(../img/enkai/header.jpg) no-repeat center top;background-size:cover;}
#kiseian .header_image{background:url(../img/kiseian/header.jpg) no-repeat center top;background-size:cover;}
#history .header_image{background:url(../img/history/header.jpg) no-repeat center top;background-size:cover;}
#miyage .header_image{background:url(../img/miyage/header.jpg) no-repeat center top;background-size:cover;}
#cuisine .header_image{background:url(../img/cuisine/header.jpg) no-repeat center top;background-size:cover;}

main{margin:0 auto; padding:100px 0 200px 0; width:1200px; display: block;}
section{margin:0 0 100px 0;}
.wrapper , .inner{ clear:both;width:min(100%,1200px); margin:0 auto;position:relative;}
main:after , section:after , .wrapper:after , .inner:after{content:"";display:table;clear:both;}


/*common*/
.w800 , .w700 , .w370 , .w600 , .w420 , .w300{position:relative;}
.w800{width:800px;}
.w700{width:700px;}
.w600{width:600px;}
.w370{width:370px;}
.w420{width:420px;}
.w300{width:300px;}

/*共通レイアウト*/
.center{text-align:center;}
.f_left{ float:left;}
.f_right{ float:right;}
.pl30{padding-left:30px; box-sizing:border-box;}
.pr30{padding-right:30px; box-sizing:border-box;}
.pl15{padding-left:15px; box-sizing:border-box;}
.pl200{padding-left:200px; box-sizing:border-box;}
.pr15{padding-right:15px; box-sizing:border-box;}
.pl50{padding-left:50px; box-sizing:border-box;}
.mb16{margin-bottom:16px;}
.mb40{margin-bottom:40px;}
.mt40{margin-top:40px;}
.mt60{margin-top:60px;}
.mt100{margin-top:100px;}
.mt140{margin-top:140px;}
.mt150{margin-top:150px;}
.mt230{margin-top:230px;}
.ml300{margin-left:300px;}
.mt-16{ margin-top:-16px;}
.pc_center{text-align:center;}
.m_auto{margin-left:auto; margin-right:auto;}
.left_line:after , .right_line:after{position:absolute;  height:1px; display:block; content:""; background:#c9c8c8;}
.left_line:after{ top:8px; left:-130px;width:120px;}
.right_line:after{ top:8px; right:-180px;width:170px;}
.d_table{ display:table;}
.image_box{}
.image_box img , .image_box video{width:100%;}
.movie_col{ height:590px;}
.movie_box01{position:absolute; width:450px; top:350px; left:80px;}
.slider_col01{ width:900px; margin:0 auto;}
.slider_col01 .bx-wrapper{ height:600px; margin:0 0 50px 0;}
.slider_col01 p{width:800px;}
.s_line_t{ border-top:#c9c8c8 solid 1px; padding:60px 0; margin:0 0 0 0;}
.s_line_b{border-bottom:#c9c8c8 solid 1px; margin:0 0 60px 0;}


/* Footer
-----------------------------------------------------------------------------*/
footer{background:#6e6860; color:#fff; clear:both; padding:40px 0; margin:0;  width:100%;}
.f_menu{ width:420px;}
.f_menu li{ width:14px; float:right; margin:0 0 0 24px;-ms-writing-mode: tb-rl; -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl;}
.f_menu li:last-child{margin:0 0 0 0;}
.f_menu li a{color:#fff; letter-spacing: 0.3rem;}
.f_logo{ width:340px;}
.f_logo h4{margin:0 0 8px 0;}
.f_logo a{margin:0 16px 0 0; display:inline-block;}
.f_logo a:last-of-type{margin:0 0 0 0;}

footer, footer *,.f_bn,.f_bn *{
    box-sizing: border-box;
}
.f_bn{ 
    display:flex; flex-wrap: wrap; justify-content:center;
    
    padding:200px 0 0 0; 
    width:100%; 
    margin:0 auto 10px auto;
}

.f_bn a{margin:0 1rem;}

.f_bn img{
    width:100%;
    height:auto;
}
    .sns_icon{
        display:flex;
        justify-content: center;
        gap:20px;
        width: min(90%,930px);
        margin:20px auto;
    }
.sns_icon a img{
    width:50px;height:50px;
}

@media screen and (max-width:980px){
    .f_bn{ justify-content:space-around;}
    .f_bn a{width:48%; margin:0 0 1rem 0;}


}
/*
.f_bn a{ float:left;margin:0 20px 0 0; display: inline-block;}
.f_bn a:last-of-type{margin:0 0 0 0;}*/
footer address{text-align:center; font-size:11px; letter-spacing:0; font-style:normal; padding:30px 0 0 0;}


#pagetop {
	position: fixed;bottom:80px;right: 20px; z-index:1000;}
	#pagetop a { background:url(../img/pagetop.svg) no-repeat;text-decoration: none;text-align: center;display: block;height:16px;width: 40px;line-height: 1.4em;}

/* ================================================================
( ・∋ Index
================================================================ */
.plan_rss{width:800px;}
.plan_rss h2{width:27px; text-align:center; margin:0 65px 0 0;}
.plan_rss h2 img{margin:0 0 40px 0;}
.plan_rss h2 a{}
.plan_rss a{ display:block; margin:0 30px 0 0;}
.plan_rss a:last-child{margin:0 0 0 0;}
.plan_rss div{width:216px;}
.plan_rss div img{width:100%; margin:0 0 16px 0;}
.news{ border-top:#f3f2f0 solid 1px;}
.news li{ background:url(../img/arrow01.png) no-repeat right center;border-bottom:#f3f2f0 solid 1px; padding:0 20px 0 0;}
.news a{ display:block; padding:16px 0;}
.news span{float:left; margin:0 20px 0 0;}
.news p{margin:0 0 0 0;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.t_news{ display:table-cell; vertical-align:middle; height:250px; text-align:center;}

.sunset_box{
	clear: both;
	display: inline-block;
	margin-bottom: 80px;
	width:100%;
}
.sunset_txt a{
	border: 1px solid #c9c8c8;
	padding: 10px 20px;
	display: inline-block;
}

/* MainVisual
-----------------------------------------------------------------------------*/
#mainVisual {width: 100%;height: 100%; max-height:950px;position: relative;}
#mainVisual .slash{ margin:0; padding:0; position:absolute;background:url(../img/movie_bg.png) repeat; width:100%; height:100vh; z-index:8;}
#mainVisual .base01{ top:0; left:0;position:absolute;background:url(../img/h_base01.png) repeat; width:100%; height:270px; z-index:7;}
#mainVisual .base02{ bottom:0; left:0;position:absolute;background:url(../img/h_base02.png) repeat; width:100%; height:270px; z-index:7;}
#index div#mainVisual:after {
	content: "";
	display: block;
	clear: both;
	width: 100%;
	height: 90.88%;
	background-size:cover;
	position: absolute;
	right: 0px;
	top: 0px;
	}




/* ----------------------------------------------------
            動画
----------------------------------------------------- */
#index video {
  min-width: 1300px;
  width: 100%;
  opacity: 1;
  left: 0;
  top: 0;
}

/* ================================================================
( ・∋ SP 959に変更
================================================================ */

@media screen and ( max-width:959px )
{
#header_wrap{ overflow: visible;}
h1{position:absolute; left:20px; top:0; z-index:100;}
h1 img{width:100px;}
h2{ margin:0 0 40px 0;}
table { width:100%; border-collapse: collapse;border-spacing: 0;margin-bottom: 20px;border-top:none;}
th,td { display:block;border-bottom:none; box-sizing:border-box;padding:10px;}
th { width:100%; text-align:left; background:#e8e8e8; }
h3{margin:0 0 14px 0;}
#mainVisual{display:none;}
#index video { min-width: 100%;}
#cuisine header , #facilities header , #reservation header , #enkai header , #access header , #history header , #miyage header , #kiseian header{ width:100%; height:200px; background-size: contain;}
.header_image{top:60px; left:0;width:100%; height:150px; background-size:100% auto;}
main{margin:0 auto; padding:60px 0; width:90%; display: block;}
section{margin:0 0 40px 0;}
.wrapper , .inner{ clear:both;width:90%; margin:0 5%;position:relative;}
/*common*/
.w800 , .w700 , .w370 , .w600 , .w420 , .w300{ width:100%; margin:0 0 14px 0;}
/*共通レイアウト*/
.center{text-align:center;}
.f_left{ float:none;}
.f_right{ float:none;}
.pl30{padding-left:0;}
.pr30{padding-right:0;}
.pl15{padding-left:0;}
.pl200{padding-left:0;}
.pr15{padding-right:0;}
.pl50{padding-left:0;}
.mb16{margin-bottom:16px;}
.mb40{margin-bottom:40px;}
.mt10{margin-top:10px;}	
.mt40{margin-top:40px;}
.mt60{margin-top:0;}
.mt100{margin-top:14px;}
.mt140{margin-top:14px;}
.mt150{margin-top:14px;}
.mt230{margin-top:14px;}
.ml300{margin-left:0;}
.mt-16{ margin-top:0;}
.pc_center{text-align:left;}
.title_line_b{ margin:0 0 32px 0; position:relative; min-width:90px;}
.title_line_t{ margin:0 0 14px 0;}
.title_line_t:after{ height:40px; display:block; content:""; position:absolute; top:-50px; left:0; right:0; margin:0 auto;}
.m_auto{margin-left:auto; margin-right:auto;}
.left_line:after , .right_line:after{height:0; display:none;}
.d_table{ display:table;}
.image_box{}
.image_box img , .image_box video{width:100%;}
.movie_col{ height:auto;}
.movie_box01{position:absolute; width:100%; top:290px; left:80px;}
.slider_col01{ width:100%; margin:0 auto;}
.slider_col01 .bx-wrapper{ height: auto; margin:0 0 50px 0;}
.slider_col01 p{width:100%;}
.s_line_t{ padding:20px 0;}
.s_line_b{margin:0 0 30px 0;}
/* Footer*/
footer{padding:0 0 20px 0;width:100%;}
footer .inner{width:100%; margin:0 0 0 0;}
#pagetop {position: fixed;bottom:20px;right: 20px;}
#pagetop a { background:#FFF url(../img/pagetop.svg) no-repeat center center; padding:10px;text-decoration: none;text-align: center;display: block;height:16px;width: 40px;line-height: 1.4em;}
.f_menu{ width:100%;}
.f_menu li{ padding:0; text-align:center;}
.f_menu li{ width:50%; float:left; margin:0 0 0 0;-ms-writing-mode:horizontal-tb; -webkit-writing-mode: horizontal-tb; writing-mode: horizontal-tb;}
.f_menu li:nth-child(2n) a{ background:#e4e4e4;}
.f_menu li:nth-child(3n) a{ background:#e4e4e4;}
.f_menu li:nth-child(4n) a{ background:#ececec;}
.f_menu li:nth-child(7n) a{ background:#e4e4e4;}
.f_menu li:nth-child(9n) a{ background:#ececec;}
.f_menu li:nth-child(11n) a{ background:#e4e4e4;}
/*.f_menu  li a{background:#ececec; margin:0 0 0 0;  font-size:13px;float:left;display:block;width:100%;padding:20px 0; letter-spacing:0;}*/
 .f_menu  li a{background:#ececec; color:#000; margin:0 0 0 0;  font-size:1rem;float:left;display:block;width:100%;padding:20px 0; letter-spacing:0;}   

.f_logo{ clear:both; width:90%; margin: 0 auto; text-align:center; padding:40px 0 0 0;}
.f_logo h4{margin:0 0 16px 0;}
.f_logo img{width:100%;}
.f_logo a{ display:block;margin:0 0 24px 0;}
.f_logo h4 img{width:50%;}
.f_logo p{ margin:16px 0 0 0;}
.f_logo img:last-of-type{margin:0 0 0 0;}

.f_bn{ padding:40px 0 0 0; width:90%; margin:0 auto;}
/*
.f_bn a{ width:40%;margin:0 5% 20px 5%; display: inline-block;}
*/
.f_bn a img{width:100%;height:auto;}
/*.f_bn a:last-of-type{margin:0 5% 20px 5%;}*/
footer address{text-align:center; font-size:11px; letter-spacing:0; font-style:normal; padding:30px 0 0 0;}
/*index*/
.plan_rss{width:100%;}
.plan_rss h2{width:100%; text-align:left; margin:0 0 24px 0;}
.plan_rss h2 img{ float:left;margin:0 0 0 0;}
.plan_rss h2 a{ float:right;}
.plan_rss h2:after{clear:both; display:table; content:"";}
.plan_rss a{ display:block; margin:0 0 0 0;}
.plan_rss a:last-child{margin:0 0 0 0;}
.plan_rss div{width:100%; margin:0 0 16px 0;border-bottom:#f3f2f0 solid 1px; padding:0 0 16px 0;}
.plan_rss div img{width:100%; margin:0 0 16px 0;}
.news li{padding:0 20px 0 0;}
.news a{ display:block; padding:16px 0;}
.news span{float:none; margin:0 0 16px 0;}
.news p{margin:0 0 0 0;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.t_news{ display: block; vertical-align:middle; height:auto;}
/*sp_only*/
.pc_display{display:none;}
.sp_display{display: block;}
.sp_display video{width:100%;}
.sp_center{text-align:center;}
.sp_mb40{margin-bottom:40px;}
#toggle{display : inline-block;position: absolute; top:20px; right:20px;z-index:10000;}
#toggle a{display: block;text-decoration: none;}
/*#toggle img{height:70px;}
*/#menu{ display: none;background-color:rgba(0,0,0,0.8);position:absolute;top:60px; z-index:100;}
#menu nav {   width:100%; clear:both; padding:20px 0 0 0; }
#menu ul{ display:inherit;height:auto; padding:20px 0 30px 0;}
#menu li{ float:left; width:50%; padding:0 0 15px 0; margin:0 0 16px 0;border-bottom:#aaa dashed 1px; box-sizing:border-box; font-size:15px; text-align:center;}
#menu nav li:nth-last-child(2){padding:0 0 15px 0;border-right:#aaa dashed 1px;}
#menu li a{display:block; height:100%; width:100%; color:#FFF;}
.menu-trigger,
.menu-trigger span {display: inline-block;transition: all .4s;box-sizing: border-box;}
.menu-trigger {
	position: relative;
	width: 50px;
	height: 24px;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #040404;
	border-radius: 2px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 10px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger span:nth-of-type(2)::after {
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background-color: #040404;
	border-radius: 4px;
	transition: all .2s;
}
.menu-trigger.active span:nth-of-type(1) {
	transform: translateY(20px) scale(0);
}
.menu-trigger.active span:nth-of-type(2) {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2)::after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
.menu-trigger.active span:nth-of-type(3) {
	transform: translateY(-20px) scale(0);
}
.sunset_txt a{text-align: center; display: table;  margin: 0 auto;
}
}


/*sightseeing*/
.ss_box{
	clear: both;
	display: inline-block;
	margin-bottom: 80px;
	width:100%;
}.ss_txt h3{
	font-size: 1.3em;
	border-bottom: 1px solid #c9c8c8;
	padding-left: 20px;
}
.route{
	display: flex;
	align-items: center;
	margin-top: 5px;
}
.route:before {
	content: "";
	flex-grow: 0.02;
	height: 1px;
	display: block;
	width:30px;
}
.route:before {
	background: #ccc;
	margin-right: 10px;
}
.ika{background-color:#f0f0f0; padding: 10px;}
.ika h5{font-weight:bold;}

@media screen and ( min-width:960px ){
	.ss_txt{width:600px;}
	.ss_txt div{padding: 15px 30px; font-size:17px;}
}

.letter {
	width:100%;
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin:20px auto;
	box-sizing:border-box;
	
}

.letter_text {
	width:100%;
	background:url(../img/bg05.jpg) repeat;
	padding:10px 10px;
	box-shadow:2px 2px 3px rgba(0,0,0,0.08);
	margin-top:10px;
	margin-bottom:10px;
}
.letter_text h4{
		border-bottom:1px solid #c9c8c8;
			line-height:1.4em;
	width:5.5em;
	margin-bottom:15px;
	
}
.letter_text p{
		line-height:2em;
		margin-bottom:10px;
	width:100%;
	letter-spacing:-0.3px;
}
.letter_text p.yadomei{
		font-size:11px;
	text-align: right;
	margin-right:1em;
	max-width:328px;
	margin-bottom:0px;
}
.qr_wrap{
	width:100%;
	display:flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	padding:10px 0px 0px 5px;
	box-sizing:border-box;
	margin-top:10px;
}
.qr_wrap p{
	line-height:1.2em;
	font-size:10px;
	padding:0px;
	text-align: center;
	width:50%;
	box-sizing:border-box;
}
.qr_wrap p img{
	margin:0 auto;
	padding:3px;
}
@media screen and ( min-width:960px ){
.letter{width:600px;margin:20px auto 0 0 ;flex-wrap: nowrap;}
.letter_text {
		width:370px;
	padding:15px;
	margin-bottom:0px;
}

	.letter_text p{
		line-height:2em;letter-spacing:inherit;
}
.letter_text p.yadomei{
	margin-right:1em;
}	
	.qr_wrap{
	width:260px;
		justify-content: center;
		margin-top:20px;
}

	
	
	
	
}

img.tate_1line_img{
    width: 1.5em;
    height: auto;
}

.cuisine_txt01{width:100%; padding:0 2rem 0 0; box-sizing: border-box;} 
.cuisine_txt02{max-width:450px; padding:0 2rem 0 0; box-sizing: border-box;} 
.history_01{max-width:450px;}
.kiseian_01{max-width:440px;}

.cuisine_title01{width:30px!important;}

.sp_on{display: none;}
.pc_on{display: inline;}

@media only screen and (max-width: 767px){
	.sp_on{display: inline;}	
	.pc_on{display: none;}
	}

.limited_wrap > h4{
     font-size: clamp(24px,2.6vw,26px);
    place-items:center;
    place-content: center;
    text-align: center;
    margin-bottom:clamp(20px,3vw,30px);
}	
.limited{
    display: grid;
    gap: 0px;
    grid-template-columns: 1fr;
    filter: drop-shadow(0 3px 5px rgba(0,0,0,0.1));
}

.limited>.text_wrap{
    display: grid; 
}
.limited>.text_wrap{
    padding: 20px clamp(40px,5vw,50px) 35px;
    background-color: #f3fbff;
    background-image: linear-gradient(170deg, #fff 0%, #f3fbff 50%, #D5EBEF 100%);
    position: relative;
}
.limited>.text_wrap .kazari{
    width:50px;
    aspect-ratio: 1;
    position: absolute;
    bottom: 20px;
    right: 20px;
}
.limited>.text_wrap h5{
    background: #fff;
    width:min(100%,200px);
    text-align: center;
    line-height: 1.5;
    margin-block:15px 5px;
/*    box-shadow:2px 2px 0 rgba(0,0,0,0.1);*/
    border-bottom:2px solid rgba(0,0,0,0.1);
}
.topping li{
    line-height: 1.5;
}
@media screen and (min-width:481px){
.limited>.text_wrap{
    place-items:center;
    place-content: center; 
}
}
@media screen and (min-width:960px){
    .limited{
        grid-template-columns: repeat(2,1fr);
    }
}
@media screen and (max-width:480px){
    .limited .text_wrap ul{
        justify-self: start;
    } 
    .text_wrap h5{
        justify-self: center;
        width:100%;
    } 
}