@charset "UTF-8";

/*Material Icons*/
@font-face {
	font-family : 'Material Icons';
	font-style: normal;
	font-weight: 400;
	src: url(../font/MaterialIcons-Regular.eot); 
	src : local('Material Icons'), local('MaterialIcons-Regular'), url(../font/MaterialIcons-Regular.woff2) format('woff2'), url(../font/MaterialIcons-Regular.woff) format('woff'), url(../font/MaterialIcons-Regular.ttf) format('truetype');
}

.micon{
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 24px;
	display:inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap : normal;
	white-space : nowrap;
	direction: ltr;
	-webkit-font-smoothing : antialiased;
	text-rendering : optimizeLegibility;
	-moz-osx-font-smoothing : grayscale;
	font-feature-settings : 'liga';
}




:root{
	--color-text2 : #464C53;
	--color-text3 : #8A949E;

	--color-border : #dbdbdb;

	--color-bg : #E9EAEE;

	--color-main : #0B50A1;
	--color-sub : #008162;

    --color-main-hover : #0E68D2;

	--color-p10 : #F2F7FF;
	--color-p20 : #E1EFFF;
	--color-p30 : #CAE0FF;
	--color-p40 : #ACD2FE;
	--color-p50 : #5EA8FF;
	--color-p60 : #3561B1;
	--color-p70 : #0B50A1; /*default*/
	--color-p80 : #003878;
	--color-p90 : #001B41;

	--color-g0 : #fbfbfb;
	--color-g1 : #f5f5f5;
	--color-g2 : #E9EAEE;
	--color-g3 : #e5e5e5;
	--color-g4 : #dbdbdb;
	--color-g5 : #ccc;
	--color-g6 : #8A949E;
	--color-g7 : #464C53;
	--color-g8 : #1E2124;

	--color-red : #E40A2E;
	--color-yellow : #FF4400;
	--color-green : #008162;
	--color-blue : #0069CC;
    --color-navy : #0B0E64;

    --color-focus : #00043f;

	--bold : 600;

    --border : 16px;
    --border-m : 8px;
    --border-s : 4px;

    --inputH : 4rem;
    --inputA : 3.0rem;
}


.red{color:var(--color-red) !important;}
.yellow{color:var(--color-yellow) !important;}
.green{color:var(--color-green) !important;}
.blue{color:var(--color-blue) !important;}
a.blue{text-decoration: underline !important;}
.gray{color:var(--color-g7) !important;}

.bold{font-weight:600;}


