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

@keyframes slide-in {
 0% { opacity: 0; transform: translate3d(20px,0,0); }
 100% { opacity: 1; transform: translate3d(0,0,0); }
}
@keyframes scroll-hint-appear {
  0% { transform: translateX(40px); opacity: 0; }
  10% { opacity: 1; }
  50%, 100% { transform: translateX(-40px); opacity: 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; 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: #b09114; }
.l-page a, .l-page a img { transition: all .4s ease; }
.l-page img { display: block; margin: 0 auto; width: 100%; }
.l-page h2, .l-page h3, .l-page h4, .l-page strong { font-weight: 700; }
.l-page p, .l-page li { line-height: 1.6; }
.l-page section:nth-child(even) { background-color: #2b457a; color: #fff; }
.l-page section:nth-child(even) .c-sec__title { color: #ddcc87; }
.l-page .c-btn { background-color: #ddcc87; border-radius: 100vh; display: grid; margin: 0 auto; max-width: 720px; overflow: hidden; place-items: center; position: relative; width: 100%; }
.l-page .c-btn span { color: #2b457a; font-weight: 700; position: relative; z-index: 2; }
.l-page .c-cap { margin-left: auto; padding-top: 1.5em; text-align: right; }
.l-page .c-cap li { font-size: 1em; }
.l-page .c-catch { color: #fff; font-weight: 700; }
.l-page .c-caution { color: #ffde00; }
.l-page .c-fdc { display: flex; flex-direction: column; }
.l-page .c-inner { display: flex; flex-direction: column; margin: 0 auto; max-width: 1280px; position: relative; width: 89%; z-index: 1; }
.l-page .c-notice__list.c-cap { padding-top: 0; }
.l-page .c-notice__list li { list-style: none; margin-left: 1.25em; text-align: left; text-indent: -1.25em; }
.l-page .c-notice__list li::before { content: "※"; }
.l-page .c-sec__lead { display: flex; flex-direction: column; gap: 1.5em; }
.l-page .c-sec__title { color: #b09114; font-weight: 700; line-height: 1.3; }
.l-page .c-txt { text-align: justify; }
.l-page .is-fixed { left: 0; position:fixed; top: 0; z-index: 99; width: 100%; }
.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-mv { align-items: center; background: no-repeat 50% 50% / auto 100%; color: #2b457a; display: flex; font-weight: 700; position: relative; width: 100%; }
.l-mv::after { background: url(../images/bg_mv_bottom.svg) no-repeat 50% 100% / 100% auto; bottom: -1px; content: ""; left: 0; pointer-events: none; position: absolute; right: 0; top: 0; width: 100%; }
.l-mv__title { display: flex; flex-direction: column; gap: .375em; }
.l-mv__title span { display: block; }
.l-mv__title--main { font-size: 1.8182em; }
.l-mv__title--sub { font-weight: 400; }
.l-mv__day { border-bottom: 1px solid #2b457a; border-top: 1px solid #2b457a; padding: .75em 0; }
.l-mv__day span { font-size: 1.25em; font-weight: 900; }
.l-mv .c-notice__list { position: absolute; z-index: 1; }
.l-mv .c-notice__list li { color: #fff; font-size: .6875em; font-weight: 400; text-shadow: 1px 1px 1px #2b457a, -1px 1px 1px #2b457a, 1px -1px 1px #2b457a, -1px -1px 1px #2b457a; }
.l-anchor { position: relative; }
.l-anchor__float { background-color: #2b457a; }
.l-anchor__list { display: flex }
.l-anchor__item { position: relative; width: 100%; }
.l-anchor__item + .l-anchor__item::before { background-color: #ddcc87; content: ""; left: 0; position: absolute; width: 1px; }
.l-anchor__item a { display: grid; place-content: center; position: relative; width: 100%; }
.l-anchor__item span { color: #fff; font-size: .875em; font-weight: 700; line-height: 1.2; }
.l-contents { background-color: #fff; width: 100%; }
.sec-intro .c-sec__head--logo { margin: 0 auto; max-width: 400px; width: 64%; }
.sec-about .c-guide__list { border-bottom: 1px solid #5d709a; border-top: 1px solid #5d709a; text-align: left; }
.sec-about .c-guide__list > li { padding: 1em 0; border-bottom: 1px solid #5d709a; }
.sec-about .c-guide__list > li:last-child:nth-child(odd), .sec-about .c-guide__list > li:last-child:nth-child(even) { border-bottom: none; }
.sec-about .c-guide__list > li dl { display: grid; grid-template-columns: 6em 1fr; }
.sec-about .c-guide__list dt { color: #d9b84c; font-weight: 700; }
.sec-products .bg_diamond { background-color: #916da1; }
.sec-products .bg_platinum { background-color: #7b6abb; }
.sec-products .bg_weekend { background-color: #94b443; }
.sec-products .bg_oneday { background-color: #62aec4; }
.sec-products .c-products__chart table { border-collapse: collapse; height: 100%; width: 100%; }
.sec-products .c-products__chart th, .sec-products .c-products__chart td { border: .25em solid #2b457a; }
.sec-products .c-products__chart th h3 { display: grid; min-height: 2.5em; place-content: center; text-align: center; }
.sec-products .c-products__chart th p { font-size: .75em; line-height: 1.3; margin-bottom: auto; }
.sec-products .c-products__chart th p a { color: #fff; text-decoration: underline; }
.sec-products .c-products__chart th .c-btn { background-color: #fff; border-radius: 100vh; display: grid; height: 1.5em; place-content: center; width: 7.5em; }
.sec-products .c-products__chart th .c-btn span { color: #2b457a; font-size: .75em; }
.sec-products .c-products__chart th:first-child { background-color: #ddcc87; }
.sec-products .c-products__chart th:first-child h3 { color: #2b457a; font-size: 1.25em; }
.sec-products .c-products__chart .c-products__item { height: 100%; vertical-align: top; }
.sec-products .c-products__chart th .c-cell__inner { display: flex; flex-direction: column; gap: .5em; height: 100%; }
.sec-products .c-products__chart th .c-btn__wrap { padding-top: .5em; }
.sec-products .c-products__chart td { background-color: #556d9d; font-size: .75em; padding: 1rem; }
.sec-products .c-products__chart .c-head { background-color: #102c63; text-align: left; white-space: nowrap; }
.sec-products .c-products__chart .c-btn__wrap { display: flex; gap: .5em; justify-content: center; }
.sec-products .c-course__map { aspect-ratio: 200 / 129; background: url(../images/pic_course_map.png) no-repeat 50% 50% / cover; margin: 0 auto; max-width: 1200px; position: relative; width: 100%; }
.sec-products .c-course__lounge { background-color: #fff; border: 3px solid #ddcc87; text-align: left; width: 46.6667%; }
.sec-products .c-course__lounge dt { background-color: #ddcc87; color: #2b457a; font-size: 1.25em; font-weight: 700; padding: 1em; }
.sec-products .c-course__lounge dd { color: #333; padding: 1.5em; }
.sec-products .c-course__lounge dd p { font-size: 1em; }
.sec-products .c-course__pic .c-pic { border: 3px solid #ddcc87; position: absolute; width: 34.1667%; }
.sec-products .c-course__pic .c-pic:nth-of-type(1) { bottom: 0; }
.sec-products .c-course__pic .c-pic:nth-of-type(2) { bottom: 4.91%; right: 0; }
.sec-products .c-course__pic .c-pic:nth-of-type(3) { right: 8.7855%; top: 6.46%; }
.sec-products .c-course__pic .c-label { background-color: #ddcc87; border-radius: 0 0 100vh 0; display: grid; height: 2.75em; place-content: center; padding-right: 1em; position: absolute; width: 11.375em; }
.sec-products .c-course__pic .c-label span { color: #2b457a; font-size: 1.25em; font-weight: 700; }
.sec-products .c-tab__list { display: flex; gap: .25em; }
.sec-products .c-tab { cursor: pointer; display: grid; place-content: center; position: relative; transition: all .4s ease; width: 100%; }
.sec-products .c-tab span { color: #2b457a; font-weight: 700; }
.sec-products .c-tab:not(.is-selected) { background-color: #fff; }
.sec-products .c-tab.is-selected::after { border-style: solid; border-width: .9375em 1.125em 0 1.125em; bottom: 0; content: ""; left: 50%; position: absolute; transition: all .4s ease; translate: -50% 100%; }
.sec-products .bg_diamond.is-selected::after { border-color: #916da1 transparent transparent; }
.sec-products .bg_platinum.is-selected::after { border-color: #7b6abb transparent transparent; }
.sec-products .bg_weekend.is-selected::after { border-color: #94b443 transparent transparent; }
.sec-products .bg_oneday.is-selected::after { border-color: #62aec4 transparent transparent; }
.sec-products .c-tab.is-selected span { color: #fff; }
.sec-products .c-panel { display: none; }
.sec-products .c-panel.is-selected { animation: .8s slide-in; display: flex; flex-direction: column; }
.sec-products .c-panel__title { color: #ddcc87; }
.sec-products .c-tags { display: flex; gap: .5em; justify-content: center; padding-top: 1.5em; }
.sec-products .c-tag { border: solid #ddcc87; border-radius: 100vh; display: inline-grid; place-content: center; }
.sec-products .c-tag span { color: #ddcc87; font-weight: 700; }
.sec-products .c-plan__list { display: flex; gap: 1.5em; }
.sec-products .c-plan__list.c-flex__cnt { justify-content: center; }
.sec-products .c-plan__list.c-flex__sb { justify-content: space-between; }
.sec-products .c-plan__item { display: flex; flex-direction: column; gap: .75em; text-align: left; width: 18.875em; }
.sec-products .c-plan__item--wide { text-align: center; width: 39.25em; }
.sec-products .c-plan__item--wide .c-pic__wrap { display: grid; gap: 1.5em; grid-template-columns: repeat(2, 1fr); margin-top: auto; }
.sec-products .c-plan__item h4 { background-color: #ddcc87; color: #2b457a; display: grid; font-size: 1.25em; font-weight: 700; height: 2.5em; place-content: center; }
.sec-products .c-entry__box { border-radius: .625em; display: flex; flex-direction: column; }
.sec-products .c-entry__box .c-btn span { color: #fff; }
.sec-products .c-entry__box--title { color: #fff !important; }
.sec-products .c-products__bottom { border: 1px solid #fff; border-radius: 1.25em; margin: 1.5em auto 0; max-width: 960px; text-align: left; }
.sec-products .c-products__bottom h3 { padding-bottom: .5em; }
.sec-products .c-products__bottom .c-notice__list { padding-top: 1em; }
.sec-products .c-products__bottom .c-notice__list li { font-size: .875em; }
.sec-faq__list { display: flex; flex-direction: column; gap: .5em; text-align: left; width: 100%; }
.sec-faq__item { background-color: #f3f3f3; }
.sec-faq__item--q, .sec-faq__item--a { position: relative; }
.sec-faq__item--q { color: #2b457a; cursor: pointer; font-weight: 700; line-height: 1.3; }
.sec-faq__item--q span { aspect-ratio: 1 / 1; background-color: #ddcc87; border-radius: 50%; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 2.5em; }
.sec-faq__item--q span::before, .sec-faq__item--q span::after { background-color: #2b457a; content: ""; display: block; height: 3px; left: 50%; position: absolute; top: 50%; translate: -50% -50%; }
.sec-faq__item--q span::after { transform: rotate(-90deg); transition: all .3s ease; }
.sec-faq__item.is-open .sec-faq__item--q span::after { transform: rotate(-180deg); }
.sec-faq__item--a { border-top: 1px solid #ccc; padding-top: 1.25em; display: none; }
.sec-faq__list.is-open .sec-faq__item--q i { transform: rotate(180deg); }
.scroll-hint-shadow-wrap + .c-cap { padding-top: 0; }

@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 p, .l-page li { font-size: 1.125em; }
  .l-page a:hover { text-decoration: none; }
  .l-page .c-btn { height: 6.625em; }
  .l-page .c-btn::before { background-color: rgba(0,0,0,.5); content: ""; display: block; height: 100%; left: -100%; mix-blend-mode: overlay; position: absolute; transition: all .4s ease; width: 100%; }
  .l-page .c-btn:hover::before { left: 0; }
  .l-page .c-btn span { font-size: 1.75em; }
  .l-page .c-btn__mini { height: 4.25em; width: 20em; }
  .l-page .c-btn__mini span { font-size: 1.25em; }
  .l-page .c-btn__block { align-items: center; display: flex; flex-direction: column; gap: 2em; justify-content: center; }
  .l-page .c-cap { font-size: .75em; }
  .l-page .c-catch { font-size: 2em; }
  .l-page .c-inner { gap: 3em; }
  .l-page .c-sec__lead p { font-size: 1.25em; }
  .l-page .c-sec__title { font-size: 3em; }
  .l-page section .c-inner { padding: 6.25em 0; }
  .l-mv { background-image: url(../images/bg_mv_pc.jpg); height: 42.5em; }
  .l-mv .c-inner { align-items: flex-start; gap: 2.5em; }
  .l-mv .c-notice__list { bottom: .75em; right: .75em; }
  .l-mv__logo { width: 29.6875%; }
  .l-mv__title { align-items: flex-start; font-size: 2.75em; }
  .l-anchor, .l-anchor__item { height: 7em; }
  .l-anchor__item { align-items: center; display: flex; justify-content: center; }
  .l-anchor__item + .l-anchor__item::before { bottom: 2.5em; top: 2.5em; }
  .l-anchor__item a { height: 3.25em; }
  .l-anchor__item span { font-size: 1.125em; position: relative; }
  .l-anchor__item:last-child a { background-color: #ddcc87; border-radius: 100vh; padding: 1.5em; width: auto; }
  .l-anchor__item:last-child a span { color: #2b457a; }
  .l-anchor__item:last-child a:hover { background-color: #ffde00; }
  .l-anchor__item:not(:last-child) span::after { background-color: rgba(255,255,255,.5); bottom: -.5em; content: ""; height: 2px; left: 50%; position: absolute; transition: .3s; transform: translateX(-50%); width: 0; }
  .l-anchor__item:not(:last-child) a:hover span::after { width: 100%; }
  .l-anchor__float.is-fixed::after { aspect-ratio: 48 / 1; background: url(../images/bg_anchor_bottom.svg) no-repeat 50% 100%; bottom: 1px; content: ""; left: 0; position: absolute; right: 0; translate: 0 53%; width: 100%; }
  .l-anchor__float.is-fixed .l-anchor__item + .l-anchor__item::before { bottom: .75em; top: .75em; }
  .l-anchor__float.is-fixed .l-anchor__item { height: 4em; }
  .l-anchor__float.is-fixed .l-anchor__item span { font-size: 1em; }
  .sec-about .c-guide__list { display: grid; grid-template-columns: repeat(2, 1fr); }
  .sec-about .c-guide__list > li { font-size: 1.25em; }
  .sec-about .c-guide__list > li:nth-child(odd) dl { border-right: 1px solid #5d709a; padding-right: 2em; }
  .sec-about .c-guide__list > li:nth-child(even) dl { padding-left: 2em; }
  .sec-course .c-cont__wrap { display: grid; gap: 3.5em; grid-template-columns: 1fr 37.5em; }
  .sec-products .c-products__chart th { padding: .5em; }
  .sec-products .c-products__chart th:first-child { width: 14.5em; }
  .sec-products .c-products__chart th:nth-child(n + 2):nth-child(-n + 4) { width: 10.625em; }
  .sec-products .c-products__chart .c-btn:hover { background-color: #ffde00; }
  .sec-products .c-tab { height: 6.375em; }
  .sec-products .c-tab span { font-size: 1.5em; }
  .sec-products .c-panel__title { font-size: 3em; }
  .sec-products .c-panel { gap: 4em; }
  .sec-products .c-panel .c-sec__lead { padding-top: 2.5em; }
  .sec-products .c-tag { border-width: 2px; height: 3.25em; padding: 0 1em; }
  .sec-products .c-entry__box { gap: 2.5em; }
  .sec-products .c-entry__box .c-col__two { display: grid; gap: 2em; grid-template-columns: repeat(2, 1fr); }
  .sec-products .c-entry__box .c-col__two .c-btn span { font-size: 1.5em; }
  .sec-products .c-entry__box--title { font-size: 1.75em; }
  .sec-products .c-products__bottom { padding: 2em; }
  .sec-products .c-products__bottom dl { display: inline-grid; gap: 2.5em; grid-template-columns: 8em 1fr; }
  .sec-products .c-products__bottom h3 { font-size: 1.375em; }
  .sec-contact .c-notice__list { margin: 0 auto; }
  .sec-faq__item { padding: 1em 1.5em; }
  .sec-faq__item--q, .sec-faq__item--a { padding: 1em 1.5em 1em 1em; }
  .sec-faq__item--q p { font-size: 1.25em; }
  .sec-faq__item--a p, .sec-faq__item--a li { font-size: 1.125em; }
  .sec-faq__item--q span::before, .sec-faq__item--q span::after { width: 1.25em; }
  .scroll-hint-shadow-wrap + .c-cap { margin-top: -2.5em; }
  .sp-item { display: none; }
}

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

@media screen and (min-width:1647px){
  .l-mv { aspect-ratio: 823 / 340; background-size: cover; height: auto; }
}

@media screen and (min-width:768px) and ( max-width:1332px) {
  .l-page p, .l-page li { font-size: 1.25vw; }
  .sec-products .c-products__chart th:first-child { width: 10.8108vw; }
  .sec-products .c-products__chart th a { width: 9.009vw; }
}

@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 p { text-align: left; }
  .l-page p br { display: none; }
  .l-page .c-btn { height: 4.5em; }
  .l-page .c-btn span { font-size: 1.375em; }
  .l-page .c-btn__mini { height: 3em; width: 15em; }
  .l-page .c-btn__mini span { font-size: 1em; }
  .l-page .c-btn__block { display: flex; flex-direction: column; gap: 1em; }
  .l-page .c-cap { font-size: .875em; }
  .l-page .c-catch { font-size: 1.5em; line-height: 1.4; }
  .l-page .c-inner { gap: 2em; }
  .l-page .c-sec__lead p { font-size: 1.125em; }
  .l-page .c-sec__title { font-size: 2.125em; }
  .l-page section .c-inner { padding: 3em 0; }
  .l-mv { aspect-ratio: 2 / 3; background-image: url(../images/bg_mv_sp.jpg); flex-direction: column; margin-bottom: 1em; }
  .l-mv .c-inner { gap: 1em; padding-top: 1.5em; }
  .l-mv .c-notice__list { background-color: #2b457a; bottom: -1em; display: flex; justify-content: center; left: 0; width: 100%; }
  .l-mv .c-notice__list li + li { padding-left: 1em; }
  .l-mv__logo { margin: 0 auto; width: 42%; }
  .l-mv__title { font-size: 1.5em; }
  .l-anchor { z-index: 102; }
  .l-anchor, .l-anchor__item a { height: 4em; }
  .l-anchor__float .c-inner, .l-anchor__item { width: 100%; }
  .l-anchor__item + .l-anchor__item:not(:last-child)::before { bottom: .75em; top: .75em; }
  .l-anchor__item:not(:last-child) a span { font-size: .75em; }
  .l-anchor__item:last-child { bottom: 5em; position: fixed; right: .5em; width: auto; }
  .l-anchor__item:last-child a { background-color: #ddcc87; border-radius: 50%; height: 6em; width: 6em; }
  .l-anchor__item:last-child a span { color: #2b457a; }
  .sec-course .c-cont__wrap { display: flex; flex-direction: column-reverse; gap: 1.5em; }
  .sec-products .c-products__chart table { width: 1000px; }
  .sec-products .c-products__chart th { padding: .5em 1em; }
  .sec-products .c-products__chart th:nth-child(1) { width: auto; }
  .sec-products .c-products__chart th:nth-child(n + 2):nth-child(-n + 4) { width: 20%; }
  .sec-products .c-products__chart th:first-child, .sec-products .c-products__chart td.c-head { left: 0; position: sticky; z-index: 2; }
  .sec-products .c-course__map { font-size: .5em; }
  .sec-products .c-products__cont { min-width: 800px; }
  .sec-products .c-products__cont * { font-size: .875em; }
  .sec-products .c-tab { height: 5em; }
  .sec-products .c-panel__title { font-size: 1.75em; }
  .sec-products .c-panel { gap: 2em; }
  .sec-products .c-panel .c-sec__lead { padding-top: 1.25em; }
  .sec-products .c-tag { border-width: 1px; height: 2.5em; padding: 0 .75em; }
  .sec-products .c-tag span { font-size: .675em; }
  .sec-products .c-entry__box { gap: 1.5em; }
  .sec-products .c-entry__box--title { font-size: 1.75em; }
  .sec-products .c-products__bottom { padding: 2em; }
  .sec-products .c-products__bottom dd { padding-top: 1.5em; }
  .sec-products .c-products__bottom img { width: 40%; }
  .sec-products .c-products__bottom h3 { font-size: 1.125em; }
  .sec-contact .c-sec__lead p { font-size: 1em; }
  .sec-faq__item { padding: 1em; }
  .sec-faq__item--q { padding: .5em 2.25em .5em .5em; }
  .sec-faq__item--q p { font-size: 1.125em; }
  .sec-faq__item--q span { font-size: .75em; }
  .sec-faq__item--q span::before, .sec-faq__item--q span::after { width: 1em; }
  .sec-faq__item--a { padding: 1em .5em .5em; }
  .scroll-hint-shadow-wrap + .c-cap { margin-top: -1em; }
  .scroll-hint-icon { z-index: 99; }
  .pc-item { display: none; }

  .scroll-hint-icon {  position: absolute;  top: calc(50% - 25px);  left: calc(50% - 60px);  box-sizing: border-box;  width: 120px;  height: auto;  border-radius: 5px;  transition: opacity .3s;  opacity: 0;  background: rgba(0, 0, 0, .7);  text-align: center;  padding: 20px 10px 10px 10px; }
  .scroll-hint-icon-wrap {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;  max-height: 100%;  pointer-events: none; }
  .scroll-hint-text { font-size: 10px; color: #FFF;  margin-top: 5px; }
  .scroll-hint-icon-wrap.is-active .scroll-hint-icon { opacity: .8; }
  .scroll-hint-icon:before {  display: inline-block;  width: 40px;  height: 40px;  color: #FFF;  vertical-align: middle;  text-align: center;  content: "";  background-size: contain;  background-position: center center;  background-repeat: no-repeat;  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=); }
  .scroll-hint-icon:after { content: ""; width: 34px; height: 14px; display: block; position: absolute; top: 10px; left: 50%; margin-left: -20px; background-repeat: no-repeat; background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==); opacity: 0; transition-delay: 2.4s; }
  .scroll-hint-icon-wrap.is-active .scroll-hint-icon:after { opacity: 1; }
  .scroll-hint-icon-wrap.is-active .scroll-hint-icon:before { animation: scroll-hint-appear 1.2s linear; animation-iteration-count: 2; }
  .scroll-hint-icon-white { background-color: #FFF; box-shadow: 0 4px 5px rgba(0, 0, 0, .4); }
  .scroll-hint-icon-white:before { background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=); }
  .scroll-hint-icon-white:after { background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==); }
  .scroll-hint-icon-white .scroll-hint-text { color: #000; }
  .scroll-hint-shadow-wrap { position: relative; }
  .scroll-hint-shadow-wrap::after { content: ""; width: 20px; height: 100%; background: linear-gradient(270deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)); position: absolute; top: 0; right: 0; pointer-events: none; z-index: 1; opacity: 0; visibility: hidden; }
  .scroll-hint-shadow-wrap::before { content: ""; width: 20px; height: 100%; background: linear-gradient(90deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)); position: absolute; top: 0; left: 0; pointer-events: none; z-index: 1; opacity: 0; visibility: hidden; }
  .scroll-hint-shadow-wrap:has(.scroll-hint.is-right-scrollable)::after, .scroll-hint-shadow-wrap.is-right-scrollable::after { opacity: 1; visibility: visible; }
  .scroll-hint-shadow-wrap:has(.scroll-hint.is-left-scrollable)::before, .scroll-hint-shadow-wrap.is-left-scrollable::before { opacity: 1; visibility: visible; }
}
