@charset "UTF-8";
 .pc {
    display: none !important;
}
.ss-contents img {
    width: 100%;
    vertical-align: bottom;
}
.ss-contents {
    position: relative;
    font-family:"Noto Sans JP";
    line-height: 1.6;
    background: #fff;
    overflow: hidden;
}
#sRight{position: fixed !important;}
.ss-center{
    background: url(../images/bg.png) repeat-y;
    overflow: hidden;
}
.topbnr {
    width: 100%;
}
.topbnr img{width: 100%;display: block;}
.navi{display: flex; justify-content: space-between; flex-wrap: wrap; margin: 16px 24px 56px; padding: 0 16px; position: relative;}
.navi:before{position: absolute; content: ''; width: 204px; height: 44px; background: url(../images/right6.png) no-repeat; background-size: 100% auto; left: -60px;bottom: -40px;}
.navi li{margin: 0 0 16px; width: 47.5%;}
.navi li img{display: block; width: 100%;}
.ss-container {
    margin: 0 16px 176px;
    background: none;
    border-bottom: none;
}
.midashi{padding-right: 16px;}
.midashi img{
    margin: 0 auto 16px;
    display: block;
    width: 90%;
}
#ACTIVITY{position: relative;}
#ACTIVITY:before{position: absolute; content: url(../images/left1_sp.png); left: -16px; bottom: -100px;}
#ACTIVITY:after{position: absolute; content: ''; width: 50px; height: 100px; background: url(../images/right2.png) no-repeat; background-size: 100% auto; left: calc(50% - 25px); bottom: -130px;}
#ACTIVITY .midashi{position: relative;}
#ACTIVITY .midashi:before{position: absolute; content: ''; background: url(../images/left1.png) no-repeat; width: 90px; height: 24px; background-size: 100%; right: -20px; top: 12px;}
#ACTIVITY .bgWaku{position: relative;padding: 32px 16px; background: #fff;}
#ACTIVITY .bgWaku:before{
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    top: 0;
    left: 0;
    background: linear-gradient(
    to bottom,
    #EC9254 30%,
    #EC9052 30%,
    #F1AB66 60%,
    #F4F4E9 90%,
    #fff 100%
  );
  z-index: 0;
}
#ACTIVITY h3{position: relative;z-index: 2;margin-bottom: 16px;}
#ACTIVITY h3 img.sp {
    display: block;
    width: 85%;
    margin: 0 auto;
}
#ACTIVITY .actBtn {
    padding: 24px 0;
}
#ACTIVITY .listItem a{display: block;}
.listItem .txt {
    display: block;
    margin: 32px auto 16px;
    width: 52px;
}
.campAt_con dt {
    background-color:#f2f2f2;
    padding:5px 16px;
    margin-bottom:10px;
    font-weight:700
}
.campAt_con dd {
    text-align:left;
    line-height:1.6;
    font-size:16px;
    margin-bottom:20px
}

.opening{margin-top: 56px;}
.opening img:first-child{display: block; margin: 0 auto 0; width: 75%;}
.opening img:last-child{width: 100%; margin: 24px auto 0; display: block;}
.black {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999998;
}
.popUpplan {
    width: calc(100% - 32px);
    left: 16px;
    position: absolute;
    top: 15%;
    background: #fff;
    z-index: 99999999;
    border-radius: 12px;
    margin-top: -90px;
}
.popUpplan p#popUpplan {
    padding: 20px;
    color: #000;
    font-size: 15px;
    line-height: 35px;
    height: 500px;
    overflow-y: scroll;
}
@media screen and (max-width: 321px) {
    .popUpplan p#popUpplan {
        height: 450px;
    }
}
@media screen and (min-width: 414px) {
    .popUpplan p#popUpplan {
        height: 600px;
    }
}
.popUpplan > span {
    display: block;
    position: absolute;
    cursor: pointer;
    right: -10px;
    top: -10px;
    width: 40px;
    height: 40px;
    text-indent: -9999999px;
    background: url("https://travel.rakuten.co.jp/bus/campaign/point/202310/images/close_svg.svg") no-repeat;
    background-size: cover;
}
.jds_popUp_plan {
    animation: popup 0.6s cubic-bezier(0.22, 1, 0.36, 1) 1 forwards;
}
.popUp {
    animation: popup 0.6s cubic-bezier(0.22, 1, 0.36, 1) 1 forwards;
}
@keyframes popup {
    0% {
        transform: translateY(40px) scale(0.8);
        opacity: 0;
    }
    100% {
        transform: translateY(0) scale(1);
    }
    80%, 100% {
        opacity: 1;
    }
}

