.sp { display: none !important; }
#widewrapper{width: 100%; position: relative; clear: both; font-family: 'メイリオ', 'Meiryo';}
.ss-container{ margin: 40px 0 0; border-radius: 0 !important;}
#contentsArea{ background:#fff;}
a:hover { opacity: 0.8; text-decoration: none !important; }

.kv{ height: 400px; position: relative;}
.kv h1{ font-family: 'Noto Serif JP', serif; font-size: 68px; color: #fff; width: 100%; text-align: center; position: absolute; left: 0; top: 100px; font-weight: 500; line-height: 100%; letter-spacing: 15.36px; text-shadow:0px 2px 4px rgba(0, 0, 0, 0.50);}
.kv h1 span{ display: block; margin: 44px auto 0; color: #FFF; text-align: center; text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.40);  font-size: 24px; font-family: 'メイリオ', 'Meiryo',sans-serif; font-style: normal; font-weight: 500; line-height: 100%; letter-spacing: 0.8px;}
.kv h1 span b{ font-size: 40px; font-weight: normal;}
.kv p{ position: absolute; left: 50%; transform:translateX(-50%); bottom: 80px; display: table; margin: 42px auto 0; border-radius: 4px; background: rgba(0, 0, 0, 0.5); padding: 12px 24px;color: #FFF; font-size: 16px; font-style: normal; font-weight: 500; line-height: 100%; letter-spacing: 1.6px;}
.kv p b{ font-size: 24px; font-weight: normal;}
.kv p small{ font-size: 20px;}


/**
 * ----------------------------------------
 * animation focus-in-expand
 * ----------------------------------------
 */
 @-webkit-keyframes focus-in-expand { 
0% { letter-spacing: -0.5em; -webkit-filter: blur(12px); filter: blur(12px); opacity: 0; } 
100% { -webkit-filter: blur(0px); filter: blur(0px); opacity: 1; } }
@keyframes focus-in-expand { 
0% { letter-spacing: -0.5em; -webkit-filter: blur(12px); filter: blur(12px); opacity: 0; } 
100% { -webkit-filter: blur(0px); filter: blur(0px); opacity: 1; } }
.focus-in-expand { -webkit-animation: focus-in-expand 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) both; animation: focus-in-expand 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) both; }

.ttl{ margin: 40px auto; padding-bottom: 24px; font-family: 'Noto Serif JP', serif; color: #957113; text-align: center; font-size: 36px; font-style: normal; font-weight: 600; line-height: 100%; letter-spacing: 8.64px; position: relative;}
.ttl::after{ display: block; content: ""; width: 300px; height: 2px; background: #957113; position: absolute; left: 50%; bottom: 0; transform: translateX(-50%);}


/* coupon */
#coupon{ margin: 0; padding: 32px 0; background: #A21A1A;}
.couponBox{ display: flex; justify-content: center; align-items: center; gap: 40px;}
.couponBox .lf{ margin-right: 16px;}
.couponBox .txt{color: #FFF; font-size: 34px; font-weight: 500; line-height: 140%; /* 50.4px */ letter-spacing: 1.44px; position: relative;}
.couponBox .txt em{ font-style: normal; text-decoration: underline;text-underline-offset:8px}
/* .couponBox .txt::after{ display: block; content: ""; width: 255px; height: 1px; background: #fff; position: absolute; right: 10px; top: 60px;} */
.couponBox .txt span{ display: block; font-weight: 400; margin-top: 20px; font-size: 20px;line-height: 140%; /* 28px */ letter-spacing: 1.6px;}
.coupon__filter__guide{ margin: 24px 0 0; }

/* search */
#Searchbox{padding:64px 0; background: #F5F5F5; margin: 0;}
#Searchbox .ttl::after{ width: 100px;}
#Searchbox .searchWide{background:#fff; width:100%; max-width: 1280px; margin:0 auto 0; padding:0 32px 64px; box-sizing: border-box; overflow: hidden;}
#Searchbox .searchWide #search-box{border:none}
#search-box.verB.test .dhAll.dh{ margin-top: 64px;}
#search-box p.searchSubmit a{ background: #9B1F1F !important;}


.atn{max-width: 1280px; width: 100%; margin: 16px auto 40px; font-size:12px ; line-height: 1.6;}
.navi { position: fixed; bottom: 0px; right: 10px; z-index: 997; display: none;}

#MAPBOX{ width: 100%; max-width: 1280px; margin: 64px auto 0; padding-bottom: 64px;}
#MAPBOX .square{ margin-top: 32px;}
.mapArea .column-list .areaNm{ display: flex; justify-content: center; align-items: center; padding: 0;}
.couponBg{background-color: #9B1F1F;padding: 56px 0;}
.couponBg #ac2{width: 1280px;margin:0 auto;padding: 60px;}
.cpn-all-click {
    display: flex;
    justify-content: center;
}
.cpn-all-click-btns {
    border: none;
    width: 420px;
    margin: 20px auto;
    padding: 16px 0;
    font-size: 24px;
    color: #fff;
    background-color: #BF0000;
    border-radius: 50px;
    text-align: center;
    cursor: pointer;
}
.wn {
    font-size: 12px;
    line-height: 1.6;
    margin: 24px auto 0;
    width: 100%;
    text-align: center;
}
.coupon__filter__guide::after {
    content: "";
    background-size: 16px;
    width: 16px;
    height: 16px;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAiCAMAAADmrkDzAAAARVBMVEUAAAAwMDAwMDAwMDAxMTEzMzMyMjIzMzMzMzMyMjIzMzM1NTUyMjIwMDAzMzMzMzMyMjIxMTEyMjIzMzMyMjI0NDQzMzP51LwrAAAAFnRSTlMAIEAwoJ+Av+9/r2BgEFDP3x9w3+9Aa03MBwAAAHlJREFUeNrdykUSQkEUA8DvriPv/kfFSRhSxQ7rdWcfkhdQylEZ1HI07VWHofXGQ4cBQ4dxwpjzq5lDhrF0djVxoLHadrVQ4LHZnl0hyMFBDw56cNCDA+PBQQ9HQY95RRCDuM29GI01fzzahE+Gsychzx7EKTVnb3YA6mQP/gr9fQ8AAAAASUVORK5CYII=);
}
.cp_box label:before {
    margin-right: -120px;
    top: auto;
    bottom: 38px;
    border-top: 1px solid #AE7F00;
    border-right: 1px solid #AE7F00;
}
.cp_box label:after {
    content: 'クーポンを見る';
    width: 300px;
    padding: 16px 0;
    line-height: 1;
    color: #957113 !important;
    border: 1px solid #AE7F00;
    background: #fff;
}
.cp_box input:checked + label:after {
    content: '  閉じる';
}
.cp_box input:checked + label::before {
    margin-right: -120px;
    top: auto;
    bottom: 36px;
    border-top: 1px solid #AE7F00;
    border-right: 1px solid #AE7F00;
}
.coupon__title {
    flex-direction: row;
    justify-content: flex-start;
    background: none;
    font-size: 24px;
    color: #333;
    margin: 24px auto 0;
    padding-bottom: 8px;
    border-bottom: 1px solid #957113;
    max-width: 1016px;
    line-height: 1;
    font-family: "游明朝", "Yu Mincho","ヒラギノ明朝 ProN W3","HiraMinProN-W3","HG明朝B","ＭＳ Ｐ明朝","MS PMincho","MS 明朝","Times","Times New Roman",serif;
}
.coupon__title b {
    color: #957113;
    padding-right: 10px;
    font-size: 24px;
}
.onsenbg{background-color: #F2EDE2;padding: 50px 0;}
.onsenbg .ss-container{background:none;width: 1280px;margin: 0 auto;}
.onsenbg .ss-container .column_4{margin-top: 32px;}
#ac3{width: 1280px;margin: 0 auto;padding-bottom: 20px;}
#ac3 .nTabBoxLv1{display: flex;padding: 16px;background-color: #F3F3F3;margin: 30px 0;}
#ac3 .nTabBoxLv1 li{background-color: #fff;padding: 11px 16px;border-radius: 3px;margin-right: 10px;font-size: 16px;}
#ac3 .nTabBoxLv1 li.active{background-color: #957113;color: #fff;}
#ac3 .nTabBoxLv1 li:hover{cursor: pointer;}

#ac3 .ss-hotelbox{overflow: visible;}
#ac3 .ss-hotelbox .ss-hotel {
    width: 204px;
    border: none;
    overflow: visible;
    padding: 0 0 8px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
    border-radius: 4px;
    margin-top: 30px;
}
#ac3 .pointUp.rankBox .ss-hotel .htlrank {
    position: absolute;
    left: 12px;
    top: -25px;
    background: url(https://img.travel.rakuten.co.jp/special/onsenyado-offers/202601/images/rank.png) no-repeat;
    width: 27px;
    height: 23px;
    font-size: 12px;
    color: #fff;
    text-align: center;
    line-height: 1;
    font-style: normal;
    font-weight: bold;
    box-sizing: border-box;
    padding: 9px 0 0 1px;
    z-index: 1;
}

#ac3 .pointUp.rankBox .ss-hotel:nth-of-type(1) .htlrank {
    background: url(https://img.travel.rakuten.co.jp/special/onsenyado-offers/202601/images/rank1.png) no-repeat;
    color: #333;
}

#ac3 .pointUp.rankBox .ss-hotel:nth-of-type(2) .htlrank {
    background: url(https://img.travel.rakuten.co.jp/special/onsenyado-offers/202601/images/rank2.png) no-repeat;
    color: #333;
}

#ac3 .pointUp.rankBox .ss-hotel:nth-of-type(3) .htlrank {
    background: url(https://img.travel.rakuten.co.jp/special/onsenyado-offers/202601/images/rank3.png) no-repeat;
    color: #333;
}
#ac3 .pointUp .ss-hotel .hotel-img {
    border-radius: 5px 5px 0 0;
    margin: 0 0 8px;overflow: hidden;
}

#ac3 .ss-hotel .bg-img {
    display: block;
    transition: transform ease 0.4s;
    background-position: center;
    background-size: cover;
    height: 140px;
}
#ac3 .ss-hotel .hotel-container {
    margin: 0 8px;
}
#ac3 .ss-hotel #rvw-score {
    margin: 0 8px;
}
#ac3 .ss-hotel .stars {
    font-size: 14px;
    letter-spacing: 3px;
    margin-right: 7.5px;
    width: 88px;
    text-align: center;
    display: inline-block;
    position: relative;
}
#ac3 .ss-hotelbox .ss-hotel img {
    max-height: 290px;
}
#ac3 .swiper-wrapper li img {
    width: 100%;
}
#ac3 .ss-hotel .review-score {
    color: #bf0000;
    display: inline-block;
    font-weight: 700;
    font-size: 14px;
    line-height: 20px;
}
#ac3 .hotelicon{display: flex;margin-bottom: 5px;}
#ac3 .hotelicon li{margin-right: 10px;}
#ac3 .hotelicon li img{height: 17px;width: auto;}
#ac3 .ss-buttons{margin: 0 8px 8px; width: calc(100% - 16px);}
#ac3 .ss-hotel .ss-buttons .ss-button-middle.ss-button{width: 32%;}
#ac3 .ttl-lv2{font-size: 24px;color: #333;letter-spacing: 0.1em;margin: 20px 0;}
#ac3 .wn{text-align: left;}
#ac3 .swiper-container{padding: 0 10px;}

.onsenbtn {
    width: 300px;
    padding: 16px 0;
    line-height: 1;
    color: #957113 !important;
    border: 1px solid #AE7F00;
    background: #fff;
    display: block;
    text-align: center;
    border-radius: 8px;
    margin: 20px auto 0;
}

.cpn-all-click-btns.acquired, .cpn-all-click-btns.finished, .cpn-all-click-btns.expired {
    background: #666;
    color: #fff;
    cursor: not-allowed;
}

.coupon__box__holder{padding-bottom: 60px;}
.txt-search{font-size: 13px; padding-top: 24px;}
.shNote {
padding-top: 20px;
    font-size: 14px;
    margin: 0 auto;
}