.section1 {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    position: relative; /* 텍스트 오버레이를 이미지 위에 고정하기 위해 relative 설정 */
}

.section1 .banner {
    width: 100%;
    height: auto; /* 이미지의 비율을 유지하면서 전체 너비에 맞추기 */
}

.section1 .text-overlay {
    position: absolute; /* 부모 요소인 .section1에 상대적으로 위치시킴 */
    top: 10%; /* 이미지에서 20% 위치 */
    left: 5%; /* 왼쪽에서 5% 위치 */
    font-size: 30px;
    padding: 20px;
    border-radius: 10px;
    box-sizing: border-box;
    width: auto;
    max-width: 80%;
}

.section1 .text-overlay pre {
    font-size: 33px;
    font-weight: 800;
    line-height: 1.5;
    color: #fff; /* 텍스트 색상 */
}

.section1 .text-overlay span {
    font-size: 20px;
    color: #fff; /* 텍스트 색상 */
}

.section2 {
    background-color: #efefef;
    margin: 80px 0;
}
.section2 .contents {
    width: 70%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 80px 0;
}
.section2 .btn_wrap {
    display: flex;
    gap: 20px;
}
.section2 .btn_wrap a{
    display: flex;
    gap: 20px;
    background-color: #fff;
    flex-direction: column;
    width: 33.3333%;
    border-radius: 20px;
    border: 1px solid #cdcdcd;
    align-items: center;
    justify-content: space-between;
}
.section2 .btn_wrap a .top{
    display: flex;
    justify-content: flex-end;
    width: 100%;
}
.section2 .btn_wrap a .bottom{
    padding: 0 0 60px;
    text-align: center;
}
.section2 .btn_wrap a .arrow{
    display: flex;
    justify-content: flex-end;
    padding: 10px 15px;
}
.section2 .btn_wrap a .icon{
    width: auto;
    height: 50%;
    margin-bottom: 30px;
}
.section2 .btn_wrap a h3{
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 20px;
}
.section2 .btn_wrap a span{
    font-size: 20px;
    font-weight: 700;
    color: #5e605f;
}
.section3 {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 80px;
}
.section3 h2 {
    font-size: 24px;
    font-weight: 800;
}
.section3 .btn_wrap {
    display: flex;
    gap: 15px;
    align-items: stretch;
    margin-top: 30px;
}
.section3 .btn_wrap .left{
    display: flex;
    gap: 15px;
    width: 70%;
}
.section3 .btn_wrap .right{
    display: flex;
    flex-direction: column;
    gap:  7px;
    width: 30%;
}
.section3 .btn_wrap .left a{
    width: 33.33%;
}
.section3 a {
    position: relative;
    display: inline-block;
}

.section3 a img {
    width: 100%;  /* 이미지가 부모 요소의 너비에 맞춰짐 */
    height: auto; /* 이미지 비율을 유지 */
}

.section3 .text-overlay {
    position: absolute;
    bottom: 6%;
    left: 50%;
    transform: translateX(-50%);
    font-size: 20px;
    text-align: center;
    border-radius: 10px;
    max-width: 90%;
    box-sizing: border-box;
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    font-weight: 700;
}
.section3 .right_overlay{
    position: absolute;
    bottom: 13% !important;
    left: 50%;
    transform: translateX(-50%);
    font-size: 20px;
    text-align: center;
    border-radius: 10px;
    max-width: 90%;
    box-sizing: border-box;
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    font-weight: 600;
}
.section3 .text-overlay img, .right_overlay img{
    width: 25px !important;  /* 화살표 이미지 크기 */
    height: auto;
}
.left_mo {
    display: none !important;
}
@media screen and (max-width: 767px) {
    .section1 {
        width: 90%;
        max-width: 100%;
        margin: 0 auto;
        position: relative;
    }   
    .section1 .text-overlay {
        position: absolute;
        top: 0%;
        left: 0%;
        font-size: 22px;
        padding: 20px;
        border-radius: 10px;
        box-sizing: border-box;
        width: auto;
        max-width: 100%;
    }
    .section1 .text-overlay pre {
        font-size: 20px;
        font-weight: 800;
        line-height: 1.3;
        color: #fff;
    }
    .section1 .text-overlay span {
        font-size: 14px;
        color: #fff;
    }
    .section2 {
        margin: 0;
        background-color: #fff;
    }
    .section2 .contents {
        width: 90%;
        max-width: 100%;
        margin: 0 auto;
        padding: 40px 0;
    }
    .section2 .btn_wrap {
        display: flex;
        gap: 10px;
        justify-content: space-between;
    }
    .section2 .btn_wrap a .icon {
        width: auto;
        height: 40%;
        margin-bottom: 20px;
    }
    .section2 .btn_wrap a {
        display: flex;
        gap: 0px;
        background-color: #fff;
        flex-direction: column;
        width: calc(34% - 3%);
        border-radius: 15px;
        border: 1px solid #cdcdcd;
        align-items: center;
        justify-content: flex-start;
        height: 170px;
        padding: 0 10px;
    }
    .section2 .btn_wrap a .bottom {
        padding: 0; 
        height: 100px;
    }
    .section2 .btn_wrap a .arrow {
        display: flex;
        justify-content: flex-end;
        padding: 8px 0 8px;
        width: 20%;
    }
    .section2 .btn_wrap a h3 {
        font-size: 15px;
        margin-bottom: 14px;
    }
    .section2 .btn_wrap a span {
        font-size: 16px;
    }
    .left {
        display: none !important;
    }
    .left_mo {
        display: flex !important;
        gap: 15px;
        width: 100%;
        overflow-x: auto;
    }
    .left_mo::-webkit-scrollbar {
        display: none;
    }
    .section3 .text-overlay {
        bottom: 9%;
        font-size: 16px;
    }
    .section3 .text-overlay img, .right_overlay img {
        width: 19px !important;
    }
    .section3 a {
        position: relative;
        display: inline-block;
        width: 100%;
    }
    .section3 a img {
        width: 190px;
        height: auto;
    }
    .right{
        display: none !important;
    }
    .section3 {
        width: 90%;
        max-width: 100%;
        margin: 0 auto 40px;
    }
    .section3 h2 {
        font-size: 18px;
    }
}