@charset "utf-8";

/* 共通
-------------------------------------------*/
a:focus {
    outline: 2px solid #7396b8;
}

/* 「当院の禁煙治療について」
-------------------------------------------*/
.dockFeaturesBl {
    padding: 45px 0 62px;
}

.dockFeaturesBl .second-tit {
    padding-left: 60px;
}

.dockFeaturesBl .second-tit::before {
    width: 40px;
    height: 25px;
    background: url(../img/common/icn_tobacco_purple.svg) no-repeat center / contain;
    top: 7px;
}

.dockFeaturesBl .txt-normal-m {
    margin-top: 52px;
    letter-spacing: 0.1em;
}

.dockFeaturesBl .third-tit+.txt-normal-m {
    margin-top: 15px;
}

.dockFeaturesBl .num-ol {
    margin-top: 0;
}

.num-ol_li_left_point,
.num-ol_li_left_tit,
.num-ol_li_right_tit {
    color: #7396b8;
}

.dockFeaturesBl .sec_imgwrap {
    margin-top: 99px;
}

.dockFeaturesBl .flameAloneArea {
    margin-top: 16px;
}

.dockFeaturesBl .flameAloneArea_tit::before {
    background-color: #7396b8;
}

.kinenGairai_schedule {
    margin-top: 53px;
}

.kinenGairai_nicotine {
    margin-top: 82px;
}

.dockFeaturesBl .figFlame {
    margin-top: 20px;
}

.dockFeaturesBl .figFlame_tit {
    background-color: #7396b8;
}


@media screen and (max-width: 767px) {
    .dockFeaturesBl {
        padding: 21px 0 22px;
    }

    .dockFeaturesBl .inner790,
    .dockFeaturesBl .inner860,
    .dockFeaturesBl .inner870,
    .dockFeaturesBl .inner970 {
        padding: 0;
    }

    .dockFeaturesBl .second-tit {
        padding-left: 50px;
        letter-spacing: 0;
        word-break: keep-all;
    }

    .dockFeaturesBl .second-tit::before {
        width: 28px;
        height: 17px;
        top: 5.5px;
    }

    .dockFeaturesBl .txt-normal-m {
        margin-top: 14px;
    }

    .dockFeaturesBl .sec_imgwrap {
        margin-top: 30px;
    }

    .kinenGairai_schedule {
        margin-top: 42px;
    }

    .kinenGairai_nicotine {
        margin-top: 45px;
    }

    .kinenGairai_schedule .third-tit,
    .kinenGairai_nicotine .third-tit {
        font-size: 1.9rem;
        letter-spacing: 0;
        padding-left: 1.7em;
    }

    .kinenGairai_schedule .third-tit::before,
    .kinenGairai_nicotine .third-tit::before,
    .kinenGairai_schedule .third-tit::after,
    .kinenGairai_nicotine .third-tit::after {
        top: 14px;
    }

    .dockFeaturesBl .figFlame {
        margin-top: 12px;
    }

    .dockFeaturesBl .figFlame_imgwrap.sp_expand::after {
        background: url(../img/common/icn_glass_purple.svg) no-repeat center / contain;
    }

    .kinenGairai_nicotine .figFlame_imgwrap {
        max-width: 390px;
    }
}


/* 「スクリーニングテスト」
-------------------------------------------*/
.dockScreeningBl {
    padding: 159px 0 0;
}

.dockScreeningBl::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    background: url(../img/common/bg_lightpurple.jpg) no-repeat center top / cover;
    position: absolute;
    top: 0;
    left: 0;
}

.dockScreeningBl .second-tit {
    padding-left: 60px;
}

.dockScreeningBl .second-tit::before {
    width: 33px;
    height: 38px;
    background: url(../img/common/icn_screening_purple.svg) no-repeat center / contain;
    top: 9px;
}

.dockScreeningBl .second-tit_cate_txt {
    color: #7396b8;
}

.dockScreeningBl .second-tit_cate_txt::before {
    width: 33px;
    height: 38px;
    background: url(../img/common/icn_screening_purple.svg) no-repeat center / contain;
    top: -5px;
}

.dockScreeningBl .line_gray {
    margin-top: -15px;
}

