
/* base
-------------------------------------*/
body {
  font-family: "Noto Sans JP", serif;
  background-color: #fff;
  color: #1c1c1c;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0;
  overflow-x: hidden;
  /* font-feature-settings: "palt"; */
  text-align: justify;
}
.palt {
  font-feature-settings: "palt";
}
.pc { display: block !important; }
.sp { display: none !important; }
/* リンク透明 */
a img:hover { -ms-filter: "alpha( opacity=80 )"; filter: alpha(opacity=80); opacity: 0.8; }
.btn:hover {
  opacity: 0.8;
  transition: opacity 0.3s ease-in-out;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

.f-serif {
  font-family: "Noto Serif JP", serif;
}

.f-roboto {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: weight;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

.scroll-hint {
  position: relative;
}


.btn_credit:hover, 
.btn_bank:hover {
  opacity: 0.8;
  transition: opacity 0.3s ease-in-out;
}

.footer .footer-link li a:hover {
  opacity: 0.8;
  transition: opacity 0.3s ease-in-out;
}

* {
  box-sizing: border-box;
}

html, body {
  width: 100%;
  overflow-x: hidden;
  margin: 0;
  padding: 0;
}

@media screen and (min-width: 768px), print {
.btn {
  background: url(../img/btn.png)no-repeat;
  background-size: cover;
  width: 638px;
  margin-inline: auto;
}
.btn a {
  font-size: 44px;
  font-weight: 700;
  line-height: 1.75;
  color: #FFFFFF;
  display: block;
  padding: 15px 28px 27px 0;
  text-decoration: none;
  position: relative;
}
.btn a span {
  color: #FFFF00;
}

/* fv
-------------------------------------*/
.fv {
  background: url(../img/fv.jpg) no-repeat center center;
  background-size: cover;
  text-align: center;
  position: relative;
  padding: 29px 0 3px;
}
.fv .subt {
  font-size: 50px;
  font-weight: 600;
  letter-spacing: 0em;
  padding-left: 29px;
  margin-bottom: 41px;
}
.fv .subt span {
  position: relative;
  left: -28px;
}
.fv h1 {
  font-size: 68px;
  color: #ff8000;
  display: inline-block;
  font-weight: 700;
  margin-bottom: 26px;
}
.fv h1 .span01,
.fv h1 .span02 {
  font-size: 80px;
  font-weight: 500;
  letter-spacing: 0;
  background: #ff8000;
  color: #fff;
  display: block;
}
.fv h1 .span01 {padding: 6px 21px 13px 30px;letter-spacing: 0;margin-bottom: -38px;/* letter-spacing: 0.05em; */}
.fv h1 .span02 {
  width: 485px;
  margin-inline: auto;
  padding: 6px 7px 13px 13px;
  margin-bottom: -42px;
}
.fv h1 .span03 {
  padding-left: 67px;
}
.fv h1 .span04 {position: relative;left: -9px;}
.fv h1 .span05 {position: relative;left: -21px;}
.fv h1 .span06 {position: relative;left: -1px;}
.fv h1 .span07 {position: relative;left: -2px;}
.fv h1 .span08 {position: relative;left: -17px;}
.fv .content {
  background: url(../img/fv-letter.png)no-repeat;
  background-size: cover;
  position: relative;
  width: 581px;
  margin-inline: auto;
  padding: 127px 0 88px;
  background-position: center left 13px;
}
.fv .content .subt {
  background: url(../img/fv-fukidashi.png)no-repeat;
  font-size: 30px;
  color: #FFFFFF;
  position: absolute;
  top: 23px;
  left: -62px;
  padding: 21px 17px 42px 44px;
  background-size: contain;
}
.fv .content .subt span {
  transform: rotate(-2.5deg);
  display: block;
  font-weight: 400;
}
.fv .content .txt {
  font-size: 31px;
  font-weight: 700;
  margin-bottom: 30px;
}
.fv .content .txt:last-of-type {margin: 37px 0 0;}
.fv .content .txt span {
  position: relative;
  z-index: 1;
}
.fv .content .txt span::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 50%;
  width: 91%;
  height: 13px;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}

/* sec01
-------------------------------------*/
.sec01 {
  background: #FCF1EA;
  padding: 100px 0 0;
}
.sec01 .inner {
  width: 1200px;
  margin-inline: auto;
  padding-bottom: 89px;
}
.sec01 .frame {
  background: url(../img/sec01-frame.png)no-repeat;
  background-size: contain;
  width: 881px;
  margin-inline: auto;
  position: relative;
  text-align: left;
  padding: 42px 0 46px 314px;
  margin-bottom: 72px;
}
.sec01 .frame::before {
  position: absolute;
  content: "";
  background: url(../img/sec01-illust-inframe.png)no-repeat;
  width: 180px;
  height: 254px;
  bottom: 5px;
  left: 97px;
  z-index: 2;
  background-size: contain;
}
.sec01 .frame .label {
  position: absolute;
  top: -52px;
  left: 21px;
}
.sec01 .frame .label img {
  width: 176px;
}
.sec01 .frame h2 {
  position: relative;
  font-size: 31px;
  display: inline-block;
  margin-bottom: 33px;
  color: #000;
}
.sec01 .frame h2::before,
.sec01 .frame h2::after {
  position: absolute;
  content: "";
  width: 22px;
  height: 44px;
  bottom: -15px;
}
.sec01 .frame h2::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -35px;
}
.sec01 .frame h2::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -24px;
}
.sec01 .frame h2 .bold {
  font-weight: 700;
}
.sec01 .frame h2 .large {
  font-size: 39px;
  font-weight: 700;
  position: relative;
  top: 4px;
  left: -13px;
  margin-right: 1px;
  letter-spacing: 0;
  z-index: 0;
  margin-right: -11px;
}
.sec01 .frame h2 .large::after {
  position: absolute;
  content: "";
  bottom: 0px;
  left: 53%;
  width: 100%;
  height: 17px;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}
.sec01 .frame .lead01 {
  margin-bottom: 15px;
  font-size: 56px;
  color: #3090FE;
  font-weight: 700;
}
.sec01 .frame .lead02 {
  font-size: 56px;
  color: #FF8000;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.sec01 .btnArea {
  text-align: center;
}
.sec01 .btnArea .txt {
  display: inline-block;
  text-align: center;
  font-size: 42px;
  position: relative;
  left: 2px;
  margin-bottom: 34px;
}
.sec01 .btnArea .txt::before,
.sec01 .btnArea .txt::after {
  position: absolute;
  content: "";
  width: 28px;
  height: 47px;
  bottom: -7px;
}
.sec01 .btnArea .txt::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -35px;
}
.sec01 .btnArea .txt::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -27px;
}
.sec01 .btnArea .txt .bold {
  font-weight: 700;
}
.sec01 .btnArea .txt .small {
  font-size: 37px;
}
.sec01 .btnArea .txt .orange {
  color: #FF8000;
  font-weight: 700;
  position: relative;
  top: -4px;
  left: 3px;
  letter-spacing: 0.07em;
  margin-right: 4px;
}

.sec01 .tokuten {
  background: #FFFFFF;
  padding-bottom: 68px;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
}
.sec01 .tokuten .list {
  display: grid;
  gap: 63px;
  width: 917px;
  margin-inline: auto;
  padding: 71px 0 0;
  margin-bottom: 66px;
}
.sec01 .tokuten .list li {
  background: #fcf1ea;
  position: relative;
  left: 41px;
  border: 2px solid #ff8000;
}
.sec01 .tokuten .list li .label {
  position: absolute;
  top: -30px;
  left: -84px;
}
.sec01 .tokuten .list li .label img {
  width: 168px;
}
.sec01 .tokuten .list li h3 {
  background: url(../img/sec01-tokutentit-bg.png)no-repeat;
  background-size: cover;
  font-size: 38px;
  color: #fff;
  text-shadow: 2px 2px 3px rgba(79, 63, 50, 0.4);
  padding: 23px 0 33px 94px;
  background-position: top -5px left 3px;
  letter-spacing: 0.03em;
}
.sec01 .tokuten .list li:nth-child(3) h3 {padding: 23px 0 33px 102px;}
.sec01 .tokuten .list li h3 span {font-weight: 700;font-size: 44px;letter-spacing: 0.03em;color: #ffff00;
  text-shadow:
  rgb(241, 90, 36) 4px 0px 0px,
  rgb(241, 90, 36) 3.87565px 0.989616px 0px,
  rgb(241, 90, 36) 3.51033px 1.9177px 0px,
  rgb(241, 90, 36) 2.92676px 2.72656px 0px,
  rgb(241, 90, 36) 2.16121px 3.36588px 0px,
  rgb(241, 90, 36) 1.26129px 3.79594px 0px,
  rgb(241, 90, 36) 0.282949px 3.98998px 0px,
  rgb(241, 90, 36) -0.712984px 3.93594px 0px,
  rgb(241, 90, 36) -1.66459px 3.63719px 0px,
  rgb(241, 90, 36) -2.51269px 3.11229px 0px,
  rgb(241, 90, 36) -3.20457px 2.39389px 0px,
  rgb(241, 90, 36) -3.69721px 1.52664px 0px,
  rgb(241, 90, 36) -3.95997px 0.56448px 0px,
  rgb(241, 90, 36) -3.97652px -0.432781px 0px,
  rgb(241, 90, 36) -3.74583px -1.40313px 0px,
  rgb(241, 90, 36) -3.28224px -2.28625px 0px,
  rgb(241, 90, 36) -2.61457px -3.02721px 0px,
  rgb(241, 90, 36) -1.78435px -3.57996px 0px,
  rgb(241, 90, 36) -0.843183px -3.91012px 0px,
  rgb(241, 90, 36) 0.150409px -3.99717px 0px,
  rgb(241, 90, 36) 1.13465px -3.8357px 0px,
  rgb(241, 90, 36) 2.04834px -3.43574px 0px,
  rgb(241, 90, 36) 2.83468px -2.82216px 0px,
  rgb(241, 90, 36) 3.44477px -2.03312px 0px,
  rgb(241, 90, 36) 3.84068px -1.11766px 0px,
  rgb(241, 90, 36) 3.9978px -0.132717px 0px,
  2px 2px 3px rgba(79, 63, 50, 0.4); 
}
.sec01 .tokuten .list li:nth-child(2) h3 span,
.sec01 .tokuten .list li:nth-child(3) h3 span {margin: 0 0 0 5px;}
.sec01 .tokuten .list li .content {
  padding: 19px 62px 24px 97px;
  display: grid;
  grid-template-columns: 59% 33.2727%;
  gap: 55px;
}
.sec01 .tokuten .list li:nth-child(3) .content {
  padding: 19px 62px 24px 110px;
  gap: 73px;
  grid-template-columns: 56% 33.7%;
}
.sec01 .tokuten .list li .content .txt {font-size: 23px;line-height: 1.75;text-align: justify;color: #000;padding: 3px 0 0;letter-spacing: 0.02em;}
.sec01 .btn02 a {
  font-size: 40px;
  line-height: 1.75;
  padding: 19px 0 30px 64px;
}

/* countdown
-------------------------------------*/
.countdown {
  padding: 37px 0 42px;
}
.counter {
  display: block;
  max-width: 100%;
  margin: 0 auto;
  width: 790px;
  padding: 20px;
  text-align: center;
  font-size: 38px;
  line-height: 1.5em;
  font-weight: 500;
}
.counter .label {
  margin-right: 10px;
}
.counter .num {
  font-size: 56px;
  font-weight: bold;
  margin: 0 8px;
}
.countdown .btnArea {margin: 44px 0 0;text-align: center;}
/* .countdown .btnArea .txt{
  font-size: 35px;
  font-weight: 700;
  color: #fff;
  position: relative;
  text-align: center;
  display: inline-block;
  background: url(../img/btn-txt-bg.png)no-repeat top center;
  background-size: cover;
  padding: 0 32px;
} */
/* .countdown .btnArea .btn a {
  padding: 54px 92px 96px;
  text-align: left;
  position: relative;
} */



/* sec02
-------------------------------------*/
.sec02 {
  padding: 0 0 103px;
  background: url(../img/sec02-bg.png)no-repeat center;
  background-size: cover;
}
.sec02 h2 {
  background: #3090fe;
  padding: 50px 0 31px;
  text-align: center;
  font-size: 58px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #fff;
  font-weight: 700;
  font-feature-settings: normal;
}
.sec02 h2 .span01 {
  font-size: 60.5px;
  line-height: 1;
  text-align: left;
  color: #3090fe;
  background: #fff;
  display: inline-block;
  font-weight: 600;
  padding: 13px 28px 15px;
}
.sec02 h2 .span02 {
  font-feature-settings: "palt";
}
.sec02 .content {
  padding: 89px 0 89px;
}
.sec02 .content .inner {
  width: 1200px;
  margin-inline: auto;
  position: relative;
}
.sec02 .content .inner::before {
  position: absolute;
  content: "";
  background: url(../img/sec02-illust.png)no-repeat;
  background-size: contain;
  width: 390px;
  height: 246px;
  top: -51px;
  right: 0;
}
.sec02 .content .list {
  display: grid;
  gap: 67px;
}
.sec02 .content .list li {
  font-size: 31px;
  color: #fff;
}
.sec02 .content .list li .black {
  background: #3a3a3a;
  padding: 12px 38px 11px 39px;
}
.sec02 .content .list li:nth-child(2) {position: relative;left: 40px;}
.sec02 .content .list li:nth-child(2) .black {padding: 12px 31px 11px 33px;}
.sec02 .content .list li:nth-child(3) {position: relative;left: 75px;}
.sec02 .content .list li:nth-child(3) .black {padding: 12px 32px 11px 31px;}
.sec02 .content .txt {
  font-size: 37px;
  font-weight: 700;
  text-align: center;
  margin: 0 0 0 308px;
  letter-spacing: 0.02em;
}
.sec02 .content02 {
  background: #f1f7fc;
  position: relative;
  width: 1200px;
  margin-inline: auto;
  padding: 61px 0 81px;
}
.sec02 .content02::before,
.sec02 .content02::after {
  position: absolute;
  content: "";
  background: #3090FE;

}
.sec02 .content02::before {
  bottom: 0;
  right: 0;
  width: 99.3%;
  height: 9px;
}
.sec02 .content02::after {
  bottom: 0;
  right: -8px;
  width: 9px;
  height: 99.3%;
}
.sec02 .content02 h3 {
  font-size: 29px;
  font-weight: 700;
  line-height: 1.593448;
  text-align: center;
  margin-bottom: 36px;
}
.sec02 .content02 h3 .orange {
  font-size: 35px;
  color: #FF8000;
  border-bottom: 14px solid #FFF000;
}
.sec02 .content02 .list {
  width: 1000px;
  margin-inline: auto;
  border: 1px solid #000000;
}
.sec02 .content02 .list li {
  display: grid;
  grid-template-columns: 24.5% 1fr;
}
.sec02 .content02 .list li:not(:last-child) {
  border-bottom: 1px solid #000000;
}
.sec02 .content02 .list li h4 {
  background: #3090fe;
  font-size: 28px;
  text-align: center;
  color: #ff0;
  padding: 19px 0px;
}
.sec02 .content02 .list li .txt {
  font-size: 23px;
  line-height: 1.836956;
  text-align: left;
  background: #FFFFFF;
  padding: 10px 0 10px 27px;
}
.sec02 .content02 .list li:nth-child(2) .txt {padding: 10px 0 10px 24px;}
.sec02 .content02 .list li:nth-child(3) .txt {padding: 10px 0 10px 24px;}

/* sec03
-------------------------------------*/
.sec03 .top {
  background: #ff8000;
  padding: 78px 0 98px;
  position: relative;
}
.sec03 .top::after {
  position: absolute;
  content: "";
  background: url(../img/sec03-tsunagi.png)no-repeat;
  background-size: contain;
  width: 5px;
  height: 107px;
  bottom: -54px;
  left: 50%;
  transform: translateX(-50%);
}
.sec03 .top h2 {
  font-size: 58px;
  font-weight: 700;
  line-height: 1.56896;
  text-align: center;
  color: #fff;
  margin-bottom: 61px;
  letter-spacing: 0.02em;
  padding-left: 20px;
}
.sec03 .top h2 .yellow {
  color: #FFF000;
}
.sec03 .top .list {
  width: 1200px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 38px;
}
.sec03 .top .list li {
  position: relative;
  font-size: 29px;
  letter-spacing: 0.03em;
  font-weight: 700;
  line-height: 1.75;
  text-align: center;
  background: #fff;
  padding: 42px 0 25px;
}
.sec03 .top .list li::before {
  position: absolute;
  content: "";
  background: url(../img/sec03-check.png)no-repeat;
  background-size: contain;
  width: 61px;
  height: 61px;
  top: -29px;
  left: 50%;
  transform: translateX(-50%);
}
.sec03 .bottom {
  background: #fcf1ea;
  padding: 174px 0 100px;
}
.sec03 .bottom .content {
  width: 1200px;
  margin-inline: auto;
  background: #fff;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
  text-align: center;
  padding: 0 0 70px;
}
.sec03 .bottom h3 {
  background: url(../img/sec03-fukidashi.png)no-repeat;
  background-size: cover;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  padding: 33px 0 65px 18px;
  position: relative;
  top: -77px;
  width: 1004px;
  margin-inline: auto;
  margin-bottom: -44px;
}
.sec03 .bottom h3 .orange {
  font-size: 33px;
  letter-spacing: 0.03em;
  line-height: 1.484848;
  text-align: center;
  color: #ff8000;
}
.sec03 .bottom h3 .bold {
  font-weight: 900;
  background: linear-gradient(transparent 60%, #FFF000 30%);
}
.sec03 .bottom h4 {
  font-size: 33px;
  line-height: 1.5151;
  font-weight: 700;
  text-align: center;
  position: relative;
  display: inline-block;
  margin-bottom: 51px;
}
.sec03 .bottom h4::before,
.sec03 .bottom h4::after {
  position: absolute;
  content: "";
  width: 44px;
  height: 109px;
  top: -7px;
}
.sec03 .bottom h4::before {
  background: url(../img/sec03-gekkeijyu-left.png)no-repeat;
  background-size: contain;
  left: -38px;
}
.sec03 .bottom h4::after {
  background: url(../img/sec03-gekkeijyu-right.png)no-repeat;
  background-size: contain;
  right: -38px;
}
.sec03 .bottom .subt {
  font-size: 23px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  width: 837px;
  padding: 0 0 0 114px;
  margin-bottom: 70px;
}
.sec03 .tokuten .list {
  width: 1000px;
  margin-inline: auto;
  margin-bottom: 66px;
  border: 2px solid #ff8000;
  background: #fff;
  position: relative;
}
.sec03 .tokuten .list::before {
  position: absolute;
  content: "";
  background: url(../img/sec03-illust.png)no-repeat;
  background-size: contain;
  width: 371px;
  height: 223px;
  top: -224px;
  right: -68px;
  z-index: 1;
}
.sec03 .tokuten .list li {
  position: relative;
}
.sec03 .tokuten .list li .label {
  position: absolute;
  top: -24px;
  left: -84px;
}
.sec03 .tokuten .list li .label img {
  width: 168px;
}
.sec03 .tokuten .list li h5 {
  background: url(../img/sec01-tokutentit-bg.png)no-repeat;
  background-size: cover;
  padding: 23px 0 33px 118px;
  background-position: top -5px left 3px;
  text-align: left;
  font-size: 31px;
  letter-spacing: 0.03em;
  color: #fff;
  text-shadow: 2px 2px 3px rgba(79, 63, 50, 0.4);
}
.sec03 .tokuten .list li h5 span {font-weight: 700;font-size: 44px;letter-spacing: 0.03em;color: #ffff00;
  text-shadow:
  rgb(241, 90, 36) 4px 0px 0px,
  rgb(241, 90, 36) 3.87565px 0.989616px 0px,
  rgb(241, 90, 36) 3.51033px 1.9177px 0px,
  rgb(241, 90, 36) 2.92676px 2.72656px 0px,
  rgb(241, 90, 36) 2.16121px 3.36588px 0px,
  rgb(241, 90, 36) 1.26129px 3.79594px 0px,
  rgb(241, 90, 36) 0.282949px 3.98998px 0px,
  rgb(241, 90, 36) -0.712984px 3.93594px 0px,
  rgb(241, 90, 36) -1.66459px 3.63719px 0px,
  rgb(241, 90, 36) -2.51269px 3.11229px 0px,
  rgb(241, 90, 36) -3.20457px 2.39389px 0px,
  rgb(241, 90, 36) -3.69721px 1.52664px 0px,
  rgb(241, 90, 36) -3.95997px 0.56448px 0px,
  rgb(241, 90, 36) -3.97652px -0.432781px 0px,
  rgb(241, 90, 36) -3.74583px -1.40313px 0px,
  rgb(241, 90, 36) -3.28224px -2.28625px 0px,
  rgb(241, 90, 36) -2.61457px -3.02721px 0px,
  rgb(241, 90, 36) -1.78435px -3.57996px 0px,
  rgb(241, 90, 36) -0.843183px -3.91012px 0px,
  rgb(241, 90, 36) 0.150409px -3.99717px 0px,
  rgb(241, 90, 36) 1.13465px -3.8357px 0px,
  rgb(241, 90, 36) 2.04834px -3.43574px 0px,
  rgb(241, 90, 36) 2.83468px -2.82216px 0px,
  rgb(241, 90, 36) 3.44477px -2.03312px 0px,
  rgb(241, 90, 36) 3.84068px -1.11766px 0px,
  rgb(241, 90, 36) 3.9978px -0.132717px 0px,
  2px 2px 3px rgba(79, 63, 50, 0.4); 
}
.sec03 .tokuten .list li .span02,
.sec03 .tokuten .list li .span03{margin: 0 0 0 5px;}
.sec03 .tokuten .list li .txt {font-size: 23px;line-height: 1.75;color: #000;letter-spacing: 0.01em;text-align: justify;}
.sec03 .tokuten .list li .txt-frame {
  display: grid;
  grid-template-columns: 559px 288px;
  gap: 44px;
  align-items: center;
  padding: 53px 54px 62px;
}

.sec03 .btn a {padding: 23px 9px 26px 0;font-size: 40px;line-height: 1.75;}
.sec03 .btn a::before {
  background: url(../img/sec03-btn-imasugu.png)no-repeat;
  background-size: contain;
  width: 118px;
  height: 69px;
  position: absolute;
  content: "";
  top: 8px;
  left: 12px;
}
.sec03 .btn a span {
  font-size: 40px;
  line-height: 1.75;
}

/* sec04
-------------------------------------*/
.sec04 {
  padding: 160px 0 100px;
}
.sec04 .content {
  width: 1200px;
  margin-inline: auto;
  background: #f2f8fd;
  border: 1px solid #3090fe;
  padding: 0 0 64px;
  margin-bottom: 71px;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);  
}
.sec04 .content h2 {
  background: url(../img/sec04-tit-fukidashi.png)no-repeat;
  background-size: cover;
  font-size: 45.61px;
  line-height: 1.75;
  color: #fff;
  margin-bottom: -79px;
  position: relative;
  top: -117px;
  width: 1000px;
  margin-inline: auto;
  padding: 76px 40px 57px;
  font-weight: 600;
}
.sec04 .content h2 span {
  font-feature-settings: "palt";
}
.sec04 .movie {
  margin-inline: auto;
  width: 1000px;
  padding: 0 0 24px;
}
.sec04 .movie iframe {
  height: 560px;
  width: 100%;
}
.sec04 .content .desc {
  font-size: 21px;
  line-height: 1.75;
  text-align: right;
  color: #000;
  margin-bottom: 50px;
  padding-right: 43px;
}
.sec04 .content .txt {
  font-size: 27px;
  line-height: 1.75;
  text-align: center;
  color: #000000;
  padding: 0 0 0 21px;
  margin-bottom: 28px;
}
.sec04 .content .lead {
  font-size: 30px;
  line-height: 2.6;
  text-align: center;
  color: #fff;
}
.sec04 .content .lead .span01 {
  padding: 8px 20px 16px;  
  background: #FF8000;
}
.sec04 .content .lead .span02 {
  background: #FF8000;
  padding: 8px 17px 16px;
}
.sec04 .btn a {padding: 23px 0 26px 65px;font-size: 40px;line-height: 1.75;}
.sec04 .btn a span {
  font-size: 40px;
  line-height: 1.75;
}

/* sec05
-------------------------------------*/
.sec05 {
  background-color: #FCF1EA;
  padding: 0 0 140px;
}
.sec05 h2 {
  font-size: 58px;
  font-weight: 700;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  background: url(../img/sec05-title-bg.png)no-repeat;
  background-size: cover;
  padding: 41px 0 104px;
  margin-bottom: 8px;
}
.sec05 h2 .span01 {
  display: block;
  font-size: 52px;
  line-height: 1.75;
  margin-bottom: -12px;
}
.sec05 h2 .yellow {
  color: #FFF000;
}
.sec05 .table-box {
  width: 1000px;
  margin-inline: auto;
  background: #fff;
  border: 1px solid #1c1c1c;
  margin-bottom: 24px;
}
.sec05 .table-box .list li {
  display: grid;
  grid-template-columns: 24.5% 1fr;
  border-bottom: 1px solid #1c1c1c;
}
.sec05 .table-box li h3 {
  background: #ff8000;
  font-size: 40px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  padding: 27px 0 33px;
  border-right: 1px solid #1c1c1c;
}
.sec05 .table-box li:nth-child(2) h3 {
  padding: 122px 0;
}
.sec05 .table-box li .content {
  padding: 23px 35px 0;
}
.sec05 .table-box li:nth-child(2) .content {padding: 43px 0px 32px 33px;}
.sec05 .table-box li .content .wrap {
  display: flex;
  gap: 134px;
  align-items: center;
}
.sec05 .table-box li .content .price{
  font-size: 30px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
}
.sec05 .table-box li .content .price .bold {
  font-size: 35px;
  font-weight: 700;
  position: relative;
  left: -1px;
}
.sec05 .table-box li .content .price .small {
  font-size: 25px;
  letter-spacing: 0.03em;
}
.sec05 .table-box li .content .price .month {
  position: relative;
  left: 2px;
  letter-spacing: 0;
  margin: 0 5px 0 0;
}
.sec05 .table-box li .content .free{
  font-size: 50px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #ff8000;
  position: relative;
}
.sec05 .table-box li .content .free::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-yajirushi.png)no-repeat;
  background-size: contain;
  width: 89px;
  height: 36px;
  top: 50%;
  left: -110px;
  transform: translateY(-50%);
}
.sec05 .table-box li .content .case {
  font-size: 30px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  border: 1px solid #ff8000;
  display: inline-block;
  padding: 0 14px;
  margin-bottom: -2px;
}
.sec05 .table-box li .content .price01 {
  padding: 0 0 0 6px;
  margin-bottom: 18px;
}
.sec05 .table-box li .content .price02 {
  padding: 0 0 0 6px;
}
.sec05 .desc {
  font-size: 21px;
  line-height: 1.75;
  text-align: left;
  color: #000;
  width: 991px;
  margin-inline: auto;
  padding: 0 0 95px;
}
.sec05 .cta {
  background: #ffd8c3;
  margin-bottom: 117px;
}
.sec05 .cta .inner {
  background: #ffd8c3;
  width: 1222px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 50.3923% 44.4353%;
  gap: 49px;
  padding: 70px 0 72px;
  align-items: start;
}
.sec05 .cta .inner .frame {
  background: url(../img/sec05-tokuten-frame.png)no-repeat;
  background-size: contain;
  padding: 159px 43px 32px;
  margin: 30px 0 0;
}
.sec05 .cta .inner .frame .list {
  display: grid;
  gap: 17px;
}
.sec05 .cta .inner .frame .list li {
  font-size: 24.64px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 30px;
}
.sec05 .cta .inner .frame .list li::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-tokuten-check.png)no-repeat;
  background-size: contain;
  width: 28px;
  height: 29px;
  top: 50%;
  left: -4px;
  transform: translateY(-50%);
}
.sec05 .cta .inner .frame .list li:not(:last-child)::after {
  position: absolute;
  content: "";
  background: url(../img/sec05-tokuten-line.png)no-repeat;
  background-size: contain;
  width: 100%;
  height: 3px;
  bottom: -9px;
  left: -5px;
}
.sec05 .cta .inner .btn-frame {
  display: grid;
  gap: 33px;
}
.sec05 .cta .inner .btn {
  background: url(../img/sec05-btn.png)no-repeat;
  background-size: cover;
  width: 543px;
}
.sec05 .cta .inner .btn a {
  font-size: 28px;
  line-height: 1.75;
  text-align: left;
  color: #fff;
  padding: 31px 45px 37px;
}
.sec05 .cta .inner .btn02 a {padding: 21px 0 19px 36px;}
.sec05 .cta .inner .btn03 a {padding: 32px 0 35px 0;text-align: center;}
.sec05 .cta .inner .btn a span {
  color: #fff;
  margin: 0 0 5px;
}
.sec05 .cta .inner .btn a .small {
  font-size: 20px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #fff;
  display: block;
  text-align: center;
  font-weight: 500;
  margin: -8px 0 0 -46px;
}

