@charset "utf-8";

/* 서브페이지 내부 컴포넌트 */
/* 그리드 시스템 */
.grid-2, .grid-3, .grid-4 {display: grid; gap: 16px;}
.grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

/* 이미지 */
.img_wrap{border: 1px solid #e9e9e9; border-radius: 16px; overflow: hidden;}
.img_wrap img {display: block; width: 100%; height: auto;}
.img_wrap + .highlight-box{margin-top: 22px;}

/* bullet-list */
.bullet-list li + li, .check-list li + li { margin-top: 8px; }
.bullet-list li, .check-list li{position: relative; padding-left: 16px; letter-spacing: -0.2px;}
.bullet-list li::before, .check-list li::before{content: ''; position: absolute; top: 10.5px; left: 0; width: 3px; height: 3px; background-color: #163b74;}

/* highlight-box */
.highlight-box {background: #e9f1f9; border-radius: 10px; padding: 24px; margin-bottom: 22px; color: #26588a;}
.highlight-box strong {display: block; font-size: 18px; margin-bottom: 10px;}

/* 표 스타일 */
.table-wrap {overflow-x: auto; border: 1px solid var(--line); border-radius: 18px; background: #fff;}
.table {width: 100%; border-collapse: collapse; min-width: 760px;}
.table thead th {background: #f8fafc; color: #0f172a; font-size: 14px; font-weight: 800; text-align: left; padding: 14px 16px; border-bottom: 1px solid var(--line);}
.table tbody td {padding: 14px 16px; border-bottom: 1px solid #eef2f7; /*vertical-align: top;*/}
.table tbody tr:last-child td {border-bottom: 0;}
.txtc{text-align: center;}
.txtr{text-align: right;}
.txtl{text-align: left;}
.txtj{text-align: justify;}

/* timeline */
.timeline {
  position: relative;
  margin-top: 8px;
  padding-left: 24px;
  border-left: 2px solid #cbd5e1;
}
.timeline-item {position: relative; padding: 0 0 24px 18px;}
.timeline-item:last-child { padding-bottom: 0; }
.timeline-item::before {
  content: "";
  position: absolute;
  left: -31px;
  top: 4px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--primary);
  box-shadow: 0 0 0 4px #dbeafe;
}
.timeline-item h3 {
  margin: 0 0 8px;
  font-size: 20px;
  color: #0f172a;
}

/* step-card */
.step-card {
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  position: relative;
  overflow: hidden;
}
.step-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: var(--primary-soft);
  color: var(--primary-deep);
  font-weight: 900;
  font-size: 18px;
  margin-bottom: 14px;
}

/* info-note */
.info-note {
  margin-top: 18px;
  padding: 16px 18px;
  border-radius: 16px;
  background: #fff;
  border: 1px dashed #cbd5e1;
  color: #475569;
  font-size: 14px;
}

/* tag-list */
.tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}
.tag-list span {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--line);
  font-weight: 600;
}

/* 폼 요소 */
.field {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.field.full {grid-column: 1 / -1;}
.field label {
  font-size: 15px;
  line-height: 1;
  font-weight: 500;
  color: #0f172a;
}
.field input,
.field select,
.field textarea {
  width: 100%;
  border: 1px solid #dbe3ee;
  background: #fff;
  border-radius: 6px;
  padding: 12px 14px;
  color: #0f172a;
  outline: none;
  transition: 0.2s ease;
}
.field input:focus,
.field select:focus,
.field textarea:focus {
  border-color: #93c5fd;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.10);
}
.field textarea {min-height: 110px; resize: vertical;}
.field-help {font-size: 13px; color: var(--muted);}

/* support-card */
.support-card {
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 22px;
}
.support-card h3 {
  margin: 0 0 12px;
  font-size: 20px;
  color: #0f172a;
}
.support-card.blue {
  background: linear-gradient(135deg, #eff6ff, #ffffff);
  border-color: #bfdbfe;
}
.support-card.green {
  background: linear-gradient(135deg, #ecfdf5, #ffffff);
  border-color: #a7f3d0;
}
.support-card.yellow {
  background: linear-gradient(135deg, #fffbeb, #ffffff);
  border-color: #fde68a;
}
.support-card.red {
  background: linear-gradient(135deg, #fef2f2, #ffffff);
  border-color: #fecaca;
}

/* 서브페이지별 서브 히어로 영역 */
.sub-contents > .hero{position: relative;}
.sub-contents > .hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    rgba(0,0,0,0.5) 0%,
    rgba(0,0,0,0.4) 40%,
    rgba(0,0,0,0.3) 70%,
    rgba(0,0,0,0.2) 100%
  );
  z-index: 1;
}
.sub-contents > .hero > * {position: relative; z-index: 2;}
.sub-contents > .hero#about{background: url(../img/hero-about.jpg) no-repeat center; background-size: cover;}
.sub-contents > .hero#guide{background: url(../img/hero-guide.jpg) no-repeat center; background-size: cover;}
.sub-contents > .hero#application{background: url(../img/hero-application.jpg) no-repeat center; background-size: cover;}
.sub-contents > .hero#info{background: url(../img/hero-info.jpg) no-repeat center; background-size: cover;}
.sub-contents > .hero#sitemap{background: url(../img/hero-sitemap.jpg) no-repeat center; background-size: cover;}
.sub-contents > .hero > .hero-inner > h1{color: #fff;}


/* 사업소개 */
.lead-copy {margin: 0; color: #334155; font-size: 16px;}
.lead-copy + .lead-copy {margin-top: 12px;}

.law-list li{color: #26588a;}

.info-strip {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 22px;}

.stat {background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 20px; text-align: center;}
.stat-value {display: block; font-size: 30px; font-weight: 800; color: var(--primary); line-height: 1.1; margin-bottom: 6px;}
.stat-label {display: block; font-size: 14px; font-weight: 700; color: #0f172a; margin-bottom: 4px;}

.type-meta {margin-top: 12px; font-size: 14px; font-weight: 700; color: #1d4ed8;}

.section-note {margin-top: 22px;padding: 16px 20px;border-radius: 10px;background: #f6f7f7;/* border: 1px solid var(--line); */font-size: 14px;color: #334155;font-weight: 300;}

.role-grid {align-items: stretch;}

.support-flow {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px;}

.effect-list {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px;}
.effect-item {padding: 24px; border-radius: 20px; border: 1px solid var(--line); background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);}
.effect-item .icon {width: 54px; height: 54px; border-radius: 16px; background: var(--primary-soft); color: var(--primary-deep); display: inline-flex; align-items: center; justify-content: center; font-size: 26px; margin-bottom: 14px;}
.effect-item h3 {margin: 0 0 8px; font-size: 20px; color: #0f172a;}

.biz-flow {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 16px;}
.biz-step {position: relative;background: #fff;border: 1px solid #dbe4ee;border-radius: 10px;padding: 22px 18px;min-height: 196px;box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);}
.biz-step::after {content: "→"; position: absolute; right: -12px; top: 50%; transform: translateY(-50%); width: 24px; height: 24px; border-radius: 999px; background: #fff; border: 1px solid #dbe4ee; color: #1d4ed8; display: flex; align-items: center; justify-content: center; font-weight: 800; box-shadow: 0 6px 12px rgba(15, 23, 42, 0.06);}
.biz-step:last-child::after {display: none;}
.biz-icon, .type-icon-v2 {width: 56px; height: 56px; border-radius: 16px; display: inline-flex; align-items: center; justify-content: center; background: #eef5ff; color: #1d4ed8; font-size: 28px; margin-bottom: 14px; flex-shrink: 0;}
.biz-step strong {display: block; margin-bottom: 8px; font-size: 18px; color: #0f172a; line-height: 1.4;}
.biz-step p {margin: 0; font-size: 14px; line-height: 1.7; color: #475569; word-break: keep-all;}

.flow-card {margin-bottom: 8px;}

.case-card {margin-top: 20px;}

.case-summary {margin-top: 16px;padding: 22px;background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);border: 1px solid #dbe4ee;border-radius: 10px;}
.case-head {display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: baseline; margin-bottom: 16px;}
.case-head strong {font-size: 20px; color: #0f172a;}
.case-head span {font-size: 14px; font-weight: 700; color: #1d4ed8;}

.case-grid, .type-grid-v2 {display: grid; gap: 16px;}
.case-grid {grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 16px;}

.case-item, .type-card-v2 {background: #fff; border: 1px solid #dbe4ee; border-radius: 18px; padding: 20px 16px; box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);}
.case-item {text-align: center;}
.case-item strong {display: block; font-size: 17px; line-height: 1.5; color: #0f172a; word-break: keep-all;}
.case-label {display: block; margin-bottom: 8px; font-size: 13px; font-weight: 700; color: #64748b;}
.case-result {display: flex; gap: 12px; align-items: center; padding: 16px 18px; border-radius: 16px; background: #eff6ff; border: 1px solid #bfdbfe;}
.case-result p {margin: 0; font-size: 15px; line-height: 1.7; color: #334155;}
.case-badge {display: inline-flex; align-items: center; justify-content: center; min-width: 74px; height: 32px; padding: 0 12px; border-radius: 999px; background: #1d4ed8; color: #fff; font-size: 13px; font-weight: 800; flex-shrink: 0;}

.type-layout {display: grid;grid-template-columns: 1fr;gap: 18px;margin-top: 18px;margin-bottom: 24px;padding-left: 24px;padding-right: 24px;}
.type-card-wrap h3 {margin: 0 0 10px !important;line-height: 1.3;}
.type-grid-v2 {grid-template-columns: repeat(5, minmax(0, 1fr)); margin-top: 0;}
.type-card-v2 {position: relative; min-height: 280px; display: flex; flex-direction: column; border: 0;overflow: hidden;}
.type-card-v2::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    rgba(0,0,0,0.7) 0%,
    rgba(0,0,0,0.5) 40%,
    rgba(0,0,0,0.1) 70%,
    rgba(0,0,0,0.05) 100%
  );
  z-index: 1;
}
.type-card-v2 > * {position: relative; z-index: 2;}
.type-card-v2:nth-child(1){background: url(../img/about_img_solar1.png) no-repeat center/cover;}
.type-card-v2:nth-child(2){background: url(../img/about_img_solar2.png) no-repeat center/cover;}
.type-card-v2:nth-child(3){background: url(../img/about_img_solar3.png) no-repeat center/cover;}
.type-card-v2:nth-child(4){background: url(../img/about_img_solar4.png) no-repeat center/cover;}
.type-card-v2:nth-child(5){background: url(../img/about_img_solar5.png) no-repeat center/cover;}
.type-card-v2 h4 {margin: 0 0 8px; font-size: 18px; line-height: 18px; color: #fff; font-weight: 500; word-break: keep-all;}
.type-card-v2 p {margin: auto 0 0; font-size: 14px; line-height: 1.7; color: #fff; word-break: keep-all;}

/* 사업절차 */
.process-summary {margin-bottom: 22px;padding: 24px;background: linear-gradient(180deg, #f8fbff 0%, #eef5ff 100%);border: 1px solid #eaf0fb;border-radius: 10px;}
.process-summary-title {margin: 0 0 10px; font-size: 24px; font-weight: 800; color: #163b74;}
.process-summary-desc {margin: 0 0 18px; font-size: 15px; line-height: 1.7; color: #516072;}

.process-flow {display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; align-items: stretch;}
.process-node {position: relative; background: #fff; border: 1px solid #dbe4ee; border-radius: 18px; padding: 20px 16px; box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05); text-align: center;}
.process-node::after {content: "→"; position: absolute; top: 50%; right: -13px; transform: translateY(-50%); font-size: 20px; font-weight: 800; color: #7a8aa0;}
.process-node:last-child::after {display: none;}
.process-node .step {display: inline-block; margin-bottom: 10px; padding: 6px 10px; border-radius: 999px; background: #eff6ff; color: #2563eb; font-size: 12px; font-weight: 700;}
.process-node strong {display: block; font-size: 17px; line-height: 1.45; color: #111827;}
.process-node p {margin-top: 8px; font-size: 13px; line-height: 1.65; color: #5b6472;}

.apply-process-card {background: #ffffff; border: 1px solid #e5e7eb; border-radius: 22px; padding: 28px; box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);}
.apply-process-card h3 {margin: 0 0 10px; font-size: 24px; font-weight: 700; color: #111827;}
.process-desc {margin: 0 0 22px; font-size: 15px; line-height: 1.6; color: #6b7280;}
.apply-process-grid {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px;}
.apply-process-item {background: #ffffff; border: 1px solid #dbe4ee; border-radius: 18px; padding: 22px 20px; box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05); transition: transform 0.2s ease, box-shadow 0.2s ease;}
.apply-process-item:hover {transform: translateY(-3px); box-shadow: 0 14px 28px rgba(15, 23, 42, 0.08);}
.apply-process-item h4 {margin: 0 0 10px; font-size: 18px; font-weight: 700; color: #111827; line-height: 1.4;}
.apply-process-item p {margin: 0 0 14px; font-size: 14px; line-height: 1.7; color: #4b5563;}

.process-step {display: inline-block; margin-bottom: 12px; padding: 6px 12px; border-radius: 999px; background: #f3f6fb; color: #355070; font-size: 12px; font-weight: 700; letter-spacing: 0.04em;}
.process-org {display: inline-block; font-size: 13px; font-weight: 600; color: #2563eb; background: #eff6ff; padding: 7px 12px; border-radius: 10px;}

/* 참여안내 */
.form-layout {display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 18px;}
.form-grid {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px;}

.upload-box {border: 1.5px dashed #cbd5e1;border-radius: 10px;background: #fff;padding: 24px;text-align: center;}
.upload-icon {width: 56px; height: 56px; margin: 0 auto 12px; border-radius: 18px; background: var(--primary-soft); color: var(--primary-deep); display: flex; align-items: center; justify-content: center; font-size: 26px; font-weight: 900;}

.file-list {margin-top: 16px; display: flex; flex-direction: column; gap: 10px;}
.file-item {display: flex;align-items: center;justify-content: space-between;gap: 12px;padding: 10px 10px 10px 17px;border-radius: 8px;background: #fff;border: 1px solid var(--line);}
.file-name {font-size: 14px;font-weight: 500;color: #0f172a;}

.status-grid {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-bottom: 18px;}
.status-card {text-align: center; background: linear-gradient(135deg, #eff6ff, #ffffff);}
.status-card .value {display: block; font-size: 32px; line-height: 1.1; font-weight: 900; color: var(--primary-deep); margin-bottom: 8px;}
.status-card .label {display: block; font-size: 15px; font-weight: 800; color: #0f172a; margin-bottom: 6px;}

.action-row {display: flex; flex-wrap: wrap; gap: 12px;}

/* 정보마당 */
.edu-item, .download-item {display: flex;align-items: center;justify-content: space-between;gap: 14px;padding: 16px 18px;border-radius: 16px;background: #fff;border: 1px solid var(--line);}
.edu-item strong, .download-item strong {display: block; font-size: 15px; color: #0f172a; margin-bottom: 4px;}

.toolbar {display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; align-items: center; margin-bottom: 18px;}

.search-box {display: flex; gap: 10px; flex-wrap: wrap; align-items: center;}
.search-box input, .search-box select {min-height: 44px; border: 1px solid #dbe3ee; background: #fff; border-radius: 14px; padding: 0 14px; color: #0f172a; outline: none;}
.search-box input {min-width: 260px;}

.board-meta, .download-meta {font-size: 14px; color: var(--muted);}

.faq-list {display: flex; flex-direction: column; gap: 12px;}
.faq-item {background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 18px 20px 16px;}
.faq-q {position: relative; display: flex; align-items: flex-start; gap: 12px; padding-right: 40px; font-weight: 800; color: #0f172a; margin-bottom: 0; cursor: pointer;}
.faq-q span:last-child {flex: 1; min-width: 0; word-break: keep-all; line-height: 1.6;}
.faq-q .badge {flex-shrink: 0;}
.faq-q::after {content: "+"; position: absolute; top: 4px; right: 0; color: var(--primary-deep); font-size: 20px; line-height: 1; font-weight: 700;}
.faq-item.open .faq-q::after {content: "-";}
.faq-a {display: none; grid-template-columns: fit-content(120px) minmax(0, 1fr); align-items: start; column-gap: 12px; row-gap: 10px; color: #475569; margin-top: 12px;}
.faq-item.open .faq-a {display: grid;}
.faq-a + .faq-a {margin-top: 14px; padding-top: 14px;border-top: 1px dashed #d7e2f0;}
.faq-a .badge {grid-column: 1; align-self: start; justify-self: start; max-width: 120px; min-width: 44px; white-space: normal; word-break: keep-all; line-height: 1.35; text-align: center; padding: 7px 12px;}
.faq-a p {grid-column: 2; margin: 0; line-height: 1.9; white-space: normal; word-break: keep-all;}
.faq-a p + p {margin-top: 8px;}
.qa-form {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px;}

.edu-list, .case-list, .download-list {display: flex; flex-direction: column; gap: 12px;}

.notice-board {border: 1px solid #dbe4ee;border-radius: 16px;overflow: hidden;background: #fff;}
.notice-row {display: grid; grid-template-columns: 140px 1fr 140px; gap: 16px; align-items: center; padding: 18px 20px; border-bottom: 1px solid #eef2f7;}
.notice-row:last-child {border-bottom: 0;}
.notice-row-head {background: #f8fafc; font-weight: 700; color: #334155;}
.notice-category {display: inline-flex; align-items: center; font-size: 13px; font-weight: 700; color: #1d4ed8;}
.notice-title {font-size: 15px; line-height: 1.6; color: #111827;}
.notice-date {font-size: 14px; color: #6b7280; text-align: right;}

.table-head{padding: 18px 20px; background: #f8fafc; border-bottom: 1px solid #eee;}
.table-title{display: flex; gap: 8px; align-items: center;}
.table-title > p{padding: 0 5px; font-size: 15px; color: #fff; background-color: #374151; border-radius: 4px;}
.table-meta{display: flex; align-items: center; gap: 8px; margin-top: 12px;}
.table-head-date, .table-head-time {display: block; font-size: 15px; color: #6b7280;}
.table-body{padding: 18px 20px;}
.table-body p {line-height: 1.7; white-space: pre-line; word-break: keep-all;}
.table-foot{background-color: #f9f9f9;}
.table-file-list {margin: 0; padding: 18px 20px; border-top: 1px solid #f0f0f0; list-style: none;}
.table-file-list li + li {margin-top: 10px;}
.table-file-list a {display: inline-flex; align-items: center; gap: 8px; color: #334155; font-size: 14px; text-decoration: none;}
.table-file-list a:hover {color: #1d4ed8;}
.button-wrap {display: flex; justify-content: space-between; gap: 12px; margin-top: 24px;}
.button-wrap > .left{display: flex; gap: 6px; flex-shrink: 0;}
.button-wrap > .right{display: flex; gap: 6px; margin-left: auto;}
.button-wrap a{padding: 0 10px;font-size: 14px;line-height: 30px;background-color: #f7f7f7;border: 1px solid #e6e6e6;border-radius: 6px;}

.write-form .table-body {padding: 24px 20px;}
.write-form .form-grid {grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 16px;}
.write-form .field.title {grid-column: 2 / 5;}
.write-form .field.full {grid-column: 1 / -1;}
.write-form textarea {min-height: 320px; line-height: 1.7;}
.write-form .table-foot {padding: 20px; border-top: 1px solid #eef2f7; background: #f9fafb;}
.file-button, .file-delete, .form-button-wrap a {display: inline-flex; align-items: center; justify-content: center; padding: 0 14px; min-height: 36px; font-size: 14px; border: 1px solid #dbe3ee; border-radius: 6px; background: #fff; color: #334155; text-decoration: none;}
.file-delete {cursor: pointer;}
.form-button-wrap .primary {background: #1d4ed8; border-color: #1d4ed8; color: #fff;}
.form-button-wrap .primary:hover {background: #1e40af; border-color: #1e40af;}

.faq-category {display: flex; flex-wrap: wrap; gap: 10px;}
.faq-chip {padding: 8px 14px; border-radius: 999px; background: #f3f4f6; color: #374151; font-size: 13px; font-weight: 600;}
.faq-chip.active {background: #eff6ff; color: #2563eb;}

/* 사이트맵 */
.map-card {transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;}
.map-card:hover, .shortcut-card:hover {transform: translateY(-2px); box-shadow: 0 14px 28px rgba(15, 23, 42, 0.08); border-color: #c7dcff;}
.map-badge {display: inline-flex; align-items: center; padding: 6px 10px; border-radius: 999px; font-size: 12px; font-weight: 800; background: var(--primary-soft); color: var(--primary-deep);}
.map-card h3, .shortcut-card h3, .section-group h3 {margin: 14px 0 10px; font-size: 22px; color: #0f172a;}
.map-card p, .shortcut-card p {margin: 0; color: #475569; font-size: 15px; line-height: 1.7;}

.section-grid {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px;}

.link-list {display: flex; flex-direction: column; gap: 10px;}
.link-list a {display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; border-radius: 12px; background: #ffffff; border: 1px solid var(--line); color: #334155; font-weight: 700; transition: 0.2s ease;}
.link-list a::after {content: ">"; color: #94a3b8; font-weight: 800;}
.link-list a:hover {background: var(--primary-soft); color: var(--primary-deep); border-color: #bfdbfe;}

/* 정보마당 - 유휴부지 관련 */
.sbi-wrap > h3{display: flex; gap: 8px; align-items: center; position: relative; padding-left: 11px;}
.sbi-wrap > h3::before {
    content: '';
    position: absolute;
    top: 5px;
    left: 0;
    width: 4px;
    height: 14px;
    background-color: #65a3da;}
.sbi-wrap + .sbi-wrap{margin-top: 40px;}
.land-report-wrap{display:grid;grid-template-columns: minmax(0,1fr) 20px minmax(0,1fr);gap: 10px;align-items:center;}
.land-table-wrap{min-width:0; border: 1px solid #dbe4ee; border-radius: 10px; overflow: hidden;}
.land-table1{font-size: 15px;}
.land-table1 > thead > tr > th, .land-table1 > tbody > tr > td{padding: 6px 12px;}
.land-table1 > thead > tr > th{color: #334175; font-weight: 500; background-color: #f8fafc; border: 1px solid #e6edf4;}
.land-table1 > tbody > tr > td{border: 1px solid #eef2f7;}
.land-table1 > thead > tr:first-child > th{border-top: 0;}
.land-table1 > tbody > tr:last-child > td{border-bottom: 0;}
.land-table1 > thead > tr > th:first-child, .land-table1 > tbody > tr > td:first-child{border-left: 0;}
.land-table1 > thead > tr > th:last-child, .land-table1 > tbody > tr > td:last-child{border-right: 0;}
.land-table1.table thead th{text-align: center;}
.land-table1.table tbody td{vertical-align: middle;}
.lt-list > li{position: relative; padding-left: 12px;}
.lt-list > li::before{content: ''; position: absolute; top: 10px; left: 0; width: 4px; height: 4px; background-color: #0f172a; border-radius: 100%;}

.land-exam-con-title{position: relative; display: flex; align-items: center; gap: 16px; height: 100px; padding: 20px 28px; border-radius: 10px; overflow: hidden;}
.land-exam-contents1 > .land-exam-con-title{background: url(../img/about_img_solar4.png) no-repeat right center; background-size: 80% auto; background-color: rgb(132, 187, 237);}
.land-exam-contents2 > .land-exam-con-title{background: url(../img/about_img_solar2.png) no-repeat right center; background-size: 80% auto; background-color: rgb(132, 187, 237);}
.land-exam-contents3 > .land-exam-con-title{background: url(../img/about_img_solar6.png) no-repeat right center; background-size: 80% auto; background-color: rgb(132, 187, 237);}
.land-exam-contents4 > .land-exam-con-title{background: url(../img/about_img_solar3.png) no-repeat right center; background-size: 80% auto; background-color: rgb(132, 187, 237);}
.land-exam-contents5 > .land-exam-con-title{background: url(../img/about_img_solar7.png) no-repeat right center; background-size: 80% auto; background-color: rgb(132, 187, 237);}
.land-exam-con-title::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
}
.land-exam-contents1 > .land-exam-con-title::before {
  background: linear-gradient(
    to right,
    rgba(84, 116, 157,1) 0%,
    rgba(84, 116, 157,1) 30%,
    rgba(84, 116, 157,0.5) 40%,
    rgba(84, 116, 157,0.3) 50%,
    rgba(84, 116, 157,0.1) 100%
  );
}

.land-exam-contents2 > .land-exam-con-title::before {
  background: linear-gradient(
    to right,
    rgba(102, 132, 8,1) 0%,
    rgba(102, 132, 8,1) 30%,
    rgba(102, 132, 8,0.5) 40%,
    rgba(102, 132, 8,0.3) 50%,
    rgba(102, 132, 8,0.1) 100%
  );
}

.land-exam-contents3 > .land-exam-con-title::before {
  background: linear-gradient(
    to right,
    rgba(161, 166, 170,1) 0%,
    rgba(161, 166, 170,1) 30%,
    rgba(161, 166, 170,0.5) 40%,
    rgba(161, 166, 170,0.3) 50%,
    rgba(161, 166, 170,0.1) 100%
  );
}

.land-exam-contents4 > .land-exam-con-title::before {
  background: linear-gradient(
    to right,
    rgba(48, 73, 51,1) 0%,
    rgba(48, 73, 51,1) 30%,
    rgba(48, 73, 51,0.5) 40%,
    rgba(48, 73, 51,0.3) 50%,
    rgba(48, 73, 51,0.1) 100%
  );
}

.land-exam-contents5 > .land-exam-con-title::before {
  background: linear-gradient(
    to right,
    rgba(52, 34, 20,1) 0%,
    rgba(52, 34, 20,1) 30%,
    rgba(52, 34, 20,0.5) 40%,
    rgba(52, 34, 20,0.3) 50%,
    rgba(52, 34, 20,0.1) 100%
  );
}
.land-exam-con-title > * {position: relative; z-index: 2;}
.land-exam-con-title > h4{font-size: 26px; color: #fff; font-weight: 500;}
.land-exam-con-title > p{display: flex; align-items: center; gap: 8px; font-size: 16px; line-height: 24px; color: #fff;}
.land-exam-con-title > p::before{content: '';width: 32px;height: 32px;background: url(../img/land-exam-con-title.png) no-repeat center;background-color: rgba(255, 255, 255, 0.3);border-radius: 100%;}

.land-exam-con-title + .land-exam-con-list{margin-top: 24px;}
.land-exam-list, .resco-ov-list{display: flex;gap: 6px;padding: 8px 8px 0;background-color: #f9f9f9;border: 1px solid #ddd;border-bottom: 0;border-radius: 10px 10px 0 0;overflow: hidden;}
.land-exam-list > li, .resco-ov-list > li{flex: 1;background-color: #efefef;border-radius: 6px 6px 0 0;}
.land-exam-list > li > a, .resco-ov-list > li > a{display: block;padding: 6px 0;font-size: 15px; color: #747474; text-align: center;}
.land-exam-list > li.on, .resco-ov-list > li.on{background-color: #fff;border: 1px solid #f1f1f1;border-bottom: 0;}
.land-exam-list > li.on > a, .resco-ov-list > li.on > a{font-weight: 600;color: #2a70af;}

.land-process-list{display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; counter-reset: ranking;}
.land-process-list > li{display: flex; flex-direction: column; min-height: 160px; padding: 14px; border: 1px solid #ddd; border-radius: 10px;}
.land-process-list > li > span.lp-step{position: relative; display: flex; gap: 8px; font-size: 16px; line-height: 24px; color: #1e40af; font-weight: 500;}
.land-process-list > li > span.lp-step::before{content: counter(ranking); display: block; counter-increment: ranking; width: 24px; height: 24px; font-size: 13px; line-height: 24px; color: #fff; text-align: center; background-color: #1e40af; border-radius: 100%;}
.lp-step-ov{margin-top: 8px;}
.lp-step-take{display: block;width: max-content;padding: 0 9px;margin-top: auto;font-style: normal;font-size: 13px;line-height: 24px;color: #747474;background-color: #f1f1f1;border-radius: 13px;}

.land-exam-contents-wrap, .resco-ov-contents-wrap{padding: 20px; margin-top: -1px; border: 1px solid #ddd; border-top: 1px solid #f1f1f1; border-radius: 0 0 10px 10px;}
.land-exam-contents-wrap > div, .resco-ov-contents-wrap > div{display: none;}
.land-exam-contents-wrap > div.on, .resco-ov-contents-wrap > div.on{display: block;}

.land-exam-con-list, .resco-ov-con-list{display: flex; flex-direction: column; gap: 32px;}
.land-exam-con-list > li > h4, .resco-ov-con-list > li > h4{display: flex; gap: 8px; align-items: center; position: relative;font-size: 18px;line-height: 24px;font-weight: 500;}
.con-wrap{display: flex;flex-direction: column;gap: 4px;margin-top: 10px;font-size: 15px;}
.refer{color: #747b85;}

.land-table-list > li{position: relative; padding-left: 30px; color: #747b85;}
.land-table-list > li > span{position: absolute; top: 0; left: 0;}

.land-refer-list{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; counter-reset: ranking;}
.land-refer-list > li{padding: 14px; border: 1px solid #ddd; border-radius: 10px;}
.land-refer-list > li > span{position: relative; display: flex; gap: 8px; font-size: 16px; line-height: 24px; color: #5c5c5c; font-weight: 500;}
.land-refer-list > li > span::before{content: counter(ranking); display: block; counter-increment: ranking; flex-shrink: 0; width: 24px; height: 24px; font-size: 13px; line-height: 24px; color: #fff; text-align: center; background-color: #5c5c5c; border-radius: 4px;}

.lrl-img-wrap{margin-top: 16px; border: 1px solid #e1e1e1; border-radius: 6px; overflow: hidden;}
.lrl-img-wrap > img{width: 100%; object-fit: cover; object-position: center;}

.land-data-list{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: 12px;}
.land-data-list > li{flex: 1;}
.land-data-list > li > a{display: flex; justify-content: space-between; align-items: center; padding: 16px 16px 16px 20px; border: 1px solid #ddd; border-radius: 10px;}
.land-data-list > li > a::after{content: ''; flex-shrink: 0; width: 32px; height: 32px; margin-left: auto; background: url(../img/land-data-list.png) no-repeat center; background-color: #efefef; border-radius: 100%;}

.land-noti, .refer{display: block; position: relative; padding-left: 20px;}
.land-noti > span, .refer > span{position: absolute; top: 0; left: 0; width: 18px; text-align: center;}

.bullet-list.separate > li{position: relative; padding-left: 117px;}
.bullet-list.separate > li > span{position: absolute;top: 0;left: 16px;color: #112a49;font-weight: 500;}

.re-con-list > li{position: relative; padding-left: 12px;}
.re-con-list > li::before{content: ''; position: absolute; top: 10px; left: 0; width: 4px; height: 4px; background-color: #9dc4e7;}

.manage_list{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 12px; word-break: normal;}
.manage_list.line1_3{grid-template-columns: repeat(3, minmax(0, 1fr));}
.manage_list > li{display: flex;flex-direction: column;flex: 1;padding: 16px 18px;border: 1px solid #ddd;border-radius: 10px;}
.manage_list > li > p{margin-top: 20px;}
.manage_list > li > p.title{margin-top: 0; font-size: 17px;font-weight: 500;color: #0d64c1;}
.manage_list > li > p.title > span{position: relative; display: block; width: max-content;}
.manage_list > li > p.title > span::before{content: ''; position: absolute; top: -17px; right: 0; left: 0; height: 3px; background-color: #0d64c1;}
.manage_in_list{margin-top: 20px;}
.manage_in_list > li{position: relative; padding-left: 100px;}
.manage_in_list.v2 > li{padding-left: 80px;}
.manage_in_list > li + li{margin-top: 5px;}
.manage_in_list > li > span{position: absolute; top: 0; left: 0; padding-left: 11px; font-weight: 500;}
.manage_in_list > li > span::before{content: ''; position: absolute; top: 10.5px; left: 0; width: 3px; height: 3px; background-color: #121212;}
.total_td{background-color: #f1fbf5; color: #42b36f;}
.dept_3 + .dept_3{padding-top: 16px; margin-top: 12px; border-top: 1px solid #f1f1f1;}
.dept_3 > h5{font-size: 16px; font-weight: 500;}
.dept_3_con_wrap{margin-top: 10px;}
.num_num_list > li{position: relative; padding-left: 32px;}
.num_num_list > li + li{margin-top: 10px;}
.num_num_list > li > span.num_num{position: absolute; top: 2px; left: 0; width: 20px; height: 20px; font-size: 13px; line-height: 20px; text-align: center; color: #fff; background-color: #163b74; border-radius: 3px;}
.h4_badge{padding: 0 10px;font-size: 14px;line-height: 27px;font-weight: 400;color: #fff;background-color: #14ad76;border-radius: 20px;}

.process-num{display: inline-block; width: max-content; padding: 0 6px; margin-right: 8px; font-style: normal; color: #fff; background-color: #747474; border-radius: 3px;}
.step-card > .take{width: max-content; margin-bottom: 10px; color: #5299e1;}
.step-card > a.take{display: block; width: max-content; padding-right: 24px; margin-bottom: 10px; color: #5299e1; background: url(../img/a_take.png) no-repeat right center;}
.go-resco-button{display:inline-flex; align-items:center; justify-content:center; margin-top:14px; padding:7px 14px; background:#0c50a5; color:#fff; border-radius:6px; font-size:13px; font-weight:500; text-decoration:none; line-height:1; min-width:90px;}
.go-nrefs-button{display:inline-flex;align-items:center;justify-content:center;padding: 7px 10px;background:#0c50a5;color:#fff;border-radius:6px;font-size: 15px;font-weight:500;text-decoration:none;line-height:1;min-width:90px;}
.land-data-list > li > a.go_link_button{color: #fff; background-color: #25a2eb; border: 1px solid #3976b7;}
.land-data-list > li > a.go_link_button::after{content: ''; flex-shrink: 0; width: 32px; height: 32px; margin-left: auto; background: url(../img/go_link_button.png) no-repeat center; background-color: #0685cf; border-radius: 100%;}

.land-data-list > li > a.go_link_button1{color: #fff; background-color: #25a2eb; border: 1px solid #3976b7;}
.land-data-list > li > a.go_link_button1::after{content: ''; flex-shrink: 0; width: 25px; height: 25px; margin-left: auto; background: url(../img/go_link_button.png) no-repeat center; background-color: #0685cf; border-radius: 100%;margin-left: 15px;}
.go_link_h3{
    padding: 0 32px 0 10px;
    font-size: 14px;
    line-height: 25px;
    font-weight: 400;
    color: #fff;
    background: url(../img/go_link_h3.png) no-repeat right 8px center;
    background-color: #148fad;
    border-radius: 20px;
    }
.land-table-list-a{position: relative; display: block; line-height: 20px;}
.land-table-list-a::after{content: ''; display: inline-block; width: 20px; height: 20px; background: url(../img/land-table-list-a.png) no-repeat right bottom; vertical-align: top;}