@charset "UTF-8";
/* 色 */
/* 余白、フォントサイズ用 */
/* 変数ファイル */
/* -----------------------------------------------------------
    ページ固有パーツ
----------------------------------------------------------- */
.top-prize {
  margin: min(8vw, 40px) auto;
}

.top-prize__title-wrap {
  display: flex;
  justify-content: center;
}

.top-prize__title {
  color: #013B90;
  font-weight: 900;
  background-image: linear-gradient(90deg, #FFE452, #FFE452);
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 100% 35%;
}
.top-prize__title span {
  font-size: min(6.4vw, 32px);
}

.top-prize__box {
  background: #FFF;
  text-align: center;
  margin-top: min(8vw, 40px);
  padding: min(8vw, 40px) min(4vw, 20px);
  border-radius: min(3.2vw, 16px);
}

.top-prize__img {
  width: min(84vw, 420px);
  margin: 0 auto;
}

.top-prize__prod-name {
  font-size: min(5.33vw, 26px);
  font-weight: bold;
}

.top-contents-wrap {
  background: url(../image/top/bg_contents.png) no-repeat top center/cover;
  padding: min(8vw, 40px) 0;
}

.top-apply__title {
  margin-bottom: min(8vw, 40px);
  text-align: center;
}
.top-apply__title img {
  width: min(92vw, 460px);
}

.top-apply__list > li:nth-child(n+2) {
  margin-top: min(4vw, 20px);
}
.top-apply__list > li:nth-child(n+2):before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin: 0 auto min(4vw, 20px);
  border-top: solid min(6.67vw, 33px) #E3EFFA;
  border-left: solid min(10.67vw, 53px) transparent;
  border-right: solid min(10.67vw, 53px) transparent;
}

.top-apply__list-box {
  position: relative;
  padding: min(6.67vw, 33px) min(5.33vw, 26px);
  color: #FFF;
  text-align: center;
  z-index: 1;
}
.top-apply__list-box:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - min(2.67vw, 13px));
  height: calc(100% - min(2.67vw, 13px));
  border: solid 2px #FFF;
  z-index: -1;
}
.top-apply__list-box:after {
  content: "";
  background: rgba(5, 24, 100, 0.75);
  position: absolute;
  right: 0;
  bottom: 0;
  width: calc(100% - min(2.13vw, 10px));
  height: calc(100% - min(2.13vw, 10px));
  z-index: -2;
}

.top-apply__list-step {
  width: min(32vw, 160px);
  margin: 0 auto;
}

.top-apply__list-img {
  margin: min(6.67vw, 33px) auto 0;
}
.top-apply__list li:nth-child(1) .top-apply__list-img {
  width: min(24vw, 120px);
}
.top-apply__list li:nth-child(2) .top-apply__list-img {
  width: min(21.33vw, 106px);
}
.top-apply__list li:nth-child(3) .top-apply__list-img {
  width: min(19.73vw, 99px); /*74px*/
}

.top-apply__list-title {
  font-weight: bold;
  margin-top: min(6.67vw, 33px);
}

.top-apply__list-text {
  font-size: min(3.73vw, 18px);
  margin-top: min(1.33vw, 6px);
}
.top-apply__list-text .c-link--underline {
  color: #FFF !important;
}

.top-terms {
  margin-top: min(8vw, 40px);
}

.top-terms__title-wrap {
  display: flex;
  justify-content: center;
}

.top-terms__title {
  background: #FFE452;
  color: #013B90;
  font-weight: bold;
  text-align: center;
  padding: min(2.67vw, 13px) min(5.33vw, 26px);
  border: solid 2px #FFF;
  border-radius: min(13.33vw, 66px);
}

.top-terms__box {
  background: #FFF;
  margin-top: clamp(-30px, -6.13vw, 0px);
  padding: min(8.8vw, 44px) min(2vw, 10px) min(2.67vw, 13px);
  border-radius: min(3.2vw, 16px);
}

.top-terms__box-inner {
  padding: min(1.33vw, 6px) min(2vw, 10px);
  height: min(74.67vw, 373px);
  overflow-y: scroll;
}

.top-subject {
  margin-top: min(8vw, 40px);
}

.top-subject__box + .top-subject__box {
  margin-top: min(8vw, 40px);
}

.top-subject__title {
  background: #FFF;
  color: #013B90;
  font-size: min(5.33vw, 26px);
  font-weight: bold;
  text-align: center;
  margin-bottom: min(4vw, 20px);
  padding: min(1.33vw, 6px) min(2.67vw, 13px);
  border: solid 2px #013B90;
  border-radius: min(13.33vw, 66px);
}

.top-subject__text {
  font-weight: bold;
  text-align: center;
}
.top-subject__text span {
  font-size: min(3.73vw, 18px);
  font-weight: normal;
}

.top-subject__text--02 {
  font-size: min(3.73vw, 18px);
  font-weight: bold;
  text-align: center;
}

.top-subject__logo img {
  width: min(58.67vw, 293px);
}

.top-contact {
  margin: min(8vw, 40px) auto min(12vw, 60px);
}

.top-contact__title {
  background: #013B90;
  color: #FFF;
  font-size: min(5.33vw, 26px);
  font-weight: bold;
  text-align: center;
  padding: min(2.67vw, 13px) min(1.33vw, 6px);
  border-radius: min(3.2vw, 16px) min(3.2vw, 16px) 0 0;
}

.top-contact__box {
  background: #FFF;
  padding: min(8vw, 40px) min(4vw, 20px);
  border-radius: 0 0 min(3.2vw, 16px) min(3.2vw, 16px);
}

.top-contact__box-mail {
  color: #013B90;
  font-size: min(4.8vw, 24px);
  font-weight: bold;
  text-align: center;
}

.top-contact__box-list {
  margin-top: min(5.33vw, 26px);
  text-align: center;
}
.top-contact__box-list dt {
  position: relative;
  display: inline-block;
  color: #FFF;
  font-weight: bold;
  padding: min(1.33vw, 6px) min(4vw, 20px);
  z-index: 1;
}
.top-contact__box-list dt:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: #0273BD;
  transform: skewX(-10deg);
  z-index: -1;
}
.top-contact__box-list dd {
  font-weight: bold;
  margin-top: min(2.67vw, 13px);
}
.top-contact__box-list dd + dt {
  margin-top: min(4vw, 20px);
}

.top-contact__box-list02 {
  font-size: min(3.73vw, 18px);
  margin-top: min(4vw, 20px);
}

@media screen and (min-width: 501px) {
  /* ===========================================================
      タブレット縦
  =========================================================== */
}
@media screen and (min-width: 769px) {
  /* ===========================================================
      タブレット横、PC
  =========================================================== */
}