@charset "utf-8";*,*::before,*::after{box-sizing:border-box}html,body,div,span,iframe,h1,h2,h3,h4,h5,h6,p,dl,dt,dd,ul,ol,li,form,fieldset,legend,label,button,input,textarea,table,caption,thead,tbody,tfoot,tr,th,td,header,footer,section,article,aside,nav,address{margin:0;padding:0;border:0;font-weight:normal}html,body{width:100%;font-size:12px;font-family:"Nanum Gothic","맑은 고딕",Dotum,sans-serif;-webkit-text-size-adjust:none;letter-spacing:-1px}ul,ol,li{list-style:none}img,fieldset,a{border:0}img{vertical-align:top;max-width:100%;height:auto}a{text-decoration:none;color:inherit}table{width:100%;border-collapse:collapse;border-spacing:0;text-align:left}th,td{text-align:left}legend,.blind{position:absolute;top:0;left:-10000px;width:0;height:0;overflow:hidden;font-size:0;line-height:0}button,label{cursor:pointer}button{overflow:visible\9}input::placeholder,textarea::placeholder{color:#bdbdbd}input:focus::placeholder,textarea:focus::placeholder{color:transparent!important}input,textarea,button,select{font-family:inherit}
input:focus,
textarea:focus,
select:focus {
  outline: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100..900&display=swap');
@import url('https://hangeul.pstatic.net/hangeul_static/css/nanum-gothic.css');
body {
  font-family: "Noto Sans KR", sans-serif;;
  line-height: 1.5;
  color: #222;
}
.wrap {
  min-width: 1200px; /* PC 레이아웃 기준 */
}
.inner {
  position: relative;
  width: 1200px;
  margin: 0 auto;
}
.section {
  padding: 60px 0 100px;
}
.section-head {
  margin-bottom: 30px;
}
.section-head .more{position: absolute;top: 15px;right: 0;font-size: 16px;color: #666}

.section-title {
  font-size: 42px;
  font-weight: 700;
  color: #333;
}
.section-sub {
  margin-top: 8px;
  color: #666;
  font-size: 18px;
}

/* ================= 헤더 ================= */
#header{display: none;}
.header { position:absolute; top:0; left:0; width:100%; background:transparent; z-index:2000; transition:background .25s, border-color .25s; }
.header .header-top { height:60px; display:flex; justify-content:flex-end; align-items:center; gap:16px; font-size:13px; }
.header .header-top .inner { display:flex; align-items:center; justify-content:flex-end; }
.header .header-top,.header .header-bottom{position: relative;}
.header .header-top{z-index: 3;}
.header .header-bottom{z-index: 2;}
.header .dropdown-bg{z-index: 1;}
.header .top-util{}
.header .top-util a { margin-left:12px; text-decoration:none; color:#fff; }
.header .top-util a + a::before{content: '';display: inline-block;width: 1px;height: 11px;background: #fff;margin-right: 12px;}
.header .search-form { display:flex; align-items:center; height:40px; border:2px solid transparent; border-radius:20px; background:#fff; position:absolute;left: 50%;transform: translateX(-50%);border:2px solid #fff; }
.header .search-input { flex:1; width: 190px;height:100%; border:none; margin-left: 10px;padding:0 0 2px 0; font-size:13px; }
.header .search-input::placeholder {
  color:#333;          /* placeholder 색 */
  font-size:13px;      /* 글자 크기 */
  font-weight:400;     /* 기본 굵기 */
  letter-spacing:-0.5px;
  line-height: 30px;
}
.header .search-btn { width:40px; height:30px; border:none; background:url(/new_content/images/search-btn.png) 50% 50% no-repeat; color:#fff; font-size:0; cursor:pointer;}
.header .search-type { position:relative; height:100%; min-width:100px; width: 120px;margin-left: 15px;margin-right: 40px;}
.header .search-type-btn { display:flex; align-items:center; justify-content:space-between; width:100%; height:100%; margin-left: 10px;padding:0 10px; font-size:14px; color:#555; background:#fff; border:none; }
.header .search-type-arrow { width:12px; height:12px; border-left:3px solid #8cc63f; border-bottom:3px solid #8cc63f; transform:rotate(-45deg);position:relative;top: -2px; }
.header .search-type-list { position:absolute; top:120%; left:-17px; width:135px; margin-top:2px;padding: 5px 0; background:#fff; border-radius:5px; box-shadow:0 4px 10px rgba(0,0,0,.08); list-style:none; display:none; z-index:50; border:2px solid #fff;}
.header .search-type-list li { padding:5px 30px; font-size:13px; color:#555; cursor:pointer; white-space:nowrap; }
.header .search-type-list li:hover { background:#f5fbe9; color:#333; }
.header .search-type.is-open .search-type-arrow { transform:rotate(135deg); top: 3px;}
.header .header-bottom { height:90px; border-top:1px solid #87d6db; border-bottom:1px solid #87d6db; }
.header .header-bottom .inner { height:100%; display:flex; align-items:center; justify-content:space-between; }
.header .logo{width: 132px;height: 55px;background: url(/new_content/images/logo.png) 0 0 no-repeat;font-size: 0}
.header .logo a { font-size:0;display: block;width: 100%;height: 100%;}
.header .gnb-list { list-style:none; display:flex; gap:52px; padding-right: 40px;}
.header .gnb-item{position: relative;}
/*선생님방*/
.header .gnb-list li:last-child::before{content: '';display: inline-block;width: 2px;height: 23px;background: #fff;position: absolute;left: -25px;top: 20px}
.header .gnb-item > a {position: relative;font-size:19px;font-weight: 600; color:#fff; text-decoration:none; padding:18px 4px; display:block; }
.header .gnb-item > a:hover,
.header .gnb-item.active > a  { color:#8cc63f; font-weight:700; }
/* 1뎁스 메뉴 underline 기본 */
.header .gnb-item > a {position: relative;display: block;}
/* 초기 상태: 가운데 0 → 확장 준비 */
.header .gnb-item > a::after {content: "";position: absolute;left: 50%;bottom: -13px;width: 0;height: 4px;background: #8cc63f;transform: translateX(-50%);transition: width .25s ease;}
/* hover 시: 가운데에서 양옆으로 확장 */
.header .gnb-item:hover > a::after,
.header .gnb-item.active > a::after{width: 100%;}
/*.gnb-item.active > a::after {width: 100%;}*/
.header .dropdown-bg { position:absolute; top:150px; left:0; width:100%; background:#fafafa; display:none; overflow:hidden; padding-bottom: 80px;}
.header .dropdown-inner { display:flex; gap:120px; }
.header .sub-menu { list-style:none; display:none; min-width:140px;position: relative; }
.header .sub-menu.is-active { font-weight:700; }
.header .sub-menu a {font-size:16px; font-weight: 500;color:#666; text-decoration:none; padding:12px 0; display:block; }
.header .sub-menu a:hover {color: #6eb92b}
#sm1{left: 242px;}
#sm2{left: 385px;}
#sm3{left: 270px;}
#sm4{left: 310px;}
/* 오버상태 */
.header.is-hover { background:#fff;}
.is-hover .top-util a{color: #333}
.is-hover .top-util a + a::before{background: #333;}
.is-hover .search-form ,
.is-hover .search-type-list{ border:2px solid #8cc63f; }
.is-hover .header-bottom {border-top:1px solid #f5f5f5; border-bottom:1px solid #f5f5f5; }
.is-hover .logo{background-image: url(/new_content/images/logo2.png);}
.is-hover .gnb-item > a {color: #333}
.is-hover .gnb-item.active > a  { color:#8cc63f; font-weight:700; }
.is-hover .gnb-list li:last-child::before{background: #333;}

/* 서브gnb */
.header.sub-gnb { background:#fff;border-bottom: 1px solid #fff;box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.2);}
.sub-gnb .top-util a{color: #333}
.sub-gnb .top-util a + a::before{background: #333;}
.sub-gnb .search-form ,
.sub-gnb .search-type-list{ border:1px solid #8cc63f; }
.sub-gnb .header-bottom {border-top:1px solid #f5f5f5; border-bottom:1px solid #f5f5f5; }
.sub-gnb .logo{background-image: url(/new_content/images/logo2.png);}
.sub-gnb .gnb-item > a {color: #333}
.sub-gnb .gnb-item.active > a  { color:#8cc63f; font-weight:700; }
.sub-gnb .gnb-list li:last-child::before{background: #333;}

/* SNS 아이콘 */
.header .header-sns {display: flex;gap: 6px;margin-right: 40px;}
.header .ico {display: block;width: 30px;height: 30px;border-radius: 50%;background: #ddd; background-repeat: no-repeat;background-position: 50% 50%;/* 실제 아이콘 이미지로 교체 */}
.header .ico.fb{background-image: url(/new_content/images/ico-fb.png);}
.header .ico.blog{background-image: url(/new_content/images/ico-blog.png);}
.header .ico.yt{background-image: url(/new_content/images/ico-yt.png);}
.header .ico.insta{background-image: url(/new_content/images/ico-insta.png);}

/* ================= main ================= */
.main-visual { position:relative; height:820px; background:#0b7fd5 url(/new_content/images/main_bg.png) no-repeat center/cover; color:#fff; overflow:hidden; }
.main-visual .main-visual-swiper { width:100%; height:100%; }
.main-visual .main-visual-slide { width:100%; height:100%; }
.main-visual .main-visual-inner { width: 1040px;height:100%; display:flex; align-items:center; justify-content:space-between; }
.main-visual .main-visual-text { max-width:480px; margin-top: -150px;}
.main-visual .mv-kicker { font-size:20px; font-weight: 600;margin-bottom:30px; letter-spacing:0; }
.main-visual .mv-title { font-size:58px; font-weight:600; line-height:1.2; margin-bottom:16px; }
.main-visual .mv-desc { font-size:15px; margin-bottom:24px; }
.main-visual .mv-btn { display:none; padding:11px 26px; border-radius:24px; background:#fff; color:#0b7fd5; font-size:14px; font-weight:600; }
.main-visual .main-visual-book { flex:0 0 561px; display:flex; justify-content:flex-end; margin-top: 45px;}
.main-visual .main-visual-book img { max-width:100%; height:auto; }
/* 기본: 오른쪽으로 살짝 밀어두고 안 보이게 */
.main-visual .main-visual-text .mv-line {
  opacity:0;
  transform:translateX(40px);
  transition:all .6s ease;
}

/* 활성 상태: 제자리 + 보이게 */
.main-visual .main-visual-text .mv-line.active {
  opacity:1;
  transform:translateX(0);
}
/* Swiper pagination & nav (PC 전용) */
.main-visual .main-visual-nav { position:absolute; left:50%; bottom:170px; transform:translateX(-210%); display:flex; align-items:center; gap:24px; z-index: 999;}
.main-visual .main-visual-prev,
.main-visual .main-visual-next { width:48px; height:48px; border-radius:50%; border:none; background-color:rgba(0,60,100,0.6);background-position: center center;background-repeat: no-repeat; color:#fff; font-size:0; line-height:1; display:flex; align-items:center; justify-content:center; cursor:pointer; }
.main-visual .main-visual-prev{background-image: url(/new_content/images/main-visual-prev.png);}
.main-visual .main-visual-next{background-image: url(/new_content/images/main-visual-next.png);}
.main-visual .main-visual-fraction { min-width:100px; height:40px; padding:0 32px; border-radius:999px; background:rgba(0,60,100,0.7); display:flex; align-items:center; justify-content:center; color:#fff; font-size:14px; letter-spacing:2px; }
.main-visual .main-visual-fraction .bar{display: inline-block;width: 1px;height: 14px;margin: 0 10px;background: #fff;}

/* 마우스 */
.main-visual .mouse-box{position:absolute;bottom:7%;left:50%;z-index: 99;transform:translateX(-50%);-webkit-transform:translateX(-50%);display: flex;flex-direction: column;align-items: center;animation:mouse-ani .65s ease infinite alternate;}
.main-visual .mouse-box .arr{width: 12px;height: 14px;background: url(/new_content/images/mouse-box.png) 0 0 no-repeat;margin-top: 10px;}
.main-visual .mouse-box .mouse{width:36px;height:60px;border-radius:100px;border:2px solid #fff;}
.main-visual .mouse-box .mouse-wheel{margin: 8px auto 0;width: 4px;height: 10px;border-radius: 100px;background: #fff;animation: mouse-wheel-ani .65s ease infinite alternate;}
/* 마우스 효과 */
@keyframes mouse-ani {
  0% {
   transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
  }
  100% {
   transform: translateY(0);
    -webkit-transform: translateY(15px);
    -ms-transform: translateY(15px);
  }
}

/* 마우스 안에 효과 */
@keyframes mouse-wheel-ani {
  0% {
  opacity:1;
   transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
  }
  100% {
  opacity:0.5;
   transform: translateY(10px);
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
  }
}

/* ================= 빠른메뉴-메인사이드 ================= */
.quick-side-menu{position: fixed;bottom: 250px;left: 50%;width: 100px;height: 302px;margin-left: 650px;padding: 0;z-index: 10000;}
.quick-side-menu .quick-side-menu-list{width: 100%;height: 100%;display: flex;justify-content: space-between;flex-direction: column;}
.quick-side-menu .quick-side-menu-item a{display: inline-block;width: 100%;height: 100%;}

/* ================= 빠른메뉴 ================= */
.quick-menu .quick-menu-list {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-top: 50px;
}
.quick-menu .quick-menu-item {
  width: 140px; 
  border-radius: 40px;
  border: 1px solid #e6e6e6;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}
.quick-menu .quick-menu-item a{display: inline-block;width: 100%;height: 100%;padding: 75px 0 25px;text-align: center;font-size: 15px;font-weight: 500;color: #666}
.quick-menu .quick-menu-item:hover {
  box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.2);
}
.quick-menu .quick-menu-item:hover a{color: #6eb92b}
.quick-menu .quick-menu-item:nth-child(1){background-image: url(/new_content/images/quick-menu-item01.png);}
.quick-menu .quick-menu-item:nth-child(2){background-image: url(/new_content/images/quick-menu-item02.png);}
.quick-menu .quick-menu-item:nth-child(3){background-image: url(/new_content/images/quick-menu-item03.png);}
.quick-menu .quick-menu-item:nth-child(4){background-image: url(/new_content/images/quick-menu-item04.png);}
.quick-menu .quick-menu-item:nth-child(5){background-image: url(/new_content/images/quick-menu-item05.png);}
.quick-menu .quick-menu-item:nth-child(6){background-image: url(/new_content/images/quick-menu-item06.png);}
.quick-menu .quick-menu-item:nth-child(7){background-image: url(/new_content/images/quick-menu-item07.png);}

/* ================= 최신교재 ================= */
.latest-books{background: #f0f5fa;}
/* 최신 교재 섹션 안 Swiper 래퍼 */
.latest-books-wrapper{position:relative;overflow:hidden;padding: 45px 90px;background: #fff; border-radius: 20px;}
.latest-books .latest-books-swiper {overflow:hidden;}

/* Swiper slide 안에 카드 꽉 차게 */
.latest-books .latest-books-swiper .swiper-slide { height:auto; }

/* 카드 레이아웃 */
.latest-books .book-card { height:100%;}
.latest-books .book-thumb {width: 193px;height: 247px;margin-bottom:20px; text-align:center; border: 1px solid #ddd;box-shadow: 4px 3px 3px rgba(0, 0, 0, 0.1);}
.latest-books .book-thumb img { display:block; margin:0 auto; width: 100%;height: 100%;}
.latest-books .book-title {width: 180px;font-size:16px; color:#666;font-weight:500; line-height:1.4; margin-bottom:15px; }
.latest-books .book-desc {width: 160px; font-size:13px; color:#666; line-height:1.5; }

/* 최신 교재 슬라이더 네비 버튼 (간단 버전) */
.latest-books .latest-books-prev,
.latest-books .latest-books-next { position:absolute; top:50%; transform:translateY(-50%); width:32px; height:32px; border-radius:50%; border:none; background:#fff; box-shadow:0 2px 6px rgba(0,0,0,.15); cursor:pointer; font-size:0; }
.latest-books .latest-books-prev { left:-16px; }
.latest-books .latest-books-next { right:-16px; }

/* 화살표 */
.latest-books .latest-books-prev::before,
.latest-books .latest-books-next::before { content:""; display:block; width:8px; height:8px; border-top:2px solid #666; border-right:2px solid #666; margin:0 auto; margin-top:11px; }
.latest-books .latest-books-prev::before { transform:rotate(-135deg); }
.latest-books .latest-books-next::before { transform:rotate(45deg); }

/* ================= 자이스토리 학습법 ================= */

.learning-method .learning-method-swiper{overflow: hidden;}
.learning-method .learning-method-swiper .swiper-wrapper{}
.learning-method .method-card{border: 1px solid #000;display: flex;align-items: center;margin-bottom: 30px;padding: 40px 0 40px 70px;}
.learning-method .method-card{
    background: #ecf0f3;
    border: 1px solid #ddd;
    border-radius: 20px;
    box-shadow:
    inset 0 0 15px rgba(255, 255, 255, 0.8),
    inset 0 0 8px rgba(255, 255, 255, 0.5);
}
.learning-method .method-thumb{width: 100px;height: 100px;margin-right: 35px;flex-shrink: 0;border-radius: 50%;overflow: hidden;display: flex;align-items: center;justify-content: center;background: #fff;}
.learning-method .method-text{flex: 1;display: flex;flex-direction: column;gap: 4px;}
.learning-method .method-title{font-size: 20px;width: calc(100% - 85px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.learning-method .method-desc{font-size: 16px;color: #6eb92b}
.learning-method .method-subjct{font-size: 14px;width: 60px;height: 30px;border: 1px solid #000;border-radius: 8px;display: flex;align-items: center;justify-content: center;}
.learning-method .subjct-kor{background-color: #fef1f1;border-color: #f48080;color: #f48080;}
.learning-method .subjct-mat{background-color: #e4ecff;border-color: #4372ec;color: #4372ec;} 
.learning-method .subjct-eng{background-color: #f2ecfe;border-color: #884cef;color: #884cef;} 
.learning-method .subjct-soc{background-color: #fef6e7;border-color: #f5a319;color: #f5a319;} 
.learning-method .subjct-sci{background-color: #e8f8f3;border-color: #40c79a;color: #40c79a;} 
/* ================= 수능 1등급을 향한 교재 선택 ================= */
.highlight-section {
  padding: 100px 0;
  background: linear-gradient(to right, #edffde, #e2fffe);
}
.highlight-section .inner{display: flex;justify-content:space-between}
.highlight-section .section-head{width: 350px;margin-top: -20px;}
.highlight-section .highlight-grid {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 45px;
  justify-items:end;
}
/* 카드 기본 상태 : 살짝 위/투명 */

.highlight-section .highlight-item {
  width: 255px;
  height: 300px;
  border-radius: 10px;
  border: 1px solid #ddd;
  opacity:0;
  transform:translateY(-30px);
  transition:opacity .6s ease,transform .6s ease;
  overflow: hidden;
}

/* 섹션이 활성화됐을 때 공통 */
.highlight-section.is-show .highlight-item {
  opacity:1;
  transform:translateY(0);
}

/* 순차 딜레이 (초등 / 중등 / 고등) */
.highlight-section.is-show .highlight-item:nth-child(1) {transition-delay:0s;}
.highlight-section.is-show .highlight-item:nth-child(2) {transition-delay:.15s;}
.highlight-section.is-show .highlight-item:nth-child(3) {transition-delay:.3s;}
.highlight-section .highlight-item {
  opacity: 0;
  transform: translateY(-40px);
  transition: opacity .6s ease, transform .6s ease;
}
.highlight-section .highlight-item.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.highlight-section .highlight-item a{position: relative;z-index: 999;display: flex;width: 100%;height: 100%;cursor: pointer;justify-content: center;align-items: flex-end;}
.highlight-section .highlight-item img {position: absolute;top: 0;width:100%; height:100%; object-fit:cover; transition:transform .6s ease, filter .6s ease; }
.highlight-section .highlight-item span{display: inline-block;position: absolute;bottom: 60px;z-index: 999;color: #fff;font-size: 18px;font-weight: 400; padding-right: 40px; }
.highlight-section .highlight-item span::after {
  content: "";
  position: absolute;
  right: 0;
  width: 25px;
  height: 25px;
  border: 1px solid #fff;
  border-radius: 50%;
  box-sizing: border-box;
}
.highlight-section .highlight-item span::before {
  content: "";
  position: absolute;
  right: 9px;
  width: 11px;
  height: 11px;
  top: 7px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  transform: rotate(-45deg);
}
.highlight-section .highlight-item::after { content:""; position:absolute; inset:0; background:rgba(0,0,0,25%); transition:background .4s ease; }
.highlight-section .highlight-item:hover img { transform:scale(1.08);}
.highlight-section .highlight-item:hover::after { background:rgba(0,0,0,5%); }

/* ================= 추천교재 ================= */
.recommend-section { background:#f3f6f9;position: relative; }

.recommend-section .recommend-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:60px;
}
.recommend-section .recommend-more {font-size:13px;color:#888;}
/* 탭 */
.recommend-section .grade-tabs {display:flex;gap:12px;margin-bottom:20px; position: absolute;top: 25px;left: 200px;}
.recommend-section .grade-tab {
  position: relative;
  margin: 0 20px;
  font-size:16px;
  cursor:pointer;
  font-weight: 400;
  color:#333;
}
.recommend-section .grade-tab.is-active {font-weight: 500;border-bottom: 1px #333 solid;}
.recommend-section .grade-tab::before{content: '';display: inline-block;width: 1px;height: 13px;background: #bdbdbd;position: absolute;top: 50%;left: -25px;transform:translateY(-50%);}
.recommend-section .grade-tab:first-child::before{display: none;}
/* 패널 show / hide */
.recommend-section .grade-panel { display:none; }
.recommend-section .grade-panel.is-active { display:block; }

/* Swiper 영역 */
.recommend-section .recommend-swiper {
  position:relative;
  margin:10px 70px; /* 좌우 네비 여백 */
  overflow: hidden;
}
/* 카드 레이아웃 */
.recommend-section .book-card { height:100%;}
.recommend-section .book-thumb {width: 240px;height: 310px;margin-bottom:35px; text-align:center; border: 1px solid #ddd;box-shadow: 4px 3px 3px rgba(0, 0, 0, 0.1);}
.recommend-section .book-thumb img { display:block; margin:0 auto; width: 100%;height: 100%;}
.recommend-section .book-title {width: 240px;font-size:18px; color:#666;font-weight:500; line-height:1.4; margin-bottom:15px; }
.recommend-section .book-desc {width: 160px; font-size:13px; color:#666; line-height:1.5; }

/* 네비게이션 버튼 (양쪽 화살표) */
.recommend-prev,
.recommend-next {
  position:absolute;
  top:55%;
  transform:translateY(-50%);
  width:50px;
  height:50px;
  border-radius:50%;
  border:1px #ddd solid;
  background:#fff;
  cursor:pointer;
  box-shadow: 4px 3px 3px rgba(0, 0, 0, 0.1);
}

.recommend-prev::before,
.recommend-next::before {
  content:'';
  display:block;
  width:12px;
  height:12px;
  border-top:2px solid #707070;
  border-right:2px solid #707070;
  margin:0 auto;
  transform:rotate(225deg);
  margin-top:2px;
  margin-left: 20px;
}
.recommend-next::before {
  transform:rotate(45deg);
  margin-left: 17px;
}
.recommend-prev { left:0; }
.recommend-next { right:0; }
.recommend-section .swiper-button-prev:after, .recommend-section .swiper-rtl .swiper-button-next:after,
.recommend-section .swiper-button-next:after, .recommend-section .swiper-rtl .swiper-button-prev:after{display: none;}

/* ================= 학습자료실 ================= */
.learning-resources .section-sub{text-align: center;font-size: 26px;color: #333}
.learning-resources .section-title{text-align: center;font-size: 40px;color: #83bb14;font-weight: 700;}
.learning-resources .icon-menu {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
.learning-resources .icon-menu-item { 
  flex: 1;
  text-align: center;
  padding: 45px 0 35px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-size: 18px;
  cursor: pointer;
  font-weight: 500;
}
.icon-menu-item:nth-child(1){background: #ffdeb3;}
.icon-menu-item:nth-child(2){background: #f9d2c0;}
.icon-menu-item:nth-child(3){background: #c5e8dc;}
.icon-menu-item:nth-child(4){background: #f9edbd;}
.icon-menu-item:nth-child(5){background: #d0def8;}
.learning-resources .icon-menu-item .icon{display: flex;width: 100px;height: 100px;border-radius: 50px;margin-bottom: 25px;justify-content: center;align-items: center;}
.icon-menu-item:nth-child(1) .icon{background: #fad18e;}
.icon-menu-item:nth-child(2) .icon{background: #f6bfa8;}
.icon-menu-item:nth-child(3) .icon{background: #aeddcd;}
.icon-menu-item:nth-child(4) .icon{background: #f6e4a4;}
.icon-menu-item:nth-child(5) .icon{background: #b7cbf3;}
/*
.learning-resources .icon-menu-item img{transition:transform .6s ease, filter .6s ease}
.learning-resources .icon-menu-item:hover img { transform:scale(1.08);}
*/

/* ================= 선생님방 바로가기 ================= */
.teacher-section {
  padding: 0;
  background: #edf4e4;
}
.teacher-section .inner{height: 100%;}
.teacher-wrap {
  height: 250px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  background: url(/new_content/images/teacher-section-bg.png) 0 0 no-repeat;
}
.teacher-wrap h3{margin-right: 75px;font-size: 36px;font-weight: 500;color: #333}
.teacher-link-btn {
  --teacher-green: #8eb828; /* 필요하면 색만 여기서 바꾸면 됨 */

  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 15px 30px;
  border-radius: 999px;
  border: 1px solid var(--teacher-green);
  background-color: #fff;  
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.2s ease, box-shadow 0.2s ease,
              transform 0.1s ease;
}
.teacher-link-btn span{color: var(--teacher-green); font-size: 20px; font-weight: 700;}
.teacher-link-btn__label {
  white-space: nowrap;
}
.teacher-link-btn__icon {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  border: 1px solid var(--teacher-green);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.teacher-link-btn__icon svg {
  width: 15px;
  height: 15px;
}


/* ================= 파트너 ================= */
/* 그리드 레이아웃 (이미 있으면 이 부분은 생략 가능) */
.partner-section{background: url(/new_content/images/partner-section-bg.png) center center no-repeat #eee;padding: 150px 0 110px;}
.partner-section .inner{display: flex;justify-content:flex-end}
.partner-section .section-head{position: absolute;top: -70px;left: 0;}
.partner-section .section-title{font-size: 36px;font-weight: 400;color: #333}
.partner-section .section-title .txt1{font-size: 42px;font-weight: 700;}
.partner-section .section-title .txt2{font-size: 42px;font-weight: 700;color: #004482}
.partner-section .partner-grid { width: 870px;display:grid; grid-template-columns:repeat(2, 1fr); gap:30px; }

/* 카드 기본 모양 */
.partner-section .partner-card {
  position: relative;
  height: 260px;
  padding: 40px;
  border-radius:16px;
  background:#fff;
  /* 애니메이션 초기 상태 */
  opacity:0;
  transform:translateY(30px);
  transition:opacity .6s ease, transform .6s ease;
}

/* 섹션이 뷰포트 안에 들어왔을 때 */
.partner-section.is-inview .partner-card {
  opacity:1;
  transform:translateY(0);
}

/* 순차(스태거) 효과 – 필요 개수만큼 nth-child 추가 */
.partner-section.is-inview .partner-card:nth-child(1) { transition-delay:.15s; margin-top: 80px;}
.partner-section.is-inview .partner-card:nth-child(2) { transition-delay:.3s; }
.partner-section.is-inview .partner-card:nth-child(3) { transition-delay:.45s; }
.partner-section.is-inview .partner-card:nth-child(4) { transition-delay:.60s; margin-top: -80px;}

.partner-section .partner-thumb {position: absolute; right:30px; bottom: 20px; }
.partner-section .partner-title {font-size:24px; color:#333;font-weight:700; line-height:1.4; margin-bottom:15px; }
.partner-section .partner-desc {font-size:17px; color:#8c8c8c; line-height:1.5; }


/* ================= 공지사항/입시정보/이벤트 ================= */
.board-section {padding: 100px 0 60px;}
.board-section .board-wrap {display:flex;gap:24px;}
/* 카드 */
.board-section .board-card {
  width: calc((1200px - 48px) / 3); /* 3카드 고정 너비 */
  height: 260px;
  background:#fff;
  border-radius:22px;
  padding:24px 36px;
  border: 1px solid #ddd;
}
/* 카드 헤더 */
.board-section .board-card-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-bottom:16px;
  border-bottom:1px solid #eee;
  margin-bottom:25px;
}
.board-section .board-title {font-size:22px;font-weight:700;color:#333;}
.board-section .board-more {font-size: 16px;color: #666}
/* 리스트 */
.board-section .board-list li + li {margin-top:8px;}
.board-section .board-list a {
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:16px;
  color:#555;
}
.board-section .board-subject {
  flex:1;
  margin-right:10px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width: 70%;
}
.board-section .board-date {
  flex-shrink:0;
  font-size:14px;
  color:#aaa;
}

/* ================= 푸터 ================= */
.footer {clear: both;border-top: 1px solid #eee;padding: 40px 0;font-size: 14px;color: #777;}
.footer .footer-inner {display: flex;justify-content: space-between;align-items: flex-start;}
/* 왼쪽 전체 영역을 그리드로: 왼쪽(로고+SNS) / 오른쪽(메뉴+정보) */
.footer .footer-left {display: grid;grid-template-columns: auto 1fr;column-gap: 40px;row-gap: 12px;}
/* 로고 + SNS : 왼쪽 칸 전체 차지 */
.footer .footer-top {grid-column: 1 / 2;grid-row: 1 / 3; /* 메뉴+정보 두 줄 높이만큼 세로로 같이 있음 */}
.footer .footer-logo img {display: block;}
/* SNS 아이콘 */
.footer .footer-sns {display: flex;margin-top: 16px;gap: 6px;}
.footer .ico {display: block;width: 30px;height: 30px;border-radius: 50%;background: #ddd; background-repeat: no-repeat;background-position: 50% 50%;/* 실제 아이콘 이미지로 교체 */}
.footer .ico.fb{background-image: url(/new_content/images/ico-fb.png);}
.footer .ico.blog{background-image: url(/new_content/images/ico-blog.png);}
.footer .ico.yt{background-image: url(/new_content/images/ico-yt.png);}
.footer .ico.insta{background-image: url(/new_content/images/ico-insta.png);}
/* 메뉴 : 오른쪽 윗줄 */
.footer .footer-menu {grid-column: 2 / 3;grid-row: 1 / 2;display: flex;gap: 20px;font-size: 16px;color: #8d8d8d;}
.footer .footer-menu a {color: inherit;}
.footer .footer-menu a:hover{color: #333}
.footer .footer-menu li + li::before {content: "";display: inline-block;width: 1px;height: 12px;margin: 0 10px 0 0;background: #ccc;vertical-align: middle;}
/* 회사 정보 : 오른쪽 아랫줄 */
.footer .footer-info {grid-column: 2 / 3;grid-row: 2 / 3;font-size: 14px;line-height: 1.7;color: #8d8d8d;}
.footer .footer-info p:last-child{font-size: 12px}
.footer .footer-info .bar{display: inline-block;width: 1px;height: 10px;margin: 0 24px;background: #bdbdbd;}
/* 오른쪽 : 고객센터 */
.footer .footer-right {display: flex;align-items: center;}
.footer .footer-call {display: flex;align-items: center;justify-content: center;gap: 10px;color: #333;letter-spacing: -1px;}
.footer .ico.call{display: inline-block;width: 33px;height: 33px;background-image: url(/new_content/images/ico-call.png);}
.footer .call-label {font-size: 16px;font-weight: 700;}
.footer .call-number {font-size: 22px;font-weight: 700;}

/* ================= 서브 ================= */
#content{margin-top: 150px;}
#lnb .menu{width: 140px;}
#lnb .menu:first-child{width: 40px;}
#lnb .sub_menu{width: 140px;}
#lnb .link{width: 100%;}
#lnb .sub_menu a{width: 100%;}
/* ================= 필터 ================= */
.filter-box {margin: 30px 0;border: 1px solid #e5e5e5;border-radius: 8px;background: #fff;max-width: 1004px;}
/* 행 */
.filter-box .filter-row {display: flex;align-items: center;border-top: 1px solid #f0f0f0;}
.filter-box .filter-row:first-child {border-top: 0;}
/* 라벨 */
.filter-box .filter-label {width: 100px;font-weight: 600;color: #333;background: #f7f7f7;padding: 15px 30px;font-size: 14px;}
/* 컨텐츠 */
.filter-box .filter-content {display: flex;align-items: center;gap: 10px;flex-wrap: wrap;padding: 0 20px;}
/* 버튼 */
.filter-box .filter-btn {min-width: 72px;padding: 6px 16px;border: 1px solid #ddd;border-radius: 20px;background: #fff;font-size: 12px;color: #555;cursor: pointer;transition: all 0.2s ease;}
.filter-box .filter-btn:hover {border-color: #9acd32;color: #6b8e23;}
/* 활성 */
.filter-box .filter-btn.is-active {background: #9acd32;border-color: #9acd32;color: #fff;}
/* 셀렉트 */
.filter-box .filter-content .select-wrap{position: relative;width: 545px;}
.filter-box .filter-select {width: 100%;height: 36px;padding: 0 12px;border: 1px solid #ddd;font-size: 12px;color: #555;appearance: none;-webkit-appearance: none;-moz-appearance: none;background: #fff;cursor: pointer;}
.filter-box .filter-content .select-wrap::after {content: '';position: absolute;top: 50%;right: 14px;width: 0;height: 0;pointer-events: none;border-left: 4px solid transparent;border-right: 4px solid transparent;border-top: 4px solid #666;transform: translateY(-50%);}
.filter-select:focus {border: 1px solid #ddd !important; /* 포커스 색 */}

/* 필터 하단 우측 정렬 */
.content_wrap .search_box_sub {display: flex;justify-content: flex-end;gap: 10px;}

/* 셀렉트 공통 재사용 */
.filter-search .select-wrap {position: relative;}
.filter-search .filter-select {height: 36px;padding: 0 32px 0 12px;border: 1px solid #ddd;font-size: 12px;appearance: none;background: #fff;cursor: pointer;}
.filter-search .select-wrap{position: relative;width: 100px;}
.filter-search .filter-select {width: 100%;height: 36px;padding: 0 12px;border: 1px solid #ddd;font-size: 12px;color: #555;appearance: none;-webkit-appearance: none;-moz-appearance: none;background: #fff;cursor: pointer;}
.filter-search .select-wrap::after {content: '';position: absolute;top: 50%;right: 14px;width: 0;height: 0;pointer-events: none;border-left: 4px solid transparent;border-right: 4px solid transparent;border-top: 4px solid #666;transform: translateY(-50%);}

/* 검색 인풋 */
.filter-search .search-input {position: relative;}
.filter-search .search-input input {width: 240px;height: 36px;padding: 0 40px 0 12px;border: 1px solid #ddd;font-size: 12px;color: #555}
/* 검색 버튼 */
.filter-search .search-btn {position: absolute;top: 50%;right: 10px;width: 20px;height: 22px;transform: translateY(-50%);background: none;border: 0;cursor: pointer;}
/* 돋보기 아이콘 (CSS 버전) */
.filter-search .icon-search {display: block;width: 12px;height: 12px;border: 2px solid #9acd32;border-radius: 50%;position: relative;}
.filter-search .icon-search::after {content: '';position: absolute;width: 9px;height: 2px;background: #9acd32;right: -6px;bottom: -4px;transform: rotate(45deg);}
.content_wrap .search_box_sub .select_box,
.content_wrap .search_box_sub .input_text{height: 34px;}
.btn-search-wrap {
  position: relative;
  display: inline-block;
  width: 36px;
  height: 34px;
  border: 1px solid #dcdedf;
  border-left: none;
}

/* 기존 이미지 숨김 */
.btn-search-wrap .btn_search {
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

/* 돋보기 */
.btn-search-wrap::before {
  content: '';
  position: absolute;
  inset: 0;
  margin: auto;
  width: 12px;
  height: 12px;
  border: 2px solid #9acd32;
  border-radius: 50%;
}

.btn-search-wrap::after {
  content: '';
  position: absolute;
  width: 9px;
  height: 2px;
  background: #9acd32;
  right: 7px;
  bottom: 8px;
  transform: rotate(45deg);
}
.content_wrap .search_box_sub .input_text{color:#555;          /* placeholder 색 */}
.content_wrap .search_box_sub .input_text::-webkit-input-placeholder {
  color:#555 !important;
}
.content_wrap .search_box_sub .input_text:focus{border: 1px solid #dcdedf !important;border-right: none  !important;}
/* 포커스 */
.filter-search .filter-select:focus,
.filter-search .search-input input:focus{outline: none;border-color: #9acd32;}
.filter-search .search-input input::placeholder {
  color:#555;          /* placeholder 색 */
}
input:focus{outline: none;border-color: #dcdedf !important;}

/* ================= 시리즈 ================= */
/* 리스트 */
.series-list {display: grid;grid-template-columns: repeat(3, 1fr);gap: 22px;margin-bottom: 100px;}
/* 카드 */
.series-list .series-card {border: 1px solid #e5e5e5;border-radius: 12px;background: #fff;overflow: hidden;transition: box-shadow 0.2s ease, transform 0.2s ease;}
.series-list .series-card:hover {box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);transform: translateY(-2px);}
.series-list .series-card a{display: block;}
/* 썸네일 */
.series-list .series-thumb {display: flex;align-items: center;justify-content: center;height: 215px;background: #f0f0f0;padding: 20px;}
.series-list .series-thumb img {max-width: 100%;max-height: 100%;height: auto;}
/* 정보 */
.series-list .series-info {height: 145px;padding: 16px 18px 20px;}
.series-list .series-title {font-size: 20px;font-weight: 600;color: #222;line-height: 1.4;margin-bottom: 8px;}
.series-list .series-desc {font-size: 15px;color: #666;line-height: 1.5;}
.icon-new{display: inline-block;width: 22px;height: 22px;background: url(/new_content/images/icon-new.png) 0 0 no-repeat;vertical-align:middle;margin-left: 5px;}

/* ================= 빠른메뉴 ================= */
[class$="quick-list"]{display: flex;justify-content: space-around;gap: 35px;margin-bottom: 40px;}
[class$="quick-list"] li{width: 140px; border-radius: 45px;border: 1px solid #e6e6e6;background-position: 50% 35%;background-repeat: no-repeat;}
[class$="quick-list"] li a{display: inline-block;width: 100%;height: 100%;padding: 70px 0 25px;text-align: center;font-size: 15px;font-weight: 500;color: #666}
[class$="quick-list"] li.active {background-color: #e2f1d5;border-color: #6eb92b;}
[class$="quick-list"] li:hover a,
[class$="quick-list"] li.active a{color: #6eb92b;}
/*학습자료실*/
.study-quick-list .study-quick-item:nth-child(1){background-image: url(/new_content/images/study-quick-item01.png);}
.study-quick-list .study-quick-item:nth-child(2){background-image: url(/new_content/images/study-quick-item02.png);}
.study-quick-list .study-quick-item:nth-child(3){background-image: url(/new_content/images/study-quick-item03.png);}
.study-quick-list .study-quick-item:nth-child(4){background-image: url(/new_content/images/study-quick-item04.png);}
.study-quick-list .study-quick-item:nth-child(5){background-image: url(/new_content/images/study-quick-item05.png);}
.study-quick-list .study-quick-item:nth-child(6){background-image: url(/new_content/images/study-quick-item06.png);}
/*회사소개*/
.intro-quick-list li:nth-child(1){background-image: url(/new_content/images/intro-quick-item01.png);}
.intro-quick-list li:nth-child(2){background-image: url(/new_content/images/intro-quick-item02.png);}
.intro-quick-list li:nth-child(3){background-image: url(/new_content/images/intro-quick-item03.png);}
.intro-quick-list li:nth-child(4){background-image: url(/new_content/images/intro-quick-item04.png);}
/*커뮤니티*/
.member-quick-list{gap: 20px}
.member-quick-list li:nth-child(1){background-image: url(/new_content/images/member-quick-item01.png);}
.member-quick-list li:nth-child(2){background-image: url(/new_content/images/member-quick-item02.png);}
.member-quick-list li:nth-child(3){background-image: url(/new_content/images/member-quick-item03.png);}
.member-quick-list li:nth-child(4){background-image: url(/new_content/images/member-quick-item04.png);}
.member-quick-list li:nth-child(5){background-image: url(/new_content/images/member-quick-item05.png);}
.member-quick-list li:nth-child(6){background-image: url(/new_content/images/member-quick-item06.png);}
.member-quick-list li:nth-child(7){background-image: url(/new_content/images/member-quick-item07.png);}
/*선생님방*/
.teacher-quick-list li:nth-child(1){background-image: url(/new_content/images/teacher-quick-item01.png);}
.teacher-quick-list li:nth-child(2){background-image: url(/new_content/images/teacher-quick-item02.png);}
.teacher-quick-list li:nth-child(3){background-image: url(/new_content/images/teacher-quick-item03.png);}
.teacher-quick-list li:nth-child(4){background-image: url(/new_content/images/teacher-quick-item04.png);}
.knowhow_tab li a{padding-top: 0;}
/* ================= 커뮤니티 ================= */
.content_wrap .table_search .search_wrap{background: none;padding-bottom: 0;padding-top: 30px;}
.content_wrap .table_search tr th,
.content_wrap .table_view tr th{padding: 30px 0 30px 8px;}
.content_wrap .table .select_box select{height: 30px;}
.content_wrap .table_search .calendar_wrap .input_calendar{height: 30px;}
.content_wrap .search_box{height: 50px;}
.content_wrap .search_box.ty02{height: 90px;}
.content_wrap .search_box{display: none;}
.content_wrap .intro_wrap .txt_wrap .way_wrap{font-family: "Nanum Gothic";letter-spacing: -1px;}
.content_wrap .intro_wrap .txt_wrap .way_wrap *{box-sizing: content-box;}
.subway_icon{vertical-align: middle;}
.content_wrap .book_list{width: 100%;margin-left: 0;}
.content_wrap .book_list li{padding: 23px 0px 0 10px;min-height: 190px;}
.content_wrap .book_list li:nth-child(even){background: none;}
.content_wrap .search_box.location_box{display: block;}

.sub_book .sub_header{background:#848acf}
.sub_book .sub_header .lnb_wrap{background:#656baa;}
.sub_bookM .sub_header{background:#46b3b6}
.sub_bookM .sub_header .lnb_wrap{background:#409da0;}
.sub_bookE .sub_header{background:#809bc9}
.sub_bookE .sub_header .lnb_wrap{background:#5f79ae;}


.content_wrap .table_view.table_info2{margin-top:20px;border-top:1px solid #0001ca;border-bottom:1px solid #0001ca;}
.content_wrap .table_view.table_info2 th{background:#e2e6ff;color:#0001ca;border-top:none;}
.content_wrap .table_view.table_info2 td span{color:#f00}