.header { position: fixed; }
.header .header-in { background: rgba(255, 255, 255, 0.6); border-bottom: none; }

.container { position: relative; z-index: 1; background-color: #fff; }

.mainimg-bg { position: fixed; top: 0; left: 0; width: 100%; height: 100lvh; }
.mainimg-bg img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }

.mainimg-sec { z-index: 99; position: relative; height: 100lvh; }
.mainimg-sec .mainimg-ttl { position: absolute; bottom: 0; left: 0; width: 77.2857142857%; margin-bottom: 3.9285714286%; margin-left: 4.2857142857%; }
@media screen and (max-width: 750px) { .mainimg-sec .mainimg-ttl { width: 86.6666666667%; margin-bottom: 37.3333333333%; margin-left: 6%; } }
.mainimg-sec .mainimg-banner { position: absolute; bottom: 0; right: 0; width: 13.7857142857%; margin-bottom: 3.2142857143%; margin-right: 3.9285714286%; }
@media screen and (max-width: 750px) { .mainimg-sec .mainimg-banner { right: 50%; width: 41.8666666667%; margin-bottom: -20.9333333333%; margin-right: -20.9333333333%; } }
.mainimg-sec .mainimg-banner a { position: relative; display: block; width: 100%; aspect-ratio: 1 / 1; padding: 5.1813471503%; }
.mainimg-sec .mainimg-banner .mainimg-banner-txt { position: absolute; top: 0; left: 0; width: 100%; }
.mainimg-sec .mainimg-banner .mainimg-banner-h { position: relative; z-index: 9; animation-duration: 9s; animation-timing-function: linear; animation-iteration-count: infinite; animation-name: rotation; }

