@charset "UTF-8";
/*----------------------------------------------------------
  VARIABLES
----------------------------------------------------------*/
/*----------------------------------------------------------
  MIXIN
----------------------------------------------------------*/
/* CUSTOM
https://css-tricks.com/snippets/sass/fix-number-n-digits/
  * Làm tròn về 3 số thập phân
  * khi giá trị px có quá nhiều số thập phân, ví dụ 4.03422px),
  * Trình duyệt có thể render ra các line trắng/hở do anti-aliasing hoặc rounding / float precision. Để khắc phục, bạn nên làm tròn số thập phân về 2 chữ số (hoặc tối đa 3) khi tính toán kích thước trong SCSS
*/
.page-8th {
  margin-bottom: 0 !important;
  overflow-x: hidden;
  color: #1E1E1E;
  background-color: #FFFCE0;
}
@media (min-width: 751px) {
  .page-8th .only-sp {
    display: none;
  }
}
@media (max-width: 750px) {
  .page-8th .only-pc {
    display: none;
  }
}
.page-8th .font-en {
  font-family: "Lato", "Noto Sans JP", sans-serif;
}
.page-8th img {
  max-width: 100%;
  height: auto;
}
.page-8th img[loading=lazy] {
  display: inline-block;
}
@media (max-width: 750px) {
  .page-8th img {
    width: 100%;
  }
}
.page-8th .txt-red {
  color: #E60012;
}
.page-8th .txt-center {
  text-align: center;
}
.page-8th .txt-link {
  color: #E60012;
  text-decoration: underline;
}
@media (min-width: 751px) and (hover: hover) {
  .page-8th .txt-link:hover {
    text-decoration: none;
  }
}
.page-8th .txt-note {
  padding-left: min(16px, 1.111vw);
  text-indent: max(-16px, -1.111vw);
  font-size: min(14px, 0.972vw);
  line-height: 150%;
}
.page-8th .txt-note + .txt-note {
  margin-top: min(8px, 0.556vw);
}
.page-8th .txt-note span:first-of-type {
  margin-right: min(4px, 0.278vw);
}
@media (max-width: 750px) {
  .page-8th .txt-note {
    margin-top: 1.867vw;
    font-size: 3.2vw;
    padding-left: 4.267vw;
    text-indent: -4.267vw;
    line-height: 160%;
  }
  .page-8th .txt-note span:first-of-type {
    margin-right: 1.067vw;
  }
  .page-8th .txt-note + .txt-note {
    margin-top: 1.067vw;
  }
}

/*----------------------------------------------------------
  CAMPAIGN
----------------------------------------------------------*/
.campaign {
  padding: 10.667vw 5.333vw;
  background-color: #E60012;
}
@media (max-width: 750px) {
  .campaign {
    min-height: 97.867vw;
  }
}
@media (min-width: 751px) {
  .campaign {
    padding: min(40px, 2.778vw) min(20px, 1.389vw);
    min-height: min(373px, 25.903vw);
  }
}
.campaign__link {
  display: block;
}
.campaign__img {
  margin-inline: auto;
  width: 80vw;
}
@media (min-width: 751px) {
  .campaign__img {
    width: min(277px, 19.236vw);
  }
}

/*----------------------------------------------------------
  ANIMATION
----------------------------------------------------------*/
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.animate__fadeIn {
  -webkit-animation-name: fadeIn;
          animation-name: fadeIn;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
}
.animate__fadeInUp {
  -webkit-animation-name: fadeInUp;
          animation-name: fadeInUp;
}

@-webkit-keyframes flash {
  0%, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}

