@charset "UTF-8";
/* CSS Document */

@font-face {
  font-family: 'Carnas-Light';
  src: url('/psi/fonts/font.woff2') format('woff2'), url('/psi/fonts/font.woff') format('woff');
}

*{margin: 0;padding: 0; outline:none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-appearance: none; /*font-feature-settings : "palt";*/}
html {font-size:62.5%;}
body {font-family: 'Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ Ｐゴシック', sans-serif; font-size:16px;/* letter-spacing: 0.02em;*/ line-height: 1.7; background:#FFF; color:#231815; text-align: center; scrolling: yes; position: relative; -webkit-text-size-adjust: 100%; overflow-x: hidden;}
body.en {font-family: Helvetica, Arial, sans-serif;}
body.tw {font-family: sans-serif;}
body.cn {font-family: sans-serif;}
body.ko {font-family: sans-serif;}
body *.en{font-family: "Carnas-Light", sans-serif!important; font-weight: 300!important; letter-spacing: 0.05em!important;}

body.fixed {position: fixed; width: 100%; height: 100%;}

a{color:#231815; text-decoration:none; overflow:hidden; outline:none; cursor: pointer;}
a[href^="tel"]{color:#231815!important; text-decoration:none!important;}
a:hover{text-decoration:none; color: #231815;}
button, input, select, textarea{border: none; border-radius: 0; -webkit-appearance: none;}
button{ cursor: pointer;}

p{font-size: 1.5rem;}
img{border:none; vertical-align: top;}
table{border-collapse:collapse;}
ul{list-style-type:none;}

/* ::::::::::::::::::::::::::::::::: COMMON ::::::::::::::::::::::::::::::::: */

/* Header */

header.mainHeader{position: fixed; left: 0; top: 0; z-index: 1040; width: 100%;}
header.mainHeader div.inner{background: #fff; height: 70px; width: 100%;}
header.mainHeader p.siteTitle{text-align: center; padding: 23px 0 0;}
header.mainHeader p.siteTitle img{width: 280px; height: 24px;}

header.mainHeader.index{top: -80px; transition: top 0.4s ease;}
header.mainHeader.index.on{top: 0;}

button#commonBtn{position: fixed; width: 100px; height: 70px; left: 0; top: 0; z-index: 1040; background: none;}
button#commonBtn span{display: block; position: absolute; width: 40px; left: 30px; border-top: 2px solid #009574; transition: all 0.2s ease;}
button#commonBtn span.line1{top: 27px;}
button#commonBtn span.line2{top: 35px;}
button#commonBtn span.line3{top: 43px;}
button#commonBtn.on{z-index: 1040;}
button#commonBtn.on span{border-color: #727171;}
button#commonBtn.on span.line1{top: 35px; transform: rotate(45deg);}
button#commonBtn.on span.line2{opacity: 0;}
button#commonBtn.on span.line3{top: 35px; transform: rotate(-45deg);}
button#langBtn{position: fixed; width: 130px; height: 70px; right: 0; top: 0; z-index: 1040; font-size: 1.6rem; color: #009574; text-align: left; background: none; transition: all 0.2s ease;}
button#langBtn span{padding: 0 25px 0 25px; position: relative;}
button#langBtn span::after{content: ""; width: 10px; height: 10px; border-top: 1px solid #009574; border-right: 1px solid #009574; position: absolute; right: 0; top: 0; bottom: 0; margin: auto 0; transform-origin: center center; transform: rotate(135deg); transition: all 0.2s ease;}
button#langBtn.on{background: #009574; z-index: 1040; color: #FFF;}
button#langBtn.on span::after{border-color: #FFF; transform: rotate(315deg) translateY(5px);}

button#mypage{position: fixed; width: 250px; height: 70px; right: 0; top: 0; z-index: 1040; font-size: 1.6rem; color: #009574; text-align: left; background: none; transition: all 0.2s ease;}
button#mypage span{padding: 0 50px 0 25px; position: relative;}
button#mypage a{color: #009574;}


div#globalMenu{position: fixed; width: 100%; height: 100%; z-index: 1040; left: 0; top: 0; overflow: hidden; overflow-y: auto; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s ease; -webkit-overflow-scrolling: touch;}
div#globalMenu.on{opacity: 1; visibility: visible;}
div#globalMenu div.inner{width: 500px; min-height: 100%; left: 0; top: 0; background: rgba(255,255,255,0.93); position: absolute;}
div#globalMenu div.bg{width: calc(100% - 500px); height: 100%; right: 0; top: 0; background: rgba(0,0,0,0.5); position: fixed; cursor: pointer;}
div#globalMenu ul.menuList{font-size: 2.6rem; text-align: left; padding: 120px 0 120px 100px;}
div#globalMenu ul.menuList li{padding: 0 0 15px; opacity: 0; transform: translateX(20px);}
div#globalMenu ul.menuList li.sns{padding-top: 10px;}
div#globalMenu ul.menuList li a{color: #727171; text-decoration: none;}
div#globalMenu ul.menuList li:nth-child(1){transition: all 0.2s ease;}
div#globalMenu ul.menuList li:nth-child(2){transition: all 0.2s ease 0.05s;}
div#globalMenu ul.menuList li:nth-child(3){transition: all 0.2s ease 0.1s;}
div#globalMenu ul.menuList li:nth-child(4){transition: all 0.2s ease 0.15s;}
div#globalMenu ul.menuList li:nth-child(5){transition: all 0.2s ease 0.2s;}
div#globalMenu ul.menuList li:nth-child(6){transition: all 0.2s ease 0.25s;}
div#globalMenu ul.menuList li:nth-child(7){transition: all 0.2s ease 0.3s;}
div#globalMenu ul.menuList li:nth-child(8){transition: all 0.2s ease 0.35s;}
div#globalMenu ul.menuList li:nth-child(9){transition: all 0.2s ease 0.4s;}
div#globalMenu ul.menuList li:nth-child(10){transition: all 0.2s ease 0.45s;}
div#globalMenu ul.menuList li:nth-child(11){transition: all 0.2s ease 0.5s;}
div#globalMenu ul.menuList li:nth-child(12){transition: all 0.2s ease 0.55s;}
div#globalMenu ul.menuList li:nth-child(13){transition: all 0.2s ease 0.6s;}
div#globalMenu ul.menuList li:nth-child(14){transition: all 0.2s ease 0.65s;}
div#globalMenu ul.menuList li:nth-child(15){transition: all 0.2s ease 0.7s;}
div#globalMenu.on ul.menuList li{opacity: 1; transform: translateX(0);}

div#langMenu{position: fixed; width: 100%; height: 100%; z-index: 2050; left: 0; top: 0; overflow: hidden; overflow-y: auto; opacity: 0; visibility: hidden; transition: opacity 0.2s ease, visibility 0.2s ease;}
div#langMenu.on{opacity: 1; visibility: visible;}
div#langMenu div.inner{width: 130px; right: 0; top: 70px; background: #009574; position: absolute; text-align: left; display: none;}
div#langMenu div.inner ul{font-size: 1.6rem; line-height: 1.8; padding-bottom: 25px}
div#langMenu div.inner ul a{color: #FFF;}
div#langMenu div.inner ul li{opacity: 0.7; padding: 0 25px;}
div#langMenu div.inner ul li.current{font-weight: bold; opacity: 1;}
div#langMenu div.bg{width: 100%; height: 100%; right: 0; top: 0; background: rgba(0,0,0,0); position: fixed; cursor: pointer;}

button#bookingBtn{background: #fcc800; position: fixed; right: 0; bottom: 0; z-index: 2010; color: #000; font-size: 2.2rem; padding: 12px 32px;}

div#bookingLinkMenu{position: fixed; width: 100%; padding: 80px 0; height: calc(100% - 160px); z-index: 2050; left: 0; top: 0; overflow: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s ease; background: rgba(255,255,255,0.93);}
div#bookingLinkMenu.on{opacity: 1; visibility: visible;}
div#bookingLinkMenu div.inner{display: flex; min-height: 100%; justify-content: center; flex-wrap: wrap; align-items: center; align-content: center;}
div#bookingLinkMenu p.title{width: 100%; color: #727171; font-size: 3.3rem; padding: 0 0 80px;}
div#bookingLinkMenu ul.hotelList{width: 100%; font-size: 3.0rem;}
div#bookingLinkMenu ul.hotelList a{color: #727171; text-decoration: underline;}
div#bookingLinkMenu ul.hotelList span{color: #727171; opacity: 0.5;}
div#bookingLinkMenu ul.hotelList li{padding: 0 0 30px; opacity: 0; transform: translateY(20px);}
div#bookingLinkMenu ul.hotelList li:nth-child(1){transition: all 0.3s ease;}
div#bookingLinkMenu ul.hotelList li:nth-child(2){transition: all 0.3s ease 0.05s;}
div#bookingLinkMenu ul.hotelList li:nth-child(3){transition: all 0.3s ease 0.1s;}
div#bookingLinkMenu ul.hotelList li:nth-child(4){transition: all 0.3s ease 0.15s;}
div#bookingLinkMenu ul.hotelList li:nth-child(5){transition: all 0.3s ease 0.2s;}
div#bookingLinkMenu ul.hotelList li:nth-child(6){transition: all 0.3s ease 0.25s;}
div#bookingLinkMenu ul.hotelList li:nth-child(7){transition: all 0.3s ease 0.3s;}
div#bookingLinkMenu ul.hotelList li:nth-child(8){transition: all 0.3s ease 0.35s;}
div#bookingLinkMenu ul.hotelList li:nth-child(9){transition: all 0.3s ease 0.4s;}
div#bookingLinkMenu ul.hotelList li:nth-child(10){transition: all 0.3s ease 0.45s;}
div#bookingLinkMenu ul.hotelList li:nth-child(11){transition: all 0.3s ease 0.5s;}
div#bookingLinkMenu ul.hotelList li:nth-child(12){transition: all 0.3s ease 0.55s;}
div#bookingLinkMenu ul.hotelList li:nth-child(13){transition: all 0.3s ease 0.6s;}
div#bookingLinkMenu ul.hotelList li:nth-child(14){transition: all 0.3s ease 0.65s;}
div#bookingLinkMenu ul.hotelList li:nth-child(15){transition: all 0.3s ease 0.7s;}
div#bookingLinkMenu.on ul.hotelList li{opacity: 1; transform: translateY(0);}
div#bookingLinkMenu button.closeBtn{position: absolute; width: 100px; height: 100px; right: 0; top: 0; z-index: 2010; background: none;}
div#bookingLinkMenu button.closeBtn span{display: block; position: absolute; width: 46px; left: 27px; border-top: 2px solid #727171; transition: all 0.2s ease;}
div#bookingLinkMenu button.closeBtn span.line1{top: 50px; transform: rotate(45deg);}
div#bookingLinkMenu button.closeBtn span.line2{top: 50px; transform: rotate(-45deg);}

div#bookingMenu{position: fixed; width: 100%; height: 100%; z-index: 2050; left: 0; top: 0; overflow: hidden; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s ease;}
div#bookingMenu.on{opacity: 1; visibility: visible;}
div#bookingMenu div.bg{width: 100%; height: 100%; right: 0; top: 0; background: rgba(0,0,0,0.5); position: fixed; cursor: pointer;}
div#bookingMenu div.inner{width: 100%; left: 0; bottom: -170px; padding: 50px 0; background: #FFF; position: absolute; transition: bottom 0.3s ease; text-align: left;}
div#bookingMenu.on div.inner{bottom: 0;}
div#bookingMenu button.closeBtn{position: absolute; width: 70px; height: 70px; right: 0; top: 0; z-index: 2010; background: none;}
div#bookingMenu button.closeBtn span{display: block; position: absolute; width: 30px; left: 20px; border-top: 2px solid #727171; transition: all 0.2s ease;}
div#bookingMenu button.closeBtn span.line1{top: 35px; transform: rotate(45deg);}
div#bookingMenu button.closeBtn span.line2{top: 35px; transform: rotate(-45deg);}
div#bookingMenu form{display: flex; width: 100%; justify-content: center; vertical-align: center; align-items: center;}
div#bookingMenu form input, div#bookingMenu form select, div#bookingMenu span{color: #727171; font-size: 1.5rem;}
div#bookingMenu form input, div#bookingMenu form select{cursor: pointer;}
div#bookingMenu div.datepicker{padding: 0 0 0 5px;}
div#bookingMenu div.datepicker input{}
div#bookingMenu div.num{padding: 0 20px 0 15px;}
div#bookingMenu div.num_sp {}
div#bookingMenu div.submit{padding: 0;}
div#bookingMenu div.submit button{line-height: 45px; display: inline-block; padding: 0 50px; border-radius: 7px; background: #009574; font-size: 1.7rem; font-weight: bold; color: #FFF;}
div#bookingMenu div.submit button_en{line-height: 45px; display: block; padding: 0 50px; border-radius: 7px; background: #009574; font-size: 1.7rem; font-weight: bold; color: #FFF;}
div#bookingMenu span.search_label {
    font-weight: bold;
}

/* Content */

div.wrap{overflow: hidden; width: 100%;}

div.content{}
div.content.commonPage{padding: 80px 0 120px; width: 90%; max-width: 1200px; margin: 0 auto;}
div.content.commonPage h1{color: #727171; padding: 0 0 65px;}
div.content.commonPage h1 span.en{font-size: 4.6rem;}
div.content.commonPage h1 span.ja{font-size: 2.7rem;}
div.content.commonPage .timesale{padding-bottom: 3rem}
div.content.commonPage .timesale a{text-decoration:underline; color: #009574}

div.content div.faqWrap{text-align: left; padding: 0 0 45px;}
div.content div.faqWrap h2{font-size: 2.4rem; color: #727171; font-weight: bold; padding: 0 0 30px;}
div.content div.faqWrap div.block{background: #dfe1e7; margin: 0 0 20px; position: relative;}
div.content div.faqWrap div.block::before{content: ""; border-top: 2px solid #009574; width: 34px; position: absolute; right: 30px; top: 43px; transition: transform 0.2s ease;}
div.content div.faqWrap div.block::after{content: ""; border-right: 2px solid #009574; height: 34px; position: absolute; right: 46px; top: 28px; transition: transform 0.2s ease;}
div.content div.faqWrap div.block.on::before{transform: rotate(45deg);}
div.content div.faqWrap div.block.on::after{transform: rotate(45deg);}
div.content div.faqWrap div.f{padding: 30px 100px; cursor: pointer; position: relative;}
div.content div.faqWrap div.f::before{content: "Q"; font-family: "Carnas-Light", sans-serif; font-weight: 300; color: #009574; font-size: 4.5rem; line-height: 1; position: absolute; left: 30px; top: 20px; width: 50px; text-align: center;}
div.content div.faqWrap div.f h3{font-size: 1.7rem; font-weight: bold;}
div.content div.faqWrap div.a{padding: 10px 50px 5px 100px; position: relative; display: none;}
div.content div.faqWrap div.a::before{content: "A"; font-family: "Carnas-Light", sans-serif; font-weight: 300; color: #009574; font-size: 4.5rem; line-height: 1; position: absolute; left: 30px; top: 0; width: 50px; text-align: center;}
div.content div.faqWrap div.a p{padding: 0 0 25px;}
div.content div.faqWrap a{text-decoration: underline;}
div.content div.faqWrap a:hover{color: #009574;}

div.content div.faqContact{}
div.content div.faqContact p{color: #727171; font-size: 2.1rem; line-height: 2.0; padding: 30px 0; font-weight: bold;}

div.content div.newsArchiveWrap{display: flex; flex-wrap: wrap;}
div.content div.newsArchiveWrap div.block{width: calc(25% - 8px); margin: 0 0 10px;}
div.content div.newsArchiveWrap div.block:nth-child(4n){margin: 0 0 10px;}
div.content div.newsArchiveWrap div.block + div.block{margin-left: 10px;}
div.content div.newsArchiveWrap div.block + div.block:nth-child(4n+1){margin-left: 0;}
/*div.content div.newsArchiveWrap.top div.block + div.block:nth-child(4n+1){margin-left: 10px;}*/
div.content div.newsArchiveWrap img{width: 100%; height: 100%;}
div.content div.newsArchiveWrap a{display: block; height: 100%; text-align: left; background: #dfe1e7; transition: color 0.2s ease, background 0.2s ease; }
div.content div.newsArchiveWrap a:hover{color: #FFF; background: #009574;}
div.content div.newsArchiveWrap a p.img{background: #FFF; padding: 0 0 10px; transition: padding 0.2s ease, background 0.2s ease;}
div.content div.newsArchiveWrap a:hover p.img{padding: 10px 0 0; background: #009574;}
div.content div.newsArchiveWrap a p.date{padding: 20px 20px 0; font-size: 1.5rem;}
div.content div.newsArchiveWrap a h2{padding: 5px 20px 25px; font-size: 1.6rem; font-weight: normal;}

div.content.newsSingle{padding: 170px 0 120px; width: 650px; margin: 0 auto; text-align: left;}
div.content.newsSingle p.date{font-size: 1.5rem; padding: 0 0 5px; color: #727171;}
div.content.newsSingle p.thumb{padding: 0 0 70px; text-align: center}
div.content.newsSingle p.btnBack{font-size: 2.3rem; text-align: center;}
div.content.newsSingle p.btnBack a{color: #009574; border: 1px solid #009574; border-radius: 7px; line-height: 45px; display: inline-block; padding: 0 60px;}
div.content.newsSingle h1{font-size: 1.6rem; padding: 0 0 80px; color: #727171; font-weight: bold;}
div.content.newsSingle div.main{padding: 0 0 70px;}
div.content.newsSingle div.main p{padding: 0 0 30px;}
div.content.newsSingle div.main a{text-decoration: underline;}
div.content.newsSingle div.main .price-list .btn a{text-decoration: none;}
div.content.newsSingle div.main a:hover{color: #009574;}
div.content.newsSingle div.main ul {margin-bottom: 30px;}
div.content.newsSingle div.main ul li {padding-left:1em; text-indent:-1em; font-size: 15px;}
div.content.newsSingle div.main .price-list li{ text-indent:0; }


div.content div.planArchiveWrap{display: flex; flex-wrap: wrap;}
div.content div.planArchiveWrap div.block{width: calc(32%); margin: 0 auto 20px 0; box-shadow: 0px 3px 2px 0px rgb(0 0 0 / 16%); padding-bottom: 10px; height: auto;}
/*div.content div.planArchiveWrap div.block:nth-child(3n){margin: 0 0 10px 0;}*/
div.content div.planArchiveWrap img{width: 100%; height: 100%;}
/*div.content div.planArchiveWrap a{display: block; height: 100%; text-align: left; background: #dfe1e7; transition: color 0.2s ease, background 0.2s ease; }*/
/*div.content div.planArchiveWrap a:hover{color: #FFF; background: #009574;}*/
div.content div.planArchiveWrap p.img{background: #FFF; transition: padding 0.2s ease, background 0.2s ease;}
/*div.content div.planArchiveWrap a:hover p.img{padding: 10px 0 0; background: #009574;}*/
div.content div.planArchiveWrap p.date{padding: 20px 20px 0; font-size: 1.5rem;}
div.content div.planArchiveWrap h2{padding: 16px; font-size: 1.6rem; text-align: left; color: #727171;}
div.content div.planArchiveWrap p.btnBack{margin: 70px auto; font-size: 2.3rem; text-align: center;}
div.content div.planArchiveWrap p.btnBack a{color: #009574; border: 1px solid #009574; border-radius: 7px; line-height: 45px; display: inline-block; padding: 0 40px;}

div.content div.planArchiveWrap .bottom {
  position: relative;
}

div.content div.planArchiveWrap .desc {
  font-size: 14px;
  line-height: 1.43;
  margin-bottom: 10px;
	padding: 0 16px;
	text-align: left;
}
div.content div.planArchiveWrap .desc span {
  font-size: 12px;
}


.price-list {
  margin: auto 16px 0;
	vertical-align: middle;	
}

.price-list .member {
  float: left;
}

.price-list ul {
  display: block;
  vertical-align: bottom;
  flex-direction: column;
	width:100%;
}

.price-list li {
  background-color: #dfe1e7;
/*  display: block;*/
  height: 40px;
  line-height: 1.3em;
  margin-bottom: 5px;
    padding: 7px 10px;
}
.price-list .wrap {
  /*
	max-width: 400px;*/
	width: 200px;
	float: left;
	vertical-align: middle;
	padding-top: 10px;
}

.price-list li > div {
  display: inline-block;
  vertical-align: middle;
}

.price-list .member {
/*  padding-right: 10px;*/
  width: 87px;
}
.price-list .meal,
.price-list .stan {
  float: left;
  padding-right: 0;
}
.price-list .member span {
  background-color: #646464;
  color: #fff;
  display: block;
  font-size: 11px;
  height: 18px;
  line-height: 18px;
  text-align: center;
  width: 77px;
}
.price-list .meal {
  padding-right: 12px;
}

.price-list .meal span {
  background-color: #fff;
  color: #000;
  display: block;
  font-size: 11px;
  height: 18px;
  line-height: 18px;
  text-align: center;
  width: 84px;
}

.price-list .meal span:before {
  content: '\f0f5';
  color: #525252;
  font-family: Fontawesome;
  padding-right: 10px;
}

.price-list .stan {
  padding-right: 12px;
}

.price-list .stan span {
  background-color: #fff;
  color: #000;
  display: block;
  font-size: 11px;
  height: 18px;
  line-height: 18px;
  text-align: center;
  width: 84px;
}


.price-list .name p {
  font-size: 13px;
  width:180px;
  float: left;
}
.price-list .name p {
  clear: both;
  padding-top: 5px;
  width: auto;
}
.price-list .price {
  float: left;
  font-size: 15px;
/*  padding-right: 8px;*/
  text-align: left;
  color: #333333;
/*  width: 75%;*/
  line-height: 40px;
}

.price-list .btn {
	float: right;
}

.price-list .btn a {
  background: #009574;
  color: #fff;
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  height: 30px;
  line-height: 30px;
  text-align: center;
  text-decoration: none;
  width: auto;
  padding: 5px 10px;

}

.price-list .btn a:hover {
  opacity: .7;
}

/*.price-list li > div {
    display: table-cell;
    vertical-align: middle;
}*/

/*.price-list li > div {
    display: block;
    float: left;
  }*/








/* Top */
div.topKVWrap{height: 100vh; min-height: 600px; max-height: 1200px; position: relative; overflow: hidden;}
div.topKVWrap ul.sldList{position: absolute; width: 100%; height: 100%; left: 0; top: 0;}
div.topKVWrap ul.sldList li{position: absolute; width: 100%; height: 100%; left: 0; top: 0; opacity: 0; transition: opacity 1.0s ease; background-position: center center; background-size: cover; background-repeat: no-repeat;}
div.topKVWrap ul.sldList li.on{opacity: 1;}
div.topKVWrap ul.sldList li.sld1{background-image: url(/psi/img/top/sld1.jpg);}
div.topKVWrap ul.sldList li.sld2{background-image: url(/psi/img/top/sld2.jpg);}
div.topKVWrap ul.sldList li.sld3{background-image: url(/psi/img/top/sld3.jpg);}
div.topKVWrap p.cover{background: url(/psi/img/top/kv_cover.png) no-repeat center center; background-size: cover; position: absolute; width: 100%; height: 100%; left: 0; top: 0;}
div.topKVWrap h1{position: absolute; width: 200px; height: 110px; right: 12.5%; top: 0; bottom: 0; margin: auto 0;}

@media screen and (max-width: 1099px){
    div.topKVWrap h1{right: 8%; height: 190px;}
}

div.content div.topIntroBlock{padding: 90px 0 100px;}
div.content div.topIntroBlock h2{font-size: 5.5rem; color: #009574; padding: 0 0 60px;}
div.content div.topIntroBlock p{font-size: 2.1rem; line-height: 2.0; color: #009574; font-weight: bold;}

div.content div.topLeadBlock{background: #bec3cd; padding: 95px 7.5% 100px; text-align: left;}
div.content div.topLeadBlock div.inner{display: flex; justify-content: center;}
div.content div.topLeadBlock p{font-size: 2.1rem; line-height: 2; color: #FFF;}
div.content div.topMiddleSld{position: relative;}
div.content div.topMiddleSld img{width: 100%; height: auto;}
div.content div.topMiddleSld ul.imgList{position: absolute; width: 100%; left: 0; top: 0;}
div.content div.topMiddleSld ul.imgList li{position: absolute; width: 100%; left: 0; top: 0; opacity: 0; transition: opacity 1.0s ease;}
div.content div.topMiddleSld ul.imgList li.on{opacity: 1;}

div.slick-list{padding: 0!important;}
div.slick-track{_zoom: 1; overflow: hidden;}

div.content div.featureWrap{padding: 10px 0 0px; width: 85%; max-width: 1300px; margin: 0 auto; text-align: left;}
div.content div.featureWrap div.block{padding: 100px 0 150px;}
div.content div.featureWrap h2{padding: 0 0 45px;}
div.content div.featureWrap h2 span.en{display: block; font-size: 4.5rem; color: #009574; line-height: 1.5;}
div.content div.featureWrap h2 span.ja{display: block; font-size: 2.2rem; color: #727171; padding: 20px 0 0;}
div.content div.featureWrap p{font-size: 1.6rem; line-height: 2; color: #727171;}
div.content div.featureWrap p.link{padding: 25px 0 0;}
div.content div.featureWrap p a{color: #727171; text-decoration: underline;}
div.content div.featureWrap p a:hover{color: #009574;}
div.content div.featureWrap p span.list{font-size: 1.4rem; line-height: 1.5;display: inline-block;text-indent: -2.5em;padding-left: 2.5em}
div.content div.featureWrap ul.appList{padding: 50px 0 0;}
div.content div.featureWrap ul.appList li{display: inline-block; padding: 0 0 0 10px;}
div.content div.featureWrap ul.iconList{display: flex; padding: 0 0 55px;}
div.content div.featureWrap ul.iconList li{text-align: center;}
div.content div.featureWrap ul.iconList p.img{padding: 0 0 25px;}
div.content div.featureWrap ul.iconList p.title{font-weight: bold;}
div.content div.featureWrap ul.iconList p.num{font-size: 3.1rem; color: #009574; padding: 0 0 10px;}
div.content div.featureWrap ul.hotelList{font-size: 3.8rem;}
div.content div.featureWrap ul.hotelList li{padding: 0 0 15px;}
div.content div.featureWrap ul.hotelList a{color: #009574; text-decoration: underline;}
div.content div.featureWrap ul.hotelList a:hover{}
div.content div.featureWrap ul.hotelList span{color: #009574; opacity: 0.5;}
div.content div.featureWrap div.block:nth-child(odd){text-align: right;}
div.content div.featureWrap div.block:nth-child(odd) ul.iconList{justify-content: flex-end;}
div.content div.featureWrap div.block:nth-child(odd) ul.iconList li{padding: 0 0 0 100px;}

/* Property */
div.proBase{position: fixed; left: 0; top: 0; width: 100%; height: 100%; background: #111;}
div.proBase ul.sldList{position: absolute; left: 0; top: 0; width: 100%; height: 100%; transition: opacity 0.5s ease;}
div.proBase ul.sldList.scroll{opacity: 0.5;}
div.proBase ul.sldList li{position: absolute; left: 0; top: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 1.0s ease; background: no-repeat center center; background-size: cover;}
div.proBase ul.sldList li.on{opacity: 1;}
div.proBase ul.sldList.ebisu li.sld1{background-image: url(/psi/img/ebisu/sld1.jpg);}
div.proBase ul.sldList.ebisu li.sld2{background-image: url(/psi/img/ebisu/sld2.jpg);}
div.proBase ul.sldList.ebisu li.sld3{background-image: url(/psi/img/ebisu/sld3.jpg);}
div.proBase ul.sldList.ebisu li.sld4{background-image: url(/psi/img/ebisu/sld4.jpg);}
div.proBase ul.sldList.ebisu li.sld5{background-image: url(/psi/img/ebisu/sld5.jpg);}
div.proBase ul.sldList.ebisu li.sld6{background-image: url(/psi/img/ebisu/sld6.jpg);}

div.content.property{position: relative; z-index: 2;}
div.content.property p,
div.content.property h2,
div.content.property li,
div.content.property a{color: #FFF;}

div.topKVWrap h1.property{width: 240px; height: 160px; right: 0; left: 0; margin: auto;}
div.content.property div.topKVWrap{max-height: inherit;}

div.content div.proIntroBlock{padding: 90px 0 100px; background: #FFF;}
div.content div.proIntroBlock h2{font-size: 5.5rem; padding: 0 0 60px; color: #009574;}
div.content div.proIntroBlock p{font-size: 2.2rem; line-height: 2.0; font-weight: bold; color: #009574;}
div.content div.proIntroBlock p + p{padding: 1.2em 0 0;}

div.content div.proSlickWrap{padding: 0; margin: 0 auto; /*width: calc(100% - 60px); max-width: 1600px;*/}
div.content div.proSlickWrap div.block{padding: 100px 0 0;}
div.content div.proSlickWrap div.block:nth-child(odd){text-align: right;}
div.content div.proSlickWrap div.block:nth-child(even){text-align: left;}
div.content div.proSlickWrap div.block:last-child{padding: 100px 0;}
div.content div.proSlickWrap h2,
div.content div.proSlickWrap p.lead{width: 85%; max-width: 1300px; margin: 0 auto;}
div.content div.proSlickWrap h2{padding: 0 0 30px;}
div.content div.proSlickWrap h2 span.en{display: block; font-size: 4.5rem; line-height: 1.5;}
div.content div.proSlickWrap h2 span.ja{display: block; font-size: 2.2rem; padding: 10px 0 0;}
div.content div.proSlickWrap p.lead{font-size: 1.6rem; line-height: 2.0; padding: 0 0 60px;}
div.content div.proSlickWrap div.slickMain{_zoom: 1; overflow: hidden; position: relative;}
div.content div.proSlickWrap div.section{float: left; position: relative;}
div.content div.proSlickWrap div.section img{width: 100%; height: auto;}
div.content div.proSlickWrap div.section p.caption{text-align: right; position: absolute; right: 25px; bottom: 15px; font-size: 1.6rem;}
div.content div.proSlickWrap ul.slick-dots{position: absolute; height: 9px; width: 100%; left: 0; bottom: 25px; text-align: center; display: flex; justify-content: center;}
div.content div.proSlickWrap ul.slick-dots li{margin: 0 5px; vertical-align: top; opacity: 0.5;}
div.content div.proSlickWrap ul.slick-dots li.slick-active{opacity: 1;}
div.content div.proSlickWrap ul.slick-dots li button{width: 9px; height: 9px; background: #FFF; text-indent: -999px; overflow: hidden; border-radius: 4.5px; vertical-align: top;}

div.content div.propertyNewsWrap{background: #FFF; padding: 100px 0; margin: 0 0 100px;}
div.content div.propertyNewsWrap div.inner{width: 85%; max-width: 1300px; margin: 0 auto;}
div.content div.propertyNewsWrap h2.title{padding: 0 0 50px; text-align: right; color: #727171;}
div.content div.propertyNewsWrap h2 span.en{display: block; font-size: 4.5rem; line-height: 1.5;}
div.content div.propertyNewsWrap h2 span.ja{display: block; font-size: 2.5rem; padding: 10px 0 0;}
div.content div.propertyNewsWrap div.newsArchiveWrap a p,
div.content div.propertyNewsWrap div.newsArchiveWrap a h2{color: #231815;}
div.content div.propertyNewsWrap div.newsArchiveWrap a:hover p,
div.content div.propertyNewsWrap div.newsArchiveWrap a:hover h2{color: #FFF;}

div.content div.featureWrap.property h2 span.en{color: #FFF;}
div.content div.featureWrap.property h2 span.ja{color: #FFF;}
div.content div.featureWrap.property p{color: #FFF;}
div.content div.featureWrap.property p a{color: #FFF; text-decoration: underline;}
div.content div.featureWrap.property p a:hover{color: #DDD;}
div.content div.featureWrap.property ul.iconList p.num{color: #FFF;}
div.content div.featureWrap.property ul.appList li{padding: 0 10px 0 0;}
div.content div.featureWrap.property div.block:nth-child(even){text-align: right;}
div.content div.featureWrap.property div.block:nth-child(even) ul.iconList{justify-content: flex-end;}
div.content div.featureWrap.property div.block:nth-child(even) ul.iconList li{padding: 0 0 0 100px;}
div.content div.featureWrap.property div.block:nth-child(odd){text-align: left;}
div.content div.featureWrap.property div.block:nth-child(odd) ul.iconList{justify-content: flex-start;}
div.content div.featureWrap.property div.block:nth-child(odd) ul.iconList li{padding: 0 100px 0 0;}
div.content div.featureWrap.property div.toggleBox{display: none; margin: 0 0 60px;}
div.content div.featureWrap.property iframe{width: 100%; margin: 0 0 40px;}

div.content p.btnToggle{font-size: 2.3rem; text-align: left;}
div.content p.btnToggle.right{text-align: right;}
div.content p.btnToggle span{border: 1px solid #FFF; border-radius: 7px; line-height: 45px; display: inline-block; padding: 0 60px; cursor: pointer;}
div.content p.btnToggle span.close{display: none;}
div.content p.btnToggle.open span.open{display: none;}
div.content p.btnToggle.open span.close{display: inline-block;}
div.content p.btnNewsMore{font-size: 2.3rem; text-align: right; padding: 50px 0 0;}
div.content p.btnNewsMore a{color: #727171; border: 1px solid #727171; border-radius: 7px; line-height: 45px; display: inline-block; padding: 0 60px;}

div.content h2.white{padding: 0 0 60px; text-align: center; color: #FFF;}
div.content h2.white span.en{display: block; font-size: 4.5rem; line-height: 1.5;}
div.content h2.white span.ja{display: block; font-size: 2.5rem; padding: 20px 0 0;}
div.content div.proFAQ{padding: 100px 0 110px; background: #009574;}
div.content p.btnFAQMore{font-size: 2.3rem; text-align: center; padding: 0;}
div.content p.btnFAQMore a{color: #FFF; border: 1px solid #FFF; border-radius: 7px; line-height: 45px; display: inline-block; padding: 0 60px;}

div.content h2.plawhite{padding: 0 0 30px; text-align: center; color: #FFF;}
div.content h2.plawhite span.en{display: block; font-size: 4.5rem; line-height: 1.5;}
div.content h2.plawhite span.ja{display: block; font-size: 2.2rem; padding: 10px 0 0;}
div.content div.proPLAN{padding: 100px 0 110px; background: #009574;}
div.content p.btnPLANMore{font-size: 2.3rem; text-align: center; padding: 0;}
div.content p.btnPLANMore a{color: #FFF; border: 1px solid #FFF; border-radius: 7px; line-height: 45px; display: inline-block; padding: 0 60px;}

div.content div.proLocations{padding: 100px 0 110px;}
div.content div.proLocations ul.hotelList{font-size: 3.8rem;}
div.content div.proLocations ul.hotelList li{padding: 0 0 15px;}
div.content div.proLocations ul.hotelList a{text-decoration: underline;}
div.content div.proLocations ul.hotelList a:hover{}
div.content div.proLocations ul.hotelList span{opacity: 0.5;}

/* Footer */

footer.mainFooter{position: relative; z-index: 2;}
footer.mainFooter p.logo{padding: 0 0 50px;}
footer.mainFooter p.copyright{font-size: 1.1rem; color: #FFF; background: #bec3cd; padding: 20px 0;}
footer.mainFooter ul.menuList{padding: 0 0 50px; width: 90%; max-width: 1000px; margin: 0 auto;}
footer.mainFooter ul.menuList li{display: inline-block; font-size: 1.4rem; line-height: 2; font-weight: bold; color: #727171; padding: 0 22px 5px 20px; position: relative;}
footer.mainFooter ul.menuList li::after{border-right: 1px solid #727171; content: ""; right: 0; top: 7px; position: absolute; height: 15px;}
footer.mainFooter ul.menuList li a{color: #727171;}
footer.mainFooter ul.menuList li a:hover{text-decoration: underline;}
footer.mainFooter ul.menuList.property li a{color: #FFF;}
footer.mainFooter ul.menuList.property li::after{border-color: rgba(255,255,255,0.8);}

/* Loading */
div#load{position: fixed; width: 100%; height: 100%; left: 0; top: 0; background: #FFF; z-index: 1000; display: flex; justify-content: center; align-content: center; align-items: center;}
div#load img{animation: loadMark 5.0s ease;}

*.hidden{opacity: 0; transition: opacity 0.5s ease;}
*.hidden.show{opacity: 1;}

@keyframes loadMark{
    0% {opacity: 0; transform: scale(1);}
    20% {opacity: 1;}
    100% {opacity: 1;transform: scale(1);}
}

/* ::::::::::::::::::::::::::::::::: PC ::::::::::::::::::::::::::::::::: */
@media screen and (min-width: 900px){
    .sp{display:none!important;}
    
    .hoverAlpha{transition: opacity 0.2s ease;}
    .hoverAlpha:hover{opacity: 0.8;}
}

/* ::::::::::::::::::::::::::::::::: SP ::::::::::::::::::::::::::::::::: */
@media screen and (max-width: 899px){
    .pc{display:none!important;}
	.price-list {margin: auto 0 0}
.price-list .wrap {
  max-width: 200px;
}
.price-list .member {
    margin-right: 5px;
    width: 84px;
  }

.price-list .member span {
    font-size: 10px;
    width: 84px;
  }
.price-list .name {
    font-size: 12px;
    padding-top: 2px;
  }
/*.price-list .btn a {
	width: 20%;
	}*/

    /* ::::::::::::::::::::::::::::::::: COMMON ::::::::::::::::::::::::::::::::: */

    /* Header */

    header.mainHeader{}
    header.mainHeader div.inner{height: 60px;}
    header.mainHeader p.siteTitle{padding: 18px 121px 0;}
    header.mainHeader p.siteTitle a{vertical-align: middle;}
    header.mainHeader p.siteTitle img{width: 100%; max-width: 190px; height: auto; vertical-align: middle;}

    header.mainHeader.index{top: -60px; transition: top 0.4s ease;}
    header.mainHeader.index.on{}

    button#commonBtn{width: 60px; height: 60px;}
    button#commonBtn span{width: 30px; left: 15px;}
    button#commonBtn span.line1{top: 22px;}
    button#commonBtn span.line2{top: 30px;}
    button#commonBtn span.line3{top: 38px;}
    button#commonBtn.on{}
    button#commonBtn.on span{}
    button#commonBtn.on span.line1{top: 30px;}
    button#commonBtn.on span.line2{}
    button#commonBtn.on span.line3{top: 30px;}
    button#langBtn{width: 60px; height: 60px; font-size: 1.1rem; letter-spacing: -0.02em; text-align: center;}
    button#langBtn span{padding: 0 0 12px; transition: padding 0.2s ease;}
    button#langBtn span::after{content: ""; width: 8px; height: 8px; left: 0; right: 0; top: inherit; bottom: 0; margin: 0 auto;}
    button#langBtn.on{}
    button#langBtn.on span{padding: 0 0 17px;}
    button#langBtn.on span::after{transform: rotate(315deg);}
	
	button#mypage{width: 60px; height: 60px; font-size: 1.1rem; letter-spacing: -0.02em; text-align: center; margin-right: 61px;}
    button#mypage span{padding: 0 0 12px; transition: padding 0.2s ease;}


    div#globalMenu{}
    div#globalMenu.on{}
    div#globalMenu div.inner{width: 310px;}
    div#globalMenu div.bg{width: calc(100% - 310px);}
    div#globalMenu ul.menuList{font-size: 2.1rem; padding: 120px 0 70px 35px;}
    div#globalMenu ul.menuList li{transform: translateX(15px);}
    div#globalMenu ul.menuList li.sns{}
    div#globalMenu.on ul.menuList li{transform: translateX(0);}

    div#langMenu{}
    div#langMenu.on{}
    div#langMenu div.inner{width: 100%; top: 60px; text-align: center; padding: 10px 0;}
    div#langMenu div.inner ul{font-size: 1.4rem; padding-bottom: 0;}
    div#langMenu div.inner ul a{}
    div#langMenu div.inner ul li{display: inline-block; padding: 0;} 
    div#langMenu div.inner ul li + li{margin-left: 10px;}
    div#langMenu div.inner ul li.current{}
    div#langMenu div.bg{}

    button#bookingBtn{font-size: 2.0rem; padding: 15px 0; width: 100%;}
    
    div#bookingLinkMenu{padding: 80px 0 60px; height: calc(100% - 140px);}
    div#bookingLinkMenu.on{}
    div#bookingLinkMenu div.inner{}
    div#bookingLinkMenu p.title{font-size: 2.8rem; padding: 0 0 40px;}
    div#bookingLinkMenu ul.hotelList{font-size: 2.6rem;}
    div#bookingLinkMenu ul.hotelList a{}
    div#bookingLinkMenu ul.hotelList li{padding: 0 0 15px;}
    div#bookingLinkMenu.on ul.hotelList li{}
    div#bookingLinkMenu button.closeBtn{width: 70px; height: 70px;}
    div#bookingLinkMenu button.closeBtn span{width: 30px; left: 20px;}
    div#bookingLinkMenu button.closeBtn span.line1{top: 35px;}
    div#bookingLinkMenu button.closeBtn span.line2{top: 35px;}
    
    div#bookingMenu{}
    div#bookingMenu.on{}
    div#bookingMenu div.bg{}
    div#bookingMenu div.inner{padding: 50px 0 60px; bottom: -320px;}
    div#bookingMenu button.closeBtn{}
    div#bookingMenu button.closeBtn span{}
    div#bookingMenu button.closeBtn span.line1{}
    div#bookingMenu button.closeBtn span.line2{}
    div#bookingMenu form{width: calc(100% - 40px); flex-wrap: wrap; justify-content: flex-start; align-items: flex-start; align-content: flex-start; text-align: left; margin: 0 auto;}
    div#bookingMenu form input, div#bookingMenu form select, div#bookingMenu span{font-size: 1.5rem;}
    div#bookingMenu form input, div#bookingMenu form select{}
    div#bookingMenu div.datepicker{padding: 0 0 20px 15px; width: calc(100% - 50px);}
    div#bookingMenu div.datepicker input{}
    div#bookingMenu div.num{padding: 0 15px 20px;}
    div#bookingMenu div.num_sp{padding: 0 15px 20px 45px;}
    div#bookingMenu div.submit{padding: 0; width: 100%;}
    div#bookingMenu div.submit button{display: block; width: 100%; padding: 0 50px;}

    /* Content */

    div.wrap{}

    div.content{}
    div.content.commonPage{width: calc(100% - 40px);}
    div.content.commonPage h1{padding: 0 0 40px;}
    div.content.commonPage h1 span.en{font-size: 3.6rem; line-height: 1;}
    div.content.commonPage h1 span.ja{font-size: 1.9rem;}

    div.content div.faqWrap{padding: 0 0 40px;}
    div.content div.faqWrap h2{font-size: 2.1rem; padding: 0 0 25px;}
    div.content div.faqWrap div.block{}
    div.content div.faqWrap div.block::before{width: 28px; right: 20px; top: 43px;}
    div.content div.faqWrap div.block::after{height: 28px; right: 33px; top: 30px;}
    div.content div.faqWrap div.block.on::before{}
    div.content div.faqWrap div.block.on::after{}
    div.content div.faqWrap div.f{padding: 25px 65px 25px 60px;}
    div.content div.faqWrap div.f::before{font-size: 3.2rem; left: 10px; top: 25px; width: 40px;}
    div.content div.faqWrap div.f h3{font-size: 1.5rem; line-height: 1.8;}
    div.content div.faqWrap div.a{padding: 5px 20px 5px 60px;}
    div.content div.faqWrap div.a::before{font-size: 3.2rem; left: 10px; top: 0; width: 40px;}
    div.content div.faqWrap div.a p{}
    div.content div.faqWrap a{}
    div.content div.faqWrap a:hover{}

    div.content div.faqContact{}
    div.content div.faqContact p{font-size: 1.5rem; line-height: 2.0; padding: 30px 0;}

    div.content div.newsArchiveWrap{display: block;}
    div.content div.newsArchiveWrap div.block{width: 100%; margin: 0 0 5px;}
    div.content div.newsArchiveWrap div.block:nth-child(4n){margin: 0 0 5px;}
	div.content div.newsArchiveWrap div.block + div.block{margin-left: 0;}
    div.content div.newsArchiveWrap img{width: 100%; height: auto;}
    div.content div.newsArchiveWrap a{display: flex; height: auto;}
    div.content div.newsArchiveWrap a:hover{color: #231815; background: #FFF;}
    div.content div.newsArchiveWrap a p.img{width: 100px; padding: 0 5px 0 0; transition: padding 0.2s ease, background 0.2s ease;}
    div.content div.newsArchiveWrap a:hover p.img{padding: 0; background: none;}
    div.content div.newsArchiveWrap a div{width: calc(100% - 105px);}
    div.content div.newsArchiveWrap a p.date{padding: 20px 20px 0; font-size: 1.5rem;}
    div.content div.newsArchiveWrap a h2{padding: 5px 20px 20px; font-size: 1.5rem;}

    div.content.newsSingle{padding: 140px 0 60px; width: calc(100% - 40px);}
    div.content.newsSingle p.date{font-size: 1.5rem; padding: 0 0 10px;}
    div.content.newsSingle img{max-width: 100%; height: auto;}
    div.content.newsSingle p.thumb{padding: 0 0 60px;}
    div.content.newsSingle p.thumb img{margin: 0 auto; display: block;}
    div.content.newsSingle p.btnBack{font-size: 2.0rem;}
    div.content.newsSingle p.btnBack a{border-radius: 5px;}
    div.content.newsSingle h1{font-size: 2.1rem; padding: 0 0 40px; font-weight: bold;}
    div.content.newsSingle div.main{padding: 0 0 30px;}
    div.content.newsSingle div.main p{}
    div.content.newsSingle div.main a{}
    div.content.newsSingle div.main a:hover{}
	
	div.content div.planArchiveWrap{display: block;}
	div.content div.planArchiveWrap div.block{width: 100%; margin: 0 0 15px;}
    div.content div.planArchiveWrap div.block:nth-child(3n){margin: 0 0 5px;}
	div.content div.planArchiveWrap p.btnBack a{
		padding: 0 30px}
	
	div.content div.planArchiveWrap .desc {
    font-size: 13px;
  }
	  .price-list .btn a {
    background-size: 12px auto;
    font-size: 14px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    width: auto;
  }

  .price-list .price {
    float: left;
    text-align: left;
    line-height: 40px;
   font-size: 14px;
  }
	


    /* Top */
    div.content.index{position: relative; z-index: 2;}
    
    div.topKVWrap{height: auto; min-height: inherit; max-height: inherit; overflow: visible; margin: 0 0 70px;}
    div.topKVWrap ul.sldList{}
    div.topKVWrap ul.sldList li{width: 100%; height: auto; background: none!important;}
    div.topKVWrap ul.sldList li.on{}
    div.topKVWrap ul.sldList li img{width: 100%; height: auto;}
    div.topKVWrap p.cover{background: none; width: 100%; height: auto;}
    div.topKVWrap p.cover img{width: 100%; height: auto;}
    div.topKVWrap p.base img{width: 100%; height: auto; max-height: 800px;}
    div.topKVWrap h1{width: 120px; height: 60px; left: 20px; right: inherit; top: inherit; bottom: 4%;}
    div.topKVWrap h1 img{width: 120px; height: 60px;}

    div.content div.topIntroBlock{padding: 70px 20px 40px; text-align: left;}
    div.content div.topIntroBlock h2{font-size: 4.2rem; line-height: 1.4; padding: 0 0 20px;}
    div.content div.topIntroBlock p{font-size: 1.7rem; line-height: 2.0;}

    div.content div.topLeadBlock{background: none; padding: 0 20px 60px;}
    div.content div.topLeadBlock div.inner{display: block;}
    div.content div.topLeadBlock p{font-size: 1.7rem; line-height: 1.8; color: #727171;}
    div.content div.topMiddleSld{}
    div.content div.topMiddleSld img{}
    div.content div.topMiddleSld ul.imgList{}
    div.content div.topMiddleSld ul.imgList li{}
    div.content div.topMiddleSld ul.imgList li.on{}
    div.content div.topMiddleSld div.slick-list{}

    div.content div.featureWrap{padding: 0px; width: calc(100% - 40px);}
    div.content div.featureWrap div.block{padding: 70px 0 10px;}
    div.content div.featureWrap h2{padding: 0 0 30px;}
    div.content div.featureWrap h2 span.en{font-size: 2.8rem; line-height: 1.5;}
    div.content div.featureWrap h2 span.ja{font-size: 1.7rem; padding: 20px 0 0;}
    div.content div.featureWrap p{font-size: 1.5rem; line-height: 2;}
    div.content div.featureWrap ul.appList{padding: 40px 0 0;}
    div.content div.featureWrap ul.appList li{display: inline-block; padding: 0 0 0 10px;}
    div.content div.featureWrap ul.iconList{padding: 0 0 40px;}
    div.content div.featureWrap ul.iconList li{max-width: 150px;}
    div.content div.featureWrap ul.iconList p.img{padding: 0 0 25px;}
    div.content div.featureWrap ul.iconList img{max-width: 100%; height: auto;}
    div.content div.featureWrap ul.iconList p.title{font-size: 1.4rem;}
    div.content div.featureWrap ul.iconList p.num{font-size: 2.5rem;}
    div.content div.featureWrap ul.hotelList{font-size: 2.6rem; padding: 0 0 60px;}
    div.content div.featureWrap ul.hotelList li{}
    div.content div.featureWrap ul.hotelList a{}
    div.content div.featureWrap ul.hotelList a:hover{}
    div.content div.featureWrap div.block:nth-child(odd){}
    div.content div.featureWrap div.block:nth-child(odd) ul.iconList{}
    div.content div.featureWrap div.block:nth-child(odd) ul.iconList li{padding: 0 0 0 10px;}

    /* Property */
    div.proBase{}
    div.proBase ul.sldList{}
    div.proBase ul.sldList.scroll{}
    div.proBase ul.sldList li{}
    div.proBase ul.sldList li.on{}
    div.proBase ul.sldList.ebisu li.sld1{background-image: url(/psi/img/ebisu/sld1_sp.jpg);}
    div.proBase ul.sldList.ebisu li.sld2{background-image: url(/psi/img/ebisu/sld2_sp.jpg);}
    div.proBase ul.sldList.ebisu li.sld3{background-image: url(/psi/img/ebisu/sld3_sp.jpg);}
    div.proBase ul.sldList.ebisu li.sld4{background-image: url(/psi/img/ebisu/sld4_sp.jpg);}
    div.proBase ul.sldList.ebisu li.sld5{background-image: url(/psi/img/ebisu/sld5_sp.jpg);}
    div.proBase ul.sldList.ebisu li.sld6{background-image: url(/psi/img/ebisu/sld6_sp.jpg);}

    div.content.property{}
    div.content.property p,
    div.content.property h2,
    div.content.property li,
    div.content.property a{}
    

    div.topKVWrap h1.property{width: 180px; height: 120px; right: 0; left: 0; top: 0; bottom: 0; margin: auto;}
    div.topKVWrap h1.property img{width: 180px; height: 120px;}

    div.content div.proIntroBlock{padding: 70px 15px 80px; background: #FFF;}
    div.content div.proIntroBlock h2{font-size: 2.9rem; padding: 0 0 30px; color: #108f70;}
    div.content div.proIntroBlock p{font-size: 1.7rem; color: #108f70;}

    div.content div.proSlickWrap{padding: 0; width: 100%;}
    div.content div.proSlickWrap div.block{padding: 70px 0 0;}
    div.content div.proSlickWrap div.block:nth-child(odd){}
    div.content div.proSlickWrap div.block:nth-child(even){}
div.content div.proSlickWrap div.block:last-child{padding: 70px 0;}
    div.content div.proSlickWrap h2,
    div.content div.proSlickWrap p.lead{width: calc(100% - 40px);}
    div.content div.proSlickWrap h2{padding: 0 0 20px;}
    div.content div.proSlickWrap h2 span.en{font-size: 2.8rem;}
    div.content div.proSlickWrap h2 span.ja{font-size: 1.7rem;}
    div.content div.proSlickWrap p.lead{font-size: 1.5rem; padding: 0 0 40px;}
    div.content div.proSlickWrap div.slickMain{}
    div.content div.proSlickWrap div.section{}
    div.content div.proSlickWrap div.section img{}
    div.content div.proSlickWrap div.section p.caption{font-size: 1.4rem; bottom: 10px; right: 10px}
    div.content div.proSlickWrap ul.slick-dots{bottom: 15px; left: 10px; justify-content: flex-start;}
    div.content div.proSlickWrap ul.slick-dots li{margin: 0 3px; height: 7px;}
    div.content div.proSlickWrap ul.slick-dots li.slick-active{}
    div.content div.proSlickWrap ul.slick-dots li button{width: 7px; height: 7px; border-radius: 3.5px;}

    div.content div.propertyNewsWrap{padding: 70px 0; margin: 0 0 30px;}
    div.content div.propertyNewsWrap div.inner{width: calc(100% - 40px);}
    div.content div.propertyNewsWrap h2.title{padding: 0 0 40px; text-align: center;}
    div.content div.propertyNewsWrap h2 span.en{font-size: 2.8rem; line-height: 1.5;}
    div.content div.propertyNewsWrap h2 span.ja{font-size: 1.7rem; padding: 10px 0 0;}
    div.content div.propertyNewsWrap div.newsArchiveWrap a p,
    div.content div.propertyNewsWrap div.newsArchiveWrap a h2{}
    div.content div.propertyNewsWrap div.newsArchiveWrap a:hover p,
    div.content div.propertyNewsWrap div.newsArchiveWrap a:hover h2{}

    div.content div.featureWrap.property{padding: 0 0 70px;}
    div.content div.featureWrap.property h2 span.en{}
    div.content div.featureWrap.property h2 span.ja{}
    div.content div.featureWrap.property p{}
    div.content div.featureWrap.property ul.iconList p.num{color: #FFF;}
    div.content div.featureWrap.property ul.appList li{padding: 0 8px 0 0;}
    div.content div.featureWrap.property div.block:nth-child(even){}
    div.content div.featureWrap.property div.block:nth-child(even) ul.iconList{}
    div.content div.featureWrap.property div.block:nth-child(even) ul.iconList li{padding: 0 0 0 8px;}
    div.content div.featureWrap.property div.block:nth-child(odd){}
    div.content div.featureWrap.property div.block:nth-child(odd) ul.iconList{}
    div.content div.featureWrap.property div.block:nth-child(odd) ul.iconList li{padding: 0 8px 0 0;}
    div.content div.featureWrap.property div.toggleBox{display: none; margin: 0 0 40px;}
    div.content div.featureWrap.property iframe{width: 100%; margin: 0 0 30px;}

    div.content p.btnToggle{font-size: 2.0rem;}
    div.content p.btnToggle.right{}
    div.content p.btnToggle span{border-radius: 5px;}
    div.content p.btnToggle span.close{}
    div.content p.btnToggle.open span.open{}
    div.content p.btnToggle.open span.close{}
    div.content p.btnNewsMore{font-size: 2.0rem; text-align: center; padding: 50px 0 0;}
    div.content p.btnNewsMore a{border-radius: 5px;}

    div.content h2.white{padding: 0 0 40px;}
    div.content h2.white span.en{font-size: 2.8rem; padding: 0 0 10px;}
    div.content h2.white span.ja{font-size: 1.7rem;}
    div.content div.proFAQ{padding: 70px 0 80px;}
    div.content p.btnFAQMore{font-size: 2.0rem;}
    div.content p.btnFAQMore a{border-radius: 5px;}

    div.content h2.plawhite{padding: 0 0 40px;}
    div.content h2.plawhite span.en{font-size: 2.8rem; padding: 0 0 10px;}
    div.content h2.plawhite span.ja{font-size: 1.7rem;}
    div.content div.proPLAN{padding: 70px 0;}
    div.content p.btnPLANMore{font-size: 2.0rem;}
    div.content p.btnPLANMore a{border-radius: 5px;}
	
    div.content div.proLocations{padding: 70px 0 80px;}
    div.content div.proLocations ul.hotelList{font-size: 2.6rem;}
    div.content div.proLocations ul.hotelList li{}
    div.content div.proLocations ul.hotelList a:hover{}

    /* Footer */

    footer.mainFooter{}
    footer.mainFooter p.logo{}
    footer.mainFooter p.copyright{padding: 20px 0 70px;}
    footer.mainFooter ul.menuList{padding: 0; width: 100%;}
    footer.mainFooter ul.menuList li{font-size: 1.4rem; line-height: 2; padding: 17px 20px; text-align: left; display: block; border-top: 1px solid #EEE;}
    footer.mainFooter ul.menuList li::after{display: none;}
    footer.mainFooter ul.menuList li a{}
    footer.mainFooter ul.menuList li a:hover{}
    footer.mainFooter ul.menuList.property li{border-color: rgba(255,255,255,0.2);}
    footer.mainFooter ul.menuList.property li a{}
    footer.mainFooter ul.menuList.property li::after{}
    
    /* Loading */
    div#load{}
    div#load img{width: 180px; height: auto;}
	
}


.promo {
	color: #727171;
	max-width: 800px;
	margin: 0 auto;
	padding: 15px 0 0;
	text-align: right;
}
.promo a {
	text-decoration: underline;
}

@media screen and (max-width: 899px){
	.promo {
			padding: 20px 20px 0;
	}
	div#bookingMenu .bottom {padding: 0 15px 20px 45px;}
}
@media screen and (max-width: 432px){
    header.mainHeader p.siteTitle{padding: 18px 121px 0 60px;}
}



#locations{
	padding: 35px 0 45px;
	margin: 35px 0 45px;
}
#locations.top{
	background-color: #f7f7f7;
}


.topHotelList{
	width: 100%;
	box-sizing: border-box;
}
.topHotelList li{
	box-sizing: border-box;
	padding: .8em;
	background-color: #fff;
	box-shadow: 0px 3px 2px 0px rgba(0,0,0,0.16);
}
.topHotelList li + li{
	margin-top: 1em;
}
.topHotelList li .lyt-article-hotel{
	display: flex;
	justify-content: space-between;
	padding-bottom: .8em;
	border-bottom: 1px solid #e6e6e6;
}
.topHotelList li .lyt-article-hotel figure{
	width: 41%;
	line-height:0;
}
.topHotelList li .lyt-article-hotel figure img{
	width: 100%;
}
.topHotelList .lyt-article-hotel .lyt-hotel{
	width: 56.5%;
}
.topHotelList .lyt-article-hotel .lyt-hotel h3{
	font-size: 14px;
	line-height: 1.4;
	font-weight: normal;
}
.topHotelList .lyt-article-hotel .lyt-hotel h3 a{
	text-decoration: underline;
}
.topHotelList .lyt-article-hotel .lyt-hotel p{
	font-size: 11px;
	line-height: 1.5;    
	color: #6F6F6F;
	padding-top: .8em;
}

.topHotelList li .lyt-NavList{
	display: flex;
	justify-content: space-between;
	padding-top: .8em;
}
.topHotelList li .lyt-NavList nav{
	width: 66%;
}
.topHotelList.com li .lyt-NavList{
	display: block;
}
.topHotelList.com li .lyt-NavList nav{
	width: 100%;
}
.topHotelList li .lyt-NavList .tel{
	width: 33%;
}
.topHotelList li .lyt-NavList nav a {
	position: relative;
	box-sizing: border-box;
	display: block;
    color: #fff;
    text-decoration: none;
    width: 100%;
    font-size: 12px;
    padding: 18px 15px 12px 0px;
	text-align: center;
	background: #000;
}
.topHotelList li .lyt-NavList nav a::before {
	box-sizing: border-box;
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	right: 5px;
	margin: auto;
	background-color: #FFF;
	line-height: 1;
	width: 15px;
	height: 1px;
	z-index: 20;
}
.topHotelList li .lyt-NavList nav a::after {
	box-sizing: border-box;
	position: absolute;
	content: "";
	top: 50%;
	right: 5px;
	width: 8px;
	height: 1px;
	border: 1px solid #FFF;
	border-left: 0;
	border-bottom: 0;
	border-right: 0;
	transform: rotate(45deg);
	transform-origin: top right;
	z-index: 20;
	
}
.dli-arrow-right::before {
  content: '';
  width: 8px;
  height: 1px;
  border: 1px solid currentColor;
  border-left: 0;
  border-bottom: 0;
	border-right: 0;
  transform: rotate(45deg);
  transform-origin: top right;
  position: absolute;
  top: 50%;
  right: 0;
  box-sizing: border-box;
}
.topHotelList li .lyt-NavList nav a:hover {
	opacity: .7;
}
.topHotelList li .lyt-NavList .tel a,
.topHotelList li .lyt-NavList .tel .box{
	box-sizing: border-box;
    display: block;
	font-size: 14px;
    text-align: center;
    cursor: default;
    text-decoration: none;
	padding: 16px 0 10px 20px;
	background-color: #e6e6e6;
}
.topHotelList li .lyt-NavList .tel .number{
	position: relative;
}
.topHotelList li .lyt-NavList .tel .number:before {
	position: absolute;
	top: -5px;
	left: -20px;
	font-size: 20px;
    content: "\f095";
    font-family: FontAwesome;
}

@media screen and (min-width: 769px){
	#locations{
		padding: 50px 0 75px;
		margin: 50px 0 75px;
	}

	.topHotelList{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.topHotelList li{width: 49%;padding: 1em;}
	.topHotelList li + li{margin-top: 0;}
	.topHotelList li:nth-child(n+3){margin-top: 2%;}
	.topHotelList li .lyt-article-hotel{padding-bottom: 1em;}
	.topHotelList .lyt-article-hotel .lyt-hotel p{font-size: 14px;line-height: 1.7;}
	.topHotelList .lyt-article-hotel .lyt-hotel h3{font-size: 19px;}
	.topHotelList li .lyt-NavList{padding-top: 1em;}
	
	.topHotelList li .lyt-NavList nav,
	.topHotelList li .lyt-NavList .tel{width: 49.5%;}
	
	.topHotelList li .lyt-NavList nav a {
		text-align: center;
		font-size: 14px;
		padding: 16px 40px 10px;
	}
	.topHotelList li .lyt-NavList nav a::before {
		right: 10px;
		width: 32px;
		height: 1px;
	}
	.topHotelList li .lyt-NavList nav a::after {
		top: 50%;
		right: 10px;
		width: 10px;
	}
	.topHotelList li .lyt-NavList .tel a,
	.topHotelList li .lyt-NavList .tel .box{
		padding: 16px 0 10px 20px;
	}
}
@media screen and (min-width: 769px) and (max-width: 1129px){
	.topHotelList li .lyt-NavList{display: block;}
	.topHotelList li .lyt-NavList nav,.topHotelList li .lyt-NavList .tel{width: 100%;}
	.topHotelList li .lyt-NavList nav + .tel{margin-top: 2%;}
}


.lyt-columnbox{
	padding: 0 0 45px;
}
.lyt-columnbox .lyt-ph img{
	width: 100%;
	height: auto;
}
.lyt-columnbox .lyt-ph{padding-bottom: 20px;}
.lyt-hdg{
	font-size: 18px;
	color: #009574;
	font-weight: bold;
}
.lyt-appbox{
	display: flex;
	justify-content: flex-start;
}
.lyt-appbox li{
	height: 50px;
}
.lyt-appbox li img{
	width: auto;
	height: 100%;
}
span.sub-txt-list{
	font-size: 14px;
	text-indent: -1em;
	padding-left: 1em;
	display: inline-block;
	line-height: 1.2;
}
.sub-txt-list + .sub-txt-list{
	padding-top: .5em;
}
@media screen and (min-width: 769px){
	.lyt-columnbox{
		display: flex;
		justify-content: space-between;
		padding: 0 0 45px;
	}
	.lyt-columnbox .lyt-ph{width: 50%;padding-bottom: 0;}
	.lyt-columnbox .lyt-doc{width: 48%;}
	.lyt-appbox li{height: 50px;}
}



/*231027追記　ギャラリー*/

div.content div.galleryArchiveWrap ul{display: flex; flex-wrap: wrap;}
div.content div.galleryArchiveWrap ul li{ width: 33%; }
div.content div.galleryArchiveWrap ul li:nth-child(n+4){ margin-top: .5%}
div.content div.galleryArchiveWrap ul li:nth-child(3n),
div.content div.galleryArchiveWrap ul li:nth-child(3n+2){margin-left: .5%;}
div.content div.galleryArchiveWrap ul li img{ width: 100%; }
.box-modal__content-b{ background: #fff!important;}
a[target='_blank']:after{ display: none!important;}
.box-modal__content-b .box-modal__close{ background: #009574!important;}
.wedding-gallery .slide-type01 .slick-prev, .wedding-gallery .slide-type01 .slick-next{bottom: 30px!important;}

@media screen and (max-width: 736px) {
	.mfp-gallery .slide-type01 .slick-prev,.mfp-gallery .slide-type01 .slick-next{bottom: -42px!important;}
}





/*240116追記　那覇マップ*/
div.content div.featureWrap figure img{width: 100%; height: auto;}
div.content div.featureWrap figure + figure{margin-top: 1.2em;}


@media screen and (max-width: 736px) {
	/*div.content div.featureWrap figure{width: 100%; overflow-x:scroll;}
	div.content div.featureWrap figure img{width: 200%;}*/
	div.content div.featureWrap figure{width: 100%;}
	div.content div.featureWrap figure img{width: 100%;}
}

/*
div#bookingMenu div.datepicker {
  background: none;
  border: none;
  border-radius: none;
  box-shadow: none;
  display: subgrid;
  font-size: 16px;
  height: auto;
  padding:0 25px;
  width: auto;
}
div#bookingMenu div.datepicker input {
	text-decoration: none;
}*/


@media screen and (max-width: 736px) {
div.content div.featureWrap .topHotelList figure img{
        width: 100%;
    }
}

/*24.04.24 追加*/
/*.lyt-headline{
	box-sizing: border-box;
	width: 100%;
	font-size: 2rem;
	padding: 2vw;
	text-align: center;
	color: #FFF;
	background-color: #009574;
}*/