@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');
/* * {outline: 1px solid #f00;} */


#wrap {min-width: 1200px;}


/* top_banner */
#top_banner {background: #333;}
#top_banner .container {position: relative; width: 1200px; margin: 0 auto; padding: 0 15px; text-align: center;  color: #fff;}
#top_banner h2 {font-weight: 300; letter-spacing: -0.025em; line-height: 50px;}
#top_banner strong {font-size: 20px;}
#top_banner a {font-size: 14px; font-weight: 100;}
#top_banner i {position: absolute; top: 20px; right: 15px;}


@media (max-width:768px) {
    #wrap {min-width: auto; overflow-x: hidden;}
    #top_banner {display: none; background: #333;}
    #top_banner .container {position: relative; width: 1200px; margin: 0 auto; padding: 0 15px; text-align: center;  color: #fff;}
    #top_banner h2 {font-weight: 300; letter-spacing: -0.025em; line-height: 50px;}
    #top_banner strong {font-size: 20px;}
    #top_banner a {font-size: 14px; font-weight: 100;}
    #top_banner i {position: absolute; top: 10px; right: 15px;}

}


/* header */

#header {position: relative; line-height: 100px; background: #fff;}
#header .container {display: flex; width: 1200px; margin: 0 auto; justify-content: space-between; padding: 0 15px;}
#header h2 {}
#header .search i {padding: 5px; color: #333;}

