/* 공통 */
.sec-header {
    padding-right: calc(var(--con-gap) / 2);
    position: sticky;
    top: var(--header);
    height: fit-content;
}
.sec-subtitle {
    margin-bottom: var(--con-gap);
    padding-top: var(--con-gap);
}
.repair-con {
    margin-bottom: calc(var(--sec-gap) / 2);
}
.repair-con:last-child {
    margin-bottom: 0;
}
.sec-content .title {
    font-size: var(--t6);
    font-weight: var(--semi-bold);
    margin-bottom: 40px;
}
.item-img {
    width: 100%;
    background: var(--img);
}
.item-title {
    font-size: var(--t7);
    font-weight: var(--medium);
    color: var(--ft-main);
}
.item-desc {
    font-size: var(--d2);
    color: var(--ft-sub);
}
.item-title + .item-desc {
    margin-top: 16px;
}
.item-text {
    margin-top: 30px;
    padding: 0 10px;
}
.item-icon {
    aspect-ratio: 1;
    background: var(--glass);
    border-radius: var(--border-radius);
    overflow: hidden;
}

/* --------------------information_sec--------------- */
.information_sec > .inner,
.process_sec > .inner,
.gallery_sec > .inner {
    display: grid;
    grid-template-columns: 1fr 3fr;
    padding-top: var(--sec-gap);
}
/* repair_info_1 */
.repair_info_1 .type-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px 40px;
}
.repair_info_1 .type .item-img {
    aspect-ratio: 1.65 / 1;
}


/* repair_info_2 */
.repair_info_2 .type-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.repair_info_2 .type li {
    background: var(--gray-100);
    border-radius: var(--border-radius);
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    padding: 30px;
    text-align: center;
}
.repair_info_2 .type .item-icon {
    width: 80px;
    margin-top: 20px;
    padding: 14px;
}

.repair_info_2 .tech-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
}
.repair_info_2 .tech li {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}
.repair_info_2 .tech .item-text {
    margin-top: 0;
    padding: 0;
}
.repair_info_2 .tech .item-img {
    width: 100%;
    aspect-ratio: 2 / 1;    
}

/* repair_info_3 */
.repair_info_3 .type-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
.repair_info_3 .type li {
    padding: 30px;
    background: var(--gray-100);
    border-radius: var(--border-radius);
}
.repair_info_3 .type .item-icon {
    width: 80px;
    height: 80px;
    padding: 14px;
}
.repair_info_3 .type .item-text {
    padding: 0;
}
.repair_info_3 .tech-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 60px 40px;
}
.repair_info_3 .tech .item-img {
    width: 100%;
    aspect-ratio: 1;
}


/* repair_info_4 */
.repair_info_4 .type-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 60px 40px;
}
.repair_info_4 .type .item-img {
    width: 100%;
    aspect-ratio: 1;
}
.repair_info_4 .map-itemi:first-child {
    margin-bottom: var(--con-gap);
}
.repair_info_4 .map .item-desc {
    margin-top: 0;
}

.repair_info_4 .map .item-text {
    margin-top: 0;
    margin-bottom: 40px;
    padding: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px 40px;
}
.repair_info_4 .map .tag {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.repair_info_4 .map .item-img-box {
    position: relative;
}

.repair_info_4 .map .item-img {
    width: 100%;
    aspect-ratio: 2 / 1;
    background: var(--gray-100);
}
.repair_info_4 .map .pin {
    position: absolute;
    transform: translate(-50%, -50%);
    background: var(--point2);
    width: 14px;
    height: 14px;
    border-radius: 50%;    
    display: flex;
    appearance: none;
    pointer-events: none;
    align-items: center;
    justify-content: center;
    scale: 0;
    opacity: 0;
    transition: scale .5s ease, opacity .5s ease;
}
.repair_info_4 .map .pin.active {
    appearance: auto;
    pointer-events: visible;
    scale: 1;
    opacity: 1;
}
.repair_info_4 .map .pin::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    scale: 1;
    opacity: 1;
    border-radius: 50%;
    background: #ff660059;
    animation: scale 1s ease-out infinite forwards;
}
@keyframes scale {
    0% {
        scale: 1;
        opacity: 1;
    }
    100% {
        scale: 3;
        opacity: 0;
    }
}
.map-ko {
    margin-bottom: var(--con-gap);
}
.map-ko .pin_1 {
    top: 57.3%;
    left: 61.5%;
}
.map-ko .pin_2 {
    top: 49%;
    left: 64%;
}
.map-ko .pin_3 {
    top: 38.833%;
    left: 64.416%;
}
.map-ko .pin_4 {
    top: 60.3%;
    left: 50%;
}
.map-ko .pin_5 {
    top: 64.666%;
    left: 50.5%;
}
.map-ko .pin_6 {
    top: 11.666%;
    left: 41.666%;
}
.map-ko .pin_7 {
    top: 20.833%;
    left: 44.333%;
}


.map-world .pin_d {
    top: 40.1666%;
    left: 77.833%;
}
.map-world .pin_1 {
    top: 54.166%;
    left: 72.3%;
}
.map-world .pin_2 {
    top: 48.166%;
    left: 73.583%;
}
.map-world .pin_3 {
    top: 43.166%;
    left: 57.333%;
}
.map-world .pin_4 {
    top: 30.333%;
    left: 53.916%;
}


.repair_info_4 .map .tag li {
    padding: 6px 12px;
    font-size: var(--ft15);
    background: var(--gray-100);
    border-radius: var(--border-radius-sm);
    cursor: pointer;
    transition: background .5s ease;
}
.repair_info_4 .map .tag li:hover {
    background: var(--primary-100);
}
.repair_info_4 .map .tag li.active {
    background: var(--gray-500);
    color: white;
}

