@charset "UTF-8";
:root { --inner: 1400px; --inner_padding: 24px; --col_padding: 25px; --form_height_xs: clamp(25.6px, 1.6666666667vw, 32px); --form_height_sm: clamp(32px, 2.0833333333vw, 40px); --form_height_md: clamp(38.4px, 2.5vw, 48px); --form_height_lg: clamp(44.8px, 2.9166666667vw, 56px); --form_height_xl: clamp(51.2px, 3.3333333333vw, 64px); --textarea_height: clamp(120px, 7.8125vw, 150px); --color-alpha-black10:rgb(0 0 0 / 10%); --color-alpha-black25:rgb(0 0 0 / 25%); --color-alpha-black50:rgb(0 0 0 / 50%); --color-alpha-black75:rgb(0 0 0 / 75%); --color-alpha-white10:rgb(255 255 255 / 10%); --color-alpha-white25:rgb(255 255 255 / 25%); --color-alpha-white50:rgb(255 255 255 / 50%); --color-alpha-white75:rgb(255 255 255 / 75%); --color-gray-0:rgb(255 255 255); --color-gray-5:rgb(242 242 242); --color-gray-10:rgb(230 230 230); --color-gray-15:rgb(221 221 221); --color-gray-20:rgb(204 204 204); --color-gray-30:rgb(178 178 178); --color-gray-40:rgb(153 153 153); --color-gray-50:rgb(128 128 128); --color-gray-60:rgb(102 102 102); --color-gray-70:rgb(77 77 77); --color-gray-80:rgb(51 51 51); --color-gray-90:rgb(17 17 17); --color-gray-95:rgb(13 13 13); --color-gray-100:rgb(0 0 0); --color-primary-5:rgb(242, 253, 248); --color-primary-10:rgb(236, 248, 243); --color-primary-20:rgb(178, 238, 214); --color-primary-30:rgb(112, 218, 175); --color-primary-40:rgb(57, 195, 139); --color-primary-50:rgb(18, 183, 116); --color-primary-60:rgb(10, 167, 103); --color-primary-70:rgb(4, 154, 93); --color-primary-80:rgb(1, 134, 80); --color-primary-90:rgb(1, 113, 67); --font_size10:clamp(10px, 0.5208333333vw, 10px); --font_size11:clamp(11px, 0.5729166667vw, 11px); --font_size12:clamp(12px, 0.625vw, 12px); --font_size13:clamp(13px, 0.6770833333vw, 13px); --font_size14:clamp(14px, 0.7291666667vw, 14px); --font_size15:clamp(14px, 0.78125vw, 15px); --font_size16:clamp(14px, 0.8333333333vw, 16px); --font_size17:clamp(14px, 0.8854166667vw, 17px); --font_size18:clamp(14px, 0.9375vw, 18px); --font_size19:clamp(14px, 0.9895833333vw, 19px); --font_size20:clamp(14px, 1.0416666667vw, 20px); --font_size21:clamp(14px, 1.09375vw, 21px); --font_size22:clamp(14px, 1.1458333333vw, 22px); --font_size23:clamp(14px, 1.1979166667vw, 23px); --font_size24:clamp(14px, 1.25vw, 24px); --font_size25:clamp(14px, 1.3020833333vw, 25px); --font_size26:clamp(14px, 1.3541666667vw, 26px); --font_size27:clamp(14px, 1.40625vw, 27px); --font_size28:clamp(14px, 1.4583333333vw, 28px); --font_size29:clamp(14px, 1.5104166667vw, 29px); --font_size30:clamp(14px, 1.5625vw, 30px); --font_size31:clamp(14px, 1.6145833333vw, 31px); --font_size32:clamp(14px, 1.6666666667vw, 32px); --font_size33:clamp(14px, 1.71875vw, 33px); --font_size34:clamp(14px, 1.7708333333vw, 34px); --font_size35:clamp(14px, 1.8229166667vw, 35px); --font_size36:clamp(14px, 1.875vw, 36px); --font_size37:clamp(14px, 1.9270833333vw, 37px); --font_size38:clamp(14px, 1.9791666667vw, 38px); --font_size39:clamp(14px, 2.03125vw, 39px); --font_size40:clamp(14px, 2.0833333333vw, 40px); --font_size41:clamp(14px, 2.1354166667vw, 41px); --font_size42:clamp(14px, 2.1875vw, 42px); --font_size43:clamp(14px, 2.2395833333vw, 43px); --font_size44:clamp(14px, 2.2916666667vw, 44px); --font_size45:clamp(14px, 2.34375vw, 45px); --font_size46:clamp(14px, 2.3958333333vw, 46px); --font_size47:clamp(14px, 2.4479166667vw, 47px); --font_size48:clamp(14px, 2.5vw, 48px); --font_size49:clamp(14px, 2.5520833333vw, 49px); --font_size50:clamp(14px, 2.6041666667vw, 50px); --font_size51:clamp(14px, 2.65625vw, 51px); --font_size52:clamp(14px, 2.7083333333vw, 52px); --font_size53:clamp(14px, 2.7604166667vw, 53px); --font_size54:clamp(14px, 2.8125vw, 54px); --font_size55:clamp(14px, 2.8645833333vw, 55px); --font_size56:clamp(14px, 2.9166666667vw, 56px); --font_size57:clamp(14px, 2.96875vw, 57px); --font_size58:clamp(14px, 3.0208333333vw, 58px); --font_size59:clamp(14px, 3.0729166667vw, 59px); --font_size60:clamp(14px, 3.125vw, 60px); --font_size61:clamp(14px, 3.1770833333vw, 61px); --font_size62:clamp(14px, 3.2291666667vw, 62px); --font_size63:clamp(14px, 3.28125vw, 63px); --font_size64:clamp(14px, 3.3333333333vw, 64px); --font_size65:clamp(14px, 3.3854166667vw, 65px); --font_size66:clamp(14px, 3.4375vw, 66px); --font_size67:clamp(14px, 3.4895833333vw, 67px); --font_size68:clamp(14px, 3.5416666667vw, 68px); --font_size69:clamp(14px, 3.59375vw, 69px); --font_size70:clamp(14px, 3.6458333333vw, 70px); --font_size71:clamp(14px, 3.6979166667vw, 71px); --font_size72:clamp(14px, 3.75vw, 72px); --font_size73:clamp(14px, 3.8020833333vw, 73px); --font_size74:clamp(14px, 3.8541666667vw, 74px); --font_size75:clamp(14px, 3.90625vw, 75px); --font_size76:clamp(14px, 3.9583333333vw, 76px); --font_size77:clamp(14px, 4.0104166667vw, 77px); --font_size78:clamp(14px, 4.0625vw, 78px); --font_size79:clamp(14px, 4.1145833333vw, 79px); --font_size80:clamp(14px, 4.1666666667vw, 80px); --font_size81:clamp(14px, 4.21875vw, 81px); --font_size82:clamp(14px, 4.2708333333vw, 82px); --font_size83:clamp(14px, 4.3229166667vw, 83px); --font_size84:clamp(14px, 4.375vw, 84px); --font_size85:clamp(14px, 4.4270833333vw, 85px); --font_size86:clamp(14px, 4.4791666667vw, 86px); --font_size87:clamp(14px, 4.53125vw, 87px); --font_size88:clamp(14px, 4.5833333333vw, 88px); --font_size89:clamp(14px, 4.6354166667vw, 89px); --font_size90:clamp(14px, 4.6875vw, 90px); --font_size91:clamp(14px, 4.7395833333vw, 91px); --font_size92:clamp(14px, 4.7916666667vw, 92px); --font_size93:clamp(14px, 4.84375vw, 93px); --font_size94:clamp(14px, 4.8958333333vw, 94px); --font_size95:clamp(14px, 4.9479166667vw, 95px); --font_size96:clamp(14px, 5vw, 96px); --font_size97:clamp(14px, 5.0520833333vw, 97px); --font_size98:clamp(14px, 5.1041666667vw, 98px); --font_size99:clamp(14px, 5.15625vw, 99px); --font_size100:clamp(14px, 5.2083333333vw, 100px); }

/* 리사이즈 시 transition 억제 */
.no_transition * { transition: none !important; }
::selection { background: var(--color-primary-10); color: var(--color-primary-90); }

