@charset "utf-8";
@font-face {
    font-family: 'MaruBuri';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot);
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot?#iefix) format("embedded-opentype"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff2) format("woff2"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff) format("woff"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.ttf) format("truetype");
}

@font-face {
    font-family: 'MaruBuriSemiBold';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-SemiBold.eot);
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-SemiBold.eot?#iefix) format("embedded-opentype"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-SemiBold.woff2) format("woff2"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-SemiBold.woff) format("woff"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-SemiBold.ttf) format("truetype");
}

@font-face {
    font-family: 'MaruBuriBold';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Bold.eot);
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Bold.eot?#iefix) format("embedded-opentype"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Bold.woff2) format("woff2"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Bold.woff) format("woff"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Bold.ttf) format("truetype");
}

@font-face {
    font-family: 'MaruBuriLight';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.eot);
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.eot?#iefix) format("embedded-opentype"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.woff2) format("woff2"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.woff) format("woff"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.ttf) format("truetype");
}

@font-face {
    font-family: 'MaruBuriExtraLight';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-ExtraLight.eot);
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-ExtraLight.eot?#iefix) format("embedded-opentype"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-ExtraLight.woff2) format("woff2"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-ExtraLight.woff) format("woff"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-ExtraLight.ttf) format("truetype");
}
/* 그림자를 OS별로 다르게 적용 */
@supports (-webkit-touch-callout: none) { /* iOS */
    .shadow-box {
        box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
    }
}
@supports not (-webkit-touch-callout: none) { /* Android */
    .shadow-box {
        box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
    }
}

