@charset "utf-8";
#MAIN .fullpage {
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
}
#MainVisual {
  margin-top: 0px; 
}
#MainVisual video {
  width: 100%;
  height: 100vh;
  /*object-fit: cover;*/
}
#MainVisual .cover {
    position: absolute;
    left: 0;
    top: 0;
    background: url(../images/common/main_visual_bg.png) left top repeat-x;
    width: 100%;
    height: 160px;
    z-index: 3;
}
#MainVisual .visualText {
  position: absolute;
  left: 10%;
  bottom: 150px;
  font-size: 50px;
  color: #fff;
  z-index: 2;
  font-weight: 700;
}
#MainVisual .visualText span {
  display: block;
  font-size: 24px;
  font-weight: 300;
  margin-top: 10px;
}
#MainVisual .buttonG {
  position: absolute;
  left: 10%;
  bottom: 50px;
  font-size: 15px;
  color: #fff;
  z-index: 2;
  font-weight: 700;
}
#MainBusiness  {margin:0;  padding: 0; background:url("../images/main/main_bus_bg.png") no-repeat ; border-top:rgba(192,192,192,.5) 1px solid }
#MainBusiness .text_area { position:absolute; width:30%; z-index: 99; opacity: 1; top:20%; left: 8%  }
#MainBusiness .text_area h2 { font-size: 2.8vw; padding-bottom: 10px; letter-spacing: -.03em  }
#MainBusiness .text_area span { font-weight: 200; font-size: 1vw; color: #666  }
#MainBusiness .text_area .btn_more { padding-top: 30px; padding-left: 0px; z-index: 99 }
#MainBusiness .visual_area { position: relative; width: calc(100vw - 0px); height:calc(100vh - 20%);  z-index: 1; opacity: 1; top:5%;  right: 5%; }
#MainBusiness .visual_area .bus_box { width: 490px; height:19.5%; border-radius: 8px; position: absolute; background-color:#000; border: rgba(0,0,0,1) solid 0px }
#MainBusiness .visual_area .bus_box video { width: 490px; height:100%; border-radius: 8px; object-fit: cover; opacity: .8  }
#MainBusiness .visual_area .bus_box img {display: none}
#MainBusiness .visual_area .bus_box.on .cover { position: absolute;  left: 0; top: 0;  width: 100%;  height:100%; background-color: rgba(0,0,0,.4); border-radius: 8px; }
#MainBusiness .visual_area .bus_box span {position: absolute; z-index:4; top: 50%; left: 50%; transform: translate(-50%, -50%);  text-align: center; color: rgba(255,255,255,1.00); font-size: 1vw; font-weight: 500 }
#MainBusiness .visual_area .bus_box01 {left: 45%; top: 0%; }
#MainBusiness .visual_area .bus_box02 {left: 45%; top: 23%; }
#MainBusiness .visual_area .bus_box03 {left: 45%; top: 46%; }
#MainBusiness .visual_area .bus_box04 {left: 68%; top: 15%; }
#MainBusiness .visual_area .bus_box05 {left: 68%; top: 38%; }
#MainBusiness .visual_area .bus_box06 {left: 68%; top: 61%; }
#MainStory #videoBg{
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 1;
  background: #000;
}
#MainStory #videoBg video{
  width: 100%;
  opacity: 1;
  object-fit: fill;
}
#MainStory .cover {
    position: absolute;
    left: 0;
    top: 0;
    background: url("../images/main/main_ajustory_bg.png") left top repeat-x; opacity: .7;
    width: 100%;
    height: 100%;
    z-index: 3;
}
#MainStory { width: 100%; height: 100vh; position: relative;  overflow: hidden; margin:0;  padding: 0; background-color: #000000}
#MainStory .imgbg {width: 100%; height:100%;; background-image: url(../images/main/main_ajustory_bg.jpg); background-size: cover;  position: absolute; opacity: 0.7;
    left: 0;
    top: 0;   }
