@charset "UTF-8";
/* Scss Document */
/* Scss Document */
.kv__img {
  position: relative;
}
.kv__img::before {
  content: "";
  position: absolute;
  background: url(../img/about/bg-circle.png) no-repeat center center;
  background-size: contain;
  width: calc(674 / 1920 * 100vw);
  height: calc(135 / 1920 * 100vw);
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media only screen and (max-width: 640px) {
  .kv__img::before {
    width: calc(200 / 440 * 100vw);
    height: calc(50 / 440 * 100vw);
    left: 60%;
  }
}
@media only screen and (max-width: 640px) {
  .kv__img img {
    -o-object-position: left center;
       object-position: left center;
  }
}

.about-greeting {
  background: url(../img/about/bg-about01.png) repeat left center;
  background-size: cover;
}
@media only screen and (max-width: 640px) {
  .about-greeting {
    background-position: left;
  }
}
.about-greeting .content {
  padding: 20.4rem 0 7.6rem;
  margin-top: -18rem;
}
@media only screen and (max-width: 1200px) {
  .about-greeting .content {
    padding: calc(204 / 1200 * 100vw) 0 calc(76 / 1200 * 100vw);
    margin-top: calc(-180 / 1200 * 100vw);
  }
}
@media only screen and (max-width: 640px) {
  .about-greeting .content {
    padding: calc(180 / 440 * 100vw) 0 calc(30 / 440 * 100vw);
    margin-top: calc(-180 / 440 * 100vw);
  }
}

.about-greeting__img img {
  width: 100%;
}

.about-greeting__body {
  width: 86.5rem;
  margin: 5rem auto 0;
}
@media only screen and (max-width: 1200px) {
  .about-greeting__body {
    width: calc(865 / 1200 * 100vw);
    margin: calc(50 / 1200 * 100vw) auto 0;
  }
}
@media only screen and (max-width: 640px) {
  .about-greeting__body {
    width: 100%;
    margin: calc(20 / 440 * 100vw) auto 0;
  }
}

.about-greeting__txt {
  font-size: 2rem;
  line-height: 1.9;
  margin-top: 2.4rem;
}
@media only screen and (max-width: 1200px) {
  .about-greeting__txt {
    font-size: calc(20 / 1200 * 100vw);
    margin-top: calc(24 / 1200 * 100vw);
  }
}
@media only screen and (max-width: 640px) {
  .about-greeting__txt {
    font-size: calc(16 / 440 * 100vw);
    margin-top: calc(15 / 440 * 100vw);
  }
}

/*---------------
   院長メッセージ
---------------*/
.message .content {
  padding: 9.4rem 0 11.2rem;
}
@media only screen and (max-width: 1200px) {
  .message .content {
    padding: calc(94 / 1200 * 100vw) 0 calc(112 / 1200 * 100vw);
  }
}

.message__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 5rem;
  margin-top: 8.4rem;
}
@media only screen and (max-width: 1200px) {
  .message__wrapper {
    padding: 0;
    margin-top: calc(84 / 1200 * 100vw);
  }
}
@media only screen and (max-width: 640px) {
  .message__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: calc(15 / 440 * 100vw);
  }
}

.message__img {
  width: 40rem;
}
@media only screen and (max-width: 1200px) {
  .message__img {
    width: 40%;
    margin-right: calc(30 / 1200 * 100vw);
  }
}
@media only screen and (max-width: 640px) {
  .message__img {
    width: 60%;
    margin-right: 0;
  }
}
.message__img img {
  width: 100%;
}

