/* common */

.contents {
    padding-top: 12.8rem;
}

.container {
    position: relative;
}

.content-wrap {
    padding-bottom: 12rem;
}

h2 {
    font-size: 6.4rem;
}

h3 {
    font-size: 4rem;
}

h4 {
    font-size: 3.2rem;
}

h5 {
    font-size: 2.4rem;
}

.sub-pg-title {
    padding: 8rem 0;
    width: 100%;
}

.sub-pg-title .title-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sub-pg-fr {
    width: 100%;
    flex: 1;
    padding-left: 4rem;
}

.sub-pg-fr .content-wrap {
    position: relative;
    width: auto;
    max-width: 40rem;
    margin-left: auto;
    padding-bottom: 5.5rem;
}

.sub-pg-fr .btn-wrap {
    position: absolute;
    top: 1.9rem;
    left: 0;
    width: 100%;
    max-width: 40rem;
}

.sub-pg-btn-label {
    font-size: 1.4rem;
    color: #6386AD;
    font-weight: bold;
}

.content-title {
    margin-bottom: 8rem;
}

.content-title p {
    margin-top: 2rem;
    line-height: 3.2rem;
    font-size: 2.4rem;
}

.banner-wrap {
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.banner-txt {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 40rem;
}

.banner-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    z-index: -1;
}

.banner-txt p {
    position: relative;
    font-size: 4rem;
    font-weight: bold;
    text-align: center;
    color: #fff;
    line-height: 1.25;
}

@media screen and (max-width: 1023.98px) {
    .banner-txt p {
        font-size: 3.2rem;
    }
}

@media screen and (max-width: 767.98px) {
    .contents {
        padding-top: 8.8rem;
    }
    
    .content-wrap {
        padding-bottom: 8rem;
    }

    h2 {
        font-size: 4rem;
    }

    h3 {
        font-size: 3.2rem;
    }

    .sub-pg-title {
        padding: 1.6rem 0 4rem;
    }

    .content-title {
        margin-bottom: 4rem;
    }

    .content-title p {
        font-size: 1.6rem;
        line-height: 2.4rem;
    }

    .banner-txt {
        height: 13.2rem;
    }

    .banner-txt p {
        font-size: 2rem;
        line-height: 1.35;
    }

    .tag.tag-round {
        font-size: 1.6rem;
    }

}

/* developer */

.developer .page-title-wrap {
    padding-top: 6rem;
    padding-bottom: 12rem;
}

.developer .page-title-wrap .title h2 {
    font-size: 20rem;
    font-weight: bold;
    color: #000;
    text-align: left;
}

.developer .page-title-wrap .title h2 + p {
    font-size: 5.6rem;
    font-weight: bold;
    text-align: left;
    margin-top: 1.6rem;
}

.developer .page-title-wrap .title {
    margin-bottom: 8rem;
}

.developer .text p{
    font-size: 1.6rem;
    text-align: left;
    line-height: 1.5;
}

.developer .text p > strong {
    color: #000 !important;
}

.developer .text p + p {
    margin-top: 4.5rem;
}

.developer .banner-wrap {
    width: 100%;
    height: 100%;
    background-color: #192850;
}

.developer .banner-txt {
    height: 28.2rem;
}

.developer .content-wrap .project {
    padding: 12rem 0;
}

.developer .content-wrap .project .title-wrap {
    margin-bottom: 4rem;
}

.developer .content-wrap .project .title-wrap .place {
    font-size: 2.4rem;
    font-weight: bold;
    color: #6386AD;
    line-height: 1.345;
    margin-right: 1rem;
}

.developer .content-wrap .project .title-wrap .title + .place, .developer .content-wrap .project .title-wrap .title + .detail {
    margin-top: 1.6rem;
}

.developer .content-wrap .project .title-wrap .tag {
    vertical-align: super;
}

.developer .content-wrap .content-img-wrap {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
}

.developer .content-wrap .content-img-wrap .content-img {
    position: relative;
}

.developer .content-wrap .content-img-wrap .content-img .tag {
    position: absolute;
    top: 2rem;
    left: 2rem;
    width: 8.2rem;

}

.developer .content-wrap .content-txt p {
    font-size: 2rem;
    text-align: left;
    line-height: 1.5;
}

.developer .content-wrap .content-txt {
    padding-top: 4rem;
}


@media screen and (max-width:1023.98px) {
    .developer .page-title-wrap .title h2 {
        font-size: 12rem;
    }

    .developer .page-title-wrap .title h2 + p {
        font-size: 3.2rem;
    }

}

