/* Sass Document */
main {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background-color: #D6EBF7;
}
main::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: url(../img/common/bg_content.png) no-repeat center top;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  main::before {
    background: url(../img/common/bg_content_sp.png) no-repeat center top;
    background-size: cover;
  }
}

.wrap {
  max-width: 108rem;
  width: 90%;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .wrap {
    width: 87.277vw;
  }
}

.en {
  font-family: "Montserrat", "Myriad Pro", "Helvetica", "Arial", sans-serif;
}

.pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}

.sp {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .sp {
    display: block !important;
  }
}

.main_title_area {
  padding: 15.6rem 0 6.5rem;
  background: url(../img/common/bg_main_title_area.png) no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 1000px) {
  .main_title_area {
    padding: 14.444vw 0 6.019vw;
  }
}
@media screen and (max-width: 768px) {
  .main_title_area {
    padding: 17.812vw 0 17.303vw;
    margin-top: 83px;
    background: url(../img/common/bg_main_title_area_sp.png) no-repeat center center;
    background-size: cover;
  }
}
.main_title_area .en {
  margin-bottom: 0.3rem;
  font-size: 1.5rem;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.2;
  text-transform: uppercase;
}
@media screen and (max-width: 1000px) {
  .main_title_area .en {
    margin-bottom: 0.278vw;
    font-size: 1.389vw;
  }
}
@media screen and (max-width: 768px) {
  .main_title_area .en {
    margin-bottom: 1.272vw;
    font-size: 3.308vw;
    line-height: 1.2307692308;
  }
}
.main_title_area .main_title {
  font-size: 4.7rem;
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4468085106;
}
@media screen and (max-width: 1000px) {
  .main_title_area .main_title {
    font-size: 4.352vw;
  }
}
@media screen and (max-width: 768px) {
  .main_title_area .main_title {
    font-size: 7.634vw;
    line-height: 1.4333333333;
  }
}

#breadcrumb {
  padding: 3.5rem 0;
}
@media screen and (max-width: 1000px) {
  #breadcrumb {
    padding: 3.241vw 0;
  }
}
@media screen and (max-width: 768px) {
  #breadcrumb {
    padding: 7.634vw 0;
  }
}
#breadcrumb ul {
  display: flex;
  align-items: center;
  gap: 1rem;
  list-style: none;
}
@media screen and (max-width: 1000px) {
  #breadcrumb ul {
    gap: 0.926vw;
  }
}
@media screen and (max-width: 768px) {
  #breadcrumb ul {
    gap: 2.545vw;
  }
}
#breadcrumb ul li {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 1000px) {
  #breadcrumb ul li {
    gap: 0.926vw;
    font-size: 1.019vw;
  }
}
@media screen and (max-width: 768px) {
  #breadcrumb ul li {
    gap: 2.545vw;
    font-size: 3.053vw;
  }
}
#breadcrumb ul li a {
  text-decoration: underline;
}
#breadcrumb ul li + li:before {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-top: solid 1.25px #222;
  border-right: solid 1.25px #222;
  transform: rotate(45deg);
}
@media screen and (max-width: 1000px) {
  #breadcrumb ul li + li:before {
    width: 0.556vw;
    height: 0.556vw;
  }
}
@media screen and (max-width: 768px) {
  #breadcrumb ul li + li:before {
    width: 1.527vw;
    height: 1.527vw;
  }
}

