.sp { display: none !important; }
#widewrapper{width: 100%; position: relative; clear: both;}
.ss-container{ margin: 80px 0 0; border-radius: 0 !important;}
#contentsArea{ background:#022367; overflow: hidden;padding-bottom: 80px;}
a:hover { opacity: 0.8; text-decoration: none !important; }
.notosansJP{font-family: "Noto Sans JP", sans-serif;}
.navi { position: fixed; bottom: 10px; right: 10px; z-index: 997; }

#topBnr{ overflow: visible; width: 100%; position: relative; }
#topBnr h1{ background: url(../images/kvBg.jpg) center center no-repeat; background-size: cover; height: 448px; box-sizing: border-box; display: flex; align-items:flex-end; position: relative;justify-content:start;}
#topBnr h1:after{ content: "PR"; display: block; position: absolute; left: 0; top: 0; width: 32px; height: 22px; text-align: center; line-height: 22px; font-size: 14px; font-weight: normal; background: rgba(0,0,0,.4); color: #fff; z-index: 9; font-family: "Noto Sans JP", sans-serif; ;}
#topBnr h1 img{ margin-left:40px; margin-bottom: 200px;}
#topBnr .logo{ text-align: center; padding: 16px 0; font-size: 28px; font-weight: 600; letter-spacing: 10.08px; font-family: "Noto Serif JP", serif;}
#topBnr .logo img{ display: block; margin: 0 auto }
#topBnr .kvNote {font-size: 13px; position: absolute; right: 20px;bottom: 15px;font-weight: 400;opacity: .6;}
.kv_slider {height: 144px; width: 100%;background: url(../images/kv_slider.jpg) 0 100% / 2816px 144px; animation: slide 100s linear infinite;}
@keyframes slide { 0% { background-position: 0 100%; } 100% { background-position: -2560px 100%; } }
#countdown{ font-size: 24px; color: #fff; font-weight: 600; text-align: center; letter-spacing: 2px; padding: 16px 0; background: #4DB7BC;}
#countdownY{ font-size: 24px; color: #fff; font-weight: 600; text-align: center; letter-spacing: 2px; padding: 16px 0; background: #4DB7BC;}
.dpnote {
    text-align: center;
    font-size: 14px;
    line-height: 1.5;
    padding-top: 40px;
}
.ttl{ text-align: center; font-size: 32px; font-style: normal; font-weight: 700; line-height: 100%; letter-spacing: 8px; font-family: "Noto Serif JP", serif;}
.ttl small{ display: block; margin-bottom: 8px; font-size: 20px; color: #BF8D2B; letter-spacing: 2.4px;}
.ttl span{ color: #24979C; font-weight: normal; display: inline-block; margin-right: 8px;}
.ttl span b{ font-size: 64px; font-style: italic; font-weight: normal; display: inline-block; margin-right: 4px;}
.ttl1{ background: #28A4C0; padding: 16px 0; text-align: center;}
.ttl1 span{ display: table; margin: 8px auto; color: #fff; font-size: 40px; position: relative; font-family: "Noto Serif JP", serif;}
.ttl1 span::before{ display:block; position: absolute; left: -104px; top: 50%; content: ""; width: 80px; height: 1px; background: #fff;}
.ttl1 span::after{ display:block; position: absolute; right: -104px; top: 50%; content: ""; width: 80px; height: 1px; background: #fff;}
.ttl2{ color: #24979C; font-size: 20px; font-weight: bold; font-family: "Noto Serif JP", serif;}
.tpr{ margin-top: 24px; text-align: center; font-size: 16px; font-weight: 400; line-height: 200%; letter-spacing: 1.6px;}


.markLink{ font-family: 'Yu Mincho'; box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.25);}
.Link-list a::before{ display: inline-block; margin-right: 8px;}
.Link-list a.icons1::before{ content: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/icon_pophotel.svg);}
.Link-list a.icons2::before{ content: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/icon_coupon.svg);}
.Link-list a.icons3::before{ content: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/icon_search.svg);}
.Link-list a.icons4::before{ content: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/icon_recommend.svg);}
.Link-list a.icons5::before{ content: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/icon_dom.svg);}

.derivationC { font-size: 12px; width: 900px; margin: 32px auto 0; line-height: 1.4; }
.ooedoonsen{width: 100%; max-width: 1280px; margin: 40px auto; background: #fff; padding-bottom: 64px; overflow: hidden;}
.ooedoonsen h2 { display: block; margin-bottom: 16px; color: #D0111B; font-family: "Noto Serif JP", serif; font-size: 24px; font-style: normal; font-weight: 600; line-height: 130%; letter-spacing: 2.4px;}
.ooedoonsen h2 span { font-size: 80% !important;}
.ooedoonsen .txt{ background: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/logo_onsengroup.png) left center no-repeat; padding-left: 450px; width: 100%; max-width: 1100px; box-sizing: border-box; margin: 64px auto 0; font-size: 14px; line-height: 200%; letter-spacing: 1.4px;}
.ooedoonsen .txt span {font-size:90%;}
.ooedoonsen .btn{ margin: 40px auto 0; width: 520px;}
.ooedoonsen .btn a{ display: block; background: #D0111B url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/arrow_w.svg) 95% center no-repeat; border-radius: 4px; text-align: center; color: #fff !important; font-family: "Noto Serif JP", serif; padding: 18px 0;}

#htl{ margin: 80px auto 0; padding-bottom: 80px; background: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/bghtl1.png) no-repeat center center #E7F6F6; position: relative;}
#htl::before{ display: block; content: ""; width: 460px; height:335px; position: absolute; top: 26%; left: 50%; margin-left: -1080px; background: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/bghtl1_f.png) no-repeat center center; z-index: 9;}
#htl::after { display: block; content: ""; width: 420px; height:320px; position: absolute; top: 60%; right: 50%; margin-right: -1080px; background: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/bghtl2_f.png) no-repeat center center; z-index: 9;}
.ctsbox{margin: 0 auto; margin-top:55px; width: 90%; max-width: 1760px; overflow: hidden; display: flex; justify-content: center; flex-wrap: wrap; font-family: "Noto Serif JP", serif; }
.ctsbox .photo{ width:  calc(100% - 598px); height: 100%; max-width: 960px; position: relative; padding: 24px 0 0 24px; box-sizing: border-box; border: solid #28A4C0; border-width: 1px 0 0 1px;}
.ctsbox .photo > div{ position: relative;}
.ctsbox .photo .jdsSlides{ overflow: hidden;}
.ctsbox .photo .jdsSlides li { width: 100%; height: 524px; overflow: hidden;}
.ctsbox .photo .jdsSlides li img{
    width: 100%;
    height: 100%;
    object-fit: cover; /* 保持比例并填满 */
    display: block;    /* 移除内联元素间隙 */
}


.ctsbox .photo .rslides_tabs{ position: absolute; bottom: -30px; left: calc(50% - 45px); display: flex; justify-content: center;}
.ctsbox .photo .rslides_tabs li{ width: 10px; margin: 0 4px;}
.ctsbox .photo .rslides_tabs li a{ display: block; width: 10px; height: 10px; text-indent: -9999px; border-radius: 50px; background:none; cursor: pointer;border: 1px solid #28A4C0;}
.ctsbox .photo .rslides_tabs li.rslides_here a{ background: #28A4C0;}
.ctsbox .cts{ width:598px; margin-top: 48px; background: #fff; padding: 40px 40px 40px 64px;; box-sizing: border-box;}
.ctsbox .name{ font-size: 32px; font-style: normal; font-weight: 600; line-height: 140%; letter-spacing: 3.2px; color: #333333;}
.ctsbox .name span{ display: block; font-size: 16px; border-left: 1px solid #000; line-height: 1; margin-top: 8px; padding-left: 8px;}
.ctsbox .txt{ margin-top: 16px; font-size: 14px; line-height: 200%; letter-spacing: 1.4px; font-family: "Noto Sans JP", sans-serif;color: #333 !important;}
.ctsbox .txt b{ display: block;color: #28A4C0; font-size:18px; font-weight: 600; line-height: 160%; letter-spacing: 0.7px; margin-bottom: 8px; font-family: "Noto Serif JP", serif;}
.ctsbox .btn{ width: 90%; max-width: 400px;  margin-top: 16px !important;}
.ctsbox .btn a{ display: block; color: #28A4C0; text-align: center; font-size: 20px; font-weight: 400; letter-spacing: 3px; padding: 16px; border-radius: 4px; border: 1px solid #28A4C0; background: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/arrow.svg) 95% center no-repeat #fff;}
.ctsbox .btn2 a{color: #fff; background: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/arrow_w.svg) 95% center no-repeat #28A4C0;}

.cts3box{ display:flex; justify-content: center; max-width: 1400px; margin: 0 auto; overflow: hidden;}
.cts3box .ctsbox{ border: 1px solid #28A4C0; background: #fff; margin: 80px 16px 0;}
.cts3box .ctsbox .photo{ width: 100%; padding: 0; height: auto; border: none;}
.cts3box .ctsbox .photo .jdsSlides li { width: 100%; height:auto; overflow: hidden;}
.cts3box .ctsbox .photo .rslides_tabs { bottom: -18px; z-index: 9;}
.cts3box .ctsbox .cts{ margin: 0; padding: 24px 16px; width: auto; box-sizing: content-box;}
.cts3box .ctsbox .name{ text-align: center; font-size: 24px; color: #333; margin-top: 16px;}
.cts3box .ctsbox .txt b{ font-size: 16px;}
.cts3box .ctsbox .btn{margin: 0px auto 0;}



.atn{max-width: 1120px; width: 100%; margin: 40px auto 0; font-size:14px ; line-height: 1.6;}
#htl .atn{ font-size: 16px;}
#htl .atn b{ display: block; color: #28A4C0; font-size: 20px; font-weight: 600; line-height: 160%; letter-spacing: 1.8px; margin-bottom: 8px; font-family: "Noto Serif JP", serif;}

.jdsTab{ overflow: hidden; max-width: 1280px; width: 100%; margin: 24px auto 0;}
.jdsTabNav{ display: flex; justify-content: center;}
.jdsTabNav li{ width: 88px; margin: 0 2px; font-size: 14px; padding: 1em 0;  text-align: center; background: #fff; border-radius: 5px; cursor: pointer; }
.jdsTabNav li.active{ background: #BF8D2B; color: #fff;}
.jdsTabMain{ background: #fff; margin: 24px auto 0; padding: 64px 48px 48px;}
.ss-hotelbox{ margin:0 0 12px 0; display: flex; justify-content: flex-start; padding-bottom: 0; overflow: visible;}
.ss-hotel { width: 180px; background-color: #fff; position: relative; box-sizing: border-box; padding-bottom: 0;border-radius: 5px; border: 1px solid #ccc; box-shadow: 1px 1px 3px #ddd; height: auto; color: #333; margin:20px 0 8px; padding: 8px; overflow: visible;}
.ss-hotel .hotel-img{ margin-bottom:0; position: relative; margin: -9px -9px 8px; width: auto; float: none;}
.ss-hotel .hotel-img .bg-img{ border-radius: 5px 5px 0 0; display:block;overflow:hidden;height:102px;background-size:100%;text-indent:-9999px; background-position: center;}
.ss-hotel .area{color:#999;font-size:12px;line-height: 120%; margin: 8px 0 0;}
.ss-hotel .hotelName{ display: block; font-size: 14px; font-weight: bold; margin: 8px 0 0; color: #000;font-weight: 700; line-height: 130%;}
.ss-hotel .rvw-score{ margin: 8px 0 0;}
.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 .hotelPlan{ display: block; font-size: 14px; margin: 8px 0 0; color: #333;line-height: 1.4;}
.ss-hotel .originalPrice{ font-size:12px; color: #767676; position: relative; text-align: right; padding:10px 0 4px 0; margin:0;text-decoration:line-through;}
.ss-hotel .hotel-price{text-align:center; margin: 8px 0 0;}
.ss-hotel .rate{ font-size: 12px; font-weight: normal; display: block; border-radius: 3px; padding:4px 6px; color: #ffffff; text-decoration: none;background:#CC0000; position: absolute; top:0;left: 0;}
.ss-hotel .hotel-price .rate em{ font-size: 14px; font-style: normal;text-decoration: none;}
.ss-hotel .hotel-price .details{display:block;color:#bf0000;font-weight:700; font-size: 18px;}
.ss-hotel .hotel-price .details em{font-size:14px;font-weight: normal;}
.ss-hotel .hotel-price .details em b{font-weight:700;}
.ss-hotel .ss-button-middle.ss-button-green{ margin-top:16px;margin-bottom:12px;background-color: #ffffff; border: none; color: #333!important; font-size: 14px; font-weight: normal; box-shadow: none;border: 1px solid #ccc; }
.ss-hotel .ss-button-middle.ss-button-green:hover {background-color: #f3f3f3; }
.swiper-container-horizontal>.swiper-scrollbar{ position: static; margin-top: 8px;}
.btnAll{ width: 90%; max-width: 520px; margin: 48px auto 0; font-family: "Noto Serif JP", serif;}
.btnAll a{ display: block; color: #fff; text-align: center; font-size: 20px; font-weight: 400; letter-spacing: 3px; padding: 16px; border-radius: 4px; border: 1px solid #24979C; background: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/arrow_w.svg) 95% center no-repeat #24979C;}
.pland{ margin: 40px auto 0; text-align: center;}
#salePlan{ background: #FFFAEA; margin-top: 0;padding-bottom: 80px;}
#salePlan .jdsTabMain h3{font-size: 20px;color: #BF8D2B;font-family: "Noto Serif JP", serif;letter-spacing: 0.5em;}
#salePlan .ttl1{ background-color: #BF8D2B;}
#salePlan .ttl{ margin-top: 20px;}
#hotelplan.ss-container{width: 1280px;margin:80px auto 0;padding: 80px 0;}
.pre #hotelplan{ background: #F4F8FF; padding: 80px 0;}
/* #hotelplan .originalPrice,#hotelplan .rate,.honban .prebtn,.pre .honbanbtn,#salePlan .min_price,#hotelplan .Discounted_price{ display: none;} */

#Searchbox{ margin: 80px auto 0; background: none; font-family: "Noto Sans JP", sans-serif;}
#Searchbox .searchWide{background:#fff; width:100%; max-width: 1280px; margin: 40px auto 80px; padding: 64px 32px; box-sizing: border-box; overflow: hidden;}
/* #Searchbox .searchWide #search-box{border:none}
#search-box p.searchSubmit a{ background: #D04A00 !important;} */

#cpn{ width: 1280px; margin: 80px auto 0; padding: 80px 0;}
#cpn ul{justify-content: center; margin: 40px auto 0; padding-bottom: 5px;}
#cpn ul li{ width: auto; margin: 0 12px; padding: 0; background: #FFF; box-shadow: none;}

.endTxt{color: #FFF; text-align: center; font-family: "Yu Mincho"; font-size: 28px; line-height: 160%; font-style: normal; font-weight: 600; padding: 8px 0; background: #8C0000;}

#salePlan [data-section='11月以降のSALEプラン']{ display: none !important;}
#hotelplan [data-section='10月までのSALEプラン']{ display: none !important;}


#COUPONbox.ss-container{ padding: 60px 0; width: 1280px; margin: 80px auto 0}


#hotelplan .htlList .htl .photo {
    position: relative; overflow: hidden;
    max-height: 169px;
}
#hotelplan .htlList .htl {
    width: 135px;
    box-sizing: border-box;
    border: 1px solid #c5c5c5;
    border-radius: 4px;
    overflow: hidden;
    line-height: 1.5;
    padding-bottom: 16px;
}
#hotelplan .htlList .htl .photo span {
    position: absolute;
    top: 0;
    left: 0;
    padding: 7px;
    font-size: 12px;
    color: #fff;
    background: rgba(0, 0, 0, 0.7);
}

#hotelplan .htlList .htl {
    width: calc((100% - 72px) / 4);
    max-width: 270px;
    margin: 0 24px 24px 0 !important;
    box-sizing: border-box;
    border: 1px solid #c5c5c5;
    border-radius: 4px;
    overflow: hidden;
    line-height: 1.5;
    padding-bottom: 16px;
}
#hotelplan .jdsTabMain{
    padding:24px 48px 24px 56px;
}
#hotelplan .swiper-scrollbar {
    display: none!important;
}
#hotelplan .htlList .htl .basic {
    padding: 16px 12px;
    background: #fff;
}
#hotelplan .htlList .htl .area {
    font-size: 12px;
    color: #666;
    margin-bottom: 8px;
}
#hotelplan .htlList .htl .htlName {
    font-size: 14px;
    font-weight: 900;
    margin-bottom: 8px;
}
#hotelplan .htlList .htl .explain {
    font-size: 12px;
}
#hotelplan .htlList .htl .htlBtn {
    display: flex;
    justify-content: space-between;
    padding: 0 16px;
}
#hotelplan .htlList .htl .htlBtn li {
    width: 48%;
}

#hotelplan .htlList .htl .htlBtn li a {
    display: block;
    color: #232C3F;
    font-size: 14px;
    padding: 8px 0;
    text-align: center;
    border-radius: 3px;
    border: 1px solid #232C3F;
    font-weight: 600;
}

#hotelplan .htlList {
    display: flex;
    flex-wrap: wrap;
    transform: none !important;
    transition: none !important;
}

.markLink ul { max-width: 1100px;}
.Link-list { width:calc( 95% / 5)}
.Link-list:nth-of-type(3) { width:calc( 100% / 5 + 50px) }
.ss-right dd li:nth-of-type(3) a { line-height: 1.2; padding: 32px 0 6px 0;}


/* 20250116 */
.ooedoonsen .txt {color: #333;}
.ooedoonsen .txt em {display: block; font-size: 20px; font-weight: 700;margin-bottom: 16px;letter-spacing: 2.4px;}
.ctnBtnBox {
    width: 72%;
    max-width: 1000px;
    margin: 0 auto;
    font-family: 'Yu Mincho';
}
.ctsBtn {
    background: #fff;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    padding: 40px;
    color: #333333;
    
    font-weight: 600;
    line-height: 1.5;
    cursor: pointer;
}
.ctsBtn:hover {
    color: inherit;
}
.ctsBtn p:first-of-type {
    width: 55%;
    margin-right: 100px;
    font-size: 16px;
    color: #333;

}
.ctsBtn p:last-of-type {
    width: calc(45% - 100px);
    color: #CC0000;
    font-size: 28px;
    position: relative;
}
.ctsBtn p:last-of-type::after {
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
}
.ctsBtn p:last-of-type em {
    font-size: 46px;
    margin-right: 5px;
 }

.ctnBtnBox .btn{ width: 90%; max-width: 400px; margin: 24px auto 0;}
.ctnBtnBox .btn a{ display: block; color: #fff; text-align: center; font-size: 18px; font-weight: 400; letter-spacing: 2px; padding: 16px; border-radius: 4px; border: 1px solid #28A4C0; background: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/arrow.svg) 95% center no-repeat #28A4C0;}
.cts3box .txt b {text-align: center;}
.cts3box .txt {color: #333;
    /* font-family: 'Yu Mincho';font-weight: 600; */
}
.cts3box .ctsbox .hotel-price .ppopup span.details{background: none;align-items: baseline;font-style: normal;font-weight: 600;}
.cts3box .ctsbox .hotel-price {font-family: 'Yu Mincho';}
.ctsbox .hotel-price {padding-bottom: 0;}

#search-box #domestic-search-container .searchCategory li.on{
    background-color:#BF8D2B ;
}


#search-box .searchNavi li.on::after{
    border-top: 7px solid #BF8D2B !important;
}
#search-box .searchSubmit a{
 background-color: #D04A00 !important;
}
.pagetop a{
    background-color: #BF8D2B !important;
}
.ss-right dd li a{
    color: #BF8D2B !important;
}


.ttlicon_w::after {
    background: none;
    width: 30px;
    height: 30px;
    left: 50%;
    margin-left: -15px;
    top: 4px;
  }
.ttlicon_w.icons1::after{ top: 2px; width: 36px; margin-left: -18px;}

  .ss-right dd ul {
    border: 1px solid #BF8D2B !important;
    border-radius: 6px;
    overflow: hidden;
  }
  .ss-right dd li {
    position: relative;
    border-bottom: 1px solid #BF8D2B !important;
    font-size: 75%;
    font-weight: 700;
    text-align: center;
    line-height: 2;
  }

.ttlicon_w.icons1::after{ content: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/icon_pophotel.svg);}
.ttlicon_w.icons2::after{ content: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/icon_coupon.svg);}
.ttlicon_w.icons3::after{ content: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/icon_search.svg);}
.ttlicon_w.icons4::after{ content: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/icon_recommend.svg);}
.ttlicon_w.icons5::after{ content: url(https://img.travel.rakuten.co.jp/select/ooedoonsen/sale/images/icon_dom.svg);}

.coupon__box__holder { justify-content: center; width: 916px;}

.select-kome { text-align: center;}

.ctsbox .cts { min-height: 530px;}
.cts3box .ctsbox .cts { min-height: auto;}

