@charset "UTF-8";

/****************************** FONT ******************************/
@import 'https://fonts.googleapis.com/css2?family=Montserrat:wght@300;500;700&display=swap';
@import 'https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;700&display=swap';
@font-face { font-family:'NanumSquare'; font-style:normal; font-weight:400; src: local('☺'), url('../font/NanumSquare/NanumSquareR.woff2') format('woff2'), url('../font/NanumSquare/NanumSquareR.woff') format('woff'); }
@font-face { font-family:'NanumSquare'; font-style:normal; font-weight:700; src: local('☺'), url('../font/NanumSquare/NanumSquareB.woff2') format('woff2'), url('../font/NanumSquare/NanumSquareB.woff') format('woff'); }
@font-face { font-family:'NanumSquare'; font-style:normal; font-weight:800; src: local('☺'), url('../font/NanumSquare/NanumSquareEB.woff2') format('woff2'), url('../font/NanumSquare/NanumSquareEB.woff') format('woff'); }
/* IBM Plex Sans KR */
@font-face { font-family: 'NanumSquareRound'; font-style: normal; font-weight: 600; src: url('../font/NanumSquareRound/NanumSquareRoundB.woff') format("woff"); }
/* IBM Plex Sans KR */
@font-face { font-family: 'IBM Plex Sans KR'; font-style: normal; font-weight: 600; src: url('../font/IBMPlexSans/IBMPlexSansKR-SemiBold.woff') format("woff"); }

