@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Sriracha&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: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'; }

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

.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: 700; line-height: 1; margin: 0 auto 25px; max-width: 1280px; text-align: left; }
.l-page a { color: #c85e97; }
.l-page a, .l-page a img { transition: all .4s ease; }
.l-page img { display: block; margin: 0 auto; width: 100%; }
.l-page h3 { color: #1f3768; font-weight: 700; }
.l-page .en { font-family: "Sriracha", serif; }
.l-page .c-bg__blue { background-color: #336ca5; }
.l-page .c-bg__brown { background-color: #c29450; }
.l-page .c-bg__lblue { background-color: #e0eaff; }
.l-page .c-bg__lgray { background-color: #f2f2f2; }
.l-page .c-bg__navy { background-color: #1f3768; }
.l-page .c-bg__oblue { background-color: #0080a4; }
.l-page .c-bg__purple { background-color: #7c3f6f; }
.l-page .c-bg__wistaria { background-color: #556baf; }
.l-page .c-btn { border-radius: 100vh; display: grid; height: 4.875em; overflow: hidden; place-items: center; position: relative; width: 100%; }
.l-page .c-btn::before { background: linear-gradient(90deg, #7c3f6f 0%, #4a3c7a 50%, #c85e97 100%); content: ""; display: block; height: 100%; left: 0; position: absolute; transition: all .4s ease; width: 200%; }
.l-page .c-btn span { color: #fff; font-size: 1.5em; font-weight: 700; position: relative; z-index: 2; }
.l-page .c-btn span small { display: block; font-size: .6667em; font-weight: normal; }
.l-page .c-btn__prev { padding: 3.5em 0; }
.l-page .c-btn__prev .c-btn { height: 3.75em; margin: 0 auto; width: 15em; }
.l-page .c-hotel__item { border-radius: .75em; overflow: hidden; }
.l-page .c-hotel__item + .c-hotel__item { margin-top: 1.5em; }
.l-page .c-hotel__item .c-txt { background-color: #fff; text-align: left; }
.l-page .c-hotel__item .c-txt h3 span { display: block; font-size: .625em; }
.l-page .c-hotel__item .c-txt dl { margin: 1.5em 0; }
.l-page .c-hotel__item .c-txt dt { background-color: #1f3768; color: #fff; text-align: center; }
.l-page .c-icon__list { display: flex; }
.l-page .c-icon__list li { align-items: center; display: flex; }
.l-page .c-icon__list li img { margin: 0; }
.l-page .c-icon__list li p { color: #1f3768; font-weight: 700; padding-left: 1em; text-align: left; }
.l-page .c-movie__box { align-items: center; margin: 0 auto; max-width: 1050px; width: 100%; }
.l-page .eviry-baseplayer, .l-page .eviry-screen { width: 100% !important; }
.l-page .eviry-screen > div:nth-of-type(1) { aspect-ratio: 16 / 9; height: auto !important; }
.l-page #eviry-poster_3 { aspect-ratio: 16 / 9; }
.l-page .c-list__title { border-bottom: 1px solid #1f3768; border-top: 1px solid #1f3768; display: inline-block; font-weight: 700; padding: 1em; }
.l-page .c-list__title span { color: #1f3768; font-size: 1.5em; }
.l-page .c-list__title small { font-size: .6667em; padding-left: .5em; }
.l-page .c-txt__white .c-list__title { border-color: rgba(255,255,255, .5); color: #fff; }
.l-page .c-txt__white .c-list__title span { color: #fff; }
.l-page .c-movie__txt { color: #1f3768; font-weight: 700; margin-top: 1.5em; }
.l-page .c-note { color: #fff; margin-top: .5em; text-align: left; }
.l-page .c-option__list + .c-option__list { margin-top: 1.5em; }
.l-page .c-option__list dt { background-color: #1f3768; border-radius: .75em .75em 0 0; color: #fff; font-size: 1.25em; font-weight: 700; padding: .5em; }
.l-page .c-option__list dd { background-color: #fff; border-radius: 0 0 .75em .75em; }
.l-page .c-product__list { display: flex; flex-direction: column; column-gap: 2.5em; }
.l-page .c-product__item { border-radius: .75em; overflow: hidden; width: 100%; }
.l-page .c-product__item:first-child { background-color: #c29450; }
.l-page .c-product__item:last-child { background-color: #0080a4; flex-direction: row-reverse; margin-top: 2em; }
.l-page .c-product__item .c-txt { color: #fff; text-align: left; }
.l-page .c-product__item-head { font-size: 1.25em; }
.l-page .c-product__item-head h3 { color: #fff; }
.l-page .c-products__self .c-title { color: #c29450; font-weight: 700; padding-bottom: .25em; }
.l-page .c-package__list { display: flex; justify-content: center; }
.l-page .c-package__item { align-items: center; aspect-ratio: 1 / 1; background-color: #fff; border-radius: 50%; display: flex; flex-direction: column; justify-content: center; }
.l-page .c-package__item img { width: 57.1429%; }
.l-page .c-package__item span { color: #1f3768; font-weight: 700; }
.l-page .c-sec__head .c-sec__title { line-height: 1.3; }
.l-page .c-sec__head p { font-weight: 700; }
.l-page .c-sec__inner { padding: 0 5.5555vw; position: relative; }
.l-page .c-sec__short { margin: 0 auto; max-width: 1080px; width: 100%; }
.l-page .c-sec__title span { color: #c29450; }
.l-page .c-txt__box { margin: 0 auto; max-width: 760px; text-align: left; width: 100%; }
.l-page .c-txt__box + .c-sec__short { padding-top: 2.5em; }
.l-page .c-txt__box p + p { margin-top: 1.5em; }
.l-page .c-txt__white .c-txt__box, .l-page .c-txt__white .c-sec__head * { color: #fff; }
.l-page .c-visa { align-items: center; display: inline-flex; margin-top: 2.5em; }
.l-page .c-visa img { margin-left: 1em; width: 11.375em; }
.l-page .c-visa p { font-size: .875em; 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-contents { background-color: #fff; width: 100%; }
.l-logo img { margin: 0 0 0 auto; max-width: 200px; width: 100%; }
.l-mv { background: url(../img/bg_mv.jpg) no-repeat 50% 50% / cover; display: flex; flex-direction: column; justify-content: center; position: relative; width: 100%; }
.l-mv::after { background-color: rgba(31,55,104,.4); bottom: 0; content: ""; display: block; left: 0; position: absolute; right: 0; top: 0; width: 100%; }
.l-mv * { z-index: 1; }
.l-mv__title { color: #fff; line-height: 1.3; position: relative; text-align: left; }
.l-mv__title span { display: block; }
.l-mv__column { align-items: center; background-color: #fff; border-radius: 1em; bottom: 0; box-shadow: 0 1em 2.5em 0 rgba(0,0,0, .15); display: inline-flex; max-width: 680px; position: absolute; width: 100%; }
.l-mv__column img { width: 4em; }
.l-mv__column p { text-align: left; }

.sec-intro .c-column { background-color: #f5f5f5; border-radius: .75em; }
.sec-intro .c-column p span { display: block; font-size: .7em; margin-top: 1.5em; }
.sec-product .c-plan__item { background-color: #fff; border-radius: .75em; overflow: hidden; width: 100%; }
.sec-products .c-btn { background-color: #fff; }
.sec-products .c-btn::before { left: 100%; }
.sec-products .c-btn span { background: linear-gradient(90deg, #7c3f6f 0%, #4a3c7a 100%); background-clip: text; -webkit-text-fill-color: transparent; }
.sec-products .c-btn.c-disabled { background-color: #666; pointer-events: none; }
.sec-products .c-btn.c-disabled::after { border-radius: 100vh; bottom: 0; color: #fff; font-weight: 700; content: "Coming Soon"; display: grid; font-size: 1.25em; left: 0; place-items: center; position: absolute; right: 0; top: 0; width: 100%; z-index: 3; }
.sec-plan__hp .c-plan__item { background-color: #fff; border-radius: .75em; overflow: hidden; width: 100%; }
.sec-plan__hp .c-plan__item .c-txt { display: flex; flex-direction: column; padding: 1.5em 2.5em 3em; }
.sec-plan__hp .c-plan__item .c-txt p { margin: 1.25em 0 auto; text-align: left; }
.sec-plan__hp .c-plan__item .c-plan__head h3 { font-size: 2.5em; line-height: 1.3; }
.sec-plan__hp .c-plan__ivh .c-plan__head h3 { color: #336ca5; }
.sec-plan__hp .c-plan__ovh .c-plan__head h3 { color: #7c3f6f; }
.sec-plan__hp .c-plan__item .c-title__sub { font-size: 1.25em; font-weight: 700; }
.sec-grade .c-outline { text-align: left; }
.sec-grade .c-outline .c-txt h3 { font-weight: 700; margin-bottom: .75em; }
.sec-grade .c-outline .c-txt p + p { margin-top: 1.5em; }
.sec-grade .c-outline .c-txt .c-cap { font-size: 1em; }
.sec-grade .c-icon__list { column-gap: .25em; flex-wrap: wrap; row-gap: .25em; }
.sec-grade .c-icon__list li { align-items: center; background-color: #fff; border-radius: .5em; display: flex; height: 6.25em; padding: 0 2em; }
.sec-grade .c-txt__white .c-outline .c-txt * { color: #fff; }

.l-page__main .l-mv__title span { font-size: .6667em; }
.l-page__subpage .c-sec__inner { margin: 0 auto; }
.l-page__subpage .l-mv__title span { display: block; font-family: 'Noto Sans JP', sans-serif; font-weight: 700; }
.l-contents__products .l-mv { background-image: url(../img/bg_mv_products.jpg); }
.l-contents__products--ivh .l-mv { background-image: url(../img/bg_mv_products_ivh.jpg); }
.l-contents__products--ovh .l-mv { background-image: url(../img/bg_mv_products_ovh.jpg); }


@media screen and (min-width:768px){
  .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 { text-decoration: none; }
  .l-page a:hover img { opacity: .85; }
  .l-page .c-bg__color { border-radius: 1.5em; }
  .l-page .c-bg__color + .c-bg__color { margin-top: 5em; }
  .l-page .c-btn { width: 22.125em; }
  .l-page .c-btn:hover::before { left: -100%; }
  .l-page .c-btn__large { height: 6.25em; width: 32.5em; }
  .l-page .c-btn__block { column-gap: 2em; display: flex; justify-content: center; padding-top: 4em; }
  .l-page .c-col__two { column-gap: 2.75em; }
  .l-page .c-col__two--item { flex: 1; }
  .l-page .eviry-baseplayer, .l-page .eviry-screen { height: 39.375em !important; }
  .l-page .c-flex { display: flex; justify-content: space-between; }
  .l-page .c-hotel__item .c-pic { width: 34.0625%; }
  .l-page .c-hotel__item .c-txt { flex: 1; padding: 1.25em 2.75em; }
  .l-page .c-hotel__item .c-txt h3 { font-size: 2em; }
  .l-page .c-hotel__item .c-txt dl { display: flex; flex-wrap: wrap; justify-content: space-between; row-gap: .5em; }
  .l-page .c-hotel__item .c-txt dt { font-size: 1.25em; width: 11.5em; }
  .l-page .c-hotel__item .c-txt dd { width: calc(100% - 15em); }
  .l-page .c-icon__list li img { width: 5em; }
  .l-page .c-list__title { margin: 5em 0 2.5em; }
  .l-page .c-movie__txt .c-title { font-size: 1.5em; }
  .l-page .c-movie__txt .c-date { font-size: 2em; }
  .l-page .c-note { font-size: 1.25em; }
  .l-page .c-option__list dd { padding: 1.875em 3.75em; }
  .l-page .c-option__list .c-icon__list { column-gap: 5em; justify-content: center; }
  .l-page .c-product__item { display: flex; justify-content: space-between; }
  .l-page .c-product__item .c-pic { width: 55.1563%; }
  .l-page .c-product__item .c-txt { display: flex; flex-direction: column; justify-content: center; padding: 2.5em; width: 44.8437%; }
  .l-page .c-product__item-head .c-title { font-size: 3.0556vw; }
  .l-page .c-products__self .c-title { font-size: 2em; }
  .l-page .c-package__list { column-gap: 2.5em; margin-top: 2.5em; }
  .l-page .c-package__item { width: 8.75em; }
  .l-page .c-sec { padding: 6.25em 0; }
  .l-page .c-sec:nth-of-type(1) { padding-top: 8.75em; }
  .l-page .c-sec__head { margin-bottom: 2em; }
  .l-page .c-sec__head p { font-size: 1.5em; }
  .l-page .c-sec__title span { font-size: 3.5em; }
  .l-page .c-txt__box p { font-size: 1.25em; }
  .l-logo { padding: 1.5em; }
  .l-mv { aspect-ratio: 36 / 17; padding: 0 5em 4em; }
  .l-mv, .l-mv::after { border-radius: 0 0 1.5em 1.5em; }
  .l-mv__column { padding: 1.5em 2.25em; right: 5em; translate: 0 50%; width: 47.2222vw; }
  .l-mv__column img { margin-right: 2.5em; }
  .l-mv__column p { font-size: .875em; }
  .l-mv__bnr { margin-top: 1.5em; width: 39.25em; }
  .sec-intro .c-column { margin-top: 5em; padding: 2.5em; }
  .sec-intro .c-column p { font-size: 1.25em; }
  .sec-intro .c-column .c-btn { width: 25em; }
  .sec-products .c-btn:hover::before{ left: 0; }
  .sec-products .c-btn:hover span { background: none; -webkit-text-fill-color: rgba(255,255,255); }
  .sec-plan__hp .c-plan__list { margin-top: 5em; }
  .sec-plan__hp .c-plan__item { display: flex; flex-direction: column; }
  .sec-plan__hp .c-plan__item .c-txt { flex: 1; }
  .sec-grade .c-outline { flex-direction: row-reverse; }
  .sec-grade .c-outline .c-pic { width: 45.3125%; }
  .sec-grade .c-outline .c-txt h3 { font-size: 2.5em; }
  .sec-grade .c-outline .c-txt p { font-size: 1.25em; }
  .sec-grade .c-icon__list li { width: calc(50% - 2px); }
  .l-page__main .l-mv__title { font-size: 6.6667vw; }
  .l-page__subpage .l-mv { aspect-ratio: 72 / 25; }
  .l-page__subpage .l-mv, .l-page__subpage .l-mv::after { border-radius: 0 0 .75em .75em; }
  .l-page__subpage .l-mv__title { font-size: 5.5556vw; }
  .l-page__subpage .l-mv__title span { font-size: .3125em; }
  .sp-item { display: none; }
}

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

@media screen and (max-width:767px){
  #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; overflow: hidden; padding: 20px 0 0; }
  .l-page h1 { margin-bottom: 20px; padding: 0 1%; }
  .l-page .c-bg__color { border-radius: .75em; }
  .l-page .c-bg__color + .c-bg__color { margin-top: 4em; }
  .l-page .c-btn + .c-btn { margin-top: 1em; }
  .l-page .c-btn__block { padding-top: 3em; }
  .l-page .eviry-baseplayer, .l-page .eviry-screen { aspect-ratio: 48 / 33; height: auto !important; }
  .l-page .c-hotel__item .c-txt { padding: 1.5em 2em 2em; }
  .l-page .c-hotel__item .c-txt h3 { font-size: 1.75em; }
  .l-page .c-hotel__item .c-txt dt { font-size: .875em; padding: .25em 1em; width: 12.5em; }
  .l-page .c-hotel__item .c-txt dd + dt { margin-top: 1em; }
  .l-page .c-icon__list li img { width: 4em; }
  .l-page .c-list__title { margin: 2.5em 0; }
  .l-page .c-movie__txt .c-date { font-size: 1.125em; }
  .l-page .c-option__list dd { padding: 1.875em 2em; }
  .l-page .c-option__list .c-icon__list { flex-wrap: wrap; row-gap: 1em; }
  .l-page .c-product__item .c-txt { padding: 1.5em 2em; }
  .l-page .c-product__item-head .c-title { font-size: 7.1795vw; }
  .l-page .c-products__self .c-title { font-size: 1.5em; }
  .l-page .c-package__list { column-gap: 1.5em; margin-top: 1.5em; }
  .l-page .c-package__item { width: calc(calc(100% - 3em) / 3); }
  .l-page .c-sec { padding: 2em 0 4em; }
  .l-page .c-sec:nth-of-type(1) { margin-top: 2.75em; }
  .l-page .c-sec__head { margin-bottom: 1.5em; }
  .l-page .c-sec__title span { font-size: 3em; }
  .l-logo { padding: .5em 1em; }
  .l-logo img { width: 25%; }
  .l-mv { aspect-ratio: 2 / 1; padding: 0 4% 3em; }
  .l-mv, .l-mv::after { border-radius: 0 0 .75em .75em; }
  .l-mv__title { font-size: 7.6923vw; }
  .l-mv__column { left: 50%; padding: .5em 1em; translate: -50% 50%; width: 89vw; z-index: 2; }
  .l-mv__column img { margin-right: 1em; }
  .l-mv__column p { font-size: .8125em; }
  .l-mv__bnr { width: 56vw; }
  .sec-intro .c-column { margin-top: 3em; padding: 2em 1.5em; text-align: left; }
  .sec-intro .c-column p br { display: none; }
  .sec-plan__hp .c-plan__list { display: flex; flex-direction: column; margin-top: 3em; row-gap: 2em; }
  .l-page__subpage .l-mv__title span { font-size: .5em; }
  .l-contents__products--ivh .sec-intro, .l-contents__products--ovh .sec-intro { padding-bottom: 2em; }
  .sec-grade .c-sec:nth-of-type(1) { margin-top: 1em; }
  .sec-grade .c-outline .c-txt { margin-top: 1.5em; }
  .sec-grade .c-outline .c-txt h3 { font-size: 2em; }
  .sec-grade .c-outline .c-txt p br { display: none; }
  .sec-grade .c-icon__list li { width: 100%; }
  .pc-item { display: none; }
}
