@charset "UTF-8";
/* google fonts */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
html {
  font-size: 62.5%;
}

body {
  background: #9fd9f7 url(../img/bg_main.png);
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", sans-serif, "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic";
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
}

.spBlock {
  display: none;
}

.spNone {
  display: block;
}

header .hmb_btn {
  position: absolute;
  width: 40px;
  height: 40px;
  top: 20px;
  right: 20px;
  z-index: 3;
  background: #d7000f;
}

.kv {
  padding: 42px 0 25px;
}
.kv__inner {
  width: calc(100% - 20px);
  max-width: 910px;
  margin: 0 auto;
}
.kv h1 {
  text-align: center;
}
.kv h1 img {
  max-width: 100%;
}

.anchor {
  margin-bottom: 56px;
}
.anchor__inner {
  max-width: 910px;
  margin: 0 auto;
}
.anchor__title {
  margin: 0 auto 16px;
}
.anchor__list {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  width: calc(100% - 20px);
  max-width: 910px;
  margin: 0 auto;
}
.anchor__list li {
  width: 100%;
  max-width: calc(50% - 8px);
  overflow: visible;
}
.anchor__list li img {
  margin-left: 5px;
}

.coverWrapper {
  position: relative;
}
.coverWrapper .coverTxt {
  display: none;
}
.coverWrapper.isClosed:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 35px);
  height: 100%;
  background: rgba(130, 130, 130, 0.8);
}
.coverWrapper.isClosed .coverTxt {
  z-index: 3;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 790px;
}

.indent {
  padding-left: 1em;
  text-indent: -1em;
}

.content {
  padding-top: 60px;
}
.content__inner {
  position: relative;
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}
.content__head {
  width: calc(100% - 180px);
  margin: 0 auto 40px;
  text-align: center;
  transform: translateY(-30px);
}
.content h2, .content__desc {
  text-align: center;
}
.content__desc {
  padding-top: 28px;
  margin-bottom: 36px;
}

.content1.content h2 img {
  max-width: 714px;
}
.content1.content .content__inner {
  padding: 0 26px 128px;
  background: url(../img/content1/bg_main_content1.png) top center no-repeat;
  background-size: 100% auto;
}
.content1.content .content__desc img {
  max-width: 761px;
}

.content1__nav {
  max-width: calc(100% - 110px);
  margin: 0 auto 28px;
  padding: 94px 34px 32px;
  background: url(../img/content1/bg_content1_nav.png) top center no-repeat;
  background-size: 100% auto;
}
.content1__nav ul {
  display: flex;
  justify-content: center;
  gap: 32px;
}
.content1__nav ul li {
  width: 100%;
}
.content1__nav ul li a {
  display: block;
}
.content1__prize {
  position: relative;
  width: calc(100% - 64px);
  margin: 0 auto;
}
.content1__prize:first-of-type img:first-of-type {
  margin-bottom: 32px;
}
.content1__prize div {
  position: absolute;
  bottom: 16px;
  right: 0;
  max-width: 420px;
}
.content1 h3 {
  margin-bottom: 40px;
}
.content1 h3 img {
  width: 100%;
}
.content1__menu {
  width: calc(100% - 64px);
  margin: 0 auto;
}
.content1__menu__img {
  margin-bottom: 18px;
}
.content1__menu__img:first-of-type {
  margin-bottom: 36px;
}
.content1__menu a {
  display: block;
  max-width: 748px;
  margin: 0 auto 24px;
  overflow: visible;
}
.content1__menu a img {
  margin-left: 15px;
}
.content1__menu__caution {
  margin-top: 24px;
  margin-bottom: 36px;
  padding: 20px 16px;
  border: 5px solid #d70000;
}
.content1__menu__caution p {
  text-align: center;
  letter-spacing: -0.09rem;
}
.content1__menu__caution p span {
  color: #d70000;
}
.content1__extra h3 {
  max-width: 704px;
  margin-bottom: 30px;
}
.content1__extra p img {
  display: block;
  max-width: 754px;
  margin: 0 auto 30px;
}
.content1__extra p.indent {
  max-width: 721px;
  margin: 0 auto;
  letter-spacing: -0.1rem;
}

/* /1 */
.content2.content {
  padding-top: 30px;
}
.content2.content h2 img {
  max-width: 594px;
}
.content2.content .content__inner {
  padding: 42px 26px 12px;
  background: url(../img/content2/bg_main_content2.png) top center no-repeat;
  background-size: 100% auto;
}
.content2.content .content__desc img {
  max-width: 742px;
}

