@charset "utf-8";
* {margin:0; padding:0; font-family:'Shippori Mincho', sans-serif ,"Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro","メイリオ", Meiryo, serif; letter-spacing:0.05em; color:#342824; line-height:150%;}

/*body*/
html{scroll-behavior:smooth;}
body{margin:0; padding:0; text-align:center; position:relative; -webkit-text-size-adjust:100%; overflow-x:hidden!important;}
video{filter:drop-shadow(0px 0px rgba(0,0,0,0)); outline:none; border:none;}
img{-ms-interpolation-mode: bicubic; border:none; margin:0; padding:0;}
ul{list-style-type:none; margin:0; padding:0;}
a{text-decoration:none; outline:none; transition:all 0.3s ease; font-weight:normal; line-height:1;}
a,p,span,th,td,li,small{box-sizing:border-box; margin:0; text-align:justify; font-weight:normal; font-size:clamp(0.938rem, 0.908rem + 0.08vw, 1rem);}
h1,h2,h3,h4,h5{margin:0; padding:0; line-height:1; font-weight:normal;}

body{background:url("../img/parts/bg00.png");}
@media only screen and (max-width:1023px){
	body{background-size:60%;}
}
@media only screen and (min-width:1024px){
	body{background-size:auto;}
}

/*header_sp*/
.header_sp{position:fixed; left:0; top:0; width:100%; height:76px; z-index:1; background:rgba(255,255,249,.8); transition:all .5s ease;
		   display:flex; justify-content:flex-start; align-items:center;}
.header_sp .logo{width:clamp(11.688rem, 8.318rem + 9.38vw, 15.625rem); margin-left:24px;}
.header_sp .logo a{display:block; width:100%; height:auto; line-height:1;}
@media only screen and (min-width:1248px){
	.header_sp{display:none;}
}

.hamburger{display:block; position:absolute; z-index:10001; right:clamp(1.5rem, 1.072rem + 1.19vw, 2rem); top:17px; width:42px; height:42px; cursor:pointer; text-align:center;}
@media only screen and (min-width:1248px){
	.hamburger{display:none;}
}
.hamburger span{display:block; position:absolute; width:30px; height:1px; left:6px; background:#342824; transition:all .5s ease;}
.hamburger span:nth-child(1){top:11px;}
.hamburger span:nth-child(2){top:21px;}
.hamburger span:nth-child(3){top:31px; width:15px;}
nav.globalMenuSp.active{display:block; opacity:100;}
.hamburger.active span{background:#342824;}
.hamburger.active span:nth-child(1){top:20px; left:6px; -webkit-transform:rotate(-45deg); -moz-transform:rotate(-45deg); transform:rotate(-45deg);}
.hamburger.active span:nth-child(2){top:20px; -webkit-transform:rotate(45deg); -moz-transform:rotate(45deg); transform:rotate(45deg);}
.hamburger.active span:nth-child(3){display:none;}
nav.globalMenuSp{display:none; position:fixed; z-index:10000; top:0; left:0; background:rgba(255,255,255,.98); text-align:center; width:100%; height:100vh; opacity:0; transition:opacity .3s ease, visibility .3s ease; padding:0 24px 0; box-sizing:border-box;}
nav.globalMenuSp .logo{width:clamp(11.688rem, 8.318rem + 9.38vw, 15.625rem); margin:21px 0 16px;}
nav.globalMenuSp .menu{box-sizing:border-box; overflow:hidden; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap;
					   margin-bottom:2em;}
nav.globalMenuSp .menu li{border-bottom:1px solid #bbbbbb; width:48.5%;}
nav.globalMenuSp .menu li a{padding:clamp(1rem, 0.893rem + 0.3vw, 1.125rem) 0; display:flex; justify-content:flex-start; align-items:center; font-weight:500;}

nav.globalMenuSp .plan{background:#839b5c; color:#fff; text-align:center; border-radius:3px; position:relative; overflow:hidden; padding:18px 0; display:block; width:clamp(16.25rem, 14.111rem + 5.95vw, 18.75rem); margin-left:auto; margin-right:auto; margin-bottom:1em;}
nav.globalMenuSp .plan .main{color:#fff; transition:all 0.3s ease;}
nav.globalMenuSp .address p{text-align:center;}
nav.globalMenuSp .tel{font-size:clamp(1.25rem, 1.143rem + 0.3vw, 1.375rem);}
@media only screen and (min-width:1248px){
	nav.globalMenuSp{display:none!important;}
}

/*header_pc*/
.header_pc{position:fixed; left:0; top:0; width:100%; z-index:10; padding:clamp(1.188rem, 0.491rem + 0.89vw, 1.5rem) clamp(1.5rem, 0.664rem + 1.07vw, 1.875rem); background:rgba(255,255,249,.9); display:flex; justify-content:space-between; box-sizing:border-box;}
.header_pc .logo{width:clamp(15.625rem, 6.989rem + 11.07vw, 19.5rem);}
.header_pc .logo a{width:100%; height:100%; display:flex; justify-content:center; align-items:center;}
.header_pc .logo a img{transform:translateY(-.5px); transition:all .5s ease;}
@media only screen and (max-width:1247px){
	.header_pc{display:none!important;}
}
.header_pc .nav{display:flex; align-items:center; justify-content:flex-end;}
.header_pc .menu{display:flex; flex-direction:column; align-items:flex-end; width:clamp(45rem, 28.286rem + 21.43vw, 52.5rem); margin-right:clamp(1.375rem, 0.679rem + 0.89vw, 1.688rem); flex-shrink:0;}
.header_pc .menu_t{margin-bottom:8px;}
.header_pc .tel{font-size:clamp(1.25rem, 0.971rem + 0.36vw, 1.375rem); letter-spacing:.02em; line-height:1; display:block;}
.header_pc .menu_b{display:flex; justify-content:space-between; align-items:center; width:100%;}
.header_pc .menu_b li{display:flex; align-items:center;}
.header_pc .menu_b li a{font-weight:600;}
.header_pc .plan{color:#fff; text-align:center; border-radius:3px; position:relative; overflow:hidden; flex-shrink:0; width:clamp(8.438rem, 7.213rem + 1.91vw, 9.375rem);}
.header_pc .plan .main{color:#fff; transition:all 0.3s ease;}				 
@media only screen and (min-width:1248px){
	.header_pc .logo a:hover img{transform:scale(.95);}
}

/*header_pc.fixed*/
.header_pc.fixed{padding:12px 24px;}
.header_pc.fixed .logo{width:250px;}
.header_pc.fixed .plan{padding-top:18px; padding-bottom:18px;}

/*bar*/
@media only screen and (min-width:1024px){
	.bar{position:relative; display:inline-block; transition:all .5s ease;}
	.bar::before,
	.bar::after{position:absolute; bottom:-8px; content:''; height:1px; background:#342824; transition:all .5s ease;}
	.bar::before{width:0; left:50%;}
	.bar::after{width:0; right:50%;}
	.bar:hover::before,
	.bar:hover::after{width:50%;}
}

/*sidebar*/
.sidebar{display:none; transition:all 0.3s ease;}
.pagetop{position:fixed; right:0!important; bottom:0!important; display:flex; align-items:center; justify-content:center; flex-direction:column; transition:all 0.3s ease; background:rgba(255,255,249,.6);}
.pagetop .line{display:block; width:1px; height:50px; background:#342824; margin-bottom:.5em; transition:all .3s ease; position:relative;}
.pagetop .main{writing-mode:vertical-rl; -ms-writing-mode:tb-rl; -webkit-writing-mode:vertical-rl; font-size:13px; color:#342824; line-height:1; font-weight:500;}
@media screen and (max-width:767px){
	.pagetop{width:32px; height:108px;}
}
@media screen and (min-width:768px){
	.pagetop{width:60px; height:136px;}
}
@media screen and (min-width:1024px){
	.pagetop:hover .line::after{position:absolute; content:""; display:inline-block; top:0; background:#ae9d8b; width:1px; height:1px; animation:line_tate 1.5s infinite ease-out;}
}

/*footer*/
.footer{width:100%; display:flex; flex-direction:column; align-items:center;}
.footer_wrap{margin-bottom:clamp(2rem, 1.3rem + 1.95vw, 3.5rem);}
.footer_menu{display:flex; flex-wrap:wrap; justify-content:space-between; box-sizing:border-box; width:90%;}
.footer_menu li{white-space:nowrap;}
.footer_menu li a{font-weight:600;}
.footer_logo{width:clamp(8.688rem, 6.968rem + 4.79vw, 12.375rem);}
.footer_logo a img{transition:all .5s ease;}
.footer_address{line-height:1.3;}
.footer_fax{pointer-events:none;}
.copyright{display:flex; align-content:center; justify-content:center; margin-left:auto; margin-right:auto;}
.copyright p{font-size:13px; line-height:1; margin-left:10px;}
.copyright a{width:44px; height:13px; line-height:1; display:flex; justify-content:center; align-items:center;}
@media only screen and (max-width:1023px){
	.footer_menu{display:none;}
	.footer_wrap{display:flex; flex-direction:column; align-items:center;}
	.footer_logo{margin-bottom:1.5em;}
}
@media only screen and (min-width:1024px){
	.footer_menu{width:840px; margin-bottom:clamp(2.5rem, 0.541rem + 3.06vw, 4rem); margin-top:-.3em;}
	.footer_wrap{display:flex; justify-content:center; align-items:center; margin-left:auto; margin-right:auto;}
	.footer_logo{margin-right:2.7em;}
}
@media only screen and (min-width:1248px){
	.footer_logo a:hover img{transform:scale(.95);}
}

/*bar*/
@media only screen and (min-width:1248px){
	.f_bar{position:relative; display:inline-block; transition:all .5s ease;}
	.f_bar::before,
	.f_bar::after{position:absolute; bottom:-4px; content:''; height:1px; background:#262520; transition:all .5s ease;}
	.f_bar::before{width:0; left:50%;}
	.f_bar::after{width:0; right:50%;}
	.f_bar:hover::before,
	.f_bar:hover::after{width:50%;}
}

/*bn_plan*/
.bn_plan{width:100%; display:flex; justify-content:space-between; align-items:center;
		 height:clamp(16.188rem, 12.952rem + 9vw, 23.125rem); position:relative;}
.bn_plan .box{width:100%;}
.bn_plan .imgbox01{background:url("../img/parts/bn_plan01.jpg") no-repeat center center / cover;}
.bn_plan .imgbox02{background:url("../img/parts/bn_plan02.jpg") no-repeat center center / cover;}
.bn_plan .imgbox03{background:url("../img/parts/bn_plan03.jpg") no-repeat center center / cover;}
.bn_plan .text{position:absolute; width:100%; height:100%; left:0; top:0; border-radius:6px;}
.bn_plan .img{width:clamp(12.188rem, 9.768rem + 6.73vw, 17.375rem); position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);}
@media screen and (max-width:767px){
	.bn_plan{background:url("../img/parts/bn_plan00.jpg") no-repeat center center / cover;}
	.bn_plan .box{display:none!important;}
}
@media screen and (min-width:768px) and (max-width:1023px){
	.bn_plan .box{width:50%;}
	.bn_plan .imgbox03{display:none;}
}
@media screen and (min-width:1024px) and (max-width:1247px){
	.bn_plan .box{width:33.333333%;}
}
@media screen and (max-width:1247px){
	.bn_plan .box{height:inherit;}
}
@media screen and (min-width:1248px){
	.bn_plan .box{width:33.333333%; height:inherit;}
}

/*header_sub*/
.header_sub{position:relative; box-sizing:border-box; overflow:hidden; height:clamp(12.5rem, 2.299rem + 28.39vw, 34.375rem);
			display:flex; justify-content:center; align-items:center;}
@media only screen and (max-width:1247px){
	.header_sub{margin-top:76px;}
}
@media only screen and (min-width:1248px){
	.header_sub{margin-top:clamp(6.063rem, 4.53rem + 1.96vw, 6.75rem);}
}			   
.header_sub_bg{position:absolute; width:100%; height:100%; left:0; top:0; z-index:-2;}
.header_sub_bg.facilities{background:url("../img/facilities/header.jpg") no-repeat center center / cover;}
.header_sub_bg.baths{background:url("../img/baths/header.jpg") no-repeat center center / cover;}
.header_sub_bg.cuisine{background:url("../img/cuisine/header.jpg") no-repeat center center / cover;}
.header_sub_bg.guide{background:url("../img/guide/header.jpg") no-repeat center center / cover;}
.header_sub_bg.reservation{background:url("../img/reservation/header.jpg") no-repeat center center / cover;}
.header_sub_bg.access{background:url("../img/access/header.jpg") no-repeat center center / cover;}

.header_sub_bg.news{background:url("../img/news/header.jpg") no-repeat center center / cover;}

.header_sub .title{filter:drop-shadow(0px 0px 5px rgba(0,0,0,1));}
.header_sub .title .ja{font-size:clamp(1.5rem, 1.034rem + 1.3vw, 2.5rem); color:#fff;}

/*interval*/
.interval{position:relative; height:clamp(10rem, 7.377rem + 7.3vw, 15.625rem); box-sizing:border-box;}
.interval.baths{background:url("../img/baths/interval.jpg") no-repeat center center / cover;}
.interval.cuisine{background:url("../img/cuisine/interval.jpg") no-repeat center center / cover;}

/*anchor*/
@media only screen and (max-width:1023px){
	.anchor{margin-top:-76px; padding-top:76px;}
}
@media only screen and (min-width:1024px){
	.anchor{margin-top:-84px; padding-top:84px;}
}
