@charset "UTF-8";
/* CSS Document */

html {
	height: 100%;
	font-size:62.5%;
    -webkit-text-size-adjust: 100%;
        -ms-text-size-adjust: 100%;	
}
body {
	font-size:16px;
	line-height:normal;
	color:#707070;
	font-family:'Noto Serif JP', serif;
	display: flex;
	flex-flow: column;
	min-height: 100vh;
	background: #FFFAE6
}


header {
	position: fixed;
	z-index: 1001;
	width:100%;
	height: 60px;
	background: #000;
	/*box-shadow: 0px 1px 5px rgba(0,0,0,0.1);*/
	color:#fff;
}

main {
	width:100%;
	padding-top: 80px;/* header固定分*/
	flex: 1;
}

footer {
	width:100%;
	/*padding-top:100px;*/
	position: relative;
}

img {max-width: 100%; height: auto;}

div,ul,li,p {box-sizing: border-box;}

	.shw,.shw-sp {display:none;}
	.hyd,.hyd-sp {display: block;}

.dan-1 {text-indent: -1em; padding-left: 1em;}
.dan-2 {text-indent: -2em; padding-left: 2em;}
.dan-3 {text-indent: -3em; padding-left: 3em;}
.dan-5 {text-indent: -5em; padding-left: 5em;}
.dan-6 {text-indent: -6em; padding-left: 6em;}

.anc {display: block; padding-top: 60px; margin-top: -60px;}

.lh17 {line-height: 1.7;}
.lh15 {line-height: 1.5;}
.lh13 {line-height: 1.3;}
.lh12 {line-height: 1.2;}
.lh10 {line-height: 1.0;}


.sp-lft {
	text-align: center;
}

@media screen and (max-width:600px){
body {
	font-size:14px;}	
	.shw {display:block;}
	.hyd {display: none;}	
	.sp-lft {
	text-align: left;
	}
}

/* ----------------------------- Layout 
*/

/* Loading背景画面設定　*/
#splash {
/*fixedで全面に固定*/
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background:#fff;
  text-align:center;
  color:#fff;
}

/* Loading画像中央配置　*/
#splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Loading アイコンの大きさ設定　*/
#splash_logo img {
  /*width:260px;*/
}

.inner {width:1020px; padding-left: 10px; padding-right: 10px; margin-left: auto; margin-right: auto;}
.inner__430,.inner__rm {
	/*max-width:430px;*/
	max-width: 860px;
	margin-left: auto;
	margin-right: auto;
}
@media screen and (max-width:1019px){
	.inner {width:93.75%; padding-left: 0px; padding-right: 0px;}
}

@media screen and (max-width:860px){
	.inner__430 {
		width:90%;
	}
}
	
@media screen and (max-width:600px){
	.inner__430 {
		width:86%;
	}
	.inner__rem {
		width: 100%
	}
}

/* ---------------------------- Color
*/

