@charset "UTF-8";

@media screen and (min-width: 721px) {
  .sp {
    display: none;
  }

  #topBnrBox,
  #topBnrBox.oneTopImg {
    min-height: 260px;
  }
  .sp {
    display: none !important;
  }

  .ss-title {
    width: 100%;
    background-color: #fff;
  }
  #topBnrBox {
    width: 100%;
    display: block !important;
    background-size: cover;
  }
}

@media screen and (max-width: 720px) {
  html {
    font-size: 62.5% !important;
  }
  .pc {
    display: none;
  }
  #topBnrBox.oneTopImg h1 img.sp {
    width: 100%;
    margin: 0 auto;
    display: block;
  }
}
@media screen and (min-width: 721px) {
  html {
    overflow-x: auto !important;
  }

  #topBnrBox {
    width: 100%;
    background: url(https://img.travel.rakuten.co.jp/special/sales/template/html/images/pht.jpg)
      top center/cover no-repeat #e9e9eb;
  }
}

#topBnrBox {
  position: relative;
}

* html .clearfix {
  height: 1%;
}
a:link,
a:visited {
  color: #1d54a7;
}
a:hover {
  text-decoration: none;
}
li,
ul {
  list-style: none;
}
img {
  vertical-align: bottom;
}
em {
  font-style: normal;
}
@media screen and (min-width: 721px) {
  .sp {
    display: none !important;
  }
}

@media screen and (min-width: 0px) and (max-width: 720px) {
  .pc,
  body > a > img {
    display: none;
  }
  html {
    font-size: 62.5% !important;
  }
  body {
    font-size: 160% !important;
    overflow-x: hidden;
  }
}

@media screen and (min-width: 721px) {
  .sp {
    display: none !important;
  }
  .ss-title {
    width: 100%;
    background-color: #fff;
  }
}
@media screen and (max-width: 720px) {
  .pc {
    display: none;
  }
}
.ss-right {
  color: #fff;
  z-index: 16;
  right: 0;
  display: none;
}
#sRight {
  position: fixed;
  right: 0;
  bottom: 0;
}

@media screen and (min-width: 0px) and (max-width: 720px) {
  #sRight,
  .ss-center {
    font-family: "Noto Sans JP", sans-serif;
    color: #333;
  }
}
.pagetop {
  width: 96px;
  margin: 0 auto;
}