.sec05 .plan  {
  width: 1000px;
  margin-inline: auto;
  background: #3090fe;
  padding: 51px 57px 26px 87px;
  position: relative;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
}
.sec05 .plan::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-illust.png)no-repeat;
  width: 266px;
  height: 215px;
  top: -57px;
  right: 48px;
}
.sec05 .plan h3 {
  font-size: 42px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #ff0;
  margin-bottom: 49px;
  font-weight: 600;
  padding: 0 0 0 8px;
  position: relative;
}
.sec05 .plan h3::after {
  position: absolute;
  content: "";
  background: #FFFFFF;
  width: 611px;
  height: 5px;
  bottom: 0;
  left: 5px;
}
.sec05 .plan .txt {
  font-size: 23px;
  line-height: 1.75;
  color: #fff;
  margin-bottom: 41px;
}
.sec05 .plan .txt .yellow {
  color: #FFFF00;
}

/* sec06
-------------------------------------*/
.sec06 {
  background: #F2F8FD;
}
.sec06 .inner {
  width: 1200px;
  margin-inline: auto;
  padding: 96px 0 100px;
}
.sec06 h2 {
  font-size: 58px;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #3090fe;
  margin-bottom: 37px;
  position: relative;
  z-index: 0;
}
.sec06 h2::after {
  position: absolute;
  content: "";
  background: #FFF000;
  width: 87.8%;
  height: 19px;
  bottom: 16px;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
}
.sec06 .lead {
  font-size: 30px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  margin-bottom: 58px;
  font-weight: 700;
}
.sec06 .table {
  background: url(../img/sec06-frame.png)no-repeat;
  background-size: contain;
  padding: 58px 105px 68px;
  margin-bottom: 70px;
}
.sec06 .table .txt {
  font-size: 23px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  margin-bottom: 11px;
}
.sec06 .table .txt02 {
  font-size: 27px;
  letter-spacing: 0.03em;
  line-height: 1;
  text-align: center;
  color: #ff0;
  margin: 26px 0 20px;
}
.sec06 .table .txt02 .bg {
  background: #3090fe;
  padding: 9px 17px;
  display: inline-block;
}
.sec06 .table .txt02 .bg01 {
  margin-bottom: 14px;
}
.sec06 .fukidashi {
  background: url(../img/sec06-fukidashi.png)no-repeat;
  background-size: cover;
  width: 711px;
  margin-left: auto;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #3090fe;
  padding: 42px 0 39px 29px;
  position: relative;
  margin-right: 49px;
}
.sec06 .fukidashi::before {
  position: absolute;
  content: "";
  background: url(../img/sec06-illlust.png)no-repeat;
  background-size: contain;
  width: 428px;
  height: 324px;
  top: 0;
  left: -407px;
}

/* sec07
-------------------------------------*/
.sec07 {
  padding: 60px 0 180px;
}
.sec07 .frame {
  background: url(../img/sec07-frame.png)no-repeat;
  width: 1046px;
  margin-inline: auto;
  position: relative;
  left: -14px;
  padding: 125px 0 50px;
  margin-bottom: 68px;
  text-align: center;
}
.sec07 .frame h2 {
  font-size: 45px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 47px;
  margin-bottom: 78px;
  display: inline-block;
}
.sec07 .frame h2::before,
.sec07 .frame h2::after {
  position: absolute;
  content: "";
  width: 31px;
  height: 51px;
  bottom: 14px;
}
.sec07 .frame h2::before {
  background: url(../img/sec7-backslash.png)no-repeat;
  background-size: contain;
  left: 4px;
}
.sec07 .frame h2::after {
  background: url(../img/sec7-slash.png)no-repeat;
  background-size: contain;
  right: -33px;
}
.sec07 .frame h2 span {
  font-size: 50px;
  color: #FFFF00;
}
.sec07 .frame .list {
  display: grid;
  width: 829px;
  margin-inline: auto;
  position: relative;
  left: 14px;
  gap: 22px;
}
.sec07 .frame .list li {
  font-size: 38px;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  background: #fff;
  border: 1px solid #ff8000;
  padding: 6px 0;
}
.sec07 .btn a {padding: 23px 0 26px 37px;font-size: 40px;line-height: 1.75;text-align: center;}
.sec07 .btn a::before {
  background: url(../img/sec03-btn-imasugu.png)no-repeat;
  background-size: contain;
  width: 118px;
  height: 69px;
  position: absolute;
  content: "";
  top: 12px;
  left: 33px;
}
.sec07 .btn a span {
  font-size: 40px;
  line-height: 1.75;
}

/* sec08
-------------------------------------*/
.sec08 {
  background: #f2f8fd;
}
.sec08 .enttl {
  text-align: center;
  position: relative;
  top: -104px;
  margin-bottom: -173px;
}
.sec08 .enttl img {
  width: 471px;
  margin-inline: auto;
}
.sec08 h2 {
  font-size: 74.21px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  font-weight: 700;
  margin-bottom: 76px;
}
.sec08 .ac-area {
  width: 1000px;
  margin-inline: auto;
  display: grid;
  gap: 60px;
  padding: 0 0 100px;
}
.sec08 .ac-area .ttl-box {
  border-radius: 10px 10px 0px 0px;
  background: #3090fe;
  position: relative;
}
.sec08 .ac-area .ttl-box h3 {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: left;
  color: #fff;
  padding: 16px 0px 16px 63px;
}
.sec08 .ac-area .ttl-box h3::before {
  position: absolute;
  content: "Q. ";
  font-size: 28px;
  font-weight: 700;
  left: 22px;
  top: 50%;
  transform: translateY(-50%);
}
.sec08 .ac-area .accordion-content {
  border-radius: 10px 10px 0px 0px;
  background: #fff;
  transition: all .3s;
}
.sec08 .ac-area .accordion-content p{
  font-size: 23px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  padding: 31px 42px 43px;
}
.sec08 .ac-area .content:first-child p {
  padding: 28px 42px 36px;
}
.sec08 .ac-area .ttl-box::after {
  content: "";
  position: absolute;
  width: 32px;
  height: 32px;
  background-image: url(../img/sec08-hiraku.png);
  background-size: contain;
  top: 54%;
  right: 16px;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  transition: .3s;
}
.sec08 .ac-area .ttl-box.is-active::after {
  width: 32px;
  height: 2px;
  background-image: url(../img/sec08-tojiru.png);
  background-size: contain;
  background-repeat: no-repeat;
  transition: .3s;
}
.sec08 .ac-area .accordion-content  {
  background-color: #fff;
}
.accordion-content {
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition-duration: .3s;
}
.accordion-content.is-open {
  line-height: normal;
  height: auto;
  opacity: 1;
}

/* sec09
-------------------------------------*/
.sec09 {
  background: url(../img/sec9-bg.png)no-repeat bottom center;
  background-size: contain;
  padding: 100px 0 178px;
  margin-bottom: -81px;
}
.sec09 .frame {
  background: url(../img/sec09-frame-bg.png)no-repeat;
  background-size: contain;
  width: 882px;
  margin-inline: auto;
  position: relative;
  padding: 60px 0 39px 0;
  margin-bottom: 238px;
  text-align: center;
}
.sec09 .frame::before {
  position: absolute;
  content: "";
  background: url(../img/sec09-illust-inframe.png)no-repeat;
  width: 200px;
  height: 210px;
  bottom: -5px;
  left: -2px;
  z-index: 2;
  background-size: contain;
}
.sec09 .frame h2 {
  position: relative;
  font-size: 30px;
  font-weight: 700;
  display: inline-block;
  margin-bottom: 28px;
  color: #000;
  text-align: center;
}
.sec09 .frame h2::before,
.sec09 .frame h2::after {
  position: absolute;
  content: "";
  width: 22px;
  height: 44px;
  bottom: -11px;
}
.sec09 .frame h2::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -31px;
}
.sec09 .frame h2::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -20px;
}
.sec09 .frame h2 .line {
  position: relative;
}
.sec09 .frame h2 .line::after {
  position: absolute;
  content: "";
  bottom: 0px;
  left: 53%;
  width: 100%;
  height: 13px;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}
.sec09 .frame h3{
  margin-bottom: 35px;
  font-size: 42px;
  color: #3090FE;
  font-weight: 700;
  letter-spacing: 0.03em;
}
.sec09 .frame .orange {
  color: #FF8000;
}
.sec09 .frame .txt {
  font-size: 20px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  text-align: justify;
  margin-inline: auto;
  padding: 0 0 0 209px;
}
.sec09 .btnArea {
  text-align: center;
  position: relative;
}
.sec09 .btnArea::before {
  position: absolute;
  content: "";
  background: url(../img/sec09-illust.png)no-repeat;
  background-size: contain;
  width: 407px;
  height: 169px;
  top: -177px;
  left: 49.7%;
  transform: translateX(-50%);
}
.sec09 .btnArea .txt {
  display: inline-block;
  text-align: center;
  font-size: 40px;
  position: relative;
  margin-bottom: 31px;
}
.sec09 .btnArea .txt::before,
.sec09 .btnArea .txt::after {
  position: absolute;
  content: "";
  width: 28px;
  height: 47px;
  bottom: -1px;
}
.sec09 .btnArea .txt::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -23px;
}
.sec09 .btnArea .txt::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -27px;
}
.sec09 .btnArea .txt .orange {
  color: #FF8000;
  font-weight: 700;
  letter-spacing: 0.03em;
  font-size: 43px;
}
.sec09 .btn a {
  padding: 15px 0 27px;
}
.sec09 .countdown {
  padding: 12px 0 0px;
}
.sec09 .counter {
  font-size: 49px;
  width: 843px;
}
.sec09 .counter .label {
  font-size: 43px;
  margin-right: 10px;
}
.sec09 .counter .num {
  font-size: 63px;
  font-weight: bold;
  margin: 0 8px;
}
.sec09 .frame02 {
  background: url(../img/sec07-frame.png)no-repeat;
  width: 1046px;
  margin-inline: auto;
  position: relative;
  left: -14px;
  padding: 125px 0 50px;
  /* margin-bottom: 100px; */
  text-align: center;
}
.sec09 .frame02 h2 {
  font-size: 45px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 47px;
  margin-bottom: 78px;
  display: inline-block;
}
.sec09 .frame02 h2::before,
.sec09 .frame02 h2::after {
  position: absolute;
  content: "";
  width: 31px;
  height: 51px;
  bottom: 14px;
}
.sec09 .frame02 h2::before {
  background: url(../img/sec7-backslash.png)no-repeat;
  background-size: contain;
  left: 4px;
}
.sec09 .frame02 h2::after {
  background: url(../img/sec7-slash.png)no-repeat;
  background-size: contain;
  right: -33px;
}
.sec09 .frame02 h2 span {
  font-size: 50px;
  color: #FFFF00;
}
.sec09 .frame02 .list {
  display: grid;
  width: 829px;
  margin-inline: auto;
  position: relative;
  left: 20px;
  gap: 22px;
}
.sec09 .frame02 .list li {
  font-size: 38px;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  background: #fff;
  border: 1px solid #ff8000;
  padding: 6px 0;
}

/* footer
-------------------------------------*/
.footer {
  background-color: #FF8000;
  padding: 90px 0 107px;
}
.footer .footer-link {
  display: flex;
  justify-content: center;
  gap: 80px;
}
.footer .footer-link li a {
  font-size: 22px;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.75;
  text-decoration: none;
  letter-spacing: 0;
}
.footer .footer-link li{
  position: relative;
}
.footer .footer-link li:nth-child(1)::after{
  content: "";
  position: absolute;
  width: 1px;
  height: 22px;
  background-color: #FFFFFF;
  top: 54%;
  right: -48px;
  transform: translateY(-50%);
}
.footer .footer-link li:nth-child(2)::after {
  content: "";
  position: absolute;
  width: 1px;
  height: 22px;
  background-color: #FFFFFF;
  top: 54%;
  right: -47px;
  transform: translateY(-50%);
}
.footer .footer-txt-box {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.footer .footer-txt-box .contact-box {
  font-size: 21px;
  line-height: 1.8;
  color: #FFFFFF;
  text-align: justify;
  position: relative;
  left: 69px;
}
.footer .footer-txt-box .contact-box .logo-wrap {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 2px 0 -44px 0;
}
.footer .footer-txt-box .contact-box .logo-wrap img {
  width: 161px;
  height: 31px;
}
.footer .unei {
  display: block;
  margin-bottom: -6px;
  line-height: 1.7;
}
.footer .footer-txt-box .contact-box .mail {
  margin: 7px 0 0;
}
.footer .footer-txt-box {
  margin-top: 48px;
  text-align: center;
  background-repeat: no-repeat;
  width: 1248px;
  margin-inline: auto;
  grid-template-columns: 45.4% 1fr;
  gap: 7px;
}
.footer .footer-txt {
  font-size: 21px;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.71428;
  text-align: left;
}

.footer .copyright {
  text-align: center;
  color: #FFFFFF;
  margin-top: 56px;
  font-size: 21px;
}
}


@media screen and (min-width:2001px) {
  .btn {
    background: url(../img/btn.png)no-repeat;
    background-size: 100%;
    width: 31.884vw;
    margin-inline: auto;
  }
  .btn a {
    font-size: 2.199vw;
    font-weight: 700;
    line-height: 1.75;
    color: #FFFFFF;
    display: block;
    padding: 0.75vw 1.449vw 1.349vw 0;
    text-decoration: none;
  }
  .btn a span {
    color: #FFFF00;
  }
  
/* fv
-------------------------------------*/
.fv {
  background: url(../img/fv.jpg) no-repeat center center;
  background-size: cover;
  text-align: center;
  position: relative;
  padding: 1.449vw 0 0.15vw;
}
.fv .subt {
  font-size: 2.499vw;
  font-weight: 500;
  letter-spacing: 0em;
  padding-left: 1.449vw;
  margin-bottom: 2.049vw;
}
.fv .subt span {
  position: relative;
  left: -1.399vw;
}
.fv h1 {
  font-size: 3.398vw;
  color: #ff8000;
  display: inline-block;
  font-weight: 700;
  margin-bottom: 1.299vw;
  /* letter-spacing: 0.02em; */
}
.fv h1 .span01,
.fv h1 .span02 {
  font-size: 3.998vw;
  font-weight: 500;
  letter-spacing: 0;
  background: #ff8000;
  color: #fff;
  display: block;
}
.fv h1 .span01 {padding: 0.3vw 1.049vw 0.65vw 1.499vw;letter-spacing: 0;margin-bottom: -1.899vw;/* letter-spacing: 0.05em; */}
.fv h1 .span02 {
  width: 24.238vw;
  margin-inline: auto;
  padding: 0.3vw 0.35vw 0.65vw 0.65vw;
  margin-bottom: -2.099vw;
}
.fv h1 .span03 {
  padding-left: 3.348vw;
}
.fv h1 .span04 {position: relative;left: -0.45vw;}
.fv h1 .span05 {position: relative;left: -1.049vw;}
.fv h1 .span06 {position: relative;left: -0.05vw;}
.fv h1 .span07 {position: relative;left: -0.1vw;}
.fv h1 .span08 {position: relative;left: -0.85vw;}
.fv .content {
  background: url(../img/fv-letter.png)no-repeat;
  background-size: cover;
  position: relative;
  width: 29.035vw;
  margin-inline: auto;
  padding: 6.347vw 0 4.398vw;
  background-position: center left 13px;
}
.fv .content .subt {
  background: url(../img/fv-fukidashi.png)no-repeat;
  font-size: 1.499vw;
  color: #FFFFFF;
  position: absolute;
  top: 1.149vw;
  left: -3.098vw;
  padding: 1.049vw 0.85vw 2.099vw 2.199vw;
  background-size: contain;
}
.fv .content .subt span {
  transform: rotate(-2.5deg);
  display: block;
}
.fv .content .txt {
  font-size: 1.549vw;
  font-weight: 700;
  margin-bottom: 1.499vw;
}
.fv .content .txt:last-of-type {margin: 1.849vw 0 0;}
.fv .content .txt span {
  position: relative;
  z-index: 1;
}
.fv .content .txt span::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 50%;
  width: 91%;
  height: 0.65vw;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}