.gld {color:#e6be45;}
.gld__2 {color:#cca600;}
.whi {color:#fff;}
.blk {color:#000;}


/* ---------------------------- Background
*/



/* ---------------------------- header 
*/

header h1 {
	margin: 0;
	padding: 0;
	line-height: 1; 
	font-size: 1.8rem;
	/*border:1px solid #f00; */
}
header h1 img{
	vertical-align: middle;
}


.header__inner {
	display: flex;
	flex-flow: row;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	padding: 0 20px;
}


@media screen and (max-width:600px){
	header h1 {}
	
}

/* ---------------------------- NAVI 
*/

.header__lang ul {
	display: flex;
	flex-flow: row;
	justify-content: center
	/*border:1px solid #f00*/
}
.header__lang ul li a {
	color:#707070;
}
.header__lang ul li a:hover {
	color:#fff;
}
.header__lang ul li {
	color:#707070;
	margin: 0 5px
}

.header__lang .on {
	color:#fff;
	border-bottom:1px solid #fff;
}


nav {display: flex; 
	flex-flow: row; 
	justify-content: flex-end;
	/*border:1px solid #f00; */
	flex: 1}

.header__nav {display: flex; flex-flow: row;}
.header__nav li a { color: #fff;}
.header__nav li a:hover {color:#f1db99;}
.header__nav li{font-size: 1.4rem; margin-right: 1.5em}

@media screen and (max-width:800px){
	
	.header__lang {margin-right: 45px;}	
.header__lang ul li {
	margin: 0 5px;
	font-size: 3vw
}

	

header {height: 50px;}
	
.head__btn {display: none;}	
nav {display: none;}
	
	.header__nav { width: 93.75%; margin: 0 auto; display: block; margin-bottom: 20px}
	.header__nav li{font-size: 1.4rem; padding: 0.7em 0; margin-right: 0; text-align: center}

	
header nav {
	position: fixed;
    right: 0px;
    width: 100%;
	height: 100vh;
    background: #000;
	box-shadow: 0px 1px 4px rgba(0,0,0,0.3);
    top: 50px;
	z-index: 50;
    transition: all 0.3s ease;
    opacity: 0;
    display: none;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
  header nav.active {
    opacity: 1;
  }
  header nav.block {
    display: block;
  }		
	
header #menu-button {
    position: absolute;
    top: 7px;
    right: 10px;
    width: 45px;
    height: 35px;
	display: block;
  }
  header #menu-button > div {
    width: 25px;
    height: 1px;
    background: #707070;
    position: absolute;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  header #menu-button > div:nth-child(1) {
    top: 25%;
    left: 6px;
    -webkit-transform: translate(0%, 0%);
    -moz-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    -o-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }
  header #menu-button > div:nth-child(2) {
    top: 50%;
    left: 6px;
  }
  header #menu-button > div:nth-child(3) {
    top: 75%;
    left: 6px;
    -webkit-transform: translate(0%, 0%);
    -moz-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    -o-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }
  header #menu-button.active > div:nth-child(1) {
    top: 50%;
    -webkit-transform: translate(-5%, -50%) rotate(45deg);
    -moz-transform: translate(-5%, -50%) rotate(45deg);
    -ms-transform: translate(-5%, -50%) rotate(45deg);
    -o-transform: translate(-5%, -50%) rotate(45deg);
    transform: translate(-5%, -50%) rotate(45deg);
  }
  header #menu-button.active > div:nth-child(2) {
    opacity: 0;
  }
  header #menu-button.active > div:nth-child(3) {
    top: 50%;
    -webkit-transform: translate(-5%, -50%) rotate(-45deg);
    -moz-transform: translate(-5%, -50%) rotate(-45deg);
    -ms-transform: translate(-5%, -50%) rotate(-45deg);
    -o-transform: translate(-5%, -50%) rotate(-45deg);
    transform: translate(-5%, -50%) rotate(-45deg);
  }	
	
}


/* ---------------------------- btn
*/

.btn {
	display:inline-flex;
	flex-flow: row;
	justify-content: center;
	align-items: center;
	transition: 0.3s all ease
}

.btn__yoyaku {
	font-size: 1.2rem;
	color:#fff;
	width:212px;
	height: 38px;
	background: #707070;
	border:1px solid #707070;
}

.btn__yoyaku:hover {
	color: #333;
	background: #fff;
}

.btn__food {
	font-size: 1.6rem;
	color:#333;
	width:220px;
	height: 54px;
	background: #fff;
	border:1px solid #707070;
	position: relative
}
.btn__food::after {
	position: absolute;
	top:50%;
	right:10px;
	transform: translateY(-50%);
	content: ">"
}
.btn__food__waku {
	border:1px solid #707070;
	height: 80px;
	width: 78px;
	display: inline-flex;
	align-content: center;
	justify-content: center;
	background: url("../img/ic_arrow_2.png") center no-repeat;
	background-size: 25%;
	transition: 0.3s ease all;
}
.btn__food__waku:hover {
	background: url("../img/ic_arrow_2_wh.png") center no-repeat #707070;
	background-size: 25%;
}

/* text */
h2,h3,h4 {
	font-weight: normal
}

h3 {font-size: 1.7rem}

