@charset "utf-8";
/*
* ★★CSS for PC
* @date 2022.5.30
*/
._sp {
    display: none !important;
}
.sp {
    display: none !important;
}
.kv .jdsSlides,
.kv .jdsSlides li,
.kv .jdsSlides li img {
    width: 100%;
    overflow: hidden;
    position: relative;
    display: block;
}
.kv .jdsSlides::before {
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 22px;
    text-align: center;
    z-index: 7;
    font-size: 14px;
    font-weight: normal;
    background-color: rgba(0, 0, 0, .5);
    color: #fff;
    line-height: 1;
    padding: 4px 0;
    content: "PR";
}
.kv .rslides_tabs {
    background: #F1F0EE;
    display: flex;
    justify-content: center;
    padding: 14px 0;
    overflow: hidden;
}
.kv .rslides_tabs li {
    margin: 0 2.5px;
}
.kv .rslides_tabs li a {
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 50px;
    line-height: 12px;
    text-indent: -9999px;
    background: #c4c4c4;
}
.kv .rslides_tabs li.rslides_here a {
    background: #333;
}
#widewrapper {
    width: 100%;
    min-width: 1340px;
}
#contentsArea a:hover {
    opacity: 0.8;
}
#contents.column1 {
    width: 100%;
    padding: 0;
    background: #fff;
}
/* ---keyVisual--- */
#keyVisual {
    width: 100%;
    margin-bottom: 0;
    background: #fff;
    position: relative;
}
#keyVisual.pr_absolute::before {
    z-index: 1;
}
#keyVisual h1 {
    text-indent: 0;
}
#keyVisual h1 img {
    width: 100%;
    display: block;
}

/* ---couponBnr--- */
.Line1 {
    width: 203px;
    height: 100%;
    border: 3px #342D2B solid;
    margin: 15px auto 40px;
}
#contents .cpn {
    margin: 0 auto;
    padding: 40px 0;
    background: #F1F0EE;
}
#contents .cpn h2 {
    font-family: "Noto Sans JP";
    text-align: center;
    font-size: 24px;
    font-weight: 400;
    color: #2C2E35;
    line-height: 1.4;
    letter-spacing: 7px;
}
#contents .cpn h2 em {
    font-size: 38px;
    letter-spacing: 7px;
}
.coupon__filter__guide {
  margin: 36px auto 0;
}
.cpOutLink {
    width: 266px;
    margin: 16px auto 0;
    position: relative;
}
.cpn .cpOutLink a.arr-green-windowA {
    background-color: #ffffff;
    border-radius: 5px;
    font-weight: normal;
    margin-right: 8px;
    padding: 4px 8px;
    color: #444444;
    text-decoration: none;
    font-size: 12px;
}
.cpn .cpOutLink a.arr-green-windowA:hover {
    text-decoration: none;
}
.cpOutLink::after {
    background: url("https://img.travel.rakuten.co.jp/special/sales/template/html/images/Linkwindow.svg") center center no-repeat;
    position: absolute;
    content: "";
    width: 16px;
    height: 16px;
    right: 3px;
    top: 50%;
    margin-top: -8px;
    background-size: 16px;
}

/*--navi--*/
.navHtl {
    display: flex;
    margin: 50px auto;
    justify-content: space-between;
    width: 100%;
    min-width: 1280px;
    max-width: 1345px;
}
.navHtl > li {
    width: 24.9%;
    transition: all 0.2s linear;
}
.navHtl > li:hover {
    transition: all 0.2s linear;
    transform: translateY(10px);
}
.navHtl > li:hover a {
    opacity: 1;
}
.navHtl img {
    width: 100%;
}

/* ---search--- */
.column1 #search-box {
    width: 100%;
    border: none;
    padding: 10px 0;
    margin: 0 auto;
}
.column1 #search-box h2 {
    max-width: 1040px;
    margin: 0 auto;
    background: #ED6D00;
    color: #fff;
    text-align: center;
    font-size: 22px;
    padding: 16px 0;
}

