@media only screen and (max-width: 768px) {
    .under #mainContent {
        padding-bottom: 50px;
    }
    .under .key {
        height: 300px;
    }
    .under .key::before {
        max-height: 440px;
        background: url(../images/ud_key_bg.png) no-repeat bottom center;
        background-size: cover;
    }
    /* .under .key::after {
        content: "";
        display: block;
        position: absolute;
        transition: all 0.3s;
        z-index: -1;
        right: 0;
        top: 0;
        width: 100%;
        height: calc(100% + 200px);
        max-height: 450px;
        background: url(../images/ud_key_child.png) no-repeat right 20px bottom/clamp(200px, 50vw, 280px) auto;
    } */
    .h3-profile:before,
    .tbl-profile:before,
    .tbl-profile:after {
        display: none;
    }
    table.tbl_style01.tbl-profile th {
        min-width: 100px !important;
        width: 25%;
        padding: 10px;
    }
    .tbl-profile:before {
        display: block;
        content: "";
        position: absolute;
        right: 0;
        left: initial;
        top: -104px;
        background: url(../images/udr-profile-img04.png) no-repeat center;
        background-size: contain;
        width: 150px;
        height: 100px;
    }
    .under.page-contact h2,
    .under.page-contact-confirm h2,
    .under.page-contact-thanks h2 {
        margin-top: 70px;
    }
    .h3-icon.h3-icon02:before,
    .h3-icon:before {
        display: none;
    }
    .h2-icon:before {
        right: -70px;
        top: 90%;
        width: 170px;
        height: 100px;
    }
    .h2-icon.h2-icon02:before {
        background: url(../images/iProfile_img03_sp.png) no-repeat center;
        background-size: 100% auto;
        width: 230px;
        height: 210px;
        right: -85px;
        top: -290px;
    }
    .under .flow_box .box:last-of-type .point::before {
        height: calc(50% + 10px);
        top: -7px;
    }
    .under .btn-group .iBtn {
        padding: 10px 40px 10px 10px;
        min-height: 60px;
    }
    .under .btn-group .iBtn::after {
        right: 1em;
        width: 1.5em;
        height: 1.5em;
        border-radius: 50%;
        background: url(../images/ico_arr_w.svg) center / 0.8em auto no-repeat, var(--main-color);
    }
    .under .btn-group .iBtn>span {
        font-size: 16px;
    }
    .under .key .logo {
        top: 3.5%;
    }
    .under .key .key_text .en {
        font-size: 22px;
    }
    .under .key .key_text .title_page {
        font-size: 24px;
    }
    .under #toc_container {
        padding: 30px;
        border-radius: 40px 40px 10px 10px;
    }
    .under #toc_container .toc_list li {
        width: 100%;
    }
    .under h2 {
        margin-top: 50px;
        font-size: 28px;
    }
    .under h3 {
        margin-bottom: 15px;
        font-size: 26px;
    }
    .under h4 {
        margin-bottom: 10px;
        font-size: 24px;
    }
    .under h5 {
        margin-bottom: 12px;
        font-size: 22px;
    }
}

@media only screen and (max-width: 430px) {
    .under .key .inner {
        padding-left: 20px;
        padding-right: 20px;
    }
    .under .key .key_text .title_page {
        width: 75%;
    }
    .under .topic_path {
        padding-top: 30px;
    }
}

@media only screen and (max-width: 390px) {
    .under .key::after {
        right: -30px;
    }
}

