
.container *{box-sizing:border-box; color:#222;}
.gu_sub_wrapper .gu_sub_contents .contents_inner{max-width:1116px;}

/* filter */
.section.engine_filter{padding:0 0 60px;}
.section.engine_filter .sec_inner{text-align:center; position: relative;}
.section.engine_filter .sec_inner .filter_type,.section.engine_filter .sec_inner .filter_btn_area{display:inline-block; font-size:16px; vertical-align:middle;}
.section.engine_filter .sec_inner .filter_type{letter-spacing:-0.5px;}
.section.engine_filter .sec_inner .filter_btn_area{}
.section.engine_filter .sec_inner .filter_btn_area a{display:block; float:left; color:#666; letter-spacing:-1px; padding:12px; margin-left:8px115; border:solid 1px #ccc; border-radius:2px;
    transition:all 0.3s;
    -webkit-transition:all 0.3s;
}
.section.engine_filter .sec_inner .filter_btn_area a span{color:#666;}
.section.engine_filter .sec_inner .filter_btn_area a:first-child{margin-left:24px;}
.section.engine_filter .sec_inner .filter_btn_area a.on, .section.engine_filter .sec_inner .filter_btn_area a:hover{color:#222; border-color:#007acc;}
.section.engine_filter .sec_inner .filter_btn_area a.on span, .section.engine_filter .sec_inner .filter_btn_area a:hover span {color:#222; }

/* product-list */
.section.engine_product-list.no_title{padding-top:100px; margin-top:70px; border-top:solid 1px #ccc;}
.section.engine_product-list.no_title{border-top:none;}
.section.engine_product-list.top_line{margin-top:70px; border-top:solid 1px #ccc;}
.section.engine_product-list.simple{margin-top:100px;}
.section .sec_inner .product_container_outer{width:100%; overflow:hidden; padding-bottom:1px; padding-left:1px;}
.section .sec_inner .product_container{position:relative; float: left; width:calc(33.33% - 1px);
    transition:border 0.5s;
    -webkit-transition:border 0.5s;
}
.section .sec_inner .product_container:before{content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% + 1px);
    height: calc(100% + 1px);
    border: 1px solid #cccccc;
    box-sizing: border-box;
}
.section .sec_inner .product_container:after{content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% - 3px);
    height: calc(100% - 3px);
    border: 2px solid #e35b0a;
    opacity: 0;
    transition: opacity 0.3s;
    pointer-events:none;
}

.section .sec_inner .product_container:nth-of-type(3n):before{width:100%;}
.section .sec_inner .product_container:nth-of-type(3n):after{width:calc(100% - 4px);}
.section .sec_inner .product_container:hover {z-index: 9;}
.section .sec_inner .product_container a{display:block; box-sizing:content-box; padding:30px; max-width:370px; height:410px;}
/*.container.subNavi_engine_generator .section .sec_inner .product_container a{height:360px; }*/
.section .sec_inner .product_container.simple, .section .sec_inner .product_container.simple a{max-width:370px; height:394px; box-sizing:border-box;}
.section .sec_inner .product_container a p{letter-spacing:-1px;}
.section .sec_inner .product_container a p.product_name{font-size:24px; padding-bottom: 12px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden;}
.section .sec_inner .product_container a p.product_name:after{display:inline-block; content:''; width:10px; height:16px; margin-left:8px; margin-bottom:1px; background:url('../../../img/engine/btn_go_black.png') no-repeat; background-size:contain;
    transition:all 0.3s;
    -webkit-transition:all 0.3s;
}
.section .sec_inner .product_container:hover a p.product_name:after{margin-left:12px;}
.section .sec_inner .product_container a .product_img_box{height:250px; text-align:center; margin:0 auto;}
.section .sec_inner .product_container a .product_img_box > div{position:relative; height:100%; vertical-align: middle; text-align:center;
    transform:scale(0.9);
    -webkit-transform:scale(0.9);
    -ms-transform:scale(0.9);
    transition:transform 0.3s;
    -webkit-transition:transform 0.3s;
}
.section .sec_inner .product_container a .product_img_box > div img{position:absolute; top:50%; left:50%; max-width:100%; max-height:100%; margin-left:0;
    transition:all 0.5s ease-out;
    -webkit-transition:all 0.5s ease-out;
    transform:translate(-50%, -50%);
    -webkit-transform:translate(-50%, -50%);
    -ms-transform:translate(-50%, -50%);
}
.section .sec_inner .product_container a .product_info li p{float:right; font-size:14px; line-height:20px;}
.section .sec_inner .product_container a .product_info li p.info_type{float:left; padding-bottom:2px;}
.section .sec_inner .product_container a .product_info li:last-child p.info_type{padding-bottom:0;}

/* more btn */
.section .sec_inner .btn_area{clear:both; text-align:center; margin-top:60px;}
.section .sec_inner .btn_area .btn_more{display: inline-block; padding: 14px 0 18px; width: 160px; border: solid 1px #222;
    transition:all 0.3s;
    -webkit-transition:all 0.3s;
}
.section .sec_inner .btn_area .btn_more div{display: inline-block; margin-left: 8px; position: relative; width: 13px; height: 13px;}
.section .sec_inner .btn_area .btn_more div span{position: absolute; display: block; background: #222;
    transform:rotate(0deg);
    -webkit-transform:rotate(0deg);
    -ms-transform:rotate(0deg);
    transition:transform 0.3s;
    -webkit-transition:transform 0.3s;
}
.section .sec_inner .btn_area .btn_more div span:first-child{top: 6px; left: 0; width:100%; height:1px;}
.section .sec_inner .btn_area .btn_more div span:last-child{top:0; left:6px; width:1px; height:100%;}
.section .sec_inner .btn_area *{transition:all 0.3s; -webkit-transition:all 0.3s;}
.section .sec_inner .btn_area .btn_more:hover{background-color:#007acc; border-color:#007acc;}
.section .sec_inner .btn_area .btn_more:hover > span{color:#fff;}
.section .sec_inner .btn_area .btn_more:hover div span{background-color:#fff;
    transform:rotate(180deg);
    -webkit-transform:rotate(180deg);
    -ms-transform:rotate(180deg);
}
.section .sec_inner .product_container a:before {content: '';position: absolute; width: calc(100% + 2px); height:100%; left: -1px; top: 0; border: 2px solid #007acc; box-sizing: border-box; opacity: 0;
    transition:opacity 0.3s;
    -webkit-transition:opacity 0.3s;
}
.section .sec_inner .product_container:hover a:before{opacity:1;}


.section.engine_filter .sec_inner + .sec_inner{margin-top:20px;}
.section .sec_inner .filter-button{position:absolute; top:-57px; right:0; display:flex; align-items: center; padding:9px 20px; border:1px solid #000; border-radius:30px; background:#fff; font-size:14px; font-weight:400; color:#000; cursor:pointer;}
.section .sec_inner .filter-button::before{ 
	display: inline-block;
    content: '';
    width: 15px;
    height: 15px;
    margin-right:8px;
    background: url(../../../img/common/icon/icon-setting.svg) no-repeat;
    background-size: cover;}
.section .sec_inner .filter-button:after {
    display: inline-block;
    content: '';
    width: 7px;
    height: 11px;
    margin-left:30px;
    background: url(../../../img/engine/btn_go_black.png) no-repeat;
    background-size: contain;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
	transform: rotate(90deg);
}
.section .sec_inner .filter-button.on:after{transform: rotate(270deg);}
.filter-area{display:flex; flex-wrap:wrap; gap:10px;}
.filter-area .filter-box{width:calc(50% - 5px); padding:25px 45px; border:1px solid #E0E0E0; border-radius:15px; text-align:left;}
.filter-area .filter-box.wide{width:100%;}
.filter-area .filter-box p{margin-bottom:20px;}
.filter-area .filter-box .flex{display:flex; flex-wrap:wrap; gap:15px; }
.filter-area .filter-box .flex div{flex:0 0 calc((100% - 75px) / 6);}
.filter-area .filter-box .flex h4{position:relative; margin-bottom:10px; padding-bottom:10px; border-bottom:1px solid #000; cursor:pointer;}
.filter-area .filter-box .flex h4::after{position:absolute; top:25%; right:0; display: inline-block;
    content: '';
    width: 6px;
    height: 12px;
    background: url(../../../img/engine/btn_go_black.png) no-repeat;
    background-size: contain;
    transition: all 0.3s;
    -webkit-transition: all 0.3s; 
    transform: rotate(90deg);}
.filter-area .filter-box .flex h4.on::after{ transform: rotate(270deg);}
.filter-area .filter-box ul{display:flex; flex-wrap:wrap; gap:10px 0;}
.filter-area .filter-box ul li{flex:0 0 100%; position:relative; display:inline-flex; align-items:self-start; gap:10px;}
.filter-area .filter-box .all-ck{position:relative; display:inline-flex; align-items:center; gap:10px;}
.filter-area .filter-box .all-ck input[type=checkbox],
.filter-area .filter-box ul li input[type=checkbox]{appearance: none; box-sizing:border-box; background-clip: content-box; position:relative; top:2px; padding:5px; width:20px; aspect-ratio: 1 / 1; border:1px solid #333; cursor:pointer;}
.filter-area .filter-box .all-ck input:checked + label::before,
.filter-area .filter-box ul li input:checked + label::before{content:''; position:absolute; top:7px; left:5px; display:inline-block; width:10px; aspect-ratio: 1 / 1; background:#007ACC;}
.filter-area .filter-box .all-ck label,
.filter-area .filter-box ul li label{font-size:14px;}
.filter-area .filter-box .tit{display:flex; gap:20px; align-items:center; margin-bottom:20px;}
.filter-area .filter-box .tit p{margin-bottom:0;}

/*추가*/
.filter-area .filter-box .flex.type02{margin-bottom:30px;}
.filter-area .filter-box .flex.type02 div{flex:0 0 100%;}
.filter-area .filter-box .flex.type02 h4::after{display:none;}
.filter-area .filter-box .flex.type02 ul li{flex:0 0 calc((100% - 75px) / 8);}

.filter-area .noUi-horizontal{height:1px;}
.filter-area .noUi-target{background:#ddd; border:none; border-radius:0; box-shadow:none; margin-bottom:17px;}
.filter-area .noUi-connects{border-radius:0; overflow:visible;}
.filter-area .noUi-connects:before,
.filter-area .noUi-connects:after{content: '' ; position:absolute; top:-6px; display:block; width:11px; height:11px; border:3px solid #ddd; background:#fff; border-radius:50%; box-sizing:border-box;}
.filter-area .noUi-connects:after{right:0;}
.filter-area .noUi-connect{background:#000;}
.filter-area .noUi-horizontal .noUi-handle{width:11px; height:11px; right:-11px;}
.filter-area .noUi-horizontal .noUi-handle.noUi-handle-upper{right: 0;}
.filter-area .noUi-handle{box-shadow:none; border:3px solid #000; border-radius:50%;}
.filter-area .noUi-handle:after, .filter-area .noUi-handle:before{display:none;}

.filter-box .input-area {display:flex; flex-wrap: wrap; align-items:center; justify-content:space-between;}
.filter-box .input-area .input-box{width:calc(50% - 10px); padding:0 15px; border:1px solid #E0E0E0; border-radius:100px;}
.filter-box .input-area .input-box input{width:100%; max-width:135px; font-size:12px; line-height:30px; outline:0;}
.filter-box .input-area .input-box label{font-size: 11px; color:#666; line-height:30px;}

/*----------------------------- Labtop -----------------------------*/
@media all and (max-width:1280px){

    .contents_inner .section, .contents_inner .section_top {margin: 0 36px; }
    .filter-area .filter-box .flex div{flex:0 0 calc((100% - 30px) / 3);}
}

/*----------------------------- Tablet -----------------------------*/
@media all and (max-width:1080px){

    .contents_inner .section, .contents_inner .section_top {margin: 0 50px;}

    /* filter */
    .section.engine_filter{padding:30px 0 0;}
    .section.engine_filter .sec_inner .filter_type,.section.engine_filter .sec_inner .filter_btn_area{font-size:16px;}

    /* product-list */
    .section.engine_product-list{padding-top:60px;}
    .section .sec_inner .product_container{ width:50%;}
    .section .sec_inner .product_container:nth-of-type(2n):before,.section .sec_inner .product_container:nth-of-type(3n):before{width:100%;}
    .section .sec_inner .product_container:nth-of-type(2n - 1):before{width:calc(100% + 1px);}
    .section .sec_inner .product_container:last-child:before{width:100%;}
    .section .sec_inner .product_container a{position:relative; padding:24px; max-width:inherit; height:368px;}
    .section .sec_inner .product_container a p.product_name{font-size:20px;}
    .section .sec_inner .product_container a .product_info li p{font-size:13px; line-height:18px;}
    .container.subNavi_engine_generator .section .sec_inner .product_container a{height:346px;}

    /* more btn */
    .section .sec_inner .btn_area .btn_more{width:130px;}
    
}

/*----------------------------- Mobile -----------------------------*/
@media all and (max-width:766px){

    /* layout */
    .contents_inner .section, .contents_inner .section_top {margin: 0 20px;}
    .section.engine_product-list{padding-top:45px;}
    .section .sec_inner .btn_area{margin-top:30px;}

    /* filter */
    .section.engine_filter{padding:0;}
    .section.engine_filter .sec_inner .filter_type{display:none;}
    .section.engine_filter .sec_inner .filter_btn_area{width:100%; font-size:15px;}
    .section.engine_filter .sec_inner .filter_btn_area a{width:calc(50% - 5px); padding:25px 0; margin:0 5px 15px;}
    .section.engine_filter .sec_inner .filter_btn_area a:nth-child(2n -1){margin-left:0;}
    .section.engine_filter .sec_inner .filter_btn_area a:nth-child(2n){margin-right:0;}


    /* product-list */
    .section .sec_inner .product_container, .section.engine_product-list .sec_inner .product_container:before{width:100%;}
    .section .sec_inner .product_container a{box-sizing:border-box; width:calc(100% - 1px); max-width:inherit; height:436px; padding:24px 20px 26px;}
    .section .sec_inner .product_container a p.product_name{font-size:22px;}
    .section .sec_inner .product_container a .product_info li p{font-size:15px; line-height:23px;}
    .container.subNavi_engine_generator .section .sec_inner .product_container a {height: 409px;}

    .container.subNavi_engine_generator .section .sec_inner .product_container a{height:436px;}

    /* more btn */
    .section .sec_inner .btn_area .btn_more{width:110px; padding:12px 16px;}
    
    
    .section .sec_inner .filter-button{position:relative; top:0; width:100%; display: inline-block;}
    .section.engine_filter .sec_inner + .sec_inner{margin-top:0;}
    .filter-area .filter-box{padding:25px; width:100%;}
    .filter-area .filter-box:first-child{margin-top:20px;}
    .filter-area .filter-box ul li{flex:0 0 calc(100%/2);}
    .filter-box .input-area .input-box input{width:65%;}
    
    .filter-area .filter-box .flex div {flex: 0 0 100%;}
    
    /*추가*/
    .filter-area .filter-box .flex.type02{margin-bottom:0;}
    .filter-area .filter-box .flex.type02 ul li{flex:0 0 calc(100%/2);}
}