/* 초기화 */
@font-face {
    font-family: 'NanumSquareNeo-Variable';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_11-01@1.0/NanumSquareNeo-Variable.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'NanumSquareRound';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_two@1.0/NanumSquareRound.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'netmarbleB';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_four@1.1/netmarbleB.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
html {overflow-y:scroll;overflow-x: hidden; background-color: #FBFBFB}
body {margin:0 auto;padding:0 !important;font-size:13px; letter-spacing:0px; line-height:1.6em; color:#707070;
    font-family:'NanumSquareNeo-Variable', sans-serif; font-weight:400; word-break:keep-all;}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img {margin:0;padding:0;border:0}
h1, h2, h3, h4, h5, h6 {font-size:1em}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}
ul, dl {margin:0;padding:0;list-style:none}
legend {position:absolute;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
label, input, button, select, img {vertical-align:middle; outline:none;}
input:focus,
button:focus {outline:none;}
input, button {margin:0;padding:0;font-size:1em;outline:none;}
button {cursor:pointer;}
input[type=text], input[type=password], input[type=submit], input[type=image], button {border-radius:5px;font-size:1em;-webkit-appearance:none}
textarea, select {font-size:1em;}
textarea {border-radius:0;-webkit-appearance:none}
select {margin:0}
p {margin:0;padding:0;word-break:keep-all}
hr {display:none}
pre {overflow-x:scroll;font-size:1.1em}
a, a:visited {color:#353535;text-decoration:none}
a:hover, a:focus, a:active {color:#353535;text-decoration:none}

/* 화면낭독기 사용자용 */
#hd_login_msg {position:absolute;top:0;left:0;width:0;height:0;overflow:hidden}
.msg_sound_only, .sound_only {display:inline-block;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;width:1px !important;height:1px !important;font-size:0 !important;line-height:0 !important;overflow:hidden}


/* 폰트어썸 아이콘 */
i{margin:0 2px;}
.ref{font-size: 0.9em; font-weight: 600; color: #023cef; line-height: 1.2em;
    display: block; margin: 10px 0; padding: 6px 10px; background-color: #F7F7F7; border-radius: 10px;}
div.ref{padding: 20px; line-height: 1.6em;}
div.ref .box{ margin-top: 15px; padding: 10px; background-color: #fff; border-radius: 10px; color: #707070 }
div.ref .box strong{font-size: 1.1em; display: inline-block; margin-bottom: 5px;}
.leaf2{line-height: 2em; color: #fff; background: url("../../img/landing/logo_leaf.svg") no-repeat 100% 0%/auto 100%; display: inline-block; padding: 15px 6px 0 22px; margin-right: 4px;}

/*form 디자인*/
.form{padding: 26px;}
.form dl{margin-bottom: 20px;}
.form dt{font-size: 1.1em; margin-bottom: 14px; padding-left: 10px;}
.form .flex{display: flex; align-items: baseline; justify-content: space-between;}
.form .btn{border-radius: 15px; line-height: 38px; margin-left: 4px;}
.form .btn_submit{border:0; width:100%; background-color: #023cef;
    color: #fff; font-size: 1.2em; padding: 12px 16px; border-radius: 15px;}


.form .ft_btn{position: fixed; left: 0; bottom: 0; width: 100%; z-index: 100;}
.form .ft_btn .btn_submit{width: calc(100% - 32px); margin: 16px;}

@media (min-width:600px) {
    .form .ft_btn{position: relative;}
    .form .ft_btn .btn_submit{width: 100%; margin: 16px 0;}
}

.upload label{min-width: 85px; margin: 0 10px 0 0;}
.upload .flex{justify-content: flex-start;
    width: 100%; background-color: #FDFDFB; border: 1px solid #ddd; border-radius: 15px; line-height: 42px; margin-bottom: 12px; padding: 0 20px;}
select{width: 100%; background-color: #FDFDFB; border: 1px solid #ddd; border-radius: 15px; height: 42px; line-height: 42px; margin-bottom: 12px; padding: 0 18px;}

input[type="date"],
input[type="tel"],
input[type="password"],
input[type="text"]{width: 100%; background-color: #FDFDFB; border: 1px solid #ddd; border-radius: 15px; line-height: 42px; margin-bottom: 12px; padding: 0 20px;}


input[type="checkbox"] {position: absolute;width: 1px;height: 1px;padding: 0;margin: 0px;overflow: hidden;clip:rect(0,0,0,0);border: 0;}
input[type="checkbox"] + label{position: relative; font-weight: normal; margin-right:10px; padding-left: 25px; font-weight: 600;}
input[type="checkbox"] + label:before {content: ' ';display:block;width: 20px;height: 20px;
    border-radius: 4px; border:1px solid #eee; background-color: transparent;
    text-align: center;vertical-align: middle;font-size:1.2em;color:#666;
    position: absolute;left: 0; top: 50%; transform:translateY(-50%);}
input[type="checkbox"] + label:after {
    font-family: "Font Awesome 5 Pro";color: #ddd; display: block;;
    content: "\f00c";position:absolute;top:50%; left:4px; transform:translateY(-50%);font-weight:300;}

input[type="checkbox"]:checked + label:before{background-color:#023cef; border: 1px solid #023cef; }
input[type="checkbox"]:checked + label:after {color: #fff;}


input[type="radio"] {position: absolute;width: 1px;height: 1px;padding: 0;margin: 0px;overflow: hidden;clip:rect(0,0,0,0);border: 0;}
input[type="radio"] + label{position: relative; font-weight: normal; margin-right:10px; padding-left: 25px;}
input[type="radio"] + label:before {content: ' ';display:block;width: 20px;height: 20px;border-radius: 50%;background-color: #FFF1F2;
    text-align: center;vertical-align: middle;font-size:1.2em;color:#666;
    position: absolute;left: 0; top: 50%; transform:translateY(-50%);}
input[type="radio"]:checked + label:before {background-color: #fff; border: 1px solid #ff1655;}
input[type="radio"]:checked + label:after {content: "";display: block;position: absolute;left: 0; top: 50%; transform:translateY(-50%);margin: 0px 5px;width: 10px;height: 10px; border-radius: 50%;background-color: #ff1655;}

.box_in input[type=checkbox] + label:hover > div { border-width: 2px; }
.box_in input[type=checkbox] { display: none; }
.box_in input[type=checkbox] + label { cursor: pointer; font-size:0.95em; font-weight:normal; display:inline-block !important;
    background:#fff; padding:8px 10px; line-height:1em; border-radius:6px; border:1px solid #ddd; margin-right: 4px; }
.box_in input[type=checkbox] + label > div { width: 13px; height: 13px; margin-top: -2px; display: none;}
.box_in input[type=checkbox] + label > div:before{font-weight: 500; top: 53%}
.box_in input[type=checkbox]:checked + label{
    background:#fff;
    border:1px solid #ff1655;
    color:#ff1655;
    font-weight: 600;
}

/*가로스크롤*/
.scroll_x{overflow-x:scroll; padding:0px; -webkit-overflow-scrolling:touch;-ms-overflow-scrolling:touch;-mos-overflow-scrolling:touch;-o-overflow-scrolling:touch;}
.scroll_x ul{white-space:nowrap;}
.scroll_x li{display:inline-block; white-space:nowrap; margin-right:5px; vertical-align:top; position:relative;}

/*브라우저 상하단이동버튼*/
#gobtn{position:fixed; display:block; right:10px; bottom:20px; display:none; z-index:9999;}
.goHd, .goFt{width:30px; height:30px; background:#F7F7F7; z-index:9999; text-indent:-9999px; border:1px solid #CCC; position:relative;
	  transition:all 0.5s; box-shadow:0px 0px 3px RGBA(0, 0, 0, 0.5); border-radius:4px; display:block; margin-bottom:3px;}
.goHd span{position:absolute; top:60%; left:9px; display:block; width:10px; height:10px; border-left:2px solid #666; border-top:2px solid #666; border-radius:2px;
    transform:translateY(-50%) rotate(45deg);}
.goFt span{position:absolute; top:40%; left:9px; display:block; width:10px; height:10px; border-left:2px solid #666; border-top:2px solid #666; border-radius:2px;
    transform:translateY(-50%) rotate(-135deg);}
.goHd:hover, .goFt:hover{background:#333; border:1px solid #333}
.goHd:hover span, .goFt:hover span{border-left:2px solid #FFF; border-top:2px solid #FFF;}

/* 준비중페이지 */
#ready{text-align:center; background:url(../../theme/basic_app/img/common/ready.png) no-repeat 50% 0; margin:80px 0;
        padding-top:130px; font-size:1.5em; line-height:1.3em; color:#333;}
#ready strong{font-weight:600; color:#23B1BD;}
#ready p{font-size:0.8em; color:#666;}

/* 블랙 표 
.tbl table{width:100%; margin:10px 0px 0px 0; font-size:0.95em; border-top:1px solid #E3E3E3; border-bottom:1px solid #E3E3E3; font-size:1.1em; line-height:1.8em; }
.tbl td, .tbl th{vertical-align:middle; border-bottom:1px solid #8C8C8C; padding:10px 15px; border-left:1px solid #8C8C8C; text-align:center;}
.tbl td{}
.tbl th{border-right:1px solid #8C8C8C; color:#FFF; background:#C4E6F6; font-weight:bold;}

.tbl thead th{border-bottom:1px solid #fff; background:#000;}
.tbl tbody th{background:#404040; border-bottom:1px solid #8C8C8C; font-weight:normal;}

.tbl tr th:first-child, .tbl tr td:first-child{border-left:0;}
.tbl tr:last-child th{border-right:0;}

.tbl table.td_left td{text-align:left;}*/

/* 화이트 표 */
.tbl table{width:100%; margin:10px 0px 0px 0; border-left:1px solid #CBCBCB; border-top:1px solid #CBCBCB; border-bottom:1px solid #E3E3E3; font-size:1em; line-height:1.5em; }
.tbl td, .tbl th{vertical-align:middle; border-bottom:1px solid #CBCBCB; padding:10px 5px; border-right:1px solid #CBCBCB; text-align:center;}
.tbl td{}
.tbl th{border-right:1px solid #CBCBCB; color:#333; background:#E3E3E3; font-weight:bold;}

.tbl thead th{border-bottom:1px solid #CBCBCB; background:#E0EEF8;}
.tbl tbody th{background:#FBFBFB; border-bottom:1px solid #CBCBCB; font-weight:normal;}

/*.tbl tr th:first-child, 
.tbl tr td:first-child{border-left:0;}
.tbl tr td:last-child,
.tbl tr th:last-child{border-right:0;}*/

.tbl table.td_left td{text-align:left;}

/*가로스크롤*/
.row-horizon {
  position:relative;
  width:98%;
  padding:0 0 20px 0;
  margin:0 auto 20px auto;
  overflow-x: hidden;
  overflow-y: hidden;
}
@media screen and (max-width:787px) {
.row-horizon:before{content:"← 좌우스크롤로 확인해주세요 →"; display:block; text-align:center; margin-bottom:10px;}
.row-horizon {
  overflow-x: scroll;
  overflow-y: hidden;
  white-space: nowrap;
}
}

/*clearfix*/
.cf{}/* 여기서 cf는 float속성을 가진 태그의 부모태그라고 생각한다.*/
.cf:after{display:block; content:""; clear: both;}
.hide{display:none;}
.cb{clear:both!important;}
.bgn{background:none!important;}
.bdn{border:none!important;}
.pa{position:absolute!important;}
.fwb{font-weight:bold!important;}
.fl{float:left;}
.fr{float:right;}

/*기본모달*/
/*모달*/
.modal-backdrop{background:;}
.modal-backdrop.in{opacity:.7;}
.modal-header{font-weight: 600;}
.modal-content{box-shadow:none; -webkit-box-shadow:none; border:0; padding:0;}

.modal-dialog{margin:0% 5%; position:fixed; top:2%; bottom: 2%; width:90%; }
.modal-content{border-radius:; }
.modal-body{padding:0px;}
.modal-body li:first-child{border-top:0;}
.modal-body li{border-top:1px solid #ddd;}
.modal-body li a{display:block; padding:15px 30px;}
.modal-body li i{font-size:1.3em; margin-right:10px;}

.modal.fade .modal-dialog {
  -webkit-transition: -webkit-transform .3s ease-out;
       -o-transition:      -o-transform .3s ease-out;
          transition:         transform .3s ease-out;
  -webkit-transform: translate(0, 25%);
      -ms-transform: translate(0, 25%);
       -o-transform: translate(0, 25%);
          transform: translate(0, 25%);
}
.modal.fade.in .modal-dialog {
  -webkit-transition: -webkit-transform .3s ease-out;
       -o-transition:      -o-transform .3s ease-out;
          transition:         transform .3s ease-out;
  -webkit-transform: translate(0, -0%);
      -ms-transform: translate(0, -0%);
       -o-transform: translate(0, -0%);
          transform: translate(0, -0%);
}

@media (min-width: 750px) {

    .modal-dialog{margin:0%; top: 10%; bottom: 10%; left: calc(50% - 200px); width:400px; }

}

/*원형모달*/
#circle{}
#circle .modal-backdrop{background:;}
#circle .modal-backdrop.in{opacity:.7;}
#circle .modal-content{box-shadow:none; -webkit-box-shadow:none; border:0; padding:0;}
#circle .modal-header {text-align:right; padding:10px 15px;}
#circle .modal-header .close{ float:none;}

#circle .modal-dialog{margin:0; position:fixed; bottom:80px; width:auto; }
#circle .modal-content{border-radius:20px 20px 0 0; background:none; }
#circle .modal-body{padding:15px;}
#circle .modal-body a{display:block; padding:10px 0px; background:#12bcbb; color:#fff; font-weight:600; font-size:1.1em; text-align:center; width:70px; height:70px; border-radius:50%; margin-bottom:10px;}
#circle .modal-body a i{font-size:1.8em; line-height:1.2em;}
#circle .modal-body a p{font-size:0.75em; line-height:1.4em; font-weight:normal;}

#circle .modal.fade .modal-dialog {
  -webkit-transition: -webkit-transform .3s ease-out;
       -o-transition:      -o-transform .3s ease-out;
          transition:         transform .3s ease-out;
  -webkit-transform: translate(0, 25%);
      -ms-transform: translate(0, 25%);
       -o-transform: translate(0, 25%);
          transform: translate(0, 25%);
}
#circle .modal.fade.in .modal-dialog {
  -webkit-transition: -webkit-transform .3s ease-out;
       -o-transition:      -o-transform .3s ease-out;
          transition:         transform .3s ease-out;
  -webkit-transform: translate(0, -0%);
      -ms-transform: translate(0, -0%);
       -o-transform: translate(0, -0%);
          transform: translate(0, -0%);
}

/*모달*/
/*부트스트랩*/
.ad_pop.modal .modal-content {
    max-width: 530px;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.ad_pop.modal.in .modal-content {
    top: 50%;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}
.ad_pop .modal-header {
    border-bottom: 0;
    min-height: inherit;
    padding: 15px;
    background: #2E499F;
}
.ad_pop .modal-header h1{
    color: #fff;
    font-size: 1.3em;
}
.ad_pop .modal-header .close {
    position: absolute;
    top: -33px;
    right: 0;
    text-shadow: none;
    font-size: 1em;
    opacity: 1;
    color: #FFF;
    font-weight: 400;
    line-height: 30px;
    display: flex;
    align-items: center;
    grid-gap: 5px;
}
.ad_pop .modal-header #today-close{
    right: 50px;
}
.ad_pop .modal-body {
    overflow-y: auto;
    margin-right: 0;
    width: 100%;
    min-height: 15vh;
    max-height: 55vh;
    overflow-y: scroll;
    display: flex;
    align-items: center;
    justify-content: center;
}
.ad_pop .modal-body h3{
    font-size: 1.3em;
    line-height: 1.6;
}
.ad_pop .modal.btm_modal .modal-content{
    position: absolute;
    top: unset;
    left: 50%;
    bottom: 0;
    transform: translate(-50%,0);
    border-radius: 6px 6px 0 0;
}
.ad_pop .modal.btm_modal .modal-body{
    flex-direction: column;
    align-items: flex-start;
}
.ad_pop .modal-header{
    background: transparent;
    padding: 0;
}
.ad_pop .modal-body{
    padding: 0;
    overflow: hidden;
    max-height: inherit;
}
.ad_pop .modal-body img{
    width: 100%;
}
.quick{position: fixed; bottom: 20px; right: 10px; z-index: 100;}
.quick a{display: block; width: 70px; height: 70px; border-radius: 50%; background-color: #FFDE00; color: #231816; box-shadow:1px 2px 3px rgba(0,0,0,0.16); text-align: center; padding: 10px 0;}
.quick a img{height: 30px;}
.quick a p{font-size: 12px;}


#navtoggle {position:absolute; width:100%; height:100vh; right:0; top:0; background-color: #023cef; overflow:hidden; z-index:102; padding: 20px 25px;}
#navtoggle .m_tnb{display: flex; align-items: center; justify-content: space-between; margin-bottom: 40px;}
#navtoggle .m_logo img{height: 32px;}
#navtoggle .close{z-index:1001; opacity:1; text-shadow: none!important; color: #fff; }

#navtoggle #m_gnb{padding: 20px;}
#navtoggle #m_gnb a{display:inline-block; color: #fff;}
.mgnb_1dli{color: #fff; font-size: 1.3em;  line-height: 2em;}
.mgnb_1dli:before{content: ""; display: inline-block; width: 6px; height: 6px; background: url("../img/menu_icon.svg") no-repeat; vertical-align: middle; margin-right: 10px;}
a.mgnb_1da{padding: 10px 0;}
.mgnb_2dli{opacity: 0.6; margin-left: 20px; font-size: 0.8em;}
a.mgnb_2da{padding: 0;}

#ft_copy{color: #fff; position: absolute; bottom: 0; left: 0; padding: 20px 25px; opacity: 0.8;}
#ft_company a{color: #fff; display: inline-block; margin-right: 4px;}
#ft_company a:after{content: ""; display: inline-block; width: 1px; height: 8px; background: rgba(255,255,255,0.5); margin: 0 5px 0 10px;}
#ft_company a:last-child:after{display: none;}
#ft_copy .co{color: #fff; font-size: 11px; opacity: 0.5;}


/*이용안내*/
#user_guide{padding: 20px;}
#user_guide h4{font-size: 2em; text-align: center; margin-bottom: 40px; color: #343434}

#user_guide .step dl{display: flex; align-items: flex-start; margin-bottom: 20px; background-color: #fff; border-radius: 15px;
    padding: 26px; box-shadow: 0 3px 2px rgba(0,0,0,0.05); border: 1px solid #eee;}
#user_guide .step dt{width: 210px; font-size: 1.4em;}
#user_guide .step dd{width: calc(100% - 210px); font-size: 1.1em;}

@media (max-width:600px) {
    #user_guide h4{font-size: 1.4em; line-height: 1.6em;}
    #user_guide .step dl{display: block;}
    #user_guide .step dt{width: 100%; margin-bottom: 20px;}
    #user_guide .step dd{width: 100%;}
    #user_guide .step dd p{line-height: 1.6em;}

}

/*QNA*/
#qna h4{font-size: 2em; text-align: center; margin-bottom: 40px; color: #343434}
#qna img{width: 100%;}

#daum_juso_pagezip{position: fixed!important; left:50%!important; top: 50%!important; transform: translate(-50%,-50%);
                    max-width:850px; width: 90%!important; z-index: 99; margin: 0!important; }