/* ---cpninfo--- */
#cpInfo {
    width: 944px;
    margin: 0 auto;
    padding: 40px 0;
}
#cpInfo h2 {
    font-size: 22px;
    text-align: center;
}
#cpInfo dl {
    font-size: 85%;
    line-height: 1.5em;
}
#cpInfo dt {
    color: #bf0a0a;
    font-weight: bold;
    margin: 16px 0 8px;
}
#cpInfo dd {
    margin: 16px 0;
}
#cpInfo a {
    text-decoration: underline!important;
    color: #bf0a0a!important;
}
#cpInfo a :hover {
    text-decoration: none;
}
/* ---totop--- */
#contents .toPpageTop {
    position: fixed;
    right: 32px;
    bottom: 32px;
    opacity: 0.7;
    line-height: 0;
    z-index: 1;
}
#contents {
    position: relative;
}
.surveyArea {
    background-color: #fff;
}
/* coupon1click */
#contentsArea .couponimg a:hover {
    text-decoration: none;
}
.cpnholder.jssBox.allList {
    width: 790px;
    justify-content: space-around;
    background: none;
    margin: 0 auto;
}
.cpnholder.jssBox.allList li.jss {
    width: 45.2%;
    padding: 8px;
    margin-left: 0;
}
.couponOneClick {
    max-width: none;
}
.cpnholder .btmarea {
    max-width: none;
    padding-left: 8px;
}
.cpnholder .btmarea .link .main {
    padding: 12px 5px 12px 15px;
    border-radius: 24px;
}
.popUpplanCP .detailholder {
    max-height: 80vh !important;
}
.popUpplanCP {
    width: 80vw !important;
    left: 10%;
    top: 10%;
}
.tableholder {
    width: auto;
    margin-left: 0;
    left: 0;
}
.detailholder td.cpnInfoT {
    padding: 5px 20px 5px 5px;
}
body {
    min-width: 1080px;
}

.tmbox {
    background: #5590A0;
    overflow: hidden;
}
.tmbox2 {
    background: #AB9366;
    overflow: hidden;
}
.boxL {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0;
    overflow: hidden;
}

dl.hotels_1 {
    font-family: 'Noto Sans JP', sans-serif;
    display: block;
    margin-top: 0;
    overflow: hidden;
    color: #fff;
    padding: 90px 40px;
}
dl.hotels_1 dt {
    float: left;
    width: 46%;
    line-height: 0;
}
.tmbox2 dl.hotels_1 dt {
    float: right;
}
dl.hotels_1 dt img {
    width: 100%;
}

dl.hotels_1 dt a {
    display: block;
}
dl.hotels_1 dt a img {
    display: block;
    width: 100%;
}
dl.hotels_1 dt a:hover {
    opacity: 0.7;
}
dl.hotels_1 dd {
    margin-right: 40px;
    float: right;
    width: 48%;
}
dl.hotels_1 dd h2 {
    font-size: 20px;
    font-weight: bold;
    margin: 32px 0 0;
    letter-spacing: 2px;
    line-height: 1.4;
}
dl.hotels_1 dd .pr {
    letter-spacing: 2px;
    font-size: 14px;
    margin: 18px 0 28px;
    line-height: 1.8;
}

dl.hotels_1 dd .btn {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin: 30px 0;
}
dl.hotels_1 dd .btn li {
    box-sizing: border-box;
    width: 43%;
    text-align: center;
    margin: 2%;
    background: #ffffff;
}

dl.hotels_1 dd .btn li:hover {
    background: #333333;
    color: #5590A0 !important;
    opacity: 1 !important;
}
.tmbox dl.hotels_1 dd .btn li a:hover {
    background: #333333;
    color: #5590A0 !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

dl.hotels_1 dd .btn a {
    border: none;
    border-radius: none;
    padding: 14px 6px;
    font-size: 17px;
    font-weight: bold;
    align-items: center;
    display: flex;
    justify-content: center;
    color: #5590A0 !important;
}
.tmbox2 dl.hotels_1 dd .btn a {
    color: #AB9366 !important;
}

.tmbox2 dl.hotels_1 dd .btn li a:hover {
    color: #AB9366 !important;
}

.pgBoxW {
    width: 100%;
    margin: 0 auto;
    min-width: 1280px;
    max-width: 1345px;
}
.ht_h2 {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 32px;
    text-align: center;
    letter-spacing: 4px;
    margin: 80px 0 40px;
    color: #333;
    font-weight: normal;
}
.ht_h2 em {
    font-size: 18px;
}
.pgBoxW p img {
    width: 100%;
}

/* hotels_box */
#SEC3 {
    width: 100%;
    padding-bottom: 60px;
    padding-top: 60px;
}

.jdsTab .jdsTabNav {
    max-width: 1080px;
    margin: 36px auto 0;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;

}
.jdsTab .jdsTabNav li {
    display: flex;
    align-items: center;
    border: 1px solid #2C2E35;
    border-bottom: none;
    border-radius: 5px 5px 0 0;
    font-size: 14px;
    background: #ffffff;
    text-align: center;
    padding: 1% 0.5%;
    width: 23%;
    cursor: pointer;
    overflow: hidden;
    justify-content: center;

}

.jdsTab .jdsTabNav li.active {
    background: #2C2E35;
    color: #ffffff;
}

.jdsTabMain {
    width: 100%;
    margin: 0 auto;
    border-top: 5px solid #2C2E35;
    background: #f3f3f3;
    padding-bottom: 50px;
}