.dockScreeningBl .txt-normal-m {
    margin-top: 42px;
    letter-spacing: .08em;
}



.dockScreening_flame {
    border: 1px solid #dadada;
    border-radius: 20px;
    margin: 30px auto 20px;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, .1);
    width: 100%;
    box-sizing: border-box;
}

.dockScreeningBl.tab-horizontalBl .tab_area {
    margin: 76px auto 0;
    padding: 0;
}

.dockScreeningBl.tab-horizontalBl .tab_area li {
    margin: 12px 6px 0;
}

.dockScreeningBl.tab-horizontalBl .tab_area li a {
    font-size: 1.7rem;
    padding: 0.1em 2em;
    letter-spacing: 0.15em;
    line-height: 1.17;
    text-align: left;
}

.dockScreeningBl.tab-horizontalBl .tab_area li.select a {
    background: linear-gradient(180deg, rgba(75, 183, 169, 1) 0%, rgba(58, 146, 135, 1) 100%);
    border: 1px solid #7396b8;
}

.dockScreeningBl.tab-horizontalBl .tab_area li a::after {
    top: calc(50% - 3px);
    right: 14px;
    transition: none;
}

.dockScreeningBl.tab-horizontalBl .tab_area li:not(.select) a:hover::after {
    right: 14px;
}

.dockScreening_flame_inner-1 {
    padding: 18px 0 45px;
    position: relative;
}

.dockScreening_flame_inner-1 .scrollable-wrapper {
    margin: 36px 3.6em 0;
}

.dockScreening_flame_inner-1::after {
    content: '';
    display: block;
    width: 89%;
    height: 1px;
    background: linear-gradient(90deg, rgba(176, 176, 176, 1) 0%, rgba(219, 218, 218, 1) 50%, rgba(255, 255, 255, 1) 90%, rgba(255, 255, 255, 0) 100%);
    position: absolute;
    bottom: 0;
    left: 5px;
}

.dockScreening_flame_tit {
    font-size: 2.3rem;
    font-weight: 700;
    letter-spacing: 0.055em;
    line-height: 1.5;
    position: relative;
    padding-left: 5.3em;
    width: 88%;
    box-sizing: border-box;
    margin-top: 26px;
}

.dockScreening_flame_tit::before {
    content: '';
    display: inline-block;
    width: 3.3em;
    height: 46px;
    background: linear-gradient(90deg, rgba(83, 191, 207, 0.1) 0%, rgba(83, 191, 207, 1) 100%);
    position: absolute;
    left: 0;
    top: -5px;
}

.dockScreening_flame_tit .marker {
    font-size: 1.7rem;
}

.dockScreening_flame_special {
    border: 1px solid #dadada;
    border-radius: 20px;
    padding: 2.9em 2.2em;
    margin: 37px 3.6em 0;
}

.dockScreening_flame_special+.dockScreening_flame_special {
    margin-top: 50px;
}

.dockScreening_flame_special_tit {
    font-size: 1.9rem;
    line-height: 1.5;
    font-weight: 500;
    letter-spacing: 0.15em;
    color: #7396b8;
}

.dockScreening_flame_special .dockScreening_flame_desc {
    text-align: left;
    margin-top: 17px;
    padding: 0;
    width: auto;
}

.dockScreening_flame_special_btn,
.dockScreening_flame_special_btn:visited,
.dockScreening_flame_special_btn:link {
    font-size: 1.6rem;
    font-weight: 600;
    padding: 0.95em 1.8em;
    letter-spacing: 0.15em;
    line-height: 1.17;
    color: #fff;
    text-align: left;
    background: linear-gradient(180deg, rgba(84, 192, 208, 1) 0%, rgba(64, 151, 164, 1) 100%);
    border: 1px solid #7396b8;
    width: fit-content;
    box-sizing: border-box;
    border-radius: 60px;
    box-shadow: 5px 5px 5px rgba(0, 0, 0, .1);
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all .5s;
    position: relative;
    margin: 22px auto 0;
}

.dockScreening_flame_special_btn::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 8px solid rgba(255, 255, 255, .7);
    border-right: 0;
    position: absolute;
    top: calc(50% - 3px);
    right: 15px;
    transition: all .5s;
}