/* 초기화 */
html {overflow-y:scroll;height:100%;min-width:320px;

    -webkit-font-smoothing: antialiased; /* iOS에서 부드럽게 */
    -moz-osx-font-smoothing: grayscale; /* macOS, iOS에서 그레이스케일로 */
    text-rendering: optimizeLegibility; /* 가독성 최적화 */
}
body {margin:0;padding:0;font-size:0.813em;;height:100%;font-family: MaruBuri,'Malgun Gothic','맑은 고딕',dotum,'돋움',sans-serif;}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img {margin:0;padding:0;border:0}
h1, h2, h3, h4, h5, h6 {font-size:1em;font-family:MaruBuriBold; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}
legend {position:absolute;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
input, button {margin:0;padding:0;font-size:1em}
button {cursor:pointer}
input[type=text], input[type=password], input[type=submit], input[type=image], button {font-size:1em;-webkit-appearance:none}
textarea, select,button {font-size:1em;font-family: MaruBuri,'Malgun Gothic','맑은 고딕',dotum,'돋움',sans-serif;}
textarea {border-radius:0;-webkit-appearance:none}
select {margin:0;background:none}
p {margin:0;padding:0;word-break:break-all}
hr {display:none}
pre {overflow-x:scroll;font-size:1.1em}
a {color:#000;text-decoration:none}
a:hover{color:#528eff}
b{font-family:MaruBuriBold ;}
ul,li,dl,dt,dd{padding:0;margin:0}
ul{list-style:none;}
textarea, .frm_input {border:1px solid #bdbdbd;background:#fff;color:#000;vertical-align:middle;border-radius:3px;padding:0 10px;height:40px;border-radius: 10px;}
   textarea {width:100%;height:200px;padding:10px}
   textarea:focus, .frm_input:focus{outline:none;border-bottom:2px solid #7acdf4}


html, body {
    height: 100vh; /* 뷰포트 높이 최소 100% */
    margin: 0;
    padding: 0;
}


#container_title{
    position: fixed;
    width: 100%;
    top: 0;
    color: #ffffff;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.596);
    font-weight: 700;
    height: 40px;
    padding: 13px 30px;
    background-color: #98a5ab;
    left: 170px;
    font-size: 1.3em;
    line-height: 1em;
    display: block !important;
    text-align: left;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.161);
    z-index: 3;
}

.content {
    transition: opacity 0.5s ease-in-out;
}

.hidden {
    opacity: 0;
}
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}



/* 각 섹션은 풀뷰 높이 + 스냅 앵커 */
.snap-section{
    /* min-height: 100vh; */
    scroll-snap-align: start;
    scroll-snap-stop: always;        /* 중간에 멈추지 않고 ‘탁’ */
    position: relative;
    margin: 0 !important;            /* 여백으로 보이는 문제 방지 */
    padding: 0 !important;
  }
  
  /* 섹션 내용 자체 패딩이 필요하면 내부에 .section-inner로 주세요 */
  .snap-section > .section-inner{ padding: 0px; }
  
  /* 지난 주간 섹션 안에서 가로 스크롤이 세로 스냅과 충돌하지 않게 */
  #sec-weekly .weekly-rail{ overscroll-behavior: contain; }
  
  /* 기본 로고는 문서 흐름에 두고, 스크롤 후 .logo-pin 상태에서만 고정/축소 */
.logotext{ transition: transform .18s ease, opacity .18s ease; }

/* 핀 상태: 좌상단 고정 + 살짝 축소 */
body.logo-pin .logotext{
  position: fixed;
  top: 10px; left: 12px;
  z-index: 10000;
  transform: scale(.9);
  opacity: .98;
  width: auto;
}

/* 이미지 로고 크기(핀 상태) */
body.logo-pin .logotext img{
  height: 90px;
  width: auto;
}
/* 이미지 로고 크기(핀 상태) */
body.logo-pin .logotext h3{
    display: none;
  }

/* 로고가 콘텐츠를 가리지 않게 첫 섹션만 상단 여백 */
.snap-section:first-of-type{ padding-top: 52px; }
@media (min-width:1024px){ .snap-section:first-of-type{ padding-top: 60px; } }
  
  /* 로고가 가리지 않게 첫 섹션만 살짝 내려주기 */
  .snap-section:first-of-type{ padding-top: 46px; }
  @media (min-width: 1024px){
    .snap-section:first-of-type{ padding-top: 56px; }
  }
  
  /* (안전장치) 브라우저/테마 기본 여백 제거 */
  h1, h2, h3, p{ margin-block-start: 0; margin-block-end: 0; }


/* 기존 CSS scroll-snap 전체 비활성 (JS 스냅으로 대체) */
body { scroll-snap-type: none !important; }
.snap-section { scroll-snap-align: none !important; scroll-snap-stop: normal !important; }

/* 섹션 기본 여백 제거 (섹션 높이가 제각각이어도 딱 붙게) */
.snap-section { margin:0 !important; padding:0 !important; position:relative; }

/* 로고 좌상단 고정 + 살짝 축소 (겹침 방지: 첫 섹션만 패딩) */
.logotext{ position:fixed; top:10px; left:12px; z-index:10000; }
.logotext img{  width:auto; }
.snap-section:first-of-type{ padding-top:52px; }      /* 필요시 44~60px 사이로 조정 */
@media (min-width:1024px){ .snap-section:first-of-type{ padding-top:60px; } }

/* ===== Weekly Coverflow (개선) ===== */
.weekly-rail-wrap{ margin:28px auto; padding:0px; }
.weekly-rail-head{ display:flex; align-items:baseline; gap:10px; margin:0 6px 12px; }
.weekly-rail-head h3{ font-size:2em; margin:0; }
.weekly-rail-head p{ color:#75808a; margin:0; font-size:.92em; }

.weekly-rail{
  display:flex;
  gap:14px;
  overflow-x:auto;
  /* 좌우 패딩은 JS에서 카드 폭 기준으로 동적 계산 */
  padding:8px 6px 14px;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
}
.weekly-rail.coverflow .weekly-card{
  flex:0 0 auto;
  scroll-snap-align:center;
  transform-origin:center center;
  transition: transform .22s ease, opacity .22s ease, filter .22s ease;
}

/* 기존 hover 확대(밝기 변화 포함) 무력화 */
.weekly-card:hover,
.latest-card:hover,
.bright-hover:hover {
  transform: none !important;
  filter: none !important;
}

/* 카드 내부 레이아웃 */
.weekly-card{
  position:relative;
}
.weekly-top{
  position:absolute; top:12px; left:12px; right:12px;
  display:flex; flex-direction:column; gap:4px;
  color:#111; text-shadow:none;
  z-index:2;
}
.weekly-top .weekly-title{
  font-weight:900; font-size:1.06em; letter-spacing:-0.2px;
}
.weekly-top .weekly-range{
  font-size:.92em; color:#22222283; opacity:.55;
}

/* 버튼영역만 어두운 레이어 */
.weekly-bottom{
  position:absolute; left:0; right:0; bottom:0;
  padding:14px 14px 16px;
  z-index:2;
}
.weekly-bottom::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(0deg, rgba(0,0,0,.48), rgba(0,0,0,0));
  z-index:-1;
  border-bottom-left-radius:inherit; border-bottom-right-radius:inherit;
}
.weekly-chips{ display:flex; gap:8px; flex-wrap:wrap; justify-content:center; }
.wa-chip{
  display:inline-block; padding:8px 12px;
  border-radius:999px; background:#32a9e1; color:#fff; text-decoration:none; font-weight:700;
  box-shadow:0 6px 16px rgba(50,169,225,.35);
}
.wa-chip--disabled{ background:#9aa6ac; pointer-events:none; opacity:.75; box-shadow:none; }

/* 드래그 중 커서 */
.weekly-rail.dragging { cursor: grabbing; }

/* === 스크롤 체인 방지 (휠 위로 돌릴 때 바디로 전달 안 되게) === */
.weekly-rail { overscroll-behavior: contain; }

/* === 타이틀 사이즈 업 & 진한색 유지 === */
.weekly-top .weekly-title{
  font-weight:900;
  font-size:1.22em; /* 1.06em -> 1.22em */
  letter-spacing:-0.2px;
  color:#111;
}
/* 버튼 영역 오버레이는 클릭 막지 않도록 */
.weekly-bottom::before { pointer-events: none; }

/* 버튼/칩은 항상 클릭 가능 */
.weekly-bottom, .weekly-chips, .wa-chip { pointer-events: auto;  z-index: 10; }

/* 터치에서 탭 우선 (iOS 사파리 포함) */
.wa-chip { touch-action: manipulation; /* tap→click 우선, zoom/drag 최소화 */ }

/* 혹시 테마에 hover 확대가 남아있다면 무력화(충돌 방지) */
.weekly-card:hover, .latest-card:hover, .bright-hover:hover{
  transform: none !important;
  filter: none !important;
}

/* === Weekly Coverflow: 안정화 & 반응형 === */

/* 스크롤 체인 방지(바디로 전달 차단) */
.weekly-rail { overscroll-behavior: contain; }

/* 카드 기본 폭을 뷰포트 기반으로 안정화 (기존 latest-card 톤 존중) */
.weekly-rail .weekly-card{ flex: 0 0 auto; }

.weekly-top .weekly-range{ font-size: .84em; opacity: .15; }
.weekly-chips .wa-chip{
  padding: 6px 10px;
  font-size: 1.2em;
  border-radius: 999px;
}

/* 모바일 (<= 599px): 82vw → ~27vw (약 1/3) */
@media (max-width: 599px){
  .weekly-rail{ gap: 10px; padding-bottom: 14px; }
  .weekly-rail .weekly-card{
    width: 40vw !important;     /* 82vw의 약 1/3 */
    max-width: 180px !important;
    height: 30vh !important;    /* 너무 작아지지 않도록 vh 기준 유지 */
    max-height: 190px;
  }
}

/* 태블릿 (600px ~ 1023px): 68vw → ~23vw (약 1/3) */
@media (min-width: 600px) and (max-width: 1023px){
  .weekly-rail{ gap: 12px; }
  .weekly-rail .weekly-card{
    width: 27vw !important;     /* 68vw의 약 1/3 */
    max-width: 180px !important;
    height: 26vh !important;
    max-height: 220px;
  }
}

/* 데스크탑 (>= 1024px): 320px → ~106px (약 1/3) */
@media (min-width: 1024px){
  .weekly-rail{ gap: 12px; }
  .weekly-rail .weekly-card{
    width: 160px !important;    /* 320px의 약 1/3 (라운딩) */
    height: 220px !important;   /* 세로는 가독성 고려해 살짝 여유 */
    max-height: 240px;
  }
}

/* 초대형 (>= 1440px): 과대확대 방지 */
@media (min-width: 1440px){
  .weekly-rail .weekly-card{
    width: 166px !important;
    height: 230px !important;
    max-height: 250px;
  }
}  

/* 타이틀 상단/사이즈 & 진한 색 */
.weekly-top .weekly-title{
  font-weight: 900;
  font-size: 1.28em; /* ↑ 키움 */
  letter-spacing: -0.2px;
  color: #111;
}
.weekly-top .weekly-range{
  font-size: .94em;
  color: #22222276;
  opacity: .95;
}

/* 버튼영역만 어두운 오버레이(기존 유지) */
.weekly-bottom::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(0deg, rgba(0,0,0,.48), rgba(0,0,0,0));
  z-index:-1;
  border-bottom-left-radius:inherit; border-bottom-right-radius:inherit;
}

/* 기존 hover 확대/필터 효과 전부 무력화(커버플로우만 적용) */
.weekly-card:hover,
.latest-card:hover,
.bright-hover:hover{
  transform: none !important;
  filter: none !important;
}

/* 커버플로우 트랜지션(부드럽게) */
.weekly-rail.coverflow .weekly-card{
  scroll-snap-align: center;
  transform-origin: center center;
  transition: transform .22s ease, opacity .22s ease;
}

/* 드래그 중 커서 표시 */
.weekly-rail.dragging{ cursor: grabbing; }

/* === Apple-style Glass Buttons === */
/* 공통(칩/버튼) */
.wa-chip,
.wa-btn{
  position: relative;
  padding: 8px 14px;
  border-radius: 999px;
  color: #fff;
  text-decoration: none;
  font-weight: 700;

  /* glass layer */
  background: rgba(255,255,255,0.14);
  border: 1px solid rgba(255,255,255,0.28);
  backdrop-filter: saturate(180%) blur(18px);
  -webkit-backdrop-filter: saturate(180%) blur(18px);

  /* subtle lighting */
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.28),
    0 8px 20px rgba(0,0,0,0.15);
}

/* hover/active (PC 전용 느낌만 가볍게) */
@media (hover:hover){
  .wa-chip:hover,
  .wa-btn:hover{
    background: rgba(255,255,255,0.18);
    border-color: rgba(255,255,255,0.35);
  }
}
.wa-chip:active,
.wa-btn:active{ transform: translateY(1px); }

/* disabled */
.wa-chip--disabled,
.wa-btn.wa-btn--disabled{
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.16);
  pointer-events: none;
  opacity: .7;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.14);
}

