@media only screen and (max-width:768px) {
    .under #mainContent {
        padding-bottom: 50px
    }

    .under .key {
        margin-top: 0;
        height: 300px
    }

    .under .key .key_text {
        padding: 10px
    }

    .under .key .key_text h2 {
        font-size: var(--ttl_size)
    }

    .under {
        --h3: 25px;
        --h4: 20px
    }

    .under h3 {
        font-size: calc(var(--ttl_size) - 2px);
        margin-bottom: 20px
    }

    .under h3:before {
        width: 40px;
        height: 26px
    }

    .under h4 {
        font-size: calc(var(--ttl_size) - 4px);
        padding: 5px 15px 7px;
        margin-bottom: 15px
    }

    .under h5 {
        margin-bottom: 15px;
        font-size: calc(var(--ttl_size) - 6px)
    }

    .under h6 {
        margin-bottom: 10px;
        font-size: calc(var(--ttl_size) - 8px)
    }
}

@media only screen and (max-width:768px) {

    .under .entry>section,
    .under .inner>section {
        margin-top: 50px
    }

    .under .entry>section:first-child,
    .under .inner>section:first-child {
        margin-top: 60px
    }

    .under .toc_list {
        padding: 20px 4% 20px;
        background-size: 768px auto;
        background-position: right center
    }

    .under .toc_list li {
        width: 100%;
        max-width: 100%
    }

    .under .toc_list li a {
        padding-top: 5px;
        padding-bottom: 5px;
        padding-left: 1.5em
    }

    .under .toc_list li a:before {
        width: 12px;
        height: 12px;
        top: 1.05em;
        width: 11px;
        height: 10px
    }

    .under .imgBox.rowImg .image_l,
    .under .imgBox.rowImg .image_r {
        display: table;
        float: none;
        width: auto;
        margin: 0 auto 20px;
        text-align: center;
        max-width: none
    }

    .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 .item:not(:last-of-type) {
        margin-bottom: 30px
    }

    .under .imgBox.colImg figure {
        margin-bottom: 15px
    }

    .under .imgBox.colImg .text {
        font-size: 14px
    }

    .under .imgBox.colImg2 .item,
    .under .imgBox.colImg3 .item {
        width: 100%
    }

    .under .imgBox.colImg2 picture,
    .under .imgBox.colImg3 picture {
        height: auto;
        min-height: 200px
    }

    .under .imgBox.colImg2 img,
    .under .imgBox.colImg3 img {
        max-height: 500px
    }

    .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 {}

        .under .clinic_tbl02 td {
            border-top-width: 0
        }
    }

    @media not all and (min-resolution:0.001dpcm) {
        @supports (-webkit-appearance:none) {
            .under .clinic_tbl02 {}

            .under .clinic_tbl02 td {
                border-top-width: 0
            }
        }
    }

    .under .clinic_tbl02 th:first-child {
        width: 200px
    }

    .under table.rollTable {
        width: 768px
    }

    .under table.tbl_style01 td,
    .under table.tbl_style01 th {
        line-height: 2
    }

    @supports (-webkit-touch-callout:none) {
        .under table.tbl_style01 {}

        .under table.tbl_style01 tr:last-child td,
        .under table.tbl_style01 tr:last-child th {
            border-bottom-width: 1.4px
        }
    }

    @media not all and (min-resolution:0.001dpcm) {
        @supports (-webkit-appearance:none) {
            .under table.tbl_style01 {}

            .under table.tbl_style01 tr:last-child td,
            .under table.tbl_style01 tr:last-child th {
                border-bottom-width: 1.4px
            }
        }
    }

    .under table.resTable {
        display: block
    }

    .under table.resTable tbody,
    .under table.resTable td,
    .under table.resTable th,
    .under table.resTable tr {
        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.mcol-2 li {
        width: 100%
    }

    .under ul.list01 {
        padding: 25px 5%
    }

    .under ul.list01 li:before {
        top: 0.7em
    }

    .under .topic_path {
        font-size: 14px
    }

    .under .ud_catch {
        border-radius: 10px;
        min-height: 80px;
        margin: 30px auto
    }

    .under .ud_catch:after {
        inset: 5px
    }

    .under .ud_catch p {
        font-size: 18px
    }

    .under .doctor_box {
        padding: 0vw
    }

    .under .doctor_box .doctor_name {
        bottom: 3vw;
        right: 3vw;
        font-size: 3vw;
        padding: 3vw 2vw
    }

    .under .ud_flow {
        padding-top: 35px
    }

    .under .ud_flow .flow__it {
        margin-top: 66px
    }

    .under .ud_flow .flow__it:first-child {
        margin-top: 0
    }

    .under .ud_flow .flow_cont {
        padding: 25px 5%
    }

    .under .ud_feature .feature_it {
        padding: 35px 5%
    }

    .under .ud_feature .feature_num {
        font-size: 12px
    }

    .under .exp li .year {
        width: 6em
    }

    .under .exp li .txt {
        width: calc(100% - 6em)
    }
}

@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 .blog_post_button {
        margin-top: 50px
    }

    .under .clinic_tbl01 th {
        width: 150px;
        text-align: left
    }
}

@media only screen and (max-width:430px) {

    .under table.tbl_style01 td,
    .under table.tbl_style01 th {
        padding: 0.625rem 0.4rem
    }

    .under .clinic_tbl01 th {
        width: 110px;
        text-align: left
    }

    .under .clinic_tbl01 td,
    .under .clinic_tbl01 th {
        letter-spacing: 0
    }

    .under .sitemap>ul>li li a {
        padding-left: 40px
    }

    .under .sitemap>ul>li li a:before {
        left: 15px
    }
}

@media only screen and (max-width:425px) {

    .under .access_box_img01 .block:nth-child(2n) .big,
    .under .access_box_img02 .block:nth-child(2n) .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%
    }
}

@media only screen and (max-width:768px) {
    .under.page-interview {
        counter-reset: count
    }

    .under.page-interview .key {
        background-image: url(../images/interview_key_bg_sp.jpg);
        height: 450px
    }

    .under.page-interview .key .key_text {
        padding: 10px 10px 5vh;
        flex-direction: column;
        justify-content: flex-end;
        align-items: center
    }

    .under.page-interview .key .catch {
        font-size: min(8px, 1.7vw);
        text-align: center;
        margin-left: auto;
        margin-right: auto
    }

    .under.page-interview .key .catch .idx_en,
    .under.page-interview .key .catch h2 {
        margin-left: auto;
        margin-right: auto
    }

    .under.page-interview .key .catch h2,
    .under.page-interview .key .catch p {
        text-align: center
    }

    .interview_catch {
        margin-top: 0;
        margin-bottom: 50px
    }

    .interview_catch p {
        font-size: 18px;
        line-height: 1.4
    }

    .interview_content,
    .interview_img {
        display: table;
        margin-left: auto;
        margin-right: auto;
        width: 100%
    }

    .interview_img {
        margin-bottom: 35px;
        width: auto
    }

    .interview_img:before {
        content: counter(count, decimal-leading-zero);
        counter-increment: count;
        font-size: min(3.3333333333em, 12vw)
    }

    .interview_box {
        margin-bottom: 50px
    }

    .interview_box.box_left .interview_content {
        margin-left: auto
    }

    .interview_box.box_right .interview_content {
        margin-right: auto
    }
}

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