@charset "UTF-8";
.c-container {
  width: 100%;
  max-width: 124rem;
  padding: 0 2rem;
  margin: 0 auto;
  position: relative;
  box-sizing: border-box;
}
@media screen and (max-width: 749.98px) {
  .c-container {
    padding: 0 4rem;
  }
}

.c-section-title {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 8rem;
  font-size: 5rem;
  font-weight: 700;
  line-height: 1.3;
  color: #285387;
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 749.98px) {
  .c-section-title {
    font-size: 3.4rem;
    line-height: 2;
    margin-bottom: 4rem;
  }
}
.c-btn {
  height: 8rem;
  text-align: center;
  border-radius: 1rem;
  background-color: #fff;
  padding: 0.8rem 2rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 749.98px) {
  .c-btn {
    height: 10rem;
    padding: 0.8rem 2.4rem;
  }
}
.c-btn.-line {
  height: 4rem;
  background-color: #10a146;
  position: relative;
}
@media screen and (max-width: 749.98px) {
  .c-btn.-line {
    border-radius: 0;
  }
}
.c-btn.-line span {
  display: inline-block;
  font-size: 1.3rem;
  font-weight: 700;
  color: #fff;
  padding-left: 2.6rem;
  position: relative;
}
.c-btn.-line span:before {
  content: "";
  display: block;
  width: 1.7rem;
  height: 1.2rem;
  background: transparent url("../../assets/img/common/icon_line.svg") no-repeat center center;
  background-size: contain;
  position: absolute;
  top: calc((100% - 1rem) / 2);
  left: 0;
}
.c-btn.-lesson {
  height: 4rem;
  background-color: #e8052a;
  position: relative;
}
@media screen and (max-width: 749.98px) {
  .c-btn.-lesson {
    border-radius: 0;
  }
}
.c-btn.-lesson span {
  display: inline-block;
  font-size: 1.3rem;
  font-weight: 700;
  color: #fff;
  padding-left: 2.6rem;
  position: relative;
}
.c-btn.-lesson span:before {
  content: "";
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  background: transparent url("../../assets/img/common/chalkboard-teacher-solid.svg") no-repeat center center;
  background-size: contain;
  position: absolute;
  top: calc((100% - 1.5rem) / 2);
  left: 0;
}
.c-btn.-entry {
  height: 4rem;
  border-radius: 200rem;
  background-color: #285387;
  position: relative;
}
.c-btn.-entry span {
  display: inline-block;
  font-size: 1.3rem;
  font-weight: 700;
  color: #fff;
  padding-left: 5.4rem;
  position: relative;
}
.c-btn.-entry span:before {
  content: "";
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 22" preserveAspectRatio="none"><path fill="%23fff" d="M10,0C6.14,0,3,3.14,3,7c0,2.41,1.23,4.55,3.09,5.81-3.57,1.53-6.09,5.07-6.09,9.19h2c0-2.89,1.53-5.41,3.81-6.81.67,1.65,2.31,2.81,4.19,2.81s3.52-1.16,4.19-2.81c2.29,1.41,3.81,3.92,3.81,6.81h2c0-4.12-2.53-7.66-6.09-9.19,1.86-1.26,3.09-3.4,3.09-5.81,0-3.86-3.14-7-7-7ZM10,2c2.77,0,5,2.23,5,5s-2.23,5-5,5-5-2.23-5-5,2.23-5,5-5ZM10,14c.82,0,1.6.12,2.34.34-.35.96-1.25,1.66-2.34,1.66s-2-.69-2.34-1.66c.74-.23,1.52-.34,2.34-.34Z"/></svg>');
  background-color: transparent;
  background-size: contain;
  background-position: 0 0;
  background-repeat: no-repeat;
  aspect-ratio: 20/22;
  background-size: contain;
  position: absolute;
  top: calc((100% - 2.4rem) / 2);
  left: 0;
}
.c-btn.-arrow1 {
  border-radius: 200rem;
  width: 38.6rem;
  height: 7.4rem;
  padding-right: 3rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background-color: #285387;
  position: relative;
  transition: all 0.3s ease 0s;
}
@media screen and (max-width: 749.98px) {
  .c-btn.-arrow1 {
    width: 80%;
    height: 10rem;
  }
}
.c-btn.-arrow1:after {
  content: "";
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
          clip-path: polygon(0 0, 100% 50%, 0 100%);
  background-color: #fff;
  position: absolute;
  top: calc((100% - 1.2rem) / 2);
  right: 2.5rem;
  transition: all 0.3s ease 0s;
}
@media screen and (max-width: 749.98px) {
  .c-btn.-arrow1:after {
    right: 4rem;
  }
}
.c-btn.-arrow1 span {
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 749.98px) {
  .c-btn.-arrow1 span {
    padding-left: 0;
    font-size: 2.6rem;
  }
}
@media (hover: hover) {
  .c-btn.-arrow1:hover {
    opacity: 1;
    filter: brightness(1.2);
  }
  .c-btn.-arrow1:hover:after {
    transform: translateX(0.4rem);
  }
}
.c-btn.-arrow2 {
  width: auto;
  height: auto;
  border: none;
  background-color: transparent;
  font-size: 2rem;
  font-weight: 700;
  padding-right: 4.2rem;
  padding-left: 0;
  position: relative;
  transition: all 0.3s ease 0s;
}
@media screen and (max-width: 749.98px) {
  .c-btn.-arrow2 {
    font-size: 1.5rem;
  }
}
.c-btn.-arrow2:before {
  content: "";
  display: block;
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 200rem;
  position: absolute;
  top: calc((100% - 3.4rem) / 2);
  right: 0;
  transition: all 0.3s ease 0.1s;
}
.c-btn.-arrow2:after {
  content: "";
  display: block;
  width: 1.4rem;
  height: 1.1rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 11"><path fill="%23fff" d="M13.7,4.8L8.9.3c-.4-.4-1.1-.4-1.5,0-.4.4-.4,1,0,1.4l2.8,2.7H1.1C.4,4.4,0,4.8,0,5.4s.4,1,1.1,1h9.5l-3.1,2.9c-.2.2-.3.4-.3.7,0,.6.4,1,1.1,1s.5-.1.7-.3l4.7-4.5c.4-.4.4-1,0-1.4Z"/></svg>');
  position: absolute;
  top: calc((100% - 1.1rem) / 2);
  right: 1rem;
  transform: rotateZ(-45deg);
  animation: arrow1-animate-out 0.3s ease 0s;
}
@media (hover: hover) {
  .c-btn.-arrow2:hover {
    opacity: 1;
    padding-left: 0.4rem;
  }
  .c-btn.-arrow2:hover:before {
    transform: translateX(0.4rem);
  }
  .c-btn.-arrow2:hover:after {
    animation: arrow1-animate 0.3s ease 0.2s forwards;
  }
}
.c-btn.-arrow3 {
  width: 100%;
  height: auto;
  border: none;
  background-color: transparent;
  font-size: 1.6rem;
  text-align: left;
  font-weight: 700;
  padding-right: 4.2rem;
  padding-left: 0;
  justify-content: flex-start;
  position: relative;
}
.c-btn.-arrow3:before {
  content: "";
  display: block;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 200rem;
  position: absolute;
  top: calc((100% - 3.2rem) / 2);
  right: 0;
  transition: all 0.3s ease 0.1s;
}
.c-btn.-arrow3:after {
  content: "";
  display: block;
  width: 1.4rem;
  height: 1.1rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 11"><path fill="%23fff" d="M13.7,4.8L8.9.3c-.4-.4-1.1-.4-1.5,0-.4.4-.4,1,0,1.4l2.8,2.7H1.1C.4,4.4,0,4.8,0,5.4s.4,1,1.1,1h9.5l-3.1,2.9c-.2.2-.3.4-.3.7,0,.6.4,1,1.1,1s.5-.1.7-.3l4.7-4.5c.4-.4.4-1,0-1.4Z"/></svg>');
  position: absolute;
  top: calc((100% - 1.1rem) / 2);
  right: 0.8rem;
  transition: all 0.3s ease 0s;
}
@media (hover: hover) {
  .c-btn.-arrow3:hover {
    opacity: 1;
  }
  .c-btn.-arrow3:hover:before {
    transform: translateX(0.4rem);
  }
  .c-btn.-arrow3:hover:after {
    transform: translateX(0.4rem);
  }
}
.c-btn.-arrow4 {
  height: auto;
  background-color: #fff;
  width: 28.8rem;
  border-radius: 1.5rem;
  padding: 1.6rem 1.6rem 1.6rem 2.4rem;
  transition: all 0.3s ease 0s;
}
.c-btn.-arrow4 span {
  display: block;
  width: 100%;
  text-align: left;
  padding-right: 4.8rem;
  font-size: 1.6rem;
  font-weight: 700;
  position: relative;
}
.c-btn.-arrow4 span:before {
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  border-radius: 200rem;
  position: absolute;
  top: calc((100% - 4rem) / 2);
  right: 0;
  transition: all 0.3s ease 0.1s;
}
.c-btn.-arrow4 span:after {
  content: "";
  display: block;
  width: 1.4rem;
  height: 1.1rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 11"><path fill="%23fff" d="M13.7,4.8L8.9.3c-.4-.4-1.1-.4-1.5,0-.4.4-.4,1,0,1.4l2.8,2.7H1.1C.4,4.4,0,4.8,0,5.4s.4,1,1.1,1h9.5l-3.1,2.9c-.2.2-.3.4-.3.7,0,.6.4,1,1.1,1s.5-.1.7-.3l4.7-4.5c.4-.4.4-1,0-1.4Z"/></svg>');
  position: absolute;
  top: calc((100% - 1.1rem) / 2);
  right: 1.2rem;
  transform: rotateZ(-45deg);
  animation: arrow1-animate-out 0.3s ease 0s;
}
@media (hover: hover) {
  .c-btn.-arrow4:hover {
    opacity: 1;
    padding-left: 2.7rem;
  }
  .c-btn.-arrow4:hover span:before {
    transform: translateX(0.4rem);
  }
  .c-btn.-arrow4:hover span:after {
    animation: arrow1-animate 0.3s ease 0.2s forwards;
  }
}

