﻿@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@400;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-right-bold: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'; }


.jtb-nav-breadcrumb { margin-bottom: 25px; max-width: 1280px; }
.l-page {  font-family: "Zen Kaku Gothic Antique", sans-serif; font-size: 16px; line-height: 1.5; text-align: center; width: 100%; }
.l-page * { 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: #323743; }
.l-page a, .l-page a img { transition: all .4s ease; }
.l-page img { display: block; margin: 0 auto; max-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: #d5b127; 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: url(../images/bg_mv.jpg) no-repeat 50% 100% / cover; display: flex; flex-direction: column; justify-content: flex-end; position: relative; width: 100%; }
.l-mv::after { background: url(../images/bg_mv_left.png) 0 100%, url(../images/bg_mv_right.png) 100% 100%; background-repeat: no-repeat; background-size: 26.71875vw auto; content: ""; inset: 0; position: absolute; width: 100%; }
.l-mv__title, .l-mv__txt { position: relative; z-index: 1; }
.l-contents { background: #0d0d0d url(../images/bg_contents.png) repeat-y 50% 0/ 100% auto; }
.l-contents .c-inner { display: flex; flex-direction: column; margin: 0 auto; max-width: 1280px; width: 89%; }
.l-tab__wrap, .l-anchor__float  { display: flex; justify-content: space-between; }
.l-tab,.l-anchor { display: grid; font-weight: 900; place-content: center; width: 100%; }
.l-tab { background-color: #e7e7e7; border-radius: .375em; }
.l-tab span { color: #1a1a1a; transition: all .4s ease; }
.l-tab.is-active { background-color: #dbb13a; }
.l-tab.is-active span, .l-anchor span { color: #fff; }
.l-anchor { border-bottom: 1px solid #dbb13a; }
.l-anchor span { font-weight: 900; }
.l-anchor span::after { color: #ff5500; content: "\f107"; display: inline-block; font-family: "icon"; }

@media screen and (min-width:768px) and ( max-width:1280px) {
  .l-page { font-size: 1.25vw; margin: 0;  }
}
@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 a:hover { color: #e55c17; text-decoration: none; }
  .l-mv { aspect-ratio: 32 / 13; }
  .l-mv::after { background-size: 26.71875vw auto; }
  .l-mv__title { width: 55.78125vw; }
  .l-mv__txt { width: 54vw; }
  .l-contents .c-inner { gap: 5.5em; padding-bottom: 8em; }
  .l-tab__wrap { gap: 1em; padding-top: 2em; }
  .l-tab { height: 4em; }
  .l-tab span { font-size: 1.75em; }
  a.l-tab:hover span { color: #e55c17; }
  .l-anchor__float { gap: 1.5em; }
  .l-anchor { padding: .5em 0 1em; }
  .l-anchor span { font-size: 1.8rem; }
  .l-anchor span::after { padding-left: .5em; }
}

@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 { margin-bottom: 20px; padding: 0 1%; }
  .l-mv { aspect-ratio: 2 / 1; }
  .l-mv::after { background-size: 32vw auto; }
  .l-mv__title { width: 62vw; }
  .l-mv__txt { width: 78vw; }
  .l-contents .c-inner { gap: 2em; padding-bottom: 4em; }
  .l-tab__wrap { gap: .5em; padding-top: 1em; }
  .l-tab { height: 3em; }
  .l-tab span { font-size: 1em; }
  .l-anchor__wrap { height: 5em; }
  .l-anchor__float { gap: .5em; }
  .l-anchor { height: 5em; padding-bottom: 1em; position: relative; }
  .l-anchor span::after { bottom: .25em; left: 50%; position: absolute; translate: -50% 0; }
}

/*  クーポン
============================================================================= */
.c-coupon__item { display: block !important; }
.c-coupon__head { background: #d5b127 url(../images/bg-coupon-head.png) no-repeat 50% 50% / 37.5% auto }
.c-coupon__head::after { background-image: linear-gradient(to right, #d5b127, #d5b127 .4375em, transparent .4375em, transparent .625em) }

/*  ツアー
============================================================================= */
.tour-cassette { display: flex; }
.tour-cassette_item { position: relative; display: flex; flex-direction: column; padding-bottom: 10px; background: #fff; border-radius: 4px; justify-content: space-between; text-align: left; }
.tour-cassette_body_top { padding: 10px 12px 0px; }
.tour-cassette_item .hotel-cassette_photo figure { padding: 0 40px; }
@media screen and (min-width: 768px) {
  .tour-cassette { flex-wrap: wrap; }
  .tour-cassette_item { width: calc(100% / 4 - 23px); margin-top: 24px; }
  .tour-cassette_item:not(:is(:first-child, :nth-child(5), :nth-child(9))){ margin-left: 30px; }
}
@media screen and (max-width: 767px) {
  .tour-cassette_item { width: 70%; margin: 16px auto; }
}

/*  エリア
============================================================================= */
.tourttlimg { max-width: 80% !important; }
.ttl-wrap { position: relative; margin: 4.5em 0; display: inline-block; }
.ttl { display: flex; flex-direction: column; gap: .5em; align-items: center; position: absolute; top: 50%; left: 50%; translate: -50% -50%; white-space: nowrap; }
.sect-ttl { align-items: center; display: flex; flex-direction: column; gap: .5em; line-height: 1; }
.c-label { display: inline-grid; font-weight: 900; place-content: center; }
.c-label__gold { background: linear-gradient(90deg, #f3e16a 0%, #cfa535 100%); }
.sect-ttl em { color: #fff; font-weight: 900; white-space: nowrap; }
h3#hokkaido,h3#tohoku,h3#kitakanto,h3#shutoken,h3#izuhakone,h3#koshinetsu,h3#tokai,h3#hokuriku,h3#kinki,h3#chugokushikoku,h3#kyushu,h3#okinawa { text-align: left; color: #fff; font-weight: bold; margin-top: 20px; font-size: 1.5rem; }
.areanav { background: #fff; box-shadow: 0 0 3px rgb(0 0 0 / 30%); }
.hotel-head_list { display: flex; justify-content: center; }
.hotel-head_list a { position: relative; cursor: pointer; display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; line-height: 1.3; font-weight: bold; text-align: center; }
.hotel-head_list span { position: relative;
 &::after { content: ""; position: absolute; left: 50%; transform: translateX(-50%); bottom: -8px; width: 0; height: 5px; border-radius: 50vw; background-color: #ea5e5d; transition: 0.3s all; }
	&:hover::after { width: 100%; } }
.hotel-head_list a:not(:first-child):before { position: absolute; left: -0.5px; top: 50%; transform: translateY(-50%); content: ""; width: 1px; height: 40px; background: #ccc; }
.infomation_txt { color: #fff; }
.attention_txt { color: #fff; margin: 1.2em 0; text-align: end; }
.hotel-cassette,.hotel-cassette_pickup { display: flex; }
.hotel-cassette_item,.hotel-cassette_item_pickup { position: relative; padding-bottom: 10px; background: #fff; border-radius: 4px; justify-content: space-between; text-align: left; flex-shrink: 0; }
.hotel-cassette_photo figure { position: relative; overflow: hidden; padding: 0 30px; margin-top: 10px; }
.hotel-cassette_photo img { transform: scale(1.2, 1.2); image-rendering: -webkit-optimize-contrast; width: 100%; height: auto; vertical-align: bottom; }
.hotel-cassette_body_pickup_top,.hotel-cassette_body_top { padding: 10px 12px 0px; }
.hotel-cassette_name { font-weight: bold; font-size: 1.45rem; }
.hotel-cassette_mesh { font-size: 1.0rem; }
.hotel-cassette_recommend { padding: 10px 12px; }
.hotel-cassette_recommend dt { display: flex; align-items: center; font-weight: bold; }
.hotel-cassette_recommend dt:before { font-family: 'Material Icons Round'; content: "\e8dc"; font-size: 2.0rem; color: #323743; margin-right: 5px; line-height: 1; }
.hotel-cassette_recommend dd { padding-top: 4px; }
.hotel-cassette_point { font-weight: bolder; color: #cc0000; font-size: 1.4rem; text-align: center; }
.hotel-cassette_activity_title { font-weight: 600; padding: 5px 5px 0; }
.hotel-cassette_condition { font-size: 1rem; }
.hotel-cassette_body,.hotel-cassette_body_pickup{ padding: 0 12px; margin-top: auto; }
#okinawa .hotel-cassette_activity_title { font-size: 1.2rem; }
.fixed .hotel-head.areanav{ position: fixed; top: -64px; z-index: 100; }
.all-plan, .area-all-plan { font-weight: bold; font-size: 1.25rem; text-align: right; padding-top: 8px; }
.area-all-plan a { color: #fff; }
.hotel-cassette_body .area-all-plan a { color: #323743; }
.buttom__item { width: 85%; margin: 0 auto; }
.button__link,.button__link_allplan { position: relative; display: flex; justify-content: center; align-items: center; min-height: 60px; line-height: 1.3; font-weight: 700; border: solid 3px #d5b127; background: #fff; }
.button__link:after,.button__link_allplan:after { font-family: 'Material Icons Round'; content: "\e7cd"; color: #d5b127; transform: rotate(-90deg); }
@media screen and (min-width: 768px) {
  #area { margin-top: 5.5em; }
  .c-label { font-size: 3.2rem; padding: .125em .25em; }
  .sect-ttl em { font-size: 4em; }
  .hotel-tab.tab-wrap { margin-top: 24px; }
	.areanav { border-radius: 50vw; }
	.hotel-head_list a { padding: 10px; min-height: 60px; }
  .infomation_txt { font-size: 1.6rem;  margin-bottom: 1em; }
	.hotel-cassette_item,.hotel-cassette_item_pickup{ display: flex; flex-direction: column; width: calc(100% / 4 - 23px); margin-top: 16px; }
	.hotel-cassette_item_pickup:nth-child(n+2), .hotel-cassette_item:nth-child(n+2) { margin-left: 30px; }
	.hotel-cassette_body,.hotel-cassette_body_pickup { display: flex; flex-direction: column; }
  .hotel-cassette_body_pickup_top { height: 170px; }
	.hotel-cassette_body_top{ height: 88px; }
  .hotel-cassette_txt { font-size: 1.3rem; }
  .hotel-cassette_activity_title { font-size: 1.3rem; }
	.fixed .hotel-head.areanav{ width: 100%; max-width: 1280px; }
  .hotel-cassette_recommend dt { font-size: 1.2rem; }
	.all-plan a:hover, .area-all-plan a:hover { opacity: .6; transition: all .5s ease; }
  .buttonwrap,.buttonwrap_allplan { display: flex; justify-content: space-between; max-width: 1000px; gap: 32px; margin: 60px auto 0; }
  .buttom__item_allplan { width: calc(100% / 3); }
  .button__link { font-size: 1.6rem; padding: 4px 24px; }
  .button__link:after { position: absolute; right: 32px; font-size: 2.0rem; }
  .button__link_allplan:after { position: absolute; right: 0px; font-size: 2.0rem; }
  .button__link--txt-line { margin-left: -12px; }
  .hotel-cassette_photo figure:hover { opacity: .6; transition: all .5s ease; }
  .infomation_txt p a:hover { color: yellow !important; text-decoration: underline; }
}
@media screen and (max-width: 767px) {
  #area { margin-top: 2em; }
  .c-label { display: inline-grid; font-size: 1.5em; font-weight: 900; padding: .25em; }
  .sect-ttl em { font-size: 1.875em; }
	#hokkaido,#tohoku,#kitakanto,#shutoken,#izuhakone,#koshinetsu,#tokai,#hokuriku,#kinki,#chugokushikoku,#kyushu,#okinawa { padding-left: 10px; }
	.areanav { border-radius: 5vw; margin: 0 4px; }
  .fixed .hotel-head.areanav{ width: 89%; }
	.hotel-head_list { flex-wrap: wrap; }
	.hotel-head_list a { width: calc(100% / 6); min-height: 40px; }
	.hotel-head_list a:nth-child(7):before { left: 11.5px; top: 0%; width: 550%; height: .5px; }
  .hotel-head_list span { font-size: 1.1rem; }
  .attention_txt { font-size: .98rem; padding: 10px 16px; }
	.hotel-cassette,.hotel-cassette_pickup,.chain-cassette { overflow-x: scroll; overflow-y: hidden; padding-left: 8px; }
 	.hotel-cassette_item_pickup, .hotel-cassette_item { width: 70%; display: flex; flex-direction: column; margin-top: 16px; }
	.hotel-cassette_item_pickup:nth-child(n+2), .hotel-cassette_item:nth-child(n+2) { margin-left: 10px; }
  .hotel-cassette_body_pickup_top { height: 160px; }
	.hotel-cassette_body_top { height: 100px; }
  .hotel-cassette_txt { padding: 8px 0; }
  .hotel-cassette_activity_title { font-size: 1.2rem; }
	.hotel-cassette_body .price { padding-left: 8px; }
  .buttonwrap { display: flex; justify-content: space-between; max-width: 1000px; gap: 8px; margin: 32px auto 0; }
  .buttonwrap_allplan { margin: 32px auto 0; }
  .buttom__item_allplan { margin-bottom: 8px; }
  .button__link--txt-line { font-size: 1.3rem; }
  .button__link_allplan { margin: 0 auto; width: 94%; }
  .button__link:after { position: absolute; right: 2px; font-size: 1.4rem; }
  .button__link_allplan:after { position: absolute; right: 24px; font-size: 1.4rem; }
}
#hotel .hotel-cassette_body_pickup dl.jr-plan, #hotel .hotel-cassette_body_pickup dl.air-plan { display: none; }
.hotel-cassette_body dl.jr-plan, .hotel-cassette_body dl.air-plan { display: none; }

/*  アンケート評価
============================================================================= */
.cassette_valu { display: flex; align-items: center; font-size: 1.2rem; justify-content: flex-end; }
.cassette_valu dt { white-space: nowrap; vertical-align: bottom; }
.cassette_valu dd { margin-left: 10px; }
.cassette_valu-star { width: 75px; display: flex; justify-content: center; align-items: center; vertical-align: middle; line-height: 1; }
@media screen and (min-width: 768px) {
  .cassette_valu { margin: 8px 0; }
}

/*  料金・経路部分
============================================================================= */
.hotel-plan, .jr-plan, .air-plan { position: relative; display: flex; align-items: center; justify-content: space-between; background-color: #fffbef; margin-top: 1em; padding: .8em .5em .1em; border: 1px solid #d5b127; border-radius: 15px; }
.hotel-plan:hover, .jr-plan:hover, .air-plan:hover { opacity: .6; transition: all .5s ease; }
.hotel-plan dt, .jr-plan dt, .air-plan dt { display: flex; align-items: center; justify-content: center; position: absolute; top: 0; left: 0; padding-right: 5px; font-weight: bold; transform: translateY(-50%) translateX(1em); background: linear-gradient(to bottom, #ffffff 0%, #ffffff 50%, #fffbef 50%, #fffbef 100%); }
.hotel-plan dt:before, .jr-plan dt:before, .air-plan dt:before { font-family: 'Material Icons Round'; font-size: 2.0rem; color: #323743; margin: 0 3px 0 5px; line-height: 1; }
.hotel-plan dt:before { content: "\ea40"; }
.jr-plan dt:before { content: "\e570"; }
.air-plan dt:before { content: "\e539"; }
.hotel-plan dd, .jr-plan dd, .air-plan dd { display: flex; flex-direction: column; justify-content: center; align-items: center; margin: 0 auto; }
.hotel-plan:after, .jr-plan:after, .air-plan:after { font-family: 'Material Icons Round'; content: "\e7cd"; font-size: 2.0rem; color: #d5b127; transform: rotate(-90deg); }
.price { color: #cc0000; text-align: center; }
.price em { font-weight: bold; }
.route { font-size: 1rem; }
@media screen and (min-width: 768px) {
	.price em { font-size: 1.8rem; }
  .price span { font-size: 1.2rem; }
}
@media screen and (max-width: 767px) {
	.price em { font-size: 2rem; }
}

/*  エリア一覧
============================================================================= */
.allplan-cassette ul { display: flex; flex-wrap: wrap; justify-content: center; }
.allplan-cassette_item a { display: flex; justify-content: space-evenly; align-items: center; border-radius: 50vw; border: solid 3px #d5b127; background: #fff; font-weight: 900; }
.allplan-cassette_item a:after { font-family: 'Material Icons Round'; content: "\e5cc"; color: #d5b127; font-size: 2.0rem; }
@media screen and (min-width: 768px){
  #allplan { margin-top: 4.5em; }
  .allplan-cassette_item { margin: 24px 0 0 24px; width: calc(75% / 5); }
  .allplan-cassette_item a { padding: 10px 0px 10px 10px; }
}
@media screen and (max-width: 767px){
  #allplan { margin-top: 2em; }
  .allplan-cassette_item { margin: 5px 2px; }
  .allplan-cassette_item a { padding: 3px 0px 3px 10px; }
}

/*  チェーン
============================================================================= */
.chain-cassette { display: flex; margin-top: 10px; position: relative; padding-bottom: 10px; border-radius: 4px; justify-content: space-between; text-align: left; }
.chain-cassette_item { position: relative; padding-bottom: 10px; background: #fff; box-shadow: 0 1px 3px rgb(0 0 0 / 20%); border-radius: 4px; flex-shrink: 0; }
.chain-cassette_body_top, .chain-cassette_body { padding: 10px 12px 0px; }
.okinawa_price { text-align: center; }
.okinawa_price em { font-weight: bold; color: red; }
.chain-cassette_photo figure { position: relative; overflow: hidden; padding: 30px 35px 20px 30px; }
.chain-cassette_photo figure:hover { opacity: .6; transition: all .5s ease; }
.chain-cassette_photo img { transform: scale(1.2, 1.2); image-rendering: -webkit-optimize-contrast; width: 100%; height: auto; vertical-align: bottom; }
.chain-cassette_coupon { width: 85%; margin:15px auto 5px; }
.chain-cassette_plan { width: 85%; margin:5px auto ; }
.chain-cassette_coupon:hover,.chain-cassette_plan:hover { opacity: .6; transition: all .5s ease; }
.chain-cassette_recommend dt { display: flex; align-items: center; font-weight: bold; }
.chain-cassette_recommend dt:before { font-family: 'Material Icons Round'; content: "\e8dc"; font-size: 2.0rem; color: #656972; margin-right: 5px; line-height: 1; }
.chain-cassette_name { text-align: center; font-weight: bold; font-size: 1.6rem;  }
.chain-cassette_coupon a { padding: 6px 0px 6px 10px; display: flex; justify-content: space-evenly; align-items: center; border-radius: 50vw; color: #fff !important; background: #e98e00; font-weight: bold; text-align: center; }
.chain-cassette_plan a { padding: 6px 0px 6px 10px; display: flex; justify-content: space-evenly; align-items: center; border-radius: 50vw; color: #e98e00 !important; background: #fff; border: solid 2px #e98e00; font-weight: bold; text-align: center; }
.chain-cassette_coupon a:after { font-family: 'Material Icons Round'; content: "\e5cc"; color: #fff; font-size: 2rem; }
.chain-cassette_plan a:after { font-family: 'Material Icons Round'; content: "\e5cc"; color: #e98e00; font-size: 2rem; }
.ttl p { font-weight: bold; padding-top: 5px; }

@media screen and (min-width: 768px) {
  #chain { margin-top: 4.5em; }
	.chain-cassette_item { display: flex; flex-direction: column; width: calc(100% / 4 - 23px); margin: 0 auto; }
	.chain-cassette_item:nth-child(n+2) { margin-left: 30px; }
	.okinawa_price em { font-size: 1.8rem; }
	.chain-cassette_recommend dt { font-size: 1.4rem; }
}
@media screen and (max-width: 767px) {
  #chain { margin-top: 4em; }
	.chain-cassette { padding-left: 10px; }
	.chain-cassette_name { font-size: 1.4rem; }
	.chain-cassette_item { width: 70%; margin: 0 auto; }
	.chain-cassette_item:nth-child(n+2) { margin-left: 10px; }
	.okinawa_price em { font-size: 1.65rem; }
  .chain-cassette_recommend dt { font-size: 1.2rem; }
}

/*  おすすめ特集
============================================================================= */
.c-bnr__list { display: flex; flex-wrap: wrap; justify-content: space-evenly; margin: 0 auto; width: 94%; background: #fff; }
h3.c-title { color: #432c02; font-weight: 700; padding-top: .25em; text-align: center; }
@media screen and (min-width: 768px){
  #recommend-banner { margin-top:4.5em; }
  .c-bnr__list { padding: 32px 24px; }
	.c-bnr__item { width: calc(100% / 4 - 30px); }
	.c-bnr__item a:hover { opacity: .6; transition: all .5s ease; }
	.c-bnr__item:nth-child(n + 5) { margin-top: 3em; }
}
@media screen and (max-width: 767px){
  .c-bnr__list { padding: 24px 16px; }
	.c-bnr__item { width: calc(calc(100% - 4.5em) / 2); }
	.c-bnr__item:nth-child(n + 3) { margin-top: 1em; }
}

/*  相談・ご予約
============================================================================= */
.consultationTxt { text-align: center; font-weight: bold; color: #fff; }
.consultationList { display: flex; justify-content: center; }
.consultationList li:nth-child(even){ margin: 0 20px; }
.consultationList_item a { display: flex; flex-direction: column; align-items: center; height: 100%; text-align: center; line-height: 1.3; border: solid 2px #d5b127; background: #fff; transition: .3s }
.consultationList_item .m-ico { color: #d5b127; line-height: 1; }
@media screen and (min-width: 768px) {
  .reservation { margin-top: 4.5em; }
	.consultationTxt { margin-bottom: 32px; font-size: 1.6rem; }
	.consultationList_item { width: calc(75% / 3); }
	.consultationList_item a { padding: 0 15px 15px; font-size: 1.8rem; border-width: 3px; }
	.consultationList_item .m-ico { font-size: 4.0rem; }
	.consultationList_item .m-ico { margin: 0.4em .2em .0em; }
}
@media screen and (max-width: 767px) {
	.consultationTxt { margin-bottom: 16px; }
	.consultationList_item { margin-left: 8px; width: calc(80% / 3); }
	.consultationList_item a { padding: 0 8px 8px; font-size: 1.4rem; border-width: 3px; }
	.consultationList_item .m-ico { font-size: 4.0rem; }
	.consultationList_item .m-ico { margin: 0.2em .2em .0em; }
}

/*  国内ツアー 11/21追加
============================================================================= */
.ttl-sub { display: flex; flex-direction: column; gap: .5em; align-items: center; }
.ttl_main_subtext { font-weight: 700; background-color: #e7e7e7; }
.ttl_main { color: #d7b32a; line-height: 1; }
.ttl_main em { font-weight: bold; }
.tourWp { padding: 15px; border-radius: 10px; width: 100%; background: #272727; border: 3px solid #d7b32a; }
.pamphlet_btn a { position: relative; display: flex; justify-content: flex-end; align-items: center; color: #fff; margin-top: 8px; margin-bottom: -8px; }
.pamphlet__link:after { font-family: 'Material Icons Round'; content: "\e7cd"; color: #fff; transform: rotate(-90deg); }
@media screen and (min-width: 768px) {
    .tourWp { margin-top: 16px; }
    .tour-cassette { padding: 24px 0 100px 0; }
    .ttl-sub { padding-top: 45px; }
    .ttl_main_subtext { font-size: 2.84442rem; padding: .125em .25em; }
    .ttl_main em { font-size: 4.08883rem; }
    .pamphlet_btn a { padding-right: 32px; }
    .pamphlet__link:after { position: absolute; right: 4px; font-size: 2.0rem; }
}
@media screen and (max-width: 767px) {
    .tour-cassette_item { flex-shrink: 0; }
    .tour-cassette_item:nth-child(n+2) { margin-left: 10px; }
    .tour-cassette { padding-top: 12px; overflow-x: scroll; overflow-y: hidden; }
    .ttl-sub { padding-top: 24px; }
    .ttl_main_subtext { font-size: 1.8rem; padding: .516rem; }
    .ttl_main em { font-size: 2.4rem; }
}

/*  キャンペーンは終了しました
============================================================================= */
.c-head__copy { color: #ff5500; font-weight: 900; }
@media screen and (min-width: 768px) {
  .c-head__copy p { font-size: 2.5em; padding: 1.5em 0; }
}
@media screen and (max-width: 767px) {
  .c-head__copy p { font-size: 1.5em; padding: 2em 0 1em; }
}