/* sec01
-------------------------------------*/
.sec01 {
  background: #FCF1EA;
  padding: 4.998vw 0 0;
}
.sec01 .inner {
  width: 59.97vw;
  margin-inline: auto;
  padding-bottom: 4.448vw;
}
.sec01 .frame {
  background: url(../img/sec01-frame.png)no-repeat;
  background-size: contain;
  width: 44.028vw;
  margin-inline: auto;
  position: relative;
  text-align: left;
  padding: 2.099vw 0 2.299vw 15.692vw;
  margin-bottom: 3.598vw;
}
.sec01 .frame::before {
  position: absolute;
  content: "";
  background: url(../img/sec01-illust-inframe.png)no-repeat;
  width: 9.895vw;
  height: 12.644vw;
  bottom: 0.25vw;
  left: 6.2vw;
  z-index: 2;
  background-size: contain;
}
.sec01 .frame .label {
  position: absolute;
  top: -2.599vw;
  left: 1.049vw;
}
.sec01 .frame .label img {
  width: 8.796vw;
}
.sec01 .frame h2 {
  position: relative;
  font-size: 1.549vw;
  display: inline-block;
  margin-bottom: 1.649vw;
  color: #000;
}
.sec01 .frame h2::before,
.sec01 .frame h2::after {
  position: absolute;
  content: "";
  width: 1.099vw;
  height: 2.199vw;
  bottom: -0.75vw;
}
.sec01 .frame h2::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -1.749vw;
}
.sec01 .frame h2::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -1.199vw;
}
.sec01 .frame h2 .bold {
  font-weight: 700;
}
.sec01 .frame h2 .large {
  font-size: 1.949vw;
  font-weight: 700;
  position: relative;
  top: 0.2vw;
  left: -0.65vw;
  margin-right: 0.05vw;
  letter-spacing: 0;
  z-index: 0;
  margin-right: -0.55vw;
}
.sec01 .frame h2 .large::after {
  position: absolute;
  content: "";
  bottom: 0px;
  left: 53%;
  width: 100%;
  height: 0.85vw;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}
.sec01 .frame .lead01 {
  margin-bottom: 0.75vw;
  font-size: 2.799vw;
  color: #3090FE;
  font-weight: 700;
}
.sec01 .frame .lead02 {
  font-size: 2.799vw;
  color: #FF8000;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.sec01 .btnArea {
  text-align: center;
}
.sec01 .btnArea .txt {
  display: inline-block;
  text-align: center;
  font-size: 2.099vw;
  position: relative;
  left: 0.1vw;
  margin-bottom: 1.699vw;
}
.sec01 .btnArea .txt::before,
.sec01 .btnArea .txt::after {
  position: absolute;
  content: "";
  width: 1.399vw;
  height: 2.349vw;
  bottom: -0.35vw;
}
.sec01 .btnArea .txt::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -1.749vw;
}
.sec01 .btnArea .txt::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -1.349vw;
}
.sec01 .btnArea .txt .bold {
  font-weight: 700;
}
.sec01 .btnArea .txt .small {
  font-size: 1.849vw;
}
.sec01 .btnArea .txt .orange {
  color: #FF8000;
  font-weight: 700;
  position: relative;
  top: -0.2vw;
  left: 0.15vw;
  letter-spacing: 0.07em;
  margin-right: 0.2vw;
}

.sec01 .tokuten {
  background: #FFFFFF;
  padding-bottom: 3.398vw;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
}
.sec01 .tokuten .list {
  display: grid;
  gap: 3.148vw;
  width: 45.827vw;
  margin-inline: auto;
  padding: 3.548vw 0 0;
  margin-bottom: 3.298vw;
}
.sec01 .tokuten .list li {
  background: #fcf1ea;
  position: relative;
  left: 2.049vw;
  border: 2px solid #ff8000;
}
.sec01 .tokuten .list li .label {
  position: absolute;
  top: -1.499vw;
  left: -4.198vw;
}
.sec01 .tokuten .list li .label img {
  width: 8.396vw;
}
.sec01 .tokuten .list li h3 {
  background: url(../img/sec01-tokutentit-bg.png)no-repeat;
  background-size: cover;
  font-size: 1.899vw;
  color: #fff;
  text-shadow: 2px 2px 3px rgba(79, 63, 50, 0.4);
  padding: 1.149vw 0 1.649vw 4.698vw;
  background-position: top -5px left 3px;
  letter-spacing: 0.03em;
}
.sec01 .tokuten .list li:nth-child(3) h3 {padding: 1.149vw 0 1.649vw 5.097vw;}
.sec01 .tokuten .list li h3 span {font-weight: 700;font-size: 2.199vw;letter-spacing: 0.03em;color: #ffff00;
  text-shadow:
  rgb(241, 90, 36) 0.200vw 0vw 0vw,
  rgb(241, 90, 36) 0.194vw 0.049vw 0vw,
  rgb(241, 90, 36) 0.176vw 0.096vw 0vw,
  rgb(241, 90, 36) 0.146vw 0.136vw 0vw,
  rgb(241, 90, 36) 0.108vw 0.168vw 0vw,
  rgb(241, 90, 36) 0.063vw 0.190vw 0vw,
  rgb(241, 90, 36) 0.014vw 0.199vw 0vw,
  rgb(241, 90, 36) -0.036vw 0.197vw 0vw,
  rgb(241, 90, 36) -0.083vw 0.182vw 0vw,
  rgb(241, 90, 36) -0.126vw 0.156vw 0vw,
  rgb(241, 90, 36) -0.160vw 0.120vw 0vw,
  rgb(241, 90, 36) -0.185vw 0.076vw 0vw,
  rgb(241, 90, 36) -0.198vw 0.028vw 0vw,
  rgb(241, 90, 36) -0.199vw -0.022vw 0vw,
  rgb(241, 90, 36) -0.187vw -0.070vw 0vw,
  rgb(241, 90, 36) -0.164vw -0.114vw 0vw,
  rgb(241, 90, 36) -0.131vw -0.151vw 0vw,
  rgb(241, 90, 36) -0.089vw -0.179vw 0vw,
  rgb(241, 90, 36) -0.042vw -0.196vw 0vw,
  rgb(241, 90, 36) 0.008vw -0.200vw 0vw,
  rgb(241, 90, 36) 0.057vw -0.192vw 0vw,
  rgb(241, 90, 36) 0.102vw -0.172vw 0vw,
  rgb(241, 90, 36) 0.142vw -0.141vw 0vw,
  rgb(241, 90, 36) 0.173vw -0.101vw 0vw,
  rgb(241, 90, 36) 0.192vw -0.056vw 0vw,
  rgb(241, 90, 36) 0.200vw -0.007vw 0vw,
  0.100vw 0.100vw 0.150vw rgba(79, 63, 50, 0.4);
}
.sec01 .tokuten .list li:nth-child(2) h3 span,
.sec01 .tokuten .list li:nth-child(3) h3 span {margin: 0 0 0 0.25vw;}
.sec01 .tokuten .list li .content {
  padding: 0.95vw 3.098vw 1.199vw 4.848vw;
  display: grid;
  grid-template-columns: 59% 33.2727%;
  gap: 2.749vw;
}
.sec01 .tokuten .list li:nth-child(3) .content {
  padding: 0.95vw 3.098vw 1.199vw 5.497vw;
  gap: 3.648vw;
  grid-template-columns: 56% 33.7%;
}
.sec01 .tokuten .list li .content .txt {font-size: 1.149vw;line-height: 1.75;text-align: justify;color: #000;padding: 0.15vw 0 0;letter-spacing: 0.02em;}
.sec01 .tokuten .list li img {
  width: 100%;
  height: auto;
}
.sec01 .btn02 a {
  font-size: 1.999vw;
  line-height: 1.75;
  padding: 0.95vw 0 1.499vw 3.198vw;
}

/* countdown
-------------------------------------*/
.countdown {
  padding: 1.849vw 0 2.099vw;
}
.counter {
  display: block;
  max-width: 100%;
  margin: 0 auto;
  width: 39.48vw;
  padding: 1vw;
  text-align: center;
  font-size: 1.899vw;
  line-height: 1.5em;
  font-weight: 500;
}
.counter .label {
  margin-right: 0.5vw;
}
.counter .num {
  font-size: 2.799vw;
  font-weight: bold;
  margin: 0 0.4vw;
}
.countdown .btnArea {margin: 2.199vw 0 0;text-align: center;}
.countdown .btnArea .txt{
  font-size: 1.749vw;
  font-weight: 700;
  color: #fff;
  position: relative;
  text-align: center;
  display: inline-block;
  background: url(../img/btn-txt-bg.png)no-repeat top center;
  background-size: cover;
  padding: 0 1.599vw;
}
.countdown .btnArea .btn a {
  padding: 2.699vw 4.598vw 4.798vw;
  text-align: left;
  position: relative;
}

/* sec02
-------------------------------------*/
.sec02 {
  padding: 0 0 5.147vw;
  background: url(../img/sec02-bg.png)no-repeat center;
  background-size: cover;
}
.sec02 h2 {
  background: #3090fe;
  padding: 2.499vw 0 1.549vw;
  text-align: center;
  font-size: 2.899vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #fff;
  font-weight: 700;
  font-feature-settings: normal;
}
.sec02 h2 .span01 {
  font-size: 3.023vw;
  line-height: 1;
  text-align: left;
  color: #3090fe;
  background: #fff;
  display: inline-block;
  font-weight: 600;
  padding: 0.65vw 1.399vw 0.75vw;
}
.sec02 h2 .span02 {
  font-feature-settings: "palt";
}
.sec02 .content {
  padding: 4.448vw 0 4.448vw;
}
.sec02 .content .inner {
  width: 59.97vw;
  margin-inline: auto;
  position: relative;
}
.sec02 .content .inner::before {
  position: absolute;
  content: "";
  background: url(../img/sec02-illust.png)no-repeat;
  background-size: contain;
  width: 19.49vw;
  height: 12.294vw;
  top: -2.549vw;
  right: 0;
}
.sec02 .content .list {
  display: grid;
  gap: 3.348vw;
}
.sec02 .content .list li {
  font-size: 1.549vw;
  color: #fff;
}
.sec02 .content .list li .black {
  background: #3a3a3a;
  padding: 0.6vw 1.899vw 0.55vw 1.949vw;
}
.sec02 .content .list li:nth-child(2) {position: relative;left: 1.999vw;}
.sec02 .content .list li:nth-child(2) .black {padding: 0.6vw 1.549vw 0.55vw 1.649vw;}
.sec02 .content .list li:nth-child(3) {position: relative;left: 3.748vw;}
.sec02 .content .list li:nth-child(3) .black {padding: 0.6vw 1.599vw 0.55vw 1.549vw;}
.sec02 .content .txt {
  font-size: 1.849vw;
  font-weight: 700;
  text-align: center;
  margin: 0 0 0 15.392vw;
  letter-spacing: 0.02em;
}
.sec02 .content02 {
  background: #f1f7fc;
  position: relative;
  width: 59.97vw;
  margin-inline: auto;
  padding: 3.048vw 0 4.048vw;
}
.sec02 .content02::before,
.sec02 .content02::after {
  position: absolute;
  content: "";
  background: #3090FE;

}
.sec02 .content02::before {
  bottom: 0;
  right: 0;
  width: 99.3%;
  height: 0.45vw;
}
.sec02 .content02::after {
  bottom: 0;
  right: -0.4vw;
  width: 0.45vw;
  height: 99.3%;
}
.sec02 .content02 h3 {
  font-size: 1.449vw;
  font-weight: 700;
  line-height: 1.593448;
  text-align: center;
  margin-bottom: 1.799vw;
}
.sec02 .content02 h3 .orange {
  font-size: 1.749vw;
  color: #FF8000;
  border-bottom: 0.7vw solid #FFF000;
}
.sec02 .content02 .list {
  width: 49.975vw;
  margin-inline: auto;
  border: 1px solid #000000;
}
.sec02 .content02 .list li {
  display: grid;
  grid-template-columns: 24.5% 1fr;
}
.sec02 .content02 .list li:not(:last-child) {
  border-bottom: 1px solid #000000;
}
.sec02 .content02 .list li h4 {
  background: #3090fe;
  font-size: 1.399vw;
  text-align: center;
  color: #ff0;
  padding: 0.95vw 0px;
}
.sec02 .content02 .list li .txt {
  font-size: 1.149vw;
  line-height: 1.836956;
  text-align: left;
  background: #FFFFFF;
  padding: 0.5vw 0 0.5vw 1.349vw;
}
.sec02 .content02 .list li:nth-child(2) .txt {padding: 0.5vw 0 0.5vw 1.199vw;}
.sec02 .content02 .list li:nth-child(3) .txt {padding: 0.5vw 0 0.5vw 1.199vw;}

/* sec03
-------------------------------------*/
.sec03 .top {
  background: #ff8000;
  padding: 3.898vw 0 4.898vw;
  position: relative;
}
.sec03 .top::after {
  position: absolute;
  content: "";
  background: url(../img/sec03-tsunagi.png)no-repeat;
  background-size: contain;
  width: 0.25vw;
  height: 5.347vw;
  bottom: -2.699vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec03 .top h2 {
  font-size: 2.899vw;
  font-weight: 700;
  line-height: 1.56896;
  text-align: center;
  color: #fff;
  margin-bottom: 3.048vw;
  letter-spacing: 0.02em;
  padding-left: 1vw;
}
.sec03 .top h2 .yellow {
  color: #FFF000;
}
.sec03 .top .list {
  width: 59.97vw;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.899vw;
}
.sec03 .top .list li {
  position: relative;
  font-size: 1.449vw;
  letter-spacing: 0.03em;
  font-weight: 700;
  line-height: 1.75;
  text-align: center;
  background: #fff;
  padding: 2.099vw 0 1.249vw;
}
.sec03 .top .list li::before {
  position: absolute;
  content: "";
  background: url(../img/sec03-check.png)no-repeat;
  background-size: contain;
  width: 3.048vw;
  height: 3.048vw;
  top: -1.449vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec03 .bottom {
  background: #fcf1ea;
  padding: 8.696vw 0 4.998vw;
}
.sec03 .bottom .content {
  width: 59.97vw;
  margin-inline: auto;
  background: #fff;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
  text-align: center;
  padding: 0 0 3.498vw;
}
.sec03 .bottom h3 {
  background: url(../img/sec03-fukidashi.png)no-repeat;
  background-size: cover;
  font-size: 1.399vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  padding: 1.649vw 0 3.248vw 0.9vw;
  position: relative;
  top: -3.848vw;
  width: 50.175vw;
  margin-inline: auto;
  margin-bottom: -2.199vw;
}
.sec03 .bottom h3 .orange {
  font-size: 1.649vw;
  letter-spacing: 0.03em;
  line-height: 1.484848;
  text-align: center;
  color: #ff8000;
}
.sec03 .bottom h3 .bold {
  font-weight: 900;
  background: linear-gradient(transparent 60%, #FFF000 30%);
}
.sec03 .bottom h4 {
  font-size: 1.649vw;
  line-height: 1.5151;
  font-weight: 700;
  text-align: center;
  position: relative;
  display: inline-block;
  margin-bottom: 2.549vw;
}
.sec03 .bottom h4::before,
.sec03 .bottom h4::after {
  position: absolute;
  content: "";
  width: 2.199vw;
  height: 5.447vw;
  top: -0.35vw;
}
.sec03 .bottom h4::before {
  background: url(../img/sec03-gekkeijyu-left.png)no-repeat;
  background-size: contain;
  left: -1.899vw;
}
.sec03 .bottom h4::after {
  background: url(../img/sec03-gekkeijyu-right.png)no-repeat;
  background-size: contain;
  right: -1.899vw;
}
.sec03 .bottom .subt {
  font-size: 1.149vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  width: 41.829vw;
  padding: 0 0 0 5.697vw;
  margin-bottom: 3.498vw;
}
.sec03 .tokuten .list {
  width: 49.975vw;
  margin-inline: auto;
  margin-bottom: 3.298vw;
  border: 2px solid #ff8000;
  background: #fff;
  position: relative;
}
.sec03 .tokuten .list::before {
  position: absolute;
  content: "";
  background: url(../img/sec03-illust.png)no-repeat;
  background-size: contain;
  width: 18.541vw;
  height: 11.144vw;
  top: -11.194vw;
  right: -3.398vw;
  z-index: 1;
}
.sec03 .tokuten .list li {
  position: relative;
}
.sec03 .tokuten .list li .label {
  position: absolute;
  top: -1.199vw;
  left: -4.198vw;
}
.sec03 .tokuten .list li .label img {
  width: 8.396vw;
}
.sec03 .tokuten .list li h5 {
  background: url(../img/sec01-tokutentit-bg.png)no-repeat;
  background-size: cover;
  padding: 1.149vw 0 1.649vw 5.897vw;
  background-position: top -5px left 3px;
  text-align: left;
  font-size: 1.549vw;
  letter-spacing: 0.03em;
  color: #fff;
  text-shadow: 2px 2px 3px rgba(79, 63, 50, 0.4);
}
.sec03 .tokuten .list li h5 span {font-weight: 700;font-size: 2.199vw;letter-spacing: 0.03em;color: #ffff00;
  text-shadow:
  rgb(241, 90, 36) 0.200vw 0vw 0vw,
  rgb(241, 90, 36) 0.194vw 0.049vw 0vw,
  rgb(241, 90, 36) 0.176vw 0.096vw 0vw,
  rgb(241, 90, 36) 0.146vw 0.136vw 0vw,
  rgb(241, 90, 36) 0.108vw 0.168vw 0vw,
  rgb(241, 90, 36) 0.063vw 0.190vw 0vw,
  rgb(241, 90, 36) 0.014vw 0.199vw 0vw,
  rgb(241, 90, 36) -0.036vw 0.197vw 0vw,
  rgb(241, 90, 36) -0.083vw 0.182vw 0vw,
  rgb(241, 90, 36) -0.126vw 0.156vw 0vw,
  rgb(241, 90, 36) -0.160vw 0.120vw 0vw,
  rgb(241, 90, 36) -0.185vw 0.076vw 0vw,
  rgb(241, 90, 36) -0.198vw 0.028vw 0vw,
  rgb(241, 90, 36) -0.199vw -0.022vw 0vw,
  rgb(241, 90, 36) -0.187vw -0.070vw 0vw,
  rgb(241, 90, 36) -0.164vw -0.114vw 0vw,
  rgb(241, 90, 36) -0.131vw -0.151vw 0vw,
  rgb(241, 90, 36) -0.089vw -0.179vw 0vw,
  rgb(241, 90, 36) -0.042vw -0.196vw 0vw,
  rgb(241, 90, 36) 0.008vw -0.200vw 0vw,
  rgb(241, 90, 36) 0.057vw -0.192vw 0vw,
  rgb(241, 90, 36) 0.102vw -0.172vw 0vw,
  rgb(241, 90, 36) 0.142vw -0.141vw 0vw,
  rgb(241, 90, 36) 0.173vw -0.101vw 0vw,
  rgb(241, 90, 36) 0.192vw -0.056vw 0vw,
  rgb(241, 90, 36) 0.200vw -0.007vw 0vw,
  0.100vw 0.100vw 0.150vw rgba(79, 63, 50, 0.4);
}
.sec03 .tokuten .list li .span02,
.sec03 .tokuten .list li .span03{margin: 0 0 0 0.25vw;}
.sec03 .tokuten .list li .txt {font-size: 1.149vw;line-height: 1.75;color: #000;letter-spacing: 0.01em;text-align: justify;}
.sec03 .tokuten .list li .txt-frame {
  display: grid;
  grid-template-columns: 27.936vw 14.393vw;
  gap: 2.199vw;
  align-items: center;
  padding: 2.649vw 2.699vw 3.098vw;
}

.sec03 .btn a {padding: 1.149vw 0.45vw 1.299vw 0;font-size: 1.999vw;line-height: 1.75;}
.sec03 .btn a::before {
  background: url(../img/sec03-btn-imasugu.png)no-repeat;
  background-size: contain;
  width: 5.897vw;
  height: 3.448vw;
  position: absolute;
  content: "";
  top: 0.4vw;
  left: 0.6vw;
}
.sec03 .btn a span {
  font-size: 1.999vw;
  line-height: 1.75;
}


/* sec04
-------------------------------------*/
.sec04 {
  padding: 7.996vw 0 4.998vw;
}
.sec04 .content {
  width: 59.97vw;
  margin-inline: auto;
  background: #f2f8fd;
  border: 1px solid #3090fe;
  padding: 0 0 3.198vw;
  margin-bottom: 3.548vw;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);  
}
.sec04 .content h2 {
  background: url(../img/sec04-tit-fukidashi.png)no-repeat;
  background-size: cover;
  font-size: 2.279vw;
  line-height: 1.75;
  color: #fff;
  margin-bottom: -3.948vw;
  position: relative;
  top: -5.847vw;
  width: 49.975vw;
  margin-inline: auto;
  padding: 3.798vw 1.999vw 2.849vw;
  font-weight: 600;
}
.sec04 .content h2 span {
  font-feature-settings: "palt";
}
.sec04 .movie {
  margin-inline: auto;
  width: 49.975vw;
  padding: 0 0 1.199vw;
}
.sec04 .movie iframe {
  height: 27.986vw;
  width: 100%;
}
.sec04 .content .desc {
  font-size: 1.049vw;
  line-height: 1.75;
  text-align: right;
  color: #000;
  margin-bottom: 2.499vw;
  padding-right: 2.149vw;
}
.sec04 .content .txt {
  font-size: 1.349vw;
  line-height: 1.75;
  text-align: center;
  color: #000000;
  padding: 0 0 0 1.049vw;
  margin-bottom: 1.399vw;
}
.sec04 .content .lead {
  font-size: 1.499vw;
  line-height: 2.6;
  text-align: center;
  color: #fff;
}
.sec04 .content .lead .span01 {
  padding: 0.4vw 1vw 0.8vw;  
  background: #FF8000;
}
.sec04 .content .lead .span02 {
  background: #FF8000;
  padding: 0.4vw 0.85vw 0.8vw;
}
.sec04 .btn a {padding: 1.149vw 0 1.299vw 3.248vw;font-size: 1.999vw;line-height: 1.75;}
.sec04 .btn a span {
  font-size: 1.999vw;
  line-height: 1.75;
}


/* sec05
-------------------------------------*/
.sec05 {
  background-color: #FCF1EA;
  padding: 0 0 6.997vw;
}
.sec05 h2 {
  font-size: 2.899vw;
  font-weight: 700;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  background: url(../img/sec05-title-bg.png)no-repeat;
  background-size: cover;
  padding: 2.049vw 0 5.197vw;
  margin-bottom: 0.4vw;
}
.sec05 h2 .span01 {
  display: block;
  font-size: 2.599vw;
  line-height: 1.75;
  margin-bottom: -0.6vw;
}
.sec05 h2 .yellow {
  color: #FFF000;
}
.sec05 .table-box {
  width: 49.975vw;
  margin-inline: auto;
  background: #fff;
  border: 0.05vw solid #1c1c1c;
  margin-bottom: 1.199vw;
}
.sec05 .table-box .list li {
  display: grid;
  grid-template-columns: 24.5% 1fr;
  border-bottom: 0.05vw solid #1c1c1c;
}
.sec05 .table-box li h3 {
  background: #ff8000;
  font-size: 1.999vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  padding: 1.349vw 0 1.649vw;
  border-right: 0.05vw solid #1c1c1c;
}
.sec05 .table-box li:nth-child(2) h3 {
  padding: 6.097vw 0;
}
.sec05 .table-box li .content {
  padding: 1.149vw 1.749vw 0;
}
.sec05 .table-box li:nth-child(2) .content {padding: 2.149vw 0px 1.599vw 1.649vw;}
.sec05 .table-box li .content .wrap {
  display: flex;
  gap: 6.697vw;
  align-items: center;
}
.sec05 .table-box li .content .price{
  font-size: 1.499vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
}
.sec05 .table-box li .content .price .bold {
  font-size: 1.749vw;
  font-weight: 700;
  position: relative;
  left: -0.05vw;
}
.sec05 .table-box li .content .price .small {
  font-size: 1.249vw;
  letter-spacing: 0.03em;
}
.sec05 .table-box li .content .price .month {
  position: relative;
  left: 0.1vw;
  letter-spacing: 0;
  margin: 0 0.25vw 0 0;
}
.sec05 .table-box li .content .free{
  font-size: 2.499vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #ff8000;
  position: relative;
}
.sec05 .table-box li .content .free::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-yajirushi.png)no-repeat;
  background-size: contain;
  width: 4.448vw;
  height: 1.799vw;
  top: 50%;
  left: -5.497vw;
  transform: translateY(-50%);
}
.sec05 .table-box li .content .case {
  font-size: 1.499vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  border: 0.05vw solid #ff8000;
  display: inline-block;
  padding: 0 0.7vw;
  margin-bottom: -0.1vw;
}
.sec05 .table-box li .content .price01 {
  padding: 0 0 0 0.3vw;
  margin-bottom: 0.9vw;
}
.sec05 .table-box li .content .price02 {
  padding: 0 0 0 0.3vw;
}
.sec05 .desc {
  font-size: 1.049vw;
  line-height: 1.75;
  text-align: left;
  color: #000;
  width: 49.525vw;
  margin-inline: auto;
  padding: 0 0 4.748vw;
}
.sec05 .cta {
  background: #ffd8c3;
  margin-bottom: 5.847vw;
}
.sec05 .cta .inner {
  background: #ffd8c3;
  width: 61.069vw;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 50.3923% 44.4353%;
  gap: 2.449vw;
  padding: 3.498vw 0 3.598vw;
  align-items: start;
}
.sec05 .cta .inner .frame {
  background: url(../img/sec05-tokuten-frame.png)no-repeat;
  background-size: contain;
  padding: 7.946vw 2.149vw 1.599vw;
  margin: 1.499vw 0 0;
}
.sec05 .cta .inner .frame .list {
  display: grid;
  gap: 0.85vw;
}
.sec05 .cta .inner .frame .list li {
  font-size: 1.231vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 1.499vw;
}
.sec05 .cta .inner .frame .list li::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-tokuten-check.png)no-repeat;
  background-size: contain;
  width: 1.399vw;
  height: 1.449vw;
  top: 50%;
  left: -0.2vw;
  transform: translateY(-50%);
}
.sec05 .cta .inner .frame .list li:not(:last-child)::after {
  position: absolute;
  content: "";
  background: url(../img/sec05-tokuten-line.png)no-repeat;
  background-size: contain;
  width: 100%;
  height: 0.15vw;
  bottom: -0.45vw;
  left: -0.25vw;
}
.sec05 .cta .inner .btn-frame {
  display: grid;
  gap: 1.649vw;
}
.sec05 .cta .inner .btn {
  background: url(../img/sec05-btn.png)no-repeat;
  background-size: 100%;
  width: 27.136vw;
}
.sec05 .cta .inner .btn a {
  font-size: 1.399vw;
  line-height: 1.75;
  text-align: left;
  color: #fff;
  padding: 1.549vw 2.249vw 1.849vw;
}
.sec05 .cta .inner .btn02 a {padding: 1.049vw 0 1.5vw 1.799vw;}
.sec05 .cta .inner .btn03 a {padding: 1.599vw 0 1.749vw 0;text-align: center;}
.sec05 .cta .inner .btn a span {
  color: #fff;
}
.sec05 .cta .inner .btn a .small {
  font-size: 1vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #fff;
  display: block;
  text-align: center;
  font-weight: 500;
  margin: -0.5vw 0 0 -2.299vw;
}

