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

body { background-color: #fff; }
.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 { color: #333; }
.l-page a, .l-page a * { transition: all .4s ease; }
.l-page h1, .l-page h2, .l-page h3, .l-page h4 { font-weight: 700; }
.l-page button { font-size: 1em; }
.l-page em { font-family: "Roboto", sans-serif; font-weight: 700; }
.l-page img { display: block; margin: 0 auto; width: 100%; }
.l-page strong { font-weight: 700; }
.l-page .c-banner__wide { background-color: #f6f6f6; }
.l-page .c-banner__list { display: flex; flex-direction: column; }
.l-page .c-banner__item .c-cassette__title { padding-bottom: .75em; }
.l-page .c-block__title { padding-left: 1.75em; position: relative; }
.l-page .c-block__title::before, .l-page .c-block__title::after { border-radius: 50%; content: ""; position: absolute; top: 50%; transform: translateY(-50%); }
.l-page .c-block__title::before { border: 2px solid #f3650f; height: 1em; left: 0; width: 1em; }
.l-page .c-block__title::after { background-color: #f3650f; left: .3125em; height: .625em; width: .625em; }
.l-page .c-bottom__link { text-align: right; }
.l-page .c-bottom__link::after { color: #e34110; content: "\f105"; display: inline-block; font-family: "icon"; padding-left: .5em; }
.l-page .c-btn { background: linear-gradient(90deg, #e34110 0%, #f8700e 50%, #e34110 100%); background-position: 0 50%; background-size: 200% auto; color: #fff; transition: background-position .4s ease-in-out; border-radius: .375em; display: grid; margin: 0 auto; place-content: center; position: relative; width: 100%; }
.l-page .c-btn span { color: #fff; font-weight: 500; }
.l-page .c-campaign__slider .c-cassette__item { height: 100%; }
.l-page .c-campaign__slider .slick-track { display: flex; }
.l-page .c-campaign__slider .slick-slide { height: auto; }
.l-page .c-card__list .c-cassette__item { background-color: #fff; border-radius: 0 0 .375em .375em; box-shadow: 0 0 .75em 0 #00000026; }
.l-page .c-cassette__item { display: flex; flex-direction: column; gap: 1em; }
.l-page .c-cassette__item p { font-size: .875em; }
.l-page .c-cassette__term { align-items: center; display: flex; gap: 1em; margin-top: auto; }
.l-page .c-cassette__term .c-label { border: 1px solid #f3650f; border-radius: .3333em; display: inline-grid; height: 2em; padding: 0 .6667em; place-content: center; }
.l-page .c-cassette__term .c-label.u-active { background-color: #f3650f; color: #fff; }
.l-page .c-cassette__term .c-label.u-upcoming { background-color: #fff; color: #f3650f; }
.l-page .c-inner { display: flex; flex-direction: column; margin: 0 auto; max-width: 1160px; text-align: left; width: 89%; }
.l-page .c-sec__title { font-weight: 500; position: relative; text-align: center; }
.l-page .c-sec__title::after { background: linear-gradient(90deg, #e34110 0%, #e34110 50.48%, #f8700e 100%); border-radius: 100vh; bottom: -.75em; content: ""; display: inline-block; height: 2px; left: 50%; position: absolute; transform: translateX(-50%); width: 2.4444em; }
.l-page .c-slide__nav { align-items: center; display: flex; gap: 1.5em; justify-content: center; margin: 0 auto; position: relative; }
.l-page .c-slide__arrow .slick-arrow { background-color: #fff; border: 2px solid #f3650f; border-radius: 50%; cursor: pointer; display: grid; height: 2.5em; place-content: center; transition: all .3s ease; width: 2.5em; z-index: 2; }
.l-page .c-slide__arrow .slick-arrow::before { color: #f3650f; display: inline-block; font-family: "icon"; font-size: 1.5em; }
.l-page .c-slide__arrow--prev .slick-arrow::before { content: "\f104"; }
.l-page .c-slide__arrow--next .slick-arrow::before { content: "\f105"; }
.l-page .c-slide__arrow .slick-disabled { border-color: #ccc; }
.l-page .c-slide__arrow .slick-disabled::before { color: #ccc; }
.l-page .c-tags { align-items: center; display: flex; gap: .375em; }
.l-page .c-tag { background-color: #fff; border: 1px solid #dedede; border-radius: 100vh; display: inline-grid; font-size: .75em; height: 2em; padding: 0 1.3333em; place-content: center; }
.l-page .c-tag.u-kaigai, .l-page .c-tag.u-kokunai, .l-page .c-tag.u-other { color: #fff; font-weight: 500; }
.l-page .c-tag.u-kaigai { background-color: #007acf; border-color: #007acf; }
.l-page .c-tag.u-kokunai { background-color: #e5000f; border-color: #e5000f; }
.l-page .c-tag.u-other { background-color: #666; border-color: #666; }
.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; top: 0; z-index: 99; width: 100%; }

.l-mv { align-items: center; display: flex; flex-direction: column; justify-content: center; width: 100%; }
.l-anchor { position: relative; }
.l-anchor .c-inner { max-width: 1320px; }
.l-anchor__float { background-color: #fff; border-bottom: 1px solid #e6e6e6; }
.l-anchor__list { display: flex }
.l-anchor__item { position: relative; width: 100%; }
.l-anchor__item a { display: grid; place-content: center; position: relative; width: 100%; }
.l-anchor__item a::after { background: linear-gradient(90deg, #e34110 0%, #e34110 50.48%, #f8700e 100%);
 bottom: 0; content: "\f107"; display: block; font-family: "icon"; left: 50%; line-height: 1; position: absolute; transition: all .4s ease; translate: -50% 0; -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.l-anchor__item span { font-weight: 500; }
.l-anchor__float.is-fixed { background: linear-gradient(90deg, #e34110 0%, #e34110 50.48%, #f8700e 100%);
border-bottom: none; }
.l-anchor__float.is-fixed .l-anchor__item a::after { background: none; color: #fff; -webkit-text-fill-color: #fff; }
.l-anchor__float.is-fixed .l-anchor__item a span { color: #fff; }
.l-contents { background-color: #fff; }
.l-myjtb { border-bottom: 1px solid #e6e6e6; }
.l-myjtb__login .c-catch span { color: #e34110; }
.l-myjtb__join ul { display: flex; flex-direction: column; }
.l-myjtb__join li::before { color: #e34110; content: "\f105"; display: inline-block; font-family: "icon"; padding-right: .5em; }
.l-sns { display: flex; flex-direction: column; }
.l-sns__list { align-items: center; display: flex; justify-content: center; }
.p-primary .c-bottom__link { padding-top: 3em; }
.p-secondary { background-color: #f6f6f6; overflow: hidden; }
.p-faq__list { border-top: 1px solid #e6e6e6; }
.p-faq__item { border-bottom: 1px solid #e6e6e6; display: flex; flex-direction: column; gap: 1em; }
.p-faq__item--q, .p-faq__item--a { min-height: 2.5em; padding-left: 3.5em; position: relative; }
.p-faq__item--q { padding-top: .625em; }
.p-faq__item--q p { font-weight: 500; }
.p-faq__item--q::before, .p-faq__item--a::before { color: #f3650f; display: grid; font-size: 1.5em; font-family: "Roboto", sans-serif; height: 1.6667em; left: 0; place-content: center; position: absolute; top: 0; width: 1.6667em; }
.p-faq__item--q::before { background-color: #f6f6f6; border-radius: 50%; content: "Q"; }
.p-faq__item--a { padding-top: .375em; }
.p-faq__item--a p a { color: #eb6d13; }
.p-faq__item--a::before { content: "A"; }
.p-archive .c-tab__wrap p { padding-top: 1.5em; text-align: right; }
.p-archive .c-tab__list, .p-archive .c-tab { display: grid; }
.p-archive .c-tab { background-color: #fff; border: 1px solid #ccc; border-radius: .3125em; place-content: center; transition: background-color .4s ease; }
.p-archive .c-tab.is-selected { background-color: #f6f6f6; pointer-events: none; }
.p-archive .c-panel { display: none; }
.p-archive .c-panel.is-selected { animation: .8s slide-in; display: flex; flex-direction: column; }
.p-archive .c-archive__list { border-top: 1px solid #e6e6e6; display: flex; flex-direction: column; gap: 1.5em; margin-top: 1.5em; padding-top: 1.5em; }
.p-archive .c-archive__list li { border-bottom: 1px solid #e6e6e6; display: list-item; list-style: disc; list-style-position: outside; margin-left: 1em; }
.p-archive .c-archive__list li a { color: #3498db; }
.p-archive .c-archive__list li p { font-size: .875em; padding-top: .75em; }
.l-page__top .l-mv { background: url(../_images/bg_mv.png) no-repeat 50% 50% / cover; }
.l-page__end .l-mv { background-color: #f6f6f6; }


@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 a:hover img { opacity: .7; }
  .l-page .c-banner__wide { padding: 3em 5.3125em; }
  .l-page .c-banner__wide + * { margin-top: 3.5em; }
  .l-page .c-banner__list { gap: 2.5em; }
  .l-page .c-block__title { margin-bottom: 2.5em; }
  .l-page .c-block__title span { font-size: 1.5em; }
  .l-page .c-btn { max-width: 490px; }
  .l-page .c-btn span { font-size: 1.125em; }
  .l-page .c-btn:hover { background-position: 100% 50%; }
  .l-page .c-card__list .c-cassette__item { padding: 0 1.5em 1.5em; }
  .l-page .c-card__list .c-cassette__bnr { margin-left: -1.5em; margin-right: -1.5em; }
  .l-page .c-card__list a.c-cassette__item:hover { transform: scale(1.05); }
  .l-page .c-card__list a.c-cassette__item:hover img { opacity: 1; }
  .l-page .c-cassette__title { font-size: 1.125em; }
  .l-page .c-sec__title { font-size: 2.25em; }
  .l-page .c-slide__arrow .slick-arrow:hover { background-color: #f3650f; }
  .l-page .c-slide__arrow .slick-arrow:hover::before { color: #fff; }
  .l-mv { gap: 2em; }
  .l-mv__title { font-size: 3em; }
  .l-anchor { height: 6.5em; }
  .l-anchor__float { padding: 1.75em 0; }
  .l-anchor__list { border-right: 1px solid #e6e6e6; }
  .l-anchor__item { border-left: 1px solid #e6e6e6; }
  .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 { font-size: 1.25em; 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; }
  .l-myjtb { display: inline-flex; justify-content: center; gap: 6em; padding: 3em 0; }
  .l-myjtb > div { align-items: center; display: flex; flex-wrap: wrap; position: relative; width: 25em; }
  .l-myjtb .c-btn { height: 3.25em; }
  .l-myjtb__login { gap: .75em; justify-content: center; }
  .l-myjtb__join ul { gap: .75em; }
  .l-myjtb__join { justify-content: flex-start; text-align: left; }
  .l-myjtb__join::before { background-color: #e6e6e6; content: ""; display: block; height: 100%; left: -3em; position: absolute; top: 0; width: 1px; }
  .l-sns { gap: 2.5em; }
  .l-sns__title { font-size: 1.75em; }
  .l-sns__list { gap: 1em; }
  .p-primary .c-cassette__list { display: grid; gap: 2.5em; grid-template-columns: repeat(3, 1fr); }
  .p-primary .c-cate__recommend .c-cassette__list { grid-template-columns: repeat(4, 1fr); }
  .p-secondary .c-cassette__list { margin-left: -1.25em; margin-right: -1.25em; }
  .p-faq .c-btn { height: 4.625em; }
  .p-faq__item { padding: 2em 2.5em; }
  .p-faq__item a:hover { color: #e74a11; text-decoration: none; }
  .p-faq__item--q p { font-size: 1.25em; }
  .u-sp { display: none; }
  .l-page__top .l-mv { aspect-ratio: 36 / 7; }
  .l-page__end .l-mv { aspect-ratio: 36 / 5; }
  .p-archive .c-inner { padding-top: 2.5em !important;}
  .p-archive .c-tab__wrap p { font-size: .875em; }
  .p-archive .c-tab__list { gap: .5em; grid-template-columns: repeat(6, 1fr); }
  .p-archive .c-tab { cursor: pointer; height: 3em; }
  .p-archive .c-tab:hover { background-color: #f6f6f6; }
  .p-archive .c-tab span { font-size: 1.125em; }
  .p-archive .c-archive__month + .c-archive__month { margin-top: 4em; }
  .p-archive .c-archive__title { font-size: 2em; }
  .p-archive .c-archive__list { gap: 1.5em; margin-top: 1.5em; padding-top: 1.5em; }
  .p-archive .c-archive__list li { padding-bottom: 1.5em; }
  .p-archive .c-archive__list li a:hover { text-decoration: underline; }
  .slick-list { margin: 0 -1.25em; }
  .slick-slide { margin: 0 1.25em; }
}

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

@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.7209vw; }
  .l-page .c-banner__wide { padding: 1.5em; }
  .l-page .c-banner__wide + * { margin-top: 1.5em; }
  .l-page .c-banner__list { gap: 1.5em; }
  .l-page .c-block__title { margin-bottom: 1.5em; }
  .l-page .c-block__title span { font-size: 1.125em; }
  .l-page .c-btn { height: 3.5em; }
  .l-page .c-card__list .c-cassette__item { padding: 0 1em 1em; }
  .l-page .c-card__list .c-cassette__bnr { margin-left: -1em; margin-right: -1em; }
  .l-page .c-cassette__item img { width: 100%; }
  .l-page .c-cassette__item p { margin-top: -.25em; }
  .l-page .c-sec__title { font-size: 1.25em; }
  .l-mv { gap: 1.5em; }
  .l-mv__title { font-size: 1.5em; }
  .l-mv__catch { font-size: .75em; }
  .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: .7em; }
  .l-myjtb { display: flex; flex-direction: column; gap: 1em; padding: 2em 5.5%; }
  .l-myjtb__login { display: flex; flex-direction: column; gap: 1.25em; }
  .l-myjtb__login .c-catch { font-size: .875em; }
  .l-myjtb__join ul { gap: .875em; }
  .l-myjtb__join li { font-size: .875em; }
  .l-contents .c-inner { gap: 3.5em; padding: 2em 0; }
  .l-sns { gap: 1.5em; padding: 2em 0; }
  .l-sns p { font-size: .875em; }
  .l-sns__title { font-size: 1.5em; }
  .l-sns__list { gap: .75em; }
  .l-sns__item img { width: 2.5em; }
  .p-primary .c-cassette__list { display: flex; flex-direction: column; gap: 2em; }
  .p-primary .c-cate__recommend .c-cassette__list { display: grid; gap: 1.5em 1em; grid-template-columns: repeat(2, 1fr); }
  .p-primary .c-cate__recommend .c-cassette__title { font-size: .875em; }
  .p-primary .c-cate__recommend p { display: none; }
  .p-primary .c-cate__service .c-cassette__item { gap: .75em; }
  .p-faq .c-btn { margin-top: -1em; }
  .p-faq__item { padding: 1.5em .75em; }
  .p-faq__item--a p { font-size: .9375em; }
  .p-archive .c-inner { gap: 2.5em; padding-top: 1.5em !important;}
  .p-archive .c-tab__wrap p { font-size: .75em; }
  .p-archive .c-tab__list { gap: .25em; grid-template-columns: repeat(5, 1fr); }
  .p-archive .c-tab { height: 2.5em; }
  .p-archive .c-archive__month + .c-archive__month { margin-top: 2.5em; }
  .p-archive .c-archive__title { font-size: 1.5em; }
  .p-archive .c-archive__list { gap: 1em; margin-top: 1em; padding-top: 1em; }
  .p-archive .c-archive__list li { padding-bottom: 1em; }
  .l-page__top .l-mv { aspect-ratio: 5 / 2; }
  .l-page__end .l-mv { aspect-ratio: 3 / 1; }
  .slick-list { margin: 0 -.5em; }
  .slick-slide { margin: 0 .5em; }
  .u-pc { display: none; }
}

/* 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 { 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 !important; }
.slick-dotted.slick-slider { margin-bottom: 2em; }
.slick-dots { display: block; 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: #f3650f; }
.slick-dots > li:first-child:last-child { display: none; }