@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.1111111111vw; } }

body { background-color: #eff6ff; font-family: "Noto Sans JP", YuGothicM, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; font-size: 1.8rem; -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.8rem; 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.8rem; }

.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: 20px; right: 20px; z-index: 9999; opacity: 0; transition: all .5s; transform: translateY(100px); }
.pagetop.is-show { opacity: 1; transform: translateY(0); }

.inner { width: 100%; max-width: 1360px; margin: 0 auto; padding: 0 20px; line-height: 1.6; }
@media screen and (max-width: 750px) { .inner { padding: 0 4%; } }
.inner._s { max-width: 1040px; }

/* ------------------------------ ヘッダー
------------------------------ */
.header { z-index: 99999; position: relative; }
.header .header-con { display: flex; align-items: center; justify-content: space-between; width: 100%; height: 140px; padding: 0 40px; }
@media screen and (max-width: 1280px) { .header .header-con { padding: 0 20px; } }
@media screen and (max-width: 750px) { .header .header-con { height: 100px; } }
.header .header-logo { width: 440px; margin-right: 20px; }
@media screen and (max-width: 1280px) { .header .header-logo { width: 340px; margin-right: 10px; } }
@media screen and (max-width: 980px) { .header .header-logo { width: 440px; } }
@media screen and (max-width: 750px) { .header .header-logo { width: 300px; } }
@media screen and (max-width: 400px) { .header .header-logo { width: 250px; } }
.header .header-nav { display: flex; }
@media screen and (max-width: 980px) { .header .header-nav { display: none; } }
.header .header-nav li { margin-right: 15px; }
@media screen and (max-width: 1280px) { .header .header-nav li { margin-right: 10px; } }
.header .header-nav li:last-child { margin-right: 0; }
.header .header-nav li a { display: flex; align-items: center; text-decoration: none; padding: 20px; border: 1px solid #93bafc; background-color: #fff; text-align: center; color: #000; border-radius: 2em; }
@media screen and (max-width: 1280px) { .header .header-nav li a { padding: 20px 10px; } }
.header .header-nav li a:hover { background-color: #9ab9ff; }
.header .header-nav li span { font-size: 1.6rem; font-weight: 700; }
@media screen and (max-width: 1280px) { .header .header-nav li span { font-size: 1.4rem; } }
.header .header-nav li .ico { width: 0.6em; margin-left: 1em; }
.header .header-menu { display: none; }
@media screen and (max-width: 980px) { .header .header-menu { display: flex; align-items: center; justify-content: center; width: 110px; height: 110px; cursor: pointer; } }
@media screen and (max-width: 750px) { .header .header-menu { width: 70px; height: 70px; } }
.header .header-menu button { position: relative; width: 68px; height: 37px; margin: 0 auto; }
@media screen and (max-width: 750px) { .header .header-menu button { width: 38px; height: 24px; } }
.header .header-menu span { position: absolute; right: 0; display: block; width: 100%; height: 2px; background-color: #0f2f8e; transition: all .4s; }
.header .header-menu span:nth-of-type(1) { top: 0; }
.header .header-menu span:nth-of-type(2) { top: 50%; margin-top: -1px; }
.header .header-menu span:nth-of-type(3) { bottom: 0; }

/* ------------------------------ SPメニュー
------------------------------ */
.nav-menu { z-index: 99999; display: none; position: fixed; top: 140px; left: 0; width: 100%; height: calc(100% - 140px); background: #9ab9ff; }
@media screen and (max-width: 750px) { .nav-menu { top: 100px; height: calc(100% - 100px); } }
.nav-menu .nav-menu-content { position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding: 65px 0; overflow-y: auto; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-content { padding: 8.6666666667% 0; } }
.nav-menu a { display: block; text-decoration: none; }
.nav-menu .nav-menu-list { width: 100%; max-width: 620px; margin: 0 auto; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-list { width: 82.6666666667%; max-width: 100%; } }
.nav-menu .nav-menu-list li { margin-bottom: 20px; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-list li { margin-bottom: 3.2258064516%; } }
.nav-menu .nav-menu-list li:last-child { margin-bottom: 0; }
.nav-menu .nav-menu-list li a { display: block; padding: 40px 60px; background: #fff url("../img/ico_arrow_nav.svg") no-repeat right 30px center; background-size: 18px auto; font-size: 2.0rem; font-weight: 700; border-radius: 4em; }
@media screen and (max-width: 750px) { .nav-menu .nav-menu-list li a { padding: 6.4516129032% 9.6774193548%; background-position: right 4.8387096774% center; font-size: 2.2rem; } }

.js-menuopen { overflow: hidden; }
.js-menuopen .header-menu span:nth-child(1) { transform: translateY(17px) rotate(-25deg); }
@media screen and (max-width: 750px) { .js-menuopen .header-menu span:nth-child(1) { transform: translateY(11px) rotate(-25deg); } }
.js-menuopen .header-menu span:nth-child(2) { opacity: 0; }
.js-menuopen .header-menu span:nth-child(3) { transform: translateY(-17px) rotate(25deg); }
@media screen and (max-width: 750px) { .js-menuopen .header-menu span:nth-child(3) { transform: translateY(-11px) rotate(25deg); } }
.js-menuopen .nav-menu { display: block; }

/* ------------------------------ フッター
------------------------------ */
.topicpath { padding: 1rem 0; background-color: #e5ecfa; }
.topicpath ol { display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; font-size: 1.4rem; }
.topicpath ol li::after { content: '>'; margin-left: 1rem; }
.topicpath ol li:last-child::after { display: none; }

.article { padding-bottom: 8rem; background-color: #fff; }
@media screen and (max-width: 750px) { .article { padding-bottom: 6rem; } }

.title-sec { margin-bottom: 6rem; padding: 2rem 0; border-bottom: 1px solid #0f2f8e; }
@media screen and (max-width: 750px) { .title-sec { margin-bottom: 4rem; } }
.title-sec .title-h { color: #0f2f8e; font-size: 4rem; }
@media screen and (max-width: 750px) { .title-sec .title-h { font-size: 3rem; } }

/* ------------------------------ フッター
------------------------------ */
.footer { padding: 145px 0 100px; background-color: #e5ecfa; }
@media screen and (max-width: 980px) { .footer { padding: 80px 0; } }
.footer .footer-in { width: 100%; max-width: 1360px; margin: 0 auto; padding: 0 20px; }
@media screen and (max-width: 750px) { .footer .footer-in { padding: 0 4%; } }
.footer .footer-wrap { position: relative; display: grid; grid-template-columns: 45.4545454545% 1fr; grid-template-rows: 1fr auto; }
@media screen and (max-width: 980px) { .footer .footer-wrap { display: block; } }
.footer .footer-fig { position: absolute; top: 0; right: 0; width: 34.696969697%; margin-top: -21.9696969697%; margin-right: 8.3333333333%; }
@media screen and (max-width: 750px) { .footer .footer-fig { width: 51.884057971%; margin-top: -27.5362318841%; margin-right: 0; } }
.footer .footer-main { grid-column: 1 / 2; grid-row: 1 / 2; display: flex; flex-direction: column; justify-content: space-between; padding: 0 50px; }
@media screen and (max-width: 1280px) { .footer .footer-main { padding-left: 0; } }
@media screen and (max-width: 980px) { .footer .footer-main { margin: 0 auto 50px; padding: 0; } }
.footer .footer-main .footer-logo { width: 100%; max-width: 440px; }
@media screen and (max-width: 980px) { .footer .footer-main .footer-logo { margin: 0 auto; } }
.footer .footer-nav { grid-column: 2 / 3; grid-row: 1 / 3; padding-left: 50px; border-left: 1px solid #0f2f8e; }
@media screen and (max-width: 980px) { .footer .footer-nav { padding-top: 50px; padding-left: 0; border-left: none; border-top: 1px solid #0f2f8e; } }
.footer .footer-nav ul { display: flex; margin-bottom: 50px; }
@media screen and (max-width: 980px) { .footer .footer-nav ul { justify-content: flex-end; } }
@media screen and (max-width: 750px) { .footer .footer-nav ul { justify-content: center; } }
.footer .footer-nav ul li { margin-right: 1.5em; }
.footer .footer-nav ul li:last-child { margin-right: 0; }
.footer .footer-nav ul li a { display: flex; align-items: center; text-decoration: none; font-weight: 700; color: #0f2f8e; }
@media screen and (max-width: 1280px) { .footer .footer-nav ul li a { font-size: 1.6rem; } }
@media screen and (max-width: 750px) { .footer .footer-nav ul li a { font-size: 1.5rem; } }
.footer .footer-nav ul li a .ico { margin-right: 0.5em; }
.footer .footer-nav ul li a span { flex: 1; }
.footer .footer-nav dl { display: flex; align-items: center; }
.footer .footer-nav dl dt { position: relative; width: 130px; margin-right: 20px; background-color: #0f2f8e; border-radius: 50%; }
@media screen and (max-width: 750px) { .footer .footer-nav dl dt { width: 120px; } }
.footer .footer-nav dl dt::after { content: ''; display: block; padding-top: 100%; }
.footer .footer-nav dl dt p { position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; font-size: 1.5rem; text-align: center; font-weight: 700; color: #fff; }
.footer .footer-nav dl dd { flex: 1; }
.footer .footer-nav dl dd .footer-nav-ttl { margin-bottom: 15px; font-weight: 700; }
@media screen and (max-width: 750px) { .footer .footer-nav dl dd .footer-nav-ttl { font-size: 1.6rem; } }
.footer .footer-nav dl dd p a { display: block; text-decoration: none; max-width: 330px; padding: 10px 20px; background-color: #fff; font-weight: 700; text-align: center; color: #0f2f8e !important; border-radius: 2em; }
.footer .footer-nav dl dd p a._tel { margin-bottom: 10px; background-image: url("../img/ico_tel.svg"); background-repeat: no-repeat; background-position: left 30px center; background-size: 20px auto; }
@media screen and (max-width: 750px) { .footer .footer-nav dl dd p a._tel { background-position: left 20px center; } }
.footer .footer-nav dl dd p a._mail { background-image: url("../img/ico_mail.svg"); background-repeat: no-repeat; background-position: left 30px center; background-size: 20px auto; }
@media screen and (max-width: 750px) { .footer .footer-nav dl dd p a._mail { background-position: left 20px center; } }
.footer .footer-addr { grid-column: 1 / 2; grid-row: 2 / 3; padding: 0 50px; font-size: 1.6rem; }
@media screen and (max-width: 1280px) { .footer .footer-addr { padding-left: 0; } }
@media screen and (max-width: 980px) { .footer .footer-addr { margin-top: 50px; padding: 0; text-align: center; } }
.footer .footer-addr .ico { margin-left: 5px; }
.footer .footer-addr .copy { margin-top: 1rem; }

.font-en { font-family: "Barlow", sans-serif; }

.opacity { transition: all .6s; }
.opacity:hover { opacity: 0.7; }

.ico { display: inline-flex; justify-content: center; align-items: center; width: 1em; line-height: 0; }
.ico::before { width: 100% !important; }

.ico-guide::before { content: url("../img/ico_guide.svg"); }

.ico-data::before { content: url("../img/ico_data.svg"); }

.ico-faq::before { content: url("../img/ico_faq.svg"); }

.ico-arrow-nav::before { content: url("../img/ico_arrow_nav.svg"); }

.ico-faq-q::before { content: url("../img/ico_faq_q.svg"); }

.ico-faq-a::before { content: url("../img/ico_faq_a.svg"); }

.ico-data-j::before { content: url("../img/ico_data_j.svg"); }

.ico-data-w::before { content: url("../img/ico_data_w.svg"); }

.ico-link::before { content: url("../img/ico_link.svg"); }

.ico-pdf::before { content: url("../img/ico_pdf.svg"); }

.ico-external::before { content: url("../img/ico_external.svg"); }

.pager { display: flex; align-items: center; justify-content: center; }
.pager ol { display: flex; align-items: center; justify-content: center; margin: 0 10px; column-gap: 10px; }
.pager a { display: flex; align-items: center; justify-content: center; text-decoration: none; width: 38px; height: 38px; background-color: #DFE9F4; font-size: 1.4rem; text-align: center; line-height: 1; border-radius: 50%; transition: all .6s; }
.pager a:hover, .pager a.active { background-color: #0f2f8e; color: #fff; }

.news-list li { border-bottom: 1px solid #c2cdd5; }
.news-list li a, .news-list li div { display: flex; text-decoration: none; padding: 20px 50px 20px 0; font-size: 1.6rem; }
@media screen and (max-width: 750px) { .news-list li a, .news-list li div { display: block; } }
.news-list li a span, .news-list li div span { width: 9em; color: #0f2f8e; }
.news-list li a p, .news-list li div p { flex: 1; }
.news-list li a, .news-list li ._nolink { background: url("../img/ico_arrow_btn.svg") no-repeat right center; background-size: 42px auto; }

.clearfix { zoom: 1; }
.clearfix::before { content: ""; display: table; }
.clearfix::after { content: ""; display: table; clear: both; }

.w100 { width: 100%; }

.js-anime-fadein { opacity: 0; animation-duration: .5s; 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: .5s; 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: .5s; 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); } }
@media print { .js-anime-fadein, .js-anime-slide, .js-anime-slideleft, .js-anime-slideright { opacity: initial; } }

/*# sourceMappingURL=style.css.map */
