@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=LINE+Seed+JP:wght@400;700;800&display=swap');

@font-face {
  font-family: icon;
  src: url(../font/icon.eot);
  src: url(../font/icon.eot#iefix) format("embedded-opentype"),
       url(../font/icon.woff) format("woff"),
       url(../font/icon.ttf) format("truetype"),
       url(../font/icon.svg#icon) format("svg");
  font-weight: normal;
  font-style: normal;
}

 [class^="ico-"]:before, [class*=" ico-"]:before { display: inline-block; font-family: "icon"; font-size: 120%; font-style: normal; font-variant: normal; font-weight: normal; line-height: 1em; margin-left: .2em; margin-right: .2em; text-align: center; text-decoration: inherit; text-transform: none; width: 1em; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.ico-right-bold:before { content: '\e800'; }
.ico-pagetop:before { content: '\e802'; }
.ico-angle-left:before { content: '\f104'; }
.ico-angle-right:before { content: '\f105'; }
.ico-angle-up:before { content: '\f106'; }
.ico-angle-down:before { content: '\f107'; }

@keyframes slide-in {
from { opacity: 0; transform: translate3d(20px, 0, 0); }
to { opacity: 1; transform: translate3d(0, 0, 0); }
}

.jtb-nav-breadcrumb { margin-bottom: 25px; max-width: 1280px; }
.l-page { font-family: "LINE Seed JP", sans-serif; font-size: 16px; font-weight: 400; line-height: 1; text-align: center; width: 100%; }
.l-page * { -ms-box-sizing: border-box; box-sizing: border-box; }
.l-page h1 { font-size: 18px; font-weight: bold; line-height: 1; margin: 0 auto 25px; max-width: 1280px; text-align: left; }
.l-page h2, .l-page h3, .l-page h4, .l-page h5 { font-weight: 800; }
/* .l-page a { color: #da4545 !important; } */
.l-page a, .l-page a img { transition: all .4s ease; }
.l-page img { display: block; margin: 0 auto; max-width: 100%; }
.l-page li, .l-page p { line-height: 1.5; }
.l-page strong { font-weight: 700; }
.l-page sup { font-size: .625em; vertical-align: baseline; }
.l-page .c-banner a { border: 3px solid #fff; display: inline-block; }
.l-page .c-box { background-color: #fff; border: .1875em solid #1d1c79; border-radius: .75em; width: 100%; }
.l-page .c-btn { border-radius: 100vh; display: grid; margin: 0 auto; max-width: 880px; place-content: center; position: relative; transition: all .3s ease; width: 100%; }
.l-page .c-btn span { font-weight: 700; }
.l-page .c-btn__entry { background-color: #1d1c79; }
.l-page .c-btn__entry span { color: #ffef17; }
.l-page .c-btn__gray { background-color: #ddd; box-shadow: none; pointer-events: none; }
.l-page .c-btn__gray span { color: #999; }
.l-page .c-btn__block .c-btn { margin-bottom: 1em; }
.l-page .c-credit { color: #333; font-size: .875em; text-align: right; }
.l-page .c-fdc { display: flex; flex-direction: column; }
.l-page .c-head__copy { color: #db0000; font-weight: 700; }
.l-page .c-movie__title { line-height: 1.3; }
.l-page .c-panel__heading .c-date { background-color: #fff; border: .1875em solid #1d1c79; border-radius: 100vh; display: grid; margin: 0 auto; max-width: 720px; place-content: center; width: 100%; }
.l-page .c-panel__heading .c-date span { font-weight: 700; }
.l-page .c-panel__heading .c-title { align-items: center; display: flex; gap: 1em; justify-content: center; }
.l-page .c-panel__heading .c-title::before, .l-page .c-panel__heading .c-title::after { background: url(../images/icon_garland.png) no-repeat 50% 50% / cover; content: ""; display: inline-block; height: 4em; width: 7.8125em; }
.l-page .c-panel__heading .c-title::after { transform: scale(-1, 1); }
.l-page .c-panel__heading .c-title span { line-height: 1.3; }
.l-page .c-panel { display: none; }
.l-page .c-panel.is-selected { animation: .8s slide-in; display: flex; flex-direction: column; }
.l-page .c-prize + .c-prize { border-top: .8rem dotted #1d1c79; }
.l-page .c-prize__no { aspect-ratio: 1 / 1; background: url(../images/icon_prize.png) no-repeat 50% 50% / cover; display: grid; place-content: center; width: 4.5em; }
.l-page .c-prize__no span { color: #55c3e9; font-weight: 800; }
.l-page .c-prize__name { line-height: 1.3; }
.l-page .c-prize__name span { display: block; font-size: .6em; }
.l-page .c-prize__total { font-weight: 800; }
.l-page .c-prize__total em { font-size: 1.3333em; font-weight: 800; }
.l-page .c-prize__hotel h4 { font-weight: 700; padding-bottom: .5em; }
.l-page .c-prize__hotel h4 span { font-size: .8333em; }
.l-page .c-prize__pic { margin: 0 auto; max-width: 596px; width: 52%; }
.l-page .c-prize .c-txt { position: relative; }
.l-page .c-prize .c-txt .c-prize__no { left: 0; position: absolute; top: 0; }
.l-page .c-sec__title { padding-bottom: .5em; }
.l-page .c-step { position: relative; }
.l-page .c-step + .c-step::before { aspect-ratio: 117 / 64; background: url(../images/icon_dot_arrow.png) no-repeat 50% 50% / cover; content: ""; position: absolute; }
.l-page .c-step p { font-size: 1.125em; font-weight: 700; padding-top: 1.5em; text-align: left; }
.l-page .c-step p.c-normal { font-size: 1em; font-weight: 400; }
.l-page .c-step__no { aspect-ratio: 33 / 25; background: url(../images/icon_step.png) no-repeat 50% 50% / cover; display: grid; place-content: center; width: 8.25em; }
.l-page .c-step__no span { color: #fff; font-size: 1.375em; font-weight: 800; translate: .5em .25em; }
.l-page .c-step__block .c-box__title { padding-bottom: 1em; text-align: left; }
.l-page .c-store__list { padding-top: 2em; }
.l-page .c-store__list li { display: flex; line-height: 1; }
.l-page .c-store__list li::before { content: "\f105"; display: inline-block; font-family: "icon"; padding-right: .5em; }
.l-page .c-store__list a { align-items: center; color: #1d1c79; display: flex; font-weight: 700; gap: .5em; }
.l-page .c-store__list a span { background-color: #fff; border: 2px solid #1d1c79; border-radius: 100vh; display: grid; font-size: .8125em; font-weight: 400; height: 1.75em; place-content: center; transition: all .4s ease; width: 5em; }
.l-page .c-tab__list { background-color: #fff; border-radius: 100vh; display: grid; grid-template-columns: repeat(2, 1fr); }
.l-page .c-tab { cursor: pointer; display: grid; place-content: center; position: relative; transition: all .4s ease; width: 100%; }
.l-page .c-tab.is-selected { background-color: #1d1c79; border-radius: 100vh; pointer-events: none; }
.l-page .c-tab.is-selected::after { border-color: #1d1c79 transparent transparent; border-style: solid; border-width: 1em .625em 0 .625em; bottom: 0; content: ""; left: 50%; position: absolute; transition: all .4s ease; translate: -50% 100%; }
.l-page .c-tab.is-selected span { color: #fff; }
.l-page .c-tab em { display: none; }
.l-page .c-tab em, .l-page .c-tab span { font-weight: 700; }
.l-page .c-tab__list.is-fixed { background-color: transparent; gap: 1em; grid-template-columns: none; grid-template-rows: repeat(2, 1fr); position: fixed; right: 1em; top: 2em; z-index: 99; }
.l-page .c-tab__list.is-fixed .c-tab { aspect-ratio: 1 / 1; background-color: #fff; border: 2px solid #1d1c79; border-radius: 50%; transition: none; }
.l-page .c-tab__list.is-fixed .c-tab em { display: block; }
.l-page .c-tab__list.is-fixed .c-tab span { display: none; }
.l-page .c-tab__list.is-fixed .c-tab.is-selected { background-color: #1d1c79; }
.l-page .c-tab__list.is-fixed .c-tab.is-selected::after { content: none; }
.l-page .c-tab__list.is-fixed .c-tab.is-selected em { color: #ffef17; }
.l-page .c-txt { text-align: left; }
.js-btn-page-top { bottom: 50px; cursor: pointer; display: none; position: fixed; right: 50px; z-index: 100; }
.js-btn-page-top a { display: block; height: 17px; position: relative; width: 35px; }
.js-btn-page-top a::before { color: #000; content: "\e802"; display: inline-block; font-family: "icon"; font-size: 17px; height: 17px; width: 35px; }
.js-btn-page-top a:hover { opacity: .8; }

.l-mv { background: url(../images/bg_mv.jpg) no-repeat 50% 50%; display: grid; place-content: center; position: relative; width: 100%; }
.l-contents { background: #99def7 url(../images/bg_contents.png) repeat 50% 0 / 20.825em; }
.l-contents .c-inner { color: #1d1c79; display: flex; flex-direction: column; margin: 0 auto; max-width: 1280px; width: 89%; }

.sec-flow .c-bnr { padding-bottom: 2em; }
.sec-movie.c-box { background-color: #0096b4; border: none; color: #fff; }
.sec-movie .c-txt p { text-align: justify; }
.sec-movie .c-txt p + p { padding-top: 1.5em; }
.sec-guideline a { color: #da4545; }
.sec-guideline p, .sec-guideline li, .sec-guideline h5, .sec-guideline dd { color: #333; }
.sec-guideline .c-box * { text-align: left; }
.sec-guideline dt { clear: left; color: #1d1c79; float: left; font-weight: bold; padding-top: 2em; width: 18%; }
.sec-guideline dd { border-top: 1px solid #ccc; line-height: 1.5; padding: 2em 1em 2em 20%; }
.sec-guideline dd > * + *, .sec-guideline__terms > * + * { padding-top: 1.25em; }
.sec-guideline ul li { display: list-item; list-style: disc; list-style-position: outside; margin-left: 1em; }
.sec-guideline ul li + li { padding-top: .285714em; }
.sec-guideline .c-notice__list li { list-style: none; margin-left: 1.25em; text-indent: -1.25em; }
.sec-guideline .c-notice__list li::before { content: "※"; }
.sec-guideline__terms { padding-top: 3em; }
.sec-guideline__terms h4 { color: #1d1c79; font-size: 1.25em; }
.sec-guideline__title { border-bottom: 1px solid #3d1a04; color: #1d1c79; font-size: 1.5em; line-height: 1.4; margin-bottom: 1em; }


@media screen and (min-width:768px){
  .sp-item { display: none; }
  .breadcrumb-upper { margin: 0 auto 25px; max-width: 1230px; padding: 0 .5em; text-align: left; }
  .breadcrumb-upper__fix, .breadcrumb-upper__scroll, .breadcrumb-upper__item { display: inline-block; font-size: 10px; }
  .breadcrumb-upper__item { line-height: 2.1; margin-left: 1.5em; padding-left: .2em; position: relative; }
  .breadcrumb-upper__item::before { color: #999; content: ">"; left: -1.1em; line-height: 2.1; position: absolute; top: 0; }
  .l-page a:hover { color: #da4545; text-decoration: none; }
  .l-page a:hover img { opacity: .7; }
  .l-page .c-box { padding: 4.5em 4em; }
  .l-page .c-box__title { font-size: 2em; }
  .l-page .c-btn { height: 7.5em; }
  .l-page .c-btn span { font-size: 2.75em; }
  .l-page .c-btn__entry:hover { background-color: #3d3bd2; }
  .l-page .c-btn__block .c-btn { font-size: .75em; max-width: 640px; }
  .l-page .c-flow__wrap { display: grid; gap: 3em; grid-template-columns: 1fr 34.25em; }
  .l-page .c-goods__list { display: grid; gap: 2.5em; grid-template-columns: repeat(2, 1fr); }
  .l-page .c-goods__wrap { display: grid; gap: 2.5em; grid-template-columns: 25em 1fr; }
  .l-page .c-head__copy { font-size: 2.5em; padding: 1em 0; }
  .l-page .c-movie__title { font-size: 1.75em; }
  .l-page .c-panel__heading { gap: 3em; }
  .l-page .c-panel__heading .c-date { height: 4.5em; }
  .l-page .c-panel__heading .c-date span { font-size: 1.5em; }
  .l-page .c-panel__heading .c-title span { font-size: 3em; }
  .l-page .c-panel { gap: 6.25em; }
  .l-page .c-prize__wrap .c-prize { display: grid; gap: 3em; grid-template-columns: 1fr 26.5em; }
  .l-page .c-prize__wrap .c-prize__full { display: block; }
  .l-page .c-prize + .c-prize { margin-top: 2.5em; padding-top: 2.5em; }
  .l-page .c-prize .c-txt { gap: 1.5em; padding: 1.25em 0 0 6.25em; }
  .l-page .c-prize__no span { font-size: 1.5em; }
  .l-page .c-prize__name, .l-page .c-sec__title { font-size: 2.5em; }
  .l-page .c-prize__total, .l-page .c-prize__hotel h4 { font-size: 1.5em; }
  .l-page .c-prize__full p { font-size: 1.25em; padding-top: 1.5em; }
  .l-page .c-prize__full--title { font-size: 2em; }
  .l-page .c-step + .c-step::before { width: 3.625em; }
  .l-page .c-step__list { gap: 5em; }
  .l-page .c-step__list--column .c-step + .c-step::before { left: 50%; top: -2em; translate: -50% 0; }
  .l-page .c-step__list--row { display: grid; grid-template-columns: repeat(2, 1fr); }
  .l-page .c-step__list--row .c-step + .c-step::before { left: -4em; top: 50%; transform: rotate(-90deg); translate: 0 -50%; }
  .l-page .c-step__list--row .c-step__no { margin: auto; }
  .l-page .c-step__wrap { display: grid; gap: 6em; grid-template-columns: repeat(2, 1fr); position: relative; }
  .l-page .c-step__wrap::before { border-left: .5em dotted #1d1c79; bottom: 0; content: ""; display: block; left: 50%; position: absolute; top: 0; transform: translateX(-50%); width: .5em; }
  .l-page .c-store__list { display: grid; gap: .75em 1em; grid-template-columns: repeat(2, 1fr); }
  .l-page .c-store__list a:hover span { border-color: #da4545; }
  .l-page .c-tab { height: 6.25em; }
  .l-page .c-tab span { font-size: 1.75em; }
  .l-page .c-tab__list.is-fixed .c-tab em { font-size: .8125em; }
  .l-mv { aspect-ratio: 64 / 27; background-size: cover }
  .l-mv__title { transform: translateY(-15%); width: 74vw; }
  .l-contents .c-inner { gap: 5em; padding: 1.5em 0 5em; }
  .sec-flow .c-box { display: flex; flex-direction: column; gap: 3em; }
  .sec-movie .c-goods__wrap { align-items: center; }
  .sec-movie .c-txt { font-size: 1.25em; }
  .sec-store .c-box { gap: 3em; }
  .sec-guideline .c-box { padding: 4.5em 6em; }
}

@media screen and (min-width:768px) and ( max-width:1280px) {
  .l-page { font-size: 1.25vw; margin: 0;  }
}

@media screen and (min-width:768px) and ( max-width:1440px) {
  .l-page .c-box { padding: 4.5em 4.4444vw; }
  .l-page .c-goods__wrap { gap: 2.7778vw; grid-template-columns: 27.7778vw 1fr; }
  .l-page .c-prize__wrap .c-prize { grid-template-columns: 1fr 29.4444vw; }
  .l-page .c-prize__name { font-size: 2.7778vw; }
  .l-page .c-store__list { gap: .5em 1.6667vw; }
  .l-page .c-store__list a { font-size: .9722vw; }
}

@media screen and (max-width:767px){
  .pc-item { display: none; }
  #JTBGF-ly_footer.JTBGF-ly_footer { margin-top: 0 !important; }
  .breadcrumb-upper { background-color: #fff; border-top: 1px solid #d7d7d7; display: flex; flex-wrap: nowrap; font-size: 10px; line-height: 3rem; margin-top: 5em; overflow: hidden; position: relative; }
  .breadcrumb-upper__fix { box-shadow: 6px 0 10px 0 rgba(0, 0, 0, .3); position: relative; transition: box-shadow .3s; width: 7em; z-index: 3; }
  .breadcrumb-upper__fix a { padding-left: .5rem; }
  .breadcrumb-upper__scroll { flex: 1; overflow: hidden; }
  .breadcrumb-upper__list { display: flex; flex-wrap: nowrap; height: 3rem; overflow-x: scroll; overflow-y: hidden; white-space: nowrap; }
  .breadcrumb-upper__item a { padding: 0 .5rem 0 1.8rem; }
  .breadcrumb-upper__item:last-child { padding: 0 1.2rem 0 1.8rem; }
  .breadcrumb-upper__fix a, .breadcrumb-upper__item a { display: block; background-color: #fff; text-align: center; position: relative; }
  .breadcrumb-upper__fix a::before, .breadcrumb-upper__item a::before, .breadcrumb-upper__fix a:after, .breadcrumb-upper__item a:after { content: ""; border-style: solid; border-width: 2rem 0 2rem 1rem; position: absolute; top: -.5rem; }
  .breadcrumb-upper__fix a::before, .breadcrumb-upper__item a::before { border-color: transparent transparent transparent #fff; right: -.9rem; z-index: 2; }
  .breadcrumb-upper__fix a::after, .breadcrumb-upper__item a::after { border-color: transparent transparent transparent #d7d7d7; right: -1rem; z-index: 1; }
  .js-btn-page-top { bottom: 20px; right: 20px; }
  .js-btn-page-top a { background-color: #999; border-radius: 6px; display: block; height: 30px; width: 30px; }
  .js-btn-page-top a::before { color: #fff; content: "\f106"; display: inline-block; font-family: "icon"; line-height: 29px; width: auto; }
  .l-page { font-size: 3.2vw; padding: 20px 0 0; }
  .l-page h1 { margin-bottom: 20px; padding: 0 1%; }
  .l-page button { font-size: 3.2vw; }
  .l-page .c-box { padding: 2em 7%; }
  .l-page .c-box__title, .l-page .c-btn span, .l-page .c-head__copy, .l-page .c-sec__title { font-size: 1.5em; }
  .l-page .c-btn { height: 5em; }
  .l-page .c-goods__wrap { display: flex; flex-direction: column; gap: 1.5em; }
  .l-page .c-head__copy { padding-bottom: 1em; }
  .l-page .c-movie__title { font-size: 1.375em; }
  .l-page .c-panel__heading .c-date { padding: 1em; }
  .l-page .c-panel__heading { gap: 1.5em; }
  .l-page .c-panel__heading .c-title span { font-size: 1.75em; }
  .l-page .c-panel__heading .c-title::before, .l-page .c-panel__heading .c-title::after { font-size: .5em; }
  .l-page .c-panel { gap: 2em; }
  .l-page .c-prize + .c-prize { margin-top: 1.5em; padding-top: 1.5em; }
  .l-page .c-prize .c-txt { gap: 1em; padding: .5em 0 0 4.5em; }
  .l-page .c-prize .c-txt .c-prize__no { font-size: .75em; }
  .l-page .c-prize__name { font-size: 1.375em; }
  .l-page .c-prize__total, .l-page .c-prize__hotel h4 { font-size: 1.25em; }
  .l-page .c-prize__wrap .c-prize, .l-page .c-goods__list { display: flex; flex-direction: column; gap: 1em; }
  .l-page .c-prize__full p { text-align: justify; }
  .l-page .c-prize__full p br { display: none; }
  .l-page .c-prize__full--title { font-size: 1.375em; }
  .l-page .c-step__no { margin: auto; }
  .l-page .c-store__list { display: flex; flex-direction: column; gap: .5em; }
  .l-page .c-step__block + .c-step__block { border-top: .5em dotted #1d1c79; margin-top: 1.5em; padding-top: 1.5em; }
  .l-page .c-tab { height: 5em; }
  .l-page .c-tab__list.is-fixed .c-tab em { font-size: .75em; }
  .l-mv { aspect-ratio: 8 / 3; background-size: cover; }
  .l-mv__title { margin: 0 auto; width: 65%; }
  .l-contents .c-inner { gap: 3em; padding: 1em 0 3em; }
  .sec-movie .c-pic { margin: 0 auto; width: 75%; }
  .sec-store .c-box { gap: 1.5em; }
  .sec-guideline dt, .sec-guideline dd { margin: 0; padding: 0; }
  .sec-guideline dt { float: none; width: 100%; }
  .sec-guideline dd { padding: 1em 1em 1.6em; }
  .sec-guideline .c-box p, .sec-guideline .c-box li { text-align: justify; }
}