@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Gideon+Roman&family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap');


/* =================== */
/*       pubulic       */
/* =================== */
html {
	font-size:clamp(10px, 1.04vw, 25px);
	overflow-x:hidden;
	scroll-padding-top:150px;
}
body {
	position:relative;
	-webkit-text-size-adjust:100%;
	font-family:"Zen Old Mincho", serif;
  font-weight:400;
  font-style:normal;
	overflow:hidden;
}



.en-font {
	font-family:"Gideon Roman", serif;
  font-weight:400;
	font-style:normal;
}


main { position:relative; }



img {
  width:100%;
  height:auto;
  max-width:100%;
}

a { transition:0.5s ease all; }

.sp-on { display:none; }

.flex-box {
	display:-webkit-box;
	display:flex;
	-webkit-box-pack:justify;
	justify-content:space-between;
	align-items:center;
}

.fadein {
	opacity:0;
	transform:translate(0, 5rem);
	transition:.5s;
}
.fadein.is-show {
	transform:translate(0, 0);
	opacity:1;
}

.fadein-lt {
	opacity:0;
	transform:translate(-5%, -5%);
	transition:1s;
}
.fadein-lt.is-show {
	transform:translate(0, 0);
	opacity:1;
}
.fadein-rt {
	opacity:0;
	transform:translate(5%, -5%);
	transition:1s;
}
.fadein-rt.is-show {
	transform:translate(0, 0);
	opacity:1;
}
.fadein-lb {
	opacity:0;
	transform:translate(-5%, 5%);
	transition:1s;
}
.fadein-lb.is-show {
	transform:translate(0, 0);
	opacity:1;
}
.fadein-rb {
	opacity:0;
	transform:translate(5%, 5%);
	transition:1s;
}
.fadein-rb.is-show {
	transform:translate(0, 0);
	opacity:1;
}


.center-fade {
	transform:scale(1.2);
	opacity:0;
	transition:.8s;
}
.center-fade.is-show {
	opacity:1;
	transform:scale(1);
}
.transscaleX { opacity:0; }
.transscaleX.is-show {
    animation:transscaleX .5s ease 0s forwards;
}
@keyframes transscaleX {
  0% {
    transform:scaleX(0);
    opacity:0;
  }
  100% {
    transform:scaleX(1);
    opacity:1;
  }
}

.blur {
	filter:blur(10px);
	transition:1.5s;
}
.blur.is-show {
	filter:blur(0);
	opacity:1;
}



.in-w85 {
	width:85rem;
	margin:0 auto;
	position:relative;
}
.in-w80 {
	width:80rem;
	margin:0 auto;
	position:relative;
}
.in-w75 {
	width:75rem;
	margin:0 auto;
	position:relative;
}
.in-w60 {
	width:60rem;
	margin:0 auto;
	position:relative;
}
.max-w-box {
	max-width:2500px;
	margin:0 auto;
	position:relative;
}


h2,h3,h4 { font-weight:100; }









.kv-box {
	width:100%;
	height:54rem;
}
.kv-box .kv-in {
	width:100%;
	height:100%;
	overflow: hidden;
}
.kv-box video {
	width:100%;
	height:100%;
	object-fit:cover;
}
.kv-box img {
	width:100%;
	height:100%;
	object-fit:cover;
}






/* =================== */
/*       main-nav      */
/* =================== */
#header {
	width:100%;
	position:relative;
}
#header.fixed .head-in {
	position:fixed;
	top:0;
	left:0;
	background:#ffe44f;
	height:5.5rem;
	width:100%;
	padding-top:0;
	-webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}
#header .head-in {
	z-index:1000;
	position:absolute;
	width:100%;
	top:0;
	left:0;
	/*padding:1.5rem 0 0;*/
	padding-top:2.5rem;
}
#header .head-in > .flex-box { align-items:flex-start; }
#header .site-logo {
	width:10.9rem;
	margin-top:0;
	position:relative;
	z-index:100;
	margin-left:3rem;
}
#header .site-logo .clr { display:none; }
#header.fixed .site-logo .clr { display:block; }
#header.fixed .site-logo .wht { display:none; }
#header.fixed.open .site-logo .clr { display:none; }
#header.fixed.open .site-logo .wht { display:block; }
#header .site-logo a:hover { opacity:.5; }
#header .nav-wrap {
	opacity:0;
	transition:0.5s ease all;
	display:block;
	background:#48402b;
	width:100%;
	height:54rem;
	position:fixed;
	top:-54rem;
	left:0;
}
#header.open .nav-wrap {
	display:block;
	top:0;
	left:0;
	z-index:10;
	transition:0.5s ease all;
	opacity:1;
}
#header .r-box { margin-right:2.5rem; }
#header #hamburger {
	display:block;
	width:3.5rem;
	height:4rem;
	cursor:pointer;
	z-index:10000;
	position:relative;
}
#header #hamburger .inner_line {
	display:block;
	margin:0 auto;
	width:3.5rem;
	height:.1rem;
	transition:1s;
	background:#fff;
	position:absolute;
	left:0;
	border-radius:100vmax;
}
#header.fixed #hamburger .inner_line { background:#48402b; }
#header #hamburger .inner_line span { transition:all .4s; }
#header #hamburger #line1 { top:.5rem; }
#header #hamburger #line2 { top:1.1rem; height:.2rem; }
#header #hamburger #line3 { top:1.8rem; }
#header #hamburger #line4 { background:none; top:2.6rem; font-size:1rem; letter-spacing:.1em; color:#fff; }
#header.fixed #hamburger #line4 { color:#48402b; }
#header #hamburger #line4::before { content:"MENU"; font-weight:bold; text-align:center; display:block; }
#header.open #hamburger #line4::before { content:"CLOSE"; margin-left:-.2rem; }
#header.open #hamburger .inner_line { background:#fff; }
#header #hamburger.open #line1 { transform:translateY(.5rem) rotate(-25deg); }
#header #hamburger.open #line2 { transform:translateY(-.1rem) rotate(25deg); height:.1rem; }
#header #hamburger.open #line3 { display:none; }
#header.open #hamburger #line4 { color:#fff; }
#header.open .site-logo { margin-left:8rem; margin-top:6rem; }
@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-150px);
    -ms-transform: translateY(-150px);
    transform: translateY(-150px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}
