.sec-facility,
.sec-cafe,
.sec-access,
.sec-uniforms {
  margin: 0 auto;
  width: min(850px, calc(850 / 1400 * 100vw));
}

.sec-facility .texts,
.sec-cafe .texts,
.sec-access .texts,
.sec-uniforms .texts {
  line-height: 1.77;
  margin: 0 auto;
  width: min(780px, calc(780 / 1400 * 100vw));
  font-size: 18px;
}

.sec-access .map {
  margin: 0 auto min(25px, calc(25 / 1400 * 100vw)) auto;
  width: min(500px, calc(500 / 1400 * 100vw));
}

.sec-access .texts {
  text-align: center;
  line-height: 1.77;
  font-size: 18px;
}

.sec-uniforms .uniforms {
  position: relative;
  margin: 0 auto min(45px, calc(45 / 1400 * 100vw)) auto;
  padding-top: min(25px, calc(25 / 1400 * 100vw));
  width: min(418px, calc(418 / 1400 * 100vw));
}

.sec-uniforms .uniforms::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  transform: translateX(-50%);
  background-repeat: no-repeat;
  background-size: 100% auto;
  top: min(35px, calc(35 / 1400 * 100vw));
  aspect-ratio: 535/303;
  width: min(535px, calc(535 / 1400 * 100vw));
  background-image: url(../img/about/uniforms_dot@pc.svg);
}

.about-slider-main {
  margin-bottom: min(25px, calc(25 / 1400 * 100vw));
}

.about-slider-thumb {
  display: flex;
  justify-content: space-between;
  margin: 0 auto min(25px, calc(25 / 1400 * 100vw)) auto;
  width: min(786px, calc(786 / 1400 * 100vw));
}

.sec-cafe .about-slider-thumb {
  width: min(384px, calc(384 / 1400 * 100vw));
}

.about-slider-thumb button {
  width: min(116px, calc(116 / 1400 * 100vw));
}

.about-slider-thumb button img {
  transition: opacity 0.3s;
}

.about-slider-thumb button.is-current {
  pointer-events: none;
  position: relative;
}

.about-slider-thumb button.is-current::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid #30c060;
}

.about-slider-thumb button.is-current img {
  opacity: 0.5;
}

@media print, screen and (min-width: 769px) {
  .sec-uniforms .uniforms::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 55%;
    transform: translateX(-50%);
    bottom: min(30px, calc(30 / 1400 * 100vw));
    aspect-ratio: 1434/482;
    background: url(../img/about/uniforms_bg.webp) no-repeat;
    background-size: 100% auto;
    width: min(717px, calc(717 / 1400 * 100vw));
  }
}

@media print and (hover: hover), screen and (min-width: 769px) and (hover: hover) {
  .about-slider-thumb button img:hover {
    opacity: 0.5;
  }
}

@media screen and (min-width: 769px) and (-ms-high-contrast: active), screen and (min-width: 769px) and (-ms-high-contrast: none) {
  .about-slider-thumb button img:hover {
    opacity: 0.5;
  }
}

@media only screen and (max-width: 768.8px) {
  .sec-facility,
  .sec-cafe,
  .sec-access,
  .sec-uniforms {
    width: 89.3333333333vw;
  }

  .sec-facility .texts,
  .sec-cafe .texts,
  .sec-access .texts,
  .sec-uniforms .texts {
    font-size: 1.8rem;
  }

  .sec-facility .texts,
  .sec-cafe .texts,
  .sec-access .texts,
  .sec-uniforms .texts {
    width: 89.3333333333vw;
  }

  .sec-access .map {
    width: 89.3333333333vw;
    margin-bottom: 6.6666666667vw;
  }

  .sec-access .texts {
    font-size: 1.8rem;
  }

  .sec-uniforms .uniforms {
    width: 85.3333333333vw;
    margin-bottom: 6.6666666667vw;
    padding-top: 12vw;
  }

  .sec-uniforms .uniforms::after {
    top: 2.6666666667vw;
    aspect-ratio: 336/273;
    width: 89.6vw;
    background-image: url(../img/about/uniforms_dot@sp.svg);
  }

  .about-slider-main {
    margin-bottom: 6.6666666667vw;
  }

  .about-slider-thumb {
    flex-wrap: wrap;
    row-gap: 3.7333333333vw;
    width: 88.5333333333vw;
    margin-bottom: 5.3333333333vw;
  }

  .sec-cafe .about-slider-thumb {
    width: 88.5333333333vw;
  }

  .about-slider-thumb button {
    width: 26.6666666667vw;
  }
}

@media screen and (min-width: 769px) and (max-width: 1399.8px) {
  .sec-facility .texts,
  .sec-cafe .texts,
  .sec-access .texts,
  .sec-uniforms .texts {
    font-size: 1.8rem;
  }

  .sec-access .texts {
    font-size: 1.8rem;
  }
}