@media screen and (max-width:767.98px) {
    .developer .content-wrap .project {
        padding: 4rem 0;
    }

    .developer .page-title-wrap {
        padding-top: 1.6rem;
        padding-bottom: 4rem;
    }

    .developer .page-title-wrap .title {
        margin-bottom: 4rem;
    }
    
    .developer .page-title-wrap .title h2 {
        font-size: 6.4rem;
    }

    .developer .page-title-wrap .title h2 + p {
        font-size: 2.4rem;
    }

    .developer .content-wrap .project .title-wrap {
        margin-bottom: 2.4rem;
    }
    
    .developer .content-wrap .project .title-wrap .place {
        font-size: 2.4rem;
    }
    
    .developer .content-wrap .content-img-wrap {
        flex-direction: column;
        gap: .8rem;
    }

    .developer .text p {
        font-size: 1.6rem;
    }

    .developer .text p + p {
        margin-top: 2.4rem;
    }

    .developer .banner-txt {
        height: 16rem;
    }

    .developer .content-wrap .content-txt p {
        font-size: 1.6rem;
    }

    .developer .content-wrap .content-txt {
        padding-top: 2.4rem;
    }
}


/* 인사말 */

.greeting h3 {
    line-height: 1.4;
}

.greeting .grt-bg {
    width: 100%;
    height: 100%;
    padding: 8rem 0 6.8rem;
}

.greeting .grt-txt p:first-child{
    max-width: 65vw;
}

.greeting .grt-txt p:nth-child(2){
    max-width: 90vw;
}

.greeting .grt-txt p{
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: -1px;
    line-height: 1.5;
}

.greeting .grt-txt p + p {
    padding-top: 4rem;
}

.greeting .grt-txt .all {
    font-size: 2rem;
    padding-top: 5rem;
}

.greeting .sec1 .grt-bg {
    position: relative;
    border-top-right-radius: 49.5rem;
}

.greeting .sec1 .grt-bg .fl {
    max-width: 50%;
}

:lang(en) .greeting .sec1 .grt-bg .fl {
    max-width: 51%;
}

.greeting .sec1 .grt-bg .fr {
    position: absolute;
    bottom: 0;
    width: 50%;
    right: 0;
}

.greeting .sec1 .grt-bg .fr img{
    display: block;
    margin-left: auto;
    width: auto;
    height: 100%;
    object-fit: contain;
}

.greeting .sec2 {
    padding-top: 16rem;
}

.greeting .sec2 .grt-bg {
    border-top-left-radius: 53.6rem;
}

.greeting .sec2 .grt-bg .fl {
    position: absolute;
    bottom: -8rem;
    left: 0;
}

@media screen and (max-width:767.98px) {
    .greeting .grt-bg {
        padding: 4.4rem 0 8rem;
    }

    .greeting .sec1 .grt-bg {
        border-top-right-radius: 16rem;
    }

    .greeting .sec1 .grt-bg .fl, :lang(en) .greeting .sec1 .grt-bg .fl {
        max-width: 100%;
    }

    .greeting .sec1 .grt-bg .fr {
        position: relative;
        width: 100%;
        height: auto;
        margin-top: 4rem;
        margin-bottom: -8rem;
    }

    .greeting .grt-txt p:first-child{
        max-width: 78vw;
    }

    .greeting .grt-txt p:nth-child(2){
        max-width: 90vw;
    }

    .greeting .grt-txt p {
        font-size: 1.6rem;
    }

    .greeting .grt-txt p + p {
        padding-top: 2.4rem;
    }

    .greeting .grt-txt .all {
        font-size: 2rem;
        padding-top: 4rem;
    }
}

/* 미션&비전 */

.philosophy h3 {
    text-align: center;
    line-height: 6.4rem;
}

.philosophy h3 + p {
    font-size: 2rem;
    font-weight: 400;
    text-align: center;
    line-height: 3.6rem;
    padding-top: 2rem;
}

.philosophy .banner-wrap {
    background-image: url('../images/img_philosophy_01.png');
    background-color: rgba(255, 255, 255,0.8);
}

.philosophy .philo-wrap {
    padding-top: 8rem;
}

.philosophy .philo-cont .tag-wrap{
    width: 100%;
}

.philosophy .philo-cont .tag-lg {
    position: relative;
    display: block;
    width: 24rem;
    height: 6.4rem;
    padding: 1.8rem 4rem 1.7rem;
    margin: 0 auto;
    font-size: 2rem;
    font-weight: bold;
    line-height: 2.9rem;
    text-align: center;
    color: #fff;
    border-radius: 80rem;
}

.philosophy .philo-wrap .polygon-wrap {
    max-width: 120rem;
    padding-top: 8rem;
    margin: 0 auto;
}

.philosophy .philo-wrap .polygon-wrap .polygon {
    width: 100%;
    height: 12rem;
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    background: linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
    opacity: 0.05;
}

.philosophy .philo-cont [class ^="philo-cont__"] {
    padding-top: 4rem;
}