.sec05 .plan  {
  width: 49.975vw;
  margin-inline: auto;
  background: #3090fe;
  padding: 2.549vw 2.849vw 1.299vw 4.348vw;
  position: relative;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);  
}
.sec05 .plan::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-illust.png)no-repeat;
  width: 13.293vw;
  height: 10.745vw;
  top: -2.849vw;
  right: 2.399vw;
}
.sec05 .plan h3 {
  font-size: 2.099vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #ff0;
  margin-bottom: 2.449vw;
  font-weight: 600;
  padding: 0 0 0 0.4vw;
  position: relative;
}
.sec05 .plan h3::after {
  position: absolute;
  content: "";
  background: #FFFFFF;
  width: 30.535vw;
  height: 0.25vw;
  bottom: 0;
  left: 0.25vw;
}
.sec05 .plan .txt {
  font-size: 1.149vw;
  line-height: 1.75;
  color: #fff;
  margin-bottom: 2.049vw;
}
.sec05 .plan .txt .yellow {
  color: #FFFF00;
}

/* sec06
-------------------------------------*/
.sec06 {
  background: #F2F8FD;
}
.sec06 .inner {
  width: 59.97vw;
  margin-inline: auto;
  padding: 4.798vw 0 4.998vw;
}
.sec06 h2 {
  font-size: 2.899vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #3090fe;
  margin-bottom: 1.849vw;
  position: relative;
  z-index: 0;
}
.sec06 h2::after {
  position: absolute;
  content: "";
  background: #FFF000;
  width: 87.8%;
  height: 0.95vw;
  bottom: 0.8vw;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
}
.sec06 .lead {
  font-size: 1.499vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  margin-bottom: 2.899vw;
  font-weight: 700;
}
.sec06 .table {
  background: url(../img/sec06-frame.png)no-repeat;
  background-size: contain;
  padding: 2.899vw 5.247vw 3.398vw;
  margin-bottom: 3.498vw;
}
.sec06 .table .txt {
  font-size: 1.149vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  margin-bottom: 0.55vw;
}
.sec06 .table .txt02 {
  font-size: 1.349vw;
  letter-spacing: 0.03em;
  line-height: 1;
  text-align: center;
  color: #ff0;
  margin: 1.299vw 0 1vw;
}
.sec06 .table .txt02 .bg {
  background: #3090fe;
  padding: 0.45vw 0.85vw;
  display: inline-block;
}
.sec06 .table .txt02 .bg01 {
  margin-bottom: 0.7vw;
}
.sec06 .fukidashi {
  background: url(../img/sec06-fukidashi.png)no-repeat;
  background-size: cover;
  width: 35.532vw;
  margin-left: auto;
  font-size: 1.499vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #3090fe;
  padding: 2.099vw 0 1.949vw 1.449vw;
  position: relative;
  margin-right: 2.449vw;
}
.sec06 .fukidashi::before {
  position: absolute;
  content: "";
  background: url(../img/sec06-illlust.png)no-repeat;
  background-size: contain;
  width: 21.389vw;
  height: 16.192vw;
  top: 0;
  left: -20.34vw;
}

/* sec07
-------------------------------------*/
.sec07 {
  padding: 2.999vw 0 8.996vw;
}
.sec07 .frame {
  background: url(../img/sec07-frame.png)no-repeat;
  background-size: 100%;
  width: 52.274vw;
  margin-inline: auto;
  position: relative;
  left: -0.7vw;
  padding: 6.247vw 0 2.499vw;
  margin-bottom: 3.398vw;
  text-align: center;
}
.sec07 .frame h2 {
  font-size: 2.249vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 2.349vw;
  margin-bottom: 3.898vw;
  display: inline-block;
}
.sec07 .frame h2::before,
.sec07 .frame h2::after {
  position: absolute;
  content: "";
  width: 1.549vw;
  height: 2.549vw;
  bottom: 0.7vw;
}
.sec07 .frame h2::before {
  background: url(../img/sec7-backslash.png)no-repeat;
  background-size: contain;
  left: 0.2vw;
}
.sec07 .frame h2::after {
  background: url(../img/sec7-slash.png)no-repeat;
  background-size: contain;
  right: -1.649vw;
}
.sec07 .frame h2 span {
  font-size: 2.499vw;
  color: #FFFF00;
}
.sec07 .frame .list {
  display: grid;
  width: 41.429vw;
  margin-inline: auto;
  position: relative;
  left: 0.7vw;
  gap: 1.099vw;
}
.sec07 .frame .list li {
  font-size: 1.899vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  background: #fff;
  border: 0.05vw solid #ff8000;
  padding: 0.3vw 0;
}
.sec07 .btn a {padding: 1.149vw 0 1.299vw 1.849vw;font-size: 1.999vw;line-height: 1.75;text-align: center;}
.sec07 .btn a::before {
  background: url(../img/sec03-btn-imasugu.png)no-repeat;
  background-size: contain;
  width: 5.897vw;
  height: 3.448vw;
  position: absolute;
  content: "";
  top: 0.6vw;
  left: 1.649vw;
}
.sec07 .btn a span {
  font-size: 1.999vw;
  line-height: 1.75;
}

/* sec08
-------------------------------------*/
.sec08 {
  background: #f2f8fd;
}
.sec08 .enttl {
  text-align: center;
  position: relative;
  top: -5.197vw;
  margin-bottom: -8.646vw;
}
.sec08 .enttl img {
  width: 23.538vw;
  margin-inline: auto;
}
.sec08 h2 {
  font-size: 3.709vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  font-weight: 700;
  margin-bottom: 3.798vw;
}
.sec08 .ac-area {
  width: 49.975vw;
  margin-inline: auto;
  display: grid;
  gap: 2.999vw;
  padding: 0 0 4.998vw;
}
.sec08 .ac-area .ttl-box {
  border-radius: 0.5vw 0.5vw 0px 0px;
  background: #3090fe;
  position: relative;
}
.sec08 .ac-area .ttl-box h3 {
  font-size: 1.399vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: left;
  color: #fff;
  padding: 0.8vw 0px 0.8vw 3.148vw;
}
.sec08 .ac-area .ttl-box h3::before {
  position: absolute;
  content: "Q. ";
  font-size: 1.399vw;
  font-weight: 700;
  left: 1.099vw;
  top: 50%;
  transform: translateY(-50%);
}
.sec08 .ac-area .accordion-content {
  border-radius: 0.5vw 0.5vw 0px 0px;
  background: #fff;
  transition: all .3s;
}
.sec08 .ac-area .accordion-content p{
  font-size: 1.149vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  padding: 1.549vw 2.099vw 2.149vw;
}
.sec08 .ac-area .content:first-child p {
  padding: 1.399vw 2.099vw 1.799vw;
}
.sec08 .ac-area .ttl-box::after {
  content: "";
  position: absolute;
  width: 1.599vw;
  height: 1.599vw;
  background-image: url(../img/sec08-hiraku.png);
  background-size: contain;
  top: 54%;
  right: 0.8vw;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  transition: .3s;
}
.sec08 .ac-area .ttl-box.is-active::after {
  width: 1.599vw;
  height: 0.1vw;
  background-image: url(../img/sec08-tojiru.png);
  background-size: contain;
  background-repeat: no-repeat;
  transition: .3s;
}
.sec08 .ac-area .accordion-content  {
  background-color: #fff;
}
.accordion-content {
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition-duration: .3s;
}
.accordion-content.is-open {
  line-height: normal;
  height: auto;
  opacity: 1;
}

/* sec09
-------------------------------------*/
.sec09 {
  background: url(../img/sec9-bg.png)no-repeat bottom center;
  background-size: contain;
  padding: 4.998vw 0 8.896vw;
  margin-bottom: -4.048vw;
}
.sec09 .frame {
  background: url(../img/sec09-frame-bg.png)no-repeat;
  background-size: contain;
  width: 44.078vw;
  margin-inline: auto;
  position: relative;
  padding: 2.999vw 0 1.949vw 0;
  margin-bottom: 11.894vw;
  text-align: center;
}
.sec09 .frame::before {
  position: absolute;
  content: "";
  background: url(../img/sec09-illust-inframe.png)no-repeat;
  width: 10.005vw;
  height: 10.505vw;
  bottom: 0.2vw;
  left: 0.8vw;
  z-index: 2;
  background-size: contain;
}
.sec09 .frame h2 {
  position: relative;
  font-size: 1.499vw;
  font-weight: 700;
  display: inline-block;
  margin-bottom: 1.399vw;
  color: #000;
  text-align: center;
}
.sec09 .frame h2::before,
.sec09 .frame h2::after {
  position: absolute;
  content: "";
  width: 1.099vw;
  height: 2.199vw;
  bottom: -0.55vw;
}
.sec09 .frame h2::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -1.549vw;
}
.sec09 .frame h2::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -1vw;
}
.sec09 .frame h2 .line {
  position: relative;
}
.sec09 .frame h2 .line::after {
  position: absolute;
  content: "";
  bottom: 0px;
  left: 53%;
  width: 100%;
  height: 0.65vw;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}
.sec09 .frame h3{
  margin-bottom: 1.749vw;
  font-size: 2.099vw;
  color: #3090FE;
  font-weight: 700;
  letter-spacing: 0.03em;
}
.sec09 .frame .orange {
  color: #FF8000;
}
.sec09 .frame .txt {
  font-size: 1vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  text-align: justify;
  margin-inline: auto;
  padding: 0 0 0 10.445vw;
}
.sec09 .btnArea {
  text-align: center;
  position: relative;
}
.sec09 .btnArea::before {
  position: absolute;
  content: "";
  background: url(../img/sec09-illust.png)no-repeat;
  background-size: contain;
  width: 20.34vw;
  height: 8.446vw;
  top: -8.846vw;
  left: 49.7%;
  transform: translateX(-50%);
}
.sec09 .btnArea .txt {
  display: inline-block;
  text-align: center;
  font-size: 1.999vw;
  position: relative;
  margin-bottom: 1.549vw;
}
.sec09 .btnArea .txt::before,
.sec09 .btnArea .txt::after {
  position: absolute;
  content: "";
  width: 1.399vw;
  height: 2.349vw;
  bottom: -0.05vw;
}
.sec09 .btnArea .txt::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -1.149vw;
}
.sec09 .btnArea .txt::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -1.349vw;
}
.sec09 .btnArea .txt .orange {
  color: #FF8000;
  font-weight: 700;
  letter-spacing: 0.03em;
  font-size: 2.149vw;
}
.sec09 .btn a {
  padding: 0.75vw 0 1.349vw;
}
.sec09 .countdown {
  padding: 0.6vw 0 0px;
}
.sec09 .counter {
  font-size: 2.449vw;
  width: 42.129vw;
}
.sec09 .counter .label {
  font-size: 2.149vw;
  margin-right: 0.5vw;
}
.sec09 .counter .num {
  font-size: 3.148vw;
  font-weight: bold;
  margin: 0 0.4vw;
}
.sec09 .frame02 {
  background: url(../img/sec07-frame.png)no-repeat;
  background-size: 100%;
  width: 52.274vw;
  margin-inline: auto;
  position: relative;
  left: -0.7vw;
  padding: 6.247vw 0 2.499vw;
  text-align: center;
}
.sec09 .frame02 h2 {
  font-size: 2.249vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 2.349vw;
  margin-bottom: 3.898vw;
  display: inline-block;
}
.sec09 .frame02 h2::before,
.sec09 .frame02 h2::after {
  position: absolute;
  content: "";
  width: 1.549vw;
  height: 2.549vw;
  bottom: 0.7vw;
}
.sec09 .frame02 h2::before {
  background: url(../img/sec7-backslash.png)no-repeat;
  background-size: contain;
  left: 0.2vw;
}
.sec09 .frame02 h2::after {
  background: url(../img/sec7-slash.png)no-repeat;
  background-size: contain;
  right: -1.649vw;
}
.sec09 .frame02 h2 span {
  font-size: 2.499vw;
  color: #FFFF00;
}
.sec09 .frame02 .list {
  display: grid;
  width: 41.429vw;
  margin-inline: auto;
  position: relative;
  left: 1vw;
  gap: 1.099vw;
}
.sec09 .frame02 .list li {
  font-size: 1.899vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  background: #fff;
  border: 1px solid #ff8000;
  padding: 0.3vw 0;
}

/* footer
-------------------------------------*/
.footer {
  background-color: #FF8000;
  padding: 4.498vw 0 5.347vw;
}
.footer .footer-link {
  display: flex;
  justify-content: center;
  gap: 3.998vw;
}
.footer .footer-link li a {
  font-size: 1.099vw;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.75;
  text-decoration: none;
  letter-spacing: 0;
}
.footer .footer-link li{
  position: relative;
}
.footer .footer-link li:nth-child(1)::after{
  content: "";
  position: absolute;
  width: 0.05vw;
  height: 1.099vw;
  background-color: #FFFFFF;
  top: 54%;
  right: -2.399vw;
  transform: translateY(-50%);
}
.footer .footer-link li:nth-child(2)::after {
  content: "";
  position: absolute;
  width: 0.05vw;
  height: 1.099vw;
  background-color: #FFFFFF;
  top: 54%;
  right: -2.349vw;
  transform: translateY(-50%);
}
.footer .footer-txt-box {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.footer .footer-txt-box .contact-box {
  font-size: 1.049vw;
  line-height: 1.8;
  color: #FFFFFF;
  text-align: justify;
  position: relative;
  left: 3.448vw;
}
.footer .footer-txt-box .contact-box .logo-wrap {
  display: flex;
  align-items: center;
  gap: 0.7vw;
  margin: 0.1vw 0 -2.199vw 0;
}
.footer .footer-txt-box .contact-box .logo-wrap img {
  width: 8.046vw;
  height: 1.549vw;
}
.footer .unei {
  display: block;
  margin-bottom: -0.3vw;
  line-height: 1.7;
}
.footer .footer-txt-box .contact-box .mail {
  margin: 0.35vw 0 0;
}
.footer .footer-txt-box {
  margin-top: 2.399vw;
  text-align: center;
  background-repeat: no-repeat;
  width: 62.369vw;
  margin-inline: auto;
  grid-template-columns: 45.4% 1fr;
  gap: 0.35vw;
}
.footer .footer-txt {
  font-size: 1.049vw;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.71428;
  text-align: left;
}

.footer .copyright {
  text-align: center;
  color: #FFFFFF;
  margin-top: 2.799vw;
  font-size: 1.049vw;
}

}


@media screen and (min-width:768px) and (max-width:1999px) {
  .btn {
    background: url(../img/btn.png)no-repeat;
    background-size: 100%;
    width: 31.916vw;
    margin-inline: auto;
  }
  .btn a {
    font-size: 2.201vw;
    font-weight: 700;
    line-height: 1.75;
    color: #FFFFFF;
    display: block;
    padding: 0.75vw 1.451vw 1.351vw 0;
    text-decoration: none;
  }
  .btn a span {
    color: #FFFF00;
  }
  /* fv
-------------------------------------*/
.fv {
  background: url(../img/fv.jpg) no-repeat center center;
  background-size: cover;
  text-align: center;
  position: relative;
  padding: 1.451vw 0 0.15vw;
}
.fv .subt {
  font-size: 2.501vw;
  font-weight: 500;
  letter-spacing: 0em;
  padding-left: 1.451vw;
  margin-bottom: 2.051vw;
}
.fv .subt span {
  position: relative;
  left: -1.401vw;
}
.fv h1 {
  font-size: 3.402vw;
  color: #ff8000;
  display: inline-block;
  font-weight: 700;
  margin-bottom: 1.301vw;
  /* letter-spacing: 0.02em; */
}
.fv h1 .span01,
.fv h1 .span02 {
  font-size: 4.002vw;
  font-weight: 500;
  letter-spacing: 0;
  background: #ff8000;
  color: #fff;
  display: block;
}
.fv h1 .span01 {padding: 0.3vw 1.051vw 0.65vw 1.501vw;letter-spacing: 0;margin-bottom: -1.901vw;/* letter-spacing: 0.05em; */}
.fv h1 .span02 {
  width: 24.262vw;
  margin-inline: auto;
  padding: 0.3vw 0.35vw 0.65vw 0.65vw;
  margin-bottom: -2.101vw;
}
.fv h1 .span03 {
  padding-left: 3.352vw;
}
.fv h1 .span04 {position: relative;left: -0.45vw;}
.fv h1 .span05 {position: relative;left: -1.051vw;}
.fv h1 .span06 {position: relative;left: -0.05vw;}
.fv h1 .span07 {position: relative;left: -0.1vw;}
.fv h1 .span08 {position: relative;left: -0.85vw;}
.fv .content {
  background: url(../img/fv-letter.png)no-repeat;
  background-size: cover;
  position: relative;
  width: 29.065vw;
  margin-inline: auto;
  padding: 6.353vw 0 4.402vw;
  background-position: center left 13px;
}
.fv .content .subt {
  background: url(../img/fv-fukidashi.png)no-repeat;
  font-size: 1.501vw;
  color: #FFFFFF;
  position: absolute;
  top: 1.151vw;
  left: -3.102vw;
  padding: 1.051vw 0.85vw 2.101vw 2.201vw;
  background-size: contain;
}
.fv .content .subt span {
  transform: rotate(-2.5deg);
  display: block;
}
.fv .content .txt {
  font-size: 1.551vw;
  font-weight: 700;
  margin-bottom: 1.501vw;
}
.fv .content .txt:last-of-type {margin: 1.851vw 0 0;}
.fv .content .txt span {
  position: relative;
  z-index: 1;
}
.fv .content .txt span::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 50%;
  width: 91%;
  height: 0.65vw;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}