#header.open .head-in {
  position:fixed;
  top:0;
  left:0;
  width:100%;
}
#header .r-box .plan-btn {
	width:13.5rem;
	margin-right:2.5rem;
}
#header .r-box .plan-btn a:hover { opacity:.5; }
#header.fixed .head-in > .flex-box {
	align-items:center;
  height:100%;
}
#header.fixed .site-logo { width:5rem; }
#header #main-nav {
	width:62rem;
	margin-left:28rem;
	border-left:1px solid #7f7a6b;
	padding-left:3rem;
	align-items:flex-start;
	margin-top:8.5rem;
}
#header #main-nav ul { width:calc(100% / 3); }
#header #main-nav ul li a { display:flex; }
#header #main-nav ul li { margin-bottom:1.5rem; }
#header #main-nav ul li .icon { width:3rem; }
#header #main-nav ul li .icon img { margin:0 auto; display:block; }
#header #main-nav ul li .name {
	width:calc(100% - 3rem - 1rem);
  margin-left:1rem;
}
#header #main-nav ul li .en-font {
	font-size:max(15px, 1.25rem);
	display:block;
	color:#fff;
}
#header #main-nav ul li .jp {
	font-size:max(15px, 1rem);
	display:block;
	color:#fff;
	margin-top:.2rem;
}
#header #main-nav ul li.menu1 img { width:2.5rem; }
#header #main-nav ul li.menu2 img { width:2.2rem; }
#header #main-nav ul li.menu3 img { width:2.35rem; }
#header #main-nav ul li.menu4 img { width:2.4rem; }
#header #main-nav ul li.menu5 img { width:2.05rem; }
#header #main-nav ul li.menu6 img { width:1.65rem; }
#header #main-nav ul li.menu7 img { width:2.2rem; }
#header #main-nav ul li.menu8 img { width:2.4rem; }
#header #main-nav ul li.menu9 img { width:2.7rem; }
#header #main-nav ul li.menu10 img { width:1.75rem; }
#header #main-nav ul li.menu11 img { width:2.3rem; }
#header .sub-nav {
	display:flex;
	justify-content:center;
	margin-top:4rem;
	padding-left:19rem;
}
#header .sub-nav li {
	margin:0 2.5rem;
	font-size:max(15px, 1.25rem);
	color:#fff;
}
#header .sub-nav li span { vertical-align:middle; }
#header .sub-nav li img {
	width:1.3rem;
	margin-right:.7rem;
	vertical-align:middle;
}
#header .nav-wrap a { cursor:pointer; }
#header .nav-wrap a:hover { opacity:.5; }
#header.fixed.open .site-logo { width:10.9rem; margin-top:20.5rem; }
#header.fixed.open .head-in { animation:none; }
#header.fixed.open #hamburger { margin-top:3.5rem; }
#header .r-box .plan-btn .clr { display:none; }
#header.fixed .r-box .plan-btn .wht { display:none; }
#header.fixed .r-box .plan-btn .clr { display:block; }


/* =================== */
/*         footer      */
/* =================== */
#footer {
	width:100%;
	position:relative;
	background:#48402b;
	color:#fff;
	padding:6rem 0 3rem;
}
#footer .foot-in { align-items:flex-start; }
#footer .foot-logo {
	width:10.9rem;
	margin:0 auto 3rem;
}
#footer .plan-bnr .txt {
	font-size:max(15px, 1.1rem);
	text-align:center;
	color:#fff;
	margin-bottom:1rem;
}
#footer .plan-bnr .btn a {
	font-size:2rem;
	color:#fff;
	text-align:center;
	line-height:6.5rem;
	width:27.5rem;
	border:1px solid #fff;
	display:block;
	margin:0 auto;
	letter-spacing:.1em;
}
#footer .plan-bnr .btn a:hover { opacity:.5; }
#footer .foot-nav {
	align-items:flex-start;
	margin-top:8rem;
	justify-content:center;
}
#footer .foot-nav .main {
	width:53rem;
	min-width:610px;
	border-left:1px solid #7f7a6b;
	border-right:1px solid #7f7a6b;
	padding-left:2rem;
	align-items:flex-start;
}
#footer .foot-nav .main ul { width:calc(100% / 3); }
#footer .foot-nav .main ul.nav3 { width:13rem; }
#footer .foot-nav .main ul li a { display:flex; cursor:pointer; }
#footer .foot-nav .main ul li a:hover { opacity:.5; }
#footer .foot-nav .main ul li { margin-bottom:1.5rem; }
#footer .foot-nav .main ul li .name {
	width:calc(100% - 3rem - 1rem);
  margin-left:1rem;
}
#footer .foot-nav .main ul li .en-font {
	font-size:max(15px, 1.25rem);
	display:block;
	color:#fff;
}
#footer .foot-nav .main ul li .jp {
	font-size:max(15px, 1rem);
	display:block;
	color:#fff;
	margin-top:.2rem;
}
#footer .sub-nav {
	margin-left:3rem;
}
#footer .sub-nav li {
	font-size:max(15px, 1.25rem);
	color:#fff;
	margin-bottom:2rem;
}
#footer .sub-nav li span { vertical-align:middle; }
#footer .sub-nav li img {
	width:1.3rem;
	margin-right:.7rem;
	vertical-align:middle;
}
#footer .sub-nav li a:hover { opacity:.5; }
#footer .box2 { align-items:flex-end; margin-top:7.5rem; }
#footer address {
	line-height:1.5;
	font-size:max(13px, .9rem);
	width:22rem;
	margin-right:4rem;
	min-width:300px;
}
#footer address .name { margin-bottom:.3rem; }
#footer .box2 .txt-box {
	line-height:1.5;
	font-size:max(13px, .9rem);
}
#footer .copy {
	font-size:max(13px, .7rem);
	align-items:center;
	justify-content:flex-end;
}
#footer .copy .btn { margin-left:1rem; width:2.2rem; min-width:30px; }
#footer .copy a:hover { opacity:.5; }
#footer #pagetop a {
  width:1.2rem;
  position:fixed;
  top:auto;
  bottom:3rem;
  right:1.5rem;
  z-index:300;
  line-height:0;
  display:flex;
  justify-content:center;
  align-items:center;
  font-size:1rem;
}
#footer #pagetop a:hover { opacity:.5; }