.philosophy .philo-cont .philo-cont__core {
    display: flex;
    justify-content: center;
    gap: 4rem;
    max-width: 140rem;
    margin: auto;
}

.card-list {
    display: flex;
    flex-wrap: wrap;
    gap:4rem;
}

.card-item {
    display: flex;
    flex-direction: column;
    padding: 4rem;
}

.card-item dt {
    font-size: 2.4rem;
}

.card-item dd {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    color: rgba(0,0,0,0.6);
}

.philosophy .philo-cont  .card-item {
    flex: 1;
    background-color: rgba(0, 226, 165, 0.05);
    row-gap: 4rem;
}

.philosophy .philo-cont  .card-item dt{
    font-weight: bold;
}

.philosophy .philo-cont  .card-item dd{
    margin-top: 2rem;
}

.philosophy .philo-cont  .card-item .img-wrap {
    width: auto;
    height: 12rem;
    margin-top: auto;
    text-align: right;
}

.philosophy .philo-cont .card-item .img-wrap img {
    height: 100%;
    object-fit: contain;
}


@media screen and (max-width: 960px) {
    .philosophy .philo-cont .philo-cont__core {
        flex-direction: column;
        gap: 2rem;
    }
}


@media screen and (max-width:767.98px) {
    .philosophy .philo-wrap {
        padding-top: 4rem;
    }

    .philosophy h3 {
        font-size: 2.4rem;
        line-height: 1.3;
    }

    .philosophy h3 + p {
        padding-top: 1.6rem;
        font-size: 1.6rem;
        line-height: 1.3;
    }

    .philosophy .philo-cont .tag-lg {
        width: 16rem;
        height: 4.8rem;
        padding: 1.5rem 3rem 1.4rem;
        font-size: 1.6rem;
        line-height: 1.9rem;
    }

    .philosophy .philo-wrap .polygon-wrap {
        padding-top: 4rem;
    }

    .philosophy .philo-wrap .polygon-wrap .polygon {
        height: 8rem;
    }

    .philosophy .philo-cont [class ^="philo-cont__"] {
        padding-top: 2.4rem;
    }

    .philosophy .philo-cont .philo-cont__core {
        gap: 1.6rem;
    }
    
    .philosophy .philo-cont .card-item {
        row-gap: .7rem;
        min-height: 26rem;
    }

    .philosophy .philo-cont .card-item dd {
        width: 80%;
        margin-top: .8rem;
    }
    
    .philosophy .philo-cont .card-item .img-wrap {
        height: 8rem;
    }


    
}


/* 연혁 */

.history-list-wrap {
    display: flex;
}

.history-list-img-wrap {
    width: calc(50% - 8rem);
}

.history-list-img-wrap h3 {
    padding-bottom: 2rem;
}

.history-list-img-wrap .history-list-img  {
    position: relative;
}

.history-list-img-wrap .history-list-img h3 {
    margin-bottom: 2rem;
}

.history-list-img-wrap .sticky-item {
    position: -webkit-sticky;
    position: sticky;
    top: 12.8rem;
    transition: opacity 0.5s ease-in-out; /* 페이드 효과 */
}

.history-list-img.active .sticky-item {
    opacity: 1;
}

.history-list-detail-wrap {
    position: relative;
}

.history-list-detail-wrap .line {
    position: absolute;
    top: 0;
    left: 8rem;
    max-height: 100%;
    background-color: #192850;
    width: 0.1rem;
}

.history-list-detail-wrap .line::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: .7rem;
    height: .7rem;
    background-color: #192850;
    border-radius: 50%;
}

.history-list-detail-wrap .history-list-detail {
    position: relative;
    margin-left: 8rem;
    padding-left: 8rem;
}

.history-list-detail-wrap .history-list-detail::before {
    content: '';
    position: absolute;
    left: 0;
    height: 100%;
    background-color: rgba(0,0,0,0.12);
    width: 0.1rem;
}

.history-list-detail-wrap .history-list-detail .detail .title {
    font-size: 2.4rem;
    font-weight: bold;
    color: #192850;
}

.history-list-detail-wrap .history-list-detail .detail ul {
    padding: 2rem 0 8rem;
}

.history-list-detail-wrap .history-list-detail .detail ul li{
    font-size: 1.6rem;
}

.history-list-detail-wrap .history-list-detail .detail ul li + li {
    padding-top: 1.6rem;
}

.history-list-detail-wrap .history-list-detail:last-of-type .detail:last-of-type ul {
    padding-bottom: 0;
}


/* 조직도 */

.organization .orgchart-wrap {
    width: 100%;
}

.organization .orgchart-wrap .orgchart img {
    display: block;
    width: 100%;
    max-width: 88rem;
    margin: 0 auto;
}