#MainStory .imgbg img {  }
#MainStory .text_area {width: 100%; position: absolute; top:33%; align-items: center; text-align: center; font-size: 2vw; z-index: 3; color: #FFFFFF}
#MainStory .text_area .txt1 { font-size: 35px; font-weight: 300; padding-bottom: 20px; opacity: .8 }
#MainStory .text_area .txt2 { font-size: 50px; font-weight: 600}
#MainStory .text_area .txt1 img {width: 13%; opacity: 1}
#MainStory .text_area .txt2 img {width: 32%; opacity: 1}
#MainStory .btn_more {position: absolute; bottom: 47%; text-align: center; width: 100%;  z-index: 3}
#MainStory .vision_box {z-index: 5; position:relative; width: 100%; height:100vh}
#MainStory .vision_box img {width:100%; border-radius: 4px; opacity: .9}
#MainStory .vision_box div { border-radius: 4px;  }
#MainStory .vision_box .vision_box01 {position: absolute; width:28vw; left: 5%; top:8%; }
#MainStory .vision_box .vision_box02 {position: absolute; width:9vw; left: 8%; top:10%; }
#MainStory .vision_box .vision_box03 {position: absolute; width:19vw; left: 28%; top:-2%; }
#MainStory .vision_box .vision_box04 {position: absolute; width:17vw;left: -2%; top:48%; opacity: .9;}
#MainStory .vision_box .vision_box05 {position: absolute; width:7vw; right: 31%; top:13%; opacity: 1; }
#MainStory .vision_box .vision_box06 {position: absolute; width:23vw; right: 27%; top:2%; opacity: 1;  }
#MainStory .vision_box .vision_box07 {position: absolute; width:0vw;}
#MainStory .vision_box .vision_box08 {position: absolute; width:38vw; right: 7%; top:50%; opacity: 1; }
#MainStory .vision_box .vision_box09 {position: absolute; width:37vw; left: 10%; top:46%; opacity: .9; }
#MainStory .vision_box .vision_box10 {position: absolute; width:35vw; right: 1%; top:8%; z-index: 4; opacity: 1;  }
#MainStory .vision_box .vision_box11 {position: absolute; width:6.5vw; right: 10%; top:55%; z-index: 4; opacity: 1;  }
#MainStory .vision_box .vision_box02-1 {position: absolute; width:9vw; left: 13%; top:80%; }
#MainStory .vision_box13 {position: absolute;width:130px; height: 160px;  right: 25%; top:75%;  }
#MainStory .vision_box14 {position: absolute;width:130px; height: 160px;  left: 10%; top:60%;  }
#MainStory .vision_box14 {position: absolute;width:130px; height: 160px;  left: 10%; top:60%;  }
#MainStory .btn_more { z-index: 99 }
#MainNews {width: 1400px; height: 90vh;    display: flex;         position: relative;    overflow: hidden;    align-content: center;    flex-wrap: nowrap;    flex-direction: row;    justify-content: center;    align-items: center;}
#MainNews h2 {width: 100%; align-items: center; text-align: center; font-size: 2vw; }
#MainNews .btn_more { z-index: 99; text-align: right;margin: 0 60px  }
#MainNews .MainNews_list { }
.MainNews_list .swiper{ overflow: visible; max-width: 1400px;  }
.MainNews_list .swiper-slide{ position: relative; box-shadow: 0px 2px 10px rgba(0,0,0,0.2);  z-index: 0; min-height:430px;  transition: transform .3s; margin: 40px 0px }
.MainNews_list .swiper-slide a{ }
.MainNews_list .swiper-slide .bg-black{position: absolute; width: 100%; height: 100%; top: 0; left: 0;  background: rgba(0,0,0,0); z-index: -1; transition:0.5s;  }
.MainNews_list .swiper-slide a:hover .bg-black {/*background-color:rgba(62,98,230,.8);*/ background-color: rgba(0,0,0, .0); z-index:2; }
.MainNews_list .swiper-slide a p {z-index: 10;}
.MainNews_list .swiper-slide a img {width: 100%; height: 250px; border-bottom: 1px solid #e5e6e8; overflow: hidden;  z-index: -1; }
.MainNews_list .swiper-slide a .img { overflow: hidden; }
.MainNews_list .swiper-slide .txt { height: 140px; max-width: 100%; overflow: hidden; padding: 25px; z-index: -1;  }
.MainNews_list .swiper-slide .txt .aff { display: flex;  justify-content: left;  gap: 10px;  margin: 0px 0; }
.MainNews_list .swiper-slide .txt .aff span {color: #222; font-weight: 500;  background-color:rgba(0,0,0,0.06); padding: 5px 10px; font-size: 0.75rem; border-radius: 20px }
.MainNews_list .swiper-slide .txt .title { font-size: 1.25rem; line-height: 1.3em; margin: 10px 0 ; white-space:normal; overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;  letter-spacing: -0.08rem; font-weight: 600; }
.MainNews_list .swiper-slide .txt .date { position: absolute;  bottom: 30px; display: block; color: #888a8c; letter-spacing: 0; }
.MainNews_list .swiper-slide .txt .summ {  margin-top: 30px; color: #888a8c; font-weight: 100; line-height: 26px; white-space:normal; overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; height: 104px; }
.MainNews_list .swiper-slide a div.but:not(.bg-black){
position: absolute;
 top: 50%; left: 50%; transform: translate(-50%, -50%);  border-radius: 20px ; background:#333; transition:0.5s; opacity: 0}
.MainNews_list .swiper-slide a div.but span{
    display: block;  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); opacity: 0}
.MainNews_list .swiper-slide:hover {transform: translateY(-15px);}
.MainNews_list .swiper-slide a:hover div.but:not(.bg-black, .empty){ background: rgba(0,0,0, .9); opacity: 1}
.MainNews_list .swiper-slide a:hover div.but { background:#fff!important;  z-index: 11; width:150px; height:40px; border-radius:  20px ; }
.MainNews_list .swiper-slide a:hover div.but span {  z-index: 11; opacity: 1; font-size: 0.86rem; text-align: center  }
.MainNews_list .swiper-slide-next,  .MainNews_list .swiper-slide-prev {opacity: 1}
.MainNews_in {width: 1450px; }
.MainNews_in .swiper-button-prev:after, .MainNews_in .swiper-button-next:after { font-size: 1.1rem !important;  font-weight: 600 !important;}
.MainNews_in .swiper-button-prev, .MainNews_in .swiper-button-next {
  /*background-color: #fff;*/
  opacity: 0.5;
  padding: 0px 10px;
  border-radius: 30px;
  color: black !important;
  }
.MainNews_in .box_width1300 { overflow: visible }
.MainNews_in .swiper-button-next { margin-right: -60px }
.MainNews_in .swiper-button-prev { margin-left: -60px }
.MainNews_list .swiper-slide a .border1::after{    content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 1%;
  height: 5px;
  background: #3e62e6;
  opacity: 0;
  transition: all .5s ease-in-out; z-index:3}
.MainNews_list .swiper-slide a:hover .border1::after{    width: 100%;
  height: 5px;
  opacity: 1; z-index:3}
.MainNews_list .swiper-slide a .border1::before{    content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 5px;
  height: 1%;
  background: #3e62e6;
  opacity: 0;
  transition: all .5s ease-in-out; z-index:3}
  .MainNews_list .swiper-slide a:hover .border1::before{
    width: 5px;
    height: 100%;
    opacity: 1;  z-index:3
  }
  .MainNews_list .swiper-slide a .border2::after{    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 1%;
    height: 5px;
    background: #3e62e6;
    opacity: 0;
    transition: all .5s ease-in-out;  z-index:3}
  .MainNews_list .swiper-slide a:hover .border2::after{    width: 100%;
    height: 5px;
    opacity: 1;  z-index:3}
  .MainNews_list .swiper-slide a .border2::before{    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 5px;
    height: 1%;
    background: #3e62e6;
    opacity: 0;
    transition: all .5s ease-in-out;}
    .MainNews_list .swiper-slide a:hover .border2::before{
      width: 5px;
      height: 100%;
      opacity: 1; z-index:3
    }
@media all and (max-width: 1920px) {
    #MainBusiness .text_area { position:absolute; width:500px;z-index: 99; opacity: 1; top:16%; left: 8%  }
    #MainBusiness .visual_area { position: relative; width: calc(100vw - 0px); height:calc(90vh);  z-index: 1; opacity: 1; top:8%;   }
    #MainBusiness .visual_area .bus_box {width: 500px; height:20%;   border-radius: 8px;}
    #MainBusiness .visual_area .bus_box video { width: 500px; height:100%; border-radius: 8px; }
    #MainBusiness .visual_area .bus_box01 {left: 39%; top: 0%; }
    #MainBusiness .visual_area .bus_box02 {left: 39%; top: 23%; }
    #MainBusiness .visual_area .bus_box03 {left: 39%; top: 46%; }
    #MainBusiness .visual_area .bus_box04 {left: 68%; top: 15%; }
    #MainBusiness .visual_area .bus_box05 {left: 68%; top: 38%; }
    #MainBusiness .visual_area .bus_box06 {left: 68%; top: 61%; }
    #MainStory .text_area { top:31%;}
    #MainStory .text_area .txt1 { font-size: 30px;}
    #MainStory .text_area .txt2 { font-size: 40px;}
}
@media all and (max-width: 1800px) {
    #MainBusiness .text_area { width:25%; left: 6%  }
    #MainBusiness .visual_area { right: 3%; }
    #MainBusiness .visual_area .bus_box {width:  450px;}
    #MainBusiness .visual_area .bus_box video { width: 450px;  }    
    #MainBusiness .visual_area .bus_box01 {left: 36%; top: 0%; }
    #MainBusiness .visual_area .bus_box02 {left: 36%; top: 23%; }
    #MainBusiness .visual_area .bus_box03 {left: 36%; top: 46%; }    
    #MainBusiness .visual_area .bus_box span { font-size: 18px;}
}
@media all and (max-width: 1536px) {
    #MainBusiness .text_area {  left: 8%  }
    #MainBusiness .visual_area { right: 3%; }
    #MainBusiness .visual_area .bus_box {width:  380px;}
    #MainBusiness .visual_area .bus_box video { width: 380px;  }    
    #MainBusiness .visual_area .bus_box01 {left: 39%; top: 0%; }
    #MainBusiness .visual_area .bus_box02 {left: 39%; top: 23%; }
    #MainBusiness .visual_area .bus_box03 {left: 39%; top: 46%; }    
    #MainBusiness .visual_area .bus_box span { font-size: 16px;}
     #MainNews h2 {    font-size: calc(2vw - 0.25vw)}
     #MainNews .btn_more {margin: 0 25px;}
    .btn_more_txt {    font-size: calc(1vw - 0.2vw);   line-height:calc(1vw - 0.2vw) ;}
    .btn_more_txt:after {    height: 10px; background-size: 18%; }    
    .MainNews_in { width: 1120px; overflow: hidden}
    .MainNews_in .box_width1300 { max-width: 1040px}
    .MainNews_list .swiper-slide a img { height: 190px;}
    .MainNews_list .swiper-slide { min-height: auto;}
    .MainNews_list .swiper-slide .txt .aff span { font-size: 0.7rem;}
    .MainNews_list .swiper-slide .txt .title {font-size: 1rem; line-height: 1.3em;  margin-bottom: 10px;}   
    .MainNews_list .swiper-slide .txt .date {font-size:0.75rem; }
    .MainNews_list .swiper-slide .txt {height: 115px;}  
    .MainNews_list .swiper-slide { margin: 25px 0px;}
     #MainStory .text_area .txt1 { font-size: 23px;}
     #MainStory .text_area .txt2 { font-size: 30px;}
     .btn.grayW {    font-size: 12px!important;    padding: 6px 20px 8px;letter-spacing: 0.03em;}
}
@media all and (max-width: 1500px) {
     #MainNews h2 {font-size: calc(2vw - 0vw)}
     #MainNews .btn_more {margin: 0 25px;}
    .MainNews_list .swiper-slide .txt .title {font-size: 1.25rem; line-height: 1.3em; }
    .btn_more_txt {    font-size: 16px}
    #MainStory .text_area .txt2 {    font-size: 40px;}
    #MainStory .text_area .txt1 {    font-size: 30px;}
}
@media all and (max-width: 1280px) {    
    #MainBusiness .text_area {  left: 5%  }
    #MainBusiness .visual_area { right: 3%; }
    #MainBusiness .visual_area .bus_box {width:  380px;}
    #MainBusiness .visual_area .bus_box video { width: 380px;  }    
    #MainBusiness .visual_area .bus_box01 {left: 36%; top: 0%; }
    #MainBusiness .visual_area .bus_box02 {left: 36%; top: 23%; }
    #MainBusiness .visual_area .bus_box03 {left: 36%; top: 46%; }    
    #MainBusiness .visual_area .bus_box span { font-size: 16px;}
    #MainNews {width: 100%;}
    #MainNews h2 {    font-size:28px; line-height: 2.5em}
}
/* Tablet*/
@media all and (max-width: 1080px) {
    #MAIN .container{margin: 0px auto 0}
    #MainBusiness .visual_area .bus_box {width:  300px;}
    #MainBusiness .visual_area .bus_box video { width: 300px;  }    
    #MainBusiness .visual_area .bus_box01 {left: 36%; top: 0%; }
    #MainBusiness .visual_area .bus_box02 {left: 36%; top: 23%; }
    #MainBusiness .visual_area .bus_box03 {left: 36%; top: 46%; } 
    #MainStory { height: 83vh;}
    #MainStory .btn_more {    bottom: 38%;}
     #MainNews {     height: auto; margin: 70px auto}
    .MainNews_in {    width: 80%;    margin: 0 auto;}
    .MainNews_in .box_width1300 {  max-width: 1000px;  width: 90%;}
    .MainNews_in .swiper-button-next { margin-right:18%;}
    .MainNews_in .swiper-button-prev { margin-left:18% } 
    .MainNews_list .swiper-slide-next, .MainNews_list .swiper-slide-prev {opacity: .5}
}
@media screen and (max-width:768px){ 
    #MAIN #MainBusiness.fullpage { flex-direction: column;  }
    #MainBusiness .text_area { position: relative; left:auto; text-align: center; top:8%; width: 100%}
    #MainBusiness .text_area h2 {font-size: 30px; padding-bottom:5px}
    #MainBusiness .text_area span {font-size: 16px;}
    #MainBusiness .visual_area { position: relative; right:auto;  top:12%}
    #MainBusiness .visual_area .bus_box {height: 140px}
    #MainBusiness .visual_area .bus_box01 {left: 10%; top: 0%; }
    #MainBusiness .visual_area .bus_box02 {left: 10%; top: 23%; }
    #MainBusiness .visual_area .bus_box03 {left: 10%; top: 46%; }    
    #MainBusiness .visual_area .bus_box04 {left: 53%; top: 15%; }
    #MainBusiness .visual_area .bus_box05 {left: 53%; top: 38%; }
    #MainBusiness .visual_area .bus_box06 {left: 53%; top: 61%; }
    #MainStory {    height: 80vh;}    
    .MainNews_in {width: 100%;}
    .MainNews_in .box_width1300 { max-width:100vw; width: 100%;}
    .tab_type1.groupC {margin-bottom:60px;}
}
/* Mobile */
@media all and (max-width: 766px) {
	#MainVisual .buttonG {bottdom: 25px;	}
	#MAIN .fullpage { height: calc(100vh - 88px)}
	#MainVisual video { object-fit:fill; margin-top: -88px;}
    #MainVisual { background-color: rgba(0,0,0,1.00)	}
}
@media screen and (max-width:550px){
    #MAIN #MainBusiness.fullpage {height: 80vh}
    #MainBusiness .text_area { top:13%; }
    #MainBusiness .visual_area { position: relative; right:auto;  top:21%}
    #MainBusiness .visual_area .bus_box {width: 42%; height: 87px}
    #MainBusiness .visual_area .bus_box video { display: none}  
    #MainBusiness .visual_area .bus_box video source { display: none}  
    #MainBusiness .visual_area .bus_box01 {left: 7%; top: 0%; }
    #MainBusiness .visual_area .bus_box02 {left: 7%; top: 19%; }
    #MainBusiness .visual_area .bus_box03 {left: 7%; top: 38%; }    
    #MainBusiness .visual_area .bus_box04 {left: 51%; top: 9%; }
    #MainBusiness .visual_area .bus_box05 {left: 51%; top: 28%; }
    #MainBusiness .visual_area .bus_box06 {left: 51%; top: 47%; }    
    #MainBusiness .visual_area .bus_box img {display: block; object-fit: cover;   opacity: .8; border-radius: 8px; height: 100%}
    #MainStory { height: 65vh;} 
    #MainStory .text_area .txt2 {font-size: 23px;}
    #MainStory .text_area .txt1 {font-size: 15px; padding-bottom: 10px;}
    #MainStory .btn_more {bottom: 36%;}
    #MainStory .vision_box .vision_box01 {
        width: 35vw;
        left: 7%;
        top: 6%;
        padding-bottom: 10px;
    }
    #MainStory .vision_box .vision_box03 {
        width: 45vw;
        left: 5%;
        top: -1.5%;
    }
    #MainStory .vision_box .vision_box04 {
        width: 25vw;
        left: -3%;
        top: 33%;
        opacity: .9;
    }
    #MainStory .vision_box .vision_box06 {
        width: 48vw;
        right: 12%;
        top: 3%;
        opacity: 1;
    }
    #MainStory .vision_box .vision_box08 {
        width: 60vw;
        right: -13%;
        top: 43%;
        opacity: 1;
    }
    #MainStory .vision_box .vision_box09 {
        width: 70vw;
        left: -11%;
        top: 41%;
        opacity: .9;
    }
    #MainStory .vision_box .vision_box10 {
       width: 70vw;
        right: -23%;
        top: 7%;
        z-index: 4;
        opacity: 1;
    }
    .btn.grayW {
        font-size: 11px!important;
        padding: 6px 15px 6px;
        letter-spacing: 0.03em;
    }
    .MainNews_in .box_width1300 { max-width:100vw; width: 65%;}
    .MainNews_list .swiper-slide a img {    height: 150px;}
    .MainNews_in .swiper-button-next { margin-right:-22%;}
    .MainNews_in .swiper-button-prev { margin-left:-22% }
    .MainNews_list .swiper-slide .txt .aff {    gap: 5px;}
    .MainNews_list .swiper-slide .txt {    padding:20px 10px;}  
    .MainNews_list .swiper-slide .txt .date { bottom: 20px;}
    #MainNews .btn_more {    margin: 0 0px;}
    .btn_more_txt {    font-size: 14px}
    .MainNews_list .swiper-slide .txt .title {
        font-size: 1rem;
        line-height: 1.3em;
    }
}
@media all and (max-width: 380px) {
     #MainStory { height: 70vh;}
}

 #pop{
  width:438px; height:356px; background:#3d3d3d; color:#fff; 
  position:absolute; top:90px; left:10px; text-align:center; 
  border:1px solid #000;
  z-index:100
   }
 #pop img{width:438px; height:auto;padding-bottom: 5px}
 .close div{text-align:left;}
     
 #check{float:left; display:block; color:#a4a4a4; font-size:12px; padding-left:10px; padding-bottom:10px; padding-top: 0px; }
 #close{float:right; color:#fff; display:block; font-size:12px; font-weight:bold; padding-right:10px; padding-bottom:10px; margin:auto; padding-top: 2px}
 .close a{color:#fff; letter-spacing:0px!important; }
 #check input  { -webkit-appearance:checkBox ; }
    
@media screen and (max-width: 640px) {
    #pop{
        width:360px;  height:auto; background:#3d3d3d; color:#fff; top:65px; left: 50%;  margin: 0 0 0 -180px; padding-left:0px; padding-bottom:0px; padding-top: 0px; 
    }
    #pop img{
        width:100%
    }
    #check{padding-left:10px; padding-bottom:3px;  padding-top: 0px; vertical-align: top}
    #close{padding-bottom:0px;  padding-top: 00px}
}