@charset "utf-8";

@font-face{font-family:'SUIT';font-weight:400;src:url('../../fonts/SUIT-Regular.woff2') format('woff2');}
@font-face{font-family:'SUIT';font-weight:500;src:url('../../fonts/SUIT-Medium.woff2') format('woff2');}
@font-face{font-family:'SUIT';font-weight:600;src:url('../../fonts/SUIT-SemiBold.woff2') format('woff2');}
@font-face{font-family:'SUIT';font-weight:700;src:url('../../fonts/SUIT-Bold.woff2') format('woff2');}
@font-face{font-family:'SUIT';font-weight:800;src:url('../../fonts/SUIT-ExtraBold.woff2') format('woff2');}

@font-face{font-family:'SavetheChildrenOTF';font-weight:400;src:url('../../fonts/SavetheChildrenOTF_M.otf');}
@font-face{font-family:'SavetheChildrenOTF';font-weight:600;src:url('../../fonts/SavetheChildrenOTF_B.otf');}

@font-face{font-family:'Pretendard Variable';src:url('../../fonts/PretendardVariable.woff2');}

body{font-family: SUIT, 'SUIT', NanumGothic, "나눔고딕", 'Nanum Gothic', Nanum Gothic, dotum,'돋움',gulim,'굴림', Tahoma, sans-serif;font-size:16px;color:#303030;font-weight: 400;}
.sc_font{font-family: SavetheChildrenOTF, 'SavetheChildrenOTF', SUIT, 'SUIT', NanumGothic, "나눔고딕", 'Nanum Gothic', Nanum Gothic, dotum,'돋움',gulim,'굴림', Tahoma, sans-serif;}
 
/*********************** 초기화 *************************/
*,::after,::before{box-sizing: border-box;}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p,
abbr, address, cite, code, dfn, em, img, small, strong, sub, sup, b, i, dl, dt, dd, ol, ul, li, a,
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,
mark, audio, video { margin: 0; padding: 0; border: 0; outline :0; font-size: 100%; vertical-align: baseline; background: transparent;}

html { height: 100%; -webkit-text-size-adjust: none; -moz-text-size-adjust: none; -ms-text-size-adjust: none;}
body { height: 100%; line-height: 1.6;}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
ul, ol, li, dl, dd { list-style: none; }
img { vertical-align: middle; }
a { display: inline-block; text-decoration: none; box-sizing: border-box; color: #303030;}
.root a:hover{color: #303030;}
.root ul{padding-bottom: 0; padding-left: 0;}
em, b { font-style: normal; }
b, strong { font-weight: bolder; }
div, span, td, li, input { box-sizing: border-box; }
h1, h2, h3, h4, h5, h6 {font-weight: normal;}

table { width: 100%; border-collapse: collapse; border-spacing: 0; table-layout: fixed; }
th, td { word-wrap: break-word; word-break: break-all; }

legend { font-size: 0; }
summary { display: list-item; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; box-sizing: border-box; overflow: hidden; }
hr.hidden{ height: 0; border-top: 0; margin: 0;}

button, input, optgroup, select, textarea { font-family: inherit; font-size: 100%; margin: 0; }
textarea{ overflow-y: auto; overflow-x: hidden;}
button, input { overflow: visible; border: 0; }
button, select { text-transform: none; vertical-align: middle; }
button, [type="button"], [type="reset"], [type="submit"] { padding: 0; margin: 0; -webkit-appearance: button; cursor: pointer; background: none;}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0;}
button::-moz-focusring, [type="button"]::-moz-focusring, [type="reset"]::-moz-focusring, [type="submit"]::-moz-focusring { /*outline: 1px dotted gray;*/ }
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }
[hidden] { display: none; }
[type="search"] { -webkit-appearance: textfield; /*outline-offset: -1px;*/ }
[type="search"]::-webkit-search-decoration { -webkit-appearance: none;}
::-webkit-file-upload-button { -webkit-appearance:button; font: inherit; }
:focus { /*outline: 0;*/ }
input:focus, a:focus, button:focus, textarea:focus { /*outline-color: gray; outline-offset: -1px; outline-style: dotted; outline-width: 1px;*/}
button::-moz-focusring { /*outline-color: gray; outline-offset: -1px; outline-style: dotted; outline-width: 1px;*/}
button::-moz-focus-inner{  }
input { vertical-align: middle; margin: 0; padding: 0; }
input[type="text"], input[type="search"], input[type="email"] { width: 100%; height: 100%; border: 0; background-color: transparent; }
input[type="text"]::placeholder, input[type="search"]::placeholder {  }

span, em, b, button, img, label{display: inline-block;}
label{cursor: pointer;}

/*********************** 기능 *************************/
/* skip navigation */
.sknavi{z-index: 1000;top: -500px;position: absolute;}
.sknavi:active, .sknavi:focus{top: 0;display: block;width: 100%;text-align: center;font-weight: 600;background-color: #f7f7f7;text-decoration: none;height: 40px;line-height: 40px;color: #000;font-size: 15px;border-bottom: 1px solid #ddd;z-index: 10000;}

/*단어 keep*/
*{word-break: keep-all;}
th,td{word-break: keep-all;}

/*접근성 지키며 텍스트 숨기기*/
.invisible, legend{border: 0; clip: rect(0 0 0 0); clip: rect(1px, 1px, 1px, 1px); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px;}
caption{visibility:hidden; overflow:hidden; width:0;height:0;font-size:0;line-height:0} 

/* Form 요소 */
input[type="text"], input[type="password"], input[type="number"] {border: 1px solid #ddd;}
select{border: 1px solid #ccc; width: 100%; -webkit-appearance: none; -moz-appearance: none; appearance: none; background: url(../../images/select.png) no-repeat right 13px top 50% #fff;}
textarea {color: #333; border: 1px solid #ddd;}

/*말줄임표*/
.ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;-o-text-overflow:ellipsis}

/*커서*/
.cursor{cursor: pointer;}

/*placeholder*/
::-webkit-input-placeholder{color: #888;}/* Edge */
:-ms-input-placeholder{color: #888;}/* Internet Explorer 10-11 */
::placeholder{color: #888;}

/*레이아웃 관련 클래스*/
.hide{display: none;}
.pos-r { position: relative !important; }
.fl-l { float: left !important; }
.fl-r { float: right !important; }
.ta-l { text-align: left !important;}
.ta-c { text-align: center !important;}
.ta-r { text-align: right !important;}
.va-t { vertical-align: top !important;}
.va-tt { vertical-align: text-top !important;}
.va-m { vertical-align: middle !important;}
.va-b { vertical-align: baseline !important;}
.d-none { display: none !important; height: 0; overflow: hidden; }
.d-tbl { display: table; width: 100%; border-collapse: collapse; border-spacing: 0; table-layout: fixed; }
.d-tbc { display: table-cell; width: auto; vertical-align: top; }
.tabCont { display: none; }
.tabCont.active { display: block; }
button.hidden { display: none !important; }

/*아이폰에서 absolute나 fixed영역에 터치스크롤 부드러워지게*/
body{-webkit-overflow-scrolling:touch;}

/*아이폰 사파리에서 오버스크롤 바운스 방지 */
*{overscroll-behavior: contain;}
html, body{overscroll-behavior: none;}

/*핀치 줌 막기*/
html{-webkit-text-size-adjust: none; text-size-adjust: none; -ms-text-size-adjust : none; -moz-text-size-adjust : none; -o-text-size-adjust : none; -ms-content-zooming: none; -ms-touch-action: pan-x pan-y;}
