/***패스***/
@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-1Thin.woff2') format('woff2');
    font-weight: 100;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-2ExtraLight.woff2') format('woff2');
    font-weight: 200;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-3Light.woff2') format('woff2');
    font-weight: 300;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-4Regular.woff2') format('woff2');
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-5Medium.woff2') format('woff2');
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-6SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-7Bold.woff2') format('woff2');
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-8ExtraBold.woff2') format('woff2');
    font-weight: 800;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-9Black.woff2') format('woff2');
    font-weight: 900;
    font-display: swap;
}

.pass_topwrap{border:0px solid red; width:100%; position: relative;
background: #02F9E0; min-height:860px;
background: linear-gradient(99deg,rgba(2, 249, 224, 1) 0%, rgba(131, 125, 255, 1) 100%);
}


.pass_topwrap1{border:0px solid red; width:100%; position: relative;}


.pass_top1 {
  width: 100%;
 
  border-bottom-left-radius: 45px;
  border-bottom-right-radius: 45px;
  overflow:hidden;
  /* 메뉴바 높이 + 기존 패딩 */
   /* 메뉴바 70px + 기존 90px 패딩 */
  padding-bottom: 50px;

  position: relative;
  z-index: 1; /* 메뉴바보다 낮게 유지 */

  /* 초기 상태 */
  opacity: 0;
  transform: translateY(-30px); /* 너무 크게 위로 올리지 말 것 */
  animation: fadeDownDiv 1s ease forwards;
  animation-delay: 0.2s;
}