ul.hotelsBox {
    margin: 0 auto;
    padding-top: 50px;
    max-width: 1080px;
    display: flex;
    flex-flow: row nowrap;
    flex-wrap: wrap;
    justify-content: flex-start;
}
ul.hotelsBox li.htboxL4 {
    width: 30.3%;
    border: 1px solid #2C2E35;
    background: #fff;
    padding: 18px 12px 12px;
    line-height: 1.5;
    box-sizing: border-box;
    margin: 0 3% 18px 0;
}

ul.hotelsBox li.htboxL4.area_colr01 
{    border: 1px solid #5590A0;
}

ul.hotelsBox li.htboxL4.area_colr02 
{    border: 1px solid #AB9366;
}
#SEC3 ul.hotelsBox li.htboxL4.area_colr01 ul.btn li a {
    background-color: #5590A0;
}
#SEC3 ul.hotelsBox li.htboxL4.area_colr02 ul.btn li a {
    background-color: #AB9366;
}
ul.btn li a:hover {
    background: #424242;
    color: #fff !important;
}


ul.hotelsBox li img {
    width: 100%;
}

ul.hotelsBox li .htlName {
    line-height: 1.5;
    font-size: 12px;
    padding-bottom: 12px;
}
ul.hotelsBox li .htlName em {
    display: block;
}
ul.hotelsBox li .htlName span {
    font-size: 14px;
    font-weight: bold;
    line-height: 2;
    display: block;
}

#A1 > div > ul > li:nth-child(3),
#A2 > div > ul > li:nth-child(3),
#A2 > div > ul > li:nth-child(6),
#A3 > div > ul > li:nth-child(3),
#A3 > div > ul > li:nth-child(6),
#A4 > div > ul > li:nth-child(3),
#A5 > div > ul > li:nth-child(12),
#A5 > div > ul > li:nth-child(3),
#A5 > div > ul > li:nth-child(6),
#A6 > div > ul > li:nth-child(3),
#A6 > div > ul > li:nth-child(6),
#A6 > div > ul > li:nth-child(9),
#A7 > div > ul > li:nth-child(3),
#A8 > div > ul > li:nth-child(3) {
    margin-right: 0;
}

#SEC3 ul.btn li {
    box-sizing: border-box;
    width: 46%;
    margin: 2%;
    text-align: center;
    float: left;
}
#SEC3 ul.btn li a {
    font-size: 14px;
    padding: 8px;
    border-radius: 3px;
    background-color: #2C2E35;
    display: block;
    color: #fff;
}
ul.btn li a:hover {
    background: #424242;
    color: #fff !important;
}

ul.btn li.btnL {
    width: 96% !important;
}

h2.title {
    color: #000;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 38px;
    font-style: normal;
    font-weight: 700;
    line-height: 144.6%;
    /* 54.948px */
    letter-spacing: 3.8px;
}

.column1 #search-box .structure dt.date {
    padding: 0;
    margin: 0;
}

#Searchbox 
{
  margin-top: 30px;
}
#Searchbox .searchWide {
    background: #fff;
    width: 100%;
    max-width: 1280px;
    margin: 10px auto;
    padding: 0 32px 60px;
    box-sizing: border-box;
    overflow: hidden;
}
.ss-container {
    border: none;
}
.TTLh2 {
    text-align: center;
    font-weight: bold;
    font-family: "Noto Sans JP";
    line-height: 1.5;
}
.TTLh2 em {
    letter-spacing: 6px;
    font-size: 31px;
    color: #333333;
    padding: 6px 36px 4px;
    vertical-align: bottom;
}
.column1 #search-box #domestic-search-box,
.column1 #search-box #overseas-search-box {
    padding: 0 15px;
}
.column1 #search-box p.searchSubmit a {
    line-height: 52px;
    text-indent: 0;
    height: 55px;
}
.column1 #search-box p.searchSubmit a:hover {
    text-decoration: none;
    color: #fff;
}

.hotel-description {
    background-color: #342D2B;
    padding: 70px 0 1px;
}
.hotel-description .column {
    width: 100%;
    max-width: 1230px;
    margin: 0 auto 80px;
    display: flex;
}
.hotel-description__image-column {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    line-height: normal;
    width: 34%;
    margin-left: 0;
}

.hotel-description__image {
    aspect-ratio: 0.86;
    object-fit: contain;
    object-position: center;
    width: 100%;
    flex-grow: 1;
}

.hotel-description__content-column {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    line-height: normal;
    width: 70%;
    margin-left: 60px;
}

.hotel-description__content {
    display: flex;
    margin-top: auto;
    margin-bottom: auto;
    flex-direction: column;
    align-self: stretch;
    align-items: stretch;
    font-family: Noto Sans JP, -apple-system, Roboto, Helvetica, sans-serif;
    color: rgba(255, 255, 255, 1);
    font-weight: 500;
}