/* 계열사 */

.affiliates .banner-wrap {
    background-image: url('../images/img_affiliates_01.png');
}

.affiliates .logo-wrap {
    padding: 8rem 0;
}

.affiliates .logo-wrap .fl {
    width: 25%;
    min-width: 30rem;
    padding-right: 4rem;
}

.affiliates .logo-wrap .fr {
    width: 75%;
    max-width: calc(100% - 30rem);
}

.affiliates .logo-wrap .fr ul li p {
    padding-top: 2rem;
    font-size: 2rem;
    font-weight: bold;
}

.affiliates .logo-wrap .fr ul {
    display: flex;
    flex-wrap: wrap;
    row-gap: 8rem;
    column-gap: 4rem;
}

.affiliates .logo-wrap .fr ul li {
    flex: 0 0 calc(50% - 2rem);
    height: inherit;
}

.affiliates .logo-wrap .fr ul li .logo {
    border: 1px solid rgba(0,0,0,0.12);
    height: 20rem;
}

.affiliates .logo-wrap .fr ul li .logo a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    width: 100%;
    height: 100%;
    background-color: #fff;
}

.affiliates .logo-wrap .fr ul li .logo a img {
    width: auto;
    height: 8rem;
    object-fit: contain;
}


/* 오시는길 */
.map .content-title ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: 4rem;
    gap: 1.6rem;
}

.map .content-title ul li {
    display: flex;
    align-items: center;
    flex: 1 0 auto;
    width: auto;
    white-space: nowrap;
}

.map .content-title ul li:not(:first-child) {
    flex: 1 0 25%;
    width: 25%;
}

.map .content-title ul li img {
    width: 4rem;
    height: 4rem;
    object-fit: contain;
}

.map .content-title ul li span {
    font-size: 2rem;
    font-weight: 500;
    padding-left: .5rem;
    line-height: 1.4;
}

.map .map-wrap {
    margin-bottom: -.2rem;
}

.line {
  transition: height 0.2s ease-out; /* 부드러운 애니메이션 효과 */
}

@media screen and (max-width:920px) {

    .affiliates .logo-wrap .fr ul {
        flex-direction: column;

    }

    .history-list-img-wrap {
        width: calc(50% - 4rem);
    }

    .history-list-detail-wrap .history-list-detail {
        padding-left: 4rem;
        margin-left: 4rem;
    }

    .history-list-detail-wrap .line {
        left: 4rem;
    }
    
}

@media screen and (max-width:767.98px) {

    .history .content-wrap {
        overflow: hidden;
    }

    .history-list-img-wrap {
        width: 0;
    }

    .history-list-detail-wrap {
        width: 100%;
    }

     .history-list-detail-wrap .history-list-detail .ff {
        padding-top: 4rem;
     }

    .history-list-detail-wrap .history-list-detail .detail .title {
        font-size: 2.4rem;
    }

    .history-list-detail-wrap .history-list-detail .detail ul {
        padding: .8rem 0 4rem;
    }

    .history-list-detail-wrap .history-list-detail .detail ul li {
        font-size: 1.4rem;
    }

    .history-list-detail-wrap .history-list-detail .detail ul li + li {
        padding-top: .8rem;
    }

    .history-list-detail-wrap .history-list-detail {
        margin-left: 0em;
        padding-left: 2rem;
    }

    .history-list-detail-wrap .line {
        left: 0;
    }

    .history-list-detail-wrap .img-wrap {
        position: relative;
        height: 16rem;
        width: calc(100% + 5.4rem);
        margin: 0 -1.6rem 0 -3.8rem;
        margin-bottom: 4rem;
    }

    .history-list-detail-wrap .img-wrap img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
    }
    
    .history-list-detail-wrap .img-wrap .banner-bg {
        background-color: rgba(0,0,0, .2);
        z-index: 0;
    }

    .history-list-detail-wrap .img-wrap .banner-txt {
        height: 16rem;
    }
    
    .history-list-detail-wrap .img-wrap .banner-txt h3 {
        color: #fff;
    }

    .organization .orgchart-wrap .orgchart {
        text-align: center;
    }
    .organization .orgchart-wrap .orgchart img{
        max-width: 35.8rem;
        margin: 0 0 auto;
    }

    .affiliates .logo-wrap {
        padding: 4rem 0;
    }

    .affiliates .logo-wrap .fl, .affiliates .logo-wrap .fr {
        width: 100%;
        min-width: 100%;
        max-width: 100%;
        padding: 0;
    }

    .affiliates .logo-wrap .fl h3 {
        font-size: 2rem;
        padding-bottom: 2.4rem;
    }

    .affiliates .logo-wrap .fr ul {
        row-gap: 2.4rem;
    }

    .affiliates .logo-wrap .fr ul li {
        flex: 100%;
        width: 100%;
    }

    .affiliates .logo-wrap .fr ul li .logo {
        height: 12rem;
    }
    
    .affiliates .logo-wrap .fr ul li .logo a img {
        height: 4.8rem;
    }

    .affiliates .logo-wrap .fr ul li p {
        font-size: 1.6rem;
        padding-top: .8rem;
    }

    /* 오시는길 */
    .map .content-title ul {
        flex-direction: column;
    }

    .map .content-title ul li {
        flex: 100%;
        width: 100%;
        align-items: flex-start;
        white-space: initial;

    }

    .map .content-title ul li:not(:first-child) {
        flex: 100%;
        width: 100%;
    }

    .map .content-title ul li img {
        width: 2.4rem;
        height: 2.4rem;
        object-fit: contain;
    }

    .map .content-title ul li span {
        font-size: 1.6rem;
        font-weight: 500;
        padding-left: .8rem;
    }

    .map .map-wrap iframe {
        height: 40.8rem;
    }
}