.message__body {
  width: 59rem;
}
@media only screen and (max-width: 1200px) {
  .message__body {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
@media only screen and (max-width: 640px) {
  .message__body {
    width: 100%;
  }
}

.message__position {
  border-radius: 100vw;
  background: #E86D88;
  color: #fff;
  line-height: normal;
  letter-spacing: 1.6px;
  padding: 1rem 0;
  width: 16.2rem;
  text-align: center;
}
@media only screen and (max-width: 1200px) {
  .message__position {
    font-size: 1.4rem;
    padding: calc(10 / 1200 * 100vw) 0;
  }
}
@media only screen and (max-width: 640px) {
  .message__position {
    font-size: calc(16 / 440 * 100vw);
    padding: calc(10 / 440 * 100vw);
    width: calc(162 / 440 * 100vw);
    margin: 0 auto;
  }
}

.message__name-ja {
  color: #4468AF;
  font-size: 3rem;
  line-height: normal;
  letter-spacing: 3px;
  margin-top: 1rem;
}
@media only screen and (max-width: 1200px) {
  .message__name-ja {
    font-size: calc(30 / 1200 * 100vw);
  }
}
@media only screen and (max-width: 640px) {
  .message__name-ja {
    font-size: calc(24 / 440 * 100vw);
    text-align: center;
  }
}

.message__name-en {
  color: #4468AF;
  font-size: 1.4rem;
  line-height: normal;
  letter-spacing: 1.4px;
  margin-left: 0.4rem;
}
@media only screen and (max-width: 1200px) {
  .message__name-en {
    font-size: calc(14 / 1200 * 100vw);
  }
}
@media only screen and (max-width: 640px) {
  .message__name-en {
    font-size: calc(14 / 440 * 100vw);
    text-align: center;
  }
}

.message__txt {
  margin-top: 3rem;
  line-height: 1.8;
}
@media only screen and (max-width: 1200px) {
  .message__txt {
    margin-top: calc(30 / 1200 * 100vw);
    font-size: calc(16 / 1200 * 100vw);
  }
}
@media only screen and (max-width: 640px) {
  .message__txt {
    font-size: calc(16 / 440 * 100vw);
    margin-top: calc(20 / 440 * 100vw);
  }
}

@media only screen and (max-width: 640px) {
  .message__txt + .message__txt {
    margin-top: calc(15 / 440 * 100vw);
  }
}

.career {
  margin-top: 3rem;
}
@media only screen and (max-width: 1200px) {
  .career {
    margin-top: calc(30 / 1200 * 100vw);
  }
}

.career__ttl {
  color: #4468AF;
  font-size: 2.4rem;
  line-height: normal;
  letter-spacing: 2.4px;
}
@media only screen and (max-width: 640px) {
  .career__ttl {
    font-size: calc(24 / 440 * 100vw);
  }
}

.career__list {
  padding-left: 1.5rem;
  border-left: 1px solid #4468AF;
  margin-top: 1.5rem;
}
@media only screen and (max-width: 1200px) {
  .career__list {
    margin-top: calc(15 / 1200 * 100vw);
  }
}
@media only screen and (max-width: 640px) {
  .career__list {
    margin-top: calc(15 / 440 * 100vw);
    padding-left: calc(15 / 440 * 100vw);
  }
}
.career__list li {
  color: #000;
  line-height: 1.8;
  letter-spacing: 1.6px;
}
@media only screen and (max-width: 1200px) {
  .career__list li {
    font-size: calc(16 / 1200 * 100vw);
  }
}
@media only screen and (max-width: 640px) {
  .career__list li {
    font-size: calc(16 / 440 * 100vw);
  }
}

/*---------------
   clinic-policyパーツ
---------------*/
.clinic-policy {
  background: url(../img/about/bg-about02.png) no-repeat right top;
  background-size: cover;
}
.clinic-policy .content {
  padding-top: 23.3rem;
  padding-bottom: 15.7rem;
  margin-top: -16.3rem;
}
@media only screen and (max-width: 1200px) {
  .clinic-policy .content {
    padding-top: calc(233 / 1200 * 100vw);
    margin-top: calc(-163 / 1200 * 100vw);
    padding-bottom: calc(157 / 1200 * 100vw);
  }
}
@media only screen and (max-width: 640px) {
  .clinic-policy .content {
    padding-top: calc(180 / 440 * 100vw);
    margin-top: calc(-163 / 440 * 100vw);
    padding-bottom: calc(130 / 440 * 100vw);
  }
}

.clinic-policy__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 13.5rem;
  margin-top: 5.7rem;
}
@media only screen and (max-width: 1200px) {
  .clinic-policy__wrapper {
    gap: calc(100 / 1200 * 100vw);
    margin-top: calc(57 / 1200 * 100vw);
  }
}