@charset "UTF-8";
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; word-break: break-all; }

html { font-size: 14px; }
@media screen and (max-width: 750px) { html { font-size: 3.5vw; } }

body { font-family: YuGothicM, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }

li { list-style: none; }

img { max-width: 100%; vertical-align: bottom; }

a:hover { text-decoration: none; }

button { padding: 0; border: none; background: none; font-size: 1rem; }

input[type="text"], input[type="password"], input[type="tel"], input[type="email"] { font-size: 1rem; }

.only-pc { display: block; }
@media screen and (max-width: 750px) { .only-pc { display: none; } }

.only-sp { display: none; }
@media screen and (max-width: 750px) { .only-sp { display: block; } }

img.only-pc, span.only-pc { display: inline; }
@media screen and (max-width: 750px) { img.only-pc, span.only-pc { display: none; } }
img.only-sp, span.only-sp { display: none; }
@media screen and (max-width: 750px) { img.only-sp, span.only-sp { display: inline; } }

table.only-pc { display: table; }
@media screen and (max-width: 750px) { table.only-pc { display: none; } }
table.only-sp { display: none; }
@media screen and (max-width: 750px) { table.only-sp { display: table; } }

.main { display: flex; justify-content: space-between; max-width: 1040px; margin: 0 auto; padding: 0 20px; }
@media screen and (max-width: 750px) { .main { display: block; padding: 0 8.6666666667% 40px; } }
@media screen and (max-width: 480px) { .main { padding: 0 5.3333333333% 40px; } }

.inner { max-width: 1040px; margin: 0 auto; padding: 0 20px; }
@media screen and (max-width: 750px) { .inner { padding: 0 8.6666666667%; } }
@media screen and (max-width: 480px) { .inner { padding: 0 5.3333333333%; } }

.content { width: 67%; }
@media screen and (max-width: 750px) { .content { width: 100%; } }

.opacity:hover { opacity: 0.7; }

/*==================================================================================================== 各項目共通
==================================================================================================== */
.maintitle { font-size: 3.2857142857rem; font-weight: bold; line-height: 1.6; }
@media screen and (max-width: 750px) { .maintitle { font-size: 2.5714285714rem; } }

