@charset "utf-8";
/* Common */
.mv-tit{margin-right: 0;}
@media (min-width: 768px){
	.lowerpage-bg:before{background: url("../img/company/mv.jpg") no-repeat center center/cover;}
}

@media (max-width: 767px){
	.lowerpage-bg:before{background: url("../img/company/mv_sp.jpg") no-repeat center center/cover;}
	
	.mv-img{width: 59px;}
	.joinus .lineR-blue{width: 80px; left: 48%; top: -60px;}
}

.m-ifrm_tit{margin: -21px 0 0 0;}
.m-ifrm_outer{padding: 50px 4.7% 70px;}

.c-wrap{max-width: 826px; margin: 0 auto; width: 100%;}
.c-title{font-size: 3.2rem; line-height: 1.75; font-weight: bold; font-family: 'Zen Kaku Gothic New', sans-serif; text-align: center; margin: 0 0 35px; color: #00458d; position: relative; z-index: 10;}
.c-desc{padding: 0 0 20px;}
.c-desc p{padding-bottom: 1.8em;}

@media (max-width: 767px){
	.c-title{font-size: 2.2rem; line-height: 1.5; margin: 0 -20px 20px;}
	.m-ifrm_outer{padding: 25px 20px 40px;}
	.c-desc p{padding-bottom: 1.5em;}
}

.lineL-yellowT{top: 160px; left: -120px;}
.lineL-purpleT{top: 180px; right: -160px;}
.lineL-blueT{top: -70px; right: 18%;}

@media (max-width: 767px){
	.lineL-yellowT{top: 100px; left: -80px;}
	.lineL-purpleT{top: 215px; right: -55px;}
	.lineL-blueT{top: 0; text-indent: 12%;}
}

/* Vision */
.vision{margin-bottom: 160px;}
.vision-box{padding: 0 5% 60px; margin: 0 0 50px; position: relative;}
.vision-box:before{content: ''; z-index: -1; border-radius: 16px; background: #f0faff; position: absolute; top: 96px; bottom: 0; left: 0; width: 100%; overflow: hidden;}
.vision-img{border-radius: 300px; overflow: hidden; margin: 0 0 60px;}
.vision-tit{font-size: 2.4rem; line-height: 1; font-weight: bold; font-family: 'Zen Kaku Gothic New', sans-serif; margin: 0 0 20px; color: #00458d; border-left: 2px solid #00458d; padding: 0 0 0 8px;}

.vision-box1 .gear1{position: absolute; top: 15px; left: -30px;}
.vision-box1 .gear2{position: absolute; top: 210px; right: -17px;}

.vision-box2{margin: 0 !important;}
.vision-box2 .gear1{position: absolute; bottom: -13px; left: 70px;}
.vision-box2 .gear2{position: absolute; bottom: -54px; left: 160px;}

.vision .building{position: absolute; bottom: -40px; right: 40px; line-height: 1; max-width: 435px; width: 39.5%;}
.vision .building figure{width: 29.9%; position: absolute; top: -60%; right: -5px;}

.vision .lineR-lblue{top: -140px; right: 50px;}
.vision .line2-lblue{top: 120px; left: -70px;}
.vision .lineR-yellow{top: 210px; left: -130px;}
.vision .lineL-blue{top: -80px; right: -255px;}
.vision .lineL-lblue{top: -200px; right: -255px;}
.vision .lineR-blue{top: 240px; left: -135px;}
.vision .lineL-dblue{top: 290px; left: -310px;}

@media (max-width: 767px){
	.vision{margin-bottom: 100px;}
	.vision-box{padding: 0 15px 20px; margin: 0 0 35px;}
	.vision-box:before{top: min(19vw,135px);}
	.vision-tit{font-size: 1.8rem; margin: 0 0 15px;}
	.vision-img{border-radius: 64px; margin: 0 auto 25px; max-width: 480px;}
	
	.vision .building{width: 280px; right: -30px; bottom: -30px;}
	.vision .building figure{right: 5px; width: 92px; top: -35px;}
	
	.vision .lineR-lblue{top: 77px; left: -85px; right: auto; transform: rotate(180deg);}
	.vision .line2-lblue{top: -110px; right: -110px; left: auto;}
	.vision .lineL-blue{top: -95px; right: -100px;}
	.vision .lineR-yellow{top: 100px; left: -115px; transform: rotate(180deg);}
	
	.vision .lineL-lblue{top: -100px; right: -95px;}
	.vision .lineR-blue{top: 110px; left: -98px;}
	.vision .lineL-dblue{top: 120px; left: -135px;}
}

/* Products */
.product{margin-bottom: 80px !important;}
.product-list{display: flex; flex-wrap: wrap;}
.product-item{display: flex; position: relative;}
.product-item a{position: relative; padding: 0 7.5% 30px; width: 100%; font-size: 1.4rem;}
.product-item a:before{content: ''; position: absolute; top: 120px; left: 0; right: 0; bottom: 0;  background: #f5f5f5; border-radius: 16px; z-index: -1;}
.product-item a:hover:before{background: #f0faff;}
.product-item_img{overflow: hidden; border-radius: 16px; margin: 0 0 15px;}
.product-item_img img{transition: 1s; width: 100%;}
.product-item a:hover .product-item_img img{transform: scale(1.1);}
.product-item_tit{font-size: 2rem; font-weight: bold; font-family: 'Zen Kaku Gothic New', sans-serif; margin: 0 0 8px; color: #00458d;}
.product-item_tit:after{content: ''; display: inline-block; width: 15px; height: 15px; background: url("../img/common/ic-exlink.svg") no-repeat top left/100% 100%; margin: 0 0 0 8px;}

.product .m-btn{padding: 25px 0 0 0;}

.product .gear1{position: absolute; bottom: 330px; left: 81.3%;}
.product .gear2{position: absolute; bottom: -120px; left: 70%;}
.product .gear3{position: absolute; bottom: -160px; left: 77.9%;}
.product .building{position: absolute; bottom: -52px; left: -10px; line-height: 1; max-width: 435px; width: 39.5%;}
.product .building figure{width: 29.9%; position: absolute; top: -60%; left: -6%;}

.product .lineL-yellow1{top: -150px; right: -255px;}
.product .lineL-yellow2{top: 320px; left: -180px;}
.product .lineS-purple{bottom: 160px; left: -47px;}
.product .lineS-blue{top: 51%; right: -47px;}
.product .line2-dblue{bottom: 100px; right: -85px;}

@media (min-width: 1024px){
	.product-item{width: 31.74%; margin: 0 2.39% 2.39% 0;}
	.product-item:nth-of-type(3n){margin-right: 0;}
}

@media (max-width: 1023px) and (min-width: 768px){
	.product-item{width: 48%; margin: 0 4% 4% 0;}
	.product-item:nth-of-type(2n){margin-right: 0;}
}

@media (max-width: 767px){
	.product{margin-bottom: 10px !important;}
	.product .c-desc{padding-bottom: 5px;}
	
	.product-item{margin: 0 0 30px;}
	.product-item a{padding: 0 15px 20px;}
	.product-item a::before{top: min(17vw,177px);}
	.product-item_tit{font-size: 1.8rem;}		
	
	.product .m-btn{padding: 0 0 40px;}
	
	.product .building{width: 280px; left: -90px; bottom: -30px;}
	.product .building figure{left: auto; right: -10px; width: 78px; top: -25px;}
	
	.product .lineL-yellow1{top: -77px; right: -86px;}
	.product .lineL-yellow2{top: 325px; left: -80px;}
	.product .lineL-lblue{top: 23.6%; right: -80px;}
	.product .line2-dblue{bottom: 58%; right: -77px;}
	.product .lineS-purple{bottom: 39.5%; left: -13px;}	
}