.mainimg-sec { position: relative; }
.mainimg-sec .mainimg-in { position: absolute; top: 0; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); width: 100%; max-width: 1040px; padding: 0 20px; }
.mainimg-sec .mainimg-in .mainimg-lead { margin-top: 120px; font-size: 2.5rem; font-weight: 200; color: #fff; line-height: 1.6; }
@media screen and (max-width: 980px) { .mainimg-sec .mainimg-in .mainimg-lead { margin-top: 10%; line-height: 1.4; } }
@media screen and (max-width: 767px) { .mainimg-sec .mainimg-in .mainimg-lead { margin-top: 5%; font-size: 1.4285714286rem; } }
.mainimg-sec .mainimg-icon { position: absolute; bottom: 70px; right: 0; }
@media screen and (max-width: 1170px) { .mainimg-sec .mainimg-icon { width: 350px; } }
@media screen and (max-width: 980px) { .mainimg-sec .mainimg-icon { bottom: 40px; width: 250px; } }
@media screen and (max-width: 767px) { .mainimg-sec .mainimg-icon { bottom: 30px; width: 150px; } }
@media screen and (max-width: 480px) { .mainimg-sec .mainimg-icon { bottom: 20px; width: 120px; } }
.mainimg-sec .mainimg-arrow { position: absolute; bottom: 65px; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); }
@media screen and (max-width: 980px) { .mainimg-sec .mainimg-arrow { bottom: 20px; } }
@media screen and (max-width: 767px) { .mainimg-sec .mainimg-arrow { bottom: 10px; width: 25px; } }

