/************************************************
    KEY VISUAL
*************************************************/
.keyVisual--home.fade-slider {
  --height: calc(100vh - 13.0625rem);
  inline-size: 100%;
  block-size: calc(100vh - 13.0625rem);
  block-size: var(--height);
  max-block-size: 67.5rem;
}
@media (min-width: 48rem) {
  .keyVisual--home.fade-slider {
    block-size: calc(100vb - 6.59375rem);
  }
}
@media (min-width: 90rem) {
  .keyVisual--home.fade-slider {
    block-size: calc(100vb - 6.25rem);
  }
}
.keyVisual--home .fade-slider-item img {
  font-family: "object-fit: cover";
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

/************************************************
    fade slider
*************************************************/
@keyframes fade_slide {
  0% {
    opacity: 0;
    transform: scale(1);
    animation-timing-function: ease-in;
  }
  16.6666666667% {
    opacity: 1;
    animation-timing-function: ease-out;
  }
  33.3333333333% {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale(1.1);
  }
  100% {
    opacity: 0;
    transform: scale(1);
  }
}
.fade-slider {
  position: relative;
  overflow: hidden;
}
.fade-slider-item {
  inline-size: 100%;
  block-size: 100%;
  opacity: 0;
  transform: scale(1);
  animation-name: fade_slide;
  animation-duration: 18s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
.fade-slider-item:nth-of-type(n+2) {
  position: absolute;
  inset-block-start: 0;
}
@supports not (inset-block-start: 0) {
  .fade-slider-item:nth-of-type(n+2) {
    top: 0;
  }
}
.fade-slider-item:nth-of-type(n+2) {
  inset-inline-start: 0;
}
@supports not (inset-inline-start: 0) {
  .fade-slider-item:nth-of-type(n+2) {
    left: 0;
  }
}
.fade-slider-item:first-of-type {
  animation-delay: -3s;
}
.fade-slider-item:nth-of-type(2) {
  animation-delay: 3s;
}
.fade-slider-item:nth-of-type(3) {
  animation-delay: 9s;
}
.fade-slider-item img {
  inline-size: 100%;
}

/************************************************
    SERVICE
*************************************************/
.section-Service {
  color: white;
  background-color: #69b6bd;
  position: relative;
}
.section-Service::after {
  content: "";
  display: block;
  background-color: #e6f4f1;
  inline-size: 100%;
  block-size: 45em;
  border-start-start-radius: 3.75em;
  border-start-end-radius: 3.75em;
  position: absolute;
  inset-block-end: 0;
}
@supports not (inset-block-end: 0) {
  .section-Service::after {
    bottom: 0;
  }
}
.section-Service::after {
  inset-inline-start: 0;
}
@supports not (inset-inline-start: 0) {
  .section-Service::after {
    left: 0;
  }
}
.section-Service .section__title .before, .section-Service .section__title .text {
  color: inherit;
}
.section-Service__content {
  font-family: "m-plus-rounded-2p", sans-serif;
  font-size: 1em;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
  text-align: center;
  padding-inline-start: 0.05em;
  margin-block-start: 2.5em;
}
.section-Service-services {
  display: grid;
  gap: 2.5em;
  max-inline-size: 92.5em;
  padding: 0;
  margin-block: 3.625em 0;
}
@supports not (margin-block: 3.625em 0) {
  .section-Service-services {
    margin-block-start: 3.625em;
    margin-block-end: 0;
  }
}
.section-Service-services {
  margin-inline: auto;
}
@supports not (margin-inline: auto) {
  .section-Service-services {
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}
.section-Service-services {
  position: relative;
  z-index: 2;
}
@media (min-width: 48rem) {
  .section-Service-services {
    grid-template-columns: repeat(2, 1fr);
    padding-inline: 0.625em;
  }
  @supports not (padding-inline: 0.625em) {
    .section-Service-services {
      padding-inline-start: 0.625em;
      padding-inline-end: 0.625em;
    }
  }
}
.section-Service-service {
  padding-block: 2.5em;
}
@supports not (padding-block: 2.5em) {
  .section-Service-service {
    padding-block-start: 2.5em;
    padding-block-end: 2.5em;
  }
}
.section-Service-service {
  padding-inline: var(--gutter);
}
@supports not (padding-inline: var(--gutter)) {
  .section-Service-service {
    padding-inline-start: var(--gutter);
    padding-inline-end: var(--gutter);
  }
}
.section-Service-service {
  border: 2px solid white;
  border-start-start-radius: 3.75em;
  border-start-end-radius: 3.75em;
}
@media (min-width: 48rem) {
  .section-Service-service {
    padding-inline: 3.625em;
  }
  @supports not (padding-inline: 3.625em) {
    .section-Service-service {
      padding-inline-start: 3.625em;
      padding-inline-end: 3.625em;
    }
  }
}
.section-Service-service--firstTime {
  background-color: #4fbac8;
}
.section-Service-service--medicalInformation {
  background-color: #5ab7aa;
}
.section-Service-service__title {
  font-size: 1em;
  line-height: 1.6153846154;
  text-align: center;
  background: no-repeat center top / 3.75em auto;
  padding-block-start: 4.75em;
  margin: 0;
}
@supports ((background-image: -webkit-image-set(url("../img/icon_firstTime.webp") 1x, url("../img/icon_firstTime@2x.webp") 2x, url("../img/icon_firstTime@3x.webp") 3x)) or (background-image: image-set(url("../img/icon_firstTime.webp") 1x, url("../img/icon_firstTime@2x.webp") 2x, url("../img/icon_firstTime@3x.webp") 3x))) {
  .webp .section-Service-service--firstTime .section-Service-service__title {
    background-image: -webkit-image-set(url("../img/icon_firstTime.webp") 1x, url("../img/icon_firstTime@2x.webp") 2x, url("../img/icon_firstTime@3x.webp") 3x);
    background-image: image-set(url("../img/icon_firstTime.webp") 1x, url("../img/icon_firstTime@2x.webp") 2x, url("../img/icon_firstTime@3x.webp") 3x);
  }
}
@supports ((background-image: -webkit-image-set(url("../img/icon_firstTime.png") 1x, url("../img/icon_firstTime@2x.png") 2x, url("../img/icon_firstTime@3x.png") 3x)) or (background-image: image-set(url("../img/icon_firstTime.png") 1x, url("../img/icon_firstTime@2x.png") 2x, url("../img/icon_firstTime@3x.png") 3x))) {
  .no-webp .section-Service-service--firstTime .section-Service-service__title {
    background-image: -webkit-image-set(url("../img/icon_firstTime.png") 1x, url("../img/icon_firstTime@2x.png") 2x, url("../img/icon_firstTime@3x.png") 3x);
    background-image: image-set(url("../img/icon_firstTime.png") 1x, url("../img/icon_firstTime@2x.png") 2x, url("../img/icon_firstTime@3x.png") 3x);
  }
}
@supports not ((background-image: -webkit-image-set(url("../img/icon_firstTime.webp") 1x, url("../img/icon_firstTime@2x.webp") 2x, url("../img/icon_firstTime@3x.webp") 3x)) or (background-image: image-set(url("../img/icon_firstTime.webp") 1x, url("../img/icon_firstTime@2x.webp") 2x, url("../img/icon_firstTime@3x.webp") 3x))) {
  .section-Service-service--firstTime .section-Service-service__title {
    background-image: url("../img/icon_firstTime.webp");
  }
  @media screen and (min-resolution: 2dppx) {
    .webp .section-Service-service--firstTime .section-Service-service__title {
      background-image: url("../img/icon_firstTime@2x.webp");
    }
  }
  @media screen and (min-resolution: 3dppx) {
    .webp .section-Service-service--firstTime .section-Service-service__title {
      background-image: url("../img/icon_firstTime@3x.webp");
    }
  }
}
@supports not ((background-image: -webkit-image-set(url("../img/icon_firstTime.png") 1x, url("../img/icon_firstTime@2x.png") 2x, url("../img/icon_firstTime@3x.png") 3x)) or (background-image: image-set(url("../img/icon_firstTime.png") 1x, url("../img/icon_firstTime@2x.png") 2x, url("../img/icon_firstTime@3x.png") 3x))) {
  .section-Service-service--firstTime .section-Service-service__title {
    background-image: url("../img/icon_firstTime.png");
  }
  @media screen and (min-resolution: 2dppx) {
    .no-webp .section-Service-service--firstTime .section-Service-service__title {
      background-image: url("../img/icon_firstTime@2x.png");
    }
  }
  @media screen and (min-resolution: 3dppx) {
    .no-webp .section-Service-service--firstTime .section-Service-service__title {
      background-image: url("../img/icon_firstTime@3x.png");
    }
  }
}
_:-ms-lang(x)::-ms-backdrop, .section-Service-service--firstTime .section-Service-service__title {
  background-image: url("../img/icon_firstTime.png");
}
@media screen and (min-resolution: 2dppx) {
  .no-webp _:-ms-lang(x)::-ms-backdrop, .no-webp .section-Service-service--firstTime .section-Service-service__title {
    background-image: url("../img/icon_firstTime@2x.png");
  }
}
@media screen and (min-resolution: 3dppx) {
  .no-webp _:-ms-lang(x)::-ms-backdrop, .no-webp .section-Service-service--firstTime .section-Service-service__title {
    background-image: url("../img/icon_firstTime@3x.png");
  }
}

@supports ((background-image: -webkit-image-set(url("../img/icon_medicalInformation.webp") 1x, url("../img/icon_medicalInformation@2x.webp") 2x, url("../img/icon_medicalInformation@3x.webp") 3x)) or (background-image: image-set(url("../img/icon_medicalInformation.webp") 1x, url("../img/icon_medicalInformation@2x.webp") 2x, url("../img/icon_medicalInformation@3x.webp") 3x))) {
  .webp .section-Service-service--medicalInformation .section-Service-service__title {
    background-image: -webkit-image-set(url("../img/icon_medicalInformation.webp") 1x, url("../img/icon_medicalInformation@2x.webp") 2x, url("../img/icon_medicalInformation@3x.webp") 3x);
    background-image: image-set(url("../img/icon_medicalInformation.webp") 1x, url("../img/icon_medicalInformation@2x.webp") 2x, url("../img/icon_medicalInformation@3x.webp") 3x);
  }
}
@supports ((background-image: -webkit-image-set(url("../img/icon_medicalInformation.png") 1x, url("../img/icon_medicalInformation@2x.png") 2x, url("../img/icon_medicalInformation@3x.png") 3x)) or (background-image: image-set(url("../img/icon_medicalInformation.png") 1x, url("../img/icon_medicalInformation@2x.png") 2x, url("../img/icon_medicalInformation@3x.png") 3x))) {
  .no-webp .section-Service-service--medicalInformation .section-Service-service__title {
    background-image: -webkit-image-set(url("../img/icon_medicalInformation.png") 1x, url("../img/icon_medicalInformation@2x.png") 2x, url("../img/icon_medicalInformation@3x.png") 3x);
    background-image: image-set(url("../img/icon_medicalInformation.png") 1x, url("../img/icon_medicalInformation@2x.png") 2x, url("../img/icon_medicalInformation@3x.png") 3x);
  }
}
@supports not ((background-image: -webkit-image-set(url("../img/icon_medicalInformation.webp") 1x, url("../img/icon_medicalInformation@2x.webp") 2x, url("../img/icon_medicalInformation@3x.webp") 3x)) or (background-image: image-set(url("../img/icon_medicalInformation.webp") 1x, url("../img/icon_medicalInformation@2x.webp") 2x, url("../img/icon_medicalInformation@3x.webp") 3x))) {
  .section-Service-service--medicalInformation .section-Service-service__title {
    background-image: url("../img/icon_medicalInformation.webp");
  }
  @media screen and (min-resolution: 2dppx) {
    .webp .section-Service-service--medicalInformation .section-Service-service__title {
      background-image: url("../img/icon_medicalInformation@2x.webp");
    }
  }
  @media screen and (min-resolution: 3dppx) {
    .webp .section-Service-service--medicalInformation .section-Service-service__title {
      background-image: url("../img/icon_medicalInformation@3x.webp");
    }
  }
}
@supports not ((background-image: -webkit-image-set(url("../img/icon_medicalInformation.png") 1x, url("../img/icon_medicalInformation@2x.png") 2x, url("../img/icon_medicalInformation@3x.png") 3x)) or (background-image: image-set(url("../img/icon_medicalInformation.png") 1x, url("../img/icon_medicalInformation@2x.png") 2x, url("../img/icon_medicalInformation@3x.png") 3x))) {
  .section-Service-service--medicalInformation .section-Service-service__title {
    background-image: url("../img/icon_medicalInformation.png");
  }
  @media screen and (min-resolution: 2dppx) {
    .no-webp .section-Service-service--medicalInformation .section-Service-service__title {
      background-image: url("../img/icon_medicalInformation@2x.png");
    }
  }
  @media screen and (min-resolution: 3dppx) {
    .no-webp .section-Service-service--medicalInformation .section-Service-service__title {
      background-image: url("../img/icon_medicalInformation@3x.png");
    }
  }
}
_:-ms-lang(x)::-ms-backdrop, .section-Service-service--medicalInformation .section-Service-service__title {
  background-image: url("../img/icon_medicalInformation.png");
}
@media screen and (min-resolution: 2dppx) {
  .no-webp _:-ms-lang(x)::-ms-backdrop, .no-webp .section-Service-service--medicalInformation .section-Service-service__title {
    background-image: url("../img/icon_medicalInformation@2x.png");
  }
}
@media screen and (min-resolution: 3dppx) {
  .no-webp _:-ms-lang(x)::-ms-backdrop, .no-webp .section-Service-service--medicalInformation .section-Service-service__title {
    background-image: url("../img/icon_medicalInformation@3x.png");
  }
}

.section-Service-service__title .text {
  font-size: 2em;
  font-weight: 700;
  letter-spacing: 0.1em;
  display: block;
}
.section-Service-service__title .after {
  font-size: 1.25em;
  font-weight: 500;
  display: block;
}
.section-Service-service-contents {
  color: #292020;
  text-align: center;
  background-color: white;
  padding-block-end: 2.5em;
  padding-inline: var(--gutter);
}
@supports not (padding-inline: var(--gutter)) {
  .section-Service-service-contents {
    padding-inline-start: var(--gutter);
    padding-inline-end: var(--gutter);
  }
}
.section-Service-service-contents {
  border-radius: 0.625em;
  margin-block-start: 1.875em;
  overflow: hidden;
}
.section-Service-service__thumbnail {
  display: block;
  margin-inline: calc(var(--gutter) * -1);
}
@supports not (margin-inline: calc(var(--gutter) * -1)) {
  .section-Service-service__thumbnail {
    margin-inline-start: calc(var(--gutter) * -1);
    margin-inline-end: calc(var(--gutter) * -1);
  }
}
.section-Service-service__thumbnail img {
  inline-size: 100%;
}
.section-Service-service__content {
  font-size: 1em;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2.5;
  text-align: start;
  max-inline-size: 22.05em;
  margin-block-start: 2.875em;
  margin-inline: auto;
}
@supports not (margin-inline: auto) {
  .section-Service-service__content {
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}
.section-Service-service__content p {
  margin: 0;
}
.section-Service-service .button {
  margin-block-start: 1.5em;
}

/************************************************
    REASON
*************************************************/
.section-Reason {
  background-color: #e6f4f1;
}
.section-Service + .section-Reason {
  margin-block-start: -6.25em;
}
.section-Reason-reasons {
  display: grid;
  gap: 5.875em;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  padding: 0;
  margin-block: 5.625em 0;
}
@supports not (margin-block: 5.625em 0) {
  .section-Reason-reasons {
    margin-block-start: 5.625em;
    margin-block-end: 0;
  }
}
.section-Reason-reasons {
  margin-inline: auto;
}
@supports not (margin-inline: auto) {
  .section-Reason-reasons {
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}
@media (min-width: 48rem) {
  .section-Reason-reasons {
    grid-template-columns: repeat(3, 1fr);
  }
}
.section-Reason-reason {
  list-style: none;
  text-align: center;
}
.section-Reason-reason .figure {
  margin: 0;
}
.section-Reason-reason .photo img {
  inline-size: 18.75em;
  border-radius: 50%;
}
.section-Reason-reason .caption {
  font-family: "m-plus-rounded-2p", sans-serif;
  font-size: 1.125em;
  font-weight: 500;
  line-height: 2;
  margin-block-start: 1.6666666667em;
}
.section-Reason-reason .caption p {
  margin: 0;
}

/************************************************
    ACCESS
*************************************************/
.section-Access {
  background-color: white;
  padding-block: 7.5em;
}
@supports not (padding-block: 7.5em) {
  .section-Access {
    padding-block-start: 7.5em;
    padding-block-end: 7.5em;
  }
}
@media (min-width: 48rem) {
  .section-Access {
    display: grid;
    grid-template-columns: 1fr minmax(min-content, 35.625em) 1.875em minmax(min-content, 56.25em) 1fr;
    grid-template-rows: 1fr repeat(3, auto) 1fr;
  }
}
@media (min-width: 48rem) {
  .section-Access .section__title {
    grid-column: 2;
    grid-row: 2;
  }
}
.section-Access-information {
  color: #728483;
  font-family: "m-plus-rounded-2p", sans-serif;
  font-size: 1.25em;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
@supports (display: flow-root) {
  .section-Access-information {
    display: flow-root;
  }
}
@supports not (display: flow-root) {
  .section-Access-information::after {
    content: "";
    display: block;
    clear: both;
  }
}
_:-ms-lang(x)::-ms-backdrop, .section-Access-information::after {
  content: "";
  display: block;
  clear: both;
}

.section-Access-information {
  margin-block: 2.25em 0;
}
@supports not (margin-block: 2.25em 0) {
  .section-Access-information {
    margin-block-start: 2.25em;
    margin-block-end: 0;
  }
}
@media (min-width: 48rem) {
  .section-Access-information {
    grid-column: 2;
    grid-row: 3;
  }
}
.section-Access-information .term {
  margin-inline-end: 1.05em;
  float: inline-start;
}
@supports not (float: inline-start) {
  .section-Access-information .term {
    float: left;
  }
}
.section-Access-information .term {
  clear: inline-start;
}
@supports not (clear: inline-start) {
  .section-Access-information .term {
    clear: left;
  }
}
.section-Access-information .description {
  margin: 0;
}
.section-Access .button {
  justify-self: start;
  margin-block-start: 2.5em;
}
@media (min-width: 48rem) {
  .section-Access .button {
    grid-column: 2;
    grid-row: 4;
    margin-block-start: 4.5em;
  }
}
.section-Access__map {
  inline-size: 100%;
  block-size: 100vb;
  max-block-size: 37.5em;
  border-radius: 0.625em;
  margin-block-start: 3.75em;
}
@media (min-width: 48rem) {
  .section-Access__map {
    grid-column: 4;
    -ms-grid-row: 1;
    -ms-grid-row-span: 5;
    grid-row: 1 / -1;
    margin: 0;
  }
}

/************************************************
    NEWS
*************************************************/
.section-NEWS {
  background-color: white;
  box-sizing: border-box;
  inline-size: calc(100% - var(--gutter) * 2);
  max-inline-size: 75em;
  padding-block: 3.75em 5em;
}
@supports not (padding-block: 3.75em 5em) {
  .section-NEWS {
    padding-block-start: 3.75em;
    padding-block-end: 5em;
  }
}
.section-NEWS {
  border-radius: 3.75em;
  margin-block: 4.375em;
}
@supports not (margin-block: 4.375em) {
  .section-NEWS {
    margin-block-start: 4.375em;
    margin-block-end: 4.375em;
  }
}
.section-NEWS {
  margin-inline: auto;
}
@supports not (margin-inline: auto) {
  .section-NEWS {
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}
.section-NEWS-news {
  font-size: 1em;
  font-weight: 500;
  letter-spacing: 0.12em;
  line-height: 2;
  max-inline-size: 50em;
  padding: 0;
  margin-block: 4.375em 0;
}
@supports not (margin-block: 4.375em 0) {
  .section-NEWS-news {
    margin-block-start: 4.375em;
    margin-block-end: 0;
  }
}
.section-NEWS-news {
  margin-inline: auto;
}
@supports not (margin-inline: auto) {
  .section-NEWS-news {
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}
.section-NEWS-news-item {
  border-block-end: 1px solid #e2e2e2;
}
.section-NEWS-news-item__permalink {
  color: inherit;
  text-decoration: none;
  display: block;
  padding-block: 1em;
}
@supports not (padding-block: 1em) {
  .section-NEWS-news-item__permalink {
    padding-block-start: 1em;
    padding-block-end: 1em;
  }
}
.section-NEWS-news-item__time {
  display: block;
}
.section-NEWS-news-item__title {
  margin: 0;
}/*# sourceMappingURL=../maps/front-page.css.map */
