/* MV section starts */
.cruise_header {
    position: relative;
    background-color: #008691;
}

.mv_banner_sec {
    position: absolute;
    top: 25px;
    border-radius: 0;
    z-index: 3;
}

.cruise_nav_bar {
    max-width: 1240px;
    margin: 0 auto;
    padding: 17px 0;
    display: flex;
    align-items: center;
    justify-content: end;
}

.cruise_nav_txt {
    display: block;
    color: #ffffff;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 0 15px;
}

#cruiseMenu {
    margin-right: 15px;
    padding: 5px 0 0 0;
}

.cruise_top {
    position: relative;
}

.cruise_top .slick-prev {
    position: absolute;
    content: "";
    top: 50%;
    left: 25px;
    background: url(/img/cruise/mv_prev_arr.png) no-repeat;
    background-size: contain;
    width: 11px;
    height: 11px;
    transform: translateY(-50%);
    z-index: 1;
}

.cruise_top .slick-next {
    position: absolute;
    content: "";
    top: 50%;
    right: 25px;
    background: url(/img/cruise/mv_next_arr.png) no-repeat;
    background-size: contain;
    width: 11px;
    height: 11px;
    transform: translateY(-50%);
    z-index: 1;
}

.cruise_top .slick-prev:before {
    content: "";
}

.cruise_top .slick-next:before {
    content: "";
}

.cruise_menu_div {
    display: none;
}

.cruise_menu {
    position: relative;
    top: 5px;
    display: none;
}

.upper_bar,
.middle_bar,
.lower_bar {
    margin: 0 auto;
    display: block;
    width: 30px;
    height: 3px;
    background: #ffffff;
}

.middle_bar {
    margin: 5px auto;
}

.upper_bar.rotate_bar {
    transform: translateY(6px) rotate(45deg) scale(1.2);
    transition: transform 0.3s ease-in-out;
}

.middle_bar.rotate_bar {
    opacity: 0;
}

.lower_bar.rotate_bar {
    transform: translateY(-10px) rotate(-45deg) scale(1.2);
    transition: transform 0.3s ease-in-out;
}

.cruise_menu_txt {
    font-size: 1rem;
    color: #ffffff;
}

.cruise_menu_txt.close {
    display: none;
}

.cruise_mv_img {
    position: relative;
}

.ref_photographer {
    color: #ffffff;
    font-size: 1.4rem;
    font-weight: 400;
    position: absolute;
    bottom: 25px;
    right: 80px;
}

.border_line {
    border-left: 2px solid rgba(255, 255, 255, 0.5);
}

.cruise_mv_banner:hover {
    opacity: 1;
}

.cruise_mv_slider .dots-wrap {
    left: 50%;
    justify-content: start;
}

.cruise_top .dots-wrap li.slick-active,
.cruise_top .dots-wrap li:hover {
    background: #d43238;
}

@media screen and (max-width: 1101px) {
    .cruise_nav_bar {
        padding: 12px 0;
    }

    .cruise_nav_link {
        display: none;
    }

    .cruise_menu {
        display: block;
    }

    .cruise_menu_div {
        display: none;
        width: 100%;
        height: 100vh;
        position: absolute;
        top: 60px;
        z-index: 2;
        background-color: rgba(172, 172, 172, 0.7);
    }

    .cruise_menu_bg {
        background-color: #008691;
    }

    .cruise_menu_div_show {
        display: block;
    }

    .cruise_menu_sp {
        width: min(100%, 260px);
        margin: 0 auto;
        padding: 40px 0 70px;
    }

    .cruise_menu_sp>li {
        border-top: 1px solid #a1c3c6;
    }

    .cruise_menu_sp>li:last-child {
        border-bottom: 1px solid #a1c3c6;
    }

    .stop_scroll {
        overflow-y: hidden;
    }

    .menu_sp_link_txt {
        padding: 12px 10px;
        display: block;
        color: #ffffff;
        font-size: 1.6rem;
        font-weight: 700;
        position: relative;
    }

    .menu_sp_link_txt::after {
        position: absolute;
        content: "";
        top: 50%;
        right: 10px;
        background: url(/img/cruise/link_arr.png) no-repeat;
        background-size: contain;
        width: 8.5px;
        height: 8.5px;
        transform: translateY(-50%);
    }

    .mv_banner_sec {
        width: 200px;
    }
}

@media screen and (max-width: 768px) {
    .mv_banner_sec {
        left: 17px;
        width: 104px;
    }

    .ref_photographer {
        font-size: 1rem;
        bottom: 10px;
        right: 20px;
    }
}

/* MV section ends */
/* Notice Block */
.top_info_wrap.cruise_notice {
    padding-bottom: 60px;
}

.top_info_wrap.cruise_notice .tit {
    color: #212121;
}

.cruise_notice dl.news_list>dt span.date {
    font-size: 1.6rem;
    letter-spacing: 0;
    font-weight: 400;
    margin-right: 25px;
}

.cruise_notice dl.news_list>dt span.tag {
    //margin-right: 0;
    //width: 132px;
    vertical-align: middle;
    display: block;
}

.cruise_notice dl.news_list {
    margin-top: 30px;
    margin-bottom: 30px;
}

.cruise_notice .tag_dom {
    background: #008691;
}

.cruise_notice dl.news_list>dt {
    width: 290px;
}

.cruise_notice dl.news_list>dd {
    width: calc(100% - 290px);
}

.cruise_notice .more_bt {
    border-radius: 25px;
    background: #fff;
    border: 1px solid #917330;
    min-width: 240px;
    color: #917330;
    font-weight: 500;
    letter-spacing: 0;
    padding: 8px 20px;
}

.cruise_notice .more_bt:before {
    border-top: solid 2px #917330;
    border-right: solid 2px #917330;
}

@media screen and (max-width: 768px) {
    .top_info_wrap.cruise_notice {
        padding-bottom: 30px;
    }

    .cruise_notice dl.news_list {
        margin-top: 15px;
        margin-bottom: 20px;
    }

    .cruise_notice dl.news_list>dd {
        width: 100%;
    }

    .cruise_notice dl.news_list>dt span.date {
        font-size: 1.4rem;
        margin-right: 15px;
    }

    .cruise_notice dl.news_list>dt span.tag {
        font-size: 1.3rem;
    }
}

