 
/* main_visual section */

/* Swiper */
.visual_section .swiper-container {
  width: 100%;
  height: 100vh;
  background-color: #000;
}

/* Swiper slides */
.visual_section .swiper-slide {
	position: relative;
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
}

.visual_section .slide-1 {
    background-image:url('/images/main/main_visual01.jpg');
}
.visual_section .slide-2 {
    background-image:url('/images/main/main_visual02.jpg');
} 

/* Slide captions */
.visual_section .slide-captions {
    position: absolute;
    top: 50%;
    left: 50%;
    color: #FFF;
    z-index: 9;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1440px;
	margin-top:50px; 
}
.visual_section .slide-captions .current-title { 
	font-size: 70px; 
	line-height:1.2; 
}
.visual_section .slide-captions .current-subtitle {
    margin:30px 0 0 0;
	font-size: 23px;
	font-weight:400;
}

.visual_section .swiper-btn-wr{
    position: absolute; 
    width: 100%;
    max-width: 1440px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
	top:50%;
	height:30px;
}
.visual_section .swiper-pagination{
	color:#fff;
	display:inline-block;
	width:auto;
	font-size:0;
}
.visual_section .swiper-pagination span{
	font-size:16px;
}
.visual_section .swiper-pagination span:before{
	font-size:16px;
	content:'0';
	display:inline-block;
}
.visual_section .swiper-pagination .swiper-pagination-current{
	margin-right:150px;
}
/* Swiper arrows */
.visual_section .swiper-pagination-bullet-active {
    background-color: #fff;
}

/* Swiper pagination */
.visual_section .swiper-container-horizontal > .swiper-pagination-bullets {
    bottom: 50px;
}
.visual_section .swiper-button-prev,
.visual_section .swiper-button-next {
    color: #fff;
	opacity:.5;
}
.visual_section .swiper-button-prev:hover,
.visual_section .swiper-button-next:hover { 
	opacity:1;
}
 
.visual_section .swiper-button-prev, .visual_section .swiper-container-rtl .swiper-button-next{
	left:60px;
}
.visual_section .swiper-button-next, .visual_section .swiper-container-rtl .swiper-button-prev{
	right:60px;
}
 

.visual_section .swiper-progress-bar {
  position: absolute;
  width: 120px;
  display: block;
  z-index: 1;
  height: 2px;
  left:30px;
  top:8px;
}
.visual_section .swiper-progress-bar .slide_progress-bar {
  position: absolute;
  height: 2px;
  background: rgba(255,255,255, 0.3);
  width: auto;
  clear: both;
  opacity: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.visual_section .swiper-progress-bar .slide_progress-bar:after {
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  height: 100%;
  width: 0;
  content: "";
  transition: 0.1s width linear;
}
.visual_section .swiper-progress-bar.active .slide_progress-bar {
  opacity: 1;
}
.visual_section .swiper-progress-bar.animate .slide_progress-bar:after {
  transition: width linear;
  transition-delay: unset;
  width: 100%;
  transition-duration: 3s;
}


/* about_section */

.about_section {
    position: relative;
    z-index: 1;
    background: #fff; 
    overflow: hidden;  
	padding:160px 0;
}
.about_section .sec-container{
	max-width:1266px; 
}

.about_section::before { 
	content:'';
	position:absolute;
	left:0;
	bottom:0;
	width:45%;
	height:75%;
	background:url('/images/main/about_bg_rec.jpg');  
	z-index:-1;
}
.about_section::after { 
	content:'';
	position:absolute;
	right:5%;
	bottom:20%;
	width:451px;
	height:307px;
	background:url('/images/main/about_bg.png');  
	z-index:-1;
}
.about_section .about_img{
	float:left; 
	width:55%;
}
.about_section .about_txt{
	float:right; 
	width:42%; 
}
.about_section .about_txt h2{
	font-size:74px; 
	color:#222; 
	line-height:1;  
	margin:150px 0 50px; 
}
.about_section .about_txt h2 span{
	margin-left:-150px; 
	display:block;
}
.about_section .about_txt p{
	font-size:20px; 
	color:#666; 
}


/* video_section */
.video_section {
    position: relative;
    z-index: 1;
    background: #fff; 
    overflow: hidden;  
	padding:160px 0;
}
.video_section::after {
    display: block;
    content: "";
    width: 100%;
    height: 58%;
    background-color: #f0f0f0;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.video_section .sec-container{
	max-width:1266px; 
}
.video_section .section_head {
    color: #222;
}
.video_section .section_head h2 {
    font-size: 51px;
    font-weight: 600;
    line-height: 1.2;
}
.video_section .section_head h2 strong {
    font-weight: 700;
    vertical-align: baseline;
}
.video_section .section_head p {
    font-size: 17px; 
    margin: 0 0 15px;
    color: #d80028;
    line-height: 1;
}
.video_section .video {
    position:relative; 
    width:100%; 
    height:0; 
    padding-bottom:56.25%;
    margin-top: 50px;
}
.video_section .video iframe {
    position:absolute; 
    top:0; 
    left:0; 
    width:100%; 
    height:100%;
}

/* product_section */

.product_section {
  display: flex;
  justify-content: center;
  position: relative;
  height: 1800px;
}

.product-bg-wrap {
  width: 100%;
  height: 100%;
  position: relative
}

.product-bg-wrap .bg-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.product-bg-wrap .bg {
  position: fixed;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  transition-duration: 0.3s;
  transition: 0.3s;
}

.product-bg-wrap .bg {
  background-image:  url("/images/main/product_bg.jpg");
}
 

.product_section .section_wrap {
  position: sticky;
  z-index: 1;
  top: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content:space-between;
  height: 100vh;
  padding-top: 230px;
}

.product_section .more_btn{
	color:#fff;
	border-color:#fff;
}
.product_section .more_btn:hover{
	border-color:#d80028;
}
.product_section .sec-container {
  height: 100%;
}

.product_section .section_head {
  display: flex;
  flex-direction: column;
  align-items: self-start;
  justify-content: start;
  width: 42%;
  position: sticky;
  height: 700px;
  top: 350px;
  color: #fff;
}

.product_section .section_head h2 {
  font-size: 54px;
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
}
 
.product_section .section_head p {
  font-size: 18px; 
  margin: 0 0 20px;
  font-weight:600
}
 


.product_section .section_body {
  will-change: contents;
  padding-top: 450px;
  width: 57%;
}

.fixed_motion {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  transition-duration: 1.5s;
}

.product_section .section_body .card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 360px; 
  width: 45%;  
  color:#fff;
  margin-bottom:100px;
}
 
 