.dockScreening_flame_special_btn:hover::after {
    right: 5px;
}

.dockScreening_flame_special .txt-link.pdf {
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: .1em;
    text-align: center;
    margin: 11px auto 0;
    display: table;
}

.dockScreening_flame_desc {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0;
    margin-top: 25px;
    padding-left: 7.6em;
    width: 87%;
    box-sizing: border-box;
}

.dockScreening_flame_inner-2 {
    padding: 45px 3.6em 64px;
}

.dockScreening_flame_inner-2 .dockScreening_flame_desc {
    width: auto;
    margin: 0;
    padding-left: 1em;
}

.dockScreening_flame_inner-2 .dockScreening_flame_desc+.dockScreening_flame_desc {
    margin-top: 13px;
}

.content_area._2 .dockScreening_flame_inner-2 .dockScreening_flame_desc.fwB+.dockScreening_flame_desc {
    margin-top: 3px;
}

.dockScreening_flame_inner-2 .dockScreening_flame_desc.fwB {
    font-weight: 600;
    letter-spacing: 0.05em;
}

.dockScreening_flame_inner-2 .dockScreening_ul_li_tit+.dockScreening_flame_desc.fwB {
    margin-top: 20px;
}

.dockScreening_flame_inner-2 .dockScreening_ul_li_ul+.dockScreening_flame_desc.fwB {
    margin-top: 25px;
}

.dockScreening_flame_inner-2 .dockScreening_ul_li_ul_li {
    padding-left: 2em;
}

.dockScreening_ul_li+li {
    margin-left: 3.9em;
}

.content_area._2 .dockScreening_ul_li:nth-child(2) {
    width: 35%;
    margin-left: 4%;
}

.dockScreening_ul_li_lr {
    display: flex;
}

.dockScreening_ul_li_lr_l {
    width: 57%;
    margin-right: 3%;
    box-sizing: border-box;
}

.dockScreening_ul_li_lr_r {
    width: 40%;
    box-sizing: border-box;
}

.dockScreening_ul_li_lr_tit {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.5;
    padding: 0 .5em;
    position: relative;
    margin-left: 1.0em;
    text-indent: 0em;
    display: inline-block;
    margin-top: 25px;
}

.dockScreening_ul_li_lr_chuki {
    font-size: 1.3rem;
    text-indent: -1em;
    padding-left: 2.8em;
}

.dockScreening_ul_li_tit {
    font-size: 1.7rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    position: relative;
    padding-left: 15px;
}

.dockScreening_ul_li_tit::before {
    content: '';
    display: inline-block;
    width: 11px;
    height: 11px;
    background-color: #7396b8;
    position: absolute;
    left: 0;
    top: 8px;
    border-radius: 50%;
}

.dockScreening_ul_li_ul {
    margin-top: 21px;
}

.dockScreening_ul_li_lr .dockScreening_ul_li_ul {
    margin-top: 10px;
}

.dockScreening_ul_li_ul_li {
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.5;
    position: relative;
    padding-left: 2em;
    text-indent: -1em;
}

.dockScreening_ul_li_ul_li+.dockScreening_ul_li_ul_li {
    margin-top: 7px;
}

.dockScreening_price {
    width: fit-content;
    margin: 15px 0 0 auto;
    padding: 0 40px 20px 5px;
    border-bottom: 1px solid #bfbfbf;
}

.content_area._4 .dockScreening_price {
    margin-top: 35px;
}

.dockScreening_price_cate {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: .1em;
}

.content_area._3 .dockScreening_price_cate {
    margin-top: 30px;
    margin-bottom: 15px;
}

.dockScreening_price_age {
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: .1em;
}

.dockScreening_price_desc {
    font-size: 1.9rem;
    font-weight: 700;
    letter-spacing: .05em;
}

.dockScreening_price_desc_num {
    font-family: "source-sans-3-variable", sans-serif;
    font-variation-settings: "wght" 600;
    font-size: 3.5rem;
    line-height: 1;
    letter-spacing: 0.05em;
    color: #00aaaa;
}

.dockScreening_table {
    width: 150%;
    box-sizing: border-box;
    border-collapse: collapse;
    border: 1px solid #9a9a9a;
    table-layout: fixed;
}

