:root{
    --point-color:#002581;
}
.flex{display: flex;}
.row-column{flex-direction: column;}

.color-black{color: #000 !important;}
.color-white{color: #fff !important;}
.point-color{color: var(--point-color);}
.point-bg{background-color: var(--point-color);}

.mt-5{margin-top: 5px;}
.mt-8{margin-top: 8px;}
.mt-10{margin-top: 10px;}
.mt-15{margin-top: 15px;}
.mt-16{margin-top: 16px;}
.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-50{margin-top: 50px;}
.mt-60{margin-top: 60px;}
.mt-65{margin-top: 65px;}
.mt-80{margin-top: 80px;}
.mt-85{margin-top: 85px;}
.mt-95{margin-top: 95px;}
.mt-100{margin-top: 100px;}
.mt-120{margin-top: 120px;}


/* Margin-Bottom */
.mb-10 { margin-bottom: 10px; }
.mb-15 { margin-bottom: 15px; }
.mb-20 { margin-bottom: 20px; }
.mb-30 { margin-bottom: 30px; }
.mb-40 { margin-bottom: 40px; }
.mb-50 { margin-bottom: 50px; }
.mb-60 { margin-bottom: 60px; }
.mb-70 { margin-bottom: 70px; }
.mb-80 { margin-bottom: 80px; }
.mb-90 { margin-bottom: 90px; }
.mb-100 { margin-bottom: 100px; }
.mb-110 { margin-bottom: 110px; }
.mb-120 { margin-bottom: 120px; }
.mb-130 { margin-bottom: 130px; }
.mb-140 { margin-bottom: 140px; }
.mb-150 { margin-bottom: 150px; }
.mb-160 { margin-bottom: 160px; }
.mb-170 { margin-bottom: 170px; }
.mb-180 { margin-bottom: 180px; }
.mb-190 { margin-bottom: 190px; }
.mb-200 { margin-bottom: 200px; }
.mb-210 { margin-bottom: 210px; }
.mb-220 { margin-bottom: 220px; }
.mb-230 { margin-bottom: 230px; }
.mb-240 { margin-bottom: 240px; }
.mb-250 { margin-bottom: 250px; }
.mb-260 { margin-bottom: 260px; }
.mb-270 { margin-bottom: 270px; }
.mb-280 { margin-bottom: 280px; }
.mb-290 { margin-bottom: 290px; }
.mb-300 { margin-bottom: 300px; }





.pt-55{padding-top: 55px;}
.pt-10 { padding-top: 10px; }
.pt-20 { padding-top: 20px; }
.pt-30 { padding-top: 30px; }
.pt-40 { padding-top: 40px; }
.pt-50 { padding-top: 50px; }
.pt-60 { padding-top: 60px; }
.pt-70 { padding-top: 70px; }
.pt-80 { padding-top: 80px; }
.pt-90 { padding-top: 90px; }
.pt-100 { padding-top: 100px; }
.pt-110 { padding-top: 110px; }
.pt-120 { padding-top: 120px; }
.pt-130 { padding-top: 130px; }
.pt-140 { padding-top: 140px; }
.pt-150 { padding-top: 150px; }
.pt-160 { padding-top: 160px; }
.pt-170 { padding-top: 170px; }
.pt-180 { padding-top: 180px; }
.pt-190 { padding-top: 190px; }
.pt-200 { padding-top: 200px; }
.pt-210 { padding-top: 210px; }
.pt-220 { padding-top: 220px; }
.pt-230 { padding-top: 230px; }
.pt-240 { padding-top: 240px; }
.pt-250 { padding-top: 250px; }
.pt-260 { padding-top: 260px; }
.pt-270 { padding-top: 270px; }
.pt-280 { padding-top: 280px; }
.pt-290 { padding-top: 290px; }
.pt-300 { padding-top: 300px; }

/* Padding-Bottom */
.pb-10 { padding-bottom: 10px; }
.pb-15{padding-bottom: 15px;}
.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-70 { padding-bottom: 70px; }
.pb-80 { padding-bottom: 80px; }
.pb-90 { padding-bottom: 90px; }
.pb-100 { padding-bottom: 100px; }
.pb-110 { padding-bottom: 110px; }
.pb-120 { padding-bottom: 120px; }
.pb-130 { padding-bottom: 130px; }
.pb-140 { padding-bottom: 140px; }
.pb-150 { padding-bottom: 150px; }
.pb-160 { padding-bottom: 160px; }
.pb-170 { padding-bottom: 170px; }
.pb-180 { padding-bottom: 180px; }
.pb-190 { padding-bottom: 190px; }
.pb-200 { padding-bottom: 200px; }
.pb-210 { padding-bottom: 210px; }
.pb-220 { padding-bottom: 220px; }
.pb-230 { padding-bottom: 230px; }
.pb-240 { padding-bottom: 240px; }
.pb-250 { padding-bottom: 250px; }
.pb-260 { padding-bottom: 260px; }
.pb-270 { padding-bottom: 270px; }
.pb-280 { padding-bottom: 280px; }
.pb-290 { padding-bottom: 290px; }
.pb-300 { padding-bottom: 300px; }




.main__footer .inner {
  display: flex;

  align-items: flex-start; /* 필요시, 두 요소를 상단 정렬 */

}

.footer__logo {
  flex: 0 0 auto; /* 로고는 고정 크기를 유지 */
}

.footer__info {
  flex: 1 1 auto; /* 정보는 가변적으로 차지 */
  max-width: 800px; /* 필요한 경우 정보 영역에 최대 너비 설정 */
  margin-left: 20px; /* 로고와 정보 간의 간격 조정 */
}



/* 모바일 메뉴 시작 */
.moblie__menubar{width: 90%; height: 100%; position:fixed; top: 0; right: -90%; z-index: 9999; background-color: #fff;}
.dim_background{width: 100%; height: 100%; background-color: rgba(0,0,0,.4); 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: 2px solid #fff; /* 검은색 테두리 추가 */
    display: flex; /* 버튼 안에 X자를 중앙에 배치 */
    cursor: pointer;
   
}

.mob_category_close::before {
    /*content: '✖';*/ /* X자 표시 */
    font-size: 1.5rem; /* X자의 크기 */
    color: #000; /* X자의 색상 */
}
.mobile_menu_wrap{padding-bottom: 100px;height: 100%; overflow-y: auto;}
.mobile_sub_menu{width: 100%;padding-top:20px;}
.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: 15px 17px 15px 12px; height: 45px; cursor: pointer; font-size: 18px; line-height: 1.11; letter-spacing: normal; color: #000;}
.mobile_sub_menu>li>a:focus{display: flex; justify-content: space-between; align-items: center; padding: 15px 17px 15px 12px; height: 45px; cursor: pointer; font-size: 18px; line-height: 1.11; letter-spacing: normal; color: #0000C4;}

.mobile_sub_menu--depth{width: 100%;display: none;}
.mobile_sub_menu--depth>li{padding: 15px 14px; 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: 0 8px; font-size: 1.125rem; line-height: 1.11; color: #807B7B;}
/* 모바일 메뉴 끝 */


/* 메인 헤더 시작 */
.main__header{width: 100%; z-index: 9; padding-top:20px; }
.main__header>nav{width:100%; max-width:1920px; padding-left: 100px; display: flex; justify-content: space-between; align-items: center; margin: auto;}
.main__header__logo{width: 266px;}

.main__gnb{display: flex; justify-content: right; height: 78px; width: calc(100% - 266px - 330px);}
.main__gnb .gnb__depth01{position: relative; height: 100%;color: #fff;}
.main__gnb .gnb__depth01::before{background-color: rgba(0, 0, 0, 0.2); /* 검정색 + 투명도 20% */font-weight: 600; position: absolute; bottom: 0; content: ""; width: 100%; height: 2px; display: block; background-color: #55B9B4; transform: scale(0); transition: .3s;}
/* 첫번째 depth */
.main__gnb .gnb__depth01>a{display: flex; align-items: center; padding: 0 33px; height: 100%;font-family: Pretendard-SemiBold;font-size: 21px; font-weight: 600; letter-spacing: -0.5px; text-align: left; color: #fff;}
/* 두번째 depth */
.gnb__depth02{width: 100%; position: absolute; top: 78px; 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; line-height: 1.34; color: #fff; text-align: center; word-break: keep-all;}
/* 메인 헤더 마우스 오버시 스타일 변경 */
.main__gnb .gnb__depth01:hover::before{transform: scale(1);}
.main__gnb .gnb__depth01:hover>a{color: #55B9B4; 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: rgba(0, 0, 0, 0.2); /* 검정색 + 투명도 20% */
    color: #fff; /* 글씨색을 흰색으로 설정 */
    transition: 0.3s; /* 부드러운 전환 효과 */
}


.gnb__depth02 .depth02:hover{ transition: .3s; }
.gnb__depth02 .depth02:hover a {color: #55B9B4; transition: .3s;}
.main__header .right{align-items: center;justify-content: space-between; width: 30px;}
.main__header .lang-select-box{}
.main__header .lang-select-box select{width: 80px; background-color: transparent; background: url('../img/main/btn_unfold.png') no-repeat 95% center; border: 0; font-size: 16px; font-weight: 500; letter-spacing: -0.4px; text-align: left; color: #fff;
    -o-appearance: none; -webkit-appearance: none; -moz-appearance: none; appearance: none;}
.main__header .lang-select-box select:focus{background-color: transparent; border: 0;}
.main__header .lang-select-box select option{color: #000;}
.main__header .main__header__contact{width: 220px; height: 100px; padding: 40px; background-color: #1e2087; border: 0; box-sizing: border-box;}
.main__header .main__header__contact span{font-size: 16px; font-weight: 500; letter-spacing: -0.4px; text-align: left; color: #fff;}
.main__header .main__header__contact img{margin-left: 16px;}
.main__header .toggle--mobile{padding: 20px; width: initial; display: none;}

/* 서브페이지 헤더 스타일 */
.main__header.subPage{position: static; border-bottom: 1px solid #ddd;}
.main__header.subPage .main__gnb{height: 100px;}
.main__header.subPage .main__gnb .gnb__depth01>a{color: #000;}
.main__header.subPage .gnb__depth02{top: initial;}
.main__header.subPage .lang-select-box select{color: #000; background: url('../img/main/btn_unfold_b.png') no-repeat 95% center;}
/* 메인 헤더 끝 */



/* 메인 푸터 시작 */
.

.main__footer .footer__info {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/*.main__footer{background-color:#FAFAFA }*/
.main__footer{border-top:1px solid #ccc; }

.main__footer .footer__top{display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,0.1);}
.main__footer  .policy{  display: flex;margin-left: 60px; }
.main__footer .policy li{ 
  height: 21px;
  margin: 10px 10px 31px 20px;
  font-family: Pretendard;
  font-size: 18px;
  font-weight: 500;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.75;
  letter-spacing: -0.45px;
  text-align: left;
  color: #000;}
.main__footer .policy li::after{display: block; width: 1px; height: 12px; position: absolute; top: 0px; content: ""; right: 0; background-color: #666;}
.main__footer .policy li:last-child{margin-right: 0; padding-right: 0;}
.main__footer .policy li:last-child::after{display: none}
.main__footer .policy li a{font-family: Pretendard;; font-size: 18px; text-align: left; }

.main__footer .footer__info p{ width: 654px;
  
  margin: 18.3px 806px 10.7px 84px;
  font-family: Pretendard;
  font-size: 16px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.75;
  letter-spacing: -0.4px;
  text-align: left;
  color: #000;}
.main__footer .footer__info p + p{margin-top: 3px}

.top-btn{display: flex; flex-direction: column; align-items: center; position: fixed; bottom: 40px; right: 30px; background-color: transparent; border: 0;}
.top-btn span{font-size: 12px; font-weight: 500; text-align: left; color: #fff; writing-mode: vertical-lr; transform: rotate(-180deg);}
/* 메인 푸터 끝 */





@media (max-width:1440px){

.main__footer .inner {
    /* display: flex; */
    align-items: flex-start;
    flex-wrap: wrap;
	width:100%;
}
.main__footer  .policy{  display: flex;margin-left: 0px; }

    .main__header>nav{padding-left: 10px; }
    .main__header__logo{width: 220px;}
    .main__gnb{width: calc(100% - 220px - 300px);}
    .main__header .right{width: 300px;}
    .main__header .main__header__contact{width: 200px; padding: 0; display: flex; align-items: center; justify-content: center;}
	
.main__footer .policy li a{font-family: Pretendard;; font-size: 15px; text-align: left; }
}


@media (max-width:1280px){
    .main__gnb .gnb__depth01{width: 25%;}
    .main__gnb .gnb__depth01>a{width: 100%; justify-content: center; padding: 0px;}

	
	.main__footer .footer__info p {
    width: 100%;
    margin: 18.3px 16px 10.7px 4px;
	padding-right:30px;
    font-family: Pretendard;
    font-size: 13px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.75;
    letter-spacing: -0.4px;
    text-align: left;
    color: #000;
}




}

@media (max-width:1024px){
    .main__gnb{display: none; }
    .main__header .right{width: initial;}
    .main__header .right .main__header__contact{display: none;}
    .main__header .toggle--mobile{display: block; margin-left: 8px; border: 0; cursor: pointer; background-color: transparent !important;}
	    .main__header>nav{padding-left: 10px; /*	background-image: url('../img/sub/sub-visual-01.png')*/;
    .main__footer .footer__top{flex-direction: column; align-items: flex-start;}
    .main__footer .footer__top .policy{margin-top: 35px; width: 100%;}
    .main__footer .footer__top .policy li{margin-right: 2%; padding-right: 2%;}
}

@media (max-width:769px){
    .main__header .main__header__contact{width: 160px; height: 65px;}

    .top-btn span{display: none;}
    .top-btn .icon_mark{display: none;}


	.main__footer .footer__info p {
    width: 100%;
    margin: 18.3px 16px 10.7px 4px;
	padding-right:30px;
    font-family: Pretendard;
    font-size: 13px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.75;
    letter-spacing: -0.4px;
    text-align: left;
    color: #000;
}

.main__footer .policy li a{font-family: Pretendard;; font-size: 10px; text-align: left; }

}

@media (max-width:500px){
	.main__header{width: 100%; z-index: 9; padding-top:0px; }


    .main__header__logo{width: 185px;}
    .main__header .toggle--mobile{padding: 17px;background-color: transparent !important; /* 배경을 투명하게 설정 */}
    .main__header .toggle--mobile img{width: 30px;}

    .main__footer .footer__top .footer__logo{width: 185px;}
    .main__footer .footer__top .footer__logo img{width: 100%;}
  /*  .main__footer .footer__info {margin-top: 25px;}*/

/*	.main__footer .policy li{ margin-right: 10px; padding-right: 10px;}*/
.footer__info {
  flex: 1 1 auto; /* 정보는 가변적으로 차지 */
  max-width: 800px; /* 필요한 경우 정보 영역에 최대 너비 설정 */
  margin-left: 0px; /* 로고와 정보 간의 간격 조정 */
}
.main__footer  .policy{  display: flex;margin-left: -20px; }

}

@media (max-width:375px){
    .main__header__logo{width: 135px;}
    .main__header .lang-select-box select{width: 70px; font-size: 14px;}

    .main__footer .footer__top .footer__logo{width: 165px;}
    .main__footer .footer__top .policy{flex-wrap: wrap; margin-top: 25px;}
    .main__footer .footer__top .policy li{width: 47%; padding-right: 4%; margin-right: 4%; margin-top: 5px;}
    .main__footer .footer__top .policy li:nth-child(2n){margin-right: 0; padding-right: 0;}
    .main__footer .footer__top .policy li:nth-child(2n)::after{display: none;}

    .top-btn{bottom: 20px; right: 20px;}
}