@charset "utf-8";
body{min-width: auto;}
.rt-header, .rc-f-standard{min-width: auto;}
a{transition: all .3s ease-out;}
a:hover{ opacity:.6; text-decoration:none !important;}
.ss-title #grpLocationArea{ background: #fff;padding: 10px 0 10px 15px;margin: 0;}
.rt-footer{display:block!important;z-index:1!important}
#sRight,.ss-center{ font-family: 'Noto Sans JP', sans-serif; color: #333;}
.ss-contents{padding-bottom: 0; position: relative; overflow: hidden; min-width: auto; background: #f4f3ee;}

#topBnrBox{ height: 270px; background: none; min-height: 0;}
.topBnrBox{ margin-top: 50px; width: 100%; background:url(https://img.travel.rakuten.co.jp/camp/50luxday/platinum/images/kvBg.jpg) center center no-repeat; background-size: cover; position: relative; height: 270px;}
.topBnrBox h1{ position: absolute; left: 0; top: -50px; text-align: center; width: 100%;}
.topBnrBox h1 img{ width: 100%; max-width: 909px;}

.ss-center{ max-width: none; overflow: hidden; margin-bottom: 0; background: #F4F3EE;}
.ss-container{width: 100%; max-width: 1280px; margin: 80px auto 0; padding:0 30px 30px; box-sizing: border-box; border: none; background: none; overflow: hidden;}

.ttl{ font-size: 30px; text-align: center; font-weight: 800; line-height: 1.4; margin: 0 auto; }
.ttl span{display: block;text-align: center; font-size: 30px; color: #0F2E4E; margin: 0 auto;}
.ttl b{font-size: 40px;}
/* .ttl span:after{position: absolute; content: ''; height: 2px; width: 80px; left: 50%; margin-left: -40px; bottom: 0; background: #333; z-index: -1;}
.ttl span small{display: block; font-size: 16px; text-align: center; margin: 12px auto 0;} */


.wn{ font-size: 12px; line-height: 1.6; margin: 24px auto 0; width: 100%; }

.lead{max-width: 1280px; margin: 80px auto 0; text-align: center; font-size: 14px;}

/* htl */

#pickup{ padding-bottom: 0; }
#pickup .nav{ margin: 24px 0 0; display:flex; justify-content: center; }
#pickup .nav li{ margin:0 4px ;}
#pickup .nav li a { display: block; padding: 8px 18px; background: #0F2E4E; text-align: center; font-size: 16px; border: 1px solid #0F2E4E; color: #fff; border-radius: 5px; }
#pickup .nav li a:hover{ background: #C9C4B8; border: 1px solid #0F2E4E; color: #0F2E4E; }

.ttls{ font-size: 18px; margin: 24px 0 0;color: #0F2E4E;}
#pickup .hideBox { margin: 16px 0 0; overflow: hidden;}
.swiper-container{ overflow: visible; padding-bottom: 24px;}
.ss-hotel{ border: none; overflow: visible; padding: 0 0 8px;box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2); border-radius: 4px; background: #fff;}
.ss-hotel .hotel-img{ margin: 0 0 8px; overflow: hidden; margin: 0; width: auto; float: none; border-radius: 5px 5px 0 0;}
.ss-hotel .bg-img{ display: block; transition: transform ease 0.4s; background-position: center; background-size: cover;height: 140px;}
.ss-hotel .bg-img:hover{transform: scale(1.2);}
.ss-hotel .hotel-container{ margin: 8px 0 0; padding: 0 8px; width: auto; float: none;}
.ss-hotel .hotel-main .area-name{ position: relative;}
.ss-hotel.f_premium .area-name{ background: url(https://img.travel.rakuten.co.jp/share/premium/images/premium_normal.svg) left center no-repeat; background-size: 62px; padding-left: 70px;}
.ss-hotel.f_platinum .area-name{ background: url(https://img.travel.rakuten.co.jp/share/premium/images/premium_ultra.svg) left center no-repeat; background-size: 72px; padding-left: 80px;}
.ss-hotel #rvw-score{ margin: 0 8px;}
.ss-hotel .stars { font-size: 14px; letter-spacing: 3px; margin-right: 7.5px; width: 88px; text-align: center; display: inline-block; position: relative; }
.ss-hotel .stars .review-base { padding-left: 1.5px; color: #f3f3f3; width: 100%; box-sizing: border-box;}
.ss-hotel .stars .review-rst { padding-left: 1.5px; color: #ffba00; position: absolute; overflow: hidden; top: 0; left: 0; z-index: 1; box-sizing: border-box; }
.ss-hotel .review-score { color: #bf0000; display: inline-block; font-weight: 700; font-size: 14px; line-height: 20px; }
.ss-hotel .hotel-sub{ margin: 0 8px;}
.ss-hotel .hotel-sub .hotel-pr{ font-weight: normal; font-size: 12px;}
.ss-hotel .hotel-price{ text-align: right; margin: 8px 8px 0;}
.ss-hotel .hotel-price a span{ font-size: 16px; padding: 0 !important; color: #836324;}
.ss-hotel .hotel-price a span.details em{ margin-top: 0; font-size: 10px; line-height: 14px;}
.ss-hotel .hotel-price a span.details span.price-info{ width: 140px;}
.ss-hotel .hotel-price em{ font-size: 12px;}
.ss-hotel .btn{ display: block; margin: 8px 8px 0; border-radius: 3px; background: #fff; border: 1px solid #ccc; color: #333; font-size: 14px; text-align: center; padding: 8px 0; position: relative;}
.ss-hotel .btn.honbanssBtn{ display: block;}
.ss-hotel .btn.pressBtn{ display: none;}
.ss-hotel .honbanpName{ display: block;}
.ss-hotel .prepName{ display: none;}

/* Searchbox */
#Searchbox { max-width: none; padding: 0 0 80px; background: #333;}
#Searchbox .ttl{ color: #fff; margin-top: 80px;}
#search-box.verB{  width: 100%; max-width: 1280px; margin: 32px auto 0; padding: 64px 30px; box-sizing: border-box;  box-shadow: none !important;}
#search-box.verB #search-box-body{ max-width: 1100px; width: 100%; margin: 0 auto;}
#search-box.verB.test .dhAll{ background: #fff; box-shadow: none;}
#search-box.verB #dh-search-form .luxurysibori .structure{ width: 300px;}
#search-box.verB #dh-search-form .luxurysibori .roten {/*width: 200px;*/ display: inline-block; padding-top: 10px; padding-bottom: 10px;}
#search-box.verB #dh-search-form .luxurysibori .roten input[type="checkbox"]+label{  font-size: 16px !important;}
#keywordSearch{ margin: 40px auto 0; width: 560px;}
#keywordSearch form{display: flex; justify-content: center;}
#keywordSearch .keyword{ width: 460px; padding: 12px; font-size: 18px; box-sizing: border-box; border: 1px solid #999; border-radius: 5px 0 0 5px; border-right: none;}
#keywordSearch .stdSrchBtn{ width: 98px; border-radius: 0 3px 3px 0;}
#keywordSearch .stdSrchBtn a{ height: 100%; display: flex; justify-content: center; align-items: center; background: #4c4c4c; border-radius: 0 5px 5px 0;}

/* faq */
/* #FAQ{ width: 1080px;} */
#FAQ .nav{ display: flex; justify-content: flex-start; flex-wrap: wrap; margin: 16px 0 0;}
#FAQ .nav li{ margin: 8px 4px 0; width: calc(25% - 8px);}
#FAQ .nav li a{ display: block; border: 1px solid #ccc; text-align: center; padding: 10px 10px 10px 0; background: #F0F0F0; position: relative; border-radius: 5px; color: #0F2E4E; font-weight: bold;}
#FAQ .nav li a::after{ content: ""; display: block; position: absolute; right: 15px; top: 50%; margin-top: -6px; width: 8px; height: 8px; border-bottom:1px solid #333; border-right:1px solid #333; transform: rotate(45deg);}
#FAQ .faqBox{ margin: 16px 4px 0; background: #F0F0F0; border: 1px solid #ccc; border-radius: 5px; }
#FAQ .faqBox h3{ padding: 12px; color: #0F2E4E; font-weight: bold;}
#FAQ dl{ background: #fff;border-bottom: 1px solid #ccc; }
#FAQ dl:nth-last-child(){ border-bottom: none;}
#FAQ .jdsCoponSwitch{cursor: pointer; display: block; border-radius: 5px; font-size: 14px;padding:12px 40px 12px 12px; position: relative; background: url(https://img.travel.rakuten.co.jp/camp/50luxday/platinum/images/Plus.png) 98% center no-repeat; background-size: 15px;}
#FAQ .jdsCoponSwitch.active-submenu{background: url(https://img.travel.rakuten.co.jp/camp/50luxday/platinum/images/Minus.png) 98% center no-repeat;background-size: 15px;}
#FAQ dd {display: block; padding: 8px; margin-top: 8px; font-size: 13px; line-height: 1.6; position: relative;}
#FAQ dd a{color: #006497 !important;}
#FAQ dd span{ color: #BF0000;}
#FAQ dd b{ display: block; margin-bottom: 8px;}
#FAQ .flink{ display: table; margin: 16px auto 0; text-align: center; font-size: 12px; text-decoration: underline; line-height: 1.5; position: relative; padding-right: 10px;}
#FAQ .flink::after{ display: block; position: absolute; right: 0; top: 50%; margin-top: -3px; content: ""; width: 5px; height: 5px; border-top: 1px solid #333; border-right: 1px solid #333; transform: rotate(45deg);}

/* history */
#browsing-history{ padding-bottom: 0;}
#browsing-history-hotel-related{ margin: 32px auto 0;}
.bh-container .ttl-lv2{ color: #333; margin-top: 0;}
.bh-container .rankBox .ss-hotel{ margin-top: 0;}
#app_ultra_index_treatment_more{ display: block; cursor: pointer; margin: 24px auto 40px; width: 560px; border: 1px solid #ccc; border-radius: 4px; padding: 20px 0; color:#333; font-size: 20px;text-align:center; position: relative;}
#app_ultra_index_treatment_more::after{ content: ""; display: inline-block; margin: 0 0 0 20px; vertical-align: 4px; border:1px solid #333; border-left-color:transparent;border-top-color:transparent; transform: rotate(45deg); width: 12px; height: 12px; }




/* new coupon */
#COUPONbox { margin-top: 32px; padding: 0 0 30px; }
#COUPONbox .tpr{ text-align: center; font-size: 18px; color: #6D6D6D; line-height: 1.6; margin-bottom: 32px;}
#COUPONbox .tpr b{ font-size: 20px; color: #333;}
#COUPONbox .tpr small{ font-size: 14px; color: #333;}
#COUPONbox .coupon__title{font-size: 18px; font-weight: bold; background: #333;}
#COUPONbox .coupon__box.coupon__box__pattern-a .coupon__subtitle{ background: #F3F3F3;}
#COUPONbox .select-kome { margin: 45px auto; text-align: left; font-size: 13px; display: flex; justify-content: center; line-height: 1.6; }
.coupon__subtitle{height: 0; margin: 0; padding: 0;min-height:0; overflow: hidden;}
.cp_box .cp_container{ height: 550px; width: 100%; display: flex; justify-content: center; flex-wrap: wrap; align-content: flex-start;}
.coupon__box{ width: 100%;}
.cp_box input:checked~.cp_container{ padding-bottom: 10px;}
.cp_box label{background: linear-gradient(to bottom,rgba(244, 243, 238,0) 0,rgba(244, 243, 238,.95) 90%); z-index: 11; height: 250px; bottom:-55px; width: 100%; cursor: pointer;position: absolute; text-align: center;}
.cp_box label:before{display: block; content: ""; transform: rotate(135deg); height: 10px; width: 10px; z-index: 10; position: absolute;}
.cp_box label:after{display: block; content: ""; position: absolute; z-index: 2; bottom: 0; left: 50%;content: '他のクーポンを獲得する';transform: translate(-50%, 0); box-shadow: 1px 1px 3px #eee, -1px 1px 3px #eee; font-size: 14px; width: 460px; background: #fff; display: block; color: #333 !important; border: 2px solid #333; border-radius: 5px; text-align: center; padding: 12px 0; line-height: 1.6; font-weight: bold;}
.cp_box input:checked+label::before, .cp_box label:before{border-top: 2px solid #333; border-right: 2px solid #333; top:auto; bottom:20px;right: calc(50% - 200px); margin: 0;}
.cp_box input:checked+label{ height: 60px;}
.no-coupon{ text-align: center; font-size: 24px; font-weight: bold; margin: 64px auto 0;}
.cp_box.hide,.select-kome.hide,.coupon__filter__guide.hide{ opacity: 0 !important; height: 0 !important; margin: 0 !important; padding: 0 !important; overflow: hidden;}
.cp_container{height: auto !important;}
.readMoreBtn{display: none !important;}


/* 202409 */
#Campaign{ background: url(https://img.travel.rakuten.co.jp/camp/50luxday/platinum/202409/images/campBg.jpg) no-repeat; background-size: cover; border-radius: 24px; margin:32px auto 0; padding: 0;}
#Campaign .campBg{ margin: 64px auto; width: 870px; background: rgba(255,255,255,0.88); border-radius: 24px; padding: 32px 72px; box-sizing: border-box;}
#Campaign .term{ margin: 32px 0 0; font-size: 18px; line-height: 1.6;}
#Campaign .term small{ font-size: 14px;}
#Campaign .term span{ display: inline-block; border: 1px solid #333; border-radius: 3px; padding: 3px 6px; margin: 0 2px;}
#Campaign .flexbox{ margin: 12px auto 0; display: flex; justify-content: center; gap: 20px;}
#Campaign .flexbox a{ font-size: 16px; color: #333; text-decoration: underline; padding-right: 22px; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAiCAMAAADmrkDzAAAARVBMVEUAAAAwMDAwMDAwMDAxMTEzMzMyMjIzMzMzMzMyMjIzMzM1NTUyMjIwMDAzMzMzMzMyMjIxMTEyMjIzMzMyMjI0NDQzMzP51LwrAAAAFnRSTlMAIEAwoJ+Av+9/r2BgEFDP3x9w3+9Aa03MBwAAAHlJREFUeNrdykUSQkEUA8DvriPv/kfFSRhSxQ7rdWcfkhdQylEZ1HI07VWHofXGQ4cBQ4dxwpjzq5lDhrF0djVxoLHadrVQ4LHZnl0hyMFBDw56cNCDA+PBQQ9HQY95RRCDuM29GI01fzzahE+Gsychzx7EKTVnb3YA6mQP/gr9fQ8AAAAASUVORK5CYII=) right -2px no-repeat; background-size: 20px;}
#Campaign .flexbox .jds_detialPopUp{background: none; padding: 0;}
.jds_popUp_plan{ top: 15vh !important; left: 50% !important; margin-left: -500px; width: 1000px !important; border-radius: 0;}
.jds_popUp_plan>p#popUpplan{ padding: 0; max-height: 700px; overflow-y: auto;}
.jds_popUp_plan table { background-color: #fff; border-left: 1px solid #b4b4b4; border-top: 1px solid #b4b4b4; font-size: 13px; line-height: 1.6; display: block; margin: 0 auto 0 auto; }
.jds_popUp_plan table td { border-right: 1px solid #b4b4b4; padding: 8px; border-bottom: 1px solid #b4b4b4; }
.jds_popUp_plan table tr:first-child td { text-align: center !important; background-color: #333 !important; color: #fff; }
.jds_popUp_plan table tr td:first-child { background-color: #e1e1e1; text-align: right; width: 200px; font-weight: 700; }
.jds_popUp_plan .jds_close_plan{ z-index: 10000; position: absolute; cursor: pointer; font-size: 0; height: 34px; width: 34px; top: 2px; right: 2px; background: #333 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAFVBMVEUAAAD///////////////////////9Iz20EAAAABnRSTlMAQF+foGCwwWJQAAAAg0lEQVR42u3VBQ6EQBTA0PH7H3njCzSkuP84vOISvtl34syVqeVxn1vCJlr7F/StYR+lW9AXLGVB7wU9C/Ms1LOglwJeC3gt4LWA1wJeC3gr4KVQz/vb8iyPwnwpUvD5QSEehXgU4lGoZ+GehXsW9Df+XkX5XvFjXLueRZ39Q/lm1/kBvUEF19SMEPsAAAAASUVORK5CYII=) 0 0 no-repeat; background-size: 34px;}
.jds_popUp_plan table td a.hstBtn{ color: #1d54a7 !important; display: inline-block; font-weight: normal;}
.jds_popUp_plan table td a.hstBtn{ color: #1d54a7 !important; display: inline-block; font-weight: normal; padding-right: 16px; background: url(https://img.travel.rakuten.co.jp/camp/50luxday/platinum/202409/images/modal_svg.svg) right center no-repeat; background-size: 13px;}

.terms { max-width: 850px; margin: auto; font-size: 14px; line-height: 1.6; color: #bf0000; margin-top: 50px;}
.terms2 { max-width: 850px; margin: auto; font-size: 18px; line-height: 1.6; color: #bf0000; margin-top: 24px;}

.schNote{color: #333;margin: -32px auto 0px; max-width: 1100px; font-size: 12px;}