@media only screen and (max-width: 768px) {
  .under .key {
    min-height: 270px;
    height: 27.0625em;
    margin: 0 auto;
  }
  .under .key .logo {
    top: 3.5%;
  }
  .under .key .key_text {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 0 85px;
  }
  .under .key .key_text::before, .under .key .key_text:after {
    height: 26.875em;
  }
  .under .key .key_text .en {
    font-size: 22px;
  }
  .under .key .key_text .title_page {
    font-size: 26px;
  }
  .under .key .key_text .title_page::before {
    margin-bottom: 0;
    width: 0.55em;
    height: 0.55em;
  }
  .under .sitemap > ul > li li a:before {
    margin-top: 0;
  }
  .under .topic-path {
    padding-left: 0;
    padding-top: 5px;
  }
  .under .topic-path li {
    margin-bottom: 0.5em;
    margin-top: 0.5em;
    margin-right: 0.8em;
    padding-right: 0.8em;
  }
  .under .topic-path li::after {
    top: 0;
    height: calc(100% + 0.2em);
  }
  .under .topic-path li a {
    padding-left: 1.5em;
  }
  .under #mainContent {
    padding-bottom: 40px;
  }
  .under #mainContent:before {
    top: -80px;
    background-size: 105% auto;
  }
  .under #mainContent > .inner {
    min-height: 55vh;
  }
  .under #toc_container {
    position: relative;
    z-index: 2;
    margin-top: 25px;
  }
  .under #toc_container .toc_list li {
    width: 100% !important;
    max-width: 100%;
    margin-right: 0;
  }
  .under #toc_container .toc_list li a {
    padding: 10px 50px 10px 30px;
  }
  .under #toc_container .toc_list li a::after {
    right: 15px;
    width: 16px;
    height: 16px;
  }
  .under h2 {
    margin-top: 60px;
    font-size: 26px;
    padding-bottom: 7px;
    margin-bottom: 20px;
  }
  .under h3 {
    margin-top: 40px;
    margin-bottom: 15px;
    font-size: 24px;
    padding-left: 1em;
  }
  .under h4 {
    margin-top: 35px;
    margin-bottom: 10px;
    font-size: 22px;
    padding: 7px 14px;
  }
  .under h4:before {
    width: 17px;
    height: 7px;
    top: 12px;
  }
  .under h5 {
    margin-top: 35px;
    margin-bottom: 12px;
    font-size: 20px;
    padding-left: 1em;
  }
  .under h5::before {
    top: 0.3em;
  }
  .under h6 {
    margin-top: 25px;
    font-size: 18px;
  }
  .under .under_full_img {
    margin-top: 40px;
    min-height: 300px;
  }
  .under .under_full_img p.ttl {
    font-size: 20px;
  }
  .under .udr-fx-staff {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .under .udr-fx-staff .box-img {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-right: 0;
    text-align: center;
    max-width: 450px;
    margin: 0 auto 20px;
  }
  .under .udr-fx-staff .box-img img {
    height: 350px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: top;
       object-position: top;
    border-radius: 30px;
  }
  .under .udr-fx-staff .box-cnt {
    display: contents;
  }
  .under .udr-fx-staff .box-cnt h3 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-top: 0;
    width: 100%;
  }
  .under .udr-fx-staff .box-cnt .txt {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    margin-top: 20px;
  }
  .under .udr-fx-staff .box-cnt .udr-box-name {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
    margin-top: 30px;
  }
  .under .udr-fx-staff .box-cnt .udr-box-name .name {
    font-size: 20px;
  }
  .under .udr-fx-staff .box-cnt .udr-box-name .name .jp {
    font-size: 16px;
    top: 0;
  }
  .under .udr-w-slider {
    width: calc(100% + 20px);
    margin-left: -10px;
  }
  .under .udr-w-slider ul li {
    margin: 0 2vw;
  }
  .under .udr-w-slider ul li img {
    width: min(550px, 75vw);
  }
  .under .udr-w-slider .slick-arrow {
    width: min(40px, 20vw);
    height: min(40px, 20vw);
    bottom: 5em;
  }
  .under .udr-w-slider .slick-arrow.slick-prev {
    left: calc((100% - 75vw) / 2 - 2vw);
  }
  .under .udr-w-slider .slick-arrow.slick-next {
    right: calc((100% - 75vw) / 2 - 2vw);
  }
  .under .udr-w-slider .ttl {
    font-size: 16px;
  }
  .under .udr-w-slider .slick-dots {
    margin-top: 20px;
  }
  .under .udr-w-slider .slick-dots button {
    width: 30px;
    height: 3px;
  }
  .under .udr-w-slider .slick-dots li.slick-active button {
    width: 30px;
    height: 3px;
  }
}
@media only screen and (max-width: 768px) {
  .under .ud_ttl.button {
    margin-bottom: 0 !important;
  }
  .under .section {
    padding-top: 40px;
  }
  .under .section.section-pd04, .under .section.section-pd05, .under .section.section-pd06, .under .section.section-pd10, .under .section.section-pd11, .under .section.section-pd12, .under .section.section-pd13, .under .section.section-pd14, .under .section.section-pd15, .under .section.section-pd16 {
    padding-top: 40px;
  }
  .under .section.section-pd07, .under .section.section-pd08, .under .section.section-pd09 {
    padding-top: 0;
  }
  .under .box_decor {
    padding: 20px 0;
  }
  .under .box_list {
    padding: 20px;
    margin-bottom: 15px;
  }
  .under .box_list02 {
    padding: 1.5em;
  }
  .under .box_list.box_list03 {
    padding: 1.5em;
  }
  .under .box_list.box_list03 ul.list01 li {
    max-width: 100%;
  }
  .under .box_list.box_link .list01.mcol-2 {
    padding: 0;
  }
  .under .box_list.box_link li {
    padding-left: 0;
    margin-bottom: 0;
  }
  .under .box_list.box_link li:last-child {
    border-bottom: none;
  }
  .under .box_list.box_link li a {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .under .box_list.box_link li a::before {
    width: 18px;
    height: 18px;
  }
  .under .box_list.st1 {
    padding: 30px 10px;
  }
  .under .btn-group {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .under .btn-group .btn.style01 {
    margin-bottom: 10px;
    width: 100%;
  }
  .under .btn-group.col2 {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-left: -5px;
    margin-right: -5px;
  }
  .under .btn-group.col2 .btn.style01 {
    margin-left: 5px;
    margin-right: 5px;
    width: calc(50% - 10px);
  }
  .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 {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: 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 .item h4 {
    background-size: 100% 4px;
  }
  .under .imgBox.colImg .text {
    font-size: 14px;
  }
  .under .imgBox.colImg2 .list, .under .imgBox.colImg3 .list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .under .imgBox.colImg2 .item, .under .imgBox.colImg3 .item {
    max-width: 100%;
    width: 100%;
  }
  .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 .imgBox.colImg2 .item h4 {
    margin-top: 0;
    font-size: 16px;
    padding-bottom: 7px;
  }
  .under .imgBox.colImg2 .item .text.pd0 {
    padding: 0;
  }
  .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 (-webkit-min-device-pixel-ratio: 0), 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 {
    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 (-webkit-min-device-pixel-ratio: 0), 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;
    border-bottom: 1px solid #e3eaf2;
  }
  .under table.resTable tbody,
  .under table.resTable tr,
  .under table.resTable th,
  .under table.resTable td {
    display: block;
    border-bottom: 0;
  }
  .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;
    padding-left: 1.1em;
  }
  .under ul.list01 li:last-child {
    padding-bottom: 0;
  }
  .under ul.list01 li::before {
    top: 0.5em;
  }
  .under ul.list01 li.ttl {
    font-size: 20px;
    padding-bottom: 10px;
    margin-bottom: 15px;
  }
  .under ul.list01.mcol-2 li {
    width: 100% !important;
    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 .tbl-scroll {
    overflow-x: scroll;
  }
  .under .tbl-scroll table {
    min-width: 900px;
  }
  .under .flow_box .box {
    margin-bottom: 25px;
    z-index: 1;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .under .flow_box .box::before {
    top: 0;
    left: 32px;
  }
  .under .flow_box .box .point {
    font-size: 16px;
    width: 60px;
    height: 60px;
    margin-right: 15px;
  }
  .under .flow_box .box .point span {
    font-size: 18px;
  }
  .under .flow_box .box .box_inner:before {
    display: none;
  }
  .under .flow_box h4 {
    margin-bottom: 12px;
    font-size: 18px;
    width: 100%;
  }
  .under .flow_box .content p {
    font-size: 14px;
  }
  .under .faq_box .title {
    padding: 12px 30px 12px 55px;
  }
  .under .faq_box .title .faq_tl {
    padding-left: 0;
  }
  .under .faq_box .title .faq_tl:before {
    width: 35px;
    height: 35px;
    left: 10px;
  }
  .under .faq_box .faq_num {
    width: 40px;
    font-size: 24px !important;
  }
  .under .faq_box .title::before {
    width: 15px;
    right: 10px;
  }
  .under .faq_box .title.rotate:before {
    width: 15px;
  }
  .under .faq_box .faq_content {
    padding: 0px 20px 16px 55px;
    margin: 0;
  }
  .under .faq_box .faq_content:before {
    width: 35px;
    height: 35px;
    left: 10px;
  }
  .under .faq_box h4 {
    padding-right: 33px;
    width: calc(100% - 40px);
    font-size: 18px;
  }
  .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;
  }
  .under .ud_ttl {
    font-size: 18px;
  }
  .under #mainContent .tbl-time tr th:not(:first-child),
  .under #mainContent .tbl-time tr td:not(:first-child) {
    position: relative;
    right: 0;
  }
  .under #mainContent .tbl-time tr td:not(:first-child) {
    font-size: 0.8em;
  }
}
@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: 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 {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            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%;
  }
}