/*-----------------------------------------------
    index
-----------------------------------------------*/
.secCmnHeroInternalPage{
    background: url(../img/tour/bgTop.jpg) center / cover no-repeat;
}
@media only screen and (max-width:1215px){
    .secCmnHeroInternalPage{
        background: url(../img/tour/bgTop_sp.jpg) center / cover no-repeat;
    }
}

/* secTour */
.secTour{
    margin-top: 6rem;
    position: relative;
}
.secTour .boxFlexTop{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.secTour .cmnTitleBox{
    width: 19rem;
    margin-bottom: 0;
}
.secTour .cmnTitleBox .cmnTitle{
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_100);
}
.secTour .boxTabList{
    display: flex;
    align-items: center;
    gap: 4rem;
}
.secTour .cmnBtnBox{
    width: 34rem;
}
.secTour .cmnBtnBox .btnInner{
    width: 100%;
    background: var(--colorTab);
    color: var(--textColor);
}
.secTour .cmnBtnBox .btnInner.active{
    background: var(--keyColor);
    color: var(--whiteColor);
}
.secTour .cmnBtnBox .btnInner::after{
    filter: unset;
    background: url(../img/common/iconBtnArrowBlack.png) center / cover no-repeat;
}
.secTour .cmnBtnBox .btnInner.active::after{
    filter: brightness(0) invert(1);
    background: url(../img/common/iconBtnArrow.png) center / cover no-repeat;
}
.secTour .cmnBtnBox .btnInner:hover{
    background: var(--whiteColor);
    color: var(--keyColor);
    border: 0.1rem solid var(--keyColor);
}
.secTour .cmnBtnBox .btnInner:hover::after{
    filter: unset;
    background: url(../img/common/iconBtnArrow.png) center / cover no-repeat;
}
.secTour .boxFlexSearch{
    display: flex;
    align-items: center;
    gap: 7.7rem;
    border-top: 0.1rem solid var(--borderColor02);
    /* border-bottom: 0.1rem solid var(--borderColor02); */
    padding: 3.3rem 0 0;
    margin-top: 4rem;
}
.secTour .filterForm{
    flex: 1;
}
.secTour .filterList{
    width: calc(100% - 20rem);
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem 2.9rem;
    list-style: none;
    margin: 0;
    padding: 0;
}
.secTour .filterItem label{
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    cursor: pointer;
    font-size: var(--pcFontSize16);
    color: var(--textColor);
}
.secTour .filterItem input[type="checkbox"]{
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 0.3rem;
    margin: 0;
    accent-color: var(--keyColor);
}
.secTour .boxResult{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 5rem;
    padding-left: 1rem;
    padding-bottom: 3.3rem;
    border-bottom: 0.1rem solid var(--borderColor02);
}
.secTour .txtResult{
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_50);
    font-weight: bold;
    display: flex;
    align-items: baseline;
    gap: 0.9rem;
}
.secTour .boxBtn{
    display: flex;
    align-items: center;
    gap: 1.5rem;
}
.secTour .boxBtn .cmnBtnBox{
    width: 20rem;
}
.secTour .boxBtn .cmnBtnBox .btnInner{
    height: 5.5rem;
    font-size: var(--pcFontSize15);
    letter-spacing: var(--pcLetterSpacing15_150);
}
/* .secTour .boxBtn .cmnBtnBox .btnInner.active {
    background: var(--keyColor);
    color: var(--whiteColor);
} */
@media only screen and (max-width:1215px){
    .secTour{
        margin-top: 0;
    }
    .secTour .boxFlexTop{
        align-items: flex-start;
        flex-direction: column;
    }
    .secTour .iconCmnTitle{
        width: 3rem;
        height: 3rem;
    }
    .secTour .cmnTitleBox .cmnTitle{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_100);
    }
    .secTour .boxTabList{
        width: 100%;
        gap: 1rem;
        margin-top: 1.4rem;
    }
    .secTour .cmnBtnBox{
        width: calc((100% - 2rem) / 3);
    }
    .secTour .cmnBtnBox .btnInner::after{
        display: none;
    }
    .secTour .cmnBtnBox .btnInner.active::after{
        display: none;
    }
    .secTour .boxFlexSearch{
        flex-direction: column;
        align-items: flex-start;
        gap: 1.4rem;
        padding: 1.3rem 0 1.8rem;
        margin-top: 2rem;
    }
    .secTour .filterList{
        width: 100%;
        gap: 0.8rem 0;
    }
    .secTour .filterItem{
        width: 50%;
    }
    .secTour .filterItem label{
        gap: 1rem;
        font-size: var(--spFontSize13);
    }
    .secTour .filterItem input[type="checkbox"]{
        width: 2.2rem;
        height: 2.2rem;
        border-radius: 0.3rem;
    }
    .secTour .boxResult{
        flex-direction: column-reverse;
        gap: 3rem;
        margin-top: 0rem;
        padding-left: 0;
        padding-bottom: 2rem;
    }
    .secTour .txtResult{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing16_50);
        gap: 0.6rem;
    }
    .secTour .boxBtn{
        width: 100%;
        display: flex;
        align-items: center;
        gap: 1rem;
    }
    .secTour .boxBtn .cmnBtnBox{
        width: calc((100% - 1rem) / 2);
    }
    .secTour .boxBtn .cmnBtnBox .btnInner{
        height: 4rem;
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_150);
    
    }
}