/* 글라스 대비 확보: 버튼 텍스트 선명도 보강 */
.wa-chip, .wa-btn{
  text-shadow: 0 1px 1px rgba(0,0,0,0.35);
}

/* 배경이 어두운 weekly 하단 오버레이 위에서 간격 조금만 줄임 */
.weekly-chips{ gap: 6px; }


#writeWrap,#listWrap{
    padding: 60px 20px 20px;
    padding-left:200px !important;
    min-height: 100vh;
    height: calc(var(--vh, 1vh) * 100); /* 모바일 대응 */
    width: 100%;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background-color: #d7dcdf;
    }

#hd{
    display: block !important;
    width: 170px !important; /* 사이드바 너비 */
    background-color: #ffffff;
    color: rgb(0, 0, 0);
    padding: 0px;
    height: 100vh; /* 사이드바 높이를 전체 화면으로 고정 */
    border-right: 1px solid #efefef;
    position: fixed; /* 고정된 사이드바 */
    top: 0;
    left: 0;
    box-shadow: 0 8px 7px rgba(0, 0, 0, 0.126);
    border-right: 1px solid #dfdfdf;
}

#logo a img {
    width: 140px;
}

#hd ul li{
    padding: 10px 30px;
    border-bottom: 1px solid #e1e1e161;
    
}


/* 왼쪽 메뉴 */
/* .sidebar {

} */

.sidebar ul {
    list-style: none;
}
.sidebar ul li {
    padding: 10px;
    cursor: pointer;
    transition: background 0.3s;
}
.sidebar ul li:hover {
    background: #555;
}
/* 오른쪽 콘텐츠 */
.contentWrap{
    flex: 1; /* 나머지 공간을 차지 */
    margin-left: 200px; /* 사이드바 너비만큼 여백 */
    padding: 15px;
    background-color: #efefef;
    
}
.content {
    height: 100vh;
    background-color: #fff;
    border: 1px solid #ebebeb;
    border-radius: 10px; 
    overflow-y: auto;
    transition: opacity 0.3s ease-in-out;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* ✅ 살짝 그림자 추가 (입체감) */

}
.loading {
    opacity: 0.5;
}

/* Firefox에서 스크롤바 없애기 */
html, body {
    scrollbar-width: none;
}

/* Edge, IE에서 스크롤바 숨기기 */
body::-webkit-scrollbar {
    display: none;
}

*, :after, :before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
 *{transition: all 0.2s ease-in;}



.conTop{
    position: relative;
    height: 50vh;;
}
.conWrap{
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background-color: #ecebf7;
}


.conBg {
    position: relative;
    width: 100%;
    height: 50vh;
    overflow: hidden;
    /* background-color: #fdfffe; */
}


.conBg .logo{
    position: fixed;
    top: 9px;
    right: 10px;
    width: 300px;
    z-index: 100;
}

.conBg .logotext{
    position: absolute;
    left: 50%;
    top:45%;
    height: 100px;
    transform: translateX(-50%) translateY(-50%);
    width: 500px;
    z-index: 0;
    overflow: visible;
    text-align: center;
    z-index: 10;
}

.conBg .logotext img{
    width: 100%;
}

.conBg .introText,.conBg h3{
    margin: 15px 0;
    font-size: 1.2em;
    text-align: center;
    z-index: 10;
    color: #3f416c92;
}

 .lt_bn{
    display: none;;
 }
 .idx_wrap{
    width: 100%;
    padding:0 auto;
    display: grid;
    place-items: center;
    height: 50vh; /* 전체 화면 높이 */
    position: relative; 
 }

 .idx_con {
    /* display: flex; */
    /* justify-content: center; 가로 중앙 정렬 */
    /* align-items: center; 세로 중앙 정렬 */
    gap: 35px;
    display: grid;
    grid-template-columns: repeat(3, minmax(180px, 1fr));
    position: relative;
    /* border-bottom: 1px solid #fbfdff1a; */
    text-align: center;
    /* place-items: center; */
    display: grid;
    justify-content: center center; /* ✅ 중앙 정렬 */
    align-items: center; /* ✅ 세로 중앙 정렬 */
    padding: 0 20px; /* ✅ 좌우 패딩 추가 */
    z-index: 10;
}
.bgblur{
    position: absolute;
    width: 100%;
    height: 100%;
    filter: blur(1px);
    opacity: 60%;
    background: url('https://img.freepik.com/free-vector/fresh-clean-water-wave-with-bubbles-drops_107791-1302.jpg');
    background-size: cover;
    background-position: 30% 40%;
    z-index: 1;
}
/* 📖 북커버 효과 (반투명 레이어) */
.latest-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.01); /* 투명한 흰색 */
    backdrop-filter: blur(0px); /* 살짝 블러 */
    transition: opacity 0.3s ease-in-out;
    z-index: 10;
}
/* 📌 호버 시 밝기 조절 (기본: 0.8) */
.latest-card:hover {
    --hover-brightness: 0.8;
}
/* 📌 밝아지는 효과 옵션 (이걸 적용하면 밝아짐) */
.latest-card.bright-hover:hover {
    --hover-brightness: 1.2;
}
.latest-overlay {
    position: absolute;
    bottom: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.22);
    padding: 15px;
    text-align: center;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    transition: transform 0.4s ease-out, filter 0.4s ease-in-out;
}o
.idx_con > div {
    display: grid;
    width: 100%;
    height: auto;
    overflow: visible; /* 내부 요소가 넘치지 않도록 설정 */
    place-items: center;

}
.idx_con div.con_1{
    left:0;
}
.latest-card {
    transform: rotateX(0deg) rotateY(0deg);
    transition: transform 0.1s ease-out;
}