.gnb .depth01 {display: flex;}
.gnb .depth01>li {position: relative;}
.gnb .depth01>li>a {display: block; width: 145px; text-align: center; color: #333;}


.gnb .depth02 {height: 0; overflow: hidden; position: absolute; top: 100px; left: 0; width: 100%; transition: 0.5s; z-index: 999;}

.gnb:hover .depth02 {height: 330px; margin-top: 10px;}
.gnb::before {content: ""; display: block; width: 100%; height: 0; background: rgba(255,255,255,0.9); position: absolute; top: 93px; left: 0; margin-top: 10px; transition: 0.5s; z-index: 999;}
.gnb:hover:before {height: 330px;}

.gnb .depth02>li>a {display: block; line-height: 25px; text-align: center; padding: 5px 0; width: 100%; font-size: 14px; font-weight: 300; color: #222; letter-spacing: -0.025em;}
.gnb .depth02>li>a::after {content: ""; display: block; width: 0; height: 3px; background: rgb(134, 133, 133); transition: 0.3s;
margin: 0.2rem auto 0 auto;}
.gnb .depth02>li>a:hover:after {width: 70%;}

.gnb .depth02>li>a>i {font-size: 20px;}


.mopen {display: none;}




/* 반응형 header */

@media (max-width:768px) {
    #header {position: relative; line-height: 100px; background: #fff;}
    #header .container {display: flex; width: auto; margin: 0 auto; justify-content: space-between; padding: 0 15px;}
    #header .search {display: none;}
    #header .search i {padding: 5px; color: #333;}
    #header h1 {padding: 0 15px; z-index: 1000;}
    
    
    
    .gnb {position: fixed; top: 0; left: -100%; width: calc(100% - 90px); height: 100vh; background: #fff; padding: 100px 0 0 0; border-right: 1px solid #ddd; transition: 0.5s; z-index: 999;}
    .gnb.on {left: 0;}
    .gnb .depth01 {display: flex; flex-direction: column; line-height: 50px;}
    .gnb .depth01>li {position: relative;}
    .gnb .depth01>li>a {display: block; width: 130px; text-align: center; margin: 0 auto; color: #333;}
    .gnb .depth01>li~li {border-top: 1px solid #ddd;}
    
    
    .gnb .depth02 {display: none; overflow: hidden; position: static; top: 0; left: 0; width: 100%; transition: none; color: #f2f2f2; z-index: 999;}
    
    .gnb:hover .depth02 {display: none; height: auto; margin: 0;}
    .gnb::before {content: ""; display: none; width: 100%; background: #f2f2f2; position: absolute; top: 100px; left: 0; margin-top: 10px; transition: 0.5s; z-index: 999;}
    .gnb:hover:before {height: auto;}
    
    .gnb .depth02>li>a {display: block; line-height: 25px; text-align: center; padding: 5px 0; width: 100%; font-size: 14px; font-weight: 300; color: #222; letter-spacing: -0.025em;}
    .gnb .depth02>li>a::after {display: none;}
    .gnb .depth02>li>a:hover:after {display: none;}
    
    
    .mopen {display: block; position: fixed;  color: #333; top: 30px; right: 30px; font-size: 30px; background: #ddd; padding: 5px; border-radius: 50%; line-height: 1; transition: 0.5s;
    z-index: 999;}
}



/* #main_visual */

#main_visual {position: relative;}
#main_visual figure {height: 700px; position: relative;}
#main_visual figure::after {content: ""; display: block; width: 100%; height: 700px; background: rgba(0,0,0,0.3); position: absolute;
top: 0; left: 0;}
#main_visual .itm01 {background: url(../img/main_slider01.jpg) no-repeat center center/cover;}
#main_visual .itm02 {background: url(../img/main_slider02.jpg) no-repeat center center/cover;}
#main_visual .itm03 {background: url(../img/main_slider04.jpg) no-repeat center center/cover;}

#main_visual .slg {position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 1200px; padding: 0 15px; color: #fff; text-align: center; z-index: 999;}


#main_visual figure .slg h2 {text-align: center; letter-spacing: -0.025em; font-size: 20px; font-weight: 300; opacity: 0; transform: translateY(100px); position: relative;
margin-bottom: 30px;}
#main_visual figure.on .slg h2 {opacity: 1; transform: translateY(0px); transition: 0.5s;}
/* #main_visual figure .slg h2::after {content: ""; display: block; width: 50px; height: 4px; background: #fff;
margin: 15px auto;} */




#main_visual figure .slg p {font-family: 'Montserrat', sans-serif; line-height: 35px; font-style: italic; letter-spacing: 0.2em; font-size: 80px; font-weight: 700; opacity: 0; transform: translateY(100px);
margin-bottom: 55px;}
#main_visual figure.on .slg p {opacity: 1; transform: translateY(0px); transition: 0.5s;}


#main_visual figure .slg a {display: block; border: 1px solid #fff; width: 150px; margin: 0 auto; font-family: 'Montserrat', sans-serif; line-height: 33px; font-weight: 300; opacity: 0; transform: translateY(100px);
border-radius: 10px;}
#main_visual figure.on .slg a {opacity: 1; transform: translateY(0px); transition: 0.5s 0.5s;}



#main_visual span {display: block; width: 30px; height: 30px; border-top: 1px solid #fff; border-left: 1px solid #fff; position: absolute; top: 50%; left: 50%;}
#main_visual span.left {transform: translate(-50%,-50%) rotate(-45deg); margin-left: -900px;}
#main_visual span.right {transform: translate(-50%,-50%) rotate(135deg); margin-left: 900px;}


/* 반응형 #main_visual */

@media (max-width:768px) {
      
    #main_visual {position: relative;}
    #main_visual figure {height: 100vh; position: relative;}
    #main_visual figure::after {content: ""; display: block; width: 100%; height: 100vh; background: rgba(0,0,0,0.3); position: absolute;
    top: 0; left: 0;}
    #main_visual .itm01 {background: url(../img/main_slider01.jpg) no-repeat center center/cover;}
    #main_visual .itm02 {background: url(../img/main_slider02.jpg) no-repeat center center/cover;}
    #main_visual .itm03 {background: url(../img/main_slider04.jpg) no-repeat center center/cover;}

    #main_visual .slg {position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 1200px; padding: 0 15px; color: #fff; text-align: center; z-index: 999;}

       
    #main_visual figure .slg h2 {text-align: center; letter-spacing: -0.025em; font-size: 4vw; font-weight: 300; opacity: 0; transform: translateY(100px); position: relative;
    margin-bottom: 10px;}
    #main_visual figure.on .slg h2 {opacity: 1; transform: translateY(0px); transition: 0.5s;}
    #main_visual figure .slg h2::before {content: ""; display: block; width: 35px; height: 4px; background: #fff;
    margin: 20px auto;}
    
    
    
    #main_visual figure .slg p {font-family: 'Montserrat', sans-serif; line-height: 33px; font-style: italic; letter-spacing: 0.2em; font-size: 8.5vw; font-weight: 700; opacity: 0; transform: translateY(100px);
    margin-bottom: 20px;}
    #main_visual figure.on .slg p {opacity: 1; transform: translateY(0px); transition: 0.5s;}
    
    
    #main_visual figure .slg a {display: block; border: 1px solid #fff; width: 150px; margin: 0 auto; font-family: 'Montserrat', sans-serif; line-height: 33px; font-weight: 300; opacity: 0; transform: translateY(100px);
    border-radius: 10px;}
    #main_visual figure.on .slg a {opacity: 1; transform: translateY(0px); transition: 0.5s 0.5s;}
    

    #main_visual span {display: block; width: 15px; height: 15px; border-top: 1px solid #777; border-left: 1px solid #777; position: absolute; top: 50%; left: 50%;}
    #main_visual span.left {transform: translate(-50%,-50%) rotate(-45deg); margin-left: -160px;}
    #main_visual span.right {transform: translate(-50%,-50%) rotate(135deg); margin-left: 160px;}
}


/* #cont01 */
#cont01 {padding: 150px 0; text-align: center;}
#cont01 h2 {font-family: 'Montserrat', sans-serif; font-size: 37px; margin-bottom: 10px; font-weight: 400;}
#cont01 strong {font-family: 'Montserrat', sans-serif; display: block; font-size: 18px; font-weight: 300; margin-bottom: 20px; letter-spacing: 0.35em; font-style: italic;}
#cont01 p {font-family: 'Noto Sans KR'; font-size: 18px; font-weight: 300; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 30px;}
#cont01 .container {margin: 0 auto; width: 1200px;}
#cont01 .case {position: relative; padding: 0 15px; width: 1200px;}
#cont01 .case .str_wrap {}


