.flex{display: flex;}
.color-black{color: #000 !important;}
.color-white{color: #fff !important;}
.scroll-auto{overflow-x: auto;}

.mt-10{margin-top: 10px;}
.mt-15{margin-top: 15px;}
.mt-20{margin-top: 20px;}
.mt-25{margin-top: 25px;}
.mt-30{margin-top: 30px;}
.mt-35{margin-top: 35px;}
.mt-40{margin-top: 40px;}
.mt-45{margin-top: 45px;}
.mt-50{margin-top: 50px;}
.mt-55{margin-top: 55px;}
.mt-60{margin-top: 60px;}
.mt-65{margin-top: 65px;}
.mt-75{margin-top: 75px;}
.mt-80{margin-top: 80px;}
.mt-85{margin-top: 85px;}
.mt-90{margin-top: 90px;}
.mt-95{margin-top: 95px;}
.mt-100{margin-top: 100px;}
.mt-120{margin-top: 120px;}
.mt-140{margin-top: 140px;}

.pt-40{padding-top: 40px;}
.pt-50{padding-top: 50px;}
.pt-55{padding-top: 55px;}
.pt-60{padding-top: 60px;}
.pt-80{padding-top: 80px;}
.pt-85{padding-top: 85px;}
.pt-100{padding-top: 100px;}
.pt-110{padding-top: 110px;}
.pt-120{padding-top: 120px;}
.pt-130{padding-top: 130px;}
.pt-220{padding-top: 220px;}
.pt-300{padding-top: 300px;}

.pb-20{padding-bottom: 20px;}
.pb-30{padding-bottom: 30px;}
.pb-40{padding-bottom: 40px;}
.pb-50{padding-bottom: 50px;}
.pb-60{padding-bottom: 60px;}
.pb-65{padding-bottom: 65px;}
.pb-70{padding-bottom: 70px;}
.pb-80{padding-bottom: 80px;}
.pb-85{padding-bottom: 85px;}
.pb-100{padding-bottom: 100px;}
.pb-120{padding-bottom: 120px;}
.pb-140{padding-bottom: 140px;}
.pb-160{padding-bottom: 160px;}
.pb-180{padding-bottom: 180px;}
.pb-200{padding-bottom: 200px;}
.pb-220{padding-bottom: 220px;}
.pb-300{padding-bottom: 220px;}

/* 모바일 메뉴 시작 */
.moblie__menubar{width: 30%; height: 100%; position:fixed; top: 0; left: -90%; z-index: 9999; background-color: #fff;}
.dim_background{width: 100%; height: 100%; background-color: rgba(0,0,0,.6); position: absolute; top: 0; z-index: 9998; display: none;}
.moblie__menubar .top{display: flex; justify-content: space-between; padding: 5px;}
.moblie__menubar .top .moblie__menubar__logo{width: 185px; display: flex; align-items: center;}
.moblie__menubar .top .moblie__menubar__logo img{width: 100%;}
.mob_category_close{width: 26px; height: 26px; align-items: center; justify-content: center; text-align: center; font-size: 1.76rem; color: #000; background-color: transparent; border: 0; display: none; cursor: pointer;}
.mobile_menu_wrap{padding-bottom: 100px;height: 100%; overflow-y: auto;}
.mobile_sub_menu{width: 100%;}
.mobile_sub_menu>li{width: 100%; border-bottom: 1px solid rgba(0,0,0,0.1);}
.mobile_sub_menu>li>a{display: flex; justify-content: space-between; align-items: center; padding: 0 17px 0 12px; height: 45px; cursor: pointer; font-size: 18px; line-height: 1.11; letter-spacing: normal; color: #000;}
.mobile_sub_menu--depth{width: 100%;display: none;}
.mobile_sub_menu--depth>li{background-color: #f3f3f3;}
.mobile_sub_menu--depth>li + li{border-top: 1px solid rgba(0,0,0,0.1);}
.mobile_sub_menu--depth>li>a{display: flex; padding: 12px 14px; font-size: 1.125rem; line-height: 1.11; color: #000;}
/* 모바일 메뉴 끝 */


/* ================================================================================= 메인 헤더 시작 ================================================================================= */
.main__header{width: 100%;}
.main__header nav{width: 100%; max-width: 1920px; padding: 0 80px; display: flex; justify-content: space-between; align-items: center; margin: auto;}
.main__header nav .main__header__logo{width: 134px;}
.main__header nav .main__header__logo img{width: 100%;}
.main__gnb{display: flex; width: calc(100% - 134px - 7.6% - 25px); margin-left: 7.6%;}
.main__gnb .gnb__depth01{position: relative; height: 100%;}
.main__gnb .gnb__depth01::before{position: absolute; bottom: 0; content: ""; width: 100%; height: 2px; display: block; background-color: #E61205; transform: scale(0); transition: .3s;}

/* 첫번째 depth */
/* .main__gnb .gnb__depth01 + .gnb__depth01{margin-left: 40px;} */
.main__gnb .gnb__depth01>a{display: flex; align-items: center; height: 100%; padding: 30px; 
    font-size: 18px; font-weight: 600; letter-spacing: -0.45px; text-align: left; color: #000;}

/* 두번째 depth */
.gnb__depth02{width: 100%; position: absolute; left: 50%; transform: translateX(-50%); z-index: 999; height: 0; overflow: hidden;}
.gnb__depth02 .depth02{width: 100%;}
.gnb__depth02 .depth02>a{display: flex; align-items: center; justify-content: center; padding: 15px 10px; font-size: 18px; letter-spacing: -0.5px; color: #000; text-align: center; word-break: keep-all;}

/* 메인 헤더 마우스 오버시 스타일 변경 */
.main__gnb .gnb__depth01:hover::before{transform: scale(1);}
.main__gnb .gnb__depth01:hover>a{color: #E61205; font-weight: 600;}
.main__gnb .gnb__depth01:hover>a .menu_mark{display: block;}
.main__gnb .gnb__depth01:hover .gnb__depth02{height: initial; overflow: initial; box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.1); background-color: #fff; transition: .3s;}
.gnb__depth02 .depth02:hover{background-color: #000; transition: .3s;}
.gnb__depth02 .depth02:hover a {color: #fff; transition: .3s;}
.main__header .main__header__contact .toggle--mobile{padding: 20px; width: initial; display: none;}

.right{width: 25px;}
.toggle--mobile{display: block; border: 0; background-color: transparent;}
/* ================================================================================= 메인 헤더 끝 ================================================================================= */


/* ================================================================================= 메인 푸터 시작 ================================================================================= */
.main__footer{background-color: #333;}
.main__footer .inner{max-width: 1920px; padding: 60px 80px 70px; margin: auto;}
.main__footer .footer__right{width: calc(100% - 134px - 7.55%); margin-left: 7.55%;}
.main__footer .footer__right .footer__top{display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,0.2);}
/* .main__footer .footer__top .footer__logo img{width: 100%;} */
.main__footer .footer__right .footer__top .policy{display: flex; align-items: center;}
.main__footer .footer__right .footer__top .policy li{position: relative; margin-right: 20px; padding-right: 20px;}
.main__footer .footer__right .footer__top .policy li::after{display: block; width: 1px; height: 12px; position: absolute; top: 50%; transform: translateY(-50%); content: ""; right: 0; background-color: #666;}
.main__footer .footer__right .footer__top .policy li:last-child{margin-right: 0; padding-right: 0;}
.main__footer .footer__right .footer__top .policy li:last-child::after{display: none}
.main__footer .footer__right .footer__top .policy li a{font-family: 'GmarketSansMedium'; font-size: 14px; text-align: left; color: #999;}
.main__footer .footer__right .footer__info p{font-size: 14px; line-height: 1.79; text-align: left; color: #999;}
.main__footer .footer__right .footer__info p + p{margin-top: 3px}
.footer__copyright{}
.footer__copyright p{font-size: 14px; line-height: 1.79; text-align: left; color: #999;}
/* ================================================================================= 메인 푸터 끝 ================================================================================= */

.fix-btns{position: fixed; bottom: 60px; right: 20px; display: flex; flex-direction: column; z-index: 2;}
.fix-btns button{width: 40px; height: 40px; border: 0;}
.fix-btns a.btn_estimate{width: 40px; height: 40px;}
.fix-btns button.btn_top{}


@media (max-width:1280px){
    .main__header nav{padding: 0 20px;}
    .main__header nav .main__header__logo{width: 120px;}
    .main__gnb{width: calc(100% - 120px - 2% - 25px); margin-left: 2%;}
    .main__gnb .gnb__depth01>a{padding: 20px; font-size: 16px;}
}

@media (max-width:1024px){
    .main__header .main__gnb{display: none;}
    .main__header .right{display: flex;}
    .toggle--mobile{display: block;}
}

@media (max-width:769px){
	.moblie__menubar {width:90%;}

    .main__footer .inner{flex-direction: column; padding: 60px 40px 70px;}
    .main__footer .footer__right{margin-left: 0; width: 100%; margin-top: 7.55%;}
}

@media (max-width:500px){
    .main__header nav{padding: 5px 15px;}
    .main__header nav .main__header__logo{width: 100px;}

    .main__footer .inner{padding: 40px 20px 50px;}
    .main__footer .footer__logo{width: 100px;}
    .main__footer .footer__logo img{width: 100%;}
    .main__footer .footer__right .footer__top .policy li{margin-right: 10px; padding-right: 10px;}

    .fix-btns{right: 0px;}
}