.content2__head {
  margin: 0 auto 21px;
  text-align: center;
}
.content2__desc {
  width: calc(100% - 110px);
  margin: 0 auto 29px;
}
.content2__link {
  max-width: 748px;
  margin: 0 auto 2px;
}
.content2__limit {
  width: calc(100% - 56px);
  margin: 0 auto;
}
.content2__prize {
  position: relative;
}
.content2__prize img {
  display: block;
  width: 100%;
  max-width: fit-content;
  margin: -13px 0 0 auto;
}
.content2__prize div {
  position: absolute;
  bottom: 110px;
  left: 42px;
  max-width: 400px;
}
.content2__prize div p {
  letter-spacing: -0.1rem;
}

/* /2 */
.content3.content {
  padding-bottom: 28px; /* after分 */
}
.content3.content h2 img {
  max-width: 373px;
}
.content3.content .content {
  position: relative;
}
.content3.content .content__inner {
  padding: 0 26px 0;
  background: url(../img/content3/bg_main_content3.png) top center no-repeat;
  background-size: 100% auto;
}
.content3.content .content__inner:after {
  display: block;
  content: "";
  position: absolute;
  bottom: -28px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 28px;
  background: url(../img/content3/bg_content3_bottom.png) top center no-repeat;
  background-size: 100% auto;
}
.content3.content .content__desc img {
  max-width: 605px;
}
.content3.content .coverWrapper.isClosed:after {
  height: calc(100% - 25px);
}

.content3.noAccordion.content {
  padding-bottom: 0;
  /* アコーディオンなしの状態は背景で下まで出す */
}
.content3.noAccordion.content .content__inner {
  padding: 0 26px 0;
  background: url(../img/content3/bg_main_content3_no_accordion.png) top center no-repeat;
  background-size: 100% auto;
}
.content3.noAccordion.content .content__inner:after {
  display: none;
}
.content3.noAccordion.content .content3__notice {
  padding-bottom: 10px;
  margin: -38px auto 0;
  overflow: visible;
}

.content3__caution {
  max-width: 785px;
  margin: 0 auto 36px;
  padding: 15px;
  border: 2.5px solid #e60008;
  color: #e60008;
  font-weight: 900;
  text-align: center;
}
.content3__limit {
  width: calc(100% - 110px);
  margin: 0 auto 10px;
}
.content3__notice {
  position: relative;
  width: calc(100% - 110px);
  margin: -20px auto 0;
}
.content3__notice img {
  display: block;
  margin-left: auto;
  margin-right: -60px;
}
.content3__notice div {
  position: absolute;
  top: 50px;
  left: 0;
  max-width: 500px;
}
.content3__notice div .red {
  margin-bottom: 18px;
  padding: 10px 40px;
  background: #e60008;
  color: #FFF;
}
.content3__accordion {
  cursor: pointer;
}
.content3__accordion img {
  width: 100%;
}
.content3__accordion .close {
  display: block;
}
.content3__accordion .open {
  display: none;
}
.content3__accordion.isOpen .close {
  display: none;
}
.content3__accordion.isOpen .open {
  display: block;
}
.content3__link {
  z-index: 2;
  display: flex;
  justify-content: center;
  gap: 68px;
  height: 0;
  position: relative;
  padding: 0;
  overflow: hidden;
}
.content3__link.isOpen {
  height: auto;
  padding: 20px 0;
}

/* *3 */
.content4.content h2 img {
  max-width: 544px;
}
.content4.content .content__inner {
  padding: 0 26px 62px;
  background: url(../img/content4/bg_main_content4.png) top center no-repeat;
  background-size: 100% auto;
}
.content4.content .content__desc img {
  max-width: 591px;
}

.content4__limit {
  max-width: 590px;
  margin: 0 auto 60px;
}
.content4 h3 {
  max-width: 674px;
  margin-bottom: 30px;
}
.content4__shop img {
  display: block;
  width: 100%;
  max-width: 724px;
  margin: 0 auto 26px;
}
.content4__shop a {
  display: block;
  max-width: 748px;
  margin: 0 auto 56px;
  overflow: visible;
}
.content4__shop a img {
  margin-left: 15px;
}
.content4__shop:last-of-type a {
  margin: 0 auto 36px;
}
.content4 p.indent {
  max-width: 724px;
  margin: 0 auto;
  letter-spacing: -0.1rem;
}

/* /4 */
.content5.content h2 img {
  max-width: 644px;
}
.content5.content .content__inner {
  padding: 0 26px 24px;
  background: url(../img/content5/bg_main_content5.png) top center no-repeat;
  background-size: 100% auto;
}
.content5.content .content__desc img {
  max-width: 659px;
}