/* --------------------process_sec--------------- */
.process-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    --gap: calc(var(--con-gap) / 2);
    gap: var(--gap);
}
.process-list li {
    background: var(--gray-100);
    border-radius: var(--border-radius);
    display: flex;
    align-items: end;
    justify-content: space-between;
    padding: 30px;
    height: 160px;
    /* aspect-ratio: 2 / 1; */
    position: relative;
}
.process-list li::after {
    position: absolute;
    right: 0;
    top: 50%;
    content: '';
    display: block;
    width: var(--gap);
    height: var(--gap);
    transform: translate(100%,-50%);
    background: url('/images/icon/right_arrow_fill.svg') no-repeat center / 24px;
}
.process-list li:nth-child(3n)::after {
    display: none;
}
.process-list li:last-child {
    border: 2px solid var(--point);
}
.process-list li:last-child .item-title {
    color: var(--point);
}
.process-list .item-text {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: space-between;
    height: 100%;
    margin-top: 0;
}
.process-list .item-num {
    font-size: var(--t6);
    color: var(--gray-400);
}
.process-list .item-icon {
    width: 70px;
    aspect-ratio: 1;
    border-radius: var(--border-radius);
    background: none;
}



/* --------------------gallery_sec--------------- */
.gallery_sec {
    overflow: hidden;
}

.gallery_sec .sec-header {
    z-index: 3;
}
.gallery_sec .sec-content {
    min-width: 0;
    position: relative;
}
.gallery_sec .sec-content::before {
    content: '';
    display: block;
    position: absolute;
    background: white;
    width: 100%;
    left: 0;
    height: 100%;
    transform: translateX(-100%);
    z-index: 2;
}
.gallery_swiper {
    overflow: visible;
}
.gallery_sec .gallery-img {
    background-color: var(--img);
    aspect-ratio: 1;
    width: 100%;
}
.gallery_swiper .btn_wrap {
    margin-top: 50px;
    gap: 20px;
    align-items: center;
    padding-left: 20px;
}
.swiper-prev,
.swiper-next {
    margin-top: 0;
    left: 0;
    right: 0;
}
.swiper-pagination.swiper-pagination-fraction.swiper-pagination-horizontal {
    position: static;
    width: fit-content;
}

@media all and (max-width: 1700px) {   
    .process-list li {
        padding: 20px;
    }
}
@media all and (max-width: 1200px) {
    .repair_info_1 .type-list,
    .repair_info_3 .tech-list,
    .repair_info_4 .type-list {
        column-gap: 30px;
    }
    .repair_info_2 .type-list {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media all and (max-width: 960px) {
      .sec-header {
        position: static;
        padding-right: 0;
    }
    .information_sec > .inner,
    .process_sec > .inner,
    .gallery_sec > .inner {
        grid-template-columns: 1fr;
    }
    .sec-name {
        margin-left: auto;
        margin-right: auto;
        
    }
    .sub_page .sec-title {
        margin-bottom: 30px;
        text-align: center;
    }
    .sec-subtitle {
        text-align: center;
        padding-top: 0;
    }
    .tab-area {
        display: none;
    }
    .gallery_sec .sec-title,
    .process_sec .sec-title {
        margin-bottom: var(--con-gap);
    }
    .gallery_sec .sec-content::before {
        content: none;
    }
}
@media all and (max-width: 730px) {
    .item-text {
        margin-top: 24px;
    }
    .item-title + .item-desc {
        margin-top: 10px;
    }
    .repair_info_2 .tech li {
        gap: 20px;
    }
    .repair_info_2 .type li {
        padding: 20px;
    }
    .repair_info_2 .type .item-icon {
        margin-top: 10px;
    }
    
    .repair_info_1 .type-list,
    .repair_info_3 .tech-list,
    .repair_info_4 .type-list {
        column-gap: 20px;
    }
    .repair_info_4 .map .item-text {
        flex-direction: column;
        align-items: start;
    }
    .information_sec,
    .process_sec {
        overflow: hidden;
    }
    .repair_info_4 .sec-content,
    .process_sec .sec-content {
        min-width: 0;
    }
    .repair_4_swiper,
    .process_swiper {
        overflow: visible;
    }
    .repair_info_4 .type-list,
    .process-list {
        display: flex;
        gap: 0;
    }
    .process-list li {
        flex-direction: column;
        align-items: start;
        gap: 20px;
        height: auto;
    }
    .process-list .item-text {
        height: auto;
        gap: 10px;
    }
    .process-list li:nth-child(3n)::after {
        display: block;
    }
    .process-list li:last-child::after {
        display: none;
    }
}
@media all and (max-width: 600px) {
    .repair_info_2 .tech-list {
        gap: var(--con-gap);
    }
    .repair_info_2 .tech li {
        grid-template-columns: 1fr;
    }
    
}
@media all and (max-width: 500px) {
    .item-text {
        margin-top: 16px;
    }
     .repair_info_1 .type-list {
        grid-template-columns: 1fr;
    }
    .repair_info_2 .type-list {
        gap: 10px;
    }
    .repair_info_3 .type-list {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .repair_info_2 .type .item-icon {
        width: 60px;
        padding: 10px;
    }
    .repair_info_3 .type li {
        padding: 20px;
        display: flex;
        gap: 10px;
        flex-direction: row-reverse;
    }

    .repair_info_3 .type .item-icon {
        width: 50px;
        height: 50px;
        padding: 10px;
        flex-shrink: 0;
    }
    .repair_info_3 .tech-list {
        grid-template-columns: 1fr;
    }



    .repair_info_4 .map .tag li {
        padding: 4px 8px;
    }
    .repair_info_4 .map .item-text {
        margin-bottom: 20px;
    }
    .repair_info_4 .map .pin {
        width: 8px;
        height: 8px;
    }
}