.f__mt {
	font-family: 'Zen Maru Gothic', sans-serif;
	letter-spacing: 0.2em;
}
.tel__link {color:#707070;}

.tate {
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	line-height: 3;
	letter-spacing: 0.3em;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	display: inline-block;	
	/*white-space: pre; safai taisaku */
	/*border:1px solid #f00;*/
}
.tategaki {
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	line-height: 3;
	letter-spacing: 0.3em;
	text-align: left;
	display: inline-block;	
	/*white-space: pre; safai taisaku */
	/*border:1px solid #f00;*/
}
.mv__text.tate {
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	line-height: 3;
	letter-spacing: 0.3em;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	display: inline-block;	
	/*white-space: pre; safai taisaku */	
}
.ky__txt.tate {
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	line-height: 3;
	letter-spacing: 0.3em;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	display: flex;
	flex-flow: row;
	align-items: center;
	/*border:1px solid #f00;*/
}
p {font-size: 1.4rem}
.txt__lage {font-size:1.6rem}
.txt,.txt__lage {
	line-height: 2.5;
}
.read__L {
	letter-spacing: 0.5em
}

.f__tit {
    display: flex;
    flex-flow: row;
    justify-content: center;
    align-items: center;
    margin-bottom: 40px;
}
.f__tit span {
    position: relative;
        display: flex;
    flex-flow: row;
    justify-content: center;
    align-items: center;
}
.f__tit span::before {
    content: "";
    display: block;
    width:3em;
    height: 1px;
    background: #999;
    margin-right: 1.5em;
}
.f__tit span::after {
    content: "";
    display: block;
    width:3em;
    height: 1px;
    background: #999;
    margin-left: 1.5em;
}

@media screen and (max-width:600px){
	.read__wrap .tate {
	font-size:  5.5813953488372094vw
		}
	p {
		font-size: 3.25581vw;
	}
	.txt__lage {
		font-size: 3.7209vw;
	}
}


/* ---------------------------- main
*/
.mv__wrap {
	padding-top: 100px;
	height: 100vh;
	display: flex;
	flex-flow: column;
	align-items: center;
	background-blend-mode: multiply;
	background-color: rgba(0,0,0,0.3);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	/*border:1px solid #f00;*/
}
.mv {
	background-image: url(../img/mv_img.jpg);
}
.ky {
	background-image: url(../img/ky_img.jpg) ;
}
.food {
	background-image: url(../img/food_img.jpg) ;	
}
.room {
	background-image: url(../img/room_img.jpg) ;	
}
.hs {
	background-image: url(../img/hs_img.jpg) ;		
}
.rec {
	background-image: url(../img/rec_img.jpg) ;		
}


.mv__text{
	flex: 1;
}
.mv__text p {
	font-size: 20px; color: #fff; 
	letter-spacing: 1em}
.mv__logo {
	margin-bottom: 60px;
}

.mv__arrow {
	margin-bottom: 60px;
}
@media (orientation: landscape){
	.mv__wrap {
		height: 900px;
	}
	.tate {
		white-space: pre;
	}
	.hs__ku__inner.tate,.mv__text.tate {
		white-space:normal;
	}

}
@media screen and (min-width:600px) and (max-width:1000px){
		.mv__wrap {
		height: 900px;
	}	
}
@media screen and (max-width:600px){
.mv__wrap {
	padding-top: 100px;
	height: 100svh;
	display: flex;
	flex-flow: column;
	align-items: center;	
	background-size: cover;
}	
	.mv {
			background-image: url(../img/mv_img_sp.jpg);
	}
	.mv__logo {width: /*40px*/20vw}
}

@media screen and (max-width:600px){
	.mv__arrow img{
		height: 60px;
		width: 16px;
		object-fit: cover;
		object-position: 100% 100%;
	}
	.mv__text p {font-size: 4.0vw;letter-spacing: 0.8em}
	.mv__logo {
	width:15vw;
	margin-bottom: 30px;
	}
}
@media screen and (max-width:375px){
	.mv__text p {font-size: 3.4vw;}
		.mv__logo {
	margin-bottom: 20px;
	}
}

/* top read */
.read__wrap {
	max-width:1000px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 100px;
	text-align: center;
}
.read__wrap > div {
	padding: 40px/*70*/ 0;
	/*border:1px solid #f00;*/
}
.read__wrap .tate h2 {
	font-size:20px;/*24*/
	font-weight: normal;
	letter-spacing: 0.7em;
}
@media screen and (max-width:600px){
	.read__wrap .tate h2 {
		font-size:4vw;
	}
}

.read__wrap.mbs {
	max-width:1000px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 90px;
	text-align: center;
	/*border:1px solid #f00;*/
}
.read__wrap.mbs > div {
		padding: 70px 0 0;
	/*border:1px solid #f00;*/
}

.read__wrap.ohs > div {
		padding: 70px 0 30px;
	/*border:1px solid #f00;*/
}

/* top food */
.top__food__wrap {
	max-width:830px;
	height: 580px;/*750*/
	margin-left: auto;
	margin-right: auto;
	background: url("../img/top_food_img_pc_2.jpg")top right no-repeat;
	background-size: cover;
	display: flex;
	flex-flow: column;

}
.top__food__wrap .read__wrap {
	margin-left: 15px;
	text-align: left;
	color: #fff;
	/*border:1px solid #f00;*/
	flex: 1;
}
.top__food__wrap .read__wrap .tate{
	white-space: normal
	
}
.top__food__wrap .read__wrap > div {
	padding: 70px 0 35px;
}
.top__food__wrap .read__wrap > p {
	margin-left: 15px;
}

.btn__food__wrap {
	margin-left: 30px;
	margin-bottom: 100px
}

@media screen and (max-width:600px){
.top__food__wrap {
	max-width:830px;
	min-height: 750px;
	margin-left: auto;
	margin-right: auto;
	background: url("../img/top_food_img_2.jpg")top right no-repeat;
	background-size: cover;
	display: flex;
	flex-flow: column;

}	
}

/* access */
.top__access__wrap .read__wrap {
	margin-bottom: 60px
}
.top__access__wrap .read__wrap > div {
	padding: 60px 0 0;
	/*border:1px solid #f00;*/
	/*padding: 100px 0 35px;*/
}


/* map */
.map__wrap {max-width:860px; height: 460px; margin-left: auto; margin-right: auto;}

@media screen and (max-width:600px){
	.map__wrap {width:86%; height: 220px;}
}

/* slider */
.slider__wrap {max-width:860px/*430*/; margin-left: auto; margin-right: auto}

/* top movie */
.top__movie-box {
	position: relative;
	padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
	height: 0;
	overflow: hidden;
}

.top__movie-box iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* member */
.top__member__wrap{
	padding: 20px;
	max-width: 860px;
	margin-left: auto;
	margin-right: auto;
	border:1px solid #ccc;
	background: #fff
}

/* pc view */
.pc__view {
	display: flex;
	flex-flow: row;
	justify-content: space-between;
	align-items: center;
	max-width:860px;
	margin-left: auto;
	margin-right: auto;
}
.pc__L {
	width:45%;
}
.pc__R {
	width:55%;
}
@media screen and (max-width:860px){
	.pc__view {
		display: block
	}
	.pc__L {
		width:100%;
	}
	.pc__R {
		width:100%;
	}	
}

/* --------------------------------- kyoto 
*/
.top__kyoto__wrap {

}

.ky__wave__wrap {
	background: url("../img/ic_wave_2r.jpg") center no-repeat;
	background-size:  auto 100%;
	width: 100%;
	min-height: 600px;
	display: flex;
	flex-flow: column;
	justify-content: center
}


@media screen and (max-width:600px){
.ky__wave__wrap {
	background: url("../img/ic_wave_2r.jpg") center no-repeat;
	background-size: cover;
	width: 100%;
	min-height: 300px;
}
}

.ky__wrap {
	overflow: hidden;
}

.ky__inner {
	max-width: 860px;/*430*/
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-flow: row;
	justify-content: space-between;
}
.ky__inner__re {
	max-width: 860px;
	margin-left: auto;
	margin-right: auto;	
	display: flex;
	flex-flow: row-reverse;
	justify-content: space-between;
}
.rm__inner__re {
	max-width: 860px;
	margin-left: auto;
	margin-right: auto;	
	display: flex;
	flex-flow: row;
	justify-content: space-between;
}
.ky__ph {
	width:56.279%;
}
.ky__txt {
	width:43.7209%;
	padding-left: 15px;
	display: flex;
	flex-flow: column;
	justify-content: center;
}

.ky__inner__re .ky__ph {
	width:50%;
}
.ky__inner__re .ky__txt {
	width:43.7209%;
	padding-right: 15px;	
}

.ic__wave_L {
	position: relative;
	margin-bottom: 40px;
}
.ic__wave_L::after {
	position: absolute;
	left:-20px;
	bottom: -30px;
	content: "";
	width:112px;
	height: 24px;
	background: url("../img/ic_wave_3r.jpg") no-repeat;
	background-size: cover;
}
.ic__wave_R {
	position: relative;
	margin-bottom: 40px;
}
.ic__wave_R::after {
	position: absolute;
	right:-40px;
	bottom: -30px;
	content: "";
	width:112px;
	height: 24px;
	background: url("../img/ic_wave_3r.jpg") no-repeat;
	background-size: cover;
}

@media screen and (max-width:600px){
.ky__txt {
	width:43.7209%;
	padding-left: 15px;
	display: flex;
	flex-flow: column;
	justify-content:flex-start
}	
	
}
/* --------------------------------- food 
*/

.wave__4__warp {
	width:376px;
	height: 64px;
	margin-left: -40px;
}
@media screen and (max-width:600px){
	.wave__4__warp {
		width: 87.4418%;
		margin-left: -40px;}
}

.food__oshinagaki__wrap {
/*	background: #f7f7f7;*/
	padding-bottom: 90px
}


.ohs__wrap,
.ohs__wrap__kobetu{
	background: #fff;
	border:1px solid #707070;
}
.ohs__box {
	padding: 15px;
}
.ohs__open {
	display: flex;
	flex-flow: row;
}
.ohs__open img {vertical-align: middle; /*border:1px solid #f00*/}
.ohs__list {
	display: flex;
	flex-flow: row;
	width: calc(100% - 15px);
	/*border:1px solid #f00;*/
}
.ohs__tit {font-size: 1.8rem;}
.ohs__tit span {margin-right: 1em}
.ohs__tit small {font-size: 1.3rem}
.period {width:6em}

.ohs-btn {
	transition: 0.3s all ease
}
/*
.ohs-btn:hover {
	cursor: pointer
}
*/
.ohs__wrap:hover,
.ohs__kobetu:hover{
	cursor: pointer
}
.ohs-btn.ac__up {
transform:rotate(180deg);
}
.oshi {
	padding-top: 40px;
	text-align: center
}
.oshi > div {
	display: inline-block;
	/*border:1px solid #f00;*/
}


.cefu__wrap {
	padding-top: 270px;
}
.food__wave__wrap {
	background: url("../img/ic_wave_2_2r.jpg") center no-repeat;
	background-size:  auto 100%;
	width: 100%;
	height: 623px;/*336*/
	display: flex;
	flex-flow: column;
}


.food__wave__inner {
	position: relative;
	max-width: 860px;/*430*/
	margin-left: auto;
	margin-right: auto;
}

.food__tit {
	position: absolute;
	top:-25%;
	left:10%;	
	background: #fff;
	border:1px solid #707070;
	height: 280px;
	padding: 10px calc(1em + 2px);
		display: flex;
		justify-content: center;	
}
.tate.food__tit {
	position: absolute;
	top:-25%;
	left:10%;
	text-align: center;	
}

.kondate__list {
		line-height: 2.5;
	text-align: center;
}

.exp {
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  line-height: 1;
  letter-spacing: 0.3em;		
  display: inline-block;	
      text-align: center;
}

@media screen and (max-width:600px){
	.food__wave__wrap {
		background-size: cover;
			height: 336px;/*336*/
	}
	.food__wave__inner {
			max-width: 430px;/*430*/
	}
	.cefu__img {
		padding-left: 20px;
		height: 270px;
	}
	.tate.food__tit {
	position: absolute;
	top:-50%;
	left:10%;
	text-align: center;	
	}
	.food__tit {
	position: absolute;
	top:-50%;
	left:10%;
	text-align: center;	
		height: 240px;
	}	
	.kondate__list {
	font-size: 3.25581vw;
	}	
}

/* --------------------------------- room 
*/
.rm__tit {
	line-height: 1;
	border-bottom: 1px solid #707070;
	text-align: right
}
.rm__tit span {
		letter-spacing: 0.5em;
}

.inner__430.rm__wv_2 {
	max-width: 860px;
	margin-left: auto;
	margin-right: auto
}

.kei {
 height: 0;
  margin: 0;
  padding: 0;
  border: 0;
	border-bottom:1px solid #707070;
}

@media screen and (max-width:600px){
	.rm__tit {
		margin-left: 15px;
		padding-right: 15px;
		font-size:4vw
	}
	.rm__wv {
		margin-left: -40px
	}
	.inner__430.rm__wv_2 {
		width:120%;
		margin-left: -10%;
	}	
}

/* link btn */

.link__btn__cnet {
	display: flex;
	flex-flow: row;
	justify-content: center;
}
.link__btn__right {
	display: flex;
	flex-flow: row-reverse;
	margin-right: 18px;
}


.link__btn {
	display: block;
	color:#707070;
	position: relative;
	padding: 0 20px;
	font-size: 1.6rem;
	font-weight: bold;
	letter-spacing: 0.2em;
}
.link__btn::after {
	position: absolute;
	bottom:-10px;
	left: 18px;
	content: "";
	background: url("../img/arrow.svg") center no-repeat;
	width:100%;
	height: 10px;
}
.link__btn2 {
	position: relative;
	display: block;
	color:#707070;
	padding: 0 20px;
	font-size: 1.6rem;
	font-weight: bold;
	letter-spacing: 0.2em;
	border:1px solid #f00;
}
.link__btn2::after {
	position: absolute;
	bottom:-1em;
	content: "dol";
}

.link__btn__s {
	display: block;
	color:#707070;
	position: relative;
	padding: 0 20px 0 0;
	font-size: 1.1rem;
	font-weight: bold;
	letter-spacing: 0.2em;
	/*border: 1px solid #f00;*/
}
.link__btn__s::after {
	position: absolute;
	bottom:-10px;
	left: 0px;
	content: "";
	background: url("../img/arrow.svg") center no-repeat;
	width:100%;
	height: 10px;
}

@media screen and (max-width:600px){
	.link__btn {font-size: 4vw}
	.link__btn__s {
			padding: 0 12px 0 0;
		font-size: 2.79069vw;
	}
}

/* ---------------------------- history 
*/

.hs__ku__wrap{
	width: 860px;
	height: 860px;
	margin-top: 240px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 50px;
	background: url("../img/hs_ph2.jpg") center no-repeat;
	background-size: cover;
	position: relative;
display: flex;
	flex-flow: column;
	justify-content:center

}
.hs__ku__wrap::before {
	position: absolute;
	content: "";
	/*width:844px;
	height: 148px;
	top:-74px;
	right: -100px;*/
	width:600px;
	height: 105px;
	top:-52px;
	right: -100px;
	background: url("../img/ic_fude_hs1.png") center no-repeat;
	background-size: cover;
}
.hs__ku__wrap::after {
	position: absolute;
	content: "";
	/*width:844px;
	height: 148px;
	bottom:-74px;
	left: -100px;*/
	width:600px;
	height: 105px;
	bottom:-52px;
	left: -100px;	
	background: url("../img/ic_fude_hs2.png") center no-repeat;
	background-size: cover;
}
.hs__ku__kami {
	margin-left: 10%;
	margin-bottom: 15%;
}
.hs__ku__kami > p {
	color:#fff;
	font-size: 20px;
	line-height: 2.5;
	letter-spacing: 0.5em
}

.hs__ku__shimo > p {
	text-align: right;
	font-size: 18px;
	line-height: 2.5;
	letter-spacing: 0.5em
}

.hs__txt__wrap {
	display: flex;
	flex-flow: column;
	align-items: center;
}

.hs__ku__inner {
	background:rgba(255,255,255,0.9);
	padding: 2em 1em;
}

@media screen and (max-width:600px){
	.hs__ku__wrap{
	width: 100%;
	height: 430px;
	margin-top: 140px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
	background: url("../img/hs_ph2.jpg") center no-repeat;
	background-size: 100% auto;
	position: relative;

}
.hs__ku__wrap::before {
	position: absolute;
	content: "";
	width:375px;
	height: 66px;
	top:-10px;
	right: -100px;
	background: url("../img/ic_fude_hs1.png") center no-repeat;
	background-size: cover;
}
.hs__ku__wrap::after {
	position: absolute;
	content: "";
	width:375px;
	height: 66px;
	bottom:-10px;
	left: -100px;
	background: url("../img/ic_fude_hs2.png") center no-repeat;
	background-size: cover;
}	
.hs__ku__kami {
	margin-left: 20px;
	margin-bottom: 100px;
}	
	
	.hs__ku__kami > p {
	color:#fff;
	font-size: 4vw;
	line-height: 2;
	letter-spacing: 0.5em
}

.hs__ku__shimo > p {
	text-align: right;
	font-size: 4vw;
	line-height: 2;
	letter-spacing: 0.5em
}
	
	.hs__ku__inner {
		padding: 1em 0.5em
	}
	.hs__ku__inner p {
		font-size: 3vw;
	}
	
}


/* ---------------------------- top news 
*/

.news__box {
	max-width:860px;
	margin-left: auto;
	margin-right: auto;
}
.news__box h2 {
	border-bottom:1px solid #707070;
	padding-bottom: 10px;
	padding-left: 20px;
	position: relative;
	margin-bottom: 25px;
}
.news__box h2::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	border-bottom:1px solid #707070;
	bottom:-10px;
	left: 0;
}


