/*
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.5.1762926212
Updated: 2025-11-12 05:43:32

*/

/* main-visual-con */
.visual-wrap 
{padding: 7rem 0; display: flex; justify-content: space-between;}
.visual-wrap .vis-left 
{width: 50%; position: relative;}
.visual-wrap .vis-left .vis-txt-con 
{padding-top: 6rem;}
.visual-wrap .vis-left .vis-txt-con .vis-detail 
{font-size: 3.2rem; font-weight: 600; color: #1c2e90;}
.visual-wrap .vis-left .vis-txt-con .vis-title 
{padding: 3rem 0 9rem; font-size: 4.2rem; font-weight: 600; color: var(--txt-color); line-height: 1.4;}

/* pagination dots */
.vis-dot-con
{position: relative;}
.vis-dot-con .swiper-pagination
{position: relative; display: flex; align-items: center; gap: 2.5rem; z-index: 1;}
.vis-dot-con .swiper-pagination-bullet 
{position: relative; margin: 0 !important; width: 6px; height: 6px; background-color: #101010 !important; opacity: 1 !important; transition: all 0.1s;}

/* 게이지 */
.vis-dot-con .progress 
{opacity: 0; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-90deg); z-index: 5;}
.vis-dot-con .bg-circle 
{fill: none; stroke: #b7b7b7; stroke-width: 3; stroke-linecap: round;}
.vis-dot-con .circle-origin
{fill: transparent; stroke: #101010; stroke-width: 3; stroke-linecap: round; stroke-dasharray: 84.78px; stroke-dashoffset: 84.78px;}

@keyframes gauge {
  0% {stroke-dashoffset: 84.78px;}
  90% {stroke-dashoffset: 0;}
  100% {stroke-dashoffset: -84.78px;}
}

/* 활성화 */
.vis-dot-con .swiper-pagination-bullet.swiper-pagination-bullet-active
{background-color: #00000000 !important;}
.vis-dot-con .swiper-pagination-bullet.swiper-pagination-bullet-active .progress
{opacity: 1 !important;}
.vis-dot-con .swiper-pagination-bullet.swiper-pagination-bullet-active .circle-origin
{animation: gauge 8s linear infinite;}

.visual-wrap .vis-left .vis-left-before-txt 
{position: absolute; bottom: 0; left: 0; font-size: 16.5rem; font-weight: 900; color: #00000009; letter-spacing: 0.1rem;}
.visual-wrap .vis-right 
{width: 50%; position: relative; z-index: 2;}

.visual-wrap .vis-right::before,.visual-wrap .vis-right::after
{content: ""; position: absolute; display: block;}
.visual-wrap .vis-right::before
{top: -55%; left: -25%; width: 56rem; height: 56rem; border: 1px solid #1d7746; border-radius: 50rem;}
.visual-wrap .vis-right::after
{bottom: -4rem; right: -4rem; width: 15rem; height: 15rem; background-color: #c7d5fe; border-radius: 50rem; z-index: -1;}

.visual-wrap .vis-right .visual-slide-wrap 
{border-radius: 2rem; overflow: hidden;}

/* mian-quick-con */
.main-quick-con
{background-color: var(--sub-color);}
.quick-wrap 
{padding: 6rem 0; display: flex; align-items: center; justify-content: space-between;}
.quick-wrap .quick-left .title 
{font-size: 4rem; color: #fff; font-weight: 700; line-height: 1.4; letter-spacing: -0.14rem;}
.quick-wrap .quick-right .quick-btn-wrap 
{display: flex; gap: 2rem 12.5rem; align-items: center;}
.quick-wrap .quick-right .quick-btn-wrap .quick-btn
{transition: all 0.3s ease;}
.quick-wrap .quick-right .quick-btn-wrap .quick-btn:hover
{transform: translateY(-2rem);}
.quick-wrap .quick-right .quick-btn-wrap .quick-btn .btn-icon 
{display: flex; justify-content: center; align-items: center; width: 12rem; height: 12rem; border-radius: 4rem; background-color: #fff;}
.quick-wrap .quick-right .quick-btn-wrap .quick-btn .btn-name 
{padding-top: 1.5rem; font-size: 2rem; color: #fff; font-weight: 500; text-align: center;}

/* main-notice-con */
.more 
{width: 5rem; height: 5rem;box-shadow: 0px 3px 10px #00000030; border-radius: 2rem; background-color: var(--main-color); transition: all 0.3s ease;}
.more a
{display: flex; justify-content: center; align-items: center; width: 100%; height: 100%;}
.more i
{color: #fff; font-size: 1.8rem; font-weight: 900;}
.more:hover
{background-color: #555555;}

.notice-wrap 
{padding: 9.5rem 0;}
.notice-wrap .notice-title-wrap 
{padding-bottom: 6rem; display: flex; justify-content: space-between; align-items: center;}
.notice-wrap .notice-title-wrap .notice-titie-left
{display: flex; align-items: center;}
.notice-wrap .notice-title-wrap .title 
{font-size: 4rem; color: var(--txt-color); font-weight: 700;}

.notice-wrap .notice-title-wrap .notice-tab-con .tab-btn-wrap 
{display: flex; align-items: center; gap: 2rem 4rem; padding-left: 5.5rem;}
.notice-wrap .notice-title-wrap .notice-tab-con .tab-btn-wrap .tab-btn
{position: relative;}
.notice-wrap .notice-title-wrap .notice-tab-con .tab-btn-wrap .tab-btn::before
{content: ""; position: absolute; top: 50%; right: -2.5rem; transform: translate(-50%, -50%); width: 4px; height: 4px; background-color: #767676; border-radius: 2rem;}
.notice-wrap .notice-title-wrap .notice-tab-con .tab-btn-wrap .tab-btn:nth-last-of-type(1):before
{display: none;}
.notice-wrap .notice-title-wrap .notice-tab-con .tab-btn-wrap .tab-btn a 
{font-size: 2.4rem; color: #767676; font-weight: 500; transition: all 0.3s ease;}
.notice-wrap .notice-title-wrap .notice-tab-con .tab-btn-wrap .tab-btn.active a ,.notice-wrap .notice-title-wrap .notice-tab-con .tab-btn-wrap .tab-btn:hover a
{font-weight: 600; color: #555555;}

/* 추출 */
.notice-wrap .notice-box .notice-box-wrap
{display: flex; gap: 2.5rem;}
.notice-wrap .notice-box .notice-box-wrap li
{width: 25%;  border: 1px solid #e5e5e7; box-shadow: 0 0 15px #00000015; border-radius: 1rem;}
.notice-wrap .notice-box .notice-box-wrap li a
{display: block; width: 100%; height: 100%; max-height: 29.5rem; padding: 4.5rem 3rem; overflow: hidden;}
.notice-wrap .notice-box .notice-box-wrap li a .kboard-latest-title
{margin-bottom: 2.5rem; border-bottom: 1px solid #e5e5e7;}
.notice-wrap .notice-box .notice-box-wrap li a .kboard-latest-date
{position: relative; font-size: 2rem; font-weight: 600; color: var(--main-color);}
.notice-wrap .notice-box .notice-box-wrap li a .kboard-latest-date::after
{content: ""; position: absolute; top: 50%; right: -1.5rem; transform: translateY(-50%); width: 6px; height: 6px; background-color: var(--main-color); border-radius: 1rem;}
.notice-wrap .notice-box .notice-box-wrap li a .kboard-default-cut-strings
{padding: 2.5rem 0;}
.notice-wrap .notice-box .notice-box-wrap li a .kboard-default-cut-strings .title
{font-size: 2.2rem; font-weight: 600; line-height: 1.4; display: -webkit-box; -webkit-box-orient: vertical; text-overflow: ellipsis; overflow: hidden;  -webkit-line-clamp: 2;}
.notice-wrap .notice-box .notice-box-wrap li a .detail-box .detail
{font-size: 1.6rem; font-weight: 400; color: #767676; line-height: 1.46; display: -webkit-box; -webkit-box-orient: vertical; text-overflow: ellipsis; overflow: hidden;  -webkit-line-clamp: 2;}

.notice-wrap .notice-box .notice-box-wrap li a .detail-box
{max-height: 6rem; overflow: hidden;}

/* main-gallery-con */
.main-gallery-con 
{background: url(/wp-content/uploads/2025/11/main-gal-sec-bg.jpg) no-repeat center / cover; border-radius: 0 0 0 15rem;}
.gallery-wrap 
{padding: 17rem 0; position: relative; overflow: hidden;}
.gallery-title-wrap .title-wrap
{padding-bottom: 3.5rem; display: flex; align-items: center; gap: 2rem 3rem;}
.gallery-title-wrap .title-wrap .title
{font-size: 4rem; color: #fff; font-weight: 700;}
.gallery-title-wrap .detail-box .detail
{font-size: 2rem; color: #fff; line-height: 1.6; letter-spacing: -0.05rem;}

/* 모듈 */
.gallery-wrap .gallery-slide-wrap
{position: absolute; left: 42%; top: 50%; transform: translateY(-50%) !important; width: 112rem;}
#kboard-pure-gallery-list-gym.kboard-pure-gallery-latest .kboard-pure-gallery-list 
{overflow: visible !important;}
#kboard-pure-gallery-list-gym.kboard-pure-gallery-latest .kboard-list-item
{width: 41rem; margin: 0; padding: 0 !important;}
#kboard-pure-gallery-list-gym.kboard-pure-gallery-latest .kboard-list-item a
{background-color: transparent !important; overflow: visible !important;}
#kboard-pure-gallery-list-gym.kboard-pure-gallery-latest .kboard-list-item a .kboard-list-thumbnail
{height: 29rem !important; border-radius: 1rem;}
#kboard-pure-gallery-list-gym.kboard-pure-gallery-latest .kboard-list-item .main-gal-slide-titie-wrap
{padding-top: 2.5rem; display: flex; gap: 1rem; align-items: center;}
#kboard-pure-gallery-list-gym.kboard-pure-gallery-latest .kboard-pure-gallery-cut-strings
{display: flex; align-items: center; gap: 2rem;}
#kboard-pure-gallery-list-gym.kboard-pure-gallery-latest .kboard-pure-gallery-cut-strings .date
{position: relative; font-size: 2rem; font-weight: 500; color: #fff;}
#kboard-pure-gallery-list-gym.kboard-pure-gallery-latest .kboard-pure-gallery-cut-strings .date::before
{content: ""; position: absolute; top: 45%; right: -1.3rem; width: 6px; height: 6px; background-color: var(--main-color); border-radius: 1rem;}
#kboard-pure-gallery-list-gym.kboard-pure-gallery-latest .kboard-pure-gallery-cut-strings .title
{font-size: 2rem; font-weight: 500; color: #fff; letter-spacing: -0.05rem; display: -webkit-box; -webkit-box-orient: vertical; text-overflow: ellipsis; overflow: hidden; -webkit-line-clamp: 1;}

/* main-intro-con */
.intro-wrap 
{padding: 8rem 0; display: flex; justify-content: space-between; align-items: center; overflow: hidden;}
.intro-wrap .intro-left
{position: relative; z-index: 2; width: 114rem; height: 44rem; background: url(/wp-content/uploads/2025/11/main-intro-sec-bg.jpg) no-repeat center / cover; border-radius: 0 20rem 20rem 0;}
.intro-wrap .intro-right
{position: relative; width: calc(100vw - 128rem); padding: 16rem 0;}
.intro-wrap .intro-right::before
{content: ""; position: absolute; z-index: 1; top: 0; right: 0; width: calc(100% + 30rem); height: 100%; border-radius: 30rem 0 0 30rem; background-color: #f1fafb;}
.intro-wrap .intro-right::after
{content: ""; position: absolute; top: 50%; transform: translateY(-50%); right: -2px; width: calc(100% + 33rem); height: 110%; border-radius: 30rem 0 0 30rem; border: 2px dotted #757575;}
.intro-wrap .intro-title-wrap
{position: relative; z-index: 3;}
.intro-wrap .title-wrap
{padding-bottom: 3.5rem; display: flex; align-items: center; gap: 2rem 3rem;}
.intro-wrap .title-wrap .title
{font-size: 4rem; color: var(--txt-color); font-weight: 700;}
.intro-wrap .detail-box .detail
{font-size: 2rem; color: #767676; line-height: 1.6; letter-spacing: -0.05rem;}

/* =========================sub-page========================= */

/* 인사말 */
.sub-content.greeting .sub-title h2 ,.sub-content.greeting .sub-title h2 .point
{line-height: 1.3em; letter-spacing: -0.24rem; font-weight: 800; font-family: 'pretandard';}
.sub-content.greeting .sub-title h2 .point
{color: var(--sub-color);}
.sub-content.greeting .sub-con
{position: relative;}
.sub-content.greeting .sub-con::before
{content: ""; position: absolute; top: 15%; left: 0; width: 100%; height: 105%; background-color: #f2f2f2; z-index: -1;} 
.sub-content.greeting .sub-con::after
{content: ""; position: absolute; top: 63%; left: 50%; transform: translate(-50%,-50%); width: 50rem; height: 30rem; z-index: 0; background: url(/wp-content/uploads/2025/11/html-bg.png) no-repeat center / cover;}
.greeting-wrap
{position: relative; z-index: 2;}
.greeting-img-con 
{position: relative; text-align: center; padding-bottom: 7rem;}
.greeting-img-con .img
{position: relative;}
.greeting-img-con .img img
{height: 25rem;}
.greeting-txt-con 
{text-align: center;}
.greeting-txt-con h2 
{font-size: 2.8rem; color:#222; font-weight: 700; line-height: 2;}
.greeting-txt-con h3
{margin-bottom: 2rem; font-size: 3rem; color:#101010; letter-spacing: -0.055em; line-height: 1.4em; font-weight: 700; }
.greeting-txt-con p
{padding-top: 3rem; font-size: 2rem; color: #222; font-weight: 500; letter-spacing: -0.055em; line-height: 1.6;}
.greeting-txt-con p:nth-last-child(1)
{margin-top: 1rem; font-weight: bold; line-height: 1.4;}

/* 찾아오시는길 */
.location-con .root_daum_roughmap 
{width: 100% !important;}
.location-con .cont 
{display: none;}
.location-con .location-wrap 
{padding: 4rem; border: 1px solid #d4dfe4;}
.location-con .location-wrap .adress-top
{padding-bottom: 4rem; text-align: center;}
.location-con .location-wrap .adress-top .adress
{padding-bottom: 1rem; font-size: 3rem; font-weight: 600; letter-spacing: -0.16rem; line-height: 1.6;}
.location-con .location-wrap .adress-top .tel-wrap
{display: flex; gap: 2rem; justify-content: center; align-items: center;}
.location-con .location-wrap .adress-top .tel-wrap li
{font-size: 2rem; font-weight: 500; letter-spacing: -0.14rem; line-height: 1.6; color: #555;}
.location-con .location-wrap .adress-bottom .traffic-wrap
{display: flex; justify-content: space-between; align-items: stretch;}
.location-con .location-wrap .adress-bottom .traffic-wrap li
{padding: 4rem; display: flex; gap: 2rem; width: 100%; background-color: #f0faff; border-right: 2px dotted #d4dfe4;}
.location-con .location-wrap .adress-bottom .traffic-wrap li:nth-last-of-type(1)
{border-right: 0;}
.location-con .location-wrap .adress-bottom .traffic-wrap li i
{font-size: 4rem; color: #0053b8;}
.location-con .location-wrap .adress-bottom .traffic-wrap li .title-wrap .title 
{padding-bottom: 1rem; font-size: 2.4rem; font-weight: 600;}
.location-con .location-wrap .adress-bottom .traffic-wrap li .title-wrap .detail 
{font-size: 1.7rem; color: #444; font-weight: 500; line-height: 1.6; letter-spacing: -0.14rem; font-family: 'pretandard';}

/* 설립목적 및 구성 */
.purpose-wrap .title-wrap 
{padding-bottom: 2rem; margin-bottom: 2.5rem; border-bottom: 1px solid #ddd;}
.purpose-wrap .title-wrap i
{padding-right: 3rem; color: var(--sub-color); font-size: 3rem; object-position: center;}
.purpose-wrap .title-wrap .title 
{display: inline-block; font-size: 3rem; font-weight: 700;}
.purpose-wrap .detail-wrap .detail
{font-size: 1.8rem; color: #444; letter-spacing: -0.14rem; line-height: 1.6; font-family: 'pretandard';}
.purpose-wrap .detail-wrap .detail-box-wrap
{display: flex; justify-content: space-between; border: 1px solid #d4dfe4; border-radius: 2rem; overflow: hidden;}
.purpose-wrap .detail-wrap .detail-box-wrap .box 
{width: 100%; display: flex; flex-direction: column;}
.purpose-wrap .detail-wrap .detail-box-wrap .box .title 
{padding: 2rem; font-size: 2rem; color: #fff; letter-spacing: -0.14rem; line-height: 1.4; text-align: center; background-color: #0053b8; }
.purpose-wrap .detail-wrap .detail-box-wrap .box:nth-child(even) .title
{background-color: #008aba;}
.purpose-wrap .detail-wrap .detail-box-wrap .box .box-de-detail-wrap
{padding: 2rem; height: 100%; background-color: #fff;}
.purpose-wrap .detail-wrap .detail-box-wrap .box:nth-child(even) .box-de-detail-wrap 
{background-color: #f0faff;}
.purpose-wrap .detail-wrap .detail-box-wrap .box .box-de-detail-wrap li 
{position: relative; padding-left: 1rem; font-size: 1.7rem; letter-spacing: -0.12rem; font-weight: 400; color: #444; line-height: 1.6; font-family: 'pretandard';}
.purpose-wrap .detail-wrap .detail-box-wrap .box .box-de-detail-wrap li::before
{content: ""; position: absolute; top: 1.35rem; left: 0; width: 5px; height: 2px; background-color: #888;}
.purpose-wrap .txt-box
{margin-top: 2rem;}
.purpose-wrap .txt-box p 
{font-size: 1.7rem; font-weight: 500; letter-spacing: -0.15rem;}

/* 종목별 소개 */
.event-con .event-wrap
{display: flex;}
.event-con .event-wrap .img-wrap
{width: 45%; height: 100%; box-shadow: 0 0 10px #00000020; border-radius: 1rem; overflow: hidden;}
.event-con .event-wrap .event-info-con
{width: 55%; padding-left: 6rem;}
.event-con .event-wrap .img-wrap .img
{height: 40rem;}
.event-wrap .event-info-con .title-wrap
{display: flex; flex-direction: column; padding-bottom: 2rem; margin-bottom: 3rem; border-bottom: 1px solid #ddd;}
.event-wrap .event-info-con .title-wrap .club-con 
{display: flex; justify-content: flex-end; gap: 1rem; align-items: center;}
.event-wrap .event-info-con .title-wrap .club-con .club-wrap 
{display: flex; align-items: center; background-color: #eee; border-radius: 2rem; overflow: hidden;}
.event-wrap .event-info-con .title-wrap .club-con .club-wrap .detail-name 
{width: 8rem; padding: 1rem 0; font-size: 1.6rem; text-align: center; font-weight: 600; color: #fff; background-color: var(--sub-color); border-radius: 2rem;}
.event-wrap .event-info-con .title-wrap .club-con .club-wrap .detail-value 
{padding: 0 1.5rem; font-size: 1.6rem; font-weight: 500;}

.event-wrap .event-info-con .event-info-tit 
{font-size:3.2rem; font-weight: 800;}
.event-wrap .event-info-con .event-info 
{display: flex; flex-direction: column; gap: 1rem;}
.event-wrap .event-info-con .event-info dl
{display: flex; align-items: stretch; gap: 2rem; background-color: #fff; border-radius: 5px; border: 1px solid #ddd; overflow: hidden;}
.event-wrap .event-info-con .event-info .detail-name
{display: flex; justify-content: center; align-items: center; width: 20%; padding: 1rem; font-size: 1.8rem; color: #fff; font-weight: 600; background-color: var(--sub-color);}
.event-wrap .event-info-con .event-info .detail-value
{display: flex; flex-flow: row wrap; align-items: center; font-size: 1.8rem; color: #444; font-weight: 500;}
.event-wrap .event-info-con .event-info .detail-value p,.event-wrap .event-info-con .event-info .detail-value p a
{font-size: 1.8rem; color: #444; font-weight: 500; font-size: 1.8rem;}
.event-wrap .event-info-con .event-info .detail-value p a:hover
{border-bottom: 1px solid var(--main-color); color: var(--main-color);}

.event-detail-wrap 
{margin: 6rem 0; padding: 4rem; background:#f0f3f5;  border-radius: 1rem;}
.event-detail-wrap .detail-tit-con 
{margin-bottom: 2rem;}
.event-detail-wrap .detail-tit-con h4 
{position: relative; padding-left: 3rem; font-size: 2.3rem; color:#222; font-weight: 700;}
.event-detail-wrap .detail-tit-con h4:before 
{content:'\f5ad'; position: absolute; left:0; top: 50%; transform: translateY(-50%); font-size: 2rem; color: var(--main-color); font-family: "Font Awesome 7 Free"}
.event-detail-wrap .detail-txt-con p 
{font-size:1.7rem; font-weight: 400; color: #333; line-height: 1.8;}

/* 연혁 */
.history-wrap .history-list 
{width: calc(100% - 24rem);}
.history-wrap .history-item 
{position: relative; display: flex;}
.history-wrap .history-item:last-child 
{border-bottom: 2px solid #e4e4e4;}
.history-wrap .history-item .history-year 
{width: 30%; min-height: 15rem; padding-top: 2.5rem; font-size: 4.5rem; font-weight: bold; border-top: 3px solid #333; }
.history-wrap .history-item.active .history-year 
{border-top: 3px solid var(--main-color); color: var(--main-color);}

.history-wrap .history-item .history-detail-list 
{display: flex; flex-flow: column; width: 70%; border-top: 2px solid #e4e4e4;}
.history-wrap .history-item .history-detail-item 
{padding: 2.5rem 0; display: flex;}
.history-wrap .history-item .history-detail-item:not(:last-child) 
{border-bottom: 1px solid #e4e4e4;}
.history-wrap .history-item .history-detail-item .item-date 
{position: relative; width: 12rem; padding-left: 4.5rem; font-size: 1.8rem; font-weight: bold; line-height: 1.5;}
.history-wrap .history-item .history-detail-item .item-date::after 
{content: ''; display: block; position: absolute;  left: 2rem; top: 1rem; width: 8px; height: 8px; border-radius: 50%; background: #333;}
.history-wrap .history-item .history-detail-item .item-txt 
{width: auto; font-size: 1.8rem; font-weight: 400; line-height: 1.5;}

/* 조직도 */
.organization-chart-con
{width:100%; text-align:center; margin-bottom:5rem; background:#f4f4f4; padding:8rem; border-radius:15px; border:1px solid #eee;}
.organization-chart-con .info-box 
{ margin-bottom:3rem;}
.organization-chart-con .info-box span
{background:var(--sub-color); padding:1rem 5rem; font-size:1.8rem; color:#fff; display:inline-block;}
.organization-chart-con .detail-txt 
{margin-bottom:3rem; font-size:2rem; font-weight:500; color:#000; text-decoration:underline;}
.organization-chart
{position:relative;}
.organization-chart .depth1 a
{ width:20rem; text-align:center; background:var(--main-color); display:inline-block; padding:2rem 0; font-size:2rem; color:#fff;}
.organization-chart .depth1
{margin-bottom: 5rem;}
.organization-chart .depth1 a:before
{content:''; position:absolute; width:1px; height: 24%; bottom: 10.5rem; background:#ddd; left:50%;}
.organization-chart .depth1 a b
{color: #fff;}

.organization-chart .depth1-5
{position:absolute; width:50%; right:0; z-index:0;}
.organization-chart .half-organ-con 
{display:flex; flex-direction:column; position:relative; padding-left:30rem; margin-top:-3rem;}
.organization-chart .half-organ-con:before 
{content:''; position:absolute; width:30rem; height:1px; background:#ddd; left:0; top:50%;}
.organization-chart .half-organ-con:after 
{content:''; width:1px; height:100%; background:#ddd; position:absolute; left:30rem;}
.organization-chart .half-organ-con span 
{padding-left:10rem; position:relative; text-align:left; top:-28px;}
.organization-chart .half-organ-con span:before
{content:''; position:absolute; left:0; width:10rem; background:#ddd; height:1px; top:50%;}
.organization-chart .half-organ-con span a 
{font-size:1.5rem; background:var(--sub-color); padding:2rem 5rem; display:inline-block; color:#fff;}
.organization-chart .half-organ-con span a:hover 
{color:#fff;}
.organization-chart .half-organ-con span:nth-child(2)
{top:28px;}

.organization-chart .depth2
{padding-top:5rem; padding-bottom: 5rem; display:flex; justify-content:space-around; position:relative;}
.organization-chart .depth2 a:after 
{content: ''; position: absolute; width: 1px; height: 5rem; background: #ddd; left: 50%; bottom: 6rem;}
.organization-chart .depth2 a
{position:relative; width:18rem; display:inline-block; padding:2rem; text-align:center; border:2px solid var(--main-color); font-size:1.8rem; color:#000; font-weight:500; border-radius:50px; background:#fff;}
.organization-chart .depth3 
{position:relative; padding-top:5rem; display:flex; justify-content:space-between; text-align:center;}
.organization-chart .depth3::before 
{content:''; position:absolute; width:82%; left:9%; height:1px; top:0; background:#ddd;}
.organization-chart .depth3 a
{display:inline-block; background:#333; width:18%; color:#fff; font-size:1.7rem; padding:2rem 0; position:relative;}
.organization-chart .depth3 a:before 
{content:''; position:absolute; width:1px; height:5rem; background:#ddd; top:-5rem; left:50%;}
.organization-chart-con.chart2 .organization-chart .depth2 a:before 
{content:''; position:absolute; height:85%; width:1px; background:#ddd; top:-90%; left:50%;}
.organization-chart-con.chart2 .organization-chart .depth2 a:after 
{display:none;}

/* 협회인원 */
.chart-detail
{margin-bottom:3rem;}
.chart-detail-con 
{border:1px solid #ddd; background:#f9f9f9; border-radius:15px;}
.chart-detail-con .box-tit
{text-align:center;}
.chart-detail-con .box-tit b
{min-width:20rem; display:inline-block; background:var(--sub-color); padding:1.5rem; font-size:1.8rem; color:#fff; font-weight:600; border-radius: 0 0 10px 10px;}
.organ-detail-list 
{display:flex; flex-wrap:wrap; padding:5rem; margin:0 -1%;}
.organ-detail-list li 
{display:flex; flex-wrap: wrap; width:31.333%; margin:0 1% 3%; align-items:center; background:#fff; border:1px solid #eee; border-radius:10px; overflow:hidden; box-shadow:3px 3px 13px #00000008}
.organ-detail-list .img-con 
{width:25%; display: flex; align-items: center;}
.organ-detail-list .txt-con 
{width:70%; padding:2.5rem 2rem;}
.organ-detail-list.exercise li
{width: 18%;}

.organ-detail-list .txt-con .tit h4
{font-size:2.2rem; color:#000; font-weight:700;}
.organ-detail-list .txt-con .txt
{margin-top:2rem; display: flex; flex-direction: column; gap: 1rem;}
.organ-detail-list .txt-con .txt dl
{display:flex; flex-wrap:wrap; gap: 1rem;}
.organ-detail-list .txt-con .txt dt
{position: relative; width: 6rem; font-size:1.6rem; color:#333; font-weight:600;}
.organ-detail-list .txt-con .txt dt::before
{content: ""; position: absolute; top: 50%; right: 0; transform: translateY(-50%); height: 100%; width: 2px; background-color: #e3e3e3;}
.organ-detail-list .txt-con .txt dd
{width:calc(100% - 7rem); font-size:1.6rem; color:#555; line-height: 1.2;}

.organ-detail-list .txt-con:only-child 
{width:100%;}
.organ-detail-list .txt-con:only-child .tit
{text-align:center;}

/* + custom */
.organization-chart-con.chart1 .depth1 a:before
{height: 56%; bottom: 10.6rem;}
.organization-chart-con.chart1 .depth2 
{padding-top: 10rem;}
.organization-chart-con.chart1 .depth2::before
{content: ''; position: absolute; width: 80%; left: 10%; height: 1px; top: 5rem; background: #ddd;}

/* 체육시설현황 */
.sport-con 
{margin-bottom: 8rem;}
.sport-wrap
{margin: 8rem 0; display: flex;}

/* tab */
.sport-tab-con .tab-btn-wrap .btn 
{width: 20%;}
.sport-tab-con .tab-btn-wrap .btn.active
{background-color: var(--main-color);}
.sport-tab-con .tab-btn-wrap .btn.active a
{color: #fff; font-weight: 600;}

.sport-wrap .photo-wrap 
{width: 40%; height: 100%;}
.sport-wrap .photo-wrap .photo-slide
{margin-bottom: 2rem; box-shadow: 0 0 10px #00000020; border-radius: 1rem; overflow: hidden;}
.sport-wrap .photo-wrap .photo-img
{height: 34rem;}
.sport-wrap .photo-wrap .photo-img img 
{vertical-align:middle; width: 100%; height: 100%; object-fit: cover;}

/* 컨트롤 버튼 + 카운터 */
.sport-wrap .photo-wrap .photo-slide-controls 
{width:100%; display: flex; justify-content: end; align-items: center;}
.sport-wrap .photo-wrap .photo-slide-controls .paging-count-con 
{margin:0 1.5rem;}
.sport-wrap .photo-wrap .photo-slide-controls .paging-count-con .paging-count 
{font-size: 2rem; color:#999; font-weight:700;}
.sport-wrap .photo-wrap .photo-slide-controls .paging-count-con .paging-count .current
{color:#222; font-size: 1.8rem;}
.sport-wrap .photo-wrap .photo-slide-controls .paging-count-con .paging-count .total
{font-size: 1.8rem;}
.sport-wrap .photo-wrap .photo-slide-controls .arrow-con 
{display:flex; background:var(--main-color); border-radius:10px;}
.sport-wrap .photo-wrap .photo-slide-controls .slick-arrow 
{font-size:1.8rem; color:#fff; padding: 1rem 1.5rem; border: 0; border-radius:10px; transition:all 0.3s ease;}
.sport-wrap .photo-wrap .photo-slide-controls .slick-arrow:hover ,.sport-wrap .photo-wrap .photo-slide-controls .slick-arrow:focus
{background: #0083c6;}

.sport-wrap .info-con 
{width: 60%; padding-left: 6rem; padding-top: 2.5rem;}
.sport-wrap .info-con .title-wrap
{margin-bottom: 2rem; padding-bottom: 2rem; border-bottom:1px solid #ddd;}
.sport-wrap .info-con .title-wrap .title
{font-size:3.2rem; color:#000; font-weight: 800;}
.sport-wrap .info-con .detail-box .detail 
{font-size: 1.8rem; font-weight: 400; line-height: 1.4; color: #656565; letter-spacing: -0.12rem;} 
.sport-wrap .info-con .detail-box .detail span
{font-size: 1.5rem; letter-spacing: -0.16rem; font-weight: 400; color: var(--sub-color);}
.sport-wrap .info-con .sport-info 
{padding-top: 5rem; display: flex; flex-direction: column; gap: 1rem; text-align: left;}
.sport-wrap .info-con .sport-info dl
{display: flex; align-items: stretch; gap: 2rem; background-color: #fff; border-radius: 5px; border: 1px solid #ddd;}
.sport-wrap .info-con .sport-info dl dt
{display: flex; justify-content: center; align-items: center; min-width: 18%; padding: 1rem; font-size: 1.8rem; color: #fff; font-weight: 700; background-color: var(--sub-color); border-radius: 5px 0 0 5px;}
.sport-wrap .info-con .sport-info dl dd
{display: flex; flex-flow: row wrap; align-items: center; width: auto; font-size: 1.8rem; color: #444; font-weight: 500;}
.sport-wrap .info-con .sport-info dl dd a
{color:var(--main-color); text-decoration: underline;}
.sport-wrap .info-con .sport-info dl dd a:hover
{color: #0053b8;}

/* map */
.sport-wrap.map-sec
{display: block;}
.sport-map-title .title 
{margin: 3rem 0; font-size: 3.8rem; font-weight: 700;}
.sport-map-title .title i
{color: var(--sub-color); object-position: center;}
.sport-map-con .sport-map-wrap
{border-radius: 2rem; border: 1px solid #ccc; overflow: hidden;}
.sport-map-con .sport-map-wrap .root_daum_roughmap 
{width: 100%;}
.sport-map-con .sport-map-wrap .root_daum_roughmap .cont
{display: none;}
.sport-map-con .sport-map-detail-wrap .trans-wrap .item 
{padding: 5rem 4rem; display: flex; border-bottom: 1px solid #ccc;}
.sport-map-con .sport-map-detail-wrap .trans-wrap .item .title 
{width: 15rem; font-size: 2.4rem;}
.sport-map-con .sport-map-detail-wrap .trans-wrap .item .title i
{padding-right: 0.5rem; color: var(--main-color);}
.sport-map-con .sport-map-detail-wrap .trans-wrap .item p 
{padding-bottom: 1.5rem; font-size: 1.7rem; color: #606060; font-weight: 500; line-height: 1.4;}
.sport-map-con .sport-map-detail-wrap .trans-wrap .item p:nth-last-of-type(1)
{padding-bottom: 0;}

.sport-map-con .sport-map-detail-wrap .trans-wrap .item p .point,
.sport-closed-sec .point
{padding: 0.2rem 0.5rem; margin:0 0.5rem; font-size: 1.5rem; color: #fff; border-radius: 5px;}
.point {background-color: #0053b8;}
.point.green {background-color: #0bab2c;}
.point.green02 {background-color: #09a074;}
.point.grey {background-color: #505050;}
.point.yellow {background-color: #ffbc00;}

.sport-closed-sec .detail
{padding-bottom: 1.5rem; font-size: 1.7rem; color: #606060; font-weight: 500; line-height: 1.4;}
.sport-closed-sec .detail:nth-last-of-type(1)
{padding-bottom: 0;}