@charset "UTF-8";
/* =================================== */
/*	Basic Style
/* =================================== */

body{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	line-height: 1.6;
}

/* title
----------------------*/
h2,h3,h4,h5,h6{
	margin-bottom:20px;
	line-height: 1.6;
}

h2{font-size:26spx;}
h2.h2-s{font-size:22px !important;}
h3{font-size:22px;}
h4{font-size:18px;}

ul,dl{
	margin:0;
	padding:0;
}


/* text
----------------------*/

/* color */
.txt-black{color:#000 !important;}
/* .txt-white{color:#fff !important;} */

/* size */
.txt-s{font-size:12px;}
.txt-l{font-size:22px;}

/* others */
.txt-cl{text-align:center;}
.txt-b{font-weight:bold;}
.txt-n{font-weight:normal;¥}

.en {
	font-family: 'Great Vibes', cursive;
	color: #9e8f5c;
	font-size: 1.2em;
}

/* link
----------------------*/
a{
	-webkit-transition: all ease-in-out .3s;
	transition: all ease-in-out .3s;
}

a:focus, a:active, a:hover{
	outline: 0;
}

/* tel */
a[href^="tel:"] {
	cursor: default;
}


/* button
----------------------*/
/* fontawesome new */
/*.btn:before {
   	font-family: "Font Awesome 5 Free";
   	content: "\f007";
    margin-right: 7px;
}*/

/* fontawesome old */
.btn:before {
    font-family: 'FontAwesome';
    content: '\f105';
    margin-right: 7px;
}

.btn {
    padding: 13px 20px;
    font-size: 14px;
}

/* btn-default */
.btn-default {
  color: #fff;
  background-color: #9e8f5c;
  border-color: #9e8f5c;
}
.btn-default:focus,
.btn-default:hover,
.btn-default:active {
  color: #9e8f5c;
  background-color: #fff;
  border-color: #9e8f5c;
}


/* btn- */
.btn-info {
  color: #333;
  background-color: #fff;
  border-color: #333;
}
.btn-info:focus,
.btn-info:hover,
.btn-info:active {
  color: #333;
  background-color: #f5f5f5;
  border-color: #333;
}



/* table
----------------------*/
/* table-rwd */
.table-rwd dl{
	border-bottom:1px solid #eaeaea;
}

.table-rwd dl:nth-child(1){
	border-top:1px solid #eaeaea;
	padding-top:15px;
}

.table-rwd dl dt{
	width:25%;
	float:left;
	margin-bottom:15px;
}

.table-rwd dl dd{
	margin:0 0 0 25%;
	margin-bottom:15px;
}

/* row-eq-height
----------------------*/
/* row に付与 */
.row-eq-height {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
}


/* margin padding
----------------------*/
.mgnB0 {margin-bottom:0 !important;}
.mgnB5 {margin-bottom:5px !important;}
.mgnB10 {margin-bottom:10px !important;}
.mgnB15 {margin-bottom:15px !important;}
.mgnB20 {margin-bottom:20px !important;}
.mgnB30 {margin-bottom:30px !important;}
.mgnB40 {margin-bottom:40px !important;}
.mgnB50 {margin-bottom:50px !important;}
.mgnB60 {margin-bottom:60px !important;}
.mgnB70 {margin-bottom:70px !important;}
.mgnB80 {margin-bottom:80px !important;}
.mgnB100 {margin-bottom:100px !important;}

.mgnT0 {margin-top:0 !important;}
.mgnT5 {margin-top:5px !important;}
.mgnT10 {margin-top:10px !important;}
.mgnT20 {margin-top:20px !important;}
.mgnT30 {margin-top:30px !important;}
.mgnT40 {margin-top:40px !important;}
.mgnT50 {margin-top:50px !important;}
.mgnT60 {margin-top:60px !important;}
.mgnT70 {margin-top:70px !important;}
.mgnT80 {margin-top:80px !important;}

.mgnL0 {margin-left:0 !important;}
.mgnL5 {margin-left:5px !important;}
.mgnL10 {margin-left:10px !important;}
.mgnL15 {margin-left:15px !important;}
.mgnL20 {margin-left:20px !important;}
.mgnL30 {margin-left:30px !important;}
.mgnL40 {margin-left:40px !important;}
.mgnL50 {margin-left:50px !important;}
.mgnL100 {margin-left:100px !important;}

.mgnR0 {margin-right:0 !important;}
.mgnR1 {margin-right:1px !important;}
.mgnR5 {margin-right:5px !important;}
.mgnR10 {margin-right:10px !important;}
.mgnR15 {margin-right:15px !important;}
.mgnR20 {margin-right:20px !important;}
.mgnR30 {margin-right:30px !important;}
.mgnR40 {margin-right:40px !important;}
.mgnR45 {margin-right:45px !important;}
.mgnR50 {margin-right:50px !important;}
.mgnR90 {margin-right:90px !important;}
.mgnR100 {margin-right:100px !important;}


.pdnT0{padding-top:0 !important;}
.pdnB0{padding-bottom:0 !important;}


/* back to top
----------------------*/
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 12px;
	z-index:9999;
}
#page-top a {
    background: #888;
    text-decoration: none;
    color: #fff;
    padding: 3px 10px 7px;
    text-align: center;
    display: block;
}
#page-top a:hover {
    text-decoration: none;
    background: #999;
}