/* 스크롤바 */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { border-radius: clamp(8px, 0.5208333333vw, 10px); background: #ddd; }
::-webkit-scrollbar-track { background: #f4f4f4; }
.dragscroll::-webkit-scrollbar { display: none !important; }

/* basic */
html { -webkit-text-size-adjust: none; scroll-padding-top: 100px; }
body { color: #000; font-size: clamp(14px, 0.8854166667vw, 17px); font-family: "PretendardGOV"; letter-spacing: normal; }

/* 공통 keyframes */
@keyframes show_popup {
	0% { transform: scale(0.9); opacity: 0; }
	100% { transform: scale(1); opacity: 1; }
}
@keyframes hide_popup {
	0% { transform: scale(1); opacity: 1; }
	100% { transform: scale(0.9); opacity: 0; }
}
@keyframes swipeRight {
	0% { transform: translateX(0); }
	50% { transform: translateX(0.5rem); }
	100% { transform: translateX(0); }
}
@keyframes thumbBtnsFadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}
@keyframes floating {
	0%,
	100% { transform: translateY(0); }
	50% { transform: translateY(-8px); }
}
@keyframes quiz_sway {
	0%,
	100% { transform: translateY(0) rotate(0); }
	50% { transform: translateY(-6px) rotate(10deg); }
}
@keyframes quiz_spin {
	0% { transform: translate(-50%, -50%) rotate(var(--deco-rotate, 0deg)); }
	50% { transform: translate(-50%, calc(-50% + 6px)) rotate(calc(var(--deco-rotate, 0deg) + 180deg)); }
	100% { transform: translate(-50%, -50%) rotate(calc(var(--deco-rotate, 0deg) + 360deg)); }
}
@keyframes quiz_twinkle {
	0%,
	100% { transform: translate(-50%, -50%) scale(1); opacity: 1; }
	50% { transform: translate(-50%, -50%) scale(0.6); opacity: 0.3; }
}
@keyframes marker_bubble_pop {
	0%,
	70%,
	100% { transform: scale(1); }
	80% { transform: scale(1.2) rotate(-6deg); }
	90% { transform: scale(0.95) rotate(3deg); }
}
@keyframes quiz_letter_up {
	from { transform: translateY(25%); }
	to { transform: translateY(0); }
}

/* 공통 뱃지 */
[class*=cm_badge] { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; border: 1px solid transparent; text-align: center; vertical-align: middle; }
.cm_badge.badge1 { height: clamp(25.6px, 1.6666666667vw, 32px); padding: clamp(2.4px, 0.15625vw, 3px) clamp(16px, 1.0416666667vw, 20px); border-radius: clamp(72px, 4.6875vw, 90px); font-weight: 700; font-size: clamp(13px, 0.8854166667vw, 17px); }
.cm_badge.badge2 { width: fit-content; min-width: clamp(60.8px, 3.9583333333vw, 76px); min-height: clamp(25.6px, 1.6666666667vw, 32px); padding: clamp(3px, 0.2083333333vw, 4px) clamp(6px, 0.5989583333vw, 11.5px); border-radius: clamp(4.8px, 0.3125vw, 6px); font-size: clamp(13px, 0.78125vw, 15px); line-height: 1.4; }
.cm_badge.badge2.ing { background-color: #009687; color: #fff; }
.cm_badge.badge2.closed { background-color: #f4f4f4; color: #333; }
.cm_badge.badge2.pass { background-color: #0ba935; color: #fff; }
.cm_badge.badge2.recruit { background-color: #4456d2; color: #fff; }
.cm_badge.badge3 { width: fit-content; min-width: clamp(40px, 2.6041666667vw, 50px); min-height: clamp(22.4px, 1.4583333333vw, 28px); padding: clamp(0.8px, 0.0520833333vw, 1px) clamp(9.6px, 0.625vw, 12px); border-radius: clamp(79.2px, 5.15625vw, 99px); font-weight: 700; font-size: clamp(13px, 0.78125vw, 15px); }
.cm_badge.badge4 { width: fit-content; min-width: clamp(90.4px, 5.8854166667vw, 113px); min-height: clamp(25.6px, 1.6666666667vw, 32px); padding: clamp(2.4px, 0.15625vw, 3px) clamp(9.6px, 0.625vw, 12px); border-radius: clamp(4.8px, 0.3125vw, 6px); font-size: clamp(13px, 0.78125vw, 15px); }
.cm_badge.badge5 { width: fit-content; min-height: clamp(30px, 1.875vw, 36px); padding: 0 clamp(12px, 0.8333333333vw, 16px); border-radius: clamp(79.2px, 5.15625vw, 99px); font-weight: 700; font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.5; }
.cm_badge.badge6 { min-width: clamp(60px, 3.75vw, 72px); min-height: clamp(28px, 1.6666666667vw, 32px); padding: 0 clamp(10px, 0.8333333333vw, 16px); border-radius: clamp(79.2px, 5.15625vw, 99px); font-weight: 700; font-size: clamp(13px, 0.78125vw, 15px); line-height: 1.5; }
.cm_badge.variant1 { background: #222; color: #fff; }
.cm_badge.variant2 { background-color: #009687; color: #fff; }
.cm_badge.variant3 { background-color: #f4f4f4; color: #333; }
.cm_badge.variant4 { background-color: #0ba935; color: #fff; }
.cm_badge.variant5 { background-color: #4456d2; color: #fff; }
.cm_badge.variant6 { background-color: #0453b0; color: #fff; }
.cm_badge.variant7 { background-color: #49a14b; color: #fff; }
.cm_badge.variant8 { background-color: #e12d3e; color: #fff; }
.cm_badge.variant9 { background-color: #3ab3dd; color: #fff; }
.cm_badge.variant10 { background-color: #8c57cb; color: #fff; }
.cm_badge.variant11 { background-color: #bd6c37; color: #fff; }
.cm_badge.variant12 { background-color: #6dc4a1; color: #fff; }
.cm_badge.variant13 { background-color: #66ade1; color: #fff; }
.cm_badge.variant14 { background-color: var(--color-primary-70); color: #fff; }
.cm_badge.variant15 { background-color: var(--color-primary-80); color: #fff; }
.cm_badge.variant16 { background-color: #434550; color: #fff; }

/* 공통 게시판 */
.cm_board_detail1 { border-top: 1px solid #000; }
.cm_board_detail1 .board_header_wrap { display: flex; flex-direction: column; }
.cm_board_detail1 .board_header { display: flex; flex-direction: column; padding: clamp(20px, 2.0833333333vw, 40px) clamp(10px, 2.0833333333vw, 40px); gap: clamp(16px, 1.25vw, 24px); border-bottom: 1px solid #cacaca; }
.cm_board_detail1 .board_header2 { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; padding: clamp(16px, 1.1979166667vw, 23px) clamp(20px, 2.0833333333vw, 40px); gap: 10px clamp(19.2px, 1.25vw, 24px); border-bottom: 1px solid #cacaca; background-color: #f8f8f8; }
.cm_board_detail1 .border_header_in { display: flex; flex-direction: column; gap: clamp(8px, 0.8333333333vw, 16px); }
.cm_board_detail1 .board_header_youtu { display: flex; align-items: baseline; gap: 4px clamp(12.8px, 0.8333333333vw, 16px); color: #333; }
.cm_board_detail1 .board_header_btn { flex-shrink: 0; margin-left: auto; }
.cm_board_detail1 .board_title { display: flex; align-items: center; gap: clamp(4.8px, 0.3125vw, 6px); font-weight: 700; font-size: clamp(22px, 1.6666666667vw, 32px); line-height: 1.4; }
.cm_board_detail1 .board_title .cm_icon { --icon-size: clamp(25.6px, 1.6666666667vw, 32px); }
.cm_board_detail1 .board_content { min-height: clamp(100px, 15.625vw, 300px); padding: clamp(20px, 2.0833333333vw, 40px) clamp(10px, 2.0833333333vw, 40px); }
.cm_board_detail1 .board_content.bd_padding2 { padding: clamp(25px, 3.3333333333vw, 64px) clamp(12px, 2.0833333333vw, 40px); }
.cm_board_detail1 .board_content.flex { display: flex; flex-direction: column; gap: clamp(20px, 2.0833333333vw, 40px); }
.cm_board_detail1 .cm_file_list { margin-top: clamp(32px, 2.0833333333vw, 40px); }
.cm_board_detail1 .board_overview { margin-top: clamp(32px, 2.0833333333vw, 40px); }
.cm_board_detail1 .board_youtu { aspect-ratio: 1200/675; width: 100%; }
.cm_board_detail1 .board_youtu iframe { width: 100%; height: 100%; }
.cm_board_detail1 .board_videobtns { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px clamp(12.8px, 0.8333333333vw, 16px); }
.cm_board_detail1 .board_videobtns .video_btn { display: flex; align-items: center; justify-content: center; min-width: clamp(116px, 6.9270833333vw, 133px); padding: clamp(6.4px, 0.4166666667vw, 8px) clamp(16px, 1.0416666667vw, 20px); gap: clamp(25.6px, 1.6666666667vw, 32px); border: 1px solid #cacaca; border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-color: #fff; transition: background-color 0.2s; }
.cm_board_detail1 .board_videobtns .video_btn:hover { background-color: #f8f8f8; }
.cm_board_detail1 .board_videobtns .video_btn span { display: flex; position: relative; align-items: center; height: clamp(38.4px, 2.5vw, 48px); }
.cm_board_detail1 .board_videobtns .video_btn span::before { position: absolute; top: 50%; right: clamp(-16px, -0.8333333333vw, -12.8px); width: 1px; height: clamp(19.2px, 1.25vw, 24px); transform: translateY(-50%); background-color: #dadada; content: ""; }
.cm_board_detail1 .board_videobtns .video_btn span:last-child::before { display: none; }
.cm_board_detail1 .board_videobtns .video_btn span.button_youtube { width: clamp(74.4px, 4.84375vw, 93px); }
.cm_board_detail1 .board_videobtns .video_btn span.button_naver_clip { width: clamp(60.8px, 3.9583333333vw, 76px); }
.cm_board_detail1 .board_inquiry_img { width: 100%; margin-top: clamp(32px, 2.0833333333vw, 40px); }
.cm_board_detail1 .gallery_swiper { display: flex; flex-direction: column; width: clamp(768px, 50vw, 960px); max-width: 100%; gap: clamp(19.2px, 1.25vw, 24px); }
.cm_board_detail1 .gallery_swiper .gallery_swiper_main { aspect-ratio: 3/2; border-radius: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_board_detail1 .gallery_thumbs_swiper { margin-top: 0; }
.cm_board_detail1 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide { aspect-ratio: 150/100; width: calc((100% - 60px) / 6); border: 0; border-radius: clamp(6.4px, 0.4166666667vw, 8px); opacity: 1; }
.cm_board_detail1 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide::before { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; content: ""; opacity: 0.5; transition: background-color 0.2s, opacity 0.2s; }
.cm_board_detail1 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide-thumb-active { box-shadow: none; }
.cm_board_detail1 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide-thumb-active::before { background-color: unset; opacity: 1; }
.cm_board_detail1 .gallery_swiper .swiper-button-prev,
.cm_board_detail1 .gallery_swiper .swiper-button-next { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(38px, 2.5vw, 48px); height: auto; transform: unset; border: 1px solid #cacaca; border-radius: 50%; background-image: unset; background-color: #fff; box-shadow: clamp(1.6px, 0.1041666667vw, 2px) clamp(3.2px, 0.2083333333vw, 4px) clamp(6.4px, 0.4166666667vw, 8px) 0 rgba(0, 0, 0, 0.16); transition: backgruond-color 0.2s ease, border-color 0.2s ease; }
.cm_board_detail1 .gallery_swiper .swiper-button-prev:hover,
.cm_board_detail1 .gallery_swiper .swiper-button-next:hover { border-color: var(--color-primary-70); background-color: var(--color-primary-70); }
.cm_board_detail1 .gallery_swiper .swiper-button-prev::before { -webkit-mask-image: url(../../images/common/icon_arrow_back.svg); mask-image: url(../../images/common/icon_arrow_back.svg); }
.cm_board_detail1 .gallery_swiper .swiper-button-next::before { -webkit-mask-image: url(../../images/common/icon_arrow_forward.svg); mask-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_board_detail1 .gallery_swiper .swiper-button-disabled { display: flex; opacity: 1; }
.cm_board_detail1 .gallery_swiper .swiper-button-prev::before,
.cm_board_detail1 .gallery_swiper .swiper-button-next::before { aspect-ratio: 1/1; width: clamp(16px, 1.0416666667vw, 20px); content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; background-color: #333; mask-position: center; transition: background-color 0.2s ease; }
.cm_board_detail1 .gallery_swiper .swiper-button-disabled::before { background-color: #999 !important; }
.cm_board_detail1 .gallery_swiper .swiper-button-prev:hover::before,
.cm_board_detail1 .gallery_swiper .swiper-button-next:hover::before { background-color: #fff; }
.cm_board_detail1 .board_infobox { margin-top: clamp(30px, 3.3333333333vw, 64px); }
.board_view_paging { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid #cacaca; border-bottom: 1px solid #cacaca; color: #333; }
.board_view_paging .paging_item { position: relative; }
.board_view_paging .paging_item.paging_prev:after { position: absolute; top: 50%; right: 0; width: 1px; height: clamp(32px, 2.0833333333vw, 40px); transform: translateY(-50%); background-color: #cacaca; content: ""; }
.board_view_paging .paging_item.paging_next .paging_link { display: flex; justify-content: flex-end; text-align: right; }
.board_view_paging .paging_link { display: flex; flex-direction: column; padding: clamp(14px, 1.6666666667vw, 32px) clamp(10px, 2.0833333333vw, 40px); gap: clamp(4px, 0.4166666667vw, 8px); transition: background-color 0.2s; }
.board_view_paging .paging_link:hover { background-color: var(--color-primary-5); }
.board_view_paging .paging_label { font-weight: 700; }
.board_view_paging .is_disabled .paging_label { color: #6a6a6a; }
.board_view_paging .is_disabled .paging_label .cm_icon:before { background-color: #999; }
.board_view_paging .paging_title { flex: 1 1 0; min-width: 0; transition: color 0.1s; }
.board_view_paging .paging_link:hover .paging_title { color: var(--color-primary-70); text-decoration: underline; }
.board_view_paging .is_disabled .paging_title { color: #6a6a6a; }
.board_view_paging .paging_link.is_disabled { pointer-events: none; }
.board_view_paging .is_disabled:hover .paging_title { text-decoration: none; }
.cm_board_detail1 .board_btns_area { margin-top: clamp(44.8px, 2.9166666667vw, 56px); text-align: center; }
.cm_board_faq .board1_list { display: flex; flex-direction: column; gap: clamp(12px, 1.0416666667vw, 20px); }
.cm_board_faq .board1_box { overflow: hidden; border: 1px solid #cacaca; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #fff; transition: border-color 0.2s; }
.cm_board_faq .board1_box:hover,
.cm_board_faq .board1_list > li.open .board1_box { border-color: var(--color-primary-70); }
.cm_board_faq .board1_top { display: flex; align-items: center; width: 100%; min-height: clamp(60px, 4.1666666667vw, 80px); padding: clamp(14px, 1.0416666667vw, 20px) clamp(16px, 1.6666666667vw, 32px); text-align: left; cursor: pointer; }
.cm_board_faq .board1_title { display: flex; align-items: center; justify-content: space-between; width: 100%; gap: 0 clamp(10px, 1.25vw, 24px); }
.cm_board_faq .board1_title .title_txt { flex: 1; font-size: clamp(16px, 0.9895833333vw, 19px); transition: color 0.2s; }
.cm_board_faq .board1_box:hover .title_txt { color: var(--color-primary-70); }
.cm_board_faq .board1_list > li.open .title_txt { color: var(--color-primary-70); font-weight: 700; }
.cm_board_faq .board1_title_in { display: flex; align-items: center; gap: clamp(8px, 1.25vw, 24px); }
.cm_board_faq .board1_title_in::after { display: block; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(19.2px, 1.25vw, 24px); background-color: #999; content: ""; -webkit-mask: url(../../images/common/icon_arrow_down.svg) no-repeat center/contain; mask: url(../../images/common/icon_arrow_down.svg) no-repeat center/contain; transition: background-color 0.2s, transform 0.3s ease; }
.cm_board_faq .board1_box:hover .board1_title_in::after { background-color: var(--color-primary-70); }
.cm_board_faq .board1_list > li.open .board1_title_in::after { transform: rotate(180deg); background-color: var(--color-primary-70); }
.cm_board_faq .board1_list .board1_pdf_btn { display: none; flex-shrink: 0; pointer-events: none; }
.cm_board_faq .board1_list > li.open .board1_pdf_btn { display: flex; pointer-events: auto; }
.cm_board_faq .board1_content { padding: clamp(16px, 1.6666666667vw, 32px); background-color: #f8f8f8; }
.cm_board_faq .board1_content ul { display: flex; flex-direction: column; margin: 0; padding: 0; gap: clamp(4.8px, 0.3125vw, 6px); }
.cm_board_faq .board1_content ul li { display: block; position: relative; margin-bottom: 0; padding-left: clamp(9.6px, 0.625vw, 12px); color: #000; font-size: clamp(14px, 0.8854166667vw, 17px); list-style: none !important; }
.cm_board_faq .board1_content ul li::before { position: absolute; top: clamp(8.8px, 0.5729166667vw, 11px); left: 0; aspect-ratio: 1/1; width: clamp(3.2px, 0.2083333333vw, 4px); border-radius: 50%; background-color: #6a6a6a; content: ""; }
.cm_board_faq .board1_content ul li::marker { content: none; }
.cm_board_faq .board1_content .board1_link { display: inline; width: fit-content; color: inherit; text-decoration: none; transition: color 0.2s; }
.cm_board_faq .board1_content .board1_link::after { display: inline-block; aspect-ratio: 1/1; width: clamp(16px, 1.0416666667vw, 20px); background-color: var(--color-primary-70); content: ""; -webkit-mask: url(../../images/common/icon_window.svg) no-repeat center/contain; margin-left: clamp(3.2px, 0.2083333333vw, 4px); vertical-align: clamp(-4px, -0.2083333333vw, -3.2px); mask: url(../../images/common/icon_window.svg) no-repeat center/contain; }
.cm_board_faq .board1_content .board1_link:hover { color: var(--color-primary-70); }
.cm_board_faq2 .board2_list { display: flex; flex-direction: column; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_board_faq2 .board2_box { overflow: hidden; border: 1px solid #cacaca; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #fff; transition: border-color 0.2s; }
.cm_board_faq2 .board2_box:hover,
.cm_board_faq2 .board2_box > li.open .board1_box { border-color: var(--color-primary-70); }
.cm_board_faq2 .board2_top { display: flex; align-items: center; width: 100%; min-height: clamp(65.6px, 4.2708333333vw, 82px); padding: clamp(14px, 1.25vw, 24px) clamp(16px, 1.6666666667vw, 32px); text-align: left; cursor: pointer; }
.cm_board_faq2 .board2_title { display: flex; align-items: center; justify-content: space-between; width: 100%; gap: 0 clamp(10px, 1.25vw, 24px); }
.cm_board_faq2 .board2_title::after { display: block; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(19.2px, 1.25vw, 24px); background-color: #999; content: ""; -webkit-mask: url(../../images/common/icon_arrow_down.svg) no-repeat center/contain; mask: url(../../images/common/icon_arrow_down.svg) no-repeat center/contain; transition: background-color 0.2s, transform 0.3s ease; }
.cm_board_faq2 .board2_box:hover .board2_title::after { background-color: var(--color-primary-70); }
.cm_board_faq2 .board2_list > li.open .board2_title::after { transform: rotate(180deg); background-color: var(--color-primary-70); }
.cm_board_faq2 .board2_title .title_txt { flex: 1; transition: color 0.2s; }
.cm_board_faq2 .board2_top:hover .board2_title .title_txt { color: var(--color-primary-70); }
.cm_board_faq2 .board2_content { padding: clamp(18px, 1.6666666667vw, 32px); border-top: 1px solid #cacaca; background-color: #fff; }
.cm_board_list1 .bd1_list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; gap: clamp(16px, 2.0833333333vw, 40px) clamp(10px, 1.25vw, 24px); }
.cm_board_list1 .bd1_box { display: flex; flex-direction: column; height: 100%; overflow: hidden; border: 1px solid #cacaca; border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #fff; }
.cm_board_list1 .bd1_thumb { aspect-ratio: 300/383; width: 100%; overflow: hidden; }
.cm_board_list1 .bd1_thumb_img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.cm_board_list1 .bd1_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; padding: clamp(10px, 0.8333333333vw, 16px) clamp(10px, 1.25vw, 24px) clamp(14px, 1.25vw, 24px) clamp(14px, 1.25vw, 24px); }
.cm_board_list1 .bd1_title { font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); }
.cm_board_list1 .bd1_body { display: flex; align-items: center; margin-top: clamp(12px, 1.25vw, 24px); gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_board_list1 .bd1_btn { flex: 1; min-width: 0; }
.cm_board_list2 .bd2_list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: clamp(10px, 2.0833333333vw, 40px); }
.cm_board_list2 .bd2_box { display: flex; flex-direction: column; height: 100%; overflow: hidden; border: 1px solid #cacaca; border-radius: clamp(9.6px, 0.625vw, 12px); border-color: #cacaca; background-color: #fff; transition: border-color 0.2s; }
.cm_board_list2 .bd2_box:hover { border-color: var(--color-primary-70); }
.cm_board_list2 .bd2_thumb { aspect-ratio: 69/95; width: 100%; overflow: hidden; }
.cm_board_list2 .bd2_thumb_img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.cm_board_list2 .bd2_box:hover .bd2_thumb_img { transform: scale(1.06); }
.cm_board_list2 .bd2_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; padding: clamp(10px, 0.8333333333vw, 16px) clamp(10px, 1.25vw, 24px) clamp(14px, 1.25vw, 24px) clamp(14px, 1.25vw, 24px); }
.cm_board_list2 .bd2_title { font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); transition: color 0.2s; }
.cm_board_list2 .bd2_box:hover .bd2_title { color: var(--color-primary-70); }
.cm_board_list2 .bd2_body { display: flex; align-items: center; margin-top: clamp(6.4px, 0.4166666667vw, 8px); gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_board_list3 .bd3_list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: clamp(16px, 2.0833333333vw, 40px) clamp(12px, 2.0833333333vw, 40px); }
.cm_board_list3 .bd3_box { display: flex; flex-direction: column; height: 100%; gap: clamp(12px, 1.25vw, 24px); background-color: #fff; }
.cm_board_list3 .bd3_thumb { aspect-ratio: 16/9; width: 100%; overflow: hidden; border: clamp(2.4px, 0.15625vw, 3px) solid transparent; border-radius: clamp(12.8px, 0.8333333333vw, 16px); transition: border-color 0.3s ease; }
.cm_board_list3.ratio_1_1 .bd3_thumb { aspect-ratio: 1/1; }
.cm_board_list3 .bd3_box:hover .bd3_thumb { border-color: var(--color-primary-70); }
.cm_board_list3 .bd3_thumb_img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.cm_board_list3 .bd3_box:hover .bd3_thumb_img { transform: scale(1.06); }
.cm_board_list3 .bd3_content { display: flex; flex: 1; flex-direction: column; gap: clamp(8px, 0.625vw, 12px); }
.cm_board_list3 .bd3_title { font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); transition: color 0.2s; }
.cm_board_list3 .bd3_box:hover .bd3_title { color: var(--color-primary-70); }
.cm_board_list3 .bd3_date { margin-top: auto; color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_board_list4 .bd4_list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; gap: clamp(16px, 2.0833333333vw, 40px) clamp(12px, 2.0833333333vw, 40px); }
.cm_board_list4 .bd4_box { display: flex; flex-direction: column; height: 100%; gap: clamp(12px, 1.25vw, 24px); background-color: #fff; }
.cm_board_list4 .bd4_thumb { aspect-ratio: 1/1; width: 100%; overflow: hidden; border: clamp(2.4px, 0.15625vw, 3px) solid transparent; border-radius: clamp(12.8px, 0.8333333333vw, 16px); transition: border-color 0.3s ease; }
.cm_board_list4 .bd4_list li.active .bd4_thumb,
.cm_board_list4 .bd4_box:hover .bd4_thumb { border-color: var(--color-primary-70); }
.cm_board_list4 .bd4_thumb_img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.cm_board_list4 .bd4_box:hover .bd4_thumb_img { transform: scale(1.06); }
.cm_board_list4 .bd4_title { font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); transition: color 0.2s; }
.cm_board_list4 .bd4_list li.active .bd4_title,
.cm_board_list4 .bd4_box:hover .bd4_title { color: var(--color-primary-70); }
.cm_board_list5 { overflow: hidden; border: 1px solid #cacaca; border-radius: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_board_list5 .gallery_swiper { display: flex; flex-direction: column; max-width: clamp(750px, 53.0208333333vw, 1018px); padding: clamp(20px, 3.3333333333vw, 64px) clamp(20px, 3.3333333333vw, 64px) clamp(20px, 2.0833333333vw, 40px) clamp(20px, 3.3333333333vw, 64px); gap: clamp(20px, 2.0833333333vw, 40px); background-color: #fff; }
.cm_board_list5 .gallery_swiper .gallery_swiper_main_wrap { display: flex; align-items: center; gap: clamp(10px, 2.5vw, 48px); }
.cm_board_list5 .gallery_swiper .swiper-button-disabled { display: block; opacity: 1; }
.cm_board_list5 .gallery_swiper .swiper-button-disabled::before { background-color: #999 !important; }
.cm_board_list5 .gallery_swiper .swiper-button-prev,
.cm_board_list5 .gallery_swiper .swiper-button-next { display: flex; position: unset; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(40px, 2.9166666667vw, 56px); height: auto; transform: unset; border: none; border-radius: 50%; background-image: unset; background-color: #f4f4f4; box-shadow: unset; }
.cm_board_list5 .gallery_swiper .swiper-button-prev:hover,
.cm_board_list5 .gallery_swiper .swiper-button-next:hover { background-color: var(--color-primary-70); }
.cm_board_list5 .gallery_swiper .swiper-button-prev::before,
.cm_board_list5 .gallery_swiper .swiper-button-next::before { aspect-ratio: 1/1; width: clamp(16px, 1.25vw, 24px); content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; background-color: #333; mask-position: center; transition: background-color 0.2s ease; }
.cm_board_list5 .gallery_swiper .swiper-button-prev::before { -webkit-mask-image: url(../../images/common/icon_arrow_left.svg); mask-image: url(../../images/common/icon_arrow_left.svg); }
.cm_board_list5 .gallery_swiper .swiper-button-next::before { -webkit-mask-image: url(../../images/common/icon_arrow_right.svg); mask-image: url(../../images/common/icon_arrow_right.svg); }
.cm_board_list5 .gallery_swiper .gallery_swiper_main { aspect-ratio: 1/1 !important; width: 100%; }
.cm_board_list5 .gallery_swiper .swiper-button-prev:hover::before,
.cm_board_list5 .gallery_swiper .swiper-button-next:hover::before { background-color: #fff; }
.cm_board_list5 .gallery_thumbs_swiper { width: 68%; margin: 0 auto; margin-top: 0; }
.cm_board_list5 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide { aspect-ratio: 1/1; width: calc((100% - 60px) / 6); border: none; border-radius: clamp(6.4px, 0.4166666667vw, 8px); opacity: 1; }
.cm_board_list5 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide::before { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; content: ""; opacity: 0.5; transition: background-color 0.2s, opacity 0.2s; }
.cm_board_list5 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide-thumb-active { box-shadow: none; }
.cm_board_list5 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide-thumb-active::before { background-color: unset; opacity: 1; }
.cm_board_list5 .bd5_content { display: flex; flex-direction: column; padding: clamp(15px, 2.0833333333vw, 40px) clamp(20px, 3.3333333333vw, 64px); gap: clamp(10px, 0.8333333333vw, 16px); background-color: #f8f8f8; }
.cm_board_list5 .bd5_title { font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.4; }
.cm_board_list5 .bd5_date { color: #6a6a6a; font-size: clamp(13px, 0.8854166667vw, 17px); }
.cm_board_list6 .bd6_list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; gap: clamp(12px, 1.0416666667vw, 20px) clamp(12px, 1.0416666667vw, 20px); }
.cm_board_list6 .bd6_box { display: flex; flex-direction: column; height: 100%; overflow: hidden; border: clamp(2.4px, 0.15625vw, 3px) solid transparent; border-radius: clamp(12.8px, 0.8333333333vw, 16px); transition: border-color 0.3s ease; }
.cm_board_list6 .bd6_box:hover { border-color: var(--color-primary-70); }
.cm_board_list6 .bd6_thumb { aspect-ratio: 149/112; width: 100%; overflow: hidden; }
.cm_board_list6 .bd6_thumb_img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.cm_board_list6 .bd6_box:hover .bd6_thumb_img { transform: scale(1.06); }
.cm_board_list6 .bd6_content { position: relative; flex: 1; padding: clamp(24px, 1.5625vw, 30px) clamp(16px, 1.0416666667vw, 20px) clamp(22px, 1.4583333333vw, 28px) clamp(16px, 1.0416666667vw, 20px); background-color: #f3f4fb; }
.cm_board_list6 .bd6_title { font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); transition: color 0.2s; }
.cm_board_list6 .bd6_box:hover .bd6_title { color: var(--color-primary-70); }
.cm_board_list6 .bd6_date { display: flex; position: absolute; top: clamp(-61px, -3.1770833333vw, -48.8px); left: clamp(16px, 1.6666666667vw, 32px); flex-direction: column; align-items: center; justify-content: center; min-width: clamp(70.4px, 4.5833333333vw, 88px); min-height: clamp(64px, 4.1666666667vw, 80px); padding: clamp(8px, 0.5208333333vw, 10px); border: 2px solid var(--color-primary-70); border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #fff; }
.cm_board_list6 .bd6_date_year { font-size: clamp(13px, 0.78125vw, 15px); }
.cm_board_list6 .bd6_date_day { margin-top: clamp(-3px, -0.15625vw, -2.4px); color: var(--color-primary-70); font-weight: 700; font-size: clamp(15px, 1.09375vw, 21px); }
.cm_board_list7 .bd7_list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: clamp(12px, 2.0833333333vw, 40px); }
.cm_board_list7 .bd7_box { display: flex; flex-direction: column; height: 100%; overflow: hidden; border-radius: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_board_list7 .bd7_thumb { aspect-ratio: 4/3; width: 100%; overflow: hidden; border: clamp(2.4px, 0.15625vw, 3px) solid transparent; border-radius: clamp(12.8px, 0.8333333333vw, 16px); transition: border-color 0.3s ease; }
.cm_board_list7 .bd7_box:hover .bd7_thumb { border-color: var(--color-primary-70); }
.cm_board_list7 .bd7_thumb_img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.cm_board_list7.contain .bd7_thumb_img { object-fit: contain; }
.cm_board_list7 .bd7_box:hover .bd7_thumb_img { transform: scale(1.06); }
.cm_board_list7 .bd7_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; padding-top: clamp(12px, 1.25vw, 24px); gap: clamp(9.6px, 0.625vw, 12px); transition: background-color 0.2s; }
.cm_board_list7 .bd7_title { font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); transition: color 0.2s; }
.cm_board_list7 .bd7_box:hover .bd7_title { color: var(--color-primary-70); }
.cm_board_list7 .bd7_date { color: #333; }
.cm_board_list8 .bd8_list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: clamp(10px, 2.0833333333vw, 40px); }
.cm_board_list8 .bd8_box { display: flex; flex-direction: column; height: 100%; gap: clamp(19.2px, 1.25vw, 24px); background-color: #fff; }
.cm_board_list8 .bd8_thumb { aspect-ratio: 1/1; width: 100%; overflow: hidden; border: clamp(2.4px, 0.15625vw, 3px) solid transparent; border-radius: clamp(12.8px, 0.8333333333vw, 16px); transition: border-color 0.3s ease; }
.cm_board_list8 .bd8_box:hover .bd8_thumb { border-color: var(--color-primary-70); }
.cm_board_list8 .bd8_thumb_img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.cm_board_list8 .bd8_box:hover .bd8_thumb_img { transform: scale(1.06); }
.cm_board_list8 .bd8_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; gap: clamp(9.6px, 0.625vw, 12px); }
.cm_board_list8 .bd8_title { font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); transition: color 0.2s; }
.cm_board_list8 .bd8_box:hover .bd8_title { color: var(--color-primary-70); }
.cm_board_list8 .cm_toolbar4 .toolbar_item { color: #333; }
.cm_board_list9 .bd9_list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; gap: clamp(10px, 2.0833333333vw, 40px); }
.cm_board_list9 .bd9_box { display: flex; flex-direction: column; height: 100%; gap: clamp(19.2px, 1.25vw, 24px); }
.cm_board_list9 .bd9_thumb { aspect-ratio: 16/9; width: 100%; overflow: hidden; border: clamp(2.4px, 0.15625vw, 3px) solid transparent; border-radius: clamp(12.8px, 0.8333333333vw, 16px); transition: border-color 0.3s ease; }
.cm_board_list9 .bd9_box:hover .bd9_thumb { border-color: var(--color-primary-70); }
.cm_board_list9 .bd9_thumb_img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.cm_board_list9 .bd9_box:hover .bd9_thumb_img { transform: scale(1.06); }
.cm_board_list9 .bd9_content { display: flex; align-items: center; justify-content: center; }
.cm_board_list9 .bd9_title { font-size: clamp(16px, 1.09375vw, 21px); transition: color 0.2s; }
.cm_board_list9 .bd9_box:hover .bd9_title { color: var(--color-primary-70); }
.cm_board_list10 .bd10_list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: clamp(10px, 2.0833333333vw, 40px); }
.cm_board_list10 .bd10_box { display: flex; flex-direction: column; height: 100%; gap: clamp(16px, 1.25vw, 24px); }
.cm_board_list10 .bd10_thumb { aspect-ratio: 4/3; width: 100%; overflow: hidden; border: clamp(2.4px, 0.15625vw, 3px) solid transparent; border-radius: clamp(12.8px, 0.8333333333vw, 16px); transition: border-color 0.3s ease; }
.cm_board_list10 .bd10_box:hover .bd10_thumb { border-color: var(--color-primary-70); }
.cm_board_list10 .bd10_thumb_img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.cm_board_list10 .bd10_box:hover .bd10_thumb_img { transform: scale(1.06); }
.cm_board_list10 .bd10_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; gap: clamp(9.6px, 0.625vw, 12px); }
.cm_board_list10 .bd10_title { font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); line-height: 1.5; transition: color 0.2s; }
.cm_board_list10 .bd10_box:hover .bd10_title { color: var(--color-primary-70); }
.cm_board_list10 .bd10_info { display: flex; align-items: center; justify-content: space-between; gap: clamp(9.6px, 0.625vw, 12px); color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_board_list10 .bd10_hit { --icon-size: 20px; flex-shrink: 0; }

/* 공통 박스 */
[class*=cm_box] { --box-padding: clamp(32px, 2.0833333333vw, 40px); padding: var(--box-padding); }
a[class*=cm_box] { display: block; }

/* padding */
.box_pd_size1 { --box-padding: clamp(14px, 1.6666666667vw, 32px) clamp(16px, 2.0833333333vw, 40px); }
.box_pd_size2 { --box-padding: clamp(20px, 2.0833333333vw, 40px); }
.box_pd_size3 { --box-padding: clamp(20px, 2.0833333333vw, 40px) clamp(25px, 4.1666666667vw, 80px); }
.box_pd_size4 { --box-padding: clamp(16px, 1.6666666667vw, 32px); }
.box_pd_size5 { --box-padding: clamp(16px, 1.6666666667vw, 32px) clamp(16px, 1.6666666667vw, 32px) clamp(14px, 1.25vw, 24px) clamp(16px, 1.6666666667vw, 32px); }
.box_pd_size6 { --box-padding: clamp(16px, 1.25vw, 24px) clamp(18px, 1.6666666667vw, 32px); }
.box_pd_size7 { --box-padding: clamp(10px, 4.1666666667vw, 80px); }
.box_pd_size8 { --box-padding: clamp(15px, 2.0833333333vw, 40px); }
.box_pd_size9 { --box-padding: clamp(20px, 1.25vw, 24px); }
.box_pd_size10 { --box-padding: clamp(24px, 1.6666666667vw, 32px); }
.box_pd_size11 { --box-padding: clamp(24px, 2.9166666667vw, 56px); }
.box_pd_size12 { --box-padding: clamp(35px, 2.0833333333vw, 40px) 20px; }

/* variant */
.cm_box.variant1 { border: 2px solid transparent; border-radius: clamp(19.2px, 1.25vw, 24px); background-color: #f3f4fb; transition: background-color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease; }
.cm_box.variant2 { border: 1px solid #dadada; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #fff; box-shadow: clamp(3.2px, 0.2083333333vw, 4px) clamp(6.4px, 0.4166666667vw, 8px) clamp(12.8px, 0.8333333333vw, 16px) 0 rgba(0, 0, 0, 0.08); }
.cm_box.variant3 { border: 1px solid #cacaca; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #f8f8f8; box-shadow: clamp(3.2px, 0.2083333333vw, 4px) clamp(6.4px, 0.4166666667vw, 8px) clamp(12.8px, 0.8333333333vw, 16px) 0 rgba(0, 0, 0, 0.08); }
.cm_box.variant4 { border: 1px solid var(--color-primary-70); border-radius: clamp(20px, 5.15625vw, 99px); background-color: #fff; box-shadow: 0 clamp(3.2px, 0.2083333333vw, 4px) clamp(9.6px, 0.625vw, 12px) 0 rgba(0, 139, 53, 0.12); }
.cm_box.variant5 { border-radius: clamp(16px, 1.0416666667vw, 20px); background-color: #f3f4fb; }
.cm_box.variant6 { border: 1px solid #cacaca; border-bottom: 0; border-radius: clamp(12.8px, 0.8333333333vw, 16px) clamp(12.8px, 0.8333333333vw, 16px) 0 0; background-color: #fff; }
.cm_box.variant7 { border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #f2fdf8; }
.cm_box.variant8 { border: 1px solid #cacaca; border-top: 0; border-radius: 0 0 clamp(12.8px, 0.8333333333vw, 16px) clamp(12.8px, 0.8333333333vw, 16px); background-color: #f8f8f8; }
.cm_box.variant9 { background-color: #f4f4f4; }
.cm_box.variant10 { border-radius: clamp(19.2px, 1.25vw, 24px); background-color: #fff; }
.cm_box.variant11 { border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #f7f7fc; }
.cm_box.variant12 { position: relative; border: 1px solid var(--color-primary-70); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #fff; }
.cm_box.variant13 { border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-color: #f3f4fb; }
.cm_box.variant14 { border: 1px solid var(--color-primary-70); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #fff; box-shadow: clamp(3.2px, 0.2083333333vw, 4px) clamp(6.4px, 0.4166666667vw, 8px) clamp(12.8px, 0.8333333333vw, 16px) 0 rgba(0, 0, 0, 0.08); }
.cm_box.variant15 { border-top: 1px solid #cacaca; border-bottom: 1px solid #cacaca; background-color: #fafafa; }

/* area box */
.cm_area_box1 { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(6px, 0.625vw, 12px); }
.cm_area_box2 { display: flex; flex-direction: column; justify-content: center; gap: clamp(10px, 0.8333333333vw, 16px); }
.cm_area_box3 { display: flex; flex-direction: column; gap: clamp(40px, 2.9166666667vw, 56px); }
.cm_area_box4 { display: flex; flex-direction: column; gap: clamp(9.6px, 0.625vw, 12px); }
.cm_area_box5 { display: flex; flex-direction: column; gap: clamp(40px, 4.1666666667vw, 80px); }
.cm_area_box6 { display: flex; flex-direction: column; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_area_box7 { display: flex; flex-direction: column; gap: clamp(20px, 2.0833333333vw, 40px); }
.cm_area_box8 { display: flex; flex-direction: column; gap: clamp(16px, 1.0416666667vw, 20px); }

/* file box */
.cm_flex_box { display: flex; flex-direction: column; gap: var(--box-flex-gap); }
.cm_flex_box.flex_gap1 { --box-flex-gap: clamp(28px, 2.9166666667vw, 56px); }

/* icon_box */
.cm_icon_box1 { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: clamp(8px, 1.0416666667vw, 20px); }
.cm_icon_box2 { display: flex; align-items: center; gap: clamp(12px, 1.25vw, 24px); }
.cm_icon_box3 { display: flex; align-items: flex-start; gap: clamp(16px, 1.6666666667vw, 32px); }
.cm_iconbox_bg1 { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(50px, 4.1666666667vw, 80px); padding: clamp(8px, 0.8333333333vw, 16px); border-radius: clamp(19.2px, 1.25vw, 24px); background-color: #fff; box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08); }
.cm_iconbox_bg2 { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(40px, 2.9166666667vw, 56px); padding: clamp(8px, 0.5208333333vw, 10px); border-radius: 50%; background-color: #e2e4f0; transition: background-color 0.25s ease; }
.cm_iconbox_bg2 .cm_icon { transition: color 0.25s ease, transform 0.25s ease; }
.cm_iconbox_bg3 { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(70px, 5vw, 96px); padding: clamp(8px, 0.5208333333vw, 10px); border-radius: clamp(25.6px, 1.6666666667vw, 32px); background-color: #f7f7fc; }
.cm_iconbox_bg3::before { aspect-ratio: 1/1; width: clamp(35px, 2.5vw, 48px); background-position: center; background-size: contain; background-repeat: no-repeat; content: ""; }
.cm_iconbox_bg3.icon_size2::before { aspect-ratio: 31/32; width: clamp(49.6px, 3.2291666667vw, 62px); }
.cm_iconbox_bg3.school::before { background-image: url(../../images/common/icon_school.svg); }
.cm_iconbox_bg3.character::before { background-image: url(../../images/common/character.svg); }

/* 마우스 hover 효과 */
.cm_box.hover_effect1:hover { border-color: var(--color-primary-70); background-color: #f3f4fb; box-shadow: 0 clamp(3.2px, 0.2083333333vw, 4px) clamp(9.6px, 0.625vw, 12px) rgba(0, 0, 0, 0.06); }
.cm_box.hover_effect1:hover .cm_iconbox_bg2 { background-color: var(--color-primary-70); }
.cm_box.hover_effect1:hover .cm_iconbox_bg2 .cm_icon { transform: translateX(4px); color: #fff; }

/* 모눈종이 */
.cm_graphpaper_box { display: flex; align-items: center; justify-content: center; width: 100%; height: clamp(200px, 14.5833333333vw, 280px); padding: clamp(24px, 1.5625vw, 30px); border: 1px solid #cacaca; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: url(../../images/common/bg_graph_paper.svg) repeat top/cover; }
.cm_graphpaper_box.type2 { height: clamp(110px, 12.6041666667vw, 242px); border-bottom: 0; border-radius: clamp(12.8px, 0.8333333333vw, 16px) clamp(12.8px, 0.8333333333vw, 16px) 0 0; }
.cm_graphpaper_box_bottom { display: flex; align-items: center; justify-content: center; min-height: clamp(45px, 3.1770833333vw, 61px); padding: clamp(8px, 0.5208333333vw, 10px); border: 1px solid #cacaca; border-top: 0; border-radius: 0 0 clamp(12.8px, 0.8333333333vw, 16px) clamp(12.8px, 0.8333333333vw, 16px); background-color: #f8f8f8; text-align: center; }
.cm_graphpaper_box .graphpaper_logo1 { width: clamp(180px, 17.8645833333vw, 343px); }
.cm_graphpaper_box .graphpaper_logo2 { width: clamp(150px, 16.3541666667vw, 314px); }
.cm_graphpaper_box .graphpaper_logo3 { width: clamp(250px, 26.5104166667vw, 509px); }
.cm_graphpaper_box .graphpaper_logo4 { width: clamp(250px, 23.4375vw, 450px); }
.cm_graphpaper_box .graphpaper_logo5 { width: clamp(250px, 25.0520833333vw, 481px); }

/* 공통 버튼 */
.cm_btn_area { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: clamp(20px, 2.0833333333vw, 40px); gap: clamp(4px, 0.2604166667vw, 5px) clamp(5px, 0.625vw, 12px); }
.cm_btn_area.fixed { flex-wrap: nowrap; }
.cm_btn_area.fixed > * { margin: 0; margin-right: clamp(4px, 0.2604166667vw, 5px); }
.cm_btn_area.fixed > *:last-child { margin-right: 0; }
.cm_btn_area.center { justify-content: center; }
.cm_btn_area.right { justify-content: flex-end; }
.cm_btn_area .btns { display: flex; flex-wrap: wrap; gap: clamp(3.2px, 0.2083333333vw, 4px) clamp(8px, 0.5208333333vw, 10px); }
.cm_btn { display: inline-flex; align-items: center; justify-content: center; border: 1px solid transparent; background-color: #fff; font-weight: 400; line-height: 1.2; text-align: center; word-break: keep-all; transition: border 0.3s ease, background 0.3s ease; }
.cm_btn.btn_shadow { box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.1); }
.cm_btn.size_xl { min-width: clamp(140px, 10.4166666667vw, 200px); min-height: clamp(48px, 3.3333333333vw, 64px); padding: 0 clamp(16px, 1.25vw, 24px); border-radius: clamp(6.4px, 0.4166666667vw, 8px); font-size: clamp(17px, 1.25vw, 24px); }
.cm_btn.size_lg { min-width: clamp(72px, 4.6875vw, 90px); min-height: var(--form_height_lg); padding: 0 clamp(16px, 1.0416666667vw, 20px); border-radius: clamp(6.4px, 0.4166666667vw, 8px); font-size: clamp(15px, 0.9895833333vw, 19px); }
.cm_btn.size_lg2 { min-width: clamp(70.4px, 4.5833333333vw, 88px); min-height: var(--form_height_lg); padding: 0 clamp(16px, 1.0416666667vw, 20px); border-radius: clamp(4.8px, 0.3125vw, 6px); font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_btn.size_md { min-width: clamp(62.4px, 4.0625vw, 78px); min-height: var(--form_height_md); padding: 0 clamp(12.8px, 0.8333333333vw, 16px); border-radius: clamp(4.8px, 0.3125vw, 6px); font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_btn.size_sm { min-width: clamp(51.2px, 3.3333333333vw, 64px); min-height: var(--form_height_sm); padding: 0 clamp(9.6px, 0.625vw, 12px); border-radius: clamp(4.8px, 0.3125vw, 6px); font-size: clamp(14px, 0.78125vw, 15px); }
.cm_btn.size_xs { min-width: clamp(48px, 3.125vw, 60px); min-height: var(--form_height_xs); padding: 0 clamp(8px, 0.5208333333vw, 10px); border-radius: clamp(3.2px, 0.2083333333vw, 4px); font-size: clamp(14px, 0.78125vw, 15px); }
.cm_btn.variant1 { background: var(--color-primary-80); color: #fff; }
.cm_btn.variant1:not(.hover_none):hover { background: var(--color-primary-90); }
.cm_btn.variant2 { border-color: var(--color-primary-80); color: var(--color-primary-80); }
.cm_btn.variant2:not(.hover_none):hover { background: var(--color-primary-10); }
.cm_btn.variant3 { border-color: var(--color-gray-100); color: var(--color-gray-100); }
.cm_btn.variant3:not(.hover_none):hover { background: var(--color-gray-10); }
.cm_btn.variant4 { background-color: var(--color-gray-100); color: #fff; }
.cm_btn.variant4:not(.hover_none):hover { background-color: var(--color-gray-60); }
.cm_btn.variant5 { border-color: var(--color-gray-40); color: #000; }
.cm_btn.variant5:not(.hover_none):hover { background-color: var(--color-gray-5); }
.cm_btn.variant6 { border-color: var(--color-primary-70); color: var(--color-primary-70); }
.cm_btn.variant6:not(.hover_none):hover { background: var(--color-primary-10); }
.cm_btn.variant7 { background-color: var(--color-primary-70); color: #fff; }
.cm_btn.variant7:not(.hover_none):hover { background-color: var(--color-primary-80); }
.cm_btn.variant8 { background: linear-gradient(90deg, #27a321 0%, #096f82 50%, #27a321 100%) 0 0/200% 100%; color: #fff; font-weight: 700; transition: background-position 0.5s ease, transform 0.3s ease, box-shadow 0.3s ease; }
.cm_btn.variant8:not(.hover_none):hover { transform: translateY(-2px); background-position: 100% 0; box-shadow: 0 clamp(4.8px, 0.3125vw, 6px) clamp(12.8px, 0.8333333333vw, 16px) 0 rgba(9, 111, 130, 0.35); }
.cm_btn.disabled { cursor: default; }
.cm_btn.disabled,
.cm_btn.disabled:hover,
.cm_btn:disabled,
.cm_btn:disabled:hover { border-color: transparent !important; background-color: var(--color-background-disabled) !important; color: var(--color-text-secondary) !important; }
.cm_btn_print { display: flex; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(38.4px, 2.5vw, 48px); border: 1px solid #cacaca; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #fff; transition: background-color 0.2s, border-color 0.2s; }
.cm_btn_print::before { aspect-ratio: 1/1; width: clamp(19.2px, 1.25vw, 24px); content: ""; -webkit-mask: url(../../images/common/icon_print.svg) no-repeat center/contain; background-color: #333; mask: url(../../images/common/icon_print.svg) no-repeat center/contain; transition: background-color 0.2s; }
.cm_btn_print:hover { border-color: var(--color-primary-70); background-color: var(--color-primary-70); }
.cm_btn_print:hover::before { background-color: #fff; }
.cm_btn_link { display: flex; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(40px, 2.5vw, 48px); border: 1px solid #cacaca; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #fff; transition: background-color 0.2s, border-color 0.2s; }
.cm_btn_link::before { aspect-ratio: 1/1; width: 20px; content: ""; -webkit-mask: url(../../images/common/icon_plus.svg) no-repeat center/contain; background-color: #333; mask: url(../../images/common/icon_plus.svg) no-repeat center/contain; transition: background-color 0.2s; }
.cm_btn_link:hover { border-color: var(--color-primary-70); background-color: var(--color-primary-70); }
.cm_btn_link:hover::before { background-color: #fff; }
.cm_event_marker { display: none; z-index: 10; position: absolute; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(96px, 8.3333333333vw, 160px); overflow: hidden; border: clamp(2px, 0.15625vw, 3px) solid #ffc72d; border-radius: 50%; background: linear-gradient(180deg, #0ab451 0%, #0f8292 100%); box-shadow: 0 clamp(3.2px, 0.2083333333vw, 4px) clamp(20px, 2.0833333333vw, 40px) 0 rgba(255, 200, 20, 0.4), 0 0 clamp(8px, 0.625vw, 12px) 0 rgba(167, 142, 0, 0.8); animation: floating 2s ease-in-out infinite; transition: filter 0.3s ease; }
.cm_event_marker:hover { filter: brightness(1.08); }
.cm_event_marker .marker_img { display: block; position: absolute; top: 50%; left: 50%; aspect-ratio: 108/84.68; width: 70.13%; transform: translate(-50%, -50%); filter: drop-shadow(clamp(1.6px, 0.1041666667vw, 2px) clamp(3.2px, 0.2083333333vw, 4px) clamp(4.8px, 0.3125vw, 6px) rgba(0, 0, 0, 0.4)); }
.cm_event_marker .marker_bubble { display: block; position: absolute; top: 15.26%; left: 55.52%; width: 24.57%; height: auto; transform-origin: 30% 80%; animation: marker_bubble_pop 2.4s ease-in-out infinite; }
.cm_event_marker.pos1 { top: clamp(-56px, -2.9166666667vw, -24px); left: clamp(-40px, -2.0833333333vw, -8px); }
.cm_event_marker.pos2 { top: clamp(18px, 1.25vw, 24px); right: calc(100% + clamp(30px, 5.4166666667vw, 104px)); }
.cm_event_marker.pos3 { top: clamp(-48px, -2.5vw, -24px); right: 50%; }
.cm_event_marker.pos4 { right: clamp(12px, 10.4166666667vw, 200px); bottom: clamp(-72px, 1.5625vw, 30px); }
.cm_event_marker.pos5 { right: clamp(12px, 1.25vw, 24px); bottom: clamp(-124px, -6.4583333333vw, -80px); }
.cm_icon_btn { display: flex; align-items: center; gap: clamp(4.8px, 0.3125vw, 6px); }

/* 공통 캐러셀 */
.cm_swiper { width: 100%; max-width: clamp(640px, 43.75vw, 840px); margin: 0 auto; }
.cm_swiper .swiper-slide { display: flex; align-items: center; justify-content: center; height: auto; }
.cm_swiper .swiper-button-prev,
.cm_swiper .swiper-button-next { display: block; position: absolute; top: 50%; width: clamp(35px, 2.6041666667vw, 50px); height: clamp(35px, 2.6041666667vw, 50px); margin-top: 0; overflow: hidden; transform: translateY(-50%); border: 1px solid #ddd; border-radius: 1000px; background-position: center; background-size: 55%; background-repeat: no-repeat; background-color: #fff; box-shadow: 1px 2px 6px 0 rgba(0, 0, 0, 0.1); text-indent: 100%; white-space: nowrap; transition: background-color 0.2s, border-color 0.2s, background-image 0.2s, color 0.2s, opacity 0.2s; }
.cm_swiper .swiper-button-prev:after,
.cm_swiper .swiper-button-next:after { display: none; }
.cm_swiper .swiper-button-prev { left: clamp(-25px, -1.3020833333vw, -20px); background-image: url(../../images/common/icon_arrow_back.svg); }
.cm_swiper .swiper-button-next { right: clamp(-25px, -1.3020833333vw, -20px); background-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_swiper .swiper-button-disabled { display: none; }
.cm_swiper .swiper-pagination { position: static; margin-top: clamp(10px, 0.625vw, 12px); }
.cm_swiper .swiper-pagination-bullet { width: clamp(6.4px, 0.4166666667vw, 8px); height: clamp(6.4px, 0.4166666667vw, 8px); margin: 0 2px !important; border-radius: 1000px; background-color: var(--color-icon-disabled); opacity: 1; transition: background-color 0.2s, opacity 0.2s; }
.cm_swiper .swiper-pagination-bullet-active { width: clamp(16px, 1.0416666667vw, 20px); background-color: var(--color-icon-primary); }
.cm_swiper2 { margin-top: clamp(10px, 0.625vw, 12px); }
.cm_swiper .gallery_swiper_main_wrap { position: relative; }
.cm_swiper .gallery_swiper_main { aspect-ratio: 16/9; overflow: hidden; }
.cm_swiper .gallery_swiper_main .swiper-wrapper,
.cm_swiper .gallery_swiper_main .swiper-slide { height: 100%; }
.cm_swiper .gallery_swiper_main .swiper-slide img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cm_swiper2 .gallery_thumbs_swiper_sub { width: 100%; }
.cm_swiper2 .gallery_thumbs_swiper_sub .swiper-slide { aspect-ratio: 16/9; width: calc((100% - 32px) / 5); overflow: hidden; border: 2px solid transparent; cursor: pointer; opacity: 0.35; transition: opacity 0.2s, border-color 0.2s, transform 0.2s; }
.cm_swiper2 .gallery_thumbs_swiper_sub .swiper-slide img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cm_swiper2 .gallery_thumbs_swiper_sub .swiper-slide.is_placeholder { cursor: default; filter: grayscale(100%); }
.cm_swiper2 .gallery_thumbs_swiper_sub .swiper-slide-thumb-active { transform: none; border-color: var(--color-primary-80); box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.15); opacity: 1; }
.cm_swiper3 { aspect-ratio: 3/2; width: clamp(350px, 23.4375vw, 450px); max-width: 100%; border-radius: clamp(19.2px, 1.25vw, 24px) clamp(19.2px, 1.25vw, 24px) 0 clamp(19.2px, 1.25vw, 24px); }
.cm_swiper3 .cm_badge { z-index: 2; position: absolute; top: clamp(12.8px, 0.8333333333vw, 16px); left: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_swiper3 .card_img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.cm_swiper3 .card_control { display: flex; z-index: 10; position: absolute; right: 0; bottom: 0; align-items: center; justify-content: center; width: clamp(83.2px, 5.4166666667vw, 104px); height: clamp(44.8px, 2.9166666667vw, 56px); padding: clamp(8px, 0.8333333333vw, 16px) clamp(10px, 1.0416666667vw, 20px); gap: clamp(8px, 0.5208333333vw, 10px); border-radius: clamp(19.2px, 1.25vw, 24px) 0 0 0; background-color: #fff; }
.cm_swiper3 .card_control::before,
.cm_swiper3 .card_control::after { position: absolute; aspect-ratio: 1/1; width: 24px; background-color: #fff; content: ""; clip-path: path("M 0 24 C 10 24, 22 18, 24 0 L 24 24 Z"); }
.cm_swiper3 .card_control::before { right: calc(100% - 1px); bottom: -1px; }
.cm_swiper3 .card_control::after { right: -1px; bottom: calc(100% - 1px); }
.cm_swiper3 .card_prev,
.cm_swiper3 .card_next { display: flex; position: relative; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(19.2px, 1.25vw, 24px); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; background-color: #333; mask-position: center; transition: background-color 0.2s; }
.cm_swiper3 .card_prev { -webkit-mask-image: url(../../images/common/icon_arrow_back.svg); mask-image: url(../../images/common/icon_arrow_back.svg); }
.cm_swiper3 .card_next { -webkit-mask-image: url(../../images/common/icon_arrow_forward.svg); mask-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_swiper3 .swiper-button-disabled,
.cm_swiper3 .swiper-button-lock { background-color: #999; pointer-events: none; }
.cm_swiper3 .card_prev:hover,
.cm_swiper3 .card_next:hover { background-color: var(--color-primary-70); }
.cm_swiper3 .card_divider { flex-shrink: 0; width: 1px; height: 12px; background-color: #cacaca; }
.cm_slide_control1 { display: flex; z-index: 1; position: absolute; bottom: clamp(12px, 1.71875vw, 33px); left: clamp(12px, 2.0833333333vw, 40px); align-items: center; gap: clamp(4px, 0.625vw, 12px); }
.cm_slide_control1.ct_position2 { bottom: clamp(9.6px, 0.625vw, 12px); left: clamp(9.6px, 0.625vw, 12px); }
.cm_slide_control1 .control_btn { display: flex; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(36px, 2.0833333333vw, 40px); border-radius: 50%; background: rgba(0, 0, 0, 0.4); }
.cm_slide_control1 .control_btn::before { aspect-ratio: 1/1; width: clamp(18px, 1.0416666667vw, 20px); content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; background-color: #fff; mask-position: center; }
.cm_slide_control1 .control_btn.pause::before { -webkit-mask-image: url(../../images/common/icon_pause.svg); mask-image: url(../../images/common/icon_pause.svg); }
.cm_slide_control1 .control_btn.play::before { -webkit-mask-image: url(../../images/common/icon_play.svg); mask-image: url(../../images/common/icon_play.svg); }
.cm_slide_control1 .pagination_btn { display: flex; align-items: center; min-height: clamp(36px, 2.0833333333vw, 40px); padding: clamp(4px, 0.2604166667vw, 5px) 12px; gap: 8px; border-radius: clamp(30px, 5.15625vw, 99px); background: rgba(0, 0, 0, 0.4); }
.cm_slide_control1 .pagination_txt { color: #fff; font-size: clamp(15px, 0.8854166667vw, 17px); line-height: 1.4; letter-spacing: 0.68px; }
.cm_slide_control1 .pagination_txt .current { font-weight: 700; }
.cm_slide_control1 .control_prev,
.cm_slide_control1 .control_next { aspect-ratio: 1/1; width: clamp(18px, 1.0416666667vw, 20px); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; background-color: #fff; mask-position: center; }
.cm_slide_control1 .control_prev { -webkit-mask-image: url(../../images/common/icon_arrow_back.svg); mask-image: url(../../images/common/icon_arrow_back.svg); }
.cm_slide_control1 .control_next { -webkit-mask-image: url(../../images/common/icon_arrow_forward.svg); mask-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_slide_control2 { display: flex; align-items: center; gap: 4px; }
.cm_slide_control2 .control_prev,
.cm_slide_control2 .control_next { aspect-ratio: 1/1; width: 24px; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; background-color: #333; mask-position: center; transition: background-color 0.3s ease; }
.cm_slide_control2 .control_prev { -webkit-mask-image: url(../../images/common/icon_arrow_back.svg); mask-image: url(../../images/common/icon_arrow_back.svg); }
.cm_slide_control2 .control_next { -webkit-mask-image: url(../../images/common/icon_arrow_forward.svg); mask-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_slide_control2 .control_prev:hover,
.cm_slide_control2 .control_next:hover { background-color: var(--color-primary-70); }
.cm_slide_control3 { display: flex; align-items: center; gap: 4px; }
.cm_slide_control3 .control_prev,
.cm_slide_control3 .control_next { display: flex; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(38px, 2.5vw, 48px); border: 1px solid #cacaca; border-radius: 50%; background-color: #fff; transition: background-color 0.3s ease, border-color 0.3s ease; }
.cm_slide_control3 .control_prev::before,
.cm_slide_control3 .control_next::before { display: flex; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(16px, 1.0416666667vw, 20px); content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; background-color: #999; mask-position: center; transition: background-color 0.3s ease; }
.cm_slide_control3 .control_prev::before { -webkit-mask-image: url(../../images/common/icon_arrow_back.svg); mask-image: url(../../images/common/icon_arrow_back.svg); }
.cm_slide_control3 .control_next::before { -webkit-mask-image: url(../../images/common/icon_arrow_forward.svg); mask-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_slide_control3 .swiper-button-disabled { opacity: 0.5; pointer-events: none; }
.cm_slide_control3 .control_prev:hover,
.cm_slide_control3 .control_next:hover { border-color: var(--color-primary-70); background-color: var(--color-primary-70); }
.cm_slide_control3 .control_prev:hover::before,
.cm_slide_control3 .control_next:hover::before { background-color: #fff; }
.cm_slide_control4 { display: flex; align-items: center; width: fit-content; min-height: clamp(32px, 2.0833333333vw, 40px); padding: 5px clamp(16px, 1.0416666667vw, 20px); gap: clamp(8px, 0.625vw, 12px); border-radius: clamp(79.2px, 5.15625vw, 99px); background-color: #f4f4f4; }
.cm_slide_control4 .pagination_txt { color: #000; font-size: clamp(15px, 0.8854166667vw, 17px); line-height: 1.4; white-space: nowrap; }
.cm_slide_control4 .pagination_txt .current { color: var(--color-primary-70); font-weight: 700; }
.cm_slide_control4 .meeting_pagination_in { display: flex; align-items: center; }
.cm_slide_control4 .control_prev,
.cm_slide_control4 .control_next,
.cm_slide_control4 .control_btn { flex-shrink: 0; aspect-ratio: 1/1; width: clamp(16px, 1.0416666667vw, 20px); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; background-color: #333; mask-position: center; transition: background-color 0.3s ease; }
.cm_slide_control4 .control_prev { -webkit-mask-image: url(../../images/common/icon_arrow_back.svg); mask-image: url(../../images/common/icon_arrow_back.svg); }
.cm_slide_control4 .control_next { -webkit-mask-image: url(../../images/common/icon_arrow_forward.svg); mask-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_slide_control4 .control_btn.pause { -webkit-mask-image: url(../../images/common/icon_pause.svg); mask-image: url(../../images/common/icon_pause.svg); }
.cm_slide_control4 .control_btn.play { -webkit-mask-image: url(../../images/common/icon_play.svg); mask-image: url(../../images/common/icon_play.svg); }
.cm_slide_control4 .control_prev:hover,
.cm_slide_control4 .control_next:hover,
.cm_slide_control4 .control_btn:hover { background-color: var(--color-primary-70); }
.cm_slide_page1 { display: flex; position: unset; align-items: center; justify-content: center; gap: 8px; }
.cm_slide_page1 .swiper-pagination-bullet { width: 10px; height: 10px; margin: 0 !important; padding: 0 !important; background-color: #dadada; opacity: 1 !important; transition: background-color 0.3s ease; }
.cm_slide_page1 .swiper-pagination-bullet-active { background-color: var(--color-primary-70); }
.cm_slide_page1 .swiper-pagination-bullet:hover { background-color: var(--color-primary-70); }

/* 공통 컬러 */
.cm_bg.alpha-black10 { background-color: var(--color-alpha-black10); }
.cm_color.alpha-black10 { color: var(--color-alpha-black10) !important; }
.cm_bg.alpha-black25 { background-color: var(--color-alpha-black25); }
.cm_color.alpha-black25 { color: var(--color-alpha-black25) !important; }
.cm_bg.alpha-black50 { background-color: var(--color-alpha-black50); }
.cm_color.alpha-black50 { color: var(--color-alpha-black50) !important; }
.cm_bg.alpha-black75 { background-color: var(--color-alpha-black75); }
.cm_color.alpha-black75 { color: var(--color-alpha-black75) !important; }
.cm_bg.alpha-white10 { background-color: var(--color-alpha-white10); }
.cm_color.alpha-white10 { color: var(--color-alpha-white10) !important; }
.cm_bg.alpha-white25 { background-color: var(--color-alpha-white25); }
.cm_color.alpha-white25 { color: var(--color-alpha-white25) !important; }
.cm_bg.alpha-white50 { background-color: var(--color-alpha-white50); }
.cm_color.alpha-white50 { color: var(--color-alpha-white50) !important; }
.cm_bg.alpha-white75 { background-color: var(--color-alpha-white75); }
.cm_color.alpha-white75 { color: var(--color-alpha-white75) !important; }
.cm_bg.gray-0 { background-color: var(--color-gray-0); }
.cm_color.gray-0 { color: var(--color-gray-0) !important; }
.cm_bg.gray-5 { background-color: var(--color-gray-5); }
.cm_color.gray-5 { color: var(--color-gray-5) !important; }
.cm_bg.gray-10 { background-color: var(--color-gray-10); }
.cm_color.gray-10 { color: var(--color-gray-10) !important; }
.cm_bg.gray-15 { background-color: var(--color-gray-15); }
.cm_color.gray-15 { color: var(--color-gray-15) !important; }
.cm_bg.gray-20 { background-color: var(--color-gray-20); }
.cm_color.gray-20 { color: var(--color-gray-20) !important; }
.cm_bg.gray-30 { background-color: var(--color-gray-30); }
.cm_color.gray-30 { color: var(--color-gray-30) !important; }
.cm_bg.gray-40 { background-color: var(--color-gray-40); }
.cm_color.gray-40 { color: var(--color-gray-40) !important; }
.cm_bg.gray-50 { background-color: var(--color-gray-50); }
.cm_color.gray-50 { color: var(--color-gray-50) !important; }
.cm_bg.gray-60 { background-color: var(--color-gray-60); }
.cm_color.gray-60 { color: var(--color-gray-60) !important; }
.cm_bg.gray-70 { background-color: var(--color-gray-70); }
.cm_color.gray-70 { color: var(--color-gray-70) !important; }
.cm_bg.gray-80 { background-color: var(--color-gray-80); }
.cm_color.gray-80 { color: var(--color-gray-80) !important; }
.cm_bg.gray-90 { background-color: var(--color-gray-90); }
.cm_color.gray-90 { color: var(--color-gray-90) !important; }
.cm_bg.gray-95 { background-color: var(--color-gray-95); }
.cm_color.gray-95 { color: var(--color-gray-95) !important; }
.cm_bg.gray-100 { background-color: var(--color-gray-100); }
.cm_color.gray-100 { color: var(--color-gray-100) !important; }
.cm_bg.primary-5 { background-color: var(--color-primary-5); }
.cm_color.primary-5 { color: var(--color-primary-5) !important; }
.cm_bg.primary-10 { background-color: var(--color-primary-10); }
.cm_color.primary-10 { color: var(--color-primary-10) !important; }
.cm_bg.primary-20 { background-color: var(--color-primary-20); }
.cm_color.primary-20 { color: var(--color-primary-20) !important; }
.cm_bg.primary-30 { background-color: var(--color-primary-30); }
.cm_color.primary-30 { color: var(--color-primary-30) !important; }
.cm_bg.primary-40 { background-color: var(--color-primary-40); }
.cm_color.primary-40 { color: var(--color-primary-40) !important; }
.cm_bg.primary-50 { background-color: var(--color-primary-50); }
.cm_color.primary-50 { color: var(--color-primary-50) !important; }
.cm_bg.primary-60 { background-color: var(--color-primary-60); }
.cm_color.primary-60 { color: var(--color-primary-60) !important; }
.cm_bg.primary-70 { background-color: var(--color-primary-70); }
.cm_color.primary-70 { color: var(--color-primary-70) !important; }
.cm_bg.primary-80 { background-color: var(--color-primary-80); }
.cm_color.primary-80 { color: var(--color-primary-80) !important; }
.cm_bg.primary-90 { background-color: var(--color-primary-90); }
.cm_color.primary-90 { color: var(--color-primary-90) !important; }

/* 공통 댓글 */
.cm_comment { display: flex; flex-direction: column; padding: clamp(20px, 1.6666666667vw, 32px); gap: clamp(19.2px, 1.25vw, 24px); border: 1px solid var(--color-primary-20); border-radius: clamp(19.2px, 1.25vw, 24px); background-color: var(--color-primary-0); }
.cm_comment .comment_header { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_comment .comment_title { flex: 1; min-width: 0; font-weight: 700; font-size: clamp(15.2px, 0.9895833333vw, 19px); }
.cm_comment .comment_info { flex-shrink: 0; }

/* 텍스트 말줄임 */
.ellipsis { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; text-overflow: ellipsis; word-break: break-all; }
.ellipsis.line2 { -webkit-line-clamp: 2; }
.ellipsis.line3 { -webkit-line-clamp: 3; }
.ellipsis.line4 { -webkit-line-clamp: 4; }
.ellipsis.line5 { -webkit-line-clamp: 5; }

/* 공통 폼 */
input::-webkit-search-decoration,
input::-webkit-search-cancel-button,
input::-webkit-search-results-button,
input::-webkit-search-results-decoration { display: none; }
input[type=file] { display: none; }
.form_control { display: block; width: 100%; height: var(--form_height_lg); padding: 0 clamp(12.8px, 0.8333333333vw, 16px); border: 1px solid #999; border-radius: clamp(4.8px, 0.3125vw, 6px); outline: none !important; background-color: #fff; color: #333; font-size: clamp(16px, 0.8854166667vw, 17px); transition: border-color 0.2s, box-shadow 0.2s !important; }
.form_control:focus-visible { border-color: var(--color-primary-80) !important; box-shadow: 0 0 0 3px rgba(1, 134, 80, 0.15) !important; }
.form_control::placeholder { color: #767676; }
.form_control.date { padding-right: clamp(40px, 2.6041666667vw, 50px); background: #fff url(../../images/common/icon_date.svg) no-repeat right clamp(16px, 1.0416666667vw, 20px) center/clamp(19.2px, 1.25vw, 24px); }
select.form_control { padding-right: clamp(40px, 2.6041666667vw, 50px); background-image: url(../../images/common/icon_arrow_down.svg); background-position: right clamp(12.8px, 0.8333333333vw, 16px) center; background-size: clamp(16px, 1.0416666667vw, 20px); background-repeat: no-repeat; }
textarea.form_control { height: var(--textarea_height); padding-top: clamp(9.6px, 0.625vw, 12px); padding-bottom: clamp(9.6px, 0.625vw, 12px); }
.form_control[readonly],
.form_control:disabled { border-color: #b2b2b2; background-color: #e6e6e6; color: #777; cursor: not-allowed; opacity: 0.8; }
.form_control.size_xs { height: var(--form_height_xs) !important; padding-right: clamp(8px, 0.5208333333vw, 10px) !important; padding-left: clamp(8px, 0.5208333333vw, 10px) !important; }
.form_control.size_sm { height: var(--form_height_sm) !important; padding-right: clamp(9.6px, 0.625vw, 12px) !important; padding-left: clamp(9.6px, 0.625vw, 12px) !important; }
.form_control.size_md { height: var(--form_height_md) !important; padding-right: clamp(12.8px, 0.8333333333vw, 16px) !important; padding-left: clamp(12.8px, 0.8333333333vw, 16px) !important; }
select.form_control.size_xs { padding-right: clamp(22.4px, 1.4583333333vw, 28px) !important; background-position: right clamp(8px, 0.5208333333vw, 10px) center; background-size: clamp(11.2px, 0.7291666667vw, 14px); }
select.form_control.size_sm { padding-right: clamp(25.6px, 1.6666666667vw, 32px) !important; background-position: right clamp(9.6px, 0.625vw, 12px) center; background-size: clamp(12.8px, 0.8333333333vw, 16px); }
select.form_control.size_md { padding-right: clamp(28.8px, 1.875vw, 36px) !important; background-position: right clamp(11.2px, 0.7291666667vw, 14px) center; background-size: clamp(14.4px, 0.9375vw, 18px); }
.form_control.date.size_xs { padding-right: clamp(27.2px, 1.7708333333vw, 34px) !important; background-position: right clamp(8px, 0.5208333333vw, 10px) center; background-size: clamp(12.8px, 0.8333333333vw, 16px); }
.form_control.date.size_sm { padding-right: clamp(30.4px, 1.9791666667vw, 38px) !important; background-position: right clamp(9.6px, 0.625vw, 12px) center; background-size: clamp(14.4px, 0.9375vw, 18px); }
.form_control.date.size_md { padding-right: clamp(35.2px, 2.2916666667vw, 44px) !important; background-position: right clamp(12.8px, 0.8333333333vw, 16px) center; background-size: clamp(16px, 1.0416666667vw, 20px); }
.cm_input_action { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_form_address { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_form_layout1 { display: flex; flex-direction: column; gap: clamp(12px, 1.25vw, 24px) 0; }
.cm_form_layout1 .form_row { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: clamp(8px, 1.25vw, 24px); }
.cm_form_layout1 .form_label { width: clamp(128px, 8.3333333333vw, 160px); font-weight: bold; }
.cm_form_layout1 .form_content .cm_chk_wrap { display: flex; flex-wrap: wrap; align-items: center; }
.cm_form_layout1 .form_row.align_top { align-items: flex-start; }
.cm_form_layout1 .form_row.align_top .form_label { padding-top: clamp(12px, 0.78125vw, 15px); }
.cm_char_counter { margin-top: clamp(6.4px, 0.4166666667vw, 8px); color: #767676; font-size: clamp(14px, 0.78125vw, 15px); text-align: right; }
.cm_char_counter.is_error { color: var(--color-danger-50); }
[class*=cm_chk] { display: inline-flex; flex-wrap: wrap; vertical-align: middle; cursor: pointer; }
[class*=cm_chk] input[type=checkbox],
[class*=cm_chk] input[type=radio] { clip: rect(0, 0, 0, 0); position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; border: 0; }
[class*=cm_chk] .chk_label { -webkit-user-select: none; -moz-user-select: none; cursor: pointer; user-select: none; }
.cm_chk_wrap { display: flex; flex-wrap: wrap; gap: clamp(9.6px, 0.625vw, 12px) clamp(19.2px, 1.25vw, 24px); cursor: default; }
.cm_chk1 .chk_label { display: flex; position: relative; align-items: flex-start; gap: clamp(6.4px, 0.4166666667vw, 8px); color: #444; font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.2; }
.cm_chk1 .chk_label:before { display: block; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(20px, 1.25vw, 24px); border: 1px solid var(--color-border-gray-dark); border-radius: clamp(3.2px, 0.2083333333vw, 4px); background-position: center; background-size: 57%; background-repeat: no-repeat; background-color: #fff; content: ""; transition: all 0.2s ease; }
.cm_chk1 .label_text { padding-top: clamp(1.6px, 0.1041666667vw, 2px); }
.cm_chk1 input:checked + .chk_label:before { border-color: transparent; background-image: url(../../images/common/icon_check2_w.svg); background-color: var(--color-primary-80); }
.cm_chk1 input[type=radio] + .chk_label:before { border-radius: 50%; }
.cm_chk1 input[type=radio] + .chk_label:after { position: absolute; top: 50%; left: clamp(5px, 0.3125vw, 6px); aspect-ratio: 1/1; width: clamp(10px, 0.625vw, 12px); transform: translateY(-50%); border-radius: 50%; background-color: var(--color-primary-80); content: ""; opacity: 0; transition: opacity 0.2s ease; }
.cm_chk1 input[type=radio]:checked + .chk_label:before { border-color: var(--color-primary-80); background-image: none; background-color: #fff; }
.cm_chk1 input[type=radio]:checked + .chk_label:after { opacity: 1; }
.cm_chk1 input:disabled + .chk_label { cursor: default; }
.cm_chk1 input:disabled:not(:checked) + .chk_label { color: #bbb; }
.cm_chk1 input:disabled:not(:checked) + .chk_label:before { border-color: #ddd; background-color: #f5f5f5; }
.cm_chk1 input:disabled:not(:checked) + .chk_label:after { background-color: #ddd; }
.cm_chk1 input:focus-visible + .chk_label { outline: 2px dashed #000; outline-offset: 2px; transition: none !important; }
.cm_chk1.size_sm .chk_label:before { width: 20px; }
.cm_chk1.size_sm .label_text { padding-top: 0; }
.cm_drop_zone_wrap { display: flex; flex-direction: column; gap: clamp(12px, 0.78125vw, 15px); }
.cm_drop_zone .drop_zone { display: block; padding: clamp(32px, 2.0833333333vw, 40px) clamp(24px, 1.5625vw, 30px); border: 1px dashed var(--color-primary-80); border-radius: 8px; text-align: center; transition: all 0.2s; }
.cm_drop_zone .drop_zone.dragover { border-color: var(--color-primary-90); background-color: var(--color-primary-10); }
.cm_drop_zone .drop_zone .cm_btn { border-radius: clamp(6.4px, 0.4166666667vw, 8px); }

/* datepicker */
.ui-datepicker { display: none; z-index: 10; width: 280px; padding: 20px 12px; overflow: hidden; border: 1px solid #999; border-radius: 8px; background: #fff; box-shadow: 0 0 10px rgba(0, 0, 0, 0.15); font-size: 15px; }
.ui-datepicker select { appearance: auto; color: #000; }
.ui-datepicker .ui-datepicker-header { position: relative; margin-bottom: 4px; padding: 1px 0; border: 0; border-radius: 0; background: none; text-align: center; }
.ui-datepicker .ui-datepicker-title { font-weight: 700; font-size: 17px; }
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next { z-index: 1; position: absolute; top: 1px; width: 24px; height: 24px; background-position: center; background-repeat: no-repeat; cursor: pointer; }
.ui-datepicker .ui-datepicker-prev { left: 0; background-image: url(../../images/common/icon_arr_left.svg); }
.ui-datepicker .ui-datepicker-next { right: 0; background-image: url(../../images/common/icon_arr_right.svg); }
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span { clip: rect(0 0 0 0); position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; border: 0; }
.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover { border: 0; background-color: transparent; }
.ui-datepicker table { margin: 0; }
.ui-datepicker th { width: 28px; height: 28px; padding: 0; color: #191919; font-weight: 700; line-height: 0.8; text-align: center; }
.ui-datepicker td { width: 28px; height: 28px; padding: 0; color: #000; line-height: 0.8; text-align: center; }
.ui-datepicker th.ui-datepicker-week-end,
.ui-datepicker td.ui-datepicker-week-end { color: var(--color-danger-50); }
.ui-datepicker th.ui-datepicker-week-end:last-child,
.ui-datepicker td.ui-datepicker-week-end:last-child { color: #2530ff; }
.ui-datepicker th.ui-state-disabled.ui-state-disabled,
.ui-datepicker td.ui-state-disabled.ui-state-disabled { color: #333; }
.ui-datepicker th a,
.ui-datepicker th span { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; margin-top: 8px; }
.ui-datepicker td a,
.ui-datepicker td span { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; margin-top: 8px; }
.ui-datepicker .ui-state-default { border-color: transparent; background-color: transparent; }
.ui-datepicker .ui-state-highlight { border: 1px solid #999; border-radius: 50%; color: #454545; }
.ui-datepicker .ui-state-active { border-radius: 50%; border-color: var(--color-primary-80); background: var(--color-primary-80); color: #fff; }
.ui-datepicker .ui-state-active.ui-state-highlight { border-color: var(--color-primary-80); background: var(--color-primary-80); color: #fff; }

/* 오늘 날짜 선택 시 active 우선 */

/* 공통 아이콘 */
.cm_icon { --icon-size: clamp(19.2px, 1.25vw, 24px); --icon-gap: clamp(6.4px, 0.4166666667vw, 8px); display: inline-flex; position: relative; flex-shrink: 0; align-items: center; gap: 0 var(--icon-gap); vertical-align: middle; }
.cm_icon:before { display: block; flex-shrink: 0; width: var(--icon-size); height: var(--icon-size); background-color: currentColor; content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; -webkit-mask-size: contain; mask-size: contain; }
.cm_icon.size_xs { --icon-size: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_icon.size_sm { --icon-size: clamp(16px, 1.0416666667vw, 20px); }
.cm_icon.size_md { --icon-size: clamp(19.2px, 1.25vw, 24px); }
.cm_icon.size_lg { --icon-size: clamp(25.6px, 1.6666666667vw, 32px); }
.cm_icon.size_xl { --icon-size: clamp(32px, 2.0833333333vw, 40px); }
.cm_icon.size_xl2 { --icon-size: clamp(26px, 2.5vw, 48px); }
.cm_icon.size_xl3 { --icon-size: clamp(30px, 2.9166666667vw, 56px); }
.cm_icon.icon_r { flex-direction: row-reverse; }
.cm_icon.gap06 { gap: clamp(4.8px, 0.3125vw, 6px); --icon-gap: clamp(4.8px, 0.3125vw, 6px); }
.cm_icon.arrow_back:before { -webkit-mask-image: url(../../images/common/icon_arrow_back.svg); mask-image: url(../../images/common/icon_arrow_back.svg); }
.cm_icon.arrow_down:before { -webkit-mask-image: url(../../images/common/icon_arrow_down.svg); mask-image: url(../../images/common/icon_arrow_down.svg); }
.cm_icon.arrow_forward:before { -webkit-mask-image: url(../../images/common/icon_arrow_forward.svg); mask-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_icon.arrow_left:before { -webkit-mask-image: url(../../images/common/icon_arrow_left.svg); mask-image: url(../../images/common/icon_arrow_left.svg); }
.cm_icon.arrow_right:before { -webkit-mask-image: url(../../images/common/icon_arrow_right.svg); mask-image: url(../../images/common/icon_arrow_right.svg); }
.cm_icon.arrow_top:before { -webkit-mask-image: url(../../images/common/icon_arrow_top.svg); mask-image: url(../../images/common/icon_arrow_top.svg); }
.cm_icon.arrow_top_right:before { -webkit-mask-image: url(../../images/common/icon_arrow_top_right.svg); mask-image: url(../../images/common/icon_arrow_top_right.svg); }
.cm_icon.arrow_up:before { -webkit-mask-image: url(../../images/common/icon_arrow_up.svg); mask-image: url(../../images/common/icon_arrow_up.svg); }
.cm_icon.book:before { -webkit-mask-image: url(../../images/common/icon_book.svg); mask-image: url(../../images/common/icon_book.svg); }
.cm_icon.bus:before { -webkit-mask-image: url(../../images/common/icon_bus.svg); mask-image: url(../../images/common/icon_bus.svg); }
.cm_icon.call:before { -webkit-mask-image: url(../../images/common/icon_call.svg); mask-image: url(../../images/common/icon_call.svg); }
.cm_icon.check:before { -webkit-mask-image: url(../../images/common/icon_check.svg); mask-image: url(../../images/common/icon_check.svg); }
.cm_icon.cross:before { -webkit-mask-image: url(../../images/common/icon_cross.svg); mask-image: url(../../images/common/icon_cross.svg); }
.cm_icon.date:before { -webkit-mask-image: url(../../images/common/icon_date.svg); mask-image: url(../../images/common/icon_date.svg); }
.cm_icon.download:before { -webkit-mask-image: url(../../images/common/icon_download.svg); mask-image: url(../../images/common/icon_download.svg); }
.cm_icon.ellipsis_horizontal:before { -webkit-mask-image: url(../../images/common/icon_ellipsis_horizontal.svg); mask-image: url(../../images/common/icon_ellipsis_horizontal.svg); }
.cm_icon.file:before { -webkit-mask-image: url(../../images/common/icon_file.svg); mask-image: url(../../images/common/icon_file.svg); }
.cm_icon.format:before { background-image: url(../../images/common/icon_format.svg); background-position: center; background-size: contain; background-repeat: no-repeat; -webkit-mask-image: none; background-color: transparent; mask-image: none; }
.cm_icon.hit:before { -webkit-mask-image: url(../../images/common/icon_hit.svg); mask-image: url(../../images/common/icon_hit.svg); }
.cm_icon.home:before { -webkit-mask-image: url(../../images/common/icon_home.svg); mask-image: url(../../images/common/icon_home.svg); }
.cm_icon.info:before { -webkit-mask-image: url(../../images/common/icon_info.svg); mask-image: url(../../images/common/icon_info.svg); }
.cm_icon.law:before { background-image: url(../../images/common/icon_law.svg); background-position: center; background-size: contain; background-repeat: no-repeat; -webkit-mask-image: none; background-color: transparent; mask-image: none; }
.cm_icon.location:before { -webkit-mask-image: url(../../images/common/icon_location.svg); mask-image: url(../../images/common/icon_location.svg); }
.cm_icon.lock:before { -webkit-mask-image: url(../../images/common/icon_lock.svg); mask-image: url(../../images/common/icon_lock.svg); }
.cm_icon.menu:before { -webkit-mask-image: url(../../images/common/icon_menu.svg); mask-image: url(../../images/common/icon_menu.svg); }
.cm_icon.new:before { background-image: url(../../images/common/icon_new.svg); background-position: center; background-size: contain; background-repeat: no-repeat; -webkit-mask-image: none; background-color: transparent; mask-image: none; }
.cm_icon.nodata:before { -webkit-mask-image: url(../../images/common/icon_nodata.svg); mask-image: url(../../images/common/icon_nodata.svg); }
.cm_icon.notice:before { -webkit-mask-image: url(../../images/common/icon_notice.svg); mask-image: url(../../images/common/icon_notice.svg); }
.cm_icon.pause:before { -webkit-mask-image: url(../../images/common/icon_pause.svg); mask-image: url(../../images/common/icon_pause.svg); }
.cm_icon.play:before { -webkit-mask-image: url(../../images/common/icon_play.svg); mask-image: url(../../images/common/icon_play.svg); }
.cm_icon.plus:before { -webkit-mask-image: url(../../images/common/icon_plus.svg); mask-image: url(../../images/common/icon_plus.svg); }
.cm_icon.preparing:before { -webkit-mask-image: url(../../images/common/icon_preparing.svg); mask-image: url(../../images/common/icon_preparing.svg); }
.cm_icon.print:before { -webkit-mask-image: url(../../images/common/icon_print.svg); mask-image: url(../../images/common/icon_print.svg); }
.cm_icon.rotate:before { -webkit-mask-image: url(../../images/common/icon_rotate.svg); mask-image: url(../../images/common/icon_rotate.svg); }
.cm_icon.school:before { background-image: url(../../images/common/icon_school.svg); background-position: center; background-size: contain; background-repeat: no-repeat; -webkit-mask-image: none; background-color: transparent; mask-image: none; }
.cm_icon.search:before { -webkit-mask-image: url(../../images/common/icon_search.svg); mask-image: url(../../images/common/icon_search.svg); }
.cm_icon.search2:before { background-image: url(../../images/common/icon_search2.svg); background-position: center; background-size: contain; background-repeat: no-repeat; -webkit-mask-image: none; background-color: transparent; mask-image: none; }
.cm_icon.select:before { background-image: url(../../images/common/icon_select.svg); background-position: center; background-size: contain; background-repeat: no-repeat; -webkit-mask-image: none; background-color: transparent; mask-image: none; }
.cm_icon.subway:before { -webkit-mask-image: url(../../images/common/icon_subway.svg); mask-image: url(../../images/common/icon_subway.svg); }
.cm_icon.success:before { -webkit-mask-image: url(../../images/common/icon_success.svg); mask-image: url(../../images/common/icon_success.svg); }
.cm_icon.view:before { -webkit-mask-image: url(../../images/common/icon_view.svg); mask-image: url(../../images/common/icon_view.svg); }
.cm_icon.window:before { -webkit-mask-image: url(../../images/common/icon_window.svg); mask-image: url(../../images/common/icon_window.svg); }
.cm_icon.write:before { background-image: url(../../images/common/icon_write.svg); background-position: center; background-size: contain; background-repeat: no-repeat; -webkit-mask-image: none; background-color: transparent; mask-image: none; }
.cm_icon.youtube:before { -webkit-mask-image: url(../../images/common/icon_youtube.svg); mask-image: url(../../images/common/icon_youtube.svg); }
.cm_icon.icon_white { color: #fff; }
.cm_icon.icon_black { color: #000; }
.cm_icon.icon_gray { color: #6c757d; }
.cm_icon.icon_gray2 { color: #333; }
.cm_icon.icon_gray3 { color: #999; }
.cm_icon.icon_red { color: #dc3545; }
.cm_icon.icon_blue { color: #3478c7; }
.cm_icon.icon_primary70 { color: var(--color-primary-70); }
.cm_icon.gap04 { --icon-gap: clamp(3.2px, 0.2083333333vw, 4px); }
.cm_icon.row_r { flex-direction: row-reverse; }

/* 공통 이미지 */
.cm_img_zoom_wrap { text-align: center; }
.cm_image { display: flex; flex-wrap: wrap; gap: clamp(15px, 1.25vw, 24px); }
.cm_image img { width: 100%; }
.cm_image.col1 > * { width: 100%; }
.cm_image.col2 > * { width: calc((100% - clamp(15px, 1.25vw, 24px)) / 2); }
.cm_image.col3 > * { width: calc((100% - clamp(15px, 1.25vw, 24px) * 2) / 3); }
.cm_image.col4 > * { width: calc((100% - clamp(15px, 1.25vw, 24px) * 3) / 4); }
.cm_image_state1 { z-index: -1; position: relative; width: 100%; margin-top: clamp(-24px, -1.25vw, -5px); }

/* 공통 공공누리 */
.cm_kogl_info { margin-top: clamp(16px, 1.25vw, 24px); padding: clamp(12px, 1.25vw, 24px) clamp(14px, 1.6666666667vw, 32px); border: 1px solid #cacaca; border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #fff; }
.cm_kogl_info .kogl_info_content { display: flex; align-items: center; gap: 0 clamp(14px, 1.6666666667vw, 32px); }
.cm_kogl_info .kogl_info_img { flex-shrink: 0; }
.cm_kogl_info .kogl_info_img img { height: clamp(35px, 2.7604166667vw, 53px); }
.cm_kogl_info .kogl_info_title { font-weight: 700; font-size: clamp(15px, 0.9895833333vw, 19px); }
.cm_kogl_info .kogl_info_desc { color: #333; font-size: clamp(13px, 0.8854166667vw, 17px); }
.cm_kogl_info .kogl_info_text { flex: 1; min-width: 0; font-size: 15px; }

/* 공통 리스트 */
.cm_list_area { display: flex; flex-direction: column; gap: clamp(28px, 2.9166666667vw, 56px); }
.cm_text_list1 { display: flex; flex-wrap: wrap; gap: 5px clamp(20px, 2.0833333333vw, 40px); }
.cm_text_list2 { display: flex; flex-direction: column; gap: 16px clamp(9.6px, 0.625vw, 12px); }
.cm_text_list2 dl { display: flex; align-items: baseline; gap: 4px clamp(12.8px, 0.8333333333vw, 16px); }
.cm_text_list2 dl dt { flex-shrink: 0; color: var(--color-primary-70); font-weight: 700; }
.cm_text_list3 { border-top: 1px solid #000; }
.cm_text_list3 > ul > li { display: flex; position: relative; flex-direction: column; padding: clamp(18px, 1.25vw, 24px) 0; gap: clamp(9.6px, 0.625vw, 12px); border-bottom: 1px solid #cacaca; }
.cm_bullet_list1 { display: grid; grid-template-columns: repeat(1, 1fr); gap: clamp(4.8px, 0.3125vw, 6px) 0; text-align: left; word-break: keep-all; }
.cm_bullet_list1.col_2 { grid-template-columns: repeat(2, 1fr); gap: clamp(12.8px, 0.8333333333vw, 16px) clamp(6.4px, 0.4166666667vw, 8px); }
.cm_bullet_list1.col_3 { grid-template-columns: repeat(3, 1fr); gap: clamp(12.8px, 0.8333333333vw, 16px) clamp(6.4px, 0.4166666667vw, 8px); }
.cm_bullet_list1.gap20 { gap: clamp(12px, 1.0416666667vw, 20px) 0; }
.cm_bullet_list1 .bullet1_item { position: relative; padding-left: clamp(9.6px, 0.625vw, 12px); font-weight: 400; font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.5; }
.cm_bullet_list1 .bullet1_item:before { position: absolute; top: 0.6em; left: 0; aspect-ratio: 1/1; width: clamp(3.2px, 0.2083333333vw, 4px); border-radius: 1000px; background-color: #6a6a6a; content: ""; }
.cm_dl1 { display: flex; gap: 0 clamp(8px, 0.625vw, 12px); color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); word-break: keep-all; }
.cm_dl1 dt { flex-shrink: 0; font-weight: bold; }
.cm_dl1 dd { flex: 1; min-width: 0; }
.cm_dl2 { display: flex; flex-direction: column; gap: clamp(16px, 1.25vw, 24px); }
.cm_dl2 > li { display: flex; align-items: baseline; gap: 4px clamp(16px, 1.6666666667vw, 32px); word-break: keep-all; }
.cm_dl2 dt { flex-shrink: 0; min-width: clamp(56px, 3.3333333333vw, 64px); font-weight: 700; }
.cm_dl2 dd { flex: 1; min-width: 0; }
.cm_dl2 dd.point { color: var(--color-primary-70); font-weight: 700; }
.cm_dl2.type2 { gap: clamp(10px, 0.8333333333vw, 16px); }
.cm_dl2.type2 > li { gap: 4px clamp(12px, 1.25vw, 24px); }
.cm_dl2.type2 dt { min-width: clamp(28px, 1.6666666667vw, 32px); }
.cm_dl2.type3 { gap: clamp(12px, 0.8333333333vw, 16px); }
.cm_dl2.type3 > li { gap: 4px clamp(12px, 0.8333333333vw, 16px); }
.cm_dl2.type3 dt { min-width: clamp(110px, 6.25vw, 120px); }
.cm_dl2.type4 { gap: clamp(6.4px, 0.4166666667vw, 8px); color: #333; }
.cm_dl2.type4 > li { gap: 4px clamp(12px, 1.25vw, 24px); }
.cm_dl2.type5 { gap: clamp(12px, 0.8333333333vw, 16px); color: #333; }
.cm_dl2.type5 > li { gap: 4px clamp(12px, 0.8333333333vw, 16px); }
.cm_dl2.type5 dt { min-width: clamp(80px, 4.5833333333vw, 88px); }
.cm_dl3 { display: flex; flex-direction: column; gap: clamp(10px, 0.8333333333vw, 16px); }
.cm_dl3 > li { display: flex; align-items: baseline; gap: 4px clamp(8px, 0.5208333333vw, 10px); color: #333; word-break: keep-all; }
.cm_dl3 dt { flex-shrink: 0; min-width: clamp(45px, 2.9166666667vw, 56px); font-weight: 700; }
.cm_dl3 dd { flex: 1; min-width: 0; }
.cm_file_list { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_file_list .file_box { display: flex; align-items: center; justify-content: space-between; min-height: clamp(44.8px, 2.9166666667vw, 56px); padding: clamp(12.8px, 0.8333333333vw, 16px); gap: 8px clamp(12.8px, 0.8333333333vw, 16px); border: 1px solid #cacaca; border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-color: #f8f8f8; }
.cm_file_list .file_name { color: #333; word-break: break-all; }
.cm_file_list .file_btns { display: flex; flex-shrink: 0; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_file_list .file_btns > a span { font-size: clamp(13px, 0.78125vw, 15px); transition: color 0.1s; }
.cm_file_list .file_btns > a span:hover { color: var(--color-primary-70); text-decoration: underline; }
.cm_info_text { display: flex; flex-direction: column; gap: clamp(3.2px, 0.2083333333vw, 4px); }
.cm_info_text .info_text { display: flex; align-items: flex-start; gap: clamp(3.2px, 0.2083333333vw, 4px); color: #333; font-size: clamp(13.5px, 0.78125vw, 15px); line-height: 1.5; }
.cm_info_text .info_text:before { display: block; flex-shrink: 0; aspect-ratio: 1/1; width: 20px; background: url(../../images/common/icon_info.svg) no-repeat center/contain; content: ""; }
html::before { visibility: hidden; z-index: 999; position: fixed; width: 100vw; height: 100vh; inset: 0; background: rgba(0, 0, 0, 0.6); content: ""; opacity: 0; pointer-events: none; transition: opacity 0.35s ease, visibility 0.35s ease; }
html.modal_open::before { visibility: visible; opacity: 1; pointer-events: auto; }
.cm_modal { display: flex; z-index: 1000; position: fixed; top: 0; right: 0; align-items: center; justify-content: center; width: clamp(350px, 25.3125vw, 486px); height: 100%; transform: translateX(100%); background-color: #fff; transition: transform 0.45s ease; }
.cm_modal.modal_on { transform: translateX(0); }
.cm_modal_btn { display: flex; z-index: 1001; position: fixed; top: 50%; right: 100%; flex-direction: column; min-width: clamp(58.4px, 3.8020833333vw, 73px); transform: translateY(-50%); }
.cm_modal.modal_on .cm_modal_btn { position: absolute; right: 100%; }
.cm_modal_btn .btn_text { display: flex; align-items: center; justify-content: center; padding: clamp(16px, 1.25vw, 24px) clamp(12px, 1.0416666667vw, 20px); border-radius: clamp(12px, 1.25vw, 24px) 0 0 0; background-color: #222; color: #fff; font-weight: 700; font-size: clamp(13px, 0.9895833333vw, 19px); text-align: center; transition: background-color 0.2s ease; }
.cm_modal_btn .btn_arrow { display: flex; align-items: center; justify-content: center; margin-top: -1px; padding: clamp(6px, 0.625vw, 12px) clamp(12px, 1.0416666667vw, 20px) clamp(10px, 0.625vw, 12px); border-radius: 0 0 0 clamp(12px, 1.25vw, 24px); background-color: #333; transition: background-color 0.2s ease; }
.cm_modal_btn .btn_arrow::before { aspect-ratio: 1/1; width: clamp(18px, 1.25vw, 24px); content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; -webkit-mask-image: url(../../images/common/icon_arrow_back.svg); background-color: #fff; mask-image: url(../../images/common/icon_arrow_back.svg); }
.cm_modal.modal_on .cm_modal_btn .btn_arrow::before { -webkit-mask-image: url(../../images/common/icon_arrow_forward.svg); mask-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_modal_btn:hover .btn_text { background-color: #111; }
.cm_modal_btn:hover .btn_arrow { background-color: #222; }
.cm_modal .modal_wrap { z-index: 1; position: relative; width: 100%; height: 100%; }
.cm_modal .modal_body { width: 100%; height: 100%; padding: clamp(20px, 2.0833333333vw, 40px); overflow: auto; background-color: #fff; }
.cm_modal .modal_list { display: flex; flex-direction: column; gap: clamp(20px, 1.6666666667vw, 32px); }
.cm_modal .modal_item { flex-shrink: 0; aspect-ratio: 1/1; width: 100%; overflow: hidden; border: clamp(2.4px, 0.15625vw, 3px) solid transparent; border-radius: clamp(19.2px, 1.25vw, 24px); transition: border-color 0.3s ease; }
.cm_modal .modal_item:hover { border-color: var(--color-primary-70); }
.cm_modal .modal_link { display: block; width: 100%; height: 100%; }
.cm_modal .modal_img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.cm_modal .modal_link:hover .modal_img { transform: scale(1.06); }
.cm_modal2 { visibility: hidden; z-index: 2000; position: fixed; width: 100%; height: 100%; inset: 0; overflow-y: auto; background-color: #fff; opacity: 0; pointer-events: none; transition: opacity 0.3s ease, visibility 0.3s ease; }
.cm_modal2.modal_on { visibility: visible; opacity: 1; pointer-events: auto; }
.cm_modal2 .modal_wrap { display: flex; flex-direction: column; width: 100%; min-height: 100%; padding: clamp(38.4px, 2.5vw, 48px) clamp(96px, 6.25vw, 120px) clamp(32px, 2.0833333333vw, 40px); gap: clamp(24px, 2.5vw, 48px); }
.cm_modal2 .modal_top { display: flex; flex-shrink: 0; align-items: center; justify-content: space-between; gap: clamp(16px, 1.0416666667vw, 20px); }
.cm_modal2 .modal_logo { flex-shrink: 0; width: clamp(170px, 14.2708333333vw, 274px); }
.cm_modal2 .modal_logo img { width: 100%; height: 100%; object-fit: contain; }
.cm_modal2 .modal_close { flex-shrink: 0; aspect-ratio: 1/1; width: clamp(25px, 1.6666666667vw, 32px); -webkit-mask: url(../../images/common/icon_cross.svg) no-repeat center/contain; background-color: #333; mask: url(../../images/common/icon_cross.svg) no-repeat center/contain; transition: transform 0.2s ease, background-color 0.2s ease; }
.cm_modal2 .modal_close:hover { transform: rotate(90deg); background-color: var(--color-primary-70); }
.cm_modal2 .modal_content { flex: 1 1 auto; min-height: 0; padding-top: clamp(20px, 2.0833333333vw, 40px); border-top: 1px solid var(--color-primary-70); }
.cm_modal2 .gnb_depth1_wrap { width: 100%; height: 100%; }
.cm_modal2 .gnb_depth1 { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); height: 100%; gap: clamp(32px, 2.0833333333vw, 40px); }
.cm_modal2 .gnb_item1 { display: flex; position: relative; flex-direction: column; min-width: 0; gap: clamp(10px, 1.25vw, 24px); }
.cm_modal2 .gnb_item1::after { display: block; position: absolute; top: 0; right: clamp(-20px, -1.0416666667vw, -16px); width: 1px; height: 100%; background-color: #cacaca; content: ""; }
.cm_modal2 .gnb_item1:last-child::after { display: none; }
.cm_modal2 .gnb_text1 { display: inline-flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); color: var(--color-primary-70); font-weight: 700; font-size: clamp(22px, 1.6666666667vw, 32px); line-height: 1.4; transition: color 0.2s ease; }
.cm_modal2 .gnb_text1::after { display: none; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(19.2px, 1.25vw, 24px); background-color: var(--color-primary-70); content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; transition: transform 0.2s ease, background-color 0.2s ease; }
.cm_modal2 .gnb_link1[target=_blank] .gnb_text1::after,
.cm_modal2 .gnb_link1.blank_icon .gnb_text1::after { display: block; -webkit-mask-image: url(../../images/common/icon_window.svg); mask-image: url(../../images/common/icon_window.svg); }
.cm_modal2 .gnb_link1:hover .gnb_text1 { color: var(--color-primary-90); }
.cm_modal2 .gnb_link1:hover .gnb_text1::after { background-color: var(--color-primary-90); }
.cm_modal2 .gnb_depth2 { display: flex; flex-direction: column; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_modal2 .gnb_item2 { min-width: 0; }
.cm_modal2 .gnb_link2 { display: flex; position: relative; align-items: center; justify-content: space-between; padding-right: clamp(22.4px, 1.4583333333vw, 28px); gap: clamp(8px, 0.5208333333vw, 10px); transition: color 0.2s ease; }
.cm_modal2 .gnb_text2 { font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_modal2 .gnb_link2::after { display: none; position: absolute; top: 50%; right: 0; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(18px, 1.0416666667vw, 20px); transform: translateY(-50%) rotate(0deg); content: ""; -webkit-mask: url(../../images/common/icon_arrow_down.svg) no-repeat center/contain; background-color: #000; mask: url(../../images/common/icon_arrow_down.svg) no-repeat center/contain; transition: transform 0.3s ease, background-color 0.2s ease; }
.cm_modal2 .gnb_item2:has(.gnb_depth3_wrap) .gnb_link2::after { display: block; }
.cm_modal2 .gnb_item2.active .gnb_link2::after { transform: translateY(-50%) rotate(180deg); }
.cm_modal2 .gnb_link2[target=_blank]::after,
.cm_modal2 .gnb_link2.blank_icon::after { display: block; -webkit-mask-image: url(../../images/common/icon_window.svg); mask-image: url(../../images/common/icon_window.svg); }
.cm_modal2 .gnb_link2:hover { color: var(--color-primary-70); }
.cm_modal2 .gnb_link2:hover::after { background-color: var(--color-primary-70); }
.cm_modal2 .gnb_depth3_wrap { display: grid; visibility: hidden; grid-template-rows: 0fr; margin-top: 0; opacity: 0; transition: grid-template-rows 0.3s ease, visibility 0s linear 0.3s, opacity 0.2s ease, margin-top 0.3s ease; }
.cm_modal2 .gnb_depth3 { display: flex; flex-direction: column; min-height: 0; padding: 0 clamp(16px, 1.0416666667vw, 20px); overflow: hidden; border-top: 2px solid var(--color-primary-70); border-radius: 0 0 clamp(9.6px, 0.625vw, 12px) clamp(9.6px, 0.625vw, 12px); background-color: #f7f7fc; }
.cm_modal2 .gnb_item2.active .gnb_depth3_wrap { visibility: visible; grid-template-rows: 1fr; margin-top: clamp(12.8px, 0.8333333333vw, 16px); opacity: 1; transition: grid-template-rows 0.3s ease, visibility 0s, opacity 0.2s ease, margin-top 0.3s ease; }
.cm_modal2 .gnb_item3 { position: relative; padding: clamp(6.4px, 0.4166666667vw, 8px) 0 clamp(6.4px, 0.4166666667vw, 8px) clamp(11.2px, 0.7291666667vw, 14px); }
.cm_modal2 .gnb_item2.active .gnb_item3:first-child { margin-top: clamp(12px, 0.8333333333vw, 16px); }
.cm_modal2 .gnb_item2.active .gnb_item3:last-child { margin-bottom: clamp(12px, 0.8333333333vw, 16px); }
.cm_modal2 .gnb_item3::before { position: absolute; top: clamp(15.2px, 0.9895833333vw, 19px); left: 0; width: 3px; height: 3px; background-color: #000; content: ""; transition: background-color 0.2s ease; }
.cm_modal2 .gnb_link3 { display: flex; align-items: center; justify-content: space-between; gap: clamp(8px, 0.5208333333vw, 10px); transition: color 0.2s ease; }
.cm_modal2 .gnb_text3 { font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_modal2 .gnb_link3::after { display: none; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(18px, 1.0416666667vw, 20px); background-color: #000; content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; transition: background-color 0.2s ease; }
.cm_modal2 .gnb_link3[target=_blank]::after,
.cm_modal2 .gnb_link3.blank_icon::after { display: block; -webkit-mask-image: url(../../images/common/icon_window.svg); mask-image: url(../../images/common/icon_window.svg); }
.cm_modal2 .gnb_link3:hover { color: var(--color-primary-70); }
.cm_modal2 .gnb_item3:hover::before { background-color: var(--color-primary-70); }
.cm_modal2 .gnb_link3:hover::after { background-color: var(--color-primary-70); }
.cm_modal3 { visibility: hidden; z-index: 1000; position: fixed; inset: 0; opacity: 0; pointer-events: none; transition: opacity 0.3s ease, visibility 0.3s ease; }
.cm_modal3.modal_on { visibility: visible; opacity: 1; pointer-events: auto; }
.cm_modal3 .modal_n_wrap { display: flex; width: 100%; height: 100%; padding: clamp(20px, 2.0833333333vw, 40px) clamp(16px, 2.0833333333vw, 40px); overflow-y: auto; }
.cm_modal3 .modal_box { display: flex; position: relative; flex-direction: column; align-items: center; width: 100%; min-width: 280px; max-width: min(800px, (100vh - 240px) * 1.2); margin: auto; padding-bottom: clamp(20px, 2.1875vw, 42px); gap: clamp(16px, 1.9270833333vw, 37px); transform: scale(0.95); background-color: #fff; transition: transform 0.3s ease; }
.cm_modal3.modal_on .modal_box { transform: scale(1); }
.cm_modal3 .modal_box > * { z-index: 1; position: relative; }
.cm_modal3 .modal_img { display: block; width: 71.375%; height: auto; margin-top: 5.875%; }
.cm_modal3 .modal_close { z-index: 2; position: absolute; top: clamp(12px, 1.0416666667vw, 20px); right: clamp(12px, 1.0416666667vw, 20px); aspect-ratio: 1/1; width: 32px; -webkit-mask: url(../../images/common/icon_cross.svg) no-repeat center/contain; background-color: #093a2f; mask: url(../../images/common/icon_cross.svg) no-repeat center/contain; transition: transform 0.2s ease; }
.cm_modal3 .modal_close:hover { transform: rotate(90deg); }
.cm_modal3.variant1 .modal_box { background: #fff url(../../images/quiz/bg_quiz.svg) no-repeat center/cover; }
.cm_modal3 .modal_deco { z-index: 0; position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.cm_modal3 .deco_item { display: block; position: absolute; max-width: none; height: auto; animation: quiz_sway 3s ease-in-out infinite; }
.cm_modal3 .deco_item.ribbon1 { top: 9%; left: 92.125%; width: 5.5%; animation-delay: -0.4s; }
.cm_modal3 .deco_item.ribbon2 { top: 15.03%; left: 8.89%; width: 4.649%; animation-duration: 2.8s; animation-delay: -1.6s; }
.cm_modal3 .deco_item.dot1 { --deco-rotate: 40deg; top: 34.05%; left: 94.93%; width: 1.367%; transform: translate(-50%, -50%) rotate(var(--deco-rotate)); animation: quiz_spin 4s linear infinite; }
.cm_modal3 .deco_item.sparkle1,
.cm_modal3 .deco_item.sparkle2 { width: 6%; transform: translate(-50%, -50%); animation-name: quiz_twinkle; }
.cm_modal3 .deco_item.sparkle1 { top: 75.5%; left: 89.25%; animation-duration: 2.4s; animation-delay: -0.6s; }
.cm_modal3 .deco_item.sparkle2 { top: 88.125%; left: 10.5%; animation-duration: 2s; animation-delay: -1.2s; }
.cm_modal3 .modal_letter { aspect-ratio: 571/610; width: 71.375%; margin-top: 5.875%; overflow: hidden; background: url(../../images/quiz/envelope_back.svg) no-repeat center/100% 100%; }
.cm_modal3 .modal_letter::after { position: absolute; inset: 0; background: url(../../images/quiz/envelope_front.svg) no-repeat center/100% 100%; content: ""; }
.cm_modal3 .letter_card { display: block; position: absolute; top: 8.525%; left: 8.056%; width: 84.06%; height: auto; border-radius: 3.334%; }
.cm_modal3.modal_on .letter_card { animation: quiz_letter_up 0.8s ease 0.2s both; }
.cm_preparing1 { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: clamp(320px, 20.8333333333vw, 400px); padding: clamp(32px, 2.0833333333vw, 40px); gap: clamp(12.8px, 0.8333333333vw, 16px) 0; border-top: 1px solid #000; border-bottom: 1px solid #000; background: #fff; text-align: center; }
.cm_preparing1:before { display: block; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(44.8px, 2.9166666667vw, 56px); background-image: url(../../images/common/icon_preparing.svg); background-position: center; background-size: contain; background-repeat: no-repeat; content: ""; }
.cm_preparing1 .preparing_title { color: #000; font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.4; }
.cm_preparing1 .preparing_desc { color: #333; font-weight: 400; font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.5; }

/* 공통 데이터 없음 */
.cm_nodata1 { display: flex; flex-direction: column; align-items: center; justify-content: center; height: clamp(250px, 18.2291666667vw, 350px); padding: clamp(16px, 1.0416666667vw, 20px); gap: clamp(6.4px, 0.4166666667vw, 8px); border: 1px solid #cacaca; border-radius: clamp(9.6px, 0.625vw, 12px); font-size: clamp(14px, 0.8854166667vw, 17px); text-align: center; }
.cm_nodata1:before { display: block; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(32px, 2.0833333333vw, 40px); content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; background-color: #999; mask-position: center; }
.cm_nodata1.icon1:before { -webkit-mask-image: url(../../images/common/icon_nodata.svg); mask-image: url(../../images/common/icon_nodata.svg); }

/* 공통 오버뷰 */
.cm_overview1 .ovw1_list { display: flex; padding: clamp(25px, 2.0833333333vw, 40px); gap: clamp(20px, 2.0833333333vw, 40px); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #f7f7fc; }
.cm_overview1 .ovw1_thumb { flex-shrink: 0; aspect-ratio: 320/240; width: clamp(256px, 16.6666666667vw, 320px); max-width: 100%; overflow: hidden; border-radius: 24px; box-shadow: 0 clamp(3.2px, 0.2083333333vw, 4px) clamp(6.4px, 0.4166666667vw, 8px) 0 rgba(0, 0, 0, 0.16); }
.cm_overview1 .ovw1_thumb_img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.cm_overview1 .ovw1_info { display: flex; flex-direction: column; gap: clamp(16px, 1.25vw, 24px); }
.cm_overview1 .ovw1_title_box { display: flex; flex-direction: column; gap: clamp(3.2px, 0.2083333333vw, 4px); }
.cm_overview1 .ovw1_txt1 { font-weight: 700; font-size: clamp(16px, 1.25vw, 24px); line-height: 1.4; }
.cm_overview1 .ovw1_txt2 { color: var(--color-primary-70); font-weight: 700; font-size: clamp(20px, 1.6666666667vw, 32px); line-height: 1.4; }
.cm_overview1 .ovw1_txt3 { color: #6a6a6a; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_overview1 .ovw1_txt4 { font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_overview2 .ovw2_list { display: grid; grid-template-columns: repeat(4, 1fr); align-items: stretch; gap: clamp(12px, 1.25vw, 24px); }
.cm_overview2 .ovw2_item { display: flex; flex-direction: column; }
.cm_overview2 .ovw2_top { display: flex; align-items: center; justify-content: center; min-height: clamp(44.8px, 2.9166666667vw, 56px); padding: clamp(8px, 0.5208333333vw, 10px); border-radius: clamp(9.6px, 0.625vw, 12px) clamp(9.6px, 0.625vw, 12px) 0 0; background-color: #f8f8f8; color: #fff; font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); text-align: center; }
.cm_overview2 .ovw2_top.color1 { background-color: #99ca49; }
.cm_overview2 .ovw2_top.color2 { background-color: #4bb15d; }
.cm_overview2 .ovw2_top.color3 { background-color: #7fd0e0; }
.cm_overview2 .ovw2_top.color4 { background-color: #2f676e; }
.cm_overview2 .ovw2_con { flex: 1; height: 100%; padding: clamp(16px, 1.6666666667vw, 32px); border-radius: 0 0 clamp(12.8px, 0.8333333333vw, 16px) 16px; background-color: #f7f7fc; }
.cm_overview3 .ovw3_list { display: grid; grid-template-columns: repeat(2, 1fr); align-items: stretch; gap: clamp(12px, 1.25vw, 24px); }
.cm_overview4 .ovw4_list { display: grid; grid-template-columns: repeat(2, 1fr); align-items: stretch; gap: clamp(12px, 1.25vw, 24px); }
.cm_overview4 .ovw4_box { display: flex; flex-wrap: wrap; align-items: flex-start; height: 100%; padding: clamp(18px, 2.0833333333vw, 40px); gap: clamp(16px, 2.0833333333vw, 40px); border: 1px solid #cacaca; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #fff; }
.cm_overview4 .ovw4_icon { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(60px, 5vw, 96px); padding: clamp(8px, 0.5208333333vw, 10px); border-radius: 50%; background-color: #f3f4fb; }
.cm_overview4 .ovw4_info { display: flex; flex: 1; flex-direction: column; width: 100%; min-width: 0; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview4 .ovw4_info_box2 { display: flex; flex-direction: column; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview4 .ovw4_info_list { display: flex; flex-direction: column; gap: clamp(12px, 0.8333333333vw, 16px); }
.cm_overview4 .ovw4_info_list2 { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview4 .ovw4_info_item { display: flex; flex-wrap: wrap; align-items: center; gap: 4px clamp(8px, 0.625vw, 12px); }
.cm_overview4 .ovw4_info_item.gap2 { gap: clamp(12px, 1.25vw, 24px); }
.cm_overview4 .ovw4_info_item_in { display: flex; flex-wrap: wrap; align-items: center; gap: 4px clamp(8px, 0.625vw, 12px); }
.cm_overview4 .ovw4_info_txt { color: #333; font-size: clamp(13px, 0.8854166667vw, 17px); }
.cm_overview5 { border-top: 1px solid #000; }
.cm_overview5 .ovw5_list { display: flex; flex-direction: column; }
.cm_overview5 .ovw5_item { display: flex; flex-direction: column; padding: clamp(20px, 2.0833333333vw, 40px); gap: clamp(8px, 0.8333333333vw, 16px); border-bottom: 1px solid #cacaca; }
.cm_overview5 .ovw5_in { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview5 .ovw5_maintxt { font-weight: 700; font-size: clamp(17px, 1.25vw, 24px); line-height: 1.4; }
.cm_overview5 .ovw5_title_box { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(12px, 0.8333333333vw, 16px); }
.cm_overview5 .ovw5_subtxt { font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_overview6 { display: flex; position: relative; flex-direction: column; align-items: center; justify-content: center; width: 100%; padding: clamp(40px, 5.4166666667vw, 104px) clamp(48px, 3.125vw, 60px) 0; overflow: hidden; border-radius: clamp(20px, 4.1666666667vw, 80px) clamp(20px, 4.1666666667vw, 80px) 0 0; background: linear-gradient(180deg, #ecf8f3 0%, #fff 100%); }
.cm_overview6::before { z-index: 0; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(../../images/common/bg_point1.svg) no-repeat left top/cover; content: ""; }
.cm_overview6 .ovw6_youtube { display: flex; z-index: 2; position: relative; flex-direction: column; aspect-ratio: 960/540; width: 100%; max-width: clamp(768px, 50vw, 960px); overflow: hidden; border-radius: clamp(19.2px, 1.25vw, 24px); box-shadow: 0 clamp(3.2px, 0.2083333333vw, 4px) clamp(19.2px, 1.25vw, 24px) 0 rgba(0, 0, 0, 0.16); }
.cm_overview6 .ovw6_youtube iframe { width: 100%; height: 100%; }
.cm_overview6 .ovw6_bottom { z-index: 1; position: relative; width: 100%; max-width: clamp(768px, 50vw, 960px); margin-top: clamp(-24px, -1.25vw, -19.2px); padding: clamp(35px, 2.9166666667vw, 56px) clamp(16px, 1.0416666667vw, 20px) clamp(20px, 2.0833333333vw, 40px); border: 1px solid #cacaca; border-radius: 0 0 clamp(20px, 2.0833333333vw, 40px) clamp(20px, 2.0833333333vw, 40px); background-color: #f8f8f8; }
.cm_overview6 .ovw6_info_txt { z-index: 1; font-size: clamp(15.2px, 0.9895833333vw, 19px); text-align: center; }
.cm_overview7 .ovw7_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(14px, 1.25vw, 24px); }
.cm_overview7 .ovw7_item { display: flex; align-items: flex-start; padding: clamp(20px, 2.0833333333vw, 40px); gap: 16px clamp(20px, 1.6666666667vw, 32px); border: 1px solid #cacaca; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #f8f8f8; }
.cm_overview7 .ovw7_icon { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(55px, 4.1666666667vw, 80px); border-radius: clamp(19.2px, 1.25vw, 24px); background-color: #fff; box-shadow: 0 clamp(3.2px, 0.2083333333vw, 4px) clamp(9.6px, 0.625vw, 12px) 0 rgba(0, 0, 0, 0.08); }
.cm_overview7 .ovw7_icon::before { aspect-ratio: 1/1; width: clamp(28px, 2.5vw, 48px); background-position: center; background-size: contain; background-repeat: no-repeat; content: ""; }
.cm_overview7 .ovw7_icon.select::before { background-image: url(../../images/common/icon_select.svg); }
.cm_overview7 .ovw7_icon.write::before { background-image: url(../../images/common/icon_write.svg); }
.cm_overview7 .ovw7_icon.search::before { background-image: url(../../images/common/icon_search2.svg); }
.cm_overview7 .ovw7_icon.format::before { background-image: url(../../images/common/icon_format.svg); }
.cm_overview7 .ovw7_texts { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview7 .ovw7_text1 { font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.4; }
.cm_overview7 .ovw7_text2 { font-size: clamp(14px, 0.8854166667vw, 17px) color #333; }
.cm_overview8 .ovw8_list { display: grid; grid-template-columns: repeat(5, 1fr); align-items: stretch; gap: clamp(12px, 1.0416666667vw, 20px); }
.cm_overview8 .ovw8_item { display: flex; flex-direction: column; min-width: 0; }
.cm_overview8 .ovw8_top { display: flex; z-index: 1; position: relative; align-items: center; justify-content: center; min-height: clamp(76.8px, 5vw, 96px); padding: clamp(12.8px, 0.8333333333vw, 16px) 20px; border-radius: clamp(9.6px, 0.625vw, 12px); background-color: var(--color-primary-70); color: #fff; font-weight: 700; font-size: clamp(17px, 0.9895833333vw, 19px); text-align: center; }
.cm_overview8 .ovw8_top::before { position: absolute; right: clamp(9.6px, 0.625vw, 12px); bottom: clamp(-38px, -1.9791666667vw, -30.4px); content: ""; color: rgba(255, 255, 255, 0.12); font-size: clamp(66px, 5vw, 96px); font-family: "RacingSansOne"; }
.cm_overview8 .ovw8_item:nth-child(1) .ovw8_top::before { content: "1"; }
.cm_overview8 .ovw8_item:nth-child(2) .ovw8_top::before { content: "2"; }
.cm_overview8 .ovw8_item:nth-child(3) .ovw8_top::before { content: "3"; }
.cm_overview8 .ovw8_item:nth-child(4) .ovw8_top::before { content: "4"; }
.cm_overview8 .ovw8_item:nth-child(5) .ovw8_top::before { content: "5"; }
.cm_overview8 .ovw8_content { flex: 1; height: 100%; margin-top: clamp(-16px, -0.8333333333vw, -12.8px); padding: clamp(26px, 2.0833333333vw, 40px) clamp(14px, 1.25vw, 24px) clamp(14px, 1.25vw, 24px) clamp(14px, 1.25vw, 24px); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #f7f7fc; }
.cm_overview9 { display: flex; align-items: center; justify-content: center; width: 100%; height: clamp(236.8px, 15.4166666667vw, 296px); padding: clamp(32px, 2.0833333333vw, 40px) 10px; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #f8f8f8; }
.cm_overview9 .ovw9_start { display: flex; position: relative; flex-shrink: 0; flex-direction: column; gap: clamp(25px, 2.2395833333vw, 43px); }
.cm_overview9 .ovw9_item { display: flex; flex-shrink: 1; align-items: center; justify-content: center; width: fit-content; min-width: clamp(100px, 8.4375vw, 162px); min-height: clamp(40px, 3.0208333333vw, 58px); padding: clamp(8px, 0.8333333333vw, 16px) clamp(16px, 1.6666666667vw, 32px); border-radius: clamp(79.2px, 5.15625vw, 99px); color: #fff; font-weight: 700; font-size: clamp(13px, 0.8854166667vw, 17px); text-align: center; }
.cm_overview9 .ovw9_item.south { background-color: #4a9a04; }
.cm_overview9 .ovw9_item.north { background-color: #04839a; }
.cm_overview9 .ovw9_connector { position: relative; flex-shrink: 0; width: clamp(15px, 3.0208333333vw, 58px); height: clamp(81.6px, 5.3125vw, 102px); }
.cm_overview9 .ovw9_connector::before { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-top: 1px solid #999; border-right: 1px solid #999; border-bottom: 1px solid #999; border-radius: 0 clamp(9.6px, 0.625vw, 12px) clamp(9.6px, 0.625vw, 12px) 0; content: ""; }
.cm_overview9 .ovw9_list { display: flex; position: relative; align-items: center; margin-left: clamp(15px, 2.0833333333vw, 40px); gap: clamp(15px, 2.0833333333vw, 40px); font-weight: 700; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_overview9 .ovw9_item2 { display: flex; z-index: 1; position: relative; flex: 1; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(100px, 7.5vw, 144px); height: clamp(100px, 7.5vw, 144px); padding: clamp(8px, 0.5208333333vw, 10px); border: 1px solid var(--color-primary-70); border-radius: 50%; background-color: #fff; font-weight: 700; font-size: clamp(13px, 0.8854166667vw, 17px); text-align: center; }
.cm_overview9 .ovw9_list::before { position: absolute; right: 100%; width: clamp(15px, 2.0833333333vw, 40px); height: 1px; background-color: #999; content: ""; }
.cm_overview9 .ovw9_list::after { position: absolute; width: 100%; height: 1px; background-color: #999; content: ""; }
.cm_overview10 .ovw10_imgbox { position: relative; width: 100%; height: clamp(291.2px, 18.9583333333vw, 364px); overflow: hidden; border-radius: clamp(12.8px, 0.8333333333vw, 16px) clamp(12.8px, 0.8333333333vw, 16px) 0 0; }
.cm_overview10 .ovw10_imgbox::before { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(../../images/sub/bg_press_release.png) no-repeat center/cover; content: ""; }
.cm_overview10 .ovw10_imgbox::after { position: absolute; top: 0; left: 0; width: 100%; height: 100%; backdrop-filter: blur(3px); background: linear-gradient(180deg, rgba(0, 0, 0, 0.8) 60%, rgba(0, 0, 0, 0) 100%); content: ""; }
.cm_overview10 .ovw10_texts { display: flex; z-index: 1; position: relative; flex-direction: column; align-items: center; justify-content: center; width: 100%; height: 100%; padding: clamp(16px, 1.0416666667vw, 20px); gap: clamp(14px, 1.0416666667vw, 20px); }
.cm_overview10 .ovw10_texts::before { width: clamp(32px, 2.0833333333vw, 40px); height: clamp(4.8px, 0.3125vw, 6px); background: linear-gradient(254deg, #44af18 -10.38%, #098da7 95.96%); content: ""; }
.cm_overview10 .ovw10_text1 { color: #fff; font-weight: 700; font-size: clamp(18px, 1.4583333333vw, 28px); line-height: 1.4; text-align: center; }
.cm_overview10 .ovw10_text2 { max-width: 800px; color: #fff; font-size: clamp(14px, 0.8854166667vw, 17px); text-align: center; }
.cm_overview10 .ovw10_text3 { color: #333; font-size: clamp(14px, 0.9895833333vw, 19px); }
.cm_overview10 .ovw10_text4 { font-weight: 700; font-size: clamp(14px, 0.9895833333vw, 19px); }
.cm_overview10 .ovw10_txtbox { display: flex; flex-direction: column; padding: clamp(28px, 2.9166666667vw, 56px) clamp(20px, 2.0833333333vw, 40px) clamp(24px, 2.5vw, 48px); overflow: hidden; gap: clamp(20px, 1.6666666667vw, 32px); border: 1px solid var(--color-primary-70); border-top: 0; border-radius: 0 0 clamp(12.8px, 0.8333333333vw, 16px) clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview10 .ovw10_txtbox .cm_docs1 { max-width: clamp(707.2PX, 46.0416666667vw, 884PX); margin: 0 auto; }
.cm_overview10 .ovw10_info { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: clamp(6.4px, 0.4166666667vw, 8px); text-align: center; }

/* [공통] 이용안내(개인정보처리방침, 저작권 보호 및 정책) */
.cm_overview11 { display: flex; flex-direction: column; gap: clamp(40px, 2.9166666667vw, 56px); }
.cm_overview11 .ovw11_list { display: flex; flex-direction: column; gap: clamp(18px, 1.25vw, 24px); }
.cm_overview11 .ovw11_list2 { display: flex; flex-direction: column; gap: clamp(20px, 1.6666666667vw, 32px); }
.cm_overview11 .ovw11_list3 { display: flex; align-items: center; gap: 2px clamp(18px, 1.25vw, 24px); }
.cm_overview11 .ovw11_list4 { display: flex; flex-direction: column; gap: clamp(8px, 0.625vw, 12px); }
.cm_overview11 .ovw11_list4_in { display: flex; align-items: center; gap: 8px clamp(20px, 2.0833333333vw, 40px); }
.cm_overview11 .ovw11_item { padding: clamp(20px, 1.6666666667vw, 32px); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #f3f4fb; }
.cm_overview11 .ovw11_item2 { display: flex; flex-direction: column; gap: clamp(9.6px, 0.625vw, 12px); }
.cm_overview11 .ovw11_item_box { display: flex; flex-direction: column; gap: clamp(18px, 1.6666666667vw, 32px); }
.cm_overview11 .ovw11_top { display: flex; align-items: flex-start; gap: 10px clamp(16px, 1.0416666667vw, 20px); }
.cm_overview11 .ovw11_center { padding: clamp(20px, 1.6666666667vw, 32px); border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #fff; box-shadow: clamp(3.2px, 0.2083333333vw, 4px) clamp(3.2px, 0.2083333333vw, 4px) clamp(9.6px, 0.625vw, 12px) 0 rgba(0, 0, 0, 0.08); }
.cm_overview11 .ovw11_number { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(22.4px, 1.4583333333vw, 28px); border: 1px solid var(--color-primary-70); border-radius: clamp(4.8px, 0.3125vw, 6px); background-color: #fff; box-shadow: clamp(1.6px, 0.1041666667vw, 2px) clamp(1.6px, 0.1041666667vw, 2px) clamp(1.6px, 0.1041666667vw, 2px) 0 rgba(2, 120, 51, 0.12); color: var(--color-primary-70); font-weight: 500; font-size: clamp(13.6px, 0.8854166667vw, 17px); text-align: center; }
.cm_overview11 .ovw11_text1 { font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_overview11 .ovw11_text2 { font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.4; }
.cm_overview11 .ovw11_text3 { color: var(--color-primary-70); font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview11 .ovw11_text_box { display: flex; flex-direction: column; gap: clamp(9.6px, 0.625vw, 12px); }
.cm_overview11 .ovw11_area2 { padding: clamp(20px, 1.6666666667vw, 32px); border-top: 1px solid #cacaca; border-bottom: 1px solid #cacaca; background-color: #fff; }
.cm_overview11 .ovw11_box1 { display: flex; flex-direction: column; gap: clamp(16px, 1.25vw, 24px); }
.cm_overview11 .ovw11_list_txt { position: relative; }
.cm_overview11 .ovw11_list_txt::after { position: absolute; top: 50%; right: clamp(-12px, -0.625vw, -9px); width: 1px; height: clamp(12.8px, 0.8333333333vw, 16px); transform: translateY(-50%); background-color: #cacaca; content: ""; }
.cm_overview11 .ovw11_list_txt:last-child::after { display: none; }
.cm_overview11 .ovw11_list_txt2 { display: flex; align-items: center; gap: clamp(12.8px, 0.8333333333vw, 16px); }

/* [공통] 편찬요강(공동편찬요강, 올림말 선정 작업 요강, 어휘 조사 작업 요강, 단일 어문 규범 작성 요강) */
.cm_overview12 { display: flex; flex-direction: column; gap: clamp(40px, 2.9166666667vw, 56px); }
.cm_overview12 .mleft { margin-left: clamp(8px, 1.4583333333vw, 28px); }
.cm_overview12 .ovw12_title { margin-bottom: clamp(16px, 1.0416666667vw, 20px); font-weight: 700; font-size: clamp(20px, 1.6666666667vw, 32px); line-height: 1.4; }
.cm_overview12 .ovw12_list { display: flex; flex-direction: column; gap: clamp(8px, 0.5208333333vw, 10px); }
.cm_overview12 .ovw12_item { display: flex; align-items: baseline; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview12 .ovw12_number { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(19.2px, 1.25vw, 24px); border-radius: 50%; background-color: #f3f4fb; font-size: clamp(13px, 0.78125vw, 15px); text-align: center; }
.cm_overview12 .ovw12_number2 { display: inline-flex; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(25.6px, 1.6666666667vw, 32px); transform: translateY(clamp(-2px, -0.1041666667vw, -1px)); border-radius: 50%; background-color: #f3f4fb; font-weight: 400; font-size: clamp(16px, 0.9895833333vw, 19px); text-align: center; vertical-align: middle; }
.cm_overview12 .ovw12_heading { display: flex; align-items: flex-start; margin-bottom: clamp(12.8px, 0.8333333333vw, 16px); gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview12 .ovw12_symbol { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(22.4px, 1.4583333333vw, 28px); margin-top: clamp(1.5px, 0.1041666667vw, 2px); border: 1px solid var(--color-primary-70); border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-color: #fff; box-shadow: clamp(1.6px, 0.1041666667vw, 2px) clamp(1.6px, 0.1041666667vw, 2px) clamp(1.6px, 0.1041666667vw, 2px) 0 rgba(2, 120, 51, 0.12); color: var(--color-primary-70); font-weight: 500; font-size: clamp(14px, 0.8854166667vw, 17px); text-align: center; }
.cm_overview12 .ovw12_sub_box { display: flex; flex-direction: column; gap: clamp(32px, 2.0833333333vw, 40px); }
.cm_overview12 .ovw12_summary { display: flex; flex-direction: column; align-items: flex-end; justify-content: center; gap: clamp(3.2px, 0.2083333333vw, 4px); }
.cm_overview12 .ovw12_example { display: flex; }
.cm_overview12 .ovw12_example_main { flex-shrink: 0; }
.cm_overview12 .ovw12_example_in { display: flex; flex: 1; flex-direction: column; }
.cm_overview12 .ovw12_date { color: #333; font-size: clamp(15px, 0.9895833333vw, 19px); text-align: right; }
.cm_overview12 .ovw12_subject { font-weight: 700; font-size: clamp(15px, 0.9895833333vw, 19px); text-align: right; }
.cm_overview12 .ovw12_text2 { color: var(--color-primary-70); font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.4; }
.cm_overview12 .ovw12_text3 { font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview12 .ovw12_text4 { color: var(--color-primary-70); font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview13 { display: flex; flex-direction: column; }
.cm_overview13 .ovw13_imgbox { display: flex; align-items: center; justify-content: center; width: 100%; height: clamp(150px, 18.75vw, 360px); padding: 0 clamp(0px, 5.2083333333vw, 100px); background-color: #edf7f6; }
.cm_overview13 .ovw13_img { width: 100%; height: 100%; object-fit: contain; }
.cm_overview13 .ovw13_txtbox { padding: clamp(10px, 1.25vw, 24px) 20px; background-color: var(--color-primary-70); color: #fff; font-size: clamp(14px, 0.9895833333vw, 19px); text-align: center; word-break: keep-all; }
.cm_overview14 { min-width: 0; overflow: hidden; border-radius: clamp(19.2px, 1.25vw, 24px); background-color: #fff; box-shadow: 0 clamp(3.2px, 0.2083333333vw, 4px) clamp(12.8px, 0.8333333333vw, 16px) 0 rgba(0, 0, 0, 0.12); }
.cm_overview14 .ovw14_top { display: flex; position: relative; flex-direction: column; padding: clamp(20px, 1.6666666667vw, 32px); overflow: hidden; gap: clamp(16px, 1.25vw, 24px); background-color: var(--color-primary-70); }
.cm_overview14 .ovw14_title { z-index: 1; position: relative; color: #fff; font-weight: 700; font-size: clamp(21px, 1.6666666667vw, 32px); line-height: 1.4; }
.cm_overview14 .ovw14_deco { position: absolute; inset: 0; pointer-events: none; }
.cm_overview14 .ovw14_deco > img { position: absolute; transform-origin: center; animation: decoBounce 2.8s ease-in-out infinite; }
.cm_overview14 .ovw14_deco .deco_g { top: clamp(12.112px, 0.7885416667vw, 15.14px); right: clamp(87.76px, 5.7135416667vw, 109.7px); width: clamp(48.7632px, 3.1746875vw, 60.954px); animation-delay: 0.3s; }
.cm_overview14 .ovw14_deco .deco_r { top: clamp(10.12px, 0.6588541667vw, 12.65px); right: clamp(25.528px, 1.6619791667vw, 31.91px); width: clamp(53.9416px, 3.5118229167vw, 67.427px); animation-delay: 0.65s; }
.cm_overview14 .ovw14_deco .deco_m { top: clamp(19.976px, 1.3005208333vw, 24.97px); right: clamp(-10.54px, -0.5489583333vw, -8.432px); width: clamp(56.584px, 3.6838541667vw, 70.73px); animation-delay: 1s; }
.cm_overview14 .search_content { display: flex; z-index: 1; position: relative; align-items: center; justify-content: space-between; min-height: clamp(48px, 3.3333333333vw, 64px); padding: 4px 4px 4px clamp(20px, 1.25vw, 24px); gap: 10px; border-radius: clamp(79.2px, 5.15625vw, 99px); background-color: #fff; }
.cm_overview14 .search_input { display: flex; position: relative; flex: 1; align-items: center; align-self: stretch; min-width: 0; }
.cm_overview14 .search_text { width: 100%; height: 100%; padding: 0; border: 0; background-color: transparent; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview14 .search_text:focus-visible { outline-offset: -2px; }
.cm_overview14 .search_placeholder { position: absolute; top: 50%; left: 0; width: 100%; overflow: hidden; transform: translateY(-50%); font-size: clamp(16px, 0.9895833333vw, 19px); text-overflow: ellipsis; white-space: nowrap; pointer-events: none; }
.cm_overview14 .search_btn { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(40px, 2.9166666667vw, 56px); border-radius: 50%; background: linear-gradient(0deg, #222 60%, #049a5d 100%); transition: transform 0.3s ease; }
.cm_overview14 .search_btn:hover { transform: scale(1.06); }
.cm_overview14 .ovw14_bottom { display: flex; flex-wrap: wrap; align-items: center; padding: clamp(16px, 1.25vw, 24px) clamp(20px, 1.6666666667vw, 32px); gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(12px, 1.25vw, 24px); }
.cm_overview14 .ovw14_bottom .cm_title { flex-shrink: 0; }
.cm_overview14 .ovw14_keyword_list { display: flex; flex-wrap: wrap; gap: clamp(3.2px, 0.2083333333vw, 4px) clamp(10px, 0.8333333333vw, 16px); }
.cm_overview14 .ovw14_keyword { display: flex; align-items: center; gap: clamp(4px, 0.4166666667vw, 8px); color: #000; font-size: clamp(15px, 0.9895833333vw, 19px); line-height: 1.5; }
.cm_overview14 .ovw14_keyword:hover { text-decoration: underline; }
.cm_overview15 { display: flex; position: relative; align-items: flex-start; padding: clamp(24px, 2.9166666667vw, 56px); gap: clamp(24px, 2.5vw, 48px); border-radius: clamp(19.2px, 1.25vw, 24px); background: linear-gradient(180deg, #f7f8fd 0%, #fff 100%); }
.cm_overview15 .ovw15_thumb { flex-shrink: 0; aspect-ratio: 320/454; width: clamp(200px, 16.6666666667vw, 320px); max-width: 100%; overflow: hidden; border-radius: clamp(19.2px, 1.25vw, 24px); background-color: #cacaca; box-shadow: 0 clamp(3.2px, 0.2083333333vw, 4px) clamp(6.4px, 0.4166666667vw, 8px) 0 rgba(0, 0, 0, 0.16); }
.cm_overview15 .ovw15_img { display: block; width: 100%; max-width: 100%; height: 100%; object-fit: cover; }
.cm_overview15 .ovw15_info { display: flex; flex: 1; flex-direction: column; min-width: 0; gap: clamp(20px, 1.6666666667vw, 32px); }
.cm_overview15 .ovw15_title_box { display: flex; flex-direction: column; gap: clamp(3.2px, 0.2083333333vw, 4px); }
.cm_overview15 .ovw15_title { color: var(--color-primary-70); font-weight: 700; font-size: clamp(20px, 1.6666666667vw, 32px); line-height: 1.4; }
.cm_overview15 .ovw15_subtitle { color: #6a6a6a; font-size: clamp(15px, 0.9895833333vw, 19px); line-height: 1.5; }
.cm_overview15 .ovw15_text { color: #000; font-size: clamp(15px, 0.8854166667vw, 17px); line-height: 1.5; }
.cm_overview16 { position: relative; padding: clamp(24px, 2.0833333333vw, 40px) clamp(16px, 2.0833333333vw, 40px); overflow: hidden; border-top: 1px solid #999; border-bottom: 1px solid #999; background-color: #fff; word-break: keep-all; }
.cm_overview16::after { position: absolute; right: clamp(16px, 2.0833333333vw, 40px); bottom: clamp(24px, 2.0833333333vw, 40px); aspect-ratio: 180/162.5; width: clamp(110px, 9.375vw, 180px); background: url(../../images/sub/bg_forum.svg) no-repeat center/contain; content: ""; pointer-events: none; }
.cm_overview16 .ovw16_list { display: flex; z-index: 1; position: relative; flex-direction: column; gap: clamp(16px, 1.25vw, 24px); }
.cm_overview16 .ovw16_item { display: flex; align-items: center; gap: clamp(12px, 1.25vw, 24px); }
.cm_overview16 .ovw16_text { flex: 1; min-width: 0; color: #000; font-size: clamp(15px, 0.8854166667vw, 17px); line-height: 1.5; }
.cm_overview17 { padding: clamp(20px, 2.0833333333vw, 40px); border-radius: clamp(19.2px, 1.25vw, 24px); background-color: #f4f4f4; }
.cm_overview17 .ovw17_list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.25vw, 24px); }
.cm_overview17 .ovw17_item { aspect-ratio: 4/3; overflow: hidden; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #cacaca; }
.cm_overview17 .ovw17_img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cm_overview18 { display: flex; position: relative; flex-direction: column; padding: clamp(70px, 6.25vw, 120px) clamp(20px, 2.9166666667vw, 56px) clamp(20px, 2.9166666667vw, 56px) clamp(20px, 2.9166666667vw, 56px); overflow: hidden; gap: clamp(20px, 2.0833333333vw, 40px); border: clamp(2.4px, 0.15625vw, 3px) solid var(--color-primary-70); border-radius: clamp(19.2px, 1.25vw, 24px); background-color: #fff; word-break: keep-all; }
.cm_overview18 .ovw18_title { position: absolute; top: 0; left: 0; max-width: 90%; padding: clamp(14px, 1.09375vw, 21px) clamp(16px, 2.9166666667vw, 56px); border-radius: 0 0 clamp(25px, 2.5vw, 48px) 0; background: linear-gradient(254deg, #44af18 -10.38%, #098da7 95.96%); color: #fff; font-weight: 700; font-size: clamp(18px, 1.6666666667vw, 32px); line-height: 1.4; text-align: center; }
.cm_overview18 .ovw18_title br { display: none; }
.cm_overview18 .ovw18_section { display: flex; flex-direction: column; gap: clamp(12px, 1.0416666667vw, 20px); }
.cm_overview18 .ovw18_content { display: flex; flex-direction: column; gap: clamp(20px, 1.6666666667vw, 32px); }
.cm_overview18 .ovw18_text { color: #000; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_overview18 .ovw18_imgbox { display: flex; padding: clamp(20px, 1.6666666667vw, 32px); gap: clamp(12px, 1.25vw, 24px); border-radius: clamp(16px, 1.0416666667vw, 20px); background-color: #f3f4fb; }
.cm_overview18 .ovw18_img { display: block; flex: 1 1 0; aspect-ratio: 352/245; min-width: 0; object-fit: cover; border-radius: clamp(9.6px, 0.625vw, 12px); box-shadow: 0 clamp(3.2px, 0.2083333333vw, 4px) clamp(6.4px, 0.4166666667vw, 8px) 0 rgba(0, 0, 0, 0.16); }
.cm_overview19 { z-index: -1; position: relative; margin-top: clamp(-24px, -1.25vw, -16px); padding: clamp(36px, 3.3333333333vw, 64px) clamp(20px, 7.2916666667vw, 140px) clamp(20px, 2.0833333333vw, 40px); border-radius: 0 0 clamp(12.8px, 0.8333333333vw, 16px) clamp(12.8px, 0.8333333333vw, 16px); background-color: #f3f4fb; }
.cm_overview19 .ovw19_imgbox { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 2.0833333333vw, 40px); }
.cm_overview19 .ovw19_img { display: block; aspect-ratio: 4/3; width: 100%; object-fit: cover; border-radius: clamp(9.6px, 0.625vw, 12px); }

/* 공통 페이징 */
.cm_paging1 { --paging_size: clamp(24px, 2.5vw, 48px); --paging_radius: 50%; display: flex; align-items: center; justify-content: center; margin-top: clamp(20px, 2.5vw, 48px); gap: clamp(2px, 0.4166666667vw, 8px); font-size: clamp(13px, 0.8854166667vw, 17px); }
.cm_paging1 .page_control { display: flex; align-items: center; width: fit-content; padding: 0 clamp(2px, 0.4166666667vw, 8px); gap: clamp(1px, 0.2083333333vw, 4px); background-color: #fff; font-size: clamp(12px, 0.8854166667vw, 17px); white-space: nowrap; }
.cm_paging1 .paging_page { display: flex; flex-wrap: wrap; justify-content: center; gap: 3px clamp(4px, 0.4166666667vw, 8px); }
.cm_paging1 .page_control.disabled { cursor: default; opacity: 0.5; }
.cm_paging1 .page_link { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; min-width: var(--paging_size); height: var(--paging_size); margin: 0; padding: 0 5px; border-radius: var(--paging_radius); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; -webkit-mask-size: clamp(19.2px, 1.25vw, 24px); mask-size: clamp(19.2px, 1.25vw, 24px); transition: background-color 0.2s; }
.cm_paging1 .page_link.link_dot { background-color: #333; -webkit-mask-image: url(../../images/common/icon_ellipsis_horizontal.svg); mask-image: url(../../images/common/icon_ellipsis_horizontal.svg); }
.cm_paging1 .page_link:not(.link_dot):hover { background-color: var(--color-primary-5); }
.cm_paging1 .page_link.active { background-color: var(--color-primary-70) !important; color: #fff !important; font-weight: bold; }
.cm_paging1 .page_control:not(.disabled):hover { text-decoration: underline; }

/* 공통 검색 */
.cm_search1 { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_search1 .input_wrap { position: relative; }
.cm_search1 .search_input { padding-right: clamp(40px, 2.6041666667vw, 50px); }
.cm_search1 .btn_search { position: absolute; top: 50%; right: clamp(12.8px, 0.8333333333vw, 16px); aspect-ratio: 1/1; width: clamp(16px, 1.25vw, 24px); transform: translateY(-50%); background: url(../../images/common/icon_search.svg) no-repeat center/contain; }

/* 사이드바 */
.cm_sidebar { display: flex; padding-top: clamp(25px, 3.3333333333vw, 64px); padding-right: clamp(20px, 4.1666666667vw, 80px) !important; padding-bottom: clamp(50px, 5.4166666667vw, 104px); padding-left: clamp(20px, 4.1666666667vw, 80px) !important; gap: clamp(40px, 4.1666666667vw, 80px); border-radius: clamp(20px, 6.25vw, 120px) clamp(20px, 6.25vw, 120px) 0 0; background-color: #fff; box-shadow: 0 clamp(-4px, -0.2083333333vw, -3.2px) clamp(12.8px, 0.8333333333vw, 16px) 0 rgba(0, 0, 0, 0.02); }
.cm_sidebar .sidebar_nav { flex-shrink: 0; width: clamp(200px, 12.5vw, 240px); }
.cm_sidebar .sidebar_depth1 > li { display: flex; flex-direction: column; gap: clamp(9.6px, 0.625vw, 12px); }
.cm_sidebar .depth1_item { display: flex; position: relative; justify-content: center; aspect-ratio: 1/1; width: 100%; height: clamp(200px, 12.5vw, 240px); padding: clamp(25.6px, 1.6666666667vw, 32px) clamp(8px, 0.5208333333vw, 10px); overflow: hidden; border-radius: clamp(38.4px, 2.5vw, 48px) clamp(12.8px, 0.8333333333vw, 16px); background: linear-gradient(254deg, #44af18 -10.38%, #098da7 95.96%); box-shadow: 0 clamp(3.2px, 0.2083333333vw, 4px) clamp(9.6px, 0.625vw, 12px) 0 rgba(0, 0, 0, 0.25); }
.cm_sidebar .depth1_item::before { position: absolute; bottom: 0; left: 0; aspect-ratio: 240/156; width: 100%; background: url(../../images/sub/bg_sidebar.svg) no-repeat center/contain; content: ""; }
.cm_sidebar .depth1_item span { color: #fff; font-weight: 700; font-size: clamp(20px, 1.4583333333vw, 28px); line-height: 1.4; text-align: center; }
.cm_sidebar .sidebar_depth2_wrap { overflow: hidden; border: 1px solid #dadada; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #fff; box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08); }
.cm_sidebar .sidebar_depth2 { display: flex; flex-direction: column; }
.cm_sidebar .sidebar_depth2 > li { border-bottom: 1px solid #dadada; }
.cm_sidebar .sidebar_depth2 > li:last-child { border-bottom: 0; }
.cm_sidebar .sidebar_depth2 > li > a { display: block; position: relative; padding: clamp(12.8px, 0.8333333333vw, 16px) clamp(16px, 1.0416666667vw, 20px); font-size: clamp(15.2px, 0.9895833333vw, 19px); transition: background-color 0.2s, color 0.2s; }
.cm_sidebar .sidebar_depth2 > li.active > a { background-color: var(--color-primary-70); color: #fff; font-weight: bold; }
.cm_sidebar .sidebar_depth2 > li > a:hover { background-color: var(--color-primary-70); color: #fff; }
.cm_sidebar .sidebar_depth2 > li.has_child > a { padding-right: clamp(40px, 2.6041666667vw, 50px); }
.cm_sidebar .sidebar_depth2 > li > a::after { display: none; position: absolute; top: 50%; right: clamp(16px, 1.0416666667vw, 20px); aspect-ratio: 1/1; width: clamp(16px, 1.0416666667vw, 20px); transform: translateY(-50%); background-color: #999; content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; -webkit-mask-size: contain; mask-size: contain; }
.cm_sidebar .sidebar_depth2 > li.active > a::after { background-color: #fff; transition: background-color 0.2s; }
.cm_sidebar .sidebar_depth2 > li > a:hover::after { background-color: #fff; }
.cm_sidebar .sidebar_depth2 > li.has_child > a::after { display: block; -webkit-mask-image: url(../../images/common/icon_arrow_down.svg); mask-image: url(../../images/common/icon_arrow_down.svg); }
.cm_sidebar .sidebar_depth2 > li.has_child.active > a::after { -webkit-mask-image: url(../../images/common/icon_arrow_up.svg); mask-image: url(../../images/common/icon_arrow_up.svg); }
.cm_sidebar .sidebar_depth2 > li > a[target=_blank]::after { display: block; -webkit-mask-image: url(../../images/common/icon_window.svg); mask-image: url(../../images/common/icon_window.svg); }
.cm_sidebar .sidebar_depth3_wrap { display: none; }
.cm_sidebar .sidebar_depth2 > li.active .sidebar_depth3_wrap { display: block; }
.cm_sidebar .sidebar_depth3 { display: flex; flex-direction: column; padding: clamp(12.8px, 0.8333333333vw, 16px) clamp(16px, 1.25vw, 24px); background-color: #f8f8f8; }
.cm_sidebar .sidebar_depth3 > li > a { display: flex; align-items: flex-start; padding: clamp(6.4px, 0.4166666667vw, 8px) 0; gap: clamp(6.4px, 0.4166666667vw, 8px); color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); transition: color 0.2s; }
.cm_sidebar .sidebar_depth3 > li > a::before { display: block; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(4px, 0.2604166667vw, 5px); margin-top: clamp(8.8px, 0.5729166667vw, 11px); border-radius: 50%; background-color: #999; content: ""; transition: background-color 0.2s; }
.cm_sidebar .sidebar_depth3 > li.active > a { color: #000; font-weight: 700; }
.cm_sidebar .sidebar_depth3 > li.active > a::before { background-color: #000; }
.cm_sidebar .sidebar_depth3 > li > a:hover { color: #000; }
.cm_sidebar .sidebar_depth3 > li > a:hover::before { background-color: #000; }
.cm_sidebar .sidebar_content { z-index: 2; position: relative; flex: 1; min-width: 0; }
.cm_sidebar .sub_page_content > .inner { padding-right: 0; padding-left: 0; }
.cm_sidebar.type2 { gap: 0; }
.cm_sidebar.type2 .sidebar_nav { display: none; }
.cm_sidebar.type2 .sub_page_content > .inner { max-width: 1280px; }

/*
1
2
3
border-radius: 120px 120px 0 0;
background: var(--background-white, #FFF);
box-shadow: 0 -4px 16px 0 rgba(0, 0, 0, 0.02);
*/

/* 공통 단계 */
.cm_step { display: flex; align-items: center; justify-content: space-between; max-width: clamp(592px, 38.5416666667vw, 740px); margin: 0 auto; margin-bottom: clamp(15px, 2.6041666667vw, 50px); gap: 0 10px; }
.cm_step > li { display: flex; position: relative; flex: 1; flex-direction: column; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); text-align: center; }
.cm_step > li:before { display: block; aspect-ratio: 1/1; width: clamp(35px, 3.6458333333vw, 70px); border: 1px solid var(--color-border-gray-light); border-radius: 1000px; background-position: center; background-size: 59%; background-repeat: no-repeat; background-color: #fff; content: ""; }
.cm_step > li:after { position: absolute; top: clamp(17.5px, 1.8229166667vw, 35px); right: calc(-50% - 10px + clamp(21px, 2.6041666667vw, 50px)); left: calc(50% + clamp(21px, 2.6041666667vw, 50px)); height: 2px; transform: translateY(-50%); background-image: radial-gradient(circle closest-side, var(--color-primary-30) 99%, transparent 100%); background-size: 6px 100%; content: ""; }
.cm_step > li:last-child:after { display: none; }
.cm_step > li.list1:before { background-image: url(../../images/common/join_step_icon1.svg); }
.cm_step > li.list2:before { background-image: url(../../images/common/join_step_icon2.svg); }
.cm_step > li.list3:before { background-image: url(../../images/common/join_step_icon3.svg); }
.cm_step > li.list4:before { background-image: url(../../images/common/join_step_icon4.svg); }
.cm_step > li.list5:before { background-image: url(../../images/common/join_step_icon5.svg); }
.cm_step > li.list1.active:before { background-image: url(../../images/common/join_step_icon1_active.svg); }
.cm_step > li.list2.active:before { background-image: url(../../images/common/join_step_icon2_active.svg); }
.cm_step > li.list3.active:before { background-image: url(../../images/common/join_step_icon3_active.svg); }
.cm_step > li.list4.active:before { background-image: url(../../images/common/join_step_icon4_active.svg); }
.cm_step > li.list5.active:before { background-image: url(../../images/common/join_step_icon5_active.svg); }
.cm_step > li.active:before { border-color: transparent; background-color: var(--color-primary-80); }
.cm_step .step_title { color: #000; font-weight: bold; white-space: nowrap; }
.cm_step2 { display: flex; gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(24px, 1.875vw, 36px); }
.cm_step2 > li { display: flex; position: relative; flex: 1; flex-direction: column; padding: clamp(10px, 1.0416666667vw, 20px); gap: clamp(4px, 0.4166666667vw, 8px); border: 1px solid var(--color-primary-20); border-radius: clamp(9.6px, 0.625vw, 12px) clamp(9.6px, 0.625vw, 12px) clamp(12px, 2.0833333333vw, 40px) clamp(9.6px, 0.625vw, 12px); background-color: var(--color-primary-0); word-break: keep-all; }
.cm_step2 > li:before { display: flex; position: absolute; top: 50%; left: calc(100% + clamp(16px, 1.0416666667vw, 20px)); flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(10px, 1.0416666667vw, 20px); transform: translateY(-50%) translateX(-50%); background: url(../../images/common/icon_arr_right4.svg) no-repeat center/contain; content: ""; }
.cm_step2 > li:last-child:before { display: none; }
.cm_step2 > li .step_icon { flex-shrink: 0; aspect-ratio: 1/1; width: clamp(20px, 1.6666666667vw, 32px); }
.cm_step2 > li .step_icon img { width: 100%; height: 100%; object-fit: contain; }
.cm_step2 .step_label { color: var(--color-primary-100, #214b7d); font-weight: 700; font-size: clamp(12px, 0.6770833333vw, 13px); }
.cm_step2 .step_title { color: #333; font-weight: 700; font-size: clamp(14px, 0.78125vw, 15px); line-height: 1.4; }
.cm_step3 { display: flex; flex-direction: column; gap: clamp(16px, 1.25vw, 24px); }
.cm_step3 .step_item { display: flex; align-items: stretch; gap: clamp(12px, 0.8333333333vw, 16px); }
.cm_step3 .step_item .step_num_wrap { display: flex; position: relative; flex-shrink: 0; flex-direction: column; align-items: center; }
.cm_step3 .step_item .step_num { display: flex; z-index: 1; position: relative; flex-shrink: 0; align-items: center; justify-content: center; width: clamp(22px, 1.3020833333vw, 25px); height: clamp(22px, 1.3020833333vw, 25px); border-radius: 999px; background-color: var(--color-primary-80, #3478c7); color: #fff; font-weight: 700; font-size: 13px; line-height: 1.5; }
.cm_step3 .step_item .step_num_wrap:after { flex: 1; width: 1px; margin-top: 0; margin-bottom: clamp(-24px, -1.25vw, -19.2px); border-left: 1px dashed var(--color-primary-30, #a8ccee); content: ""; }
.cm_step3 .step_item:last-child .step_num_wrap:after { display: none; }
.cm_step3 .step_item .step_body { display: flex; flex: 1; flex-direction: column; min-width: 0; gap: clamp(10px, 0.8333333333vw, 16px); }
.cm_step3 .step_title { color: #333; font-weight: 700; font-size: clamp(15.2px, 0.9895833333vw, 19px); line-height: 1.5; }
.cm_step3 .step_desc { display: flex; flex-direction: column; padding: clamp(16px, 1.25vw, 24px); gap: clamp(6.4px, 0.4166666667vw, 8px); border: 1px solid var(--color-border-gray, #ccc); border-radius: clamp(8px, 0.625vw, 12px); background-color: #fff; }
.cm_step3 .step_desc .list_item { display: flex; align-items: flex-start; gap: clamp(1.6px, 0.1041666667vw, 2px); }
.cm_step3 .step_desc .list_text { flex: 1; color: #333; font-weight: 400; line-height: 1.5; }

/* 공통 탭 */
.cm_tab { margin-bottom: clamp(30px, 2.9166666667vw, 56px); overflow: auto; }
.cm_tab.tab1 { overflow-x: auto; }
.cm_tab.tab1 .tab1_list { display: grid; min-width: max-content; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_tab.tab1 .tab1_btn { display: flex; align-items: center; justify-content: center; min-height: clamp(42px, 3.3333333333vw, 64px); padding: clamp(8px, 0.5208333333vw, 10px) clamp(19.2px, 1.25vw, 24px); border: 1px solid #dadada; border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-color: #fff; color: #333; font-size: clamp(16px, 1.09375vw, 21px); text-align: center; white-space: nowrap; transition: border-color 0.2s, color 0.2s; }
.cm_tab.tab1 .tab1_list > li.active .tab1_btn { border-color: var(--color-primary-70); color: var(--color-primary-70); font-weight: 700; }
.cm_tab.tab1 .tab1_list > li:hover .tab1_btn { border-color: var(--color-primary-70); color: var(--color-primary-70); }
.cm_tab.tab2 { overflow: auto; }
.cm_tab.tab2 .tab2_list { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_tab.tab2 .tab2_list > li { flex-shrink: 0; }
.cm_tab.tab2 .tab2_btn { display: flex; align-items: center; justify-content: center; min-width: clamp(110px, 7.8645833333vw, 151px); min-height: clamp(32px, 2.5vw, 48px); padding: clamp(4px, 0.5208333333vw, 10px) clamp(8px, 1.25vw, 24px); border-radius: clamp(79.2px, 5.15625vw, 99px); background-color: #f4f4f4; color: #333; font-size: clamp(13px, 0.8854166667vw, 17px); text-wrap: nowrap; transition: background-color 0.2s, color 0.2s; }
.cm_tab.tab2 .tab2_list > li.active .tab2_btn { background-color: var(--color-primary-70); color: #fff; font-weight: 700; }
.cm_tab.tab2 .tab2_list > li:hover .tab2_btn { background-color: var(--color-primary-70); color: #fff; }
.cm_tab.tab3 { overflow: auto; }
.cm_tab.tab3 .tab3_list { display: flex; align-items: center; gap: clamp(16px, 1.25vw, 24px); }
.cm_tab.tab3 .tab3_list > li { display: flex; flex-shrink: 0; align-items: center; gap: clamp(16px, 1.25vw, 24px); }
.cm_tab.tab3 .tab3_list > li::after { content: "/"; color: #ccc; font-size: clamp(25.6px, 1.6666666667vw, 32px); }
.cm_tab.tab3 .tab3_list > li:last-child:after { display: none; }
.cm_tab.tab3 .tab3_btn { color: #999; font-size: clamp(20px, 1.4583333333vw, 28px); line-height: 1.4; text-wrap: nowrap; transition: color 0.2s; }
.cm_tab.tab3 .tab3_list > li.active .tab3_btn { color: var(--color-primary-70); font-weight: 700; }
.cm_tab.tab3 .tab3_list > li:hover .tab3_btn { color: var(--color-primary-70); }
.cm_tab.tab4 { overflow: auto; }
.cm_tab.tab4 .tab4_list { display: flex; align-items: center; gap: clamp(18px, 1.6666666667vw, 32px); }
.cm_tab.tab4 .tab4_list > li { flex-shrink: 0; }
.cm_tab.tab4 .tab4_btn { color: #6a6a6a; font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.5; text-wrap: nowrap; transition: color 0.2s; }
.cm_tab.tab4 .tab4_list > li.active .tab4_btn { color: #000; font-weight: 700; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
.cm_tab.tab4 .tab4_list > li:hover .tab4_btn { color: #000; }
.cm_tab.col4 [class*=_list] { grid-template-columns: repeat(4, 1fr); }
.cm_tab.col3 [class*=_list] { grid-template-columns: repeat(3, 1fr); }
.cm_tab.col2 [class*=_list] { grid-template-columns: repeat(2, 1fr); }
.cm_tab.col1 [class*=_list] { grid-template-columns: repeat(1, 1fr); }

/* 공통 테이블 */
[class*=cm_table] .nodata td { padding: clamp(16px, 1.0416666667vw, 20px); text-align: center; }
[class*=cm_table].fixed { table-layout: fixed !important; }
[class*=cm_table].scroll.has_scroll { overflow-x: auto; overflow-y: hidden; }
[class*=cm_table][class*=scroll-table] { overflow: auto; }
[class*=cm_table].scroll-table table { min-width: 550px; }
.cm_table_scroll_guide { display: flex; align-items: center; margin-top: 5px; margin-bottom: 5px; padding: 10px 20px; gap: 10px; background: #333; color: #fff; font-size: var(--font_size12); }
.cm_table_scroll_guide:before { background-color: #fff; -webkit-mask-image: url("../../images/common/icon_arr_right.svg"); mask-image: url("../../images/common/icon_arr_right.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; display: block; flex-shrink: 0; width: 18px; height: 18px; content: ""; animation: swipeRight 1.8s ease-in-out infinite; mask-position: center; }
.cm_table_scroll_guide + [class*=cm_table] { margin-top: 0 !important; }
.cm_table1 { --table-th-padding: clamp(6px, 0.625vw, 12px) clamp(8px, 0.8333333333vw, 16px); --table-td-padding: clamp(8px, 0.8333333333vw, 16px); --table-font-size: clamp(14px, 0.8854166667vw, 17px); --table-th-height: clamp(40px, 2.6041666667vw, 50px); --table-td-height: clamp(46.4px, 3.0208333333vw, 58px); border-top: 1px solid var(--color-primary-70); }
.cm_table1 table { border-right: hidden; border-left: hidden; }
.cm_table1 th,
.cm_table1 td { border-bottom: 1px solid #cacaca; font-size: var(--table-font-size); text-align: center; word-break: keep-all; }
.cm_table1 th { height: var(--table-th-height); padding: var(--table-th-padding); background-color: #fff; font-weight: 700; }
.cm_table1 td { height: var(--table-td-height); padding: var(--table-td-padding); background-color: #fff; font-weight: 400; }
.cm_table1 .subject { text-align: left; }
.cm_table1 .subject .line1 { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_table1 .subject a { transition: color 0.1s; }
.cm_table1 .subject .cm_icon { flex-shrink: 0; }
.cm_table1 .subject a:hover { color: var(--color-primary-80); text-decoration: underline; }
.cm_table1 td .cm_badge { min-width: clamp(72px, 4.6875vw, 90px); max-width: 100%; }
.cm_table1 tr.nodata { height: clamp(180px, 12.5vw, 240px); }
.cm_table1 .nodata_box { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_table2 { --table-padding: clamp(9.6px, 0.625vw, 12px) clamp(12.8px, 0.8333333333vw, 16px); --table-font-size: clamp(14px, 0.8854166667vw, 17px); --table-height: clamp(46.4px, 3.0208333333vw, 58px); --table-height2:clamp(96px, 6.25vw, 120px); border-top: 1px solid #000; }
.cm_table2.type2 { border-top: 2px solid var(--color-primary-70); }
.cm_table2.type3 { border-top: 0; }
.cm_table2.type3 .session { border-top: 0; border-bottom: 0; }
.cm_table2.type4 { border-top-color: #cacaca; }
.cm_table2.type4 th { white-space: nowrap; }
.cm_table2.type4 td { overflow-wrap: anywhere; }
.cm_table2 table { border-right: hidden; border-left: hidden; }
.cm_table2 th,
.cm_table2 td { height: var(--table-height); padding: var(--table-padding); border-right: 1px solid #cacaca; border-bottom: 1px solid #cacaca; color: #000; font-size: var(--table-font-size); text-align: center; word-break: keep-all; }
.cm_table2 th.height2,
.cm_table2 td.height2 { height: var(--table-height2); }
.cm_table2 th { background: #f8f8f8; }
.cm_table2 th.style2 { background-color: var(--color-primary-5); color: var(--color-primary-70); font-weight: 700; font-size: clamp(15px, 0.9895833333vw, 19px); }
.cm_table2 td { font-weight: 400; }
.cm_table2 td.style2 { background-color: #f8f8f8; font-weight: 700; }
.cm_table2 tbody th,
.cm_table2 thead th { font-weight: bold; }
.cm_table2 th.session,
.cm_table2 td.session { background: var(--color-primary-70); color: #fff; font-weight: 700; }
.cm_table2 .youtube_link { display: block; aspect-ratio: 1/1; width: clamp(32px, 2.0833333333vw, 40px); margin: 0 auto; background: url(../../images/common/icon_youtube.svg) no-repeat center/contain; transition: opacity 0.2s; }
.cm_table2 .youtube_link:hover { opacity: 0.5; }
.cm_table2 .poet { display: block; width: clamp(120px, 7.8125vw, 150px); margin: 0 auto; margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_table2 .country { display: block; width: clamp(60px, 5.2083333333vw, 100px); margin: 0 auto; margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_table2 .session .line { display: inline-block; width: 1px; height: clamp(12.8px, 0.8333333333vw, 16px); margin: clamp(-2px, -0.1041666667vw, -1.6px) clamp(6px, 0.625vw, 12px); background-color: #fff; content: ""; }
.cm_table2 .session .small { font-weight: normal; }
.cm_table3 { --table-padding: clamp(8px, 0.5208333333vw, 10px); --table-font-size: clamp(14px, 0.8854166667vw, 17px); --table-height: clamp(35.2px, 2.2916666667vw, 44px); border: 1px solid #dee2e6; }
.cm_table3 th,
.cm_table3 td { height: var(--table-height); padding: var(--table-padding); border: 1px solid #dee2e6; color: #000; font-size: var(--table-font-size); text-align: center; word-break: keep-all; }
.cm_table3 th { background-color: #1f2855; color: #fff; font-weight: 700; }
.cm_table3 .session { background-color: #4b4b4b; color: #fff; font-weight: 700; }
.cm_table3 .session .small { font-size: clamp(12px, 0.7291666667vw, 14px); }
.cm_table3 .youtube_link { display: block; aspect-ratio: 1/1; width: clamp(32px, 2.0833333333vw, 40px); margin: 0 auto; background: url(../../images/common/icon_youtube.svg) no-repeat center/contain; transition: opacity 0.2s; }
.cm_table3 .youtube_link:hover { opacity: 0.5; }
.cm_table3 .poet { display: block; width: clamp(120px, 7.8125vw, 150px); margin: 0 auto; margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_table3 .country { display: block; width: clamp(60px, 5.2083333333vw, 100px); margin: 0 auto; margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); }

/* 공통 툴바 */
.cm_toolbar1 { display: flex; flex-wrap: wrap; gap: 6px clamp(20px, 3.0208333333vw, 58px); }
.cm_toolbar1 .toolbar_item { display: flex; position: relative; align-items: center; gap: 10px; font-size: clamp(15px, 0.9895833333vw, 19px); }
.cm_toolbar1 .toolbar_item:after { position: absolute; top: 50%; right: clamp(-29px, -1.5104166667vw, -10px); width: 1px; height: 12px; transform: translateY(-50%); background-color: #aaa; content: ""; }
.cm_toolbar1 .toolbar_item:last-child:after { display: none; }
.cm_toolbar2 { display: flex; flex-wrap: wrap; align-items: center; gap: 4px clamp(26px, 2.3958333333vw, 46px); }
.cm_toolbar2 .toolbar_item { position: relative; font-size: clamp(15px, 0.9895833333vw, 19px); }
.cm_toolbar2 .toolbar_item:after { position: absolute; top: 50%; right: clamp(-26px, -1.3541666667vw, -16px); aspect-ratio: 1/1; width: 6px; transform: translateY(-50%); border-radius: 50%; background-color: #ccc; content: ""; }
.cm_toolbar2 .toolbar_item:last-child:after { display: none; }
.cm_toolbar3 { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; margin-bottom: clamp(9.6px, 0.625vw, 12px); gap: 5px clamp(8px, 0.5208333333vw, 10px); }
.cm_toolbar3 .toolbar_item { flex-shrink: 0; max-width: 100%; }
.cm_toolbar3 .toolbar_link { display: flex; align-items: center; gap: clamp(3.2px, 0.2083333333vw, 4px); }
.cm_toolbar4 { display: flex; flex-wrap: wrap; gap: 2px clamp(12px, 1.25vw, 24px); }
.cm_toolbar4 .toolbar_item { position: relative; color: #6a6a6a; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_toolbar4 .toolbar_item:after { position: absolute; top: 50%; right: clamp(-12px, -0.625vw, -5px); width: 1px; height: clamp(8px, 0.625vw, 12px); transform: translateY(-50%); background-color: #cacaca; content: ""; }
.cm_toolbar4 .toolbar_item:last-child:after { display: none; }

/* 공통 타이포그래피 */
.cm_title { word-break: keep-all; }
.cm_title.title1 { color: #000; font-weight: bold; font-size: clamp(17px, 2.0833333333vw, 40px); line-height: 1.2; }
.cm_title.title2 { color: #333; font-weight: bold; font-size: clamp(17px, 1.4583333333vw, 28px); line-height: 1.3; }
.cm_title.title3 { color: #333; font-weight: bold; font-size: clamp(17px, 1.1458333333vw, 22px); line-height: 1.5; }
.cm_title.title4 { color: #131416; font-weight: bold; font-size: clamp(16px, 0.9895833333vw, 19px); line-height: 1.5; }
.cm_title.title5 { color: #333; font-weight: bold; font-size: clamp(16px, 0.8854166667vw, 17px); line-height: 1.5; }
.cm_title.title6 { color: #000; font-weight: 700; font-size: clamp(17px, 1.25vw, 24px); line-height: 1.4; }
.cm_title.title7 { color: #000; font-weight: 700; font-size: clamp(18px, 1.6666666667vw, 32px); line-height: 1.4; }
.cm_title.title8 { color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.5; }
.cm_title.title9 { color: #000; font-weight: 700; font-size: clamp(20px, 1.875vw, 36px); line-height: 1.4; }
.cm_title.title10 { color: #000; font-weight: 700; font-size: clamp(16px, 1.6666666667vw, 32px); line-height: 1.4; }
.cm_title.title11 { color: #000; font-weight: 700; font-size: clamp(15px, 1.4583333333vw, 28px); line-height: 1.4; }
.cm_title.title12 { color: #000; font-size: clamp(14px, 0.9895833333vw, 19px); line-height: 1.5; }
.cm_title.title13 { color: #333; font-size: clamp(13px, 0.8854166667vw, 17px); line-height: 1.5; }
.cm_title.title14 { color: #fff; font-weight: 700; font-size: clamp(18px, 1.6666666667vw, 32px); line-height: 1.4; }
.cm_title.title15 { color: #000; font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); line-height: 1.5; }
.cm_title.title16 { color: #000; font-weight: 700; font-size: clamp(22px, 1.6666666667vw, 32px); line-height: 1.4; }
.cm_title.title17 { color: var(--color-primary-70); font-weight: 700; font-size: clamp(22px, 2.0833333333vw, 40px); line-height: 1.4; }
.cm_title.title18 { color: #000; font-size: clamp(16px, 1.09375vw, 21px); line-height: 1.5; }
.cm_title.title19 { color: var(--color-primary-70); font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); line-height: 1.5; }
.cm_title.variant1 { position: relative; }
.cm_title.variant1 .text { display: inline-block; position: relative; padding-left: 1.1em; }
.cm_title.variant1 .text:before { display: block; position: absolute; top: 0.3em; left: 0; aspect-ratio: 1/1; width: 1em; background: url(../../images/common/icon_bullet.svg) no-repeat center/contain; content: ""; }
.cm_color1 { color: var(--color-primary-70) !important; }
.cm_color2 { color: #333 !important; }
.cm_color3 { color: #000 !important; }
.cm_color4 { color: #6a6a6a !important; }
.cm_validation { font-size: clamp(14px, 0.78125vw, 15px); }
.cm_validation.success { color: #228738; }
.cm_validation.error { color: #de1a16; }
.cm_bullet { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); word-break: keep-all; }
.cm_bullet::before { flex-shrink: 0; aspect-ratio: 1/1; width: clamp(19.2px, 1.25vw, 24px); background: url(../../images/common/bullet.svg) no-repeat center/contain; content: ""; }
.cm_br1 { display: none; }
.cm_br2 { display: block; }
.cm_link_txt { transition: color 0.2s ease; }
.cm_link_txt:hover { color: var(--color-primary-70); text-decoration: underline; }
.cm_link_txt.underline { color: #0056b3; text-decoration: underline; text-underline-offset: 3px; }
.cm_mask { color: var(--color-primary-70); font-weight: 700; }
.cm_font_size10 { font-size: var(--font_size10) !important; }
.cm_font_size11 { font-size: var(--font_size11) !important; }
.cm_font_size12 { font-size: var(--font_size12) !important; }
.cm_font_size13 { font-size: var(--font_size13) !important; }
.cm_font_size14 { font-size: var(--font_size14) !important; }
.cm_font_size15 { font-size: var(--font_size15) !important; }
.cm_font_size16 { font-size: var(--font_size16) !important; }
.cm_font_size17 { font-size: var(--font_size17) !important; }
.cm_font_size18 { font-size: var(--font_size18) !important; }
.cm_font_size19 { font-size: var(--font_size19) !important; }
.cm_font_size20 { font-size: var(--font_size20) !important; }
.cm_font_size21 { font-size: var(--font_size21) !important; }
.cm_font_size22 { font-size: var(--font_size22) !important; }
.cm_font_size23 { font-size: var(--font_size23) !important; }
.cm_font_size24 { font-size: var(--font_size24) !important; }
.cm_font_size25 { font-size: var(--font_size25) !important; }
.cm_font_size26 { font-size: var(--font_size26) !important; }
.cm_font_size27 { font-size: var(--font_size27) !important; }
.cm_font_size28 { font-size: var(--font_size28) !important; }
.cm_font_size29 { font-size: var(--font_size29) !important; }
.cm_font_size30 { font-size: var(--font_size30) !important; }
.cm_font_size31 { font-size: var(--font_size31) !important; }
.cm_font_size32 { font-size: var(--font_size32) !important; }
.cm_font_size33 { font-size: var(--font_size33) !important; }
.cm_font_size34 { font-size: var(--font_size34) !important; }
.cm_font_size35 { font-size: var(--font_size35) !important; }
.cm_font_size36 { font-size: var(--font_size36) !important; }
.cm_font_size37 { font-size: var(--font_size37) !important; }
.cm_font_size38 { font-size: var(--font_size38) !important; }
.cm_font_size39 { font-size: var(--font_size39) !important; }
.cm_font_size40 { font-size: var(--font_size40) !important; }
.cm_font_size41 { font-size: var(--font_size41) !important; }
.cm_font_size42 { font-size: var(--font_size42) !important; }
.cm_font_size43 { font-size: var(--font_size43) !important; }
.cm_font_size44 { font-size: var(--font_size44) !important; }
.cm_font_size45 { font-size: var(--font_size45) !important; }
.cm_font_size46 { font-size: var(--font_size46) !important; }
.cm_font_size47 { font-size: var(--font_size47) !important; }
.cm_font_size48 { font-size: var(--font_size48) !important; }
.cm_font_size49 { font-size: var(--font_size49) !important; }
.cm_font_size50 { font-size: var(--font_size50) !important; }
.cm_font_size51 { font-size: var(--font_size51) !important; }
.cm_font_size52 { font-size: var(--font_size52) !important; }
.cm_font_size53 { font-size: var(--font_size53) !important; }
.cm_font_size54 { font-size: var(--font_size54) !important; }
.cm_font_size55 { font-size: var(--font_size55) !important; }
.cm_font_size56 { font-size: var(--font_size56) !important; }
.cm_font_size57 { font-size: var(--font_size57) !important; }
.cm_font_size58 { font-size: var(--font_size58) !important; }
.cm_font_size59 { font-size: var(--font_size59) !important; }
.cm_font_size60 { font-size: var(--font_size60) !important; }
.cm_font_size61 { font-size: var(--font_size61) !important; }
.cm_font_size62 { font-size: var(--font_size62) !important; }
.cm_font_size63 { font-size: var(--font_size63) !important; }
.cm_font_size64 { font-size: var(--font_size64) !important; }
.cm_font_size65 { font-size: var(--font_size65) !important; }
.cm_font_size66 { font-size: var(--font_size66) !important; }
.cm_font_size67 { font-size: var(--font_size67) !important; }
.cm_font_size68 { font-size: var(--font_size68) !important; }
.cm_font_size69 { font-size: var(--font_size69) !important; }
.cm_font_size70 { font-size: var(--font_size70) !important; }
.cm_font_size71 { font-size: var(--font_size71) !important; }
.cm_font_size72 { font-size: var(--font_size72) !important; }
.cm_font_size73 { font-size: var(--font_size73) !important; }
.cm_font_size74 { font-size: var(--font_size74) !important; }
.cm_font_size75 { font-size: var(--font_size75) !important; }
.cm_font_size76 { font-size: var(--font_size76) !important; }
.cm_font_size77 { font-size: var(--font_size77) !important; }
.cm_font_size78 { font-size: var(--font_size78) !important; }
.cm_font_size79 { font-size: var(--font_size79) !important; }
.cm_font_size80 { font-size: var(--font_size80) !important; }
.cm_font_size81 { font-size: var(--font_size81) !important; }
.cm_font_size82 { font-size: var(--font_size82) !important; }
.cm_font_size83 { font-size: var(--font_size83) !important; }
.cm_font_size84 { font-size: var(--font_size84) !important; }
.cm_font_size85 { font-size: var(--font_size85) !important; }
.cm_font_size86 { font-size: var(--font_size86) !important; }
.cm_font_size87 { font-size: var(--font_size87) !important; }
.cm_font_size88 { font-size: var(--font_size88) !important; }
.cm_font_size89 { font-size: var(--font_size89) !important; }
.cm_font_size90 { font-size: var(--font_size90) !important; }
.cm_font_size91 { font-size: var(--font_size91) !important; }
.cm_font_size92 { font-size: var(--font_size92) !important; }
.cm_font_size93 { font-size: var(--font_size93) !important; }
.cm_font_size94 { font-size: var(--font_size94) !important; }
.cm_font_size95 { font-size: var(--font_size95) !important; }
.cm_font_size96 { font-size: var(--font_size96) !important; }
.cm_font_size97 { font-size: var(--font_size97) !important; }
.cm_font_size98 { font-size: var(--font_size98) !important; }
.cm_font_size99 { font-size: var(--font_size99) !important; }
.cm_font_size100 { font-size: var(--font_size100) !important; }

/* docs1 */
.cm_docs1 { word-break: keep-all; }
.cm_docs1 .docs_frame { position: relative; }
.cm_docs1 .docs_corner { z-index: 3; position: absolute; aspect-ratio: 1/1; width: clamp(41.6px, 2.7083333333vw, 52px); background-position: center; background-size: contain; background-repeat: no-repeat; }
.cm_docs1 .docs_corner.top_left { top: 0; left: 0; background-image: url(../../images/sub/corner_deco1_1.svg); }
.cm_docs1 .docs_corner.top_right { top: 0; right: 0; background-image: url(../../images/sub/corner_deco1_2.svg); }
.cm_docs1 .docs_corner.bottom_left { bottom: 0; left: 0; background-image: url(../../images/sub/corner_deco1_3.svg); }
.cm_docs1 .docs_corner.bottom_right { right: 0; bottom: 0; background-image: url(../../images/sub/corner_deco1_4.svg); }
.cm_docs1 .docs_line { display: block; z-index: 1; position: absolute; background: linear-gradient(254deg, #44af18 -10.38%, #098da7 95.96%); }
.cm_docs1 .docs_line.top { top: 0; right: clamp(40px, 2.6041666667vw, 50px); left: clamp(40px, 2.6041666667vw, 50px); height: 2px; }
.cm_docs1 .docs_line.bottom { right: clamp(40px, 2.6041666667vw, 50px); bottom: 0; left: clamp(40px, 2.6041666667vw, 50px); height: 2px; }
.cm_docs1 .docs_line.left { top: clamp(40px, 2.6041666667vw, 50px); bottom: clamp(40px, 2.6041666667vw, 50px); left: 0; width: 2px; }
.cm_docs1 .docs_line.right { top: clamp(40px, 2.6041666667vw, 50px); right: 0; bottom: clamp(40px, 2.6041666667vw, 50px); width: 2px; }
.cm_docs1 .docs_content { display: flex; z-index: 2; position: relative; flex-direction: column; align-items: center; justify-content: center; padding: clamp(40px, 2.6041666667vw, 50px) clamp(18px, 4.1666666667vw, 80px) clamp(60px, 4.6875vw, 90px); gap: clamp(24px, 1.6666666667vw, 32px); }
.cm_docs1 .docs_list { border-top: 1px solid #000; }
.cm_docs1 .docs_item { display: flex; align-items: center; padding: clamp(17px, 1.25vw, 24px) 0; gap: 12px clamp(19.2px, 1.25vw, 24px); border-bottom: 1px solid #cacaca; }
.cm_docs1 .docs_label { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(45px, 2.9166666667vw, 56px); border-radius: 50%; background-color: var(--color-primary-70); color: #fff; font-weight: 700; font-size: clamp(15px, 0.9895833333vw, 19px); }
.cm_history.history_content { position: relative; }
.cm_history .history_section { position: relative; }
.cm_history .history_line { z-index: 0; position: absolute; top: 0; left: 50%; width: 1px; height: 100%; background-color: #ddd; }
.cm_history .history_line::before { position: absolute; top: 0; left: 0; width: 100%; height: var(--history-progress, 0px); background-color: var(--color-primary-70); content: ""; transition: height 0.1s linear; }
.cm_history .history_list { display: flex; z-index: 1; position: relative; flex-direction: column; gap: clamp(50px, 4.1666666667vw, 80px); }
.cm_history .history_item { display: flex; position: relative; align-items: flex-start; justify-content: space-between; gap: clamp(40px, 8.3333333333vw, 160px); }
.cm_history .history_list.location2 .history_item:nth-child(odd) { flex-direction: row; }
.cm_history .history_list.location2 .history_item:nth-child(even) { flex-direction: row-reverse; }
.cm_history .history_list.last_line_no .history_item:last-child::before { z-index: 2; position: absolute; top: 30px; left: 50%; width: 5px; height: 100%; transform: translateX(-50%); background-color: #fff; content: ""; }
.cm_history .history_item::after { box-sizing: border-box; z-index: 2; position: absolute; top: clamp(14.4px, 0.9375vw, 18px); left: 50%; aspect-ratio: 1/1; width: clamp(16px, 1.0416666667vw, 20px); transform: translateX(-50%); border: 2px solid #ddd; border-radius: 50%; background-color: #fff; box-shadow: clamp(1.6px, 0.1041666667vw, 2px) clamp(3.2px, 0.2083333333vw, 4px) clamp(4.8px, 0.3125vw, 6px) 0 rgba(0, 0, 0, 0.1); content: ""; transition: border-color 0.2s ease, box-shadow 0.2s ease; }
.cm_history .history_item.circle2::after { top: 0; }
.cm_history .history_item.is-active::after { border-color: var(--color-primary-70); box-shadow: clamp(1.6px, 0.1041666667vw, 2px) clamp(3.2px, 0.2083333333vw, 4px) clamp(4.8px, 0.3125vw, 6px) 0 rgba(0, 113, 60, 0.25); }
.cm_history .history_img_box { flex: 1; min-width: 0; }
.cm_history .history_img_box .history_swiper { width: 100%; }
.cm_history .history_info_box { display: flex; flex: 1; flex-direction: column; min-width: 0; }

/* 통합검색 */
.page_integrated_search .search_area { display: flex; flex-direction: column; gap: clamp(40px, 4.1666666667vw, 80px); }
.page_integrated_search .search_box1 { padding: clamp(38.4px, 2.5vw, 48px) 20px; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #f3f4fb; }
.page_integrated_search .sub_box { padding-bottom: clamp(25.6px, 1.6666666667vw, 32px); border-bottom: 1px solid #cacaca; }
.page_integrated_search .sub_box2 { display: flex; flex-direction: column; gap: clamp(25.6px, 1.6666666667vw, 32px); }
.page_integrated_search .search_form { display: flex; z-index: 1; position: relative; flex-direction: column; align-items: center; }
.page_integrated_search .search_input_wrap { display: flex; position: relative; align-items: center; width: 100%; max-width: clamp(448px, 29.1666666667vw, 560px); height: clamp(51.2px, 3.3333333333vw, 64px); border: 2px solid transparent; border-radius: clamp(79.2px, 5.15625vw, 99px); background: linear-gradient(#fff, #fff) padding-box, linear-gradient(254deg, #44af18 -10.38%, #098da7 95.96%) border-box; }
.page_integrated_search .search_input { flex: 1; width: 100%; height: 100%; margin: 0; padding: clamp(8px, 0.5208333333vw, 10px) clamp(64px, 4.1666666667vw, 80px) clamp(8px, 0.5208333333vw, 10px) clamp(25.6px, 1.6666666667vw, 32px); border: none; background-color: transparent; font-size: clamp(16px, 1.09375vw, 21px); }
.page_integrated_search .search_placeholder { display: -webkit-box; position: absolute; left: clamp(25.6px, 1.6666666667vw, 32px); width: 100%; max-width: 65%; font-size: clamp(16px, 1.09375vw, 21px); white-space: nowrap; pointer-events: none; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; text-overflow: ellipsis; }
.page_integrated_search .search_btn { display: flex; z-index: 10; position: absolute; top: 50%; right: 0; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(51.2px, 3.3333333333vw, 64px); transform: translateY(-50%); border-radius: 50%; background: linear-gradient(254deg, #44af18 -10.38%, #098da7 95.96%); color: #fff; transition: opacity 0.2s, transform 0.2s; }
.page_integrated_search .search_btn:hover { transform: translateY(-50%) scale(1.05); opacity: 0.9; }
.page_integrated_search .sort_list { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(6.4px, 0.4166666667vw, 8px); }
.page_integrated_search .sort_link { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; min-height: clamp(44.8px, 2.9166666667vw, 56px); padding: clamp(8px, 0.5208333333vw, 10px) clamp(19.2px, 1.25vw, 24px); border: 1px solid #dadada; border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-color: #fff; color: #333; font-size: clamp(15px, 0.8854166667vw, 17px); text-align: center; transition: border-color 0.2s, color 0.2s; }
.page_integrated_search .sort_link:hover { border-color: var(--color-primary-70); color: var(--color-primary-70); }
.page_integrated_search .sort_link.active { border-color: var(--color-primary-70); color: var(--color-primary-70); font-weight: 700; }
.page_integrated_search .search_title_box { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: clamp(25.6px, 1.6666666667vw, 32px); padding-bottom: clamp(12.8px, 0.8333333333vw, 16px); gap: clamp(16px, 1.0416666667vw, 20px); border-bottom: 1px solid var(--color-primary-70); }
.page_integrated_search .search_title_box.sub_type { margin-bottom: clamp(16px, 1.0416666667vw, 20px); padding-bottom: 0; gap: clamp(19.2px, 1.25vw, 24px); border-bottom: none; }
.page_integrated_search .search_title_box .title_text { font-weight: 700; font-size: clamp(16px, 1.25vw, 24px); line-height: 1.4; }
.page_integrated_search .search_title_box .sub_text { position: relative; padding-left: clamp(10.4px, 0.6770833333vw, 13px); font-weight: 700; font-size: clamp(15px, 1.09375vw, 21px); }
.page_integrated_search .search_title_box .sub_text:before { position: absolute; top: 0.6em; left: 0; aspect-ratio: 1/1; width: clamp(4px, 0.2604166667vw, 5px); border-radius: 50%; background-color: #999; content: ""; }
.page_integrated_search .add_btn { display: flex; flex-shrink: 0; align-items: center; height: fit-content; gap: clamp(3.2px, 0.2083333333vw, 4px); font-size: clamp(15px, 0.8854166667vw, 17px); transition: color 0.2s; }
.page_integrated_search .add_btn::after { aspect-ratio: 1/1; width: clamp(16px, 1.0416666667vw, 20px); content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; -webkit-mask-image: url(../../images/common/icon_plus.svg); background-color: #333; mask-image: url(../../images/common/icon_plus.svg); transition: background-color 0.2s; }
.page_integrated_search .add_btn:hover { color: var(--color-primary-70); }
.page_integrated_search .add_btn:hover::after { background-color: var(--color-primary-70); }
.page_integrated_search .menu_list { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.page_integrated_search .menu_item { width: fit-content; }
.page_integrated_search .menu_link { display: flex; align-items: baseline; gap: clamp(3.2px, 0.2083333333vw, 4px); }
.page_integrated_search .menu_link::before { flex-shrink: 0; aspect-ratio: 1/1; width: clamp(12.8px, 0.8333333333vw, 16px); content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; -webkit-mask-image: url(../../images/common/icon_home.svg); transform: translateY(clamp(1px, 0.1041666667vw, 2px)); background-color: #999; mask-image: url(../../images/common/icon_home.svg); transition: background-color 0.2s; }
.page_integrated_search a.menu_link:hover::before { background-color: var(--color-primary-70); }
.page_integrated_search .menu_texts { display: flex; flex-wrap: wrap; align-items: center; gap: 0 clamp(4.8px, 0.3125vw, 6px); }
.page_integrated_search .menu_text { position: relative; margin-right: clamp(16px, 1.4583333333vw, 28px); font-size: clamp(14px, 0.8854166667vw, 17px); transition: color 0.2s; }
.page_integrated_search a.menu_link:hover .menu_text { color: var(--color-primary-70); }
.page_integrated_search .menu_text::after { position: absolute; top: 50%; right: clamp(-22px, -1.1458333333vw, -17.6px); aspect-ratio: 1/1; width: clamp(12.8px, 0.8333333333vw, 16px); transform: translateY(-50%); content: ""; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; -webkit-mask-image: url(../../images/common/icon_arrow_forward.svg); background-color: #999; mask-image: url(../../images/common/icon_arrow_forward.svg); transition: background-color 0.2s; }
.page_integrated_search .menu_text:last-child { margin-right: 0; }
.page_integrated_search .menu_text:last-child::after { display: none; }
.page_integrated_search a.menu_link:hover .menu_text::after { background-color: var(--color-primary-70); }
.page_integrated_search .term_list { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(6px, 0.625vw, 12px); }
.page_integrated_search .term_link { display: flex; align-items: center; justify-content: center; min-width: clamp(104px, 6.7708333333vw, 130px); min-height: clamp(32px, 2.0833333333vw, 40px); padding: clamp(4px, 0.2604166667vw, 5px) clamp(12.8px, 0.8333333333vw, 16px); border: 1px solid #cacaca; border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-color: #f8f8f8; font-size: clamp(14px, 0.8854166667vw, 17px); text-align: center; transition: background-color 0.2s, border-color 0.2s; }
.page_integrated_search .term_link:hover { border-color: var(--color-primary-70); background-color: var(--color-primary-10); }
.page_integrated_search .mean_list { display: flex; flex-direction: column; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.page_integrated_search .mean_link { display: flex; flex-direction: column; min-height: clamp(123.2px, 8.0208333333vw, 154px); padding: clamp(16px, 1.25vw, 24px) clamp(18px, 1.6666666667vw, 32px) clamp(18px, 1.6666666667vw, 32px); gap: clamp(6px, 0.625vw, 12px); border: 1px solid #dadada; border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #f7f7fc; transition: background-color 0.2s, border-color 0.2s; }
.page_integrated_search .mean_link:hover { border-color: var(--color-primary-70); background-color: var(--color-primary-10); }
.page_integrated_search .mean_head { display: flex; flex-wrap: wrap; align-items: center; gap: 2px clamp(12.8px, 0.8333333333vw, 16px); }
.page_integrated_search .mean_word { flex-shrink: 0; font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); transition: color 0.2s; }
.page_integrated_search .mean_info { display: flex; align-items: center; min-width: 0; color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); transition: color 0.2s; }
.mean_info span:last-child { flex-shrink: 0; }
.mean_info span:last-child::before { display: inline-block; aspect-ratio: 1/1; width: clamp(4px, 0.2604166667vw, 5px); margin: 0 clamp(6.4px, 0.4166666667vw, 8px); border-radius: 50%; background-color: #cacaca; content: ""; vertical-align: middle; }
.page_integrated_search .mean_desc { display: -webkit-box; color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.page_integrated_search .forum_list { display: grid; grid-template-columns: repeat(3, 1fr); align-items: stretch; gap: 20px clamp(10px, 2.0833333333vw, 40px); }
.page_integrated_search .forum_link { display: flex; flex-direction: column; height: 100%; gap: clamp(10px, 1.25vw, 24px); }
.page_integrated_search .forum_thumb { aspect-ratio: 4/3; width: 100%; overflow: hidden; border: 3px solid transparent; border-radius: clamp(12.8px, 0.8333333333vw, 16px); transition: border-color 0.3s ease; }
.page_integrated_search .forum_link:hover .forum_thumb { border-color: var(--color-primary-70); }
.page_integrated_search .forum_thumb_img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.page_integrated_search .forum_link:hover .forum_thumb_img { transform: scale(1.06); }
.page_integrated_search .forum_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; gap: clamp(9.6px, 0.625vw, 12px); }
.page_integrated_search .forum_title { display: -webkit-box; font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; transition: color 0.2s; }
.page_integrated_search .forum_link:hover .forum_title { color: var(--color-primary-70); }
.page_integrated_search .forum_date { color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); }
.page_integrated_search .video_list { display: grid; grid-template-columns: repeat(3, 1fr); align-items: stretch; gap: 20px clamp(10px, 2.0833333333vw, 40px); }
.page_integrated_search .video_link { display: flex; flex-direction: column; height: 100%; gap: clamp(10px, 1.25vw, 24px); }
.page_integrated_search .video_thumb { aspect-ratio: 16/9; width: 100%; overflow: hidden; border: 3px solid transparent; border-radius: clamp(12.8px, 0.8333333333vw, 16px); transition: border-color 0.3s ease; }
.page_integrated_search .video_link:hover .video_thumb { border-color: var(--color-primary-70); }
.page_integrated_search .video_thumb_img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.page_integrated_search .video_link:hover .video_thumb_img { transform: scale(1.06); }
.page_integrated_search .video_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; gap: clamp(9.6px, 0.625vw, 12px); }
.page_integrated_search .video_title { display: -webkit-box; font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; transition: color 0.2s; }
.page_integrated_search .video_link:hover .video_title { color: var(--color-primary-70); }
.page_integrated_search .media_list { display: grid; grid-template-columns: repeat(4, 1fr); align-items: stretch; gap: 20px clamp(10px, 2.0833333333vw, 40px); }
.page_integrated_search .media_link { display: flex; flex-direction: column; height: 100%; gap: clamp(10px, 1.25vw, 24px); }
.page_integrated_search .media_thumb { aspect-ratio: 1/1; width: 100%; overflow: hidden; border: 3px solid transparent; border-radius: clamp(12.8px, 0.8333333333vw, 16px); transition: border-color 0.3s ease; }
.page_integrated_search .media_link:hover .media_thumb { border-color: var(--color-primary-70); }
.page_integrated_search .media_thumb_img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.page_integrated_search .media_link:hover .media_thumb_img { transform: scale(1.06); }
.page_integrated_search .media_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; gap: clamp(9.6px, 0.625vw, 12px); }
.page_integrated_search .media_title { display: -webkit-box; font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; transition: color 0.2s; }
.page_integrated_search .media_link:hover .media_title { color: var(--color-primary-70); }
.page_integrated_search .board_list { display: flex; flex-direction: column; }
.page_integrated_search .board_item { display: flex; flex-direction: column; padding: clamp(18px, 1.6666666667vw, 32px); gap: clamp(16px, 1.25vw, 24px); border-bottom: 1px solid #cacaca; background-color: #fff; }
.page_integrated_search .board_texts { display: flex; flex-direction: column; gap: clamp(8px, 0.8333333333vw, 16px); }
.page_integrated_search .board_main { display: -webkit-box; font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; transition: color 0.2s; }
.page_integrated_search .board_main:hover { color: var(--color-primary-70); }
.page_integrated_search .board_sub { display: -webkit-box; color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.page_integrated_search .publication_list { display: grid; grid-template-columns: repeat(4, 1fr); align-items: stretch; gap: 20px clamp(10px, 1.25vw, 24px); }
.page_integrated_search .publication_item1 { display: flex; flex-direction: column; height: 100%; overflow: hidden; border: 1px solid #cacaca; border-radius: clamp(9.6px, 0.625vw, 12px); }
.page_integrated_search .publication_thumb1 { aspect-ratio: 300/383; width: 100%; overflow: hidden; }
.page_integrated_search .publication_thumb_img1 { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.page_integrated_search .publication_content1 { display: flex; flex: 1; flex-direction: column; justify-content: space-between; padding: clamp(10px, 0.8333333333vw, 16px) clamp(10px, 1.25vw, 24px) clamp(14px, 1.25vw, 24px) clamp(14px, 1.25vw, 24px); }
.page_integrated_search .publication_title1 { font-weight: 700; font-size: clamp(16.8px, 1.09375vw, 21px); }
.page_integrated_search .publication_body1 { display: flex; align-items: center; justify-content: center; margin-top: clamp(12px, 1.25vw, 24px); gap: clamp(6.4px, 0.4166666667vw, 8px); }
.page_integrated_search .publication_btn { flex: 1; width: 100%; }
.page_integrated_search .publication_link2 { display: flex; flex-direction: column; height: 100%; overflow: hidden; border: 1px solid #cacaca; border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #fff; transition: border-color 0.2s; }
.page_integrated_search .publication_link2:hover { border-color: var(--color-primary-70); }
.page_integrated_search .publication_thumb2 { aspect-ratio: 69/95; width: 100%; overflow: hidden; }
.page_integrated_search .publication_thumb_img2 { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.5s ease; }
.page_integrated_search .publication_link2:hover .publication_thumb_img2 { transform: scale(1.06); }
.page_integrated_search .publication_content2 { display: flex; flex: 1; flex-direction: column; justify-content: space-between; padding: clamp(10px, 0.8333333333vw, 16px) clamp(10px, 1.25vw, 24px) clamp(14px, 1.25vw, 24px) clamp(14px, 1.25vw, 24px); }
.page_integrated_search .publication_title2 { display: -webkit-box; font-weight: 700; font-size: clamp(16.8px, 1.09375vw, 21px); -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; transition: color 0.2s; }
.page_integrated_search .publication_link2:hover .publication_title2 { color: var(--color-primary-70); }
.page_integrated_search .publication_body2 { display: flex; align-items: center; margin-top: clamp(6.4px, 0.4166666667vw, 8px); gap: clamp(6.4px, 0.4166666667vw, 8px); }

/* 게시판 에디터 */
.editor_content { font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.6; word-wrap: break-word; color: #333; font-weight: 400; font-family: "PretendardGOV", "Noto Sans KR", sans-serif; letter-spacing: -0.02em; word-break: keep-all; }
.editor_content h1 { display: block; margin: 0.67em 0; font-weight: 700; font-size: 2em; line-height: 1.2; }
.editor_content h2 { display: block; margin: 0.83em 0; font-weight: 700; font-size: 1.5em; line-height: 1.3; }
.editor_content h3 { display: block; margin: 1em 0; font-weight: 700; font-size: 1.17em; line-height: 1.4; }
.editor_content h4 { display: block; margin: 1.33em 0; font-weight: 700; font-size: 1em; }
.editor_content h5 { display: block; margin: 1.67em 0; font-weight: 700; font-size: 0.83em; }
.editor_content h6 { display: block; margin: 2.33em 0; font-weight: 700; font-size: 0.67em; }
.editor_content p { display: block; margin: 1em 0; }
.editor_content b,
.editor_content strong { font-weight: 700; }
.editor_content i,
.editor_content em { font-style: italic; }
.editor_content u,
.editor_content ins { text-decoration: underline; }
.editor_content s,
.editor_content strike,
.editor_content del { color: #999; text-decoration: line-through; }
.editor_content sub { font-size: 0.75em; vertical-align: sub; }
.editor_content sup { font-size: 0.75em; vertical-align: super; }
.editor_content hr { display: block; height: 1px; margin: 2em 0; border: 0; border-top: 1px solid #e0e0e0; }
.editor_content mark { padding: 0.1em 0.2em; border-radius: 2px; background-color: #fff000; color: inherit; }
.editor_content small { color: #666; font-size: 0.8em; }
.editor_content code { padding: 0.2em 0.4em; border-radius: 3px; background-color: #f5f5f5; color: #c7254e; font-size: 0.9em; font-family: monospace; }
.editor_content pre { display: block; margin: 1em 0; padding: 15px; border: 1px solid #ddd; border-radius: 4px; background: #f8f9fa; color: #333; font-family: monospace; white-space: pre-wrap; }
.editor_content blockquote { margin: 1.5em 0; padding: 1em 1.5em; border-left: 4px solid #ddd; background-color: #f9f9f9; color: #555; }
.editor_content address { margin-bottom: 1em; color: #666; font-style: normal; }
.editor_content ul { display: block; margin: 1em 0; padding-left: 40px; list-style-type: disc !important; }
.editor_content ol { display: block; margin: 1em 0; padding-left: 40px; list-style-type: decimal !important; }
.editor_content li { display: list-item; margin-bottom: 0.3em; list-style: inherit !important; }
.editor_content dl { margin: 1em 0; }
.editor_content dt { margin-top: 1em; font-weight: 700; }
.editor_content dd { margin-left: 20px; color: #555; }
.editor_content a { color: #007bff; text-decoration: underline; word-break: break-all; cursor: pointer; }
.editor_content a:hover { color: #0056b3; }
.editor_content table { width: 100%; max-width: 100%; margin: 1.5em 0; border: 1px solid #ccc; border-collapse: collapse; border-spacing: 0; table-layout: fixed; }
.editor_content th,
.editor_content td { padding: 8px 12px; border: 1px solid #ccc; vertical-align: middle; }
.editor_content th { background-color: #f2f2f2; font-weight: 700; text-align: center; }
.editor_content img { max-width: 100%; height: auto !important; vertical-align: top; }
.editor_content .image { display: table; margin: 1.5em auto; /* 기본 가운데 정렬 */ clear: both; text-align: center; }
.editor_content .image img { display: block; margin: 0 auto; }
.editor_content .image > figcaption { display: table-caption; margin-top: 5px; padding: 0.6em; background-color: #f7f7f7; color: #777; font-size: 0.85em; text-align: center; word-break: break-word; caption-side: bottom; }
.editor_content .image-style-side,
.editor_content .image-style-align-left { max-width: 50%; margin-right: 1.5em; margin-bottom: 1em; float: left; }
.editor_content .image-style-align-right { max-width: 50%; margin-bottom: 1em; margin-left: 1.5em; float: right; }
.editor_content .image-style-align-center { margin-right: auto; margin-left: auto; clear: both; }
.editor_content .media { display: block; position: relative; margin: 1.5em 0; clear: both; overflow: hidden; }
.editor_content .editor_table { overflow-x: auto; }

/* 웹접근성 */
*:focus-visible { z-index: 1; outline: 2px dashed #000; outline-offset: 2px; scroll-margin-top: 100px; transition: none !important; }
#skipNavi { z-index: 9999; position: absolute; top: 0; left: 0; white-space: nowrap; }
#skipNavi a { display: inline-block; position: absolute; top: -9999px; }
#skipNavi a:focus-visible { top: 0; padding: 5px; background-color: #000; color: #fff; font-size: 15px; }

/* 공통 스크립트 */
.email_autocomplete_wrap { display: inline-flex; position: relative; width: 100%; }
.email_autocomplete_wrap .email_autocomplete_list { z-index: 200; position: absolute; top: 100%; left: 0; width: 100%; max-height: 220px; margin: 2px 0 0; padding: 4px 0; overflow-y: auto; border: 1px solid #d4d4d4; border-radius: 4px; background: #fff; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); list-style: none; }
.email_autocomplete_wrap .email_autocomplete_list[hidden] { display: none; }
.email_autocomplete_wrap .email_autocomplete_list li { padding: 9px 14px; overflow: hidden; color: #222; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; transition: background 0.1s; }
.email_autocomplete_wrap .email_autocomplete_list li:hover,
.email_autocomplete_wrap .email_autocomplete_list li.is_active { background: var(--color-primary-5, #f0f6ff); color: var(--color-primary-80, #1a5fcc); }
.js_tab_content .js_tab_panel { display: none; }
.js_tab_content .js_tab_panel.active { display: block; }
.js_read_more .js_read_more_content { position: relative; max-height: 85px; overflow: hidden; transition: max-height 0.5s ease; }
.js_read_more .js_read_more_content:before { position: absolute; bottom: 0; width: 100%; height: 85px; background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #f0f0f3 80%, #f0f0f3 100%); content: ""; transition: opactiy 0.5s ease, visibility 0.5s ease; }
.js_read_more .js_read_more_btn { transition: opactiy 0.5s ease, visibility 0.5s ease; }
.js_read_more.expanded .js_read_more_content:before,
.js_read_more.expanded .js_read_more_btn { visibility: hidden; opacity: 0; }
@media (max-width:1280px) {
	.cm_overview9 .ovw9_connector { width: 15px; }
	.cm_overview9 .ovw9_item { width: 100px; min-width: unset; padding: 10px; border-radius: 15px; }
	.cm_overview9 .ovw9_list { margin-left: 22px; gap: 22px; }
	.cm_overview9 .ovw9_list::before { width: 22px; }
}
@media screen and (max-width:1280px) {
	.cm_board_list1 .bd1_list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.cm_board_list3 .bd3_list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cm_board_list4 .bd4_list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.cm_board_list6 .bd6_list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.cm_event_marker.pos4 { right: 50px; bottom: -40px; }
	.cm_swiper3 { width: 500px; }
	.cm_dl2.type3 > li { flex-direction: column; }
	.cm_modal2 .modal_wrap { padding: clamp(20px, 1.5625vw, 30px); }
	.cm_modal2 .gnb_depth1 { display: flex; flex-direction: column; gap: clamp(24px, 1.5625vw, 30px); }
	.cm_modal2 .gnb_item1::after { display: none; }
	.cm_modal2 .gnb_depth2 { gap: 0; }
	.cm_modal2 .gnb_item2 { border-bottom: 1px solid #cacaca; }
	.cm_modal2 .gnb_link2 { min-height: 48px; padding: 12px 30px 12px 8px; }
	.cm_modal2 .gnb_depth3 { border-radius: 0; }
	.cm_modal2 .gnb_item2.active .gnb_depth3_wrap { margin-top: 0; }
	.cm_overview2 .ovw2_list { grid-template-columns: repeat(2, 1fr); }
	.cm_overview8 .ovw8_list { grid-template-columns: repeat(6, 1fr); }
	.cm_overview8 .ovw8_item { grid-column: span 2; }
	.cm_overview8 .ovw8_item:nth-child(4) { grid-column: 1/4; }
	.cm_overview8 .ovw8_item:nth-child(5) { grid-column: 4/7; }
}
@media (max-width:1150px) {
	.cm_overview9 .ovw9_connector { width: 10px; }
	.cm_overview9 .ovw9_item { width: 70px; }
	.cm_overview9 .ovw9_list { margin-left: 10px; gap: 10px; }
	.cm_overview9 .ovw9_list::before { width: 10px; }
}
@media screen and (max-width:1079px) {
	.cm_img_zoom_wrap { position: relative; }
	.cm_img_zoom_wrap .img_zoom_inner { overflow: auto; }
	.cm_img_zoom_wrap:before { display: flex; position: absolute; top: 0px; right: 0px; align-items: center; justify-content: center; padding: 5px 10px; padding-right: 30px; background: rgba(0, 0, 0, 0.8) url(../../images/common/icon_zoom_w.svg) no-repeat right 10px center/14px; content: "이미지 크게 보기"; color: #fff; font-size: 12px; }
	.cm_img_zoom_wrap.active .img_zoom { min-width: 1000px; }
	.cm_img_zoom_wrap.active:before { content: "이미지 작게 보기"; }
	.cm_image.col4 > * { width: calc((100% - clamp(15px, 1.25vw, 24px)) / 3); }
	.editor_content { font-size: 14px; line-height: 1.5; }
	.editor_content h1 { font-size: 1.6em; }
	.editor_content h2 { font-size: 1.4em; }
	.editor_content h3 { font-size: 1.2em; }
	.editor_content ul,
	.editor_content ol { padding-left: 24px; }
	.editor_content .image-style-side,
	.editor_content .image-style-align-left,
	.editor_content .image-style-align-right { max-width: 100%; margin: 1em auto; float: none; }
}
@media (max-width:1024px) {
	.cm_overview9 .ovw9_connector { width: 15px; }
	.cm_overview9 .ovw9_item { width: 100px; }
	.cm_overview9 .ovw9_list { margin-left: 22px; gap: 22px; }
	.cm_overview9 .ovw9_list::before { width: 22px; }
}
@media screen and (max-width:1024px) {
	:root { --inner_padding: 15px; --col_padding: 5px; }
	.cm_sidebar { flex-direction: column; gap: 20px; }
	.cm_sidebar .depth1_item { display: none; }
	.cm_sidebar .sidebar_depth2_wrap { display: none; }
	.cm_sidebar .sidebar_nav { display: none; width: 100%; }
	.cm_sidebar .sidebar_nav:has(form) { display: block; }
	.cm_step { max-width: 100%; }
	.cm_step2 { flex-wrap: wrap; padding-right: clamp(14.4px, 0.9375vw, 18px); gap: 8px 18px; }
	.cm_step2 > li { flex: none; width: calc((100% - 54px) / 4); }
	.cm_step2 > li:before { left: calc(100% + 9px); }
}
@media screen and (max-width:1023px) {
	.page_integrated_search .publication_body1 { flex-direction: column; }
}
@media (max-width:870px) {
	.cm_overview9 .ovw9_connector { width: 10px; }
	.cm_overview9 .ovw9_item { width: 70px; }
	.cm_overview9 .ovw9_list { margin-left: 10px; gap: 10px; }
	.cm_overview9 .ovw9_list::before { width: 10px; }
}
@media (max-width:768px) {
	.cm_overview9 { display: flex; flex-direction: column; align-items: center; height: auto; min-height: auto; padding: 40px 20px; }
	.cm_overview9 .ovw9_start { flex-direction: row; align-items: center; justify-content: center; padding-bottom: 22px; gap: 20px; }
	.cm_overview9 .ovw9_item { min-width: 100px; }
	.cm_overview9 .ovw9_start::after { position: absolute; bottom: 0; left: 50%; width: 120px; height: 22px; transform: translateX(-50%); border-right: 1px solid #999; border-bottom: 1px solid #999; border-left: 1px solid #999; border-radius: 0 0 10px 10px; content: ""; }
	.cm_overview9 .ovw9_connector { width: 1px; height: 22px; }
	.cm_overview9 .ovw9_list { flex-direction: column; align-items: center; width: 100%; margin: 0; padding: 0; gap: 22px; }
	.cm_overview9 .ovw9_item2 + .ovw9_item2::before { position: absolute; top: auto; right: auto; bottom: 100%; left: 50%; width: 1px; height: 23px; transform: translateX(-50%); background-color: #999; content: ""; }
	.cm_overview9 .ovw9_list::before,
	.cm_overview9 .ovw9_list::after { display: none; }
	.cm_overview11 .ovw11_top { flex-direction: column; }
	.cm_overview11 .ovw11_list3 { flex-direction: column; align-items: flex-start; }
	.cm_overview11 .ovw11_list_txt::after { display: none; }
	.cm_overview11 .ovw11_list4_in { flex-direction: column; align-items: flex-start; }
	.cm_overview11 .ovw11_list_txt2 { align-items: baseline; }
	.cm_overview13 .ovw13_imgbox { padding: 0; }
	.cm_history .history_line { left: clamp(8px, 0.5208333333vw, 10px); }
	.cm_history .history_list { padding-left: clamp(25.6px, 1.6666666667vw, 32px); gap: clamp(40px, 3.125vw, 60px); }
	.cm_history .history_item { display: flex; flex-direction: column; gap: clamp(20px, 1.25vw, 24px); }
	.cm_history .history_list.location2 .history_item:nth-child(odd) { flex-direction: column; }
	.cm_history .history_list.location2 .history_item:nth-child(even) { flex-direction: column; }
	.cm_history .history_list.last_line_no .history_item:last-child::before { left: -20px; transform: unset; }
	.cm_history .history_item::after { top: clamp(14.4px, 0.9375vw, 18px); left: clamp(-22px, -1.1458333333vw, -17.6px); }
	.cm_history .history_img_box,
	.cm_history .history_info_box { flex: none; width: 100%; }
	.cm_history .history_info_box { padding-bottom: clamp(8px, 0.5208333333vw, 10px); }
}
@media screen and (max-width:768px) {
	.cm_board_detail1 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide { width: calc((100% - 32px) / 5); }
	.board_view_paging { grid-template-columns: repeat(1, 1fr); }
	.board_view_paging .paging_label .cm_icon:before { display: none; }
	.board_view_paging .paging_item.paging_prev { border-bottom: 1px solid #ebebeb; }
	.board_view_paging .paging_item.paging_prev:after { display: none; }
	.board_view_paging .paging_item.paging_next .paging_link { justify-content: flex-start; text-align: left; }
	.cm_board_list1 .bd1_list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cm_board_list2 .bd2_list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cm_board_list4 .bd4_list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cm_board_list5 .gallery_swiper .swiper-button-prev,
	.cm_board_list5 .gallery_swiper .swiper-button-next { position: absolute; }
	.cm_board_list5 .gallery_swiper .swiper-button-prev { left: -2.5%; }
	.cm_board_list5 .gallery_swiper .swiper-button-next { right: -2.5%; }
	.cm_board_list5 .gallery_thumbs_swiper { width: 100%; }
	.cm_board_list5 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide { width: calc((100% - 40px) / 6); }
	.cm_board_list6 .bd6_list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cm_board_list7 .bd7_list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cm_board_list8 .bd8_list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cm_board_list8 .cm_toolbar4 { flex-direction: row; }
	.cm_board_list10 .bd10_list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cm_event_marker.pos2 { top: 260px; right: 0; }
	.cm_event_marker.pos3 { right: 0; }
	.cm_event_marker.pos4 { right: 12px; bottom: -80px; }
	.cm_swiper .gallery_swiper_main .swiper-slide { width: 100% !important; }
	.cm_swiper2 .gallery_thumbs_swiper_sub .swiper-slide { width: calc((100% - 16px) / 3); }
	[class*=w-] { width: 100% !important; }
	.cm_input_action.is_column_on_mobile { flex-direction: column; align-items: stretch; }
	.cm_form_layout1 .form_row { grid-template-columns: 1fr; }
	.cm_form_layout1 .form_label { width: 100%; }
	.cm_form_layout1 .form_row.align_top .form_label { padding-top: 0; }
	.cm_kogl_info .kogl_info_content { flex-direction: column; align-items: stretch; gap: 8px 0; }
	.cm_text_list2 dl { flex-direction: column; }
	.cm_bullet_list1.col_2,
	.cm_bullet_list1.col_3 { grid-template-columns: repeat(1, 1fr); gap: 6px; }
	.cm_dl2 > li { flex-direction: column; }
	.cm_file_list .file_box { flex-direction: column; align-items: start; }
	.cm_file_list .file_btns { justify-content: end; width: 100%; }
	.cm_overview1 .ovw1_list { flex-direction: column; }
	.cm_overview1 .ovw1_thumb { width: clamp(320px, 20.8333333333vw, 400px); margin: 0 auto; }
	.cm_overview3 .ovw3_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview4 .ovw4_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview6 { padding: clamp(24px, 1.5625vw, 30px); padding-bottom: 0; }
	.cm_overview6 .ovw6_info_txt br { display: none; }
	.cm_overview6 .ovw6_info_txt { font-size: 14.5px; }
	.cm_overview7 .ovw7_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview8 .ovw8_list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cm_overview8 .ovw8_item { grid-column: auto; }
	.cm_overview8 .ovw8_item:nth-child(4),
	.cm_overview8 .ovw8_item:nth-child(5) { grid-column: auto; }
	.cm_overview8 .ovw8_item:nth-child(5) { grid-column: 1/-1; }
	.cm_overview15 { flex-direction: column; align-items: center; }
	.cm_overview15 .ovw15_info { width: 100%; }
	.cm_overview17 .ovw17_list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cm_overview18 { padding-top: 0; }
	.cm_overview18 .ovw18_title { position: static; max-width: none; margin: 0 calc(-1 * clamp(20px, 2.9166666667vw, 56px)); border-radius: 0; }
	.cm_tab.tab3 .tab3_list > li::after { display: none; }
	.cm_tab.col4 [class*=_list] { grid-template-columns: repeat(2, 1fr); }
	.cm_table1.responsive table { display: block; }
	.cm_table1.responsive caption { display: none; }
	.cm_table1.responsive colgroup { display: none; }
	.cm_table1.responsive thead { display: none; }
	.cm_table1.responsive tbody { display: block; width: 100%; }
	.cm_table1.responsive tbody tr { display: flex; flex-wrap: wrap; align-items: center; width: 100%; padding: 14px 12px; gap: 5px 15px; border-bottom: 1px solid #cacaca; }
	.cm_table1.responsive tbody td { display: block; position: relative; height: auto !important; padding: 0; border: none; text-align: left !important; }
	.cm_table1.responsive tbody td:before { margin-right: 5px; content: attr(data-th) ":"; white-space: nowrap; }
	.cm_table1.responsive tbody td[data-th=번호] { display: none; }
	.cm_table1.responsive tbody td[data-th=번호].notice { display: block; }
	.cm_table1.responsive tbody td[data-th=번호].notice:before { display: none; }
	.cm_table1.responsive tbody td[data-th=상태]:before { display: none; }
	.cm_table1.responsive tbody td[data-th=제목]:before { display: none; }
	.cm_table1.responsive tbody td.subject { width: 100%; margin-bottom: 3px; font-weight: 700; font-size: 16px; text-align: left !important; }
	.cm_table1.responsive tbody tr.nodata { justify-content: center; }
	.cm_table1.responsive tbody tr.nodata td { display: block; }
	.cm_table1.responsive tbody tr.nodata td:before { display: none; }
	.cm_toolbar1 .toolbar_item:after { display: none; }
	.cm_toolbar2 { gap: 4px 16px; }
	.cm_toolbar2 .toolbar_item:first-child { width: 100%; }
	.cm_toolbar2 .toolbar_item:after { display: none; }
	.cm_toolbar4 { flex-direction: column; }
	.cm_toolbar4 .toolbar_item:after { display: none; }
	.cm_br1 { display: block; }
	.cm_br2 { display: none; }
	.cm_docs1 .docs_item { flex-direction: column; align-items: center; justify-content: center; text-align: center; }
	.page_integrated_search .sort_list { grid-template-columns: repeat(2, 1fr); }
	.page_integrated_search .mean_head { flex-direction: column; align-items: flex-start; }
	.page_integrated_search .forum_list { grid-template-columns: repeat(1, 1fr); }
	.page_integrated_search .video_list { grid-template-columns: repeat(1, 1fr); }
	.page_integrated_search .media_list { grid-template-columns: repeat(2, 1fr); }
	.page_integrated_search .publication_list { grid-template-columns: repeat(2, 1fr); }
}
@media screen and (max-width:767px) {
	.cm_image.col3 > * { width: calc((100% - clamp(15px, 1.25vw, 24px)) / 2); }
	.cm_image.col4 > * { width: calc((100% - clamp(15px, 1.25vw, 24px)) / 2); }
}
@media screen and (max-width:640px) {
	.cm_step2 > li { width: calc((100% - 36px) / 3); }
	.cm_step2 > li .step_icon { display: none; }
}
@media screen and (max-width:600px) {
	.cm_overview18 .ovw18_imgbox { flex-direction: column; }
	.cm_overview18 .ovw18_img { flex: none; width: 100%; }
	.cm_overview19 .ovw19_imgbox { grid-template-columns: minmax(0, 1fr); }
}
@media screen and (max-width:500px) {
	.cm_board_detail1 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide { width: calc((100% - 24px) / 4); }
	.cm_board_list1 .bd1_body { flex-direction: column; }
	.cm_board_list1 .bd1_body .cm_btn { width: 100%; min-width: 0; }
	.cm_board_list2 .bd2_body1 { flex-direction: column; }
	.cm_board_list3 .bd3_list { grid-template-columns: repeat(1, minmax(0, 1fr)); }
	.cm_board_list4 .bd4_list { grid-template-columns: repeat(1, minmax(0, 1fr)); }
	.cm_board_list5 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide { width: calc((100% - 32px) / 5); }
	.cm_board_list6 .bd6_list { grid-template-columns: repeat(1, minmax(0, 1fr)); }
	.cm_board_list7 .bd7_list { grid-template-columns: repeat(1, minmax(0, 1fr)); }
	.cm_board_list8 .bd8_list { grid-template-columns: repeat(1, minmax(0, 1fr)); }
	.cm_board_list9 .bd9_list { grid-template-columns: repeat(1, minmax(0, 1fr)); gap: 20px; }
	.cm_board_list10 .bd10_list { grid-template-columns: repeat(1, minmax(0, 1fr)); }
	.cm_icon_box3 { flex-direction: column; }
	.cm_iconbox_bg3 { margin: 0 auto; }
	.cm_dl3 > li { flex-direction: column; }
	.cm_modal { width: 75%; }
	.cm_overview6 { padding: 18px; }
	.cm_overview7 .ovw7_item { flex-direction: column; }
	.cm_overview7 .ovw7_icon { margin: 0 auto; }
	.cm_overview7 .ovw7_text1 { text-align: center; }
	.cm_overview8 .ovw8_list { grid-template-columns: 1fr; }
	.cm_overview8 .ovw8_item { grid-column: auto; }
	.page_integrated_search .media_list { grid-template-columns: repeat(1, 1fr); }
}
@media screen and (max-width:479px) {
	.cm_image.col2 > * { width: 100%; }
	.cm_image.col3 > * { width: 100%; }
	.cm_image.col4 > * { width: 100%; }
}
@media screen and (max-width:400px) {
	.cm_board_detail1 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide { width: calc((100% - 16px) / 3); }
	.cm_board_list5 .gallery_thumbs_swiper .gallery_thumbs_swiper_sub .swiper-slide { width: calc((100% - 24px) / 4); }
	.cm_overview4 .ovw4_box { flex-direction: column; }
	.cm_overview4 .ovw4_icon { margin: 0 auto; }
	.cm_overview4 .ovw4_info .cm_title { text-align: center; }
}
@media (prefers-reduced-motion:reduce) {
	.cm_event_marker,
	.cm_event_marker .marker_bubble { animation: none; }
	.cm_modal3 .deco_item,
	.cm_modal3.modal_on .letter_card { animation: none; }
	.cm_overview14 .ovw14_deco > img { animation: none; }
}