.sub {overflow: hidden;}
.subvisual {position: relative; height: 65rem;}
.subvisual::after {content: ""; display: block; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 100vw; height: 100%; background: rgba(0, 0, 0, 0.3);}
.subvisual-heading {text-align: left; row-gap: 3rem; position: absolute; left: 0; bottom: 13rem; width: 100%; z-index: 1;}
.subvisual-heading * {color: #fff;}
.sub-content {padding: 15.3rem 0 14.3rem;}
.sub-row--heading {position: relative;}
.sub-row--heading h4 {font-weight: 700; position: relative; z-index: 1;}
.sub-row--heading .logo-text {position: absolute; left: 53%; top: 50%; transform: translateY(-50%);}
.section-heading h6 {font-weight: 700;}
.sub .box-img {border-radius: 2rem; overflow: hidden;}
.sub .section-intro {position: relative; justify-content: space-between; column-gap: 4rem;}
.sub .section-intro .section-content {border-radius: 2rem; overflow: hidden; width: 48.5%; aspect-ratio: 7 / 4; flex-shrink: 0; align-self: baseline;}
.sub .section-intro .section-content img {width: 100%;}
.sub .section-intro .section-heading {padding-top: 3.7rem; row-gap: 5rem;}
.sub .section-intro .logo-text {position: absolute; top: 99%; left: -15.5%;}
.sub .gradient-list .list-title {display: flex; align-items: center; column-gap: 1.5rem; font-size: 2.2rem;}
.sub .gradient-list .list-title span {display: flex; align-items: center; justify-content: center; width: 3.6rem; height: 3.6rem; border-radius: 999px; background: linear-gradient(146deg, #0054A4 8.47%, #1C9F74 89.51%); color: #fff; font-size: 1.5rem; font-weight: 700; padding-top: 1px;}

/* About */
.sub-about .subvisual::after {background: url('../img/sub/subvisual-about.jpg') no-repeat center / cover;}
.sub-about .sub-content {padding-bottom: 0; padding-top: 0;}
.sub .content-text p + p {margin-top: 3.6rem}
.section-company {row-gap: 14.4rem; padding-bottom: 14.5rem; padding-top: 15.3rem}
.section-company .section-content {display: flex; flex-direction: column; row-gap: 10rem;}
.section-company .content-img {width: 135%;}
.section-company .content-img img {width: 100%;}
.section-career {position: relative; padding: 15.3rem 0 18.3rem; row-gap: 8rem;}
.section-career .logo-text {opacity: 0.3; -webkit-text-stroke-color: #fff;}
.section-career::after {content: ""; display: block; position: absolute; left: 50%; top: 0; transform: translateX(-50%); width: 100vw; height: 100%; background: url('../img/sub/about-career-img.jpg') no-repeat center / cover; z-index: -1;}
.section-career .career-list {row-gap: 3rem;}
.section-career .career-list li {position: relative; padding-left: 3rem; font-size: 2rem; color: #fff; word-break: keep-all;}
.section-career .career-list li::before {content: ""; display: inline-block; width: 1.5rem; height: 1.5rem; border-radius: 100px; box-shadow: inset 0 0 0 4px #0054A4; position: absolute; left: 0; top: 0.7rem;}
.section-career .career-list li:not(:last-child)::after {content: ""; display: inline-block; width: 1px; height: 0; transition: height .5s; background: #fff; opacity: 0.25; position: absolute; left: 0.75rem; top: 100%;}
.section-career .career-list li:not(:last-child).aos-animate::after {height: 3rem;}
.sub-about .section-organization {position: relative; padding: 16.3rem 0 16.3rem;}
.sub-about .section-organization .bg {position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 100vw; height: 100%; object-fit: cover; z-index: -1;}
.sub-about .section-organization .section-heading {margin-bottom: 5rem;}
.organization-wrap {max-width: 122rem; margin: 0 auto;}
.organization-wrap .director_wrap, .organization-wrap .lab_wrap {display: block; text-align: center; }
.organization-wrap .director_wrap {position: relative; margin-bottom: 5.5rem; }
.organization-wrap .director_wrap .director_oval {display: inline-block; background: linear-gradient(180deg, #0054A4 0%, #1C9F74 100%); line-height: 5.15em; border-radius: 999px; width: 30rem; font-weight: 600; position: relative; font-size: 2.6rem; color: #fff;}
.organization-wrap .director_wrap .director_oval::after {content: ""; display: block; width: calc(100% + 4rem); height: calc(100% + 4rem); border-radius: 999px; background: linear-gradient(180deg, #0054A4 0%, #1C9F74 100%); opacity: 0.2; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: -1;}
.organization-wrap .director_wrap::after {content: ""; background-color: #e0e0e0; height: calc(100% + 13.5rem); padding: 0.1px; position: absolute; z-index: -1; right: 50%; top: calc(100% + 2rem);}
.organization-wrap .director_wrap::before {content: ""; display: block; background: var(--darkgreen); width: 9px; height: 9px; position: absolute; z-index: 11; left: 50%; top: 70rem; transform: translate(-50%, -50%);}
.organization-wrap .director_group {position: absolute; top: 28%; transform: translateY(-50%); width: 50%; left: calc(50% + 8rem); z-index: 0;}
.organization-wrap .director_group .right {width: 100%;}
.organization-wrap .office_group {display: flex; align-items: center; margin-top: 2.5rem;}
.organization-wrap .team_wrap {column-gap: 22rem; padding-top: 4rem; position: relative;}
.organization-wrap .team_wrap::before {content: ""; display: inline-block; width: calc(100% - 26rem); height: 0.5px; background: #e0e0e0; position: absolute; left: 50%; top: 0; transform: translateX(-50%); z-index: -1;}
.organization-wrap .team_wrap > li {width: auto; position: relative; display: flex; flex-direction: column; row-gap: 2rem;}
.organization-wrap .left::after, .organization-wrap .right::after {content: ""; background-color: #e0e0e0; width: 0.5px; height: 4rem; padding: 0.1px; position: absolute; z-index: -1; left: 50%; bottom: 100%;}
.organization-wrap .right::after {right: 50%; left: auto;}
.organization-wrap .lightblue_box::before {content: ""; display: block; background: #fff; border: 1px solid #bde7ec; border-radius: 999px; width: 1.4rem; height: 1.4rem;  position: absolute; z-index: 5; top: 30px; }
.organization-wrap .right span::before {right: 100%; transform: translate(55%, -50%);}
.organization-wrap .left span::before {right: auto; left: 100%; transform: translate(-55%, -50%);}
.organization-wrap .gradient-box {display: inline-block; width: 26rem; background: #ddf0f2; border: 1px solid #bde7ec; text-align: center; color: var(--main-theme); border-radius: 999px; position: relative;}
.organization-wrap .subdirector_wrap {display: flex; align-items: center; justify-content: flex-start; margin-bottom: 4.5rem; position: relative;}
.organization-wrap .subdirector_wrap::after {content: ""; background-color: #e0e0e0; width: 40%; padding: 0.1px;  position: absolute; z-index: -1; right: 50%; top: 50%}
.organization-wrap .gradient-box {background: linear-gradient(180deg, #0054A4 0%, #1C9F74 100%); padding: 4px;}
.organization-wrap .gradient-box .white-box {background: #fff; border-radius: 999px;}
.organization-wrap .gradient-box span {display: flex; align-items: center; justify-content: center; background: linear-gradient(180deg, #0054A4 0%, #1C9F74 100%); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-size: 2.2rem; font-weight: 700; height: 4em;}
.organization-wrap .dot-list {padding-left: 2rem;}
.organization-wrap .dot-list li {font-size: 1.6rem; line-height: 1.8em;}

/* 기술 컨설팅 */
.subtab-menu {position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); z-index: 1; height: 7rem; width: 100%;}
.subtab-menu::after {content: ""; display: block; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 100vw; height: 1px; background: rgba(255, 255, 255, 0.20);}
.subtab-menu ul {display: flex; column-gap: 12.1rem; align-items: center; justify-content: center; height: 100%;}
.subtab-menu li {height: 100%; flex-shrink: 0;}
.subtab-menu li:nth-child(1) {position: relative;}
.subtab-menu li:nth-child(1)::after {content: ""; display: inline-block; width: 1px; height: 1.7rem; position: absolute; right: -6rem; background: #fff; opacity: 0.2; top: 50%; transform: translateY(-50%)}
.subtab-menu a {display: flex; align-items: center; justify-content: center; font-size: 2rem; font-weight: 700; color: #fff; height: 100%; opacity: 0.5;}
.subtab-menu li.active a {opacity: 1;}
.sub-consulting.intro .section-intro {margin-bottom: 28rem;}
.sub-consulting.intro .inner {position: relative; justify-content: space-between; column-gap: 4rem;}
.sub-consulting.intro .subvisual .inner {height: 100%;}
.sub-consulting .content-text p {font-size: 2.2rem;}
.sub-consulting .section-allinone {padding: 11rem 0; position: relative;}
.sub-consulting .section-allinone .section-heading {padding-bottom: 9rem;}
.sub-consulting .section-allinone.regenerate::after {content: ""; display: inline-block; background: url('../img/main/service-cell.png') no-repeat center / contain; width: 66.4rem; height: 65.4rem; position: absolute; top: -10%; right: -11px; pointer-events: none; animation: popping 3s 0.5s ease-in-out infinite alternate; z-index: -1}
.sub-consulting .section-allinone.cell::after {content: ""; display: inline-block; background: url('../img/sub/consulting-cell.png') no-repeat center / contain; width: 51.4rem; height: 85.3rem; position: absolute; top: -35%; left: 0; pointer-events: none; animation: popping 3s ease-in-out infinite alternate; z-index: -1;}
.sub-consulting .section-allinone.cell .section-heading {text-align: right;}
.sub-consulting .section-allinone .section-content {column-gap: 8rem;}
.sub-consulting .section-allinone .content-text {display: flex; flex-direction: column; row-gap: 7.5rem; flex: 1;}
.sub-consulting .icon-list {column-gap: 7.1rem; }
.sub-consulting .icon-list li {display: flex; flex-direction: column; align-items: center; }
.sub-consulting .icon-list li:not(:last-child) {position: relative;}
.sub-consulting .icon-list li:not(:last-child)::after {content: ""; display: inline-block; width: 0.5px; height: 8rem; background: #E0E0E0; position: absolute; right: -3.5rem; top: 50%; transform: translateY(-50%);}
.sub-consulting.intro .content-img {width: 48.5%; aspect-ratio: 7 / 4; flex-shrink: 0;}
.sub-consulting.intro .content-img img {width: 100%;}
.sub-consulting .icon-list .item-icon {width: 13rem; height: 13rem;}
.sub-consulting .icon-list .item-icon img {width: 100%;}
.sub-consulting .icon-list .item-text {font-size: 1.6rem; text-align: center; word-break: keep-all;}
.sub-consulting .subvisual::after {background: url('../img/sub/subvisual-consulting.jpg') no-repeat center / cover;}
.sub-consulting.medicine .sub-content {row-gap: 27rem; padding-bottom: 22rem;}
.sub-consulting .section-medicine {row-gap: 8rem;}
.sub-consulting .gradient-list {display: flex; flex-wrap: wrap; row-gap: 10rem; column-gap: 8rem;}
.sub-consulting .section-service .gradient-list > li {display: flex; flex-direction: column; width: calc((100% - 8rem) / 2);}
.sub-consulting .section-service .gradient-list .list-title {align-items: baseline;}
.sub-consulting .section-service .gradient-list .list-title span {flex-shrink: 0;}
.sub-consulting .gradient-list .list-title {margin-bottom: 2rem; font-weight: 700;}
.sub-consulting .gradient-list .list-content {display: flex; flex-direction: column; row-gap: 3.5rem;}
.sub-consulting .content-img {border-radius: 2rem; overflow: hidden; }
.sub-consulting .dot-list li {position: relative; padding-left: 1.6rem; font-size: 1.6rem;}
.sub-consulting .dot-list li::before {content: ""; display: inline-block; width: 3px; height: 3px; border-radius: 999px; background: var(--blue); position: absolute; left: 5px; top: 1rem;}
.sub-consulting.regenerate .section-intro {margin-bottom: 26.4rem;}
.sub-consulting.regenerate .section-intro:not(:first-child) {padding-top: 20rem;}
.sub-consulting .section-scope .section-heading {padding-bottom: 6rem;}
.sub-consulting .section-scope .gradient-list {column-gap: 5.4%}
.sub-consulting .section-scope .gradient-list li {column-gap: 4rem; width: 47.3%;}
.sub-consulting .section-scope .gradient-list .list-content {width: 42.8%; flex-shrink: 0;}
.sub-consulting .section-scope .list-content {width: 42.8%; aspect-ratio: 10 / 7;}
.sub-consulting .section-scope .content-img img {width: 100%;}
.sub-consulting .section-scope .list-text {padding-top: 2.5rem;}
.sub-consulting .section-scope .list-text p {font-size: 1.6rem; word-break: keep-all;}
.sub-consulting .section-organization {justify-content: space-between;}
.sub-consulting .section-organization .section-col {width: 44%;}
.sub-consulting .section-organization .section-heading {padding-bottom: 7.5rem;}
.sub-consulting .section-organization .gradient-list {flex-direction: column; row-gap: 3rem; position: relative;}
.sub-consulting .section-organization .gradient-list::before {content: ""; display: inline-block; width: 0.5px; height: calc(100% - 6rem); background: #E0E0E0; position: absolute; left: 1.8rem; transform: translateX(-50%); top: 3rem; z-index: -1;}
.sub-consulting .section-organization .gradient-list li {column-gap: 2rem;}
.sub-consulting .section-organization .gradient-list .list-title {margin-bottom: 0;}
.sub-consulting .list-box {display: flex; flex-direction: column; background: #fff; border: 1px solid #E0E0E0; border-radius: 1.5rem; padding: 2rem 2.5rem; flex: 1;}
.sub-consulting .list-box .box-title {font-size: 1.8rem; font-weight: 600;}
.sub-consulting .list-box .box-detail {font-size: 1.5rem; font-weight: 400; color: #666;}
.sub-consulting .section-service .section-heading {padding-bottom: 8rem;}
.sub-consulting .section-service .content-img {display: flex; align-items: center; justify-content: center; width: 100%; aspect-ratio: 10 / 3;}
.sub-consulting .section-service .gradient-list .list-content {flex: 1; justify-content: space-between;}

@keyframes popping {
  0% {
    transform: translateY(0%);
  }
  100% {
    transform: translateY(-8%);
  }
}


/* 화장품 */
.sub-cosmetic .subvisual::after {background: url('../img/sub/subvisual-cosmetic.jpg') no-repeat center / cover;}
.sub-cosmetic .sub-content {row-gap: 26.4rem;}
.sub-cosmetic .section-product {row-gap: 8rem;}
.sub-cosmetic .box {row-gap: 3rem;}
.sub-cosmetic .box-img {position: relative;}
.sub-cosmetic .box-img img {width: 100%;}
.sub-cosmetic .box-img .box-img-sample {position: absolute; left: 2rem; top: 1.7rem;}
.sub-cosmetic .box-text {row-gap: 1.5rem;}
.sub-cosmetic .box-text--heading h6 {font-weight: 600;}
.sub-cosmetic .box-text p {word-break: keep-all;}

/* 세포치료제 */
.sub-cell .subvisual::after {background: url('../img/sub/subvisual-cell.jpg') no-repeat center / cover;}
.sub-cell .sub-content {row-gap: 31.4rem;}
.sub-cell .section-medicine {row-gap: 17rem; position: relative;}
.sub-cell .section-medicine::after {content: ""; display: inline-block; width: 92rem; height: 57.5rem; position: absolute; top: -14.5rem; right: -13%; background: url('../img/sub/cell-figure-img.png') no-repeat center / contain; z-index: -1;}
.sub-cell .section-medicine .section-heading {row-gap: 7rem;}
.sub-cell .gradient-list {display: flex; flex-direction: column; row-gap: 2rem;}
.sub-cell .box-group--col5 {column-gap: 2rem;}
.sub-cell .box-group--col5 .box {width: calc((100% - 8rem) / 5);}
.sub-cell .box-group .box {aspect-ratio: 28 / 30;}
.sub-cell .box-group .box img {width: 100%;}

/* 문의하기 */
.sub-contact .subvisual::after {background: url('../img/sub/subvisual-contact.jpg') no-repeat center / cover;}
.sub-contact .sub-content {row-gap: 12.4rem;}
.sub-contact .sub-row--content {column-gap: 12rem;}
.sub-contact .section {width: calc((100% - 12rem) / 2); row-gap: 5rem;}
.map .root_daum_roughmap .wrap_controllers, .map .root_daum_roughmap .cont, .map .root_daum_roughmap .map_border {display: none;}
.map .root_daum_roughmap {width: 100%; aspect-ratio: 680 / 505; overflow: hidden; border-radius: 2rem;}
.map .root_daum_roughmap .wrap_map {height: 100%;}
.sub-contact .info-list {row-gap: 1rem;}
.sub-contact .info-list li {display: flex; align-items: flex-start; column-gap: 1.5rem;}
.sub-contact .info-list li svg {margin-top: 2px; flex-shrink: 0;}
.sub-contact .info-list li .address-text {display: inline-block; line-height: 1.5em; cursor: pointer;}
.sub-contact .checkbox {column-gap: 5px;}

/* 약관 */
.privacy-modal {position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; display: flex; align-items: center; justify-content: center; padding: 2rem; z-index: 1000; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .3s;}
.modal-bg {background: rgba(0, 0, 0, 0.6); position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.modal-content {background: #fff; border-radius: 1.5rem; padding: 2.5rem; max-width: 560px; width: 90%; max-height: 65vh; overflow: hidden; position: relative; display: flex; flex-direction: column;}
.modal-content .modal-header {padding: 1rem 0 1.5rem; border-bottom: 1px solid #E0E0E0; display: flex; align-items: center; justify-content: space-between;}
.modal-content .modal-header h6 {font-size: 2rem; font-weight: 600;}
.modal-close-btn {font-size: 2.2rem; font-weight: 600; background: transparent; border: none; cursor: pointer; }
.modal-content .modal-body {padding: 1.5rem 0; overflow-y: auto; flex: 1;}
.modal-content .modal-body::-webkit-scrollbar {width: 17px;}
.modal-content .modal-body::-webkit-scrollbar-thumb {background-color: #e0e0e0; border-radius: 10px; border: 6px solid #fff;}
.term-text {font-size: 1.6rem; word-break: keep-all;}
.term-text h6 {font-size: 1.8rem; font-weight: 600;}

.privacy-modal.active {opacity: 1; pointer-events: auto; visibility: visible;}

@media (hover: hover) {
    .sub-contact .info-list li:hover {text-decoration: underline; text-underline-offset: 3px;}
    .subtab-menu a:hover {text-decoration: underline; text-underline-offset: 3px; opacity: 1; text-decoration-thickness: 1px;}
}

@media (max-width: 1800px) {
    .sub .section-intro .logo-text {left: -8%; line-height: 1.2em;}
    .sub-consulting .section-allinone .section-content {column-gap: 4rem;}
    .sub-consulting .content-text p {font-size: 2rem;}

    .section-company .content-img {width: 112%;}
}

@media (max-width: 1440px) {
    .section-company .content-img {width: 106%;}

    .sub-consulting .gradient-list {column-gap: 4rem;}
    .sub-consulting .section-scope .gradient-list {column-gap: 3%; row-gap: 5rem;}
    .sub-consulting .section-scope .gradient-list li {column-gap: 2rem; width: 48.5%;}
    .sub-consulting .section-scope .list-text {padding-top: 1.5rem;}
    .sub-consulting .section-service .gradient-list > li {width: calc((100% - 4rem) / 2);}
    .sub-consulting.regenerate .section-intro:not(:first-child) {padding-top: 16rem;}
    
    .sub-contact .sub-row--content {column-gap: 8rem;}
    .sub-contact .section {width: calc((100% - 8rem) / 2);}
}

@media (max-width: 1280px) {
  .organization-wrap .team_wrap {column-gap: 0; justify-content: space-between;}
}

@media (max-width: 1024px) {
  .sub .section-intro .section-heading {row-gap: 3rem; padding-top: 2.5rem;}
  .sub .section-intro .section-heading p br {display: none;}
  .sub .section-intro .section-content {flex-shrink: 0;}

  .section-company {row-gap: 8rem; padding-bottom: 10rem;}
  .section-company .section-content {row-gap: 6rem;}
  .organization-wrap .director_wrap .director_oval {line-height: 4.8em;}
  .organization-wrap .director_wrap .director_oval::after {width: calc(100% + 2.5rem); height: calc(100% + 2.5rem);}

  .sub-consulting .content-text p br {display: none; word-break: keep-all;}
  .sub-consulting .icon-list {column-gap: 4.1rem;}
  .sub-consulting .icon-list li:not(:last-child)::after {right: -2.1rem;}
  .sub-consulting .section-allinone.regenerate::after {width: 58.4rem; height: 57.4rem;}
  .sub-consulting .section-allinone.cell::after {width: 45.4rem; height: 75.3rem; top: -30%;}
  .sub-consulting .section-allinone .section-content {column-gap: 4rem;}
  .sub-consulting .section-allinone .content-text {row-gap: 5rem;}
  .sub-consulting .gradient-list {row-gap: 6rem;}
  .sub-consulting .gradient-list .list-content {row-gap: 2rem;}
  .sub-consulting .section-organization .section-heading {padding-bottom: 3.5rem;}
  .sub-cell .section-medicine {row-gap: 12rem;}
  .sub-cell .section-medicine::after {width: 65%;}
}

@media (max-width: 768px) {
    .sub-content {padding: 8rem 0 10rem;}
    .sub .section-intro {flex-direction: column; row-gap: 4rem;}
    .sub .section-intro .section-heading {padding-top: 0;}
    .sub .section-intro .section-content {display: flex; align-items: center; justify-content: center; width: 100%; aspect-ratio: 7 / 3;}
    .sub .section-intro .logo-text {top: 105%;}

    .sub-about .section-organization {padding: 10rem 0;}
    .sub-about .section-career {padding: 10rem 0 10rem;}

    .subtab-menu ul {column-gap: 4rem;}
    .subtab-menu li:nth-child(1)::after {right: -2rem;}
    .sub-consulting.intro .inner {flex-direction: column; row-gap: 4rem;}
    .sub-consulting .section-allinone .section-heading {padding-bottom: 6rem;}
    .sub-consulting .section-allinone .section-content {flex-direction: column; row-gap: 6rem;}
    .sub-consulting .section-allinone .content-text {row-gap: 2rem;}
    .sub-consulting .content-img {width: 100%;}
    .sub-consulting .icon-list {justify-content: center;}
    .sub-consulting .section-allinone.cell .section-heading {text-align: left;}
    .sub-consulting .section-scope .gradient-list li {width: 100%;}
    .sub-consulting .section-scope .list-text {padding-top: 2rem;}
    .sub-consulting .section-scope .list-text p {font-size: 1.8rem;}
    .sub-consulting .section-organization .gradient-list::before {left: 2rem;}
    .sub .gradient-list .list-title span {font-size: 1.7rem; width: 4rem; height: 4rem;}
    .sub-consulting .section-organization .gradient-list li {column-gap: 1rem;}
    .sub-consulting .list-box {padding: 2rem 1.6rem;}
    .sub-consulting .list-box .box-title {font-size: 2rem;}
    .sub-consulting .list-box .box-detail {font-size: 1.7rem;}
    .sub-consulting .dot-list li {font-size: 1.8rem;}

    .sub-consulting .section-organization {flex-wrap: wrap; row-gap: 6rem;}
    .sub-consulting .section-organization .section-col {width: 100%;}
    .sub-consulting .section-service .section-heading {padding-bottom: 4rem;}
    .sub-consulting .section-service .gradient-list > li {width: 100%;}
    .sub-consulting.regenerate .section-intro {margin-bottom: 16rem;}
    .sub-consulting.regenerate .section-intro:not(:first-child) {padding-top: 8rem;}
    .sub-consulting.medicine .sub-content {padding-bottom: 12rem; row-gap: 20rem;}

    .sub-cell .sub-content {row-gap: 20rem;}
    .sub-cell .section-medicine {row-gap: 9rem;}
    .sub-cell .section-medicine .section-heading {row-gap: 3rem;}
    .sub-cell .box-group--col5 {column-gap: 1rem; row-gap: 1rem; justify-content: center;}
    .sub-cell .box-group--col5 .box {width: calc((100% - 2rem) / 3);}

    .sub-cosmetic .sub-content {row-gap: 20rem;}
    .sub-cosmetic .box-group--col3 .box {width: calc((100% - 3rem) / 3)}
    .sub-cosmetic .box-text--heading h6 {font-size: 2.4rem;}

    .sub-contact .sub-row--content {flex-direction: column-reverse; row-gap: 8rem;}
    .sub-contact .section {width: 100%;}
    .map .root_daum_roughmap {aspect-ratio: 680 / 350;}
    .sub-contact .info-list li svg {width: 2.4rem; height: 2.4rem;}
}

@media (max-width: 480px) {
    .subvisual {height: 48rem;}
    .subvisual-heading {bottom: 9rem;}
    .sub-content {padding: 8.5rem 0 10rem;}
    .sub .box-img {border-radius: 1.5rem;}
    .sub .section-intro .logo-text {line-height: 1.2em;}
    .sub-row--heading h4 br {display: none;}

    .section-company {row-gap: 4rem;}
    .section-company .content-text p {word-break: keep-all;}
    .section-company .content-text br {display: none;}
    .section-company .br-mb {display: block;}
    .section-career {row-gap: 4rem;}
    .section-career .career-list li {font-size: 1.8rem;}
    .section-career .career-list li:not(:last-child).aos-animate::after {height: 100%; }
    .section-career .career-list li:not(:last-child)::after {left: 0.7rem; top: 2.8rem;}
    .section-career .career-list li::before {top: 0.5rem;}
    .organization-wrap .director_wrap::after {height: calc(100% + 8rem); top: calc(100% + 1rem);}
    .organization-wrap .director_wrap .director_oval {line-height: 3.6em; width: 26rem; font-size: 2.2rem;}
    .organization-wrap .director_wrap .director_oval::after {width: calc(100% + 2rem); height: calc(100% + 2rem);}
    .organization-wrap .subdirector_wrap .gradient-box {width: 45%;}
    .organization-wrap .gradient-box {width: auto; padding: 3px;}
    .organization-wrap .gradient-box span {height: 2.8em; font-size: 2rem;}
    .organization-wrap .team_wrap {flex-direction: column; row-gap: 3rem; align-items: flex-end; padding-top: 0;}
    .organization-wrap .team_wrap::before {width: 0.5px; height: calc(100% - 10.8rem); left: auto; right: 50%; transform: translateX(-50%); top: 0;}
    .organization-wrap .team_wrap > li { width: 45%;}
    .organization-wrap .left::after, .organization-wrap .right::after {width: 4.4vw; height: 0.5px; left: auto; right: 100%; bottom: auto; top: 3.4rem;}
    .organization-wrap .mid::after {content: ""; display: inline-block; background: #e0e0e0; position: absolute; z-index: -1; width: 4.4vw; height: 0.5px; right: 100%; top: 3.4rem;}
    .organization-wrap .dot-list {padding-left: 0;}

    .subtab-menu a {font-size: 1.7rem;}
    .sub .gradient-list .list-title {column-gap: 0.8rem; align-items: flex-start;}
    .sub .gradient-list .list-title span {font-size: 1.5rem; width: 3.2rem; height: 3.2rem; flex-shrink: 0;} 
    .sub .gradient-list .list-title {font-size: 2rem;}
    .sub-consulting .section-organization .gradient-list::before {left: 1.6rem; top: 0;}
    .sub-consulting.intro .sub-content {padding-bottom: 0;}
    .sub-consulting.intro .content-img {width: 100%;}
    .sub-consulting .gradient-list .list-title {margin-bottom: 1rem; align-items: flex-start;}
    .sub-consulting .icon-list {column-gap: 2.1rem;}
    .sub-consulting .icon-list li {width: calc((100% - 4.2rem) / 3);}
    .sub-consulting .icon-list li:not(:last-child)::after {right: -1.05rem;}
    .sub-consulting .icon-list .item-icon {width: 10rem; height: 10rem;}
    .sub-consulting .section-allinone.regenerate::after {width: 34.4rem; height: 33.4rem;}
    .sub-consulting .section-allinone .content-text {row-gap: 1rem;}
    .sub-consulting .section-allinone .section-content {row-gap: 4rem;}
    .sub-consulting .section-scope .gradient-list li {flex-direction: column; row-gap: 2rem;}
    .sub-consulting .section-scope .gradient-list .list-content {width: 100%;}
    .sub-consulting .section-scope .list-text {padding-top: 0;}

    .sub-cell .sub-content {row-gap: 28rem;}
    .sub-cell .gradient-list {row-gap: 1.5rem;}
    .sub-cell .section-medicine::after {width: 85%; height: 23%; top: 2%; right: -20%; opacity: 0.5}
    .sub-cell .box-group--col5 .box {width: calc((100% - 1rem) / 2);}

    .sub-cosmetic .section-product {row-gap: 4rem;}
    .sub-cosmetic .box-group--col3 {row-gap: 6rem;}
    .sub-cosmetic .box-group--col3 .box {width: 100%;}

    .sub-contact .sub-content {row-gap: 6rem;}
    .sub-contact .sub-row--content {row-gap: 8rem;}
    .sub-contact .section {row-gap: 3rem;}

    .board .table-top {flex-direction: column; row-gap: 1.5rem; align-items: flex-start;}
    .board .table-top .bo_sch_wrap {width: 100%;}
    .board .binfo {row-gap: 1rem;}
    .board .binfo svg {width: 2rem; height: 2rem;}
    .board .board_view_contents {padding: 3rem 1rem; min-height: 24rem;}

    .modal-content {max-height: 80vh;}
}

/* 로그인화면 */
.form-row .label {display: flex; align-items: center; font-weight: 500;}
.form-row .label label {line-height: 1.2;}
.member-wrap {overflow: hidden;}
.member-wrap, .member-wrap.mbskin {height: 100%; max-width: 650px; width: 90%; margin-top: 10rem; margin-bottom: 8rem; margin-left: auto; margin-right: auto;}
.member-wrap .form-section {display: flex; flex-direction: column; row-gap: 3rem;}
.member-wrap .logo {max-width: 20rem; margin: 0 auto; margin-bottom: 2rem;}
.member-wrap .logo img {width: 100%;}
.member-wrap h1 {position: static; margin-bottom: 50px; text-align: center; }
.member-wrap h1 a {display: flex; align-items: center; justify-content: center; margin-bottom: 25px;}
.member-wrap.mbskin .mbskin-box {border: 0;}
.member-wrap .form-row {display: flex; flex-direction: column; row-gap: 1.2rem;}
.member-wrap .label {font-size: 1.6rem;}
.member-wrap .login_form {margin-bottom: 4rem;}
.member-wrap #login_fs {padding: 0;}
.member-wrap .input_wrap {width: 100%;}
.member-wrap .input_wrap:nth-child(2) {margin-bottom: 8px;}
.member-wrap .input_item.valid::before {content: ''; position: absolute; top: -1px; right: -1px; left: -1px; bottom: -1px; border: 1px solid var(--main-theme); z-index: 3; border-radius: 12px}
.member-wrap .input_item input {box-sizing: border-box;}
.member-wrap .checkbox_wrap {display: flex; align-items: center; margin: 0; column-gap: 3rem;}
.member-wrap.mbskin form .btn_wrap {margin-top: 1.5rem;}
.member-wrap .login_info {display: flex; align-items: center; justify-content: center; column-gap: 2.5rem; text-align: center;}
.member-wrap .login_info a {font-size: 1.6rem;}
.member-wrap.mbskin .section-row--heading h2 {margin-bottom: 1.5rem;}
.member-wrap.--login .form-row--btn {flex-direction: column; row-gap: 0.5rem;}
.member-wrap form .ubtn {color: #fff; background: var(--black); border-radius: 10px; font-size: 1.5rem; padding: 1.6rem 2.5rem; transition: 0.15s;}
.member-wrap .ubtn {width: 100%; }

.sub .member-wrap {
    padding-top: 4rem;
}

/* [KSR 2025.12.19] 영문 번역 추가 */
.sub-en * {word-break: keep-all;}
.sub-en .font-18 {font-size: 1.7rem;}
.sub-en .organization-wrap .gradient-box span {padding: 0 6px;}

.sub-en.sub-consulting .content-text p {font-size: 2rem;}

.sub-en.sub-consulting .section-organization .section-heading {height: 25.5rem;}
.sub-en.sub-consulting .section-organization .gradient-list::before {height: 82%; top: 10%;}

@media (max-width: 768px) {
  .sub-en.sub-consulting .section-organization .section-heading {height: auto;}
}

@media (max-width: 640px) {
  .sub-en.sub-consulting .subvisual {height: 53rem;}
  .sub-en.sub-consulting .subvisual-heading {bottom: 16rem;}
  .sub-en.sub-consulting .subtab-menu {height: 12rem; }
  .sub-en.sub-consulting .subtab-menu ul {flex-wrap: wrap;}
  .sub-en.sub-consulting .subtab-menu li {height: 50%; width: 100%;}
  .sub-en.sub-consulting .subtab-menu li:nth-child(1)::after {width: 100%; height: 0.5px; right: auto; left: 50%; top: 100%; transform: translate(-50%, -50%);}

}

@media (max-width: 480px) {
  .sub-en .subvisual p br {display: none;}

  .sub-en .organization-wrap .subdirector_wrap {margin-bottom: 2.5rem;}
  .sub-en .organization-wrap .gradient-box span {padding: 0 2px; line-height: 1.2em; height: 3.8em; font-size: 1.8rem;}
  .sub-en.sub-consulting .section-organization .gradient-list::before {top: 0;}
}