.dockScreening_table th,
.dockScreening_table td {
    font-size: 1.8rem;
    border: 1px solid #bfbfbf;
    padding: 10px;
    text-align: center;
    vertical-align: middle;
}

.dockScreening_table tr:nth-child(1) th:nth-child(n+1),
.dockScreening_table tr:nth-child(2) th:nth-child(n+1) {
    font-weight: 500;
    line-height: 1.27;
    letter-spacing: 0.05em;
}

.dockScreening_table tr:nth-child(1) th:nth-child(3) {
    background: linear-gradient(180deg, rgba(226, 243, 244, 1) 0%, rgba(211, 237, 237, 1) 100%);
}

.dockScreening_table tr:nth-child(2) th {
    padding: 0.7em 0.5em;
}

.dockScreening_table tr:nth-child(1) th:nth-child(1),
.dockScreening_table tr:nth-child(n+1) td:nth-child(1) {
    background-color: #ececec;
    font-weight: 700;
    line-height: 1.38;
    letter-spacing: 0.05em;
    width: 185px;
    box-sizing: border-box;
}

.dockScreening_table tr:nth-child(n+1) td:nth-child(1) {
    padding: 2.4em 0.5em;
    min-height: 114px;
    box-sizing: border-box;
}

.dockScreening_table td {
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0.1em;
}

.dockScreening_table .dot {
    color: #7396b8;
    font-size: 2.3rem;
}

.scroll-hint-icon {
    background: rgba(115, 150, 184, .6);
}

.btn_big,
.btn_big:visited,
.btn_big:link {
    background: linear-gradient(180deg, rgba(115, 150, 184, 1) 0%, rgba(83, 111, 138, 1) 100%);
    border: 1px solid #7396b8;
    margin-top: 70px;
}

.btn_small,
.btn_small:visited,
.btn_small:link {
    background: linear-gradient(180deg, rgba(115, 150, 184, 1) 0%, rgba(83, 111, 138, 1) 100%);
    border: 1px solid #7396b8;
}

.dockScreening_result {
    padding: 110px 0 0;
}

.dockScreening_result .scrollable-wrapper {
    max-width: 830px;
    margin: 33px auto 0;
}

.dockScreening_result_desc {
    font-size: 1.7rem;
    font-weight: 500;
    line-height: 1.64;
    letter-spacing: 0;
}

.third-tit+.dockScreening_result_desc {
    margin-top: 39px;
}

.dockScreeningBl .txt-green,
.dockScreeningBl .receptTime_table .available {
    color: #7396b8;
}


@media screen and (max-width: 999px) {
    .dockScreening_flame_tit {
        padding-left: 3.8em;
        width: 95%;
    }

    .dockScreening_flame_tit::before {
        width: 2.5em;
    }

    .dockScreeningBl .txt-normal-m {
        margin-top: 33px;
        letter-spacing: 0.1em;
    }

    .txt-normal-m + .btn_small {
        margin-top: 15px;
    }

    .dockScreening_flame_desc {
        padding-left: 5.4em;
        width: 95%;
    }

    .dockScreening_ul {
        padding: 0;
    }

}


