.contents_container {
  background-color: #ffffff;
  width: 100%;
  max-width: 900px;
  min-width: auto;
}

.contents_mv {
  width: 100%;
}

.contents_mv img {
  width: 100%;
}

.contents_section {
  padding: 60px 0;
}

@media screen and (max-width: 812px) {
  .contents_section {
    padding: 9.375vw 0;
  }
}

.contents_section img {
  width: 100%;
}

.contents_section + .contents_section {
  padding-top: 20px;
}

@media screen and (max-width: 812px) {
  .contents_section + .contents_section {
    padding-top: 3.125vw;
  }
}

.contents_lead {
  text-align: center;
}

.contents_leadTitle {
  margin-bottom: 50px;
}

@media screen and (max-width: 812px) {
  .contents_leadTitle {
    margin-bottom: 7.8125vw;
  }
}

.contents_leadTitle img {
  max-width: 100%;
}

.contents_leadText img {
  max-width: 100%;
}

.section_primary .section_lead {
  width: 597px;
  margin: -165px auto 0;
  padding-top: 65px;
  position: relative;
}

@media screen and (max-width: 812px) {
  .section_primary .section_lead {
    width: 87.1875vw;
    margin-top: -25vw;
    padding-top: 9.375vw;
  }
}

.section_secondary .section_lead {
  margin: -65px auto 0;
  width: 560px;
}

@media screen and (max-width: 812px) {
  .section_secondary .section_lead {
    margin-top: -9.375vw;
    width: 87.5vw;
  }
}

.section_leadBadge {
  display: block;
  width: 167px;
  position: absolute;
  top: -35px;
  right: 0px;
}

@media screen and (max-width: 812px) {
  .section_leadBadge {
    width: 25.9375vw;
    top: -7.8125vw;
    right: 0;
  }
}

.section_primary {
  margin-top: 165px;
  padding-bottom: 55px;
  border: 10px solid #ea5550;
}

@media screen and (max-width: 812px) {
  .section_primary {
    margin-top: 25vw;
    padding-bottom: 35px;
    border-width: 5px;
  }
}

.section_primary_bnr {
  max-width: 710px;
  margin: 30px auto 0;
}

@media screen and (max-width: 812px) {
  .section_primary_bnr {
    max-width: 92%;
    margin-top: 4.6875vw;
  }
}

.section_primary_inner {
  max-width: 755px;
  margin: 0 auto;
}

@media screen and (max-width: 812px) {
  .section_primary_inner {
    width: calc(100% - 3.125vw);
    margin: 0 auto;
  }
}

.section_primary h3 {
  margin: 30px auto 0;
  padding: 0.3em;
  color: #ea5550;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  border: 2px solid #ea5550;
}

@media screen and (max-width: 812px) {
  .section_primary h3 {
    margin-top: 4.6875vw;
    font-size: 4vw;
  }
}

.section_primary h4 {
  margin: 40px auto 0;
  padding: 0.2em 0 0.2em 0.6em;
  font-size: 18px;
  font-weight: bold;
  border-bottom: 2px solid #ea5550;
  border-left: 7px solid #ea5550;
}

@media screen and (max-width: 812px) {
  .section_primary h4 {
    margin-top: 20px;
    font-size: 3.75vw;
  }
}

.section_primary h4:nth-of-type(n + 2) {
  margin: 22px auto 0;
}

@media screen and (max-width: 812px) {
  .section_primary h4:nth-of-type(n + 2) {
    margin-top: 15px;
  }
}

.section_primary p {
  margin: 20px auto 0;
  font-size: 18px;
}

@media screen and (max-width: 812px) {
  .section_primary p {
    margin-top: 10px;
    font-size: 3.5vw;
  }
}

.section_primary li {
  margin-left: 0.7em;
  font-size: 18px;
  line-height: 1.6;
  list-style-type: disc;
}

@media screen and (max-width: 812px) {
  .section_primary li {
    margin-top: 3px;
    font-size: 3.5vw;
  }
}

.section_primary li mark {
  background: linear-gradient(to bottom, transparent 0%, transparent 70%, #fff100 71%, #fff100);
}

.section_secondary {
  margin-top: 100px;
  border: 10px solid #ea5550;
}

@media screen and (max-width: 812px) {
  .section_secondary {
    margin-top: 15.625vw;
    border-width: 5px;
  }
}

.section_secondary_inner {
  padding: 60px 30px;
}

@media screen and (max-width: 812px) {
  .section_secondary_inner {
    padding: 9.375vw 4.6875vw;
  }
}

.section_secondary p {
  margin-bottom: 30px;
  font-size: 18px;
  text-align: center;
}

@media screen and (max-width: 812px) {
  .section_secondary p {
    margin-bottom: 4.6875vw;
    font-size: 3.4375vw;
    text-align: left;
  }
}

.section_secondary figure {
  margin-bottom: 50px;
}

@media screen and (max-width: 812px) {
  .section_secondary figure {
    margin-bottom: 7.8125vw;
  }
}

.section_secondary_check {
  margin-bottom: 40px;
  text-align: center;
}

@media screen and (max-width: 812px) {
  .section_secondary_check {
    margin-bottom: 6.25vw;
  }
}

.section_secondary_check img {
  width: auto;
  height: 36px;
}

@media screen and (max-width: 812px) {
  .section_secondary_check img {
    height: 5.625vw;
  }
}

.snslist {
  display: flex;
  align-items: center;
  justify-content: center;
}

.snslist > li {
  margin: 0 30px;
  width: 64px;
}

@media screen and (max-width: 812px) {
  .snslist > li {
    margin: 0 4.6875vw;
    width: 10vw;
  }
}

.banner {
  padding: 20px 20px;
}

@media screen and (max-width: 812px) {
  .banner {
    padding: 3.125vw 3.125vw;
  }
}

.go-to-top {
  margin: 60px auto 0;
  text-align: center;
}

@media screen and (max-width: 812px) {
  .go-to-top {
    margin-top: 35px;
  }
}

.go-to-top img {
  max-width: 65px;
}

@media screen and (max-width: 812px) {
  .go-to-top img {
    max-width: 50px;
  }
}

.go-to-top p {
  font-size: 18px;
  margin-top: 15px;
}

@media screen and (max-width: 812px) {
  .go-to-top p {
    font-size: 3.7vw;
  }
}

*, *:before, *:after {
  box-sizing: border-box;
}

@media screen and (min-width: 813px) {
  .sp {
    display: none;
  }
}

@media screen and (max-width: 812px) {
  .pc {
    display: none;
  }
}