/* secNewsRecommend */
.secNewsRecommend{
    margin-top: 4.2rem;
}
.secNewsRecommend .txtNum{
    font-size: var(--pcFontSize40);
    letter-spacing: var(--pcLetterSpacing40_50);
    color: var(--keyColor);
}
.secNewsRecommend .listNewsRecommend{
    display: flex;
    flex-wrap: wrap;
    gap: 5rem 3.9%;
    transform: none !important;
    margin-top: 5rem;
}
.secNewsRecommend .itemNewsRecommend{
    width: 30.72% !important;
    margin-right: 0 !important;
}
.secNewsRecommend .txtNewsRecommend{
    padding: 3rem 3rem 4rem;
    background: var(--whiteColor);
    width: 100%;
    height: 100%;
    border-radius: 2rem;
    box-shadow: 0 0 1rem 0.2rem rgba(0, 0, 0, 0.15);
    position: relative;
    display: block;
    transition: all 0.3s;
    text-decoration: none;
}
.secNewsRecommend .itemNewsRecommend .imgTour{
    aspect-ratio: 370 / 522;
    width: 100%;
    /* border-radius: 2rem; */
    overflow: hidden;
}
/* .secNewsRecommend .itemNewsRecommend .imgTour img,
.secNewsRecommend .listNewsRecommend .boxImgSoldOutEvent img,
.secNewsRecommend .listNewsRecommend .boxImgNoEvent img{
    border-radius: 2rem;  
} */
.secNewsRecommend .itemNewsRecommend .titNewsRecommend{
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_100);
    line-height: var(--pcLineHeight16_26);
    color: var(--keyColor);
    font-weight: bold;
    margin-top: 1.5rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.secNewsRecommend .itemNewsRecommend .txtPlace{
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_50);
    line-height: var(--pcLineHeight14_28);
    margin-top: 1rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-left: 4rem;
    position: relative;
    min-height: 2.3rem;
}
.secNewsRecommend .itemNewsRecommend .txtPlace::before{
    content: '';
    position: absolute;
    width: 3rem;
    height: 2.3rem;
    left: 0rem;
    top: 50%;
    transform: translateY(-50%);
}
.secNewsRecommend .itemNewsRecommend .txtPlace::before{
    background: url(../img/common/iconPin.png) center center / cover no-repeat;
}
.secNewsRecommend .itemNewsRecommend .txtPeriod{
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_50);
    line-height: var(--pcLineHeight14_28);
    margin-top: 1.5rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0 4rem;
    position: relative;
    min-height: 2.3rem;
}
.secNewsRecommend .itemNewsRecommend .txtPeriod::before{
    content: '';
    position: absolute;
    width: 3rem;
    height: 2.3rem;
    left: 0rem;
    top: 50%;
    transform: translateY(-50%);
}
.secNewsRecommend .itemNewsRecommend .txtPeriod::before{
    background: url(../img/common/iconCalendar.png) center center / cover no-repeat;
}
.secNewsRecommend .txtNewsRecommend::after{
    content: '';
    width: 3.6rem;
    height: 3.6rem;
    background: var(--keyColor);
    border-radius: 50%;
    position: absolute;
    right: 3rem;
    bottom: 3.6rem;
    transition: all 0.5s;
}
.secNewsRecommend .txtNewsRecommend::before{
    content: '';
    width: 1.8rem;
    height: 0.8rem;
    position: absolute;
    bottom: 5rem;
    z-index: 1;
    right: 3.9rem;
    filter: brightness(0) invert(1);
}
.secNewsRecommend .txtNewsRecommend::before {
    background: url(../img/common/iconBtnArrow.png) center / cover no-repeat;
}
.secNewsRecommend .listNewsRecommend .boxImg{
    position: relative;
}
.secNewsRecommend .listNewsRecommend .boxImgSoldOutEvent,
.secNewsRecommend .listNewsRecommend .boxImgNoEvent{
    position: absolute;
    top: 0;
    left: 0;
}
@media (min-width:1215px) {
    .secNewsRecommend .txtNewsRecommend:hover::after{
        background: var(--whiteColor);
        border: 0.1rem solid var(--keyColor);
    }
    .secNewsRecommend .txtNewsRecommend:hover::before{
        filter: brightness(0) saturate(100%) invert(18%) sepia(99%) saturate(2318%) hue-rotate(210deg) brightness(95%) contrast(101%);
    }
}
@media only screen and (max-width:1215px){
    .secNewsRecommend{
        margin-top: 1.4rem;
    }
    .secNewsRecommend .txtNum{
        font-size: var(--spFontSize40);
        letter-spacing: var(--spLetterSpacing40_50);
    }
    .secNewsRecommend .listNewsRecommend{
        display: flex;
        flex-wrap: wrap;
        gap: 2rem 0;
        transform: none !important;
        padding: 0 2rem;
        margin-top: 3rem;
    }
    .secNewsRecommend .itemNewsRecommend{
        width: 100% !important;
        margin-right: 0 !important;
    }
    .secNewsRecommend .txtNewsRecommend{
        padding: 1.5rem 1.5rem 3.4rem;
    }
    .secNewsRecommend .itemNewsRecommend .imgTour{
        aspect-ratio: 265 / 374;
        width: 100%;
    }
    .secNewsRecommend .itemNewsRecommend .titNewsRecommend{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_50);
        line-height: var(--spLineHeight15_26);
        margin-top: 1.5rem;
    }
    .secNewsRecommend .itemNewsRecommend .txtPlace{
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_50);
        line-height: var(--spLineHeight14_24);
        margin-top: 1.5rem;
        padding-left: 4.3rem;
        min-height: 2.3rem;
    }
    .secNewsRecommend .itemNewsRecommend .txtPlace::before{
        width: 1.7rem;
        height: 2.3rem;
        left: 1.2rem;
    }
    .secNewsRecommend .itemNewsRecommend .txtPeriod{
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_50);
        line-height: var(--spLineHeight14_24);
        margin-top: 1.9rem;
        padding: 0 4rem 0 4.3rem;
        min-height: 2.3rem;
    }
    .secNewsRecommend .itemNewsRecommend .txtPeriod::before{
        width: 2.9rem;
        height: 2.3rem;
        left: 0.4rem;
    }
    .secNewsRecommend .txtNewsRecommend::after{
        content: '';
        width: 2.2rem;
        height: 2.2rem;
        background: var(--keyColor);
        border-radius: 50%;
        position: absolute;
        right: 2rem;
        bottom: 3.9rem;
    }
    .secNewsRecommend .txtNewsRecommend::before{
        content: '';
        width: 1.2rem;
        height: 0.6rem;
        bottom: 4.7rem;
        right: 2.5rem;
    }
}

