@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&Gelasio:wght@500&family=Overpass:ital@0;1&family=Zen+Kaku+Gothic+New:wght@400;500&family=Noto+Serif+JP:wght@400;600&family=Roboto&family=Shippori+Mincho&display=swap');
@import url('https://fonts.googleapis.com/css2?family=PT+Serif&display=swap');
@import url("default.css");

* {-webkit-text-size-adjust:100%;}
a:link {text-decoration:none; color:#533415;}
a:visited{text-decoration:none; color:#533415;}
a:hover{text-decoration:none; color:#533415;}
a:active{text-decoration:none; color:#533415;}
a.color-beige { color: #5e3b1e; }
body { font-size: 13px; color: #533415; line-height: 2.15; letter-spacing: .12em; background-color: #fff; font-family: "Zen Kaku Gothic New", sans-serif; font-weight: 400; /* background-image: url(../images/common/bg-paper.jpg); */ background-repeat: repeat; min-width: 1300px; }
body .switcher { overflow: visible; position: relative; }
body .switcher a img { display: none; }
body .switcher .selected { background: none!important; }
body .switcher .selected a { border: none; background: none; padding: 0; width: auto; }
body .switcher .selected > a { padding: 0 0; border: none; background: #533415!important; color: #fff!important; font-size: 13px; height: 60px; display: flex; align-items: center; justify-content: center; }
body .switcher .selected a:after {  background: none; height: 7px; width: 7px; border-right: 1px solid #fff; border-bottom: 1px solid #fff; transform: rotate(45deg)!important; margin: auto 0; top: 0; bottom: 5px; right: 15px; }
body .switcher .option { position: absolute; background-color: #fff; top: calc(100% + 10px); border-radius: 0.5em; padding: 15px 0; }
body .switcher .option a { height: auto; width: auto; margin-right: 0; margin-left: 10px; color: #533415!important; font-size: 12px!important; padding: 5px 5px; border: none!important; }
header { position: absolute; padding-left: 40px; left: 0; top: 0; width: 100%; z-index: 10; background: none; }
header .wrap { display: flex; align-items: center; justify-content: space-between; height: 100px; }
header .pcnav { padding-right: 50px; display: flex; }
header .pcnav a { color: #fff; }
header .pcnav ul { display: flex; align-items: center; justify-content: flex-end; }
header .pcnav .nav1 { order: 2; margin-left: 30px; }
header .pcnav .nav1 li { margin-left: 20px; }
header .pcnav .nav1 .cmn a { color: #fff; border: 1px solid #fff; border-radius: 5px; display: flex; font-size: 13px; width: 100px; height: 23px; align-items: center; justify-content: center; font-size: 13px; }
header .pcnav .nav1 .trans select { height: 23px; width: auto; background: none!important; border: none; border-bottom: none; text-align: left; justify-content: flex-start; }
header .pcnav .nav2 { order: 1; }
header .pcnav .nav2 li { margin-left: 25px; line-height: 1; font-size: 13px; }
header .pcnav .nav2 li:first-child { padding-left: 0; margin-left: 0; border-left: none; }
header .left { display: flex; align-items: center;  }
header .logo .normal { display: none; }
header .menus { display: flex; }
header .menus > a,
header .menus .lang-button { background: #ad8e4b; display: flex; align-items: center; justify-content: center; color: #fff; height: 60px; border-right: 1px solid #fff; width: 130px; font-size: 13px; letter-spacing: .14em; }
header .menus .lang-button { cursor: pointer; background: #533415; position: relative; }
header .menus .lang-button:after { content: ""; border-bottom: 1px solid #fff; border-right: 1px solid #fff; transform: rotate(45deg); width: 5px; height: 5px; transform: rotate(45deg); display: block; margin-left: 10px; }
header .menus .lang-wrap { opacity: 0; visibility: hidden; position: absolute; right: 10px; width: 200px; top: calc(100% + 10px); background: #fff; border-radius: 0.5em; padding: 15px 15px; font-size: 12px; letter-spacing: .1em; }
header .menus .lang-wrap a { display: block; }
header .menus .lang-button.active .lang-wrap { opacity: 1; visibility: visible; }
header .menu-trg-area { width: 40px; height: 8px; cursor: pointer; position: relative; margin-right: 40px; }
header .menu-trigger { position: absolute; top: 0; width: 40px; height: 8px; z-index: 2; left: 0; right: 0; margin: auto; transition: all .4s; }
header .menu-trigger span { position: absolute; left: 0; width: 100%; height: 1px; background-color: #533415; transition: all .4s; }
header .menu-trigger span:nth-of-type(1) { top: 0;}
header .menu-trigger span:nth-of-type(2) { bottom: 0;}
header .menu-trigger.active span:nth-of-type(1) { -webkit-transform: translateY(20px) rotate(-45deg); transform: translateY(20px) rotate(-45deg); top: -16px;}
header .menu-trigger.active span:nth-of-type(2) { -webkit-transform: translateY(-20px) rotate(45deg); transform: translateY(-20px) rotate(45deg); bottom: -16px;}
header .gnav { opacity: 0; visibility: hidden; transition: .3s; position: fixed; left: 0; top: 0; height: 100%; background: rgba(35,24,21,.9); color: #fff; width: 430px; padding: 20px 45px 30px; z-index: 999; }
header .gnav.active { opacity: 1; visibility: visible; }
header .gnav a { color: #fff; }
header .gnav .wrapper { position: relative; }
header .gnav .closed { width: 30px; height: 30px; position: relative; margin-bottom: 40px; cursor: pointer; }
header .gnav .closed:before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; right: 0; margin: auto; width: 100%; height: 1px; background: #fff; transform: rotate(45deg); }
header .gnav .closed:after { content: ""; position: absolute; left: 0; top: 0; bottom: 0; right: 0; margin: auto; width: 100%; height: 1px; background: #fff; transform: rotate(-45deg); }
header .gnav .img_logo { width: 110px; position: absolute; bottom: 0; right: 0; }
header .gnav .buttons a { border: 1px solid #fff; padding: 5px 20px; line-height: 1; margin-right: 15px; font-size: 13px; }
header .gnav .link1 { font-size: 15px; letter-spacing: .14em; display: flex; flex-wrap: wrap; }
header .gnav .link1 li { margin-bottom: 25px; padding-right: 15px; margin-right: 15px; border-right: 1px solid #fff; line-height: 1; }
header .gnav .link1 li:last-child { border-right: none; padding-right: 0; margin-right: 0; }
header .gnav .link1 a:hover { text-decoration: underline; text-underline-position: under; }
header .gnav .link2 { font-size: 13px; letter-spacing: .12em; }
header .gnav .link2 li { margin-bottom: 10px; }
.sp-menu { display: none; }
footer { background: #272966; color: #fff; text-align: center; padding: 50px 0 0; letter-spacing: .05em; }
footer .container-fluid { max-width: 1150px; }
footer a { color: #fff; }
footer .top_wrapper { display: flex; flex-wrap: wrap; justify-content: space-between; }
footer .left { text-align: left; display: flex; flex-wrap: wrap; line-height: 1.7; position: relative; padding-right: 40px; width: 200px; }
/* footer .left:before { content: ""; position: absolute; right: 0; top: 0; width: 1px; height: calc(100% - 20px); background: #fff; } */
footer .left a { color: #fff; }
footer .left .logo { width: 240px; padding-top: 5px; }
footer .right { text-align: left; width: calc(100% - 200px); }
footer .right a { color: #fff; }
footer .subwrapper { display: flex; flex-wrap: wrap; align-items: flex-end; padding: 0 10px; justify-content: space-between; }
footer .subwrapper .wrap { width: calc(100% - 165px); }
footer .link1 { font-size: 13px; letter-spacing: .05em; display: flex; flex-wrap: wrap; justify-content: flex-start; }
footer .link1 li { margin-bottom: 25px; padding-left: 25px; line-height: 1; }
footer .link1 li:first-child { border-left: none; padding-left: 0; margin-left: 0; }
footer .link1 a:hover { text-decoration: underline; text-underline-position: under; }
footer .link2 { font-size: 12px; letter-spacing: .12em; display: flex; flex-wrap: wrap; }
footer .link2 li { margin-bottom: 10px; padding-left: 15px; margin-left: 15px; border-left: 1px solid #fff; line-height: 1; }
footer .link2 li:first-child { margin-left: 0; border-left: none; padding-left: 0; }
footer .links { border-top: 1px solid #fff; padding: 45px 0 45px; margin: 35px 0 0; display: flex; }
footer .links .title { font-size: 13px; letter-spacing: .05em; margin-bottom: 20px; }
footer .links ._wrapper { padding: 0 10px; width: 100%; max-width: 100%; display: flex; justify-content: space-between; margin-left: auto; margin-right: auto; text-align: left; }
footer .links ._relo { width: 30%; border-right: 1px solid #fff; padding: 0 30px; }
footer .links ._sdgs { width: 30%; padding: 0 0 0 30px; }
footer .links ._sdgs .title { margin-bottom: 10px; }
footer .links ._sdgs .wrap { display: flex; align-items: center; flex-wrap: wrap; }
footer .links ._sdgs .wrap > * { margin-right: 20px; }
footer .links ._sdgs .wrap > *:last-child { margin-right: 0; }
footer .links ._sdgs p { font-size: 10px; letter-spacing: .05em; width: 100%; margin-top: 20px; margin-right: 0; }
footer .links .address { font-size: 13px; width: 40%; border-right: 1px solid #fff; letter-spacing: .05em; }
footer .footer-bottom { background: #fff; color: #011a2c; text-align: center; padding: 25px 0; }
footer .sns { display: flex; align-items: flex-end; justify-content: center; margin-bottom: 0; width: 165px; }
footer .sns li { padding: 0 7px; }
footer .copyright { font-size: 12px; letter-spacing: .15em; }
main { margin-top: 0; }
article { padding-bottom: 170px; }

.full-width_2 .container-fluid_2 {
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
}
.under_arrow_2 > div {
    line-height: 1.8;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.under_arrow_2:after {
    content: "";
    border-right: 1px solid rgba(198, 176, 129, .25);
    border-bottom: 1px solid rgba(198, 176, 129, .25);
    transform: rotate(45deg);
    display: block;
    width: 10px;
    height: 10px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3px;
    margin-bottom: 3px;
    border-color: #013e54;
}
@media (min-width: 768px) {
	header .logo img { width: 176px; }
	header.active { position: fixed; background: #fff; }
	header.active .wrap { height: 120px; }
	header.active .logo .white { display: none; }
	header.active .logo .normal { display: block; }
	header.active .pcnav .nav1 .cmn a { color: #231815!important; border-color: #231815; }
	header.active .switcher .selected > a { color: #231815!important; }
	header.active .pcnav .nav1 .trans .switcher .selected > a,
	header.active .switcher .selected a:after { border-color: #231815; }
	header.active .pcnav .nav2 { margin-top: 0; }
	header.active .pcnav .nav2 a { color: #533415; }
	header.active .pcnav .nav2 li { border-color: #533415; }
	header.active .pcnav .nav2 li:last-child { display: block; }
	header .left { width: 190px; }
	header .right { width: calc(100% - 190px); display: flex; justify-content: space-between; padding-left: 50px; }
	header .pcnav { width: 100%; justify-content: space-between; }
	header.is-white .pcnav .nav1 .trans select { color: #533415; background: #fff!important; }
}
@media (max-width: 767px) {
	body .switcher { width: 130px; }
	body .switcher .selected { z-index: 998; }
	body .switcher .selected > a { height: 50px; background: none!important; color: #533415!important; }
	body .switcher .selected a:after { border-color: #533415!important; }
	body .switcher .option { right:15px; }
	header { padding-left: 16px; z-index: 999; position: fixed; background: #fff!important; box-shadow: 0 3px 10px rgba(0,0,0,.1); }
	header .logo .white { display: none!important; }
	header .logo .normal { display: block!important; height: 30px; }
	header .pcnav { display: none; }
	header .wrap { height: 60px; }
	header .menu-trg-area { position: fixed; right: 0; background: #fff; right: 0; bottom: 0; width: 33.3333%; margin-right: 0; height: 60px; display: none; }
	header .menu-trigger { top: 17px; }
	header .menu-trigger span:nth-of-type(1) { width: 30px; }
	header .menu-trigger span:nth-of-type(2) { width: 20px; }
	header .menu-trg-area .name { position: absolute; bottom: 8px; left: 0; right: 0; text-align: center; font-size: 13px; line-height: 1; }
	header .menus .btns { position: fixed; width: 33.33333%; bottom: 0; font-family: 'Shippori Mincho', serif; font-size: 13px; letter-spacing: .13em; flex-wrap: wrap; line-height: 1; padding-bottom: 3px; display: none; }
	header .menus .btns .icon { width: 100%; text-align: center; margin-bottom: 5px; }
	header .menus .btn1 { left: 33.33333%; }
	header .menus .btn2 { left: 0; }
	header .menus .lang-buttons { height: 50px; background: none; color: #533415; display: flex; align-items: center; padding-right: 20px; }
	header .menus .lang-buttons:after { border-color: #533415; }
	header .gnav { width: 100%; padding: 25px; }
	header .gnav .closed { margin-bottom: 25px; margin-left: auto; }
	header .gnav .buttons { position: fixed; left: 0; bottom: 0; width: 100%; display: flex; z-index: 1; }
	header .gnav .buttons a { width: 50%; display: block; text-align: center; margin-right: 0; border: none; border-right: 1px solid #fff; background: #BBAC73; padding: 5px 0 8px; }
	header .gnav .buttons a:last-child { border-right: 0; }
	header .gnav .buttons a .icon { margin-bottom: 5px; }
	header .gnav .link1 { justify-content: center; }
	header .gnav .link1 li { margin-bottom: 20px; }
	header .gnav .link2 { display: flex; flex-wrap: wrap; line-height: 1; justify-content: center; text-align: center; }
	header .gnav .link2 li { margin-bottom: 10px; padding-left: 10px; padding-right: 10px; }
	header .gnav .link2 li:nth-child(2) { border-left: 1px solid #fff; }
	header .gnav .link2 li:nth-child(3) { border-left: 1px solid #fff; }
	header .gnav .link2 li:last-child { width: 100%; }
	header .gnav .logo { text-align: center; margin-bottom: 35px; }
	header .gnav .logo img { width: 170px; }
	header .lang-buttons select { height: 23px; width: auto; background: none !important; border: none; border-bottom: 1px solid #fff; text-align: left; }
	footer { padding-top: 40px; }
	footer .left { order: 1; text-align: center; width: 100%; margin-bottom: 30px; }
	footer .subwrapper { display: block; }
	footer .subwrapper .wrap { width: 100%; }
	footer .sns { width: 100%; }
	footer .right { order: 1; text-align: center; width: 100%; }
	footer .link1 { justify-content: center; }
	footer .link1 li { padding-left: 12px; padding-right: 25px; }
	footer .link2 { display: block; text-align: center; margin-bottom: 0; }
	footer .link2 li { border: none; margin: 0 0 15px; padding: 0; }
	footer .list1 { display: block; }
	footer .list1 li { width: 100%; border: none; padding-left: 0; margin-left: 0; margin-bottom: 15px; font-size: 11px; letter-spacing: .2em; }
	footer .links { padding: 25px 0; }
	footer .links ._wrapper { flex-wrap: wrap; padding-left: 0; padding-right: 0; }
	footer .links ._relo { width: 100%; border-right: 0; border-bottom: none; padding-left: 20px; padding-right: 20px; margin-bottom: 30px; }
	footer .links ._sdgs { width: 100%; padding-left: 20px; padding-right: 20px; }
	footer .links ._sdgs .wrap { flex-wrap: wrap; }
	footer .links ._sdgs .wrap > * { margin-right: 20px; }
	footer .links ._sdgs .wrap > p { width: 100%; margin-top: 20px; }
	footer .copyright { letter-spacing: .05em; font-size: 10px; }
	footer .address { width: 100%; border-right: none; }
	footer .address p { text-align: center; }
	footer .site-menus { width: 100%; padding: 0; border-right: none; border-bottom: 1px solid rgba(255,255,255,.5); display: block; margin-bottom: 30px; padding-bottom: 30px; }
	footer .site-menus ul { width: 100%; }
	footer .site-menus ul.list1,
	footer .site-menus ul.list2 { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
	footer .site-menus ul li { margin-bottom: 10px; }
	footer .site-menus ul.list1 li,
	footer .site-menus ul.list2 li { border-right: 1px solid #fff; line-height: 1; padding: 0 10px; }
	footer .site-menus ul.list1 li:last-child,
	footer .site-menus ul.list2 li:last-child { border: none; }
	footer .site-menus ul.list3 { text-align: center; padding-left: 0; padding: 40px 0 30px; }
	footer .menu-factory { width: 100%; padding-left: 0; }
	footer .menu-factory ul li.full .link { display: block; }
	footer .footer-middle { margin-top: 30px; padding-top: 30px; }
	footer .footer-middle:before { width: 100%; left: 0; }
	footer .footer-bottom { padding-bottom: 90px; }
	footer .left { display: block; padding-right: 0; }
	footer .left:before { display: none; }
	footer .left .logo { width: 160px; margin-left: auto; margin-right: auto; }
	footer .left .address { width: 100%; padding-left: 0; }
	footer .links .address { width: 100%; border-right: none; border-bottom: 1px solid #fff; line-height: 1.8; margin-bottom: 25px; padding-bottom: 25px; }
	footer .links ._relo { width: 100%; border-right: none; border-bottom: 1px solid #fff; padding-left: 0; padding-right: 0; margin-bottom: 30px; padding-bottom: 30px; }
	footer .links ._sdgs { padding-left: 0; padding-right: 0; }
	main { margin-top: 50px; }
	article { padding-bottom: 80px; }
	.sp-menu { display: flex; position: fixed; bottom: 0; left: 0; z-index: 10; width: 100%; background: #7D6853; }
	.sp-menu li { width: 25%; }
	.sp-menu li:first-child { border-left: none; }
	.sp-menu li:nth-child(2) { border-left: none; position: relative; }
	.sp-menu li:nth-child(2):before { content: ""; width: 1px; height: 100%; position: absolute; right: 0; top: 0; background-color: #004d5a; }
	.sp-menu a img { width: 100%; }
}

.fw300 { font-weight: 300!important; }
.fw400 { font-weight: 400!important; }
.fw500 { font-weight: 500!important; }
.fw600 { font-weight: 600!important; }

/* color */
.color-red { color: #de3d00; }
.color-gray { color: #adadad; }
.color-green { color: #4b9c9b; }
.color-beige { color: #5e3b1e; }
.color-white { color: #fff; }
.color-theme { color: #533415; }
.color-green2 { color: #006c61; }

/* fonts */
.serif { font-family: 'Noto Serif JP', serif; }
.sans { font-family: "Zen Kaku Gothic New", sans-serif; }
.cormo { font-family: 'Cormorant Garamond', serif; }
.gela { font-family: 'Gelasio', serif; }
.sans-lg { font-family: "Zen Kaku Gothic New", sans-serif; font-size: 16px; letter-spacing: .05em; font-weight: 400; line-height: 1.75; }
.sans-md { font-family: "Zen Kaku Gothic New", sans-serif; font-size: 14px; letter-spacing: .05em; font-weight: 300; line-height: 2.3; }
.sans-sm { font-family: "Zen Kaku Gothic New", sans-serif; font-size: 12px; letter-spacing: .075em; font-weight: 300; line-height: 1.91; }
.shippori { font-family: 'Shippori Mincho B1', serif; font-size: 12px; letter-spacing: .15em; line-height: 1.67; font-weight: 400;}
.font-size-lg { font-size: 19px; letter-spacing: .025em; line-height: 1.74; }
.font-size-md { font-size: 17px; letter-spacing: .15em; line-height: 1.76; }
.font-size-sm { font-size: 12px; letter-spacing: .075em; line-height: 1.91; font-weight: 300; }
.main-title { font-size: 35px; letter-spacing: .12em; line-height: 1.37; }
.sub-title1 { font-size: 25px; letter-spacing: .2em; line-height: 1.6; }
.sub-title2 { font-size: 25px; letter-spacing: .2em; line-height: 1.6; }
.sub-title3 { font-size: 24px; font-weight: 500; letter-spacing: .1em; line-height: 1.9; }
.sec-title { font-family: 'Cormorant Garamond', serif; font-size: 44px; letter-spacing: .04em; }
.set-title { text-align: center; line-height: 1.2; }
.set-title .en { font-family: 'Cormorant Garamond', serif; font-size: 34px; letter-spacing: .04em; line-height: 1; font-weight: 600; margin-bottom: 15px; }
.set-title .jp { font-weight: 500; font-size: 13px; }
.set-title.inv .en { font-size: 10px; letter-spacing: .12em; font-family: "PT Serif", serif; margin-bottom: 0; color: #9b9456; }
.set-title.inv .jp { font-size: 25px; letter-spacing: .26em; text-indent: .26em; font-family: 'Shippori Mincho', serif; margin-bottom: 10px; }
.flex-title { text-align: center; line-height: 1.2; display: flex; align-items: center; }
.flex-title .en { font-family: 'Cormorant Garamond', serif; font-size: 34px; letter-spacing: .1em; font-weight: 600; }
.flex-title .jp { /*font-family: 'Noto Serif JP', serif;*/ font-weight: 300; font-size: 12px; letter-spacing: .14em; margin-left: 10px; }
.title-border { padding-bottom: 20px; margin-bottom: 20px; position: relative; }
.title-border:before { content: ""; position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; width: 20px; height: 1px; background: rgba(51,0,0,.5); }
.title-border.is-white:before { background: rgba(255,255,255,.5); }
.title-border.is-left { text-align: left; }
.title-border.is-left:before { margin-left: 0; margin-right: auto; }
.title-comment { position: relative; display: inline-block; padding: 0 25px 0 35px; }
.title-comment:before { content: ""; left: 0; bottom: 0; height: 100%; width: 1px; background: #5e3b1e; position: absolute; transform: rotate(-30deg);}
.title-comment:after { content: ""; right: 0; bottom: 0; height: 100%; width: 1px; background: #5e3b1e; position: absolute; transform: rotate(30deg);}
.title-kakko { text-align: center; }
.title-kakko > div { padding: 0 40px; position: relative; display: inline-block; width: 780px; }
.title-kakko > div:before { content: ""; width: 13px; height: 95px; position: absolute; left: 0; top: 0; bottom: 0; margin: auto 0; background-image: url(../images/room/kakko_left.svg); }
.title-kakko > div:after { content: ""; width: 13px; height: 95px; position: absolute; right: 0; top: 0; bottom: 0; margin: auto 0; background-image: url(../images/room/kakko_right.svg); }
.title-kakko small { font-size: 12px; letter-spacing: .15em; }
.title-kakko .jp { font-size: 30px; letter-spacing: .2em; line-height: 1.6; }
.title-kakko .en { font-size: 12px; letter-spacing: .15em; margin-top: 5px; }
.label-title { color: #533415; position: relative; }
.label-title .main-title { letter-spacing: .04em; font-family: 'Cormorant Garamond', serif; }
.label-title .font-size-md { color: #97925a; }
/*.label-title:before { content: "";  background-color: rgba(83,52,21,.5); height: 1px; position: absolute; right: 0; top: 0; bottom: 0; margin: auto 0; }*/
.label-title.breakfast:before { left: 0; right: auto; width: calc(100% - 250px); }
.label-title.children:before { width: calc(100% - 320px); }
.fixed-banner { position: fixed; right: 0; z-index: 10; top: 0; bottom: 0; margin: auto 0; display: flex; justify-content: center; align-items: center; }
.fixed-banner ul { overflow: hidden; border-radius: 10px 0 0 10px; }
.fixed-banner li a { height: 135px; width: 55px; padding: 25px 0 20px; display: block; background: #fff; text-align: center; position: relative; }
.fixed-banner li a .icons { width: 100%; height: 20px; text-align: center; margin-bottom: 10px; }
.fixed-banner li a .icons img { display: block; margin: auto; }
.fixed-banner li a span { padding-left: 2px; color: #fff; font-size: 12px; letter-spacing: .1em; display: flex; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; width: 100%; text-align: left; justify-content: center; align-items: center; padding-bottom: 10px; line-height: 1.27; padding-right: .1em; }
.fixed-banner li a.v1 { background-color: #5c3b1e; }
.fixed-banner li a.v2 { background-color: #9b9456; }
.fixed-banner li a.v3 { background-color: #669892; }

/* overview */
.boxshadow { box-shadow: 7px 7px 23px 10px rgba(0,0,0,0.3); }
.allWrapper { overflow: hidden; }
.container-fluid { max-width: 1110px; padding-left: 15px; padding-right: 15px; }
.container-fluid .container-fluid { padding-left: 0; padding-right: 0; }
.full-width { margin-left: calc(-50vw + 50%); margin-right: calc(-50vw + 50%); }
.full-width .container-fluid { padding-left: 15px; padding-right: 15px; }
.mgl-auto { margin-left: auto; }
.mgr-auto { margin-right: auto; }
.slick-dotted.slick-slider { margin-bottom: 0; }
.slick-dots { bottom: 45px; }
.slick-dots li { width: 7px; height: 7px; margin: 4px; }
.slick-dots li button { background: #000; opacity: .5; width: 100%; height: 100%; border-radius: 100%; padding: 0; }
.dots-dark .slick-dots li button { background: #000; }
.slick-dots li.slick-active button { opacity: 1; }
.slick-dots li button:before { display: none; }
.nowrap { white-space: nowrap; }
.banner-slider { margin-left: -13px; margin-right: -13px; }
.banner-slider .slick-slide { padding: 0 13px; }
.banner-slider .slick-dots { position: static; margin-top: 25px;}
.banner-wood { display: block; background-image: url(../images/common/bg-wood.jpg); background-position: center; background-size: cover; color: #fff!important; text-align: center; padding: 10px; border-radius: 1.5em; box-shadow: 5px 5px 8px -2px rgba(51,0,0,0.6); }
.banner-wood > div { padding: 35px 20px; border: 1px solid rgba(255,255,255,.5); border-radius: 1em; }
.banner-wood .sub-title2 { margin-bottom: 5px; }
.banner-wood p { margin-top: 20px; letter-spacing: .15em; }
.bg-paper { background-image: url(../images/common/bg-paper.jpg); background-repeat: repeat; }
/* .bg-paper2 { background-image: url(../images/common/bg-paper2.jpg); background-repeat: repeat; color: #fff; }
.bg-paper3 { background-image: url(../images/common/bg-paper3.jpg); background-repeat: repeat; } */
.bg-paper4 { background-image: url(../images/common/bg-paper4.jpg); background-repeat: repeat; color: #533415; }
.bg-paper4 hr { border-color: rgba(33,33,33,.5)!important; }
.bg-paper5 { background-image: url(../images/common/bg-paper5.jpg); background-repeat: repeat; color: #533415; }
.bg-dark { background-color: #533415!important; color: #fff; }
.bg-white { background-color: #fff; }
.bg-white { color: #533415; }
.bg-white a { color: #533415; }
.bg-green { background-color: #0c6c61; }
.underline { border-bottom: 1px solid rgba(18,50,107,.5); padding-bottom: 5px; }
hr { margin-top: 100px; margin-bottom: 100px; border-color: rgba(83,52,21,.5); }
hr.short { width: 20px; border-top: 1px solid rgba(83,52,21,.5); margin-left: 0; margin-right: 0; }
hr.white { border-top: 1px solid rgba(255,255,255,.5); }
hr.center { margin-left: auto; margin-right: auto; }
ruby rt { font-size: 10px; letter-spacing: .01em; padding-right: 0.3em; position: relative; }
.box-btn { width: 320px; max-width: 100%; height: 50px; border: 1px solid #533415; display: flex; align-items: center; justify-content: center; letter-spacing: .04em; text-align: center; margin-left: auto; margin-right: auto; }
.btn-viewmore { display: flex; line-height: 1; padding: 19px 40px; border: 1px solid #006c61; background-color: #006c61; color: #fff; align-items: center; justify-content: center; transition: .3s; cursor: pointer; position: relative; color: #fff!important; }
.btn-viewmore span { display: block; font-size: 17px; letter-spacing: .15em; }
.btn-viewmore .arrow { background-image: url(../images/common/btn-arrow.svg); width: 17px; height: 17px; position: absolute; right: 25px; background-size: cover; }
.btn-viewmore.noborder { border: none!important; padding: 0; }
.btn-viewmore.min { padding: 15px 30px; }
.btn-viewmore.min span { width: 100px; }
.btn-viewmore.red { color: #fff; border: 1px solid #a61f26; background: #a61f26; }
.bg-dark .btn-viewmore,
.btn-viewmore.white { color: #fff; border: 1px solid rgba(255,255,255,.5); }
.bg-dark .btn-viewmore .arrow,
.btn-viewmore.red .arrow,
.btn-viewmore.white .arrow { background-image: url(../images/common/btn-arrow_red.svg); }
a.btn-viewmore:not(.noborder):hover { background: #533415; color: #fff; border-color: #533415; }
a.btn-viewmore:not(.noborder):hover .arrow { background-image: url(../images/common/btn-arrow_dark.svg); }
.bg-dark a.btn-viewmore:not(.noborder):hover,
a.btn-viewmore:not(.noborder).whitehover { background: #eff0f2; color: #533415; }
.bg-dark a.btn-viewmore:hover .arrow,
a.btn-viewmore.whitehover .arrow { background-image: url(../images/common/btn-arrow.svg); }
.btn-link { display: flex; font-size: 17px; align-items: center; justify-content: center; height: 45px; width: 310px; max-width: 100%; border: 1px solid #533415!important; color: #533415!important; position: relative; border-radius: 100px; font-family: 'Cormorant Garamond', serif; }
.btn-link:hover { text-decoration: none; }
.btn-link.center { margin-left: auto; margin-right: auto; }
.btn-toggles { width: 175px; display: inline-block; position: relative; padding-right: 25px; border-bottom: 1px solid #523418; padding-bottom: 8px; font-size: 15px; letter-spacing: .15em; line-height: 1; cursor: pointer; }
.btn-toggles:after { content: ""; background-image: url(../images/common/link_arrow_brown.svg); width: 17px; height: 17px; background-size: cover; position: absolute; right: 0; bottom: 8px; }
.btn-toggles.white { color: #fff; border-color: #fff; }
.btn-toggles.white:after { background-image: url(../images/common/link_arrow_white.svg); }
.banner-register { overflow: hidden; }
.banner-register * { color: #fff!important; }
.banner-register .banner-box { position: relative; text-align: center; padding: 32px 30px 35px; }
.banner-register .wrapper { display: flex; justify-content: center; align-items: center; }
.banner-register .photo { width: 190px; }
.banner-register .contents { padding-left: 25px; }
.banner-register .title { font-size: 30px; letter-spacing: .2em; line-height: 1.4; margin-bottom: 15px; }
.banner-register .title small { font-size: 14px; letter-spacing: .1em; }
.banner-register .links { padding: 0 15px; margin-top: 25px; }
.banner-register .links a { display: flex; align-items: center; justify-content: center; height: 45px; width: 220px; max-width: 100%; border: 1px solid #fff; color: #5c3b1e!important; background-color: #fff; position: relative; border-radius: 100px; }
.banner-register .links a span { color: #5c3b1e!important; }
.banner-register .links a .arrow { position: absolute; right: 18px; top: 0; bottom: 0; margin: auto 0; height: 17px; width: 17px; border: 1px solid #523418; border-radius: 100%; }
.banner-register .links a .arrow:before { content: ""; position: absolute; right: 0; left: 0;  top: 0; bottom: 0; margin: auto; border-top: 1px solid #523418; border-right: 1px solid #523418; transform: rotate(45deg); display: block; height: 4px; width: 4px; }
.banner-register.is-simple .banner-box { padding: 60px 15px 40px; }
.banner-register.is-simple a { border: none!important; }
.origin-row { display: flex; justify-content: space-between; }
.origin-row .col-main { width: 43%; padding-top: 15px; }
.origin-row .col-sub { width: 50%; max-width: 555px; }
.lg-banner { display: block; padding: 12px; text-align: center; }
.lg-banner .sub-title1 { margin-bottom: 10px; }
.lg-banner .label { padding: 45px 60px 30px; background: rgba(255,255,255,.8); max-width: 375px; width: 100%; margin: 0 auto; position: relative; color: #533415; }
.lg-banner .label:before { content: ""; position: absolute; left: 10px; top: 10px; height: calc(100% - 20px); width: calc(100% - 20px); border: 1px solid #533415; }
.lg-banner .btn-viewmore { border: none; padding: 0; width: 100%; max-width: 250px; margin: 25px auto 0; }
.lg-banner.is-half { padding-top: 30px; padding-bottom: 30px; }
.lg-banner.border-beige .label:before { border-color: #5e3b1e; }
.list-news { background-color: #fff; padding: 35px 55px; border-radius: 22px; }
.list-news a { display: flex; flex-wrap: wrap; padding: 20px 0; border-bottom: 1px solid rgba(51,0,0,.5); }
.list-news li:last-child a { border-bottom: none; }
.list-news a .date { width: 120px; }
.list-news a .cat { width: 200px; }
.list-news a .cat span { background: #5d3b1b; display: inline-block; color: #fff; padding: 8px 10px; line-height: 1; white-space: nowrap; width: 100%; text-align: center; }
.list-news a .cat.important span { background: #004d5a; }
.list-news a .cat.event span { background-color: #fff; color: #5c3b1e; border: 1px solid #5c3b1e; }
.list-news a .title { width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-top: 10px; }
.page-hero { height: 370px; display: flex; align-items: center; justify-content: center; position: relative; color: #fff; text-align: center; margin-bottom: 40px; }
.page-hero .en { font-size: 44px; letter-spacing: .1em; font-family: 'Cormorant Garamond', serif; font-weight: 600; line-height: 1; }
.page-hero .jp { font-size: 12px; letter-spacing: .15em; line-height: 1; margin: 15px; }
.page-hero:before { content: ""; position: absolute; left: 0; right: 0; bottom: -90px; height: 190px; background: rgba(255,255,255,.5); width: 1px; margin: 0 auto; }
.page-hero:after { content: ""; position: absolute; left: 0; right: 0; top: 270px; height: 0; animation: hero-arrow 2.5s ease 0s infinite normal; background: rgba(83,52,21,.5); width: 1px; margin: 0 auto; }
.bread { display: flex; margin-bottom: 100px; }
.bread li { display: flex; position: relative; display: flex; align-items: center; padding-left: 13px; }
.bread li:first-child { padding-left: 0; }
.bread li:after { content: ""; display: block; border-top: 1px solid #533415; border-right: 1px solid #533415; transform: rotate(45deg); height: 6px; width: 6px; margin-left: 10px; }
.bread li:last-child:after { display: none; }
.bg-white .bread li:after { border-color: #533415; }
.box-label { margin-bottom: 40px; }
.box-label > div { display: flex; align-items: center; justify-content: center; text-align: center; height: 100%; width: 100%; padding-top: 8px; }
.box-label .lg { font-size: 35px; line-height: 1; margin-bottom: 5px; }
.box-label .md { font-size: 16px; }
.concept_list li { display: flex; position: relative; flex-wrap: wrap; margin-left: -20px; margin-right: -20px; margin-bottom: 150px; }
.concept_list li:last-child { margin-bottom: 0; }
.concept_list .contents { width: 37%; padding-left: 20px; padding-right: 20px; }
.concept_list .photo { width: 63%; padding-left: 20px; padding-right: 20px; }
.concept_list .title { font-size: 17px; letter-spacing: .15em; line-height: 1.76; }
.concept_list .head { display: flex; align-items: flex-end; line-height: 1; margin-bottom: 50px; justify-content: space-between; }
.concept_list .head .text { font-size: 35px; letter-spacing: .2em; }
.concept_list .btn-viewmore { max-width: 260px; }
.area_list li { display: flex; position: relative; flex-wrap: wrap; margin-left: -20px; margin-right: -20px; }
.area_list li:last-child { margin-bottom: 0; }
.area_list .contents { width: calc(100% - 370px); padding-left: 20px; padding-right: 20px; }
.area_list .photo { width: 370px; padding-left: 20px; padding-right: 20px; }
.area_list .title .sub-title1 { line-height: 1.4; }
.faq_list li { margin-bottom: 25px; }
.faq_list .icon { font-size: 25px; letter-spacing: 0; width: 45px; line-height: 1; padding-bottom: 8px; }
.faq_list dt { display: flex; align-items: center; padding: 10px 50px 10px 30px; background: #78737c; color: #fff; cursor: pointer; font-weight: normal; line-height: 1.5; position: relative; }
.faq_list dt:before { content: ""; position: absolute; right: 18px; width: 20px; height: 1px; background: #fff; top: 0; bottom: 0; margin: auto 0; }
.faq_list dt:after { content: ""; position: absolute; right: 18px; width: 20px; height: 1px; background: #fff; top: 0; bottom: 0; margin: auto 0; transform: rotate(90deg); transition: .3s; }
.faq_list dt.active:after { display: none; }
.faq_list dt .title { font-weight: normal; font-size: 19px; letter-spacing: .15em; width: calc(100% - 45px); }
.faq_list dd { display: none; }
.faq_list dd > div { display: flex; background: #fff; padding: 25px 30px 30px; font-size: 17px; letter-spacing: .15em; line-height: 1.76; }
.faq_list dd .contents { width: calc(100% - 45px); }
.faq_list dd .icon { padding-top: 6px; }
.sitemap_list { margin-top: 10px; }
.sitemap_list li { padding: 5px 0; font-size: 17px; letter-spacing: .15em; line-height: 1.4; display: flex; }
.sitemap_list li a { display: inline-block; position: relative; display: flex; align-items: center; transition: .3s; }
.sitemap_list li a:hover { opacity: .8; }
.sitemap_list li:after { content: "/"; display: inline-block; padding: 0 10px; }
.sitemap_list li:last-child:after { display: none; }
.news_list li:first-child a { padding-top: 0; }
.news_list li a { display: flex; padding: 12px 0; border-bottom: 1px solid rgba(51,0,0,.5); }
.news_list li a .date { width: 100px; font-size: 14px; padding-top: 2px; }
.news_list li a .title { width: calc(100% - 100px); font-size: 13px; }
.news_list li a:hover { opacity: .8; }
.meal_list li { padding-top: 70px; border-top: 1px solid rgba(83,52,21,.5); }
.meal_list li:first-child { border-top: none; }
.facility_list .font-size-md { letter-spacing: .1em; }
.room_list li { margin-bottom: 100px; }
.room_list li:last-child { margin-bottom: 0; border-bottom: none; }
.room_list .contents { display: flex; flex-wrap: wrap; }
.room_list .contents .left { width: calc(100% - 230px); padding-right: 50px; }
.room_list .contents .right { width: 230px; }
.room_list .contents .room_lightbox { position: relative; display: block; }
.room_list .contents .room_lightbox .icon { position: absolute; left: 10px; top: 10px; }
.room_list .contents .room_lightbox:hover { opacity: .8; }
.room_list .title { margin-bottom: 25px; }
.room_list .title .jp { font-size: 24px; }
.room_list .title .en { font-family: "PT Serif", serif; font-weight: 400; font-style: normal; font-size: 10px; letter-spacing: .12em; color: #533415; }
.room_list .btn-viewmore { font-size: 17px; padding: 19px 40px; background: #272966; border-color: #272966; color: #fff!important; }
.room_list .btn-viewmore span { width: 180px; order: 1; }
.room_list .btn-viewmore .arrow { order: 2; }
.room_list .btn-viewmore:hover { background: #533415; border-color: #533415; }
.lg_catch { padding: 130px 0; }
.card-white { background: #fff; border-radius: 2.3em; padding: 60px 45px 50px; color: #533415; }
.card-white a { color: #533415; }
.card-white .card-white { border: 1px solid rgba(0,19,40,.5); border-radius: 0; padding: 10px 15px; }
.card-beige { border-radius: 2.3em; padding: 60px 45px 50px; }
.card-beige .card-white { border-radius: 1em; padding: 20px; }
.card-beige ol { list-style: none; }
.card-beige ol li { position: relative; padding-left: 20px; }
.card-beige ol li:before { content: ""; position: absolute; left: 5px; top: 13px; width: 2px; height: 2px; background: #000; border-radius: 100%; }
.card-border { border: 1px solid #001a2b; border-radius: 60px; padding: 0 15px 50px; }
.card-border .icon-title { width: 350px; margin-left: auto; margin-right: auto; margin-top: -25px; }
.card-border .btn-viewmore { font-size: 14px; letter-spacing: .025em; padding: 17px 30px; justify-content: center; }
.card-dots { background: #fff; border-radius: 2.3em; padding: 20px; position: relative; }
.card-dots:before { content: ""; width: 6px; height: 6px; border-radius: 100%; background: #ab7547; position: absolute; left: 40px; top: 40px; }
.card-dots:after { content: ""; width: 6px; height: 6px; border-radius: 100%; background: #ab7547; position: absolute; right: 40px; top: 40px; }
.card-dots > div:before { content: ""; width: 6px; height: 6px; border-radius: 100%; background: #ab7547; position: absolute; left: 40px; bottom: 40px; }
.card-dots > div:after { content: ""; width: 6px; height: 6px; border-radius: 100%; background: #ab7547; position: absolute; right: 40px; bottom: 40px; }
.card-dots > div { border: 1px solid #a06d3b; border-radius: 2em; padding: 13px; }
.card-dots .title { text-align: center; height: 50px; display: flex; align-items: center; justify-content: center; margin-bottom: 15px; }
.card-dots .photo { margin-bottom: 40px; }
.card-dots p { min-height: 270px; line-height: 1.76; text-align: center; }
.common-label { border: 1px solid #011a2a; display: block; text-align: center; background: #533415; color: #fff!important; font-size: 17px; letter-spacing: .15em; }
.common-label.is-important { background: #004c53; border-color: #004c53; }
.common-label.is-event { color: #533415!important; background: none; }
.common-label.is-media { color: #5c3b1e!important; background: none; border-color: #5c3b1e; }
.main-row { display: flex; margin-left: -12px; margin-right: -12px; }
.main-row .col-contents { width: calc(100% - 260px); padding-left: 12px; padding-right: 12px; }
.main-row .col-sidemenu { width: 260px; padding-left: 12px; padding-right: 12px; }
.post-header { display: flex; flex-wrap: wrap; margin-bottom: 40px; align-items: center; }
.post-header .date { font-size: 15px; letter-spacing: .15em; margin-right: 30px; }
.post-header .cat span { min-width: 200px; max-width: 100%; padding-left: 10px; padding-right: 10px; line-height: 1.5; font-size: 14px; }
.post-header .cat.label-news span { }
.post-header .title { width: 100%; margin-top: 15px; }
.dl-table { display: flex; border-bottom: 1px solid rgba(83,52,21,.5); padding-bottom: 15px; margin-bottom: 15px; }
.dl-table > dt { width: 240px; font-weight: normal; }
.dl-table > dd { width: calc(100% - 240px); }
.table-plan { width: 100%; text-align: center; }
.table-plan .dark { background: #533415; color: #fff; }
.table-plan th { background: rgba(51,0,0,.3); }
.table-plan th,
.table-plan td { text-align: center; height: 45px; vertical-align: middle; line-height: 1.2; border: 2px solid #533415; }
.img-radius { border-radius: 18px; }
.slick-img-prev,
.slick-img-next { position: absolute; }
.common-slider .slide-animation .bg { animation: hero_scroll 15s linear 0s 1 normal forwards; background-size: 120% auto; }
.origin-slider { padding-left: 50px; padding-right: 50px; }
.origin-slider .slick-img-prev { position: absolute; left: 0; bottom: 0; top: 0; margin: auto 0; cursor: pointer; z-index: 1; }
.origin-slider .slick-img-next { position: absolute; right: 0; bottom: 0; top: 0; margin: auto 0; cursor: pointer; z-index: 1; }
.origin-slider .slick-dots { left: 0; right: 0; width: 100%; bottom: 30px; }
.origin-slider .child { position: relative; }
.origin-slider .child .label { position: absolute; right: 20px; bottom: 12px; color: #fff; font-size: 14px; letter-spacing: .05em; text-shadow: 1px 1px 1em #000; }
.origin-slider .child img { width: 100%; }
.origin-slider p { position: absolute; left: 15px; bottom: 10px; color: #fff; }
.origin-slider.sticks { padding-left: 0; padding-right: 0; }
.origin-slider.sticks .slick-img-prev { left: -15px; width: 30px; height: 30px; }
.origin-slider.sticks .slick-img-next { right: -15px; width: 30px; height: 30px; }
.origin-thumb { z-index: 1; }
.origin-thumb * { float: none!important; }
.origin-thumb .slick-track { width: auto!important; transform: none!important; display: flex; margin-top: -5px; flex-wrap: wrap; justify-content: center; }
.origin-thumb .block { display: block; width: 70px!important; margin: 0; border: none; padding: 5px; opacity: .8; transition: .3s; float: none!important; }
.origin-thumb .block.slick-active { opacity: 1; }
.origin-thumb figure { padding-top: 100%; position: relative; cursor: pointer; }
.kakko { position: relative; padding: 20px; }
.kakko:before { content: ""; position: absolute; left: 0; top: 0; height: 100%; width: 13px; border: 1px solid #a06d3b; border-right: none; }
.kakko:after { content: ""; position: absolute; right: 0; top: 0; height: 100%; width: 13px; border: 1px solid #a06d3b; border-left: none; }
.smoke-bottom { position: relative; }
.smoke-bottom:before { content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 75px; background: rgb(255,255,255); background: linear-gradient(0deg, rgba(255,255,255,1) 20%, rgba(255,255,255,0) 100%); }
.text-decoration-underline { text-decoration: underline!important; }
.text-decoration-line-through { text-decoration: line-through!important; }
.dots-table dl { border-bottom: 1px dashed rgba(51,0,0,.5); display: flex; flex-wrap: wrap; padding-top: 25px; padding-bottom: 15px; width: 100%; }
.dots-table dl:first-child { padding-top: 0; }
.dots-table dl:last-child { padding-bottom: 0; border-bottom: none; }
.dots-table dt { font-weight: normal; width: 220px; }
.dots-table dd { width: calc(100% - 220px); }
.header-dots dt { position: relative; background: #aa7648; color: #fff; font-weight: normal; padding: 14px; text-align: center; }
.header-dots dt:before { content: ""; width: 4px; height: 4px; border-radius: 100%; background: #fff; position: absolute; left: 12px; top: 12px; }
.header-dots dt:after { content: ""; width: 4px; height: 4px; border-radius: 100%; background: #fff; position: absolute; right: 12px; top: 12px; }
.header-dots dt > div:before { content: ""; width: 4px; height: 4px; border-radius: 100%; background: #fff; position: absolute; left: 12px; bottom: 12px; }
.header-dots dt > div:after { content: ""; width: 4px; height: 4px; border-radius: 100%; background: #fff; position: absolute; right: 12px; bottom: 12px; }
.header-dots dd { border: 1px solid #aa7648; border-top: none; padding: 25px 15px; }
.simple-table { margin-left: auto; margin-right: auto; text-align: center; }
.simple-table td { border: 1px solid rgba(51,0,0,.5); padding: 10px 20px; }
.under_arrow { text-align: center; }
.under_arrow img { display: block; margin-bottom: 10px; }
.under_arrow:after { content: ""; border-right: 1px solid rgba(83,52,21,.5); border-bottom: 1px solid rgba(83,52,21,.5); transform: rotate(45deg); display: block; width: 10px; height: 10px; margin-left: auto; margin-right: auto; margin-top: 3px; margin-bottom: 3px; }
.under_arrow > div { line-height: 1.8; display: flex; align-items: center; justify-content: center; }
.labels_list { display: flex; flex-wrap: wrap; }
.labels_list li { width: 100%; }
.contact-table { margin-top: 50px; }
.contact-table .req { display: inline-block; color: #fff; background: #a91d21; font-size: 12px; line-height: 1; padding: 3px 10px 4px; margin-left: 15px; }
.contact-table dl { display: flex; flex-wrap: wrap; margin-bottom: 25px; }
.contact-table dl dt { width: 280px; font-weight: normal; }
.contact-table dl dd { width: calc(100% - 280px); }
.contact-table input[type="text"],
.contact-table input[type="email"],
.contact-table input[type="tel"],
.contact-table input[type="number"],
.contact-table select { width: 390px; max-width: 100%; height: 33px; line-height: 33px; padding: 3px 5px; border:1px solid rgba(83,52,21,.5); }
.contact-table input[type="number"] { width: auto; }
.contact-table textarea { width: 100%; padding: 5px 5px; border:1px solid rgba(51,0,0,.5); height: 150px; }
.contact-table .wpcf7-list-item { margin-left: 0; margin-right: 2em; margin-bottom: 1.5em; }
.contact-table .btn-viewmore { font-size: 17px; padding: 19px 40px; text-align: left; }
.contact-table .btn-viewmore span { width: 110px; }
.movetext > span { opacity: 0; }
.access-label { font-size: 19px; letter-spacing: .025em; width: 100px; color: #efede5; height: 43px; background: #764346; display: flex; align-items: center; justify-content: center; }
.access-content { width: calc(100% - 100px); padding-left: 13px; font-size: 17px; letter-spacing: .1em; padding-top: 3px; color: #480508; }
.minikakko p { position: relative; display: inline-block; padding: 3px 15px; }
.minikakko p:before { content: ""; position: absolute; left: 0; height: 100%; top: 0; width: 10px; border: 1px solid rgba(0,0,0,.5); border-right: none; }
.minikakko p:after { content: ""; position: absolute; right: 0; height: 100%; top: 0; width: 10px; border: 1px solid rgba(0,0,0,.5); border-left: none; }
.ol-dots li { list-style: none; display: flex; }
.ol-dots li:before { content: "・"; }
.vira-facility-list li:last-child::before { content: ""; position: absolute; right: -70px; height: 100%; width: 1px; border-left: 1px dashed #533415; }

/* section */
.fv_wrapper { padding: 120px 0 0 20%; }
.firstView { position: relative; margin-top: 70px; }
.firstView .toparea { padding: 80px 0 30px; }
.firstView .toparea .maintitle { font-size: 34px; letter-spacing: .36em; font-family: 'Shippori Mincho', serif; }
.firstView .toparea .description { font-size: 10px; font-family: "Overpass", sans-serif; }
.firstView .contents { width: 100%; height: 100%; position: absolute; top: 0; left: 0; right: 0; margin: 0 auto; text-align: left; display: flex; align-items: center; width: 1080px; color: #fff; padding-bottom: 80px; }
.firstView .bg { height: 90vh; min-height: 600px; max-height: 880px; background-repeat: no-repeat; }
.firstView .scroll { position: absolute; right: 120px; left: auto; bottom: 0; width: 1px; margin: 0 auto; display: flex; }
.firstView .scroll img { margin-bottom: 13px; max-width: none; position: relative; }
.firstView .scroll .text { margin-bottom: 10px; line-height: 1; font-size: 12px; color: #523418; font-weight: 300; position: relative; left: 16px; top: 5px; }
.firstView .scroll > div { height: 150px; width: 1px; background: rgba(255,255,255,.3); position: relative; }
.firstView .scroll > div:before { content: ""; position: absolute; top: 0; height: 0; transition: 2.5s; width: 1px; background: #523418; animation: arrow 2.5s ease 0s infinite normal; }
.firstView .scroll[style*="opacity: 1"] > div:before { height: 100%; }
.firstView .common-slider { margin-bottom: 0; }
.firstView .common-slider .slide-animation .bg { animation: hero_scroll 15s linear 0s 1 normal forwards; background-size: 120% auto; }
.firstView .title { margin-bottom: 30px; }
.firstView .title p { font-size: 21px; letter-spacing: .33em; font-weight: 400; margin-bottom: 10px; }
.firstView .title .main { font-size: 42px; letter-spacing: .38em; font-weight: 400; }
.firstView .p1 { font-size: 16px; letter-spacing: .42em; text-indent: .42em; }
.firstView .date { font-size: 25px; display: flex; justify-content: center; line-height: 1.5; letter-spacing: .3em; margin-top: 30px; }
.firstView .date .left { border-right: 1px solid #fff; margin-right: 20px; padding-right: 20px; }
.firstView .en { font-size: 10px; margin-top: 40px; }
.firstView .sub-news { position: absolute; left: 100px; bottom: 30px; background-color: rgba(228,228,228,.8); padding: 10px 13px 13px; width: 240px; border-radius: 8px; }
.firstView .sub-news .heads { display: flex; border-bottom: 1px solid #523418; margin-bottom: 10px; align-items: flex-end; padding-bottom: 3px; }
.firstView .sub-news .heads .news-cat { font-size: 14px; letter-spacing: .14em; }
.firstView .sub-news .heads .news-date { font-size: 12px; letter-spacing: .1em; margin-left: 10px; }
.firstView .sub-news .news-title { font-size: 12px; line-height: 1.8; letter-spacing: .16em; }
.firstView .wrapper { padding-right: 150px; position: relative; }
.firstView .wrapper:before { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 210px; background-color: #272966; }
.concept { background: #272966; color: #d1c097; }
.about { padding: 100px 0 120px; background: #fffef2; }
.about ul li { display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 90px; }
.about ul li:last-child { margin-bottom: 0; }
.about ul li .photo { width: 45%; text-align: right; }
.about ul li .photo img { max-width: 130%; float: right; }
.about ul li .contents { width: 45%; padding-bottom: 50px; }
.about ul li .title { line-height: 1.22; position: relative; margin-bottom: 35px; }
.about ul li .title .jp { font-size: 16px; letter-spacing: .34em; text-indent: .34em; margin-top: 15px; display: inline-block; border: 1px solid #533415; padding: 5px 8px; }
.about ul li .catch { font-size: 18px; letter-spacing: .2em; color: #533415; margin-bottom: 35px; font-weight: 400; }
.about ul li .detail { font-size: 14px; letter-spacing: .16em; padding: 35px 0; border: 1px dashed rgba(67,50,27,.25); border-left: none; border-right: none; font-weight: 300; }
.about ul li:nth-child(even) .title:before { right: 0; left: auto; }
.about ul li:nth-child(even) .photo img { float: none; }
.about ul li .accordions { width: 100%; order: 3; margin: 90px 0 95px; }
.facility-card .photo { margin-bottom: 30px; }
.facility-card .title { font-size: 21px; letter-spacing: .2em; margin-bottom: 10px; font-weight: 300; }
.facility-card p { font-size: 13px; letter-spacing: .1em; font-weight: 300; }
.rate-box { display: flex; flex-wrap: wrap; background: rgb(240,204,126); background: linear-gradient(135deg, rgba(240,204,126,1) 0%, rgba(232,196,126,1) 17%, rgba(171,105,34,1) 55%, rgba(239,202,132,1) 85%, rgba(244,231,207,1) 100%); padding: 3px; }
.rate-box .photo { width: 43%; }
.rate-box .contents { width: 57%; background: #9d9481; color: #fff; padding: 35px 20px 30px 45px; position: relative; }
.rate-box .top .icon { position: absolute; right: 50px; top: 3px; }
.rate-box .top .title { margin-bottom: 15px; line-height: 1.5; }
.rate-box .top .title span { border-bottom: 1px solid #fff; padding-bottom: 10px; display: inline-block; }
.rate-box .top .title .small { font-weight: 400; font-size: 14px; letter-spacing: .2em; margin-bottom: 7px; }
.rate-box .top .title .main { font-weight: 500; font-size: 25px; letter-spacing: .2em; }
.rate-box .top p { font-size: 13px; letter-spacing: .12em; line-height: 2.15; }
.rate-box .bottom { display: flex; flex-wrap: wrap; justify-content: flex-start; margin-left: -18px; margin-top: 20px; }
.rate-box .bottom .link-button { border: 1px solid #fff; position: relative; padding: 5px 30px; width: 220px; color: #fff; margin: 0 18px; }
.rate-box .bottom .link-button:before { content: ""; position: absolute; right: 20px; top: 0; bottom: 0; margin: auto 0; height: 7px; width: 7px; border-top: 1px solid #fff; border-right: 1px solid #fff; transform: rotate(45deg); }
.access { background: #fffef2; }
.access-list li { margin-bottom: 60px; padding-bottom: 55px; border-bottom: 1px dashed rgba(67,50,27,.5); }
.access-list li:last-child { margin-bottom: 0; padding-bottom: 0; border: none; }
.access-list .title { display: flex; align-items: center; margin-bottom: 40px; }
.access-list .title .text { font-size: 19px; letter-spacing: .2em; font-weight: 400; margin-left: 20px; }
.access-list .map { text-align: center; }
.sightseeing { background: #fffef2; }
.sightseeing .detail { font-size: 16px; letter-spacing: .2em; font-weight: 400; }
.sightseeing .detail li { margin-bottom: 10px; }
.sightseeing .detail img { height: 15px; position: relative; top: -2px; }
.gmap iframe { display: block; width: 100%; height: 270px; }
.section-news { padding: 70px 0 100px; position: relative; }
.section-news:before { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: calc(100% - 350px); background-color: #ede9df;)}
.section-news .btn-viewmore span { width: 140px; margin-right: 5px; }
.section-news .btn-viewmore .arrow { width: calc(100% - 140px); }
.acc_wrapper { border-top: none; overflow: hidden; margin-bottom: 90px; padding-bottom: 90px; border-bottom: 1px solid rgba(83,52,21,.5); }
.acc_wrapper.nb { border-bottom: none; padding-bottom: 0; }
.acc_wrapper .acc_head { display: flex; flex-wrap: wrap; justify-content: space-between; }
.acc_wrapper .acc_head .title-kakko { background: rgba(67,50,25,.1); width: calc(50% - 5px); border: 1px solid #433219; border-bottom: none; margin-bottom: 0!important; padding: 15px; position: relative; cursor: pointer; }
.acc_wrapper .acc_head .title-kakko > div { max-width: 100%; }
.acc_wrapper .acc_head .title-kakko .labels { background: #433219; color: #fff; display: inline-block; padding: 0 15px; position: relative; letter-spacing: .2em; }
.acc_wrapper .acc_head .title-kakko .labels:before { content: ""; position: absolute; right: 100%; width: 5px; top: 0; height: 100%; background-image: url(../images/room/label.svg); background-repeat: no-repeat; background-size: auto 100%; }
.acc_wrapper .acc_head .title-kakko .labels:after { content: ""; position: absolute; left: 100%; width: 5px; top: 0; height: 100%; background-image: url(../images/room/label.svg); background-repeat: no-repeat; background-size: auto 100%; background-position: right; }
.acc_wrapper .acc_head .title-kakko.active { background: none; }
.acc_wrapper .acc_head .title-kakko:nth-child(1) { border-radius: 10px 10px 0 0; }
.acc_wrapper .acc_head .title-kakko:before { content: ""; position: absolute; left: 0; bottom: 0; width: calc(100% + 11px); height: 1px; background: #433219; }
.acc_wrapper .acc_head .title-kakko.active:before { display: none; }
.acc_wrapper .acc_head .title-kakko:nth-child(2) { border-radius: 10px 10px 0 0; }
.acc_wrapper .acc_head .title-kakko:nth-child(2):before { left: auto; right: 0; }
.acc_wrapper .acc_body { border: 1px solid #433219; border-top: none; padding-top: 30px; padding-bottom: 50px; }
.acc_wrapper .acc_body li { display: none; border-bottom: none; padding-bottom: 0; margin-bottom: 0; }
.acc_wrapper .acc_body li.active { display: block; }
.mealchild { position: relative; padding-bottom: 60px; }
.mealchild .btn-toggle { position: absolute; right: 0; top: 0; }
.mealchild .btn-toggle_off { position: absolute; bottom: 50px; left: 0; right: 0; margin: 0 auto; text-align: center; }
.halfmusk { position: relative; }
.halfmusk:before { content: ""; position: absolute; left: 0; top: 660px; width: 100%; height: calc(100% - 660px); background-color: #ebe7dd;}

/* page */
#home { margin-top: 0; }
#faq article { padding-bottom: 120px; }
#access .gmap { width: 100%; height: 500px; display: block; }
#meal .caution .color-red { color: #a91d21; }
#meal .seal { display: flex; flex-wrap: wrap; }
#meal .seal .icon { width: 145px; }
#meal .seal .contents { width: calc(100% - 145px); }
/* #room .box-label > div { border: none; } */
#dogs .dogs-title .label { background: #a58181; color: #fff; padding: .1em .6em .2em; margin-right: 10px; line-height: 1.4; display: inline-block; }
/* #tripla-icon-message { display: none!important; } */

.color-brown { color: #533415; }
.optima { font-family: Optima, Segoe, "Segoe UI", Candara, Calibri, Arial, sans-serif; }
hr.dots { margin: 85px 0; border-bottom: 1px dashed rgba(67,50,27,.5); border-top: none; }
.card-beige { background-image: url(../images/common/bg-paper5.jpg); }
.room_list li { margin-bottom: 90px; padding-bottom: 90px; }
#meal .bg-paper4 { background-image: none; background-color: #FFFCEF; }
#facility .dl-table { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
#facility .dl-table dt { width: 370px; }
#facility .origin-slider .slick-img-prev { left: -50px; }
#facility .origin-slider .slick-img-next { right: -50px; }
#facility .origin-slider { padding: 0; }
#facility .origin-thumb .slick-track { justify-content: flex-start; }
#facility .slick-img-prev,
#facility .slick-img-next { z-index: 1; }
#room .underline { border-bottom: 1px solid rgba(67,50,25,1); }
#room .room_list .option li { padding-bottom: 0; margin-bottom: 10px; border: 1px solid #433219; border-radius: 50px; padding: 5px 15px; display: inline-block; text-align: center; line-height: 1; }
#room .room_list .option li.brown { background-color: #433219; color: #FFFCEF; }
#room .room_list .right { width: 230px; }
#room .room_list .room_lightbox { position: relative; display: block; }
#room .room_list .room_lightbox .icon { position: absolute; left: 10px; top: 10px; }
#room .dl-table { border-bottom: 0; padding-bottom: 0; margin-bottom: 45px; align-items: flex-start; }
#room .dl-table dt { width: 150px; font-size: 17px; }
#room .dl-table dd { width: calc(100% - 150px); font-size: 13px; }
.slick-box { overflow: visible; }
.slick-box * { overflow: visible; }
.slick-box [class*="col"] { padding: 0 10px; }
.slick-box .slick-img-prev { left: 22%; top: 0; bottom: 32px; margin: auto 0; z-index: 1; }
.slick-box .slick-img-next { right: 22%; top: 0; bottom: 32px; margin: auto 0; z-index: 1; }
@keyframes arrow {
	0% { height: 0; }
	45% { height: 100%; }
	55% { height: 100%; top: 0; }
	100% { height: 0; top: 100%; }
}
@keyframes hero-arrow {
	0% { height: 0; }
	100% { height: 190px; }
}
@keyframes hero_scroll {
	0% { background-position: left 40% center; }
	100% { background-position: left 70% center; }
}

@media (min-width: 1301px) {
}
@media (max-width: 1300px) {
	.sub-nav { display: flex; background: #a58181; position: fixed; bottom: 0; left: 0; width: 100%; height: 55px; z-index: 997; }
	.sub-nav li { width: 25%; text-align: center; font-size: 12px; color: #fff; position: relative; }
	.sub-nav li a { border-right: 1px solid #fff; display: block; color: #fff; height: 55px; background: #a58181; }
	/* .sub-nav li a:hover { background: #c45159; } */
	.sub-nav li a.first { background: #bbac73; color: #fff; }
	.sub-nav li:last-child a { border-right: none; }
	.sub-nav li figure { position: relative; display: flex; align-items: center; justify-content: center; height: 35px; }
	.sub-nav li span { position: absolute; bottom: 7px; left: 0; right: 0; width: 100%; line-height: 1; }
}
@media (min-width: 768px) {
	.concept .concept_kv .title { -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }
	.about ul li:nth-child(even) .photo { order: 2; }
	.about ul li:nth-child(even) .contents { order: 1; }
}
@media (max-width: 767px) {
	body { min-width: 375px; font-size: 12px; }
	article { padding-bottom: 80px; }

	/* title */
	.main-title { font-size: 20px; }
	.sub-title1 { font-size: 20px; }
	.sub-title1 img { height: 18px; }
	.sub-title2 { font-size: 20px; }
	.font-size-lg { font-size: 16px; }
	.font-size-md { font-size: 14px; }
	.font-size-sm { font-size: 10px; }
	.title-kakko > div { width: 345px; padding: 0 25px; }
	.title-kakko small { font-size: 10px; }
	.title-kakko .jp { font-size: 18px; margin-bottom: 5px; letter-spacing: .1em; }
	.title-kakko .en { font-size: 10px; }
	.label-title:before { width: calc(100% - 130px); }
	.label-title.breakfast:before { width: calc(100% - 180px); }
	.label-title.children:before { width: calc(100% - 235px); }
	.label-title .main-title { font-size: 27px; }
	.title-comment:before { transform: rotate(-15deg); height: 90%; }
	.title-comment:after { transform: rotate(15deg); height: 90%; }
	.sec-title { font-size: 30px; }
	.set-title .en { font-size: 27px; }
	.set-title .jp { font-size: 12px; }
	.flex-title .en { font-size: 27px; }

	/* overview */
	.full-width { width: auto; margin-left: -15px; margin-right: -15px; }
	.sp-over { margin-left: -15px; margin-right: -15px; }
	.box-btn { width: 100%; }
	.btn-viewmore { padding: 10px 15px; width: 160px; font-size: 10px; margin-left: auto; margin-right: auto; }
	.btn-viewmore span { width: 100%; }
	.btn-viewmore .arrow { height: 5px; width: calc(100% - 80px); }
	.btn-viewmore.sp-left { margin-left: 0; }
	.btn-viewmore.min { padding: 10px 15px; }
	.btn-viewmore.full { width: 100%; padding: 0; }
	.btn-viewmore.full span { width: 80px; }
	.common-slider .slide-animation .bg { background-size: auto 100%; }
	.slick-img-prev { height: 18px; }
	.slick-img-next { height: 18px; }
	.banner-slider .slick-slide { padding: 0 17px; }
	.banner-slider .slick-slide a { display: flex; justify-content: center; }
	.banner-slider .slick-dots { margin-top: 15px; }
	.banner-slider .slick-img-prev { position: absolute; left: 20px; top: 0; bottom: 40px; margin: auto 0; width: 18px; z-index: 1; }
	.banner-slider .slick-img-next { position: absolute; right: 20px; top: 0; bottom: 40px; margin: auto 0; width: 18px; z-index: 1; }
	.banner-register { background-image: url(../images/home/register_bg_sp.jpg)!important; }
	.banner-register .banner-box { padding: 45px 20px; }
	.banner-register .wrapper { flex-wrap: wrap; margin-bottom: 20PX; }
	.banner-register .photo { width: 85px; }
	.banner-register .sm { font-size: 14px; letter-spacing: .15em; padding-left: 15px; width: calc(100% - 85px); white-space: nowrap; }
	.banner-register .contents { padding-left: 0; margin-top: 0; }
	.banner-register .contents p { text-align: left; letter-spacing: .09em; }
	.banner-register .title { font-size: 19px; letter-spacing: .1em; padding-bottom: 5px; white-space: nowrap; }
	.banner-register .links { margin-top: 10px; padding-left: 0; padding-right: 0; }
	.banner-register .links a { width: 190px; margin: 0 auto; font-weight: bold; font-size: 13px; height: 35px; letter-spacing: 0; }
	.banner-register .links a .arrow { right: 10px; width: 12px; height: 12px; }
	.origin-row { flex-wrap: wrap; }
	.origin-row .col-main { width: 100%; padding-top: 0; }
	.origin-row .col-sub { width: auto; }
	.origin-row .col-sub.sp-full { margin-left: -15px; margin-right: -15px; }
	.origin-thumb .block { width: 20%!important; }
	.common-label { font-size: 12px; padding: 5px 2px; letter-spacing: .1em; }
	.list-news a { flex-wrap: wrap; padding: 15px 0; }
	.list-news a .cat { order: 1; width: 100%; margin-bottom: 10px; }
	.list-news a .cat span { font-size: 10px; padding: 4px 6px; }
	.list-news a .date { order: 2; width: 100%; line-height: 1; margin-bottom: 5px; }
	.list-news a .title { order: 3; width: 100%; }
	.page-hero { height: calc(100vh - 55px); margin-bottom: 55px; }
	.page-hero:after { top: auto; bottom: -50px; }
	.page-hero:before { bottom: -50px; height: calc(50% - 100px); }
	.page-hero .en { letter-spacing: .02em; font-size: 35px; }
	.page-hero .jp { font-size: 10px; }
	.bread { display: none; }
	/* .box-label { width: 115px; height: 115px; } */
	.box-label .lg { font-size: 30px; }
	.box-label .md { font-size: 12px; }
	.concept_list li { padding-top: 0; position: relative; margin-bottom: 70px; }
	.concept_list .box-label { position: absolute; top: 0; left: 0; right: 0; margin-left: auto; margin-right: auto; }
	.concept_list .photo { padding-left: 0; padding-right: 0; width: auto; margin-left: -15px; margin-right: -15px; margin-bottom: 15px; }
	.concept_list .contents { width: 100%; }
	.concept_list .title { text-align: center; }
	.concept_list hr { margin-left: auto; margin-right: auto; }
	.concept_list .head { align-items: center; margin-bottom: 0; padding-left: 20px; padding-right: 20px; }
	.concept_list .head .text { font-size: 30px; }
	.concept_list .head .num img { height: 110px; }
	.room_list li { padding-bottom: 60px; margin-bottom: 0; border: none; }
	.room_list li:last-child { margin-bottom: 0; }
	.room_list .btn-viewmore { width: 100%; font-size: 12px; }
	.room_list .btn-viewmore span { width: 130px; }
	.room_list .contents .left { width: 100%; padding-right: 0; }
	.room_list .contents .right { display: none; }
	.room_list .origin-slider { padding-left: 0; padding-right: 0; }
	.room_list .origin-slider p { font-size: 10px; }
	.room_list .origin-slider .slick-img-prev { left: -9px; }
	.room_list .origin-slider .slick-img-next { right: -9px; }
	.room_list .underline { white-space: nowrap; }
	.area_list .contents { width: 100%; }
	.area_list .contents .title { text-align: center; }
	.area_list .photo { width: 100%; padding-left: 20px; padding-right: 20px; margin-bottom: 25px; }
	.meal_list li { padding-top: 0px; }
	.meal_list li:first-child { padding-top: 0; }
	.lg_catch { padding: 60px 0; }
	.banner-wood p { margin-top: 30px; }
	.card-border { border-radius: 25px; padding-bottom: 30px; }
	.card-border p { letter-spacing: .0em; }
	.card-border .icon-title { width: 120px; white-space: nowrap; }
	.card-border .icon-title .font-size-lg { margin-left: -20px; }
	.card-border .container-fluid { max-width: 100%!important; }
	.card-border .container-fluid .btn-viewmore { width: 100%; }
	.dl-table { flex-wrap: wrap; }
	.dl-table > dt { width: 100%; font-size: 12px; margin-bottom: 10px; }
	.dl-table > dd { width: 100%; font-size: 10px; }
	.dl-table.sp-border-none { border: none; padding-bottom: 0; margin-bottom: 0; }
	.dots-table dl { padding: 10px 0 10px; }
	.dots-table dt { width: 130px; }
	.dots-table dd { width: calc(100% - 130px); }
	.dots-table.full dt { width: 100%; margin-bottom: 15px; text-align: center; }
	.dots-table.full dd { width: 100%; }
	.simple-table { width: 100%; font-size: 10px; }
	.simple-table td { padding: 5px; }
	.sp-toggle { display: none; position: relative; }
	.sp-toggle1 { padding-bottom: 20px; }
	.active + .sp-toggle { display: block; }
	.toggle-button { margin-bottom: 0!important; position: relative; }
	.toggle-button.active { margin-bottom: 25px!important; }
	.toggle-button:before { content: ""; position: absolute; right: 25px; bottom: 0; top: -5px; margin: auto 0; width: 12px; height: 12px; border-right: 1px solid rgba(51,0,0,.5); border-bottom: 1px solid rgba(51,0,0,.5); transform: rotate(45deg); }
	.toggle-button.active:before { transform: rotate(-135deg); top: 10px }
	.toggle-button.no-arrow:before { display: none; }
	.card-beige { border-radius: 10px; padding: 35px 20px; }
	.card-beige .card-white { border-radius: 7px; }
	.card-beige ol li { padding-left: 10px; }
	.card-beige ol li:before { left: 3px; }
	.card-dots { padding: 10px; }
	.card-dots > div { padding: 5px; }
	.card-dots:before { left: 25px; top: 25px; }
	.card-dots:after { right: 25px; top: 25px; }
	.card-dots > div:before { left: 25px; bottom: 25px; }
	.card-dots > div:after { right: 25px; bottom: 25px; }
	.card-dots .img-radius { border-radius: 0; }
	.card-dots .photo { margin-bottom: 25px; }
	.card-dots p { letter-spacing: .05em; min-height: 0; padding-bottom: 20px; }
	.card-white { padding: 20px 10px; }
	.card-white .sub-title2 img { height: 30px; }
	.kakko { padding: 10px 20px; }
	.faq_list li { margin-bottom: 15px; }
	.faq_list dt:before { display: none; }
	.faq_list dt:after { display: none; }
	.faq_list .icon { font-size: 14px; width: 30px; }
	.faq_list dt { padding-left: 15px; padding-right: 25px; }
	.faq_list dt .title { font-size: 12px; width: calc(100% - 30px); }
	.faq_list dd > div { padding-left: 15px; padding-right: 25px; font-size: 12px; padding-top: 10px; padding-bottom: 10px; }
	.faq_list dd .contents { width: calc(100% - 30px); }
	.post-header { margin-bottom: 25px; }
	.post-header .date { display: block; font-size: 14px; }
	.post-header .cat span { font-size: 12px; min-width: 140px; line-height: 1.2; }
	.main-row { flex-wrap: wrap; }
	.main-row .col-sidemenu { width: 100%; }
	.main-row .col-contents { width: 100%; }
	.labels_list { display: flex; flex-wrap: wrap; margin-left: -7px; margin-right: -7px; }
	.labels_list li { width: 50%; margin-bottom: 7px; padding-left: 7px; padding-right: 7px; }
	.news_list li a { flex-wrap: wrap; }
	.news_list li a .date { width: 100%; }
	.news_list li a .title { width: 100%;  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.sitemap_list li { padding: 10px 0px; font-size: 12px; }
	.contact-table { margin-top: 30px; }
	.contact-table dl { margin-bottom: 15px; }
	.contact-table dl dt { width: 100%; margin-bottom: 10px; }
	.contact-table dl dd { width: 100%; }
	.contact-table .btn-viewmore { width: 100%; font-size: 12px; }
	.contact-table .btn-viewmore span { width: 95px; }
	.under_arrow > div { min-height: 0!important; }
	.lg-banner { padding: 6px; }
	.lg-banner .label { width: 205px; margin-left: auto; margin-right: auto; padding: 20px 15px 22px; }
	.lg-banner .label:before { left: 5px; top: 5px; width: calc(100% - 10px); height: calc(100% - 10px); }
	.lg-banner .sub-title1 { font-size: 16px; }
	.lg-banner .btn-viewmore { margin-top: 10px; width: 130px; }
	.lg-banner.is-half { padding: 6px; }
	.fixed-banner { display: none; }
	.area_list .title .sub-title1 { letter-spacing: 0; }
	.label-title .main-title img { height: 20px; margin-bottom: 5px; }

	/* chatbot */
	/* #tripla-app.active { opacity: 0; visibility: hidden; } */
	#tripla-app div[draggable="false"] { margin-bottom: 70px; margin-right: 15px; transition: .3s; }
	#tripla-app.active div[draggable="false"] { margin-bottom: 20px; }

	/* section */
	.firstView { margin-top: 60px; }
	.firstView .wrapper { padding-right: 0; }
	.firstView .toparea .maintitle { font-size: 21px; line-height: 1.7; letter-spacing: .14em; }
	.firstView .toparea .description { font-size: 9px; margin-top: 5px; }
	.firstView .contents { width: calc(100% - 50px); }
	.firstView .title { margin-bottom: 20px; }
	.firstView .title p { font-size: 17px; letter-spacing: .35em; }
	.firstView .title .main { font-size: 35px; }
	.firstView .title .main img { width: 180px; }
	.firstView .p1 { font-size: 12px; letter-spacing: .34em; }
	.firstView .date { font-size: 14px; letter-spacing: .2em; margin-bottom: 15px; justify-content: flex-start; display: block; }
	.firstView .en { font-size: 10px; letter-spacing: .1em; margin-top: 30px; }
	.firstView .bg { height: auto; height: calc(100vh - 250px); min-height: 250px; }
	.firstView .common-slider .slide-animation .bg { background-size: auto 100%; }
	.firstView .scroll { right: 50px; left: auto; }
	.firstView .scroll > div { height: 100px; }
	.firstView .scroll > div:before { background-color: #fff; }
	.firstView .sub-news { display: none; }
	.concept .concept_kv { display: block; }
	.concept .concept_kv .title { padding-top: 0; text-align: center; margin-right: 0; font-size: 18px; margin-bottom: 25px; }
	.concept .concept_kv .contents { font-size: 13px; text-align: center; line-height: 2.7; }
	.concept .caution { padding: 30px 0 30px; }
	.concept .caution .title { font-size: 15px; }
	.concept .caution p { font-size: 12px; }
	.rate-box { display: block; position: relative; }
	.rate-box .photo { width: 100%; padding-top: 40%; }
	.rate-box .contents { width: 100%; position: static; padding: 20px; }
	.rate-box .top .icon { right: 12px; width: 28%; }
	.rate-box .top .icon img { width: 100%; }
	.rate-box .top .title .small { font-size: 11px; letter-spacing: .05em; }
	.rate-box .top .title .main { font-size: 18px; white-space: nowrap; letter-spacing: .17em; }
	.rate-box .top .title span { padding-bottom: 5px; }
	.rate-box .top p { font-size: 12px; }
	.rate-box .bottom { margin-left: -8px; margin-right: -8px; margin-top: 15px; }
	.rate-box .bottom .link-button { width: calc(50% - 16px); margin: 0 8px; font-size:12px; letter-spacing: .07em; padding: 6px 10px; align-items: center; justify-content: center; text-align: center; background: #efede5; color: #9f9079; border: none; font-weight: 500; }
	.rate-box .bottom .link-button:before { display: none; }
	.about { padding: 60px 0 60px; }
	.about ul li { margin-bottom: 40px; }
	.about ul li:last-child .contents { padding-bottom: 0; }
	.about ul li .photo { width: 100%; }
	.about ul li .photo img { max-width: calc(100% + 25px); }
	.about ul li .contents { width: 100%; padding-top: 40px; padding-bottom: 0; }
	.about ul li .title { margin-bottom: 25px; }
	.about ul li .title .jp { padding-bottom: .4em; margin-left: 0; font-size: 13px; margin-top: 20px; }
	.about ul li div[style*="opacity: 1"] .title:before { width: calc(100% + 30px); }
	.about ul li .catch { font-size: 16px; letter-spacing: .2em; margin-bottom: 25px; }
	.about ul li .detail { letter-spacing: .12em; padding: 25px 0; }
	.about ul li .detail_en { margin-top: 25px; white-space: normal; }
	.facility-card .title { text-align: left; }
	.facility-card p { letter-spacing: .16em; }
	.access-list li { padding-bottom: 40px; margin-bottom: 40px; }
	.access-list .title { margin-bottom: 30px; }
	.access-list .title .text { font-size: 16px; }
	.sightseeing .detail { font-size: 14px; letter-spacing: .1em; }
	.fixed-banner { display: none; }
	.section-news { padding: 75px 0 70px; }
	.section-news .btn-viewmore { margin-right: 0; justify-content: flex-end; }
	.section-news .btn-viewmore .arrow { width: 50px; }
	.halfmusk:before { top: 500px; height: calc(100% - 500px); }
	.halfmusk.is_min:before { top: 340px; height: calc(100% - 340px); }


	/* page */
	#access .page-hero { background-image:url(../images/access/hero_access_sp.jpg)!important; }
	#concept .page-hero { background-image:url(../images/concept/hero_concept_sp.jpg)!important; }
	#room .page-hero { background-image:url(../images/room/hero_room_sp.jpg)!important; }
	#hotspring .page-hero { background-image:url(../images/hotspring/hero_hotspring_sp.jpg)!important; }
	#hotspring .main-title { line-height: 1.6; }
	#area .page-hero { background-image:url(../images/area/hero_area_sp.jpg)!important; }
	#facility .page-hero { background-image:url(../images/facility/hero_facility_sp.jpg)!important; }
	#facility .origin-slider { margin-left: 0; margin-right: 0; }
	#news .page-hero { background-image:url(../images/news/hero_news_sp.jpg)!important; }
	#faq .page-hero { background-image:url(../images/faq/hero_faq_sp.jpg)!important; }
	#contact .page-hero { background-image:url(../images/contact/hero_contact_sp.jpg)!important; }
	#sitemap .page-hero { background-image:url(../images/sitemap/hero_sitemap_sp.jpg)!important; }
	#dogs .page-hero { background-image:url(../images/dogs/hero_dogs_sp.jpg)!important; }
	#group .page-hero { background-image:url(../images/group/hero_group_sp.jpg)!important; }
	#access .gmap { height: 170px; }
	#access .sp-slider .col-md-6 { padding: 0; }
	#access .sp-slider .slick-img-prev { width: 30px; height: 30px; position: absolute; left: -9px; bottom: 0; top: 0; margin: auto 0; cursor: pointer; z-index: 1; }
	#access .sp-slider .slick-img-next { width: 30px; height: 30px; position: absolute; right: -9px; bottom: 0; top: 0; margin: auto 0; cursor: pointer; z-index: 1; }
	#meal .page-hero { background-image:url(../images/meal/hero_meal_sp.jpg)!important; }
	#meal .seal .icon { width: 100%; text-align: center; margin-bottom: 20px; }
	#meal .seal .contents { width: 100%; }
	#glamping .origin-slider { padding-left: 0; padding-right: 0; }
	#glamping .origin-slider .slick-dots { bottom: 10px; }
	#glamping .origin-slider .img-radius { border-radius: 0; }
	#glamping .origin-slider .slick-img-prev { width: 30px; height: 30px; left: -10px; }
	#glamping .origin-slider .slick-img-next { width: 30px; height: 30px; right: -10px; }
	#faq article { padding-bottom: 80px; }
	#sitemap .card-white { padding: 40px 25px 30px;}

	.acc_wrapper { margin-bottom: 60px; padding-bottom: 0; border-bottom: none; }
	.acc_wrapper .acc_head .title-kakko { padding: 15px 0; }
	.acc_wrapper .acc_body { padding: 20px; }
	.acc_wrapper .acc_head .title-kakko .labels { margin-bottom: 3px; font-size: 10px; padding: 0 10px; }
	.title-kakko .jp { font-size: 15px; }
	.title-kakko .jp img { margin-top: 7px; }
	.title-kakko > div { padding: 0 15px; width: auto; }

	@keyframes hero-arrow {
		0% { height: 0; }
		100% { height: calc(50% - 100px); }
	}

	/* nishimura */
	hr.dots { margin: 40px 0; }
	#facility .origin-slider .slick-img-prev { left: -8px ; }
	#facility .origin-slider .slick-img-next { right: -8px ; }
	#facility .dl-table { flex-wrap: nowrap; }
	#facility .dl-table dt { font-size: 10px; width: 600px; margin-bottom: 0; }
	#facility .dl-table dd { width: calc(100% - 95px); font-size: 10px; }
	#facility .origin-slider .slick-arrow { display: inline-block!important; height: 25px; }
	#room .dl-table dt { font-size: 15px; }

	.btn-toggles { width: 150px; font-size: 13px; }
	.btn-toggles:after { width: 14px; height: 14px; background-size: cover; }
}

.sec_concept { padding-bottom: 135px; }
.concept_title { margin-bottom: 40px; }
.concept_title .title { font-family: 'Shippori Mincho', serif; font-size: 24px; letter-spacing: .2em; }
.concept_title .title.min { font-size: 21px; }
.concept_title .subtitle { font-size: 15px; font-family: 'Shippori Mincho', serif; font-weight: 400; letter-spacing: .04em; margin-top: 15px; }
.concet_description { font-size: 14px; line-height: 2.333; letter-spacing: .1em; }
.arrow-button { width: 175px; display: inline-block; position: relative; padding-right: 25px; border-bottom: 1px solid #523418; padding-bottom: 8px; font-family: "Overpass", sans-serif; font-size: 12px; letter-spacing: .15em; line-height: 1; }
.arrow-button:after { content: ""; background-image: url(../images/common/link_arrow.svg); width: 17px; height: 17px; background-size: cover; position: absolute; right: 0; bottom: 8px; }
.arrow-button.white { color: #fff; border-color: #fff; }
.arrow-button.white:after { background-image: url(../images/common/link_arrow_white.svg); }
.menu_card { display: block; background-size: 100%; position: relative; border-radius: 13px; height: 570px; padding: 35px; transition: .3s; }
.menu_card:hover { background-size: 110%; }
.menu_card .set-title { text-align: left; color: #fff; }
.menu_card .link { position: absolute; right: 20px; bottom: 20px; }
.menu_card .link .arrow-button { width: 200px; }
.bg-beju { background-color: #eceadd; }
.concept .arrow-button { color: #d1c097; border-bottom: 1px solid #d1c097; }
.section-news .arrow-button:after { background-image: url(../images/common/link_arrow2.svg); }

@media (min-width: 768px) {
	.ovright img { width: 120%; max-width: none; }
}

.bg-lightbrown { background-color: #ECE8DE; }
.color-ashbrown { color: #9B9456!important; }

.common-title { position: relative; margin-left: 45px; }
.common-title .line::before { position: absolute; content: ''; width: 35px; height: 1px; background-color: rgba(26, 26, 26, .5); top: 0; bottom: 0; margin: auto 0; left: -45px; }
.free-bus { padding: 25px 25px 25px 0; display: inline-block; position: relative; top: 40px; background-color: #ECE8DE; margin-left: -5px; }
.border-wrap { border: 1px solid #30a8b0; border-radius: 30px; padding: 70px 60px 100px; }
.bus-line li { display: flex; }
.bus-line li span { width: 25px; }
.halfmusk.is_min:before { content: none; }

#access .gmap { height: 255px; width: 100%; }
#hotspring .bg-onsen { padding: 10% 0; background: url(../images/hotspring/hotspring_photo1.jpg) no-repeat right center; background-size: 55%; }
#hotspring .bg-onsen.left { background: url(../images/hotspring/hotspring_photo2.jpg) no-repeat left center; background-size: 30%; }
#hotspring .bg-onsen.third { background-image: url(../images/hotspring/hotspring_photo3.jpg); }
#hotspring .bg-onsen.four { background-image: url(../images/hotspring/hotspring_photo4.jpg); }
#hotspring .bg-square { position: relative; }
#hotspring .bg-square::before { content: ''; position: absolute; height: calc(100% + 220px); width: 90%; left: -5%; top: -3%; background-color: #ECE8DE; }
#hotspring .dots-table dl { border-bottom: none; padding: 0; align-items: center; }
#hotspring .dots-table dt,
#hotspring .dots-table dd { width: auto; }
#hotspring .dot_height { position: relative; }
#hotspring .dot_height::after { content: ''; position: absolute; width: 1px; height: 100%; border-right: 1px dashed rgba(83,52,21,.5); left: 50%; transform: translateX(-50%); top: 0; }
#hotspring .kakko_dl dt { width: 230px; }
#hotspring .kakko_dl dd { width: calc(100% - 230px); }
#hotspring .onsenn_kakko { position: relative; font-size: 14px; padding: 11px 25px; }
#hotspring .onsenn_kakko:before { content: ""; position: absolute; left: 0; top: 0; height: 100%; width: 6px; border-top: 1px solid rgba(83,52,21,.5); border-left: 1px solid rgba(83,52,21,.5); border-bottom: 1px solid rgba(83,52,21,.5);}
#hotspring .onsenn_kakko:after { content: ""; position: absolute; right: 0; top: 0; height: 100%; width: 6px; border-top: 1px solid rgba(83,52,21,.5); border-right: 1px solid rgba(83,52,21,.5); border-bottom: 1px solid rgba(83,52,21,.5);}
#hotspring .dl-wrap dt { font-weight: normal; width: 100px; }
#hotspring .dl-wrap .top dt { width: 195px; }
#hotspring .dl-wrap .middle { align-items: flex-start; }
#meal .btn-toggles.btn-toggle_off:after { transform: rotate(180deg); }
#area .dl-wrap dt { font-weight: 500; }
#news .arrow-button:after { background-image: url(../images/common/link_arrow2.svg); }
.sub-title1.mgb0 + .md-mgt0 { margin-top: 10px!important; line-height: 1.4; }

@media (max-width: 767px) {
	.arrow-button { width: 130px; }
	.area_list .contents .title { text-align: left; }
	.sec_concept { padding-bottom: 80px; }
	.sec_concept .photo { margin-left: -15px; padding-right: 0; }
	.sec_concept .photo.ovright { margin-right: -15px; margin-left: 0; padding-left: 0; padding-right: 0; }
	.concept_title { margin-bottom: 30px; }
	.concept_title .title { font-size: 20px; }
	.concept_title .title.min { font-size: 18px; }
	.concept_title .subtitle { font-size: 13px; letter-spacing: .04em; line-height: 1.2; }
	.concet_description { font-size: 13px; }
	.menu_card { background-size: cover; height: 250px; }
	.menu_card.bg1 { background-image: url(../images/home/menu1_sp.png)!important; }
	.menu_card.bg2 { background-image: url(../images/home/menu2_sp.png)!important; }
	.menu_card.bg3 { background-image: url(../images/home/menu3_sp.png)!important; }
	.list-news { padding: 25px 30px; }
	.list-news a { align-items: center; }
	.list-news a .date { order: 1; width: 100px; margin-bottom: 0; }
	.list-news a .cat { order: 2; width: calc(100% - 100px); margin-bottom: 0; }
	.free-bus { padding: 20px; }
	.border-wrap { padding: 50px; }
	#hotspring .bg-square { margin-top: 0; padding: 1px 0; }
	#hotspring .bg-onsen { padding: 64% 0 0; background-position: right top; margin: 60px 0 60px; background-size: 90%; }
	#hotspring .bg-onsen.left { background-image: url(../images/hotspring/hotspring_photo2_sp.jpg); background-position: left top; background-size: 92%; }
	#hotspring .bg-onsen.four { background-image: url(../images/hotspring/hotspring_photo4_sp.jpg); }
	#hotspring .bg-square::before { height: 100%; top: 0; left: 0; width: calc(100% - 15px); }
	#hotspring .dot_height::after { display: none; }
	#hotspring .kakko_dl dt { width: 100%; text-align: center; }
	#hotspring .kakko_dl dd { width: 100%; }
}
