.titleWrap {
  width: 80%;
  margin: 0 auto;
}
.titleWrap .line {
  width: 100%;
  height: 1px;
  background: #2D52B3;
  position: relative;
}
.titleWrap .line::after {
  content: "";
  position: absolute;
  top: 3px;
  width: 100%;
  height: 1px;
  background: #2D52B3;
}
.titleWrap .wrap {
  padding: 8px 0;
}
.titleWrap .wrap h2 {
  padding: 10px 0;
  font-weight: 500;
  text-align: center;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.titleWrap .wrap h2 span {
  color: #2D52B3;
}

.topCta {
  width: 90%;
  margin: 0 auto 25px;
  display: flex;
  gap: 12px;
  align-items: center;
}
.topCta .btn {
  width: 50%;
  border-radius: 16px;
  padding: 22px 20px;
  text-align: center;
  display: grid;
  gap: 6px;
  align-items: center;
  grid-template-columns: max-content max-content;
  justify-content: center;
  cursor: pointer;
}
.topCta .btn img {
  text-align: center;
  margin: 0 auto;
}
.topCta .btn p {
  text-align: left;
  color: #fff;
  font-size: 17px;
}
.topCta .btn:first-child {
  background: #F9D659;
  gap: 12px;
}
.topCta .btn:first-child p {
  color: #2D52B3;
}
.topCta .btn:last-child {
  background: #06C755;
}
.secTop .imgArea {
  padding: 22px 0 40px;
  text-align: center;
}
.secTop .innerWrap .detail {
  font-size: 13px;
  font-weight: 400;
  color: #918C8C;
  max-width: 330px;
  width: 90%;
  margin: 0 auto;
}
.secTop .wrap {
  padding-bottom: 24px;
  gap: 10px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: max-content max-content;
  justify-content: center;
}
.secTop .wrap p:first-child {
  color: #2D52B3;
  font-size: 18px;
  line-height: 160%;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.secTop .wrap p:last-child {
  font-size: 30px;
  line-height: 120%;
}
.secTop .productImg {
  padding-bottom: 25px;
  text-align: center;
  background-image: url(../img/bk1.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.secTop .productImg p {
  font-size: 34px;
  line-height: 130%;
  letter-spacing: 0.15em;
}

@media screen and (min-width: 1101px) {
  .secTop {
    padding-top: 45px;
  }
}
@media screen and (max-width: 1100px) {
  .secTop {
    margin-top: -22px;
  }
  .secTop .topBkArea {
    background-image: url(../img/topbk.jpg);
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 24px 24px 0 0;
  }
  .secTop .innerWrap {
    padding-bottom: 100%;
  }
  .secTop .productImg {
    background-position: top 15px center;
    height: 240px;
    position: relative;
  }
  .secTop .productImg img {
    position: absolute;
    top: -160px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  .secTop .productImg p {
    padding-top: 135px;
    font-size: 34px;
    line-height: 120%;
  }
}
@media screen and (max-width: 600px) {
  .secTop .topBkArea {
    border-radius: 0px 0px 0 0;
  }
  .secTop .productImg {
    height: 240px;
  }
}
.sec2 {
  position: relative;
  background: #F4F7FF;
  border-radius: 32px;
  padding: 65px 0 0px;
}
.sec2 .titleWrap {
  padding-bottom: 43px;
}
.sec2 .titleWrap .wrap h2 {
  background-image: url(../img/bk_icon1.png);
}
.sec2 .contentWrap {
  display: grid;
  gap: 16px;
  position: relative;
  z-index: 2;
}
.sec2 .content {
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 0 3px 0 rgb(205, 215, 241);
  padding: 25px 0 32px;
}
.sec2 .content .wrap {
  display: grid;
  grid-template-columns: max-content;
  align-items: center;
  justify-content: center;
  gap: 11px;
}
.sec2 .content .wrap p {
  color: #2D52B3;
}
.sec2 .content .wrap p b {
  text-decoration: underline;
  text-decoration-color: #FFF625;
  text-underline-offset: 3px;
}
.sec2 .content .detail {
  font-size: 11px;
  line-height: 1.5;
  padding-top: 15px;
  text-align: right;
  letter-spacing: 0.01em;
  font-weight: 400;
}
.sec2 .content .imgWrap {
  padding-top: 33px;
  text-align: center;
}
.sec2 .bottomArea {
  position: relative;
  z-index: 0;
  overflow: hidden;
  margin-top: -90px;
  height: 100%;
}
.sec2 .bottomArea .textArea {
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  text-align: center;
  width: 100%;
}
.sec2 .bottomArea .textArea .tx1 {
  color: #FFF625;
  font-size: 20px;
  font-weight: 500;
}
.sec2 .bottomArea .textArea .tx2 {
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.05em;
  color: #fff;
  padding: 11px 0 6px;
}
.sec2 .bottomArea .textArea .tx3 {
  padding-top: 4px;
  color: #FFF625;
  font-size: 28px;
  font-weight: bold;
  line-height: 140%;
  letter-spacing: 0.05em;
  text-underline-offset: 5px;
}
.sec2 .bottomArea .textArea .tx3 span {
  text-decoration-line: underline;
  text-decoration-style: wavy;
}
.sec2 .bottomArea .textArea .detail {
  padding-top: 16px;
  font-size: 13px;
  font-weight: 400;
  color: #fff;
}
.sec2 .bottomArea img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (max-width: 600px) {
  .sec2 .bottomArea {
    margin-top: -20%;
  }
}
.sec3 {
  padding-top: 80px;
}
.sec3 .topArea .topText {
  text-align: center;
}
.sec3 .topArea .topText p {
  color: #2D52B3;
}
.sec3 .topArea .imgArea {
  padding: 32px 0 0px;
  position: relative;
}
.sec3 .topArea .imgArea .pr {
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: 45%;
}
.sec3 .mainContent {
  padding-top: 70px;
  background: #F4F7FF;
}
.sec3 .mainContent .detail {
  border-radius: 22px;
  border: 1px solid #2D52B3;
  padding: 8px 0;
  text-align: center;
}
.sec3 .mainContent .detail p {
  color: #2D52B3;
}
.sec3 .mainContent h3 {
  line-height: 140%;
  letter-spacing: 0.05em;
  color: #2D52B3;
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  padding: 13px 0 124px;
}
.sec3 .mainContent .contentWrap {
  border: 1px solid #2D52B3;
  border-radius: 32px;
  background: #fff;
}
.sec3 .mainContent .contentWrap .content {
  padding-bottom: 32px;
}
.sec3 .mainContent .contentWrap .content .videoWrap {
  width: 100%;
  overflow: hidden;
  border-radius: 16px;
  text-align: center;
}
.sec3 .mainContent .contentWrap .content .videoWrap video {
  width: 100%;
  height: auto;
}
.sec3 .mainContent .contentWrap .content .videoWrap .img2 {
  width: 90%;
  margin: 0 auto;
  text-align: center;
}
.sec3 .mainContent .contentWrap .content p {
  padding-top: 15px;
  text-align: center;
}
.sec3 .mainContent .contentWrap .content:first-of-type {
  margin-top: -90px;
}
.sec3 .mainContent .contentWrap .column2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.sec3 .titleWrap {
  padding: 64px 0 122px;
}
.sec3 .titleWrap .wrap h2 {
  font-size: 24px;
  color: #2D52B3;
  background-image: url(../img/bk_icon2.png);
}
.sec3 .titleWrap .wrap h2 span {
  font-size: 28px;
}
.sec3 .bottomArea {
  height: 260px;
  text-align: center;
  background-image: url(../img/bk2_w.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}
.sec3 .bottomArea img {
  position: absolute;
  top: -65px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.secCampaign {
  background: #2D52B3;
  padding: 60px 0;
  position: relative;
  z-index: 1;
}
.secCampaign h2 {
  text-align: center;
  padding-bottom: 20px;
  letter-spacing: 0.15em;
}
.secCampaign p {
  color: #fff;
}
.secCampaign .textArea .topWrap {
  display: flex;
  justify-content: center;
  gap: 10px;
}
.secCampaign .textArea .topWrap p {
  padding-bottom: 5px;
}
.secCampaign .textArea .bottomWrap {
  text-align: center;
  padding: 7px 0 13px;
}
.secCampaign .textArea .bottomWrap p {
  font-size: 28px;
  line-height: 140%;
  letter-spacing: 0.05em;
  font-weight: bold;
}
.secCampaign .textArea .bottomWrap p span {
  color: #FFF625;
}
.secCampaign article {
  padding: 18px 0;
  border-radius: 16px;
  background: #183FA4;
  width: 85%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: max-content max-content;
  margin: 0 auto;
  justify-content: center;
  gap: 16px;
}
.secCampaign article p {
  text-align: center;
  padding-top: 6px;
  font-size: 14px;
  font-weight: 500;
}
.secCampaign article p span {
  font-size: 13px;
  font-weight: 400;
}
.secCampaign .period {
  padding: 24px 0;
  text-align: center;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  gap: 12px;
  align-items: center;
}
.secCampaign .period .kikan {
  background: #fff;
  text-align: center;
  border-radius: 3px;
  width: -moz-fit-content;
  width: fit-content;
  color: #2D52B3;
  padding: 3px 6px;
}
.secCampaign .period .date {
  color: #FFF625;
  font-size: 22px;
}
.secCampaign .period .date span {
  color: #fff;
  font-size: 16px;
}
.secCampaign .period + .detail {
  font-size: 13px;
  font-weight: 400;
  margin: 0 auto;
  width: 85%;
  padding-bottom: 18px;
  line-height: 140%;
}
.secCampaign .btnArea {
  width: 85%;
  margin: 0 auto;
  display: flex;
  gap: 12px;
}
.secCampaign .btnArea .btn {
  width: 50%;
  border-radius: 16px;
  padding: 31px 0 37px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.secCampaign .btnArea .btn img {
  text-align: center;
  margin: 0 auto;
}
.secCampaign .btnArea .btn:first-child {
  background: #F9D659;
  gap: 12px;
}
.secCampaign .btnArea .btn:first-child p {
  color: #2D52B3;
}
.secCampaign .btnArea .btn:last-child {
  background: #06C755;
  gap: 3px;
}
.secCampaign .btnArea .btn:last-child p {
  color: #fff;
}
.secCampaign .anoWrap {
  margin: 5px auto 10px;
  background: #FFF625;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 15px;
}
.secCampaign .ano {
  color: #2D52B3;
  text-align: center;
  padding: 10px;
  font-weight: bold;
  font-size: 17px;
}

.secCampaign::after {
  content: "";
  position: absolute;
  width: 80%;
  height: 100%;
  background-image: url(../img/cam_bk_b.png);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: -1;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.sec4 {
  overflow: hidden;
}
.sec4 .content {
  position: relative;
  margin: 56px 0 80px;
  padding: 45px 0;
}
.sec4 .content .titleWrap {
  position: relative;
}
.sec4 .content .titleWrap .wrap {
  padding-top: 26px;
}
.sec4 .content .titleWrap .wrap h2 {
  color: #2D52B3;
}
.sec4 .content .titleWrap .waku {
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  color: #2D52B3;
  padding: 8px 18px;
  border-radius: 22px;
  background: #fff;
  border: 1px solid #2D52B3;
  width: -moz-max-content;
  width: max-content;
}
.sec4 .content .swiper {
  padding: 25px 0 25px;
}
.sec4 .content .swiper .swiper-slide {
  background: #fff;
  border-radius: 20px;
}
.sec4 .content .swiper .swiper-slide .wrap {
  padding: 8px;
  position: relative;
}
.sec4 .content .swiper .swiper-slide .wrap .textWrap {
  position: absolute;
  right: 0;
  bottom: 0;
  background: #fff;
  padding: 9px 13px;
  border-radius: 8px 0 20px 16px;
}
.sec4 .content .swiper .swiper-slide .wrap .textWrap p {
  color: #2D52B3;
}
.sec4 .content .swiper .swiper-pagination {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  display: flex;
  justify-content: center;
}
.sec4 .content .swiper .swiper-pagination .swiper-pagination-bullet {
  opacity: 1;
  background: #fff;
  border: 1px solid #2D52B3;
}
.sec4 .content .swiper .swiper-pagination .swiper-pagination-bullet-active {
  background: #2D52B3;
}
.sec4 .content .bottomText {
  padding-top: 24px;
  font-size: 13px;
  font-weight: 400;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  line-height: 140%;
}
.sec4 .content::after {
  content: "";
  width: 700px;
  height: 700px;
  z-index: -1;
  position: absolute;
  border-radius: 50%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  background: #F9D659;
}

@media screen and (max-width: 500px) {
  .sec4 .content::after {
    width: 650px;
    height: 650px;
  }
}
.sec5 .titleWrap {
  padding-bottom: 43px;
}
.sec5 .titleWrap .wrap h2 {
  background-image: url(../img/bk_icon4.png);
  color: #2D52B3;
}
.sec5 .contentWrap {
  display: grid;
  gap: 56px;
  padding-bottom: 80px;
}
.sec5 .contentWrap .content {
  text-align: center;
}
.sec5 .contentWrap .content .innerWrap .wrap {
  margin: -58px auto 0;
  width: -moz-fit-content;
  width: fit-content;
  display: grid;
  grid-template-columns: max-content 1fr;
  align-items: flex-end;
  padding-bottom: 14px;
  gap: 16px;
}
.sec5 .contentWrap .content .innerWrap .wrap p {
  text-align: left;
  color: #2D52B3;
}
.sec5 .contentWrap .content .innerWrap .wrap + p {
  max-width: 320px;
  margin: 0 auto;
  text-align: left;
}
.sec5 .contentWrap .content .innerWrap .wrap + p span {
  background: linear-gradient(transparent 60%, #FFF625 0%);
  color: #2D52B3;
  font-weight: bold;
}

.secSet {
  padding-bottom: 32px;
}
.secSet .topArea {
  background: #2D52B3;
  text-align: center;
  border-radius: 12px 12px 0 0;
  padding: 6px 0;
}
.secSet .topArea h2 {
  color: #fff;
}
.secSet .bottomArea {
  background: #F4F7FF;
  padding: 18px 0 28px;
  border-radius: 0 0 12px 12px;
}
.secSet .bottomArea .content {
  border: 1px solid #2D52B3;
  border-radius: 6px;
  padding: 16px 0;
  margin: 0px auto 32px;
  width: 90%;
  text-align: center;
}
.secSet .bottomArea .content .pointWrap {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  display: flex;
  gap: 6px;
  align-items: center;
  text-align: left;
}
.secSet .bottomArea .content .txtArea {
  width: -moz-fit-content;
  width: fit-content;
  text-align: left;
  width: fit-content;
  margin: 0 auto;
}
.secSet .bottomArea .content .txtArea p {
  font-size: 16px;
  font-weight: 500;
}
.secSet .bottomArea .content .wrap {
  display: flex;
  gap: 5px;
  justify-content: center;
  padding: 15px 0 25px;
}
.secSet .bottomArea .tantai {
  margin: 0 auto;
  width: -moz-fit-content;
  width: fit-content;
}
.secSet .bottomArea .tantai .catWrap {
  display: flex;
  align-items: center;
  gap: 6px;
  justify-content: center;
  padding-bottom: 3px;
}
.secSet .bottomArea .tantai .catWrap .cat {
  border-radius: 22px;
  border: 1px solid #2D52B3;
  padding: 4px 12px;
}
.secSet .bottomArea .tantai .catWrap .cat p {
  font-size: 14px;
  color: #2D52B3;
}
.secSet .bottomArea .tantai .detail {
  font-size: 14px;
  font-weight: 500;
  color: #918C8C;
  line-height: 140%;
}
.secSet .bottomArea .tantai .catWrap + p {
  padding: 15px 0 10px;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-size: 16px;
  font-weight: 500;
}
.secSet .bottomArea .tantai .first {
  padding: 18px 0;
}
.secSet .bottomArea .tantai .imgWrap {
  width: 100%;
  text-align: center;
  margin: 0 auto;
}

@media screen and (max-width: 380px) {
  .secSet .bottomArea .content .pointWrap img {
    width: 80px;
    height: auto;
  }
}
.sec6 {
  padding-bottom: 32px;
}
.sec6 .topArea {
  background: #F9D659;
  text-align: center;
  border-radius: 12px 12px 0 0;
  padding: 6px 0;
}
.sec6 .topArea h2 {
  color: #2D52B3;
  font-weight: bold;
}
.sec6 .topArea h2 span {
  color: #2D52B3;
  font-weight: 400;
  font-size: 24px;
}
.sec6 .bottomArea {
  border-radius: 0 0 12px 12px;
  padding: 30px 0;
  background: #FFFBEB;
  background-image: url(../img/cam_bk.png);
  background-position: right 20px;
  background-repeat: no-repeat;
  background-size: 150px auto;
}
.sec6 .bottomArea .contentWrap {
  width: 90%;
  margin: 0 auto;
}
.sec6 .bottomArea .contentWrap .detail {
  padding-top: 11px;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.005em;
}
.sec6 .bottomArea .contentWrap .detail2 {
  padding: 16px 0 18px;
  font-size: 13px;
  font-weight: 400;
}
.sec6 .bottomArea .contentWrap .ano {
  font-size: 10px;
}
.sec6 .bottomArea .contentWrap .catWrap {
  display: flex;
  align-items: center;
  gap: 6px;
  padding-bottom: 3px;
}
.sec6 .bottomArea .contentWrap .catWrap .cat {
  border-radius: 22px;
  border: 1px solid #2D52B3;
  padding: 4px 12px;
}
.sec6 .bottomArea .contentWrap .catWrap .cat p {
  font-size: 14px;
  color: #2D52B3;
}
.sec6 .bottomArea .contentWrap article .topWrap {
  padding: 12px 0;
  border-radius: 12px 12px 0 0;
  background: #2D52B3;
  margin: 0 auto;
  text-align: center;
}
.sec6 .bottomArea .contentWrap article .topWrap img {
  width: 90%;
}
.sec6 .bottomArea .contentWrap article .bottomWrap {
  border: 1px solid #2D52B3;
  border-radius: 0 0 12px 12px;
  padding: 12px 9px;
  background: #fff;
}
.sec6 .bottomArea .contentWrap article .bottomWrap p {
  font-size: 13px;
  font-weight: 400;
  line-height: 140%;
}
.sec6 .bottomArea .contentWrap article .bottomWrap + p {
  font-size: 13px;
  font-weight: 400;
  color: #918C8C;
  padding-top: 10px;
  line-height: 140%;
}

@media screen and (min-width: 440px) {
  .sec6 .bottomArea {
    background-size: 180px auto;
    background-position: right 15px top 20px;
  }
}
.secPresent {
  padding-bottom: 30px;
}
.secPresent .topWrap {
  padding: 12px 16px;
  border-radius: 12px 12px 0 0;
  background: #F24C27;
  margin: 0 auto;
  text-align: center;
  display: grid;
  grid-template-columns: max-content max-content;
  gap: 14px;
}
.secPresent .topWrap .wrap .en {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  border: 1px solid #FFF625;
}
.secPresent .topWrap .wrap .en p {
  font-size: 13px;
  line-height: 62px;
  text-align: center;
}
.secPresent .topWrap p {
  color: #FFF625;
  text-align: left;
}
.secPresent .bottomWrap {
  border-radius: 0 0 12px 12px;
  padding: 16px 14px 21px;
  background: #FFF2EF;
}
.secPresent .bottomWrap .wrap {
  display: grid;
  grid-template-columns: 1fr 0.8fr;
  gap: 9px;
  align-items: center;
}
.secPresent .bottomWrap .wrap p:first-child {
  padding-bottom: 16px;
}
.secPresent .bottomWrap .wrap p:last-child {
  font-size: 11px;
  line-height: 140%;
}

.sec7 .titleWrap .wrap h2 {
  font-weight: bold;
  color: #2D52B3;
}
.sec7 .titleWrap .detail {
  font-size: 13px;
  font-weight: 400;
  text-align: center;
  color: #4A4545;
  padding-top: 24px;
}
.sec7 .contentWrap {
  width: 90%;
  margin: 24px auto 64px;
}
.sec7 .contentWrap .content {
  border-top: 1px solid #CDD7F1;
  border-bottom: 1px solid #CDD7F1;
  padding: 32px 0;
}
.sec7 .contentWrap .content .wrap {
  gap: 15px;
  display: grid;
  grid-template-columns: 0.54fr 1fr;
}
.sec7 .contentWrap .content .wrap .name {
  font-size: 16px;
  font-weight: bold;
  color: #2D52B3;
}
.sec7 .contentWrap .content .wrap .pri {
  font-size: 14px;
  padding: 8px 0;
}
.sec7 .contentWrap .content .wrap .gridArea {
  display: grid;
  grid-template-columns: max-content 1fr;
  font-size: 14px;
  line-height: 140%;
}
.sec7 .contentWrap .content .wrap .gridArea .free {
  text-align: center;
}/*# sourceMappingURL=style.css.map */