/********************************************************************************************************************************************************************************************
*	Producer		: FUNNYWEB
*	Caution			: CORE 스크립트에는 URL 추적 코드가 압축되어 있으며, 파일 호출 시 해당 URL이 Google Analytics에 Referral 됩니다.
					  Referral에 기록된 IP와 URL은 철저하게 감시하여 저작권 침해시,"대한변리사회" (응용미술저작물) 침해로 처벌 될 수 있으니 유의하시기 바랍니다.
*	FONT SET		: Pretendard(100 - 900), Roboto(100,300,400,500,700,900), celmonHG(100,200,400,600,800,900), GongGothic(200,400,900)
*	Max/Min-width	: 100%/930px - Responsive : 1903(1920) | *1460(1460) | 1297(1280) | 997(980) | 767(750) | 517(500) | 357(340) [px : +17px]
*	IE Hack			: @media screen\0 {}
*********************************************************************************************************************************************************************************************/

@charset "utf-8";

html					{padding:0; margin:0; width:100%; height:100%; font-size:1em; font-weight:500; line-height:1.15; letter-spacing:-0.03rem; color:#212529; -webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;}
*,::after,::before		{box-sizing:border-box; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; overflow-wrap:break-word; word-break:keep-all;}

body					{margin:0px; padding:0; height:100%; text-align:left; -webkit-tap-highlight-color:transparent; -webkit-tap-highlight-color:rgba(0,0,0 0); overflow-x:hidden; word-wrap:break-word; word-break:keep-all;
						text-rendering:optimizeLegibility; -webkit-font-smoothing:antialiased; 
						font-family:'NanumSquareNeo', 'Pretendard', 'celmonKr', 'NotoSansKr', 'Roboto', 'celmonHG', 'GongGothic', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
						-webkit-text-size-adjust:none; -moz-osx-font-smoothing:grayscale; -webkit-text-size-adjust:none; -webkit-overflow-scrolling:touch; -webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-tap-highlight-color:transparent;}
						/*-webkit-font-smoothing: subpixel-antialiased; font-variant-ligatures:normal; font-variant-caps:normal; font-variant-numeric:normal; font-variant-east-asian:normal;font-synthesis:none;  -moz-font-feature-settings: 'liga', 'kern';*/
/*						{-webkit-text-size-adjust:none;} 모바일 웹, 아이폰 사파리에서 화면회전시 폰트 확대방지 */

table 					{width:100%; border-collapse:collapse; padding:0px; border-spacing:0px;}
blockquote, body, button, code, dd, div, dl, dt, fieldset, form, h1, h2, h3, h4, h5, h6, input, p, pre, select, td, textarea, th, ul, li, ol {margin:0; padding:0;}


legend					{overflow:hidden; visibility:hidden; position:absolute; top:0; left:0; width:1px; height:1px; font-size:0; line-height:0}
aside, footer, header, hgroup, main, nav, section {margin:0; padding:0; display:block;}
.swiper-wrapper			{list-style:none; margin:0; padding:0;}
/*dl, li, menu, ol, ul	{list-style:none;}*/

em						{font-style:normal;}
fieldset				{margin:0; padding:0; border:none;}
legend					{display:none;}
button					{font-family:inherit; cursor:pointer; white-space:nowrap; text-decoration:none; background:transparent; border:none; outline-style:none;}
input, textarea			{font-family:inherit; border:none; outline-style:none; border-radius:0; -webkit-appearance:none;}
input					{outline-style:none;}

.hide, caption			{display:none;}
.cboth					{clear:both; width:0; height:0; font-size:0; line-height:0;}

*::selection			{background-color:var(--IDTcolor); color:#FFFFFF;} 

aside,figcaption,figure,footer,header,hgroup,main,nav,section	{display:block;}


[tabindex='-1']:focus:not(:focus-visible) 	{outline:0 !important;}
hr 						{box-sizing:content-box; height:0; overflow:visible;} 
address					{font-style:normal; line-height:inherit;}
address	ul				{list-style:none; margin:0; padding:0;}

abbr[data-original-title],
abbr[title] {text-decoration: underline; -webkit-text-decoration: underline dotted; text-decoration: underline dotted; cursor: help; border-bottom: 0; -webkit-text-decoration-skip-ink: none; text-decoration-skip-ink: none;}


dt {font-weight: 700;}
dd {margin-bottom: 0.5rem; margin-left: 0;}
blockquote {margin: 0 0 1rem;}
b,
strong {font-weight: bolder;}
small {font-size: 80%;}
sub,
sup {position: relative; font-size: 75%; line-height: 0; vertical-align: baseline;}
sub {bottom: -0.25em;}
sup {top: -0.5em;}

a									{color:#1a1a1a; text-decoration:none; background-color:transparent; -webkit-tap-highlight-color:transparent; -webkit-tap-highlight-color:rgba(0,0,0,0); transition:all 0.3s; -webkit-transition:all 0.3s; -moz-transition:all 0.3s; -ms-transition:all 0.3s; -o-transition:all 0.3s;}
a:hover								{color:var(--IDTcolor); text-decoration:none;}
a:not([href]):not([class])			{color:inherit; text-decoration:none}
a:not([href]):not([class]):hover	{color:inherit; text-decoration:none}
a.link{
    -webkit-tap-highlight-color : transparent;
    &:focus{
      outline:none;
    }
  }


a.btLine				{position:relative;}
a.btLine:before			{position:absolute; content:""; left:1px; bottom:-3px; display:inline-block; width:100%; height:2px; background-color:var(--IDTcolor)}
a.btLine:hover:before	{width:0%; transition:width 0.5s ease-out 0.1s;}

a.underLine				{position:relative;}
a.underLine:before		{position:absolute; content:""; left:0px; bottom:-2px; display:inline-block; width:100%; height:1px; background-color:var(--IDTcolor); transition:background-color 0.5s ease-out 0.1s;}
a.underLine:hover:before{background-color:var(--black);}

a.hoveru:hover			{text-decoration:underline; text-underline-position:under;}


.clipboard							{cursor:pointer;}
code, kbd, pre, samp				{font-size:var(--FS13);}
pre {margin-top: 0; margin-bottom: 1rem; overflow: auto; -ms-overflow-style: scrollbar;}
figure {margin: 0 0 1rem;}
img {vertical-align:middle; border-style:none;}

svg			{overflow:hidden; vertical-align:middle;}

th {text-align: inherit; text-align: -webkit-match-parent;}

button {border-radius: 0;}
button:focus:not(:focus-visible) {outline: 0;}
button,
input,
optgroup,
select,
textarea {margin: 0; font-family: inherit; font-size: inherit; line-height: inherit;}
button,
input {overflow:visible;}
button,
select {text-transform: none;}
[role='button'] {cursor: pointer;}
select {word-wrap: normal;}
[type='button'], [type='reset'],
[type='submit'],
button {-webkit-appearance: button;}
[type='button']:not(:disabled),
[type='reset']:not(:disabled),
[type='submit']:not(:disabled),
button:not(:disabled) {cursor: pointer;}
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner,
button::-moz-focus-inner {padding: 0; border-style: none;}
input[type='checkbox'],
input[type='radio'] {box-sizing: border-box; padding: 0;}
textarea {overflow: auto; resize: vertical;}
fieldset {min-width: 0; padding: 0; margin: 0; border: 0;}
legend {display: block; width: 100%; max-width: 100%; padding: 0; margin-bottom: 0.5rem; font-size: 1.5rem; line-height: inherit; color: inherit; white-space: normal;}
progress {vertical-align: baseline;}
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {height: auto;}
[type='search'] {outline-offset: -2px; -webkit-appearance: none; 
}
[type='search']::-webkit-search-decoration {-webkit-appearance: none;}
::-webkit-file-upload-button {font: inherit; -webkit-appearance: button;}
output {display: inline-block;}
summary {display: list-item; cursor: pointer;}
template {display: none;}
[hidden] {display: none !important;}
 
/* Scroll in All Layer Box */
.inBoxScroll::-webkit-scrollbar				{width:0.45em; height:3em; border:none;}
.inBoxScroll::-webkit-scrollbar-track		{background:rgba(255,255,255,1); -webkit-border-radius:5px; border-radius:5px; /* background:rgba(239,239,239,1) */}
.inBoxScroll::-webkit-scrollbar-track:active{background:rgba(255,255,255,1);}
.inBoxScroll::-webkit-scrollbar-thumb		{background:rgba(127,127,127,0.3); -webkit-border-radius:5px; border-radius:5px; /*-webkit-box-shadow:inset 0 0 2px rgba(0,0,0,.4);*/}
.inBoxScroll								{scrollbar-width:thin; scrollbar-color:#CCCCCC transparent;} /* Firefox scrollbar */
.inBoxScroll								{scrollbar-face-color:#EEEEEE; scrollbar-track-color:#FFFFFF; scrollbar-arrow-color:#FFFFFF; scrollbar-highlight-color:none; scrollbar-3dlight-color:none; scrollbar-shadow-color:none; scrollbar-darkshadow-color:none;} /* Only IE */
.inBoxScroll::-webkit-scrollbar-thumb:hover	{background:rgba(127,127,127,0.6); -webkit-border-radius:5px; border-radius:5px;}
.inBoxScroll::-webkit-scrollbar-thumb:active{background:rgba(127,127,127,1); -webkit-border-radius:5px; border-radius:5px;}

.list_scrollwrap							{display:inline-block; width:100%; border:1px solid #EEE; border-radius:4px; padding:0px; font-style:normal; }
.list_scrollwrap .inscroll					{overflow-x:hidden; overflow-y:auto; height:200px;}


/* Wide Row Scroll*/
@media screen and (max-width:997px) {
	.wide_scroll	{display:inline-block; overflow:hidden; overflow-x:auto; padding:0px; width:100%;}
}

/* Common Hover */
.will-change	{will-change:all; /*will-change:auto; will-change:scroll-position; will-change:contents; will-change:transform; will-change:top, left;*/}

/* Forced Command */
.nobrd			{border:0px !important; border:none !important;}


/******************************************************************************************************************************************
*	Center & Middle Alignment
/******************************************************************************************************************************************/
/* Vertical Middle */
.VM			{position:absolute; top:50%; transform:translateY(-50%); -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%);}

/* Horizontal Center */
.HC			{position:absolute; left:50%; transform:translateX(-50%); -webkit-transform:translateX(-50%); -ms-transform:translateX(-50%); -o-transform:translateX(-50%);}

/* Vertical Middle & Horizontal Center */
.VMHC		{position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); -webkit-transform:translate(-50%, -50%); -ms-transform:translate(-50%, -50%); -o-transform:translate(-50%, -50%);}

/******************************************************************************************************************************************
*	FLEX Align
/******************************************************************************************************************************************/
.FVT					{align-items:flex-start !important;}  /* Vertical Align Top */


/* Display */
.DSF					{display:flex !important;}
.DSB					{display:block !important; width:100%;}
.DSIB					{display:inline-block !important;}
.DSI					{display:inline !important;}
.DST					{display:table !important;}

/* Position */
.position-static		{position:static !important;}
.position-relative		{position:relative !important;}
.position-absolute		{position:absolute !important;}
.position-fixed			{position:fixed !important;}
.position-sticky		{position:-webkit-sticky !important; position:sticky !important;}

/* Inline in Box */
.space-inline			{display:flex; align-items:center; padding:0rem; word-break:break-all; width:100%;}
.space-inline.norsp		{display:flex; align-items:center; padding:0rem; word-break:break-all; width:100%;}

@media screen and (max-width:997px) {
	.space-inline		{display:block}
}

/* Essential Mark : 2025.06.17 */
.essential			{font-style:normal; position:relative; top:-6px; left:3px; margin-right:5px;}
.essential:after	{content:'\f005'; font-family:"Font Awesome 6 Free"; font-size:var(--FS08); font-weight:900; color:var(--red);}

/******************************************************************************************************************************************
*	ROOT var(--IDTcolor)
/******************************************************************************************************************************************/
:root {
	--cntBackground:#FFFFFF;

    --primary:var(--IDTcolor);
    --secondary:#6c757d;
    --success:#28a745;
    --info:#17a2b8;
    --warning:#ffc107;
    --danger:#dc3545;
    --light:#f8f9fa;
    --dark:#343a40;

    --breakpoint-xs:0;
    --breakpoint-ms:320;
    --breakpoint-mm:500px;
    --breakpoint-sm:576px;
    --breakpoint-md:768px;
	--breakpoint-my:980px; /* My Point */
    --breakpoint-lg:992px;
    --breakpoint-xl:1200px;

    --font-family-celmon:'Pretendard', 'celmonKr', 'NotoSansKr', 'Roboto', 'celmonHG', 'GongGothic', 'NanumSquareNeo';
    --font-family-sans-serif:'Pretendard', 'Source Sans Pro', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
    --font-family-monospace:SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;

	--btnipt-height:42px;
	--ipt-color:#DBDDE2;

	--round-thin:4px; 
	--round-basic:6px;
	--round-middle:8px;
	--round-large:16px;
}

/* Table Align */
.tLeft, text-left		{text-align:left !important;}
.tCenter, text-center	{text-align:center !important;}
.tRight, text-right		{text-align:right !important;}
.vTop					{vertical-align:top;}
.vMiddle				{vertical-align:middle;}
.vBottom				{vertical-align:bottom;}

.FR						{float:right;}
.FL						{float:left;}

/* Rotate */
.rotate40				{transform:rotate(40deg); -webkit-transform:rotate(40deg);}
.rotate90				{transform:rotate(90deg); -webkit-transform:rotate(90deg);}
.rotate180				{transform:rotate(180deg); -webkit-transform:rotate(180deg);}
.rotateX				{transform:scaleX(-1); -webkit-transform:scaleX(-1);}


/* Display Control Adminlte */
.clearfix::after		{display:block; clear:both; content:'';}
.d-none					{display:none !important;}
.d-inline				{display:inline !important;}
.d-inline-block			{display:inline-block !important;}
.d-block				{display:block !important;}
.d-table				{display:table !important;}
.d-table-row			{display:table-row !important;}
.d-table-cell			{display:table-cell !important;}
.d-flex					{display:-ms-flexbox !important; display:flex !important;}
.d-inline-flex			{display:-ms-inline-flexbox !important; display:inline-flex !important;}

/* Vertical Align*/
.VA-01					{vertical-align:-1px !important;}

/* Flex align-items, justify-content */
.FJCFE					{justify-content:flex-end !important;}
.FJCSB					{justify-content:space-between !important;}
.FAIFS					{align-items:flex-start !important;}
.FAIC					{align-items:center !important;}

.flex-row					{-ms-flex-direction:row !important; flex-direction:row !important;}
.flex-column				{-ms-flex-direction:column !important; flex-direction:column !important;}
.flex-row-reverse			{-ms-flex-direction:row-reverse !important; flex-direction:row-reverse !important;}
.flex-column-reverse		{-ms-flex-direction:column-reverse !important; flex-direction:column-reverse !important;}
.flex-wrap					{-ms-flex-wrap:wrap !important; flex-wrap:wrap !important;}
.flex-nowrap				{-ms-flex-wrap:nowrap !important; flex-wrap:nowrap !important;}
.flex-wrap-reverse			{-ms-flex-wrap:wrap-reverse !important; flex-wrap:wrap-reverse !important;}
.flex-fill					{-ms-flex:1 1 auto !important; flex:1 1 auto !important;}
.flex-grow-0				{-ms-flex-positive:0 !important; flex-grow:0 !important;}
.flex-grow-1				{-ms-flex-positive:1 !important; flex-grow:1 !important;}
.flex-shrink-0				{-ms-flex-negative:0 !important; flex-shrink:0 !important;}
.flex-shrink-1				{-ms-flex-negative:1 !important; flex-shrink:1 !important;}
.justify-content-start		{-ms-flex-pack:start !important; justify-content:flex-start !important;}
.justify-content-end		{-ms-flex-pack:end !important; justify-content:flex-end !important;}
.justify-content-center		{-ms-flex-pack:center !important; justify-content:center !important;}
.justify-content-between	{-ms-flex-pack:justify !important; justify-content:space-between !important;}
.justify-content-around		{-ms-flex-pack:distribute !important; justify-content:space-around !important;}
.align-items-start			{-ms-flex-align:start !important; align-items:flex-start !important;}
.align-items-end			{-ms-flex-align:end !important; align-items:flex-end !important;}
.align-items-center			{-ms-flex-align:center !important; align-items:center !important;}
.align-items-baseline		{-ms-flex-align:baseline !important; align-items:baseline !important;}
.align-items-stretch		{-ms-flex-align:stretch !important; align-items:stretch !important;}
.align-content-start		{-ms-flex-line-pack:start !important; align-content:flex-start !important;}
.align-content-end			{-ms-flex-line-pack:end !important; align-content:flex-end !important;}
.align-content-center		{-ms-flex-line-pack:center !important; align-content:center !important;}
.align-content-between		{-ms-flex-line-pack:justify !important; align-content:space-between !important;}
.align-content-around		{-ms-flex-line-pack:distribute !important; align-content:space-around !important;}
.align-content-stretch		{-ms-flex-line-pack:stretch !important; align-content:stretch !important;}
.align-self-auto			{-ms-flex-item-align:auto !important; align-self:auto !important;}
.align-self-start			{-ms-flex-item-align:start !important; align-self:flex-start !important;}
.align-self-end				{-ms-flex-item-align:end !important; align-self:flex-end !important;}
.align-self-center			{-ms-flex-item-align:center !important; align-self:center !important;}
.align-self-baseline		{-ms-flex-item-align:baseline !important; align-self:baseline !important;}
.align-self-stretch			{-ms-flex-item-align:stretch !important; align-self:stretch !important;}


.hand					{cursor:pointer;}

/******************************************************************************************************************************************
*	[Important] Transform objects unconditionally when responsive : 2020.06.17
/******************************************************************************************************************************************/
/* It can only be viewed on mobile, not on PC */
.onlyMobile				{visibility:hidden !important;}
@media screen and (max-width:997px) {
	.onlyMobile			{visibility:visible !important;}
}

.onlyWeb			{display:block !important;}
@media screen and (max-width:997px) {
	.onlyWeb			{display:none !important;}
}

/* Responsive CSS */
.Rbr					{display:block;}
.RRbr					{display:inline-block;}
.responsive-br			{display:none;}

@media screen and (max-width:997px) {
	.responsive-br		{display:block;}
}

@media screen and (max-width:517px) {
	.Rbr				{display:inline-block;}
	.RRbr				{display:block;}
}

/* Mobile Hidden (BreakPoint Hidden) */
@media screen and (max-width:997px) {
	.BPH			{display:none !important;}
}

/* Mobile width 100% */
@media screen and (max-width:997px) {
	.Rper100				{display:inline-block !important; width:100% !important; margin:1px 0px !important; float:none !important;} /* BR */
	.Rper50					{display:inline-block !important; width:calc(50% - 2px) !important; margin:1px 0px !important;}
	.Rper33					{display:inline-block !important; width:calc(33.33% - 2px) !important; margin:1px 0px !important;}
	.RM980					{display:none !important}
	.RPadding				{padding:0px !important;}
	.RMargin				{margin:0px !important;}
}

@media screen and (max-width:517px) {
	.Rper100_517			{width:100% !important;}
}


/*	Moving	*/
.moving-x-r	{-webkit-animation:slide-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both; animation:slide-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;}

@-webkit-keyframes slide-right {
	0%		{-webkit-transform:translateX(-50px); transform:translateX(-50px); opacity:0;}
	100%	{-webkit-transform:translateX(0px); transform:translateX(0px);}
}
@keyframes slide-right {
	0%		{-webkit-transform:translateX(-50px); transform:translateX(-50px); opacity:0;}
	100%	{-webkit-transform:translateX(0px); transform:translateX(0px);}
}

.anim-pulse {animation:pulse_animation; animation-duration:1000ms; animation-iteration-count:infinite; animation-timing-function:linear;}
@keyframes pulse_animation {
    0%		{transform: scale(1)}
    30%		{transform: scale(1.1)}
    40%		{transform: scale(1.21)}
    50%		{transform: scale(1)}
    60%		{transform: scale(1)}
    70%		{transform: scale(1.09)}
    80%		{transform: scale(1.05)}
    100%	{transform: scale(1)}
}

/* Slide Right Delay Speed */
.delay-0	{-webkit-animation:slide-right .0s !important; animation:slide-right 0.0s !important;}
.delay-1	{-webkit-animation:slide-right .3s !important; animation:slide-right 0.3s !important;}
.delay-2	{-webkit-animation:slide-right .6s !important; animation:slide-right 0.6s !important;}
.delay-3	{-webkit-animation:slide-right .9s !important; animation:slide-right 0.9s !important;}
.delay-4	{-webkit-animation:slide-right 1.2s !important; animation:slide-right 1.2s !important;}
.delay-5	{-webkit-animation:slide-right 1.5s !important; animation:slide-right 1.5s !important;}
.delay-6	{-webkit-animation:slide-right 1.8s !important; animation:slide-right 1.8s !important;}
.delay-7	{-webkit-animation:slide-right 2.1s !important; animation:slide-right 2.1s !important;}
.delay-8	{-webkit-animation:slide-right 2.4s !important; animation:slide-right 2.4s !important;}
.delay-9	{-webkit-animation:slide-right 2.7s !important; animation:slide-right 2.7s !important;}


/* Box Style */
.BOX			{box-shadow:0 3px 12px 0 rgb(0 0 0 / 5%); border-radius:var(--round-large); border:1px solid rgba(0, 0, 0, 0.05); background-color:#FFF; padding:25px;}
.BOX01			{box-shadow:0 2px 4px 0 rgba(29, 29, 29, 0.04), 0 0 1px 0 rgba(0, 0, 0, 0.15); -webkit-box-shadow: 0 2px 4px 0 rgba(29, 29, 29, 0.04), 0 0 1px 0 rgba(0, 0, 0, 0.15); background-color:var(--baseBackground);}
.BOX02			{box-shadow:1px 1px 18px rgba(0,0,0,0.2); -webkit-box-shadow:1px 1px 18px rgba(0,0,0,0.2); background-color:var(--baseBackground);}
.BOX03			{box-shadow:4px 12px 30px 6px rgb(0 0 0 / 9%); -webkit-box-shadow:4px 12px 30px 6px rgb(0 0 0 / 9%); background-color:var(--baseBackground);}
.BOX04			{box-shadow:0 6px 10px 0 rgba(51,51,51,0.1); background-color:var(--baseBackground);}
.BOX05			{box-shadow:4px 2px 6px -4px rgba(0,0,0,0.1); -webkit-box-shadow:4px 2px 6px -4px rgba(0,0,0,0.1);}

@media (max-width:997px) {
	.BOX02		{box-shadow:1px 1px 9px rgba(0,0,0,0.1); -webkit-box-shadow:1px 1px 9px rgba(0,0,0,0.10);}
}

/* Shadow */
.shadow			{box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;}
.shadow-sm		{box-shadow:0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;}
.shadow-lg		{box-shadow:0 1rem 3rem rgba(0, 0, 0, 0.175) !important;}
.shadow-none	{box-shadow:none !important;}


/******************************************************************************************************************************************
*	Image Middle & Center Alignment (정사각형이 아닌 가로 세로 이미지 가운데 중앙정렬) - 2024.03.21
*******************************************************************************************************************************************/
.IMCA					{display:flex; align-items:center; justify-content:center; overflow:hidden; width:100%; height:100%; /* max-width:60px; max-height:60px; (별도 지정) */ /* padding:20px 10px; (별도 지정) */}
.IMCA.has-img			{padding:0;} /* 이미지가 있는 경우 has-img 사용 */
.IMCA.has-img > img		{/*width:60px; (별도 지정)*/ max-width:none; min-width:100%; min-height:100%; object-fit:cover; object-position:center; image-rendering:auto; backface-visibility:hidden; transform:translateZ(0);}


/******************************************************************************************************************************************
*	Text Overflow Ellipsis - 2024.03.21
*******************************************************************************************************************************************/
.TOE					{display:-webkit-box !important; -webkit-line-clamp:1; -webkit-box-orient:vertical !important; overflow-wrap:anywhere !important; white-space:wrap; word-break:break-all; overflow:hidden !important; text-overflow:ellipsis !important; -o-text-overflow:ellipsis !important; -ms-text-overflow:ellipsis !important;}
.TOE.clamp2				{-webkit-line-clamp:2;}
.TOE.clamp3				{-webkit-line-clamp:3;}
.TOE.notbr				{word-break:break-all; word-wrap:break-word;}

/******************************************************************************************************************************************
*	List Paging - 2023.02.01
*******************************************************************************************************************************************/
.listPaging	ul					{display:flex; flex-wrap:wrap; flex-direction:row; justify-content:center; align-items:center; align-content:start; margin:20px auto; list-style:none; padding:0;}
.listPaging li					{flex:0 1 auto;}
.listPaging a					{display:flex; align-items:center; justify-content:center; margin:0px 4px; padding:0px 8px; min-width:34px; height:34px; border-radius:2px; border:1px solid #E1E1E1; background-color:#FFFFFF; font-size:14px; color:#666; font-weight:600; letter-spacing:-0.03em; text-align:center; text-decoration:none; cursor:pointer;}
.listPaging a.nowpage			{border:1px solid var(--IDTcolor); background-color:var(--IDTcolor); color:#FFF;}
.listPaging a.nowpage:hover		{border:1px solid var(--IDTcolor); background-color:var(--IDTcolor); color:#FFF; cursor:not-allowed;}
.listPaging a:hover				{border:1px solid var(--IDTcolor); background-color:var(--IDTcolor); color:#FFF;}
.listPaging a.lastnumBTN		{border:1px solid var(--IDTcolor); background-color:#FFF; font-weight:700; color:var(--IDTcolor);}

@media (max-width:997px) {
	.listPaging li.respon_none	{display:none;}
}


/******************************************************************************************************************************************
*	Responsive Row Scroll Drag (with niceScroll.min.js) - 2024.02.20
*******************************************************************************************************************************************/
@media all and (max-width:997px) {
  .con-table				{width:100%; position:relative; overflow-x:hidden; touch-action:pan-y; margin:10px auto;}
  /*.con-table table			{width:1000px;}*/
  .con-table:before			{position:absolute; width:90%; margin:20px auto; padding:20px 0; font-size:var(--FS14); font-weight:500; line-height:1.2; color:#FFF; text-align:center; top:0;left:50%; -ms-transform: translate(-50%, 0%);-webkit-transform: translate(-50%, 0%);transform: translate(-50%, 0%); opacity:0.9; filter:alpha(opacity=90); -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
							content:'하단의 스크롤을 좌우로 드래그 하면 내용이 보입니다. \A 본 안내문은 클릭시 사라집니다.'; white-space:pre; background:var(--IDTcolor); border-radius:8px; z-index:1;}
  .con-table:after			{content:''; position:absolute; right:0px; top:0px; width:100%; height:100%; background:rgba(0, 0, 0, .3); z-index:0;}
  .con-table.on:before		{display:none;}
  .con-table.on:after		{display:none;}
}

.nicescroll-cursors			{cursor:pointer; margin-top:0px; border:5px solid var(--IDTcolor) !important; background-clip: padding-box; border-radius:5px !important;}


/*******************************************************************************************************************************************
*	JS Plugin Control : 2023.12.14
*******************************************************************************************************************************************/
.datepicker											{color:#777 !important; padding:15px 20px; border-radius:8px; border-radius:10px !important;}
.datepicker--cell									{font-weight:400 !important;}
.datepicker--day-name.-weekend-						{color:var(--red);}
.datepicker--cell.datepicker--cell-day.-current-	{color:var(--white); background-color:#444; border-radius:30px; font-weight:700 !important;}
.datepicker--cell.datepicker--cell-day.-current-:hover{color:var(--IDTcolor);}
.datepickers-container								{position:absolute; right:0 !important;}

.datepickers-container .datepicker:nth-of-type(2).active				{position:absolute; margin-left:-172px !important;}
.datepickers-container .datepicker:nth-of-type(2) .datepicker--pointer	{left:auto !important; right:20px !important;}

@media (max-width:997px) {
	.datepickers-container .datepicker:nth-of-type(2).active			{position:absolute; left:initial !important; right:30px !important;}
}


/* */
.input-group					{position:relative; display:-ms-flexbox; display:flex; -ms-flex-wrap:wrap; flex-wrap:wrap; -ms-flex-align:stretch; align-items:stretch; width:100%;}
.input-group > .custom-file,
.input-group > .custom-select,
.input-group > .form-control,
.input-group > .form-control-plaintext {position:relative; -ms-flex:1 1 auto; flex:1 1 auto; width:1%; min-width:0; margin-bottom:0;}
.input-group > .custom-file + .custom-file,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .form-control,
.input-group > .custom-select + .custom-file,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .form-control,
.input-group > .form-control + .custom-file,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .form-control,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .form-control {
    margin-left: -1px;
}
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label,
.input-group > .custom-select:focus,
.input-group > .form-control:focus {
    z-index: 3;
}
.input-group > .custom-file .custom-file-input:focus {
    z-index: 4;
}
.input-group > .custom-select:not(:first-child),
.input-group > .form-control:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.input-group > .custom-file {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}
.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:last-child) .custom-file-label::after {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.input-group > .custom-file:not(:first-child) .custom-file-label {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label,
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after,
.input-group:not(.has-validation) > .custom-select:not(:last-child),
.input-group:not(.has-validation) > .form-control:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label,
.input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label::after,
.input-group.has-validation > .custom-select:nth-last-child(n + 3),
.input-group.has-validation > .form-control:nth-last-child(n + 3) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.input-group-append,
.input-group-prepend {
    display: -ms-flexbox;
    display: flex;
}
.input-group-append .btn,
.input-group-prepend .btn {
    position: relative;
    z-index: 2;
}
.input-group-append .btn:focus,
.input-group-prepend .btn:focus {
    z-index: 3;
}
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .btn,
.input-group-append .input-group-text + .input-group-text,
.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-prepend .input-group-text + .input-group-text {
    margin-left: -1px;
}
.input-group-prepend {
    margin-right: -1px;
}
.input-group-append {
    margin-left: -1px;
}
.input-group-text {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    padding: 0/*0.375rem*/ 0.75rem;
    margin-bottom: 0;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    text-align: center;
    white-space: nowrap;
    /*background-color: #e9ecef;*/
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
}
.input-group-text input[type='checkbox'],
.input-group-text input[type='radio'] {
    margin-top: 0;
}
.input-group-lg > .custom-select,
.input-group-lg > .form-control:not(textarea) {
    height: calc(2.875rem + 2px);
}
.input-group-lg > .custom-select,
.input-group-lg > .form-control,
.input-group-lg > .input-group-append > .btn,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-prepend > .input-group-text {
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: 0.3rem;
}
.input-group-sm > .custom-select,
.input-group-sm > .form-control:not(textarea) {
    height: calc(1.8125rem + 2px);
}
.input-group-sm > .custom-select,
.input-group-sm > .form-control,
.input-group-sm > .input-group-append > .btn,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-prepend > .input-group-text {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    line-height: 1.5;
    border-radius: 0.2rem;
}
.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
    padding-right: 1.75rem;
}
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .input-group-text,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child),
.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child),
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}


/******************************************************************************************************************************************
*	Animation Collection [animista.net] : Last Update - 25.05.28
/******************************************************************************************************************************************/
/* slide-in-top */
.slide-in-top			{animation: slide-in-top 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940) both; -webkit-animation: slide-in-top 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;}

@keyframes slide-in-top	{
	0%		{transform:translateY(-200px); -webkit-transform:translateY(-200px); opacity:0;}
	100%	{transform:translateY(0); -webkit-transform:translateY(0); opacity:1;}
}
@-webkit-keyframes slide-in-top {
	0%		{transform:translateY(-200px); -webkit-transform:translateY(-200px); opacity:0;}
	100%	{transform:translateY(0); -webkit-transform:translateY(0); opacity:1;}
}


/* slide-in-right */
.slide-in-right			{animation:slide-in-right 0.8s cubic-bezier(.25,.46,.45,.94) both; -webkit-animation:slide-in-right 0.8s cubic-bezier(.25,.46,.45,.94) both;}

@-webkit-keyframes slide-in-right {
	0%		{transform:translateX(200px); -webkit-transform:translateX(200px); opacity:0;}
	100%	{transform:translateX(0); -webkit-transform:translateX(0); opacity:1;}
}
@keyframes slide-in-right {
	0%		{transform:translateX(200px);-webkit-transform:translateX(200px); opacity:0;}
	100%	{transform:translateX(0); -webkit-transform:translateX(0); opacity:1;}
}

/* slide-in-bottom */
.slide-in-bottom		{animation:slide-in-bottom 0.8s cubic-bezier(.25,.46,.45,.94) both; -webkit-animation:slide-in-bottom 0.8s cubic-bezier(.25,.46,.45,.94) both;}

@-webkit-keyframes slide-in-bottom {
	0%		{transform:translateY(200px); -webkit-transform:translateY(200px); opacity:0;}
	100%	{transform:translateY(0); -webkit-transform:translateY(0); opacity:1;}
}
@keyframes slide-in-bottom {
	0%		{transform:translateY(200px); -webkit-transform:translateY(200px); opacity:0;}
	100%	{ transform: translateY(0); -webkit-transform:translateY(0); opacity:1;}
}

/* slide-in-left */
.slide-in-left			{animation:slide-in-left 0.8s cubic-bezier(.25,.46,.45,.94) both; -webkit-animation:slide-in-left 0.8s cubic-bezier(.25,.46,.45,.94) both;}

@-webkit-keyframes slide-in-left{
	0%		{transform:translateX(-200px); -webkit-transform:translateX(-200px); opacity:0}
	100%	{transform:translateX(0); -webkit-transform:translateX(0);opacity:1}
}
@keyframes slide-in-left{
	0%		{transform:translateX(-200px); -webkit-transform:translateX(-200px); opacity:0}
	100%	{transform:translateX(0); -webkit-transform:translateX(0); opacity:1}
}

/* slide Up Fade */
@keyframes slideUpFade {
	from {opacity:0; transform:translateY(30px);}
	to {opacity: 1; transform:translateY(0);}
}


.fade-out	{animation:fadeOut 0.5s forwards;}

@keyframes fadeOut {
  to {opacity: 0;}
}

.shake {animation: shake 0.5s; animation-iteration-count:infinite; /* 계속 반복 */}
@keyframes shake {
  0% {transform: translate(1px, 1px) rotate(0deg);}
  10% {transform: translate(-1px, -2px) rotate(-1deg);}
  20% {transform: translate(-3px, 0px) rotate(1deg);}
  30% {transform: translate(3px, 2px) rotate(0deg);}
  40% {transform: translate(1px, -1px) rotate(1deg);}
  50% {transform: translate(-1px, 2px) rotate(-1deg);}
  60% {transform: translate(-3px, 1px) rotate(0deg);}
  70% {transform: translate(3px, 1px) rotate(-1deg);}
  80% {transform: translate(-1px, -1px) rotate(1deg);}
  90% {transform: translate(1px, 2px) rotate(0deg);}
  100% {transform: translate(1px, -2px) rotate(-1deg);}
}

@keyframes ani_updown {
  0%	{transform:translateY(-7px);}
  50%	{transform:translateY(7px);}
  100% {transform:translateY(-7px);}
}

@keyframes ani_updown2 {
  0%	{transform:translateY(5px);}
  50%	{transform:translateY(-5px);}
  100%	{transform:translateY(5px);}
}

@keyframes ani_updown3 {
  0%	{transform:translateY(-7px);}
  50%	{transform:translateY(7px);}
  100%	{transform:translateY(0px);}
}

@keyframes ani_wobble {
	0%, 100% {transform:translateX(0%); transform-origin:50% 50%;}
	15% {transform:translateX(-30px) rotate(6deg);}
	30% {transform:translateX(15px) rotate(-6deg);}
	45% {transform:translateX(-15px) rotate(3.6deg);}
	60% {transform:translateX(9px) rotate(-2.4deg);}
	75% {transform:translateX(-6px) rotate(1.2deg);}
}

@keyframes ani_rotate {
	0% {-webkit-transform: rotate(0); transform:rotate(0);}
  100% {-webkit-transform: rotate(360deg); transform:rotate(360deg);}
}

@keyframes ani_shakerotate {
	0%, 100%		{transform:rotate(0deg); transform-origin:50% 50%;}
	10%				{transform:rotate(8deg);}
	20%, 40%, 60%	{transform:rotate(-10deg);}
	30%, 50%, 70%	{transform:rotate(10deg);}
	80%				{transform:rotate(-8deg);}
	90%				{transform:rotate(8deg);}
}

@keyframes ani_shakerotate2 {
	0%, 100%		{transform:rotate(0deg); transform-origin:50% 50%;}
	10%				{transform:rotate(4deg);}
	20%, 40%, 60%	{transform:rotate(-5deg);}
	30%, 50%, 70%	{transform:rotate(5deg);}
	80%				{transform:rotate(-4deg);}
	90%				{transform:rotate(4deg);}
}

@keyframes ani_shakeleft {
	0%, 100%		{transform:rotate(0deg);transform-origin:0 50%;}
	10%				{transform:rotate(2deg);}
	20%, 40%, 60%	{transform:rotate(-4deg);}
	30%, 50%, 70%	{transform:rotate(4deg);}
	80%				{transform:rotate(-2deg);}
	90%				{transform:rotate(2deg);}
	99%				{transform:rotate(0deg);}
}

@keyframes ani_blink {
  0% {opacity:0;}
  50% {opacity:1;}
  100% {opacity:0;}
}

@keyframes ani_blink2 {
  0% {opacity:1;}
  50% {opacity:0;}
  100% {opacity:1;}
}

@keyframes ani_loop3 {
  0% {transform:translateY(5px);}
  50% {transform:translateY(-5px);}
  100% {transform:translateY(5px);}
}

@keyframes ani_loop4 {
  0% {transform:translateX(-4px);}
  50% {transform:translateX(4px);}
  100% {transform:translateX(-4px);}
}

@keyframes ani_loop5 {
  0% {transform:translateX(4px);}
  50% {transform:translateX(-4px);}
  100% {transform:translateX(4px);}
}

@keyframes ani_move {
  0% {transform:translateY(30px);}
  100% {transform:translateY(0px);}
}

@keyframes ani_move2 {
  0% {transform:translateY(48px);}
  100% {transform:translateY(0px);}
}

@keyframes ani_move3 {
  0% {transform:translateY(172px);}
  100% {transform:translateY(0px);}
}

@keyframes ani_opacity {
  0% {opacity:0;}
  100% {opacity:1;}
}