.news__box h2 span {
	margin-right: 1em;
}
.news__box dl {
	border-bottom:1px solid #707070;
	margin-bottom: 20px;
	padding: 0 20px;
}
.news__box dl dt {
	margin-bottom: 10px
}
.news__box dl dd {margin-bottom: 20px}
.news__box dl dd a{
	color: #707070;
}

@media screen and (max-width:600px){
	.news__box {
		width:90%;
	}
	.news__box h2 {
		font-size: 4vw;
	}
	.news__box h2 small,.news__box dl dt  {
		/*font-size: 3.25581vw;*/
		font-size: 3.25581vw;
	}
	.news__box dl dd  {
		font-size: 3.25581vw;
	}
}

/* ---------------------------- news */
/*news kiji */
dl.tit {
border-bottom:1px dotted #ccc;
padding-left: 20px;
	padding-right: 20px;
margin:0 0 20px 0;
}
dl.tit dt {line-height:1.7; margin-bottom:5px;}
dl.tit dd span {margin-right:5px;}
dl.tit dd {padding-bottom:5px; line-height:1.5; font-size:24px; font-weight:bold;}

@media screen and (max-width:600px){
	dl.tit dd {
		font-size:4vw;
		line-height: 1.5;
	}
}

/* kiji */
#kiji {padding-left: 20px;
	padding-right: 20px;}