#cont01 .img01 {position: absolute; top: 400px; left: 100px; display: flex; z-index: 1;}
#cont01 .img01::after {content: ""; width: 450px; height: 300px; border: 1px solid #999; position: absolute; top: -15px; left: 15px;
z-index: -1;}
 

#cont01 .con01 {position: absolute; top: 18%; left: 800px; border: 1px solid #ddd; text-align: center;}
#cont01 .con01::after {content: ""; display: block; width: 260px; height: 1px; background: #666; position: absolute; top: 30px; left: -255px;}
#cont01 .con01 .sub01 {width: 440px; background: #fff; padding: 30px 20px; position: relative; z-index: 1;}
#cont01 .con01 .sub01 span {position: absolute; top: -60px; right: 10px; width: 100px; height: 100px; font-size: 55px; font-weight: 700; background: #333; color: #fff; border-radius: 50%;
padding: 20px;}
#cont01 .con01 .sub01 h3 {font-size: 25px; font-weight: 500; margin: 20px 0 20px 0;}
#cont01 .con01 .sub01 p {font-family: 'Noto Sans KR'; font-size: 17px; font-weight: 300; color: #666; letter-spacing: -0.025em; line-height: 1.5;
margin-bottom: 20px;}




#cont01 .case .img02 {position: absolute; top: 35%; left: 830px; display: flex; z-index: 1;}
#cont01 .case .img02::after {content: ""; width: 450px; height: 300px; border: 1px solid #999; position: absolute; top: -15px; left: 15px;
z-index: -1;}
#cont01 .con02 {position: absolute; top: 37%; left: 100px; border: 1px solid #ddd; text-align: center;}

#cont01 .con02::before {content: ""; display: block; width: 300px; height: 1px; background: #666; position: absolute; top: 30px; right: -300px;}
#cont01 .con02 .sub01 {width: 440px; background: #fff; padding: 30px 20px; position: relative; z-index: 1;}
#cont01 .con02 .sub01 span {position: absolute; top: -60px; left: 10px; width: 100px; height: 100px; font-size: 55px; font-weight: 700; background: #333; color: #fff; border-radius: 50%;
padding: 20px 15px 0 15px;}
#cont01 .con02 .sub01 h3 {font-size: 25px; font-weight: 500; margin: 20px 0 20px 0;}
#cont01 .con02 .sub01 p {font-family: 'Noto Sans KR'; font-size: 17px; font-weight: 300; color: #666; letter-spacing: -0.025em; line-height: 1.5;
margin-bottom: 20px;}




#cont01 .case .img03 {position: absolute; top: 1350px; left: -60px; display: flex; z-index: 1;}
#cont01 .case .img03::after {content: ""; width: 450px; height: 300px; border: 1px solid #999; position: absolute; top: -15px; left: 15px;
z-index: -1;}
 
#cont01 .con03 {position: absolute; top: 1400px; left: 650px; border: 1px solid #ddd; text-align: center;}

#cont01 .con03::before {content: ""; display: block; width: 270px; height: 1px; background: #666; position: absolute; top: 30px; left: -265px;}
#cont01 .con03 .sub01 {width: 440px; background: #fff; padding: 30px 20px; position: relative; z-index: 1;}
#cont01 .con03 .sub01 span {position: absolute; top: -60px; right: 10px; width: 100px; height: 100px; font-size: 55px; font-weight: 700; background: #333; color: #fff; border-radius: 50%;
padding: 20px 15px 0 15px;}
#cont01 .con03 .sub01 h3 {font-size: 25px; font-weight: 500; margin: 20px 0 20px 0;}
#cont01 .con03 .sub01 p {font-family: 'Noto Sans KR'; font-size: 17px; font-weight: 300; color: #666; letter-spacing: -0.025em; line-height: 1.5;
margin-bottom: 20px;}




#cont01 .case .img04 {position: absolute; top: 72%; left: 750px; display: flex; z-index: 1;}
#cont01 .case .img04::after {content: ""; width: 450px; height: 300px; border: 1px solid #999; position: absolute; top: -15px; left: 15px;
z-index: -1;}
#cont01 .con04 {position: absolute; top: 75%; left: -30px; border: 1px solid #ddd; text-align: center;}

#cont01 .con04::before {content: ""; display: block; width: 340px; height: 1px; background: #666; position: absolute; top: 30px; right: -340px;}
#cont01 .con04 .sub01 {width: 440px; background: #fff; padding: 30px 20px; position: relative; z-index: 1;}
#cont01 .con04 .sub01 span {position: absolute; top: -60px; left: 10px; width: 100px; height: 100px; font-size: 55px; font-weight: 700; background: #333; color: #fff; border-radius: 50%;
padding: 20px 15px 0 15px;}
#cont01 .con04 .sub01 h3 {font-size: 25px; font-weight: 500; margin: 20px 0 20px 0;}
#cont01 .con04 .sub01 p {font-family: 'Noto Sans KR'; font-size: 17px; font-weight: 300; color: #666; letter-spacing: -0.025em; line-height: 1.5;
margin-bottom: 20px;}