/* Ship Info */
.cruise_info {
    background: #f8f7f4;
    padding: 60px 0;
}

.cruise_info .container {
    max-width: 1230px;
    padding: 0 15px;
    margin: 0 auto;
}

.cruise_h2_ttl {
    font-size: 2.8rem;
    font-weight: bold;
    letter-spacing: 0;
    text-align: center;
}

.cruise_h2_ttl img {
    max-width: 68px;
    margin: 0 auto 10px;
}

.cruise_h2_ttl span {
    font-family: "Lora", serif;
    display: block;
    margin-top: 10px;
}

.cruise_h3_ttl {
    font-size: 2.2rem;
    font-weight: 700;
    padding-left: 20px;
    position: relative;
}

.cruise_h3_ttl::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    background: url(/img/cruise/h3_ttl.png) no-repeat;
    background-size: 100% 100%;
    width: 4px;
    height: 42px;
    transform: translateY(-50%);
}

.cruise_info .search_plan {
    margin: 40px 0 0 0;
}

.cruise_info .search_plan_blk {
    background: #fff;
    border-radius: 5px;
    margin-top: 40px;
}

.cruise_info .search_plan_blk .inner {
    max-width: 958px;
    width: 100%;
    margin: 0 auto;
    padding: 30px 0 60px 0;
}

.cruise_info .search_plan_blk .card_year {
    margin-bottom: 20px;
}

.cruise_info .search_plan_blk .year {
    font-size: 1.6rem;
    font-weight: 700;
    border-radius: 5px;
    text-align: center;
    background: rgba(0, 106, 145, 0.15);
    padding: 3.5px 5px;
    margin-bottom: 10px;
}

.cruise_info .search_plan_blk .months {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 3px;
}

.cruise_info .search_plan_blk .month {
    border-radius: 4px;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 0;
    text-align: center;
    border: 1px solid #cccccc;
    padding: 8.5px 5px;
    background: #fff;
    cursor: pointer;
}

.cruise_info .search_plan_blk .month.gray {
    background: #ededed;
    pointer-events: none;
    color: #212121;
}

.cruise_info .search_plan_blk .month.active {
    background: #005bac;
    color: #fff;
    border: none;
}

.cruise_info .search_plan_blk .date {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
    color: #005bac;
    display: flex;
    align-items: center;
    gap: 43px;
    position: relative;
    margin-top: 48px;
    margin-bottom: 20px;
}

.cruise_info .search_plan_blk .date::after {
    content: "";
    flex-grow: 1;
    height: 1px;
    background-color: #005bac;
}

.cruise_info .result_blk_row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.cruise_info .result_card {
    border: 1px solid #d6d6d6;
    max-width: 300px;
}

.cruise_info .result_card .result_ttl {
    padding: 15px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0;
    color: #fff;
    background: #005bac;
}

.cruise_info .result_card .result_body {
    padding: 15px;
    background: #fff;
}

.cruise_info .result_card .result_body span {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.57;
}

.cruise_info .result_card .result_body p {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
}

/* Search Cruise */
.cruise_info .search_cruise_blk {
    margin: 60px 0;
}

.cruise_info .search_cruise_blk .h4_ttl {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    font-size: 2rem;
    font-weight: 700;
    color: #917330;
    width: 100%;
    position: relative;
}

.cruise_info .search_cruise_blk .h4_ttl::before,
.cruise_info .search_cruise_blk .h4_ttl::after {
    content: "";
    flex: 1;
    border-top: 1px solid #917330;
}

.cruise_info .search_cruise_blk .japan_ship_blk {
    margin: 35px 0 55px 0;
}

.cruise_info .search_cruise_blk .ship_cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 24px;
    margin-top: 25px;
}

.cruise_info .search_cruise_blk .ship_card {
    border-radius: 10px 10px 0 0;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}

.cruise_info .search_cruise_blk .ship_card .ship_name {
    font-size: 2rem;
    font-weight: 500;
    padding: 13px;
    text-align: center;
    line-height: 1.6;
}

.cruise_info .search_cruise_blk #ship_seemore_btn {
    display: none;
}

.cruise_info .search_cruise_blk .btn_container.sp {
    text-align: center;
    display: none;
}

.cruise_info .h5_ttl {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 0;
    text-align: center;
    padding: 15px;
}

.cruise_info .h5_ttl span {
    font-family: "Lora", serif;
    font-size: 1.4rem;
    display: block;
}

.cruise_info .h5_ttl.luxury {
    background: url(/img/cruise/luxury_ttl.png) no-repeat;
    background-size: 100% 100%;
    margin-top: 25px;
    color: #84600c;
}

.cruise_info .h5_ttl.luxury span {
    color: #b49a5f;
}

.cruise_info .h5_ttl.premium {
    background: url(/img/cruise/premium_ttl.png) no-repeat;
    background-size: 100% 100%;
    margin-top: 25px;
    color: #234896;
}

.cruise_info .h5_ttl.premium span {
    color: #6a85be;
}

.cruise_info .h5_ttl.casual {
    background: url(/img/cruise/casual_ttl.png) no-repeat;
    background-size: 100% 100%;
    margin-top: 25px;
    color: #bf477a;
}

.cruise_info .h5_ttl.casual span {
    color: #d682a6;
}

.cruise_info .search_cruise_blk .luxury_blk,
.cruise_info .search_cruise_blk .premium_blk,
.cruise_info .search_cruise_blk .casual_blk {
    margin-bottom: 55px;
}

/* Cruise Recommend */
.cruise_recommend {
    background: #fff;
    padding: 60px 0 65px;
}

.cruise_recommend .container {
    max-width: 1230px;
    padding: 0 15px;
    margin: 0 auto;
}

.cruise_recommend .recommend_course_blk {
    margin-top: 40px;
}

.cruise_recommend .recommend_card_row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 23px;
}

.cruise_recommend .recommend_card .recommend_ttl {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.4;
    margin-bottom: 14px;
}

.cruise_recommend .recommend_card .recommend_txt {
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
    padding: 20px 0 40px;
}

.cruise_recommend .recommend_card .recommend_link {
    background: #008691;
    border-radius: 25px;
    color: #fff;
    max-width: 184px;
    width: 100%;
    display: block;
    text-align: center;
    padding: 7px;
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.6;
    position: relative;
    margin: 0 auto;
}

