*{outline: 0}
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css");

*{ margin: 0; padding: 0; }
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary, button,
time, mark, audio, video, a, textarea, input{;margin:0;  padding:0;  border:0; font-size:100%; vertical-align:baseline; background:transparent; -webkit-text-size-adjust:none; box-sizing:border-box; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; font-family: 'pretendard', sans-serif; font-style: normal; }
html{ -ms-touch-action:auto;}
html,body, section{width:100%;} 

img{}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav, section{}
legend, caption{width:0;height:0;visibility:hidden;font-size:0;line-height:0;}
button{cursor:pointer; border:none; padding:0; }
button::-moz-focus-inner, input::-moz-focus-inner {border:0; padding:0;}
li,dd{list-style:none;}
blockquote, q {quotes:none;}
address, caption, em, cite, i, a {font-weight:normal; font-style:normal; text-decoration: none;color: #333}
table {border-collapse:collapse; border-spacing:0; table-layout:fixed;}
iframe{width:100%;vertical-align:middle;}
caption{display:none;}
figcaption{display:block;}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {-webkit-appearance:none;  margin:0; }

strong {font-weight: bold }

input[type="text"], input[type="number"],input[type="email"], input[type="search"],
input[type="password"], input[type="date"], input[type="tel"], select{display:table-cell; vertical-align:middle; padding:  0 0 0 7px; height: 40px; line-height: 1; box-sizing: border-box; background:#fff; border:1px solid #cccccc; border-radius:0; color:#999; font-size:12px;font-family: 'Pretendard', sans-serif;}

input[type="search"] {border-radius:0; -webkit-border-radius:0; -webkit-appearance:textfield;}
input[type="search"]::-webkit-search-results-decoration {-webkit-appearance:none;}

input[type='checkbox'],input[type='radio'] {vertical-align:middle; margin-top:0;  cursor : pointer;}

input.disabled {background:#fff;}

input[type=date]::-webkit-clear-button,
input[type=date]::-webkit-inner-spin-button,
input[type=date]::-webkit-calendar-picker-indicator {
    display: none;
}


select::-ms-expand{display:none; }
select{ cursor: pointer; outline :none; overflow :hidden; color:#999; width:100%;;  }
textarea{width:100%;height:100px; resize:none; border:1px solid #cccccc;   padding:10px; color:#999;}


.blind{position:absolute; top:-999999px; width:0; height:0; font-size:0; overflow:hidden;}
.clear:after{content:""; display: table; clear: both;}
.clearfix{overflow:hidden;}
.clearfix:after{clear:both; display:table; content:'';}
.center{text-align:center; display:block; float:none !important;}
.accessibility{display: none}
.hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: none;
    clip: rect(0,0,0,0);
    overflow: hidden;
}


.eng{ font-family: "Montserrat", sans-serif; }




/* 헤더 공통 */
#header{ position: fixed; width: 100%; left: 0; top: 0; z-index: 99; background-color: #fff; height: 72px; padding: 0 60px; }
#header:before{ content:""; display: block; width: 100%; height: 0; border-radius: 0 0 40px 40px; background-color: #fff; position: fixed; left: 0; top: 72px; border-top: 1px solid rgba(0,61,174,0.15); transition: height .6s; }
#header .wrap{  position: relative; height: 100%; }
#header h1{ position: absolute; left: 0; top: 50%; transform: translate(0,-50%); }
#header h1 a{ display: block ;width: 100%; height: 100%; position: relative; }
#header.dw:before{ height: 220px; }

#header .gnb{ position: absolute; right: 0; top: 50%; transform: translate(0,-50%); display: flex; align-items: center; gap: 40px; }
#header .gnb > ul{ display: flex; gap: 26px; transition: gap .6s; }
#header .gnb > ul > li{ position: relative; }
#header .gnb > ul > li > a{ display: block; text-align: center; font-size: 17px; font-weight: 500; color: #000; width: 120px; line-height: 72px; position: relative; transition: color .3s; }
#header .gnb > ul > li > ul{ position: absolute; left: -35%; top: 100%; width: 170%;  display: none; padding-bottom: 40px; padding-top: 30px; }
#header .gnb > ul > li > ul li{ text-align: center; margin-bottom: 24px; }
#header .gnb > ul > li > ul li:last-child{ margin-bottom: 0; }
#header .gnb > ul > li > ul li a{ font-size: 16px; font-weight: 500; color:#1f1f1f;  transition: color 0.3s; }
#header .gnb > ul > li:hover > a{ color: #003dae; font-weight: 600; }
#header .gnb > ul > li > ul > li:hover > a{ color: #003dae; }
#header .gnb.ac > ul{ gap: 100px; }

#header .gnb .lang{ width: 89px; height: 32px; }
#header .gnb .lang a{ display: block; width: 100%; height: 100%; border-radius: 50px; background-color: #003DAE; display: flex; align-items: center; justify-content: center; gap: 8px; color: #fff; font-weight: 500; font-size: 16px; transition: background .3s; }
#header .gnb .lang a:hover{ background-color: #00266D; }

#header .all_menu_b{ width: 26px; height: 26px; position: absolute; right: 0; top: 50%; transform: translate(0,-50%); cursor: pointer; display: none; }
#header .all_menu_b span{ display: block; width: 12px; height: 12px; background-color: #1f1f1f; position: absolute; }
#header .all_menu_b span:nth-child(1){ left: 0; top: 0; animation: menu 2s linear infinite; }
#header .all_menu_b span:nth-child(2){ right: 0; top: 0; animation: menu 2s linear infinite; animation-delay: .2s; }
#header .all_menu_b span:nth-child(3){ right: 0; bottom: 0; animation: menu 2s linear infinite; animation-delay: .4s; }
#header .all_menu_b span:nth-child(4){ left: 0; bottom: 0;animation: menu 2s linear infinite;animation-delay: .6s;  }


#header .all_menu{ position: fixed; right: 0; top: 0; height: 100%; width: 80%; max-width: 320px; background-color: #fff; padding-top: 140px; padding-bottom: 60px; padding-left: 50px; z-index: 999;
  transform: translate(100%,0); transition: transform .8s; overflow-y: scroll;
}
#header .all_menu.on{ transform: translate(0,0); box-shadow: 0px 30px 0px 0px rgb(69 80 95 / 12%); }



#header .all_menu .close_b{ width: 28px; height: 28px; position: absolute; right: 20px; top: 20px; background-color: transparent; transform: rotate(45deg);}
#header .all_menu .close_b span:nth-child(1){ width: 100%; height: 2px; background-color: #5b606a; display: block; position: absolute; left: 0; top: 13px; }
#header .all_menu .close_b span:nth-child(2){ width: 2px; height: 100%; background-color: #5b606a; display: block; position: absolute; left: 13px; top: 0; }
#header .all_menu > ul > li{ margin-bottom: 30px; }
#header .all_menu > ul > li:last-child{ margin-bottom: 0; }
#header .all_menu > ul > li > a{ font-size: 16px; font-weight: 500; color:#313741; letter-spacing: -0.5px; display: block; position: relative; }
#header .all_menu > ul > li > a:after{ content:""; display: block; width: 0; height: 2px; background-color: #002870; position: absolute; left: -50px; top: 50%; transform: translate(0,-50%);}
#header .all_menu > ul > li:hover > a{ color: #002870; }
#header .all_menu > ul > li:hover > a:after{ width: 30px; transition: width .5s; }

#header .all_menu > ul > li > ul{ margin-top: 20px; display: none; }
#header .all_menu > ul > li > ul.on{ display: block; }
#header .all_menu > ul > li > ul > li > a{ font-size: 16px; font-weight: 500; color:#494d54; opacity: .6; letter-spacing: -0.5px; display: block; transition: opacity .4s; }
#header .all_menu > ul > li > ul > li:hover > a{ opacity: 1; }
#header .all_menu > ul > li > ul > li{ margin-bottom: 12px; }
#header .all_menu > ul > li > ul > li:last-child{ margin-bottom: 0; }
#header .all_menu .sub_b{ margin-top: 10px; display: none; }
#header .all_menu .sub_b li a{ font-size: 14px; color: #666; line-height: 24px; opacity: .4; transition: opacity.3s; }
#header .all_menu .sub_b li a:hover{ opacity: 1; }

#footer{padding-top: 60px; padding-bottom: 90px; background-color: #161616; }
#footer address{ display: block; margin-top: 20px; font-size: 16px; line-height: 1.6em; color:FFFFFF; letter-spacing: -1px; }


















/**/