@charset "UTF-8";
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; }

html { font-size: 62.5%; }
@media screen and (max-width: 750px) { html { font-size: 2.7142857143vw; } }

body { font-family: "Noto Sans JP",YuGothicM, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; font-size: 1.4rem; -webkit-text-size-adjust: 100%; }

li { list-style: none; }

img { max-width: 100%; vertical-align: bottom; }

video { max-width: 100%; }

a { color: #000; }
a:hover { text-decoration: none; }

button { padding: 0; border: none; background: none; font-family: inherit; font-size: 1.4rem; cursor: pointer; }

input[type="text"], input[type="password"], input[type="tel"], input[type="email"], input[type="submit"], input[type="button"], textarea, select { font-family: inherit; font-size: 1.4rem; }

.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; } }

.js-tel { color: #000 !important; text-decoration: none; cursor: default; }

.pagetop { position: fixed; bottom: 0; right: 0; z-index: 9999; opacity: 0; transition: all .5s; transform: translateY(100px); width: 50px; margin-right: 15px; margin-bottom: 20px; }
@media screen and (max-width: 750px) { .pagetop { width: 10.6666666667%; margin-right: 2%; margin-bottom: 13.3333333333%; } }
.pagetop.is-show { opacity: 1; transform: translateY(0); }

@media screen and (max-width: 750px) { body:has(.virtual-btn) .pagetop { margin-bottom: 22.6666666667%; } }

.inner { width: 100%; max-width: 1240px; margin: 0 auto; padding: 0 20px; line-height: 1.6; }
@media screen and (max-width: 750px) { .inner { padding: 0 4%; } }

.contents { width: 100%; max-width: 1000px; margin: 0 auto; padding: 40px 0 140px; }

/* ------------------------------ ヘッダー
------------------------------ */
.header { z-index: 9999; position: sticky; top: 0; left: 0; display: flex; justify-content: space-between; width: 100%; height: 100px; padding: 0 25px 0 50px; background-color: #f9f9fb; }
.header::before { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background-color: #005eac; pointer-events: none; }
@media screen and (max-width: 1200px) { .header { padding-inline: 15px; } }
@media screen and (max-width: 750px) { .header { height: 5rem; padding-inline: 4%; } }
.header .header-logo { display: flex; align-items: center; flex: 1; max-width: 294px; margin-right: 20px; }
@media screen and (max-width: 750px) { .header .header-logo { max-width: 16rem; margin-right: 10px; } }
.header .header-logo a { display: block; width: 100%; }
.header .header-con { flex: 1; display: flex; justify-content: flex-end; }
@media screen and (max-width: 1100px) { .header .header-con { display: none; } }
.header .header-con .gnav { display: flex; justify-content: flex-end; margin-right: 12px; }
@media screen and (max-width: 1200px) { .header .header-con .gnav { margin-right: 15px; } }
.header .header-con .gnav > li { padding-inline: 12px; }
@media screen and (max-width: 1200px) { .header .header-con .gnav > li { padding-inline: 6px; } }
.header .header-con .gnav .gnav-p { text-decoration: none; display: flex; align-items: center; height: 100%; color: #005eac; font-weight: 700; cursor: pointer; }
.header .header-con .gnav .gnav-p .gnav-p-in { position: relative; display: flex; align-items: center; padding-block: 10px; overflow: hidden; }
.header .header-con .gnav .gnav-p .gnav-p-in div { position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background-color: #005eac; }
.header .header-con .gnav .gnav-p .gnav-p-in .ico { margin-left: 10px; }
.header .header-con .gnav .gnav-p .gnav-p-in span { flex: 1; }
.header .header-con .gnav .popup { z-index: 9999; display: none; position: absolute; top: 100px; left: 0; width: 100%; height: 140px; background-color: #fff; }
.header .header-con .gnav .popup.is-show { display: block; }
.header .header-con .gnav .popup._company, .header .header-con .gnav .popup._business { height: 230px; }
.header .header-con .gnav .popup .popup-in { width: 100%; max-width: 1140px; margin: 0 auto; padding: 20px 20px 30px; line-height: 1.4; }
.header .header-con .gnav .popup dl { display: flex; align-items: flex-start; }
.header .header-con .gnav .popup dl dt { flex: 1; padding-top: 1.4rem; }
.header .header-con .gnav .popup dl dt a { display: flex; align-items: flex-start; justify-content: flex-start; text-decoration: none; }
.header .header-con .gnav .popup dl dt a span { font-size: 2.3rem; font-weight: 700; color: #005eac; }
.header .header-con .gnav .popup dl dt a .ico { width: 2.3em; margin-left: 10px; }
.header .header-con .gnav .popup dl dd { width: 74.5454545455%; }
.header .header-con .gnav .popup dl dd ul { display: flex; flex-wrap: wrap; column-gap: 4.2682926829%; }
.header .header-con .gnav .popup dl dd ul li { width: 30.487804878%; border-bottom: 1px solid #b3cbe7; }
.header .header-con .gnav .popup dl dd ul li a { display: block; text-decoration: none; padding: 20px 0; background: url("../img/common/ico_arrow.svg") no-repeat right center; background-size: 4px auto; font-size: 1.6rem; }
.header .header-con .header-box { display: flex; align-items: center; width: 100%; max-width: 254px; }
@media screen and (max-width: 1200px) { .header .header-con .header-box { max-width: 220px; } }
.header .header-con .header-box .header-box-in { display: flex; width: 100%; padding: 10px; border: 1px solid #005eac; background-color: #fff; border-radius: 4em; }
.header .header-con .header-box .header-search { width: 66px; padding: 10px; }
@media screen and (max-width: 1200px) { .header .header-con .header-box .header-search { width: 50px; } }
.header .header-con .header-box .header-search img { width: 24px; margin: 0 auto; }
.header .header-con .header-box .header-contact { flex: 1; display: flex; align-items: center; border-left: 1px solid #b5cae5; }
.header .header-con .header-box .header-contact a { display: flex; align-items: center; justify-content: center; text-decoration: none; width: 100%; height: 100%; padding: 10px 0; color: #005eac; }
.header .header-con .header-box .header-contact a .ico { width: 1.5em; margin-right: 10px; }
.header .header-con .header-box .header-contact a span { font-weight: 500; }
.header .header-sp { display: none; }
@media screen and (max-width: 1100px) { .header .header-sp { display: flex; justify-content: flex-end; flex: 1; } }
.header .header-sp .header-search { width: 85px; }
@media screen and (max-width: 750px) { .header .header-sp .header-search { width: 4.5rem; } }
.header .header-sp .header-search img { width: 50px; }
@media screen and (max-width: 750px) { .header .header-sp .header-search img { width: 2.8rem; } }
.header .header-sp .header-menu { display: flex; align-items: center; justify-content: center; width: 155px; padding: 0 10px; cursor: pointer; }
@media screen and (max-width: 750px) { .header .header-sp .header-menu { width: 5rem; padding: 1rem 0 0.5rem; } }
.header .header-sp .header-menu p { position: relative; display: block; width: 92px; aspect-ratio: 92 / 26; margin: 0 auto 15px; }
@media screen and (max-width: 750px) { .header .header-sp .header-menu p { width: 4rem; margin-bottom: 0.5rem; } }
.header .header-sp .header-menu span { position: absolute; right: 0; display: block; width: 100%; height: 3px; background-color: #005eac; transition: all .4s; }
.header .header-sp .header-menu span:nth-of-type(1) { width: 100%; top: 0; }
.header .header-sp .header-menu span:nth-of-type(2) { width: 70%; bottom: 0; }
.header .header-sp .header-menu .header-menu-txt { text-align: right; line-height: 1; }
.header .header-sp .header-menu .header-menu-txt:before { content: 'MENU'; font-size: 2rem; font-weight: 500; color: #005eac; }
@media screen and (max-width: 750px) { .header .header-sp .header-menu .header-menu-txt:before { font-size: 1.00625rem; } }

.js-gnavopen::before { content: ''; position: fixed; top: 0; left: 0; z-index: 9990; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.3); }

/* ------------------------------ SPメニュー
------------------------------ */
.nav-menu { z-index: 99999; display: none; position: fixed; top: 100px; left: 0; width: 100%; height: calc(100% - 100px); background: #fff; }
@media screen and (max-width: 750px) { .nav-menu { top: 5rem; height: calc(100% - 5rem); } }
.nav-menu .nav-menu-content { position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding-bottom: 50px; overflow-y: auto; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-content { padding-bottom: 6.6666666667%; } }
.nav-menu a { display: block; text-decoration: none; }
.nav-menu .nav-menu-content-inner { padding: 0 30px; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-content-inner { padding: 0 4%; } }
.nav-menu .nav-menu-content-inner dl { border-bottom: 1px solid #b3cbe7; }
.nav-menu .nav-menu-content-inner dl dt { padding: 40px 0; background: url("../img/common/ico_toggle_o.svg") no-repeat right center; background-size: 24px auto; font-size: 2.0rem; color: #005eac; cursor: pointer; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-content-inner dl dt { padding: 5.7971014493% 0; background-size: 3.4782608696% auto; font-size: 1.4875rem; } }
.nav-menu .nav-menu-content-inner dl dt.active { background-image: url("../img/common/ico_toggle_c.svg"); }
.nav-menu .nav-menu-content-inner dl dd { display: none; border-top: 4px solid #005eac; padding: 0 30px 80px; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-content-inner dl dd { padding: 0 4.347826087% 11.5942028986%; } }
.nav-menu .nav-menu-content-inner dl dd ul li { border-bottom: 1px solid #e9e9e9; }
.nav-menu .nav-menu-content-inner dl dd ul li a { padding: 25px 0; font-size: 1.6rem; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-content-inner dl dd ul li a { padding: 4.0322580645% 0; font-size: 1.4rem; } }
.nav-menu .nav-menu-content-inner p { border-bottom: 1px solid #b3cbe7; }
.nav-menu .nav-menu-content-inner p a { padding: 40px 0; background: url("../img/common/ico_arrow_btn_line.svg") no-repeat right center; background-size: 40px auto; font-size: 2.0rem; color: #005eac; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-content-inner p a { padding: 5.7971014493% 0; background-size: 5.7971014493% auto; font-size: 1.4875rem; } }
.nav-menu .nav-menu-content-inner p a[target="_blank"] { background-image: url("../img/common/ico_link.svg"); background-size: 25px auto; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-content-inner p a[target="_blank"] { background-size: 3.6231884058% auto; } }

.js-menuopen { overflow: hidden; }
.js-menuopen .header-menu { width: 65px; }
.js-menuopen .header-menu span:nth-child(1) { transform: translateY(11px) rotate(-25deg); }
@media screen and (max-width: 750px) { .js-menuopen .header-menu span:nth-child(1) { transform: translateY(0.45rem) rotate(-25deg); } }
.js-menuopen .header-menu span:nth-child(2) { width: 100% !important; transform: translateY(-11px) rotate(25deg); }
@media screen and (max-width: 750px) { .js-menuopen .header-menu span:nth-child(2) { transform: translateY(-0.45rem) rotate(25deg); } }
.js-menuopen .header-menu .header-menu-txt { text-align: center !important; }
.js-menuopen .header-menu .header-menu-txt:before { content: 'CLOSE' !important; }
.js-menuopen .nav-menu { display: block; }

/* ------------------------------ ページタイトル
------------------------------ */
.pagettl-sec._pagettl01 { background: url("../img/common/bg_pagettl.png") no-repeat left top; background-size: cover; }
.pagettl-sec._pagettl01 .topicpath { color: #fff; }
.pagettl-sec._pagettl01 .topicpath li a { color: #fff; }
.pagettl-sec._pagettl01 .pagettl-main { padding: 20px 0 50px; }
.pagettl-sec._pagettl01 .pagettl-h { padding-left: 20px; border-left: 4px solid #fff; font-size: 3.0rem; font-weight: 700; color: #fff; }
@media screen and (max-width: 750px) { .pagettl-sec._pagettl01 .pagettl-h { font-size: 2.2rem; } }
.pagettl-sec._pagettl02 { background: url("../img/common/bg_pagettl02.png") no-repeat left top; background-size: cover; }
.pagettl-sec._pagettl02 .topicpath li a { color: #005eac; }
.pagettl-sec._pagettl02 .pagettl-main { padding: 30px 0 70px; }
.pagettl-sec._pagettl02 .pagettl-h { position: relative; font-size: 2.8rem; font-weight: 700; color: #005eac; text-align: center; }
@media screen and (max-width: 750px) { .pagettl-sec._pagettl02 .pagettl-h { font-size: 2.2rem; } }
.pagettl-sec._pagettl02 .pagettl-h::after { content: ''; position: absolute; bottom: 0; left: 50%; width: 104px; height: 3px; margin-bottom: -25px; margin-left: -52px; background-color: #fff; }
.pagettl-sec._detail .topicpath li a { color: #005eac; }

.topicpath { display: flex; align-items: center; justify-content: flex-end; padding: 10px 75px; font-size: 1.3rem; }
@media screen and (max-width: 750px) { .topicpath { padding: 15px 4% 5px; font-size: 1rem; } }
.topicpath li::after { content: '＞'; margin: 0 1em; }
.topicpath li:last-child::after { display: none; }
.topicpath li a { text-decoration: none; }

/* ------------------------------ フッター
------------------------------ */
.footer .footer-nav { padding: 95px 0 90px; background: linear-gradient(to right, #0a41e4, #008e99); }
@media screen and (max-width: 750px) { .footer .footer-nav { padding: 9.3333333333% 0; } }
.footer .footer-nav .footer-in { width: 100%; max-width: 1240px; margin: 0 auto; padding: 0 20px; line-height: 1.2; }
@media screen and (max-width: 750px) { .footer .footer-nav .footer-in { padding: 0 4%; } }
.footer .footer-nav .footer-nav-grid { display: grid; grid-template-columns: auto 20%; }
@media screen and (max-width: 980px) { .footer .footer-nav .footer-nav-grid { display: block; } }
.footer .footer-nav .footer-nav-list { display: flex; justify-content: space-between; column-gap: 5.2083333333%; margin-right: 5.2083333333%; grid-column: 1 / 2; grid-row: 1 / 1; line-height: 1.4; }
@media screen and (max-width: 980px) { .footer .footer-nav .footer-nav-list { margin-right: 20px; margin-bottom: 60px; } }
@media screen and (max-width: 750px) { .footer .footer-nav .footer-nav-list { display: none; } }
.footer .footer-nav .footer-nav-list a { text-decoration: none; color: #fff; }
.footer .footer-nav .footer-nav-list a:hover { text-decoration: underline; }
.footer .footer-nav .footer-nav-list dl dt { margin-bottom: 20px; font-size: 1.8rem; font-weight: 700; }
.footer .footer-nav .footer-nav-list dl dd ul li { margin-bottom: 1em; }
.footer .footer-nav .footer-nav-list dl dd ul li:last-child { margin-bottom: 0; }
.footer .footer-nav .footer-nav-link { display: flex; flex-direction: column; row-gap: 15px; grid-column: 2 / 2; grid-row: 1 / 1; }
@media screen and (max-width: 980px) { .footer .footer-nav .footer-nav-link { width: 100%; max-width: 240px; margin: 0 auto; } }
@media screen and (max-width: 750px) { .footer .footer-nav .footer-nav-link { max-width: 100%; } }
.footer .footer-nav .footer-nav-link li a { display: flex; align-items: center; text-decoration: none; padding: 15px; border: 1px solid #fff; background: url("../img/common/ico_arrow_btn_bl02.svg") no-repeat right 15px center; background-size: 29px auto; color: #fff; border-radius: 4em; }
@media screen and (max-width: 750px) { .footer .footer-nav .footer-nav-link li a { padding: 5.7971014493% 10.1449275362%; background-position: right 6.5217391304% center; background-size: 11.5942028986% auto; } }
.footer .footer-nav .footer-nav-link li a .ico { margin-right: 10px; }
@media screen and (max-width: 750px) { .footer .footer-nav .footer-nav-link li a .ico { width: 1.5em; margin-right: 4.9180327869%; } }
.footer .footer-nav .footer-nav-link li a span { flex: 1; }
@media screen and (max-width: 750px) { .footer .footer-nav .footer-nav-link li a span { font-size: 1.75rem; } }

.footer-main { display: grid; grid-template-columns: 12em 1fr 11em; row-gap: 2rem; padding: 70px 50px 25px; background-color: #fff; }
@media screen and (max-width: 750px) { .footer-main { display: block; padding: 9.3333333333% 0 4%; } }
.footer-main .footer-logo { grid-column: 2 / 3; grid-row: 1 / 2; width: 100%; max-width: 342px; margin: 0 auto; }
@media screen and (max-width: 750px) { .footer-main .footer-logo { width: 66.6666666667%; max-width: 100%; } }
.footer-main .footer-link { grid-column: 1 / 2; grid-row: 1 / 3; display: flex; align-items: flex-end; }
@media screen and (max-width: 750px) { .footer-main .footer-link { justify-content: center; align-items: center; flex-direction: column; margin-top: 12%; padding: 8% 4% 9.3333333333%; border-top: 4px solid #E8F0F4; } }
.footer-main .footer-link ul { display: grid; row-gap: 10px; }
.footer-main .footer-link ul li a { text-decoration: none; font-size: 1.2rem; }
@media screen and (max-width: 750px) { .footer-main .footer-link ul li a { font-size: 1.05rem; } }
.footer-main .footer-link ul li a:hover { text-decoration: underline; }
.footer-main .footer-bottom { grid-column: 2 / 3; grid-row: 2 / 3; display: grid; row-gap: 1rem; }
.footer-main .footer-bottom .copy { margin-top: 5em; line-height: 1.2; text-align: center; font-weight: 500; }
@media screen and (max-width: 750px) { .footer-main .footer-bottom .copy { margin-top: 0; font-size: 0.9625rem; } }

/* ------------------------------ 検索窓
------------------------------ */
.js-modalsearchopen { overflow: hidden; }

.modalsearch-sec { display: none; position: fixed; top: 0; left: 0; z-index: 100000; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.3); }
.modalsearch-sec .modal-in { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow-y: auto; }
.modalsearch-sec .modal-con { position: relative; width: 100%; padding: 45px 20px; background-color: #f9f9fb; }
@media screen and (max-width: 750px) { .modalsearch-sec .modal-con { padding: 40pxpx 6.6666666667%; } }
.modalsearch-sec .modal-close { z-index: 99; position: absolute; top: 50%; right: 0; margin-top: -17px; margin-right: 60px; cursor: pointer; }
@media screen and (max-width: 980px) { .modalsearch-sec .modal-close { margin-right: 20px; } }
@media screen and (max-width: 750px) { .modalsearch-sec .modal-close { position: static; display: flex; align-items: center; justify-content: center; margin: 6.6666666667% auto 0; text-align: center; } }
.modalsearch-sec .modal-close span { display: none; }
@media screen and (max-width: 750px) { .modalsearch-sec .modal-close span { display: block; font-size: 1.225rem; color: #005eac; font-weight: 500; } }
.modalsearch-sec .modal-close .ico { width: 34px; }
@media screen and (max-width: 750px) { .modalsearch-sec .modal-close .ico { width: 1em; margin-left: 0.5em; } }
.modalsearch-sec .modal-main { width: 100%; max-width: 745px; margin: 0 auto; }
@media screen and (max-width: 980px) { .modalsearch-sec .modal-main { max-width: 585px; } }
.modalsearch-sec .modal-search { display: flex; justify-content: space-between; }
.modalsearch-sec .modal-search input { flex: 1; width: 100%; padding: 10px 20px; background: #fff; border: 1px solid #b5cdd3; font-size: 2.0rem; border-radius: 10px; }
@media screen and (max-width: 750px) { .modalsearch-sec .modal-search input { font-size: 1.225rem; } }
.modalsearch-sec .modal-search button { display: block; width: 120px; margin-left: 25px; background-color: #005eac; font-size: 2.4rem; font-weight: 500; color: #fff; text-align: center; border-radius: 4em; line-height: 1; }
@media screen and (max-width: 750px) { .modalsearch-sec .modal-search button { width: 100px; margin-left: 15px; font-size: 1.4875rem; } }

.font-en { font-family: "Poppins", sans-serif; }

.font-num { font-family: "Roboto", sans-serif; }

.font-min { font-family: "Shippori Mincho B1", serif; }

.opacity { transition: all .6s; }
.opacity:hover { opacity: 0.6; }

.cmn-anchor { position: relative; }
.cmn-anchor a { position: absolute; top: -100px; }

.tab { display: none; }
.tab.active { display: block; }

.ico { display: inline-flex; justify-content: center; align-items: center; width: 1em; line-height: 0; }
.ico::before { width: 100%; }

.ico-faq::before { content: url("../img/common/ico_faq.svg"); }

.ico-mail-w::before { content: url("../img/common/ico_mail_w.svg"); }

.ico-mail::before { content: url("../img/common/ico_mail.svg"); }

.ico-link::before { content: url("../img/common/ico_link.svg"); }

.ico-link-btn::before { content: url("../img/common/ico_link02.svg"); }

.ico-close::before { content: url("../img/common/ico_close.svg"); }

.ico-gnav::before { content: url("../img/common/ico_arrow_btn_line.svg"); }

.ico-arrow-btn-bl02::before { content: url("../img/common/ico_arrow_btn_bl02.svg"); }

.ico-arrow-btn-bl04::before { content: url("../img/common/ico_arrow_btn_bl04.svg"); }

.ico-faq-q::before { content: url("../img/common/ico_faq_q.svg"); }

.ico-faq-a::before { content: url("../img/common/ico_faq_a.svg"); }

.ico-pdf::before { content: url("../img/common/ico_pdf.svg"); }

.ico-arrow-map::before { content: url("../img/common/ico_arrow_map.svg"); }

.c-btn { position: relative; display: block; text-decoration: none; width: 100%; max-width: 296px; border: 1px solid #005eac; border-radius: 4em; background-color: #fff; overflow: hidden; }
.c-btn span { position: relative; z-index: 1; display: inline-block; width: 100%; padding: 20px 50px 20px 40px; background: url("../img/common/ico_arrow_btn_bl02.svg") no-repeat right 20px center; background-size: 38px auto; color: #005eac; font-size: 1.8rem; font-weight: 500; line-height: 1; }
@media screen and (max-width: 750px) { .c-btn span { font-size: 1.4rem; } }
.c-btn:hover span { background-image: url("../img/common/ico_arrow_btn_w.svg"); color: #fff; }
.c-btn div { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 2em; background-color: #005eac; }

.c-heading { position: relative; margin-bottom: 30px; padding-bottom: 15px; border-bottom: 1px solid #b3cbe7; font-size: 2.4rem; font-weight: 700; }
@media screen and (max-width: 750px) { .c-heading { font-size: 2.0rem; } }
.c-heading::after { content: ''; position: absolute; bottom: 0; left: 0; width: 180px; height: 1px; margin-bottom: -1px; background-color: #0095de; }
.c-heading span { margin-right: 10px; font-size: 3.8rem; font-weight: 500; color: #0095de; }
@media screen and (max-width: 750px) { .c-heading span { font-size: 2.8rem; } }
.c-heading small { margin-left: 10px; font-size: 1.8rem; }

.c-subheading { margin-bottom: 40px; padding-left: 20px; border-left: 3px solid #005eac; font-size: 2.2rem; font-weight: 700; color: #005eac; }
@media screen and (max-width: 750px) { .c-subheading { font-size: 1.8rem; } }

.c-txtheading { margin-bottom: 25px; font-size: 1.8rem; font-weight: 700; }
@media screen and (max-width: 750px) { .c-txtheading { font-size: 1.6rem; } }

.c-box { margin-bottom: 60px; }
.c-box:last-child { margin-bottom: 0; }

.c-boxbg { padding: 60px 40px; background-color: #f3f7ff; border-radius: 10px; }
@media screen and (max-width: 750px) { .c-boxbg { padding: 2rem 1.5rem; } }

.c-line { margin-bottom: 60px; padding-bottom: 60px; border-bottom: 1px solid #b3cbe7; }

.c-txt { font-size: 1.6rem; line-height: 2; }
@media screen and (max-width: 750px) { .c-txt { font-size: 1.4rem; line-height: 1.6; } }
.c-txt small { font-size: 1.4rem; }
@media screen and (max-width: 750px) { .c-txt small { font-size: 1.2rem; } }
.c-txt a { color: #0a49dc; }
.c-txt strong { color: #ff1f1f; }
.c-txt em { font-weight: 700; font-style: normal; }

.c-caption { margin-top: 10px; text-align: center; }
@media screen and (max-width: 750px) { .c-caption { font-size: 1.1rem; } }

.c-txtlist li { display: flex; }
.c-txtlist li::before { content: '●'; display: inline-block; margin-right: 10px; margin-top: 0.2em; color: #005eac; font-size: 120%; }

.c-fig { display: flex; flex-wrap: wrap; margin-bottom: 50px; }
.c-fig li { flex: 1; }
.c-fig._01 { max-width: 800px; margin-inline: auto; }
.c-fig._02 { gap: 30px 6%; }
.c-fig._03 { gap: 30px 4.4%; }
.c-fig._04 { gap: 30px 2.8%; }
@media screen and (max-width: 750px) { .c-fig._04 { column-gap: 0; justify-content: space-between; } }
@media screen and (max-width: 750px) { .c-fig._04 li { flex: initial; width: 47%; } }

.c-txtfig { display: flex; justify-content: space-between; }
@media screen and (max-width: 750px) { .c-txtfig { display: block; } }
.c-txtfig._reverse { flex-direction: row-reverse; }
.c-txtfig._reverse .txtfig-fig { margin-right: 0; margin-left: 5.5%; }
@media screen and (max-width: 750px) { .c-txtfig._reverse .txtfig-fig { margin: 0 auto 30px; } }
.c-txtfig .txtfig-fig { width: 47%; margin-right: 5.5%; }
@media screen and (max-width: 750px) { .c-txtfig .txtfig-fig { width: 100%; margin: 0 auto 30px; } }
.c-txtfig .txtfig-txt { flex: 1; }

.c-linklist li { margin-bottom: 1em; }
.c-linklist li span { display: inline-block; padding: 2px 0 2px 40px; background: url("../img/common/ico_arrow_btn_line.svg") no-repeat left top; background-size: 29px auto; }
@media screen and (max-width: 750px) { .c-linklist li span { padding-left: 2.8rem; background-position: left top 0.1em; background-size: 2rem auto; } }
.c-linklist li span._pdf { background: url("../img/common/ico_pdf.svg") no-repeat left 5px top 0.2em; background-size: 20px auto; }
@media screen and (max-width: 750px) { .c-linklist li span._pdf { background-position: left 0.2rem top 0.2em; background-size: 1.5rem auto; } }
.c-linklist li span._external { background: url("../img/common/ico_link.svg") no-repeat left 5px top 0.3em; background-size: 20px auto; }
@media screen and (max-width: 750px) { .c-linklist li span._external { background-position: left 0.2rem top 0.3em; background-size: 1.5rem auto; } }
.c-linklist a { font-size: 1.6rem; color: #005eac; }
@media screen and (max-width: 750px) { .c-linklist a { font-size: 1.4rem; } }
.c-linklist a:hover span { text-decoration: underline; }

.c-back { position: relative; display: block; text-decoration: none; width: 100%; max-width: 260px; border: 1px solid #005eac; border-radius: 4em; background-color: #fff; overflow: hidden; }
.c-back span { position: relative; z-index: 1; display: inline-block; width: 100%; padding: 20px 60px 20px 40px; background: url("../img/common/ico_arrow_btn_bl03.svg") no-repeat left 20px center; background-size: 38px auto; color: #005eac; font-size: 1.8rem; font-weight: 500; text-align: right; line-height: 1; }
@media screen and (max-width: 750px) { .c-back span { font-size: 1.4rem; } }
.c-back:hover { /*span { background-image: url("../img/common/ico_arrow_btn_w02.svg"); color: #fff;
}*/ }
.c-back div { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 2em; background-color: #005eac; }

.c-cate { width: 10em; margin-left: 1em; padding: 5px 1em; font-size: 1.3rem; text-align: center; }
@media screen and (max-width: 750px) { .c-cate { font-size: 1.26875rem; } }
.c-cate._cate6 { background-color: #ffb4c2; }
.c-cate._cate2 { background-color: #a1e7fc; }
.c-cate._cate3 { background-color: #bae0d7; }
.c-cate._cate1 { background-color: #bfd7ff; }
.c-cate._cate4 { background-color: #ffe8c3; }
.c-cate._cate5 { background-color: #dfcbed; }

.c-dl { display: flex; flex-direction: column; row-gap: 80px; }
.c-dl dl dd { font-size: 1.6rem; line-height: 2; }
@media screen and (max-width: 750px) { .c-dl dl dd { font-size: 1.4rem; } }
.c-dl a { text-decoration: underline; color: #0a49dc; }
.c-dl a:hover { text-decoration: none; }
.c-dl p { margin-bottom: 0.5em; }
.c-dl ol > li { margin-bottom: 0.5em; padding-left: 3.6rem; text-indent: -3.6rem; }
.c-dl ol > li:last-child { margin-bottom: 0; }
.c-dl ol > li ul li { padding-left: 2rem; text-indent: -1.4rem; }
@media screen and (max-width: 750px) { .c-dl ol > li ul li { padding-left: 1rem; } }
.c-dl ol > li ul li::before { content: '・'; }
.c-dl .c-dl-box { text-indent: 0; }
@media screen and (max-width: 750px) { .c-dl .c-dl-box { display: flex; flex-direction: column; row-gap: 1rem; } }
.c-dl .c-dl-box dl { display: flex; }
@media screen and (max-width: 750px) { .c-dl .c-dl-box dl { display: block; } }
.c-dl .c-dl-box dl dt { width: 12em; }
@media screen and (max-width: 750px) { .c-dl .c-dl-box dl dt { width: auto; font-weight: 500; } }
.c-dl .c-dl-box dl dd { flex: 1; }
@media screen and (max-width: 750px) { .c-dl .c-dl-box dl dd { padding-left: 1em; } }

.gsc-control-cse { box-sizing: content-box; background-color: transparent !important; }

.gsc-control-cse * { box-sizing: content-box; }

.gsc-control-cse .gsc-input { background-color: transparent !important; }

.gsc-control-cse .gsc-webResult.gsc-result { border: none; }

.gsc-control-cse .gsc-webResult.gsc-result .gsc-url-top { padding: 0; }

.gsc-control-cse .gsc-webResult.gsc-result .gsc-thumbnail-inside { padding: 0; }

.gsc-control-cse .gsc-webResult.gsc-result .gsc-thumbnail-inside b { font-weight: 700; }

.gsc-control-cse .gsc-results .gsc-cursor-box { margin: 20px 0 0; text-align: center; }

.gsc-control-cse .gsc-results .gsc-cursor-box .gsc-cursor-page { display: inline-block; *display: inline; *zoom: 1; min-height: 20px; width: 2.6em; margin: 0 4px 0; line-height: 1.8; font-weight: 700; border: 1px solid #0096dc; text-align: center; color: #0096dc; }

.gsc-control-cse .gsc-results .gsc-cursor-box .gsc-cursor-current-page { background-color: #0096dc; color: #fff; }

.gsc-control-cse .cse .gsc-webResult.gsc-result:hover, .gsc-control-cse .gsc-webResult.gsc-result:hover, .gsc-control-cse .gsc-webResult.gsc-result.gsc-promotion:hover, .gsc-control-cse .gsc-results .gsc-imageResult-classic:hover, .gsc-control-cse .gsc-results .gsc-imageResult-column:hover { border: none; }

.clearfix { zoom: 1; }
.clearfix::before { content: ""; display: table; }
.clearfix::after { content: ""; display: table; clear: both; }

.w100 { width: 100% !important; }

.mab30 { margin-bottom: 30px !important; }

.mab40 { margin-bottom: 40px !important; }

.pal20 { padding-left: 20px !important; }

.pal40 { padding-left: 40px !important; }

.js-anime-fadein { opacity: 0; animation-duration: .8s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-fadein.js-anime-on { animation-name: fadeIn; }

@keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }
.js-anime-slide { opacity: 0; animation-duration: .8s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-slide.js-anime-on { animation-name: slide; }

@keyframes slide { 0% { opacity: 0; transform: translateY(100px); }
  100% { opacity: 1; transform: translateY(0); } }
.js-anime-slideleft { opacity: 0; animation-duration: .8s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-slideleft.js-anime-on { animation-name: slideLeft; }

@keyframes slideLeft { 0% { opacity: 0; transform: translateX(-100px); }
  100% { opacity: 1; transform: translateX(0); } }
.js-anime-slideright { opacity: 0; animation-duration: .5s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-slideright.js-anime-on { animation-name: slideRight; }

@keyframes slideRight { 0% { opacity: 0; transform: translateX(100px); }
  100% { opacity: 1; transform: translateX(0); } }
.js-anime-sliderighttop { opacity: 0; animation-duration: .8s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-sliderighttop.js-anime-on { animation-name: slideRightTop; }

@keyframes slideRightTop { 0% { opacity: 0; transform: translate(100px, -100px); }
  100% { opacity: 1; transform: translateX(0); } }
@media print { .js-anime-fadein, .js-anime-slide, .js-anime-slideleft, .js-anime-slideright { opacity: initial; } }

/*# sourceMappingURL=style.css.map */
