@charset "utf-8";
* {margin:0; padding:0; font-family:'Noto Serif JP', sans-serif ,"Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro","メイリオ", Meiryo, serif; letter-spacing:0.03em; color:#543016;}

/*body*/
body{margin:0; padding:0; text-align:center; position:relative; -webkit-text-size-adjust:100%; overflow-x:hidden!important;}
article{overflow-x:hidden!important; overflow-y: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.5s ease; font-weight:normal; line-height:1;}
a:hover{opacity:.8; transition:all 0.5s ease;}

a,p,span,th,td,li,small{box-sizing:border-box; margin:0; text-align:justify; font-weight:normal; line-height:150%;}
@media screen and (max-width:767px){
	a,p,span,th,td,li,small{font-size:16px;}
}
@media screen and (min-width:768px){
	a,p,span,th,td,li,small{font-size:17px;}
}
@media screen and (min-width:1250px){
	a,p,span,th,td,li,small{font-size:17.5px; line-height:174%;}
}

h1{margin:0; padding:0;}
h2,h3,h4{width:auto; height:auto; margin:0; padding:0; font-weight:normal;}

/*header*/
#header{position:relative; width:100%; height:auto; overflow:hidden; z-index:0;}
@media only screen and (max-width:1023px){
	#header{padding-top:76px;}
}
#header img{vertical-align:bottom;}

/*header_pc*/
.header_pc{width:100%; background:url("../img/parts/header_bg.svg") no-repeat center center; box-sizing:border-box; position:relative; display:flex; flex-direction:column; justify-content:space-between;}
.header_pc .logo,
.header_pc .nav{margin-right:auto; margin-left:auto; display:flex; justify-content:space-between;}
.header_pc .nav a{display:block; line-height:1;}
.header_pc .plan{position:absolute; display:flex; justify-content:space-between;}
.header_pc .plan .bt{border:1px solid #b38949; box-sizing:border-box;}
.header_pc .plan .bt:hover{background:#fcf3e5;}
.header_pc .plan .bt.tel,
.header_pc .plan .bt.fb{height:inherit;}
@media only screen and (max-width:1023px){
	.header_pc{display:none;}
}
@media only screen and (min-width:1024px){
	.header_pc{height:176px; padding-top:42px; padding-bottom:31.5px; background-size:123px 144px;}
	.header_pc .logo{width:237px; height:67px;}
	.header_pc .nav{width:838px; height:16px;}
	.header_pc .nav a,
	.header_pc .nav a img{height:16px;}
	.header_pc .plan{width:277px; height:37px; right:28px; top:28px;}
	.header_pc .plan .bt.tel{width:151px;}
	.header_pc .plan .bt.fb{width:109px;}
}
@media only screen and (min-width:1250px){
	.header_pc{height:198px; padding-top:48px; padding-bottom:32px; background-size:139px 162px;}
	.header_pc .logo{width:266px; height:75px;}
	.header_pc .nav{width:891px; height:17px;}
	.header_pc .nav a,
	.header_pc .nav a img{height:17px;}
	.header_pc .plan{width:311px; height:41px; right:32px; top:32px;}
	.header_pc .plan .bt.tel{width:170px;}
	.header_pc .plan .bt.fb{width:123px;}
}
@media only screen and (min-width:1600px){
	.header_pc{height:220px; padding-top:53px; padding-bottom:35px; background-size:154px 180px;}
	.header_pc .logo{width:296px; height:84px;}
	.header_pc .nav{width:943px; height:18px;}
	.header_pc .nav a,
	.header_pc .nav a img{height:18px;}
	.header_pc .plan{width:346px; height:46px; right:35px; top:35px;}
	.header_pc .plan .bt.tel{width:189px;}
	.header_pc .plan .bt.fb{width:137px;}
}

/*header_pc bar*/
.header_pc .bar{position:relative; display:inline-block; transition:all 0.5s ease;}
.header_pc .bar:hover{opacity:1;}
.header_pc .bar:before{position:absolute; top:-4px; left:0; content:''; width:0; height:1px; background:#b38949; transition:all 0.5s ease;}
.header_pc .bar:after{position:absolute; bottom:-4px; right:0; content:''; width:0; height:1px; background:#b38949; transition:all 0.5s ease;}
.header_pc .bar:hover:before,
.header_pc .bar:hover:after{width:100%;}

/*header_sp*/
.header_sp{position:fixed; width:100%; height:76px; top:0; left:0; z-index:1; background:#fff; border-bottom:1px solid rgba(48,40,51,.2);}
.header_sp .logo{position:fixed; z-index:1; width:197px; height:56px; top:13px; left:15px;}
.header_sp .logo a{display:block; width:100%; height:100%; line-height:1;}
@media only screen and (min-width:1024px){
	.header_sp{display:none;}
}

/*hamburger*/
.hamburger{display:block; position:absolute; z-index:10001; right:13px; top:17px; width:42px; height:42px; cursor:pointer; text-align:center;}
@media only screen and (min-width:1024px){
	.hamburger{display:none;}
}
.hamburger span{display:block; position:absolute; width:30px; height:2px; left:6px; background:#543016; transition:all 0.5s ease;}
.hamburger span:nth-child(1){top:15px;}
.hamburger span:nth-child(2){top:25px;}
nav.globalMenuSp.active{display:block; opacity:100;}
.hamburger.active span:nth-child(1){top:20px; left:6px; background:#543016; -webkit-transform:rotate(-45deg); -moz-transform:rotate(-45deg); transform:rotate(-45deg);}
.hamburger.active span:nth-child(2),.hamburger.active span:nth-child(3){top:20px; background:#543016; -webkit-transform:rotate(45deg); -moz-transform:rotate(45deg); transform:rotate(45deg);}
nav.globalMenuSp{display:none; position:fixed; z-index:10000; top:0; left:0; background:rgba(255,255,255,.95); text-align:center; width:100%; height:100vh; opacity:0; transition:opacity .5s ease, visibility .5s ease;}
nav.globalMenuSp ul{box-sizing:border-box; display:flex; justify-content:space-between; flex-wrap:wrap;}
nav.globalMenuSp ul li{padding:0; height:auto; border-bottom:1px dashed #b38949; box-sizing:border-box;}
nav.globalMenuSp ul li a{width:100%; height:auto; text-decoration:none; display:flex; justify-content:flex-start;}
nav.globalMenuSp ul li a span{width:auto; display:inline-block; display:flex; justify-content:flex-start; align-items:center;}
nav.globalMenuSp ul li a span img{width:auto; text-align:left!important;}
nav.globalMenuSp ul li a span::before{display:inline-block; content:""; background:url("../img/parts/point_sp.svg") no-repeat center center / contain; width:18px; height:18px; margin-right:10px;}
nav.globalMenuSp .sub_wrap{width:100%; box-sizing:border-box;}
nav.globalMenuSp .sub{display:flex; justify-content:space-between; margin-left:auto; margin-right:auto;}
nav.globalMenuSp .sub .bt{display:block; width:48.5%; padding:0.1em 0; border:1px solid #b38949; text-align:center;}
nav.globalMenuSp .sub .bt img{height:40px;}
@media only screen and (max-width:449px){
	nav.globalMenuSp ul li a{padding:0.8em 0;}
}
@media only screen and (min-width:450px) and (max-width:575px){
	nav.globalMenuSp ul li a{padding:1em 0;}
}
@media only screen and (max-width:575px){
	nav.globalMenuSp ul{padding:50px 15px 0; margin-bottom:30px;}	
	nav.globalMenuSp ul li{width:48.5%;}
	nav.globalMenuSp ul li a span img{height:15px;} 
	nav.globalMenuSp .sub_wrap{padding-left:15px; padding-right:15px;}
	nav.globalMenuSp .sub{width:100%;}
	nav.globalMenuSp .sub .bt img{width:90%;}
}
@media only screen and (min-width:576px) and (max-width:1023px){
	nav.globalMenuSp ul{padding:60px 15px 0; margin-bottom:30px;}
	nav.globalMenuSp ul li{width:48.5%;}
	nav.globalMenuSp ul li a{padding:1em 0;}
	nav.globalMenuSp ul li a span img{height:15px;} 
	nav.globalMenuSp .sub{width:70%;}
}
@media only screen and (min-width:1024px){
	nav.globalMenuSp{display:none!important;}
}

/*nav_fixed*/
.nav_fixed{display:none; position:fixed; width:100%; height:76px; top:0; left:0; background:rgba(255,255,255,.9); border-bottom:1px solid rgba(48,40,51,.2); z-index:1; box-sizing:border-box; padding-right:2%;}
.nav_fixed_wrap{width:100%; height:76px; display:flex; justify-content:flex-end; align-items:center;}
.nav_fixed_wrap .logo{position:fixed; width:197px; height:56px; z-index:1; top:13px; left:15px;}
.nav_fixed_wrap .logo a{display:block; width:100%; height:100%; line-height:1!important;}
.nav_fixed_wrap .menu li a{display:flex; justify-content:center; align-items:flex-start;}
@media only screen and (max-width:1023px){
	.nav_fixed{display:none!important;}
}
@media only screen and (min-width:1024px){
	.nav_fixed_wrap .menu{width:680px; height:16px; display:flex; justify-content:space-between; align-items:center; margin-top:-3px;}
	.nav_fixed_wrap .menu li a,
	.nav_fixed_wrap .menu li img{height:16px;}
}
@media only screen and (max-width:1249px){
	.nav_fixed_wrap .menu li:nth-of-type(1){display:none;}
}
@media only screen and (min-width:1250px){
	.nav_fixed_wrap .menu{width:760px; height:17px;}
	.nav_fixed_wrap .menu li a,
	.nav_fixed_wrap .menu li img{height:17px;}
}
@media only screen and (min-width:1600px){
	.nav_fixed_wrap .menu{width:860px; height:18px;}
	.nav_fixed_wrap .menu li a,
	.nav_fixed_wrap .menu li img{height:18px;}
}

/*nav_fixed .bar*/
.nav_fixed .bar a{position:relative; display:inline-block; transition:all 0.5s ease;}
.nav_fixed .bar a:hover{opacity:1;}
.nav_fixed .bar a:before{position:absolute; top:-4px; left:0; content:''; width:0; height:1px; background:#b38949; transition:all 0.5s ease;}
.nav_fixed .bar a:after{position:absolute; bottom:-4px; right:0; content:''; width:0; height:1px; background:#b38949; transition:all 0.5s ease;}
.nav_fixed .bar a:hover:before,
.nav_fixed .bar a:hover:after{width:100%;}

/*footer*/
footer{box-sizing:border-box; padding-bottom:40px;}
footer .logo{border-bottom:1px solid #b38949; margin-left:auto; margin-right:auto;}
footer .logo a{display:flex; justify-content:center;}
footer .info{width:100%; margin:0 auto 25px; display:flex; flex-direction:column; justify-content:center; align-items:center; flex-wrap:wrap;}
footer .info p{width:auto;}
footer .tel,
footer .tel a{font-size:20px;}
footer .copyright{display:flex; justify-content:center; align-content:center;}
footer .copyright p{font-size:13px;}
footer .copyright a{width:52px; height:13px; display:block; line-height:1; margin-right:2px;}
@media screen and (max-width:575px){
	footer{padding-left:15px; padding-right:15px;}
	footer .info p span{display:none;}
}
@media screen and (min-width:768px){
	footer{padding-bottom:60px;}
	footer .logo{width:450px;}
}
@media screen and (max-width:991px){
	footer .logo{padding-bottom:17px; margin-bottom:13px;}
	footer .logo img{width:208px; height:79px;}
}
@media screen and (min-width:992px){
	footer{padding-bottom:80px;}
	footer .logo{padding-bottom:19px; margin-bottom:15px;}
	footer .logo img{width:238px; height:91px;}
}
@media screen and (min-width:1250px){
	footer{padding-bottom:90px;}
	footer .logo{padding-bottom:22px; margin-bottom:17px;}
	footer .logo img{width:267px; height:102px;}
}
@media screen and (min-width:1600px){
	footer{padding-bottom:100px;}
	footer .logo{padding-bottom:24px; margin-bottom:19px;}
	footer .logo img{width:297px; height:113px;}
}

/*scroll-top スクロールリンクの形状*/
.scroll-top{
	/*表示位置*/position:fixed; right:30px; bottom:10px; z-index:0;
	/*はじめは非表示*/opacity:0; visibility:hidden;  transition:opacity .5s, visibility .5s; /*それぞれに0.5秒の変化のアニメーション*/
	/*縦書き*/-webkit-writing-mode:vertical-rl; -ms-writing-mode:tb-rl; writing-mode:vertical-rl;
	/*改行禁止*/ white-space:nowrap;
	/*矢印の動き*/ animation:arrowmove 1s ease-in-out infinite;
}

@keyframes arrowmove{
	0%{bottom:20px;} 50%{bottom:25px;} 100%{bottom:20px;}
 }

/*.scroll-viewクラスがついたら出現*/
.scroll-top.scroll-view{opacity:1; visibility:visible;}

/*リンク全体の aタグの形状*/
.scroll-top a{text-decoration:none; color:#543016; text-transform:uppercase; display:block;}
@media only screen and (max-width:991px){
	.scroll-top a{font-size:12px;}
}
@media only screen and (min-width:992px){
	.scroll-top a{font-size:13px;}
}
@media only screen and (min-width:1250px){
	.scroll-top a{font-size:13px;}
}
@media only screen and (min-width:1600px){
	.scroll-top a{font-size:14px;}
}

/*スクロールリンクの形状*/
.js-scroll a::after{content:""; position:absolute; top:0; right:0; width:1px; height:50px; background:#543016;}

.js-scroll a::before{content:""; position:absolute; top:30px; right:-6px; width:1px; height:20px; background:#543016; transform:skewX(-31deg);}

/*Edge IE11 hack*/
_:-ms-lang(x), .js-scroll a::before{right:-11px;}

/*ページトップリンクの形状*/
.js-pagetop a::after{content:""; position:absolute; top:0; right:0; width:1px; height:50px; background:#543016;}
.js-pagetop a::before{content:""; position:absolute; top:0; right:-6px; width:1px; height:20px; background:#543016; transform:skewX(31deg);}

/*Edge IE11 hack*/
_:-ms-lang(x), .js-pagetop a::before{right:0;}

/*anchor*/
.anchor{margin-top:-76px; padding-top:76px;}

/*anchor_ho*/
.anchor_ho{margin-top:-126px; padding-top:126px;}

/*header_sub*/
.header_sub{position:relative; box-sizing:border-box;}
@media only screen and (max-width:575px){
	.header_sub{height:calc(100vw*0.5)!important;}
}
@media only screen and (min-width:576px) and (max-width:991px){
	.header_sub{height:calc(100vw*0.4)!important;}
}
@media only screen and (min-width:992px){
	.header_sub{height:calc(100vw*0.3)!important;}
}
@media only screen and (min-width:1250px){
	.header_sub{height:calc(100vw*0.3)!important;}
}
@media screen and (min-width:1600px){
	.header_sub{height:650px!important;}
}

.header_sub .title{position:absolute; height:auto; left:50%; top:50%; transform:translate(-50%,-50%);}
.header_sub .title.ajust{height:auto; background:radial-gradient(ellipse at center, rgba(0,0,0,0.3) 0%,rgba(0,0,0,0) 50%,rgba(0,0,0,0) 100%);}
@media only screen and (max-width:991px){
	.header_sub .title{width:105px;}
}
@media only screen and (min-width:992px) {
	.header_sub .title{width:120px;}
}
@media only screen and (min-width:1250px){
	.header_sub .title{width:135px;}
}
@media screen and (min-width:1600px){
	.header_sub .title{width:150px;}
}
.header_sub_bg{position:absolute; width:100%; height:100%; left:0; top:0;}
.header_sub_bg.hotspring{background:url("../img/hotspring/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.facilities{background:url("../img/facilities/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.sightseeing{background:url("../img/sightseeing/header.jpg") no-repeat center center / cover;}

/*interval*/
.interval{box-sizing:border-box; position:relative;}
@media only screen and (max-width:767px){
	.interval{width:100%; height:160px;}
}
@media only screen and (min-width:768px){
	.interval{width:100%; height:200px;}
}
@media only screen and (min-width:992px){
	.interval{width:100%; height:250px;}
}
@media only screen and (min-width:1250px){
	.interval{height:340px;}
}

.interval_hotspring{background:url("../img/hotspring/interval.jpg") no-repeat center center / cover;}
.interval_cuisine{background:url("../img/cuisine/interval.jpg") no-repeat center center / cover;}
.interval_facilities{background:url("../img/facilities/interval.jpg") no-repeat center center / cover;}