@keyframes flash {
  0%, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
.animate__flash {
  -webkit-animation-name: flash;
          animation-name: flash;
}

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
            transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@keyframes pulse {
  0% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
            transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}
.animate__pulse {
  -webkit-animation-name: pulse;
          animation-name: pulse;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
}

.js-aos {
  --aos-duration: 0.6s;
  --aos-delay: 1s;
  --aos-repeat: 1;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
}
.js-aos.animated {
  -webkit-animation-duration: var(--aos-duration, 0.6s);
          animation-duration: var(--aos-duration, 0.6s);
}
.js-aos[data-aos-delay="0.5s"] {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.js-aos[data-aos-delay="1s"] {
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}
.js-aos[data-aos-delay="1.5s"] {
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
}
.js-aos[data-aos-delay="2s"] {
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
}
.js-aos[data-aos-delay="2.5s"] {
  -webkit-animation-delay: 2.5s;
          animation-delay: 2.5s;
}
.js-aos[data-aos-delay="3s"] {
  -webkit-animation-delay: 3s;
          animation-delay: 3s;
}
.js-aos[data-aos-delay="3.5s"] {
  -webkit-animation-delay: 3.5s;
          animation-delay: 3.5s;
}
.js-aos[data-aos-delay="4s"] {
  -webkit-animation-delay: 4s;
          animation-delay: 4s;
}
.js-aos[data-aos-delay="4.5s"] {
  -webkit-animation-delay: 4.5s;
          animation-delay: 4.5s;
}
.js-aos[data-aos-delay="5s"] {
  -webkit-animation-delay: 5s;
          animation-delay: 5s;
}

[data-aos=fade-in] {
  opacity: 0;
  will-change: opacity;
  -webkit-transition: opacity var(--aos-duration, 0.6s) ease;
  transition: opacity var(--aos-duration, 0.6s) ease;
}
[data-aos=fade-in].animated {
  opacity: 1;
}

[data-aos=fade-in-up] {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: all var(--aos-duration) ease;
  transition: all var(--aos-duration) ease;
}
[data-aos=fade-in-up].animated {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

[data-duration="0.5s"] {
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
}

[data-aos=slide-in-left] {
  -webkit-transition: clip-path 1s ease;
  transition: clip-path 1s ease;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
}
.animated [data-aos=slide-in-left] {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.reveal-up {
  clip-path: inset(0 100% 0 0);
  -webkit-transition: clip-path var(--aos-duration) ease;
  transition: clip-path var(--aos-duration) ease;
  will-change: clip-path;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.reveal-up.animated {
  clip-path: inset(0 0 0 0);
}

.page-lottery {
  background-color: #fff;
}

.kv {
  text-align: center;
}
.kv__img {
  aspect-ratio: 1.0135135135;
}
@media (min-width: 751px) {
  .kv__img {
    aspect-ratio: 2.1818181818;
  }
}

.intro {
  padding-bottom: 16vw;
}
@media (min-width: 751px) {
  .intro {
    padding-bottom: min(60px, 4.167vw);
  }
}
.intro .plan {
  max-width: 85.067vw;
}
@media (max-width: 750px) {
  .intro .plan {
    margin: 16vw auto 10.667vw;
  }
}
@media (min-width: 751px) {
  .intro .plan {
    max-width: min(1000px, 69.444vw);
    margin-inline: auto;
  }
}
.intro_img {
  margin: 0 auto 10.667vw;
  width: 91.733vw;
}
@media (max-width: 750px) {
  .intro_img img {
    aspect-ratio: 0.5284178187;
  }
}
@media (min-width: 751px) {
  .intro_img {
    margin: min(60px, 4.167vw) auto;
    width: min(980px, 68.056vw);
  }
}
.intro_ttl {
  text-align: center;
  font-size: 4.267vw;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-weight: bold;
  background: url(../images/lottery/intro_ttl_sp.webp) no-repeat bottom center;
  background-size: auto 24.533vw;
}
@media (min-width: 751px) {
  .intro_ttl {
    min-height: min(121px, 8.403vw);
    font-size: min(20px, 1.389vw);
    background: url(../images/lottery/intro_ttl.webp) no-repeat center center;
    background-size: auto min(92px, 6.389vw);
  }
}
.intro_ttl .txt-underline {
  display: inline;
  font-size: 5.867vw;
  line-height: 1.6;
  padding-bottom: 1.067vw;
  background: url(../images/lottery/line_dot.webp) repeat-x left bottom;
  background-size: auto 1.067vw;
  letter-spacing: 0;
  text-decoration: none;
}
@media (max-width: 750px) {
  .intro_ttl .txt-underline .txt-01 {
    padding-left: 0.2em;
    margin-right: -0.12em;
  }
  .intro_ttl .txt-underline .txt-02 {
    padding-left: 0.2em;
    margin-right: -0.12em;
  }
}
@media (min-width: 751px) {
  .intro_ttl .txt-underline {
    font-size: min(28px, 1.944vw);
    line-height: min(39px, 2.708vw);
    padding-left: min(3px, 0.208vw);
    padding-bottom: min(7px, 0.486vw);
    background-size: auto min(4px, 0.278vw);
  }
  .intro_ttl .txt-underline .special-char {
    margin-right: max(-5px, -0.347vw);
  }
}
.intro_ttl .txt-md {
  display: block;
  margin-block: 3.2vw 1.6vw;
}
@media (min-width: 751px) {
  .intro_ttl .txt-md {
    margin-block: min(16px, 1.111vw) min(8px, 0.556vw);
  }
}
.intro_ttl .txt-small {
  display: block;
  font-weight: 400;
  font-size: min(16px, 1.111vw);
}
@media (max-width: 750px) {
  .intro_ttl .txt-small {
    font-size: 3.2vw;
  }
}

.lineup {
  padding-block: 15.467vw 37.333vw;
  background: #FFF0EB;
  position: relative;
  z-index: 1;
}
@media (min-width: 751px) {
  .lineup {
    padding: min(196px, 13.611vw) 0 min(318px, 22.083vw);
  }
}
.lineup:before {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  top: 37.333vw;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../images/lottery/bg_deco01_sp.webp) repeat-y top right;
  background-size: 100.267vw auto;
}
@media (min-width: 751px) {
  .lineup:before {
    top: min(84px, 5.833vw);
    background-image: url(../images/lottery/bg_deco01.webp);
    background-size: min(1920px, 133.333vw) auto;
  }
}
.lineup:after {
  content: "";
  position: absolute;
  z-index: 9;
  pointer-events: none;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../images/lottery/lineup_bg_sp.webp) no-repeat top center;
  background-size: 100.267vw auto;
}
@media (min-width: 751px) {
  .lineup:after {
    background-image: url(../images/lottery/lineup_bg.webp);
    background-size: min(1920px, 133.333vw) auto;
  }
}
.lineup .c-container {
  width: 91.467vw;
  margin-inline: auto;
}
@media (min-width: 751px) {
  .lineup .c-container {
    width: min(1280px, 88.889vw);
  }
}
.lineup__head {
  width: 72.533vw;
  margin: 0 auto 3.733vw;
}
@media (min-width: 751px) {
  .lineup__head {
    width: min(532px, 36.944vw);
    margin: 0 auto min(15px, 1.042vw);
  }
}
.lineup__subttl {
  font-weight: bold;
  text-align: center;
}
@media (max-width: 750px) {
  .lineup__subttl {
    margin-bottom: 12.8vw;
    font-size: 4.267vw;
    line-height: 1.625;
  }
}
@media (min-width: 751px) {
  .lineup__subttl {
    margin-bottom: min(78px, 5.417vw);
    font-size: min(20px, 1.389vw);
  }
}
.lineup__item {
  --bg-arrow: $color-red;
}
.lineup__item + .lineup__item {
  margin-top: 18.133vw;
}
@media (min-width: 751px) {
  .lineup__item + .lineup__item {
    margin-top: min(145px, 10.069vw);
  }
}
.lineup__item.--bg-yellow .c-nav__button {
  background-image: url(../images/lottery/thumb_bg02.webp);
}
.lineup__item.--bg-yellow .c-nav__button:after {
  background-image: url(../images/lottery/ico_arrow_yellow.svg);
}
.lineup__item.--bg-yellow .c-nav__img {
  width: min(262px, 18.194vw);
  margin-inline: auto;
  border-radius: min(4px, 0.278vw);
  overflow: hidden;
}
@media (max-width: 750px) {
  .lineup__item.--bg-yellow .c-nav__img {
    width: 38.4vw;
    border-radius: 1.067vw;
  }
}
@media (max-width: 750px) {
  .lineup__item.--bg-yellow .c-nav__list {
    row-gap: 10.133vw;
  }
}
@media (max-width: 750px) {
  .lineup__item.--bg-yellow .c-nav__desc {
    min-height: 20.8vw;
    padding-bottom: 3.2vw;
  }
}
.lineup__ttl {
  margin-bottom: 1.6vw;
  background: url(../images/lottery/line_red.webp) repeat-x left center;
  background-size: auto 1.067vw;
  text-align: center;
}
.lineup__ttl img {
  width: auto;
  height: 16vw;
  margin-inline: auto;
}
@media (min-width: 751px) {
  .lineup__ttl {
    margin-bottom: min(84px, 5.833vw);
    background: url(../images/lottery/line_red.webp) repeat-x left center;
    background-size: auto min(8px, 0.556vw);
  }
  .lineup__ttl img {
    height: min(102px, 7.083vw);
  }
}
.--bg-yellow .lineup__ttl {
  margin-bottom: 6.667vw;
  background-image: url(../images/lottery/line_yellow.webp);
}
@media (min-width: 751px) {
  .--bg-yellow .lineup__ttl {
    margin-bottom: min(108px, 7.5vw);
  }
}
.lineup .c-nav {
  margin-block: 0;
}
.lineup .c-nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}
@media (max-width: 750px) {
  .lineup .c-nav__list {
    row-gap: 4.8vw;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media (min-width: 751px) {
  .lineup .c-nav__list {
    gap: min(102px, 7.083vw) min(24px, 1.667vw);
  }
}
.lineup .c-nav__item {
  position: relative;
  z-index: 1;
  width: 44.8vw;
}
@media (max-width: 750px) {
  .lineup .c-nav__item {
    padding-top: 9.067vw;
  }
}
@media (min-width: 751px) {
  .lineup .c-nav__item {
    width: min(302px, 20.972vw);
  }
}
.lineup .c-nav__button {
  position: relative;
  display: block;
  margin: 0;
  width: 100%;
  height: 49.067vw;
  padding-top: 3.2vw;
  border-radius: 3.2vw;
  -webkit-box-shadow: 1.067vw 1.067vw 2.133vw 1.6vw rgba(131, 0, 0, 0.05);
          box-shadow: 1.067vw 1.067vw 2.133vw 1.6vw rgba(131, 0, 0, 0.05);
  background: #fff url(../images/lottery/thumb_bg01.webp) no-repeat bottom center/100% auto;
}
@media (min-width: 751px) {
  .lineup .c-nav__button {
    height: min(302px, 20.972vw);
    padding-top: min(20px, 1.389vw);
    border-radius: min(20px, 1.389vw);
    -webkit-box-shadow: min(8px, 0.556vw) min(8px, 0.556vw) min(16px, 1.111vw) min(12px, 0.833vw) rgba(131, 0, 0, 0.05);
            box-shadow: min(8px, 0.556vw) min(8px, 0.556vw) min(16px, 1.111vw) min(12px, 0.833vw) rgba(131, 0, 0, 0.05);
  }
}
.lineup .c-nav__button:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  left: 50%;
  bottom: -3.2vw;
  -webkit-transform: translate(-50%, 50%);
          transform: translate(-50%, 50%);
  width: 10.667vw;
  height: 3.2vw;
  background: url(../images/lottery/ico_arrow_red.svg) no-repeat bottom center/auto 100%;
  -webkit-transition: bottom 0.1s linear;
  transition: bottom 0.1s linear;
}
@media (min-width: 751px) {
  .lineup .c-nav__button:after {
    bottom: max(-18px, -1.25vw);
    width: min(60px, 4.167vw);
    height: min(20px, 1.389vw);
  }
}
@media (min-width: 751px) and (hover: hover) {
  .lineup .c-nav__button:hover:after {
    bottom: max(-24px, -1.667vw);
  }
}
.lineup .c-nav__tag {
  position: absolute;
  z-index: -1;
  right: 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  color: #B78426;
  background-color: #FFEAB6;
  overflow: hidden;
  font-weight: 600;
  text-align: center;
  top: 14.933vw;
  border-radius: 3.2vw 3.2vw 0 0;
  width: 32vw;
  padding: 1.067vw 0 6.667vw;
  font-size: 2.933vw;
  line-height: 1.2;
  letter-spacing: 0;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media (min-width: 751px) {
  .lineup .c-nav__tag {
    top: min(22px, 1.528vw);
    padding: min(4px, 0.278vw) 0 min(25px, 1.736vw);
    border-radius: min(20px, 1.389vw) min(20px, 1.389vw) 0 0;
    width: min(164px, 11.389vw);
    font-size: min(14px, 0.972vw);
    line-height: 1.2;
  }
}
.lineup .c-nav__amount {
  position: absolute;
  z-index: 9;
  width: 11.733vw;
  top: -5.333vw;
  left: 2.4vw;
}
@media (min-width: 751px) {
  .lineup .c-nav__amount {
    width: min(80px, 5.556vw);
    top: max(-40px, -2.778vw);
    left: min(24px, 1.667vw);
  }
}
.lineup .c-nav__img {
  text-align: center;
}
.lineup .c-nav__desc {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 0 0 4.267vw;
  text-align: center;
  font-weight: 600;
}
.lineup .c-nav__desc p {
  font-size: 3.467vw;
  line-height: 1.5;
}
.lineup .c-nav__desc small {
  font-size: 2.667vw;
  line-height: 1.5;
}
@media (max-width: 750px) {
  .lineup .c-nav__desc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media (min-width: 751px) {
  .lineup .c-nav__desc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    min-height: min(60px, 4.167vw);
    padding: min(24px, 1.667vw) min(12px, 0.833vw) min(24px, 1.667vw);
  }
  .lineup .c-nav__desc p {
    font-size: min(20px, 1.389vw);
  }
  .lineup .c-nav__desc small {
    margin-top: min(6px, 0.417vw);
    display: block;
    font-size: min(16px, 1.111vw);
    line-height: min(24px, 1.667vw);
  }
}
.lineup .c-nav__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 750px) {
  .lineup .c-nav__text.txt-sm-sp {
    font-size: 3.2vw;
  }
}
@media (max-width: 750px) {
  .lineup .--bg-red .--item-13 .c-nav__text {
    font-size: 3.2vw;
    letter-spacing: -0.02em;
  }
  .lineup .--bg-red .--item-15 .c-nav__text {
    position: relative;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@media (min-width: 751px) {
  .lineup .--bg-yellow .--item-04 .c-nav__text,
  .lineup .--bg-yellow .--item-05 .c-nav__text,
  .lineup .--bg-yellow .--item-06 .c-nav__text,
  .lineup .--bg-red .--item-15 .c-nav__text {
    min-height: 4.5em;
  }
}

.prize_sec {
  position: relative;
  z-index: 1;
  margin-top: -16vw;
  padding-top: 16vw;
  padding-bottom: 32vw;
  border-radius: 16vw 16vw 0 0;
  background: #E60012 url(../images/lottery/special-prize_bg_sp.webp) no-repeat top center;
  background-size: 100% auto;
}
.prize_sec > .anchor-link {
  position: relative;
  top: max(-118px, -8.194vw);
}
@media (max-width: 750px) {
  .prize_sec > .anchor-link {
    top: -16vw;
  }
}
.prize_sec .c-container {
  position: relative;
}
.prize_sec .c-container:before {
  content: "";
  position: absolute;
  top: 56vw;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: url(../images/lottery/special-prize_bg02_sp.webp) repeat-y top center;
  background-size: 100% auto;
}
@media (min-width: 751px) {
  .prize_sec {
    margin-top: max(-160px, -11.111vw);
    padding-bottom: min(160px, 11.111vw);
    border-radius: min(160px, 11.111vw) min(160px, 11.111vw) 0 0;
    background-image: url(../images/lottery/special-prize_bg.webp);
  }
  .prize_sec .c-container {
    padding-bottom: min(138px, 9.583vw);
  }
  .prize_sec .c-container:before {
    top: min(920px, 63.889vw);
    background: url(../images/lottery/special-prize_bg02.webp) repeat-y top center;
    background-size: min(1920px, 133.333vw) auto;
  }
}
@media (max-width: 750px) {
  .prize_sec.special-prize {
    min-height: 1569.6vw;
  }
}
@media (min-width: 751px) {
  .prize_sec.special-prize {
    padding-top: min(119px, 8.264vw);
  }
}
.prize_sec.event-prize {
  padding-bottom: 16vw;
  background: #FFDC01 url(../images/lottery/event-prize_bg_sp.webp) no-repeat top center;
  background-size: 100% auto;
  overflow: hidden;
}
@media (min-width: 751px) {
  .prize_sec.event-prize {
    padding-block: min(119px, 8.264vw) 0;
    background-image: url(../images/lottery/event-prize_bg.webp);
  }
  .prize_sec.event-prize .c-container {
    padding-bottom: min(119px, 8.264vw);
  }
}
.prize_head {
  margin-bottom: 6.4vw;
  text-align: center;
}
.prize_head img {
  width: auto;
  height: 9.867vw;
}
@media (min-width: 751px) {
  .prize_head {
    margin-bottom: min(60px, 4.167vw);
  }
  .prize_head img {
    height: min(93px, 6.458vw);
  }
}
.prize_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  width: 95.733vw;
  margin-inline: auto;
  gap: 6.4vw;
}
@media (min-width: 751px) {
  .prize_list {
    width: min(1008px, 70vw);
    gap: min(60px, 4.167vw);
  }
}
.prize_item {
  position: relative;
  font-weight: bold;
  background-color: #fff;
  padding: 2.133vw;
  border-radius: 4.267vw;
}
@media (min-width: 751px) {
  .prize_item {
    padding: min(24px, 1.667vw);
    font-size: min(20px, 1.389vw);
    line-height: 160%;
    border-radius: min(32px, 2.222vw);
  }
}
.prize_item .anchor-link {
  position: relative;
  top: max(-80px, -5.556vw);
}
@media (max-width: 750px) {
  .prize_item .anchor-link {
    top: -8vw;
  }
}
.prize_inner {
  position: relative;
}
.prize_inner:before, .prize_inner:after {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 9;
  left: 0;
  width: 100%;
  background: url(../images/lottery/frame_red_sp.webp) no-repeat top center;
  background-size: 100% auto;
}
@media (min-width: 751px) {
  .prize_inner:before, .prize_inner:after {
    background-image: url(../images/lottery/frame_red.webp);
  }
}
.--bg-yellow .prize_inner:before, .--bg-yellow .prize_inner:after {
  background-image: url(../images/lottery/frame_yelllow_sp.webp);
}
@media (min-width: 751px) {
  .--bg-yellow .prize_inner:before, .--bg-yellow .prize_inner:after {
    background-image: url(../images/lottery/frame_yellow.webp);
  }
}
.prize_inner:before {
  top: 0;
  height: 100%;
}
.prize_inner:after {
  bottom: 0;
  height: min(8px, 0.556vw);
  background-position: bottom center;
}
@media (max-width: 750px) {
  .prize_inner:after {
    height: 1.067vw;
  }
}
.--bg-yellow .prize_inner:after {
  background-color: #FFEFB2;
}
.prize_tag {
  position: absolute;
  z-index: 10;
  color: #fff;
  background-color: #B78426;
  border-radius: 100%;
  width: 16vw;
  top: 4.267vw;
  left: 4.267vw;
}
@media (min-width: 751px) {
  .prize_tag {
    width: min(120px, 8.333vw);
    top: max(-40px, -2.778vw);
    left: max(-40px, -2.778vw);
  }
}
.prize_name {
  position: absolute;
  top: 19.467vw;
  left: 0;
  width: 100%;
  font-weight: 800;
  font-size: 4.8vw;
  line-height: 1.4;
  text-align: center;
  letter-spacing: 0;
  color: #E60012;
  background-color: #fff;
}
.prize_name small {
  font-size: 3.733vw;
}
@media (min-width: 751px) {
  .prize_name small {
    font-size: min(28px, 1.944vw);
  }
}
.--bg-yellow .prize_name {
  color: #B78426;
}
@media (min-width: 751px) {
  .prize_name {
    top: min(131px, 9.097vw);
    font-size: min(36px, 2.5vw);
    line-height: 1.3333333333;
  }
  .prize_name small {
    font-size: min(28px, 1.944vw);
  }
  .--bg-red .prize_name {
    top: min(144px, 10vw);
  }
}
.prize_row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  letter-spacing: 0;
}
@media (min-width: 751px) {
  .prize_row {
    margin-bottom: min(7px, 0.486vw);
  }
  .prize_row li {
    width: 25%;
  }
}
.prize_txt {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
  font-weight: bold;
  background-color: #fff;
  bottom: 7.467vw;
  font-size: 3.733vw;
  line-height: 1.6;
  letter-spacing: 0.06em;
}
@media (min-width: 751px) {
  .prize_txt {
    bottom: min(40px, 2.778vw);
    font-size: min(20px, 1.389vw);
  }
  .--bg-red .prize_txt {
    letter-spacing: 0;
  }
  .--bg-yellow .prize_txt {
    bottom: min(48px, 3.333vw);
  }
}
.prize_txt .color-yellow {
  color: #B78426;
}
.prize_txt .txt-01 {
  font-weight: 400;
}
.prize_txt .text-link {
  font-weight: 400;
  color: #E60012;
  text-decoration: underline;
  text-underline-offset: 0.533vw;
  text-decoration-thickness: 1px;
}
@media (min-width: 751px) {
  .prize_txt .text-link {
    text-underline-offset: min(3px, 0.208vw);
  }
}
@media (min-width: 751px) and (hover: hover) {
  .prize_txt .text-link:hover {
    opacity: 0.8;
  }
}
.prize_accordion {
  margin-top: 3.2vw;
}
@media (min-width: 751px) {
  .prize_accordion {
    margin-top: min(20px, 1.389vw);
  }
}
.prize_dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  gap: 1.067vw 2.133vw;
  font-size: 3.733vw;
  line-height: 1.6;
  font-weight: 400;
}
.prize_dl dt {
  width: 22.4vw;
  height: 7.467vw;
  line-height: 7.467vw;
  border-radius: 6.933vw;
  font-size: 3.733vw;
  text-align: center;
  font-weight: bold;
  color: #B78426;
  background-color: #FFEFB2;
}
.prize_dl dd {
  padding-top: 0.8vw;
  width: calc(100% - 25.6vw);
  letter-spacing: 0.06em;
}
@media (min-width: 751px) {
  .prize_dl {
    gap: min(8px, 0.556vw) min(12px, 0.833vw);
    font-size: min(16px, 1.111vw);
  }
  .prize_dl dt {
    width: min(96px, 6.667vw);
    height: min(32px, 2.222vw);
    line-height: min(32px, 2.222vw);
    border-radius: min(29px, 2.014vw);
    font-size: min(16px, 1.111vw);
  }
  .prize_dl dd {
    padding-top: min(5px, 0.347vw);
    width: calc(100% - min(108px, 7.5vw));
  }
}
.prize_ul li {
  padding-left: min(20px, 1.389vw);
  position: relative;
  font-size: min(16px, 1.111vw);
  line-height: 1.6;
  font-weight: 400;
  letter-spacing: 0;
}
@media (max-width: 750px) {
  .prize_ul li {
    padding-left: 4.8vw;
    font-size: 3.733vw;
  }
}
.prize_ul li:before {
  content: "●";
  position: absolute;
  top: 0;
  left: 0;
}
.prize_ul li + li {
  margin-top: min(9px, 0.625vw);
}
@media (max-width: 750px) {
  .prize_ul li + li {
    margin-top: 1.067vw;
  }
}
@media (min-width: 751px) {
  .prize .--item-01 .prize_txt {
    height: min(64px, 4.444vw);
  }
}

.accordion.is-opened .accordion-btn:after {
  background-image: url(../images/lottery/ico_minus.svg);
}
.accordion.is-opened .accordion-body {
  display: block;
  pointer-events: auto;
}
.accordion-btn {
  position: relative;
  margin-inline: auto;
  text-decoration: none;
  color: #fff;
  text-align: center;
  font-weight: bold;
  background: #B78426;
  width: 100%;
  height: 9.6vw;
  border-radius: 4.8vw;
  font-size: 4vw;
  line-height: 9.6vw;
  letter-spacing: 0.06em;
}
.accordion-btn .is-hidden {
  display: none;
}
@media (min-width: 751px) {
  .accordion-btn {
    font-size: min(20px, 1.389vw);
    width: min(320px, 22.222vw);
    height: min(48px, 3.333vw);
    line-height: min(48px, 3.333vw);
    border-radius: min(24px, 1.667vw);
  }
}
.accordion-btn:after {
  content: "";
  top: 50%;
  right: 1.2vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  position: absolute;
  display: block;
  width: 7.2vw;
  height: 7.2vw;
  border-radius: 100%;
  overflow: hidden;
  background: #B78426 url(../images/lottery/ico_plus.svg) center center no-repeat;
  background-size: contain;
}
@media (min-width: 751px) {
  .accordion-btn:after {
    right: min(6px, 0.417vw);
    width: min(36px, 2.5vw);
    height: min(36px, 2.5vw);
  }
}
@media (min-width: 751px) and (hover: hover) {
  .accordion-btn {
    -webkit-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
  }
  .accordion-btn:hover {
    opacity: 0.7;
  }
}
.accordion-header {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.accordion-body {
  display: none;
}
.accordion-inner {
  padding-block: 0 2.667vw;
}
@media (min-width: 751px) {
  .accordion-inner {
    padding-block: 0 min(20px, 1.389vw);
  }
}

.guidelines {
  padding-block: min(107px, 7.431vw) min(120px, 8.333vw);
  background: #FAFAFA url(../images/lottery/line_red.webp) top left repeat-x;
  background-size: auto min(8px, 0.556vw);
}
@media (max-width: 750px) {
  .guidelines {
    padding-block: 13.867vw 16vw;
    background-size: auto 1.067vw;
  }
}
.guidelines_inner {
  width: 91.467vw;
  margin: 0 auto;
}
@media (min-width: 751px) {
  .guidelines_inner {
    width: min(1280px, 88.889vw);
  }
}
.guidelines_head {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: min(37px, 2.569vw);
  font-size: min(56px, 3.889vw);
  font-weight: bold;
  text-align: center;
  letter-spacing: 0;
  color: #E60012;
}
@media (max-width: 750px) {
  .guidelines_head {
    margin-bottom: 4.8vw;
    font-size: 8.533vw;
  }
}
.guidelines .c-nav__list {
  margin-bottom: 6.933vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  border-radius: 10.667vw;
  background-color: #E60012;
}
@media (min-width: 751px) {
  .guidelines .c-nav__list {
    margin-bottom: min(40px, 2.778vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    border-radius: min(60px, 4.167vw);
  }
}
.guidelines .c-nav__item {
  position: relative;
}
.guidelines .c-nav__item:not(:first-child):before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 1px;
  width: 80.8vw;
  background-color: #fff;
}
@media (min-width: 751px) {
  .guidelines .c-nav__item {
    position: relative;
    width: 33.3333%;
  }
  .guidelines .c-nav__item:nth-child(2) {
    width: min(446px, 30.972vw);
  }
  .guidelines .c-nav__item:not(:first-child):before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    height: min(80px, 5.556vw);
    width: 1px;
    background-color: #fff;
  }
}
.guidelines .c-nav__button {
  position: relative;
  display: block;
  margin: 0;
  width: 100%;
  color: #fff;
  text-align: center;
  font-weight: bold;
  padding: 4.8vw 5.333vw 9.867vw;
  font-size: 4.8vw;
}
@media (min-width: 751px) {
  .guidelines .c-nav__button {
    padding: min(20px, 1.389vw) 0;
    font-size: min(24px, 1.667vw);
    height: min(120px, 8.333vw);
  }
}
.guidelines .c-nav__button:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  left: 50%;
  bottom: 6.133vw;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 10.667vw;
  height: 2.667vw;
  background: url(../images/lottery/ico_arrow_white.webp) no-repeat center/auto 100%;
  border-radius: 100%;
  -webkit-transition: bottom 0.1s linear;
  transition: bottom 0.1s linear;
}
@media (min-width: 751px) {
  .guidelines .c-nav__button:after {
    bottom: min(30px, 2.083vw);
    width: min(80px, 5.556vw);
    height: min(16px, 1.111vw);
  }
}
@media (min-width: 751px) and (hover: hover) {
  .guidelines .c-nav__button:hover:after {
    bottom: min(26px, 1.806vw);
  }
}
.guidelines_item {
  letter-spacing: 0.02em;
}
.guidelines_item + .guidelines_item {
  margin-top: min(40px, 2.778vw);
}
.guidelines_item {
  padding: min(60px, 4.167vw) min(60px, 4.167vw) min(60px, 4.167vw);
  background-color: #fff;
  border: min(8px, 0.556vw) solid #FFF2F3;
  border-radius: min(40px, 2.778vw);
}
@media (max-width: 750px) {
  .guidelines_item {
    padding: 10.667vw 3.2vw 10.667vw;
    border-radius: 10.667vw;
    border-width: 1.067vw;
    font-size: 3.733vw;
    line-height: 1.6;
  }
  .guidelines_item + .guidelines_item {
    margin-top: 6.4vw;
  }
}
.guidelines_ttl {
  padding-bottom: min(48px, 3.333vw);
  margin: 0 0 min(42px, 2.917vw);
  font-size: min(32px, 2.222vw);
  line-height: 1.4;
  color: #E60012;
  text-align: center;
  font-weight: bold;
  background: url(../images/lottery/line_red.webp) repeat-x left bottom/auto min(8px, 0.556vw);
}
@media (max-width: 750px) {
  .guidelines_ttl {
    margin: 0;
    padding-bottom: 9.6vw;
    font-size: 6.4vw;
    background-size: auto 1.067vw;
  }
}
.guidelines_subttl {
  font-size: min(20px, 1.389vw);
  line-height: 1.4;
  font-weight: bold;
}
@media (max-width: 750px) {
  .guidelines_subttl {
    font-size: 4.8vw;
    margin-block: 8.533vw 3.2vw;
  }
}
@media (max-width: 750px) {
  .guidelines_row .guidelines_col .guidelines_subttl {
    font-size: 3.733vw;
    margin-block: 3.2vw 1.067vw;
  }
}
@media (min-width: 751px) {
  .guidelines_row {
    width: calc(100% - min(184px, 12.778vw)) !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .guidelines_row .guidelines_col {
    width: min(470px, 32.639vw);
  }
  .guidelines_row .guidelines_col .guidelines_subttl {
    margin-bottom: min(20px, 1.389vw);
    text-align: center;
  }
  .guidelines_row .guidelines_ul {
    letter-spacing: 0;
  }
}
@media (min-width: 751px) {
  .guidelines_dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: min(38px, 2.639vw) 0;
  }
}
@media (min-width: 751px) {
  .guidelines_dl dt {
    margin: 0;
    width: min(184px, 12.778vw);
  }
}
@media (min-width: 751px) {
  .guidelines_dl dd {
    width: min(890px, 61.806vw);
  }
}
.guidelines_ul {
  font-size: min(16px, 1.111vw);
  line-height: 1.6;
  letter-spacing: 0.02em;
}
.guidelines_ul li {
  text-indent: -1em;
  padding-left: 1em;
}
.guidelines_ul li + li {
  margin-top: min(4px, 0.278vw);
}
@media (max-width: 750px) {
  .guidelines_ul {
    font-size: 3.733vw;
  }
  .guidelines_ul li + li {
    margin-top: 0.8vw;
  }
}
@media (min-width: 751px) {
  .guidelines_ul .txt-01 {
    letter-spacing: -0.019em;
  }
  .guidelines_ul .txt-02 {
    letter-spacing: -0.055em;
  }
  .guidelines_ul .txt-03 {
    letter-spacing: -0.018em;
  }
  .guidelines_ul .txt-04 {
    letter-spacing: 0.013em;
  }
  .guidelines_ul .txt-05 {
    letter-spacing: -0.015em;
  }
}
.guidelines .txt_note {
  text-indent: -1em;
  padding-left: 1em;
}
@media (min-width: 751px) {
  .guidelines .guidelines-03 dt.guidelines_subttl:first-of-type {
    margin-top: min(48px, 3.333vw);
  }
}

.plan {
  margin: 10.667vw auto 10.4vw;
  padding: 5.333vw 0 6.4vw;
  border-radius: 2.667vw;
  background-color: #F7F7F7;
}
@media (max-width: 750px) {
  .plan {
    width: 85.067vw;
  }
}
@media (min-width: 751px) {
  .plan {
    padding: min(18px, 1.25vw) 0 min(24px, 1.667vw);
    margin: min(60px, 4.167vw) 0;
    min-height: min(115px, 7.986vw);
    border-radius: min(10px, 0.694vw);
  }
}
.plan_title {
  margin-bottom: 3.2vw;
  font-size: 4.8vw;
  line-height: 1.6666666667;
  font-weight: bold;
  text-align: center;
}
@media (min-width: 751px) {
  .plan_title {
    margin-bottom: min(6px, 0.417vw);
    font-size: min(20px, 1.389vw);
  }
}
.plan_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  gap: 2.133vw;
}
@media (min-width: 751px) {
  .plan_list {
    gap: min(12px, 0.833vw);
  }
}
.plan_item {
  padding-inline: 4.267vw;
  height: 7.467vw;
  line-height: 7.467vw;
  font-size: 3.733vw;
  font-weight: bold;
  text-align: center;
  color: #fff;
  border-radius: 5.333vw;
  background-color: #E60012;
}
@media (min-width: 751px) {
  .plan_item {
    height: min(32px, 2.222vw);
    padding-inline: min(20px, 1.389vw);
    line-height: min(32px, 2.222vw);
    font-size: min(16px, 1.111vw);
    border-radius: min(16px, 1.111vw);
  }
}