/* BUS search */
#BUS, #BUS .midashi{position: relative;}
#BUS:before{position: absolute; content: url(../images/right4_sp.png); bottom: -120px; left: calc(50% - 80px);}
#BUS .midashi:before{position: absolute; content: url(../images/righ3_sp.png); right: -16px; top: 0;}
#BUS .osuBox dl{line-height: 1.6; font-size: 14px;}
#BUS .osuBox dl dt{position: relative; z-index: 1;}
#BUS .osuBox dl dt{color: #333; padding: 10px 16px; position: relative; border-bottom: 1px dotted #ccc; z-index: 1; display: block;}
#BUS .osuBox dl dt:after{position: absolute; content: ''; width: 10px; height: 10px; right: 16px; top: calc(50% - 5px); transform: rotate(45deg); border-bottom: 1px solid #6D6D6D; border-right: 1px solid #6D6D6D;}
#BUS .osuBox dl dd{margin-bottom: 18px; background: #F3F3F3;}
#BUS .osuBox dl dd > a{color: #6D6D6D; padding: 10px 0; margin: 0 16px 0 10px; border-bottom: 1px dotted #ccc;display: block; position: relative; z-index: 100;}
#BUS .osuBox dl dd > a:after{position: absolute; content: ''; width: 10px; height: 10px; right: 4px; top: calc(50% - 5px); transform: rotate(45deg); border-top: 1px solid #6D6D6D; border-right: 1px solid #6D6D6D;}
.focus{display: flex; justify-content: space-between; position: relative; z-index: 2; margin-bottom: 24px;}
.focus li{width: 48%; opacity: .7; position: relative;}
.focus li:active, .focus li.active{opacity: 1;}
.focus li.first.active:before{position: absolute; background: url(../images/target.png) no-repeat; background-size: 100% auto; width: 40px; height: 28px; content: ''; bottom: 0; right: 10px;}
.focus li.second.active:before{position: absolute; background: url(../images/target.png) no-repeat; background-size: 100% auto; width: 40px; height: 28px; content: ''; bottom: 0; left: 10px; transform: scaleX(-1);}
.focus li img{display: block; width: 100%;}
    .micromodal {
      display: none;
    }

    .micromodal.is-open {
      display: block;
    }

    .micromodal__overlay {
      z-index: 1000;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      display: flex;
      justify-content: center;
      align-items: center;
      background: rgba(0, 0, 0, 0.65);
    }
    .micromodal__container {
      box-sizing: border-box;
      position: relative;
      width: calc(100% - 32px);
      padding: 24px 24px 8px;
      background: #fff;
      z-index: 101;
      max-height: 100%;
      overflow-y: scroll;
    }

    .micromodal__container img {
      width: 100%;
    }

    .micromodal__overlay span.close {
      display: block;
      position: absolute;
      cursor: pointer;
      right: 0;
      top: 0;
      width: 30px;
      height: 30px;
      text-indent: -9999999px;
      background: url(../images/close.png) no-repeat;
      background-size: 100%;
      z-index: 10;

    }
    .micromodal__overlay .busLink h3{text-align: center; font-size: 18px; margin: 8px 0 16px; line-height: 1.4;}
    .micromodal__overlay .busLink ul{margin: 0 4px;}
    .micromodal__overlay .busLink ul li{margin-bottom: 8px;}
    .micromodal__overlay .busLink ul li a{display: block; border-radius: 8px; background: #2692B0; text-align: center; color: #fff; padding: 12px 0; font-size: 14px;}
    .micromodal__overlay .busLink ul li a span{display: inline-block; padding: 0 8px;}
    .micromodal[aria-hidden="false"] .micromodal__overlay {
      animation: microModalFadeIn 0.2s cubic-bezier(0, 0, 0.2, 1);
    }

    .micromodal[aria-hidden="false"] .micromodal__container {
      animation: microModalSlideIn 0.2s cubic-bezier(0, 0, 0.2, 1);
    }

    .micromodal .micromodal__container,
    .micromodal .micromodal__overlay {
      will-change: transform;
    }

    @keyframes microModalFadeIn {
      from {
        opacity: 0;
      }

      to {
        opacity: 1;
      }
    }

    @keyframes microModalSlideIn {
      from {
        transform: translateY(15%);
      }

      to {
        transform: translateY(0);
      }
    }


/* COUPON */
#COUPON{background: none; position: relative;}
#COUPON:before{position: absolute; content: url(../images/left6_sp.png); bottom: -140px; left: calc(50% - 25px);}
#COUPON .midashi{background: url(../images/right4_2_sp.png) no-repeat right bottom;}
.cpnTwo .cpnholder {position: relative; background: #fff;padding: 44px 8px 16px; box-sizing: border-box; display: flex; justify-content: space-between; flex-wrap: wrap; align-items: flex-start;}
.jssBox.allList:before{position: absolute; content:''; width: 100%; height: 40px; left: 0; top: 0; background: linear-gradient(
    to bottom,
    #0398C2 30%,
    #31A3C7 40%,
    #90D2EC 65%,
    #C9E7F2 80%,
    #fff 100%
  );
  z-index: 0;
}

.cpnTwo .cpnholder li.jss{margin: 0 0 12px; border: 1px solid #ccc; z-index: 1; padding: 1.5%; width: 45.2%; height: auto;}
.cpnTwo ul.svs li span.user{display: block; line-height: 1.4; margin-top: 4px;}





/* search */
#search-box {
    position: relative;
    margin: 0 16px;
    padding: 32px 16px;
}
#search-box:before{
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    top: 0;
    left: 0;
    background: linear-gradient(
    to bottom,
    #EC9254 30%,
    #EC9052 30%,
    #F1AB66 60%,
    #F4F4E9 90%,
    #fff 100%
  );
  z-index: 0;
}
#search-box #search-box-body{position: relative;z-index: 2;}

/* ONSEN */
.osuBox {position: relative; background: #fff; padding: 44px 16px 32px;}
.osuBox:before{position: absolute; content:''; width: 100%; height: 40px; left: 0; top: 0; background: linear-gradient(
    to bottom,
    #0398C2 30%,
    #31A3C7 40%,
    #90D2EC 65%,
    #C9E7F2 80%,
    #fff 100%
  );
  z-index: 0;
}
#ONSEN {margin-bottom: 64px;}
#ONSEN .osuBox{padding-bottom: 16px;}
#ONSEN .swiper-slide img{display: block; width: 100%; margin-bottom: 8px;}
#ONSEN .swiper-slide span{display: block; font-size: 13px; color: #333;}
.onsenBnr .swiper-wrapper{transform: none; justify-content: space-between; flex-wrap: wrap;}
.onsenBnr .swiper-wrapper .swiper-slide{width: 48.5%; margin-bottom: 16px;}



/* INFO */
#INFO{position: relative; margin-bottom: 200px;}
#INFO:before{position: absolute; content: url(../images/left3_sp.png); right: -16px; bottom: -160px;}
#INFO .swiper-container{padding-bottom: 24px;z-index: 2;}
#INFO .swiper-slide{font-size:13px;border:1px solid #C3C3C3;border-radius:3px;padding-bottom:12px; color: #333; line-height: 1.5;}
#INFO .swiper-slide p{margin:10px;}
#INFO .swiper-slide p span{display: block;}
#INFO .swiper-slide img{width:100%;object-fit:cover;}
#INFO .swiper-slide .kiji_link{display:block;width:90%;margin:auto;text-align:center;color:#fff;background:#1EABBE;padding:10px 0;font-size:14px;font-weight:bold;}
#INFO .swiper-slide .kiji_link:hover{opacity:0.8;}

#CAMP{margin-bottom: 64px;}
#CAMP .campList {
    padding: 44px 16px 16px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
    background: #fff;
}
#CAMP .campList:before{position: absolute; content:''; width: 100%; height: 40px; left: 0; top: 0; background: linear-gradient(
    to bottom,
    #0398C2 30%,
    #31A3C7 40%,
    #90D2EC 65%,
    #C9E7F2 80%,
    #fff 100%
  );
  z-index: 0;
}

#CAMP .campList li {
    width:48.5%;
    background-color: #fff;
    border: none;
    border-radius: 0;
}
#CAMP .campList li span {
    font-size: 13px;
    color: #333;
    padding: 8px;
    display: block;
}
#ACT02 .ttl {
    margin-bottom: 16px;
}
#ACT02 .appDown {
    display: flex;
    margin-bottom: 40px;
    justify-content: space-between;
}
#ACT02 .appDown li {
    width: calc(50% - 5px);
}
#popUpplan .contents .ttlImg {
    width: 100%;
    margin: 20px auto 40px;
    display: block;
}
#popUpplan .contents img {
    width: 100%;
    vertical-align: bottom;
}
.ss-right dd li:nth-of-type(5){border-bottom: none;}
.ss-right dd li{line-height: initial;}
.ss-right dd li a{background: #E3B675; padding: 12px 5px;}
.ss-right dd li a img{width: 90%; display: block; margin: 0 auto;}

.small_font{font-size:85%;}