@media screen and (max-width: 767px) {
    .dockScreeningBl {
        padding: 133px 0 0;
    }

    .dockScreeningBl .inner1200 {
        padding: 0;
    }

    .dockScreeningBl::before {
        border-radius: 0 15px 0 0;
    }

    .dockScreeningBl .second-tit {
        padding-left: 35px;
        letter-spacing: 0;
    }

    .dockScreeningBl .second-tit::before {
        width: 23px;
        height: 26px;
        top: 9px;
    }

    .dockScreeningBl .second-tit_cate_txt::before {
        width: 28px;
        height: 33px;
        top: -7px;
    }

    .dockScreeningBl .line_gray {
        margin-top: -20px;
    }

    .dockScreeningBl.tab-horizontalBl .content_area-wrap {
        margin: 0;
    }

    .dockScreeningBl.tab-horizontalBl .tab_area {
        margin: 38px auto 0;
    }

    .dockScreeningBl.tab-horizontalBl .tab_area li {
        margin: 25px auto 0;
        width: calc((483 / 750)* 100vw);
    }

    .dockScreeningBl.tab-horizontalBl .tab_area li a {
        font-size: 1.55rem;
    }

    .dockScreening_flame {
        border-radius: 10px;
        margin: 37px auto 20px;
    }

    .dockScreening_flame_inner-1 {
        padding: 30px 0 20px;
    }

    .dockScreening_flame_inner-2 {
        padding: 20px 1.8em 30px 2.8rem;
    }

    .dockScreening_flame_tit {
        font-size: 1.9rem;
        padding-left: 2.3em;
    }

    .dockScreening_flame_tit::before {
        width: 1.5em;
        height: 30px;
        top: 0px;
    }

    .dockScreening_flame_desc {
        font-size: 1.4rem;
        margin-top: 0;
        padding: 0 2.8rem;
        width: auto;
    }

    .dockScreening_flame_inner-1 .scrollable-wrapper {
        margin: 22px 1.8em 0 2.8rem;
    }

    .dockScreening_flame_inner-2 .dockScreening_ul_li_tit+.dockScreening_flame_desc.fwB {
        margin-top: 10px;
    }

    .dockScreening_flame_special .dockScreening_flame_desc {
        margin-top: 10px;
    }

    .dockScreening_flame_inner-2 .dockScreening_ul_li_ul+.dockScreening_flame_desc.fwB {
        margin-top: 10px;
    }

    .dockScreening_flame_inner-2 .dockScreening_flame_desc+.dockScreening_flame_desc {
        margin-top: 10px;
    }

    .dockScreening_flame_inner-2 .dockScreening_flame_desc {
        padding: 0 0 0 1em;
    }

    .dockScreening_flame_special {
        padding: 25px 15px;
        margin: 22px 1.8em 0 2.8rem;
    }

    .dockScreening_flame_special+.dockScreening_flame_special {
        margin-top: 25px;
    }

    .dockScreening_flame_special_tit {
        font-size: 1.6rem;
    }

    .dockScreening_flame_special_btn,
    .dockScreening_flame_special_btn:visited,
    .dockScreening_flame_special_btn:link {
        font-size: 1.4rem;
        margin: 15px auto 0;
        line-height: 1.5;
        width: 90%;
        text-align: center;
    }

    .dockScreening_flame_special_btn:hover::after {
        right: 15px;
    }

    .dockScreening_flame_special .txt-link.pdf {
        font-size: 1.4rem;
    }

    .btn_big,
    .btn_big:visited,
    .btn_big:link {
        margin-top: 35px;
    }

    .dockScreening_result_desc {
        font-size: 1.5rem;
        line-height: 1.8;
    }

    .third-tit+.dockScreening_result_desc {
        margin-top: 20px;
    }

    .dockScreening_ul {
        display: block;
        padding: 0;
    }

    .dockScreening_ul_li+li {
        margin-left: 0;
        margin-top: 15px;
    }

    .content_area._2 .dockScreening_ul_li:nth-child(2) {
        width: auto;
        margin-left: 0;
    }

    .dockScreening_ul_li_tit {
        font-size: 1.6rem;
    }

    .dockScreening_ul_li_ul {
        margin-top: 12px;
    }

    .dockScreening_ul_li_ul_li {
        font-size: 1.4rem;
    }

    .dockScreening_ul_li_ul_li+.dockScreening_ul_li_ul_li {
        margin-top: 5px;
    }

    .dockScreening_price {
        margin: 20px -25px 0 auto;
        padding: 0 1em 5px 5px;
    }

    .dockScreening_price_cate {
        font-size: 1.6rem;
    }

    .dockScreening_price_desc {
        font-size: 1.7rem;
    }

    .dockScreening_price_desc_num {
        font-size: 3rem;
    }

    .dockScreening_ul_li_lr {
        display: block;
    }

    .dockScreening_ul_li_lr_tit {
        font-size: 1.4rem;
        margin-top: 10px;
    }

    .dockScreening_ul_li_lr_r {
        width: auto;
        box-sizing: border-box;
    }

    .dockScreening_ul_li_lr_l {
        width: auto;
        margin-right: 0;
    }

    .dockScreening_ul_li_lr_r {
        width: auto;
    }

    .dockScreening_result {
        padding: 55px 0 0;
    }

    .dockScreening_result .scrollable-wrapper {
        max-width: 830px;
        margin: 33px auto 0;
    }

    .dockScreening_table {
        width: 830px;
    }

    .dockScreening_table th,
    .dockScreening_table td {
        font-size: 1.6rem;
        padding: 0.5em;
    }

    .dockScreening_table tr:nth-child(n+1) td:nth-child(1) {
        padding: 1em 0.5em;
    }

    .dockScreening_table .dot {
        font-size: 2rem;
    }
}