@media only screen and (max-width: 768px) {
    .under .section {
        padding-top: 40px;
    }
    .under .box_decor {
        padding: 20px 0;
    }
    .under .box_list {
        padding: 3.5em 1.5em;
    }
    .under .box_list02 {
        padding: 1.5em;
    }
    .under .box_list.box_list03 {
        padding: 1.5em;
    }
    .under .box_list.box_link li {
        width: 100%;
        padding-left: 0;
    }
    .under .box_list.st1 {
        padding: 30px 10px;
    }
    .under .btn-group {
        align-items: center;
    }
    .under .btn-group .btn.style01 {
        margin-bottom: 20px;
        width: 100%;
    }
    .under .btn-group.col2 {
        justify-content: space-between;
    }
    .under .btn-group.col2 .btn.style01 {
        width: calc(50% - 5px);
    }
    .under .btn-group.col3 {
        margin-left: -5px;
        margin-right: -5px;
    }
    .under .btn-group.col3 .btn.style01 {
        margin-left: 5px;
        margin-right: 5px;
        width: calc(50% - 10px);
    }
    .under .imgBox.rowImg .image_l,
    .under .imgBox.rowImg .image_r {
        float: none;
        width: auto;
        margin: 0 auto 20px;
        text-align: center;
        max-width: none;
        display: table;
    }
    .under .imgBox.rowImg .image_l:nth-child(n),
    .under .imgBox.rowImg .image_r:nth-child(n) {
        max-width: none;
    }
    .under .imgBox.rowImg .txt_l,
    .under .imgBox.rowImg .txt_r {
        float: none;
        width: auto;
    }
    .under .imgBox.rowImg.large .image_l,
    .under .imgBox.rowImg.large .image_r {
        max-width: none;
    }
    .under .imgBox.rowImg.large .txt_l,
    .under .imgBox.rowImg.large .txt_r {
        width: auto;
    }
    .under .imgBox.colImg .list {
        align-items: center;
        justify-content: center;
    }
    .under .imgBox.colImg .item:not(:last-of-type) {
        margin-bottom: 30px;
    }
    .under .imgBox.colImg .item picture {
        margin-bottom: 10px;
    }
    .under .imgBox.colImg .text {
        font-size: 14px;
    }
    .under .imgBox.colImg2 .list,
    .under .imgBox.colImg3 .list {
        flex-flow: column;
        align-items: center;
        justify-content: center;
    }
    .under .imgBox.colImg2 .item,
    .under .imgBox.colImg3 .item {
        width: 100%;
        max-width: 550px;
    }
    .under .imgBox.colImg2 picture,
    .under .imgBox.colImg3 picture {
        height: auto;
        margin-bottom: 10px;
    }
    .under .imgBox.colImg2 img,
    .under .imgBox.colImg3 img {
        max-height: 100%;
    }
    .under .acf_block h3 {
        margin-bottom: 0;
    }
    .under .acf_block .text_h3 {
        margin: 25px 0 0;
    }
    .under .acf_block .text_h4 {
        margin: 20px 0 0;
    }
    .under .acf_block .text_h5 {
        margin: 15px 0 0;
    }
    @supports (-webkit-touch-callout: none) {
        .under .clinic_tbl02 {
            /* Specific to iOS devices */
        }
        .under .clinic_tbl02 td {
            border-top-width: 0;
        }
    }
    @media not all and (min-resolution: 0.001dpcm) {
        @supports (-webkit-appearance: none) {
            .under .clinic_tbl02 {
                /* Safari */
            }
            .under .clinic_tbl02 td {
                border-top-width: 0;
            }
        }
    }
    .under .clinic_tbl02 th:first-child {
        width: 200px;
    }
    .under table.rollTable {
        width: 768px;
    }
    .under table.rollTable.sm {
        width: 1000px;
    }
    .under table.tbl_style01 th {
        font-size: 16px;
        min-width: 120px;
    }
    .under table.tbl_style01 td {
        padding-left: 15px;
    }
    @supports (-webkit-touch-callout: none) {
        .under table.tbl_style01 {
            /* Specific to iOS devices */
        }
        .under table.tbl_style01 tr:last-child td {
            border-bottom-width: 1.4px;
        }
    }
    @media not all and (min-resolution: 0.001dpcm) {
        @supports (-webkit-appearance: none) {
            .under table.tbl_style01 {
                /* Safari */
            }
            .under table.tbl_style01 tr:last-child td {
                border-bottom-width: 1.4px;
            }
        }
    }
    .under table.resTable {
        display: block;
    }
    .under table.resTable tbody,
    .under table.resTable tr,
    .under table.resTable th,
    .under table.resTable td {
        display: block;
    }
    .under table.resTable td:not(:last-child) {
        border-bottom: 0;
    }
    .under table.resTable.tbl_style01.colHead tr th {
        border: 1px solid var(--main-color);
        border-bottom: none;
    }
    .under table.resTable.tbl_style01.colHead tr:not(:first-child) th {
        border-top: none;
    }
    .under table.resTable.tbl_style02.colHead th {
        border-bottom: none;
    }
    .under table.resTable.tbl_style02.colHead tr:not(:last-child) td {
        border-bottom: none;
    }
    .under .tbl_note {
        display: block;
    }
    .under ul.list01 li {
        font-size: 14px;
    }
    .under ul.list01 li::before {
        top: 0.7em;
    }
    .under ul.list01.mcol-2 li {
        width: 100%;
        padding-bottom: 9px;
        padding-right: 0;
    }
    .under ul.list03 li,
    .under ul.list02 li {
        width: 100%;
    }
    .under ul.list02 li::before {
        top: 7px;
    }
    .under .fullWidth {
        min-height: 47vw;
    }
    .under .doctor_box {
        padding: 0vw;
    }
    .under .doctor_box .doctor_name {
        bottom: 5vw;
        right: 3.5vw;
        font-size: 4vw;
        padding: 3vw 2vw;
    }
    .under .ud_map {
        height: 290px;
    }
    .under .topic_path {
        font-size: 14px;
    }
    .under .topic_path span {
        top: -1px;
    }
}

