@charset "UTF-8";
/*メイン*/
/*歴史*/
/*産業*/
/*自然*/
/*食*/
/*文化*/
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; }

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

body { font-family: 'Noto Sans JP', sans-serif; font-weight: 300; /*font-family: YuGothicM, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;*/ -webkit-text-size-adjust: 100%; color: #3c3c3c; }

li { list-style: none; }

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

a { color: #3c3c3c; }
a:hover { text-decoration: none; }

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

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

select { font-family: inherit; }

.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 { position: relative; padding-top: 95px; }
@media screen and (max-width: 750px) { .main { padding-top: 5.3333333333%; } }

.inner { max-width: 1240px; margin: 0 auto; padding: 0 20px; line-height: 1.6; }
@media screen and (max-width: 750px) { .inner { padding: 0 4%; } }

/* ==================================================================================================== ヘッダー
==================================================================================================== */
.header { z-index: 99; position: relative; }
.header .header-in { position: absolute; display: flex; align-items: flex-start; justify-content: space-between; width: 100%; }
.header .header-logo { margin-left: 60px; }
@media screen and (max-width: 960px) { .header .header-logo { margin-left: 30px; margin-right: 10px; } }
@media screen and (max-width: 750px) { .header .header-logo { width: 90px; margin-left: 4%; } }
@media screen and (max-width: 480px) { .header .header-logo { width: 70px; } }
.header .header-r { display: flex; align-items: flex-start; justify-content: flex-end; padding-left: 20px; background-color: #fff; -webkit-border-bottom-left-radius: 20px; -moz-border-radius-bottomleft: 20px; }
@media screen and (max-width: 750px) { .header .header-r { background: none; padding-left: 0; } }
.header .header-r .header-link { margin-top: 20px; margin-right: 30px; padding-right: 25px; border-right: 1px solid #324b80; }
@media screen and (max-width: 750px) { .header .header-r .header-link { max-width: 136px; margin: 0; padding: 0; border: none; } }
@media screen and (max-width: 480px) { .header .header-r .header-link { max-width: 115px; } }
.header .header-r ul { display: flex; justify-content: center; margin-top: 40px; margin-right: 30px; }
@media screen and (max-width: 750px) { .header .header-r ul { display: none; } }
.header .header-r ul li { margin-right: 15px; }
.header .header-r ul li:last-child { margin-right: 0; }
.header .menu { display: block; width: 100px; height: 100px; background-color: #324b80; cursor: pointer; }
@media screen and (max-width: 750px) { .header .menu { width: 60px; height: 60px; } }
@media screen and (max-width: 480px) { .header .menu { width: 50px; height: 50px; } }
.header .menu .header-menu { position: relative !important; margin-top: 32px; }
@media screen and (max-width: 960px) { .header .menu .header-menu { margin-top: 25px; } }
@media screen and (max-width: 750px) { .header .menu .header-menu { margin-top: 16px; } }
.header .menu .header-menu p { position: absolute; width: 100%; padding-top: 33px; top: 0; left: 0; }
@media screen and (max-width: 960px) { .header .menu .header-menu p { padding-top: 50px; } }
@media screen and (max-width: 750px) { .header .menu .header-menu p { padding-top: 30px; } }
@media screen and (max-width: 480px) { .header .menu .header-menu p { padding-top: 20px; } }
.header .menu .header-menu span { position: absolute; display: inline-block; transition: all .4s; left: 50%; width: 40px; height: 5px; margin-left: -20px; background-color: #fff; }
@media screen and (max-width: 960px) { .header .menu .header-menu span { width: 60px; height: 7px; margin-left: -30px; } }
@media screen and (max-width: 750px) { .header .menu .header-menu span { width: 40px; height: 5px; margin-left: -20px; } }
@media screen and (max-width: 480px) { .header .menu .header-menu span { width: 30px; height: 3px; margin-left: -13px; } }
.header .menu .header-menu span:nth-of-type(1) { top: 0; }
.header .menu .header-menu span:nth-of-type(2) { top: 50%; margin-top: -3px; }
@media screen and (max-width: 480px) { .header .menu .header-menu span:nth-of-type(2) { margin-top: -2px; } }
.header .menu .header-menu span:nth-of-type(3) { bottom: 0; }

/* ==================================================================================================== メニュー
==================================================================================================== */
.nav-menu { z-index: 999999; display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #324b80; line-height: 1; }
.nav-menu .nav-menu-content { position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding-bottom: 40px; overflow-y: auto; }
.nav-menu .nav-menu-top { display: flex; justify-content: space-between; padding: 30px 25px 30px 50px; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-top { padding: 2% 1.3333333333% 4% 6%; } }
.nav-menu .nav-menu-top .manu-ttl { margin-top: 10px; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-top .manu-ttl { max-width: 300px; } }
@media screen and (max-width: 480px) { .nav-menu .nav-menu-top .manu-ttl { margin-top: 2.4%; max-width: 240px; } }
.nav-menu .nav-menu-top .close-btn { cursor: pointer; }
@media screen and (max-width: 480px) { .nav-menu .nav-menu-top .close-btn { max-width: 35px; } }
.nav-menu .nav-menu-list { margin-bottom: 40px; border-top: 1px solid #fff; }
.nav-menu .nav-menu-list li { border-bottom: 1px solid #fff; }
.nav-menu .nav-menu-list li a { display: flex; color: #fff; text-decoration: none; }
.nav-menu .nav-menu-list li a figure { max-width: 100px; }
.nav-menu .nav-menu-list li a dl { display: flex; align-items: center; margin-left: 50px; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-list li a dl { margin-left: 6.6666666667%; } }
.nav-menu .nav-menu-list li a dl dt { width: 3em; font-size: 1.4285714286rem; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-list li a dl dt { font-size: 1.4285714286rem; } }
.nav-menu .nav-menu-list li a dl dd { font-size: 1.2857142857rem; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-list li a dl dd { font-size: 1rem; } }
.nav-menu .nav-menu-box { width: 92%; margin: 0 auto; padding: 4.347826087% 2.8985507246% 8.6956521739%; background-color: #fff; border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; }
.nav-menu .nav-menu-box .menu-link-aichi { width: 39.5652173913%; margin: 0 auto 2.8985507246%; text-align: center; }
.nav-menu .nav-menu-box .menu-link { margin-bottom: 9.4202898551%; text-align: center; }
.nav-menu .nav-menu-box .menu-link a { padding-right: 40px; background: url("../img/common/link_i001.png") no-repeat right center; font-size: 1.7142857143rem; color: #324b80; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-box .menu-link a { font-size: 1.1428571429rem; } }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-box .menu-link a { padding-right: 30px; background-size: 20px auto; } }
.nav-menu .nav-menu-box ul { display: flex; align-items: center; justify-content: center; width: 66.6666666667%; margin: 0 auto; }
.nav-menu .nav-menu-box ul li { margin-right: 6.5217391304%; }
.nav-menu .nav-menu-box ul li:last-child { margin-right: 0; }

.js-menuopen { overflow: hidden; }
.js-menuopen .nav-menu { display: block; }

/* ==================================================================================================== タイトル
==================================================================================================== */
.maintitle-sec { position: relative; }
.maintitle-sec .maintitle-box { position: absolute; top: 50%; left: 0%; width: 100%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); text-align: center; }
@media screen and (max-width: 1200px) { .maintitle-sec .maintitle-box { margin-top: 3%; } }
@media screen and (max-width: 1200px) { .maintitle-sec .maintitle-ttl { width: 20%; margin: 0 auto; } }
@media screen and (max-width: 960px) { .maintitle-sec .maintitle-ttl { width: 13%; } }
@media screen and (max-width: 750px) { .maintitle-sec .maintitle-ttl { width: 40%; } }
.maintitle-sec .maintitle-subttl { display: flex; align-items: center; justify-content: center; width: 100%; margin-top: 40px; font-size: 1.8571428571rem; text-align: center; font-weight: 700; color: #fff; letter-spacing: 20px; line-height: 1.6; }
@media screen and (max-width: 960px) { .maintitle-sec .maintitle-subttl { margin-top: 20px; font-size: 1.2857142857rem; } }
@media screen and (max-width: 750px) { .maintitle-sec .maintitle-subttl { display: none; } }
.maintitle-sec .maintitle-subttl::before, .maintitle-sec .maintitle-subttl::after { content: ""; border-top: 1px solid; width: 3em; }
.maintitle-sec .maintitle-subttl::before { margin-right: 1em; }
.maintitle-sec .maintitle-subttl::after { margin-left: 1em; }

@media screen and (max-width: 750px) { .maintitle-subttl { padding: 6.6666666667% 0; font-size: 1.2857142857rem; text-align: center; color: #fff; font-weight: 700; letter-spacing: 10px; } }

/* ==================================================================================================== ローカルナビ
==================================================================================================== */
.lnav-sec { position: absolute; top: -40px; width: 100%; }
@media screen and (max-width: 750px) { .lnav-sec { z-index: 999; position: fixed; top: inherit; bottom: 0; } }
@media screen and (max-width: 750px) { .lnav-sec .inner { padding: 0; } }
.lnav-sec ul { display: flex; width: 83.3333333333%; margin: 0 auto; padding: 15px 0; background-color: #fff; }
@media screen and (max-width: 750px) { .lnav-sec ul { align-items: center; width: 100%; padding-bottom: 27px; } }
.lnav-sec ul li { width: 25%; border-right: 1px solid #a1a1a1; }
@media screen and (max-width: 750px) { .lnav-sec ul li { width: 20%; border-right: none; } }
.lnav-sec ul li:last-child { border-right: none; }
.lnav-sec ul li a { display: block; text-decoration: none; text-align: center; font-size: 1.2857142857rem; font-weight: 400; }
@media screen and (max-width: 1200px) { .lnav-sec ul li a { font-size: 1.1428571429rem; } }
@media screen and (max-width: 960px) { .lnav-sec ul li a { font-size: 0.8571428571rem; } }
@media screen and (max-width: 750px) { .lnav-sec ul li a { font-size: 0.7142857143rem; line-height: 1; font-weight: 500; color: #fff; }
  .lnav-sec ul li a figcaption { margin-top: 10px; } }
@media screen and (max-width: 750px) and (max-width: 480px) { .lnav-sec ul li a img { width: 40px; } }

.lnav-sec ul li a .lnav-icon { display: inline-block; padding: 10px 0 10px 55px; }
@media screen and (max-width: 960px) { .lnav-sec ul li a .lnav-icon { padding: 10px 0 10px 45px; } }
@media screen and (max-width: 750px) { .lnav-sec ul li a .lnav-icon { display: block; } }
.lnav-sec .lnav-menu { display: block; width: 40px; height: 40px; margin: 0 auto; cursor: pointer; }
.lnav-sec .lnav-menu .lnav-menu-in { position: relative !important; }
.lnav-sec .lnav-menu .lnav-menu-in p { position: absolute; width: 100%; padding-top: 33px; top: 0; left: 0; }
.lnav-sec .lnav-menu .lnav-menu-in span { position: absolute; display: inline-block; transition: all .4s; left: 50%; width: 40px; height: 5px; margin-left: -20px; background-color: #fff; }
.lnav-sec .lnav-menu .lnav-menu-in span:nth-of-type(1) { top: 0; }
.lnav-sec .lnav-menu .lnav-menu-in span:nth-of-type(2) { top: 50%; margin-top: -3px; }
.lnav-sec .lnav-menu .lnav-menu-in span:nth-of-type(3) { bottom: 0; }

/* ==================================================================================================== ページナビ
==================================================================================================== */
@media screen and (max-width: 750px) { .pagenav-sec { display: none; } }
.pagenav-sec ul { display: flex; }
.pagenav-sec ul li { width: 20.8333333333%; background-color: #324b80; }
.pagenav-sec ul li:first-child { -webkit-border-top-left-radius: 10px; -moz-border-radius-topleft: 10px; }
.pagenav-sec ul li:first-child a { -webkit-border-top-left-radius: 10px; -moz-border-radius-topleft: 10px; }
.pagenav-sec ul li:last-child { -webkit-border-top-right-radius: 10px; -moz-border-radius-topright: 10px; }
.pagenav-sec ul li:last-child a { -webkit-border-top-right-radius: 10px; -moz-border-radius-topright: 10px; }
.pagenav-sec ul li a { display: block; text-decoration: none; padding-right: 1px; background: url("../img/common/page_bg001.png") no-repeat right center; background-color: #324b80; padding: 20px; text-align: center; color: #fff; }
.pagenav-sec ul li a dl { margin-top: 10px; line-height: 1; }
.pagenav-sec ul li a dl dt { margin-bottom: 5px; font-size: 1.2857142857rem; font-weight: 700; letter-spacing: 2px; }
.pagenav-sec ul li a dl dd { font-size: 0.8571428571rem; letter-spacing: 2px; }

/* ==================================================================================================== シェア
==================================================================================================== */
.share-sec { margin: 30px 0; }
.share-sec .share-in { display: flex; justify-content: flex-end; }
.share-sec .share-in dl { display: flex; align-items: center; justify-content: flex-end; }
.share-sec .share-in dl dt { margin-right: 25px; font-weight: 500; }
.share-sec .share-in dl dd ul { display: flex; align-items: center; justify-content: flex-end; }
.share-sec .share-in dl dd ul li { margin-right: 20px; }
.share-sec .share-in dl dd ul li:last-child { margin-right: 0; }

/* ==================================================================================================== ページトップ
==================================================================================================== */
.pagetop { position: fixed; right: 60px; bottom: 60px; }
@media screen and (max-width: 1200px) { .pagetop { right: 30px; } }
@media screen and (max-width: 750px) { .pagetop { width: 45px; right: 4%; bottom: 5.3333333333%; } }

/* ==================================================================================================== フッター
==================================================================================================== */
.footer { background-color: #ddd; }
.footer .footer-in { display: flex; justify-content: space-between; padding: 40px 160px 0 70px; }
@media screen and (max-width: 1200px) { .footer .footer-in { padding: 40px 30px 0; } }
@media screen and (max-width: 750px) { .footer .footer-in { display: block; padding: 0; } }
.footer .footer-l { display: flex; margin-top: 20px; margin-right: 20px; }
@media screen and (max-width: 750px) { .footer .footer-l { align-items: center; justify-content: center; margin-top: 0; margin-right: 0; padding: 6.6666666667% 4%; } }
.footer .footer-l .footer-logo { margin-right: 45px; }
@media screen and (max-width: 750px) { .footer .footer-l .footer-logo { width: 24%; margin-right: 4%; } }
.footer .footer-l .footer-l-box dl { margin-bottom: 15px; color: #324b80; }
@media screen and (max-width: 750px) { .footer .footer-l .footer-l-box dl { margin-bottom: 0; } }
.footer .footer-l .footer-l-box dl dt { margin-bottom: 10px; font-weight: 500; }
.footer .footer-l .footer-l-box dl dd { font-size: 1.5714285714rem; font-weight: 500; }
@media screen and (max-width: 750px) { .footer .footer-l .footer-l-box dl dd { font-size: 1.4285714286rem; } }
.footer .footer-r { max-width: 300px; }
@media screen and (max-width: 750px) { .footer .footer-r { max-width: 100%; padding: 5.3333333333% 4%; background-color: #fff; } }
@media screen and (max-width: 750px) { .footer .footer-r p { text-align: center; } }
.footer .footer-r ul { display: flex; justify-content: center; margin: 20px 0; }
@media screen and (max-width: 750px) { .footer .footer-r ul { margin: 2.6666666667% 0 0; } }
.footer .footer-r ul li { margin-right: 15px; }
.footer .footer-r ul li:last-child { margin-right: 0; }
.footer .footer-txt { margin-bottom: 20px; font-size: 1.1428571429rem; font-weight: 500; }
@media screen and (max-width: 750px) { .footer .footer-txt { margin-bottom: 6.6666666667%; padding: 0 4%; font-size: 0.9285714286rem; text-align: center; } }
.footer .footer-link { font-size: 1.1428571429rem; font-weight: 500; line-height: 1; }
@media screen and (max-width: 750px) { .footer .footer-link { margin-bottom: 6%; font-size: 0.8571428571rem; } }
.footer .footer-link a { display: block; text-decoration: none; max-width: 285px; padding: 10px; background: #324b80 url("../img/common/arrow_w_i001.png") no-repeat right 20px center; text-align: center; color: #fff; border-radius: 30px; -webkit-border-radius: 30px; -moz-border-radius: 30px; }
@media screen and (max-width: 750px) { .footer .footer-link a { max-width: 64%; margin: 0 auto; } }
@media screen and (max-width: 750px) { .footer .footer-link-heart { margin-bottom: 1.3333333333%; text-align: center; } }
.footer .copy { padding: 10px; background-color: #324b80; font-size: 0.8571428571rem; color: #fff; text-align: center; }
@media screen and (max-width: 750px) { .footer .copy { font-size: 0.7142857143rem; } }

.opacity:hover { opacity: 0.7; }

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

.font-min { font-family: 'Noto Serif JP', serif; }

/* ==================================================================================================== 見出し
==================================================================================================== */
.cmn-heading p { margin-bottom: 20px; text-align: center; }
.cmn-heading .heading { padding-bottom: 35px; background: url("../img/common/heading_bg001.png") no-repeat center bottom; font-size: 1.5714285714rem; font-weight: 400; text-align: center; letter-spacing: 3px; }
.cmn-heading .heading small { font-size: 1.1428571429rem; }

.js-anime { transition: all .8s; }
.js-anime img { transition: all .8s .4s; }

.js-hide { transform: translateY(80px); opacity: 0; }
.js-hide img { opacity: 0; }

/* ==================================================================================================== 特集
==================================================================================================== */
.column-sec { margin-bottom: 50px; }
@media screen and (max-width: 750px) { .column-sec { margin-bottom: 29.3333333333%; } }
@media screen and (max-width: 960px) { .column-sec .inner { padding: 0; width: 100%; } }
.column-sec .cmn-heading { margin-bottom: 30px; }
.column-sec .slick-slide { margin: 0 25px; }
@media screen and (max-width: 1200px) { .column-sec .slick-slide { margin: 0 15px; } }
.column-sec .column-slide { position: relative; width: 88.3333333333%; margin: 0 auto; }
@media screen and (max-width: 960px) { .column-sec .column-slide { width: 100%; } }
.column-sec .column-slide figure { position: relative; }
.column-sec .column-slide figure figcaption { position: absolute; bottom: 0; right: 0; width: 100%; max-width: 80px; padding: 5px; background-color: #000; color: #fff; text-align: center; font-weight: 400; line-height: 1; }
.column-sec .column-slide .column-slide-in { padding: 15px; background-color: #fff; }
.column-sec .column-slide .column-slide-in .column-heading { margin-bottom: 15px; padding-bottom: 25px; font-size: 1.1428571429rem; line-height: 2; font-weight: 400; }
.column-sec .column-slide .column-slide-in .column-more { font-size: 0.8571428571rem; text-align: center; }
.column-sec .column-slide .column-slide-in .column-more a { padding: 5px 35px 5px 0; }
.column-sec .slide-btn { position: absolute; top: 50%; cursor: pointer; }
@media screen and (max-width: 960px) { .column-sec .slide-btn { margin-top: -30px; } }
@media screen and (max-width: 750px) { .column-sec .slide-btn { top: inherit; bottom: -15% !important; margin-top: 0; } }
@media screen and (max-width: 480px) { .column-sec .slide-btn { bottom: -17% !important; width: 40px; } }
.column-sec .slide-btn.slide-prev { left: -95px; }
@media screen and (max-width: 1300px) { .column-sec .slide-btn.slide-prev { left: -60px; } }
@media screen and (max-width: 960px) { .column-sec .slide-btn.slide-prev { left: 75px; } }
@media screen and (max-width: 750px) { .column-sec .slide-btn.slide-prev { left: 10%; } }
.column-sec .slide-btn.slide-next { right: -95px; }
@media screen and (max-width: 1300px) { .column-sec .slide-btn.slide-next { right: -60px; } }
@media screen and (max-width: 960px) { .column-sec .slide-btn.slide-next { right: 75px; } }
@media screen and (max-width: 750px) { .column-sec .slide-btn.slide-next { right: 10%; } }
.column-sec .slick-dotted.slick-slider { margin-bottom: 0; }
.column-sec .slick-dots { bottom: -60px; }
.column-sec .slick-dots li { width: 14px; height: 14px; margin: 0 11px; }
.column-sec .slick-dots li button { width: 14px; height: 14px; }
.column-sec .slick-dots li button:before { width: 14px; height: 14px; background-color: #fff !important; content: ''; opacity: 1; border-radius: 50%; }
.column-sec .slick-dots li.slick-active button:before { opacity: 1; }

/* ==================================================================================================== 紹介
==================================================================================================== */
.about-sec { padding-top: 120px; padding-bottom: 230px; }
@media screen and (max-width: 750px) { .about-sec { margin-bottom: 11.3333333333%; padding-top: 0; padding-bottom: 16%; } }
.about-sec .about-box { width: 41.25%; margin-left: 70px; }
@media screen and (max-width: 750px) { .about-sec .about-box { width: 100%; margin-left: 0; } }
.about-sec .about-heading { margin-bottom: 50px; font-size: 1.8571428571rem; font-weight: 500; }
@media screen and (max-width: 750px) { .about-sec .about-heading { margin: 10.6666666667% 0 13.3333333333%; font-size: 1.5714285714rem; text-align: center; } }
.about-sec .about-lead { font-size: 1.1428571429rem; font-weight: 400; line-height: 2; }

/* ==================================================================================================== モデルコース
==================================================================================================== */
.course-sec { margin-top: -70px; margin-bottom: 100px; }
@media screen and (max-width: 750px) { .course-sec { margin-top: 0; margin-bottom: 17.3333333333%; } }
.course-sec .cmn-heading { margin-bottom: 135px; }
@media screen and (max-width: 750px) { .course-sec .cmn-heading { margin-bottom: 21.3333333333%; } }
.course-sec .course-box { position: relative; margin-bottom: 160px; }
@media screen and (max-width: 750px) { .course-sec .course-box { margin-bottom: 26.6666666667%; } }
.course-sec .course-box.course-box-last { margin-bottom: 0; }
@media screen and (max-width: 750px) { .course-sec .course-box.course-box-last { margin-bottom: 0; } }
.course-sec .course-box figure { z-index: 99; position: absolute; top: -50px; width: 47.5%; }
.course-sec .course-box figure img { border-radius: 30px; }
@media screen and (max-width: 750px) { .course-sec .course-box figure { position: static; width: 100%; margin-bottom: 10.1449275362%; } }
.course-sec .course-box .course-box-ttl { position: absolute; top: -85px; display: flex; align-items: center; font-weight: 700; }
@media screen and (max-width: 750px) { .course-sec .course-box .course-box-ttl { top: -75px; } }
.course-sec .course-box .course-box-ttl .course-box-ttl-name { display: flex; justify-content: flex-start; align-items: center; width: 108px; height: 108px; margin-right: 10px; line-height: 1; color: #fff; border-radius: 50%; }
@media screen and (max-width: 750px) { .course-sec .course-box .course-box-ttl .course-box-ttl-name { width: 88px; height: 88px; justify-content: center; } }
.course-sec .course-box .course-box-ttl .course-box-ttl-name p:first-child { font-size: 3.4285714286rem; text-align: left; }
@media screen and (max-width: 750px) { .course-sec .course-box .course-box-ttl .course-box-ttl-name p:first-child { font-size: 1.5714285714rem; } }
@media screen and (max-width: 480px) { .course-sec .course-box .course-box-ttl .course-box-ttl-name p:first-child { font-size: 2rem; text-align: center; } }
.course-sec .course-box .course-box-ttl .course-box-ttl-name p:last-child { font-size: 1.5rem; text-align: right; }
@media screen and (max-width: 750px) { .course-sec .course-box .course-box-ttl .course-box-ttl-name p:last-child { font-size: 1rem; } }
@media screen and (max-width: 480px) { .course-sec .course-box .course-box-ttl .course-box-ttl-name p:last-child { font-size: 1.2857142857rem; } }
.course-sec .course-box .course-box-ttl .course-box-ttl-en { font-size: 1.4285714286rem; font-weight: 700; }
@media screen and (max-width: 750px) { .course-sec .course-box .course-box-ttl .course-box-ttl-en { font-size: 1.1428571429rem; } }
@media screen and (max-width: 480px) { .course-sec .course-box .course-box-ttl .course-box-ttl-en { font-size: 1.4285714286rem; } }
.course-sec .course-box .course-item { position: relative; display: flex; justify-content: flex-end; width: 58.75%; padding-top: 45px; padding-bottom: 45px; background-color: #f5f5f5; border-radius: 40px; }
@media screen and (max-width: 750px) { .course-sec .course-box .course-item { display: block; width: 100%; padding-top: 10.1449275362%; padding-bottom: 10.1449275362%; border-radius: 20px; } }
.course-sec .course-box-r { display: flex; justify-content: flex-end; }
@media screen and (max-width: 750px) { .course-sec .course-box-r { display: block; } }
.course-sec .course-box-r figure { left: 0; }
.course-sec .course-box-r .course-box-ttl { left: 130px; }
@media screen and (max-width: 750px) { .course-sec .course-box-r .course-box-ttl { left: 30px; } }
.course-sec .course-box-r .course-item { padding-left: 150px; padding-right: 55px; }
@media screen and (max-width: 960px) { .course-sec .course-box-r .course-item { padding-left: 80px; } }
@media screen and (max-width: 750px) { .course-sec .course-box-r .course-item { padding-left: 3.6231884058%; padding-right: 3.6231884058%; } }
.course-sec .course-box-l figure { right: 0; }
.course-sec .course-box-l .course-box-ttl { left: 50px; }
@media screen and (max-width: 750px) { .course-sec .course-box-l .course-box-ttl { left: 30px; } }
.course-sec .course-box-l .course-item { padding-left: 60px; padding-right: 140px; }
@media screen and (max-width: 960px) { .course-sec .course-box-l .course-item { padding-right: 80px; } }
@media screen and (max-width: 750px) { .course-sec .course-box-l .course-item { padding-left: 3.6231884058%; padding-right: 3.6231884058%; } }
.course-sec .course-heading { margin-bottom: 20px; font-size: 1.5714285714rem; font-weight: 400; line-height: 2; }
@media screen and (max-width: 750px) { .course-sec .course-heading { margin-bottom: 6.5217391304%; font-size: 1.2857142857rem; line-height: 1.6; } }
.course-sec .course-lead { margin-bottom: 25px; line-height: 2; }
@media screen and (max-width: 750px) { .course-sec .course-lead { margin-bottom: 13.768115942%; } }
.course-sec .course-link a { padding: 5px 50px 5px 0; font-size: 0.8571428571rem; }
@media screen and (max-width: 750px) { .course-sec .course-link a { display: block; width: 81.1594202899%; margin: 0 auto; padding: 20px; color: #fff; text-align: center; border-radius: 40px; } }
.course-sec .course-link a span { text-decoration: underline; }
.course-sec .course-link a span:hover { text-decoration: none; }
.course-sec .course-link span { display: inline-block; padding: 15px 0 15px 60px; }
@media screen and (max-width: 750px) { .course-sec .course-link span { padding: 0; } }

/* ==================================================================================================== スポット
==================================================================================================== */
.spot-sec { margin-bottom: 100px; padding-top: 75px; padding-bottom: 120px; }
@media screen and (max-width: 750px) { .spot-sec { margin-bottom: 13.3333333333%; padding-top: 8.6666666667%; padding-bottom: 13.3333333333%; } }
.spot-sec .cmn-heading { margin-bottom: 60px; color: #fff; }
.spot-sec .cmn-heading .heading { background: url("../img/common/heading_bg002.png") no-repeat center bottom; }
.spot-sec .spot-top { display: flex; justify-content: space-between; align-items: center; width: 90%; margin: 0 auto 20px; }
@media screen and (max-width: 750px) { .spot-sec .spot-top { width: 100%; } }
.spot-sec .spot-top .spot-top-focus { display: flex; justify-content: center; align-items: center; width: 108px; height: 108px; margin-right: 35px; font-size: 1.4285714286rem; line-height: 1; color: #fff; text-align: center; letter-spacing: 3px; font-weight: 400; border-radius: 50%; }
@media screen and (max-width: 750px) { .spot-sec .spot-top .spot-top-focus { width: 68px; height: 68px; margin-right: 20px; font-size: 1rem; } }
.spot-sec .spot-top .spot-top-box { flex: 1; width: 86.5740740741%; color: #fff; }
.spot-sec .spot-top .spot-heading { margin-bottom: 20px; font-size: 1.5714285714rem; font-weight: 400; }
@media screen and (max-width: 750px) { .spot-sec .spot-top .spot-heading { margin-bottom: 0; font-size: 1.2857142857rem; } }
.spot-sec .spot-cate { display: flex; align-items: center; }
@media screen and (max-width: 750px) { .spot-sec .spot-cate { display: block; margin-bottom: 14.4927536232%; padding: 6.5217391304% 4.347826087%; background-color: #fff; border-radius: 20px; } }
.spot-sec .spot-cate dt { width: 100%; max-width: 115px; margin-right: 20px; padding: 5px; background-color: #fff; color: #3c3c3c; text-align: center; border-radius: 40px; }
@media screen and (max-width: 750px) { .spot-sec .spot-cate dt { max-width: 100%; margin-bottom: 10px; margin-right: 0; padding: 0; background-color: none; text-align: left; border-radius: 0; } }
.spot-sec .spot-cate dd { flex: 1; }
.spot-sec .spot-cate dd span { margin-right: 15px; }
.spot-sec .spot-list { display: flex; flex-wrap: wrap; width: 90%; margin: 0 auto; }
@media screen and (max-width: 750px) { .spot-sec .spot-list { display: block; width: 100%; } }
.spot-sec .spot-list-box { width: 46.2962962963%; margin-bottom: 55px; padding: 25px 22px 30px; background-color: #fff; }
@media screen and (max-width: 750px) { .spot-sec .spot-list-box { width: 100%; margin-bottom: 8%; } }
.spot-sec .spot-list-box.spot-list-box-l { margin-right: 7.4074074074%; }
@media screen and (max-width: 750px) { .spot-sec .spot-list-box.spot-list-box-l { margin-right: 0; } }
.spot-sec .spot-list-box .spot-list-slide { display: flex; align-items: flex-start; margin-bottom: 15px; }
.spot-sec .spot-list-box .spot-list-main { width: 79.1208791209%; margin-right: 8px; line-height: 0; }
.spot-sec .spot-list-box .spot-list-nav { width: 19.1208791209%; margin: 0; padding: 0; }
.spot-sec .spot-list-box .spot-list-nav li { cursor: pointer; }
.spot-sec .spot-list-box .spot-list-nav .slick-slide { line-height: 1.3; }
.spot-sec .spot-list-box .spot-list-nav .slick-current img { border: 3px solid #324b80; }
.spot-sec .spot-list-box .spot-list-heading { margin-bottom: 25px; font-size: 1.7142857143rem; font-weight: 700; }
.spot-sec .spot-list-box .spot-list-heading span { margin-left: 20px; font-size: 1.2857142857rem; }
.spot-sec .spot-list-box .spot-list-lead { margin-bottom: 20px; padding-bottom: 25px; }
.spot-sec .spot-list-box .spot-list-txt { font-size: 0.8571428571rem; text-align: center; }
.spot-sec .spot-more-btn { width: 37%; margin: 0 auto; padding: 5px; border: 1px solid #fff; font-size: 1.1428571429rem; color: #fff; text-align: center; font-weight: 700; border-radius: 40px; cursor: pointer; box-shadow: 3px 3px 0px 3px rgba(58, 47, 46, 0.3); }
@media screen and (max-width: 750px) { .spot-sec .spot-more-btn { width: 74.6666666667%; border: none; background-color: #fff !important; } }
.spot-sec .spot-more-btn span { display: inline-block; padding: 10px 0 10px 45px; }

/* ==================================================================================================== ツアー情報
==================================================================================================== */
@media screen and (max-width: 750px) { .tours-sec .inner { padding: 0; } }
.tours-sec .cmn-heading { margin-bottom: 65px; }
@media screen and (max-width: 750px) { .tours-sec .cmn-heading { margin-bottom: 7.3333333333%; } }
.tours-sec .tours-box { display: flex; justify-content: space-between; width: 85.8333333333%; margin: 0 auto 35px; padding: 15px; background-color: #f5f5f5; }
@media screen and (max-width: 960px) { .tours-sec .tours-box { width: 100%; } }
@media screen and (max-width: 750px) { .tours-sec .tours-box { display: block; margin-bottom: 0; padding: 6.6666666667% 4% 13.3333333333%; } }
@media screen and (max-width: 750px) { .tours-sec .tours-box.tours-box-even { background-color: #fff; } }
.tours-sec .tours-box figure { width: 32%; }
@media screen and (max-width: 750px) { .tours-sec .tours-box figure { width: 100%; margin-bottom: 4.6666666667%; } }
.tours-sec .tours-box .tours-box-item { width: 64%; }
@media screen and (max-width: 750px) { .tours-sec .tours-box .tours-box-item { width: 100%; } }
.tours-sec .tours-box .tours-box-item .tours-box-top { display: flex; align-items: center; margin-bottom: 20px; padding-bottom: 15px; }
@media screen and (max-width: 750px) { .tours-sec .tours-box .tours-box-item .tours-box-top { display: block; } }
.tours-sec .tours-box .tours-box-item .tours-box-b { display: flex; justify-content: space-between; }
@media screen and (max-width: 750px) { .tours-sec .tours-box .tours-box-item .tours-box-b { display: block; } }
.tours-sec .tours-box .tours-box-item .tours-num { width: 100%; max-width: 115px; margin-right: 15px; padding: 5px; background-color: #3c3c3c; font-size: 1.1428571429rem; font-weight: bold; color: #fff; text-align: center; line-height: 1; border-radius: 5px; }
.tours-sec .tours-box .tours-box-item .tours-heading { flex: 1; font-size: 1.4285714286rem; }
.tours-sec .tours-box .tours-box-item .tours-box-lead { margin-bottom: 10px; line-height: 2; }
@media screen and (max-width: 750px) { .tours-sec .tours-box .tours-box-item .tours-box-lead { margin-bottom: 10px; } }
.tours-sec .tours-box .tours-box-item .tours-box-cost { margin-bottom: 5px; padding-left: 25px; font-weight: 700; }
@media screen and (max-width: 750px) { .tours-sec .tours-box .tours-box-item .tours-box-cost { margin-bottom: 10px; } }
.tours-sec .tours-box .tours-box-item .tours-box-date { display: flex; align-items: center; }
@media screen and (max-width: 750px) { .tours-sec .tours-box .tours-box-item .tours-box-date { margin-bottom: 8%; } }
.tours-sec .tours-box .tours-box-item .tours-box-date dt { width: 8em; padding-left: 25px; background: url("../img/common/tours_i001.png") no-repeat left center; font-weight: bold; }
.tours-sec .tours-box .tours-box-item .tours-box-date dd { flex: 1; }
.tours-sec .tours-box .tours-box-item .tours-box-link a { padding: 5px 50px 5px 0; font-size: 0.8571428571rem; }
@media screen and (max-width: 750px) { .tours-sec .tours-box .tours-box-item .tours-box-link a { display: block; width: 66.9565217391%; margin: 0 auto; padding: 5px 10px; text-align: center; border-radius: 40px; } }
.tours-sec .tours-box .tours-box-item .tours-box-link a span { text-decoration: underline; }
.tours-sec .tours-box .tours-box-item .tours-box-link a span:hover { text-decoration: none; }
.tours-sec .tours-box .tours-box-item .tours-box-link span { display: inline-block; padding: 15px 0 15px 60px; }
@media screen and (max-width: 750px) { .tours-sec .tours-box .tours-box-item .tours-box-link span { padding: 5px 40px 5px 0; } }
.tours-sec .tours-more-btn { width: 37%; margin: 0 auto; padding: 5px; border: 1px solid #fff; font-size: 1.1428571429rem; color: #fff; text-align: center; font-weight: 700; border-radius: 40px; cursor: pointer; box-shadow: 3px 3px 0px 3px rgba(58, 47, 46, 0.3); }
@media screen and (max-width: 750px) { .tours-sec .tours-more-btn { width: 74.6666666667%; margin-top: 20px; } }
.tours-sec .tours-more-btn span { display: inline-block; padding: 10px 0 10px 45px; }

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

.w100 { width: 100%; }

.mat0 { margin-top: 0px !important; }

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