/* secCmnIndexPager */
.secCmnIndexPager{
    margin-top: 6rem;
    display: flex;
    justify-content: center;
    align-items: center;
}
.secCmnIndexPager .boxList{
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
}
.secCmnIndexPager .btn{
    min-width: 4rem;
    height: 4rem;
    border-radius: 50%;
    text-align: center;
    background: var(--whiteColor);
    font-size: var(--pcFontSize14);
}
.secCmnIndexPager .btnPrev .inner,
.secCmnIndexPager .btnNext .inner{
    position: relative;
    background: var(--keyColor);
}
.secCmnIndexPager .btnPrev .inner:after,
.secCmnIndexPager .btnPrev .inner:before,
.secCmnIndexPager .btnNext .inner:after,
.secCmnIndexPager .btnNext .inner:before{
    content: '';
    position: absolute;
    width: 0.1rem;
    height: 0.7rem;
    background: var(--whiteColor);
    top: 50%;
    left: 45%;
}
.secCmnIndexPager .btnPrev .inner:after,
.secCmnIndexPager .btnPrev .inner:before{
    left: 58%;
}
.secCmnIndexPager .btnPrev .inner::after{
    transform: translate(-50%, -65%) rotate(45deg);
    transform-origin: center top;
}
.secCmnIndexPager .btnPrev .inner::before{
    transform: translate(-50%, -35%) rotate(-45deg);
    transform-origin: center bottom;
}
.secCmnIndexPager .btnNext .inner::after{
    transform: translate(-50%, -65%) rotate(-45deg);
    transform-origin: center top;
}
.secCmnIndexPager .btnNext .inner::before{
    transform: translate(-50%, -35%) rotate(45deg);
    transform-origin: center bottom;
}
.secCmnIndexPager a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #fff;
    border: 0.1rem solid var(--borderPager);
}
.secCmnIndexPager .btn{
    margin: 0 0.25rem;
}
.secCmnIndexPager .on{
    display: flex;
    justify-content: center;
    align-items: center;
    border-right: none;
    background-color: var(--borderPager02);
}
.secCmnIndexPager .dots{
    display: block;
    width: 0.5rem;
    min-width: unset;
    height: 0.5rem;
    background: var(--colorPager);
    border-radius: 50%;
    position: relative;
    margin: 0 2rem;
    border: unset;
}
.secCmnIndexPager .dots::before,
.secCmnIndexPager .dots::after{
    content: '';
    position: absolute;
    width: 0.5rem;
    height: 0.5rem;
    background: var(--colorPager);
    border-radius: 50%;
    top: 50%;
    left: 1.1rem;
    transform: translateY(-50%);
}
.secCmnIndexPager .dots::after{
    left: unset;
    right: 1.1rem;
}
.secCmnIndexPager .btnPrev,
.secCmnIndexPager .btnNext{
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    background: var(--keyColor);
    text-align: center;
    position: relative;
    flex-shrink: 0;
}
@media only screen and (max-width:1215px){
    .secCmnIndexPager{
        margin-top: 3rem;
    }
    .secCmnIndexPager .btn{
        font-size: var(--spFontSize14);
    }
    .secCmnIndexPager .btnPrev .inner:after,
    .secCmnIndexPager .btnPrev .inner:before,
    .secCmnIndexPager .btnNext .inner:after,
    .secCmnIndexPager .btnNext .inner:before{
        width: 0.1rem;
        height: 0.7rem;
        left: 45%;
    }
    .secCmnIndexPager .btnPrev .inner:after,
    .secCmnIndexPager .btnPrev .inner:before{
        left: 58%;
    }
    .secCmnIndexPager .btnPrev .inner::after{
        transform: translate(-50%, -65%) rotate(45deg);
        transform-origin: center top;
    }
    .secCmnIndexPager .btnPrev .inner::before{
        transform: translate(-50%, -35%) rotate(-45deg);
        transform-origin: center bottom;
    }
    .secCmnIndexPager .btnNext .inner::after{
        transform: translate(-50%, -65%) rotate(-45deg);
        transform-origin: center top;
    }
    .secCmnIndexPager .btnNext .inner::before{
        transform: translate(-50%, -35%) rotate(45deg);
        transform-origin: center bottom;
    }
    .secCmnIndexPager .btn{
        margin: 0 0.25rem;
    }
    .secCmnIndexPager .dots{
        width: 0.5rem;
        height: 0.5rem;
        margin: 0 2rem;
    }
    .secCmnIndexPager .dots::before,
    .secCmnIndexPager .dots::after{
        width: 0.5rem;
        height: 0.5rem;
        left: 1.1rem;
    }
    .secCmnIndexPager .dots::after{
        left: unset;
        right: 1.1rem;
    }
}

