@charset "UTF-8";

.container {position:relative; z-index:0;}
.container.cmain {flex:1; padding-top:180px;}
.container.cmain.up {padding-top:130px;}
.container, header + #bo_wrap {flex:1; padding-top:180px;}
.container.up, header.up + #bo_wrap {padding-top:130px;}
.contents {padding:67px 0 100px;}
.contents.cctv {padding:67px 0 290px;}
/* #bo_list {padding:67px 0 330px;} */


.panal.bggray {background-color:#f8f9fc;}
.panal.flexs {display:flex; align-items:center; gap:.5%}
.panal.fwrap {flex-wrap:wrap;}
.panal.over {overflow:hidden;}
.flexs {display:flex; align-items:center;}
.justifyb {justify-content:space-between;}

/* tab
=======================================================================================================*/
.tab_buttons {display:flex; margin:0 auto 53px; padding:3px; width:306px; justify-content:center; align-items:center; border:1px solid #e8ddfa; border-radius:50px; background-color:#fbf8ff;}
.tab_buttons li {font-size:18px; font-weight:600;}
.tab_buttons li a {display:block; padding:14px 0; width:150px; font-weight:500; border-radius:50px; color:#000;}
.tab_buttons li.active a {color:#fff; background-color:#000;}
.tab_contents {margin-bottom:7rem;}
.tab_content {display:none; border-radius:15px;}
.tab_content.active {display:block;}


/* 공통 모달 기본 스타일 */
.modal_popup {display:none; position:fixed; top:50%; left:50%; padding:1.5rem 0; width:430px; transform:translate(-50%, -50%); background:#fff; border-radius:30px; box-shadow:0 5px 15px rgba(0,0,0,0.3); z-index:1000;}
.modal_popup.show {visibility:visible;}
.modal_overlay {display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,.5); z-index:999;}
.modal_content {padding:0 1.1rem; text-align:center;}
.modal_bottom {padding:0 1.3rem;}
.modal_bottom.flexs {display:flex; gap:2%}
.modal_bottom a, 
.mm_info_object .modal_bottom button.submitBtn {display:block; width:100%; height:50px; line-height:50px; font-size:1.1rem; font-weight:600; color:#fff; text-align:center; border-radius:15px;}
.modal_bottom.flexs a {width:100%;}
.mm_info_object .modal_bottom button.submitBtn { background:#ff4040; order:2; cursor:pointer;}
.modal_bottom a.btn_close { background:#1c1c1c; order:1;}
.modal_popup .mm_info_object .frm_box {padding:1.5rem 1.3rem 1rem; width:100%;}
.modal_popup .mm_info_object .frm_box input {width:100%; min-width:100%;}
.modal_popup .mm_info_object .frm_box input#frm_name2 {margin-bottom:8px;}
.modal_popup .mm_info_object .agree_box {padding:0 1.3rem 1.5rem; width:100%;}
#modalPopupInquiry {display:none; transform:none; top:auto; bottom:13rem; right:-430px; left:auto; width:320px; border-radius:25px; transition:right .35s ease;}
#modalPopupInquiry.is-up {bottom:19rem;}
#modalPopupInquiry.show {right:1rem;}
#modalPopupInquiry .modal_bottom a.btn_close {display:none;}
.modal_popup .tit_topic {margin-bottom:0; font-size:20px; font-weight:700;}

.modal_call_banner {display:block; margin:1rem 1rem 0; padding:1.5rem 1rem 8rem; text-align:center; border-radius:15px;
  background: #EBEBF1;
  background: url("../img/main/img_call_banner.png") no-repeat center 4.5rem/70%,
              linear-gradient(140deg, rgba(235, 235, 241, 1) 0%, rgba(240, 245, 249, 1) 100%);

}
.modal_call_banner > * {display:block;}
.modal_call_banner span {font-size:14px; font-weight:400;}
.modal_call_banner strong {font-size:32px; font-weight:800; color:#ff4040;}


/* model pup chk */
.modal_content .item_flex {padding:0 0 1rem;}
.modal_content .item_flex .item:first-child {margin-bottom:10px;}
.modal_content .item_flex .item input {width:100%; color:#000; border:1px solid #ccc; border-radius:8px;}
.modal_content .agree_box {padding:0 0 2rem;}
.modal_content .col_allchk, .mm_info_object .agree_grups .col {display:flex; align-items:center;}
.modal_content .agree_grups {padding:.5rem 0 0 0;}
.modal_content .agree_grups .col {display:flex; margin:.8rem 0 0; width:100%;}
.modal_content .btn_toggle, .mm_info_object .agree_grups .col .btn_view {margin-left:auto;}
.modal_content .btn_toggle {position:relative; padding-right:1.1rem; font-size:.95rem; font-weight:500;}
.modal_content .btn_toggle::after {position:absolute; right:2px; top:7px; content:''; width:6px; height:6px; border-top:2px solid #000; border-right:2px solid #000; transform:rotate(-45deg); transition:.2s ease;}
.modal_content .btn_toggle.on::after {top:3px; transform:rotate(136deg);}
.modal_content .agree_grups .col .btn_view {display:block; margin-left:auto; padding:.2rem .5rem; font-size:.85rem; border-radius:5px; font-weight:500; background-color:#cbcbcb;}

/* model pup email chk */
#modalPopupAgree3 .scroll_box {height:auto;}

/* scroll bar width */
.scroll_box {margin-bottom:2rem; height:55vh;}
.simplebar-scrollbar:before {background-color: rgba(0,0,0,0.5); border-radius:3px;}
/* scroll bar width */
.simplebar-scrollbar {width:6px; height:6px;}

/* model pup personal information chk */
.terms {margin:.2rem 0 1.5rem; font-size:1.05rem; font-weight:bold; color:#3d3d3d;}
.sub_terms {font-weight:500; color:#3d3d3d; text-align:left;}
.caption_cont {padding-top:2rem; text-align:left; color:#3d3d3d;}
.caption_cont .caption {margin-bottom:1rem; font-size:.95rem; font-weight:700; color:#3d3d3d;}
.caption_cont .desc {margin-bottom:1rem; font-size:.9rem; font-weight:400; color:#3d3d3d;}
.caption_cont .sub_topic {margin-bottom:1rem; padding-left:8px; font-size:.9rem;  font-weight:600; text-indent:-8px;}
.caption_cont .sub_topic::before {content:""; display:inline-block; margin:-2px 5px 0 0; width:3px; height:3px; border-radius:30px; vertical-align:middle; background-color:#3d3d3d;}
.caption_cont .sub_num_topic {margin-bottom:.2rem; padding-left:8px; font-size:.9rem;  font-weight:600; text-indent:-8px;}
.caption_cont .dt_info {padding-left:1rem; display:flex; flex-wrap:wrap;}
.caption_cont .dt_info > * {margin-bottom:1rem; font-size:.9rem; font-weight:400;}
.caption_cont .dt_info dt {width:5.5rem;}
.caption_cont .dt_info dd {padding-left:18px; width:calc(100% - 5.5rem); text-indent:-7px;}
.caption_cont .dt_info dd::before {content:"/"; display:inline-block; margin:-3px 7px 0 0; font-size:.9rem; vertical-align:middle; color:#3d3d3d;}
.caption_cont .info_notice {padding-left:15px; display:block; font-weight:400; text-indent:-15px;}
.caption_cont .info_notice.plt {padding-left:35px;}
.caption_cont .li_desc {margin-bottom:1rem; padding-left:15px;}
.caption_cont .li_desc li {padding-left:6px; text-indent:-6px; font-weight:400;}
.caption_cont .li_desc li::before {content:""; display:inline-block; margin:-2px 5px 0 0; width:2px; height:2px; border-radius:30px; vertical-align:middle; background-color:#3d3d3d;}
.br1, .br2 {display:block;}




/* table title */
.tb_topic_box {display:flex; justify-content:space-between; align-items:center; margin-bottom:10px;}
.tb_topic_box .tit_topic {margin:0; font-size:1.5rem; font-weight:600;}
.tb_topic_box .txt_explain {font-size:1.1rem; font-weight:400;}

.tb1 {width:100%; table-layout:fixed;}
.tb1 thead th, .tb1 tbody th, .tb1 tbody td {padding:.8rem; border:1px solid #eaeaea; border-width:0 1px 1px 1px; text-align:center; line-height:1.2;}
.tb1 thead th:last-child, .tb1 tbody th:last-child, .tb1 tbody td:last-child { border-right:1px solid #eaeaea; }
.tb1 tbody td.line { border-right: 1px solid #eaeaea; }
.tb1 tbody td img { max-width: 130px; }
.tb1 tbody td.red {color: #EC1B23; text-align: right; padding-right: 15px; }
.tb1 tbody td.blue {color: #008BB7; text-align: right; padding-right: 15px; }
.tb1 thead th, .tb1 tbody th {font-weight:600; font-size:16px; background-color:#f8f8f8;}
.tb1 tbody td { font-weight: 400; font-size:16px; line-height: 22px; }
.tb1 tbody td.bg { background-color: #F8F8F8; }
.tb1 tbody td i { font-size: 15px; color: #EC1B23; }
.tb1 tbody td.tal { text-align: left;}
.tb_price_box {margin-bottom:4rem;}
.tb1 thead th.lin, .tb1 tbody th.lin, .tb1 tbody td.lin {border-left:1px solid #eaeaea;}
.tb1 tbody td i.ibr {color:#000;}
.tb_price_box .tab_buttons {margin:0; width:228px;}
.tb_price_box .tab_buttons li {font-size:16px;}
.tb_price_box .tab_buttons li a {padding:10px 0; width:110px;}

.li_memo {margin-top:.7rem;}
.li_memo li {margin-bottom:.2rem; font-size:.95rem; color:#995839; text-align:left;}
.li_memo li::before {content:""; display:inline-block; margin:-3px 5px 0 0; width:5px; height:5px; vertical-align:middle; border-radius:50px; background-color:#995839;}
.li_memo li span {display:block; margin-bottom:.2rem; padding-left:10px; color:#919191}
.li_memo li span::before {content:"-"; display:inline-block; margin:-3px 5px 0 0; color:#919191; vertical-align:middle;}
.li_memo li span i { color:#919191;}

.visual_card_box {display:flex; align-items:center; justify-content:center; min-height:520px; background:linear-gradient(180deg, #ed4245, #fe223b);}
.visual_card_box .sub_top_card_object {position:relative; display:flex; justify-content:end; padding:51px 0 37px;}
.visual_card_box .sub_top_card {position:relative; margin-right:3rem; padding:21px 20px 23px 154px; max-width:888px; border-radius:10px; background-color:#fff; overflow:hidden;}
.visual_card_box .sub_top_card .headline {margin-bottom:26px; text-align:left;}
.visual_card_box .sub_top_card .headline .desc {font-size:20px; font-weight:500; margin-bottom:4px;}
.visual_card_box .sub_top_card .headline .tit {font-size:26px; font-weight:500;}
.visual_card_box .sub_top_card .headline .tit .highlight {color:#eb0c12; font-weight:700;}
.visual_card_box .card_body_object {display:flex; align-items:center; gap:20px;}
.visual_card_box .card_body_object .card_body_box {flex:1; display:flex; flex-direction:column; gap:16px;}
/* Option groups */
.card_body_box .option_group {display:flex; flex-direction:column; gap:5px;}
.card_body_box .option_group .option_label {font-size:18px; font-weight:500; text-align:left;}
.card_body_box .option_group .options {display:flex; gap:12px;}
.card_body_box .option_group .opt-btn {display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; padding:5px; border:1px solid #ddd; border-radius:10px;
min-width:150px; min-height:60px; transition:border-color 0.18s, background 0.18s, box-shadow 0.18s; outline:none; cursor:pointer;}
.card_body_box .option_group .opt-btn .opt-name {font-size:16px; font-weight:600;}
.card_body_box .option_group .opt-btn .opt-desc {font-size:12px; font-weight:500; color: #747474;}
.card_body_box .option_group .opt-btn:hover {border:2px solid #eb0c12; box-shadow:0 2px 10px rgba(232,0,28,0.10);}
.card_body_box .option_group .opt-btn.selected {border:2px solid #eb0c12; background-color:#fff5f5; box-shadow:0 2px 10px rgba(232,0,28,0.10);}
.card_body_box .option_group .opt-btn.selected .opt-name {color:#e8001c;}
.card_body_box .option_group .opt-btn.selected .opt-desc {color:#e8001c;}

/* Right price panel */
.price-panel {display:flex; flex-direction:column; align-items:stretch; justify-content:space-between; gap:14px; padding:15px 10px; width:220px; text-align:left; border-radius:10px; background-color:#f8f8f8;}
.price-box .price-title {padding:0 10px; font-size:18px; font-weight:700;}
.price-box .price-value {padding:0 10px; font-size:24px; font-weight:700; color:#eb0c12;}
.price-box .price-value span {font-size:24px; font-weight:700; color:#eb0c12;}
.price-notes {margin:15px 0; padding:23px 0; border:1px solid #e8e8e8; border-width:1px 0 1px 0;}
.price-notes li {font-size:13px; color:#747474; line-height:1.3; text-indent:-5px; padding-left:5px;}
.price-notes li::before {content:""; display:inline-block; margin:-3px 3px 0 0; width:2px; height:2px; vertical-align:middle; border-radius:50px; background-color:#747474;}
.cta-btn {display:flex; align-items:center; justify-content:center; width:100%; height:60px; color:#fff; font-size:24px; font-weight:700; border-radius:10px; background: linear-gradient(90deg, #ea0b11, #ff2228); cursor:pointer;}
/* Price animation */
.price-value {transition:opacity 0.2s;}
.price-value.flash {opacity:0.3;}
.img_visual_card {position:absolute; left:2rem; bottom:0}

.sub_tab_box .tabs {display:inline-flex; justify-content:center; gap:30px; margin-bottom:68px;}
.sub_tab_box .tabs li {flex:1; min-width:235px; height:65px; font-size:18px; font-weight:700; border-bottom:1px solid #333; border-radius:15px; background-color:#fff; cursor:pointer;}
.sub_tab_box .tabs li.active {position:relative; border:2px solid #eb0c12; color:#eb0c12; z-index:1;}
.sub_tab_box .tabs li:not(.active):hover {border-color:var(--primary); color:var(--primary);}
.sub_tab_box .tabs li a {display:flex; align-items:center; justify-content:center; padding:22px 0 21px;}

.plan_object {position:relative; padding:50px 20px 100px;}
.plan_object .topic {display:block; margin-bottom:7px; font-size:36px; font-weight:700; text-align:left;}
.plan_object .desc {margin-bottom:40px; font-size:20px; font-weight:400; color:#666; text-align:left;}
.plan_object .desc em {font-weight:700; color:#666;}
.plan_object .bundle_opt {position:absolute; right:20px; top:125px; display:flex; align-items:center; gap:20px;}
.plan_object .bundle_opt label {font-size:18px;}
.plan_object .bundle_opt label {display:inline-flex; align-items:center; gap:7px; font-size:18px; font-weight:700; cursor:pointer; user-select:none;}
.plan_object .bundle_opt input[type="checkbox"] {padding:0; appearance:none; -webkit-appearance:none; width:18px; height:18px; border-radius:50%; border:2px solid #747474; background:#747474; cursor:pointer; position:relative; flex-shrink:0; transition:border-color .2s, background .2s;}
.plan_object .bundle_opt input[type="checkbox"]::after {content:''; position:absolute; top:50%; left:50%; width:4px; height:7px; border:2px solid #fff; border-top:none; border-left:none; transform:translate(-50%, -60%) rotate(45deg); transition:opacity .15s;}
.plan_object .bundle_opt input[type="checkbox"]:checked {background:#e8192c; border-color:#e8192c;}
.plan_object .bundle_opt input[type="checkbox"]:disabled {cursor:default;}
.plan_object .bundle_opt input[type="checkbox"]:disabled:checked {background:#e8192c; border-color:#e8192c;}
.plan_object .bundle_opt label:has(input:disabled) {cursor:default; color:#000;}
.plan_object .plans { display:flex; gap:60px; justify-content:center; flex-wrap:wrap; }
.plan_object .plan_card {flex:1; transition:.2s;}
.plan_object .plan_card > div {padding:50px 20px 28px; border-radius:20px; background-color:#fff; box-shadow:0px 10px 45px rgba(38, 45, 118, .08); transition:.2s;}
.plan_object .plan_card > div:hover {transform:translateY(-4px); box-shadow:0 4px 16px rgba(0,0,0,0.1);}
.plan_object .plan_card .plan_title {display:block; font-size:20px; font-weight:700; margin:19px 0 18px;}
.plan_object .plan_card .price {font-size:22px; font-weight:700; color:#d60000; margin-top:5px; transition: all 0.35s ease;}
.plan_object .plan_card .mobile-discount-row {transition: all 0.3s ease;}
.plan_object .plan_card .details {padding:15px 0; border:1px solid #e4e4e4; border-width:1px 0 1px 0;}
.plan_object .plan_card .details .info_row {display:flex; align-items:center; justify-content:space-between; margin-bottom:10px;}
.plan_object .plan_card .details .info_row span {font-size:16px; font-weight:700;}
.plan_object .plan_card .details .info_row.gray span {font-size:14px; color:#747474; font-weight:500;}
.plan_object .plan_card .details .info_row:last-child {margin-bottom:0;}
.plan_object .plan_card .price_all {display:flex; align-items:center; justify-content:space-between; padding:20px 0; border-bottom:1px solid #e4e4e4;}
.plan_object .plan_card .price_all > * {font-size:20px; font-weight:700;}
.plan_object .plan_card .price_all span {color:#eb0c12;}
.plan_object .plan_card .t_note {margin-top:8px; font-size:13px; font-weight:300; color:#747474; text-align:right;}
.plan_object .btn_link {margin-top:30px;}

.call_sub_banner {display:flex; align-items:center; padding:0 54px; min-height:160px; border-radius:20px;}
.call_sub_banner.red {background:#d2090f url("../img/sub/img_call_sub_banner.png") no-repeat 95% 0;}
.call_sub_banner.purple {background:#692eaa url("../img/sub/img_call_sub_banner2.png") no-repeat 95% 0;}
.call_sub_banner.orange {background:#e36f19 url("../img/sub/img_call_sub_banner3.png") no-repeat 95% 0;}
.call_sub_banner.violet {background:#8e2e97 url("../img/sub/img_call_sub_banner4.png") no-repeat 95% 0;}
.call_sub_banner div {text-align:left;}
.call_sub_banner div > * {width:100%; color:#fff;}
.call_sub_banner div .tit,
.call_sub_banner div .tit i {font-size:38px; font-weight:700; color:#fff;}
.call_sub_banner div .tit em {color:#ffea00; font-weight:800;}
.call_sub_banner div .desc {margin-top:8px; font-size:20px; font-weight:400;}
.call_sub_banner div .desc em {color:#fff; font-weight:600;}


.plan_rows_wrap {padding:100px 0; overflow:hidden; background-color:#fff;}
.plan_rows_wrap .plan-row {display:flex; align-items:center; justify-content: space-between; margin-top:20px; padding:0 50px; min-height:137px; border:1px solid #e8e8e8; border-radius:20px; transition:background .15s;}
.plan_rows_wrap .plan-row:first-child {margin-top:0;}
.plan_rows_wrap .plan-row:hover {background:#fafafa;}
.plan_rows_wrap .plan-row.hidden {display:none;}
.plan_rows_wrap .plan-row .pr-cont-box {display:flex; align-items:center; justify-content: space-between; width:60%;}
.plan_rows_wrap .pr-info {text-align:left;}
.plan_rows_wrap .pr-name {margin-bottom:4px; font-size:20px; font-weight:700; color:#333; margin-bottom:6px;}
.plan_rows_wrap .pr-desc {font-size:14px; font-weight:500; color:#747474; line-height:1.3;}
.plan_rows_wrap .pr-icons {display:flex; gap:35px; align-items:flex-end;}
.plan_rows_wrap .pr-icon-item {display:flex; flex-direction:column; align-items:center; gap:7px;}
.plan_rows_wrap .pr-icon-circle {width:52px; height:52px; border-radius:50%; background:#f5f5f5; display:flex; align-items:center; justify-content:center;}
.plan_rows_wrap .pr-icon-circle img {width:26px; height:26px; object-fit:contain;}
.plan_rows_wrap .pr-icon-circle svg {width:24px; height:24px; color:#e8192c;}
.plan_rows_wrap .pr-icon-label {font-size:12px; font-weight:400; white-space:nowrap;}
.plan_rows_wrap .pr-prices {display:flex;  align-items:flex-start;}
.plan_rows_wrap .pr-price-col:first-child {margin-left:3rem;}
.plan_rows_wrap .pr-price-col {text-align:left; margin-left:2rem; min-width:100px;}
.plan_rows_wrap .pr-price-lbl {font-size:14px; color:#666; font-weight:700; margin-bottom:4px;}
.plan_rows_wrap .pr-price-val {font-size:20px; font-weight:700; color:#e8192c; white-space:nowrap;}
.plan_rows_wrap .plan_rows_more {margin-top:30px; text-align: center;}
.plan_rows_wrap .plan_rows_more .btn_plan_more {display:inline-flex; align-items:center; gap:6px; padding:10px 20px; background:none; border:none; cursor:pointer; font-size:16px; font-weight:600; color:#666; border:1px solid #e8e8e8; border-radius:50px; transition:color .15s;}
.plan_rows_wrap .plan_rows_more .btn_plan_more:hover {color:#e8192c;}
.plan_rows_wrap .plan_rows_more .btn_plan_more svg {transition:transform .3s; color:#000}
.plan_rows_wrap .plan_rows_more .btn_plan_more.open svg {transform:rotate(180deg);}
.plan_rows_wrap .plan_rows_more .btn_plan_more.hidden-btn {display:none;}




.accordion_wrap {}
.accordion_wrap .acc-item:first-child {border-top:2px solid #666;}
.acc-item {border-bottom:1px solid #cbcbcb;}
.acc-head {display:flex; align-items:center; justify-content:space-between; padding:20px; cursor:pointer; user-select:none; background-color:#fff;}

.acc-title {font-size:20px; font-weight:700; color:#333;}
.acc-item.open .acc-title {color:#e8192c;}
.acc-arrow {flex-shrink:0; display:flex; align-items:center; justify-content:center; transition:transform .3s;}
.acc-item.open .acc-arrow {transform: rotate(180deg);}
.acc-arrow svg {width:38px; height:24px; stroke:#333;}
.acc-item.open .acc-arrow svg {stroke:#e8192c; }
.acc-body {display:none; padding:20px; background-color:#f9f9f9;}
.acc-item.open .acc-body {display:block; border-top:1px solid #cbcbcb;}
.acc-table {width:100%; border-collapse:collapse; border:1px solid #e8e8e8;}
.acc-table th,
.acc-table td {font-size:16px; border: 1px solid #e8e8e8; vertical-align:middle; text-align:center; color:#333;}
.acc-table thead th {padding:7px 10px; font-weight:500; border: 1px solid #f9f9f9; background-color:#e8e8e8;}
.acc-table tbody th,
.acc-table tbody td {padding:10px; font-weight:400;}
.acc-table tbody .thd th {padding:7px 10px; font-weight:500; border: 1px solid #f9f9f9; background-color:#e8e8e8;}
.acc-table td.td-note {text-align:left;}
.acc-table td.td-note li {display:block; margin-bottom:6px;}
.acc-item .acc-body .acc-text {text-align:left;}
.acc-item .acc-body .acc-text li {margin-bottom:8px; line-height:1.3;}
.acc-table td.td-note li::marker,
.acc-item .acc-body .acc-text li::marker {content: "· "; margin-right:5px; color:#333; font-weight:700; font-size:13px;}
.acc-item .acc-body .acc-text li.notice_item::marker {content: "※ ";}
.acc-item .acc-body .acc-text .dep {padding-left:10px;}
.acc-item .acc-body .acc-text .dep li::marker {content: "- "; color:#797979;}
.acc-item .acc-body .acc-text .dep li {color:#797979;}
.acc-item .acc-body .acc-text .dep li:first-child {color:#000;}
.acc-item .acc-body .acc-text .li_dep::marker,
.acc-item .acc-body .acc-text .dep li:first-child::marker {content: "";}
.acc-item .acc-body .tit {display:block; margin-bottom:5px; text-align:left; font-size:17px; font-weight:700;}
.acc-table.mgb {margin-bottom:20px;}

.coalition_wrap {padding:100px 0 33px; display:flex; align-items:center; gap:30px;}
.coalition_wrap.swiper {position:relative; padding:100px 0 33px;}
.coalition_wrap .part {padding:0 30px; display:flex; align-items:center; gap:10px; flex:1; justify-content:space-between;min-height:140px; text-align:left; border-radius:20px;}
.coalition_wrap .swiper-wrapper {
        display: flex;
        gap: 20px;
    }

    .coalition_wrap .swiper-slide {
        width: calc((100% - 40px) / 3);
    }
.coalition_wrap .part.bg1 {background-color:#faf3d8;}
.coalition_wrap .part.bg2 {background-color:#fff4f2;}
.coalition_wrap .part.bg3 {background-color:#e9f1fa;}
.coalition_wrap .part .col strong {font-size:20px; font-weight:700; color:#333;}
.coalition_wrap .part .col p {margin-top:5px; font-size:16px; font-weight:500; color:#747474}


.visual_cctv_box {display:flex; align-items:center; min-height:520px; background:url("../img/sub/img_cctv_visual.png") no-repeat 80% top, linear-gradient(90deg,#202125 0%,#202125 65%,#2b3043 100%);}
.visual_cctv_box .inner img {display:block;}
.visual_cctv_box .inner strong {display:block; margin-top:20px; line-height:1.4; color:#fff; font-size:26px; font-weight:500; text-align:left;}
.visual_cctv_box .inner strong em {color:#f5c26b; font-weight:500;}
.plan_object.cctv {padding:50px 20px 121px;}
.plan_object.cctv .plan_card {width: calc((100% - 120px) / 3);}
.plan_object.cctv .plan_card > div {padding:17px 50px;}
.plan_object.cctv .plan_card .plan_title {color:#333;}
.plan_object.cctv  .plan_card .details {padding:10px 0; border-bottom:none;}
.plan_object.cctv .plan_card .price_all {padding:0 0 7px;}
.cctv_service_wrap {padding:60px 20px; border-radius:20px; background-color:#202125;}
.cctv_service_wrap .topic {font-size:36px; font-weight:700; color:#fff;}
.cctv_service_wrap .desc {margin-top:10px; font-size:24px; font-weight:500; color:#fff;}
.cctv_service_wrap .service_cont {display:flex; align-items:center; justify-content:center; margin-top:60px;}
.cctv_service_wrap .service_cont .part {display:flex; align-items:center; gap:35px; text-align:center;}
.cctv_service_wrap .service_cont .part .col.swiper-slide {flex:1;}
.cctv_service_wrap .service_cont .part img {display:block; margin:0 auto 4px;}
.cctv_service_wrap .service_cont .part strong {width:100%; font-size:24px; font-weight:700; color:#f5c26b;}
.cctv_service_wrap .service_cont .part p {margin-top:5px; line-height:1.5; font-size:18px; font-weight:500; color:#fff;}

.cctv_point_wrap {padding:100px 0;}
.cctv_point_wrap .topic {display:block; margin-bottom:30px; font-size:36px; font-weight:700; text-align:left;}
.cctv_point_wrap .cctv_point_box {display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:30px 0; padding:50px 40px;border-radius:20px; background-color:#fafafa;}
.cctv_point_wrap .cctv_point_box .col {text-align:center; width: calc((100% - 0px) / 3); }
.cctv_point_wrap .cctv_point_box .col img {display:block; margin:0 auto; text-align:center;}
.cctv_point_wrap .cctv_point_box .col strong {width:100%; font-size:16px; font-weight:800; color:#1f2a44;}
.cctv_point_wrap .cctv_point_box .col p {margin-top:5px; line-height:1.3; font-size:16px; font-weight:500; color:#666;}

.best_event_box {margin-bottom:75px;}
.best_event_box .swiper-wrapper {display:flex; align-items:center; gap:30px;}
.best_event_box .swiper-wrapper .swiper-slide {flex:1;}
.best_event_box .part {display:block; padding:59px 10px 49px; border-radius:20px;}
.best_event_box .part.bg1 {background-color:#fff2f2;}
.best_event_box .part.bg2 {background-color:#effdfe;}
.best_event_box .part.bg3 {background-color:#f9f3ff;}
.best_event_box .part .col strong {width:100%; font-size:26px; font-weight:500;}
.best_event_box .part .col p {margin:10px 0 20px; font-size:18px; font-weight:500; color:#666;}
.best_event_box .part .col img {display:block; margin:0 auto; text-align:center;}
.event_box img {display:block; margin:0 auto; width:100%;}
.topic_event {display:block; margin-bottom:52px; padding:20px; font-size:36px; font-weight:700; color:#333; text-align:left; border-bottom:2px solid #666;}

/*
-------------------------------------------------------------------------------------------*/
#bo_wrap .item {display:flex; justify-content:center; margin-bottom:53px ; min-width:800px;}
#bo_wrap .item .img img {display:block;}
.event_meta {display:flex; justify-content:space-between; align-items:center; padding:20px; border-bottom: 1px solid #c4c4c4;}
.event_meta > * {font-size:18px;}
.event_meta .date {color:#333; font-weight:400;}
.event_meta .status {font-weight:700;}
.event_meta .status.ing {color:#e52e2a;}
.event_meta .status.end {color:#666;}
.event_meta .status.ready {color:#2979ff;}
#bo_v .topic_event {margin-bottom:0;}
#bo_v .event_meta {margin-top:0;}
#bo_v .event_box {padding:52px 0;}
#bo_btns a {display:block; padding:19px 0; font-size:20px; border:1px solid #333; border-width:1px 0 1px 0;}

.review_note_box {display:flex; flex-wrap:wrap; align-items:flex-start; gap:57px 90px; justify-content:flex-start; padding:0 45px;}
#bo_wrap .review_note_box .item {margin-bottom:0; width:calc((100% - 270px) / 4); min-width:auto; flex-direction:column;}
.review_note_box .item .img {border-radius:8px; overflow:hidden;}
.review_note_box .item .img img {width:100%;}
.review_note_box .review_info {display:flex; align-items:center; justify-content:space-between; margin:20px 0;}
.review_note_box .review_info .review_star {display:flex; gap:2px; font-size:18px; color:#eb0c12;}
.review_note_box .review_info .review_name {font-size:16px; color:#747474;}
.review_note_box .review_tit {display:block; margin-bottom:15px; font-size:17px; font-weight:600; text-align:left; word-break:keep-all; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.review_note_box .review_desc {font-size:16px; color:#747474; line-height:1.3; flex:1; text-align:left; display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; word-break:keep-all;}
#bo_v .contents {text-align:left;}
#bo_v .contents img {display:block; width:100%;}
.note_box .topic_event {margin-bottom:0;}
.note_box .date {font-weight:500;}
.note_box .contents {padding:50px 20px;}
/* 페이징 */
.sound_only, .msg_sound_only { display: none; }
.pg_wrap {display:flex; align-items:center; justify-content:center; gap:20px; padding:20px; margin:0 auto 100px; width:1200px; text-align:center; border:1px solid #333; border-width:1px 0 1px 0;}
.pg {display:flex; align-items:center; gap:1rem; text-align:center}
.pg_page, .pg_current {display:flex; align-items:center; justify-content:center; width:20px; height:20px; background-color:#fff; font-size:14px; font-weight:400;}
.pg_current {color:#eb0c12; font-weight:700; border: 1px solid #eb0c12; border-radius:5px;}
.pg_page {color:#999; height:20px; width:20px; text-decoration:none; border-radius:5px; border:1px solid #fff;}
.pg_start {text-indent:-999px; overflow:hidden; background:url('../img/sub/btn_first.png') no-repeat center;}
.pg_prev {text-indent:-999px; overflow:hidden; background:url('../img/sub/btn_prev.png') no-repeat center;}
.pg_end {text-indent:-999px; overflow:hidden; background:url('../img/sub/btn_end.png') no-repeat center;}
.pg_next {text-indent:-999px; overflow:hidden; background:url('../img/sub/btn_next.png') no-repeat center;}

.topic_event.sing, .topic_event.notice, .topic_event.qna {margin-bottom:0;}
#bo_btns.btn_sing_box {display:flex; align-items:center; justify-content:center; margin-bottom:40px; padding:20px 0; background-color:#f7f7f7;}
#bo_btns.btn_sing_box .btn_box {position:relative;}
#bo_btns.btn_sing_box .btn_box .btn_sing {position:absolute; left:30px; bottom:0; display:inline-flex; align-items:center; justify-content:center; gap:10px; min-width:300px; min-height:50px; font-size:20px; color:#fff; border:0; border-radius:10px; background-color:#eb0c12; box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.15);}
#bo_btns.btn_sing_box .btn_box .btn_sing::before {content:""; width:16px; height:16px; background:url('../img/sub/ico_sing_review.png') no-repeat 0 0;}

#bo_btns.view_bottom_box {display:flex; align-items:center; justify-content:space-between; padding:30px 20px; border-top:1px solid #333;}
#bo_btns.view_bottom_box .lt {display:flex; align-items:center; gap:20px;}
#bo_btns.view_bottom_box a, 
#bo_btns.view_bottom_box button {display:inline-flex; align-items:center; justify-content:center; padding:0; min-width:120px; min-height:50px; font-size:18px; font-weight:500; border:1px solid #333; border-radius:10px;}
#bo_btns.view_bottom_box a.btn_sing,
#bo_btns.view_bottom_box button.btn_sing {color:#fff; border:0; background:linear-gradient(90deg, #eb0c12, #ff2228); box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.15);}
#bo_btns.view_bottom_box a.rt {margin-left:auto;}

.tb_view {width:100%; table-layout:fixed;}
.tb_view thead th, .tb_view tbody th, .tb_view tbody td {padding:10px; text-align:left; line-height:1.3; font-size:18px; font-weight:500; color:#333; vertical-align:middle; border:1px solid #c4c4c4; border-width:0 0 1px 1px;}
.tb_view thead th:first-child, .tb_view tbody th:first-child {border-left:0;}
.tb_view tbody td.red {color: #EC1B23; text-align: right; padding-right: 15px; }
.tb_view tbody td.blue {color: #008BB7; text-align: right; padding-right: 15px; }
.tb_view thead th, 
.tb_view tbody th {text-align:center; background-color:#f7f7f7;}
.tb_view tbody td input {width:100%; height:45px; border-radius:10px; border:1px solid #d9d9d9;}
.tb_view tbody td .in_phone {display:flex; align-items:center; gap:5px;}
.tb_view tbody td .in_phone select {width:50%; height:45px; border-radius:10px; border:1px solid #d9d9d9;}
.tb_view tbody td .in_phone input {text-align:center;}
.cke_sc {display:none;}
.tb_view tbody td.td_secret input {width:calc(100% - 58%);}
.tb_view tbody td.td_secret .secret_box {display:inline-flex; align-items:center; gap:3px; margin-left:10px; width:auto; font-size:15px;}
.tb_view tbody td.td_secret .secret_box input {width:15px; height:15px;}

#bo_privacy {text-align:left;}
#bo_privacy .chk_box {display:flex; align-items:center; gap:5px; margin-bottom:5px; padding:20px; width:100%; font-weight:600;}
#bo_privacy .chk_box span {font-size:17px; font-weight:600;}
#bo_privacy .chk_box input {width:17px; height:17px; border:2px solid #333;}
#bo_privacy ul {border:1px solid #cbcaca; border-width:1px 0 0 0;}
#bo_privacy ul li > p.title {position:relative; padding:10px 0; border-bottom:1px solid #eaeaea;}
#bo_privacy ul li .title i {position:absolute; right:0; top:1px; width:60px; height:60px; cursor:pointer;}
#bo_privacy ul li .title i::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
    transform:translate(-50%, -50%) rotate(45deg); /* ↓ 화살표 */
}
#bo_privacy ul li .chk_box {margin-bottom:0; padding:10px 40px;}
#bo_privacy ul li .chk_box span {font-weight:400;}
#bo_privacy ul li .con {padding:20px 40px; font-size:16px; border-bottom:1px solid #eaeaea;}
#bo_privacy ul li .con p.tit {padding:15px 0 5px; font-weight:600;}
#bo_privacy ul li .con table {width:100%; border-top:2px solid #000}
#bo_privacy ul li .con table th,
#bo_privacy ul li .con table td {padding:10px; font-size:16px; border-bottom:1px solid #ddd;}
#bo_privacy ul li .con table th {width:25%; background-color:#f8f8f8;}
#bo_privacy ul li .con { display: none; }
#bo_privacy ul li.on .con { display: block; }
#bo_privacy ul li .title i.on { display:none;}
#bo_privacy ul li .title i.on::before {transform:translate(-50%, -50%) rotate(-135deg);}
#bo_privacy ul li .title i.off { display:block; }
#bo_privacy ul li.on .title i.on {display: block;}
#bo_privacy ul li.on .title i.off {display: none; }


.notice_banner_box {display:flex; align-items:center; min-height:250px; text-align:left; background-color:#f7f7f7;}
.notice_banner_box .inner {padding:2rem 0; background:#f7f7f7 url('../img/sub/img_banner_notice.png') no-repeat right center;}
.notice_banner_box strong {font-size:50px; font-weight:700; color:#e52e2a;}
.notice_banner_box p {margin-top:5px; line-height:1.4; font-size:22px; color:#333; font-weight:400;}
.notice_box #bo_v {border-top:0}
.notice_box #bo_v > .title {padding:0; border-bottom:0;}
.notice_box .event_meta strong {font-size:16px; color:#666;}
.notice_box .contents {padding:50px 20px;}
#bo_list.notice_wrap {padding:67px 0 0;}
.notice_object li {border-bottom:1px solid #c4c4c4;}
.notice_object li:last-child {border-bottom:0;}
.notice_object li a {padding:20px; display:flex; align-items:center; justify-content:space-between; font-size:18px; font-weight:500;}
.notice_object li.notice {background-color:#f7f7f7;}
.notice_object li .tit {display:flex; align-items:center; overflow:hidden; white-space:nowrap; text-overflow: ellipsis;}
.notice_object li .tit .tip, .event_meta .date .tip {display:inline-flex; align-items:center; justify-content:center; margin-right:20px; width:100px; height:30px; color:#e52e2a; border:1px solid #e52e2a; border-radius:5px; background-color:#fff;}
.notice_object li a .date {font-size:16px; color:#666; font-weight:400;}

.faq_wrap {padding:67px 0 0;}
.faq_wrap .topic_event.faq {margin-bottom:0; border-bottom:0;}
.faq_swiper .swiper-slide {flex:1;}
.faq_swiper .swiper-wrapper {display:inline-flex; justify-content:center; gap:30px; margin-bottom:0;}
.faq_swiper .swiper-wrapper li {flex:1;}
.faq_swiper .swiper-wrapper li a {height:65px; font-size:18px; font-weight:700; border-bottom:1px solid #333; border-radius:15px; background-color:#fff;}
.faq_swiper .swiper-wrapper li a#bo_cate_on {position:relative; border:2px solid #eb0c12; color:#eb0c12; z-index:1;}
.faq_swiper .swiper-wrapper li:not(.swiper-slide-active):hover a {border-color:var(--primary); color:var(--primary);}
.faq_swiper .swiper-wrapper li a {display:flex; align-items:center; justify-content:center; padding:22px 0 21px;}
.faq_wrap #bo_sch {position:relative; margin:20px 0; text-align:right;}
.faq_wrap #bo_sch .in_search {position:relative; padding:0 45px 0 10px; width:400px; height:40px; font-size:16px; border:1px solid #d9d9d9; border-width:0 0 1px 0; border-radius:0; }
.faq_wrap #bo_sch .btn_search {position:absolute; right:0; top:0; display:block; width:40px; height:40px; font-size:0; text-indent:-9999px; background:url("../img/sub/btn_search.png") no-repeat 0 0; cursor:pointer;}

.faq_wrap #bo_list {padding:0; width: 100%; border-top: 2px solid #222;}
.faq_wrap #bo_list .faq_head {display:flex; align-items:center; padding:20px; gap:20px;}
.faq_wrap #bo_list .faq_head span {font-size:20px; font-weight:700; color:#333; text-align:center;}
.faq_wrap #bo_list .faq_head .category {width:10%;}
.faq_wrap #bo_list .faq_head .title {width:90%;}
.faq_wrap #bo_list > div { width: 100%; }
.faq_wrap #bo_list > .item {display: block !important; margin-bottom:0; text-align:left; }
.faq_wrap #bo_list > .item > p {width: 100%; border-top:1px solid #c4c4c4;}
.faq_wrap #bo_list > .item > p > b {width:10%; font-size:18px; font-weight:500; color:#333; text-align:center;}
.faq_wrap #bo_list > .item > p > i {position:absolute; right:0; top:1px; width:60px; height:60px; cursor:pointer;}
.faq_wrap #bo_list > .item > p > i.on { opacity: 0; color: #EC1B23; }
.faq_wrap #bo_list > .item > p > i.off { opacity: 1; }
.faq_wrap #bo_list > .item > p.q {position:relative; display:flex; align-items:start; gap:20px; padding:20px 60px 20px 20px; font-size:18px; font-weight:500; color:#333; cursor: pointer; }
.faq_wrap #bo_list > .item > .a {padding:20px 20px 20px 80px; width:100%; font-weight:400; font-size:16px; line-height:1.5; background:#f9f9f9 url("../img/sub/ico_faq_a.png") no-repeat 50px 20px; display:none; }
.faq_wrap #bo_list > .item > .a > * {margin-bottom:8px; color:#333; font-size:16px; background-color: transparent !important;}
.faq_wrap #bo_list > .item.on > p.q > i.on { opacity: 1; }
.faq_wrap #bo_list > .item.on > p.q > i.off { opacity: 0; }
.faq_wrap #bo_list > .item.on > .a { display: block; }
.faq_wrap #bo_list.revivew {display: flex; flex-wrap: wrap; gap: 24px; border-top:none;}
.faq_wrap #bo_list.revivew > .item {width: calc(50% - 12px); box-sizing: border-box;}
.faq_wrap #bo_list > .item > p > i::before {content:""; position:absolute; top:50%; left:50%; width:8px; height:8px; border-right:2px solid #000; border-bottom:2px solid #000; transform:translate(-50%, -50%) rotate(45deg);}
.faq_wrap #bo_list > .item > p > i.on::before {transform:translate(-50%, -50%) rotate(-135deg);}
.faq_wrap #bo_list .item {display:block;}
.faq_wrap #bo_list .item .a {display:none;}
.faq_wrap #bo_list .item.on .a {display:block;}


.qna_object {display:flex; align-items:center; gap:50px; padding:20px; min-height:250px; background-color:#f7f7f7;}
.qna_object .qna_top_box {text-align: left;}
.qna_object .qna_top_box .topic {font-size:28px; font-weight:500;}
.qna_object .qna_top_box .desc {margin:5px 0 14px; font-size:20px; font-weight:400;}
.qna_object .qna_top_box .num {display:flex; align-items:center; gap:30px; font-size:40px; font-weight:700; color:#fd2026;}
.qna_object .qna_top_box .num a {display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:10px 20px; font-size:18px; color:#fff; border-radius:10px; background-color:#333; box-shadow:0px 5px 10px rgba(0, 0, 0, 0.15);}
.qna_object .qna_top_box .num a::before {content:""; width:16px; height:16px; background:url("../img/sub/ico_qna_tel.png") no-repeat 0 0;}

.qna_db_wrap .qna_db_box {margin:0 auto; padding:50px 0; width:500px;}
.qna_db_wrap .qna_db_box .mm_info_object .frm_box input {min-width:100%; border:1px solid #d9d9d9; border-radius:10px;}
.qna_db_wrap .qna_db_box .mm_info_object .frm_box input#frm_name {margin-bottom:20px;}


.sub_dep {padding-right:3.5rem; border-bottom:1px solid #bdbdbd; background-color:#fff;}
.sub_dep ul {position:relative; padding:1.1rem 0; margin:0 auto; width:778px; display:flex;  align-items:center; gap:2rem; z-index:99;}
.sub_dep.jend ul {justify-content:end;}
.sub_dep li {padding:7px 0; text-align:left;}
.sub_dep li a {font-size:18px; font-weight:500; color:#8c8c8c;}
.sub_dep li a:hover, .sub_dep li a.active {color:#ff2228}



.plan_swiper_pagination { display: none; }
.benefit-btn.disabled {color:#a1a1a1; background-color:#f5f5f5; pointer-events:none; cursor:not-allowed;}

.tb_view thead th, .tb_view tbody th {width:150px;}
.review_password_box .bo_password .box {padding:80px 0; background-color:#f7f7f7;}
.review_password_box .bo_password .box label {display:block; margin-bottom:20px; font-size:18px; color:#333; font-weight:500;}
.review_password_box .bo_password .desc {margin-top:20px; font-size:16px; color:#333;}
/* .review_password_box #bo_btns.view_bottom_box.rt {justify-content:end;} */




/**/
.modal_pup_overlay {display:flex; align-items:center; justify-content:center; height:100vh; background-color:#fafafa;}
.modal_pup_overlay .modal_box {position:relative; padding:20px 30px 40px; width:450px; text-align:left; border-radius:20px; background-color:#fff; box-shadow: 0px 10px 45px rgba(38, 45, 118, 0.08);}
.modal_pup_overlay .modal_box .modal_title {display:block; padding:24px 0 0; font-size:26px; font-weight:700;}
.modal_pup_overlay .modal_box .modal_desc {margin:20px 0; font-size:18px; color:#666; font-weight:500;}
.modal_pup_overlay .modal_box .modal_desc strong {color:#ff2228; font-weight:700;}
.modal_pup_overlay .modal_box .modal_benefit {display:block; margin-bottom:20px; padding:5px 10px; display:flex; align-items:center; justify-content:center; gap:5px; font-size:16px; font-weight:400; border-radius:50px; background-color:#f2f2f2;}
.modal_pup_overlay .modal_box .modal_benefit::before {content:""; width:20px; height:20px; background:url("../img/sub/ico_pup_gift.png") no-repeat 0 0;}
.modal_pup_overlay .modal_box .modal_benefit strong i {font-weight:700;}
.modal_pup_overlay .modal_box .mm_info_object .agree_box {padding:0;}
.modal_pup_overlay .modal_box .mm_info_object .frm_box input {width:100%;}
.modal_pup_overlay .modal_box .mm_info_object .agree_grup {display:block; margin-bottom:20px;}
.modal_pup_overlay .modal_box .mm_info_object .submitBtn {display:block; padding:13px 0; width:100%; font-size:24px; font-weight:700; color:#fff; text-align:center;
border-radius:8px; background:linear-gradient(90deg, #ea0b11, #ff2228); box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.15);}
.modal_pup_overlay .modal_bar_close {position:absolute; top:0; right:0; width:4rem; height:4rem; font-size:1rem; font-weight:800;}


