@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Playfair+Display:wght@500&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-airplane:before { content: '\e801'; }
.ico-down-open:before { content: '\e802'; }
.ico-train:before { content: '\e803'; }
.ico-double_line:before { content: '\e804'; }
.ico-left-open:before { content: '\e805'; }
.ico-up-open:before { content: '\e806'; }
.ico-right-open:before { content: '\e807'; }
.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: 1236px; }
.l-page { font-family: 'Noto Sans JP', sans-serif; font-size: 16px; line-height: 1.45; text-align: center; text-box-edge: trim-both; width: 100%; }
.l-page * { box-sizing: border-box; }
.l-page a, .l-page a * { transition: all .4s ease; }
/* .l-page h1 { font-weight: 700; } */
.l-page h2, .l-page h3, .l-page h4 { font-weight: 500; }
.l-page button { font-size: 1em; }
.l-page em { color: #c8a412; display: block; font-family: "Playfair Display", serif; font-weight: 500; }
.l-page img { display: block; margin: 0 auto; width: 100%; }
.l-page p, .l-page li { font-weight: 400; }
.l-page section:nth-child(odd) { background-color: #fff; }
.l-page section:nth-child(even) { background-color: #f0eeed; }
.l-page strong { font-weight: 700; }
.l-page .c-box__wrap { display: flex; gap: 1.5em; }
.l-page .c-box { display: flex; flex-direction: column; }
.l-page .c-block__title { align-items: center; display: flex; }
.l-page .c-block__title::before { color: #c8a412; content: "\e804"; display: inline-block; font-family: "icon"; font-size: .3774em; margin-right: 1.667em; }
.l-page .c-btn { align-items: center; background-color: #bc311c; border-radius: .25em; color: #fff; display: flex; justify-content: space-between; width: 100%; }
.l-page .c-btn::after { content: "\f105"; display: inline-block; font-family: "icon"; transition: all .4s ease; }
.l-page .c-btn small { display: inline-flex; border: 1px solid #fff; padding: .25em .5em; }
.l-page .c-btn span { margin-right: auto; }
.l-page .c-btn__train::before { content: "\e803"; display: inline-block; font-family: "icon"; }
.l-page .c-btn__air::before { content: "\e801"; display: inline-block; font-family: "icon"; }
.l-page .c-inner { display: flex; flex-direction: column; margin: 0 auto; max-width: 1280px; text-align: left; width: 89%; }
.l-page .c-list li { display: list-item; list-style: disc; list-style-position: outside; margin-left: 1em; }
.l-page .c-sec__head { align-items: center; display: flex; flex-direction: column; gap: .5em; }
.l-page .c-sec__title { text-align: center; }
.l-page .c-sec__title span { display: block; }
.l-page .c-sec__title strong { display: block; font-size: 1.1667em; font-weight: 500; line-height: 1; }
.l-page .c-sec__title strong::first-letter { font-size: 1.4286em; }
.l-page .c-sec__title .c-label { background-color: #f0eeed; border: 1px solid #1f3b4b; margin: .5em auto 0; width: 5em; }
.l-page .c-special__block { display: flex; flex-direction: column; }
.l-page .c-special__box { background-color: #fff; border: 1px solid #1f3b4b; }
.l-page .c-special__head { border-bottom: 1px solid #1f3b4b; display: flex; padding-bottom: 1em; }
.l-page .c-special__head .c-head__number { align-items: center; background-color: #1f3b4b; display: flex; justify-content: center; position: relative; }
.l-page .c-special__head .c-head__number::before { background-color: #c8a412; content: ""; height: 2px; left: 0; position: absolute; top: 50%; transform: translateY(-50%); }
.l-page .c-special__head .c-head__number span { color: #fff; font-weight: 500; }
.l-page .c-special__head .c-head__title { margin-right: auto; }
.l-page .c-special__head .c-head__title h2 { font-weight: 500; }
.l-page .c-special__head .c-head__title em { font-size: .875em; }
.js-btn-page-top { bottom: 50px; cursor: pointer; display: none; position: fixed; right: 50px; z-index: 100; }
.js-btn-page-top a { background-color: #bc311c; border-radius: 50%; color: #fff; display: flex; flex-direction: column; justify-content: center; position: relative; }
.js-btn-page-top a::before { content: "\e806"; display: inline-block; font-family: "icon"; }
.is-fixed { left: 0; position:fixed; top: 0; z-index: 99; width: 100%; }

.l-mv { position: relative; width: 100%; }
.l-mv__title { display: flex; flex-direction: column; left: 50%; position: absolute; top: 50%; translate: -50% -50%; z-index: 1; }
.l-mv__logo { filter: drop-shadow(0 0 .75em #00000040); margin: 0 auto; }
.l-mv__txt--inner { background-color: #fff; box-decoration-break: clone; -webkit-box-decoration-break: clone; font-weight: 500; white-space: nowrap; }
.l-mv__txt strong { color: #bc311c; }
.l-mv__bg { display: grid; }
.l-mv__bg--pic { background-color: #000; }
.l-mv__bg--pic img { filter: brightness(.8) contrast(1.2); height: 100%; object-fit: cover; }
.l-anchor { position: relative; }
.l-anchor .c-inner { max-width: 1320px; }
.l-anchor__float { background-color: #1f3b4b; }
.l-anchor__list { display: flex }
.l-anchor__item { position: relative; width: 100%; }
.l-anchor__item a { color: #fff; display: grid; place-content: center; position: relative; width: 100%; }
.l-anchor__item a::after { bottom: 0; color: #c8a412; content: "\f107"; display: block; font-family: "icon"; left: 50%; line-height: 1; position: absolute; transition: all .4s ease; translate: -50% 0; }
.l-anchor__item span { font-weight: 500; }
.l-contents { background-color: #fff; color: #1f3b4b; }

.p-intro .c-box { align-items: center; background-color: #1f3b4b; color: #fff; }
.p-intro .c-box p { margin-bottom: auto; text-align: left; }
.p-intro .c-box__head { border-bottom: 1px solid #c8a412; display: inline-block; }
.p-intro .c-box__title em { font-size: .75em; }
.p-intro .c-btn::after { content: "\f107"; }
.p-special .c-point__list dt { font-weight: 500; }
.p-special .c-point__list dt span { color: #bc311c; }
.p-special .c-point__list dt strong { font-size: 2em; }
.p-special .c-point__list dd { background-color: #f0eeed; padding: 1em 1.5em; }
.p-special .c-point__info dt { background-color: #1f3b4b; display: grid; color: #fff; padding: 1em; place-content: center; }
.p-special .c-point__box { align-items: center; }
.p-special .c-point__box .c-special__title { display: inline-block; padding: 0 1.25em; position: relative; text-align: center; }
.p-special .c-point__box .c-special__title::before, .p-special .c-point__box .c-special__title::after { background-color: #1f3b4b; content: ""; height: 100%; position: absolute; top: 0; width: 2px; }
.p-special .c-point__box .c-special__title::before { left: 0; transform: rotate(-25deg); }
.p-special .c-point__box .c-special__title::after { right: 0; transform: rotate(25deg); }
.p-special .c-point__list { width: 100%; }
.p-special .c-tab__list { display: grid; grid-template-columns: repeat(3, 1fr); }
.p-special .c-tab { background-color: #1f3b4b; border-top: .5em solid #1f3b4b; color: #fff; cursor: pointer; display: grid; padding-bottom: .5em; place-content: center; transition: all .4s ease; width: 100%; }
.p-special .c-tab.is-selected { background-color: #fff; pointer-events: none; }
.p-special .c-tab.is-selected span { color: #1f3b4b; }
.p-special .c-panel__wrap { background-color: #fff; }
.p-special .c-panel { display: none; }
.p-special .c-panel.is-selected { animation: .8s slide-in; display: flex; flex-direction: column; }
.p-special .c-panel .c-entry__step { counter-reset: num;; }
.p-special .c-panel .c-entry { counter-increment: num; }
.p-special .c-panel .c-entry h4::before { content: counter(num) "."; font-size: 1.6em; padding-right: .5em; }
.p-special .c-panel .c-btn__block + p { padding-top: 1em; }
.p-special .c-point__get { background-color: #1f3b4b; color: #fff; display: flex; }
.p-special .c-point__get h3 + p { padding-top: .5em; }
.p-special .c-point__get--day { align-items: center; display: flex; }
.p-special .c-coupon__box { display: flex; }
.p-special .c-coupon__head { background: #e50012 url(/myjtb/campaign/coupon/images/bg-coupon-head.png) no-repeat 50% 50% / 37.5% auto; border-radius: .375em; padding: 1.5em; }
.p-special .c-coupon__area { background-color: #fff; border-radius: 100vh; color: #e50012; display: inline-grid; font-size: .875em; font-weight: 700; height: 2em; padding: 0 1.25em; place-content: center; }
.p-special .c-coupon__price { color: #fff; text-align: center; }
.p-special .c-coupon__data { display: flex; flex-direction: column; }
.p-special .c-coupon__data dl { display: grid; gap: .25em 1em; grid-template-columns: 32% 1fr; }
.p-special .c-coupon__data dt { background-color: #f3f8fb; display: grid; min-height: 4em; place-content: center; }
.p-special .c-coupon__data dd { align-items: center; display: flex; }
.p-special .c-hotel__item { background-color: #fff; gap: 1em; }
.p-special .c-hotel__item .c-btn__wrap { display: grid; gap: .5em; grid-template-columns: repeat(2, 1fr); }
.p-special .c-hotel__item .c-btn { align-items: center; background-color: #fff; border: 1px solid #bc311c; gap: .75em; height: 3.5em; }
.p-special .c-hotel__item .c-btn::before, .p-special .c-hotel__item .c-btn::after { color: #bc311c; }
.p-special .c-hotel__item .c-btn span { color: #bc311c; }
.p-special .c-hotel__area { align-items: center; background-color: #1f3b4b; color: #fff; display: flex; font-size: .875em; height: 2.5em; padding: 0 1em; }
.p-special .c-hotel__info { margin-bottom: auto; }
.p-special .c-hotel__info p { font-size: .875em; padding-top: 1em; }
.p-special .c-hotel__name { font-size: 1.125em; }
.p-special .c-bottom__btn .c-btn::before { font-size: 1.875em; }
.p-faq__list { display: flex; flex-direction: column; gap: .5em; text-align: left; width: 100%; }
.p-faq__item--q, .p-faq__item--a { position: relative; }
.p-faq__item--q { background-color: #1f3b4b; cursor: pointer; }
.p-faq__item--q::after { color: #c8a412; content: "\e802"; display: block; font-family: "icon"; position: absolute; right: 1.5em; top: 50%; transition: all .3s ease; transform: translateY(-50%); }
.p-faq__item--q p { color: #fff; font-weight: 500; }
.p-faq__item.is-open .p-faq__item--q::after { transform: rotate(-180deg) translateY(50%); }
.p-faq__item--a { padding-top: 1.25em; display: none; }
.p-faq__item--a a { color: #bc311c; }
.p-contact .c-box { background-color: #fff; border: 1px solid #1f3b4b; gap: .75em; max-width: 480px; width: 100%; }
.p-contact .c-box { padding: 1.75em 2.5em; }
.p-contact .c-box__title { border-bottom: 1px solid #1f3b4b; font-size: 1.25em; padding-bottom: .75em; text-align: center; }


@media screen and (min-width:768px){
  .breadcrumb-upper { margin: 0 auto 25px; max-width: 1280px; padding: 0; 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 .c-box__wrap { justify-content: center; }
  .l-page .c-block__title { font-size: 2em; }
  .l-page .c-btn { gap: .625em; height: 4em; padding: 0 1.5em; }
  .l-page .c-btn::before { font-size: 1.5em; }
  .l-page .c-btn span { font-size: 1.125em; }
  .l-page .c-btn:hover { background-color: #eb543e; }
  .l-page .c-btn:hover::after { transform: translateX(.5em); }
  .l-page .c-sec__title { font-size: 3em; }
  .l-page .c-sec__title span { font-size: .4167em; }
  .l-page .c-special__block { gap: 2.5em; }
  .l-page .c-special__box { padding: 2.5em; }
  .l-page .c-special__head { align-items: center; gap: 1.5em; justify-content: space-between; }
  .l-page .c-special__head .c-head__number { height: 4.75em; width: 7.5em; }
  .l-page .c-special__head .c-head__number::before { width: 1.2em; }
  .l-page .c-special__head .c-head__number span { font-size: 1.25em; }
  .l-page .c-special__head .c-head__title h2 { font-size: 2.5em; }
  .l-page .c-special__head .c-head__title em { padding-top: 1em; }
  .l-page .c-special__head .c-head__pic { width: 7.5em; }
  .l-page .c-special__title { font-size: 1.5em; }
  .js-btn-page-top a { height: 6.25em; padding-bottom: 1em; width: 6.25em; }
  .l-mv__title { gap: 5em; }
  .l-mv__logo { width: 27em; }
  .l-mv__txt--inner { font-size: 1.375em; padding: .4375em 1em; white-space: nowrap; }
  .l-mv__bg { grid-template-columns: repeat(3, 1fr); }
  .l-mv__bg--pic { height: 34em; }
  .l-anchor { height: 6.5em; }
  .l-anchor__float { padding: 1.75em 0; }
  .l-anchor__list { border-right: 1px solid #dedede80; }
  .l-anchor__item { border-left: 1px solid #dedede80; }
  .l-anchor__item a { height: 3em; padding-bottom: 1em; }
  .l-anchor__item a::after { font-size: 1.25em; }
  .l-anchor__item a:hover::after { bottom: -.25em; }
  .l-anchor__item span { position: relative; z-index: 1; }
  .l-anchor__float.is-fixed { padding: .5em; }
  .l-anchor__float.is-fixed .l-anchor__item a { height: 2.5em; }
  .l-anchor__float.is-fixed .l-anchor__item a::after { font-size: .9375em; }
  .l-anchor__float.is-fixed .l-anchor__item a span { font-size: 1em; }
  .l-contents { padding-bottom: 6.25em; }
  .l-contents .c-inner { gap: 5em; padding: 6.25em 0; }
  .p-intro .c-box { gap: 1.5em; padding: 2.5em 2em; width: 100%; }
  .p-intro .c-box__head { padding-bottom: 1em; }
  .p-intro .c-box__head span { font-size: 1.25em; }
  .p-intro .c-box__pic { margin: 0 auto; width: 10em; }
  .p-intro .c-box__title { text-align: center; }
  .p-intro .c-box__title h3 { font-size: 1.75em; }
  .p-intro .c-box__title em { padding-top: 1.5em; }
  .p-intro .c-btn:hover::after { transform: translate(0, .5em); }
  .p-special .c-point__list { align-items: center; display: grid; gap: 1.5em; grid-template-columns: 15em 1fr; margin-top: 2em; }
  .p-special .c-point__list dt { font-size: 1.25em; }
  .p-special .c-point__list li, .p-special .c-point__info dd { font-size: 1.125em; }
  .p-special .c-point__info { border-top: 1px solid #1f3b4b; margin-top: 2.5em; padding-top: 2.5em; }
  .p-special .c-point__info dd { padding-top: .5em; }
  .p-special .c-tab__list { gap: 1em; }
  .p-special .c-tab { height: 5em; }
  .p-special .c-tab span { font-size: 1.25em; }
  .p-special .c-panel__wrap { padding: 3em 5em; }
  .p-special .c-panel { gap: 3em; }
  .p-special .c-panel .c-entry__step { gap: 3em; }
  .p-special .c-panel .c-entry h4 { font-size: 1.25em; }
  .p-special .c-panel .c-entry h4 + * { padding-top: 1.25em; }
  .p-special .c-panel .c-btn__block { display: grid; gap: 1em; grid-template-columns: repeat(2, 1fr); }
  .p-special .c-plan__wrap { display: grid; gap: 3em; grid-template-columns: 40em 1fr; }
  .p-special .c-plan__wrap .c-box { gap: 1.5em; }
  .p-special .c-plan__wrap .c-btn + .c-btn { margin-top: 1em; }
  .p-special .c-point__info { align-items: flex-start; display: grid; grid-template-columns: 8.875em minmax(0, 1fr); gap: .625em 1.5em; }
  .p-special .c-point__get { padding: 3em 3.5em; }
  .p-special .c-point__get div { width: 100%; }
  .p-special .c-point__get h3 { font-size: 1.5em; }
  .p-special .c-point__get--day { border-left: 1px solid #c8a412; padding-left: 2.5em; }
  .p-special .c-coupon__box { gap: 3em; justify-content: space-between; }
  .p-special .c-coupon { width: 30em; }
  .p-special .c-coupon__price { font-size: 1.25em; }
  .p-special .c-coupon__price strong { font-size: 2.4em; }
  .p-special .c-coupon__data { gap: 2em; }
  .p-special .c-hotel__slider { display: grid; gap: 2.125em; grid-template-columns: repeat(3, 1fr); }
  .p-special .c-hotel__item { padding: 0 1.5em 1.5em; }
  .p-special .c-hotel__item .c-btn { padding: 0 .6875em; }
  .p-special .c-hotel__item .c-btn span { font-size: .8125em; }
  .p-special .c-hotel__item .c-btn:hover { background-color: #bc311c; }
  .p-special .c-hotel__item .c-btn:hover::before, .p-special .c-hotel__item .c-btn:hover::after, .p-special .c-hotel__item .c-btn:hover span { color: #fff; }
  .p-special .c-hotel__item .c-btn:hover::after { transform: translateX(.25em); }
  .p-special .c-hotel__item .c-hotel__pic { margin-left: -1.5em; margin-right: -1.5em; }
  .p-special .c-bottom__btn { display: grid; gap: 1.5em; grid-template-columns: repeat(2, 1fr); margin-top: 1.5em; }
  .p-special .c-bottom__btn .c-btn { gap: 1.125em; height: 4.875em; }
  .p-special .c-bottom__btn .c-btn span { font-size: 1.25em; }
  .p-faq__item--q, .p-faq__item--a { padding: 1.75em 2em; }
  .p-faq__item--q p { font-size: 1.125em; }
  .u-sp { display: none !important; }
}
@media screen and (min-width:1921px){
  .l-mv__logo { width: 23.3333vw; }
  /* .l-mv__txt { font-size: 1.1458vw; } */
  .l-mv__bg--pic { height: 27.0833vw; }
}

@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:1320px) {
  .l-page .c-btn::before { font-size: 1.8182vw; }
  .p-special .c-plan__wrap { grid-template-columns: 48.4848vw 1fr; }
  .p-special .c-hotel__slider { gap: 2.5758vw; }
  .p-special .c-hotel__item { padding: 0 1.8182vw 1.5em 1.8182vw; }
  .p-special .c-hotel__item .c-btn { gap: .6061vw; padding: 0 .8333vw; }
  .p-special .c-hotel__item .c-btn span { font-size: .9091vw; }
}

@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: 10px; }
  .js-btn-page-top a { height: 2.5em; width: 2.5em; }
  .js-btn-page-top a::before { font-size: .75em; }
  .l-page { font-size: 3.7209vw; }
  .l-page .c-block__title { font-size: 1.25em; }
  .l-page .c-box__wrap { flex-direction: column; }
  .l-page .c-btn { font-size: .8125em; gap: .625em; height: 4em; padding: 0 1em; }
  .l-page .c-btn::before { font-size: 1.5em; }
  .l-page .c-btn span { font-size: 1.125em; }
  .l-page .c-list li { font-size: .875em; }
  .l-page .c-sec__title { font-size: 2.5em; }
  .l-page .c-sec__title span { font-size: .4167em; }
  .l-page .c-special__block { gap: 1.5em; }
  .l-page .c-special__box { padding: 1.5em; }
  .l-page .c-special__head { flex-direction: column; gap: .5em; }
  .l-page .c-special__head .c-head__number { height: 2.5em; width: 8em; }
  .l-page .c-special__head .c-head__number::before { width: 1.5em; }
  /* .l-page .c-special__head .c-head__number span { font-size: 1.25em; } */
  .l-page .c-special__head .c-head__title h2 { font-size: 1.5em; }
  .l-page .c-special__head .c-head__pic { display: none; }
  .l-page .c-special__title { font-size: 1.125em; }
  .l-mv { aspect-ratio: 1 / 1; }
  .l-mv__title { gap: 3em; }
  .l-mv__logo { width: 57.6vw; }
  .l-mv__bg { grid-template-columns: repeat(2, 1fr); height: 100%; }
  .l-mv__txt--inner { font-size: 1.25em; line-height: 2.1; padding: .125em .375em; }
  .l-anchor { height: 3.5em; }
  .l-anchor__float .c-inner { width: 100%; }
  .l-anchor__list { justify-content: space-between; }
  .l-anchor__item { width: 100%; }
  .l-anchor__item + .l-anchor__item::before { background-color: #e6e6e6; bottom: .75em; content: ""; left: 0; position: absolute; top: .75em; width: 1px; }
  .l-anchor__item a { height: 3.5em; padding-bottom: .5em; }
  .l-anchor__item a::after { bottom: .5em; }
  .l-anchor__item a span { font-size: .65em; line-height: 1.1; text-align: center; }
  .l-contents .c-inner { gap: 2em; padding: 3em 0; }
  .p-intro .c-box { align-items: flex-start; gap: .75em; padding: 1em; position: relative; }
  .p-intro .c-box p { font-size: .875em; }
  .p-intro .c-box__title h3 { font-size: 1.5em; }
  .p-intro .c-box__pic { position: absolute; right: .75em; top: .5em; width: 25%; }
  .p-special .c-point__box .c-special__title { font-size: 1em; }
  .p-special .c-point__list dt { font-size: 1.25em; padding: 1em 0 .25em; text-align: center; }
  .p-special .c-point__info { margin-top: 2em; }
  .p-special .c-point__info dd { padding: 1em 0; }
  .p-special .c-tab__list { gap: .5em; }
  .p-special .c-tab { height: 3.5em; }
  .p-special .c-tab span { font-size: .8125em; }
  .p-special .c-panel__wrap { padding: 1.5em; }
  .p-special .c-panel { gap: 1.5em; }
  .p-special .c-panel .c-entry h4 + * { margin-top: .5em; }
  .p-special .c-panel .c-entry__step { gap: 1.5em; }
  .p-special .c-panel .c-entry__step .c-btn + .c-btn { margin-top: .5em; }
  .p-special .c-point__get { flex-direction: column; padding: 1em; }
  .p-special .c-point__get h3 { font-size: 1.25em; }
  .p-special .c-point__get--day { border-top: 1px solid #c8a412; margin-top: 1em; padding-top: 1em; }
  .p-special .c-plan__wrap .c-box { display: flex; flex-direction: column; gap: .75em; padding-top: 1em; }
  .p-special .c-plan__wrap .c-btn + .c-btn { margin-top: .5em; }
  .p-special .c-coupon__box { flex-direction: column; }
  .p-special .c-coupon__price { font-size: 1.5em; }
  .p-special .c-coupon__price strong { font-size: 2em; }
  .p-special .c-coupon__data { gap: 1em; padding-top: 1em; }
  .p-special .c-coupon__data dl { font-size: .875em; }
  .p-special .c-hotel__item { height: 100%; padding: 0 1em 1.5em; }
  .p-special .c-hotel__item .c-hotel__pic { margin-left: -1em; margin-right: -1em; }
  .p-special .c-hotel__item .c-btn span { font-size: 1em; }
  .p-special .c-hotel__info { margin-bottom: auto; }
  .p-special .c-hotel__slider .slick-track { display: flex; }
  .p-special .c-hotel__slider .slick-slide { height: auto; }
  .p-special .c-slide__nav { align-items: center; display: flex; gap: 1em; justify-content: center; margin: 0 auto; position: relative; }
  .p-special .c-slide__arrow .slick-arrow { background-color: #1f3b4b; border: none; border-radius: .25em; cursor: pointer; display: grid !important; height: 2em; place-content: center; transition: all .3s ease; width: 2em; z-index: 2; }
  .p-special .c-slide__arrow .slick-arrow::before { color: #fff; display: inline-block; font-family: "icon"; font-size: 1.25em; }
  .p-special .c-slide__arrow--prev .slick-arrow::before { content: "\f104"; }
  .p-special .c-slide__arrow--next .slick-arrow::before { content: "\f105"; }
  .p-special .c-slide__arrow .slick-disabled { background-color: #ccc; }
  .p-special .c-bottom__btn .c-btn + .c-btn { margin-top: .5em; }
  .p-faq__item--q { padding: .75em 1.875em .75em 1em; }
  .p-faq__item--q::after { font-size: .75em; right: 1em; }
  .p-faq__item--a { padding: .5em .5em 1em; }
  .slick-list { margin: 0 -.5em; }
  .slick-slide { margin: 0 .5em; }
  .u-pc { display: none !important; }
  #anchor_p-special_03 { overflow: hidden; }
}


/* 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: visible; 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: block; margin-left: auto; margin-right: auto; }
.slick-track:before, .slick-track:after { display: table; content: ''; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { display: flex; visibility: hidden; }
.slick-slide { display: none; float: left;  height: 100%; 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: 1em; }
.slick-dots { display: block; font-size: .75em; margin: 0; padding: 0; text-align: center; }
.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: #c4c4c4; content: ""; border-radius: 100vh; display: inline-block; height: .625em; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); transition: all .4s ease; width: .625em; }
.slick-dots li.slick-active button::before { background-color: #1f3b4b; }