@charset "utf-8";
@import url(common.css);


#goog-gt-tt,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf,
.goog-te-banner-frame {
    display: none !important;
}
/* 서브 공통 */
.sub_top {
  height: 100vh;
}

.sub_top .sub_inner {
  display: flex;
  flex-direction: column;
  gap: 8rem;
  align-items: center;
  justify-content: center;
  height: 100%;
  position: relative;
}

.sub_top.bp .sub_inner {
  background: url(/image/bp_subvisual.png) center center / cover no-repeat;
}
.sub_top.dp .sub_inner {
  background: url(/image/dp_subvisual.png) center center / cover no-repeat;
}
.sub_top.ipps .sub_inner {
  background: url(/image/ipps_subvisual.png) center center / cover no-repeat;
}
.sub_top.rfid .sub_inner {
  background: url(/image/rfid_subvisual.png) center center / cover no-repeat;
}
.sub_top.dpp .sub_inner {
  background: url(/image/dpp_subvisual.png) center center / cover no-repeat;
}
.sub_top.basic .sub_inner {
  background: url(/image/basic_subvisual.png) center center / cover no-repeat;
}
.sub_top.product .sub_inner {
  background: url(/image/product_subvisual.png) center center / cover no-repeat;
}
.sub_top.quality .sub_inner {
  background: url(/image/quality_subvisual.png) center center / cover no-repeat;
}
.sub_top.partner .sub_inner {
  background: url(/image/partner_subvisual.jpg) center center / cover no-repeat;
}
.sub_top.location .sub_inner {
  background: url(/image/location_subvisual.jpg) center center / cover no-repeat;
}
.sub_top.sustain .sub_inner {
  background: url(/image/sustainability_subvisual.jpg) center center / cover no-repeat;
}
.sub_top.contact .sub_inner, .sub_top.contact_inquiries .sub_inner {
  background: url(/image/contact_subvisual.jpg) center center / cover no-repeat;
}
.sub_top.news .sub_inner {
  background: url(/image/news_subvisual.jpg) center center / cover no-repeat;
}
.sub_top.box .sub_inner {
  background: url(/image/box_subvisual.png) center center / cover no-repeat;
}
.sub_top.care_label .sub_inner {
  background: url(/image/care_subvisual.png) center center / cover no-repeat;
}
.sub_top.hangtag .sub_inner {
  background: url(/image/hangtag_subvisual.png) center center / cover no-repeat;
}
.sub_top.heat_seal .sub_inner {
  background: url(/image/heat_subvisual.png) center center / cover no-repeat;
}
.sub_top.paper_hanger .sub_inner {
  background: url(/image/hanger_subvisual.png) center center / cover no-repeat;
}
.sub_top.sticker_label .sub_inner {
  background: url(/image/sticker_subvisual.png) center center / cover no-repeat;
}
.sub_top.sublimation .sub_inner {
  background: url(/image/sublimation_subvisual.png) center center / cover no-repeat;
}
.sub_top.blank_paper .sub_inner {
  background: url(/image/blank_subvisual.png) center center / cover no-repeat;
}
.sub_top.ribbon .sub_inner {
  background: url(/image/ribbon_subvisual_v2.png) center center / cover no-repeat;
}



.sub_top .sub_inner::after {
  content: '';
  display: block;
  background-color: rgb(0, 0, 0, 0.7);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.sub_top .sub_inner h2 {
  font-size: 10rem;
  font-weight: 500;
  z-index: 1;
  color: #fff;
  text-align:center;
}

.sub_top .breadcrumb {
  display: flex;
  align-items: center;
  position: relative;
  z-index: 10;
  height: 5rem;
  border: 1px solid #fff;
  border-radius: 10rem;
  background-color: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(10px);
}

.sub_top .breadcrumb>li {
  display: flex;
  align-items: center;
  position: relative;
  height: 100%;
}

/* Home */
.sub_top .breadcrumb>li.home a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5rem;
  height: 100%;
  border-radius: 50%;
  background-color: #00194c;
  box-shadow: 4px 0 10px rgba(0, 0, 0, 0.2);
}

.sub_top .breadcrumb>li.home img {
  object-fit: contain;
}

/* 드롭다운 버튼 */
.sub_top .dropdown_btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5rem;
  height: 100%;
  line-height: 1;
  padding: 0 2rem;
  border: 0;
  white-space: nowrap;
  cursor: pointer;
}

.sub_top .dropdown_btn .filter {
  object-fit: contain;
  transition: transform 0.3s ease;
}

/* 드롭다운 메뉴 */
.sub_top .dropdown_menu {
  min-width: 100%;
  padding: 0;
  position: absolute;
  top: calc(100% + 0rem);
  left: 0;
  z-index: 20;
  border: 1px solid rgba(255, 255, 255);
  border-radius: .8rem;
  background-color: rgba(255, 255, 255);
  box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.18);
  backdrop-filter: blur(15px);
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-1rem);
  transition:
    opacity 0.25s ease,
    visibility 0.25s ease,
    transform 0.25s ease;
}

/* 마지막 메뉴는 오른쪽 정렬 */
.sub_top .breadcrumb>li.dropdown:last-child .dropdown_menu {
  right: 0;
  left: auto;
}

.sub_top .dropdown_menu li {
  width: 100%;
}

.sub_top .dropdown_menu a {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 4.5rem;
  padding: 1rem 1.5rem;
  color: #333;
  font-size: 1.4rem;
  line-height: 1.4;
  transition:
    color 0.2s ease,
    background-color 0.2s ease;
}

.sub_top .dropdown_menu a:hover,
.sub_top .dropdown_menu a.active {
  color: #fff;
  background-color: #00194c;
}

/* 열린 상태 */
.sub_top .dropdown.is-open .dropdown_menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.sub_top .dropdown.is-open .dropdown_btn .filter {
  transform: rotate(180deg);
}

.sub_cont {
  display: flex;
  flex-direction: column;
  gap: 30rem;
  margin: 25rem auto;
  max-width: 172rem;
  width: calc(100% - 4rem);
}

.sub_cont .s_tit_wrap {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.sub_cont .s_tit {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.sub_cont .s_tit_wrap h3,
.sub_cont .s_tit h3 {
  font-size: 7rem;
  font-weight: 600;
  line-height: 1.5;
}

.sub_cont .s_tit_wrap span,
.sub_cont .s_tit span {
  font-size: 2rem;
  color: #333;
}

.sub_cont .s_tit_wrap p,
.sub_cont .s_tit p {
  font-size: 2rem;
  line-height: 1.5;
  color: #555;
}

.sub_cont .s_tit_wrap p.right,
.sub_cont .s_tit p.right {
  text-align: right;
}
.sub_cont .s_tit_wrap p.center,
.sub_cont .s_tit p.center {
  text-align: center;
}


.cta_cont {
  padding-bottom:17rem;
  background: #00194C;
  background: linear-gradient(180deg, rgba(0, 25, 76, 0) 0%, rgba(0, 25, 76, 1) 100%);
}
.cta_cont .cta_inner {
  max-width: 184rem;
  width: calc(100% - 4rem);
  height: 60rem;
  margin: 0 auto;
  background: url(/image/cta_bg.png) center center / cover no-repeat;
  border-radius: 5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8rem;
  color: #fff;
  transform-origin: center top;
  will-change: transform;
  overflow: hidden;
}
.cta_cont .cta_tit {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3rem;
}

.cta_cont .cta_tit h4 {
  font-size: 7rem;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
}

.cta_cont .cta_tit p {
  font-size: 2rem;
  line-height: 1.5;
}

.cta_cont .cta_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5rem;
}

.cta_cont .cta_wrap a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  gap: 2rem;
  min-width: 28rem;
  border-radius: 10rem;
  padding: 1.2rem;
  border: 1px solid #fff;
  transition: 0.3s;
}

.cta_cont .cta_wrap a.contact_cta {
  background-color: #fff;
  color: #121212;
}

.cta_cont .cta_wrap a img {
  filter: invert(1) brightness(100%);
}

.cta_cont .cta_wrap a.contact_cta img {
  filter: none;
}

.sub_cont.sol .s1,
.sub_cont.dp .s1 {
  display: flex;
  flex-direction: column;
  gap: 15rem;
  align-items: center;
}

.sub_cont.sol .s1 .s_tit_wrap,
.sub_cont.dp .s1 .s_tit_wrap {
  align-items: center;
}

.sub_cont.sol .s1 .s_tit_wrap h3,
.sub_cont.dp .s1 .s_tit_wrap h3 {
  text-align: center;
}

.sub_cont.sol .s1 .s1_desc,
.sub_cont.dp .s1 .s1_desc {
  width: 100%;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}

.sub_cont.sol .s1 .s1_desc>li,
.sub_cont.dp .s1 .s1_desc>li {
  position: relative;
  width: 32.55%;
  height: 35rem;
  display: flex;
  align-items: flex-end;
  border-radius: 1.5rem;
}

.sub_cont.sol .s1 .s1_desc>li::after,
.sub_cont.dp .s1 .s1_desc>li::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 1.5rem;
  background: #00194C;
  background: linear-gradient(180deg, rgba(0, 25, 76, 0) 50%, rgba(0, 25, 76, 1) 100%);
  position: absolute;
  top: 0;
  left: 0;
}

/* bp */
.sub_cont.bp .s1 .s1_desc>li:first-of-type {
  background: url(/image/bp_apply01.png) center center / cover no-repeat;
}
.sub_cont.bp .s1 .s1_desc>li:nth-of-type(2) {
  background: url(/image/bp_apply02.png) center center / cover no-repeat;
}
.sub_cont.bp .s1 .s1_desc>li:last-of-type {
  background: url(/image/bp_apply03.png) center center / cover no-repeat;
}
/* dp */
.sub_cont.dp .s1 .s1_desc>li:first-of-type {
  background: url(/image/dp_img01.png) center center / cover no-repeat;
}
.sub_cont.dp .s1 .s1_desc>li:nth-of-type(2) {
  background: url(/image/dp_img02.png) center center / cover no-repeat;
}
.sub_cont.dp .s1 .s1_desc>li:last-of-type {
  background: url(/image/dp_img03.png) center center / cover no-repeat;
}
/* ipps */
.sub_cont.ipps .s1 .s1_desc>li:first-of-type {
  background: url(/image/ipps_img01.png) center center / cover no-repeat;
}
.sub_cont.ipps .s1 .s1_desc>li:nth-of-type(2) {
  background: url(/image/ipps_img02.png) center center / cover no-repeat;
}
.sub_cont.ipps .s1 .s1_desc>li:last-of-type {
  background: url(/image/ipps_img03.png) center center / cover no-repeat;
}
/* rfid */
.sub_cont.rfid .s1 .s1_desc>li:first-of-type {
  background: url(/image/rfid_img01.png) center center / cover no-repeat;
}
.sub_cont.rfid .s1 .s1_desc>li:nth-of-type(2) {
  background: url(/image/rfid_img02.png) center center / cover no-repeat;
}
.sub_cont.rfid .s1 .s1_desc>li:last-of-type {
  background: url(/image/rfid_img03.png) center center / cover no-repeat;
}
/* dpp */
.sub_cont.dpp .s1 .s1_desc>li:first-of-type {
  background: url(/image/dpp_img01.png) center center / cover no-repeat;
}
.sub_cont.dpp .s1 .s1_desc>li:nth-of-type(2) {
  background: url(/image/dpp_img02.png) center center / cover no-repeat;
}
.sub_cont.dpp .s1 .s1_desc>li:last-of-type {
  background: url(/image/dpp_img03.png) center center / cover no-repeat;
}

.sub_cont.sol .s1 .s1_desc>li span,
.sub_cont.dp .s1 .s1_desc>li span {
  font-size: 2.4rem;
  font-weight: 500;
  color: #fff;
  z-index: 1;
  margin: 2rem 3rem;
  display: block;
}







/* brand protection */


.sub_cont.sol .s2 {
  display: flex;
  flex-direction: column;
  gap: 15rem;
}

.sub_cont.sol .s2 .s_tit {
  flex-direction: column;
  align-items: center;
  gap: 3rem;
}

.sub_cont.sol .s2 .s_tit p {
  text-align: center;
}

.sub_cont.sol .s2 .s2_desc {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}

.sub_cont.sol .s2 .s2_desc>li {
  width: 23.83%;
  height: 28rem;
  background-color: #f5f5f5;
  border-radius: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 3rem;
}

.sub_cont.sol .s2 .s2_desc>li img {
  object-fit: contain;
  width: 7rem;
  height: 7rem;
}

.sub_cont.sol .s2 .s2_desc>li .txt_wrap {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.sub_cont.sol .s2 .s2_desc>li .txt_wrap strong {
  font-size: 2.8rem;
  font-weight: 500;
}

.sub_cont.sol .s2 .s2_desc>li .txt_wrap p {
  line-height: 1.5;
}

.sub_cont.sol .s3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10rem;
}

.sub_cont.sol .s3 .s_tit_wrap {
  width: 100%;
}

.sub_cont.sol .s3 .s3_desc {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5rem;
}

.sub_cont.sol .s3 .s3_desc .s3_tab {
  width: 100%;
  display: flex;
  gap: 3rem;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid #ddd;
}

.sub_cont.sol .s3 .s3_desc .s3_tab>li {
  padding: 1.6rem 5rem;
  font-size: 2rem;
  color: #999;
  line-height: 1;
  cursor: pointer;
}

.sub_cont.sol .s3 .s3_desc .s3_tab>li.active {
  font-weight: 500;
  color: #00194C;
  border-bottom: 2px solid #00194C;
}