.cruise_recommend .recommend_card .recommend_link::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    background: url(/img/cruise/right_arr.png) no-repeat;
    background-size: 100% 100%;
    width: 11px;
    height: 11px;
    transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
    .cruise_info {
        padding: 30px 0;
    }

    .cruise_h2_ttl {
        font-size: 2.2rem;
    }

    .cruise_h2_ttl img {
        max-width: 34px;
        margin-bottom: 5px;
    }

    .cruise_h2_ttl span {
        font-size: 1.1rem;
        margin-top: 5px;
    }

    .cruise_info .search_plan {
        margin: 30px 0 0 0;
    }

    .cruise_h3_ttl {
        font-size: 1.8rem;
        padding-left: 15px;
    }

    .cruise_h3_ttl::before {
        width: 3px;
        height: 30px;
    }

    .cruise_info .search_plan_blk .card_year {
        max-width: 343px;
        margin: 0 auto 20px;
    }

    .cruise_info .search_plan_blk .months {
        grid-template-columns: repeat(6, 1fr);
    }

    .cruise_info .result_blk_row {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .cruise_info .search_plan_blk .month {
        padding: 3px 5px;
        font-size: 1.4rem;
    }

    .cruise_info .search_plan_blk .date {
        font-size: 1.6rem;
        gap: 12px;
        margin: 30px 15px 20px;
    }

    .cruise_info .result_card {
        margin: 0 auto;
    }

    .cruise_info .result_card .result_ttl {
        font-size: 1.6rem;
        padding: 10px 15px;
    }

    .cruise_info .search_plan_blk .inner {
        padding-bottom: 30px;
    }

    .cruise_info .search_plan_blk {
        margin: 40px -15px 0;
    }

    .cruise_info .search_cruise_blk .ship_cards {
        grid-template-columns: 1fr;
    }

    .cruise_info .search_cruise_blk .ship_card {
        display: none;
        max-width: 310px;
        margin: 0 auto;
    }

    .cruise_info .search_cruise_blk {
        margin: 30px 0 0;
    }

    .cruise_info .search_cruise_blk .japan_ship_blk {
        margin-top: 25px;
    }

    .cruise_info .h5_ttl.luxury {
        background: url(/img/cruise/luxury_ttl_sp.png) no-repeat;
        background-size: 100% 100%;
    }

    .cruise_info .h5_ttl.premium {
        background: url(/img/cruise/premium_ttl_sp.png) no-repeat;
        background-size: 100% 100%;
    }

    .cruise_info .h5_ttl.casual {
        background: url(/img/cruise/casual_ttl_sp.png) no-repeat;
        background-size: 100% 100%;
    }

    .cruise_info .search_cruise_blk .ship_card:nth-child(-n + 3) {
        display: block;
    }

    .cruise_info .search_cruise_blk #ship_seemore_btn {
        display: block;
        font-size: 1.6rem;
        font-weight: 500;
        line-height: 1.6;
        letter-spacing: 0;
        background: #fff;
        border: 1px solid #008691;
        position: relative;
        width: 100%;
        max-width: 170px;
        color: #008691;
        border-radius: 25px;
        padding: 5px;
        text-align: center;
        margin: 30px auto;
        cursor: pointer;
    }

    .cruise_info .search_cruise_blk #ship_seemore_btn::after {
        content: "";
        background: url(/img/cruise/down_arr.png) no-repeat;
        background-size: 100% 100%;
        width: 11px;
        height: 11px;
        right: 15px;
        top: 48%;
        transform: translateY(-50%);
        position: absolute;
    }

    .cruise_info .h5_ttl {
        font-size: 1.6rem;
    }

    .cruise_info .h5_ttl span {
        font-size: 1.1rem;
    }

    .cruise_info .search_cruise_blk .ship_card .ship_name {
        font-size: 1.6rem;
        font-weight: 400;
        padding: 10px;
    }

    .cruise_info .search_cruise_blk .luxury_blk,
    .cruise_info .search_cruise_blk .premium_blk {
        margin-bottom: 60px;
    }

    .cruise_recommend .recommend_card_row {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .cruise_recommend .recommend_card {
        max-width: 310px;
        margin: 0 auto;
    }

    .cruise_recommend .recommend_card .recommend_txt {
        font-size: 1.4rem;
    }

    .cruise_recommend .recommend_course_blk {
        margin-top: 30px;
    }

    .cruise_recommend {
        padding: 30px 0;
    }

    .cruise_info .search_cruise_blk .casual_blk,
    .cruise_info .search_cruise_blk .casual_blk #ship_seemore_btn {
        margin-bottom: 0px;
    }
}

/* Seminar single page starts */
.seminar_single_mv {
    background-color: #fafafa;
}

.seminar_container,
.course_container {
    max-width: 987px;
    padding: 0 15px;
    margin: 0 auto;
}

.header_ttl {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.5;
    padding: 165px 0 50px;
}

.seminar_single {
    padding: 65px 0 80px;
}

.seminar_container>div:first-child {
    display: flex;
    gap: 40px;
}

.seminar_container>div:first-child>h3 {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.5;
    width: calc(100% - 424px);
}

.seminar_container>div:first-child>div {
    width: 384px;
}

.seminar_container>p:nth-of-type(1),
.seminar_container>p:nth-of-type(2) {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
}

.seminar_container>p:nth-of-type(1) {
    margin-top: 30px;
}

.seminar_container>p:nth-of-type(2) {
    margin-bottom: 30px;
}

.seminar_container>div:not(:first-child) {
    display: flex;
}

.seminar_container>div:not(:first-child)>p:nth-of-type(1) {
    width: 178px;
    padding: 15px 10px;
    background-color: #E1EBEB;
    border: 1px solid #D6D6D6;
}

.seminar_container>div:not(:first-child)>p:nth-of-type(2),
.seminar_container>div:last-child>ul {
    width: calc(100% - 178px);
    padding: 15px 10px;
    border: 1px solid #D6D6D6;
    border-left: 0;
}

.seminar_container>div:not(:first-child)>p:nth-of-type(1),
.seminar_container>div:not(:first-child)>p:nth-of-type(2) {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    border-bottom: 0;
}

.seminar_container>div:last-child>p:nth-last-of-type(1) {
    border-bottom: 1px solid #dfdfdf;
}