.product_section .section_body .card .card_body h2 {
  margin:25px 0 15px;
  font-size: 25px;
  font-weight: 700;
}

.product_section .section_body .card .card_body p {
  font-size: 18px; 
}
 

.product_section .section_body .card:first-of-type {
  align-self: flex-start;
}

.product_section .section_body .card:nth-of-type(2) {
  margin-top: 250px;
  margin-left: 30px;
}

.product_section .section_body .card:nth-of-type(3) {
  align-self: flex-start;
  margin-top: -220px;
}

.product_section .section_body .card:nth-of-type(4) {
  margin-top: 30px;
  margin-left: 30px;
}

 
  

 
/* contact_section */

.contact_section {
  position: relative;
  z-index: 1;
  background: #f0f0f0; 
  overflow: hidden;  
	padding:160px 0;
}

.contact_section::after { 
	content:'';
	position:absolute;
	left:5%;
	bottom:5%;
	width:451px;
	height:307px;
	background:url('/images/main/contact_bg.png');  
	z-index:-1;
}
.contact_section .contact_wrap {
    position: sticky;
    z-index: 1;
    top: 0;
    display: flex;
    flex-wrap: wrap;  
	justify-content: space-between; 
}

.contact_section .section_head { 
  width: 42%;    
  color:#222;
}

.contact_section .section_head h2 {
  font-size: 54px;
  font-weight: 600;
  line-height: 1.2;
  margin: 0;
}
.contact_section .section_head h2 b{
  font-weight: 700;
  vertical-align:baseline;
}
 
.contact_section .section_head p {
  font-size: 18px; 
  margin:  20px 0 0;
}
.contact_section .section_head p:first-child{
	color: #d80028;
	font-weight:600;
	margin:0 0 20px;
}  
.contact_section .section_body {
  will-change: contents; 
  width: 57%;
}
.contact_section .section_body ul{
	display:flex; 
	justify-content:space-between;
	flex-wrap:wrap;
}
.contact_section .section_body li{
	width:48%;
	margin-bottom:30px;
	border-bottom:2px solid #222;
}
.contact_section .section_body li:last-child{
	width:100%;
}
.contact_section .section_body li input{
	font-size:16px;
	color:#222;
	height:50px;
	padding:0;
	background:none;
	border:none;
	font-weight:500;
}
.contact_section .section_body li input::placeholder{
	color:#222;
}
.contact_section .section_body li textarea{
	font-size:16px;
	color:#222;
	height:200px;
	padding:0;
	background:none;
	border:none;
	font-weight:500;

}
.contact_section .section_body textarea::placeholder{
	color:#222;
} 
 
 


/*********************************************** responsive ***********************************************/


@media screen and (max-width:1480px){  
	.visual_section .swiper-btn-wr{transform:none; left:5%; width:90%;}
	.visual_section .slide-captions{padding:0 5%;}
	.visual_section .swiper-button-prev, .visual_section .swiper-button-next{display:none;}
} 


@media screen and (max-width:768px){   
	.visual_section .slide-captions .current-title{font-size:30px;}
	.visual_section .slide-captions .current-subtitle{font-size:18px;}
	.about_section .about_img{width:80%;}
	.about_section .about_txt{width:80%;}
	.about_section .about_txt h2{ font-size: 40px; margin:-30px 0 20px;}
	.about_section .about_txt h2 span{margin-left:-20%;}
	.about_section .about_txt p{font-size:16px;}
	.about_section .about_txt p br{display:none;}
	.about_section{padding:80px 0;} 

    .video_section {padding:80px 0;}
    .video_section .section_head p {font-size: 14px;}
    .video_section .section_head h2 {font-size: 30px;}

	.product_section .section_wrap{padding-top:100px;}
	.product_section .section_head h2{font-size:30px;}
	.product_section .section_head h2 br{display:none;}
	.product_section .section_head p{font-size:14px;}
	.product_section .section_body{padding-top:100px;}
	.product_section .section_body .card{width:100%; margin-bottom:50px;margin-left: 30px;}
	.product_section .section_body .card:nth-of-type(2){margin-top:0;} 
	.product_section .section_body .card .card_body h2{font-size:18px;}
	.product_section .section_body .card .card_body p{font-size:14px;}
	.product_section .section_body .card:nth-of-type(3){margin-top:0;}
	.contact_section{padding:80px 0;}
	.contact_section .section_head h2{font-size:30px;}
	.contact_section .section_head{width:100%;}
	.contact_section .section_head p{font-size:14px;}
	.contact_section .section_body{width:100%;}

} 

