@charset "UTF-8";

/* CSS Document */
.section-othertop,
.section-teacher,
.section-access,
.section-contact {
  width: 100%;
}

.section-teacher {
  margin: 200px auto 0;
}

.section-access,
.section-contact {
  background-image: url("../images/p0050_l.png");
  width: 100%;
  margin: 0 auto;
  padding-top: 110px;
}

.section-access {
  position: sticky;
}

.section-contact {
  position: sticky;
  padding-bottom: 50px;
}

.section-title {
  text-align: center;
}

.section-teacher {
  position: relative;
  width: 100%;
  max-width: 1050px;
}

.teacher-title {
  position: relative;
  width: 480px;
  margin: 200px auto 0;
}

.teacher-sun {
  position: absolute;
  top: -80px;
  left: -80px;
}

.teacher-palmtree {
  position: absolute;
  top: -115px;
  right: -40px;
}

.section-teacher__1,
.section-teacher__2 {
  display: flex;
  width: 800px;
  margin: 100px auto;
}

.teacher-description {
  width: 500px;
  margin: auto;
}

.teacher-description h5 {
  padding: 10px 20px;
  background-color: #37C4AE;
  border-radius: 30px;
  color: #fffff8;
}

.teacher-name1 {
  width: 325px;
}

.teacher-name2 {
  width: 150px;
}

.section-teacher__1 p,
.section-teacher__2 p {
  width: 450px;
  padding: 20px 0 0 10px;
}

.section-teacher__1 img,
.section-teacher__2 img {
  width: 250px;
  height: 320px;
  border-radius: 5px;
}

.bg-line {
  margin-top: 100px;
}

.access_title,
.contact-title {
  position: relative;
  width: 450px;
  margin: 200px auto 0;
}

.access-sun {
  position: absolute;
  top: -80px;
  left: 50px;
}

.access-palmtree {
  position: absolute;
  top: -115px;
  right: 90px;
}

.section-access__title {
  text-align: center;
}

.section-access__overview {
  width: 400px;
  margin: 60px auto 0;
}

.section-access__overview tr {
  display: flex;
}

.section-access__overview th {
  /* width: 150px; */
  width: 40%;
  text-align: left;
  vertical-align: middle;
  padding-bottom: 30px;
}

.section-access__overview td {
  /* width: 550px; */
  width: fit-content;
  text-align: left;
  vertical-align: middle;
  padding-bottom: 30px;
}

.section-contact__title p {
  width: 550px;
  margin: 40px auto 0;
}

.contact-sun {
  position: absolute;
  top: -80px;
  left: 0px;
}

.contact-palmtree {
  position: absolute;
  top: -115px;
  right: 40px;
}

/*レスポンシブ　スマホ版*/
@media(max-width:899px) {
  .section-othertop__topimg img {
    object-position: 0 100%;
  }

  .section-teacher,
  .section-access,
  .section-contact {
    width: 100%;
    max-width: 500px;
  }

  .section-teacher {
    margin-top: 150px;
  }

  .teacher-title {
    position: relative;
    width: 450px;
    margin: 0 auto;
  }

  .teacher-title {
    width: 271px;
  }

  .teacher-sun {
    position: absolute;
    top: -25px;
    left: -30px;
  }

  .teacher-palmtree {
    position: absolute;
    top: -36px;
    right: -20px;
  }

  .section-teacher__1,
  .section-teacher__2 {
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
    max-width: 500px;
    margin: 60px auto;
  }

  .section-teacher__1 img,
  .section-teacher__2 img {
    width: 160px;
    height: 200px;
    margin: 0 auto;
  }

  .teacher-description h5 {
    padding: 4px 15px;
    margin: 20px auto auto;
    height: 30px;
  }

  .teacher-name1 {
    width: 296px;
  }

  .teacher-name2 {
    width: 132px;
  }

  .teacher-description {
    width: 90%;
    max-width: 500px;
  }

  .section-teacher__1 p,
  .section-teacher__2 p {
    width: 95%;
    max-width: 300px;
    padding: 20px 0 0;
    margin: 0 auto;
  }

  .section-teacher__2 {
    margin-bottom: 0;
  }

  .section-access {
    margin-top: 150px;
    padding: 0;
  }

  .access_title {
    margin: 0 auto;
    width: 110px;
  }

  .access-sun {
    position: absolute;
    top: -25px;
    left: -30px;
  }

  .access-palmtree {
    position: absolute;
    top: -36px;
    right: -20px;
  }

  .section-access__overview {
    width: 95%;
    margin: 40px auto 0;
    max-width: 450px;
    font-size: 1.3rem;
  }

  .section-access__overview th {
    width: 20%;
  }

  .section-access__overview td {
    padding-left: 20px;
  }

  .section-contact {
    width: 100%;
    margin: 150px auto 0;
    padding: 0;
  }

  .contact-title {
    margin: 0 auto;
    width: 160px;
  }

  .contact-sun {
    position: absolute;
    top: -25px;
    left: -30px;
  }

  .contact-palmtree {
    position: absolute;
    top: -36px;
    right: -22px;
  }

  .section-contact__title p {
    width: 90%;
    max-width: 260px;
    margin: 40px auto 0;
  }

}