/****************************** RESET ******************************/
html, body { height:100%; text-size-adjust:none; -webkit-text-size-adjust:none; -moz-text-size-adjust:none; -ms-text-size-adjust:none; -webkit-tap-highlight-color:rgba(0, 0, 0, 0); }
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, textarea, p, blockquote, th, td, input, select, textarea, button, a,span, figure  { margin:0; padding:0; box-sizing:border-box; }
body, input, select, textarea, button, table { font-family:'Noto Sans KR', sans-serif; font-size:16px; line-height:1.4; color:#000; word-break:keep-all; word-wrap:break-word; letter-spacing:-0.025em; }
h1, h2, h3, h4, h5, h6 { font-weight:inherit; font-size:inherit; }
fieldset { border:0; }
img { border:0; vertical-align:middle; }
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display:block; }
dl, ul, ol, menu, li { list-style:none; }
em, address { font-style:normal; }
a { color:inherit; text-decoration:none; }
a:hover,a:active,a:focus { text-decoration:none; }
img, a{ -webkit-user-select: none; /* Safari 3.1+ */ -moz-user-select: none; /* Firefox 2+ */ -ms-user-select: none; /* IE 10+ */ user-select: none; /* Standard syntax */ user-drag: none; -webkit-user-drag: none; }
input, select, textarea, button { vertical-align:middle; border-radius:0;-webkit-appearance:none; }
button { cursor:pointer; width:auto; overflow:visible; color:inherit; vertical-align:middle; background:transparent; border:none; box-sizing:border-box; }
sup { line-height:1; font-size:0.7em; }
table { border-collapse:collapse; border-spacing:0; width:100%; empty-cells:show; }
caption, legend { text-indent:-9999px; width:0; height:0; font-size:1px; line-height:0; border:0; white-space:nowrap; overflow:hidden; }
input[type='text'], input[type='password'] { box-sizing:border-box; -webkit-appearance:none; appearance:none; resize:none; box-shadow:none !important; }
input:checked[type='checkbox'] { -webkit-appearance:checkbox; }
input[type='text']::-ms-clear, input[type='tel']::-ms-clear{ display:none; }
input,textarea { -webkit-tap-highlight-color:rgba(0,0,0,0) }
input[disabled="disabled"], select[disabled="disabled"], input[readonly="readonly"], input.disabled, input.readonly { background-color:#f5f5f5 !important; color:#666 !important; cursor:default; box-sizing:border-box; }
input[disabled="disabled"]:focus, select[disabled="disabled"]:focus, input[readonly="readonly"], input.disabled:focus, input.readonly:focus { border-color:#ddd !important }
select { vertical-align:middle; -webkit-appearance:none; -moz-appearance:none; appearance:none; border-radius:0; }
select::-ms-expand { display:none; }
input[data-fakefile="file"] { position:absolute; width:1px; height:1px; padding:0; margin:0; opacity:0; overflow:hidden; box-sizing:border-box; }
::-webkit-input-placeholder { color:#999 !important; letter-spacing:-0.025em; font-weight:normal !important; }
::-moz-placeholder { color:#999 !important; letter-spacing:-0.025em; font-weight:normal !important; }
:-ms-input-placeholder { color:#999 !important; letter-spacing:-0.025em; font-weight:normal !important; }
select.placeholder { color:#999 !important; letter-spacing:-0.025em; font-weight:normal !important; }
th, td { text-indent:0; word-break:keep-all; word-wrap:break-word; }
div:focus, dl:focus, dt:focus, dd:focus, ul:focus, ol:focus, li:focus, h1:focus, h2:focus, h3:focus, h4:focus, h5:focus, h6:focus, pre:focus, code:focus,
form:focus, fieldset:focus, legend:focus, textarea:focus, p:focus, blockquote:focus, th:focus, td:focus, article:focus, aside:focus, details:focus,
figcaption:focus, figure:focus, footer:focus, header:focus, hgroup:focus, main:focus, nav:focus, section:focus, summary:focus,a:focus,button:focus,input:focus,select:focus,textarea:focus,
div:hover, dl:hover, dt:hover, dd:hover, ul:hover, ol:hover, li:hover, h1:hover, h2:hover, h3:hover, h4:hover, h5:hover, h6:hover, pre:hover, code:hover,
form:hover, fieldset:hover, legend:hover, textarea:hover, p:hover, blockquote:hover, th:hover, td:hover, article:hover, aside:hover, details:hover,
figcaption:hover, figure:hover, footer:hover, header:hover, hgroup:hover, main:hover, nav:hover, section:hover, summary:hover,a:hover,button:hover,input:hover,select:hover,textarea:hover { outline:none; }
small { font-size:inherit; }

/****************************** COMMON ******************************/
.blind { display:block; position:absolute; left:-9999px; text-indent:-9999px; width:0; height:0; border:0; overflow:hidden; font-size:1px; line-height:0; white-space:nowrap; }
.hide { display:none !important; }
.skip { position:fixed; left:0; right:0; top:0; display:block; overflow:hidden; font-size:1em; line-height:0; color:#fff; background:#ff6600; font-weight:700; text-align:center; z-index:-1; opacity:0; }
.skip:focus { z-index:1000; opacity:1; line-height:80px; }
.vt { vertical-align:top !important; }
.iblock { display:inline-block; }
.block { display:block; }
.ac, table.ac td, table.ac th { text-align:center !important; }
.al { text-align:left !important; }
.bold { font-weight:700; }
.txt-line, .txt-line:hover { text-decoration:underline; }
a, button, :before, :after { transition:background-color .3s, border .3s, color .3s, margin .3s; }

.fc { color:#ff5000 !important; }
.fc-2 { color:#b8b8b8 !important; }
.fc-3 { color:#666 !important; }
/*
.scroll { outline:none; padding-right:8px; overflow:auto; scrollbar-3dlight-color:#ddd; scrollbar-arrow-color:#000; scrollbar-base-color:#ddd; scrollbar-face-color:#000; scrollbar-track-color:#ddd; scrollbar-darkshadow-color:#ddd; scrollbar-highlight-color:#ddd; scrollbar-shadow-color:#ddd; }
.scroll::-webkit-scrollbar { width:4px; height:4px; background-color:#ddd; }
.scroll::-webkit-scrollbar-track { background:#ddd; }
.scroll::-webkit-scrollbar-thumb { background:#000; }
.scroll.h-ty { height:140px; }
*/
 
 /* js에서 사용 */
.scrollDisable {height:100%; min-height:100%; overflow:hidden !important; touch-action:none;}
.js-visible { display:block !important; opacity:0 !important; }

/****************************** ICON ******************************/
.ir, .ir-b:before, .ir-a:after { display:inline-block; vertical-align:middle; background-position:999px 999px; background-repeat:no-repeat; }
.ir-b:before, .ir-a:after { content:''; }
.ir { padding:0; margin:0; white-space:nowrap; font-size:1px; overflow:hidden; text-indent:-999px; color:transparent; line-height:0; }

.i-help { position:relative; width:20px; height:20px; background-color:#000; color:#fff; border-radius:100%; vertical-align:top; }
.i-help::before { content:'?'; position:absolute; left:0; right:0; top:0; text-align:center; font-size:12px; font-weight:700; line-height:20px; text-indent:0; }
.i-required { position:relative; width:10px; height:10px; vertical-align:middle; }
.i-required.vtop { position:relative; width:10px; height:10px; vertical-align:top; }
.i-required::before { content:'*'; position:absolute; left:0; right:0; top:0; text-align:center; font-size:12px; font-weight:700; line-height:12px; text-indent:0; color:#d61d1d; }
.num + .i-required { position:relative; width:10px; height:10px; vertical-align:top; margin-left: -5px; }

.i-facebook-2 { display:inline-block; width:50px; height:50px; line-height:50px; background-color:#4267b2; text-align:center; border-radius:100%; }
.i-twitter { display:inline-block; width:50px; height:50px; line-height:50px; background-color:#1da1f2; text-align:center; border-radius:100%; }
.i-kakao { display:inline-block; width:50px; height:50px; line-height:50px; background-color:#fee100; text-align:center; border-radius:100%; }
.i-complete { position:relative; display:block; margin-left:auto; margin-right:auto; width:100px; height:100px; border:2px solid #77ca00; overflow:hidden; white-space:nowrap; text-indent:-999px; border-radius:100%; }
.i-complete::before { position:absolute; left:50%; top:50%; }

/****************************** TEXT ICON ******************************/

/****************************** FORM ******************************/
.required { color:#d61d1d; font-family:'Noto Sans KR'; font-size:16px; font-weight:700; }
.w-full { width:100%; }
.fm-w-2 { max-width:calc(100% - 65px); }
.fm-w-3, .fm-w-4 { max-width:100%; }
.fm-w-3 .eyes {
	display: inline;
    width: 17px;
    height: 13px;
    background-color: transparent;
    background-position: bottom center;
    background-image: url(../images/common/ico_show.png);
    background-size: 100%;
    flex: 0 0 auto;
}
.fm-w-3 .eyes.show {background-position: top center;}/* 240304 추가 */
.fm-row + .fm-row { margin-top:5px; }
.fm-ml, span.fm-txt { margin-left:10px; }
.tb-data-2:not(.ty-2) .fm-ml { margin-left:7px; }
.fm-ml-2 { margin-left:26px; }
.fm-txt { font-size:10px; }
.fm-txt-2 { font-size:9px; }
div.fm-txt { margin-top:7px; }
div.fm-txt-2 { margin-top:2px; }
.fm-rc-g .fm-item { display:inline-block; margin:3px 12px 3px 0; }
.fm-rc-g.dpb{padding: 5px 0px 2px}
.fm-rc-g.dpb .fm-item { display:block; margin:8px 0px 8px 0; }
.fm-rc-g.dpb .fm-item > a{display: block;  padding-left: 26px; margin-bottom: 10px}
.fm-rc-g .fm-item:last-child { margin-right:0; }
.fm-flex { display:flex; }
.fm-flex .grid-item { flex:1; }
.fm-flex .grid-item.flex-2 { flex:0.8; }
.fm-flex .grid-item.flex-3 { flex:1.1; }
.fm-flex .grid-item.none { flex:none; }
.fm-flex .grid-item.word,
.fm-flex .grid-item.word-2 { flex:none; width:1em; line-height:35px; text-align:center; color:#666; }
.fm-flex .grid-item.word-2 { width:1.5em; }
.fm-flex-align-center {align-items:center;}
.hr-line { display:block; height:1px; margin:22px 0px; padding:0; border:0; background:#ddd; font-size:0; line-height:0; }

.fm-ipt { width:100%; height:35px; line-height:33px; border:solid 1px #ddd; background:#f7f7f7; color:#222; font-size:12px; padding:0 13px; }
.fm-ipt.point{color: #ff5000; font-weight: bold}
.fm-ipt:disabled { opacity:.4; }
.fm-ipt::-webkit-input-placeholder { color:#ccc !important; }
.fm-ipt::-moz-placeholder { color:#ccc !important; }
.fm-ipt:-ms-input-placeholder { color:#ccc !important; }

.fm-ta { width:100%; height:70px; line-height:1.66; border:solid 1px #ddd; background:#f7f7f7; color:#222; font-size:12px; padding:0 13px; box-sizing:border-box; resize: none }
.fm-ta.h-2 { height:235px; }
.fm-ta.h-3 { height:80px; }
textarea.fm-ta {padding: 13px}
.fm-sel { width:100%; height:35px; line-height:33px; background:#f7f7f7 url("../images/common/fm-sel.png") right 8px center no-repeat; background-size:10px 5px; font-size:12px; padding:0 25px 0 13px; border:solid 1px #ddd; }
.fm-sel.placeholder { color:#999 !important; font-weight:normal; }
.fm-sel:disabled { opacity:.4; }
.fm-rad, .fm-chk { position:absolute; padding:0; margin:0; opacity:0; box-sizing:border-box; outline:none; }
.checked-i:before, .checked-i:after { content:''; position:absolute; }

.fm-rad { width:18px; height:18px; }
.fm-rad + .checked-i { display:inline-block; position:relative; width:auto; min-height:18px; line-height:18px; cursor:pointer; padding-left:18px; font-size:14px; color:inherit; margin: 0 10px 0 0; }
.fm-rad + .checked-i.txt { padding-left:24px; font-size:12px; }
.fm-rad + .checked-i:before { left:0; top:0; width:18px; height:18px; background:#e7e7e7; box-sizing:border-box; border-radius:100%; margin-top:0px; }
.fm-rad + .checked-i:after { width:8px; height:8px; left:5px; top:5px; border-radius:100%; background:#fff; opacity:0; }
.fm-rad:not(:disabled):checked + .checked-i:before { background-color:#ff5000; }
.fm-rad:not(:disabled):checked + .checked-i:after { opacity:1; }

.fm-chk { width:15px; height:15px; }
.fm-chk + .checked-i { display:inline-block; position:relative; width:auto; min-height:15px; line-height:15px; cursor:pointer; padding-left:15px; font-size:14px; color:inherit; }
.fm-chk + .checked-i.txt { padding-left:21px; font-size:11px; }
.fm-chk + .checked-i:before { left:0; top:0; width:15px; height:15px; background:#e7e7e7; box-sizing:border-box; border-radius:100%; margin-top:0px; }
.fm-chk + .checked-i:after { left:4px; top:4px; width:6px; height:3px; border:solid 0 #fff; border-width:0 0 2px 2px; transform:rotate(-45deg); opacity:0; }
.fm-chk:not(:disabled):checked + .checked-i:before { background-color:#ff5000; }
.fm-chk:not(:disabled):checked + .checked-i:after { opacity:1; }
.fm-chk.ty-2 + .checked-i:before { border-radius:2px; }
.fm-chk.ty-3 { width:16px; height:16px; }
.fm-chk.ty-3 + .checked-i { min-height:16px; line-height:16px; padding-left:16px; }
.fm-chk.ty-3 + .checked-i.txt { padding-left:20px; }
.fm-chk.ty-3 + .checked-i:before { width:16px; height:16px; border:1px solid #e1e1e1; background-color:#ededed; border-radius:2px; }
.fm-chk.ty-3 + .checked-i:after { left:4px; top:3px; width:7px; height:4px; border-width:0 0 2px 2px; }
.fm-chk.ty-3:not(:disabled):checked + .checked-i:before { border-color:#e64800; }

/****************************** BUTTON ******************************/
[class*="btn-"] { display:inline-block; text-align:center; vertical-align:middle; padding:0 9px; }
.btnarea { display:block; padding:0; font-size:0; }
.btnarea.cmgt, .btnarea.cmgt-2 { margin-top:20px; }
.btnarea.cmgt-3 { margin-top:35px; }
.btnarea > [class*="btn-"]+[class*="btn-"], .btnarea > .grid-item + .grid-item { margin-left:10px; }
.btn-1 { min-width:65px; height:30px; line-height:28px; font-family:'Noto Sans KR'; font-size:12px; color:#666; border:1px solid #e1e1e1; background:#f2f2f2; font-weight:400; }
.btn-1.orange_bg{background:#ff5000; border:1px solid #ff5000; color: #fff}
.btn-2 { min-width:55px; height:35px; line-height:33px; font-family:'Noto Sans KR'; font-size:12px; color:#333; border:1px solid #cecece; background:#dedede; font-weight:400; }
.btn-3 { min-width:85px; height:35px; line-height:33px; font-family:'Noto Sans KR'; font-size:12px; color:#333; border:1px solid #c0c0c0; background:#fff; font-weight:400; }
.btn-3.ty-2 { color:#666; border-color:#ddd; }
.btn-4 { min-width:55px; height:50px; line-height:48px; font-family:'Noto Sans KR'; font-size:16px; color:#fff; border:1px solid #ff5000; background:#ff5000; font-weight:400; }
.btn-5 { min-width:100px; height:40px; line-height:38px; font-family:'Noto Sans KR'; font-size:12px; color:#000; border:1px solid #e1e1e1; background:#f2f2f2; font-weight:400; }
.btn-6 { min-width:100px; height:35px; line-height:33px; font-family:'Noto Sans KR'; font-size:12px; color:#fff; border:1px solid #000; background:#000; font-weight:400; }
.btn-7 { min-width:140px; height:35px; line-height:33px; font-family:'Noto Sans KR'; font-size:12px; color:#fff; border:1px solid #ff5000; background:#ff5000; font-weight:700; }
.btn-8 { min-width:55px; height:50px; line-height:48px; font-family:'Noto Sans KR'; font-size:16px; color:#fff; border:1px solid #000; background:#000; font-weight:700; }
.btn-9 { min-width:140px; height:35px; line-height:33px; font-family:'Noto Sans KR'; font-size:12px; color:#666; border:1px solid #ddd; background:#fff; font-weight:700; }

.btn-share { width:50px; height:50px; line-height:0; border:1px solid #e1e1e1; background:#f2f2f2; }


/****************************** Animation ******************************/
@keyframes img-in { 0% { transform:scale(1.08) translate(-50%, -50%); transform-origin:left top; } 100% {transform:scale(1) translate(-50%, -50%); transform-origin:left top; } }
@keyframes full-in { 0% { width:0; } 100% {width:100%; } }
@keyframes fade-in { 0% { opacity:0; } 100% {opacity:1; } }
@keyframes fade-up { 0% { opacity:0; transform:translateY(15px); } 100% {opacity:1; transform:translateY(0); } }

@keyframes hamburg-t { 0% { margin-top:-1px; transform:rotate(45deg); } 50% { margin-top:-1px; transform:rotate(0); } 100% { margin-top:-7px; transform:rotate(0); } }
@keyframes hamburg-b { 0% { margin-top:-1px; transform:rotate(-45deg); } 50% { margin-top:-1px; transform:rotate(0); } 100% { margin-top:5px; transform:rotate(0); } }
@keyframes hamburg-open-t { 0% { margin-top:-7px; transform:rotate(0); } 50% { margin-top:-1px; transform:rotate(0); } 100% { margin-top:-1px; transform:rotate(45deg); background-color:#fff; } }
@keyframes hamburg-open-b { 0% { margin-top:5px; transform:rotate(0); } 50% { margin-top:-1px; transform:rotate(0); } 100% { margin-top:-1px; transform:rotate(-45deg); background-color:#fff; } }

@keyframes hamburg-pc-t { 0% { margin-top:-2px; transform:rotate(45deg); } 50% { margin-top:-2px; transform:rotate(0); } 100% { margin-top:-13px; transform:rotate(0); } }
@keyframes hamburg-pc-b { 0% { margin-top:-2px; transform:rotate(-45deg); } 50% { margin-top:-2px; transform:rotate(0); } 100% { margin-top:9px; transform:rotate(0); } }
@keyframes hamburg-pc-open-t { 0% { margin-top:-13px; transform:rotate(0); } 50% { margin-top:-2px; transform:rotate(0); } 100% { margin-top:-2px; transform:rotate(45deg); background-color:#fff; } }
@keyframes hamburg-pc-open-b { 0% { margin-top:9px; transform:rotate(0); } 50% { margin-top:-2px; transform:rotate(0); } 100% { margin-top:-2px; transform:rotate(-45deg); background-color:#fff; } }


/****************************** LAYOUT ******************************/
.top-banner { display:none; position:relative; z-index:99; height:80px; }
.top-banner + .top-banner {position: absolute;width: 100%;top: 0px;} 
.top-banner .inner { text-align:center; }
.top-banner .inner > .item { display:block; }
.top-banner .inner img { height:56px; margin:0 -500px; }
.top-banner .foot {width: 100%; height: 24px; position: absolute; right: 0; bottom: 0; padding: 2px 20px; background: #2c2c2c; text-align: right; font-size: 10px; color: #fff;}
.top-banner .foot .close { position:relative; width:22px; height:22px; margin-left:17px; }
.top-banner .foot .close .i-close { display:block; position:relative; width:100%; height:100%; }
.top-banner .foot .close .i-close::before { content:''; display:block; position:absolute; top:50%; margin-top:-1px; width:100%; height:2px; background:#fff; transform:rotate(-45deg); transition:transform 0.2s; }
.top-banner .foot .close .i-close::after { content:''; display:block; position:absolute; top:50%; margin-top:-1px; width:100%; height:2px; background:#fff; transform:rotate(45deg); transition:transform 0.2s; }
.top-banner .foot .close:hover .i-close::before, .top-banner .foot .close:hover .i-close::after { transform:rotate(0); }
#wrap { width:100%; overflow:hidden; }
#header { position:relative; z-index:1112;}
#header.fixed .header-in { position:fixed; background:#fff; }
#header.fixed.main-wll-bg .header-in {background: rgba(0,0,0,0.8);}
.header-in { position:absolute; left:0; top:0; right:0; height:60px; }
.header-in .logo { position:absolute; left:20px; top:25px; font-size:0; }
.body_scroll_hidden{overflow: hidden; height: 100%}
.header-in .all-toggle {position:absolute; right:20px; top:16px; width:28px; height:28px; padding:5px; font-size:0; z-index: 2}
.header-in .all-toggle .line { display:inline-block; width:100%; height:2px; background-color:#fff; transition:background 0.6s ease; }
.header-in .all-toggle .line:before { content:''; position:absolute; left:5px; right:5px; top:50%; height:2px; background-color:#fff; margin-top:-7px; animation:hamburg-t .75s both; }
.header-in .all-toggle .line:after { content:''; position:absolute; left:5px; right:5px; top:50%; height:2px; background-color:#fff; margin-top:5px; animation:hamburg-b .75s both; }
#header.opend-menuall .logo { position:fixed; }
#header.opend-menuall .all-toggle { position:fixed; }
#header.opend-menuall .all-toggle .line { background-color:transparent !important; }
#header.opend-menuall .all-toggle .line:before { animation:hamburg-open-t .75s both; }
#header.opend-menuall .all-toggle .line:after { animation:hamburg-open-b .75s both; }
#header.opend-menuall .menu-wrap { animation:fade-in .75s both; }
.header-in.black .all-toggle .line { background-color:#000; }
.header-in.black .all-toggle .line:before { background-color:#000; }
.header-in.black .all-toggle .line:after { background-color:#000; }

.header-in .menu-wrap .user .badge {position: relative; font-size: 13px;}
.header-in .menu-wrap .user .badge .in {display: none; position: absolute; left: -6px; top: 100%; z-index: 9999; min-width: 5em; margin-top: 5px; padding: 0 11px; background: #fff; color: #191919; line-height: 29px; font-weight: 500; white-space: nowrap; border-radius: 9px; text-align: center;}
.header-in .menu-wrap .user .badge .in::before { content:''; position:absolute; left:20px; top:-6px; width:0; height:0; border-left:6px solid transparent; border-right:6px solid transparent; border-bottom:6px solid #fff; transform:none; background:none; }

#footer { border-top:1px solid #ddd; position: relative; z-index: 102;} /* 2021-10-14 position, z-index 추가 // 2022-11-08 서브페이지 픽스배너 링크 클릭 안되는 이슈로 z-index 1 -> 102로 수정*/
#footer.bottom-space2 { padding-bottom: 100px; } /* wll 관련 여백 추가 */
.footer-in a:hover { color:#ff5000; }
.footer-in { position:relative; max-width:1800px; margin:0 auto; padding:0 20px 0 20px; margin-top: 43px; }
.footer-in .fmenu { font-size:12px; color:#000; margin:0 -20px; }
.footer-in .familysite { position:relative; font-size:12px; color:#666; }
.footer-in .familysite a, .footer-in .familysite button { display:block; font-size:inherit; }
.footer-in .familysite .list { display:none; position:absolute; left:0; right:0; bottom:29px; padding:10px; border:1px solid #ddd; background:#f7f7f7; }
.footer-in .familysite .list a { padding:7px 0; }
.footer-in .familysite .subj { position:relative; width:160px; height:30px; padding:0 10px; border:1px solid #ddd; background:#f7f7f7; text-align:left; }
.footer-in .familysite .subj::after { content:''; position:absolute; right:11px; top:50%; width:0; height:0; margin-top:-2px; border-left:4px solid transparent; border-right:4px solid transparent; border-bottom:4px solid #666; }
.footer-in .sns-area a { display:inline-block; padding:5px; margin-left:7px; font-size:0; vertical-align:top; }

.sub-vis { position:relative; height:300px; background-position:center center; background-repeat:no-repeat; background-size:cover; }
.sub-vis::before { content:''; position:absolute; left:0; right:0; bottom:0; top:0; z-index:1; background:url("../images/common/vis-bg.png") center 0; }
.sub-vis .sub-title { position:relative; z-index:2; top:50%; transform:translateY(-30%); font-family:'Montserrat'; font-weight:bold; font-size:36px; color:#fff; line-height:1.06; text-align:center; text-transform:uppercase; }
.sub-vis .sub-title.small { font-size:30px; }
.sub-vis .sub-title img { display:block; margin:0 auto 0px; }
.sub-vis .sub-title .text { display:block; margin:0; }
.sub-vis .sub-title .text.ty-2 { font-size:21px; font-weight:300; text-transform:none; }
.sub-vis .sub-title.small .text { display:block; margin-bottom:7px; }
.sub-vis .sub-title.small .text.ty-2 { font-size:19px; }
.sub-vis .lnb { position:absolute; left:0; right:0; bottom:0; height:40px; z-index:101; font-size:0; border-top:1px solid rgba(255,255,255,.2); }
.sub-vis .lnb .lnb-in { position:relative; left:0; right:0; top:0; padding:0; transition:all .3s; }
.sub-vis .lnb a, .sub-vis .lnb button { display:block; width:100%; text-align:left; }
.sub-vis .lnb .nav { max-width:1760px; margin:0 auto; }
.sub-vis .lnb .nav > li { display:inline-block; vertical-align:top; }
.sub-vis .lnb .nav-sub { display:none; position:absolute; top:0; left:0; right:0; padding:39px 0 13px; background:#fff; border-bottom:2px solid #666; box-shadow:0px 10px 40px rgba(0,0,0,0.15); }
.sub-vis .lnb .nav-sub a { display:block; padding:0 20px 0 20px; line-height:39px; font-size:12px; color:#000; font-weight:bold; }
.sub-vis .lnb .home > a { line-height:39px; }
.sub-vis .lnb .dep + .dep { margin-left:10px; }
.sub-vis .lnb .dep > a, .sub-vis .lnb .dep > button { position:relative; z-index:3; padding:0 41px 0 20px; line-height:39px; font-size:12px; color:#fff; font-weight:bold; transition:all .3s; }
.sub-vis .lnb .dep[data-dropdown] > a::after, .sub-vis .lnb .dep[data-dropdown] > button::after { content:''; position:absolute; right:17px; top:50%; margin-top:-6px; width:6px; height:6px; border:0 solid #fff; border-width:0 1px 1px 0; transform:rotate(45deg); transition:all .3s; }
.sub-vis .lnb .dep[data-dropdown].dropdown-show > a, .sub-vis .lnb .dep[data-dropdown].dropdown-show > button { background:#fff; color:#ff5000; }
.sub-vis .lnb .dep > a:hover, .sub-vis .lnb .dep > button:hover { background:#fff; color:#000; }
.sub-vis .lnb .dep:not(.dropdown-show) > a:hover, .sub-vis .lnb .dep:not(.dropdown-show) > button:hover { box-shadow:0px 10px 40px rgba(0,0,0,0.15); }
.sub-vis .lnb .dep[data-dropdown].dropdown-show > a::after, .sub-vis .lnb .dep[data-dropdown].dropdown-show > button::after { margin-top:-3px; border-color:#666; transform:rotate(225deg); }
.sub-vis .lnb .dep > a:hover::after, .sub-vis .lnb .dep > button:hover::after { border-color:#666; }
.sub-vis.black .sub-title { color:#000; }
.sub-vis.black .lnb { background:#fff; border-top-color:rgba(0,0,0,.2); }
.sub-vis.black .lnb .lnb-in { border-bottom:1px solid rgba(0,0,0,.2); }
.sub-vis.black .lnb .dep > a, .sub-vis.black .lnb .dep > button { color:#000; }
.sub-vis.black .lnb .dep { border-right-color:rgba(0,0,0,.2); }
.sub-vis.black .lnb .home > a { border-left-color:rgba(0,0,0,.2); border-right-color:rgba(0,0,0,.2); }
.sub-vis.black .lnb .dep[data-dropdown] > a::after, .sub-vis.black .lnb .dep[data-dropdown] > button::after { border-color:#000; }
.sub-vis .lnb.fixed .lnb-in { position:fixed; background:#fff; color:#000; border-bottom:1px solid rgba(0,0,0,.2); }
.sub-vis .lnb.fixed .dep > a, .sub-vis .lnb.fixed .dep > button { color:#000; }
.sub-vis .lnb.fixed .dep[data-dropdown] > a::after, .sub-vis .lnb.fixed .dep[data-dropdown] > button::after { border-color:#666; }
.sub-vis .lnb.fixed .home > a { border-color:rgba(0,0,0,.2); }


/* 2022-05-13 newsletter 수정 :: S */
.sub_newsletter {border-bottom: 1px solid #dddddd;padding: 24px 20px;background-color: #fff;}
.sub_newsletter .inner {display: flex;align-items: center;max-width: 1200px;margin: 0 auto;}
.sub_newsletter .subs_desc {font-size: 17px;font-family: 'NanumSquare';font-weight: 700;flex: 0 0 auto;}
.sub_newsletter .input_box {position: relative;margin: 0 32px;max-width: 463px;width: 100%;}
.sub_newsletter .input_box input {display: block;width: 100%;height: 50px;padding: 0 146px 0 28px;border: 1px solid #c4c4c4;border-radius: 25px;box-sizing: border-box;}
.sub_newsletter .input_box .submit_btn {position: absolute;top: 0;right: 0;width: 126px;height: 50px;color: #fff;background: #ff4600;border-radius: 25px;}
.sub_newsletter .fm-item {display: block;}
.sub_newsletter .fm-item + .fm-item {margin-top: 10px;}
.sub_newsletter .fm-chk + .checked-i.txt {display: block;padding-left: 25px;line-height: 18px;}
.sub_newsletter .fm-chk + .checked-i.txt .agree_pop_btn {display: inline-block; font-weight: 700; padding-bottom: 2px; border-bottom: 1px solid #000; font: inherit;}
.sub_newsletter .fm-chk + .checked-i:before {width: 18px;height: 18px;border: 1px solid #c4c4c4;border-radius: 1px;box-sizing: content-box;}
.sub_newsletter .fm-chk:not(:disabled):checked + .checked-i:before{border-color: #ff5000;}
/* 2022-05-13 newsletter 수정 :: E */

/* 2022-05-13 agree_pop 수정 :: S */
.agree_pop {display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 111111;}
.agree_pop .pop_box {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 680px; width: 100%; background: #fff; z-index: 1;}
.agree_pop .pop_head {padding: 27px 30px; border-bottom: 1px solid #e8e8e8;}
.agree_pop .pop_head strong {display: block; font-size: 24px; font-weight: 700; line-height: 1; color: #000;}
.agree_pop .pop_body {padding: 41px 30px 60px;}
.agree_pop .pop_body p {font-size: 16px; color: #000; line-height: 1.5;}
.agree_pop .pop_body p strong {font-size: 20px;}
.agree_pop .pop_body .num_p {margin: 30px 0;}
.agree_pop .pop_body .ok_btn {display: block; margin: 40px auto 0; width: 130px; height: 52px; border: 1px solid #ddd; text-align: center; line-height: 50px; box-sizing: border-box;}
.agree_pop .pop_body .close_btn {position: absolute; top: 18px; right: 24px; width: 28px; height: 28px; font-size: 0;}
.agree_pop .pop_body .close_btn::before,.agree_pop .pop_body .close_btn::after {position: absolute; top: 50%; left:0; margin-top: -2px; width: 100%; height: 4px; background: #000; content: '';}
.agree_pop .pop_body .close_btn::before {transform: rotate(-45deg);}
.agree_pop .pop_body .close_btn::after {transform: rotate(45deg);}
.agree_pop .dim {position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.7);}
/* 2022-05-13 agree_pop 수정 :: E */

/****************************** PC ******************************/
@media all and (min-width:1200px) {
	.pc-hide { display:none !important; }
	.pc-block { display:block !important; }

	/* ICON */
	.ir, .ir-b:before, .ir-a:after { background-image:url("../images/common/sprite.png"); background-size:500px 650px; }
	.i-logo { background-position:0 0; width: 216px; height: 20px; }
	#header:not(.opend-menuall) .black .i-logo { background-position:-226px 0; }
	.i-home { background-position:-96px -107px; width: 18px; height: 16px; }
	.black .i-home, .lnb.fixed .i-home { background-position:-124px -107px; }
	.i-facebook { background-position:-96px -30px; width:14px; height:24px; }
	.i-instagram { background-position:-96px -30px; width:24px; height:24px; }
	.i-naverblog { background-position:-156px -30px; width:26px; height:24px; }
	.i-vimeo { background-position:-156px -30px; width:24px; height:24px; }
	.i-share { background-position:-190px -30px; width:24px; height:24px; }
	.i-youtube { background-position:-125px -30px; width:25px; height:23px; }
	.i-share-2 { background-position:-318px -30px; width:24px; height:24px; }
	.footer-in .sns-area a:hover .i-facebook { background-position:-224px -30px; }
	.footer-in .sns-area a:hover .i-instagram { background-position:-225px -30px; }
	.footer-in .sns-area a:hover .i-naverblog { background-position:-285px -30px; }
	.footer-in .sns-area a:hover .i-vimeo { background-position:-284px -30px; }
	.footer-in .sns-area a:hover .i-share { background-position:-318px -30px; }
	.footer-in .sns-area a:hover .i-youtube { background-position:-254px -30px; }

	.i-logo-footer::before { background-position:0 -30px; width: 86px; height: 96px; }
	.i-title::before { background-position:-96px -64px; width:62px; height:33px; }
	.i-title-2::before { background-position:-168px -64px; width:32px; height:17px; }
	.i-error::before { background-position:-210px -141px; width:220px; height:192px; display:block; margin:0 auto 45px; }
	.i-error-2::before { background-position:0 -141px; width:200px; height:200px; display:block; margin:0 auto 45px; }
	.i-chfuturelab::before { background-position:0 -346px; width:334px; height:68px; }
	.i-qrcode::after, .i-qrcode::before { background-position:-344px -346px; width:124px; height:124px; }
	.i-facebook-2, .i-twitter, .i-kakao { width:70px; height:70px; line-height:70px; }
	.i-facebook-2::before { background-position:-352px -30px; width:40px; height:38px; }
	.i-twitter::before { background-position:-402px -30px; width:40px; height:38px; }
	.i-kakao::before { background-position:-452px -30px; width:40px; height:38px; }
	.i-m-logo { background-position:-320px -72px; width:172px; height:65px; }
	.i-m-facebook::before { background-position:-220px -97px; width:40px; height:40px; }
	.i-m-naver::before { background-position:-270px -97px; width:40px; height:40px; }
	.i-m-id::before { background-position:0 -424px; width:100px; height:76px; }
	.i-m-pw::before { background-position:-110px -424px; width:86px; height:76px; }
	.i-m-pw-2::before { background-position:-206px -424px; width:86px; height:76px; }
	.i-m-join::before { background-position:0 -510px; width:189px; height:140px; }
	.i-m-email::before { background-position:-199px -510px; width:86px; height:78px; }
	.i-complete::before { margin:-19px 0 0 -27px; background-position:-162px -97px; width:54px; height:38px; }
	.i-mail::before { background-position:-295px -510px; width:150px; height:100px; }

	.i-help { width:30px; height:30px; }
	.i-help::before { font-size:18px; font-family:'NanumSquare'; line-height:30px; }

	/* FORM */
	.fm-row + .fm-row { margin-top:10px; }
	.fm-w { width:auto; min-width:100px; }
	.fm-w-2, .fm-w-3 { max-width:287px; }
	.fm-w-4 { max-width:455px; }
	.fm-ml-2 { margin-left:30px; }
	.fm-txt { font-size:14px; }
	.fm-txt-2 { font-size:12px; }
	.fm-rc-g .fm-item { margin-right:15px; }
	.fm-flex .grid-item.word, .fm-flex .grid-item.word-2 { line-height:40px; }
	.fm-flex-2 { display:flex; }
	.fm-flex-2 > .fm-flex { flex:1; }
	.fm-flex-2 > .fm-flex.flex-2 { flex:0.55; }
	.fm-flex-2 > .fm-flex + .fm-flex { margin-left:10px; }

	.fm-ipt { height:40px; line-height:38px; font-size:14px; padding:0 16px; }
	.fm-ta { height:140px; line-height:1.53; font-size:14px; padding:0 16px; }
	.fm-ta.h-2 { height:400px; }
    textarea.fm-ta {padding: 16px}
	.fm-sel { height:40px; line-height:38px; font-size:14px; padding:0 40px 0 16px; background-position:right 15px center; background-size:12px 6px; }
	.fm-ipt.ty-2 { min-width:120px; height:50px; padding:0 19px; font-size:16px; line-height:48px; }
	.fm-sel.ty-2 { min-width:120px; height:50px; padding-left:19px; font-size:16px; line-height:48px; }

	.fm-rad { width:20px; height:20px; }
	.fm-rad + .checked-i { min-height:20px; line-height:20px; padding-left:20px; }
	.fm-rad + .checked-i.txt { padding-left:26px; font-size:14px; }
	.fm-rad + .checked-i:before { width:20px; height:20px; }
	.fm-rad + .checked-i:after { width:8px; height:8px; left:6px; top:6px; }

	.fm-chk { width:20px; height:20px; }
	.fm-chk + .checked-i { min-height:20px; line-height:20px; padding-left:20px; }
	.fm-chk + .checked-i.txt { padding-left:26px; font-size:14px; }
	.fm-chk + .checked-i:before { width:20px; height:20px; }
	.fm-chk + .checked-i:after { left:5px; top:6px; width:8px; height:4px; }

	.fm-chk.ty-3 { width:24px; height:24px; }
	.fm-chk.ty-3 + .checked-i { min-height:24px; line-height:24px; padding-left:24px; }
	.fm-chk.ty-3 + .checked-i.txt { padding-left:30px; }
	.fm-chk.ty-3 + .checked-i:before { width:24px; height:24px; }
	.fm-chk.ty-3 + .checked-i:after { left:6px; top:5px; width:10px; height:6px; border-width:0 0 3px 3px; }

	/* Button */
	[class*="btn-"] { padding:0 20px; }
	.btnarea.cmgt { margin-top:30px; }
	.btnarea.cmgt-2 { margin-top:48px; }
	.btn-1 { min-width:100px; height:48px; line-height:46px; padding:0 20px; font-size:16px; }
	.btn-2, .btn-3 { min-width:70px; height:40px; line-height:38px; font-size:14px; }
	.btn-3 { min-width:120px; }
	.btn-4 { height:64px; line-height:62px; font-family:'NanumSquare'; font-size:20px; }
	.btn-5 { min-width:140px; height:50px; line-height:48px; padding:0 20px; font-size:16px; }
	.btn-5.ty-2 { min-width:98px; }
	.btn-6 { min-width:70px; height:40px; line-height:38px; padding:0 20px; font-size:14px; }
	.btn-7 { min-width:180px; height:50px; line-height:48px; padding:0 20px; font-size:16px; }
	.btn-8 { min-width:240px; height:64px; line-height:62px; font-family:'NanumSquare'; font-size:20px; font-weight:800; }
	.btn-9 { min-width:180px; height:50px; line-height:48px; padding:0 20px; font-size:16px; }
	.btn-share { min-width:64px; height:64px; }

	/* LAYOUT */
	.top-banner { height:120px; }
	.top-banner .inner img { height:120px; }
	.top-banner .foot {left: 50%; right: auto; bottom: 10px; width: 100%; max-width: 1440px; height: auto; padding: 0 20px; background: none; font-size: 14px; color: #fff; transform: translateX(-50%);}
	.top-banner .foot .close { width:28px; height:28px; margin-left:40px; }
	.header-in { height:100px; border-bottom:1px solid rgba(255,255,255,.1); }
	.header-in .logo { left:40px; top:49px; }
	.header-in .all-toggle { right:30px; top:39px; width:50px; height:46px; padding:10px; }
	.header-in .all-toggle .line { height:4px; }
	.header-in .all-toggle .line:before { left:10px; right:10px; height:4px; margin-top:-13px; animation:hamburg-pc-t .75s both; }
	.header-in .all-toggle .line:after { left:10px; right:10px; height:4px; margin-top:9px; animation:hamburg-pc-b .75s both; }
	#header:not(.opend-menuall) .menu-wrap { position:absolute; top:50%; right:100px; margin-top:12px; transform:translateY(-50%); color:#fff; font-size:16px; text-align:right; }
	#header:not(.opend-menuall) .menu-wrap a {display: inline-block; padding:5px 17px; margin:0; }
    #header:not(.opend-menuall) .menu-wrap .item > a {padding: 5px 0px;}
	#header:not(.opend-menuall) .menu-wrap .gnb { display:inline-block; }
	#header:not(.opend-menuall) .menu-wrap .gnb .dep-1 { display:inline-block; position:relative; }
	#header:not(.opend-menuall) .menu-wrap .gnb .dep-1 > a { padding-top:20px; padding-bottom:20px; transition:color .6s, background .6s; }
	.menu-wrap a:hover { color:#ff5000; }
	#header:not(.opend-menuall) .menu-wrap .gnb a { font-weight:700; }
	#header:not(.opend-menuall) .menu-wrap .sub { top:-500px; overflow:hidden; opacity:0; position:absolute; min-width:180px; padding:20px 0; text-align:left; background:#000; color:#fff; transition:opacity .6s, top 0s .6s; }
	#header:not(.opend-menuall) .menu-wrap .sub li + li { margin-top:7px; }
	#header:not(.opend-menuall) .menu-wrap .dep-1:hover .sub { opacity:1; top:100%; transition-delay:0s, 0s; }
	#header:not(.opend-menuall) .menu-wrap .dep-1:hover > a { background:#000; }
	.menu-wrap .user { display:inline-block; font-size:16px; text-align:right; }
	.menu-wrap .user a { display:inline-block; padding:5px; margin:0 12px; }
	#header:not(.opend-menuall) .menu-wrap .user::before { content:''; display:inline-block; margin:0 17px 0 22px; }
	#header:not(.opend-menuall) .black .menu-wrap { color:#000; }
	#header:not(.opend-menuall) .black .menu-wrap .user::before { background:rgba(0,0,0,.2); }
    #header:not(.opend-menuall) .menu-wrap .mypage a{display: block; padding: 5px 0px;}    
	.menu-wrap .util { display:none; }

	#header.opend-menuall .logo { z-index:10; }
	#header.opend-menuall .all-toggle .line:before { animation:hamburg-pc-open-t .75s both; }
	#header.opend-menuall .all-toggle .line:after { animation:hamburg-pc-open-b .75s both; }
	#header.opend-menuall .menu-wrap { position:fixed; left:0; top:0; width:100%; height:100%; padding-top:calc(50vh - 200px); background:#000; color:#fff; }
	#header.opend-menuall .menu-wrap .gnb { display:flex; justify-content:space-between; max-width:930px; margin:0 auto; font-family:'NanumSquare'; font-size:18px; font-weight:700; color:#999; }
	#header.opend-menuall .menu-wrap .dep-1 > a { display:inline-block; margin-bottom:11px; font-size:32px; color:#fff; font-weight:800; }
	#header.opend-menuall .menu-wrap .dep-2 { margin-top:15px; }
	#header.opend-menuall .menu-wrap .user { position:absolute; top:30px; right:150px; margin-top:12px; color:#fff; }
	#header.opend-menuall .menu-wrap .util { display:block; max-width:930px; margin:32px auto 0; padding-top:31px; border-top:1px solid #2c2c2c; font-size:16px; font-weight:700; color:#999; }
	#header.opend-menuall .menu-wrap .util a { display:inline-block; }
	#header.opend-menuall .menu-wrap .util a + a { margin-left:54px; }

	#header.opend-menuall ~ #footer .copyright { position:fixed; left:40px; bottom:150px; z-index:1011; color:#555; font-size:14px; animation:fade-in .75s both; }
	#header.opend-menuall ~ #footer .familysite { position:fixed; left:0; bottom:0; right:0; z-index:1011; padding:40px 40px; color:#000; font-size:14px; font-weight:bold; animation:fade-in .75s both; background:#fff; white-space:nowrap; }
	#header.opend-menuall ~ #footer .familysite .subj { display:inline-block; width:auto; padding:0; margin:0; height:auto; border:0; background:transparent; color:#ff5000; font-weight:700; text-transform:uppercase; vertical-align:top; }
	#header.opend-menuall ~ #footer .familysite .subj::after { display:none; }
	#header.opend-menuall ~ #footer .familysite .subj::before { width:25px; height:14px; background-position:-210px -64px; margin:0 12px 2px 0; }
	#header.opend-menuall ~ #footer .familysite .list { position:static; display:inline-block; padding:0; margin-left:65px; border:0; background:transparent; vertical-align:top; }
	#header.opend-menuall ~ #footer .familysite li { display:inline-block; }
	#header.opend-menuall ~ #footer .familysite a, #header.opend-menuall ~ #footer .familysite button { padding:0; margin-right:35px; }
	#header.opend-menuall ~ #footer .sns-area { padding-top:30px; }

	.header-in.black { border-bottom-color:rgba(0,0,0,.1); }
	.header-in.black .menu-wrap { color:#000; }
	.header-in.black .menu-wrap .user::before { background-color:rgba(0,0,0,.2); }
    
    .header-in .menu-wrap a{ position: relative; display: inline-block; padding: 5px 0; margin: 0;}
    .header-in .menu-wrap .user a {position: relative; display: inline-block; padding: 5px 0;}
    .header-in .menu-wrap .user > a {padding: 5px 15px;}
    .header-in .menu-wrap .user .name {display: inline-block; margin-right: 24px; font-size: 14px; font-weight: 300; text-align: left;vertical-align: middle;}
    .header-in .menu-wrap .user .name strong {color: #ffc516; font-weight: 400;}
    .header-in .menu-wrap .user .badge {display: inline-block; margin-right: 3px;font-size: 14px; font-weight: 400; vertical-align: middle;}
    .header-in .menu-wrap .user .badge img {display: block; width: 44px;}    
    .header-in .menu-wrap .user .badge .in {position: absolute; left: 50%;font-size: 13px; text-align: center; transform: translateX(-50%);}
    .header-in .menu-wrap .user .badge .in::before {left: calc(50% - 6px);}
    .header-in .menu-wrap .user .mypage {position: relative; display: inline-block;}
    .header-in .menu-wrap .user .mypage .in {display: none; position: absolute;left: 50%;top: 100%; z-index: 9999; width: 146px; margin-top: 26px;
    padding: 4px 15px; background: #fff; color: #888; font-size: 14px; font-weight: 400; text-align: left; white-space: nowrap; border: 1px solid #eee;
    border-radius: 2px; box-shadow: 0px 4px 13px rgb(0 0 0 / 14%);transform: translateX(-50%);}
    .header-in .menu-wrap .user .mypage .in::before {content: ''; position: absolute; left: 50%; top: -7px; margin: 0 -1px; width: 0; height: 0; border-left: 7px solid transparent; border-right: 7px solid transparent;border-bottom: 7px solid #eee;transform: none;background: none; transform: translateX(-6px);}
    .header-in .menu-wrap .user .mypage .in::after {content: ''; position: absolute; left: 50%; top: -6px; width: 0; height: 0; border-left: 6px solid transparent; border-right: 6px solid transparent; border-bottom: 6px solid #fff; transform: none; background: none; transform: translateX(-6px);}
    .header-in .menu-wrap .user .mypage .in a {display: block;line-height: 25px;border-bottom: 1px solid #eee;}
    .header-in .menu-wrap .user .mypage .in a:last-child{border-bottom: 0px}
    .header-in .menu-wrap .user .mypage .in a::before {content: ''; position: absolute;right: 0; top: 50%; width: 5px; height: 5px; margin-top: -8px; opacity: 0; border: 0 solid #ff5000; border-width: 0 2px 2px 0; transform: translateY(4px) rotate(-45deg); transition: all .3s;}
    .header-in .menu-wrap .user .item a{display: inline-block}
    .header-in .menu-wrap .user .item + .item::before {content: ''; display: inline-block; width: 1px; height: 13px; margin: 0 20px -2px 16px; background: rgba(255,255,255,.5);}
    .header-in .menu-wrap .user .mypage .in a:hover::before{opacity: 1}
    
	#footer { padding:0 0 33px 0; }
	.footer-in { padding-left:260px; padding-right:250px; }/* 240124 수정 */
	.footer-in .fmenu { margin:0 0 20px; font-size:13px; }
	.footer-in .fmenu a + a { margin-left:29px; }
	.footer-in .i-logo-footer:before { position:absolute; left:20px; top:50%; margin-top:-48px; width: 200px; height: 20px; background: url('../images/futurelab/logo-futurelab.png') center center no-repeat; background-size: 100%; margin-top: -10px; } /* 240124 수정 */
	.footer-in .office { font-size:12px; color:#999; }
	.footer-in .office dt { margin-bottom:2px; font-size:14px; }
	.footer-in .office dd { display:inline-block; margin-right:15px; }
	.footer-in .office .copyright { display:block; margin:12px 0 0; }
	.footer-in .outlink { position:absolute; right:20px; top:-7px; }
	.footer-in .page-top { position:absolute; right:0; bottom:-6px; width:52px; height:52px; padding:15px 0 0; font-size:10px; color:#666; text-align:center; border:1px solid #c6c6c6; border-radius:100%; text-transform:uppercase; }
	.footer-in .page-top::before { content:''; display:block; width:7px; height:7px; margin:0 auto 3px; border:0 solid #666; border-width:1px 0 0 1px; transform:rotate(45deg); }
	.footer-in .page-top:hover { background:#000; color:#fff; border-color:#000; }
	.footer-in .page-top:hover::before { border-color:#fff; }
	.footer-in .familysite { font-size:13px; }
	.footer-in .familysite .list { padding-left:14px; padding-right:14px; }
	.footer-in .familysite .list a { padding:6px 0; }
	.footer-in .familysite .subj { width:200px; padding:0 14px; }
	.footer-in .sns-area { margin-top:28px; }
	.footer-in .sns-area a { padding:7px; margin-left:0; margin-right:13px; }

	.sub-vis { height:330px; }
	.sub-vis .sub-title { max-width:1560px; padding:0 118px; margin:0 auto; font-size:72px; text-align:left; }
	.sub-vis .sub-title.small { font-size:58px; }
	.sub-vis .sub-title img { margin-left:0; /*margin-bottom:15px;*/ }
	.sub-vis .sub-title.small img { margin-bottom:7px; }
	.sub-vis .sub-title .text { display:inline-block; margin-right:28px; }
	.sub-vis .sub-title .text.ty-2 { font-size:48px; }
	.sub-vis .sub-title.small .text { margin-bottom:0; }
	.sub-vis .sub-title.small .text.ty-2 { font-size:38px; }    
    .sub-vis.vis-mypage{background-position: 0px 0px;}

	.sub-vis .lnb { height:50px; }
	.sub-vis .lnb .lnb-in { padding:0 20px; }
	.sub-vis .lnb .nav > li { position:relative; }
	.sub-vis .lnb .home > a { line-height:49px; padding:0 20px; border-left:1px solid rgba(255,255,255,.2); border-right:1px solid rgba(255,255,255,.2); }
	.sub-vis .lnb .nav-sub { padding-top:49px; }
	.sub-vis .lnb .nav-sub a { line-height:49px; font-size:16px; }
	.sub-vis .lnb .dep { border-right:1px solid rgba(255,255,255,.2); }
	.sub-vis .lnb .dep + .dep { margin-left:0; }
	.sub-vis .lnb .dep > a, .sub-vis .lnb .dep > button { min-width:178px; padding:0 40px 0 20px; line-height:49px; font-size:16px; }
	.sub-vis .lnb.fixed .dep { border-right:1px solid rgba(0,0,0,.2); }
}
@media all and (min-width:1800px) {
	.header-in .logo { left:50%; margin-left:-860px; }
/* 	.header-in .all-toggle { right:50%; margin-right:-870px; } */
	#header:not(.opend-menuall) .menu-wrap { right:50%; margin-right:-800px; }
	#header.opend-menuall ~ #footer .copyright { left:50%; margin-left:-860px; }
	#header.opend-menuall ~ #footer .familysite { padding:40px calc(50% - 860px); }
    .sub-vis.vis-mypage{background-position: 0px -20px}
}
@media all and (min-width:1800px) and (max-width:1401px) {
    .sub-vis.vis-mypage{background-position: 0px 0px;}
}
@media all and (min-width:1200px) and (max-width:1400px) {
	.top-banner .foot { right:40px; margin:0; }
    .sub-vis.vis-mypage{background-position: 0px 25px;}
}
@media all and (min-width:1200px) and (max-height:650px) {
	#header.opend-menuall ~ #footer .copyright { bottom:120px; }
}

/****************************** MO ******************************/
@media all and (max-width:1199px) {
	.mo-hide { display:none !important; }
	.mo-block { display:block !important; }
	.mo-al { text-align:left !important; }
	.mo-flex { display:flex; }
	.mo-flex .grid-item { flex:1; }
	.mo-flex .grid-item [class*="btn-"] { width:100%; }

	/* ICON */
	.ir, .ir-b:before, .ir-a:after { background-image:url("../images/common/sprite-mo.png"); background-size:500px 500px; }
	.i-logo { background-position:0 0; width: 151px; height: 14px; }
	.black .i-logo { background-position:-156px 0; }
	.i-facebook { background-position:-57px -19px; width:10px; height:19px; }
	.i-youtube { background-position:-72px -19px; width:20px; height:18px; }
	.i-instagram { background-position:-50px -19px; width:19px; height:18px; }
	.i-naverblog { background-position:-94px -19px; width:22px; height:19px; }
	.i-vimeo { background-position:-97px -19px; width:18px; height:19px; }
	.i-share { background-position:-120px -19px; width:19px; height:19px; }
	.i-share-2 { background-position:-144px -19px; width:19px; height:19px; }

	.i-logo-footer::before { background-position:0 -19px; width: 52px; height: 58px; }
	.i-title::before,
	.i-title-2::before { background-position:-57px -43px; width:28px; height:15px; }
	.i-error::before { background-position:-105px -82px; width:110px; height:96px; display:block; margin:0 auto 18px; }
	.i-error-2::before { background-position:0 -82px; width:100px; height:100px; display:block; margin:0 auto 18px; }
	.i-chfuturelab::before { background-position:-193px -19px; width:251px; height:51px; }
	.i-qrcode::after, .i-qrcode::before { background-position:-220px -82px; width:100px; height:100px; }
  .i-facebook-2::before { background-position:-90px -43px; width:29px; height:26px; }
	.i-twitter::before { background-position:-124px -43px; width:29px; height:26px; }
	.i-kakao::before { background-position:-158px -43px; width:29px; height:26px; }

	.i-m-logo { background-position:-325px -82px; width:162px; height:62px; }
	.i-m-facebook::before { background-position:0 -187px; width:35px; height:35px; }
	.i-m-naver::before { background-position:-40px -187px; width:35px; height:35px; }
	.i-m-id::before { background-position:-80px -187px; width:100px; height:76px; }
	.i-m-pw::before { background-position:-185px -187px; width:86px; height:76px; }
	.i-m-pw-2::before { background-position:-276px -187px; width:86px; height:76px; }
	.i-m-email::before { background-position:-367px -187px; width:86px; height:78px; }
	.i-m-join::before { background-position:0 -268px; width:142px; height:105px; }
	.i-complete::before { margin:-18px 0 0 -27px; background-position:-147px -268px; width:53px; height:37px; }
	.i-mail::before { margin-right:17px; background-position:-205px -268px; width:75px; height:50px; }

	/* LAYOUT */
	.not-visual .header-in { border-bottom:1px solid rgba(0,0,0,.1); }
	.menu-wrap { position:fixed; top:0; left:0; width:100%; height:100%; padding:103px 40px 30px; background:#000; color:#fff; overflow:auto; }
	#header:not(.opend-menuall) .menu-wrap { display:none; }
	#header.opend-menuall .all-toggle { right:18px; top:17px; width:32px; height:32px; }
	.menu-wrap .dep-1 { display:block; padding:18px 0 20px; border-bottom:1px solid #333; }
	.menu-wrap .dep-1:first-child { padding-top:0; }
	.menu-wrap .dep-1 > a { display:block; margin-bottom:0; font-size:18px; font-weight:700; }
	.menu-wrap .sub { font-size:0; }
	.menu-wrap .sub a { font-size:16px; color:#999; }
	.menu-wrap .sub li { display:inline-block; min-width:50%; margin-top:7px; padding-right:20px; }
	.menu-wrap .user { position:fixed; left:0; top:0; right:0; z-index: 2; display: flex; flex-wrap: wrap; align-items: center; padding: 21px 40px; background:#000; }
    .menu-wrap .gnb {padding-top: 30px}
    .menu-wrap .user.ty-2 + .gnb {padding-top: 230px;}
	.menu-wrap .user a { font-size:18px; font-weight:700; }
	.menu-wrap .user a + a { margin-left:34px; }
    .menu-wrap .user .name {order: 10; display: block; margin: 0; font-size: 15px;}
    .header-in .menu-wrap .user .name strong {color: #ffc516;}
    
    .menu-wrap .user .item {display: inline-block; margin-bottom: 15px;}
    .menu-wrap .user .item:not(.mo-hide) + .item:not(.mo-hide) {width: calc(100% - 100px);}
    .menu-wrap .user .item:not(.mo-hide) + .item::before {content: ''; display: inline-block; width: 1px; height: 12px; margin: 0 18px 0 14px; background: #7f7f7f;}
    
	.menu-wrap .util { display:block; padding:14px 0 0; font-size:0; margin-bottom: 50px}
	.menu-wrap .util a { display:inline-block; max-width:140px; min-width:50%; padding:13px 20px 0 0; font-size:13px; color:#999; white-space:nowrap; }
	#footer { padding:0 0 22px; z-index: 1111;}
	#footer.bottom-space { padding-bottom: 62px; }
	.footer-in {margin-top: 0;}
	.footer-in .fmenu { padding:11px 20px; margin:0 -20px; border-bottom:1px solid #ddd; }
	.footer-in .fmenu a { display:inline-block; padding:5px 0; }
	.footer-in .fmenu a + a { margin-left:25px; }
	.footer-in .i-logo-footer:before { position:absolute; left:0; top:0; margin-top:-29px; width: 151px; height: 14px; background: url('../images/futurelab/logo-futurelab.png') center center no-repeat; background-size: 100%; margin-top: 0;} /* 240124 수정 */
	.footer-in .office { position:relative; margin:15px 0 0; padding-left:0; padding-top: 30px; font-size:8px; color:#999; } /* 240124 수정 */
	.footer-in .office dt { margin-bottom:3px; font-size:10px; }
	.footer-in .office dd { display:inline-block; }
	.footer-in .office dd:not(.none):not(.copyright):not(.address)::after { content:''; display:inline-block; width:1px; height:8px; margin:0 2px 0 7px; background:#c4c4c4; }
	.footer-in .office .address { display:block; }
	.footer-in .office .copyright { display:block; margin-top:4px; font-size:9px; }
	.footer-in .outlink { display:flex; justify-content:space-between; margin-top:21px; }
	.footer-in .sns-area { margin-right:0; }
	.footer-in .page-top { display:none; }

	.sub-vis .sub-title img { height:20px; }
	.sub-vis .lnb .home { display:none; }
	.sub-vis .lnb .nav-sub { top:100%; padding:9px 0 8px; font-size:0; }
	.sub-vis .lnb .nav-sub::before { content:''; position:absolute; left:0; right:0; top:0; height:1px; background:#e7e7e7; }
	.sub-vis .lnb .nav-sub li { display:inline-block; width:50%; }
	.sub-vis .lnb .nav-sub a { line-height:35px; }
	.sub-vis .lnb.fixed .dep > a, .sub-vis .lnb.fixed .dep > button { line-height:59px; box-shadow:none !important; }
	.sub-vis .lnb.fixed .nav-sub { box-shadow:none !important; }
	#header.fixed-lnb { z-index:auto; }
	#header.fixed-lnb .header-in .all-toggle { position:fixed; z-index:1012; }
	#header.fixed-lnb .header-in .all-toggle .line,
	#header.fixed-lnb .header-in .all-toggle .line:before,
	#header.fixed-lnb .header-in .all-toggle .line:after { background-color:#000; }
    .menu-wrap .user .badge {order: 9; padding: 0; margin: 0 5px -5px 0;}
    .menu-wrap .user .badge img {width: 35px; margin: 0 0 0 -5px;}
    .header-in .menu-wrap .user .badge .in{left: -13px;}
    
	/* FORM */
	.fm-flex-2 > .fm-flex + .fm-flex { margin-top:10px; }
	
	
	/* 2022-05-13 newsletter 수정 :: S */
	.sub_newsletter {padding: 26px 20px 21px;}
	.sub_newsletter .inner {flex-direction: column;}
	.sub_newsletter .subs_desc {font-size: 12px;}
	.sub_newsletter .input_box {margin: 13px 0 14px;}
	.sub_newsletter .input_box input {height: 35px;padding: 0 100px 0 25px;font-size: 12px;}
	.sub_newsletter .input_box .submit_btn {width: 88px;height: 35px;font-size: 12px;border-radius: 17px;}
	.sub_newsletter .check_group {display: flex;align-items: center;flex-wrap: wrap;}
	.sub_newsletter .fm-item {margin: 0 10px;}
	.sub_newsletter .fm-item + .fm-item {margin-top: 0;margin-left: 10px;}
	.sub_newsletter .fm-chk + .checked-i.txt {display: block;padding-left: 18px;line-height: 14px;font-size: 10px;}
	.sub_newsletter .fm-chk + .checked-i:before {width: 14px;height: 14px;box-sizing: border-box;}
	.sub_newsletter .fm-chk + .checked-i:after {left: 3px;}
	/* 2022-05-13 newsletter 수정 :: E */

	/* 2022-05-13 agree_pop 수정 :: S */
	.agree_pop {background: #fff;}
	.agree_pop .pop_box {top: 0; transform: translateX(-50%); height: 100%;}
	.agree_pop .pop_head {padding: 21px 20px;}
	.agree_pop .pop_body {padding: 25px 20px 36px;}
	.agree_pop .pop_body .ok_btn {width: 90px; height: 40px; margin-top: 30px; font-size: 15px; line-height: 38px;}
	.agree_pop .pop_body .close_btn::before, .agree_pop .pop_body .close_btn::after {height: 2px; margin-top: -1px;}
	.agree_pop .dim {background: #fff;}
	/* 2022-05-13 agree_pop 수정 :: E */
}
@media all and (max-width: 768px) {
	#footer.bottom-space2 { padding-bottom: 70px; } /* wll 관련 여백 추가 */
}
@media all and (max-width:380px) {
	.footer-in .fmenu { display:flex; justify-content:space-between; }
	.footer-in .fmenu a + a { margin-left:0; }
}

/* ERROR */
.error-wrap { position:absolute; left:0; right:0; top:50%; transform:translateY(-50%); }
.error-cont { max-width:960px; width:100%; padding:0 20px; margin:0 auto; font-size:10px; line-height:1.8; text-align:center; }
.error-cont dt { margin-bottom:7px; font-size:16px; font-weight:700; }
.error-cont dt strong { font-weight:inherit; color:#ff5000; }
.error-cont .btnarea { margin-top:46px; }
.error-cont .btn { display:inline-block; width:155px; font-size:12px; line-height:40px; font-weight:700; color:#fff; background-color:#ff5000; }
@media all and (min-width:1200px) {
	.error-cont { font-size:16px; line-height:1.5; }
	.error-cont dt { margin-bottom:21px; font-size:24px; font-family:'NanumSquare'; font-weight:800; }
	.error-cont .btnarea { margin-top:57px; }
	.error-cont .btn { width:150px; font-size:16px; line-height:50px; font-weight:400; }
}