/* 반응형 #cont01 */
@media (max-width:768px) {
    #cont01 {padding: 100px 0; font-family: 'Montserrat', sans-serif; text-align: center;}
    #cont01 h2 {font-size: 8vw; margin-bottom: 10px; font-weight: 400;}
    #cont01 strong {display: block; font-size: 4.2vw; font-family: 'Open Sans', sans-serif; font-weight: 200; margin-bottom: 20px; letter-spacing: 0.35em; font-style: italic;}
    #cont01 p {font-family: 'Noto Sans KR'; font-size: 4.2vw; padding: 0 15px; font-weight: 300; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 30px;}
    #cont01 .container {margin: 0 auto; width: auto;}
   
    #cont01 .case {position: relative; width: auto; padding: 0 15px;}
    #cont01 .case .path {width: 100%;}
    #cont01 .case .img01 {position: absolute; top: 12%; left: 46%; transform: translateX(-50%); width: 250px; height: 200px; margin: 0 auto; z-index: 1;}
    #cont01 .case .img01::after {content: ""; width: 300px; height: 200px; border: 1px solid #999; position: absolute; top: -10px; left: 10px;
    z-index: -1;}
     
    
    #cont01 .con01 {position: absolute; top: 20%; left: 50%; transform: translateX(-50%); border: 1px solid #ddd; text-align: center; z-index: 1;}
    #cont01 .con01::after {display: none;}
    #cont01 .con01 .sub01 {position: relative; width: 250px; background: #fff; padding: 15px;}
    #cont01 .con01 .sub01 span {position: absolute; top: -45px; right: 10px; width: 70px; height: 70px; font-size: 30px; font-weight: 700; background: #333; color: #fff; border-radius: 50%;
    padding: 20px;}
    #cont01 .con01 .sub01 h3 {font-size: 4.5vw; font-weight: 500; margin: 20px 0 15px 0;}
    #cont01 .con01 .sub01 p {font-family: 'Noto Sans KR'; font-size: 3.7vw; font-weight: 300; color: #666; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 0;}
    
    
    #cont01 .case .img02 {position: absolute; top: 32%; left: 39%; transform: translateX(-50%); width: 250px; height: 200px;}
    #cont01 .case .img02::after {content: ""; width: 300px; height: 200px; border: 1px solid #999; position: absolute; top: -10px; left: 10px; z-index: -1;}

    #cont01 .con02 {position: absolute; top: 40%; left: 61%; transform: translateX(-50%); border: 1px solid #ddd; text-align: center; z-index: 11;}
    #cont01 .con02::before {display: none;}
    #cont01 .con02 .sub01 {position: relative; width: 250px; background: #fff; padding: 15px;}
    #cont01 .con02 .sub01 span {position: absolute; top: -45px; left: 10px; width: 70px; height: 70px; font-size: 30px; font-weight: 700; background: #333; color: #fff; border-radius: 50%;
    padding: 20px 15px 0 15px;}
    #cont01 .con02 .sub01 h3 {font-size: 4.5vw; font-weight: 500; margin: 20px 0 15px 0;}
    #cont01 .con02 .sub01 p {font-family: 'Noto Sans KR'; font-size: 3.7vw; font-weight: 300; color: #666; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 0;}

    
    #cont01 .case .img03 {position: absolute; top: 52%; left: 46%; transform: translateX(-50%); width: 250px; height: 200px;}
    #cont01 .case .img03::after {content: ""; width: 300px; height: 200px; border: 1px solid #999; position: absolute; top: -10px; left: 10px;
    z-index: -1;}
    #cont01 .con03 {position: absolute; top: 60%; left: 39%; transform: translateX(-50%); border: 1px solid #ddd; text-align: center; z-index: 11;}
    #cont01 .con03::before {display: none;}
    #cont01 .con03 .sub01 {position: relative; width: 250px; background: #fff; padding: 15px;}
    #cont01 .con03 .sub01 span {position: absolute; top: -45px; right: 10px; width: 70px; height: 70px; font-size: 30px; font-weight: 700; background: #333; color: #fff; border-radius: 50%;
    padding: 20px 15px 0 15px;}
    #cont01 .con03 .sub01 h3 {font-size: 4.5vw; font-weight: 500; margin: 20px 0 15px 0;}
    #cont01 .con03 .sub01 p {font-family: 'Noto Sans KR'; font-size: 3.7vw; font-weight: 300; color: #666; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 0;}
    

    #cont01 .case .img04 {position: absolute; top: 74%; left: 39%; transform: translateX(-50%); width: 250px; height: 200px;}
    #cont01 .case .img04::after {content: ""; width: 300px; height: 200px; border: 1px solid #999; position: absolute; top: -10px; left: 10px;
    z-index: -1;}

    #cont01 .con04 {position: absolute; top: 82%; left: 60%; transform: translateX(-50%);border: 1px solid #ddd; text-align: center; z-index: 11;}
    #cont01 .con04::before {display: none;}
    #cont01 .con04 .sub01 {position: relative; width: 250px; background: #fff; padding: 15px;}
    #cont01 .con04 .sub01 span {position: absolute; top: -45px; left: 10px; width: 70px; height: 70px; font-size: 30px; font-weight: 700; background: #333; color: #fff; border-radius: 50%;
    padding: 20px 15px 0 15px;}
    #cont01 .con04 .sub01 h3 {font-size: 4.5vw; font-weight: 500; margin: 20px 0 15px 0;}
    #cont01 .con04 .sub01 p {font-family: 'Noto Sans KR'; font-size: 3.7vw; font-weight: 300; color: #666; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 0;}
}