.hotel-description__title {
    font-size: 34px;
    line-height: 47px;
    letter-spacing: 9px;
    margin: 0;
}

.hotel-description__text {
    color: #fff;
    font-size: 15px;
    line-height: 32px;
    letter-spacing: 2px;
    align-self: start;
    margin-bottom: 0;
    font-weight: normal;
    span{
    display: block;
    font-weight: bold;
    font-size: 170%;
    line-height: 2;
    letter-spacing: 9px;
}
}

@media (max-width: 991px) {
    .hotel-description {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
    }

    .hotel-description__image-column {
        width: 100%;
    }

    .hotel-description__image {
        max-width: 100%;
        margin-top: 40px;
    }

    .hotel-description__content-column {
        width: 100%;
    }

    .hotel-description__content {
        max-width: 100%;
        margin-top: 40px;
    }

    .hotel-description__title {
        max-width: 100%;
    }

    .hotel-description__text {
        max-width: 100%;
    }
}

/* 202410 pkup hotels */

.pkUp {
    display: flex;
    justify-content: space-between;
    width: 1280px;
    margin: auto;
    color: #333;
}
.pkBox {
    width: 385px;
    background: #ffffff;
    margin: 24px;
}

.pkBox a:hover {
    opacity: 0.8;
}

.pkImg {
    width: 385px;
    position: relative;
}
.pkImg .swiper-slide {
    overflow: hidden;
}
.pkImg img {
    display: block;
    width: 100%;
    /* height: 387px; */
    object-fit: cover;
}
.pkBox .swiper-button-next {
    width: 44px;
    height: 44px;
    background: url("https://img.travel.rakuten.co.jp/select/prince/feature/images/next.png") 0 0 no-repeat;
    right: -20px;
    top: calc(50% - 22px);
}
.pkBox .swiper-button-prev {
    width: 44px;
    height: 44px;
    background: url("https://img.travel.rakuten.co.jp/select/prince/feature/images/prev.png") 0 0 no-repeat;
    left: -20px;
    top: calc(50% - 22px);
}
.pkBox .swiper-pagination {
    position: relative;
    margin-top: 24px;
}
.pkBox .swiper-pagination-bullet-active {
    background: #595757 !important;
}

.facNm {
    padding: 0 24px;
    font-size: 20px;
    font-weight: bold;
    margin-top: 8px;
}
.planBox {
    padding: 0 24px 4px;
    margin-top: 10px;
}
.htlpr {
    font-size: 14px;
    line-height: 1.5;
}

.sp_box {
    background-color: #FEFBF6;
    overflow: hidden;
    padding-bottom: 28px;
    margin-top: 80px;
}

#PICKUP h2.title {
    color: #fff;
    padding: 50px 0 10px;
}

#PICKUP {
    padding-bottom: 30px;
}

#contentsArea a:visited:hover, #contentsArea a:link:hover, #contentsArea a:visited:active, #contentsArea a:link:active {
  
  text-decoration: none !important;
}

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

#SEC1 > div:nth-child(2) > div.hotel-description__image-column {order: 1;}

.movie h2 { text-align: center; font-size: 36px; font-weight: 200; letter-spacing: 4px;}
.movie div{ margin: 0 auto 40px;}




.hotelColor {
	text-align: center;
}
.hotelColor ul {
    display: flex    ;
    width: 500px;
            justify-content: space-evenly;
            margin: 25px auto 0;
}
.hotelColor ul li {
	letter-spacing: 2px;
	padding: 3px 0 3px 13px;
	border-left: 5px solid;
	border-color: #5590A0;
	font-size: 105%;
}

.hotelColor ul li:last-child {
	border-color: #AB9366;
}

ul.hotelsBox li.htboxL4.area_colr01 
{    border: 1px solid #5590A0;
}

ul.hotelsBox li.htboxL4.area_colr02 
{    border: 1px solid #AB9366;
}
#SEC3 ul.hotelsBox li.htboxL4.area_colr01 ul.btn li a {
    background-color: #5590A0;
}
#SEC3 ul.hotelsBox li.htboxL4.area_colr02 ul.btn li a {
    background-color: #AB9366;
}

#search-box.verB.test .dhAll.dh {
    margin-top: 110px;
}

a.planbtn {display: block;
    background-color: #5590A0;
    margin: 10px auto 20px;
    height: 32px;
    text-align: center;
    padding: 14px 0 0 0;
    color: #fff !important;
    font-weight: bold;
    border-radius: 5px;
    width: 88%;}

    .kaltura-player-container { max-width: 900px;
        height: 580px !important;
    padding-top: 40px;}