.sub_cont.sol .s3 .s3_desc .s3_cont {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.sub_cont.sol .s3 .s3_desc .s3_cont .s3_item {
  width: 100%;
  justify-content: center;
  align-items: center;
  gap: 15rem;
  display: none;
}

.sub_cont.sol .s3 .s3_desc .s3_cont .s3_item.active {
  display: flex;
  animation: tabFade 0.5s ease;
}
@keyframes tabFade {
  from {
    opacity: 0;
    transform: translateY(2rem);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.sub_cont.sol .s3_item .img_wrap {
  width: 34.88%;
  height: 70rem;
  border-radius: 2rem;
  overflow: hidden;
  flex-shrink: 0;
}

.sub_cont.sol .s3_item .img_wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sub_cont.sol .s3_item .cont_wrap {
  width: 42.44%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6rem;
}

.sub_cont.sol .s3_item .cont_wrap .cont_tit {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.sub_cont.sol .s3_item .cont_wrap .cont_tit h5 {
  font-size: 4rem;
  font-weight: 600;
}

.sub_cont.sol .s3_item .cont_wrap .cont_tit p {
  font-size: 1.8rem;
  line-height: 1.5;
}

.sub_cont.sol .s3_item .cont_wrap .cont_mid {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.sub_cont.sol .s3_item .cont_wrap .cont_mid strong {
  font-size: 2rem;
  font-weight: 600;
}

.sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc {
  display: flex;
  gap: 2rem;
}

.sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc>li {
  border-radius: 1.5rem;
  background-color: rgb(0, 25, 76, 0.1);
  padding: 2rem 3rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc>li span {
  font-size: 1.8rem;
  font-weight: 500;
}

.sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc>li p {
  color: #555;
}

.sub_cont.sol .s3_item .cont_wrap .cont_bot {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.sub_cont.sol .s3_item .cont_wrap .cont_bot strong {
  font-size: 2rem;
  font-weight: 600;
}

.sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc {
  display: grid;
  grid-template-columns: 2fr 2fr;
  row-gap: 2rem;
}

.sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc>li {
  display: flex;
  gap: 2rem;
}

.sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc>li img {
  width: 3.6rem;
  height: 3.6rem;
  object-fit: contain;
}

.sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc>li .bot_txt {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc>li .bot_txt span {
  font-size: 2rem;
  font-weight: 500;
}

.sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc>li .bot_txt p {
  color: #555;
}

.sub_cont.bp .s4 {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}

.sub_cont.bp .s4 .applySwiper {
  width: 100%;
  overflow: visible;
}

.sub_cont.bp .s4 .applySwiper .swiper-slide {
  height: 35rem;
  border-radius: 2rem;
  overflow: hidden;
}

.sub_cont.bp .s4 .applySwiper .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sub_cont.bp .s4 .applySwiper .swiper-scrollbar {
  width: 100% !important;
  top: auto;
  left: 0;
  bottom: -3rem;
  height: .6rem;
  border-radius: 10rem;
  overflow: hidden;
}

.sub_cont.bp .s4 .applySwiper .swiper-scrollbar-drag {
  background-color: #00194C;
  border-radius: 10rem;
}




/* design retail packaging */
.sub_cont.dp .s2 {
  display: flex;
  flex-direction: column;
  gap: 15rem;
}
.sub_cont.dp .s2 .s2_desc {
  width: 100%;
  display: flex;
  gap: 1rem;
}
.sub_cont.dp .s2 .s2_desc > li {
  width: 19.53%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
.sub_cont.dp .s2 .s2_desc > li img {
  width: 100%;
  height: 40rem;
  object-fit: cover;
}
.sub_cont.dp .s2 .s2_desc > li span {
  font-size: 2rem;
}
.sub_cont.dp .s3 {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}
.sub_cont.dp .s3 .s_tit_wrap {
  align-items: center;
}
.sub_cont.dp .s3 .s_tit {
  flex-direction: column;
  align-items: center;
  gap: 3rem;
}
.sub_cont.dp .s3 .s3_desc {
  display: flex;
  gap: 5rem;
  align-items: center;
}
.sub_cont.dp .s3 .s3_desc .img_wrap {
 width: 70rem;
 height: 45rem;
}
.sub_cont.dp .s3 .s3_desc .img_wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sub_cont.dp .s3 .s3_desc .desc_right {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5rem;
}
.sub_cont.dp .s3 .s3_desc .desc_right .desc_txt {
  display: grid;
  grid-template-columns: 2fr 2fr;
  gap: 2rem;
}
.sub_cont.dp .s3 .s3_desc .desc_right .desc_txt > li {
  font-size: 2rem;
  padding: 3rem;
  border-radius: 1rem;
  background-color: rgb(0, 25, 76, 0.1);
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.sub_cont.dp .s3 .s3_desc .desc_right .desc_txt > li span {
  font-weight: 600;
}
.sub_cont.dp .s3 .s3_desc .desc_right a {
  font-size: 2rem;
  display: flex;
  gap: 2rem;
  align-items: center;
  line-height: 1;
  padding: 1.2rem 3rem;
  border-radius: 10rem;
  border: 1px solid #121212;
  transition: 0.3s;
}


/* ipps */
.sub_cont.ipps .s4 {
  display: flex;
  flex-direction: column;
  gap: 15rem;
}
.sub_cont.ipps .s4_desc {
  display: flex;
  gap: 2rem;
  justify-content: center;
  align-items: center;
}
.sub_cont.ipps .s4_desc .desc_left {
  width: 29.06%;
  height: 30rem;
  padding: 5rem;
  border-radius: 1.5rem;
  background-color: #00194C;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: flex-start;
}
.sub_cont.ipps .s4_desc .desc_left span {
  font-size: 1.4rem;
  padding: 1rem;
  line-height: 1;
  background-color: rgb(255, 255, 255, 0.15);
  border-radius: 10rem;
  color: #fff;
  display: block;
}
.sub_cont.ipps .s4_desc .desc_left strong {
  font-size: 3rem;
  font-weight: 600;
  color: #fff;
}
.sub_cont.ipps .s4_desc .desc_left ul {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.sub_cont.ipps .s4_desc .desc_left ul >li {
  color: #fff;
}
.sub_cont.ipps .s4_desc .arrow_mid {
  font-size: 2rem;
  text-align: center;
  position: relative;
  width: 15rem;
}
.sub_cont.ipps .s4_desc .arrow_mid::after {
  content: '';
  display: block;
  width: 100%;
  height: 2px;
  background-color: #121212;
  position: absolute;
  bottom: -1rem;
  left: 0;
}
.sub_cont.ipps .s4_desc .arrow_mid::before {
  content: '';
  position: absolute;
  right: 0;
  bottom: -1.4rem;
  width: 1rem;
  height: 1rem;
  border-top: 2px solid #121212;
  border-right: 2px solid #121212;
  transform: rotate(45deg);
}
.sub_cont.ipps .s4_desc .desc_right {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
}
.sub_cont.ipps .s4_desc .desc_right >li{
  border-radius: 1.5rem;
  padding: 3rem;
  background-color: rgb(0, 25, 76, 0.1);
  display: flex;
  flex-direction: column;
  gap: 2rem;
  min-width: 40rem;
}
.sub_cont.ipps .s4_desc .desc_right >li:last-of-type {
  grid-column: 1 / -1;
  width: 100%;
}
.sub_cont.ipps .s4_desc .desc_right >li span {
  font-size: 2rem;
}
.sub_cont.ipps .s4_desc .desc_right >li p {
  font-size: 2rem;
}


.sub_cont.rfid .s4 {
  display: flex;
  flex-direction: column;
  gap: 15rem;
}
.sub_cont.rfid .s4 .s4_desc{
  display: flex;
  flex-direction: column;
  gap: 15rem;
}
.sub_cont.rfid .s4 .s4_desc .rfid_process{
  display: flex;
  align-items: stretch;
}
.sub_cont.rfid .s4 .s4_desc .rfid_process > li{
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 3rem;
  border-radius: 1.5rem;
  border: 1px solid #ddd;
}
.sub_cont.rfid .s4 .s4_desc .rfid_process > li span{
  font-size: 2.4rem;
  font-weight: 500;
}
.sub_cont.rfid .s4 .s4_desc .rfid_process > li p{
  font-size: 2rem;
}
.sub_cont.rfid .s4 .s4_desc .desc_bot{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.sub_cont.rfid .s4 .s4_desc .desc_bot h5{
  font-size: 5rem;
  font-weight: 500;
}
.sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc{
  display: flex;
  align-items: center;
  gap: 2rem;
}
.sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc>li {
  padding: 3rem;
  border-radius: 2rem;
  background-color: rgb(0, 25, 76,0.1);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  min-width: 25rem;
}
.sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc>li span{
  font-size: 2.4rem;
  font-weight: 500;
}
.sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc>li p{
  font-size: 2rem;
}


.sub_cont.dpp .s4 {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}
.sub_cont.dpp .s4 .s4_desc {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8rem;
}
.sub_cont.dpp .s4 .s4_desc .img_wrap {
  width: 100rem;
  height: 60rem;
}
.sub_cont.dpp .s4 .s4_desc .img_wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sub_cont.dpp .s4 .s4_desc .step_wrap {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  min-width: 50rem;
}
.sub_cont.dpp .s4 .s4_desc .step_wrap >li {
  flex: 1;
  padding: 2rem;
  display: flex;
  align-items: center;
  gap: 3rem;
  border-radius: 1.5rem;
  border: 1px solid #ddd;
}
.sub_cont.dpp .s4 .s4_desc .step_wrap >li.active {
  background-color: #00194C;
  color: #fff;
  border: 1px solid #00194C;
}
.sub_cont.dpp .s4 .s4_desc .step_wrap >li span {
  font-size: 1.8rem;
}
.sub_cont.dpp .s4 .s4_desc .step_wrap >li .txt_wrap {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.sub_cont.dpp .s4 .s4_desc .step_wrap >li .txt_wrap strong {
  font-size: 2.4rem;
  font-weight: 500;
}
.sub_cont.dpp .s4 .s4_desc .step_wrap >li .txt_wrap p {
  font-size: 2rem;
  display: none;
}
.sub_cont.dpp .s4 .s4_desc .step_wrap >li.active .txt_wrap p {
  display: block;
}



/* basic */
.sub_cont.basic {
  display: grid;
  grid-template-columns: 32rem minmax(0, 1fr);
  align-items: start;
  gap: 0 12rem;
}

/* 사이드 메뉴 */
.sub_cont.basic .side_menu {
  width: 100%;
  position: sticky;
  top: 3rem;
  align-self: start;
}

/* 상단 Contents */
.sub_cont.basic .side_menu .menu_top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 1.2rem;
  border-bottom: 1px solid #121212;
}

.sub_cont.basic .side_menu .menu_top > span {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

/* 현재 챕터 / 전체 챕터 */
.sub_cont.basic .side_menu .side_menu_nav {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.sub_cont.basic .side_menu .side_menu_nav > li {
  color: #999;
  font-size: 1.2rem;
  line-height: 1;
}

.sub_cont.basic .side_menu .side_menu_nav > li.active {
  color: #121212;
}

/* 메뉴 목록 */
.sub_cont.basic .side_menu .menu_list {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
  padding-top: 1.5rem;
}

/* 실제 챕터 메뉴 */
.sub_cont.basic .side_menu .menu_list > li:not(.line) {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  color: #aaa;
  font-size: 1.6rem;
  line-height: 1.4;
  cursor: pointer;
  transition:
    color 0.25s ease,
    transform 0.25s ease;
}

.sub_cont.basic .side_menu .menu_list > li:not(.line) > span {
  width: 2rem;
  flex-shrink: 0;
  color: #aaa;
  font-size: 1.4rem;
  transition: color 0.25s ease;
}

/* 활성 메뉴 */
.sub_cont.basic .side_menu .menu_list > li.active {
  color: #121212;
  font-weight: 500;
}

.sub_cont.basic .side_menu .menu_list > li.active > span {
  color: #121212;
}

/* Fundamentals 등의 분류 제목 */
.sub_cont.basic .side_menu .menu_list > li.line {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-top: 0.8rem;
  color: #aaa;
  font-size: 1.1rem;
  line-height: 1;
}

.sub_cont.basic .side_menu .menu_list > li.line:first-child {
  margin-top: 0;
}

.sub_cont.basic .side_menu .menu_list > li.line::after {
  content: "";
  height: 1px;
  flex: 1;
  background-color: #ddd;
}

/* 하단 읽기 진행률 */
.sub_cont.basic .side_menu .menu_progress {
  width: 100%;
  height: 2px;
  margin-top: 2rem;
  position: relative;
  background-color: #ddd;
  overflow: hidden;
}

.sub_cont.basic .side_menu .menu_progress > span {
  display: block;
  width: 1%;
  height: 100%;
  background-color: #1f66ff;
  transition: width 0.15s linear;
}

.sub_cont.basic .side_menu .read_percent {
  margin-top: 0.8rem;
  color: #aaa;
  font-size: 1rem;
  line-height: 1;
}

/* 오른쪽 본문 */
.sub_cont.basic .cont_desc {
  display: flex;
  flex-direction: column;
  gap: 35rem;
  min-width: 0;
}
.sub_cont.basic .desc_tit {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.sub_cont.basic .desc_tit span {
  font-size: 2rem;
}
.sub_cont.basic .desc_tit h3 {
  font-size: 8rem;
  font-weight: 500;
}
.sub_cont.basic .desc_tit h3 b {
  font-weight: 900;
}
.sub_cont.basic .chapter {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
.sub_cont.basic .chapter p {
  font-size: 1.6rem;
  line-height: 1.5;
  color: #555;
}
.sub_cont.basic .chapter > span {
  display: block;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5;
}

/* intro badges */
.sub_cont.basic .desc_badge {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.sub_cont.basic .desc_badge > li {
  padding: 1rem 1.6rem;
  background-color: #f5f5f5;
  border-radius: 10rem;
  font-size: 1.4rem;
  line-height: 1;
}

/* 본문 텍스트 리스트 (ch1, ch2, ch4, ch12) */
.sub_cont.basic .txt_wrap {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.sub_cont.basic .txt_wrap > li,
.sub_cont.basic .txt_wrap > p {
  font-size: 1.6rem;
  line-height: 1.5;
  color: #333;
}
.sub_cont.basic .txt_wrap > strong {
  font-size: 3rem;
  font-weight: 500;
}

/* 강조 콜아웃 박스 (ch3, ch4, ch5, ch10) */
.sub_cont.basic .comment {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1rem 0 1rem 2rem;
  border-left: 3px solid #315dac;
}
.sub_cont.basic .comment > span {
  font-size: 1.8rem;
  color: #333;
}
.sub_cont.basic .comment > p {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5;
}

/* 표 (ch2, ch6, ch7) */
.sub_cont.basic .table_wrap {
  width: 100%;
  overflow-x: auto;
}
.sub_cont.basic .table_wrap > strong {
  display: block;
  font-size: 3rem;
  font-weight: 500;
  margin-bottom: 2rem;
}
.sub_cont.basic .table_wrap table {
  width: 100%;
  border-collapse: collapse;
}
.sub_cont.basic .table_wrap th,
.sub_cont.basic .table_wrap td {
  padding: 1.5rem 2rem;
  text-align: left;
  font-size: 1.6rem;
  line-height: 1.4;
  color: #333;
  border-bottom: 1px solid #ddd;
  white-space: nowrap;
}
.sub_cont.basic .table_wrap thead th {
  font-size: 1.8rem;
  font-weight: 500;
  color: #333;
  border-bottom: 1px solid #121212;
}
.sub_cont.basic .table_wrap td:first-child,
.sub_cont.basic .table_wrap th:first-child {
  color: #121212;
  font-weight: 500;
}

/* STEP 카드 (ch3: 3단계 프로세스) */
.sub_cont.basic .card_wrap {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.sub_cont.basic .ch3 .card_wrap > li {
  display: flex;
  align-items: center;
  gap: 3rem;
  padding: 3rem;
  background-color: #f5f5f5;
  border-radius: 1.5rem;
}
.sub_cont.basic .ch3 .card_wrap > li .step_tit {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  flex-shrink: 0;
  width: 25rem;
}
.sub_cont.basic .ch3 .card_wrap > li .step_tit span {
  font-size: 1.6rem;
  color: #333;
}
.sub_cont.basic .ch3 .card_wrap > li .step_tit strong {
  font-size: 2rem;
  font-weight: 500;
}
.sub_cont.basic .ch3 .card_wrap > li p {
  flex: 1;
  font-size: 1.6rem;
  color: #555;
  line-height: 1.5;
}

/* STEP 카드 (ch11: 3단 로드맵) */
.sub_cont.basic .ch11 .card_wrap {
  flex-direction: row;
  gap: 3rem;
}
.sub_cont.basic .ch11 .card_wrap > li {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 3rem;
  background-color: #f5f5f5;
  border-radius: 1.5rem;
}
.sub_cont.basic .ch11 .card_wrap > li span {
  font-size: 1.6rem;
  color: #333;
}
.sub_cont.basic .ch11 .card_wrap > li strong {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.3;
}
.sub_cont.basic .ch11 .card_wrap > li p {
  font-size: 1.6rem;
  color: #555;
  line-height: 1.5;
}

/* 챕터 설명 블록 (ch5: 안테나/리더 등 구성 요소) */
.sub_cont.basic .ch_desc {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
.sub_cont.basic .ch_desc > .txt_wrap {
  gap: 1rem;
}
.sub_cont.basic .ch_desc > .txt_wrap strong {
  font-size: 3rem;
  font-weight: 500;
  color: #121212;
}
.sub_cont.basic .ch_desc > .txt_wrap p {
  font-size: 2rem;
  color: #333;
}

/* 2열 설명 리스트 (ch5, ch7) */
.sub_cont.basic .desc_wrap {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.sub_cont.basic .desc_wrap > li {
  display: flex;
  align-items: center;
  gap: 5rem;
}
.sub_cont.basic .desc_wrap > li .tit {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  flex-shrink: 0;
  width: 25rem;
}
.sub_cont.basic .desc_wrap > li .tit strong {
  font-size: 2.4rem;
  font-weight: 500;
}
.sub_cont.basic .desc_wrap > li .tit span {
  font-size: 1.6rem;
  color: #555;
}
.sub_cont.basic .desc_wrap > li p {
  flex: 1;
  font-size: 1.6rem;
  color: #555;
  line-height: 1.5;
}

/* ch8: 통계 수치 */
.sub_cont.basic .ver_desc {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.sub_cont.basic .ver_desc > li {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
}
.sub_cont.basic .ver_desc > li strong {
  font-size: 8rem;
  font-weight: 500;
  line-height: 1.1;
}
.sub_cont.basic .ver_desc > li strong span {
  font-size: 8rem;
  font-weight: 500;
}
.sub_cont.basic .ver_desc > li p {
  font-size: 2rem;
  line-height: 1.4;
  color: #121212;
}

/* ch8: 10가지 혜택 번호 리스트 */
.sub_cont.basic .num_desc {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 9rem;
  row-gap: 4rem;
}
.sub_cont.basic .num_desc > li {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.sub_cont.basic .num_desc > li > span {
  font-size: 1.6rem;
  color: #999;
}
.sub_cont.basic .num_desc > li strong {
  font-size: 2rem;
  font-weight: 500;
}
.sub_cont.basic .num_desc > li p {
  font-size: 1.6rem;
  color: #555;
  line-height: 1.5;
}

/* ch8: 플라이휠 다이어그램 */
.sub_cont.basic .list_desc {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.sub_cont.basic .list_desc > strong {
  font-size: 3.6rem;
  font-weight: 500;
}
.sub_cont.basic .list_desc ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.sub_cont.basic .list_desc ul > li {
  font-size: 1.6rem;
  color: #555;
}
.sub_cont.basic .list_desc ul > li.color {
  color: #00194c;
  font-weight: 600;
}
.sub_cont.basic .list_desc ul > li:not(:last-child)::after {
  content: '→';
  margin-left: 1.5rem;
  color: #ccc;
}

/* ch9: 산업별 활용 사례 카드 */
.sub_cont.basic .st {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  padding: 5rem 0;
  border-top: 1px solid #ddd;
}
.sub_cont.basic .st:first-of-type {
  padding-top: 0;
  border-top: 0;
}
.sub_cont.basic .st_top {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.sub_cont.basic .st_top > span {
  display: flex;
  align-items: center;
  gap: 2rem;
  font-size: 1.6rem;
  color: #999;
}
.sub_cont.basic .st_top > span strong {
  font-size: 3.6rem;
  font-weight: 500;
  color: #121212;
}
.sub_cont.basic .top_desc {
  display: flex;
  gap: 8rem;
}
.sub_cont.basic .top_desc > li {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.sub_cont.basic .top_desc > li span {
  font-size: 1.6rem;
  font-weight: 500;
  color: #121212;
}
.sub_cont.basic .top_desc > li p {
  font-size: 1.6rem;
  color: #555;
  line-height: 1.5;
}
.sub_cont.basic .st_bot {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.sub_cont.basic .st_bot > span {
  font-size: 1.6rem;
  color: #999;
}
.sub_cont.basic .bot_desc {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.sub_cont.basic .bot_desc > li {
  display: flex;
  gap: 6rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #eee;
}
.sub_cont.basic .bot_desc > li:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}
.sub_cont.basic .bot_desc > li span {
  flex-shrink: 0;
  width: 25rem;
  font-size: 2rem;
  font-weight: 500;
  color: #121212;
}
.sub_cont.basic .bot_desc > li p {
  flex: 1;
  font-size: 1.6rem;
  color: #555;
  line-height: 1.5;
}

/* ch10: ROI 공식 */
.sub_cont.basic .desc_boc {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  text-align: center;
  padding: 6rem;
  background-color: #f5f5f5;
  border-radius: 2rem;
}
.sub_cont.basic .desc_boc strong {
  font-size: 5rem;
  font-weight: 500;
}
.sub_cont.basic .desc_boc p {
  font-size: 2rem;
  color: #555;
}

/* ch10: 비용/수익 2단 비교 */
.sub_cont.basic .ch10 > ul {
  display: flex;
  gap: 9rem;
}
.sub_cont.basic .ch10 > ul > li {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.sub_cont.basic .ch10 > ul > li > span {
  font-size: 1.6rem;
  font-weight: 500;
  color: #121212;
}
.sub_cont.basic .ch10 > ul > li ul {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.sub_cont.basic .ch10 > ul > li ul li {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.sub_cont.basic .ch10 > ul > li ul li strong {
  font-size: 2rem;
  font-weight: 500;
}
.sub_cont.basic .ch10 > ul > li ul li p {
  font-size: 1.6rem;
  color: #555;
  line-height: 1.5;
}



/* products */
.sub_cont.product {
  display: flex;
  flex-direction: column;
  gap: 20rem;
}
.sub_cont.product .s1 {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}
.sub_cont.product .s1 .s_tit_wrap {
  width: 100%;
  align-items: flex-start;
}
.sub_cont.product .s1 .s_tit_wrap h3 {
  text-align: left;
}
.sub_cont.product .s1 .s_tit {
  width: 100%;
}
.sub_cont.product .s1 .s1_desc {
  display: flex;
  flex-direction: column;
  padding: 0 11rem;
}
.sub_cont.product .s1 .s1_desc .desc_wrap {
  display: flex;
  flex-direction: column;
  gap: 12rem;
  padding: 6rem 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
.sub_cont.product .s1 .s1_desc .desc_wrap >li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 10rem;
  position: relative;
}
.sub_cont.product .s1 .s1_desc .desc_wrap >li.line::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #ddd;
  position: absolute;
  bottom: -6rem;
  left: 0;
}
.sub_cont.product .s1 .s1_desc .desc_wrap >li p {
  font-size: 1.8rem;
  line-height: 1.5;
  max-width: 60rem;
}
.sub_cont.product .s1 .s1_desc .desc_wrap >li .desc_tit {
  display: flex;
  align-items: center;
  gap: 5rem;
}
.sub_cont.product .s1 .s1_desc .desc_wrap >li .desc_tit span {
  font-size: 3rem;
  font-weight: 500;
}
.sub_cont.product .s1 .s1_desc .desc_wrap >li .desc_tit h5 {
  font-size: 3.6rem;
  font-weight: 500;
}
.sub_cont.product .s2 {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.sub_cont.product .s2 .rolling_wrap {
  width: 100%;
  overflow: hidden;
}

.sub_cont.product .s2 .rolling_track {
  display: flex;
  align-items: center;
  width: max-content;
  animation: productRolling 50s linear infinite;
}

.sub_cont.product .s2 .rolling_list {
  display: flex;
  align-items: center;
  gap: 5rem;
  flex-shrink: 0;
  padding-right: 5rem;
}

.sub_cont.product .s2 .rolling_list li {
  width: 45rem;
  height: 30rem;
  flex-shrink: 0;
}

.sub_cont.product .s2 .rolling_list img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@keyframes productRolling {
  from {transform: translateX(0);}
  to {transform: translateX(-50%);}
}
.sub_cont.product .s3 .s3_desc,
.sub_cont.quality .s4 .s4_desc {
  display: flex;
  flex-direction: column;
  gap: 20rem;
  align-items: center;
}
.sub_cont.product .s3 .s3_desc >li,
.sub_cont.quality .s4 .s4_desc >li {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15rem;
}
.sub_cont.product .s3 .s3_desc >li .img_wrap,
.sub_cont.quality .s4 .s4_desc >li .img_wrap {
  width: 34.88%;
  height: 60rem;
  flex-shrink: 0;
}
.sub_cont.product .s3 .s3_desc >li .img_wrap img,
.sub_cont.quality .s4 .s4_desc >li .img_wrap img  {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sub_cont.product .s3 .s3_desc >li .desc_txt,
.sub_cont.quality .s4 .s4_desc >li .desc_txt {
  width: 34.88%;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.sub_cont.product .s3 .s3_desc >li .desc_txt strong,
.sub_cont.quality .s4 .s4_desc >li .desc_txt strong {
  font-size: 10rem;
  font-weight: 900;
  color: rgb(0, 0, 0, 0.2);
}
.sub_cont.product .s3 .s3_desc >li .desc_txt span,
.sub_cont.quality .s4 .s4_desc >li .desc_txt span {
  font-size: 5rem;
  font-weight: 500;
}
.sub_cont.product .s3 .s3_desc >li .desc_txt p,
.sub_cont.quality .s4 .s4_desc >li .desc_txt p {
  font-size: 2rem;
  line-height: 1.5;
}



/* quality */
.sub_cont.quality .s1,
.sub_cont.quality .s2 {
  width: 125rem;
  position: relative;
  margin: 0 auto;
  margin-bottom: 19rem;
}
.sub_cont.quality .s1 .s1_desc,
.sub_cont.quality .s2 .s2_desc {
  width: 80rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3rem;
  padding: 5rem;
  background-color: rgb(255, 255, 255, 0.6);
  box-shadow: -4px 4px 10px rgb(0, 0, 0, 0.15);
  backdrop-filter: blur(4px);
}
.sub_cont.quality .s1 .s1_desc a,
.sub_cont.quality .s2 .s2_desc a {
  display: flex;
  align-items: center;
  line-height: 1;
  padding: 1rem 3rem;
  border-radius: 10rem;
  border: 1px solid #121212;
  gap: 2rem;
  transition:0.3s;
}
.sub_cont.quality .s1 .s1_desc .s_tit_wrap,
.sub_cont.quality .s2 .s2_desc .s_tit_wrap {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: flex-start;
}
.sub_cont.quality .s1 .s1_desc .s_tit_wrap span,
.sub_cont.quality .s2 .s2_desc .s_tit_wrap span {
  font-size: 2rem;
}
.sub_cont.quality .s1 .s1_desc .s_tit_wrap h3,
.sub_cont.quality .s2 .s2_desc .s_tit_wrap h3 {
  font-size: 8rem;
  font-weight: 500;
  text-align: left;
  line-height: 1.2;
}
.sub_cont.quality .s1 .img_wrap,
.sub_cont.quality .s2 .img_wrap {
  width: 80rem;
  height: 50rem;
}
.sub_cont.quality .s1 .img_wrap img,
.sub_cont.quality .s2 .img_wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}
.sub_cont.quality .s1 .s1_desc {
  position: absolute;
  top: 20rem;
  left: 0;
}
.sub_cont.quality .s2 .s2_desc {
  position: absolute;
  top: 20rem;
  right: 0;
}
.sub_cont.quality .s1 .img_wrap {
  margin-left: auto;
}
.sub_cont.quality .s3 {
  display: flex;
  flex-direction: column;
  gap: 15rem;
}
.sub_cont.quality .s3 .s3_desc {
  width: 150rem;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 5rem;

}
.sub_cont.quality .s3 .s3_desc > div {
  display: flex;
  align-items: center;
  padding: 5rem 6rem;
  border-radius: 1.5rem;
  background-color: #f5f5f5;
  gap: 10rem;
}
.sub_cont.quality .s3 .s3_desc > div strong {
  font-size: 3.6rem;
  font-weight: 500;
  min-width: 10rem;
}
.sub_cont.quality .s3 .s3_desc > div p {
  font-size: 2rem;
}
.sub_cont.quality .s3 .s3_desc > div a {
  font-size: 2rem;
  display: flex;
  align-items: center;
  gap: 2rem;
  border-radius: 10rem;
  border: 1px solid #121212;
  padding: 1rem 3rem;
  margin-left: auto;
  transition:0.3s;
}


/* partner */
.sub_cont.partner .s1 {
  display: flex;
  flex-direction: column;
  gap: 15rem;
}
.sub_cont.partner .s1 .s1_desc {
  display: flex;
  align-items: stretch;
  gap: 5rem;
}
.sub_cont.partner .s1 .s1_desc >li {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3rem;
  padding: 5rem;
  border-radius: 1.5rem;
  border: 1px solid #ddd;
  width: 100%;
}
.sub_cont.partner .s1 .s1_desc >li strong {
  font-size: 10rem;
  font-weight: 500;
}
.sub_cont.partner .s1 .s1_desc >li span {
  font-size: 2.4rem;
  display: block;
  text-align: right;
}
.sub_cont.partner .s2 {
  display: flex;
  flex-direction: column;
  gap: 22rem;
}
.sub_cont.partner .s2 .s_tit {
  flex-direction: column;
  align-items: center;
  gap: 5rem;
}
.sub_cont.partner .s2 .s_tit h3 { text-align:center;}
.sub_cont.partner .s2 .s2_desc {
  display: flex;
  flex-direction: column;
  gap: 10rem;
  width: 100%;
  min-width: 0;
}
.sub_cont.partner .s2 .s2_desc .logo_line {
  --logo-gap: 20rem;
  --logo-half-gap: 10rem;

  display: flex;
  align-items: center;
  gap: var(--logo-gap);

  width: max-content;
  height: 5rem;

  animation: logoMarquee 150s linear infinite;
  will-change: transform;
}
.sub_cont.partner .s2 .s2_desc .logo_line:nth-child(2) {
  animation-direction: reverse;
}
.sub_cont.partner .s2 .s2_desc .logo_line > li {
  flex: 0 0 auto;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sub_cont.partner .s2 .s2_desc .logo_line > li img {
  display: block;
  width: auto;
  max-width: none;
  height: 100%;
  object-fit: contain;
}

@keyframes logoMarquee {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(
      calc(-50% - var(--logo-half-gap)),
      0,
      0
    );
  }
}
.sub_cont.partner .s3 {
  display: flex;
  flex-direction: column;
  gap: 15rem;
}
.sub_cont.partner .s3 .s3_desc {
  width: 150rem;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  margin: 0 auto;
}
.sub_cont.partner .s3 .s3_desc > li{
  display: flex;
  align-items: center;
  gap: 15rem;
  padding: 6rem 10rem;
  border-radius: 1.5rem;
  background-color: #f5f5f5;
}
.sub_cont.partner .s3 .s3_desc > li strong {
  font-size: 10rem;
  font-weight: 900;
  color: rgb(0, 0, 0, 0.1);
  line-height: 1.2;
}
.sub_cont.partner .s3 .s3_desc > li .txt_wrap {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.sub_cont.partner .s3 .s3_desc > li .txt_wrap span {
  font-size: 3rem;
  font-weight: 500;
}
.sub_cont.partner .s3 .s3_desc > li .txt_wrap p {
  font-size: 2rem;
  line-height: 1.5;
}



/* location */
.sub_cont.location {
  display: flex;
  flex-direction: column;
}
.sub_cont.location .tab_menu {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2rem;
  margin: 8rem 0 10rem;
  padding: 1.5rem 0;
  background-color: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  transition: none;
}

.sub_cont.location .tab_menu > li {
  flex-shrink: 0;
}

.sub_cont.location .tab_menu > li > button {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 13rem;
  padding: 1.2rem 3.5rem;
  border: 1px solid #999;
  border-radius: 10rem;
  background-color: #fff;
  color: #999;
  font-family: inherit;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1;
  cursor: pointer;
  transition:
    color 0.3s ease,
    border-color 0.3s ease,
    background-color 0.3s ease,
    transform 0.3s ease;
}

.sub_cont.location .tab_menu > li.active > button {
  border-color: #00194c;
  background-color: #00194c;
  color: #fff;
  font-weight: 500;
}

/* 키보드 접근 */
.sub_cont.location .tab_menu > li > button:focus-visible {
  outline: 2px solid #00194c;
  outline-offset: 0.4rem;
}
.sub_cont.location .cont_list {
  display: flex;
  flex-direction: column;
}
.sub_cont.location .cont_list .list_item {
  display: flex;
  justify-content: space-between;
}
.sub_cont.location .cont_list .list_item h5 {
  font-size: 5rem;
  font-weight: 400;
}
.sub_cont.location .cont_list .list_item .item_desc {
  width: 110rem;
  display: flex;
  flex-direction: column;
  border-top: 1px solid #999;
}
.sub_cont.location .cont_list .list_item .item_desc >li {
  display: flex;
  padding: 10rem 3rem 6rem;
  border-bottom: 1px solid #999;
  gap: 10rem;
  justify-content: space-between;
}
.sub_cont.location .cont_list .list_item .item_desc >li .left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
}
.sub_cont.location .cont_list .list_item .item_desc >li .left .txt_wrap {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.sub_cont.location .cont_list .list_item .item_desc >li .left .txt_wrap strong {
  font-size: 2.6rem;
  font-weight: 500;
}
.sub_cont.location .cont_list .list_item .item_desc >li .left .txt_wrap p {
  display: flex;
  gap: 2rem;
  align-items: center;
  font-size: 2rem;
  line-height: 1.5;
}
.sub_cont.location .cont_list .list_item .item_desc >li .left a {
  display: flex;
  align-items: center;
  line-height: 1;
  font-size: 2rem;
  gap: 2rem;
  padding: 1rem 3rem;
  border-radius: 10rem;
  border: 1px solid #121212;
}
.sub_cont.location .cont_list .list_item .item_desc >li .office_map {
  width: 50rem;
  height: 30rem;
  flex-shrink: 0;
}

.sub_cont.location_detail {
  max-width:152rem;
  display: flex;
  flex-direction: column;
  gap: 15rem;
}
.sub_cont.location_detail .detail_desc {
  display: flex;
  flex-direction: column;
  gap: 15rem;
}
.sub_cont.location_detail .s_tit {
  justify-content: center;
}
.sub_cont.location_detail .detail_desc .desc_wrap {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}
.sub_cont.location_detail .detail_desc .office_video {
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.sub_cont.location_detail .detail_desc .office_video iframe {
  display: block;
  width:100%;
  height: auto;
  border: 0;
}
.sub_cont.location_detail .detail_desc .desc_wrap .desc_item {
  display: flex;
  justify-content: space-between;
}
.sub_cont.location_detail .detail_desc .desc_wrap .desc_item strong {
  font-size: 3rem;
  font-weight: 500;
}
.sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc {
  width: 95rem;
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
.sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc p {
  font-size: 2rem;
  line-height: 1.5;
}
.sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc .img_wrap {
  height: 30rem;
}
.sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc .img_wrap img {
  width: 50rem;
  height: 100%;
  object-fit: cover;
  margin-left: auto;
}
.sub_cont.location_detail .detail_desc .desc_wrap .desc_item ul {
  width: 95rem;
  display: flex;
  flex-direction: column;
  border-top: 1px solid #999;
  border-bottom: 1px solid #999;
}
.sub_cont.location_detail .detail_desc .desc_wrap .desc_item ul > li {
  display: flex;
  gap: 2rem;
  padding: 2rem 3rem;
  font-size: 1.8rem;
  position: relative;
}
.sub_cont.location_detail .detail_desc .desc_wrap .desc_item ul > li:first-child::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #ddd;
  position: absolute;
  bottom: 0;
  left: 0;
}
.sub_cont.location_detail .detail_desc .desc_wrap .desc_item ul > li span {
  display: block;
  width: 5rem;
  font-weight: 500;
}
.sub_cont.location_detail .detail_desc .glo_map {
  height: 60rem;
  width: 100%;
  border: 1px solid #ddd;
}
.sub_cont.location_detail .detail_desc .glo_map {
  width: 100%;
  height: 60rem;
  border: 1px solid #ddd;
  overflow: hidden;
}

.sub_cont.location_detail .detail_desc .glo_map iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}
.sub_cont.location_detail .location_gallery {
  display:flex;
  flex-direction:column;
  gap:3rem;
}
.sub_cont.location_detail .gallery_title h4 {
  font-size:3rem;
  font-weight:500;
  margin-bottom:;
}
.sub_cont.location_detail .supplier_gallery .gallery_list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  row-gap:2rem;
}
.sub_cont.location_detail .staff_gallery .gallery_list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap:2rem;
}
.sub_cont.location_detail .staff_gallery .gallery_list img {
  width:100%;
  object-fit:cover;
}
.sub_cont.location_detail .location_back {
  display:flex;
  justify-content:center;
}
.sub_cont.location_detail .location_back a {
  font-size:2rem;
  padding:1rem 3rem;
  border: 1px solid #555;
  color:#555;
  transition:0.3s;
}




/* sustainability */
.sub_cont.sustain {
  max-width: 100%;
  width: 100%;
}
.sub_cont.sustain .s1 {
  max-width: 142rem;
  width: calc(100% - 4rem);
  margin: 0 auto;
}
.sub_cont.sustain .s1 .s_tit {
  gap: 25rem;
  align-items: flex-start;
}
.sub_cont.sustain .s1 .s_tit p {
  font-size: 2rem;
  line-height: 1.5;
}
.sub_cont.sustain .s2 {
  width: 100%;
  height: 40rem;
  background: url(/image/sustain_bg.jpg) center center / cover no-repeat;
  background-attachment: fixed;
}
.sub_cont.sustain .s3 {
  max-width: 172rem;
  width: calc(100% - 4rem);
  margin: 0 auto;
}
.sub_cont.sustain .s3 .tab_menu {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  margin: 10rem auto 8rem;
}
.sub_cont.sustain .s3 .tab_menu > li{
  font-size: 2rem;
  padding: 1rem 3rem;
  line-height: 1;
  color: #999;
  border-radius: 10rem;
  border: 1px solid #999;
  cursor: pointer;
}
.sub_cont.sustain .s3 .tab_menu > li.active {
  background-color: #00194C;
  border: 1px solid #00194C;
  color: #fff;
  font-weight: 500;
}
.sub_cont.sustain .s3 .s3_desc {
  width: 140rem;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}
.sub_cont.sustain .s3 .s3_desc .s3_item {
  align-items: center;
  gap: 10rem;
  display: none;
}
.sub_cont.sustain .s3 .s3_desc .s3_item.active {
  display: flex;
}
.sub_cont.sustain .s3 .s3_desc .s3_item .img_wrap {
  width: 60rem;
  height: 60rem;
  flex-shrink: 0;
}
.sub_cont.sustain .s3 .s3_desc .s3_item .img_wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5rem;
}
.sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap strong {
  font-size: 5rem;
  font-weight: 500;
}
.sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap p {
  font-size: 2rem;
  line-height: 1.5;
}
.sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap a {
  display: flex;
  align-items: center;
  gap: 2rem;
  line-height: 1;
  font-size: 2rem;
  padding: 1rem 3rem;
  border-radius: 10rem;
  border: 1px solid #121212;
  transition:0.3s;
}




/* contact */
.sub_cont.contact {
  gap: 15rem;
  align-items: center;
  max-width: 172rem;
  width:calc(100% - 4rem);
  padding: 5rem;
  border-radius: 5rem;
  background-color: #fff;
  margin: 15rem auto;
}
.sub_cont.contact .contact_desc {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.sub_cont.contact .contact_desc .s_tit_wrap {
  width: 100%;
}
.sub_cont.contact .contact_desc .s_tit {
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: 8rem;
}
.sub_cont.contact .contact_desc .form_wrap {
  width: 70rem;
  flex-shrink: 0;
}
.sub_cont.contact .contact_desc .form_wrap form {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3rem;
}
.sub_cont.contact .contact_desc .form_wrap form .form_item {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.sub_cont.contact .contact_desc .form_wrap form .form_item label {
  font-size: 2rem;
}
.sub_cont.contact .contact_desc .form_wrap form span.required {
  color:#FF6B35;
}
.sub_cont.contact .contact_desc .form_wrap form .form_item input {
  height: 5rem;
  border-radius: .5px;
  background-color: #f5f5f5;
  padding: 1rem 2rem;
}
.sub_cont.contact .contact_desc .form_wrap form .form_item textarea {
  width: 100%;
  height: 20rem;
  border-radius: .5px;
  background-color: #f5f5f5;
  resize: none;
  padding: 2rem;
}
.sub_cont.contact .contact_desc .form_wrap form .select_box {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 100%;
}
.sub_cont.contact .contact_desc .form_wrap form .select_box select {
  height: 5rem;
  background-color: #f5f5f5;
  border-radius: .5rem;
  padding: 1rem 2rem;
}
.sub_cont.contact .contact_desc .form_wrap form .form_item.checkbox {
  flex-direction: row;
  align-items: center;
}
.sub_cont.contact .contact_desc .form_wrap form .form_item.checkbox > label {
  display:flex;
  align-items: center;
}
.sub_cont.contact .contact_desc .form_wrap form .form_item.checkbox input {
  margin-right:1rem;
}
.sub_cont.contact button {
  display: flex;
  align-items: center;
  line-height: 1;
  gap: 2rem;
  padding: 1rem 3rem;
  border: 1px solid #121212;
  transition:0.3s;
}

.sub_cont.contact .form_item.select .country_sel li {
  font-size: 2rem;
}

/* 국가 선택 */
.sub_cont.contact .country_sel {
  position: relative;
  width: 100%;
  height: 5rem;
  cursor: pointer;
}

.sub_cont.contact .country_sel .select_ex {
  width: 100%;
  height: 5rem;
  padding: 0 2rem;

  display: flex;
  align-items: center;
  justify-content: space-between;

  background-color: var(--color-gray);
  border: 1px solid transparent;
  border-radius: .5rem;

  color: #999;
}

.sub_cont.contact .country_sel.selected .select_ex {
  color: var(--color-text);
}

.sub_cont.contact .country_sel .select_ex img {
  transition: transform .3s;
}


/* 드롭다운 */
.sub_cont.contact .option_list {
  display: none;

  position: absolute;
  top: 100%;
  left: 0;

  width: 100%;

  background-color: var(--color-gray);
  border: 1px solid var(--color-primary);
  border-radius: .5rem;

  z-index: 100;
}

.sub_cont.contact .option_list li {
  padding: 1.6rem 2rem;
  font-size: 2rem;
}

.sub_cont.contact .country_sel.open .select_ex {
  border-color: var(--color-primary);
}

.sub_cont.contact .country_sel.open .select_ex img {
  transform: rotate(180deg);
}

br.mob {display:none;}



@media (hover:hover) and (pointer:fine) and (min-width:1025px) {
  .sub_cont.contact .submit_btn:hover {
    background-color: var(--color-primary);
    color: var(--color-white);
    transition: 0.3s;
  }

  .sub_cont.contact .submit_btn:hover img {
    filter: invert(1) brightness(100%);
  }

  .sub_cont.contact .option_list li:hover {
    background: #e9e9e9;
  }
  .sub_cont.contact .country_sel .select_ex:hover {
	  border-color: var(--color-primary);
	}

}


/* package */
.sub_cont.pack .s1 {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
.sub_cont.pack .s1 .img_wrap,
.sub_cont.pack .s1_desc {
  grid-column: 1;
  grid-row: 1;
}
.sub_cont.pack .s1 .img_wrap {
  width: 80rem;
  height: 50rem;
  justify-self: end;
  margin-right: 15rem;
  z-index: -1;
}
.sub_cont.pack .s1 .img_wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sub_cont.pack .s1_desc {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  padding: 5rem;
  box-shadow: 4px 4px 10px rgb(0, 0, 0, 0.15);
  width:100rem;
  margin-top: 20rem;
  margin-left: 15rem;
  background-color: rgb(255, 255, 255, 0.6);
  backdrop-filter: blur(4px);
}
.sub_cont.pack .s1_desc span {
  font-size: 2rem;
  color: #333;
}
.sub_cont.pack .s1_desc h3 {
  font-size: 8rem;
  font-weight: 500;
}
.sub_cont.pack .s1_desc p {
  font-size: 2.4rem;
  line-height:1.7;
  color: #555;
}
.sub_cont.pack .s2 {
  display: flex;
  flex-direction: column;
  gap: 18rem;
}
.sub_cont.pack .s2 .s_tit_wrap {
  align-items: center;
}
.sub_cont.pack .s2_desc {
  width: 100%;
  display: flex;
  justify-content: space-between;
  gap: 2rem;
}
.sub_cont.pack .s2_desc > li {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  padding: 3rem;
  flex: 1;
  border-radius: 1.5rem;
  border: 1px solid #ddd;
}
.sub_cont.pack .s2_desc > li .desc_top {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.sub_cont.pack .s2_desc > li .desc_top img {
  width: 7rem;
  height: 7rem;
  object-fit: contain;
}
.sub_cont.pack .s2_desc > li .desc_top strong {
  font-size: 3rem;
  font-weight: 500;
}
.sub_cont.pack .s2_desc > li p {
  font-size: 1.8rem;
  line-height: 1.5;
  text-align: center;
}
.sub_cont.pack .s3 {
  display: flex;
  flex-direction: column;
  gap: 15rem;
}
.sub_cont.pack .s3_desc {
  width: 150rem;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.sub_cont.pack .s3_desc > li {
  display: grid;
  grid-template-columns: 45rem minmax(0, 1fr);
  align-items: center;
  column-gap: 8rem;

  padding: 5rem;
  background-color: #f7f7f7;
  border-radius: 1.5rem;
  width: 100%;
}

.sub_cont.pack .s3_desc > li .txt_wrap {
  display: grid;
  grid-template-columns: 20rem minmax(0, 1fr);
  align-items: center;
  width: 100%;
}
.sub_cont.pack .s3_desc > li strong {
  font-size: 10rem;
  font-weight: 900;
  line-height: 1;
  color: rgb(0, 25, 76, 0.1);
}
.sub_cont.pack .s3_desc > li span {
  font-size: 3rem;
  font-weight: 500;
  text-align: center;
}
.sub_cont.pack .s3_desc > li p {
  min-width: 0;
  font-size: 2rem;
  line-height: 1.7;
}





@media (hover:hover) and (pointer:fine) and (min-width:1025px) {
  .cta_cont .cta_wrap a:hover {
    background-color: #fff;
    color: #121212;
    transform: translateY(-5px);
    box-shadow: 4px 4px 10px rgb(0, 0, 0, 0.25);
  }

  .cta_cont .cta_wrap a:hover img {
    filter: none;
  }

  .cta_cont .cta_wrap a.contact_cta:hover {
    border: 1px solid #00194C;
    background-color: #00194C;
    color: #fff;
  }
  .cta_cont .cta_wrap a.contact_cta:hover img {
    filter: invert(1) brightness(100%);
  }
  .sub_cont.dp .s3 .s3_desc .desc_right a:hover {
    background-color: #00194C;
    color: #fff;
    border: 1px solid #00194C;
  }
  .sub_cont.dp .s3 .s3_desc .desc_right a:hover img {
    filter: invert(1) brightness(100%);
  }
  .sub_cont.location .cont_list .list_item .item_desc >li .left a:hover {
    background-color: #00194C;
    color: #fff;
    border: 1px solid #00194C;
  }
  .sub_cont.location .cont_list .list_item .item_desc >li .left a:hover img {
    filter: invert(1) brightness(100%);
  }
  .sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap a:hover {
    background-color: #00194C;
    color: #fff;
    border: 1px solid #00194C;
  }
  .sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap a:hover img {
    filter: invert(1) brightness(100%);
  }
  .sub_cont.quality .s1 .s1_desc a:hover,
  .sub_cont.quality .s2 .s2_desc a:hover {
    background-color: #00194C;
    color: #fff;
    border: 1px solid #00194C;
  }
  .sub_cont.quality .s1 .s1_desc a:hover img,
  .sub_cont.quality .s2 .s2_desc a:hover img {
    filter: invert(1) brightness(100%);
  }
  .sub_cont.quality .s3 .s3_desc > div a:hover {
    background-color: #00194C;
    color: #fff;
    border: 1px solid #00194C;
  }
  .sub_cont.quality .s3 .s3_desc > div a:hover img {
    filter: invert(1) brightness(100%);
  }
  .sub_cont.location_detail .location_back a:hover {
    background-color: #00194C;
    color: #fff;
    border: 1px solid #00194C;
  }
  .sub_cont.contact button:hover {
    background-color: #00194C;
    color: #fff;
    border: 1px solid #00194C;
  }
  .sub_cont.contact button:hover img {
    filter: invert(1) brightness(100%);
  }
}
@media (max-width: 1500px) {
  .sub_cont.contact {padding:5rem;}
  .sub_cont.contact .contact_desc .s_tit {gap:5rem;}
  .sub_cont .s_tit_wrap h3, .sub_cont .s_tit h3 {font-size:6rem;line-height:1.3;}
  .sub_cont.contact .s_tit p br {display:none;}
}

@media (max-width: 1280px) {
  /* sub common */
  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner {
    gap: 5rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner h2 {
    /* 1280px 80px → 480px 38px, 이후 최소 36px */
    font-size: clamp(3.6rem, calc(1.28rem + 5.25vw), 8rem);
  }

  .sub_cont:is(.sol, .dp) {
    width: calc(100% - 4rem);
    margin: 18rem auto;
    gap: 22rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap h3,
  .sub_cont:is(.sol, .dp) .s_tit h3 {
    /* 1280px 64px → 480px 34px, 이후 최소 32px */
    font-size: clamp(3.2rem, calc(1.6rem + 3.75vw), 6.4rem);
    line-height: 1.35;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap p,
  .sub_cont:is(.sol, .dp) .s_tit p {
    font-size: 1.8rem;
  }

  /* CTA */
  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) {
    padding-bottom: 12rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_inner {
    height: 52rem;
    border-radius: 3.5rem;
    gap: 6rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit h4 {
    /* 1280px 60px → 480px 30px, 이후 최소 28px */
    font-size: clamp(2.8rem, calc(1.2rem + 3.75vw), 6rem);
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit p {
    font-size: 1.8rem;
  }

  /* solution common : bp / ipps / rfid / dpp */
  .sub_cont.sol .s1,
  .sub_cont.dp .s1 {
    gap: 10rem;
  }

  .sub_cont.sol .s1 .s1_desc > li,
  .sub_cont.dp .s1 .s1_desc > li {
    height: 30rem;
  }

  .sub_cont.sol .s2 {
    gap: 10rem;
  }

  .sub_cont.sol .s2 .s2_desc {
    gap: 2rem;
  }

  .sub_cont.sol .s2 .s2_desc > li {
    width: calc(25% - 1.5rem);
    height: auto;
    min-height: 27rem;
    padding: 2.5rem;
  }

  .sub_cont.sol .s2 .s2_desc > li .txt_wrap strong {
    font-size: 2.4rem;
  }

  .sub_cont.sol .s3 {
    gap: 8rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab {
    gap: 1rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab > li {
    padding: 1.6rem 3rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_cont .s3_item {
    gap: 7rem;
  }

  .sub_cont.sol .s3_item .img_wrap {
    width: 40%;
    height: 58rem;
  }

  .sub_cont.sol .s3_item .cont_wrap {
    width: auto;
    flex: 1;
    gap: 4.5rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit {
    gap: 2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit h5 {
    font-size: 3.4rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid,
  .sub_cont.sol .s3_item .cont_wrap .cont_bot {
    gap: 2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li {
    flex: 1;
    padding: 2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc {
    column-gap: 2rem;
  }

  /* Brand Protection */
  .sub_cont.bp .s4 {
    gap: 8rem;
  }

  .sub_cont.bp .s4 .applySwiper .swiper-slide {
    height: 30rem;
  }

  /* Design Retail Packaging */
  .sub_cont.dp .s2 {
    gap: 10rem;
  }

  .sub_cont.dp .s2 .s2_desc > li img {
    height: 32rem;
  }

  .sub_cont.dp .s3 {
    gap: 8rem;
  }

  .sub_cont.dp .s3 .s3_desc {
    gap: 3rem;
  }

  .sub_cont.dp .s3 .s3_desc .img_wrap {
    width: 50%;
    height: 40rem;
    flex-shrink: 0;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right {
    flex: 1;
    gap: 3rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right .desc_txt > li {
    padding: 2.4rem;
  }

  /* IPPS */
  .sub_cont.ipps .s4 {
    gap: 10rem;
  }

  .sub_cont.ipps .s4_desc .desc_left {
    width: 32%;
    padding: 4rem;
  }

  .sub_cont.ipps .s4_desc .desc_right {
    flex: 1;
    min-width: 0;
    gap: 2rem;
  }

  .sub_cont.ipps .s4_desc .desc_right > li {
    min-width: 0;
    padding: 2.5rem;
  }

  /* RFID Validation */
  .sub_cont.rfid .s4 {
    gap: 10rem;
  }

  .sub_cont.rfid .s4 .s4_desc {
    gap: 10rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li {
    padding: 2.4rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot {
    align-items: flex-start;
    gap: 5rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot h5 {
    font-size: 4.2rem;
    flex-shrink: 0;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li {
    min-width: 0;
  }

  /* DPP */
  .sub_cont.dpp .s4 {
    gap: 8rem;
  }

  .sub_cont.dpp .s4 .s4_desc {
    gap: 5rem;
  }

  .sub_cont.dpp .s4 .s4_desc .img_wrap {
    width: 62%;
    height: 52rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap {
    flex: 1;
    min-width: 0;
  }
  .sub_cont.product .s2 .rolling_list {
    gap: 3rem;
    padding-right: 3rem;
  }

  .sub_cont.product .s2 .rolling_list li {
    width: 30rem;
    height: 20rem;
  }
}


/* -------------------------
   1024px 이하
------------------------- */
@media (max-width: 1024px) {
  /* sub common */
  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) {
    height: 100svh;
    min-height: 64rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner h2 {
    text-align: center;
  }

  .sub_cont:is(.sol, .dp) {
    margin: 14rem auto;
    gap: 18rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit {
    flex-direction: column;
    align-items: flex-start;
    gap: 2.4rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap p.right,
  .sub_cont:is(.sol, .dp) .s_tit p.right {
    text-align: left;
  }

  /* CTA */
  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) {
    padding-bottom: 10rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_inner {
    height: 48rem;
    gap: 5rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit {
    width: calc(100% - 4rem);
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit p {
    text-align: center;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_wrap {
    gap: 2rem;
  }

  /* solution common */
  .sub_cont.sol .s1,
  .sub_cont.dp .s1 {
    gap: 8rem;
  }

  .sub_cont.sol .s1 .s1_desc,
  .sub_cont.dp .s1 .s1_desc {
    gap: 1.5rem;
  }

  .sub_cont.sol .s1 .s1_desc > li,
  .sub_cont.dp .s1 .s1_desc > li {
    width: calc((100% - 3rem) / 3);
    height: 26rem;
  }

  .sub_cont.sol .s1 .s1_desc > li span,
  .sub_cont.dp .s1 .s1_desc > li span {
    margin: 2rem;
    font-size: clamp(1.8rem, calc(1.47rem + .70vw), 2rem);
  }

  .sub_cont.sol .s2 {
    gap: 8rem;
  }

  .sub_cont.sol .s2 .s2_desc {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
  }

  .sub_cont.sol .s2 .s2_desc > li {
    width: 100%;
    min-height: 24rem;
  }

  .sub_cont.sol .s3 {
    gap: 7rem;
  }

  .sub_cont.sol .s3 .s3_desc {
    gap: 4rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab {
    gap: 0;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab > li {
    flex: 1;
    padding: 1.6rem 1.5rem;
    text-align: center;
  }

  .sub_cont.sol .s3 .s3_desc .s3_cont .s3_item.active {
    flex-direction: column;
    align-items: stretch;
    gap: 5rem;
  }

  .sub_cont.sol .s3_item .img_wrap {
    width: 100%;
    max-width: 70rem;
    height: 52rem;
    margin: 0 auto;
  }

  .sub_cont.sol .s3_item .cont_wrap {
    width: 100%;
    gap: 4rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li {
    min-width: 0;
  }

  /* Brand Protection */
  .sub_cont.bp .s4 {
    gap: 7rem;
  }

  .sub_cont.bp .s4 .applySwiper .swiper-slide {
    height: 28rem;
  }

  /* Design Retail Packaging */
  .sub_cont.dp .s2 {
    gap: 8rem;
  }

  .sub_cont.dp .s2 .s2_desc {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2rem;
  }

  .sub_cont.dp .s2 .s2_desc > li {
    width: 100%;
  }

  .sub_cont.dp .s2 .s2_desc > li img {
    height: 28rem;
  }

  .sub_cont.dp .s3 .s_tit {
    align-items: center;
  }

  .sub_cont.dp .s3 .s3_desc {
    flex-direction: column;
    align-items: stretch;
    gap: 4rem;
  }

  .sub_cont.dp .s3 .s3_desc .img_wrap {
    width: 100%;
    height: 42rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right {
    width: 100%;
  }

  /* IPPS */
  .sub_cont.ipps .s4_desc {
    flex-direction: column;
    gap: 3rem;
  }

  .sub_cont.ipps .s4_desc .desc_left {
    width: 100%;
    height: auto;
    min-height: 26rem;
  }

  .sub_cont.ipps .s4_desc .arrow_mid {
    width: auto;
    padding: 1rem 2rem;
    border-radius: 10rem;
    background-color: rgba(0, 25, 76, 0.08);
  }

  .sub_cont.ipps .s4_desc .arrow_mid::before,
  .sub_cont.ipps .s4_desc .arrow_mid::after {
    display: none;
  }

  .sub_cont.ipps .s4_desc .desc_right {
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* RFID Validation */
  .sub_cont.rfid .s4 .s4_desc .rfid_process {
    gap: 1.5rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process::-webkit-scrollbar {
    display: none;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li {
    flex: 0 0 calc((100% - 3rem) / 3);
    min-width: 24rem;
    scroll-snap-align: start;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot {
    flex-direction: column;
    gap: 4rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot h5 {
    font-size: 4rem;
  }

  /* DPP */
  .sub_cont.dpp .s4 .s4_desc {
    flex-direction: column;
    align-items: stretch;
  }

  .sub_cont.dpp .s4 .s4_desc .img_wrap {
    width: 100%;
    height: auto;
    aspect-ratio: 5 / 3;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap {
    width: 100%;
  }
  .sub_cont.product .s2 .rolling_list {
    gap: 2rem;
    padding-right: 2rem;
  }

  .sub_cont.product .s2 .rolling_list li {
    width: 20rem;
    height: 15rem;
  }
}


/* -------------------------
   767px 이하
------------------------- */
@media (max-width: 767px) {
  /* sub common */
  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) {
    min-height: 58rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner {
    gap: 3rem;
    padding: 0 1.5rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner h2 {
    line-height: 1.15;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .breadcrumb {
    max-width: 100%;
    height: 4.8rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .breadcrumb > li.home a {
    width: 4.8rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .dropdown_btn {
    gap: 1.2rem;
    padding: 0 1.2rem;
    font-size: 1.6rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .dropdown_menu a {
    min-height: 4.4rem;
    padding: 1rem 1.2rem;
    font-size: 1.6rem;
  }

  .sub_cont:is(.sol, .dp) {
    width: calc(100% - 3rem);
    margin: 10rem auto 12rem;
    gap: 12rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap {
    gap: 1.5rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap h3,
  .sub_cont:is(.sol, .dp) .s_tit h3 {
    line-height: 1.25;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap span,
  .sub_cont:is(.sol, .dp) .s_tit span,
  .sub_cont:is(.sol, .dp) .s_tit_wrap p,
  .sub_cont:is(.sol, .dp) .s_tit p {
    /* 767px 20px → 480px 16px */
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  /* 데스크톱 강제 줄바꿈 해제 */
  .sub_cont.sol br,
  .sub_cont.dp br,
  .cta_cont br {
    display: none;
  }

  /* CTA */
  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) {
    padding-bottom: 8rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_inner {
    width: calc(100% - 3rem);
    height: auto;
    padding: 6rem 1.5rem;
    border-radius: 2.4rem;
    gap: 4rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit {
    width: 100%;
    gap: 2rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit h4 {
    line-height: 1.25;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit p {
    font-size: 1.6rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_wrap {
    width: 100%;
    flex-direction: column;
    gap: 1.2rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_wrap a {
    width: 100%;
    max-width: 32rem;
    min-width: 0;
    min-height: 5rem;
    padding: 1.2rem 2rem;
    font-size: 1.6rem;
    gap: 1.2rem;
  }

  /* solution common : s1 */
  .sub_cont.sol .s1,
  .sub_cont.dp .s1 {
    gap: 5rem;
  }

  .sub_cont.sol .s1 .s1_desc,
  .sub_cont.dp .s1 .s1_desc {
    flex-direction: column;
    gap: 1.2rem;
  }

  .sub_cont.sol .s1 .s1_desc > li,
  .sub_cont.dp .s1 .s1_desc > li {
    width: 100%;
    height: 22rem;
    border-radius: 1.2rem;
  }

  .sub_cont.sol .s1 .s1_desc > li::after,
  .sub_cont.dp .s1 .s1_desc > li::after {
    border-radius: 1.2rem;
  }

  .sub_cont.sol .s1 .s1_desc > li span,
  .sub_cont.dp .s1 .s1_desc > li span {
    margin: 2rem;
    font-size: clamp(1.8rem, calc(1.47rem + .70vw), 2rem);
  }

  /* solution common : s2 */
  .sub_cont.sol .s2 {
    gap: 5rem;
  }

  .sub_cont.sol .s2 .s_tit {
    gap: 2rem;
  }

  .sub_cont.sol .s2 .s2_desc {
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }

  .sub_cont.sol .s2 .s2_desc > li {
    min-height: 0;
    flex-direction: row;
    align-items: flex-start;
    gap: 2rem;
    padding: 2.4rem;
  }

  .sub_cont.sol .s2 .s2_desc > li img {
    width: 5.6rem;
    height: 5.6rem;
    flex-shrink: 0;
  }

  .sub_cont.sol .s2 .s2_desc > li .txt_wrap {
    flex: 1;
  }

  .sub_cont.sol .s2 .s2_desc > li .txt_wrap strong {
    font-size: clamp(2rem, calc(1.33rem + 1.39vw), 2.4rem);
  }

  .sub_cont.sol .s2 .s2_desc > li .txt_wrap p {
    font-size: 1.6rem;
  }

  /* solution common : s3 tabs / contents */
  .sub_cont.sol .s3 {
    gap: 5rem;
  }

  .sub_cont.sol .s3 .s3_desc {
    gap: 3rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab {
    justify-content: flex-start;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab::-webkit-scrollbar {
    display: none;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab > li {
    flex: 0 0 auto;
    padding: 1.4rem 2rem;
    font-size: 1.6rem;
    white-space: nowrap;
    scroll-snap-align: start;
  }

  .sub_cont.sol .s3 .s3_desc .s3_cont .s3_item.active {
    gap: 4rem;
  }

  .sub_cont.sol .s3_item .img_wrap {
    max-width: none;
    height: 40rem;
    border-radius: 1.5rem;
  }

  .sub_cont.sol .s3_item .cont_wrap {
    gap: 4rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit {
    gap: 1.5rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit h5 {
    /* 767px 34px → 480px 24px */
    font-size: clamp(2.4rem, calc(.73rem + 3.48vw), 3.4rem);
    line-height: 1.3;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit p {
    font-size: 1.6rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid strong,
  .sub_cont.sol .s3_item .cont_wrap .cont_bot strong {
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc {
    flex-direction: column;
    gap: 1.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li {
    padding: 2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li span {
    font-size: clamp(1.6rem, calc(1.27rem + .70vw), 1.8rem);
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li {
    gap: 1.5rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li .bot_txt span {
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  /* Brand Protection */
  .sub_cont.bp .s4 {
    gap: 5rem;
  }

  .sub_cont.bp .s4 .applySwiper .swiper-slide {
    height: 24rem;
    border-radius: 1.5rem;
  }

  .sub_cont.bp .s4 .applySwiper .swiper-scrollbar {
    bottom: -2rem;
  }

  /* Design Retail Packaging */
  .sub_cont.dp .s2 {
    gap: 5rem;
  }

  .sub_cont.dp .s2 .s2_desc {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
  }

  .sub_cont.dp .s2 .s2_desc > li {
    gap: 0.8rem;
  }

  .sub_cont.dp .s2 .s2_desc > li img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .sub_cont.dp .s2 .s2_desc > li span {
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  .sub_cont.dp .s3 {
    gap: 5rem;
  }

  .sub_cont.dp .s3 .s_tit {
    gap: 2rem;
  }

  .sub_cont.dp .s3 .s3_desc {
    gap: 3rem;
  }

  .sub_cont.dp .s3 .s3_desc .img_wrap {
    height: auto;
    aspect-ratio: 4 / 3;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right {
    gap: 3rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right .desc_txt {
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right .desc_txt > li {
    padding: 2rem;
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
    gap: 1rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right a {
    width: 100%;
    justify-content: center;
    padding: 1.4rem 2rem;
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  /* IPPS */
  .sub_cont.ipps .s4 {
    gap: 5rem;
  }

  .sub_cont.ipps .s4_desc .desc_left {
    min-height: 0;
    padding: 3rem;
  }

  .sub_cont.ipps .s4_desc .desc_left span {
    font-size: 1.6rem;
  }

  .sub_cont.ipps .s4_desc .desc_left strong {
    font-size: clamp(2.2rem, calc(.86rem + 2.79vw), 3rem);
  }

  .sub_cont.ipps .s4_desc .arrow_mid {
    font-size: 1.6rem;
  }

  .sub_cont.ipps .s4_desc .desc_right {
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }

  .sub_cont.ipps .s4_desc .desc_right > li,
  .sub_cont.ipps .s4_desc .desc_right > li:last-of-type {
    grid-column: auto;
    width: 100%;
    padding: 2.4rem;
    gap: 1rem;
  }

  .sub_cont.ipps .s4_desc .desc_right > li span,
  .sub_cont.ipps .s4_desc .desc_right > li p {
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  /* RFID Validation */
  .sub_cont.rfid .s4 {
    gap: 5rem;
  }

  .sub_cont.rfid .s4 .s4_desc {
    gap: 6rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process {
    gap: 1.2rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li {
    flex-basis: 82%;
    min-width: 0;
    padding: 2.2rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li span {
    font-size: clamp(1.8rem, calc(.80rem + 2.09vw), 2.4rem);
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li p {
    font-size: 1.6rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot {
    gap: 3rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot h5 {
    font-size: clamp(2.8rem, calc(.79rem + 4.18vw), 4rem);
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc {
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li {
    padding: 2.4rem;
    border-radius: 1.5rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li span {
    font-size: clamp(1.8rem, calc(.80rem + 2.09vw), 2.4rem);
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li p {
    font-size: 1.6rem;
  }

  /* DPP */
  .sub_cont.dpp .s4 {
    gap: 5rem;
  }

  .sub_cont.dpp .s4 .s4_desc {
    gap: 3rem;
  }

  .sub_cont.dpp .s4 .s4_desc .img_wrap {
    aspect-ratio: 4 / 3;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap {
    gap: 1.2rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li {
    padding: 1.8rem;
    gap: 2rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li span {
    font-size: clamp(1.6rem, calc(1.27rem + .70vw), 1.8rem);
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li .txt_wrap strong {
    font-size: clamp(1.9rem, calc(1.06rem + 1.74vw), 2.4rem);
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li .txt_wrap p {
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }
  .sub_cont.product .s2 .rolling_track {
    animation-duration: 50s;
  }

  .sub_cont.product .s2 .rolling_list {
    gap: 1.2rem;
    padding-right: 1.2rem;
  }

}


/* -------------------------
   480px 이하
------------------------- */
@media (max-width: 480px) {
  /* sub common */
  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) {
    min-height: 52rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner {
    gap: 2.4rem;
    padding: 0 1.5rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner h2 {
    line-height: 1.12;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .breadcrumb {
    height: 4.6rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .breadcrumb > li.home a {
    width: 4.6rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .dropdown_btn {
    gap: .8rem;
    padding: 0 1rem;
    font-size: 1.6rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .dropdown_menu a {
    font-size: 1.6rem;
  }

  .sub_cont:is(.sol, .dp) {
    width: calc(100% - 3rem);
    margin: 8rem auto 10rem;
    gap: 9rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap {
    gap: 1.2rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit {
    gap: 1.8rem;
  }

  /* CTA */
  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) {
    padding-bottom: 6rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_inner {
    padding: 5rem 1.5rem;
    border-radius: 2rem;
    gap: 3rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit {
    gap: 1.5rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit p {
    font-size: 1.6rem;
    line-height: 1.5;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_wrap {
    gap: 1rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_wrap a {
    max-width: none;
    min-height: 4.8rem;
    padding: 1rem 1.6rem;
    font-size: 1.6rem;
  }

  /* solution common : s1 */
  .sub_cont.sol .s1,
  .sub_cont.dp .s1 {
    gap: 4rem;
  }

  .sub_cont.sol .s1 .s1_desc,
  .sub_cont.dp .s1 .s1_desc {
    gap: 1rem;
  }

  .sub_cont.sol .s1 .s1_desc > li,
  .sub_cont.dp .s1 .s1_desc > li {
    height: 18rem;
  }

  .sub_cont.sol .s1 .s1_desc > li span,
  .sub_cont.dp .s1 .s1_desc > li span {
    margin: 1.6rem;
  }

  /* solution common : s2 */
  .sub_cont.sol .s2 {
    gap: 4rem;
  }

  .sub_cont.sol .s2 .s_tit {
    gap: 1.5rem;
  }

  .sub_cont.sol .s2 .s2_desc {
    gap: 1rem;
  }

  .sub_cont.sol .s2 .s2_desc > li {
    gap: 1.5rem;
    padding: 2rem;
    border-radius: 1.2rem;
  }

  .sub_cont.sol .s2 .s2_desc > li img {
    width: 5rem;
    height: 5rem;
  }

  .sub_cont.sol .s2 .s2_desc > li .txt_wrap strong,
  .sub_cont.sol .s2 .s2_desc > li .txt_wrap p {
    line-height: 1.4;
  }

  /* solution common : s3 */
  .sub_cont.sol .s3 {
    gap: 4rem;
  }

  .sub_cont.sol .s3 .s3_desc {
    gap: 2.5rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab > li {
    padding: 1.2rem 1.6rem;
    font-size: 1.6rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_cont .s3_item.active {
    gap: 3rem;
  }

  .sub_cont.sol .s3_item .img_wrap {
    height: 32rem;
    border-radius: 1.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap {
    gap: 3rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit {
    gap: 1.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit p,
  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li p,
  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li .bot_txt p {
    font-size: 1.6rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid,
  .sub_cont.sol .s3_item .cont_wrap .cont_bot {
    gap: 1.6rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc {
    gap: 1rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li {
    padding: 1.6rem;
    border-radius: 1.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc {
    gap: 1.6rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li {
    gap: 1.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li img {
    width: 3.2rem;
    height: 3.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li .bot_txt {
    gap: .6rem;
  }

  /* Brand Protection */
  .sub_cont.bp .s4 {
    gap: 4rem;
  }

  .sub_cont.bp .s4 .applySwiper .swiper-slide {
    height: 20rem;
    border-radius: 1.2rem;
  }

  /* Design Retail Packaging */
  .sub_cont.dp .s2 {
    gap: 4rem;
  }

  .sub_cont.dp .s2 .s2_desc {
    gap: 1rem;
  }

  .sub_cont.dp .s2 .s2_desc > li {
    gap: .6rem;
  }

  .sub_cont.dp .s3 {
    gap: 4rem;
  }

  .sub_cont.dp .s3 .s_tit {
    gap: 1.5rem;
  }

  .sub_cont.dp .s3 .s3_desc {
    gap: 2.5rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right {
    gap: 2.5rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right .desc_txt {
    gap: 1rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right .desc_txt > li {
    padding: 1.6rem;
    border-radius: 1rem;
    font-size: 1.6rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right a {
    padding: 1.2rem 1.6rem;
    font-size: 1.6rem;
  }

  /* IPPS */
  .sub_cont.ipps .s4 {
    gap: 4rem;
  }

  .sub_cont.ipps .s4_desc {
    gap: 2rem;
  }

  .sub_cont.ipps .s4_desc .desc_left {
    padding: 2.4rem;
    gap: 1.5rem;
    border-radius: 1.2rem;
  }

  .sub_cont.ipps .s4_desc .desc_left span,
  .sub_cont.ipps .s4_desc .arrow_mid,
  .sub_cont.ipps .s4_desc .desc_right > li span,
  .sub_cont.ipps .s4_desc .desc_right > li p {
    font-size: 1.6rem;
  }

  .sub_cont.ipps .s4_desc .desc_right {
    gap: 1rem;
  }

  .sub_cont.ipps .s4_desc .desc_right > li,
  .sub_cont.ipps .s4_desc .desc_right > li:last-of-type {
    padding: 2rem;
    border-radius: 1.2rem;
  }

  /* RFID Validation */
  .sub_cont.rfid .s4 {
    gap: 4rem;
  }

  .sub_cont.rfid .s4 .s4_desc {
    gap: 5rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process {
    gap: 1rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li {
    flex-basis: 88%;
    padding: 2rem;
    border-radius: 1.2rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li p {
    font-size: 1.6rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot {
    gap: 2.5rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot h5 {
    /* 480px 28px → 작은 모바일 26px */
    font-size: clamp(2.6rem, calc(1.69rem + 1.9vw), 2.8rem);
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc {
    gap: 1rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li {
    padding: 2rem;
    border-radius: 1.2rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li p {
    font-size: 1.6rem;
  }

  /* DPP */
  .sub_cont.dpp .s4 {
    gap: 4rem;
  }

  .sub_cont.dpp .s4 .s4_desc {
    gap: 2.5rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap {
    gap: 1rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li {
    padding: 1.6rem;
    gap: 1.5rem;
    border-radius: 1.2rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li span,
  .sub_cont.dpp .s4 .s4_desc .step_wrap > li .txt_wrap p {
    font-size: 1.6rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li .txt_wrap {
    gap: .6rem;
  }

}



@media (max-width: 1280px) {
  /* sub common */
  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner {
    gap: 5rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner h2 {
    /* 1280px 80px → 480px 38px, 이후 최소 36px */
    font-size: clamp(3.6rem, calc(1.28rem + 5.25vw), 8rem);
  }

  .sub_cont:is(.sol, .dp) {
    width: calc(100% - 4rem);
    margin: 18rem auto;
    gap: 22rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap h3,
  .sub_cont:is(.sol, .dp) .s_tit h3 {
    /* 1280px 64px → 480px 34px, 이후 최소 32px */
    font-size: clamp(3.2rem, calc(1.6rem + 3.75vw), 6.4rem);
    line-height: 1.35;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap p,
  .sub_cont:is(.sol, .dp) .s_tit p {
    font-size: 1.8rem;
  }

  /* CTA */
  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) {
    padding-bottom: 12rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_inner {
    height: 52rem;
    border-radius: 3.5rem;
    gap: 6rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit h4 {
    /* 1280px 60px → 480px 30px, 이후 최소 28px */
    font-size: clamp(2.8rem, calc(1.2rem + 3.75vw), 6rem);
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit p {
    font-size: 1.8rem;
  }

  /* solution common : bp / ipps / rfid / dpp */
  .sub_cont.sol .s1,
  .sub_cont.dp .s1 {
    gap: 10rem;
  }

  .sub_cont.sol .s1 .s1_desc > li,
  .sub_cont.dp .s1 .s1_desc > li {
    height: 30rem;
  }

  .sub_cont.sol .s2 {
    gap: 10rem;
  }

  .sub_cont.sol .s2 .s2_desc {
    gap: 2rem;
  }

  .sub_cont.sol .s2 .s2_desc > li {
    width: calc(25% - 1.5rem);
    height: auto;
    min-height: 27rem;
    padding: 2.5rem;
  }

  .sub_cont.sol .s2 .s2_desc > li .txt_wrap strong {
    font-size: 2.4rem;
  }

  .sub_cont.sol .s3 {
    gap: 8rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab {
    gap: 1rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab > li {
    padding: 1.6rem 3rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_cont .s3_item {
    gap: 7rem;
  }

  .sub_cont.sol .s3_item .img_wrap {
    width: 40%;
    height: 58rem;
  }

  .sub_cont.sol .s3_item .cont_wrap {
    width: auto;
    flex: 1;
    gap: 4.5rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit {
    gap: 2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit h5 {
    font-size: 3.4rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid,
  .sub_cont.sol .s3_item .cont_wrap .cont_bot {
    gap: 2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li {
    flex: 1;
    padding: 2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc {
    column-gap: 2rem;
  }

  /* Brand Protection */
  .sub_cont.bp .s4 {
    gap: 8rem;
  }

  .sub_cont.bp .s4 .applySwiper .swiper-slide {
    height: 30rem;
  }

  /* Design Retail Packaging */
  .sub_cont.dp .s2 {
    gap: 10rem;
  }

  .sub_cont.dp .s2 .s2_desc > li img {
    height: 32rem;
  }

  .sub_cont.dp .s3 {
    gap: 8rem;
  }

  .sub_cont.dp .s3 .s3_desc {
    gap: 3rem;
  }

  .sub_cont.dp .s3 .s3_desc .img_wrap {
    width: 50%;
    height: 40rem;
    flex-shrink: 0;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right {
    flex: 1;
    gap: 3rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right .desc_txt > li {
    padding: 2.4rem;
  }

  /* IPPS */
  .sub_cont.ipps .s4 {
    gap: 10rem;
  }

  .sub_cont.ipps .s4_desc .desc_left {
    width: 32%;
    padding: 4rem;
  }

  .sub_cont.ipps .s4_desc .desc_right {
    flex: 1;
    min-width: 0;
    gap: 2rem;
  }

  .sub_cont.ipps .s4_desc .desc_right > li {
    min-width: 0;
    padding: 2.5rem;
  }

  /* RFID Validation */
  .sub_cont.rfid .s4 {
    gap: 10rem;
  }

  .sub_cont.rfid .s4 .s4_desc {
    gap: 10rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li {
    padding: 2.4rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot {
    align-items: flex-start;
    gap: 5rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot h5 {
    font-size: 4.2rem;
    flex-shrink: 0;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li {
    min-width: 0;
  }

  /* DPP */
  .sub_cont.dpp .s4 {
    gap: 8rem;
  }

  .sub_cont.dpp .s4 .s4_desc {
    gap: 5rem;
  }

  .sub_cont.dpp .s4 .s4_desc .img_wrap {
    width: 62%;
    height: 52rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap {
    flex: 1;
    min-width: 0;
  }

}


/* -------------------------
   1024px 이하
------------------------- */
@media (max-width: 1024px) {
  /* sub common */
  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) {
    height: 100svh;
    min-height: 64rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner h2 {
    text-align: center;
  }

  .sub_cont:is(.sol, .dp) {
    margin: 14rem auto;
    gap: 18rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit {
    flex-direction: column;
    align-items: flex-start;
    gap: 2.4rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap p.right,
  .sub_cont:is(.sol, .dp) .s_tit p.right {
    text-align: left;
  }

  /* CTA */
  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) {
    padding-bottom: 10rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_inner {
    height: 48rem;
    gap: 5rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit {
    width: calc(100% - 4rem);
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit p {
    text-align: center;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_wrap {
    gap: 2rem;
  }

  /* solution common */
  .sub_cont.sol .s1,
  .sub_cont.dp .s1 {
    gap: 8rem;
  }

  .sub_cont.sol .s1 .s1_desc,
  .sub_cont.dp .s1 .s1_desc {
    gap: 1.5rem;
  }

  .sub_cont.sol .s1 .s1_desc > li,
  .sub_cont.dp .s1 .s1_desc > li {
    width: calc((100% - 3rem) / 3);
    height: 26rem;
  }

  .sub_cont.sol .s1 .s1_desc > li span,
  .sub_cont.dp .s1 .s1_desc > li span {
    margin: 2rem;
    font-size: clamp(1.8rem, calc(1.47rem + .70vw), 2rem);
  }

  .sub_cont.sol .s2 {
    gap: 8rem;
  }

  .sub_cont.sol .s2 .s2_desc {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
  }

  .sub_cont.sol .s2 .s2_desc > li {
    width: 100%;
    min-height: 24rem;
  }

  .sub_cont.sol .s3 {
    gap: 7rem;
  }

  .sub_cont.sol .s3 .s3_desc {
    gap: 4rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab {
    gap: 0;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab > li {
    flex: 1;
    padding: 1.6rem 1.5rem;
    text-align: center;
  }

  .sub_cont.sol .s3 .s3_desc .s3_cont .s3_item.active {
    flex-direction: column;
    align-items: stretch;
    gap: 5rem;
  }

  .sub_cont.sol .s3_item .img_wrap {
    width: 100%;
    max-width: 70rem;
    height: 52rem;
    margin: 0 auto;
  }

  .sub_cont.sol .s3_item .cont_wrap {
    width: 100%;
    gap: 4rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li {
    min-width: 0;
  }

  /* Brand Protection */
  .sub_cont.bp .s4 {
    gap: 7rem;
  }

  .sub_cont.bp .s4 .applySwiper .swiper-slide {
    height: 28rem;
  }

  /* Design Retail Packaging */
  .sub_cont.dp .s2 {
    gap: 8rem;
  }

  .sub_cont.dp .s2 .s2_desc {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2rem;
  }

  .sub_cont.dp .s2 .s2_desc > li {
    width: 100%;
  }

  .sub_cont.dp .s2 .s2_desc > li img {
    height: 28rem;
  }

  .sub_cont.dp .s3 .s_tit {
    align-items: center;
  }

  .sub_cont.dp .s3 .s3_desc {
    flex-direction: column;
    align-items: stretch;
    gap: 4rem;
  }

  .sub_cont.dp .s3 .s3_desc .img_wrap {
    width: 100%;
    height: 42rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right {
    width: 100%;
  }

  /* IPPS */
  .sub_cont.ipps .s4_desc {
    flex-direction: column;
    gap: 3rem;
  }

  .sub_cont.ipps .s4_desc .desc_left {
    width: 100%;
    height: auto;
    min-height: 26rem;
  }

  .sub_cont.ipps .s4_desc .arrow_mid {
    width: auto;
    padding: 1rem 2rem;
    border-radius: 10rem;
    background-color: rgba(0, 25, 76, 0.08);
  }

  .sub_cont.ipps .s4_desc .arrow_mid::before,
  .sub_cont.ipps .s4_desc .arrow_mid::after {
    display: none;
  }

  .sub_cont.ipps .s4_desc .desc_right {
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* RFID Validation */
  .sub_cont.rfid .s4 .s4_desc .rfid_process {
    gap: 1.5rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process::-webkit-scrollbar {
    display: none;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li {
    flex: 0 0 calc((100% - 3rem) / 3);
    min-width: 24rem;
    scroll-snap-align: start;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot {
    flex-direction: column;
    gap: 4rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot h5 {
    font-size: 4rem;
  }

  /* DPP */
  .sub_cont.dpp .s4 .s4_desc {
    flex-direction: column;
    align-items: stretch;
  }

  .sub_cont.dpp .s4 .s4_desc .img_wrap {
    width: 100%;
    height: auto;
    aspect-ratio: 5 / 3;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap {
    width: 100%;
  }
}


/* -------------------------
   767px 이하
------------------------- */
@media (max-width: 767px) {
  /* sub common */
  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) {
    min-height: 58rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner {
    gap: 3rem;
    padding: 0 1.5rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner h2 {
    line-height: 1.15;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .breadcrumb {
    max-width: 100%;
    height: 4.8rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .breadcrumb > li.home a {
    width: 4.8rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .dropdown_btn {
    gap: 1.2rem;
    padding: 0 1.2rem;
    font-size: 1.6rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .dropdown_menu a {
    min-height: 4.4rem;
    padding: 1rem 1.2rem;
    font-size: 1.6rem;
  }

  .sub_cont:is(.sol, .dp) {
    width: calc(100% - 3rem);
    margin: 10rem auto 12rem;
    gap: 12rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap {
    gap: 1.5rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap h3,
  .sub_cont:is(.sol, .dp) .s_tit h3 {
    line-height: 1.25;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap span,
  .sub_cont:is(.sol, .dp) .s_tit span,
  .sub_cont:is(.sol, .dp) .s_tit_wrap p,
  .sub_cont:is(.sol, .dp) .s_tit p {
    /* 767px 20px → 480px 16px */
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  /* 데스크톱 강제 줄바꿈 해제 */
  .sub_cont.sol br,
  .sub_cont.dp br,
  .cta_cont br {
    display: none;
  }

  /* CTA */
  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) {
    padding-bottom: 8rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_inner {
    width: calc(100% - 3rem);
    height: auto;
    padding: 5rem 3rem;
    border-radius: 2.4rem;
    gap: 3rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit {
    width: 100%;
    gap: 2rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit h4 {
    line-height: 1.25;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit p {
    display:none;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_wrap {
    width: 100%;
    flex-direction: column;
    gap: 1.2rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_wrap a {
    width: 100%;
    max-width: 32rem;
    min-width: 0;
    min-height: 5rem;
    padding: 1.2rem 2rem;
    font-size: 1.6rem;
    gap: 1.2rem;
  }

  /* solution common : s1 */
  .sub_cont.sol .s1,
  .sub_cont.dp .s1 {
    gap: 5rem;
  }

  .sub_cont.sol .s1 .s1_desc,
  .sub_cont.dp .s1 .s1_desc {
    flex-direction: column;
    gap: 1.2rem;
  }

  .sub_cont.sol .s1 .s1_desc > li,
  .sub_cont.dp .s1 .s1_desc > li {
    width: 100%;
    height: 22rem;
    border-radius: 1.2rem;
  }

  .sub_cont.sol .s1 .s1_desc > li::after,
  .sub_cont.dp .s1 .s1_desc > li::after {
    border-radius: 1.2rem;
  }

  .sub_cont.sol .s1 .s1_desc > li span,
  .sub_cont.dp .s1 .s1_desc > li span {
    margin: 2rem;
    font-size: clamp(1.8rem, calc(1.47rem + .70vw), 2rem);
  }

  /* solution common : s2 */
  .sub_cont.sol .s2 {
    gap: 5rem;
  }

  .sub_cont.sol .s2 .s_tit {
    gap: 2rem;
  }

  .sub_cont.sol .s2 .s2_desc {
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }

  .sub_cont.sol .s2 .s2_desc > li {
    min-height: 0;
    flex-direction: row;
    align-items: flex-start;
    gap: 2rem;
    padding: 2.4rem;
  }

  .sub_cont.sol .s2 .s2_desc > li img {
    width: 5.6rem;
    height: 5.6rem;
    flex-shrink: 0;
  }

  .sub_cont.sol .s2 .s2_desc > li .txt_wrap {
    flex: 1;
  }

  .sub_cont.sol .s2 .s2_desc > li .txt_wrap strong {
    font-size: clamp(2rem, calc(1.33rem + 1.39vw), 2.4rem);
  }

  .sub_cont.sol .s2 .s2_desc > li .txt_wrap p {
    font-size: 1.6rem;
  }

  /* solution common : s3 tabs / contents */
  .sub_cont.sol .s3 {
    gap: 5rem;
  }

  .sub_cont.sol .s3 .s3_desc {
    gap: 3rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab {
    justify-content: flex-start;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab::-webkit-scrollbar {
    display: none;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab > li {
    flex: 0 0 auto;
    padding: 1.4rem 2rem;
    font-size: 1.6rem;
    white-space: nowrap;
    scroll-snap-align: start;
  }

  .sub_cont.sol .s3 .s3_desc .s3_cont .s3_item.active {
    gap: 4rem;
  }

  .sub_cont.sol .s3_item .img_wrap {
    max-width: none;
    height: 40rem;
    border-radius: 1.5rem;
  }

  .sub_cont.sol .s3_item .cont_wrap {
    gap: 4rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit {
    gap: 1.5rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit h5 {
    /* 767px 34px → 480px 24px */
    font-size: clamp(2.4rem, calc(.73rem + 3.48vw), 3.4rem);
    line-height: 1.3;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit p {
    font-size: 1.6rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid strong,
  .sub_cont.sol .s3_item .cont_wrap .cont_bot strong {
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc {
    flex-direction: column;
    gap: 1.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li {
    padding: 2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li span {
    font-size: clamp(1.6rem, calc(1.27rem + .70vw), 1.8rem);
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li {
    gap: 1.5rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li .bot_txt span {
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  /* Brand Protection */
  .sub_cont.bp .s4 {
    gap: 5rem;
  }

  .sub_cont.bp .s4 .applySwiper .swiper-slide {
    height: 24rem;
    border-radius: 1.5rem;
  }

  .sub_cont.bp .s4 .applySwiper .swiper-scrollbar {
    bottom: -2rem;
  }

  /* Design Retail Packaging */
  .sub_cont.dp .s2 {
    gap: 5rem;
  }

  .sub_cont.dp .s2 .s2_desc {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
  }

  .sub_cont.dp .s2 .s2_desc > li {
    gap: 0.8rem;
  }

  .sub_cont.dp .s2 .s2_desc > li img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .sub_cont.dp .s2 .s2_desc > li span {
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  .sub_cont.dp .s3 {
    gap: 5rem;
  }

  .sub_cont.dp .s3 .s_tit {
    gap: 2rem;
  }

  .sub_cont.dp .s3 .s3_desc {
    gap: 3rem;
  }

  .sub_cont.dp .s3 .s3_desc .img_wrap {
    height: auto;
    aspect-ratio: 4 / 3;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right {
    gap: 3rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right .desc_txt {
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right .desc_txt > li {
    padding: 2rem;
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
    gap: 1rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right a {
    width: 100%;
    justify-content: center;
    padding: 1.4rem 2rem;
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  /* IPPS */
  .sub_cont.ipps .s4 {
    gap: 5rem;
  }

  .sub_cont.ipps .s4_desc .desc_left {
    min-height: 0;
    padding: 3rem;
  }

  .sub_cont.ipps .s4_desc .desc_left span {
    font-size: 1.6rem;
  }

  .sub_cont.ipps .s4_desc .desc_left strong {
    font-size: clamp(2.2rem, calc(.86rem + 2.79vw), 3rem);
  }

  .sub_cont.ipps .s4_desc .arrow_mid {
    font-size: 1.6rem;
  }

  .sub_cont.ipps .s4_desc .desc_right {
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }

  .sub_cont.ipps .s4_desc .desc_right > li,
  .sub_cont.ipps .s4_desc .desc_right > li:last-of-type {
    grid-column: auto;
    width: 100%;
    padding: 2.4rem;
    gap: 1rem;
  }

  .sub_cont.ipps .s4_desc .desc_right > li span,
  .sub_cont.ipps .s4_desc .desc_right > li p {
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }

  /* RFID Validation */
  .sub_cont.rfid .s4 {
    gap: 5rem;
  }

  .sub_cont.rfid .s4 .s4_desc {
    gap: 6rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process {
    gap: 1.2rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li {
    flex-basis: 82%;
    min-width: 0;
    padding: 2.2rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li span {
    font-size: clamp(1.8rem, calc(.80rem + 2.09vw), 2.4rem);
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li p {
    font-size: 1.6rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot {
    gap: 3rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot h5 {
    font-size: clamp(2.8rem, calc(.79rem + 4.18vw), 4rem);
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc {
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li {
    padding: 2.4rem;
    border-radius: 1.5rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li span {
    font-size: clamp(1.8rem, calc(.80rem + 2.09vw), 2.4rem);
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li p {
    font-size: 1.6rem;
  }

  /* DPP */
  .sub_cont.dpp .s4 {
    gap: 5rem;
  }

  .sub_cont.dpp .s4 .s4_desc {
    gap: 3rem;
  }

  .sub_cont.dpp .s4 .s4_desc .img_wrap {
    aspect-ratio: 4 / 3;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap {
    gap: 1.2rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li {
    padding: 1.8rem;
    gap: 2rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li span {
    font-size: clamp(1.6rem, calc(1.27rem + .70vw), 1.8rem);
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li .txt_wrap strong {
    font-size: clamp(1.9rem, calc(1.06rem + 1.74vw), 2.4rem);
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li .txt_wrap p {
    font-size: clamp(1.6rem, calc(.93rem + 1.39vw), 2rem);
  }
}


/* -------------------------
   480px 이하
------------------------- */
@media (max-width: 480px) {
  /* sub common */
  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) {
    min-height: 52rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner {
    gap: 2.4rem;
    padding: 0 1.5rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .sub_inner h2 {
    line-height: 1.12;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .breadcrumb {
    height: 4.6rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .breadcrumb > li.home a {
    width: 4.6rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .dropdown_btn {
    gap: .8rem;
    padding: 0 1rem;
    font-size: 1.6rem;
  }

  .sub_top:is(.bp, .dp, .ipps, .rfid, .dpp) .dropdown_menu a {
    font-size: 1.6rem;
  }

  .sub_cont:is(.sol, .dp) {
    width: calc(100% - 3rem);
    margin: 8rem auto 10rem;
    gap: 9rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit_wrap {
    gap: 1.2rem;
  }

  .sub_cont:is(.sol, .dp) .s_tit {
    gap: 1.8rem;
  }

  /* CTA */
  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) {
    padding-bottom: 3rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_inner {
    padding: 3rem 2rem;
    border-radius: 2rem;
    gap: 2rem;
  }
  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit h4 {
    font-size:2.4rem;
  }
  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_tit {
    gap: 1.5rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_wrap {
    gap: 1rem;
  }

  .cta_cont:is(.bp, .dp, .ipps, .rfid, .dpp) .cta_wrap a {
    max-width: none;
    min-height: 4.8rem;
    padding: 1rem 1.6rem;
    font-size: 1.6rem;
  }

  /* solution common : s1 */
  .sub_cont.sol .s1,
  .sub_cont.dp .s1 {
    gap: 4rem;
  }

  .sub_cont.sol .s1 .s1_desc,
  .sub_cont.dp .s1 .s1_desc {
    gap: 1rem;
  }

  .sub_cont.sol .s1 .s1_desc > li,
  .sub_cont.dp .s1 .s1_desc > li {
    height: 18rem;
  }

  .sub_cont.sol .s1 .s1_desc > li span,
  .sub_cont.dp .s1 .s1_desc > li span {
    margin: 1.6rem;
  }

  /* solution common : s2 */
  .sub_cont.sol .s2 {
    gap: 4rem;
  }

  .sub_cont.sol .s2 .s_tit {
    gap: 1.5rem;
  }

  .sub_cont.sol .s2 .s2_desc {
    gap: 1rem;
  }

  .sub_cont.sol .s2 .s2_desc > li {
    gap: 1.5rem;
    padding: 2rem;
    border-radius: 1.2rem;
  }

  .sub_cont.sol .s2 .s2_desc > li img {
    width: 5rem;
    height: 5rem;
  }

  .sub_cont.sol .s2 .s2_desc > li .txt_wrap strong,
  .sub_cont.sol .s2 .s2_desc > li .txt_wrap p {
    line-height: 1.4;
  }

  /* solution common : s3 */
  .sub_cont.sol .s3 {
    gap: 4rem;
  }

  .sub_cont.sol .s3 .s3_desc {
    gap: 2.5rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_tab > li {
    padding: 1.2rem 1.6rem;
    font-size: 1.6rem;
  }

  .sub_cont.sol .s3 .s3_desc .s3_cont .s3_item.active {
    gap: 3rem;
  }

  .sub_cont.sol .s3_item .img_wrap {
    height: 32rem;
    border-radius: 1.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap {
    gap: 3rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit {
    gap: 1.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_tit p,
  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li p,
  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li .bot_txt p {
    font-size: 1.6rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid,
  .sub_cont.sol .s3_item .cont_wrap .cont_bot {
    gap: 1.6rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc {
    gap: 1rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_mid .mid_desc > li {
    padding: 1.6rem;
    border-radius: 1.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc {
    gap: 1.6rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li {
    gap: 1.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li img {
    width: 3.2rem;
    height: 3.2rem;
  }

  .sub_cont.sol .s3_item .cont_wrap .cont_bot .bot_desc > li .bot_txt {
    gap: .6rem;
  }

  /* Brand Protection */
  .sub_cont.bp .s4 {
    gap: 4rem;
  }

  .sub_cont.bp .s4 .applySwiper .swiper-slide {
    height: 20rem;
    border-radius: 1.2rem;
  }

  /* Design Retail Packaging */
  .sub_cont.dp .s2 {
    gap: 4rem;
  }

  .sub_cont.dp .s2 .s2_desc {
    gap: 1rem;
  }

  .sub_cont.dp .s2 .s2_desc > li {
    gap: .6rem;
  }

  .sub_cont.dp .s3 {
    gap: 4rem;
  }

  .sub_cont.dp .s3 .s_tit {
    gap: 1.5rem;
  }

  .sub_cont.dp .s3 .s3_desc {
    gap: 2.5rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right {
    gap: 2.5rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right .desc_txt {
    gap: 1rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right .desc_txt > li {
    padding: 1.6rem;
    border-radius: 1rem;
    font-size: 1.6rem;
  }

  .sub_cont.dp .s3 .s3_desc .desc_right a {
    padding: 1.2rem 1.6rem;
    font-size: 1.6rem;
  }

  /* IPPS */
  .sub_cont.ipps .s4 {
    gap: 4rem;
  }

  .sub_cont.ipps .s4_desc {
    gap: 2rem;
  }

  .sub_cont.ipps .s4_desc .desc_left {
    padding: 2.4rem;
    gap: 1.5rem;
    border-radius: 1.2rem;
  }

  .sub_cont.ipps .s4_desc .desc_left span,
  .sub_cont.ipps .s4_desc .arrow_mid,
  .sub_cont.ipps .s4_desc .desc_right > li span,
  .sub_cont.ipps .s4_desc .desc_right > li p {
    font-size: 1.6rem;
  }

  .sub_cont.ipps .s4_desc .desc_right {
    gap: 1rem;
  }

  .sub_cont.ipps .s4_desc .desc_right > li,
  .sub_cont.ipps .s4_desc .desc_right > li:last-of-type {
    padding: 2rem;
    border-radius: 1.2rem;
  }

  /* RFID Validation */
  .sub_cont.rfid .s4 {
    gap: 4rem;
  }

  .sub_cont.rfid .s4 .s4_desc {
    gap: 5rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process {
    gap: 1rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li {
    flex-basis: 88%;
    padding: 2rem;
    border-radius: 1.2rem;
  }

  .sub_cont.rfid .s4 .s4_desc .rfid_process > li p {
    font-size: 1.6rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot {
    gap: 2.5rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot h5 {
    /* 480px 28px → 작은 모바일 26px */
    font-size: clamp(2.6rem, calc(1.69rem + 1.9vw), 2.8rem);
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc {
    gap: 1rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li {
    padding: 2rem;
    border-radius: 1.2rem;
  }

  .sub_cont.rfid .s4 .s4_desc .desc_bot .bot_desc > li p {
    font-size: 1.6rem;
  }

  /* DPP */
  .sub_cont.dpp .s4 {
    gap: 4rem;
  }

  .sub_cont.dpp .s4 .s4_desc {
    gap: 2.5rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap {
    gap: 1rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li {
    padding: 1.6rem;
    gap: 1.5rem;
    border-radius: 1.2rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li span,
  .sub_cont.dpp .s4 .s4_desc .step_wrap > li .txt_wrap p {
    font-size: 1.6rem;
  }

  .sub_cont.dpp .s4 .s4_desc .step_wrap > li .txt_wrap {
    gap: .6rem;
  }
}




/* =========================================================
   1280px 이하
========================================================= */
@media (max-width: 1280px) {

  /* -------------------------------------------------------
     Sub visual - 이번 12페이지에만 적용
  ------------------------------------------------------- */
  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .sub_inner {
    gap: 5rem;
  }

  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper,
	.news
  ) .sub_inner h2 {
    /* 1280px 약 80px → 480px 약 38px */
    font-size: clamp(3.6rem, calc(1.28rem + 5.25vw), 8rem);
  }


  /* -------------------------------------------------------
     Common section title - product / quality / pack
  ------------------------------------------------------- */
  .sub_cont:is(.product, .quality, .pack) {
    width: calc(100% - 4rem);
    margin: 18rem auto;
  }

  .sub_cont:is(.product, .quality, .pack) .s_tit_wrap h3,
  .sub_cont:is(.product, .quality, .pack) .s_tit h3 {
    /* 1280px 약 70px → 480px 약 34px */
    font-size: clamp(3.2rem, calc(1.24rem + 4.5vw), 7rem);
    line-height: 1.35;
  }


  /* -------------------------------------------------------
     CTA - 이번 12페이지에만 적용
  ------------------------------------------------------- */
  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) {
    padding-bottom: 10rem;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_inner {
    height: 52rem;
    border-radius: 3.5rem;
    gap: 6rem;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_tit h4 {
    /* 1280px 약 60px → 480px 약 30px */
    font-size: clamp(2.8rem, calc(1.2rem + 3.75vw), 6rem);
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_tit p {
    font-size: 1.8rem;
  }


  /* =======================================================
     RFID BASICS
  ======================================================= */
  .sub_cont.basic {
    width: calc(100% - 4rem);
    grid-template-columns: 26rem minmax(0, 1fr);
    gap: 0 6rem;
    margin: 18rem auto;
  }

  .sub_cont.basic .cont_desc {
    gap: 24rem;
  }

  .sub_cont.basic .desc_tit h3 {
    /* 1280px 약 64px → 480px 약 32px */
    font-size: clamp(3rem, calc(1.28rem + 4vw), 6.4rem);
    line-height: 1.2;
  }

  .sub_cont.basic .chapter {
    gap: 7rem;
  }

  .sub_cont.basic .ch3 .card_wrap > li {
    gap: 2.5rem;
    padding: 2.5rem;
  }

  .sub_cont.basic .ch3 .card_wrap > li .step_tit {
    width: 20rem;
  }

  .sub_cont.basic .ch11 .card_wrap {
    gap: 2rem;
  }

  .sub_cont.basic .ch11 .card_wrap > li {
    padding: 2.5rem;
  }

  .sub_cont.basic .desc_wrap > li {
    gap: 3rem;
  }

  .sub_cont.basic .desc_wrap > li .tit {
    width: 21rem;
  }

  .sub_cont.basic .ver_desc {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 2rem;
  }

  .sub_cont.basic .ver_desc > li strong,
  .sub_cont.basic .ver_desc > li strong span {
    font-size: clamp(3.8rem, calc(2.56rem + 3vw), 6.4rem);
  }

  .sub_cont.basic .num_desc {
    column-gap: 5rem;
  }

  .sub_cont.basic .top_desc {
    gap: 4rem;
  }

  .sub_cont.basic .bot_desc > li {
    gap: 4rem;
  }

  .sub_cont.basic .bot_desc > li span {
    width: 21rem;
  }

  .sub_cont.basic .desc_boc {
    padding: 5rem;
  }

  .sub_cont.basic .desc_boc strong {
    font-size: clamp(3.2rem, calc(2rem + 2.35vw), 5rem);
  }

  .sub_cont.basic .ch10 > ul {
    gap: 5rem;
  }


  /* =======================================================
     RFID PRODUCTS
  ======================================================= */
  .sub_cont.product {
    gap: 16rem;
  }

  .sub_cont.product .s1 {
    gap: 8rem;
  }

  .sub_cont.product .s1 .s1_desc {
    padding: 0 5rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap {
    gap: 9rem;
    padding: 5rem 0;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li {
    gap: 5rem;
    padding: 0 4rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li.line::after {
    bottom: -4.5rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li .desc_tit {
    gap: 3rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li p {
    max-width: 52rem;
  }

  .sub_cont.product .s2 .rolling_track p {
    font-size: clamp(8rem, calc(-0.4rem + 17.5vw), 22rem);
  }

  .sub_cont.product .s3 .s3_desc,
  .sub_cont.quality .s4 .s4_desc {
    gap: 14rem;
  }

  .sub_cont.product .s3 .s3_desc > li,
  .sub_cont.quality .s4 .s4_desc > li {
    gap: 7rem;
  }

  .sub_cont.product .s3 .s3_desc > li .img_wrap,
  .sub_cont.quality .s4 .s4_desc > li .img_wrap {
    width: 42%;
    height: 52rem;
  }

  .sub_cont.product .s3 .s3_desc > li .desc_txt,
  .sub_cont.quality .s4 .s4_desc > li .desc_txt {
    width: 42%;
  }

  .sub_cont.product .s3 .s3_desc > li .desc_txt strong,
  .sub_cont.quality .s4 .s4_desc > li .desc_txt strong {
    font-size: clamp(4.5rem, calc(3.2rem + 3.75vw), 8rem);
  }

  .sub_cont.product .s3 .s3_desc > li .desc_txt span,
  .sub_cont.quality .s4 .s4_desc > li .desc_txt span {
    font-size: clamp(2.6rem, calc(2.08rem + 1.5vw), 4rem);
  }


  /* =======================================================
     RFID QUALITY
  ======================================================= */
  .sub_cont.quality .s1,
  .sub_cont.quality .s2 {
    width: min(100%, 112rem);
    margin-bottom: 14rem;
  }

  .sub_cont.quality .s1 .s1_desc,
  .sub_cont.quality .s2 .s2_desc {
    width: 68rem;
    padding: 4rem;
  }

  .sub_cont.quality .s1 .img_wrap,
  .sub_cont.quality .s2 .img_wrap {
    width: 68rem;
    height: 44rem;
  }

  .sub_cont.quality .s1 .s1_desc .s_tit_wrap h3,
  .sub_cont.quality .s2 .s2_desc .s_tit_wrap h3 {
    font-size: clamp(3rem, calc(1.28rem + 4vw), 6.4rem);
  }

  .sub_cont.quality .s1 .s1_desc {
    top: 17rem;
  }

  .sub_cont.quality .s2 .s2_desc {
    top: 17rem;
  }

  .sub_cont.quality .s3 {
    gap: 10rem;
  }

  .sub_cont.quality .s3 .s3_desc {
    width: 100%;
    gap: 2rem;
  }

  .sub_cont.quality .s3 .s3_desc > div {
    gap: 4rem;
    padding: 4rem;
  }


  /* =======================================================
     PACKAGING DETAIL COMMON
     box / care / heat / hangtag / paper hanger / ribbon
     sticker / sublimation / blank paper
  ======================================================= */
  .sub_cont.pack {
    gap: 22rem;
  }

  .sub_cont.pack .s1 .img_wrap {
    width: 68rem;
    height: 44rem;
    margin-right: 6rem;
  }

  .sub_cont.pack .s1_desc {
    width: 82rem;
    margin-top: 16rem;
    margin-left: 4rem;
    padding: 4rem;
  }

  /* PHP inline width가 있는 두 페이지 */
  .sub_cont.paper_hanger .s1_desc,
  .sub_cont.ribbon .s1_desc {
    width: 82rem !important;
  }

  .sub_cont.pack .s1_desc h3 {
    font-size: clamp(3rem, calc(1.28rem + 4vw), 6.4rem);
    line-height: 1.25;
  }

  .sub_cont.pack .s1_desc p {
    font-size: 2rem;
    line-height: 1.6;
  }

  .sub_cont.pack .s2 {
    gap: 12rem;
  }

  .sub_cont.pack .s2_desc {
    gap: 1.5rem;
  }

  .sub_cont.pack .s2_desc > li {
    min-width: 0;
    padding: 2.5rem;
  }

  .sub_cont.pack .s2_desc > li .desc_top {
    gap: 1.5rem;
  }

  .sub_cont.pack .s2_desc > li .desc_top img {
    width: 6rem;
    height: 6rem;
  }

  .sub_cont.pack .s2_desc > li .desc_top strong {
    font-size: 2.6rem;
  }

  .sub_cont.pack .s3 {
    gap: 10rem;
  }

  .sub_cont.pack .s3_desc {
    width: 100%;
    gap: 2rem;
  }

  .sub_cont.pack .s3_desc > li {
    grid-template-columns: 32rem minmax(0, 1fr);
    column-gap: 4rem;
    padding: 4rem;
  }

  .sub_cont.pack .s3_desc > li .txt_wrap {
    grid-template-columns: 10rem minmax(0, 1fr);
  }

  .sub_cont.pack .s3_desc > li strong {
    font-size: clamp(4.5rem, calc(2.88rem + 4vw), 8rem);
  }

  .sub_cont.pack .s3_desc > li span {
    font-size: 2.6rem;
  }
}


/* =========================================================
   1024px 이하
========================================================= */
@media (max-width: 1024px) {

  /* -------------------------------------------------------
     Sub visual
  ------------------------------------------------------- */
  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) {
    height: 100svh;
    min-height: 64rem;
  }

  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper,
	.news
  ) .sub_inner h2 {
    text-align: center;
  }


  /* -------------------------------------------------------
     Common
  ------------------------------------------------------- */
  .sub_cont:is(.product, .quality, .pack) {
    margin: 14rem auto;
  }

  .sub_cont:is(.product, .quality, .pack) .s_tit {
    flex-direction: column;
    align-items: flex-start;
    gap: 2.4rem;
  }

  .sub_cont:is(.product, .quality, .pack) .s_tit_wrap p.right,
  .sub_cont:is(.product, .quality, .pack) .s_tit p.right {
    text-align: left;
  }


  /* -------------------------------------------------------
     CTA
  ------------------------------------------------------- */
  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) {
    padding-bottom: 8rem;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_inner {
    height: 48rem;
    gap: 5rem;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_tit {
    width: calc(100% - 4rem);
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_tit p {
    text-align: center;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_wrap {
    gap: 2rem;
  }


  /* =======================================================
     RFID BASICS
  ======================================================= */
  .sub_cont.basic {
    display: block;
    width: calc(100% - 4rem);
    margin: 14rem auto;
  }

  .sub_cont.basic .side_menu {
    position: sticky;
    top: 8rem;
    z-index: 30;
    width: 100%;
    margin-bottom: 8rem;
    padding: 1.2rem 0;
    background-color: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(10px);
	transition: top 0.35s ease;
  }
  body:has(.header.hide) .sub_cont.basic .side_menu {
    top: 0;
  }
  .sub_cont.basic .side_menu .menu_list {
    width: 100%;
    flex-direction: row;
    gap: 0.8rem;
    padding-top: 1.2rem;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }

  .sub_cont.basic .side_menu .menu_list::-webkit-scrollbar {
    display: none;
  }

  .sub_cont.basic .side_menu .menu_list > li.line {
    display: none;
  }

  .sub_cont.basic .side_menu .menu_list > li:not(.line) {
    flex: 0 0 auto;
    gap: 0.8rem;
    padding: 0.9rem 1.2rem;
    border: 1px solid #ddd;
    border-radius: 10rem;
    background-color: #fff;
    white-space: nowrap;
  }

  .sub_cont.basic .side_menu .menu_list > li:not(.line) > span {
    width: auto;
  }

  .sub_cont.basic .side_menu .menu_list > li.active {
    border-color: #00194c;
    color: #00194c;
  }

  .sub_cont.basic .side_menu .menu_progress {
    margin-top: 1.2rem;
  }

  .sub_cont.basic .cont_desc {
    gap: 16rem;
  }

  .sub_cont.basic .chapter {
    gap: 6rem;
    scroll-margin-top: 22rem;
  }

  .sub_cont.basic .desc_badge {
    flex-wrap: wrap;
  }

  .sub_cont.basic .ch11 .card_wrap {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .sub_cont.basic .ch11 .card_wrap > li {
    width: 100%;
  }

  .sub_cont.basic .ver_desc {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 3rem 2rem;
  }

  .sub_cont.basic .num_desc {
    column-gap: 3rem;
  }

  .sub_cont.basic .top_desc {
    gap: 3rem;
  }

  .sub_cont.basic .desc_boc {
    padding: 4rem;
  }


  /* =======================================================
     RFID PRODUCTS
  ======================================================= */
  .sub_cont.product {
    gap: 13rem;
  }

  .sub_cont.product .s1 {
    gap: 6rem;
  }

  .sub_cont.product .s1 .s_tit {
    width: 100%;
  }

  .sub_cont.product .s1 .s1_desc {
    padding: 0;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap {
    gap: 7rem;
    padding: 4rem 0;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li {
    gap: 4rem;
    padding: 0 2rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li.line::after {
    bottom: -3.5rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li p {
    max-width: 48%;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li .desc_tit {
    flex: 1;
  }

  .sub_cont.product .s3 .s3_desc,
  .sub_cont.quality .s4 .s4_desc {
    gap: 10rem;
  }

  .sub_cont.product .s3 .s3_desc > li,
  .sub_cont.quality .s4 .s4_desc > li {
    gap: 5rem;
  }

  .sub_cont.product .s3 .s3_desc > li .img_wrap,
  .sub_cont.quality .s4 .s4_desc > li .img_wrap {
    width: 45%;
    height: 44rem;
  }

  .sub_cont.product .s3 .s3_desc > li .desc_txt,
  .sub_cont.quality .s4 .s4_desc > li .desc_txt {
    width: 45%;
  }


  /* =======================================================
     RFID QUALITY
  ======================================================= */
  .sub_cont.quality .s1,
  .sub_cont.quality .s2 {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-bottom: 0;
  }

  .sub_cont.quality .s1 .img_wrap,
  .sub_cont.quality .s2 .img_wrap {
    position: relative;
    z-index: 0;
    width: 80%;
    aspect-ratio: 8 / 5;
    margin: 0;
  }

  .sub_cont.quality .s1 .img_wrap {
    align-self: flex-end;
  }

  .sub_cont.quality .s2 .img_wrap {
    align-self: flex-start;
  }

  .sub_cont.quality .s1 .s1_desc,
  .sub_cont.quality .s2 .s2_desc {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    z-index: 1;
    width: 80%;
    margin-top: -20rem;
    padding: 4rem;
  }

  .sub_cont.quality .s1 .s1_desc {
    align-self: flex-start;
  }

  .sub_cont.quality .s2 .s2_desc {
    align-self: flex-end;
  }

  .sub_cont.quality .s3 {
    gap: 8rem;
  }

  .sub_cont.quality .s3 .s3_desc > div {
    gap: 3rem;
    padding: 3rem;
  }

  .sub_cont.quality .s3 .s3_desc > div strong {
    min-width: 8rem;
    font-size: 3rem;
  }


  /* =======================================================
     PACKAGING DETAIL COMMON
  ======================================================= */
  .sub_cont.pack {
    gap: 18rem;
  }

  .sub_cont.pack .s1 {
    display: flex;
    flex-direction: column;
  }

  .sub_cont.pack .s1 .img_wrap {
    position: relative;
    z-index: 0;
    align-self: flex-end;
    width: 82%;
    aspect-ratio: 8 / 5;
    margin: 0;
  }

  .sub_cont.pack .s1_desc {
    position: relative;
    z-index: 1;
    align-self: flex-start;
    width: 75%;
    margin: -15rem 0 0;
    padding: 4rem;
  }

  .sub_cont.paper_hanger .s1_desc,
  .sub_cont.ribbon .s1_desc {
    width: 82% !important;
  }

  .sub_cont.pack .s2 {
    gap: 8rem;
  }

  .sub_cont.pack .s2_desc {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
  }

  .sub_cont.pack .s2_desc > li {
    width: 100%;
    min-width: 0;
  }

  .sub_cont.pack .s3 {
    gap: 8rem;
  }

  .sub_cont.pack .s3_desc > li {
    grid-template-columns: 26rem minmax(0, 1fr);
    column-gap: 3rem;
    padding: 3rem;
  }

  .sub_cont.pack .s3_desc > li .txt_wrap {
    grid-template-columns: 8rem minmax(0, 1fr);
  }
}


/* =========================================================
   767px 이하
========================================================= */
@media (max-width: 767px) {
  br.mob {display:block;}
  /* -------------------------------------------------------
     Sub visual
  ------------------------------------------------------- */
  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) {
    min-height: 58rem;
  }

  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .sub_inner {
    gap: 3rem;
    padding: 0 1.5rem;
  }

  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper,
	.news
  ) .breadcrumb {
    max-width: 100%;
    height: 4.8rem;
  }

  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper,
	.news
  ) .breadcrumb > li.home a {
    width: 4.8rem;
  }

  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper,
	.news
  ) .dropdown_btn {
    gap: 1.2rem;
    padding: 0 1.2rem;
    font-size: 1.6rem;
  }

  /*
    원본 dropdown_menu a는 1.4rem이므로
    "원래 16px 이하" 예외에 해당해 기존 크기를 유지
  */


  /* -------------------------------------------------------
     Common
  ------------------------------------------------------- */
  .sub_cont:is(.product, .quality, .pack) {
    width: calc(100% - 3rem);
    margin: 10rem auto 12rem;
  }

  .sub_cont:is(.product, .quality, .pack) .s_tit_wrap {
    gap: 1.5rem;
  }

  .sub_cont:is(.product, .quality, .pack) .s_tit_wrap span,
  .sub_cont:is(.product, .quality, .pack) .s_tit span,
  .sub_cont:is(.product, .quality, .pack) .s_tit_wrap p,
  .sub_cont:is(.product, .quality, .pack) .s_tit p {
    font-size: 1.6rem;
  }

  .sub_cont:is(.product, .quality, .pack) br,
  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) br:not(.mob) {
    display: none;
  }


  /* -------------------------------------------------------
     CTA
  ------------------------------------------------------- */
  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) {
    padding-bottom: 5rem;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_inner {
    width: calc(100% - 3rem);
    height: auto;
    min-height: 0;
    padding: 5rem 2rem;
    border-radius: 2.4rem;
    gap: 3rem;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_tit {
    width: 100%;
    gap: 1.8rem;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_tit p {
    font-size: 1.6rem;
  }
  .cta_cont:is {
    .basic,
    .product,
    .quality
  } .cta_tit p {
    display:none;
  }
  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_wrap {
    width: 100%;
    flex-direction: column;
    gap: 1rem;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_wrap a {
    width: 100%;
    max-width: 32rem;
    min-width: 0;
    min-height: 4.8rem;
    padding: 1rem 2rem;
    font-size: 1.6rem;
    gap: 1.2rem;
  }


  /* =======================================================
     RFID BASICS
  ======================================================= */
  .sub_cont.basic {
    width: calc(100% - 3rem);
    margin: 10rem auto 12rem;
  }

  .sub_cont.basic br {
    display: none;
  }

  .sub_cont.basic .side_menu {
    top: 8rem;
    margin-bottom: 6rem;
    padding: 1rem 0;
  }

  .sub_cont.basic .side_menu .menu_list > li:not(.line) {
    font-size: 1.6rem;
  }

  .sub_cont.basic .cont_desc {
    gap: 12rem;
  }

  .sub_cont.basic .chapter {
    gap: 3rem;
    scroll-margin-top: 20rem;
  }

  .sub_cont.basic .desc_tit {
    gap: 2rem;
  }

  .sub_cont.basic .desc_tit span {
    font-size: 1.6rem;
  }

  .sub_cont.basic .chapter > span {
    font-size: 1.8rem;
  }

  .sub_cont.basic .txt_wrap {
    gap: 1.5rem;
  }

  .sub_cont.basic .txt_wrap > strong,
  .sub_cont.basic .table_wrap > strong,
  .sub_cont.basic .ch_desc > .txt_wrap strong {
    font-size: 2.4rem;
  }

  .sub_cont.basic .comment > span {
    font-size: 1.6rem;
  }

  .sub_cont.basic .comment > p {
    font-size: 1.8rem;
  }

  .sub_cont.basic .ch3 .card_wrap > li {
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
    padding: 2.4rem;
  }

  .sub_cont.basic .ch3 .card_wrap > li .step_tit {
    width: 100%;
  }

  .sub_cont.basic .ch11 .card_wrap > li {
    padding: 2.4rem;
  }

  .sub_cont.basic .ch11 .card_wrap > li strong {
    font-size: 2.4rem;
  }

  .sub_cont.basic .ch_desc {
    gap: 3rem;
  }

  .sub_cont.basic .ch_desc > .txt_wrap p {
    font-size: 1.8rem;
  }

  .sub_cont.basic .desc_wrap {
    gap: 2rem;
  }

  .sub_cont.basic .desc_wrap > li {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #eee;
  }

  .sub_cont.basic .desc_wrap > li:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }

  .sub_cont.basic .desc_wrap > li .tit {
    width: 100%;
  }

  .sub_cont.basic .desc_wrap > li .tit strong {
    font-size: 2.2rem;
  }

  .sub_cont.basic .table_wrap {
    -webkit-overflow-scrolling: touch;
  }

  .sub_cont.basic .table_wrap th,
  .sub_cont.basic .table_wrap td {
    padding: 1.3rem 1.5rem;
    font-size: 1.6rem;
  }

  .sub_cont.basic .table_wrap thead th {
    font-size: 1.6rem;
  }

  .sub_cont.basic .ver_desc {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3rem 1.5rem;
  }

  .sub_cont.basic .ver_desc > li p {
    font-size: 1.6rem;
  }

  .sub_cont.basic .num_desc {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .sub_cont.basic .list_desc {
    gap: 2rem;
  }

  .sub_cont.basic .list_desc > strong {
    font-size: 2.8rem;
  }

  .sub_cont.basic .list_desc ul {
    gap: 1rem;
  }

  .sub_cont.basic .st {
    gap: 3rem;
    padding: 4rem 0;
  }

  .sub_cont.basic .st_top > span {
    gap: 1.5rem;
    flex-wrap: wrap;
  }

  .sub_cont.basic .st_top > span strong {
    font-size: 3rem;
  }

  .sub_cont.basic .top_desc {
    flex-direction: column;
    gap: 2rem;
  }

  .sub_cont.basic .bot_desc > li {
    flex-direction: column;
    gap: 1rem;
  }

  .sub_cont.basic .bot_desc > li span {
    width: 100%;
  }

  .sub_cont.basic .desc_boc {
    padding: 3rem 2rem;
  }

  .sub_cont.basic .desc_boc p {
    font-size: 1.6rem;
  }

  .sub_cont.basic .ch10 > ul {
    flex-direction: column;
    gap: 4rem;
  }


  /* =======================================================
     RFID PRODUCTS
  ======================================================= */
  .sub_cont.product {
    gap: 10rem;
  }

  .sub_cont.product .s1 {
    gap: 5rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap {
    gap: 5rem;
    padding: 4rem 0;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li {
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
    padding: 0 1rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li.line::after {
    bottom: -2.5rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li p {
    max-width: none;
    font-size: 1.6rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li .desc_tit {
    width: 100%;
    gap: 2rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li .desc_tit span {
    font-size: 2.4rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li .desc_tit h5 {
    font-size: 2.8rem;
  }

  .sub_cont.product .s3 .s3_desc,
  .sub_cont.quality .s4 .s4_desc {
    gap: 8rem;
  }

  .sub_cont.product .s3 .s3_desc > li,
  .sub_cont.quality .s4 .s4_desc > li {
    flex-direction: column;
    align-items: stretch;
    gap: 3rem;
  }

  .sub_cont.product .s3 .s3_desc > li .img_wrap,
  .sub_cont.quality .s4 .s4_desc > li .img_wrap {
    width: 80%;
    height: auto;
    aspect-ratio: 4 / 3;
	margin: 0 auto;
  }

  .sub_cont.product .s3 .s3_desc > li .desc_txt,
  .sub_cont.quality .s4 .s4_desc > li .desc_txt {
    width: 80%;
    gap: 1rem;
	margin: 0 auto;
  }

  .sub_cont.product .s3 .s3_desc > li .desc_txt p,
  .sub_cont.quality .s4 .s4_desc > li .desc_txt p {
    font-size: 1.6rem;
  }


  /* =======================================================
     RFID QUALITY
  ======================================================= */
  .sub_cont.quality {
    gap: 12rem;
  }

  .sub_cont.quality .s1 .img_wrap,
  .sub_cont.quality .s2 .img_wrap,
  .sub_cont.quality .s1 .s1_desc,
  .sub_cont.quality .s2 .s2_desc {
    width: 100%;
  }

  .sub_cont.quality .s1 .s1_desc,
  .sub_cont.quality .s2 .s2_desc {
    margin-top: -3rem;
    padding: 3rem;
  }

  .sub_cont.quality .s1 .s1_desc p,
  .sub_cont.quality .s2 .s2_desc p {
    font-size: 1.6rem;
    line-height: 1.5;
  }

  .sub_cont.quality .s1 .s1_desc a,
  .sub_cont.quality .s2 .s2_desc a {
    min-height: 4.8rem;
    padding: 1rem 2rem;
    font-size: 1.6rem;
  }

  .sub_cont.quality .s3 {
    gap: 5rem;
  }

  .sub_cont.quality .s3 .s3_desc {
    gap: 1.2rem;
  }

  .sub_cont.quality .s3 .s3_desc > div {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
    padding: 2.4rem;
  }

  .sub_cont.quality .s3 .s3_desc > div strong {
    min-width: 0;
    font-size: 2.6rem;
  }

  .sub_cont.quality .s3 .s3_desc > div p {
    font-size: 1.6rem;
    line-height: 1.5;
  }

  .sub_cont.quality .s3 .s3_desc > div a {
    margin-left: 0;
    padding: 1rem 2rem;
    font-size: 1.6rem;
  }


  /* =======================================================
     PACKAGING DETAIL COMMON
  ======================================================= */
  .sub_cont.pack {
    gap: 12rem;
  }

  .sub_cont.pack .s1 .img_wrap {
    width: 100%;
	height:30rem;
    aspect-ratio: 4 / 3;
  }

  .sub_cont.pack .s1_desc {
    width: 100%;
    margin-top: 0;
    padding: 3rem;
	gap:2rem;
	box-shadow:none;
  }

  .sub_cont.paper_hanger .s1_desc,
  .sub_cont.ribbon .s1_desc {
    width: 100% !important;
  }

  .sub_cont.pack .s1_desc span {
    font-size: 1.6rem;
  }

  .sub_cont.pack .s1_desc p {
    font-size: 1.6rem;
    line-height: 1.6;
  }

  .sub_cont.pack .s2 {
    gap: 5rem;
  }

  .sub_cont.pack .s2_desc {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.2rem;
  }

  .sub_cont.pack .s2_desc > li {
    gap: 1.5rem;
    padding: 2rem;
  }

  .sub_cont.pack .s2_desc > li .desc_top {
    flex-direction: column;
    gap: 1rem;
  }

  .sub_cont.pack .s2_desc > li .desc_top img {
    width: 5rem;
    height: 5rem;
  }

  .sub_cont.pack .s2_desc > li .desc_top strong {
    font-size: 2.2rem;
  }

  .sub_cont.pack .s2_desc > li p {
    font-size: 1.6rem;
  }

  .sub_cont.pack .s3 {
    gap: 5rem;
  }

  .sub_cont.pack .s3_desc {
    gap: 1.2rem;
  }

  .sub_cont.pack .s3_desc > li {
    grid-template-columns: 1fr;
    gap: 2rem;
    padding: 2.4rem;
  }

  .sub_cont.pack .s3_desc > li .txt_wrap {
    grid-template-columns: 7rem minmax(0, 1fr);
    gap: 1.5rem;
  }

  .sub_cont.pack .s3_desc > li span {
    font-size: 2.2rem;
    text-align: left;
  }

  .sub_cont.pack .s3_desc > li p {
    font-size: 1.6rem;
    line-height: 1.6;
  }
}


/* =========================================================
   480px 이하
========================================================= */
@media (max-width: 480px) {

  /* -------------------------------------------------------
     Sub visual
  ------------------------------------------------------- */
  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) {
    min-height: 52rem;
  }

  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .sub_inner {
    gap: 2.4rem;
    padding: 0 1rem;
  }

  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .breadcrumb {
    height: 4.6rem;
  }

  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .breadcrumb > li.home a {
    width: 4.6rem;
  }

  .sub_top:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .dropdown_btn {
    gap: 0.8rem;
    padding: 0 1rem;
  }

  .sub_cont.product .s3 .s3_desc > li .img_wrap,
  .sub_cont.quality .s4 .s4_desc > li .img_wrap {
    width: 100%;
  }

  .sub_cont.product .s3 .s3_desc > li .desc_txt,
  .sub_cont.quality .s4 .s4_desc > li .desc_txt {
    width: 100%;
  }

  /* -------------------------------------------------------
     Common
  ------------------------------------------------------- */
  .sub_cont:is(.product, .quality, .pack) {
    width: calc(100% - 3rem);
    margin: 8rem auto 10rem;
  }

  .sub_cont:is(.product, .quality, .pack) .s_tit {
    gap: 1.8rem;
  }


  /* -------------------------------------------------------
     CTA
  ------------------------------------------------------- */
  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) {
    padding-bottom: 3rem;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_inner {
    padding: 4rem 2rem;
    border-radius: 2rem;
    gap: 2.8rem;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_tit {
    gap: 1.4rem;
  }

  .cta_cont:is(
    .basic,
    .product,
    .quality,
    .box,
    .care_label,
    .heat_seal,
    .hangtag,
    .paper_hanger,
    .ribbon,
    .sticker_label,
    .sublimation,
    .blank_paper
  ) .cta_wrap a {
    max-width: none;
  }


  /* =======================================================
     RFID BASICS
  ======================================================= */
  .sub_cont.basic {
    width: calc(100% - 3rem);
    margin: 8rem auto 10rem;
  }

  .sub_cont.basic .side_menu {
    margin-bottom: 4rem;
  }

  .sub_cont.basic .side_menu .menu_top {
    padding-bottom: 1rem;
  }

  .sub_cont.basic .side_menu .menu_list {
    gap: 0.6rem;
    padding-top: 1rem;
  }

  .sub_cont.basic .side_menu .menu_list > li:not(.line) {
    padding: 0.8rem 1rem;
  }

  .sub_cont.basic .cont_desc {
    gap: 9rem;
  }

  .sub_cont.basic .chapter {
    gap: 4rem;
    scroll-margin-top: 19rem;
  }

  .sub_cont.basic .comment {
    padding-left: 1.5rem;
  }

  .sub_cont.basic .ch3 .card_wrap > li,
  .sub_cont.basic .ch11 .card_wrap > li {
    padding: 2rem;
  }

  .sub_cont.basic .ver_desc {
    gap: 2.5rem 1rem;
  }

  .sub_cont.basic .num_desc {
    gap: 2.5rem;
  }

  .sub_cont.basic .list_desc > strong {
    font-size: 2.6rem;
  }

  .sub_cont.basic .st {
    padding: 3rem 0;
  }

  .sub_cont.basic .st_top > span strong {
    font-size: 2.6rem;
  }

  .sub_cont.basic .desc_boc {
    padding: 2.5rem 1.5rem;
  }


  /* =======================================================
     RFID PRODUCTS
  ======================================================= */
  .sub_cont.product {
    gap: 8rem;
  }

  .sub_cont.product .s1 {
    gap: 4rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap {
    gap: 4rem;
    padding: 3rem 0;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li {
    padding: 0;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li.line::after {
    bottom: -2rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li .desc_tit span {
    font-size: 2.2rem;
  }

  .sub_cont.product .s1 .s1_desc .desc_wrap > li .desc_tit h5 {
    font-size: 2.5rem;
  }

  .sub_cont.product .s3 .s3_desc,
  .sub_cont.quality .s4 .s4_desc {
    gap: 6rem;
  }

  .sub_cont.product .s3 .s3_desc > li,
  .sub_cont.quality .s4 .s4_desc > li {
    gap: 2.5rem;
  }

  .sub_cont.product .s3 .s3_desc > li .desc_txt,
  .sub_cont.quality .s4 .s4_desc > li .desc_txt {
    gap: 1.5rem;
  }


  /* =======================================================
     RFID QUALITY
  ======================================================= */
  .sub_cont.quality {
    gap: 9rem;
  }

  .sub_cont.quality .s1 .s1_desc,
  .sub_cont.quality .s2 .s2_desc {
    margin-top: 0;
    padding: 2.4rem;
  }

  .sub_cont.quality .s3 {
    gap: 4rem;
  }

  .sub_cont.quality .s3 .s3_desc > div {
    padding: 2rem;
  }


  /* =======================================================
     PACKAGING DETAIL COMMON
  ======================================================= */
  .sub_cont.pack {
    gap: 9rem;
  }

  .sub_cont.pack .s1_desc {
    padding: 2.4rem;
  }

  .sub_cont.pack .s2 {
    gap: 4rem;
  }

  .sub_cont.pack .s2_desc {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .sub_cont.pack .s2_desc > li {
    align-items: flex-start;
    gap: 1.2rem;
    padding: 2rem;
  }

  .sub_cont.pack .s2_desc > li .desc_top {
    flex-direction: row;
    align-items: center;
    gap: 1.2rem;
  }

  .sub_cont.pack .s2_desc > li .desc_top img {
    width: 4.8rem;
    height: 4.8rem;
  }

  .sub_cont.pack .s2_desc > li .desc_top strong {
    font-size: 2rem;
  }

  .sub_cont.pack .s2_desc > li p {
    text-align: left;
  }

  .sub_cont.pack .s3 {
    gap: 4rem;
  }

  .sub_cont.pack .s3_desc > li {
    gap: 1.5rem;
    padding: 2rem;
  }

  .sub_cont.pack .s3_desc > li .txt_wrap {
    grid-template-columns: 6rem minmax(0, 1fr);
    gap: 1rem;
  }

  .sub_cont.pack .s3_desc > li span {
    font-size: 2rem;
  }
}








/* =========================================================
   1280px 이하
========================================================= */
@media (max-width: 1280px) {

  /* -------------------------------------------------------
     Sub visual - 이번 5페이지에만 적용
  ------------------------------------------------------- */
  .sub_top:is(.contact, .partner, .sustain, .location) .sub_inner {
    gap: 5rem;
  }

  .sub_top:is(.contact, .partner, .sustain, .location) .sub_inner h2 {
    /* 1280px 약 80px → 480px 약 38px */
    font-size: clamp(3.6rem, calc(1.28rem + 5.25vw), 8rem);
    line-height: 1.15;
  }


  /* -------------------------------------------------------
     공통 제목
  ------------------------------------------------------- */
  .sub_cont:is(.contact, .partner, .sustain, .location, .location_detail)
    .s_tit_wrap h3,
  .sub_cont:is(.contact, .partner, .sustain, .location, .location_detail)
    .s_tit h3 {
    /* 1280px 약 64px → 480px 약 34px */
    font-size: clamp(3.2rem, calc(1.4rem + 3.9vw), 6.4rem);
    line-height: 1.3;
  }


  /* =======================================================
     CONTACT
  ======================================================= */
  .sub_cont.contact {
    width: calc(100% - 4rem);
    max-width: 120rem;
    margin: 12rem auto;
    gap: 10rem;
    border-radius: 4rem;
  }

  .sub_cont.contact .contact_desc {
    gap: 6rem;
  }

  .sub_cont.contact .contact_desc .s_tit {
    gap: 5rem;
  }

  .sub_cont.contact .contact_desc .form_wrap {
    width: 55rem;
  }

  .sub_cont.contact .contact_desc .form_wrap form {
    gap: 2.5rem;
  }

  .sub_cont.contact .contact_desc .form_wrap form .form_item,
  .sub_cont.contact .contact_desc .form_wrap form .select_box {
    gap: 1.5rem;
  }

  .sub_cont.contact .contact_desc .form_wrap form .form_item label {
    font-size: 1.8rem;
  }

  .sub_cont.contact .form_item.select .country_sel li,
  .sub_cont.contact .option_list li {
    font-size: 1.8rem;
  }

  .sub_cont.contact input,
  .sub_cont.contact textarea,
  .sub_cont.contact select,
  .sub_cont.contact .select_ex,
  .sub_cont.contact button {
    font-family: inherit;
    font-size: 1.6rem;
  }


  /* =======================================================
     CUSTOMERS & PARTNERS
  ======================================================= */
  .sub_cont.partner {
    width: calc(100% - 4rem);
    margin: 18rem auto;
    gap: 22rem;
  }

  .sub_cont.partner .s1 {
    gap: 10rem;
  }

  .sub_cont.partner .s1 .s1_desc {
    gap: 2rem;
  }

  .sub_cont.partner .s1 .s1_desc > li {
    gap: 2rem;
    padding: 4rem 3rem;
  }

  .sub_cont.partner .s1 .s1_desc > li strong {
    font-size: clamp(5rem, calc(3.6rem + 3.4vw), 8rem);
  }

  .sub_cont.partner .s1 .s1_desc > li span {
    font-size: 2.2rem;
  }

  .sub_cont.partner .s2 {
    gap: 14rem;
  }

  .sub_cont.partner .s2 .s2_desc {
    gap: 7rem;
  }

  .sub_cont.partner .s2 .s2_desc .logo_line {
    --logo-gap: 12rem;
    --logo-half-gap: 6rem;
    height: 4.5rem;
  }

  .sub_cont.partner .s3 {
    gap: 10rem;
  }

  .sub_cont.partner .s3 .s3_desc {
    width: 100%;
    gap: 2rem;
  }

  .sub_cont.partner .s3 .s3_desc > li {
    gap: 8rem;
    padding: 5rem 7rem;
  }

  .sub_cont.partner .s3 .s3_desc > li strong {
    font-size: clamp(5rem, calc(3.6rem + 3.4vw), 8rem);
  }

  .sub_cont.partner .s3 .s3_desc > li .txt_wrap span {
    font-size: 2.8rem;
  }


  /* =======================================================
     SUSTAINABILITY
  ======================================================= */
  .sub_cont.sustain {
    margin: 18rem auto;
    gap: 22rem;
  }

  .sub_cont.sustain .s1 {
    max-width: 120rem;
  }

  .sub_cont.sustain .s1 .s_tit {
    gap: 10rem;
  }

  .sub_cont.sustain .s1 .s_tit p {
    flex: 1;
    min-width: 0;
    font-size: 1.8rem;
  }

  .sub_cont.sustain .s2 {
    height: 34rem;
  }

  .sub_cont.sustain .s3 {
    max-width: 120rem;
  }

  .sub_cont.sustain .s3 .tab_menu {
    gap: 1.2rem;
    margin: 7rem auto 6rem;
  }

  .sub_cont.sustain .s3 .tab_menu > li {
    padding: 1rem 2rem;
    font-size: 1.8rem;
  }

  .sub_cont.sustain .s3 .s3_desc {
    width: 100%;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item {
    gap: 6rem;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item .img_wrap {
    width: 52%;
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap {
    flex: 1;
    min-width: 0;
    gap: 3.5rem;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap strong {
    font-size: clamp(3rem, calc(2rem + 2.3vw), 4.5rem);
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap p {
    font-size: 1.8rem;
  }


  /* =======================================================
     LOCATIONS LIST
  ======================================================= */
  .sub_cont.location {
    width: calc(100% - 4rem);
    margin: 18rem auto;
  }

  .sub_cont.location .tab_menu {
    gap: 1.2rem;
    margin: 6rem 0 8rem;
  }

  .sub_cont.location .tab_menu > li > button {
    min-width: 0;
    padding: 1.2rem 2.5rem;
    font-size: 1.8rem;
  }

  .sub_cont.location .cont_list .list_item {
    gap: 5rem;
  }

  .sub_cont.location .cont_list .list_item h5 {
    flex-shrink: 0;
    font-size: 4.2rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc {
    width: min(82%, 90rem);
  }

  .sub_cont.location .cont_list .list_item .item_desc > li {
    gap: 4rem;
    padding: 7rem 2rem 5rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .left {
    flex: 1;
    min-width: 0;
    gap: 3rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .left .txt_wrap strong {
    font-size: 2.4rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .left .txt_wrap p {
    font-size: 1.8rem;
    overflow-wrap: anywhere;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .office_map {
    width: 42%;
    height: auto;
    aspect-ratio: 5 / 3;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .office_map iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
  }


  /* =======================================================
     LOCATION DETAIL
  ======================================================= */
  .sub_cont.location_detail {
    width: calc(100% - 4rem);
    max-width: 120rem;
    margin: 18rem auto;
    gap: 12rem;
  }

  .sub_cont.location_detail .detail_desc {
    gap: 12rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap {
    gap: 8rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item {
    gap: 6rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item strong {
    font-size: 2.8rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc,
  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item ul {
    width: 72%;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc {
    gap: 4rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc p,
  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item .office_description {
    font-size: 1.8rem;
    line-height: 1.5;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc .img_wrap {
    height: auto;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc .img_wrap img {
    display: block;
    width: min(100%, 50rem);
    height: auto;
    aspect-ratio: 5 / 3;
    object-fit: cover;
    margin-left: auto;
  }

  .sub_cont.location_detail .detail_desc .office_video video {
    display: block;
    width: 100%;
    height: auto;
    max-height: 70rem;
    object-fit: contain;
  }

  .sub_cont.location_detail .detail_desc .glo_map {
    height: 50rem;
  }

  .sub_cont.location_detail .supplier_gallery .gallery_list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.5rem;
  }

  .sub_cont.location_detail .staff_gallery .gallery_list {
    gap: 1.5rem;
  }

  .sub_cont.location_detail .location_gallery .gallery_list img {
    display: block;
    width: 100%;
    height: auto;
  }
}


/* =========================================================
   1024px 이하
========================================================= */
@media (max-width: 1024px) {

  /* -------------------------------------------------------
     Sub visual
  ------------------------------------------------------- */
  .sub_top:is(.contact, .partner, .sustain, .location) {
    height: 100svh;
    min-height: 64rem;
  }

  .sub_top:is(.contact, .partner, .sustain, .location) .sub_inner h2 {
    text-align: center;
  }


  /* =======================================================
     CONTACT
  ======================================================= */
  .sub_cont.contact {
    width: calc(100% - 4rem);
    margin: 12rem auto;
    padding: 6rem 5rem;
    gap: 6rem;
  }

  .sub_cont.contact .contact_desc {
    flex-direction: column;
    gap: 7rem;
  }

  .sub_cont.contact .contact_desc .s_tit_wrap,
  .sub_cont.contact .contact_desc .form_wrap {
    width: 100%;
  }

  .sub_cont.contact .contact_desc .s_tit {
    gap: 3rem;
  }

  .sub_cont.contact .contact_desc .s_tit p br {
    display: none;
  }


  /* =======================================================
     CUSTOMERS & PARTNERS
  ======================================================= */
  .sub_cont.partner {
    margin: 14rem auto;
    gap: 18rem;
  }

  .sub_cont.partner .s_tit {
    flex-direction: column;
    align-items: flex-start;
    gap: 2.5rem;
  }

  .sub_cont.partner .s_tit p.right {
    text-align: left;
  }

  .sub_cont.partner .s1 {
    gap: 7rem;
  }

  .sub_cont.partner .s1 .s1_desc > li {
    flex-direction: column;
    gap: 1rem;
    padding: 3rem 2rem;
  }

  .sub_cont.partner .s1 .s1_desc > li span {
    text-align: center;
    font-size: 2rem;
  }

  .sub_cont.partner .s2 {
    gap: 10rem;
  }

  .sub_cont.partner .s2 .s2_desc {
    gap: 6rem;
  }

  .sub_cont.partner .s2 .s2_desc .logo_line {
    --logo-gap: 10rem;
    --logo-half-gap: 5rem;
    height: 4rem;
  }

  .sub_cont.partner .s3 {
    gap: 7rem;
  }

  .sub_cont.partner .s3 .s3_desc > li {
    gap: 5rem;
    padding: 4rem 5rem;
  }


  /* =======================================================
     SUSTAINABILITY
  ======================================================= */
  .sub_cont.sustain {
    margin: 14rem auto;
    gap: 18rem;
  }

  .sub_cont.sustain .s1 .s_tit {
    flex-direction: column;
    gap: 3rem;
  }

  .sub_cont.sustain .s1 .s_tit p {
    width: 100%;
  }

  .sub_cont.sustain .s2 {
    height: 30rem;
    background-attachment: scroll;
  }

  .sub_cont.sustain .s3 .s_tit {
    flex-direction: column;
    align-items: flex-start;
    gap: 2.5rem;
  }

  .sub_cont.sustain .s3 .tab_menu {
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1rem;
    margin: 5rem auto;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item {
    gap: 4rem;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item .img_wrap {
    width: 48%;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap {
    gap: 3rem;
  }


  /* =======================================================
     LOCATIONS LIST
  ======================================================= */
  .sub_cont.location {
    margin: 14rem auto;
  }

  .sub_cont.location .s_tit {
    flex-direction: column;
    align-items: flex-start;
    gap: 2.5rem;
  }

  .sub_cont.location .s_tit p.right {
    text-align: left;
  }

  .sub_cont.location .tab_menu {
    flex-wrap: nowrap;
    gap: 1rem;
    margin: 5rem 0 6rem;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }

  .sub_cont.location .tab_menu::-webkit-scrollbar {
    display: none;
  }

  .sub_cont.location .tab_menu > li {
    flex: 0 0 auto;
  }

  .sub_cont.location .tab_menu > li > button {
    padding: 1.1rem 2.2rem;
  }

  .sub_cont.location .cont_list .list_item {
    flex-direction: column;
    gap: 3rem;
  }

  .sub_cont.location .cont_list .list_item h5 {
    font-size: 3.8rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc {
    width: 100%;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li {
    gap: 3rem;
    padding: 5rem 2rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .office_map {
    width: 40%;
  }


  /* =======================================================
     LOCATION DETAIL
  ======================================================= */
  .sub_cont.location_detail {
    margin: 14rem auto;
    gap: 10rem;
  }

  .sub_cont.location_detail .detail_desc {
    gap: 10rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap {
    gap: 7rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item {
    flex-direction: column;
    gap: 3rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc,
  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item ul {
    width: 100%;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc .img_wrap img {
    width: min(100%, 60rem);
  }

  .sub_cont.location_detail .detail_desc .glo_map {
    height: 44rem;
  }

  .sub_cont.location_detail .supplier_gallery .gallery_list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}


/* =========================================================
   767px 이하
========================================================= */
@media (max-width: 767px) {

  /* -------------------------------------------------------
     Sub visual
  ------------------------------------------------------- */
  .sub_top:is(.contact, .partner, .sustain, .location) {
    min-height: 58rem;
  }

  .sub_top:is(.contact, .partner, .sustain, .location) .sub_inner {
    gap: 3rem;
    padding: 0 1.5rem;
  }

  .sub_top:is(.contact, .partner, .sustain, .location) .breadcrumb {
    max-width: 100%;
    height: 4.8rem;
  }

  .sub_top:is(.contact, .partner, .sustain, .location)
    .breadcrumb > li.home a {
    width: 4.8rem;
  }

  .sub_top:is(.contact, .partner, .sustain, .location) .dropdown_btn {
    gap: 1.2rem;
    padding: 0 1.2rem;
    font-size: 1.6rem;
  }


  /* =======================================================
     CONTACT
  ======================================================= */
  .sub_cont.contact {
    width: calc(100% - 3rem);
    margin: 8rem auto 10rem;
    padding: 4rem 2.5rem;
    gap: 4rem;
    border-radius: 2.5rem;
  }

  .sub_cont.contact .contact_desc {
    gap: 5rem;
  }

  .sub_cont.contact .contact_desc .s_tit_wrap {
    gap: 1.5rem;
  }

  .sub_cont.contact .contact_desc .s_tit {
    gap: 2rem;
  }

  .sub_cont.contact .contact_desc .s_tit br {
    display: none;
  }

  .sub_cont.contact .contact_desc .s_tit_wrap span,
  .sub_cont.contact .contact_desc .s_tit p {
    font-size: 1.6rem;
  }

  .sub_cont.contact .contact_desc .form_wrap form {
    gap: 2rem;
  }

  .sub_cont.contact .contact_desc .form_wrap form .form_item,
  .sub_cont.contact .contact_desc .form_wrap form .select_box {
    gap: 1rem;
  }

  .sub_cont.contact .contact_desc .form_wrap form .form_item label {
    font-size: 1.6rem;
  }

  .sub_cont.contact .contact_desc .form_wrap form .form_item input,
  .sub_cont.contact .contact_desc .form_wrap form .select_box select,
  .sub_cont.contact .country_sel,
  .sub_cont.contact .country_sel .select_ex {
    height: 4.8rem;
  }

  .sub_cont.contact .contact_desc .form_wrap form .form_item textarea {
    height: 16rem;
    padding: 1.5rem;
  }

  .sub_cont.contact .form_item.select .country_sel li,
  .sub_cont.contact .option_list li {
    font-size: 1.6rem;
  }

  .sub_cont.contact .option_list li {
    padding: 1.3rem 1.5rem;
  }

  .sub_cont.contact .contact_desc .form_wrap form .form_item.checkbox {
    align-items: flex-start;
  }

  .sub_cont.contact .contact_desc .form_wrap form .form_item.checkbox > label {
    align-items: flex-start;
    line-height: 1.5;
  }

  .sub_cont.contact .contact_desc .form_wrap form .form_item.checkbox input {
    flex-shrink: 0;
    width: auto;
    height: auto;
    margin-top: 0.3rem;
  }

  .sub_cont.contact .submit_btn {
    min-height: 4.8rem;
    padding: 1.2rem 2.4rem;
    font-size: 1.6rem;
  }


  /* =======================================================
     CUSTOMERS & PARTNERS
  ======================================================= */
  .sub_cont.partner {
    width: calc(100% - 3rem);
    margin: 10rem auto 12rem;
    gap: 12rem;
  }

  .sub_cont.partner br {
    display: none;
  }

  .sub_cont.partner .s1 {
    gap: 5rem;
  }

  .sub_cont.partner .s1 .s1_desc {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .sub_cont.partner .s1 .s1_desc > li {
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
    padding: 2.5rem;
  }

  .sub_cont.partner .s1 .s1_desc > li span {
    text-align: right;
    font-size: 1.8rem;
  }

  .sub_cont.partner .s2 {
    gap: 6rem;
  }

  .sub_cont.partner .s2 .s_tit {
    gap: 2rem;
  }

  .sub_cont.partner .s2 .s_tit p {
    font-size: 1.6rem;
    text-align: left;
  }

  .sub_cont.partner .s2 .s2_desc {
    gap: 4rem;
  }

  .sub_cont.partner .s2 .s2_desc .logo_line {
    --logo-gap: 8rem;
    --logo-half-gap: 4rem;
    height: 3.8rem;
  }

  .sub_cont.partner .s3 {
    gap: 5rem;
  }

  .sub_cont.partner .s3 .s3_desc {
    gap: 1rem;
  }

  .sub_cont.partner .s3 .s3_desc > li {
    gap: 2.5rem;
    padding: 2.5rem;
  }

  .sub_cont.partner .s3 .s3_desc > li strong {
    flex-shrink: 0;
  }

  .sub_cont.partner .s3 .s3_desc > li .txt_wrap {
    gap: 1rem;
  }

  .sub_cont.partner .s3 .s3_desc > li .txt_wrap span {
    font-size: 2.2rem;
  }

  .sub_cont.partner .s3 .s3_desc > li .txt_wrap p {
    font-size: 1.6rem;
  }


  /* =======================================================
     SUSTAINABILITY
  ======================================================= */
  .sub_cont.sustain {
    margin: 10rem auto 12rem;
    gap: 12rem;
  }

  .sub_cont.sustain .s1,
  .sub_cont.sustain .s3 {
    width: calc(100% - 3rem);
  }

  .sub_cont.sustain .s1 .s_tit {
    gap: 2rem;
  }

  .sub_cont.sustain .s1 .s_tit p {
    font-size: 1.6rem;
  }

  .sub_cont.sustain .s2 {
    height: 24rem;
  }

  .sub_cont.sustain .s3 .s_tit {
    gap: 2rem;
  }

  .sub_cont.sustain .s3 .s_tit p {
    font-size: 1.6rem;
  }

  .sub_cont.sustain .s3 .tab_menu {
    flex-wrap: nowrap;
    justify-content: flex-start;
    width: 100%;
    margin: 4rem 0 3rem;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }

  .sub_cont.sustain .s3 .tab_menu::-webkit-scrollbar {
    display: none;
  }

  .sub_cont.sustain .s3 .tab_menu > li {
    flex: 0 0 auto;
    padding: 1rem 1.8rem;
    font-size: 1.6rem;
    white-space: nowrap;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item.active {
    flex-direction: column;
    align-items: stretch;
    gap: 3rem;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item .img_wrap {
    width: 100%;
    aspect-ratio: 4 / 3;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap {
    width: 100%;
    gap: 2.5rem;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap p {
    font-size: 1.6rem;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap a {
    min-height: 4.8rem;
    padding: 1rem 2rem;
    font-size: 1.6rem;
  }


  /* =======================================================
     LOCATIONS LIST
  ======================================================= */
  .sub_cont.location {
    width: calc(100% - 3rem);
    margin: 10rem auto 12rem;
  }

  .sub_cont.location br {
    display: none;
  }

  .sub_cont.location .tab_menu {
    gap: 0.8rem;
    margin: 4rem 0 5rem;
    padding: 1rem 0;
  }

  .sub_cont.location .tab_menu > li > button {
    min-height: 4.6rem;
    padding: 1rem 1.8rem;
    font-size: 1.6rem;
  }

  .sub_cont.location .cont_list .list_item {
    gap: 2rem;
  }

  .sub_cont.location .cont_list .list_item h5 {
    font-size: 3rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li {
    flex-direction: column;
    gap: 3rem;
    padding: 4rem 0;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .left {
    gap: 3rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .left .txt_wrap {
    gap: 1.5rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .left .txt_wrap strong {
    font-size: 2.2rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .left .txt_wrap p {
    display: block;
    font-size: 1.6rem;
    line-height: 1.5;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .left .txt_wrap p span {
    display: inline-block;
    margin-right: 0.8rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .left a {
    align-self: flex-start;
    min-height: 4.8rem;
    padding: 1rem 2rem;
    font-size: 1.6rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .office_map {
    width: 100%;
    aspect-ratio: 5 / 3;
  }


  /* =======================================================
     LOCATION DETAIL
  ======================================================= */
  .sub_cont.location_detail {
    width: calc(100% - 3rem);
    margin: 10rem auto 12rem;
    gap: 8rem;
  }

  .sub_cont.location_detail .detail_desc {
    gap: 8rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap {
    gap: 5rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item {
    gap: 2rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item strong {
    font-size: 2.4rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc {
    gap: 3rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item .item_desc p,
  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item .office_description {
    font-size: 1.6rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item ul > li {
    gap: 1.5rem;
    padding: 1.8rem 1.5rem;
    font-size: 1.6rem;
    line-height: 1.5;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item ul > li span {
    width: 4.5rem;
    flex-shrink: 0;
  }

  .sub_cont.location_detail .detail_desc .glo_map {
    height: 36rem;
  }

  .sub_cont.location_detail .location_gallery {
    gap: 2rem;
  }

  .sub_cont.location_detail .gallery_title h4 {
    font-size: 2.6rem;
  }

  .sub_cont.location_detail .supplier_gallery .gallery_list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
  }

  .sub_cont.location_detail .staff_gallery .gallery_list {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .sub_cont.location_detail .location_back a {
    min-height: 4.8rem;
    padding: 1rem 2rem;
    font-size: 1.6rem;
  }
}


/* =========================================================
   480px 이하
========================================================= */
@media (max-width: 480px) {

  /* -------------------------------------------------------
     Sub visual
  ------------------------------------------------------- */
  .sub_top:is(.contact, .partner, .sustain, .location) {
    min-height: 52rem;
  }

  .sub_top:is(.contact, .partner, .sustain, .location) .sub_inner {
    gap: 2.4rem;
    padding: 0 1rem;
  }

  .sub_top:is(.contact, .partner, .sustain, .location) .breadcrumb {
    height: 4.6rem;
  }

  .sub_top:is(.contact, .partner, .sustain, .location)
    .breadcrumb > li.home a {
    width: 4.6rem;
  }

  .sub_top:is(.contact, .partner, .sustain, .location) .dropdown_btn {
    gap: 0.8rem;
    padding: 0 1rem;
  }


  /* =======================================================
     CONTACT
  ======================================================= */
  .sub_cont.contact {
    margin: 7rem auto 9rem;
    padding: 3rem 1.8rem;
    gap: 3.5rem;
    border-radius: 2rem;
  }

  .sub_cont.contact .contact_desc {
    gap: 4rem;
  }

  .sub_cont.contact .contact_desc .form_wrap form {
    gap: 1.8rem;
  }

  .sub_cont.contact .contact_desc .form_wrap form .form_item textarea {
    height: 14rem;
  }

  .sub_cont.contact .submit_btn {
    width: 100%;
    justify-content: center;
  }


  /* =======================================================
     CUSTOMERS & PARTNERS
  ======================================================= */
  .sub_cont.partner {
    margin: 8rem auto 10rem;
    gap: 9rem;
  }

  .sub_cont.partner .s1 {
    gap: 4rem;
  }

  .sub_cont.partner .s1 .s1_desc > li {
    padding: 2rem;
  }

  .sub_cont.partner .s1 .s1_desc > li strong {
    font-size: 4rem;
  }

  .sub_cont.partner .s1 .s1_desc > li span {
    font-size: 1.6rem;
  }

  .sub_cont.partner .s2 {
    gap: 5rem;
  }

  .sub_cont.partner .s2 .s2_desc {
    gap: 3rem;
  }

  .sub_cont.partner .s2 .s2_desc .logo_line {
    --logo-gap: 6rem;
    --logo-half-gap: 3rem;
    height: 3.5rem;
  }

  .sub_cont.partner .s3 {
    gap: 4rem;
  }

  .sub_cont.partner .s3 .s3_desc > li {
    align-items: flex-start;
    gap: 2rem;
    padding: 2rem;
  }

  .sub_cont.partner .s3 .s3_desc > li strong {
    font-size: 4rem;
  }

  .sub_cont.partner .s3 .s3_desc > li .txt_wrap span {
    font-size: 2rem;
  }


  /* =======================================================
     SUSTAINABILITY
  ======================================================= */
  .sub_cont.sustain {
    margin: 8rem auto 10rem;
    gap: 9rem;
  }

  .sub_cont.sustain .s2 {
    height: 20rem;
  }

  .sub_cont.sustain .s3 .tab_menu {
    margin: 3rem 0 2.5rem;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item.active {
    gap: 2.5rem;
  }

  .sub_cont.sustain .s3 .s3_desc .s3_item .txt_wrap {
    gap: 2rem;
  }


  /* =======================================================
     LOCATIONS LIST
  ======================================================= */
  .sub_cont.location {
    margin: 8rem auto 10rem;
  }

  .sub_cont.location .tab_menu {
    margin: 3rem 0 4rem;
  }

  .sub_cont.location .tab_menu > li > button {
    padding: 0.9rem 1.5rem;
  }

  .sub_cont.location .cont_list .list_item h5 {
    font-size: 2.8rem;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li {
    gap: 2.5rem;
    padding: 3rem 0;
  }

  .sub_cont.location .cont_list .list_item .item_desc > li .office_map {
    aspect-ratio: 4 / 3;
  }


  /* =======================================================
     LOCATION DETAIL
  ======================================================= */
  .sub_cont.location_detail {
    margin: 8rem auto 5rem;
    gap: 7rem;
  }

  .sub_cont.location_detail .detail_desc {
    gap: 5rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap {
    gap: 4rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item strong {
    font-size: 2.2rem;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item ul > li {
    flex-direction: column;
    gap: 0.8rem;
    padding: 1.5rem 0;
  }

  .sub_cont.location_detail .detail_desc .desc_wrap .desc_item ul > li span {
    width: auto;
  }

  .sub_cont.location_detail .detail_desc .glo_map {
    height: 30rem;
  }

  .sub_cont.location_detail .supplier_gallery .gallery_list {
    grid-template-columns: 1fr;
  }

  .sub_cont.location_detail .gallery_title h4 {
    font-size: 2.4rem;
  }

  .sub_cont.location_detail .location_back a {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

}