/* #cont02 */
#cont02 {padding: 150px 0; text-align: center; background: #e6e6e6 url(../img/ban01.jpg);}
#cont02 h2 {font-family: 'Montserrat', sans-serif; font-size: 37px; margin-bottom: 10px; font-weight: 400; margin-bottom: 20px;}
#cont02 p {font-family: 'Noto Sans KR'; font-size: 18px; font-weight: 300; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 50px;}
#cont02 .container {width: 1200px; margin: 0 auto;}
#cont02 .brand_name {display: flex; justify-content: center; margin: 0 0 30px 0;}
#cont02 .brand_name li {padding: 0 20px;}
#cont02 .brand_name li::after {content: ""; display: block; width: 0; height: 3px; background: rgb(98, 98, 98); transition: 0.3s;
margin: 0.5rem auto 0 auto;}
#cont02 .brand_name li.on::after {width: 100%;}

#cont02 .brand_wrap {display: flex; flex-flow: column wrap; height: 500px;}
#cont02 .brand_wrap .item01 {height: 500px; width: 50%;}
#cont02 .brand_wrap .item02 {height: 250px; width: 50%;}
#cont02 .brand_wrap .item03 {height: 250px; width: 50%;} 

#cont02 .item01 figure {height: 500px; padding: 50px 25px 0 30px;}
#cont02 .item02 figure {height: 250px; padding: 90px 20px 0 300px;}
#cont02 .item03 figure {height: 250px; padding: 90px 20px 0 300px;}

#cont02 figure {color: #333; background-position: center center; background-repeat: no-repeat; background-size: cover;}

#cont02 .item01 .cn01 {background-image: url(../img/pr_a01.jpg);}
#cont02 .item01 .cn02 {background-image: url(../img/pr_b01.jpg);}
#cont02 .item01 .cn03 {background-image: url(../img/pr_c01.jpg);}
#cont02 .item01 .cn04 {background-image: url(../img/pr_d01.jpg);}

#cont02 .item02 .cn01 {background-image: url(../img/pr_a02.jpg);}
#cont02 .item02 .cn02 {background-image: url(../img/pr_b02.jpg);}
#cont02 .item02 .cn03 {background-image: url(../img/pr_c02.jpg);}
#cont02 .item02 .cn04 {background-image: url(../img/pr_d02.jpg);}



#cont02 .item03 .cn01 {background-image: url(../img/pr_a03.jpg);}
#cont02 .item03 .cn02 {background-image: url(../img/pr_b03.jpg);}
#cont02 .item03 .cn03 {background-image: url(../img/pr_c03.jpg);}
#cont02 .item03 .cn04 {background-image: url(../img/pr_d03.jpg);}


#cont02 figure h3 {font-size: 28px; font-weight: 700; margin-bottom: 10px;}
#cont02 figure p {font-size: 17px; font-weight: 300;}