/* sec01
-------------------------------------*/
.sec01 {
  background: #FCF1EA;
  padding: 5.003vw 0 0;
}
.sec01 .inner {
  width: 60.03vw;
  margin-inline: auto;
  padding-bottom: 4.452vw;
}
.sec01 .frame {
  background: url(../img/sec01-frame.png)no-repeat;
  background-size: contain;
  width: 44.072vw;
  margin-inline: auto;
  position: relative;
  text-align: left;
  padding: 2.101vw 0 2.301vw 15.708vw;
  margin-bottom: 3.602vw;
}
.sec01 .frame::before {
  position: absolute;
  content: "";
  background: url(../img/sec01-illust-inframe.png)no-repeat;
  width: 9.905vw;
  height: 12.656vw;
  bottom: 0.25vw;
  left: 6.2vw;
  z-index: 2;
  background-size: contain;
}
.sec01 .frame .label {
  position: absolute;
  top: -2.601vw;
  left: 1.051vw;
}
.sec01 .frame .label img {
  width: 8.804vw;
}
.sec01 .frame h2 {
  position: relative;
  font-size: 1.551vw;
  display: inline-block;
  margin-bottom: 1.651vw;
  color: #000;
}
.sec01 .frame h2::before,
.sec01 .frame h2::after {
  position: absolute;
  content: "";
  width: 1.101vw;
  height: 2.201vw;
  bottom: -0.75vw;
}
.sec01 .frame h2::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -1.751vw;
}
.sec01 .frame h2::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -1.201vw;
}
.sec01 .frame h2 .bold {
  font-weight: 700;
}
.sec01 .frame h2 .large {
  font-size: 1.951vw;
  font-weight: 700;
  position: relative;
  top: 0.2vw;
  left: -0.65vw;
  margin-right: 0.05vw;
  letter-spacing: 0;
  z-index: 0;
  margin-right: -0.55vw;
}
.sec01 .frame h2 .large::after {
  position: absolute;
  content: "";
  bottom: 0px;
  left: 53%;
  width: 100%;
  height: 0.85vw;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}
.sec01 .frame .lead01 {
  margin-bottom: 0.75vw;
  font-size: 2.801vw;
  color: #3090FE;
  font-weight: 700;
}
.sec01 .frame .lead02 {
  font-size: 2.801vw;
  color: #FF8000;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.sec01 .btnArea {
  text-align: center;
}
.sec01 .btnArea .txt {
  display: inline-block;
  text-align: center;
  font-size: 2.101vw;
  position: relative;
  left: 0.1vw;
  margin-bottom: 1.701vw;
}
.sec01 .btnArea .txt::before,
.sec01 .btnArea .txt::after {
  position: absolute;
  content: "";
  width: 1.401vw;
  height: 2.351vw;
  bottom: -0.35vw;
}
.sec01 .btnArea .txt::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -1.751vw;
}
.sec01 .btnArea .txt::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -1.351vw;
}
.sec01 .btnArea .txt .bold {
  font-weight: 700;
}
.sec01 .btnArea .txt .small {
  font-size: 1.851vw;
}
.sec01 .btnArea .txt .orange {
  color: #FF8000;
  font-weight: 700;
  position: relative;
  top: -0.2vw;
  left: 0.15vw;
  letter-spacing: 0.07em;
  margin-right: 0.2vw;
}

.sec01 .tokuten {
  background: #FFFFFF;
  padding-bottom: 3.402vw;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
}
.sec01 .tokuten .list {
  display: grid;
  gap: 3.152vw;
  width: 45.873vw;
  margin-inline: auto;
  padding: 3.552vw 0 0;
  margin-bottom: 3.302vw;
}
.sec01 .tokuten .list li {
  background: #fcf1ea;
  position: relative;
  left: 2.051vw;
  border: 2px solid #ff8000;
}
.sec01 .tokuten .list li .label {
  position: absolute;
  top: -1.501vw;
  left: -4.202vw;
}
.sec01 .tokuten .list li .label img {
  width: 8.404vw;
}
.sec01 .tokuten .list li h3 {
  background: url(../img/sec01-tokutentit-bg.png)no-repeat;
  background-size: cover;
  font-size: 1.901vw;
  color: #fff;
  text-shadow: 2px 2px 3px rgba(79, 63, 50, 0.4);
  padding: 1.151vw 0 1.651vw 4.702vw;
  background-position: top -5px left 3px;
  letter-spacing: 0.03em;
}
.sec01 .tokuten .list li:nth-child(3) h3 {padding: 1.151vw 0 1.651vw 5.103vw;}
.sec01 .tokuten .list li h3 span {font-weight: 700;font-size: 2.201vw;letter-spacing: 0.03em;color: #ffff00;
  text-shadow:
  rgb(241, 90, 36) 0.200vw 0vw 0vw,
  rgb(241, 90, 36) 0.194vw 0.050vw 0vw,
  rgb(241, 90, 36) 0.176vw 0.096vw 0vw,
  rgb(241, 90, 36) 0.146vw 0.136vw 0vw,
  rgb(241, 90, 36) 0.108vw 0.168vw 0vw,
  rgb(241, 90, 36) 0.063vw 0.190vw 0vw,
  rgb(241, 90, 36) 0.014vw 0.200vw 0vw,
  rgb(241, 90, 36) -0.036vw 0.197vw 0vw,
  rgb(241, 90, 36) -0.083vw 0.182vw 0vw,
  rgb(241, 90, 36) -0.126vw 0.156vw 0vw,
  rgb(241, 90, 36) -0.160vw 0.120vw 0vw,
  rgb(241, 90, 36) -0.185vw 0.076vw 0vw,
  rgb(241, 90, 36) -0.198vw 0.028vw 0vw,
  rgb(241, 90, 36) -0.199vw -0.022vw 0vw,
  rgb(241, 90, 36) -0.187vw -0.070vw 0vw,
  rgb(241, 90, 36) -0.164vw -0.114vw 0vw,
  rgb(241, 90, 36) -0.131vw -0.151vw 0vw,
  rgb(241, 90, 36) -0.089vw -0.179vw 0vw,
  rgb(241, 90, 36) -0.042vw -0.196vw 0vw,
  rgb(241, 90, 36) 0.008vw -0.200vw 0vw,
  rgb(241, 90, 36) 0.057vw -0.192vw 0vw,
  rgb(241, 90, 36) 0.102vw -0.172vw 0vw,
  rgb(241, 90, 36) 0.142vw -0.141vw 0vw,
  rgb(241, 90, 36) 0.173vw -0.101vw 0vw,
  rgb(241, 90, 36) 0.192vw -0.056vw 0vw,
  rgb(241, 90, 36) 0.200vw -0.007vw 0vw,
  0.100vw 0.100vw 0.150vw rgba(79, 63, 50, 0.4);
}
.sec01 .tokuten .list li:nth-child(2) h3 span,
.sec01 .tokuten .list li:nth-child(3) h3 span {margin: 0 0 0 0.25vw;}
.sec01 .tokuten .list li .content {
  padding: 0.95vw 3.102vw 1.201vw 4.852vw;
  display: grid;
  grid-template-columns: 59% 33.2727%;
  gap: 2.751vw;
}
.sec01 .tokuten .list li:nth-child(3) .content {
  padding: 0.95vw 3.102vw 1.201vw 5.503vw;
  gap: 3.652vw;
  grid-template-columns: 56% 33.7%;
}
.sec01 .tokuten .list li .content .txt {font-size: 1.151vw;line-height: 1.75;text-align: justify;color: #000;padding: 0.15vw 0 0;letter-spacing: 0.02em;}
.sec01 .tokuten .list li img {
  width: 100%;
  height: auto;
}
.sec01 .btn02 a {
  font-size: 2.001vw;
  line-height: 1.75;
  padding: 0.95vw 0 1.501vw 3.202vw;
}

/* countdown
-------------------------------------*/
.countdown {
  padding: 1.851vw 0 2.101vw;
}
.counter {
  display: block;
  max-width: 100%;
  margin: 0 auto;
  width: 39.52vw;
  padding: 1.001vw;
  text-align: center;
  font-size: 1.901vw;
  line-height: 1.5em;
  font-weight: 500;
}
.counter .label {
  margin-right: 0.5vw;
}
.counter .num {
  font-size: 2.801vw;
  font-weight: bold;
  margin: 0 0.4vw;
}
.countdown .btnArea {margin: 2.201vw 0 0;text-align: center;}
.countdown .btnArea .txt{
  font-size: 1.751vw;
  font-weight: 700;
  color: #fff;
  position: relative;
  text-align: center;
  display: inline-block;
  background: url(../img/btn-txt-bg.png)no-repeat top center;
  background-size: cover;
  padding: 0 1.601vw;
}
.countdown .btnArea .btn a {
  padding: 2.701vw 4.602vw 4.802vw;
  text-align: left;
  position: relative;
}

/* sec02
-------------------------------------*/
.sec02 {
  padding: 0 0 5.153vw;
  background: url(../img/sec02-bg.png)no-repeat center;
  background-size: cover;
}
.sec02 h2 {
  background: #3090fe;
  padding: 2.501vw 0 1.551vw;
  text-align: center;
  font-size: 2.901vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #fff;
  font-weight: 700;
  font-feature-settings: normal;
}
.sec02 h2 .span01 {
  font-size: 3.027vw;
  line-height: 1;
  text-align: left;
  color: #3090fe;
  background: #fff;
  display: inline-block;
  font-weight: 600;
  padding: 0.65vw 1.401vw 0.75vw;
}
.sec02 h2 .span02 {
  font-feature-settings: "palt";
}
.sec02 .content {
  padding: 4.452vw 0 4.452vw;
}
.sec02 .content .inner {
  width: 60.03vw;
  margin-inline: auto;
  position: relative;
}
.sec02 .content .inner::before {
  position: absolute;
  content: "";
  background: url(../img/sec02-illust.png)no-repeat;
  background-size: contain;
  width: 19.51vw;
  height: 12.306vw;
  top: -2.551vw;
  right: 0;
}
.sec02 .content .list {
  display: grid;
  gap: 3.352vw;
}
.sec02 .content .list li {
  font-size: 1.551vw;
  color: #fff;
}
.sec02 .content .list li .black {
  background: #3a3a3a;
  padding: 0.6vw 1.901vw 0.55vw 1.951vw;
}
.sec02 .content .list li:nth-child(2) {position: relative;left: 2.001vw;}
.sec02 .content .list li:nth-child(2) .black {padding: 0.6vw 1.551vw 0.55vw 1.651vw;}
.sec02 .content .list li:nth-child(3) {position: relative;left: 3.752vw;}
.sec02 .content .list li:nth-child(3) .black {padding: 0.6vw 1.601vw 0.55vw 1.551vw;}
.sec02 .content .txt {
  font-size: 1.851vw;
  font-weight: 700;
  text-align: center;
  margin: 0 0 0 15.408vw;
  letter-spacing: 0.02em;
}
.sec02 .content02 {
  background: #f1f7fc;
  position: relative;
  width: 60.03vw;
  margin-inline: auto;
  padding: 3.052vw 0 4.052vw;
}
.sec02 .content02::before,
.sec02 .content02::after {
  position: absolute;
  content: "";
  background: #3090FE;

}
.sec02 .content02::before {
  bottom: 0;
  right: 0;
  width: 99.3%;
  height: 0.45vw;
}
.sec02 .content02::after {
  bottom: 0;
  right: -0.4vw;
  width: 0.45vw;
  height: 99.3%;
}
.sec02 .content02 h3 {
  font-size: 1.451vw;
  font-weight: 700;
  line-height: 1.593448;
  text-align: center;
  margin-bottom: 1.801vw;
}
.sec02 .content02 h3 .orange {
  font-size: 1.751vw;
  color: #FF8000;
  border-bottom: 0.7vw solid #FFF000;
}
.sec02 .content02 .list {
  width: 50.025vw;
  margin-inline: auto;
  border: 1px solid #000000;
}
.sec02 .content02 .list li {
  display: grid;
  grid-template-columns: 24.5% 1fr;
}
.sec02 .content02 .list li:not(:last-child) {
  border-bottom: 1px solid #000000;
}
.sec02 .content02 .list li h4 {
  background: #3090fe;
  font-size: 1.401vw;
  text-align: center;
  color: #ff0;
  padding: 0.95vw 0px;
}
.sec02 .content02 .list li .txt {
  font-size: 1.151vw;
  line-height: 1.836956;
  text-align: left;
  background: #FFFFFF;
  padding: 0.5vw 0 0.5vw 1.351vw;
}
.sec02 .content02 .list li:nth-child(2) .txt {padding: 0.5vw 0 0.5vw 1.201vw;}
.sec02 .content02 .list li:nth-child(3) .txt {padding: 0.5vw 0 0.5vw 1.201vw;}

/* sec03
-------------------------------------*/
.sec03 .top {
  background: #ff8000;
  padding: 3.902vw 0 4.902vw;
  position: relative;
}
.sec03 .top::after {
  position: absolute;
  content: "";
  background: url(../img/sec03-tsunagi.png)no-repeat;
  background-size: contain;
  width: 0.25vw;
  height: 5.347vw;
  bottom: -2.699vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec03 .top h2 {
  font-size: 2.901vw;
  font-weight: 700;
  line-height: 1.56896;
  text-align: center;
  color: #fff;
  margin-bottom: 3.052vw;
  letter-spacing: 0.02em;
  padding-left: 1.001vw;
}
.sec03 .top h2 .yellow {
  color: #FFF000;
}
.sec03 .top .list {
  width: 60.03vw;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.901vw;
}
.sec03 .top .list li {
  position: relative;
  font-size: 1.451vw;
  letter-spacing: 0.03em;
  font-weight: 700;
  line-height: 1.75;
  text-align: center;
  background: #fff;
  padding: 2.101vw 0 1.251vw;
}
.sec03 .top .list li::before {
  position: absolute;
  content: "";
  background: url(../img/sec03-check.png)no-repeat;
  background-size: contain;
  width: 3.052vw;
  height: 3.052vw;
  top: -1.451vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec03 .bottom {
  background: #fcf1ea;
  padding: 8.704vw 0 5.003vw;
}
.sec03 .bottom .content {
  width: 60.03vw;
  margin-inline: auto;
  background: #fff;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
  text-align: center;
  padding: 0 0 3.502vw;
}
.sec03 .bottom h3 {
  background: url(../img/sec03-fukidashi.png)no-repeat;
  background-size: 100%;
  font-size: 1.401vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  padding: 1.651vw 0 3.252vw 0.9vw;
  position: relative;
  top: -3.852vw;
  width: 50.225vw;
  margin-inline: auto;
  margin-bottom: -2.201vw;
}
.sec03 .bottom h3 .orange {
  font-size: 1.651vw;
  letter-spacing: 0.03em;
  line-height: 1.484848;
  text-align: center;
  color: #ff8000;
}
.sec03 .bottom h3 .bold {
  font-weight: 900;
  background: linear-gradient(transparent 60%, #FFF000 30%);
}
.sec03 .bottom h4 {
  font-size: 1.651vw;
  line-height: 1.5151;
  font-weight: 700;
  text-align: center;
  position: relative;
  display: inline-block;
  margin-bottom: 2.551vw;
}
.sec03 .bottom h4::before,
.sec03 .bottom h4::after {
  position: absolute;
  content: "";
  width: 2.201vw;
  height: 5.453vw;
  top: -0.35vw;
}
.sec03 .bottom h4::before {
  background: url(../img/sec03-gekkeijyu-left.png)no-repeat;
  background-size: contain;
  left: -1.901vw;
}
.sec03 .bottom h4::after {
  background: url(../img/sec03-gekkeijyu-right.png)no-repeat;
  background-size: contain;
  right: -1.901vw;
}
.sec03 .bottom .subt {
  font-size: 1.151vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  width: 41.871vw;
  padding: 0 0 0 5.703vw;
  margin-bottom: 3.502vw;
}
.sec03 .tokuten .list {
  width: 50.025vw;
  margin-inline: auto;
  margin-bottom: 3.302vw;
  border: 0.1vw  solid #ff8000;
  background: #fff;
  position: relative;
}
.sec03 .tokuten .list::before {
  position: absolute;
  content: "";
  background: url(../img/sec03-illust.png)no-repeat;
  background-size: contain;
  width: 18.559vw;
  height: 11.156vw;
  top: -11.206vw;
  right: -3.402vw;
  z-index: 1;
}
.sec03 .tokuten .list li {
  position: relative;
}
.sec03 .tokuten .list li .label {
  position: absolute;
  top: -1.201vw;
  left: -4.202vw;
}
.sec03 .tokuten .list li .label img {
  width: 8.404vw;
}
.sec03 .tokuten .list li h5 {
  background: url(../img/sec01-tokutentit-bg.png)no-repeat;
  background-size: cover;
  padding: 1.151vw 0 1.651vw 5.903vw;
  background-position: top -5px left 3px;
  text-align: left;
  font-size: 1.551vw;
  letter-spacing: 0.03em;
  color: #fff;
  text-shadow: 2px 2px 3px rgba(79, 63, 50, 0.4);
}
.sec03 .tokuten .list li h5 span {font-weight: 700;font-size: 2.201vw;letter-spacing: 0.03em;color: #ffff00;
  text-shadow:
  rgb(241, 90, 36) 0.200vw 0vw 0vw,
  rgb(241, 90, 36) 0.194vw 0.050vw 0vw,
  rgb(241, 90, 36) 0.176vw 0.096vw 0vw,
  rgb(241, 90, 36) 0.146vw 0.136vw 0vw,
  rgb(241, 90, 36) 0.108vw 0.168vw 0vw,
  rgb(241, 90, 36) 0.063vw 0.190vw 0vw,
  rgb(241, 90, 36) 0.014vw 0.200vw 0vw,
  rgb(241, 90, 36) -0.036vw 0.197vw 0vw,
  rgb(241, 90, 36) -0.083vw 0.182vw 0vw,
  rgb(241, 90, 36) -0.126vw 0.156vw 0vw,
  rgb(241, 90, 36) -0.160vw 0.120vw 0vw,
  rgb(241, 90, 36) -0.185vw 0.076vw 0vw,
  rgb(241, 90, 36) -0.198vw 0.028vw 0vw,
  rgb(241, 90, 36) -0.199vw -0.022vw 0vw,
  rgb(241, 90, 36) -0.187vw -0.070vw 0vw,
  rgb(241, 90, 36) -0.164vw -0.114vw 0vw,
  rgb(241, 90, 36) -0.131vw -0.151vw 0vw,
  rgb(241, 90, 36) -0.089vw -0.179vw 0vw,
  rgb(241, 90, 36) -0.042vw -0.196vw 0vw,
  rgb(241, 90, 36) 0.008vw -0.200vw 0vw,
  rgb(241, 90, 36) 0.057vw -0.192vw 0vw,
  rgb(241, 90, 36) 0.102vw -0.172vw 0vw,
  rgb(241, 90, 36) 0.142vw -0.141vw 0vw,
  rgb(241, 90, 36) 0.173vw -0.101vw 0vw,
  rgb(241, 90, 36) 0.192vw -0.056vw 0vw,
  rgb(241, 90, 36) 0.200vw -0.007vw 0vw,
  0.100vw 0.100vw 0.150vw rgba(79, 63, 50, 0.4);
}
.sec03 .tokuten .list li .span02,
.sec03 .tokuten .list li .span03 {margin: 0 0 0 0.25vw;}
.sec03 .tokuten .list li .txt {font-size: 1.151vw;line-height: 1.75;color: #000;letter-spacing: 0.01em;text-align: justify;}
.sec03 .tokuten .list li .txt-frame {
  display: grid;
  grid-template-columns: 27.964vw 14.407vw;
  gap: 2.201vw;
  align-items: center;
  padding: 2.651vw 2.701vw 3.102vw;
}

.sec03 .btn a {padding: 1.151vw 0.45vw 1.301vw 0;font-size: 2.001vw;line-height: 1.75;}
.sec03 .btn a::before {
  background: url(../img/sec03-btn-imasugu.png)no-repeat;
  background-size: contain;
  width: 5.903vw;
  height: 3.452vw;
  position: absolute;
  content: "";
  top: 0.4vw;
  left: 0.6vw;
}
.sec03 .btn a span {
  font-size: 2.001vw;
  line-height: 1.75;
}


/* sec04
-------------------------------------*/
.sec04 {
  padding: 8.004vw 0 5.003vw;
}
.sec04 .content {
  width: 60.03vw;
  margin-inline: auto;
  background: #f2f8fd;
  border: 1px solid #3090fe;
  padding: 0 0 3.202vw;
  margin-bottom: 3.552vw;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
}
.sec04 .content h2 {
  background: url(../img/sec04-tit-fukidashi.png)no-repeat;
  background-size: cover;
  font-size: 2.282vw;
  line-height: 1.75;
  color: #fff;
  margin-bottom: -3.952vw;
  position: relative;
  top: -5.853vw;
  width: 50.025vw;
  margin-inline: auto;
  padding: 3.802vw 2.001vw 2.851vw;
  font-weight: 600;
}
.sec04 .content h2 span {
  font-feature-settings: "palt";
}
.sec04 .movie {
  margin-inline: auto;
  width: 50.025vw;
  padding: 0 0 1.201vw;
}
.sec04 .movie iframe {
  height: 28.014vw;
  width: 100%;
}
.sec04 .content .desc {
  font-size: 1.051vw;
  line-height: 1.75;
  text-align: right;
  color: #000;
  margin-bottom: 2.501vw;
  padding-right: 2.151vw;
}
.sec04 .content .txt {
  font-size: 1.351vw;
  line-height: 1.75;
  text-align: center;
  color: #000000;
  padding: 0 0 0 1.051vw;
  margin-bottom: 1.401vw;
}
.sec04 .content .lead {
  font-size: 1.501vw;
  line-height: 2.6;
  text-align: center;
  color: #fff;
}
.sec04 .content .lead .span01 {
  padding: 0.4vw 1.001vw 0.8vw;  
  background: #FF8000;
}
.sec04 .content .lead .span02 {
  background: #FF8000;
  padding: 0.4vw 0.85vw 0.8vw;
}
.sec04 .btn a {padding: 1.151vw 0 1.301vw 3.252vw;font-size: 2.001vw;line-height: 1.75;}
.sec04 .btn a span {
  font-size: 2.001vw;
  line-height: 1.75;
}


/* sec05
-------------------------------------*/
.sec05 {
  background-color: #FCF1EA;
  padding: 0 0 7.004vw;
}
.sec05 h2 {
  font-size: 2.901vw;
  font-weight: 700;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  background: url(../img/sec05-title-bg.png)no-repeat;
  background-size: cover;
  padding: 2.051vw 0 5.203vw;
  margin-bottom: 0.4vw;
}
.sec05 h2 .span01 {
  display: block;
  font-size: 2.601vw;
  line-height: 1.75;
  margin-bottom: -0.6vw;
}
.sec05 h2 .yellow {
  color: #FFF000;
}
.sec05 .table-box {
  width: 50.025vw;
  margin-inline: auto;
  background: #fff;
  border: 0.05vw solid #1c1c1c;
  margin-bottom: 1.201vw;
}
.sec05 .table-box .list li {
  display: grid;
  grid-template-columns: 24.5% 1fr;
  border-bottom: 0.05vw solid #1c1c1c;
}
.sec05 .table-box li h3 {
  background: #ff8000;
  font-size: 2.001vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  padding: 1.351vw 0 1.651vw;
  border-right: 0.05vw solid #1c1c1c;
}
.sec05 .table-box li:nth-child(2) h3 {
  padding: 6.103vw 0;
}
.sec05 .table-box li .content {
  padding: 1.151vw 1.751vw 0;
}
.sec05 .table-box li:nth-child(2) .content {padding: 2.151vw 0px 1.601vw 1.651vw;}
.sec05 .table-box li .content .wrap {
  display: flex;
  gap: 6.703vw;
  align-items: center;
}
.sec05 .table-box li .content .price{
  font-size: 1.501vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
}
.sec05 .table-box li .content .price .bold {
  font-size: 1.751vw;
  font-weight: 700;
  position: relative;
  left: -0.05vw;
}
.sec05 .table-box li .content .price .small {
  font-size: 1.251vw;
  letter-spacing: 0.03em;
}
.sec05 .table-box li .content .price .month {
  position: relative;
  left: 0.1vw;
  letter-spacing: 0;
  margin: 0 0.25vw 0 0;
}
.sec05 .table-box li .content .free{
  font-size: 2.501vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #ff8000;
  position: relative;
}
.sec05 .table-box li .content .free::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-yajirushi.png)no-repeat;
  background-size: contain;
  width: 4.452vw;
  height: 1.801vw;
  top: 50%;
  left: -5.503vw;
  transform: translateY(-50%);
}
.sec05 .table-box li .content .case {
  font-size: 1.501vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  border: 0.05vw solid #ff8000;
  display: inline-block;
  padding: 0 0.7vw;
  margin-bottom: -0.1vw;
}
.sec05 .table-box li .content .price01 {
  padding: 0 0 0 0.3vw;
  margin-bottom: 0.9vw;
}
.sec05 .table-box li .content .price02 {
  padding: 0 0 0 0.3vw;
}
.sec05 .desc {
  font-size: 1.051vw;
  line-height: 1.75;
  text-align: left;
  color: #000;
  width: 49.575vw;
  margin-inline: auto;
  padding: 0 0 4.752vw;
}
.sec05 .cta {
  background: #ffd8c3;
  margin-bottom: 5.853vw;
}
.sec05 .cta .inner {
  background: #ffd8c3;
  width: 61.131vw;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 50.3923% 44.4353%;
  gap: 2.451vw;
  padding: 3.502vw 0 3.602vw;
  align-items: start;
}
.sec05 .cta .inner .frame {
  background: url(../img/sec05-tokuten-frame.png)no-repeat;
  background-size: contain;
  padding: 7.954vw 2.151vw 1.601vw;
  margin: 1.501vw 0 0;
}
.sec05 .cta .inner .frame .list {
  display: grid;
  gap: 0.85vw;
}
.sec05 .cta .inner .frame .list li {
  font-size: 1.233vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 1.501vw;
}
.sec05 .cta .inner .frame .list li::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-tokuten-check.png)no-repeat;
  background-size: contain;
  width: 1.401vw;
  height: 1.451vw;
  top: 50%;
  left: -0.2vw;
  transform: translateY(-50%);
}
.sec05 .cta .inner .frame .list li:not(:last-child)::after {
  position: absolute;
  content: "";
  background: url(../img/sec05-tokuten-line.png)no-repeat;
  background-size: contain;
  width: 100%;
  height: 0.15vw;
  bottom: -0.45vw;
  left: -0.25vw;
}
.sec05 .cta .inner .btn-frame {
  display: grid;
  gap: 1.651vw;
}
.sec05 .cta .inner .btn {
  background: url(../img/sec05-btn.png)no-repeat;
  background-size: 100%;
  width: 27.164vw;
}
.sec05 .cta .inner .btn a {
  font-size: 1.401vw;
  line-height: 1.75;
  text-align: left;
  color: #fff;
  padding: 1.551vw 2.251vw 1.851vw;
}
.sec05 .cta .inner .btn02 a {padding: 1.051vw 0 1.4vw 1.801vw;}
.sec05 .cta .inner .btn03 a {padding: 1.601vw 0 1.751vw 0;text-align: center;}
.sec05 .cta .inner .btn a span {
  color: #fff;
}
.sec05 .cta .inner .btn a .small {
  font-size: 1.001vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #fff;
  display: block;
  text-align: center;
  font-weight: 500;
  margin: -0.5vw 0 0 -2.301vw;
}

.sec05 .plan  {
  width: 50.025vw;
  margin-inline: auto;
  background: #3090fe;
  padding: 2.551vw 2.851vw 1.301vw 4.352vw;
  position: relative;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
}
.sec05 .plan::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-illust.png)no-repeat;
  background-size: contain;
  width: 13.307vw;
  height: 10.755vw;
  top: -2.851vw;
  right: 2.401vw;
}
.sec05 .plan h3 {
  font-size: 2.101vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #ff0;
  margin-bottom: 2.451vw;
  font-weight: 600;
  padding: 0 0 0 0.4vw;
  position: relative;
}
.sec05 .plan h3::after {
  position: absolute;
  content: "";
  background: #FFFFFF;
  width: 30.565vw;
  height: 0.25vw;
  bottom: 0;
  left: 0.25vw;
}
.sec05 .plan .txt {
  font-size: 1.151vw;
  line-height: 1.75;
  color: #fff;
  margin-bottom: 2.051vw;
}
.sec05 .plan .txt .yellow {
  color: #FFFF00;
}

