@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Roboto:wght@700&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-down-dir:before { content: '\e800'; }
.ico-plus:before { content: '\e801'; }
.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'; }


.jtb-nav-breadcrumb { margin-bottom: 25px; max-width: 1280px; }
.l-page { font-family: 'Noto Sans JP', sans-serif; font-size: 16px; line-height: 1.6; 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 a { color: #ee507d; }
.l-page a, .l-page a img { transition: all .4s ease; }
.l-page em { font-family: 'Roboto', sans-serif; font-weight: 700; }
.l-page img { display: block; margin: 0 auto; max-width: 100%; }
.l-page strong { font-weight: 700; }
.l-page sup { font-size: .75em; vertical-align: top; }
.l-page .c-btn { align-items: center; border-radius: 100vh; display: flex; justify-content: center;  margin: 0 auto; max-width: 760px; position: relative; width: 100%; }
.l-page .c-btn span { font-weight: 700; }
.l-page .c-btn__entry { border-left: 3px solid #fff; border-top: 3px solid #fff; background-color: #ee507d; }
.l-page .c-btn__entry::after { border: .1875em solid #000; border-radius: 100vh; bottom: 0; content: ""; display: block; left: -.3785em; pointer-events: none; position: absolute; right: 0; top: -.3785em; transition: all .4s ease; width: 100%; }
.l-page .c-btn__entry span { color: #f5eb55; }
.l-page .c-btn__gray { background-color: #999; }
.l-page .c-btn__gray span { color: #fff; }
.l-page .c-cap { font-size: .875em; }
.l-page .c-fdc { display: flex; flex-direction: column; }
.l-page .c-inner {  margin: 0 auto; max-width: 1280px; width: 89%; }
.l-page .c-notice__list li { list-style: none; margin-left: 1.25em; text-indent: -1.25em; }
.l-page .c-notice__list li::before { content: "※"; }
.l-page .c-sec p + p { padding-top: 1.25em; }
.l-page .c-sec__title span { align-items: center; color: #15b06b; display: flex; font-weight: 700; justify-content: center; }
.l-page .c-sec__title span::before, .l-page .c-sec__title span::after { border-top: 2px solid #15b06b; content: ""; }
.l-page .c-sec__title span::before { margin-right: 1em; }
.l-page .c-sec__title span::after { margin-left: 1em; }
.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-page__wrap { background: #cdfee8 url(../images/bg_contents.png) repeat 0 0 / 1.375em auto; }
.l-notice { margin-bottom: .5em; }
.l-notice span { color: #c71528; font-weight: 700; }
.l-notice small { color: #fff; display: inline-block; padding: 1em 1.5em; }
.l-mv { display: block; position: relative; width: 100%; }
.l-mv::after { background: url(../images/bg_mv.png) no-repeat 50% 50% / auto 90%; bottom: 5em; content: ""; display: block; left: 0; pointer-events: none; position: absolute; right: 0; top: 0; width: 100%; }
.l-mv__date { background-color: #15b06b; }
.l-mv__date p { color: #fff; font-weight: 700; }
.l-mv__date p em { font-size: 1.5em; }
.l-step__item { align-items: center; background-color: #fff; border-radius: .5em; display: block; position: relative; }
.l-step__item::after { border: .1875em solid #000; border-radius: .5em; bottom: 0; content: ""; display: block; left: -.3785em; pointer-events: none; position: absolute; right: 0; top: -.3785em; width: 100%; }
.l-step__item + .l-step__item { margin-top: 5em; }
.l-step__item + .l-step__item::before { color: #15b06b; content: "\e802"; display: inline-block; font-family: "icon"; font-size: 1.25em; left: 50%; line-height: 1; position: absolute; top: -2.5em; transform:translateX(-50%) rotate(180deg); }
.l-step__item p, .l-step__item ul { font-size: 1.125em; text-align: left; }
.l-step__item ul { list-style-type: disc; list-style-position: outside; margin: 1.25em 0 0 1em; }
.l-step__item-label { align-items: center; background-color: #15b06b; border-radius: .5em; display: flex; height: 2.75em; justify-content: center; left: .375em; position: absolute; top: 0; transform: translateY(-50%); width: 7.5em; z-index: 3; }
.l-step__item-label span { color: #fff; font-family: 'Roboto', sans-serif; font-size: 1.5em; }
.l-step__item--column { background-color: #f5eb55; border-radius: .5em; margin-top: 1.5em; padding: 1em 2em; }
.l-step__item--column em { color: #ee507d; font-weight: 700; }
.l-step__item--column strong { color: #15b06b; }
.l-prize__block { border-left: 3px solid #fff; border-top: 3px solid #fff; position: relative; }
.l-prize__block::after { border: .1875em solid #000; border-radius: .5em; bottom: 0; content: ""; display: block; left: -.3785em; pointer-events: none; position: absolute; right: 0; top: -.3785em; width: 100%; }
.l-prize__block dt { border-radius: .25em .25em 0 0; color: #fff; display: grid; font-weight: 700; place-content: center; }
.l-prize__block.c-block__blue dt { background-color: #00a9e0; }
.l-prize__block.c-block__green dt { background-color: #cc0000; }
.l-prize__block dd { background-color: #fff; border-radius: 0 0 .5em .5em; text-align: left; }
.l-prize__block + .l-prize__block::before { background-color: #71d2a7; border-radius: 50%; color: #fff; content: "\e801"; display: grid; font-family: "icon"; left: 50%; place-content: center; position: absolute; z-index: 3; }
.l-prize__list { display: flex; flex-direction: column; }
.l-prize__list .c-slide__arrow { cursor: pointer; display: grid !important; height: 4em; place-content: center; position: absolute; top: 50%; transition: all .3s ease; width: 4em; z-index: 2; }
.l-prize__list .c-slide__arrow.slick-disabled { display: none !important; }
.l-prize__list .c-slide__arrow::before { color: #333; display: inline-block; font-family: "icon"; font-size: 4em; }
.l-prize__list .c-arrow__prev { justify-content: flex-start; translate: -50% -50%; }
.l-prize__list .c-arrow__prev::before { content: "\f104"; }
.l-prize__list .c-arrow__next { justify-content: flex-end; translate: 50% -50%; }
.l-prize__list .c-arrow__next::before { content: "\f105"; }
.l-prize__item { display: flex; }
.l-prize__item .c-txt { align-items: flex-start; text-align: left; }
.l-prize__item .c-label { align-items: center; border: 1px solid #00a9e0; color: #00a9e0; display: inline-flex; justify-content: center; line-height: 1; padding: .5em .75em; }
.l-prize__item .c-name { font-size: 1.5em; font-weight: 700; }
.l-prize__item .c-notice__list { font-size: .875em; }
.l-anker__box { background-color: #fff; border-radius: .5em; position: relative; text-align: left; width: 100%; }
.l-anker__box::after { border: .1875em solid #000; border-radius: .5em; bottom: 0; content: ""; display: block; left: -.3785em; pointer-events: none; position: absolute; right: 0; top: -.3785em; width: 100%; }
.l-anker__box .c-logo { margin: 0 auto; }
.l-anker__box a { color: #00befa; }
.l-guideline { background-color: #fff; border-left: 3px solid #fff; border-top: 3px solid #fff; border-radius: .5em; position: relative; }
.l-guideline::after { border: .1875em solid #000; border-radius: .5em; bottom: 0; content: ""; display: block; left: -.3785em; pointer-events: none; position: absolute; right: 0; top: -.3785em; width: 100%; }
.l-guideline__head { align-items: center; background-color: #15b06b; border-radius: .25em .25em 0 0; display: flex; justify-content: center; }
.l-guideline__head span { color: #f5eb55; font-size: 2em; font-weight: 700; }
.l-guideline .lead, .l-guideline dl, .l-guideline__terms { text-align: left; }
.l-guideline dl dt, .l-guideline__terms h4 { color: #15b06b; font-weight: bold; margin-top: 1.5em; }
.l-guideline dl dt { clear: left; float: left; padding-top: 1.5em; width: 20%; }
.l-guideline dl dd { border-top: 1px solid #ccc; line-height: 1.5; margin-top: 1.5em; padding: 1.5em 1em 0 22%; }
.l-guideline dl dd h4 { font-weight: bold; }
.l-guideline p, .l-guideline ul { margin-top: 1em; }
.l-guideline ul li { display: list-item; list-style: disc; list-style-position: outside; margin-left: 1em; }
.l-guideline ul li + li { padding-top: .285714em; }
.l-guideline dl + .l-guideline__title, .l-guideline__terms { margin-top: 3em; }
.l-guideline__title { border-bottom: 1px solid #1c2f2a; font-size: 1.25em; font-weight: 700; margin-bottom: 1em; }
.l-guideline .c-heading { font-weight: 700; margin-bottom: .5em; }
.l-bnr img { border-radius: .5em; }


@media screen and (min-width:768px) and ( max-width:1280px) {
  .l-page { font-size: 1.25vw; margin: 0;  }
}
@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: #d4023e; text-decoration: none; }
  .l-page a:hover img { opacity: .7; }
  .l-page .c-btn { height: 7em; }
  .l-page .c-btn span { font-size: 2em; }
  .l-page .c-btn__entry:hover { background-color: #ff0049; border-bottom: 3px solid #fff; border-left: none; border-right: 3px solid #fff; border-top: none; }
  .l-page .c-btn__entry:hover::after { bottom: -.3785em; left: 0; right: -.3785em; top: 0; }
  .l-page .c-sec__title { padding-bottom: 3em; }
  .l-page .c-sec__title span { font-size: 2.5em; }
  .l-page .c-sec__title span::before, .l-page .c-sec__title span::after { width: 3em; }
  .l-notice span { font-size: 1.75em; }
  .l-contents .c-inner { gap: 5em; padding: 5em 0; }
  .l-mv__date p { font-size: 1.75em; letter-spacing: .1em; padding: .25em 0; }
  .l-step__wrap { display: flex; gap: 3.875em; justify-content: space-between; }
  .l-step__flow { flex: 1; }
  .l-step__item { padding: 2.5em;width: 100%; }
  .l-step__post { width: 33.75em; }
  .l-prize__block + .l-prize__block { margin-top: 4em; }
  .l-prize__block dt { font-size: 2em; height: 3em; }
  .l-prize__block dd { padding: 3.5em 5em; }
  .l-prize__block.c-block__blue .c-pic { border: 1px solid #e6e6e6; border-radius: .375em; overflow: hidden; }
  .l-prize__block + .l-prize__block::before { font-size: 3em; height: 2em; top: -1.75em; transform: translateX(-50%); width: 2em; }
  .l-prize__list { gap: 1.5em; }
  .l-prize__list .c-arrow__prev { left: -1em; }
  .l-prize__list .c-arrow__next { right: -1em; }
  .l-prize__item { gap: 3.75em; }
  .l-prize__item .c-pic { width: 32%; }
  .l-prize__item .c-txt { flex: 1; gap: 1em; padding: .5em 0; }
  .l-anker__box { padding: 2em 5em 4em; }
  .l-anker__box .c-logo { padding: 7em 0; width: 36%; }
  .l-guideline__head { height: 6.25em; }
  .l-guideline__head span { font-size: 2em; }
  .l-guideline__bottom { padding: 3.75em 6.25em; }
  .l-guideline li, .l-guideline p { font-size: .9375em; }
  .l-guideline dl dt:first-of-type, .l-guideline dl dd:first-of-type { border: none; margin-top: 0; padding-top: 0; }
  .l-guideline__terms { margin-top: 3em; }
}

@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; 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 .c-btn { height: 5.5em; }
  .l-page .c-btn span { font-size: 1.75em; }
  .l-page .c-sec__title { padding-bottom: 2em; }
  .l-page .c-sec__title span { font-size: 2em; }
  .l-page .c-sec__title span::before, .l-page .c-sec__title span::after { width: 2em; }
  .l-notice { padding-top: 2em; }
  .l-notice span { font-size: 1.25em; }
  .l-mv .c-inner { padding: 1em 0; width: 100%; }
  .l-contents .c-inner { gap: 2.5em; padding: 3em 0; }
  .l-step__item { padding: 2.5em 1.75em; }
  .l-step__item + .l-step__item { margin-top: 3em; }
  .l-step__item + .l-step__item::before { left: 50%; top: -1.75em; transform:translateX(-50%) rotate(180deg); }
  .l-prize__block + .l-prize__block { margin-top: 2em; }
  .l-prize__block + .l-prize__block::before { font-size: 2em; height: 2em; top: -1.75em; transform: translateX(-50%); width: 2em; }
  .l-prize__block dt { font-size: 1.75em; line-height: 1.4; padding: .5em 0; }
  .l-prize__block dd { padding-bottom: 2.5em; }
  .l-prize__list { gap: 1.5em; }
  .l-prize__list .c-arrow__prev { left: 4%; }
  .l-prize__list .c-arrow__next { right: calc(4% + 6px); }
  .l-prize__item { flex-direction: column; }
  .l-prize__item + .l-prize__item { border-top: 1px dashed #ccc; }
  .l-prize__item .c-pic { margin: 0 auto; width: 80%; }
  .l-prize__item .c-txt { gap: .5em; padding: .5em 2em; }
  .l-anker__box { padding: 1em 2em 2em; }
  .l-anker__box .c-logo { padding: 4em 0; width: 54%; }
  .l-guideline__head { border-radius: .375em 0 0 0; padding: .375em 0; }
  .l-guideline__head span { font-size: 1.5em; }
  .l-guideline__bottom { padding: 2em 1.5em; }
  .l-guideline dl + .l-guideline__title { margin-top: 1em; }
  .l-guideline dl dt, .l-guideline dl dd { font-size: .9375em; margin: 0; padding: 0; }
  .l-guideline dl dt { float: none; width: 100%; }
  .l-guideline dl dd { padding: 1em 0 1.6em; }
  .l-guideline__terms { margin-top: 1.5em; }
  .l-bnr .c-sec__title span { font-size: 1.125em; }
}

/* Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0);  -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; top: 0; left: 0; display: flex; margin-left: auto; margin-right: auto; }
.slick-track::before, .slick-track::after { display: table; content: ""; }
.slick-track::after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { display: none; float: left; height: auto !important; min-height: 1px; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: flex; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }
.slick-dotted.slick-slider { margin-bottom: 2em; }
.slick-dots { bottom: -2em; display: block; margin: 0; padding: 0; position: absolute; text-align: center; width: 100%; }
.slick-dots li { display: inline-block; height: 1.5em; margin: 0; padding: 0; position: relative; width: 1.5em; }
.slick-dots li button { background-color: transparent; border: 0; color: transparent; display: block; height: 1.5em; line-height: 0; outline: none; width: 1.5em; }
.slick-dots li button:hover, .slick-dots li button:focus { cursor: pointer; outline: none; }
.slick-dots li button::before { background-color: #ccc; content: ""; border-radius: 100vh; display: inline-block; height: .625em; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); transition: width .4s ease; width: .625em; }
.slick-dots li.slick-active button::before { background-color: #00a9e0; width: 1.5em; }