.about-sec { padding: 70px 0 90px; background-color: #f5f5f5; }
@media screen and (max-width: 767px) { .about-sec { padding: 60px 0; } }
.about-sec .about-in { max-width: 900px; margin: 0 auto; }
.about-sec .about-icon { margin-bottom: 35px; text-align: center; }
.about-sec .about-heading { margin-bottom: 35px; font-size: 2rem; text-align: center; font-weight: 400; }
.about-sec .about-txt { margin-bottom: 50px; font-size: 1.1428571429rem; }
.about-sec .about-heading-s { margin-bottom: 25px; font-size: 1.4285714286rem; text-align: center; font-weight: 400; }
.about-sec .about-yt { position: relative; padding-top: 56.25%; }
.about-sec .about-yt iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.dift-sec { margin-bottom: 95px; }
@media screen and (max-width: 767px) { .dift-sec { margin-bottom: 60px; } }
.dift-sec .dift-in { max-width: 1140px; margin: 0 auto; padding: 0 20px; line-height: 1.6; }
@media screen and (max-width: 767px) { .dift-sec .dift-in { padding: 0 3.9113428944%; } }
.dift-sec .dift-box { padding: 60px 0; background-color: #000; }
.dift-sec .dift-box.dift-02, .dift-sec .dift-box.dift-04 { background-color: #323232; }
.dift-sec .dift-box .dift-flex { display: flex; justify-content: space-between; }
@media screen and (max-width: 767px) { .dift-sec .dift-box .dift-flex { display: block; } }
.dift-sec .dift-box .dift-flex .dift-fig { width: 20.3636363636%; }
@media screen and (max-width: 767px) { .dift-sec .dift-box .dift-flex .dift-fig { width: 100%; margin-bottom: 40px; text-align: center; } }
.dift-sec .dift-box .dift-flex .dift-con { width: 76.3636363636%; }
@media screen and (max-width: 767px) { .dift-sec .dift-box .dift-flex .dift-con { width: 100%; } }
.dift-sec .dift-box .dift-top { display: flex; justify-content: space-between; margin-bottom: 70px; }
@media screen and (max-width: 767px) { .dift-sec .dift-box .dift-top { display: block; margin-bottom: 40px; } }
.dift-sec .dift-box .dift-top .dift-login { width: 25%; }
@media screen and (max-width: 980px) { .dift-sec .dift-box .dift-top .dift-login { width: 35.7142857143%; } }
@media screen and (max-width: 767px) { .dift-sec .dift-box .dift-top .dift-login { width: 100%; max-width: 300px; margin: 40px auto 0; } }
.dift-sec .dift-box .dift-top .dift-login a { display: block; text-decoration: none; padding: 10px; background: #fff url("../img/common/arrow_b_i002_b.png") no-repeat right 10px center; color: #003c98; font-size: 1.1428571429rem; text-align: center; }
.dift-sec .dift-box .dift-heading { padding-right: 30px; padding-bottom: 20px; border-bottom: 1px solid #003c98; background: url("../img/common/arrow_r_i003.png") no-repeat right center; font-size: 2.2142857143rem; color: #fff; font-weight: 400; cursor: pointer; }
@media screen and (max-width: 767px) { .dift-sec .dift-box .dift-heading { font-size: 1.5714285714rem; } }
.dift-sec .dift-box .dift-heading.active { background: url("../img/common/arrow_r_i002.png") no-repeat right center; }
.dift-sec .dift-box .dift-item { display: none; padding-top: 35px; font-size: 1.1428571429rem; color: #fff; }
.dift-sec .dift-box .dift-item figure { margin-top: 50px; }
.dift-sec .dift-box .dift-item figure figcaption { margin-top: 15px; font-size: 1rem; }
.dift-sec .dift-box .dift-item .more-btn { width: 17.8571428571%; margin-top: 30px; }
@media screen and (max-width: 980px) { .dift-sec .dift-box .dift-item .more-btn { width: 35.7142857143%; } }
@media screen and (max-width: 767px) { .dift-sec .dift-box .dift-item .more-btn { width: 41.6666666667%; } }
.dift-sec .dift-box .dift-item .more-btn a { display: block; text-decoration: none; padding: 10px; background: #fff url("../img/common/arrow_b_i002_b.png") no-repeat right 10px center; color: #003c98; text-align: center; }
.dift-sec .dift-txt { display: flex; justify-content: center; margin-top: 40px; font-size: 1.1428571429rem; }
.dift-sec .dift-txt p { padding-left: 1em; text-indent: -1em; }

.contents-sec { padding: 80px 0 70px; background-color: #efefef; }
@media screen and (max-width: 767px) { .contents-sec { padding: 60px 0; } }
.contents-sec .contents-heading { position: relative; margin-bottom: 100px; font-size: 1.7142857143rem; font-weight: 500; text-align: center; }
@media screen and (max-width: 767px) { .contents-sec .contents-heading { font-size: 1.4285714286rem; } }
.contents-sec .contents-heading::before { content: ''; position: absolute; bottom: -50px; left: 50%; width: 196px; height: 1px; margin-left: -98px; background-color: #003c98; }
.contents-sec .contents-flex { display: flex; justify-content: space-between; margin-bottom: 60px; }
@media screen and (max-width: 767px) { .contents-sec .contents-flex { display: block; } }
.contents-sec .login-box, .contents-sec .mymenu-box { width: 47.6%; padding: 30px 35px 50px; background-color: #fff; }
@media screen and (max-width: 767px) { .contents-sec .login-box, .contents-sec .mymenu-box { width: 100%; } }
.contents-sec .login-box figure, .contents-sec .mymenu-box figure { text-align: center; line-height: 1; }
.contents-sec .login-box figure figcaption, .contents-sec .mymenu-box figure figcaption { margin-top: 10px; font-size: 1.6428571429rem; font-weight: 500; color: #003c98; }
@media screen and (max-width: 767px) { .contents-sec .login-box { margin-bottom: 40px; } }
.contents-sec .login-box figure { margin-bottom: 40px; }
.contents-sec .login-box dl { margin-bottom: 20px; }
.contents-sec .login-box dl dt { margin-bottom: 5px; font-size: 1.1428571429rem; }
.contents-sec .login-box dl dd input { width: 100%; padding: 5px; border: 1px solid #c8c8c8; }
.contents-sec .login-box .login-btn { width: 58.6206896552%; margin: 0 auto 15px; }
@media screen and (max-width: 767px) { .contents-sec .login-box .login-btn { width: 100%; } }
.contents-sec .login-box .login-btn input { width: 100%; padding: 10px; border: none; background: #003c98 url("../img/common/arrow_b_i001.png") no-repeat right 25px center; font-size: 1.6428571429rem; font-weight: 500; color: #fff; border-radius: 40px; cursor: pointer; }
@media screen and (max-width: 980px) { .contents-sec .login-box .login-btn input { background-position: right 15px center; } }
.contents-sec .login-box .login-link { text-align: center; }
.contents-sec .login-box .login-link a { color: #007bff; }
.contents-sec .mymenu-box figure { margin-bottom: 35px; }
.contents-sec .mymenu-box .mymenu-txt { margin-bottom: 50px; font-size: 1.1428571429rem; text-align: center; }
.contents-sec .mymenu-box .mymenu-btn a { display: block; text-decoration: none; padding: 40px 20px; background: #003c98 url("../img/common/arrow_b_i001.png") no-repeat right 25px center; font-size: 1.6428571429rem; font-weight: 500; color: #fff; text-align: center; }
@media screen and (max-width: 980px) { .contents-sec .mymenu-box .mymenu-btn a { background-position: right 15px center; } }
@media screen and (max-width: 767px) { .contents-sec .mymenu-box .mymenu-btn a { padding: 20px; } }
.contents-sec .contact-box { display: flex; align-items: center; }
@media screen and (max-width: 767px) { .contents-sec .contact-box { display: block; } }
.contents-sec .contact-box dt { width: 6em; font-size: 1.6428571429rem; }
@media screen and (max-width: 767px) { .contents-sec .contact-box dt { width: 100%; text-align: center; } }
.contents-sec .contact-box dd { flex: 1; padding-left: 30px; border-left: 1px solid #c8c8c8; font-weight: 300; }
@media screen and (max-width: 767px) { .contents-sec .contact-box dd { margin-top: 30px; padding-top: 30px; padding-left: 0; border-top: 1px solid #c8c8c8; border-left: none; } }
.contents-sec .contact-box dd a { text-decoration: none; }
.contents-sec .contact-box dd a:hover { text-decoration: underline; }

.news-sec { padding: 105px 0 125px; }
@media screen and (max-width: 767px) { .news-sec { padding: 60px 0; } }
.news-sec .news-in { display: flex; justify-content: space-between; }
@media screen and (max-width: 767px) { .news-sec .news-in { display: block; } }
.news-sec dl { width: 20%; line-height: 1; }
@media screen and (max-width: 767px) { .news-sec dl { width: 100%; margin-bottom: 50px; text-align: center; } }
.news-sec dl dt { margin-bottom: 15px; font-size: 3.6428571429rem; color: #003c98; }
.news-sec dl dd { font-size: 1.2857142857rem; }
.news-sec ul { width: 78%; }
@media screen and (max-width: 767px) { .news-sec ul { width: 100%; } }
.news-sec ul li { border-bottom: 1px solid #c8c8c8; }
@media screen and (max-width: 767px) { .news-sec ul li:first-child { border-top: 1px solid #c8c8c8; } }
.news-sec ul li:first-child a, .news-sec ul li:first-child div { padding-top: 0; }
@media screen and (max-width: 767px) { .news-sec ul li:first-child a, .news-sec ul li:first-child div { padding-top: 25px; } }
.news-sec ul li a, .news-sec ul li div { display: flex; text-decoration: none; padding: 25px 0; font-size: 1.0714285714rem; }
@media screen and (max-width: 767px) { .news-sec ul li a, .news-sec ul li div { display: block; } }
.news-sec ul li a span, .news-sec ul li div span { width: 10em; }
@media screen and (max-width: 767px) { .news-sec ul li a span, .news-sec ul li div span { width: 100%; margin-bottom: 10px; } }
.news-sec ul li a p, .news-sec ul li div p { flex: 1; }
.news-sec ul li a:hover p { text-decoration: underline; }

/*# sourceMappingURL=home.css.map */
