.mt-0 {
  margin-top: 0px !important; }

.mt-5 {
  margin-top: 5px !important; }

.mt-10 {
  margin-top: 10px !important; }

.mt-15 {
  margin-top: 15px !important; }

.mt-20 {
  margin-top: 20px !important; }

.mt-25 {
  margin-top: 25px !important; }

.mt-30 {
  margin-top: 30px !important; }

.mt-35 {
  margin-top: 35px !important; }

.mt-40 {
  margin-top: 40px !important; }

.mt-45 {
  margin-top: 45px !important; }

.mt-50 {
  margin-top: 50px !important; }

.mt-55 {
  margin-top: 55px !important; }

.mt-60 {
  margin-top: 60px !important; }

.mt-65 {
  margin-top: 65px !important; }

.mt-70 {
  margin-top: 70px !important; }

.mt-75 {
  margin-top: 75px !important; }

.mt-80 {
  margin-top: 80px !important; }

.mt-85 {
  margin-top: 85px !important; }

.mt-90 {
  margin-top: 90px !important; }

.mt-95 {
  margin-top: 95px !important; }

.mt-100 {
  margin-top: 100px !important; }

.mb-0 {
  margin-bottom: 0px !important; }

.mb-5 {
  margin-bottom: 5px !important; }

.mb-10 {
  margin-bottom: 10px !important; }

.mb-15 {
  margin-bottom: 15px !important; }

.mb-20 {
  margin-bottom: 20px !important; }

.mb-25 {
  margin-bottom: 25px !important; }

.mb-30 {
  margin-bottom: 30px !important; }

.mb-35 {
  margin-bottom: 35px !important; }

.mb-40 {
  margin-bottom: 40px !important; }

.mb-45 {
  margin-bottom: 45px !important; }

.mb-50 {
  margin-bottom: 50px !important; }

.mb-55 {
  margin-bottom: 55px !important; }

.mb-60 {
  margin-bottom: 60px !important; }

.mb-65 {
  margin-bottom: 65px !important; }

.mb-70 {
  margin-bottom: 70px !important; }

.mb-75 {
  margin-bottom: 75px !important; }

.mb-80 {
  margin-bottom: 80px !important; }

.mb-85 {
  margin-bottom: 85px !important; }

.mb-90 {
  margin-bottom: 90px !important; }

.mb-95 {
  margin-bottom: 95px !important; }

.mb-100 {
  margin-bottom: 100px !important; }

@media screen and (min-width: 768px) {
  .mt-sm-0 {
    margin-top: 0px !important; }
  .mt-sm-5 {
    margin-top: 5px !important; }
  .mt-sm-10 {
    margin-top: 10px !important; }
  .mt-sm-15 {
    margin-top: 15px !important; }
  .mt-sm-20 {
    margin-top: 20px !important; }
  .mt-sm-25 {
    margin-top: 25px !important; }
  .mt-sm-30 {
    margin-top: 30px !important; }
  .mt-sm-35 {
    margin-top: 35px !important; }
  .mt-sm-40 {
    margin-top: 40px !important; }
  .mt-sm-45 {
    margin-top: 45px !important; }
  .mt-sm-50 {
    margin-top: 50px !important; }
  .mt-sm-55 {
    margin-top: 55px !important; }
  .mt-sm-60 {
    margin-top: 60px !important; }
  .mt-sm-65 {
    margin-top: 65px !important; }
  .mt-sm-70 {
    margin-top: 70px !important; }
  .mt-sm-75 {
    margin-top: 75px !important; }
  .mt-sm-80 {
    margin-top: 80px !important; }
  .mt-sm-85 {
    margin-top: 85px !important; }
  .mt-sm-90 {
    margin-top: 90px !important; }
  .mt-sm-95 {
    margin-top: 95px !important; }
  .mt-sm-100 {
    margin-top: 100px !important; }
  .mb-sm-0 {
    margin-bottom: 0px !important; }
  .mb-sm-5 {
    margin-bottom: 5px !important; }
  .mb-sm-10 {
    margin-bottom: 10px !important; }
  .mb-sm-15 {
    margin-bottom: 15px !important; }
  .mb-sm-20 {
    margin-bottom: 20px !important; }
  .mb-sm-25 {
    margin-bottom: 25px !important; }
  .mb-sm-30 {
    margin-bottom: 30px !important; }
  .mb-sm-35 {
    margin-bottom: 35px !important; }
  .mb-sm-40 {
    margin-bottom: 40px !important; }
  .mb-sm-45 {
    margin-bottom: 45px !important; }
  .mb-sm-50 {
    margin-bottom: 50px !important; }
  .mb-sm-55 {
    margin-bottom: 55px !important; }
  .mb-sm-60 {
    margin-bottom: 60px !important; }
  .mb-sm-65 {
    margin-bottom: 65px !important; }
  .mb-sm-70 {
    margin-bottom: 70px !important; }
  .mb-sm-75 {
    margin-bottom: 75px !important; }
  .mb-sm-80 {
    margin-bottom: 80px !important; }
  .mb-sm-85 {
    margin-bottom: 85px !important; }
  .mb-sm-90 {
    margin-bottom: 90px !important; }
  .mb-sm-95 {
    margin-bottom: 95px !important; }
  .mb-sm-100 {
    margin-bottom: 100px !important; } }