#kiji img {max-width:100%; height:auto;}

#kiji table           { display: table }
#kiji h1 { font-size: 2em; margin: .67em 0 ; font-weight: bolder;}
#kiji h2 { font-size: 1.5em; margin: .75em 0; font-weight: bolder;}
#kiji h3 { font-size: 1.17em; margin: .83em 0; font-weight: bolder;}
#kiji h4 { font-size: 1em; margin: .1.12em 0; font-weight: bolder;}
#kiji h5 { font-size: .83em; margin: 1.5em 0; font-weight: bolder ;}
#kiji h6 { font-size: .75em; margin: 1.67em 0; font-weight: bolder; }
#kiji b, #kiji strong {font-weight: bolder;}
#kiji table {border-collapse:separate;}
#kiji th { font-weight: bolder; text-align: center }

#kiji p, #kiji blockquote, #kiji ul, #kiji fieldset, #kiji form, #kiji ol, #kiji dl, #kiji dir {margin: 1.12em 0;}
#kiji blockquote  { margin-left: 40px; margin-right: 40px; }
#kiji i, #kiji cite, #kiji em,
#kiji var, #kiji address    { font-style: italic }
#kiji pre, #kiji tt, #kiji code,
#kiji kbd, #kiji samp   { font-family: monospace }
#kiji button, #kiji textarea,
#kiji input, #kiji select   { display: inline-block }
#kiji pre  { white-space: pre ;}
#kiji big   { font-size: 1.17em ;}
#kiji small, #kiji sub, #kiji sup { font-size: .83em; }
#kiji sub   { vertical-align: sub; }
#kiji sup   { vertical-align: super; }
#kiji table  { border-spacing: 2px; }
#kiji thead, #kiji tbody,
#kiji tfoot  { vertical-align: middle; }
#kiji td, #kiji th  { vertical-align: inherit; }
#kiji s, #kiji strike, #kiji del  { text-decoration: line-through; }