.apply_btn_container {
    margin-top: 60px;
}

.apply_btn {
    margin: 0 auto;
    padding: 32px 263px;
    border-radius: 6px;
    font-size: 2.2rem;
    font-weight: 700;
    color: #ffffff;
    background-color: #005bac;
    position: relative;
}

.apply_btn::after {
    position: absolute;
    content: "";
    top: 50%;
    right: 25px;
    background: url(/img/cruise/right_arr.png) no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
    .header_ttl {
        font-size: 2rem;
        padding: 40px 0 20px;
    }

    .seminar_single {
        padding: 30px 0 40px;
    }

    .seminar_container>div:first-child {
        flex-direction: column;
        gap: 25px;
    }

    .seminar_container>div:first-child>h3 {
        font-size: 2rem;
    }

    .seminar_container>p:nth-of-type(1),
    .seminar_container>p:nth-of-type(2) {
        font-size: 1.4rem;
    }

    .seminar_container>div:first-child>h3,
    .seminar_container>div:first-child>div,
    .seminar_container>div:first-child>div>img {
        width: 100%;
    }

    .seminar_container>p:nth-of-type(2) {
        margin-bottom: 70px;
    }

    .seminar_container>div:not(:first-child) {
        flex-direction: column;
    }

    .seminar_container>ul {
        flex-direction: column;
    }

    .seminar_container>div:not(:first-child)>p:nth-of-type(1),
    .seminar_container>div:not(:first-child)>p:nth-of-type(2),
    .seminar_container>div:last-child>ul {
        width: 100%;
        font-size: 1.4rem;
    }

    .seminar_container>div:not(:first-child)>p:nth-of-type(1) {
        padding: 5px 15px;
    }

    .seminar_container>div:not(:first-child)>p:nth-of-type(2),
    .seminar_container>div:last-child>ul {
        border-left: 1px solid #D6D6D6;
    }

    .apply_btn_container {
        /* margin-top: 115px; */
    }

    .apply_btn {
        padding: 20px 117px 20px 84px;
        font-size: 1.8rem;
    }
}

@media screen and (max-width: 374px) {
    .apply_btn {
        padding: 20px 80px;
        font-size: 1.4rem;
    }
}

/* Seminar single page ends */
/* Asuka page */
.mv_pass_ship {
    background: url(/img/cruise/asuka_mv.png) no-repeat;
    background-size: 100% 100%;
    height: 256px;
}

.mv_pass_ship .pass_ship_txt_blk {
    width: 100%;
    height: 100%;
    padding: 35px;
}

.mv_pass_ship .pass_ship_txt_blk .mv_pass_ship_txt {
    width: 100%;
    height: 100%;
    font-size: 3.6rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
    color: #212121;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
}

.mv_pass_ship .pass_ship_txt_blk .mv_pass_ship_txt span {
    font-family: "Lora", serif;
    font-size: 1.4rem;
    font-weight: 500;
    color: #917330;
    line-height: 1.6;
    letter-spacing: 0;
    display: block;
    margin-top: 30px;
    position: relative;
}

.mv_pass_ship .pass_ship_txt_blk .mv_pass_ship_txt span::after {
    content: "";
    background: #827763;
    width: 97px;
    height: 1px;
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
}

.sec_link_pass_ship {
    padding: 40px 0 60px;
}

.pass_ship_container {
    max-width: 988px;
    padding: 0 15px;
    margin: 0 auto;
}

.sec_link_pass_ship .pass_ship_container .link_list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    background: #917330;
}

.sec_link_pass_ship .pass_ship_container .link_list .link_item a {
    display: block;
    padding: 10px 22px 10px 10px;
    font-size: 1.6rem;
    font-weight: 700;
    color: #fff;
    text-align: center;
    letter-spacing: 0;
    line-height: 1.6;
    border-right: 1px solid #6f5e36;
    position: relative;
}

.sec_link_pass_ship .pass_ship_container .link_list .link_item a::after {
    content: "";
    background: url(/img/cruise/asuka_down_arr.png) no-repeat;
    background-size: 100% 100%;
    width: 11px;
    height: 11px;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
}

.pass_ship_sec_about .about_blk .about_img {
    padding: 40px 0 30px;
}

.pass_ship_sec_about .about_blk .img_txt {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    color: #212121;
    line-height: 1.6;
    text-align: center;
    margin-top: 10px;
}

.pass_ship_sec_about .about_blk .about_txt {
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
    color: #212121;
}

.pass_ship_sec_about .ship_data_blk {
    padding: 80px 0 60px;
}

.pass_ship_sec_recruie {
    padding: 60px 0;
    background: #f8f7f4;
}

.pass_ship_sec_recruie .recommend_card {
    margin-top: 40px;
}

.pass_ship_sec_recruie .recommend_card .card_inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.pass_ship_sec_recruie.cruise_recommend .recommend_card .card_inner .recommend_txt {
    padding: 0 0 75px;
}

.pass_ship_sec_recruie.cruise_recommend .recommend_card .card_inner .recommend_link {
    margin: 0 0 0 auto;
}

.pass_ship_sec_course {
    padding: 60px 0;
    background: #fff;
}

.pass_ship_sec_course .course_blk {
    margin-top: 40px;
}

.pass_ship_sec_course .course_blk .course_card {
    border: 1px solid #d6d6d6;
    padding: 30px;
    margin-bottom: 20px;
}

.pass_ship_sec_course .course_blk .course_card .course_ttl {
    font-size: 1.8rem;
    font-weight: 700;
    color: #008ae0;
    letter-spacing: 0;
    line-height: 1.6;
    margin-bottom: 10px;
}