body, html {
  scroll-behavior: smooth;
  font-size: 16px;
  line-height: 1.81; }

ul, ol {
  list-style: none;
  padding-left: 0;
  margin-left: 0; }

* {
  box-sizing: border-box; }

html, body {
  margin: 0;
  padding: 0;
  scroll-behavior: smooth; }

img {
  max-width: 100%;
  height: auto; }

@media screen and (min-width: 768px) {
  .only-sp {
    display: none !important; } }

@media screen and (max-width: 767px) {
  .only-pc {
    display: none !important; } }

@media screen and (min-width: 768px) {
  .sp-on {
    display: none !important; } }

@media screen and (max-width: 767px) {
  .pc-on {
    display: none !important; } }

body {
  color: #263238; }
  @media screen and (max-width: 767px) {
    body {
      font-size: 16px;
      line-height: 1.67; } }
  @media screen and (min-width: 768px) {
    body {
      font-size: 18px;
      line-height: 1.75; } }

p {
  margin-top: 20px; }

.l-body {
  overflow: hidden; }

@media screen and (max-width: 767px) {
  .l-container {
    padding-left: 36px;
    padding-right: 36px; } }

@media screen and (min-width: 768px) {
  .l-container {
    max-width: 940px;
    margin-left: auto;
    margin-right: auto; } }

.l-sl-header {
  position: absolute;
  left: 0;
  right: 0;
  z-index: 10; }

.l-sl-header__logo {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%; }
  @media screen and (max-width: 767px) {
    .l-sl-header__logo {
      padding-top: 20px; } }
  @media screen and (min-width: 768px) {
    .l-sl-header__logo {
      padding-top: 32px; } }
  @media screen and (min-width: 768px) {
    .l-sl-header__logo img {
      width: clamp(282.75px, 24.375vw, 312px);
      height: clamp(86.09375px, 7.421875vw, 95px); } }
  @media screen and (max-width: 767px) {
    .l-sl-header__logo img {
      width: 200px;
      height: 60px; } }

@media screen and (max-width: 767px) {
  .l-sec--lead {
    margin-top: clamp(-360px, -48vw, -180px); } }

.l-sl-kv img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  object-fit: cover; }
  @media screen and (min-width: 768px) {
    .l-sl-kv img {
      min-height: 59.6vw;
      aspect-ratio: 1280 / 763;
      max-height: 100dvh; } }
  @media screen and (max-width: 767px) {
    .l-sl-kv img {
      position: relative;
      z-index: 20;
      max-width: none;
      object-fit: 100% auto;
      object-position: center top;
      aspect-ratio: 375 / 844; } }

.l-h1 {
  position: relative; }

.l-sec {
  padding-top: 35px;
  padding-bottom: 45px; }

