@charset "utf-8";
main .inner {height:auto;}

.main {
  max-width: 820px;
  margin: 0 auto;
}

p {
  font-size: 16px;
  line-height: 1.8;
}

#section1 .wrap {
  background-color: #fff;
  margin-bottom: 30px;
}
@media screen and (min-width:768px) {
  #section1 .wrap {
    background-color: #F4FAFB;
    margin-bottom: 160px;
  }
}

#section1 .inner {
  padding: 20px 10px;
}
@media screen and (min-width:768px) {
  #section1 .inner {
    padding: 40px;
    display: flex;
    justify-content: space-between;
    flex-flow: row-reverse;
  }
}

#section1 h1 {
  display: block;
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (min-width:768px) {
  #section1 h1 {
    margin-bottom: 50px;
    text-align: left;
  }
}

#section1 .left {
  max-width: 400px;
}
@media screen and (min-width:768px) {
  #section1 .left {}
}

#section1 .right img {
  text-align: center;
  width: 50%;
}
@media screen and (min-width:768px) {
  #section1 .right img {
    text-align: left;
    width: 100%;
  }
}

#section2 .wrap {
  margin-bottom: 30px;
}
@media screen and (min-width:768px) {
  #section2 .wrap {
    background-color: #EBF7F8;
    margin-bottom: 60px;
  }
}

#section2 .inner {
  position: relative;
  padding: 0 10px;
}
@media screen and (min-width:768px) {
  #section2 .inner {
    padding: 40px;
  }
}

#section2 .head {}
@media screen and (min-width:768px) {
  #section2 .head {
    display: flex;
    justify-content: flex-end;
  }
}

#section2 .img {}
@media screen and (min-width:768px) {
  #section2 .img {
    position: absolute;
    top: -110px;
    left: 20px;
    z-index: 1;
  }
}

#section2 h2 {
  margin: 40px 0;
}
@media screen and (min-width:768px) {
  #section2 h2 {
    width: 350px;
    position: relative;
    top: 20px;
    margin: 0;
  }
}

#section2 .text {
  max-width: 700px;
  margin: 0 auto;
}
@media screen and (min-width:768px) {
  #section2 .text {
    padding-top: 100px;
  }
}

#section3 .wrap {
  margin-bottom: 30px;
  background-color: #EBF7F8;
}
@media screen and (min-width:768px) {
  #section3 .wrap {
    margin-bottom: 60px;
  }
}

#section3 .inner {
  position: relative;
  padding: 30px 0;
}
@media screen and (min-width:768px) {
  #section3 .inner {
    padding: 40px;
  }
}

#section3 .title {
  padding: 0 10px;
}
@media screen and (min-width:768px) {
  #section3 .title {
    position: absolute;
    top: -35px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    width: 600px;
    padding: 0;
  }
}

#section3 h4 {
  font-size: 20px;
  font-weight: 700;
  text-align: left;
  margin-top: 30px;
  margin-bottom: 30px;
  padding: 0 10px;
}
@media screen and (min-width:768px) {
  #section3 h4 {
    text-align: center;
    margin-top: 0;
    padding: 0;
  }
}

#section3 .manner1 {}
@media screen and (min-width:768px) {
  #section3 .manner1 {
    margin-bottom: 20px;
  }
}

#section3 .manner-wrap {}
@media screen and (min-width:768px) {
  #section3 .manner-wrap {
    background: #fff;
    filter: drop-shadow(0px 0px 4px rgba(40,40,40,0.6));
    padding: 5px;
  }
}

#section3 .manner-title {
  font-size: 24px;
  font-weight: 700;
  color: #fff;
  background-color: #51BCB2;
  text-align: center;
  padding: 20px 0;
}
@media screen and (min-width:768px) {
  #section3 .manner-title {}
}

#section3 .manner1 .flex {}
@media screen and (min-width:768px) {
  #section3 .manner1 .flex {
    display: flex;
    justify-content: space-between;
    padding: 10px;
  }
}

#section3 .manner1 .text {
  padding: 10px;
  max-width: 390px;
}
@media screen and (min-width:768px) {
  #section3 .manner1 .text {
    padding: 0;
  }
}

#section3 .manner1 .img {}
@media screen and (min-width:768px) {
  #section3 .manner1 .img {}
}

#section3 .manner2 .manner-inner {
  padding: 0 10px;
}
@media screen and (min-width:768px) {
  #section3 .manner2 .manner-inner {
    padding: 20px 30px;
  }
}

#section3 .manner2 p {
  max-width: 600px;
  margin: 0 auto;
  padding: 20px 10px;
}

#section3 .manner2 .top {
  font-size: 18px;
}
@media screen and (min-width:768px) {
  #section3 .manner2 .top {}
}

#section3 .content .head {
  background-image: url(../img/kyouka/text_bg_sp.svg);
  background-repeat: no-repeat;
  background-position: center;
  padding: 10px 0;
  text-align: center;
  height: 50px;
}
@media screen and (min-width:768px) {
  #section3 .content .head {
    background-image: url(../img/kyouka/text_bg.svg);
    padding: 10px 0 10px 50px;
    text-align: left;
  }
}

#section3 .content .text {}
@media screen and (min-width:768px) {
  #section3 .content .text {}
}