#kiji ol, #kiji ul, #kiji dir,
#kiji menu, #kiji dd  { margin-left: 40px; }
#kiji ul  { list-style-type:disc; }
#kiji ol  { list-style-type: decimal ;}
#kiji ol ul, #kiji ul ol,
#kiji ul ul, #kiji ol ol { margin-top: 0; margin-bottom: 0 ;}
#kiji center { text-align: center }
#kiji :link,#kiji :visited { text-decoration: underline }
#kiji :focus  { outline: thin dotted invert }


#kiji a { word-break: break-all; }
/* ---------------------------- footer 
*/

.footer {
	margin-bottom: 60px;
}

.sns__list {
	display: flex;
	flex-flow: row;
	justify-content: center;
}
.sns__list li {
	margin: 0 10px
}

/* footer link */
.footer__link {
	position: fixed;
	left:0;
	bottom:0;
	width:100%;
	display: flex;
	flex-flow: row
}
.link__res {
	width:50%;
	text-align: center
}
.link__tel {
	width:50%;
	text-align: center
}

.link__res a {
	color: #fff;
	width: 100%;
	height: 48px;
	background: #465340;
	border:1px solid #465340;
	letter-spacing: 0.3em;
}
.link__tel a {
	color: #707070;
	width: 100%;
	height: 48px;
	background: #fff;
	border:1px solid #465340;
	letter-spacing: 0.2em;
}