@media only screen and (max-width: 425px) {
    .under .under .box_list02 .stroke {
        top: 9px;
        bottom: 9px;
        left: 9px;
        right: 9px;
    }
}

@media only screen and (max-width: 375px) {
    .under .imgBox.colImg2 .item,
    .under .imgBox.colImg3 .item {
        width: 100%;
    }
}

@media only screen and (max-width: 768px) {
    .under .uscroll {
        overflow-x: auto;
    }
}

@media only screen and (max-width: 768px) {
    .under .flow_box {
        --size-w-point: 120px;
    }
    .under .flow_box .point>span {
        font-size: 22px;
    }
    .under .flow_box .point>span .num {
        margin-left: 5px;
    }
    .under .flow_box .content {
        padding: 30px 30px;
    }
}

@media only screen and (max-width: 375px) {
    .under .flow_box {
        --size-w-point: 85px;
    }
    .under .flow_box .point>span {
        font-size: 16px;
    }
    .under .flow_box .content {
        padding-left: 15px;
        padding-right: 15px;
        width: calc(100% - var(--size-w-point) - 15px);
    }
}

@media only screen and (max-width: 768px) {
    .under .faq_box {
        font-size: 8px;
    }
    .under .faq_box .faq_tl {
        font-size: 16px;
    }
    .under .faq_box .title {
        padding-top: 15px;
        padding-bottom: 15px;
        padding-left: 20px;
        padding-right: 60px;
    }
    .under .faq_box .plus {
        right: 20px;
    }
    .under .faq_box .faq_content {
        padding: 24px 30px 23px 65px;
    }
    .under .faq_box .faq_content::before {
        left: 22px;
        top: 1.1em;
    }
}

@media only screen and (max-width: 768px) {
    .under .blog_post_button {
        margin-top: 50px;
    }
    .under .clinic_tbl01 th {
        width: 32%;
        text-align: left;
    }
}

@media only screen and (max-width: 425px) {
    .under .access_box_img01 .block:nth-child(even) .big,
    .under .access_box_img02 .block:nth-child(even) .big {
        order: 0;
    }
    .under .access_box_img01 .block .big,
    .under .access_box_img01 .block .small,
    .under .access_box_img02 .block .big,
    .under .access_box_img02 .block .small {
        width: 100%;
    }
}


/*# sourceMappingURL=under_sp.css.map */