.c-sl-btn {
  min-height: 53px;
  border-radius: 45px;
  border: solid 3px #4b1e78;
  background-color: #fff;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.04;
  text-align: left;
  color: #4b1e78;
  position: relative;
  transition: border 0.4s;
  letter-spacing: 0;
  transition: 0.4s; }
  @media screen and (min-width: 768px) {
    .c-sl-btn.c-sl-btn--kv {
      min-width: 400px; } }
  @media screen and (min-width: 768px) {
    .c-sl-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 28px;
      min-height: 90px;
      padding-left: 60px;
      padding-right: 60px; } }
  @media screen and (max-width: 767px) {
    .c-sl-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 14px; } }
  .c-sl-btn:hover, .c-sl-btn:focus {
    background-color: #4b1e78;
    color: #fff; }
    .c-sl-btn:hover:before, .c-sl-btn:focus:before {
      background: url(../images/icon_arw_white.svg) 50% 50%/contain no-repeat; }
  @media screen and (min-width: 768px) {
    .c-sl-btn.c-sl-btn-r {
      height: 79px;
      min-height: 79px;
      padding-right: 76px; } }
  @media screen and (max-width: 767px) {
    .c-sl-btn.c-sl-btn-r {
      padding-right: 24px; } }
  .c-sl-btn.c-sl-btn-r:before {
    transform: rotate(-90deg); }
  .c-sl-btn.c-sl-btn-up:before {
    transform: rotate(-180deg); }
  @media screen and (max-width: 767px) {
    .c-sl-btn.c-sl-btn-up {
      justify-content: center; } }
  @media screen and (min-width: 768px) {
    .c-sl-btn.c-sl-btn-up {
      height: 79px;
      min-height: 79px;
      padding-right: 76px; } }
  .c-sl-btn:before {
    position: absolute;
    display: block;
    right: 25px;
    top: calc(50% - 12.5px);
    content: "";
    width: 25px;
    height: 25px;
    background: url(../images/icon_arw.svg) 50% 50%/contain no-repeat; }
    @media screen and (max-width: 767px) {
      .c-sl-btn:before {
        top: calc(50% - 8px);
        right: 16px;
        width: 16px;
        height: 16px; } }

.c-sl__btn-wrap {
  display: flex; }
  @media screen and (max-width: 767px) {
    .c-sl__btn-wrap {
      margin-top: 15px; } }

.c-sl-kv__btn-wrap {
  position: absolute;
  bottom: 30px;
  width: 100%;
  display: flex;
  justify-content: center; }
  @media screen and (max-width: 767px) {
    .c-sl-kv__btn-wrap .c-sl-btn {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 302px;
      height: 70px;
      border-radius: 35px;
      border: solid 3px #4b1e78;
      background-color: #fff;
      font-size: 22px; }
      .c-sl-kv__btn-wrap .c-sl-btn:before {
        width: 20px;
        height: 20px;
        top: calc(50% - 10px); } }

@media screen and (min-width: 768px) {
  .l-sec--fan {
    padding-top: 80px !important; } }

.bg-lead {
  position: absolute;
  background: url(../images/bg_lead.png) 0 50%/100% auto no-repeat;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 1280 / 819;
  margin-top: clamp(-250px, -19.53125vw, -226.5625px); }
  @media (min-width: 1280px) {
    .bg-lead {
      height: 820px;
      background: url(../images/bg_lead.png) 0 50%/100% 820px no-repeat; } }
  @media screen and (max-width: 767px) {
    .bg-lead {
      display: none; } }

.l-sec {
  position: relative; }
  .l-sec .c-about__lead {
    font-size: 21px;
    text-align: center;
    font-feature-settings: "palt";
    line-height: 1.25; }
    @media screen and (max-width: 767px) {
      .l-sec .c-about__lead {
        font-size: 18px;
        color: #333333;
        line-height: 1.65;
        font-weight: normal; } }
  @media screen and (min-width: 768px) {
    .l-sec .c-about__header {
      position: relative;
      z-index: 10;
      margin: clamp(18.125px, 1.5625vw, 20px) clamp(0px, 0vw, 0px) clamp(54.375px, 4.6875vw, 60px) clamp(0px, 0vw, 0px);
      font-size: 32px;
      font-weight: bold;
      text-align: center;
      color: #fff; } }
  @media screen and (max-width: 767px) {
    .l-sec .c-about__header {
      position: relative;
      z-index: 100;
      font-size: 32px;
      font-weight: bold;
      text-align: center;
      color: #fff;
      margin-top: -20vw; } }

@media screen and (min-width: 768px) {
  .c-lead_divider {
    margin-left: 38px;
    margin-top: 30px;
    margin-bottom: 40px;
    display: flex;
    justify-content: center; } }

@media screen and (max-width: 767px) {
  .c-lead_divider {
    display: flex;
    justify-content: center;
    margin-top: 24vw;
    margin-bottom: 50px; } }

.l-sec__header {
  font-size: 24px;
  font-weight: bold;
  color: #333;
  margin-bottom: 1em; }
  .l-sec__header img {
    margin-right: 4px; }
  @media screen and (min-width: 768px) {
    .l-sec__header {
      font-size: 32px; } }

.l-sec__lead {
  font-size: 18px;
  margin-bottom: 2em; }
  @media screen and (max-width: 767px) {
    .l-sec__lead {
      margin-bottom: 26px; } }

@media screen and (min-width: 768px) {
  .l-sl-audio-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 30px 20px; } }

.l-sl-audio-list > li {
  padding: 18px 26px 19px 26px;
  border-radius: 15px;
  border: solid 2px #f18e00;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    .l-sl-audio-list > li {
      padding-bottom: 30px; } }
  @media screen and (max-width: 767px) {
    .l-sl-audio-list > li + li {
      margin-top: 20px; } }
  .l-sl-audio-list > li.illust {
    border: none;
    padding: 0;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end; }
    @media screen and (max-width: 767px) {
      .l-sl-audio-list > li.illust {
        display: none; } }
  .l-sl-audio-list > li h3 {
    margin: 0 0 0;
    font-size: 24px;
    font-weight: bold;
    text-align: left;
    color: #333; }
    @media screen and (max-width: 767px) {
      .l-sl-audio-list > li h3 {
        font-feature-settings: "palt";
        font-size: 20px;
        word-break: break-all; } }
  .l-sl-audio-list > li h4 {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.61;
    color: #333;
    margin-bottom: 10px; }
    @media screen and (max-width: 767px) {
      .l-sl-audio-list > li h4 {
        font-size: 18px;
        margin-bottom: 6px; } }
    .l-sl-audio-list > li h4 img {
      margin-right: 6px; }
      @media screen and (max-width: 767px) {
        .l-sl-audio-list > li h4 img {
          width: 34px;
          height: auto; } }
  .l-sl-audio-list > li p + h4 {
    margin-top: 30px; }
    @media screen and (max-width: 767px) {
      .l-sl-audio-list > li p + h4 {
        margin-top: 20px; } }
  .l-sl-audio-list > li p, .l-sl-audio-list > li li {
    font-size: 16px; }
    @media screen and (max-width: 767px) {
      .l-sl-audio-list > li p, .l-sl-audio-list > li li {
        font-size: 14px; } }
  .l-sl-audio-list > li audio {
    margin-top: 26px;
    margin-bottom: 26px;
    width: 100%; }
    @media screen and (max-width: 767px) {
      .l-sl-audio-list > li audio {
        margin-top: 23px;
        margin-bottom: 20px; } }

.l-sl-audio-list__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  width: 124px;
  height: 55px;
  border-radius: 27.5px;
  border: solid 3px #4b1e78;
  background-color: #fff;
  font-weight: bold;
  margin-bottom: 25px;
  transition: 0.4s; }
  @media screen and (max-width: 767px) {
    .l-sl-audio-list__btn {
      margin-bottom: 20px; } }
  .l-sl-audio-list__btn:hover, .l-sl-audio-list__btn:focus {
    background-color: #4b1e78;
    color: #fff; }

.l-step {
  padding-left: 143px;
  position: relative;
  z-index: 20; }
  @media screen and (min-width: 768px) {
    .l-step {
      padding-bottom: 40px; } }
  @media screen and (max-width: 767px) {
    .l-step {
      padding-left: 77px; } }
  .l-step:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 120px;
    height: calc(100% - 30px);
    background: url(../images/dotted.png) 50% 100% no-repeat; }
    @media screen and (max-width: 767px) {
      .l-step:before {
        width: 65px;
        background: url(../images/dotted_sp.png) 50% 100% no-repeat; } }
  .l-step li {
    padding-top: 30px;
    position: relative; }
    @media screen and (max-width: 767px) {
      .l-step li {
        padding-top: 0; } }
    @media screen and (max-width: 767px) {
      .l-step li + li {
        margin-top: 30px; } }
    .l-step li h3 {
      margin-bottom: 1em;
      font-size: 20px;
      font-weight: bold;
      text-align: left;
      color: #006eb3; }
      @media screen and (max-width: 767px) {
        .l-step li h3 {
          font-size: 16px;
          margin-bottom: 0.75em; } }
    .l-step li p {
      font-size: 18px;
      color: #333;
      margin-bottom: 1em; }
      @media screen and (max-width: 767px) {
        .l-step li p {
          font-size: 14px; } }
    .l-step li .c-sl-btn {
      font-size: 20px; }
      @media screen and (max-width: 767px) {
        .l-step li .c-sl-btn {
          font-size: 14px;
          width: 100%; } }
    .l-step li .l-step__notice {
      margin: 30px 1px 0 20px;
      font-size: 28px;
      font-weight: bold;
      font-stretch: normal;
      font-style: normal;
      line-height: 1.79;
      letter-spacing: normal;
      text-align: left;
      color: #c50033; }
      @media screen and (max-width: 767px) {
        .l-step li .l-step__notice {
          font-size: 18px;
          line-height: 1.56; } }
    .l-step li figure {
      display: block; }
      @media screen and (max-width: 767px) {
        .l-step li figure + figure {
          margin-top: 16px; } }
      .l-step li figure figcaption {
        margin-top: 12px;
        line-height: 1;
        font-size: 18px;
        text-align: left;
        color: #333; }
        @media screen and (max-width: 767px) {
          .l-step li figure figcaption {
            margin-top: 8px;
            font-size: 14px; } }

@media screen and (min-width: 768px) {
  .l-step_picts {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 10px;
    margin-bottom: 20px;
    margin-top: 20px; } }

@media screen and (max-width: 767px) {
  .l-step_picts > * + * {
    margin-top: 10px; } }

.l-step_picts iframe {
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto; }

.l-step__circle {
  width: 36px;
  height: 36px;
  background-color: #006eb3;
  border-radius: 50%; }

.l-step__num {
  position: absolute;
  width: 120px;
  height: 120px;
  background-color: #006eb3;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  flex-direction: column;
  left: -23px;
  transform: translateX(-100%);
  top: 0; }
  @media screen and (max-width: 767px) {
    .l-step__num {
      width: 65px;
      height: 65px;
      left: -12px; } }
  .l-step__num em {
    display: block;
    font-size: 16px;
    font-weight: bold;
    color: #fff; }
    @media screen and (max-width: 767px) {
      .l-step__num em {
        font-size: 12px; } }
  .l-step__num i {
    font-style: normal;
    display: block;
    font-size: 32px;
    font-weight: bold;
    line-height: 1; }
    @media screen and (max-width: 767px) {
      .l-step__num i {
        font-size: 24px; } }

.questant-embed-wrap {
  display: flex;
  justify-content: center; }
  .questant-embed-wrap iframe {
    border: none; }

.l-step__notice2 {
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.79;
  letter-spacing: normal;
  text-align: left;
  color: #c50033 !important; }
  @media screen and (max-width: 767px) {
    .l-step__notice2 {
      line-height: 1.56; } }

.l-sec-walk {
  overflow: hidden; }

.u-bg-pink {
  background-color: #faecf1; }

.u-bg-white {
  background-color: #fff; }

.u-bg-yellow {
  background-color: #FDFCEE; }

.pos-relative {
  position: relative; }

.bg-sp {
  position: absolute;
  display: block;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 375 / 28291;
  top: 20vw;
  z-index: 10;
  background: url(../images/bg_sp.png) 0 0/100% 1319.7vw repeat-y; }
  @media screen and (min-width: 768px) {
    .bg-sp {
      display: none; } }

.bg-pc {
  position: absolute;
  display: block;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  width: 100%;
  height: auto;
  top: 70vw;
  z-index: 10;
  min-height: 15701px;
  background: url(../images/bg_pc.png) 50% 0/1280px auto no-repeat; }
  @media (min-width: 1281px) {
    .bg-pc {
      top: 940px;
      min-height: 20000px;
      background: url(../images/bg_pc_xl.png) 50% 0/1645px auto no-repeat; } }
  @media screen and (max-width: 767px) {
    .bg-pc {
      display: none; } }

.bg-grand {
  position: absolute;
  display: block;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 1280 / 789;
  top: 872px;
  z-index: 10;
  background: url(../images/bg_grand.png) 50% 0/100% auto no-repeat; }
  @media screen and (max-width: 767px) {
    .bg-grand {
      display: none; } }

.bg-message {
  position: absolute;
  display: block;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 1280 / 9406;
  top: -124px;
  z-index: 10;
  background: url(../images/bg_message.png) 50% 0/100% auto no-repeat; }
  @media screen and (max-width: 767px) {
    .bg-message {
      display: none; } }

.bg-voice {
  position: absolute;
  display: block;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 1280 / 3249;
  top: -424px;
  z-index: 10;
  background: url(../images/bg_voice.png) 50% 0/100% auto no-repeat; }
  @media screen and (max-width: 767px) {
    .bg-voice {
      display: none; } }

.bg-thanks {
  position: absolute;
  display: block;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 1280 / 649;
  top: 0;
  z-index: 10;
  background: url(../images/bg_thanks.png) 50% 0/100% auto no-repeat; }
  @media screen and (max-width: 767px) {
    .bg-thanks {
      display: none; } }

.bg-walk-01 {
  position: absolute;
  display: block;
  margin-left: auto;
  margin-right: auto;
  left: clamp(-167px, -13.046875vw, -151.34375px);
  top: clamp(344.375px, 29.6875vw, 380px);
  width: clamp(322.625px, 27.8125vw, 356px);
  height: auto;
  z-index: 10; }
  @media screen and (max-width: 767px) {
    .bg-walk-01 {
      display: none; } }

.bg-walk-02 {
  position: absolute;
  display: block;
  left: clamp(543.75px, 46.875vw, 600px);
  top: clamp(181.25px, 15.625vw, 200px);
  width: clamp(575.46875px, 49.609375vw, 635px);
  height: auto;
  z-index: 10; }
  @media screen and (max-width: 767px) {
    .bg-walk-02 {
      display: none; } }

.prize-box {
  background-color: #fff;
  max-width: 940px;
  width: 100%;
  margin: 0 auto;
  padding: 40px 57px 60px;
  border-radius: 15px;
  position: relative;
  z-index: 90; }
  @media screen and (max-width: 767px) {
    .prize-box {
      padding: 20px 14px; } }

.prize-box__type {
  display: flex;
  align-items: center;
  justify-content: center; }
  .prize-box__type span {
    width: 180px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #C94476;
    color: #fff;
    font-size: 28px; }
    @media screen and (max-width: 767px) {
      .prize-box__type span {
        width: 146px;
        height: 50px;
        font-size: 24px;
        background-color: #c94476; } }

.prize-box__tit {
  margin: 30px 0 0;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: normal;
  text-align: center;
  color: #C94476; }
  @media screen and (max-width: 767px) {
    .prize-box__tit {
      font-size: 24px;
      font-weight: bold;
      text-align: center;
      color: #c94476; } }
  .prize-box__tit:after {
    margin-top: 24px;
    display: block;
    content: "";
    height: 5px;
    background-color: #C94476;
    border-radius: 2.5px; }

.prize-grand {
  margin-top: 60px; }

.prize-audio {
  display: flex;
  justify-content: center;
  margin-bottom: 30px; }
  @media screen and (max-width: 767px) {
    .prize-audio {
      margin-top: 22px; } }
  .prize-audio audio {
    width: 396px; }
    @media screen and (max-width: 767px) {
      .prize-audio audio {
        max-width: 100%;
        height: 42px; } }

.prize-comment {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
  width: 180px;
  height: 50px;
  padding: 0 30px 0;
  background-color: #e9f5f7;
  font-weight: bold; }
  @media screen and (max-width: 767px) {
    .prize-comment {
      width: 132px;
      height: 40px;
      padding: 0;
      font-feature-settings: "palt";
      background-color: #e9f5f7;
      font-size: 18px; } }

.prize-special {
  display: flex;
  align-items: flex-start;
  flex-direction: row-reverse; }
  @media screen and (max-width: 767px) {
    .prize-special {
      display: block; } }
  @media screen and (max-width: 767px) {
    .prize-special p {
      font-size: 16px;
      line-height: 1.6; } }
  .prize-special img {
    margin-left: 17px; }
    @media screen and (min-width: 768px) {
      .prize-special img {
        margin-top: 86px; } }
    @media screen and (max-width: 767px) {
      .prize-special img {
        margin-left: 15px;
        margin-right: 15px;
        margin-bottom: 30px; } }

.msg-heading {
  position: relative;
  z-index: 20;
  margin-bottom: 60px; }
  @media screen and (max-width: 767px) {
    .msg-heading {
      margin-bottom: 40px; } }
  @media screen and (min-width: 768px) {
    .msg-heading {
      margin-bottom: 70px; } }
  @media screen and (min-width: 768px) {
    .msg-heading.msg-heading--voice {
      margin-bottom: 40px; } }
  .msg-heading h2 {
    margin: 0 0 18px;
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    color: #006eb3; }
    @media screen and (max-width: 767px) {
      .msg-heading h2 {
        font-size: 24px; } }
  .msg-heading p {
    margin-top: 24px;
    font-size: 18px;
    text-align: center;
    color: #333; }
    @media screen and (max-width: 767px) {
      .msg-heading p {
        font-size: 16px;
        font-feature-settings: "palt"; } }

.msg-heading__dots {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 260px;
  height: 16px;
  background: url(../images/dots.png) 0 0 no-repeat; }
  @media screen and (max-width: 767px) {
    .msg-heading__dots {
      width: 180px; } }

.prize-box__tit2 {
  margin: 0 1px 30px 0;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  color: #333; }
  @media screen and (max-width: 767px) {
    .prize-box__tit2 {
      font-size: 20px;
      margin-bottom: 24px; } }

.prize-box.prize-sub {
  padding-bottom: 30px; }
  @media screen and (max-width: 767px) {
    .prize-box.prize-sub {
      padding-left: 20px;
      padding-right: 20px;
      padding-bottom: 20px; } }
  .prize-box.prize-sub h3 {
    display: flex;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 20px;
    align-items: center; }
    @media screen and (max-width: 767px) {
      .prize-box.prize-sub h3 {
        font-size: 18px; } }
    .prize-box.prize-sub h3 img {
      display: block;
      margin-right: 10px !important; }
      @media screen and (max-width: 767px) {
        .prize-box.prize-sub h3 img {
          margin-right: 10px !important; } }
  .prize-box.prize-sub ul.bg-blue li {
    background-color: #e9f5f7; }
  .prize-box.prize-sub ul li {
    margin: 20.5px 0 20px;
    padding: 12px 22px 18px;
    background-color: #faecf1;
    color: #333;
    line-height: 1.625;
    font-size: 16px; }
    @media screen and (max-width: 767px) {
      .prize-box.prize-sub ul li {
        padding: 10px 10px 20px;
        font-size: 14px; } }

.prize-sub + .prize-sub {
  margin-top: 40px; }

.thanks-box {
  margin-top: 40px;
  padding: 38px 60px 34px;
  border-radius: 15px;
  background-color: #faecf1; }
  @media screen and (max-width: 767px) {
    .thanks-box {
      padding-left: 30px;
      padding-right: 30px; } }
  .thanks-box p {
    margin: 0;
    text-align: left;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.61;
    text-align: left;
    color: #333; }
    .thanks-box p + p {
      margin-top: 1em; }
      @media screen and (max-width: 767px) {
        .thanks-box p + p {
          margin-top: 2em; } }

.list-msg {
  position: relative;
  z-index: 20; }
  @media screen and (min-width: 768px) {
    .list-msg {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      grid-gap: 20px; } }
  .list-msg li {
    background-color: #FDFCEE;
    border: 3px solid;
    border-radius: 15px;
    padding: 20px 20px;
    font-size: 16px;
    line-height: 1.7;
    letter-spacing: normal;
    text-align: left;
    color: #333;
    font-feature-settings: "palt"; }
    @media screen and (max-width: 767px) {
      .list-msg li {
        font-size: 16px;
        line-height: 1.81; } }
    @media screen and (max-width: 767px) {
      .list-msg li + li {
        margin-top: 20px; } }
  .list-msg .msg--orange {
    border-color: #f18e00; }
  .list-msg .msg--green {
    border-color: #749838; }
  .list-msg .msg--yellow {
    border-color: #f4da02; }
  .list-msg .msg--blue {
    border-color: #006eb3; }
  .list-msg .msg--pink {
    border-color: #c94476; }

.u-bg-grey {
  background-color: #f2f2f2; }

.u-bg-white {
  background-color: #fff; }

.u-bg-blue {
  background-color: #e9f5f7; }

/*# sourceMappingURL=bootstrap.css.map */