@font-face {
  font-family: "Noto Sans JP";
  src: url("../assets/fonts/NotoSansJP-VariableFont_wght.woff2") format("woff2 supports variations"), url("../assets/fonts/NotoSansJP-VariableFont_wght.woff2") format("woff2-variations");
  font-weight: 400 500 600 700;
}
section.philosophy {
  background-color: #F4E6C2;
  padding-bottom: clamp(40px, 6vw, 80px);
  margin-top: clamp(100px, 10vw, 180px);
}
section.philosophy .h2-title-group {
  transform: translateY(calc(clamp(4rem, 10vw, 13rem) * -0.5));
}
section.philosophy .h2-title-group h3 {
  margin-bottom: 0.6em;
}
section.philosophy .h2-title-group h4.subtitle {
  font-size: clamp(18px, 2vw, 25px);
  line-height: 190%;
}
section.philosophy p.text-block {
  margin: 0 auto;
  width: 84.6%;
  max-width: 700px;
}

section.vision {
  margin-top: clamp(100px, 10vw, 150px);
}
section.vision .content-container {
  margin-top: clamp(40px, 4vw, 60px);
}
section.vision .content-container .img-col {
  margin-bottom: 24px;
  max-width: 400px;
}
section.vision .content-container .text-col {
  max-width: 500px;
}
section.vision .content-container .text-col h3 {
  margin-bottom: 1em;
}
@media screen and (min-width: 801px) {
  section.vision .content-container {
    justify-content: space-around;
  }
  section.vision .content-container .img-col {
    width: 30%;
    margin-bottom: 0;
  }
  section.vision .content-container .text-col {
    width: 60%;
  }
}
@media screen and (min-width: 1201px) {
  section.vision .content-container .img-col {
    width: 50%;
  }
  section.vision .content-container .text-col {
    width: 42.5%;
  }
  section.vision .content-container .text-col p {
    max-width: 450px;
  }
}

section.information {
  width: 1200px;
  max-width: 96%;
  background-color: #ffffff;
  margin-top: clamp(80px, 10vw, 140px);
  padding: clamp(60px, 9vw, 120px) 0;
}
section.information .h2-title-group {
  margin-bottom: clamp(32px, 4vw, 50px);
}
section.information .h2-title-group h2 {
  font-size: clamp(4rem, 8vw, 10rem);
}
section.information .info-container {
  width: 92%;
  max-width: 916px;
  text-align: center;
}
section.information .info-container .info-row {
  width: 100%;
  display: flex;
  padding: 1.5em 0;
  border-bottom: 1px solid #707070;
}
section.information .info-container .info-row .info-label,
section.information .info-container .info-row .info-content {
  box-sizing: border-box;
  padding: 0 0.5em;
}
section.information .info-container .info-row .info-label a,
section.information .info-container .info-row .info-content a {
  color: #000000;
}
section.information .info-container .info-row .info-label {
  width: 32%;
}
section.information .info-container .info-row .info-content {
  width: 68%;
}
@media screen and (min-width: 801px) {
  section.information .info-container .info-label {
    width: 24%;
  }
  section.information .info-container .info-content {
    width: 76%;
  }
}

section.access {
  margin: clamp(180px, 15vw, 270px) auto clamp(100px, 10vw, 175px);
}
section.access .access-container {
  box-sizing: border-box;
  background-color: #F4E6C2;
  padding: clamp(40px, 7vw, 90px) 5%;
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
}
section.access .access-container .h2-title-group {
  margin-bottom: 20px;
}
section.access .access-container .h2-title-group h2 {
  font-size: clamp(4rem, 8vw, 10rem);
}
section.access .access-container p.address,
section.access .access-container p.hours,
section.access .access-container a.tel-no {
  font-weight: bold;
}
section.access .access-container .a-btn {
  margin: 32px auto 0;
}
section.access .gmaps {
  margin-top: clamp(40px, 10vw, 60px);
  width: 100%;
  aspect-ratio: 100/58.75;
}
section.access .gmaps iframe {
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 801px) {
  section.access .access-container {
    align-self: flex-start;
    width: 71.6%;
    max-width: unset;
    margin: 0;
    padding: 0 clamp(40px, 6vw, 100px) clamp(40px, 7vw, 90px);
  }
  section.access .access-container .h2-title-group {
    transform: translateY(-50%);
    flex-direction: row;
    font-size: clamp(4rem, 8vw, 10rem);
    margin: 0 0 0 -0.5em;
  }
  section.access .access-container .h2-title-group h2 {
    margin: 0 0.4em 0 0;
  }
  section.access .access-container p.address,
section.access .access-container p.hours,
section.access .access-container a.tel-no {
    margin-bottom: 1em;
  }
  section.access .access-container .a-btn {
    margin: 2em auto 0 0;
  }
  section.access .gmaps {
    align-self: flex-end;
    margin-top: -50px;
    width: 66.7%;
  }
}

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