/* page top */
#pagetop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  margin-left: -40px;
  overflow: hidden;
}
#pagetop a {
  position: absolute;
  top: 0px;
  left: 0px;
  background: #000;
  display: block;
  width: 40px;
  height: 40px;
	border-radius: 50%;
}
#pagetop a::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 12px;
  margin: -5px 0 0 -7px;
  border-top: 3px solid #e6be45;
  border-left: 3px solid #e6be45;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* 2023-10-25 head sns */
.head__sns a {margin: 0 5px;}

/* 2023-12-01 osechi-soldout */
.sold__out,
.sold__out-yoko  {
    position: relative;
        overflow: hidden;
    display: inline-block;
}
.sold__out::before,
.sold__out-yoko::before{
    position: absolute;
    content:"";
    background: rgba(0,0,0,0.4);
    width: 100%;
    height: 100%;
}
.sold__out::after {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    content: "完売御礼";
    background: rgba(255,20,0,0.9);
    color:#fff;
    font-weight: bold;
    top:50%;
    left:50%;
	transform: translate(-50%,-50%);
	width:1em;
	padding: 10px;
	height: 80%;
}
.sold__out-yoko::after {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    content: "完売御礼";
    background: rgba(255,20,0,0.9);
    color:#fff;
	font-size: min(4vw,24px);
    font-weight: bold;
	letter-spacing: 0.2em;
    top:50%;
    left:50%;
	transform: translate(-50%,-50%);
	width:6em;
	padding: 10px 20px;
	height: auto;
}
@media screen and (max-width:480px){
	.sold__out::after {
		height: auto
	}
}