.content5__limit {
  max-width: 743px;
  margin: 0 auto 24px;
}
.content5__prize {
  max-width: 776px;
  margin: 0 auto 60px;
}
.content5__flow {
  max-width: 756px;
  margin: 0 auto 54px;
}
.content5__flow h3 {
  max-width: 364px;
  margin: 0 auto 40px;
}
.content5__flow ul li {
  margin-bottom: 40px;
}
.content5__link {
  max-width: 748px;
  overflow: visible;
}
.content5__link img {
  margin-left: 15px;
}

/* /5 */
.content6.content h2 img {
  max-width: 704px;
}
.content6.content .content__inner {
  padding: 0 26px 50px;
  background: url(../img/content6/bg_main_content6.png) top center no-repeat;
  background-size: 100% auto;
}
.content6.content .content__desc img {
  max-width: 659px;
}

.content6__main {
  max-width: 705px;
  margin: -60px auto 0;
}
.content6__link {
  max-width: 748px;
  margin: 0 auto;
  overflow: visible;
}
.content6__link img {
  margin-left: 15px;
}

/* /6 */
.about {
  padding: 60px 0 120px;
}
.about__inner {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  padding: 0 40px;
}
.about h2 {
  margin-bottom: 70px;
}
.about p {
  max-width: 624px;
  margin: 0 auto 136px;
  text-align: center;
}
.about__link {
  max-width: 748px;
  margin: 0 auto;
  overflow: visible;
}
.about__link img {
  margin-left: 15px;
}

.cpFooter {
  padding: 56px 0 64px;
  background: #011656;
  color: #FFF;
}
.cpFooter__inner {
  max-width: 900px;
  margin: 0 auto;
}
.cpFooter__inner small {
  display: block;
  margin-bottom: 40px;
  text-align: center;
}
.cpFooter__inner div {
  margin-bottom: 40px;
  text-align: center;
}
.cpFooter__inner div p {
  line-height: 3rem;
}
.cpFooter__inner div p.large {
  margin-bottom: 8px;
  font-size: 3rem;
}
.cpFooter__inner div a {
  color: #FFF;
  font-size: 2.4rem;
  font-weight: bold;
  text-decoration: none;
}

#footer {
  margin-top: 0;
}