@keyframes arrow1-animate {
  0% {
    transform: rotateZ(-45deg);
  }
  50% {
    transform: rotateZ(0);
  }
  100% {
    transform: rotateZ(0) translateX(0.4rem);
  }
}
@keyframes arrow1-animate-out {
  0% {
    transform: rotateZ(0) translateX(0.4rem);
  }
  50% {
    transform: rotateZ(0) translateX(0);
  }
  100% {
    transform: rotateZ(-45deg);
  }
}
@media screen and (max-width: 749.98px) {
  .c-columns {
    padding-left: 0;
    padding-right: 0;
  }
}
.c-columns-items {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 4rem;
}
.c-columns-item__title {
  font-size: 1.8rem;
  line-height: 1.6666666667;
  padding: 1.2rem 0.8rem;
  position: relative;
}
@media screen and (max-width: 749.98px) {
  .c-columns-item__title {
    font-size: 2.8rem;
    padding: 2.4rem 1.6rem;
  }
}
.c-columns-item__txt {
  font-size: 1.4rem;
  line-height: 1.7142857143;
}
.c-columns-item__foot {
  padding-top: 1.2rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.c-columns-item__foot .tag {
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1;
  padding-right: 0.4rem;
}
.c-columns.-columns2 .c-columns-item {
  width: calc((100% - 4rem) / 2);
}
@media screen and (max-width: 749.98px) {
  .c-columns.-columns2 .c-columns-item {
    width: 100%;
  }
}
.c-columns.-columns3 .c-columns-item {
  width: calc((100% - 8rem) / 3);
}
@media screen and (max-width: 749.98px) {
  .c-columns.-columns3 .c-columns-item {
    width: 100%;
  }
}

.swiper {
  position: relative;
}
.swiper-slide a {
  position: relative;
}

.btn-prev,
.btn-next {
  position: absolute;
  z-index: 4;
  cursor: pointer;
}
/* 現在のスライド番号 */
/* スライド総数 */
.c-form {
  border-radius: 2rem;
}
.c-form input,
.c-form textarea,
.c-form select {
  background-color: #f2f2f2;
  padding: 0.8rem 1.2rem;
}
@media screen and (max-width: 749.98px) {
  .c-form input,
  .c-form textarea,
  .c-form select {
    padding: 1.6rem 2.4rem;
    font-size: 3.2rem;
  }
}
.c-form input {
  letter-spacing: 0.05em;
}
.c-form input[type=text].zip {
  display: inline-block;
  max-width: 20rem;
  margin-left: 0.8rem;
}
.c-form input[type=checkbox], .c-form input[type=radio] {
  width: 0;
  height: 0;
  visibility: hidden;
  opacity: 0;
}
.c-form input[type=checkbox].c-form__privacy__check, .c-form input[type=radio].c-form__privacy__check {
  visibility: visible;
  opacity: 1;
  width: 2rem;
  height: 2rem;
  display: inline-block;
}
@media screen and (max-width: 749.98px) {
  .c-form input[type=checkbox].c-form__privacy__check, .c-form input[type=radio].c-form__privacy__check {
    width: 4rem;
    height: 4rem;
  }
}
.c-form input::-moz-placeholder {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
}
.c-form input::placeholder {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 749.98px) {
  .c-form input::-moz-placeholder {
    font-size: 3.2rem;
  }
  .c-form input::placeholder {
    font-size: 3.2rem;
  }
}
.c-form textarea {
  height: 12rem;
  resize: vertical;
}
@media screen and (max-width: 749.98px) {
  .c-form textarea {
    padding: 1.6rem 2.4rem;
    height: 24rem;
  }
}
.c-form textarea::-moz-placeholder {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
}
.c-form textarea::placeholder {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 749.98px) {
  .c-form textarea::-moz-placeholder {
    font-size: 3.2rem;
  }
  .c-form textarea::placeholder {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 749.98px) {
  .c-form select {
    font-size: 3rem;
  }
}
.c-form__title {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
}
.c-form__txt {
  margin-top: 2rem;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.6;
}
@media screen and (max-width: 749.98px) {
  .c-form__txt {
    text-align: left;
  }
}
.c-form__item {
  padding: 1.7rem 0;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 749.98px) {
  .c-form__item {
    display: block;
  }
}
.c-form__item:first-of-type {
  margin-top: 3rem;
}
.c-form__item dt {
  width: 28rem;
  font-size: 1.6rem;
  color: #285387;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 2rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__item dt {
    font-size: 3rem;
    width: 100%;
    justify-content: flex-start;
    margin-bottom: 0.8rem;
  }
}
.c-form__item dt span {
  font-size: 1rem;
  font-weight: 400;
  padding: 0.2rem 0.8rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__item dt span {
    font-size: 2rem;
    margin-left: 0.8rem;
  }
}
.c-form__item dt span.required {
  background-color: #d9b70d;
  color: #fff;
}
.c-form__item dt span.optional {
  background-color: #a5a5a5;
  color: #fff;
}
.c-form__item dd {
  width: calc(100% - 28rem);
  padding-left: 1.6rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__item dd {
    width: 100%;
    padding-left: 0;
  }
}
.c-form__item dd .item-zip {
  display: flex;
  align-items: center;
  margin-bottom: 1.6rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__item dd .item-zip {
    font-size: 2.6rem;
  }
}
.c-form__item.-default strong,
.c-form__item.-default span {
  display: block;
}
.c-form__item.-default strong {
  font-size: 1.4rem;
  font-weight: 700;
}
.c-form__item.-default span {
  font-size: 1.2rem;
  font-weight: 500;
  margin-top: 0.4rem;
}
.c-form__item.-datetime dd {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.4rem 3.2rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__item.-datetime dd {
    justify-content: space-between;
    gap: 0.4rem;
  }
}
.c-form__item.-datetime dd p {
  display: inline-flex;
  width: 21rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__item.-datetime dd p {
    width: calc((100% - 3.2rem) / 2);
  }
}
.c-form__item.-datetime dd p input,
.c-form__item.-datetime dd p select {
  width: 100%;
}
.c-form__item.-datetime dd .time-box {
  display: inline-flex;
  align-items: center;
}
@media screen and (max-width: 749.98px) {
  .c-form__item.-datetime dd .time-box {
    font-size: 2.6rem;
  }
}
.c-form__item.-datetime dd .time-box select {
  max-width: 13rem;
  margin-left: 0.4rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__item.-datetime dd .time-box select {
    max-width: none;
    width: calc(100% - 9rem);
  }
}
.c-form__item.-datetime dd .c-form__error {
  width: 100%;
}
.c-form__item.-message dt {
  align-items: flex-start;
  padding-top: 0.8rem;
}
.c-form__item.-subject {
  padding-bottom: 4rem;
}
.c-form__item.-subject dd {
  position: relative;
}
.c-form__item.-subject dd .comment {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.4rem;
  position: absolute;
  right: 0;
  bottom: -2.4rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__item.-subject dd .comment {
    font-size: 2.2rem;
    bottom: auto;
    top: -6rem;
  }
}
.c-form__item.dt-top dt {
  align-items: flex-start;
  padding-top: 1.2rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__item.dt-top dt {
    align-items: center;
  }
}
.c-form__item.dt-top dt span {
  transform: translateY(0.4rem);
}
@media screen and (max-width: 749.98px) {
  .c-form__item.dt-top dt span {
    transform: translateY(0);
  }
}
.c-form__item.dt-check dt {
  align-items: flex-start;
  padding-top: 0.2rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__item.dt-check dt {
    align-items: center;
  }
}
.c-form__item.dt-check dt span {
  transform: translateY(0.4rem);
}
@media screen and (max-width: 749.98px) {
  .c-form__item.dt-check dt span {
    transform: translateY(0);
  }
}
.c-form__consent {
  padding-top: 2.4rem;
}
.c-form-lesson {
  background-color: rgba(153, 180, 191, 0.15);
  padding: 3rem 9rem;
  border-radius: 1rem;
  margin-bottom: 1.6rem;
}
@media screen and (max-width: 749.98px) {
  .c-form-lesson {
    padding: 3.2rem 3.6rem;
  }
}
.c-form-lesson-title {
  font-size: 1.6rem;
  color: #285387;
  font-weight: 700;
}
@media screen and (max-width: 749.98px) {
  .c-form-lesson-title {
    font-size: 2.8rem;
  }
}
.c-form-lesson-list {
  margin-top: 0.8rem;
}
.c-form-lesson-list li {
  padding-left: 2.4rem;
  position: relative;
}
@media screen and (max-width: 749.98px) {
  .c-form-lesson-list li {
    font-size: 2.6rem;
    padding-left: 2rem;
    letter-spacing: 0;
  }
}
.c-form-lesson-list li:before {
  content: "";
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 200rem;
  background-color: #d9b70d;
  position: absolute;
  top: 0.9rem;
  left: 0;
}
@media screen and (max-width: 749.98px) {
  .c-form-lesson-list li:before {
    top: 2rem;
  }
}
.c-form-lesson-table {
  display: flex;
  margin-top: 1.2rem;
}
@media screen and (max-width: 749.98px) {
  .c-form-lesson-table {
    display: block;
  }
}
.c-form-lesson-table-item {
  width: 50%;
  font-weight: 700;
  text-align: center;
  background-color: #fff;
  border: 1px solid #99b4bf;
  padding: 0.6rem;
}
@media screen and (max-width: 749.98px) {
  .c-form-lesson-table-item {
    width: 100%;
    font-size: 3.2rem;
    line-height: 1.5;
  }
}
.c-form-lesson-table-item span {
  display: inline-block;
  color: #285387;
}
.c-form-lesson-table-item:first-of-type {
  border-right-width: 0;
}
@media screen and (max-width: 749.98px) {
  .c-form-lesson-table-item:first-of-type {
    border-right-width: 1px;
    border-bottom-width: 0;
  }
}
.c-form-check-list {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
@media screen and (max-width: 749.98px) {
  .c-form-check-list {
    display: block;
  }
}
.c-form-check-list li {
  display: inline-table;
  margin-right: 1.6rem;
}
@media screen and (max-width: 749.98px) {
  .c-form-check-list li {
    display: block;
  }
}
.c-form__checkbox {
  width: 0;
  height: 0;
  opacity: 0;
  visibility: hidden;
  display: flex;
  align-items: center;
}
.c-form__checkbox-label {
  padding-left: 2.4rem;
  font-size: 1.6rem;
  position: relative;
}
@media screen and (max-width: 749.98px) {
  .c-form__checkbox-label {
    padding-left: 4rem;
    font-size: 3rem;
    letter-spacing: 0;
    display: block;
  }
}
.c-form__checkbox-label:before {
  content: "";
  display: block;
  display: inline-block;
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 0.3rem;
  background-color: #fff;
  border: 1px solid #285387;
  transition: background-color 0.2s ease 0s;
  position: absolute;
  top: 0.4rem;
  left: 0;
}
@media screen and (max-width: 749.98px) {
  .c-form__checkbox-label:before {
    width: 2.6rem;
    height: 2.6rem;
    top: 1.8rem;
  }
}
.c-form__checkbox:checked + .c-form__checkbox-label:before {
  background-color: #285387;
}
.c-form__privacy {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  margin-top: 6rem;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media screen and (max-width: 749.98px) {
  .c-form__privacy {
    align-items: flex-start;
  }
}
.c-form__privacy input[type=checkbox] {
  display: inline-block;
}
@media screen and (max-width: 749.98px) {
  .c-form__privacy input[type=checkbox] {
    margin-top: 0.6rem;
    width: 4rem;
  }
}
.c-form__privacy label {
  margin-left: 1.2rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__privacy label {
    font-size: 2.6rem;
    width: calc(100% - 4rem - 0.4rem);
  }
}
.c-form__privacy label a {
  display: inline;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.4rem;
}
.c-form__submit {
  padding-top: 4.8rem;
  text-align: center;
}
@media screen and (max-width: 749.98px) {
  .c-form__submit {
    padding-top: 3.6rem;
  }
}
.c-form__submit .c-btn {
  border-radius: 200rem;
  background-color: #285387;
  color: #fff;
  font-size: 2rem;
  width: 32rem;
  height: 6rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 749.98px) {
  .c-form__submit .c-btn {
    font-size: 3rem;
    width: 100%;
    height: 12rem;
  }
}
.c-form__error {
  color: #e8052a;
}
@media screen and (max-width: 749.98px) {
  .c-form__error {
    font-size: 2.6rem;
  }
}
.c-form__error.-pp {
  margin-left: 1.6rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__error.-pp {
    width: 100%;
    margin-left: 0;
  }
}
.c-form__error-summary {
  background-color: rgba(232, 5, 42, 0.85);
  padding: 3rem 4rem;
  margin-top: 4rem;
  border-radius: 2rem;
  color: #fff;
}
.c-form__error-summary > p {
  font-weight: 700;
}
@media screen and (max-width: 749.98px) {
  .c-form__error-summary > p {
    font-size: 2.6rem;
  }
}
.c-form__error-summary ul {
  margin-top: 0.8rem;
}
.c-form__error-summary ul li {
  padding-left: 2.4rem;
  margin-top: 0.4rem;
  position: relative;
}
@media screen and (max-width: 749.98px) {
  .c-form__error-summary ul li {
    font-size: 2.6rem;
  }
}
.c-form__error-summary ul li:before {
  content: "";
  display: block;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 200rem;
  background-color: #fff;
  position: absolute;
  top: 1.3rem;
  left: 0.4rem;
}
@media screen and (max-width: 749.98px) {
  .c-form__error-summary ul li:before {
    top: 2.3rem;
  }
}

@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
body.subpage {
  background-color: #f5f7f8;
}
@media screen and (max-width: 749.98px) {
  body.subpage .ui-datepicker {
    width: 50rem;
  }
}
@media screen and (max-width: 749.98px) {
  body.subpage .ui-datepicker .ui-datepicker-title {
    font-size: 3.2rem;
  }
}
body.subpage .ui-datepicker .ui-datepicker-prev,
body.subpage .ui-datepicker .ui-datepicker-next {
  top: 1.6rem;
}
@media screen and (max-width: 749.98px) {
  body.subpage .ui-datepicker th,
  body.subpage .ui-datepicker td {
    font-size: 3.2rem;
  }
}

/*************************
contact common
************************ */
.p-contact {
  margin-top: 8rem;
  padding-bottom: 16rem;
}
@media screen and (max-width: 749.98px) {
  .p-contact .c-container {
    padding: 0;
  }
}
.p-contact-form {
  background-color: #fff;
  border-radius: 2rem;
  padding: 7rem 15rem;
  filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.1));
}
@media screen and (max-width: 749.98px) {
  .p-contact-form {
    border-radius: 0;
    padding: 8rem 4rem;
  }
}
.p-contact-head-title {
  text-align: center;
  font-size: 3.2rem;
  color: #285387;
  font-weight: 700;
  letter-spacing: 0.2em;
  padding-top: 4rem;
  position: relative;
}
@media screen and (max-width: 749.98px) {
  .p-contact-head-title {
    font-size: 3.5rem;
  }
}
.p-contact-head-title:before {
  content: "";
  display: block;
  width: 4rem;
  height: 2.8rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 26 18" preserveAspectRatio="none"><path fill="%2399b4bf" d="M0.106,0.048 L0.106,17.810 L25.436,17.810 L25.436,0.048 L0.106,0.048 ZM4.307,2.022 L21.234,2.022 L12.771,7.727 L4.307,2.022 ZM2.054,2.884 L12.223,9.761 L12.771,10.100 L13.319,9.761 L23.487,2.884 L23.487,15.837 L2.054,15.837 L2.054,2.884 Z"/></svg>');
  background-color: transparent;
  background-size: contain;
  background-position: 0 0;
  background-repeat: no-repeat;
  aspect-ratio: 26/18;
  position: absolute;
  top: 0;
  left: calc((100% - 4rem) / 2);
}
.p-contact-head-title.-enrollment:before {
  content: "";
  display: block;
  height: 4rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" preserveAspectRatio="none"><path fill="%2399b4bf" d="M0,3.7v2.5h27.1v19.7H9.8v2.5h22.2v-2.5h-2.5V3.7H0ZM4.9,7.4c-2.7,0-4.9,2.2-4.9,4.9s2.2,4.9,4.9,4.9,4.9-2.2,4.9-4.9-2.2-4.9-4.9-4.9ZM12.3,8.6v2.5h6.2v-2.5h-6.2ZM20.9,8.6v2.5h3.7v-2.5h-3.7ZM4.9,9.8c1.4,0,2.5,1.1,2.5,2.5s-1.1,2.5-2.5,2.5-2.5-1.1-2.5-2.5,1.1-2.5,2.5-2.5ZM12.3,13.5v2.5h12.3v-2.5h-12.3ZM0,18.5v9.8h2.5v-7.4h3.7v7.4h2.5v-6.6l2.5,1.3c.7.4,1.6.4,2.3,0h0s4.3-2.3,4.3-2.3l-1.1-2.2-4.3,2.3-3.8-2c-.5-.3-1.1-.4-1.7-.4H0Z"/></svg>');
  background-color: transparent;
  background-size: contain;
  background-position: 0 0;
  background-repeat: no-repeat;
  aspect-ratio: 32/32;
}
.p-contact-head-title.-entry:before {
  content: "";
  display: block;
  height: 4rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 22" preserveAspectRatio="none"><path fill="%2399b4bf" d="M10,0C6.14,0,3,3.14,3,7c0,2.41,1.23,4.55,3.09,5.81-3.57,1.53-6.09,5.07-6.09,9.19h2c0-2.89,1.53-5.41,3.81-6.81.67,1.65,2.31,2.81,4.19,2.81s3.52-1.16,4.19-2.81c2.29,1.41,3.81,3.92,3.81,6.81h2c0-4.12-2.53-7.66-6.09-9.19,1.86-1.26,3.09-3.4,3.09-5.81,0-3.86-3.14-7-7-7ZM10,2c2.77,0,5,2.23,5,5s-2.23,5-5,5-5-2.23-5-5,2.23-5,5-5ZM10,14c.82,0,1.6.12,2.34.34-.35.96-1.25,1.66-2.34,1.66s-2-.69-2.34-1.66c.74-.23,1.52-.34,2.34-.34Z"/></svg>');
  background-color: transparent;
  background-size: contain;
  background-position: 0 0;
  background-repeat: no-repeat;
  aspect-ratio: 20/22;
}
.p-contact-head-txt p {
  font-size: 1.8rem;
  text-align: center;
  margin-top: 4rem;
}
@media screen and (max-width: 749.98px) {
  .p-contact-head-txt p {
    min-width: 27.6rem;
    font-size: 2.6rem;
    text-align: left;
  }
}
.p-contact-other {
  display: flex;
  justify-content: space-between;
  gap: 4px;
  padding-top: 7.2rem;
}
@media screen and (max-width: 749.98px) {
  .p-contact-other {
    display: block;
    width: calc(100% - 8rem);
    margin: 0 auto;
  }
}
.p-contact-line, .p-contact-phone {
  width: calc((100% - 4px) / 2);
  background-color: #fff;
  padding: 4rem 3.2rem;
}
@media screen and (max-width: 749.98px) {
  .p-contact-line, .p-contact-phone {
    width: 100%;
    padding: 6rem 4rem;
  }
}
.p-contact-line-txt > p, .p-contact-phone-txt > p {
  text-align: center;
  margin-top: 1.2rem;
}
@media screen and (max-width: 749.98px) {
  .p-contact-line-txt > p, .p-contact-phone-txt > p {
    font-size: 2.6rem;
    letter-spacing: 0;
  }
}
.p-contact-line {
  border-radius: 2rem 0 0 2rem;
}
@media screen and (max-width: 749.98px) {
  .p-contact-line {
    border-radius: 2rem;
  }
}
.p-contact-line .p-contact-head-title:before {
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 29 28" preserveAspectRatio="none"><path fill="%2399b4bf" d="M6.005,0.022 C2.790,0.022 0.140,2.672 0.140,5.888 L0.140,22.057 C0.140,25.271 2.790,27.922 6.005,27.922 L22.174,27.922 C25.389,27.922 28.040,25.271 28.040,22.057 L28.040,5.888 C28.040,2.672 25.389,0.022 22.174,0.022 L6.005,0.022 ZM6.005,2.559 L22.174,2.559 C24.017,2.559 25.503,4.044 25.503,5.888 L25.503,22.057 C25.503,23.900 24.017,25.386 22.174,25.386 L6.005,25.386 C4.162,25.386 2.676,23.900 2.676,22.057 L2.676,5.888 C2.676,4.044 4.162,2.559 6.005,2.559 ZM14.090,5.373 C8.997,5.373 4.856,8.732 4.856,12.863 C4.856,16.568 8.145,19.648 12.584,20.233 C12.886,20.299 13.272,20.452 13.376,20.711 C13.471,20.942 13.446,21.305 13.416,21.541 C13.416,21.541 13.322,22.195 13.297,22.334 C13.258,22.566 13.104,23.265 14.090,22.850 C15.076,22.433 19.405,19.689 21.342,17.459 C22.680,15.993 23.324,14.516 23.324,12.863 C23.324,8.732 19.182,5.373 14.090,5.373 ZM8.660,10.682 C8.928,10.682 9.136,10.891 9.136,11.158 L9.136,14.329 L10.483,14.329 C10.751,14.329 10.959,14.577 10.959,14.843 C10.959,15.112 10.751,15.319 10.483,15.319 L8.660,15.319 C8.393,15.319 8.145,15.112 8.145,14.843 L8.145,11.158 C8.145,10.891 8.393,10.682 8.660,10.682 ZM11.910,10.682 C12.178,10.682 12.386,10.891 12.386,11.158 L12.386,14.843 C12.386,15.112 12.178,15.319 11.910,15.319 C11.643,15.319 11.395,15.112 11.395,14.843 L11.395,11.158 C11.395,10.891 11.643,10.682 11.910,10.682 ZM13.416,10.682 C13.466,10.668 13.525,10.682 13.575,10.682 C13.723,10.682 13.842,10.757 13.931,10.881 L15.833,13.419 L15.833,11.158 C15.833,10.891 16.042,10.682 16.309,10.682 C16.577,10.682 16.785,10.891 16.785,11.158 L16.785,14.843 C16.785,15.052 16.666,15.216 16.468,15.281 C16.418,15.295 16.359,15.319 16.309,15.319 C16.161,15.319 16.002,15.245 15.913,15.122 L14.050,12.546 L14.050,14.843 C14.050,15.112 13.842,15.319 13.575,15.319 C13.307,15.319 13.059,15.112 13.059,14.843 L13.059,11.158 C13.059,10.950 13.218,10.747 13.416,10.682 ZM17.934,10.682 L19.757,10.682 C20.024,10.682 20.233,10.891 20.233,11.158 C20.233,11.425 20.024,11.633 19.757,11.633 L18.410,11.633 L18.410,12.505 L19.757,12.505 C20.024,12.505 20.233,12.714 20.233,12.982 C20.233,13.249 20.024,13.496 19.757,13.496 L18.410,13.496 L18.410,14.329 L19.757,14.329 C20.024,14.329 20.233,14.577 20.233,14.843 C20.233,15.112 20.024,15.319 19.757,15.319 L17.934,15.319 C17.666,15.319 17.458,15.112 17.458,14.843 L17.458,11.158 C17.458,10.891 17.666,10.682 17.934,10.682 Z"/></svg>');
  background-color: transparent;
  background-size: contain;
  background-position: 0 0;
  background-repeat: no-repeat;
  aspect-ratio: 29/28;
}
.p-contact-line-txt {
  text-align: center;
}
.p-contact-line-txt figure {
  margin-top: 3rem;
  text-align: center;
}
.p-contact-line-txt figure img {
  width: 16.6rem;
  height: auto;
}
.p-contact-phone {
  border-radius: 0 2rem 2rem 0;
}
@media screen and (max-width: 749.98px) {
  .p-contact-phone {
    border-radius: 2rem;
    margin-top: 3rem;
  }
}
.p-contact-phone .p-contact-head-title:before {
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 38 40" preserveAspectRatio="none"><path fill="%2399b4bf" d="M4.034,38.433 C6.611,40.759 12.460,39.783 16.821,37.477 C20.217,35.680 24.599,32.620 28.375,28.430 C31.926,24.487 34.738,19.563 36.174,15.996 C38.016,11.417 38.381,5.495 35.803,3.172 C34.500,1.995 31.414,0.556 30.936,0.580 C30.936,0.580 29.358,2.333 29.012,2.718 L23.721,8.591 C23.327,9.026 24.282,10.847 25.102,11.681 C26.210,12.808 28.554,13.490 28.554,13.490 C29.323,14.259 29.004,15.161 28.698,16.951 C28.323,19.151 26.116,22.100 24.052,24.531 C21.849,26.836 19.144,29.337 16.997,29.938 C15.250,30.427 14.386,30.838 13.542,30.152 C13.542,30.152 12.621,27.890 11.388,26.905 C10.473,26.173 8.565,25.412 8.172,25.849 L2.880,31.722 C2.534,32.105 0.956,33.856 0.956,33.856 C0.981,34.335 2.730,37.258 4.034,38.433 Z"/></svg>');
  background-color: transparent;
  background-size: contain;
  background-position: 0 0;
  background-repeat: no-repeat;
  aspect-ratio: 38/40;
}
.p-contact-phone-txt .tel {
  margin-top: 2rem;
}
.p-contact-phone-txt .tel a {
  display: block;
  border: 2px solid #99b4bf;
  border-radius: 2rem;
  text-align: center;
  padding: 2rem;
}
.p-contact-phone-txt .tel-nmb {
  font-weight: 700;
  font-size: 4.8rem;
  line-height: 1;
  color: #285387;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 749.98px) {
  .p-contact-phone-txt .tel-nmb {
    font-size: 6rem;
    border-radius: 0;
  }
}
.p-contact-phone-txt .tel-nmb span {
  font-size: 3rem;
  letter-spacing: 0.05em;
  display: inline-block;
  margin-right: 0.8rem;
}
@media screen and (max-width: 749.98px) {
  .p-contact-phone-txt .tel-nmb span {
    font-size: 3.6rem;
  }
}
.p-contact-phone-txt .tel-info {
  font-size: 1.4rem;
}
@media screen and (max-width: 749.98px) {
  .p-contact-phone-txt .tel-info {
    font-size: 2.2rem;
  }
}
.p-contact-phone-note {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  margin-top: 1.6rem;
}
@media screen and (max-width: 749.98px) {
  .p-contact-phone-note {
    font-size: 2.6rem;
  }
}

/*************************
contact
************************ */
/*************************
enrollment
************************ */
.page-enrollment .p-contact-form .p-contact-head-title:before {
  width: 4rem;
  height: 4rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" preserveAspectRatio="none"><path fill="%2399b4bf" d="M0,3.7v2.5h27.1v19.7H9.8v2.5h22.2v-2.5h-2.5V3.7H0ZM4.9,7.4c-2.7,0-4.9,2.2-4.9,4.9s2.2,4.9,4.9,4.9,4.9-2.2,4.9-4.9-2.2-4.9-4.9-4.9ZM12.3,8.6v2.5h6.2v-2.5h-6.2ZM20.9,8.6v2.5h3.7v-2.5h-3.7ZM4.9,9.8c1.4,0,2.5,1.1,2.5,2.5s-1.1,2.5-2.5,2.5-2.5-1.1-2.5-2.5,1.1-2.5,2.5-2.5ZM12.3,13.5v2.5h12.3v-2.5h-12.3ZM0,18.5v9.8h2.5v-7.4h3.7v7.4h2.5v-6.6l2.5,1.3c.7.4,1.6.4,2.3,0h0s4.3-2.3,4.3-2.3l-1.1-2.2-4.3,2.3-3.8-2c-.5-.3-1.1-.4-1.7-.4H0Z"/></svg>');
  background-color: transparent;
  background-size: contain;
  background-position: 0 0;
  background-repeat: no-repeat;
  aspect-ratio: 32/32;
}
.page-enrollment .p-contact-form .c-form__item.-message dt {
  position: relative;
}
@media screen and (max-width: 749.98px) {
  .page-enrollment .p-contact-form .c-form__item.-message dt {
    align-items: flex-start;
    justify-content: space-between;
  }
}
.page-enrollment .p-contact-form .c-form__item.-message dt span {
  position: absolute;
  top: 8rem;
  left: 0;
}
@media screen and (max-width: 749.98px) {
  .page-enrollment .p-contact-form .c-form__item.-message dt span {
    position: relative;
    top: auto;
    left: auto;
    transform: translateY(1.2rem);
  }
}

/*************************
confirm
************************ */
.page-confirm .c-form__item {
  align-items: flex-start;
}
.page-confirm .c-form__item.dt-top dt {
  padding-top: 0;
}
.page-confirm .c-form__submit .c-btn {
  width: 26rem;
  margin: 0 2rem;
}
.page-confirm .c-form__submit .c-btn.-back {
  background-color: #909090;
}

/*************************
thanks
************************ */
.page-thanks .p-contact-head-txt p {
  font-size: 1.6rem;
}
.page-thanks .p-contact-form {
  background-color: transparent;
  border-radius: 0;
  box-shadow: none;
}
.page-thanks .c-form__error {
  display: none;
}