/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jun 18 2026 | 06:22:57 */
/* =========== 
  기본 세팅 === START
 =========== */
 * {
   box-sizing: border-box;
   font-family: 'Noto Sans KR';
 }

 ol,
 ul,
 dl,
 dd,
 dt {
   list-style: none;
   padding: 0;
   margin: 0;
 }

 a {
   display: inline-block;
   color: inherit;
   text-decoration: none;
 }

 
 :root {
   --main-color: #08a29a;
   --sub-color01: #24bdb3;
   --gray-color01: #f3f3f3;
   --white-color: #f2f2f2;
   --one-txt-color: #232323;
   --one-txt-gray: #555;
   --one-hd1: 48px;
   --one-hd2: 40px;
   --one-hd3: 32px;
   --one-p-tit: 24px;
   --one-body: 18px;
   --one-caption: 15px;
   --one-lh-lg: 1.3;
   --one-lh-r: 1.6;
   /* 레이아웃 여백 */
 --one-space-xl: 120px;
 --one-space-lg: 100px;
 --one-space-r: 80px;
 --one-space-s: 48px;
 --one-space-safe: 16px;
 /* 요소 내 gap */
 --one-gap-xl: 32px;
 --one-gap-lg: 24px;
 --one-gap-r: 16px;
 --one-gap-sm: 8px;
 }

 /* =========== 
  유틸리티 / 텍스트 공통
 =========== */

 .mo_v {
   display: none;
 }

 .mo_v_i {
   display: none;
 }

 .flx-row {
   display: flex;
   flex-direction: row;
 }

 .flx-col {
   display: flex;
   flex-direction: column;
 }

 .txt-wrap {
   color: var(--one-txt-color);
   font-size: var(--one-body);
   line-height: var(--one-lh-r);
   font-weight: 400;
   word-break: keep-all;
   letter-spacing: -0.02em;
 }

 .txt-lf {
   text-align: left;
 }

 .txt-rg {
   text-align: right;
 }

 .txt-ct {
   text-align: center;
 }

 .txt-wrap a {
   color: inherit;
 }

 .m-color {
   color: var(--main-color);
 }

 .sb-color {
   color: var(--sub-color01);
 }

 .sb02-color {
   color: var(--sub-color02);
 }

 .w-color {
   color: var(--white-color);
 }

 .txt-gray {
   color: var(--one-txt-gray)
 }

 .txt-wrap .hd1 {
   font-size: var(--one-hd1);
   line-height: var(--one-lh-lg);
   font-weight: 700;
 }

 .txt-wrap .hd2 {
   font-size: var(--one-hd2);
   line-height: var(--one-lh-lg);
   font-weight: 600;
 }

 .txt-wrap .hd3 {
   font-size: var(--one-hd3);
   line-height: var(--one-lh-r);
   font-weight: 500;
 }

 .txt-wrap .p-tit {
   font-size: var(--one-p-tit);
   line-height: var(--one-lh-r);
   font-weight: 500;
 }

 .txt-wrap .body-txt {
   font-size: var(--one-body);
   line-height: var(--one-lh-r);
   font-weight: 500;
 }

 .txt-wrap .cp-txt {
   font-size: var(--one-caption);
   line-height: var(--one-lh-r);
   font-weight: 400;
 }

 .txt-underline {
   text-decoration: underline;
   text-underline-offset: 0.2em;
 }

 .bg-cover {
   background: no-repeat center / cover;
 }

 .bg-contain {
   background: no-repeat center / 100% auto;
 }

 .pdt-0 {
   padding-top: 0 !important;
 }

 .pdb-0 {
   padding-bottom: 0 !important;
 }

 .mgt-0 {
   margin-top: 0 !important;
 }

 .mgb-0 {
   margin-bottom: 0 !important;
 }

 .idx-lb {
   display: inline-flex;
   width: 2em;
   height: 2em;
   justify-content: center;
   align-items: center;
   border-radius: 50%;
   background: var(--main-color);
   font-weight: bold;
   text-align: center;
   text-indent: 0.04em;
   font-size: 1.5em;
   line-height: 1;
   padding-bottom: 0.1em;
 }

 /* =========== 
  레이아웃 공통
 =========== */

 section {
   position: relative;
   padding-left: var(--one-space-safe);
   padding-right: var(--one-space-safe);
   overflow: hidden;
 }

 p,
 h2,
 h3 {
   padding: 0;
   margin: 0;
 }

 .con-inner {
   position: relative;
   margin: 0 auto;
   max-width: var(--one-layout);
   padding: var(--one-space-r) 0;
 }

 .ft-b {
   font-weight: 700 !important;
 }

 .ft-sb {
   font-weight: 600 !important;
 }

 .ft-md {
   font-weight: 500 !important;
 }

 .ft-r {
   font-weight: 400 !important;
 }

 /* 공통 */
 .con-hd-wrap {
   padding-bottom: var(--one-space-s);
 }

 */
 /* =========== 
  기본 세팅 === END
 =========== */

 /* =========== 
  FAQ 섹션
 =========== */
 .con-faq .con-hd-wrap .desc {
   padding-top: var(--one-gap-r);
 }

 /* faq */
 /* 탭 버튼 컨테이너 (공통 레이아웃 구조 활용) */
 .faq-tab-group {
   display: flex;
   justify-content: center;
   flex-wrap: wrap;
   gap: var(--one-gap-r);
   margin-bottom: var(--one-space-s);
 }

 /* 탭 버튼 스타일 */
 .faq-tab-btn {
   padding: 14px 36px;
   border: 1px solid var(--one-txt-color);
   border-radius: 50px;
   background-color: var(--gray-color01);
   color: var(--one-txt-color);
   font-size: var(--one-body);
   cursor: pointer;
   white-space: nowrap;
   transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
   box-shadow: none !important;
 }

 /* 활성화 상태 (메인 컬러 매핑) */
 .faq-tab-btn.is-active {
   background-color: var(--sub-color01);
   color: var(--white-color);
   font-weight: 700;
   box-shadow: none !important;
 }

 .faq-tab-btn:hover {
   box-shadow: none !important;
 }

 /* 호버 상태 (서브 컬러 매핑) */
 .faq-tab-btn:hover:not(.is-active) {
   background-color: var(--main-color);
   color: var(--white-color);
 }

 /* 패널 제어 및 페이드인 */
 .faq-panel {
   display: none;
   word-wrap: break-word;
 }

 .faq-panel.is-active {
   display: block;
   animation: faqFadeIn 0.4s ease;
 }

 /* 아코디언 아이템 세팅 */
 .faq-accordion-item {
   border: 1px solid var(--gray-color01);
   margin-bottom: var(--one-gap-sm);
   border-radius: 1rem;
 }

 .faq-accordion-item.is-open {}

 /* 질문 트리거 버튼 */
 .faq-trigger-btn {
   width: 100%;
   padding: var(--one-gap-lg) var(--one-space-s);
   display: flex;
   justify-content: space-between;
   align-items: center;
   background: none;
   border: none;
   cursor: pointer;
   word-break: break-all;
 }

 .faq-trigger-btn .q-txt {
   flex: auto;
 }

 /* Q 아이콘 (공통 메인 컬러 적용) */
 .faq-trigger-btn::before {
   content: 'Q.';
   color: var(--sub-color01);
   font-size: var(--one-p-tit);
   margin-right: var(--one-gap-r);
   font-weight: 700;
 }

 /* 💡 CSS로 구현한 오리지널 v 꺽쇠 아이콘 */
 .faq-icon-caret {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 20px;
   height: 20px;
   position: relative;
   transition: transform 0.3s ease;
   margin-left: var(--one-gap-r);
 }

 .faq-icon-caret::before {
   content: '';
   display: block;
   width: 8px;
   height: 8px;
   border-right: 2px solid var(--sub-color01);
   border-bottom: 2px solid var(--sub-color01);
   transform: rotate(45deg);
   transition: transform 0.3s ease;
 }

 /* 활성화(열림) 상태 시 회전 제어 */
 .faq-accordion-item.is-open .faq-icon-caret {
   transform: rotate(180deg);
 }

 /* 답변 패널 슬라이딩 구조 */
 .faq-body-panel {
   max-height: 0;
   overflow: hidden;
   transition: max-height 0.3s ease-out;
   background-color: #fafafa;
   border-radius: 0 0 6px 6px;
 }

 .faq-body-content {
   padding: var(--one-gap-lg) var(--one-space-s);
   background: #f9f9f9;
 }

 /* A 아이콘 (공통 메인 핑크 컬러 적용) */
 .faq-body-content::before {
   content: 'A.';
   color: var(--main-color);
   font-size: var(--one-p-tit);
   margin-right: var(--one-gap-r);
   font-weight: 700;
 }

 .faq-tab-btn {
   background-color: #fff;
   -webkit-box-shadow: none;
   box-shadow: none;
 }

 /* =========== 
  애니메이션
 =========== */

 @keyframes faqFadeIn {
   from {
     opacity: 0;
     transform: translateY(5px);
   }

   to {
     opacity: 1;
     transform: translateY(0);
   }
 }

 /* =========== 
  반응형: 태블릿
 =========== */

 /* 워드프레스 기존 테마 max-width 따라감 */
 @media all and (max-width: 1024px) {

   /* =========== 
  기본 세팅 === START
 =========== */
   :root {
     --one-hd1: 46px;
     --one-hd2: 38px;
     --one-hd3: 30px;
     --one-p-tit: 20px;
     --one-body: 16px;
     --one-caption: 13px;
     --one-space-xl: 100px;
     --one-space-lg: 80px;
     --one-space-r: 54px;
     --one-gap-xl: 24px;
     --one-gap-lg: 16px;
   }

   .mo_v,
   .mo-v {
     display: block !important;
   }

   .pc-v {
     display: none !important;
   }

   .mo_v_i {
     display: inline-block !important;
   }

   .one-container {
     padding-top: 70px;
   }

   .help-txt {
     font-size: 13px;
     color: var(--gray-color01);
     padding-top: var(--one-gap-sm);
   }

   .con-hd-wrap {
     padding-bottom: var(--one-space-s);
   }

   /* =========== 
  기본 세팅 === END
 =========== */

   /* faq */
   .faq-tab-btn {
     padding: 12px 28px;
   }
 }

 /* =========== 
  반응형: 모바일
 =========== */

 /* 워드프레스 기존 테마 max-width 따라감 */
 @media all and (max-width: 767px) {

   /* =========== 
  기본 세팅 === START
 =========== */
   mo_v {
     display: block;
   }

   .pc_v {
     display: none;
   }

   .mo_v_i {
     display: inline-block;
   }

   :root {
     --one-hd1: 8.2vw;
     --one-hd2: 7vw;
     --one-layout: 100%;
     --one-layout-lg: 100%;
     --one-hd3: 6vw;
     --one-p-tit: 5vw;
     --one-body: 3.7vw;
     --one-caption: 2.7vw;
     --one-lh-lg: 1.3;
     --one-lh-r: 1.6;
     --one-space-xl: 15vw;
     --one-space-lg: 12.5vw;
     --one-space-r: 11vw;
     --one-space-s: 9.3vw;
     --one-gap-xl: 4.7vw;
     --one-gap-lg: 3.7vw;
     --one-gap-r: 3.2vw;
     --one-gap-sm: 2.5vw;
   }

   .con-inner {
     padding: var(--one-space-r) 0;
   }

   .flx-row {
     flex-direction: column;
   }

   /* =========== 
  기본 세팅 === END
 =========== */
   /* faq */
   /* 모바일 가로 스크롤 레이아웃 핏 보정 */
   .faq-tab-group {
     justify-content: center;
     padding-bottom: 8px;
     margin-bottom: var(--one-gap-xl);
   }

   .faq-tab-group::-webkit-scrollbar {
     display: none;
   }

   .faq-tab-btn {
     width: 80%;
	 margin: 0;
   }

   /* 모바일 가독성을 고려한 본문 여백 제어 */

   .faq-trigger-btn::before,
   .faq-body-content::before {
     font-size: var(--one-body);
     margin-right: var(--one-gap-sm);
   }
 }