/* 사업영역 */
.business .content-wrap {
    padding-top: 8rem;
}

.business-slider-wrap {
    overflow: hidden;
}

.business .business-slider {
    width: 100%;
    max-width: 1640px;
    margin: 0 auto;
    overflow: visible;
    touch-action: pan-y pinch-zoom;
}

.business-slider .slick-list {
    width: 100%;
    max-width: 1640px;
    padding: 0;
    margin: 0;
    overflow: visible;
    touch-action: pan-y pinch-zoom;
}

.business-slider .slick-slide {
    padding: 0 2rem;
}

.business-slider .slide-img-wrap {
    position: relative;
    width: 100%;
    padding-top: 50%;
}

.business-slider .slide-img-wrap .slide-img{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.business-slider .slide-img-wrap .slide-img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

.business-slider .slide-txt-wrap {
    padding-top: 4rem;
}

.business-slider .slide-txt {
    font-size: 2.4rem;
    font-weight: bold;
    padding-top: 2rem;

}

.business-slider .slick-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    border-radius: 50%;
    width: 6.4rem;
    height: 6.4rem;
    transition: left .3s ease , right .3s ease;
}

.business-slider .slick-prev::before ,.business-slider .slick-next::before  {
    content: none;
}

.business-slider .slick-prev {
    background: url('../images/icon_arrow_right_w.svg') no-repeat center/1.45rem rgba(0,0,0, .2);
    -webkit-transform: rotateY(180deg) translate(0, -50%);
    -ms-transform: rotateY(180deg) translate(0,-50%);
    transform: rotateY(180deg) translate(0, -50%);
    left: calc((100% - 1600px) / 2 - 3.2rem);
}

.business-slider .slick-next {
    background: url('../images/icon_arrow_right_w.svg') no-repeat center/1.45rem rgba(0,0,0, .2);
    right: calc((100% - 1600px) / 2 - 3.2rem);
}

.business-slider-wrap .custom-scrollbar {
    position: relative;
    height: .5rem;
    width: 100%;
    background-color: rgba(0,0,0,0.05);
    margin-top: 4rem;
    cursor: pointer;
}

.business-slider-wrap .scrollbar-thumb {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    background-color: #000;
    cursor: grab;
    transition: none;
}
    
    /* 드래그 중인 썸네일 커서 */
.business-slider-wrap .scrollbar-thumb.dragging {
    cursor: grabbing;
    transition: none !important;
}

.business-slider-wrap .scrollbar-thumb.transition-enabled {
    transition: left 0.3s ease;
}

.business .content-list-wrap {
    padding-top: 8rem;
}

.business .content-list-wrap ul {
    border-top: 2px solid #000;

}

.business .content-list-wrap ul li {
    position: relative;
    border-bottom: 1px solid rgba(0,0,0,0.12);
}

.business .content-list-wrap ul li .cont {
    display: flex;
    align-items: center;
    padding: 4rem 0;
}

.business .content-list-wrap ul li .cont .cont-info {
    display: flex;
    align-items: center;
}

.business .content-list-wrap ul li .cont .tag-wrap {
    padding-left: 4rem;
}

.business .content-list-wrap ul li .cont .title {
    padding: 0 4rem;
    flex: 1;
}

.business .content-list-wrap ul li .cont .title p {
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 4rem;
}

.business .content-list-wrap ul li .cont .period {
    font-size: 1.6rem;
    font-weight: 400;
    padding-right: 4rem;
}

.business .content-list-wrap ul li .cont .outlink {
    padding-right: 4rem;
}

/* 비즈니스 > view */
.business-view .banner-wrap {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(0,0,0, .03);
}

/* .business-view .banner-wrap .banner {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50% , -50%);
} */

.business-view .banner-wrap .banner {
    min-width: 80rem;
    max-width: 120rem;
}