#open_school_area {
  padding: 3.3rem 0 10rem;
}
@media screen and (max-width: 1000px) {
  #open_school_area {
    padding: 3.056vw 0 9.259vw;
  }
}
@media screen and (max-width: 768px) {
  #open_school_area {
    padding: 7.634vw 0 20.356vw;
  }
}
#open_school_area .title02 {
  margin-bottom: 1.5rem;
  font-size: 2.4rem;
  color: #0657C2;
  font-weight: 600;
  text-align: center;
  line-height: 1.5416666667;
}
@media screen and (max-width: 1000px) {
  #open_school_area .title02 {
    margin-bottom: 1.389vw;
    font-size: 2.222vw;
  }
}
@media screen and (max-width: 768px) {
  #open_school_area .title02 {
    margin-bottom: 3.817vw;
    font-size: 6.107vw;
  }
}
#open_school_area .txt {
  margin-bottom: 5rem;
}
@media screen and (max-width: 1000px) {
  #open_school_area .txt {
    margin-bottom: 4.63vw;
  }
}
@media screen and (max-width: 768px) {
  #open_school_area .txt {
    margin-bottom: 10.178vw;
  }
}
#open_school_area .txt p {
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
  line-height: 2;
}
@media screen and (max-width: 1000px) {
  #open_school_area .txt p {
    font-size: 1.389vw;
  }
}
@media screen and (max-width: 768px) {
  #open_school_area .txt p {
    font-size: 3.817vw;
  }
}
#open_school_area .box {
  max-width: 67rem;
  padding: 2.5rem 3rem 2.8rem;
  margin: 0 auto 7.8rem;
  background: #fff;
  border-radius: 0.8rem;
}
@media screen and (max-width: 1000px) {
  #open_school_area .box {
    padding: 2.315vw 2.778vw 2.593vw;
    margin: 0 auto 7.222vw;
    border-radius: 0.741vw;
  }
}
@media screen and (max-width: 768px) {
  #open_school_area .box {
    padding: 6.361vw 7.634vw 6.616vw;
    margin: 0 auto 10.178vw;
    border-radius: 2.036vw;
  }
}
#open_school_area .box:has(+ .box) {
  margin-bottom: 3rem;
}
@media screen and (max-width: 1000px) {
  #open_school_area .box:has(+ .box) {
    margin-bottom: 2.778vw;
  }
}
@media screen and (max-width: 768px) {
  #open_school_area .box:has(+ .box) {
    margin-bottom: 5.089vw;
  }
}
#open_school_area .box .title03 {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding-bottom: 1.7rem;
  margin-bottom: 2.1rem;
  font-size: 2rem;
  color: #0657C2;
  font-weight: 600;
  line-height: 1.5;
  border-bottom: 1px solid #EAEAEA;
}
@media screen and (max-width: 1000px) {
  #open_school_area .box .title03 {
    gap: 1.389vw;
    padding-bottom: 1.574vw;
    margin-bottom: 1.944vw;
    font-size: 1.852vw;
  }
}
@media screen and (max-width: 768px) {
  #open_school_area .box .title03 {
    gap: 3.817vw;
    padding-bottom: 5.089vw;
    margin-bottom: 5.089vw;
    font-size: 5.089vw;
  }
}
#open_school_area .box .orange {
  margin-top: 1.5rem;
  font-size: 1.7rem;
  color: #F96230;
  font-weight: 600;
  line-height: 1.8;
}
@media screen and (max-width: 1000px) {
  #open_school_area .box .orange {
    margin-top: 1.389vw;
    font-size: 1.574vw;
  }
}
@media screen and (max-width: 768px) {
  #open_school_area .box .orange {
    margin-top: 3.817vw;
    font-size: 4.326vw;
  }
}
#open_school_area .box dl dt {
  position: absolute;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 1000px) {
  #open_school_area .box dl dt {
    font-size: 1.389vw;
  }
}
@media screen and (max-width: 768px) {
  #open_school_area .box dl dt {
    font-size: 3.817vw;
  }
}
#open_school_area .box dl dd {
  padding-left: 3em;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 1000px) {
  #open_school_area .box dl dd {
    font-size: 1.389vw;
  }
}
@media screen and (max-width: 768px) {
  #open_school_area .box dl dd {
    font-size: 3.817vw;
  }
}
#open_school_area .box p {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 1000px) {
  #open_school_area .box p {
    font-size: 1.389vw;
  }
}
@media screen and (max-width: 768px) {
  #open_school_area .box p {
    font-size: 3.817vw;
  }
}
#open_school_area .banner {
  max-width: 40rem;
  margin: auto;
}
