#wrap {position: relative;}
.inner {position: relative; max-width: 1400px; margin: 0 auto;}
.inner:after {content: ''; clear: both; display: block;}

/* .mainContainer {position: relative;} */

/* mainVisual */
.mainVisual {position: relative; width: 100%; height: 100vh; z-index: 10;}
.mainVisual .mainVisual_bg {position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden;}
.mainVisual .visual_list {width: 100%; height: 100%;}
.mainVisual .visual_list li {width: 100%; height: 100%;}
.mainVisual .visual_list li .bg {position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: no-repeat 50% 50%; background-size: cover; animation: visualScale 8s ease 0s; background-color: #85a769;}
.mainVisual .visual_list li.bg01 .bg {background-image: url('/images/main/mainVisual01.jpg');}
.mainVisual .visual_list li.bg02 .bg {background-image: url('/images/main/mainVisual01.jpg');}

@keyframes visualScale{
	0%{transform:scale(1) rotate(.001deg);}
	100%{transform:scale(1.10) rotate(.001deg);}
}

/* mainVisual bx slider */
/* .mainVisual .bx-wrapper {margin-bottom: 0; box-shadow: none; border: 0;} */
.mainVisual .bx-wrapper {width: 100%; height: 100%; margin-bottom: 0; box-shadow: none; border: 0;}
.mainVisual .bx-viewport {width: 100%; height: 100%;}

.mainVisual .inner {width: 100%; height: 100%;}
.mainVisual .mainVisual_tit {position: absolute; top: 50%; left: auto; transform: translateY(-50%); z-index: 1;}
.mainVisual .mainVisual_tit h1 {font-size: 62px; font-weight: 600; color: #fff; line-height: 1.2; font-family: 'SBAggro', 'Pretendard', sans-serif; text-shadow: 0 20px 30px rgba(0, 0, 0, .1);}
.mainVisual .mainVisual_tit p {font-size: 18px; color: #fff; margin-top: 40px;}

/* 영업문의 버튼 */
.inquiry_btn {position: absolute; bottom: 60px; right: 160px; width: 146px; height: 146px; z-index: 10;}
.inquiry_btn circle {transition: all .3s;}
.inquiry_btn a {display: block;}
.inquiry_btn span {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); line-height: 1.3; font-size: 17px; font-weight: 600; color: #0035bf;}
.inquiry_btn .circle_bg {transform-origin: center; animation: spin 7s infinite linear;}

.inquiry_btn:hover circle {fill: rgba(235, 235, 235, .3);}
.inquiry_btn:hover span {color: #fff;}
/* .inquiry_btn:hover .circle_bg path {fill: #0035bf;} */

/* main counter */
.main_bottom {position: absolute; bottom: 80px; z-index: 100; font-size: 0;}
.main_bottom * {display: inline-block; vertical-align: middle;}
/* .counter span {display: inline-block; vertical-align: middle;} */
.counter .idx {position: relative; font-size: 1rem; color: rgba(255, 255, 255, .6); padding: 0 10px;}
.counter .idx:after {content: ''; position: absolute; top: 50%; right: 0; margin-top: -5px; width: 1px; height: 10px; background-color: rgba(255, 255, 255, .3);}
.counter .idx:last-child:after {content: none;}
.counter .idx.current {color: #fff; font-weight: 600;}

.main_pager {margin-right: 100px;}
.main_pager a {width: 40px; height: 4px; background-color: rgba(255, 255, 255, .4);}
.main_pager a + a {margin-left: 10px;}
.main_pager a.active {background-color: #fff;}

.main_ctrl {margin-left: 50px;}
.main_ctrl .ctrl {width: 13px; height: 13px; margin: 0 5px; background-color: transparent;}
.main_ctrl .ctrl a {width: 100%; height: 100%; border-right: 3px solid #fff; border-bottom: 3px solid #fff;}
.main_ctrl .ctrl.prev a {transform: rotate(135deg);}
.main_ctrl .ctrl.next a {transform: rotate(-45deg);}

/* scroll down */
.scroll_down {position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%); text-align: center; z-index: 10;}
.scroll_down .mouse {position: relative; display: block; width: 12px; height: 16px; border: 2px solid #fff; border-radius: 12px; margin: 0 auto 10px;}
.scroll_down .mouse:before {content: ''; position: absolute; top: 2px; left: 50%; margin-left: -1px; width: 2px; height: 3px; background-color: #fff; animation: scroll 1.5s infinite;}
.scroll_down span {font-size: 15px; font-weight: 600; color: rgba(255, 255, 255, .5);}

@keyframes scroll {
    0% {opacity: 0;}
    10% {transform: translateY(0); opacity: 1;}
    100% {transform: translateY(5px); opacity: 0;}
}

/* section common */
section {position: relative; padding: 140px 0 140px; z-index: 1;}
.section_title {position: relative; margin-bottom: 80px;}
.section_title h3 {display: inline-block; font-size: 47px; font-weight: 800; line-height: 1; vertical-align: middle;}
.section_title > span {position: relative; display: inline-block; font-size: 18px; font-weight: 400; color: #ccc; padding-left: 60px; vertical-align: middle; margin-left: 20px; text-transform: uppercase;}
.section_title > span:before {content: ''; position: absolute; top: 50%; left: 0; display: block; width: 40px; height: 1px; background: #ddd;}

.se_txt {font-size: 20px; color: #fff; font-weight: 200; word-break: keep-all; margin-bottom: 40px;}

/* more btn */
.more_btn {position: relative; display: inline-block; width: 180px; height: 60px; line-height: 58px; font-size: 1rem; font-weight: 400; color: #fff; text-align: center !important; background-color: #14a83c; border: 1px solid transparent; padding: 0 20px; text-align: center; transition: all .3s;}
.more_btn:hover {border-color: #005BAB; background-color: #005BAB;}

.swiper-container-horizontal .swiper-scrollbar {position: static; width: 100%; height: 3px; background-color: #eee; border-radius: 0; margin-top: 40px;}
.swiper-container-horizontal .swiper-scrollbar-drag {background-color: #111; border-radius: 0;}

/* section01::main-product */
.main_product {position: relative;}

/* object circle */
.main_product .bg_circle .circle01:after {content: ''; position: absolute; top: 532px; left: -363px; width: 465px; height: 465px; background-color: #7fc0e5; filter: blur(250px); z-index: -1;}
.main_product .bg_circle .circle02:after {content: ''; position: absolute; top: 0px; right: -120px; width: 320px; height: 320px; background-color: #89d39d; filter: blur(250px); z-index: -1;}

.about_wrap {position: relative; padding-bottom: 240px;}
.main_product .section_title {float: left;}
.main_product .section_txt {float: left; padding-left: 90px;}
.main_product .section_txt p {font-size: 18px; color: #666; line-height: 1.6;}
.main_product .section_txt .more_btn {margin-top: 60px;}

.about_wrap .object_txt {position: absolute; right: 0; bottom: 0; font-size: 160px; font-family: 'KIMM'; color: #eff7fb; line-height: 1; mix-blend-mode: multiply; z-index: -1;}
.about_wrap .object_txt b {font-size: 240px;}

/* .main_product .product_wrap {clear: both; padding-top: 240px;} */
.product_list li {display: inline-block; width: calc(50% + 20px); padding: 19% 0; vertical-align: top;}
.product_list li a {position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; border: 1px solid #ddd; background-color: #fff; padding: 60px 60px 55px; transition: all .3s; overflow: hidden;}
.product_list li a span {display: block; font-size: 18px; font-weight: 600; color: #999;}
.product_list li a strong {display: block; font-size: 35px; font-weight: 800; color: #222;}
.product_list li a p {font-size: 18px; color: #666; margin-top: 30px; word-break: keep-all;}
.product_list li .icon {position: absolute; right: 60px; bottom: 60px; display: block; width: 200px; height: 200px; background: no-repeat 50% 50%; background-size: 200px auto; transition: background .2s ease-in; float: right;}
.product_list li .icon.icon01 {background-image: url('/images/main/product_icon01.png');}
.product_list li .icon.icon02 {background-image: url('/images/main/product_icon02.png');}
.product_list li .icon.icon03 {background-image: url('/images/main/product_icon03.png');}

.product_list li a:hover {border-color: #14a83c;}
.product_list li a:hover .icon.icon01 {background-image: url('/images/main/product_icon01_on.png');}
.product_list li a:hover .icon.icon02 {background-image: url('/images/main/product_icon02_on.png');}
.product_list li a:hover .icon.icon03 {background-image: url('/images/main/product_icon03_on.png');}


/* section02::main-process */
/* .main_process {background-color: #f8f9f9;} */
.main_process .more_btn {position: absolute; right: 0; bottom: 0;}
.process_list li {position: relative; display: inline-block; width: 266px; height: 260px; border: 1px solid #ddd; background-color: #fff; padding: 40px 40px;}
.process_list li:after {content: ''; position: absolute; top: 50%; right: -35px; margin-top: -25px; width: 50px; height: 50px; background: url('/images/main/arw_icon.png') no-repeat 50% 50%; background-size: auto; z-index: 1;}
.process_list li:last-child:after {content: none;}
.process_list li .icon {display: block; width: 95px; height: 95px; margin: 0 auto 30px; background: no-repeat 50% 50%; background-size: auto;}
.process_list li:nth-child(1) .icon {background-image: url('/images/main/process_icon01.png');}
.process_list li:nth-child(2) .icon {background-image: url('/images/main/process_icon02.png');}
.process_list li:nth-child(3) .icon {background-image: url('/images/main/process_icon03.png');}
.process_list li:nth-child(4) .icon {background-image: url('/images/main/process_icon04.png');}
.process_list li:nth-child(5) .icon {background-image: url('/images/main/process_icon05.png');}
.process_list li:nth-child(6) .icon {background-image: url('/images/main/process_icon06.png');}
.process_list li span {font-size: 18px; font-weight: 600; color: #999; text-transform: uppercase;}
.process_list li strong {display: block; font-size: 24px; font-weight: 600; color: #111;}


/* section03::main-contact */
.main_contact {position: relative; overflow: hidden; background: url('/images/main/contact_bg.png') no-repeat 50% bottom; background-size: cover;}
.main_contact:after {content: ''; position: absolute; right: 0; bottom: -37px; width: 523px; height: 470px; background: url('/images/main/contact_obj.png') no-repeat 50% 50%; z-index: -1;}
.main_contact * {text-align: center;}
.main_contact .section_title {margin-bottom: 40px;}
.main_contact .section_txt p {font-size: 18px; color: #666; line-height: 1.6;}
.main_contact .more_btn {margin-top: 50px;}


@media (max-width: 1440px) {
    .inner {max-width: 100%; padding: 0 4%;}

    /* mainVisual */
    .mainVisual .mainVisual_tit h1 {font-size: 58px;}
}

@media (max-width: 1200px) {
    /* mainVisual */
    .mainVisual .mainVisual_tit h1 {font-size: 50px;}
    .mainVisual .mainVisual_tit p {font-size: 1rem;}

    /* section common */
    .section_title h3 {font-size: 43px;}
    
    /* 영업문의 버튼 */
    .inquiry_btn {right: 8%;}

    /* section common */
    section {padding: 100px 0 100px;}
    .section_title {margin-bottom: 60px;}
    .se_txt {font-size: 18px;}

    /* section01::main-product */
    .main_product .section_txt p {font-size: 1rem;}
    .about_wrap {padding-bottom: 200px;}
    .about_wrap .object_txt {font-size: 120px;}
    .about_wrap .object_txt b {font-size: 160px;}

    .product_list li a {padding: 60px 40px;}
    .product_list li a strong {font-size: 30px;}
    .product_list li a span,
    .product_list li a p {font-size: 1rem;}
    .product_list li .icon {right: 40px; bottom: 40px; width: 160px; height: 160px; background-size: 160px auto;}

    /* section02::main-process */
    .process_list li span {font-size: 1rem;}
    .process_list li strong {font-size: 20px;}

    /* section03::main-contact */
    .main_contact .section_txt p {font-size: 1rem;}
    

    /* object txt circle */
    .circle_box {right: 8%;}
}


@media (max-width: 1024px) {
    /* br {display: none;} */
    
    /* mainVisual */
    .mainVisual{height:75vh; transition:height 0.3s;}
    .mainVisual .mainVisual_tit{left:0; right:0; margin:auto; width:92%;}
    .mainVisual .mainVisual_tit h1 {font-size: 46px;}
    .mainVisual .mainVisual_tit p {font-size: 1rem; word-break: keep-all;}

    /* section common */
    section {padding: 80px 0 80px;}
    .section_title {margin-bottom: 40px;}
    .section_title h3 {font-size: 36px;}
    .se_txt {font-size: 1rem;}

    /* section01::main-product */
    .about_wrap {padding-bottom: 160px;}
    .main_product .section_txt p {word-break: keep-all;}
    .main_product .section_txt p br {display: none;}
    .main_product .section_txt .more_btn {margin-top: 40px;}
    .about_wrap .object_txt {font-size: 100px;}
    .about_wrap .object_txt b {font-size: 120px;}
    
    .product_list li a strong {font-size: 26px;}
    .product_list li a .icon {width: 120px; height: 120px; background-size: 120px auto;}

    /* section03::main-contact */
    .main_contact:after {width: 412px; height: 370px; background-size: auto 370px;}
}

@media (max-width: 768px) {
    /* mainVisual */
    .mainVisual .mainVisual_tit h1 {font-size: 40px;}

    /* section common */
    .section_title h3 {font-size: 30px;}
    .se_txt br {display: none;}

    /* more btn */
    .more_btn {width: 140px; height: 50px; line-height: 48px;}

    /* section01::main-product */
    .about_wrap {padding-bottom: 120px;}
    .main_product .section_txt {padding-left: 30px;}

    .about_wrap .object_txt {font-size: 5.71rem;}
    .about_wrap .object_txt b {font-size: 7.14rem;}

    .product_list li {padding: 0; height: 320px;}
    .product_list li a {padding: 30px 30px;}
    .product_list li a strong {font-size: 22px;}
    .product_list li a p {margin-top: 10px;}
    .product_list li a p br {display: none;}
    .product_list li a .icon {bottom: 20px; right: 20px;}

    /* section02::main-process */
    .process_list li strong {font-size: 18px;}
}

@media (max-width: 576px) {
    /* mainVisual */
    .mainVisual .mainVisual_tit h1 {font-size: 34px;}

    /* section common */
    .section_title h3 {font-size: 26px;}

    /* section01::main-product */
    /* object circle */
    .main_product .bg_circle .circle01:after {width: 360px; height: 360px; filter: blur(150px);}
    .main_product .bg_circle .circle02:after {width: 220px; height: 220px; filter: blur(150px);}

    .about_wrap {padding-bottom: 100px;}

    .about_wrap .object_txt {font-size: 4.29rem;}
    .about_wrap .object_txt b {font-size: 5.71rem;}

    .product_list li {width: 100%; padding: 30% 0;}

    /* section02::main-process */
    /* .process_list li {width: 40%;}
    .process_list li .icon {width: 80px; height: 80px; background-size: contain;} */

    /* section03::main-contact */
    .main_contact * {text-align: left;}
    .main_contact .section_txt p br {display: none;}
    .main_contact .more_btn {margin-top: 30px;}
    
}

@media (max-width: 420px) {
    /* mainVisual */
    .mainVisual .mainVisual_tit h1 {font-size: 28px; word-break: keep-all; -webkit-text-stroke: 0; color: #fff;}

    /* section common */
    section {padding: 60px 0 60px;}
    .section_title {margin-bottom: 40px;}
    .section_title > span {font-size: 1rem;}

    /* section01::main-product */
    .about_wrap .object_txt {display: none;}
    .about_wrap {padding-bottom: 60px;}

    .main_product .section_txt {padding-left: 0;}
    .main_product .section_txt .more_btn {margin-top: 30px;}

    .product_list li a strong {font-size: 18px;}

    /* section02::main-process */
    .main_process .more_btn {position: static; display: block; margin-top: 30px;}


    /* section03::main-contact */
    .main_contact:after {width: 240px; height: 215px; background-size: auto 215px;}
    
}