.subtitle { font-size: 3.2857142857rem; font-weight: bold; line-height: 1.6; color: #1c4e9d; }
@media screen and (max-width: 750px) { .subtitle { font-size: 2.5714285714rem; } }

.cornertitle { font-size: 2.1428571429rem; font-weight: bold; line-height: 1.6; color: #1c4e9d; }
@media screen and (max-width: 750px) { .cornertitle { font-size: 1.8571428571rem; } }

.page-sec { padding-top: 105px; padding-bottom: 80px; background: #1c4e9c url("../img/common/main_bg001.png") no-repeat center top; background-size: cover; color: #fff; }
@media screen and (max-width: 750px) { .page-sec { padding-top: 40px; padding-bottom: 40px; } }
.page-sec .pagetitle { margin-bottom: 6%; font-size: 6.6428571429rem; font-weight: normal; }
@media screen and (max-width: 750px) { .page-sec .pagetitle { font-size: 3.2142857143rem; } }
.page-sec .page-txt { line-height: 2; }

.citytxt { color: #1c4e9d; font-size: 1.1428571429rem; font-weight: bold; }

.slider-sec .slick-dots { bottom: -45px; }

.txt { line-height: 2; }

.cc-box { padding: 5.8823529412% 7.3529411765%; background-color: #f0f0f0; }
.cc-box .cc-mainttle { margin-bottom: 30px; font-size: 1.4285714286rem; font-weight: bold; line-height: 1.6; }
.cc-box .cc-subttle { margin-bottom: 10px; font-size: 1.4285714286rem; color: #1c4e9d; font-weight: bold; line-height: 1.6; }
.cc-box ul { font-size: 1.4285714286rem; color: #1c4e9d; font-weight: bold; line-height: 1.6; }
.cc-box ul li { margin-bottom: 10px; }
.cc-box ul li:last-child { margin-bottom: 0; }

.img-box .subtitle { margin: 40px 0 30px; }
.img-box .cornertitle { margin: 50px 0 25px; }

.btn-link { max-width: 100%; }
@media screen and (max-width: 750px) { .btn-link { width: 100% !important; } }
.btn-link a { display: block; padding: 30px 10px; border: 1px solid #1c4e9d; background-color: #fff; font-size: 1.4285714286rem; font-weight: bold; color: #1c4e9d; text-decoration: none; text-align: center; border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; }
.btn-link a:hover { opacity: 0.7; }
.btn-link a span { padding-right: 35px; background: url("../img/common/link_i001.png") no-repeat right top 3px; }

.txt-link a { padding-left: 25px; background: url("../img/common/link_i002.png") no-repeat left center; font-size: 1.4285714286rem; font-weight: bold; color: #1c4e9d; text-decoration: none; }

.img-column-3 { display: flex; flex-wrap: wrap; }
.img-column-3 li { width: 32.3529411765%; margin-bottom: 1.4705882353%; margin-right: 1.4705882353%; }
.img-column-3 li:nth-child(3n) { margin-right: 0; }

.img-column-2 { display: flex; flex-wrap: wrap; }
.img-column-2 li { width: 49.2647058824%; margin-bottom: 1.4705882353%; margin-right: 1.4705882353%; }
.img-column-2 li:nth-child(2n) { margin-right: 0; }

.item-box { display: flex; justify-content: space-between; align-items: center; padding: 25px 40px; background-color: #f0f0f0; }
@media screen and (max-width: 750px) { .item-box { display: block; padding: 20px; } }
.item-box dl { width: 50%; }
@media screen and (max-width: 750px) { .item-box dl { width: 100%; } }
.item-box dl dt { font-size: 1.4285714286rem; font-weight: bold; line-height: 1.4; color: #1c4e9d; }
.item-box dl dd { line-height: 1.8; }
.item-box figure { width: 47.5%; }
@media screen and (max-width: 750px) { .item-box figure { width: 100%; margin-bottom: 20px; }
  .item-box figure img { width: 100%; } }

.item-box-r { flex-direction: row-reverse; }

.lead-box { display: flex; justify-content: space-between; }
@media screen and (max-width: 750px) { .lead-box { display: block; } }
.lead-box figure { width: 44.1176470588%; }
@media screen and (max-width: 750px) { .lead-box figure { width: 100%; margin-bottom: 20px; }
  .lead-box figure img { width: 100%; } }
.lead-box p { width: 51.4705882353%; line-height: 1.8; }
@media screen and (max-width: 750px) { .lead-box p { width: 100%; } }

.lead-box-l { flex-direction: row-reverse; }

.movie-box .movie-inner { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.movie-box iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.movie-box .caption { margin-top: 30px; font-size: 1.1428571429rem; color: #999; text-align: center; }

.tag { padding-top: 25px; border-top: 1px solid #e8e8e8; color: #999; font-size: 1.1428571429rem; }
.tag span { margin-right: 20px; }

.cmn-reco { padding: 80px 0 170px; background-color: #f4f4f0; }
@media screen and (max-width: 750px) { .cmn-reco { padding: 40px 0 100px; } }
.cmn-reco .inner { padding: 0; }
.cmn-reco .ttl-reco { margin-bottom: 50px; font-size: 3.7142857143rem; font-weight: bold; text-align: center; }
@media screen and (max-width: 750px) { .cmn-reco .ttl-reco { font-size: 2.4285714286rem; } }
@media screen and (max-width: 750px) { .cmn-reco .slider-link .slick-slide { margin: 0 5px; } }
.cmn-reco .slider-link li { max-width: 320px; }
.cmn-reco .slider-link li .time { margin-bottom: 10px; }
.cmn-reco .slider-link li a { text-decoration: none; }
.cmn-reco .slider-link li a:hover img { opacity: 0.7; }
.cmn-reco .slider-link li a figure { margin-bottom: 15px; }
.cmn-reco .slider-link li a dl { padding-right: 20px; }
.cmn-reco .slider-link li a dt { margin-bottom: 15px; color: #1c4e9d; font-size: 1.4285714286rem; font-weight: bold; line-height: 1.6; }
@media screen and (max-width: 750px) { .cmn-reco .slider-link li a dt { font-size: 1.1428571429rem; } }
.cmn-reco .slider-link li a dd { font-size: 1.1428571429rem; color: #000; line-height: 1.6; }
.cmn-reco .slick-dots { bottom: -85px; }
@media screen and (max-width: 750px) { .cmn-reco .slick-dots { bottom: -55px; } }
.cmn-reco .slick-dots li button:before { background-color: #fff; }
.cmn-reco .slick-dots li.slick-active button:before { background-color: #1c4e9d; }

.time { font-size: 1.1428571429rem; }

.time05 { padding: 3px 0 3px 30px; background: url("../img/common/time05.png") no-repeat left center; }

.btn-more a { display: block; text-decoration: none; padding: 10px; background: #1c4e9d url("../img/common/arrow_i001.png") no-repeat right 15px center; font-size: 1.1428571429rem; font-weight: bold; text-align: center; color: #fff; border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; }
.btn-more a:hover { opacity: 0.7; }

.other-sec { padding: 80px 0 85px; background-color: #1c4e9d; }
@media screen and (max-width: 750px) { .other-sec { padding: 40px 0; } }
.other-sec .subtitle { margin-bottom: 55px; color: #fff; text-align: center; }
@media screen and (max-width: 750px) { .other-sec .subtitle { margin-bottom: 30px; } }
.other-sec .other-link { display: flex; justify-content: space-between; margin-bottom: 35px; }
.other-sec .other-link li { position: relative; width: 48%; }
.other-sec .other-link li a:hover img { opacity: 0.7; }
.other-sec .other-link li figcaption { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); text-align: center; color: #fff; font-size: 1.4285714286rem; font-weight: bold; }
@media screen and (max-width: 750px) { .other-sec .other-link li figcaption { font-size: 0.6428571429rem; } }
.other-sec .other-ttl { margin-bottom: 10px; padding: 5px 80px 5px 0; background: url("../img/station/other_i001.png") no-repeat right 5px center; color: #fff; text-align: right; }
.other-sec .other-line dd { display: flex; margin-top: 10px; }
.other-sec .other-line dd p { width: 16.5%; color: #fff; font-size: 1.4285714286rem; font-weight: bold; }
@media screen and (max-width: 750px) { .other-sec .other-line dd p { font-size: 0.5rem; } }
.other-sec .other-line dd p:nth-child(1) { padding-left: 2%; }
.other-sec .other-line dd p:nth-child(2) { padding-left: 2%; }
@media screen and (max-width: 750px) { .other-sec .other-line dd p:nth-child(2) { padding: 0; } }
.other-sec .other-line dd p:nth-child(3) { text-align: center; }
.other-sec .other-line dd p:nth-child(4) { padding-left: 3%; text-align: center; }
.other-sec .other-line dd p:nth-child(5) { padding-left: 4%; text-align: right; }
.other-sec .other-line dd p:nth-child(6) { text-align: right; }

.idx-sec { padding: 75px 0 120px; background-color: #f4f4f0; }
@media screen and (max-width: 750px) { .idx-sec { padding: 40px 8.6666666667%; } }
.idx-sec .idx-box { margin-bottom: 235px; }
@media screen and (max-width: 750px) { .idx-sec .idx-box { margin-bottom: 40px; } }
.idx-sec .subtitle { margin-bottom: 60px; text-align: center; }
@media screen and (max-width: 750px) { .idx-sec .subtitle { margin-bottom: 40px; } }
.idx-sec .link-box { display: flex; margin-bottom: 65px; }
@media screen and (max-width: 750px) { .idx-sec .link-box { display: block; margin-bottom: 30px; } }
.idx-sec .link-box figure { width: 50%; }
@media screen and (max-width: 750px) { .idx-sec .link-box figure { width: 100%; } }
.idx-sec .link-box figure img { width: 100%; }
.idx-sec .link-box .link-box-item { display: flex; width: 50%; }
@media screen and (max-width: 750px) { .idx-sec .link-box .link-box-item { width: 100%; } }
.idx-sec .link-box .link-box-item .link-box-wrap { display: flex; width: 100%; max-width: 615px; padding: 20px 0; background-color: #fff; }
.idx-sec .link-box .link-box-item .link-box-inner { display: flex; align-items: center; width: 65.0406504065%; margin: 0 auto; height: 100%; padding: 20px 0; }
@media screen and (max-width: 750px) { .idx-sec .link-box .link-box-item .link-box-inner { width: 100%; padding: 0 20px; } }
.idx-sec .link-box .link-box-item .link-box-inner .link-box-date { margin-bottom: 7.5%; }
.idx-sec .link-box .link-box-item .link-box-inner .link-box-ttl { margin-bottom: 5%; font-size: 2.8571428571rem; color: #1c4e9d; line-height: 1.4; }
@media screen and (max-width: 750px) { .idx-sec .link-box .link-box-item .link-box-inner .link-box-ttl { font-size: 1.7142857143rem; } }
.idx-sec .link-box .link-box-item .link-box-inner .link-box-txt { margin-bottom: 7.5%; line-height: 2; }
.idx-sec .link-box .link-box-item .link-box-inner .link-box-link a { display: block; text-decoration: none; padding: 10px; background: url("../img/common/arrow_i002.png") no-repeat right 20px center; color: #1c4e9d; text-align: center; border: 1px solid #1c4e9d; border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; }
.idx-sec .link-r { flex-direction: row-reverse; }
.idx-sec .link-r .link-box-item { justify-content: flex-end; }

/*==================================================================================================== サイドバー　各項目
==================================================================================================== */
.sidebar { width: 28%; }
@media screen and (max-width: 750px) { .sidebar { display: none; } }
.sidebar .cmn-slide { margin-bottom: 55px; }
.sidebar .cmn-slide .cmn-slide-ttl { margin-bottom: 5px; padding-bottom: 15px; border-bottom: 3px solid #1c4e9d; font-size: 1.4285714286rem; color: #1c4e9d; font-weight: bold; }
.sidebar .cmn-slide ul li { border-bottom: 1px solid #e5e5e5; }
.sidebar .cmn-slide ul li a { display: block; padding: 10px 0; text-decoration: none; }
.sidebar .cmn-slide ul li a dt { color: #1c4e9d; }
.sidebar .cmn-slide ul li a dd { color: #000; }
.sidebar .cmn-slide ul li a:hover { opacity: 0.7; }
.sidebar .cmn-slide ul li div { display: flex; justify-content: space-between; align-items: center; }
.sidebar .cmn-slide ul li div figure { width: 34.4827586207%; }
.sidebar .cmn-slide ul li div dl { width: 58.6206896552%; }
.sidebar .cmn-slide ul li div dl dt { margin-bottom: 10px; font-size: 1.0714285714rem; font-weight: bold; }
.sidebar .cmn-slide ul li div dl dd { font-size: 0.8571428571rem; line-height: 1.4; }

/*==================================================================================================== ぱんくず
==================================================================================================== */
.topicpath { border-top: 1px solid #e5e5e5; background-color: #f9f9f9; padding: 20px 0; font-size: 0.8571428571rem; }
.topicpath a { text-decoration: none; color: #000; }
.topicpath ol { display: flex; flex-wrap: wrap; line-height: 1.5; }
.topicpath ol li { margin-right: 5px; }

/*==================================================================================================== Slick 共通
==================================================================================================== */
.slick-dotted.slick-slider { margin-bottom: 0 !important; }

.slick-dots li { margin: 0 7px !important; }

.slick-dots li button:before { content: '' !important; opacity: 1 !important; background-color: #e8e8e8; border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; }

.slick-dots li.slick-active button:before { opacity: 1 !important; background-color: #1c4e9d; border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; }

/* ==================================================================================================== フォント
==================================================================================================== */
.font-lato { font-family: 'Lato', sans-serif; }

.font-en { font-family: 'castro', serif; }

.font-nsj { font-family: 'Noto Sans JP', sans-serif; }

.font-min { font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

.fs90 { font-size: 6.4285714286rem; }
@media screen and (max-width: 750px) { .fs90 { font-size: 2.5714285714rem; } }

.fs80 { font-size: 5.7142857143rem; }
@media screen and (max-width: 750px) { .fs80 { font-size: 2.5714285714rem; } }

.fs73 { font-size: 5.2142857143rem; }
@media screen and (max-width: 750px) { .fs73 { font-size: 2.2857142857rem; } }

.fs60 { font-size: 4.2857142857rem; }
@media screen and (max-width: 750px) { .fs60 { font-size: 2.2857142857rem; } }

/* ==================================================================================================== map　吹き出し
==================================================================================================== */
.fukidashi { position: absolute; }
.fukidashi .fukidashi-inner { position: relative; display: inline-block; padding: 20px; max-width: 365px; color: #fff; background: #1c4e9d; border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; box-shadow: 4px 4px 6px #777777; }
@media screen and (max-width: 480px) { .fukidashi .fukidashi-inner { max-width: 265px; padding: 10px; } }
.fukidashi .fukidashi-inner:before { content: ""; position: absolute; top: 100%; left: 50%; margin-left: -75px; border: 15px solid transparent; border-top: 30px solid #1c4e9d; }
.fukidashi .fukidashi-inner .fukidashi-box { display: flex; justify-content: space-between; }
.fukidashi .fukidashi-inner .fukidashi-box figure { width: 36.9230769231%; }
.fukidashi .fukidashi-inner .fukidashi-box dl { width: 58.4615384615%; }
.fukidashi .fukidashi-inner .fukidashi-box dl dt { margin-bottom: 10px; font-size: 1.4285714286rem; font-weight: bold; }
@media screen and (max-width: 750px) { .fukidashi .fukidashi-inner .fukidashi-box dl dt { font-size: 1.2857142857rem; } }
.fukidashi .fukidashi-inner .fukidashi-box dl dd { line-height: 1.4; }

/* ==================================================================================================== ヘッダー
==================================================================================================== */
.header { position: relative; display: flex; justify-content: space-between; }
.header .header-logo { padding: 15px 15px 15px 30px; }
@media screen and (max-width: 480px) { .header .header-logo { padding: 3% 0 3% 5%; width: 70%; } }
.header .header-r { display: flex; align-items: flex-end; justify-content: flex-end; width: 850px; }
@media screen and (max-width: 960px) { .header .header-r { display: none; } }
.header .header-r .station-nav { width: 42.4242424242%; padding: 35px 0 20px 20px; background-color: #f3f7fc; }
@media screen and (max-width: 1099px) { .header .header-r .station-nav { padding: 15px 0 13px 20px; } }
.header .header-r .station-nav dt { margin-bottom: 10px; color: #1c4e9d; font-weight: bold; }
.header .header-r .station-nav dd ul { display: flex; }
.header .header-r .station-nav dd ul li { margin-right: 10px; }
.header .header-r .station-nav dd ul li:last-child { margin-right: 0; }
.header .header-r .station-nav dd ul a { color: #000; text-decoration: none; }
.header .header-r .station-nav dd ul a:hover { text-decoration: underline; }
.header .header-r .gnav { display: flex; }
.header .header-r .gnav a { display: block; padding: 20px 15px; color: #000; text-decoration: none; }
.header .header-r .gnav a:hover { text-decoration: underline; }
.header .header-r .language { width: 93px; height: 93px; padding: 20px 0; background-color: #1c4e9d; color: #fff; }
.header .header-r .language .language-txt { padding-top: 40px; background: url("../img/common/language.png") no-repeat center top; font-size: 0.7142857143rem; font-weight: bold; text-align: center; cursor: pointer; }
.header .header-r .language .language-txt:hover { opacity: 0.7; }
.header .header-r .language .language-txt.active { padding-top: 48px; background: url("../img/common/close.png") no-repeat center top 10px; background-size: 38px auto; }
.header .header-r .language .language-txt.active span { display: none; }
.header .header-r .language .language-popup { z-index: 9999; display: none; position: absolute; top: 93px; left: 0; width: 100%; background-color: #1c4e9d; }
.header .header-r .language .language-popup:hover { opacity: 1; }
.header .header-r .language .language-popup .language-popup-box { max-width: 1040px; margin: 0 auto; padding: 55px 20px 20px; font-size: 1.7142857143rem; }
.header .header-r .language .language-popup .language-popup-box p { margin-bottom: 40px; }
.header .header-r .language .language-popup .language-popup-box ul { display: flex; flex-wrap: wrap; }
.header .header-r .language .language-popup .language-popup-box ul li { width: 50%; margin-bottom: 40px; }
.header .header-r .language .language-popup a { color: #fff; text-decoration: none; }
.header .header-r .language .language-popup a:hover { opacity: 1; text-decoration: underline; }
.header .sp-menu { display: none; }
@media screen and (max-width: 960px) { .header .sp-menu { display: block; position: absolute; top: 0; right: 0; width: 80px; height: 80px; padding-top: 28px; cursor: pointer; background-color: #1c4e9d; } }
@media screen and (max-width: 480px) { .header .sp-menu { width: 18%; padding-top: 5.6%; } }
.header .sp-menu .header-menu { position: relative !important; font-weight: bold; text-align: center; }
.header .sp-menu .header-menu p { position: absolute; width: 100%; padding-top: 26px; top: 0; left: 0; }
.header .sp-menu .header-menu span { position: absolute; display: inline-block; transition: all .4s; left: 15px; width: 50px; height: 2px; background-color: #fff; }
@media screen and (max-width: 480px) { .header .sp-menu .header-menu span { width: 54%; left: 23%; } }
.header .sp-menu .header-menu span:nth-of-type(1) { top: 0; }
.header .sp-menu .header-menu span:nth-of-type(2) { top: 50%; margin-top: -2px; }
.header .sp-menu .header-menu span:nth-of-type(3) { bottom: 0; }

/* ==================================================================================================== SPメニュー
==================================================================================================== */
.nav-menu { display: none; position: fixed; top: 80px; left: 0; width: 100%; height: calc(100% - 80px); background-color: #1c4e9d; z-index: 100; color: #fff; }
@media screen and (max-width: 750px) { .nav-menu { top: 80px; height: calc(100% - 80px); } }
.nav-menu .nav-menu-content-inner { padding: 7.3333333333% 12%; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-content-inner { width: 74.6666666667%; margin: 0 auto; padding: 50px 0; } }
.nav-menu dl { margin-bottom: 35px; border-bottom: 1px solid #4971b1; }
@media screen and (max-width: 750px) { .nav-menu dl { margin-bottom: 20px; } }
.nav-menu dl dt { margin-bottom: 20px; font-size: 1.7142857143rem; font-weight: bold; }
@media screen and (max-width: 750px) { .nav-menu dl dt { font-size: 1.2857142857rem; } }
.nav-menu ul li { margin-bottom: 35px; }
@media screen and (max-width: 750px) { .nav-menu ul li { margin-bottom: 20px; } }
.nav-menu a { display: block; color: #fff; font-size: 2.5714285714rem; text-decoration: none; }
@media screen and (max-width: 750px) { .nav-menu a { font-size: 1.4285714286rem; } }
.nav-menu .nav-menu-list { margin-bottom: 35px; border-bottom: 1px solid #4971b1; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-list { margin-bottom: 20px; } }

.js-menuopen { overflow: hidden; }
.js-menuopen .header-menu span:nth-child(1) { transform: translateY(12px) rotate(-45deg); }
@media screen and (max-width: 750px) { .js-menuopen .header-menu span:nth-child(1) { transform: translateY(12px) rotate(-45deg); } }
.js-menuopen .header-menu span:nth-child(2) { opacity: 0; }
.js-menuopen .header-menu span:nth-child(3) { transform: translateY(-12px) rotate(45deg); }
@media screen and (max-width: 750px) { .js-menuopen .header-menu span:nth-child(3) { transform: translateY(-12px) rotate(45deg); } }
.js-menuopen .nav-menu { display: block; }

.gnavopened .header { position: relative; z-index: 200; background-color: #1c4e9d; }

.gnavopened .nav-menu { display: block; }

/* ==================================================================================================== フッター
==================================================================================================== */
.footer { background: #fff url("../img/common/footer_bg001.png") no-repeat right 200px top; }
@media screen and (max-width: 960px) { .footer { background: #fff url("../img/common/footer_bg001.png") no-repeat right 20px top; } }
@media screen and (max-width: 750px) { .footer { background: none; } }
.footer .page_top { background-image: url(../img/common/top_arrow.png); background-repeat: no-repeat; white-space: nowrap; text-indent: 100%; overflow: hidden; width: 60px; height: 60px; text-align: center; position: fixed; right: 40px; bottom: 40px; }
@media screen and (max-width: 750px) { .footer .page_top { right: 20px; bottom: 20px; } }
.footer .page_top a { width: 60px; height: 60px; display: block; }
.footer .inner { padding-top: 6.5%; padding-bottom: 3%; }
@media screen and (max-width: 750px) { .footer .inner { padding-top: 0; } }
@media screen and (max-width: 750px) { .footer .inner .footer-map { text-align: center; } }
.footer .inner .logo-right { text-align: right; }
@media screen and (max-width: 750px) { .footer .inner .logo-right { text-align: center; } }
.footer .inner .logo-txt { margin-bottom: 25px; font-weight: bold; }
@media screen and (max-width: 750px) { .footer .inner .logo-txt { text-align: center; } }
.footer .inner .logo-txt span { color: #1c4e9d; font-size: 1.1428571429rem; }
.footer .inner .logo-txt span.logo-left { font-size: 1.7857142857rem; }
.footer .inner .logo-txt span .num { font-size: 1.7857142857rem; }
.footer .inner .logo-txt strong { margin-left: 10px; font-size: 1.3571428571rem; }
@media screen and (max-width: 750px) { .footer .inner .footer-link { text-align: center; } }
.footer .copy { padding: 15px; background-color: #000; color: #fff; text-align: center; }

/* ==================================================================================================== HOME
==================================================================================================== */
.home-title { text-align: center; font-weight: bold; font-size: 3.7142857143rem; line-height: 1.2; }
@media screen and (max-width: 750px) { .home-title { font-size: 2.5714285714rem; } }

.home-title-ja { text-align: center; font-weight: bold; font-size: 2.2857142857rem; line-height: 1.5; margin: 0 0 2rem; }
@media screen and (max-width: 750px) { .home-title-ja { font-size: 1.7857142857rem; margin: 0 0 1rem; } }

.main-sec { position: relative; }
.main-sec .ttl-main { position:absolute; top: 35%; left: 9%; width: 80%;}
@media screen and (max-width: 960px) { .main-sec .ttl-main { top: 25%; left: 5%; width: 90%; margin: 0 auto; } }
@media screen and (max-width: 750px) { .main-sec .ttl-main { top: 34%; left: 9%; width: 82.6666666667%; } }
.main-sec .ttl-main img { width: 100%; }
.main-sec .main-player { position: relative; width: 100%; padding-top: 56.25%; }
.main-sec .main-player iframe { position: absolute; top: 0; right: 0; width: 100%; height: 100%; }

.top-sec { margin-top: -120px; margin-bottom: 100px; opacity: 0.99; }
@media screen and (max-width: 960px) { .top-sec { margin-top: 0; } }
@media screen and (max-width: 750px) { .top-sec { margin: 0 0 5rem; } }
.top-sec .inner { background-color: #fff; }
@media screen and (max-width: 960px) { .top-sec .inner { width: 82.6666666667%; margin-top: -120px; padding: 0; } }
@media screen and (max-width: 750px) { .top-sec .inner { margin-top: 2rem; } }
.top-sec .box { display: flex; justify-content: space-between; width: 94%; margin: 0 auto; padding: 3% 0; }
@media screen and (max-width: 960px) { .top-sec .box { display: block; width: 96%; } }
@media screen and (max-width: 750px) { .top-sec .box { width: 100%; padding: 4% 0; } }
.top-sec .top-slider { width: 57.4468085106%; }
@media screen and (max-width: 960px) { .top-sec .top-slider { width: 100%; margin: 0 auto 90px; }
  .top-sec .top-slider img { width: 100%; } }
@media screen and (max-width: 750px) { .top-sec .top-slider { width: 87.0967741935%; margin: 0 auto 2rem; } }
.top-sec .top-slider li { position: relative; }
.top-sec .top-slider li figcaption { position: absolute; bottom: 0; left: 0; width: 100%; padding: 15px; color: #fff; background: rgba(54, 128, 189, 0.7); text-align: center; font-weight: bold; line-height: 1.4; }
@media screen and (max-width: 750px) { .top-sec .top-slider li figcaption { font-size: 0.6428571429rem; } }
@media screen and (max-width: 480px) { .top-sec .top-slider li figcaption { padding: 10px 5px; font-size: 0.5rem; } }
.top-sec .top-slider .slick-dots { bottom: -45px; }
.top-sec .top-access { position: relative; width: 39.8936170213%; padding-top: 10px; }
@media screen and (max-width: 960px) { .top-sec .top-access { width: 69.3333333333%; margin: 0 auto; padding-top: 0; } }
@media screen and (max-width: 750px) { .top-sec .top-access { width: 87.0967741935%; } }
.top-sec .top-access dl dt { margin-bottom: 10px; padding: 10px; background-color: #1c4e9d; color: #fff; font-size: 1.2142857143rem; font-weight: bold; text-align: center; border-radius: 2px; -webkit-border-radius: 2px; -moz-border-radius: 2px; }
.top-sec .top-access dl dd { margin-bottom: 10px; padding: 0 10px; color: #1c4e9d; font-size: 1.0714285714rem; line-height: 1.6; }
@media screen and (max-width: 750px) { .top-sec .top-access dl dd { font-size: 0.8571428571rem; padding: 5px 10px; } }
.top-sec .top-access dl dd .icon-top { display: inline-block; padding-left: 75px; background: url("../img/home/top_i001.png") no-repeat left center; }
.top-sec .top-access dl dd .icon-arrow { display: inline-block; padding: 5px 0 5px 20px; background: url("../img/home/arrow_i001.png") no-repeat left center; }
@media screen and (max-width: 750px) { .top-sec .top-access dl dd .icon-arrow { padding: 7px 0 7px 20px; } }
.top-sec .top-access dl .short { width: 80%; }
.top-sec .top-access .txt { position: absolute; top: 45px; right: -20px; padding: 20px 0 20px 20px; background: url("../img/home/arrow_i002.png") no-repeat left center; font-weight: bold; writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; }
@media screen and (max-width: 960px) { .top-sec .top-access .txt { top: 35px; } }
@media screen and (max-width: 750px) { .top-sec .top-access .txt { top: 60px; font-size: 0.8571428571rem; } }
.top-sec .top-access .txt span { color: #1c4e9d; }

.location-sec { margin-bottom: 75px; }
@media screen and (max-width: 750px) { .location-sec { margin: 0 0 5rem; } }
.location-sec .box { display: flex; justify-content: space-between; margin-bottom: 60px; }
@media screen and (max-width: 750px) { .location-sec .box { display: block; } }
.location-sec .box .txt { width: 75%; }
@media screen and (max-width: 750px) { .location-sec .box .txt { width: 100%; } }
.location-sec .box .txt .home-title { margin-bottom: 20px; text-align: left; }
.location-sec .box .txt div { line-height: 1.8; }
@media screen and (max-width: 750px) { .location-sec .box .txt div { overflow: hidden; }
  .location-sec .box .txt div .space { float: right; height: 13em; }
  .location-sec .box .txt div .img { float: right; clear: both; width: 50%; margin: 5px 0 0 10px; }
  .location-sec .box .txt div .img img { width: 100%; } }
.location-sec .box figure { width: 22%; }
.location-sec .map .inner { position: relative; }
@media screen and (max-width: 750px) { .location-sec .map .inner { max-width: 100%; padding: 0; } }
.location-sec .map .fukidashi { display: none; width: 365px; bottom: 180%; left: -420%; z-index: 1; }
@media screen and (max-width: 750px) { .location-sec .map .fukidashi { left: -560%; } }
@media screen and (max-width: 480px) { .location-sec .map .fukidashi { left: -320%; } }
.location-sec .map .fukidashi a { text-decoration: none; }
.location-sec .map .map-station { position: absolute; }
@media screen and (max-width: 750px) { .location-sec .map .map-station { width: 20px; } }
.location-sec .map .map-station:hover .fukidashi { display: block; }
.location-sec .map .station01 { top: 67%; left: 13%; }
@media screen and (max-width: 750px) { .location-sec .map .station01 { top: 66%; left: 11%; } }
@media screen and (max-width: 480px) { .location-sec .map .station01 { top: 62%; left: 10%; } }
.location-sec .map .station01 .fukidashi { left: -400%; }
@media screen and (max-width: 750px) { .location-sec .map .station01 .fukidashi .fukidashi-inner:before { margin-left: -105px; } }
.location-sec .map .station02 { top: 54%; left: 17%; }
@media screen and (max-width: 750px) { .location-sec .map .station02 { top: 50%; } }
@media screen and (max-width: 480px) { .location-sec .map .station02 { top: 47%; } }
.location-sec .map .station03 { top: 49%; left: 37%; }
@media screen and (max-width: 750px) { .location-sec .map .station03 { top: 46%; left: 35%; } }
@media screen and (max-width: 480px) { .location-sec .map .station03 { top: 43%; left: 34%; } }
.location-sec .map .station04 { top: 59%; left: 40%; }
@media screen and (max-width: 750px) { .location-sec .map .station04 { left: 39%; } }
@media screen and (max-width: 480px) { .location-sec .map .station04 { top: 62%; } }
.location-sec .map .station05 { top: 74%; left: 46%; }
@media screen and (max-width: 750px) { .location-sec .map .station05 { top: 71%; } }
@media screen and (max-width: 480px) { .location-sec .map .station05 { top: 68%; } }
.location-sec .map .station06 { top: 58%; right: 35%; }
@media screen and (max-width: 750px) { .location-sec .map .station06 { top: 56%; } }
@media screen and (max-width: 480px) { .location-sec .map .station06 { top: 53%; } }
.location-sec .map .station07 { top: 17%; right: 13%; }
@media screen and (max-width: 750px) { .location-sec .map .station07 { top: 14%; right: 11%; } }
@media screen and (max-width: 480px) { .location-sec .map .station07 { top: 11%; } }
.location-sec .map .station07 .fukidashi { left: -960%; }
@media screen and (max-width: 750px) { .location-sec .map .station07 .fukidashi { left: -1300%; } }
.location-sec .map .station07 .fukidashi .fukidashi-inner:before { margin-left: 70px; }
.location-sec .home-title-ja { margin: 2rem auto; text-align: left;}
.location-sec .hosttown .hosttown-nav ul { margin: 2rem auto 0; }

.td-sec .home-title { margin: 0 auto 40px; font-weight: normal; text-align: center; }
@media screen and (max-width: 750px) { .td-sec .home-title { width: 75%; font-weight: bold; } }
@media screen and (max-width: 480px) { .td-sec .home-title { width: 68%; } }
.td-sec .lead { margin-bottom: 60px; font-size: 2.1428571429rem; color: #1c4e9d; font-weight: bold; text-align: center; line-height: 1.4; }
@media screen and (max-width: 480px) { .td-sec .lead { font-size: 1.5714285714rem; } }
.td-sec .list { margin-bottom: 90px; }
@media screen and (max-width: 1200px) { .td-sec .list .inner { max-width: 800px; } }
@media screen and (max-width: 960px) { .td-sec .list .inner { max-width: 600px; } }
@media screen and (max-width: 750px) { .td-sec .list .inner { max-width: 100%; padding: 0; } }
.td-sec .list .ttl-list { margin-bottom: 30px; font-size: 3.2857142857rem; text-align: center; color: #1c4e9d; font-weight: bold; }
@media screen and (max-width: 750px) { .td-sec .list .ttl-list { font-size: 2.2857142857rem; } }
.td-sec .list .list-slider { position: relative; }
@media screen and (max-width: 750px) { .td-sec .list .list-slider .slick-slide { margin: 0 10px; } }
.td-sec .list .list-slider ul a { text-decoration: none; color: #000; }
.td-sec .list .list-slider ul a img:hover { opacity: 0.7; }
.td-sec .list .list-slider ul figure { position: relative; }
.td-sec .list .list-slider ul figure figcaption { position: absolute; bottom: 0; left: 0; width: 97%; padding: 10px 5px; background: rgba(73, 113, 176, 0.7); color: #fff; font-weight: bold; text-align: center; }
@media screen and (max-width: 1200px) { .td-sec .list .list-slider ul figure figcaption { width: 97%; } }
@media screen and (max-width: 750px) { .td-sec .list .list-slider ul figure figcaption { position: static; width: 100%; background: none; margin-top: 20px; padding: 0; color: #000; } }
.td-sec .list .slide-btn { position: absolute; top: 50%; margin-top: -25px; cursor: pointer; }
@media screen and (max-width: 750px) { .td-sec .list .slide-btn { display: none; } }
.td-sec .list .slide-prev { left: -80px; }
.td-sec .list .slide-prev:hover { opacity: 0.7; }
.td-sec .list .slide-next { right: -80px; }
.td-sec .list .slide-next:hover { opacity: 0.7; }

.model-sec { margin-bottom: 90px; padding: 80px 0 145px; background-color: #f4f4f0; }
.model-sec .tabcontents { max-width: 1040px; margin: 0 auto; padding: 0 20px; }
@media screen and (max-width: 1200px) { .model-sec .tabcontents { max-width: 800px; padding: 0; } }
@media screen and (max-width: 960px) { .model-sec .tabcontents { max-width: 600px; } }
@media screen and (max-width: 750px) { .model-sec .tabcontents { max-width: 100% !important; } }
.model-sec .home-title { margin-bottom: 50px; }
@media screen and (max-width: 750px) { .model-sec .home-title { font-size: 2.2857142857rem; } }
.model-sec .tabmenu { display: flex; justify-content: center; margin-bottom: 40px; border-bottom: 2px solid #1c4e9d; }
@media screen and (max-width: 750px) { .model-sec .tabmenu { border-bottom: none; } }
.model-sec .tabmenu li { padding: 20px; font-size: 1.1428571429rem; text-align: center; font-weight: bold; cursor: pointer; }
@media screen and (max-width: 750px) { .model-sec .tabmenu li { padding: 20px 5px; font-size: 1rem; } }
@media screen and (max-width: 480px) { .model-sec .tabmenu li { padding: 10px 5px; font-size: 0.8571428571rem; } }
.model-sec .tabmenu li.active { color: #1c4e9d; background: url("../img/home/active.png") no-repeat center bottom; }
@media screen and (max-width: 750px) { .model-sec .tabmenu li.active { background: none; border-bottom: 2px solid #1c4e9d; } }
.model-sec .tab { display: none; }
.model-sec .tab.active { display: block; }
.model-sec .reco-slider { position: relative; }
@media screen and (max-width: 750px) { .model-sec .reco-slider .slick-slide { margin: 0 10px; } }
@media screen and (max-width: 480px) { .model-sec .reco-slider .slick-slide { margin: 0 5px; } }
.model-sec .reco-slider li a { text-decoration: none; color: #1c4e9d; }
.model-sec .reco-slider li a img:hover { opacity: 0.7; }
.model-sec .reco-slider li figcaption { margin-top: 20px; font-size: 1.4285714286rem; font-weight: bold; }
.model-sec .slide-btn { position: absolute; top: 50%; margin-top: -25px; cursor: pointer; }
@media screen and (max-width: 750px) { .model-sec .slide-btn { margin-top: -35px; } }
.model-sec .slide-prev { left: -80px; }
@media screen and (max-width: 750px) { .model-sec .slide-prev { left: 15px; } }
.model-sec .slide-prev:hover { opacity: 0.7; }
.model-sec .slide-next { right: -80px; }
@media screen and (max-width: 750px) { .model-sec .slide-next { right: 15px; } }
.model-sec .slide-next:hover { opacity: 0.7; }
.model-sec .slick-dots { bottom: -75px; }
.model-sec .slick-dots li button:before { background-color: #fff; }
.model-sec .slick-dots li.slick-active button:before { background-color: #1c4e9d; }

.activities-sec { margin-bottom: 100px; }
.activities-sec .home-title { margin-bottom: 60px; }
.activities-sec p { text-align: center; }

.seasons-sec { margin-bottom: 210px; }
.seasons-sec .home-title { margin-bottom: 60px; }
.seasons-sec .slick-slide { margin: 0 10px; }
@media screen and (max-width: 960px) { .seasons-sec .slick-slide { margin: 0; } }
.seasons-sec .slick-dots { bottom: -80px; }
.seasons-sec ul li { position: relative; text-align: center; }
.seasons-sec ul li figcaption { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); width: 250px; height: 250px; display: flex; justify-content: center; align-items: center; text-align: center; background-color: #1c4e9d; color: #fff; font-size: 3.7142857143rem; }
@media screen and (max-width: 750px) { .seasons-sec ul li figcaption { width: 210px; height: 210px; font-size: 2.2857142857rem; } }
@media screen and (max-width: 480px) { .seasons-sec ul li figcaption { width: 150px; height: 150px; font-size: 2.2857142857rem; } }
.seasons-sec ul li img { width: 100%; margin: 0 auto; }

.banner-sec { margin-bottom: 100px; }
.banner-sec p { text-align: center; }

.access-home-sec { padding: 8% 0; background-color: #f4f4f0; }
@media screen and (max-width: 480px) { .access-home-sec { padding: 40px 0; } }
.access-home-sec .home-title { margin-bottom: 40px; }
.access-home-sec .btn-access a { display: block; padding: 20px; background-color: #1c4e9d; color: #fff; text-decoration: none; text-align: center; font-size: 1.7142857143rem; border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; }
@media screen and (max-width: 480px) { .access-home-sec .btn-access a { padding: 10px; font-size: 1.2857142857rem; } }
.access-home-sec .btn-access a:hover { opacity: 0.7; }
.access-home-sec .btn-access a span { font-size: 1.1428571429rem; }

.souvenir-sec { padding: 8% 0; background: url("../img/home/souvenir_bg001.png"); }
@media screen and (max-width: 480px) { .souvenir-sec { padding: 40px 0; } }
.souvenir-sec .inner { position: relative; }
.souvenir-sec .ttl-souvenir { position: absolute; top: 50%; left: 50%; width: 50%; margin-top: -55px; margin-left: -250px; padding: 30px 0; background-color: #000; color: #fff; font-size: 3.5714285714rem; text-align: center; }
@media screen and (max-width: 960px) { .souvenir-sec .ttl-souvenir { margin-top: -45px; margin-left: -180px; font-size: 2.1428571429rem; } }
@media screen and (max-width: 750px) { .souvenir-sec .ttl-souvenir { margin-top: -30px; margin-left: -120px; padding: 15px 5px; font-size: 1.4285714286rem; } }
@media screen and (max-width: 480px) { .souvenir-sec .ttl-souvenir { margin-top: -25px; margin-left: -90px; } }
.souvenir-sec p { text-align: center; }

/* ==================================================================================================== テンプレート
==================================================================================================== */
.template .ttl-box { padding-top: 60px; }
@media screen and (max-width: 750px) { .template .ttl-box { padding-top: 40px; } }
.template .maintitle { margin-bottom: 35px; }
.template .slider-sec { margin-bottom: 100px; }
.template .txt { margin-bottom: 50px; }
.template .citytxt { margin-bottom: 40px; }
.template .cc-box { margin-bottom: 70px; }
.template .btn-link { width: 420px; margin-bottom: 40px; }
.template .txt-link { margin-bottom: 100px; }
.template .item-box { margin-top: 50px; margin-bottom: 80px; }
.template .lead-box { margin-bottom: 50px; }
.template .movie-box { margin-bottom: 110px; }
.template .tag { margin-bottom: 125px; }

/* ==================================================================================================== station
==================================================================================================== */
.station .topbox { padding-top: 60px; margin-bottom: 80px; }
@media screen and (max-width: 750px) { .station .topbox { padding-top: 40px; margin-bottom: 40px; } }
.station .topbox .inner { display: flex; justify-content: space-between; align-items: center; flex-direction: row-reverse; }
@media screen and (max-width: 750px) { .station .topbox .inner { display: block; } }
.station .topbox .topbox-txt { width: 66%; }
@media screen and (max-width: 750px) { .station .topbox .topbox-txt { width: 100%; } }
.station .topbox .topbox-txt .maintitle { margin-bottom: 40px; }
@media screen and (max-width: 750px) { .station .topbox .topbox-txt .maintitle { margin-bottom: 20px; } }
.station .topbox figure { width: 26%; }
@media screen and (max-width: 750px) { .station .topbox figure { width: 100%; margin-bottom: 20px; text-align: center; } }
.station .spot { margin-bottom: 150px; }
@media screen and (max-width: 750px) { .station .spot { margin-bottom: 60px; } }
.station .spot ul { display: flex; justify-content: space-between; }
@media screen and (max-width: 750px) { .station .spot ul { display: block; } }
.station .spot li { width: 32%; }
@media screen and (max-width: 750px) { .station .spot li { width: 100%; margin-bottom: 40px; }
  .station .spot li:last-child { margin-bottom: 0; }
  .station .spot li img { width: 100%; } }
.station .spot li a { text-decoration: none; }
.station .spot li a dt { color: #1c4e9d; }
.station .spot li a dd { color: #000; }
.station .spot li a:hover img { opacity: 0.7; }
.station .spot li dl { margin-top: 15px; }
.station .spot li dl dt { margin-bottom: 20px; font-size: 1.4285714286rem; line-height: 1.4; font-weight: bold; }
.station .spot li dl dd { font-size: 1.1428571429rem; }
.station .spot li dl dd span { padding-left: 20px; background: url("../img/common/spot_i001.png") no-repeat left center; }
@media screen and (max-width: 750px) { .station .spot li dl dd span { padding: 5px 0 5px 20px; } }
.station .infomation { margin-bottom: 130px; }
@media screen and (max-width: 750px) { .station .infomation { margin-bottom: 80px; } }
.station .infomation .infomation-top { display: flex; justify-content: space-between; margin-bottom: 20px; }
@media screen and (max-width: 750px) { .station .infomation .infomation-top { display: block; } }
.station .infomation .infomation-top .subtitle { width: 66%; }
@media screen and (max-width: 750px) { .station .infomation .infomation-top .subtitle { width: 100%; margin-bottom: 20px; } }
.station .infomation .infomation-top .btn-link { width: 24%; }
.station .infomation .infomation-top .btn-link a { padding: 20px 5px; font-size: 1.1428571429rem; }
.station .infomation .infomation-top .btn-link a span { padding-right: 35px; background: url("../img/common/link_i001.png") no-repeat right top; }
.station .infomation .search { display: flex; justify-content: space-between; width: 78%; margin-bottom: 25px; }
@media screen and (max-width: 750px) { .station .infomation .search { display: block; width: 100%; } }
.station .infomation .search .search-check { display: flex; flex-wrap: wrap; }
@media screen and (max-width: 750px) { .station .infomation .search .search-check { margin-bottom: 20px; } }
.station .infomation .search .search-check li { margin-right: 20px; font-size: 1.1428571429rem; }
.station .infomation .search .search-check li:last-child { margin-right: 0; }
.station .infomation .search .search-distance { display: flex; width: 17.307692307700002%; }
@media screen and (max-width: 750px) { .station .infomation .search .search-distance { width: 100%; } }
.station .infomation .search .search-distance li { width: 48.1481481481%; margin-right: 5px; padding: 5px; border: 1px solid #1c4e9d; background-color: #fff; color: #1c4e9d; text-align: center; font-size: 1.1428571429rem; border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; cursor: pointer; }
@media screen and (max-width: 750px) { .station .infomation .search .search-distance li { width: 48%; margin-right: 2%; } }
.station .infomation .search .search-distance li:last-child { margin-right: 0; }
.station .infomation .search .search-distance .active { background-color: #1c4e9d; color: #fff; }
.station .infomation .infomation-map .inner { display: flex; justify-content: space-between; }
@media screen and (max-width: 750px) { .station .infomation .infomation-map .inner { display: block; padding: 0; position: relative; } }
.station .infomation .infomation-map .map-inner { position: relative; width: 78%; padding-bottom: 56.25%; height: 0; overflow: hidden; }
@media screen and (max-width: 750px) { .station .infomation .infomation-map .map-inner { position: static; width: 100%; } }
.station .infomation .infomation-map .map-inner iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.station .infomation .infomation-map .map-inner .fukidashi { top: 10%; left: 35%; }
@media screen and (max-width: 750px) { .station .infomation .infomation-map .map-inner .fukidashi { top: -45%; left: 22%; } }
@media screen and (max-width: 480px) { .station .infomation .infomation-map .map-inner .fukidashi { top: -50%; left: 25%; } }
.station .infomation .infomation-map .sidebar { width: 20% !important; }

/* ==================================================================================================== course
==================================================================================================== */
.course .ttl-box { padding-top: 60px; margin-bottom: 40px; }
@media screen and (max-width: 750px) { .course .ttl-box { padding-top: 40px; } }
.course .ttl-box .flex { display: flex; align-items: center; margin-top: 20px; }
.course .ttl-box .flex .time { margin-right: 20px; }
.course .slider-sec { margin-bottom: 100px; }
.course .txt { margin-bottom: 50px; }
.course .cc-box { margin-bottom: 100px; }
.course .cc-box ul { margin-bottom: 20px; }
.course .cc-box .btn-more { max-width: 400px; }
.course .day-sec { margin-bottom: 140px; }
.course .day-sec .subtitle { margin-bottom: 10px; }
.course .day-sec .areatitle { padding: 10px; background-color: #1c4e9d; font-size: 1.5714285714rem; font-weight: bold; color: #fff; text-align: center; border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; }
.course .day-sec .areatitle-b { -webkit-border-top-left-radius: 4px; -webkit-border-top-right-radius: 4px; -webkit-border-bottom-right-radius: 0; -webkit-border-bottom-left-radius: 0; -moz-border-radius-topleft: 4px; -moz-border-radius-topright: 4px; -moz-border-radius-bottomright: 0; -moz-border-radius-bottomleft: 0; }
.course .day-sec .root { padding: 5px 0 0; }
.course .day-sec .root .root-inner { display: flex; align-items: center; background: url("../img/course/line.png") repeat-y center top; padding: 34px 0; }
.course .day-sec .root figure { width: 50%; text-align: right; padding-right: 2.9411764706%; }
.course .day-sec .root dl { width: 50%; padding-left: 2.9411764706%; }
.course .day-sec .root dl dt { margin-bottom: 5px; font-size: 1.1428571429rem; font-weight: bold; line-height: 1.4; }
.course .day-sec .root dl dd { font-size: 1.1428571429rem; font-weight: bold; color: #1c4e9d; }
.course .day-sec .item-box dl { width: 47.5%; }
@media screen and (max-width: 750px) { .course .day-sec .item-box dl { width: 100%; } }
.course .day-sec .item-box dl dt { margin-bottom: 10px; }
.course .day-sec .goal { border: 5px solid #eea210; border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; }
.course .day-sec .goal .goal-ttl { position: relative; padding: 15px 5px; background-color: #eea210; font-size: 1.5714285714rem; text-align: center; font-weight: bold; color: #fff; }
.course .day-sec .goal .icon { position: absolute; top: 10px; right: 20px; display: flex; align-items: center; }
@media screen and (max-width: 750px) { .course .day-sec .goal .icon { right: 5px; width: 15%; } }
.course .day-sec .goal .icon li { margin-right: 15px; }
@media screen and (max-width: 750px) { .course .day-sec .goal .icon li { margin-right: 5px; } }
.course .day-sec .goal .icon li:last-child { margin-right: 0; }
.course .day-sec .root-item { padding: 20px; border: 2px solid #1c4e9d; border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; }
.course .day-sec .or-txt { margin: 15px 0; font-size: 1.1428571429rem; color: #1c4e9d; font-weight: bold; text-align: center; }
.course .routemap-sec { margin-bottom: 100px; }
@media screen and (max-width: 750px) { .course .routemap-sec { margin-bottom: 80px; } }
@media screen and (max-width: 750px) { .course .routemap-sec .inner { padding: 0; } }
.course .routemap-sec .subtitle { margin-bottom: 30px; }
@media screen and (max-width: 750px) { .course .routemap-sec .subtitle { padding: 0 8.6666666667%; } }
@media screen and (max-width: 480px) { .course .routemap-sec .subtitle { padding: 0 5.3333333333%; } }
.course .routemap-sec .map-inner { position: relative; width: 68%; padding-bottom: 40%; height: 0; overflow: hidden; }
@media screen and (max-width: 750px) { .course .routemap-sec .map-inner { width: 100%; } }
.course .routemap-sec .map-inner iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.course .hotel-sec { margin-bottom: 130px; }
@media screen and (max-width: 750px) { .course .hotel-sec { margin-bottom: 40px; } }
@media screen and (max-width: 750px) { .course .hotel-sec .inner { padding: 0; } }
.course .hotel-sec .box { position: relative; width: 68%; }
@media screen and (max-width: 750px) { .course .hotel-sec .box { width: 100%; } }
.course .hotel-sec .ttl-hotel { margin-bottom: 35px; font-size: 2.1428571429rem; font-weight: bold; color: #1c4e9d; line-height: 1.5; }
@media screen and (max-width: 750px) { .course .hotel-sec .ttl-hotel { padding: 0 8.6666666667%; font-size: 1.7142857143rem; } }
@media screen and (max-width: 480px) { .course .hotel-sec .ttl-hotel { padding: 0 5.3333333333%; } }
@media screen and (max-width: 750px) { .course .hotel-sec .slick-slide { margin: 0 10px; } }
.course .hotel-sec ul { width: 88.2352941176%; margin: 0 auto; }
@media screen and (max-width: 750px) { .course .hotel-sec ul { width: 100%; } }
.course .hotel-sec li { position: relative; width: 32.3333333333%; }
.course .hotel-sec li:hover { opacity: 0.7; }
.course .hotel-sec li figcaption { position: absolute; bottom: 0; left: 0; width: 97%; padding: 10px 5px; background: rgba(73, 113, 176, 0.7); color: #fff; text-align: center; font-weight: bold; line-height: 1.4; }
@media screen and (max-width: 960px) { .course .hotel-sec li figcaption { width: 100%; } }
.course .hotel-sec .slide-btn { position: absolute; top: 50%; margin-top: -15px; cursor: pointer; }
@media screen and (max-width: 750px) { .course .hotel-sec .slide-btn { display: none; } }
.course .hotel-sec .slide-prev { left: 0; }
.course .hotel-sec .slide-prev:hover { opacity: 0.7; }
.course .hotel-sec .slide-next { right: 0; }
.course .hotel-sec .slide-next:hover { opacity: 0.7; }
.course .bottom-banner { width: 68%; }
@media screen and (max-width: 750px) { .course .bottom-banner { width: 100%; } }
/* ==================================================================================================== hosttown
==================================================================================================== */
.hosttown .hosttown-bg { background: linear-gradient(180deg, #fff 0%, #fff 30%, #f4f4f0 30%, #f4f4f0 100%); }
@media screen and (max-width: 750px) { .hosttown .hosttown-bg { background: linear-gradient(180deg, #fff 0%, #fff 20%, #f4f4f0 20%, #f4f4f0 100%); } }
.hosttown .hosttown-nav ul { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; width: 66%; margin: 100px auto 0; }
@media screen and (max-width: 960px) { .hosttown .hosttown-nav ul { width: 100%; } }
@media screen and (max-width: 750px) { .hosttown .hosttown-nav ul { margin: 40px auto; } }
.hosttown .hosttown-nav li { width: 18.1818181818%; margin-right: 2.2727272727%; margin-bottom: 2.2727272727%; }
@media screen and (max-width: 750px) { .hosttown .hosttown-nav li { width: 48%; margin-right: 2%; margin-bottom: 2%; }
  .hosttown .hosttown-nav li:nth-child(2n) { margin-right: 0; }
  .hosttown .hosttown-nav li:nth-child(5) { margin-right: 2% !important; } }
.hosttown .hosttown-nav li:nth-child(5) { margin-right: 0; }
.hosttown .hosttown-nav li:last-child { margin-right: 0; }
.hosttown .hosttown-nav li a { display: block; text-decoration: none; padding: 10px 5px; border: 1px solid #1c4e9d; color: #1c4e9d; text-align: center; border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; }
.hosttown .hosttown-nav li a:hover { background-color: #1c4e9d; color: #fff; }
.hosttown .hosttown-item { padding-top: 100px; padding-bottom: 100px; }
@media screen and (max-width: 750px) { .hosttown .hosttown-item { padding-top: 40px; padding-bottom: 40px; } }
.hosttown .hosttown-item .ico-france { background: url("../img/hosttown/france_i001.png") no-repeat left center; }
.hosttown .hosttown-item .ico-canada { background: url("../img/hosttown/canada_i001.png") no-repeat left center; }
.hosttown .hosttown-item .ico-uzbekistan { background: url("../img/hosttown/uzbekistan_i001.png") no-repeat left center; }
.hosttown .hosttown-item .ico-china { background: url("../img/hosttown/china_i001.png") no-repeat left center; }
.hosttown .hosttown-item .ico-mongolia { background: url("../img/hosttown/mongolia_i001.png") no-repeat left center; }
.hosttown .hosttown-item .ico-uk { background: url("../img/hosttown/uk_i001.png") no-repeat left center; }
.hosttown .hosttown-item .ico-greece { background: url("../img/hosttown/greece_i001.png") no-repeat left center; }
.hosttown .hosttown-item .ico-singapore { background: url("../img/hosttown/singapore_i001.png") no-repeat left center; }
.hosttown .hosttown-item .ico-haiti { background: url("../img/hosttown/haiti_i001.png") no-repeat left center; }
.hosttown .hosttown-item .ico-germany { background: url("../img/hosttown/germany_i001.png") no-repeat left center; }
.hosttown .hosttown-item .ico-lithuania { background: url("../img/hosttown/lithuania_i001.png") no-repeat left center; }
.hosttown .hosttown-item .hosttown-ttl { margin-bottom: 55px; font-size: 3.2857142857rem; text-align: center; font-weight: bold; }
@media screen and (max-width: 750px) { .hosttown .hosttown-item .hosttown-ttl { margin-bottom: 40px; } }
.hosttown .hosttown-item .hosttown-country { display: flex; align-items: center; justify-content: center; margin-bottom: 55px; font-size: 1.1428571429rem; }
@media screen and (max-width: 750px) { .hosttown .hosttown-item .hosttown-country { display: block; margin-bottom: 40px; } }
.hosttown .hosttown-item .hosttown-country dt { color: #1c4e9d; }
@media screen and (max-width: 750px) { .hosttown .hosttown-item .hosttown-country dt { text-align: center; margin-bottom: 10px; } }
.hosttown .hosttown-item .hosttown-country dd { display: flex; align-items: center; justify-content: center; }
.hosttown .hosttown-item .hosttown-country dd p { margin-left: 15px; padding-left: 30px; }
.hosttown .hosttown-item .hosttown-img { display: flex; margin-bottom: 70px; }
@media screen and (max-width: 750px) { .hosttown .hosttown-item .hosttown-img { margin-bottom: 40px; } }
.hosttown .hosttown-item .hosttown-img li { width: 33.3%; }
.hosttown .hosttown-item .hosttown-txt { width: 70%; margin: 0 auto 60px; line-height: 2; }
@media screen and (max-width: 960px) { .hosttown .hosttown-item .hosttown-txt { width: 100%; } }
@media screen and (max-width: 750px) { .hosttown .hosttown-item .hosttown-txt { margin: 0 auto 40px; } }
.hosttown .hosttown-item .hosttown-lead { width: 70%; margin: 0 auto 50px; }
@media screen and (max-width: 960px) { .hosttown .hosttown-item .hosttown-lead { width: 100%; } }
@media screen and (max-width: 750px) { .hosttown .hosttown-item .hosttown-lead { margin: 0 auto 40px; } }
.hosttown .hosttown-item .hosttown-lead dt { margin-bottom: 25px; font-size: 2.1428571429rem; color: #1c4e9d; font-weight: bold; }
@media screen and (max-width: 750px) { .hosttown .hosttown-item .hosttown-lead dt { font-size: 1.4285714286rem; } }
.hosttown .hosttown-item .hosttown-lead dd { line-height: 2; }
.hosttown .hosttown-item .hosttown-link { width: 42%; margin: 0 auto; }
@media screen and (max-width: 960px) { .hosttown .hosttown-item .hosttown-link { width: 100%; } }
.hosttown .hosttown-item .hosttown-link li { margin-bottom: 20px; }
.hosttown .hosttown-item .hosttown-link li a { display: block; padding: 25px 20px; background: url("../img/common/arrow_i002.png") no-repeat right 20px center; text-decoration: none; text-align: center; border: 1px solid #1c4e9d; font-size: 1.4285714286rem; font-weight: bold; color: #1c4e9d; border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; }
.hosttown .hosttown-item .hosttown-link li a:hover { background: #1c4e9d url("../img/common/arrow_i003.png") no-repeat right 20px center; color: #fff; }
@media screen and (max-width: 750px) { .hosttown .hosttown-item .hosttown-link li a { font-size: 1rem; } }

.clearfix { zoom: 1; }
.clearfix::before { content: ""; display: table; }
.clearfix::after { content: ""; display: table; clear: both; }

/*# sourceMappingURL=style.css.map */
