/*features_common.css*/
.sub-inner {
    width: 1000px;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    margin: 0 auto;
}

inner .sub-inner,
.sub-inner .sub-inner {
    padding-left: 0;
    padding-right: 0;
}

@media screen and (max-width: 768px) {
    .sub-inner {
        width: 100%;
        max-width: 100%;
        padding-left: 15px;
        padding-right: 15px;
        margin: 0 auto;
    }
    inner .sub-inner,
    .sub-inner .sub-inner {
        padding-left: 0;
        padding-right: 0;
    }
}


/* MV summer special start */
.summer_gray_bg {
    background: #f8f8f8;
}

.summer_special_mv {
    position: relative;
    background: url(/img/features_common/features_common_mv.jpg) no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 409px;
}

.summer_special_mv .sub-mv-container {
    max-width: 1480px;
    padding: 0 20px;
    margin: 0 auto;
}

.accomo_box {
    position: absolute;
    bottom: 40px;
    width: fit-content;
    background: #fff;
    border-radius: 6px;
    padding: 30px 35px;
}

.accomo_box .accomo_ttl {
    width: 322px;
    font-size: 1.8rem;
    font-weight: bold;
    background: #005bac;
    color: #fff;
    text-align: center;
    border-radius: 4px;
    padding: 12px 0;
    margin-bottom: 27px;
}

.accomo_label {
    font-size: 1.4rem;
    font-weight: 500;
    margin-bottom: 8px;
}

.accomo_select_container {
    display: flex;
    gap: 10px;
}

.accomo_select {
    width: 212px;
    height: 46px;
    border: 1px solid #cccccc;
    border-radius: 4px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-left: 15px;
}

.accomo_select {
    background: url("/img/features_common/blue_down_arrow.png") no-repeat right 15px center;
    background-size: 12px;
}

.accomo_select_container .list_btn {
    cursor: pointer;
    width: 100px;
    font-size: 1.6rem;
    font-weight: bold;
    background: #005bac;
    color: #fff;
    text-align: center;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.accomo_select:focus-visible,
.accomo_select:focus {
    border: 1px solid #cccccc;
    outline: none;
}

.summer_special_bar {
    background: #005bac;
}

.special_bar_container {
    max-width: 960px;
    margin: 0 auto;
    border-left: 1px solid #2a4358;
    border-right: 1px solid #2a4358;
}

.summer_special_bar ul {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
}

.summer_special_bar li {
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    border-bottom: 1px solid #2a4358;
}

.summer_special_bar li::after {
    content: "";
    width: 1px;
    height: 100%;
    background: #2a4358;
}

.summer_special_bar li:last-child::after {
    content: none;
}

.summer_special_bar li a {
    display: block;
    width: 100%;
}

.summer_special_bar li .a_text {
    width: 100%;
    text-align: center;
    color: #fff;
    font-weight: 700;
    font-size: 1.5rem;
    position: relative;
    /*padding-right: 33px;*/
    padding-left: 18px;
    padding-right: 24px;
}

.summer_special_bar li span {
    color: #fff;
    font-weight: 700;
    font-size: 1.2rem;
}

.summer_special_bar li .a_text::after {
    content: "";
    background: url(/img/features_common/white_down_arrow.png) no-repeat;
    background-size: contain;
    width: 8.5px;
    height: 8.5px;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
}

.summer_special_bar li .a_text.right_arrow::after {
    transform: translateY(-50%) rotate(-90deg);
}

.dest_brpc {
    display: block;
}

.dest_brsp {
    display: none;
}

@media screen and (max-width: 960px) {
    .summer_special_bar ul {
        grid-template-columns: unset;
        grid-template-areas: "first-bar first-bar second-bar second-bar third-bar third-bar""fourth-bar fourth-bar fourth-bar fifth-bar fifth-bar fifth-bar";
    }

    .summer_special_bar li:first-child {
        grid-area: first-bar;
    }

    .summer_special_bar li:nth-child(2) {
        grid-area: second-bar;
    }

    .summer_special_bar li:nth-child(3) {
        grid-area: third-bar;
    }

    .summer_special_bar li:nth-child(4) {
        grid-area: fourth-bar;
        border-bottom: none;
    }

    .summer_special_bar li:last-child {
        grid-area: fifth-bar;
        border-bottom: none;
    }

    .summer_special_bar li .a_text {
        width: fit-content;
        margin: 0 auto;
        padding-right: 0;
    }

    .summer_special_bar li .a_text::after {
        right: -30px;
    }
}

@media screen and (max-width: 768px) {
    .summer_special_mv {
        height: 200px;
    }

    .accomo_box {
        padding: 20px 26px;
        bottom: -132px;
        left: 50%;
        transform: translateX(-50%);
        box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    }

    .accomo_box .accomo_ttl {
        width: 290px;
        font-size: 1.6rem;
        margin-bottom: 13px;
    }

    .accomo_select {
        width: 200px;
    }

    .accomo_select_container .list_btn {
        width: 80px;
    }

    .summer_special_bar {
        margin-top: 147px;
    }

    .summer_special_bar li {
        height: 50px;
    }

    .summer_special_bar li .a_text {
        font-size: 1.2rem;
/*        padding-left: 10px;*/
    }

    .summer_special_bar li .a_text::after {
        right: -16px;
    }

    .summer_special_bar li span {
        display: none;
    }

    .dest_brpc {
        display: none;
    }

    .dest_brsp {
        display: block;
    }
}

@media screen and (max-width: 350px) {
    .accomo_box .accomo_ttl {
        width: 250px;
    }

    .accomo_select {
        width: 160px;
    }

    .accomo_select_container .list_btn {
        width: 70px;
    }

    .summer_special_bar li .a_text {
        padding-right: 25px;
    }

    .summer_special_bar li .a_text::after {
        right: 2px;
    }
}

/* MV summer special end */

/* popular dates start */

.pdate_wrapper {
    max-width: 630px;
    margin: 0 auto;
}

.pdate_wrapper .pmoth_flex {
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
    margin: 35px 0 40px;
}

.pdate_wrapper .pmonth {
    cursor: pointer;
    font-size: 2rem;
    font-weight: 700;
    color: #d6d6d6;
    border: 2px solid #d6d6d6;
    border-radius: 5px;
    padding: 7px 31px 10px;
}

.pdate_wrapper .pmonth.active {
    background: #ed7274;
    border: 2px solid #ed7275;
    color: #fff;
}

.pdate_wrapper .pdate_flex {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    align-items: center;
    justify-content: center;
    margin-bottom: 40px;
}

.pdate_wrapper .pdate {
    cursor: pointer;
    border: 1px solid #006cc5;
    padding: 22px 23px 15px;
    position: relative;
}

.pdate_wrapper .pdate:nth-child(even) {
    border: 1px solid #d33238;
}

.pdate_wrapper .pdate::before {
    content: "";
    width: 100%;
    height: 10px;
    background: #006cc6;
    position: absolute;
    top: 0;
    left: 0;
}

.pdate_wrapper .pdate:nth-child(even)::before {
    background: #d43238;
}

.pdate_wrapper .pdate:nth-child(even) span {
    color: #d43238;
}

.pdate_wrapper .pdate span {
    font-size: 2rem;
    font-weight: 700;
    color: #005bac;
    display: block;
    text-align: center;
}

.pdate_wrapper .pday {
    border-top: 1px solid;
    margin-top: 5px;
}

.special_search_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    font-weight: 700;
    border: 1px solid #cccccc;
    border-radius: 4px;
    width: 360px;
    height: 70px;
    margin: 0 auto;
    position: relative;
}

.special_search_btn::after {
    content: "";
    background: url(/img/features_common/red_down_arrow.png) no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
    .pdate_wrapper .pmonth {
        font-size: 1.6rem;
        padding: 7px 30px 10px;
    }

    .special_search_btn {
        font-size: 1.6rem;
        width: 295px;
    }
}

/* popular dates end */

/* popular hotels start */
.plan_detail_ttl.discount_avaliable span {
    display: block;
    font-size: 1.6rem;
    font-weight: 700;
}

.photel_section {
    padding: 60px 0;
}

.photel_blog .blog_img_container {
    display: flex;
    gap: 10px;
}

.photel_blog .blog_img {
    max-width: 164px;
}

.photel_blog .blog_cate {
    font-size: 1rem;
    font-weight: 500;
    background: #917330;
    color: #ffffff;
    padding: 5px 8px;
    width: fit-content;
    margin-bottom: 10px;
}

.photel_blog .blog_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    color: #008ae0;
}

.photel_blog .blog_desc_text {
    font-size: 1.4rem;
    margin: 20px 0;
}

.photel_blog .blog_btn {
    width: 240px;
    height: 38px;
    font-size: 1.6rem;
    font-weight: 500;
    color: #005bac;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ddefff;
    border: 1px solid #005bad;
    border-radius: 100vmax;
    position: relative;
    margin: 0 auto;
}

.photel_blog .blog_btn::after {
    content: "";
    background: url(/img/features_common/blue_down_arrow.png) no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(-90deg);
    right: 18px;
}

.twocol_detail_btn {
    width: 240px;
    height: 38px;
    font-size: 1.6rem;
    font-weight: 500;
    color: #005bac;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ddefff;
    border: 1px solid #005bad;
    border-radius: 100vmax;
    position: relative;
    margin: 0 auto;
}

.twocol_detail_btn::after {
    content: "";
    background: url(/img/features_common/blue_down_arrow.png) no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(-90deg);
    right: 18px;
}

@media screen and (max-width: 768px) {
    .photel_section {
        padding: 30px 0 20px;
    }

    .photel_blog .blog_desc_text {
        margin: 10px 0;
    }

    .plan_detail_ttl.discount_avaliable span {
        font-size: 1.4rem;
    }
}

/* popular hotels end */

/* popular hotels(2) Start */

.photel_wrap {
    max-width: 960px;
    margin: 0 auto;
    margin-top: 40px;
}

.photel_blog_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.photel_blog {
    border: 1px solid #cccccc;
    padding: 20px;
    background: #ffffff;
    margin-bottom: 30px;
}

.photel_blog_container.one_column .photel_blog {
    width: 100%;
}

.photel_blog_container.two_column .photel_blog {
    width: 464px;
    max-width: 48.5%;
}

.photel_blog_container.three_column .photel_blog {
    width: 300px;
    max-width: 32%;
}

.photel_blog_container.three_column .photel_blog .blog_img_container {
    display: block;
}

.photel_blog_container.three_column .photel_blog .blog_img {
    width: 100%;
    max-width: 100%;
    margin: 0 auto 15px;
}

.photel_blog_container.three_column .photel_blog .blog_img img {
    display: block;
    margin: 0 auto;
}

.photel_blog_container.three_column .photel_blog .blog_desc_text {
    margin-top: 12px;
}

@media screen and (max-width:768px) {
    .photel_wrap {
        position: relative;
        margin-top: 30px;
    }
    .photel_blog {
        margin-bottom: 0;
        padding: 20px 15px;
    }
    .photel_blog_container{
        display: block;
    }
    .photel_blog_container.one_column .slick-list,
    .photel_blog_container.two_column .slick-list,
    .photel_blog_container.three_column .slick-list {
        padding: 0 10% 0 0 !important;
    }
    .photel_blog_container.one_column .photel_blog,
    .photel_blog_container.two_column .photel_blog,
    .photel_blog_container.three_column .photel_blog {
        width: 100%;
        margin-right: 20px;
    }
    .photel_slider {
        padding-bottom: 20px;
    }
    .photel_slider .slick-dots li {
        width: 12px;
        height: 12px;
    }
    .photel_slider .slick-dots li button {
        width: 12px;
        height: 12px;
        position: relative;
    }
    .photel_slider .slick-dots li button:before {
        width: 12px;
        height: 12px;
        background-color: #005bac;
        color: transparent;
        border-radius: 50%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
    }
    .photel_blog .blog_img_container {
        display: block;
    }
    .photel_blog .blog_img {
        width: 100%;
        max-width: 100%;
        margin-bottom: 15px;
    }
    .photel_blog .blog_img img {
        display: block;
        margin: 0 auto;
    }
    
    
}

/* popular hotels(2) End */


/* search keyword start */
.summer_searchkey_section {
    padding: 60px 0;
}

.summer_searchkey_container {
    max-width: 960px;
    margin: 0 auto;
}

.summer_key_wrapper {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin: 40px 0 0;
}

.summer_key_wrapper .summer_key {
    display: block;
    width: fit-content;
    font-size: 1.6rem;
    font-weight: 500;
    color: #5b8faf;
    background: #feffdd;
    border: 1px solid #5b8faf;
    border-radius: 100vmax;
    padding: 5px 22px;
}

.summer_keyimg_wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 29px;
    margin: 40px 0 0;
}

.summer_keyimg img {
    width: 100%;
}

@media screen and (max-width: 768px) {
    .summer_searchkey_section {
        padding: 30px 0;
    }
    .summer_key_wrapper .summer_key {
        font-size: 1.4rem;
    }
    .summer_key_wrapper {
        margin: 30px 0;
        gap: 10px 10px;
    }
    .summer_keyimg_wrapper {
        grid-template-columns: repeat(2, 1fr);
    }
    .summer_keyimg_wrapper {
        gap: 10px;
        margin: 30px 0 0;
    }
}

/* search keyword end */

/* popular destination start */
.summer_pdestination_section {
    padding: 60px 0;
}

.summer_pdestination_container {
    max-width: 960px;
    margin: 0 auto;
}

.destination_city_wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 15px;
    max-width: 525px;
    margin: 40px auto;
}

.destination_city {
    display: inline-block;
    width: 100%;
    font-size: 2rem;
    font-weight: 700;
    color: #d6d6d6;
    padding: 6px 28px;
    border: 2px solid #d6d6d6;
    border-radius: 5px;
}

.destination_city:hover {
    opacity: 1;
}

.destination_city.active {
    background: #ed7274;
    border: 2px solid #ed7275;
    color: #fff;
}

.attraction_txt {
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    background: #dee2e8;
    margin: 40px 0;
    padding: 18px 0;
    border-bottom: 2px solid #c7ced8;
}

.attraction_txt .display_txt {
    margin-left: 10px;
}

.attraction_txt.no_margin {
    margin: 0;
}

.attraction_txt.breduce-20 {
    margin: 40px 0 20px;
}

.attraction_txt .blue_text {
    font-size: 1.4rem;
    color: #005bac;
    font-weight: 700;
}

.osaka_castle_container {
    display: flex;
    gap: 30px;
    margin: 40px 0 56px;
}

.osaka_castle_ttl {
    font-size: 1.8rem;
    font-weight: 700;
}

.osaka_castle_ttl span {
    font-size: 1.6rem;
    font-weight: 700;
}

.osaka_castle_img {
    margin: 16px 0 20px;
}

.osaka_castle_text {
    font-size: 1.6rem;
    font-weight: 400;
}

.hotel_keihan_container {
    display: flex;
    gap: 30px;
    margin-top: 40px;
}

.hotel_keihan_blog {
    width: calc(100% / 3);
}

.hotel_keihan_cate {
    width: fit-content;
    font-size: 1rem;
    font-weight: 500;
    color: #fff;
    background: #917330;
    padding: 4px 8px;
}

.hotel_keihan_img_swiper {
    position: relative;
    overflow: hidden;
    padding-bottom: 40px;
}

.hotel_keihan_img {
    width: 100%;
    margin-bottom: 40px;
}


.summer_special_page .hotel_keihan_img_swiper .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
}

.hotel_keihan_img img {
    width: 100%;
}

.hotel_keihan_img_swiper .swiper-button-prev:after {
    content: "";
    background: url(/img/features_common/swiper_before.png) no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
}

.hotel_keihan_img_swiper .swiper-button-next:after {
    content: "";
    background: url(/img/features_common/swiper_after.png) no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
}

.hotel_keihan_ttl {
    width: fit-content;
    font-size: 1.8rem;
    font-weight: 700;
    margin: 8px 0 14px;
}

.hotel_fee_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    background: #ededed;
    border: 1px solid #cccccc;
    padding: 10px 15px 10px 15px;
}

.hotel_fee_txt {
    font-size: 1.6rem;
    font-weight: 400;
    margin: 10px 0;
}

.hotel_fee_num {
    font-size: 1.6rem;
    font-weight: 700;
    color: #d43238;
    text-align: right;
    margin-bottom: 13px;
}

.details_application_btn {
    display: block;
    width: fit-content;
    margin: 0 auto;
    font-size: 1.6rem;
    font-weight: 500;
    color: #005bac;
    background: #ddefff;
    border: 1px solid #005bad;
    border-radius: 100vmax;
    padding: 8px 38px 8px 20px;
    position: relative;
}

.details_application_btn::after {
    content: "";
    background: url(/img/features_common/right_blue_arrow.png) no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
}

.hotel_feesec_wrapper {
    margin-top: 30px;
}