/* 電話エリア
-------------------------------------------*/
.telArea {
    padding: 64px 0 125px;
}
.telArea_time {
    letter-spacing: .10em;
}

.telArea_tel {
    color: #7396b8;
}

.telArea_tel::before {
    background: url(../img/common/icn_tel_purple.svg) no-repeat center / contain;
}


@media screen and (max-width: 767px) {
    .telArea {
        padding: 47px 0 63px;
    }

    .telArea_tel a,
    .telArea_tel a:link,
    .telArea_tel a:visited {
        color: #7396b8;
    }

    .telArea_time {
        text-align: left;
        display: flex;
        justify-content: center;
        text-indent: -5.5em;
        padding-left: 5.5em;
    }

}


/*「その他」
-------------------------------------------*/
.dockEtcBl {
    margin-top: -291px;
    padding: 183px 0 150px;
    background: url(../img/common/bg_lightpurple.jpg) no-repeat top center / cover;
    position: relative;
    z-index: 1;
}

.dockEtc_ticket:before {
    content: "";
    display: block;
    background: url(../img/common/bg_ticket_top.png) no-repeat center top / cover;
    height: min(calc((43 / 1200)* 100vw), 43px);
    width: 100%;
}

.dockEtc_ticket:after {
    content: "";
    display: block;
    background: url(../img/common/bg_ticket_bottom.png) no-repeat center bottom / cover;
    height: min(calc((62 / 1200)* 100vw), 62px);
    width: 100%;
    position: relative;
}

.dockEtc_ticket_inner {
    background: url(../img/common/bg_ticket_middle.png) repeat-y center top / 100% auto;
    padding: 35px 9.8em 60px;
}

.dockEtc_ticket_tit_cate {
    font-family: "source-sans-3-variable", sans-serif;
    font-variation-settings: "wght" 600;
    font-size: 1.7rem;
    line-height: 1;
    letter-spacing: 0.08em;
    text-align: center;
    color: #00aaaa;
    display: table;
    margin: 0 auto;
    position: relative;
    padding-left: 68px;
}

.dockEtc_ticket_tit_cate::before {
    content: '';
    display: inline-block;
    width: 52.1px;
    height: 25.6px;
    background: url(../img/common/icn_ticket_green.svg) no-repeat center / cover;
    position: absolute;
    left: 0;
    top: -5px;
}

.dockEtc_ticket_tit_txt {
    font-size: 3.1rem;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: .1em;
    text-align: center;
    display: table;
    margin: 44px auto 0;
    padding: 0 0 27px 0;
    position: relative;
}

.dockEtc_ticket_tit_txt::after {
    content: '';
    display: block;
    width: 175%;
    height: 1px;
    background: linear-gradient(90deg, rgba(176, 176, 176, 1) 0%, rgba(219, 218, 218, 1) 50%, rgba(255, 255, 255, 1) 90%, rgba(255, 255, 255, 0) 100%);
    position: absolute;
    bottom: 0;
    left: -135px;
}

.dockEtc_ticket_desc {
    font-size: 1.6rem;
    line-height: 2;
    font-weight: 500;
    letter-spacing: .05em;
    width: 85%;
    margin: 26px auto 0;
}

.dockEtc_ticket_lr {
    display: flex;
    justify-content: space-between;
    margin: 43px auto 0;
}

.dockEtc_ticket_lr_imgwrap {
    width: 47.55%;
    box-sizing: border-box;
}

.dockEtc_ticket_lr+.btn-txtlink {
    margin-top: 46px;
}

.dockEtc_pickup {
    padding: 126px 0 0;
    position: relative;
    z-index: 2;
}