.top-bg { background-color: #EFF9FF; }

.about-sec .about-main { position: relative; padding-top: 100px; padding-bottom: 45px; overflow: hidden; }
@media screen and (max-width: 750px) { .about-sec .about-main { padding-top: 30%; padding-bottom: 38.6666666667%; } }
@media screen and (max-width: 750px) { .about-sec .about-main .inner { padding: 0; } }
.about-sec .about-main .about-ttl { z-index: 9; position: relative; margin-bottom: 40px; font-size: 7.0rem; font-weight: 700; }
@media screen and (max-width: 750px) { .about-sec .about-main .about-ttl { padding: 0 4%; font-size: 3.9rem; } }
.about-sec .about-main .about-fig { position: absolute; top: 0; right: 0; width: 102.7142857143%; margin-top: 5%; margin-right: -45.7142857143%; }
@media screen and (max-width: 750px) { .about-sec .about-main .about-fig { position: static; width: 100%; margin: 0 auto; } }
.about-sec .about-main .about-txt { font-size: 2.1rem; line-height: 2; }
@media screen and (max-width: 750px) { .about-sec .about-main .about-txt { padding: 0 4%; font-size: 2rem; } }

.image-sec { position: relative; }
.image-sec::before { content: ''; position: absolute; top: 0; left: 0; width: 29.7142857143%; aspect-ratio: 416 / 192; margin-top: -4.3571428571%; margin-left: -19.2857142857%; background: url("../img/home/image_i001.png") no-repeat center center; background-size: contain; }
@media screen and (max-width: 750px) { .image-sec::before { width: 55.4666666667%; margin-top: -18.9333333333%; margin-left: -16.6666666667%; } }
.image-sec::after { content: ''; position: absolute; bottom: 0; right: 0; width: 16.0714285714%; aspect-ratio: 225 / 311; margin: 0 0 -18.0714285714% 0; background: url("../img/home/image_i002.svg") no-repeat center center; background-size: contain; }
@media screen and (max-width: 750px) { .image-sec::after { width: 22.5333333333%; margin-bottom: -41.4666666667%; } }
@media screen and (max-width: 750px) { .image-sec { background: linear-gradient(to right, #FFA5FF, #71F1FF); } }
.image-sec .image-bg { width: 100%; aspect-ratio: 1400 / 995; background: url("../img/home/about_bg.svg") no-repeat center center; background-size: 100% auto; }
@media screen and (max-width: 750px) { .image-sec .image-bg { aspect-ratio: 750 / 1097; background-position: left center; background-size: 194.2666666667% auto; } }
.image-sec .image-wrap { padding-top: 8.7142857143%; overflow: hidden; }
.image-sec .image-wrap .image-fig { position: relative; width: 175%; aspect-ratio: 4899 / 2164; margin-left: -2.2857142857%; }
@media screen and (max-width: 750px) { .image-sec .image-wrap .image-fig { width: 349.8666666667%; margin-left: -3.8571428571%; } }
.image-sec .image-wrap .image-fig ._fig { position: absolute; top: 0; left: 0; }
.image-sec .image-wrap .image-fig ._fig1 { width: 12.2040816327%; margin: 2.1632653061% 0 0 0%; animation-delay: 0.2s; z-index: 1; }
@media screen and (max-width: 750px) { .image-sec .image-wrap .image-fig ._fig1 { width: 9.7959183673%; } }
.image-sec .image-wrap .image-fig ._fig2 { width: 9.8367346939%; margin: 26.3673469388% 0 0 6.9387755102%; animation-delay: 0.4s; }
@media screen and (max-width: 750px) { .image-sec .image-wrap .image-fig ._fig2 { width: 5.8775510204%; margin-left: 4.0816326531%; } }
.image-sec .image-wrap .image-fig ._fig3 { width: 16%; margin: 2.2448979592% 0 0 15.9183673469%; animation-delay: 0.6s; }
@media screen and (max-width: 750px) { .image-sec .image-wrap .image-fig ._fig3 { width: 9.5918367347%; margin: 4.2857142857% 0 0 12.2448979592%; } }
.image-sec .image-wrap .image-fig ._fig4 { width: 4.0408163265%; margin: 26.5714285714% 0 0 22.9795918367%; animation-delay: 0.8s; }
@media screen and (max-width: 750px) { .image-sec .image-wrap .image-fig ._fig4 { width: 3.2653061224%; margin: 30.6530612245% 0 0 14.693877551%; } }
.image-sec .image-wrap .image-fig ._fig5 { width: 13.8367346939%; margin: 18.5714285714% 0 0 26.2040816327%; animation-delay: 1s; z-index: 1; }
@media screen and (max-width: 750px) { .image-sec .image-wrap .image-fig ._fig5 { width: 11.0612244898%; margin-left: 17.1428571429%; } }
.image-sec .image-wrap .image-fig ._fig6 { width: 6.1632653061%; margin: 2.6530612245% 0 0 37.4285714286%; animation-delay: 1.2s; }
@media screen and (max-width: 750px) { .image-sec .image-wrap .image-fig ._fig6 { width: 4.8979591837%; margin-left: 22.8571428571%; } }
.image-sec .image-wrap .image-fig ._fig7 { width: 9.5102040816%; margin: 9.3469387755% 0 0 46.1632653061%; animation-delay: 1.4s; z-index: 1; }
.image-sec .image-wrap .image-fig ._fig8 { width: 7.7551020408%; margin: 24.2857142857% 0 0 48.3265306122%; animation-delay: 1.6s; }
@media screen and (max-width: 750px) { .image-sec .image-wrap .image-fig ._fig8 { width: 4.6530612245%; margin: 28.3673469388% 0 0 22.8571428571%; } }
.image-sec .image-wrap .image-fig ._fig9 { width: 9.5510204082%; margin: 15.2244897959% 0 0 63.6734693878%; }
.image-sec .image-wrap .image-fig ._fig10 { width: 5.5102040816%; margin: 24.3265306122% 0 0 72.2448979592%; }
.image-sec .image-wrap .image-fig ._fig11 { width: 15.8367346939%; margin: 0 0 0 84.1224489796%; }

.work-sec { margin-top: -1.7857142857%; }
.work-sec .work-top { position: relative; overflow: hidden; padding-bottom: 60px; }
@media screen and (max-width: 750px) { .work-sec .work-top { padding-top: 18.8405797101%; padding-bottom: 17.3913043478%; } }
.work-sec .work-top .work-ttl-en { width: 100%; max-width: 399px; margin-bottom: 20px; }
@media screen and (max-width: 750px) { .work-sec .work-top .work-ttl-en { width: 57.8260869565%; max-width: 100%; margin-bottom: 2.8985507246%; } }
.work-sec .work-top .work-ttl-copy { margin-bottom: 30px; font-size: 2.4rem; color: #005eaa; font-weight: 500; }
@media screen and (max-width: 750px) { .work-sec .work-top .work-ttl-copy { margin-bottom: 2.8985507246%; font-size: 1.4rem; } }
.work-sec .work-top .work-ttl { margin-bottom: 40px; font-size: 5.8rem; font-weight: 700; line-height: 1.8; }
@media screen and (max-width: 750px) { .work-sec .work-top .work-ttl { margin-bottom: 8.6956521739%; font-size: 2.7rem; line-height: 2; } }
.work-sec .work-top .work-ttl span { padding: 5px 0.5em; background: linear-gradient(to right, #9EDEFF, #BAF6F9); color: #005eaa; }
.work-sec .work-main { background-color: #fff; }
.work-sec .work-main ul { display: flex; border-top: 1px solid #3C8BFF; border-bottom: 1px solid #3C8BFF; }
@media screen and (max-width: 750px) { .work-sec .work-main ul { display: block; } }
.work-sec .work-main ul li { flex: 1; border-right: 1px solid #3C8BFF; }
@media screen and (max-width: 750px) { .work-sec .work-main ul li { border-right: none; border-bottom: 1px solid #3C8BFF; } }
.work-sec .work-main ul li a { position: relative; display: block; height: 100%; padding: 40px 20px; text-decoration: none; }
@media screen and (max-width: 750px) { .work-sec .work-main ul li a { padding: 10.6666666667% 2.6666666667%; } }
.work-sec .work-main ul li .work-main-cate { position: absolute; top: 0; left: 0; width: 7.5em; height: 1.4em; margin-top: -0.7em; margin-left: 60px; padding: 2px; background-color: #005eaa; font-size: 1.2rem; color: #fff; text-align: center; font-weight: 700; animation-delay: 0.2s; }
@media screen and (max-width: 750px) { .work-sec .work-main ul li .work-main-cate { left: 50%; margin-left: -3.75em; font-size: 1.4rem; } }
.work-sec .work-main ul li:nth-child(2)::before { animation-delay: 0.2s; }
.work-sec .work-main ul li:nth-child(2) .work-main-cate { animation-delay: 0.4s; }
.work-sec .work-main ul li:last-child { border-right: none; }
.work-sec .work-main ul li:last-child::before { animation-delay: 0.4s; }
.work-sec .work-main ul li:last-child .work-main-cate { animation-delay: 0.6s; }
@media screen and (max-width: 750px) { .work-sec .work-main ul li:last-child { border-bottom: none; } }
.work-sec .work-main ul li .work-main-ttl { margin-bottom: 30px; padding: 0 40px; font-size: 3.7rem; font-weight: 400; }
@media screen and (max-width: 750px) { .work-sec .work-main ul li .work-main-ttl { font-size: 3rem; text-align: center; } }
.work-sec .work-main ul li figure { margin-bottom: 25px; }
.work-sec .work-main ul li .work-main-txt { padding: 0 40px; line-height: 1.6; }
@media screen and (max-width: 750px) { .work-sec .work-main ul li .work-main-txt { padding: 0; font-size: 1.6rem; } }
.work-sec .work-btn { padding: 30px 0; background-color: #fff; }
@media screen and (max-width: 750px) { .work-sec .work-btn { padding: 9.3333333333% 0; } }
.work-sec .work-btn p { text-align: center; }

.genba-sec { position: relative; padding: 140px 0 50px; background-color: #EFF9FF; overflow: hidden; }
@media screen and (max-width: 750px) { .genba-sec { padding: 48.6666666667% 0 10.6666666667%; } }
.genba-sec .genba-top { position: relative; padding-bottom: 60px; background-color: #EFF9FF; }
@media screen and (max-width: 750px) { .genba-sec .genba-top { padding-bottom: 13.0434782609%; } }
.genba-sec .genba-top .genba-icon { position: absolute; top: 0; right: 0; width: 37.7142857143%; margin-top: 9.2857142857%; margin-right: -17.1428571429%; }
@media screen and (max-width: 750px) { .genba-sec .genba-top .genba-icon { width: 54%; margin-top: -37.3333333333%; margin-right: -5.3333333333%; } }
.genba-sec .genba-top .genba-ttl-en { position: relative; width: 100%; max-width: 960px; margin-bottom: 20px; }
@media screen and (max-width: 750px) { .genba-sec .genba-top .genba-ttl-en { width: 75.7971014493%; max-width: 100%; margin-bottom: 2.8985507246%; } }
.genba-sec .genba-top .genba-ttl-copy { margin-bottom: 30px; font-size: 2.4rem; color: #005eaa; font-weight: 500; }
@media screen and (max-width: 750px) { .genba-sec .genba-top .genba-ttl-copy { margin-bottom: 2.8985507246%; font-size: 1.4rem; } }
.genba-sec .genba-top .genba-ttl { position: relative; font-size: 5.8rem; font-weight: 700; line-height: 1.8; }
@media screen and (max-width: 750px) { .genba-sec .genba-top .genba-ttl { font-size: 2.7rem; line-height: 2; } }
.genba-sec .genba-top .genba-ttl span { padding: 5px 0.5em; background: linear-gradient(to right, #DDCFFF, #FFDCE4); color: #005eaa; }
@media screen and (max-width: 750px) { .genba-sec .genba-main { margin-bottom: 13.768115942%; } }
.genba-sec .genba-main .genba-wrap { position: relative; margin-bottom: 40px; overflow: hidden; }
.genba-sec .genba-main .swiper-wrapper { height: 700px; }
@media screen and (max-width: 980px) { .genba-sec .genba-main .swiper-wrapper { height: 650px; } }
.genba-sec .genba-main .swiper-pagination-bullets { top: 0; right: 0; margin-top: 80px; margin-right: 180px; width: 18px; }
@media screen and (max-width: 980px) { .genba-sec .genba-main .swiper-pagination-bullets { margin-right: 100px; } }
.genba-sec .genba-main .swiper-pagination-bullet { width: 18px !important; height: 18px !important; margin: 7px 0 !important; background: #fff; border: 1px solid #3C8BFF; opacity: 1; }
.genba-sec .genba-main .swiper-pagination-bullet-active { background: #3C8BFF; }
.genba-sec .genba-main .genba-list li:nth-child(2) { margin-top: 80px; }
@media screen and (max-width: 750px) { .genba-sec .genba-main .genba-list li:nth-child(2) { margin-top: 0; } }
.genba-sec .genba-main .genba-list li:nth-child(3) { margin-top: 160px; }
@media screen and (max-width: 750px) { .genba-sec .genba-main .genba-list li:nth-child(3) { margin-top: 0; } }
.genba-sec .genba-main .genba-list li:nth-child(4) { display: none; }
@media screen and (max-width: 750px) { .genba-sec .genba-main .genba-list li:nth-child(4) { display: block; } }
.genba-sec .genba-btn { position: relative; z-index: 999; text-align: center; }
.genba-sec .genbatxt-swiper { margin-top: -1.7857142857%; overflow: hidden; }
@media screen and (max-width: 750px) { .genba-sec .genbatxt-swiper { margin-top: 7.7333333333%; } }
.genba-sec .genbatxt-swiper .swiper-wrapper { transition-timing-function: linear; }
.genba-sec .genbatxt-swiper .swiper-slide { width: 271.4rem; }
@media screen and (max-width: 750px) { .genba-sec .genbatxt-swiper .swiper-slide { width: 130rem; } }
.genba-sec .genbatxt-swiper .swiper-slide img { width: 100%; max-width: initial; }

.story-sec { position: relative; padding: 145px 0 167px; background: linear-gradient(to right, #2080FC, #00B9FF); overflow: hidden; }
@media screen and (max-width: 750px) { .story-sec { padding: 17.3333333333% 0 28.5333333333%; } }
.story-sec .story-in { width: 100%; max-width: 1180px; margin: 0 auto; }
.story-sec .story-top { position: relative; margin-bottom: 45px; }
.story-sec .story-top .story-ttl-en { position: absolute; bottom: 0; left: 0; width: 44.7457627119%; }
@media screen and (max-width: 750px) { .story-sec .story-top .story-ttl-en { width: 76.5217391304%; } }
.story-sec .story-main { position: relative; display: grid; grid-template-columns: 1fr 28.813559322%; grid-template-rows: auto 1fr; }
@media screen and (max-width: 750px) { .story-sec .story-main { display: block; } }
.story-sec .story-main dl { grid-column: 1 / 2; grid-row: 1 / 2; margin-bottom: 20px; color: #fff; }
@media screen and (max-width: 750px) { .story-sec .story-main dl { margin-bottom: 5.7971014493%; } }
.story-sec .story-main dl dt { margin-bottom: 30px; font-size: 3.2rem; font-weight: 700; }
@media screen and (max-width: 750px) { .story-sec .story-main dl dt { margin-bottom: 5.7971014493%; font-size: 3rem; } }
.story-sec .story-main dl dd { font-size: 1.8rem; }
@media screen and (max-width: 750px) { .story-sec .story-main dl dd { margin-bottom: 30px; font-size: 1.6rem; } }
.story-sec .story-main .story-fig { grid-column: 2 / 3; grid-row: 1 / 3; }
@media screen and (max-width: 750px) { .story-sec .story-main .story-fig { width: 49.2753623188%; margin: 0 auto 11.5942028986%; } }
.story-sec .story-main .story-btn { grid-column: 1 / 2; grid-row: 2 / 3; }
@media screen and (max-width: 750px) { .story-sec .story-main .story-btn { text-align: center; } }
.story-sec .storytxt-swiper { margin-top: 3.1428571429%; overflow: hidden; }
@media screen and (max-width: 750px) { .story-sec .storytxt-swiper { margin-top: 7.7333333333%; } }
.story-sec .storytxt-swiper .swiper-wrapper { transition-timing-function: linear; }
.story-sec .storytxt-swiper .swiper-slide { width: 268.3rem; }
@media screen and (max-width: 750px) { .story-sec .storytxt-swiper .swiper-slide { width: 130rem; } }
.story-sec .storytxt-swiper .swiper-slide img { width: 100%; max-width: initial; }

.network-sec { margin-top: -80px; padding: 105px 0 170px; background-color: #EFF1EF; border-top-left-radius: 4em; border-top-right-radius: 4em; }
@media screen and (max-width: 750px) { .network-sec { padding: 12% 0 20.6666666667%; border-top-left-radius: 2em; border-top-right-radius: 2em; } }
.network-sec .network-ttl-copy { margin-bottom: 30px; font-size: 2.4rem; color: #005eaa; font-weight: 500; text-align: center; }
@media screen and (max-width: 750px) { .network-sec .network-ttl-copy { margin-bottom: 7.2463768116%; font-size: 1.4rem; } }
.network-sec .network-ttl { margin-bottom: 40px; font-size: 3.2rem; font-weight: 700; text-align: center; }
@media screen and (max-width: 750px) { .network-sec .network-ttl { margin-bottom: 8.6956521739%; font-size: 1.8rem; } }
.network-sec .network-ttl-en { width: 100%; max-width: 963px; margin: 0 auto 50px; }
@media screen and (max-width: 750px) { .network-sec .network-ttl-en { width: 85.5072463768%; max-width: 100%; margin-bottom: 10.1449275362%; } }
.network-sec .network-area { position: relative; margin-bottom: 30px; padding: 50px 65px; background-color: #fff; border-radius: 4em; }
@media screen and (max-width: 750px) { .network-sec .network-area { margin-bottom: 10.1449275362%; padding: 11.5942028986% 10.1449275362% 14.4927536232%; border-radius: 2em; } }
.network-sec .network-area .network-area-ttl { width: 39.1666666667%; margin-bottom: 20px; font-size: 3.7rem; font-weight: 700; }
@media screen and (max-width: 750px) { .network-sec .network-area .network-area-ttl { width: 100%; margin-bottom: 7.2727272727%; font-size: 2.7rem; text-align: center; } }
.network-sec .network-area .network-area-fig { position: absolute; top: 0; right: 0; width: 31.8333333333%; margin-top: 2.5%; margin-right: 10.8333333333%; }
@media screen and (max-width: 750px) { .network-sec .network-area .network-area-fig { position: static; width: 74.9090909091%; margin: 0 auto 2.7272727273%; } }
.network-sec .network-area .network-area-txt { width: 39.1666666667%; margin-bottom: 20px; line-height: 2; }
@media screen and (max-width: 750px) { .network-sec .network-area .network-area-txt { width: 100%; margin-bottom: 7.2727272727%; font-size: 1.5rem; } }
.network-sec .network-area .network-area-btn { width: 39.1666666667%; }
@media screen and (max-width: 750px) { .network-sec .network-area .network-area-btn { width: 100%; } }
.network-sec .network-list { display: flex; column-gap: 2.8333333333%; }
@media screen and (max-width: 750px) { .network-sec .network-list { flex-direction: column; row-gap: 60px; width: 76.8115942029%; margin: 0 auto; } }
.network-sec .network-list li { width: 31.4166666667%; }
@media screen and (max-width: 750px) { .network-sec .network-list li { width: 100%; } }
.network-sec .network-list li a { display: block; text-decoration: none; }
.network-sec .network-list li dl { margin-top: 25px; }
@media screen and (max-width: 750px) { .network-sec .network-list li dl { margin-top: 7.5471698113%; } }
.network-sec .network-list li dl dt { margin-bottom: 10px; font-size: 2.3rem; font-weight: 700; color: #004DA9; }
@media screen and (max-width: 750px) { .network-sec .network-list li dl dt { margin-bottom: 3.7735849057%; font-size: 2rem; } }
@media screen and (max-width: 750px) { .network-sec .network-list li dl dd { font-size: 1.2rem; } }

/*# sourceMappingURL=home.css.map */
