.amiri-regular {
    font-family: "Amiri", serif;
    font-weight: 400;
    font-style: normal;
}



.container {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}


/*
.menu {
    width: 100%;
    z-index: 20;
    position: fixed;
    padding: 0 6.5%;
    padding-top: 45px;
    margin: 0 auto;
    background-color: rgba(76, 66, 54, 0.5);
}

*/




.section1 {
    width: 100%;
    text-align: center;
    position: relative;
}

.section1 h2,
.section1 h1 {
    width: 100%;
    position: absolute;
    color: white;
    text-align: center;
    margin: 0 auto;

}

.section1-txt {
    font-family: "Amiri", serif;
    position: relative;
    z-index: 10;

}


.section1-txt h1 {
    padding-top: 27.5%;
    font-size: 4em;
    font-weight: 500;
    z-index: 50;

}

.section1-txt h2 {
    padding-top: 25%;
    font-size: 2em;
    font-weight: 300;
    z-index: 5;
}


.section1 img {
    width: 100%;
    height: 100vh;
    margin: 0 auto;
    object-fit: cover;
    position: relative;
    z-index: 1;
}



/*--------------------page3---------------------*/


.section2 {
    background-color: rgba(245, 244, 238, 0.5);
}

.section-box {
    width: 100%;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;



}

.section-txt h3,
.section-txt h2 {
    white-space: nowrap;
}





/*
.section2-box::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 120%;
    top: 0;
    left: 0;
    background-color: rgba(245, 244, 238, 0.5);
    z-index: -1;
}
*/


.section2-box {
    padding: 10% 0 5%;
    margin: 0 auto;

}

.section3-box {
    padding-bottom: 10%;
}


.section-txt {
    position: relative;
    width: 40%;
}




/*
.section-txt::before,
.section-txt::after {
    content: "";
    position: absolute;
    left: 10%;
    height: 1px;
    background-color: #DE7913;
    z-index: 10;
    width: 80%; 

}
*/





/*
.section-txt::before {
    top: -5%;
}

.section-txt::after {
    bottom: -2%;
    
}

.section3-txt::before {
    top: 22%;

}

.section3-txt::after {
    bottom: -3%;

}
*/