#section3 .content .img {
  max-width: 500px;
  margin: 0 auto 30px auto;
}
@media screen and (min-width:768px) {
  #section3 .content .img {
    margin: 0 auto 40px auto;
  }
}

#section4 .wrap {
  margin-bottom: 30px;
}
@media screen and (min-width:768px) {
  #section4 .wrap {
    margin-bottom: 60px;
  }
}

#section4 .inner {}
@media screen and (min-width:768px) {
  #section4 .inner {}
}

#section4 h2 {
  width: 134px;
  text-align: center;
  margin: 30px auto;
}
@media screen and (min-width:768px) {
  #section4 h2 {
    text-align: left;
    margin: 0;
    margin-bottom: 40px;
  }
}

#section4 .content {}
@media screen and (min-width:768px) {
  #section4 .content {
    padding: 20px;
    border-bottom: 1px solid #E6E6E6;
  }
}

#section4 .flex {}
@media screen and (min-width:768px) {
  #section4 .flex {
    display: flex;
  }
}

#section4 .img {
  width: 156px;
  margin: 0 auto 30px auto;
}
@media screen and (min-width:768px) {
  #section4 .img {}
}

#section4 .details {
  text-align: center;
}
@media screen and (min-width:768px) {
  #section4 .details {
    text-align: left;
    margin-left: 40px;
  }
}

#section4 .price {
  text-align: center;
}
@media screen and (min-width:768px) {
  #section4 .price {
    text-align: left;
  }
}

#section4 .details p {
  margin-bottom: 30px;
}
@media screen and (min-width:768px) {
  #section4 .details p {}
}

#section4 .details {}
@media screen and (min-width:768px) {
  #section4 .details {
    margin-left: 40px;
  }
}

#section4 h3 {
  color: #4D4D4D;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 10px;
}
@media screen and (min-width:768px) {
  #section4 h3 {
    margin-bottom: 20px;
  }
}

#section4 .price {
  color: #51BCB2;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 20px;
}
@media screen and (min-width:768px) {
  #section4 .price {}
}

#section5 .wrap {
  background-color: #EBF7F8;
  margin-bottom: 30px;
}
@media screen and (min-width:768px) {
  #section5 .wrap {}
}

#section5 .inner {
  padding: 20px 0;
}
@media screen and (min-width:768px) {
  #section5 .inner {
    padding: 50px 30px;
  }
}

#section5 h2 {
  color: #51BCB2;
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (min-width:768px) {
  #section5 h2 {
    text-align: left;
  }
}

#section5 .payment {
  background-color: #fff;
  margin-bottom: 30px;
}
@media screen and (min-width:768px) {
  #section5 .payment {
    border-radius: 10px;
    margin-bottom: 50px;
  }
}

#section5 .payment-inner {
  padding: 20px;
}
@media screen and (min-width:768px) {
  #section5 .payment-inner {
    padding: 50px 65px;
  }
}

#section5 .payment .content {
  margin-bottom: 30px;
}
@media screen and (min-width:768px) {
  #section5 .payment .content {
    margin-bottom: 50px;
  }
}

#section5 .payment .content:last-child {
  margin-bottom: 0;
}

#section5 .payment .red {
  color: #DB4D42;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 20px;
}
@media screen and (min-width:768px) {
  #section5 .payment .red {}
}

#section5 .payment .cyan {
  color: #51BCB2;
}

#section5 .flow {}
@media screen and (min-width:768px) {
  #section5 .flow {}
}

#section5 .flow h2 {
  color: #51BCB2;
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: center;
}
@media screen and (min-width:768px) {
  #section5 .flow h2 {
    text-align: left;
  }
}

#section5 .flow .top {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: center;
}
@media screen and (min-width:768px) {
  #section5 .flow .top {}
}

#section5 .flow .content {
  border-top: 1px solid #9CD5DB;
}
@media screen and (min-width:768px) {
  #section5 .flow .content {}
}

#section5 .flow-inner {
  padding: 30px 50px;
}
@media screen and (min-width:768px) {
  #section5 .flow-inner {
    padding: 30px;
  }
}

#section5 .flow .flex {}
@media screen and (min-width:768px) {
  #section5 .flow .flex {
    display: flex;
    align-items: center;
  }
}

#section5 .flow .icon {
  width: 130px;
  height: auto;
  margin: 0 auto 20px auto;
}
@media screen and (min-width:768px) {
  #section5 .flow .icon {
    margin: 0;
  }
}

#section5 .flow .details {}
@media screen and (min-width:768px) {
  #section5 .flow .details {
    margin-left: 40px;
  }
}

#section5 .flow .cyan {
  color: #51BCB2;
  font-size: 20px;
  font-weight: 700;
}
@media screen and (min-width:768px) {
  #section5 .flow .cyan {}
}

#section5 .flow .button {
  max-width: 330px;
  height: 55px;
  margin-bottom: 5px;
}
@media screen and (min-width:768px) {
  #section5 .flow .button {
    margin-bottom: 15px;
  }
}

.pc {
  display: none;
}
@media screen and (min-width:768px) {
  .pc {
    display: block;
  }
  .sp {
    display: none;
  }
}