/* =================== */
/*      body.index     */
/* =================== */
#search {
	position:relative;
	width:100%;
	margin-top:8rem;
}
.search-wrap {
	position:relative;
	z-index:1;
	min-width:850px;
	max-width:1500px;
	width:62.5%;
	height:8rem;
	min-height:90px;
	margin:0 auto 0;
	padding:.7rem 0;
	background:#ffe44f;
}
.search-wrap .search-ttl {
	text-align:center;
	width:11rem;
	height:1em;
	position:absolute;
	left:1.7rem;
	top:0;
	bottom:0;
	margin:auto 0;
	font-size:1.5rem;
}
.search-wrap .search-ttl .en-font {
	display:block;
}
.search-wrap .search-box {
	height:8rem;
	padding-left:14.5rem;
	letter-spacing:0;
	padding-top:1.2rem;
}
.search-wrap .search-box .search-top {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.search-wrap .search-box .form-box {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  width: 33rem;
  min-width:500px;
  margin: 0;
  font-size:max(14px, .7rem);
}
.search-wrap .search-box .line {
  display: flex;
  align-items: center;
}
.search-wrap .search-box .line.undecided {
  align-items: center;
  margin-top: 0 !important;
}
.search-wrap .search-box .line + .line {
  margin-top: 0.5em;
}
.search-wrap .search-box .line input {
  border: 0;
  display: block;
  text-align: center;
  color:#000;
}
.search-wrap .search-box .line .checkbox { cursor:pointer; }
.search-wrap .search-box .line .checkbox input { display:none; }
.search-wrap .search-box .line .checkbox span {
	position:relative;
	width:1.25rem;
	height:1.25rem;
	display:block;
	background:#fff;
	border:1px solid #928572;
}
.search-wrap .search-box .line .checkbox input[type="checkbox"]:checked + span::before {
  content: '';
  position: absolute;
  top: 2px;
  left: 1px;
  display: block;
  width: .7rem;
  height: .3rem;
  border-left: .3rem solid #928572;
  border-bottom: .3rem solid #928572;
  transform: rotate(-45deg);
}
.search-wrap .search-box .ttl {
  margin-right: 0.7em;
  font-size:max(14px, .8rem);
  color:#000;
}
.search-wrap .search-box .check-in input {
  width: 6.25rem;
  height:1.25rem;
  min-width:80px;
  background:none;
  border-bottom:1px solid #928572;
  font-size:max(14px, .7rem);
  color:#928572;
}
.search-wrap .search-box .select-wrap {
  padding-left: 0.2em;
  width: 6.8rem;
  height: 1.25rem;
  min-width: 100px;
  min-height: 19px;
  position: relative;
  border-bottom:1px solid #928572;
}
.search-wrap .search-box .select-wrap select {
  width:100%;
  height:100%;
  color:#928572;
  font-size:max(14px, .7rem);
}
.search-wrap .search-box .select-wrap select option { background:#fff; }
.search-wrap .search-box .select-wrap:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8.7px 5px 0 5px;
  border-color: #928572 transparent transparent transparent;
  position: absolute;
  right: 5px;
  top: 50%;
  -webkit-transform: translateY(-33%);
          transform: translateY(-33%);
  display: block;
  pointer-events: none;
}
/*.search-wrap .search-box .guests {
  margin-top: 0.5em;
}*/
.search-wrap .search-box .price .ttl {
  margin-right: .7em;
}
.search-wrap .search-box .price-in {
  text-align: center;
  display: flex;
}
.search-wrap .search-box .price-in span {
  display: block;
  padding:.3em .2em;
  color:#000;
}
.search-wrap .search-box .search-btn {
  width:9rem;
  min-width:120px;
  margin: 0 auto 0;
  transition: 0.5s ease all;
  background:#fff;
  text-align:center;
  padding:1.2rem 0;
  border-radius:.5rem;
}
.search-wrap .search-box .search-btn input {
  width:4rem;
}
.search-wrap .search-box .search-btn:hover { opacity:.7; }


body.index #btn-inst-box { margin:5rem auto; }
body.index #btn-inst-box .txt {
	width:14.3rem;
	margin:0 auto 2rem;
}
body.index #btn-inst-box .btn-box { justify-content:center; }
body.index #btn-inst-box .btn-box .btn {
	width:14.35rem;
	margin:0 3.5rem;
}
body.index #btn-inst-box .btn-box .btn .name {
	font-size:max(13px, 1.15rem);
	text-align:center;
	margin-top:.5rem;
}
body.index #btn-inst-box .btn-box .btn a:hover { opacity:.5; }