/* 📌 마우스 방향에 따라 회전 */
.idx_con:hover .latest-card {
    transition: none;
}


.latest-card {
    position: relative;
    display: block;
    width: 250px;
    height: 330px;
    background-size: cover;
    background-position: center;
    border-radius: 12px;
    overflow: hidden;
    filter: brightness(var(--hover-brightness, 1.005));
    will-change: transform, filter;
    perspective: 1000px;
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.191);
    /* 📌 transition을 한 줄로 정리 */
    transition: transform 0.7s ease-out, filter 0.7s ease-in-out, width 0.7s ease-in-out, height 0.7s ease-in-out;
    transform: scale(1); /* 🔥 크기 변경 방식 */
    transform-origin: center center; /* ✅ 위쪽을 기준으로 확대 */
}
/* 📌 호버 시 부드럽게 확대 */
.latest-card:hover {
    transform: scale(3); /* 🔥 크기 변경 방식 */

    transition: transform 0.7s ease-out, filter 0.7s ease-in-out, width 0.7s ease-in-out, height 0.7s ease-in-out;
    z-index: 10; /* 🔥 다른 요소 위에 올라가도록 */
    --hover-brightness: 1.05; /* 🔥 0.001 → 1.05로 변경 (어둡게 하는 게 아니라 밝게!) */
    box-shadow: 0px 50px 30px rgba(0, 0, 0, 0.191);
}

/* 📌 빛 반사 효과 */
.latest-card::after {
    content: "";
    position: absolute;
    top: var(--light-y, 50%);
    left: var(--light-x, 50%);
    width: var(--light-size, 120px);
    height: var(--light-size, 120px);
    background: radial-gradient(circle, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 70%);
    opacity: 0.1;
    border-radius: 50%;
    transform: translate(-50%, -50%) scale(1);
    transition: opacity 0.4s ease-out, transform 0.3s ease-out;
    filter: blur(50px);
    pointer-events: none;
}
.latest-card.active-glow::after {
    opacity: 1; /* ✅ 클래스 추가 시 빛 반사 활성화 */
    transform: translate(-50%, -50%) scale(1.01);
}

/* 📌 호버 시 빛 반사 강조 */
.latest-card:hover::after {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.005);
}


.latest-card p{
    font-size: 1.2em;
    color: #24242665;
}