/* sec06
-------------------------------------*/
.sec06 {
  background: #F2F8FD;
}
.sec06 .inner {
  width: 60.03vw;
  margin-inline: auto;
  padding: 4.802vw 0 5.003vw;
}
.sec06 h2 {
  font-size: 2.901vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #3090fe;
  margin-bottom: 1.851vw;
  position: relative;
  z-index: 0;
}
.sec06 h2::after {
  position: absolute;
  content: "";
  background: #FFF000;
  width: 87.8%;
  height: 0.95vw;
  bottom: 0.8vw;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
}
.sec06 .lead {
  font-size: 1.501vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  margin-bottom: 2.901vw;
  font-weight: 700;
}
.sec06 .table {
  background: url(../img/sec06-frame.png)no-repeat;
  background-size: contain;
  padding: 2.901vw 5.253vw 3.402vw;
  margin-bottom: 3.502vw;
}
.sec06 .table .txt {
  font-size: 1.151vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  margin-bottom: 0.55vw;
}
.sec06 .table .txt02 {
  font-size: 1.351vw;
  letter-spacing: 0.03em;
  line-height: 1;
  text-align: center;
  color: #ff0;
  margin: 1.301vw 0 1.001vw;
}
.sec06 .table .txt02 .bg {
  background: #3090fe;
  padding: 0.45vw 0.85vw;
  display: inline-block;
}
.sec06 .table .txt02 .bg01 {
  margin-bottom: 0.7vw;
}
.sec06 .fukidashi {
  background: url(../img/sec06-fukidashi.png)no-repeat;
  background-size: 100%;
  width: 35.568vw;
  margin-left: auto;
  font-size: 1.501vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #3090fe;
  padding: 2.101vw 0 1.951vw 1.451vw;
  position: relative;
  margin-right: 2.451vw;
}
.sec06 .fukidashi::before {
  position: absolute;
  content: "";
  background: url(../img/sec06-illlust.png)no-repeat;
  background-size: contain;
  width: 21.411vw;
  height: 16.208vw;
  top: 0;
  left: -20.36vw;
}

/* sec07
-------------------------------------*/
.sec07 {
  padding: 3.002vw 0 9.005vw;
}
.sec07 .frame {
  background: url(../img/sec07-frame.png)no-repeat;
  background-size: 100%;
  width: 52.326vw;
  margin-inline: auto;
  position: relative;
  left: -0.7vw;
  padding: 6.253vw 0 2.501vw;
  margin-bottom: 3.402vw;
  text-align: center;
}
.sec07 .frame h2 {
  font-size: 2.251vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 2.351vw;
  margin-bottom: 3.902vw;
  display: inline-block;
}
.sec07 .frame h2::before,
.sec07 .frame h2::after {
  position: absolute;
  content: "";
  width: 1.551vw;
  height: 2.551vw;
  bottom: 0.7vw;
}
.sec07 .frame h2::before {
  background: url(../img/sec7-backslash.png)no-repeat;
  left: 0.2vw;
  background-size: contain;
}
.sec07 .frame h2::after {
  background: url(../img/sec7-slash.png)no-repeat;
  right: -1.651vw;
  background-size: contain;
}
.sec07 .frame h2 span {
  font-size: 2.501vw;
  color: #FFFF00;
}
.sec07 .frame .list {
  display: grid;
  width: 41.471vw;
  margin-inline: auto;
  position: relative;
  left: 0.7vw;
  gap: 1.101vw;
}
.sec07 .frame .list li {
  font-size: 1.901vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  background: #fff;
  border: 0.05vw solid #ff8000;
  padding: 0.3vw 0;
}
.sec07 .btn a {padding: 1.151vw 0 1.301vw 1.851vw;font-size: 2.001vw;line-height: 1.75;text-align: center;}
.sec07 .btn a::before {
  background: url(../img/sec03-btn-imasugu.png)no-repeat;
  background-size: contain;
  width: 5.903vw;
  height: 3.452vw;
  position: absolute;
  content: "";
  top: 0.6vw;
  left: 1.651vw;
}
.sec07 .btn a span {
  font-size: 2.001vw;
  line-height: 1.75;
}

/* sec08
-------------------------------------*/
.sec08 {
  background: #f2f8fd;
}
.sec08 .enttl {
  text-align: center;
  position: relative;
  top: -5.203vw;
  margin-bottom: -8.654vw;
}
.sec08 .enttl img {
  width: 23.562vw;
  margin-inline: auto;
}
.sec08 h2 {
  font-size: 3.712vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  font-weight: 700;
  margin-bottom: 3.802vw;
}
.sec08 .ac-area {
  width: 50.025vw;
  margin-inline: auto;
  display: grid;
  gap: 3.002vw;
  padding: 0 0 5.003vw;
}
.sec08 .ac-area .ttl-box {
  border-radius: 0.5vw 0.5vw 0px 0px;
  background: #3090fe;
  position: relative;
}
.sec08 .ac-area .ttl-box h3 {
  font-size: 1.401vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: left;
  color: #fff;
  padding: 0.8vw 0px 0.8vw 3.152vw;
}
.sec08 .ac-area .ttl-box h3::before {
  position: absolute;
  content: "Q. ";
  font-size: 1.401vw;
  font-weight: 700;
  left: 1.101vw;
  top: 50%;
  transform: translateY(-50%);
}
.sec08 .ac-area .accordion-content {
  border-radius: 0.5vw 0.5vw 0px 0px;
  background: #fff;
  transition: all .3s;
}
.sec08 .ac-area .accordion-content p{
  font-size: 1.151vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  padding: 1.551vw 2.101vw 2.151vw;
}
.sec08 .ac-area .content:first-child p {
  padding: 1.401vw 2.101vw 1.801vw;
}
.sec08 .ac-area .ttl-box::after {
  content: "";
  position: absolute;
  width: 1.601vw;
  height: 1.601vw;
  background-image: url(../img/sec08-hiraku.png);
  background-size: contain;
  top: 54%;
  right: 0.8vw;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  transition: .3s;
}
.sec08 .ac-area .ttl-box.is-active::after {
  width: 1.601vw;
  height: 0.1vw;
  background-image: url(../img/sec08-tojiru.png);
  background-size: contain;
  background-repeat: no-repeat;
  transition: .3s;
}
.sec08 .ac-area .accordion-content  {
  background-color: #fff;
}
.accordion-content {
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition-duration: .3s;
}
.accordion-content.is-open {
  line-height: normal;
  height: auto;
  opacity: 1;
}

/* sec09
-------------------------------------*/
.sec09 {
  background: url(../img/sec9-bg.png)no-repeat bottom center;
  background-size: contain;
  padding: 5.003vw 0 8.904vw;
  margin-bottom: -4.052vw;
}
.sec09 .frame {
  background: url(../img/sec09-frame-bg.png)no-repeat;
  background-size: contain;
  width: 44.122vw;
  margin-inline: auto;
  position: relative;
  padding: 3.002vw 0 1.951vw 0;
  margin-bottom: 11.906vw;
  text-align: center;
}
.sec09 .frame::before {
  position: absolute;
  content: "";
  background: url(../img/sec09-illust-inframe.png)no-repeat;
  width: 10.005vw;
  height: 10.505vw;
  bottom: 0.2vw;
  left: 0.8vw;
  z-index: 2;
  background-size: contain;
}
.sec09 .frame h2 {
  position: relative;
  font-size: 1.501vw;
  font-weight: 700;
  display: inline-block;
  margin-bottom: 1.401vw;
  color: #000;
  text-align: center;
}
.sec09 .frame h2::before,
.sec09 .frame h2::after {
  position: absolute;
  content: "";
  width: 1.101vw;
  height: 2.201vw;
  bottom: -0.55vw;
}
.sec09 .frame h2::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -1.551vw;
}
.sec09 .frame h2::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -1.001vw;
}
.sec09 .frame h2 .line {
  position: relative;
}
.sec09 .frame h2 .line::after {
  position: absolute;
  content: "";
  bottom: 0px;
  left: 53%;
  width: 100%;
  height: 0.65vw;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}
.sec09 .frame h3{
  margin-bottom: 1.751vw;
  font-size: 2.101vw;
  color: #3090FE;
  font-weight: 700;
  letter-spacing: 0.03em;
}
.sec09 .frame .orange {
  color: #FF8000;
}
.sec09 .frame .txt {
  font-size: 1.001vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  text-align: justify;
  margin-inline: auto;
  padding: 0 0 0 10.455vw;
}
.sec09 .btnArea {
  text-align: center;
  position: relative;
}
.sec09 .btnArea::before {
  position: absolute;
  content: "";
  background: url(../img/sec09-illust.png)no-repeat;
  background-size: contain;
  width: 20.36vw;
  height: 8.454vw;
  top: -8.854vw;
  left: 49.7%;
  transform: translateX(-50%);
}
.sec09 .btnArea .txt {
  display: inline-block;
  text-align: center;
  font-size: 2.001vw;
  position: relative;
  margin-bottom: 1.551vw;
}
.sec09 .btnArea .txt::before,
.sec09 .btnArea .txt::after {
  position: absolute;
  content: "";
  width: 1.401vw;
  height: 2.351vw;
  bottom: -0.05vw;
}
.sec09 .btnArea .txt::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -1.151vw;
}
.sec09 .btnArea .txt::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -1.351vw;
}
.sec09 .btnArea .txt .orange {
  color: #FF8000;
  font-weight: 700;
  letter-spacing: 0.03em;
  font-size: 2.151vw;
}
.sec09 .btn a {
  padding: 0.75vw 0 1.351vw;
}
.sec09 .countdown {
  padding: 0.6vw 0 0px;
}
.sec09 .counter {
  font-size: 2.451vw;
  width: 42.171vw;
}
.sec09 .counter .label {
  font-size: 2.151vw;
  margin-right: 0.5vw;
}
.sec09 .counter .num {
  font-size: 3.152vw;
  font-weight: bold;
  margin: 0 0.4vw;
}
.sec09 .frame02 {
  background: url(../img/sec07-frame.png)no-repeat;
  background-size: 100%;
  width: 52.326vw;
  margin-inline: auto;
  position: relative;
  left: -0.7vw;
  padding: 6.253vw 0 2.501vw;
  text-align: center;
}
.sec09 .frame02 h2 {
  font-size: 2.251vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 2.351vw;
  margin-bottom: 3.902vw;
  display: inline-block;
}
.sec09 .frame02 h2::before,
.sec09 .frame02 h2::after {
  position: absolute;
  content: "";
  width: 1.551vw;
  height: 2.551vw;
  bottom: 0.7vw;
}
.sec09 .frame02 h2::before {
  background: url(../img/sec7-backslash.png)no-repeat;
  background-size: contain;
  left: 0.2vw;
}
.sec09 .frame02 h2::after {
  background: url(../img/sec7-slash.png)no-repeat;
  background-size: contain;
  right: -1.651vw;
}
.sec09 .frame02 h2 span {
  font-size: 2.501vw;
  color: #FFFF00;
}
.sec09 .frame02 .list {
  display: grid;
  width: 41.471vw;
  margin-inline: auto;
  position: relative;
  left: 1.001vw;
  gap: 1.101vw;
}
.sec09 .frame02 .list li {
  font-size: 1.901vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  background: #fff;
  border: 0.05vw solid #ff8000;
  padding: 0.3vw 0;
}

/* footer
-------------------------------------*/
.footer {
  background-color: #FF8000;
  padding: 4.502vw 0 5.353vw;
}
.footer .footer-link {
  display: flex;
  justify-content: center;
  gap: 4.002vw;
}
.footer .footer-link li a {
  font-size: 1.101vw;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.75;
  text-decoration: none;
  letter-spacing: 0;
}
.footer .footer-link li{
  position: relative;
}
.footer .footer-link li:nth-child(1)::after{
  content: "";
  position: absolute;
  width: 0.05vw;
  height: 1.101vw;
  background-color: #FFFFFF;
  top: 54%;
  right: -2.401vw;
  transform: translateY(-50%);
}
.footer .footer-link li:nth-child(2)::after {
  content: "";
  position: absolute;
  width: 0.05vw;
  height: 1.101vw;
  background-color: #FFFFFF;
  top: 54%;
  right: -2.351vw;
  transform: translateY(-50%);
}
.footer .footer-txt-box {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.footer .footer-txt-box .contact-box {
  font-size: 1.051vw;
  line-height: 1.8;
  color: #FFFFFF;
  text-align: justify;
  position: relative;
  left: 3.452vw;
}
.footer .footer-txt-box .contact-box .logo-wrap {
  display: flex;
  align-items: center;
  gap: 0.7vw;
  margin: 0.1vw 0 -2.201vw 0;
}
.footer .footer-txt-box .contact-box .logo-wrap img {
  width: 8.054vw;
  height: 1.551vw;
}
.footer .unei {
  display: block;
  margin-bottom: -0.3vw;
  line-height: 1.7;
}
.footer .footer-txt-box .contact-box .mail {
  margin: 0.35vw 0 0;
}
.footer .footer-txt-box {
  margin-top: 2.401vw;
  text-align: center;
  background-repeat: no-repeat;
  width: 62.431vw;
  margin-inline: auto;
  grid-template-columns: 45.4% 1fr;
  gap: 0.35vw;
}
.footer .footer-txt {
  font-size: 1.051vw;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.71428;
  text-align: left;
}

.footer .copyright {
  text-align: center;
  color: #FFFFFF;
  margin-top: 2.801vw;
  font-size: 1.051vw;
}


}