.pass_ship_sec_course .course_blk .course_card .credit {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.pass_ship_sec_course .course_blk .course_card .bdr_card {
    border: 1px solid #917330;
    display: inline-block;
    font-size: 1.4rem;
    color: #917330;
    padding: 5px 10px;
}

.pass_ship_sec_course .course_blk .course_card .yen {
    color: #d43238;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
}

.pass_ship_sec_course .course_blk .departure {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

.pass_ship_sec_course .course_blk .departure_item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.pass_ship_sec_course .course_blk .departure_item p {
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.6;
    color: #212121;
}

.pass_ship_sec_room {
    padding: 60px 0 75px;
    background: #f8f7f4;
}

.three_slider_blk {
    display: flex;
    align-items: center;
    gap: 30px;
}

.three_slider_blk .com_slider,
.three_slider_blk .com_slider,
.three_slider_blk .com_slider {
    width: calc((100% - 60px) / 3);
}

.three_slider_blk h3 {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
    color: #212121;
    margin-bottom: 15px;
}

.three_slider_blk .swiper-button-next,
.three_slider_blk .swiper-button-prev {
    top: 44%;
    transform: translateY(-50%);
}

.three_slider_blk .swiper-button-prev::after {
    content: "";
    background: url(/img/cruise/swipper_left_arr.png) no-repeat;
    background-size: 100% 100%;
    width: 26px;
    height: 26px;
}

.three_slider_blk .swiper-button-next::after {
    content: "";
    background: url(/img/cruise/swipper_right_arr.png) no-repeat;
    background-size: 100% 100%;
    width: 26px;
    height: 26px;
}

.pass_ship_sec_room .cruise_h2_ttl {
    margin-bottom: 40px;
}

.pass_ship_sec_about .ship_data {
    margin-top: 30px;
}

.pass_ship_sec_about .ship_data .row {
    display: flex;
}

.pass_ship_sec_about .ship_data .row p:nth-of-type(1),
.pass_ship_sec_about .ship_data .row p:nth-of-type(2) {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    border-bottom: 0;
}

.pass_ship_sec_about .ship_data>.row p:nth-of-type(1) {
    width: 178px;
    padding: 15px 10px;
    background-color: #e1ebeb;
    border: 1px solid #d6d6d6;
    border-bottom: none;
}

.pass_ship_sec_about .ship_data .row p:nth-of-type(2) {
    width: calc(100% - 178px);
    padding: 15px 10px;
    border: 1px solid #d6d6d6;
    border-left: 0;
    border-bottom: none;
}

.pass_ship_sec_about .ship_data .row:last-child p:nth-of-type(1),
.pass_ship_sec_about .ship_data .row:last-child p:nth-of-type(2) {
    border-bottom: 1px solid #d6d6d6;
}

.three_slider_blk .ar_set {
    width: 100%;
    margin: 25px 0 20px;
}

.three_slider_blk img {
    margin-bottom: 0;
}

@media screen and (max-width: 950px) {

    .three_slider_blk .swiper-button-next,
    .three_slider_blk .swiper-button-prev {
        top: 41%;
    }
}

@media screen and (max-width: 768px) {
    .mv_pass_ship {
        height: 120px;
    }

    .mv_pass_ship .pass_ship_txt_blk {
        padding: 25px;
    }

    .mv_pass_ship .pass_ship_txt_blk .mv_pass_ship_txt {
        font-size: 2rem;
        justify-content: center;
    }

    .mv_pass_ship .pass_ship_txt_blk .mv_pass_ship_txt span {
        font-size: 1.2rem;
        margin-top: 20px;
    }

    .mv_pass_ship .pass_ship_txt_blk .mv_pass_ship_txt span::after {
        top: -10px;
    }

    .sec_link_pass_ship .pass_ship_container .link_list .link_item a {
        font-size: 1.4rem;
        padding: 3px 12px 3px 5px;
        line-height: 1.4;
    }

    .sec_link_pass_ship .pass_ship_container .link_list .link_item a::after {
        right: 5px;
    }

    .sec_link_pass_ship {
        padding: 20px 0 30px;
    }

    .pass_ship_sec_about .about_blk .about_img {
        padding: 30px 0 15px;
    }

    .pass_ship_sec_about .about_blk .img_txt {
        font-size: 1.6rem;
    }

    .pass_ship_sec_about .about_blk .about_txt {
        font-size: 1.4rem;
    }

    .pass_ship_sec_about .ship_data_blk {
        padding: 55px 0 30px;
    }

    .pass_ship_sec_recruie .recommend_card .card_inner {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .pass_ship_sec_recruie.cruise_recommend .recommend_card {
        max-width: 100%;
    }

    .pass_ship_sec_recruie.cruise_recommend .recommend_card .card_inner .recommend_txt {
        padding-bottom: 35px;
    }

    .pass_ship_sec_recruie.cruise_recommend .recommend_card .card_inner .recommend_link {
        margin: 0 auto;
    }

    .pass_ship_sec_recruie {
        padding: 30px 0;
    }

    .pass_ship_sec_recruie.cruise_recommend .recommend_card .recommend_ttl {
        font-size: 1.6rem;
    }

    .pass_ship_sec_about .ship_data {
        margin-top: 20px;
    }

    .pass_ship_sec_about .ship_data .row {
        flex-direction: column;
    }

    .pass_ship_sec_about .ship_data .row p:nth-of-type(1),
    .pass_ship_sec_about .ship_data .row p:nth-of-type(2) {
        width: 100%;
        font-size: 1.4rem;
    }

    .pass_ship_sec_about .ship_data .row p:nth-of-type(1) {
        padding: 5px 15px;
    }

    .pass_ship_sec_about .ship_data .row p:nth-of-type(2) {
        border-left: 1px solid #d6d6d6;
    }

    .pass_ship_sec_course {
        padding: 30px 0;
    }

    .pass_ship_sec_course .course_blk {
        margin-top: 30px;
    }

    .pass_ship_sec_course .course_blk .course_card {
        padding: 15px;
        margin-bottom: 10px;
    }

    .pass_ship_sec_course .course_blk .course_card .course_ttl {
        font-size: 1.6rem;
    }

    .pass_ship_sec_course .course_blk .course_card .bdr_card {
        font-size: 1.2rem;
    }

    .pass_ship_sec_course .course_blk .course_card .yen {
        font-size: 1.8rem;
    }

    .pass_ship_sec_course .course_blk .departure_item p {
        font-size: 1.4rem;
    }

    .pass_ship_sec_course .course_blk .departure {
        gap: 10px;
    }

    .pass_ship_sec_room {
        padding: 30px 0 45px;
    }

    .pass_ship_sec_room .cruise_h2_ttl {
        margin-bottom: 30px;
    }

    .three_slider_blk {
        flex-direction: column;
        gap: 55px;
    }

    .pass_ship_sec_about .ship_data .row:last-child p:nth-of-type(1) {
        border-bottom: none;
    }

    .three_slider_blk .com_slider,
    .three_slider_blk .com_slider,
    .three_slider_blk .com_slider {
        width: 100%;
        max-width: 300px;
        margin: 0 auto;
    }

    .three_slider_blk h3 {
        font-size: 1.6rem;
        margin-bottom: 10px;
    }

    .three_slider_blk .swiper-button-next,
    .three_slider_blk .swiper-button-prev {
        top: 45%;
    }

}

@media screen and (max-width: 374px) {
    .sec_link_pass_ship .pass_ship_container .link_list .link_item a {
        font-size: 1.1rem;
    }
}

/* Course page starts */
.course_container .course_mv {
    padding: 140px 0 80px;
    display: flex;
    gap: 40px;
}

.course_container .course_mv_left {
    width: calc(100% - 424px);
}

.course_container .course_mv_right {
    width: 384px;
}

.course_container .cruise_booking {
    display: flex;
    align-items: center;
    gap: 10px;
}

.course_container .cruise_name {
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.5;
    color: #827763;
    padding: 5px 20px;
    border: 1px solid #827763;
    border-radius: 14px;
}

.course_container .departure_date,
.course_container .course_explain {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
}

.course_container .course_ttl {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.5;
    padding: 30px 0 50px;
}

.course_container .cruise_data {
    display: block;
    text-align: center;
    margin-top: 20px;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.5;
}

.course_container .sec_links {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    background-color: #008691;
}

.course_container .links_single_sec {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    display: block;
    padding: 17px;
    text-align: center;
    color: #ffffff;
    position: relative;
}

.course_container .links_single_sec::after {
    position: absolute;
    content: "";
    top: 50%;
    right: 17px;
    background: url(/img/cruise/asuka_down_arr.png) no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    transform: translateY(-50%);
}

.course_container .middle_link {
    border-left: 1px solid #0B6269;
    border-right: 1px solid #0B6269;
}

.course_container .cruise_basic_info {
    padding: 40px 0 55px;
}

.course_container .course_img_sec {
    margin-top: 40px;
    display: flex;
    gap: 30px;
}

.course_container .course_single_img,
.course_container .course_single_img img {
    width: 100%;
}

.course_container .caption_txt,
.feature_slide_container .caption_txt {
    margin-top: 15px;
    display: block;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.5;
}

.course_appealing_sec {
    background-color: #F8F7F4;
}

.course_appealing_sec .course_appealing {
    padding: 40px 0 65px;
}

.course_appealing .cruise_h3_ttl {
    margin: 50px 0 30px;
}

.schedule_div {
    padding: 40px 0 80px;
}

.schedule_table_div {
    overflow-x: scroll;
}

.schedule_table_div.upper_table {
    padding: 40px 0 30px;
}

.schedule_upper_thead, .schedule_upper_tbody {
    display: grid;
    grid-template-columns: 100px 175px 335px 117px 117px;
    gap: 20px;
}

.schedule_upper_thead {
    padding: 0 20px;
    height: 40px;
    background: #EDEDED;
}

.schedule_upper_tbody {
    border-top: 1px solid #CCCCCC;
    padding: 0 20px;
    height: 40px;
}

.schedule_upper_tbody:nth-of-type(odd) {
    background-color: #FAFAFA;
}

.schedule_upper_thead div,
.schedule_upper_tbody div,
.schedule_upper_tbody div a {
    font-size: 1.4rem;
    font-weight: 700;
    display: flex;
    align-items: center;
}

.schedule_upper_tbody div,
.schedule_upper_tbody div a {
    font-weight: 400;
}

.schedule_table_div.lower_table {
    padding: 60px 0 30px;
}

/* width */
.schedule_table_div::-webkit-scrollbar {
    display: none;
}

.schedule_div .schedule_table {
    width: 957px;
}

.schedule_table.first_table {
    border-top: 1px solid #707070;
    border-bottom: 1px solid #707070;
}

.schedule_div .schedule_table .schedule_thead {
    font-size: 1.4rem;
    font-weight: 700;
    text-align: start;
    background-color: #EDEDED;
}

.schedule_div .schedule_table .schedule_td {
    font-size: 1.4rem;
    font-weight: 400;
}

.schedule_div .schedule_table .schedule_thead div, .schedule_div .schedule_table .schedule_td div {
    font-size: 1.4rem;
    font-weight: 700;
    padding: 5px;
}

.schedule_div .schedule_table .schedule_td div {
    font-size: 1.4rem;
    font-weight: 400;
    text-align: start;
    padding: 10px;
}

.schedule_div .schedule_table .schedule_td div:first-child {
    background-color: #E1EBEB;
}

.schedule_div .schedule_table .schedule_thead div:not(:first-child),
.schedule_div .schedule_table .schedule_td div:not(:first-child) {
    border-left: 1px solid #D6D6D6;
}

.schedule_div .schedule_table .schedule_td:not(:first-child) {
    background-color: #ffffff;
}

.schedule_div .schedule_table .schedule_tr a {
    text-decoration: underline;
}

.schedule_div .schedule_table .blue_color {
    color: #005BAC;
}

.schedule_div .schedule_table .red_color {
    color: #D43238;
}

.schedule_table.schedule_sec_table {
    border: 1px solid #D6D6D6;
}

.four_column_table .schedule_sec_table .schedule_thead, .four_column_table .schedule_sec_table .schedule_td {
    display: grid;
    grid-template-columns: repeat(4, 1fr) !important;
}

.schedule_div .schedule_sec_table .schedule_thead, .schedule_div .schedule_sec_table .schedule_td {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    background-color: #E1EBEB;
    text-align: center;
}

.schedule_div .schedule_sec_table .schedule_td {
    border-top: 1px solid #D6D6D6;
}

.schedule_div .schedule_sec_table .schedule_tr:nth-of-type(odd) {
    background-color: unset;
}

.schedule_div .schedule_sec_table .schedule_tr .schedule_td:first-child {
    background-color: #E1EBEB;
}

.cancellation_policy .schedule_table {
    width: 100%;
}

.cancellation_policy .schedule_div {
    padding: 40px 0 30px;
}

.cancellation_policy .schedule_table_div.lower_table {
    padding: 0;
}

.feature_sec {
    padding: 40px 0 60px;
}

.feature_container {
    max-width: 1310px;
    padding: 0 15px;
    margin: 0 auto;
}

.feature_slide_container {
    padding: 40px 0 65px;
}

.feature_slide_container .slick-list {
    transform: translate3d(-8px, 0, 0) !important;
}

.feature_slide_container .slick-slide {
    margin-left: 15px;
}

.feature_slide_container .slick-dots {
    bottom: 7px;
}

.feature_slide_container .slick-dots li button {
    width: 14px;
    height: 14px;
    background-color: #CCCCCC;
    opacity: 1;
    border-radius: 50%;
}

.feature_slide_container .slick-dots li button:before {
    content: "";
    color: #005BAC;
    background-color: #005BAC;
    width: 14px;
    height: 14px;
    border-radius: 50%;
}

.feature_slide_container .slick-dots li.slick-active button:before {
    color: #005BAC;
}

.feature_slide {
    position: relative;
}

.feature_slide_container .slick-prev {
    position: absolute;
    top: unset;
    left: 40%;
    bottom: 0;
    background: url(/img/cruise/feature_slide_prev.png) no-repeat;
    background-size: contain;
    z-index: 1;
}

.feature_slide_container .slick-next {
    position: absolute;
    top: unset;
    right: 40%;
    bottom: 0;
    background: url(/img/cruise/feature_slide_next.png) no-repeat;
    background-size: contain;
    z-index: 1;
}

.feature_slide_container .slick-prev::before,
.feature_slide_container .slick-next::before {
    content: "";
}

@media screen and (max-width:970px) {
    .feature_slide_container .slick-dots li {
        margin: 0;
    }

    .feature_slide_container .slick-prev {
        left: 30%;
    }

    .feature_slide_container .slick-next {
        right: 32%;
    }
}

@media screen and (max-width:768px) {
    .course_container .course_mv {
        padding: 30px 0;
        flex-direction: column;
        gap: 45px;
    }

    .course_container .course_mv_left,
    .course_container .course_mv_right {
        width: 100%;
    }

    .course_container .departure_date,
    .course_container .course_explain {
        font-size: 1.4rem;
    }

    .course_container .course_ttl {
        font-size: 2rem;
        padding: 20px 0;
    }

    .course_container .cruise_data {
        margin-top: 15px;
        font-size: 1.6rem;
    }

    .course_container .links_single_sec {
        font-size: 1.4rem;
        padding: 13px 5px;
    }

    .course_container .links_single_sec::after {
        right: 10px;
    }

    .course_container .cruise_basic_info {
        padding: 20px 0;
    }

    .course_container .course_img_sec {
        margin-top: 30px;
        flex-direction: column;
        gap: 15px;
    }

    .course_appealing .cruise_h3_ttl {
        margin: 30px 0 20px;
    }

    .course_appealing_sec .course_appealing {
        padding: 30px 0 50px;
    }

    .schedule_div {
        padding: 30px 0 70px;
    }

    .schedule_div .schedule_table th {
        font-size: 1.2rem;
        padding: 10px 20px;
    }

    .schedule_div .schedule_table td {
        font-size: 1.4rem;
        padding: 10px 20px;
    }

    .feature_slide_container .slick-slide img {
        width: 100%;
    }

    .feature_slide {
        position: relative;
        padding: 30px 0 75px;
    }

    .feature_slide_container .slick-dots li button,
    .feature_slide_container .slick-dots li button:before {
        width: 10px;
        height: 10px;
    }

    .feature_slide_container .slick-prev {
        bottom: 12px;
        width: 10px;
        height: 10px;
    }

    .feature_slide_container .slick-next {
        bottom: 12px;
        width: 10px;
        height: 10px;
    }
}

@media screen and (max-width:500px) {
    .schedule_table.first_table {
        width: 630px;
    }

    .schedule_upper_thead, .schedule_upper_tbody {
        grid-template-columns: 40px 153px 242px 46px 40px;
        gap: 20px;
    }

    .feature_slide_container .slick-prev {
        left: 25%;
    }

    .feature_slide_container .slick-next {
        right: 28%;
    }

    .course_container .links_single_sec {
        padding: 13px 10px;
        text-align: start;
    }
}

@media screen and (max-width:450px) {
    .schedule_div .schedule_table {
        width: 480px;
    }

    .schedule_table.first_table {
        width: 630px;
    }

    .schedule_div .schedule_table th,
    .schedule_div .schedule_table td {
        padding: 10px;
    }

    .four_column_table .schedule_div .schedule_table {
        width: 460px;
    }

    .cancellation_policy .schedule_table {
        width: 100%;
    }
}

@media screen and (max-width:370px) {
    .course_container .links_single_sec {
        font-size: 1rem;
    }
}

/* Course page ends */

/*--------------------------------
Addtion_s
----------------------------------*/

.news-detail {
    padding-top: 160px;
}

@media screen and (min-width:767px) and (max-width:1100px) {
    .news-detail {
        padding-top: 100px;
    }
}

@media screen and (max-width:768px) {
    .news-detail {
        padding-top: 30px;
    }
}

.sub-entry {
    padding-top: 160px;
}

@media screen and (min-width:767px) and (max-width:1100px) {
    .sub-entry {
        padding-top: 100px;
    }
}

@media screen and (max-width:768px) {
    .sub-entry {
        padding-top: 30px;
    }
}

.n_tag {
    color: #fff!important;
    border: 1px solid #008691!important;
    background-color: #008691!important;
}

a.privacy_link {
    display: block;
    color: #008AE0;
    text-align: center;
    text-decoration: underline;
}

/*--------------------------------
module
----------------------------------*/

.sec_link_pass_ship.cm_sec_link_pass_ship {
    padding: 0;
    margin: 40px 0 60px;
}

.one_colum_img {
    padding: 0!important;
    margin: 40px 0 30px;
}

.one_colum_img img {
    width: auto;
    margin: 0 auto;
}

.img_txt {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    color: #212121;
    line-height: 1.6;
    text-align: center;
    margin-top: 10px;
}

.txt {
    margin-bottom: 10px;
}

.cruise_h2_ttl.cm_h2_ttl {
    margin: 60px auto 40px;
}

.cruise_h3_ttl.cm_h3_ttl {
    margin: 40px 0 30px;
}

.ship_data.cm_ship_data {
    margin-top: 30px;
    margin-bottom: 60px;
}

.ship_data.cm_ship_data .row {
    display: flex;
}

.ship_data.cm_ship_data .row p:nth-of-type(1),
.ship_data.cm_ship_data .row p:nth-of-type(2) {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    border-bottom: 0;
}

.ship_data.cm_ship_data >.row p:nth-of-type(1) {
    width: 178px;
    padding: 15px 10px;
    background-color: #e1ebeb;
    border: 1px solid #d6d6d6;
    border-bottom: none;
}

.ship_data.cm_ship_data .row p:nth-of-type(2) {
    width: calc(100% - 178px);
    padding: 15px 10px;
    border: 1px solid #d6d6d6;
    border-left: 0;
    border-bottom: none;
}

.ship_data.cm_ship_data .row:last-child p:nth-of-type(1),
.ship_data.cm_ship_data .row:last-child p:nth-of-type(2) {
    border-bottom: 1px solid #d6d6d6;
}

.recommend_card.cm_recommend_card {
    margin-top: 40px;
    margin-bottom: 60px;
}

.cm_recommend_ttl {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.4;
    margin-bottom: 15px;
}

.card_inner.cm_card_inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.recommend_card.cm_recommend_card .recommend_link {
    background: #008691;
    border-radius: 25px;
    color: #fff;
    max-width: 184px;
    width: 100%;
    display: block;
    text-align: center;
    padding: 7px;
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.6;
    position: relative;
    margin: 0 auto;
}

.recommend_card.cm_recommend_card .recommend_link {
    margin: 50px 0 0 auto;
}

.pass_ship_container .cm_course_list .cm_course_card {
    border: 1px solid #d6d6d6;
    padding: 30px;
    margin-top: 20px;
    margin-bottom: 20px;
}

.pass_ship_container .cm_course_list .cm_course_card .course_ttl {
    font-size: 1.8rem;
    font-weight: 700;
    color: #008ae0;
    letter-spacing: 0;
    line-height: 1.6;
    margin-bottom: 10px;
}

.pass_ship_container .cm_course_list .cm_course_card .credit {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}



.pass_ship_container .cm_course_list .cm_course_card .yen {
    color: #d43238;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.6;
}

.pass_ship_container .cm_course_list .cm_course_card .departure {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

.pass_ship_container .cm_course_list .cm_course_card .departure_item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.pass_ship_container .cm_course_list .cm_course_card .departure_item p {
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.6;
/*    color: #212121;*/
}

.pass_ship_container .cm_course_list .cm_course_card .bdr_card {
    border: 1px solid #917330;
    display: inline-block;
    font-size: 1.4rem;
    color: #917330;
    padding: 5px 10px;
}

.pass_ship_sec_room {
    padding: 1px 0 60px;
    margin-top: 60px;
}

.course_container.cm_course_container .course_mv {
    padding: 0;
    margin-top: 140px;
    margin-bottom: 40px;
}

.course_container.cm_course_container .cruise_basic_info {
    padding: 0;
    margin-top: 40px;
    margin-bottom: 40px;
}

.cm_course_container .schedule_table_div.upper_table {
    padding: 0;
    margin-top: 40px;
    margin-bottom: 30px;
}

.cm_course_container .schedule_div {
    padding: 0;
}

.cm_course_container .schedule_table_div.lower_table {
    padding: 0;
    margin-top: 40px;
    margin-bottom: 30px;
}

.course_appealing_sec.cm_course_appealing_sec .course_appealing {
    margin-top: 40px;
}

.feature_sec.cm_feature_sec {
    padding: 0;
}


.cm_feature_sec .feature_slide_container {
    padding: 0;
    padding-bottom: 60px;
    margin-top: 40px;
    margin-bottom: 60px;
}



@media screen and (max-width:768px) {
    .sec_link_pass_ship.cm_sec_link_pass_ship {
        padding: 0;
        margin: 20px 0 30px;
    }
    .one_colum_img {
        padding: 0;
        margin: 30px 0 15px;
    }
    .img_txt {
        font-size: 1.6rem;
    }
    .cruise_h2_ttl.cm_h2_ttl {
        margin: 30px auto 30px;
    }
    .cruise_h3_ttl.cm_h3_ttl {
        margin: 30px 0 20px;
    }
    .ship_data.cm_ship_data {
        margin-top: 20px;
        margin-bottom: 40px;
    }
    .ship_data.cm_ship_data .row {
        flex-direction: column;
    }
    .ship_data.cm_ship_data .row p:nth-of-type(1),
    .ship_data.cm_ship_data .row p:nth-of-type(2) {
        width: 100%;
        font-size: 1.4rem;
    }
    .ship_data.cm_ship_data .row p:nth-of-type(1) {
        padding: 5px 15px;
    }
    .ship_data.cm_ship_data .row p:nth-of-type(2) {
        border-left: 1px solid #d6d6d6;
    }
    .recommend_card.cm_recommend_card {
        margin-bottom: 40px;
    }
    .cm_recommend_ttl {
        margin-bottom: 1.6rem;
    }
    .card_inner.cm_card_inner {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .recommend_card.cm_recommend_card .recommend_link {
        margin: 30px auto 0;
    }
    .pass_ship_container .cm_course_list .cm_course_card {
        padding: 15px;
        margin-top: 10px;
        margin-bottom: 10px;
    }
    .pass_ship_container .cm_course_list .cm_course_card .course_ttl {
        font-size: 1.6rem;
    }
    .pass_ship_container .cm_course_list .cm_course_card .bdr_card {
        font-size: 1.2rem;
    }
    .pass_ship_container .cm_course_list .cm_course_card .yen {
        font-size: 1.8rem;
    }
    .pass_ship_container .cm_course_list .cm_course_card .departure_item p {
        font-size: 1.4rem;
    }
    .pass_ship_container .cm_course_list .cm_course_card .departure {
        gap: 10px;
    }
    .pass_ship_sec_room {
        padding: 1px 0 40px;
        margin-top: 30px;
    }
    .course_container.cm_course_container .course_mv {
        gap: 30px;
        padding: 0;
        margin-top: 30px;
        margin-bottom: 30px;
    }
    .course_container.cm_course_container .cruise_basic_info {
        padding: 0;
        margin-top: 20px;
        margin-bottom: 30px;
    }
    
}



