@charset "UTF-8";

.sp {
  display: none;
}
.simpleFooter {
  background: #f1f1f1;
  text-align: center;
  padding: 1.75em 0;
}
.simpleFooter p {
  line-height: 1.5;
}
.registFormCont {
  max-width: calc( 1000px + 2rem );
  margin: 0 auto 10rem;
  padding: 4rem 1rem 0;
}
.registFormNotice {
  font-size: 0.75em;
  margin-bottom: 1.5em;
}
.registForm {
  margin: 0 auto 5.5em;
  font-size: 0.9375em;
  line-height: 1.5;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  border-bottom: solid 2px #f1f1f1;
}
.registForm dt {
  width: 16em;
  background: #f5f5f5;
  border-top: solid 2px #fff;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2em 0;
}
.registForm dd {
  width: calc( 100% - 16em );
  border-top: solid 2px #f1f1f1;
  padding: 2em 0 2em 5em;
}
.registFormInput,.hasDatepicker {
  border: solid 1px #cbcbcb;
  border-radius: 0.3333em;
  padding: 0.75em;
  margin: 0 0.25em;
  max-width: 90%;
}
.registFormInput.mini {
  padding: 0.25em;
}
.registFormInput:focus {
  border-color: #3782bc;
  box-shadow: 0 0 0 2px #3782bc;
}
.cbWrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}
.cbWrap .horizontal-item,
.cbWrap .mini {
  margin-bottom: 1em;
}
.cbWrap .horizontal-item:not(:last-of-type) {
  margin-right: 2em;
}
.cbWrap .horizontal-item label {
  margin-bottom: 0;
}
.mw_wp_form .cbWrap .horizontal-item + .horizontal-item {
  margin-left: 0;
}
.registForm dd label {
  margin-bottom: 1em;
}
.registForm dd label + label {
  margin-left: 1em;
}
.registFormTitle {
  margin-bottom: 0.75em;
  padding-bottom: 0.75em;
  border-bottom: solid 1px #e5e5e5;
}
.registFormRow {
  margin: 0 auto 2em;
}
.registForm2Column {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}
.registForm2Column  > .registFormTitle {
  width: 100%;
}
.registForm2Column .registFormCol {
  margin-right: 2em;
  margin-bottom: 0.5em;
}
.registForm2Column .registFormRow {
  width: 100%;
}
.registFormBtnWrap {
  text-align: center;
}
.registFormBtn {
  font-size: 1.125em;
  color: #3782bc;
  margin: 0 1.5em;
  padding: 0.875em 4.5em;
  border: solid 1px #3782bc;
  border-radius: 3em;
  position: relative;
  cursor: pointer;
}
.registFormBtn:hover {
  background: #3782bc;
  color: #fff;
}
.registFormBtn::after {
  content: "";
  display: block;
  width: 0.444em;
  height: 0.444em;
  border-right: solid 1px #3782bc;
  border-bottom: solid 1px #3782bc;
  position: absolute;
  top: 50%;
  right: 1.5em;
  transform: translateY(-50%) rotate(-45deg);
}
.registFormBtn:hover::after {
  border-right-color: #fff;
  border-bottom-color: #fff;
}
.registFormBtnBack::after {
  left: 1.5em;
  right: auto;
  transform: translateY(-50%) rotate(135deg);
}

.swiper {
  width: 100%;
  height: 35.714vw;
  position: relative;
  margin-bottom: 4.5rem;
}
.jinzaiTitle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 2.25em;
  text-align: center;
  z-index: 100;
  color: #fff;
}
.swiper-slide {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.slide1 {
  background-image: url('../../img/jinzai_slide_01.jpg');
}
.slide2 {
  background-image: url('../../img/jinzai_slide_02.jpg');
}
.slide3 {
  background-image: url('../../img/jinzai_slide_03.jpg');
}
.slide4 {
  background-image: url('../../img/jinzai_slide_04.jpg');
}
.swiper-button-next,
.swiper-button-prev {
  color: #fff;
  transform: scale(0.5);
}
.jinzaiCont {
  max-width: calc(1000px + 2rem);
  padding: 0 1rem;
  margin: 0 auto 10rem;
}
.jinzaiIntro {
  font-size: 0.875em;
  line-height: 2.5;
  text-align: justify;
  margin: 0 auto 5.75em;
  max-width: 800px;
}
.jinzaiSearchTitle {
  font-size: 1.625em;
  line-height: 1.53875;
  text-align: center;
  background: #3782bc;
  color: #fff;
  max-width: 20em;
  margin: 0 auto;
  padding: 2.75em 0.5em;
  border-radius: 0.57em;
  position: relative;
  z-index: 10;
}
.jinzaiSearchBody {
  position: relative;
  border: solid 1px #e5e5e5;
  padding: 8.5rem 6.25rem 1rem;
  border-radius: 1.25rem;
  margin: -5.5rem auto 0;
}
#searchCondi {
  display: none;
}
.searchToggle {
  display: inline-block;
  color: #3782bc;
  font-weight: bold;
  font-size: 1.125em;
  padding-left: 0.5em;
}
.searchToggle::before {
  content: "";
  display: inline-block;
  width: 0.55em;
  height: 0.55em;
  border-right: solid 2px #3782bc;
  border-bottom: solid 2px #3782bc;
  transform: translate(-50%, -50%) rotate(45deg);
  margin-right: 0.5em;
  transition: all 0.4s ease;
}
#searchCondi:checked ~ .searchToggle::before {
  transform: translate(-50%, 0%) rotate(-135deg);
}

