@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;700&family=Noto+Sans+JP:wght@300;400;700&family=Noto+Serif+JP:wght@400;600&family=Shippori+Mincho&display=swap');
@import url("default.css");

* {-webkit-text-size-adjust:100%;}
a:link {text-decoration:none; color:#c6b081;}
a:visited{text-decoration:none; color:#c6b081;}
a:hover{text-decoration:none; color:#c6b081;}
a:active{text-decoration:none; color:#c6b081;}
a.color-beige { color: #5e3b1e; }
body { font-size: 13px; color: #c6b081; line-height: 2.15; letter-spacing: .16em; background-color: #3c6867; font-family: 'Noto Serif JP', serif; font-weight: 400; min-width: 1300px; }
header { position: fixed; padding-left: 40px; left: 0; top: 0; width: 100%; z-index: 10; }
header .wrap { display: flex; align-items: center; justify-content: space-between; height: 60px; }
header .left { display: flex; align-items: center; }
header .menu-trg-area { width: 40px; height: 8px; cursor: pointer; position: relative; }
header .menu-trigger { position: absolute; top: 0; width: 45px; height: 8px; z-index: 2; left: 0; right: 0; margin: auto; transition: all .4s; display: block; }
header .menu-trigger span { position: absolute; left: 0; width: 100%; height: 1px; background-color: #33391a; 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;}
body .switcher { overflow: visible; position: relative; }
body .switcher a img { display: none; }
body .switcher .selected { background: none!important; }
body .switcher .selected > a { padding: 0 0; border: none; border-bottom: 1px solid rgba(255,255,255,.5)!important; background: none!important; color: #fff!important; font-size: 12px; }
body .switcher .selected > a:hover { color: #fff!important; }
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: #330000!important; font-size: 12px!important; padding: 5px 5px; border: none!important; }
hr { margin: 10px 0; border-color: #c6b081; }
hr.short { width: 25px; margin-left: auto; margin-right: auto; }
hr.left { margin-left: 0; }
hr.white { border-color: #c6b081; }
hr.red { border-color: #743736; }
.menus { display: flex; }
.menus a,
.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; }
.menus .lang-button { background: #33391a; position: relative; cursor: pointer; }
.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; }
.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; }
.menus .lang-wrap a { display: block; color: #480508; height: auto; font-size: 12px; letter-spacing: .1em; width: 100%; text-align: left; background: none; z-index: 999; }
.menus .lang-button.active .lang-wrap { opacity: 1; visibility: visible; }
.menus a,
.menus .lang-button { margin-right: 15px; border: 1px solid #fff; background: none; height: 23px; width: 100px; font-size: 13px; }
.menus .lang-button { border: none; border-bottom: 1px solid #fff; background: none!important; width: auto; padding-left: 3px; padding-right: 3px; margin-right: 0; }
.gnav { opacity: 0; visibility: hidden; transition: .3s; position: fixed; left: 0; top: 0; height: 100%; color: #fff; width: 100%; padding: 20px 45px 30px; z-index: 999; text-align: center; }
.gnav.active { opacity: 1; visibility: visible; }
.gnav:before { content: ""; background-image: url(../images/common/loading_bg.jpg); position: absolute; left: 0; top: 0; width: 100%; height: 100%; opacity: 0.9; pointer-events: none; z-index: -1; }
.gnav a { color: #fff; }
.gnav .wrapper { position: relative; max-width: 490px; margin-left: auto; margin-right: auto; }
.gnav .wrapper .logos img { width: 140px; }
.gnav .closed { width: 30px; height: 30px; position: relative; cursor: pointer; }
.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); }
.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); }
.gnav .img_logo { width: 110px; position: absolute; bottom: 0; right: 0; }
.gnav .buttons a { border: 1px solid #fff; padding: 5px 20px; line-height: 1; margin-right: 15px; font-size: 13px; }
.gnav .link1 { font-size: 17px; letter-spacing: .14em; display: flex; justify-content: center; flex-wrap: wrap; font-weight: 400; line-height: 1; }
.gnav .link1 li { margin-bottom: 20px; padding: 0 20px; border-right: 1px solid #fff; }
.gnav .link1 li.turn,
.gnav .link1 li:last-child { border: none; }
.gnav .link1 a:hover { text-decoration: underline; text-underline-position: under; }
.gnav .link2 { font-size: 13px; letter-spacing: .12em; font-weight: 400; display: flex; justify-content: center; }
.gnav .link2 li { margin-bottom: 10px; padding: 0 10px; line-height: 1; border-right: 1px solid #fff; }
.gnav .link2 li:last-child { border: none; }
.switcher .selected a { border: none; background: none; padding: 0; width: auto; }
.sp-menu { display: none; }
.spacing200 { letter-spacing: .2em; }

@media (min-width: 768px) {
	.header1 { padding: 20px 30px; position: absolute; min-width: 1160px; }
	.header1 .right { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; }
	.header1 .right .menus { width: 100%; justify-content: flex-end; }
	.header1 .right .cmn-menu { width: 100%; display: flex; justify-content: flex-end; margin-top: 20px; }
	.header1 .right .cmn-menu li { padding-left: 15px; margin-left: 15px; border-left: 1px solid #fff; line-height: 1; }
	.header1 .right .cmn-menu li:first-child { border-left: none; }
	.header1 .right .cmn-menu li a { color: #fff; }
	.header1 .menu-trg-area { margin-left: 20px; }
	.header1 .menu-trigger { height: 11px; }
	.header1 .menu-trigger span { background: #fff; }
	.header1 .menu-trigger span:nth-of-type(2) { width: 37px; }
	.header2 { background: #fff; padding: 0 30px; position: fixed; top: -90px; transition: .3s; }
	.header2.active { top: 0; }
	.header2 .wrap { height: 70px; }
	.header2 .right { display: flex; align-items: center; }
	.header2 .cmn-menu { display: flex; align-items: center; margin-right: 20px; font-size: 13px; }
	.header2 .cmn-menu li { line-height: 1; padding-left: 20px; margin-left: 20px; border-left: 1px solid #480508; }
	.header2 .cmn-menu li a { color: #212122!important; }
	.header2 .cmn-menu li:first-child { border: none; margin-left: 0; padding-left: 0; }
	.header2 .menus a { border: 1px solid #480508; color: #480508; background: none; height: 23px; width: 100px; font-size: 13px; }
	.header2 .menu-trigger { height: 11px; }
	.header2 .menu-trigger span:nth-of-type(2) { width: 37px; }
}
@media (max-width: 767px) {
	header { padding: 20px 25px; position: absolute; min-width: 375px; transform: none!important; }
	header .wrap { height: 50px; }
	header .logo img { width: 70px; }
	header .menu-trg-area { position: fixed; right: 0; background: #8c5a59; right: 0; bottom: 0; width: 33.3333%; margin-right: 0; height: 60px; color: #fff; }
	header .menu-trigger { top: 17px; }
	header .menu-trigger span { background: #fff; }
	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 .lang-button { height: 50px; background: none; border-bottom: 1px solid #fff; height: 20px; padding-left: 3px; padding-right: 3px; padding-bottom: 5px; width: auto; border-right: none; }
	.cmn-menu { display: none; }
	.menus a { display: none; }
	.header2 { display: none; }
	.gnav { width: 100%; padding: 25px; }
	.gnav .wrapper { position: static; }
	.gnav .wrapper .logos { position: absolute; width: 67px; top: 20px; left: 15px;}
	.gnav .wrapper .logos img { width: 140px; }
	.gnav .tp { justify-content: flex-end!important; }
	.gnav .closed { margin-left: auto; order: 2; margin-left: 35px; }
	.gnav .menus { order: 1; }
	.gnav .menus .lang-button { z-index: 1; height: 20px; background: none; border: none; border-bottom: 1px solid #fff; width: auto; padding-left: 3px; padding-right: 3px; padding-bottom: 5px; }
	.gnav .buttons { position: fixed; left: 0; bottom: 0; width: 100%; display: flex; }
	.gnav .buttons a { width: 50%; display: block; text-align: center; margin-right: 0; border: none; border-right: 1px solid #fff; background: #ad8e4b; padding: 5px 0 8px; }
	.gnav .buttons a:last-child { border-right: 0; }
	.gnav .buttons a .icon { margin-bottom: 5px; }
	.gnav .link1 { font-size: 13px; }
	.gnav .link1 li { margin-bottom: 20px; padding: 0 10px; }
	.gnav .link1 li.turn { border-right: 1px solid #fff; }
	.gnav .link1 li.sp-turn { border: none; }
	.gnav .link2 { display: block; font-size: 12px; }
	.gnav .link2 li { border: none; font-size: 12px; margin-bottom: 15px; }
	.gnav .img_logo { width: 100px; }
	.sp-menu { display: flex; position: fixed; bottom: 0; left: 0; z-index: 10; width: 100%; background: #fff; }
	.sp-menu li { width: 25%; border-left: 1px solid #3c6867; }
	.sp-menu li:first-child { border-left: none; }
	.sp-menu li:nth-child(2) { border-left: none; }
	.sp-menu a img { width: 100%; }
}

.gmap iframe { width: 100%; display: block; height: 270px; }
footer { color: #fff; padding-top: 40px; }
footer a { color: #fff!important; }
footer .footer-top { display: flex; border-bottom: 1px solid rgba(255,255,255,.5); padding-bottom: 25px; flex-wrap: wrap; }
footer .address { width: 30%; padding-top: 20px; border-right: 1px solid rgba(255,255,255,.5); }
footer .address p { font-size: 14px; line-height: 1.7; }
footer .site-menus { width: 35%; padding: 0 30px; padding-top: 5px; display: flex; flex-wrap: wrap; border-right: 1px solid rgba(255,255,255,.5); }
footer .site-menus ul { width: 50%; }
footer .site-menus ul li { margin-bottom: 15px; }
footer .site-menus ul li a:hover { text-decoration: underline; }
footer .site-menus ul.list3 { width: 100%; padding-left: 50%; }
footer .site-menus ul.list3 li { margin-bottom: 5px; }
footer .menu-factory { width: 35%; padding-left: 40px; }
footer .menu-factory ul li { display: flex; letter-spacing: .075em; }
footer .menu-factory ul li .label { width: 100px; }
footer .menu-factory ul li .link { width: calc(100% - 100px); display: flex; flex-wrap: wrap; }
footer .menu-factory ul li .link a + a { margin-left: 13px; padding-left: 13px; position: relative; }
footer .menu-factory ul li .link a + a:before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; margin: auto 0; height: 14px; width: 1px; background: rgba(255,255,255,.5); }
footer .footer-middle { margin-top: 15px; padding-top: 15px; position: relative; }
footer .footer-middle:before { content: ""; position: absolute; left: -10px; top: 0; width: calc(100% + 10px); background: rgba(255,255,255,.5); height: 1px; }
footer .hotels p { font-size: 10px; line-height: 1.7; }
footer .footer-bottom { text-align: center; padding: 25px 0; }
footer .btm-link { display: flex; justify-content: center; padding-bottom: 30px; }
footer .btm-link li { border-left: 1px solid #fff; padding-left: 15px; margin-left: 15px; line-height: 1; }
footer .btm-link li:first-child { border-left: 0; margin-left: 0; padding-left: 0; }
footer .sns { display: flex; align-items: center; justify-content: center; margin-bottom: 25px; }
footer .sns li { padding: 0 7px; }
footer .copyright { font-size: 10px; letter-spacing: .15em; color: #efe7e7; }
article { padding-bottom: 170px;  padding-top: 40px; background-image: url(../images/common/bg.png); }
ruby rt { font-size: 10px; letter-spacing: .01em; padding-right: 0.3em; position: relative; }

/* color */
.color-red { color: #de3d00; }
.color-gray { color: #adadad; }
.color-green { color: #4b9c9b; }
.color-beige { color: #5e3b1e; }
.color-white { color: #fff; }
/* .color-theme { color: #764346; } */
.color-theme { color: #3c6867; }

/* fonts */
.serif { font-family: 'Noto Serif JP', serif; }
.sans { font-family: 'Noto Sans JP', sans-serif; }
.cormo { font-family: 'Cormorant Garamond', serif; }
.sans-lg { font-family: 'Noto Sans JP', sans-serif; font-size: 16px; letter-spacing: .05em; font-weight: 400; line-height: 1.75; }
.sans-md { font-family: 'Noto Sans JP', sans-serif; font-size: 14px; letter-spacing: .05em; font-weight: 300; line-height: 2.3; }
.sans-sm { font-family: 'Noto Sans JP', 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: 30px; 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: bold; letter-spacing: .1em; line-height: 1.9; }
.sec-title { font-family: 'Cormorant Garamond', serif; font-size: 44px; letter-spacing: .04em; }
.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; }
.title-kakko .en { font-size: 12px; letter-spacing: .15em; }
.label-title { width: 375px; max-width: 100%; margin-left: auto; margin-right: auto; background: #e6e8dc; color: #a58181; padding: 10px 10px; background-image: url(../images/common/bg-paper4.jpg); background-repeat: repeat; }

/* overview */
.boxshadow { box-shadow: 7px 7px 23px 10px rgba(0,0,0,0.3); }
.concept .concept_kv { display: flex; justify-content: center; }
.concept .concept_kv .title { font-size: 22px; letter-spacing: .34em; margin-right: 120px; padding-top: 10px; }
.concept .concept_kv .contents { font-size: 15px; letter-spacing: .2em; line-height: 2.1; }
.concept .caution { border-top: 1px solid rgba(186,180,167,.75); border-bottom: 1px solid rgba(186,180,167,.75); text-align: center; padding: 35px 0; }
.concept .caution .title { font-size: 20px; letter-spacing: .2em; margin-bottom: 20px; }
.concept .caution p { letter-spacing: .12em; }
.allWrapper { overflow: hidden; }
.container-fluid { max-width: 1090px; }
.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; }
.fixed-banner { overflow: hidden; border-radius: 10px 0 0 10px; height: 270px; 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 li:last-child { border-top: 1px solid #3c6867; }
.fixed-banner li { height: 135px; width: 55px; padding: 25px 0 20px; display: block; background: #fff; text-align: center; position: relative; }
.fixed-banner li span { padding-left: 2px; color: #3c6867; font-size: 15px; letter-spacing: .1em; display: flex; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; width: 100%; text-align: center; justify-content: center; align-items: center; padding-bottom: 10px; }
.fixed-banner li span:before { content: ""; position: absolute; bottom: 25px; left: 0; right: 0; margin: 0 auto; width: 7px; height: 7px; border-left: 1px solid #3c6867; border-bottom: 1px solid #3c6867; transform: rotate(-45deg); }
.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: #fff; opacity: .7; 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: #212122; }
.bg-paper4 hr { border-color: rgba(33,33,33,.5)!important; }
.bg-dark { background-color: #001a2a!important; color: #fff; }
.bg-white { background-color: #fff; }
.bg-white { color: #212122; }
.bg-white a { color: #212122; }
.underline { border-bottom: 1px solid rgba(18,50,107,.5); padding-bottom: 5px; }
hr { margin-top: 100px; margin-bottom: 100px; border-color: #326263; }
hr.short { width: 20px; border-top: 1px solid rgba(198,176,129,.25); 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; }
.btn-viewmore { display: flex; justify-content: center; line-height: 1; padding: 23px 0; align-items: center; transition: .3s; cursor: pointer; color: #c6b081; }
.btn-viewmore span { display: block; width: 100px; order: 2; }
.btn-viewmore .arrow { width: calc(100% - 90px); background-image: url(../images/common/btn-arrow.svg); height: 11px; background-position: right; max-width: 180px; background-repeat: no-repeat; background-position: bottom right; margin-right: 20px; }
.btn-viewmore .arrow.gold { background-image: url(../images/common/btn-arrow_gold.svg); }
.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); }
.btn-viewmore.whites { color: #fff; }
.bg-dark .btn-viewmore .arrow,
.btn-viewmore.red .arrow,
.btn-viewmore.white .arrow { background-image: url(../images/common/btn-arrow_dark.svg); }
.btn-viewmore.whites .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: #001a2a; }
.bg-dark a.btn-viewmore:hover .arrow,
a.btn-viewmore.whitehover .arrow { background-image: url(../images/common/btn-arrow.svg); }
.btn-toggle { background: #3c6867; color: #fff; width: 375px; max-width: 100%; margin-left: auto; margin-right: auto; text-align: center; position: relative; padding: 16px; cursor: pointer; }
.btn-toggle.red { background: #d41631; }
.btn-toggle:before { content: ""; position: absolute; right: 55px; top: 0; bottom: 0; margin: auto 0; width: 10px; height: 10px; border-right: 1px solid #fff; border-bottom: 1px solid #fff; transform: rotate(45deg); }
.btn-toggle_off { background: #3c6867; color: #fff; width: 375px; max-width: 100%; margin-left: auto; margin-right: auto; text-align: center; position: relative; padding: 16px; cursor: pointer; }
.btn-toggle_off.red { background: #3c6867; }
.btn-toggle_off:before { content: ""; position: absolute; right: 50px; top: 0; bottom: 0; margin: auto 0; width: 22px; height: 1px; background: rgba(255,255,255,.5); transform: rotate(45deg); }
.btn-toggle_off:after { content: ""; position: absolute; right: 50px; top: 0; bottom: 0; margin: auto 0; width: 22px; height: 1px; background: rgba(255,255,255,.5); transform: rotate(-45deg); }
.banner-register { 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; }
.banner-register .grad { text-align: center; background: #2A5151; }
.banner-register * { color: #fff!important; }
.banner-register .banner-box { padding: 30px 15px 30px; }
.banner-register .title { font-size: 25px; letter-spacing: .2em; line-height: 1.6; margin-bottom: 20px; }
.banner-register .title small { font-size: 17px; letter-spacing: .1em; }
.banner-register .bottom { background: #aa9668; padding: 15px; }
.banner-register .bottom a { border: 1px solid #fff; position: relative; padding: 5px 30px; width: 220px; color: #fff; margin: 0 18px; display: flex; align-items: center; }
.banner-register .bottom a: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); }
.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: 0; text-align: center; display: flex; color: #743736!important; }
.lg-banner .sub-title1 { margin-bottom: 10px; font-size: 40px; letter-spacing: .1em; }
.lg-banner .sub-title1 small { font-size: 15px; letter-spacing: .34em; margin-left: 15px; }
.lg-banner hr.short { width: 32px; margin: 30px 0; }
.lg-banner .bg { width: 57%; }
.lg-banner .label { width: 43%; padding: 40px 60px 40px; background: #fff; color: #3c6867; margin: 0 auto; position: relative; text-align: left; }
.lg-banner .label hr { border-color: #3c6867; }
.lg-banner .btn-viewmore { border: none; padding: 0; width: 100%; max-width: 250px; margin: 60px 0 0; color: #3c6867 !important; }
.lg-banner .btn-viewmore .arrow { background-image: url(../images/common/btn-arrow_green.svg); }
.lg-banner.is-half { padding-top: 30px; padding-bottom: 30px; }
.lg-banner.border-beige .label:before { border-color: #5e3b1e; }
.list-news a { display: flex; padding: 20px 15px; border-bottom: 1px solid rgba(33,33,34,.75); }
.list-news a .date { width: 150px; }
.list-news a .cat { width: 190px; }
.list-news a .cat span { background: #001a2a; display: inline-block; color: #fff; padding: 8px 10px; line-height: 1; }
.list-news a .cat.important span { background: #a61f26; }
.list-news a .cat.event span { background: transparent; border: 1px solid #001a2a; color: #001a2a;}
.list-news a .cat.media span { background: transparent; border: 1px solid #a61f26; color: #a61f26;}
.list-news a .title { width: calc(100% - 340px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-left: 10px; }
.page-hero { height: 370px; display: flex; align-items: center; justify-content: center; position: relative; color: #fff; text-align: center; }
.page-hero .jp { font-size: 35px; letter-spacing: .2em; line-height: 1; margin: 15px; }
.page-hero .en { font-size: 12px; letter-spacing: .15em; }
.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(60,104,103,.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 #c6b081; border-right: 1px solid #c6b081; transform: rotate(45deg); height: 6px; width: 6px; margin-left: 10px; }
.bread li:last-child:after { display: none; }
.bg-white .bread li:after { border-color: #212122; }
.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; }
.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 { border-bottom: 1px dashed rgba(51,0,0,.5); padding: 10px 35px; font-size: 19px; letter-spacing: .15em; }
.sitemap_list li a { display: block; position: relative; display: flex; align-items: center; transition: .3s; }
.sitemap_list li a:hover { opacity: .8; }
.sitemap_list li a:before { content: ""; height: 4px; width: 4px; background: #011a2a; border-radius: 100%; display: inline-block; margin-right: 15px; }
.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; }
.facility_list .font-size-md { letter-spacing: .1em; }
.room_list li { border-bottom: 1px solid rgba(198,176,129,.25); margin-bottom: 100px; padding-bottom: 110px; }
.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: 30px; }
.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 .btn-viewmore { font-size: 17px; padding: 19px 40px; background: #ad8e4b; border-color: #ad8e4b; }
.room_list .btn-viewmore span { width: 180px; order: 1; }
.room_list .btn-viewmore .arrow { width: 75px; order: 2; }
.lg_catch { padding: 130px 0; }
.card-white { background: #fff; border-radius: 2.3em; padding: 60px 45px 50px; color: #212122; }
.card-white a { color: #212122; }
.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: #001a2a; color: #fff!important; font-size: 17px; letter-spacing: .15em; }
.common-label.is-important { background: #a81f26; border-color: #a81f26; }
.common-label.is-event { color: #001a2a!important; background: none; }
.common-label.is-media { color: #a81f26!important; background: none; border-color: #a81f26; }
.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; }
.post-header .date { font-size: 17px; letter-spacing: .15em; margin-right: 20px; }
.post-header .cat span { min-width: 200px; max-width: 100%; padding-left: 10px; padding-right: 10px; }
.post-header .cat.label-news span { }
.post-header .title { width: 100%; margin-top: 15px; }
.dl-table { display: flex; border-bottom: 1px solid rgba(198,176,129,.25); 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: #330000; 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 #330000; }
.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 p { position: absolute; left: 15px; bottom: 10px; color: #fff; }
.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; }
.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(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; }
.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(51,0,0,.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: 13px; letter-spacing: .15em; padding: 19px 40px; text-align: left; }
.contact-table .btn-viewmore span { width: 110px; }
.contact-table .btn-viewmore .arrow { width: 75px; }
.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; }


/* section */
.fv_wrapper { padding: 120px 0 0 20%; }
.firstView { position: relative; }
.firstView .contents { width: 100%; height: 100%; position: absolute; top: 0; left: 0; display: flex; align-items: center; color: #fff; text-align: left; padding-bottom: 80px; }
.firstView .contents .title { margin-bottom: 20px; font-size: 27px; }
.firstView .contents .logos { position: relative; left: 5%; margin-bottom: 25px; }
.firstView .contents p { font-size: 14px; letter-spacing: .15em; position: relative; margin-left: -57%; }
.firstView .contents p strong { font-size: 34px; letter-spacing: .44em; line-height: 1.68; font-weight: 500; }
.firstView .contents p small { font-size: 22px; padding-top: 15px; display: inline-block; letter-spacing: .12em; line-height: 1.4; }
.firstView .sub-news { color: #212122!important; padding: 15px 25px; font-size: 12px; position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; z-index: 2; max-width: 670px; width: calc(100% - 30px); background: #fff; display: flex; line-height: 1.6; }
.firstView .sub-news .news-cat { width: 60px; border-right: 1px solid rgba(51,0,0,.5); }
.firstView .sub-news .news-date { width: 105px; padding-left: 15px; }
.firstView .sub-news .news-title { width: calc(100% - 265px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.firstView .sub-news .news-button { width: 100px; display: flex; align-items: center; }
.firstView .sub-news .news-button img { margin-left: 5px; }
.firstView .dots { margin-top: 20px; }
.firstView .dots .slick-dots { position: static; text-align: center; }
.firstView .bg { height: 90vh; min-height: 600px; max-height: 660px; }
.firstView .scroll { position: absolute; left: -140px; bottom: 0; width: 1px; margin: 0 auto; }
.firstView .scroll img { margin-bottom: 13px; }
.firstView .scroll .text { margin-bottom: 10px; line-height: 1; font-size: 12px; color: #fff; font-weight: 300; position: relative; left: -18px; }
.firstView .scroll > div { height: 160px; width: 1px; background: rgba(255,255,255,.3); position: relative; }
.firstView .scroll > div:before { content: ""; position: absolute; top: 0; height: 0; animation: arrow 2.5s ease 0s infinite normal; width: 1px; background: #fff; }
.secondView { padding: 100px 0 70px; }
.secondView .main-title { font-size: 25px; letter-spacing: .2em; line-height: 2.2; }
.secondView .half { display: flex; margin-bottom: 110px; }
.secondView .left { width: 37%; }
.secondView .right { width: 63%; text-align: right; padding-top: 40px; }
.section-factory { padding: 50px 0 50px; position: relative; }
.section-factory .tate { position: absolute; height: 200px; width: 1px; background: rgba(255,255,255,.5); top: -130px; left: 0; right: 40%; margin: 0 auto; }
.section-factory .tate:before { content: ""; position: absolute; left: 0; top: 0; width: 1px; height: 130px; background: rgba(51,0,0,.5); animation: arrow 2.5s ease 0s infinite normal; }
.section-factory.bg-dark { padding: 110px 0 125px; }
.section-factory .title { position: relative; line-height: 1.5; padding-bottom: 25px; margin-bottom: 30px; font-size: 72px; }
.section-factory .title small { font-size: 16px; letter-spacing: .34em; display: block; }
.section-factory .title .d-inline { position: relative; display: block!important; padding-bottom: 25px; margin-bottom: 25px; letter-spacing: .02em; text-indent: -.06em; line-height: 1.2; }
.section-factory .title .d-inline:before { content: ""; position: absolute; left: 0; bottom: 0; width: 30px; height: 1px; background: #c6b081; }
.section-factory.bg-dark .title:before { background: rgba(255,255,255,.5); }
.section-factory .mgb { margin-bottom: 20px; }
.section-glamping { padding: 125px 0 150px; text-align: center; }
.section-glamping .glamping-slider { margin-left: -7px; margin-right: -7px; }
.section-glamping .glamping-slider .child { padding: 0 7px; }
.section-factory .factory-slider { margin-left: -10%; margin-right: -10%; }
.section-factory .factory-slider .child { padding: 0 10px; }
.section-factory .btn-viewmore { justify-content: initial; }
.section-news { padding: 150px 0 150px; }
.section-news .btn-viewmore { width: 250px; justify-content: flex-end; }
.section-news .btn-viewmore span { width: 160px; margin-right: 10px; order: 1; }
.section-news .btn-viewmore .arrow { width: calc(100% - 160px); order: 2; margin-right: 0; }
.section-radius-card { display: flex; flex-wrap: wrap; }
.section-radius-card .photo { width: 47%; }
.section-radius-card .contents { width: 53%; padding: 65px 80px; background: #ead4d2; }
.section-radius-card .contents.dark { background: #4d4d4d; }
.sec-facility { background-color: #9d9481; color: #efede5; }
.facility-card .photo { margin-bottom: 30px; }
.facility-card .title { font-size: 21px; letter-spacing: .3em; margin-bottom: 10px; font-weight: 300; }
.facility-card p { font-size: 13px; letter-spacing: .1em; font-weight: 300; }
.facility_container .slider { margin-bottom: 30px; }
.facility_container .thumbnail { margin-bottom: 30px; display: flex; align-items: center; justify-content: center; }
.facility_container .thumbnail-img { width: 60px; margin-right: 10px; }
.facility_container .thumbnail-img img { aspect-ratio: 1 / 1; object-fit: cover; cursor: pointer; transition: .3s; }
.facility_container .thumbnail-img img:hover { opacity: .7; }
.facility_container .slick-prev:before, .slick-next:before { font-size: 40px; content: none; }
.facility_container .slick-prev, 
.facility_container .slick-next { width: 40px; height: 40px; }
.facility_container .slick-prev { left: -50px !important; } 
.facility_container .slick-next { right: -50px !important; } 

/* page */
#faq article { padding-bottom: 120px; }
#news .btn-viewmore { border: 1px solid #000; } 
#news .btn-viewmore span { width: 115px; order: initial; }
#news .btn-viewmore .arrow { width: calc(100% - 115px); max-width: 100px; }
#access article { padding-bottom: 0; }
#access .gmap { width: 100%; height: 500px; display: block; }
#contact .btn-viewmore span { order: initial; }
#glamping .page-hero .jp { font-size: 30px; line-height: 1.6; margin-bottom: 5px; }
#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; }
#meal .main-title,
#meal .en { color: #3c6867; }

@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; width: 220px; }
	.lg-banner.order .bg { order: 2; }
	.lg-banner.order .label { order: 1; }
}
@media (max-width: 767px) {
	body { min-width: 375px; font-size: 12px; }
	article { padding-bottom: 80px; padding-top: 70px; }
	footer { padding-bottom: 100px; }
	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; }

	/* title */
	.main-title { font-size: 20px; }
	.sub-title1 { font-size: 20px; }
	.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 { width: 230px; margin-left: auto; margin-right: auto; margin-top: 60px; max-width: none; }
	.title-comment:before { transform: rotate(-15deg); height: 90%; }
	.title-comment:after { transform: rotate(15deg); height: 90%; }

	/* overview */
	.full-width { width: auto; margin-left: -15px; margin-right: -15px; }
	.sp-over { margin-left: -15px; margin-right: -15px; }
	.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; }
	.btn-toggle { padding: 5px 10px; width: 230px; }
	.btn-toggle:before { right: 20px; }
	.btn-toggle_off { padding: 5px 10px; font-size: 0!important; background: none; }
	.btn-toggle_off:before { right: 20px; background: #330000; }
	.btn-toggle_off:after { right: 20px; background: #330000; }
	.btn-toggle_off.red { background: none; }
	.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-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; }
	.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); }
	.page-hero:after { top: auto; bottom: -50px; }
	.page-hero:before { bottom: -50px; height: calc(50% - 100px); }
	.page-hero .jp { letter-spacing: .1em; }
	.page-hero .en { 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: 0; margin-bottom: 60px; border: none; }
	.room_list li:last-child { margin-bottom: 60px; }
	.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; }
	.area_list .contents { width: 100%; }
	.area_list .contents .title { text-align: center; }
	.area_list .photo { width: 100%; padding-left: 0; padding-right: 0; margin-bottom: 25px; }
	.meal_list li { padding-top: 0px; }
	.meal_list li:first-child { padding-top: 0; }
	.lg_catch { padding: 60px 0; }
	.slick-box [class*="col"] { padding: 0 5px; }
	.slick-box .slick-img-prev { left: 22%; top: 0; bottom: 60px; margin: auto 0; z-index: 1; }
	.slick-box .slick-img-next { right: 22%; top: 0; bottom: 60px; margin: auto 0; z-index: 1; }
	.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 }
	.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; width: 100%; margin-bottom: 10px; font-size: 12px; }
	.post-header .cat span { font-size: 12px; min-width: 95px; }
	.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: 100px; }
	.under_arrow > div { min-height: 0!important; }
	.banner-register .bottom { padding: 0; }
	.banner-register .bottom .links { width: 50%; }
	.banner-register .bottom .links a { width: 100%; border: none; padding: 0; margin: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 65px; }
	.banner-register .bottom .links:last-child a { border-left: 1px solid #fff; }
	.banner-register .bottom a:before { display: none; }
	.lg-banner { flex-wrap: wrap; }
	.lg-banner .bg { width: 100%; padding-top: 50%; }
	.lg-banner .label { width: 100%; padding: 25px 30px 40px; }
	.lg-banner .sub-title1 { text-align: center; }
	.lg-banner .sub-title1 small { display: block; margin-left: 0; position: relative; margin-top: 6px; padding-top: 20px; }
	.lg-banner .sub-title1 small:before { content: ""; width: 30px; height: 1px; background: #3c6867; position: absolute; top: 0; left: 0; right: 0; margin: 0 auto; }
	.lg-banner hr { display: none; }
	.lg-banner p { display: block!important; text-align: center; margin-top: 20px; }
	.lg-banner .btn-viewmore { margin-top: 40px; }
	.fixed-banner { display: none; }

	/* 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 */
	.fv_wrapper { padding-top: 100px; }
	.firstView .bg { height: auto; height: calc(100vh - 190px); min-height: 570px; }
	.firstView .contents { padding-top: 100px; }
	.firstView .contents p { font-size: 15px; line-height: 1.9; margin-left: -22%; }
	.firstView .sub-news { align-items: center; padding: 7px 12px; width: 115%; left: -25%; }
	.firstView .sub-news .news-title { width: calc(100% - 235px); }
	.firstView .sub-news .news-date { width: 100px; padding-left: 12px; }
	.firstView .sub-news .news-button { display: block; text-align: center; width: 75px; }
	.firstView .sub-news .news-button img { display: block; margin: 0 auto; }
	.firstView .contents .title { font-size: 20px; }
	.firstView .contents .logos { left: 13%; }
	.firstView .contents .logos img { width: 195px; }
	.firstView .scroll { left: -40px; }
	.firstView .scroll .text { -ms-writing-mode: tb-rl; writing-mode: vertical-rl; left: 0; }
	.firstView .scroll > div { height: 90px; }
	.secondView { padding: 40px 0 60px; }
	.secondView .half { margin-bottom: 70px; }
	.secondView .left { width: 100%; }
	.secondView .main-title { font-size: 20px; letter-spacing: .21em; line-height: 2; }
	.secondView .left .main p { font-size: 10px; letter-spacing: .2em; }
	.secondView .right { width: 100%; padding: 0 10px; margin-bottom: 45px; }
	.secondView .movie-title { font-size: 14px; }
	.secondView .btn-viewmore { margin-left: 0; }
	.section-factory { padding: 30px 0; }
	.section-factory.radius2 { padding: 45px 0 0; }
	.section-factory .tate { height: 80px; top: -40px; right: 70%; }
	.section-factory.bg-dark { padding: 45px 0 55px; }
	.section-factory .mgb { margin-bottom: 20px; }
	.section-factory .title { font-size: 20px; margin-bottom: 25px; padding-bottom: 20px; font-size: 47px; }
	.section-factory .title small { display: block; font-size: 10px; }
	.section-factory .title:before { margin-left: auto; margin-right: auto; left: 0; right: 0; }
	.section-factory .title.sp-left { text-align: left; }
	.section-factory .title.sp-left small { display: inline-block; margin-left: 5px; }
	.section-factory .title.sp-left:before { right: auto; }
	.section-factory .btn-viewmore { width: 100%; padding: 0; }
	.section-factory.meal .mgb { margin-bottom: 25px; }
	.section-factory.rooms .mgb { margin-bottom: 25px; }
	.section-glamping { padding: 60px 0 65px; }
	.section-glamping .glamping-slider-parent { margin-left: -15px; margin-right: -15px; }
	.section-glamping .glamping-slider-parent .slick-dots { bottom: 20px; }
	.section-factory .factory-slider { margin-left: -15px; margin-right: -15px; }
	.section-factory .factory-slider .child { padding: 0 5px; }
	.section-news { padding: 75px 0 70px; }
	.section-news .btn-viewmore { margin-right: 0; justify-content: flex-end; }
	.section-news .btn-viewmore .arrow { width: 50px; }
	.section-radius-card .contents { width: 100%; padding: 50px 20px 45px; }
	.section-radius-card .contents .container-fluid { padding-left: 0; padding-right: 0; }
	.section-radius-card .contents .btn-viewmore { margin-left: 0; }
	.section-radius-card .contents p { letter-spacing: .06em; }
	.section-radius-card .photo { width: 100%; padding-top: 67.5%; }
	.facility_container .thumbnail-img { width: 50px; margin-right: 5px; }
	.facility_container .slick-prev, 
	.facility_container .slick-next { width: 20px; height: 20px; }
	.facility_container .slick-prev { left: -10px !important; z-index: 10; } 
	.facility_container .slick-next { right: -10px !important; z-index: 10; } 
	.concept .sec-title { font-size: 30px; }
	.concept .concept_kv { flex-wrap: wrap; }
	.concept .concept_kv .title { width: 100%; margin-right: 0; text-align: center; font-size: 18px; letter-spacing: .2em; }
	.concept .concept_kv .contents { width: 100%; text-align: center; }
	.concept .concept_kv p { font-size: 13px; line-height: 2.7; text-align: center; }
	.concept .caution { text-align: center; padding: 25px 0; }
	.concept .caution img { width: 130px; }
	.concept .caution .title { text-align: center; margin-top: 30px; }
	.concept .caution p { font-size: 12px; text-align: center; }
	.access-label { font-size: 12px; width: 65px; height: 35px; }
	.access-content { font-size: 12px; padding-top: 5px; }


	/* 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; }
	#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; }
	#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; }
	#room .banner-register { padding: 10px; }
	#room .banner-register.is-simple .banner-box { padding: 12px 15px 15px; }
	#room .banner-register.is-simple .sub-title1 { line-height: 1.5;}
	#meal .page-hero { background-image:url(../images/meal/hero_meal_sp.jpg)!important; }
	/* #meal .box-label > div { border: none; } */
	#meal .seal .icon { width: 100%; text-align: center; margin-bottom: 20px; }
	#meal .seal .contents { width: 100%; }
	/* #glamping .page-hero:before { height: calc(50% - 150px); } */
	#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; }
	#news .btn-viewmore { width: 100%; padding: 20px 15px; }
	#news .btn-viewmore span { width: 100px; }
	#news .btn-viewmore .arrow { max-width: 100px; }
	#sitemap .card-white { padding: 40px 25px 30px;}

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