/* -------2024追加------ */
/*access*/
.access__container {
  width: 850px;
  margin: 60px auto 0;
}

.access__container .access__address {
  display: flex;
  justify-content: space-between;
}

.access__container .access__address div {
  width: 400px;
}

.access__container .access__address div h3 {
  width: fit-content;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 20px;
  background-color: #90DCB7;
  border-radius: 30px;
  padding: 8px 35px;
  margin: 0 auto 10px;
}

.access__container .access__address div img {
  width: 100%;
}

.access__container--annotation {
  margin-top: 15px;
  font-size: 14px;
}

/*contact*/
.contact__form {
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
}

.contact__form .contact__lead {
  /* text-align: center; */
  width: fit-content;
  margin: 50px auto 60px;

}

.contact__form .requiredFields {
  color: #D95A2B;
}

.contact__required {
  margin-bottom: 20px;
}

.contact__form .contactWrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}

.contact__form .contactWrap .formDataItem {
  width: 25%;
}

.contact__form .contactWrap .formInputColumn {
  width: 75%;
}

.contact__form .contactWrap .formInputColumn input {
  height: 30px;
  width: 100%;
  border-radius: 5px;
  padding: 0 15px;
  border: solid 1px #0F2E26;
  font-size: 1.4rem;
}

.contact__form .contactWrap .formInputColumn select {
  height: 30px;
  border-radius: 5px;
}

.contact__form .contactWrap .formInputColumn textarea {
  height: 200px;
  width: 100%;
  border-radius: 5px;
  padding: 5px 15px;
}

.contactWrap__name .formInputColumn {
  display: flex;
  justify-content: space-between;
}

.contactWrap__name .formInputColumn input {
  width: 49% !important;
}

.contactWrap__tel .formInputColumn {
  display: flex;
  justify-content: space-between;
}

.contactWrap__tel .formInputColumn input {
  width: 30% !important;
}

.contactWrap__mail .formInputColumn input:first-of-type {
  margin-bottom: 20px;
}

.contactWrap__agreement {
  display: flex;
  align-items: center;
}

.contactWrap__agreement .formInputColumn {
  display: flex;
  align-items: center;
}

.contactWrap__agreementLink {
  margin-left: 10px;
}

.contactWrap__agreementLink a {
  text-decoration: underline solid 2px #37C4AE;
  transition: all .3s;
}

.contact_submitBTN {
  padding-top: 50px;
  width: 210px;
  margin: 0 auto;
}

.contact_submitBTN .submit {
  width: 210px;
  height: 60px;
  margin: 0 auto;
  background-color: #FDE57F;
  color: #2B2B2B;
  border: none;
  font-size: 1.6rem;
  border-radius: 5px;
  border-bottom: solid 3px #D95A2B;
  border-right: solid 2px #D95A2B;
}

.linkFormmailer {
  text-align: center;
  margin-top: 30px;
}

/*レスポンシブ　スマホ版*/
@media(max-width:899px) {
  .access__container {
    width: 85%;
    max-width: 450px;
    margin-top: 40px;
  }

  .access__container .access__address {
    flex-direction: column;
  }

  .access__container .access__address div {
    width: 100%;
  }

  .access__container .access__address div h3 {
    font-size: 16px;
    padding: 6px 30px;
  }

  .access__address--ogano {
    margin-bottom: 30px;
  }

  .access__container--annotation {
    font-size: 12px;
    line-height: 1.5;
  }

  .section-access__overview th {
    width: 25%;
  }

  .section-contact {
    width: 85%;
  }

  .contact__form .contact__lead {
    margin: 30px auto;
  }

  .contact__required {
    margin-bottom: 10px;
  }

  .contact__form .contactWrap {
    flex-direction: column;
  }

  .contact__form .contactWrap .formDataItem {
    width: 100%;
  }

  .contact__form .contactWrap .formInputColumn {
    width: 100%;
  }
}