
@keyframes mainScroll {to{left: 100%;}}
.main .sec01{position:relative;}
.main .sec01 .visual_slide{height: 100vh;min-height: 800px;position:relative;}
.main .sec01 .visual_slide .textbox{position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index:10;display: flex;justify-content: center;flex-direction: column;align-items:flex-start;color: white;/*padding-left: calc(50% - 600px);*/text-align: center;pointer-events: none;}
.main .sec01 .visual_slide .textbox .holding{margin-bottom: 0px;font-size: 0;width: 100%;height: 80px;position:relative;}
.main .sec01 .visual_slide .textbox .holding .change{font-size: 60px;font-weight: 500;letter-spacing: 0;width: 100%;opacity:0;transition: 1000ms ease-in-out;transition-property: visibility, opacity, filter; position:absolute;top: 0;left: 0;visibility: hidden;filter: blur(50px);line-height: 1;}
.main .sec01 .visual_slide .textbox .holding .change.on{opacity:1;visibility: visible;filter: blur(0);}
.main .sec01 .visual_slide .textbox .slogan{font-size: 40px;letter-spacing: 0;width: 100%;font-weight: 500;}
.main .sec01 .visual_slide .textbox .slogan br{display: none;}
.main .sec01 .visual_slide .textbox span.color{color: #95c6ff;}
.main .sec01 .visual_slide .slide_item{overflow: hidden;}
.main .sec01 .visual_slide .slide_item .bg{position: absolute;top: 0;left: 0;width: 100%;height: 100%;background-size: cover;background-position: center; }
.main .sec01 .visual_slide .slide_item .bg:after{content: "";display: block;position: absolute;top: 0;left: 0;bottom: 0;right: 0;background: url(../images/main/noise.png) repeat;mix-blend-mode: multiply;z-index:1;opacity:0.4;}
.main .sec01 .visual_slide .slide_item img{width: 100%;height: 100%;object-fit: cover;object-position: center bottom;}
.main .sec01 .visual_slide .slide_item video{width: 100%;height: 100%;object-fit: cover;object-position: center;}
.main .sec01 .scrolling{position: absolute;bottom: 0;right: 100px;z-index:10;color: white;transform-origin: right bottom;transform: rotate(90deg);line-height: 1;display: flex;align-items: center;font-size: 14px;}
.main .sec01 .scrolling .gage{width: 80px;height: 2px;position:relative;background-color: rgba(255, 255, 255, 0.7);margin-left: 10px;overflow: hidden;}
.main .sec01 .scrolling .gage .gage_bar{position: absolute;top: 0;left: -50%;width: 50%;height: 100%;background-color: white;animation:mainScroll 1s infinite linear;}
.main .sec01 .swiper-pagination {bottom: 50px;left:50%;transform: translateX(-50%);}
.main .sec01 .swiper-pagination-bullet-active{background: #fff;width:30px;border-radius: 10px;}
.main .sec01 .swiper-pagination-bullet{background: #fff;margin: 0 5px;} 

.main .sec02 {position: relative;overflow: hidden;}
.main .sec02 .main-tit-box{position: absolute; top:15%; left:50%; transform:translateX(-50%);z-index: 99;width: 100%;padding: 0 20px;}
.main .sec02 .brand_slogan{font-size: 2.5rem;font-weight: 500;margin-bottom: 24px;line-height: 1;color: #000;text-align: center;}
.main .sec02 .brand_text{font-size: 1.3rem;line-height: 34px;margin-bottom: 50px;text-align: center;color: #444;}
.main .sec02 .main-business-list{display: flex; align-items: flex-end; height:100%;}
.main .sec02 .main-business-list .list-item{position: relative; width:25%; height:100%; display: flex; align-items: flex-end; transition:all 0.8s ease; }
.main .sec02 .main-business-list .list-item:before{position: absolute; content:''; width:1px; height:100%; right:0; background:#eee; transition:all 0.8s ease; }
.main .sec02 .main-business-list .list-item:last-child:before{display: none;}
.main .sec02 .main-business-list .list-item .inner{display: flex; flex-direction:column; align-items:center; justify-content: flex-end; text-align:center; padding:400px 0 0; box-sizing:border-box; width:100%;}
.main .sec02 .main-business-list .list-item .txt-box{margin-bottom:4rem; transition:all 0.8s ease; padding:0 15px; box-sizing:border-box;}
.main .sec02 .main-business-list .list-item .txt-box .tit{font-size:1.5rem; line-height:1.8; letter-spacing:-0.02em; color:#2f45a6; margin-bottom:15px; font-weight:600; }
.main .sec02 .main-business-list .list-item .txt-box .txt{font-size:1rem; line-height:1.75; letter-spacing:-0.02em; color:#666;}
.main .sec02 .main-business-list .list-item .img-box{position: relative; width:100%;}
.main .sec02 .main-business-list .list-item .img-box .img{position: relative; width:100%; height:26rem; margin:auto; overflow:hidden; transition:all 0.4s ease-in-out;}
/*.main .sec02 .main-business-list .list-item .img-box .img img{position: absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:100%; height:auto;}*/
.main .sec02 .main-business-list .list-item .img-box .img1{background: url(../images/main/business_01.png) center center; background-size: cover;}
.main .sec02 .main-business-list .list-item .img-box .img2{background: url(../images/main/business_02.png) center center; background-size: cover;}
.main .sec02 .main-business-list .list-item .img-box .img3{background: url(../images/main/business_03.png) center center; background-size: cover;}
.main .sec02 .main-business-list .list-item .img-box .img4{background: url(../images/main/business_04.png) center center; background-size: cover;}

.main .sec02 .main-business-list .list-item .img-box .icon{position: absolute; bottom:0; left:50%; transform:translate(-50%, 50%); width:80px; height:80px; border-radius:50%; background:#fff; display: flex;flex-direction: column; align-items:Center; justify-content:center; font-size:2.4rem; color:#000;}
.main .sec02 .main-business-list .list-item .img-box .icon span{display: block;font-size: 0.875rem;font-weight: 500;}
.main .sec02 .main-business-list .list-item .img-box:hover .icon{ bottom:50%;transition:all 0.8s ease;background: rgba(255, 255, 255, 0.7);}

.main .sec03{position:relative;background-color: #fff;}
.main .sec03 .main-tit-box{position: absolute; top:15%; left:50%; transform:translateX(-50%);z-index: 99;width: 100%;padding: 0 20px;}
.main .sec03 .brand_slogan{font-size: 2.5rem;font-weight: 500;margin-bottom: 24px;line-height: 1;color: #000;text-align: center;}
.main .sec03 .brand_text{font-size: 1.3rem;line-height: 34px;margin-bottom: 50px;text-align: center;color: #444;}
.main .sec03 .main-solution-list{display: flex; flex-wrap: wrap; gap: 2rem;width:96%; margin: 50px auto;padding: 280px 0 150px;}
.main .sec03 .main-solution-list li{width: calc(25% - 2rem); background:#f9f9f9; padding:2rem; box-sizing:border-box; border-radius:30px; transition:all 0.4s ease;overflow: hidden;position: relative;}
.main .sec03 .main-solution-list li .inner{display: flex; flex-direction:column; align-items:center; justify-content: flex-end; text-align:left; padding:200px 0 0;height: 100%;  box-sizing:border-box; width:100%;position: relative;}
.main .sec03 .main-solution-list li .txt-box{ transition:all 0.8s ease; padding:0 15px; box-sizing:border-box;width:100%;position: relative;}
.main .sec03 .main-solution-list li .txt-box .tit{font-size:1.25rem; line-height:1.8; letter-spacing:-0.02em; color:#fff;font-weight:500; text-shadow:0px 0px 2px rgba(0, 0, 0, 0.4); }
.main .sec03 .main-solution-list li .txt-box .txt{font-size:1rem;font-weight: 500;color: #f5f5f5; line-height:1; letter-spacing:-0.02em; text-shadow:0px 0px 2px rgba(0, 0, 0, 0.4);}
.main .sec03 .main-solution-list li.bg1{background: linear-gradient(135deg, #0098f9, #00cfdf) }
.main .sec03 .main-solution-list li.bg2{background: linear-gradient(0deg, #14106d, #0e0c30)}
.main .sec03 .main-solution-list li.bg3{background: linear-gradient(90deg, #32ae8b, #41db84)}
.main .sec03 .main-solution-list li .img-box .img{position: absolute; width:100%; height:200px; top: 0;left:0; margin:0 auto; overflow:hidden; transition:all 0.4s ease-in-out;}
.main .sec03 .main-solution-list li .img-box .img1{background: url(../images/main/mes_logo.svg) center center no-repeat; background-size: 140px;}
.main .sec03 .main-solution-list li .img-box .img2{background: url(../images/main/rag_logo.svg) center center no-repeat; background-size: 200px;}
.main .sec03 .main-solution-list li .img-box .img3{background: url(../images/main/urban_logo.svg) center center no-repeat; background-size: 150px;}
.main .sec03 .main-solution-list li .img-box .img4{background: url(../images/main/gmp_logo.svg) center center no-repeat; background-size: 140px;}
.main .sec03 .main-solution-list li .icon{position: absolute; bottom:0px; right:0px;width:80px; height:40px; border-radius:40px; background:#fff; display: flex; align-items:Center; justify-content:center;  color:#000;}



/* ====================== TABLET ======================*/
@media all and (max-width:1199px) {
   
   .main .sec02 .main-tit-box{top:7rem;}
	.main .sec02 .main-business-list{flex-wrap:wrap;}
	.main .sec02 .main-business-list .list-item{width:50%;}
	.main .sec02 .main-business-list .list-item:nth-child(-n+2){padding-top:20rem;}
   .main .sec02 .main-business-list .list-item:nth-child(2){padding-top:20rem;}
	.main .sec02 .main-business-list .list-item .inner{padding:0 0 9rem;}
	.main .sec02 .main-business-list .list-item .txt-box{margin-bottom:2rem;}
   .main .sec02 .main-business-list .list-item .txt-box .txt{font-size:0.875rem; }

   .main .sec03 .main-tit-box{top:2rem}
   .main .sec03 .main-solution-list li{width: calc(50% - 2rem);}
}


 /* ====================== MOBILE ======================*/
 @media all and (max-width:720px) {
    .main .sec01 .visual_slide .textbox .holding .change{font-size: 40px;letter-spacing: -0.5px;}
    .main .sec01 .visual_slide .textbox .slogan{font-size: 30px;}

   .main .sec02 .main-tit-box{top:3rem;}
   .main .sec02 .main-business-list .list-item{width:100%;}
	.main .sec02 .main-business-list .list-item:nth-child(2){padding-top:0;}
   .main .sec02 .main-business-list .list-item .txt-box .txt{font-size:1rem; }
   
   .main .sec03 .main-tit-box{position: absolute; top:0;}
   .main .sec03 .main-solution-list{flex-wrap:wrap;}
   .main .sec03 .main-solution-list li{width:100%;}
 }

 @media all and (max-width:600px) {
   .main .sec01 .visual_slide .textbox .holding .change{font-size: 30px;letter-spacing: -0.5px;line-height: 1.3;}
   .main .sec01 .visual_slide .textbox .slogan{font-size: 24px;}

   
   
}