.business-view .banner-wrap .banner img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.business-view .cont-detail-wrap {
    margin-top: 4rem;
}

.business-view .tag-wrap {
    padding-bottom: 2rem;
}

.business-view .fl {
    width: calc(50% + 5rem);
    padding-right: 10rem;
}

.business-view .fr  {
    width: calc(50% - 5rem);
}

.business-view .fl .title {
    font-size: 4rem;
    font-weight: bold;
}

.business-view .cont-detail-wrap .cont-detail dl{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
}

.business-view .cont-detail-wrap .cont-detail dl dt {
    width: 16rem;
    height: -webkit-fill-available;
    padding: 2.4rem 0 2.3rem;
    font-size: 1.6rem;
    font-weight: 400;
}

.business-view .cont-detail-wrap .cont-detail dl dd {
    width: calc(100% - 16rem);
    padding: 2.4rem 0 2.3rem;
    font-size: 1.6rem;
    line-height: 1.4;
    font-weight: bold;
}

.business-view .cont-detail-wrap .cont-detail dl dd .caption {
    font-size: 1.4rem;
    font-weight: 400;
    color: #ccc;
}

.business-view .cont-detail-wrap .cont-detail dl dt:not(:last-of-type), .business-view .cont-detail-wrap .cont-detail dl dd:not(:last-of-type) {
    border-bottom: 1px solid rgba(0,0,0,0.12);
}


/* 인재상 */

@keyframes dash {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}


.talent .circle-wrap {
    display: flex;
    margin: 0 1.563%;
}

.talent .circle-wrap .circle-cont {
    display: flex;
    flex-direction: column;
    margin: 0 -1.613%;
}

.talent .circle-wrap .circle-cont [class^="circle_"] {
    position: relative;
}

.talent .circle-wrap .circle-cont [class^="circle_"]::before {
    content: '';
    position: absolute;
    
}


.talent .circle-wrap .circle-cont [class^="circle_"] .title {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: 100%;
    height: calc(100% - .2rem);
    aspect-ratio: 1 / 1;
}

.talent .circle-wrap .circle-cont [class^="circle_"] .title > div:first-child{
    font-size: clamp(4.8rem, 6.255vw, 9.6rem);
    font-weight: bold;
}

.talent .circle-wrap .circle-cont [class^="circle_"] .title > div:last-child{
    font-size: clamp(1.6rem , 2.085vw, 3.2rem);
    font-weight: bold;
}

.talent .circle-wrap .circle-cont svg {
    width: 100%;
    height: calc(100% - .2rem);
    aspect-ratio:  1 / 1;
}

circle {
    stroke-dashoffset: 1000;
    stroke-width: 2;
    stroke-opacity: 1;
    stroke-dasharray: 5,5;
    animation: dash 10s linear infinite;
    vector-effect: non-scaling-stroke;
    transform-origin: center;
}

.talent .circle-wrap .circle-cont > .txt {
    padding-top: 2rem;
    font-size: 2rem;
    font-weight: 500;
    color: rgba(0,0,0,0.6);
    text-align: center;
    line-height: 1.4;
}



@media screen and (max-width: 1700px) {
    .business-slider .slick-next {
        right: 1.6rem;
    }

    .business-slider .slick-prev {
        left: 1.6rem;
    }
}

@media screen and (max-width: 1632px) {
    .business-slider .slick-slide {
        padding: 0 1.6rem;
    }
}

@media screen and (max-width: 1200px) {
    .talent .circle-wrap .circle-cont > .txt {
        font-size: 1.8rem;
    }
    
}

@media screen and (max-width: 1023.98px) {
    .talent .circle-wrap .circle-cont > .txt {
        font-size: 1.4rem;
    }
    
}

@media screen and (max-width: 820px) {
    .business-view .banner-wrap .banner {
        min-width: 100%;
    }
    
}

