@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;600;700&display=swap');

/* font-family: 'Noto Sans KR', sans-serif;*/

#main{
    font-family: 'Noto Sans KR', sans-serif;
    font-weight:400;
    color:#4E4E4E;
}
#main .container{
    width:1600px;
    margin:0 auto;
}
#main hr{
    display:block;
    border:none;
    width:100%;
    height:35px;
    margin:0;
}
#main .tt_box{
    text-align:center;
}
#main .tt_box .sub_tt{
    margin-bottom:25px;
}
#main .tt_box .part_tt{
    font-size:40px;
    font-weight:500;
    letter-spacing:-0.05em;
    margin-bottom:30px;
}
#main .tt_box span.line{
    width:100px;
    height:3px;
    background:#FBB214;
    display:inline-block;
    margin-bottom:25px;
}
#main .tt_box .tt_desc{
    font-size:20px;
    font-weight:300;
    letter-spacing:-0.05em;
    color:#797979;
    word-break:keep-all;
}
#main .tt_box .tt_desc br{
    display:none;
}
/* ----------------------------- BANNER ---------------------------- */
#main #banner{
    margin-top:120px;
    position:relative;
}
#main #banner .slide{
    width:100%;
    height:100vh;
    display:flex !important;
    align-items:center;
}
#main #banner .slide .text_wrap{
    padding-left:14%;
    margin-top:-150px;
}
#main #banner .slide.pink{
    background:url(../img/main/banner01.png) no-repeat 80% center/cover;
}
#main #banner .slide.white{
    background:url(../img/main/banner02.png) no-repeat 65% center/cover;
}
#main #banner .slide.third{
    background:url(../img/main/banner03.png) no-repeat 60% center/cover;
}
#main #banner .slide .big{
    margin-bottom:50px;
}
#main #banner .slide .big p{
    font-size:55px;
    font-weight:300;
    letter-spacing:-0.07em;
    line-height:1.3;
    color:#4E4E4E;
    word-break:keep-all;
}
#main #banner .slide.white .big p{
    color:#fff;
}
#main #banner .slide .big p span{
    font-weight:400;
}
#main #banner .slide .big p span.thin{
    font-weight:100;
}
#main #banner .slide .small p{
    font-size:18px;
    font-weight:500;
    letter-spacing:-0.005em;
    line-height:1.5;
    color:#4E4E4E;
    word-break:keep-all;
}
#main #banner .slide.white .small p{
    color:#fff;
}
#main #banner .slick-dots{
    position:absolute;
    bottom:230px;
    left:14%;
    display:flex;
    width:300px;
    height:3px;
    background:rgba(183,183,183,.8);
}
#main #banner .slick-dots button{
    display:block;
    border:none;
    height:3px;
    text-indent:-9999em;
    background:transparent;
}
#main #banner .slick-dots li:first-child button{
    background:#4E4E4E;
}
#main #banner .text_pager{
    position:absolute;
    bottom:240px;
    left:14%;
    font-size:18px;
    font-weight:500;
    color:#4E4E4E;
}
#main hr.yellow_opac_line{
    background:#FFF0CF;
}

