@media only screen and (max-width: 992px) {
  .idx08 {
    padding: 60px 0;
  }
  .idx08 h3 {
    margin-left: auto;
    margin-right: auto;
  }
  .idx08 h3::before {
    font-size: min(0.9375vw, 6px);
    top: 100%;
    left: -13vw;
  }
  .idx08 .desc {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
  }
  .idx08 .doctor_box {
    max-width: 350px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
  .idx08 .idx_box {
    flex-direction: column-reverse;
  }
  .idx08 .idx_box picture {
    position: relative;
    max-width: 350px;
    margin-left: auto;
    margin-right: auto;
    -webkit-mask-image: linear-gradient(to bottom, rgb(0, 0, 0) 73%, rgba(0, 0, 0, 0) 96%);
    mask-image: linear-gradient(to bottom, rgb(0, 0, 0) 73%, rgba(0, 0, 0, 0) 96%);
  }
  .idx08 .btn-group {
    justify-content: center;
    --size-mg: 10px;
  }
}
@media only screen and (max-width: 768px) {
  .home_page .key {
    --height: calc(100vh - 60px);
    --max-height: 125vw;
    --min-height: 320px;
    font-size: 8px;
  }
  .home_page .key .key_text .item {
    padding: 20px;
    align-items: flex-end;
    justify-content: center;
  }
  .home_page .key .key_text .item::before {
    width: 100%;
  }
  .home_page .key .key_text .catch {
    -webkit-filter: drop-shadow(0 0 0.75em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 0.75em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 2.5em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 2.5em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 5em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 7.5em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 7.5em rgba(244, 244, 244, 0.8));
    filter: drop-shadow(0 0 0.75em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 0.75em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 2.5em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 2.5em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 5em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 7.5em rgba(244, 244, 244, 0.8)) drop-shadow(0 0 7.5em rgba(244, 244, 244, 0.8));
  }
  .home_page .key .key_text h2,
  .home_page .key .key_text p {
    text-align: center;
  }
}
@media only screen and (max-width: 640px) {
  .home_page .key {
    font-size: 1.3vmin;
  }
}
@media only screen and (max-width: 768px) and (orientation: landscape) {
  .home_page .key {
    font-size: 1.3vmin;
    --height: 56vw;
  }
  .home_page .key .catch {
    padding-bottom: 0;
  }
  .home_page .key .s1::before {
    background-position: left center;
    background-image: url(../images/idx_mv01.jpg);
  }
  .home_page .key .slick-initialized .s2::before {
    background-image: url(../images/idx_mv02.jpg);
  }
  .home_page .key .slick-initialized .s3::before {
    background-position: right center;
    background-image: url(../images/idx_mv03.jpg);
  }
}
@media only screen and (max-width: 768px) and (orientation: portrait) {
  .home_page .key .catch {
    padding-bottom: min(15%, 80px);
  }
  .home_page .key .s1::before {
    background-image: url(../images/idx_mv01_sp.jpg);
  }
  .home_page .key .slick-initialized .s2::before {
    background-image: url(../images/idx_mv02_sp.jpg);
  }
  .home_page .key .slick-initialized .s3::before {
    background-image: url(../images/idx_mv03_sp.jpg);
  }
}
@media only screen and (max-width: 768px) {
  .home_page h3 {
    margin-bottom: 30px;
    font-size: calc(var(--ttl_size) - 2px);
  }
  .home_page h3 .en {
    font-size: clamp(60px, 14vw, 80px);
  }
  .home_page h3 .jp {
    margin-top: -2em;
  }
  .home_page h3 .jp > span:not(.br_auto) {
    font-size: 28px;
  }
}
@media only screen and (max-width: 768px) {
  .idx01 {
    padding: 60px 20px 30px;
    background-image: url("../images/idx01_bg_sp.jpg");
    background-color: #fdf7f7;
  }
  .idx01 h3 {
    font-size: 20px;
  }
  .idx01 h3 .en {
    font-size: 12px;
  }
  .idx01 .box {
    max-width: 540px;
    border-radius: 6px;
    margin: 0 auto;
  }
  .idx01 .ttl,
  .idx01 .news {
    padding: min(4.65vw, 20px) 20px;
  }
  .idx01 .news {
    padding-top: min(4.65vw, 40px);
    padding-bottom: min(4.65vw, 40px);
  }
  .idx01 .content ul {
    margin-bottom: 10px;
  }
  .idx01 .content li a {
    font-size: var(--txt_size);
    --w: 6.5em;
  }
  .idx01 .content .btn-group {
    justify-content: center;
  }
  .idx01 .content .btn-group .btn-news a {
    color: var(--main-color);
  }
  .idx01 .content .btn-group .btn-news a::before, .idx01 .content .btn-group .btn-news a::after {
    font-size: 14.5px;
  }
  .idx01 .content .btn-group .btn-news a::before {
    background-color: #fff;
  }
  .idx01 .content .btn-group .btn-news a::after {
    background-color: var(--main-color);
  }
  .idx02 {
    padding: max(15vw, 60px) 0 60px;
  }
  .idx02 h3 .en {
    font-size: clamp(45px, 14vw, 80px);
  }
  .idx02 h3::before {
    font-size: clamp(2.52px, 0.62vw, 5px);
    left: 0;
    right: 0;
    bottom: 100%;
    margin: 0 auto;
  }
  .idx02 .idx_list {
    margin-bottom: 40px;
    font-size: min(1vw, 8px);
    gap: 2.8em 4em;
  }
  .idx02 .idx_list .item {
    width: calc((100% - 8em) / 3);
  }
  .idx02 .idx_list .item .ic-arr {
    font-size: clamp(5.5px, 1em, 8px);
    bottom: 1.8em;
  }
  .idx02 .idx_bnr {
    font-size: 8.75px;
  }
  .idx02 .idx_bnr::after {
    font-size: clamp(5px, 1vw, 1em);
    right: -2em;
  }
  .idx02 .idx_bnr .content {
    padding: 2.5em 4em;
  }
  .idx02 .idx_bnr .content .txt02 {
    line-height: 1.5;
  }
  .idx03 {
    padding: max(15vw, 60px) 0 60px;
  }
  .idx03 h3::before {
    font-size: clamp(2.52px, 0.67vw, 5px);
    bottom: 100%;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .idx03 .idx_list {
    font-size: min(1.8vw, 8px);
    margin-bottom: 50px;
  }
  .idx03 .idx_list .item .ttl {
    padding-left: 0.3em;
    padding-right: 0.3em;
  }
  .idx03 .idx_list .desc {
    padding: 2.8em 2em 5.7em;
    margin-top: -1em;
  }
  .idx03 .idx_list .ic-arr {
    right: 2em;
  }
  .idx03 .idx_box {
    font-size: 7.25px;
  }
  .idx03 .idx_box .box {
    margin: 0 auto;
    max-width: 540px;
  }
  .idx03 .idx_box .box:not(:last-child) {
    margin-bottom: 50px;
  }
  .idx03 .idx_box .box .ttl {
    text-align: center;
  }
  .idx03 .idx_box .box .ttl .en {
    font-size: 14px;
  }
  .idx03 .idx_box .box picture {
    margin-bottom: 20px;
  }
  .idx03 .idx_box .box .desc {
    margin-bottom: 20px;
  }
  .idx03 .idx_box .box .btn-group {
    --size-mg: 10px;
  }
  .idx03 .idx_box .box .btn-group .btn {
    margin-left: auto;
    margin-right: auto;
  }
  .idx04 {
    padding: 60px 0;
    background-image: url("../images/idx04_bg_sp.jpg");
  }
  .idx04 .img-group {
    margin-bottom: 20px;
  }
  .idx04 .img-lg img {
    border-radius: var(--border-radius);
  }
  .idx04 .img-sm {
    width: 60%;
    margin-left: auto;
    margin-right: 5%;
    margin-top: -15%;
  }
  .idx04 .desc {
    margin-bottom: 20px;
  }
  .idx05 {
    padding: 60px 0;
  }
  .idx05 .content {
    height: min(120vw, 520px);
  }
  .idx05 .idx_list {
    justify-content: center;
    font-size: min(0.9vw, 7px);
    margin-bottom: 30px;
  }
  .idx05 .idx_list .item {
    width: 42%;
  }
  .idx05 .idx_list .item .ttl {
    font-size: min(3.125vw, 20px);
    top: 0.25em;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
    min-height: 1em;
  }
  .idx05 .idx_more {
    font-size: min(2vw, 8.75px);
    bottom: -60px;
  }
  .idx06 {
    padding: max(15vw, 80px) 0 60px;
  }
  .idx06 h3 .en {
    font-size: clamp(45px, 14vw, 80px);
  }
  .idx06 h3::before {
    font-size: clamp(2.5px, 0.65vw, 5px);
    content: "";
    position: absolute;
    width: 13.8em;
    height: 17.6em;
    bottom: 100%;
    right: 0;
    left: 0;
    margin: 0 auto;
    background: url("../images/idx06_ic01.png") no-repeat center/cover;
  }
  .idx06 .idx_list .item {
    padding: 9.375vw 6.25vw;
  }
  .idx06 .idx_list .item01::before {
    font-size: min(1.25vw, 8px);
  }
  .idx06 .idx_list .item .ttl {
    font-size: min(6.25vw, 26px);
  }
  .idx06 .idx_list .item .ttl .en {
    font-size: 14px;
  }
  .idx06 .idx_list .item .desc {
    margin-bottom: 30px;
  }
  .idx07 {
    padding: 60px 0;
  }
  .idx07 .idx_list {
    font-size: clamp(6px, 0.9375vw, 8px);
    margin-bottom: 30px;
  }
  .idx07 .idx_list .item {
    margin-left: auto;
    margin-right: auto;
  }
  .idx07 .idx_list .item:not(:last-child) {
    margin-bottom: 30px;
  }
  .idx07 .idx_list .item .ttl {
    font-size: clamp(22px, 3.125vw, 24px);
  }
  .idx07 .idx_list .item .ttl .en {
    font-size: 14px;
  }
  .idx08 h3 .en {
    font-size: clamp(52px, 14vw, 80px);
  }
  .idx08 .doctor_box {
    margin-bottom: 20px;
  }
  .idx08 .doctor_box .pos {
    font-size: 18px;
  }
  .idx08 .doctor_box .name {
    font-size: 30px;
  }
  .idx08 .desc {
    margin-bottom: 30px;
  }
  .idx09 {
    font-size: 4px;
  }
  .idx09 .txt {
    padding: 9.375vw 6.25vw;
    background-image: url("../images/idx09_content_bg_sp.jpg");
  }
  .idx09 .idx_info {
    margin-bottom: 25px;
  }
  .idx09 .idx_info dl {
    --w: 6.5em;
  }
  .idx09 .idx_info dl:first-child dt,
  .idx09 .idx_info dl:first-child dd {
    padding-top: 0;
  }
  .idx09 .idx_info dl dt,
  .idx09 .idx_info dl dd {
    padding: 1.2em 0.5em;
  }
  .idx09 .idx_info dl dd {
    padding-left: 1em;
  }
  .idx09 .idx_tel {
    font-size: min(1.875vw, 8.75px);
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 25px;
  }
  .idx09 .time_sheet {
    font-size: min(1.85vw, 10px);
    padding: 3em 2em;
    margin-bottom: 25px;
  }
  .idx09 .time_sheet table th:first-child,
  .idx09 .time_sheet table td:first-child {
    padding-right: 0.2em;
  }
  .idx09 .time_sheet table th:last-child,
  .idx09 .time_sheet table td:last-child {
    text-align: center;
    padding-left: 0.2em;
  }
}
@media only screen and (max-width: 640px) {
  .idx03 .idx_list {
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px 10px;
  }
  .idx03 .idx_list .item {
    width: 100%;
  }
  .idx03 .idx_list .item .txt {
    display: flex;
  }
  .idx03 .idx_list .item .txt_header {
    flex-shrink: 0;
    width: 48%;
    display: flex;
    flex-direction: column;
  }
  .idx03 .idx_list .item .txt-content {
    width: 62%;
  }
  .idx03 .idx_list .item picture {
    flex-grow: 1;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .idx03 .idx_list .item picture img {
    height: 100%;
    width: auto;
    object-fit: cover;
  }
  .idx03 .idx_list .item .ttl {
    flex-shrink: 0;
    min-height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.5em 0.3em;
  }
  .idx03 .idx_list .item .ttl::after {
    content: "";
    position: absolute;
    width: 9px;
    height: 10px;
    top: 0px;
    bottom: 0px;
    left: calc(100% - 1px);
    margin: auto 0;
    clip-path: polygon(100% 50%, 0 0, 0 100%);
    background-color: #E99CAF;
  }
  .idx03 .idx_list .item .desc {
    padding-bottom: 3em;
  }
  .idx03 .idx_list .item .ic-arr {
    bottom: 1.2em;
  }
  .idx03 .idx_list .item01 picture img {
    object-position: right center;
  }
  .idx07 .idx_list .item .ttl {
    text-align: center;
  }
}
@media only screen and (max-width: 480px) {
  .home_page h3::after {
    width: 220px;
    height: 8px;
  }
  .idx02 h3::before {
    font-size: 3.25px;
  }
  .idx02 .idx_list {
    font-size: min(1.5vw, 7px);
    gap: 15px;
    margin-bottom: 30px;
  }
  .idx02 .idx_list .item {
    width: calc(50% - 7.5px);
  }
  .idx02 .idx_bnr {
    font-size: 7px;
  }
  .idx02 .idx_bnr .content {
    padding: 20px 15px;
  }
  .idx03 {
    padding-top: 80px;
  }
  .idx03 h3::before {
    font-size: 3.25px;
  }
  .idx03 .idx_list {
    margin-bottom: 30px;
  }
  .idx03 .idx_box .box:not(:last-child) {
    margin-bottom: 30px;
  }
  .idx03 .idx_box .box .btn-group {
    --size-mg: 5px;
  }
  .idx04 .btn-group {
    --size-mg: 5px;
  }
  .idx05 .idx_list .txt::before {
    font-size: 16em;
  }
  .idx06 h3::before {
    font-size: 3.25px;
  }
  .idx06 .idx_list .item01::after {
    display: none;
  }
  .idx07 .idx_list .item picture::before {
    font-size: 14em;
  }
  .idx08 .btn-group {
    --size-mg: 5px;
  }
  .idx09 .time_sheet {
    padding-left: 5px;
    padding-right: 5px;
  }
}
@media only screen and (max-width: 375px) {
  .idx08 h3::before {
    left: -5vw;
  }
  .idx08 h3 .jp {
    margin-top: -1.8em;
  }
}
@media only screen and (max-width: 360px) {
  .idx01 .content .btn-group {
    font-size: 7.5px;
  }
  .idx09 .time_sheet {
    font-size: 1.82vw;
  }
  .time_sheet .note {
    font-size: 11px;
    margin-left: 0;
  }
}

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