body.index #bk-pic-box {
	background:url(../img/bk_pic.jpg) no-repeat center;
	background-size:cover;
	padding:11rem 0 10.5rem;
	margin-top:-4rem;
}
body.index #bk-pic-box #access-sec { margin-bottom:11rem; }
body.index #bk-pic-box #access-sec .map-box {
	width:47.5rem;
	height:40rem;
}
body.index #bk-pic-box #access-sec .map-box iframe { width:100%; height:100%; }
body.index #bk-pic-box #access-sec .map-logo { width:9.45rem; }
body.index #bk-pic-box #access-sec .txt-box { width:calc(100% - 4rem - 47.5rem); }
body.index #bk-pic-box #access-sec address {
	margin-top:2.5rem;
	font-size:max(15px, 1rem);
	line-height:1.5;
	color:#fff;
}
body.index #bk-pic-box #access-sec .txt {
	margin-top:1rem;
	margin-bottom:2.5rem;
	font-size:max(15px, 1rem);
	line-height:1.5;
	color:#fff;
}
body.index #bk-pic-box #access-sec .txt span {
	display:block;
	margin-top:.5rem;
}
body.index #bk-pic-box #access-sec .root-box { align-items:flex-start; }
body.index #bk-pic-box #access-sec .root-box .icon { width:4rem; }
body.index #bk-pic-box #access-sec .root-box .root-txt {
	width:calc(100% - 4rem - 1rem);
	font-size:max(15px, 1rem);
	line-height:1.5;
	color:#fff;
}
body.index #bk-pic-box #access-sec .root-box .root-txt span {
	font-weight:bold;
	font-size:110%;
	display:block;
	margin-bottom:.5rem;
}
body.index #bk-pic-box #policy-sec h3 {
	text-align:center;
	margin-bottom:1.5rem;
	color:#fff;
}
body.index #bk-pic-box #policy-sec h3 .en-font {
	font-size:2.5rem;
	display:block;
}
body.index #bk-pic-box #policy-sec h3 .jp {
	font-size:max(20px, 1.3rem);
	letter-spacing:.1em;
	display:block;
	margin-top:.5rem;
}
body.index #bk-pic-box #policy-sec table {
	font-size:max(15px, 1rem);
	text-align:center;
	letter-spacing:.1em;
	width:100%;
	color:#fff;
}
body.index #bk-pic-box #policy-sec table th {
	width:calc(100% / 5);
	background:rgba(98,92,75,.3);
	border:1px solid #fff;
	padding:1rem 0;
	font-weight:400;
}
body.index #bk-pic-box #policy-sec table td {
	border:1px solid #fff;
	padding:1rem 0;
}
body.index #bk-pic-box #policy-sec .att-txt {
	font-size:max(15px, 1rem);
	letter-spacing:.1em;
	line-height:1.5;
	color:#fff;
	margin:2rem auto 3rem;
	text-align:center;
}
body.index #bk-pic-box #policy-sec .bnr-box .ttl {
	font-size:max(15px, 1rem);
	text-align:center;
	letter-spacing:.1em;
	color:#fff;
	margin-bottom:1rem;
}
body.index #bk-pic-box #policy-sec .bnr-box .bnr {
	width:15rem;
	margin:0 auto;
}
body.index #bk-pic-box #policy-sec .bnr-box .bnr a:hover { opacity:.5; }
body.index #bk-pic-box #tourism-sec h3 .en-font {
	font-size:2.5rem;
	text-align:center;
	display:block;
	color:#fff;
}
body.index #bk-pic-box #tourism-sec h3 .jp {
	display:block;
	font-size:1.5rem;
	text-align:center;
	color:#fff;
	letter-spacing:.1em;
	margin-top:1rem;
}
body.index #bk-pic-box #tourism-sec .my-map {
	margin-top:2.5rem;
	height:27.5rem;
	margin-bottom:7rem;
}
body.index #bk-pic-box #tourism-sec .my-map iframe {
	width:100%;
	height:100%;
}
body.index #bk-pic-box #tourism-sec h4 {
	font-size:1.75rem;
	color:#fff;
	text-align:center;
	letter-spacing:.1em;
	margin-bottom:2rem;
}
body.index #bk-pic-box #tourism-sec .list1 {
	flex-wrap:wrap;
	align-items:inherit;
	margin-bottom:5rem;
}
body.index #bk-pic-box #tourism-sec .list1 li {
	width:calc((100% - 3rem) / 2);
	border-bottom:1px solid #fff;
	padding:1rem;
	display:flex;
  justify-content:space-between;
  align-items:center;
}
body.index #bk-pic-box #tourism-sec .list1 li .name { font-size:max(18px, 1.5rem); color:#fff; width:calc(100% - 4rem); }
body.index #bk-pic-box #tourism-sec .list1 li .name .mid { font-size:max(15px, 1.1rem); }
body.index #bk-pic-box #tourism-sec .list1 li .name .mini { font-size:max(15px, 1rem); display:block; line-height:1.75; margin-top:.5rem; }
body.index #bk-pic-box #tourism-sec .list1 li .btn { width:3rem; }
body.index #bk-pic-box #tourism-sec .list1 li .btn a:hover { opacity:.5; }
body.index #bk-pic-box #tourism-sec .list1 li:nth-child(1),
body.index #bk-pic-box #tourism-sec .list1 li:nth-child(2) { border-top:1px solid #fff; }
body.index #bk-pic-box #tourism-sec .list2 { margin-bottom:8rem; }
body.index #bk-pic-box #tourism-sec .list2 li { width:calc((100% - 4rem) / 3); }
body.index #bk-pic-box #tourism-sec .list2 li .txt-box { padding:1rem; }
body.index #bk-pic-box #tourism-sec .list2 li .name { font-size:1.5rem; color:#fff; }
body.index #bk-pic-box #tourism-sec .list2 li .btn { width:3rem; }
body.index #bk-pic-box #tourism-sec .list2 li .btn a:hover { opacity:.5; }

body.index #top-box {
	padding:9rem 0 27rem;
	background:url(../img/top_bk.jpg) no-repeat center bottom;
	background-size:cover;
	margin-bottom:12rem;
}
body.index #top-box .txt-box {
	font-size:max(15px, 1.1rem);
	line-height:2.7;
	color:#fff;
	margin-left:40.5rem;
	position:relative;
	z-index:1;
}
body.index #top-box .pic1 {
	width:42.5rem;
	position:absolute;
	top:8.5rem;
	left:-10.5rem;
}
body.index #top-box .pic2 {
	width:27.5rem;
	position:absolute;
	top:40rem;
	right:-10.5rem;
}
body.index #top-box .pic3 {
	width:20rem;
	position:absolute;
	bottom:-18rem;
	left:0;
}

