/*------------------------------------------------------------------
　　　　　　　　　　　　　　　　공통
-------------------------------------------------------------------*/
a {text-decoration: none;}

.list_visual_back {background:#EBF4FF;height:200px;}
.title_box {max-width: 100%; width:1200px;margin:0 auto;background:url("/static/main/images/common/back_subtt.png") no-repeat top 0 right 0;height:200px;padding-top:55px;}
.title_box > h3 {font-size:32px;font-weight:700;color:#000; margin-bottom: 6px;}
.title_box > span {font-size:18px;line-height:26px;color:#6B747E;}

@media all and (max-width: 1200px) {
	.title_box {padding: 55px 3% 0;}
}
@media all and (max-width: 768px) {
	.list_visual_back {height: auto;}
	.title_box {height: auto; padding: 30px 3%;}
  .title_box br {display: none;}
	.title_box > h3 {font-size: 25px;}
	.title_box > span {font-size: 16px;line-height: 1.4;}
	.archive_tab {height: 40px;}
	.archive_tab .nav-link {padding: 10px; font-size: 14px; margin-right: 5px;}
	.input-box {padding: 0 10px;}
	.archive_table_list tbody tr td,
	.archive_table_list tbody tr td a {font-size: 14px;}

	.archive_table_view .file-tit {font-size: 16px;}
	.archive_table_view .tb_view_head,
	.archive_table_view .file-wrap {padding: 10px;}
	.archive_table_view .tb_view_head .num,
	.archive_table_view .text01 {font-size: 14px;}
	.archive_table_view .text01 {padding: 20px 10px;}
	.archive_table_view > tbody > tr > .text01 {padding: 10px; line-height: 1.3;}
}

/* ================= 섹션 공통 ================= */
#container section:last-child {padding-bottom: 150px;}
.col-wrap {display: flex; flex-direction: column; gap: 90px;}
section {padding: 90px 0;}
.section-inner {max-width: 94%; width: 1200px; margin:0 auto;}
.section-white {background: #fff;}
.section-gray {background: #F4F7FA;}
section .content {
  display: flex;
  gap: 60px;
  align-items: center;
  justify-content: space-between;
}

@media all and (max-width:1024px){
  section .content {flex-wrap: wrap; justify-content: center; text-align: center;}
  section {padding: 70px 0;}
  #container section:last-child {padding-bottom: 100px;}
}
@media (max-width: 768px) {
  section {padding: 60px 0;}
  #container section:last-child {padding-bottom: 80px;}
}
@media (max-width:480px) {
  section {padding: 50px 0;}
  .section-inner {padding: 0 6px;}
}

/*------------------------------------------------------------------
　　　　　　　　　　　　　　　　기능안내
-------------------------------------------------------------------*/
/* ================= 로컬네비게이션 ================= */
#lnb {width: 100%; background: #6399EF;}
.lnb-inner {
    max-width: 100%;
    width: 1200px;
    margin:0 auto;
    display: flex;
    flex-wrap: wrap;      
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 20px 0;
    font-size: 16px;
    color: #fff;
}
#lnb a {position: relative; transition: all 0.4s ease;}
#lnb a:hover, #lnb a.active {font-weight: 600;}
#lnb a.active::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background-color: #ffffff;
    border-radius: 999px;
}
@media all and (max-width: 1200px) {
	.lnb-inner {
        width: 100%;
        padding: 20px;
        justify-content: space-around;
    }
}

/* ================= 탭 ================= */
.section-tabs {
  display:flex;
  gap:15px;
  width: 100%;
  align-items: center;
  justify-content: center;
  padding-top: 10px;
  margin-top: 80px;
  position: relative;
  z-index: 5;
  transition: background-color .3s ease, box-shadow .3s ease;
  flex-wrap: nowrap; 
}
.section-tab {
  padding:12px 26px;
  background:#f2f3f6;
  border-radius:999px;
  white-space:nowrap;
  text-decoration:none;
  color:#333;
  font-size:16px;
  transition:all .4s ease;
}
.section-tab:hover {background:#E6E7EA; transition: all 0.3s ease; }
.section-tab.active {background:#006BED; color:#fff; font-weight:600;}
.section-tabs.sticky {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin-top: 0;
  background:#ffffff;
  padding: 10px 0;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

@media (max-width:1024px) {
  .section-tabs {margin-top: 50px; flex-wrap: wrap; row-gap: 10px;             }
}
@media (max-width:768px) {
  .section-tabs {
    margin-top: 30px;
    padding: 8px 16px;
    justify-content: center;    
    flex-wrap: wrap;            
    gap: 8px 10px;
  }
  .section-tab {padding: 8px 18px; font-size: 14px; white-space: nowrap;}
  .section-tabs.sticky { padding: 8px 16px;}
}

/* ================= 공통 페이지 ================= */
/* 페이지 타이틀 */
.page-title-area {text-align: center; margin-bottom: 50px;}
.page-title-area h4 {font-size: 32px; font-weight: 700; margin-bottom: 10px; color: #000;}
.page-title-area h4 span {font-weight: 300;}
.page-title-area img {margin-bottom: 28px;}
.page-subtitle {font-size: 22px; font-weight: 400; color: #777777; line-height: 32px;}

@media (max-width: 768px) {
  .page-title-area {margin-bottom: 30px;}
  .page-title-area h4 {font-size: 25px;}
  .page-title-area img {margin-bottom: 18px;}
  .page-subtitle {font-size: 18px; line-height: 1.4;}
}

/* ================= 공통 컨텐츠 ================= */
.img-card img {height: 100%; border-radius: 20px; border: 5px solid #FFF; box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.12);}
.text-block {font-size: 32px;}
.text-block h5 {font-weight: 700; margin-bottom: 18px;}
.text-block p {font-size: 18px; color: #777; line-height: 28px;}

@media (max-width:1024px) {
  .col-wrap .content {flex-direction: column;}
  .col-wrap .content .media-block {order: 1;}
  .col-wrap .content .text-block {order: 2;}
  .col-wrap {gap: 70px;}
}
@media (max-width: 768px) {
  .text-block {font-size: 25px;}
  .text-block h5 {margin-bottom: 18px;}
  .text-block p {font-size: 16px; line-height: 1.4;}
  .col-wrap {gap: 50px;}
}
@media (max-width: 400px) {
  .page-subtitle br,.text-block br {display: none;}
}

/* ================= 개요 ================= */
/* 섹션1 */
#grid-01 {display:grid; grid-template-columns:repeat(3, 1fr); gap:24px;}
#grid-01 .card {
  background:#F6F8FB;
  border: 1px solid #E6F0FF;
  border-radius: 20px;
  padding: 30px;
  min-height:210px;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  transition: all 0.4s ease;
}
.card { transition: transform .25s ease-out, box-shadow .25s ease-out;}
.card:hover { transform:translateY(-6px); box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.08);}
.card-title {font-size: 24px; font-weight: 800; margin-bottom:6px;}
.card-desc {font-size: 18px; color: #687380;}
.card-icon {object-fit:contain; margin-left:auto;}
#grid-01 .card-icon {width: 60px;}

/*섹션2*/
.section-smart {background:#FFF7EE;}
.smart-body {display:flex; align-items:center; justify-content:space-between; gap: 60px;}
.smart-list {list-style:none; font-size:20px; color:#3A3025; line-height:2;}
.smart-list li {position:relative; padding-left:18px;}
.smart-list li::before {
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:#ff9a35;
  position:absolute;
  left:0;
  top:0.95em;
  transform:translateY(-50%);
}
.smart-right {
  flex:1.5;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:40px;
  flex-wrap:nowrap;
}
.smart-icons {
  display:flex;
  align-items:center;
  gap:30px;
  flex-wrap:nowrap;
}
.smart-icon { transition: all 0.4s ease;}
.smart-icon:hover {transform: translateY(-6px);}
.smart-label {
  font-size:20px;
  font-weight:700;
  color:#444;
  white-space:nowrap;
  display:flex;
  align-items:center;
  gap:8px;
}
.smart-label-arrow {font-size:20px; color:#ff7a1b; transform:translateY(2px);}


/*섹션3*/
#grid-02 {display:grid; grid-template-columns:2fr 1.7fr; gap:25px;}
#grid-02 .card {
  background:#E5F6F9;
  border: none;
  border-radius: 20px;
  padding: 30px;
  min-height:210px;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  transition: all 0.4s ease;
}
.big-card {
  position:relative;
  border-radius:20px;
  overflow:hidden;
  display:flex;
  align-items:flex-start;
  color:#fff;
}
.big-card::before {
  content:"";
  position:absolute;
  inset:0;
  background:url("/static/main/images/safemaster/card-bg.png") center/cover no-repeat;
  opacity:.97;
  transition:transform .35s ease-out;
}
.big-card:hover::before {transform:scale(1.06);}
.big-card-content {position:relative; padding:32px; font-size:24px; font-weight:600; line-height:1.6;}

.right-col {display:flex; flex-direction:column; gap:25px;}
.card.purple {background:#F8F6FD !important;}

@media all and (max-width:1024px){
  #grid-01 {grid-template-columns: repeat(2, 1fr); gap: 20px;}
  #grid-02 {grid-template-columns: 1fr;}
  .big-card {min-height: 260px;}
}
@media (max-width:1024px) {
  .smart-body {flex-direction: column; gap: 50px;}
  .smart-list-wrap {width: 100%; display: flex; justify-content: center;}
  .smart-list {font-size: 18px;}
  .smart-right {width: 100%; display: flex; justify-content: center; flex-direction: column; gap: 20px;}
  .smart-icons {display: flex; justify-content: center; width: 60%;}
  .smart-label {width: 100%; justify-content: center;}
}
@media (max-width: 768px) {
  .card-title {font-size: 20px;}
  .card-desc {font-size: 15px;}
  #grid-01 .card {padding: 24px; min-height: 180px; gap: 18px;}
  #grid-01 .card-icon {width: 52px;}
  .big-card-content {font-size: 20px; padding: 26px;}

  .smart-body {gap:36px;}
  .smart-icons {width: 100%; flex-wrap:wrap; gap:12px 14px;}
  .smart-icon {width:60px; height:60px; align-items: center; display: flex;}
  .smart-list {font-size:16px; line-height:1.8;}
}
@media (max-width:640px) {
  #grid-01 {grid-template-columns: 1fr;}
  #grid-01 .card {min-height: auto;}
  #grid-02, .right-col {gap: 18px;}
  .big-card {min-height: 220px;}
}
@media (max-width:480px) {
  #grid-01 .card {padding: 20px;}
  #grid-01 .card-icon {width: 46px;}
  #grid-02 .card-icon {width: 54px; height: 60px;}
}

/*------------------------------------------------------------------
　　　　　　　　　　　    　　판결사례
-------------------------------------------------------------------*/
.judgment_wrap {display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;}
.judgment_box {background:#FAFAFA;border:1px solid #E1E1E1;border-radius:15px;padding:30px;color:#777;font-size:15px;line-height:1.3;}
.judgment_box:hover {border:1px solid #3F80EA;transition: all 1s;background:#f9fbfe;}
.judgment_box h5, .judg_case_box h5 {color:#090909;font-size:20px;font-weight:600;margin-bottom:20px;}

.judg_case_box {background:#F2F8FF;border:1px solid #BCD6FF;border-radius:15px;padding:40px 50px;margin-top:20px;}
.judg_case_box:first-child {margin-top:0;}
.judg_case_box .case_info {padding: 20px 30px;}
.judg_case_box .tt_wp {border-radius:30px;color:#3F8FEF;font-size:17px;padding:5px 20px;background:#fff;border:1px solid #3F8FEF;margin-bottom:20px; display: inline-block;}
.judg_case_box p {margin-bottom:20px;font-size:15px;color:#777;line-height:25px;}
.judg_case_box p em {color:#000;font-weight:600;}
.judg_case_box div > ul {margin:20px 20px 0 20px;}
.judg_case_box div > ul > li {list-style-type: disc;font-size:15px;color:#777;line-height:25px;}

.tab-box .tab-pane {display: none;}
.tab-box .tab-pane.active {display: block;}

.con_title {text-align:center;margin-bottom:30px;}
.con_title h3 {
	font-size: 32px;
    font-weight: 700;
    color: #000;
}
.con_title img {margin-bottom:5px;vertical-align:middle;}

@media all and (max-width: 768px) {
	.judgment_box h5, .judg_case_box h5 {font-size: 16px; margin-bottom: 10px;}
	.judgment_box {padding: 15px; font-size: 14px;}

	.judg_case_box {padding: 15px;}
	.judg_case_box .tt_wp {font-size: 14px; padding: 5px 10px; margin-bottom: 10px;}
	.judg_case_box .case_info {padding: 0;}
	.judg_case_box div > ul {margin-top: 0;}

	.con_title {margin-bottom: 15px;}
	.con_title h3 {font-size: 25px;}
}
@media all and (max-width: 600px) {
	.judgment_wrap {grid-template-columns: repeat(2, 1fr);}
}
@media all and (max-width: 400px) {
	.judgment_wrap {grid-template-columns: repeat(1, 1fr); gap: 10px;}
}

/*------------------------------------------------------------------
　　　　　　　　　　　    　자료실&게시판
-------------------------------------------------------------------*/
/* ================= 테이블 목록 ================= */
.sec-board {background: #fff; padding: 40px 0; min-height: calc(100vh - 300px);}

/* 탭 메뉴 */
.tab-menu {display: flex; border-bottom: 1px solid #e0e0e0; margin-bottom: 30px;}
.tab-btn {
    background: none;
    border: none;
    padding: 15px 25px;
    cursor: pointer;
    font-size: 18px;
    color: #666;
    border-bottom: 2px solid transparent;
    transition: all 0.3s ease;
}
.tab-btn:hover {color: #333;}
.tab-btn.active {color: #007bff; border-bottom-color: #007bff; font-weight: 600;}

/* fallback */
@font-face {
  font-family: 'Material Symbols Rounded';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/materialsymbolsrounded/v302/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rIelXxc.woff2) format('woff2');
}
.material-symbols-rounded {
  font-family: 'Material Symbols Rounded';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

/* 검색 영역 */
.search-area {display: flex; justify-content: flex-end; }
.search-box {
  display: flex; 
  position: relative;
  max-width: 100%;
  width: 320px;
  border: 1px solid #ccc;
  border-radius: 30px;
  box-shadow: 0px 3px 5px 0px #f1f1f1;
  margin-bottom: 15px;
  padding: 0 20px;
  overflow: hidden;
}
.search-input {flex: 1; padding: 10px 40px 10px 15px; border: 0; font-size: 1rem; outline: none;}
.search-btn {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: #666;
    cursor: pointer;
}

/* 🔥 자료실 목록 - Table 스타일 */
.archive-list {border: 1px solid #e0e0e0; border-radius: 15px; overflow: hidden; margin-bottom: 30px; background: white; box-shadow: 0 2px 4px rgba(0,0,0,0.1);}
.data-table {width: 100%; border-collapse: collapse; border-spacing: 0; font-size: 15px;}

/* 테이블 헤더 */
.data-table thead {background: #f8f9fa; border-bottom: 2px solid #cecece;}
.data-table thead th {
    padding: 15px;
    text-align: center;
    font-weight: 600;
    color: #333;
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
}
.data-table thead th:last-child {border-right: none;}

/* 테이블 바디 */
.data-table tbody tr {transition: background-color 0.2s ease;}
.data-table tbody tr:hover {background-color: #f8f9fa;}
.data-table tbody tr:nth-child(even) {background-color: #fdfdfd;}
.data-table tbody tr:nth-child(even):hover {background-color: #f7f9fc;}
.data-table tbody td {
    padding: 20px;
    border-right: 1px solid #f0f0f0;
    border-bottom: 1px solid #f0f0f0;
    vertical-align: middle;
}
.data-table tbody td:last-child {border-right: none;}
.data-table tbody tr:last-child td {border-bottom: none;}

/* 컬럼별 스타일 */
.col-no {width: 80px; text-align: center;  color: #666; font-weight: 500;}
.col-title {text-align: left; padding-left: 20px !important;}
.col-title a {color: #333; line-height: 1.5; display: block; transition: color 0.2s ease;}
.col-title a:hover {color: #3F80EA;}
.col-date {width: 150px; text-align: center; color: #666; font-size: 15px; white-space: nowrap;}

/* 데이터 없음 스타일 */
.no-data-cell {text-align: center; padding: 40px 15px !important; color: #999; font-style: italic;}

/* 페이지네이션 */
.pagination {display: flex; justify-content: center; align-items: center; gap: 5px; margin-top: 30px;}
.page-btn {
    padding: 8px 12px;
    border: 1px solid #ddd;
    background: white;
    color: #666;
    cursor: pointer;
    border-radius: 3px;
    font-size: 14px;
    transition: all 0.2s ease;
}
.page-btn:hover:not(:disabled) {background: #F3F6FB; color: #006BED; border: 1px solid #E9E9E9;}
.page-btn.active {background: #006BED; color: white; border-color: #006BED;}
.page-btn:disabled {background: #f8f9fa; color: #ccc; cursor: not-allowed;}

@media (max-width: 768px) {
  .sec-board {padding: 30px 0;}
  .search-input {font-size: 14px;}
  .tab-menu {flex-wrap: wrap; margin-bottom: 20px;}
  .tab-btn {flex: 1;  min-width: 0; padding: 12px 0; font-size: 15px;}
  .search-area {justify-content: center;}
  .search-box {width: 100%; max-width: 300px;}
  .list-header,
  .list-item {grid-template-columns: 60px 1fr 100px;}
    
  .col-no,
  .col-title,
  .col-date {padding: 12px 8px; font-size: 14px; white-space:wrap}
  .pagination {flex-wrap: wrap; gap: 3px;}
  .page-btn {padding: 6px 10px; font-size: 14px;}
}

/* ================= 게시판 읽기 페이지 ================= */
/* list-style*/
.doc-content ol,.doc-content ul {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
    padding-left: 20px !important;
    list-style: initial !important; 
  }
.doc-content ol {list-style-type: decimal !important; /* 숫자 리스트 */}
.doc-content ul {list-style-type: disc !important; /* 점 리스트 */}
.doc-content li {
    margin-bottom: 8px !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    list-style: inherit !important; /* 부모의 리스트 스타일 상속 */
}
/* 🔥 중첩된 리스트 스타일 */
.doc-content ul ul {list-style-type: circle !important;}
.doc-content ul ul ul {list-style-type: square !important;}
.doc-content ol ol {list-style-type: lower-alpha !important;}
.doc-content ol ol ol {list-style-type: lower-roman !important;}

/* 상단 버튼 */
.top-buttons {display: flex; justify-content: flex-end; margin-bottom: 20px;}
.btn-back {
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    color: #495057;
    padding: 8px 16px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
    transition: all 0.2s ease;
}
.btn-back:hover {background: #e9ecef; border-color: #adb5bd;}

/* 문서 헤더 */
.doc-header {border-bottom: 2px solid #333; padding-bottom: 20px; margin-bottom: 30px;}
.doc-title {font-size: 24px; font-weight: 600; color: #333; margin: 0 0 5px 0; line-height: 1.4;}
.doc-date {color: #666; font-size: 14px; text-align: right;}

/* 문서 내용 */
.doc-content {line-height: 1.8; color: #333; margin-bottom: 40px;}
.doc-content {margin-bottom: 30px;}
.doc-content h3 {font-size: 18px; font-weight: 600; color: #333;}
.doc-content p {font-size: 15px; line-height: 1.7;}
.doc-content ul {margin: 15px 0; padding-left: 20px;}
.doc-content li {margin-bottom: 8px; font-size: 15px;}
.doc-content strong {color: #d73527; font-weight: 600;}

/* 첨부파일 */
.attachment-section {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 30px;
}
.attachment-section h3 {font-size: 16px; font-weight: 600; color: #333; margin: 0 0 15px 0;}
.file-list {display: flex; flex-direction: column; gap: 10px;}
.file-item {display: flex; align-items: center;}
.file-link {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #006BED;
    text-decoration: none;
    font-size: 15px;
    transition: color 0.2s ease;
}
.file-link:hover {color: #0056b3; text-decoration: underline;}
.file-link i {color: #28a745; font-size: 16px;}

/* 이전글/다음글 네비게이션 */
.doc-navigation {border-top: 1px solid #e9ecef; padding-top: 20px;}
.nav-item {display: flex; align-items: center; padding: 12px 0; border-bottom: 1px solid #f1f1f1;}
.nav-item:last-child {border-bottom: none;}
.nav-label {width: 80px; font-size: 15px; color: #666; font-weight: 500; flex-shrink: 0;}
.nav-link {color: #333; font-size: 15px; margin-left: 15px; transition: color 0.2s ease;}
.nav-link:hover:not(.disabled) {color: #006BED;}
.nav-link.disabled {color: #999; cursor: not-allowed;}

@media (max-width: 768px) {
  .doc-title {font-size: 20px;}
  .doc-content h3 {font-size: 16px;}
  .doc-content p,
  .doc-content li {font-size: 14px;}
    
  .attachment-section {padding: 15px;}
  .nav-item {flex-direction: column; align-items: flex-start; gap: 5px;}
  .nav-label {width: auto;}
  .nav-link {margin-left: 0;}
}
@media (max-width: 480px) {
  .doc-title {font-size: 18px;}
  .top-buttons {margin-bottom: 15px;}
  .btn-back {padding: 6px 12px; font-size: 13px;}
  .doc-header {padding-bottom: 15px; margin-bottom: 20px;}
  .doc-content {margin-bottom: 20px;}
  .attachment-section {padding: 12px;}
  .nav-label, .nav-link {font-size: 14px;}
  
  /* 🔥 기존의 문제가 되는 스타일 오버라이드 */
  @media (max-width: 480px) {
    /* 기존의 list-style: none을 제거하고 다시 설정 */
    .doc-content ol, .doc-content ul {
        margin-top: 10px !important;
        margin-bottom: 10px !important;
        list-style: initial !important; /* none 제거 */
        padding-left: 15px !important;
    }
    .doc-content li {font-size: 14px !important;}
  }
}

/*------------------------------------------------------------------
　　　　　　　　　　　         요금제
-------------------------------------------------------------------*/
.payment_visual_back {
	background:#16100d url("/static/main/images/payment/sub_visual_img1.png") no-repeat center center;
	background-size: cover;
	height:550px;
}
.payment_visual_back > .section {text-align:center;padding-top:80px;}
.payment_visual_back > .section > .section-top-tit {font-size:45px; line-height:1.4;}
.payment_visual_back > .section > .section-top-tit .t-blue-point {color: #39ACFF !important;}
.payment_visual_back > .section > p {font-size:25px;color:#cecece;line-height:1.3; margin: 25px 0 40px;}

.pay_vi_box {background:#fff; border-radius:100px; max-width: 100%; width:1000px; margin:0 auto; margin-top:20px;}
.pay_vi_box > p {padding:30px 50px;text-align:left;border-right:1px dotted #ccc;}
.pay_vi_box > p > img {margin-right:10px;}
.pay_vi_box > p > span {font-size:15px;color:#777;}
.pay_vi_box > p > span > b {font-size:19px; color:#000;line-height:30px;}
.pay_vi_box > p:last-child {border:none;}

.con_title {text-align:center; margin-bottom:20px;}
.con_title h3 {font-size: 32px; font-weight: 700; color: #000;}
.con_title p {text-align: right; color: #A0A0A0; font-size: 16px;}
.con_title img {margin-bottom:5px; vertical-align:middle;}

/*요금안내표*/
.pricing-grid {
  display: flex; 
  gap: 24px; 
  max-width: 1200px;
  flex-wrap: wrap;
  justify-content: center;
}
.pricing-card {
  position: relative;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  padding: 32px 28px;
  background: #ffffff;
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.06);
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.payment_item_box {
    min-width: 300px;
    flex: 1;
    height: 630px;
    background: #fff;
    border-radius: 15px;
    box-sizing: border-box;
    /* box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.25); */
    transition: all 0.4s ease;
    position: relative;
    text-align:left;
}
.payment_item_box .sale, .payment_item_box .pro {font-size: 30px; color: #777; position: relative;}
.payment_item_box .sale::before {
  content: ''; 
  display: block; 
  position: absolute; 
  top: 10px; 
  left: -3px; 
  width: 150px; 
  height: 12px; 
  background: url('/static/main/images/payment/payment-arrow.svg') no-repeat right center;
}
.payment_item_box .sale span {
  background-color: #F0555E; 
  display: flex; 
  align-items: center; 
  justify-content: center; 
  font-size: 16px; 
  font-weight: 700; 
  color: #fff; 
  width: 80px; 
  height: 30px; 
  border-radius: 30px; 
  position: absolute; 
  top: 0; 
  bottom: 0; 
  left: 160px; 
  margin: auto 0;
}
.payment_item_price {justify-content: space-between;}
.payment_item_box .price {display: flex; gap: 10px; flex-direction: column;}
.payment_item_box > h4 {font-size:25px; color:#090909; font-weight: 500;}
.payment_item_price em {font-size:40px; font-weight:500;}
.payment_item_price em > b {font-size:43px; font-weight:700; color:#000;}
.payment_item_price span {font-size:17px; color:#777; font-weight:500;}

.btn_bpayment {
	display: inline-block;
	border: 1px solid #3F80EA;
  background: #3F80EA;
  color: #fff;
	width:100%;
	border-radius:5px;
	padding:15px 0;
	font-size:20px;
	margin-top:15px;
	transition: all 1s;
	text-align: center;
	text-decoration: none;
}
.btn_bpayment:hover {background:#0751ca; color: #fff; text-decoration: none;}
.btn_grpayment{
	display: inline-block;
	border: 1px solid #2AC8A5;
    background: #2AC8A5;
    color: #fff;
	width:100%;
	border-radius:5px;
	padding:15px 0;
	font-size:20px;
	margin-top:15px;
	transition: all 1s;
	text-align: center;
	text-decoration: none;
}
.btn_grpayment:hover {background:#01ad87; color: #fff; text-decoration: none;}
.payment_item_box .txt02 li {background:url("/static/main/images/payment/ic_gcheck.png") no-repeat 0 6px; padding-left:24px; color:#000;font-size:17px;line-height:30px;font-weight:500;}
.payment_item_box .txt03 {list-style-type: disc; padding-left:24px;}
.payment_item_box .txt03 li {color:#667C9E;font-size:15px;line-height:25px;}
.payment_item_box .txt04 {font-size:17px;background:#F5F8FD;border:1px solid #D5DCE8;border-radius:5px;padding:21px 30px; font-weight:500; color: #555; position: absolute; bottom: 40px; left: 40px; width: calc(100% - 80px);}
.payment_item_box .txt04 span {font-size: 14px;}
.payment_item_box .txt04.tel {padding-left: 59px;}
.payment_item_box .txt04.tel::before {width: 22px; height: 22px; background: url('/static/main/images/payment/payment-tel.svg') no-repeat center; content: ''; display: block; position: absolute; top: 21px; left: 30px;}
.payment_item_box .txt04.tel span {font-size: 16px;}
.btn_bpayment > span, .btn_grpayment > span {background:url(/static/main/images/ic_w_arrow.png) no-repeat top 6px right 0; padding-right: 20px;}

@media all and (max-width: 1024px) {
	.payment_visual_back > .section {padding: 80px 3% 0;}
	.pay_vi_box > p {width: 100%; padding: 30px 10px;}

  .payment_item_price em {font-size: 38px;}
  .payment_item_price em > b {font-size: 40px;}
  .payment_item_price span {font-size: 15px;}
}
@media all and (max-width: 768px) {
	.payment_visual_back {height: auto;}
	.payment_visual_back > .section {padding-top: 40px; padding-bottom: 40px;}
	.payment_visual_back > .section > p {font-size: 18px; margin: 15px 0 20px;}
	.payment_visual_back > .section > .section-top-tit {font-size: 25px;}

	.pay_vi_box > p {display: block; text-align: center;}
	.pay_vi_box > p > img {display: block; margin: 0 auto 10px;}

	.con_title {margin-bottom: 15px;}
	.con_title h3 {font-size: 25px;}
	.payment_item_box {width: 100%; padding: 20px; height: auto;}
	.payment_item_box > h4 {font-size: 20px;}
	.payment_item_box .sale, .payment_item_box .pro {font-size: 20px;}
	.payment_item_box .sale::before {width: 100px; top: 2px;}
	.payment_item_box .sale span {left: 105px; width: 69px; height: 26px; font-size: 14px;}
	.payment_item_price em {font-size: 30px;}
	.payment_item_price em > b {font-size: 33px;}
	.payment_item_price span {font-size:14px;}
	.payment_item_box .txt04 {position: relative; font-size: 14px; padding: 15px 20px; width: 100%; bottom: auto; left: auto;}
	.payment_item_box .txt04.tel {padding-left: 49px;}
	.payment_item_box .txt04.tel::before {left: 20px; top: 15px;}
	.payment_item_box .txt04.tel span {font-size: 14px;}
	.btn_bpayment, .btn_grpayment {font-size: 16px; padding: 10px 0;}
	.btn_bpayment > span {background-position: right center;}
	.payment_item_box ul {margin-left: 0;}
  .payment_item_box .txt04 {margin-top: 30px;}
}
@media all and (max-width: 480px) {
	.pay_vi_box {display: block; margin-top: 10px; flex-wrap: wrap; border-radius: 20px;}
	.pay_vi_box > p {border-right: none; border-bottom: 1px dotted #ccc; padding: 10px;}
  .con_title p {text-align: center; font-size: 14px; margin-top: 5px;}
  .pricing-card {gap: 10px;}
  .payment_item_box .txt02 li {font-size: 15px;}
}

/****************요금제 > 자주하는질문********************/
.qna_back {background:#F6F3F3;}
.qna_box span {justify-content: space-between; gap: 10px; flex-wrap: wrap;}
.qna_box h3{font-size:32px;font-weight:600;}
.qna_box em {font-size:17px;background:url("/static/main/images/common/ic_barrow_down.png") no-repeat;padding-left:23px;}

.qna_list {border-top:2px solid #000;margin-top:30px;}
.qna_list > li {cursor:pointer;border-bottom:1px solid #D6CECE;padding:30px 60px 30px 20px; position: relative;}
.qna_list > li:hover {background:#f1ecec;}
.qna_list > li a {font-size:18px;color:#000;text-decoration:none;font-weight:500;}
.qna_list > li span {padding:0 10px; position: absolute; top: 30px; right: 20px;}
.qna_list > li.on span {transform: rotate(180deg);}
.qna_list > li.on .qna_answer {display: block;}

.qna_answer {margin-top:20px; background:#fff; padding:30px; border-radius:5px; display: none; color:#777; line-height: 1.5; font-size: 16px;}
.qna_answer p {font-size: 18px; color: #000; font-weight: 500;}
.qna_answer b {color: #6e6464}
.qna_answer small {font-size: 15px; margin-top: 15px; display: block; color: #ad2222;}
.qna_answer > ul {list-style: disc; margin-left: 20px;}
.qna_answer > ul li {margin-top: 10px;}

@media all and (max-width: 768px) {
	.qna_box h3 {font-size: 22px;}
	.qna_box em  {font-size: 14px; padding-left: 20px; background-size: 15px; background-position: left center;}
	.qna_list > li {padding: 15px 60px 15px 10px;}
	.qna_list > li a {font-size: 15px;}
	.qna_list > li span {top: 15px; right: 10px;}
  
	.qna_answer {padding: 10px; font-size: 15px;}
	.qna_answer p {font-size: 15px;}
  .qna_answer small {font-size: 14px;}
  .qna_answer > ul li {margin-top: 5px;}
}
@media all and (max-width: 480px) {
  .qna_box span {justify-content: center;}
  .qna_list > li span > img {width: 80%; margin-top: 5px;}
}