@charset "UTF-8";
.container { overflow: hidden; }

.home-ttl { position: relative; font-size: 3.0rem; text-align: center; font-weight: 700; }
@media screen and (max-width: 750px) { .home-ttl { font-size: 2.8rem; } }
.home-ttl::after { content: ''; position: absolute; bottom: 0; left: 50%; width: 113px; height: 4px; background-color: #0f2f8e; border-radius: 2em; margin-left: -56px; margin-bottom: -20px; }

.top-sec { position: relative; }
.top-sec .top-fig { position: absolute; top: 0; left: 50%; width: 851px; margin-top: -158px; margin-left: -27px; }
@media screen and (max-width: 1400px) { .top-sec .top-fig { width: 60.7857142857%; margin-left: -1.9285714286%; } }
@media screen and (max-width: 750px) { .top-sec .top-fig { left: 0; width: 100%; margin-top: -5.3333333333%; margin-left: 0; } }
.top-sec .top-main { padding: 60px 0; background-color: #e5ecfa; border-radius: 10px; }
@media screen and (max-width: 750px) { .top-sec .top-main { padding-top: 74.6666666667%; } }
.top-sec .about-sec { padding: 0 60px 370px; background: url("../img/top_h001.svg") no-repeat center bottom 230px; background-size: 96.9696969697%; }
@media screen and (max-width: 750px) { .top-sec .about-sec { padding: 0 30px 230px; background: url("../img/sp/top_h001.svg") no-repeat center bottom 100px; background-size: 92.0289855072% auto; } }
.top-sec .about-sec .about-en { width: 137px; margin-bottom: 20px; padding: 2px 5px; background-color: #0f2f8e; font-size: 1.6rem; text-align: center; color: #fff; font-weight: 700; border-radius: 2em; line-height: 1; }
.top-sec .about-sec .about-ttl { margin-bottom: 20px; font-size: 6.5rem; font-weight: 700; color: #0f2f8e; line-height: 1.2; }
@media screen and (max-width: 750px) { .top-sec .about-sec .about-ttl { font-size: 4.0rem; } }
.top-sec .about-sec .about-txt { font-size: 2.4rem; font-weight: 700; color: #0f2f8e; }
@media screen and (max-width: 750px) { .top-sec .about-sec .about-txt { font-size: 2.0rem; } }
.top-sec .top-con { display: flex; justify-content: space-between; padding: 0 60px; }
@media screen and (max-width: 980px) { .top-sec .top-con { display: block; } }
@media screen and (max-width: 750px) { .top-sec .top-con { padding: 0 30px; } }
.top-sec .news-sec { position: relative; width: 53.3333333333%; margin-right: 2.9166666667%; }
@media screen and (max-width: 980px) { .top-sec .news-sec { width: 100%; margin: 0 auto 40px; } }
.top-sec .news-sec .news-fig { position: absolute; top: 0; left: 50%; width: 40%; margin-top: -30%; margin-left: -20%; }
@media screen and (max-width: 980px) { .top-sec .news-sec .news-fig { position: static; margin: 0 auto; } }
.top-sec .news-sec .news-main { height: 100%; padding: 40px; background-color: #fff; border-radius: 1em; box-shadow: 4px 4px 16px -6px rgba(0, 0, 0, 0.3); }
.top-sec .news-sec .news-ttl { margin-bottom: 20px; }
.top-sec .news-sec .news-ttl span { padding-bottom: 10px; border-bottom: 4px solid #0f2f8e; font-size: 2.5rem; font-weight: 700; color: #0f2f8e; }
.top-sec .news-sec .news-list { margin-bottom: 30px; }
.top-sec .news-sec .news-btn { width: 100%; max-width: 322px; margin: 0 auto; }
.top-sec .news-sec .news-btn a { display: block; text-decoration: none; padding: 20px 15px 20px 25px; background: #0f2f8e url("../img/ico_arrow_btn_w.svg") no-repeat right 10px center; background-size: 40px auto; font-size: 1.6rem; color: #fff; border-radius: 2em; }
@media screen and (max-width: 750px) { .top-sec .news-sec .news-btn a { font-size: 1.4rem; } }
.top-sec .report-sec { flex: 1; position: relative; }
.top-sec .report-sec .report-fig { position: absolute; top: 0; left: 50%; width: 55.2380952381%; margin-top: -32.7619047619%; margin-left: -27.619047619%; }
@media screen and (max-width: 980px) { .top-sec .report-sec .report-fig { position: static; margin: 0 auto; } }
.top-sec .report-sec .report-main { height: 100%; padding: 60px 50px 60px 40px; background-color: #fff; border-radius: 1em; box-shadow: 4px 4px 16px -6px rgba(0, 0, 0, 0.3); }
.top-sec .report-sec .report-main .report-box { display: flex; align-items: center; margin-bottom: 35px; }
.top-sec .report-sec .report-main .report-box figure { width: 24.367816092%; margin-right: 6.8965517241%; }
.top-sec .report-sec .report-main .report-box dl { flex: 1; }
.top-sec .report-sec .report-main .report-box dl dt { margin-bottom: 10px; font-size: 1.5rem; }
.top-sec .report-sec .report-main .report-box dl dd { font-size: 2.3rem; font-weight: 700; color: #0f2f8e; }
.top-sec .report-sec .report-main .report-txt { margin-bottom: 25px; font-size: 1.6rem; }
.top-sec .report-sec .report-main .report-pdf { margin-bottom: 45px; }
.top-sec .report-sec .report-main .report-pdf a { display: flex; align-items: center; text-decoration: none; padding: 15px 30px; background-color: #4470e8; color: #fff; border-radius: 0.5em; }
.top-sec .report-sec .report-main .report-pdf a .ico { width: 2em; margin-right: 1em; }
.top-sec .report-sec .report-main .report-pdf a dl { flex: 1; font-size: 1.4rem; }
.top-sec .report-sec .report-main .report-pdf a dl dd span { border-bottom: 1px solid #fff; }
.top-sec .report-sec .report-main .report-num a { display: flex; align-items: center; justify-content: center; color: #0071db; }
.top-sec .report-sec .report-main .report-num a .ico { width: 2em; margin-left: 0.5em; }
.top-sec .report-sec .report-main .report-num a span { font-size: 1.6rem; }

.guide-sec { padding-top: 90px; }
.guide-sec .guide-main { position: relative; width: 100%; max-width: 1100px; margin: 0 auto; }
.guide-sec .guide-fig { position: absolute; top: 0; right: 0; width: 13.7121212121%; margin-top: -9.8484848485%; margin-right: 5.6818181818%; }
@media screen and (max-width: 750px) { .guide-sec .guide-fig { width: 26.231884058%; margin-top: -18.8405797101%; margin-right: 10.8695652174%; } }
.guide-sec .guide-ttl { display: flex; align-items: center; margin-bottom: 75px; }
.guide-sec .guide-ttl .ico { width: 3.5em; margin-right: 1.5em; }
@media screen and (max-width: 750px) { .guide-sec .guide-ttl .ico { width: 1.8em; margin-right: 0.8em; } }
.guide-sec .guide-ttl span { border-bottom: 4px solid #0f2f8e; font-size: 3.9rem; color: #0f2f8e; font-weight: 700; }
@media screen and (max-width: 750px) { .guide-sec .guide-ttl span { font-size: 2.8rem; } }
.guide-sec .guide-con { display: flex; column-gap: 2.7272727273%; }
@media screen and (max-width: 750px) { .guide-sec .guide-con { flex-direction: column; row-gap: 40px; } }
.guide-sec .guide-box { flex: 1; position: relative; padding: 80px 15px 40px; background-color: #fff; border-radius: 10px; box-shadow: 4px 4px 16px -6px rgba(0, 0, 0, 0.3); }
@media screen and (max-width: 750px) { .guide-sec .guide-box { width: 100%; } }
.guide-sec .guide-box .guide-num { position: absolute; top: 0; left: 50%; display: flex; align-items: center; justify-content: center; width: 124px; height: 60px; margin-left: -62px; background-color: #0f2f8e; font-size: 2.0rem; font-weight: 700; color: #fff; text-align: center; border-bottom-left-radius: 60px; border-bottom-right-radius: 60px; line-height: 1; }
.guide-sec .guide-box .guide-heading { margin-bottom: 30px; font-size: 2.5rem; font-weight: 700; text-align: center; color: #0f2f8e; }
.guide-sec .guide-box .guide-boxfig { margin-bottom: 30px; text-align: center; }
.guide-sec .guide-box .guide-txt { font-size: 1.7rem; }
.guide-sec .guide-box .guide-txt._txt { margin-top: 20px; padding-top: 20px; border-top: 1px solid #c2cdd5; }
.guide-sec .guide-box .guide-txt._txt a { color: #0071db; }

.image-sec { z-index: 99; position: relative; margin-top: -55px; }
@media screen and (max-width: 750px) { .image-sec { margin-top: 50px; } }
.image-sec .image-fig { z-index: 99; position: relative; }
.image-sec .image-fig figure { width: 17.1212121212%; margin-left: 12.8787878788%; }
@media screen and (max-width: 750px) { .image-sec .image-fig figure { width: 32.7536231884%; margin-left: 4.347826087%; } }
.image-sec .swiper-wrapper { transition-timing-function: linear; }
.image-sec .image-swiper { overflow: hidden; margin-top: -20px; padding: 0 20px; }

.data-sec { position: relative; margin-top: -160px; padding: 280px 0 110px; background: #e5ecfa url("../img/data_bg001.png") no-repeat left top 200px; background-size: 100% auto; }
@media screen and (max-width: 980px) { .data-sec { margin-top: -80px; } }
@media screen and (max-width: 750px) { .data-sec { margin-top: -40px; padding: 100px 0; } }
.data-sec .data-main { width: 100%; max-width: 1150px; margin: 0 auto; }
.data-sec .data-ttl { display: flex; align-items: center; margin-bottom: 75px; }
.data-sec .data-ttl .ico { width: 3.5em; margin-right: 1.5em; }
@media screen and (max-width: 750px) { .data-sec .data-ttl .ico { width: 1.8em; margin-right: 0.8em; } }
.data-sec .data-ttl span { border-bottom: 4px solid #0f2f8e; font-size: 3.9rem; color: #0f2f8e; font-weight: 700; }
@media screen and (max-width: 750px) { .data-sec .data-ttl span { font-size: 2.8rem; } }
.data-sec .data-con { display: flex; align-items: flex-start; justify-content: space-between; }
@media screen and (max-width: 750px) { .data-sec .data-con { display: block; } }
.data-sec .data-side { width: 300px; margin-right: 50px; border: 1px solid #0f2f8e; background-color: #fff; border-radius: 10px; overflow: hidden; }
@media screen and (max-width: 980px) { .data-sec .data-side { width: 200px; } }
@media screen and (max-width: 750px) { .data-sec .data-side { width: 100%; margin: 0 auto 40px; } }
.data-sec .data-side .data-side-btn { padding: 15px; }
.data-sec .data-side .data-side-btn span { display: block; width: 100%; max-width: 250px; margin: 0 auto; padding: 15px 10px; background: #0f2f8e; color: #fff; text-align: center; border-radius: 2em; }
.data-sec .data-side .data-side-main { overflow-y: auto; max-height: 650px; }
@media screen and (max-width: 750px) { .data-sec .data-side .data-side-main { max-height: 40vh; } }
.data-sec .data-side .data-side-main::-webkit-scrollbar { width: 5px; }
@media screen and (max-width: 750px) { .data-sec .data-side .data-side-main::-webkit-scrollbar { display: none; } }
.data-sec .data-side .data-side-main::-webkit-scrollbar-track { background-color: #fff; }
.data-sec .data-side .data-side-main::-webkit-scrollbar-thumb { background-color: #0f2f8e; }
.data-sec .data-side dl { border-top: 1px solid #c2cdd5; border-bottom: 1px solid #c2cdd5; }
.data-sec .data-side dl dt { padding: 15px 30px 15px 20px; background: #eff6ff url("../img/ico_arrow_nav_t.svg") no-repeat right 20px center; background-size: 9px auto; font-weight: 700; cursor: pointer; }
.data-sec .data-side dl dt.active { background-image: url("../img/ico_arrow_nav.svg"); }
.data-sec .data-side dl dd { padding: 0 20px; }
.data-sec .data-side dl dd .data-side-area { border-bottom: 1px solid #000; }
.data-sec .data-side dl dd .data-side-area:last-child { border-bottom: none; }
.data-sec .data-side dl dd p { display: flex; align-items: center; padding: 15px 0; border-bottom: 1px solid #c2cdd5; }
.data-sec .data-side dl dd p .ico { margin-right: 0.5em; }
.data-sec .data-side dl dd p .ico.ico-data-j { width: 1.3em; }
.data-sec .data-side dl dd p .ico.ico-data-w { margin-left: 0.2em; margin-right: 0.6em; }
.data-sec .data-side dl dd p span { flex: 1; font-weight: 700; }
.data-sec .data-side dl dd ul li { padding: 10px 0; border-bottom: 1px solid #c2cdd5; }
.data-sec .data-side dl dd ul li:last-child { border-bottom: none; }
.data-sec .data-side dl dd ul li a, .data-sec .data-side dl dd ul li span { display: block; text-decoration: none; padding: 10px 20px; background: url("../img/ico_arrow.svg") no-repeat left 10px top 1.2em; background-size: 5px auto; font-size: 1.6rem; cursor: pointer; }
.data-sec .data-side dl dd ul li:hover a, .data-sec .data-side dl dd ul li:hover span, .data-sec .data-side dl dd ul li.active a, .data-sec .data-side dl dd ul li.active span { background-color: #3d80c6; background-image: url("../img/ico_arrow_w02.svg"); color: #fff; }
.data-sec .data-search { flex: 1; }
.data-sec .data-search .search-ttl { margin-bottom: 20px; padding: 20px 70px; background: #3d80c6 url("../img/ico_arrow_w.svg") no-repeat left 30px center; background-size: 19px auto; font-size: 2.3rem; color: #fff; border-radius: 2em; }
@media screen and (max-width: 750px) { .data-sec .data-search .search-ttl { padding-right: 20px; font-size: 1.8rem; border-radius: 4em; } }
.data-sec .data-search .data-search-box iframe { width: 100%; }
.data-sec .data-search-main { padding: 30px; background-color: #fff; border: 1px solid #c2cdd5; border-radius: 10px; box-shadow: 4px 4px 16px -6px rgba(0, 0, 0, 0.3); }
.data-sec .data-search-main .data-search-txt { margin-top: 30px; font-size: 1.6rem; }

.contents-sec { padding: 90px 0 230px; background-color: #fff; background-image: url("../img/faq_bg001.png"), url("../img/links_bg001.png"); background-position: right top, left bottom; background-repeat: no-repeat; background-size: 18.5%, 35.5714285714%; }

.faq-sec { margin-bottom: 110px; }
.faq-sec .home-icon { width: 44px; margin: 0 auto 20px; }
.faq-sec .home-ttl { margin-bottom: 70px; }
.faq-sec .faq-main { position: relative; width: 100%; max-width: 860px; margin: 0 auto; }
.faq-sec .faq-main .faq-fig { position: absolute; top: 0; right: 0; width: 27.4418604651%; margin-top: -21.0465116279%; }
.faq-sec .faq-main .faq-box { margin-bottom: 15px; padding: 0 30px; background-color: #e5ecfa; border-radius: 10px; }
.faq-sec .faq-main .faq-box:last-child { margin-bottom: 0; }
.faq-sec .faq-main .faq-box .ico { margin-right: 1em; margin-top: 0.4em; }
.faq-sec .faq-main .faq-box .faq-box-con { flex: 1; }
.faq-sec .faq-main .faq-q { display: flex; align-items: flex-start; padding: 30px 0; background: url("../img/ico_arrow_b.svg") no-repeat right center; background-size: 12px auto; cursor: pointer; }
.faq-sec .faq-main .faq-a { display: none; padding: 30px 0; border-top: 1px solid #fff; }
.faq-sec .faq-main .faq-a .faq-a-con { display: flex; align-items: flex-start; }
.faq-sec .more-btn { position: relative; width: 100%; max-width: 246px; margin: 45px auto 0; padding: 15px 40px; background: #0f2f8e url("../img/ico_arrow_btn_w_b.svg") no-repeat right 10px center; background-size: 40px auto; font-size: 1.6rem; font-weight: 700; color: #fff; border-radius: 2em; cursor: pointer; outline: none; }
.faq-sec .more-btn::after { content: '質問をもっと見る'; }

.link-sec .link-main { position: relative; padding: 60px 45px 90px; background: linear-gradient(to right, #c1fff8, #bec8ff); border-radius: 2em; }
@media screen and (max-width: 750px) { .link-sec .link-main { padding: 40px 4.347826087%; } }
.link-sec .link-fig { position: absolute; top: 0; left: 0; width: 20.325203252%; margin-top: -7.3170731707%; margin-left: 8.1300813008%; }
@media screen and (max-width: 750px) { .link-sec .link-fig { width: 28.9855072464%; margin-top: -13.0434782609%; margin-left: 7.2463768116%; } }
.link-sec .home-icon { width: 36px; margin: 0 auto 30px; }
.link-sec .home-ttl { margin-bottom: 85px; }
.link-sec .link-wrap { position: relative; padding: 0 20px; }
.link-sec .link-swiper { overflow: hidden; }
.link-sec .slide-btn { z-index: 9; position: absolute; top: 50%; width: 36px; margin-top: -18px; }
.link-sec .slide-btn._prev { left: 0; }
.link-sec .slide-btn._next { right: 0; }

/*# sourceMappingURL=home.css.map */
