.mincho, .sp main .section07 .inner .ttl, .sp main .section06 .inner .ttl, .sp main .section05 .campaigns .campaign .date, .sp main .section05 .campaigns .campaign .ttl, .sp main .section04 .voice-actor .info-wrap .r .name, .sp main .section03 .sp-splide .splide__arrows .counter, .sp main .section03 .txt, .sp main .section02 .statement-wrap .statement, .sp main .section01 .ttl {
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
  font-style: normal;
}

.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp {
    display: block;
  }
}
.sp header {
  position: relative;
  z-index: 1;
  padding: 2.5vw;
  background-color: #FBFBFB;
  display: flex;
  gap: 3.8vw;
  align-items: center;
}
.sp header .presents {
  width: 30vw;
}
.sp header .logo-cam {
  width: 59vw;
}
.sp main {
  position: relative;
  z-index: 0;
  background-image: url("../img/sp/bg.png");
  background-size: 100%;
}
.sp main .section01 {
  margin-top: -26vw;
  padding-top: 26vw;
  background-image: url("../img/sp/s01_bg.png");
  background-color: white;
  background-repeat: no-repeat;
  background-size: 100%;
  text-align: center;
}
.sp main .section01 .fv-img {
  width: 100%;
  margin-bottom: 9.6vw;
}
.sp main .section01 .date {
  width: 67vw;
  margin-bottom: 5.3vw;
}
.sp main .section01 .ichidan {
  width: 87vw;
  margin-bottom: 11.7vw;
}
.sp main .section01 .ttl {
  font-size: 5vw;
  color: #C09B0F;
  margin-bottom: 3.5vw;
}
.sp main .section01 .keihin {
  width: 83vw;
  margin-bottom: 6.6vw;
}
.sp main .section01 .detail-btn {
  width: 82vw;
}
.sp main .section01 .line {
  height: 0.5px;
  width: 81vw;
  background-color: #F1E8C5;
  margin: auto;
  margin-top: 10.6vw;
  margin-bottom: 8vw;
}
.sp main .section01 .body-soap {
  margin-top: 21vw;
  margin-bottom: 19vw;
  width: 90vw;
}
.sp main .section02 {
  padding-top: 25vw;
  position: relative;
}
.sp main .section02 .moon {
  position: absolute;
  top: 7.6vw;
  left: 7.6vw;
  width: 30vw;
}
.sp main .section02 .statement-wrap {
  padding-bottom: 36vw;
  display: flex;
  flex-direction: column;
  gap: 5.8vw;
  margin-top: 6.4vw;
}
.sp main .section02 .statement-wrap .statement {
  font-weight: 500;
  text-align: center;
  font-size: 4.2vw;
  color: white;
  line-height: 1.8;
}
.sp main .section03 {
  padding-bottom: 20vw;
}
.sp main .section03 .txt {
  font-weight: 500;
  font-size: 3vw;
  text-align: center;
  color: white;
  padding-top: 6.4vw;
  padding-bottom: 3vw;
}
.sp main .section03 .sp-splide {
  margin: auto;
  padding-bottom: 10vw;
}
.sp main .section03 .sp-splide img {
  width: 100%;
}
.sp main .section03 .sp-splide .splide__arrows {
  width: 54vw;
  bottom: 0;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.sp main .section03 .sp-splide .splide__arrows .counter {
  text-align: center;
  color: white;
  font-weight: 500;
}
.sp main .section03 .sp-splide .splide__arrows .splide__arrow {
  position: relative;
  background-color: transparent;
  top: auto;
  transform: none;
}
.sp main .section03 .sp-splide .splide__arrows .splide__arrow img {
  width: 2.4vw;
}
.sp main .section03 .sp-splide .splide__arrows .splide__arrow--next {
  transform: rotateY(180deg);
}
.sp main .section04 {
  padding-bottom: 32.3vw;
}
.sp main .section04 .characters {
  display: flex;
  flex-direction: column;
  gap: 8vw;
  margin-bottom: 19.8vw;
}
.sp main .section04 .characters .char-wrap {
  position: relative;
  text-align: center;
}
.sp main .section04 .characters .char-wrap .char {
  width: 92vw;
}
.sp main .section04 .characters .char-wrap .char-voice {
  width: 20vw;
  position: absolute;
  top: 33vw;
  left: 7vw;
}
.sp main .section04 .characters .char-wrap .voice-txt {
  pointer-events: none;
  user-select: none;
  position: absolute;
  top: 54vw;
  left: 7vw;
  z-index: 1;
  font-size: 2.5vw;
  text-align: center;
  font-weight: 400;
  line-height: 1.4;
  color: #002969;
}
.sp main .section04 .characters .char-wrap .char-detail {
  width: 40vw;
  position: absolute;
  bottom: 0vw;
  right: 8vw;
}
.sp main .section04 .voice-actor {
  width: 89.8vw;
  margin: auto;
}
.sp main .section04 .voice-actor .info-wrap {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 3.8vw;
}
.sp main .section04 .voice-actor .info-wrap img {
  width: 30vw;
}
.sp main .section04 .voice-actor .info-wrap .r .name {
  font-size: 6.1vw;
  color: white;
  margin-bottom: 3.5vw;
  font-weight: 600;
}
.sp main .section04 .voice-actor .info-wrap .r .info {
  font-size: 3.6vw;
  color: white;
  line-height: 1.8;
}
.sp main .section04 .voice-actor .actor-line {
  width: 100%;
  margin-top: 5vw;
  margin-bottom: 2.5vw;
}
.sp main .section04 .voice-actor .profile {
  font-size: 3.6vw;
  color: white;
  line-height: 1.8;
}
.sp main .section05 .campaigns {
  width: 89.8vw;
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 7.1vw;
  padding: 10vw 0;
}
.sp main .section05 .campaigns .campaign {
  border-radius: 5px;
  border: solid 1px #C09B0F;
  background-color: white;
  text-align: center;
  padding: 3.8vw;
  padding-bottom: 6vw;
}
.sp main .section05 .campaigns .campaign.coming-soon .ttl, .sp main .section05 .campaigns .campaign.coming-soon .date {
  color: #E6E0D2;
}
.sp main .section05 .campaigns .campaign.coming-soon .date svg path {
  fill: #E6E0D2;
}
.sp main .section05 .campaigns .campaign.coming-soon .btn {
  filter: none;
}
.sp main .section05 .campaigns .campaign .ttl {
  font-weight: 700;
  font-size: 6.3vw;
  color: #002969;
  margin-bottom: 2vw;
}
.sp main .section05 .campaigns .campaign .date {
  font-weight: 700;
  font-size: 5vw;
  color: #002969;
  width: fit-content;
  margin: auto;
  margin-bottom: 5vw;
  position: relative;
}
.sp main .section05 .campaigns .campaign .date .star {
  position: absolute;
  top: 0;
  bottom: 0.5vw;
  margin: auto;
  width: 4.3vw;
}
.sp main .section05 .campaigns .campaign .date .star.l {
  left: -7vw;
}
.sp main .section05 .campaigns .campaign .date .star.r {
  right: -7vw;
}
.sp main .section05 .campaigns .campaign .btn {
  width: 82vw;
  filter: drop-shadow(2px 12px 8px rgba(0, 0, 0, 0.2));
}
.sp main .section06 {
  padding-bottom: 11.4vw;
}
.sp main .section06 .inner {
  background-color: white;
  border-radius: 5px;
  width: 89.8vw;
  margin: auto;
  padding: 3.5vw;
}
.sp main .section06 .inner .ttl {
  font-size: 6.3vw;
  font-weight: 700;
  color: #002969;
  text-align: center;
  margin-bottom: 5vw;
}
.sp main .section06 .inner .step {
  width: 100%;
  margin-bottom: 4vw;
}
.sp main .section06 .inner .txt {
  font-size: 4.5vw;
  font-weight: 600;
  color: #002969;
  line-height: 1.6;
}
.sp main .section06 .inner .txt .link {
  width: 5vw;
}
.sp main .section06 .inner .txt .kome {
  font-size: 3vw;
  font-weight: 400;
  line-height: 1.4;
  margin-top: 3vw;
  opacity: 0.5;
}
.sp main .section06 .inner .step-img {
  width: 100%;
  margin-top: 4vw;
  margin-bottom: 6.6vw;
}
.sp main .section07 {
  padding-bottom: 11.4vw;
}
.sp main .section07 .inner {
  background-color: white;
  border-radius: 5px;
  width: 89.8vw;
  margin: auto;
  padding: 3.5vw;
  padding-top: 0;
}
.sp main .section07 .inner .lottery-ttl {
  width: calc(100% + 7vw);
  position: relative;
  left: -3.5vw;
}
.sp main .section07 .inner .ttl {
  font-size: 6.3vw;
  font-weight: 700;
  color: #002969;
  text-align: center;
  margin-bottom: 4vw;
  margin-top: 4vw;
}
.sp main .section07 .inner .txt {
  font-size: 3.5vw;
  font-weight: 500;
  color: #002969;
  line-height: 1.6;
}
.sp main .section07 .inner .txt .kome {
  font-size: 3vw;
  font-weight: 400;
  line-height: 1.4;
  margin-top: 3vw;
  opacity: 0.5;
}
.sp main .section07 .inner .txt span {
  font-size: 3vw;
  display: inline-block;
  margin-left: 0.6vw;
}
.sp main .section07 .inner .item-img {
  width: 100%;
  margin-top: 2vw;
  margin-bottom: 4vw;
}
.sp main .section08 {
  padding-bottom: 10vw;
}
.sp main .section08 .inner {
  background-color: #FFFAEA;
  border: solid 1px #C09B0F;
  border-radius: 5px;
  width: 89.8vw;
  margin: auto;
  padding: 3.5vw;
}
.sp main .section08 .inner .wc-ttl {
  width: 66vw;
  display: block;
  margin: auto;
  margin-bottom: 3.5vw;
}
.sp main .section08 .inner .wc-txt {
  font-size: 4vw;
  color: #002969;
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 3vw;
}
.sp main .section08 .inner .wc-wrap {
  border: solid 3px #C09B0F;
  background-color: white;
  border-radius: 4px;
  padding: 4vw;
  margin-bottom: 8.2vw;
}
.sp main .section08 .inner .wc-wrap .step-ttl {
  width: 100%;
  margin-bottom: 3vw;
}
.sp main .section08 .inner .wc-wrap .txt {
  color: #866500;
  line-height: 1.6;
}
.sp main .section08 .inner .wc-wrap .txt.large {
  font-size: 4.5vw;
  font-weight: 600;
}
.sp main .section08 .inner .wc-wrap .txt.small {
  font-size: 3vw;
  margin-top: 4vw;
}
.sp main .section08 .inner .wc-wrap .wc-img {
  width: 100%;
  margin-top: 4vw;
  margin-bottom: 8vw;
}
.sp main .section08 .inner .wc-lottery-wrap {
  width: 82.1vw;
}
.sp main .section08 .inner .wc-lottery-wrap .wc-lottery-ttl {
  width: 100%;
}
.sp main .section08 .inner .wc-lottery-wrap .content {
  padding: 2.5vw;
  background-color: white;
}
.sp main .section08 .inner .wc-lottery-wrap .content .txt {
  font-size: 3.5vw;
  font-weight: 500;
  color: #002969;
  line-height: 1.6;
}
.sp main .section08 .inner .wc-lottery-wrap .content .txt .kome {
  font-size: 3vw;
  font-weight: 400;
  line-height: 1.4;
  margin-top: 3vw;
  opacity: 0.5;
}
.sp main .section08 .inner .wc-lottery-wrap .content .txt span {
  font-size: 3vw;
  display: inline-block;
  margin-left: 0.6vw;
}
.sp main .section08 .inner .wc-lottery-wrap .content .wc-lottery-img {
  display: block;
  margin: auto;
  margin-top: 2vw;
  margin-bottom: 4vw;
}
.sp main .section08 .inner .wc-lottery-wrap .content .wc-lottery-img.item1 {
  width: 76vw;
}
.sp main .section08 .inner .wc-lottery-wrap .content .wc-lottery-img.item2 {
  width: 48vw;
}
.sp main .section08 .inner .wc-lottery-wrap .content .wc-lottery-img.item3 {
  width: 73.5vw;
}
.sp main .section09 {
  width: 89.8vw;
  margin: auto;
  padding-bottom: 40vw;
  position: relative;
  z-index: 0;
}
.sp main .section09 .ttl {
  color: white;
  font-weight: 600;
  font-size: 4vw;
  margin-bottom: 3vw;
}
.sp main .section09 .txt {
  color: white;
  font-size: 3.5vw;
  margin-bottom: 3vw;
  line-height: 1.6;
}
.sp main .section09 .kome {
  color: white;
  font-size: 3vw;
  margin-bottom: 8.1vw;
  line-height: 1.6;
}
.sp main .section09 .btn {
  width: 82.1vw;
  display: block;
  margin: auto;
}
.sp main .section10 {
  position: relative;
  z-index: 1;
  text-align: center;
  background-color: white;
  padding-top: 15vw;
  padding-bottom: 21.3vw;
}
.sp main .section10 .awa {
  pointer-events: none;
  position: absolute;
  top: -45vw;
  left: 0;
  width: 100%;
}
.sp main .section10 .logo {
  position: relative;
  width: 54.4vw;
  z-index: 1;
  margin-bottom: 6vw;
}
.sp main .section10 .bs-img {
  width: 68vw;
  margin-bottom: 6vw;
}
.sp main .section10 .name {
  font-size: 3.8vw;
  font-weight: 600;
  line-height: 1.6;
  color: #C09B0F;
  margin-bottom: 6vw;
}
.sp main .section10 .name span {
  font-size: 4.8vw;
}
.sp main .section10 .detail-btn {
  width: 71.2vw;
  margin-bottom: 20vw;
}
.sp main .section10 .banner {
  width: 89.8vw;
}
.sp main .section11 {
  background-color: white;
  padding-bottom: 40vw;
}
.sp main .section11 .sns {
  display: flex;
  justify-content: center;
  gap: 13.7vw;
  margin-top: 10vw;
}
.sp main .section11 .sns img {
  width: 7.6vw;
}
.sp main .ttl-img {
  width: 76.8vw;
  display: block;
  margin: auto;
}/*# sourceMappingURL=sp.css.map */