@charset "utf-8";

/* CSS Document */
html{-ms-text-size-adjust: var(--html-font-size-1);-webkit-text-size-adjust: var(--html-font-size-1); font-size: var(--html-font-size-1); overflow-x:hidden; overflow-y:scroll}
html,body,div,p,span,a,img,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,form,input,select,textarea,button,label,fieldset,table,tr,td,th,tbody,thead,tfoot,caption,video,strong,em,i,b{margin:0;padding:0; font-size:inherit}
ul,ol,li{list-style:none}
img { border:none; max-width:100%}
em,i{ font-style:normal}
table{ border-collapse:collapse; border-spacing:0}
span, strong, a, em, i, b, input, button, textarea, select, label{ display:inline-block; font-size:inherit; font-family:inherit; color:inherit; vertical-align: middle}
strong,h1,h2,h3,th{ font-weight:inherit}
i{ vertical-align: baseline;}
input[type=button], button, textarea, select{ appearance:none;-webkit-appearance:none; -moz-appearance: none; max-width:100%; cursor:pointer}
select{ max-width:100%; background:url(../images/inc/arrow_down.svg) right .75em center no-repeat #fff; background-size:.85em auto}
a, input, button, textarea, select, li{ -webkit-tap-highlight-color:transparent}
a:focus, input:focus, button:focus, textarea:focus, select:focus{ outline:none}
a:focus:not(:focus-visible), input:focus:not(:focus-visible), button:focus:not(:focus-visible), textarea:focus:not(:focus-visible), select:focus:not(:focus-visible){ outline: none}
iframe{ border:none}
a,
a:active,
a:hover{text-decoration:none}

body{ font-family:'pretendard',sans-serif; font-weight:400; line-height:1.3; color:var(--color-black); word-break: keep-all; letter-spacing: -0.05rem; -webkit-font-smoothing:antialiased}
html.hidden{ overflow-y:hidden}

.wrapHide{ position:absolute; opacity:0; width:0; z-index:-1; visibility:hidden}


/* ====== POP ====== */
.dwrap{ position:relative; width:2000px; left:50%; margin-left:-1000px}

.layerWrap{ position:fixed; left:0; top:0; width:100%; height:100%; z-index:1003}
.layerWrap .layerBg{position:absolute; z-index:9999; width:100%; height:100%; left:0; top:0; background:#000; opacity:.5}
.layerWrap .layerFrame{ position:absolute; z-index:10000; left:0; top:0; width:100%; height:100%}
html.pop{background:transparent; display:flex; justify-content:center; align-items:center; width:100%; height:100vh}
html.pop .popWrap{ position:relative; display:flex; flex-direction:column; justify-content:center; max-width:96vw; height:90vh; margin: auto 0;}
html.pop .popWrap .popTit{ position:relative; z-index:1; padding:1em 1em 1em 2em; display:flex; background:var(--color-point2); border-radius:.5em .5em 0 0; color:#fff; transform:translateY(1px)}
html.pop .popWrap .popTit .tit{ flex:1 1 100%; padding-top:1em}
html.pop .popWrap .popTit .tit .t1{ font-weight:700; font-size:1.5em}
html.pop .popWrap .popTit .popClose{ flex:0 0 auto; text-align:center; width:3em; line-height:3em; border-radius:100%; text-align:center; color:#fff}
html.pop .popWrap .popTit .popClose .xi{ transition:.3s; font-size:1.75em}
html.pop .popWrap .popTit .popClose .xi:before{ content:"\e9af"}
html.pop .popWrap .popTit .popClose:hover .xi{ transform:rotate(180deg)}
html.pop .popWrap .popIn{ box-sizing:border-box;  border-radius: .5em .5em; box-shadow:1px 1px 10px #333; position:relative}
html.pop .popWrap .popIn .popCon{ min-height:5em; padding:1em 2em 3em 2em; background:#fff;}
html.pop .popWrap .popBtn{ position:relative; z-index:1; display:flex; background:#fff; border-radius:0 0 .5em .5em; transform:translateY(1px); overflow:hidden; padding-top:.5em; margin-top:-.5em; box-sizing:border-box}
html.pop .popWrap .popBtn:before{ content:""; position:absolute; left:0; top:0; height:.5em; width:100%; background:#fff}
html.pop .popWrap .popBtn .input_st{ border-radius:0}

html.pop .popWrap.st1{ width:100%; background:rgba(0,0,0,.5); max-width:100vw; height:100vh; position:fixed; left:0; top:0}
html.pop .popWrap.st1 .popIn{ padding:0; background:none; border-radius:0; box-shadow:none}

html.pop .popWrap.popAgree{ width: 900px;}

/* ====== Scroll css ====== */
.scrollst{overflow-y:auto; scrollbar-width: thin; scrollbar-color: gray transparent;scrollbar-face-color: #666;
scrollbar-track-color: #f1f1f1;
scrollbar-arrow-color: none;
scrollbar-highlight-color: #f1f1f1;
scrollbar-3dlight-color: none;
scrollbar-shadow-color: #fff;
scrollbar-darkshadow-color: none;}
.scrollst::-webkit-scrollbar  { width: 5px}
.scrollst::-webkit-scrollbar-track  { background-color:#f5f5f5}
.scrollst::-webkit-scrollbar-thumb  { border-radius: 10px; background-color:var(--color-point); background-clip: padding-box; border:none}
.scrollst::-webkit-scrollbar-button  { width: 0; height: 0;}
.scrollst.c1::-webkit-scrollbar-track{ background:#aaa}
.scrollst.c1::-webkit-scrollbar-thumb{ background-color:#333}

html::-webkit-scrollbar{ width: 8px; }
html::-webkit-scrollbar-thumb{ background-color: #3aa4a5; border-radius:100px;}
html::-webkit-scrollbar-track{ background: #fff;}


:root{

/* ====== Head Height ====== */
--headH: 6.5rem;
--linkH: 2.5rem;
--headAll: 9rem;

/* ====== Color Invert ====== */
--crWhitefil: brightness(0) invert(1);
--crBlackfil: brightness(0) invert(0);
--crfilRE: invert(1);


/* ====== SNS Color ====== */
    --snsIn:#e82155;
    --snsFb:#2167be;
    --snsYt:#ed3023;
    --snsKa:#f7e111;
    --snsNv:#07bb58;
    --snsTw:#1d9bf0;


/* ====== ====== Font Size ====== ======*/

/* ====== html Font-Size 100% 기준 (1rem = 16px) ====== */
/*고령층 대상 서비스, 접근성이 중요한 서비스*/
--html-font-size-1 : 100%;
/*콘텐츠 밀도가 높은 서비스 (포털, 뉴스 등)*/
--html-font-size-2 : 87.5%;
/*미니멀 UI, 대시보드, 내부 툴처럼 공간이 부족한 UI에 적합*/
--html-font-size-3 : 75%;
/*대규모 프로젝트, 유지보수 중심 코드베이스*/
--html-font-size-4 : 62.5%;


/* ====== Fluid Typography (rem, vw, rem) ====== */

/* 1rem = 16px 기준 */
--font-size-xxxs: clamp(0.5rem, 0.5vw, 0.625rem);       /* 8px ~ 10px */
--font-size-xxs: clamp(0.625rem, 0.6vw, 0.75rem);       /* 10px ~ 12px */
--font-size-xs: clamp(0.75rem, 0.8vw, 0.875rem);        /* 12px ~ 14px */
--font-size-sm-1: clamp(0.8125rem, 0.9vw, 0.9375rem);   /* 13px ~ 15px */
--font-size-sm: clamp(0.875rem, 1vw, 1rem);             /* 14px ~ 16px */
--font-size-base: clamp(1rem, 1.2vw, 1.125rem);         /* 16px ~ 18px */
--font-size-md-1: clamp(1.0625rem, 1.3vw, 1.25rem);     /* 17px ~ 20px */
--font-size-md: clamp(1.125rem, 1.4vw, 1.375rem);       /* 18px ~ 22px */
--font-size-lg-1: clamp(1.375rem, 1.7vw, 1.625rem);     /* 22px ~ 26px */
--font-size-lg: clamp(1.5rem, 2vw, 1.75rem);            /* 24px ~ 28px */
--font-size-lg-2: clamp(1.75rem, 2.5vw, 2rem);          /* 28px ~ 32px */
--font-size-xl-1: clamp(1.875rem, 2.7vw, 2.25rem);      /* 30px ~ 36px */
--font-size-xl: clamp(2rem, 3vw, 2.5rem);               /* 32px ~ 40px */
--font-size-xxl: clamp(2.5rem, 3.5vw, 2.85rem);         /* 40px ~ 45.6px */
--font-size-xxl-2: clamp(2.9rem, 3.9vw, 3.25rem);       /* 46.4px ~ 52px */
--font-size-xxxl: clamp(3rem, 4vw, 4rem);               /* 48px ~ 64px */
--font-size-xxxxl: clamp(4rem, 6vw, 6rem);              /* 64px ~ 96px */

/* ====== Line Heights ====== */
    --line-height-tight: 1.2;
    --line-height-normal: 1.5;
    --line-height-loose: 1.75;


/* ====== Spacing (margin, padding, gap) - 8px 기반 ====== */
    --space-0: 0;   /* 0px */
    --space-1: 0.4rem;  /* 4px */
    --space-2: 0.8rem;  /* 8px */
    --space-3: 1.2rem;  /* 12px */
    --space-4: 1.6rem;  /* 16px */
    --space-5: 2.4rem;  /* 24px */
    --space-6: 3.2rem;  /* 32px */
    --space-7: 4.8rem;  /* 48px */
    --space-8: 6.4rem;  /* 64px */


/* ====== Border Radius ====== */
    --radius-none: 0;
    --radius-sm: 0.4rem;   /* 4px */
    --radius-md: 0.8rem;   /* 8px */
    --radius-lg: 1.6rem;   /* 16px */
    --radius-xl: 2.4rem;   /* 24px */
    --radius-pill: 9999px;


/* ====== Gaps (Grid / Flexbox) ====== */
    --gap-xs: var(--space-1);
    --gap-sm: var(--space-2);
    --gap-md: var(--space-3);
    --gap-lg: var(--space-4);
    --gap-xl: var(--space-5);


/* ====== Container Widths (max-width 기준) ====== */
    --container-sm: 540px;
    --container-md: 720px;
    --container-lg: 960px;
    --container-xl: 1140px;
    --container-xxl: 1320px;
    --container-xxxl: 1420px;
    --container-ultra: 1520px;
    --container-ultra-xl: 1560px;
    --container-ultra-xxl: 1620px;
    --container-ultra-xxxl: 1760px;


/* ====== Color Palette (light mode 기본) ====== */
    --color-point: #063562;
    --color-point2: #3aa4a5;
    --color-point3: #08142b;
    --color-black: #1e292d;
    --color-black-1: #000000;
    --color-black-2: #111111;
    --color-black-3: #171717;
    --color-black-4: #222222;
    --color-black-5: #333333;
    --color-black-6: #444444;
    --color-black-7: #555555;
    --color-black-8: #666666;
    --color-black-9: #777777;
    --color-black-10: #888888;
    --color-black-11: #999999;
    --color-gray: #ededed;
    --color-gray-1: #f7f7f7;
    --color-gray-2: #f5f5f5;
    --color-gray-3: #f3f3f3;
    --color-gray-4: #f1f1f1;
    --color-bg-1: #f2fbff;
    --color-bg-2: #eff2f5;
    --color-bg-3: #f7f8fa;
    --color-text: #111111;
    --color-primary: #0052cc;
    --color-primary-hover: #003d99;
    --color-secondary: #f5f5f5;
    --color-border: #dddddd;
    --color-error: #cc0000;
    --color-success: #00aa00;
    --color-warning: #ffaa00;

    --gray-line: #d1d1d1;


/* ====== Media Query Breakpoints (px 단위) ====== */
    --breakpoint-xs: 320px;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;

}


/* ====== ====== Font Class ====== ======*/

/* ====== Swiper css ====== */
.fwEL { font-weight: 100 !important; } 
.fwTL { font-weight: 200 !important; } 
.fwL { font-weight: 300 !important; }  
.fwR { font-weight: 400 !important; }  
.fwM { font-weight: 500 !important; }  
.fwML { font-weight: 600 !important; } 
.fwB { font-weight: 700 !important; }  
.fwBL { font-weight: 800 !important; } 
.fwEB { font-weight: 900 !important; }


/* ====== Utility Class ====== */
.al { text-align: left !important; } 
.ac { text-align: center !important; } 
.ar { text-align: right !important; } 

.vt { vertical-align:top !important; } 
.vm { vertical-align:middle !important; } 
.vb { vertical-align:bottom !important; } 
.vBase { vertical-align:baseline !important } 


/* ====== Color Class ====== */
.cp-1{ color: var(--color-point);}
.cp-2{ color: var(--color-point2);}
.cp-3{ color: var(--color-point3);}


/* ====== Font Point Class ====== */
.ffEN {} 
.ffNS { font-family:ns,sans-serif } 
.ffSerif {} 

/* ====== ====== ====== ====== */


/* ====== Swiper css ====== */
.swiperBtn{ width:2.5em; height:2.5em; position: static; display:flex; align-items:center; justify-content:center; z-index:100; cursor:pointer; font-size:1.45em; opacity:1; transition:.3s}
.swiperBtn:before{font-family:xeicon; font-size: var(--font-size-lg-1);}
.swiperBtn.prev:before{content:"\e93c"}
.swiperBtn.next:before{content:"\e93f"}
.swiperBtn.pause:before{content:"\ea3b"}
.swiperBtn.play:before{content:"\ea3e"}
.swiperBtn.ab{ position:absolute; top:50%;}
.swiperBtn.ab.prev{ left:0; transform:translate(-100%, -50%)}
.swiperBtn.ab.next{ right:0; transform:translate(100%, -50%)}
.swiperBtn.ab.in.prev{ transform:translate(.5em, -50%)}
.swiperBtn.ab.in.next{ transform:translate(-.5em, -50%)}
.swiperBtn.line{ border:1px solid #ddd}
.swiperBtn.round{ border-radius: var(--radius-sm);}
.swiperBtn.s1{ font-size:2em}
.swiperBtn.s2{ font-size:1em; width:2em; height:2em}
.swiperBtn.ico1.prev:before{ content:"\e908"}
.swiperBtn.ico1.next:before{ content:"\e90b"}
.swiperBtn:hover{ background:#111; color:#fff}
.swiperBtn.white{ color:#fff; border-color:rgba(255,255,255,.5)}
.swiperBtn.c1{ background: var(--color-black); color: #fff;}
.swiperBtn.c1:hover{ background: var(--color-point2);}
.swiperBtn.c2{ color: #666;}
.swiperBtn.c2:hover{ color: #111;}
.swiperBtn.line.white:hover,
.swiperBtn.line.white.play{ background:#1f5aa7; border-color:rgba(255,255,255,.2)}

.swiperBtn.bgn{ width: auto; height: auto;}
.swiperBtn.bgn:hover{ background: transparent;} 

.swiperPauseWrap .play{ display: none}
.swiperPauseWrap.pause .play{ display: flex}
.swiperPauseWrap.pause .pause{ display: none}
.swiperPaging span.swiper-pagination-progressbar-fill{ background:#111}
.swiperPaging.white{ background:rgba(255,255,255,.2)}
.swiperPaging.white span.swiper-pagination-progressbar-fill{ background:#fff}


/* ====== Loading ====== */
.loading_st{position:fixed; left:0; top:0; width:100%; height:100%; z-index:1001; text-align:center; transition:.3s}
.loading_st .xi:before{ content:"\ec34"; font-size:3em; color:var(--color-point)}
.load .loading_st{ display:none}


/* ====== Button ====== */
.IconBtn .btn { --background: var(--color-black); --text: #fff; --font-size: var(--font-size-sm); --duration: .25s; --move-hover: -4px; --shadow: 0 2px 8px -1px rgba(21, 25, 36, 0.215); --shadow-hover: 0 4px 20px -2px rgba(21, 25, 36, 0.315); --font-shadow: var(--font-size); --y: 0;
 padding: 16px 28px; font-weight: 500; line-height: var(--font-size); border-radius: 100px;
 display: inline-flex; align-items: center; justify-content: center; gap: var(--gap-sm);
 outline: none; appearance: none; border: none; text-decoration: none; cursor: pointer;
 font-size: var(--font-size); letter-spacing: .5px; background: var(--background); color: var(--text); box-shadow: var(--shadow);
 transform: translateY(var(--y)) translateZ(0); transition: transform var(--duration) ease, box-shadow var(--duration) ease; } 
.IconBtn .btn .iconimg{}
.IconBtn .btn .iconimg > img{ filter: var(--crWhitefil); height: 25px; object-fit: contain;}
.IconBtn .btn .tit { overflow: hidden; } 
.IconBtn .btn .tit div { display: flex; text-shadow: 0 var(--font-shadow) 0 var(--text); } 

.IconBtn .btn .tit div span { display: block; backface-visibility: hidden; font-style: normal; white-space: pre; transition: transform var(--duration) ease; transform: translateY(var(--m)) translateZ(0); } 
.IconBtn .btn .tit div span:nth-child(1) { transition-delay: 0.025s; } 
.IconBtn .btn .tit div span:nth-child(2) { transition-delay: 0.05s; } 
.IconBtn .btn .tit div span:nth-child(3) { transition-delay: 0.075s; } 
.IconBtn .btn .tit div span:nth-child(4) { transition-delay: 0.1s; } 
.IconBtn .btn .tit div span:nth-child(5) { transition-delay: 0.125s; } 
.IconBtn .btn .tit div span:nth-child(6) { transition-delay: 0.15s; } 
.IconBtn .btn .tit div span:nth-child(7) { transition-delay: 0.175s; } 
.IconBtn .btn .tit div span:nth-child(8) { transition-delay: 0.2s; } 
.IconBtn .btn .tit div span:nth-child(9) { transition-delay: 0.225s; } 
.IconBtn .btn .tit div span:nth-child(10) { transition-delay: 0.25s; } 
.IconBtn .btn .tit div span:nth-child(11) { transition-delay: 0.275s; } 
.IconBtn .btn .tit div span:nth-child(12) { transition-delay: 0.3s; } 
.IconBtn .btn .tit div span:nth-child(13) { transition-delay: 0.325s; } 
.IconBtn .btn .tit div span:nth-child(14) { transition-delay: 0.35s; } 
.IconBtn .btn .tit div span:nth-child(15) { transition-delay: 0.375s; } 

.IconBtn .btn:hover { --y: var(--move-hover); --shadow: var(--shadow-hover); } 
.IconBtn .btn:hover .tit div span { --m: calc(var(--font-size) * -1); } 

.IconBtn .btn.bg { --text: #fff;} 
.IconBtn .btn.bg.bg1{ background: var(--color-point);}
.IconBtn .btn.bg.bg2{ background: var(--color-point2);}
.IconBtn .btn.bg.bg3{ background: var(--color-point3);}
.IconBtn .btn.white { --background: #fff; --text: var(--color-point);} 

.IconBtn .btn.reverse { --font-shadow: calc(var(--font-size) * -1); } 
.IconBtn .btn.reverse:hover .tit div span { --m: calc(var(--font-size)); } 

/* ====== Soon ====== */
.soon{background:#f5f5f5; border:1px solid #f5f5f5; height:50vh; padding:1em}
.soon .img{ width:10em; padding-bottom:120%; margin-right:2em}
.soon .xi{ font-size:16em; opacity:.1}
.soon .tt .t1{ display:block; font-weight:700; font-size:3em; color:#333}
.soon .tt .t2{ display:block; font-size:1.25em; color:#999}

/* ====== Utility Class ====== */
.va_wrap { display:block; text-align:center; white-space: nowrap } 
.va_wrap:before { content:""; display:inline-block; *display:inline; zoom:1; vertical-align:middle; width:0; height:100% } 
.va { display:inline-block; *display:inline; zoom:1; vertical-align:middle; max-width:100%; height:auto; white-space:normal } 
.va_wrap img { vertical-align:middle; display:inline-block; *display:inline; zoom:1; max-width:100%; max-height:100% } 


/* ====== Flex ====== */
.flex { display:flex } 
.flex.wrap { flex-wrap:wrap } 
.flex.col { flex-direction:column } 
.flex.col > * { width:100%; box-sizing:border-box } 
.flex.space { justify-content: space-between } 
.flex.vspace { align-content:space-between } 
.flex.hc { justify-content:center } 
.flex.hr { justify-content:flex-end } 
.flex.vt { align-content:flex-start; align-items:flex-start } 
.flex.vc { align-content:center; align-items:center } 
.flex.vb { align-content:flex-end; align-items:flex-end } 
.flex .mgL { margin-left:auto } 
.flex .mgR { margin-right:auto } 
.flex .mgT { margin-top:auto } 
.flex .grow { flex:1 1 0%; min-width:0 } 
.flex .fix { flex:0 0 auto } 
.flex.fc { justify-content:center; align-items:center } 


/* ====== Resize ====== */
.resize { display:block; height:0; padding-bottom:100%; position:relative } 
.resize svg { position:absolute; width:100%; height:100%; left:0; top:0 } 
.resize .re { position:absolute; left:0; top:0; width:100%; height:100% } 
.resize.vod { padding-bottom:56.25% } 
.resize.photo { padding-bottom:66.66% } 
.resize.photo2 { padding-bottom: 87.4%; } 
.resize.poster { padding-bottom:141.4% } 
.resize.poster2 { padding-bottom:24.4% } 
.resize .re:not(.va_wrap) img { width:100%; height:100%; object-fit: cover } 


/* ====== Text Cut ====== */
.row { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; } 
.row.r1 { -webkit-line-clamp: 1 } 
.row.r2 { -webkit-line-clamp: 2 } 
.row.r3 { -webkit-line-clamp: 3 } 
.row.r4 { -webkit-line-clamp: 4 } 
.row.r2.fix { line-height:1.25em; height:2.5em } 


/* ====== Width ====== */
.w10 { width:10% !important; } 
.w20 { width:20% !important; } 
.w30 { width:30% !important; } 
.w40 { width:40% !important; } 
.w50 { width:50% !important; } 
.w60 { width:60% !important; } 
.w70 { width:70% !important; } 
.w80 { width:80% !important; } 
.w90 { width:90% !important; } 
.w100 { width:100% !important; } 


/* ====== ess ====== */
.ess,
.ess + span { display: inline-block; vertical-align: middle; color: var(--color-point2); } 
.ess { position:relative; top: -2px; font-size: var(--font-size-sm); line-height: 1; } 
.ess:before { content: "*"; font-size: var(--font-size-sm); margin-left: .2rem; font-weight: 500; } 


/* ====== Background Cover ====== */
.bgfix { background-repeat:no-repeat; background-position:center center; background-size:cover; } 
.bgfix.fix{ background-attachment: fixed;}
.bgfix.ct { background-size:contain } 

/* ====== img Cover ====== */
.imgfit{ width: 100%; height: 100%; object-fit: cover;}

/* ====== Margin ====== */
.mt-0 { margin-top: var(--space-0) !important} 
.mt-1 { margin-top: var(--space-1) !important} 
.mt-2 { margin-top: var(--space-2) !important} 
.mt-3 { margin-top: var(--space-3) !important} 
.mt-4 { margin-top: var(--space-4) !important} 
.mt-5 { margin-top: var(--space-5) !important} 
.mt-6 { margin-top: var(--space-6) !important} 

.mb-0 { margin-bottom: var(--space-0) !important} 
.mb-1 { margin-bottom: var(--space-1) !important} 
.mb-2 { margin-bottom: var(--space-2) !important} 
.mb-3 { margin-bottom: var(--space-3) !important} 
.mb-4 { margin-bottom: var(--space-4) !important} 
.mb-5 { margin-bottom: var(--space-5) !important} 
.mb-6 { margin-bottom: var(--space-6) !important} 

.mr-0 { margin-right: var(--space-0) !important} 
.mr-1 { margin-right: var(--space-1) !important} 
.mr-2 { margin-right: var(--space-2) !important} 
.mr-3 { margin-right: var(--space-3) !important} 
.mr-4 { margin-right: var(--space-4) !important} 
.mr-5 { margin-right: var(--space-5) !important} 
.mr-6 { margin-right: var(--space-6) !important} 

.ml-0 { margin-left: var(--space-0) !important} 
.ml-1 { margin-left: var(--space-1) !important} 
.ml-2 { margin-left: var(--space-2) !important} 
.ml-3 { margin-left: var(--space-3) !important} 
.ml-4 { margin-left: var(--space-4) !important} 
.ml-5 { margin-left: var(--space-5) !important} 
.ml-6 { margin-left: var(--space-6) !important} 


/* ====== Padding ====== */
.pt-0 { padding-top: var(--space-0) !important} 
.pt-1 { padding-top: var(--space-1) !important} 
.pt-2 { padding-top: var(--space-2) !important} 
.pt-3 { padding-top: var(--space-3) !important} 
.pt-4 { padding-top: var(--space-4) !important} 
.pt-5 { padding-top: var(--space-5) !important} 
.pt-6 { padding-top: var(--space-6) !important} 

.pb-0 { padding-bottom: var(--space-0) !important} 
.pb-1 { padding-bottom: var(--space-1) !important} 
.pb-2 { padding-bottom: var(--space-2) !important} 
.pb-3 { padding-bottom: var(--space-3) !important} 
.pb-4 { padding-bottom: var(--space-4) !important} 
.pb-5 { padding-bottom: var(--space-5) !important} 
.pb-6 { padding-bottom: var(--space-6) !important} 

.pr-0 { padding-right: var(--space-0) !important} 
.pr-1 { padding-right: var(--space-1) !important} 
.pr-2 { padding-right: var(--space-2) !important} 
.pr-3 { padding-right: var(--space-3) !important} 
.pr-4 { padding-right: var(--space-4) !important} 
.pr-5 { padding-right: var(--space-5) !important} 
.pr-6 { padding-right: var(--space-6) !important} 

.pl-0 { padding-left: var(--space-0) !important} 
.pl-1 { padding-left: var(--space-1) !important} 
.pl-2 { padding-left: var(--space-2) !important} 
.pl-3 { padding-left: var(--space-3) !important} 
.pl-4 { padding-left: var(--space-4) !important} 
.pl-5 { padding-left: var(--space-5) !important} 
.pl-6 { padding-left: var(--space-6) !important} 


/* ====== Padding ====== */
.gap-0 { gap: var(--space-0) !important} 
.gap-1 { gap: var(--space-1) !important} 
.gap-2 { gap: var(--space-2) !important} 
.gap-3 { gap: var(--space-3) !important} 
.gap-4 { gap: var(--space-4) !important} 
.gap-5 { gap: var(--space-5) !important} 
.gap-6 { gap: var(--space-6) !important} 


/* ====== Hide ====== */
.hideT { position: absolute; z-index: -1; display: inline-block; overflow: hidden; height: 1px; width: 1px; border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); word-break: initial; word-wrap: initial; } 
.hideT.close { display:none } 

/* ====== SNS ====== */
.sns_st { display:flex; align-items:center; gap:.25em } 
.sns_st > li > a { width:2.5em; height:2.5em; background:#f1f1f1; display:flex; align-items:center; justify-content:center; border-radius:50% } 
.sns_st > li > a .xi,
.sns_st > li > a img { opacity:.5 } 
.sns_st > li > a .xi { font-size:1.25em } 
.sns_st > li > a img { height:40% } 
.sns_st > li > a:hover { color:#fff; transition:.3s } 
.sns_st > li > a:hover .xi,
.sns_st > li > a:hover img { opacity:1 } 
.sns_st > li > a:hover img { filter:brightness(0) invert(1) } 
.sns_st > li > a:hover.fb { background:#395398 } 
.sns_st > li > a:hover.in { background:#a9309d } 
.sns_st > li > a:hover.yt { background:#f70000 } 
.sns_st > li > a:hover.tt { background:#111 } 
.sns_st > li > a:hover.nb { background:#29a139 } 

.ch .sns_st > li > a .xi,
.ch .sns_st > li > a img { opacity: 1; filter: brightness(0) invert(1); } 
.ch .sns_st > li > a.fb { background:#395398 } 
.ch .sns_st > li > a.in { background:#a9309d } 
.ch .sns_st > li > a.yt { background:#f70000 } 
.ch .sns_st > li > a.tt { background:#111 } 
.ch .sns_st > li > a.nb { background:#29a139 } 


/* ====== Board Class ====== */

/* ==board ico== */
.boardIco { font-family:xeicon; font-size:1.375em; width:1.5em; text-align:center } 
.boardIco.file { transform:rotate(45deg) } 
.boardIco.file:before { content:"\ea6a"; color:var(--color-point) } 
.boardIco.lock:before { content:"\e966"; color:#777 } 
.boardIco.notice:before { content:"\ea5a" } 
.boardIco.new:before { content:"\e9a9"; color:var(--color-point) } 
.boardIco.reply:before { content:"\e981"; color:#777 } 
.boardIco.prev:before { content:"\e945" } 
.boardIco.next:before { content:"\e942" } 

/* ==board paging== */
.board_pg { display:flex; align-items:center; justify-content:center; margin-top:4em; padding:0 1px 1px 0 } 
.board_pg button { width:2.5em; height:2.5em; border:1px solid #ddd; background:#fff; color:#666; margin:0 -1px -1px 0; position:relative } 
.board_pg button:hover,
.board_pg button:focus { z-index:1 } 
.board_pg button.on { background:#111; color:#fff; border-color:transparent; z-index:2; position:relative } 
.board_pg button.on:after { content:""; position:absolute; left:50%; transform:translateX(-50%); bottom:.5em; width:1em; height:1px; background:#fff } 
.board_pg button.btn.first { border-radius:.5em 0 0 .5em } 
.board_pg button.btn.last { border-radius:0 .5em .5em 0 } 
.board_pg button.btn .ico { font-size:1em } 
.board_pg button.btn.first .ico:before { content:"\ea47" } 
.board_pg button.btn.prev .ico:before { content:"\e93c" } 
.board_pg button.btn.next .ico:before { content:"\e93f" } 
.board_pg button.btn.last .ico:before { content:"\ea48" } 

/* ==board search== */
.board_search_wrap { margin-bottom: var(--space-5); display:flex; flex-wrap: wrap; align-items:end; gap: var(--gap-md);} 
.board_search_wrap .left { } 
.board_search_wrap .right { margin-left:auto; display:flex } 
.board_search_wrap .search_inner { display: flex; align-items: center;height: 5.8svh; margin: 0px auto; box-sizing: border-box; border: 1px solid #ddd; background-color: #fff; border-radius: 25px; transition: all 0.3s; } 
.board_search_wrap .search_inner .label_select { display: flex; align-items: center; text-indent: 1.2rem; width: 100% !important; height: 100%; text-align: left; vertical-align: middle; border: 0; font-weight: 500; color: #000; background-color: #fff; box-sizing: border-box; cursor: pointer; border-radius: 25px; } 
.board_search_wrap .search_inner .label_select .selectTit{ width: 5rem; margin-left: var(--space-4); border: none; font-size: var(--font-size-sm);}
.board_search_wrap .search_inner.st1 .label_select,
.board_search_wrap .search_inner.st1{border-radius: .5rem;}
.board_search_wrap .search_inner.st1 .label_select .selectTit{width: 7rem;}
.board_search_wrap .search_inner .input_search{ position:relative; display: flex; align-items: center;}
.board_search_wrap .search_inner .input_search input,
.board_search_wrap .search_inner .input_search button{ border: none; background: none;}
.board_search_wrap .search_inner .input_search input{ width: 15rem; padding-left: var(--space-1); box-sizing: border-box;}
.board_search_wrap .search_inner .input_search .search{ position: absolute; right: 7px; margin: 0; border: 0; height: 40px; width: 40px; display: flex; align-items: center; justify-content: center; color: #fff; background: var(--color-point2); border-radius: 50%;}
.board_search_wrap .search_inner .input_search .search .xi{ font-size: 1.2em;}



.board_search_wrap .total{ display: flex; align-items: baseline; font-size: var(--font-size-md-1); font-weight: 600; line-height: 1;}
.board_search_wrap .total .t1 { font-weight: 800; color: var(--color-point2); margin-left: var(--space-1);}

/* ==board list== */
.boardList_Wrap{ border-top: 2px solid var(--color-black-3);}
.boardList_Wrap .boardList{}
.boardList_Wrap .boardList > li{ border-bottom: 1px solid var(--gray-line);}
.boardList_Wrap .boardList > li > .inner{ display: flex; align-items: center; gap: var(--space-2); justify-content: space-between; padding: 2rem 0; transition: .3s ease;}
.boardList_Wrap .boardList > li.highlight > .inner{ background: var(--color-bg-1);}
.boardList_Wrap .boardList > li > .inner > .chk{ width: fit-content; margin-left: var(--space-4); text-align: center;}
.boardList_Wrap .boardList > li > .inner > .listN{ width: 6rem; margin: 0 auto; text-align: center;}
.boardList_Wrap .boardList > li > .inner > .listN > .num{ font-size: var(--font-size-base); font-weight: 600; color: var(--color-black-10); line-height: 1;}
.boardList_Wrap .boardList > li > .inner > .listN > .cate{ display: inline-flex;}
.boardList_Wrap .boardList > li > .inner > .listN > .cate > .tt{ font-weight: 600; color: #fff; font-size: var(--font-size-sm); display: flex; align-items: center; justify-content: center; width: 2.5rem; height: 2.5rem; box-sizing: border-box; border-radius: var(--radius-pill); background: var(--color-point2);}
.boardList_Wrap .boardList > li > .inner > .title{ flex: 1;}
.boardList_Wrap .boardList > li > .inner > .title > .tt{ font-size: var(--font-size-base); font-weight: 600; line-height: 1;}
.boardList_Wrap .boardList > li > .inner .etc{ display: flex; align-items: center; gap: var(--gap-md);}
.boardList_Wrap .boardList > li > .inner .date{ }
.boardList_Wrap .boardList > li > .inner .date > .tt{ font-size: var(--font-size-base); width: fit-content; color: var(--color-black-10); line-height: 1;}
.boardList_Wrap .boardList > li > .inner .view{ display: flex; min-width: 6rem; justify-content: center; align-items: center; gap: .35rem; line-height: 1; color: var(--color-black-10);}
.boardList_Wrap .boardList > li > .inner .view .num{ font-size: var(--font-size-base);}

.boardList_Wrap .boardList > li:not(.highlight) > .inner:hover{ background: var(--color-bg-3);}
.boardList_Wrap .boardList > li > .inner:hover > .title > .tt{ text-decoration: underline;}

/* ==board news== */
.news_table{ }
.news_table > li:first-of-type{ border-top: 2px solid var(--color-black);}
.news_table > li{ border-bottom: 1px solid var(--gray-line);}
.news_table > li > .inner{ display: flex; gap: var(--gap-xl); align-items: center; padding: 2rem 0; box-sizing: border-box; }
.news_table > li > .inner > .imgCon{ position:relative; border-radius: var(--radius-lg); overflow: hidden; width: 20svw; min-width: 20svw; height: 28svh;}
.news_table > li > .inner > .imgCon > img{ transition: .6s ease;}
.news_table > li > .inner > .infoCon{ flex: 1;}
.news_table > li > .inner > .infoCon > .tit{ font-size: var(--font-size-lg-1); font-weight: 600;}
.news_table > li > .inner > .infoCon > .txt{ font-size: var(--font-size-sm); line-height: var(--line-height-normal); color: var(--color-black-6); margin-top: var(--space-2);}
.news_table > li > .inner > .infoCon > .date{ font-size: var(--font-size-sm); line-height: 1; margin-top: var(--space-3); color: var(--color-black-9);}
.news_table > li > .inner > .infoCon > .news_tag{ margin-top: var(--space-3);}

.news_table > li > .inner:hover > .infoCon > .txt,
.news_table > li > .inner:hover > .infoCon > .tit{ text-decoration: underline;}
.news_table > li > .inner:hover > .imgCon > img{ transform: scale(1.05);}

/* ==board prev next== */
.postNavi{ margin-top: var(--space-5);}
.postNavi .post_st{}
.postNavi .post_st > li{ border-bottom: 1px solid var(--gray-line);}
.postNavi .post_st > li:first-of-type{ border-top: 2px solid var(--color-black);}
.postNavi .post_st .form_lab { display:flex; align-items:center } 
.postNavi .post_st .form_lab .lab_tit,
.postNavi .post_st .form_lab .lab_con { min-height:5rem; box-sizing:border-box; display:flex; align-items:center; } 
.postNavi .post_st .form_lab .lab_tit { position: relative; width: 8svw; margin-right: var(--space-4); gap:.5rem 0; padding-left:.25rem } 
.postNavi .post_st .form_lab .lab_tit .tit1{ font-size: var(--font-size-base); font-weight: 600; line-height: 1;}
.postNavi .post_st .form_lab .lab_tit:before { position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 1px; height: 18px; background: var(--gray-line); content: ''; } 
.postNavi .post_st .form_lab .lab_con { flex:1 1 0%; min-width:0; gap:.25em;} 
.postNavi .post_st .form_lab .lab_con > .board_aTit{ font-size: var(--font-size-sm); font-weight: 400; line-height: 1; color: var(--color-black-4)}
.postNavi .post_st .form_lab .lab_con:hover > .board_aTit{ text-decoration: underline;}

/* ==board view== */
.board_viewT{ margin-bottom: var(--space-4);}
.board_viewT .vTit{ color: var(--color-point); text-align: center; font-size: var(--font-size-xl); font-weight: 600;}
.board_viewT .info { display:flex; align-items:center; justify-content: center; gap: var(--gap-lg);} 
.board_viewT .info > li { position:relative; color: var(--color-black-10); margin-top: var(--space-2);} 
.board_viewT .info > li:not(:last-child):before { content:""; position:absolute; right:-.8rem; top:50%; width:1px; height:60%; transform:translateY(-50%); background:#ccc } 
.board_viewT .info > li .ico { font-size: var(--font-size-sm); margin-right:.25rem } 
.board_viewT .info > li.name .ico:before { content:"\e9f2" } 
.board_viewT .info > li.date .ico:before { content:"\e9a0" } 
.board_viewT .info > li.hit .ico:before { content:"\e950" } 
.board_viewT .info > li.tel .ico:before { content:"\e9d3" } 

.board_viewM{ padding: 3.5rem; box-sizing: border-box; background: var(--color-bg-2); border-radius: var(--radius-lg);}
.board_viewM > p{ font-size: var(--font-size-base); line-height: var(--line-height-normal);}
.board_viewM > img{ padding-bottom: var(--space-5);}

.board_viewF{ padding: 2.5rem 3.5rem; display: flex; align-items: start; gap: var(--space-4); box-sizing: border-box; background: var(--color-bg-2); border-radius: var(--radius-lg); margin-top: var(--space-3);}
.board_viewF .wrap_tit{}
.board_viewF .wrap_tit > .t1{ font-size: var(--font-size-md); line-height: 1; font-weight: 600;}
.board_viewF .wrap_con{}
.board_viewF .wrap_con .list{ display: flex; gap: .5rem 1.6rem;}
.board_viewF .wrap_con .list > li{ position:relative;}
.board_viewF .wrap_con .list > li:before{ position: absolute; top: 50%; transform: translateY(-50%); right: -.8rem; width: 1px; height: 10px; background: var(--color-point); content: '';}
.board_viewF .wrap_con .list > li:last-of-type:before{ display: none;}
.board_viewF .wrap_con .list > li > a{ display: flex; align-items: center; gap: .25rem;}
.board_viewF .wrap_con .list > li > a .tt{ font-size: var(--font-size-sm); color: var(--color-black-5); font-weight: 500; line-height: 1;}
.board_viewF .wrap_con .list > li > a .ico { } 
.board_viewF .wrap_con .list > li > a .ico:before { content:"\e998" } 
.board_viewF .wrap_con .list > li > a .down:before { content:"\eb7c"; color: var(--color-point);} 
.board_viewF .wrap_con .list > li > a:hover .tt{ text-decoration: underline;}

/* ====== Label Class ====== */
.form_chk .label_st input[type=checkbox],
.form_chk .label_st input[type=radio] { width: auto; height: auto; overflow: visible; margin-bottom: auto; } 

.label_st { display:flex; align-items:center; min-height:1em; cursor:pointer; line-height:1; box-sizing:border-box; font-weight:500 } 
.label_st .xi { font-size:1.5em; margin-right:.125em } 
.label_st .xi ~ span { padding:.125em 0; word-break:keep-all; flex:1 1 0%; min-width:0 } 
.label_st input:checked ~ .xi:before,
.label_st input:checked ~ span { color:var(--color-point) } 
.label_st.c1 input:checked ~ .xi:before { color:var(--color-point) } 
.label_st input[type=checkbox] ~ .xi:before { content:"\e98f" } 
.label_st input[type=checkbox]:checked ~ .xi:before { content:"\e92d" } 
.label_st input[type=radio] ~ .xi:before { content:"\e9c6" } 
.label_st input[type=radio]:checked ~ .xi:before { content:"\e9c7" } 
.label_st input[type=checkbox]{ display: none;}
.label_st input[type=radio] { width:0; height:0; overflow:hidden; position:absolute; z-index:-1 } 

.label_st { display:inline-flex; align-items:center; min-height:1em; gap:0 .25em; cursor:pointer; line-height:1; box-sizing:border-box; } 
.label_st input { zoom:1.5; margin-bottom:auto; cursor:pointer; } 
.label_st input ~ .tt { flex:1; font-weight:500; padding-left: 1.5em; } 
.label_st input:checked { accent-color:var(--color-point); } 
.label_st input:checked ~ .tt { color:var(--color-point); } 

.label_st.st1 { position:relative; text-align:center; justify-content:center; flex-direction:column; padding:.5em .125em; gap:.5em 0 } 
.label_st.st1 .bg { position:absolute; left:1px; top:1px; width:calc(100% - 2px); height:calc(100% - 2px); box-sizing:border-box; border-radius:.5em; border:1px solid transparent } 
.label_st.st1 .tt { display:block; width:100%; text-align:center; font-size:.813em; text-overflow:ellipsis; white-space:nowrap; overflow:hidden; font-weight:500 } 
.label_st.st1 .img { height:2.5em; box-sizing:border-box; padding:.5em } 
.label_st.st1 .img img { max-height:100% } 
.label_st.st1 input:checked ~ .bg { border-color:var(--color-point) } 
.label_st.st1 input:checked ~ .tt { color:var(--color-point) } 

.label_st.st2 { position:relative; height:3em; padding:.5em 1em; display:flex; align-items:center; justify-content:center; flex-direction:column } 
.label_st.st2 .bg { position:absolute; left:-1px; top:-1px; width:calc(100% + 1px); height:calc(100% + 1px); box-sizing:border-box; border:1px solid #ddd } 
.label_st.st2 .tt { font-weight:500 } 
.label_st.st2 input:checked ~ .bg { border-color:var(--color-point); z-index:1 } 
.label_st.st2 input:checked ~ .tt { color:var(--color-point); font-weight:700 } 


/* ====== Input Class ====== */
.input_st { border:1px solid #ddd; color:#111; padding:.5em .75em; box-sizing:border-box; height:3em; border-radius:.25em; font-weight:500 } 
.input_st[type=file] { background:none; border:1px solid #ddd; padding:0; width:100% } 
.input_st[readonly] { background:#f5f5f5 } 
select.input_st { padding-right:2.5em !important;} 
.label_select select.input_st{ min-width: 7rem;}

.input_st .xi { margin:0 .5em; margin-top:-.188em } 
.input_st .xi:first-child { margin-left:0 } 
.input_st .xi:last-child { margin-right:0 } 

.input_st.s1{ height:3.5em; padding:.5em 1.5em; font-size:1.125em; font-weight:500; font-weight:600}
.input_st.s1 .xi { margin-right: 0.5em; margin-top:0; }
.input_st.s1.wide{ width: 18svw;} 
.input_st.s2{ height:2.25em; padding:.25em .75em; font-size:.938em}
.input_st.s2 .xi{ font-size:1em}
.input_st.s3{ height:auto; font-size:.875em;}

.input_st.c1 { background:var(--color-point); border-color:var(--color-point); color:#fff } 
.input_st.c1.re { background:#fff; border-color:var(--color-point); color:var(--color-point) } 
.input_st.c2 { background:#999; border-color:#999; color:#fff } 
.input_st.c2.re { background:#fff; border-color:#ccc; color:#888 } 
.input_st.c3 { background:#333; border-color:#333; color:#fff } 
.input_st.c3.re { background:#fff; border-color:#333; color:#333 } 
.input_st.c4 { background:var(--color-point); border-color:var(--color-point); color:#fff } 
.input_st.c4.re { background:#fff; border-color:var(--color-point); color:var(--color-point) } 
.input_st.c5 { background:var(--color-black); border-color:var(--color-black); color:#fff } 
.input_st.c5.re { background:#fff; border-color:var(--color-black); color:var(--color-black) } 

/* ====== guide ====== */
.privacy_wrap{ margin-top: var(--space-6);}
.privacy_wrap > .label_st{ font-size: var(--font-size-base);}
.privacy_wrap .guideBox{ margin-top: var(--space-3); padding-top: var(--space-3); border-top: 1px solid var(--color-black);}
.guideBox{}
.guideBox .guide_inner{ padding: 3.5rem; box-sizing: border-box; border: 1px solid #ddd; border-radius: 1rem;}
.guideBox .guide_inner.scroll{ height: 35svh; overflow-y: scroll;}
.guideBox .guide_inner div{ margin-bottom: 2rem; padding-bottom: 2rem;}
.guideBox .guide_inner p{ font-size: var(--font-size-base); margin-bottom: .25rem;}
.guideBox .guide_inner p:last-of-type{ border-bottom: none;}
.guideBox .guide_inner .tit{ font-size: var(--font-size-lg-1); font-weight: 700; padding-bottom: 2rem; margin-bottom: 2rem; border-bottom: 2px solid #111;}
.guideBox .guide_inner strong{ font-size: var(--font-size-md-1); font-weight: 600; margin-top: var(--space-3); margin-bottom: var(--space-1);}

/* ====== nocon ====== */
.nocon { display:flex; justify-content:center; align-items:center; flex-direction:column; border:1px solid #ddd; height: 24svh; color:#666; margin-top:-1px } 
.nocon .xi { font-size: var(--font-size-xxxl); color:#ddd; margin-bottom:.125rem } 
.nocon .xi:not([class*=xi-]):before { content:"\ea15" } 