/* section
----------------------*/
.section-main{
	padding-top:180px;
	padding-bottom: 100px;
	background-color: #510707;
	color:#fff;
	font-size: 16px;
}
@media only screen and (max-width: 767px) {
	.section-main{
		padding-top:80px;
		padding-bottom: 80px;
		overflow: hidden;
	}
}

/* background
----------------------*/
.bg-gray{background: #f3f3f3;}






/*-------------------------------------

TOP

--------------------------------------*/

/* TOP common
----------------------*/
/* image */
ul.photo-outline li img,
dl.shop-info dt img{
	width: 100%;
}

/* title */
.tit-section{
	text-align: center;
	margin-bottom: 40px;
	letter-spacing: 0.1em;
}

.tit-section h2{
	color: #fff;
	font-weight: bold;
	font-size: 34px;
	margin-bottom: 10px;
}

.tit-section h2 span:not(.wednesday):not(.summer){
	display: block;
	font-size: 16px;
}
/* .tit-section h2 span.wednesday {
	display: inline-block;
	font-size: 16px;
	background-color: #5273d6;
    color: #fff;
    border-radius: 5px;
    padding: 0 8px;
} */
/* .tit-section h2 span.wednesday i {
    font-size: 19px;
    background-color: #fff;
    border-radius: 50%;
    color: #5273d6;
    border: 2px solid;
    display: inline-block;
    font-style: normal;
    margin-right: 2px;
    width: 34px;
    height: 34px;
    margin-top: -8px;
    font-weight: 600;
} */
/* .tit-section h2 span.summer {
	display: inline-block;
	font-size: 16px;
	background-color: #d67e52;
    color: #fff;
    border-radius: 5px;
    padding: 0 8px;
} */
.tit-section h2 span.summer i {
	/* font-weight: 800;
    font-size: 1.1em;
	margin-right: 2px; */
    /* background-color: #fff;
    border-radius: 50%;
    color: #d67e52;
    border: 2px solid;
    display: inline-block;
    font-style: normal;
    width: 34px;
    height: 34px;
    margin-top: -8px; */
}

.txt-section{
	text-align: center;
	margin-bottom: 40px;
	font-size: 16px;
}

.tit-shop{
	color: #152243;
	font-weight: bold;
	font-size: 26px;
	margin-bottom: 10px;
}

/* shop info */
dl.shop-info{
	display: flex;
	flex-direction: row;
	width: 50%;
	margin: 0 auto 30px;
}

dl.shop-info dt{
	width: 30%;
	padding-right: 20px;
}

dl.shop-info dd{width: 70%;}
dl.shop-info dd p{
	font-size: 26px;
	font-weight: bold;
}

/* TOP others
----------------------*/
/* header */
.main-visual_img {
	position: relative;
	/* z-index: -1; */
}
.main-visual_img img {
	aspect-ratio: 16/9;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media only screen and (max-width: 767px) {
	.main-visual_img img {
		aspect-ratio: 4/3;
	}
}
.main-visual_wrap {
	position: absolute;
	top: 50%;
	/* left: 50%; */
	right: 5%;
	transform: translateY(-30%);
	z-index: 1;
}
@media only screen and (max-width: 1200px) {
.main-visual_wrap {
	transform: translateY(-50%);
}
}
@media only screen and (max-width: 767px) {
	.main-visual_wrap {
		top: 20%;
		left: initial;
		right: initial;
		width: 100%;
		text-align: center;
		/* bottom: 0; */
		/* transform: translateX(-50%); */
	}
	}
.main-visual .logo{
	margin: 0 0 0 40px;
}

/* .main-visual h1{
    margin-left: auto;
    width: 80%;
} */

/* .main-visual h1 span {
	display: inline-block;
    color: #a04242;
    background-color: rgba(255,255,255,.4);
    padding: 8px 14px;
} */
/* .main-visual h1 i {
	display: inline-block;
    color: #595959;
    font-size: 1.8em;
    font-style: italic;
    background-color: rgba(255,255,255,.4);
    padding: 8px 14px;
    margin-top: 40px;
} */

/* .main-visual h1 img{width: 700px;} */

/* outline */
.section-outline{
	background: #f3f3f3;
	text-align: center;
}

.tit-01{
	/* color: #152243; */
	color: #9e8f5c;
	font-weight: bold;
}
.tit-01 span{
	color: #9e8f5c;
	font-weight: normal;
    font-size: .6em;
    display: block;
}

ul.photo-outline{
	width: 50%;
	list-style: none;
	margin: 0 auto 30px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

ul.photo-outline li{width: 50%;}

.section-outline p{
	font-size: 16px;
	margin-bottom: 40px;
}

/* kiwami */
/* .section-kiwami{
	background: url("../images/top/bg_kiwami.jpg") top center no-repeat;
	width: 100%;
	background-size: cover;
	padding-bottom: 900px;
} */

.tit-section{
	text-align: center;
	margin-bottom: 40px;
}

.tit-section h2{
	color: #152243;
	font-weight: bold;
	font-size: 32px;
	margin-bottom: 15px;
    padding-bottom: 15px;
	position: relative;
}
.menu .tit-section h2::after {
    content: '';
    position: absolute;
    width: 60px;
    height: 1px;
    background: #9d905b;
    left: 0;
    right: 0;
    margin: auto;
    display: block;
    bottom: 0;
}

.tit-section h2 span{
	display: block;
	font-size: 16px;
}

.tit-kiwami p{
	font-size: 23px;
	font-weight: bold;
	color: #152243;
}
.section-kiwami .txt-section {
    -moz-text-shadow:  0px 0px 5px #f2f2fa, 0px 0px 5px #d9dceb, 0px 0px 5px #cdd3e3;
    -webkit-text-shadow:  0px 0px 5px #f2f2fa, 0px 0px 5px #d9dceb, 0px 0px 5px #cdd3e3;
    -ms-text-shadow:  0px 0px 5px #f2f2fa, 0px 0px 5px #d9dceb, 0px 0px 5px #cdd3e3;
    text-shadow: 0px 0px 5px #f2f2fa, 0px 0px 5px #d9dceb, 0px 0px 5px #cdd3e3;
}

/* reserve */
.section-reserve{
	background: url("images/img_04.jpg") top center no-repeat;
	width: 100%;
	background-size: cover;
}

.term{
	font-size: 16px;
	display: block;
}

@media only screen and (max-width: 767px) {

	/* common */
	.btn-vmg{font-size: 10px !important;}

	.tit-section h2{font-size: 28px;}
	dl.shop-info{width: 98%;}
	dl.shop-info dt{width: 40%;}
	dl.shop-info dd p,
	.tit-shop{font-size: 16px;}


	/* others */
/*	.main-visual{padding: 30px 0 0}*/
	.main-visual .logo{margin: 0 0 0 20px;}
	.main-visual .logo img{width: 130px;}
	/* .main-visual h1 img{width: 280px;} */


	ul.photo-outline{width: 88%;}

	.section-kiwami{
		background: url("../images/top/bg_kiwami.jpg") 50% 30% no-repeat;
		padding-bottom: 200px;
	}

	/* .tit-kiwami p{font-size: 15px;}
    .main-visual h1 {
        width: 90% !important;
    }
    .main-visual h1 i {
        font-size: calc(10vw + .2em) !important;
    } */

}


/*-------------------------------------

Detail

--------------------------------------*/

/* Detail common
----------------------*/
/* title */
.tit-section-lined{
	text-align: center;
}
.tit-section-lined span{
	color: #152243;
    font-weight: bold;
    font-size: 44px;
	border-bottom: 1px solid #152243;
	padding-bottom: 7px;
}

.subtit{
	text-align: center;
	color: #6D6240;
    font-weight: bold;
    font-size: 36px;
}

/* restaurant */
.box-restaurant{
	background: center center no-repeat;
	background-size: cover;
	text-align: center;
	padding: 0 20px;
	margin-bottom: 40px;
	height: 590px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	flex-direction: column;
	align-items: center;
	align-content: center;
}

.bg-res-viz-01{background-image: url("../images/detail/viz_01.jpg");}
.bg-res-viz-02{background-image: url("../images/detail/viz_02.jpg");}
.bg-res-fun-01{background-image: url("../images/detail/fun_01.jpg");}
.bg-res-fun-02{background-image: url("../images/detail/fun_02.jpg");}
.bg-res-akg-01{background-image: url("../images/detail/akg_01.jpg");}
.bg-res-akg-02{background-image: url("../images/detail/akg_02.jpg");}
.bg-res-g6-01{background-image: url("../images/detail/g6_01.jpg");}
.bg-res-g6-02{background-image: url("../images/detail/g6_02.jpg");}
.bg-res-g6-03{background-image: url("../images/detail/g6_03.jpg");}

.box-restaurant p{
	color: #fff;
	text-shadow: 1px 1px 2px #000;
	font-size: 20px;
	margin-bottom: 40px;
}

/* propose */
.section{background: #F3F1EB;}

.photo{
	text-align: center;
}

.photo img{
	width: 100%;
}
@media only screen and (max-width: 992px) {
	.photo img,{
		width: 85%;
	}
}

ul.list-propose-plan li,
ul.list-lunch li{
	list-style: none;
	margin: 0 0 30px;
}

ul.list-propose-plan li a{
	display: block;
	text-align: center;
	color: #fff;
	background: center center no-repeat;
	background-size: cover;
	padding: 200px 0px 0px;
	font-size: 20px;
}

ul.list-lunch li a{
	display: block;
	text-align: center;
	color: #fff;
	background: center center no-repeat;
	background-size: cover;
	padding: 400px 0px 0px;
	font-size: 20px;
}

ul.list-propose-plan li a span,
ul.list-lunch li a span{
	display: inline-block;
	background-color: rgba(0,0,0,0.6);
	padding: 10px;
	width: 100%;
}

ul.list-propose-plan li:nth-child(1) a{background-image: url("../images/detail/plan_viz.jpg");}
ul.list-propose-plan li:nth-child(2) a{background-image: url("../images/detail/plan_ksg.jpg");}
ul.list-propose-plan li:nth-child(3) a{background-image: url("../images/detail/plan_fun.jpg");}
ul.list-propose-plan li:nth-child(4) a{background-image: url("../images/detail/plan_akg.jpg");}
ul.list-propose-plan li:nth-child(5) a{background-image: url("../images/detail/plan_g6.jpg");}

ul.list-lunch li:nth-child(1) a{background-image: url("../images/detail/lunch_viz.jpg");}
ul.list-lunch li:nth-child(2) a{background-image: url("../images/detail/lunch_fun.jpg");}
ul.list-lunch li:nth-child(3) a{background-image: url("../images/detail/lunch_akg.jpg");}


/* private room */
ul.list-room li{
	list-style: none;
	margin-bottom: 30px;
	width: 100%;
	text-align: center;
}

ul.list-room li a{
	display: block;
	background: 50% 60% no-repeat;
	background-size: cover;
	height: 610px;
	position: relative;
	color: #6D6240;
	box-shadow: 2px 2px 4px #E0DBCB;
}

ul.list-room li a:hover{
	text-decoration: none;
}

ul.list-room li a h3{
	margin-bottom: 10px;
	line-height: 1;
}

ul.list-room li:nth-child(1) a{background-image: url("../images/detail/room_viz.jpg");}
ul.list-room li:nth-child(2) a{background-image: url("../images/detail/room_ksg.jpg");}
ul.list-room li:nth-child(3) a{background-image: url("../images/detail/room_fun.jpg");}
ul.list-room li:nth-child(4) a{background-image: url("../images/detail/room_akg.jpg");}

.tit-room{
	position: absolute;
	bottom: 0;
	background: #F3F1EB;
	width: 100%;
	padding: 10px 10px;
}

/* lunch */
.section-lunch{background: #fafafa;}


@media only screen and (max-width: 767px) {

	/* common */
	.tit-section-lined span{font-size: 28px;}
	.subtit{font-size: 22px;}

	/* restaurant */
	.box-restaurant{
		margin-bottom: 20px;
		height: 470px;
	}

	.box-restaurant p{
		font-size: 16px;
		margin-bottom: 20px;
		text-align: left;
	}

	/* propose */
	ul.list-propose-plan li,
	ul.list-lunch li{
		margin-bottom: 20px;
	}

	ul.list-propose-plan li a{
		padding: 100px 0px 0px;
		font-size: 14px;
	}

	ul.list-lunch li a{
		padding: 150px 0px 0px;
		font-size: 14px;
	}

	/* private room */
	ul.list-room li a{
		background: 50% 0% no-repeat;
		background-size: 100%;
		height: 310px;
	}


}


/*============================================================
	small desktop
==============================================================*/

@media (min-width: 992px) and (max-width: 1199px) {



}


/*============================================================
	under tablet
==============================================================*/
@media only screen and (max-width: 991px) {


}


/*============================================================
	tablet
==============================================================*/

@media (min-width: 768px) and (max-width: 991px) {




}


/*============================================================
	mobile
==============================================================*/
@media only screen and (max-width: 767px) {

	/* title */
	h2{font-size:22px;}
	h2.h2-s{font-size:18px !important;}
	h3{font-size:18px;}
	h4{font-size:16px;}

	/* text */
	.txt-cl{text-align:left;}

	/* link tel */
	a[href^="tel:"]{
		cursor:pointer;
	}

	/* table */
  	.table-rwd dl dt{
		width:100%;
		float:none;
		margin-bottom:10px;
		font-weight:bold;
	}

	.table-rwd dl dd{
		margin:0;
		margin-bottom:20px;
		font-size:12px;
	}
}



/* --------------------------- */
/* .flow-btn a {
	position: fixed;
	bottom: 20px;
	right: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
  } */
  .text-block {
	height: auto;
	padding-top: 24px;
	padding-bottom: 24px;
	max-width: 85%;
	margin-inline: auto;
  }
@media only screen and (max-width: 992px) {
	.text-block {
		max-width: 100%;
	}
}
  .text-block p {
	text-align: left;
	width: 90%;
	margin-inline: auto;
  }

.main-visual_title img {
	max-width: clamp(30rem, 16.667rem + 17.36vw, 37.5rem);
	width: 100%;
	aspect-ratio: 64/30;
	height: 100%;
	object-fit: contain;
}
/* .main-visual_title span {
font-size: 16px;
display: inline-block;
margin-bottom: 20px;
} */
.main-visual_desc {
	font-size: 20px;
	padding: 30px 3%;
	text-align: left;
	background-color: rgba(0, 0, 0, .6);
	color: #fff;
	font-size: 16px;
	margin-left: auto;
	max-width: 35vw;
	width: 100%;
}
@media only screen and (max-width: 992px) {
	.main-visual_desc.u-sp {
		max-width: initial;
		width: 85%;
		margin-inline: auto;
		background-color:transparent;
		color: #222;
		margin-bottom: 30px;
	}
  }
	.main-visual_btn {
		position: absolute;
		right: 5%;
		bottom: 2%;
	}
@media only screen and (max-width: 992px) {
	.main-visual_btn.u-sp {
		position: relative;
		top: -20px;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
	}
}
.inner {
	max-width: 1000px;
	width: 100%;
	margin-inline: auto;
	padding-left: 20px;
	padding-right: 20px;
}
@media only screen and (max-width: 992px) {
	.inner {
		max-width: 75%;
	}
}
@media only screen and (max-width: 768px) {
	.inner {
		max-width: 100%;
	}
}
.section-block1 {
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.block2 {
	/* background-color: #160707; */
	background-color: #f6f4ef;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding-top: 100px;
	padding-bottom: 100px;
	margin-bottom: 200px;
	/* height: 700px; */
	/* position: relative;
	z-index: 1; */
}
.block3 .inner {
	position: relative;
	z-index: 1;
	/* background-color: #f6f4ef; */
	/* padding-top: 30px; */
}
.block3 .inner::before {
	position: absolute;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	/* background-color: #160707; */
	/* background-color: #3F1515; */
	background: linear-gradient(90deg, transparent 0%,transparent 30%, #f6f4ef 30%, #f6f4ef 100%);
}
@media only screen and (max-width: 992px) {
	.block3 .inner::before {
		background:#f6f4ef;
		width: 95%;
	}
}
.frame1 {
	/* background-color: #f2f2fa; */
	box-shadow: 10px 10px 0 #ded7c7;
}
.frame2 {
	box-shadow: 10px 10px 0 #ded7c7;
}
@media only screen and (max-width: 992px) {
	.tit-section_img {
		max-width: 70%;
		margin-inline: auto;
	}
}
@media only screen and (max-width: 992px) {
	.photo {
		margin-bottom: 30px;
	}
}
/*
.frame2::before,
.frame2::after {
  content: '';
  position: absolute;
  width: 0px;
  height: 0px;
}

.frame2::before {
  top: -10px;
  right: -10px;
  border-top: 30px solid #fcdcd2;
  border-right: 30px solid #fcdcd2;
  border-bottom: 30px solid rgba(0 0 0 / 0);
  border-left: 30px solid rgba(0 0 0 / 0);
}

.frame2::after {
  bottom: -10px;
  left: -10px;
  border-top: 30px solid rgba(0 0 0 / 0);
  border-right: 30px solid rgba(0 0 0 / 0);
  border-bottom: 30px solid #fcdcd2;
  border-left: 30px solid #fcdcd2;
} */

.frame-sub2 {
	max-width: 45%;
	width: 100%;
	margin-inline: auto;
}
@media only screen and (max-width: 992px) {
	.frame-sub1,
	.frame-sub2,
	.frame-sub3 {
		max-width: 85%;
		width: 100%;
		margin-inline: auto;
	}
}
.block2 p,
.block3 p {
	color: #222;
}
.img07 {
	position: relative;
	top: -80px;
}
@media only screen and (max-width: 992px) {
	.img07 {
		top: 0;
	}
}
	/* ----------------------------- */
  .u-sp {
	display: none;
  }
@media only screen and (max-width: 992px) {
	.u-sp {
		display: block;
	  }
}
  .u-pc {
	display: block;
  }
@media only screen and (max-width: 992px) {
	.u-pc {
		display: none;
	  }
}
@media only screen and (max-width: 992px) {
	.reverse {
		display: flex;
		flex-direction: column-reverse;
	}
}
body {
	-webkit-animation: fadeIn 1.5s ease 0s 1 normal;
	animation: fadeIn 1.5s ease 0s 1 normal;
   }
   body.is-hidden {
	overflow: hidden;
   }


   @keyframes fadeIn {
	0% {
	  opacity: 0
	}


	100% {
	  opacity: 1
	}
   }


   @-webkit-keyframes fadeIn {
	0% {
	  opacity: 0
	}


	100% {
	  opacity: 1
	}
   }