.dockEtc_pickup::before {
    content: '';
    display: block;
    width: 100%;
    height: 344px;
    background: url(../img/dock/bg_dock_pickup.svg) no-repeat center / cover;
    position: absolute;
    top: 52%;
    left: 0;
    z-index: 0;
}

.dockEtc_pickup_tit {
    font-family: "source-sans-3-variable", sans-serif;
    font-variation-settings: "wght" 400;
    font-size: 3.3rem;
    line-height: 1;
    letter-spacing: 0.08em;
    text-align: center;
    color: #00aaaa;
    display: table;
    margin: 0 auto;
    position: relative;
    padding-left: 64px;
    padding-right: 84px;
}

.dockEtc_pickup_tit::before {
    content: '';
    display: block;
    width: 53px;
    height: 1px;
    background: #00aaaa;
    position: absolute;
    left: 0;
    top: 17px;
}

.dockEtc_pickup_tit::after {
    content: '';
    display: block;
    width: 3px;
    height: 1px;
    background: #fff;
    position: absolute;
    left: 10px;
    top: 17px;
}

.dockEtc_pickup_tit_inner {
    position: relative;
    padding-left: 64px;
}

.dockEtc_pickup_tit_inner::before {
    content: '';
    width: 38.7px;
    height: 28.8px;
    background: url(../img/common/icn_book.svg) no-repeat center / cover;
    position: absolute;
    left: 0;
    top: 5px;
}

.dockEtc_pickup_ul {
    display: flex;
    justify-content: space-between;
    margin: 64px auto 0;
}

.dockEtc_pickup_ul li {
    width: 45.4%;
    box-sizing: border-box;
    display: block;
    border-radius: 20px;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, .1);
    transition: all .5s;
}

.dockEtc_pickup_ul li:hover {
    box-shadow: none;
}

.dockEtc_pickup_ul li a {
    display: block;
}

.dockEtc_pickup_ul li a:hover {
    opacity: 0.7;
}

.dockEtc_pickup_ul_imgwrap {
    background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(239, 239, 239, 1) 100%);
    border-radius: 20px 20px 0 0;
    height: 196px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
}

.dockEtc_pickup_ul_imgwrap img {
    transition: all .5s;
}

.dockEtc_pickup_ul li a:hover .dockEtc_pickup_ul_imgwrap img {
    transform: scale(1.05);
}

.dockEtc_pickup_ul li:nth-child(1) .dockEtc_pickup_ul_imgwrap img {
    width: 62%;
}

.dockEtc_pickup_ul li:nth-child(2) .dockEtc_pickup_ul_imgwrap img {
    width: 79.5%;
}

.dockEtc_pickup_ul_txtwrap {
    border: 1px solid #00aaaa;
    background: linear-gradient(180deg, rgba(36, 169, 169, 1) 0%, rgba(0, 154, 166, 1) 100%);
    border-radius: 0 0 20px 20px;
    height: 91px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.5em 1.5em;
    position: relative;
}

.dockEtc_pickup_ul_txtwrap p {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.1em;
    color: #fff;
    text-align: center;
    position: relative;
    padding-right: 22px;
    top: -.1em;
}

.dockEtc_pickup_ul_txtwrap p::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 12px solid rgba(255, 255, 255, .5);
    border-right: 0;
    position: absolute;
    top: 10px;
    right: -9px;
    transition: all .5s;
}

.dockEtc_pickup_ul li a:hover .dockEtc_pickup_ul_txtwrap p::before {
    right: -19px;
}


@media screen and (max-width: 999px) {
    .dockEtc_ticket_inner {
        padding: 35px 5em 60px;
    }

    .dockEtc_pickup_ul_txtwrap p {
        letter-spacing: 0;
    }
}