/* ----------------------------- COMPANY ---------------------------- */
#main #company .top{
    position:relative;
    padding:170px 0 150px;
    background:#FFFDFA;
}
#main h3.sub_tt{
    font-size:16px;
    font-weight:500;
    color:#FBB214;
    margin-bottom:10px;
    text-transform:uppercase;
}
#main #company .top .ttbox .big{
    font-size:45px;
    font-weight:300;
    letter-spacing:-0.07em;
    line-height:1.3;
    margin-bottom:60px;
}
#main #company .top .ttbox .big span{
    font-weight:400;
}
#main #company .top .ttbox .small{
    font-size:20px;
    font-weight:300;
    line-height:1.3;
    margin-bottom:40px;
    word-break:keep-all;
    letter-spacing:-0.03em;
}
#main #company .top .ttbox .small br.res{
    display:none;
}
#main a.more{
    display:block;
    width:165px;
    height:50px;
    line-height:50px;
    text-align:center;
    border:1px solid #FBB214;
    font-size:16px;
    font-weight:500;
    letter-spacing:-0.003em;
    color:#FBB214;
    text-transform:uppercase;
    position:relative;
    z-index:1;
    transition:.5s;
}
#main a.more::before{
    content:'';
    width:0;
    height:100%;
    background:#FBB214;
    position:absolute;
    top:0;
    left:0;
    transition:.5s;
    z-index:-1;
}
#main a.more:hover{
    color:#fff;
}
#main a.more:hover::before{
    width:100%;
}
#main #company .top .img_wrap{
    position:absolute;
    bottom:125px;
    right:0;
}
#main #company .top .img_wrap img{
    box-shadow:-29px -29px 0 0 #FFD67E;
}
#main #company .bottom{
    background:url(../img/main/company_bg.png) no-repeat center center/cover;
    padding:240px 0;
    text-align:center;
    color:#fff;
}
#main #company .bottom .company_list{
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:55px;
}
#main #company .bottom .company_list li{
    width:550px;
    height:106px;
    border-radius:53px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    background:rgba(255,201,84,.5);
    margin:0 -53px;
    position:relative;
}
#main #company .bottom .company_list li + li::before{
    content:'+';
    font-size:40px;
    font-weight:400;
    position:absolute;
    top:50%;
    left:42px;
    transform:translateY(-50%);
}
#main #company .bottom .company_list li p{
    font-size:22px;
    font-weight:500;
    letter-spacing:-0.005em;
}
#main #company .bottom .company_list li p.small{
    font-size:18px;
    font-weight:300;
    color:#F1F1F1;
}
#main #company .bottom .text{
    font-size:20px;
    font-weight:300;
    letter-spacing:-0.005em;
    line-height:1.3;
}
#main #company .bottom .text p{
    word-break:keep-all;
}
#main #company .bottom .text p br{
    display:none;
}
#main hr.yellow_line{
    background:#FFC954;
}
/* ----------------------------- PRODUCT ---------------------------- */
#main #product{
    padding-top:130px;
    text-align:center;
}
#main #product .tt_box{
    margin-bottom:80px;
}
#main #product .product_slide{
    width:1170px;
    margin:0 auto 90px;
    position:relative;
}
#main #product .product_slide img{
    margin-bottom:20px;
}
#main #product .product_slide .name{
    font-size:20px;
    font-weight:500;
    letter-spacing:-0.005em;
    margin-bottom:15px;
    word-break:keep-all;
}
#main #product .product_slide .desc p{
    font-size:16px;
    letter-spacing:-0.005em;
    color:#797979;
    line-height:1.2;
    word-break:keep-all;
}
#main #product .product_slide .slick-arrow{
    width:19px;
    height:35px;
    background:no-repeat;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    border:none;
    text-indent:-9999em;
}
#main #product .product_slide .slick-prev{
    background-image:url(../img/main/product_prev.png);
    left:-100px;
}
#main #product .product_slide .slick-next{
    background-image:url(../img/main/product_next.png);
    right:-100px;
}
#main #product .more{
    background:#FBB214;
    color:#fff;
    margin:0 auto 160px;
}
#main #product .more::before{
    background:#fff;
}
#main #product .more:hover{
    color:#FBB214;
}
/* ----------------------------- KEYPOINT ---------------------------- */
#main #keypoint{
    background:url(../img/main/keypoint_bg.png) no-repeat 20% center/cover;
    padding:130px 0;
}
#main #keypoint .tt_box{
    margin-bottom:90px;
}
#main #keypoint .point_list{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:50px;
}
#main #keypoint .point_list li{
    width:205px;
    height:205px;
    border-radius:50%;
    background:#FFC953;
    border:12px solid #FFF0CF;
    font-size:20px;
    font-weight:400;
    color:#fff;
    line-height:1.8;
    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;
    text-transform:uppercase;
    box-sizing:border-box;
}
#main #keypoint .point_list li span{
    font-weight:700;
}
/* ----------------------------- CONTACT ---------------------------- */
#main #contact{
    padding:130px 0;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:100px;
    background:#FFFDFA;
}
#main #contact .tt_box{
    text-align:left;
    margin-bottom:100px;
}
#main #contact .contact_list li{
    margin-bottom:45px;
}
#main #contact .contact_list li .method{
    font-size:20px;
    font-weight:500;
    letter-spacing:-0.005em;
    margin-bottom:5px;
}
#main #contact .contact_list li .info{
    font-size:16px;
    font-weight:400;
    letter-spacing:-0.005em;
    color:#797979;
}
#main #contact .contact_list li br{
    display:none;
}
#main #contact .root_daum_roughmap{
    box-shadow:-29px -29px 0 0 #FFD67E;
    width:675px;
    height:415px;
}
#main #contact .root_daum_roughmap .wrap_map{
    height:100%;
}
#main #contact .root_daum_roughmap .wrap_map > span{
    display:none;
}
#main #contact .root_daum_roughmap .wrap_controllers{
    display:none;
}

