@charset "UTF-8";
:root { --primary: #137ae7; --primary-s10:#3f93eb; --primary-s20:#5ba2ee; --primary-s30:#72b0f1; --primary-s40:#87bcf3; --primary-s50:#9bc7f5; --primary-s60:#add1f7; --primary-s70:#bfdbf8; --primary-s80:#d0e4fa; --primary-s90:#e0eefc; --primary-s100:#f0f6fd; --secondary: #000; --secondary-s10:#303030; --secondary-s20:#4d4d4d; --secondary-s30:#676767; --secondary-s40:#7e7e7e; --secondary-s50:#939393; --secondary-s60:#a7a7a7; --secondary-s70:#bababa; --secondary-s80:#ccc; --secondary-s90:#dedede; --secondary-s100:#efefef; --mono1:#000; --mono2:#1a1a1a; --mono3:#333; --mono4:#4d4d4d; --mono5:#666; --mono6:#808080; --mono7:#999; --mono8:#b3b3b3; --mono9:#ccc; --mono10:#fff;  /* color-styles */ --text-secondary: #333; --color-text-bolder: var(--color-gray-90); --color-text-basic: var(--color-gray-80); --color-text-primary: var(--color-primary-80); --color-text-primary-light: var(--color-primary-60); --color-text-primary-dark: var(--color-primary-90); --color-text-secondary: var(--color-gray-60); --color-text-disabled: var(--color-gray-60); --color-text-point-red: #eb0510; --color-primary-0:#f6fbf9; --color-primary-5:#ddefe9; --color-primary-10:#bde6da; --color-primary-20:#98d8c7; --color-primary-30:#74cab4; --color-primary-40:#50bda1; --color-primary-50:#35a98c; --color-primary-60:#1e9175; --color-primary-70:#147a63; --color-primary-80:#11785c; --color-primary-90:#0c5946; --color-primary-100:#083f32; --color-secondary-0:#f3ffff; --color-secondary-5:#dcfafa; --color-secondary-10:#b8e5e5; --color-secondary-20:#91d6d6; --color-secondary-30:#6bc7c7; --color-secondary-40:#45b8b8; --color-secondary-50:#26a7a7; --color-secondary-60:#0e8f8f; --color-secondary-70:#047676; --color-secondary-80:#005e5e; --color-secondary-90:#024a4a; --color-secondary-100:#033535; --color-information-5:#e7f4fe; --color-information-10:#d3ebfd; --color-information-20:#9ed2fa; --color-information-30:#5fb5f7; --color-information-40:#2098f3; --color-information-50:#0b78cb; --color-information-60:#096ab3; --color-information-70:#085691; --color-information-80:#053961; --color-information-90:#03253f; --color-information-95:#021a2c; --color-point-0:#fff7f8; --color-point-5:#fef6f9; --color-point-10:#fdebf2; --color-point-20:#fad6e4; --color-point-30:#f6bdd3; --color-point-40:#f2a1bf; --color-point-50:#ed86ab; --color-point-60:#e55e8f; --color-point-70:#dd3373; --color-point-80:#db0058; --color-point-90:#b80048; --color-point-95:#8f0038; --color-point-2-0:#fff7f8; --color-point-2-5:#fff4f6; --color-point-2-10:#ffecef; --color-point-2-20:#ffdce2; --color-point-2-30:#ffcbd3; --color-point-2-40:#f5aab3; --color-point-2-50:#eb8593; --color-point-2-60:#e56574; --color-point-2-70:#de4355; --color-point-2-80:#e41c44; --color-point-2-90:#c81733; --color-point-2-95:#a20e29; --color-success-5:#eaf6ec; --color-success-10:#d8eedd; --color-success-20:#a9dab4; --color-success-30:#7ec88e; --color-success-40:#3fa654; --color-success-50:#228738; --color-success-60:#267337; --color-success-70:#285d33; --color-success-80:#1f4727; --color-success-90:#122b18; --color-success-95:#0e2012; --color-warning-5:#fff3db; --color-warning-10:#ffe0a3; --color-warning-20:#ffc95c; --color-warning-30:#ffb114; --color-warning-40:#c78500; --color-warning-50:#9e6a00; --color-warning-60:#8a5c00; --color-warning-70:#614100; --color-warning-80:#422c00; --color-warning-90:#2e1f00; --color-warning-95:#241800; --color-danger-5:#fdefec; --color-danger-10:#fcdfd9; --color-danger-20:#f7afa1; --color-danger-30:#f48771; --color-danger-40:#f05f42; --color-danger-50:#de3412; --color-danger-60:#bd2c0f; --color-danger-70:#8a240f; --color-danger-80:#5c180a; --color-danger-90:#390d05; --color-danger-95:#260903; --color-gray-0:#fff; --color-gray-5:#f2f2f2; --color-gray-10:#e6e6e6; --color-gray-20:#ccc; --color-gray-30:#b2b2b2; --color-gray-40:#999; --color-gray-50:#808080; --color-gray-60:#666; --color-gray-70:#4d4d4d; --color-gray-80:#333; --color-gray-90:#191919; --color-gray-95:#0d0d0d; --color-alpha-black75:#000000bf; --color-alpha-black50:#00000080; --color-alpha-black25:#00000040; --color-alpha-black10:#0000001a; --color-alpha-white75:#ffffffbf; --color-alpha-white50:#ffffff80; --color-alpha-white25:#ffffff40; --color-alpha-white10:#ffffff1a; --color-button-primary: #11785c; --color-button-primary-hover: #0c5946; --color-button-primary-pressed: var(--color-primary-100); --color-button-secondary: #ddefe9; --color-button-secondary-hover: #bde6da; --color-button-secondary-pressed: var(--color-primary-20); --color-button-secondary-border: #35a98c; --color-button-tertiary: #fff; --color-button-tertiary-hover: #f2f2f2; --color-button-tertiary-pressed: var(--color-gray-10); --color-button-tertiary-border: var(--color-gray-60); --color-button-disabled: var(--color-gray-10); --color-border-primary: var(--color-primary-30); --color-border-primary-dark: var(--color-primary-60); --color-border-red: var(--color-point-40); --color-border-green: var(--color-primary-30); --color-border-green-dark: var(--color-primary-60); --color-border-gray: var(--color-gray-20); --color-border-gray-light: #eee; --color-border-gray-dark: var(--color-gray-40); --color-border-gray-darker: var(--color-gray-70); --color-border-disabled: var(--color-gray-30); --color-background-primary: var(--color-primary-80); --color-background-primary-light: var(--color-primary-60); --color-background-primary-lighter: var(--color-primary-10); --color-background-primary-lightest: var(--color-primary-0); --color-background-red: var(--color-point-5); --color-background-green: var(--color-primary-10); --color-background-green-light: var(--color-primary-0); --color-background-gray: var(--color-gray-5); --color-background-gray-light: #f4f5f6; --color-background-white: #fff; --color-background-disabled: var(--color-gray-10); --color-icon-primary: var(--color-primary-80); --color-icon-basic: var(--color-gray-80); --color-icon-secondary: var(--color-gray-60); --color-icon-disabled: var(--color-gray-50); --color-icon-inverse: #fff; --color-text-inverse: #fff; --color-text-enabled: var(--color-gray-60); --body_font_size: 16px; --inner: 1248px; --inner_padding: 30px; --col_padding: 25px; --form_height: 56px; --textarea_height: 144px; --border_radius5:0.5rem; --border_radius10:1rem; --border_radius15:1.5rem; --border_radius20:2rem; --border_radius25:2.5rem; --border_radius30:3rem; --border_radius35:3.5rem; --border_radius40:4rem; --border_radius45:4.5rem; --border_radius50:5rem; --typo-letter-spacing-0:0; --typo-letter-spacing-1:1px; --font_size10:10px; --font_size11:11px; --font_size12:12px; --font_size13:13px; --font_size14:14px; --font_size15:15px; --font_size16:16px; --font_size17:17px; --font_size18:18px; --font_size19:19px; --font_size20:20px; --font_size21:21px; --font_size22:22px; --font_size23:23px; --font_size24:24px; --font_size25:25px; --font_size26:26px; --font_size27:27px; --font_size28:28px; --font_size29:29px; --font_size30:30px; --font_size31:31px; --font_size32:32px; --font_size33:33px; --font_size34:34px; --font_size35:35px; --font_size36:36px; --font_size37:37px; --font_size38:38px; --font_size39:39px; --font_size40:40px; --font_size41:41px; --font_size42:42px; --font_size43:43px; --font_size44:44px; --font_size45:45px; --font_size46:46px; --font_size47:47px; --font_size48:48px; --font_size49:49px; --font_size50:50px; --font_size51:51px; --font_size52:52px; --font_size53:53px; --font_size54:54px; --font_size55:55px; --font_size56:56px; --font_size57:57px; --font_size58:58px; --font_size59:59px; --font_size60:60px; --font_size61:61px; --font_size62:62px; --font_size63:63px; --font_size64:64px; --font_size65:65px; --font_size66:66px; --font_size67:67px; --font_size68:68px; --font_size69:69px; --font_size70:70px; --font_size71:71px; --font_size72:72px; --font_size73:73px; --font_size74:74px; --font_size75:75px; --font_size76:76px; --font_size77:77px; --font_size78:78px; --font_size79:79px; --font_size80:80px; --font_size81:81px; --font_size82:82px; --font_size83:83px; --font_size84:84px; --font_size85:85px; --font_size86:86px; --font_size87:87px; --font_size88:88px; --font_size89:89px; --font_size90:90px; --font_size91:91px; --font_size92:92px; --font_size93:93px; --font_size94:94px; --font_size95:95px; --font_size96:96px; --font_size97:97px; --font_size98:98px; --font_size99:99px; --font_size100:100px; }
.gap-04-12 { gap: 0.4rem 1.2rem; }
.gap-08-16 { gap: 0.8rem 1.6rem; }
.gap-12-24 { gap: 1.2rem 2.4rem; }
::selection { background: var(--color-primary-5); color: var(--color-text-basic); }

/* 스크롤바 */
::-webkit-scrollbar { width: 1.1rem; height: 1.1rem; }
::-webkit-scrollbar-track { background: #f4f5f6; }
::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 10px; background: #a0a1a1; background-clip: content-box; }
.dragscroll::-webkit-scrollbar { display: none !important; }

/* basic */
html { font-size: 62.5%; }
body { color: #333; font-size: clamp(16px, 0.8854166667vw, 17px); line-height: 1.5; font-family: "PretendardGOV", "Malgun Gothic", "맑은 고딕", "Apple SD Gothic Neo", "함초롬돋움", "HCR Dotum", sans-serif; letter-spacing: normal; }
.wd-40 { width: clamp(32px, 2.0833333333vw, 40px) !important; }
.wd-60 { width: clamp(48px, 3.125vw, 60px) !important; }
.wd-80 { width: clamp(64px, 4.1666666667vw, 80px) !important; }
.wd-100 { width: clamp(80px, 5.2083333333vw, 100px) !important; }
.wd-120 { width: clamp(96px, 6.25vw, 120px) !important; }
.wd-140 { width: clamp(112px, 7.2916666667vw, 140px) !important; }
.wd-160 { width: clamp(128px, 8.3333333333vw, 160px) !important; }
.wd-180 { width: clamp(144px, 9.375vw, 180px) !important; }
.wd-200 { width: clamp(160px, 10.4166666667vw, 200px) !important; }
.wd-220 { width: clamp(176px, 11.4583333333vw, 220px) !important; }
.wd-240 { width: clamp(192px, 12.5vw, 240px) !important; }
.wd-260 { width: clamp(208px, 13.5416666667vw, 260px) !important; }
.wd-280 { width: clamp(224px, 14.5833333333vw, 280px) !important; }
.wd-300 { width: clamp(240px, 15.625vw, 300px) !important; }
.wd-320 { width: clamp(256px, 16.6666666667vw, 320px) !important; }
.wd-340 { width: clamp(272px, 17.7083333333vw, 340px) !important; }
.wd-360 { width: clamp(288px, 18.75vw, 360px) !important; }
.wd-380 { width: clamp(304px, 19.7916666667vw, 380px) !important; }
.wd-400 { width: clamp(320px, 20.8333333333vw, 400px) !important; }
.wp-10 { width: 10% !important; }
.wp-20 { width: 20% !important; }
.wp-30 { width: 30% !important; }
.wp-40 { width: 40% !important; }
.wp-50 { width: 50% !important; }
.wp-60 { width: 60% !important; }
.wp-70 { width: 70% !important; }
.wp-80 { width: 80% !important; }
.wp-90 { width: 90% !important; }
.wp-100 { width: 100% !important; }
.pd-00 { padding: 0 !important; }
.mg-00 { margin: 0 !important; }
.flex-1-1-0 { flex: 1 1 0; min-width: 0; }

/* 공통 카테고리 및 상태 */
[class*=cm_badge] { display: inline-flex; align-items: center; justify-content: center; border: 1px solid transparent; line-height: 0.8; text-align: center; vertical-align: middle; word-break: keep-all; }
.cm_badge.badge1 { height: clamp(26px, 1.6666666667vw, 32px); padding: 0 clamp(8px, 0.625vw, 12px); border-radius: 50px; border-color: #999; background: #fff; color: var(--color-text-basic); font-size: clamp(13px, 0.78125vw, 15px); }
.cm_badge.badge2 { height: clamp(19px, 1.1979166667vw, 23px); padding: 0 clamp(4px, 0.3125vw, 6px); border-radius: clamp(2px, 0.2083333333vw, 4px); font-size: clamp(13px, 0.78125vw, 15px); }
.cm_badge.badge3 { height: clamp(20px, 1.25vw, 24px); padding: 0 clamp(5px, 0.4166666667vw, 8px); border-radius: 50px; font-size: clamp(13px, 0.78125vw, 15px); }
.cm_badge.badge4 { height: clamp(24px, 1.4583333333vw, 28px); padding: 0 clamp(3.2px, 0.2083333333vw, 4px); border-radius: clamp(2px, 0.2083333333vw, 4px); font-size: clamp(13px, 0.78125vw, 15px); }
.cm_badge.badge5 { height: clamp(28px, 1.7708333333vw, 34px); padding: 0 clamp(6.4px, 0.4166666667vw, 8px); border-radius: clamp(4.8px, 0.3125vw, 6px); }
.cm_badge.variant1 { border-color: transparent; background: #c1eeec; color: #216561; }
.cm_badge.variant2 { border-color: transparent; background: #d6dcfa; color: #1c2e8d; }
.cm_badge.variant3 { border-color: transparent; background: #f5d1d7; color: #7d0015; }
.cm_badge.variant4 { border-color: transparent; background: #f5e0b9; color: #79530b; }
.cm_badge.variant5 { border-color: transparent; background: #b6f2cd; color: #07662b; }
.cm_badge.variant6 { border-color: transparent; background: #f3eaac; color: #6e6100; }
.cm_badge.variant7 { border-color: transparent; background: #e2c7f8; color: #632293; }
.cm_badge.variant8 { border-color: transparent; background: #dbf2b0; color: #416300; }
.cm_badge.variant9 { border-color: var(--color-text-primary); background: #fff; color: var(--color-text-primary); }
.cm_badge.variant10 { border-color: var(--color-text-primary); background: var(--color-text-primary); color: #fff; }
.cm_badge.variant11 { border-color: var(--color-primary-5); background: var(--color-primary-5); color: var(--color-text-primary); }
.cm_badge.variant12 { border-color: var(--color-point-10); background: var(--color-point-10); color: var(--color-point-90); }
.cm_badge.variant13 { border-color: #bde6da; background: #bde6da; color: var(--color-text-primary-dark); }
.cm_badge.variant14 { border-color: #f4f5f6; background: #f4f5f6; color: var(--color-text-disabled); }
.cm_badge.variant15 { border-color: var(--color-primary-90); background: var(--color-primary-90); color: #fff; }
.cm_badge.variant16 { border-color: #e41c44; background: #e41c44; color: #fff; }
.cm_badge.variant17 { background: #ffec82; color: var(--color-text-bolder); }
.cm_badge.variant18 { background: var(--color-gray-20); color: var(--color-text-basic); }
.cm_badge.variant19 { border-color: transparent; background: #f4f2fe; color: #7553ed; }
.cm_badge.variant20 { border-color: transparent; background: #fdf2f8; color: #dd0760; }
.cm_badge.variant21 { border-color: transparent; background: #ecfdf5; color: #088451; }
.cm_badge.variant22 { border-color: transparent; background: #fdf2f8; color: #c514cc; }
.cm_badge.variant23 { border-color: transparent; background: #eaf4ff; color: #0166f3; }
.cm_badge.variant24 { border-color: transparent; background: #fef2f2; color: #de1a16; }
.cm_badge.variant25 { border-color: transparent; background: #fdf2f8; color: #dd0760; }
.cm_badge.variant26 { border-color: transparent; background: #e9e9e9; color: #444; }
.cm_badge.variant27 { border-color: transparent; background: #fff7ed; color: #960; }
.cm_badge.variant28 { border-color: transparent; background: #666; color: #fff; }
.cm_badge.variant29 { border-color: transparent; background: #d9e7fb; color: #00319a; }
.cm_badge.variant30 { border-color: transparent; background: #ddf3ea; color: #0f4e35; }
.cm_badge.variant31 { border-color: transparent; background: #425de8; color: #fff; }
.cm_badge.variant32 { border-color: transparent; background: #ddd; color: #111; }
.cm_badge.variant33 { border-color: transparent; background: #333; color: #fff; }
.cm_border1 { width: 100%; height: 1px; background: var(--color-border-gray); }
.border-0 { border: 0 !important; }
.border_left_0 { border-left: 0 !important; }
.border_right_0 { border-right: 0 !important; }
.border_top_0 { border-top: 0 !important; }
.border_bottom_0 { border-bottom: 0 !important; }

/* 공통 게시판 리스트 */
.cm_board_list1 .faq_total { color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.5; }
.cm_board_list1 .faq_total .cm_color.secondary-50 { color: #425de8; font-weight: 700; }
.cm_board_list1 .faq_tabs { display: flex; flex-wrap: wrap; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_board_list1 .faq_tab { display: inline-flex; align-items: center; justify-content: center; height: clamp(38.4px, 2.5vw, 48px); padding: 0 clamp(19.2px, 1.25vw, 24px); border: 1px solid #ccc; border-radius: 99px; background: #f4f5f6; color: #666; font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.5; cursor: pointer; transition: background 0.15s, color 0.15s, border-color 0.15s; }
.cm_board_list1 .faq_tab:hover { border-color: #425de8; color: #425de8; }
.cm_board_list1 .faq_tab.is_active { border-color: transparent; background: #425de8; color: #fff; }
.cm_board_list1 .faq_list { display: flex; flex-direction: column; gap: clamp(16px, 1.0416666667vw, 20px); }
.cm_board_list1 .faq_item { position: relative; border: 1px solid #ccc; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: #fff; transition: border-color 0.25s ease, border-width 0.25s ease; }
.cm_board_list1 .faq_item:before { display: block; position: absolute; top: -1px; right: -1px; bottom: -1px; left: -1px; border: 2px solid #007eb4; border-radius: inherit; content: ""; opacity: 0; }
.cm_board_list1 .faq_item.is_open:before { opacity: 1; }
.cm_board_list1 .faq_q { display: flex; align-items: center; width: 100%; padding: clamp(19.2px, 1.25vw, 24px) clamp(25.6px, 1.6666666667vw, 32px); gap: clamp(12.8px, 0.8333333333vw, 16px); background: transparent; text-align: left; cursor: pointer; }
.cm_board_list1 .faq_badge { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; width: clamp(25.6px, 1.6666666667vw, 32px); height: clamp(25.6px, 1.6666666667vw, 32px); border-radius: 50%; background: #333; color: #fff; font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); line-height: 1.5; }
.cm_board_list1 .faq_badge.theme_primary { background: #0586be; }
.cm_board_list1 .faq_q .faq_text { flex: 1 1 0; min-width: 0; color: #333; font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); line-height: 1.5; word-break: keep-all; }
.cm_board_list1 .faq_arrow { --icon-size: 24; --icon-gap: 0; flex-shrink: 0; transition: transform 0.3s ease; }
.cm_board_list1 .faq_item.is_open .faq_arrow { transform: rotate(180deg); }
.cm_board_list1 .faq_a { display: grid; grid-template-rows: 0fr; background: #f0f6fa; transition: grid-template-rows 0.35s ease; }
.cm_board_list1 .faq_item.is_open .faq_a { grid-template-rows: 1fr; }
.cm_board_list1 .faq_a_inner { display: flex; align-items: flex-start; min-height: 0; padding: 0 clamp(25.6px, 1.6666666667vw, 32px); overflow: hidden; gap: clamp(12.8px, 0.8333333333vw, 16px); transition: padding 0.35s ease; }
.cm_board_list1 .faq_item.is_open .faq_a_inner { padding: clamp(25.6px, 1.6666666667vw, 32px); }
.cm_board_list1 .faq_a .faq_text { flex: 1 1 0; min-width: 0; color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.5; word-break: keep-all; }
.cm_board_list1 .faq_a .faq_text p + p { margin-top: 4px; }
.cm_board_list2 { border-top: 1px solid #000; }
.cm_board_list2 .board_item { display: flex; align-items: center; padding: clamp(32px, 2.0833333333vw, 40px); gap: clamp(32px, 2.0833333333vw, 40px); border-bottom: 1px solid #ccc; background: #fff; }
.cm_board_list2 .board_thumb { flex-shrink: 0; width: clamp(224px, 14.5833333333vw, 280px); height: clamp(168px, 10.9375vw, 210px); overflow: hidden; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: #f4f5f6; }
.cm_board_list2 .board_thumb img { width: 100%; height: 100%; object-fit: cover; }
.cm_board_list2 .board_right { display: flex; flex: 1 1 0; flex-direction: column; align-items: flex-start; justify-content: space-between; min-width: 0; height: clamp(168px, 10.9375vw, 210px); padding: clamp(9.6px, 0.625vw, 12px) 0; }
.cm_board_list2 .board_text_area { display: flex; flex-direction: column; width: 100%; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_board_list2 .board_title { overflow: hidden; color: #000; font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.cm_board_list2 .board_desc { display: -webkit-box; -webkit-line-clamp: 2; color: #333; font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.5; line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

/* 공통 게시판 상세 */
.cm_board_detail1 .board_header { display: flex; flex-direction: column; padding: clamp(19.2px, 1.25vw, 24px); gap: 10px 0; border-top: 2px solid var(--color-border-gray-darker); border-bottom: 1px solid var(--color-border-gray); }
.cm_board_detail1 .board_title_wrap { display: flex; align-items: center; gap: 0 clamp(6.4px, 0.4166666667vw, 8px); }
.cm_board_detail1 .board_category { flex-shrink: 0; }
.cm_board_detail1 .board_title { font-weight: bold; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.3; }
.cm_board_detail1 .board_content { padding: clamp(19.2px, 1.25vw, 24px); border-bottom: 1px solid #ddd; }
.cm_board_detail1 .board_content .editor_content { min-height: 320px; }
.cm_board_detail1 .board_content .cm_file_list { margin-top: clamp(19.2px, 1.25vw, 24px); }
.cm_board_detail1 .board_answer { padding: clamp(25.6px, 1.6666666667vw, 32px); border-bottom: 1px solid #ddd; }
.cm_board_detail1 .board_answer .answer_header { display: flex; align-items: center; justify-content: space-between; margin-bottom: clamp(19.2px, 1.25vw, 24px); }
.cm_board_detail1 .board_answer .answer_title { font-weight: bold; font-size: clamp(18px, 0.9895833333vw, 19px); }
.cm_board_detail1.gallery .board_content .editor_content { min-height: auto; }
.cm_board_detail2 .board_header { padding: clamp(32px, 2.0833333333vw, 40px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); background: #fff; }
.cm_board_detail2 .board_title_wrap { display: flex; align-items: center; justify-content: space-between; gap: 1.2rem clamp(16px, 1.25vw, 24px); }
.cm_board_detail2 .board_category { display: flex; align-items: center; margin-top: clamp(6.4px, 0.4166666667vw, 8px); margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); gap: 0 clamp(6.4px, 0.4166666667vw, 8px); }
.cm_board_detail2 .board_title { font-weight: bold; font-size: clamp(24px, 1.6666666667vw, 32px); line-height: 1.3; }
.cm_board_detail2 .board_slider { display: flex; align-items: flex-start; margin-top: clamp(32px, 2.0833333333vw, 40px); margin-bottom: clamp(19.2px, 1.25vw, 24px); gap: 0 clamp(32px, 2.0833333333vw, 40px); }
.cm_board_detail2 .board_slider .organ_swiper { flex-shrink: 0; aspect-ratio: 4/3; width: clamp(400px, 26.0416666667vw, 500px); }
.cm_board_detail2 .board_slider .organ_swiper_content { flex: 1; min-width: 0; padding-top: 2.4rem; padding-left: 2.4rem; font-size: clamp(15.2px, 0.9895833333vw, 19px); }
.cm_board_detail2 .board_slider .organ_swiper_content .content_text { position: relative; padding-top: 4.8rem; }
.cm_board_detail2 .board_slider .organ_swiper_content .content_text:before { position: absolute; top: 0; left: 0; width: 2.4rem; height: 2.4rem; background: url(../../images/common/icon06.svg) no-repeat center/contain; content: ""; }
.cm_board_detail2 .board_slider .organ_swiper_content .content_text:after { position: absolute; top: 2.4rem; left: 4rem; width: calc(100% - 5.3rem); height: 1px; background: #74cab4; content: ""; }
.cm_board_detail3 .board_header { display: flex; gap: 0 clamp(20px, 2.0833333333vw, 40px); }
.cm_board_detail3 .board_header_thumb_wrap { display: flex; flex-direction: column; gap: clamp(8px, 0.5208333333vw, 10px) 0; }
.cm_board_detail3 .board_header_thumb { aspect-ratio: 4/3; width: clamp(288px, 18.75vw, 360px); }
.cm_board_detail3 .board_header_thumb_img { width: 100%; height: 100%; object-fit: fill; }
.cm_board_detail3 .board_header_btns { display: flex; gap: 0 clamp(6.4px, 0.4166666667vw, 8px); }
.cm_board_detail3 .board_header_btns > * { flex: 1 1 0; }
.cm_board_detail3 .board_header_content { flex: 1; min-width: 0; padding-top: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_board_detail3 .board_header_category { display: flex; flex-wrap: wrap; align-items: center; margin-bottom: clamp(12.8px, 0.8333333333vw, 16px); gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_board_detail3 .board_header_title { font-weight: bold; font-size: clamp(25.6px, 1.6666666667vw, 32px); line-height: 1.3; }
.cm_board_detail3 .board_header_bottom { margin-top: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_board_detail3 .board_header_info { display: flex; flex-direction: column; gap: clamp(12.8px, 0.8333333333vw, 16px) 0; }
.cm_board_detail3 .board_header_info_location { padding: clamp(12.8px, 0.8333333333vw, 16px) clamp(19.2px, 1.25vw, 24px); border-radius: clamp(9.6px, 0.625vw, 12px); background-color: var(--color-background-gray-light); }
.cm_board_detail3 .board_header_info_location dl { display: flex; align-items: baseline; gap: 0 clamp(19.2px, 1.25vw, 24px); }
.cm_board_detail3 .board_header_info_location dt { flex-shrink: 0; font-weight: bold; }
.cm_board_detail3 .board_header_info_location dd { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); color: var(--color-primary-90); }
.cm_board_detail3 .board_header_info_detail { padding: clamp(20px, 1.6666666667vw, 32px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_board_detail3 .board_header_info_detail .cm_dl1 dl { flex-wrap: wrap; }
.cm_board_detail3 .board_header_info_detail .cm_dl1 dt { width: clamp(80px, 5.2083333333vw, 100px); }
.cm_board_detail3 .board_content { margin-top: clamp(32px, 2.0833333333vw, 40px); }
.cm_board_detail4 .board_header { border-top: 2px solid var(--color-border-gray-darker); border-bottom: 1px solid var(--color-border-gray); }
.cm_board_detail4 .board_title_wrap { padding: clamp(19.2px, 1.6666666667vw, 32px); }
.cm_board_detail4 .board_title { font-weight: bold; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.4; }
.cm_board_detail4 .board_img_area { display: flex; flex-direction: column; align-items: center; padding: clamp(24px, 2.0833333333vw, 40px) clamp(24px, 2.9166666667vw, 56px); gap: clamp(24px, 2.0833333333vw, 40px); border-bottom: 1px solid var(--color-border-gray); }
.cm_board_detail4 .board_swiper_wrap { position: relative; width: 100%; max-width: clamp(672px, 43.75vw, 840px); }
.cm_board_detail4 .board_swiper_wrap .cm_swiper { aspect-ratio: 4/3; overflow: hidden; border-radius: clamp(12px, 0.8333333333vw, 16px); background: var(--color-background-gray-light); }
.cm_board_detail4 .board_swiper_wrap .cm_swiper img { width: 100%; height: 100%; object-fit: cover; }
.cm_board_detail4 .board_swiper_wrap .swiper-button-prev,
.cm_board_detail4 .board_swiper_wrap .swiper-button-next { display: flex; z-index: 10; position: absolute; top: 50%; align-items: center; justify-content: center; width: clamp(32px, 2.0833333333vw, 40px); height: clamp(32px, 2.0833333333vw, 40px); transform: translateY(-50%); border: 1px solid var(--color-border-gray-dark); border-radius: 50%; background: #fff; cursor: pointer; }
.cm_board_detail4 .board_swiper_wrap .swiper-button-prev { left: clamp(-60px, -3.125vw, -16px); }
.cm_board_detail4 .board_swiper_wrap .swiper-button-next { right: clamp(-60px, -3.125vw, -16px); }
.cm_board_detail4 .board_swiper_wrap .swiper-button-prev::after,
.cm_board_detail4 .board_swiper_wrap .swiper-button-next::after { display: block; width: clamp(16px, 1.0416666667vw, 20px); height: clamp(16px, 1.0416666667vw, 20px); background: no-repeat center/contain; content: ""; }
.cm_board_detail4 .board_swiper_wrap .swiper-button-prev::after { background-image: url(../../images/common/icon_arrow_left.svg); }
.cm_board_detail4 .board_swiper_wrap .swiper-button-next::after { background-image: url(../../images/common/icon_arrow_right.svg); }

/* 공통 박스 */
[class*=cm_box] { padding: calc(var(--padding-size)); border-radius: calc(var(--border-radius)); }
.cm_box1 { --padding-size: clamp(32px, 2.0833333333vw, 40px); --border-radius: clamp(9.6px, 0.625vw, 12px); border: 1px solid var(--color-border-gray); background: #fff; }
.cm_box1.size_md { --padding-size: clamp(19.2px, 1.25vw, 24px); }
.cm_box1.size_md2 { padding: clamp(19.2px, 1.25vw, 24px) clamp(25.6px, 1.6666666667vw, 32px); }
.cm_box2 { --padding-size: clamp(12.8px, 0.8333333333vw, 16px); --border-radius: clamp(9.6px, 0.625vw, 12px); background-color: var(--color-background-gray-light); }
.cm_box2.border { border: 1px solid var(--color-border-gray); }
.cm_box2.size_sm { --padding-size: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_box2.size_md { --padding-size: clamp(19.2px, 1.25vw, 24px); }
.cm_box2.size_lg { --padding-size: clamp(25.6px, 1.6666666667vw, 32px); }
.cm_box3 { padding: clamp(15px, 1.25vw, 24px) clamp(15px, 1.6666666667vw, 32px); border: 1px solid var(--color-primary-5); border-radius: clamp(9.6px, 0.625vw, 12px); background: var(--color-primary-0); }
.cm_box4 { padding: clamp(15px, 1.25vw, 24px) clamp(15px, 1.6666666667vw, 32px); border-radius: clamp(9.6px, 0.625vw, 12px); background: var(--color-primary-5); }
.cm_box5 { display: flex; align-items: center; justify-content: space-between; padding: clamp(16px, 1.25vw, 24px); gap: 0.8rem; border-radius: 1.2rem; background: #f4f5f6; }
.cm_box5 .left_content { display: flex; flex: 1 1 0; flex-wrap: wrap; align-items: center; min-width: 0; gap: 1.2rem; }
.cm_box5 .left_content .box_title { display: flex; align-items: center; gap: 1.6rem; font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_box5 .left_content .icon { display: inline-flex; align-items: center; justify-content: center; width: clamp(28px, 2.0833333333vw, 40px); height: clamp(28px, 2.0833333333vw, 40px); border-radius: 50%; background: #fff; }
.cm_box5 .left_content a:hover span { text-decoration: underline; }
.cm_box5 .right_side .cm_btn { white-space: nowrap; }
.cm_box6 { padding: clamp(15px, 1.25vw, 24px); border: 1px solid var(--color-point-2-40); border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-color: var(--color-point-2-10); }
.cm_box7 { padding: clamp(15px, 1.25vw, 24px); border: 1px solid var(--color-border-primary); border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-color: var(--color-background-primary-lightest); }

/* 커스텀 박스 */
.guide_box { padding: 0; overflow: hidden; }
.guide_box .guide_box_inner { padding: clamp(20px, 1.25vw, 24px) clamp(20px, 1.6666666667vw, 32px); }
.guide_box .box_guide_area { padding: clamp(8px, 0.8333333333vw, 16px) clamp(20px, 1.6666666667vw, 32px); background: #f4f5f6; }
.guide_box .box_guide_area .cm_validation.info2 .text { color: var(--color-primary-90); }
.cm_confirm_box { padding: clamp(40px, 3.3333333333vw, 64px) clamp(16px, 1.25vw, 24px); border-radius: clamp(8px, 0.625vw, 12px); background: var(--color-background-gray-light); text-align: center; }
.cm_confirm_box .box_icon { display: inline-flex; align-items: center; justify-content: center; width: clamp(64px, 4.1666666667vw, 80px); height: clamp(64px, 4.1666666667vw, 80px); margin-bottom: clamp(12px, 0.8333333333vw, 16px); border-radius: 50%; background: #fff; }
.cm_confirm_box .box_icon img { width: clamp(28px, 2.0833333333vw, 40px); }
.cm_confirm_box .box_text { font-weight: 700; font-size: clamp(19px, 1.25vw, 24px); }
.cm_confirm_box .box_sub_text { margin-top: clamp(8px, 0.8333333333vw, 16px); }
.cm_confirm_box .btns_area { display: flex; justify-content: center; margin-top: clamp(24px, 2.0833333333vw, 40px); gap: clamp(6px, 0.5208333333vw, 10px); }
.cm_notice_box { position: relative; padding: clamp(25.6px, 1.6666666667vw, 32px) clamp(32px, 2.0833333333vw, 40px); padding-left: clamp(144px, 9.375vw, 180px); border-radius: clamp(9.6px, 0.625vw, 12px); background-color: var(--color-background-gray-light); }
.cm_notice_box:before { display: block; position: absolute; bottom: 0; left: clamp(19.2px, 1.25vw, 24px); aspect-ratio: 78/67; width: clamp(124.8px, 8.125vw, 156px); background-image: url(../../images/common/icon_person.png); background-position: center; background-size: contain; background-repeat: no-repeat; content: ""; }
.cm_notice_box .notice_desc { font-weight: bold; font-size: clamp(19.2px, 1.25vw, 24px); }
.cm_notice_box.icon2:before { background-image: url(../../images/common/icon_person2.png); }
.cm_notice_box.icon3:before { background-image: url(../../images/common/icon_person3.png); }
.cm_notice_box.icon4:before { background-image: url(../../images/common/icon_person4.png); }
.cm_title_box .cm_dash_list1 .dash1_item { flex-shrink: unset; }
.cm_title_box .cm_dash_list1 .dash1_item .d-flex { align-items: center; gap: 1.2rem; }
.cm_middle_contact_box { display: flex; flex-wrap: wrap; align-items: center; padding: clamp(12.8px, 0.8333333333vw, 16px); gap: clamp(12.8px, 0.8333333333vw, 16px); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: #f9f9f9; }
.cm_middle_contact_box .contact_label { display: flex; position: relative; align-items: center; gap: clamp(9.6px, 0.625vw, 12px); }
.cm_middle_contact_box .contact_icon { display: flex; position: relative; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(32px, 2.0833333333vw, 40px); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: #425de8; }
.cm_middle_contact_box .contact_icon.icon1:before { background: none; background-color: #fff; content: ""; -webkit-mask-image: url("../../images/common/icon_call.svg"); mask-image: url("../../images/common/icon_call.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; aspect-ratio: 1/1; width: clamp(19.2px, 1.25vw, 24px); mask-position: center; }
.cm_middle_contact_box .contact_title { color: #000; font-weight: 700; }
.cm_middle_contact_box .contact_content { color: #000; }

/* 공통 버튼 */
button { position: relative; }
.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: 0 clamp(8px, 0.5208333333vw, 10px); }
.cm_btn { display: inline-flex; align-items: center; justify-content: center; height: clamp(40px, 2.5vw, 48px); padding: 0 clamp(12.8px, 0.8333333333vw, 16px); border: 1px solid transparent; border-radius: clamp(4px, 0.3125vw, 6px); color: var(--color-text-basic); font-size: var(--font_size17); line-height: 1.5; vertical-align: middle; word-break: keep-all; transition: background 0.15s, border 0.15s; }
.cm_btn:not(.hover_none):hover { background: #f4f5f6; }
.cm_btn:disabled { border-color: var(--color-button-disabled) !important; background: var(--color-button-disabled) !important; color: var(--color-text-disabled) !important; }
.cm_btn:disabled .cm_icon { filter: grayscale(1); }
.cm_btn.btn_notext:disabled { border-color: transparent !important; background: transparent !important; }
.cm_btn.size_lg { height: clamp(48px, 2.9166666667vw, 56px); padding: 0 clamp(16px, 1.0416666667vw, 20px); border-radius: clamp(6.4px, 0.4166666667vw, 8px); font-size: clamp(17px, 0.9895833333vw, 19px); }
.cm_btn.size_lg_board { min-width: clamp(72px, 4.6875vw, 90px); height: clamp(48px, 2.9166666667vw, 56px); padding: 0 clamp(16px, 1.0416666667vw, 20px); border-radius: clamp(6.4px, 0.4166666667vw, 8px); font-size: clamp(17px, 0.9895833333vw, 19px); }
.cm_btn.size_md { height: clamp(40px, 2.5vw, 48px); padding: 0 clamp(12.8px, 0.8333333333vw, 16px); border-radius: clamp(4.8px, 0.3125vw, 6px); font-size: clamp(16px, 0.8854166667vw, 17px); }
.cm_btn.size_sm { height: clamp(32px, 2.0833333333vw, 40px); 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 { height: clamp(30px, 1.6666666667vw, 32px); padding: 0 clamp(8px, 0.5208333333vw, 10px); border-radius: clamp(3.2px, 0.2083333333vw, 4px); font-size: clamp(14px, 0.78125vw, 15px); }
.cm_btn.radius0 { border-radius: 0 !important; }
.cm_btn.radius1000 { border-radius: 1000px !important; }
.cm_btn.btn_search { border-color: var(--color-gray-70); background: var(--color-gray-70); color: #fff; }
.cm_btn.btn_search:not(.hover_none):hover { border-color: var(--color-gray-80); background: var(--color-gray-80); color: #fff; }
.cm_btn.btn_search:disabled { border-color: var(--color-gray-70) !important; background: var(--color-gray-70) !important; color: #fff !important; }
.cm_btn.btn_icon { border-color: var(--color-border-gray); background: #fff; }
.cm_btn.btn_icon:not(.hover_none):hover { background: var(--color-button-tertiary-hover); }
.cm_btn.btn_icon.size_lg { width: clamp(48px, 2.9166666667vw, 56px); height: clamp(48px, 2.9166666667vw, 56px); padding: clamp(10px, 0.8333333333vw, 16px); border-color: var(--color-button-tertiary-border); }
.cm_btn.btn_icon.size_lg .cm_icon:before { width: clamp(20px, 1.25vw, 24px); height: clamp(20px, 1.25vw, 24px); }
.cm_btn.btn_icon.size_md { width: clamp(40px, 2.5vw, 48px); height: clamp(40px, 2.5vw, 48px); padding: 0 clamp(8px, 0.625vw, 12px); }
.cm_btn.btn_icon.size_md .cm_icon:before { width: clamp(20px, 1.25vw, 24px); height: clamp(20px, 1.25vw, 24px); }
.cm_btn.btn_icon.size_sm { width: clamp(32px, 2.0833333333vw, 40px); height: clamp(32px, 2.0833333333vw, 40px); padding: clamp(6px, 0.5208333333vw, 10px); }
.cm_btn.btn_icon.size_sm .cm_icon:before { width: clamp(16px, 1.0416666667vw, 20px); height: clamp(16px, 1.0416666667vw, 20px); }
.cm_btn.btn_icon.size_xs { width: clamp(24px, 1.6666666667vw, 32px); height: clamp(24px, 1.6666666667vw, 32px); padding: clamp(6px, 0.4166666667vw, 8px); }
.cm_btn.btn_icon.size_xs .cm_icon:before { width: clamp(12px, 0.8333333333vw, 16px); height: clamp(12px, 0.8333333333vw, 16px); }
.cm_btn.radius-side-full { border-radius: 100px; }
.cm_btn.radius-full { border-radius: 50%; }
.cm_btn.variant1 { border-color: var(--color-button-primary); background: var(--color-button-primary); color: #fff; }
.cm_btn.variant1:not(.hover_none):hover { border-color: var(--color-button-primary-hover); background: var(--color-button-primary-hover); color: #fff; }
.cm_btn.variant2 { border-color: var(--color-button-secondary-border); background: var(--color-button-secondary); color: var(--color-text-primary); }
.cm_btn.variant2:not(.hover_none):hover { border-color: var(--color-button-secondary-border); background: var(--color-button-secondary-hover); color: var(--color-text-primary); }
.cm_btn.variant3 { border-color: var(--color-button-tertiary-border); background: var(--color-button-tertiary); color: var(--color-text-basic); }
.cm_btn.variant3:not(.hover_none):hover { border-color: var(--color-button-tertiary-border); background: var(--color-button-tertiary-hover); color: var(--color-text-basic); }
.cm_btn.variant4 { border-color: #6f86e6; background: #e9ecff; color: #2e3f91; }
.cm_btn.variant4:not(.hover_none):hover { background: #f3f5ff; }
.cm_btn.variant5 { border-color: #6f86e6; background: #fff; color: #2e3f91; }
.cm_btn.variant5:not(.hover_none):hover { background: #e9ecff; }
.cm_btn.variant6 { border-color: var(--color-point-80); background: var(--color-point-80); color: #fff; }
.cm_btn.variant6:not(.hover_none):hover { background: var(--color-point-90); }
.cm_btn.variant7 { border-color: var(--color-primary-80); color: var(--color-primary-80); }
.cm_btn.variant7:not(.hover_none):hover { background: var(--color-background-primary-lightest); }
.cm_btn.variant8 { border-color: #526ad9; background-color: #526ad9; color: #fff; }
.cm_btn.variant8:not(.hover_none):hover { background-color: #425ac2; }
.cm_btn.variant9 { border-color: #a9dbd9; background-color: #c1eeec; color: #00413d; }
.cm_btn.variant9:not(.hover_none):hover { border-color: #97d0ce; background-color: #a3e4e1; }
.btn_reset { position: relative; width: clamp(40px, 2.5vw, 48px); height: clamp(40px, 2.5vw, 48px); border: 1px solid var(--color-border-gray); border-radius: 0.6rem; background: url(../../images/common/icon_rotate.svg) no-repeat center/clamp(18px, 1.25vw, 24px); background-color: #fff; }
.btn_like { display: inline-block; width: clamp(38.4px, 2.5vw, 48px); height: clamp(38.4px, 2.5vw, 48px); border: 1px solid var(--color-border-gray); border-radius: 0.8rem; background: #fff url(../../images/common/icon_wish.svg) no-repeat center/clamp(20px, 1.25vw, 24px); vertical-align: middle; }
.btn_like:hover { background-color: var(--color-button-tertiary-hover); }
.btn_like.active { background-image: url(../../images/common/icon_wish_fill.svg); }
.btn_like2.active .cm_icon.wish::before { background-image: url(../../images/common/icon_wish_fill.svg); }
.btn_like3 { width: clamp(32px, 2.0833333333vw, 40px); height: clamp(32px, 2.0833333333vw, 40px); background: url(../../images/common/icon_wish.svg) no-repeat center/clamp(20px, 1.25vw, 24px); }
.btn_like3.active { background-image: url(../../images/common/icon_wish_fill.svg); }
.btn_more { display: flex; align-items: center; justify-content: center; width: clamp(43.2px, 2.8125vw, 54px); height: clamp(43.2px, 2.8125vw, 54px); border-radius: 99px 99px 0 99px; background: var(--color-primary-5) url(../../images/common/icon_plus_bold_primary.svg) no-repeat center/clamp(19.2px, 1.25vw, 24px); }
.btn_more.active { background: var(--color-primary-5) url(../../images/common/icon_minus_bold_primary.svg) no-repeat center/clamp(19.2px, 1.25vw, 24px); }
.cm_btn.naver { background-color: #00c73c; color: #333; }
.cm_btn.kakao { background-color: #fae100; color: #3c1e1e; }
.cm_btn.naver_comp,
.cm_btn.kakao_comp { border-color: var(--color-border-gray); background-color: var(--color-background-gray-light); color: var(--color-text-basic); }
.cm_btn.naver_comp .cm_icon.naver:before { background: none; background-color: #00c73c; -webkit-mask-image: url("../../images/common/icon_naver.svg"); mask-image: url("../../images/common/icon_naver.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_btn.type_text { transition: opacity 0.15s; }
.cm_btn.type_text:hover { background: transparent; opacity: 0.9; }

/* 공통 달력 */
.cm_calendar .select_month { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.6rem; font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); }
.cm_calendar .select_month .calendar_navi { display: flex; align-items: center; justify-content: center; width: clamp(20px, 1.25vw, 24px); height: clamp(20px, 1.25vw, 24px); background-position: center; background-size: contain; background-repeat: no-repeat; }
.cm_calendar .select_month .calendar_navi.back { background-image: url(../../images/common/icon_arrow_back.svg); }
.cm_calendar .select_month .calendar_navi.next { background-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_calendar .calendar thead th { height: 4rem; background: #f4f5f6; font-weight: 700; font-size: 1.5rem; }
.cm_calendar .calendar thead th:first-child { border-radius: 0.6rem 0 0 0.6rem; }
.cm_calendar .calendar thead th:last-child { border-radius: 0 0.6rem 0.6rem 0; }
.cm_calendar .calendar thead th.sun { color: #e52727; }
.cm_calendar .calendar thead th.sat { color: #214ee2; }
.cm_calendar .calendar tbody td { height: 5.6rem; padding: 0 0.8rem; font-size: 15px; text-align: center; }
.cm_calendar .calendar tbody td button { display: flex; flex-direction: column; align-items: center; width: 100%; height: 100%; padding: 6px 0; border-radius: 0.8rem; }
.cm_calendar .calendar tbody td .event_dot { display: block; width: 2rem; height: 2rem; background: url(../../images/common/icon04.svg) no-repeat center/contain; }
.cm_calendar .calendar tbody .outside button,
.cm_calendar .calendar tbody td:first-child button,
.cm_calendar .calendar tbody td:last-child button { color: #666; }
.cm_calendar .calendar tbody .today button { border: 2px solid var(--color-primary-80); }
.cm_calendar .calendar tbody .selected.selected button { background: var(--color-primary-80); color: #fff; font-weight: 600; }
.cm_calendar .calendar tbody .selected.selected .event_dot { background-image: url(../../images/common/icon_checked_primary_w.svg); }
.cm_calendar2 { display: flex; gap: 24px; }
.cm_calendar2 .calendar_area { flex: 1 1 0; min-width: 0; }
.cm_calendar2 .calendar_head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.6rem; }
.cm_calendar2 .select_month { display: flex; align-items: center; justify-content: space-between; gap: 0 clamp(8px, 0.8333333333vw, 16px); font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); }
.cm_calendar2 .select_month .calendar_navi { display: flex; align-items: center; justify-content: center; width: clamp(20px, 1.25vw, 24px); height: clamp(20px, 1.25vw, 24px); background-position: center; background-size: contain; background-repeat: no-repeat; }
.cm_calendar2 .select_month .calendar_navi.back { background-image: url(../../images/common/icon_arrow_back.svg); }
.cm_calendar2 .select_month .calendar_navi.next { background-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_calendar2 .select_month_list { display: flex; }
.cm_calendar2 .select_month_list .month_item ~ .month_item { position: relative; margin-left: clamp(8px, 0.8333333333vw, 16px); padding-left: clamp(9px, 0.8854166667vw, 17px); }
.cm_calendar2 .select_month_list .month_item ~ .month_item:before { position: absolute; top: 50%; left: 0; width: 1px; height: 16px; transform: translateY(-50%); background: #ccc; content: ""; }
.cm_calendar2 .select_month_list .month_item { color: #666; font-size: clamp(13px, 0.8854166667vw, 17px); }
.cm_calendar2 .select_month_list .month_item.active { color: var(--color-primary-80); font-weight: 700; }
.cm_calendar2 .calendar thead tr th { height: clamp(32px, 2.5vw, 48px); background: #f4f5f6; font-size: clamp(15px, 0.9895833333vw, 19px); }
.cm_calendar2 .calendar thead tr th.sun { border-radius: clamp(6px, 0.4166666667vw, 8px) 0 0 clamp(6px, 0.4166666667vw, 8px); color: #e52727; }
.cm_calendar2 .calendar thead tr th.sat { border-radius: 0 clamp(6px, 0.4166666667vw, 8px) clamp(6px, 0.4166666667vw, 8px) 0; color: #214ee2; }
.cm_calendar2 .calendar tbody tr td { position: relative; height: 13.2rem; padding: 1.6rem 1.2rem; border-bottom: 1px solid #ccc; font-size: clamp(13px, 0.8854166667vw, 17px); text-align: center; vertical-align: top; }
.cm_calendar2 .calendar tbody tr td.outside,
.cm_calendar2 .calendar tbody tr td.sat,
.cm_calendar2 .calendar tbody tr td.sun { color: #666; }
.cm_calendar2 .calendar tbody tr td.today span { display: inline-flex; align-items: center; justify-content: center; width: 25px; height: 25px; border-radius: 50%; background: var(--color-primary-80); color: #fff; font-weight: 600; }
.cm_calendar2 .calendar tbody tr td.selected_dd { transform: translateY(-1px); border: 1px solid var(--color-primary-60); background: var(--color-background-primary-lightest); color: var(--color-primary-80); font-weight: 600; }
.cm_calendar2 .calendar tbody tr td.selected_dd > .day_btn { border-top: 1px solid var(--color-primary-60); }
.cm_calendar2 .calendar .day_btn { display: flex; position: absolute; top: 0; left: 0; align-items: start; justify-content: center; width: 100%; height: 100%; padding: 1.6rem 1.2rem; }
.cm_calendar2 .calendar .day_event_list { display: flex; z-index: 1; position: relative; flex-direction: column; margin-top: 4.8rem; gap: 4px; }
.cm_calendar2 .calendar .day_event_list .day_event_item { position: relative; padding-left: 9px; color: #333; font-size: clamp(12px, 0.78125vw, 15px); text-align: left; }
.cm_calendar2 .calendar .day_event_list .day_event_item:before { position: absolute; top: 50%; left: 0; width: 5px; height: 5px; transform: translateY(-50%); border-radius: 50%; background: var(--color-border-primary); content: ""; }
.cm_calendar2 .content_area { width: 294px; }
.cm_calendar2 .calendar2_content_box { padding: 16px; border: 1px solid #ccc; border-radius: 1.2rem; }
.cm_calendar2 .calendar2_content_box .content_area_box_head { display: flex; align-items: center; height: clamp(32px, 2.0833333333vw, 40px); margin-bottom: clamp(12px, 0.8333333333vw, 16px); padding: 0 clamp(12px, 0.8333333333vw, 16px); border-radius: 0.8rem; background: #f4f5f6; }
.cm_calendar2 .calendar2_content_box .content_area_event_list { display: flex; flex-direction: column; max-height: 670px; overflow: auto; gap: 0 clamp(8px, 0.8333333333vw, 16px); }
.cm_calendar2 .calendar2_content_box .content_area_event_list .content_list_item ~ .content_list_item { margin-top: clamp(12px, 0.8333333333vw, 16px); }
.cm_calendar2 .calendar2_content_box .content_area_event_list .content_item_link { display: block; position: relative; padding-bottom: clamp(8px, 0.8333333333vw, 16px); border-bottom: 1px solid #eee; }
.cm_calendar2 .calendar2_content_box .content_area_event_list .content_item_link:after { position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: var(--color-primary-80); content: ""; opacity: 0; transition: opacity 0.15s; }
.cm_calendar2 .calendar2_content_box .content_area_event_list .item_title { margin-bottom: clamp(8px, 0.625vw, 12px); font-weight: 700; font-size: clamp(15px, 0.9895833333vw, 19px); transition: color 0.15s; }
.cm_calendar2 .calendar2_content_box .content_area_event_list .item_info { display: flex; flex-direction: column; gap: 8px; font-size: clamp(13px, 0.78125vw, 15px); }
.cm_calendar2 .calendar2_content_box .content_area_event_list .content_item_link:hover:after { opacity: 1; }
.cm_calendar2 .calendar2_content_box .content_area_event_list .content_item_link:hover .item_title { color: var(--color-primary-80); }
.cm_calendar3 { --legend-a: #ff7251; --legend-b: #5fd996; --legend-c: #715bf9; --legend-d: #0b78cb; }
.cm_calendar3 .calendar3_top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; margin-bottom: clamp(16px, 1.25vw, 24px); gap: clamp(12px, 0.8333333333vw, 16px); }
.cm_calendar3 .calendar3_year { display: flex; align-items: center; gap: clamp(8px, 0.625vw, 12px); }
.cm_calendar3 .calendar3_year .year_label { color: #191919; font-weight: 700; font-size: clamp(22px, 1.4583333333vw, 28px); line-height: 1.4; letter-spacing: 1px; }
.cm_calendar3 .calendar3_year .year_navi { display: inline-flex; align-items: center; justify-content: center; width: clamp(22px, 1.25vw, 24px); height: clamp(22px, 1.25vw, 24px); background-position: center; background-size: contain; background-repeat: no-repeat; }
.cm_calendar3 .calendar3_year .year_navi.prev { background-image: url(../../images/common/icon_arrow_back.svg); }
.cm_calendar3 .calendar3_year .year_navi.next { background-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_calendar3 .calendar3_year .year_navi:hover { opacity: 0.7; }
.cm_calendar3 .calendar3_months { display: flex; flex-wrap: wrap; gap: clamp(6px, 0.4166666667vw, 8px); }
.cm_calendar3 .calendar3_months .month_btn { display: inline-flex; align-items: center; justify-content: center; min-width: clamp(40px, 2.5vw, 48px); height: clamp(32px, 1.875vw, 36px); padding: 0 clamp(10px, 0.7291666667vw, 14px); border: 1px solid #ccc; border-radius: 1000px; background: #fff; color: #333; font-size: clamp(13px, 0.78125vw, 15px); line-height: 1; transition: background-color 0.15s, color 0.15s, border-color 0.15s; }
.cm_calendar3 .calendar3_months .month_btn:hover { border-color: var(--reserve-primary); color: var(--reserve-primary); }
.cm_calendar3 .calendar3_months .month_btn.active { position: relative; padding-left: clamp(22px, 1.4583333333vw, 28px); border-color: var(--reserve-primary); background: var(--reserve-primary); color: #fff; font-weight: 700; }
.cm_calendar3 .calendar3_months .month_btn.active:before { position: absolute; top: 50%; left: clamp(8px, 0.5208333333vw, 10px); width: clamp(12px, 0.7291666667vw, 14px); height: clamp(12px, 0.7291666667vw, 14px); transform: translateY(-50%); background: url(../../images/common/icon_check_w.svg) no-repeat center/contain; content: ""; }
.cm_calendar3 .calendar3_body { padding: clamp(16px, 1.25vw, 24px); border: 1px solid #eee; border-radius: clamp(12px, 0.8333333333vw, 16px); background: #fff; }
.cm_calendar3 .calendar3_table { width: 100%; border-collapse: separate; border-spacing: clamp(4px, 0.4166666667vw, 8px); table-layout: fixed; }
.cm_calendar3 .calendar3_table thead th { height: clamp(32px, 2.0833333333vw, 40px); padding: 0; padding-left: clamp(4px, 0.4166666667vw, 8px); background: transparent; color: #333; font-weight: 700; font-size: clamp(13px, 0.78125vw, 15px); text-align: left; }
.cm_calendar3 .calendar3_table thead th.sun { color: #e52727; }
.cm_calendar3 .calendar3_table thead th.sat { color: #214ee2; }
.cm_calendar3 .calendar3_table tbody td { height: clamp(80px, 6.25vw, 120px); padding: 0; }
.cm_calendar3 .calendar3_table tbody td .day_cell { display: flex; position: relative; flex-direction: column; align-items: stretch; justify-content: flex-start; width: 100%; height: 100%; padding: clamp(8px, 0.625vw, 12px) clamp(6px, 0.5208333333vw, 10px); border-radius: clamp(6px, 0.4166666667vw, 8px); background: #fff; color: #333; font-size: clamp(13px, 0.78125vw, 15px); text-align: left; transition: background-color 0.15s, border-color 0.15s; }
.cm_calendar3 .calendar3_table tbody td .day_cell:not(.is_disabled):hover:before { position: absolute; top: 0; right: 0; bottom: 0; left: 0; border: 2px solid var(--reserve-calendar3-select); border-radius: clamp(6px, 0.4166666667vw, 8px); content: ""; pointer-events: none; }
.cm_calendar3 .calendar3_table tbody td .day_cell .day_num { display: block; color: #333; font-weight: 700; font-size: clamp(13px, 0.78125vw, 15px); line-height: 1.2; }
.cm_calendar3 .calendar3_table tbody td.sun .day_cell .day_num { color: #e52727; }
.cm_calendar3 .calendar3_table tbody td.sat .day_cell .day_num { color: #214ee2; }
.cm_calendar3 .calendar3_table tbody td .day_cell.is_disabled { background: #f4f5f6; cursor: default; }
.cm_calendar3 .calendar3_table tbody td .day_cell.is_disabled .day_num { color: #b2b2b2; }
.cm_calendar3 .calendar3_table tbody td.sun .day_cell.is_disabled .day_num,
.cm_calendar3 .calendar3_table tbody td.sat .day_cell.is_disabled .day_num { color: #b2b2b2; }
.cm_calendar3 .calendar3_table tbody td .day_cell.has_data { background: var(--reserve-calendar3-select-bg); }
.cm_calendar3 .calendar3_table tbody td .day_cell.has_data:hover { background: color-mix(in srgb, var(--reserve-calendar3-select-bg) 70%, #fff); }
.cm_calendar3 .calendar3_table tbody td .day_cell .day_event_list { display: flex; flex-direction: column; margin-top: clamp(4px, 0.4166666667vw, 8px); gap: clamp(2px, 0.2083333333vw, 4px); }
.cm_calendar3 .calendar3_table tbody td .day_cell .day_event_item { display: flex; position: relative; align-items: baseline; padding-left: clamp(10px, 0.625vw, 12px); gap: clamp(3.2px, 0.2083333333vw, 4px); color: #333; font-size: clamp(12px, 0.7291666667vw, 14px); line-height: 1.4; }
.cm_calendar3 .calendar3_table tbody td .day_cell .day_event_item:before { display: block; flex-shrink: 0; width: clamp(5px, 0.3125vw, 6px); height: clamp(5px, 0.3125vw, 6px); margin-top: clamp(4.8px, 0.3125vw, 6px); border-radius: 50%; content: ""; }
.cm_calendar3 .day_event_item.legend-a:before { background: var(--legend-a); }
.cm_calendar3 .day_event_item.legend-b:before { background: var(--legend-b); }
.cm_calendar3 .day_event_item.legend-c:before { background: var(--legend-c); }
.cm_calendar3 .day_event_item.legend-d:before { background: var(--legend-d); }
.cm_calendar3_modal_helper { display: none; }

/* 공통 컬러 */
.cm_color.text-secondary { color: var(--text-secondary) !important; }
.cm_color.danger-5 { color: var(--color-danger-5); }
.cm_color.danger-10 { color: var(--color-danger-10); }
.cm_color.danger-20 { color: var(--color-danger-20); }
.cm_color.danger-30 { color: var(--color-danger-30); }
.cm_color.danger-40 { color: var(--color-danger-40); }
.cm_color.danger-50 { color: var(--color-danger-50); }
.cm_color.danger-60 { color: var(--color-danger-60); }
.cm_color.danger-70 { color: var(--color-danger-70); }
.cm_color.danger-80 { color: var(--color-danger-80); }
.cm_color.danger-90 { color: var(--color-danger-90); }
.cm_color.danger-95 { color: var(--color-danger-95); }
.cm_color.gray-0 { color: var(--color-gray-0); }
.cm_color.gray-5 { color: var(--color-gray-5); }
.cm_color.gray-10 { color: var(--color-gray-10); }
.cm_color.gray-20 { color: var(--color-gray-20); }
.cm_color.gray-30 { color: var(--color-gray-30); }
.cm_color.gray-40 { color: var(--color-gray-40); }
.cm_color.gray-50 { color: var(--color-gray-50); }
.cm_color.gray-60 { color: var(--color-gray-60); }
.cm_color.gray-70 { color: var(--color-gray-70); }
.cm_color.gray-80 { color: var(--color-gray-80); }
.cm_color.gray-90 { color: var(--color-gray-90); }
.cm_color.gray-95 { color: var(--color-gray-95); }
.cm_color.information-5 { color: var(--color-information-5); }
.cm_color.information-10 { color: var(--color-information-10); }
.cm_color.information-20 { color: var(--color-information-20); }
.cm_color.information-30 { color: var(--color-information-30); }
.cm_color.information-40 { color: var(--color-information-40); }
.cm_color.information-50 { color: var(--color-information-50); }
.cm_color.information-60 { color: var(--color-information-60); }
.cm_color.information-70 { color: var(--color-information-70); }
.cm_color.information-80 { color: var(--color-information-80); }
.cm_color.information-90 { color: var(--color-information-90); }
.cm_color.information-95 { color: var(--color-information-95); }
.cm_color.point-5 { color: var(--color-point-5); }
.cm_color.point-10 { color: var(--color-point-10); }
.cm_color.point-20 { color: var(--color-point-20); }
.cm_color.point-30 { color: var(--color-point-30); }
.cm_color.point-40 { color: var(--color-point-40); }
.cm_color.point-50 { color: var(--color-point-50); }
.cm_color.point-60 { color: var(--color-point-60); }
.cm_color.point-70 { color: var(--color-point-70); }
.cm_color.point-80 { color: var(--color-point-80); }
.cm_color.point-90 { color: var(--color-point-90); }
.cm_color.point-95 { color: var(--color-point-95); }
.cm_color.point2-0 { color: var(--color-point-2-0); }
.cm_color.point2-5 { color: var(--color-point-2-5); }
.cm_color.point2-10 { color: var(--color-point-2-10); }
.cm_color.point2-20 { color: var(--color-point-2-20); }
.cm_color.point2-30 { color: var(--color-point-2-30); }
.cm_color.point2-40 { color: var(--color-point-2-40); }
.cm_color.point2-50 { color: var(--color-point-2-50); }
.cm_color.point2-60 { color: var(--color-point-2-60); }
.cm_color.point2-70 { color: var(--color-point-2-70); }
.cm_color.point2-80 { color: var(--color-point-2-80); }
.cm_color.point2-90 { color: var(--color-point-2-90); }
.cm_color.point2-95 { color: var(--color-point-2-95); }
.cm_color.primary-0 { color: var(--color-primary-0); }
.cm_color.primary-5 { color: var(--color-primary-5); }
.cm_color.primary-10 { color: var(--color-primary-10); }
.cm_color.primary-20 { color: var(--color-primary-20); }
.cm_color.primary-30 { color: var(--color-primary-30); }
.cm_color.primary-40 { color: var(--color-primary-40); }
.cm_color.primary-50 { color: var(--color-primary-50); }
.cm_color.primary-60 { color: var(--color-primary-60); }
.cm_color.primary-70 { color: var(--color-primary-70); }
.cm_color.primary-80 { color: var(--color-primary-80); }
.cm_color.primary-90 { color: var(--color-primary-90); }
.cm_color.primary-100 { color: var(--color-primary-100); }
.cm_color.secondary-0 { color: var(--color-secondary-0); }
.cm_color.secondary-5 { color: var(--color-secondary-5); }
.cm_color.secondary-10 { color: var(--color-secondary-10); }
.cm_color.secondary-20 { color: var(--color-secondary-20); }
.cm_color.secondary-30 { color: var(--color-secondary-30); }
.cm_color.secondary-40 { color: var(--color-secondary-40); }
.cm_color.secondary-50 { color: var(--color-secondary-50); }
.cm_color.secondary-60 { color: var(--color-secondary-60); }
.cm_color.secondary-70 { color: var(--color-secondary-70); }
.cm_color.secondary-80 { color: var(--color-secondary-80); }
.cm_color.secondary-90 { color: var(--color-secondary-90); }
.cm_color.secondary-100 { color: var(--color-secondary-100); }
.cm_color.success-5 { color: var(--color-success-5); }
.cm_color.success-10 { color: var(--color-success-10); }
.cm_color.success-20 { color: var(--color-success-20); }
.cm_color.success-30 { color: var(--color-success-30); }
.cm_color.success-40 { color: var(--color-success-40); }
.cm_color.success-50 { color: var(--color-success-50); }
.cm_color.success-60 { color: var(--color-success-60); }
.cm_color.success-70 { color: var(--color-success-70); }
.cm_color.success-80 { color: var(--color-success-80); }
.cm_color.success-90 { color: var(--color-success-90); }
.cm_color.success-95 { color: var(--color-success-95); }
.cm_color.warning-5 { color: var(--color-warning-5); }
.cm_color.warning-10 { color: var(--color-warning-10); }
.cm_color.warning-20 { color: var(--color-warning-20); }
.cm_color.warning-30 { color: var(--color-warning-30); }
.cm_color.warning-40 { color: var(--color-warning-40); }
.cm_color.warning-50 { color: var(--color-warning-50); }
.cm_color.warning-60 { color: var(--color-warning-60); }
.cm_color.warning-70 { color: var(--color-warning-70); }
.cm_color.warning-80 { color: var(--color-warning-80); }
.cm_color.warning-90 { color: var(--color-warning-90); }
.cm_color.warning-95 { color: var(--color-warning-95); }
.cm_color.button-primary { color: var(--color-button-primary) !important; }

/* 공통 댓글 */
.cm_comment { margin-top: clamp(24px, 1.6666666667vw, 32px); padding: clamp(19.2px, 1.25vw, 24px) clamp(20px, 2.0833333333vw, 40px); padding-bottom: clamp(32px, 2.0833333333vw, 40px); border-radius: clamp(9.6px, 0.625vw, 12px); background-color: var(--color-background-gray-light); }
.cm_comment .comment_item { margin-bottom: clamp(16px, 1.0416666667vw, 20px); }
.cm_comment .comment_item:last-child { margin-bottom: 0; }
.cm_comment .comment_body { position: relative; }
.cm_comment .comment_header { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: clamp(6px, 0.4166666667vw, 8px); }
.cm_comment .comment_author { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); font-weight: bold; font-size: clamp(14px, 0.78125vw, 15px); }
.cm_comment .comment_author .cm_badge { font-weight: 400; font-size: 13px; }
.cm_comment .comment_actions { display: flex; align-items: center; gap: clamp(4px, 0.4166666667vw, 8px); }
.cm_comment .comment_btn_heart { border: 1px solid var(--color-border-gray); border-radius: 1000px; background-size: 52%; background-color: #fff; }
.cm_comment .comment_btn_more { display: inline-flex; align-items: center; justify-content: center; width: clamp(28px, 1.6666666667vw, 32px); height: clamp(28px, 1.6666666667vw, 32px); transition: opacity 0.2s ease; }
.cm_comment .comment_btn_more .icon_dot { display: block; width: clamp(19.2px, 1.25vw, 24px); height: clamp(19.2px, 1.25vw, 24px); background: url(../../images/common/icon_ellipsis_horizontal.svg) no-repeat center/contain; }
.cm_comment .comment_text { margin: 0 0 clamp(8px, 0.5208333333vw, 10px); line-height: 1.4; }
.cm_comment .comment_reactions { display: flex; flex-wrap: wrap; align-items: center; margin-bottom: clamp(6px, 0.4166666667vw, 8px); gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_comment .reaction_btn { border-color: #ccc; }
.cm_comment .reaction_btn.active { border-color: var(--color-button-secondary-border); background-color: var(--color-button-secondary); color: var(--color-text-primary); font-weight: bold; }
.cm_comment .comment_btn_reply { color: var(--color-primary-80, #2530ff); transition: opacity 0.2s ease; }
.cm_comment .comment_dropdown_wrap { position: relative; }
.cm_comment .comment_dropdown { display: none; z-index: 2; position: absolute; top: calc(100% + 8px); left: 50%; min-width: 80px; padding: clamp(6.4px, 0.4166666667vw, 8px); transform: translateX(-50%); border: 1px solid var(--color-border-gray, #ddd); border-radius: clamp(6.4px, 0.4166666667vw, 8px); background: #fff; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); }
.cm_comment .comment_dropdown::before { position: absolute; top: -3px; left: 50%; width: 14px; height: 14px; transform: translateX(-50%); rotate: 45deg; border-top: 1px solid var(--color-border-gray, #ddd); border-left: 1px solid var(--color-border-gray, #ddd); background: #fff; content: ""; }
.cm_comment .comment_dropdown .dropdown_btn { display: block; width: 100%; padding: clamp(6px, 0.4166666667vw, 8px) clamp(10px, 0.625vw, 12px); border-radius: clamp(6.4px, 0.4166666667vw, 8px); text-align: center; transition: background-color 0.2s ease; }
.cm_comment .comment_dropdown .dropdown_btn:hover { background-color: var(--color-background-primary-lighter); }
.cm_comment .comment_dropdown.active { display: block; }
.cm_comment .comment_reply_list { margin-top: clamp(16px, 1.0416666667vw, 20px); padding: clamp(19.2px, 1.25vw, 24px); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #fff; }
.cm_comment .comment_reply { margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_comment .comment_reply:last-child { margin-bottom: 0; }
.cm_comment .comment_reply .comment_body { position: relative; padding-left: clamp(27.2px, 1.7708333333vw, 34px); }
.cm_comment .comment_reply .comment_body:before { display: block; position: absolute; top: clamp(11.2px, 0.7291666667vw, 14px); left: 0; width: clamp(19.2px, 1.25vw, 24px); height: clamp(19.2px, 1.25vw, 24px); background: url(../../images/common/icon_reply3.svg) no-repeat center/contain; content: ""; }
.cm_comment .comment_write { position: relative; margin-top: clamp(20px, 1.25vw, 24px); }
.cm_comment .comment_write .comment_textarea { display: block; padding: clamp(19.2px, 1.25vw, 24px) clamp(16px, 1.0416666667vw, 20px); border-radius: clamp(9.6px, 0.625vw, 12px); border-color: var(--color-border-gray); }
.cm_comment .comment_write .comment_btn_submit { position: absolute; right: clamp(16px, 1.0416666667vw, 20px); bottom: clamp(16px, 1.0416666667vw, 20px); }

/* 공통 컨텐츠 만족도 조사 */
.cm_content_satisfaction { margin-top: clamp(15px, 2.5vw, 48px); overflow: hidden; border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); background-color: var(--color-background-white); }
.cm_content_satisfaction .survey_input { display: flex; align-items: center; justify-content: space-between; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_content_satisfaction .survey_title { margin-bottom: clamp(9.6px, 0.625vw, 12px); font-weight: bold; }
.cm_content_satisfaction .survey_content { padding: clamp(15px, 1.25vw, 24px); padding-bottom: clamp(16px, 1.0416666667vw, 20px); }
.cm_content_satisfaction .survey_info { padding: clamp(9.6px, 0.625vw, 12px) clamp(19.2px, 1.25vw, 24px); background: var(--color-background-gray); }
.cm_content_satisfaction .survey_info .info_list { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(3.2px, 0.2083333333vw, 4px) clamp(19.2px, 1.25vw, 24px); font-size: clamp(13px, 0.78125vw, 15px); }
.cm_content_satisfaction .survey_chk_wrap { display: flex; flex-wrap: wrap; gap: clamp(8px, 0.5208333333vw, 10px); }
.cm_content_satisfaction .survey_chk { display: flex; align-items: center; justify-content: center; }
.cm_content_satisfaction .survey_chk input { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; white-space: nowrap; }
.cm_content_satisfaction .survey_chk .chk_label { display: flex; align-items: center; height: clamp(38.4px, 2.5vw, 48px); padding: 0 clamp(12.8px, 0.8333333333vw, 16px); gap: clamp(3.2px, 0.2083333333vw, 4px); border: 1px solid var(--color-border-gray); border-radius: clamp(4.8px, 0.3125vw, 6px); cursor: pointer; }
.cm_content_satisfaction .survey_chk .survey_chk_icon { flex-shrink: 0; width: clamp(16px, 1.0416666667vw, 20px); }
.cm_content_satisfaction .survey_chk input:checked + .chk_label { border-color: var(--color-button-secondary-border); background-color: var(--color-button-secondary); color: var(--color-text-primary); font-weight: bold; }
.cm_content_satisfaction .survey_chk input:focus-visible + .chk_label { outline: 2px dashed #000; outline-offset: 2px; }
.cm_content_satisfaction .survey_action { 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; }

/* 첨부파일 목록 */
.cm_file_list { display: flex; flex-direction: column; align-items: start; gap: 0.8rem; }
.cm_file_list .file_label_wrap { display: flex; align-items: center; width: 100%; gap: 1rem; }
.cm_file_list .file_label_wrap .label { width: 12rem; }
.cm_file_list .file_label_wrap .cm_file_item { flex: 1 1 0; min-width: 0; }
.cm_file_list .cm_file_item { display: inline-flex; align-items: center; padding: 0.7rem 1.2rem; border: 1px solid var(--color-border-gray); border-radius: 0.6rem; font-size: clamp(13px, 0.78125vw, 15px); }
.cm_file_list .cm_file_item .file_name { text-align: left; word-break: break-all; }
.cm_file_list .cm_file_item .file { line-height: 1.1; }
.cm_file_list .cm_file_item .file_delete { margin-left: clamp(8px, 0.8333333333vw, 16px); }
.cm_file_list .cm_file_item.type2 { display: flex; justify-content: space-between; width: 100%; padding: 1.5rem 2.4rem; font-size: 1.7rem; }
.cm_file_list .cm_file_item.type2 .cm_icon.file { flex: 1 1 0; min-width: 0; }
.cm_file_list .cm_file_item.type2 .file_btns { display: flex; justify-content: end; width: 21rem; gap: 1.8rem; }

/* 첨부파일 목록2 */
.cm_file_list2 { display: flex; flex-direction: column; gap: 0.8rem; }
.cm_file_list2 .cm_file_item { font-size: clamp(13px, 0.78125vw, 15px); text-align: left; }
.cm_file_list2 .cm_file_item.inactive { color: #666; }
.cm_file_list2 .cm_file_item.inactive .cm_icon.file::before { opacity: 0.75; }

/* 첨부파일 목록3 */
.cm_file_list3 { display: flex; flex-direction: column; gap: 0.8rem; }
.cm_file_list3 .cm_file_item { display: flex; align-items: center; justify-content: space-between; min-height: clamp(40px, 2.9166666667vw, 56px); padding: 6px clamp(16px, 1.25vw, 24px); gap: clamp(8px, 0.8333333333vw, 16px); border: 1px solid #ccc; border-radius: 6px; font-size: clamp(14px, 0.8854166667vw, 17px); }

/* 파일 첨부하기 */
.cm_add_file { display: flex; flex-direction: column; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_add_file .btn_area { position: relative; }
.cm_add_file [class*=cm_file_list] { flex: 1 1 0; min-width: 0; }
.cm_add_file .cm_file_input:focus-visible + .cm_btn { outline: 2px dashed #000; outline-offset: 2px; }

/* 공통 폼 */
input::-webkit-search-decoration,
input::-webkit-search-cancel-button,
input::-webkit-search-results-button,
input::-webkit-search-results-decoration { display: none; }
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
input[type=number] { -moz-appearance: textfield; }
input:focus,
input:focus-visible { outline: 2px dashed #000; outline-offset: 2px; }
input[type=file] { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; white-space: nowrap; }
.form_control { width: 100%; height: clamp(48px, 2.9166666667vw, 56px); padding: 0 clamp(10px, 0.8333333333vw, 16px); border: 1px solid #999; border-radius: clamp(4px, 0.4166666667vw, 8px); background-color: #fff; font-size: clamp(16px, 0.8854166667vw, 17px); }
.form_control::placeholder { color: #666; }
.form_control.size_md { height: clamp(42px, 2.5vw, 48px); }
.form_control.size_sm { height: clamp(36px, 2.0833333333vw, 40px) !important; }
.form_control[readonly],
.form_control:disabled { border-color: #b2b2b2; background-color: #e6e6e6; color: #666; opacity: 1; }

/* text area */
textarea.form_control { height: var(--textarea_height); padding-top: 8px; padding-bottom: 8px; }
textarea.form_control:focus,
textarea.form_control:focus-visible { outline: 2px solid var(--color-primary-60); outline-offset: -1px; }
textarea.form_control[readonly]:focus,
textarea.form_control[readonly]:focus-visible { outline: 2px dashed #000; outline-offset: 2px; }
.cm_text_area .form_label { margin-bottom: clamp(6px, 0.4166666667vw, 8px); font-size: clamp(13px, 0.78125vw, 15px); }
.cm_text_area .text_counting { margin-top: clamp(6px, 0.4166666667vw, 8px); color: var(--color-text-secondary); font-size: clamp(13px, 0.78125vw, 15px); line-height: 0.8; text-align: right; }
.cm_text_area .text_counting .counting { color: var(--color-primary-60); }
.cm_text_area.is_over .form_control,
.cm_text_area.is_over .form_control:focus,
.cm_text_area.is_over .form_control:focus-visible { outline: 2px solid var(--color-danger-50); outline-offset: -1px; }
.cm_text_area.is_over .text_counting .counting { color: var(--color-danger-50); }

/* datepicker */
.form_control.datepicker { padding-right: clamp(35px, 2.6041666667vw, 50px); background: #fff url(../../images/common/icon_date_dkgry.svg) no-repeat right clamp(10px, 0.8333333333vw, 16px) center/clamp(20px, 1.25vw, 24px); }
.form_control.datepicker[readonly] { background-color: #e6e6e6; }
.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_arrow_back.svg); }
.ui-datepicker .ui-datepicker-next { right: 0; background-image: url(../../images/common/icon_arrow_forward.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-text-point-red); }
.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: var(--color-text-secondary); }
.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; }

/* select */
select.form_control { padding-right: clamp(35px, 2.6041666667vw, 50px); background-image: url(../../images/common/icon_arrow_down.svg); background-position: right clamp(10px, 0.8333333333vw, 16px) center; background-size: clamp(20px, 1.25vw, 24px); background-repeat: no-repeat; font-size: clamp(14px, 0.8854166667vw, 17px); }

/* 공통 체크박스 */
[class*=cm_chk] { display: inline-flex; position: relative; flex-wrap: wrap; cursor: pointer; }
[class*=cm_chk] input[type=checkbox],
[class*=cm_chk] input[type=radio] { clip: rect(0, 0, 0, 0); position: absolute; width: 1px; min-width: 1px; height: 1px; min-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; align-items: center; gap: 12px clamp(10px, 1.3020833333vw, 25px); cursor: default; }
.cm_chk_wrap.column { flex-direction: column; align-items: start; }
.cm_chk1 { min-height: 2.4rem; }
.cm_chk1 .chk_label { position: relative; padding-left: 3.2rem; line-height: 1.2; transition: color 0.3s ease; }
.cm_chk1 .chk_label:before { display: inline-block; position: absolute; top: -1px; left: 0; width: 2.4rem; height: 2.4rem; border: 1px solid #999; border-radius: 0.4rem; background-position: center; background-size: 1.2rem; background-repeat: no-repeat; background-color: #fff; content: ""; vertical-align: middle; transition: border-color 0.3s ease, background-color 0.3s ease; }
.cm_chk1 input[type=checkbox]:checked + .chk_label:before { border-color: var(--color-primary-80); background-image: url(../../images/common/icon_check_w.svg); background-color: var(--color-primary-80); }
.cm_chk1.bk .chk_label { color: var(--color-text-basic); }
.cm_chk1 input[type=radio] + .chk_label:after { position: absolute; top: 5px; left: 0.6rem; width: 1.2rem; height: 1.2rem; border-radius: 50%; background-color: var(--color-primary-80); content: ""; opacity: 0; transition: opacity 0.3s ease; }
.cm_chk1 input[type=radio] + .chk_label:before { border-radius: 50%; }
.cm_chk1 input:checked + .chk_label:before { border-color: var(--color-primary-80); }
.cm_chk1 input:checked + .chk_label:after { opacity: 1; }
.cm_chk1 input:focus-visible + .chk_label { outline: 2px dashed #000; outline-offset: 2px; transition: none !important; }
.cm_chk1.size_sm input[type=radio] + .chk_label:after { left: 0.5rem; width: 1rem; height: 1rem; }
.cm_chk1.size_sm .chk_label:before { width: 20px; height: 20px; }
.cm_chk1.alone .chk_label { padding: 0; }
.cm_chk1.alone .chk_label:before { position: static; transform: none; }
.cm_chk1:hover .chk_label { color: #000; }
.cm_chk1:hover .chk_label:before { border-color: #666; }
.cm_chk1 input:disabled + .chk_label { color: #999; cursor: default; }
.cm_chk1 input:disabled + .chk_label:before { border-color: #b0b0b0; background-color: #e0e0e0; }
.cm_chk1 input:disabled + .chk_label:after { background-color: #808080; }
.cm_multiChip_list { display: flex; flex-wrap: wrap; gap: 0.8rem; }
.cm_multiChip_list select.form_control { width: auto; height: clamp(40px, 2.5vw, 48px); }
.cm_multiChip_list.icon_multiChip { gap: 1.6rem; }
.cm_multiChip_list .cm_chk2 { white-space: nowrap; }
.cm_multiChip_list .cm_chk2 .chk_label { line-height: 1.3; }
.cm_multiChip_list.list1 .cm_chk2 .chk_label { width: clamp(140px, 8.3333333333vw, 160px); height: clamp(50px, 3.2291666667vw, 62px); gap: clamp(16px, 1.25vw, 24px); }
.cm_multiChip_list.list1 .cm_chk2 .chk_label:before { position: static; transform: none; }
.cm_multiChip_list.list1 .cm_chk2 input:checked ~ .chk_label { padding-right: clamp(6px, 0.5208333333vw, 10px); padding-left: clamp(6px, 0.5208333333vw, 10px); gap: clamp(8px, 0.625vw, 12px); }
.cm_multiChip_list.list3 .cm_chk2 .chk_label { min-width: clamp(100px, 6.25vw, 120px); height: clamp(40px, 2.65625vw, 51px); }
.division_content_wrap { margin-top: clamp(19.2px, 1.25vw, 24px); }
.division_content { display: none; }
.division_content:first-child { display: block; }
.cm_chk2 .chk_label { display: inline-flex; position: relative; align-items: center; justify-content: center; height: clamp(40px, 2.5vw, 48px); padding: 0 clamp(16px, 1.09375vw, 21px); border: 1px solid var(--color-border-gray); border-radius: 0.6rem; background: #fff; color: var(--color-text-basic); font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_chk2 .chk_label:before { display: none; position: absolute; top: 50%; left: clamp(8px, 0.5208333333vw, 10px); width: clamp(14px, 1.0416666667vw, 20px); height: clamp(14px, 1.0416666667vw, 20px); transform: translateY(-50%); background: url(../../images/common/icon_checked_primary.svg) no-repeat center/contain; content: ""; }
.cm_chk2 .chk_label .badge { display: inline-flex; align-items: center; height: clamp(19px, 1.25vw, 24px); margin-left: 4px; padding: 0 0.8rem; border-radius: 50px; background: #f2f2f2; font-size: clamp(12px, 0.78125vw, 15px); }
.cm_chk2 input:hover ~ .chk_label { background: #f1f7f5; }
.cm_chk2 input:focus-visible ~ .chk_label { outline: 2px dashed #000; outline-offset: 4px; }
.cm_chk2 input:checked ~ .chk_label { padding-right: clamp(6px, 0.5208333333vw, 10px); padding-left: clamp(26px, 1.7708333333vw, 34px); border-color: var(--color-button-secondary-border); background: var(--color-button-secondary); color: var(--color-text-primary); font-weight: 700; }
.cm_chk2 input:checked ~ .chk_label:before { display: block; }
.cm_chk2 input:checked ~ .chk_label .badge { background: var(--color-primary-10); color: var(--color-primary-90); font-weight: 400; }
.cm_chk2.variant2 .chk_label:before { background-image: url(../../images/common/icon_checked_primary_w.svg); }
.cm_chk2.variant2 input:checked ~ .chk_label { background-color: var(--color-primary-80); color: #fff; }
.cm_chk3 .chk_label { display: flex; flex-direction: column; align-items: center; gap: clamp(4px, 0.4166666667vw, 8px); }
.cm_chk3 .chk_label .label_img { display: inline-block; width: clamp(60px, 4.6875vw, 90px); height: clamp(60px, 4.6875vw, 90px); overflow: hidden; border: 1px solid transparent; border-radius: 50%; background: #ebf4f3; transition: 0.15s border-color, 0.15s background-color; }
.cm_chk3 .chk_label .label_text { font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_chk3 input:hover ~ .chk_label .label_img { background: var(--color-button-secondary); }
.cm_chk3 input:focus-visible ~ .chk_label .label_img { outline: 2px dashed #000; outline-offset: 4px; }
.cm_chk3 input:checked ~ .chk_label .label_img { border-color: var(--color-button-secondary-border); background: var(--color-button-secondary); }
.cm_keyword_list { display: flex; flex-wrap: wrap; gap: 1.2rem 0.8rem; }
.cm_keyword_list .keyword_item { display: inline-flex; align-items: center; padding: clamp(4px, 0.4166666667vw, 8px) clamp(16px, 1.0416666667vw, 20px); gap: 0.8rem; border: 1px solid var(--color-border-gray); border-radius: 50px; background: #fff; font-size: clamp(14px, 0.8854166667vw, 17px); transition: background 0.15s, color 0.15s; }
.cm_keyword_list .keyword_img { display: inline-flex; align-items: center; justify-content: center; height: clamp(26px, 1.5625vw, 30px); }
.cm_keyword_list .keyword_text { line-height: 1.1; }
.cm_keyword_list.sub { display: none; }
.cm_keyword_list.sub.active { display: contents; }
.cm_keyword_list.active { display: flex; }
.cm_chk4 .chk_label { display: inline-flex; align-items: center; padding: clamp(4px, 0.4166666667vw, 8px) clamp(16px, 1.0416666667vw, 20px); gap: 0.8rem; border: 1px solid var(--color-border-gray); border-radius: 50px; background: #fff; font-size: clamp(14px, 0.8854166667vw, 17px); transition: background 0.15s, color 0.15s; }
.cm_chk4 .chk_label .label_img { display: inline-flex; align-items: center; justify-content: center; height: clamp(26px, 1.5625vw, 30px); }
.cm_chk4 .chk_label .label_text { line-height: 1.1; }
.cm_chk4 input:focus-visible ~ .chk_label { outline: 2px dashed #000; outline-offset: 2px; }
.cm_chk4 input:hover ~ .chk_label { background: #f1f7f5; }
.cm_chk4 input:checked ~ .chk_label { border-color: var(--color-primary-80); background: var(--color-primary-80); color: #fff; }
.cm_chk5 { width: clamp(32px, 2.0833333333vw, 40px); height: clamp(19.2px, 1.25vw, 24px); }
.cm_chk5 .chk_label { display: block; position: relative; width: 100%; height: 100%; border-radius: 100px; background-color: var(--color-gray-50); transition: background-color 0.3s ease; }
.cm_chk5 .chk_label:before { position: absolute; top: clamp(2.4px, 0.15625vw, 3px); left: clamp(2.4px, 0.15625vw, 3px); width: clamp(14.4px, 0.9375vw, 18px); height: clamp(14.4px, 0.9375vw, 18px); border-radius: 50%; background-image: url(../../images/common/icon_cross_gry.svg); background-position: center; background-size: clamp(11.2px, 0.7291666667vw, 14px); background-repeat: no-repeat; background-color: #fff; content: ""; transition: transform 0.3s ease; }
.cm_chk5 input:checked + .chk_label { background-color: var(--color-primary-80); }
.cm_chk5 input:checked + .chk_label:before { transform: translateX(clamp(12.8px, 0.8333333333vw, 16px)); background-image: url(../../images/common/icon_checked_primary2.svg); background-size: clamp(9.6px, 0.625vw, 12px); }
.cm_chk5 input:focus-visible + .chk_label { outline: 2px dashed #000; outline-offset: 2px; }
.cm_chk5 input:disabled + .chk_label { background-color: var(--color-background-disabled); }
.cm_chk5 input:disabled + .chk_label:before { background-image: url(../../images/common/icon_cross_w.svg); background-color: var(--color-gray-50); }
.cm_chk5 input:checked:disabled + .chk_label:before { background-image: url(../../images/common/icon_check_w.svg); }
.cm_chk6 { height: 2.4rem; }
.cm_chk6 .chk_label { position: relative; padding-left: 3.2rem; line-height: 1.2; transition: color 0.3s ease; }
.cm_chk6 .chk_label:before { display: inline-block; position: absolute; top: -1px; left: 0; width: 2.4rem; height: 2.4rem; border: 1px solid #999; border-radius: 0.4rem; background-position: center; background-size: 1.2rem; background-repeat: no-repeat; background-color: #fff; content: ""; vertical-align: middle; transition: border-color 0.3s ease, background-color 0.3s ease; }
.cm_chk6 input:checked + .chk_label:before { border-color: var(--color-primary-80); background-image: url(../../images/common/icon_check_w.svg); background-color: var(--color-primary-80); }
.cm_chk6.bk .chk_label { color: var(--color-text-basic); }
.cm_chk6 input[type=radio] + .chk_label:before { border-radius: 50%; }
.cm_chk6 input:checked + .chk_label:after { opacity: 1; }
.cm_chk6 input:focus-visible + .chk_label { outline: 2px dashed #000; outline-offset: 2px; transition: none !important; }
.cm_chk6 input:disabled + .chk_label { cursor: default; }
.cm_chk6 input:disabled:not(:checked) + .chk_label { color: #999; }
.cm_chk6 input:disabled:not(:checked) + .chk_label:before { border-color: #b0b0b0; background-color: #e0e0e0; }
.cm_chk6 input:disabled:not(:checked) + .chk_label:after { background-color: #ddd; }
.cm_chk6.size_sm input[type=radio] + .chk_label:after { left: 0.5rem; width: 1rem; height: 1rem; }
.cm_chk6.size_sm .chk_label:before { width: 20px; height: 20px; }
.cm_chk6.alone .chk_label { padding: 0; }
.cm_chk6.alone .chk_label:before { position: static; transform: none; }
.cm_chk6:hover .chk_label { color: #000; }
.cm_chk6:hover .chk_label:before { border-color: #666; }
.cm_chk7 { width: 100%; }
.cm_chk7 .chk_label { position: relative; width: 100%; padding: clamp(25.6px, 1.6666666667vw, 32px); padding-left: clamp(56px, 3.6458333333vw, 70px); border: 1px solid var(--color-border-gray); border-radius: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_chk7 .chk_label:before { display: none; position: absolute; top: -1px; right: -1px; bottom: -1px; left: -1px; border: 2px solid var(--color-border-primary-dark); border-radius: inherit; content: ""; }
.cm_chk7 .chk_label:after { display: block; position: absolute; top: clamp(28.8px, 1.875vw, 36px); left: clamp(25.6px, 1.6666666667vw, 32px); aspect-ratio: 1/1; width: clamp(19.2px, 1.25vw, 24px); border: 1px solid var(--color-gray-40); border-radius: 1000px; content: ""; }
.cm_chk7 .chk_title { margin-bottom: clamp(8px, 0.5208333333vw, 10px); font-weight: bold; font-size: clamp(19.2px, 1.25vw, 24px); }
.cm_chk7 .chk_btns { margin-top: clamp(9.6px, 0.625vw, 12px); }
.cm_chk7 input:checked + .chk_label { background-color: var(--color-background-primary-lightest); }
.cm_chk7 input:checked + .chk_label:before { display: block; }
.cm_chk7 input:checked + .chk_label:after { border-color: transparent; background-image: url(../../images/common/icon_check_w.svg); background-position: center; background-size: 50%; background-repeat: no-repeat; background-color: var(--color-primary-80); }
.cm_chk8 { align-items: center; }
.cm_chk8 .chk_label { display: inline-flex; align-items: center; height: clamp(40px, 2.5vw, 48px); padding: 0 clamp(14px, 1.0416666667vw, 20px) 0 clamp(12px, 0.8333333333vw, 16px); gap: clamp(8px, 0.5208333333vw, 10px); border: 1px solid var(--color-border-gray); border-radius: 1000px; background: #fff; color: var(--color-text-basic); font-weight: 700; font-size: clamp(14px, 0.8854166667vw, 17px); transition: background 0.15s, border-color 0.15s, color 0.15s, box-shadow 0.15s; }
.cm_chk8 .chk_label:before { flex-shrink: 0; width: clamp(22px, 1.3541666667vw, 26px); height: clamp(22px, 1.3541666667vw, 26px); border-radius: 50%; background-image: url(../../images/common/icon_minus.svg); background-position: center; background-size: clamp(12px, 0.7291666667vw, 14px); background-repeat: no-repeat; background-color: #e6e6e6; content: ""; transition: background-color 0.15s, background-image 0.15s; }
.cm_chk8 input:focus-visible + .chk_label { outline: 2px dashed #000; outline-offset: 2px; transition: none !important; }
.cm_chk8 input:checked + .chk_label { border-color: var(--color-primary-80); background: var(--color-primary-80); box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.02); color: #fff; }
.cm_chk8 input:checked + .chk_label:before { background-image: url(../../images/common/icon_plus_bold_primary.svg); background-color: #fff; }
.cm_chk8 input:disabled + .chk_label { border-color: #d0d0d0; background: var(--color-background-disabled); color: #777; cursor: default; }
.cm_chk8 input:disabled + .chk_label:before { background-color: #d8d8d8; }

/* toggle */
.cm_toggle { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
.cm_toggle .toggle_label { color: #222; font-size: 14px; }
.cm_toggle .toggle_input { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; border: 0; clip: rect(0 0 0 0); clip-path: inset(50%); }
.cm_toggle .toggle_ui { display: inline-block; position: relative; width: 40px; height: 24px; border-radius: 999px; background: #808080; vertical-align: middle; transition: background 0.2s ease; }
.cm_toggle .toggle_ui::before { position: absolute; top: 2px; left: 2px; width: 20px; height: 20px; border-radius: 50%; background: #f5f5f5 url(../../images/common/icon_cross2.svg) no-repeat center/10px; content: ""; transition: transform 0.2s ease; }
.cm_toggle .toggle_icon { position: absolute; top: 50%; transform: translateY(-50%); font-weight: 700; font-size: 11px; line-height: 1; }
.cm_toggle .toggle_icon_off { left: 9px; color: #666; }
.cm_toggle .toggle_icon_on { right: 9px; color: #fff; opacity: 0; }
.cm_toggle .toggle_input:checked + .toggle_ui { background: #0b8f6a; }
.cm_toggle .toggle_input:checked + .toggle_ui::before { transform: translateX(16px); background: #fff url(../../images/common/icon_checked_primary2.svg) no-repeat center/12px; }
.cm_toggle .toggle_input:checked + .toggle_ui .toggle_icon_off { opacity: 0; }
.cm_toggle .toggle_input:checked + .toggle_ui .toggle_icon_on { opacity: 1; }
.cm_toggle .toggle_input:focus-visible + .toggle_ui { outline: 2px dashed #000; outline-offset: 2px; }

/* search */
[class*=cm_search] { position: relative; }
.cm_search1 { display: flex; gap: 0.8rem; }
.cm_search1 select { width: 16rem; height: clamp(40px, 2.9166666667vw, 56px); border-color: var(--color-border-gray-dark); }
.cm_search1 .search_input_area { display: flex; gap: 0.8rem; }
.cm_search1 .search_input_area .input_wrap { display: flex; align-items: center; width: 32rem; padding: 0 clamp(12px, 0.8333333333vw, 16px); gap: 1rem; border: 1px solid var(--color-border-gray-dark); border-radius: 0.8rem; background: #fff; }
.cm_search1 .search_input_area .input_wrap input[type=text] { flex: 1 1 0; width: 100%; min-width: 0; height: clamp(40px, 2.9166666667vw, 56px); border: 0; font-size: clamp(16px, 0.8854166667vw, 17px); }
.cm_search1 .search_input_area .input_wrap .btn_cross { width: clamp(16px, 1.0416666667vw, 20px); height: clamp(16px, 1.0416666667vw, 20px); background: url(../../images/common/icon_cross.svg) no-repeat center/contain; }
.cm_search1 .search_input_area .input_wrap .btn_search { width: clamp(20px, 1.25vw, 24px); height: clamp(20px, 1.25vw, 24px); background: url(../../images/common/icon_search.svg) no-repeat center/contain; }
.cm_search1 .search_input_area .btn_reset { display: inline-flex; width: clamp(40px, 2.9166666667vw, 56px); height: clamp(40px, 2.9166666667vw, 56px); border: 1px solid #666; border-radius: 0.6rem; background: #fff url(../../images/common/icon_rotate.svg) no-repeat center/clamp(20px, 1.25vw, 24px); }
.cm_search1 .search_input_area .btn_reset:hover { background-color: var(--color-button-tertiary-hover); }
.cm_search2 { position: relative; padding: 1.2rem 1.6rem; padding-left: 5.6rem; border: 1px solid var(--color-border-gray-dark); border-radius: 0.6rem; }
.cm_search2 .icon { position: absolute; top: 1.4rem; left: 1.6rem; width: 2.4rem; height: 2.4rem; }
.cm_search2 input[type=text] { width: 100%; height: 2.6rem; min-height: 0; border: 0; font-size: clamp(16px, 0.8854166667vw, 17px); }
.cm_search3 .text_search_area { display: flex; align-items: center; margin-bottom: 1.6rem; gap: clamp(20px, 1.25vw, 24px); }
.cm_search3 .text_search_area .text_input_wrap { position: relative; width: 100%; max-width: 500px; padding: clamp(8px, 0.7291666667vw, 14px) clamp(12px, 0.8333333333vw, 16px); padding-right: clamp(64px, 4.1666666667vw, 80px); border: 1px solid #999; border-radius: 0.8rem; }
.cm_search3 .text_search_area .form_control { height: auto; min-height: 26px; padding: 0; border: 0; border-radius: 0; outline-offset: 4px; }
.cm_search3 .text_search_area .text_input_wrap .btn_cross { position: absolute; top: 50%; right: clamp(40px, 2.6041666667vw, 50px); width: clamp(16px, 1.0416666667vw, 20px); height: clamp(16px, 1.0416666667vw, 20px); transform: translateY(-50%); background: url(../../images/common/icon_cross.svg) no-repeat center/contain; }
.cm_search3 .text_search_area .text_input_wrap .text_input_button { position: absolute; top: 50%; right: clamp(12.8px, 0.8333333333vw, 16px); width: clamp(19.2px, 1.25vw, 24px); height: clamp(19.2px, 1.25vw, 24px); transform: translateY(-50%); background: url(../../images/common/icon_search.svg) no-repeat center/contain; }
.cm_search3 .text_search_area .btn_search_handle { white-space: nowrap; }
.cm_search3 .text_search_area .btn_search_handle:hover span { text-decoration: underline; }
.cm_search3 .text_search_area .btn_search_handle .cm_icon { gap: 4px; }
.cm_search3 .text_search_area .btn_search_handle .cm_icon:before { width: 2rem; height: 2rem; background-image: url(../../images/common/icon_search_open.svg); }
.cm_search3 .detail_search_area { display: none; }
.cm_search3.active .detail_search_area { display: block; }
.cm_search3.active .text_search_area .btn_search_handle .cm_icon:before { background-image: url(../../images/common/icon_search_close.svg); }
.cm_search4 { padding: clamp(15px, 1.5625vw, 30px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_search4 .btns .cm_btn { height: 4rem; }

/*검색어 없을 경우 입력초기화 버튼 숨김 처리*/
.cm_search3 .text_search_area .text_input_wrap input[type=text]:placeholder-shown + .btn_cross,
.input_wrap input[type=text]:placeholder-shown + .btn_cross { display: none !important; }
.search_input_wrap input[type=text]:placeholder-shown + .btn_cross { display: none !important; }
.search_layer_input_wrap input[type=text]:placeholder-shown + .btn_cross { display: none !important; }

/* category select */
.cm_category_picker { overflow: hidden; border: 1px solid var(--color-border-gray-dark); border-radius: 0.6rem; background-color: #fff; }
.cm_category_picker .cm_search2 { border: 0; }
.cm_category_picker .category_select_area { display: none; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--color-border-gray-dark); }
.cm_category_picker .category_select_area.active { display: grid; }
.cm_category_picker .category_group { height: 28rem; padding: 1.6rem; overflow: auto; border-right: 1px solid var(--color-border-gray-dark); }
.cm_category_picker .category_group:last-child { border-right: 0; }
.cm_category_picker .category_group .category_before_select { font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_category_picker .category_group .category_list { display: flex; flex-direction: column; gap: 0.6rem; }
.cm_category_picker .category_group .category_list .item_btn { display: flex; align-items: center; width: 100%; padding: 0.4rem 0.8rem; border-radius: 0.4rem; font-size: clamp(14px, 0.8854166667vw, 17px); transition: background 0.15s; }
.cm_category_picker .category_group .category_list .item_btn:hover { background: #f1f7f5; }
.cm_category_picker .category_group .category_list .item_btn.active { background: var(--color-primary-10); color: var(--color-text-primary-dark); }
.cm_category_picker2 { overflow: hidden; border: 1px solid var(--color-border-gray-dark); border-radius: 0.6rem; background-color: #fff; }
.cm_category_picker2 .cm_search2 { border: 0; }
.cm_category_picker2 .category_select_area { display: none; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); border-top: 1px solid var(--color-border-gray-dark); }
.cm_category_picker2 .category_select_area.active { display: grid; }
.cm_category_picker2 .category_group { max-height: 21rem; padding: 1.6rem; overflow: auto; border-right: 1px solid var(--color-border-gray-dark); text-align: left; }
.cm_category_picker2 .category_group:last-child { border-right: 0; }
.cm_category_picker2 .category_group .category_before_select { font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_category_picker2 .category_group .category_list { display: flex; flex-wrap: wrap; gap: 1.4rem; }
.cm_category_picker2 .category_group .category_list .category_item { width: calc(50% - 0.7rem); }
.cm_category_picker2 .category_group .category_list .item_btn { display: flex; align-items: center; width: 100%; padding: 0.4rem 0.8rem; border-radius: 0.4rem; font-size: clamp(14px, 0.8854166667vw, 17px); transition: background 0.15s; }
.cm_category_picker2 .category_group .category_list .item_btn:hover { background: #f1f7f5; }
.cm_category_picker2 .category_group .category_list .item_btn.active { background: var(--color-primary-10); color: var(--color-text-primary-dark); }

/* dropzone */
.upload_dropzone { position: relative; }
.upload_box { display: flex; align-items: center; justify-content: center; width: 100%; height: 12rem; border: 1px dashed #999; border-radius: 0.8rem; cursor: pointer; transition: border-color 0.2s ease; }
.upload_box:hover { border-color: #666; }
.upload_box .box_inner { display: flex; flex-direction: column; align-items: center; gap: 0.8rem; }
.upload_input:focus-visible + .upload_box { border-color: #000; outline: 2px dashed #000; outline-offset: 2px; }

/* form group */
[class*=form_group] .form_content { flex: 1 1 0; min-width: 0; }
[class*=form_group] .form_label { font-weight: 700; font-size: clamp(14px, 0.8854166667vw, 17px); }
[class*=form_group] .form_label.required span { position: relative; padding-right: clamp(14px, 0.9895833333vw, 19px); }
[class*=form_group] .form_label.required span:after { position: absolute; top: 50%; right: 0; transform: translateY(-50%); content: "*"; color: var(--color-point-80); }
[class*=form_group].type_search .cm_search1 .search_input_area { width: 100%; max-width: 500px; }
[class*=form_group].type_search .cm_search1 .search_input_area .input_wrap { width: 100%; height: clamp(40px, 2.5vw, 48px); }
[class*=form_group].type_search .cm_search1 .search_input_area .search_input { height: 100%; }
[class*=form_group].type_search2 .form_content { display: flex; align-items: center; gap: clamp(4px, 0.5208333333vw, 10px); }
[class*=form_group].type_search2 .form_content .search_option { width: 130px; }
[class*=form_group].type_search2 .form_content .cm_search1 { margin-right: clamp(4.8px, 0.3125vw, 6px); }
[class*=form_group].type_search3 .form_content .cm_search1 { flex-wrap: wrap; }
[class*=form_group].type_search3 .form_content .btn_area { display: flex; gap: 0.8rem; }
[class*=form_group].type_search3 .form_content .btn_area .cm_btn { height: clamp(40px, 2.5vw, 48px); }
[class*=form_group] .type_with_btns { display: flex; align-items: end; justify-content: space-between; }
[class*=form_group] .type_with_btns .form_area { width: 100%; }
[class*=form_group] .type_with_btns .btns_area { display: flex; flex-shrink: 0; gap: 0.8rem; }
[class*=form_group] .type_with_btns .btns_area .btn_reset { flex-shrink: 0; }
[class*=form_group].type_multiChip_icon .form_label { margin-top: clamp(22px, 2.3958333333vw, 46px); }
[class*=form_group].type_period { display: flex; flex-wrap: wrap; align-items: center; gap: 0.8rem; }
[class*=form_group].type_period .form_control.datepicker { width: 18rem; height: clamp(40px, 2.5vw, 48px); }
[class*=form_group].type_period .form_period_btns { display: flex; gap: 1.6rem; }
[class*=form_group].type_period .form_control.datepicker.size_sm { width: 15rem; }
[class*=form_group] .form_label_sm { font-weight: bold; font-size: clamp(13px, 0.78125vw, 15px); white-space: nowrap; }
.form_group,
.form_row_item { display: flex; gap: 0.8rem; }
.form_group .form_label,
.form_group .form_row_item .form_label { width: 152px; margin-top: clamp(8px, 0.8333333333vw, 16px); }
.form_group .form_row_item.align_center { align-items: center; }
.form_group .form_content .form_control { width: 320px; }
.form_group2 { display: flex; gap: clamp(10px, 0.8333333333vw, 16px); }
.form_group2 ~ .form_group2 { margin-top: clamp(20px, 1.25vw, 24px); }
.form_group2 .form_label { width: 10rem; margin-top: clamp(8px, 0.5729166667vw, 11px); font-weight: 700; font-size: clamp(14px, 0.8854166667vw, 17px); }
.form_group2 .form_row_item.align_center { align-items: center; }
.form_group2.row-02 { gap: clamp(12.8px, 0.8333333333vw, 16px) clamp(16px, 1.25vw, 24px); }
.form_group2.row-02 .form_row_item { flex: 1 1 0; min-width: 0; }
.form_group.row { flex-direction: column; }
.form_group.row .form_label { width: auto; }
.form_group2.row { flex-direction: column; }
.form_group2.row .form_label { width: auto; }
.form_group2.flex1 { flex: 1; min-width: 0; }
.form_group.size_lg .form_label,
.form_group.size_lg .form_row_item .form_label { width: 210px; }
.formGroup_row_list { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(19.2px, 1.25vw, 24px); }
.formGroup_row_list [class*=form_group] { align-items: center; }
.formGroup_row_list [class*=form_group] ~ [class*=form_group] { margin-top: 0; }
.formGroup_row_list [class*=form_group] .form_label { width: auto; margin-top: 0; }
.form_layout1 { display: flex; gap: clamp(10px, 2.0833333333vw, 40px); }
.form_layout1 .layout_left { flex: 1; min-width: 0; }
.form_layout1 .layout_left .form_write_list { height: 100%; }
.form_layout1 .layout_left .cm_form_write { height: 100%; }
.form_layout1 .layout_left .form_write_content { height: 100%; }
.form_layout1 .layout_right { flex-shrink: 0; width: clamp(280px, 18.2291666667vw, 350px); }
.form_layout1 .layout_right .cm_overview15 { height: 100%; }
.form_layout1 .layout_right .cm_overview15 .ovw15_list { height: 100%; }
.form_layout1 .layout_right .cm_overview15 .ovw15_list > li { flex: 1 1 0; width: auto; }
.form_layout1 .layout_right .cm_overview15 .ovw15_box { justify-content: center; }
.form_layout2 { display: flex; align-items: center; gap: 5px; }
.form_layout3 { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.form_layout4 { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; }
.form_layout4 .cm_chk_wrap { gap: 12px 16px; }
.form_layout4_detail { display: inline-flex; flex-wrap: wrap; align-items: center; padding: clamp(6.4px, 0.4166666667vw, 8px); overflow: hidden; gap: 12px; border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-color: var(--color-background-gray-light); }
.form_layout4_detail.type2 { padding: clamp(6.4px, 0.4166666667vw, 8px) clamp(12.8px, 0.8333333333vw, 16px); }
.form_layout5 input[type=text] { flex: 1 1 0; min-width: 0; margin-left: 16px; }
.form_layout6 { display: flex; align-items: center; gap: 0.8rem; }
.form_layout6 .form_label { margin-right: 0.8rem; color: var(--color-text-secondary); font-size: clamp(14px, 0.8854166667vw, 17px); }
.form_layout7_list { display: flex; flex-direction: column; gap: 4rem; }
.cm_form_write.form_write1 .form_layout7 .form_group ~ .form_group { margin-top: 8px; }
.cm_form_write.form_write1 .form_layout7 .form__addFile .add_file_list .add_file_item { max-width: 100%; }
.cm_filter_box_wrap { overflow: hidden; border: 1px solid var(--color-border-gray); border-radius: clamp(8px, 0.625vw, 12px); }
.cm_filter_box { padding: clamp(24px, 2.0833333333vw, 40px); border: 1px solid var(--color-border-gray); border-radius: clamp(8px, 0.625vw, 12px); background: #fff; }
.cm_filter_box.type2 { background-color: var(--color-background-gray-light); }
.cm_filter_box_wrap .cm_filter_box { border: none; border-bottom: 1px solid var(--color-border-gray); border-radius: 0; }
.cm_filter_box_wrap .cm_filter_box:last-child { border-bottom: none; }
.cm_filter_box .d-flex [class*=form_group] ~ [class*=form_group] { margin-top: 0; }
.cm_filter_condition { display: flex; flex-direction: column; padding: clamp(19.2px, 1.25vw, 24px); gap: clamp(8px, 0.5208333333vw, 10px); border-radius: clamp(9.6px, 0.625vw, 12px); background: var(--color-background-gray-light); }
.cm_filter_condition .btn_reset { flex-shrink: 0; width: clamp(32px, 2.0833333333vw, 40px); height: clamp(32px, 2.0833333333vw, 40px); overflow: hidden; border: 1px solid var(--color-border-gray); border-radius: 1000px; background: url(../../images/common/icon_rotate.svg) no-repeat center/clamp(16px, 1.0416666667vw, 20px); background-color: #fff; text-indent: 100%; white-space: nowrap; }
.cm_filter_condition .filter_count { color: var(--color-text-basic); font-weight: bold; }
.cm_filter_condition .filter_header { display: flex; align-items: flex-start; gap: clamp(8px, 0.5208333333vw, 10px); }
.cm_filter_condition .filter_tags { display: flex; flex-wrap: wrap; }
.form_write_list { display: flex; flex-direction: column; gap: clamp(32px, 2.5vw, 48px); }
.cm_form_write { position: relative; overflow: hidden; }
.cm_form_write.form_write1 .form_write_title { margin-bottom: clamp(12px, 1.25vw, 24px); font-weight: 700; font-size: clamp(21px, 1.25vw, 24px); }
.cm_form_write.form_write1 .form_write_sub_title { display: flex; align-items: center; height: clamp(40px, 2.5vw, 48px); margin-bottom: clamp(20px, 1.25vw, 24px); padding: 0 clamp(12px, 0.8333333333vw, 16px); border-radius: 0.8rem; background: #f4f5f6; font-weight: 700; font-size: clamp(17px, 0.9895833333vw, 19px); }
.cm_form_write.form_write1 .form_require_guide { margin-bottom: 1.6rem; font-size: clamp(14px, 0.8854166667vw, 17px); text-align: right; }
.cm_form_write.form_write1 .form_require_guide .required { margin-right: 4px; color: var(--color-point-80); }
.cm_form_write.form_write1 .form_write_content { padding: 4rem; border-top: 2px solid var(--color-gray-70); border-bottom: 1px solid #ccc; }
.cm_form_write.form_write1 .form_group ~ .form_group { margin-top: 4rem; }
.cm_form_write.form_write1 .form_group .form_control { max-width: 28rem; }
.cm_form_write.form_write1 .form_group .form_control.w-unit { max-width: 18rem; }
.cm_form_write.form_write1 .form_group .form_control.w-unit2 { max-width: 10rem; }
.cm_form_write.form_write1 .form_group .form_control.wp-100 { width: 100%; max-width: 100%; }
.cm_form_write.form_write1 .form_group .form_control.wd-400 { width: 100%; max-width: 400px; }
.cm_form_write.form_write1 .form_group.row-02 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4rem 2.4rem; }
.cm_form_write.form_write1 .form_write_footer { display: flex; align-items: center; justify-content: space-between; padding: clamp(8px, 0.8333333333vw, 16px); gap: clamp(16px, 1.25vw, 24px); background: #f4f5f6; }
.cm_form_write.form_write1 .form_write_footer .left_area { flex: 1 1 0; min-width: 0; }
.cm_form_write.form_write1 .form_write_footer .cm_validation .text { color: var(--color-primary-90); }
.cm_form_write .form__address .text_line { margin-top: 0.8rem; }
.cm_form_write .form__address .text_line .form_control { width: 100%; max-width: 100%; }
.cm_form_write .form__tel .tel_fields { display: flex; align-items: center; gap: 0.8rem; }
.cm_form_write .form__tel .tel_fields .tel_item { width: 18.4rem; }
.cm_form_write .form__tel .tel_fields .tel_item .form_control { width: 100%; }
.cm_form_write .form__tel .tel_fields .tel_item_first { width: 12rem; }
.cm_form_write .form__biznum .biznum_fields { display: flex; align-items: center; gap: 0.8rem; }
.cm_form_write .form__biznum .biznum_fields .biznum_item { width: 18.4rem; }
.cm_form_write .form__biznum .biznum_fields .biznum_item .form_control { width: 100%; }
.cm_form_write .form__biznum .biznum_fields .biznum_sep { flex-shrink: 0; }
.cm_form_write .form__mail .mail_fields { display: flex; align-items: center; gap: 8px; }
.cm_form_write .form__mail .mail_item_last .form_control { max-width: 20rem; }
.cm_sidebar .cm_form_write.form_write1 .form_group .form__mail .form_control { max-width: 26rem; }
.cm_sidebar .cm_form_write.form_write1 .form_group .form__mail .mail_item_last .form_control { max-width: 16rem; }
.cm_form_write .form__addFile .add_file_list { display: flex; flex-direction: column; gap: 0.8rem; }
.cm_form_write .form__addFile .add_file_list .add_file_item { display: flex; width: 100%; max-width: 808px; gap: clamp(6px, 0.5208333333vw, 10px); }
.cm_form_write .form__addFile .add_file_list .add_file_item .btn_del { display: flex; align-items: center; justify-content: center; width: clamp(40px, 2.5vw, 48px); height: clamp(40px, 2.5vw, 48px); border: 1px solid var(--color-border-gray); border-radius: 0.6rem; background: #fff; }
.cm_form_write .form__addFile .add_file_list .add_file_item .btn_del:hover { border-color: var(--color-button-tertiary-border); background: var(--color-button-tertiary-hover); }
.cm_form_write .form__addFile .add_file_list .add_file_item .btn_del:disabled { border-color: var(--color-border-disabled); background: var(--color-button-disabled); }
.cm_form_write .form__addFile .add_file_list .add_file_item .btn_add { width: clamp(60px, 4.0625vw, 78px); }
.cm_form_write .form__addFile .add_file_list .add_file_item .form_control { width: calc(100% - clamp(106px, 7.6041666667vw, 146px)); max-width: 100%; }
.cm_form_write .form__other_field { display: flex; align-items: center; gap: clamp(12px, 0.8333333333vw, 16px); }
.cm_form_write .form__other_field .cm_chk1 { flex-shrink: 0; }
.cm_form_write .form__other_field .other_text_area { flex: 1 1 0; min-width: 0; }
.cm_form_write .form__other_field .other_text_area input[type=text] { width: 100%; max-width: 100%; }
.cm_form_write .form__input_btn { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_form_write .form__input_btn .btn_search { flex-shrink: 0; }
.cm_form_write .form__industry_category .category_fields { display: flex; flex-wrap: wrap; gap: 6px 12px; }
.cm_form_write .form__industry_category .category_item { flex: 1 1 0; min-width: 0; }
.cm_form_write .form__industry_category .category_item .form_control { width: 100%; max-width: 100%; }
.cm_form_write .period_fields { display: flex; align-items: center; gap: 8px; }
.cm_form_write .period_fields .form_control { width: auto; max-width: none !important; }
.cm_form_write .period_fields .form_control.datepicker { width: 100%; }
.cm_form_write .period_fields select.form_control { width: 90px; }
.cm_form_write .period_fields .sep { color: var(--color-text-secondary); }
.cm_form_write .period_fields.type_time { flex-wrap: wrap; }
.cm_form_write .form__period { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(12px, 1.0416666667vw, 20px); }
.cm_form_write .form__period .period_item { display: flex; align-items: center; gap: clamp(4px, 0.4166666667vw, 8px); }
.cm_form_write .form__period .period_item input[type=text] { width: 172px; }
.cm_form_write .form__period .period_item select { width: 90px; }
.cm_form_write .form__period .period_item .time { display: flex; align-items: center; gap: clamp(4px, 0.4166666667vw, 8px); }
.cm_form_write.form_write1.mypage .form_write_content { border-top-color: var(--color-border-primary-dark); }

/* 공통 라인 */
.cm_hr1 { margin: clamp(12.8px, 0.8333333333vw, 16px) 0; border: none; border-top: 1px solid var(--color-border-gray); }
.cm_hr2 { margin: clamp(25.6px, 1.6666666667vw, 32px) 0; border: none; border-top: 1px solid var(--color-border-gray-light); }
.cm_hr3 { margin: clamp(25.6px, 1.6666666667vw, 32px) 0; border: none; border-top: 1px dashed #ccc; }
.cm_hr4 { margin: clamp(25.6px, 1.6666666667vw, 32px) 0; border: none; border-top: 1px solid #4d4d4d; }

/* 공통 호버 효과 */
.cm_hover1 { transition: opacity 0.15s; }
.cm_hover1:hover { opacity: 0.85; }
.cm_hover2:hover { text-decoration: underline; }

/* 공통 아이콘 */
.cm_icon { --icon-size: 24; --icon-gap: 8; /* px 숫자 */ display: inline-flex; position: relative; align-items: center; gap: calc(var(--icon-gap) * 1px); line-height: 1.3; vertical-align: middle; }
.cm_icon::before { display: block; flex-shrink: 0; width: calc(var(--icon-size) * 1px); height: calc(var(--icon-size) * 1px); background-position: center; background-size: contain; background-repeat: no-repeat; content: ""; }
.cm_icon.size_xs { --icon-size: 16; }
.cm_icon.size_sm { --icon-size: 20; }
.cm_icon.size_sm.gap-4 { --icon-size: 20; --icon-gap: 4; }
.cm_icon.size_md { --icon-size: 24; }
.cm_icon.size_lg { --icon-size: 32; }
.cm_icon.size_xl { --icon-size: 40; }
.cm_icon.icon_r { flex-direction: row-reverse; }
.cm_icon.notext { gap: 0; }
.cm_icon.notext,
.cm_icon.notext > * { overflow: hidden; text-indent: -9999px; }
.cm_icon.notext:before { margin: 0 !important; }
.cm_icon.start { align-items: flex-start; }
.cm_btn.size_xs .cm_icon.size_sm { --icon-gap: 2; }

/* 아이콘 매핑 */
.cm_icon.arrow_back::before { background-image: url(../../images/common/icon_arrow_back.svg); }
.cm_icon.arrow_down::before { background-image: url(../../images/common/icon_arrow_down.svg); }
.cm_icon.arrow_drop_down::before { background-image: url(../../images/common/icon_arrow_drop_down.svg); }
.cm_icon.arrow_drop_up::before { background-image: url(../../images/common/icon_arrow_drop_up.svg); }
.cm_icon.arrow_forward::before { background-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_icon.arrow_forward2::before { background-image: url(../../images/common/icon_arrow_forward2.svg); }
.cm_icon.arrow_left::before { background-image: url(../../images/common/icon_arrow_left.svg); }
.cm_icon.arrow_right::before { background-image: url(../../images/common/icon_arrow_right.svg); }
.cm_icon.arrow_right_wt::before { background-image: url(../../images/common/icon_arrow_right_wt.svg); }
.cm_icon.arrow_right2::before { background-image: url(../../images/common/icon_arrow_right2.svg); }
.cm_icon.arrow_top::before { background-image: url(../../images/common/icon_arrow_top.svg); }
.cm_icon.arrow_up::before { background-image: url(../../images/common/icon_arrow_up.svg); }
.cm_icon.base::before { background-image: url(../../images/common/icon_base.svg); }
.cm_icon.book::before { background-image: url(../../images/common/icon_book.svg); }
.cm_icon.calendar::before { background-image: url(../../images/common/icon_calendar.svg); }
.cm_icon.calendar2::before { background-image: url(../../images/common/icon_calendar2.svg); }
.cm_icon.check::before { background-image: url(../../images/common/icon_check.svg); }
.cm_icon.checked3::before { background-image: url(../../images/common/icon_checked03.svg); }
.cm_icon.clock::before { background-image: url(../../images/common/icon_clock.svg); }
.cm_icon.cross::before { background-image: url(../../images/common/icon_cross.svg); }
.cm_icon.cross_gry::before { background-image: url(../../images/common/icon_cross_gry.svg); }
.cm_icon.cross_wt::before { background-image: url(../../images/common/icon_cross_wt.svg); }
.cm_icon.data::before { background-image: url(../../images/common/icon_data.svg); }
.cm_icon.date::before { background-image: url(../../images/common/icon_date.svg); }
.cm_icon.date_dkgry::before { background-image: url(../../images/common/icon_date_dkgry.svg); }
.cm_icon.delete::before { background-image: url(../../images/common/icon_delete.svg); }
.cm_icon.download::before { background-image: url(../../images/common/icon_download.svg); }
.cm_icon.download2::before { background-image: url(../../images/common/icon_download2.svg); }
.cm_icon.download3::before { background-image: url(../../images/common/icon_download3.svg); }
.cm_icon.download4::before { background-image: url(../../images/common/icon_download4.svg); }
.cm_icon.ellipsis_horizontal::before { background-image: url(../../images/common/icon_ellipsis_horizontal.svg); }
.cm_icon.file::before { background-image: url(../../images/common/icon_file.svg); }
.cm_icon.filter_load::before { background-image: url(../../images/common/icon_filter_load.svg); }
.cm_icon.filter_save::before { background-image: url(../../images/common/icon_filter_save.svg); }
.cm_icon.filter_save2::before { background-image: url(../../images/common/icon_filter_save02.svg); }
.cm_icon.flag::before { background-image: url(../../images/common/icon_flag.svg); }
.cm_icon.hit::before { background-image: url(../../images/common/icon_hit.svg); }
.cm_icon.home::before { background-image: url(../../images/common/icon_home.svg); }
.cm_icon.join::before { background-image: url(../../images/common/icon_join.svg); }
.cm_icon.location_fill::before { background-image: url(../../images/common/icon_location_fill.svg); }
.cm_icon.location_fill2::before { background-image: url(../../images/common/icon_location_fill02.svg); }
.cm_icon.location::before { background-image: url(../../images/common/icon_location.svg); }
.cm_icon.lock::before { background-image: url(../../images/common/icon_lock.svg); }
.cm_icon.login::before { background-image: url(../../images/common/icon_login.svg); }
.cm_icon.logout::before { background-image: url(../../images/common/icon_logout.svg); }
.cm_icon.map::before { background-image: url(../../images/common/icon_map.svg); }
.cm_icon.map2::before { background-image: url(../../images/common/icon_map2.svg); }
.cm_icon.menu::before { background-image: url(../../images/common/icon_menu.svg); }
.cm_icon.money::before { background-image: url(../../images/common/icon_money.svg); }
.cm_icon.money2::before { background-image: url(../../images/common/icon_money2.svg); }
.cm_icon.mypage::before { background-image: url(../../images/common/icon_mypage.svg); }
.cm_icon.nav_arrow::before { background-image: url(../../images/common/icon_nav_arrow.svg); }
.cm_icon.new::before { background-image: url(../../images/common/icon_new.svg); }
.cm_icon.notice::before { background-image: url(../../images/common/icon_notice.svg); }
.cm_icon.notice2::before { background-image: url(../../images/common/icon_notice2.svg); }
.cm_icon.open_new_window::before { background-image: url(../../images/common/icon_open_new_window.svg); }
.cm_icon.organization::before { background-image: url(../../images/common/icon_organization.svg); }
.cm_icon.organization2::before { background-image: url(../../images/common/icon_organization02.svg); }
.cm_icon.organization3::before { background-image: url(../../images/common/icon_organization03.svg); }
.cm_icon.plus_bold::before { background-image: url(../../images/common/icon_plus_bold.svg); }
.cm_icon.plus_bold_w::before { background-image: url(../../images/common/icon_plus_bold_w.svg); }
.cm_icon.plus::before { background-image: url(../../images/common/icon_plus.svg); }
.cm_icon.plus_primary::before { background-image: url(../../images/common/icon_plus_primary.svg); }
.cm_icon.minus::before { background-image: url(../../images/common/icon_minus.svg); }
.cm_icon.quick01::before { background-image: url(../../images/common/icon_quick01.svg); }
.cm_icon.quick02::before { background-image: url(../../images/common/icon_quick02.svg); }
.cm_icon.quick02_2::before { background-image: url(../../images/common/icon_quick02_2.svg); }
.cm_icon.quick03::before { background-image: url(../../images/common/icon_quick03.svg); }
.cm_icon.quick04::before { background-image: url(../../images/common/icon_quick04.svg); }
.cm_icon.reply::before { background-image: url(../../images/common/icon_reply.svg); }
.cm_icon.rotate::before { background-image: url(../../images/common/icon_rotate.svg); }
.cm_icon.rotate_wt::before { background-image: url(../../images/common/icon_rotate_wt.svg); }
.cm_icon.round_check::before { background-image: url(../../images/common/icon_round_check.svg); }
.cm_icon.round_check2::before { background-image: url(../../images/common/icon_round_check2.svg); }
.cm_icon.round_check_wt::before { background-image: url(../../images/common/icon_round_check_wt.svg); }
.cm_icon.search_close::before { background-image: url(../../images/common/icon_search_close.svg); }
.cm_icon.search_open::before { background-image: url(../../images/common/icon_search_open.svg); }
.cm_icon.search::before { background-image: url(../../images/common/icon_search.svg); }
.cm_icon.system::before { background-image: url(../../images/common/icon_system.svg); }
.cm_icon.uploadFile::before { background-image: url(../../images/common/icon_uploadFile.svg); }
.cm_icon.view::before { background-image: url(../../images/common/icon_view.svg); }
.cm_icon.wish_fill::before { background-image: url(../../images/common/icon_wish_fill.svg); }
.cm_icon.wish::before { background-image: url(../../images/common/icon_wish.svg); }
.cm_icon.writer::before { background-image: url(../../images/common/icon_writer.svg); }
.cm_icon.writer2::before { background-image: url(../../images/common/icon_writer2.svg); }
.cm_icon.time::before { background-image: url(../../images/common/icon_time.svg); }
.cm_icon.company::before { background-image: url(../../images/common/icon_company.svg); }
.cm_icon.write_w::before { background-image: url(../../images/common/icon_write_w.svg); }
.cm_icon.link::before { background-image: url(../../images/common/icon_link.svg); }
.cm_icon.link2::before { background-image: url(../../images/common/icon_link02.svg); }
.cm_icon.link3::before { background-image: url(../../images/common/icon_link03.svg); }
.cm_icon.bell::before { background-image: url(../../images/common/icon_bell.svg); }
.cm_icon.naver::before { background-image: url(../../images/common/icon_naver.svg); }
.cm_icon.kakao::before { background-image: url(../../images/common/icon_kakao.svg); }
.cm_icon.call::before { background-image: url(../../images/common/icon_call.svg); }
.cm_icon.call2::before { background-image: url(../../images/common/icon_call2.svg); }
.cm_icon.call3::before { background-image: url(../../images/common/icon_call3.svg); }
.cm_icon.filter_wt::before { background-image: url(../../images/common/icon_filter_wt.svg); }
.cm_icon.icon05::before { background-image: url(../../images/common/icon05.svg); }
.cm_icon.mail::before { background-image: url(../../images/common/icon_mail.svg); }
.cm_icon.print::before { background-image: url(../../images/common/icon_print.svg); }
.cm_icon.info3::before { background-image: url(../../images/common/icon_info3.svg); }
.cm_icon.info4::before { background-image: url(../../images/common/icon_info4.svg); }
.cm_icon.info5::before { background-image: url(../../images/common/icon_info5.svg); }
.cm_icon.info6::before { background-image: url(../../images/common/icon_info6.svg); }
.cm_icon.organ4_2::before { background-image: url(../../images/common/icon_organ4_2.svg); }
.cm_icon.organ5_2::before { background-image: url(../../images/common/icon_organ5_2.svg); }
.cm_icon.trash::before { background-image: url(../../images/common/icon_trash.svg); }
.cm_icon.pencil::before { background-image: url(../../images/common/icon_pencil.svg); }
.cm_icon.pencil2::before { background-image: url(../../images/common/icon_pencil2.svg); }
.cm_icon.pencil3::before { background-image: url(../../images/common/icon_pencil3.svg); }
.cm_icon.business::before { background-image: url(../../images/common/icon_business.svg); }
.cm_icon.excel::before { background-image: url(../../images/common/icon_excel.svg); }
.cm_icon.eye::before { background-image: url(../../images/common/icon_eye.svg); }
.cm_icon.like::before { background-image: url(../../images/common/icon_like.svg); }
.cm_icon.heart::before { background-image: url(../../images/common/icon_heart.svg); }
.cm_icon.satisfied::before { background-image: url(../../images/common/icon_satisfied.png); }
.cm_icon.dissatisfied::before { background-image: url(../../images/common/icon_dissatisfied.png); }
.cm_icon.send::before { background-image: url(../../images/common/icon_send.svg); }
.cm_icon.ai::before { background-image: url(../../images/common/icon_ai.svg); }
.cm_icon.medal::before { background-image: url(../../images/common/icon_medal.svg); }
.cm_icon.medal2::before { background-image: url(../../images/common/icon_medal2.svg); }
.cm_icon.organ5::before { background: none; background-color: #333; -webkit-mask-image: url("../../images/common/icon_organ5.svg"); mask-image: url("../../images/common/icon_organ5.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_icon.filter_load2::before { background: none; background-color: var(--color-primary-80); -webkit-mask-image: url("../../images/common/icon_filter_load.svg"); mask-image: url("../../images/common/icon_filter_load.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_icon.open_new_window_w::before { background: none; background-color: #fff; -webkit-mask-image: url("../../images/common/icon_open_new_window.svg"); mask-image: url("../../images/common/icon_open_new_window.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_icon.open_new_window2::before { background: none; background-color: #526ad9; -webkit-mask-image: url("../../images/common/icon_open_new_window.svg"); mask-image: url("../../images/common/icon_open_new_window.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_icon.open_new_window3::before { background: none; background-color: #00413d; -webkit-mask-image: url("../../images/common/icon_open_new_window.svg"); mask-image: url("../../images/common/icon_open_new_window.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_icon.arrow_forward_w::before { background: none; background-color: #fff; -webkit-mask-image: url("../../images/common/icon_arrow_forward.svg"); mask-image: url("../../images/common/icon_arrow_forward.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_btn.variant2 .cm_icon.open_new_window::before { background: none; background-color: var(--color-primary-80); -webkit-mask-image: url("../../images/common/icon_open_new_window.svg"); mask-image: url("../../images/common/icon_open_new_window.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }

/* 공통 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); }
}

/* 공통 공공누리 */
.cm_kogl_info { margin-top: clamp(19.2px, 1.25vw, 24px); padding: clamp(12.8px, 0.8333333333vw, 16px) clamp(19.2px, 1.25vw, 24px); border-radius: clamp(9.6px, 0.625vw, 12px); background: var(--color-background-gray-light); }
.cm_kogl_info .kogl_info_title { color: var(--color-primary-80); font-weight: bold; }
.cm_kogl_info .kogl_info_desc { color: var(--color-text-basic); }
.cm_kogl_info .kogl_info_content { display: flex; align-items: center; gap: 0 clamp(16px, 1.0416666667vw, 20px); }
.cm_kogl_info .kogl_info_img { flex-shrink: 0; }
.cm_kogl_info .kogl_info_img img { height: 38px; }
.cm_kogl_info .kogl_info_text { flex: 1; min-width: 0; font-size: 15px; }

/* 공통 태그 리스트 */
.cm_tag_list1 { display: flex; gap: clamp(8px, 0.5208333333vw, 10px); }
.cm_tag_list1 .item_btn { display: flex; align-items: center; min-height: clamp(32px, 2.0833333333vw, 40px); padding: 0 clamp(12.8px, 0.8333333333vw, 16px); gap: clamp(6.4px, 0.4166666667vw, 8px); border: 1px solid var(--color-border-gray); border-radius: 1000px; background-color: #fff; font-size: clamp(14px, 0.78125vw, 15px); }
.cm_tag_list1 .item_btn:after { display: block; flex-shrink: 0; aspect-ratio: 1/1; width: 16px; border-radius: 1000px; background: url(../../images/common/icon_cross.svg) no-repeat center/80%; background-color: #ccc; content: ""; }
.cm_tag_list1.none-btn .item_btn { cursor: default; }
.cm_tag_list1.none-btn .item_btn:after { display: none; }
.cm_tag_list2 { display: flex; flex-wrap: wrap; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_tag_list2 > li { padding: clamp(6.4px, 0.4166666667vw, 8px) clamp(8px, 0.5208333333vw, 10px); border-radius: clamp(3.2px, 0.2083333333vw, 4px); background-color: var(--color-background-gray-light); font-size: 13px; }

/* 공통 목록 - dash */
.cm_dash_list1 { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(28px, 1.8229166667vw, 35px); }
.cm_dash_list1 .dash1_item { position: relative; }
.cm_dash_list1 .dash1_item:before { display: block; position: absolute; top: 50%; right: calc(clamp(-35px, -1.8229166667vw, -28px) / 2 - 0.5px); width: 1px; height: 16px; transform: translateY(-50%); background-color: #cdd1d5; content: ""; }
.cm_dash_list1 .dash1_item:last-child:before { display: none; }
.cm_dash_list1.bar_none { gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(19.2px, 1.25vw, 24px); }
.cm_dash_list1.bar_none .dash1_item:before { display: none; }
.cm_dash_list1.type2 .dash1_item:before { background-color: var(--color-text-basic); }
.cm_dash_list1.type3 .dash1_item:before { background-color: var(--color-border-gray-dark); }
.cm_dash_list1.size_md { gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(20px, 1.3020833333vw, 25px); }
.cm_dash_list1.size_md .dash1_item:before { right: calc(clamp(-25px, -1.3020833333vw, -20px) / 2 - 0.5px); }
.cm_dash_list1.size_sm { gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(12.8px, 0.8333333333vw, 16px); font-size: clamp(13px, 0.78125vw, 15px); }
.cm_dash_list1.size_sm .dash1_item:before { right: calc(clamp(-16px, -0.8333333333vw, -12.8px) / 2 - 0.5px); height: clamp(10px, 0.625vw, 12px); }

/* 공통 목록 - dl */
.cm_dl1 { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_dl1 dl { display: flex; align-items: baseline; gap: clamp(12.8px, 0.8333333333vw, 16px) clamp(19.2px, 1.25vw, 24px); }
.cm_dl1 dl.col_1 { grid-column: 1/-1; }
.cm_dl1 dt { flex-shrink: 0; width: 110px; font-weight: bold; }
.cm_dl1 dd { flex: 1; min-width: 0; }
.cm_dl1.column { grid-template-columns: repeat(1, 1fr); }
.cm_dl2 { display: flex; }
.cm_dl2 dt { position: relative; padding-right: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_dl2 dt:before { position: absolute; top: clamp(5px, 0.3645833333vw, 7px); right: calc(clamp(12.8px, 0.8333333333vw, 16px) / 2 - 0.5px); width: 1px; height: 12px; background: #999; content: ""; }
.cm_dl2 dd { flex: 1 1 0; min-width: 0; }
.cm_dl3 { display: flex; gap: clamp(4px, 0.4166666667vw, 8px) clamp(8px, 0.8333333333vw, 16px); }
.cm_dl3 ~ .cm_dl3 { margin-top: 0.8rem; }
.cm_dl3 dt { display: inline-flex; align-items: center; justify-content: center; width: clamp(80px, 5.2083333333vw, 100px); height: clamp(27.2px, 1.7708333333vw, 34px); border-radius: 0.6rem; background: #ccc; font-size: clamp(13.6px, 0.8854166667vw, 17px); }
.cm_dl3 dd { flex: 1 1 0; min-width: 0; margin-top: 5px; }
.cm_dl4 { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_dl4 dl { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(12.8px, 0.8333333333vw, 16px); font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_dl4 dt { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; min-width: clamp(64px, 4.1666666667vw, 80px); min-height: clamp(27.2px, 1.7708333333vw, 34px); border-radius: 1000px; background: var(--color-background-primary); color: #fff; }
.cm_dl4 dd { display: flex; flex: 1; flex-wrap: wrap; align-items: center; min-width: 0; gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(12.8px, 0.8333333333vw, 16px); color: var(--color-text-basic); }
.cm_dl5 { display: flex; align-items: baseline; gap: clamp(3.2px, 0.2083333333vw, 4px) clamp(6.4px, 0.4166666667vw, 8px); }
.cm_dl5 ~ .cm_dl5 { margin-top: 0.8rem; }
.cm_dl5 dt { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; padding: clamp(1.6px, 0.1041666667vw, 2px) clamp(6.4px, 0.4166666667vw, 8px); border-radius: clamp(3.2px, 0.2083333333vw, 4px); background: var(--color-border-gray-darker); color: #fff; font-size: clamp(14px, 0.78125vw, 15px); }
.cm_dl5 dd { flex: 1 1 0; min-width: 0; margin-top: 5px; }
.cm_info_box { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(20.8px, 1.3541666667vw, 26px); }
.cm_info_box .info_label { flex-shrink: 0; font-weight: bold; font-size: clamp(15.2px, 0.9895833333vw, 19px); }
.cm_info_box.row { flex-direction: column; align-items: stretch; }
.cm_info_box2 { display: flex; align-items: center; gap: clamp(19.2px, 1.25vw, 24px); }
.cm_info_box2 .info_icon { flex-shrink: 0; aspect-ratio: 1/1; width: clamp(51.2px, 3.3333333333vw, 64px); border-radius: 1000px; background-position: center; background-size: contain; background-repeat: no-repeat; }
.cm_info_box2 .info_icon.icon1 { background-image: url(../../images/common/icon_lock.png); }
.cm_info_box2 .info_icon.icon2 { background-image: url(../../images/common/icon_call.svg); background-size: clamp(25.6px, 1.6666666667vw, 32px); background-color: var(--color-background-gray-light); }
.cm_info_box2 .info_content { display: flex; flex: 1; flex-direction: column; min-width: 0; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_info_box2 .info_label { font-weight: bold; font-size: clamp(15.2px, 0.9895833333vw, 19px); }

/* 공통 회원가입 스텝 */
.cm_join_step { margin-bottom: clamp(30px, 4.1666666667vw, 80px); }
.cm_join_step .step_container { display: flex; position: relative; justify-content: center; }
.cm_join_step .step_item { display: flex; position: relative; flex-shrink: 0; flex-direction: column; align-items: center; width: clamp(144px, 9.375vw, 180px); gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_join_step .step_item:after { z-index: -1; position: absolute; top: clamp(24px, 1.7708333333vw, 34px); left: 100%; width: clamp(20px, 4.4791666667vw, 86px); height: 2px; transform: translateX(-50%); background-image: linear-gradient(to right, #ccc 50%, transparent 50%); background-size: clamp(4.8px, 0.3125vw, 6px) 100%; background-repeat: repeat-x; content: ""; }
.cm_join_step .step_item:last-child:after { display: none; }
.cm_join_step .step_icon { display: flex; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(45px, 3.6458333333vw, 70px); border: 1px solid #ccc; border-radius: 50%; background-color: #fff; }
.cm_join_step .step_icon:before { display: block; aspect-ratio: 1/1; width: 40%; background-position: center; background-size: contain; background-repeat: no-repeat; content: ""; }
.cm_join_step .step_item.step1 .step_icon:before { background-color: #808080; -webkit-mask-image: url("../../images/common/join_step1.svg"); mask-image: url("../../images/common/join_step1.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_join_step .step_item.step2 .step_icon:before { background-color: #808080; -webkit-mask-image: url("../../images/common/join_step2.svg"); mask-image: url("../../images/common/join_step2.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_join_step .step_item.step3 .step_icon:before { background-color: #808080; -webkit-mask-image: url("../../images/common/join_step3.svg"); mask-image: url("../../images/common/join_step3.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_join_step .step_item.step4 .step_icon:before { background-color: #808080; -webkit-mask-image: url("../../images/common/join_step4.svg"); mask-image: url("../../images/common/join_step4.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_join_step .step_item.step5 .step_icon:before { background-color: #808080; -webkit-mask-image: url("../../images/common/join_step5.svg"); mask-image: url("../../images/common/join_step5.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_join_step .step_item.step1.active .step_icon:before { background-color: #fff; -webkit-mask-image: url("../../images/common/join_step1.svg"); mask-image: url("../../images/common/join_step1.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_join_step .step_item.step2.active .step_icon:before { background-color: #fff; -webkit-mask-image: url("../../images/common/join_step2.svg"); mask-image: url("../../images/common/join_step2.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_join_step .step_item.step3.active .step_icon:before { background-color: #fff; -webkit-mask-image: url("../../images/common/join_step3.svg"); mask-image: url("../../images/common/join_step3.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_join_step .step_item.step4.active .step_icon:before { background-color: #fff; -webkit-mask-image: url("../../images/common/join_step4.svg"); mask-image: url("../../images/common/join_step4.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_join_step .step_item.step5.active .step_icon:before { background-color: #fff; -webkit-mask-image: url("../../images/common/join_step5.svg"); mask-image: url("../../images/common/join_step5.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_join_step .step_item.active .step_icon { border-color: transparent; background-color: var(--color-primary-80); }
.cm_join_step .step_label { margin: 0; color: #333; font-weight: 400; font-size: clamp(12px, 0.8854166667vw, 17px); line-height: 1.2; text-align: center; }
.cm_join_step .step_item.active .step_label { font-weight: 700; }

/* 문의처 */
.cm_call_list1 { display: flex; gap: clamp(19.2px, 1.25vw, 24px); }
.cm_call_list1 > * { flex: 1 1 0; min-width: 0; }

/* 아코디언 */
.cm_accordion { display: flex; flex-direction: column; margin-bottom: clamp(32px, 2.0833333333vw, 40px); gap: clamp(19.2px, 1.25vw, 24px); background: #fff; }
.cm_accordion .accordion_item { overflow: hidden; border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_accordion .accordion_button { display: flex; align-items: center; width: 100%; padding: clamp(16px, 1.0416666667vw, 20px) clamp(19.2px, 1.25vw, 24px); gap: clamp(12.8px, 0.8333333333vw, 16px); border: 0; background: transparent; text-align: left; cursor: pointer; transition: background-color 180ms ease, box-shadow 180ms ease; }
.cm_accordion .accordion_button:focus-visible { outline: 0; box-shadow: inset 0 0 0 2px rgba(16, 185, 129, 0.35); }
.cm_accordion .accordion_icon { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(32px, 2.0833333333vw, 40px); border-radius: clamp(9.6px, 0.625vw, 12px); background: var(--color-background-gray); background-image: url(../../images/common/icon_organ4_2.svg); background-position: center; background-size: 60%; background-repeat: no-repeat; }
.cm_accordion .accordion_text { font-weight: 700; font-size: clamp(19.2px, 1.25vw, 24px); line-height: 1.3; }
.cm_accordion .accordion_toggle { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(25.6px, 1.6666666667vw, 32px); margin-left: auto; border: 1px solid var(--color-border-gray); border-radius: clamp(3.2px, 0.2083333333vw, 4px); background: #fff; background-image: url(../../images/common/icon_arrow_down.svg); background-position: center; background-size: 60%; background-repeat: no-repeat; transition: background-color 180ms ease, border-color 180ms ease, transform 220ms ease; }
.cm_accordion .accordion_item.is_open .accordion_toggle { background-image: url(../../images/common/icon_arrow_up.svg); }
.cm_accordion .accordion_panel { height: 0; overflow: hidden; transition: height 260ms ease; }
.cm_accordion .accordion_panel_inner { padding: clamp(32px, 2.0833333333vw, 40px); border-top: 1px solid var(--color-border-gray); }
.cm_accordion .accordion_panel_inner .cm_box3 + .accordion_section { margin-top: clamp(24px, 1.6666666667vw, 32px); }
.cm_accordion .accordion_section + .accordion_section { margin-top: 28px; padding-top: 28px; border-top: 1px dashed #d1d5db; }
.cm_accordion .accordion_section_title { margin-bottom: clamp(12.8px, 0.8333333333vw, 16px); color: var(--color-text-primary); font-weight: bold; font-size: clamp(15.2px, 0.9895833333vw, 19px); line-height: 1.3; }
.cm_accordion .accordion_kv { display: grid; gap: 14px; }
.cm_accordion .accordion_kv_item { display: grid; grid-template-columns: 140px 1fr; align-items: baseline; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_accordion .accordion_key { position: relative; padding-left: clamp(19.2px, 1.25vw, 24px); font-weight: 700; }
.cm_accordion .accordion_key::before { position: absolute; top: 0.75em; left: 0.3em; width: clamp(4px, 0.2604166667vw, 5px); height: clamp(4px, 0.2604166667vw, 5px); transform: translateY(-50%); border-radius: 50%; background: #111827; content: ""; }
@keyframes loadingRotate {
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}
@-webkit-keyframes loadingRotate {
	from { -webkit-transform: rotate(0deg); }
	to { -webkit-transform: rotate(360deg); }
}
.cm_loading { position: relative; }
.cm_loading:before { z-index: -1; position: absolute; inset: 0; border: 2px solid #ccc; border-radius: 50%; content: ""; }
.cm_loading .icon { width: 20px; height: 20px; border: solid 2px var(--color-primary-80); border-radius: 50%; border-right-color: transparent; border-bottom-color: transparent; -webkit-transition: all 0.75s ease-in; -webkit-animation-name: loadingRotate; -webkit-animation-duration: 1s; -webkit-animation-iteration-count: infinite; -webkit-animation-timing-function: linear; animation-duration: 1s; animation-timing-function: linear; animation-iteration-count: infinite; animation-name: loadingRotate; transition: all 0.75s ease-in; }

/* 공통 modal */
[class*=cm_modal] { display: none; z-index: 2050; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; }
[class*=cm_modal] .dim { width: 100%; height: 100%; background: rgba(0, 0, 0, 0.25); }
[class*=cm_modal] .modal_container { position: absolute; top: 50%; left: 50%; width: calc(100% - clamp(30px, 2.0833333333vw, 40px)); max-width: 1040px; height: max-content; max-height: calc(100dvh - 60px); overflow: hidden; transform: translate(-50%, -50%); background: #fff; }
[class*=cm_modal].size_md .modal_container { max-width: 800px; }
[class*=cm_modal].size_auto .modal_container { width: auto; max-width: none; }
[class*=cm_modal].active { display: block; }
.cm_modal1 .modal_container { display: flex; flex-direction: column; border-radius: clamp(8px, 0.625vw, 12px); }
.cm_modal1 .modal_container .modal_head { position: relative; padding: clamp(24px, 1.6666666667vw, 32px) clamp(20px, 2.0833333333vw, 40px) clamp(12px, 0.8333333333vw, 16px); padding-right: clamp(38px, 2.5vw, 48px); border-bottom: 1px solid var(--color-border-gray); }
.cm_modal1 .modal_container .modal_head .title { font-weight: 700; font-size: clamp(19px, 1.25vw, 24px); }
.cm_modal1 .modal_container .modal_head .modal_close { display: flex; position: absolute; top: clamp(24px, 1.6666666667vw, 32px); right: clamp(28px, 2.0833333333vw, 40px); align-items: center; justify-content: center; width: clamp(20px, 1.6666666667vw, 32px); height: clamp(20px, 1.6666666667vw, 32px); background: url(../../images/common/icon_cross.svg) no-repeat center/contain; }
.cm_modal1 .modal_container .modal_body { height: max-content; min-height: 55vh; max-height: calc(100% - 117px); padding: clamp(20px, 1.25vw, 24px) clamp(20px, 2.0833333333vw, 40px) clamp(28px, 2.0833333333vw, 40px); overflow: auto; }
.cm_modal1.type_notitle .modal_container .modal_head { border-bottom: 0; }
.cm_modal1.type_notitle .modal_container .modal_head .modal_close { top: clamp(16px, 1.25vw, 24px); }
.cm_modal2 .modal_container { max-width: 536px; padding: clamp(32px, 2.0833333333vw, 40px) clamp(12px, 0.8333333333vw, 16px); border-radius: clamp(16px, 1.25vw, 24px); }
.cm_modal2 .modal_container .modal_head { margin-bottom: clamp(16px, 1.25vw, 24px); padding-right: clamp(10px, 2.6041666667vw, 50px); padding-left: clamp(10px, 2.6041666667vw, 50px); }
.cm_modal2 .modal_container .modal_head .title { font-weight: 700; font-size: clamp(19px, 1.25vw, 24px); }
.cm_modal2 .modal_container .modal_body { position: relative; padding-right: clamp(10px, 2.6041666667vw, 50px); padding-left: clamp(10px, 2.6041666667vw, 50px); }
.cm_modal2 .modal_container .modal_foot { display: flex; align-items: center; justify-content: space-between; margin-top: clamp(16px, 1.25vw, 24px); padding-right: clamp(40px, 2.6041666667vw, 50px); padding-left: clamp(40px, 2.6041666667vw, 50px); }
.cm_modal3 .modal_container { max-width: 560px; padding: clamp(32px, 2.0833333333vw, 40px); border-radius: clamp(16px, 1.25vw, 24px); }
.cm_modal3 .modal_container .modal_head { position: relative; margin-bottom: clamp(16px, 1.25vw, 24px); }
.cm_modal3 .modal_container .modal_head .title { font-weight: 700; font-size: clamp(19px, 1.25vw, 24px); }
.cm_modal3 .modal_container .modal_head .modal_close { display: flex; position: absolute; top: 0; right: 0; align-items: center; justify-content: center; width: clamp(20px, 1.6666666667vw, 32px); height: clamp(20px, 1.6666666667vw, 32px); background: url(../../images/common/icon_cross.svg) no-repeat center/contain; }
.cm_modal3 .modal_container .modal_body { position: relative; }
.cm_modal3 .modal_container .modal_foot { display: flex; align-items: center; justify-content: space-between; margin-top: clamp(16px, 1.25vw, 24px); padding-right: clamp(40px, 2.6041666667vw, 50px); padding-left: clamp(40px, 2.6041666667vw, 50px); }

/* [사파리 높이 해결] % 대신 vh를 사용하여 높이 기준점을 강제 부여 */
.mainSearchResult .modal_container .modal_body { height: auto !important; min-height: 150px !important; max-height: calc(100vh - 200px) !important; padding-top: 0; overflow: auto !important; }
.mainSearchResult.active .modal_container { height: auto !important; max-height: calc(100vh - 60px) !important; }

/* 모달 sub (모달 css 여기에) */
.location_modal .text_info_area { margin-bottom: clamp(16px, 1.25vw, 24px); }
.location_modal .text_info_area .title { font-weight: 700; font-size: clamp(17px, 1.25vw, 24px); }
.location_modal .map_area .map { position: relative; aspect-ratio: 960/500; }
.location_modal .map_area .map.size_sm { aspect-ratio: 960/300; }
.location_modal .map_area .map .root_daum_roughmap_landing,
.location_modal .map_area .map .root_daum_roughmap .wrap_map { width: 100%; height: 100%; }
.location_modal .map_area .map .root_daum_roughmap .cont { display: none; }
.verify_modal .verify_modal_content { padding: clamp(15px, 1.6666666667vw, 32px); border: 1px solid #e9ecff; border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #f2f4ff; }
.verify_modal .verify_modal_desc { display: flex; flex-direction: column; align-items: center; margin-bottom: clamp(25.6px, 1.6666666667vw, 32px); gap: clamp(9.6px, 0.625vw, 12px); }
.verify_modal .verify_modal_desc:before { display: block; aspect-ratio: 1/1; width: clamp(51.2px, 3.3333333333vw, 64px); border-radius: 1000px; background: #fff url(../../images/common/icon_lock2.svg) no-repeat center/50%; content: ""; }
.verify_modal .verify_modal_input_wrap { display: flex; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.verify_modal .verify_modal_form { display: flex; align-items: center; justify-content: center; padding: clamp(15px, 2.0833333333vw, 40px); gap: clamp(8px, 0.8333333333vw, 16px); border: 1px solid #ccc; border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #fff; }
.verify_modal .verify_modal_label { flex-shrink: 0; font-weight: bold; }
.verify_modal .verify_modal_inputbox { position: relative; }
.verify_modal .verify_modal_inputbox .verify_input { width: 200px; padding-right: 90px; }
.verify_modal .verify_modal_inputbox .verify_modal_timer { position: absolute; top: 50%; right: clamp(12.8px, 0.8333333333vw, 16px); transform: translateY(-50%); color: #bd2c0f; font-size: 13px; line-height: 1.2; text-align: center; }
.verify_modal .verify_modal_inputbox .verify_modal_timer br { display: none; }
.verify_modal .verify_btn { flex-shrink: 0; height: auto; border-color: #666; }
.modal_notification.cm_modal2 .modal_container .modal_head .title .notification_badge { display: inline-flex; align-items: center; justify-content: center; height: clamp(26px, 1.7708333333vw, 34px); padding: 0 clamp(6px, 0.625vw, 12px); border-radius: 100px; background: #333; color: #fff; font-weight: 700; font-size: clamp(14px, 0.8854166667vw, 17px); }
.mainSearchResult .modal_container .modal_head { border-bottom: 0; }
.cm_window_popup { position: static; overflow-x: hidden; }
.cm_window_popup .modal_container { position: static; width: 100%; max-width: none; max-height: none; transform: none; }
.login_guide_modal { font-size: clamp(15.2px, 0.9895833333vw, 19px); word-break: keep-all; }
.login_guide_modal .cm_box2 { padding: clamp(20px, 1.6666666667vw, 32px); border: 1px solid #ccc; }
.login_guide_modal .cm_box2 .box_content { display: flex; align-items: center; gap: 2.4rem 4rem; font-size: clamp(15.2px, 0.9895833333vw, 19px); }
.login_guide_modal .cm_box2 .box_content .logo { width: 21rem; }
.login_guide_modal .cm_box2 .box_content .text { flex: 1 1 0; min-width: 0; }
.cm_modal1.calendar3_modal { --legend-a: #ff7251; --legend-b: #5fd996; --legend-c: #715bf9; --legend-d: #0b78cb; }
.cm_modal1.calendar3_modal .modal_container { max-width: clamp(360px, 22.9166666667vw, 440px); border-radius: clamp(12px, 0.8333333333vw, 16px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); }
.cm_modal1.calendar3_modal .modal_head { padding: clamp(16px, 1.0416666667vw, 20px) clamp(20px, 1.25vw, 24px) clamp(12px, 0.8333333333vw, 16px); padding-right: clamp(38px, 2.5vw, 48px); }
.cm_modal1.calendar3_modal .modal_head .title { display: flex; align-items: center; gap: clamp(6px, 0.4166666667vw, 8px); color: #191919; font-weight: 700; font-size: clamp(16px, 0.9375vw, 18px); }
.cm_modal1.calendar3_modal .modal_head .modal_close { top: clamp(16px, 1.0416666667vw, 20px); right: clamp(20px, 1.25vw, 24px); width: clamp(18px, 1.0416666667vw, 20px); height: clamp(18px, 1.0416666667vw, 20px); }
.cm_modal1.calendar3_modal .modal_body { max-height: calc(100dvh - 160px); padding: clamp(16px, 1.0416666667vw, 20px) clamp(20px, 1.25vw, 24px) clamp(20px, 1.4583333333vw, 28px); }
.cm_modal1.calendar3_modal .reserve_detail { display: flex; flex-direction: column; gap: clamp(16px, 1.0416666667vw, 20px); }
.cm_modal1.calendar3_modal .reserve_group { display: flex; flex-direction: column; gap: clamp(8px, 0.625vw, 12px); }
.cm_modal1.calendar3_modal .reserve_group_title { position: relative; padding-left: clamp(12px, 0.7291666667vw, 14px); color: #191919; font-weight: 700; font-size: clamp(15px, 0.8854166667vw, 17px); line-height: 1.4; word-break: keep-all; }
.cm_modal1.calendar3_modal .reserve_group_title:before { position: absolute; top: 50%; left: 0; width: clamp(6px, 0.4166666667vw, 8px); height: clamp(6px, 0.4166666667vw, 8px); transform: translateY(-50%); border-radius: 50%; content: ""; }
.cm_modal1.calendar3_modal .reserve_group_title.legend-a:before { background: var(--legend-a); }
.cm_modal1.calendar3_modal .reserve_group_title.legend-b:before { background: var(--legend-b); }
.cm_modal1.calendar3_modal .reserve_group_title.legend-c:before { background: var(--legend-c); }
.cm_modal1.calendar3_modal .reserve_group_title.legend-d:before { background: var(--legend-d); }
.cm_modal1.calendar3_modal .reserve_time_list { display: flex; flex-direction: column; padding: clamp(10px, 0.625vw, 12px); gap: clamp(6px, 0.4166666667vw, 8px); border-radius: clamp(6px, 0.4166666667vw, 8px); background: #f9f9f9; }
.cm_modal1.calendar3_modal .reserve_time_item { display: flex; align-items: center; justify-content: space-between; gap: clamp(8px, 0.625vw, 12px); }
.cm_modal1.calendar3_modal .reserve_time { position: relative; padding-left: clamp(10px, 0.625vw, 12px); color: #333; font-size: clamp(13px, 0.78125vw, 15px); }
.cm_modal1.calendar3_modal .reserve_time:before { position: absolute; top: 50%; left: 0; width: clamp(3px, 0.2083333333vw, 4px); height: clamp(3px, 0.2083333333vw, 4px); transform: translateY(-50%); border-radius: 50%; background: #666; content: ""; }
.cm_modal1.calendar3_modal .reserve_status { display: inline-flex; align-items: center; justify-content: center; min-width: clamp(48px, 2.9166666667vw, 56px); height: clamp(24px, 1.4583333333vw, 28px); padding: 0 clamp(8px, 0.5208333333vw, 10px); border-radius: clamp(4px, 0.3125vw, 6px); font-weight: 700; font-size: clamp(12px, 0.6770833333vw, 13px); line-height: 1; }
.cm_modal1.calendar3_modal .reserve_status.is_accept { background: #674ed7; color: #fff; }
.cm_modal1.calendar3_modal .reserve_status.is_review { background: #4d5158; color: #fff; }
.cm_modal1.calendar3_modal .reserve_status.is_approve { background: #008b5f; color: #fff; }
.cm_modal1.calendar3_modal .reserve_empty { display: flex; flex-direction: column; align-items: center; padding: clamp(24px, 1.5625vw, 30px) 0; gap: clamp(8px, 0.625vw, 12px); }
.cm_modal1.calendar3_modal .reserve_empty_icon { display: block; aspect-ratio: 1/1; width: clamp(25.6px, 1.6666666667vw, 32px); background: url(../../images/common/icon_date_no.svg) no-repeat center/contain; }
.cm_modal1.calendar3_modal .reserve_empty_text { color: #666; font-size: clamp(13px, 0.78125vw, 15px); text-align: center; }

/* 이용안내 */
[class*=org_guide_modal].cm_modal1 .modal_container .modal_body { padding-right: clamp(20px, 1.8229166667vw, 35px); padding-left: clamp(20px, 1.7708333333vw, 34px); }
[class*=org_guide_modal].cm_modal1 .modal_body .info_box_list { display: flex; flex-direction: column; gap: clamp(10px, 0.8333333333vw, 16px); }
[class*=org_guide_modal].cm_modal1 .modal_body .info_box_list .box_title { margin-bottom: clamp(8px, 0.5208333333vw, 10px); font-weight: 700; font-size: clamp(15.2px, 0.9895833333vw, 19px); }

/* 공통 데이터 없음 */
.cm_nodata1 { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: clamp(40px, 2.6041666667vw, 50px) 0; font-weight: 600; text-align: center; }
.cm_nodata1 .img_nodata1 { max-width: clamp(112px, 7.2916666667vw, 140px); margin-bottom: clamp(24px, 1.5625vw, 30px); }
.cm_nodata2 { display: flex; flex-direction: column; align-items: center; justify-content: center; height: clamp(180px, 13.5416666667vw, 260px); padding: clamp(20px, 1.6666666667vw, 32px); gap: clamp(16px, 1.25vw, 24px); border: 1px solid #e0e3e7; border-radius: clamp(8px, 0.625vw, 12px); text-align: center; }
.cm_nodata2.no_border { border: 0; }

/* 공통 오버뷰 */
.cm_overview1 .ovw1_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_overview1 .ovw1_list > li { min-width: 0; }
.cm_overview1 .ovw1_box { display: flex; flex-direction: column; justify-content: space-between; height: 100%; padding: clamp(19.2px, 1.25vw, 24px); gap: clamp(19.2px, 1.25vw, 24px); border: 1px solid var(--color-border-gray); border-radius: clamp(6.4px, 0.4166666667vw, 8px); background: var(--color-background-white); }
.cm_overview1 .ovw1_header { display: flex; flex-direction: column; margin-bottom: 0; gap: clamp(8px, 0.5208333333vw, 10px); }
.cm_overview1 .ovw1_info_header { margin-bottom: 0; }
.cm_overview1 .ovw1_org { margin-bottom: 4px; color: var(--color-text-primary); }
.cm_overview1 .ovw1_title { display: inline-block; max-width: 100%; overflow: hidden; font-weight: bold; font-size: clamp(19.2px, 1.25vw, 24px); line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.cm_overview1 a.ovw1_title:hover { color: var(--color-text-primary); }
.cm_overview1 .ovw1_footer { margin-bottom: 0; }
.cm_overview1 .ovw1_logos { display: flex; align-items: center; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview1 .ovw1_logo { max-height: clamp(20.8px, 1.3541666667vw, 26px); }
.cm_overview1 .ovw1_info { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview1 .ovw1_info .cm_dash_list1 { font-size: clamp(16px, 0.8854166667vw, 17px); }
.cm_overview1 .ovw1_wish_btn.active .cm_icon.wish:before { background-image: url(../../images/common/icon_wish_fill.svg); }
.cm_overview1 .ovw1_btn { display: flex; align-items: center; gap: clamp(6px, 0.5208333333vw, 10px); }
.cm_overview1 .ovw1_btn .btn_more { flex: 1 1 0; min-width: 0; }
.cm_overview1.col-01 .ovw1_list { grid-template-columns: repeat(1, 1fr); }
.cm_overview2 .ovw2_box { display: flex; overflow: hidden; border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview2 .ovw2_period { flex-shrink: 0; min-width: clamp(240px, 15.625vw, 300px); padding: clamp(15px, 1.6666666667vw, 32px) clamp(20px, 2.0833333333vw, 40px); background: var(--color-background-gray-light); }
.cm_overview2 .ovw2_label { color: var(--color-text-basic); font-weight: bold; font-size: clamp(14px, 0.78125vw, 15px); text-align: center; }
.cm_overview2 .ovw2_time { color: var(--color-text-primary); font-weight: bold; font-size: clamp(20px, 1.25vw, 24px); text-align: center; }
.cm_overview2 .ovw2_date_list { display: flex; flex-direction: column; align-items: center; margin-top: clamp(12.8px, 0.8333333333vw, 16px); gap: clamp(8px, 0.5208333333vw, 10px); }
.cm_overview2 .ovw2_date_list dl { display: flex; align-items: center; width: 100%; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview2 .ovw2_date_list dt { flex-shrink: 0; }
.cm_overview2 .ovw2_date_list dd { flex: 1; min-width: 0; }
.cm_overview2 .ovw2_content { display: flex; flex: 1; align-items: center; min-width: 0; padding: clamp(15px, 1.6666666667vw, 32px) clamp(20px, 2.0833333333vw, 40px); }
.cm_overview2 .ovw2_inner { width: 100%; }
.cm_overview2 .ovw2_item { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(19.2px, 1.25vw, 24px); }
.cm_overview2 .ovw2_item dt { flex-shrink: 0; font-weight: bold; }
.cm_overview2 .ovw2_item dd { display: flex; flex: 1; align-items: center; min-width: 0; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview2 .ovw2_item dd .ovw2_text { flex: 1 1 0; min-width: 0; }
.cm_overview2 .ovw2_item dd .cm_btn.variant2 { width: 154px; }
.cm_overview3 .ovw3_list { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_overview3 .ovw3_list > li { min-width: 0; }
.cm_overview3 .ovw3_box { display: block; height: 100%; overflow: hidden; border: 1px solid var(--color-border-gray); border-radius: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview3 .ovw3_thumb { aspect-ratio: 4/3; }
.cm_overview3 .ovw3_thumb_img { width: 100%; height: 100%; object-fit: fill; }
.cm_overview3 .ovw3_title { display: -webkit-box; -webkit-line-clamp: 2; font-weight: bold; font-size: clamp(15.2px, 0.9895833333vw, 19px); -webkit-box-orient: vertical; margin-bottom: clamp(12.8px, 0.8333333333vw, 16px); overflow: hidden; text-overflow: ellipsis; }
.cm_overview3 .ovw3_content { padding: clamp(15px, 1.25vw, 24px); }
.cm_overview3 .ovw1_info { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview4 .ovw4_list { display: flex; flex-wrap: wrap; justify-content: center; gap: clamp(10px, 0.8333333333vw, 16px); }
.cm_overview4 .ovw4_list > li { width: calc((100% - clamp(10px, 0.8333333333vw, 16px) * 3) / 4); }
.cm_overview4 .ovw4_box { display: flex; position: relative; flex-direction: column; height: 100%; padding: clamp(15px, 1.25vw, 24px); gap: clamp(6.4px, 0.4166666667vw, 8px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview4 .ovw4_recent { z-index: 1; position: absolute; top: clamp(-9px, -0.46875vw, -7.2px); right: clamp(18.4px, 1.1979166667vw, 23px); padding: clamp(4.8px, 0.3125vw, 6px) clamp(6.4px, 0.4166666667vw, 8px); border-radius: clamp(4.8px, 0.3125vw, 6px); background: var(--color-point-80); box-shadow: 0 clamp(1.6px, 0.1041666667vw, 2px) clamp(4.8px, 0.3125vw, 6px) 0 rgba(0, 0, 0, 0.25); color: #fff; font-weight: bold; font-size: clamp(14px, 0.78125vw, 15px); line-height: 1; }
.cm_overview4 .ovw4_recent:before { display: block; position: absolute; top: calc(100% - 2px); right: clamp(8px, 0.5208333333vw, 10px); aspect-ratio: 1/1; width: clamp(8px, 0.5208333333vw, 10px); background-image: url(../../images/common/polygon1.svg); background-position: center; background-size: contain; background-repeat: no-repeat; content: ""; }
.cm_overview4 .ovw4_title { font-weight: bold; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview4 .ovw4_title:before { display: block; aspect-ratio: 1/1; width: clamp(25px, 1.875vw, 36px); margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); background-position: center; background-size: contain; background-repeat: no-repeat; content: ""; }
.cm_overview4 .ovw4_list > li.simple .ovw4_title:before { background-image: url(../../images/common/login_simple.svg); }
.cm_overview4 .ovw4_list > li.mobileid .ovw4_title:before { background-image: url(../../images/common/login_mobileid.svg); }
.cm_overview4 .ovw4_list > li.citizencard .ovw4_title:before { background-image: url(../../images/common/login_citizencard.svg); }
.cm_overview4 .ovw4_list > li.id .ovw4_title:before { background-image: url(../../images/common/login_id.svg); }
.cm_overview4 .ovw4_list > li.sns .ovw4_title:before { background-image: url(../../images/common/login_sns.svg); }
.cm_overview4 .ovw4_list > li.d_certificate .ovw4_title:before { background-image: url(../../images/common/login_d_certificate.svg); }
.cm_overview4 .ovw4_list > li.f_certificate .ovw4_title:before { background-image: url(../../images/common/login_f_certificate.svg); }
.cm_overview4 .ovw4_box:before { display: none; z-index: 1; position: absolute; top: -1px; right: -1px; bottom: -1px; left: -1px; border: 2px solid var(--color-border-primary-dark); border-radius: inherit; content: ""; }
.cm_overview4 .ovw4_list > li.active .ovw4_box:before { display: block; }
.cm_overview4.type2 .ovw4_list > li { width: calc((100% - clamp(10px, 0.8333333333vw, 16px) * 3) / 4); }
.cm_overview5 .ovw5_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(16px, 1.25vw, 24px); }
.cm_overview5 .ovw5_item { position: relative; border: 1px solid #ccc; border-radius: 0.8rem; background: #fff; }
.cm_overview5 .ovw5_box { display: block; width: 100%; height: 100%; padding: clamp(16px, 1.25vw, 24px); }
.cm_overview5 .ovw5_box .box_head { display: flex; align-items: center; margin-bottom: clamp(12px, 0.8333333333vw, 16px); gap: 0.8rem; }
.cm_overview5 .ovw5_box .box_head .cm_dash_list1 { flex: 1 1 0; min-width: 0; gap: 2px clamp(12.8px, 0.8333333333vw, 16px); color: #4d4d4d; }
.cm_overview5 .ovw5_box .box_title { margin-bottom: clamp(12px, 0.8333333333vw, 16px); font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview5 .ovw5_box:hover .box_title { text-decoration: underline; }
.cm_overview5 .ovw5_box .box_desc { display: flex; align-items: center; height: clamp(49.6px, 3.2291666667vw, 62px); margin-bottom: clamp(12px, 0.8333333333vw, 16px); padding: 0 clamp(8px, 0.8333333333vw, 16px); border-radius: 0.8rem; background: #f2f2f2; color: var(--color-primary-90); font-weight: 700; font-size: clamp(12px, 0.78125vw, 15px); }
.cm_overview5 .ovw5_box .box_info { padding-right: 5.6rem; }
.cm_overview5 .ovw5_box .box_info .cm_dl2 ~ .cm_dl2 { margin-top: 0.8rem; }
.cm_overview5 .ovw5_box .box_foot .ovw5_logos { position: absolute; bottom: clamp(16px, 1.25vw, 24px); left: clamp(16px, 1.25vw, 24px); }
.cm_overview5 .ovw5_box .box_foot .ovw5_logos .ovw5_logo { max-height: clamp(20.8px, 1.3541666667vw, 26px); }
.cm_overview5 .box_btn { position: absolute; right: clamp(12px, 1.0416666667vw, 20px); bottom: clamp(12px, 0.8333333333vw, 16px); }
.cm_overview5 .box_btn2 { display: flex; align-items: center; justify-content: space-between; margin-top: clamp(4px, 0.4166666667vw, 8px); }
.cm_overview5 .box_btn2 img { max-height: clamp(20.8px, 1.3541666667vw, 26px); }
.cm_overview5 .ovw5_item.nodata { grid-column: span 2; border: 0; }
.cm_overview5.type2 .ovw5_box { display: flex; flex-direction: column; justify-content: space-between; }
.cm_overview5.type2 .ovw5_box .box_info { padding-right: 0; }
.cm_overview6 .ovw6_list { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(16px, 1.25vw, 24px); }
.cm_overview6 .ovw6_box { display: flex; flex-direction: column; justify-content: space-between; height: 100%; padding: clamp(16px, 1.25vw, 24px); border: 1px solid var(--color-border-gray); border-radius: 0.8rem; background: #fff; }
.cm_overview6 .ovw6_box .box_head { display: flex; flex-wrap: wrap; align-items: center; margin-bottom: clamp(12px, 0.8333333333vw, 16px); gap: 0.8rem; }
.cm_overview6 .ovw6_box .box_head .cm_badge.badge1 { height: clamp(24px, 1.5625vw, 30px); padding: 0 clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview6 .ovw6_box .box_title { margin-bottom: clamp(8px, 0.625vw, 12px); font-weight: 700; font-size: clamp(15.2px, 0.9895833333vw, 19px); }
.cm_overview6 .ovw6_box .box_title a:hover { text-decoration: underline; }
.cm_overview6 .ovw6_box .box_desc { height: 8rem; margin-bottom: clamp(8px, 0.625vw, 12px); }
.cm_overview6 .ovw6_box .box_info { margin-bottom: clamp(8px, 0.625vw, 12px); }
.cm_overview6 .ovw6_box .box_info .cm_dl2 { font-size: clamp(13px, 0.78125vw, 15px); }
.cm_overview6 .ovw6_box .box_info .cm_dl2 ~ .cm_dl2 { margin-top: 4px; }
.cm_overview6 .ovw6_box .box_foot { margin-bottom: clamp(12px, 0.8333333333vw, 16px); }
.cm_overview6 .ovw6_box .box_foot .agency_logo img { max-height: clamp(20.8px, 1.3541666667vw, 26px); }
.cm_overview6 .ovw6_box .box_btn { display: flex; align-items: center; gap: clamp(6px, 0.5208333333vw, 10px); }
.cm_overview6 .ovw6_box .box_btn .btn_more { flex: 1 1 0; min-width: 0; }
.cm_overview6.type2 .box_desc { position: relative; height: auto; padding-bottom: 1.1rem; }
.cm_overview6.type2 .box_desc .desc_bubble { display: flex; position: relative; align-items: center; height: clamp(49.6px, 3.2291666667vw, 62px); padding: 0 1rem; border-radius: 0.8rem; font-weight: 700; font-size: clamp(13px, 0.78125vw, 15px); }
.cm_overview6.type2 .box_desc:after { position: absolute; right: 0.7rem; bottom: 0; width: 2.1rem; height: 1.1rem; background-position: top center; background-size: contain; background-repeat: no-repeat; content: ""; }
.cm_overview6.type2 .ovw6_item:nth-child(4n+1) .box_desc .desc_bubble { background: var(--color-information-5); color: var(--color-information-60); }
.cm_overview6.type2 .ovw6_item:nth-child(4n+1) .box_desc:after { background-image: url(../../images/common/bubble01.svg); }
.cm_overview6.type2 .ovw6_item:nth-child(4n+2) .box_desc .desc_bubble { background: var(--color-success-5); color: var(--color-success-70); }
.cm_overview6.type2 .ovw6_item:nth-child(4n+2) .box_desc:after { background-image: url(../../images/common/bubble02.svg); }
.cm_overview6.type2 .ovw6_item:nth-child(4n+3) .box_desc .desc_bubble { background: var(--color-danger-5); color: var(--color-danger-60); }
.cm_overview6.type2 .ovw6_item:nth-child(4n+3) .box_desc:after { background-image: url(../../images/common/bubble03.svg); }
.cm_overview6.type2 .ovw6_item:nth-child(4n+4) .box_desc .desc_bubble { background: var(--color-warning-5); color: var(--color-warning-60); }
.cm_overview6.type2 .ovw6_item:nth-child(4n+4) .box_desc:after { background-image: url(../../images/common/bubble04.svg); }
.cm_overview6.type2 .box_foot { display: flex; align-items: center; justify-content: space-between; }
.cm_overview6.type2 .box_info .cm_dl2 ~ .cm_dl2 { margin-top: 0.8rem; }
.cm_overview6.col-02 .ovw6_list { grid-template-columns: repeat(2, 1fr); }
.cm_overview6.col-03 .ovw6_list { grid-template-columns: repeat(3, 1fr); }
.cm_overview6 .ovw6_item.nodata { grid-column: span 4; border: 0; }
.cm_overview6.type3 .ovw6_box { display: flex; flex-direction: column; justify-content: space-between; height: 100%; gap: 16px; color: inherit; text-decoration: none; }
.cm_overview6.type3.rec_public_swiper { overflow: hidden; }
.cm_overview6.type3.rec_public_swiper .ovw6_list { display: flex; gap: 0; }
.cm_overview6.type3.rec_public_swiper .ovw6_item { height: auto; }
.rec_public_swiper_wrap { position: relative; }
.rec_public_swiper_wrap .rec_public_btn_prev,
.rec_public_swiper_wrap .rec_public_btn_next { display: block; z-index: 10; position: absolute; top: 50%; width: clamp(28px, 2.0833333333vw, 40px); height: clamp(28px, 2.0833333333vw, 40px); 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; cursor: pointer; transition: background-color 0.2s, border-color 0.2s, opacity 0.2s; }
.rec_public_swiper_wrap .rec_public_btn_prev:after,
.rec_public_swiper_wrap .rec_public_btn_next:after { display: none; }
.rec_public_swiper_wrap .rec_public_btn_prev { left: clamp(-20px, -1.0416666667vw, -16px); background-image: url(../../images/common/icon_arrow_back.svg); }
.rec_public_swiper_wrap .rec_public_btn_next { right: clamp(-20px, -1.0416666667vw, -16px); background-image: url(../../images/common/icon_arrow_forward.svg); }
.rec_public_swiper_wrap .rec_public_btn_prev.swiper-button-disabled,
.rec_public_swiper_wrap .rec_public_btn_next.swiper-button-disabled { display: none; }
.rec_public_swiper_wrap .rec_public_pagination { position: static; margin-top: 16px; }
.rec_public_swiper_wrap .rec_public_pagination .swiper-pagination-bullet { background: var(--color-primary-90); opacity: 0.3; }
.rec_public_swiper_wrap .rec_public_pagination .swiper-pagination-bullet-active { background: var(--color-primary-90); opacity: 1; }
.cm_overview6.type3 .ovw6_box:hover .box_title { text-decoration: underline; }
.cm_overview6.type3 .ovw6_box:focus-visible { outline-offset: -2px; }
.cm_overview6.type3 .box_head { display: flex; flex-direction: column; align-items: stretch; margin-bottom: 0; gap: 10px; }
.cm_overview6.type3 .box_dday { display: flex; justify-content: flex-end; }
.cm_overview6.type3 .box_title { display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; -webkit-box-orient: vertical; margin-bottom: 0; overflow: hidden; font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.5; word-break: break-all; }
.cm_overview6.type3 .box_org { font-size: 0; }
.cm_overview6.type3 .box_org .cm_icon { color: var(--color-text-primary); font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_overview6.type3 .box_foot { display: flex; align-items: center; justify-content: space-between; margin-bottom: 0; gap: 8px; }
.cm_overview6.type3 .box_date { flex: 1; min-width: 0; font-size: 0; }
.cm_overview6.type3 .box_date .cm_icon { color: #333; font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_overview6.type3 .box_foot .btn_like { flex-shrink: 0; }
.cm_overview7.cm_table1 td { padding: clamp(16px, 1.25vw, 24px) clamp(8px, 0.8333333333vw, 16px); }
.cm_overview7 .pubPolicies_org { color: var(--color-text-primary); }
.cm_overview7 .pubPolicies_name { margin-top: 0.8rem; font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview7 .pubPolicies_name a:hover { text-decoration: underline; }
.cm_overview7 .pubPolicies_ministry { margin-top: clamp(5px, 0.4166666667vw, 8px); }
.cm_overview7 .pubPolicies_ministry img { max-height: clamp(20.8px, 1.3541666667vw, 26px); }
.cm_overview7 .pubPolicies_infos { display: flex; flex-direction: column; gap: 1rem; }
.cm_overview7 .pubPolicies_infos .cm_dash_list1 { font-size: clamp(16px, 0.8854166667vw, 17px); }
.cm_overview7 .pubPolicies_date { color: var(--color-text-primary); font-weight: bold; font-size: clamp(18px, 1.25vw, 24px); }
.cm_overview8 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px clamp(20px, 2.0833333333vw, 40px); }
.cm_overview8 .ovw8_box { display: block; }
.cm_overview8 .ovw8_box .ovw8_head { display: flex; flex-wrap: wrap; margin-bottom: 2.4rem; gap: 4px; }
.cm_overview8 .ovw8_box .ovw8_head .cm_badge.badge1 { font-size: 1.6rem; }
.cm_overview8 .ovw8_box .ovw8_content { font-weight: 500; font-size: 1.7rem; }
.cm_overview8 .ovw8_box:hover .ovw8_content { text-decoration: underline; }
.cm_overview8 .ovw8_box .ovw8_foot { margin-top: 2.4rem; padding-top: 2.4rem; border-top: 1px solid #ddd; }
.cm_overview8 .ovw8_box .ovw8_foot .date { color: #666; font-size: 1.7rem; }
.cm_overview9 .ovw9_item { display: flex; align-items: center; padding-bottom: clamp(16px, 1.25vw, 24px); gap: 2rem 4rem; border-bottom: 1px solid #ccc; }
.cm_overview9 .ovw9_item ~ .ovw9_item { padding-top: clamp(16px, 1.25vw, 24px); }
.cm_overview9 .ovw9_item .thumb_area { width: 22rem; }
.cm_overview9 .ovw9_item .thumb_area .thumb { aspect-ratio: 110/147; width: 100%; }
.cm_overview9 .ovw9_item .thumb_area .thumb img { width: 100%; height: 100%; object-fit: fill; }
.cm_overview9 .ovw9_item .content_area { flex: 1 1 0; min-width: 0; }
.cm_overview9 .ovw9_item .ovw9_badge { margin-bottom: 0.8rem; }
.cm_overview9 .ovw9_item .ovw9_title { margin-bottom: clamp(16px, 1.25vw, 24px); font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); }
.cm_overview9 .ovw9_item .ovw9_organization { margin-bottom: 0.8rem; font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_overview9 .ovw9_item .ovw9_date { margin-bottom: 0.8rem; font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_overview9 .ovw9_item .ovw9_location { font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_overview9 .ovw9_item .ovw9_btns { display: flex; margin-top: 2.4rem; gap: 0.8rem; }
.cm_overview9 .ovw9_item .ovw9_btns .btn_more { flex: 1 1 0; min-width: 0; }
.cm_overview10 .ovw10_item { border-bottom: 1px solid var(--color-border-gray, #ccc); }
.cm_overview10 .ovw10_item .ovw10_box { display: block; padding: 2.4rem; }
.cm_overview10 .ovw10_item .ovw10_badge { margin-bottom: 8px; }
.cm_overview10 .ovw10_item .ovw10_title { margin-bottom: 1.6rem; font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview10 .ovw10_item .ovw10_info { display: flex; flex-direction: column; gap: 4px; }
.cm_overview11 .ovw11_list { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(10px, 1.0416666667vw, 20px); }
.cm_overview11 .ovw11_box { height: 100%; padding: clamp(15px, 1.6666666667vw, 32px) clamp(15px, 1.25vw, 24px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview11 .ovw11_icon { aspect-ratio: 1/1; width: clamp(40px, 4.1666666667vw, 80px); margin-bottom: clamp(16px, 1.0416666667vw, 20px); background-position: center; background-size: contain; background-repeat: no-repeat; }
.cm_overview11 .ovw11_icon.icon1 { background-image: url(../../images/common/icon_service1.png); }
.cm_overview11 .ovw11_icon.icon2 { background-image: url(../../images/common/icon_service2.png); }
.cm_overview11 .ovw11_icon.icon3 { background-image: url(../../images/common/icon_service3.png); }
.cm_overview11 .ovw11_icon.icon4 { background-image: url(../../images/common/icon_service4.png); }
.cm_overview11 .ovw11_title { margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); font-weight: bold; font-size: clamp(15.2px, 0.9895833333vw, 19px); }
.cm_overview11 .ovw11_desc { color: #666; }
.cm_overview12 .ovw12_list { display: grid; grid-template-columns: repeat(2, 1fr); padding: clamp(15px, 1.6666666667vw, 32px); gap: clamp(10px, 1.25vw, 24px); border-radius: clamp(9.6px, 0.625vw, 12px); background-color: var(--color-background-gray-light); }
.cm_overview12 .ovw12_box { height: 100%; padding: clamp(15px, 1.6666666667vw, 32px); border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #fff; }
.cm_overview12 .ovw12_title_wrap { display: flex; align-items: center; margin-bottom: clamp(12.8px, 0.8333333333vw, 16px); gap: 0 clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview12 .ovw12_title { font-weight: 700; font-size: clamp(15px, 0.9895833333vw, 19px); line-height: 1.3; }
.cm_overview12 .ovw12_icon { display: block; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(20px, 1.6666666667vw, 32px); background-position: center; background-size: contain; background-repeat: no-repeat; }
.cm_overview12 .ovw12_icon.icon1 { background-image: url(../../images/common/icon_organ1.svg); }
.cm_overview12 .ovw12_icon.icon2 { background-image: url(../../images/common/icon_organ2.svg); }
.cm_overview12 .ovw12_icon.icon3 { background-image: url(../../images/common/icon_organ3.svg); }
.cm_overview12 .ovw12_icon.icon4 { background-image: url(../../images/common/icon_organ4.svg); }
.cm_overview12 .ovw12_icon.icon5 { background-image: url(../../images/common/icon_organ5.svg); }
.cm_overview12 .ovw12_icon.icon6 { background-image: url(../../images/common/icon_organ6.svg); }
.cm_overview12 .ovw12_icon.icon7 { background-image: url(../../images/common/icon_organ7.svg); }
.cm_overview12 .ovw12_desc { color: #666; }
.cm_overview12.type2 .ovw12_list { grid-template-columns: repeat(6, 1fr); }
.cm_overview12.type2 .ovw12_list > li { grid-column: span 2; }
.cm_overview12.type2 .ovw12_list > li.list4,
.cm_overview12.type2 .ovw12_list > li.list5 { grid-column: span 3; }
.cm_overview13 .ovw13_list { display: flex; flex-direction: column; gap: clamp(10px, 1.25vw, 24px); }
.cm_overview13 .ovw13_box { display: flex; flex-direction: column; padding: clamp(15px, 1.25vw, 24px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview13 .ovw13_title { margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); font-weight: bold; font-size: clamp(19.2px, 1.25vw, 24px); }
.cm_overview13 .ovw13_title a:hover { text-decoration: underline; }
.cm_overview13 .ovw13_info { display: flex; flex-direction: column; gap: clamp(3.2px, 0.2083333333vw, 4px); }
.cm_overview14 .ovw14_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_overview14 .ovw14_list > li { min-width: 0; }
.cm_overview14 .ovw14_box { display: flex; align-items: center; height: 100%; padding: clamp(20px, 1.25vw, 24px); overflow: hidden; gap: clamp(12.8px, 0.8333333333vw, 16px) clamp(25.6px, 1.6666666667vw, 32px); border: 1px solid var(--color-border-gray); border-radius: clamp(6.4px, 0.4166666667vw, 8px); background: var(--color-background-white); }
.cm_overview14 .ovw14_thumb { flex-shrink: 0; aspect-ratio: 3/4; width: clamp(140px, 12.5vw, 240px); }
.cm_overview14 .ovw14_thumb_img { width: 100%; height: 100%; object-fit: fill; }
.cm_overview14 .ovw14_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; min-width: 0; height: 100%; padding-top: clamp(12.8px, 0.8333333333vw, 16px); gap: clamp(19.2px, 1.25vw, 24px); }
.cm_overview14 .ovw14_header { display: flex; flex-direction: column; margin-bottom: 0; gap: clamp(8px, 0.5208333333vw, 10px); }
.cm_overview14 .ovw14_info_header { margin-bottom: 0; }
.cm_overview14 .ovw14_title { display: -webkit-box; -webkit-line-clamp: 2; font-weight: bold; font-size: clamp(19.2px, 1.25vw, 24px); -webkit-box-orient: vertical; overflow: hidden; line-height: 1.3; text-overflow: ellipsis; }
.cm_overview14 a.ovw14_title:hover { color: var(--color-text-primary); }
.cm_overview14 .ovw14_company { margin-bottom: 4px; color: var(--color-text-primary); }
.cm_overview14 .ovw14_info { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview14 .ovw14_footer { margin-bottom: 0; }
.cm_overview14 .ovw14_logos { display: flex; align-items: center; gap: clamp(12.8px, 0.8333333333vw, 16px); color: #4d4d4d; font-weight: 700; font-size: clamp(13px, 0.78125vw, 15px); }
.cm_overview14 .ovw14_logo { max-height: clamp(20.8px, 1.3541666667vw, 26px); }
.cm_overview14.col-01 .ovw14_list { grid-template-columns: repeat(1, 1fr); }
.cm_overview15 .ovw15_list { display: flex; justify-content: center; gap: clamp(10px, 1.25vw, 24px); }
.cm_overview15 .ovw15_list > li { width: calc((100% - clamp(10px, 1.25vw, 24px) * 2) / 3); }
.cm_overview15 .ovw15_box { display: flex; position: relative; flex-direction: column; align-items: center; width: 100%; height: 100%; padding: clamp(20px, 3.125vw, 60px) clamp(16px, 1.0416666667vw, 20px); gap: clamp(12.8px, 0.8333333333vw, 16px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); cursor: pointer; }
.cm_overview15 .ovw15_box:before { display: none; z-index: 1; position: absolute; top: -1px; right: -1px; bottom: -1px; left: -1px; border: 2px solid var(--color-border-primary-dark); border-radius: inherit; content: ""; }
.cm_overview15 .ovw15_icon { position: relative; aspect-ratio: 1/1; width: clamp(50px, 7.2916666667vw, 140px); border-radius: 50%; background-position: center; background-size: contain; background-repeat: no-repeat; }
.cm_overview15 .ovw15_chk + .ovw15_box .ovw15_icon:before { display: block; position: absolute; right: clamp(-5px, -0.2604166667vw, -4px); bottom: clamp(-5px, -0.2604166667vw, -4px); aspect-ratio: 1/1; width: clamp(20px, 2.3958333333vw, 46px); border-radius: 50%; background-image: url(../../images/common/icon_plus_bold_w.svg); background-position: center; background-size: 50%; background-repeat: no-repeat; background-color: var(--color-primary-20); content: ""; }
.cm_overview15 .ovw15_title { font-weight: bold; font-size: clamp(15px, 1.25vw, 24px); }
.cm_overview15 .ovw15_list > li.list1 .ovw15_icon { background-image: url(../../images/common/join_type1.png); }
.cm_overview15 .ovw15_list > li.list2 .ovw15_icon { background-image: url(../../images/common/join_type2.png); }
.cm_overview15 .ovw15_list > li.list3 .ovw15_icon { background-image: url(../../images/common/join_type3.png); }
.cm_overview15 .ovw15_list > li.simple .ovw15_icon { background-image: url(../../images/common/join_type4.png); }
.cm_overview15 .ovw15_list > li.mobileid .ovw15_icon { background-image: url(../../images/common/join_type5.png); }
.cm_overview15 .ovw15_list > li.citizencard .ovw15_icon { background-image: url(../../images/common/join_type6.png); }
.cm_overview15 .ovw15_list > li.ipin .ovw15_icon { background-image: url(../../images/common/join_type7.png); }
.cm_overview15 .ovw15_list > li.phone .ovw15_icon { background-image: url(../../images/common/join_type8.png); }
.cm_overview15 .ovw15_chk:focus-visible + .ovw15_box { outline: 2px dashed #000; outline-offset: 2px; }
.cm_overview15 .ovw15_box:hover:before,
.cm_overview15 .ovw15_chk:checked + .ovw15_box:before { display: block; }
.cm_overview15 .ovw15_box:hover .ovw15_icon:before,
.cm_overview15 .ovw15_chk:checked + .ovw15_box .ovw15_icon:before { display: block; background-color: var(--color-background-primary-light); }
.cm_overview15 .ovw15_box:hover .ovw15_title,
.cm_overview15 .ovw15_chk:checked + .ovw15_box .ovw15_title { color: var(--color-text-primary); }
.cm_overview15 .ovw15_box.disabled { opacity: 0.5; pointer-events: none; }
.cm_overview15 .ovw15_box.completed { border-color: var(--color-primary-80); color: var(--color-primary-80); pointer-events: none; }
.cm_overview16 { padding: clamp(15px, 1.6666666667vw, 32px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); background-color: #fff; }
.cm_overview16 .ovw16_list { display: flex; flex-direction: column; gap: clamp(15px, 1.6666666667vw, 32px) 0; counter-reset: step; }
.cm_overview16 .ovw16_list > li { position: relative; padding-left: clamp(40px, 2.8645833333vw, 55px); }
.cm_overview16 .ovw16_list > li:before { position: absolute; top: 0; bottom: clamp(-33px, -1.71875vw, -26.4px); left: clamp(14.4px, 0.9375vw, 18px); width: 2px; background-color: #e5e5e5; content: ""; }
.cm_overview16 .ovw16_list > li:last-child:before { display: none; }
.cm_overview16 .ovw16_box:before { display: flex; position: absolute; top: 0; left: clamp(5.6px, 0.3645833333vw, 7px); align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(19.2px, 1.25vw, 24px); border-radius: clamp(3.2px, 0.2083333333vw, 4px); background-color: var(--color-primary-90); content: counter(step); color: #fff; font-weight: 700; font-size: clamp(12px, 0.78125vw, 15px); counter-increment: step; }
.cm_overview16 .ovw16_title { margin-bottom: clamp(3.2px, 0.2083333333vw, 4px); color: var(--color-text-primary); font-weight: 700; }
.cm_overview16 .ovw16_desc { color: #464c53; }
.cm_overview17 .ovw17_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_overview17 .ovw17_box { position: relative; height: 100%; padding: clamp(15px, 1.6666666667vw, 32px); padding-right: clamp(80px, 6.25vw, 120px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview17 .ovw17_box:after { display: block; position: absolute; right: clamp(16px, 1.0416666667vw, 20px); bottom: clamp(16px, 1.0416666667vw, 20px); aspect-ratio: 1/1; width: clamp(50px, 5.2083333333vw, 100px); background-position: center; background-size: contain; background-repeat: no-repeat; content: ""; }
.cm_overview17 .ovw17_title { margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); font-weight: 700; font-size: clamp(15px, 0.9895833333vw, 19px); }
.cm_overview17 .ovw17_desc { word-break: keep-all; }
.cm_overview17 .ovw17_desc .cm_text_list1 .text1_item ~ .text1_item { margin-top: clamp(9.6px, 0.625vw, 12px); }
.cm_overview17 .ovw17_list > li.list1 .ovw17_box:after { background-image: url(../../images/common/icon_service5.png); }
.cm_overview17 .ovw17_list > li.list2 .ovw17_box:after { background-image: url(../../images/common/icon_service6.png); }
.cm_overview17 .ovw17_list > li.list3 .ovw17_box:after { background-image: url(../../images/common/icon_service7.png); }
.cm_overview17 .ovw17_list > li.list4 .ovw17_box:after { background-image: url(../../images/common/icon_service8.png); }
.cm_overview18 .ovw18_list { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_overview18 .ovw18_box { display: block; position: relative; height: 100%; padding: clamp(15px, 1.6666666667vw, 32px); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: #f4f5f6; transition: transform 0.3s ease; }
.cm_overview18 .ovw18_icon { aspect-ratio: 1/1; width: clamp(35px, 3.125vw, 60px); margin-bottom: clamp(16px, 1.0416666667vw, 20px); background-position: center; background-size: contain; background-repeat: no-repeat; }
.cm_overview18 .ovw18_title { font-size: clamp(15.2px, 0.9895833333vw, 19px); }
.cm_overview18 .ovw18_desc { margin-top: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview18 .ovw18_count { position: absolute; top: clamp(15px, 1.6666666667vw, 32px); right: clamp(15px, 1.6666666667vw, 32px); font-weight: bold; font-size: clamp(30px, 2.2916666667vw, 44px); line-height: clamp(35px, 3.125vw, 60px); }
.cm_overview18 .ovw18_list > li.list1 .ovw18_icon { background-image: url(../../images/common/mypage_link1.svg); }
.cm_overview18 .ovw18_list > li.list2 .ovw18_icon { background-image: url(../../images/common/mypage_link2.svg); }
.cm_overview18 .ovw18_list > li.list3 .ovw18_icon { background-image: url(../../images/common/mypage_link3.svg); }
.cm_overview18 .ovw18_list > li.list4 .ovw18_icon { background-image: url(../../images/common/mypage_link4.svg); }
.cm_overview18 .ovw18_list > li.list5 .ovw18_icon { background-image: url(../../images/common/mypage_link5.svg); }
.cm_overview18 .ovw18_list > li.list6 .ovw18_icon { background-image: url(../../images/common/mypage_link6.svg); }
.cm_overview18 .ovw18_list > li:hover .ovw18_box { transform: translateY(-4px); }
.cm_overview19 .ovw19_box { display: flex; align-items: flex-start; height: 100%; overflow: hidden; gap: clamp(12.8px, 0.8333333333vw, 16px) clamp(20px, 2.9166666667vw, 56px); background: var(--color-background-white); }
.cm_overview19 .ovw19_thumb_wrap { flex-shrink: 0; width: clamp(224px, 14.5833333333vw, 280px); }
.cm_overview19 .ovw19_thumb { aspect-ratio: 3/4; width: 100%; }
.cm_overview19 .ovw19_thumb_img { width: 100%; height: 100%; object-fit: fill; }
.cm_overview19 .ovw19_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; min-width: 0; padding-top: clamp(6.4px, 0.4166666667vw, 8px); gap: clamp(25.6px, 1.6666666667vw, 32px); }
.cm_overview19 .ovw19_header { display: flex; flex-direction: column; margin-bottom: 0; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview19 .ovw19_info_header { margin-bottom: 0; }
.cm_overview19 .ovw19_title { display: -webkit-box; -webkit-line-clamp: 2; font-weight: bold; font-size: clamp(25.6px, 1.6666666667vw, 32px); -webkit-box-orient: vertical; overflow: hidden; line-height: 1.3; text-overflow: ellipsis; }
.cm_overview19 .ovw19_info { font-size: clamp(15.2px, 0.9895833333vw, 19px); }
.cm_overview19 .ovw19_btns { display: flex; margin-top: clamp(8px, 0.5208333333vw, 10px); gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview19 .ovw19_btns > * { flex: 1 1 0; min-width: 0; }
.cm_overview20 .ovw20_list { display: flex; flex-direction: column; gap: clamp(10px, 1.25vw, 24px); }
.cm_overview20 .ovw20_box { display: flex; gap: 0 clamp(8px, 0.5208333333vw, 10px); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background-color: var(--color-background-gray-light); }
.cm_overview20 .ovw20_thumb_wrap { position: relative; flex-shrink: 0; width: clamp(300px, 21.875vw, 420px); padding: clamp(20px, 2.0833333333vw, 40px); padding-right: 0; }
.cm_overview20 .ovw20_title { z-index: 1; position: relative; font-weight: bold; font-size: clamp(17px, 1.25vw, 24px); }
.cm_overview20 .ovw20_thumb { position: absolute; right: 0; bottom: 0; aspect-ratio: 230/176; width: clamp(150px, 11.9791666667vw, 230px); }
.cm_overview20 .ovw20_thumb_img { width: 100%; height: 100%; object-fit: contain; }
.cm_overview20 .ovw20_content { flex: 1; min-width: 0; padding: clamp(20px, 2.0833333333vw, 40px); padding-left: 0; }
.cm_overview21 .ovw21_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_overview21 .ovw21_box { display: flex; flex-direction: column; justify-content: space-between; height: 100%; padding: clamp(19.2px, 1.25vw, 24px); gap: clamp(12.8px, 0.8333333333vw, 16px); border: 1px solid var(--color-border-gray); border-radius: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview21 .ovw21_category { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview21 .ovw21_content { flex: 1; }
.cm_overview21 .ovw21_title_wrap { display: flex; flex-wrap: wrap; margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); gap: clamp(3.2px, 0.2083333333vw, 4px) clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview21 .ovw21_title { font-weight: bold; font-size: clamp(19.2px, 1.25vw, 24px); }
.cm_overview21 .ovw21_branch { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); font-size: 14px; }
.cm_overview21 .ovw21_branch dt { flex-shrink: 0; }
.cm_overview21 .ovw21_branch .cm_badge { font-size: 12px; }
.cm_overview21 .ovw21_info { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview21 .ovw21_btns { display: flex; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview21 .ovw21_btns > * { flex: 1 1 0; min-width: 0; padding-left: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview22 .ovw22_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_overview22 .ovw22_list > li { min-width: 0; }
.cm_overview22 .ovw22_box { display: flex; flex-direction: column; height: 100%; padding: clamp(19.2px, 1.25vw, 24px); overflow: hidden; border: 1px solid var(--color-border-gray); border-radius: clamp(6.4px, 0.4166666667vw, 8px); background: var(--color-background-white); transition: transform 0.3s ease, box-shadow 0.3s ease; }
.cm_overview22 .ovw22_thumb { aspect-ratio: 4/3; margin-bottom: clamp(20px, 1.3020833333vw, 25px); overflow: hidden; background: var(--color-background-gray-light); }
.cm_overview22 .ovw22_thumb_img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; }
.cm_overview22 .ovw22_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; gap: clamp(8px, 0.625vw, 12px); }
.cm_overview22 .ovw22_badges { display: flex; flex-wrap: wrap; align-items: center; margin-bottom: clamp(16px, 1.0416666667vw, 20px); gap: clamp(6.4px, 0.4166666667vw, 8px); font-size: clamp(14px, 0.78125vw, 15px); }
.cm_overview22 .ovw22_title { margin-bottom: clamp(9.6px, 0.625vw, 12px); font-weight: 700; font-size: clamp(15px, 0.9895833333vw, 19px); line-height: 1.3; }
.cm_overview22 .ovw22_desc { display: -webkit-box; -webkit-line-clamp: 2; color: #666; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.cm_overview22 .ovw22_info { display: flex; flex-direction: column; gap: clamp(6px, 0.4166666667vw, 8px); }
.cm_overview22 .ovw22_box:hover .ovw22_thumb_img { transform: scale(1.03); }
.cm_overview22 .ovw22_btn { display: flex; justify-content: flex-end; }
.cm_overview22.col-03 .ovw22_list { grid-template-columns: repeat(3, 1fr); }
.cm_overview23 .ovw23_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(10px, 0.8333333333vw, 16px); }
.cm_overview23 .cm_chk7 { height: 100%; }
.cm_overview24 { padding: clamp(24px, 2.0833333333vw, 40px); }
.cm_overview24 .ovw24_list { display: grid; grid-template-columns: repeat(5, 1fr); gap: clamp(12px, 1.25vw, 24px); }
.cm_overview25 .ovw25_list { display: flex; flex-direction: column; }
.cm_overview25 .ovw25_item { display: flex; gap: 8px clamp(24px, 2.0833333333vw, 40px); }
.cm_overview25 .ovw25_item .thumb_area { width: 41.667%; }
.cm_overview25 .ovw25_item .thumb_area .thumb { position: relative; aspect-ratio: 4/3; width: 100%; overflow: hidden; border-radius: clamp(8px, 0.625vw, 12px); }
.cm_overview25 .ovw25_item .thumb_area .thumb img { width: 1005px; height: 100%; object-fit: cover; }
.cm_overview25 .ovw25_item .content_area { flex: 1 1 0; min-width: 0; padding-top: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview25 .ovw25_item .content_area .cont_title { margin-bottom: clamp(6px, 0.5208333333vw, 10px); font-weight: 700; font-size: clamp(19px, 1.25vw, 24px); }
.cm_overview25 .ovw25_item .content_area .cont_desc { margin-bottom: clamp(12px, 0.8333333333vw, 16px); font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview25 .ovw25_item .content_area .ovw25_cont_box { padding: clamp(16px, 1.25vw, 24px); background: #f4f5f6; }
.cm_overview25 .ovw25_item ~ .ovw25_item { margin-top: clamp(24px, 2.0833333333vw, 40px); padding-top: clamp(24px, 2.0833333333vw, 40px); border-top: 1px solid #ccc; }
.cm_overview26 .ovw26_list { display: flex; flex-direction: column; gap: clamp(10px, 1.25vw, 24px); }
.cm_overview26 .ovw26_box { display: flex; justify-content: space-between; height: 100%; padding: clamp(19.2px, 1.25vw, 24px); gap: 0 clamp(20px, 1.6666666667vw, 32px); border: 1px solid var(--color-border-gray); border-radius: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview26 .ovw26_category { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview26 .ovw26_thumb_wrap { display: flex; align-items: center; }
.cm_overview26 .ovw26_thumb { aspect-ratio: 4/3; width: clamp(250px, 20.8333333333vw, 400px); overflow: hidden; background: var(--color-background-gray-light); }
.cm_overview26 .ovw26_thumb_img { width: 100%; height: 100%; object-fit: fill; }
.cm_overview26 .ovw26_content { display: flex; flex: 1; flex-direction: column; padding-top: clamp(16px, 1.0416666667vw, 20px); gap: clamp(9.6px, 0.625vw, 12px); }
.cm_overview26 .ovw26_title { margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); font-weight: bold; font-size: clamp(19.2px, 1.25vw, 24px); }
.cm_overview26 .ovw26_info { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview26 .ovw26_body { flex: 1; }
.cm_overview26 .ovw26_btns { display: flex; justify-content: flex-end; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview27 .ovw27_item .cm_badge { margin-bottom: 0.8rem; }
.cm_overview27 .ovw27_item .ovw27_title { margin-bottom: clamp(12px, 0.8333333333vw, 16px); font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview27 .ovw27_item .ovw27_info { display: flex; flex-direction: column; margin-bottom: clamp(8px, 0.8333333333vw, 16px); gap: clamp(4px, 0.4166666667vw, 8px); }
.cm_overview27 .ovw27_item .ovw27_info .ovw27_info_item { display: flex; gap: 0.8rem; }
.cm_overview27 .ovw27_item .ovw27_desc { margin-bottom: clamp(8px, 0.8333333333vw, 16px); padding: clamp(6px, 0.5208333333vw, 10px) clamp(12px, 0.8333333333vw, 16px); background: #f4f5f6; font-size: clamp(13px, 0.78125vw, 15px); }
.cm_overview27 .ovw27_item .ovw27_btns { display: flex; gap: 0.8rem; }
.cm_overview27 .ovw27_item .ovw27_btns .cm_btn.variant3 { width: 94px; }
.cm_overview27 .ovw27_item .ovw27_btns .cm_btn.variant2 { flex: 1 1 0; min-width: 0; }
.cm_overview28 { display: flex; flex-direction: column; gap: clamp(16px, 1.25vw, 24px); }
.cm_overview28 .ovw28_item { display: flex; flex-direction: column; gap: clamp(8px, 0.8333333333vw, 16px); }
.cm_overview28 .ovw28_info { font-size: clamp(13px, 0.78125vw, 15px); }
.cm_overview28 .ovw28_sub_title { margin-bottom: 0.8rem; }
.cm_overview29 { display: flex; flex-direction: column; gap: 8px; }
.cm_overview29 .ovw29_cont_dropdown { position: relative; width: 100%; padding: clamp(6px, 0.625vw, 12px) clamp(8px, 0.8333333333vw, 16px); padding-right: 4rem; border: 1px solid #ccc; border-radius: 0.8rem; background: #fff; color: var(--color-text-basic); text-align: left; }
.cm_overview29 .ovw29_cont_dropdown:after { position: absolute; top: 50%; right: clamp(8px, 0.8333333333vw, 16px); width: clamp(20px, 1.25vw, 24px); height: clamp(20px, 1.25vw, 24px); transform: translateY(-50%); background: url(../../images/common/icon_arrow_down.svg) no-repeat center/contain; content: ""; }
.cm_overview29 .ovw29_cont_dropdown[aria-expanded=true] { border: 1px solid var(--color-button-secondary-border); background: var(--color-button-secondary); color: var(--color-primary-80); font-weight: 700; }
.cm_overview29 .ovw29_cont_dropdown[aria-expanded=true]:after { background-image: url(../../images/common/icon_arrow_up02.svg); }
.cm_overview29 .ovw29_content { display: none; padding: clamp(8px, 0.8333333333vw, 16px); }
.cm_overview29 .ovw29_content .cm_overview14 .ovw14_box { padding: 0; gap: clamp(12px, 1.0416666667vw, 20px); border: 0; border-radius: 0; }
.cm_overview29 .ovw29_content .cm_overview14 .ovw14_content { padding-top: 0; }
.cm_overview29 .ovw29_content .cm_overview14 .ovw14_thumb { width: clamp(90px, 6.7708333333vw, 130px); }
.cm_overview29 .ovw29_content .cm_overview14 .ovw14_title { font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview29 .ovw29_content .cm_overview14 .ovw14_info { font-size: clamp(13px, 0.78125vw, 15px); }
.cm_overview30 .ovw30_list .ovw30_item ~ .ovw30_item { margin-top: 1.2rem; }
.cm_overview30 .ovw30_list .ovw30_item { display: flex; flex-wrap: wrap; align-items: center; font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_overview30 .ovw30_list .ovw30_item .menu_home { display: inline-flex; align-items: center; justify-content: center; margin-right: 12px; }
.cm_overview30 .ovw30_list .ovw30_item .menu_item ~ .menu_item { position: relative; margin-left: 2px; padding-left: 22px; }
.cm_overview30 .ovw30_list .ovw30_item .menu_item ~ .menu_item:before { position: absolute; top: 50%; left: 0; width: 20px; height: 20px; transform: translateY(-50%); background: url(../../images/common/icon_arrow_forward.svg) no-repeat center/contain; content: ""; }
.cm_overview30 .ovw30_list .ovw30_item .menu_item .highlight { color: var(--color-primary-80); font-weight: 700; }
.cm_overview30 .ovw30_list .ovw30_item.nodata { display: flex; align-items: center; justify-content: center; height: clamp(110px, 7.8125vw, 150px); }
.cm_overview31 .ovw31_list { border-top: 1px solid #4d4d4d; }
.cm_overview31 .ovw31_item { padding: clamp(20px, 1.6666666667vw, 32px) clamp(9.6px, 0.625vw, 12px); border-bottom: 1px solid #ccc; }
.cm_overview31 .ovw31_item .ovw31_title { margin-bottom: 8px; font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); }
.cm_overview31 .ovw31_item .ovw31_desc { margin-bottom: 8px; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview31 .ovw31_item .ovw31_date { margin-bottom: clamp(12px, 0.8333333333vw, 16px); color: #666; }
.cm_overview31 .ovw31_item .ovw31_location { display: flex; flex-wrap: wrap; align-items: center; font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_overview31 .ovw31_item .ovw31_location .menu_home { display: inline-flex; align-items: center; justify-content: center; margin-right: 12px; }
.cm_overview31 .ovw31_item .ovw31_location .menu_item ~ .menu_item { position: relative; margin-left: 2px; padding-left: 22px; }
.cm_overview31 .ovw31_item .ovw31_location .menu_item ~ .menu_item:before { position: absolute; top: 50%; left: 0; width: 20px; height: 20px; transform: translateY(-50%); background: url(../../images/common/icon_arrow_forward.svg) no-repeat center/contain; content: ""; }
.cm_overview31 .ovw31_item.nodata { display: flex; align-items: center; justify-content: center; height: clamp(150px, 10.1041666667vw, 194px); }
.cm_overview32 .ovw32_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_overview32 .ovw32_box { display: flex; flex-direction: column; justify-content: space-between; height: 100%; padding: clamp(15px, 1.6666666667vw, 32px) clamp(15px, 2.0833333333vw, 40px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview32 .ovw32_title { margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); font-weight: bold; font-size: clamp(19.2px, 1.25vw, 24px); line-height: 1.3; }
.cm_overview32 .ovw32_desc { color: var(--color-text-primary); }
.cm_overview32 .ovw32_info { margin-top: clamp(19.2px, 1.25vw, 24px); }
.cm_overview32 .ovw32_info .cm_dl1 { gap: clamp(8px, 0.5208333333vw, 10px); }
.cm_overview32 .ovw32_btns { display: flex; justify-content: flex-end; margin-top: clamp(12.8px, 0.8333333333vw, 16px); gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview33 .ovw33_list { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_overview33 .ovw33_box { height: 100%; padding: clamp(15px, 1.6666666667vw, 32px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview33 .ovw33_icon { display: flex; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(35px, 4.1666666667vw, 80px); margin-bottom: clamp(16px, 1.0416666667vw, 20px); border-radius: 1000px; background-color: var(--color-background-gray-light); }
.cm_overview33 .ovw33_icon_img { aspect-ratio: 1/1; width: 40%; object-fit: contain; }
.cm_overview33 .ovw33_title { margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); font-weight: bold; font-size: clamp(15.2px, 0.9895833333vw, 19px); line-height: 1.3; }
.cm_overview33 .ovw33_desc { color: #666; }
.cm_overview34 { height: 100%; padding: clamp(25.6px, 1.6666666667vw, 32px) clamp(32px, 2.0833333333vw, 40px); border-top: 2px solid var(--color-border-primary-dark); border-bottom: 1px solid var(--color-border-gray); }
.cm_overview34 .ovw34_list { display: flex; position: relative; flex-direction: column; justify-content: center; height: 100%; gap: clamp(10px, 2.0833333333vw, 40px); }
.cm_overview34 .ovw34_list:before { display: block; z-index: -1; position: absolute; top: 10%; bottom: 10%; left: clamp(17.5px, 1.6666666667vw, 32px); width: 2px; background-color: var(--color-border-primary); content: ""; }
.cm_overview34 .ovw34_box { display: flex; align-items: center; gap: clamp(19.2px, 1.25vw, 24px); }
.cm_overview34 .ovw34_icon { display: flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(35px, 3.3333333333vw, 64px); border: 1px solid var(--color-border-gray); border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-color: #fff; }
.cm_overview34 .ovw34_icon_img { aspect-ratio: 1/1; width: 50%; object-fit: contain; }
.cm_overview34 .ovw34_title { font-weight: bold; font-size: clamp(15.2px, 0.9895833333vw, 19px); }
.cm_overview34 .ovw34_desc { margin-top: clamp(3.2px, 0.2083333333vw, 4px); }
.cm_overview35 .ovw35_list { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_overview35 .ovw35_box { display: flex; flex-direction: column; height: 100%; overflow: hidden; border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview35 .ovw35_thumb { flex-shrink: 0; aspect-ratio: 4/2.4; }
.cm_overview35 .ovw35_thumb_img { width: 100%; height: 100%; object-fit: fill; }
.cm_overview35 .ovw35_content { flex: 1; border: 1px solid var(--color-border-gray); border-top: none; border-radius: 0 0 clamp(9.6px, 0.625vw, 12px) clamp(9.6px, 0.625vw, 12px); }
.cm_overview35 .ovw35_title { padding: clamp(15px, 1.25vw, 24px); font-weight: bold; text-align: center; }
.cm_overview36 .ovw36_list { display: flex; flex-direction: column; gap: clamp(10px, 1.25vw, 24px); }
.cm_overview36 .ovw36_box { display: flex; padding: clamp(15px, 1.6666666667vw, 32px) clamp(20px, 2.0833333333vw, 40px); gap: 0 clamp(32px, 2.0833333333vw, 40px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview36 .ovw36_thumb_wrap { display: flex; align-items: center; }
.cm_overview36 .ovw36_thumb { aspect-ratio: 333/250; width: clamp(250px, 17.34375vw, 333px); }
.cm_overview36 .ovw36_thumb_img { width: 100%; height: 100%; object-fit: fill; }
.cm_overview36 .ovw36_content { flex: 1; }
.cm_overview36 .ovw36_title { margin-bottom: clamp(15px, 1.25vw, 24px); font-weight: bold; font-size: clamp(19.2px, 1.25vw, 24px); }
.cm_overview36 .ovw36_desc .cm_dl1 { gap: clamp(9.6px, 0.625vw, 12px); }
.cm_overview37 .ovw37_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_overview37 .ovw37_box { display: flex; height: 100%; padding: clamp(19.2px, 1.25vw, 24px); gap: clamp(12px, 1.6666666667vw, 32px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview37 .ovw37_thumb_wrap { display: flex; align-items: flex-start; }
.cm_overview37 .ovw37_thumb { aspect-ratio: 190/248; width: clamp(80px, 9.8958333333vw, 190px); overflow: hidden; border-radius: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview37 .ovw37_thumb_img { width: 100%; height: 100%; object-fit: fill; }
.cm_overview37 .ovw37_content { flex: 1; }
.cm_overview37 .ovw37_info { display: flex; flex-direction: column; gap: clamp(4px, 0.8333333333vw, 16px); }
.cm_overview37 .ovw37_info dl { display: flex; gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview37 .ovw37_info dt { position: relative; flex-shrink: 0; padding-left: clamp(9.6px, 0.625vw, 12px); font-weight: bold; }
.cm_overview37 .ovw37_info dt:before { display: block; position: absolute; top: 0.6em; left: 0; aspect-ratio: 1/1; width: clamp(4px, 0.2604166667vw, 5px); border-radius: 1000px; background-color: var(--color-text-primary); content: ""; }
.cm_overview37 .ovw37_info dd { flex: 1; }
.cm_overview37 .ovw37_info dl.type2 { flex-direction: column; }
.cm_overview37 .ovw37_info .cm_text_list2 { padding-left: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview37 .ovw37_info .cm_text_list2 .text2_item ~ .text2_item { margin-top: 0.4rem; }
.cm_overview38 .ovw38_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(10px, 0.8333333333vw, 16px); }
.cm_overview38 .ovw38_box { display: flex; align-items: center; height: 100%; padding: clamp(19.2px, 1.25vw, 24px); gap: clamp(32px, 2.0833333333vw, 40px); border-radius: clamp(6.4px, 0.4166666667vw, 8px); background: var(--color-background-gray-light); }
.cm_overview38 .ovw38_box:after { display: block; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(19.2px, 1.25vw, 24px); background: url(../../images/common/icon_open_new_window.svg) no-repeat center/contain; content: ""; }
.cm_overview38 .ovw38_title { flex: 1; line-height: 1.3; }
.cm_overview39 .ovw39_box { display: flex; align-items: flex-start; gap: clamp(16px, 2.0833333333vw, 40px); }
.cm_overview39 .ovw39_thumb { width: clamp(250px, 20.8333333333vw, 400px); }
.cm_overview39 .ovw39_content { flex: 1; padding-top: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview39 .ovw39_desc { margin-bottom: clamp(12.8px, 0.8333333333vw, 16px); font-size: clamp(15px, 0.9895833333vw, 19px); }
.cm_overview39 .ovw39_info { display: flex; flex-direction: column; gap: clamp(10px, 0.625vw, 12px); }
.cm_overview39 .ovw39_info dl { display: flex; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview39 .ovw39_info dt { position: relative; flex-shrink: 0; padding-left: clamp(12.8px, 0.8333333333vw, 16px); font-weight: bold; }
.cm_overview39 .ovw39_info dt:before { display: block; position: absolute; top: 0.6em; left: 0; aspect-ratio: 1/1; width: clamp(4px, 0.2604166667vw, 5px); border-radius: 1000px; background-color: #333; content: ""; }
.cm_overview39 .ovw39_btn { margin-top: clamp(25.6px, 1.6666666667vw, 32px); }
.cm_overview40 .ovw40_list { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(16px, 1.0416666667vw, 20px); }
.cm_overview40 .ovw40_box { display: flex; position: relative; align-items: center; justify-content: center; width: 100%; height: 100%; padding: clamp(27.2px, 1.7708333333vw, 34px) clamp(12.8px, 0.8333333333vw, 16px); border-radius: clamp(9.6px, 0.625vw, 12px); background-color: var(--color-background-gray-light); text-align: center; }
.cm_overview40 .ovw40_box:before { display: block; position: absolute; top: clamp(12.8px, 0.8333333333vw, 16px); right: clamp(12.8px, 0.8333333333vw, 16px); aspect-ratio: 1/1; width: clamp(16px, 1.0416666667vw, 20px); background: url(../../images/common/icon_cross.svg) no-repeat center/90%; content: ""; }
.cm_overview40 .ovw40_title { line-height: 1.3; }
.cm_overview41 .ovw41_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(16px, 1.25vw, 24px); }
.cm_overview41 .ovw41_list .ovw41_item { padding: clamp(16px, 1.25vw, 24px); border: 1px solid #ccc; border-radius: 0.8rem; }
.cm_overview41 .ovw41_head { display: flex; align-items: center; justify-content: space-between; margin-bottom: clamp(8px, 0.8333333333vw, 16px); }
.cm_overview41 .ovw41_head .detail { display: flex; align-items: center; gap: 0.8rem; }
.cm_overview41 .ovw41_title { margin-bottom: clamp(8px, 0.8333333333vw, 16px); font-weight: 700; font-size: clamp(17px, 1.25vw, 24px); }
.cm_overview41 .ovw41_info { display: flex; flex-direction: column; gap: 0.8rem; }
.cm_overview41 .ovw41_bottom { display: flex; align-items: center; justify-content: space-between; margin-top: clamp(16px, 1.25vw, 24px); padding-top: clamp(16px, 1.25vw, 24px); border-top: 1px solid #ccc; }
.cm_overview41 .ovw41_bottom .btns { display: flex; justify-content: end; gap: 0.8rem; }
.cm_overview42 .ovw42_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(16px, 1.25vw, 24px); }
.cm_overview42 .ovw42_list > li { min-width: 0; }
.cm_overview42 .ovw42_box { display: flex; flex-direction: column; justify-content: space-between; height: 100%; padding: clamp(19.2px, 1.25vw, 24px); border: 1px solid var(--color-border-gray); border-radius: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview42 .ovw42_title { font-weight: bold; font-size: clamp(19.2px, 1.25vw, 24px); line-height: 1.3; }
.cm_overview43_wrap { display: flex; flex-direction: column; gap: clamp(28px, 2.0833333333vw, 40px); }
.cm_overview43 .ovw43_title { display: flex; align-items: center; justify-content: space-between; margin-bottom: clamp(16px, 1.25vw, 24px); }
.cm_overview43 .ovw43_content_item_list { display: flex; flex-direction: column; gap: clamp(20px, 1.6666666667vw, 32px); }
.cm_overview43 .ovw43_content_item_list .ovw43_content_item_title { margin-bottom: clamp(16px, 1.25vw, 24px); padding: clamp(6px, 0.5208333333vw, 10px) clamp(12px, 1.0416666667vw, 20px); border-radius: 0.8rem; background: #f4f5f6; font-weight: 700; }
.cm_overview43 .ovw43_content_item_list .ovw43_content_item_group { padding-right: clamp(8px, 1.25vw, 24px); padding-left: clamp(8px, 1.25vw, 24px); }
.cm_overview43 .ovw43_content_dl ~ .ovw43_content_dl { margin-top: clamp(12px, 0.8333333333vw, 16px); }
.cm_overview43 .ovw43_content_dl { display: flex; margin-right: auto; margin-left: auto; gap: 0.8rem; }
.cm_overview43 .ovw43_content_dl .tit { width: 140px; font-weight: 700; }
.cm_overview43 .ovw43_content_dl .cont { flex: 1 1 0; min-width: 0; }
.cm_overview44 .ovw44_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(19.2px, 1.25vw, 24px); }
.cm_overview44 .ovw44_box { display: flex; padding: clamp(15px, 1.25vw, 24px); gap: clamp(12px, 1.6666666667vw, 32px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview44 .ovw44_thumb_wrap { display: flex; align-items: center; }
.cm_overview44 .ovw44_thumb { aspect-ratio: 3/4; width: clamp(80px, 9.8958333333vw, 190px); }
.cm_overview44 .ovw44_thumb.brdr { border: 1px solid #ccc; }
.cm_overview44 .ovw44_thumb_img { width: 100%; height: 100%; object-fit: fill; }
.cm_overview44 .ovw44_content { display: flex; flex: 1; flex-direction: column; justify-content: space-between; min-width: 0; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview44 .ovw44_title { font-weight: bold; font-size: clamp(19.2px, 1.25vw, 24px); line-height: 1.3; }
.cm_overview44 .ovw44_btns { display: flex; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview44 .ovw44_btns .cm_btn { flex: 1 1 0; min-width: 0; }
.cm_overview45 { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(19.2px, 1.25vw, 24px); }
.cm_overview45 .ovw45_item { display: flex; flex-direction: column; align-items: center; justify-content: start; padding: clamp(20px, 2.0833333333vw, 40px); gap: clamp(16px, 1.25vw, 24px); border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview45 .ovw45_item .ovw45_badge { display: inline-flex; align-items: center; justify-content: center; height: clamp(30.4px, 1.9791666667vw, 38px); padding: 0 clamp(12.8px, 0.8333333333vw, 16px); border-radius: 99px; color: #fff; font-weight: 700; font-size: clamp(11px, 0.8854166667vw, 17px); line-height: 1.2; }
.cm_overview45 .ovw45_item .ovw45_content { display: flex; align-items: center; font-weight: 700; font-size: clamp(19.2px, 1.25vw, 24px); }
.cm_overview45 .ovw45_item .ovw45_content strong { font-size: clamp(28.8px, 1.875vw, 36px); }
.cm_overview45 .ovw45_item .ovw45_content em { color: #a7375d; }
.cm_overview45 .ovw45_item .ovw45_content b { color: #1c4a9f; }
.cm_overview45 .ovw45_item .ovw45_content .small_text { font-weight: 400; font-size: clamp(10px, 0.78125vw, 15px); }
.cm_overview45 .ovw45_item.item1 { background: #faf1f4; }
.cm_overview45 .ovw45_item.item2 { background: #f4f7fb; }
.cm_overview45 .ovw45_item.item1 .ovw45_badge { background: #a7375d; }
.cm_overview45 .ovw45_item.item2 .ovw45_badge { background: #1c4a9f; }
.cm_overview46 { display: flex; flex-direction: column; gap: clamp(16px, 1.0416666667vw, 20px); }
.cm_overview46 .ovw46_line { display: flex; gap: clamp(19.2px, 1.25vw, 24px); }
.cm_overview46 .ovw46_line .ovw46_title { display: flex; align-items: center; justify-content: center; width: clamp(110px, 7.8125vw, 150px); padding: clamp(28px, 2.0833333333vw, 40px) clamp(9.6px, 0.625vw, 12px); border-radius: clamp(9.6px, 0.625vw, 12px); background: #f4f5f6; font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); text-align: center; }
.cm_overview46 .ovw46_line .ovw46_content_list { display: grid; grid-template-columns: repeat(5, 1fr); flex: 1 1 0; min-width: 0; gap: clamp(16px, 1.0416666667vw, 20px); }
.cm_overview46 .ovw46_line .ovw46_content_list .ovw46_content_item { display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview46 .ovw46_line.line1 .ovw46_content_list .ovw46_content_item { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: clamp(24px, 1.4583333333vw, 28px) clamp(9.6px, 0.625vw, 12px); border: 1px solid #eee; border-radius: clamp(9.6px, 0.625vw, 12px); }
.cm_overview46 .ovw46_line.line1 .ovw46_content_list .ovw46_content_item .icon { margin-bottom: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview46 .ovw46_line.line1 .ovw46_content_list .ovw46_content_item .sub_title { color: #666; }
.cm_overview46 .ovw46_line.line1 .ovw46_content_list .ovw46_content_item .title { font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview46 .ovw46_line.line2 .ovw46_content_item { height: clamp(80px, 5.2083333333vw, 100px); color: #fff; font-weight: 700; text-align: center; }
.cm_overview46 .ovw46_line.line2 .ovw46_content_item.item1 { background: #ba2e63; }
.cm_overview46 .ovw46_line.line2 .ovw46_content_item.item2 { background: #6f86e6; }
.cm_overview46 .ovw46_line.line2 .ovw46_content_item.item3 { background: #5955b2; }
.cm_overview46 .ovw46_line.line2 .ovw46_content_item.item4 { background: #096ab3; }
.cm_overview46 .ovw46_line.line2 .ovw46_content_item.item5 { background: #0e8f8f; }
.cm_overview46 .ovw46_line.line3 .ovw46_content_item { justify-content: start; padding: clamp(19.2px, 1.25vw, 24px) clamp(9.6px, 0.625vw, 12px); }
.cm_overview46 .ovw46_line.line3 .ovw46_content_item .cm_text_list1 .text1_item { font-size: clamp(14px, 0.78125vw, 15px); }
.cm_overview46 .ovw46_line.line3 .ovw46_content_item.item1 { background: #faf1f4; }
.cm_overview46 .ovw46_line.line3 .ovw46_content_item.item2 { background: #f2f4ff; }
.cm_overview46 .ovw46_line.line3 .ovw46_content_item.item3 { background: #f5ebf6; }
.cm_overview46 .ovw46_line.line3 .ovw46_content_item.item4 { background: #e8edf5; }
.cm_overview46 .ovw46_line.line3 .ovw46_content_item.item5 { background: #eaf5e8; }
.cm_overview47 { display: grid; grid-template-columns: repeat(3, 1fr); align-items: stretch; gap: clamp(19.2px, 1.25vw, 24px); }
.cm_overview47 .ovw47_box { display: block; height: 100%; padding: clamp(24px, 1.6666666667vw, 32px); border-radius: 1.2rem; background: #f4f5f6; color: #666; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_overview47 .ovw47_box .ovw47_head { display: flex; position: relative; align-items: center; margin-bottom: 0.8rem; padding-right: clamp(20px, 1.4583333333vw, 28px); gap: clamp(9.6px, 0.625vw, 12px); font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_overview47 .ovw47_box .ovw47_head:after { position: absolute; top: 50%; right: 0; width: 2.4rem; height: 2.4rem; transform: translateY(-50%); background: url(../../images/common/icon_arrow_forward.svg) no-repeat center/contain; content: ""; }
.cm_overview47.grid-row-4 { grid-template-columns: repeat(4, 1fr); }
.cm_overview48 .ovw48_list { display: flex; flex-wrap: wrap; gap: clamp(32px, 2.5vw, 48px) clamp(16px, 1.25vw, 24px); }
.cm_overview48 .ovw48_item { display: flex; flex-direction: column; width: calc((100% - clamp(16px, 1.25vw, 24px) * 2) / 3); gap: clamp(16px, 1.25vw, 24px); }
.cm_overview48 .ovw48_thumb { aspect-ratio: 4/3; overflow: hidden; border-radius: clamp(12px, 0.8333333333vw, 16px); background: #f4f5f6; }
.cm_overview48 .ovw48_thumb_img { width: 100%; height: 100%; object-fit: cover; }
.cm_overview48 .ovw48_content { display: flex; flex-direction: column; gap: clamp(12px, 0.8333333333vw, 16px); }
.cm_overview48 .ovw48_title { display: -webkit-box; -webkit-line-clamp: 2; font-weight: 700; font-size: clamp(15.2px, 0.9895833333vw, 19px); line-height: 1.5; line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.cm_overview48 .ovw48_date { color: #666; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_middle_overview1 .ovw1_list { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_middle_overview1 .ovw1_item { display: flex; flex-direction: column; padding: clamp(19.2px, 1.25vw, 24px); gap: clamp(32px, 2.0833333333vw, 40px); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: #f9f9f9; }
.cm_middle_overview1 .ovw1_icon { display: block; aspect-ratio: 1/1; width: clamp(35px, 2.5vw, 48px); }
.cm_middle_overview1 .ovw1_icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.cm_middle_overview1 .ovw1_text { display: flex; flex-direction: column; gap: 4px; }
.cm_middle_overview1 .ovw1_num { color: #666; font-weight: 400; font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_middle_overview1 .ovw1_title { color: #000; font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); }
.cm_middle_overview2 .ovw2_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(10px, 2.5vw, 48px) clamp(10px, 1.25vw, 24px); }
.cm_middle_overview2 .ovw2_item { display: flex; flex-direction: column; border-radius: 0 0 clamp(19.2px, 1.25vw, 24px) clamp(19.2px, 1.25vw, 24px); background: #f4f5f6; isolation: isolate; }
.cm_middle_overview2 .ovw2_img { z-index: 2; position: relative; aspect-ratio: 468/351; width: 100%; overflow: hidden; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: #e6e6e6; }
.cm_middle_overview2 .ovw2_img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cm_middle_overview2 .ovw2_label { display: flex; z-index: 1; justify-content: center; padding: clamp(12.8px, 0.8333333333vw, 16px) clamp(19.2px, 1.25vw, 24px); }
.cm_middle_overview2 .ovw2_label span { color: #333; font-weight: 700; font-size: clamp(15px, 0.9895833333vw, 19px); }
.cm_middle_overview3 .ovw3_list { border-top: 1px solid #ccc; background: #fff; }
.cm_middle_overview3 .ovw3_item { display: flex; align-items: center; padding: clamp(19.2px, 1.25vw, 24px); gap: clamp(20px, 2.0833333333vw, 40px); border-bottom: 1px solid #ccc; background: #fff; }
.cm_middle_overview3 .ovw3_img { flex: 0 0 auto; aspect-ratio: 280/210; width: clamp(224px, 14.5833333333vw, 280px); overflow: hidden; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: #e6e6e6; }
.cm_middle_overview3 .ovw3_img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cm_middle_overview3 .ovw3_text { display: flex; flex: 1 1 0; flex-direction: column; min-width: 0; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_middle_overview3 .ovw3_title { color: #000; font-weight: 700; font-size: clamp(18px, 1.09375vw, 21px); line-height: 1.4; }
.cm_middle_overview3 .ovw3_detail { display: grid; grid-template-columns: clamp(88px, 5.8333333333vw, 112px) 1fr; column-gap: clamp(12.8px, 0.8333333333vw, 16px); row-gap: clamp(9.6px, 0.625vw, 12px); color: #333; font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_middle_overview3 .ovw3_detail dt { font-weight: 700; }
.cm_middle_overview3 .ovw3_detail dd { font-weight: 400; word-break: keep-all; }
.cm_middle_overview4 .ovw4_list { display: flex; flex-direction: column; gap: clamp(20px, 2.0833333333vw, 40px); }
.cm_middle_overview4 .ovw4_item { display: flex; align-items: center; padding: clamp(15px, 1.25vw, 24px); gap: clamp(20px, 2.0833333333vw, 40px); border: 1px solid #ccc; border-radius: clamp(19.2px, 1.25vw, 24px); background: #f9f9f9; }
.cm_middle_overview4 .ovw4_img { flex: 0 0 auto; aspect-ratio: 280/210; width: clamp(224px, 14.5833333333vw, 280px); overflow: hidden; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: #e6e6e6; }
.cm_middle_overview4 .ovw4_img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cm_middle_overview4 .ovw4_body { display: flex; flex: 1 1 0; flex-direction: column; justify-content: space-between; min-width: 0; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_middle_overview4 .ovw4_info { display: flex; flex-direction: column; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_middle_overview4 .ovw4_title { color: #000; font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.4; }
.cm_middle_overview4 .ovw4_detail { display: grid; grid-template-columns: clamp(88px, 5.8333333333vw, 112px) 1fr; column-gap: clamp(12.8px, 0.8333333333vw, 16px); row-gap: clamp(9.6px, 0.625vw, 12px); color: #333; font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_middle_overview4 .ovw4_detail dt { font-weight: 700; }
.cm_middle_overview4 .ovw4_detail dd { font-weight: 400; word-break: keep-all; }
.cm_middle_overview4 .ovw4_btn { display: flex; justify-content: flex-end; gap: 10px; }
.cm_middle_overview4 .ovw4_btn .cm_icon.date:before { background: none; background-color: #fff; -webkit-mask-image: url("../../images/common/icon_date.svg"); mask-image: url("../../images/common/icon_date.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_middle_overview5 { display: flex; flex-direction: column; }
.cm_middle_overview5 .ovw5_list { display: flex; gap: clamp(19.2px, 1.25vw, 24px); }
.cm_middle_overview5 .ovw5_item { display: flex; flex: 1 1 0; flex-direction: column; min-width: 0; border-radius: clamp(19.2px, 1.25vw, 24px) clamp(19.2px, 1.25vw, 24px) clamp(12.8px, 0.8333333333vw, 16px) clamp(12.8px, 0.8333333333vw, 16px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); }
.cm_middle_overview5 .ovw5_head { display: flex; align-items: center; padding: clamp(19.2px, 1.25vw, 24px) clamp(20px, 1.6666666667vw, 32px); gap: clamp(12.8px, 0.8333333333vw, 16px); color: #fff; }
.cm_middle_overview5 .ovw5_item.item1 { background: #007eb4; }
.cm_middle_overview5 .ovw5_item.item2 { background: #425de8; }
.cm_middle_overview5 .ovw5_icon { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(44.8px, 2.9166666667vw, 56px); border-radius: 50%; background: #fff; }
.cm_middle_overview5 .ovw5_icon img { display: block; aspect-ratio: 1/1; width: clamp(25.6px, 1.6666666667vw, 32px); object-fit: contain; }
.cm_middle_overview5 .ovw5_title { color: #fff; font-weight: 700; font-size: clamp(16px, 1.09375vw, 21px); line-height: 1.5; }
.cm_middle_overview5 .ovw5_body { display: flex; position: relative; flex: 1; flex-direction: column; padding: clamp(32px, 2.0833333333vw, 40px) clamp(25.6px, 1.6666666667vw, 32px); overflow: hidden; border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: #fff; word-break: keep-all; }
.cm_middle_overview5 .ovw5_body:before { display: block; z-index: 1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border: 1px solid #ccc; border-radius: inherit; content: ""; pointer-events: none; }
.cm_middle_overview6 .ovw6_list { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(10px, 1.25vw, 24px); }
.cm_middle_overview6 .ovw6_item { display: flex; flex-direction: column; }
.cm_middle_overview6 .ovw6_img { aspect-ratio: 19/15; width: 100%; overflow: hidden; border-radius: clamp(12.8px, 0.8333333333vw, 16px) clamp(12.8px, 0.8333333333vw, 16px) 0 0; background: #e6e6e6; }
.cm_middle_overview6 .ovw6_img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cm_middle_overview6 .ovw6_body { display: flex; flex: 1 1 0; flex-direction: column; padding: clamp(25.6px, 1.6666666667vw, 32px); gap: clamp(19.2px, 1.25vw, 24px); border: 1px solid #ccc; border-top: 0; border-radius: 0 0 clamp(12.8px, 0.8333333333vw, 16px) clamp(12.8px, 0.8333333333vw, 16px); background: #fff; }
.cm_middle_overview6 .ovw6_title { margin: 0; color: #000; font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); line-height: 1.5; word-break: keep-all; }
.cm_middle_overview6 .ovw6_desc { margin: 0; color: #333; font-weight: 400; font-size: clamp(14px, 0.8854166667vw, 17px); line-height: 1.5; word-break: keep-all; }
.cm_middle_overview6 .ovw6_accent { color: var(--reserve-primary); }
.cm_middle_overview7 .ovw7_list { display: flex; }
.cm_middle_overview7 .ovw7_list > li { border-right: 1px solid #ddd; }
.cm_middle_overview7 .ovw7_list > li:last-child { border-right: none; }
.cm_middle_overview7 .ovw7_box { display: flex; flex-direction: column; padding: clamp(12.8px, 0.8333333333vw, 16px) clamp(15px, 2.0833333333vw, 40px); gap: clamp(12.8px, 0.8333333333vw, 16px); word-break: keep-all; }
.cm_middle_overview7 .ovw7_title { font-weight: bold; font-size: clamp(15.2px, 0.9895833333vw, 19px); }
.cm_overview101 { display: flex; align-items: start; padding: clamp(32px, 2.0833333333vw, 40px); gap: clamp(12.8px, 0.8333333333vw, 16px) clamp(32px, 2.0833333333vw, 40px); border: 1px solid #ccc; border-radius: clamp(19.2px, 1.25vw, 24px); box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08); }
.cm_overview101 .ovw101_icon { display: flex; align-items: center; justify-content: center; aspect-ratio: 1/1; width: clamp(70.4px, 4.5833333333vw, 88px); border-radius: clamp(25.6px, 1.6666666667vw, 32px); background: #f4f5f6; }
.cm_overview101 .ovw101_icon img { width: clamp(38.4px, 2.5vw, 48px); }
.cm_overview101 .ovw101_title { margin-bottom: clamp(12.8px, 0.8333333333vw, 16px); font-weight: 700; font-size: clamp(19.2px, 1.25vw, 24px); }
.cm_overview102 { padding: clamp(20px, 2.0833333333vw, 40px); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: #f4f5f6; }
.cm_overview102 .ovw102_box_list { display: flex; gap: clamp(19.2px, 1.25vw, 24px); }
.cm_overview102 .ovw102_box_list .ovw102_box_item { flex: 1 1 0; min-width: 0; padding: clamp(25.6px, 1.6666666667vw, 32px); border-radius: clamp(12.8px, 0.8333333333vw, 16px); background: #fff; }
.cm_overview102 .ovw102_box_item .title { margin-top: clamp(19.2px, 1.25vw, 24px); margin-bottom: clamp(9.6px, 0.625vw, 12px); font-weight: 700; font-size: clamp(16.8px, 1.09375vw, 21px); }
.cm_overview102 .ovw102_bottom_area { display: flex; align-items: center; justify-content: center; margin-top: clamp(64px, 4.1666666667vw, 80px); gap: clamp(19.2px, 1.25vw, 24px); }
.cm_overview102 .ovw102_bottom_area .ovw102_item { display: inline-flex; align-items: center; justify-content: center; height: clamp(64px, 4.1666666667vw, 80px); padding: 0 clamp(38.4px, 2.5vw, 48px); border: 2px solid var(--reserve-primary); border-radius: 99px; background: #fff; color: var(--reserve-primary); font-weight: 700; font-size: clamp(19.2px, 1.25vw, 24px); }
.cm_overview102 .ovw102_bottom_area .item2 { border-color: #ff8235; color: #ff8235; }
.cm_overview102 .ovw102_bottom_area .item3 { border: 0; background: linear-gradient(90deg, rgb(88, 58, 142) 0%, rgb(155, 79, 150) 50%, rgb(219, 100, 0) 100%); color: #fff; }
.cm_overview103 { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(19.2px, 1.25vw, 24px); }
.cm_overview103 .ovw103_item { position: relative; aspect-ratio: 304/400; padding: clamp(19.2px, 1.25vw, 24px); overflow: hidden; border-radius: clamp(19.2px, 1.25vw, 24px); background-position: center; background-size: cover; background-repeat: no-repeat; color: #fff; text-align: center; }
.cm_overview103 .ovw103_item:after { position: absolute; top: 0; left: 0; width: 100%; height: 65%; content: ""; }
.cm_overview103 .ovw103_item.item1 { background-image: url(../../images/jobincheon/sub/sub9_img01.jpg); }
.cm_overview103 .ovw103_item.item1:after { background: linear-gradient(180deg, var(--reserve-primary) 0%, rgba(74, 14, 127, 0) 100%); }
.cm_overview103 .ovw103_item.item2 { background-image: url(../../images/jobincheon/sub/sub9_img02.jpg); }
.cm_overview103 .ovw103_item.item2:after { background: linear-gradient(180deg, #ff8235 0%, rgba(174, 72, 8, 0) 100%); }
.cm_overview103 .ovw103_item.item3 { background-image: url(../../images/jobincheon/sub/sub9_img03.jpg); }
.cm_overview103 .ovw103_item.item3:after { background: linear-gradient(180deg, #7b4ebc 0%, rgba(97, 42, 173, 0) 100%); }
.cm_overview103 .ovw103_item .point { z-index: 1; position: relative; margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); font-weight: 700; font-size: clamp(12px, 0.78125vw, 15px); }
.cm_overview103 .ovw103_item .text { z-index: 1; position: relative; margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); font-weight: 700; font-size: clamp(16.8px, 1.09375vw, 21px); }
.cm_overview104 .ovw104_title { margin-bottom: clamp(32px, 2.0833333333vw, 40px); text-align: center; }
.cm_overview104 .ovw104_title:before { left: 50%; transform: translateX(-50%); }
.cm_overview104 .ovw104_list { border-top: 1px solid #000; }
.cm_overview104 .ovw104_list .ovw104_item { padding: clamp(20px, 2.0833333333vw, 40px); border-bottom: 1px solid #ccc; }
.cm_overview104 .ovw104_list .ovw104_item .item_title { display: flex; margin-bottom: clamp(12.8px, 0.8333333333vw, 16px); gap: clamp(9.6px, 0.625vw, 12px); font-weight: 700; font-size: clamp(19.2px, 1.25vw, 24px); }
.cm_overview104 .ovw104_list .ovw104_item .item_title .num { width: 30px; color: #ff8235; }
.cm_overview105 { display: flex; flex-direction: column; gap: clamp(32px, 2.0833333333vw, 40px); }
.cm_overview105 .ovw105_item { min-height: clamp(240px, 15.625vw, 300px); padding: clamp(25.6px, 1.6666666667vw, 32px) clamp(24px, 1.5625vw, 30px); border-radius: clamp(19.2px, 1.25vw, 24px); background-position: center; background-size: cover; background-repeat: no-repeat; background-color: #000; color: #fff; }
.cm_overview105 .ovw105_item.item1 { background-image: url(../../images/jobincheon/sub/sub8_img03.jpg); }
.cm_overview105 .ovw105_item.item2 { background-image: url(../../images/jobincheon/sub/sub8_img04.jpg); }
.cm_overview105 .ovw105_item.item3 { background-image: url(../../images/jobincheon/sub/sub8_img05.jpg); }
.cm_overview105 .ovw105_item.item4 { background-image: url(../../images/jobincheon/sub/sub8_img06.jpg); }
.cm_overview105 .ovw105_item.item4 .text_list_wrap { display: flex; align-items: start; gap: clamp(6.4px, 0.4166666667vw, 8px) clamp(19.2px, 1.25vw, 24px); }
.cm_overview105 .ovw105_item .ovw105_title { margin-bottom: clamp(16px, 1.0416666667vw, 20px); font-weight: 700; font-size: clamp(22.4px, 1.4583333333vw, 28px); }
.cm_overview105 .ovw105_item .cm_text_list1 .text1_item:before { background: #ff8235; }
.cm_overview105 .ovw105_item .cm_text_list1 .text1_item ~ .text1_item { margin-top: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview106 { text-align: center; }
.cm_overview106 .icon { margin-bottom: clamp(32px, 2.0833333333vw, 40px); }
.cm_overview106 .title { margin-bottom: clamp(16px, 1.0416666667vw, 20px); color: var(--reserve-primary); font-weight: 700; font-size: clamp(22.4px, 1.4583333333vw, 28px); }
.cm_overview106 .desc p { margin-bottom: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview106 .arr { margin-top: clamp(24px, 1.5625vw, 30px); }
.cm_overview107 { display: flex; flex-direction: column; gap: clamp(19.2px, 1.25vw, 24px); }
.cm_overview107 .ovw107_list { display: flex; flex-direction: column; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_overview107 .ovw107_list .ovw107_item { display: flex; align-items: start; gap: clamp(9.6px, 0.625vw, 12px); }
.cm_overview107 .ovw107_list .ovw107_item .label { display: inline-flex; align-items: center; justify-content: center; height: clamp(19.2px, 1.25vw, 24px); padding: 0 clamp(9.6px, 0.625vw, 12px); border-radius: 99px; color: #fff; font-size: clamp(12px, 0.78125vw, 15px); }
.cm_overview107 .ovw107_list .ovw107_item .label.color1 { background: #55aeff; }
.cm_overview107 .ovw107_list .ovw107_item .label.color2 { background: #426be3; }
.cm_overview107 .ovw107_list .ovw107_item .label.color3 { background: #63bd55; }
.cm_overview107 .ovw107_list .ovw107_item .label.color4 { background: #f33d46; }
.cm_overview107 .ovw107_list .ovw107_item .label.color5 { background: #511ee9; }
.cm_overview107 .ovw107_list .ovw107_item .label.color6 { background: #29398f; }
.cm_overview108 { display: flex; flex-direction: column; gap: clamp(32px, 2.0833333333vw, 40px); }
.cm_overview108 .ovw108_item { display: flex; padding: clamp(25.6px, 1.6666666667vw, 32px); gap: clamp(32px, 2.0833333333vw, 40px); border: 1px solid #e6e6e6; border-radius: clamp(19.2px, 1.25vw, 24px); background: #f9f9f9; }
.cm_overview108 .ovw108_item .ovw108_thumb { aspect-ratio: 360/270; width: clamp(288px, 18.75vw, 360px); overflow: hidden; border-radius: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview108 .ovw108_item .ovw108_thumb img { width: 100%; height: 100%; object-fit: cover; }
.cm_overview108 .ovw108_item .ovw108_content { flex: 1 1 0; min-width: 0; }
.cm_overview108 .ovw108_item .ovw108_content .s_tit { margin-bottom: clamp(3.2px, 0.2083333333vw, 4px); color: var(--reserve-primary); font-size: clamp(12px, 0.78125vw, 15px); }
.cm_overview108 .ovw108_item .ovw108_content .title { margin-bottom: clamp(12.8px, 0.8333333333vw, 16px); font-weight: 700; font-size: clamp(19.2px, 1.25vw, 24px); }
.cm_overview109 { display: flex; flex-direction: column; gap: clamp(40px, 4.1666666667vw, 80px); }
.cm_overview109 .ovw109_item { display: flex; gap: clamp(20px, 2.0833333333vw, 40px); }
.cm_overview109 .ovw109_item .ovw109_thumb { aspect-ratio: 4/3; width: clamp(320px, 20.8333333333vw, 400px); overflow: hidden; border-radius: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview109 .ovw109_item .ovw109_content { display: flex; flex-direction: column; justify-content: space-between; gap: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview109 .ovw109_item .cm_middle_title1 { margin-bottom: clamp(19.2px, 1.25vw, 24px); }
.cm_overview109 .ovw109_item .ovw109_call { display: flex; align-items: center; padding: clamp(12.8px, 0.8333333333vw, 16px); gap: clamp(12.8px, 0.8333333333vw, 16px); border: 1px solid #ccc; border-radius: clamp(12.8px, 0.8333333333vw, 16px); }
.cm_overview109 .ovw109_item .ovw109_call .icon { display: flex; align-items: center; gap: clamp(9.6px, 0.625vw, 12px); font-weight: 700; }
.cm_overview110 { position: relative; }
.cm_overview110 .ovw110_line { z-index: 0; position: absolute; top: clamp(79.2px, 5.15625vw, 99px); left: 50%; aspect-ratio: 591/1091; width: clamp(472.8px, 30.78125vw, 591px); height: auto; transform: translateX(-50%); pointer-events: none; }
.cm_overview110 .ovw110_list { display: flex; z-index: 1; position: relative; flex-direction: column; gap: clamp(96px, 6.25vw, 120px); }
.cm_overview110 .ovw110_list .ovw110_item { display: flex; align-items: center; gap: clamp(32px, 2.0833333333vw, 40px); }
.cm_overview110 .ovw110_list .ovw110_item .ovw110_content { flex: 1 1 0; min-width: 0; padding: clamp(32px, 2.0833333333vw, 40px); border-top: 2px solid var(--reserve-primary); border-radius: 0 0 clamp(19.2px, 1.25vw, 24px) clamp(19.2px, 1.25vw, 24px); background: #f8f8f9; }
.cm_overview110 .ovw110_list .ovw110_item .ovw110_content .title { margin-bottom: 20px; color: var(--reserve-primary); font-weight: 700; font-size: clamp(22.4px, 1.4583333333vw, 28px); }
.cm_overview110 .ovw110_list .ovw110_item .ovw110_img { aspect-ratio: 1/1; width: clamp(294.4px, 19.1666666667vw, 368px); padding: clamp(19.2px, 1.25vw, 24px); border: 2px solid #efe6f6; border-radius: 50%; background: #fff; }
.cm_overview110 .ovw110_list .ovw110_item .ovw110_img .img { width: 100%; height: 100%; overflow: hidden; border-radius: 50%; background: 0 4px 12px 0 rgba(0, 0, 0, 0.2); }
.cm_overview110 .ovw110_list .ovw110_item .ovw110_img .img img { width: 100%; height: 100%; object-fit: cover; }
.cm_overview110 .ovw110_list .ovw110_item:nth-child(2) { position: relative; }
.cm_overview110 .ovw110_list .ovw110_item:nth-child(2):before { position: absolute; bottom: 100%; left: clamp(25.6px, 1.6666666667vw, 32px); aspect-ratio: 77/86; width: clamp(61.6px, 4.0104166667vw, 77px); background: url(../../images/jobincheon/sub/sub3_bg1.svg) no-repeat center/contain; content: ""; }
.cm_overview110 .ovw110_list .ovw110_item:nth-child(3) { position: relative; }
.cm_overview110 .ovw110_list .ovw110_item:nth-child(3):before { position: absolute; right: clamp(50.4px, 3.28125vw, 63px); bottom: calc(100% + clamp(17.6px, 1.1458333333vw, 22px)); aspect-ratio: 1/1; width: clamp(60px, 3.90625vw, 75px); background: url(../../images/jobincheon/sub/sub3_bg2.svg) no-repeat center/contain; content: ""; }

/* 공통 페이징 */
.cm_paging1 { display: flex; align-items: center; justify-content: center; margin-top: clamp(30px, 2.0833333333vw, 40px); gap: clamp(4px, 0.4166666667vw, 8px); font-size: clamp(11px, 0.8854166667vw, 17px); }
.cm_paging1 .page_control { display: block; flex: 0 0 auto; aspect-ratio: 1/1; width: clamp(23px, 2.5vw, 48px); overflow: hidden; background-position: center; background-size: auto clamp(18px, 1.1979166667vw, 23px); background-repeat: no-repeat; text-indent: 100%; white-space: nowrap; }
.cm_paging1 .page_control.prev { background-image: url(../../images/common/icon_arrow_back.svg); }
.cm_paging1 .page_control.next { background-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_paging1 .page_control.disabled { opacity: 0.5; }
.cm_paging1 .paging_page { display: flex; flex-wrap: wrap; gap: clamp(2px, 0.4166666667vw, 8px); }
.cm_paging1 .page_link { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; aspect-ratio: 1/1; min-width: clamp(24px, 2.5vw, 48px); padding: 0 5px; border-radius: clamp(6.4px, 0.4166666667vw, 8px); background-position: center; background-repeat: no-repeat; color: #444; }
.cm_paging1 .page_link.link_dot { width: clamp(10px, 2.5vw, 48px); background-image: url(../../images/common/icon_ellipsis_horizontal.svg); background-size: clamp(10px, 1.25vw, 24px); }
.cm_paging1 .page_link.active { background-color: var(--color-primary-80); color: #fff; font-weight: bold; }
.cm_paging2 { display: flex; align-items: center; justify-content: space-between; margin-top: clamp(20px, 2.0833333333vw, 40px); gap: 0 clamp(9.6px, 0.625vw, 12px); }
.cm_paging2 .page_control { display: flex; flex: 1 1 0; align-items: center; width: 0; min-width: 0; padding: clamp(16px, 1.0416666667vw, 20px) clamp(19.2px, 1.25vw, 24px); gap: 0 clamp(16px, 1.25vw, 24px); border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); text-decoration: none; transition: opacity 0.2s, color 0.2s, background-color 0.2s, border-color 0.2s; }
.cm_paging2 .page_control:before { flex-shrink: 0; aspect-ratio: 1/1; width: clamp(30px, 2.0833333333vw, 40px); border-radius: 1000px; background-position: center; background-size: 55%; background-repeat: no-repeat; background-color: var(--color-background-gray); content: ""; transition: background-color 0.2s, border-color 0.2s, background-image 0.2s; }
.cm_paging2 .page_control.next { flex-direction: row-reverse; }
.cm_paging2 .page_control.prev:before { background-image: url(../../images/common/icon_arrow_back.svg); }
.cm_paging2 .page_control.next:before { background-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_paging2 .page_control_content { display: flex; flex-direction: column; width: 100%; min-width: 0; gap: 5px; }
.cm_paging2 .page_control.next .page_control_content { align-items: flex-end; }
.cm_paging2 .page_txt { color: #333; font-weight: 700; font-size: clamp(16px, 0.8854166667vw, 17px); line-height: 1; transition: color 0.2s; }
.cm_paging2 .page_title { max-width: 100%; overflow: hidden; color: var(--color-text-secondary); font-weight: 500; font-size: var(--font_size18); text-overflow: ellipsis; white-space: nowrap; }
.cm_paging2 .page_list_btn:hover { border-color: transparent; background-color: #000; color: #fff; transition: background-color 0.2s, color 0.2s, border-color 0.2s; }
.cm_paging2 .page_control:not(.none):hover .page_txt { color: var(--color-primary-80); }
.cm_paging2 .page_control:not(.none):hover:before { background-color: #f5f5f5; }
.cm_paging2 .page_list_btn { flex-shrink: 0; border-color: #ddd; color: #444; font-weight: 500; }

/* 공통 약관 */
.cm_policy .plcy_box { overflow: hidden; border: 1px solid var(--color-border-gray); border-radius: clamp(8px, 0.625vw, 12px); background: #fff; }
.cm_policy .plcy_box .plcy_box_inner { max-height: 24.5rem; padding: clamp(24px, 2.0833333333vw, 40px); overflow: auto; border-radius: inherit; }
.cm_policy .plcy_box .plcy_box_inner:focus-visible { outline-offset: -2px; }
.cm_policy .plcy_wrap ~ .plcy_wrap { margin-top: clamp(24px, 2.0833333333vw, 40px); }
.cm_policy .plcy_wrap .policy_title { margin-bottom: 0.8rem; font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_policy .plcy_wrap .policy_content { font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_policy .privacy_plcy_list > li { display: flex; }

/* 공통 탭 */
.cm_tab { max-width: 100%; overflow: auto; }
.cm_tab.scroll { overflow: auto !important; }
.cm_tab.scroll .tab_list { width: max-content !important; min-width: 100%; }
.cm_tab.scroll .tab_list .tab_item { width: max-content; }
.cm_tab.variant1 .tab_list { display: flex; justify-content: stretch; width: 100%; }
.cm_tab.variant1 .tab_list .tab_item { position: relative; flex: 1 1 0; width: 100%; min-width: 68px; min-height: clamp(40px, 2.9166666667vw, 56px); border-radius: 10px 10px 0 0; font-size: clamp(15px, 0.8854166667vw, 17px); transition: opacity 0.15s; }
.cm_tab.variant1 .tab_list .tab_item:after { position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background: var(--color-border-gray); content: ""; }
.cm_tab.variant1 .tab_list .tab_item.active { background-color: var(--color-background-primary-lightest); color: var(--color-text-primary); font-weight: 700; }
.cm_tab.variant1 .tab_list .tab_item.active:after { height: 3px; background: var(--color-border-primary-dark); }
.cm_tab.variant1 .tab_list .tab_item .tab_button { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: clamp(0px, 0.4166666667vw, 8px) clamp(6px, 0.625vw, 12px); line-height: 1.3; text-align: center; word-break: keep-all; transition: opacity 0.15s; }
.cm_tab.variant1 .tab_list .tab_item:not(.active) .tab_button:hover { opacity: 0.7; }
.cm_tab.variant1 .tab_list .tab_item .tab_button:focus-visible { z-index: 1; position: relative; outline-offset: -2px; }
.cm_tab.variant2 .tab_list { display: flex; width: max-content; gap: 4px 8px; }
.cm_tab.variant2 .tab_list .tab_button { display: inline-flex; align-items: center; justify-content: center; height: clamp(32px, 2.5vw, 48px); padding: 0 clamp(12px, 0.8333333333vw, 16px); border: 1px solid #ccc; border-radius: 50px; outline-offset: -6px; background: #fff; font-size: clamp(15px, 0.8854166667vw, 17px); transition: opacity 0.15s; }
.cm_tab.variant2 .tab_list .tab_button:hover { opacity: 0.7; }
.cm_tab.variant2 .tab_list .active .tab_button { border-color: var(--color-text-primary); background: var(--color-text-primary); color: #fff; font-weight: 700; opacity: 1; }
.cm_tab.variant2 .tab_list .active .tab_button:focus-visible { outline: 2px dashed #fff; }
.cm_tab.variant2.size_sm .tab_list .tab_button { height: clamp(28px, 2.2395833333vw, 43px); }
.cm_tab.variant3 .tab_list { display: flex; width: max-content; gap: 4px; }
.cm_tab.variant3 .tab_list .tab_button { display: flex; align-items: center; justify-content: center; padding: clamp(10px, 0.8333333333vw, 16px) clamp(16px, 1.25vw, 24px); border: 1px solid #ccc; border-radius: clamp(12px, 0.8333333333vw, 16px) clamp(12px, 0.8333333333vw, 16px) 0 0; outline-offset: -6px; background: #f4f5f6; font-size: clamp(16px, 0.9895833333vw, 19px); }
.cm_tab.variant3 .tab_list .active .tab_button { border-color: transparent; background: linear-gradient(90deg, #11785c 0%, #0d6b6b 100%); color: #fff; font-weight: bold; }
.cm_tab.variant3 .tab_list .active .tab_button:focus-visible { outline: 2px dashed #fff; }
.cm_tab.variant3 .tab_list .active .tab_button span { display: inline-block; position: relative; padding-right: 2.8rem; }
.cm_tab.variant3 .tab_list .active .tab_button span:after { position: absolute; top: 3px; right: 0; width: 2rem; height: 2rem; background: url(../../images/common/icon_arrow_down_wt.svg) no-repeat center/contain; content: ""; }
.cm_tab.variant4 { overflow: hidden; border: 1px solid var(--color-border-gray); border-radius: clamp(9.6px, 0.625vw, 12px); background: #fff; }
.cm_tab.variant4 .tab_list { display: flex; width: 100%; }
.cm_tab.variant4 .tab_list .tab_item { flex: 1; min-height: clamp(44.8px, 2.9166666667vw, 56px); }
.cm_tab.variant4 .tab_list .tab_item + .tab_item { border-left: 1px solid var(--color-border-gray); }
.cm_tab.variant4 .tab_list .tab_button { display: flex; align-items: center; justify-content: center; height: 100%; padding: clamp(6.4px, 0.4166666667vw, 8px); backface-visibility: hidden; color: #333; font-weight: 700; font-size: clamp(16px, 0.9895833333vw, 19px); line-height: 1.2; text-align: center; transition: all 0.2s; will-change: auto; }
.cm_tab.variant4 .tab_list .tab_item.active .tab_button { background: var(--color-background-primary); color: #fff; font-weight: 700; }
.cm_tab.variant4 .tab_list .tab_item.active .tab_button:before { display: inline-block; flex-shrink: 0; width: clamp(14px, 1.25vw, 24px); height: clamp(14px, 1.25vw, 24px); margin-right: clamp(4px, 0.4166666667vw, 8px); background: url(../../images/common/icon_check_w.svg) no-repeat center/contain; background-size: 75%; content: ""; }
.cm_tab.variant5 .tab_list { display: flex; flex-wrap: wrap; gap: 6px clamp(8px, 0.8333333333vw, 16px); }
.cm_tab.variant5 .tab_list .tab_item .tab_button { position: relative; font-size: clamp(14px, 0.8854166667vw, 17px); transition: opacity 0.15s ease-in-out; }
.cm_tab.variant5 .tab_list .tab_item .tab_button:after { display: none; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: #000; content: ""; }
.cm_tab.variant5 .tab_list .tab_item .tab_button:hover { opacity: 0.85; }
.cm_tab.variant5 .tab_list .tab_item.active { font-weight: 700; }
.cm_tab.variant5 .tab_list .tab_item.active .tab_button:after { display: block; }
.cm_tab.variant4 .tab_list .tab_button:focus-visible { outline-offset: -4px; }
.cm_tab.variant4 .tab_list .active .tab_button:focus-visible { outline: 2px dashed #fff; }

/**/
.cm_visible_tab .tab_content { display: none; }
.cm_visible_tab .tab_content.active { display: block; }

/* 공통 테이블 */
[class*=cm_table] td[class^=cm_nodata] { display: table-cell; height: clamp(208px, 13.5416666667vw, 260px) !important; }
[class*=cm_table] td[class^=cm_nodata].size_md { height: clamp(128px, 8.3333333333vw, 160px) !important; }
.fixed table { table-layout: fixed; }
.border-right1 { border-right: 1px solid var(--color-border-gray); }
.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 { display: block; flex-shrink: 0; width: 18px; height: 18px; background: url(../../images/common/icon_arrow_right_wt.svg) no-repeat center/contain; content: ""; animation: swipeRight 1.8s ease-in-out infinite; }
.cm_table_scroll_guide + [class*=cm_table] { margin-top: 0 !important; }
.cm_table1 { border-top: 2px solid var(--color-border-primary-dark); }
.cm_table1 th,
.cm_table1 td { height: clamp(50px, 3.125vw, 60px); padding: clamp(8px, 0.5208333333vw, 10px) clamp(10px, 0.78125vw, 15px); border-bottom: 1px solid var(--color-border-gray); line-height: 1.3; text-align: center; }
.cm_table1 th { height: clamp(53px, 3.28125vw, 63px); font-weight: 700; font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_table1 td.subject { text-align: left; }
.cm_table1 td.subject a { display: inline-block; }
.cm_table1 td.subject a:hover { text-decoration: underline; }
.cm_table1 th.bg-01 { background: #f4f5f6; }
.cm_table1.boder_type1 table { border-right: hidden; border-left: hidden; }
.cm_table1.boder_type1 th,
.cm_table1.boder_type1 td { border: 1px solid #ddd; }
.cm_table1.boder_type1 thead { border-bottom: hidden; }
.cm_table1.size_md th,
.cm_table1.size_md td { height: clamp(48px, 3.0208333333vw, 58px); }
.cm_table1 .data_th_none:before { display: none; }
.cm_table1 .board_notice_icon { position: relative; aspect-ratio: 1/1; width: 30px; margin: 0 auto; overflow: hidden; border-radius: 1000px; background-color: var(--color-background-primary-lighter); text-indent: 100%; white-space: nowrap; }
.cm_table1 .board_notice_icon:before { width: 20px; height: 20px; background-color: var(--color-primary-80); content: ""; -webkit-mask-image: url("../../images/common/icon_notice.svg"); mask-image: url("../../images/common/icon_notice.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); mask-position: center; }
.cm_table1.size_sm th,
.cm_table1.size_sm td { padding: clamp(8px, 0.5208333333vw, 10px) 5px; }
.cm_table2 { border-top: 1px solid var(--color-border-gray-darker); }
.cm_table2 thead th { height: clamp(46.4px, 3.0208333333vw, 58px); }
.cm_table2 tbody th { height: clamp(46.4px, 3.0208333333vw, 58px); }
.cm_table2 th,
.cm_table2 td { height: clamp(40px, 2.6041666667vw, 50px); padding: 8px clamp(12.8px, 0.8333333333vw, 16px); border-bottom: 1px solid var(--color-border-gray); font-size: clamp(14px, 0.78125vw, 15px); text-align: center; word-break: keep-all; }
.cm_table2 th { background-color: var(--color-background-gray-light); font-weight: bold; text-align: center; word-break: keep-all; }
.cm_table2.type2 table { border-right: hidden; border-left: hidden; }
.cm_table2.type2 th,
.cm_table2.type2 td { border: 1px solid var(--color-border-gray); }
.cm_table2.type2 thead th { border-bottom: none; }
.cm_table2.type3 td { font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_table3 { border-top: 1px solid var(--color-border-gray-darker); }
.cm_table3 table { border-right: hidden; border-left: hidden; }
.cm_table3 thead th { height: clamp(40px, 2.6041666667vw, 50px); border-bottom: none; }
.cm_table3 tbody th { height: clamp(40px, 2.6041666667vw, 50px); }
.cm_table3 th,
.cm_table3 td { padding: 8px clamp(12.8px, 0.8333333333vw, 16px); border: 1px solid var(--color-border-gray); font-size: clamp(14px, 0.78125vw, 15px); text-align: center; word-break: keep-all; }
.cm_table3 th { background-color: var(--color-background-gray-light); font-weight: bold; text-align: center; word-break: keep-all; }
.cm_table3.type2 { border-right: 1px solid #ccc; border-left: 1px solid #ccc; }
.cm_table4 { border-top: 2px solid var(--color-border-primary-dark); }
.cm_table4 table { border-right: hidden; border-left: hidden; }
.cm_table4 thead th { background-color: #fff; font-weight: 700; }
.cm_table4 tbody th { background-color: var(--color-background-gray-light); }
.cm_table4 th,
.cm_table4 td { height: clamp(48px, 3.125vw, 60px); padding: 8px clamp(12.8px, 0.8333333333vw, 16px); border-bottom: 1px solid var(--color-border-gray); font-size: clamp(15px, 0.8854166667vw, 17px); text-align: center; word-break: keep-all; }
.cm_table5 thead th { height: clamp(32px, 2.0833333333vw, 40px); padding: 0.8rem 1.2rem; background: #f4f5f6; color: #666; font-weight: 700; font-size: clamp(13px, 0.78125vw, 15px); }
.cm_table5 thead th:first-child { border-radius: 0.8rem 0 0 0.8rem; }
.cm_table5 thead th:last-child { border-radius: 0 0.8rem 0.8rem 0; }
.cm_table5 td { height: clamp(40px, 2.8645833333vw, 55px); padding: 8px; border-bottom: 1px solid #eee; font-size: clamp(15px, 0.8854166667vw, 17px); }
.cm_table6 { text-align: left; }
.cm_table6 th,
.cm_table6 td { padding: clamp(6.4px, 0.4166666667vw, 8px); word-break: keep-all; }

/* 공통 스와이퍼 */
.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); }
.gallery_swiper .gallery_swiper_main_wrap { position: relative; }
.gallery_swiper .gallery_swiper_main { aspect-ratio: 4/3; overflow: hidden; }
.gallery_swiper .gallery_swiper_main .swiper-wrapper,
.gallery_swiper .gallery_swiper_main .swiper-slide { height: 100%; }
.gallery_swiper .gallery_swiper_main .swiper-slide img { display: block; width: 100%; height: 100%; object-fit: fill; }
.cm_swiper .gallery_swiper_thumbs { margin-top: clamp(10px, 0.625vw, 12px); }
.cm_swiper .gallery_swiper_thumbs .swiper { width: 100%; }
.cm_swiper .gallery_swiper_thumbs .swiper-slide { aspect-ratio: 4/3; 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_swiper .gallery_swiper_thumbs .swiper-slide img { display: block; width: 100%; height: 100%; object-fit: fill; }
.cm_swiper .gallery_swiper_thumbs .swiper-slide.is_placeholder { cursor: default; filter: grayscale(100%); }
.cm_swiper .gallery_swiper_thumbs .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; }
.organ_swiper .organ_swiper_main_wrap { position: relative; }
.organ_swiper .organ_swiper_main { aspect-ratio: 4/3; overflow: hidden; }
.organ_swiper .organ_swiper_main .swiper-wrapper,
.organ_swiper .organ_swiper_main .swiper-slide { height: 100%; }
.organ_swiper .organ_swiper_main .swiper-slide img { display: block; width: 100%; height: 100%; object-fit: fill; }
.cm_swiper_control { display: flex; position: relative; align-items: center; padding: clamp(5px, 0.4166666667vw, 8px) clamp(10px, 0.8333333333vw, 16px); gap: 5px; border-radius: 0 8px 0 8px; background-color: rgba(0, 0, 0, 0.5); }
.cm_swiper_control .swiper-pagination { position: static; width: auto; color: #fff; }
.cm_swiper_control .swiper-pagination-bullet { border-radius: 9999px; background-color: #aaa; opacity: 1; }
.cm_swiper_control .swiper-pagination-bullet-active { width: 30px; background-color: #fff; }
.cm_swiper_control .slide_play_btn { aspect-ratio: 1/1; width: 2rem; overflow: hidden; background: url(../../images/common/icon_play_wt.svg) no-repeat center center/contain; text-indent: 100%; white-space: nowrap; }
.cm_swiper_control .slide_play_btn.state_play { background-image: url(../../images/common/icon_pause_wt.svg); }
.cm_swiper_control .slide_play_btn:focus-visible { outline-color: #fff; }
.cm_swiper_control .slide_counter { color: #fff; font-weight: 800; line-height: 1; }
.cm_swiper_control .swiper-button-next:after,
.cm_swiper_control .swiper-button-prev:after { content: ""; }
.cm_swiper_control .swiper-navi-btn { width: 2rem; height: 2rem; background-position: center; background-size: contain; background-repeat: no-repeat; }
.cm_swiper_control .swiper-navi-btn.prev { background-image: url(../../images/common/icon_arrow_back_wt.svg); }
.cm_swiper_control .swiper-navi-btn.next { background-image: url(../../images/common/icon_arrow_forward_wt.svg); }
.cm_swiper_control .swiper-navi-btn.swiper-button-disabled { opacity: 0; }
.cm_swiper_control .swiper-navi-btn:focus-visible { outline-color: #fff; }
.cm_swiper_control.inactive { display: none; }
.cm_swiper_control2 { display: flex; gap: clamp(8px, 0.5208333333vw, 10px); }
.cm_swiper_control2 .control_btn { display: block; z-index: 1; position: absolute; top: 50%; width: clamp(35px, 2.6041666667vw, 50px); height: clamp(35px, 2.6041666667vw, 50px); overflow: hidden; transform: translateY(-50%); border-radius: 1000px; background-position: center; background-size: 80%; background-repeat: no-repeat; background-color: rgba(255, 255, 255, 0.7); 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_control2 .control_btn.prev { left: -5px; background-image: url(../../images/common/icon_arrow_back.svg); }
.cm_swiper_control2 .control_btn.next { right: -5px; background-image: url(../../images/common/icon_arrow_forward.svg); }
.cm_swiper_control2 .control_btn.swiper-button-disabled { opacity: 0.3; }

/* 공통 툴바 */
.cm_toolbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; gap: 5px clamp(8px, 0.5208333333vw, 10px); }
.cm_toolbar .toolbar_item.btns { display: flex; flex-wrap: wrap; gap: 0 clamp(6.4px, 0.4166666667vw, 8px); }
.cm_toolbar.end { align-items: flex-end; }
.cm_toolbar.border_btm { margin-bottom: 24px; padding-bottom: 16px; border-bottom: 1px solid var(--color-border-gray); }
.cm_toolbar.flex-nowrap .toolbar_item.auto_area { flex: 1 1 0; min-width: 0; }
.cm_toolbar .img_area img { max-height: clamp(20.8px, 1.3541666667vw, 26px); }
.cm_sort { display: flex; align-items: center; margin: 0; padding: 0; list-style: none; }
.cm_sort > li { position: relative; padding: 0 15px; }
.cm_sort > li::before { display: inline-block; position: absolute; top: 50%; left: 0; width: 1px; height: 17px; transform: translateY(-50%); background: #4d4d4d; content: ""; }
.cm_sort > li:last-child { padding-right: 0; }
.cm_sort > li:first-child:before { display: none; }
.cm_sort > li > a { display: block; color: var(--color-text-basic); font-weight: 400; font-size: 17px; line-height: 1.5; text-decoration: none; white-space: nowrap; }
.cm_sort > li > a.active { padding: 2px 4px; background: var(--color-border-gray-light); }
.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; }
.text-underline { text-decoration: underline; }

/* 타이틀 */
.cm_title { color: #000; }
.cm_title.size_lg { font-weight: 700; font-size: clamp(24px, 1.6666666667vw, 32px); letter-spacing: 1px; }
.cm_title.size_md { font-weight: 700; font-size: clamp(19px, 1.25vw, 24px); letter-spacing: 0; }
.cm_title.size_sm { font-weight: 700; font-size: clamp(17px, 0.9895833333vw, 19px); letter-spacing: 0; }
.cm_title.size_xs { font-weight: 700; font-size: clamp(15px, 0.8854166667vw, 17px); letter-spacing: 0; }
.cm_title2 { position: relative; padding-left: 1.4rem; font-weight: 700; font-size: clamp(19px, 1.25vw, 24px); }
.cm_title2:before { position: absolute; top: 50%; left: 0; width: 4px; height: clamp(17px, 1.1979166667vw, 23px); transform: translateY(-50%); border-radius: 1px; background: var(--color-button-primary); content: ""; }
.cm_title3 { position: relative; margin-bottom: clamp(28px, 2.0833333333vw, 40px); padding-left: 4rem; font-weight: 700; font-size: clamp(24px, 1.6666666667vw, 32px); }
.cm_title3:before { position: absolute; top: calc(50% - 10px); left: 0; width: clamp(20.8px, 1.3541666667vw, 26px); height: clamp(14.4px, 0.9375vw, 18px); background: url(../../images/common/icon_bullet.svg) no-repeat center/contain; content: ""; }
.cm_middle_title1 { position: relative; padding-top: clamp(12.8px, 0.8333333333vw, 16px); color: #000; font-weight: 700; font-size: clamp(20px, 1.4583333333vw, 28px); line-height: 1.4; letter-spacing: 1px; }
.cm_middle_title1:before { position: absolute; top: 0; left: 0; width: 20px; height: 8px; background: url(../../images/middle/common/icon_bullet.svg) no-repeat left top/contain; content: ""; }

/* 텍스트 리스트 */
[class*=cm_text_list].gap-00 li ~ li { margin-top: 0 !important; }
[class*=cm_text_list].gap-02 li ~ li { margin-top: 2px !important; }
[class*=cm_text_list].gap-04 li ~ li { margin-top: 4px !important; }
[class*=cm_text_list].gap-08 li ~ li { margin-top: 8px !important; }
.cm_text_list1 .text1_item { position: relative; padding-left: 2.6rem; font-size: clamp(14px, 0.8854166667vw, 17px); text-align: left; }
.cm_text_list1 .text1_item:before { position: absolute; top: 0.8rem; left: 0.8rem; width: 5px; height: 5px; border-radius: 4px; background: var(--color-text-basic); content: ""; }
.cm_text_list1 .text1_item ~ .text1_item { margin-top: 1.2rem; }
.cm_text_list1.size_sm .text1_item { padding-left: 2.2rem; }
.cm_text_list1.size_sm .text1_item:before { top: 1rem; width: 3px; height: 3px; }
.cm_text_list1.size_sm2 .text1_item { padding-left: 2.2rem; }
.cm_text_list2 .text2_item { position: relative; padding-left: 1.8rem; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_text_list2 .text2_item:before { position: absolute; top: 1.2rem; left: 0; width: 6px; height: 1.2px; background: #4d4d4d; content: ""; }
.cm_text_list2 .text2_item ~ .text2_item { margin-top: 0.8rem; }
.cm_text_list3 .text3_item { position: relative; padding-left: 2rem; color: #666; font-size: clamp(14px, 0.78125vw, 15px); }
.cm_text_list3 .text3_item:before { position: absolute; top: 0.8rem; left: 0.8rem; width: 4px; height: 4px; border: 1px solid #666; border-radius: 4px; content: ""; }
.cm_text_list3 .text3_item ~ .text3_item { margin-top: 0.8rem; }
.cm_text_list4 { counter-reset: number 0; }
.cm_text_list4 .text4_item { position: relative; padding-left: 2.6rem; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_text_list4 .text4_item:before { position: absolute; left: 0; content: counter(number) "."; counter-increment: number; }
.cm_text_list4 .text4_item ~ .text4_item { margin-top: 1.2rem; }
.cm_text_list5 { counter-reset: number 0; }
.cm_text_list5 .text5_item { position: relative; padding-left: 2rem; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_text_list5 .text5_item:before { position: absolute; top: -2px; left: 0; content: counter(number, lower-alpha) "."; counter-increment: number; }
.cm_text_list5 .text5_item ~ .text5_item { margin-top: 1.2rem; }
.cm_text_list6 { counter-reset: number 0; }
.cm_text_list6 .text6_item { position: relative; padding-left: 2rem; color: #4d4d4d; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_text_list6 .text6_item:before { display: flex; position: absolute; top: 5px; left: 0; align-items: center; justify-content: center; width: 13px; height: 13px; border: 1px solid #4d4d4d; border-radius: 50%; content: counter(number); font-size: 9px; line-height: 1; counter-increment: number; }
.cm_text_list6 .text6_item ~ .text6_item { margin-top: 1.2rem; }
.cm_text_list7 .text7_item { position: relative; padding-left: 1.2rem; font-size: clamp(14px, 0.8854166667vw, 17px); }
.cm_text_list7 .text7_item:before { position: absolute; top: 0; left: 0; content: "*"; }
.cm_text_list7 .text7_item ~ .text7_item { margin-top: 0.8rem; }
.cm_validation { display: flex; align-items: center; gap: clamp(6.4px, 0.4166666667vw, 8px); }
.cm_validation:before { display: block; flex-shrink: 0; aspect-ratio: 1/1; width: clamp(20px, 1.25vw, 24px); background-size: contain; background-repeat: no-repeat; content: ""; }
.cm_validation .text { color: var(--color-text-secondary); line-height: 1.3; }
.cm_validation.info:before { background: none; background-color: var(--color-primary-90); -webkit-mask-image: url("../../images/common/icon_info.svg"); mask-image: url("../../images/common/icon_info.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_validation.info .text { color: var(--color-primary-90); }
.cm_validation.info2:before { background: none; background-color: var(--color-primary-80); -webkit-mask-image: url("../../images/common/icon_info.svg"); mask-image: url("../../images/common/icon_info.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_validation.info2 .text { color: var(--color-text-secondary); }
.cm_validation.info2 .text2 { color: var(--color-text-basic); }
.cm_validation.info3:before { background: none; background-color: #526ad9; -webkit-mask-image: url("../../images/common/icon_info.svg"); mask-image: url("../../images/common/icon_info.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_validation.info3 .text { color: var(--color-text-secondary); }
.cm_validation.info3 .text2 { color: var(--color-text-basic); }
.cm_validation.error:before { background: none; background-color: var(--color-danger-50); -webkit-mask-image: url("../../images/common/icon_info2.svg"); mask-image: url("../../images/common/icon_info2.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_validation.error .text { color: var(--color-danger-50); }
.cm_validation.success:before { background: none; background-color: #228738; -webkit-mask-image: url("../../images/common/icon_info3.svg"); mask-image: url("../../images/common/icon_info3.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; }
.cm_validation.success .text { color: #228738; }
.cm_validation.success2:before { background-image: url(../../images/common/icon_info5.svg); }
.cm_validation.confirm:before { background-image: url(../../images/common/icon_round_check.svg); }
.cm_validation.confirm .text { color: var(--color-text-primary); }
.cm_validation.confirm.type2 { align-items: flex-start; }
.cm_validation.confirm.type2 .text { color: #191919; }
.cm_validation.size_sm { gap: clamp(4.8px, 0.3125vw, 6px); }
.cm_validation.size_sm:before { width: clamp(20px, 1.1458333333vw, 22px); }
.cm_validation.size_lg .text { font-size: clamp(15px, 0.9895833333vw, 19px); }
.cm_validation.size_sm .text { font-size: clamp(14px, 0.78125vw, 15px); }
.cm_asterisk { display: flex; gap: 6px; color: #333; font-weight: 700; font-size: clamp(14px, 0.78125vw, 15px); }
.cm_asterisk:before { flex-shrink: 0; content: "*"; color: #1562c7; }
.cm_asterisk.color2 { color: #dc3545; }
.cm_asterisk.color2:before { color: inherit; }
.cm_group_counsel .gc_sections { display: flex; flex-direction: column; gap: clamp(20px, 4.1666666667vw, 80px); }
.cm_group_counsel .gc_section { display: flex; flex-direction: column; gap: clamp(16px, 1.0416666667vw, 20px); }
.cm_group_counsel .gc_section_title { color: #131416; font-weight: 700; font-size: clamp(22px, 1.6666666667vw, 32px); line-height: 1.5; letter-spacing: 1px; }
.cm_group_counsel .gc_text_box { padding: clamp(24px, 1.6666666667vw, 32px); border-radius: clamp(8px, 0.625vw, 12px); background: #f4f5f6; }
.cm_group_counsel .gc_program_con { display: flex; flex-direction: column; gap: clamp(8px, 0.625vw, 12px); }
.cm_group_counsel .gc_sub_text { font-size: clamp(14px, 0.8333333333vw, 16px); }
.cm_group_counsel .gc_apply_head { display: flex; flex-direction: column; gap: clamp(12px, 0.8333333333vw, 16px); }
.cm_group_counsel .gc_apply_title { color: #000; font-weight: 700; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.4; }
.cm_group_counsel .gc_apply_meta { display: flex; flex-direction: column; gap: clamp(6px, 0.4166666667vw, 8px); }

/* 게시판 에디터 */
.editor_content { font-size: 17px; line-height: 1.5; 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 { outline: 2px dashed #000; outline-offset: 2px; 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; }
.root_daum_roughmap .wrap_btn_zoom button:focus-visible { outline: 2px dashed #000; outline-offset: -2px; }
.root_daum_roughmap .roughmap_maker_label a:focus-visible span { outline: 2px dashed #000; outline-offset: -2px; }

/* 공통 스크립트 */
.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; }

/* 공통 비디오 */
.cm_video { aspect-ratio: 16/9; width: 100%; }
@media screen and (max-width:1280px) {
	.cm_box1 { --padding-size: 32px; --border-radius: 10px; }
	.cm_title_box .cm_dash_list1 { flex-direction: column; align-items: start; gap: 12px; }
	.cm_title_box .cm_dash_list1 .dash1_item.flex-1-1-0 { flex: unset; }
	.cm_title_box .cm_dash_list1 .dash1_item .d-flex { flex-direction: column; align-items: start; gap: 4px; }
	.cm_title_box .cm_dash_list1 .dash1_item:before { display: none; }
	.form_group .form_content .form_control { width: 100%; }
	.cm_form_write .form__mail .mail_item_last { width: 200px; }
	.cm_overview47,
	.cm_overview47.grid-row-4 { grid-template-columns: repeat(2, 1fr); }
}
@media screen and (max-width:1280px) and (min-width:481px) {
	.cm_overview14 .ovw14_box { padding: 12px; gap: 16px; }
	.cm_overview14 .ovw14_thumb { width: 120px; }
	.cm_overview14 .ovw14_footer .cm_btn.size_md { padding-right: 4px; padding-left: 4px; font-size: 13px; }
	.cm_overview14 .ovw14_footer .cm_btn.size_md .cm_icon.size_sm { --icon-size: 16; gap: 2px !important; }
}
@media screen and (max-width:1279px) {
	.cm_chk1 .chk_label { padding-left: 26px; }
	.cm_chk1 .chk_label:before { width: 20px; height: 20px; background-size: 10px; }
	.cm_chk1 input[type=radio] + .chk_label:after { top: 4px; left: 5px; width: 10px; height: 10px; }
	.cm_chk6 .chk_label { padding-left: 26px; }
	.cm_chk6 .chk_label:before { width: 20px; height: 20px; background-size: 10px; }
	.cm_chk6 input[type=radio] + .chk_label:after { top: 4px; left: 5px; width: 10px; height: 10px; }
}
@media screen and (max-width:1080px) {
	:root { --body_font_size: 15px; --inner_padding: 15px; --col_padding: 5px; --border_radius5:5px; --border_radius10:10px; --border_radius15:10px; --border_radius20:10px; --border_radius25:10px; --border_radius30:10px; --border_radius35:10px; --border_radius40:10px; --border_radius45:10px; --border_radius50:10px; --font_size10:10px; --font_size11:11px; --font_size12:12px; --font_size13:13px; --font_size14:14px; --font_size15:14px; --font_size16:14px; --font_size17:14px; --font_size18:14px; --font_size19:15px; --font_size20:16px; --font_size21:17px; --font_size22:18px; --font_size23:18px; --font_size24:18px; --font_size25:19px; --font_size26:20px; --font_size27:20px; --font_size28:21px; --font_size29:22px; --font_size30:23px; --font_size31:23px; --font_size32:24px; --font_size33:25px; --font_size34:26px; --font_size35:26px; --font_size36:27px; --font_size37:28px; --font_size38:29px; --font_size39:29px; --font_size40:28px; --font_size41:29px; --font_size42:29px; --font_size43:30px; --font_size44:31px; --font_size45:31px; --font_size46:32px; --font_size47:33px; --font_size48:34px; --font_size49:34px; --font_size50:35px; --font_size51:36px; --font_size52:36px; --font_size53:37px; --font_size54:38px; --font_size55:39px; --font_size56:39px; --font_size57:40px; --font_size58:41px; --font_size59:41px; --font_size60:42px; --font_size61:43px; --font_size62:43px; --font_size63:44px; --font_size64:45px; --font_size65:46px; --font_size66:46px; --font_size67:47px; --font_size68:48px; --font_size69:48px; --font_size70:49px; --font_size71:50px; --font_size72:50px; --font_size73:51px; --font_size74:52px; --font_size75:53px; --font_size76:53px; --font_size77:54px; --font_size78:55px; --font_size79:55px; --font_size80:56px; --font_size81:57px; --font_size82:57px; --font_size83:58px; --font_size84:59px; --font_size85:59px; --font_size86:60px; --font_size87:61px; --font_size88:62px; --font_size89:62px; --font_size90:63px; --font_size91:64px; --font_size92:64px; --font_size93:65px; --font_size94:66px; --font_size95:67px; --font_size96:67px; --font_size97:68px; --font_size98:69px; --font_size99:69px; --font_size100:70px; }
	.cm_category_picker .category_select_area { grid-template-columns: repeat(1, 1fr); }
	.cm_category_picker .category_group { height: auto; max-height: 156px; border-top: 1px solid var(--color-border-gray-dark); border-right: 0; }
	.cm_category_picker .category_group:first-child { border-top: 0; }
	.cm_category_picker .category_group .category_before_select .cm_icon::before { transform: rotate(90deg); }
	.cm_category_picker2 .category_select_area { grid-template-columns: repeat(1, 1fr); }
	.cm_category_picker2 .category_group { height: auto; max-height: 156px; border-top: 1px solid var(--color-border-gray-dark); border-right: 0; }
	.cm_category_picker2 .category_group:first-child { border-top: 0; }
	.cm_category_picker2 .category_group .category_before_select .cm_icon::before { transform: rotate(90deg); }
	.cm_overview6 .ovw6_list { grid-template-columns: repeat(2, 1fr); }
	.cm_overview6.col-03 .ovw6_list { grid-template-columns: repeat(2, 1fr); }
	.cm_overview6.type3 .ovw6_box { height: auto; }
}
@media screen and (max-width:1079px) {
	.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) {
	html { font-size: 62.5%; }
	body { font-size: 15px; }
}
@media screen and (max-width:1024px) {
	.cm_calendar2 { flex-direction: column; }
	.cm_calendar2 .content_area { width: 100%; }
	.cm_calendar2 .calendar tbody tr td { height: 10rem; }
	.cm_calendar2 .calendar .day_event_list { margin-top: 3.2rem; }
	.cm_calendar2 .calendar2_content_box .content_area_event_list { display: grid; grid-template-columns: repeat(2, 1fr); max-height: none; gap: 8px 16px; }
	.cm_calendar2 .calendar2_content_box .content_area_event_list .content_list_item ~ .content_list_item { margin-top: 0; }
	.cm_file_list .file_label_wrap { flex-direction: column; align-items: start; }
	.cm_file_list .file_label_wrap .label { width: 100%; }
	.form_layout1 { flex-direction: column; }
	.form_layout1 .layout_left { width: 100%; }
	.form_layout1 .layout_right { width: 100%; }
	.cm_form_write .form__rrn .form_control { width: 220px; }
	.cm_form_write.form_write1 .form_group.row-02 { grid-template-columns: repeat(1, 1fr); }
	.cm_overview19 .ovw19_box { flex-direction: column; }
	.cm_overview19 .ovw19_thumb_wrap,
	.cm_overview19 .ovw19_content { width: 100%; }
	.cm_overview19 .ovw19_thumb_wrap { max-width: 240px; margin: 0 auto; }
	.cm_overview24 .ovw24_list { grid-template-columns: repeat(3, 1fr); }
	[class*=cm_table].scroll { width: 100%; overflow-x: auto; overflow-y: hidden; }
	[class*=cm_table].scroll table { width: auto; min-width: 100%; }
	[class*=cm_table].scroll th,
	[class*=cm_table].scroll td { word-break: keep-all; }
	.cm_overview45 { grid-template-columns: repeat(1, 1fr); }
	.cm_overview46 { gap: 20px; }
	.cm_overview46 .ovw46_line { flex-direction: column; gap: 12px; }
	.cm_overview46 .ovw46_line .ovw46_title { width: 100%; }
}
@media screen and (max-width:1024px) and (min-width:769px) {

	/* .cm_overview1 .ovw1_footer.ovw1_footer { flex-direction: column; align-items: stretch; gap: 10px; }
	.cm_overview1 .ovw1_footer.ovw1_footer .toolbar_item { width: 100%; }
.cm_overview1 .ovw1_footer.ovw1_footer .toolbar_item:nth-child(2) { text-align: right; } */ }
@media screen and (max-width:1023px) {

	/* 공통 컨텐츠 만족도 조사 */
	.cm_content_satisfaction .survey_input { flex-direction: column; align-items: flex-start; gap: 13px; }
	.cm_content_satisfaction .survey_action { width: 100%; }
	.cm_content_satisfaction .survey_action .cm_btn { width: 100%; }
	.cm_overview2 .ovw2_box { flex-direction: column; }
	.cm_overview2 .ovw2_period { min-width: 100%; }
	.cm_overview2 .ovw2_item { flex-direction: column; align-items: stretch; gap: clamp(6.4px, 0.4166666667vw, 8px); }
	.cm_overview2 .ovw2_item dd { flex-direction: column; align-items: stretch; gap: clamp(6.4px, 0.4166666667vw, 8px); }
	.cm_overview2 .ovw2_item dd .cm_btn { width: 100%; }
	.cm_overview4 .ovw4_list { justify-content: stretch; }
	.cm_overview4 .ovw4_list > li { width: calc((100% - clamp(10px, 0.8333333333vw, 16px) * 2) / 3); }
	.cm_overview4.type2 .ovw4_list > li { width: calc((100% - clamp(10px, 0.8333333333vw, 16px) * 2) / 3); }
}
@media (max-width:768px) {
	.cm_board_detail4 .board_swiper_wrap .swiper-button-prev { left: 8px; }
	.cm_board_detail4 .board_swiper_wrap .swiper-button-next { right: 8px; }
	html { font-size: 62.5%; }
	body { font-size: 14px; }
	.mwp-100 { width: 100% !important; }
}
@media screen and (max-width:768px) {
	.cm_board_list2 .board_item { flex-direction: column; align-items: stretch; padding: 20px; gap: 16px; }
	.cm_board_list2 .board_thumb { aspect-ratio: 4/3; width: 100%; height: auto; border-radius: 12px; }
	.cm_board_list2 .board_right { justify-content: flex-start; height: auto; padding: 0; gap: 12px; }
	.cm_board_list2 .board_title { overflow: visible; font-size: 18px; text-overflow: clip; white-space: normal; }
	.cm_board_list2 .board_desc { font-size: 15px; }
	.cm_board_list2 .board_text_area { gap: 8px; }
	.cm_calendar3 .calendar3_top { flex-direction: column; align-items: flex-start; }
	.cm_calendar3 .calendar3_months { flex-wrap: nowrap; width: 100%; padding-bottom: 4px; overflow-x: auto; }
	.cm_calendar3 .calendar3_months .month_btn { flex-shrink: 0; }
	.cm_calendar3 .calendar3_table tbody td .day_cell .day_event_list { flex-direction: row; flex-wrap: wrap; justify-content: center; gap: clamp(3px, 0.2083333333vw, 4px); }
	.cm_calendar3 .calendar3_table tbody td .day_cell .day_event_item { width: clamp(5px, 0.3125vw, 6px); height: clamp(5px, 0.3125vw, 6px); padding-left: 0; font-size: 0; }
	.cm_calendar3 .calendar3_table tbody td .day_cell .day_event_item:not(:first-child) { display: none; }
	.cm_middle_overview1 .ovw1_list { grid-template-columns: repeat(2, 1fr); }
	.cm_middle_overview2 .ovw2_list { grid-template-columns: repeat(1, 1fr); }
	.cm_middle_overview3 .ovw3_item { flex-direction: column; align-items: stretch; padding: 15px 0; }
	.cm_middle_overview3 .ovw3_img { aspect-ratio: 16/9; width: 100%; }
	.cm_middle_overview3 .ovw3_detail { grid-template-columns: 96px 1fr; }
	.cm_middle_overview4 .ovw4_item { flex-direction: column; align-items: stretch; }
	.cm_middle_overview4 .ovw4_img { aspect-ratio: 16/9; width: 100%; }
	.cm_middle_overview4 .ovw4_detail { grid-template-columns: 96px 1fr; }
	.cm_middle_overview5 .ovw5_list { flex-direction: column; }
	.cm_middle_overview6 .ovw6_list { grid-template-columns: repeat(2, 1fr); }
	.cm_middle_overview6 .ovw6_body { padding: clamp(16px, 1.0416666667vw, 20px); gap: clamp(12.8px, 0.8333333333vw, 16px); }
	.cm_overview101 { flex-direction: column; }
	.cm_overview102 .ovw102_box_list { flex-direction: column; }
	.cm_overview102 .ovw102_bottom_area { flex-direction: column; }
	.cm_overview103 { grid-template-columns: repeat(1, 1fr); }
	.cm_overview104 .ovw104_list .ovw104_item .item_title { flex-direction: column; align-items: center; text-align: center; }
	.cm_overview105 .ovw105_item.item4 .text_list_wrap { flex-direction: column; }
	.cm_overview107 .ovw107_list .ovw107_item { flex-direction: column; align-items: start; }
	.cm_overview108 .ovw108_item { flex-direction: column; align-items: center; }
	.cm_overview108 .ovw108_item .ovw108_content { width: 100%; }
	.cm_overview109 .ovw109_item { flex-direction: column; align-items: center; }
	.cm_overview109 .ovw109_item .ovw109_content { width: 100%; }
	.cm_overview110 .ovw110_line { display: none; }
	.cm_overview110 .ovw110_list .ovw110_item { flex-direction: column-reverse; }
	.cm_overview110 .ovw110_list .ovw110_item .ovw110_content { width: 100%; }
	.cm_overview110 .ovw110_list .ovw110_item:nth-child(2) { flex-direction: column; }
	.cm_overview110 .ovw110_list .ovw110_item:nth-child(2):before { bottom: calc(100% + 12px); left: 14px; width: 40px; }
	.cm_overview110 .ovw110_list .ovw110_item:nth-child(3):before { right: 6px; bottom: calc(100% - 20px); }
	:root { --body_font_size: 14px; }
	.cm_board_detail1 .board_title_wrap { display: flex; flex-direction: column; align-items: stretch; gap: 8px 0; }
	.cm_board_detail1 .board_content .editor_content { min-height: auto; }
	.cm_board_detail1 .board_info .cm_dash_list1 { flex-direction: column; align-items: stretch; }
	.cm_board_detail1 .board_info .cm_dash_list1 .dash1_item:before { display: none; }
	.cm_board_detail2 .board_slider { flex-direction: column; margin-bottom: 50px; gap: 20px; }
	.cm_board_detail2 .board_slider .organ_swiper { width: 100%; max-width: 320px; }
	.cm_board_detail3 .board_header { flex-direction: column; gap: 15px; }
	.cm_board_detail3 .board_header_thumb { width: 100%; margin: 0 auto; }
	.cm_board_detail3 .board_header_content { padding-top: 0; }
	.cm_board_detail3 .board_header_info_location dl { flex-direction: column; align-items: stretch; gap: 4px; }
	.cm_box1 { --border-radius: 8px; --padding-size: 16px; }
	.cm_notice_box { padding: 15px 20px; padding-left: 20px; }
	.cm_notice_box:before { width: 80px; }
	.cm_notice_box .notice_desc { font-size: 16px; }

	/* 공통 버튼 */
	.cm_btn.size_lg { font-size: 16px; }
	.cm_btn.size_md { font-size: 15px; }
	.cm_calendar2 .calendar_head { flex-direction: column; align-items: flex-start; gap: 10px; }
	.cm_calendar2 .select_month { width: 100%; }
	.cm_calendar2 .select_month_list { flex-wrap: wrap; justify-content: center; width: 100%; gap: 8px 0; }
	.cm_calendar2 .select_month_list .month_item ~ .month_item { margin-left: clamp(6px, 1.5vw, 12px); padding-left: clamp(7px, 1.6vw, 13px); }
	.cm_calendar2 .select_month_list .month_item { line-height: 2.8rem; }
	.cm_calendar2 .calendar tbody tr td { height: 5.6rem; padding: 0.6rem 0.4rem; }
	.cm_calendar2 .calendar tbody tr td.selected_dd { transform: none; }
	.cm_calendar2 .calendar tbody tr td.today span { width: 20px; height: 20px; font-size: 1.1rem; }
	.cm_calendar2 .calendar .day_btn { padding: 0.6rem 0.4rem; font-size: 1.2rem; }
	.cm_calendar2 .calendar .day_event_list { position: absolute; bottom: 0.6rem; left: 0; flex-direction: row; flex-wrap: wrap; align-self: center; justify-content: center; width: 100%; margin-top: 0; gap: 3px; }
	.cm_calendar2 .calendar .day_event_list .day_event_item { padding-left: 0; }
	.cm_calendar2 .calendar .day_event_list .day_event_item .ellipsis { display: none; }
	.cm_calendar2 .calendar .day_event_list .day_event_item:before { display: inline-block; position: static; width: 6px; height: 6px; transform: none; vertical-align: middle; }
	.cm_calendar2 .calendar2_content_box { padding: 12px; }
	.cm_calendar2 .calendar2_content_box .content_area_event_list { grid-template-columns: repeat(1, 1fr); max-height: none; overflow-y: visible; }

	/* 공통 컨텐츠 만족도 조사 */
	.cm_content_satisfaction .survey_chk_wrap { display: grid; grid-template-columns: repeat(3, 1fr); width: 100%; }
	.cm_content_satisfaction .survey_chk .chk_label { width: 100%; font-size: 15px; }
	.cm_file_list .cm_file_item,
	.cm_file_list .cm_file_item.type2 { padding: 8px 12px; font-size: 14px; }
	.cm_file_list .cm_file_item.type2 { flex-direction: column; align-items: start; gap: 8px; }
	.cm_file_list .cm_file_item.type2 .file_btns { justify-content: end; width: 100%; gap: 8px; }
	.cm_chk4 .chk_label .label_img { transform: scale(0.85); }
	.cm_search1 { flex-direction: column; width: 100%; }
	.cm_search1 select { width: 100%; }
	.cm_search1 .search_input_area { width: 100%; }
	.cm_search1 .search_input_area .form_control { flex: 1 1 0; width: auto; min-width: 0; }
	.cm_search1 .search_input_area .input_wrap { width: 100%; }
	.cm_search4 .btns { text-align: right; }
	[class*=form_group].type_period .form_control.datepicker { width: 158px; }
	[class*=form_group].type_period .form_period_btns { justify-content: space-between; width: 100%; max-width: 342px; }
	[class*=form_group] .type_with_btns { flex-direction: column; gap: 8px 0; }
	[class*=form_group] .type_with_btns .form_area,
	[class*=form_group] .type_with_btns .btns_area { width: 100%; }
	[class*=form_group] .type_with_btns .btns_area .btn_search { width: 100%; }
	.form_group2 { flex-direction: column; }
	.form_group2 .form_label { width: 100%; margin-top: 0 !important; }
	.formGroup_row_list { flex-direction: column; align-items: start; }
	.formGroup_row_list .form_group2 { flex-direction: column; align-items: start; width: 100%; }
	.formGroup_row_list [class*=form_group] .form_content { width: 100%; }
	.formGroup_row_list [class*=form_group] .form_content .form_control { width: 100% !important; }
	.form_layout1 { flex-direction: column; }
	.form_layout1 .layout_left { width: 100%; max-width: none; }
	.form_layout1 .layout_right { flex: none; width: 100%; }
	.form_layout5 input[type=text] { flex: none; margin-left: 0; }
	.cm_form_write.form_write1 .form_layout7 .form_group ~ .form_group { margin-top: 2px; }
	.cm_filter_box.mob_stretch [class*=form_group].type_period .form_control.datepicker { width: calc(50% - 13px); }
	.cm_filter_box.mob_stretch [class*=form_group].type_period .form_period_btns { max-width: 100%; }
	.cm_filter_box.mob_stretch [class*=form_group].type_search .cm_search1 .search_input_area { max-width: 100%; }
	.cm_filter_condition .cm_toolbar { margin-top: 12px; }
	.cm_form_write .period_fields { flex-wrap: wrap; align-items: center; }
	.cm_form_write .period_fields .form_control.datepicker { flex: 0 0 100%; width: 100%; }
	.cm_form_write .period_fields select.form_control { width: calc(50% - 4px); }
	.cm_form_write .period_fields .sep { flex: 0 0 100%; width: 100%; text-align: center; }
	.cm_form_write .period_fields.type_time select.form_control { width: 90px; }
	.cm_form_write .period_fields.type_time .sep { flex: 0 0 auto; width: auto; text-align: center; }
	.cm_form_write .form__mail .mail_item_last .form_control { max-width: 100%; }
	.cm_form_write.form_write1 .form_write_content { padding: 2.4rem 0.8rem; }
	.cm_form_write.form_write1 .form_group ~ .form_group { margin-top: 2rem; }
	.cm_form_write.form_write1 .form_group .form_control { max-width: 100%; }
	.cm_form_write.form_write1 .form_group.row-02 { gap: 2rem; }
	.cm_form_write.form_write1 .form_group.row-02 .form_row_item { flex-direction: column; }
	.cm_form_write.form_write1 .form_group2.row-02 .form_row_item { flex-direction: column; }
	.form_group2 .form_row_item.align_center { align-items: stretch; }
	.cm_form_write.form_write1 .form_group .cm_btn { padding-right: 12px; padding-left: 12px; font-size: 14px; }
	.cm_form_write.form_write1 .form_write_footer { flex-direction: column; align-items: start; justify-content: start; }
	.cm_form_write .form_group { flex-direction: column; }
	.cm_form_write .form__rrn .form_control { width: calc(50% - 10px); }
	.cm_form_write .form__address .code .form_control { width: calc(100% - 108px); }
	.cm_form_write .form__tel .tel_fields { flex-wrap: wrap; }
	.cm_form_write .form__tel .tel_fields .tel_item { width: calc(50% - 13px); }
	.cm_form_write .form__tel .tel_fields .tel_item_first { width: 100%; }
	.cm_form_write .form__mail .mail_fields { flex-wrap: wrap; }
	.cm_form_write .form__mail .mail_fields .mail_item { width: 100%; }
	.cm_form_write .form__mail .mail_fields .mail_item_first { width: calc(100% - 22px); }
	.cm_form_write .form__addFile .add_file_list .add_file_item .btn_add { width: 54px; }
	.cm_form_write .form__addFile .add_file_list .add_file_item .btn_del .cm_icon:before { width: 17px; }
	.cm_form_write .form__industry_category .category_fields { flex-direction: column; }
	.cm_sidebar .cm_form_write.form_write1 .form_group .form__mail .form_control,
	.cm_sidebar .cm_form_write.form_write1 .form_group .form__mail .mail_item_last .form_control { width: 100%; max-width: 100%; }

	/* 공통 공공누리 */
	.cm_kogl_info .kogl_info_content { flex-direction: column; align-items: stretch; gap: 8px 0; }
	.cm_dl1 { grid-template-columns: repeat(1, 1fr); gap: 8px; }
	.cm_dl1 dl { flex-direction: column; align-items: stretch; gap: 4px; }
	.cm_dl1 dt { min-width: 0; }
	.cm_dl4 dl { flex-direction: column; align-items: flex-start; gap: 8px; }
	.cm_info_box { flex-direction: column; align-items: stretch; gap: 8px; }
	.cm_join_step .step_item { flex: 1; width: auto; }
	.cm_call_list1 { flex-direction: column; gap: 8px; }
	.cm_accordion .accordion_kv_item { grid-template-columns: 1fr; }
	.location_modal .map_area .map.size_sm { aspect-ratio: 960/500; }
	.verify_modal .verify_modal_form { flex-direction: column; align-items: stretch; }
	.verify_modal .verify_modal_inputbox .verify_input { width: 100%; padding-right: 60px; }
	.verify_modal .verify_modal_inputbox .verify_modal_timer { font-size: 12px; }
	.verify_modal .verify_modal_inputbox .verify_modal_timer br { display: block; }
	.cm_overview1 .ovw1_info_header.ovw1_info_header { flex-direction: row; flex-wrap: wrap; }
	.cm_overview1 .ovw1_footer.ovw1_footer { flex-direction: row; flex-wrap: wrap; }
	.cm_overview1 .ovw1_box .cm_btn.variant2 { flex: 1 1 0; min-width: 0; }
	.cm_overview5 .box_btn .cm_btn { padding-right: 8px; padding-left: 8px; font-size: 14px; }
	.cm_overview7.cm_table1.board:not(.scroll) tbody tr { flex-direction: column; align-items: start; gap: 16px; }
	.cm_overview7.cm_table1.board:not(.scroll) tbody td { width: 100%; }
	.cm_overview7.cm_table1.board:not(.scroll) tbody td:before { display: block; margin-bottom: 8px; }
	.cm_overview7.cm_table1.board:not(.scroll) tbody td.like_area { margin-top: -16px; text-align: right !important; }
	.cm_overview7 .pubPolicies_name { margin-top: 2px; }
	.cm_overview7 .pubPolicies_infos { gap: 4px; }
	.cm_overview7 .pubPolicies_infos .pubPolicies_item .cm_icon::before { --icon-size: 17; }
	.cm_overview9 .ovw9_item { flex-direction: column; }
	.cm_overview9 .ovw9_item .content_area { width: 100%; }
	.cm_overview9 .ovw9_item .thumb_area { width: 16rem; }
	.cm_overview11 .ovw11_list { grid-template-columns: repeat(2, 1fr); }
	.cm_overview12.type2 .ovw12_list { grid-template-columns: repeat(2, 1fr); }
	.cm_overview12.type2 .ovw12_list > li { grid-column: span 2 !important; }
	.cm_overview13 .ovw13_box .btns .cm_btn { flex: 1 1 0; min-width: 0; }
	.cm_overview14 .ovw14_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview14 .ovw14_content { padding-top: 0; }
	.cm_overview15 .ovw15_list { flex-wrap: wrap; }
	.cm_overview15 .ovw15_list > li { width: calc((100% - clamp(10px, 1.25vw, 24px)) / 2); }
	.cm_overview17 .ovw17_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview18 .ovw18_list { grid-template-columns: repeat(2, 1fr); }
	.cm_overview20 .ovw20_box { position: relative; flex-direction: column; padding: 20px; gap: 10px; }
	.cm_overview20 .ovw20_thumb_wrap { position: static; width: 100%; padding: 0; }
	.cm_overview20 .ovw20_title { text-align: center; }
	.cm_overview20 .ovw20_thumb { opacity: 0.3; }
	.cm_overview20 .ovw20_content { padding: 0; }
	.cm_overview21 .ovw21_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview21 .ovw21_btns > * { font-size: 13px; }
	.cm_overview21 .ovw21_btns > * .cm_icon { gap: 2px; }
	.cm_overview21 .ovw21_btns > * .cm_icon::before { width: 16px; height: 16px; }
	.cm_overview23 .ovw23_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview25 .ovw25_item { flex-direction: column; }
	.cm_overview25 .ovw25_item .thumb_area { width: 100%; }
	.cm_overview25 .ovw25_item .thumb_area .thumb { max-width: 320px; margin: 0 auto; }
	.cm_overview26 .ovw26_box { flex-direction: column; }
	.cm_overview26 .ovw26_thumb_wrap { justify-content: center; width: 100%; }
	.cm_overview26 .ovw26_thumb { width: 100%; }
	.cm_overview26 .ovw26_list { flex-direction: row; flex-wrap: wrap; gap: 10px; }
	.cm_overview26 .ovw26_list > li { width: calc((100% - 10px) / 2); }
	.cm_overview26 .ovw26_btns { justify-content: stretch; }
	.cm_overview26 .ovw26_btns > * { flex: 1 1 0; }
	.cm_overview32 .ovw32_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview33 .ovw33_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview33 .ovw33_box { display: flex; align-items: flex-start; gap: 12px; }
	.cm_overview33 .ovw33_icon { flex-shrink: 0; margin-bottom: 0; }
	.cm_overview35 .ovw35_list { grid-template-columns: repeat(2, 1fr); }
	.cm_overview36 .ovw36_box { flex-direction: column; gap: 12px; }
	.cm_overview36 .ovw36_thumb_wrap { justify-content: center; }
	.cm_overview37 .ovw37_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview38 .ovw38_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview39 .ovw39_box { flex-direction: column; }
	.cm_overview39 .ovw39_thumb { width: 100%; }
	.cm_overview40 .ovw40_list { grid-template-columns: repeat(2, 1fr); }
	.cm_overview41 .ovw41_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview42 .ovw42_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview43 .ovw43_content_dl { flex-direction: column; }
	.cm_overview44 .ovw44_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview45 .ovw45_item .ovw45_content { flex-direction: column; text-align: center; word-break: keep-all; }
	.cm_overview45 .ovw45_item .ovw45_content strong { display: block; }
	.cm_overview46 .ovw46_line .ovw46_content_list { grid-template-columns: repeat(1, 1fr); gap: 6px; }
	.cm_paging2 .page_txt { font-size: 12px; }
	.cm_table1.board:not(.scroll) table,
	.cm_table1.responsive table { display: block; }
	.cm_table1.board:not(.scroll) colgroup,
	.cm_table1.responsive colgroup { display: none; }
	.cm_table1.board:not(.scroll) thead,
	.cm_table1.responsive thead { display: none; }
	.cm_table1.board:not(.scroll) tbody,
	.cm_table1.responsive tbody { display: block; width: 100%; }
	.cm_table1.board:not(.scroll) tbody tr,
	.cm_table1.responsive tbody tr { display: flex; flex-wrap: wrap; align-items: center; width: 100%; padding: 15px; gap: 10px 15px; border-bottom: 1px solid var(--color-border-gray); }
	.cm_table1.board:not(.scroll) tbody td,
	.cm_table1.responsive tbody td { display: block; position: relative; height: auto !important; padding: 0; border: none; font-size: 14px; text-align: left !important; }
	.cm_table1.board:not(.scroll) tbody td:before,
	.cm_table1.responsive tbody td:before { margin-right: 5px; content: attr(data-th) ":"; color: var(--text-secondary); white-space: nowrap; }
	.cm_table1.board:not(.scroll) tbody td[data-th=선택]:before,
	.cm_table1.responsive tbody td[data-th=선택]:before { display: none; }
	.cm_table1.board:not(.scroll) tbody td[data-th=번호],
	.cm_table1.responsive tbody td[data-th=번호] { display: none; }
	.cm_table1.board:not(.scroll) tbody td[data-th=제목]:before,
	.cm_table1.responsive tbody td[data-th=제목]:before,
	.cm_table1.board:not(.scroll) tbody td[data-th=세부사업명]:before,
	.cm_table1.responsive tbody td[data-th=세부사업명]:before { display: none; }
	.cm_table1.board:not(.scroll) tbody td.mo_no_label:before,
	.cm_table1.responsive tbody td.mo_no_label:before { display: none; }
	.cm_table1.board:not(.scroll) tbody td.subject,
	.cm_table1.responsive tbody td.subject { width: 100%; font-weight: bold; font-size: 16px; text-align: left !important; }
	.cm_table1.board:not(.scroll) tbody td[class*=cm_nodata],
	.cm_table1.responsive tbody td[class*=cm_nodata] { display: flex !important; width: 100% !important; height: 80px !important; }
	.cm_table1.board:not(.scroll) tbody td[class*=cm_nodata]:before,
	.cm_table1.responsive tbody td[class*=cm_nodata]:before { display: none; }
	.cm_table1.board:not(.scroll) tbody td br,
	.cm_table1.responsive tbody td br { display: none; }
	.cm_table1.board:not(.scroll) tbody td.mobile_invisible:before,
	.cm_table1.responsive tbody td.mobile_invisible:before { display: none; }
	.cm_table1.responsive tbody tr { flex-direction: column; align-items: start; gap: 16px; }
	.cm_table1.responsive tbody td { text-align: left; }
	.cm_table1.responsive tbody td .cm_add_file { flex-direction: column; align-items: start; margin-top: 4px; }
	.cm_table6 table { display: block; }
	.cm_table6 colgroup { display: none; }
	.cm_table6 thead { display: none; }
	.cm_table6 tbody { display: block; width: 100%; }
	.cm_table6 tbody tr { display: flex; flex-direction: column; flex-wrap: wrap; align-items: stretch; width: 100%; margin-bottom: 8px; padding-bottom: 8px; gap: 4px; border-bottom: 1px solid var(--color-border-gray); }
	.cm_table6 tbody tr:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
	.cm_table6 tbody td { display: block; position: relative; height: auto !important; padding: 0; border: none; font-size: 14px; text-align: left !important; }
	.cm_table6 tbody td:before { margin-right: 5px; content: attr(data-th) ":"; color: var(--text-secondary); white-space: nowrap; }
	.cm_swiper .gallery_swiper_main .swiper-slide { width: 100% !important; }
	.cm_swiper .gallery_swiper_thumbs .swiper-slide { width: calc((100% - 16px) / 3); }
	.login_guide_modal .cm_box2 .box_content { flex-direction: column; text-align: center; }
	.login_guide_modal .cm_box2 .box_content .logo { width: 16rem; }
}
@media screen and (max-width:767px) {
	.cm_overview15.ovw15-col3 .ovw15_list { flex-wrap: nowrap; gap: 6px; }
	.cm_overview15.ovw15-col3 .ovw15_list > li { flex: 1 1 0; width: 0; min-width: 0; }
	.cm_overview15.ovw15-col3 .ovw15_box { padding: clamp(12px, 2vw, 20px) clamp(6px, 1vw, 12px); gap: 6px; }
	.cm_overview15.ovw15-col3 .ovw15_icon { width: clamp(36px, 8vw, 60px); }
	.cm_overview15.ovw15-col3 .ovw15_title { font-size: clamp(13px, 2.5vw, 15px); }
	.cm_toolbar:not(.mo_nocol) { flex-direction: column; align-items: stretch; gap: 10px; }
	.cm_toolbar:not(.mo_nocol) .toolbar_item:nth-child(2) { text-align: right; }
	.cm_toolbar.align-items-end { align-items: start !important; }
	.cm_toolbar.align-items-end .toolbar_item { width: 100%; }
}
@media screen and (max-width:640px) {
	.cm_multiChip_list.list1 { flex-wrap: nowrap; gap: 4px; }
	.cm_multiChip_list.list1 .cm_chk2 { flex: 1 1 33.333%; min-width: 0; }
	.cm_multiChip_list.list1 .cm_chk2 .chk_label { justify-content: center; width: 100%; height: clamp(50px, 3.2291666667vw, 62px); padding: 0 6px; gap: 3px; font-size: 13px; }
	.cm_multiChip_list.list1 .cm_chk2 .chk_label .icon { flex-shrink: 0; width: 24px; height: 24px; object-fit: contain; }
	.cm_multiChip_list.list1 .cm_chk2 input:checked ~ .chk_label { padding: 0 6px; gap: 4px; }
	.cm_multiChip_list.list1 .cm_chk2 .chk_label:before { flex-shrink: 0; width: 16px; height: 16px; }
	.cm_overview1 .ovw1_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview3 .ovw3_list { grid-template-columns: repeat(2, 1fr); }
	.cm_overview4 .ovw4_list > li { width: calc((100% - clamp(10px, 0.8333333333vw, 16px) * 1) / 2); }
	.cm_overview4.type2 .ovw4_list > li { width: calc((100% - clamp(10px, 0.8333333333vw, 16px) * 1) / 2); }
	.cm_overview5 .ovw5_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview5 .ovw5_box .box_desc { height: auto; padding-top: 6px; padding-bottom: 6px; }
	.cm_overview6 .ovw6_list,
	.cm_overview6.col-03 .ovw6_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview6 .ovw6_box .box_title,
	.cm_overview6 .ovw6_box .box_desc,
	.cm_overview6.type2 .box_desc .desc_bubble { height: auto; padding-top: 6px; padding-bottom: 6px; }
	.cm_overview6 .btn_more { font-size: 14px; }
	.cm_overview6 .btn_more .cm_icon::before { width: 17px; height: 17px; }
	.cm_overview22 .ovw22_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview26 .ovw26_list { flex-direction: column; }
	.cm_overview26 .ovw26_list > li { width: 100%; }
}
@media (max-width:480px) {
	html { font-size: 56.25%; }
}
@media screen and (max-width:480px) {
	.cm_middle_overview3 .ovw3_detail { grid-template-columns: 1fr; }
	.cm_middle_overview6 .ovw6_img { aspect-ratio: 21/9; }
	.cm_middle_overview4 .ovw4_detail { grid-template-columns: 1fr; }
	.cm_middle_overview4 .ovw4_btn .cm_btn { flex: 1 1 0; }
	.cm_middle_overview6 .ovw6_list { grid-template-columns: 1fr; }
	.cm_comment .comment_write .comment_btn_submit { position: static; width: 100%; margin-top: 8px; }

	/* 공통 컨텐츠 만족도 조사 */
	.cm_content_satisfaction .survey_chk_wrap { grid-template-columns: repeat(2, 1fr); }
	[class*=form_group].type_period .form_control.datepicker { width: calc(100% - 20px); }
	.cm_form_write .form__period { flex-direction: column; align-items: start; gap: 6px; }
	.cm_form_write .form__period .period_item { width: 100%; }
	.cm_form_write .form__period .period_item input[type=text] { width: 100%; }
	.cm_form_write .form__period .period_item select { width: 66px; }
	.cm_filter_box.mob_stretch [class*=form_group].type_period span[aria-hidden=true] { width: 100%; line-height: 0.4; text-align: center; }
	.cm_filter_box.mob_stretch [class*=form_group].type_period .form_control.datepicker { width: 100%; }

	/* .cm_overview1 .ovw1_footer.ovw1_footer { flex-direction: column; } */
	.cm_overview12 .ovw12_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview14 .ovw14_box { flex-direction: column; align-items: stretch; }
	.cm_overview14 .ovw14_thumb { margin: 0 auto; }
	.cm_overview24 .ovw24_list { grid-template-columns: repeat(2, 1fr); }
	.cm_overview35 .ovw35_list { grid-template-columns: repeat(1, 1fr); }
	.cm_overview36 .ovw36_thumb { width: 100%; }
	.cm_overview47 { grid-template-columns: repeat(1, 1fr); }
	.cm_overview48 .ovw48_item { width: 100%; }
	:root { --font_size10:10px; --font_size11:11px; --font_size12:12px; --font_size13:13px; --font_size14:14px; --font_size15:14px; --font_size16:14px; --font_size17:14px; --font_size18:14px; --font_size19:14px; --font_size20:15px; --font_size21:16px; --font_size22:17px; --font_size23:17px; --font_size24:17px; --font_size25:18px; --font_size26:18px; --font_size27:19px; --font_size28:20px; --font_size29:20px; --font_size30:21px; --font_size31:22px; --font_size32:22px; --font_size33:23px; --font_size34:24px; --font_size35:25px; --font_size36:25px; --font_size37:26px; --font_size38:27px; --font_size39:27px; --font_size40:26px; --font_size41:27px; --font_size42:27px; --font_size43:28px; --font_size44:29px; --font_size45:29px; --font_size46:30px; --font_size47:31px; --font_size48:31px; --font_size49:32px; --font_size50:33px; --font_size51:33px; --font_size52:34px; --font_size53:34px; --font_size54:35px; --font_size55:36px; --font_size56:36px; --font_size57:37px; --font_size58:38px; --font_size59:38px; --font_size60:39px; --font_size61:40px; --font_size62:40px; --font_size63:41px; --font_size64:42px; --font_size65:42px; --font_size66:43px; --font_size67:44px; --font_size68:44px; --font_size69:45px; --font_size70:46px; --font_size71:46px; --font_size72:47px; --font_size73:47px; --font_size74:48px; --font_size75:49px; --font_size76:49px; --font_size77:50px; --font_size78:51px; --font_size79:51px; --font_size80:52px; --font_size81:53px; --font_size82:53px; --font_size83:54px; --font_size84:55px; --font_size85:55px; --font_size86:56px; --font_size87:57px; --font_size88:57px; --font_size89:58px; --font_size90:59px; --font_size91:59px; --font_size92:60px; --font_size93:60px; --font_size94:61px; --font_size95:62px; --font_size96:62px; --font_size97:63px; --font_size98:64px; --font_size99:64px; --font_size100:65px; }
}