@media screen and (max-width: 768px) {
    .summer_pdestination_section {
        padding: 30px 0;
    }

    .destination_city_wrapper {
        margin: 20px auto;
    }

    .destination_city {
        font-size: 1.6rem;
    }

    .attraction_txt {
        font-size: 1.6rem;
        padding: 13px 15px;
        margin: 20px 0;
    }

    .osaka_castle_container {
        flex-direction: column;
        margin: 20px 0 47px;
    }

    .osaka_castle {
        max-width: 464px;
        margin: 0 auto;
        padding-bottom: 47px;
        border-bottom: 1px solid #cccccc;
    }

    .osaka_castle:last-child {
        padding-bottom: 0;
        border-bottom: unset;
    }

    .osaka_castle_text {
        font-size: 1.4rem;
    }

    .hotel_keihan_container {
        flex-direction: column;
        padding: 0 20px;
    }

    .hotel_keihan_blog {
        width: 100%;
        padding-bottom: 30px;
        border-bottom: 1px solid #cccccc;
    }

    .hotel_keihan_blog:last-child {
        padding-bottom: 0;
        border-bottom: unset;
    }
}

@media screen and (max-width: 350px) {
    .hotel_keihan_container {
        padding: 0 10px;
    }
}

/* popular destination end */

/* recommendation plan start */
.summer_recommend_section {
    padding: 60px 0;
}

.summer_recommend_container {
    max-width: 960px;
    margin: 0 auto;
}

.attraction_txt.margin {
    margin: 40px 0;
}

.summer_experience_box {
    border: 1px solid #005bac;
    padding: 30px 0;
}

.choose_plan_text {
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    width: fit-content;
    margin: 0 auto;
    padding: 0 40px;
    position: relative;
}

.choose_plan_text br {
    display: none;
}

.choose_plan_text::before {
    content: "";
    display: block;
    width: 2px;
    height: 30px;
    background: #212121;
    position: absolute;
    top: 0;
    left: 0;
    transform: rotate(145deg);
}

.choose_plan_text::after {
    content: "";
    display: block;
    width: 2px;
    height: 30px;
    background: #212121;
    position: absolute;
    top: 0;
    right: 0;
    transform: rotate(-145deg);
}

.eg_experience {
    width: fit-content;
    margin: 19px auto;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 7px 34px;
    background: #005bac;
    color: #fff;
    border-radius: 100vmax;
}

.merchant_txt {
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 15px;
}