/* ----------------------------- RESPONSIVE ---------------------------- */
@media (max-width:1650px){
    #main .container{
        width:90%;
    }
    #main #company .top .img_wrap{
        width:45%;
    }
    #main #company .top .img_wrap img{
        width:100%;
    }
    #main #company .bottom .company_list li {
        width: 500px;
    }
}
@media (max-width:1430px){
    #main #company .top .ttbox .small br.res{
        display:block;
    }
    #main #company .top .img_wrap{
        width:680px;
    }
    #main #company .top .img_wrap img{
        width:100%;
    }
    #main #company .bottom .company_list li {
        width: 440px;
        height:90px;
        border-radius:45px;
        margin:0 -45px;
    }
    #main #company .bottom .company_list li + li::before{
        left:34px;
    }
    #main #product .product_slide{
        width:85%;
    }
    #main #product .product_slide .slick-prev{
        left:-50px;
    }
    #main #product .product_slide .slick-next{
        right:-50px;
    }
    #main #product .product_slide .slick-slide{
        margin:0 5px;
    }
    #main #product .product_slide img{
        width:100%;
    }
    #main #product .product_slide .name {
        font-size: 18px;
    }
    #main #product .product_slide .desc p {
        font-size: 15px;
    }
}
@media (max-width:1300px){
    #main #keypoint .point_list{
        gap:30px;
    }
}
@media (max-width:1200px){
    #main #company .top .ttbox{
        margin-bottom:80px;
    }
    #main #company .top .ttbox .small br.res{
        display:none;
    }
    #main #company .top .img_wrap {
        position:static;
        width:auto;
        text-align:right;
    }
    #main #company .top .img_wrap img{
        width:auto;
    }
    #main #company .bottom .company_list li{
        width:385px;
    }
    #main #company .bottom .company_list li:nth-child(1) p{
        margin-left:-60px;
    }
    #main #company .bottom .company_list li:nth-child(3) p{
        margin-right:-60px;
    }
    #main #product .product_slide{
        width:800px;
    }
    #main #product .product_slide img{
        width:auto;
    }
    #main #product .product_slide .name {
        font-size: 17px;
    }
    #main #keypoint .point_list{
        gap:20px;
    }
    #main #keypoint .point_list li {
        width: 170px;
        height: 170px;
    }
    #main #contact{
        gap:50px;
    }
    #main #contact .root_daum_roughmap {
        width: 570px;
        height: 360px;
    }
}
@media (max-width:1000px){
    #main #company .bottom .company_list{
        flex-direction:column;
        gap:50px;
    }
    #main #company .bottom .company_list li:nth-child(1) p,
    #main #company .bottom .company_list li:nth-child(3) p{
        margin:0;
    }
    #main #company .bottom .company_list li + li::before{
        left:50%;
        top:-55px;
        transform:translateX(-50%);
    }
    #main #company .bottom .text p br{
        display:block;
    }
    #main #product .product_slide{
        width:85%;
    }
    #main #product .product_slide img{
        width:100%;
    }
    #main #keypoint .point_list{
        width:700px;
        margin:0 auto;
        flex-wrap:wrap;
    }
    #main #keypoint .point_list{
        gap:35px;
    }
    #main #keypoint .point_list li {
        width: 205px;
        height: 205px;
    }
    #main #contact{
        flex-direction:column;
    }
    #main #contact .left{
        width:80%;
        margin:0 auto 50px;
        text-align:left;
    }
    #main #contact .root_daum_roughmap {
        width:80%;
    }
}
@media (max-width:768px){
    #main #banner{
        margin-top:68px;
    }
    #main #banner .slide .big {
        margin-bottom:30px;
    }
    #main #banner .slide .big p {
        font-size: 40px;
    }
    #main #banner .slide .small p {
        font-size: 16px;
    }
    #main #company .top .ttbox .big {
        font-size: 34px;
        margin-bottom:30px;
    }
    #main #company .top .ttbox .small {
        font-size: 16px;
    }
    #main #company .top .img_wrap{
        width:80%;
        margin-left:20%;
    }
    #main #company .top .img_wrap img{
        width:100%;
    }
    #main #company .bottom .company_list li {
        width: 320px;
        height:80px;
        border-radius:40px;
        margin:0;
    }
    #main #company .bottom .company_list li p {
        font-size: 18px;
    }
    #main #company .bottom .company_list li p.small {
        font-size: 16px;
    }
    #main #company .bottom .text {
        font-size: 16px;
    }
    #main #product .product_slide{
        width:385px;
    }
    #main #product .product_slide .slick-slide{
        margin:0;
    }
    #main #product .product_slide img{
        width:auto;
        margin:0 auto 20px;
    }
    #main .tt_box .part_tt{
        font-size:32px;
        margin-bottom:20px;
    }
    #main .tt_box .sub_tt {
        margin-bottom: 10px;
    }
    #main .tt_box .tt_desc {
        font-size: 16px;
    }
    #main #keypoint .point_list{
        width:550px;
        gap:20px;
    }
    #main #keypoint .point_list li {
        width: 170px;
        height: 170px;
        font-size:18px;
    }
}
@media (max-width:600px){
    #main #keypoint .point_list{
        width:410px;
        gap:10px;
    }
    #main #keypoint .point_list li {
        width: 130px;
        height: 130px;
        font-size: 15px;
        border-width:10px;
    }
}
@media (max-width:500px){
    #main #banner .slide .text_wrap{
        width:90%;
        margin:-100px auto 0;
        padding:0;
    }
    #main #banner .slide .big p {
        font-size: 30px;
        width:80%;
    }
    #main #banner .slide .small p br{
        display:none;
    }
    #main #banner .slick-dots{
        width:60%;
        left:5%;
    }
    #main #banner .text_pager{
        left:5%;
    }
    #main #company .top{
        padding:80px 0;
    }
    #main #company .top .ttbox .big {
        font-size: 26px;
        word-break:keep-all;
    }
    #main #company .top .ttbox .small br{
        display:none;
    }
    #main #company .top .img_wrap img {
        box-shadow: -19px -19px 0 0 #ffd67e;
    }
    #main #company .bottom{
        padding:80px 0;
    }
    #main #company .bottom .text{
        width:90%;
        margin:0 auto;
    }
    #main #company .bottom .text p br {
        display: none;
    }
    #main #product{
        padding-top:80px;
    }
    #main #product .tt_box {
        margin-bottom: 50px;
    }
    #main #product .product_slide{
        width:80%;
        margin-bottom:30px;
    }
    #main #product .product_slide img{
        width:100%;
    }
    #main #product .product_slide .slick-prev{
        left:-30px;
    }
    #main #product .product_slide .slick-next {
        right:-30px;
    }
    #main .tt_box .tt_desc br{
        display:block;
    }
    #main #product .more{
        margin-bottom:100px;
    }
    #main #keypoint{
        padding:80px 0;
    }
    #main #keypoint .point_list{
        width:auto;
        flex-direction:column;
    }
    #main #keypoint .point_list li {
        width: 170px;
        height: 170px;
        font-size:18px;
    }
    #main #contact{
        padding:80px 0;
        gap:0;
    }
    #main #contact .tt_box{
        margin-bottom:60px;
    }
    #main #contact .contact_list li {
        margin-bottom: 25px;
    }
    #main #contact .contact_list li .method {
        font-size: 17px;
    }
    #main #contact .contact_list li .info {
        font-size: 14px;
    }
    #main #contact .contact_list li br{
        display:block;
    }
    #main #contact .contact_list li span{
        display:none;
    }
    #main #contact .root_daum_roughmap {
        box-shadow: -18px -18px 0 0 #ffd67e;
        height:300px;
    }
}
@media (max-width:450px){
    #main #company .bottom .text p{
        width:80%;
        margin:0 auto;
    }
}
@media (max-width:350px){
    #main #banner .slide .big p {
        font-size: 26px;
    }
    #main #banner .slide .small p {
        font-size: 14px;
    }
    #main #company .top .ttbox .big br{
        display:none;
    }
    #main #company .bottom .company_list li{
        width:90%;
    }
    #main #company .bottom .company_list li p.small {
        font-size: 14px;
    }
    #main #company .bottom .text p{
        width:90%;
    }
}