.section-img {
    position: relative;
    width: 40%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.section-img p {
    position: absolute;
    width: 100%;
    height: auto;
    margin: 0 auto;

    bottom: -2%;
    left: 5%;
    transform: rotate(270deg);
    transform-origin: left top;
    white-space: nowrap;
    font-weight: 500;
    color: #DE7913;
}

.section3-img p {
    transform: rotate(90deg);
    top: 0;
    left: 25.5vw;


}

.section3-box,
.section2-box {
    width: 80%;
    margin: 0 auto;
    padding-top: 10%;

}

.section3-img {
    width: 30%;

}

.section3-img {
    min-width: 260px;
}

.section3-txt {
    padding: 18% 0 10%;
}


.section3-txt p {
    width: 60%;
}

.section2-img img {
    width: 80%;
    height: auto;
    min-width: 350px;

}



.section-txt h3 {
    font-size: 2em;
    font-weight: 500;

}

.section-txt h3 {
    color: #4c4236;

}

.section2-txt h2 {
    font-weight: 500;
    font-size: 2.5em;
    color: #DE7913;
    font-family: "Amiri", serif;
    line-height: 1.4em;
}

.icon p,
.section-txt p {
    padding-top: 10%;
    font-size: 1.2rem;
    line-height: 2rem;
    color: #4E4E4E;
    font-weight: 400;
}

.section-txt p,
.section-txt h3,
.section-txt h2 {
    width: 60%;
    margin: 0 auto
}

@media (max-width: 1300px) {
    .section-img p {
        display: none;
    }
}


@media (max-width: 1200px) {
    .section-txt {
        padding: 10% 0;
    }

    .section-txt p,
    .section-txt h3,
    .section-txt h2 {
        width: 100%;

    }

    .section2-img p {
        left: 10px;

    }

    .section3-img p {
        top: 43%;

    }


}

@media (max-width: 1030px) {}

@media (max-width: 800px) {
    .section2-box {
        width: 90%;
        padding: 19% 0 10%;
    }

    .section-txt {
        padding: 15px 0;
        /* 작은 화면에서 여백 줄이기 */
    }

    .section2-img img,
    .section3-img img {
        min-width: 250px;
    }

    .section-txt::before,
    .section-txt::after {
        left: 5%;
        /* 선 좌우 여백을 더 줄임 */
        width: 90%;
        /* 선 너비를 더 크게 설정 */
    }

    .section-txt h3,
    .section-txt h2 {
        font-size: 1.5em;
        /* 태블릿 크기 */
    }

    .sectio2-txt h2 {
        font-size: 2em;
        /* 태블릿 크기 */
    }

    .section-txt p {
        font-size: 0.9rem;
        line-height: 1.8rem;

    }


}

@media (max-width: 670px) {
    .section-box {
        width: 100%;
        flex-direction: column;

    }

    .section2-box {
        padding: 30% 0 10%;
    }

    .section2-img img,
    .section3-img img {
        min-width: 350px;
        height: 27vh;
        /* 높이를 고정 비율로 설정 */
        object-fit: cover;
        /* 이미지를 잘라서 비율 유지 */
        overflow: hidden;
    }

    .section-txt {
        width: 60%;
        text-align: center;
        padding: 10% 0;
        order: 2;
    }

    .section3-img {
        order: 1;
    }

    .section3-box {
        padding-top: 15%;
    }


}



@media (max-width: 480px) {

    .section2-box {
        padding: 40% 0 10%;
    }


    .section2-img img,
    .section3-img img {
        min-width: 250px;
    }


    .section-txt::before,
    .section-txt::after {
        left: 2%;
        /* 선 좌우 여백 최소화 */
        width: 96%;
        /* 선을 거의 전체 너비로 설정 */
    }

    .section-txt h3,
    .section-txt h2 {
        font-size: 1.2em;
        /* 모바일 크기 */
    }

    .section-txt h2 {
        font-size: 1.5em;
        /* 모바일 크기 */
    }

    .section-txt p {
        font-size: 0.8rem;
        line-height: 1.3rem;
    }
}







/*-----------------icon---------------------*/

.icon-section {
    background-color: rgba(245, 244, 238, 0.5);
    width: 100%;
}


.flex-row {
    text-align: center;
    width: 80%;
    font-family: 'Nanum Barun Gothic', sans-serif;
    padding-bottom: 5%;
    margin: 0 auto;

}

.flex-point {
    padding: 7% 0;
}

.flex-point span {
    font-size: 1.2em;
    color: #DE7913;
    font-weight: bold;

}

.flex-row h3 {
    width: 100%;
    margin: 0 auto;
    font-size: 2em;
    text-align: center;
    font-weight: 600;
    padding-top: 1%;
    color: #4c4236;

}

.flex-box {
    display: flex;
    margin: 0 auto;
    width: 100%;

}

.flex-box > div {
    width: 30%;
    margin: 0 auto;
    padding-bottom: 3%;
    position: relative;
}

.flex-box > div:not(:last-child)::after {
    content: '';
    position: absolute;
    top: 0;
    right: -15px;
    /* 간격 조정 */
    height: 100%;
    width: 2px;
    /* 라인의 두께 */
    background-color: #ccc;
    /* 라인의 색상 */
}


.icon-main-txt-box span {
    font-size: 1.5rem;
    font-weight: 500;

}


.icon-box {
    justify-content: space-between;
    align-items: flex-start;
}


.icon img {
    opacity: 0.5;
    width: 25%;
    min-width: 60px;
}

.icon-main-txt span {
    display: block;
    font-size: 1.5em;
    font-weight: 600;
    padding-bottom: 5%;
    color: #4c4236;

}

.icon-top-txt {
    display: block;
    font-size: 1.2em;
    font-family: "Nothing You Could Do", serif;
    padding-bottom: 3%;
    color: #DE7913;
    font-weight: 600;
}

@media (max-width:1080px) {
    .flex-point {
        padding: 12% 0;
    }


    .flex-row {
        width: 90%;
        padding-bottom: 10%;
    }

    .icon-main-txt p {
        font-size: 1em;
    }

    .icon-main-txt span {
        font-size: 1.2em;

    }

    .icon p {
        font-size: 1rem;
        line-height: 1.5rem;
    }

}

@media (max-width: 670px) {

    /*
    .flex-box {
        flex-direction: column;
    }
*/


    .flex-box > div:not(:last-child)::after {
        right: 0;
        height: 90%;
    }

    .flex-box > div {
        width: 70%;
        padding-bottom: 10%;

    }

    .icon-top-txt {
        padding-top: 10%;
    }


    .icon-main-txt span {
        padding-bottom: 18%;
    }



    .icon img {
        max-width: 80px;
    }

    .icon p {
        display: none;
    }

    .icon-main-txt span {
        font-size: 1em;
    }

    .icon-main-txt p {
       font-size: .5rem;
    }
}


@media (max-width: 400px) {

    .flex-point {
        padding: 20% 0;
    }

    .flex-row {
        padding-bottom: 20%;
    }

    .flex-point span {
        font-size: 1em;
    }

    .flex-row h3 {
        font-size: 1.5em;
    }

    .icon-main-txt p {
        
        padding-left: 10px;
        padding-right: 10px;
        white-space: nowrap;
    }

    .icon-main-txt span {
        font-size: .8em;
    }

    .icon img {
        min-width: 40px;
    }
}



/*--------------------page4---------------------*/

.section4 {
    position: relative;
    padding: 10% 0;

}

.section4 img {
    width: 100%;
    height: 80vh;
    object-fit: cover;
    display: block;
}

.section4-txt {
    width: 100%;
    margin: 0 auto;
    position: absolute;
    top: 35%;
    text-align: center;
    color: #4c4236;
    line-height: 2.3em;

}

.section4-txt h3 {
    font-size: 3.4em;
    font-weight: 500;
    padding-bottom: 1.5%;


}

.section4-txt p {
    font-size: 2em;

}






@media (max-width: 1200px) {
    .section4 {
        padding: 0%;
    }

    .section4 img {
        height: 100vh;
    }

}

@media (max-width: 800px) {
    .section4-txt h3,.flex-row h3  {
        font-size: 1.8em;

    }

    .section4-txt p,.flex-point span {
        font-size: 1em;
    }
 .section4 img {
        height: 80vh;
    }


}

@media (max-width: 500px) {

    .section4-txt {
        line-height: 1.5em;
        top: 40%;
    }

    .section4-txt h3,.flex-row h3  {
        font-size: 1.5rem;

    }

    .section4-txt p {
        font-size: .9em;
    }


}



/*--------------------animaiton------------------*/

.section1-txt h1 {
    animation-delay: .8s;

}

.section1-txt h2 {
    animation-delay: .4s;

}

.img2,
.side-txt {
    animation-delay: .5s;

}

.section-txt h3 {
    animation-delay: .5s;

}

.section-txt h2 {
    animation-delay: 1s;

}

.section-txt p {
    animation-delay: 1.5s;

}







.flex-row .animate__fadeIn,
    {

    animation-duration: 3s;
    opacity: 0;
    /* 처음에는 완전히 투명 */
    transform: translateY(-20px);
    /* 살짝 위에 위치 */
    transition: all 0.5s ease-in-out;
    /* 애니메이션 전환 효과 */
}

.flex-row .animate__fadeIn.animate,
    {
    opacity: 1;
    /* 완전히 불투명 */
    transform: translateY(0);
    /* 제자리로 이동 */
}

.footer {
    width: 100%;
}


/*
.icon-main-txt-box{
    animation-delay:1.5s;
}

.icon-box {
    animation-delay: 1s;
}
*/


/*
.section1-txt h2{
     animation-duration: 1.3s;
}
*/