/*-----------------------------------------------
    details
-----------------------------------------------*/
.detailsPage .cmnTitleBox{
    border-bottom: 0.1rem solid var(--borderColor02);
    padding-bottom: 1.8rem;
    margin-bottom: 3.6rem;
}
.detailsPage .cmnTitleBox .cmnTitle{
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_100);
}
@media only screen and (max-width:1215px){
    .detailsPage .cmnTitleBox{
        padding-bottom: 1.8rem;
        margin-bottom: 1.7rem;
    }
    .detailsPage .cmnTitleBox .iconCmnTitle {
        width: 3rem;
        height: 3rem;
    }
    .detailsPage .cmnTitleBox .cmnTitle{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_100);
    }
}

/* secTourDetails */
.secTourDetails{
    margin-top: 2rem;
}
.secTourDetails .boxTopKinds{
    position: relative;
}
.secTourDetails .boxTopKinds::before{
    content: '';
    width: calc(100% - 13rem);
    height: 0.1rem;
    background: var(--borderColor02);
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
.secTourDetails .txtKinds{
    width: 12rem;
    height: 4rem;
    background: var(--keyColor);
    border-radius: 2rem;
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_50);
    font-weight: bold;
    color: var(--whiteColor);
    display: flex;
    align-items: center;
    justify-content: center;
}
.secTourDetails .txtTourTit{
    font-size: var(--pcFontSize32);
    line-height: var(--pcLineHeight32_36);
    letter-spacing: var(--pcLetterSpacing32_100);
    font-weight: bold;
    text-align: center;
    margin-top: 3.8rem;
    margin-bottom: 2.7rem;
}
.secTourDetails .boxTag{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 2rem;
}
.secTourDetails .itemTag{
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_100);
    position: relative;
    padding-left: 1.3rem;
}
.secTourDetails .itemTag::before{
    content: '#';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_100);
    color: var(--keyColor);
    font-weight: bold;
}
@media only screen and (max-width:1215px){
    .secTourDetails{
        margin-top: 0.8rem;
    }
    .secTourDetails .boxTopKinds::before{
        width: calc(100% - 10.5rem - 1rem);
    }
    .secTourDetails .txtKinds{
        width: 10.5rem;
        height: 3.8rem;
        border-radius: 1.9rem;
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_50);
    }
    .secTourDetails .txtTourTit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing15_100);
        margin-top: 1.5rem;
        margin-bottom: 1rem;
    }
    .secTourDetails .boxTag{
        gap: 1.3rem;
    }
    .secTourDetails .itemTag{
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_50);
        padding-left: 0.8rem;
    }
    .secTourDetails .itemTag::before{
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_50);
    }
}

/* tourGallerySwiper */
.secTourDetails .tourGallerySwiper{
    margin-top: 4rem;
}
.secTourDetails .tourMainSwiper{
    border-radius: 2rem;
    overflow: hidden;
    box-shadow: 0 0 1.5rem 0.3rem rgba(0, 0, 0, 0.15);
}
.secTourDetails .tourMainSwiper .swiper-slide{
    width: 100%;
    padding-top: 75%;
}
.secTourDetails .tourMainSwiper img{
    width: 100%;
    display: block;
}
/* サムネイル部分 */
.secTourDetails .tourThumbsWrapper{
    position: relative;
    margin-top: -7.5rem;
    padding: 0 8rem;
}
.secTourDetails .tourThumbSwiper.swiper{
    width: 104rem;
    margin: 0 auto;
    justify-content: center;
    overflow: hidden;
}
.secTourDetails .tourThumbSwiper .swiper-wrapper{
    align-items: center;
}
.secTourDetails .tourThumbSwiper .swiper-slide{
    /* width: 20rem!important; */
    max-width: 20rem;
    border-radius: 1.5rem;
    overflow: hidden;
    cursor: pointer;
    transition: box-shadow 0.3s, transform 0.3s;
    /* padding: 0.5rem; */
    padding-top: 14.424%;
    background: var(--whiteColor);
    overflow: hidden;
    position: relative;
}
.secTourDetails .tourThumbSwiper .swiper-slide::after{
    content: '';
    border: 0.5rem solid var(--whiteColor);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1.5rem;
}
.secTourDetails .tourThumbSwiper .swiper-slide.on::after{
    content: '';
    border: 0.5rem solid var(--keyColor);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1.5rem;
}