@media screen and (max-width: 767px) {
.pc{ display: none !important; }
.sp { display: block !important; }

.img{
  vertical-align:bottom;
}

body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

.btn {
  background: url(../img/btn-sp.png)no-repeat;
  background-size: 100%;
  width: 85.20vw;
  margin-inline: auto;
}
.btn a {
  font-size: 5.867vw;
  font-weight: 700;
  line-height: 1.75;
  color: #FFFFFF;
  display: block;
  padding: 4.6vw 2.5vw 6vw 0;
  text-decoration: none;
  position: relative;
}
.btn a span {
  color: #FFFF00;
}


/* fv
-------------------------------------*/
.fv {
  background: url(../img/fv-bg-sp.png) no-repeat top center;
  background-size: 100%;
  text-align: center;
  position: relative;
  padding: 26.2vw 0 0;
  margin-bottom: -45vw;
}
.fv .subt {
  font-size: 4.7vw;
  font-weight: 600;
  letter-spacing: 0em;
  padding-left: 1.5vw;
  margin-bottom: 4.5vw;
  text-align: left;
}
.fv .subt span {
  position: relative;
  left: -3vw;
}
.fv h1 {
  font-size: 9.067vw;
  color: #ff8000;
  display: inline-block;
  font-weight: 700;
  margin-bottom: 4vw;
}
.fv h1 .span01,
.fv h1 .span02 {
  font-size: 9.58vw;
  font-weight: 500;
  letter-spacing: 0;
  background: #ff8000;
  color: #fff;
  display: block;
}
.fv h1 .span01 {padding: 0.9vw 1.9vw 1.3vw 4vw;letter-spacing: 0;margin-bottom: -6.5vw;}
.fv h1 .span02 {
  width: 57.08vw;
  margin-inline: auto;
  padding: 0.9vw 0vw 1.3vw 1.5vw;
  margin-bottom: -7vw;
}
.fv h1 .span03 {
  padding-left: 9vw;
  font-size: 9.61vw;
}
.fv h1 .span04 {position: relative;left: -1.20vw;}
.fv h1 .span05 {position: relative;left: -2.80vw;}
.fv h1 .span06 {position: relative;left: -0.13vw;}
.fv h1 .span07 {position: relative;left: -0.7vw;}
.fv h1 .span08 {position: relative;left: -2.5vw;}
.fv .content {
  background: url(../img/fv-letter-sp.png)no-repeat;
  background-size: contain;
  position: relative;
  width: 70.53vw;
  margin-inline: auto;
  padding: 21.5vw 0 14.2vw;
  background-position: top 6vw left 2.6vw;
}
.fv .content .subt {
  background: url(../img/fv-fukidashi-sp.png)no-repeat;
  font-size: 3.83vw;
  color: #FFFFFF;
  position: absolute;
  top: 7.9vw;
  left: -7.2vw;
  padding: 1.9vw 0 9.2vw 0.5vw;
  background-size: 100%;
  background-position: top left;
}
.fv .content .subt span {
  transform: rotate(-2.5deg);
  display: block;
  font-weight: 400;
  position: relative;
  top: 0.9vw;
  left: 1vw;
}
.fv .content .txt {
  font-size: 3.68vw;
  font-weight: 700;
  margin-bottom: 3.7vw;
}
.fv .content .txt:last-of-type {margin: 4.5vw 0 0;}
.fv .content .txt span {
  position: relative;
  z-index: 1;
}
.fv .content .txt span::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 50%;
  width: 91%;
  height: 1.87vw;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}

/* sec01
-------------------------------------*/
.sec01 {
  background: #FCF1EA;
  padding: 48.4vw 0 0;
}
.sec01 .inner {
  width: 92.00vw;
  margin-inline: auto;
  padding-bottom: 12.2vw;
}
.sec01 .frame {
  background: url(../img/sec01-frame.png)no-repeat;
  background-size: contain;
  position: relative;
  text-align: left;
  padding: 4.5vw 0 5vw 10vw;
  margin-bottom: 7vw;
}
.sec01 .frame::before {
  position: absolute;
  content: "";
  background: url(../img/sec01-illust-inframe.png)no-repeat;
  width: 20.6vw;
  height: 25.60vw;
  bottom: 0.25vw;
  left: 13vw;
  z-index: 2;
  background-size: contain;
}
.sec01 .frame .label {
  position: absolute;
  top: -5.2vw;
  left: 2.5vw;
}
.sec01 .frame .label img {
  width: 18.27vw;
}
.sec01 .frame h2 {
  position: relative;
  font-size: 3.333vw;
  display: inline-block;
  margin-bottom: 3vw;
  color: #000;
  padding: 0 0 0 21vw;
  letter-spacing: 0;
}
.sec01 .frame h2::before,
.sec01 .frame h2::after {
  position: absolute;
  content: "";
  width: 2.27vw;
  height: 4.00vw;
  bottom: -0.5vw;
}
.sec01 .frame h2::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: 18vw;
}
.sec01 .frame h2::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -2.5vw;
}
.sec01 .frame h2 .bold {
  font-weight: 700;
}
.sec01 .frame h2 .large {
  font-size: 4.133vw;
  font-weight: 700;
  position: relative;
  top: 0;
  left: -1.7vw;
  margin-right: 0.13vw;
  letter-spacing: 0;
  z-index: 0;
  margin-right: -2vw;
}
.sec01 .frame h2 .large::after {
  position: absolute;
  content: "";
  bottom: 0px;
  left: 53%;
  width: 100%;
  height: 2.27vw;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}
.sec01 .frame .lead01 {
  margin-bottom: 1.6vw;
  font-size: 5.867vw;
  color: #3090FE;
  font-weight: 700;
  text-align: center;
  padding: 0px 0 0 10vw;
}
.sec01 .frame .lead02 {
  font-size: 5.867vw;
  color: #FF8000;
  font-weight: 700;
  letter-spacing: 0;
  text-align: center;
  padding: 0 0 0 10vw;
}
.sec01 .btnArea {
  text-align: center;
}
.sec01 .btnArea .txt {
  display: inline-block;
  text-align: center;
  font-size: 5.6vw;
  position: relative;
  left: 0.8vw;
  margin-bottom: 4vw;
}
.sec01 .btnArea .txt::before,
.sec01 .btnArea .txt::after {
  position: absolute;
  content: "";
  width: 3.73vw;
  height: 6.27vw;
  bottom: -0.93vw;
}
.sec01 .btnArea .txt::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -5vw;
}
.sec01 .btnArea .txt::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -4vw;
}
.sec01 .btnArea .txt .bold {
  font-weight: 700;
}
.sec01 .btnArea .txt .small {
  font-size: 4.933vw;
}
.sec01 .btnArea .txt .orange {
  color: #FF8000;
  font-weight: 700;
  position: relative;
  top: 0;
  left: 0.2vw;
  letter-spacing: 0.07em;
  margin-right: 0.53vw;
}

