.heinhub-section {
    padding: 4rem 0;
}

.heinhub-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem;
}

.mg_t_10r {
    margin-top: 10rem;
}

.mg_t_25r {
    margin-top: 25rem;
}

.di_flex {
    display: flex;
}

.f_center {
    justify-content: center;
    align-items: center;
}

.sub-title {
    font-weight: 600;
    font-size: 1.1rem;
    text-align: center;
}

.--only_mobile {
    display: none;
}

/*section 1*/
/*메인 이미지 감싸는 div*/
.sec1 .main_img {
    flex-direction: column;
}

/*메인 타이틀*/
.sec1 .img_front_mainTitle {
    font-size: 3rem;
    font-weight: 800;
    margin-bottom: 5rem;
}

.sec1 .img_front_mainTitle .--only_mobile {
    font-size: 2rem;
    text-align: center;
}

/*section 2*/
/*타이틀 전체*/
.sec2 .description_t {
    margin: 3rem 0;
    font-size: 1.3rem;
    letter-spacing: -1px;
}

/*강조 타이틀*/
.sec2 .description_t p {
    font-weight: 500;
    margin: 1.5rem 0;
}

.sec2 .decription_t .bold {
    font-weight: 600;
}

/*우측 하단 타이틀*/
.sec2 .right-title {
    margin-top: 7rem;
    text-align: right;
}

/*서브 타이틀+설명 전체*/
.sec2 .description_bot {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

/*각 서브 타이틀 + 설명*/
.sec2 .description_bot .inner-div {
    flex-direction: column;
    margin: 3rem 0;
    gap: 1rem;
}

/*서브 타이틀*/
.sec2 .description_bot .inner-div .inner-title {
    font-size: 1.2rem;
    font-weight: 600;
    text-align: center;
    letter-spacing: -1px;
}

/*상세 설명*/
.sec2 .description_bot .inner-div .inner-info {
    font-size: 1.1rem;
    margin-top: 1rem;
}

/*설명 각 ul*/
.sec2 .description_bot .inner-div .inner-info ul {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 300px;
}

/*section 3*/
.sec3 {
    margin-bottom: 10rem;
}

/*안에 있는 맨 위 설명*/
.sec3 .description_top {
    font-size: 1.5rem;
    font-weight: 500;
    text-align: center;
}

/*설명 안 label 만 강조*/
.sec3 .description_top label {
    font-weight: 700;
}

/*aiis 로고*/
.sec3 .description_mid {
    margin-top: 5rem;
    margin-bottom: 2rem;
    gap: 1.5rem;
    width: 100%;
    min-width: 800px;
}

/*aiis 박스, 화살표, heinhub, revcare 전체*/
.sec3 .description_bot {
    align-items: center;
    justify-content: center;
}

/*AIIS 로고 옆 풀네임*/
.sec3 .description_mid .inner-div {
    display: inline-flex;
    font-size: 1.3rem;
    font-weight: 500;
    text-align: center;
}

/*에이전트들 묶은 왼쪽 div*/
.sec3 .description_bot .left-all-box {
    flex-direction: column;
    border: 1px solid #A8A8A8;
    border-radius: 10px;
    gap: 2rem;
    width: 800px;
    min-width: 800px;
}

/*각 에이전트들 행*/
.sec3 .description_bot .left-all-box .inner-div {
    justify-content: space-between;
    height: 150px;
}

/*아이콘이랑 설명 묶은 div*/
.sec3 .left-all-box .inner-div .left-all {
    flex-direction: column;
    width: 250px;
    gap: 0.7rem;
}

/*보험 설명에 들어가는 아이콘 3개*/
.sec3 .description_bot .inner-div .icon {
    width: 70px;
}

/*오른쪽 설명들 전체*/
.sec3 .left-all-box .inner-div .right-all {
    flex-direction: column;
    width: 500px;
    min-width: 500px;
    justify-content: space-around;
}

/*오른쪽 내부에 항목들 전체*/
.sec3 .left-all-box .inner-div .right-all .right--bottom {
    flex-direction: row;
    gap: 1rem;
}

/*오른쪽 내부에 항목들*/
.sec3 .left-all-box .right--bottom .inner-info{
    width: 100px;
    min-width: 100px;
    height: 55px;
    border: 1px solid #DDDDDD;
    border-radius: 5px;
    text-align: center;
}

@media (max-width: 1120px) {
    .sec2 .description_bot {
        max-width: 500px;
        flex-direction: column;
        margin: 0 auto;
    }

    .sec2 .description_bot.--only-mobile {
        display: flex; !important;
    }

    .sec2 .description_bot .inner-div .inner-info ul {
        max-width: 100%;
        text-align: center;
        letter-spacing: -1px;
    }

    .sec3 .description_bot {
        gap: 1rem;
    }

    .sec3 .description_bot .left-all-box {
        min-width: 0;
        width: 80%;
        height: 100%;
        padding: 2rem;
        gap: 5rem;
    }

    .sec3 .description_bot .left-all-box .inner-div {
        flex-direction: column;
        justify-items: center;
        align-items: center;
        gap: 2.5rem;
        height: 100%;
    }

    .sec3 .left-all-box .inner-div .right-all .right--bottom {
        flex-wrap: wrap;
        justify-content: center;
    }

    .sec3 .description_mid {
        min-width: 0;
        width: 100%;
        flex-direction: column;
        margin: 5rem auto 2rem auto;
    }

    .sec3 .left-all-box .inner-div .right-all {
        min-width: 0;
        width: 100%;
        height: 100%;
        gap: 1.1rem;
    }
}

/* 반응형 디자인 */
@media (max-width: 768px) {
    .main-content {
        margin: 80px 0;
    }

    .heinhub-content {
        padding: 1rem;
        margin-left: auto;
        margin-right: auto;
        display: flex;
        flex-direction: column;
    }

    .heinhub-section {
        padding: 0;
        display: flex;
        flex-direction: column;
        margin: 0 auto;
    }

    .container {
        padding: 0;
    }

    .--only_pc {
        display: none;
    }

    .--only_mobile {
        display: flex;
    }

    .description_bot {
        flex-direction: column;
    }

    .insurance_img {
        width: 80%;
    }

    .sec2 .description_bot .inner-div {
        width: 100%;
        text-align: center;
    }

    .sec2 .description_bot .inner-div .inner-info ul {
        max-width: 100%;
        letter-spacing: -1px;
    }

    .sec3 .description_top {
        flex-direction: column;
        letter-spacing: -1px;
    }

    .sec3 .description_mid .inner-div {
        font-size: 1.2rem;
        width: 100%;
        display: flex;
        justify-content: center;
        letter-spacing: -1px;
    }

    .sub-title {
        font-size: 1rem;
    }
}