.jinzaiSearchCondi {
  max-height: 0;
  overflow: hidden;
  transition: all 0.4s ease;
  padding-top: 4em;
}
#searchCondi:checked ~ .jinzaiSearchCondi {
  max-height: 200vh;
}
.searchCondi fieldset {
  padding: 0 0 1em;
  position: relative;
  border: none;
  margin-bottom: 2.625em;
}
.searchCondi fieldset legend {
  display: block;
  width: 100%;
  font-size: 0.9375em;
  font-weight: bold;
  margin: 0 0 0.5em;
  padding: 0 0 0.5em;
  border-bottom: solid 1px #e5e5e5;
  color: #3782bc;
}
.searchCondi fieldset button {
  border: none;
  background: none;
  padding: 0.5em 0.5em 0.5em 2em;
  font-size: 0.875em;
  line-height: 1;
  position: relative;
  margin-right: 1em;
  border-radius: 0.5em;
}
.searchCondi fieldset button:focus {
  outline: none;
}
.searchCondi fieldset button::before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0.5em;
  width: 1em;
  height: 1em;
  border: solid 1px #e5e5e5;
  background: #fff;
}
.searchCondi fieldset button:hover,
.searchCondi fieldset button.mixitup-control-active {
  color: #000;
  background: #e1ecf5;
}
.searchCondi fieldset button.mixitup-control-active::after {
  content: "";
  position: absolute;
  display: block;
  width: 0.5em;
  height: 1em;
  top: 0.375em;
  left: 0.8125em;
  border: solid 3px #3782bc;
  border-left: 0;
  border-top: 0;
  transform: rotate(45deg);
}
.searchCondiTime {
  font-size: 0.875em;
  display: inline-block;
  width: 6em;
  text-align: right;
}
.controls-pagination {
  padding: 1rem;
  font-size: 0.1px;
  text-align: center;
}
.controls-pagination:after {
  content: '';
  display: inline-block;
  width: 100%;
}
.mixitup-page-list {
  text-align: center;
  margin-bottom: 2rem;
}
.mixitup-page-stats {
  font-size: .9rem;
  color: #333;
  font-weight: bold;
}
.mixitup-page-stats strong {
  color: #3782bc;
  font-size: 1.25em;
  margin: 0 0.25em;
}
.mixitup-control {
  position: relative;
  display: inline-block;
  text-align: center;
  width: 2.7rem;
  height: 2.7rem;
  background: #fff;
  border: none;
  border-top: 3px solid transparent;
  border-bottom: 3px solid transparent;
  margin-right: 1px;
  cursor: pointer;
  font-size: .9rem;
  color: #333;
  font-weight: bold;
  transition: color 150ms, border-color 150ms;
  vertical-align: middle;
  border-radius: 0;
}
.mixitup-control:first-child {
  border-radius: 3px 0 0 3px;
}
.mixitup-control:last-child {
  border-radius: 0 3px 3px 0;
}
.mixitup-control:not(.mixitup-control-active):hover {
  color: #3782bc;
}
.mixitup-control-active {
  border-bottom-color: #3782bc;
  cursor: default;
}
.mixitup-control:disabled {
  background: #fff;
  color: #aaa;
  cursor: default;
}
.mixitup-control-truncation-marker {
  background: transparent;
  pointer-events: none;
  line-height: 2.2em;
}
.instSearchBtn {
  display: block;
  margin: 0 auto 6.5rem;
  max-width: 10em;
  border: solid 1px #3782bc;
  color: #3782bc;
  padding: 1em;
  text-align: center;
}
.instructorWrap {
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding-top: 9rem;
}
.instructorCont {
  width: 46.25%;
  margin: 0 0 5.625em;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
}
.instructorImg {
  width: 40.5%;
}
.instructorImg img {
  max-width: 100%;
  height: auto;
}
.instructorInfo {
  width: 52.5%;
  margin: auto auto 0;
}
.instructorCont .instructorInfo:last-of-type {
  width: 100%;
  margin: 1em auto 0;
}
.instructorName {
  font-size: 1.25em;
  margin: 0 0 0.9em;
}
.instructorDetail {
  font-size: 0.875em;
  line-height: 1.5;
}
.instructorDetail dt {
  display: inline;
  font-weight: normal;
  color: #666;
}
.instructorDetail dt::after {
  content: "：";
  margin: 0 0.25em;
}
.instructorCont .instructorInfo:last-of-type dt {
  display: block;
  font-weight: bold;
  color: #000;
}
.instructorCont .instructorInfo:last-of-type dt::after {
  content: "";
  margin: 0;
}
.instructorDetail dd {
  display: inline;
}
.instructorDetail dd::after {
  content: "";
  display: block;
}
.instructorCont .instructorInfo:last-of-type dd {
  display: block;
  margin-bottom: 0.5em;
}
.instructorRegist {
  max-width: 1000px;
  margin: 0 auto 10rem;
  display: flex;
  justify-content: space-between;
}
.instructorRegistBody {
  width: 50%;
  background: #3782bc;
  color: #fff;
  text-align: center;
  padding: 2rem 0;
}
.instructorRegist img {
  max-width: 50%;
  height: auto;
}
.instructorRegistTitle {
  font-size: 1.25em;
  margin: 0 auto 1em;
}
.instructorRegistTxt {
  max-width: 27em;
  margin: 0 auto 1em;
  font-size: 0.8125em;
  line-height: 1.75;
  text-align: justify;
}
.instructorRegistBtn {
  display: inline-block;
  font-size: 0.875em;
  color: #fff;
  margin: 0 1.5em;
  padding: 1em 4.5em;
  border: solid 1px #fff;
  border-radius: 3em;
  position: relative;
  cursor: pointer;
}
.instructorRegistBtn:hover {
  background: #fff;
  color: #3782bc;
}
.instructorRegistBtn::after {
  content: "";
  display: block;
  width: 0.444em;
  height: 0.444em;
  border-right: solid 1px #fff;
  border-bottom: solid 1px #fff;
  position: absolute;
  top: 50%;
  right: 1.5em;
  transform: translateY(-50%) rotate(-45deg);
}
.instructorRegistBtn:hover::after {
  border-right-color: #3782bc;
  border-bottom-color: #3782bc;
}

