@charset "utf-8";

/* コンテンツ幅 フル */
.contentsInr{width:auto;padding:0px;}

/* コンテンツ幅 950px */
.contentsInr .contentsUnit{padding:0 10px;}
@media all and (min-width:740px){
    .contentsInr .contentsUnit{width:950px;padding:0px;margin:0 auto;}}
/* コンポーネントのデフォルトスタイルクリア */
.tmbWrap{margin-top: 0;}
@media (min-width: 740px) {
    .tmbWrap{margin-top: 20px;}
}
/* リストコンポネのセンタリング用クラス */
.centerList.forSp{text-align: center;}
.centerList.forSp .noteList li{
    padding: 0 0 0 1.6em !important;
}
.centerList.forSp [class*="List"] li::before{
    position: static;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    text-indent: -1.6em;
}
@media (min-width: 740px) {
.centerList{text-align: center;}
.centerList.forSp .noteList li{
    padding: 0 0 0 1.2em !important;
}
.centerList [class*="List"] li::before{
    position: static;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    text-indent: -1.2em;
}
}
.spBold{font-weight: 700;}
@media (min-width: 740px) {
.spBold{font-weight: normal;}}
/* MV */
.mainTtl{
    text-shadow: 0 0 4px #222222;
    color: #ffffff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.6);
}
.mainLead{
    display: inline-block;
    padding: 5px;
    background-color: rgba(255, 255, 255, 0.8);
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
}
@media (max-width: 739px){
.heroimgWrap .mainHeading{padding: 0 20px;top: calc(15% + 10px);}
.mainLead{margin: 10px 10px 0;}}
/* 送迎・観光つきツアー */
.omakase_area{background-color:#0041a3;padding: 0 20px 20px;color: #fff;}
.omakase_area .omakase_about .col{background-color:#ffffff;color: #000;}
.omakase_about .omakase_about_txt{padding: 0 10px;}
.omakase_about .ctm_pageTtl{height: 40px}

@media (max-width: 739px) {
.omakase_area{padding: 0 10px 10px;}
.omakase_about .ctm_pageTtl{height: 50px}}

/* js slickSlider 共通スタイル */
.colWrap.js-slick .slidControl{
	position: absolute;
    /* width: 950px;
    text-align: center;
    transform: translateX(0);
    background-color: transparent;
    margin: 20px auto 0; */
}
.colWrap.js-slick .slidControl .playControl{display: none;}
/* .colWrap.js-slick .slidControl .slick-dots li button::before{
    border: 2px solid #cc0000;
    width: 12px;
    height: 12px;} */
@media all and (min-width:740px){
.colWrap.js-slick{
    display: block;
    width: 950px;
	padding-bottom: 55px;
}
.colWrap.js-slick .slick-prev,
.colWrap.js-slick .slick-next{z-index: 50;}
/* 3カラム */
.colWrap.clm_3_3col.js-slick .slick-list{margin-left: -25px;}
.colWrap.clm_3_3col.js-slick .col,
.colWrap.clm_3_3col.js-slick .col:first-child,
.colWrap.clm_3_3col.js-slick .col:nth-child(3n+1){
    margin-top: 0;
    margin-left: 25px;
}
/* 4カラム */
.colWrap.clm_1_4col.js-slick .col,
.colWrap.clm_1_4col.js-slick .col:first-child,
.colWrap.clm_1_4col.js-slick .col:nth-child(3n+1){
    margin-top: 0;
    margin-left: 30px;
    padding: 0;
}
.colWrap.clm_1_4col.js-slick .slick-list{margin-left: -30px;}}
.colWrap.clm_1_4col.js-slick .col{border: none;}
.colWrap.clm_1_4col.js-slick .col .txtLink {
    font-weight: 700;
    color: #333333;
}
@media (max-width: 739px) {
    .sp_scroll_on .column .colWrap.js-slick.is-inactive{
        text-align: center;
    }
    .sp_scroll_on .column .colWrap.js-slick.is-inactive .col{
        text-align: left;
    }
    .sp_scroll_on .column .colWrap.js-slick.is-inactive .col:first-child{
        margin-left: 0;
    }
}
.slick-slider.is-inactive .slick-track{
    margin-left: 0;
    margin-right: 0;
}
/* clm scroll sp横スクロール */
@media (max-width: 739px){
.sp_scroll_on .column{overflow: auto;white-space: nowrap;}
.sp_scroll_on .column .colWrap{width: 100%;flex-wrap: nowrap;display: block;}
.sp_scroll_on .column .colWrap .col{display: inline-block;vertical-align: top;margin-top: 0;}
.sp_scroll_on .column .colWrap .col *{white-space: normal;}
.sp_scroll_on .column .colWrap .col:first-child,
.sp_scroll_on .column .colWrap .col:nth-child(3n+1){
    margin-top: 0;
    margin-left: 10px;
}}
.sp_scroll_on .column .colWrap .col{border: none;}
.sp_scroll_on .column .clm_1_3col .col,
.sp_scroll_on .column .clm_3_3col .col{width: 300px;}
.sp_scroll_on .column .clm_1_4col .col{width: 218px;}

/* #feature reccomend_plan(slickSlider)おすすめ特集4カラム */
.spMgt90{margin-top: 90px;}
#feature{margin-top: 50px;}
#feature .column .colWrap .col{border: none;}
#feature .reccomend_plan{margin-top: 0;}
@media (min-width: 740px){
#feature{
    margin-top: 145px;
    padding-bottom: 30px;}
#feature .reccomend_plan{margin-top: 55px;}}
#feature .tmbBlock .inr{background-color: transparent;}
#feature .colWrap.js-slick .slick-prev,
#feature .colWrap.js-slick .slick-next{top: calc(25% + 4px);}

/* web_catalog */
.web_catalog .scrollNote{margin-top: 15px; padding: 10px;}
.web_catalog .colWrap.feature_plan{margin-top: 0px;}
.web_catalog .slick-prev{left: -45px;}
.web_catalog .slick-next{right: -45px;}
.web_catalog .sp_scroll_on{margin: -10px;}
@media (min-width: 740px){
.web_catalog .colWrap.feature_plan{margin-top: 55px;}
.web_catalog .slick-prev:before, .web_catalog .slick-next:before,
.web_catalog [dir="rtl"] .slick-prev:before, .web_catalog [dir="rtl"] .slick-next:before{
    -webkit-mask-image: url(/content/dam/sites/global/Y18/img/icons_utility.svg);
    mask-image: url(/content/dam/sites/global/Y18/img/icons_utility.svg);
    background: #000;
}
.web_catalog .slick-prev:before, .web_catalog .slick-next:before{
    transform: scale(1.6);
    opacity: 1;
}
.web_catalog .slick-prev:before{-webkit-mask-position: -21px -68px;}
.web_catalog .slick-next:before{-webkit-mask-position: 0 -68px;}
.web_catalog .sp_scroll_on{margin: 0;}}

/* オプショナルプラン */
.colWrap.clm_3_3col.optional_plan .col{border: 1px solid #ccc;}
.colWrap.clm_3_3col.optional_plan .slick-slide:hover{cursor: auto;}
[class*="ttlLv"] [class*="label_"]{
    display: inline-block;
    color: #ffffff;
    font-size: 1.6rem;
    padding: 2px 6px;
    font-weight: normal;
}
[class*="ttlLv"] [class*="label_"][class*="rentcar"]{background-color: #AE7D65;}
[class*="ttlLv"] [class*="label_"][class*="meal"]{background-color: #B2B84A;}
[class*="ttlLv"] [class*="label_"][class*="ferry"]{background-color: #6CA3D2;}
[class*="ttlLv"] [class*="label_"][class*="taxi"]{background-color: #e3ab1b;}
[class*="ttlLv"] [class*="label_"][class*="jr"]{background-color: #F76AC9;}

/* 方面（ハワイなど）基本情報 */
/* spot */
#spot{margin-top: 50px;}
@media (min-width: 740px){
    #spot{margin-top: 90px;}}
/* area map(js) */
.areaMap{position: relative;}
.areaMap .js-areatab ul li {position: absolute;padding: 13px 0 11px;}
.areaMap .js-areatab ul li a{border: 1px solid #9e9e9e;font-size: 1.6rem;padding: 13px 15px 11px 30px;background-color: #ffffff;position: relative;}
.areaMap .js-areatab ul li.is-active a,
.areaMap .js-areatab ul li a:hover{background-color: #cc0000;color: #ffffff;border-color: #cc0000;}
.areaMap .js-areatab ul li a::after{
    font-size: inherit;position: absolute;top: 50%;left: 10px;-webkit-transform: translateY(-50%);transform: translateY(-50%);
    content: '';display: inline-block;vertical-align: middle;background-image: url(/content/dam/sites/global/Y18/img/icons_utility.svg);background-repeat: no-repeat;background-size: 100px auto;
    width: 8px;height: 12px;background-position: 0 0;
}
.areaMap .js-areatab ul li.is-active a::after,
.areaMap .js-areatab ul li a:hover::after{width: 8px;height: 13px;background-position: 0 -17px;}
@media (max-width: 739px){
    .areaMap .js-areatab ul li {padding: 0;}
    .areaMap .js-areatab ul li a{font-size: 2.667vw;padding: 0.8vw 2.133vw 0.533vw 4.267vw;}
    .areaMap .js-areatab ul li a::after{left: 2.133vw;background-size: 13.333vw auto;width: 1.067vw;height: 1.6vw;}
    .areaMap .js-areatab ul li.is-active a::after,
    .areaMap .js-areatab ul li a:hover::after{width: 1.067vw;height: 1.733vw;background-position: 0 -2.267vw;}
}
@media (orientation:landscape){
    .areaMap .js-areatab ul li {padding: 13px 0 11px;}}

/* area map(static) */
.areaMap .areatabStatic ul li {position: absolute;padding: 13px 0 11px;}
.areaMap .areatabStatic ul li a{border: 1px solid #9e9e9e;font-size: 1.6rem;padding: 12px 18px;background-color: #ffffff;position: relative;}
.areaMap .areatabStatic ul li a:hover{cursor: auto;text-decoration: none;}
.areaMap .areatabStatic ul li a:focus{outline: 0;}
@media (max-width: 739px){
    .areaMap .areatabStatic ul li {padding: 0;}
    .areaMap .areatabStatic ul li a{font-size: 2.667vw;padding: calc(4 / 355 * 100vw) calc(9 / 355 * 100vw) calc(3 / 355 * 100vw);}
}
@media (orientation:landscape){
    .areaMap .areatabStatic ul li {padding: 13px 0 11px;}}

/* area map(nolink) */
.areaMap .areatabNolink ul li {position: absolute;padding: 13px 0 11px;}
.areaMap .areatabNolink ul li a{border: 1px solid #9e9e9e;font-size: 1.6rem;padding: 13px 15px 11px 30px;background-color: #ffffff;position: relative;}
.areaMap .areatabNolink ul li a:hover{background-color: #cc0000;color: #ffffff;border-color: #cc0000;}
.areaMap .areatabNolink ul li a::after{
    font-size: inherit;position: absolute;top: 50%;left: 10px;-webkit-transform: translateY(-50%);transform: translateY(-50%);
    content: '';display: inline-block;vertical-align: middle;background-image: url(/content/dam/sites/global/Y18/img/icons_utility.svg);background-repeat: no-repeat;background-size: 100px auto;
    width: 8px;height: 12px;background-position: 0 0;
}
.areaMap .areatabNolink ul li a:hover::after{width: 8px;height: 13px;background-position: 0 -17px;}
@media (max-width: 739px){
    .areaMap .areatabNolink ul li {padding: 0;}
    .areaMap .areatabNolink ul li a{font-size: 2.667vw;padding: 0.8vw 2.133vw 0.533vw 4.267vw;}
    .areaMap .areatabNolink ul li a::after{left: 2.133vw;background-size: 13.333vw auto;width: 1.067vw;height: 1.6vw;}
    .areaMap .areatabNolink ul li a:hover::after{width: 1.067vw;height: 1.733vw;background-position: 0 -2.267vw;}
}
@media (orientation:landscape){
    .areaMap .areatabNolink ul li {padding: 13px 0 11px;}}

.spot_custom_clm .ctm_dl,
.spot_custom_clm .colWrap .col{
    border-bottom: 1px solid #ccc;
}
.spot_custom_clm .ctm_dl{
    display: flex;
    padding: 16px 0;
}
.spot_custom_clm .colWrap .ctm_dl{
    border-top: 1px solid #ccc;
    border-bottom: none;
}
.spot_custom_clm .ctm_dl > .text{
    width: 100px !important;
    padding: 0 10px;
}
.spot_custom_clm .ctm_dl > .text + .responsivegrid{
    padding-left: 18px;
    width: calc(100% - 114px);
}
.spot_custom_clm .colWrap .col .ctm_dl > .text + .responsivegrid{
    padding-left: 24px;
    width: calc(100% - 124px);
}
.spot_custom_clm .colWrap.clm_1_2col .col:first-child{border-bottom: none;}
.spot_custom_clm .colWrap.clm_1_2col .col:nth-of-type(n+2){margin-top: 0;}
@media (min-width: 740px) {
.spot_custom_clm .ctm_dl{flex-direction: row;}
.spot_custom_clm .colWrap.clm_1_2col .col{
    width: 470px;
    margin-left:10px;
}
.spot_custom_clm .colWrap.clm_1_2col .col:first-child{border-bottom: 1px solid #ccc;}
.spot_custom_clm .colWrap.clm_1_2col .col:nth-child(odd){margin-left:0px;}
.spot_custom_clm .ctm_dl > .text{
    width: 152px !important;
    padding: 0 20px;
}

.spot_custom_clm .ctm_dl > .text + .responsivegrid{
    padding: 0 15px;
    width: 783px;
}
.spot_custom_clm .colWrap .col .ctm_dl > .text + .responsivegrid{
    padding-left: 15px;
    width: 318px;}}

/* 人気スポット */
.sp_scroll_on .spot_info [class*="clm_"] .col{border: 1px solid #ccc;}
.spot_info dl dt{font-size: 1.8rem;margin-top: 10px;}
.spot_info dl dd{margin-top: 15px;}
.sp_scroll_on .spot_info{margin-top: 10px;}
@media (min-width: 740px){
.sp_scroll_on .spot_info{margin-top: 0;}}
/* いち押し情報 */
[class*="hotel_clm"] .colWrap[class*="clm_"] .col{
    border: 1px solid #ccc;
}
[class*="hotel_clm"] .ctm_pageTtl.hc02{background-color: #E6FFEF;}
[class*="hotel_clm"] .ctm_pageTtl.hc02{margin: -10px -10px 0;}
[class*="hotel_clm"] .ctm_pageTtl.hc02 .ttlLv2{
    margin-top: 0;
    padding-top: 0;
    margin-bottom: 0;
    padding-bottom: 0;
}
[class*="hotel_clm"] .ctm_pageTtl.hc02 .ttlLv2 .heading{
    font-size: 1.8rem;
    padding: 7px;
}
[class*="hotel_clm"] .ctm_pageTtl.hc03{text-align: left;}
[class*="hotel_clm"] .ctm_pageTtl.hc03 .ttlLv2,
[class*="hotel_clm"] .ctm_pageTtl.hc03 .ttlLv3{
    margin-top: 12px;
    margin-bottom: 0;
    padding: 0;
}
[class*="hotel_clm"] .ctm_pageTtl.hc03 .ttlLv2 .heading,
[class*="hotel_clm"] .ctm_pageTtl.hc03 .ttlLv3 .heading{
    font-size: 1.4rem;
    text-align: left;
    padding: 0;
}
.hotel_clm .txtListBox{margin-top: 0;}
[class*="hotel_clm"] .txtList{
    display: flex;
    flex-wrap: wrap;
}
[class*="hotel_clm"] .txtList li{padding: 0 !important;}
[class*="hotel_clm"] .txtList li::before{display: none;}
[class*="hotel_clm"] .txtList li:first-of-type{
    margin-right: 4px;
    margin-bottom: 4px;
}
[class*="hotel_clm"] .txtList li:not(:first-child){
    margin-top: 0;
}
[class*="hotel_clm"] .txtList [class*="icon_"]{
    font-size: 1.2rem;
    background-repeat: no-repeat;
    display: inline-block;
    padding: 2px 18px 2px 26px;
}
[class*="hotel_clm"] .txtList .icon_spot{
    background-color: #FDE8E8;
    background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/commony24/area/img_sites/common/icon_spot.png);
    background-position: left 10px center;
    background-size: 9px 15px;
}
[class*="hotel_clm"] .txtList .icon_grade{
    background-color: #FFFFD5;
    background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/commony24/area/img_sites/common/icon_grade.png);
    background-position: left 7px center;
    background-size: 15px 14px;
}
[class*="hotel_clm"] .price_timesale{border: 1px solid #ccc;}
[class*="hotel_clm"] .price_timesale .class_grade{
    padding: 6px 10px 5px;
    background-color: #E6FFEF;
}
[class*="hotel_clm"] .price_timesale .class_price{padding: 8px 10px 6px;}
.tripBox180{
    width: 200px;
    margin-left: auto;
    margin-right: auto;
}
/* いち押しタイムセール */
.time_sale_info .info_text{
    background: #FDE8E8 url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/commony24/area/img_sites/common/bg_timesale_sp.png) left bottom no-repeat;
    background-size: 100%;
    padding: 12px;
}
.time_sale_info .info_text p {
    color: #c00;
    font-size: 2.2rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.7;
}
[class*="hotel_clm"] .txtList .icon_spot{
    background-color: #FDE8E8;
    background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/commony24/area/img_sites/common/icon_spot.png);
    background-position: left 10px center;
    background-size: 9px 15px;
}
[class*="hotel_clm"] .txtList .icon_grade{
    background-color: #FFFFD5;
    background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/commony24/area/img_sites/common/icon_grade.png);
    background-position: left 7px center;
    background-size: 15px 14px;
}
.hotel_clm_timeSale .ctm_pageTtl.hc02[class*="icon_"] .heading{
    background-repeat: no-repeat;
    background-position: left center;
    padding: 7px 20px;
    display: inline-block;
}
.ctm_pageTtl[class*="hc"].icon_spot{background-color: #FDE8E8;}
.ctm_pageTtl[class*="hc"].icon_spot .heading{
    background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/commony24/area/img_sites/common/icon_spot.png);
    background-size: 15px 24px;
}
@media (min-width: 740px) {
.time_sale_info .info_text{
    background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/commony24/area/img_sites/common/bg_timesale_pc.png);
    background-size: cover;
    padding: 12px 265px;
}
.time_sale_info .info_text p:nth-child(2) br{display: none;}}

/* ~観光やサポート情報 */
.colWrap[class*="clm_"].support_clm{
    margin-top: 10px;
}
.travel_support .sp_scroll_on .colWrap[class*="clm_"].support_clm .col{
    border: 1px solid #ccc;
    padding: 10px;
}
.travel_support .support_clm .col{
    padding: 0 10px;
}
.travel_support .support_clm .col:hover{
    cursor: pointer;
}
.travel_support .support_clm .col:hover a .txtLink{
    text-decoration: underline;
}
.travel_support .slidControl {
    margin: 20px auto 0;
    padding: 0;
    transform: translateX(0);
    background-color: transparent;
}
.travel_support .slidControl .slick-dots li{
    margin: 0 10px;
    width: 20px;
    height: 20px;
}
.travel_support .slidControl .slick-dots li button{
    width: 20px;
    height: 20px;
}
.support_clm .slick-dots li button::before{
    background-color: #000;
    opacity: .25;
    width: 100%;
    height: 100%;
}
.support_clm .slick-dots li.slick-active button::before{opacity: .75;}
@media (min-width: 740px) {
    .colWrap[class*="clm_"].support_clm{
        margin-top: 0;
    }
    .travel_support .support_clm .col{
        border-color: #707070;
        padding: 20px;
    }
}
/* onTrip, tripAdviser */
.ttl_ontrip {text-align: center;}
@media (max-width: 739px){
.ttl_ontrip img{width: 300px;}
.trip_ad_box .img.image .cmp-image__image{
    width: 41.66666667%;}}

/* イベントリンク(小方面) */
.eventLink-wrap .eventLink-lead{color:#c00;text-align: center;font-size: 16px;}
.eventLink-wrap .eventLink-group{display:flex;justify-content:center;flex-wrap:wrap;}
.eventLink-wrap .eventLink-group .eventLink-txt{font-size: 16px;position: relative;margin-left: 20px;}
.eventLink-wrap .eventLink-group .eventLink-txt:before{content: "|";position:absolute;left:-13px;}
.eventLink-wrap .eventLink-group .eventLink-txt:first-of-type{margin: 0;}
.eventLink-wrap .eventLink-group .eventLink-txt:first-of-type:before{content: "";}
.eventLink-wrap .eventLink-group .eventLink-txt a{color: #0f0f69;}

/* デジタルパンフレット */
.feature_plan .new {
    color: #F00;
}
/* 240528追加 */
.fs26{font-size: 2.2rem;}
.fwB { font-weight:bold; }
.fc-rd{color: #CC0000;}
@media (max-width: 739px) {
	.fs26{font-size: 1.35rem !important;}
}
/* ページ内のslick sliderのフォーカス制御 */
.slick-arrow:focus::before,
.slick-arrow:focus-visible::before,
.slick-arrow:focus-within::before{
    outline: 1px solid #cc0000;
}
.slick-slide a:focus,
.slick-slide a:focus-visible,
.slick-slide a:focus-within{
    outline: 1px solid #cc0000;
    display: block;
}