@charset "utf-8";
@media screen and (max-width: 1024px) {
  .fv__inner {
    padding-left: 30px;
  }
}
@media screen and (max-width: 768px) {
  .for-pc {
    display: none;
  }
  .gnav {
    display: none;
  }
  .js-hamburger {
    display: flex;
  }
  .inner {
    padding: 0 20px;
  }
  .header {
    border-top: 5px solid var(--color-primary);
  }
  .header__inner {
    padding: 0 20px;
  }
  .fv__inner {
    justify-content: center;
  }
  .fv__title {
    text-align: center;
  }
  .fv__lead {
    text-align: center;
  }
  .fv__text-image {
    justify-content: center;
  }
  .about__intro {
    max-width: 80%;
    margin: 0 auto;
  }
  .about__intro__text {
    flex-direction: column;
  }
  .about__point__wrap {
    display: block;
  }
  .about__point__card {
    width: 80%;
    margin: 0 auto 80px;
  }
  .about__point__card img {
    display: block;
    max-width: 400px;
    width: 100%;
    margin: 0 auto;
  }
  .clinic__image {
    flex: 0 0 300px;
  }
  .access__content {
    flex-direction: column;
    justify-content: center;
  }
  .access__time {
    width: fit-content;
    margin: 0 auto;
  }
  .access__time th {
    padding: 0 10px;
  }
  .access__time td {
    padding: 10px;
  }
  .fixed-cta {
    display: flex;
  }
  .footer {
    padding: 0px 0 70px;
  }
}
@media screen and (max-width: 480px) {
  .for-sp {
    display: block!important;
  }
  #sp-nav {
    top: 70px;
    height: calc(100dvh - 70px);
  }
  .sp-nav__list--item-contact {
    padding: 13px 30px;
  }
  .header {
    height: 70px;
  }
  .header__inner {
    padding: 0 15px;
  }
  .header__logo {
    max-width: 210px;
  }
  .index {
    padding-top: 70px;
  }
  .fv {
    background-image: url(../img/fv_sp.jpg);
    height: calc(100dvh - 70px);
  }
  .fv__text-image {
    gap: 30px;
  }
  .about {
    padding: 80px 0;
  }
  .about__intro {
    max-width: 100%;
  }
  .about__intro__img {
    width: 100vw;
  }
  .about__intro__image {
    border-radius: 0;
  }
  .about__worry {
    padding: 20px 10px 10px;
  }
  .about__worry__heading {
    line-height: 1.5;
    margin-bottom: 20px;
  }
  .about__worry__box {
    flex-direction: column-reverse;
    gap: 0;
  }
  .about__worry__list-item {
    display: flex;
    align-items: flex-start;
    line-height: 1.5;
    margin-bottom: 20px;
  }
  .about__worry__list-item img {
    width: 20px;
    margin: 3px 10px 0 0;
  }
  .about__point__card {
    width: 100%;
  }
  .about__point__card:last-of-type {
    margin-bottom: 0;
  }
  .clinic__content {
    flex-direction: column;
    gap: 30px;
    margin-bottom: 70px;
  }
  .clinic__content:last-of-type {
    margin-bottom: 0;
  }
  .clinic__image {
    flex: unset;
    width: 100vw;
  }
  .clinic__content:nth-of-type(even) {
    flex-direction: column-reverse;
  }
  .cta {
    background-image: url(../img/cta_bg_sp.jpg);
    padding: 80px 0;
  }
  .cta__lead {
    text-align: left;
  }
  .cta__btn {
    flex-direction: column;
    align-items: center;
  }
  .access {
    padding: 80px 0;
  }
  .access__heading {
    max-width: 300px;
    margin: 0 auto 20px;
  }
  .access__tel {
    margin: 0 auto 20px;
  }
  .access__tel img {
    width: 30px;
    height: 30px;
  }
  .access__address {
    line-height: 1.5;
  }
  .access iframe {
    max-height: 250px;
  }
  .access__train__list-item {
    line-height: 1.8;
  }
  .access__time th {
    padding: 0 7px;
  }
  .access__time td {
    vertical-align: middle;
    line-height: 1.5;
    padding: 7px;
    text-align: center;
  }
  .timetable__lead {
    line-height: 1.5;
    margin-bottom: 10px;
  }
  .cases {
    padding: 80px 0;
  }
  .instagram__box-list {
    grid-template-columns: repeat(2, 1fr);
  }
  .instagram__box-list-item:last-of-type {
    display: none;
  }
}