@media screen and (max-width: 767.98px) {
    /* 비즈니스 */

    .business .content-wrap {
        padding-top: 4rem;
    }

    .business-slider .slide-txt-wrap {
        padding-top: 2.4rem;
    }

    .business-slider .slide-txt {
        padding-top: 1.6rem;
        font-size: 2.4rem;
    }

    .business-slider-wrap .custom-scrollbar {
        margin-top: 2.4rem;
    }

    .business-slider .slick-arrow {
        width: 4rem;
        height: 4rem;
        background-size: .8rem;
    }

    .business-slider .slick-prev {
        left: 0.8rem;
    }

    .business-slider .slick-next {
        right: 0.8rem;
    }

    .business .content-list-wrap {
        padding-top: 4rem;
    }

    .business .content-list-wrap ul li .cont {
        flex-direction: column;
        align-items: flex-start;
        padding: 1.6rem 0;
    }

    .business .content-list-wrap ul li .cont .cont-info {

    }

    .business .content-list-wrap ul li .cont .tag-wrap {
        padding-left: 0;
        padding-bottom: .8rem;
    }

    .business .content-list-wrap ul li .cont .title {
        padding: 0 5rem .8rem 0;
        width: 100%;
    }

    .business .content-list-wrap ul li .cont .title p {
        font-size: 2.4rem;
        line-height: 3.2rem;
    }

    .business .content-list-wrap ul li .cont .period {
        font-size: 1.6rem;
        padding-right: 0;
    }

    .business .content-list-wrap ul li .cont .outlink {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 0;
        padding-right: 0;
    }
    
    /* 비즈니스 > view */

    .business-view .banner-wrap .banner {
        min-width: 100%;
        max-width: 100%;
    }

    .business-view .cont-detail-wrap {
        margin-top: 2.4rem;
    }

    .business-view .tag-wrap {
        padding-bottom: 1.6rem;
    }


    .business-view .fl {
        width: 100%;
        padding-right: 0;
    }

    .business-view .fr  {
        width: 100%;
        margin-top: 4rem;
    }

    .business-view .fl .title {
        font-size: 2.4rem;
    }

    .business-view .cont-detail-wrap .cont-detail dl{
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

    .business-view .cont-detail-wrap .cont-detail dl dt {
        width: 100%;
        padding: 1.6rem 0 .4rem;
        font-size: 1.6rem;
        height: initial;
    }

    .business-view .cont-detail-wrap .cont-detail dl dt:not(:last-of-type) {
        border-bottom: none;
    }

    .business-view .cont-detail-wrap .cont-detail dl dd {
        width: 100%;
        padding: .4rem 0 1.6rem;
        font-size: 1.6rem;

    }

    /* 인재상 */
    .talent .circle-wrap {
        flex-direction: column;
        margin: 0;
    }

    .talent .circle-wrap .circle-cont {
        flex-direction: row;
        align-items: center;
        margin: 0 0 1.6rem 0;
    }
    
    .talent .circle-wrap .circle-cont[data-aos] {
        transition-delay: 0.2s !important;
    }

    .talent .circle-wrap .circle-cont:last-child {
        margin-bottom: 0;
    }

    .talent .circle-wrap .circle-cont svg {
        width: 12rem;
        height: 12rem;
    }

    .talent .circle-wrap .circle-cont [class^="circle_"] .title > div:last-child {
        position: relative;
        bottom: .4rem;
    }

    .talent .circle-wrap .circle-cont > .txt {
        font-size: 1.6rem;
        text-align: left;
        padding: 0 0 0 1.6rem;
    }
    

}

/* 직무소개 */
.role .content-wrap {
    padding-top: 8rem;
}

.role .sub-pg-fr .content-wrap {
    padding-top: 0;
}

.role .content > .title{
    font-size: 2rem;
    font-weight: bold;
    padding-bottom: 4rem;
}

.role .card-list-wrap .card-list .card-item {
    flex: 1 0 calc(25% - 3rem);
    width: calc(25% - 3rem);
    height: inherit;
    padding: 4rem 3rem;
    border: 1px solid rgba(0,0,0,0.12);
    text-align: center;
}

.role .card-list-wrap.role-2 .card-list {
    flex-wrap: wrap;
}

.role .card-list-wrap.role-2 .card-list .card-item {
    flex: 0 1 calc(33.333% - 2.732rem);
    width: calc(33.333% - 2.732rem);
}

.role .card-list-wrap .card-list .card-item .img-wrap {
    height: 12rem;
    margin-bottom: 4rem;
}

.role .card-list-wrap .card-list .card-item .img-wrap img {
    width: auto;
    height: 100%;
    object-fit: contain;
}

.role .card-list-wrap .card-list .card-item .tit {
    font-size: 2.4rem;
    font-weight: bold;
    margin-bottom: 2rem;
}

.role .card-list-wrap .card-list .card-item .txt {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2.6rem;
    color: rgba(0,0,0,0.6);
}

/* 복리후생 */

.benefit .card-list-wrap .card-list {
    flex-wrap: wrap;
}

.benefit .card-list-wrap .card-list .card-item {
    flex: 0 0 calc(33.333% - 2.666rem);
    width: calc(33.333% - 2.666rem);
    row-gap: 2rem;
    min-height: 33.7rem;
    height: inherit;
    border: 1px solid rgba(0,0,0,0.12);
}

.benefit .card-list-wrap .card-list .card-item:nth-of-type(n+1):nth-of-type(-n+3) {
    transition-delay: 0s;
}

.benefit .card-list-wrap .card-list .card-item:nth-of-type(n+4):nth-of-type(-n+6) {
    transition-delay: .2s;
}
.benefit .card-list-wrap .card-list .card-item:nth-of-type(n+7):nth-of-type(-n+9) {
    transition-delay: .2s;
}

.benefit .card-list-wrap .card-list .card-item dt {
    font-weight: 500;
}

.benefit .card-list-wrap .card-list .card-item dd {
    margin-top: 1rem;
}

.benefit .card-list-wrap .card-list .card-item .img-wrap {
    width: 12rem;
    height: 12rem;
    margin-top: auto;
    margin-left: auto;
}

.benefit .card-list-wrap .card-list .card-item .img-wrap img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* 채용절차 */


@media screen and (max-width: 1100px) {
    .benefit .card-list-wrap .card-list .card-item,
    .role .card-list-wrap .card-list .card-item,
    .role .card-list-wrap.role-2 .card-list .card-item {
        flex: 0 0 calc(50% - 2rem);
        width: calc(50% - 2rem);
    }

    .benefit .card-list-wrap .card-list .card-item:nth-of-type(n+1):nth-of-type(-n+2) {
        transition-delay: 0s;
    }
    .benefit .card-list-wrap .card-list .card-item:nth-of-type(n+3):nth-of-type(-n+4) {
        transition-delay: .2s;
    }
    .benefit .card-list-wrap .card-list .card-item:nth-of-type(n+5):nth-of-type(-n+6) {
        transition-delay: .2s;
    }
    .benefit .card-list-wrap .card-list .card-item:nth-of-type(n+7):nth-of-type(-n+9) {
        transition-delay: .2s;
    }
}

@media screen and (max-width: 767.98px) {
    .card-item {
        flex: 0;
        width: 100%;
        padding: 2.4rem;

    }

    .card-item dt {
        font-size: 2.4rem;
    }

    .card-item dd {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 767.98px) {
    .role .content-wrap {
        padding-top: 4rem;
    }

    .role .content > .title {
        font-size: 2rem;
        padding-bottom: 2.4rem;
    }

    .role .card-list-wrap .card-list {
        flex-direction: column;
        gap: 1.6rem;
    }

    .role .card-list-wrap .card-list .card-item [data-aos] {
        transition-delay: .1s !important;
    }

    .role .card-list-wrap .card-list .card-item .tit {
        font-size: 2.4rem;
        margin-bottom: 1.6rem;
    }

    .role .card-list-wrap .card-list .card-item .txt {
        font-size: 1.6rem;
        line-height: 2.4rem;
    }

    .role .card-list-wrap .card-list .card-item,
    .role .card-list-wrap.role-2 .card-list .card-item {
        align-items: center;
        flex: 1 0 100%;
        width: 100%;
        min-height: 100%;
        padding: 2.4rem;
    }

    .role .card-list-wrap .card-list .card-item .img-wrap {
        height: 6.4rem;
        margin-bottom: 1.6rem;
    }

    .benefit .card-list-wrap .card-list {
        gap: .8rem;
    }

    .benefit .card-list-wrap .card-list .card-item {
        flex-direction: row;
        align-items: center;
        flex: 1 0 100%;
        width: 100%;
        min-height: 100%;
    }
    
    .benefit .card-list-wrap .card-list .card-item:nth-of-type(1) {
        transition-delay: 0s !important;
    }

    .benefit .card-list-wrap .card-list .card-item:nth-of-type(2) {
        transition-delay: 0.1s !important;
    }

    .benefit .card-list-wrap .card-list .card-item:nth-of-type(3) {
        transition-delay: 0.2s !important;
    }

    .benefit .card-list-wrap .card-list .card-item:nth-of-type(4) {
        transition-delay: 0.3s !important;
    }

    .benefit .card-list-wrap .card-list .card-item:nth-of-type(5) {
        transition-delay: 0.4s !important;
    }

    .benefit .card-list-wrap .card-list .card-item:nth-of-type(6) {
        transition-delay: 0.5s !important;
    }

    .benefit .card-list-wrap .card-list .card-item:nth-of-type(7) {
        transition-delay: 0.6s !important;
    }

    .benefit .card-list-wrap .card-list .card-item:nth-of-type(8) {
        transition-delay: 0.7s !important;
    }

    .benefit .card-list-wrap .card-list .card-item:nth-of-type(9) {
        transition-delay: 0.8s !important;
    }


    .benefit .card-list-wrap .card-list .card-item .img-wrap {
        margin-top: 0;
        width: 8rem;
        height: 8rem;
    }

    .benefit .card-list-wrap .card-list .card-item dd {
        margin-top: .8rem;
    }

    .recruit .content-title {
        margin-bottom: 5rem;
    }

    .recruit .content-img {
        max-width: 26.3rem;
        width: 100%;
        margin-right: auto;
    }

}