/* 実際の画像は枠の内側に収まる */
.secTourDetails .tourThumbSwiper .swiper-slide img {
    display: block;
    width: 100%;
    border-radius: 1.3rem;
}
.secTourDetails .boxThumbSum{
    position: relative;
    margin: -8rem auto 0;
}
.secTourDetails .tourThumbBtn{
    position: absolute;
    top: calc(50% + 2.5rem);
    transform: translateY(-50%);
    width: 5rem;
    height: 11rem;
    border-radius: 2.5rem;
    border: none;
    background: var(--keyColor);
    cursor: pointer;
    z-index: 5;
}
.secTourDetails .tourThumbPrev { left: 2rem; }
.secTourDetails .tourThumbNext { right: 2rem; }
.secTourDetails .tourThumbBtn::before,
.secTourDetails .tourThumbBtn::after {
    content: '';
    position: absolute;
    width: 0.14rem;
    height: 0.9rem;
    background: var(--whiteColor);
    top: 50%;
}
.secTourDetails .tourThumbPrev::before {
    left: 55%;
    transform: translate(-50%, -35%) rotate(-45deg);
    transform-origin: center bottom;
}
.secTourDetails .tourThumbPrev::after {
    left: 55%;
    transform: translate(-50%, -65%) rotate(45deg);
    transform-origin: center top;
}
.secTourDetails .tourThumbNext::before {
    left: 45%;
    transform: translate(-50%, -35%) rotate(45deg);
    transform-origin: center bottom;
}
.secTourDetails .tourThumbNext::after {
    left: 45%;
    transform: translate(-50%, -65%) rotate(-45deg);
    transform-origin: center top;
}
/* .secTourDetails .tourThumbSwiper .swiper-slide-thumb-active {
    box-shadow: 0 0 0 0.25rem var(--keyColor),
                0 0 0.8rem 0.3rem rgba(0,0,0,0.25);
    transform: translateY(-0.2rem);
    background: var(--keyColor);
} */
@media only screen and (max-width:1215px){
    .secTourDetails .tourGallerySwiper{
        margin-top: 1.8rem;
    }
    .secTourDetails .tourMainSwiper{
        border-radius: 1.5rem;
    }
    .secTourDetails .tourThumbsWrapper{
        margin-top: 1rem;
        padding: 0;
    }
    .secTourDetails .tourThumbSwiper.swiper{
        width: 100%;
    }
    .secTourDetails .boxThumbSum{
        margin: 1rem auto 0;
    }
    .secTourDetails .tourThumbBtn{
        width: 2.5rem;
        height: 5.5rem;
        top: -11rem;
    }
    .secTourDetails .tourThumbSwiper .swiper-slide{
        /* width: 6.3rem !important; */
        border-radius: 0.5rem;
        /* padding: 0.2rem; */
        padding-top: 16.42%;
        max-width: 6.3rem;
    }
    .secTourDetails .tourThumbSwiper .swiper-slide::after{
        border: none;
    }
    .secTourDetails .tourThumbSwiper .swiper-slide.on::after{
        border: 0.2rem solid var(--keyColor);
        border-radius: 0.5rem;
    }
    .secTourDetails .tourThumbSwiper .swiper-slide img {
        border-radius: 0.5rem;
    }
    .secTourDetails .tourThumbPrev { left: -1rem; }
    .secTourDetails .tourThumbNext { right: -1rem; }
}

/* secAbout */
.secAbout{
    margin-top: 9rem;
}
.secAbout .boxDlTable{
    border-top: solid 0.1rem var(--tableBorderColor);
}
.secAbout .boxDlTable .tr{
    border-bottom: solid 0.1rem var(--tableBorderColor);
    display: flex;
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_26);
    letter-spacing: var(--pcLetterSpacing16_50);
}
.secAbout .boxDlTable .th{
    background-color: var(--tableBgColor);
    border-left: solid 0.1rem var(--tableBorderColor);
    border-right: solid 0.1rem var(--tableBorderColor);
    width: 20%;
    padding: 1.7rem 1.5rem 1.5rem;
    display: flex;
    align-items: center;
    width: 17%;
}
.secAbout .boxDlTable .td{
    background-color: var(--whiteColor);
    flex: 1;
    padding: 1.7rem 1.5rem 1.5rem;
    display: flex;
    align-items: center;
}
.secAbout .boxDlTable .td2{
    border-right: solid 0.1rem var(--tableBorderColor);
}
.secAbout .boxDlTable .row{
    display: flex;
}
.secAbout .boxDlTable .row .tr{
    width:50%;
}
.secAbout .boxDlTable .row .th{
    width: 34%;
}
@media only screen and (max-width:1215px){
    .secAbout{
        margin-top: 5rem;
    }
    .secAbout .boxDlTable{
        width: 100%;
    }
    .secAbout .boxDlTable .tr{
        flex-direction: column;
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_26);
        letter-spacing: var(--spLetterSpacing14_50);
    }
    .secAbout .boxDlTable .th{
        width: 100%;
        padding: 0.5rem 1rem;
    }
    .secAbout .boxDlTable .td{
        padding: 0.5rem 1rem;
        border-top: solid 0.1rem var(--tableBorderColor);
        border-left: solid 0.1rem var(--tableBorderColor);
        border-right: solid 0.1rem var(--tableBorderColor);
    }
    .secAbout .boxDlTable .row{
        display: block;
    }
    .secAbout .boxDlTable .row .tr{
        width: 100%;
        display: flex;
        flex-direction: column;
    }
    .secAbout .boxDlTable .row .th{
        width: 100%;
    }
}

/* secPoint */
.secPoint{
    margin-top: 9rem;
}
@media only screen and (max-width:1215px){
    .secPoint{
        margin-top: 5rem;
    }
}