/* 반응형 #cont02 */
@media (max-width:768px) {
    #cont02 {padding: 100px 0; text-align: center; background: url(../img/ban01.jpg) center center/cover;}
    #cont02 h2 {font-family: 'Montserrat', sans-serif; font-size: 7vw; margin-bottom: 10px; font-weight: 400; margin-bottom: 20px;}
    #cont02 p {font-family: 'Noto Sans KR'; font-size: 4.2vw; font-weight: 300; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 50px;}
    #cont02 .container {width: auto; margin: 0 auto; padding: 0 15px;}
    #cont02 .brand_name {display: flex; justify-content: center; margin: 0 0 30px 0;}
    #cont02 .brand_name li {padding: 0 12px;}
    #cont02 .brand_name li::after {content: ""; display: block; width: 0; height: 3px; background: rgb(98, 98, 98); transition: 0.3s;
    margin: 0.5rem auto 0 auto;}
    #cont02 .brand_name li.on::after {width: 100%;}
    #cont02 .brand_name li a {font-size: 3.8vw;}
    
    #cont02 .brand_wrap {display: flex; flex-flow: row wrap; height: auto;}
    #cont02 .brand_wrap .item01 {height: 500px; width: 100%;}
    #cont02 .brand_wrap .item02 {height: 250px; width: 100%;}
    #cont02 .brand_wrap .item03 {height: 250px; width: 100%;} 
    
    #cont02 .item01 figure {height: 500px; padding: 80px 25px 0 30px;}
    #cont02 .item02 figure {height: 250px; padding: 0 0 0 0}
    #cont02 .item03 figure {height: 250px; padding: 0 0 0 0;}
    
    #cont02 figure {color: #333; background-position: center center; background-repeat: no-repeat; background-size: cover;}
    

    #cont02 .item01 {}
    #cont02 .item01 .cn01 {background-image: url(../img/m_pr_a01.jpg);}
    #cont02 .item01 .cn02 {background-image: url(../img/m_pr_b01.jpg);}
    #cont02 .item01 .cn03 {background-image: url(../img/m_pr_c01.jpg);}
    #cont02 .item01 .cn04 {background-image: url(../img/m_pr_d01.jpg);}
    

    #cont02 .item02 {}
    #cont02 .item02 .cn01 {background-image: url(../img/m_pr_a02.jpg);}
    #cont02 .item02 .cn02 {background-image: url(../img/m_pr_b02.jpg);}
    #cont02 .item02 .cn03 {background-image: url(../img/m_pr_c02.jpg);}
    #cont02 .item02 .cn04 {background-image: url(../img/m_pr_d02.jpg);}
    
    
    #cont02 .item03 {}
    #cont02 .item03 .cn01 {background-image: url(../img/m_pr_a03.jpg);}
    #cont02 .item03 .cn02 {background-image: url(../img/m_pr_b03.jpg);}
    #cont02 .item03 .cn03 {background-image: url(../img/m_pr_c03.jpg);}
    #cont02 .item03 .cn04 {background-image: url(../img/m_pr_d03.jpg);}
    
    
    #cont02 figure h3 {font-size: 6.2vw; font-weight: 700; margin-bottom: 10px;}
    #cont02 figure p {font-size: 4vw; font-weight: 300; line-height: 1.2;}

}


/* #cont03  */
#cont03 {padding: 150px 0; text-align: center;}
#cont03 h2 {font-family: 'Montserrat', sans-serif; font-size: 37px; margin-bottom: 50px; font-weight: 400;}
#cont03 .container {width: 100%; min-width: 1900px; margin: 0 auto; padding: 0 15px;}

#cont03 .case {margin: 0 10px;}
#cont03 figure img {width: 100%;}

#cont03 .box {width: 100%; height: 300px; position: relative;}
#cont03 .box .pr {width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0;}


#cont03 .more {display: block; border: 1px solid #333; width: 250px; margin: 40px auto; font-family: 'Montserrat', sans-serif; font-size: 15px; font-weight: 300; letter-spacing: 0.3em; font-style: italic;
line-height: 2; padding-top: 5px;}
#cont03 .more::after {content: ""; display: block; width: 0; height: 4px; background: rgb(128, 128, 128); transition: 0.3s;}
#cont03 .more:hover:after {width: 100%;}


/* 반응형 #cont03  */

@media (max-width:768px) {
    #cont03 {padding: 100px 0; text-align: center;}
    #cont03 h2 {font-family: 'Montserrat', sans-serif; font-size: 7vw; margin-bottom: 50px; font-weight: 400;}
    #cont03 .container {width: auto; min-width: auto; margin: 0 auto; padding: 0 15px;}
    
    #cont03 .case {margin: 0 10px;}
    #cont03 .case img {max-width: 100%; margin: 0 auto;}
    
    #cont03 .box {position: relative; width: 100%; height: 100%;}
    #cont03 .box .pr {position: absolute; display: block; top: 0; left: 0; width: 100%; height: 100%;}
    
    #cont03 .more {display: block; border: 1px solid #333; width: 60vw; margin: 30px auto; font-size: 3.5vw; font-family: 'Montserrat', sans-serif; font-weight: 300; margin-bottom: 20px; letter-spacing: 0.3em; font-style: italic;
    line-height: 2; padding-top: 0;}
    #cont03 .more::after {content: ""; display: none; width: 0; height: 4px; background: rgb(128, 128, 128); transition: 0.3s;}
  
}



/* #cont04  */
#cont04 {padding: 150px 0; text-align: center; background: #f7f7f7;}
#cont04 h2 {font-family: 'Montserrat', sans-serif; font-size: 37px; margin-bottom: 10px; font-weight: 400; margin-bottom: 20px;}
#cont04 p {font-family: 'Noto Sans KR'; font-size: 18px; font-weight: 300; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 50px;}
#cont04 .container {width: 100%; max-width: 1700px; margin: 0 auto;}
#cont04 .case {position: relative; margin: 70px 0 0 0;}

#cont04 strong {display: block; font-family: 'Montserrat', sans-serif; font-size: 20px; font-weight: 500; letter-spacing: 0.35em; text-align: left; line-height: 2; margin-left: 75px;}
#cont04  strong::after {content: ""; display: inline-block; width: 30px; height: 30px; vertical-align: middle; background: url(../img/icon.png);
margin: 0 0 3px 5px; animation: bounce 2s infinite;}
    

#cont04 .intro_slider {width: 550px; height: 550px; padding: 0 1rem; float: left;}
#cont04 .intro_item {width: 550px; height: 550px;}
#cont04 .intro_slider img {width: 100%;}

