/* =============================================== 
  parts
=============================================== */
#jrcampaign {
  font-family: "Noto Sans JP", sans-serif;
}
#jrcampaign br.pc {
  display: inline;
}
@media screen and (max-width: 768px) {
  #jrcampaign br.pc {
    display: none;
  }
}
#jrcampaign br.sp {
  display: none;
}
@media screen and (max-width: 768px) {
  #jrcampaign br.sp {
    display: inline;
  }
}

.mv {
  margin-top: 26px;
  margin-bottom: 67px;
}

section {
  padding: 0;
  margin: 0;
}

#jrcampaign-fv {
  margin-bottom: 115px;
}

#jrcampaign-step {
  margin-bottom: 39px;
}

#jrcampaign-desc {
  margin-bottom: 30px;
}

#jrcampaign-entry {
  margin-bottom: 95px;
}

#jrcampaign-other {
  margin-bottom: 49.5px;
}

#jrcampaign-app {
  margin-bottom: 75px;
}

.lp_container {
  max-width: 686px;
  margin: 0 auto;
}

.section_title {
  text-align: center;
  color: #C42C52;
  font-weight: 700;
  font-size: 28px;
  line-height: 46px;
  letter-spacing: -0.01em;
  margin-bottom: 49px;
}
@media screen and (max-width: 768px) {
  .section_title {
    font-size: 20px;
    line-height: 36px;
    margin-bottom: 19px;
  }
}
.section_title.lp_title {
  color: #000;
}
.section_title.mb_min {
  margin-bottom: 20px;
}

.t_bold {
  font-weight: 700;
}

.t_medium {
  font-weight: 500;
}

.t_regular {
  font-weight: 400;
}

.t_center {
  text-align: center;
}

.t_s_normal {
  font-size: 28px;
}
@media screen and (max-width: 768px) {
  .t_s_normal {
    font-size: 20px;
  }
}

.t_kome li {
  text-align: center;
  color: #585858;
  opacity: 0.5;
  font-size: 16px;
  line-height: 22px;
  padding: 0.2em 0;
}
@media screen and (max-width: 768px) {
  .t_kome li {
    font-size: 12px;
    text-align: left;
  }
}

.l_yellow {
  background-image: linear-gradient(to bottom, transparent 70%, #FFF500 70%);
}

.bg_pink {
  max-width: 875px;
  margin: 0 auto;
  background-color: #FEF3F2;
}

.img_illust {
  width: 200px;
  margin: 0 auto;
}

.mb30 {
  margin-bottom: 30px;
}

.bg_pink01 {
  padding: 31px 0 30px;
  margin-bottom: 32px;
}

.img_character {
  width: 144.5px;
  margin: 0 auto 41px;
}

.entry_text {
  text-align: center;
  font-weight: 700;
  font-size: 28px;
  line-height: 46px;
}
@media screen and (max-width: 768px) {
  .entry_text {
    font-size: 20px;
    line-height: 36px;
  }
}

#jrcampaign-other a {
  transition: all 0.3s ease;
  color: inherit;
}
#jrcampaign-other a:hover {
  opacity: 0.8;
}

.note_title, .note_list {
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  color: #585858;
}
.note_list {
  margin-bottom: 1em;
}
.note_list li {
  list-style-type: none;
  position: relative;
  padding-left: 1em;
}
.note_list li::before {
  content: "";
  position: absolute;
  left: 0.25em;
  top: 0.65em;
  width: 0.25em;
  height: 0.25em;
  background-color: #585858;
  border-radius: 50%;
}

.bg_pink02 {
  padding: 41px 0 62px;
}

.logo_wespo {
  max-width: 166px;
  text-align: center;
  margin: 0 auto 40px;
}

.icon_list {
  display: flex;
  width: 420px;
  margin: 0 auto;
  justify-content: center;
  list-style: none;
}
@media screen and (max-width: 768px) {
  .icon_list {
    width: 90%;
  }
}
.icon_list li {
  margin: 0 10px;
}