/* secSchedule */
.secSchedule{
    margin-top: 9rem;
}
.secSchedule .txtScheduleTit{
    font-size: var(--pcFontSize24);
    line-height: var(--pcLineHeight24_36);
    letter-spacing: var(--pcLetterSpacing24_100);
    font-weight: bold;
    color: var(--keyColor);
    margin: 2.9rem 0 4.4rem;
}
.secSchedule .boxImg{
    border-radius: 2rem;
    /* box-shadow: 0 0 0 0.1rem rgba(0, 0, 0, 0.2); */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5rem;
    /* padding: 5rem; */
}
.secSchedule .boxImg .boxImgIn{
    display: block;
    width: 96.7rem;
    height: 94.9rem;
    /* box-shadow: 0 0 0 0.1rem rgba(0, 0, 0, 0.2); */
}
.secSchedule .txtAbout{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_36);
    letter-spacing: var(--pcLetterSpacing16_100);
    margin-top: 3.1rem;
}
@media only screen and (max-width:1215px){
    .secSchedule{
        margin-top: 5rem;
    }
    .secSchedule .txtScheduleTit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing15_100);
        margin: 1.5rem 0 2.5rem;
    }
    .secSchedule .boxImg{
        border-radius: 2rem;
        gap: 1.4rem;
        /* padding: 1.5rem; */
        /* box-shadow: 0 0 0 0.1rem rgba(0, 0, 0, 0.2); */
    }
    .secSchedule .boxImg .boxImgIn{
        width: 20rem;
        height: 20rem;
        box-shadow: unset;
    }
    .secSchedule .txtAbout{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_28);
        letter-spacing: var(--spLetterSpacing12_50);
        text-align: center;
        margin-top: 1.5rem;
    }
    .secSchedule .txtLightBox{
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_50);
    }
}

/* secPrice */
.secPrice{
    margin-top: 9rem;
}
.secPrice .boxImg{
    border-radius: 2rem;
    /* box-shadow: 0 0 0 0.1rem rgba(0, 0, 0, 0.2); */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5rem;
    /* padding: 5rem; */
}
.secPrice .boxImg .boxImgIn{
    display: block;
    width: 120rem;
    height: 50rem;
    /* box-shadow: 0 0 0 0.1rem rgba(0, 0, 0, 0.2); */
}
.secPrice .txtAbout{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_36);
    letter-spacing: var(--pcLetterSpacing16_100);
    margin-top: 3.6rem;
}
@media only screen and (max-width:1215px){
    .secPrice{
        margin-top: 5rem;
    }
    .secPrice .boxImg{
        border-radius: 2rem;
        gap: 1.4rem;
        /* padding: 1.5rem; */
        /* box-shadow: 0 0 0 0.1rem rgba(0, 0, 0, 0.2); */
    }
    .secPrice .boxImg .boxImgIn{
        width: 27rem;
        height: 10rem;
        box-shadow: unset;
    }
    .secPrice .txtAbout{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_28);
        letter-spacing: var(--spLetterSpacing12_50);
        text-align: center;
        margin-top: 1.5rem;
    }
    .secSchedule .txtLightBox{
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_50);
    }
}

/* secNote */
.secNote{
    margin-top: 9rem;
}
.secNote .txtAbout{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_36);
    letter-spacing: var(--pcLetterSpacing16_100);
    margin-top: 2.6rem;
}
.secNote .boxLiknList{
    display: flex;
    justify-content: center;
    gap: 2rem;
    margin-top: 4rem;
}
.secNote .cmnBtnBox .btnInner{
    width: 40rem;
}
@media only screen and (max-width:1215px){
    .secNote{
        margin-top: 5rem;
    }
    .secNote .txtAbout{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing12_50);
        margin-top: 1.5rem;
    }
    .secNote .boxLiknList{
        flex-direction: column;
        gap: 1rem;
        margin-top: 2.5rem;
    }
    .secNote .cmnBtnBox .btnInner{
        width: 100%;
    }
}

/* secOthers */
.secOthers{
    margin-top: 9rem;
}
.secOthers .boxNewsRecommendSlider{
    width: 100%;
    overflow: hidden;
    padding: 1rem 0;
    /* padding: 0 9rem; */
}
.secOthers .boxNewsRecommendSlider .newsRecommendSwiper{
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 0 1rem;
    padding: 0.5rem 9rem;
}
.secOthers .newsRecommendSwiper .swiper-wrapper {
    align-items: stretch;
}
.secOthers .newsRecommendSwiper .swiper-slide {
    display: flex;
    height: auto;
}
.secOthers .listNewsRecommend{
    display: flex;
    gap: 3.9%;
}
.secOthers .itemNewsRecommend{
    width: 30.72%;
}
.secOthers .txtNewsRecommend,
.secOthers .swiper-slide .txtNewsRecommend {
    padding: 3rem 3rem 4rem;
    background: var(--whiteColor);
    width: 100%;
    height: 100%;
    border-radius: 2rem;
    box-shadow: 0 0 0.8rem 0 rgba(0, 0, 0, 0.2);
    position: relative;
    display: flex;
    flex-direction: column;
    transition: all 0.3s;
    text-decoration: none;
}
.secOthers .itemNewsRecommend .imgTour,
.secOthers .swiper-slide .imgTour {
    aspect-ratio: 370 / 522;
    width: 100%;
    /* border-radius: 2rem; */
    overflow: hidden;
}
/* .secOthers .itemNewsRecommend .imgTour img,
.secOthers .swiper-slide .imgTour img {
    border-radius: 2rem;  
} */
.secOthers .itemNewsRecommend .titNewsRecommend,
.secOthers .swiper-slide .titNewsRecommend {
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_100);
    line-height: var(--pcLineHeight16_26);
    color: var(--keyColor);
    font-weight: bold;
    margin-top: 1.5rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.secOthers .itemNewsRecommend .txtPlace,