body.index #pickup .txt-box {
	position:relative;
	padding-bottom:7rem;
}
body.index #pickup .txt-box h2 .en-font {
	font-size:max(35px, 5rem);
	display:block;
}
body.index #pickup .txt-box h2 .jp {
	font-size:max(20px, 1.5rem);
	display:block;
	margin-top:1rem;
	letter-spacing:.1em;
}
body.index #pickup .txt-box .txt {
	margin:4rem 0;
	font-size:max(15px, 1.1rem);
	line-height:2.7;
}
body.index #pickup .txt-box .more-btn span {
	font-size:max(15px, 1.1rem);
	margin-right:1rem;
	vertical-align:middle;
	transition:0.5s ease all;
}
body.index #pickup .txt-box .more-btn img {
	width:3rem;
	vertical-align:middle;
}
body.index #pickup .txt-box .more-btn a:hover { opacity:.5; }
body.index #pickup .txt-box .more-btn a:hover span { margin-right:1.5rem; }
body.index #pickup1 .illust {
	width:10rem;
	position:absolute;
	top:0;
	left:38rem;
}
body.index #pickup2 .illust {
	width:10.6rem;
	position:absolute;
	bottom:-4rem;
	right:.5rem;
}
body.index #pickup3 .illust {
	width:12.4rem;
	position:absolute;
	bottom:-3.5rem;
	right:0;
}
body.index #pickup2 { margin:15rem auto; }
body.index #pickup2 .pic {
	order:1;
	margin-left:-5rem;
	width:40rem;
}
body.index #pickup2 .txt-box {
	order:2;
	margin-left:7.5rem;
}


#rental-sec {
	background:#fff;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100vh;
	padding-top:7rem;
	z-index:1000;
	display:none;
}
#rental-sec.open { display:block; }
#rental-sec .cont-box {
	align-items:flex-start;
	justify-content:flex-start;
}
#rental-sec .cont-box .ttl-box .ttl .en-font {
	font-size:5rem;
	display:block;
}
#rental-sec .cont-box .ttl-box .ttl .jp {
	font-size:max(15px, 1.5rem);
	display:block;
	margin-top:1rem;
	letter-spacing:.1em;
}
#rental-sec .cont-box .ttl-box .illust {
	width:6rem;
	margin:4.5rem 0 0 2rem;
}
#rental-sec .cont-box .txt-box {
	margin-left:9.5rem;
	width:37.5rem;
}
#rental-sec .cont-box .txt-box dl {
	border-bottom:1px solid #7f7a6b;
	padding-bottom:.5rem;
	margin-bottom:1rem;
}
#rental-sec .cont-box .txt-box .line {
	font-size:max(15px, 1.1rem);
	margin-bottom:1.3rem;
	display:flex;
	letter-spacing:.1em;
}
#rental-sec .cont-box .txt-box .line dt { width:16em; }
#rental-sec .cont-box .txt-box .line dt span {
	font-size:70%;
	color:#ffe44f;
}
#rental-sec .cont-box .txt-box li {
	font-size:max(15px, 1rem);
	line-height:1.75;
	letter-spacing:.1em;
	width:17em;
	margin-left:calc(100% - 17em);
}

.pop .close-btn {
	display:block;
	width:3.5rem;
	height:4rem;
	cursor:pointer;
	z-index:10000;
	position:fixed;
	top:2rem;
	right:3rem;
	z-index:100;
	display:none;
}
.pop.open .close-btn { display:block; }
.pop .close-btn .inner_line {
	display:block;
	margin:0 auto;
	width:3.5rem;
	height:.1rem;
	transition:1s;
	background:#000;
	position:absolute;
	left:0;
	border-radius:100vmax;
}
.pop .close-btn .inner_line span { transition:all .4s; }
.pop .close-btn #line1 { top:.5rem; }
.pop .close-btn #line2 { top:1.1rem; height:.2rem; }
.pop .close-btn #line4 { background:none; top:2.6rem; font-size:1rem; letter-spacing:.1em; color:#000; }
.pop .close-btn #line4::before { content:"CLOSE"; margin-left:-.2rem; font-weight:bold; text-align:center; display:block; }
.pop .close-btn #line1 { transform:translateY(.5rem) rotate(-25deg); }
.pop .close-btn #line2 { transform:translateY(-.1rem) rotate(25deg); height:.1rem; }


