.pc{display:none!important}
#widewrapper{clear:both;font-family:'Rakuten Sans JP','Noto Sans JP',sans-serif;position:relative;width:100%;padding-bottom: 80px;}
.ss-container{background:none;border-radius:0!important;padding:32px 0}
#contentsArea{line-height:1.6}
.ttl{color:#000;font-family:'Rakuten Sans JP','Noto Sans JP',sans-serif;font-size:20px;font-weight:700;text-align:center;margin-bottom: 16px;padding-top: 24px;line-height: 1.2;}
a:hover{opacity:.8;text-decoration:none!important}
.ttl img {width: 90%;margin: 0 auto;}
.dualSide {padding-top: 0;}
.kv{position:relative}
.kv h1 img{display:block;width:100%}
.sliderBox{animation:slide 100s linear infinite;background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202609/images/kv_slider.png) 0 100%/1728px 90px;height:90px;position:relative;width:100%}
.sliderBox img{display:block;margin:0 auto;width:auto}@keyframes slide{0%{background-position:0 100%}to{background-position:-1728px 100%}}


.ss-container.couponBox {padding-bottom: 16px;}

/* coupon */
.coupon__box {background:#f5f5f5;width: 90%;}
.coupon__box__holder {padding:24px 16px;}
.coupon__filter__guide {margin: 16px auto;}
.planBanner {
  display: block;
  width: calc(100% - 32px);
  margin: 16px auto;
}
.planBanner img {
  display: block;
  width: 100%;
  height: auto;
}

#specialPlan{background:url(https://img.travel.rakuten.co.jp/themepark/tdr/special-offers/202506/images/sp_bg.png) no-repeat top/cover}
.planMain{margin:0 16px}
#official{margin-bottom:32px}
.ss-hotelbox{flex-wrap:wrap;margin:0;overflow:visible}
.ss-hotel,.ss-hotelbox{box-sizing:border-box;display:flex}
.ss-hotel{background:#fff;border:none;border-radius:4px;box-shadow:none;flex-direction:column;overflow:hidden;position:relative;width:100%;margin-bottom: 16px;}
.ss-hotel .columnB{align-items:baseline;display:flex;flex-wrap:wrap;justify-content:space-between;margin:0 0 8px}
.ss-hotel .hotel-img{border-radius:4px 4px 0 0;display:block;margin:-10px -10px 8px!important;overflow:hidden;width:calc(100% + 20px)}
.ss-hotel .hotel-img a{display:block;width: 100%;aspect-ratio: 16/9 ;}
.ss-hotel .hotel-img span{background:rgba(0,0,0,.45);bottom:0;box-sizing:border-box;color:#fff;font-size:14px;font-weight:700;left:0;padding:8px;position:absolute;width:100%}
.ss-hotel .hotelName{width:100%}
.ss-hotel .hotelName a{color:#333;font-size:14px;font-weight:700;letter-spacing:.72px}
.ss-hotel .area{font-size:12px;font-style:normal;font-weight:500;letter-spacing:.56px;width:calc(100% - 135px)}
.ss-hotel .rvw-score{display:flex;justify-content:center;min-width:135px}
.ss-hotel .stars{display:inline-block;font-size:14px;letter-spacing:3px;margin-right:2.5px;position:relative;text-align:center;width:88px}
.ss-hotel .review-score{color:#333;display:inline-block;letter-spacing:.56px;vertical-align:-3px}
.ss-hotel .hotelPlan,.ss-hotel .review-score{font-size:14px;font-style:normal;font-weight:700}
.ss-hotel .hotelPlan{color:#807ad2;margin:0 0 2px;text-align:center}
.ss-hotel .hotel-price{color:#333;font-size:14px;font-style:normal;font-weight:500;padding:4px 0;text-align:center}
.ss-hotel .hotel-price b{font-size:16px}
.ss-hotel .coupon_icon{ display: none!important; color:#fff;display:table;font-size:12px;font-weight:700;left:-1px;margin-bottom:8px;position:relative;top:14px;width: 24%;aspect-ratio: 94/45;}

.ss-hotel .planBox{color:#807ad2;line-height:1;position:relative}
.ss-hotel .planBox:after{border-style:solid;border-width:0 1px 1px 0;content:"";display:block;height:10px;position:absolute;right:12px;top:calc(50% - 6px);transform:rotate(-45deg);width:10px}
.pre .ss-hotel .hotel-price {display: none;}
.atn{font-size:12px;margin:0 16px}
.jgaCopyright{font-size:12px;margin-bottom:8px;text-align:center}

#grpLocationArea{background:#fff;display:block!important;font-size:75%!important;line-height:38px;position:relative}
#grpLocationArea p{overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;padding-left:calc(9.1em + 8px);-ms-overflow-style:none;scrollbar-width:none}
#grpLocationArea p::-webkit-scrollbar{display:none}
#grpLocationArea a:first-of-type{background:#fff;color:#333;left:0;padding:0 .5em 0 8px;position:absolute;top:0}
#grpLocationArea .grpLocationLocus{padding-right:8px}
#Searchbox{background:#f5f5f5;margin:0;padding:16px 0 24px}
#Searchbox #search-box{background:none;border:none;border-radius:0;margin:16px}
#search-box .inputDate{background-color:#fff}
#search-box.verB.test #searchSwitchArea1 p.searchSubmit{padding:0}
#search-box.verB.test #searchSwitchArea1{background:none;padding:0}
#search-box.verB #dh-search-form .searchSubmit a{background:#d04a00;border:none;margin-top:0}
#search-box.verB.test #dh-search-form .sibori .structure dd {width: 100%;}
#pointcpn_footer{display: none !important;}


#switchTab{padding-top:24px;background:linear-gradient(270deg,rgba(158,237,167,.3) 0%,rgba(255,224,139,.3) 35%,rgba(150,220,255,.3) 65%,rgba(167,181,255,.3) 100%)}
#switchTab .tabs{width:100%;margin:0 auto;display:flex;justify-content:center;align-items:baseline;column-gap:8px}
#switchTab .tabs div{aspect-ratio:176 / 76;width:calc(100% / 2 - 4px);cursor:pointer}
#switchTab .tabs .tab1{background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/tab1_sp.png) no-repeat center center/100% 100%}
#switchTab .tabs .tab1.active{aspect-ratio:176 / 84;background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/tab1_active_sp.png) no-repeat center center/100% 100%}
#switchTab .tabs .tab2{background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/tab2_sp.png) no-repeat center center/100% 100%}
#switchTab .tabs .tab2.active{aspect-ratio:176 / 84;background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/tab2_active_sp.png) no-repeat center center/100% 100%}

.panel{width:100%;background-image:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/ribbon_left.png),url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/ribbon_right.png);background-repeat:no-repeat,no-repeat;background-size:50% auto,50% auto;background-position:left top,right top}
.btnsBox{padding:0 0 32px;overflow: visible;}
.btnsBox .anchorList {
  width: 90%;
  height: 50px;
  box-sizing: border-box;
  font-size: 16px;
  color: #fff;
  position: relative;
  border-radius:4px;
  background: var(--4-color, linear-gradient(0deg, rgba(0, 0, 0, 0.10) 0%, rgba(0, 0, 0, 0.10) 100%), linear-gradient(90deg, #17B0F3 0%, #2F7BD7 28.37%, #46B853 67.79%, #FFB56C 100%));
  line-height: 50px;
  margin: 0 auto;
  text-align: center;
  cursor: pointer;
  z-index: 1;
  font-weight: 700;
  box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
  
}
.btnsBox .anchorList span::after {
  content: url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/arrow.svg);
  display: inline-block;
  margin-left: 8px
}
.btnsBox .anchorList ul {
  position: absolute;
  bottom: -88px;
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid #CCC;
  padding: 8px 0;
  z-index: 1000;
  padding: 0 16px;
  border-radius: 4px;
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.10);
  line-height: normal;
  display: none;
}
.btnsBox .anchorList ul li {
  text-align: center;
  margin: 0 auto 8px;
  border-bottom: 1px solid #CCC;
  padding: 8px 0;
  font-size: 14px;
}
.btnsBox .anchorList ul li:last-child {
  border: none;
  margin-bottom: 0;
}
.btnsBox .anchorList ul li a {
  width: fit-content;
  display: block;
  padding-left: 32px;
  margin: 0 auto;
}

a.tdrTtl {
  background: url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/tdr_icon.png) no-repeat left center/24px 24px;
  color: #00A5EE;
}
a.jgaTtl {
  background: url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/jga_icon.png) no-repeat left center/24px 24px;
  color: #00AD14;
}
a.usjTtl {
  background: url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/usj_icon.png) no-repeat left center/24px 24px;
  color: #0053B8;
}
a.boschTtl {
  background: url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/bosch_icon.png) no-repeat left center/24px 24px;
  color: #FF8001;
}
.btnsBox .anchorList ul li a.tdrTtl:hover {
  color: #00A5EE;
}
.btnsBox .anchorList ul li a.jgaTtl:hover {
  color: #00AD14;
}
.btnsBox .anchorList ul li a.usjTtl:hover {
  color: #0053B8;
}
.btnsBox .anchorList ul li a.boschTtl:hover {
  color: #FF8001;
}

.anchorBtns {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  row-gap: 8px;
  background: #F5F5F5;
  width: 90%;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 24px 0px 0;
}

.anchorBtns a {
  width: fit-content;
  text-align: center;
  font-size: 14px;
  font-weight: 600;
  padding: 10px 24px 10px 48px;
  color: #fff;
  border-radius: 100px;
  position: relative;
  pointer-events: none;
}


.anchorBtns a::before {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 24px;
  height: 24px;
  display: inline-block;
  background: url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/icons.png) no-repeat left center/auto 24px;
}

.anchorBtns a.tdrTtl {
  background: #00A5EE;
}
.anchorBtns a.jgaTtl {
  background: #00AD14;
}
.anchorBtns a.jgaTtl::before {
  background-position: -38px 0;
}
.anchorBtns a.usjTtl {
  background: #0053B8;
}
.anchorBtns a.usjTtl::before {
  background-position: -76px 0;
}
.anchorBtns a.boschTtl {
  background: #FF8001;
}
.anchorBtns a.boschTtl::before {
  background-position: -114px 0;
}

.planContainer{padding:32px 0}
.planContainer small{font-size:16px}

#Searchbox .ttl{background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/search_icon.png) no-repeat top center/24px 24px}
.blue{background-color:#E6F7FF}
.blue .ttl{color:#00A5EE;background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/tdr_icon.png) no-repeat top center/24px 24px}
.blue .ss-hotel .planBox{color:#00A5EE}
.blue .ss-hotel .hotelPlan{color:#00A5EE}
.blue .ss-hotel .coupon_icon{background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/couponIcon_blue.png) no-repeat center center/100% 100%}

.green{background-color:#EBFFEE}
.green .ttl{color:#00AD14;background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/jga_icon.png) no-repeat top center/24px 24px}
.green .ss-hotel .planBox{color:#00AD14}
.green .ss-hotel .hotelPlan{color:#00AD14}
.green .ss-hotel .coupon_icon{background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/couponIcon_green.png) no-repeat center center/100% 100%}

.purple{background-color:#E8EFFF}
.purple .ttl{color:#0053B8;background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/usj_icon.png) no-repeat top center/24px 24px}
.purple .ss-hotel .planBox{color:#0053B8}
.purple .ss-hotel .hotelPlan{color:#0053B8}
 .purple .ss-hotel .coupon_icon{background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/couponIcon_purple.png) no-repeat center center/100% 100%}
 
 .orange{background-color:#FFF2E5}
 .orange .ttl{color:#FF8001;background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/bosch_icon.png) no-repeat top center/24px 24px}
.orange .ss-hotel .planBox{color:#FF8001}
.orange .ss-hotel .hotelPlan{color:#FF8001}
 .orange .ss-hotel .coupon_icon{background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/couponIcon_orange.png) no-repeat center center/100% 100%}

.ss-container .flexBox{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px;padding:0 16px}
.ss-container .flexBox li{width:calc(50% - 4px)}
.ss-container .flexBox li a{display:block}
.ss-container .flexBox li a img{width:100%;}

#bannerBox{padding-bottom:0}
#bannerBox .ttl{background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/sale_icon.png) no-repeat top center/24px 24px;margin-bottom:24px}
#themeParksBox .ttl{background:url(https://img.travel.rakuten.co.jp/themepark/special-offers/202509/images/home_icon.png) no-repeat top center/24px 24px;margin-bottom:24px}
 #themeParksBox p{text-align:center;color:#000;font-size:12px;margin-top:8px}
 .top{position:fixed;display:none;right:16px;bottom:10px;z-index:99}
.top li{margin-bottom:10px}
.top li img{width:50px}
.top li:last-child{margin-bottom:0}



.setInput ul {
  background-color: #fff;
}

.linkBtn {
  display: block;
  width: 90%;
  margin: 0 auto;
}

.cpnNote {
  font-size: 12px;
  padding:0 8px 8px;
}

/* .panel.panel2 .ss-hotel .hotel-price {
  display: none;
}
.panel.panel2.inPhase .ss-hotel .hotel-price {
  display: block;
} */


.moreBox{position:relative; margin: 16px 0 32px;}
.moreBox input{display:none}
.moreBox label{position:absolute; z-index:1; transform: translateX(-50%); left: 50%; bottom: -30px; width:120px; height:50px;cursor:pointer;text-align:center;bottom: -60px; width: calc(100% - 42px); height: auto; background: #fff; padding: 12px 0; font-size: 14px; color: #009700; font-weight: bold; border-radius: 4px; border: 1px solid #009700; display: flex; align-items: center; justify-content: center; flex-direction: row-reverse;}
.moreBox label:hover{ opacity: .7;}
.moreBox label span:before{ content: "クーポンをすべて見る";}
.moreBox label:after{ line-height: 50px; position:absolute; z-index:2; left:50%; width:120px; content:'もっと見る'; font-weight: 600; transform:translateX(-50%);font-size:18px;color:#333!important; content: "" !important; position: static; transform: translateX(-5px); width: 20px; height: 20px; background: url(https://img.travel.rakuten.co.jp/special/sales/car/202509/images/couponIcon.png) no-repeat; background-size: 20px;padding-right: 4px;}
.moreBox label:before{ z-index:10; display:block;position:absolute; left:50%; width:12px; transform: translate(-50%,40px) rotate(135deg); height:12px; border-top:2px solid #333;border-right:2px solid #333; content: ""; position: absolute; left: 90%; top: 50%; transform: translateY(-65%) rotate(135deg); width: 10px; height: 10px; border: 1px solid #009700; border-bottom: none; border-left: none;}
.moreBox input:checked+label{ bottom: -55px;}
 .moreBox input:checked+label span::before{content: "クーポンを閉じる";}
.moreBox input:checked+label::before{ transform: translateY(-50%) rotate(-45deg);}
.moreBox .moreContainer{overflow:hidden;height:0;transition:all .5s; padding: 0; margin:0 0 100px;}
.moreBox input:checked~.moreContainer{ height: auto!important; max-height: 99999px; padding-bottom: 0;}

.moreContainer{ background: transparent;}
.moreContainer .ptxt1{ font-size: 16px; font-weight: 700; margin: 24px 8px 0; text-align: center;}
.moreContainer .ptxt1 i{ display: table; margin: 16px auto 0; font-size: 20px; color: #FF008C; font-weight: 900; font-style: italic;background: linear-gradient(to bottom, rgba(255,255,0,0) 0%,rgba(255,255,0,0) 50%,rgba(2255,255,0,1) 50%,rgba(255,255,0,1) 100%);}
@media screen and (max-width:375px){
.moreContainer .ptxt1 i{ letter-spacing: -1px;}
}
.moreContainer .ptxt1 i small{ font-size: 14px;}
.moreContainer .ptxt1 span{ display: table; margin: 16px auto 0; font-size: 14px; border: 1px solid #333; border-radius: 2px; padding: 4px 8px; font-weight: 700;}
.moreContainer .ptxt2{ font-size: 14px; margin: 16px 16px 0; line-height: 1.4;}
.moreContainer .ptxt2 span{ font-size: 13px; color: #767676;}
.moreContainer .photo{ margin: 16px 16px 0; text-align: center;}
.moreContainer .photo img{ width: 100%;}

.moreContainer .btnBox .ptxt3{ margin: 16px 16px 0; font-size: 14px; font-weight: bold; color: #FF008C; text-align: center;}
.moreContainer .btnBox .btn{ margin: 8px 16px 0; text-align: center;}
.moreContainer .btnBox .btn a{ display: block; width: 280px; padding: 12px 0; background: #BF0000; color: #fff; font-size: 20px; border-radius: 50px; margin: 0 auto; text-align: center;}
.moreContainer .btnBox .btnmno a{ background: #FF008C;}
.moreContainer .btnBox .end a{ color: #fff; background: #aeaeae;}
.moreContainer .btnBox .end a:hover{ opacity: 1;}
.moreContainer .btnBox .ptxt4{ color: #6d6d6d; font-size: 13px; margin: 8px 16px 0; }
.moreContainer .btnBox .ptxt5{ font-size: 13px; margin: 16px 16px 0; line-height: 1.4;}




.cpn-all-click{display: flex;justify-content: center;gap: 20px; margin: 0 auto 24px;}
.cpn-all-click-btns{max-width: 276px;background: #bf0000; color: #fff; display: block; padding: 16px 0; font-size: 16px; border: none; border-radius: 100rem; width: 80%; max-width: 420px; line-height: 1; font-family: inherit;}
.cpn-all-click-btns:hover{opacity: .8; cursor: pointer;}
.cpn-all-click-btns.acquired, .cpn-all-click-btns.finished, .cpn-all-click-btns.expired{background: #666; color: #fff; cursor: not-allowed;}

.notice {
  font-size: 12px;
  width: fit-content;
  margin: 0 auto;
  color: #333;
  padding: 0 16px;
}


.btns  {
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 4px;
  
}

.nav {
  margin: 32px 8px 0;

}
.nav.active {
  width: 100%;
  box-sizing: border-box;
  padding-top: 0;
  z-index: 100;
  background: #fff;
  margin: 0;
  padding: 0 10px 16px;
}
.btns a {
  width: calc((100% - 12px) / 4);
  display: block;
  text-align: center;
  padding: 8px 4px 20px;
  color: #fff;
  font-weight: 500;
  border-radius: 0 0 12px 12px;
  position: relative;
  font-size: 11px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.btns a::after {
  content: "";
  position: absolute;
  bottom: 6px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 8px solid #fff; /* 三角颜色 */
}

.btns a:first-of-type {
  background: linear-gradient(180deg, #7BD5FF 0%, #00A5EE 100%);
}
.btns a:nth-of-type(2) {
  background: linear-gradient(180deg, #8CAFFF 0%, #0053B8 100%);
}
.btns a:nth-of-type(3) {
  background: linear-gradient(180deg, #FFCF9E 0%, #FF8001 100%);
}
.btns a:nth-of-type(4) {
  background: linear-gradient(180deg, #96E39F 0%, #00AD14 100%);
}