.secOthers .swiper-slide .txtPlace {
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_50);
    line-height: var(--pcLineHeight14_28);
    margin-top: 1rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-left: 4rem;
    position: relative;
    min-height: 2.3rem;
}
.secOthers .itemNewsRecommend .txtPlace::before,
.secOthers .swiper-slide .txtPlace::before {
    content: '';
    position: absolute;
    width: 3rem;
    height: 2.3rem;
    left: 0rem;
    top: 50%;
    transform: translateY(-50%);
}
.secOthers.lazyloaded .itemNewsRecommend .txtPlace::before,
.secOthers.lazyloaded .swiper-slide .txtPlace::before {
    background: url(../img/common/iconPin.png) center center / cover no-repeat;
}
.secOthers .itemNewsRecommend .txtPeriod,
.secOthers .swiper-slide .txtPeriod {
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_50);
    line-height: var(--pcLineHeight14_28);
    margin-top: 1.5rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0 4rem;
    position: relative;
    min-height: 2.3rem;
}
.secOthers .itemNewsRecommend .txtPeriod::before,
.secOthers .swiper-slide .txtPeriod::before {
    content: '';
    position: absolute;
    width: 3rem;
    height: 2.3rem;
    left: 0rem;
    top: 50%;
    transform: translateY(-50%);
}
.secOthers.lazyloaded .itemNewsRecommend .txtPeriod::before,
.secOthers.lazyloaded .swiper-slide .txtPeriod::before {
    background: url(../img/common/iconCalendar.png) center center / cover no-repeat;
}
.secOthers .txtNewsRecommend::after {
    content: '';
    width: 3.6rem;
    height: 3.6rem;
    background: var(--keyColor);
    border-radius: 50%;
    position: absolute;
    right: 3rem;
    bottom: 3.6rem;
    transition: all 0.5s;
}
.secOthers .txtNewsRecommend::before {
    content: '';
    width: 1.8rem;
    height: 0.8rem;
    position: absolute;
    bottom: 5rem;
    z-index: 1;
    right: 3.9rem;
    filter: brightness(0) invert(1);
}
.secOthers.lazyloaded .txtNewsRecommend::before {
    background: url(../img/common/iconBtnArrow.png) center / cover no-repeat;
}
@media (min-width:1216px) {
    .secOthers .newsRecommendSwiper .swiper-wrapper {
        padding: 1rem 0;
        align-items: stretch;
    }
    .secOthers .newsRecommendSwiper .swiper-slide {
        width: calc(26.5rem + 2rem)!important;
        padding: 0 1rem;
        box-sizing: border-box;
        display: flex;
        height: auto;
    }
    .secOthers .newsRecommendSwiper .swiper-slide .txtNewsRecommend {
        width: 26.5rem;
        margin: 0 auto;
    }
    .secOthers .newsRecommendSwiper .swiper-button-prev,
    .secOthers .newsRecommendSwiper .swiper-button-next {
        width: 5rem;
        height: 11rem;
        background: var(--keyColor);
        border-radius: 2.5rem;
        z-index: 10;
        margin-top: 0;
        top: 50%;
        transform: translateY(-50%);
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .secOthers .newsRecommendSwiper .swiper-button-prev { left: 0; }
    .secOthers .newsRecommendSwiper .swiper-button-next { right: 0; }
    .secOthers .newsRecommendSwiper .swiper-button-prev::before,
    .secOthers .newsRecommendSwiper .swiper-button-prev::after {
        content: '';
        position: absolute;
        width: 0.1rem;
        height: 0.6rem;
        background: var(--whiteColor);
        top: 50%;
        left: 55%;
    }
    .secOthers .newsRecommendSwiper .swiper-button-prev::before {
        transform: translate(-50%, -35%) rotate(-45deg);
        transform-origin: center bottom;
    }
    .secOthers .newsRecommendSwiper .swiper-button-prev::after {
        transform: translate(-50%, -65%) rotate(45deg);
        transform-origin: center top;
    }
    .secOthers .newsRecommendSwiper .swiper-button-next::before,
    .secOthers .newsRecommendSwiper .swiper-button-next::after {
        content: '';
        position: absolute;
        width: 0.1rem;
        height: 0.6rem;
        background: var(--whiteColor);
        top: 50%;
        left: 45%;
    }
    .secOthers .newsRecommendSwiper .swiper-button-next::before {
        transform: translate(-50%, -35%) rotate(45deg);
        transform-origin: center bottom;
    }
    .secOthers .newsRecommendSwiper .swiper-button-next::after {
        transform: translate(-50%, -65%) rotate(-45deg);
        transform-origin: center top;
    }
}

@media (min-width:1215px) {
    .secOthers .txtNewsRecommend:hover::after {
        background: var(--whiteColor);
        border: 0.1rem solid var(--keyColor);
    }
    .secOthers .txtNewsRecommend:hover::before {
        filter: brightness(0) saturate(100%) invert(18%) sepia(99%) saturate(2318%) hue-rotate(210deg) brightness(95%) contrast(101%);
    }
}
@media only screen and (max-width:1215px) {
    .secOthers {
        margin-top: 5rem;
    }
    /* SP時のスライダー表示 */
    .secOthers .boxNewsRecommendSlider {
        width: 100%;
    }
    .secOthers .boxNewsRecommendSlider .newsRecommendSwiper {
        position: relative;
        width: 100%;
        padding: 0;
        overflow: visible;
        max-width: 26.5rem;
    }
    .secOthers .boxNewsRecommendSlider .newsRecommendSwiper .swiper-wrapper {
        padding: 0;
        align-items: stretch;
    }
    .secOthers .newsRecommendSwiper .swiper-slide {
        display: flex;
        height: auto;
    }
    .secOthers .newsRecommendSwiper .swiper-slide .txtNewsRecommend {
        display: flex;
        flex-direction: column;
        width: 100%!important;
        padding: 2rem 2rem 2.5rem;
        height: 100%;
    }
    /* .secOthers .newsRecommendSwiper .swiper-slide .imgTour {
        border-radius: 1.5rem;
        box-shadow: 0 0 0.4rem 0.2rem rgba(0, 0, 0, 0.15);
    } */
    .secOthers .newsRecommendSwiper .swiper-button-prev,
    .secOthers .newsRecommendSwiper .swiper-button-next {
        width: 2.5rem;
        height: 5.5rem;
        background: var(--keyColor);
        border-radius: 2.5rem;
        z-index: 10;
        margin-top: 0;
        top: 50%;
        transform: translateY(-50%);
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .secOthers .newsRecommendSwiper .swiper-button-prev {
        left: -3rem;
    }
    .secOthers .newsRecommendSwiper .swiper-button-next {
        right: -3rem;
    }
    .secOthers .newsRecommendSwiper .swiper-button-prev::before,
    .secOthers .newsRecommendSwiper .swiper-button-prev::after {
        content: '';
        position: absolute;
        width: 0.1rem;
        height: 0.6rem;
        background: var(--whiteColor);
        top: 50%;
        left: 55%;
    }
    .secOthers .newsRecommendSwiper .swiper-button-prev::before {
        transform: translate(-50%, -35%) rotate(-45deg);
        transform-origin: center bottom;
    }
    .secOthers .newsRecommendSwiper .swiper-button-prev::after {
        transform: translate(-50%, -65%) rotate(45deg);
        transform-origin: center top;
    }
    .secOthers .newsRecommendSwiper .swiper-button-next::before,
    .secOthers .newsRecommendSwiper .swiper-button-next::after {
        content: '';
        position: absolute;
        width: 0.1rem;
        height: 0.6rem;
        background: var(--whiteColor);
        top: 50%;
        left: 45%;
    }
    .secOthers .newsRecommendSwiper .swiper-button-next::before {
        transform: translate(-50%, -35%) rotate(45deg);
        transform-origin: center bottom;
    }
    .secOthers .newsRecommendSwiper .swiper-button-next::after {
        transform: translate(-50%, -65%) rotate(-45deg);
        transform-origin: center top;
    }
    .secOthers .cmnBtnBox .btnInner {
        margin-top: 3rem;
    }
    .secOthers .itemNewsRecommend .titNewsRecommend, .secOthers .swiper-slide .titNewsRecommend {
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_50);
        line-height: var(--spLineHeight15_26);
        margin-top: 1.5rem;
    }
    /* .secOthers .itemNewsRecommend .imgTour img, 
    .secOthers .swiper-slide .imgTour img {
        border-radius: 1.5rem;
    } */
    .secOthers .itemNewsRecommend .txtPlace::before,
    .secOthers .swiper-slide .txtPlace::before {
        left: 0.5rem;
    }
    .secOthers .itemNewsRecommend .txtPeriod::before, 
    .secOthers .swiper-slide .txtPeriod::before {
        left: 0.5rem;
    }
    .secOthers .txtNewsRecommend::after {
        content: '';
        width: 2.2rem;
        height: 2.2rem;
        background: var(--keyColor);
        border-radius: 50%;
        position: absolute;
        right: 2rem;
        bottom: 3rem;
    }
    .secOthers .txtNewsRecommend::before {
        content: '';
        width: 1.2rem;
        height: 0.6rem;
        bottom: 3.8rem;
        right: 2.5rem;
    }
}

/* secBackBtn */
.secBackBtn{
    margin-top: 5rem;
}
.secBackBtn .cmnBtnBox .btnInner{
    width: 36rem;
    height: 7.8rem;
    border-radius: 4rem;
    background: var(--whiteColor);
    border: 0.1rem solid var(--keyColor);
    color: var(--keyColor);
}
.secBackBtn .cmnBtnBox .btnInner::after {
    filter: unset;
}
@media only screen and (max-width:1215px){}
/* PC時のみホバーアクション */
@media (min-width:1215px) {
    .secBackBtn .cmnBtnBox .btnInner:hover {
        background: var(--keyColor);
        color: var(--whiteColor);
        border: 0.1rem solid var(--whiteColor);
    }
    .secBackBtn .cmnBtnBox .btnInner:hover::after {
        filter: brightness(0) invert(1);
    }
}
@media only screen and (max-width:1215px) {
    .secBackBtn{
        margin: 2rem auto 0;
    }
    .secBackBtn .cmnBtnBox .btnInner{
        width: 100%;
        height: 5.8rem;
        border-radius: 2.9rem;
    }
}