@keyframes fadeDownDiv {
  0% {
    opacity: 0;
    transform: translateY(-30px); /* 메뉴바 위로 겹치지 않도록 최소값 */
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.topbg01{ background:url('/skin/schoolc/html/img/sub_bg01.png') center repeat !important;  background-size:cover;}
.topbg02{ background:url('/skin/schoolc/html/img/sub_bg03.png') center repeat !important;  background-size:cover;}
.topbg03{ background:url('/skin/schoolc/html/img/sub_bg04.png') center repeat !important;  background-size:100%;}


.pass_top1_tt {width:1400px; margin:0 auto; font-size:45px; color:#fff; font-weight:600; padding-top: calc(70px + 90px);}
.pass_top1_tt  span{font-size:25px; line-height:35px;}

.pass_top2_tt{width:1350px; margin:0 auto;  position:relative; }
.pass_top2_tt img{width:50%;}
.pass_top2_tt div{ position:absolute; width:70%; border:0px solid red; top:0px; right:0px; text-align: center;}

.pass_top2_tt1{color:#fff; font-weight:600; font-size:30px; padding-top:120px; line-height:65px;}
.pass_top2_tt2{   font-family: 'Paperozi'; color:#fff; font-weight:800; font-size:85px; font-style:italic; 
  text-shadow:5px 5px 10px rgba(0,0,0,0.1);   padding-bottom:20px;}
.pass_top2_tt3{display:inline-block; font-size:34px;   font-family: 'Paperozi';  font-weight:700; margin:0 auto;background:#FF0000; padding:10px 20px; border-radius: 7px; color:#fff;}
.pass_top2_tt3 span{color:#FFFF00; }


.pass_list{width:1400px; margin:0 auto; padding:90px 0px;  overflow: hidden;}
.pass_list_tt{font-size:28px; color:#000; font-weight:700; padding-bottom:25px;}
.pass_list_tt span{text-decoration:underline; color:#686868; font-size:16px; font-weight:500; float:right;}

.pass_list ul{width:100%; float:left;  border:0px solid red;}
.pass_list ul li{display: inline-block; float:left; width:31.333%; margin:1%; border:0px solid red; min-height:350px; }


.pass_list ul li span{color:#00AF58; font-size:18px; padding-left:12px; font-weight:500; border-left:1px solid #ccc;  }
.pass_list ul li img{width:100%; }
.pass_list_tt1{font-size:21px; color:#000; display: inline-block; padding-right:12px; font-weight:500; line-height:50px; }
.pass_list_tt2{float:right; color:#000; font-size:22px; font-weight:600; }
.pass_list_tt2 span{color:#C9C9C9 !important; font-size:17px !important; padding-right:10px;  text-decoration:line-through !important;border-left:0px solid #ccc !important; }
.pass_list_tt3{float:left; display:inline-block; padding:5px; background:#FF0000; color:#fff; font-weight:600; font-size:19px; border-radius:6px;}


.pass_banner{width:100%; padding:80px 0px;  text-align: center;  background:url('/skin/schoolc/html/img/sub_bg02.png')center  repeat;}
.pass_banner_tt{font-size:45px; font-weight:700; color:#000;}
.pass_banner_tt span{font-size:22px; font-weight:500; line-height:55px; }


.pass_banner1{width:100%; padding:80px 0px;  text-align: center;  background:url('/skin/schoolc/html/img/sub_bg03.png')center  repeat;}
.pass_banner1_tt{font-size:45px; font-weight:700; color:#fff;}
.pass_banner1_tt span{font-size:22px; font-weight:500; line-height:55px; }

.pass_banner2{width:100%; padding:80px 0px;  text-align: center;  background:url('/skin/schoolc/html/img/sub_bg04.png')center  repeat;}
.pass_banner2_tt{font-size:45px; font-weight:700; color:#fff;}
.pass_banner2_tt span{font-size:22px; font-weight:500; line-height:55px; }


.pass_banner3{width:100%; padding:80px 0px;  text-align: center;  background:url('/skin/schoolc/html/img/sub_bg07.png')center  repeat;  background-size:cover;}
.pass_banner3_tt{font-size:45px; font-weight:700; color:#fff;}
.pass_banner3_tt span{font-size:22px; font-weight:500; line-height:55px; }


.more_btn3{  display:inline-block;  border:0px solid red;    margin-top:35px;	  }
.more_btn3 a{margin: 0 auto !important;   display: block;  padding:20px 70px 20px 25px;
  border-radius:35px;  transition: all 0.4s ease; 
  border:1px solid #000; font-size:21px; font-weight:500; color:#fff;  background:#000 url('/skin/schoolc/html/img/arrow_03.png')no-repeat right top; 
  background-position-y:-8px;  }
.more_btn3 a:hover{color:#000; border:1px solid #000;background:#fff url('/skin/schoolc/html/img/arrow_02.png')no-repeat right top;  
  background-position-y:-8px;    }


.more_btn4{  display:inline-block;  border:0px solid red;    margin-top:35px;   }
.more_btn4 a{margin: 0 auto !important;   display: block;  padding:20px 70px 20px 25px;
  border-radius:35px;  transition: all 0.4s ease; 
  border:0px solid #000; font-size:21px; font-weight:500; color:#25A344;  background:#fff url('/skin/schoolc/html/img/arrow_05.png')no-repeat right top; 
  background-position-y:-8px;  }
.more_btn4 a:hover{color:#fff; border:0px solid #000; background:#25A344 url('/skin/schoolc/html/img/arrow_03.png')no-repeat right top;   
 background-position-y:-8px;    }



.pass_detail_top{width:1400px; margin:0 auto; border:0px solid red; padding:55px 0px 0px; overflow:hidden;}
.pass_detail_top ul{width:100%;}
.pass_detail_top ul li{display: inline-block; float:left; }
.pass_detail_top ul li:first-child{width:60%;}
.pass_detail_top ul li:last-child{width:40%; text-align: right; padding-right:4%; }

.pass_detail_top ul li:last-child img{width:80%;}

.pass_detail_tt1{font-size:16px; color:#C1C1C1;}
.pass_detail_tt2{color:#fff; font-size:45px; font-weight:700; line-height:75px; }
.pass_detail_tt3{color:rgba(250,250,250,0.7); font-size:22px; line-height:25px; margin-bottom:35px; }
.pass_detail_tt4{color:#FAB007; font-weight:700; font-size:21px; }
.pass_detail_tt4 span{color:#fff; font-weight:300;}
.pass_detail_tt5{padding:3px 5px; font-weight:600; background: #fff; 
  border-radius: 35px; color:#000; font-size:15px; display: inline-block; margin-top:5px;}

.bookimg{border-radius:15px; border:1px solid #ddd; margin-bottom:25px;
box-shadow: 5px 5px 20px rgba(0,0,0,0.05); }

/*
.pass_detail_con{width:1400px; margin:0 auto; border:0px solid red;  overflow:hidden; padding:80px 0px 0px;}
.pass_detail_conl{width:60%; position: relative; float:left;}
.pass_detail_conr{width:40%; position: relative; float:left; padding-left:3%;  }
*/

.pass_detail_con {
  width: 1400px;
  margin: 0 auto;
  border: 0px solid red;
  padding: 80px 0 0;
  overflow: visible; /* ✅ sticky 필수 조건 */
  display: flex;     /* ✅ float 대신 flex로 정렬 */
  align-items: flex-start;
}

.pass_detail_conl {
  flex: 0 0 60%;     /* 왼쪽 영역 */
}

.pass_detail_conr {
  flex: 0 0 40%;     /* 오른쪽 영역 */
  padding-left: 3%;
  position: sticky;  /* ✅ 스크롤 고정 핵심 */
  top: 90px;            /* 상단 고정 위치 */
}


.space{height:50px;}
.space1{height:80px;}


.pass_detail_con_tt1{width:100%; line-height:50px; font-size:30px; color:#000; font-weight:600;}
.pass_detail_con_tt1_1{float:right; font-size:16px; color:#000;}
.pass_detail_con_tt1_1 span{padding-right:10px; font-size:15px; color:#7E7E7E;}
.pass_detail_con_tt2{line-height:28px; font-size:18px; color:#1B1B1B; font-weight:400;}
.pass_detail_con_tt2 span{float:right;}

.pass_detail_con_tt3{padding:30px; border:1px solid #00AF58; border-radius: 25px; margin-top:15px; width:100%;}
.pass_detail_con_tt3 span{padding-left:35px; font-size:18px; line-height:29px; display: block;  color:#1B1B1B;
background: url('/skin/schoolc/html/img/icon_09.png')left no-repeat;  background-position-y:4px;}


.pass_detail_img{width:100%;}
.pass_detail_img img{width:100%;}


.pass_detail_box{width:90%; background: #fff; box-shadow: 10px 5px 35px rgba(0,0,0,0.10); border-radius:25px; padding:30px 30px; overflow:hidden; }
.pass_detail_box_tt1{ font-size:30px; color:#000; line-height:45px; font-weight:700; }
.pass_detail_box_tt2{font-size:19px; color:#7E7E7E; font-weight:400; }
.pass_detail_box_tt3{font-size:16px; color:#4E4E4E; font-weight:500; line-height:30px; padding-left:10px;  letter-spacing: -0.5px;
    background: url('/skin/schoolc/html/img/icon_10.png')left no-repeat;}
.pass_detail_box_tt4{font-weight:700; color:#000; font-size:28px; margin:20px 0px 20px; text-align:right; }
.pass_detail_box_tt4 span{color:#C9C9C9 !important; font-size:17px !important; padding-right:10px;  text-decoration:line-through !important;
  border-left: 0px solid #ccc !important;}

.pass_detail_box_tt5{font-weight:700; color:#00C932; font-size:28px; margin:0px 0px 20px; text-align:right; }
.pass_detail_box_tt5 span{color:#000 !important; font-size:27px !important; padding-right:10px; float:left;} 

.pass_detail_box dl{width:100%; float:left; margin-top:30px;  margin-bottom:20px;}

.pass_detail_box dl dt{width:25%; float:left;  font-size:19px;  font-weight:600; color:#000;}
.pass_detail_box dl dd{width:75%; float:left; font-size:19px;  font-weight:500; color:#1B1B1B}
.pass_detail_box dl dd span{display: block;font-size:16px;  font-weight:500; color:#00C932; line-height:26px; }

.pass_detail_box > dl:last-child{margin-top:0px !important;}


.book_con > dl  {width:100%; float:left; line-height:35px; bordeR:0px solid red; margin-top:20px !important; 
margin-bottom:20px !important; 
}
.book_con > dl > dt  {width:20% !important;   line-height:35px; float:left; font-size:18px;  font-weight:600; color:#000; } 
.book_con > dl > dd  {width:80% !important;  line-height:35px;  font-size:18px;  font-weight:400; color:#1B1B1B} 



.add_book{width:100%; border-top:1px solid #ddd;  border-bottom:0px solid #ddd;  margin-bottom:0px;  padding:15px 0px}
.add_book p{font-size:20px; font-weight:600; color:#000; line-height:35px;}
.add_book ul{width:100%;}
.add_book ul li{width:100%; margin-bottom:10px; line-height:24px; font-size:18px; color:#000;}
.add_book ul li span{float:right;}
.checkboxstyle{width:15px; height:15px; margin-right:5px;}
.option-label {
  cursor: pointer; /* 손가락 모양 커서 */
  display: flex;
  align-items: center;
  gap: 6px;
  font-size:16.5px;
}
.option-label span {
  margin-left: auto;
  font-weight: 500;
  color: #000;
  font-size:16.5px;
}




.pass_detail_btn{width:100%; line-height:65px; border-radius:10px; background:#00C932; color:#fff; font-weight:600; font-size:23px; }
.pass_detail_btn a{display:block; width:100%; text-align: center; color:#fff; font-weight:600; font-size:21px; }
.pass_detail_btn a:hover{}

.pass_detail_btn1{width:100%; line-height:75px; border-radius:10px; background:#00C932; color:#fff; font-weight:600; font-size:23px; }
.pass_detail_btn1 a{display:block; width:100%; text-align: center; color:#fff; font-weight:600; font-size:21px; }
.pass_detail_btn1 a:hover{}


.pass_detail_btn_w{width:100%; display: flex; justify-content: left; margin-top:3%; }
.pass_detail_btn_w div{margin-right:1.5%; width:25%; border:0px solid red; background: #F6F6F6; border-radius:8px;  text-align: center;}
.pass_detail_btn_w div a{display: block; padding:15px 10px; color:#1B1B1B; font-size:15.5px; transition: all 0.4s ease;}
.pass_detail_btn_w div a img{width:40%;}
.pass_detail_btn_w div:last-child{margin-right:0%; }
.pass_detail_btn_w div:first-child{background:#E6FFEC; }
.pass_detail_btn_w div a:hover{background:#E6FFEC;}


 /* --- 모두펼치기 버튼 --- */
  #toggleAllBtn {
    display:inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    border: 1px solid #888;
    background: #fff;
    cursor: pointer;
    border-radius: 4px;
    margin-bottom: 15px;
    font-size: 15px;
    user-select: none;
    transition: all 0.2s;
    color:#000000;
    font-size:17px;
    font-weight:500;
    float:right;
  }

  #toggleAllBtn:hover {
    background: #eaeaea;
  }

  /* --- 화살표 아이콘 (버튼용) --- */
  #toggleAllBtn::before {
    content: "";
    width: 14px;
    height: 14px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23000" stroke-width="2" viewBox="0 0 24 24"><path d="M9 6l6 6-6 6"/></svg>');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    transition: transform 0.2s;
  }

  /* 모두 접기 상태일 때 (아래 방향 화살표) */
  #toggleAllBtn.active::before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23000" stroke-width="2" viewBox="0 0 24 24"><path d="M6 9l6 6 6-6"/></svg>');
  }

  .accordion {
    width:100%;
    border: 1px solid #ccc;
    border-radius: 8px;
    overflow: hidden;
  }

  .item {
    border-bottom: 1px solid #ddd;
  }

  .header1 {
    display: flex;
    align-items: center;
    cursor: pointer;
    padding: 18px 16px;
    background: #f8f8f8;
    font-weight: bold;
    position: relative;
    transition: background 0.2s;
    color:#000;
    font-size:19px;
    font-weight:500;

  }
  .header1 span{position: absolute; right:15px; font-size:18px;}
  .header1:hover {
    background: #f0f0f0;
  }

  /* --- 화살표 아이콘 (아이템용) --- */
  .header1::before {
    content: "";
    width: 16px;
    height: 16px;
    margin-right: 8px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23000" stroke-width="2" viewBox="0 0 24 24"><path d="M9 6l6 6-6 6"/></svg>');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    transition: transform 0.2s;
  }

  .header1.active::before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23000" stroke-width="2" viewBox="0 0 24 24"><path d="M6 9l6 6 6-6"/></svg>');
  }

  /* ✅ 부드러운 열림/닫힘 효과 */
  .content {
    max-height: 0;
    overflow: hidden;
    background: #fff;
    padding: 0 0px;
   opacity: 0 !important;
  transition: max-height 0.5s ease, opacity 0.4s ease !important;
  }

  .content.show {
    max-height:100vh;
    padding: 0px 0px;
    opacity: 1 !important;
  }

    .content ul li{line-height:50px; border-bottom:1px solid #ddd; padding-left:15px; font-size:18px;}
    .content ul li a{font-size:17px;}
   .content ul li span{float:right;  padding-right:15px;}

  .item.hidden {
  /* display: none;  ← 이 줄 삭제 또는 주석처리 */
}

/* ✅ 대신 content만 숨기기 */
.item.hidden .content {
  display: none;
}

  :root {
    --star-size: 25px;        /* 🔹 절반 크기로 축소 */
    --star-bg: #d1d1d1;       /* 체크 전 회색 */
    --star-checked: #f5c518;  /* 체크 시 노란색 */
    --transition: 0.25s ease;
  }


  /* 숨긴 실제 체크박스 */
  .star-input {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    overflow: hidden;
  }

  /* 라벨 */
  .star-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    user-select: none;
  }

  /* SVG 별 */
  .star-svg {
    width: var(--star-size);
    height: var(--star-size);
    transition: transform var(--transition);
  }

  /* 기본 상태: 회색 실별 */
  .star-svg path {
    fill: var(--star-bg);
    stroke: none; /* 🔹 외곽선 제거 */
    transition: fill var(--transition);
  }

  /* 체크 시: 노란색 */
  .star-input:checked + .star-label .star-svg path {
    fill: var(--star-checked);
  }

  /* 호버 시 살짝 커지게 */
  .star-label:hover .star-svg {
    transform: scale(1.15);
  }

  .label-text {
    font-size: 18px;
  }







  /******강좌 css*****************/

  .tabs {
  height:30px;
  position: relative;

}
.tabs li {
  float: left;
  font-size: 20px;
  
  text-align: center;
  color: #999;
  
  position: relative;
}

.tabs li:first-child{padding-left:0px !important;}
.tabs li:last-child{border-right:0px solid #ccc;}
.tabs li a {
  display: block;
  padding:15px 20px;
  box-sizing: border-box;
  font-size: 20px;
  color: #1B1B1B;  
  font-weight:500;
  border-radius:35px; 
  margin-right:10px;
  background: #F6F6F6;
  
}
.tabs li a:hover {
  color: #1B1B1B;
  
  box-sizing: border-box;
  font-size:20px;
  font-weight:500;
  background: #FFEA73;
}
.tabs .active a {
   color: #000; 
  box-sizing: border-box;
  font-size:20px;
  font-weight:600;
  background: #FFEA73;
}

.tabs li.on{ color: #000; }

.tab_container {
  margin-top: 0px;
  padding: 15px 0 0 0px;
  border: 0px solid red;
  text-align: left; 
  border: 0px solid red;
}





.lecture_listwrap{width:1400px; margin:0 auto; border:0px solid red; padding:80px 0px;}
.lecture_list{width:100%; margin-top:0px; border-top:2px solid #DEDEDE; }

.lecture_list_rows{display: grid; grid-template-columns: 45% 15% 10% 10% 20%;
 justify-items: center; 
 border-bottom: 1px solid #DEDEDE;}

.rows_section1,.rows_section2,.rows_section3,.rows_section4{  
 
  display: flex; 
  align-items: center;
  justify-content: center; /* 가로중앙 */
  height: 100%; /* 균등한 높이 확보 */

}
.rows_section5{ padding:20px 10px; height:100%;}

.rows_section1{

  justify-content: flex-start !important;
  width:100%;
  padding-left:3%;
}  
.rows_section1 > div{display:block; border:0px solid red;  position: relative; margin-top:2%; }
.lecture_list_tt{font-size:20px; line-height:45px; color:#000; font-weight:600;}
.lecture_list_tt a{color:#000 !important;}

.rows_section2 p{color:#25A344; font-size:17px; font-weight:600;}

.rows_section3{ 
 display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

 }


/* 버튼 기본 스타일 */
.rows_section3 > button {
  border: 1px solid #ccc;
  background: #fff;
  padding: 5px 12px;
  border-radius:0px;
  cursor: pointer;
  transition: all 0.2s ease;
  position: relative;
  width: 80px;
   font-size:16.5px;


}

/* 버튼 간 살짝 겹치기 */
.rows_section3 button + button {
  margin-top: -1px; /* 겹치는 정도 (한 줄 정도) */
}

/* hover 시 부드럽게 */
.rows_section3 button:hover {
  background: #f9f9f9;
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.rows_section4{text-align: center; font-size:16px; }
.badge {
  position: relative;
   display:inline-block;
  color: #fff;
  font-size:17px;
  
}

.badge .black {background: #222;   padding:3px !important;   border-radius: 3px;}
.badge .red {background: #e53e3e;   padding:3px !important;   border-radius: 3px;}


.rows_section5 .option-row {
  display:block !important;
  width: 100%;
  border:0px solid red;
  text-align: right;
  line-height:29px;

}

.rows_section5 .option-row label {
   font-size: 17px;
  font-weight: 500;
  color: #333;

}

.rows_section5 .option-row input[type="checkbox"] {
  margin-right: 6px;
}

.option-row .price {
  font-size: 17px;
  font-weight: 500;
  color: #000;
  float:right;
  padding-left:35px;

}

.btn_area1{width:100%; text-align:right; margin-top:50px; height:auto;  margin-bottom:50px; }

.btn_style {
  
   display:inline-block;
  
  font-size:19px;
  font-weight:600;
  
}
.btn_style a{color: #fff;}
.btn_style .gray1 a {background: #7E7E7E;   padding:15px 25px !important;   border-radius: 3px;}
.btn_style .green a {background: #25A344;    padding:15px 25px !important;    border-radius: 3px;}


/***교재css****/
.book_list{width:100%; margin-top:0px; border:0px solid #DEDEDE; }
.book_list_rows{width:100%; border:0px solid red; overflow:hidden;}

.book_list_rows ul{width:100%; float:left;  }
.book_list_rows ul li{display: inline-block; float:left; width:32%; margin:0.5%; border:0px solid red; background:#FAFAFA; 
  padding:30px 25px; border-radius:10px; max-height:270px; }

.book_list_rows ul li > dl{width:100%; float:left;}
.book_list_rows ul li > dl dt{width:40%; float:left;}
.book_list_rows ul li > dl dd{width:60%;  position: relative; min-height:200px; border:0px solid red;
 float:left;}
.book_list_rows ul li > dl dt img{ width:90%; border-radius: 15px;
    border: 1px solid #ddd;
    margin-bottom: 25px;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.05);}
 .book_list_rows ul li > dl dd div{width:100%; border:0px solid red; }
  .book_list_rows ul li > dl dd div:first-child{text-align: right; margin-bottom:5px;}
 .book_list_rows ul li > dl dd div:last-child{position: absolute; bottom:0px; right:0px; text-align: right;
font-size:22px;
  font-weight:600; color:#000;}

 .book_list_tt1{font-size:20px; font-weight:600; color:#000; letter-spacing: -1px; margin-top:8px;}
.book_list_tt2{font-size:17px; font-weight:400; color:#1B1B1B; line-height:27px; margin-top:8px;}

.btn_style1{padding:5px; color:#fff; background:#000; display: inline-block; border-radius: 3px; font-size:16px;}
.btn_style2{padding:5px; color:#fff; background:#FF2516; display: inline-block; border-radius: 3px; font-size:16px;}
.btn_style3{padding:5px; color:#fff; background:#00C932; display: inline-block; border-radius: 3px; font-size:16px;}


/* 체크박스 스타일 */
input[type="checkbox"] {
  appearance: none; /* 기본 체크박스 제거 */
  width: 20px;
  height: 20px;
  border: 2px solid #777;
  border-radius: 4px;
  cursor: pointer;
  position: relative;
  transition: all 0.2s ease;
}

/* 체크 시 스타일 */
input[type="checkbox"]:checked {
  background-color: #000;
  border-color: #000;
}

input[type="checkbox"]:checked::after {
  content: "✔";
  position: absolute;
  top: 0;
  left: 3px;
  color: #fff;
  font-size: 14px;
}

label {
  font-size: 15px;
  cursor: pointer;
}


/***커리큘럼 css****/


.curri_visual{ position: relative; width:100%; height:830px; background: url(/skin/schoolc/html/img/kim_t02.png) center top no-repeat;
  

   background-size: 100%; /* 이미지 전체가 보이게 */
 
  display: flex;
  align-items: center;
  justify-content: flex-start; /* 왼쪽 정렬 (원하면 center로 변경 가능) */
  color: #fff;
  overflow: hidden;}


.text-box {
  position: relative;
  z-index: 2; /* 그라데이션 위로 */  
  
  width:1200px;
  margin:0 auto;
  height:100%;
}

.text-box h1 {
  width:100%;
  text-align:center;
  font-size:125px;
  font-weight: 800;
  margin: 0;
  color:#fff;
  border:0px solid red;
  line-height: 1.2;
  position: absolute;
  bottom:8%;
   font-family: 'Paperozi'; text-shadow:5px 5px 10px rgba(0,0,0,0.1); 
}

.text-box p {
  font-size: 40px;
  line-height: 1.5;
  margin-top:13%;
  color:#fff;
  padding-left:4%;
}
.text-box span{font-weight:700;}



.bbs_area{padding:100px 0px 60px; width:1400px; margin:0 auto;}
.curri_02{width:1400px; margin:0 auto;  border:0px solid red; padding:30px 0px 80px; overflow: hidden;}

.curri_tt1{font-weight:500; font-size:23px; color:#fff; line-height:33px; font-weight:500; margin-top:10px;}
.curri_tt2{font-weight:400; color:#4E4E4E; font-size:21px; line-height:30px; margin-top:55px;}


.curri_02_left{width:40%;  float:left;}
.curri_02_right{width:60%;  float:right;}

.curri_02_hugi_list { 
  display:block;  padding-bottom:1%;
}
.curri_02_right .curri_02_hugi_list .item1 { 
 display: inline-block;
 float:left;
  border-radius: 20px;
   
  align-items: center;
  justify-content: center;
  flex-shrink: 0; 
  background: #fff;
 width:47%; 
  margin:1.5%; 
  padding:35px; 
  box-shadow: 0px -4px 10px 10px rgba(0,0,0,0.02);
  min-height:265px;
}

.curri_02_right .curri_02_hugi_list .item1 .univname{display: block !important;}
.curri_02_right .curri_02_hugi_list .item1 .univname ul{bordeR:0px solid red; float:left; }
.curri_02_right .curri_02_hugi_list .item1 .univname ul li{display: inline-block; float:left; bordeR:0px solid red;} 
.curri_02_right .curri_02_hugi_list .item1 .univname ul li:first-child{padding-right:10px;}
.curri_02_right .curri_02_hugi_list .item1 .univname ul li p{font-size:15px; font-weight:600; line-height:20px; padding-top:7px;}
.curri_02_right .curri_02_hugi_list .item1 .univname ul li:first-child{padding-right:10px;}

.curri_02_right .curri_02_hugi_list .item1 .grade ul {float:right; bordeR:0px solid red;}
.curri_02_right .curri_02_hugi_list .item1 .grade ul li{display: inline-block; float:left;}
.exgrade{padding:5px !important;  line-height:20px !important;border-radius:4px; font-size:14px !important;  background:#AEAEAE; font-weight:600; color:#fff !important;}
.aftergrade{padding:5px !important;  line-height:20px !important;border-radius:4px; font-size:14px !important;  background:#25A344; font-weight:600; color:#fff !important;}
.curri_02_right .curri_02_hugi_list .grade ul li img{width:20px; padding-top:7px;}

.curri_02_right .curri_02_hugi_list .item1 p{padding-top:20px; font-size:19px; line-height:30px;  color: #000;}
.curri_02_right .curri_02_hugi_list .item1 p span{font-weight:700;}
.univname{float:left; }



.curri_03{width:1400px; margin:0 auto;  border:0px solid red; padding:100px 0px 80px; position: relative; display: block; overflow: hidden;}
.curri_03_left{width:50%;  float:left;}
.curri_03_right{width:50%;  float:right;}


.alignr{text-align:right;}
.imgwd100{width:100%;}
.imgwd90{width:90%;}
.imgwd80{width:80%;}
.imgwd70{width:70%;}

.target-container {
  display: flex;
  align-items: flex-start;
  gap: 30px; /* 제목과 내용 사이 간격 */
  margin-top:15%;
}

.target-title {
  font-size: 26px;
  font-weight: 700;
  flex-shrink: 0; /* 제목 영역 고정 */
  min-width: 100px;
  color:#1B1B1B;
}

.target-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.target-item {
  display: flex;
  align-items: flex-start;
  gap:8px;
  font-size: 21px;
  color: #000;
  font-weight: 500;
  line-height:33px;
}

.target-item img {
  width: 22px;
  height:22px;
  margin-top:6px;
}

@media (max-width: 640px) {
  .target-container {
    flex-direction: column;
    gap: 15px;
  }

  .target-title {
    font-size: 18px;
    margin-bottom: 5px;
  }

  .target-item {
    font-size: 15px;
  }

  .target-item img {
    width: 16px;
    height: 16px;
  }
}


/***게시판***/
.board_topwrap{border:0px solid red; width:100%; position: relative;}
.board_top1{width:100%; padding:70px 0px;  background: 
    rgba(255, 255, 255, 0.5)  /* 흰색 반투명 오버레이 */
    url(/skin/schoolc/html/img/sub_bg06.png) center/cover no-repeat;
  background-blend-mode: lighten; /* 또는 overlay, soft-light */
  background-size:cover;  overflow:hidden;}

.board_top1::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to right,
    rgba(255,255,255,0.8) 0%,   /* 왼쪽 흰색 */
    rgba(255,255,255,0) 20%,   /* 왼쪽 중간쯤 투명 */
    rgba(255,255,255,0) 80%,   /* 오른쪽 중간쯤 투명 */
    rgba(255,255,255,0.8) 100% /* 오른쪽 흰색 */
  );
  z-index: 1;
  pointer-events: none; /* 클릭 막히지 않게 */
}

.board_top_tt1{color:#00AF58; font-weight:600; font-size:27px; text-align: center;}
.board_top_tt2{font-weight:700; color:#1B1B1B; font-size:45px; line-height:70px;text-align: center;}

.btn_wrap1 {
  width: 100%;
  text-align: center;

}

.btn_list {
  display: flex;
  justify-content: center; /* ✅ 중앙 정렬 */
  gap: 12px;
  list-style: none;
  padding:70px 0px 60px !important;
  margin: 0 auto;
}

.btn_list li a {
  display: inline-block;
  padding: 17px 35px;
  border-radius: 999px;
  background:#F6F6F6; /* 기본 회색 */
  color: #4E4E4E;
  font-size: 21px;
  text-decoration: none;
  transition: all 0.3s ease;
}

/* 첫 번째 버튼 */
.btn_list li.active a {
  background: #FFEA73 !important;
  font-weight: 500;
   border-radius: 999px;

}

/* 마우스 오버 시 첫 번째 버튼 색상 */
.btn_list li a:hover {
  background: #FFEA73;
  color: #333;
}