.award {
  padding-block: 14.4vw 16vw;
}
.award .c-container {
  width: 89.333vw;
  margin-inline: auto;
}
.award .plan {
  margin-block: 3.467vw 11.2vw;
}
@media (min-width: 751px) {
  .award {
    padding-block: min(98px, 6.806vw) min(110px, 7.639vw);
  }
  .award .c-container {
    width: min(1000px, 69.444vw);
  }
  .award .plan {
    margin-block: min(43px, 2.986vw) min(63px, 4.375vw);
  }
}
.award_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: min(56px, 3.889vw);
  font-weight: bold;
  text-align: center;
  letter-spacing: 5%;
  color: #E60012;
}
@media (max-width: 750px) {
  .award_head {
    height: 11.733vw;
    font-size: 8.533vw;
  }
}
.award_ttl {
  margin: min(50px, 3.472vw) auto min(38px, 2.639vw);
  width: min(759px, 52.708vw);
}
@media (max-width: 750px) {
  .award_ttl {
    width: 100vw;
    margin: 10.667vw -5.333vw 9.333vw;
  }
}
.award_subttl {
  font-weight: bold;
  text-align: center;
}
@media (max-width: 750px) {
  .award_subttl {
    font-size: 3.733vw;
    line-height: 1.57;
  }
}
@media (min-width: 751px) {
  .award_subttl {
    font-size: min(16px, 1.111vw);
  }
}
.award_table {
  overflow: hidden;
  margin: 0 auto 4.8vw;
  border-radius: 2.667vw;
  border: solid 1px #E60012;
}
@media (min-width: 751px) {
  .award_table {
    width: min(500px, 34.722vw);
    margin: min(41px, 2.847vw) auto min(36px, 2.5vw);
    border-radius: min(10px, 0.694vw);
    border-width: min(2px, 0.139vw);
  }
}
.award_table table {
  width: 100%;
  font-size: 3.733vw;
  font-weight: 500;
  border-spacing: 0;
}
@media (min-width: 751px) {
  .award_table table {
    font-size: min(16px, 1.111vw);
    font-weight: 500;
  }
}
.award_table th {
  padding: 2.667vw 5.333vw;
  font-weight: bold;
  border-left: solid 1px #E60012;
  text-align: left;
  background-color: #FBD9DB;
}
@media (min-width: 751px) {
  .award_table th {
    padding: min(8px, 0.556vw) min(40px, 2.778vw);
    font-size: min(16px, 1.111vw);
    border-left-width: min(2px, 0.139vw);
  }
}
.award_table td {
  padding: 2.667vw 5.333vw;
  border-top: solid 1px #E60012;
  border-left: solid 1px #E60012;
}
@media (min-width: 751px) {
  .award_table td {
    padding: min(6px, 0.417vw) min(40px, 2.778vw) min(8px, 0.556vw);
    border-top-width: min(2px, 0.139vw);
    border-left-width: min(2px, 0.139vw);
  }
}
.award_table th:first-of-type, .award_table td:first-of-type {
  border-left: 0;
  width: 44.533vw;
}
@media (min-width: 751px) {
  .award_table th:first-of-type, .award_table td:first-of-type {
    border-left: 0;
    width: min(247px, 17.153vw);
  }
}
.award_table tr {
  background-color: #fff;
}
.award_table tr:nth-of-type(odd) {
  background-color: #F7F7F7;
}
.award_table .number {
  display: inline-block;
  vertical-align: baseline;
  font-size: 5.333vw;
  line-height: 1;
  font-weight: bold;
  color: #E60012;
}
@media (min-width: 751px) {
  .award_table .number {
    display: inline-block;
    vertical-align: baseline;
    font-size: min(24px, 1.667vw);
    line-height: 1;
    font-weight: bold;
  }
}
.award_ul {
  font-size: min(14px, 0.972vw);
  line-height: 2;
  letter-spacing: 0.02em;
}
.award_ul li {
  text-indent: -1em;
  padding-left: 1em;
}
.award_ul li + li {
  margin-top: min(4px, 0.278vw);
}
@media (min-width: 751px) {
  .award_ul {
    max-width: min(800px, 55.556vw);
    margin-inline: auto;
  }
}
@media (max-width: 750px) {
  .award_ul {
    font-size: 3.2vw;
    line-height: 1.6666666667;
  }
  .award_ul li + li {
    margin-top: 1.6vw;
  }
}