.include_exp_box {
    background: #e8e8e8;
    max-width: 628px;
    margin: 0 auto;
    margin-bottom: 20px;
    border-radius: 10px;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.include_exp_box .left {
    margin-right: 10px;
    font-weight: 700;
}

.click_list_btn {
    display: block;
    width: fit-content;
    font-size: 1.8rem;
    font-weight: 700;
    margin: 0 auto;
    padding: 22px 75px 22px 56px;
    border: 1px solid #cccccc;
    position: relative;
}

.click_list_btn br {
    display: none;
}

.click_list_btn::after {
    content: "";
    background: url(/img/features_common/red_arrow.png) no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
}

.urben_hotel_kyoto_wrapper {
    margin: 40px 0 60px;
}

.urben_hotel_kyoto_container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.urben_hotel_cate {
    font-size: 1rem;
    font-weight: 500;
    width: fit-content;
    color: #fff;
    background: #917330;
    padding: 4px 8px;
}

.urben_hotel_ttl {
    width: fit-content;
    font-size: 1.8rem;
    font-weight: 700;
    margin: 10px 0 14px;
}

.urben_hotel_kyotoblog .hotel_fee_txt {
    margin-top: 20px;
}

.urben_hotel_kyotoblog .discount_btn_div {
    margin: 0 0 15px;
}

.ad_discount_text {
    font-size: 1.4rem;
    margin-bottom: 27px;
}

.ebird_discount_box {
    border: 1px solid #005bac;
    padding: 30px 0 24px;
    margin-top: 40px;
}

.reservation_text {
    font-size: 1.6rem;
    text-align: center;
}

.ebird_discount_wrapper {
    max-width: 716px;
    margin: 18px auto 20px;
    display: flex;
    gap: 20px;
}

.ebird_discount {
    width: 230px;
    display: flex;
    align-items: center;
}

.ebird_discount .advance_discount_btn {
    width: 106px;
    max-width: 100%;
    padding: 0;
    height: 46px;
    justify-content: center;
    align-items: center;
}

.ebird_discount .ebird_date {
    font-size: 1.6rem;
    font-weight: bold;
    border: 1px solid #eb2a89;
    height: 46px;
    padding: 0;
    width: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.eligible_txt {
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .summer_recommend_section {
        padding: 30px 0;
    }

    .attraction_txt .blue_text {
        font-size: 1.2rem;
    }

    .attraction_txt.margin {
        margin: 18px 0 20px;
    }

    .choose_plan_text {
        font-size: 1.6rem;
        padding: 0 25px;
    }

    .choose_plan_text br {
        display: block;
    }

    .choose_plan_text::before {
        height: 35px;
        top: 15px;
    }

    .choose_plan_text::after {
        height: 35px;
        top: 15px;
    }

    .summer_experience_box {
        padding: 20px 15px;
    }

    .eg_experience {
        font-size: 1.4rem;
        margin: 15px auto;
    }

    .merchant_txt {
        font-size: 1.6rem;
    }

    .include_exp_box {
        flex-direction: column;
        gap: 8px;
        align-items: start;
        justify-content: start;
    }

    .click_list_btn {
        font-size: 1.6rem;
        padding: 18px 70px 18px 50px;
    }

    .click_list_btn br {
        display: block;
    }

    .urben_hotel_ttl {
        font-size: 1.6rem;
        margin: 10px 0 10px;
    }

    .urben_hotel_kyoto_box {
        margin: 30px 0;
        padding: 30px 0;
        border-top: 1px solid #d5d5d5;
        border-bottom: 1px solid #d5d5d5;
    }

    .urben_hotel_kyoto_wrapper {
        margin: 0;
    }

    .urben_hotel_kyoto_container {
        display: flex;
        gap: 0;
        padding-bottom: 60px;
    }

    .urben_hotel_kyotoblog .hotel_fee_txt {
        font-size: 1.4rem;
        margin-top: 15px;
    }

    .ad_discount_text {
        margin-bottom: 17px;
    }

    .ebird_discount_box {
        padding: 20px 0 15px;
    }

    .reservation_text {
        font-size: 1.4rem;
    }

    .ebird_discount_wrapper {
        margin: 15px auto;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }

    .eligible_txt {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 370px) {
    .click_list_btn {
        font-size: 1.4rem;
        padding: 18px 55px 18px 35px;
    }
}

/* recommendation plan end */

/* recommendation accomodation start */
.summer_reaccomidation_section {
    padding: 60px 0;
}

.summer_reaccomidation_container {
    max-width: 960px;
    margin: 40px auto 0;
}

.summer_reaccomidation_container .attraction_txt.second {
    margin-top: 70px;
}

.ranking_detail-div.reaccomidition {
    padding-bottom: 40px;
    border-bottom: 1px solid #707070;
}

.summer_reaccomidation_container .taoya_ttl {
    margin-top: 10px;
}

.summer_reaccomidation_container .ranking_info_div {
    display: grid;
    grid-template-areas: "reaccomidationOne reaccomidationThree""reaccomidationTwo reaccomidationFour";
    gap: 0 30px;
}

.summer_reaccomidation_top.one {
    grid-area: reaccomidationOne;
}

.summer_reaccomidation_top.three {
    grid-area: reaccomidationThree;
}

.summer_reaccomidation_bottom.two {
    grid-area: reaccomidationTwo;
}

.summer_reaccomidation_bottom.four {
    grid-area: reaccomidationFour;
}

.summer_reaccomidation_container .plan_detail_para {
    margin-bottom: 15px;
    line-height: 1.5;
}

.summer_reaccomidation_container .accommodation_plan_div {
    margin-top: 30px;
    margin-bottom: 10px;
}

.summer_reaccomidation_container .example_para_txt {
    font-size: 1.6rem;
    font-weight: 400;
}

.summer_reaccomidation_container .price_txt {
    font-size: 1.6rem;
}

.ranking_ttl.mt-70 {
    margin-top: 70px;
}

.viewby_area_container {
    margin: 40px 0;
    display: grid;
/*    gap: 40px;*/
}

.viewby_area_container .area_row {
    display: flex;
}

.viewby_area_container .area_col {
    border-right: 1px solid #2a4358;
}

.viewby_area_container .area_col:last-child {
    border-right: unset;
}

.viewby_area_container .area_col .txt {
    font-size: 1.6rem;
    font-weight: 700;
    background: #005bac;
    color: #fff;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding-right: 20px;
}

.viewby_area_container .area_col .txt::after {
    content: "";
    background: url(/img/features_common/white_down_arrow.png) no-repeat;
    background-size: contain;
    width: 8.5px;
    height: 8.5px;
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
}

.viewby_area_container .area_first_row .area_col {
    width: calc(100% / 2);
}

.viewby_area_container .area_sec_row .area_col {
    width: calc(100% / 3);
}

.viewby_area_container .area_third_row .area_col {
    width: calc(100% / 4);
}

.viewby_area_container .area_fourth_row .area_col {
    width: calc(100% / 5);
}

.viewby_area_container .area_five_row .area_col {
    width: calc(100% / 6);
}

.viewby_area_container .area_six_row .area_col {
    width: calc(100% / 7);
}

.viewby_area_container .area_seven_row .area_col {
    width: calc(100% / 8);
}

.cbld_h4 {
    font-size: 1.8rem;
    font-weight: 700;
    padding: 12px 0;
    padding-left: 16px;
    border-bottom: 2px solid #c7ced8;
    position: relative;
    margin-top: 30px;
    margin-bottom: 20px;
}

.cbld_h4::before {
    content: "";
    width: 6px;
    height: 100%;
    background: #005bac;
    position: absolute;
    top: 0;
    left: 0;
}


.kyoto_station_ttl {
    font-size: 1.8rem;
    font-weight: 700;
    padding: 12px 0;
    padding-left: 16px;
    border-bottom: 2px solid #c7ced8;
    position: relative;
}

.kyoto_station_ttl::before {
    content: "";
    width: 6px;
    height: 100%;
    background: #005bac;
    position: absolute;
    top: 0;
    left: 0;
}

.kyoto_station_txt {
    font-size: 1.6rem;
    margin-top: 20px;
}

@media screen and (max-width: 900px) {
    .viewby_area_container .area_col .txt {
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 800px) {
    .viewby_area_container .area_col .txt {
        font-size: 1.2rem;
    }
}

@media screen and (max-width: 768px) {
    .summer_reaccomidation_section {
        padding: 30px 0;
    }

    .ranking_detail-div.reaccomidition {
        padding: 0 20px;
        border-bottom: unset;
    }

    .summer_reaccomidation_container .ranking_info_div {
        grid-template-areas: "reaccomidationOne""reaccomidationThree""reaccomidationTwo""reaccomidationFour";
        gap: 20px;
    }

    .summer_reaccomidation_container .plan_detail_para {
        margin-bottom: 10px;
    }

    .summer_reaccomidation_container .accommodation_plan_div {
        margin-top: 0;
    }

    .summer_reaccomidation_container .trade_mark_txt {
        margin-bottom: -6px;
    }
    
    .viewby_area_container .area_row{
        flex-wrap: wrap;
        row-gap: 2px;
    }

    .viewby_area_container {
        margin: 20px 0;
/*        gap: 2px;*/
    }

    .viewby_area_container .area_col .txt {
        font-size: 1.4rem;
        height: 44px;
    }

    .viewby_area_container .area_third_row .area_col,
    .viewby_area_container .area_fourth_row .area_col,
    .viewby_area_container .area_six_row .area_col,
    .viewby_area_container .area_five_row .area_col,
    .viewby_area_container .area_seven_row .area_col {
        width: calc(100% / 3);
    }

    .viewby_area_container .area_five_row .area_col:last-child,
    .viewby_area_container .area_five_row .area_col:nth-last-child(2),
    .viewby_area_container .area_five_row .area_col:nth-last-child(3),
    .viewby_area_container .area_seven_row .area_col:nth-last-child(2),
    .viewby_area_container .area_seven_row .area_col:nth-last-child(3) {
        display: block;
    }
*/

    .viewby_area_container {
        margin: 40px 0 25px;
    }
    
    .cbld_h4 {
        font-size: 1.6rem;
    }

    .kyoto_station_ttl {
        font-size: 1.6rem;
    }

    .kyoto_station_txt {
        font-size: 1.4rem;
    }
}

/* recommendation accomodation end */

/* tour hightlights start */
.summer_tour_section {
    padding: 60px 0;
}

.summer_tour_container {
    max-width: 960px;
    margin: 0 auto;
}

.tour_plan_txt {
    font-size: 1.6rem;
    font-weight: 700;
    margin: 40px 0 18px;
}

.tour_plan_txtdiv {
    font-size: 1.6rem;
    margin-bottom: 15px;
}

.tour_plan_txtdiv .link {
    font-weight: 500;
    color: #008ae0;
}

.plan_list_wrapper .plan_list {
    font-size: 1.4rem;
    position: relative;
    padding-left: 15px;
    margin-bottom: 5px;
}

.plan_list_wrapper .plan_list:last-child {
    margin-bottom: 0;
}

.plan_list_wrapper .plan_list::before {
    content: "※";
    font-size: 1.2rem;
    position: absolute;
    left: 0;
    top: 3px;
}

.tiktok_ehotel_box {
    border: 1px solid #005bac;
    padding: 28px 30px;
    margin-top: 25px;
}

.tiktok_ehotel_ttl {
    font-size: 1.6rem;
    font-weight: bold;
    color: #fff;
    background: #005bac;
    width: 224px;
    height: 39px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100vmax;
    margin-bottom: 20px;
}

.tiktok_ehotel {
    display: block;
    font-size: 1.6rem;
    font-weight: 500;
    color: #008ae0;
    line-height: 1.2;
    padding-left: 15px;
    margin-bottom: 5px;
    position: relative;
}

.tiktok_ehotel::before {
    content: "";
    background: url(/img/features_common/right_blue_triangle.png) no-repeat;
    background-size: contain;
    display: block;
    width: 12px;
    height: 10px;
    position: absolute;
    left: 0;
    top: 3px;
}

@media screen and (max-width: 768px) {
    .summer_tour_section {
        padding: 30px 0;
    }

    .tour_plan_txt {
        margin: 20px 0 16px;
    }

    .tour_plan_txtdiv {
        font-size: 1.4rem;
    }

    .tiktok_ehotel_box {
        margin-top: 20px;
        padding: 18px 20px;
    }

    .tiktok_ehotel_ttl {
        width: 204px;
        height: 36px;
        font-size: 1.4rem;
    }
}

/* tour hightlights end */

/* swiper css start */
.summer_special_page .swiper-pagination-bullet {
    width: 14px;
    height: 14px;
}

.summer_special_page .swiper-pagination-bullet-active {
    background: #005bac;
}

/* swiper css end */


/* Schedule and Information start */
.schedule-section {
    padding: 60px 0 20px;
}

.schedule_info_table {
    width: 100%;
    margin-top: 30px;
}

.schedule_info_table,
.schedule_info_table th,
.schedule_info_table td {
    border: 1px solid #d6d6d6;
    border-collapse: collapse;
    background-color: #e1ebeb;
}

.date_th {
    width: 80px;
}

.schedule_info_table th,
.schedule_info_table td {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.6;
    padding: 6px 15px;
}

.schedule_info_table td {
    padding: 15px;
}

.schedule_txt_div {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}

.schedule_left_div {
    width: 50px;
}

.schedule_right_div {
    width: calc(100% - 60px);
}

.schedule_txt {
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.6;
}

.space_txt {
    font-weight: 700;
    color: #005bac;
    margin-top: 10px;
}

.star_txt {
    font-weight: 700;
    color: #ed7274;
    background-color: #F8CDDF;
}

.flight_txt {
    text-align: end;
}

.table_align {
    text-align: center;
    vertical-align: middle;
}

.way_txt {
    display: inline;
    padding-top: 5px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.6;
    color: #ed7274;
    background-color: #f8e6cd;
}

.date_pl {
    font-size: 1.8rem;
    font-weight: 700;
    color: #ed7274;
    padding-left: 16px;
}

.hotel_list_div {
    margin-top: 50px;
}

.hotel_list_txt {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.6;
}

.blackout_txt {
    font-size: 1.6rem;
    line-height: 1.6;
    margin-top: 10px;
}

.hotel_list_btn_div {
    display: flex;
    flex-wrap: wrap;
    gap: 1px;
    margin: 15px 0 50px;
}

.hotel_list_btn {
    display: block;
    width: fit-content;
    position: relative;
    font-size: 1.4rem;
    line-height: 1.6;
    background: #005bac;
    color: #fff;
    padding: 10px 34px 11px 11px;
}

.hotel_list_btn::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    width: 9px;
    height: 9px;
    background-image: url(/img/features_common/white_down.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.ranking_top.schedule_top .dots-wrap {
    bottom: -19%;
    right: 38%;
    transform: translate(-39%, 40%);
}

.schedule_img .swiper-button-prev,
.schedule_img .swiper-button-next {
    width: 36px;
}

.schedule_img .swiper-button-prev:after,
.schedule_img .swiper-button-next:after {
    position: absolute;
    width: 36px;
    height: 36px;
    top: 0%;
    transform: translateY(-96%);
}

.resort_table {
    width: 100%;
    border-top: 1px solid #707070;
    border-bottom: 1px solid #707070;
}

.ranking_info_div.sec-scheinfo-div {
    margin-top: 50px;
}

.sec-scheinfo-div .scheinfo_box {
    border: 1px solid #CCCCCC;
    padding: 20px 20px 40px;
    margin-top: 40px;
}

.sec-scheinfo-div .scheinfo_box .ractangle_list_wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.sec-scheinfo-div .scheinfo_box .ractangle_list {
    font-size: 1.6rem;
    font-weight: 400;
    padding-left: 15px;
    position: relative;
}

.sec-scheinfo-div .scheinfo_box .ractangle_list::before {
    content: "";
    width: 10px;
    height: 10px;
    background: #000;
    position: absolute;
    top: 7px;
    left: 0;
}

.sec-scheinfo-div .scheinfo_box .dot_list {
    font-size: 1.6rem;
    font-weight: 400;
    padding-left: 7px;
    position: relative;
}

.sec-scheinfo-div .scheinfo_box .dot_list::after {
    content: ".";
    position: absolute;
    top: 0;
    left: 0;
}

.sec-scheinfo-div .tour_list_btn {
    width: 100%;
    height: 38px;
    font-size: 1.6rem;
    font-weight: 500;
    color: #005BAC;
    background: #DDEFFF;
    border: 1px solid #005BAD;
    border-radius: 100vmax;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px 0;
    position: relative;
}

.sec-scheinfo-div .tour_list_btn::after {
    content: "";
    background: url(/img/features_common/right_blue_arrow.png) no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
    .ranking_info_div.sec-scheinfo-div {
        gap: 0;
    }

    .sec-scheinfo-div .tour_list_btn {
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 370px) {
    .sec-scheinfo-div .tour_list_btn {
        font-size: 1.2rem;
    }

    .sec-scheinfo-div .scheinfo_box .ractangle_list_wrapper {
        grid-template-columns: 1fr;
    }
}

/* /// */
.resort_para {
    color: #d43238;
}

.resort_table td {
    background-color: #ededed;
    padding: 9px;
}

.resort_table tr {
    border-bottom: 1px solid #707070;
}

.resort_td {
    width: 98px;
    vertical-align: middle;
    padding: 9px 7px !important;
}

.resort_td.resort_sec_td {
    font-weight: 700;
    background-color: #d43238;
    color: #fff;
    letter-spacing: -1px;
}

.advance_txt {
    font-weight: 700;
}

.room_txt {
    position: relative;
    padding-left: 13px;
}

.room_txt::before {
    content: " ";
    position: absolute;
    top: 7px;
    left: 0;
    width: 10px;
    height: 10px;
    background-color: #212121;
}

.facility_div {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.facility_txt {
    position: relative;
    padding-left: 20px;
}

.facility_txt::before {
    content: "";
    position: absolute;
    top: 2px;
    left: 0;
    width: 15px;
    height: 15px;
    background-image: url(/img/features_common/wifi.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.non_smoke_txt::before {
    background-image: url(/img/features_common/non_smoke.png);
}

.tiolet_txt::before {
    background-image: url(/img/features_common/tiolet.png);
}

.select_div {
    display: flex;
    align-items: center;
    gap: 19px;
}

.select_div .select_box {
    position: relative;
    border: 1px solid #cccccc;
    border-radius: 4px;
    padding: 15px;
    width: 100%;
    max-width: 315px;
    appearance: none;
    background: url(/img/features_common/blue_down_arrow.png);
    background-repeat: no-repeat;
    background-size: 11px 11px;
    background-position: 95%;
    font-size: 1.6rem;
    font-weight: 400;
    cursor: pointer;
}

.accommodation_plan_div.special_div {
    padding: 8px 0px 12px 10px;
}

.accommodation_plan_div .special_txt {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.5;
    background: #D43238;
    color: #fff;
    padding: 3px 10px 3px 3px;
    border-radius: 4px;
    margin-left: 40px;
}

@media screen and (max-width: 850px) {
    .select_txt {
        padding-right: 126px;
    }

    .select_div .select_box {
        max-width: 280px;
    }
}

@media screen and (max-width: 768px) {
    .schedule-section {
        padding: 30px 0;
    }

    .schedule_info_table {
        margin-top: 20px;
    }

    .schedule_info_table th,
    .schedule_info_table td {
        font-size: 1.2rem;
        line-height: 1.5;
        padding: 6px 1px;
    }

    .date_th {
        width: fit-content;
    }

    .schedule_txt {
        font-size: 1.2rem;
        line-height: 1.5;
    }

    .schedule_left_div {
        width: 38px;
    }

    .schedule_right_div {
        width: calc(100% - 45px);
    }

    .schedule_info_table td {
        padding: 11px;
    }

    .flight_txt {
        font-size: 1.2rem;
    }

    .schedule_info_table .table_align {
        padding: 10px;
    }

    .schedule_info_table .table_align_p {
        padding: 2px;
    }

    .schedule_txt_div {
        margin: 0;
    }

    .way_txt {
        padding-top: 3px;
    }

    .way_txt,
    .date_pl {
        font-size: 1.6rem;
    }

    .star_txt {
        font-size: 1.2rem;
    }

    .hotel_list_div {
        margin-top: 30px;
    }

    .hotel_list_txt {
        font-size: 1.8rem;
    }

    .blackout_txt,
    .hotel_name_txt {
        font-size: 1.4rem;
    }

    .hotel_list_btn_div {
        margin: 6px 0 20px 0;
    }

    .hotel_list_btn {
        font-size: 1.2rem;
        padding: 9px 34px 6px 11px;
    }

    .car_num_txt.car_num_txt_sp {
        font-size: 1.8rem;
    }

    .resort_table {
        margin-top: 15px;
    }

    .price_txt.resort_price {
        font-size: 1.8rem;
    }

    .facility_txt {
        font-size: 1.4rem;
    }

    .select_div {
        gap: 10px;
    }

    .select_div .select_box {
        padding: 12px 15px;
        max-width: 180px;
    }

    .search_region_btn.keihan_btn {
        width: 110px;
    }

    .search_region_btn .search_region_txt {
        font-size: 1.4rem;
    }

    .room_txt::before {
        top: 6px;
    }

}

@media screen and (max-width: 365px) {
    .select_txt {
        padding-right: 50px;
    }
}

@media screen and (max-width: 350px) {
    .select_txt {
        font-size: 1.2rem;
        padding-right: 37px;
    }

    .accommodation_plan_div .special_txt {
        margin-left: 20px;
    }

}

/* Schedule and Information end */

/* Three Spacia attractions start */
.attract_section {
    padding: 60px 0;
}

.seat_type_txt {
    /* max-height: 120px;  */
    overflow: hidden;
    opacity: 1;
    transition: max-height 0.5s ease;
    position: relative;
}

.seat_type_txt::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60px;
    background: linear-gradient(transparent, white 90%);
    pointer-events: none;
}

.see_more_btn {
    position: relative;
    font-size: 1.4rem;
    line-height: 1.6;
    background: none;
    border: 1px solid #d9d9d9;
    width: 129px;
    height: 36px;
    border-radius: 20px;
    color: #707070;
    cursor: pointer;
    margin: 0 auto;
    transition: all 0.5s 1s ease-in-out;
}

.see_more_btn::after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    margin-left: 5px;
    margin-top: -5px;
    width: 9px;
    height: 9px;
    background-image: url(/img/features_common/down_arrow.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.cl.see_more_btn::after {
    transform:rotate(180deg);
    margin-top: 0;
}

.seat_type_txt.close::after {
    display: none;
}

.spacia_features .tx_cent {
    margin-top: 10px;
}

.three_slider_blk.spacia_features {
    align-items: start;
    margin-top: 40px;
}

.three_slider_blk.spacia_features .swiper-button-prev,
.three_slider_blk.spacia_features .swiper-button-next {
    position: absolute;
    top: 225px;
    transform: unset;
}

.three_slider_blk.spacia_features .ranking_div {
    border-bottom: 2px solid #C7CED8;
}

@media screen and (max-width: 768px) {
    .attract_section {
        padding: 30px 0;
    }

    .three_slider_blk.spacia_features {
        padding-bottom: 10px;
        margin-top: 20px;
    }

    .summer_special_page .spacia_features .swiper-pagination-bullet {
        width: 12px;
        height: 12px;
    }

    .three_slider_blk.spacia_features .ar_set {
        margin: 15px 0 15px;
    }

    .three_slider_blk.spacia_features .swiper-button-prev,
    .three_slider_blk.spacia_features .swiper-button-next {
        top: 200px;
    }
}

/* Three Spacia attractions end */

/* Seat Details start */
.seat_section {
    padding: 60px 0;
}

.goods_btn.usage_btn {
    display: block;
    max-width: 360px;
    border-radius: 40px;
    margin-top: 20px;
}

@media screen and (max-width: 768px) {
    .seat_section {
        padding: 30px 0;
    }

    .goods_btn.usage_btn {
        margin: 30px auto 0 auto;
    }
}

/* Seat Details end */

/* Compartment Cockpit Suite Plan start */
.compart_section {
    padding: 60px 0;
}

.accept_txt {
    position: relative;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
    padding-top: 30px;
}

.accept_txt::before {
    content: " ";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 300px;
    height: 2px;
    background-image: url(/img/features_common/color_ttl_bar.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.plan_detail_ttl.compart_txt::before {
    content: unset;
}

.plan_detail_ttl.compart_txt {
    padding-top: 5px;
}

.recommended_div {
    border: 1px solid #005bac;
    padding: 30px 20px;
    margin-top: 40px;
}

.recommended_txt {
    position: relative;
    width: fit-content;
    margin: 0 auto;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.6;
    padding: 0 20px;
    text-align: center;
}

.recommended_txt::before {
    content: "";
    position: absolute;
    top: -5px;
    left: 0;
    width: 10px;
    height: 35px;
    background-image: url(/img/features_common/Line_left.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.recommended_txt::after {
    content: "";
    position: absolute;
    top: -5px;
    right: 0;
    width: 10px;
    height: 35px;
    background-image: url(/img/features_common/Line_right.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.recommended_list {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}

.recommended_list ul li {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.6;
}

.car_num_txt {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.6;
    margin-bottom: 14px;
}

.car_num_container {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    margin-top: 30px;
    margin-bottom: 60px;
}

.car_left_div {
    max-width: 464px;
    width: 100%;
}

.car_left_img img {
    width: 100%;
    height: 100%;
}

.display_txt {
    font-size: 1.2rem;
    line-height: 1.5;
    color: #212121;
}

@media screen and (max-width: 810px) {
    .car_num_txt {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 768px) {
    .compart_section {
        padding: 30px 0;
    }

    .accept_txt {
        font-size: 1.4rem;
        padding-top: 15px;
    }

    .recommended_div {
        margin-top: 30px;
        padding: 20px;
    }

    .recommended_txt {
        font-size: 1.6rem;
    }

    .recommended_list ul li {
        font-size: 1.6rem;
    }

    .car_num_container {
        flex-direction: column;
        gap: 20px;
        margin-bottom: 30px;
    }

    .car_num_txt {
        font-size: 1.6rem;
    }

    .car_left_div {
        max-width: 100%;
    }

    .attraction_txt .display_txt {
        display: block;
        margin-left: 0;
    }
}

/* Compartment Cockpit Suite Plan end */

/* Plan details and reservations start */
.plan_detail_container {
    background-color: #f8f8f8;
}

.plan_detail_sub_container {
    padding-top: 60px;
    padding-bottom: 60px;
}

.plan_detail_ttl {
    position: relative;
    padding-top: 22px;
    font-size: 3.2rem;
    font-weight: 700;
    text-align: center;
}

.plan_detail_ttl::before {
    content: " ";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 300px;
    height: 2px;
    background-image: url(/img/features_common/color_ttl_bar.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.plan_detail_para {
    font-size: 1.6rem;
    line-height: 1.6;
}

.suite_access_txt {
    font-weight: 500;
    color: #008ae0;
}

.trade_mark {
    position: relative;
    padding-left: 15px;
}

.trade_mark::before {
    content: "※";
    position: absolute;
    top: 4px;
    left: 0;
    font-size: 12px;
    width: 12px;
    height: 10px;
    color: #212121;
}

.trade_mark_txt {
    color: #212121;
}

.trade_mark-size {
    font-size: 12px;
}

.additional_para::before {
    top: 1px;
    left: 39px;
}

.choose_area_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.6;
    margin-top: 30px;
    text-align: center;
}

.btn_div {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 27px;
}

.pink_btn,
.gray_btn {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.6;
    color: #ffffff;
    background-color: #ed7274;
    border-radius: 5px;
    padding: 4px 30px;
}

.gray_btn {
    color: #d6d6d6;
    background-color: #ffffff;
    border: 2px solid #d6d6d6;
    padding: 4px 30px 2px;
}

.gray_btn.active {
    color: #ffffff;
    background-color: #ed7274;
    border: 2px solid #ED7275;
}

.achoose_btn:hover {
    opacity: 1;
}

.ranking_div {
    background: #dee2e8;
    border-bottom: 1px solid #707070;
    text-align: center;
    padding: 20px 0 15px;
/*    margin-top: 42px;*/
}

.ranking_ttl {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.2;
    color: #212121;
}

.ranking_logo_img {
    width: 60px;
    height: 76px;
}

.ranking_logo_img img {
    width: 100%;
    height: 100%;
}

.ranking_logo_div {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 30px;
}

.ranking_logo_ttl {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.6;
}

.ranking_logo_ttl_div .taoya_ttl {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.2;
}

.ranking_info_div {
    display: flex;
    gap: 30px;
    margin-top: 40px;
}

.left_ranking_info_div {
    width: calc(100% - 494px);
    position: relative;
}

.ranking_top .dots-wrap {
    position: absolute;
    bottom: -9%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.ranking_top .dots-wrap li {
    width: 14px;
    height: 14px;
}

.ranking_top .slick-next {
    content: none !important;
}

.ranking_top .slick-prev:before {
    content: " ";
    position: absolute;
    width: 36px;
    height: 36px;
    left: 190%;
    transform: translate(0, -50%) rotate(0);
    background-image: url(/img/features_common/prev_arrow.png);
    background-repeat: no-repeat;
    background-size: contain;
}

.ranking_top .slick-prev {
    z-index: 1;
}

.ranking_top .slick-next:before {
    content: " ";
    position: absolute;
    width: 36px;
    height: 36px;
    right: 190%;
    transform: translate(0, -50%) rotate(0);
    background-image: url(/img/features_common/next_arrow.png);
    background-repeat: no-repeat;
    background-size: contain;
}

.ranking_top .ranking_img_slider {
    margin-bottom: 10px;
}

.right_ranking_info_div {
    width: 464px;
}

.ranking_table {
    width: 100%;
    border-top: 1px solid #707070;
    border-bottom: 1px solid #707070;
}

.ranking_table_row {
    display: block;
    border-bottom: 1px solid #cccccc;
}

.last_table_row {
    border-bottom: none;
}

.left_td {
    width: 140px;
    background-color: #ededed;
    padding: 10px 10px 4px 10px;
}

.right_td {
    width: calc(100% - 140px);
    padding: 10px 10px 4px 10px;
}

.discount_btn_div {
    display: flex;
    gap: 10px;
    margin: 20px 0;
}

.advance_discount_btn {
    display: flex;
    align-items: center;
    max-width: 86px;
    width: 100%;
    height: 30px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.9;
    color: #ffffff;
    background: #eb2a89;
    padding: 2px 11px;
}

.discount_num {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.6;
    color: #ffffff;
    margin-top: 3px;
}

.discount_txt {
    display: block;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.9;
    color: #ffffff;
    margin-top: 2px;
}

.non_smoking_txt {
    position: relative;
    display: block;
    max-width: 95px;
    width: 100%;
    height: 30px;
    background-color: #084773;
    padding: 2px 10px 2px 29px;
}

.non_smoking_txt::before {
    content: " ";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(10px, -50%);
    width: 14px;
    height: 14px;
    background-image: url(/img/features_common/non_smoking.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.discount_price .accommodation_plan_div span {
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.6;
}

.accommodation_plan_div {
    background-color: #ededed;
    border: 1px solid #cccccc;
    padding: 10px 15px 9px 15px;
    margin-top: 20px;
}

.accommodation_plan_div span {
    font-size: 1.6rem;
    font-weight: 700;
    font-weight: bold;
}

.price_txt {
    display: flex;
    justify-content: end;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.6;
    color: #d43238;
    margin-top: 14px;
}

.example_para_txt {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.6;
}

.search_region_btn {
    display: block;
    max-width: 240px;
    width: 100%;
    height: 38px;
    border-radius: 25px;
    background-color: #ddefff;
    border: 1px solid #005bad;
    padding: 7px 0px;
    margin: 15px auto 0 auto;
    text-align: center;
}

.search_region_txt {
    position: relative;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.6;
    color: #005bac;
}

.search_region_txt::after {
    content: " ";
    position: absolute;
    top: 50%;
    right: -52%;
    transform: translate(10%, -50%);
    width: 9px;
    height: 9px;
    background-image: url(/img/features_common/right_blue_arrow.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

@media screen and (max-width: 900px) {
    .left_ranking_info_div {
        width: 40%;
    }

    .right_ranking_info_div {
        width: 60%;
    }

    .ranking_top .dots-wrap {
        right: 33%;
    }
}

@media screen and (max-width: 768px) {
    .plan_detail_sub_container {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .plan_detail_para {
        font-size: 1.4rem;
    }

    .suite_access_txt {
        font-size: 1.2rem;
    }

    .trade_mark {
        padding-left: 15px;
    }

    .plan_detail_ttl {
        font-size: 2rem;
        line-height: 1.6;
        padding-top: 16px;
    }

    .plan_detail_ttl::before {
        width: 150px;
    }

    .choose_area_ttl {
        font-size: 1.4rem;
    }

    .btn_div {
        margin-top: 23px;
        gap: 11px;
    }

    .pink_btn,
    .gray_btn {
        font-size: 1.6rem;
    }

    .ranking_logo_div {
        gap: 10px;
    }

    .ranking_ttl {
        font-size: 1.6rem;
    }

    .ranking_div {
        padding: 15px 10px 9px;
/*        margin-top: 30px;*/
    }

    .ranking_logo_img {
        width: 44px;
        height: 56px;
    }

    .ranking_logo_ttl {
        font-size: 1.2rem;
    }

    .ranking_logo_ttl_div .taoya_ttl {
        font-size: 1.6rem;
    }

    .ranking_info_div {
        flex-direction: column;
    }

    .left_ranking_info_div {
        width: 100%;
    }

    .ranking_top .dots-wrap {
        bottom: -5%;
        right: 50%;
        transform: translate(50%, 10%);
    }

    .ranking_top .dots-wrap li {
        width: 9px;
        height: 9px;
    }

    .ranking_table {
        margin-top: 7px;
    }

    .right_ranking_info_div {
        width: 100%;
    }

    .left_td {
        width: 122px;
    }

    .right_td {
        width: calc(100% - 122px);
    }

    .discount_btn_div {
        margin: 17px 0 14px 0;
    }

    .discount_price {
        font-size: 1.2rem;
    }

    .accommodation_plan_div {
        margin-top: 10px;
    }

    .price_txt {
        font-size: 1.6rem;
        margin-bottom: 7px;
    }

    .example_para_txt {
        font-size: 1.4rem;
    }

    .trade_mark_txt {
        font-size: 1.4rem;
    }

    .trade_mark::before {
        top: 1px;
    }
}

@media screen and (max-width: 400px) {
    .ranking_top .dots-wrap {
        bottom: -11%;
    }
}

/* Plan details and reservations end */

/* Cockpit Suite Access start */

.cockpit_suite_container {
    padding: 60px 0;
}

.cockpit_suite_ttl_div {
    padding: 18px 0 16px 10px;
    border-bottom: 1px solid #c7ced8;
    border-left: 6px solid #005bac;
}

.cockpit_suite_ttl {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.2;
}

.cockpit_suite_para {
    line-height: 1.4;
    margin-top: 20px;
}

.additional_charge_table {
    width: 100%;
/*    margin-top: 35px;*/
    border: 1px solid #cccccc;
/*    margin-top: 40px;*/
}

.additional_charge_row {
    text-align: center;
    background-color: #ededed;
    border-bottom: 1px solid #cccccc;
}

.additional_charge_data {
    font-size: 1.8rem;
    font-weight: 600;
    padding: 10px 15px 10px 15px;
}

.additional_charge_data_pb {
    padding-bottom: 20px;
    background-color: #fff;
}

.additional_charge_data ul {
    margin-bottom: 25px;
}

.additional_charge_data ul li,
.additional_charge_data span {
    line-height: 1.6;
}

@media screen and (max-width: 768px) {
    .cockpit_suite_container {
        padding: 30px 0;
    }

    .cockpit_suite_ttl {
        font-size: 1.6rem;
    }

    .additional_charge_data {
        font-size: 1.6rem;
    }
}

/* Cockpit Suite Access end */

/* Second plan details and reservations start */
.sec_plan_detail_container {
    background-color: #f8f8f8;
    padding: 60px 0;
}

.sec_plan_detail_para {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.6;
    text-align: center;
    margin-top: 30px;
}

.sec_outline {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.6;
    text-align: center;
    margin-top: 30px;
}

.goods_btn_div {
    display: flex;
    gap: 30px;
    justify-content: center;
    align-items: center;
    margin: 35px 0 40px;
}

.goods_btn {
    max-width: 464px;
    width: 100%;
    height: 70px;
    border: 1px solid #cccccc;
    border-radius: 4px;
    padding: 22px 0 20px 0;
    position: relative;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: -1px;
    background-color: #ffffff;
    text-align: center;
}

.goods_btn::after {
    content: " ";
    position: absolute;
    top: 50%;
    right: 17px;
    transform: translateY(-50%);
    width: 9px;
    height: 9px;
    background-image: url(/img/features_common/red_arrow.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    margin-top: -2px;
}

@media screen and (max-width: 900px) {
    .goods_btn {
        font-size: 1.6rem;
        padding: 22px 10px 20px 0;
    }
}

@media screen and (max-width: 768px) {
    .sec_plan_detail_container {
        padding: 30px 0;
    }

    .sec_plan_detail_para {
        font-size: 1.6rem;
    }
    
    .sec_outline {
        font-size: 1.6rem;
    }

    .goods_btn_div {
        flex-direction: column;
        gap: 20px;
    }

    .goods_btn {
        font-size: 1.6rem;
        height: auto;
        padding: 17px 30px 15px 20px;
        line-height: 1.3;
        min-height: 50px;
    }

    .goods_btn::after {
        top: 55%;
    }
}

@media screen and (max-width: 376px) {
    .goods_btn {
        font-size: 1.3rem;
/*        padding: 22px 20px 20px;*/
    }

/*
    .goods_btn::after {
        right: 12px;
    }
*/
}

/* Second plan details and reservations end */

/* Urban Hotel Kyoto section start */
.urben_bg {
    background-color: unset;
}

.urben_container {
    padding: 0;
    border: unset;
}

.blog_ttl.urben_ttl {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
    color: #212121;
}

.urben_div {
    display: flex;
    justify-content: space-between;
    margin-top: 15px;
}

.urben_img_div {
    max-width: 464px;
    width: 49%;
}

.urben_img_div img {
    width: 100%;
}

.urben_info_div {
    width: 48%;
    margin-left: 3%;
}

.set_plan_para {
    margin-top: 12px;
}

.urben_sec_div {
    flex-direction: column;
}

.urben_sec_img,
.urben_sec_info {
    width: 100%;
}

.urben_sec_container {
    padding: 0;
    border: unset;
}

.urben_sec_img {
    position: relative;
}

.urben_sec_cate {
    position: absolute;
    top: 0;
    left: 0;
}

.keihan_bg {
    padding: 0;
}

.keihan_div {
    margin-top: 80px;
}

.keihan_txt {
    color: #d43238;
    justify-content: start;
}

.search_region_btn.keihan_btn {
    width: 130px;
    padding: 7px 7px 7px 0;
}

.search_region_btn.keihan_btn .search_region_txt::after {
    right: -19%;
}

.search_region_btn.keihan_btn .search_region_txt.table_two_btn::after {
    right: -55%;
}

.blog_ttl.blog_ttl_color {
    color: #212121;
}

.swiper-urben-pagination {
    display: none;
    position: absolute;
    text-align: center;
    transition: 0.3s opacity;
    transform: translate3d(0, 0, 0);
    z-index: 10;
}

@media screen and (max-width: 768px) {
    .urben_one_div {
        flex-direction: column;
    }

    .urben_one_img,
    .urben_one_info {
        width: 100%;
        max-width: 100%;
    }

    .urben_sec_img {
        position: unset;
    }

    .blog_ttl.urben_ttl.urben_ttl_mt {
        margin-top: unset;
    }

    .blog_ttl.urben_ttl {
        margin-top: 34.5px;
    }

    .swiper-urben-pagination {
        display: block;
    }

    .keihan_div {
        margin-top: 0px;
    }

    .keihan_txt {
        justify-content: end;
    }

    .search_region_btn.search_region_sp {
        width: 130px;
        padding: 7px 7px 7px 0;
    }

    .search_region_btn.search_region_sp .search_region_txt::after {
        right: -19%;
    }
}

/* Urban Hotel Kyoto section end */


/* Urban Hotel Kyoto section (2) Start */

.photel_blog.urben_container,
.photel_blog.urben_sec_container {
    background: transparent;
    margin-bottom: 40px;
}

.two_column .urben_div,
.three_column .urben_div {
    display: block;
}

.two_column .urben_div .urben_img_div,
.three_column .urben_div .urben_img_div {
    width: 100%;
    max-width: 100%;
    margin-bottom: 12px;
}

.two_column .urben_div .urben_info_div,
.three_column .urben_div .urben_info_div {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
}


@media screen and (max-width: 768px) {
    .urben_info_div {
        margin: 12px auto 0;
    }
    .urben_container .search_region_btn.search_region_sp,
    .urben_sec_container .search_region_btn.search_region_sp {
        width: 240px;
    }
    .urben_sec_container {
        position: relative;
    }
    .photel_blog.urben_container,
    .photel_blog.urben_sec_container {
        background: transparent;
        margin-bottom: 0;
    }
    .blog_ttl.urben_ttl {
        font-size: 1.6rem;
    }
}

/* Urban Hotel Kyoto section (2) End */

.plan_ttl,
.plan_plan {
    text-align: start;
}

.kansai_btn_div {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: 30px;
}

.kansai_btn {
    margin: unset;
}

.kansai_btn_margin {
    margin: 0 auto;
}

.swiper-table-pagination,
.swiper-table-two-pagination {
    display: none;
    position: absolute;
    text-align: center;
    transition: 0.3s opacity;
    transform: translate3d(0, 0, 0);
    z-index: 10;
}

@media screen and (max-width: 960px) {

    .swiper-table-pagination,
    .swiper-table-two-pagination {
        display: block;
    }
}


@media screen and (max-width: 768px) {
    .table_section {
        padding: 0 0 20px;
        margin-top: -137px;
    }

    .table_two_section {
        margin-top: -73px;
    }
}

/* Table section end */

/* Faq section start */
.faq_section {
    padding: 40px 0 0 0;
    border-top: 1px solid #E5E5E5;
    margin-top: 40px;
}

.faq_txt {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
}

.faq_div {
    border-bottom: 1px dotted #cccccc;
    padding: 45px 0 35px;
}

.ques_txt {
    position: relative;
    padding-left: 35px;
    font-weight: 700;
}

.ques_txt::before {
    content: "Q";
    position: absolute;
    top: -2px;
    left: 0;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2;
    color: #00b2df;
}

.ans_txt {
    position: relative;
    padding-left: 35px;
    margin-top: 25px;
}

.ans_txt::before {
    content: "A";
    position: absolute;
    top: -7px;
    left: 0;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2;
    color: #ed7274;
}

@media screen and (max-width: 768px) {
    .faq_section {
        margin-top: 30px;
        padding: 30px 0 0 0;
    }

    .faq_div {
        padding: 20px 0 10px;
    }

    .faq_txt {
        font-size: 2rem;
    }

    .ques_txt,
    .ans_txt {
        padding-left: 25px;
    }

    .ques_txt::before,
    .ans_txt::before {
        font-size: 2rem;
    }

    .ans_txt::before {
        top: 0;
    }

    .ans_txt {
        margin-top: 5px;
    }
}

/* Faq section end */


/* Stampy Section */
.sec_stampy {
    margin: 40px 0;
}

.sec_stampy .stampy_notice_txt {
    font-size: 1.8rem;
    font-weight: 500;
    color: #212121;
    line-height: 1.6;
    letter-spacing: 0;
    text-align: center;
    padding: 35px 0;
}

.sec_stampy .stampy_notice_txt span {
    color: #008AE0;
}

.summer_h3_ttl {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0;
    background: #DEE2E8;
    padding: 20px;
    text-align: center;
}

.sec_stampy .stampy_blk {
    max-width: 988px;
    padding: 0 15px;
    margin: 0 auto;
}

.sec_stampy .stampy_fcard {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
/*    padding: 40px 0 40px 0;*/
    padding: 0;
}

.sec_stampy .stampy_fcard_txt p {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0;
    margin-bottom: 40px;
}

.sec_stampy .stampy_fcard_txt p.red {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0;
    color: #D43238;
}

.sec_stampy .benefit_txt {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    color: #212121;
    line-height: 1.6;
    text-align: center;
    max-width: 540px;
    margin: 0 auto 30px;
    position: relative;
}

.sec_stampy .benefit_txt::before {
    content: "";
    width: 2px;
    height: 35px;
    background: #212121;
    position: absolute;
    left: 0;
    bottom: 10px;
    transform: rotate(330deg);
}

.sec_stampy .benefit_txt::after {
    content: "";
    width: 2px;
    height: 35px;
    background: #212121;
    position: absolute;
    right: 0;
    bottom: 10px;
    transform: rotate(25deg);
}

.sec_stampy .benefit_blk {
    border: 1px solid #005BAC;
    padding: 60px;
}

.sec_stampy .benefit_blk .one .txt,
.sec_stampy .benefit_blk .two .txt {
    text-align: center;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
    padding: 40px 0 25px;
}

.sec_stampy .benefit_blk .two .txt {
    padding-bottom: 5px;
}

.sec_stampy .benefit_blk .two .txt2 {
    font-size: 1.4rem;
    text-align: center;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
    margin-bottom: 25px;
}

.sec_stampy .benefit_blk .row {
    display: flex;
    gap: 30px;
}

.sec_stampy .benefit_blk .row .left_col {
    width: 43.5%;
    max-width: 344px;
}

.sec_stampy .benefit_blk .row .left_col .col_ttl {
    background: #005BAC;
    border-radius: 19px;
    padding: 7px 10px;
    max-width: 262px;
    margin: 0 auto 15px;
    text-align: center;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.6;
    color: #fff;
}

.sec_stampy .benefit_blk .row .right_col {
    width: 56.5%;
}

.sec_stampy .benefit_blk .swiper-button-next,
.sec_stampy .benefit_blk .swiper-button-prev {
    top: 50%;
    width: 36px;
    height: 36px;
    transform: translateY(-50%);
}

.sec_stampy .benefit_blk .swiper-button-prev::after {
    content: "";
    background: url(/img/features_common/prev_arrow.png) no-repeat;
    background-size: 100% 100%;
    width: 36px;
    height: 36px;
}

.sec_stampy .benefit_blk .swiper-button-next::after {
    content: "";
    background: url(/img/features_common/next_arrow.png) no-repeat;
    background-size: 100% 100%;
    width: 36px;
    height: 36px;
}

.sec_stampy .benefit_blk .ar_set {
    margin-top: 0px;
}

.sec_stampy .benefit_blk .right_col h4 {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0;
    margin-bottom: 15px;
}

.sec_stampy .benefit_blk .right_col ul li {
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
    position: relative;
    margin-bottom: 35px;
}

.sec_stampy .benefit_blk .premium_wrap {
    margin: 40px 0 55px;
}

.sec_stampy .benefit_blk .premium_wrap .premium_link {
    display: block;
    border: 1px solid #CCCCCC;
    max-width: 464px;
    margin: 0 auto 40px;
    padding: 20px 30px;
    text-align: center;
    font-size: 1.8rem;
    font-weight: 700;
    color: #212121;
    letter-spacing: 0;
    line-height: 1.6;
    position: relative;
    border-radius: 40px;
}

.sec_stampy .benefit_blk .premium_wrap .premium_link::after {
    content: "";
    position: absolute;
    width: 12px;
    height: 12px;
    background: url(/img/features_common/red_arrow.png) no-repeat;
    background-size: 100% 100%;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
}

.sec_stampy .benefit_blk .premium_wrap ul li {
    position: relative;
    font-size: 1.4rem;
    font-weight: 400;
    color: #212121;
    letter-spacing: 0;
    line-height: 1.6;
    padding-left: 15px;
}

.sec_stampy .benefit_blk .premium_wrap ul li::before {
    content: "※";
    position: absolute;
    left: 0;
    top: 0px;
}

/* Goods Section */
.sec_goods {
    margin: 40px 0 40px;
}

.sec_goods .goods_blk {
    margin: 0 auto;
}

.sec_goods .goods_blk .goods_txt {
    text-align: center;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.6;
    padding: 40px 0 65px;
}

.sec_goods .goods_blk .frow_slider,
.sec_goods .goods_blk .srow_slider,
.sec_goods .goods_blk .trow_slider,
.sec_goods .goods_blk .fthrow_slider {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    margin-bottom: 45px;
}

.sec_goods .goods_blk .frow_slider .frow_slider01,
.sec_goods .goods_blk .frow_slider .frow_slider02,
.sec_goods .goods_blk .frow_slider .frow_slider03,
.sec_goods .goods_blk .frow_slider .frow_slider04,
.sec_goods .goods_blk .srow_slider .srow_slider01,
.sec_goods .goods_blk .srow_slider .srow_slider02,
.sec_goods .goods_blk .srow_slider .srow_slider03,
.sec_goods .goods_blk .srow_slider .srow_slider04,
.sec_goods .goods_blk .trow_slider .trow_slider01,
.sec_goods .goods_blk .trow_slider .trow_slider02,
.sec_goods .goods_blk .trow_slider .trow_slider03,
.sec_goods .goods_blk .trow_slider .trow_slider04,
.sec_goods .goods_blk .fthrow_slider .fthrow_slider01,
.sec_goods .goods_blk .fthrow_slider .fthrow_slider02,
.sec_goods .goods_blk .fthrow_slider .fthrow_slider03,
.sec_goods .goods_blk .fthrow_slider .fthrow_slider04 {
    width: 100%;
    max-width: 217px;
}

.com_card_ttl {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.4;
    background: #005BAC;
    border-radius: 6px;
    color: #fff;
    padding: 0 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-bottom: 15px;
    min-height: 83px;
}

.sec_goods .goods_blk .swiper-wrapper {
    height: 217px;
}

.sec_goods .goods_blk .top_conts_slide img {
    margin-bottom: 0;
}

.sec_goods .goods_blk .ar_set {
    margin-top: 15px;
}

.summer_special_page .sec_goods .goods_blk .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
}

.sec_life_size {
    margin: 40px auto 40px;
}

.sec_life_size .life_size_blk .txt {
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.6;
    padding: 40px 0 35px;
    text-align: center;
}

.sec_life_size .life_size_blk .row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.sec_life_size .life_size_blk,
.sec_life_size .stamp_locate_blk {
    max-width: 100%;
    margin: 0 auto;
}

.three_col_blk,
.four_col_blk,
.five_col_blk {
    margin: 40px 0 20px;
}

.three_col_blk table,
.three_col_blk table thead,
.three_col_blk table tbody,
.four_col_blk table,
.four_col_blk table thead,
.four_col_blk table tbody,
.five_col_blk table,
.five_col_blk table thead,
.five_col_blk table tbody {
    display: block;
    width: 100%;
}

.three_col_blk table tr {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-bottom: 1px solid #D6D6D6;
}

.four_col_blk table tr {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-bottom: 1px solid #D6D6D6;
}

.five_col_blk table tr {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    border-bottom: 1px solid #D6D6D6;
}

.stamp_locate_blk table thead tr {
    border-top: 1px solid #D6D6D6;
}

.stamp_locate_blk table thead th {
    background: #E1EBEB;
    padding: 7px;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
    border-left: 1px solid #D6D6D6;
}

.stamp_locate_blk table tbody td {
    background: #fff;
    padding: 16px;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
    border-left: 1px solid #D6D6D6;
    display: flex;
    align-items: center;
}

.stamp_locate_blk table thead tr th:last-child,
.stamp_locate_blk table tbody tr td:last-child {
    border-right: 1px solid #D6D6D6;
}

.stamp_locate_blk table tbody tr td:last-child {
    justify-content: center;
}

.stamp_locate_blk table tbody tr td:last-child img {
    max-width: 16px;
    margin: 0 auto;
}

.sec_event {
    margin-top: 40px;
    margin-bottom: 40px;
}

.sec_event .event_blk {
    max-width: 958px;
    margin: 0 auto;
}

.sec_event .event_blk .txt {
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.6;
    text-align: center;
    padding: 35px 0 30px;
}

.sec_event .event_blk .txt span {
    color: #008AE0;
}

.sec_event .event_blk .step_wrap {
    border: 1px solid #005BAC;
}

.sec_event .event_blk .step_wrap .setp_head {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.sec_event .event_blk .step_wrap .setp_head p {
    font-size: 1.6rem;
    color: #fff;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
    text-align: center;
    background: #7AA0C1;
    padding: 17px 10px;
    border-right: 1px solid #2A4358;
    cursor: pointer;
}

.sec_event .event_blk .step_wrap .setp_head p:last-child {
    border-right: 0;
}

.sec_event .event_blk .step_wrap .setp_head p.active {
    background: #005BAC;
}

.sec_event .event_blk .step_wrap .step_body {
    padding: 30px 60px 90px;
}

.sec_event .event_blk .step_wrap .store {
    display: grid;
    grid-template-columns: 200px minmax(0, 1fr);
    gap: 30px;
    margin-top: 30px;
}

.sec_event .event_blk .step_wrap .store .img {
    display: block;
    width: 178px;
    margin: 0 auto;
}

.sec_event .event_blk .step_wrap .store .img:first-child {
    margin-bottom: 35px;
}

.sec_event .event_blk .step_wrap .store ul li {
    position: relative;
    font-size: 1.6rem;
    font-weight: 400;
    color: #212121;
    letter-spacing: 0;
    line-height: 1.6;
    padding-left: 15px;
    margin-bottom: 10px;
}

.sec_event .event_blk .step_wrap .store ul li::before {
    content: "※";
    position: absolute;
    left: 0;
    top: 0px;
}

.sec_vac {
    background: #ECF4F5;
    padding: 60px 0 320px;
    position: relative;
}

.sec_vac::after {
    content: "";
    background: url(/img/features_common/vacation_banner.png) no-repeat;
    background-size: contain;
    background-position: bottom;
    width: 100%;
    height: 285px;
    position: absolute;
    bottom: 0;
    left: 0;
}

.sec_vac .vac_blk {
    max-width: 958px;
    margin: 0 auto;
}

.sec_vac .vac_ttl {
    font-size: 3.2rem;
    font-weight: 700;
    color: #EF7700;
    letter-spacing: 0;
    line-height: 1.6;
    text-align: center;
}

.sec_vac .vac_ttl span {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
    color: #212121;
    display: block;
}

.sec_vac .vac_blk .img {
    max-width: 432px;
    margin: 30px auto 40px;
}

.sec_vac .vac_blk .vac_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 68px;
    max-width: 890px;
    margin: 0 auto 55px;
}

.sec_vac .vac_blk .vac_list .vac_item p {
    font-size: 2.2rem;
    font-weight: 700;
    letter-spacing: 0;
    color: #212121;
    line-height: 1.6;
    text-align: center;
    max-width: 540px;
    margin: 0 auto 20px;
    position: relative;
}

.sec_vac .vac_blk .vac_list .vac_item p::before {
    content: "";
    width: 2px;
    height: 51px;
    background: #212121;
    position: absolute;
    left: 10px;
    bottom: 0px;
    transform: rotate(330deg);
}

.sec_vac .vac_blk .vac_list .vac_item p::after {
    content: "";
    width: 2px;
    height: 51px;
    background: #212121;
    position: absolute;
    right: 10px;
    bottom: 0px;
    transform: rotate(25deg);
}

.sec_vac .vac_blk .vac_list .vac_item .img {
    max-width: 175px;
    margin: 0 auto;
}

.sec_vac .vac_blk .vac_list .vac_item:nth-child(2) .img {
    max-width: 110px;
    margin: 0 auto;
}

.sec_vac .vac_blk .vac_list .vac_item:nth-child(3) .img {
    max-width: 89px;
    margin: 0 auto;
}

.sec_vac .vac_blk .iframe iframe {
    width: 100%;
    height: 541px;
    margin: 40px 0;
}

.sec_vac .vac_blk .sugotaku_link {
    display: block;
    max-width: 338px;
    margin: 0 auto;
    background: #005BAC;
    border-radius: 30px;
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.6;
    color: #fff;
    text-align: center;
    padding: 17px 20px;
    position: relative;
}

.sec_vac .vac_blk .sugotaku_link::after {
    content: "";
    background: url(/img/features_common/white_right_arrow.png) no-repeat;
    background-size: 100% 100%;
    width: 11px;
    height: 11px;
    position: absolute;
    right: 22px;
    top: 50%;
    transform: translateY(-50%);
}

.sec_night_tour {
    margin-top: 40px;
    margin-bottom: 40px;
}

.sec_night_tour .night_tour_blk {
    max-width: 100%;
    margin: 0 auto;
}

.sec_night_tour .night_tour_blk .row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
/*    margin-top: 55px;*/
}

.sec_night_tour .night_tour_blk .row .col {
    border: 1px solid #005BAC;
    border-radius: 10px;
    padding: 20px 15px;
    background: #fff;
}

.sec_night_tour .night_tour_blk .row .tour_row {
    position: relative;
    padding-left: 50px;
    margin-bottom: 20px;
}

.sec_night_tour .night_tour_blk .row .tour_row .tour_ttl1 {
    text-orientation: mixed;
    background-color: #005BAC;
    border-radius: 22px;
    color: #fff;
    font-weight: 700;
    text-align: center;
    letter-spacing: 3px;
    font-size: 1.6rem;
    line-height: 1.6;
    padding: 5px;
    width: 36px;
    -webkit-writing-mode: vertical-rl;
    -webkit-text-orientation: mixed;
    margin-bottom: 15px;
    position: absolute;
    top: 0;
    left: 0;
    height: 105%;
}

.sec_night_tour .night_tour_blk .row .tour_box h4 {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
    color: #005BAC;
    margin-bottom: 5px;
}

.sec_night_tour .night_tour_blk .row .tour_box.pt {
    padding-top: 20px;
}

.sec_night_tour .night_tour_blk .row .tour_box .box {
    border: 1px solid #617489;
    position: relative;
    margin-bottom: 30px;
    padding: 15px 10px;
}

.sec_night_tour .night_tour_blk .row .tour_box .box::after {
    content: "";
    position: absolute;
    bottom: -12px;
    left: 50%;
    transform: translateX(-50%);
    clip-path: polygon(100% 0, 0 0, 50% 100%);
    background: #707070;
    width: 31px;
    height: 12px;
}

.sec_night_tour .night_tour_blk .row .tour_box .box p {
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
    margin-bottom: 10px;
}

.sec_night_tour .night_tour_blk .row .tour_box .box ul li {
    position: relative;
    font-size: 1.4rem;
    font-weight: 400;
    color: #212121;
    letter-spacing: 0;
    line-height: 1.6;
    padding-left: 15px;
}

.sec_night_tour .night_tour_blk .row .tour_box .box ul li::before {
    content: "※";
    position: absolute;
    left: 0;
    top: 0px;
}

.sec_night_tour .night_tour_blk .row .tour_box .box2 {
    background: #F8F7F4;
    margin-bottom: 12px;
    padding: 10px;
}

.sec_night_tour .night_tour_blk .row .tour_box .box2 p {
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
    position: relative;
    padding-left: 25px;
}

.sec_night_tour .night_tour_blk .row .tour_box .box2 p::before {
    content: "";
    background: url(/img/features_common/box2_icon.png) no-repeat;
    background-size: 100% 100%;
    width: 21px;
    height: 16px;
    position: absolute;
    left: 0;
    top: 4px;
}

.sec_night_tour .night_tour_blk .row .tour_box .box3 {
    font-size: 1.4rem;
    font-weight: 500;
    background: #3E5279;
    color: #fff;
    letter-spacing: 0;
    line-height: 1.6;
    padding: 8px;
    text-align: center;
}

.sec_night_tour .night_tour_blk .row .box4 {
    padding-top: 50px;
}

.sec_night_tour .night_tour_blk .row .box4 h4 {
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.6;
    color: #fff;
    background: #212121;
    padding: 5px 10px;
}

.sec_night_tour .night_tour_blk .row .box4 .txt_blk {
    margin-bottom: 40px;
}

.sec_night_tour .night_tour_blk .row .box4 p {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
}

.sec_night_tour .night_tour_blk .row .box4 p.txt1 {
    font-weight: 700;
    padding: 15px 0 5px;
}

.sec_night_tour .night_tour_blk .row .blk_one {
    padding-bottom: 25px;
    border-bottom: 1px dashed #707070;
}

.sec_night_tour .night_tour_blk .row .blk_two {
    padding: 25px 0;
    border-bottom: 1px dashed #707070;
}

.sec_night_tour .night_tour_blk .row .blk_two .bus_info {
    text-align: center;
}

.sec_night_tour .night_tour_blk .row .blk_two h4 {
    display: inline-block;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
    position: relative;
    margin-bottom: 15px;
    padding-left: 20px;
}

.sec_night_tour .night_tour_blk .row .blk_two h4::before {
    content: "";
    background: url(/img/features_common/bus_icon.png) no-repeat;
    background-size: 100% 100%;
    width: 14px;
    height: 22px;
    position: absolute;
    left: 0;
    top: 45%;
    transform: translateY(-50%);
}

.sec_night_tour .night_tour_blk .row .link_btn,
.sec_search_area .search_area_blk .accor_card .accor_open .link_btn {
    max-width: 240px;
    display: block;
    margin: 20px auto;
    border: 1px solid #005BAD;
    background: #DDEFFF;
    padding: 5px;
    border-radius: 25px;
    font-size: 1.6rem;
    font-weight: 500;
    color: #005BAC;
    letter-spacing: 0;
    line-height: 1.6;
    text-align: center;
    position: relative;
}

.sec_night_tour .night_tour_blk .row .link_btn::after,
.sec_search_area .search_area_blk .accor_card .accor_open .link_btn::after {
    content: "";
    background: url(/img/features_common/right_blue_arrow.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    width: 11px;
    height: 11px;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
}

.sec_night_tour .night_tour_blk .row .blk_two p {
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0;
    text-align: left;
}

.sec_night_tour .night_tour_blk .row .blk_three {
    padding-top: 30px;
}

.sec_night_tour .night_tour_blk .row .blk_three h5 {
    background: #D4E8F4;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
    padding: 10px;
    margin-bottom: 30px;
}

.sec_night_tour .night_tour_blk .row .blk_three p {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
}

.sec_night_tour .night_tour_blk .row .blk_three ul {
    margin: 15px 0;
}

.sec_night_tour .night_tour_blk .row .blk_three ul li {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
}

.sec_search_area {
    margin: 40px 0 40px;
/*    background: #F8F8F8;*/
}

.sec_search_area .search_area_blk {
    max-width: 958px;
    margin: 0 auto;
}

.sec_search_area .search_area_blk .link_blk {
    margin: 40px 0 30px;
}

.sec_search_area .search_area_blk .link_blk ul {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    background: #EDEDED;
}

.sec_search_area .search_area_blk .link_blk ul li p {
    display: block;
    font-size: 1.6rem;
    font-weight: 700;
    color: #005BAC;
    letter-spacing: 0;
    line-height: 1.6;
    text-align: center;
    padding: 20px;
    cursor: pointer;
}

.sec_search_area .search_area_blk .link_blk ul li.active {
    border-bottom: 5px solid #005BAC;
}

.sec_search_area .search_area_blk h4 {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
    color: #005BAC;
    border: 1px solid #CBE6F5;
    background-color: #fff;
    border-radius: 20px;
    padding: 5px 10px;
    text-align: center;
    margin-bottom: 20px;
}


.sec_search_area .search_area_blk .accor_card .img {
    max-width: 100px;
    margin: 0 auto;
}

.sec_search_area .search_area_blk .accor_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.sec_search_area .search_area_blk .accor_card .ttl_row {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr);
    gap: 10px;
    margin-bottom: 15px;
}

.sec_search_area .search_area_blk .accor_card .cat {
    display: inline-block;
    background: #917330;
    color: #fff;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 1.6;
    text-align: center;
    padding: 5px;
    min-width: 36px;
    margin-bottom: 5px;
}

.sec_search_area .search_area_blk .accor_card .top_wrapper {
    padding: 15px;
    border: 1px solid #B0BDC7;
}

.sec_search_area .search_area_blk .accor_card h5 {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
}

.sec_search_area .search_area_blk .accor_card .mid_row {
    display: flex;
    flex-wrap: wrap;
    gap: 2px 10px;
}

.sec_search_area .search_area_blk .accor_card .mid_item {
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
}

.sec_search_area .search_area_blk .accor_card .mid_item span {
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1.6;
/*    color: #005BAC;*/
}

.sec_search_area .search_area_blk .accor_card .slope {
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.6;
    color: #005BAC;
    margin: 15px 0 18px;
    position: relative;
    display: inline-block;
    padding-right: 12px;
}

.sec_search_area .search_area_blk .accor_card .slope::after {
    content: "";
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    width: 6px;
    height: 8px;
    background: #005BAC;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
}

.sec_search_area .search_area_blk .accor_card .map_row p {
    font-size: 1.4rem;
    letter-spacing: 0;
    line-height: 1.6;
    margin-bottom: 5px;
}

.sec_search_area .search_area_blk .accor_card .accor_btn {
    background: #005BAC;
    padding: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
/*    gap: 20px;*/
    transition: 0.5s;
    cursor: pointer;
}

.sec_search_area .search_area_blk .accor_card .accor_btn p {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
    color: #fff;
    margin-right: 10px;
    margin-left: 21px;
}

.sec_search_area .search_area_blk .accor_card .accor_btn img {
    width: 11px;
    height: 11px;
    margin-bottom: 3px;
}

.sec_search_area .search_area_blk .accor_card .accor_btn.active img {
    transform: rotate(180deg);
    transition: 0.5s;
    margin-bottom: 0;
}

.sec_search_area .search_area_blk .accor_card .accor_open {
    border: 1px solid #B0BDC7;
}

.sec_search_area .search_area_blk .accor_card .accor_open .top_wrapper {
    border: none;
}

.sec_search_area .search_area_blk .accor_card .accor_open .ttl {
    border-bottom: 1px dashed #707070;
    padding-bottom: 10px;
}

.sec_search_area .search_area_blk .accor_card .accor_open .ttl h6 {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
    display: inline;
}

.sec_search_area .search_area_blk .accor_card .accor_open .ttl div {
    display: flex;
    align-items: center;
    gap: 5px;
    padding-left: 20px;
}

.sec_search_area .search_area_blk .accor_card .accor_open .ttl img {
    max-width: 20px;
    display: inline;
}

.sec_search_area .search_area_blk .accor_card .accor_open .body_blk {
    padding: 5px 15px 15px;
}

.sec_search_area .search_area_blk .accor_card .accor_open .txt {
    padding-top: 15px;
}

.sec_search_area .search_area_blk .accor_card .accor_open .cost {
    margin: 10px 0 15px;
}

.sec_search_area .search_area_blk .accor_card .accor_open .txt p {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
}

.sec_search_area .search_area_blk .accor_card .accor_open .txt .price {
    font-size: 1.6rem;
    font-weight: 700;
    color: #D43238;
}

.sec_search_area .search_area_blk .accor_card .accor_open .link_btn {
    margin: 15px auto 15px;
}

.sec_search_area .search_area_blk .accor_card .accor_open .blk {
    background: #F0FAFF;
}

.sec_search_area .search_area_blk .accor_card .accor_open .blk.two {
    margin-top: 20px;
}

.sec_search_area .search_area_blk .accor_card .accor_open .blk.two .txt {
    border-bottom: 1px dashed #707070;
}

.sec_search_area .search_area_blk .accor_card .accor_open .select_blk {
    padding-top: 15px;
}

.sec_search_area .search_area_blk .accor_card .accor_open .select_blk select {
    padding: 10px;
    border: 1px solid #CCCCCC;
    width: 100%;
    max-width: 270px;
    appearance: none;
    background: url(/img/features_common/blue_down_arrow.png);
    background-repeat: no-repeat;
    background-size: 11px 11px;
    background-position: 95%;
}

.sec_search_area .search_area_blk .accor_card .accor_open .blk.two .link_btn {
    max-width: 130px;
    margin: 10px auto 15px;
}

.sec_search_area .search_area_blk .accor_card .accor_open .select_box:last-child {
    margin-top: 20px;
}

.sec_search_area .search_area_blk .accor_card .accor_open {
    display: none;
}

.sec_search_area .search_area_blk .swiper-pagination.sp_only {
  display: none;
}
@media screen and (max-width: 960px) {
    .sec_search_area .search_area_blk .accor_blk {
        overflow: hidden;
    }
    .sec_search_area .search_area_blk .accor_card {
        width: 300px;
    }
    .sec_search_area .search_area_blk .swiper-pagination.sp_only {
      display: block;
      position: relative;
      padding-top: 50px;
    }
}

@media screen and (max-width:850px) {
    .com_card_ttl {
        font-size: 1.4rem;
    }
}

@media screen and (max-width:768px) {
    .sec_stampy .stampy_notice_txt {
        font-size: 1.4rem;
        padding: 25px 0;
    }
    .sec_event {
        margin-top: 30px;
        margin-bottom: 30px;
    }
    .sec_event .event_blk .step_wrap .store .img {
        margin-bottom: 20px;
    }
    .sec_event .event_blk .step_wrap .store .img:first-child {
        margin-bottom: 20px;
    }

    .sec_stampy .stampy_blk {
        padding: 0;
    }

    .summer_h3_ttl {
        font-size: 1.6rem;
        padding: 12px;
    }

    .sec_stampy .stampy_fcard {
        grid-template-columns: 1fr;
        gap: 20px;
        max-width: 343px;
        margin: 0 auto;
    }

    .sec_stampy .stampy_fcard_txt p {
        font-size: 1.4rem;
        margin-bottom: 15px;
    }

    .sec_stampy .stampy_fcard_txt p.red {
        font-size: 1.2rem;
    }

    .sec_stampy .benefit_txt {
        font-size: 1.6rem;
        max-width: 328px;
        margin-bottom: 15px;
    }

    .sec_stampy .benefit_txt::before {
        bottom: 25px;
        left: 5px;
        transform: rotate(340deg);
    }

    .sec_stampy .benefit_txt::after {
        bottom: 25px;
        right: 5px;
        transform: rotate(20deg);
    }

    .sec_stampy .benefit_blk {
        padding: 20px 15px 40px;
        max-width: 343px;
        margin: 0 auto
    }

    .sec_stampy .benefit_blk .row {
        flex-direction: column;
        align-items: center;
    }

    .sec_stampy .benefit_blk .row .left_col {
        width: 100%;
        max-width: 314px;
        margin: 0 auto;
    }

    .sec_stampy .benefit_blk .row .right_col {
        width: 100%;
    }

    .sec_stampy .benefit_blk .top_conts_slide img {
        max-width: 314px;
    }

    .sec_stampy .benefit_blk .one .txt,
    .sec_stampy .benefit_blk .two .txt {
        font-size: 1.4rem;
        padding: 40px 0 10px;
        text-align: left;
    }

    .sec_stampy .benefit_blk .one .txt {
        padding-top: 20px;
    }

    .sec_stampy .benefit_blk .right_col h4 {
        margin-bottom: 10px;
    }

    .sec_stampy .benefit_blk .right_col ul li {
        margin-bottom: 30px;
    }

    .sec_stampy .benefit_blk .right_col ul li:last-child {
        margin-bottom: 0;
    }

    .sec_stampy .benefit_blk .premium_wrap .premium_link {
        max-width: 294px;
        font-size: 1.6rem;
        padding: 14px 25px;
        margin-bottom: 20px;
    }

    .sec_stampy .benefit_blk .premium_wrap {
        margin: 15px 0 40px;
    }

    .sec_goods .goods_blk .goods_txt {
        font-size: 1.4rem;
        padding: 25px 0;
    }

    .sec_goods .goods_blk .frow_slider,
    .sec_goods .goods_blk .srow_slider,
    .sec_goods .goods_blk .trow_slider,
    .sec_goods .goods_blk .fthrow_slider {
        grid-template-columns: 1fr;
    }

    .com_card_ttl {
        max-width: 217px;
        margin: 0 auto 10px;
    }

    .sec_goods .goods_blk .top_conts_slide img {
        max-width: 217px;
        margin: 0 auto;
    }

    .sec_life_size .life_size_blk .txt {
        font-size: 1.4rem;
        padding: 25px 0 30px;
    }

    .sec_life_size .life_size_blk .row {
        grid-template-columns: 1fr;
    }

    .sec_life_size .life_size_blk .row .card {
        max-width: 217px;
        margin: 0 auto;
    }

    .stamp_locate_blk .three_col_blk,
    .stamp_locate_blk .four_col_blk,
    .stamp_locate_blk .five_col_blk {
        margin-top: 20px;
    }

    .stamp_locate_blk table thead th {
        font-size: 1.2rem;
        padding: 5px;
    }

    .stamp_locate_blk table tbody td {
        padding: 8px 5px;
    }

    .sec_event .event_blk .txt {
        padding: 20px 0;
    }

    .sec_event .event_blk .step_wrap .step_body {
        padding: 20px 15px;
    }

    .sec_event .event_blk .step_wrap .store {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-top: 20px;
    }

    .sec_event .event_blk .step_wrap .store ul li {
        font-size: 1.4rem;
    }

    .sec_vac {
        padding: 30px 0 120px;
    }

    .sec_vac .vac_ttl {
        font-size: 2rem;
    }

    .sec_vac .vac_ttl span {
        font-size: 1.4rem;
    }

    .sec_vac .vac_blk .img {
        max-width: 220px;
        margin-bottom: 30px;
    }

    .sec_vac .vac_blk .vac_list {
        gap: 10px;
        margin-bottom: 40px;
    }

    .sec_vac .vac_blk .vac_list .vac_item {
        background: #fff;
        border-radius: 10px;
        padding: 12px 5px;
    }

    .sec_vac .vac_blk .vac_list .vac_item p {
        font-size: 1.1rem;
        margin-bottom: 5px;
        letter-spacing: -0.5px;
    }

    .sec_vac .vac_blk .vac_list .vac_item p::before,
    .sec_vac .vac_blk .vac_list .vac_item p::after {
        content: none;
    }

    .sec_vac .vac_blk .vac_list .vac_item .img {
        max-width: 91px;
    }

    .sec_vac .vac_blk .vac_list .vac_item:nth-child(2) .img {
        max-width: 57px;
    }

    .sec_vac .vac_blk .vac_list .vac_item:nth-child(3) .img {
        max-width: 46px;
    }

    .sec_vac .vac_blk .iframe_blk {
        display: grid;
        grid-template-areas: "sugotaku_link"
            "summer_h3_ttl"
            "iframe";
    }

    .sec_vac .vac_blk .iframe_blk .summer_h3_ttl {
        grid-area: summer_h3_ttl;
    }

    .sec_vac .vac_blk .iframe_blk .iframe {
        grid-area: iframe;
        text-align: center;
    }

    .sec_vac .vac_blk .iframe_blk .sugotaku_link {
        grid-area: sugotaku_link;
        width: 100%;
        margin-bottom: 30px;
    }

    .sec_vac .vac_blk .iframe iframe {
        margin: 20px auto;
        max-width: 343px;
        height: 193px;
    }

    .sec_night_tour {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .sec_night_tour .night_tour_blk .row {
        grid-template-columns: 1fr;
/*        margin-top: 20px;*/
    }

    .sec_night_tour .night_tour_blk .row .tour_box .box ul {
        margin-top: 0;
    }

    .sec_night_tour .night_tour_blk .row .box4 .txt_blk {
        margin-bottom: 20px;
    }

    .sec_night_tour .night_tour_blk .row .tour_row:first-child .tour_ttl1 {
        height: 90%;
    }

    .sec_search_area {
        
    }

    .sec_search_area .search_area_blk .link_blk ul li p {
        font-size: 1.4rem;
        padding: 10px;
    }

    .sec_search_area .search_area_blk .link_blk ul li.active {
        border-bottom: 3px solid #005BAC;
    }

    .sec_search_area .search_area_blk h4 {
        font-size: 1.6rem;
    }

    .sec_search_area .search_area_blk .link_blk {
        margin: 20px 0;
    }

    .sec_search_area .search_area_blk .accor_blk {
        position: relative;
        padding-bottom: 0px;
    }

    .sec_search_area .search_area_blk .accor_card {
        width: 300px;
    }

    .sec_search_area .search_area_blk .accor_list {
        gap: 0;
    }

    .sec_night_tour .night_tour_blk .row .box4 {
        padding-top: 35px;
    }

    .sec_night_tour .night_tour_blk .row .right_blk .tour_box .box p {
        margin-bottom: 0;
    }
    .sec_search_area .search_area_blk .swiper-pagination.sp_only {
      padding-top: 40px;
    }
}


/* Process from booking to departure section starts */
.process_booking_departure_sec {
    margin-top: 40px;
    margin-bottom: 40px;
}

.process_booking_departure_sec .process_booking_departure_container {
    max-width: 630px;
    margin: 0 auto;
}

.process_booking_departure_sec .search_block {
    margin-top: 70px;
    position: relative;
}

.process_booking_departure_sec .search_block::after {
    position: absolute;
    content: "";
    bottom: -45px;
    left: 50%;
    background: url(/img/features_common/modal_arr.png) no-repeat;
    background-size: contain;
    transform: translateX(-50%);
    width: 60px;
    height: 25px;
}

.process_booking_departure_sec .search_block:last-child:after {
    display: none;
}

.process_booking_departure_sec .search_plan_box {
    padding-left: 30px;
    display: flex;
    justify-content: space-between;
    background-color: #F7F7F7;
    border: 1px solid #EF7700;
    cursor: pointer;
}

.process_booking_departure_sec .search_txt_img {
    width: calc(100% - 30px);
    display: flex;
    justify-content: space-between;
    gap: 15px;
}

.process_booking_departure_sec .search_img_btn {
    width: 30px;
    display: flex;
    justify-content: end;
}

.process_booking_departure_sec .modal_btn {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #ffffff;
    background-color: #EF7700;
}

.process_booking_departure_sec .plan_box_modal {
    display: none;
}

.process_booking_departure_sec .jr_online_booking {
    position: relative;
    margin-left: 140px;
}

.process_booking_departure_sec .jr_online_booking::before {
    position: absolute;
    top: 0;
    left: -140px;
    content: "";
    background: url(/img/features_common/icon_jr.png) no-repeat;
    background-size: contain;
    width: 138px;
    height: 22px;
}

.process_booking_departure_sec .search_item {
    display: flex;
    align-items: center;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
}

.process_booking_departure_sec .modal_btn_close {
    display: none;
}

.process_booking_departure_sec .plan_box_upper {
    padding: 20px 30px;
    background-color: #FAF6E0;
    border: 1px solid #EF7700;
    border-top: none;
}

.process_booking_departure_sec .plan_box_para {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.5;
}

.process_booking_departure_sec .booking_method_btn_div {
    text-align: center;
    margin-top: 25px;
    margin-bottom: 10px;
}

.process_booking_departure_sec .booking_method_btn {
    cursor: pointer;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.5;
    padding: 16px 35px 16px 30px;
    color: #ffffff;
    background-color: #005BAC;
    border-radius: 25px;
    position: relative;
}

.process_booking_departure_sec .booking_method_btn::after {
    position: absolute;
    content: "";
    top: 50%;
    right: 20px;
    background: url(/img/features_common/white_down_arrow.png) no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    transform: translateY(-50%);
}

.process_booking_departure_sec .plan_box_lower {
    display: none;
    text-align: center;
    margin-top: 20px;
    padding: 15px;
    background-color: #E8E8E8;
    border-radius: 10px;
}

.process_booking_departure_sec .plan_box_lower>span {
    color: #008AE0;
    font-weight: 500;
}

.process_booking_departure_sec .plan_box_lower_show {
    display: block;
}

.process_booking_departure_sec .reg_foc_txt {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 10px;
}

.process_booking_departure_sec .reg_explain {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.5;
}

.accor_img_pc {
    display: block;
}

.accor_img_sp {
    display: none;
}

@media screen and (max-width:768px) {
    .process_booking_departure_sec {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .process_booking_departure_sec .search_block {
        margin-top: 30px;
    }

    .process_booking_departure_sec .search_txt_img {
        align-items: center;
    }

    .process_booking_departure_sec .jr_online_booking {
        display: inline;
    }

    .process_booking_departure_sec .search_item,
    .process_booking_departure_sec .plan_box_para {
        font-size: 1.6rem;
    }

    .process_booking_departure_sec .search_plan_box {
        height: 80px;
        padding-left: 15px;
        gap: 10px;
    }

    .process_booking_departure_sec .booking_method_btn_div {
        margin-top: 45px;
        margin-bottom: 15px;
    }

    .process_booking_departure_sec .plan_box_lower {
        margin-top: 10px;
    }

    .process_booking_departure_sec .reg_explain {
        font-size: 1.4rem;
    }

    .process_booking_departure_sec .search_block::after {
        bottom: -23px;
        width: 30px;
        height: 12.5px;
    }

    .accor_img_pc {
        display: none;
    }

    .accor_img_sp {
        display: block;
    }
}

/* Process from booking to departure section ends */

/* Tobu railway section starts */
.tobu_railway_sec {
    margin-top: 60px;
    margin-bottom: 40px;
}

.tobu_railway_sec .tobu_railway_container {
    max-width: 958px;
    margin: 0 auto;
}

.tobu_railway_card {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.tobu_railway_sec .tobu_return_railway {
    display: flex;
    gap: 15px;
    align-items: center;
}

.tobu_railway_sec .tobu_return_txt {
    margin-left: -10px;
}

.tobu_railway_sec .tobu_return_txt,
.tobu_railway_sec .tobu_railway,
.tobu_railway_sec .tobu_departure {
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.5;
}

.tobu_railway_sec .tobu_railway,
.tobu_railway_sec .tobu_departure {
    padding: 10px 15px;
}

.tobu_railway_sec .tobu_departure_txt {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    margin: 15px 0;
}

.tobu_railway_sec .tobu_railway_chart {
    padding: 0;
    background-color: #fff;
    margin-top: 10px;
}

.tobu_railway_sec .tobu_railway_chart>li {
    text-align: center;
}

.tobu_railway_sec .tobu_chart_ttl {
    padding: 10px;
}

.tobu_railway_sec .tobu_chart_ttl>span {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
}

.tobu_railway_sec .tobu_chart_ttl .for_bus,
.tobu_chart_ttl .for_train {
    width: fit-content;
    padding-left: 30px;
    position: relative;
}

.tobu_railway_sec .tobu_chart_ttl .for_train {
    padding-left: 20px;
}

.tobu_railway_sec .tobu_chart_ttl .for_bus::before,
.tobu_chart_ttl .for_train::before {
    position: absolute;
    content: "";
    top: 1px;
    left: 0;
    background: url(/img/features_common/tobu_bus_icon.png) no-repeat;
    background-size: contain;
    width: 20px;
    height: 13px;
}

.tobu_railway_sec .tobu_chart_ttl .for_train::before {
    background: url(/img/features_common/tobu_train_icon.png) no-repeat;
    background-size: contain;
    width: 13px;
    height: 13px;
}

.tobu_railway_sec .tobu_chart_txt {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    padding: 10px;
    margin-bottom: 15px;
}

.tobu_railway_sec .tobu_chart_line {
    text-align: start !important;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    padding: 15px;
    border: 2px solid #ECE54E;
}

.tobu_railway_sec .tobu_chart_line.tobu_pink_border {
    border: 2px solid #FFC6C6;
}

.tobu_railway_sec .tobu_bus_line,
.tobu_railway_sec .tobu_bus_one_line,
.tobu_railway_sec .tobu_train_line {
    position: relative;
}

.tobu_railway_sec .tobu_bus_line::before,
.tobu_railway_sec .tobu_bus_one_line::before,
.tobu_railway_sec .tobu_train_line::before {
    position: absolute;
    content: "";
    left: 50%;
    bottom: -15px;
    background: url(/img/features_common/tobu_bus_line.png) no-repeat;
    background-size: contain;
    width: 5px;
    height: 15px;
}

.tobu_railway_sec .tobu_train_line::before {
    background: url(/img/features_common/tobu_train_line.png) no-repeat;
    background-size: contain;
}

.tobu_railway_sec .tobu_bus_one_line::before,
.tobu_railway_sec .tobu_train_line::before {
    transform: translateX(-50%);
}

.tobu_railway_sec .tobu_bus_line::after {
    position: absolute;
    content: "";
    right: 50%;
    bottom: -15px;
    background: url(/img/features_common/tobu_bus_line.png) no-repeat;
    background-size: contain;
    width: 5px;
    height: 15px;
}

.tobu_railway_sec .tobu_pink_bg {
    background-color: #FFC6C6;
}

.tobu_railway_sec .tobu_red_bg {
    color: #ffffff;
    background-color: #D43238;
}

.tobu_railway_sec .tobu_navy_bg {
    background-color: #1E2D58;
}

.tobu_railway_sec .tobu_navy_bg>span {
    color: #ffffff;
}

.tobu_railway_sec .tobu_fade_yellow_bg {
    background-color: #FAFBC1;
}

.tobu_railway_sec .tobu_skyblue_bg {
    background-color: #C0EAF8;
}

.tobu_railway_sec .tobu_fade_green_bg {
    background-color: #78FF78;
}

.tobu_railway_sec .tobu_fade_orange_bg {
    background-color: #FFC458;
}

.tobu_railway_btn {
    gap: 20px;
    flex-direction: column;
    margin: 30px 0 30px;
}

.tobu_railway_btn_single {
    max-width: 594px;
    height: auto;
}

@media screen and (max-width:850px) {
    .tobu_railway_sec .tobu_return_railway {
        gap: 5px;
    }

    .tobu_railway_sec .tobu_return_txt,
    .tobu_railway_sec .tobu_railway,
    .tobu_railway_sec .tobu_departure {
        font-size: 1.6rem;
        padding: 10px;
    }
}

@media screen and (max-width:768px) {
    .tobu_railway_sec .tobu_railway_sec {
        padding: 30px 15px;
    }

    .tobu_railway_sec .tobu_railway_card {
        grid-template-columns: repeat(1, 1fr);
    }

    .tobu_railway_sec .tobu_departure_txt {
        font-size: 1.4rem;
    }

    .tobu_railway_btn {
        margin: 20px 0 20px;
    }
}

@media screen and (max-width:370px) {
    .tobu_railway_sec .tobu_return_railway {
        gap: 0;
    }

    .tobu_railway_sec .tobu_return_txt,
    .tobu_railway_sec .tobu_railway,
    .tobu_railway_sec .tobu_departure {
        font-size: 1.4rem;
    }
}

/* Tobu railway section ends */

/* Summer special-2 lower starts */
.facility_sec {
    margin: 40px 0 40px;
}

.kawaguchi_lake_div {
    max-width: 100%;
    margin: 0 auto;
}

.facility_sec .brief_txt {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    padding: 30px 0 50px;
    text-align: center;
}

.facility_sec .amenities_ttl {
    width: fit-content;
    margin: 0 auto;
    position: relative;
    font-size: 2.4rem;
    font-weight: 700;
    padding-bottom: 15px;
}

.facility_sec .amenities_ttl::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: -130px;
    background: url(/img/features_common/amenities_ttl_left.png) no-repeat;
    background-size: contain;
    width: 80px;
    height: 70px;
}

.facility_sec .amenities_ttl::after {
    position: absolute;
    content: "";
    bottom: 0;
    right: -130px;
    background: url(/img/features_common/amenities_ttl_right.png) no-repeat;
    background-size: contain;
    width: 80px;
    height: 70px;
}

.facility_sec .amenities_div_scroll {
    width: 918px;
}

.facility_sec .amenities_div {
/*    overflow-x: scroll;*/
    padding: 30px 20px 60px;
    background-color: #FDF7F5;
    border: 1px solid #FF705E;
    border-radius: 10px;
}

.facility_sec .amenities_div::-webkit-scrollbar {
    width: 20px;
}

.facility_sec .room_food_cards {
    display: flex;
    gap: 10px;
}

.facility_sec .single_room_food_card {
    width: calc((100% - 30px)/4);
}

.facility_sec .fade_orange_bg,
.facility_sec .skyblue_bg {
    padding: 10px;
    text-align: center;
    background-color: #FF705E;
    border-radius: 10px 10px 0 0;
}

.facility_sec .skyblue_bg {
    background-color: #00B2DF;
}

.facility_sec .menu_list_card {
    padding: 20px 30px 20px 15px;
    border-radius: 0 0 10px 10px;
    background-color: #ffffff;
}

.facility_sec .menu_ttl {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    color: #ffffff;
}

.facility_sec .menu_list {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.facility_sec .menu_item {
    width: calc(100% - 35px);
}

.facility_sec .notice_icons {
    display: flex;
    align-items: center;
    gap: 5px;
    width: 20px;
}

.facility_sec .notice_icons>span:last-child {
    font-size: 1.1rem;
    font-weight: 400;
}

.facility_sec .menu_list>span {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.5;
}

.facility_sec .open_close_hour {
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.5;
    margin-top: 20px;
    margin-left: 15px;
    position: relative;
}

.facility_sec .open_close_hour::before {
    position: absolute;
    top: 0;
    left: -15px;
    content: "※";
}

.facility_sec .room_scene {
    display: flex;
    gap: 30px;
    margin-top: 45px;
}

.facility_sec .room_scene_card {
    width: calc((100% - 60px)/3);
}

.facility_sec .room_scene_img {
    width: 100%;
    position: relative;
}

.facility_sec .room_scene_img::after {
    position: absolute;
    content: "イメージ";
    font-size: 1.2rem;
    font-weight: 500;
    color: #ffffff;
    right: 10px;
    bottom: 0;
}

.facility_sec .room_scene_txt {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    margin-top: 20px;
}

.facility_sec .msg_part {
    padding: 0;
}

.facility_sec .single_msg_block {
    display: flex;
    gap: 40px;
}

.facility_sec .msg_block_one {
    width: 120px;
}

.facility_sec .msg_block_two {
    width: calc(100% - 320px);
    margin-bottom: 30px;
}

.facility_sec .msg_block_three {
    text-align: end;
    width: 120px;
}

.facility_sec .msg_block_img {
    width: 120px;
    height: 120px;
    border-radius: 50%;
}

.facility_sec .msg_block_name {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    display: block;
    text-align: center;
    margin-top: 10px;
}

.facility_sec .msg_explanation {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    padding: 30px 30px 30px;
}

.facility_sec .msg_explanation.skyblue_bg_color {
    background-color: #EFFCFF;
    border: 1px solid #C2DFE6;
    border-radius: 10px;
    position: relative;
}

.facility_sec .msg_explanation.skyblue_bg_color::before {
    position: absolute;
    content: "";
    top: 40px;
    left: -13px;
    background: url(/img/features_common/skyblue_arr.png) no-repeat;
    background-size: contain;
    width: 32px;
    height: 22px;
}

.facility_sec .msg_explanation.fade_pink_bg {
    background-color: #FCF8F0;
    border: 1px solid #EAD4A3;
    border-radius: 10px;
    position: relative;
}

.facility_sec .msg_explanation.fade_pink_bg::after {
    position: absolute;
    content: "";
    top: 40px;
    right: -26px;
    background: url(/img/features_common/fade_pink_arr.png) no-repeat;
    background-size: contain;
    width: 32px;
    height: 22px;
}

.facility_sec .msg_explanation.fade_violet_bg {
    background-color: #FFF4FA;
    border: 1px solid #F097C7;
    border-radius: 10px;
    position: relative;
}

.facility_sec .msg_explanation.fade_violet_bg::after {
    position: absolute;
    content: "";
    top: 40px;
    left: -13px;
    background: url(/img/features_common/fade_violet_arr.png) no-repeat;
    background-size: contain;
    width: 32px;
    height: 22px;
}

.facility_sec .room_food_links {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 30px;
}

.facility_sec .single_room_food_link {
    margin: 0;
    padding: 22px 50px 22px 30px;
    width: calc((100% - 60px)/3);
    color: #ffffff;
    background-color: #F06400;
    border-radius: 4px;
}

.facility_sec .click_list_btn::after {
    background: url(/img/features_common/link_arr.png) no-repeat;
    background-size: contain;
}

@media screen and (max-width:1010px) {
    .facility_sec .single_room_food_link {
        width: calc((100% - 30px)/2);
    }
}

@media screen and (max-width:768px) {
    .facility_sec .brief_txt {
        font-size: 1.4rem;
        font-weight: 500;
        padding: 20px 0 40px;
    }

    .facility_sec .amenities_ttl {
        font-size: 1.6rem;
        width: 100%;
        text-align: center;
        padding-bottom: 5px;
    }

    .facility_sec .amenities_ttl::before {
        left: 0;
        width: 60px;
        height: 50px;
    }

    .facility_sec .amenities_ttl::after {
        right: 0;
        width: 60px;
        height: 50px;
    }

    .facility_sec .amenities_div {
        padding: 20px 15px 15px;
    }

    .facility_sec .room_scene {
        margin-top: 35px;
    }

    .facility_sec .room_scene_img::after {
        content: "";
    }

    .facility_sec .room_scene_txt {
        font-size: 1.4rem;
    }

    .facility_sec .msg_part {
        padding: 0;
    }

    .facility_sec .msg_block_img {
        width: 60px;
        height: 60px;
    }

    .facility_sec .msg_block_one,
    .facility_sec .msg_block_two,
    .facility_sec .msg_block_three {
        width: 60px;
    }

    .facility_sec .msg_block_two {
        width: 100%;
    }

    .facility_sec .single_msg_block {
        gap: 30px;
    }

    .facility_sec .msg_explanation {
        padding: 15px 15px 15px;
    }

    .facility_sec .msg_block_two {
        margin-bottom: 15px;
    }

    .facility_sec .room_food_links {
        margin-top: 20px;
    }

    .facility_sec {
        margin: 30px 0 30px;
    }

    .facility_sec .single_room_food_link {
        font-size: 1.8rem;
        padding: 20px 40px 20px 30px;
        width: min(100%, 300px);
    }

    .facility_sec .msg_block_name {
        font-size: 1.2rem;
    }

    .facility_sec .msg_explanation {
        font-size: 1.4rem;
    }
}

/* Summer special-2 lower ends */

/* Addition */

.noticeboard {
    background-color: #d33238;
    color: #fff;
    padding: 10px 0 10px 0;
    font-size: 1.4rem;
}

.noticeboard p,
.noticeboard span,
.noticeboard a {
    color: #fff;
    font-size: 1.4rem;
}

.noticeboard a {
    text-decoration: underline;
}

@media screen and (max-width:768px) {
    .noticeboard p,
    .noticeboard span,
    .noticeboard a {
        font-size: 1.3rem;
    }
}

/* Addition_2 */

.table_two_wrapper .kansai_btn_div {
    flex-wrap: wrap;
}

.table_two_wrapper .three_column .search_region_btn.keihan_btn {
    max-width: 120px;
}

.table_wrapper .photel_blog_container .photel_blog,
.table_two_wrapper .photel_blog_container .photel_blog {
    margin-bottom: 30px;
}

.summer_experience_box {
    margin-top: 40px;
}


@media screen and (max-width:768px) {
    .table_wrapper .photel_blog_container .photel_blog,
    .table_two_wrapper .photel_blog_container .photel_blog {
        margin-bottom: 0;
    }
    .facility_sec .room_food_cards {
        display: block;
        margin: 0 auto;
    }
    .facility_sec .single_room_food_card {
        width: 100%;
        margin: 0 auto 20px;
    }
    .facility_sec .room_scene_card {
        margin: 0 auto;
        margin: 0 10px 0 10px;
    }
    .facility_sec .room_scene_card img {
        max-width: 280px;
        width: 100%;
        margin: 0 auto;
        
    }
    .facility_sec .room_scene {
        display: block;
        margin-bottom: 30px;
    }
    .card_slider .slick-dots li {
        width: 12px;
        height: 12px;
    }
    .card_slider .slick-dots li button:before {
        font-size: 0;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        width: 12px;
        height: 12px;
        background-color: #005bac;
        border-radius: 50%;
    }
    
    
}

/* Accordion */

.js-ac {
    pointer-events: none;
}

@media screen and (max-width:768px) {
    .js-ac .attraction_txt {
        margin: 20px 0 0;
        padding: 10px 35px 10px 20px;
        text-align: left;
    }
    .js-ac {
        pointer-events: auto;
        cursor: pointer;
        position: relative;
    }
    .js-ac:after {
        content: "";
        border-top: 2px solid #212121;
        border-left: 2px solid #212121;
        display: inline-block;
        width: 8px;
        height: 8px;
        transform: rotate(-135deg) translateY(9px);
        position: absolute;
        right: 20px;
        top: 50%;
        margin-top: 0;
        transition: transform .4s;
    }
    .js-ac.is-act:after {
        transform: rotate(45deg) translateY(-10px);
        margin-top: 8px;
    }
    .js-ac-content {
        height: 0;
        line-height: 0;
        opacity: 0;
        overflow: hidden;
        transition: line-height 0.4s, padding 0.4s, opacity 0.4s;
    }
    .js-ac-content.is-open {
        height: auto;
        line-height: 1.5;
        opacity: 1;
    }
    
}

.pl_tab:hover {
    cursor: pointer;
}

.pl_cont {
    display: none;
}
.pl_cont.show {
    display: block;
}

.goods_btn.round_btn01 {
    border-radius: 40px;
}

.sec_night_tour .link_btn.square_btn {
    border-radius: 4px!important;
    
}

/*エリアから探す　tab Switch　Slider*/

.ar_tab:hover {
    cursor: pointer;
}

.ar_cont {
    display: none;
}
.ar_cont.show {
    display: block;
}

.sec_search_area .search_area_blk .accor_list {
    margin-bottom: 30px;
}

.accor_card {
    background-color: #fff;
}

.pdate_wrapper .m_tab_cont {
    display: none;
}

.pdate_wrapper .m_tab_cont.show {
    display: flex;
}


@media screen and (max-width:768px) {
    .sec_search_area .search_area_blk .accor_list {
        display: block;
    }
    .sec_search_area .search_area_blk .accor_list {
        margin-bottom: 50px;
    }
    .accor_list .slick-list {
        padding: 0 10% 0 0 !important;
    }
    .accor_list .accor_card {
        width: 100%;
        margin-right: 15px;
    }
    .accor_list .slick-dots li {
        width: 10px;
        height: 10px;
    }
    .accor_list .slick-dots li button {
        width: 10px;
        height: 10px;
        position: relative;
    }
    .accor_list .slick-dots li button:before {
        width: 10px;
        height: 10px;
        background-color: #005bac;
        color: transparent;
        border-radius: 50%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
    }
    ul.mid_area {
        display: flex!important;
        column-gap: 30px;
        flex-wrap: wrap;
        padding: 12px 12px 6px;
        margin-bottom: 20px;
        border-top: 1px solid #B0BDC7;
        border-bottom: 1px solid #B0BDC7;
    }
    ul.mid_area > li {
        margin-bottom: 6px;
    }
    ul.mid_area > li > a span {
        font-weight: 500;
        color: #005BAC;
    }
    ul.mid_area > li > a span:after {
        content: '';
        display: inline-block;
        vertical-align: middle;
        width: 5px;
        height: 5px;
        border: 0;
        border-bottom: solid 2px #B0BDC7;
        border-right: solid 2px #B0BDC7;
        transform: rotate(45deg);
        margin-left: 10px;
        margin-top: -7px;
    }
    .mid_area_tit {
        padding-top: 20px;
        margin-top: -20px;
    }
    
    
}


/* For Contents Builder*/

.sec_white {
    background-color: #fff;
    padding: 1px 0 40px 0;
}

.sec_gray {
    background-color: #f8f8f8;
    padding: 1px 0 40px 0;
}

h2.cbld_h2 {
    position: relative;
    padding-top: 22px;
    font-size: 3.2rem;
    font-weight: 700;
    text-align: center;
    margin-top: 60px;
    margin-bottom: 35px;
}

h2.cbld_h2::before {
    content: " ";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 300px;
    height: 2px;
    background-image: url(/img/features_common/color_ttl_bar.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

h2.cbld_h2 > span {
    display: block;
    position: relative;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
    margin-bottom: 5px;
}


@media screen and (max-width:768px) {
    h2.cbld_h2 {
        font-size: 2rem;
        line-height: 1.6;
        padding-top: 16px;
        margin-top: 40px;
        margin-bottom: 25px;
    }
    h2.cbld_h2::before {
        width: 150px;
    }
    h2.cbld_h2 > span {
        font-size: 1.4rem;
        margin-bottom: 0;
    }
    .photel_wrapper .slick-dots,
    .photel_wrap .slick-dots {
        bottom: 0;
        margin-top: 10px;
        position: static;
    }
}


.hotel_keihan_img img {
    aspect-ratio: 300 / 192;
    object-fit: cover;
}

.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction {
    bottom: var(--swiper-pagination-bottom,12px);
}

.urben_hotel_img img {
    aspect-ratio: 465 / 309;
    object-fit: cover;
}

.osaka_castle_img img {
    aspect-ratio: 465 / 309;
    object-fit: cover;
}

.text_wrap {
    margin-top: 20px;
}

.text_wrap p.center {
    text-align: center;
}

.text_wrap a {
    font-size: 1em;
    color: #008ae0;
}

.process_booking_departure_container > ul > li.search_block:first-child {
    margin-top: 0;
}

/* Addition_3 */

.dest_btn {
    cursor: pointer;
}

.dest_cont {
    display: none;
}

.dest_cont.show {
    display: block;
}

.osaka_castle_ttl span {
    margin-right: 10px;
}

.osaka_castle_img img {
    width: 100%;
    height: 100%;
    aspect-ratio: 510 / 340;
    object-fit: cover;
}

.osaka_castle_container {
    justify-content: space-between;
}

.osaka_castle_container .osaka_castle {
    width: 49%;
    max-width: 464px;
}



@media screen and (max-width:768px) {
    .osaka_castle_container .osaka_castle {
        width: 100%;
    }
    .hotel_keihan_blog {
        max-width: 464px;
        margin: 0 auto 30px;
    }
    .osaka_castle_img img {
        height: auto;
    }
}

/* -----------------------------------
202602
-------------------------------------- */

.mt120 {
	margin-top: 120px!important;
}

@media screen and (max-width:768px) {
	.mt60_sp {
		margin-top: 60px!important;
	}
}

.attraction_txt {
	letter-spacing: 0.7px;
}

.ebird_discount_wrapper {
	justify-content: center;
}

.travel_reco .column__item-link--new {
  position: relative;
  display: block;
}

.travel_reco .column__item-link--new::before {
  position: absolute;
  content: "NEW";
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background-color: #eb3b71;
  padding: 5px 10px;
  top: -4px;
  left: -4px;
  z-index: 1;
}

.travel_reco .column__item-link--new::after {
  content: "";
  position: absolute;
  top: 24px;
  left: -4px;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-top: 3.3px solid #a1274e;
  z-index: 1;
}

.travel_reco .column__item {
  margin-top: 60px;
}

.travel_reco .column__item-wrap {
  display: flex;
  gap: 30px;
}

.travel_reco .column__item-content {
  max-width: 595px;
  width: 100%;
}

.travel_reco .column__item-img {
  max-width: 300px;
  width: 100%;
}

.travel_reco .column__item-img img {
  aspect-ratio: 300 / 206;
  width: 100%;
  object-fit: cover;
}

.travel_reco .column__item--first {
    margin-top: 0;
}

.travel_reco .column__item--first .column__item-content {
  max-width: 375px;
  width: 100%;
}

.column__item--first .column__item-img {
  max-width: 520px;
  width: 100%;
}

.column__item--first .column__item-img img {
  aspect-ratio: 520 / 357;
  width: 100%;
  object-fit: cover;
}

.travel_reco .column__item-head {
  display: flex;
  align-items: center;
}

.travel_reco .column__item-cat {
  border-radius: 12px;
  border: 1px solid #827763;
  padding: 2px 19px;
  color: #827763;
  font-size: 12px;
  background-color: #fff;
}

.travel_reco .column__item-time {
  font-size: 14px;
  line-height: 1.6;
  color: #707070;
  margin-left: 15px;
}

.travel_reco .column__item-title {
  font-size: 18px;
  font-weight: bold;
  margin-top: 14px;
  line-height: 1.6;
}

.travel_reco .column__item-text {
  margin-top: 10px;
  line-height: 1.6;
}

.u-mobile {
	display: none;
}

@media screen and (max-width:768px) {
	.u-mobile {
        display: block;
    }
	.u-desktop {
		display: none;
	}
	.travel_reco .column__item-wrap {
		column-gap: 14px;
	}
	.travel_reco .column__item {
		position: relative;
		margin-top: 35px;
	}
	.travel_reco .column__item-link--new::before {
		font-size: 10px;
		padding: 2px 4px;
		width: fit-content;
		height: 15px;
		text-align: center;
		width: fit-content;
	}
	.travel_reco .column__item-link--new::after {
		top: 15px;
		left: -4px;
		border-left: 4px solid transparent;
		border-top: 3.3px solid #a1274e;
	}
	.travel_reco .column__item-head {
    	flex-wrap: wrap;
	}
	.travel_reco .column__item-cat,
	.travel_reco .column__item-time {
    	margin-bottom: 5px;
	}
	.travel_reco .column__item-img {
    	max-width: 150px;
	}
	.travel_reco .column-page__item-head {
    	flex-wrap: wrap;
	}
	.travel_reco .column__item-cat {
		padding: 0px 10px;
		font-size: 1rem;
	}
	.travel_reco .column__item-time {
		font-size: 1.2rem;
		margin-left: 10px;
	}
	.travel_reco .column__item-title {
		font-size: 1.6rem;
		margin-top: 4px;
	}
	.travel_reco .column__item .column__item-title {
		font-size: 1.6rem;
	}
	.travel_reco .column__item-text {
		font-size: 1.4rem;
		margin-top: 10px;
	}

}

/* -----------------------------------
202602 main visual
-------------------------------------- */

.summer_special_mv {
	background: #fff;
	width: 100%;
	height: 409px;
}

.summer_special_mv > h1 {
	width: 100%;
	height: 100%;
}

.summer_special_mv > h1 > img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.accomo_box {
	z-index: 1;
}

@media screen and (max-width:768px) {
	.summer_special_mv {
		height: 350px;
	}
	.summer_special_bar {
		margin-top: 0;
	}
	.accomo_box {
		bottom: 20px;
	}
	
}

/* -----------------------------------
202602 Module21
-------------------------------------- */

.tiktok_ehotel_box {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 25px;
}

.tiktok_ehotel_box_item {
	width: calc((100% - 40px) / 3);
	flex: 1;
}

.tiktok_ehotel_box_item .tiktok_ehotel_wrapper {
	padding-left: 1em;
}

.tiktok_ehotel_wrapper > li {
	margin-bottom: 8px;
}

.tiktok_ehotel_ttl {
	height: auto;
	padding: 8px 24px 8px 24px;
	width: 100%;
}

@media screen and (max-width:768px) {
	.tiktok_ehotel_box {
		flex-direction: column;
	}
	.tiktok_ehotel_box_item {
		width: 100%;
		max-width: 100%;
	}
	.tiktok_ehotel {
		font-size: 1.4rem;
	}
}

/* -----------------------------------
202602 Module22
-------------------------------------- */

.calendar_wrap {
	display: flex;
	justify-content: center;
	gap: 30px 4%;
	margin: 30px auto 30px;
}

.departure_date {
    width: 86%;
    margin: auto;
}

.calendar_txt {
	color: #d61618;
    font-size: 1.8rem;;
    margin: 4px 0;
    font-weight: 500;
}

.calendar_wrap table.calendar_tbl {
	width: 356px;
	max-width: 48%;
}

table.calendar_tbl th,
table.calendar_tbl td {
	border: 1px solid #827763;
	text-align: center;
	color: #212121;
	font-weight: 500;
	padding: 5px 5px 5px 5px;
}

table.calendar_tbl .month {
	background: #005BAC;
	color: #fff;
}

table.calendar_tbl .c_gray th {
	background: #EDEDED;
}

table.calendar_tbl .c_red {
	color: #D43238!important;
}

table.calendar_tbl .c_blue {
	color: #005BAC!important;
}

table.calendar_tbl .day {
	background: #FAFBC1;
}

@media screen and (max-width:768px) {
	.calendar_wrap {
		flex-direction: column;
		align-items: center;
	}
	.calendar_wrap table.calendar_tbl {
		max-width: 100%;
	}
	.calendar_txt {
		font-size: 1.6rem;
	}
}

/* -----------------------------------
202602 Module103
-------------------------------------- */

table:not([class]) {
	width: 100%;
	border-collapse: collapse;
	table-layout: auto;
	margin: 8px auto;
}

table:not([class]) th,
table:not([class]) td {
	padding: 7px;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.5;
	border: 1px solid #D6D6D6;
	background-color: #fff;
	text-align: center;
	vertical-align: middle;
}

table:not([class]) th {
	background-color: #E1EBEB;
}

@media screen and (max-width:768px) {
	table:not([class]) th,
	table:not([class]) td {
		font-size: 1.3rem;
		padding: 7px 5px 7px 5px;
	}
}

/* -----------------------------------
202602 Module104
-------------------------------------- */

ul.asterisk {
    width: 100%;
    margin: 20px auto 20px;
}

ul.asterisk li {
    list-style: none;
    padding-left: 2.75em;
    text-indent: -2.75em;
    margin: 10px 0 0;
    line-height: 1.6;
}

.red {
    color: #D43238;
}

ul.bullet {
	list-style: disc;
	list-style-position: outside;
  	padding-left: 1.2em;
    width: 100%;
    margin: 20px auto 20px;
}

ul.bullet li {
    margin: 10px 0 0;
    line-height: 1.6;
}


ol.number {
	list-style-type: decimal;
	list-style-position: outside;
  	padding-left: 1.2em;
    width: 100%;
    margin: 20px auto 20px;
}

ol.number li {
	margin: 10px 0 0;
    line-height: 1.6;
}

/* -----------------------------------
PROJECT_221
-------------------------------------- */

.select_div .select_box {
	max-width: 100%;
}

@media screen and (max-width:768px) {
	.select_div .select_box {
		max-width: 100%;
	}
}

/* -----------------------------------
PROJECT_224
-------------------------------------- */

.tuour_price {
	margin: 20px auto 20px;
}

.tuour_price_label {
	display: block;
	font-weight: 500;
	font-size: 1.5rem;
}

.tuour_price_amount {
	font-weight: 700;
	font-size: 2.2rem;
	color: #D43238;
	text-align: center;
	margin-top: 2px;
	margin-bottom: 2px;
}

.tuour_price_note {
	display: block;
	width: fit-content;
	max-width: 80%;
	margin-left: auto;
	font-size: 1.2rem;
	font-weight: 400;
}

.one_column .tuour_price_amount {
	text-align: left;
	font-size: 2.4rem;
}

.three_column .tuour_price_amount {
	font-size: 2rem;
}

.one_column .tuour_price_note {
	max-width: 100%;
	margin: 0;
}

@media screen and (max-width:768px) {
	.one_column .tuour_price_amount {
		font-display: 2rem;
	}
}

/* -----------------------------------
PROJECT_225
-------------------------------------- */

.photel_blog .blog_btn {
	max-width: 100%;
}

@media screen and (min-width:767px) {
	.photel_blog_container.three_column::after{
		content:"";
		display: block;
		width:300px;
		max-width: 32%;
	}
}

/* -----------------------------------
PROJECT_228
-------------------------------------- */

.discount_btn_div {
	flex-wrap: wrap;
}

@media screen and (min-width:767px) {
	.summer_reaccomidation_container .ranking_info_div {
		grid-template-columns: 1fr 1fr;
	}
}

/* -----------------------------------
PROJECT_246
-------------------------------------- */

.viewby_area_container .area_col .txt {
	margin: 0;
}

/* -----------------------------------
PROJECT_249
-------------------------------------- */

main {
	padding-bottom: 60px;
}

@media screen and (max-width:768px) {
	main {
		padding-bottom: 40px;
	}
}

/* -----------------------------------
tab_links
-------------------------------------- */

.tab_links_wrap {
	background-color: #F2F8FD;
	padding-top: 20px;
	padding-bottom: 20px;
}

.tab_links {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin: 0 auto;
}

.tab_links > li {
	flex: 1 1 0;
	min-width: 0;
	max-width: 300px;
}

.tab_links > li > a {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #749EC4;
	font-weight: 500;
	line-height: 1.3;
	text-align: center;
	padding: 10px 15px 10px;
	background-color: #fff;
	border: 1px solid #749EC4;
	border-radius: 4px;
	transition: all .25s ease;
}

.tab_links > li > a:hover {
	background-color: #009CCD;
	color: #fff;
}

.tab_links > li > a.active {
	background-color: #009CCD;
	color: #fff;
}

@media screen and (max-width:768px) {
	.tab_links_wrap {
		padding-top: 10px;
		padding-bottom: 10px;
	}
	.tab_links {
		display: grid;
		gap: 7px 5px;
		grid-template-columns: repeat(auto-fit, minmax(calc((100% - 15px)/4), 1fr));
	}
	.tab_links > li a {
		font-size: 1.2rem;
		padding: 7px 6px 7px;
	}
	
}

.ebird_discount_wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 18px;
	max-width: 726px;
	margin: 18px auto 20px;
}

.ebird_discount_wrapper .ebird_discount {
	flex: 0 1 230px;
	width: 230px;
	max-width: 100%;
}

@media screen and (max-width:768px) {
	.ebird_discount_wrapper {
		display: block;
		width: fit-content;
	}
	.ebird_discount_wrapper .ebird_discount {
		margin-top: 18px;
	}
}

/* -----------------------------------
編集画面タブ切り替えを開く対応
-------------------------------------- */

.ui-draggable .dest_cont {
    display: block;
}

/* 260225 */
.summer_special_mv > h1 > img {
    max-width: 1440px;
    margin: 0 auto;
}