#qa-sec {
	background:#fff;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100vh;
	padding-top:7rem;
	padding-bottom:7rem;
	z-index:1000;
	display:none;
	overflow-y:auto;
}
#qa-sec.open { display:block; }
#qa-sec .cont-box { align-items:flex-start; }
#qa-sec .cont-box .ttl-box .ttl .en-font {
	font-size:5rem;
	display:block;
}
#qa-sec .cont-box .ttl-box .ttl .jp {
	font-size:max(15px, 1.5rem);
	display:block;
	margin-top:1rem;
	letter-spacing:.1em;
}
#qa-sec .cont-box .ttl-box .illust {
	width:6rem;
	margin:4.5rem 0 0 2rem;
}
#qa-sec .cont-box .txt-box {width:57.5rem; }
#qa-sec .cont-box .txt-box .line {
	border-bottom:1px solid #7f7a6b;
	padding:1rem 0;
	line-height:1.75;
}
#qa-sec .cont-box .txt-box dt {
	display:flex;
	align-items:baseline;
	position:relative;
	padding-right:5rem;
	cursor:pointer;
}
#qa-sec .cont-box .txt-box dt::before {
	content:"";
	width:1.2rem;
	height:.85rem;
	background:url(../img/acc2.png) no-repeat;
	background-size:cover;
	position:absolute;
	right:2rem;
	top:1.5rem;
}
#qa-sec .cont-box .txt-box dt.open::before {
	background:url(../img/acc1.png) no-repeat;
	background-size:cover;
}
#qa-sec .cont-box .txt-box dt .en-font {
	font-size:2rem;
	color:#f5dc54;
}
#qa-sec .cont-box .txt-box dt .txt {
	font-size:max(15px, 1.1rem);
	margin-left:1.5rem;
	width:calc(100% - 1.5rem - 2rem);
}
#qa-sec .cont-box .txt-box dd {
	display:none;
}
#qa-sec .cont-box .txt-box dd > .flex-box {
	display:flex;
	align-items:baseline;
}
#qa-sec .cont-box .txt-box dd .en-font {
	font-size:2rem;
	color:#f5dc54;
	width:max(15px, 1.1rem);
}
#qa-sec .cont-box .txt-box dd .txt {
	font-size:max(15px, 1rem);
	margin-left:max(15px, 1.1rem);
	width:calc(100% - max(15px, 1.1rem) - 2rem);
}
#qa-sec .cont-box2 {
	margin:8.5rem auto 0;
	width:50rem;
}
#qa-sec .cont-box2 .sub-ttl { text-align:center; margin-bottom:2rem; }
#qa-sec .cont-box2 .sub-ttl .en-font {
	font-size:2.5rem;
	display:block;
}
#qa-sec .cont-box2 .sub-ttl .jp {
	font-size:1.5rem;
	display:block;
	margin-top:1rem;
	font-weight:400;
	letter-spacing:.1em;
}
#qa-sec .cont-box2 li {
	font-size:max(15px, 1rem);
	line-height:1.75;
	text-indent:-1.5em;
	padding-left:1.5em;
	margin-bottom:1rem;
}
#qa-sec .cont-box2 li span {
	font-size:75%;
	color:#ffe44f;
}
#qa-sec .cont-box2 .big-txt {
	font-size:max(15px, 1.25rem);
	text-align:center;
	display:block;
	margin-bottom:2rem;
	line-height:1.5;
}
#qa-sec .cont-box2 .big-txt .clr { color:#ffe44f; }
#qa-sec .cont-box2 .big-txt .mini {
	display:block;
	font-size:max(13px, 1.1rem);
	text-align:center;
	margin-top:.3rem;
}
#qa-sec .cont-box2 .qa-pic {
	width: 18.5rem;
  margin: 0 auto 2rem;
}


body.index #gifts-bnr {
	width:56rem;
	margin:8rem auto 6.5rem;
}
body.index #gifts-bnr a:hover { opacity:.5; }

body.index #upgrade-box {
	width:40rem;
	min-width:600px;
	background:#f9f8f2;
	margin:0 auto 6.5rem;
	text-align:center;
	padding:3rem 0;
}
body.index #upgrade-box .ttl { font-size:2rem; margin-bottom:1rem; }
body.index #upgrade-box .ttl .mini { font-size:75%; display:block; margin-bottom:.5rem; }
body.index #upgrade-box li {
	font-size:max(15px, 1rem);
	border-bottom:2px solid #ffe44f;
	width:30rem;
	min-width:500px;
	margin:0 auto;
	padding:.6rem 0;
}
body.index #upgrade-box li .size1 { font-size:110%; }
body.index #upgrade-box li .size2 { font-size:150%; }
body.index #upgrade-box .last-txt {
	font-size:max(15px, 1rem);
	line-height:1.66;
	margin-top:1rem;
}

body.index #tourism-sec .add-cont-box {
	align-items:flex-start;
	padding-bottom:2rem;
	border-bottom:1px solid #fff;
	margin-bottom:6rem;
	margin-top:-2rem;
}
body.index #tourism-sec .add-cont-box .pic-box { width:30rem; }
body.index #tourism-sec .add-cont-box .pic-box .att {
	font-size:max(15px, 1rem);
	color:#fff;
	text-align:center;
	margin-top:1rem;
}
body.index #tourism-sec .add-cont-box .txt-box {
	width:calc(100% - 30rem - 4rem);
	color:#fff;
	margin-top:2rem;
}
body.index #tourism-sec .add-cont-box .txt-box .name {
	font-size:max(18px, 1.5rem);
	margin-bottom:.5rem;
}
body.index #tourism-sec .add-cont-box .txt-box .txt {
	font-size:max(15px, 1rem);
	line-height:1.75;
}


@media screen and (max-width: 1350px) {
	.search-wrap .search-box { padding-top:.9rem; }
	#footer .box2 { display:block; }
	#footer .box2 .l-box { justify-content:flex-start; }
	body.index #bk-pic-box #policy-sec .att-txt { text-align:left; }
	body.index #bk-pic-box #policy-sec .att-txt br { display:none; }
}
@media screen and (max-width: 1150px) {
	.search-wrap .search-box .form-wrap { justify-content:flex-start; }
	.search-wrap .search-box .search-btn { margin:0; }
	#footer .copy { margin-top:2rem; }
	body.index #top-box .txt-box { margin-left:37rem; }

}

