
/* header title */
.header-container { position: relative; width: 100%; background: var(--theme-blue); padding: 60px 0; background-image: url(../../img/smk/head_bg.jpg); background-repeat: no-repeat; background-size: cover; background-position: center; }
.header-wrap { text-align: center; }
.header-wrap .tit { font-size: 3rem; padding-bottom: 15px; color: #fff; font-weight: 300; }
.header-wrap .num { font-size: 1.5rem; letter-spacing: 0; color: #fff; background: rgba(0,0,0,0.2); display: inline-block; padding: 10px 40px 7px; border-radius: 30px; }


/* 공통 - 섹션 타이틀 */
.section-group { position: relative; padding: 0 0 100px; }
.section-group:nth-child(1) { padding-top: 90px; }


/* 공통 - 섹션 타이틀 */
.sec-title { position: relative; padding-bottom: 10px; margin-bottom: 30px; }
.sec-title:after { content: ''; display: block; width: 100%; height: 1px; background: #999; position: absolute; bottom: 0; left: 0; }
.sec-title .tit { position: relative; font-size: 2.4rem; padding-left: 20px; }
.sec-title .tit:after { content: ''; display: block; width: 12px; height: 12px; background: var(--theme-blue); position: absolute; bottom: -15px; left: 0; z-index: 1; }
.sec-title .tit:before { content: ''; display: block; width: 12px; height: 12px; background: var(--theme-blue); position: absolute; bottom: -15px; right: 0; z-index: 1; }


/* 공통 - 섹션 내부 컨텐츠 그룹 */
.contents-group-wrap { padding: 30px; background: #f7f7f7; }
.contents-group-wrap .tab-menu-wrap .tab-menu ul li.on a { border-bottom-color: #f7f7f7; }
.contents-group:not(:last-child) { padding-bottom: 40px; }
.contents-group.line { margin-bottom: 25px; padding-bottom: 15px; border-bottom: 1px solid var(--line-color); }


/* 공통 - 섹션 내부 컨텐츠 타이틀 */
.cont-title { position: relative; padding-bottom: 10px; }
.cont-title:after { content: ''; width: 5px; height: 5px; border-radius: 10px; background: var(--theme-org); position: absolute; top: 3px; left: 0; }
.cont-title:before { content: ''; width: 5px; height: 5px; border-radius: 10px; background: var(--theme-blue); position: absolute; top: 12px; left: 0; }
.cont-title .tit { position: relative; font-size: 1.9rem; padding-left: 15px; font-weight: 600; line-height: 1.1; }
.cont-title .link { font-size: 1.2rem; padding-left: 5px; text-decoration: underline; }

.cont-sub-title { position: relative; padding: 10px 0 15px 0; }
.cont-sub-title .tit { position: relative; font-size: 1.5rem; padding-left: 12px; font-weight: 600; line-height: 1.1; }
.cont-sub-title .tit:after { content: ''; border-top: 5px solid transparent; border-bottom: 5px solid transparent; border-left: 7px solid #000; position: absolute; top: 5px; left: 0; }


/* 더보기 */
.more-btn { position: absolute; bottom: 10px; right: 0; }
.more-btn a { font-size: 1.3rem; text-decoration: underline; }


/* 텍스트 박스 기본 */
.txt-box { position: relative; display: none; overflow-y: auto; }
.txt-box.show { display: block; }
.txt-box .d-txt { line-height: 1.8; font-size: 1.3rem;}


/* 텍스트 박스 타입 */
.bg-box { padding: 15px 20px; background: #f5f5f5; border-radius: 3px; }
.bd-box { padding: 15px 20px; border: 1px solid var(--line-color); border-radius: 3px; }


/* flex */
.flex-group { display: flex; flex-wrap: wrap; gap: 30px; }
.flex-group .flex-item.w-20pct { width: calc(20% - 15px) !important; }
.flex-group .flex-item.w-30pct { width: calc(33% - 16px) !important; }
.flex-group .flex-item.w-50pct { width: calc(50% - 15px) !important; }
.flex-group .flex-item.w-80pct { width: calc(80% - 15px) !important; }
.flex-group.gap10 { gap: 10px; }
.flex-group.gap10 .flex-item.w-30pct { width: calc(33% - 5px) !important; }
.flex-group.gap10 .flex-item.w-50pct { width: calc(50% - 5px) !important; }


/* display inline block */
.inline { display: inline-block; }


/* input checkbox group */
.input-group { margin-top: 20px; position: relative; padding: 10px; background: #f2f2f2; border-left: 4px solid #d1d1d1; }
.input-group .input-title { font-size: 1.4rem; font-weight: 600; display: inline-block; padding: 0 30px 0 10px; }
.input-group .input-radio,
.input-group .input-checkbox { padding-right: 10px; position: relative; top: -2px; }
.input-group .input-radio .radio-label,
.input-group .input-checkbox .checkbox-label { padding-left: 19px; font-size: 1.4rem; }


/* tab menu */
.tab-menu-wrap .tab-menu { margin: 20px 0; position: relative; }
.tab-menu-wrap .tab-menu ul { position: relative; overflow: hidden; height: 45px; z-index: 1; white-space: nowrap;}
.tab-menu-wrap .tab-menu ul:after { content: ""; position: absolute; width: 100%; height: 1px; background: var(--theme-blue); bottom: 0; left: 0; z-index: -1;}
.tab-menu-wrap .tab-menu ul li { position: relative; display: inline-block; height: 45px;}
.tab-menu-wrap .tab-menu ul li a { min-width: 130px; display: block; line-height: 43px; border: 1px solid transparent; border-left: none;  text-align: center; padding: 0 15px; font-size: 1.4rem;}
.tab-menu-wrap .tab-menu ul li a:hover { color: var(--theme-blue);}
.tab-menu-wrap .tab-menu ul li.on a { border: 1px solid var(--theme-blue); color: var(--theme-blue); border-bottom: 2px solid #fff; font-weight: 600;}

.tab-menu-wrap .tab-sub-menu { position: relative; margin: 30px 0; }
.tab-menu-wrap .tab-sub-menu ul { display: flex; gap: 10px; }
.tab-menu-wrap .tab-sub-menu ul li a { font-size: 1.4rem; color: #666; background: #e0e1e7; border-radius: 3px; padding: 10px 30px; position: relative; }
.tab-menu-wrap .tab-sub-menu ul li a:hover { background: #d9dae1; }
.tab-menu-wrap .tab-sub-menu ul li.on a { color: #fff; background: var(--theme-blue); font-weight: 600; }
.tab-menu-wrap .tab-sub-menu ul li.on a:after { content: ''; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 10px solid var(--theme-blue); position: absolute; top: 100%; left: 50%; transform: translateX(-50%); }