.f_app {
  background: linear-gradient(180deg, #011656 0%, #011656 80px, #000 80px, #000 100%);
}

/* faq */
.back {
  max-width: 900px;
  margin: 0 auto 32px;
  padding-top: 114px;
}
.back a {
  color: #FFF;
  font-size: 2.4rem;
}

.qa.content {
  padding-bottom: 186px;
}
.qa.content h2 img {
  max-width: 724px;
}
.qa.content .content__inner {
  padding: 0 50px 0;
  background: url(../img/qa/bg_main_content_qa.png) top center no-repeat;
  background-size: 100% 100%;
}
.qa.content .content__inner:after {
  display: block;
  content: "";
  position: absolute;
  bottom: -27px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 27px;
  background: url(../img/qa/bg_main_content_bottom_qa.png) center no-repeat;
  background-size: 100% 100%;
}

.qa__box {
  margin-bottom: 40px;
}
.qa__box h3 {
  margin-bottom: 22px;
  color: #011656;
  font-size: 2rem;
  font-weight: bold;
}
.qa__box p {
  font-size: 1.6rem;
}
.qa__box p a {
  color: #000;
}
.qa__box p span {
  text-decoration: underline;
}

@media screen and (max-width: 1020px) {
  .content3__notice img {
    margin-right: -6.1vw;
  }
}
@media screen and (max-width: 900px) {
  .spBlock {
    display: block;
  }
  .spNone {
    display: none;
  }
  body {
    font-size: 1.97vw;
  }
  .kv {
    padding: 4.6vw 0 2.7vw;
  }
  .kv__inner {
    width: calc(100% - 2.2vw);
  }
  .anchor {
    margin-bottom: 6.15vw;
  }
  .anchor__title {
    margin: 0 auto 1.8vw;
  }
  .anchor__list {
    gap: 1.8vw;
    width: calc(100% - 2.2vw);
  }
  .anchor__list li {
    max-width: calc(50% - 0.9vw);
  }
  .anchor__list li img {
    margin-left: 0.5vw;
  }
  .coverWrapper.isClosed:after {
    width: calc(100% - 3.8vw);
  }
  .content {
    padding-top: 6.59vw;
  }
  .content__inner {
    max-width: 98.9vw;
  }
  .content__head {
    width: calc(100% - 19.7vw);
    margin: 0 auto 4.4vw;
    transform: translateY(-3.3vw);
  }
  .content__desc {
    padding-top: 3.1vw;
    margin-bottom: 4vw;
  }
  .content1.content h2 img {
    max-width: 78.4vw;
  }
  .content1.content .content__inner {
    padding: 0 2.9vw 17vw;
  }
  .content1.content .content__desc img {
    max-width: 83.6vw;
  }
  .content1__nav {
    max-width: calc(100% - 12.1vw);
    margin: 0 auto 3.1vw;
    padding: 10.3vw 3.7vw 3.5vw;
  }
  .content1__nav ul {
    gap: 3.51vw;
  }
  .content1__prize {
    position: relative;
    width: calc(100% - 7vw);
    margin: 0 auto;
  }
  .content1__prize:first-of-type img:first-of-type {
    margin-bottom: 3.5vw;
  }
  .content1__prize div {
    bottom: 1.8vw;
    max-width: 46.2vw;
  }
  .content1 h3 {
    margin-bottom: 4.4vw;
  }
  .content1__menu {
    width: calc(100% - 7vw);
  }
  .content1__menu__img {
    margin-bottom: 2vw;
  }
  .content1__menu__img:first-of-type {
    margin-bottom: 4vw;
  }
  .content1__menu a {
    max-width: 82.2vw;
    margin: 0 auto 2.6vw;
  }
  .content1__menu a img {
    margin-left: 1.6vw;
  }
  .content1__menu__caution {
    margin-top: 2.6vw;
    margin-bottom: 4vw;
    padding: 2.2vw;
    border: 0.5vw solid #d70000;
  }
  .content1__menu__caution p {
    letter-spacing: -0.09rem;
  }
  .content1__extra h3 {
    max-width: 77.3vw;
    margin-bottom: 3.3vw;
  }
  .content1__extra p img {
    max-width: 79.2vw;
    margin: 0 auto 3.3vw;
  }
  .content1__extra p.indent {
    max-width: 79.2vw;
  }
  /* /1 */
  .content2.content {
    padding-top: 3.3vw;
  }
  .content2.content h2 img {
    max-width: 65.3vw;
  }
  .content2.content .content__inner {
    padding: 4.6vw 2.9vw 0.9vw;
  }
  .content2.content .content__desc img {
    max-width: 81.5vw;
  }
  .content2__head {
    margin: 0 auto 2.3vw;
  }
  .content2__head img {
    max-width: 79.8vw;
  }
  .content2__desc {
    width: calc(100% - 12.1vw);
    margin: 0 auto 2.6vw;
  }
  .content2__link {
    max-width: 82.2vw;
    margin: 0 auto 0.2vw;
  }
  .content2__limit {
    width: calc(100% - 6.15vw);
  }
  .content2__prize img {
    max-width: 88.9vw;
    margin-top: -0.5vw;
  }
  .content2__prize div {
    bottom: 12.1vw;
    left: 4.6vw;
    max-width: 43.9vw;
  }
  /* /2 */
  .content3.noAccordion.content .content__inner {
    background-size: 100% auto;
  }
  .content3.content {
    padding-bottom: 3.1vw; /* after分 */
  }
  .content3.content h2 img {
    max-width: 41vw;
  }
  .content3.content .content__inner {
    padding: 0 2.9vw 0;
    background-size: 100% 100%;
  }
  .content3.content .content__inner:after {
    bottom: -3.1vw;
    height: 3.1vw;
  }
  .content3.content .content__desc img {
    max-width: 66.5vw;
  }
  .content3.content .coverWrapper.isClosed:after {
    height: calc(100% - 2.74vw);
  }
  .content3.noAccordion.content {
    /* アコーディオンなしの状態は背景で下まで出す */
  }
  .content3.noAccordion.content .content__inner {
    padding: 0 2.9vw 0;
  }
  .content3.noAccordion.content .content3__notice {
    margin: -4.8vw auto 0;
  }
  .content3__caution {
    max-width: 86.2vw;
    margin: 0 auto 3.95vw;
    padding: 1.6vw;
    border: 0.2vw solid #e60008;
  }
  .content3__limit {
    width: calc(100% - 12.1vw);
    margin: 0 auto 1.1vw;
  }
  .content3__notice {
    width: calc(100% - 12.1vw);
    margin: -2.2vw auto 0;
    padding-bottom: 0;
  }
  .content3__notice img {
    max-width: 58vw;
    margin-right: -6.1vw;
  }
  .content3__notice div {
    max-width: 54.9vw;
  }
  .content3__notice div .red {
    margin-bottom: 2vw;
    padding: 1.1vw 4.4vw;
  }
  .content3__link {
    gap: 7.5vw;
  }
  .content3__link.isOpen {
    padding: 2.1vw 0;
  }
  .content3__link div {
    max-width: 37.4vw;
  }
  /* *3 */
  .content4.content h2 img {
    max-width: 59.8vw;
  }
  .content4.content .content__inner {
    padding: 0 2.9vw 9vw;
  }
  .content4.content .content__desc img {
    max-width: 64.9vw;
  }
  .content4__limit {
    max-width: 64.8vw;
    margin: 0 auto 6.6vw;
  }
  .content4 h3 {
    max-width: 64.8vw;
    margin-bottom: 3.3vw;
  }
  .content4__shop img {
    max-width: 79.5vw;
    margin: 0 auto 2.9vw;
  }
  .content4__shop a {
    max-width: 82.2vw;
    margin: 0 auto 6.2vw;
  }
  .content4__shop a img {
    margin-left: 1.6vw;
  }
  .content4__shop:last-of-type a {
    margin: 0 auto 4vw;
  }
  .content4 p.indent {
    max-width: 79.5vw;
  }
  /* /4 */
  .content5.content h2 img {
    max-width: 70.8vw;
  }
  .content5.content .content__inner {
    padding: 0 2.9vw 0.1vw;
  }
  .content5.content .content__desc img {
    max-width: 72.4vw;
  }
  .content5__limit {
    max-width: 81.6vw;
    margin: 0 auto 2.6vw;
  }
  .content5__prize {
    max-width: 85.2vw;
    margin: 0 auto 6.6vw;
  }
  .content5__flow {
    max-width: 83.1vw;
    margin: 0 auto 5.9vw;
  }
  .content5__flow h3 {
    max-width: 43.3vw;
    margin: 0 auto 4.4vw;
  }
  .content5__flow ul li {
    margin-bottom: 4.4vw;
  }
  .content5__link {
    max-width: 82.2vw;
  }
  .content5__link img {
    margin-left: 1.6vw;
  }
  /* /5 */
  .content6.content h2 img {
    max-width: 77.3vw;
  }
  .content6.content .content__inner {
    padding: 0 2.9vw 6vw;
  }
  .content6.content .content__desc img {
    max-width: 72.4vw;
  }
  .content6__main {
    max-width: 77.4vw;
    margin: -6.6vw auto 0;
  }
  .content6__link {
    max-width: 82.2vw;
  }
  .content6__link img {
    margin-left: 1.6vw;
  }
  /* /6 */
  .about {
    padding: 6.6vw 0 13.2vw;
  }
  .about__inner {
    max-width: 98.9vw;
    padding: 0 4.4vw;
  }
  .about h2 {
    max-width: 83.6vw;
    margin: 0 auto 7.7vw;
  }
  .about p {
    max-width: 68.5vw;
    margin: 0 auto 14.9vw;
  }
  .about__link {
    max-width: 82.2vw;
  }
  .about__link img {
    margin-left: 1.6vw;
  }
  .cpFooter {
    padding: 6.2vw 0 7vw;
  }
  .cpFooter__inner {
    max-width: 98.9vw;
  }
  .cpFooter__inner small {
    margin-bottom: 4.4vw;
  }
  .cpFooter__inner div {
    margin-bottom: 4.4vw;
  }
  .cpFooter__inner div p {
    line-height: 3.3vw;
  }
  .cpFooter__inner div p.large {
    margin-bottom: 0.8vw;
    font-size: 3.3vw;
  }
  .cpFooter__inner div a {
    font-size: 2.63vw;
  }
  #footer {
    margin-top: 0;
  }
  .f_app {
    background: linear-gradient(180deg, #011656 0%, #011656 80px, #000 80px, #000 100%);
  }
  /* faq */
  .back {
    margin: 0 auto 3.6vw;
    padding: 12.6vw 5.5vw 0;
  }
  .back a {
    font-size: 2.7vw;
  }
  .qa.content {
    padding-bottom: 23.3vw;
  }
  .qa.content h2 img {
    max-width: 80.4vw;
  }
  .qa.content .content__inner {
    padding: 0 5.5vw;
  }
  .qa.content .content__inner:after {
    bottom: -3vw;
    height: 3vw;
  }
  .qa__box {
    margin-bottom: 4.1vw;
  }
  .qa__box h3 {
    margin-bottom: 2.4vw;
    font-size: 2.2vw;
  }
  .qa__box p {
    font-size: 1.8vw;
  }
}/*# sourceMappingURL=campaign.css.map */