/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.4.1755070141
Updated: 2025-08-13 07:29:01

*/
/* ------------------------------------------main----------------------------------------------------------------------------------- */
/* main-vis-con */
.main-vis-wrap
{position: relative;}
.visual-con
{position: absolute; top: 0; left: 0; width: 100%; z-index: 7;}
.visual-con .container
{display: flex; flex-direction: column;}

.main-vis-title-wrap 
{padding-top: 15rem;}
.main-vis-title-wrap h2
{font-size: 5.6rem; color: #fff; font-weight: 500; line-height: 1.5;}
.main-vis-title-wrap h2 b 
{font-weight: 700; color: #fff;}

.main-vis-slide-dots-con
{margin-left: auto; margin-top: 16.5rem;}
.main-vis-slide-dots-con .dots-wrap
{display: flex; gap: 3rem;}
.main-vis-slide-dots-con .dots-wrap .dot
{padding: 0 1rem; font-size: 2rem; color: #fff; font-weight: 500; padding-bottom: 0.5rem;}
.main-vis-slide-dots-con .dots-wrap .dot.active
{border-bottom: 2px solid #fff;}

.main-scroll-down-wrap
{display: flex; align-items: center; gap: 1rem; margin-top: 9rem;}
.main-scroll-down-wrap p
{font-size: 1.6rem; color: #fff; font-weight: 400; animation: scroll-move 1.5s infinite alternate ease-in-out;}
@keyframes scroll-move {
  0% {transform: translateY(-10px); opacity: 1;}
  100% {transform: translateY(15px); opacity: 0.2;}
}
.main-vis-btn-wrap
{position: absolute; bottom: 0; right: 0; width: 100%; z-index: 10;}
.main-vis-btn-wrap .full-container
{display: flex; justify-content: flex-end;}
.main-vis-btn-wrap .btn-item a
{position: relative; padding: 5rem; display: flex; align-items: center; gap: 2.5rem; transition: all 0.3s ease;}
.main-vis-btn-wrap .btn-item a::before
{opacity: 0; content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 90%; height: 85%; border-radius: 2rem; background-color: #f3f3f3; z-index: -1; transition: all 0.3s ease;}
.main-vis-btn-wrap .btn-item:nth-child(1) a
{padding-right: 6rem;}
.main-vis-btn-wrap .btn-item a p
{font-size: 2rem; font-weight: 600; color: #000; transition: all 0.3s ease;}

.main-vis-btn-wrap .btn-item a:hover::before
{opacity: 1;}
.main-vis-btn-wrap .btn-item a:hover
{transform: translateY(1rem);}
.main-vis-btn-wrap .btn-item a:hover p
{color: var(--main-color);}

.visual-slide-con 
{position: relative; z-index: 5;}
.visual-slide-wrap
{position: absolute; top: 0; left: 0; width: 100%;}

/* main-noti-con */
.main-notice-wrap 
{padding: 14rem 0;}
.main-notice-title-con
{display: flex; justify-content: space-between; align-items: center; padding-bottom: 7rem;}

.main-notice-title-con .main-title-wrap .main-title
{padding-right: 1rem;}
.main-notice-title-con .main-title-wrap .more i
{font-size: 3.4rem; color: #000; vertical-align: top; transition: transform 0.5s ease;}
.main-notice-title-con .main-title-wrap .more i:hover 
{transform: rotate(180deg);}

.main-notice-title-con .noice-tab-wrap
{display: flex; align-items: center;}
.main-notice-title-con .noice-tab-wrap .tab
{padding: 1rem 2.5rem; font-size: 1.8rem; font-weight: 600; border-radius: 3rem; background-color: transparent; transition: 0.3s ease;}
.main-notice-title-con .noice-tab-wrap .tab:hover
{color: #fff; background-color: #acacac;}
.main-notice-title-con .noice-tab-wrap .tab.active
{color: #fff; background-color: #000;}

/* main-gal-con */
.main-gallery-container
{background: url('/wp-content/uploads/2025/08/main-gallery-bg.jpg') no-repeat center center; background-size: cover; background-attachment: fixed;}
.main-gallery-wrap 
{padding: 14rem 0;}
.main-gallery-wrap .main-titie-wrap
{padding-bottom: 7rem; text-align: center;}

.notice-box-wrap
{display: flex; gap: 5rem;}
.notice-box-wrap .item
{position: relative; width: calc(25% - 4rem); transition: all 0.3s ease; z-index: 2;}
.notice-box-wrap .item a
{display: inline-block; width: 100%; height: 100%; padding-bottom: 2rem; border-bottom: 1px solid #bbbbbb;}
.notice-box-wrap .kboard-latest-title
{display: flex; align-items: center; height: 5rem; padding-left: 1rem; border-left: 3px solid #1d3557; transition: all 0.3s ease;}
.notice-box-wrap .kboard-latest-title .kboard-default-cut-strings
{ font-size: 2rem; font-weight: 600; color: #000; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;overflow: hidden; text-overflow: ellipsis; white-space: normal; transition: all 0.3s ease;}
.notice-box-wrap .kboard-latest-date
{display: inline-block; padding-left: 1rem; padding-top: 4rem; font-size: 1.6rem; font-weight: 500; color: #3b3b3b; transition: all 0.3s ease;}

.notice-box-wrap .item:hover
{transform: translateY(1rem);}
.notice-box-wrap .item:hover .kboard-latest-title .kboard-default-cut-strings
{color: var(--main-color);}
.notice-box-wrap .item:hover .kboard-latest-date
{opacity: 0.7;}
.notice-box-wrap .item:after
{opacity: 0; content: ""; position: absolute; top: -25px; left: -20px; width: 115%; height: 140%; border-radius: 2rem; background-color: #f3f3f3; z-index: -1; transition: all 0.3s ease;}
.notice-box-wrap .item:hover:after
{opacity: 1;}
.notice-box-wrap .item:hover .kboard-latest-title
{border-left: 3px solid var(--main-color);}

/* main-quick-con */
.main-quick-container
{background: url('/wp-content/uploads/2025/08/main-quick-bg.jpg') no-repeat center / cover;}
.main-quick-wrap 
{padding: 14rem 0;}
.main-quick-wrap .main-titie-wrap
{padding-bottom: 7rem; text-align: center;}
.quick-btn-wrap 
{display: flex; justify-content: space-between; gap: 6rem;}
.quick-btn-wrap .btn
{width: 25%; border-radius: 2rem; background-color: #f3f3f3;}
.quick-btn-wrap .btn a
{padding: 4rem 2rem; display: flex; flex-direction: column; align-items: center; gap: 2rem;}
.quick-btn-wrap .btn a .btn-name
{font-size: 2.2rem; font-weight: 600; transition: all 0.3s ease;}
.quick-btn-wrap .btn.active:hover
{transform: translateY(2rem); background-color: var(--main-color);}
.quick-btn-wrap .btn:hover .btn-name
{color: #fff;}

/* 갤러리 슬라이드 */
.gallery-btn-wrap
{padding-top: 5rem;}
.gallery-slide-btn-wrap
{display: flex; align-items: center; gap: 5rem;}

/* txt design */
.main-gallery-slide .title-wrap
{display: flex; padding: 2.5rem 1rem;}
.main-gallery-slide .kboard-oneticon-new-notify
{margin-right: 1rem;}
.main-gallery-slide .kboard-pure-gallery-cut-strings 
{width: 80%;}

/* 프로그레스바 */
.main-gallery-controls-progress 
{position: relative; width:100%; min-width:55.5rem; height:2px;}
.main-gallery-controls-progress .progressing-bar 
{position:absolute; width:0%; height:100%; background:#000; z-index:1;}
.main-gallery-controls-progress .progressing-bar.active 
{width:100%; transition:all 3s ease;}
.main-gallery-controls-progress .progress-bg-bar 
{width:100%; height:100%; background:#00000020; display:inline-block; position:absolute; top:0; left:0;}

/* 갤러리 슬라이드 버튼 */
.gallery-slide-btn-wrap ul
{display: flex; gap: 1rem; justify-content: flex-end;}
.gallery-slide-btn-wrap li
{position: relative; left: auto; right: auto; top: auto; display: block; margin: 0; width: 3rem; height: 3rem; cursor: pointer;}
.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after,.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after
{display: none;}
.gallery-slide-btn-wrap li:hover
{opacity: 0.6;}
.gallery-pause-wrap
{position: relative;}
.gallery-play
{position: absolute; left: 0;}

/* custom swiper */
#kboard-pure-gallery-list.kboard-pure-gallery-latest .main-gallery-slide .kboard-pure-gallery-list
{overflow: visible !important; margin: 0; margin-left: -6rem; padding: 0;}
#kboard-pure-gallery-list.kboard-pure-gallery-latest .main-gallery-slide .kboard-pure-gallery-list .kboard-list-item
{display: flex; flex-direction: column; justify-content: center; width: 44rem !important; height: 34rem; padding: 0; background: transparent; flex-shrink: 0;}
#kboard-pure-gallery-list.kboard-pure-gallery-latest .main-gallery-slide .kboard-pure-gallery-list .kboard-list-item .kboard-list-thumbnail
{height: 24rem !important; border-radius: 2rem;}

/* 갤러리 슬라이드 active */
.main-gallery-slide .kboard-list-item.swiper-slide-active .title-wrap
{width: 105%; margin: 0 -2.5%; padding: 4rem 2rem; background-color: #222222; border-radius: 1.5rem; transition: all 0.3s ease;}
.main-gallery-slide .kboard-list-item.swiper-slide-active .kboard-pure-gallery-cut-strings
{color: #fff;}
.main-gallery-slide .kboard-list-item.swiper-slide-active .kboard-list-thumbnail
{border-radius: 2rem 2rem 0 0 !important;}

/* main-banner-con */
.main-banner-container
{background-color: #222222;}
.main-banner-wrap
{padding: 2.5rem 0; display: flex; justify-content: space-between; align-items: center; gap: 2rem 12rem;}
.banner-left-wrap 
{display: flex; align-items: center; gap: 2.5rem;}
.banner-left-wrap h2
{color: #fff;}

.banner-slide-btn-wrap ul
{display: flex; gap: 1rem;}
.banner-slide-btn-wrap li
{width: 3rem; height: 3rem; cursor: pointer;}
.banner-slide-btn-wrap li:hover
{opacity: 0.6;}
.banner-pause-wrap
{position: relative;}
.banner-play
{position: absolute; left: 0;}

.banner-slide-wrap 
{width: 110rem;}
.banner-slide-wrap .slick-slide
{display: flex !important; justify-content: center;}

/* ------------------------------------------sub----------------------------------------------------------------------------------- */

/* 인사말 */
.greeting-con 
{display:flex;}
.greeting-txt-con 
{width:100%; margin-left: 7%;}
.greeting-txt-con h2 
{font-size: 3.3rem; color:#222; font-weight: 700; margin-bottom: 1rem;}
.greeting-txt-con h3
{font-size: 3rem; color:var(--main-color); font-weight: 700; margin-bottom: 4rem;}
.greeting-txt-con h3 span
{font-size: 3rem; color:white; background-color: var(--main-color); font-weight: 700; font-family: "NanumSquareNeo", sans-serif;}
.greeting-txt-con p
{margin-bottom: 2rem; font-size: 1.9rem; font-weight: 500; letter-spacing: -0.06rem; line-height: 1.8; color:#555;}
.greeting-txt-con p.thank-detail
{margin-top: 4rem; font-weight: 700; color: #222;}
.greeting-txt-con p .accent
{font-size: 2rem; line-height: 1.4; margin-bottom: 1.5rem; color:#333; font-weight: 700;}
.greeting-txt-con .sign
{text-align: end;}
.greeting-img-con 
{position: relative; width:45%;}
.greeting-img-con .img
{position: relative;}
.greeting-img-con .img::before
{content: ''; position: absolute; right: -2rem; bottom: -2rem; width: 100%; height: 100%; background: var(--main-color); z-index: -1; }
.greeting-img-con .img::after
{content: ''; position: absolute; right: -2rem; bottom: -2rem;  left: -2rem; top: -2rem; width: 100%; height: 100%;  border: 1.5px solid var(--main-color); z-index: 2; }
.greeting-img-con img 
{width: 100%; height: 100%; object-fit: cover;}

/* 오시는길 */
.map-con
{display: flex; flex-direction: column; gap: 4rem;}
.mapping-wrap
{border-radius: 3rem; overflow: hidden;}
.map-txt-con .detail-wrap
{display: flex; flex-flow: row wrap; gap: 2rem; justify-content: space-evenly;}
.map-txt-con .detail-wrap .item
{position: relative;}
.map-txt-con .detail-wrap .item.middle
{padding: 0 5rem; border-left: 2px dotted #d7d7d7; border-right: 2px dotted #d7d7d7;}
.map-txt-con .detail-wrap .detail-box
{display: flex; flex-direction: column; padding: 2rem 0;}
.map-txt-con .detail-wrap .detail-box .map-title-wrap
{display: flex; align-items: center; gap: 1.2rem; padding-bottom: 3rem;}
.map-txt-con .detail-wrap .detail-box .map-title-wrap .fa-solid
{font-size: 4rem; color: var(--main-color);}
.map-txt-con .detail-wrap .detail-box .map-title-wrap h3
{font-size: 2.4rem; font-weight: 800;}
.map-txt-con .detail-wrap .detail-box p
{padding-bottom: 1.5rem; font-size: 1.8rem; color: #777;}
.map-txt-con .detail-wrap .detail-box p:nth-last-child(1)
{padding-bottom: 0;}
.map-txt-con .detail-wrap .detail-box p .fa-solid
{vertical-align: middle;}

/* 조직 및 운영진 */
.sub-table-wrap .title h3
{position: relative; padding-left: 3.5rem; padding-bottom: 2rem; font-size: 2.8rem; font-weight: 700;}
.sub-table-wrap .title h3::before
{content: ""; position: absolute; left: 0; top: -1px; width: 3rem; height: 3rem; background: url('/wp-content/uploads/2025/08/sub-title-after.png') no-repeat center / contain;}

/* 정관 */
.chapter-wrap .chapter-title
{padding-bottom: 4rem; font-size: 3rem; font-weight: 800;}
.chapter-wrap .article 
{display: flex; flex-direction: column; gap: 4rem;}
.chapter-wrap  .article-title
{font-size: 2rem; color: var(--main-color);}
.chapter-wrap .article-content
{padding-top: 1.5rem; font-size: 1.8rem;}
.chapter-wrap .article-list
{padding: 3rem 0 0 1.5rem; display: flex; flex-direction: column; gap: 1.5rem;}
.chapter-wrap .article-list .article-list-item
{font-size: 1.6rem; line-height: 1.6; color: #666;}
.chapter-wrap .article-list .article-list-item.nbsp
{padding-left: 2rem;}

/* 연혁 */
.history-wrap .detail-wrap
{display: flex; flex-flow: row wrap; gap: 2rem; justify-content: space-between;}
.history-wrap .detail-wrap .item
{width: calc(25% - 2rem); padding: 4rem 2rem; border-radius: 3rem; background-color: #fff; border: 2px solid var(--main-color);}
.history-wrap .detail-wrap .detail-box
{display: flex; flex-direction: column; align-items: center;}
.history-wrap .detail-wrap .detail-box .map-title-wrap
{display: flex; align-items: center; gap: 1.2rem; padding-bottom: 3rem;}
.history-wrap .detail-wrap .detail-box .map-title-wrap .fa-solid
{font-size: 4rem; color: var(--main-color);}
.history-wrap .detail-wrap .detail-box .map-title-wrap h3
{font-size: 2.4rem; font-weight: 800;}
.history-wrap .detail-wrap .detail-box p
{padding-bottom: 1.5rem; font-size: 1.8rem; font-weight: 700; color: #666;}
.history-wrap .detail-wrap .detail-box p:nth-last-child(1)
{padding-bottom: 0;}
.history-wrap .detail-wrap .detail-box p .fa-solid
{vertical-align: middle;}

/* 수강신청 및 일정 */
.class-wrap .detail-row-con
{margin-bottom: 6rem;}
.class-wrap .detail-row-con .title-wrap
{margin-bottom: 4rem;}
.class-wrap .detail-row-con .title-wrap h2
{position: relative; padding-left: 3.5rem; font-size: 3.2rem; font-weight: 800;}
.class-wrap .detail-row-con .title-wrap h2::before
{content: ""; position: absolute; left: 0; top: -1px; width: 3rem; height: 3rem; background: url(/wp-content/uploads/2025/08/sub-title-after.png) no-repeat center / contain;}

.box-list-con ul 
{display: flex; flex-flow: row wrap; gap: 6rem; justify-content: space-between;}
.box-list-con ul li 
{padding: 3rem; width: calc((100% - (6rem * 2)) / 3); border: 1px solid #ddd;}
.box-list-con .tit 
{position: relative; padding-left: 1rem; margin-bottom: 2rem; font-size: 2.4rem; font-weight: 700; color: #333;}
.box-list-con .tit:before 
{content: ''; position: absolute; left: 0; width: 0.5rem; height: 100%; background: var(--main-color);}
.box-list-con .txt 
{font-size: 1.8rem; color: #6b6b6b; font-weight: 600; font-family: 'pretendard' !important;}

/* 강좌소개 */
.class-intro-wrap .box-list-wrap 
{margin-bottom: 5rem; display: flex; gap: 5rem; flex-flow: row wrap;}
.class-intro-wrap .box-list-wrap .box 
{width: calc((100% - (5rem * 2)) / 3); border: 1px solid #ddd;}
.class-intro-wrap .box-list-wrap .box .img 
{width: 100%; height: 30rem; background-color: #ececec;}
.class-intro-wrap .box-list-wrap .box .img img 
{width: 100%; height: 100%; object-fit: contain;}
.class-intro-wrap .box-list-wrap .box .detail-con 
{padding: 2.5rem 2rem; display: flex; flex-direction: column; gap: 1.2rem;}
.class-intro-wrap .box-list-wrap .box .detail-con .attr 
{display: flex; gap: 1.2rem; align-items: center;}
.class-intro-wrap .box-list-wrap .box .detail-con .attr .name 
{width: 18%; font-size: 1.7rem; font-weight: 700; color: #333;}
.class-intro-wrap .box-list-wrap .box .detail-con .attr-title .value
{padding-bottom: 1rem; font-size: 2rem; font-weight: 800; color: #222;}
.class-intro-wrap .box-list-wrap .box .detail-con .attr .value 
{font-size: 1.7rem; font-weight: 600; color: #6b6b6b;}
.class-intro-wrap .box-list-wrap .box .detail-con .attr .value .day
{padding-right: 0.7rem; font-weight: 700; font-family: "NanumSquareNeo", sans-serif;}

/* 부설기관 */
.organization-wrap 
{margin-bottom: 5rem;}
.organization-wrap .img 
{border-radius: 2rem; overflow: hidden;}
.organization-wrap .page-detail-wrap 
{padding: 4rem; border-radius: 2rem; border: 1px solid #e8e8e8; background-color: #f2f2f2;}
.organization-wrap .page-detail-wrap .titie
{display: inline-block; padding: 0.5rem; margin-bottom: 1.5rem; font-size: 2rem; font-weight: bold; color: #fff; background-color: var(--main-color);}
.organization-wrap .page-detail-wrap p 
{padding-bottom: 1.5rem; font-size: 1.8rem; line-height: 1.8; color: #555;}
.organization-wrap .page-detail-wrap p:nth-last-of-type(1)
{padding-bottom: 0;}

/* e-book design02 */
.e-book-page .class-wrap 
{margin-top: 10rem;}
.class-intro-wrap .box-list-wrap .box .img a 
{display: block; width: 100%; height: 100%;}
.e-book-page .class-intro-wrap .box-list-wrap .box .img 
{height: 40rem;}