.floating-btn-wrapper {
  position: fixed;
  z-index: 10;
  top: calc(60px + 4.267vw);
  left: 4.267vw;
  will-change: opacity;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
@media (min-width: 751px) {
  .floating-btn-wrapper {
    top: calc(90px + min(70px, 4.861vw));
    left: min(80px, 5.556vw);
  }
}
.floating-btn-wrapper.is-hidden {
  opacity: 0;
  pointer-events: none;
}
.floating-btn-wrapper.is-shown {
  opacity: 1;
  pointer-events: auto;
}
.floating-btn {
  display: block;
  width: 26.667vw;
}
@media (min-width: 751px) {
  .floating-btn {
    width: min(160px, 11.111vw);
  }
}
@media (min-width: 751px) and (hover: hover) {
  .floating-btn:hover {
    opacity: 0.7;
  }
}

.modal {
  display: none;
  pointer-events: none;
  position: fixed;
  z-index: 1009;
  inset: 0;
  opacity: 0;
  -webkit-transition: opacity 2s linear;
  transition: opacity 2s linear;
}
.modal.is-opened {
  pointer-events: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  opacity: 1;
}
.modal__overlay {
  position: absolute;
  z-index: -1;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(min(6px, 0.417vw));
}
.modal__content {
  position: relative;
  width: 91.467vw;
  min-height: 126.4vw;
  border-radius: 4.267vw;
  background-color: #fff;
}
@media (min-width: 751px) {
  .modal__content {
    width: min(800px, 55.556vw);
    min-height: min(526px, 36.528vw);
    border-radius: min(24px, 1.667vw);
  }
}
.modal__body p {
  font-size: 3.733vw;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (min-width: 751px) {
  .modal__body p {
    font-size: min(16px, 1.111vw);
    font-weight: 500;
    line-height: 1.6;
  }
}
.modal__close {
  position: absolute;
  top: -2.133vw;
  right: -2.133vw;
  cursor: pointer;
}
@media (min-width: 751px) {
  .modal__close {
    top: max(-16px, -1.111vw);
    right: max(-16px, -1.111vw);
  }
}
.modal__close .ico-close {
  display: block;
  width: 10.667vw;
  height: 10.667vw;
  background: #fff url(../images/lottery/ico_close.webp) no-repeat;
  background-size: contain;
  border-radius: 100%;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
@media (min-width: 751px) {
  .modal__close .ico-close {
    width: min(60px, 4.167vw);
    height: min(60px, 4.167vw);
  }
}
@media (min-width: 751px) and (hover: hover) {
  .modal__close:hover .ico-close {
    opacity: 0.9;
  }
}

.--modal-apply {
  text-align: center;
}
.--modal-apply .txt-red {
  color: #E60012;
}
.--modal-apply .apply__head {
  min-height: 21.333vw;
  margin-bottom: 6.4vw;
  border-radius: 4.267vw 4.267vw 0 0;
  padding: 5.6vw 2.667vw 6.933vw;
  text-align: center;
  color: #fff;
  font-size: 6.4vw;
  line-height: 1.6;
  font-weight: bold;
  background: #E60012 url(../images/lottery/line_white.webp) repeat-x left bottom;
  background-size: auto 1.067vw;
}
.--modal-apply .apply__head span {
  display: inline-block;
  padding-inline: 5.333vw;
  min-width: 81.067vw;
  background: url(../images/lottery/modal_ttl_bg_sp.webp) no-repeat center;
  background-size: auto 7.467vw;
}
@media (min-width: 751px) {
  .--modal-apply .apply__head {
    min-height: min(100px, 6.944vw);
    margin-bottom: min(32px, 2.222vw);
    padding: min(21px, 1.458vw) min(20px, 1.389vw) min(30px, 2.083vw);
    font-size: min(36px, 2.5vw);
    border-radius: min(24px, 1.667vw) min(24px, 1.667vw) 0 0;
    background-size: auto min(8px, 0.556vw);
  }
  .--modal-apply .apply__head span {
    padding-inline: min(20px, 1.389vw);
    min-width: min(454px, 31.528vw);
    background-image: url(../images/lottery/modal_ttl_bg.webp);
    background-size: auto min(39px, 2.708vw);
  }
}
.--modal-apply .apply__inner {
  padding: 0 5.333vw 10.667vw;
}
@media (min-width: 751px) {
  .--modal-apply .apply__inner {
    padding: 0 min(20px, 1.389vw) min(40px, 2.778vw);
  }
}
.--modal-apply .apply__plan .plan_title {
  font-size: 4.267vw;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-weight: bold;
  text-align: center;
}
@media (min-width: 751px) {
  .--modal-apply .apply__plan .plan_title {
    margin-bottom: min(20px, 1.389vw);
    font-size: min(24px, 1.667vw);
  }
}
.--modal-apply .apply__plan .plan_list {
  margin: 0 auto 6.4vw;
  width: 80vw;
  padding: 6.4vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  gap: 2.133vw;
  background-color: #F7F7F7;
  border-radius: 2.667vw;
}
@media (min-width: 751px) {
  .--modal-apply .apply__plan .plan_list {
    gap: min(12px, 0.833vw);
    margin: 0 auto min(40px, 2.778vw);
    padding: min(24px, 1.667vw);
    border-radius: min(10px, 0.694vw);
    width: min(664px, 46.111vw);
  }
}
.--modal-apply .apply__plan .plan_item {
  padding-inline: 4.267vw;
  height: 7.467vw;
  line-height: 7.467vw;
  font-size: 3.733vw;
  font-weight: bold;
  text-align: center;
  color: #fff;
  border-radius: 5.333vw;
  background-color: #E60012;
}
@media (min-width: 751px) {
  .--modal-apply .apply__plan .plan_item {
    height: min(32px, 2.222vw);
    padding-inline: min(20px, 1.389vw);
    line-height: min(32px, 2.222vw);
    font-size: min(16px, 1.111vw);
    border-radius: min(16px, 1.111vw);
  }
}
.--modal-apply .apply__btn {
  margin: 2.667vw auto 0;
  display: block;
  width: 79.467vw;
  font-size: 3.733vw;
  font-weight: 600;
  color: #fff;
  background: -webkit-gradient(linear, left top, right top, from(#FD3A20), to(#E60012));
  background: linear-gradient(90deg, #FD3A20 0%, #E60012 100%);
  border-radius: 10.667vw;
}
.--modal-apply .apply__btn span {
  height: 12.8vw;
  padding-right: 6.667vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: url(../images/lottery/ico_btn.svg) no-repeat center right 6.133vw;
  background-size: auto 3.2vw;
}
@media (min-width: 751px) {
  .--modal-apply .apply__btn {
    margin: min(20px, 1.389vw) auto 0;
    border-radius: min(40px, 2.778vw);
    width: min(298px, 20.694vw);
    font-size: min(16px, 1.111vw);
  }
  .--modal-apply .apply__btn span {
    padding-right: min(26px, 1.806vw);
    height: min(58px, 4.028vw);
    background-position: center right min(23px, 1.597vw);
    background-size: auto min(13px, 0.903vw);
  }
}
@media (min-width: 751px) and (hover: hover) {
  .--modal-apply .apply__btn {
    -webkit-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
  }
  .--modal-apply .apply__btn:hover {
    opacity: 0.8;
  }
}