#cont04 .txt {position: absolute; bottom: -2.5%; left: 1%; text-align: center; margin: 0 auto;}
#cont04 .txt h3 {display: block; font-family: 'Montserrat', sans-serif; display: inline-block; font-size: 18px; font-weight: 300; letter-spacing: 0.5em; font-style: italic;
line-height: 3;}
#cont04 .txt h3::after {content: ""; display: inline-block; width: 52px; height: 1px; background: #888; vertical-align: middle;} 


#cont04 .co04_slider {width: 550px; height: 550px; float: right;}
#cont04 .c04_item {width: 330px; height: 330px; margin: 125px 10px; text-align: center; overflow: hidden;}
#cont04 .c04_item img {}




/* 반응형 #cont04  */

@media (max-width:768px) {
    #cont04 {padding: 100px 0; text-align: center; background: #f7f7f7; margin: 0 auto;}
    #cont04 h2 {font-family: 'Montserrat', sans-serif; font-size: 7vw; margin-bottom: 10px; font-weight: 400; margin-bottom: 20px;}
    #cont04 p {font-family: 'Noto Sans KR'; font-size: 4.2vw; font-weight: 300; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 25px;}
    #cont04 .container {width: auto; max-width: auto; margin: 0 auto;}
    #cont04 .case {position: relative; margin: 0 0 0 0;}


    #cont04 strong {display: block; font-family: 'Montserrat', sans-serif; font-size: 4.2vw; font-weight: 500; letter-spacing: 0.25em; line-height: 2.5;
    text-align: center; margin: 0 auto;}
    #cont04 strong::after {display: none;}
    #cont04 strong::before {content: ""; display: block; width: 30px; height: 30px; background: url(../img/icon.png);
    margin: 5px auto; animation: bounce 2s infinite;}
        
    #cont04 .intro_slider {display: none; width: 100%; height: 100%; margin: 0 auto; float: none; padding: 0 0;}
    #cont04 .intro_slider img {display: none; width: 100%;}

  
    #cont04 .txt {display: none; position: absolute; bottom: -20%; left: 50%; transform: translate(-50%,-50%); text-align: center;}
    #cont04 .txt h3 {position: relative; display: block; font-family: 'Montserrat', sans-serif; font-size: 3.7vw; font-weight: 300; letter-spacing: 0.4em; font-style: italic;
    line-height: 1.5;}
    #cont04 .txt h3::before {content: ""; display: block; position: absolute; top: 50%; left: -50%; width: 52px; height: 1px; background: #555;}
    #cont04 .txt h3::after {content: ""; display: block; position: absolute; top: 50%; right: 0; width: 52px; height: 1px; background: #555;} 
    
    #cont04 .co04_slider {width: 100%; height: 100%; float: none; padding: 1rem; margin: 0 auto;}
    #cont04 .c04_item {width: auto; width: auto; margin: 0 5px; text-align: center; overflow: hidden;}
    #cont04 .c04_item img {width: 100%;}
  
}



/* #cont05 */
#cont05 {padding: 150px 0; text-align: center;}
#cont05 h2 {font-family: 'Montserrat', sans-serif; font-size: 37px; margin-bottom: 10px; font-weight: 400; margin-bottom: 20px;}
#cont05 p {font-family: 'Noto Sans KR'; font-size: 18px; font-weight: 300; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 50px;}
#cont05 .container {width: 1200px; margin: 0 auto;}
#cont05 .case {padding: 0 15px;}
#cont05 ul {display: flex;}
#cont05 ul li {position: relative; text-shadow: 0 0 3px #333;}
#cont05 ul li img {max-width: 100%; padding: 10px;}


#cont05 ul li::before {content: "\ea10"; font-family: xeicon!important; display: block; width: 45px; height: 45px;
padding: 10px; border-radius: 50%; font-size: 25px; color: #fff;
position: absolute; top: 50%; left: 40%; transform: translate(-50%,100px); background: #222; text-shadow: 0 0 4px #333;
opacity: 0; transition: 0.5s;}

#cont05 ul li:hover:before {content: "\ea10"; font-family: xeicon!important; display: block; width: 45px; height: 45px;
padding: 10px; border-radius: 50%; font-size: 25px; color: #fff;
position: absolute; top: 50%; left: 40%; transform: translate(-50%,-50%); background: #222; text-shadow: 0 0 4px #333;
opacity: 1;}

#cont05 ul li::after {content: "\ea28"; font-family: xeicon!important; display: block; width: 45px; height: 45px;
padding: 10px; border-radius: 50%; font-size: 25px; color: #fff;
position: absolute; top: 50%; left: 60%; transform: translate(-50%,100px); background: #222; text-shadow: 0 0 4px #333;
opacity: 0; transition: 0.5s;}
#cont05 ul li:hover:after {content: "\ea28"; font-family: xeicon!important; display: block; width: 45px; height: 45px;
padding: 10px; border-radius: 50%; font-size: 25px; color: #fff;
position: absolute; top: 50%; left: 60%; transform: translate(-50%,-50%); background: #222; text-shadow: 0 0 4px #333;
opacity: 1;}