/* 2024-1-25 food */
@media screen and (max-width:480px){
    .price__tab tr,
    .price__tab td{
	display: block
}
    .p-mb {
        margin-bottom: 10px
    }
}

.links {
    color:#707070;
}
.links:hover {
    text-decoration: underline
}

/* 24-11-02 トップ改修*/
.top-box {
	max-width: 860px;
	min-height: 460px;
	margin-left: auto;
	margin-right: auto;
	padding: 40px 35px 80px 70px;
	color:#fff;
}
@media screen and (max-width:600px){
	.top-box {
			padding: 40px 25px 80px;
	}
}
.bg-oshi {
	background: url("../img/top_oshi_bg_250409.jpg") center no-repeat;
	background-size: cover;
}
.bg-room {
	background: url("../img/top_room_bg.jpg") center no-repeat;
	background-size: cover;
}
.bg-kyoto {
	background: url("../img/top_kyoto_bg.jpg") center no-repeat;
	background-size: cover;
}
.bg-his {
	background: url("../img/top_his_bg.jpg") center no-repeat;
	background-size: cover;
}
.link__btn-new {
	display: inline-flex;
	justify-content: center;
	color:#fff;
	position: relative;
	padding: 0 20px;
	font-size: 1.6rem;
	font-weight: bold;
	letter-spacing: 0.2em;
	width: 200px
}
.link__btn-new::after {
	position: absolute;
	bottom:-20px;
	right: 0;
	content: "";
	background: url("../img/arrow2.svg") right center no-repeat;
	background-size: cover;
	width:100%;
	height: 10px;
}
.link__btn-new a {
		color:#fff;
}

/* lang 2025-04-30 */
.lang-wrap {
	position: fixed;
	bottom:80px;
	right: 20px;
	background: #fff;
	box-shadow: 0px 1px 8px rgba(0,0,0,0.1)
}
/*
.lang-wrap select {
  -webkit-appearance: none;
  appearance: none;
	border:none;
	font-size: 16px;
	width: 100px;
	padding: 10px;
	color:#000;	
}
*/

/*
.lang-wrap::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 16px;
    width: 10px;
    height: 10px;
    border-right: 1px solid #333;
    border-bottom: 1px solid #333;
  transform:translateY(-50%) rotate(-135deg); 
transform-origin: center center; 	
  pointer-events: none;
  transition: transform 0.5s ease;
}
.lang-wrap.open::after {
  transform: rotate(45deg); 
}
*/
.arrow {
  display: inline-block;
  margin-left: 10px;
  transition: transform 0.4s ease;
}

.lang-wrap.open .arrow {
  transform: rotate(180deg);
}


.custom-lang-select {
  position: relative;
  width: 100px;
  cursor: pointer;
  user-select: none;
}

.selected {
  border: 1px solid #ccc;
  padding: 5px 10px;
  background: white;
  display: flex;
  align-items: center;
/*  justify-content: space-between;*/
}

.selected img {
/*
  width: 16px;
  height: 12px;
*/
  margin-right: 10px;
	border:1px solid #ccc
}

.dropdown {
  position: absolute;
bottom: 100%; /* ← ここがポイント */
  left: 0;
  width: 100%;
  border: 1px solid #ccc;
  background: white;
  list-style: none;
  padding: 0;
  margin: 0;
  display: none;
  z-index: 10;
}

.dropdown li {
  padding: 5px 10px;
  display: flex;
flex-flow: row;
  align-items: center;
}

.dropdown li img {
/*
  width: 16px;
  height: 12px;
*/
  margin-right: 10px;
	border:1px solid #ccc	
}

.dropdown li:hover {
  background: #eee;
}



