@charset "UTF-8";

* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  outline: none;
  list-style: none;
}

body {
  font-size: 14px;
  line-height: 1.75;
  font-family: ‘Noto Sans Japanese’,‘Helvetica’,‘Arial’,‘Hiragino Kaku Gothic ProN’,‘ヒラギノ角ゴ ProN W3’,‘メイリオ‘, Meiryo,‘ＭＳ Ｐゴシック’,’MS PGothic’, sans-serif;
  height: auto;
  margin: 0;
  width: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.bg-puregray {
  background-color: #faf6f8;
}

.inside { 
  margin: 0 auto; 
  max-width: 900px;
  padding: 56px 0 0; 
  letter-spacing: 0.05em;
  text-align: center;
}

.inside--form { 
  margin: 0 auto; 
  padding: 32px 0 40px; 
  letter-spacing: 0.05em;
  text-align: center;
  max-width: 800px;
}

.inside-session { 
  margin: 0 auto; 
  max-width: 900px;
  padding: 32px 40px; 
  letter-spacing: 0.05em;
  text-align: center;
}

h2{
  font-size: 1.7em; 
  font-weight: bold;
  text-align: center;
  padding-bottom: 24px;
}  

h3 {
  font-size: 1.3em; 
  font-weight: bold;
  text-align: center;
  padding-bottom: 16px;
}

h4 {
  font-size: 21px; 
  font-weight: bold;
  margin: 16px 0 8px;
  display: inline-block;
  padding: 0.3rem 2rem;
  border-left: 4px solid #38A0DC;
}

.video_wrap {
  text-align: center;
  width: 50%;
  margin: 0 0 0 40px;
}

video {
  width: 100%;
  border: 1px solid #EAEEF1;
}

.video_title {
  font-weight: bold;
  text-align: center;
  margin: 24px 0 4px;
  color: #FF4881;
}

.under {
  border-bottom: solid 2px #404040;
  padding-bottom: 1px;
}

.under--gray {
  border-bottom: dashed 1px #A0979C;
}

.under--pink {
  padding-bottom: 4px;
  background: linear-gradient(transparent 60%, #FBD2E0 60%);
  line-height: 1.5;
}

.check {
  text-align: left;
  margin: 0 auto;
  display: flex;
  justify-content: space-around;
}

.check_txt,.check_txt--pink {
  font-weight: bold;
  padding: 16px 16px 16px 52px;
  text-indent: -2.2em;
  background-color: #f4eff2;
  border-radius: 28px;
  width: 32%;
}
.check_txt::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background:url(https://academybc.jp/assets/images/open-school/check.png) no-repeat left center;
  background-size: contain;
  vertical-align: bottom;
  margin-right: 10px;
}

.check_txt--pink::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background:url(https://academybc.jp/assets/images/open-school/check-pink.png) no-repeat left center;
  background-size: contain;
  vertical-align: bottom;
  margin-right: 10px;
}

.round {
  text-align: left;
  margin: auto;
  display: inline-block;
}

.round_txt,.round_txt--pink {
  text-indent: -1.6em;
  line-height: 1.4;
  padding: 11px 0 11px 1em;
}
.round_txt::before {
  content: "●";
  color: #ff6c41;
  padding-right: 11px;
  position: relative;
  top: -1px;
  font-size: 15px;
}

.round_txt--pink::before {
  content: "●";
  color: #ff4881;
  padding-right: 11px;
  position: relative;
  top: -1px;
  font-size: 15px;
}

.session_wrap {
  text-align: center;
  display: flex;
 }

.preparation {
  padding: 16px 24px;
  border-radius: 10px;
  display: inline-block;
  text-align: left;
  background-color: #fff;
}

.preparation_txt{
  font-weight: bold;
  font-size: 13px;
  line-height: 1.5;
  padding-bottom: 4px;
}

.guideline-link {
  font-size: 13px;
  text-align: center;
  padding: 1em;
  margin: 32px auto 0;
  border: solid 1px #ccc;
  line-height: 1.5;
}
.guideline-link p{
  margin: 0; 
  padding: 0;
  font-size: 13px;
}

a:hover {
  opacity: 0.7 ;
}

.inside a {
  transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);
  color: #1a73eb ;
  text-decoration: underline;
}

p {
  font-size: 16px;
}

.contents-wrap {
  text-align: center;
}

.rapid_wrap {
  text-align: center;
  padding-bottom: 56px;
}

.rapid__notice--form {
  padding: 10px 6px;
  text-align: center;
}

.rapid__notice--line {
  border-top: 1px solid #8c8b8b;
}

.rapid__notice--txt {
  padding: 16px 0 24px;
  font-weight: bold;
}

.rapid__notice--small {
  font-size: 13px;
}

.rapid__notice--small  a {
  color: #1a73eb;
  text-decoration: underline;
}

.rapid__notice--large {
  font-size:  18px;
  font-weight: bold;
}
.rapid__notice--medium {
  font-size: 16px;
  font-weight: bold;
}
.rapid__notice--red {
  font-size: 16px;
  font-weight: bold;
  color: #ef114b;
}

.rapid__notice--bg {
  font-size: 13px;
  font-weight: bold;
  background-color: #ff8bb0;
  display: inline-block;
  padding: 2px 6px;
  margin-bottom: 4px;
}

.time_wrap {
  max-width: 630px;
  margin: 0 auto;
}

.btn-wrap {
  margin: 56px 24px;
  display: flex;
  justify-content: center;
}


.method_wrap {
  display: flex;
  justify-content: center;
}

.method_txt {
  text-align: left;
  padding: 0 0 0 16px;
  line-height: 1.6;
  width: 48%;
  margin: auto 0;
}

.infection_wrap img{
  max-width: 450px;
  margin: 16px 0 0;
}


.step_wrap {
  margin: 40px 0;
}

.step {
  margin: 0 0 16px;
  text-align: left;
}

.step_img--no {
  width: 24px;
  height: 24px;
  margin-right: 10px;
}

.step_img--illust {
  width: 210px;
  display: block;
  margin: 4px auto 16px;
}

.flex {
  display: flex;
}

.step_txt {
  font-size: 13px;
}

.step_badge {
  display: flex;
  justify-content: space-evenly;
  margin: 16px;
}

.badge-img {
  height: auto;
  width: 44%;
}

.movie {
  width: 560px;
  height: 315px;
}

.top-wrap {
  text-align: center;
  display: block;
 }

.top-wrap img {
  max-width: 1500px;
  padding-top: 70px;
 }

.img-wrap {
  text-align: center;
  display: block;
 }

.img-wrap img {
 max-width: 1500px;
 text-align: center;
}

.img_wrap--form {
  text-align: center;
  display: block;
 }

.img_wrap--form img {
 max-width: 100%;
 text-align: center;
}

.btn-wrap img {
  width: 100%;
}

.enactment {
  font-size: 12px;
  line-height: 1.4;
}

.op-img {
  height: auto;
  max-width: 460px;
}

.img30 {
  width: 128px;
  position: relative;
  top: -17px;
}

@media only screen and (max-width: 767px) {
  body {
    padding: 0; 
  }
  .top-wrap img {
    width: 100%;
    padding-top: 60px;
   }
  .img-wrap img {
    width: 100%;
   }
  .img_wrap--form img {
    width: 100%;
   }
  .inside {
    padding: 24px;
  }
  .inside--form {
    padding: 12px 24px 16px;
  }
  .inside-session {
    padding: 24px;
  }
  section {
    padding: 0;
  }
  .read {
    text-align: left;
  }
  .read-link {
    text-align: left;
  }
  .guideline-link {
    text-align: left;
  }
  h2{
    font-size: 1.4em; 
    padding: 8px 0 16px;
  }  
  h3{
    font-size: 1.1em; 
    padding-bottom: 10px;
  }
  h4 {
    font-size: 16px;
    padding: 0.1rem 1rem;
    margin: 24px 0 8px;
  }
  p {
    font-size: 14px;
  }
  .contents-wrap {
    margin-bottom: 0px;
  }
  .rapid_wrap {
    padding-bottom: 0;
  }
  .btn-wrap {
    margin: 24px auto 0;
    display: block;
  }
  .method_txt {
    font-size: 13px;
    text-align: left;
    padding: 0 0 0 6px;
    line-height: 1.6;
    position: relative;
    top: 23px;
    width: 100%;
    margin: 0;
  }
  .infection_wrap p {
    text-align: left;
  }
  .check {
    display: inline-block;
  }
  .check_txt,.check_txt--pink {
    padding: 0 0 0 16px;
    font-weight: bold;
    text-indent: -1.4em;
    line-height: 1.4;
    margin: 10px 0;
    border-radius: 10px;
    width: 100%;
    background-color: #fff;
  }
  .check_txt::before {
    width: 14px;
    height: 20px;
    margin-right: 6px;
  }
  .check_txt--pink::before {
    width: 14px;
    height: 20px;
    margin-right: 6px;
  }
  .round {
    text-align: left;
    margin: 0 auto;
    display: inline-block;
  }
  .round_txt,.round_txt--pink {
    text-indent: -1.1em;
    line-height: 1.4;
    padding: 8px 0 8px 1em;
  }
  .round_txt::before {
    padding-right: 6px;
    top: -2px;
    font-size: 10px;
  }
  .round_txt--pink::before {
    padding-right: 6px;
    top: -2px;
    font-size: 10px;
  }
  .session_wrap {
    display: block;
   }
  .video_wrap {
    width: 100%;
    margin: 24px auto 0;
  }
  .preparation {
    padding: 12px 16px;
  }
  .movie {
    width: 100%;
    height: 230px;
  }
  .op-img {
    width: 100%;
  }
  .img30 {
    width: 30%;
    top: 0;
  }
}

#form .form-content_box .form-content_box-inner {
  padding: 24px 24px 16px;
  position: relative;
  max-width: 640px;
  margin: 0 auto;
}

.recaptcha_policy {
  padding: 0;
  margin: 24px 16px;
  text-align: center;
  font-size: 10px;
  color: #909090;
}

#form .form-content_box .form-content_box-inner .form-content_box-btn > input[type="submit"], #form .form-content_box .form-content_box-inner .form-content_box-btn > input[type="button"] {
  margin: 16px auto 0;
}

#form .form-content_box .form-content_box-inner .form-content_box-lists .acceptance_cf7 .wpcf7-list-item-label{
  font-weight: bold;
}

@media only screen and (min-width: 768px) {
  .rapid__notice--form {
    max-width: 520px;
    margin: 0 auto;
    padding: 16px 0;
}
  .rapid__notice--txt {
    padding: 32px 0 16px;
    max-width: 630px;
    margin: 0 auto;
  }
  .rapid__notice--small {
    max-width: 630px;
    margin: 0 auto;
  }
  .rapid__notice--large {
    font-size: 20px;
  }
}