@charset "UTF-8";
/* ======================================================== reset.css ======================================================== */
html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6, main, article, aside, figcaption, figure, footer, header, nav, section, img, embed, iframe, object, audio, video, area, button, input, label, select, summary, textarea, div, a, span { -webkit-box-sizing: border-box; box-sizing: border-box; }

html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; display: block; }

main, article, aside, figcaption, figure, footer, header, nav, section { display: block; }

h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }

img, embed, iframe, object, audio, video { height: auto; max-width: 100%; }

button { padding: 0; cursor: pointer; background: none; border: none; }

button, input, select, textarea { margin: 0; }

a, area, button, [role='button'], input:not([type='range']), label, select, summary, textarea { -ms-touch-action: manipulation; touch-action: manipulation; }

html { -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 1; }

body { -webkit-text-size-adjust: 100%; }

a { color: inherit; text-decoration: none; }

ul, ol { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; }

th, td { padding: 0; font-weight: normal; text-align: left; }

iframe { border: 0; }

img { vertical-align: bottom; }

/* ========================================================
 フォームの基本設定
======================================================== */
/* フォームのデフォルトスタイルをリセット
=========================================== */
select { margin: 0; padding: 0; border: 0; border: none; border-radius: 0; background: none transparent; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "游ゴシック", sans-serif; }

select::-ms-expand { display: block; }

textarea { border: none; border-radius: 0; resize: vertical; -webkit-appearance: none; -moz-appearance: none; appearance: none; }

input:not([type='radio']) { border: none; border-radius: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none; }

input[type='submit'] { vertical-align: middle; cursor: pointer; }

input[type='text'], input[type='tel'], input[type='email'], input[type='button'], select, textarea { font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "游ゴシック", sans-serif; font-size: 1.6rem; }

@media screen and (max-width: 767px) { input[type='text'], input[type='tel'], input[type='email'], input[type='button'], select, textarea { font-size: 1.6rem; } }

