@charset "UTF-8";
/* icon font */
/* ==================================
 * HOW TO | ご入塾方法
 * ================================== */
/* ==================================
 * HOW TO - Steps
 * ================================== */
.howtosteps {
  background: url(/img/bg_stripe01.png) repeat;
  background-size: 0.8rem;
  padding: 8rem 0;
}
@media screen and (max-width: 767px) {
  .howtosteps {
    padding: 5rem 0;
  }
}
.howtosteps__inner {
  max-width: 86rem;
  margin: 0 auto;
  padding: 0 3rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__inner {
    padding: 0 2.5rem;
  }
}
.howtosteps__steps {
  padding-top: 2.3rem;
}
.howtosteps__steps__item {
  position: relative;
  -webkit-filter: drop-shadow(0 0.4rem 0 rgba(0, 0, 0, 0.16));
          filter: drop-shadow(0 0.4rem 0 rgba(0, 0, 0, 0.16));
  /* アイコンサイズ - 位置 */
  /* キャンペーン説明 */
  /* 保証 */
}
.howtosteps__steps__item:not(:last-child) {
  margin-bottom: 6.3rem;
}
.howtosteps__steps__item__balloon {
  width: 18.6rem;
  position: absolute;
  left: calc( 50% - 9.3rem);
  top: -2.3rem;
  border-radius: 9999px;
  background: #D13C18;
  color: #fff;
  text-align: center;
  font-size: 2rem;
  white-space: normal;
  -webkit-transition: cubic-bezier(0.165, 0.84, 0.44, 1) 1200ms;
  transition: cubic-bezier(0.165, 0.84, 0.44, 1) 1200ms;
  -webkit-transform: translateY(1.5rem);
          transform: translateY(1.5rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Barlow", "Noto Sans JP", sans-serif;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__balloon {
    width: 14.1rem;
    top: -1.75rem;
    font-size: 1.5rem;
    left: calc(50% - 7.05rem);
  }
}
.howtosteps__steps__item__balloon span {
  display: inline-block;
  color: #FFD726;
  font-size: 3.6rem;
  line-height: 4.6rem;
  padding-left: 0.1em;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__balloon span {
    font-size: 2.75rem;
    line-height: 3.5rem;
  }
}
.howtosteps__steps__item__balloon:after {
  content: "";
  display: block;
  border-width: 1.2rem 0.85rem 0 0.85rem;
  border-style: solid;
  border-color: #D13C18 transparent transparent;
  position: absolute;
  top: 98%;
  left: calc(50% - 0.85rem);
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__balloon:after {
    border-width: 1rem 0.4rem 0 0.4rem;
    left: calc(50% - 0.4rem);
  }
}
.howtosteps__steps__item.frame-in .howtosteps__steps__item__balloon {
  -webkit-transform: translateY(0rem);
          transform: translateY(0rem);
}
.howtosteps__steps__item__inner {
  border-radius: 1rem;
  background: #fff;
  overflow: hidden;
  padding: 6rem 0 0;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__inner {
    padding-top: 3.5rem;
  }
}
.howtosteps__steps__item__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 4rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__content {
    padding: 0 2.5rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.howtosteps__steps__item__content:last-child {
  padding-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__content:last-child {
    padding-bottom: 2.5rem;
  }
}
.howtosteps__steps__item__fig {
  width: 17rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 1.5rem;
}
.howtosteps__steps__item__fig img {
  display: block;
  height: auto;
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__fig {
    margin: 0 0 1.5rem;
  }
}
@media screen and (min-width: 768px) {
  .howtosteps__steps__item__body {
    width: 52rem;
  }
}
.howtosteps__steps__item__ttl {
  font-size: 2.6rem;
  line-height: 1.5;
  letter-spacing: 0;
  font-weight: 700;
  margin-bottom: 0.8rem;
}
@media screen and (max-width: 1023px) {
  .howtosteps__steps__item__ttl {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__ttl {
    font-size: 1.794rem;
  }
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__ttl {
    text-align: center;
  }
}
.howtosteps__steps__item__btn {
  margin: 0 auto;
  padding: 1rem 2.5rem 1rem 1rem;
}
.howtosteps__steps__item__btn__container {
  margin-top: 4rem;
  padding-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__btn__container {
    margin-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
}
.howtosteps__steps__item--01 .howtosteps__steps__item__fig img {
  width: 16.2rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item--01 .howtosteps__steps__item__fig img {
    width: 11.5rem;
    margin-left: -2.5rem;
  }
}
.howtosteps__steps__item--02 .howtosteps__steps__item__fig img {
  width: 11rem;
  margin-left: 5rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item--02 .howtosteps__steps__item__fig img {
    width: 7.8rem;
    margin-left: 3.5rem;
  }
}
.howtosteps__steps__item--03 .howtosteps__steps__item__fig img {
  width: 13.6rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item--03 .howtosteps__steps__item__fig img {
    width: 9.6rem;
  }
}
.howtosteps__steps__item--04 .howtosteps__steps__item__fig img {
  width: 15.3rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item--04 .howtosteps__steps__item__fig img {
    width: 10.85rem;
  }
}
.howtosteps__steps__item--05 .howtosteps__steps__item__fig img {
  width: 14.3rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item--05 .howtosteps__steps__item__fig img {
    width: 10.1rem;
  }
}
.howtosteps__steps__item__campaign {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 2rem 4rem;
  font-weight: 700;
  position: relative;
  background: url(/img/bg_stripe02.png) repeat;
  background-size: 0.8rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__campaign {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 1.5rem 2.5rem 1.5rem 10.4rem;
  }
}
.howtosteps__steps__item__campaign:before {
  content: "";
  display: block;
  height: 0.4rem;
  width: 100%;
  background-image: url(../img/howto/dotted-border-h-pc.svg);
  background-size: auto 0.4rem;
  background-position: center;
  background-repeat: repeat-x;
  position: absolute;
  top: -0.2rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__campaign:before {
    height: 0.3rem;
    top: -0.15rem;
    background-size: auto 0.2rem;
  }
}
.howtosteps__steps__item__campaign .more {
  width: 9.6rem;
  height: 6.2rem;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__campaign .more {
    position: absolute;
    top: 1.9rem;
    left: 2.5rem;
    width: 7rem;
    height: 4.75rem;
  }
}
.howtosteps__steps__item__campaign .more img {
  max-width: 100%;
  display: block;
}
.howtosteps__steps__item__campaign .condition {
  font-size: 2.1rem;
  line-height: 1.524;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__campaign .condition {
    font-size: 1.4rem;
  }
}
.howtosteps__steps__item__campaign .price-original {
  font-size: 2.1rem;
  line-height: 1.524;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__campaign .price-original {
    font-size: 1.4rem;
  }
}
.howtosteps__steps__item__campaign .price-original span {
  display: inline-block;
  font-size: 3.6rem;
  font-weight: 600;
  margin-left: 0.1em;
  position: relative;
  z-index: 1;
  font-family: "Barlow", "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__campaign .price-original span {
    font-size: 2.5rem;
  }
}
.howtosteps__steps__item__campaign .price-original span::before {
  content: "";
  height: 2px;
  width: 120%;
  display: block;
  background: #ffd726;
  position: absolute;
  top: 50%;
  -webkit-transform: rotate(-15deg);
          transform: rotate(-15deg);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .howtosteps__steps__item__campaign .price-original span::before {
    height: 4px;
  }
}
.howtosteps__steps__item__campaign .price-sale {
  color: #D13C18;
  font-size: 3.4rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__campaign .price-sale {
    font-size: 2.2rem;
  }
}
.howtosteps__steps__item__campaign .arrow {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  display: block;
  border-width: 7px 0 7px 8px;
  border-style: solid;
  border-color: transparent transparent transparent #D13C18;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__campaign .arrow {
    border-width: 5px 0 5px 6px;
  }
}
.howtosteps__steps__item__guarantee {
  position: relative;
  padding: 2.5rem 2.5rem 3rem;
  margin-top: 4rem;
  text-align: center;
  background: url(/img/prize-left.svg), url(/img/prize-right.svg);
  background-repeat: no-repeat;
  background-size: auto 70%, auto 70%;
  background-position: left 2.5rem center, right 2.5rem center;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__guarantee {
    background-position: left 1.5rem center, right 1.5rem center;
    margin-top: 2.5rem;
  }
}
.howtosteps__steps__item__guarantee:before {
  content: "";
  display: block;
  height: 0.4rem;
  width: 100%;
  background-image: url(../img/howto/dotted-border-h-pc.svg);
  background-size: auto 0.4rem;
  background-position: center;
  background-repeat: repeat-x;
  position: absolute;
  top: -0.2rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__guarantee:before {
    height: 0.3rem;
    top: -0.15rem;
    background-size: auto 0.2rem;
  }
}
.howtosteps__steps__item__guarantee .ttl {
  font-size: 2.2rem;
  font-weight: 700;
  color: #D13C18;
  margin-bottom: 1rem;
}
.howtosteps__steps__item__guarantee .ttl strong {
  font-size: 3.4rem;
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__guarantee .ttl {
    font-size: 1.4rem;
  }
  .howtosteps__steps__item__guarantee .ttl strong {
    display: block;
    font-size: 2.9rem;
    padding-top: 0.25em;
  }
}
.howtosteps__steps__item__guarantee .notation {
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 1023px) {
  .howtosteps__steps__item__guarantee .notation {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .howtosteps__steps__item__guarantee .notation {
    font-size: 1.00002rem;
  }
}

/* ==================================
 * HOW TO - Movie
 * ================================== */
.howtomovie {
  padding: 8rem 0;
}
@media screen and (max-width: 767px) {
  .howtomovie {
    padding: 5rem 0;
  }
}
.howtomovie__player {
  max-width: 80rem;
  width: calc( 100% - 6rem);
  margin: 0 auto;
}
.howtomovie__btn {
  margin: 0 auto;
}
.howtomovie__btn__container {
  padding-top: 4rem;
}
@media screen and (max-width: 767px) {
  .howtomovie__btn__container {
    padding-top: 2.5rem;
  }
}
/*# sourceMappingURL=howto.css.map */