#cont05 .content_slider {position: relative; font-size: 20px; font-weight: 100; width: 1200px; margin: 0 auto; padding: 0 25px;}
#cont05 .content_slider em {color:#fff; text-shadow: -1px -1px 0 #333, 1px -1px 0 #333, -1px 1px 0 #333, 1px 1px 0 #333;}
#cont05 .content_slider em, .content_slider span {padding: 10px 5px;}

@keyframes imgScale {
    0% {transform: scale(0.7);}
    10% {transform: scale(1); filter:grayscale(0)}
    90% {transform: scale(1); filter:grayscale(0)}
    100% {transform: scale(0.7);}
}

@keyframes opacIty {
    0% {transform: translateY(0); opacity: 0;}
    10% {transform: translateY(-1.5rem); opacity: 1;}
    90% {transform: translateY(-1.5rem); opacity: 1;}
    100% {transform: translateY(0); opacity: 0;}
}





/* 반응형 #cont05  */

@media (max-width:768px) {
    #cont05 {padding: 100px 0; text-align: center;}
    #cont05 h2 {font-family: 'Montserrat', sans-serif; font-size: 7vw; margin-bottom: 10px; font-weight: 400; margin-bottom: 20px;}
    #cont05 p {font-family: 'Noto Sans KR'; font-size: 4.2vw; font-weight: 300; letter-spacing: -0.025em; line-height: 1.4; margin-bottom: 50px;}
    #cont05 .container {width: auto; margin: 0 auto;}
    #cont05 .case {}
    #cont05 ul {display: flex;}
    #cont05 ul li {}
    #cont05 ul li img {max-width: 100%; padding: 5px;}
    #cont05 ul li::before {display: none;}
    #cont05 ul li:hover:before {display: none;}
    #cont05 ul li::after {display: none;}
    #cont05 ul li:hover:after {display: none;}
    
    #cont05 .content_slider {position: relative; font-size: 4.3vw; font-weight: 100; width: auto; margin: 0 auto; padding: 0 25px;}
    #cont05 .content_slider em {color:#fff; text-shadow: -1px -1px 0 #333, 1px -1px 0 #333, -1px 1px 0 #333, 1px 1px 0 #333;}
    #cont05 .content_slider em, .content_slider span {padding: 10px 5px;}

    @keyframes imgScale {
    0% {transform: scale(0.7);}
    10% {transform: scale(1); filter:grayscale(0)}
    90% {transform: scale(1); filter:grayscale(0)}
    100% {transform: scale(0.7);}
    }

    @keyframes opacIty {
    0% {transform: translateY(0); opacity: 0;}
    10% {transform: translateY(-1.5rem); opacity: 1;}
    90% {transform: translateY(-1.5rem); opacity: 1;}
    100% {transform: translateY(0); opacity: 0;}
    }

    }



/* #footer */
#footer {background: #333; color: #f4f4f4; line-height: 100px; text-align: center;}
#footer .container {width: 1200px; margin: 0 auto; display: flex; padding: 0 15px;}
#footer .f_top {border-bottom: 1px solid #555;}
#footer .f_top ul {display: flex; justify-content: center;}
#footer .f_top ul a {padding: 0 15px; position: relative;}
#footer .f_top ul>li~li>a::after {content: ""; display: block; width: 1px; height: 12px; background: #999; position: absolute; top: 50%; left: 0; transform: translateY(-50%);}
#footer .f_top ul>li:first-child a {padding: 0 20px 0 0;}
#footer .container {justify-content: space-between;}
#footer i {font-size: 30px;}
#footer .link select {padding: 3px; background: #333; outline: none;}
#footer address>a {padding: 0 10px;}
#footer .sns>a {padding: 0 10px;}



/* 반응형 #footer  */

@media (max-width:768px) {
    #footer {background: #333; color: #f4f4f4; line-height: 30px; text-align: center; padding: 0 0 20px 0;}
    #footer .container {width: auto; margin: 0 auto; display: flex; flex-direction: column; padding: 0 15px; justify-content: space-between;}
    #footer .f_top {border-bottom: 1px solid #555;}
    #footer .f_top ul {display: block; padding: 15px 0; border-bottom: 1px solid #555;}
    #footer .f_top ul>li {display: inline-block; line-height: 1;}
    #footer .f_top ul a {padding: 0 10px; position: relative; font-size: 3vw; font-weight: 300;}
    #footer .f_top ul>li~li>a::after {content: ""; display: none; width: 1px; height: 12px; background: #999; position: absolute; top: 50%; left: 0; transform: translateY(-50%);}
    #footer .f_top ul>li:first-child a {padding: 0 20px 0 0;}
    #footer .sns {padding: 20px 0;}
    #footer i {font-size: 20px;}
    #footer .link select {padding: 3px; background: #333; outline: none; font-size: 3vw;}
    #footer address {font-size: 3vw; font-weight: 300; line-height: 1.7; padding: 10px 0;}
    #footer address>a {padding: 0 10px;}
    #footer .sns>a {padding: 0 10px;}

}

