@charset "UTF-8";

/* ============================================================
 * content.css — 신규 컨텐츠 전용 스타일시트
 * ------------------------------------------------------------
 * - style.css(레거시) 다음에 로드되어, 필요 시 레거시를 오버라이드한다.
 * - 신규 페이지/섹션 스타일은 이 파일에서 관리한다.
 * - 컨벤션은 AGENTS.md(§3 CSS) 준수:
 *     · 네이밍: 언더스코어 `역할접두사_서술어` (BEM 미사용)
 *     · 변형 modifier `type_*`, 상태 `is_*`
 *     · 사이징 rem(html 10px 기준, 1.6rem=16px), PC/MO 분기 1170px
 * - 충돌 방지: 신규 페이지 룰은 페이지 루트 클래스(`page_*`) 하위로 스코프 권장.
 * ============================================================ */

:root {
  --black: #000;
  --white: #FFF;
  --font-color01: #1A1A1A;
  --font-color-point01: #5EBE01;
  --font-color-disabled: #BBB;
}

/* body::before {
  backdrop-filter: blur(50px);
  -webkit-transition: all .3s;
  transition: all .3s;
  -webkit-transition-delay: .1s;
  transition-delay: .1s; 
} */

/* header & gnb */
.wrap {
  --header-min-height: 72px;
}

.header {
  background: rgba(255, 255, 255, 0.50);
  backdrop-filter: blur(10px);
  border-bottom: 0;
}

.is_layer_open .header {
  background: var(--white);
}

.inner_header {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  max-width: 1680px;
  gap: 40px;
}

.title_mainlogo {
  justify-self: start;
}

.title_mainlogo .link_logo {
  width: auto;
  margin-top: -4px;
}

.list_gnb {
  justify-self: center;
  padding: 0;
  gap: 58px;
}

.items_gnb {
  position: static;
  margin: 0;
}

.link_gnb {
  font-size: 1.6rem;
}

.link_gnb:after {
  bottom: 18px;
  height: 2px;
  background: var(--black)
}

.area_subgnb {
  left: 0;
  right: 0;
  width: auto;
  padding: 0;
  margin: 0;
}

.link_sub_depth1 {
  height: 60px;
  font-size: 1.6rem;
  font-weight: 400;
}

.box_topmenu {
  justify-self: end;
  gap: 40px;
}

.topmenu_outlink ul {
  display: flex;
  gap: 40px;
}

.topmenu_outlink ul li a {
  position: relative;
  padding-right: 24px;
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--black);
}

.topmenu_outlink ul li a::after {
  content: '';
  display: block;
  position: absolute;
  top: 5px;
  right: 0;
  width: 16px;
  height: 16px;
  background: url("/img/common/icon/icon_outlink-307f5fc2162a38ff6f14191439b1db4b.svg") no-repeat center;
  background-size: contain;
}

.topmenu_outlink ul li a:hover {
  border-bottom: 2px solid var(--black);
  padding-bottom: 4px;
}


.area_header_language .btn_language {
  /* width: auto;
  padding: 0 24px 0 0;
  font-size: 1.6rem;
  font-weight: 500; */
  width: 32px;
  padding: 0;
}

.area_header_language .btn_language:after {
  /* background: url("/img/common/icon/icon_chevrondown-af3fd4135f2eeba7bb683ce220a33069.svg") no-repeat center;
  background-size: contain;
  width: 20px;
  height: 20px;
  margin: 0;
  top: 3px;
  transition: transform 0.3s ease; */
  display: none;
}

.area_header_language .inner_language {
  width: 95px;
  overflow: visible;
  top: calc(100% + 8px);
  left: -28px;
}

.area_header_language .list_language {
  border: 0;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 4px 30px 0 rgba(0, 0, 0, 0.10);
  gap: 20px;
}

.area_header_language .link_language {
  font-size: 1.6rem;
  font-weight: 400;
  color: var(--black);
}

.btn_hamburger {
  display: none;
}


/* 통합 검색 레이어 */
.layer_search {
  display: none;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  width: 100vw;
  padding: 120px 0;
  background: var(--white);
}

body.is_search_open {
  overflow: hidden;
}

body.is_search_open .layer_search {
  display: block;
}

/* 딤: 기존 body::before 재사용. is_bg(GNB 호버)에는 블러를 걸지 않는다 */
body.is_search_open::before {
  z-index: 999;
  opacity: 1;
  backdrop-filter: blur(20px);
  -webkit-transition: all .2s;
  transition: all .2s;
  -webkit-transition-delay: .0s;
  transition-delay: .0s;
}

.btn_search_close {
  position: absolute;
  top: 20px;
  right: 120px;
  width: 32px;
  height: 32px;
  border: 0;
  background: url("/img/common/icon/icon_close-d82ce5420dd3878b02926852f54c0e2b.svg") no-repeat center;
  background-size: contain;
  cursor: pointer;
}

.inner_search {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 20px;
}

.area_search_form {
  position: relative;
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
}

.box_search_input {
  position: relative;
}

.btn_search_submit {
  position: absolute;
  top: 50%;
  left: 24px;
  width: 28px;
  height: 28px;
  margin-top: -14px;
  border: 0;
  background: url("/img/common/icon/icon_search-49953c1f2e426168691be1ffc6cc558e.svg") no-repeat center;
  background-size: contain;
  cursor: pointer;
}

.input_search {
  width: 100%;
  height: 60px;
  padding: 0 68px;
  border: 0;
  border-radius: 28px;
  background: #F4F5F7;
  font-size: 1.6rem;
  font-weight: 400;
  color: var(--black);
  box-sizing: border-box;
}

.input_search::placeholder {
  color: #666666;
}

.btn_search_clear {
  display: none;
  position: absolute;
  top: 50%;
  right: 24px;
  width: 28px;
  height: 28px;
  margin-top: -14px;
  border: 0;
  background: url("/img/common/icon/icon_input_delete-eb2fd74acd92a651e248d37f94da4265.svg") no-repeat center;
  background-size: contain;
  cursor: pointer;
}

.area_search_form.is_typing .btn_search_clear {
  display: block;
}

/* 연관 검색어 */
.box_search_suggest {
  display: none;
  margin-top: 12px;
  padding: 16px 0;
  border-radius: 12px;
  background: #F4F5F7;
}

.area_search_form.is_typing .box_search_suggest:has(.item_search_suggest) {
  display: block;
}

.btn_search_suggest {
  position: relative;
  display: block;
  width: 100%;
  padding: 12px 24px 12px 60px;
  border: 0;
  background-color: transparent;
  font-size: 1.4rem;
  font-weight: 400;
  color: var(--black);
  line-height: 1.5;
  text-align: left;
  cursor: pointer;
}

