body {
  width: 100%;
  overflow-y: scroll;
}

#contents {
  padding-bottom: 0 !important;
}

.kycp-wrap {
  margin: 0 -44px 40px -40px;
}
.kycp-wrap * {
  margin: 0;
  padding: 0;
  list-style: none;
}
.kycp-wrap img {
  position: relative;
  max-width: 100%;
  vertical-align: bottom;
}
.kycp-mv {
  position: relative;
}
.kycp-present {
  position: relative;
  padding: 20px 55px 100px 30px;
  background-image: url(../_img/kyusyu_campaign_2025/bg01.png);
  background-size: 400px 400px;
}
.kycp-apply {
  position: relative;
  padding: 0 0 95px;
  background-image: url(../_img/kyusyu_campaign_2025/bg02.png);
  background-size: 100% auto;
}
.kycp-apply-text {
  position: relative;
  width: 740px;
  margin: 0 auto;
  padding-top: 50px;
}
.kycp-apply-x {
  position: relative;
  width: 856px;
  margin: 60px auto 0;
}
.kycp-apply-x-title {
  z-index: 5;
  position: relative;
  width: 484px;
  margin: 0 auto -65px;
}
.kycp-apply-x-btn {
  position: absolute;
  right: 0;
  bottom: 45px;
  left: 0;
  width: 420px;
  margin: 0 auto;
  cursor: pointer;
}
.kycp-apply-x-term, .kycp-apply-x-end {
  display: block;
  position: absolute;
  right: 0;
  bottom: 60px;
  left: 0;
  width: 733px;
  margin: 0 auto;
}
.kycp-apply-insta {
  position: relative;
  width: 856px;
  margin: 50px auto 0;
}
.kycp-apply-insta-title {
  z-index: 5;
  position: relative;
  width: 484px;
  margin: 0 auto -80px;
}
.kycp-apply-insta-btn {
  display: block;
  position: absolute;
  right: 0;
  bottom: 45px;
  left: 0;
  width: 535px;
  margin: 0 auto;
}
.kycp-w {
  position: relative;
  padding: 0 0 95px;
  background-image: url(../_img/kyusyu_campaign_2025/bg02.png);
  background-size: 100% auto;
}
.kycp-w-detail {
  position: relative;
  width: 856px;
  margin: 30px auto 0;
}
.kycp-w-apply {
  position: relative;
  width: 800px;
  margin: 50px auto 0;
}
.kycp-w-apply-title {
  z-index: 5;
  position: relative;
  width: 700px;
  margin: 0 auto -40px;
}
.kycp-w-apply-btn {
  display: block;
  position: absolute;
  right: 0;
  bottom: 45px;
  left: 0;
  width: 480px;
  margin: 0 auto;
}
.kycp-term {
  position: relative;
  padding-bottom: 70px;
}
.kycp-term-detail {
  position: relative;
  width: 870px;
  margin: 30px auto 0;
  font-size: 16px;
}
.kycp-term-detail > div {
  position: relative;
}
.kycp-term-detail > div:nth-of-type(n+2) {
  margin-top: 30px;
}
.kycp-term-detail > div > dt {
  position: relative;
  margin-bottom: 20px;
  padding: 7px 0 3px 0;
  background-color: #ff28a0;
  color: #fff;
  font-weight: 900;
  font-size: 24px;
  line-height: 1;
  text-align: center;
}
.kycp-term-detail > div > dd > div:nth-of-type(n+2) {
  margin-top: 40px;
}
.kycp-term-detail > div > dd > p:nth-of-type(n+2) {
  margin-top: 16px;
}
.kycp-term-detail-list > li {
  padding-left: 1em;
  text-indent: -1em;
}
.kycp-term-detail-attention {
  margin-top: 5px;
}
.kycp-term-detail-attention > li {
  padding-left: 1em;
  text-indent: -1em;
}
.kycp-modal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: none;
  z-index: 10000;
  position: fixed;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100dvh;
  inset: 0;
}
.kycp-modal-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
  background-color: #000;
  opacity: 0.5;
}
.kycp-modal-inner {
  position: relative;
  width: 860px;
  padding: 85px 0 95px;
  border-radius: 20px;
  background-color: #fff;
}
.kycp-modal-text {
  width: 710px;
  margin: 0 auto;
}
.kycp-modal-btn {
  display: block;
  width: 475px;
  margin: 60px auto 0;
}
@media (max-width: 771px) {
  .kycp-wrap {
    margin: 0 -10px;
  }
  .kycp-present {
    padding: 30px 0 30px;
  }
  .kycp-apply {
    padding: 0 0 40px;
  }
  .kycp-apply-text {
    width: 88.3116883117vw;
    padding-top: 7.7922077922vw;
  }
  .kycp-apply-x {
    width: 90.9090909091vw;
    margin-top: 30px;
  }
  .kycp-apply-x-title {
    width: 64.9350649351vw;
    margin-bottom: -6.4935064935vw;
  }
  .kycp-apply-x-btn {
    bottom: 5.1948051948vw;
    width: 51.9480519481vw;
  }
  .kycp-apply-x-term, .kycp-apply-x-end {
    bottom: 6.4935064935vw;
    width: 72.7272727273vw;
  }
  .kycp-apply-insta {
    width: 90.9090909091vw;
    margin-top: 30px;
  }
  .kycp-apply-insta-title {
    width: 64.9350649351vw;
    margin-bottom: -6.4935064935vw;
  }
  .kycp-apply-insta-btn {
    bottom: 5.1948051948vw;
    width: 51.9480519481vw;
  }
  .kycp-w {
    padding: 0 0 40px;
  }
  .kycp-w-detail {
    width: 90.9090909091vw;
    margin-top: 20px;
  }
  .kycp-w-apply {
    width: 90.9090909091vw;
    margin-top: 30px;
  }
  .kycp-w-apply-title {
    width: 83.1168831169vw;
    margin-bottom: -6.4935064935vw;
  }
  .kycp-w-apply-btn {
    bottom: 5.1948051948vw;
    width: 72.7272727273vw;
  }
  .kycp-term {
    padding-bottom: 40px;
  }
  .kycp-term-detail {
    width: 90.9090909091vw;
    margin-top: 20px;
    font-size: 14px;
  }
  .kycp-term-detail > div:nth-of-type(n+2) {
    margin-top: 20px;
  }
  .kycp-term-detail > div > dt {
    height: 24px;
    margin-bottom: 10px;
    padding: 7px 0 2px 0;
    font-size: 20px;
  }
  .kycp-modal-inner {
    width: 90.9090909091vw;
    padding: 40px 0;
  }
  .kycp-modal-text {
    width: 77.9220779221vw;
  }
  .kycp-modal-btn {
    width: 51.9480519481vw;
    margin-top: 30px;
  }
}
@media (any-hover: hover) {
  .kycp-apply-x-btn {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .kycp-apply-x-btn:hover {
    scale: 1.05;
  }
  .kycp-apply-insta-btn {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .kycp-apply-insta-btn:hover {
    scale: 1.05;
  }
  .kycp-w-apply-btn {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .kycp-w-apply-btn:hover {
    scale: 1.05;
  }
  .kycp-modal-btn {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .kycp-modal-btn:hover {
    scale: 1.05;
  }
}