.pagetop a {
  background-color: #00b900;
  border-radius: 5px 5px 0 0;
  display: block;
  line-height: 0;
  font-size: 0;
  height: 50px;
  position: relative;
}
@media screen and (max-width: 720px) {
  .pagetop {
    width: 50px;
    margin-right: 0;
  }
}
@media screen and (max-width: 720px) {
  .pagetop a {
    height: 35px;
  }
}
.pagetop a:after {
  display: block;
  position: absolute;
  top: 50%;
  right: 50%;
  width: 10px;
  height: 10px;
  margin-top: -2px;
  margin-right: -7px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  content: "";
  box-sizing: content-box;
}
.globalNav {
  position: relative;
  top: 0;
  z-index: 20;
  display: block !important;
  opacity: 1 !important;
}
.globalNav.active {
  position: fixed;
  display: block !important;
  width: 100%;
  opacity: 1 !important;
}
@media screen and (min-width: 721px) {
  .gNav-list a:before,
  .globalNav ul:before {
    content: "";
  }
  .globalNav {
    position: relative;
    background: #f3f3f3;
    box-shadow: 0 0 5px #ccc;
    font-size: 15px;
  }
  .globalNav ul {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .globalNav ul:before {
    position: absolute;
    top: 6px;
    left: -60px;
    display: none;
    padding-left: 60px;
    width: 56px;
    height: 56px;
  }
  .gNav-list,
  .gNav-list a {
    display: flex;
    height: 54px;
  }
  .gNav-list {
    position: relative;
    background: #f3f3f3;
    vertical-align: middle;
    align-items: center;
    flex-wrap: wrap;
  }
  .gNav-list a {
    width: 100%;
    color: #333 !important;
    text-decoration: none;
    font-weight: 700;
    font-size: 16px;
    align-items: center;
    justify-content: left;
  }
  .gNav-list a span {
    position: relative;
    display: flex;
    padding: 0 24px 0 56px;
    height: 54px;
    align-items: center;
    justify-content: flex-start;
  }
  .gNav-list.on,
  .gNav-list:hover,
  .gNav-list:hover a,
  .gNav-list:hover span {
    background-color: #00b900;
    color: #fff !important;
    cursor: pointer;
  }
  .gNav-list a span:before {
    position: absolute;
    top: 50%;
    left: 14px;
    display: block;
    margin-top: -20px;
    width: 40px;
    height: 40px;
    background-image: url(https://img.travel.rakuten.co.jp/camp/50luxday/rte/images/globalNewGreen-n.svg);
    background-size: 80px auto;
    background-repeat: no-repeat;
    content: "";
  }
  .gNav-list.on a {
    background-color: #00b900;
    color: #fff !important;
  }
  .gNav-list.on a span:before,
  .gNav-list:hover a span:before {
    position: absolute;
    top: 50%;
    left: 14px;
    margin-top: -20px;
    width: 40px;
    height: 40px;
    background-image: url(https://img.travel.rakuten.co.jp/camp/50luxday/rte/images/globalNewWhite-n.svg);
    content: "";
    content: "";
  }
  .gNav-list a.dp span:before,
  .gNav-list.on a.dp span:before,
  .gNav-list:hover a.dp span:before {
    background-position: -48px -47px;
  }
  .gNav-list a.dh span:before,
  .gNav-list.on a.dh span:before,
  .gNav-list:hover a.dh span:before {
    background-position: 0 0;
  }
  .gNav-list a.ov span:before,
  .gNav-list.on a.ov span:before,
  .gNav-list:hover a.ov span:before {
    background-position: 0 -90px;
  }
  .gNav-list a.play span:before,
  .gNav-list.on a.play span:before,
  .gNav-list:hover a.ov span:before {
    background-position: -48px -90px;
  }
  .gNav-list a.bus span:before,
  .gNav-list.on a.bus span:before,
  .gNav-list:hover a.bus span:before {
    background-position: 0 -44px;
    background-size: 84px auto;
  }
  .gNav-list a.car span:before,
  .gNav-list.on a.car span:before,
  .gNav-list:hover a.car span:before {
    width: 44px;
    background-position: -58px -2px;
    background-size: 97px auto;
  }



  
  .gNav-list a.top span:before {
    position: absolute;
    top: 50%;
    left: 18px;
    display: block;
    margin-top: -20px;
    width: 40px;
    height: 40px;
    background: url(https://img.travel.rakuten.co.jp/camp/template/images/iconTop_black.svg)
      center center no-repeat;
    background-size: 30px;
    content: "";
  }
  .gNav-list:hover a.top span:before {
    background: url(https://img.travel.rakuten.co.jp/camp/template/images/iconTop.svg)
      center center no-repeat;
    background-size: 30px;
  }
}
@media screen and (max-width: 720px) {
     .globalNav ul {
        overflow-x:scroll;
        background: #f3f3f3;
        box-shadow: 0 0 5px #ccc;
        white-space: nowrap;
    }

    .gNav-list {
        position: relative;
        float: none;
        display: inline-block;
        width: 66px;
    }

    .globalNav .clearfix {
        background-color: #f3f3f3;
    }

    .gNav-list a {
        position: relative;
        display: block;
        padding-top: 40px;
        padding-bottom: 3px;
        background: #f3f3f3;
        color: #333;
        text-align: center;
        text-decoration: none;
        letter-spacing: -.5px;
        font-weight: 400;
        font-size: 10px;
    }

    #globalNav .clearfix {
        background: #f3f3f3;
    }

    .gNav-list.on,.gNav-list:hover {
        background-color: #00b900;
        color: #fff;
    }

    .gNav-list a:hover,.gNav-list.on a {
        background-color: #00b900;
        color: #fff;
    }

    .gNav-list a.bus:after,.gNav-list a.car:after,.gNav-list a.cpn:after,.gNav-list a.dh:after,.gNav-list a.dp:after,.gNav-list a.ov:after,.gNav-list a.asobi:after,.gNav-list a.play:after {
        position: absolute;
        top: 5px;
        left: 50%;
        display: block;
        margin-left: -16px;
        width: 40px;
        height: 40px;
        background-image: url(https://img.travel.rakuten.co.jp/camp/template/images/globalNewGreen.svg);
        background-size: 76px auto;
        background-repeat: no-repeat;
        content: "";
    }

    .gNav-list.on a:after,.gNav-list:hover a.bus:after,.gNav-list:hover a.car:after,.gNav-list:hover a.cpn:after,.gNav-list:hover a.dh:after,.gNav-list:hover a.dp:after,.gNav-list:hover a.ov:after,.gNav-list:hover a.asobi:after {
        background-image: url(https://img.travel.rakuten.co.jp/camp/template/images/globalNewWhite.svg);
    }

    .gNav-list a.dh:after,.gNav-list.on a.dh:after {
        background-position: 0 0;
    }

    .gNav-list a.dp:after,.gNav-list.on a.dp:after {
        background-position: -40px -42px;
    }

    .gNav-list a.ov:after,.gNav-list.on a.ov:after {
        background-position: 0 -79px;
        background-size: 70px auto;
    }

    .gNav-list a.car:after,.gNav-list.on a.car:after {
        background-position: -46px 0;
    }

    .gNav-list a.bus:after,.gNav-list.on a.bus:after {
        width: 33px;
        background-position: 0 -44px;
    }

    .gNav-list a.asobi:after,.gNav-list.on a.asobi:after {
        background-position: -42px -84px;
    }
      .gNav-list a.play:after,.gNav-list.on a.play:after {
        background-position: -42px -84px;
    }

    .gNav-list a.top:after {
        position: absolute;
        top: 2px;
        left: 50%;
        display: block;
        margin-left: -18px;
        width: 40px;
        height: 40px;
        background: url(https://img.travel.rakuten.co.jp/camp/template/images/iconTop_black.svg) center center no-repeat;
        background-size: 30px;
        content: "";
    }

    .gNav-list:hover a.top:after {
        background: url(https://img.travel.rakuten.co.jp/camp/template/images/iconTop.svg) center center no-repeat;
        background-size: 30px;
    }
}

.ttlicon_w:after{background-repeat:no-repeat;display:block;position:absolute;z-index:4;content:"";width:100%;height:32px;left:50%;top:3px;image-rendering:-webkit-optimize-contrast;image-rendering:optimizeQuality;transform: translateX(-50%);}
@media screen and (max-width: 720px){
/* .ttlicon_w:after{background-image:url(https://img.travel.rakuten.co.jp/special/sales/template/html/images/ttlIcon.png);} */
}
.ttlicon_w.rappa-icon:after{background: url(https://img.travel.rakuten.co.jp/camp/50luxday/rte/images/icon_rappa.svg) no-repeat center 3px / 25px;}
.ttlicon_w.surprise-icon:after{background: url(https://img.travel.rakuten.co.jp/camp/50luxday/rte/images/icon_surprise.svg) no-repeat center 3px / 25px;}
.ttlicon_w.search-icon:after{background: url(https://img.travel.rakuten.co.jp/camp/50luxday/rte/images/icon_search.svg) no-repeat center 3px / 25px;}
.ttlicon_w.ov-icon:after{background: url(https://img.travel.rakuten.co.jp/camp/50luxday/rte/images/icon_ov.svg) no-repeat center 3px / 25px;}
.ttlicon_w.dh-icon:after{background: url(https://img.travel.rakuten.co.jp/camp/50luxday/rte/images/icon_dh.svg) no-repeat center 3px / 25px;}
.ttlicon_w.premium-icon:after{background: url(https://img.travel.rakuten.co.jp/camp/50luxday/rte/images/icon_premium.svg) no-repeat center 3px / 25px;}



@media screen and (max-width: 720px){
/* .trigger{margin-right:0;display:block;} */
.trigger{width:75px;height:75px;cursor:pointer;margin:0 auto 5px;display:block;background:url(https://img.travel.rakuten.co.jp/special/sales/images/new/menu_open.png) no-repeat center center / 75px auto;}
}
@media (max-width: 768px) and (min-width: 721px){
.ss-right dl{display:none;}
}
#sRight .jss_switchMenu{position:relative;}
#sRight .jss_switchMenu dl{position:absolute;-webkit-transition:0.3s ease-in-out;transition:0.3s ease-in-out;right:0;bottom:10px;width:96px;}
.ss-right dd ul{border:1px solid #777;border-radius:5px 5px 5px 5px;overflow:hidden;}
.ss-right dd li{position:relative;border-bottom:1px solid #777;font-size:75%;font-weight:700;text-align:center;line-height:1.8;background:#fff;}
.ss-right dd li:last-child{border-bottom:none;}
.ss-right dd li a{padding:32px 5px 0;color:#333;display:block;text-decoration:none;}
#sRight .jss_switchMenu dl{right:-130px;bottom:86px;}
#sRight .jss_switchMenu.active .trigger{background:url(https://img.travel.rakuten.co.jp/special/sales/images/new/menu_close.png) no-repeat center center / 75px auto;}
#sRight .jss_switchMenu.active dl{right:0;}
@media screen and (max-width: 720px){
#sRight .jss_switchMenu dl{bottom:56px;}
.trigger{width:50px;height:50px;background-size:50px;}
#sRight .jss_switchMenu.active .trigger{background-size:50px auto;}
.trigger{margin-right:0;display:block;}
}
@media screen and (min-width: 721px){
.trigger{display: none;}
#sRight .jss_switchMenu dl{right: 0;bottom: 6px;}
}