@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@400;500;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; speak: none; text-align: center; text-decoration: inherit; text-transform: none; width: 1em; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.ico-arrow-right:before { content: '\e800'; }
.ico-pin:before { content: '\e801'; }
.ico-pagetop:before { content: '\e802'; }
.ico-arrow-bottom:before { content: '\e803'; }
.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 slideShow {
0% { opacity: 0; }
10% { opacity: 1; }
90% { opacity: 1; transform: scale(1); }
100% { opacity: 0; z-index: 0; }
}
@keyframes slideShowImg {
0% { transform: scale(1.2); }
90% {transform: scale(1); }
}
@keyframes pikopiko {
0% { transform: rotate(8deg); }
to { transform: rotate(-6deg); }
}
@keyframes yurayura {
0% , 100%{ transform: translateX(-.25em) rotate(4deg); }
50%{ transform: translateX(0) rotate(-3deg); }
}
@keyframes slide-in-up {
0% { opacity: 0; transform: translate3d(0,20px,0); }
100% { opacity: 1; transform: translate3d(0,0,0); }
}

.jtb-nav-breadcrumb { margin-bottom: 25px; max-width: 1280px; }
.l-page { font: 500 16px/1.6 "Zen Kaku Gothic Antique", sans-serif; width: 100%; }
.l-page__wrap { background: #edebe1 url(../images/bg_contents.png) 50% 0; color: #394a4d; text-align: center; width: 100%; }
.l-page * { -ms-box-sizing: border-box; box-sizing: border-box; }
.l-page a { color: #394a4d; }
.l-page a, .l-page a img { transition: all .4s ease; }
.l-page button { border: none; cursor: pointer; font-size: 16px; }
.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 { font-weight: 500; }
.l-page em { font-family: 'Roboto', sans-serif; font-weight: 700; }
.l-page img { display: block; margin: 0 auto; max-width: 100%; }
.l-page p { font-weight: 400; }
.l-page .c-bnr__list { margin-top: 1.5em; }
.l-page .c-bnr__item a { display: block; margin-bottom: .5em; }
.l-page .c-bnr__item img { margin: 0; width: 100%; }
.l-page .c-btn { border-radius: 100vh; display: inline-grid; place-content: center; position: relative; transition: all .4s ease; }
.l-page .c-btn span { align-items: center; color: #fff; display: flex; }
.l-page .c-btn__fill { background-color: #427986; }
.l-page .c-btn__white { background-color: #fff; border: .1875em solid #fff; }
.l-page .c-btn__white span { color: #427986; }
.l-page .c-btn__large { height: 4.75em; }
.l-page .c-btn__large::before, .l-page .c-btn__large::after { aspect-ratio: 85 / 38; background: url(../images/pattern_wave.png) no-repeat 50% 50% / cover; content: ""; display: block; position: absolute; top: 50%; width: 5.3125em; }
.l-page .c-btn__large::before { left: 0; translate: -50% -50%; }
.l-page .c-btn__large::after { right: 0; translate: 50% -50%; }
.l-page .c-btn__middle span::after, .l-page .c-btn__large span::after { content: "\e800"; display: inline-block; font-family: "icon"; font-size: 1.6rem; padding-left: 1em; transition: all .4s ease; }
.l-page .c-cap { font-size: .8125em !important; margin-top: 1em; }
.l-page .c-flex { display: flex; }
.l-page .c-flex__fdc { display: flex; flex-direction: column; }
.l-page .c-flex__jcsb { display: flex; justify-content: space-between; }
.l-page .c-inner { margin: 0 auto; max-width: 1280px; width: 89%; }
.l-page .c-label { border-radius: .25em; display: inline-grid; font-weight: 400; height: 2em; padding: 0 .5em; place-content: center; }
.l-page .c-label__fill { background-color: #59696c; color: #fff; }
.l-page .c-label__white { background-color: #fff; border: 1px solid #427986; color: #427986; }
.l-page .c-note { margin-top: 2em; }
.l-page .c-pic { border-radius: .25em; overflow: hidden; position: relative; }
.l-page .c-pic small { bottom: .75em; font-weight: 700; position: absolute; right: .8125em; text-align: right; text-shadow: 1px 1px 1px #fff, -1px 1px 1px #fff, 1px -1px 1px #fff, -1px -1px 1px #fff; width: calc(100% - 1.625em); }
.l-page .c-sec__head p { margin: 0 auto; max-width: 720px; text-align: left; }
.l-page .c-sec__head .c-sec__title { display: inline-block; position: relative; }
.l-page .c-sec__head .c-sec__title img { left: -2rem; position: absolute; top: -2rem; translate: -100% 0; }
.l-page .c-sec__head .c-sec__title span { color: #394a4d; display: block;  font-size: .7125em;}
.l-page .c-sub__title { display: flex; justify-content: flex-start; }
.l-page .ico-pin::before { color: #e2644b; }
.l-page .is-animated { animation: .8s slide-in-up; display: block; }
.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; }
.is-fixed { left: 0; position:fixed !important; top: 0; z-index: 99; width: 100%; }

.l-mv { position: relative; }
.l-mv__title { left: 0; position: absolute; top: 7.25em; z-index: 11; }
.l-mv__pic { position: relative; }
.l-mv__slide { animation: slideShow 30s infinite 0s; background: no-repeat 50% 50% / cover; height: 100%; inset: 0; opacity: 0; position: absolute; width: 100%; z-index: 10; }
.l-mv__slide:nth-of-type(2), .l-mv__slide:nth-of-type(2) img { animation-delay: 10s; }
.l-mv__slide:nth-of-type(3), .l-mv__slide:nth-of-type(3) img { animation-delay: 20s; }
.l-mv__slide img { animation: slideShowImg 30s infinite 0s; }
.l-mv__slide small { bottom: 1em; color: #fff; filter: drop-shadow(0 0 .5em rgba(0,0,0,.6)); font-size: .75em; font-weight: 400; position: absolute; right: 1em; }
.l-mv__nav { padding-top: 1.5em; }
.l-mv__nav ul { gap: .5em; justify-content: flex-end; }
.l-mv__figure img { margin: 0; }
.l-mv__figure img:nth-of-type(2), .l-mv__figure img:nth-of-type(3) { animation: pikopiko 2s steps(2, start) infinite; }
.l-mv__figure img:nth-of-type(3) { animation-delay: .75s; }
.l-anchor { position: relative; }
.l-anchor__float { background-color: #fff; }
.l-anchor__float::after { background: url(../images/bg_anchor.png) repeat-x 0 0 / auto 100%; bottom: -1em; content: ""; display: block; height: 1em; left: 50%; position: absolute; translate: -50% 0; width: 100%; }
.l-anchor__item { width: 100%; }
.l-anchor__item a { justify-content: center; position: relative; }
.l-anchor__item a span { position: relative; z-index: 3; }
.l-anchor__item a::after { color: #427986; content: "\e803"; display: inline-block; font-family: "icon"; line-height: 1; transition: all .4s ease; }

.sec-matsuri .c-sec__title { color: #427986; }
.sec-matsuri .c-local__nav--item { box-shadow: .375em .375em .5em 0 rgba(0,0,0,.05); position: relative; transition: all .4s ease; }
.sec-matsuri .c-local__nav--item .c-icon { left: 50%; position: absolute; top: 0; translate: -50% -50%; width: 3.75em; }
.sec-matsuri .c-local__nav--item .c-title { color: #427986; }
.sec-matsuri .c-local__nav--item .c-date { border-bottom: 1px solid #d5d5d5; border-top: 1px solid #d5d5d5; display: inline-block; font-size: .875em; line-height: 1; margin-top: .75em; padding: .75em 0; }
.sec-matsuri .c-local__nav--item a { background-color: #fff; border-radius: .625em; display: block; }
.sec-matsuri .c-local__nav--item a::after { color: #427986; content: "\e803"; display: block; font-family: "icon"; line-height: 1; padding-top: 1em; }
.sec-matsuri__guide { position: relative; }
.sec-matsuri__guide .c-figure { left: -1.5em; position: absolute; }
.sec-matsuri__guide .c-txt { background: url(../images/bg_lantern_01.png) no-repeat 100% 0 / 42%; text-align: left; }
.sec-matsuri__guide .c-txt .c-title { font-weight: 500; }
.sec-matsuri__guide .c-txt .c-data, .sec-matsuri__more--item .c-data { flex-wrap: wrap; }
.sec-matsuri__guide .c-txt .c-line { border-bottom: 1px solid #427986; padding: 1em 0; }
.sec-matsuri__guide .c-txt .c-schedule dt { color: #427986; }
.sec-matsuri__guide .c-txt .c-schedule li { gap: .5em; }
.sec-matsuri__guide .c-txt .c-schedule li p { font-size: .9375em; }
.sec-matsuri__point { margin-top: 2.5em; }
.sec-matsuri__point--head img { margin: 0 .5em 0 0; width: 11.2rem; }
.sec-matsuri__point--item { flex-direction: column; gap: .75em; text-align: left; width: 100%; }
.sec-matsuri__point--item .c-txt { gap: .75em; }
.sec-matsuri__point--item .c-label + span { padding-left: .5em; }
.sec-matsuri__point--item .c-title { font-size: 1.5em; }
.sec-matsuri__more--head { background: url(../images/bg_lantern_02_left.png) 0 0, url(../images/bg_lantern_02_right.png) 100% 0; background-repeat: no-repeat; }
.sec-matsuri__more--item { background-color: rgba(255,255,255,.5); padding: 2em; position: relative; text-align: left; width: 100%; }
.sec-matsuri__more--item .c-txt { gap: .5em; }
.sec-matsuri__more--item .c-txt h3 { font-size: 2em; }
.sec-tour { background-color: #e5e0c4; }
.sec-tour .c-sec__title { color: #3e7d44; }
.sec-cruise { background-color: #f5f4f0; }
.sec-cruise .c-btn { background-color: #3e557d; }
.sec-cruise .c-sec__title { color: #3e557d; }
.sec-cruise__column { background-color: #fff; position: relative; text-align: left; }
.sec-cruise__column::before, .sec-cruise__column::after { aspect-ratio: 221 / 41; background: url(../images/pattern_wagara.png) no-repeat 0 0 / cover; content: ""; display: block; position: absolute; }
.sec-cruise__column::before { bottom: 1.5em; left: -3.75em; transform: scale(-1, 1); }
.sec-cruise__column::after { right: -3.75em; top: 1.5em; }
.sec-cruise__column .c-title { color: #427986; font-size: 1.5em; font-weight: 500; margin-bottom: .5em; }
.sec-cruise__item a { height: 100%; transition: all .4s ease; }
.sec-cruise__item .c-pic { overflow: visible; }
.sec-cruise__item .c-txt { background-color: #fff; padding: .75em 1.25em 1.25em; text-align: left; }
.sec-cruise__item .c-title, p.plan__item-title { font-size: 1.25em; font-weight: 500; }
.sec-cruise__price, .plan__item-price { color: #cc0000; text-align: center; }
.sec-cruise__price span { color: #394a4d; display: block; font-size: 1.2rem; }
.sec-recommend .c-sec__title, .sec-faq .c-sec__title { color: #427986; }
.sec-faq__list { gap: 1em; }
.sec-faq__item { background-color: #fff; text-align: left; }
.sec-faq__item--q, .sec-faq__item--a { position: relative; }
.sec-faq__item--q::before, .sec-faq__item--a::before { color: #427986; line-height: 1; position: absolute; }
.sec-faq__item--q::before { content: "Q." }
.sec-faq__item--a::before { content: "A." }
.sec-recommendtour { padding-bottom: 0 !important; }
.select-departure { margin-top: 3em; }
.select-departure__input { display: none; }
.select-departure__panel { display: flex; }
.select-departure__panel li { background-color: #fff; border-radius: .25em; cursor: pointer; display: grid; place-content: center; transition: background-color .4s ease; }
.select-departure__panel li.is-active { background-color: #3e7d44; color: #fff; }
.ly_grid { display: flex; }
.ly_grid + p { font-size: .875em; margin-top: 2em; }
.ly_grid__item { background-color: #fff; transition: all .4s ease; }
.ly_grid__item a { display: flex; flex-direction: column; height: 100%; }
.plan__item-images figure { margin: 0; position: relative; width: 100%; }
.plan__item-area figcaption { bottom: .5em; font-size: .6125em; font-weight: 700; position: absolute; right: .5em; text-shadow: 1px 1px 1px #fff, -1px 1px 1px #fff, 1px -1px 1px #fff, -1px -1px 1px #fff; }
.plan__item-destination { display: flex; gap: .5em; padding: .75em 1.25em 0; }
.esplan__item-detail-icon li { background-color: #eaf0f7; border-radius: .625em; display: inline-grid; font-size: 1.4rem; height: 1.75em; line-height: 1; padding: 0 .5em; place-content: center; position: relative; }
.plan__item-detail { display: flex; flex-direction: column; gap: .5em; height: 100%; padding: .75em 1.25em 1.25em; text-align: left; }
.plan__item-lead { margin-bottom: auto; }
.plan__item-note { font-size: 1.2rem; font-weight: 500; text-align: center; }
.ranking__bt a { background-color: #3e7d44; border-radius: 100vh; color: #fff; display: inline-grid; font-weight: 500; place-content: center; position: relative; transition: all .4s ease; }
.ranking__bt a::before, .ranking__bt a::after { aspect-ratio: 85 / 38; background: url(../images/pattern_wave.png) no-repeat 50% 50% / cover; content: ""; display: block; position: absolute; top: 50%; width: 8.5rem; }
.ranking__bt a::before { left: 0; translate: -50% -50%; }
.ranking__bt a::after { right: 0; translate: 50% -50%; }
.recommend-sect__inner > div { display: none; }


@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__wrap { background-size: 1440px auto; }
  .l-page a:hover img { opacity: .7; }
  .l-page .c-bnr__block { margin-top: 4em; }
  .l-page .c-bnr__list { display: flex; gap: 3em 1em; grid-template-columns: repeat(auto-fit, minmax(218px, 1fr)); flex-wrap: wrap; }
  .l-page .c-bnr__item { width: calc(95% / 4); }
  .l-page .c-btn__small { height: 2.875em; width: 14.375em; }
  .l-page .c-btn__middle { height: 3.25em; width: 22.25em; }
  .l-page .c-btn__large { min-width: 576px; padding: 0 5em; }
  .l-page .c-btn__large span { font-size: 1.5em; }
  .l-page .c-btn__fill:hover { background-color: #4194a8; }
  .l-page .c-btn__white:hover { border-color: #4194a8; }
  .l-page .c-btn:hover span::after {transform: translateX(.5em); }
  .l-page .c-btn__block { padding-top: 5em; }
  .l-page .c-label { font-size: 1.5rem; }
  .l-page .c-pic small { font-size: .625em; }
  .l-page .c-sec { padding: 5em 0; }
  .l-page .c-sec__head p { padding-top: 2em; }
  .l-page .c-sec__title { font-size: 3.375em; }
  .l-page .c-sec__head .c-sec__title img { width: 13rem; }
  .l-page .c-sub__title { font-size: 2em; }
  .l-mv { padding: 3.75em 0 3em; }
  .l-mv__title { width: 22.8125%; }
  .l-mv__pic { aspect-ratio: 30 / 17; border-radius: .375em; margin-left: auto; overflow: hidden; width: 84.375%; }
  .l-mv__figure { bottom: 3em; gap: 1.5em; left: 5em; position: absolute; z-index: 12; }
  .l-mv__figure img { width: 9.875em; }
  .l-anchor, .l-anchor__item a { height: 6em; }
  .l-anchor__list { gap: 1.5em; }
  .l-anchor__item a { padding-bottom: 1em; }
  .l-anchor__item a::after { bottom: .5em; left: 50%; position: absolute; translate: -50% 0; z-index: 2; }
  .l-anchor__item a::before { background-color: #f2efe1; border-radius: .25em; content: ""; inset: .25em; opacity: 0; position: absolute; transition: all .4s ease; width: calc(100% - .5em); z-index: 1; }
  .l-anchor__item a:hover::after { translate: -50% .25em; }
  .l-anchor__item a:hover::before { opacity: 1; }
  .is-fixed.l-anchor__float::after { bottom: -.6em; height: .6em; }
  .is-fixed .l-anchor__item a { height: 4.5em; }
  .is-fixed .l-anchor__item a span { font-size: .8em; }
  .sec-matsuri .c-local__nav { gap: 2em; justify-content: center; margin-top: 4.5em; }
  .sec-matsuri .c-local__nav--item:hover { transform: translateY(-1.5em); }
  .sec-matsuri .c-local__nav--item a { padding: 3em 1em 2em; width: 20.75em; }
  .sec-matsuri .c-local__nav--item .c-title { font-size: 2.1875em; }
  .sec-matsuri__list { gap: 6.25em; margin-top: 6.25em; }
  .sec-matsuri__guide { align-items: flex-start; gap: 2.25em; justify-content: space-between; }
  .sec-matsuri__guide .c-pic { width: 39.0625%; }
  .sec-matsuri__guide .c-txt { flex: 1; }
  .sec-matsuri__guide .c-txt .c-title { font-size: 3em; }
  .sec-matsuri__guide .c-txt .c-data dt, .sec-matsuri__more--item .c-data dt { margin: .2rem 0; width: 5.5em; }
  .sec-matsuri__guide .c-txt .c-data dd, .sec-matsuri__more--item .c-data dd { font-size: 1.125em; margin: .2rem 0; padding-left: .75em; width: calc(100% - 8.8rem); }
  .sec-matsuri__guide .c-txt .c-schedule { align-items: center; }
  .sec-matsuri__guide .c-txt .c-schedule dt { font-size: 1.125em; }
  .sec-matsuri__guide .c-txt .c-schedule dd { flex: 1; padding-left: 1.5em; }
  .sec-matsuri__guide .c-txt .c-schedule ul { display: flex; flex-wrap: wrap; gap: .5em; }
  .sec-matsuri__guide .c-txt .c-btn__block, .sec-matsuri__more--item .c-btn__block { padding-top: 1.5em; text-align: right; }
  .sec-matsuri__guide .c-figure { bottom: 0; width: 7.875em; }
  .sec-matsuri__point--list { gap: 2.625em; justify-content: space-between; margin-top: 2em; }
  .sec-matsuri__more { margin-top: 5em; }
  .sec-matsuri__more--head { background-size: 10em; display: inline-block; padding: 0 11em 3em; }
  .sec-matsuri__more--head .c-title { font-size: 2.5em; }
  .sec-matsuri__more--list { flex-wrap: wrap; gap: 2.5em; justify-content: space-between; }
  .sec-matsuri__more--item { width: calc(50% - 1.25em); }
  .sec-matsuri__more--item .c-pic { right: 1em; top: 1em; position: absolute; width: 30%; }
  .sec-matsuri__more--item .c-txt { height: 100%; }
  .sec-matsuri__more--item .c-txt p { margin-bottom: auto; }
  .sec-recommendtour { padding-top: 3.5em !important; }
  .sec-cruise .c-btn:hover { background-color: #3c61a0; }
  .sec-cruise__column { margin: 3em auto 0; padding: 2em; width: calc(100% - 6em); }
  .sec-cruise__column::before, .sec-cruise__column::after { width: 13.75em; }
  .sec-cruise__column .c-pic { width: 23.6111vw; }
  .sec-cruise__column .c-txt { flex: 1; padding-left: 2em; }
  .sec-cruise__list { gap: 2.5em; justify-content: center; margin-top: 4em; }
  .sec-cruise__item { width: calc(calc(100% - 5em) / 3); }
  .sec-cruise__item a:hover { transform: scale(1.05); }
  .sec-cruise__item .c-txt { height: 100%; gap: 1em; }
  .sec-cruise__price, .plan__item-price { font-size: 1.8056vw; }
  .sec-cruise__item p { margin-bottom: auto; }
  .sec-faq { padding-bottom: 5em; }
  .sec-faq__list { margin-top: 3em; }
  .sec-faq__item { padding: 2.5em; }
  .sec-faq__item--q, .sec-faq__item--a { padding-left: 4rem; }
  .sec-faq__item--q { font-size: 2rem; }
  .sec-faq__item--q::before, .sec-faq__item--a::before { font-size: 2.5rem; left: 0; }
  .sec-faq__item--a { padding-top: 1em; }
  .select-departure__panel { gap: 1em; justify-content: center; }
  .select-departure__panel li { flex: 1; font-size: 1.25em; height: 2.5em; max-width: 180px; }
  .select-departure__panel li:hover { background-color: #e4ede5; }
  .select-departure__panel li.is-active { pointer-events: none; }
  .ly_grid { gap: 2.5em; flex-wrap: wrap; justify-content: space-between; }
  .ly_grid__item { width: calc(calc(100% - 5em) / 3); }
  .ly_grid__item:hover { transform: scale(1.05); }
  .ranking__bt { margin-top: 3.5em; }
  .ranking__bt a { font-size: 1.5em; height: 7.6rem; min-width: 576px; padding: 0 8rem; }
  .ranking__bt a:hover { background-color: #3a9943; }
  .htl-sitemap { padding: 3.125em 0; text-align: left; }
  .htl-sitemap_dl { display: flex; flex-wrap: wrap; min-width: 970px; max-width: 1246px; padding: 0 .375em; }
  .htl-sitemap_dl dt {  width: 12rem; }
  .htl-sitemap_dl dd { width: calc(100% - 12rem); }
  .htl-sitemap_dl dt:not(:first-of-type), .htl-sitemap_dl dd:not(:first-of-type) { margin-top: 2rem; }
  .htl-sitemap_list { margin: -1rem 0 0 0; }
  .htl-sitemap_list li { margin: 1rem 0 0 1rem; padding-left: 1rem; border-left: dotted 1px #ccc; }
}

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

@media screen and (min-width:1281px){
  .sec-cruise__price, .plan__item-price { font-size: 1.625em; }
}

@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 { font-size: 13px; margin-bottom: 20px; padding: 0 1%; }
  .l-page__wrap { background-size: 200% auto; }
  .l-page .c-bnr__block { margin-top: 3em; }
  .l-page .c-bnr__list { display: grid; gap: 1em; grid-template-columns: repeat(2, 1fr); }
  .l-page .c-btn span { font-size: 1.125em; }
  .l-page .c-btn__small { height: 2.5em; width: 15em; }
  .l-page .c-btn__middle { height: 3em; width: 85%; }
  .l-page .c-btn__large { width: 100%; }
  .l-page .c-btn__large::before, .l-page .c-btn__large::after { font-size: .75em; }
  .l-page .c-btn__large::before { left: 1.25em; }
  .l-page .c-btn__large::after { right: 1.25em; }
  .l-page .c-btn__large span { font-size: clamp(1.45rem, 1.307rem + 0.61vw, 1.6rem); }
  .l-page .c-btn__middle span::after, .l-page .c-btn__large span::after { font-size: 1.25rem; padding-left: .5em; }
  .l-page .c-btn__block { padding-top: 2.5em; }
  .l-page .c-data { gap: .25em 0; }
  .l-page .c-data .c-label { width: 5.5em; }
  .l-page .c-data dd { font-size: 1.125em; padding-left: .75em; width: calc(100% - 5em); }
  .l-page .c-flex__fdc--sp { flex-direction: column; gap: 2em; }
  .l-page .c-label { font-size: clamp(1rem, 0.881rem + 0.51vw, 1.125rem); }
  .l-page .c-local__nav--item { width: 100%; }
  .l-page .c-local__nav--item a { padding: 2em 1em 1em; }
  .l-page .c-pic small { font-size: .75em; }
  .l-page .c-sec { padding: 3.5em 0; }
  .l-page .c-sec__head p { font-size: 1.5rem; padding-top: 1em; }
  .l-page .c-sec__head .c-sec__title { font-size: 2em; }
  .l-page .c-sec__head .c-sec__title img { left: 0; width: 3em; }
  .l-page .c-sub__title { font-size: 1.5em; }
  .l-page .c-txt .c-btn__block { padding-top: 1em; text-align: right; }
  .l-mv { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); padding: .5em 0 2em; width: 100vw; }
  .l-mv__title { left: 2%; top: 8.25em; width: 42%; }
  .l-mv__pic { aspect-ratio: 30 / 17; border-radius: .375em; margin: 0 auto; overflow: hidden; width: calc(100% - .5em); }
  .l-mv__figure { gap: 1em; justify-content: flex-end; padding: 0 3%; }
  .l-mv__figure img { width: 12%; }
  .l-mv__nav ul { align-items: flex-end !important; flex-direction: column; padding: 0 3%; }
  .l-anchor .c-inner { width: 100%; }
  .l-anchor__float::after { bottom: -.625em; height: .625em; }
  .l-anchor__item a { padding: .75em 0; }
  .l-anchor__item a::after { font-size: .75em; }
  .l-anchor__item a span { font-size: 1.1rem; padding-bottom: .5em; }
  .is-fixed .l-anchor__item a { height: 100%; padding: .5em 0; }
  .sec-matsuri .c-local__nav { margin-top: 2.5em; }
  .sec-matsuri .c-local__nav--item .c-title { font-size: 1.75em; }
  .sec-matsuri__list { gap: 3em; margin-top: 3em; }
  .sec-matsuri__guide .c-figure { top: 40vw; width: 5.5em; }
  .sec-matsuri__guide .c-txt .c-schedule dd ul { display: flex; gap: .375em; flex-direction: column; }
  .sec-matsuri__more { margin-top: 3em; }
  .sec-matsuri__more--head { background-size: 6em auto; padding-bottom: 1em; }
  .sec-matsuri__more--head .c-title { font-size: 1.75em; }
  .sec-matsuri__more--item .c-pic { width: 100%; }
  .sec-matsuri__more--item .c-txt { margin-top: 1.25em; }
  .sec-matsuri__more--item .c-txt h3 { line-height: 1.4; }
  .sec-matsuri__more--item .c-txt p, .sec-matsuri__guide .c-txt .c-line, .sec-cruise__column p, .sec-cruise__item p, .plan__item-lead { font-size: 1.5rem; }
  .sec-matsuri__guide .c-txt .c-title { font-size: 2em; }
  .sec-matsuri__guide .c-txt .c-data { margin-top: .5em; }
  .sec-matsuri__guide .c-txt .c-schedule { flex-direction: column; }
  .sec-matsuri__guide .c-txt .c-schedule dt { transform: translateY(-.8rem); }
  .sec-matsuri__point--list { flex-direction: column; }
  .sec-matsuri__point--item { margin-top: 2em; }
  .sec-matsuri__point--item p { font-size: 1.5rem; }
  .sec-recommendtour { padding-top: 2em !important; }
  .sec-cruise__column { margin-top: 2em; padding: 1.5em; }
  .sec-cruise__list { margin-top: 3em; }
  .sec-cruise__item .c-txt { gap: .5em; }
  .sec-cruise__price, .plan__item-price { font-size: 6.5vw; }
  .sec-faq__list { margin-top: 2em; }
  .sec-faq__item { padding: 1.5em; }
  .sec-faq__item--q, .sec-faq__item--a { padding-left: 2.5rem; }
  .sec-faq__item--a { padding-top: 1em; }
  .sec-faq__item--q::before, .sec-faq__item--a::before { font-size: 1.5rem; left: 0; }
  .select-departure__panel { column-gap: 2px; display: grid; grid-template-columns: repeat(auto-fit, calc(calc(100% - 6px) / 4)); justify-content: center; row-gap: 2px; }
  .select-departure__panel li { height: 3em; width: 100%; }
  .ly_grid { flex-direction: column; gap: 2em; }
  .ranking__bt { margin-top: 2em; }
  .ranking__bt a { font-size: 1.25em; height: 3.8em; width: 100%; }
  .ranking__bt a::before, .ranking__bt a::after { width: 12.7488vw; }
  .ranking__bt a::before { left: 1.25em; }
  .ranking__bt a::after { right: 1.25em; }
  .htl-sitemap { margin-top: 2em; }
  .htl-sitemap_dl dt { padding: 1em 2em 1em 1em; text-align: left; }
  .htl-sitemap_dl dt:not(:first-of-type) { border-top: solid 1px #eee; }
  .htl-sitemap_dl dd { display: none; }
  .htl-sitemap_list { margin-right: .3rem; }
  .htl-sitemap_list li { margin: .3rem 0 0 .3rem; width: calc(100% / 2 - .3rem); }
  .htl-sitemap_list li a { display: flex; align-items: center; padding: .5rem 1rem; min-height: 50px; height: 100%; line-height: 1.3; border-radius: .3rem; background: #fff; text-align: left; }
  .js-accordion-sp { position: relative; }
  .js-accordion-sp a { pointer-events: none; }
  .js-accordion-sp:after { position: absolute; right: 1.5rem; top: 1rem; content: "\f107"; display: inline-block; font-family: "icon"; transition: all .2s ease; font-size: 1.8rem; }
  .js-accordion-sp.is-open:after { transform: rotateZ(-180deg); }
}