*::selection{background:#111; color:#fff000;}


/*?아이콘*/
.icon-chatAi{content:url(/images/common/chatAi.svg); display:inline-block; width:24px; height:24px;}
.icon-excel{content:url(/images/common/icon_excel.svg); display:inline-block; width:24px; height:24px;}
.icon-powerpoint{content:url(/images/common/icon_powerpoint.svg); display:inline-block; width:24px; height:24px;}
.icon-word{content:url(/images/common/icon_word.svg); display:inline-block; width:24px; height:24px;}
.icon-han{content:url(/images/common/icon_han.svg); display:inline-block; width:24px; height:24px;}
.icon-pdf{content:url(/images/common/icon_pdf.svg); display:inline-block; width:24px; height:24px;}
.icon-img{content:url(/images/common/icon_img.svg); display:inline-block; width:24px; height:24px;}

.icon-facebook{content:url(/images/common/icon_facebook_g.svg); display:inline-block; width:24px; height:24px;}
.icon-blog{content:url(/images/common/icon_blog_g.svg); display:inline-block; width:24px; height:24px;}
.icon-kakao{content:url(/images/common/icon_kakao_g.svg); display:inline-block; width:24px; height:24px;}
.icon-info{content:url(/images/common/icon_info.svg); display:inline-block; width:24px; height:24px;}
.icon-alert{content:url(/images/common/icon_alert.svg); display:inline-block; width:24px; height:24px;}
.icon-redast{content:url(/images/common/icon_red_asterisk.svg); display:inline-block; width:24px; height:24px;}
.icon-blueast{content:url(/images/common/icon_blue_asterisk.svg); display:inline-block; width:24px; height:24px;}

.icon-quotes_L{content:url(/images/common/quotes_left.svg); display:inline-block; width:62px;}
.icon-quotes_R{content:url(/images/common/quotes_right.svg); display:inline-block; width:62px;}
.icon-srhPlus{content:url(/images/common/search_plus.svg); display:inline-block; width:24px; height:24px;}


/*? btn*/
.btn{display: inline-flex; align-items: center; justify-content: center; gap: 0.4rem; width: auto; min-width:140px; height: 4.0rem; padding: 0 1.6rem; background-color: var(--color-main);   border: 1px solid var(--color-main); border-radius: 0.8rem; font-size: 1.7rem; color: #fff; font-weight: 500; line-height: 1; cursor: pointer; white-space: nowrap;   transition: 0.3s ease-in-out; text-decoration: none;}
.btn:hover{background-color: var(--color-main-hover);  border-color: var(--color-main-hover); text-decoration: none;}
.btn:focus {outline: 2px solid var(--color-focus); transition: none;}
.btn[disabled] {background-color: #e5e5e5 !important;  border-color: #e5e5e5 !important;  color: #676767 !important; cursor:not-allowed !important; text-decoration:none !important;}
.btn[disabled]:focus{outline:none !important; }

/* primary */
.btn.primary {background-color: var(--color-main);  border: 1px solid var(--color-main);  color: #fff;}
.btn.primary:hover {background-color: var(--color-main-hover);  border-color: var(--color-main-hover);}

/* secondary */
.btn.secondary {background-color: #fff;  border: 1px solid var(--color-main);  color: var(--color-main);}
.btn.secondary:hover {background-color: var(--color-p10);}

/* tertiary */
.btn.tertiary {background-color: #fff;  border: 1px solid var(--color-g6);  color: var(--color-g7);}
.btn.tertiary:hover {background-color: var(--color-g1);}

/* caution */
.btn.caution {background-color: #fff;  border: 1px solid var(--color-red);  color: var(--color-red);}
.btn.caution:hover {background-color: #fff6f7;}

/* caution */
.btn.temp {background-color: var(--color-sub);  border: 1px solid var(--color-sub);  color: #fff;}
.btn.temp:hover {background-color: #009974;}

/* text */
.btn.text{padding:0 4px; min-width:auto; background:transparent; border:none; color:#246BEB; }
.btn.text.num{color:#0B0E64;}
.btn.text:hover{text-decoration: underline;}
.btn.text.tertiary{color:#111; }
.btn.text.tertiary:hover{background-color:transparent;}
.btn.text.tertiary.gray{color:#666; font-weight:400;}

/* a Link */
a.newLink{color:var(--color-blue); display:flex; align-items:center;}
a.newLink::after{content:'\e89e'; display:flex; font-family:'Material Icons'; font-size:1.7rem;}

/* special */
.btn.special{background:linear-gradient(90deg, #1080FF,#00D095); border:0; font-weight:600;}

/* other style */
.btn{white-space: normal; word-break: break-word;  overflow-wrap: break-word;}

.btn.style01{background:#EFF5FF; color:var(--color-main); font-weight:600;border:0;}
.btn.style01:hover{background-color:#eff5ff; }

.btn.icon{padding:0; font-weight:400; min-width:40px; border-radius:4px;}

.btn.green{background:#fff; border:1px solid var(--color-green); color:var(--color-green);}
.btn.green:hover{background-color:#f4fffc;}
.btn.blue{background:#fff; border:1px solid var(--color-blue); color:var(--color-blue);}
.btn.blue:hover{background-color:#f3f9ff;}
.btn.red{background:#fff; border:1px solid var(--color-red); color:var(--color-red);}
.btn.red:hover{background-color:#fff6f7;}
.btn.yellow{background:#fff; border:1px solid var(--color-yellow); color:var(--color-yellow);}
.btn.yellow:hover{background-color:#fff4f0;}

.btn.xsm{height:3.0rem; padding:0 1rem; border-radius:.4rem; font-size:1.5rem;}
.btn.sm{/*height:3.4rem;*/ height:3.8rem; padding:0 1.6rem; border-radius:.4rem; font-size:1.6rem; min-width:110px; font-weight:400;}
.btn.md{height:4.0rem; padding:1.6rem; border-radius:.8rem; font-size:1.7rem; }
.btn.lg{height:5.6rem; padding:0 5.0rem; border-radius:.8rem; font-size:1.9rem;}
.btn.xlg{height:6.4rem; padding:0 5.4rem; border-radius:.8rem; font-size:1.9rem;}

.btn.sm i{font-size:18px; width:18px; height:18px; display: flex; align-items: center; justify-content: center;}

.btn[class*=ico-]::after{display:inline-flex; content:''; width:20px; height:20px; font-size:20px; background-repeat:no-repeat; background-size:contain;}

/*? 버튼 묶음*/
.btnW{position:relative; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:4px; width:100%; margin-top: 40px;}
.btnW div{display:inline-flex; align-items:center; gap:4px;}
.btnW.left{justify-content:flex-start;}
.btnW.center{justify-content:center;}
.btnW.right{justify-content:flex-end;}

@media all and (max-width:768px){
    .btn{min-width:80px; font-size:1.5rem;}
	.btn.lg{height:4.6rem; padding:0 1.6rem; font-size: 1.7rem;}
}

.btn:has(.micon):hover{text-decoration: none;}

/* 테이블 내 상태 */
.statusW{display:flex; flex-wrap: wrap; gap:16px;}
/* .status{font-weight:600;} */

/*?input text*/
input[type="file"]{background-color:#f9f9f9; padding:12px; border-radius:8px;}
input[type="text"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="date"],
select{padding:0 16px; height:56px; border-radius:8px; border:1px solid var(--color-g6); width: 200px;}
label:has(input[type="text"]){display:inline-flex; flex-direction:column; gap:8px;}
label .label{font-size:1.5rem; }
label .red{font-size:1.5rem;}
input[type="tel"].focus,
input[type="tel"]:focus,
input[type="number"].focus,
input[type="number"]:focus,
input[type="text"].focus,
input[type="text"]:focus{outline:2px solid var(--color-p50);}
input[type="tel"][readonly],
input[type="number"][readonly],
input[type="text"][readonly]{background-color:var(--color-g3); border: none;}
input[type="tel"]:disabled,
input[type="number"]:disabled,
input[type="text"]:disabled{background-color:var(--color-g3); color:var(--color-g7);cursor:no-drop;}
input[type="tel"].error,
input[type="number"].error,
input[type="text"].error{outline:2px solid var(--color-red);}
label:has(input[type="text"]) p{font-size:1.5rem;}
@media all and (max-width:768px){
	input[type="text"],
	input[type="tel"],
	input[type="number"],
	select{height:46px; }
	#userAd{width: calc(100% - 130px);}
}

textarea,
select{border-radius:8px; border:1px solid var(--color-g6) !important; color: var(--color-text2);}
textarea.focus,
textarea:focus,
select.focus,
select:focus{outline:2px solid var(--color-p50);}
textarea[readonly],
input[readonly]{background-color:var(--color-g3); border: none !important;}
textarea:disabled,
select:disabled{background-color:var(--color-g3); color:var(--color-g7);cursor:no-drop;}
textarea.error,
select.error{outline:2px solid var(--color-red);}

.totalCost{}
.totalCost span{color:var(--color-main); font-size:1.9rem; font-weight:600;}

.inpT{display:flex; align-items: center; gap:4px;}
.inpH .form{width: calc(100% / 2 - 3px);}
@media all and (max-width:768px){
	.inpT .form{width:30%;}
	.inpH{display:flex; gap:4px; flex-direction:column;}
	.inpH .form{width: 100%;}
}

.radi,
.chk{font-size:1.7rem; color:#111;}
[type="radio"]:hover,
[type="checkbox"]:hover,
label:hover{cursor: pointer;}

.inp:has([type="radio"]),
.inp:has([type="checkbox"]){display:inline-flex; align-items:center; gap:24px;}

[type="radio"]{position:relative; margin-right:4px; margin-top:-2px; vertical-align: middle;  appearance: none;  border: 2px solid #666;  border-radius: 50%;  width: 16px;  height: 16px;}
[type="radio"]::before{content:''; display:block; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%); width:8px; height:8px; border-radius:100%; background: var(--color-main); opacity:0; transition:.3s;}
[type="radio"]:checked{border:2px solid var(--color-main);}
[type="radio"]:checked::before{opacity:1;}
[type="radio"]:hover::after{opacity:1;}
[type="radio"]:disabled {border-color:#dbdbdb; cursor: not-allowed;}
[type="radio"]:disabled::before{background:#dbdbdb; }
[type="radio"]:disabled:hover::after{display:none;}

[type="checkbox"]{position:relative; margin-right:4px; margin-top:-2px; appearance: none; vertical-align:middle; border:2px solid #666; border-radius:2px; width:16px; height:16px;}
[type="checkbox"]::before{content:''; display:block; position:absolute; left:3px; top:0; transform:rotate(45deg); width:4px; height:7px; border-right:2px solid #fff; border-bottom:2px solid #fff; opacity:0; transition:.3s;}
[type="checkbox"]:checked{background: var(--color-main); border:2px solid var(--color-main);}
[type="checkbox"]:checked::before{opacity:1;}
[type="checkbox"]:hover::after{opacity:1;}
[type="checkbox"]:disabled {border-color:#dbdbdb; cursor: not-allowed;}
[type="checkbox"]:disabled:hover::after{display:none;}

@media all and (max-width:768px){
	[type="radio"],
	[type="checkbox"]{margin-right:2px;}
	.inp:has([type="radio"]),
	.inp:has([type="checkbox"]){gap: 8px 16px; flex-wrap: wrap;}
}


/*? 페이지네이션 */
.pagination{position:relative; display:flex; align-items:center; justify-content:center; margin-top:80px; width:100%; gap:8px;}
.pagination a{text-decoration:none; border-radius:6px; transition:.3s;}
.pagination a:hover{background-color:#EDF1F5;}
.pagination .pageNavi{display:inline-flex; align-items:center; justify-content:center; min-width:60px; height:40px; color:#676767; }
.pagination .pageNavi:hover{color:#111;}
.pagination .pageNavi.prev{padding:0 8px 0 4px; }
.pagination .pageNavi.next{padding:0 4px 0 8px; }
.pagination .pageLink{display:flex; align-items:center; justify-content:center; gap:8px;}
.pagination .pageLink a{display:inline-flex; align-items:center; justify-content:center; color:#333; min-width:40px; height:40px;}
.pagination .pageLink a.active{background:var(--color-main); color:#fff; font-weight:500;}
.pagination .pageLink .linkDot{display:inline-flex; align-items:center; justify-content:center; min-width:40px; height:40px; }
.pagination .pageLink .linkDot i{font-size:1.9rem; color:#333; }
.pagination .pageLink .mob{display:none;}

@media all and (max-width:768px){
    .pagination{padding-top:64px;}
    .pagination .pageNavi{position:absolute; top:0; }
    .pagination .pageNavi.prev{left:50%; transform:translateX(-70px);}
    .pagination .pageNavi.next{right:50%; transform:translateX(70px);}
    .pagination .pageLink{flex-wrap:wrap;}
    .pagination .pageLink .web{display:none;}
    .pagination .pageLink .mob{display:inline-flex;}
}
@media all and (max-width:480px){
    .pagination .pageLink{gap:4px;}
    .pagination{padding-top:40px; margin-top: 0 !important;}
    .pagination .pageLink .linkDot{min-width:24px;}
}


/*? 테이블 감싸면 가로 스크롤 + 가로스크롤 안내 문구 추가 */
.tblFixed {overflow-x: auto; -webkit-overflow-scrolling: touch;}
.tblFixed > .tbl{ min-width: 1000px; width: 100%;}
.infotxt.tblscr{display:none;}
@media all and (max-width:1024px){
	.tblFixed > .tbl{ min-width: 1000px;}
}


/*? 일반 테이블 */
.tbl{width:100%; max-width:100%; overflow:hidden; table-layout:fixed; border-top:2px solid #111; border-bottom:1px solid #ccc;}
.tbl thead{background:#f7f7f7;}
.tbl th,
.tbl td{border:1px solid #ccc; text-align:center; word-wrap: break-word;}
.tbl th{padding:1.5rem 1rem; overflow:hidden;}
.tbl td{padding:1.2rem 1rem; overflow:hidden;}
.tbl tr{border-bottom:1px solid #e5e5e5;}
.tbl tbody tr:last-child{border-bottom:0;}
.tbl thead th{text-align: center;}
.tbl tbody tr{ background:#fff;}
.tbl tbody th{background:#f9f9f9;}
.tbl tbody td:not(.cont){text-align:center;}
.tbl tbody td.cont *{display:inline-block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; vertical-align: middle;}
.tbl.tblV tbody td{position:relative;}
.tbl .state span{font-size:1.5rem;}
.tbl tbody td.cont a{position:relative; padding-right:24px; line-height:24px;}
.tbl tbody td.cont .micon{position:absolute; right:0; top:50%; transform:translateY(-50%); width:16px; font-size:1.7rem; color:#777;}
.tbl tfoot th, 
.tbl tfoot td{height:42px;background:#e9e9e9;color:#000;padding:10px 12px;border:1px solid #ccc;}
.tbl .first{border-left:0;}
.tbl .last{border-right:0;}
.tbl .conList {padding:0;}
.tbl .center{text-align:center;}
.tbl .left {text-align:left;}
.tbl .right {text-align:right;}
.tblScroll{overflow:auto; max-width:100%;}
.tblScroll table{min-width:500px;}

.wd01{width:8%;}
.wd02{width:14%;}
.wd03{width:20%;}
.wd04{width:40%;}
.wd05{width:50%;}
.wd06{width:60%;}

@media all and (max-width:1024px){
	.tbl.tblV colgroup,
	.tbl.tblV thead,
	.tbl.tblV .web{display:none;}
	.tbl.tblV tbody tr{display:block; padding:16px 8px;}
	.tbl.tblV tbody tr td{display:inline-block;}
	.tbl.tblV tbody tr td.cont{display:block; width:100%;}
	.tbl.tblV tbody td{padding:0;}
	.tbl.tblV tbody td:not(.cont){margin-right:1.6rem; font-size: 1.5rem;}
	.tbl.tblV tbody td:not(.cont):last-child{margin-right:0;}
	.tbl.tblV tbody td:not(.cont)::before{display:inline-block; content:attr(data-cell-header); margin-right:4px; color:#777;}
	.tbl.tblV tbody td.cont{margin-bottom:8px;}
	.tbl.tblV tbody td.cont *{font-weight:600;}
}


/*? 페이징 */
.page_nav{display:flex; gap:1px; align-items:center; justify-content:center; margin-top:8rem;}
.page_nav a{display:flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:var(--border); background:#fff; border:1px solid #dbdbdb;}
.page_nav a.start,
.page_nav a.prev,
.page_nav a.next,
.page_nav a.end{text-indent:-9999px; font-size: 0; color:transparent;}
.page_nav a.prev{margin-right:8px;}
.page_nav a.next{margin-left:8px;}
.page_nav a.prev svg,
.page_nav a.next svg,
.page_nav a.start svg,
.page_nav a.end svg{width:16px; height:16px;}
.page_nav a.prev svg g,
.page_nav a.next svg g,
.page_nav a.start svg g,
.page_nav a.end svg g{fill:#111;}
.page_nav a:active{opacity:.8;}
.page_nav a.on{text-decoration:underline; background:#fff; color:var(--color-main); border:1px solid var(--color-main);}


/*?관항목*/
.paragraph{display:inline-flex; flex-direction:column;}
.paragraph h3,
.h3{margin:40px 0 20px; font-size:2.1rem; font-weight:600; font-family: 'SCD'; color:var(--color-main);}
.paragraph h3.top,
.h3.top{margin-top:0;}
.paragraph h4,
.h4{position:relative; display:inline-flex; gap:8px; flex-wrap:nowrap; align-items:flex-start; font-size:1.9rem; margin:0 0 10px; font-weight:600; }
.paragraph h4::before,
.h4::before{display:inline-block; content:''; margin-top:8px; width:6px; height:6px; border-radius:100%; border:4px solid #0B0E64; }
/*.paragraph h5,*/
/*.h5{padding-left:22px; margin-bottom:10px; font-weight:600;}*/
.paragraph h5,
.h5{padding-left:22px; margin-bottom:10px; font-weight:500;}
.paraList{display:flex; flex-direction:column; padding-left:22px; color:var(--color-g7);text-align:left;}
.paraList b{font-weight:600;}
.paraList > li{position:relative; padding-left:12px; margin-top:4px;}
.paraList > li:first-child{margin-top:0;}
.paraList > li::before{position:absolute; left:0; top:11px; display:inline-block; content:''; width:4px; height:4px; border-radius:100%; background:#0b0e64;}
.lineList{display:flex; flex-direction:column; margin-top:8px;text-align:left; gap:4px;}
.lineList > li{position:relative; padding-left:12px;}
.lineList > li::before{position:absolute; left:0; top:12px; display:inline-block; content:''; width:8px; height:2px; background:var(--color-g7);}
.dotList{display:flex; flex-direction:column; margin-top:8px; text-align:left; gap:4px;}
.dotList > li{position:relative; padding-left:12px;}
.dotList > li::before{position:absolute; content:''; left:0; top:10px; display:inline-block; width:4px; height:4px; border-radius:100%; border:1px solid var(--color-g7);}
@media all and (max-width:768px){
	.paragraph h3, .h3{font-size:1.9rem;}
	.paragraph h4, .h4{font-size:1.7rem;}
	.paragraph h5, .h5{font-size:1.5rem;}
	.paragraph h4::before,
	.h4::before{margin-top:5px;}
}

/**컨텐츠 안내 문구*/
.infotxt{/*display:inline-block;*/ display:flex; position:relative; padding-left:24px;}
.infotxt::before{position:absolute; content:''; left:0; top:2px; width:20px; height:20px; }
.infotxt.alert{color:#444;}
.infotxt.astRed{color:var(--color-red);}
.infotxt.astBlue{color:var(--color-blue);}
.infotxt.ast{color:var(--color-text2);}
.infotxt.information::before{background:url(../images/common/icon_info.svg) no-repeat 50% 50%; background-size:cover;}
.infotxt.alert::before{background:url(../images/common/icon_alert.svg) no-repeat 50% 50%; background-size:cover;}
.infotxt.astRed::before{background:url(../images/common/icon_red_asterisk.svg) no-repeat 50% 50%; background-size:cover;}
.infotxt.astBlue::before{background:url(../images/common/icon_blue_asterisk.svg) no-repeat 50% 50%; background-size:cover;}
.infotxt.ast::before{background:url(../images/common/icon_asterisk.svg) no-repeat 50% 50%; background-size:cover;}
/**입력창 안내 문구*/
.inpInfo{display:inline-block; position:relative; padding-left:20px; font-size:1.5rem;}
.inpInfo::before{position:absolute; content:''; left:0; top:3px; width:14px; height:14px; }
.inpInfo.error{color:var(--color-red);}
.inpInfo.error::before{background:url(../images/common/inpError.svg) no-repeat 50% 50%; background-size:cover;}
.inpInfo.success{color:var(--color-blue);}
.inpInfo.success::before{background:url(../images/common/inpSucs.svg) no-repeat 50% 50%; background-size:cover;}
.inpInfo.information{color:var(--color-navy);}
.inpInfo.information::before{background:url(../images/common/inpInfo.svg) no-repeat 50% 50%; background-size:cover;}
/**박스*/
.txtBox{position:relative; display:flex; padding:40px; border-radius:16px; box-sizing: border-box; /*min-height:160px;*/}
.txtBox.style01{border:8px solid #e1efff; border-radius:8px;}
.txtBox.style01::before{position:absolute; content:''; left:-8px; bottom:-8px; width:20%; height:8px; background:#ACD2FE; border-radius:100px;}
.txtBox.style01::after{position:absolute; content:''; left:-8px; bottom:-8px; width:8px; height:50%; background:#5EA8FF; border-radius:100px;}
.txtBox.style02{align-items:center; gap:40px; background:#f2f7ff;}
.txtBox.style02 .txtW{display:flex; flex-direction:column; gap:12px;}
.txtBox.style02 .txtW .tit{font-size:1.9rem; font-weight:600; color:var(--color-navy);}
.txtBox.style02 .txtW img{width: 240px; margin:0 auto;}
.txtBox.style03{border:4px solid #e1efff; background:#fff;}
.txtBox.style04{background:#E9EAEE;}
.txtBox.style05{background:#fff; border:1px solid #ccc;}
@media all and (max-width:768px){
	.txtBox{padding:24px;}
	.txtBox.style02{flex-wrap:wrap; justify-content: center; gap: 16px;}
	.txtBox.style02 .txtW{align-items: center;}
}


/*? 서브 검색창 */
.resultFilt{display:flex; align-items:flex-end; justify-content:space-between; flex-wrap:wrap; margin-bottom:24px;}
.resultFilt .alignBase{display:inline-flex; align-items:center; flex-wrap:wrap; gap:24px;}
.resultFilt .alignBase p:not(:first-child){position:relative;}
.resultFilt .alignBase p:not(:first-child)::before{content:'|'; color:#ccc; position:absolute; left:-13px; top:50%; transform:translateY(-50%);}
.resultFilt .alignBase .num{font-weight:600;}
.resultFilt .alignBase .num.total{font-weight:400; color:var(--color-g7);}
.resultFilt .alignBase .num.point{color:var(--color-main);}
.resultFilt .alignBase .num.current{color:var(--color-sub);}
.resultFilt .srhSort{display:inline-flex; align-items:center; flex-wrap:wrap; gap:4px;}
.resultFilt .srhSort select{min-width:100px; height:40px; border:1px solid var(--color-g6); border-radius:4px;}
.resultFilt .srhSort .inpWrap{display:inline-flex; align-items:center; border:1px solid var(--color-g6); border-radius:4px; height:40px; overflow:hidden;}
.resultFilt .srhSort .inpWrap .txtinp{height:100%;}
.resultFilt .srhSort .inpWrap .txtinp input[type="text"]{width:220px; height:100%; border-radius:0; border:0; padding:0 8px; }
.resultFilt .srhSort .inpWrap .search{display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; background:var(--color-main); }
.resultFilt .srhSort .inpWrap .search i{color:#fff;}
@media all and (max-width:1280px){
	.resultFilt .alignBase p{font-size:1.5rem;}
	.resultFilt .alignBase .num{font-size:1.5rem;}
	.resultFilt .srhSort .inpWrap .txtinp input[type="text"]{width:180px;}
}
@media all and (max-width:768px){
	.resultFilt{align-items:flex-start; flex-direction:column-reverse; gap:16px;}
}
@media all and (max-width:425px){
	.resultFilt .srhSort{width:100%;}
	.resultFilt .srhSort select{height:32px; width:100%; line-height:32px; font-size:1.5rem;}
	.resultFilt .srhSort .inpWrap{height:32px; width:100%;}
	.resultFilt .srhSort .inpWrap .txtinp{width:100%;}
	.resultFilt .srhSort .inpWrap .txtinp input[type="text"]{font-size:1.5rem; width:100%;}
	.resultFilt .srhSort .inpWrap .txtinp input[type="text"]::placeholder{font-size:1.5rem;}
	.resultFilt .srhSort .inpWrap .search{background:none; width:32px; height:32px; }
	.resultFilt .srhSort .inpWrap .search i{color:var(--color-main);}
}

/*? 서브 검색창 필터 */
.filter{display:flex; flex-wrap:wrap; align-items:center; gap:8px 24px; padding:32px; margin-bottom:40px; border-radius:16px; background:#f5f5f5;}
.filter label{display:inline-flex; flex-direction:row; align-items:center; gap:4px 12px;}
.filter label:has(input[type="text"]){flex-direction:row;}
.filter select,
.filter input:not([type="radio"]):not([type="checkbox"]){border-radius:4px; border:1px solid #676767; padding:0 16px; height:40px; min-width:180px;}
.filter .srhW{display:inline-flex; flex-direction:row; align-items:center; gap:8px;}
.filter .srhBtn{display:flex; align-items:center; gap:8px;}
@media all and (max-width:1440px){
    .filter label{gap:4px 8px;}
    .filter label .tit{min-width:50px;}
    .filter input[type="text"]{width:100%;}
    .filter .srhW{width:100%;}
    .filter label:has(input[type="text"]){width:100%;}
}
@media all and (max-width:480px){
    .filter{padding:24px; margin-bottom:24px;}
    .filter select, .filter input:not([type="radio"]):not([type="checkbox"]){font-size:1.5rem; width:100%;}
    .filter label,
    .filter .srhW,
    .filter label:has(input[type="text"]){flex-direction:column; align-items:flex-start; width:100%;}
    .filter .srhBtn{width:100%;}
    .filter .srhBtn .btn.srh{width:calc(100% - 48px);}
}


/*? 탭 */
.tab {display:grid; grid-template-columns: repeat(4, 1fr); gap:4px; margin-bottom:60px;}
.tab li {width:100%; height:100%}
.tab a{display:flex; align-items:center; justify-content:center; padding:8px; min-height:48px; height:100%; border-radius:8px; background:#f9f9f9; color:#666; text-decoration: none;  border:1px solid #dbdbdb; text-align:center; line-height:1.2;}
.tab a.on{background:#fff; color:var(--color-main); font-weight: 600; border:2px solid var(--color-main);}
.tab a:not(.on):hover{color:#111; text-decoration: underline;}
@media all and (max-width:768px){
    .tab a{font-size:1.5rem;}
    .tab {grid-template-columns: repeat(3, 1fr); margin-bottom:40px;}
}
@media all and (max-width:425px){
    .tab {grid-template-columns: repeat(2, 1fr);}
}


/* 카테고리 탭 */
/* 일반탭 */
.tabList { position: relative; display: flex; flex-wrap: wrap; list-style: none; padding: 0; margin: 0; margin-bottom:40px;}
.tabList li:not(:first-child):before { content: ""; position: absolute; display: block; width: 1px; height: 1.2rem; background: #d6d6d6; top: 50%; left: 0; transform: translateY(-50%); }
.tabList li { position: relative; display: flex; align-items: center; justify-content: center; gap: 6px; padding: 0.8rem 1.8rem; cursor: pointer; text-align: center; color: #666; transition: .2s; z-index: 1; }
.tabList li:hover { color: var(--color-sub); }
.tabList li.on { background: #fff; color: var(--color-main); font-weight: 600; }
.tabList li.on:after { content: ''; position: absolute; display: block; width: 80%; height: 0.8rem; border-radius: var(--border-s); background: #d0e3f8; bottom: 4px; left: 50%; transform: translateX(-50%) scaleX(0); transform-origin: center; animation: expandToRight 0.3s forwards; z-index: -1; }
/* 애니메이션 */
@keyframes expandToRight { to { transform: translateX(-50%) scaleX(1); } }
@media all and (max-width:768px){
	.tabList li{font-size:15px;}
}


/*? 만족도 조사 */
.research {margin-top: 40px; padding: 35px 40px; background: #f5f5f5; border-radius: 12px;}
.research * {box-sizing: border-box;}
.research > p {font-size: 19px; font-weight: 700; word-break: keep-all;}
.research ul {display: flex; flex-wrap: wrap; gap: 10px 30px; margin: 25px 0 15px;}
.research ul li input[type="radio"] {accent-color: #1d2088; margin-right: 5px;}
.research .memo {display: flex; align-items:center; gap: 8px;}
.research .memo input[type="text"] {width: calc(100% - 176px);}

@media (max-width:768px) {
	.research > p {font-size: 18px;}
    .research .btn{padding:0 2.0rem; margin:0 auto; min-width:110px; height:4.0rem; font-size:1.5rem;}
    .research .memo{flex-direction:column; align-items:flex-start; justify-content:center;}
    .research .memo input[type="text"]{width:100%; font-size:1.5rem;}
    .research .memo input[type="text"]::placeholder{font-size:1.5rem;}
}
@media (max-width:425px) {
	.research {padding: 24px;}
	.research ul {gap: 10px 0; flex-direction:column;}
	.research ul li {width: 100%;}
    .research .btn{width:100%;}
}

/*? 담당부서 안내 */
.departmentInfo{display:flex; flex-direction:row; align-items:center; background:#f5f5f5; border-radius:12px; margin-top:80px; padding:24px 40px; }
.departmentInfo > div{display:inline-flex; align-items:center; gap:24px;width:50%;}
.departmentInfo .tit{font-weight:600; }
.departmentInfo .txt{display:inline-flex; align-items:center; gap:8px;}
.departmentInfo .txt .mail{display:inline-flex; align-items:center; justify-content:center; color:#777; text-decoration: none;}
.departmentInfo .txt .mail:hover{color:var(--color-sub);}
@media all and (max-width:768px){
    .departmentInfo{flex-direction:column; align-items:flex-start; gap:8px;}
    .departmentInfo > div{gap:0; width:100%;}
    .departmentInfo .tit{width:130px;}
}
@media all and (max-width:425px){
    .departmentInfo{padding:16px 24px; gap:4px;}
    .departmentInfo .tit{width:100px;}
    .departmentInfo .txt .mail i{font-size:1.9rem;}
}


/*? 팝업창 */
.pop{display:none; flex-direction:column; gap:32px; position:fixed; left:50%; top:50%; transform:translate(-50%, -50%); padding:40px; width:560px; background:#fff; border:1px solid #888; border-radius:12px; z-index:51; max-height:80vh; max-width:calc(100vw - 80px);}
.pop.rsvPop{width: 80vw;}
.pop .popT{flex:0 0 auto; padding-bottom:24px; border-bottom:1px solid #111; width:100%; }
.pop .popT .tit{font-size:1.9rem; font-weight:600; width:calc(100% - 30px);}
.pop .popB{flex:1 1 auto; min-height:0; overflow:auto; max-height: 400px; margin:16px 0;}
.pop .popF{flex:0 0 auto;}
.pop .close{position:absolute; right:30px; top:30px; width:44px; height:44px; background:url(../images/common/xb.svg) no-repeat 50% 50%; background-size:contain; text-indent:-9999px; font-size:0; color:transparent;}
.pop:has(.filter){max-height:98vh; width:800px;}
.pop .filter{padding:16px; border-radius:4px;}
.pop:has(.filter) table tr td a{color:var(--color-blue);}
.pop:has(.filter) .popB{max-height:340px; border: 1px solid #dbdbdb;}
@media all and (max-width:1024px){
	  .pop{padding:32px; max-width:calc(100% - 64px); }
    .pop .close{top:24px; right:24px; background-size:32px;}
}
@media all and (max-width:768px){
    .pop{padding:24px; gap:24px; max-width:calc(100% - 48px); }
    .pop .close{top:16px; right:16px;}
	  .pop .popB{max-height: 32vh !important; overflow-y: auto !important;}
}
@media all and (max-width:425px){
    .pop{padding:16px; max-width:calc(100% - 32px); }
	  .pop .popT{padding-bottom:8px;}
    .pop .close{top:8px; right:8px; background-size:24px;}
		.pop .filter{padding:0; background:#fff;}
		.pop .filter .srhW, .pop label:has(input[type="text"]){gap:2px;}
}


/*? AI 요약 팝업창 */
.pop.AIsum{width: 50%; height: auto;}
.pop.AIsum .popB{max-height: 70vh; margin:0;}
.pop.AIsum .popB .AIcont{}
.pop.AIsum .popB .AIcont p,
.pop.AIsum .popB .AIQ p{font-weight:600; margin-bottom:4px; color:#1080FF; display:flex; align-items:center;}
.pop.AIsum .popB .AIcont p .micon,
.pop.AIsum .popB .AIQ p .micon{font-size:18px; margin-right:4px;}
.pop.AIsum .popB .AIQ p{margin-top:16px;}
.pop.AIsum .popB .AIcont > div{overflow-y:auto; background-color:#f9f9f9; border:1px solid #dbdbdb; padding:16px; border-radius:12px; max-height: 400px;}
.pop.AIsum .popB .AIQ{}
.pop.AIsum .popB .AIQ > ul{display:flex; flex-direction:column; gap:8px;}
.pop.AIsum .popB .AIQ > ul > li {padding:8px 16px; background: linear-gradient(135deg, #e3f2fd 0%, #f3f9ff 100%); border-radius:8px; }
.pop.AIsum .popB .AIQ > ul > li a{width: 100%; height: 100%; color:#436A86;}
.pop.AIsum .AIanswer { display:flex; flex-direction:column; gap:8px; max-height: 400px; overflow:auto; margin: 24px 0; padding: 20px; background: linear-gradient(135deg, #f8f9ff 0%, #f0f2ff 100%); border: 1px solid #e1e5ff; border-radius: 12px;}
.pop.AIsum .AIanswer-q {font-weight:600; padding-bottom:8px; border-bottom:1px solid #e1e5ff; }
@media all and (max-width:768px){
	.pop.AIsum{max-width: 100%; width:100%; height: 100%; max-height: 100vh; border-radius:12px 12px 0 0;}
	.pop.AIsum .popB{max-height:80vh !important;}
	.pop.AIsum .popB .AIcont > div,
	.pop.AIsum .AIanswer {max-height: 190px;}
}


/* 뷰어 팝업창 */
.pop.SNview{width: 50%; max-height: 100vh; height: 96vh;}
.pop.SNview .popB{max-height: 80vh !important; margin:0;}
.pop.SNview .iframe-wrap {position: relative; width: 100%; height:100%; border: 1px solid #ddd; }
.pop.SNview .iframe-wrap iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none;}
@media all and (max-width:1024px){
	.pop.SNview{width: 80%;}	
}
@media all and (max-width:768px){
	.pop.SNview{width: 90%;}
	.pop.SNview .popB{max-height: 90vh !important;}
}



/*? 페이징 */
.sr-only {position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important;}


/*? 로딩중입니다.*/
#loader {position:fixed; display:none; top:0;left:0;width:100%;height:100%;z-index:9999;background:rgba(0,0,0,0.8);}
#loader .spinner-box {display:flex; justify-content:center; position:relative; margin:0 auto; margin-top:200px; padding-top:70px;}
#loader .configure-border-1 {position:absolute; top:0; width: 60px; height: 60px; padding: 3px;  background: var(--color-main); border-radius:13px; animation: configure-clockwise 3s ease-in-out 0s infinite alternate;}
#loader .configure-border-2 {position:absolute; top:0; width: 60px; height: 60px; padding: 3px; background: var(--color-point); transform: rotate(45deg); border-radius:13px; animation: configure-xclockwise 3s ease-in-out 0s infinite alternate;}
#loader .configure-core {width: 100%; height: 100%; background-color: #1d2630; border-radius:10px; }
#loader .txt{margin-top:20px; text-align:center; color:#fff; font-size: 14px;}
#loader .notice{position:absolute; left:50%; bottom:-40px; transform:translateX(-50%); color:#fff; white-space:nowrap; text-align:center;}

	@keyframes configure-clockwise {
	0% {transform: rotate(0) ;}
	25% {transform: rotate(90deg);}
	50% {transform: rotate(180deg);}
	75% {transform: rotate(270deg);}
	100% {transform: rotate(360deg);}
	}

	@keyframes configure-xclockwise {
	0% {transform: rotate(45deg);}
	25% {transform: rotate(-45deg);}
	50% {transform: rotate(-135deg);}
	75% {transform: rotate(-225deg);}
	100% {transform: rotate(-315deg);}
	}



/*? To TOP버튼*/
#totop{position:fixed; right:20px; bottom:20px; z-index:40;}
#totop .totop{position:relative; visibility:visible; display: flex; justify-content: center; align-items: center; flex-direction: column; width:60px; height:60px; line-height: 1.2; opacity:0; width:48px; height:48px; border-radius:100px; background:#fff; border:1px solid #ccc; text-decoration:0; transition: 0.4s;}
#totop .totop:hover,
#totop .totop:focus{background-color:var(--color-g1);}
#totop .totop.show{opacity:1; }

@media all and (max-width:768px){
	#totop{right:20px; bottom:20px; }
}

@media all and (max-width:480px){
	#totop{right:20px; bottom:100px; }
}

/* 메인팝업 버튼 */
.mainPopOpen{position:fixed; right:0; top:32%; z-index:39; padding:8px 12px;}
.mainPopOpen .mPopOpen{position:relative; visibility:visible; display: inline-block; padding: 6px 16px; background: #1E2124; border-radius: 20px; color: #fff; font-family: 'SCD'; font-size:1.4rem; transition: all 0.3s;}
@media all and (max-width:1280px){
	.mainPopOpen{position:absolute; top:580px; padding:0;}
	.mainPopOpen .mPopOpen{ border-radius: 20px 0 0 20px; }
}


/*? skip_navigation*/
#skip_navigation{z-index:9999; position:absolute; left:0; top:0; width:100%; }
#skip_navigation *{list-style:none; margin:0; padding:0; }
#skip_navigation a{display:block; width:0; height:0; color:#fff; white-space:nowrap; text-align:center; border:0; border-radius:0 0 10px 10px; overflow:hidden;}
#skip_navigation a h2{font-size: 18px; font-weight:300;}
#skip_navigation a:focus,
#skip_navigation a:active{display:block; margin:0 auto; padding:15px; text-align:center; width:100%; height:auto;  font-size: 16px;  box-shadow:7px 15px 15px -7px rgba(0,0,0,0.2);}


/*? 준비중 페이지*/
.readyBox{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; padding:56px 24px; background:#f9f9f9; border-radius:24px; text-align:center;}
.readyBox .loader5 {display: inline-block; position: relative; margin-bottom:16px; animation: loader5 1s infinite alternate-reverse linear; width: 50px; height: 50px; border-radius: 50%; vertical-align: middle; background:linear-gradient(var(--color-main), var(--color-sub));}
.readyBox .loader5:before,
.readyBox .loader5:after {width: 100%; height: 100%; border-radius: 50%; position: absolute; top: 0; left: 0;}
    @keyframes loader5 {
        0% {transform: rotate(0deg); border-radius: 50%; }
        50% {transform: rotate(90deg); border-radius: 0%; }
        100% {transform: rotate(180deg); border-radius: 50%; }
    }
.readyBox .tit{font-size:2.2rem;}
.readyBox .tit em{font-weight:500;}
.readyBox .stxt{font-weight:100;}

@media all and (max-width:768px){
    .readyBox .tit{font-size:1.8rem;}
    .readyBox .stxt{font-size: 1.4rem;}
}

/*? 게시물 없음*/
.noBoard{display:flex; flex-direction:column; gap:16px; align-items:center; justify-content:center; padding:32px; border-radius:var(--border); background:#fff; color:#999; border:4px solid #f5f5f5; }
.noBoard img{width:140px;}
@media all and (max-width:768px){
	.noBoard{padding:24px;}
	.noBoard img{width:100px;}
}


/*? 기타 추가*/
/* 플렉스 */
.dpf{width: 100%; display:flex; align-items:center; flex-wrap:wrap; gap:8px;}
.dpf.jfc{justify-content: center;}
.dpf.jfsb{justify-content: space-between;}
.dpf.jffe{justify-content: flex-end;}
.fdc{flex-direction:column;}
@media all and (max-width:620px){
	.dpf.jfsb{justify-content: center; text-align:center;}
}



/* 20260519 _ 검색 조건 추가 */
.filter:has(.typeB){gap:8px 16px;}
.filter .srhW label label:has(input[type="radio"]),
.filter .srhW label label:has(input[type="checkbox"]){gap:0px;}
.filter .srhW > label:has(input[type="checkbox"]) > .tit{width:100px;}
.filter .srhW:has(input[type="date"]) > .tit{width:78px;}
@media all and (max-width:1658px){
		.filter:has(.typeB){gap:8px 24px;}
    .filter .srhW {width:auto;}
    .filter .srhW:has(.srhBtn) {width:100%;}
    .filter .srhW:not(:has(.srhBtn)):has(input[type="text"]) {width:auto; flex-basis:auto;}
    .filter .srhW:not(:has(.srhBtn)) > label:has(input[type="text"]) {width:auto;}
	  .filter .srhW:not(:has(.srhBtn)) > label:has(input[type="text"]) input[type="text"] {width:200px; min-width:180px;}
	  .filter label .tit,
	  .filter .srhW > label:has(input[type="checkbox"]) > .tit,
	  .filter .srhW:has(input[type="date"]) > .tit{width:100px;}
}
@media all and (max-width:1346px){
    .filter label .dpf{width: auto; flex-wrap: nowrap;}
}
@media all and (max-width:700px){
	.filter .srhW.typeB label:has(.calendar){width: calc(100% / 2 - 90px);}
}
@media all and (max-width:600px){
	.filter .srhW.typeB select, 
	.filter .srhW.typeB input{min-width: 50%;}
	.filter .srhW.typeB label{width: 38%;}
	.filter .srhW.typeB label:has(.calendar) {width: calc(100% / 2 - 140px);}
} 
@media all and (max-width:480px){
	.filter .srhW.typeB label,
	.filter .srhW.typeB label:has(.calendar),
    .filter .srhW:not(:has(.srhBtn)),
    .filter .srhW:not(:has(.srhBtn)) > label:has(input[type="text"]),
    .filter .srhW:not(:has(.srhBtn)) > label:has(input[type="text"]) input[type="text"]{width: 100% !important;}
	.filter .srhW label label:has(input[type="radio"]),
	.filter .srhW label label:has(input[type="checkbox"]){flex-direction: row; align-items: center; gap: 4px;}
}