.btn_search_suggest::before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 24px;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  background: url("/img/common/icon/icon_search-49953c1f2e426168691be1ffc6cc558e.svg") no-repeat center;
  background-size: contain;
}

/* 추천 태그 */
.area_tag {
  margin-top: 40px;
}

.area_search_form.is_typing ~ .area_tag {
  display: none;
}

.list_search_tag {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
}

.btn_search_tag {
  border: 0;
  background-color: transparent;
  font-size: 1.6rem;
  font-weight: 500;
  color: var(--font-color01);
  cursor: pointer;
}

/* 공통 페이지 컨텐츠 영역 */
.contents_inner {
  max-width: 1460px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

/* 페이지네이션 */
.pagination {
  margin-top: 40px;
}

.btn_arrow.btn_first,
.btn_arrow.btn_last,
.pagination .btn_arrow:after {
  display: none !important;
}

.pagination .btn_arrow {
  width: 48px;
  height: 48px;
  font-size: 1.6rem;
  font-weight: 500;
  color: var(--black);
  text-align: center;
  cursor: pointer;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.pagination .btn_arrow[aria-disabled=true] {
  color: var(--font-color-disabled);
}

.pagination .box_page {
  gap: 0 8px;
  margin: 0 24px;
}

.pagination .btn_pagination {
  width: 48px;
  height: 48px;
  font-size: 1.6rem;
  font-weight: 500;
  color: var(--black);
}

.pagination .btn_pagination[aria-current=true] {
  background: #EEE;
  color: var(--black);
}

.pagination .btn_pagination:focus, 
.pagination .btn_pagination:hover,
.pagination .btn_pagination[aria-current=true]:focus, 
.pagination .btn_pagination[aria-current=true]:hover {
  color: var(--black);
}

/* footer */
.footer .inner_footer,
.footer_bottom .inner_footer {
  max-width: 1680px;
}

.footer_item_title {
  margin: 0;
}

/* 외부링크 아이콘 전용 SVG로 교체 (style.css의 공유 스프라이트 pc-svg.svg/mo-svg.svg 대신).
 * 시안 규격 10x10px로 통일(PC 8px/MO 6px였던 기존 크기 대체). 위치·hover 롤업 애니메이션은 style.css 값 유지.
 * PC/MO 동일 파일·동일 크기 사용 — 이 규칙은 미디어쿼리 없이 항상 적용된다. */
.footer_top_list .footer_link.type_outlink:before,
.footer_top_list .footer_link.type_outlink:after {
  width: 16px;
  height: 16px;
  background: url("/img/icon/icon_outlink_new-2950137b7c9b287e73e826a1fb363bb8.svg") no-repeat center / 100% auto;
}


.btn_move_link {
  align-self: flex-start;
  font-size: 1.4rem;
  color: #000;
  border: 1px solid #000;
  padding: 10px 20px;
  cursor: pointer;
}



/* 레거시 폰트 사이즈 조정 픽스 / 기존 root 폰트 사이즈를 9px로 줄였던 세팅을 10px로 고정하여 rem 단위 계산 시 10px 기준으로 계산 */
@media only screen and (min-width:1170px) and (max-width:1640px) {
  body,html {
    font-size: 10px;
  }
}

/* =========================================================
 * 다이어그램 박스 (비교표: 컬럼별 [헤더 라벨 + 본문] 묶음 + 각주)
 * 컬럼 1묶음 = .diagram_col > (.diagram_head > span) + (.diagram_body > div > ul > li)
 * 컬럼 수는 .diagram_row 자식(.diagram_col) 개수로 자동 (flex: 1)
 * 본문 목록은 .diagram_body 안의 ul/li 로 마크업 (레거시 .diagram_list 클래스와 충돌하므로 클래스 미사용)
 * ========================================================= */
.diagram_box {
  padding: 60px;
  background-color: #f9fafc;
}
.diagram_box .diagram_row {
  display: flex;
  gap: 20px;
}
.diagram_box .diagram_col {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.diagram_box .diagram_head {
  margin-bottom: 16px;
  border-radius: 20px;
  background: #006A4D;
}

.diagram_box .diagram_head > * {
  display: flex;
  align-items: center;
  justify-content: center;
  height:90px;
  color: #fff;
  font-size: 2.4rem;
  font-weight: 600;
  text-align: center;
}
.diagram_box .diagram_body {
  flex: 1;
  height: 100%;
  padding: 40px;
  border-radius: 20px;
  background-color: #edeff2;
}
.diagram_box .diagram_body ul {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
  background: none;
}
.diagram_box .diagram_body ul > li {
  display: block;
  position: relative;
  height: auto;
  min-height: 0;
  padding-left: 29px;
  background: none;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #333;
}
.diagram_box .diagram_body ul > li::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 12px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #333;
}
/* 에러페이지 */
.page_error .code {
  color: var(--font-color-point01);
  font-size:6rem;
  line-height:1.4;
  margin-bottom:4px;
}
.page_error .title {
  font-size:2.4rem;
  line-height:1.4;
  font-weight:600;
  margin-top:0;
}
.page_error .desc {
  font-size:1.6rem;
  line-height:1.5;
  font-weight:400;
  color:#333;
  margin:24px 0 40px;
}
.page_error .btn_basic {
  box-sizing:border-box;
  background:#000;
  padding:14px 20px;
  font-size:1.4rem;
  color:#fff;
}

/* 메인 팝업 */
.wrap_popup_n {
  padding:0;
}
.wrap_popup_n .area_popup .box_popup {
  width:640px;
  margin-top:0;
}
.wrap_popup_n .area_popup .box_popup .inner_popup {
  height:736px;
}
.wrap_popup_n .area_popup .btn_popup_set {
  display:flex;
  align-items: stretch;
  padding: 0;
  background: #fff;
}
.wrap_popup_n .area_popup .btn_not_see_today,
.wrap_popup_n .area_popup .btn_popup_close {
  flex: 1 1 50%;
  order: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  border: 0;
  background: none;
  cursor: pointer;
  padding:18px 0;
  font-size:1.6rem;
  font-weight:500;
  line-height:1.5;
  color: #000;
}
.wrap_popup_n .area_popup .btn_popup_close {
  border-left: 1px solid #D9D9D9;
}
.wrap_popup_n .area_popup .btn_popup_close::after {
  content:none;
}

/* 반응형 모바일 */
@media only screen and (max-width:1169.98px) {
  .wrap {
    --header-min-height: 50px;
  }

  .section_content_brand, 
  .section_sub_content {
    padding: 0;
  }

  /* header */
  .title_mainlogo .link_logo {
    padding: 0 20px;
    margin-top: 0;
  }

  .title_mainlogo .link_logo img {
    max-width: 108px;
  }

  .box_topmenu {
    display: flex;
    gap: 16px;
    align-items: center;
    height: 100%;
    padding-right: 20px;
  }

  .topmenu_outlink {
    display: none;
  }

  .is_layer_open .btn_search {
    display: none;
  }

  .btn_search img {
    width: 28px;
    height: 28px;
  }

  .btn_hamburger {
    display: block;
    padding: 0;
  }

  .btn_hamburger:after {
    display: block;
    width: 32px;
    height: 32px;
    background: url("/img/common/icon/icon_hamburger-30f8cd6d50abfd59bf700658f181d385.svg") no-repeat center;
    background-size: contain;
    content: "";
  }

  /* 통합 검색 레이어 */
  .layer_search {
    padding: 80px 0 40px;
    height: calc(100dvh - 120px);
  }

  .btn_search_close {
    top: 20px;
    right: 20px;
    width: 28px;
    height: 28px;
  }

  .btn_search_submit {
    left: 16px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
  }
  
  .input_search {
    height: 44px;
    padding: 0 48px;
    border: 0;
    font-size: 1.4rem;
  }

  .btn_search_clear {
    right: 16px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
  }

  /* 연관 검색어 */
  .box_search_suggest {
    margin-top: 16px;
    padding: 0;
    background: var(--white);
  }

  .btn_search_suggest {
    padding: 12px 12px 12px 48px;
  }

  .btn_search_suggest::before {
    left: 16px;
  }

  /* 추천 태그 */
  .area_tag {
    margin-top: 20px;
  }

  .list_search_tag {
    justify-content: flex-start;
    gap: 20px;
    padding: 0 8px;
  }

  .btn_search_tag {
    font-size: 1.3rem;
  }

  /* 페이지네이션 */
  .pagination {
    margin-top: 30px;
  }

  .pagination .btn_arrow {
    width: 32px;
    height: 32px;
    font-size: 1.3rem;
  }

  .pagination .btn_pagination {
    width: 32px;
    height: 32px;
    font-size: 1.3rem;
  }

  /* LNB */
  .list_sitemap {
    margin-top: 0;
    padding: 20px;
    height: 100%;
  }

  .items_sitemap:not(:last-child) {
    margin-bottom: 8px;
  }

  .items_sitemap.items_sitemap_start {
    position: relative;
  }

  .items_sitemap.items_sitemap_start::before {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    border-top: 1px solid #ddd;
    margin-top: 16px;
    padding-bottom: 16px;
  }

  .btn_sitemap {
    font-weight: 600;
  }

  .btn_sitemap:not(a):after {
    width: 20px;
    height: 20px;
    margin-top: -9px;
    background: url("/img/common/icon/icon_chevrondown-af3fd4135f2eeba7bb683ce220a33069.svg") no-repeat center;
    background-size: contain;
    transition: all 0.3s;
  }

  .btn_sitemap.type_outlink {
    width: fit-content;
  }

  .list_sitemap_menu {
    margin: 0;
    padding: 0;
    border-bottom: 0;
  }

  .items_sitemap_menu {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
  }

  .link_sitemap {
    padding: 10px 0;
    font-weight: 400;
    line-height: inherit;
  }

  .area_sitemap .box_language {
    position: relative;
    border-top: 0;
  }

  .area_sitemap .inner_language {
    margin: 0;
    padding: 20px;
    border-bottom: 0;
  }

  .area_sitemap .list_language::before,
  .area_sitemap .items_language:before {
    display: none;
  }

  .area_sitemap .items_language {
    margin-right: 8px;
  }

  .area_sitemap .link_language {
    line-height: inherit;
    font-weight: 400;
    padding: 12px 20px;
    background: #eee;
    border-radius: 40px;
  }

  .area_sitemap .items_language:first-child .link_language {
    background: var(--black);
    color: var(--white);
  }

  .layer_sitemap .btn_close:after {
    width: 28px;
    height: 28px;
    background: url("/img/common/icon/icon_close-d82ce5420dd3878b02926852f54c0e2b.svg") no-repeat center;
    background-size: contain;
  }

  /* footer */
  .footer_top_list {
    gap: 24px 48px;
  }

  .footer .link_tel, 
  .footer_top_info {
    margin-top: 0;
  }

  .area_footer_familysite {
    padding-bottom: 0;
  }

  .area_footer_familysite .btn_familysite:after {
    width: 20px;
    height: 20px;
    background: url("/img/common/icon/icon_chevrondown-af3fd4135f2eeba7bb683ce220a33069.svg") no-repeat center;
    background-size: contain;
    margin-top: -10px;
    transition: all 0.3s;
  }

  .diagram_box {
    padding: 20px;
  }
  .diagram_box .diagram_row {
    flex-direction: column;
    gap: 24px;
  }
  .diagram_box .diagram_head {
    margin-bottom: 8px;
    border-radius: 10px;
  }
  .diagram_box .diagram_body {
    border-radius: 10px;
    padding: 0;
  }
  .diagram_box .diagram_head > * {
    min-height: 0;
    height:48px;
    font-size: 1.3rem;
  }
  .diagram_box .diagram_body > div {
    padding: 16px;
  }
  .diagram_box .diagram_body ul > li {
    display: block;
    position: relative;
    height: auto;
    min-height: 0;
    padding-left: 20px;
    background: none;
    font-size: 1.8rem;
    line-height: 1.5;
    color: #333;
  }
  .diagram_box .diagram_body ul > li::before {
    content: "";
    position: absolute;
    top: 8px;
    left: 8px;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background-color: #333;
  }
  .diagram_box .diagram_body ul > li {
    font-size: 1.3rem;
  }
  .btn_move_link {
    padding: 10px 16px;
    font-size: 1.3rem;
    font-weight: 400;
  }

  /* 에러페이지 */
  .page_error {
    justify-content:flex-start;
    padding:0 20px;
  }
  .page_error .code {
    font-size:4rem;
    margin-top:160px;
  }
  .page_error .title {
    font-size:1.8rem;
    line-height:1.5;
  }
  .page_error .desc {
    font-size:1.3rem;
    line-height:2rem;
    margin:20px 0;
    padding:0;
    overflow-wrap: anywhere;
  }
  .page_error .btn_basic {
    width:100%;
    box-sizing:border-box;
    background:#000;
    padding:14px 20px;
    font-size:1.4rem;
    color:#fff;
    margin:auto 0 80px;
  }

  /* 메인 팝업 */
  .wrap_popup_n {
    padding:0 20px;
    box-sizing:border-box;
  }
  .wrap_popup_n .area_popup {
    width:100%;
    min-width:auto;
  }
  .wrap_popup_n .area_popup .box_popup {
    width:100%;
  }
  .wrap_popup_n .area_popup .box_popup .inner_popup {
    height:auto;
  }
  .wrap_popup_n .area_popup .btn_not_see_today,
  .wrap_popup_n .area_popup .btn_popup_close {
    padding:12px 0;
    font-size:1.4rem;
  }
}

/* 일본어 개행 분리 처리 */
html[lang=ja] .contents_top_header .text_list_desc,
html[lang=ja] .contents_box {
  word-break: normal;
  overflow-wrap: anywhere;
}

/* ============================================================
 * content-phj.css 병합 (구 병행 작업용 분리 파일)
 * ============================================================ */

 /* 공통 컬러 */
 /*
    #000
    #333
    #fff
    #FAFAFA
    #EBEBEB
    #D9D9D9
    #F9FAFC
 
 */

/* 전체 공통 : 페이지 로드 시 콘텐츠 페이드인 */
.wrap:not(.wrap_main) main.container {
    opacity:0;
    animation:fade_in 450ms ease-in forwards;
    animation-delay:200ms;
}
@keyframes fade_in {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@media (prefers-reduced-motion: reduce) {
    main.container {
        animation: none;
    }
}

/* 링크 */
.link-item {
    display:inline-block;
    font-size: 1.6rem;
    color: #000;
    text-decoration: underline;
    text-underline-offset: 5px;
    cursor: pointer;
}
.link-item:hover {
    text-decoration: underline;
}

/* 공통 서브 페이지 헤더 */
.contents_top.contents_top_visual {
    overflow:hidden;
    position:relative;
}
.contents_top.contents_top_visual::after {
    content:'';
    display:block;
    width:100%;
    height:480px;
    background-size: cover;
    background-position: center;
}
.contents_top_header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
    padding: 160px 0 80px;
}
.contents_top_header:has(.link-item) {
    align-items: flex-start;
}
.contents_top_header .title_list {
    font-size: 8rem;
    font-weight: 700;
    line-height: 10.4rem;
    flex: 1;
}
.contents_top_header .text_list_desc {
    font-size: 1.6rem;
    color: #333;
    word-break: keep-all;
    flex: 1;
    display:flex;
    align-items:center;
    height:10.4rem;
}
.contents_top_header .box_list_desc {
    display: flex;
    flex-direction: column;
    gap: 24px;
    flex: 1;
}
.contents_top_header .box_list_desc .text_list_desc {
    flex:none;
}

/* 공통 서브 페이지 탭 */
.contents_tab {
    border-bottom: 1px solid #ddd;
}
.nav_tab_swiper.nav_tab_swiper_common {
    width: auto;
    max-width: 1460px;
    padding: 0 20px;
}
.swiper_common_tab.type_common_tab {
    height: auto;
    margin: 0;
    padding-top: 40px;
}
.swiper_common_tab.type_common_tab .swiper-slide {
    width: auto;
}
.swiper_common_tab .swiper-slide + .swiper-slide {
    margin-left: 80px;
}
.swiper_common_tab.type_common_tab .btn_tab_swiper {
    border: 0;
    color: #000;
    font-size: 2.0rem;
    line-height:2.8rem;
    font-weight: 400;
    padding-bottom: 20px;    
}
.swiper_common_tab.type_common_tab .swiper-slide.is_selected_tab .btn_tab_swiper {
    background: none;
    border: 0;
    font-weight: 600;
    position:relative;
}
.swiper_common_tab.type_common_tab .swiper-slide.is_selected_tab .btn_tab_swiper::after {
    content: '';
    width: 100%;
    height: 4px;
    background-color: #000;
    position:absolute;
    bottom:0;
    left:0;
}
.contents_tab_result .section_sub_content {
    display:block;
    padding-top:0;
}
/* page navigation */
.page_nav {
    width:100%;
    margin:120px 0 120px;
}
.page_nav .page_nav_inner {
    display:flex;
    border-top:1px solid #EBEBEB;
    padding-top:40px;
}
.page_nav .page_btn {
    display:flex;
    align-items:center;
    gap:32px;
    font-size:1.8rem;
    line-height:3.2rem;
    color: #000;
}
.page_nav .page_nav_next {
    margin-left:auto
}
.page_nav .page_nav_prev .page_btn {
    position:relative;
    padding-left:40px;
}
.page_nav .page_nav_prev .page_btn::before {
    content:'';
    width:32px;
    height:32px;
    background:url("/img/common/icon/icon_page_arrow_left-f3ca0427efa7e28b8bcff637c9587125.svg") no-repeat 0 0 / 100% auto;
    position:absolute;
    top:0;
    left:0;
}
.page_nav .page_nav_next .page_btn {
    position:relative;
    padding-right:40px;
}
.page_nav .page_nav_next .page_btn::before {
    content:'';
    width:32px;
    height:32px;
    background:url("/img/common/icon/icon_page_arrow_left-f3ca0427efa7e28b8bcff637c9587125.svg") no-repeat 0 0 / 100% auto;
    position:absolute;
    top:0;
    right:0;
    transform:rotate(-180deg);
}
.page_nav .page_btn .page_title {
    display:flex;
    align-items:center;
    font-weight:600;
}
.page_nav .page_btn .page_title .page_title_sub {
    padding-left:17px;
    position:relative;
}
.page_nav .page_btn .page_title .page_title_sub::before {
    content:'';
    width:1px;
    height:14px;
    background-color:#D9D9D9;
    position:absolute;
    left:8px;
    top:50%;
    transform:translateY(-50%);
}

/* 콘텐츠 영역 */
.contents_box {
    word-break: keep-all;
    padding-top:160px;
}
.contents_box img {
    width: 100%;
}
.contents_top:not(.contents_top_visual) + .contents_box {
    padding-top:80px;
}
.contents_box .text_desc {
    font-size:1.6rem;
    line-height:1.5;
    color:#666;
}
.contents_box .text_note {
    font-size: 1.4rem;
    line-height: 1.7;
    color: #666;
}
/* content_area 내부 요소 간 간격 (구 sustainability/planet.css에서 이관) */
.contents_box .content_area > *:first-child {
    margin-top: 0;
}
.contents_box .content_area .text_desc + h4,
.contents_box .content_area h4.type_lg + .text_label {
    margin-top: 60px;
}
.contents_box .content_area .text_desc + .diagram_box {
    margin-top: 60px;
}
.contents_box .content_area h4 + .content_card_list,
.contents_box .content_area .text_label + .content_card_list {
    margin-top: 24px;
}
.contents_box .content_area .content_card_list + .text_note,
.contents_box .content_area .text_desc + .text_note {
    margin-top: 24px;
}
.contents_box .content_area .text_note + h4 {
    margin-top: 80px;
}
.contents_box .content_area .content_card_list + .data_box,
.contents_box .content_area .diagram_box + .data_box {
    margin-top: 32px;
}
.contents_box .content_area .content_card_item + .content_card_list {
    margin-top: 32px;
}
.contents_box .text_label {
    font-size:2.4rem;
    line-height:1.4;
    font-weight:600;
}
.contents_box .img_box > img {
    width:100%;
}
.contents_box .text_label + .text_desc,
.contents_box h4 + .text_desc {
    margin-top:24px;
}
.contents_box .text_desc + .text_desc {
    margin-top:24px;
}
.contents_box .contents_section + .contents_section {
    padding-top:240px;
}
.contents_box .contents_section.contents_section_flex {
    display:flex;
    gap:0 80px;
}
.contents_box .contents_section.contents_section_flex .content_area {
    width:928px;
    margin-left:auto;
    padding-top:40px;
}
.contents_box .text_desc + .img_box {
    margin-top:60px;
}
.contents_box .title_area {
    margin-bottom:80px;
}
.contents_box .title_area .order {
    display:block;
    font-size:1.8rem;
    line-height:1.4;
    font-weight:700;
}
.contents_box .title_area .link-item {
    margin-top:24px;
}
.contents_box .title_area h3 {
    font-size:4rem;
    line-height:1.4;
    font-weight:700;
    margin-top:16px;
}
.contents_box .content_area h4 {
    font-size:2.4rem;
    line-height:1.4;
    font-weight:600;
}
.contents_box .content_area .content_area_column {
    display:flex;
    gap:56px;
}
.contents_box .content_area .content_area_column div:has(img) {
    flex-shrink:0;
}
.contents_box .content_area .content_area_column .column_left {
}
.contents_box .content_area .content_area_column .column_right {
    margin-left:auto;
}
.contents_box .quote_area {
    font-size:2.4rem;
    line-height:1.5 ;
    font-weight:500;
}
.contents_box .quote_area strong {
    display:block;
    margin-top:40px;
    font-size:3.2rem;
    line-height:1.4;
    font-weight:600;
}
.contents_box .btn_view_link {
    display:inline-flex;
    align-items:center;
    justify-content:space-between;
    padding:11px 20px;
    font-size:1.8rem;
    line-height:2.6rem;
    font-weight:600;
    color:#000;
    border-radius: 999px;
    background: #DFE1E5;
    margin-left:auto;
    gap:4px;
}
.contents_box .btn_view_link::after {
    content:'';
    display:block;
    width:20px;
    height:20px;
    background:url("/img/common/icon/icon_outlink-307f5fc2162a38ff6f14191439b1db4b.svg") no-repeat center / 100% auto;
}

/* 연관 콘텐츠 */
.contents_related {
    padding:160px 0;
    background-color:#FAFAFA;
}
.contents_related h3 {
    font-size:2.4rem;
    line-height:1.4;
    font-weight:600;
    margin-bottom:32px;
}
.contents_related_list > li {
    width:340px;
}
.contents_related_list .img_area {
    height:200px;
    overflow:hidden;
    margin-bottom:16px;
}
.contents_related_list .img_area > img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}
.contents_related_list .title_area {
    font-size:2rem;
    font-weight:500;
    line-height:2.9rem;
    color:#000;
    height:5.8rem;
    margin-bottom:20px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    word-break: break-all;
    overflow: hidden;
    text-overflow: ellipsis;
}
.contents_related_list .date {
    font-size:1.4rem;
    font-weight:400;
    line-height:2rem;
    color:#333;
}

/* half 리스트 */
.content_half_list {
    display:flex;
    gap:56px;
}
.content_half_list > li {
    width:50%;
}
.content_half_list .text_set {
    margin-top:32px;
}
.content_half_list .text_num {
    display:block;
    font-size:1.8rem;
    line-height:1.4;
    font-weight:700;
    margin-bottom:8px;
}
.content_half_list .text_desc {
    margin-top:24px;
}

/* content_card_list */
.content_card_list {
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:32px;
}
.text_desc + .content_card_list {
    margin-top: 60px;
}
.content_card_list.col_1 {
    grid-template-columns:repeat(1, 1fr);
}
.content_card_list.col_3 {
    grid-template-columns:repeat(3, 1fr);
}
.content_card_list.col_4 {
    grid-template-columns:repeat(4, 1fr);
}
.content_card_list.col_5 {
    grid-template-columns:repeat(5, 1fr);
}
.content_card_item {
    padding:60px;
    background-color:#F9FAFC;
}
.content_card_list.col_5 .content_card_item {
    padding: 32px;
}
.content_card_list.list_process {
    grid-auto-flow:column;
    grid-auto-columns:1fr;
    gap:48px;
}
.content_card_list.list_process .content_card_item {
    position:relative;
}
.content_card_list.list_process .content_card_item + .content_card_item::before {
    content:'';
    position:absolute;
    left:-36px;
    top:50%;
    transform:translateY(-50%);
    width:24px;
    height:24px;
    background:url("/img/common/icon/icon_process_arrow-a85c8a79f49d3c320f0cce793177522e.svg") no-repeat center / 100% auto;
}
.content_card_item .icon {
    width:60px;
    height:60px;
    background-color:#000;
    padding:10px;
    box-sizing:border-box;
    border-radius:50%;
    margin-bottom:16px;
}
.content_card_item .title {
    display:flex;
    align-items:center;
    font-size:2.8rem;
    font-weight:600;
    line-height:1.4;
}
.content_card_item .title .btn_link {
    display:block;
    width:32px;
    height:32px;
    background:url("/img/common/icon/icon_outlink-307f5fc2162a38ff6f14191439b1db4b.svg") no-repeat center / 100% auto;
    margin-left:auto;
}
.content_card_item .desc {
    font-size:1.8rem;
    line-height:1.5; 
    color:#333;
    margin-top:24px;
}
.content_card_item .desc + .desc {
    margin-top:27px;
}
.content_card_item .desc_list {
    margin-top:24px;
}
.content_card_item .desc_list > li {
    padding-left:28px;
    position:relative;
    font-size:1.8rem;
    line-height:1.5; 
    color:#333;
}
.content_card_item .desc_list > li::before {
    content:'';
    width:5px;
    height:5px;
    background-color:#333;
    border-radius:50%;
    position:absolute;
    top:12px;
    left:11px;
}
.content_card_item .note {
    font-size:1.6rem;
    line-height:1.5;
    color:#666;
    margin-top:16px;
}

/* 카드 : 텍스트 좌 / 이미지 우 full-bleed
 * 사용처: sustainability/planet, sustainability/people
 * 카드 = 패딩 없는 flex 2열. 안쪽 여백은 .media_body(텍스트)가 가짐.
 * 이미지 열 = 카드 폭의 48.6%, 높이는 --media-ratio(기본 690/380 → 48.6% ≈ 690px 일 때 380px).
 * 카드 높이 = 텍스트 높이 vs 이미지 높이 중 큰 값(자동). 페이지는 --media-ratio 만 재정의. */
.content_card_item.type_media {
    --media-ratio: 690 / 380;
    box-sizing: border-box;
    display: flex;
    gap: 60px;
    padding: 0;
    overflow: hidden;
}
.content_card_item.type_media .media_body {
    flex: 1 1 0;
    min-width: 0;
    padding: 60px 0 60px 60px;
}
.content_card_item.type_media .media_img {
    flex: 0 0 48.6%;
    aspect-ratio: var(--media-ratio);
}
.content_card_item.type_media .media_img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 개인정보 처리방침 */
.section_primary_policy {
    width:1420px;
}
/* inquiry */
.page_inquiry {
    padding-top:0;
}
.page_inquiry .section_sub_content {
    width:auto;
}
.page_inquiry .contents_box {
    padding-top:80px;
}
.page_inquiry .box_content_inquiry {
    padding:60px 0;
    margin-top:0;
}
.page_inquiry .box_content_inquiry:first-child {
    margin-top:80px;
}
.page_inquiry .box_content_inquiry .box_info_policy {
    width:928px;
}
.page_inquiry .box_content_inquiry .box_info {
    width:928px;
    margin-top:40px;
    flex-shrink: 0;
}
.page_inquiry .input_box {
    flex-direction:column;
    align-items:flex-start;
    gap:24px;
}
.page_inquiry .input_box + .input_box {
    margin-top:80px;
}
.page_inquiry .input_box .input_label+.input_area {
    margin:0;
    width:100%;
}
.page_inquiry .input_box.input_box_radio .input_area {
    gap: 0 24px;
}
.page_inquiry .input_box .input_item_check input+label, 
.page_inquiry .input_box .input_item_radio input+label {
    font-size:1.6rem;
    line-height:1.5;
    font-weight:400;
    color:#333;
}

.page_inquiry .input_box .input_label {
    font-size:2rem;
    line-height:1.4;
    font-weight:600;
}
.page_inquiry .input_box .input_text {
    font-size:1.6rem;
    line-height:1.5;
    font-weight:400;
    border:1px solid #C3C8D1;
    padding:11px 16px;
}
.page_inquiry .input_box .input_textarea_inner {
    border:1px solid #C3C8D1;
} 
.page_inquiry .input_box .input_textarea {
    height:185px;
}
.page_inquiry .input_box .input_text::placeholder,
.page_inquiry .input_box .input_textarea::placeholder {
    color:#666;
    font-weight:400;
}
.page_inquiry .input_box .input_txt_guide {
    font-size:1.2rem;
    font-weight:400;
    color:#666;
    padding-left:16px;
}
.page_inquiry .btn_box {
    margin-top:80px;
}
.page_inquiry .box_notice_gray {
    background:#F9FAFC;
}
.page_inquiry .box_notice_gray .title {
    color:#000;
    font-size:2rem;
    line-height:1.4;
    font-weight:600;
}
.page_inquiry .box_notice_gray .title::before {
    width:32px;
    height:32px;
    background-image:url("/img/common/icon/icon_notice-05a492153c76374060c1e6c0f4f932ca.svg");
    background-position:0 0;
    background-size:100% auto;
    margin-right:8px;
}
.page_inquiry .box_notice_gray .notice_list {
    color:#000;
    font-size:1.8rem;
    line-height:1.5;
    font-weight:400;
    gap:0;
}
.page_inquiry .box_notice_gray .notice_list .item::before {
    background: #000;
    width: 5px;
    height: 5px;
    margin-left: 8px;
}
.page_inquiry .box_notice_gray + .input_box {
    margin-top:24px;
}
.page_inquiry .box_notice_gray .policy_title {
    color:#000;
    font-size:1.8rem;
    line-height:1.5;
    font-weight:400;
}
.page_inquiry .box_notice_gray .policy_list {
    color:#000;
    font-size:1.8rem;
    line-height:1.5;
    font-weight:400;
}
.page_inquiry .box_notice_gray .policy_item:not(:first-child) {
    margin-top:27px;
}
.page_inquiry .box_notice_gray .policy_list_type2 .policy_item:not(:first-child) {
    margin-top:27px;
}
.page_inquiry .box_notice_gray .policy_title+.policy_list,
.page_inquiry .box_notice_gray .policy_list+.policy_title {
    margin-top:27px;
}
.page_inquiry .box_notice_gray .policy_sub_list {
    color:#000;
    font-size:1.8rem;
    line-height:1.5;
    font-weight:400;
    gap:0;
    margin-top:0;
}
.page_inquiry .box_notice_gray .policy_sub_list .item_sub {
    padding-left:22px;
}
.page_inquiry .box_notice_gray .policy_sub_list .item_sub::before {
    background:#000;
    width:5px;
    height:5px;
    left:6px;
}
.page_inquiry .box_notice_gray .policy_sub_list.type_number .item_sub::before {
    background:none;
    width:auto;
    height:auto;
}
.page_inquiry .input_item_radio {
    margin:0;
}
.page_inquiry .input_item_radio input+label::before {
    background-image: url("/img/common/icon/icon_radio-ceac0bc24dfbc552190e0999cec2c2b2.svg");
    background-size: 44px 20px;
    background-position: -24px 0;
}
.page_inquiry .input_item_check input+label::before {
    background-image: url("/img/common/icon/icon_check-54da50b91188fd2984644f5fd3d09220.svg");
    background-size: 44px 20px;
    background-position: -24px 0;
}
.page_inquiry .input_item_radio input:checked+label::before {
    background-image: url("/img/common/icon/icon_radio-ceac0bc24dfbc552190e0999cec2c2b2.svg");
    background-size: 44px 20px;
    background-position: 0 0;
}
.page_inquiry .input_item_check input:checked+label::before {
    background-image: url("/img/common/icon/icon_check-54da50b91188fd2984644f5fd3d09220.svg");
    background-size: 44px 20px;
    background-position: 0 0;
}
.btn_submit.type_n {
    min-width:200px;
    box-sizing:border-box;
    background:#000;
    padding:12px 16px;
    border-radius:0;
    font-size:1.6rem;
    line-height:1.5;
    font-weight:600;
}
.input_item_file.type_n .btn_upload_file {
    width:160px;
    padding:13px 0;
    font-size:1.4rem;
    font-weight:400;
    background:#fff;
    border:1px solid #000;
    color:#000;
    text-align:center;
    border-radius:0;
    margin-left:8px;
}

/* Mobile (1169.98px 이하) */
@media only screen and (max-width: 1169.98px) {
    /* 링크 */
    .link-item {
        font-size: 1.3rem;
        font-weight: 400;
    }

    /* 서브 페이지 공통 헤더 */
    .contents_top.contents_top_visual::after {
        height: 200px;
    }
    .contents_top_header {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        padding: 40px 0 60px;
    }

    .contents_top_header .title_list {
        font-size: 4rem;
        line-height: 1.4;
    }

    .contents_top_header .text_list_desc {
        font-size: 1.4rem;
        line-height: 1.5;
        padding-top: 0;
        height:auto;
    }
    .contents_top_header .box_list_desc {
        gap: 30px;
    }

    .nav_tab_swiper.nav_tab_swiper_common {
        padding: 0;
    }
    .swiper_common_tab.type_common_tab {
        padding: 16px 20px 0;
    }
    .swiper_common_tab .swiper-slide + .swiper-slide {
        margin-left: 24px;
    }
    .swiper_common_tab.type_common_tab .btn_tab_swiper {
        border: 0;
        color: #000;
        font-size: 1.4rem;
        line-height:1.4;
        font-weight: 400;
        padding-bottom: 12px;
    }
    .swiper_common_tab.type_common_tab .swiper-slide.is_selected_tab .btn_tab_swiper::after {
        height: 2px;
    }

    /* page navigation */
    .page_nav {
        /* 연관컨텐츠 없을 때 top 버튼 영역 확보 */
        margin:0 0 100px;
    }
    .section_result_panel:has(.contents_related) .page_nav {
        margin: 0 0 40px;
    }
    .page_nav .page_nav_inner {
        padding-top:20px;
    }
    .page_nav .page_btn {
        font-size:1.3rem;
        line-height:2.4rem;
    }
    .page_nav .page_btn .page_title {
        display:none;
    }
    .page_nav .page_nav_prev .page_btn {
        position:relative;
        padding-left:28px;
    }
    .page_nav .page_nav_prev .page_btn::before {
        width:24px;
        height:24px;
    }
    .page_nav .page_nav_next .page_btn {
        padding-right:28px;
    }
    .page_nav .page_nav_next .page_btn::before {
        width:24px;
        height:24px;
    }

    /* 콘텐츠 영역 */
    .contents_box {
        padding:0;
    }
    .contents_top:not(.contents_top_visual) + .contents_box {
        padding:0;
    }
    .contents_box .text_desc {
        font-size:1.4rem;
        line-height:1.5;
        color:#666;
    }
    .contents_box .text_desc.fcolor_dg {
        color:#333;
    }
    .contents_box .text_label {
        font-size:1.6rem;
        line-height:1.5;
        font-weight:700;
    }
    .contents_box .text_note {
        font-size:1.2rem;
        color:#666;
    }
    .contents_box .text_label + .text_desc,
    .contents_box h4 + .text_desc {
        margin-top:16px;
    }
    .contents_box .text_desc + .text_desc {
        margin-top:21px;
    }
    .contents_box .text_desc + .img_box {
        margin-top:30px;
    }
    .contents_box .contents_section {
        padding: 60px 0;
    }
    .contents_top:not(.contents_top_visual) + .contents_box .contents_section:first-child {
        padding:20px 0 60px;
    }
    .contents_box .contents_section + .contents_section {
        padding-top:60px;
    }
    .contents_box .contents_section.contents_section_flex {
        display:block;
    }
    .contents_box .contents_section.contents_section_flex .content_area {
        width:auto;
        margin-left:auto;
        padding-top:0;
    }
    .contents_box .title_area {
        margin-bottom:40px;
    }
    .contents_box .title_area .order {
        display:block;
        font-size:1.4rem;
        line-height:2rem;
        font-weight:700;
    }
    .contents_box .title_area .link-item {
        margin-top:16px;
    }
    .contents_box .title_area h3 {
        font-size:2.4rem;
        line-height:1.5;
        font-weight:700;
        margin-top:8px;
    }
    .contents_box .content_area h4 {
        font-size:1.6rem;
        line-height:1.5;
        font-weight:600;
    }
    .contents_box .content_area h4.type_lg {
        font-size:2rem;
        line-height:1.5;
    }
    /* content_area 내부 요소 간 간격 (구 sustainability/planet.css에서 이관) */
    .contents_box .content_area .text_desc + h4,
    .contents_box .content_area h4.type_lg + .text_label,
    .contents_box .content_area .text_desc + .diagram_box {
        margin-top:40px;
    }
    .contents_box .content_area h4 + .content_card_list,
    .contents_box .content_area .text_label + .content_card_list,
    .contents_box .content_area .content_card_list + .text_note,
    .contents_box .content_area .text_desc + .text_note {
        margin-top:16px;
    }
    .contents_box .content_area .text_note + h4 {
        margin-top:40px;
    }
    .contents_box .content_area .content_card_list + .data_box,
    .contents_box .content_area .diagram_box + .data_box,
    .contents_box .content_area .content_card_item + .content_card_list {
        margin-top:16px;
    }
    .contents_box .content_area .content_area_column {
        flex-direction:column;
        gap:24px;
    }
    .contents_box .quote_area {
        font-size:1.6rem;
        line-height:1.5;
        color:#333; 
    }
    .contents_box .quote_area strong {
        display:block;
        margin-top:24px;
        font-size:2rem;
        color:#000;
    } 
    .contents_box .btn_view_link {
        padding:8px 16px 9px;
        font-size:1.3rem;
        line-height:1.5;
        margin-left:auto;
    }
    .contents_box .btn_view_link::after {
        width:16px;
        height:16px;
    }

    /* 연관 콘텐츠 */
    .contents_related {
        padding:100px 0;
        background-color:#FAFAFA;
    }
    .contents_related h3 {
        font-size:2rem;
        line-height:1.4;
        font-weight:600;
        margin-bottom:20px;
    }
    .contents_related .swiper_related {
        margin:0 -20px;
        padding-left:20px;
    }
    .contents_related_list > li {
        width:82.35%;
    }
    .contents_related_list .img_area {
        height:auto;
        aspect-ratio:280/164;
        overflow:hidden;
        margin-bottom:12px;
    }
    .contents_related_list .title_area {
        font-size:1.6rem;
        font-weight:500;
        line-height:2.3rem;
        margin-bottom:16px;
        height:4.6rem;
    }
    .contents_related_list .date {
        font-size:1.3rem;
        font-weight:400;
        line-height:1.9rem;
        color:#333;
    }

    /* half 리스트 */
    .content_half_list {
        flex-direction:column;
        gap:40px;
    }
    .content_half_list > li {
        width:100%;
    }
    .content_half_list .text_set {
        margin-top:20px;
    }
    .content_half_list .text_num {
        font-size:1.4rem;
        line-height:1.5;
        font-weight:700;
        margin-bottom:6px;
    }
    .content_half_list .text_desc {
        color:#666;
        margin-top:16px;
    }
    /* content_card_list */
    .content_card_list {
        grid-template-columns:1fr;
        gap:16px;
    }
    .content_card_list.col_1,
    .content_card_list.col_3,
    .content_card_list.col_4,
    .content_card_list.col_5 {
        grid-template-columns:1fr;
    }
    .content_card_item {
        padding:24px;
    }
    .content_card_list.list_process {
        width:100%;
        grid-auto-flow: row;
        grid-template-columns: 1fr;
        grid-auto-columns: unset;
        gap:0;
    }
    .content_card_list.list_process .content_card_item + .content_card_item {
        margin-top:64px;
    }
    .content_card_list.list_process .content_card_item + .content_card_item::before {
        left:50%;
        top:-48px;
        transform:translateX(-50%);
        width:32px;
        height:32px;
        background:url("/img/common/icon/icon_process_arrow_mo-491df1d94e7d30abaf2cb40c295c959f.svg") no-repeat center / 100% auto;
    }
    .content_card_item .icon {
        width:36px;
        height:36px;
        padding:6px;
        margin-bottom:12px;
    }
    .content_card_item .title {
        font-size:1.6rem;
        line-height:1.5  ;
    }
    .content_card_item .title .btn_link {
        width:16px;
        height:16px;
    }
    .content_card_item .desc {
        font-size:1.4rem; 
        margin-top:12px;
    }
    .content_card_item .desc + .desc {
        margin-top:21px;
    }
    .content_card_item .desc_list {
        margin-top:12px;
    }
    .content_card_item .desc_list > li {
        padding-left:21px;
        font-size:1.4rem;
    }
    .content_card_item .desc_list > li::before {
        width:4px;
        height:4px;
        top:10px;
        left:9px;
    }
    .content_card_item .note {
        font-size:1.4rem;
        margin-top:12px;
    }

    /* 카드 : 텍스트 좌 / 이미지 우 → 세로 스택 */
    .content_card_item.type_media {
        display: block;
        padding: 24px;
    }
    .content_card_item.type_media .media_body {
        padding: 0;
    }
    .content_card_item.type_media .media_img {
        margin: 24px 0 0;
        aspect-ratio: auto;
    }
    .content_card_item.type_media .media_img img {
        height: auto;
    }
    /* 개인정보 처리방침 */
    .section_primary_policy {
        width:auto;
    }
    
    /* inquiry */
    .page_inquiry .contents_box {
        padding-top:60px;
    }
    .page_inquiry .box_content_inquiry:first-child {
        margin-top:0;
    }
    .page_inquiry .box_content_inquiry .box_info_policy {
        width:auto;
    }
    .page_inquiry .box_content_inquiry .box_info {
        width:auto;
        margin-top:0;
    }
    .page_inquiry .box_content_inquiry .box_info:not(.box_info_policy) {
        padding-top:0;
        border:0;
    }
    .page_inquiry .input_box {
        gap:16px;
    }
    .page_inquiry .input_box + .input_box {
        margin-top:40px;
    }
    .page_inquiry .input_box.input_box_radio .input_area {
        justify-content:flex-start;
        gap:16px;
    }
    .page_inquiry .input_box .input_item_radio {
        width:auto;
    }
    .page_inquiry .input_box.input_box_radio .input_area {
        gap: 16px;
    }
    .page_inquiry .input_box .input_item_check input+label, 
    .page_inquiry .input_box .input_item_radio input+label {
        font-size:1.4rem;
        line-height:1.5;
        font-weight:400;
        display:flex;
        align-items:center;
    }
    .page_inquiry .input_box .input_label {
        font-size:1.6rem;
        line-height:1.5;
        font-weight:700;
    }
    .page_inquiry .input_box .input_text {
        font-size:1.3rem;
        line-height:2rem;
        font-weight:400;
        border:1px solid #C3C8D1;
        padding:9px 12px;
    }
    .page_inquiry .input_box .input_txt_guide {
        font-size:1.1rem;
        padding-left:12px;
        box-sizing: border-box;
    }
    .page_inquiry .input_box .btn_upload_file + .input_txt_guide {
        padding-right:84px;
    }
    .page_inquiry .btn_box {
        margin-top:40px;
    }
    .page_inquiry .box_content_inquiry .box_info_policy .box_notice_gray {
        max-height:none;
    }
    .page_inquiry .box_notice_gray {
        padding:20px;
    }
    .page_inquiry .box_notice_gray .title {
        color:#000;
        font-size:1.8rem;
        line-height:1.4;
        font-weight:700;
    }
    .page_inquiry .box_notice_gray .title::before {
        width:24px;
        height:24px;
    }
    .page_inquiry .box_notice_gray .notice_list {
        font-size:1.4rem;
        margin-top:16px;
    }
    .page_inquiry .box_notice_gray .notice_list .item::before {
        width: 3px;
        height: 3px;
        margin-left: 8px;
    }
    .page_inquiry .box_notice_gray + .input_box {
        margin-top:16px;
    }
    .page_inquiry .box_notice_gray .policy_title {
        color:#000;
        font-size:1.4rem;
    }
    .page_inquiry .box_notice_gray .policy_list {
        font-size:1.4rem;
    }
    .page_inquiry .box_notice_gray .policy_item:not(:first-child) {
        margin-top:21px;
    }
    .page_inquiry .box_notice_gray .policy_list_type2 .policy_item:not(:first-child) {
        margin-top:21px;
    }
    .page_inquiry .box_notice_gray .policy_title+.policy_list,
    .page_inquiry .box_notice_gray .policy_list+.policy_title {
        margin-top:21px;
    }
    .page_inquiry .box_notice_gray .policy_sub_list {
        font-size:1.4rem;
    }
    .page_inquiry .box_notice_gray .policy_sub_list .item_sub {
        padding-left:16px;
    }
    .page_inquiry .box_notice_gray .policy_sub_list .item_sub::before {
        background:#000;
        width:3px;
        height:3px;
        left:6px;
        top:10px;
    }
    .page_inquiry .box_notice_gray .policy_sub_list.type_number .item_sub::before {
        background:none;
        width:auto;
        height:auto;
    }
    .page_inquiry .input_item_check input+label::before,
    .page_inquiry .input_item_radio input+label::before,
    .page_inquiry .input_item_check input:checked+label::before,
    .page_inquiry .input_item_radio input:checked+label::before {
        width:20px;
        height:20px;
        flex-shrink: 0;
    }
    .btn_submit.type_n {
        min-width:auto;
        width:100%;
        padding:9px 0 10px;
        font-size:1.4rem;
        line-height:1.5;
        font-weight:700;
    }
    .input_item_file.type_n .btn_upload_file {
        width:80px;
        padding:9px 0;
        font-size:1.3rem;
        margin-left:4px;
    }

}

/* 다국어 분리 처리 */
html[lang=en] .page_inquiry .input_area,
html[lang=ja] .page_inquiry .input_area {
    flex: 0;
    width: auto;
}
html[lang=en] .page_inquiry .input_label.type2:after {
    right:auto;
}