@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-train:before { content: '\e801'; }
.ico-pagetop:before { content: '\e802'; }
.ico-car:before { content: '\e803'; }
.ico-dot-arrow-down:before { content: '\e804'; }
.ico-dot-arrow-right:before { content: '\e805'; }
.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-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 { color: #4d4d4d; font-family: "Noto Sans JP", sans-serif; font-size: 16px; line-height: 1.6; text-align: center; width: 100%; }
.l-page * { -ms-box-sizing: border-box; box-sizing: border-box; }
.l-page h1 { font-size: 18px; font-weight: bold; line-height: 1; margin: 0 auto 25px; max-width: 1280px; text-align: left; }
.l-page a { color: #ff253a; }
.l-page a, .l-page a img { transition: all .4s ease; }
.l-page img { display: block; margin: 0 auto; width: 100%; }
.l-page strong { font-weight: 900; }

.l-page .is-fixed { left: 0; position: fixed; top: 0; width: 100%; z-index: 999; }
.l-page .c-btn { background-color: #ff7d80; border-radius: .5em; display: grid; place-content: center; width: 100%; }
.l-page .c-btn span { color: #fff; font-weight: 700; }
.l-page .c-btn span::after { color: #fff980; content: "\e805"; display: inline-block; font-family: "icon"; font-size: .5em; padding-left: .825em; vertical-align: middle; }
.l-page .c-btn__block { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 0 auto; max-width: 960px; width: 100%; }
.l-page .c-fdc { display: flex; flex-direction: column; }
.l-page .c-sec__head--img { margin: 0 auto 1.25em; }
.l-page .c-sec__title { color: #00a6c4; font-weight: 900; line-height: 1.5; }
.l-page .c-sec__title span { display: block; font-size: .7143em; }
.l-page .c-sec__title span em { color: #ff7d80; }
.l-page .c-inner { display: flex; flex-direction: column; margin: 0 auto; max-width: 1120px; width: 89%; }
.js-btn-page-top { bottom: 50px; cursor: pointer; display: none; position: fixed; right: 50px; z-index: 100; }
.js-btn-page-top a { display: block; height: 17px; position: relative; width: 35px; }
.js-btn-page-top a::before { color: #000; content: "\e802"; display: inline-block; font-family: "icon"; font-size: 17px; height: 17px; width: 35px; }
.js-btn-page-top a:hover { opacity: .8; }

.l-contents { background: #daeff2 url(../images/contents_bg.jpg) repeat-y 50% 0 / 100% auto ; }
.l-mv { display: block; margin: 0 auto; max-width: 1280px; position: relative; }
.l-mv::after { background-color: #82ccd9; content: ""; height: 50%; left: 0; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); position: absolute; top: 0; width: 100vw; }
.l-mv__bg { display: grid; grid-template-columns: repeat(2, 1fr); position: relative; z-index: 1; }
.l-mv__pic { aspect-ratio: 158 / 77; object-fit: cover; overflow: hidden; position: relative; width: 100%; }
.l-mv__pic img { filter: brightness(85%); }
.l-mv__pic span { color: #fff; font-weight: 700; position: absolute; white-space: nowrap; z-index: 2; }
.l-mv__pic:nth-child(-n+2) span { top: .75em; }
.l-mv__pic:nth-child(n+3) span { bottom: .75em; }
.l-mv__title { left: 50%; position: absolute; top: 50%; translate: -50% -50%; z-index: 2; }
.l-mv__corner { position: absolute; z-index: 3; }
.l-mv__corner--01 { left: 0; top: 2.25em; width: 11.75em; }
.l-mv__corner--02 { right: 0; top: 2.25em; width: 12.75em; }
.l-mv__corner--03 { bottom: -.625em; left: 0; width: 12.875em; }
.l-mv__corner--04 { bottom: -.625em; right: 0; width: 15.875em; }
.l-anchor__list { display: flex; justify-content: center; }
.l-anchor__item a { aspect-ratio: 14 / 9; background-color: #ff7d80; display: grid; -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 280 179"><path d="M0.494968 90.4803C-3.55408 124.012 17.3437 155.58 59.34 170.314C120.996 191.944 225.016 171.358 262.796 128.695C286.89 101.488 286.438 62.0302 256.606 38.152C230.655 17.3922 193.243 16.9822 158.826 10.5219C146.361 8.18629 134.532 4.18589 122.033 1.96206C96.0491 -2.6471 67.6054 0.968171 45.1516 11.7146C15.9215 25.716 3.40627 46.4634 2.50276 71.1367C2.26852 77.3361 1.28135 83.8833 0.494968 90.4678V90.4803Z"/></svg>') no-repeat 50% 50% / cover; mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 280 179"><path d="M0.494968 90.4803C-3.55408 124.012 17.3437 155.58 59.34 170.314C120.996 191.944 225.016 171.358 262.796 128.695C286.89 101.488 286.438 62.0302 256.606 38.152C230.655 17.3922 193.243 16.9822 158.826 10.5219C146.361 8.18629 134.532 4.18589 122.033 1.96206C96.0491 -2.6471 67.6054 0.968171 45.1516 11.7146C15.9215 25.716 3.40627 46.4634 2.50276 71.1367C2.26852 77.3361 1.28135 83.8833 0.494968 90.4678V90.4803Z"/></svg>') no-repeat 50% 50% / cover; place-content: center; position: relative; width: 100%; }
.l-anchor__item a::after { color: #fff980; content: "\e804"; display: block; font-family: "icon"; left: 50%; position: absolute; translate: -50% 0; }
.l-anchor__item a span { color: #fff; font-weight: 700; }

.sec-intro__txt { font-weight: 700; }
.sec-intro__txt p { line-height: 2; }
.sec-intro__txt strong { color: #ff7d80; }
.sec-coupon__mankitsu { background: url(../images/mankitsu_bg.jpg) no-repeat 50% 0 / cover }
.sec-coupon__mankitsu .c-inner { max-width: 960px; }
.sec-coupon__mankitsu .c-bottom__txt { font-weight: 700; }
.sec-coupon__mankitsu .c-bottom__txt p strong { color: #ff7d80; font-size: 1.4em; }
.sec-coupon__lead { background: url(../images/mankitsu_lead_fig_left.png) no-repeat 0 50%, url(../images/mankitsu_lead_fig_right.png) no-repeat 100% 50%; }
.sec-coupon__lead p { font-weight: 700; line-height: 1.8; }
.sec-coupon__info dl { display: flex; }
.sec-coupon__info dt { background-color: #ff7d80; color: #fff; display: grid; font-weight: 700; place-content: center; }
.sec-coupon__info dd { background-color: #fff; padding: .8125em 1em; text-align: left; }
.sec-coupon__course--title { color: #00a6c4; font-weight: 900; }
.sec-coupon__course--title span { display: block; font-size: .8em; }
.sec-coupon__course .c-course__wrap { counter-reset: num; gap: 2.25em; }
.sec-coupon__course .c-course__block { display: flex; }
.sec-coupon__course .c-course__block dt { background-color: #fff980; border-radius: .25em; display: grid; font-size: 1.5em; font-weight: 700; place-content: center; }
.sec-coupon__course .c-course__list { position: relative; }
.sec-coupon__course .c-course__list::before { background-color: #fff980; bottom: 0; content: ""; height: 100%; left: 1.0625em; position: absolute; top: 0; width: 2px; }
.sec-coupon__course .c-course__item { counter-increment: num; position: relative; text-align: left; }
.sec-coupon__course .c-course__item::before { aspect-ratio: 1 / 1; background-color: #fff980; border-radius: 50%; content: counter(num, decimal-leading-zero); display: grid; font-size: 1.5em; font-weight: 700; left: .8em; place-content: center; position: absolute; top: 50%; translate: -50% -50%; }
.sec-coupon__course .c-course__item span { align-items: center; color: #fff; display: inline-flex; font-weight: 500; }
.sec-coupon__course .c-course__block:first-child .c-course__item::before, .sec-coupon__course .c-course__block:first-child dt { color: #ff7d80; }
.sec-coupon__course .c-course__block:first-child .c-course__item span { background-color: #ff7d80; }
.sec-coupon__course .c-course__block:last-child .c-course__item::before, .sec-coupon__course .c-course__block:last-child dt { color: #00a6c4; }
.sec-coupon__course .c-course__block:last-child .c-course__item span { background-color: #00a6c4; }
.sec-coupon__waribiki--box { background-color: #fff; border: 2px solid #00a6c4; border-radius: .5em; display: flex; position: relative; }
.sec-coupon__waribiki--box dl { text-align: left; width: 100%; }
.sec-coupon__waribiki--box dt { color: #00b3c4; font-weight: 700; }
.sec-coupon__waribiki--box dt::before { content: "・"; }
.sec-coupon__waribiki--box dd { padding: .25em 0 0 1.5em; }
.sec-coupon__waribiki--box dd + dt { margin-top: 1em; }
.sec-coupon__waribiki--label { background-color: #00a6c4; border-radius: 100vh; display: grid; left: 50%; place-content: center; padding: 1em 2.5em; position: absolute; top: 0; translate: -50% -50%; }
.sec-coupon__waribiki--label span { color: #fff; font-weight: 900; line-height: 1; }
.sec-access { background-color: #fff; }
.sec-access__block { text-align: left; }
.sec-access__block--title { font-weight: 700; }
.sec-access__block--title.ico-train::before { color: #00a6c4; }
.sec-access__block--title.ico-car::before { color: #ff7d80; }


@media screen and (min-width:768px){
  .sp-item { display: none !important; }
  .breadcrumb-upper { margin: 0 auto 25px; max-width: 1230px; padding: 0 .5em; text-align: left; }
  .breadcrumb-upper__fix, .breadcrumb-upper__scroll, .breadcrumb-upper__item { display: inline-block; font-size: 10px; }
  .breadcrumb-upper__item { line-height: 2.1; margin-left: 1.5em; padding-left: .2em; position: relative; }
  .breadcrumb-upper__item::before { color: #999; content: ">"; left: -1.1em; line-height: 2.1; position: absolute; top: 0; }
  .l-page a:hover { text-decoration: none; }
  .l-page .c-btn { height: 6.625em; width: calc(50% - .75em); }
  .l-page .c-btn:hover { background-color: #ff4a50; }
  .l-page .c-btn span { font-size: 1.5em; }
  .l-page .c-btn__large { width: 100%; }
  .l-page .c-btn__block { row-gap: 1.5em; }
  .l-page .c-inner { padding: 5em 0; }
  .l-page .c-sec__head--img {width: 9.375em; }
  .l-page .c-sec__title { font-size: 3.5em; }
  .l-mv { padding: 4.75em 0; width: 89%; }
  .l-mv__title { width: 38.375em; }
  .l-mv__pic span { font-size: .8125em; left: 50%; translate: -50% 0; }
  .l-mv__corner--01 { left: -2.5em; }
  .l-mv__corner--02, .l-mv__corner--04 { right: -2.5em; }
  .l-mv__corner--03 { left: -3.5em; }
  .l-anchor__list { gap: 3.5em; }
  .l-anchor__item a { width: 17.5em; }
  .l-anchor__item a::after { bottom: 16%; font-size: .875em; }
  .l-anchor__item a:hover { background-color: #ff4a50; transform: scale(1.1); }
  .l-anchor__item a span { font-size: 1.25em; }
  .sec-intro__title { width: 64.375em; }
  .sec-intro__txt { padding-top: 3.25em; }
  .sec-intro__txt p { font-size: 1.25em; }
  .sec-coupon__mankitsu .c-inner { gap: 3em; }
  .sec-coupon__mankitsu .c-bottom__txt { font-size: 1.25em; }
  .sec-coupon__lead { background-size: 12.5em auto; }
  .sec-coupon__lead p { font-size: 1.25em; }
  .sec-coupon__info { gap: .5em; }
  .sec-coupon__info dt { border-radius: .375em 0 0 .375em; width: 11.25em; }
  .sec-coupon__info dd { border-radius: 0 .375em .375em 0; flex: 1; }
  .sec-coupon__course { gap: 3em; }
  .sec-coupon__course--title { font-size: 2.5em; }
  .sec-coupon__course .c-course__block { background: no-repeat 100% 50% / auto 100%; gap: 3em; }
  .sec-coupon__course .c-course__block:first-child { background-image: url(../images/course_pic_day1.png); }
  .sec-coupon__course .c-course__block:last-child { background-image: url(../images/course_pic_day2.png); }
  .sec-coupon__course .c-course__block dt { width: 13.125%; }
  .sec-coupon__course .c-course__block dd { padding: 2em 0; }
  .sec-coupon__course .c-course__list { gap: 3.75em; }
  .sec-coupon__course .c-course__item::before { width: 3em; }
  .sec-coupon__course .c-course__item span { font-size: 1.5em; height: 2.3333em; padding: 0 1em 0 3em; }
  .sec-coupon__waribiki .c-inner { gap: 4em; }
  .sec-coupon__waribiki--box { gap: 1.5em; margin-top: 2.5em; padding: 4.5em 5em 3em; }
  .sec-coupon__waribiki--box dt { font-size: 1.5em; }
  .sec-coupon__waribiki--box dd { font-size: 1.25em; }
  .sec-coupon__waribiki--label span { font-size: 1.75em; }
  .sec-access .c-inner { gap: 5em; }
  .sec-access__block--title { font-size: 1.75em; }
  .sec-access__block--title + p { padding-top: 2.25em; }
}

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

@media screen and (max-width:767px){
  .pc-item { display: none !important; }
  #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 { margin-bottom: 20px; padding: 0 1%; }
  .l-page .c-btn { height: 5em; }
  .l-page .c-btn span { font-size: 1.25em; }
  .l-page .c-btn__block { row-gap: 1em; }
  .l-page .c-inner { padding: 3em 0; }
  .l-page .c-sec__head--img {width: 21%; }
  .l-page .c-sec__title { font-size: 2em; }
  .l-mv { padding: 3em 0;  width: 96%; }
  .l-mv__pic:nth-child(odd) span { right: 10%; }
  .l-mv__pic:nth-child(even) span { left: 10%; }
  .l-mv__pic span { font-size: .5em; }
  .l-mv__corner { font-size: .45em; }
  .l-anchor__list { gap: .5em; }
  .l-anchor__item { width: 28%; }
  .l-anchor__item a::after { bottom: .25em; font-size: .75em; }
  .l-anchor__item a span { padding-bottom: .5em; }
  .sec-intro__txt { padding-top: 2em; }
  .sec-intro__txt p { text-align: left; }
  .sec-intro__txt p + p { padding-top: 1.5em; }
  .sec-intro__txt p br { display: none; }
  .sec-coupon__mankitsu .c-inner { gap: 2em; }
  .sec-coupon__lead { background-size: 20% auto; }
  .sec-coupon__info { gap: 1em; }
  .sec-coupon__info dl { flex-direction: column; }
  .sec-coupon__info dt { border-radius: .375em .375em 0 0; padding: .5em 0; }
  .sec-coupon__info dd { border-radius: 0 0 .375em .375em; }
  .sec-coupon__course { gap: 2em; }
  .sec-coupon__course--title { font-size: 1.75em; }
  .sec-coupon__course .c-course__block { flex-direction: column; gap: 2.5em; }
  .sec-coupon__course .c-course__list { background: no-repeat 100% 50% / auto 100%; gap: 2em; }
  .sec-coupon__course .c-course__block:first-child .c-course__list { background-image: url(../images/course_pic_day1_sp.png); }
  .sec-coupon__course .c-course__block:last-child .c-course__list { background-image: url(../images/course_pic_day2_sp.png); }
  .sec-coupon__course .c-course__item::before { width: 2.5em; }
  .sec-coupon__course .c-course__item span { border-radius: 100vh 0 0 100vh; font-size: 1.125em; height: 2.5em; padding: 0 1em 0 3em; }
  .sec-coupon__waribiki .c-inner { gap: 3em; }
  .sec-coupon__waribiki--box { flex-direction: column; gap: 1em; padding: 3em 1.5em 2em; }
  .sec-coupon__waribiki--box dt { font-size: 1.25em; }
  .sec-access .c-inner { gap: 3em; }
  .sec-access__block--title { font-size: 1.25em; }
  .sec-access__block--title + p { padding-top: 2em; }
}