@media screen and (max-width: 960px) {
	.sp-on { display:initial; }
	.pc-on { display:none; }

	.in-w80 { width:86.6%; }
	.in-w85 { width:93.3%; }
	.in-w75 { width:86.6%; }
	.in-w60 { width:86.6%; }

	html { scroll-padding-top:80px; }

	.fadein { transform:translate(0, 0); opacity:1; transition:none; }
	.center-fade img { transform:translate(0, 0); opacity:1; transition:none; }

	.kv-box { width:100%; position:relative; margin:0 auto 0; top:inherit; line-height:0; }

  #footer .copy .btn { width:35px; margin-left:5px; }
  #footer .copy { font-size:11px; width:100%; }

	#search {
  	margin:0 auto;
    padding:0;
  }
	.search-wrap { width:100%; max-width:600px; min-width:inherit; margin:80px auto 0; height:auto; padding:30px 50px;  }
	.search-wrap .in-w60 { min-width:250px; }
	.search-wrap .search-ttl {
		position:relative;
		text-align:center;
		margin:0 auto;
		border-right:0;
		width:90%;
		font-size:25px;
		left:inherit;
	}
	.search-wrap .form-wrap { display:block; }
	.search-wrap .search-box { height:auto; padding-left:0; margin:0 auto; padding-top:25px; }
	.search-wrap .search-box .form-box { min-width:inherit; margin:0 auto; font-size:15px; width:auto; max-width:450px; }
	.search-wrap .search-box .line { margin-bottom:10px; align-items:flex-start; }
	.search-wrap .search-box .check-in input { width:110px; height:auto; line-height:25px; padding:0; font-size:14px; border-radius:0; }
	.search-wrap .search-box .ttl { width:6em; margin-right:0; line-height:25px; font-size:15px; }
	.search-wrap .search-box .select-wrap { padding-left:0; width:110px; height:auto; line-height:25px; }
	.search-wrap .search-box .line input[type="checkbox"] { width:25px; height:25px; margin:0; }
	.search-wrap .search-box .search-btn.sp-on { width:100%; max-width:250px; height:50px; display:block; margin:30px auto 0; }
	.search-wrap .search-box .select-wrap select { font-size:14px; }
	.search-wrap .search-box .price .ttl { margin-right:0; }
	.search-wrap .search-box .line.type { margin-left:15px; }
	.search-wrap .search-box .line.undecided { margin-left:15px; }
	.search-wrap .search-box .search-btn input { width:65px; }
	.search-wrap .search-box .search-btn { width:250px; margin:20px auto 0; }

	body.index #top-box .in-w75 { max-width:600px; }
	body.index #top-box .txt-box { margin:0 15px; }
	body.index #top-box .pic-box { margin-top:20px; display:flex; flex-wrap:wrap; justify-content:space-between; }
	body.index #top-box .pic-box .pic1.pic { width:61.5% !important; }
	body.index #top-box .pic-box .pic { width:calc((37.5% - 10px)) !important; margin-bottom:10px; transition:none !important; transform:inherit !important; }
	body.index #top-box .pic-box .pic3.pic { position:absolute; left:inherit; right:0; bottom:0; }
	body.index #top-box .pic1 { position:initial; }
	body.index #top-box .pic2 { position:initial; }
	body.index #top-box .pic3 { position:initial; }

	body.index #pickup .pic .pc-on { display:block; }
	body.index #pickup .pic .sp-on { display:none; }
	body.index #pickup .txt-box h2 .sp-on { display:none; }

	body.index #bk-pic-box #access-sec { display:block; max-width:600px; }
	body.index #bk-pic-box #access-sec .map-box { width:100%; }
	body.index #bk-pic-box #access-sec .txt-box { width:100%; margin-top:30px; }
	body.index #bk-pic-box #access-sec .map-logo { margin:0 auto; width:10.45rem; }
	body.index #bk-pic-box #access-sec address { text-align:center; }
	body.index #bk-pic-box #access-sec .txt { text-align:center; }
	body.index #bk-pic-box #access-sec .root-box { width:400px; margin:0 auto; }
	body.index #bk-pic-box #policy-sec { max-width:600px; }
	body.index #bk-pic-box #policy-sec table.pc-on { display:table; }
	body.index #bk-pic-box #policy-sec table.sp-on { display:none; }
	body.index #bk-pic-box #tourism-sec h4 .sp-on { display:none; }

	#footer { padding:50px 0 40px; }
	#footer .foot-nav { display:block; margin-top:60px; }
	#footer .foot-nav .main { width:300px; margin:0 auto; border:0; padding-left:0; border-bottom:1px solid #7f7a6b; padding-bottom:30px; min-width:inherit; }
	#footer .foot-nav .main ul { width:50%; }
	#footer .sub-nav { width:150px; margin:30px auto 0; }
	#footer .foot-nav .main ul li .name { width:100%; margin-left:0; }
	#footer .foot-nav .main ul li .jp { margin-top:5px; }
	#footer .foot-nav .main ul li.sp-on { display:block; }
	#footer .box2 { margin-top:40px; }
	#footer .box2 .l-box { display:block; }
	#footer address { width:100%; margin-right:0; text-align:center; }
	#footer .box2 .txt-box { text-align:center; margin-top:10px; }
	#footer .copy { justify-content:center; margin-top:40px; }

	#header .head-in { height:55px; background:#ffe44f; padding-top:0; position:fixed; top:0; left:0; animation:none; }
	#header.fixed .head-in { animation:none; }
	#header .site-logo { width:51px; margin-left:15px; }
	#header .head-in > .flex-box { height:100%; align-items:center; }
	#header .r-box { margin-right:15px; }
	#header .plan-btn.sp-on { display:none; }
	.kv-box { height:auto; margin-top:55px; }
	#header.open .site-logo { width:92px; margin:100px auto 0; position:absolute; left:0; right:0; }
	#header #hamburger { position:fixed; top:8px; right:15px; }
	#header #main-nav { width:300px; margin:140px auto 0; padding:0; border:0; }
	#header #main-nav ul { width:50%; }
	#header #main-nav ul li .icon { display:none; }
	#header #main-nav ul li.sp-on { display:block; }
	#header #main-nav ul li .name { width:100%; margin-left:0; }
	#header .sub-nav { display:none; }
	#header.open .plan-btn.sp-on { display:block; width:280px; margin:50px auto 0; }
	#header.open .nav-wrap { height:100vh; }
	#header.fixed.open .site-logo { width:92px; margin-top:100px; }
	#header.fixed.open #hamburger { margin-top:0; }
	#header .site-logo .clr { display:block; }
	#header .site-logo .wht { display:none; }
	#header #hamburger .inner_line { background:#48402b; }
	#header #hamburger #line4 { color:#48402b; }
	#header.open .site-logo .clr { display:none; }
	#header.open .site-logo .wht { display:block; }

	#rental-sec .cont-box { display:block; }
	#rental-sec .cont-box .ttl-box .illust.sp-on { display:block; width:6rem; margin:0 auto; }
	#rental-sec .cont-box .ttl-box .ttl { text-align:center; margin-top:10px; }
	#rental-sec .cont-box .txt-box { width:300px; margin:30px auto 0; }
	#rental-sec .cont-box .txt-box .line dt { width:15em; }
	.pop .close-btn { top:10px; right:15px; }

	#qa-sec .cont-box { display:block; }
	#qa-sec .cont-box .ttl-box .illust.sp-on { display:block; width:6rem; margin:0 auto; }
	#qa-sec .cont-box .ttl-box .ttl { text-align:center; margin-top:10px; }
	#qa-sec .cont-box .txt-box { width:calc(100% - 30px); margin:30px auto 0; }
	#qa-sec .cont-box .txt-box dt { padding-right:40px; }
	#qa-sec .cont-box .txt-box dt .en-font { font-size:25px; }
	#qa-sec .cont-box .txt-box dd .en-font { font-size:25px; }
	#qa-sec .cont-box .txt-box dt .txt { width:calc(100% - 1.5rem - 25px); }
	#qa-sec .cont-box .txt-box dd .txt { width:calc(100% - 1rem - 25px); margin-left:1rem; }
	#qa-sec .cont-box .txt-box dt::before { width:18px; height:13px; top:inherit; bottom:5px; right:0 }
	#qa-sec .cont-box2 { width:calc(86.6% - 30px); }
	#qa-sec .cont-box2 li { line-height:1.66; }

	body.index #gifts-bnr .sp-on { display:none; }
  body.index #gifts-bnr .pc-on { display:block; }
  body.index #bk-pic-box #tourism-sec { max-width:600px; }

  body.index #upgrade-box li { line-height:1.5; padding:10px 0; width:28.5rem; }

  body.index #tourism-sec .add-cont-box { display:block; }
  body.index #tourism-sec .add-cont-box .pic-box { width:100%; max-width:50rem; margin:0 auto; }
  body.index #tourism-sec .add-cont-box .txt-box { width:100%; max-width:50rem; margin:20px auto 0; }
  body.index #tourism-sec .add-cont-box .txt-box .txt { line-height:1.66; }
}