/* 팝업레이어 */
#hd_pop {z-index:1000;position:relative;margin:0 auto;width:100%;height:0}
#hd_pop h2 {position:absolute;font-size:0;text-indent:-9999em;line-height:0;overflow:hidden}
.hd_pops {position:absolute;border:1px solid #e9e9e9;background:#fff;}
.hd_pops img{max-width:100%;height:auto}
.hd_pops_con {}
.hd_pops_footer {padding:10px 0;background:#000;color:#fff;text-align:right}
.hd_pops_footer button {margin-right:5px;padding:5px 10px;border:0;background:#393939;color:#fff}

/* 상단 레이아웃 */
#hd{position:absolute;top:0;left:0;width:100%;z-index:99;}
#hd:after {display:block;visibility:hidden;clear:both;content:""}
#hd:before{content:'';position:absolute;bottom:0;left:0;background:#fff;background:rgba(255,255,255,0.5);width:100%;height:1px}
#hd_h1 {position:absolute;font-size:0;text-indent:-9999em;line-height:0;overflow:hidden}
#hd_wrapper{margin:0 auto;max-width:1200px;}

#logo {float:left;padding:10px}
#logo img{vertical-align:middle;max-height:100%;width:auto}

#gnb_empty {padding:20px 0;color:#fff;text-align:center;line-height:2em}
#gnb_empty a {display:inline;text-decoration:underline}

@media (max-width: 969px){

    #m_hd{padding:10px;}
    #m_hd #gnb_open{position:absolute;top:0;right:0;background:none;border:0;width:50px;height:50px;color:#fff;font-size:20px}
    .m_side_menu{display:none;position:fixed;top:0;left:0;background:#363636;width:100%;height:100%;overflow-y:auto;z-index:999}
    .m_side_menu .btn_close {position:absolute;top:0;right:0;margin:0;height:50px;width:50px;border:0;background:none;color:#6b6b6b;font-size:16px}  

    #tnb{background:#2b2b2b;padding:20px}
    #tnb ul:after {display:block;visibility:hidden;clear:both;content:""}
    #tnb li{float:left;}
    #tnb li a{color:#c7c2bc;display:block}
    #tnb .tnb_sns{width:40px;line-height:40px;border:1px solid #565656;border-radius:50%;display:inline-block;margin-top:20px;text-align:center;margin-right:10px}
    #tnb .right{padding:0 10px;border-left:1px solid #434345}
    #tnb .clear{clear:both;border-left:0;padding-left:0}

    #gnb{padding:20px} 
    #gnb .gnb_bg{position:absolute;top:0;left:0;width:100%;height:100%;background:#fff;background:rgba(255,255,255,0.5)}
    #gnb .gnb_wr{position:absolute;top:0;left:0;width:300px;height:100%;background:#1c1827;}
    #gnb .gnb_wr:after {display:block;visibility:hidden;clear:both;content:""}
    .gnb_login{background:#211c32;height:50px;padding:10px;
    -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.8);
    -moz-box-shadow: 0 0 10px rgba(0,0,0,0.8);
    box-shadow: 0 0 10px rgba(0,0,0,0.8);}
    .gnb_1dli{position:relative;line-height:50px;}
    .gnb_2dul {display:none;padding:10px 20px;line-height:40px;}
    .gnb_1da {color:#fff;font-weight:bold;font-size:1.154em}
    .gnb_1dli button{position:absolute;top:0;right:0;border:0;width:40px;height:50px;overflow:hidden;border:0;background:url(../img/mobile/gnb_bg.png) no-repeat right 50%;text-indent:-9999px;outline:none}
    .gnb_1dli button.btn_gnb_cl{background:url(../img/mobile/gnb_bg2.png) no-repeat right 50% }
    .gnb_2dul a{color:#aaa}

    #hd_sch{margin: 20px 20px 0;position:relative}
    #hd_sch #sch_stx {;border:0;width:100%;height:50px;padding:0 50px;color:#fff;background:#2b2b2b;border-radius:5px}
    #hd_sch #sch_stx:focus{outline:0;border-bottom:2px solid #7acdf4}
    #hd_sch #sch_submit{background:none;border:0;position:absolute;top:0;left:0;color:#fff;height:50px;width:50px;font-size:18px;}
    
    .pc_view{display:none !important}
}

@media (min-width: 970px){

    #tnb{background:#363636;line-height:40px}
    #tnb ul {max-width:1200px;margin:0 auto}
    #tnb ul:after {display:block;visibility:hidden;clear:both;content:""}
    #tnb li{float:left}
    #tnb .right{float:right}
    #tnb li a{color:#c7c2bc;display:block;padding: 0 13px}
    #tnb li a:hover{background:#2a2a2a}

    #gnb {display:block !important;float:right;}
    #gnb:after {display:block;visibility:hidden;clear:both;content:""}
    .gnb_wr{max-width:1200px;padding-right:200px;margin:0 auto;position:relative;}
    #gnb a {display:block}
    .gnb_1dli{position:relative;float:left;line-height:40px;padding:0 15px}
    .gnb_1dli:after {display:block;visibility:hidden;clear:both;content:""}
    .gnb_1dli button{float:left;border:0;width:20px;height:80px;overflow:hidden;border:0;background:url(../img/mobile/gnb_bg2.png) no-repeat 50% 50%;background-size:10px ;text-indent:-9999px}
    .gnb_1da {float:left;padding:0;color:#fff;line-height:80px;font-size:1.154em;font-weight:bold}
    .gnb_2dul {display:none;position:absolute;top:80px;left:0;background:#32a9e1;min-width:100%;z-index:99}
    .gnb_1dli:hover .gnb_2dul {display:block}
    .gnb_1dli:hover{background:#7acdf4;font-weight:bold}
    .gnb_1dli:hover a{color:#fff;}
    .gnb_2da {color:#a8a6b0;padding:0 15px;font-weight:normal;white-space: nowrap;}
    .gnb_2da:hover{background:#7acdf4}

    .hd_sch_btn{float:right;width:50px;border:0;background:0;height:80px;color:#fff;font-size:18px;}
    #hd_sch{z-index:10;display:none;position:absolute;top:40px;left:0;background:#4a4a4a;width:100%;height:80px}
    #hd_sch .sch_wr{margin:0 auto;max-width:1200px;position:relative;}
    #hd_sch #sch_stx {background:none;border:0;width:100%;height:80px;padding:0 50px;color:#fff;font-size:1.385em}
    #hd_sch #sch_stx:focus{outline:0;border-bottom:2px solid #7acdf4}
    #hd_sch #sch_submit{background:none;border:0;position:absolute;top:0;left:0;color:#fff;height:80px;width:50px;font-size:18px;}
    #hd_sch .btn_close{background:none;border:0;position:absolute;top:0;right:0;width:50px;height:80px;color:#aaa;font-size:18px}
    #hd_sch .btn_close:hover{color:#fff}

    .m_view{display:none !important}
    .m_side_menu{display:block !important}
}

/* 텍스트 크기 조절 */
#text_size {margin:0 0 10px;text-align:center;display:inline-block;padding:7px 20px;background:#e6e7e9;border-radius:25px;height:48px;}
#text_size button {margin:0 5px;border:0;background:none;height:35px;width:35px;border-radius:50%}
#text_size button.select{background:#fff;border-bottom:1px solid #bbb;
-webkit-box-shadow:0 0 5px  rgba(100,80,100,0.2);
-moz-box-shadow:0 0 5px  rgba(100,100,100,0.2);
box-shadow: 0 0 5px  rgba(100,100,100,0.2);}
.ts_up {font-size:1.167em !important}
.ts_up2 {font-size:1.3em !important}

/* 중간 레이아웃 */
#wrapper {}
#wrapper:after {display:block;visibility:hidden;clear:both;content:""}
#container>p{display:none;}

.idx_con{margin: 0 auto;max-width:1200px;text-align:center;}
.idx_con ul:after {display:block;visibility:hidden;clear:both;content:""}
.idx_con li{float:left;width:33.333%;padding:7% 20px}
.idx_con li h2 i{font-size:25px;background:#a8a8a8;color:#fff;width:70px;line-height:70px;border-radius:50px;margin-bottom:5px}
.idx_con li:hover i{background:#7acdf4}
.idx_con li h2 span{display:block;font-size:1.385em }
.idx_con li:hover span{color:#7acdf4}
.idx_con li p{margin:20px 0;color:#494949;font-size:1.154em   }
.idx_con li a{display:inline-block;color:#a9a9a9;text-decoration:underline}

.idx_lt{background:#f6f6f6;padding:80px 0}
.idx_lt_wr{margin:0 auto;max-width:1200px}
.idx_lt_wr:after {display:block;visibility:hidden;clear:both;content:""}
.idx_lt_wr .lt{float:left;width:33.333%}

 @media (max-width: 969px){
    .idx_con li h2 i{width:50px;line-height:50px;font-size:20px;}
    .idx_lt_wr .lt{width:100%}
    .idx_lt{padding:30px 0}
 }

/* 하단 레이아웃 */
#ft {background:#363636;}
.ft_wr{margin:0 auto;max-width:1200px;padding:80px 10px}
.ft_wr:after {display:block;visibility:hidden;clear:both;content:""}
#ft h1 {width:0;height:0;font-size:0;line-height:0;overflow:hidden}
#ft p {margin:0;padding:10px 0;line-height:1.8em}

#ft_copy {float:left;width:50%;line-height:2em;color:#777}
#ft_copy #ft_company {}
#ft_copy #ft_company a {display:inline-block;padding:0 10px;line-height:1em;border-left:1px solid #575757;color:#fff;font-weight:bold}
#ft_copy #ft_company a:first-child{border:0;padding-left:0}
#ft_copy b {color:inherit}
#ft_copy a {color:inherit;text-decoration:none}

#ft_contact{float:right;width:50%;color:#fff;}
#ft_contact ul:after {display:block;visibility:hidden;clear:both;content:""}
#ft_contact li{float:left;width:33.3333%;text-align:center;padding:0 10px}
#ft_contact li i{display:inline-block;border:1px solid #555;color:#cbcaca;width:50px;line-height:50px;border-radius:50%;text-align:center}
#ft_contact li:hover i{font-size:15px;
-webkit-box-shadow:0 0 15px  rgba(255,255,255,0.1);
-moz-box-shadow: 0 0 15px  rgba(255,255,255,0.1);
box-shadow: 0 0 15px  rgba(255,255,255,0.1);}
#ft_contact li span {display:block;margin-top:10px}
#ft_contact li a{color:#fff}
#ft_contact li a:hover{color:#7acdf4}

#top_btn {position:fixed;bottom:10px;right:10px;width:40px;height:40px;background:#4a4a4a;border-radius:30px;color:#fff;text-align:center;font-size:15px;z-index:99;border:0}
#top_btn:hover{background:#7acdf4}
#device_change {display:block;line-height:40px;border:1px solid #3a3a3a;border-radius:2em;color:#777;font-size:1em;text-decoration:none;text-align:center}

 @media (max-width: 969px){
    .ft_wr{padding:30px 20px 20px}
    #ft_copy{width:100%;}
    #ft_contact{width:100%;margin-top:20px}
    #ft_contact li{width:100%;padding:10px 0;text-align:left}
    #ft_contact li span{display:inline-block}
    #ft_contact li i{margin-right:10px}

}

/* 체크박스 */
.all_chk,.bo_chk {position:relative}
.all_chk label .chk_img, .bo_chk label .chk_img{margin-top:2px;display:inline-block;height:15px;text-indent:-9999px;width:15px;background:#fff;border:1px solid #aab3c1;border-radius:3px;;vertical-align:top;
-webkit-box-shadow:inset 5px 5px 3px #f0f0f3;
-moz-box-shadow:inset 5px 5px 3px #f0f0f3;
box-shadow:inset 5px 5px 3px #f0f0f3}

.bo_chk label.click_on .chk_img, .all_chk label.click_on .chk_img{background:url('../img/input_chk.png') 50% 50% no-repeat #7acdf4;border-color:#7acdf4;
-webkit-box-shadow:none;
-moz-box-shadow:none;
box-shadow:none}


.bo_chk input, .all_chk input {position:absolute;top:0;left:0;width:1px;height:1px;opacity:0;outline:0;z-index:9}

/* 게시물 선택복사 선택이동 */
#copymove {}
.copymove_current {float:right;color:#ff3061}
.copymove_currentbg {background:#f4f4f4}
#copymove .tbl_head01{margin-top:10px}
#copymove td{background:#fff}
#copymove .win_btn{margin:10px}

/* 화면낭독기 사용자용 */
#hd_login_msg {position:absolute;top:0;left:0;width:0;height:0;overflow:hidden}
.msg_sound_only, .sound_only {display:inline-block;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;width:1px !important;height:1px !important;font-size:0 !important;line-height:0 !important;overflow:hidden}

/* 본문 바로가기 */
.to_content a {z-index:100000;position:absolute;top:0;left:0;width:0;height:0;font-size:0;line-height:0;overflow:hidden}

/* 이미지 등비율 리사이징 */
.img_fix {width:100%;height:auto}

/* 캡챠 자동등록(입력)방지 기본 -pc */
#captcha {position:relative}
#captcha legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden;}
#captcha #captcha_img {height:40px;border:1px solid #898989;;vertical-align:top;padding:0;margin:0}
#captcha #captcha_mp3 {margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;width:40px;height:40px;background:url('../../../img/captcha2.png') no-repeat;text-indent:-999px;;border-radius:3px}
#captcha #captcha_reload {margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat  0 -40px;text-indent:-999px;border-radius:3px}
#captcha #captcha_key {margin:0 0 0 3px;padding:0 5px;width:90px;height:40px;border:1px solid #ccc;background:#fff;font-size:1.333em;font-weight:bold;text-align:center;border-radius:3px;vertical-align:top}
#captcha #captcha_info {display:block;margin:3px 0 5px ;font-size:0.95em;letter-spacing:-0.1em}

/* 캡챠 자동등록(입력)방지 기본 - mobile */
#captcha.m_captcha audio {display:block;margin:0 0 5px}

/* 구글리캡챠 크기 조정 scale */
#captcha.recaptcha{width:213px;height:55px;overflow:hidden}
#rc-imageselect, .g-recaptcha {transform:scale(0.7);-webkit-transform:scale(0.7);transform-origin:0 0;-webkit-transform-origin:0 0;}

/* ckeditor 태그 기본값 */
#bo_v_con ul{display: block;list-style-type: disc;margin-top: 1em;margin-bottom: 1em;margin-left: 0;margin-right: 0;padding-left: 40px;}
#bo_v_con ol{display: block;list-style-type: decimal;margin-top: 1em;margin-bottom: 1em;margin-left: 0;margin-right: 0;padding-left: 40px;}
#bo_v_con li{display: list-item;}

/*단축키일람 */
.cke_sc{text-align:right}
.btn_cke_sc{background:#333;color:#fff;padding:5px;border:none}
.cke_sc_def {margin:0 0 5px;padding:10px;border:1px solid #ccc;background:#f7f7f7;text-align:center}
.cke_sc_def dl{margin:0 0 5px;text-align:left;zoom:1}
.cke_sc_def dl:after {display:block;visibility:hidden;clear:both;content:""}
.cke_sc_def dt, .cke_sc_def dd {float:left;margin:0;padding:5px 0;border-bottom:1px solid #e9e9e9}
.cke_sc_def dt {width:50%;font-weight:bold}
.cke_sc_def dd {width:50%}
.btn_cke_sc_close{background:#333;padding:5px;border:none;color:#fff}

/* 버튼 */
.btn{display:inline-block;padding:0 5px;height:40px;line-height:40px;border-radius:33px;padding: 0 15px}
a.btn01 {display:inline-block;background:#eee;color:#444;text-decoration:none;vertical-align:middle}
a.btn01:focus, a.btn01:hover {text-decoration:none}
button.btn01 {display:inline-block;margin:0;padding:7px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none}
a.btn02 {display:inline-block;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none;vertical-align:middle}
a.btn02:focus, .btn02:hover {text-decoration:none}
button.btn02 {display:inline-block;margin:0;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none}
.btn_confirm {text-align:center} /* 서식단계 진행 */
.btn_submit {border:0;background:#32a9e1;color:#fff;cursor:pointer}
.btn_submit:hover{background:#7acdf4}
a.btn_cancel {display:inline-block;background:#ddd;color:#444;text-decoration:none;vertical-align:middle}
button.btn_cancel {display:inline-block;;border:1px solid #ccc;background:#fafafa;color:#000;vertical-align:top;text-decoration:none}
a.btn_frmline, button.btn_frmline {display:inline-block;padding:0 5px;;border:0;background:#333;color:#fff;letter-spacing:-0.1em;text-decoration:none;vertical-align:top} /* 우편번호검색버튼 등 */
button.btn_frmline {font-size:1em}

/* 게시판용 버튼 */
a.btn_b01,.btn_b01 {display:inline-block;background:#eee;border:0;color:#6b6b6b;text-decoration:none;vertical-align:middle}
.btn_b01:hover, .btn_b01:hover {background:#f8f8f8;color:#000}
a.btn_b02 ,.btn_b02{display:inline-block;background:#7acdf4;color:#fff;text-decoration:none;vertical-align:middle;border:0}
a.btn_b02:hover, .btn_b02:hover {background:#7acdf4}
a.btn_b03, .btn_b03 {display:inline-block;line-height:28px;border:1px solid #ed6478;color:#ed6478;background:none;text-decoration:none;vertical-align:middle}
a.btn_b03:hover, .btn_b03:hover {}
a.btn_admin {display:inline-block;background:#7acdf4;color:#fff;font-size:16px;text-decoration:none;vertical-align:middle;border-radius:30px;line-height:40px;width:40px;text-align:center;} /* 관리자 전용 버튼 */
a.btn_admin:focus, a.btn_admin:hover  {transform: rotate( -45deg );color:#fff;}

/* 기본테이블 */
.tbl_wrap {margin:0 10px 10px}
.tbl_wrap table {width:100%;border-collapse:collapse;border-spacing:0}
.tbl_wrap caption {padding:10px 0;color:#4b8b99;font-weight:bold;text-align:left}

.tbl_head01 {}
.tbl_head01 caption {padding:0 0 10px;color:#777;text-align:left}
.tbl_head01 thead th {padding:12px 0;border:1px solid #cacaca;background:#d9d9da;color:#383838;font-size:0.95em;text-align:center;letter-spacing:-0.1em}
.tbl_head01 thead a {color:#383838}
.tbl_head01 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head01 tfoot th {border-top:1px solid #666;border-bottom:1px solid #666;background:#484848;color:#fff}
.tbl_head01 tfoot td {border-color:#e3e3e5;background:#484848;color:#fff;font-weight:bold;text-align:center}
.tbl_head01 tbody th {padding:5px 0;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9}
.tbl_head01 td {padding:5px;border:1px solid #e3e3e5;line-height:1.5em;word-break:break-all}

.tbl_head02 {}
.tbl_head02 caption {padding:0 0 10px;color:#777;text-align:left}
.tbl_head02 thead th {padding:5px 0;border-top:1px solid #d1dee2;border-bottom:1px solid #d1dee2;background:#e5ecef;color:#383838;font-size:0.95em;text-align:center;letter-spacing:-0.1em}
.tbl_head02 thead a {color:#383838}
.tbl_head02 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head02 tfoot th {border-top:1px solid #666;border-bottom:1px solid #666;background:#484848;color:#fff}
.tbl_head02 tfoot td {background:#484848;color:#fff;font-weight:bold;text-align:center}
.tbl_head02 tbody th {padding:5px 0;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9}
.tbl_head02 td {padding:5px 3px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;line-height:1.4em;word-break:break-all}

/* 기본리스트 */
.list_01{padding:0 10px;}
.list_01 li{background:#fff;border-radius:3px;padding:10px 0px;border-bottom:1px solid #eee;}

/* 기본폼 */
.form_01{margin:10px}
.form_01 .write_div{margin:5px 0;position:relative}
.form_01 li{margin:5px 0;position:relative;list-style:none}
 
.frm_input {height:40px;}
.full_input{width:100%} 
.form_01 .frm_file {display:block;margin-bottom:5px;width:100%}
.form_01 select{height:40px;border-radius:3px;background-color:#fff}
.form_01 .frm_info{font-size:0.92em;color:#4162ff;text-align:left;margin:3px 0 10px;display:block;line-height:1.3em}

/* 자료 없는 목록 */
.empty_table {padding:100px 0 !important;color:#777;text-align:center}
.empty_list {padding:20px 0 !important;text-align:center}

/* 필수입력 */
.required, textarea.required {background-image:url('../img/require.png')  !important;background-repeat:no-repeat   !important;background-position:right top  !important;}

/* 테이블 항목별 정의 */
.td_board {width:120px;text-align:center}
.td_category {width:80px;text-align:center}
.td_chk {width:30px;text-align:center}
.td_date {width:60px;text-align:center}
.td_datetime {width:150px;text-align:center}
.td_group {width:100px;text-align:center}
.td_mb_id {width:100px;text-align:center}
.td_mng {width:80px;text-align:center}
.td_name {width:100px;text-align:left}
.td_nick {width:100px;text-align:center}
.td_num {width:50px;text-align:center}
.td_numbig {width:80px;text-align:center}
.td_stat {width:60px;text-align:center}

.txt_active {color:#5d910b}
.txt_done {color:#e8180c}
.txt_expired {color:#999}
.txt_rdy {color:#8abc2a}

/* 새창 기본 스타일 */
.new_win {}
.new_win #win_title {font-size: 1.2em;font-weight: bold;height: 50px;padding: 10px;line-height: 30px;
-webkit-box-shadow:  2px 2px 5px #eee;
-moz-box-shadow:  2px 2px 5px #eee;
box-shadow: 2px 2px 5px #eee
}
.new_win #win_title .sv {font-size:0.75em;line-height:1.2em}
.new_win_con{margin:20px}

.new_win .win_ul {margin:20px}
.new_win .win_ul li {display:inline-block;}
.new_win .win_ul li a {display: block;line-height: 24px;padding: 0 10px;}
.new_win .win_ul li .selected {background: #4162ff;color: #fff;border-radius: 13px;
-webkit-box-shadow: 0 0 5px rgba(65,98,255,0.8);
-moz-box-shadow: 0 0 5px rgba(65,98,255,0.8);
box-shadow: 0 0 8px rgba(65,98,255,0.8);}

.new_win .win_desc {margin:5px 0;font-size:0.92em;color:#4162ff}
.new_win .win_btn {clear:both;margin:10px 0;text-align:center}
.new_win .win_btn a {display:inline-block;height:40px;line-height:40px;font-weight:bold}
.new_win .win_btn .btn_close {display:inline-block;padding:0 10px;border:0;background:#c6c6d2;color:#666;text-decoration:none;font-weight:bold;height:40px;margin:10px 0}
.new_win .win_btn .btn_submit {width:100%;height:40px;line-height:40px;;margin:0 0 20px;display:inline-block;font-weight:bold}

/* 검색결과 색상 */
.sch_word {color:#00c4ac}

/* 사이드뷰 */
.sv_wrap {display:inline-block;position:relative;font-weight:normal;line-height:20px}
.sv_wrap .sv {z-index:1000;width:100px;display:none;margin:5px 0 0;font-size:0.92em;background:#333;text-align:left;
-webkit-box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);
-moz-box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);
box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);}
.sv_wrap .sv:before{content: "";position: absolute;top: -6px;left: 15px;width: 0;height: 0;border-style: solid;border-width: 0 6px 6px 6px;border-color: transparent transparent #333 transparent;}
.sv_wrap .sv a {display:inline-block;width:100px;margin:0;padding:0  10px;line-height:30px;font-weight:normal;color:#bbb }
.sv_wrap .sv a:hover{background:#000;color:#fff}
.sv_member{color:#333;font-weight:bold;}
.sv_on {display:block !important;position:absolute;top:23px;left:0px;width:auto;height:auto}
.sv_nojs .sv {display:block}

/* 페이징 */
.pg_wrap {clear:both;margin:30px 0;text-align:center}
.pg {display:inline-block }
.pg_page, .pg_current {display:inline-block;padding:0 13px;height:35px;color:#959595;line-height:35px;vertical-align:middle}
.pg a:focus, .pg a:hover {text-decoration:none;background-color:#f8f8f8; }
.pg_page {background:#eee;}
.pg_start {background:url(../img/btn_first.gif) no-repeat 50% 50% #eee;width:35px;height:35px ;text-indent:-999px;overflow:hidden}
.pg_prev {background:url(../img/btn_prev.gif) no-repeat 50% 50% #eee;width:35px;height:35px ;text-indent:-999px;overflow:hidden}
.pg_next {background:url(../img/btn_next.gif) no-repeat 50% 50% #eee;width:35px;height:35px ;text-indent:-999px;overflow:hidden}
.pg_end {background:url(../img/btn_end.gif) no-repeat 50% 50% #eee;width:35px;height:35px ;text-indent:-999px;overflow:hidden}
.pg_current {display:inline-block;background:#494949;color:#fff;font-weight:normal;line-height:35px;}




@media (max-width: 1200px){


    .conBg .logotext{
        width: 400px;
    }
    
    .latest-card {
        width: 180px;
        height: 250px;
    }

    
}




@media (max-width: 860px) {

  
    .conBg .logotext{
        width: 300px;
    }

    
.latest-card {
    width: 150px;
    height: 200px;
}

/* 📌 호버 시 부드럽게 확대 */
.latest-card:hover {
    transform: scale(1.1); /* 🔥 크기 변경 방식 */
    --hover-brightness: 1.05; /* 🔥 0.001 → 1.05로 변경 (어둡게 하는 게 아니라 밝게!) */
    box-shadow: 0px 50px 30px rgba(0, 0, 0, 0.191);
}

.idx_con {
    grid-template-columns: repeat(3, minmax(150px, 1fr));
    gap: 25px;
}

}

@media (max-width: 720px) {



    .conBg .logo{
        top: 8px;
        right: 5px;
        width: 180px;
    }

    .conBg .logotext{
        top:50%;
    }

    .conTop{
        height: 40vh;
    }
    .conBg {
        height: 40vh;
    }
    .idx_wrap{
        height: 60vh;
    }


    .idx_con {
        grid-template-columns: repeat(2, 1fr); /* 🔥 2열로 변경 */
        grid-template-rows: auto auto; /* 
        🔥 자동 높이 */

        grid-template-areas: 
            "one three"
            "two two"; 
    }
    
    .latest-card {
        position: relative;
        display: block;
        width: 155px;
        height: 160px;
        background-size: cover;
        background-position: center;
        border-radius: 25px;
        overflow: hidden;
        filter: brightness(var(--hover-brightness, 1.005));
        will-change: transform, filter;
        perspective: 1000px;
        box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.191);
        
        /* 📌 transition을 한 줄로 정리 */
        transition: transform 0.7s ease-out, filter 0.7s ease-in-out, width 0.7s ease-in-out, height 0.7s ease-in-out;
    }
    
    /* 📌 호버 시 부드럽게 확대 */
    .latest-card:hover {
        --hover-brightness: 1.05; /* 🔥 0.001 → 1.05로 변경 (어둡게 하는 게 아니라 밝게!) */
        box-shadow: 0px 50px 30px rgba(0, 0, 0, 0.191);
    }
    
    
    }
@media (max-width: 450px) {

    
    .conBg .logo{
        right: 5px;
        width: 150px;
    }

    .conBg .logotext{
        top:55%;
    }

    .conTop{
        height: 50vh;
    }
    .conBg {
        height: 50vh;
    }
    .idx_wrap{
        height: 50vh;
    }
    .idx_con {
        grid-template-columns: repeat(2, 1fr); /* 🔥 2열로 변경 */
        grid-template-rows: auto auto; /* 
        🔥 자동 높이 */
        grid-template-areas: 
            "one three"
            "two two"; 
            gap: 20px;
    }
    .latest-card {
        border-radius: 15px;
        width: 120px;
        height: 120px;
        box-shadow:   2px 2px 4px rgba(0, 0, 0, 0.317);
        /* 📌 transition을 한 줄로 정리 */
        transition: transform 0.7s ease-out, filter 0.7s ease-in-out, width 0.7s ease-in-out, height 0.7s ease-in-out;
    }

    .latest-card p{
        font-size: 0.7em;
    }

    .latest-overlay {

        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); /* 정확한 중앙 정렬 */
        width: 100%;
        height: 100%;
        
        background: rgba(0, 0, 0, 0.097);
        text-align: center;
        color: #fff;
        font-size: 20px;
        font-weight: bold;
        text-shadow:  1px 1px 9px rgba(0, 0, 0, 0.413);
        
    
        display: flex;
        justify-content: center; /* 가로 중앙 */
        align-items: center; /* 세로 중앙 */
    
        transition: transform 0.4s ease-out, filter 0.4s ease-in-out;
    }
    
    
    .conBg .logotext{
        width: 250px;
        z-index: 0;
    }
    }