@media screen and (max-width: 767px) {
    .dockEtcBl {
        margin-top: -50px;
        padding: 9px 0 85px;
    }

    .dockEtcBl .inner1025 {
        padding: 0 10px;
    }

    .dockEtc_ticket:before {
        background: url(../img/common/bg_ticket_top_sp.png) no-repeat center top / 100% auto;
        height: calc((38 / 750)* 100vw);
        position: relative;
        top: 3px;
    }

    .dockEtc_ticket_inner {
        padding: 35px 9.2% 35px 7%;
        background: url(../img/common/bg_ticket_middle_sp.png) repeat-y center top / 100% auto;
    }

    .dockEtc_ticket:after {
        background: url(../img/common/bg_ticket_bottom_sp.png) no-repeat center bottom / 100% auto;
        height: calc((49 / 750)* 100vw);
        position: relative;
        top: -4px;
    }

    .dockEtc_ticket_tit_txt {
        font-size: 2.8rem;
        margin: 20px auto 0;
        padding: 0 0 25px 0;
        letter-spacing: 0;
    }

    .dockEtc_ticket_tit_txt::after {
        width: 100%;
        left: 0;
        right: 0;
    }

    .dockEtc_ticket_desc {
        font-size: 1.4rem;
        width: 90%;
        margin: 30px auto 0;
    }

    .dockEtc_ticket_lr {
        margin: 20px auto 0;
        display: block;
    }

    .dockEtc_ticket_lr_imgwrap {
        width: auto;
        box-sizing: border-box;
    }

    .dockEtc_ticket_lr_imgwrap+.dockEtc_ticket_lr_imgwrap {
        margin-top: 20px;
    }

    .dockEtc_ticket_lr+.btn-txtlink {
        margin: 45px auto 0;
    }

    .dockEtc_pickup {
        padding: 55px 0 0;
    }

    .dockEtc_pickup::before {
        height: 474px;
        top: 25%;
    }

    .dockEtc_pickup_tit {
        font-size: 3.0rem;
        padding-left: 54px;
        padding-right: 49px;
    }

    .dockEtc_pickup_tit::before {
        width: 43px;
        height: 1px;
        top: 14px;
    }

    .dockEtc_pickup_tit::after {
        top: 14px;
    }

    .dockEtc_pickup_tit_inner {
        padding-left: 42px;
    }

    .dockEtc_pickup_tit_inner::before {
        width: 30px;
        height: 22px;
        top: 9px;
    }

    .dockEtc_pickup_ul {
        display: block;

        margin: 34px auto 0;
    }

    .dockEtc_pickup_ul li {
        width: auto;
        border-radius: 10px;
    }

    .dockEtc_pickup_ul li+li {
        margin-top: 30px;
    }

    .dockEtc_pickup_ul li:hover {
        box-shadow: 5px 5px 10px rgba(0, 0, 0, .1);
    }

    .dockEtc_pickup_ul li a:hover {
        opacity: 1;
    }

    .dockEtc_pickup_ul_imgwrap {
        border-radius: 10px 10px 0 0;
        height: 150px;
    }

    .dockEtc_pickup_ul li a:hover .dockEtc_pickup_ul_imgwrap img {
        transform: scale(1);
    }

    .dockEtc_pickup_ul li:nth-child(1) .dockEtc_pickup_ul_imgwrap img {
        width: auto;
        height: 80%;
        max-width: 404px;
    }

    .dockEtc_pickup_ul li:nth-child(2) .dockEtc_pickup_ul_imgwrap img {
        width: 80%;
        max-width: 358px;
        height: auto;
    }

    .dockEtc_pickup_ul_txtwrap {
        border-radius: 0 0 10px 10px;
        height: auto;
        padding: 1.5em 1.5em;
    }

    .dockEtc_pickup_ul_txtwrap p {
        font-size: 1.7rem;
        position: static;
    }

    .dockEtc_pickup_ul_txtwrap p::before {
        top: 31px;
        right: 20px;
    }

    .dockEtc_pickup_ul li a:hover .dockEtc_pickup_ul_txtwrap p::before {
        right: 20px;
    }

}


/* 「よくある質問」&「WEB予約」ボタン
---------------------------------------------------*/
.two-column-btnArea {
    margin: 241px 0 0;
}


@media screen and (max-width: 767px) {
    .two-column-btnArea {
        margin: 87px 0 0;
    }
}


/* モーダル
---------------------------------------------------*/
.modal__bg {
    background: rgba(115, 150, 184, 0.5);
}


@media screen and (max-width: 767px) {
    .modal-card {
        height: 70%;
    }

    .scrollable-wrapper {
        overflow-y: hidden !important;
    }

    .modal-card_inner {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .modal-card[data-modal="modal001"] .modal-scale-imgwrap {
        width: 670px;
    }

}