/* chromeの履歴の背景色
------------------------------ */
input:-webkit-autofill { -webkit-box-shadow: 0 0 0 999px #fff inset; box-shadow: 0 0 0 999px #fff inset; }

/* iOSでのデフォルトスタイルをリセット
------------------------------ */
input[type='submit'], input[type='button'] { border: none; border-radius: 0; -webkit-appearance: button; -moz-appearance: button; appearance: button; }

input[type='submit']::-webkit-search-decoration, input[type='button']::-webkit-search-decoration { display: none; }

input[type='submit']::focus, input[type='button']::focus { outline-offset: -2px; }

/* placeholderの色を変更(カンマで複数区切りは出来ない)
------------------------------ */
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { color: #ccc; }

input:-ms-input-placeholder, textarea:-ms-input-placeholder { color: #ccc; }

input::-moz-placeholder, textarea::-moz-placeholder { color: #ccc; }

/* ========================================================
 slickのカスタマイズ
======================================================== */
.slide-list .slick-list { height: 672px; overflow-y: visible; }

@media screen and (max-width: 767px) { .slide-list .slick-list { height: 316px; } }

/* ========================================================
JavaScript
======================================================== */
/* ========================================================
汎用クラス
======================================================== */
/* switch
=========================================== */
.hdn-sp { display: block; }

.hdn-tb { display: block; }

.view-tb { display: none; }

.hdn-pc { display: none; }

@media screen and (max-width: 960px) { .hdn-tb { display: none; }
  .view-tb { display: block; } }

@media screen and (max-width: 767px) { .hdn-sp { display: none; }
  .hdn-pc { display: block; } }

/* clearfix
=========================================== */
.clearfix:after { display: block; clear: both; content: ''; }

/* ========================================================
共通クラス
======================================================== */
.cmn-inner01 { position: relative; margin: 0 auto; padding: 0 20px; max-width: 1120px; }

@media screen and (max-width: 767px) { .cmn-inner01 { padding: 0 16px; } }

.cmn-inner02 { position: relative; margin: 0 auto; padding: 0 20px; max-width: 1020px; }

@media screen and (max-width: 767px) { .cmn-inner02 { padding: 0 16px; } }

.cmn-inner03 { position: relative; margin: 0 auto; padding: 0 20px; max-width: 800px; }

@media screen and (max-width: 767px) { .cmn-inner03 { padding: 0 16px; } }

/* section
=========================================== */
.cmn-sec01 { margin-top: 80px; }

@media screen and (max-width: 767px) { .cmn-sec01 { margin-top: 56px; } }

/* anchor
=========================================== */
.cmn-anchor01 { margin-top: -88px; padding-top: 88px; }

@media screen and (max-width: 767px) { .cmn-anchor01 { margin-top: -64px; padding-top: 64px; } }

/* title
=========================================== */
/* .cmn-ttl01
------------------------------ */
.cmn-ttl01 { text-align: center; }

.cmn-ttl01 .txt-en { display: inline-block; position: relative; }

.cmn-ttl01 .txt-en__in { color: #124667; font-weight: 500; }

@media screen and (max-width: 767px) { .cmn-ttl01 .txt-en__in { font-weight: 700; } }

.cmn-ttl01 .txt-en:before, .cmn-ttl01 .txt-en:after { content: ''; position: absolute; top: calc(50% + 1px); display: block; width: 16px; height: 1px; background-color: #124667; }

.cmn-ttl01 .txt-en:before { left: -22px; }

.cmn-ttl01 .txt-en:after { right: -22px; }

.cmn-ttl01 .txt-jp { margin-top: 8px; color: #000; font-weight: 500; font-size: 2.8rem; }

@media screen and (max-width: 767px) { .cmn-ttl01 .txt-jp { font-weight: 700; } }

/* .cmn-ttl02
------------------------------ */
.cmn-ttl02 { padding: 12px 20px; color: #124667; font-size: 2.4rem; font-weight: 500; border-left: 16px solid #124667; background-color: #f4f4f4; }

@media screen and (max-width: 767px) { .cmn-ttl02 { padding: 12px 16px; font-size: 2rem; font-weight: 700; border-left: 12px solid #124667; } }

/* .cmn-ttl03
------------------------------ */
.cmn-ttl03 { position: relative; }

.cmn-ttl03 .ttl-txt { position: relative; z-index: 1; display: inline-block; color: #124667; font-size: 2.4rem; font-weight: 500; background-color: #fff; padding-right: 8px; }

@media screen and (max-width: 767px) { .cmn-ttl03 .ttl-txt { font-weight: 700; } }

.cmn-ttl03:after { content: ''; position: absolute; display: block; background-color: #124667; width: 100%; height: 1px; left: 0; top: calc(50%); }

/* list
=========================================== */
/* .cmn-list01
------------------------------ */
/* cmn-catch-frame
=========================================== */
.cmn-catch-frame { display: inline-block; }

@media screen and (max-width: 767px) { .cmn-catch-frame { width: 100%; } }

.cmn-catch-frame .frame { position: relative; }

.cmn-catch-frame .frame .lines { display: block; position: absolute; }

.cmn-catch-frame .frame .lines:before, .cmn-catch-frame .frame .lines:after { position: absolute; content: ''; display: block; background-color: #124667; }

.cmn-catch-frame .frame .lines:before { width: 1px; height: 28px; }

.cmn-catch-frame .frame .lines:after { width: 28px; height: 1px; }

.cmn-catch-frame .frame-top .lines-left, .cmn-catch-frame .frame-bottom .lines-left { left: 0; }

.cmn-catch-frame .frame-top .lines-left:after, .cmn-catch-frame .frame-bottom .lines-left:after { left: -10px; }

.cmn-catch-frame .frame-top .lines-right, .cmn-catch-frame .frame-bottom .lines-right { right: 0; }

.cmn-catch-frame .frame-top .lines-right:after, .cmn-catch-frame .frame-bottom .lines-right:after { right: -10px; }

.cmn-catch-frame .frame-top .lines-left:before, .cmn-catch-frame .frame-top .lines-right:before { top: -10px; }

.cmn-catch-frame .frame-bottom .lines-left:before, .cmn-catch-frame .frame-bottom .lines-right:before { bottom: -10px; }

.cmn-catch-frame .catch-txt { width: 416px; min-height: 116px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; text-align: center; padding: 16px 0; color: #124667; font-weight: 500; font-size: 2.8rem; line-height: 1.5; }

@media screen and (max-width: 767px) { .cmn-catch-frame .catch-txt { width: 100%; min-height: 20vw; padding: 3vw; font-weight: 700; font-size: 2.6rem; font-size: clamp(1rem, 6.5vw, 2.8rem); } }

/* button
=========================================== */
.cmn-btn01 { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

.cmn-btn01 a, .cmn-btn01 input { display: block; width: 312px; padding: 22px 0 24px; background-color: #3f94ca; color: #fff; text-align: center; font-weight: 500; font-size: 1.8rem; -webkit-box-shadow: 0 0 10px 0 rgba(33, 133, 197, 0.4); box-shadow: 0 0 10px 0 rgba(33, 133, 197, 0.4); -webkit-transition: background-color 0.2s ease-in-out; transition: background-color 0.2s ease-in-out; }

.cmn-btn01 a:hover, .cmn-btn01 input:hover { background-color: #2185c5; }

@media screen and (max-width: 767px) { .cmn-btn01 a, .cmn-btn01 input { width: 100%; } }

/* others
=========================================== */
/* ========================================================
サイト全体
======================================================== */
html { font-size: 62.5%; }

body, textarea { position: relative; color: #222; font-weight: 400; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "游ゴシック", sans-serif; line-height: 1; letter-spacing: 0.02em; font-size: 1.6rem; word-wrap: break-word; }

@media screen and (max-width: 767px) { body { font-family: "Hiragino Kaku Gothic ProN", "Noto Sans JP", "游ゴシック", sans-serif; letter-spacing: 0.01em; font-size: 1.4rem; -webkit-text-size-adjust: 100%; } }

@media screen and (min-width: 768px) { a[href^='tel:'] { pointer-events: none; } }

/* ========================================================
glb-wrapper
======================================================== */
.glb-wrapper { position: relative; }

/* ========================================================
glb-header
======================================================== */
.glb-header { width: 100%; height: 88px; position: fixed; top: 0; z-index: 15; background-color: #fff; }

@media screen and (max-width: 767px) { .glb-header { height: 64px; } }

.glb-header__in { position: relative; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; height: 100%; }

@media screen and (max-width: 767px) { .glb-header__in { display: block; padding: 0; } }

/* glb-hamburger
=========================================== */
.glb-hamburger { display: none; }

@media screen and (max-width: 767px) { .glb-hamburger { position: absolute; top: 0; right: 0; z-index: 1; display: block; overflow: visible; padding: 0; width: 64px; height: 64px; outline: none; border: none; background: none; text-align: center; cursor: pointer; } }

.glb-hamburger .lines .line { position: absolute; display: block; width: 28px; height: 2px; background-color: #2185c5; -webkit-transition: opacity 0.4s cubic-bezier(1, 0, 0, 1), -webkit-transform 0.4s cubic-bezier(1, 0, 0, 1); transition: opacity 0.4s cubic-bezier(1, 0, 0, 1), -webkit-transform 0.4s cubic-bezier(1, 0, 0, 1); transition: transform 0.4s cubic-bezier(1, 0, 0, 1), opacity 0.4s cubic-bezier(1, 0, 0, 1); transition: transform 0.4s cubic-bezier(1, 0, 0, 1), opacity 0.4s cubic-bezier(1, 0, 0, 1), -webkit-transform 0.4s cubic-bezier(1, 0, 0, 1); }

.glb-hamburger .lines .line01 { top: 23px; right: 18px; }

.glb-hamburger .lines .line02 { top: 31px; right: 18px; }

.glb-hamburger .lines .line03 { top: 39px; right: 18px; }

.glb-hamburger.is-open .lines .line01 { -webkit-transform: translate(1px, 8px) rotate(30deg); transform: translate(1px, 8px) rotate(30deg); }

.glb-hamburger.is-open .lines .line02 { -webkit-transform: translate(-20px, 0); transform: translate(-20px, 0); opacity: 0; }

.glb-hamburger.is-open .lines .line03 { -webkit-transform: translate(1px, -8px) rotate(-30deg); transform: translate(1px, -8px) rotate(-30deg); }

/* site-ttl
=========================================== */
.glb-header .site-ttl { position: relative; z-index: 10; margin-left: 20px; width: 216px; height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

@media screen and (max-width: 960px) { .glb-header .site-ttl { width: 160px; } }

@media screen and (max-width: 767px) { .glb-header .site-ttl { width: 152px; margin-left: 16px; } }

.glb-header .site-ttl img { width: 100%; }

.glb-header .right-box { display: -webkit-box; display: -ms-flexbox; display: flex; height: 100%; }

@media screen and (max-width: 767px) { .glb-header .right-box { position: absolute; display: block; top: 0; left: 0; width: 100%; } }

/* .glb-nav
=========================================== */
@media screen and (max-width: 767px) { .glb-nav { display: block; position: absolute; top: 64px; left: 0; background-color: #f4f4f4; width: 100%; height: 120vh; opacity: 0; -webkit-transform: translateX(-100%); transform: translateX(-100%); -webkit-transition: opacity 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), -webkit-transform 0.5s cubic-bezier(0.22, 0.61, 0.36, 1); transition: opacity 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), -webkit-transform 0.5s cubic-bezier(0.22, 0.61, 0.36, 1); transition: transform 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), opacity 0.5s cubic-bezier(0.22, 0.61, 0.36, 1); transition: transform 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), opacity 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), -webkit-transform 0.5s cubic-bezier(0.22, 0.61, 0.36, 1); } }

@media screen and (max-width: 767px) { .glb-nav.is-open { opacity: 1; -webkit-transform: translateX(0); transform: translateX(0); } }

@media screen and (min-width: 768px) { .glb-nav .nav-list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; height: 100%; } }

@media screen and (min-width: 768px) { .glb-nav .nav-list__item { position: relative; height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; } }

@media screen and (min-width: 768px) { .glb-nav .nav-list__item.contact { display: none; } }

@media screen and (min-width: 768px) { .glb-nav .nav-list__item + .nav-list__item { margin-left: 44px; } }

@media screen and (max-width: 960px) { .glb-nav .nav-list__item + .nav-list__item { margin-left: 24px; } }

@media screen and (max-width: 767px) { .glb-nav .nav-list__item + .nav-list__item { margin: 0; } }

@media screen and (min-width: 768px) { .glb-nav .nav-list__item a { -webkit-transition: color 0.2s ease-in-out; transition: color 0.2s ease-in-out; } }

@media screen and (max-width: 767px) { .glb-nav .nav-list__item a { position: relative; display: block; border-bottom: 1px solid #ccc; padding: 20px 4vw; } }

@media screen and (max-width: 767px) { .glb-nav .nav-list__item a:after { content: '\2192'; color: #2185c5; font-weight: 700; font-size: 1.6rem; position: absolute; right: 4vw; top: calc(50% - 7px); } }

@media screen and (min-width: 768px) { .glb-nav .nav-list__item a:hover { color: #2185c5; } }

@media screen and (min-width: 768px) { .glb-nav .nav-list__item .item-txt { font-weight: 500; font-size: 1.6rem; } }

@media screen and (max-width: 767px) { .glb-nav .nav-list__item .item-txt { color: #2185c5; font-weight: 700; font-size: 1.6rem; } }

/* .contact-btn
=========================================== */
.glb-header .contact-btn { width: 136px; height: 100%; margin-left: 64px; }

@media screen and (max-width: 960px) { .glb-header .contact-btn { width: 120px; margin-left: 32px; } }

@media screen and (max-width: 767px) { .glb-header .contact-btn { position: absolute; top: 0; right: 64px; width: 64px; height: 64px; } }

.glb-header .contact-btn a { color: #fff; display: -webkit-box; display: -ms-flexbox; display: flex; width: 100%; height: 100%; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; background-color: #3f94ca; -webkit-transition: background-color 0.2s ease-in-out; transition: background-color 0.2s ease-in-out; }

.glb-header .contact-btn a:hover { background-color: #2185c5; }

.glb-header .contact-btn .btn-img { width: 40px; max-height: 32px; }

@media screen and (max-width: 767px) { .glb-header .contact-btn .btn-img { width: 28px; } }

.glb-header .contact-btn .btn-txt { margin-top: 10px; font-weight: 500; font-size: 1.4rem; }

@media screen and (max-width: 767px) { .glb-header .contact-btn .btn-txt { display: none; } }

/* ========================================================
.glb-container
======================================================== */
.glb-container { margin-top: 88px; }

@media screen and (max-width: 767px) { .glb-container { margin-top: 64px; } }

/* ========================================================
.cmn-sec-contact
======================================================== */
.cmn-sec-contact { margin-top: 80px; padding: 80px 0; background-image: url("../img/common/footer/contact_bg01.png"); background-position: center center; background-size: cover; }

@media screen and (max-width: 767px) { .cmn-sec-contact { margin-top: 56px; padding: 56px 0; } }

.cmn-sec-contact .sub-txt { text-align: center; margin-top: 32px; font-size: 1.8rem; }

@media screen and (max-width: 767px) { .cmn-sec-contact .sub-txt { margin-top: 24px; font-size: 1.6rem; } }

.cmn-sec-contact .main-box { margin-top: 40px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 767px) { .cmn-sec-contact .main-box { display: block; } }

.cmn-sec-contact .main-box .block-ttl { text-align: center; font-weight: 500; font-size: 1.8rem; }

@media screen and (max-width: 767px) { .cmn-sec-contact .main-box .block-ttl { font-weight: 700; } }

/* .tel-block
=========================================== */
.cmn-sec-contact .main-box .tel-block { font-weight: 500; }

.cmn-sec-contact .main-box .tel-block .tel { margin-top: 28px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; }

@media screen and (max-width: 767px) { .cmn-sec-contact .main-box .tel-block .tel { margin-top: 16px; } }

.cmn-sec-contact .main-box .tel-block .tel__txt { font-size: 1.8rem; padding-bottom: 4px; }

.cmn-sec-contact .main-box .tel-block .tel__num { margin-left: 8px; color: #124667; font-size: 3.6rem; }

@media screen and (max-width: 767px) { .cmn-sec-contact .main-box .tel-block .tel__num { font-weight: 700; font-size: 3.2rem; } }

.cmn-sec-contact .main-box .tel-block .date { margin: 16px 0 0 16px; text-align: center; font-size: 1.8rem; }

@media screen and (max-width: 767px) { .cmn-sec-contact .main-box .tel-block .date { margin: 12px 0 0; font-size: 1.4rem; } }

/* .form-block
=========================================== */
@media screen and (max-width: 767px) { .cmn-sec-contact .main-box .form-block { margin-top: 40px; } }

.cmn-sec-contact .main-box .form-block .form-btn { margin-top: 28px; }

@media screen and (max-width: 767px) { .cmn-sec-contact .main-box .form-block .form-btn { margin-top: 16px; } }

.cmn-sec-contact .main-box .form-block .form-btn a { display: block; width: 312px; padding: 22px 0 24px; background-color: #3f94ca; color: #fff; text-align: center; font-weight: 500; font-size: 1.8rem; -webkit-box-shadow: 0 0 10px 0 rgba(33, 133, 197, 0.4); box-shadow: 0 0 10px 0 rgba(33, 133, 197, 0.4); -webkit-transition: background-color 0.2s ease-in-out; transition: background-color 0.2s ease-in-out; }

.cmn-sec-contact .main-box .form-block .form-btn a:hover { background-color: #2185c5; }

@media screen and (max-width: 767px) { .cmn-sec-contact .main-box .form-block .form-btn a { width: 100%; } }

/* ========================================================
.cmn-link-area
======================================================== */
.cmn-link-area .link-list { display: -webkit-box; display: -ms-flexbox; display: flex; }

@media screen and (max-width: 767px) { .cmn-link-area .link-list { display: block; } }

.cmn-link-area .link-list__item { width: calc(100% / 3); }

@media screen and (max-width: 767px) { .cmn-link-area .link-list__item { width: 100%; } }

.cmn-link-area .link-list__item:not(:first-child) { border-left: 1px solid #ccc; }

.cmn-link-area .link-list__img { overflow: hidden; }

.cmn-link-area .link-list__img img { -webkit-transform: scale(1); transform: scale(1); -webkit-transition: -webkit-transform 0.8s cubic-bezier(0.165, 0.85, 0.45, 1); transition: -webkit-transform 0.8s cubic-bezier(0.165, 0.85, 0.45, 1); transition: transform 0.8s cubic-bezier(0.165, 0.85, 0.45, 1); transition: transform 0.8s cubic-bezier(0.165, 0.85, 0.45, 1), -webkit-transform 0.8s cubic-bezier(0.165, 0.85, 0.45, 1); }

.cmn-link-area a:hover .link-list__img img { -webkit-transform: scale(1.1); transform: scale(1.1); }

.cmn-link-area .link-list__item .ttl-block { position: relative; }

.cmn-link-area .link-list__item .ttl-block__txt { color: #2185c5; font-weight: 500; font-size: 1.8rem; text-align: center; padding: 12px 0; }

@media screen and (max-width: 767px) { .cmn-link-area .link-list__item .ttl-block__txt { font-weight: 700; } }

.cmn-link-area .link-list__item .ttl-block .arrow { position: absolute; right: 16px; top: calc(50% - 10px); color: #2185c5; font-weight: 700; font-size: 1.8rem; -webkit-transition: right 0.8s cubic-bezier(0.165, 0.85, 0.45, 1); transition: right 0.8s cubic-bezier(0.165, 0.85, 0.45, 1); }

.cmn-link-area .link-list__item a:hover .ttl-block .arrow { right: 12px; }

/* ========================================================
.cmn-sec-mv
======================================================== */
.cmn-sec-mv { background-size: cover; background-position: center center; background-repeat: no-repeat; }

.cmn-sec-mv .page-ttl { color: #fff; padding: 72px 0 48px; }

.cmn-sec-mv .page-ttl .ttl-en { display: inline-block; position: relative; font-family: "Roboto", sans-serif; font-size: 1.6rem; }

.cmn-sec-mv .page-ttl .ttl-en:after { content: ''; position: absolute; display: block; background-color: #fff; width: 32px; height: 1px; right: -40px; top: calc(50%); }

.cmn-sec-mv .page-ttl .ttl-jp { margin-top: 8px; font-size: 4rem; font-weight: 500; }

@media screen and (max-width: 767px) { .cmn-sec-mv .page-ttl .ttl-jp { font-size: 3.2rem; font-weight: 700; } }

/* ========================================================
.breadcrumb
======================================================== */
.breadcrumb-list { padding-bottom: 20px; text-align: right; font-size: 0; line-height: 1.5; }

.breadcrumb-list__item { position: relative; display: inline-block; font-size: 1.6rem; }

@media screen and (max-width: 767px) { .breadcrumb-list__item { font-size: 1.2rem; } }

.breadcrumb-list__item + .breadcrumb-list__item { margin-left: 32px; }

@media screen and (max-width: 767px) { .breadcrumb-list__item + .breadcrumb-list__item { margin-left: 24px; } }

.breadcrumb-list__item + .breadcrumb-list__item:before { content: ''; position: absolute; display: inline-block; background-color: #fff; width: 12px; height: 1px; top: calc(50% + 1px); left: -20px; }

@media screen and (max-width: 767px) { .breadcrumb-list__item + .breadcrumb-list__item:before { width: 10px; top: calc(50% - 1px); left: -18px; } }

.breadcrumb-list__item a, .breadcrumb-list__item .no-link { color: #fff; }

.breadcrumb-list__item a:hover { text-decoration: underline; }

/* ========================================================
.glb-footer
======================================================== */
.glb-footer { color: #fff; position: relative; padding: 64px 0; background-image: url("../img/common/footer/bg01.jpg"); background-position: center center; background-size: cover; }

@media screen and (max-width: 767px) { .glb-footer { padding: 56px 0 16px; } }

.glb-footer:before { content: ''; position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; background-color: rgba(18, 70, 103, 0.8); }

.glb-footer .main-box { position: relative; z-index: 1; }

.glb-footer .main-box__in { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 767px) { .glb-footer .main-box__in { -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: vertical; -webkit-box-direction: reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse; } }

/* .left-block
=========================================== */
.glb-footer .left-block { width: 304px; }

@media screen and (max-width: 767px) { .glb-footer .left-block { margin-top: 64px; width: 100%; } }

.glb-footer .left-block .site-ttl { font-size: 1.8rem; }

.glb-footer .left-block .address { margin-top: 16px; }

.glb-footer .left-block .address__txt { line-height: 1.5; }

.glb-footer .left-block .address__txt + .address__txt { margin-top: 6px; }

/* .right-block
=========================================== */
@media screen and (max-width: 767px) { .glb-footer .right-block { width: 100%; } }

.glb-footer .footer-nav { display: -webkit-box; display: -ms-flexbox; display: flex; }

@media screen and (max-width: 1120px) { .glb-footer .footer-nav { display: block; } }

@media screen and (max-width: 1120px) { .glb-footer .footer-nav .nav-list + .nav-list { margin-top: 32px; } }

@media screen and (max-width: 1120px) { .glb-footer .footer-nav .nav-list02 { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; } }

@media screen and (max-width: 1120px) { .glb-footer .footer-nav .nav-list02 .nav-list__item { width: 50%; } }

@media screen and (max-width: 1120px) { .glb-footer .footer-nav .nav-list02 .nav-list__item:nth-child(2) { margin-top: 0; } }

.glb-footer .footer-nav .nav-list__item + .nav-list__item { margin-top: 32px; }

.glb-footer .footer-nav .nav-list__item a { -webkit-transition: opacity 0.2s ease-in-out; transition: opacity 0.2s ease-in-out; }

.glb-footer .footer-nav .nav-list__item a:hover { opacity: 0.7; }

.glb-footer .footer-nav .nav-list__item .main-txt { position: relative; font-size: 1.8rem; }

@media screen and (max-width: 767px) { .glb-footer .footer-nav .nav-list__item .main-txt { font-weight: 700; font-size: 1.6rem; } }

.glb-footer .footer-nav .nav-list__item .main-txt:after { left: 0; bottom: -10px; content: ''; position: absolute; background-color: #fff; width: 16px; height: 2px; }

.glb-footer .footer-nav .sub-list { width: 440px; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-top: 24px; }

@media screen and (max-width: 1120px) { .glb-footer .footer-nav .sub-list { width: 400px; } }

@media screen and (max-width: 767px) { .glb-footer .footer-nav .sub-list { width: 100%; } }

.glb-footer .footer-nav .sub-list__item { line-height: 1.3; }

.glb-footer .footer-nav .sub-list__item:nth-child(n + 3) { margin-top: 16px; }

.glb-footer .footer-nav .sub-list__item:nth-child(2n + 1) { width: 192px; }

@media screen and (max-width: 767px) { .glb-footer .footer-nav .sub-list__item:nth-child(2n + 1) { width: calc(50%); padding-right: 4px; } }

.glb-footer .footer-nav .sub-list__item:nth-child(2n) { width: calc(100% - 192px); }

@media screen and (max-width: 767px) { .glb-footer .footer-nav .sub-list__item:nth-child(2n) { width: 50%; padding-left: 4px; } }

/* .footer-bottom
=========================================== */
.glb-footer .footer-bottom { margin-top: 64px; }

@media screen and (max-width: 767px) { .glb-footer .footer-bottom { margin-top: 56px; } }

@media screen and (max-width: 767px) { .glb-footer .copyright { text-align: center; } }

.glb-footer .copyright__txt { font-size: 1.4rem; }

/* ========================================================
wp-pagenavi
======================================================== */
.wp-pagenavi { margin-top: 48px; text-align: center; }

@media screen and (max-width: 767px) { .wp-pagenavi { margin-top: 40px; } }

.wp-pagenavi a, .wp-pagenavi span { display: inline-block; margin: 4px; min-width: 32px; height: 32px; padding: 8px 12px 0; color: #000; font-weight: 500; font-family: "Roboto", sans-serif; text-decoration: none; -webkit-transition: 0.2s ease-in-out; transition: 0.2s ease-in-out; }

@media screen and (max-width: 767px) { .wp-pagenavi a, .wp-pagenavi span { font-weight: 700; } }

.wp-pagenavi a:hover { background-color: #2185c5; color: #fff; }

.wp-pagenavi span.current { background-color: #124667; color: #fff; }
/*# sourceMappingURL=common.min.css.map */