@media only screen and (max-width: 768px) {
  .under #mainContent {
    padding-bottom: 50px;
    max-width: calc(100% - 80px);
    margin-left: auto;
    margin-right: auto;
  }
  .under #mainContent::after {
    right: 0;
  }
  .under #mainContent::before {
    left: 0;
  }
  .under .key {
    max-width: calc(100% - 80px);
    margin-top: 0;
    height: 300px;
    max-height: 300px;
    min-height: 300px;
  }
  .under .key .key_text {
    background-repeat: no-repeat;
    background-image: url(../images/ud_mv_sp.jpg);
    background-position: center;
  }
  .under .key .key_text h2 {
    font-size: var(--ttl_size);
  }
  .under .key .key_text h2 span {
    display: block;
  }
  .under {
    --h3: 25px;
    --h4: 20px;
  }
  .under h3 {
    font-size: calc(var(--ttl_size) - 2px);
  }
  .under h4 {
    font-size: calc(var(--ttl_size) - 4px);
  }
  .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 .inner > section,
  .under .entry > section {
    margin-top: 40px;
  }
  .under .inner > section:first-child,
  .under .entry > section:first-child {
    margin-top: 30px;
  }
  .under .faq_box .accBtn .ttl {
    line-height: 1.3;
    font-size: 20px;
  }
  .under.page-reason .section.secH4 .point .num {
    margin-top: -10px;
  }
  .under .ud_catch {
    padding: 20px;
    letter-spacing: 0em;
    font-size: min(4.8vw, 18px);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60px;
  }
  .under #toc_container {
    margin-top: 40px;
  }
  .under .toc_list {
    padding: 20px;
  }
  .under .toc_list li {
    width: 100%;
    max-width: 100%;
    margin: 0;
  }
  .under .toc_list li a {
    margin-bottom: 20px;
    font-size: 14px;
  }
  .under .toc_list li a::before {
    width: 18px;
    height: 18px;
    background-size: contain;
    top: 4px;
  }
  .under .toc_list li:last-child a {
    margin-bottom: 0;
  }
  .under .toc_list.style2 li:nth-child(2n) {
    padding-left: 0;
    padding-right: 0;
  }
  .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 td {
      border-top-width: 0;
    }
  }
  @media not all and (min-resolution: 0.001dpcm) {
    @supports (-webkit-appearance: none) {
      .under .clinic_tbl02 td {
        border-top-width: 0;
      }
    }
  }
  .under .clinic_tbl02 th:first-child {
    width: 200px;
  }
  .under table.table_clinic th {
    width: 33% !important;
  }
  .under table.rollTable {
    width: 768px;
  }
  .under table.tbl_style01 th {
    letter-spacing: -0.04rem;
    line-height: 1.4;
    padding-left: 0;
    padding-right: 0;
  }
  .under table.tbl_style01 td {
    letter-spacing: 0;
  }
  @supports (-webkit-touch-callout: none) {
    .under table.tbl_style01 tr:last-child th,
    .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 tr:last-child th,
      .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 {
    padding: 20px;
  }
  .under ul.list01 li {
    font-size: 14px;
  }
  .under ul.list01 li:last-child {
    padding-bottom: 0;
  }
  .under ul.list01.mcol-2 {
    padding: 20px;
  }
  .under ul.list01.mcol-2 li {
    width: 100%;
    padding-bottom: 9px;
    padding-right: 0;
  }
  .under ul.list01.mcol-2 li:last-child {
    padding-bottom: 0;
  }
  .under .doctor_box {
    padding: 0vw;
  }
  .under .doctor_box .doctor_name {
    bottom: 5vw;
    right: 3.5vw;
    font-size: 4vw;
    padding: 3vw 2vw;
  }
  .under .doctor_box2 {
    padding: 15px;
  }
  .under .doctor_box2 .content {
    width: 100%;
  }
  .under.page-reason .section.secH4 {
    padding: 30px;
  }
  .under.page-reason .section.secH4 h4 {
    padding-bottom: 0;
  }
  .under .step-container {
    padding: 30px 0;
    gap: 30px;
  }
  .under .step-container .point {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
    font-size: 16px;
    padding-top: 28px;
    height: 99px;
    width: 99px;
  }
  .under .step-container .point .num {
    font-size: 58px;
  }
  .under .step-item {
    padding: 20px 20px 30px;
    display: block;
  }
  .under .step-item .step-title {
    text-align: center;
    width: auto;
    font-size: calc(var(--ttl_size) - 4px);
  }
  .under .step-item .step-text p {
    text-align: left;
  }
  .under .btn-wrapper {
    flex-direction: column;
    gap: 15px;
  }
  .under .btn-web {
    margin-left: 0;
  }
  .under .btn-web a {
    width: 255px;
  }
  .under .btn-web a span {
    font-size: 16px;
    letter-spacing: 0;
  }
  .under .btn-line {
    margin-left: 0;
  }
  .under .btn-line a {
    width: 255px;
  }
  .under .btn-line a span {
    font-size: 16px;
    letter-spacing: 0;
  }
}
@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: 480px) {
  .under .key {
    max-width: calc(100% - 20px);
  }
  .under #mainContent {
    max-width: calc(100% - 20px);
  }
}
@media only screen and (max-width: 430px) {
  .under .clinic_tbl01 th {
    width: 120px;
    text-align: left;
  }
  .under .sitemap > ul > li li a {
    padding-left: 40px;
  }
  .under .sitemap > ul > li li a:before {
    left: 15px;
  }
}
@media only screen and (max-width: 374px) {
  .under .doctor_box2 .name {
    font-size: 1.4em;
  }
  .under .ud_catch {
    padding: 13px;
  }
  .under .ud_catch::after {
    inset: 4px;
  }
  .under table.tbl_style01 th {
    width: 50%;
  }
}
@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%;
  }
}
/*INTERVIEW PAGE*/
@media only screen and (max-width: 768px) {
  .under.page-interview {
    counter-reset: count;
  }
  .under.page-interview .key {
    height: 450px;
    max-height: 450px;
    background-image: url(../images/key_interview_sp.jpg);
  }
  .under.page-interview .key::before {
    display: none;
  }
  .under.page-interview .key .inner {
    align-items: end;
    justify-content: center;
  }
  .under.page-interview .key .key_text {
    padding: 10px 10px 5vh;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
  }
  .under.page-interview .key .key_inter {
    background-color: rgba(255, 255, 255, 0.9);
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    margin-right: 4vw;
    margin-left: 4vw;
    margin-bottom: 6vw;
    padding: 4vw 3vw;
    position: relative;
  }
  .under.page-interview .key .key_inter::before {
    content: "";
    display: block;
    position: absolute;
    transition: all 0.3s;
    z-index: -1;
    inset: 5px;
    border: 1px solid #fff;
  }
  .under.page-interview .key .catch {
    font-size: min(0.625em, 3vw);
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    min-width: auto;
  }
  .under.page-interview .key .catch .idx_en,
  .under.page-interview .key .catch h2 {
    margin-left: auto;
    margin-right: auto;
    font-size: 26px;
  }
  .under.page-interview .key .catch .idx_en {
    font-size: 5em;
    margin-bottom: 0.2em;
  }
  .under.page-interview .key .catch p {
    margin-bottom: 0;
    padding-bottom: 0;
    font-size: 24px;
  }
  .under.page-interview .key .catch h2,
  .under.page-interview .key .catch p {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    letter-spacing: 0;
  }
  .under.page-interview .key .catch .name .en {
    font-size: 0.6em;
  }
  .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;
    max-width: 100%;
  }
  .interview_img {
    margin-bottom: 35px;
  }
  .interview_img::before {
    content: counter(count, decimal-leading-zero);
    counter-increment: count;
  }
  .interview_img:before {
    left: 20px;
    font-size: 70px;
  }
  .interview_box {
    margin-bottom: 50px;
  }
  .interview_box.box_left .interview_content {
    margin-left: auto;
  }
  .interview_box.box_right .interview_content {
    margin-right: auto;
  }
}
@media only screen and (max-width: 360px) {
  .under.page-interview .key .key_inter {
    margin-right: 0vw;
    margin-left: 0vw;
    padding: 4vw 1vw;
  }
}