@media screen and (max-width: 750px) {
	.search-wrap { padding:20px 10px 35px; margin-top:60px; }
  .search-wrap .search-box .search-top { display:block; }
  .search-wrap .search-box .form-box { display:block; width:200px; }
  .search-wrap { max-width:500px; width:calc(86.6% - 30px); }
  .search-wrap .search-box .price-in { display:block; }
  .search-wrap .search-box .price-in span { padding:5px 0; transform:rotate(270deg); }
  .search-wrap .search-box .line.type { margin-left:0; }
  .search-wrap .search-box .line.undecided { margin-left:0; }
  .search-wrap .search-box .search-btn { margin-top:30px; }

  body.index #top-box { padding:50px 0 170px; background:url(../img/top_bk_sp.jpg) no-repeat center bottom; background-size:cover; margin-bottom:60px; }
  body.index #top-box .txt-box { line-height:1.66; }
  body.index #top-box .pic-box .pic1.pic { width:100% !important; }
  body.index #top-box .pic-box .pic { width:calc((100% - 10px) / 2) !important; }
  body.index #top-box .pic-box .pic3.pic { position:initial; }
  body.index #pickup .txt-box { padding:0 15px 50px; }
  body.index #pickup .txt-box h2 .en-font { font-size:35px; line-height:1.2; }
  body.index #pickup .txt-box .txt { line-height:1.66; margin:20px 0 30px; }
  body.index #pickup .pic .pc-on { display:none; }
  body.index #pickup .pic .sp-on { display:block; }
  body.index #pickup1 .illust { left:initial; right:30px; top:inherit; bottom:-20px; }
  body.index #pickup2 { margin:60px auto; display:block; width:100%; }
  body.index #pickup2 .txt-box { margin:0 auto; width:86.6%; }
  body.index #pickup2 .pic { width:100%; margin-left:0; }
  body.index #pickup .txt-box h2 .sp-on { display:initial; }
  body.index #pickup .txt-box h2 .jp { line-height:1.3; }
  body.index #bk-pic-box { margin-top:-60px; padding-top:110px; padding-bottom:80px; background:url(../img/bk_pic_sp.jpg) no-repeat center; background-size:cover; }
  body.index #bk-pic-box #access-sec { width:calc(86.6% - 30px); margin-bottom:70px; }
  body.index #bk-pic-box #access-sec .map-box { height:250px; }
  body.index #bk-pic-box #access-sec .root-box { width:100%; }
  body.index #bk-pic-box #policy-sec table.pc-on { display:none; }
  body.index #bk-pic-box #policy-sec table.sp-on { display:table; }
  body.index #bk-pic-box #policy-sec table th { width:50%; }
  body.index #bk-pic-box #policy-sec .att-txt { margin-bottom:50px; }
  body.index #btn-inst-box .btn-box .btn { margin:0 15px; }
  body.index #bk-pic-box #tourism-sec h4 .sp-on { display:initial; }
  body.index #bk-pic-box #tourism-sec .list1 { display:block; }
  body.index #bk-pic-box #tourism-sec .list1 li { width:100%; padding:13px; }
  body.index #bk-pic-box #tourism-sec .list1 li:nth-child(2) { border-top:0; }
  body.index #bk-pic-box #tourism-sec .list2 { display:block; }
  body.index #bk-pic-box #tourism-sec .list2 li { margin-bottom:15px; width:100%; }
  body.index #bk-pic-box #tourism-sec .list2 li .txt-box { padding:13px; }
  body.index #bk-pic-box #tourism-sec .list1 li .name .mini { line-height:1.5; }

  body.index #gifts-bnr { width:80%; }
  body.index #gifts-bnr .pc-on { display:none; }
  body.index #gifts-bnr .sp-on { display:block; }
  body.index #bk-pic-box #tourism-sec { width:calc(86.6% - 30px); }

  body.index #upgrade-box { width:86.6%; min-width:inherit; }
  body.index #upgrade-box li { min-width:inherit; }
  body.index #upgrade-box .ttl { font-size:19px; }

  body.index #tourism-sec .add-cont-box .pic-box .att { line-height:1.5; text-align:left; text-indent:-1em; padding-left:1em; }
}