.sec01 .tokuten {
  background: #FFFFFF;
  padding-bottom: 9vw;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
}
.sec01 .tokuten .list {
  display: grid;
  gap: 12.67vw;
  width: 84.00vw;
  margin-inline: auto;
  padding: 12vw 0 0;
  margin-bottom: 8.5vw;
}
.sec01 .tokuten .list li {
  background: #fcf1ea;
  position: relative;
  left: 0;
  border: 0.27vw solid #ff8000;
}
.sec01 .tokuten .list li .label {
  position: absolute;
  top: -7.5vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec01 .tokuten .list li .label img {
  width: 16.9vw;
}
.sec01 .tokuten .list li h3 {
  background: url(../img/sec01-tokutentit-bg-sp.png)no-repeat;
  background-size: 101%;
  font-size: 5.067vw;
  color: #fff;
  text-shadow: 2px 2px 3px rgba(79, 63, 50, 0.4);
  padding: 10vw 0 4.5vw;
  letter-spacing: 0.03em;
  text-align: center;
  background-position: top -0.2vw center;
}
.sec01 .tokuten .list li h3 span {font-weight: 700;font-size: 5.867vw;letter-spacing: 0.03em;color: #ffff00;display: block;margin: 1.5vw 0 0;
  text-shadow:
  rgb(241, 90, 36) 0.522vw 0vw 0vw,
  rgb(241, 90, 36) 0.505vw 0.129vw 0vw,
  rgb(241, 90, 36) 0.457vw 0.250vw 0vw,
  rgb(241, 90, 36) 0.382vw 0.356vw 0vw,
  rgb(241, 90, 36) 0.282vw 0.439vw 0vw,
  rgb(241, 90, 36) 0.164vw 0.495vw 0vw,
  rgb(241, 90, 36) 0.037vw 0.520vw 0vw,
  rgb(241, 90, 36) -0.093vw 0.513vw 0vw,
  rgb(241, 90, 36) -0.217vw 0.474vw 0vw,
  rgb(241, 90, 36) -0.328vw 0.406vw 0vw,
  rgb(241, 90, 36) -0.419vw 0.313vw 0vw,
  rgb(241, 90, 36) -0.483vw 0.200vw 0vw,
  rgb(241, 90, 36) -0.518vw 0.073vw 0vw,
  rgb(241, 90, 36) -0.518vw -0.056vw 0vw,
  rgb(241, 90, 36) -0.489vw -0.183vw 0vw,
  rgb(241, 90, 36) -0.428vw -0.298vw 0vw,
  rgb(241, 90, 36) -0.341vw -0.395vw 0vw,
  rgb(241, 90, 36) -0.232vw -0.467vw 0vw,
  rgb(241, 90, 36) -0.110vw -0.509vw 0vw,
  rgb(241, 90, 36) 0.020vw -0.521vw 0vw,
  rgb(241, 90, 36) 0.148vw -0.500vw 0vw,
  rgb(241, 90, 36) 0.267vw -0.448vw 0vw,
  rgb(241, 90, 36) 0.369vw -0.367vw 0vw,
  rgb(241, 90, 36) 0.452vw -0.264vw 0vw,
  rgb(241, 90, 36) 0.502vw -0.146vw 0vw,
  rgb(241, 90, 36) 0.521vw -0.017vw 0vw,
  0.261vw 0.261vw 0.391vw rgba(79, 63, 50, 0.4);

}
.sec01 .tokuten .list li .content {
  padding: 5vw 5.1vw 6.2vw;
  display: grid;
  gap: 4vw;
}
.sec01 .tokuten .list li .content .txt {font-size: 4vw;line-height: 1.5666;text-align: center;color: #000;letter-spacing: 0;order: 2;}
.sec01 .tokuten .list li .content .img {
  text-align: center;
  margin-inline: auto;
}
.sec01 .btn02 a {
  font-size: 5.333vw;
  line-height: 1.75;
  padding: 4.6vw 0 7vw 9.2vw;
}

/* countdown
-------------------------------------*/
.countdown {
  padding: 5.5vw 0 10vw;
}
.counter {
  display: block;
  max-width: 100%;
  margin: 0 auto;
  text-align: center;
  font-size: 5.2vw;
  line-height: 1.5em;
  font-weight: 500;
}
.counter .label {
  font-size: 4.533vw;
  margin-right: 1.93vw;
}
.counter .num {
  font-size: 6.8vw;
  font-weight: bold;
}


/* sec02
-------------------------------------*/
.sec02 {
  padding: 0 0 11.2vw;
  background: url(../img/sec02-bg-sp.png)no-repeat center;
  background-size: cover;
}
.sec02 h2 {
  background: #3090fe;
  padding: 6.8vw 0 4.5vw;
  text-align: center;
  font-size: 5.867vw;
  letter-spacing: 0.03em;
  line-height: 1.875;
  color: #fff;
  font-weight: 700;
  font-feature-settings: normal;
}
.sec02 h2 .span01 {
  font-size: 6.533vw;
  line-height: 1;
  text-align: left;
  color: #3090fe;
  background: #fff;
  display: inline-block;
  font-weight: 600;
  padding: 1vw 2vw 1.5vw 4.8vw;
  letter-spacing: 0;
  width: 91.73vw;
}
.sec02 h2 .span02 {
  font-feature-settings: "palt";
}
.sec02 .content {
  padding: 7.5vw 0;
}
.sec02 .content .inner {
  position: relative;
}
.sec02 .content .inner::before {
  position: absolute;
  content: "";
  background: url(../img/sec02-illust.png)no-repeat;
  background-size: contain;
  width: 35.73vw;
  height: 22.67vw;
  top: -1vw;
  right: 1.5vw;
}
.sec02 .content .list {
  display: grid;
  gap: 4vw;
}
.sec02 .content .list li {
  font-size: 4.133vw;
  color: #fff;
  line-height: 1.6129;
  background: #3a3a3a;
  padding: 2.2vw 0 2vw 4.4vw;
  width: 58.93vw;
  order: 1;
}
.sec02 .content .list li:nth-child(2) {position: relative;order: 3;width: 52.53vw;padding: 2vw 0 2vw 4.5vw;margin-left: auto;}
.sec02 .content .list li:nth-child(3) {position: relative;left: 10.5vw;width: 70.4vw;padding: 1.5vw 0 2.5vw 3.8vw;}
.sec02 .content02 {
  background: #f1f7fc;
  position: relative;
  width: 92.00vw;
  margin-inline: auto;
  padding: 7vw 0 9vw;
}
.sec02 .content02::before,
.sec02 .content02::after {
  position: absolute;
  content: "";
  background: #3090FE;
}
.sec02 .content02::before {
  bottom: 0;
  right: 0;
  width: 98.5%;
  height: 1.20vw;
}
.sec02 .content02::after {
  bottom: 0;
  right: -1.2vw;
  width: 1.20vw;
  height: 99.5%;
}
.sec02 .content02 h3 {
  font-size: 4.4vw;
  font-weight: 700;
  line-height: 1.49;
  text-align: center;
  margin-bottom: 5.5vw;
}
.sec02 .content02 h3 .orange {
  font-size: 6.667vw;
  color: #FF8000;
  position: relative;
  z-index: 0;
}
.sec02 .content02 h3 .orange::after {
  position: absolute;
  content: "";
  bottom: 0.5vw;
  left: 50%;
  width: 100%;
  height: 1.73vw;
  background: #FFF000;
  z-index: -1;
  transform: translateX(-50%);
}
.sec02 .content02 .list {
  width: 84.67vw;
  margin-inline: auto;
  border: 0.13vw solid #000000;
}
.sec02 .content02 .list li {
  display: grid;
  grid-template-columns: 38.5% 1fr;
}
.sec02 .content02 .list li:not(:last-child) {
  border-bottom: 0.13vw solid #000000;
}
.sec02 .content02 .list li h4 {
  background: #3090fe;
  font-size: 4.4vw;
  text-align: center;
  color: #ff0;
  padding: 10.5vw 0px;
}
.sec02 .content02 .list li .txt {
  font-size: 3.733vw;
  line-height: 1.46428;
  text-align: left;
  background: #FFFFFF;
  padding: 5vw 3.2vw 4.8vw 4vw;
}


/* sec03
-------------------------------------*/
.sec03 .top {
  background: #ff8000;
  padding: 10vw 0 11vw;
  position: relative;
}
.sec03 .top::after {
  position: absolute;
  content: "";
  background: url(../img/sec03-tsunagi.png)no-repeat;
  background-size: contain;
  width: 0.67vw;
  height: 14.27vw;
  bottom: -7.2vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec03 .top h2 {
  font-size: 8vw;
  font-weight: 700;
  line-height: 1.366666;
  text-align: center;
  color: #fff;
  margin-bottom: 10vw;
  letter-spacing: 0.02em;
  position: relative;
  left: 1vw;
}
.sec03 .top h2 .yellow {
  color: #FFF000;
}
.sec03 .top .list {
  width: 69.33vw;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 9vw;
}
.sec03 .top .list li {
  position: relative;
  font-size: 4.4vw;
  letter-spacing: 0.03em;
  font-weight: 700;
  line-height: 1.5757;
  text-align: center;
  background: #fff;
  padding: 6.2vw 0;
}
.sec03 .top .list li::before {
  position: absolute;
  content: "";
  background: url(../img/sec03-check.png)no-repeat;
  background-size: contain;
  width: 8.07vw;
  height: 8.07vw;
  top: -4vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec03 .bottom {
  background: #fcf1ea;
  padding: 45.5vw 0 12.5vw;
}
.sec03 .bottom .content {
  width: 92.00vw;
  margin-inline: auto;
  background: #fff;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
  text-align: center;
  padding: 0 0 8.5vw;
}
.sec03 .bottom h3 {
  background: url(../img/sec03-fukidashi-sp.png)no-repeat;
  background-size: contain;
  font-size: 4vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  padding: 4vw 0 9vw 0vw;
  position: relative;
  width: 92.00vw;
  margin-inline: auto;
  top: -33vw;
  margin-bottom: -28.2vw;
}
.sec03 .bottom h3 .orange {
  font-size: 4.8vw;
  letter-spacing: 0.03em;
  line-height: 1.458333;
  text-align: center;
  color: #ff8000;
}
.sec03 .bottom h3 .bold {
  font-weight: 900;
  background: linear-gradient(transparent 80%, #FFF000 20%);
  font-size: 5.867vw;
}
.sec03 .bottom h4 {
  font-size: 4.4vw;
  line-height: 1.5151;
  font-weight: 700;
  text-align: center;
  position: relative;
  display: inline-block;
  margin-bottom: 40.2vw;
}
.sec03 .bottom h4::before,
.sec03 .bottom h4::after {
  position: absolute;
  content: "";
  width: 5.87vw;
  height: 14.53vw;
  top: -1.5vw;
}
.sec03 .bottom h4::before {
  background: url(../img/sec03-gekkeijyu-left.png)no-repeat;
  background-size: contain;
  left: -5.2vw;
}
.sec03 .bottom h4::after {
  background: url(../img/sec03-gekkeijyu-right.png)no-repeat;
  background-size: contain;
  right: -5.2vw;
}
.sec03 .bottom .subt {
  font-size: 4vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  margin-bottom: 13vw;
}
.sec03 .tokuten .list {
  width: 84.27vw;
  margin-inline: auto;
  margin-bottom: 9vw;
  background: #fff;
  position: relative;
  display: grid;
  gap: 15vw;
}
.sec03 .tokuten .list::before {
  position: absolute;
  content: "";
  background: url(../img/sec03-illust.png)no-repeat;
  background-size: contain;
  width: 49.47vw;
  height: 29.47vw;
  top: -76.5vw;
  left: 51%;
  transform: translateX(-50%);
  z-index: 1;
}
.sec03 .tokuten .list li {
  position: relative;
  background: #FCF1EA;
  border: 0.27vw solid #ff8000;
}
.sec03 .tokuten .list li .label {
  position: absolute;
  top: -7.2vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec03 .tokuten .list li .label img {
  width: 16.53vw;
}
.sec03 .tokuten .list li h5 {
  background: url(../img/sec01-tokutentit-bg-sp.png)no-repeat;
  background-size: 101%;
  padding: 8vw 1vw 3.8vw 0;
  font-size: 4.133vw;
  letter-spacing: 0.03em;
  color: #fff;
  text-shadow: 2px 2px 3px rgba(79, 63, 50, 0.4);
  text-align: center;
  line-height: 1.5;
  background-position: top -0.2vw center;
}
.sec03 .tokuten .list li:nth-child(3) h5 {
  padding: 9.5vw 1vw 8vw;
}
.sec03 .tokuten .list li h5 span {font-weight: 700;font-size: 5.867vw;letter-spacing: 0.03em;color: #ffff00;display: block;
  text-shadow:
  rgb(241, 90, 36) 0.522vw 0vw 0vw,
  rgb(241, 90, 36) 0.505vw 0.129vw 0vw,
  rgb(241, 90, 36) 0.457vw 0.250vw 0vw,
  rgb(241, 90, 36) 0.382vw 0.356vw 0vw,
  rgb(241, 90, 36) 0.282vw 0.439vw 0vw,
  rgb(241, 90, 36) 0.164vw 0.495vw 0vw,
  rgb(241, 90, 36) 0.037vw 0.520vw 0vw,
  rgb(241, 90, 36) -0.093vw 0.513vw 0vw,
  rgb(241, 90, 36) -0.217vw 0.474vw 0vw,
  rgb(241, 90, 36) -0.328vw 0.406vw 0vw,
  rgb(241, 90, 36) -0.419vw 0.313vw 0vw,
  rgb(241, 90, 36) -0.483vw 0.200vw 0vw,
  rgb(241, 90, 36) -0.518vw 0.073vw 0vw,
  rgb(241, 90, 36) -0.518vw -0.056vw 0vw,
  rgb(241, 90, 36) -0.489vw -0.183vw 0vw,
  rgb(241, 90, 36) -0.428vw -0.298vw 0vw,
  rgb(241, 90, 36) -0.341vw -0.395vw 0vw,
  rgb(241, 90, 36) -0.232vw -0.467vw 0vw,
  rgb(241, 90, 36) -0.110vw -0.509vw 0vw,
  rgb(241, 90, 36) 0.020vw -0.521vw 0vw,
  rgb(241, 90, 36) 0.148vw -0.500vw 0vw,
  rgb(241, 90, 36) 0.267vw -0.448vw 0vw,
  rgb(241, 90, 36) 0.369vw -0.367vw 0vw,
  rgb(241, 90, 36) 0.452vw -0.264vw 0vw,
  rgb(241, 90, 36) 0.502vw -0.146vw 0vw,
  rgb(241, 90, 36) 0.521vw -0.017vw 0vw,
  0.261vw 0.261vw 0.391vw rgba(79, 63, 50, 0.4);
}
.sec03 .tokuten .list li:nth-child(2) h5 span {font-size: 5.333vw;}
.sec03 .tokuten .list li:nth-child(3) h5 span {display: inline-block;}
.sec03 .tokuten .list li .txt {font-size: 3.867vw;line-height: 1.75;color: #000;padding: 5.5vw 3.9vw;letter-spacing: 0;text-align: justify;font-feature-settings: "palt";order: 2;}
.sec03 .tokuten .list li .txt-frame {
  display: grid;
  gap: -1vw;
}
.sec03 .tokuten .list li .txt-frame .img {
  width: 56.00vw;
  margin-inline: auto;
  order: 1;
  padding: 8vw 0 0;
}
.sec03 .btn a {padding: 5vw 0 7vw 1vw;font-size: 5.333vw;line-height: 1.75;text-align: center;}
.sec03 .btn a::before {
  background: url(../img/sec03-btn-imasugu.png)no-repeat;
  background-size: contain;
  width: 15.73vw;
  height: 9.20vw;
  position: absolute;
  content: "";
  top: 3vw;
  left: 3vw;
}
.sec03 .btn a span {
  font-size: 5.333vw;
  line-height: 1.75;
}

/* sec04
-------------------------------------*/
.sec04 {
  margin-top: 25vw;
  background: #F2F8FD;
  padding: 0 0 11.5vw;
}
.sec04 .content {
  padding: 0 0 4vw;
  margin-bottom: 4vw;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);  
}
.sec04 .content h2 {
  background: url(../img/sec04-tit-fukidashi-sp.png)no-repeat;
  background-size: cover;
  font-size: 5.867vw;
  line-height: 1.3636;
  color: #fff;
  position: relative;
  margin-inline: auto;
  font-weight: 600;
  width: 94.13vw;
  top: -14vw;
  padding: 6vw 5.2vw 9vw 0;
  text-align: center;
  margin-bottom: -9.4vw;
}
.sec04 .content h2 span {
  font-feature-settings: "palt";
}
.sec04 .movie {
  margin-inline: auto;
  width: 84.00vw;
  margin-bottom: 5.3vw;
}
.sec04 .movie iframe {
  height: 42.00vw;
  width: 100%;
}
.sec04 .content .desc {
  font-size: 2.8vw;
  line-height: 1.75;
  text-align: right;
  color: #000;
  margin-bottom: 5vw;
  padding: 0 4vw 0 0;
}
.sec04 .content .txt {
  font-size: 4vw;
  line-height: 1.75;
  text-align: center;
  color: #000000;
  margin-bottom: 6vw;
}
.sec04 .content .lead {
  font-size: 4.667vw;
  line-height: 2.21879;
  text-align: center;
  color: #fff;
}
.sec04 .content .lead .span01 {
  background: #FF8000;
  display: block;
  width: 83.47vw;
  margin-inline: auto;
  margin-bottom: 2vw;
  line-height: 1;
  padding: 2vw 0;
}
.sec04 .content .lead .span02 {
  background: #FF8000;
  display: block;
  width: 76.40vw;
  margin-inline: auto;
  line-height: 1;
  padding: 2vw 0;
  margin-bottom: 2vw;
}
.sec04 .content .lead .span03 {
  background: #FF8000;
  display: block;
  width: 87.20vw;
  margin-inline: auto;
  line-height: 1;
  padding: 2vw 0;
}
.sec04 .btn a {font-size: 5.333vw;line-height: 1.75;padding: 5.4vw 1vw 7vw 0;text-align: center;}
.sec04 .btn a span {
  font-size: 5.333vw;
  line-height: 1.75;
}

/* sec05
-------------------------------------*/
.sec05 {
  padding: 0 0 12.2vw;
}
.sec05 h2 {
  font-size: 8.133vw;
  font-weight: 700;
  line-height: 1.4754;
  text-align: center;
  color: #fff;
  background: url(../img/sec05-title-bg-sp.png)no-repeat;
  background-size: cover;
  padding: 4.5vw 0 11.5vw 2.2vw;
  background-position: center;
  background-color: #FCF1EA;
}
.sec05 h2 .span01 {
  display: block;
  font-size: 6.933vw;
  line-height: 1.75;
}
.sec05 h2 .yellow {
  color: #FFF000;
}
.sec05 .table-box-wrap {
  background-color: #FCF1EA;
  padding: 3.5vw 0 0;
}
.sec05 .table-box {
  width: 92.00vw;
  margin-inline: auto;
  background: #fff;
  border: 0.13vw solid #1c1c1c;
  margin-bottom: 4.7vw;
}
.sec05 .table-box .list li {
  display: grid;
  grid-template-columns: 35.7% 1fr;
  border-bottom: 0.13vw solid #1c1c1c;
}
.sec05 .table-box li h3 {
  background: #ff8000;
  font-size: 5.333vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  padding: 8.2vw 0 9vw;
  border-right: 0.13vw solid #1c1c1c;
}
.sec05 .table-box li:nth-child(2) h3 {padding: 38.2vw 0 0;}
.sec05 .table-box li .content {
  padding: 2.5vw 2vw 0;
  text-align: center;
}
.sec05 .table-box li:nth-child(2) .content {
    padding: 5vw 0 1vw;
}
.sec05 .table-box li .content .price{
  font-size: 4vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  margin-bottom: 3.5vw;
}
.sec05 .table-box li .content .price .bold {
  font-size: 4.667vw;
  font-weight: 700;
  position: relative;
  left: 2vw;
  margin: 0 2vw 0 0;
}
.sec05 .table-box li .content .price .small {
  font-size: 3.333vw;
  letter-spacing: 0.03em;
}
.sec05 .table-box li .content .price .month {
  position: relative;
  letter-spacing: 0;
}
.sec05 .table-box li .content .free{
  font-size: 6.667vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #ff8000;
  position: relative;
}
.sec05 .table-box li .content .free::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-yajirushi-sp.png)no-repeat;
  background-size: contain;
  width: 18.13vw;
  height: 3.87vw;
  top: -2.8vw;
  left: 50%;
  transform: translateX(-50%);
}
.sec05 .table-box li .content .case {
  font-size: 4vw;
  letter-spacing: 0.03em;
  line-height: 1.5;
  color: #000;
  border: 0.13vw solid #ff8000;
  display: inline-block;
  padding: 1vw 0vw 1.5vw;
  margin-bottom: 1vw;
  width: 44.67vw;
}
.sec05 .table-box li .content .price01 {margin-bottom: 6.8vw;}
.sec05 .table-box li .content .yajirushi {
  margin-inline: auto;
  display: block;
  margin: 0 0 -2.4vw;
}
.sec05 .desc {
  font-size: 2.933vw;
  line-height: 1.75;
  text-align: left;
  color: #000;
  width: 92.13vw;
  margin-inline: auto;
  padding: 0 0 11vw;
  letter-spacing: 0;
}
.sec05 .cta {
  background: #ffd8c3;
  margin-bottom: 12.5vw;
}
.sec05 .cta .inner {
  background: #ffd8c3;
  width: 92.00vw;
  margin-inline: auto;
  display: grid;
  gap: 8.5vw;
  padding: 12vw 0 12vw;
  align-items: start;
}
.sec05 .cta .inner .frame {
  background: url(../img/sec05-tokuten-frame-sp.png)no-repeat;
  background-size: 100%;
  padding: 24vw 0 4vw;
}
.sec05 .cta .inner .frame .list {
  display: grid;
  gap: 2.7vw;
  width: 84.40vw;
  margin-inline: auto;
}
.sec05 .cta .inner .frame .list li {
  font-size: 3.867vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 5.5vw;
}
.sec05 .cta .inner .frame .list li::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-tokuten-check.png)no-repeat;
  background-size: contain;
  width: 4.5vw;
  height: 5.03vw;
  top: 50%;
  left: 0vw;
  transform: translateY(-50%);
}
.sec05 .cta .inner .frame .list li:not(:last-child)::after {
  position: absolute;
  content: "";
  background: url(../img/sec05-tokuten-line-sp.png)no-repeat;
  background-size: contain;
  width: 100%;
  height: 0.40vw;
  bottom: -1.4vw;
  left: 0;
}
.sec05 .cta .inner .btn-frame {
  display: grid;
  gap: 7vw;
}
.sec05 .cta .inner .btn a {
  font-size: 4.267vw;
  line-height: 1.75;
  text-align: left;
  color: #fff;
  padding: 6.2vw 0 7.2vw 6.8vw;
}
.sec05 .cta .inner .btn02 a {
    padding: 3.5vw 0 7.2vw 5.2vw;
    margin: 0 0 -2vw;
}
.sec05 .cta .inner .btn03 a {text-align: center;padding: 6.2vw 0 7.2vw 0;}
.sec05 .cta .inner .btn a span {
  color: #fff;
}
.sec05 .cta .inner .btn a .small {
  font-size: 2.933vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #fff;
  display: block;
  text-align: center;
  font-weight: 500;
  padding: 0 10vw 0 0;
  margin: -0.4vw 0 0;
}

.sec05 .plan  {
  width: 92.00vw;
  margin-inline: auto;
  background: #3090fe;
  position: relative;
  padding: 6.2vw 4.2vw 5.8vw;
  box-shadow: 10px 10px 10px rgba(141, 128, 118, 0.2);
}
.sec05 .plan::before {
  position: absolute;
  content: "";
  background: url(../img/sec05-illust.png)no-repeat;
  width: 35.33vw;
  height: 28.53vw;
  top: 21.5vw;
  left: 50%;
  transform: translateX(-50%);
  background-size: contain;
}
.sec05 .plan h3 {
  font-size: 5.6vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #ff0;
  margin-bottom: 37.2vw;
  font-weight: 600;
  position: relative;
  padding: 0 0 0 4.2vw;
}
.sec05 .plan h3::after {
  position: absolute;
  content: "";
  background: #FFFFFF;
  width: 74.67vw;
  height: 0.67vw;
  bottom: 0;
  left: 4vw;
}
.sec05 .plan .txt {
  font-size: 3.867vw;
  line-height: 1.75;
  color: #fff;
  margin-bottom: 6.8vw;
}
.sec05 .plan .txt:last-child {
  margin-bottom: 0;
}
.sec05 .plan .txt .yellow {
  color: #FFFF00;
}

/* sec06
-------------------------------------*/
.sec06 {
  background: #F2F8FD;
}
.sec06 .inner {
  width: 93.20vw;
  margin-inline: auto;
  padding: 10vw 0 47vw;
}
.sec06 h2 {
  font-size: 7.733vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.43;
  text-align: center;
  color: #3090fe;
  margin-bottom: 5.5vw;
  position: relative;
  z-index: 0;
}
.sec06 h2 span {
  position: relative;
}
.sec06 h2 span::after {
  position: absolute;
  content: "";
  background: #FFF000;
  width: 100%;
  height: 2.53vw;
  bottom: 0.5vw;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
}
.sec06 .lead {
  font-size: 4.267vw;
  letter-spacing: 0.03em;
  line-height: 1.65625;
  text-align: center;
  margin-bottom: 6.2vw;
  font-weight: 700;
  padding: 0 0 0 2vw;
}
.sec06 .table {
  background: url(../img/sec06-frame-bg.png)no-repeat;
  background-size: 100%;
  padding: 7.5vw 5.2vw 11vw;
  margin-bottom: 5.5vw;
}
.sec06 .table .txt {
  font-size: 3.867vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #000;
  margin-bottom: 0;
  font-weight: 400;
}
.sec06 .table .txt02 {
  font-size: 4.133vw;
  letter-spacing: 0.03em;
  line-height: 1;
  text-align: center;
  color: #ff0;
  margin: 4.5vw 0 4vw;
}
.sec06 .table .txt02 .bg {
  background: #3090fe;
  padding: 1vw 2vw;
  display: inline-block;
}
.sec06 .table .txt02 .bg01 {
  margin-bottom: 2vw;
}
.sec06 .table .txt02 .bg02 {
  margin-bottom: 2vw;
}
.sec06 .fukidashi {
  background: url(../img/sec06-fukidashi-sp.png)no-repeat;
  background-size: contain;
  width: 85.73vw;
  margin-inline: auto;
  font-size: 4vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #3090fe;
  position: relative;
  padding: 5.5vw 0 9vw;
}
.sec06 .fukidashi::before {
  position: absolute;
  content: "";
  background: url(../img/sec06-illlust.png)no-repeat;
  background-size: contain;
  width: 56.93vw;
  height: 43.20vw;
  bottom: -47vw;
  left: 19.5vw;
}

/* sec07
-------------------------------------*/
.sec07 {
  padding: 1.2vw 0 22vw;
}
.sec07 .frame {
  background: url(../img/sec07-frame-sp.png)no-repeat;
  width: 93.47vw;
  margin-inline: auto;
  position: relative;
  padding: 12.8vw 0 9vw;
  margin-bottom: 8.5vw;
  text-align: center;
  background-size: contain;
}
.sec07 .frame h2 {
  font-size: 6vw;
  letter-spacing: 0.03em;
  line-height: 1.3;
  text-align: center;
  color: #fff;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 15.2vw;
  margin-bottom: 9.5vw;
  display: inline-block;
}
.sec07 .frame h2::before,
.sec07 .frame h2::after {
  position: absolute;
  content: "";
  width: 6.80vw;
  height: 13.33vw;
  bottom: 1vw;
}
.sec07 .frame h2::before {
  background: url(../img/sec7-backslash-sp.png)no-repeat;
  background-size: contain;
  left: 10.2vw;
}
.sec07 .frame h2::after {
  background: url(../img/sec7-slash-sp.png)no-repeat;
  background-size: contain;
  right: -4.6vw;
}
.sec07 .frame h2 span {
  font-size: 6.667vw;
  color: #FFFF00;
}
.sec07 .frame .list {
  display: grid;
  width: 84.00vw;
  margin-inline: auto;
  position: relative;
  gap: 2vw;
}
.sec07 .frame .list li {
  font-size: 3.867vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  background: #fff;
  border: 0.13vw solid #ff8000;
  padding: 0.2vw 0 1vw;
}
.sec07 .btn a {padding: 5vw 0 7vw 5vw;font-size: 5.333vw;line-height: 1.75;text-align: center;}
.sec07 .btn a::before {
  background: url(../img/sec03-btn-imasugu.png)no-repeat;
  background-size: contain;
  width: 17.33vw;
  height: 9vw;
  position: absolute;
  content: "";
  top: 3vw;
  left: 7.5vw;
}
.sec07 .btn a span {
  font-size: 5.333vw;
  line-height: 1.75;
}

/* sec08
-------------------------------------*/
.sec08 {
  background: #f2f8fd;
  padding: 0 0 12.53vw;
}
.sec08 .enttl {
  text-align: center;
  position: relative;
  top: -14vw;
  margin-bottom: -20.8vw;
}
.sec08 .enttl img {
  width: 62.4vw;
  margin-inline: auto;
}
.sec08 h2 {
  font-size: 9.867vw;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  font-weight: 700;
  margin-bottom: 5.8vw;
  padding: 0 4vw 0 0;
}
.sec08 .ac-area {
  width: 92.00vw;
  margin-inline: auto;
  display: grid;
  gap: 8vw;
}
.sec08 .ac-area .ttl-box {
  border-radius: 1.33vw 1.33vw 0px 0px;
  background: #3090fe;
  position: relative;
}
.sec08 .ac-area .ttl-box h3 {
  font-size: 4.133vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.5161;
  text-align: left;
  color: #fff;
  padding: 2vw 0 2.5vw 8.5vw;
  position: relative;
}
.sec08 .ac-area .ttl-box h3::before {
  position: absolute;
  content: "Q. ";
  left: 2.6vw;
  font-size: 4.133vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  top: 2vw;
}
.sec08 .ac-area .accordion-content {
  border-radius: 1.33vw 1.33vw 0px 0px;
  background: #fff;
  transition: all .3s;
}
.sec08 .ac-area .accordion-content p{
  font-size: 3.733vw;
  letter-spacing: 0.03em;
  line-height: 1.5357;
  color: #000;
  padding: 4.5vw 4.4vw 5.5vw;
  font-weight: 400;
}
.sec08 .ac-area .content:first-child p {padding: 5.5vw 4.4vw 6vw;}
.sec08 .ac-area .ttl-box::after {
  content: "";
  position: absolute;
  width: 3.20vw;
  height: 3.20vw;
  background-image: url(../img/sec08-hiraku.png);
  background-size: contain;
  top: 54%;
  right: 2vw;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  transition: .3s;
}
.sec08 .ac-area .ttl-box.is-active::after {
  width: 3.20vw;
  height: 0.27vw;
  background-image: url(../img/sec08-tojiru.png);
  background-size: contain;
  background-repeat: no-repeat;
  transition: .3s;
}
.sec08 .ac-area .accordion-content  {
  background-color: #fff;
}
.accordion-content {
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition-duration: .3s;
}
.accordion-content.is-open {
  line-height: normal;
  height: auto;
  opacity: 1;
}

/* sec09
-------------------------------------*/
.sec09 {
  background: url(../img/sec9-bg-sp.png)no-repeat bottom center;
  background-size: contain;
  padding: 12.53vw 0 1vw;
  margin-bottom: -1vw;
}
.sec09 .frame {
  background: url(../img/sec09-frame-sp.png)no-repeat;
  background-size: 100%;
  width: 91.60vw;
  margin-inline: auto;
  position: relative;
  padding: 9.7vw 0;
  margin-bottom: 33.5vw;
  text-align: center;
}
.sec09 .frame::before {
  position: absolute;
  content: "";
  background: url(../img/sec09-illust-inframe.png)no-repeat;
  width: 25.30vw;
  height: 24.90vw;
  top: 14vw;
  left: 6.8vw;
  z-index: 2;
  background-size: contain;
}
.sec09 .frame h2 {
  position: relative;
  font-size: 4.05vw;
  font-weight: 700;
  display: inline-block;
  margin-bottom: 6.7vw;
  color: #000;
  text-align: center;
  padding: 0 0 0 2vw;
}
.sec09 .frame h2::before,
.sec09 .frame h2::after {
  position: absolute;
  content: "";
  width: 3.10vw;
  height: 5.5vw;
  bottom: -0.5vw;
}
.sec09 .frame h2::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -2.6vw;
}
.sec09 .frame h2::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -3vw;
}
.sec09 .frame h2 .line {
  position: relative;
  z-index: 0;
}
.sec09 .frame h2 .line::after {
  position: absolute;
  content: "";
  bottom: 0.2vw;
  left: 50%;
  width: 100%;
  height: 2.00vw;
  background: #B4CDD6;
  z-index: -1;
  transform: translateX(-50%);
}
.sec09 .frame h3{
  margin-bottom: 4.2vw;
  font-size: 6.933vw;
  color: #3090FE;
  font-weight: 700;
  letter-spacing: 0.03em;
  padding: 0 0 0 20vw;
}
.sec09 .frame .orange {
  color: #FF8000;
  display: block;
  margin: 1.5vw 0 0;
}
.sec09 .frame .txt {
  font-size: 3.867vw;
  letter-spacing: 0.03em;
  line-height: 1.5517;
  color: #000;
  text-align: justify;
  margin-inline: auto;
  padding: 0 5vw;
}
.sec09 .btnArea {
  text-align: center;
  position: relative;
}
.sec09 .btnArea::before {
  position: absolute;
  content: "";
  background: url(../img/sec09-illust.png)no-repeat;
  background-size: contain;
  width: 55.13vw;
  height: 22.53vw;
  top: -25.5vw;
  left: 46.6%;
  transform: translateX(-50%);
}
.sec09 .btnArea .txt {
  display: inline-block;
  text-align: center;
  font-size: 5.333vw;
  position: relative;
  margin-bottom: 4vw;
}
.sec09 .btnArea .txt::before,
.sec09 .btnArea .txt::after {
  position: absolute;
  content: "";
  width: 3.60vw;
  height: 6.40vw;
  bottom: -1vw;
}
.sec09 .btnArea .txt::before {
  background: url(../img/sec01-backslash.png)no-repeat;
  background-size: contain;
  left: -3vw;
}
.sec09 .btnArea .txt::after {
  background: url(../img/sec01-slash.png)no-repeat;
  background-size: contain;
  right: -3vw;
}
.sec09 .btnArea .txt .orange {
  color: #FF8000;
  font-weight: 700;
  letter-spacing: 0.03em;
  font-size: 5.733vw;
}
.sec09 .btn a {padding: 4.2vw 0 6.2vw;}
.sec09 .countdown {padding: 7vw 0 4.1vw;}
.sec09 .frame02 {
  background: url(../img/sec07-frame-sp.png)no-repeat;
  width: 93.47vw;
  margin-inline: auto;
  position: relative;
  padding: 12.8vw 0 8.5vw;
  margin-bottom: 13.5vw;
  text-align: center;
  background-size: contain;
}
.sec09 .frame02 h2 {
  font-size: 6vw;
  letter-spacing: 0.03em;
  line-height: 1.3;
  text-align: center;
  color: #fff;
  position: relative;
  font-weight: 700;
  padding: 0 0 0 15.2vw;
  margin-bottom: 9.5vw;
  display: inline-block;
}
.sec09 .frame02 h2::before,
.sec09 .frame02 h2::after {
  position: absolute;
  content: "";
  width: 6.80vw;
  height: 13.33vw;
  bottom: 1vw;
}
.sec09 .frame02 h2::before {
  background: url(../img/sec7-backslash-sp.png)no-repeat;
  background-size: contain;
  left: 10.2vw;
}
.sec09 .frame02 h2::after {
  background: url(../img/sec7-slash-sp.png)no-repeat;
  background-size: contain;
  right: -4.6vw;
}
.sec09 .frame02 h2 span {
  font-size: 6.667vw;
  color: #FFFF00;
}
.sec09 .frame02 .list {
  display: grid;
  width: 84.00vw;
  margin-inline: auto;
  position: relative;
  gap: 2vw;
}
.sec09 .frame02 .list li {
  font-size: 3.867vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.75;
  text-align: center;
  color: #000;
  background: #fff;
  border: 0.13vw solid #ff8000;
  padding: 0.2vw 0 1vw;
}


/* footer
-------------------------------------*/
.footer {
  background-color: #FF8000;
  padding: 8vw 0 11vw;
}
.footer .footer-link {
  display: flex;
  justify-content: center;
  gap: 4.4vw;
}
.footer .footer-link li a {
  font-size: 2.667vw;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.8235;
  text-decoration: none;
  letter-spacing: 0;
}
.footer .footer-link li{
  position: relative;
}
.footer .footer-link li:nth-child(1)::after{
  content: "";
  position: absolute;
  width: 1px;
  height: 3.4vw;
  background-color: #FFFFFF;
  top: 62%;
  right: -1.6vw;
  transform: translateY(-50%);
}
.footer .footer-link li:nth-child(2)::after{
  content: "";
  position: absolute;
  width: 1px;
  height: 3.4vw;
  background-color: #FFFFFF;
  top: 62%;
  right: -1.8vw;
  transform: translateY(-50%);
}
.footer .footer-txt-box {
  display: grid;
}
.footer .footer-txt-box .contact-box {
  font-size: 2.8vw;
  line-height: 1.8;
  color: #FFFFFF;
  order: 2;
  text-align: left;
}
.footer .footer-txt-box .contact-box .logo-wrap {
  display: flex;
  align-items: center;
  gap: 1vw;
  justify-content: flex-start;
}
.footer .unei {margin: -5.2vw 0 -0vw;display: block;}
.footer .footer-txt-box .contact-box .mail {
  margin: 1vw 0 0;
}
.footer .footer-txt-box {
  margin-top: 4vw;
  text-align: center;
  background-repeat: no-repeat;
  width: 92vw;
  margin-inline: auto;
  gap: 5.5vw;
}
.footer .footer-txt {
  font-size: 2.8vw;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.71428;
  margin: 1.2vw auto 0;
  order: 1;
}
.footer .footer-logo {width: 46vw;margin-inline: auto;margin-top: 2vw;}
.footer .footer-logo img {
  width: 100%;
}
.footer .copyright {
  text-align: center;
  color: #FFFFFF;
  margin: 6vw 0 0 -3vw;
  font-size: 2.8vw;
}

}

@media screen and (max-width: 750px) {
}