@media screen and (max-width: 480px) {
  .nosp {
    display: none;
  }
  .sp {
    display: block;
  }
  .registForm dt {
    width: 2em;
    -webkit-font-feature-settings: 'palt' 0;
    font-feature-settings: 'palt' 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }
  .registForm dd {
    width: calc( 100% - 2em );
    padding: 2em 0 2em 2em;
  }
  .registFormInput {
    max-width: 70vw;
  }
  .swiper {
    height: 75vw;
  }
  .jinzaiTitle {
    font-size: 1.375em;
    line-height: 1.5;
  }
  .jinzaiCont {
    padding: 0 2rem;
  }
  .jinzaiSearchTitle {
    font-size: 1.25em;
    padding: 1.5em 0.5em;
  }
  .jinzaiSearchBody {
    padding: 7rem 1rem 1px;
    font-size: 4vw;
  }
  .jinzaiSearchCondi {
    padding-top: 2em;
  }
  #searchCondi:checked ~ .jinzaiSearchCondi {
    max-height: 200vh;
  }
  .searchCondi fieldset {
    margin-bottom: 1.25em;
  }
  .searchCondiTime {
    display: block;
    text-align: left;
    margin-top: 0.5em;
  }
  .instructorCont {
    font-size: 3.25vw;
    width: 100%;
    margin: 0 auto 5.625em;
  }
  .instructorImg img,
  .instructorRegist img {
    max-width: 100%;
    height: auto;
  }
  .instructorRegist {
    max-width: 100%;
    margin: 0 auto 10rem;
    display: block;
    font-size: 3.75vw;
  }
  .instructorRegistBody {
    width: 100%;
  }
}