#main_content{
    width: 100%;
}


/* main banner */
.main_banner{
    width: 100%;
    height: 770px;
    /* background-image: url(../images/main_banner.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed; */

    position: relative;
}

.banner{
    width: 100%;
    height: 770px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    position: absolute;
    top: 0;
    left: 0;
}

.banner1{
    background-image: url(../images/main_banner1.jpg);
    opacity: 1;
    animation: opacity1 8s 8s infinite ease;
}

@keyframes opacity1 {
  0%{
    opacity: 1;
  }

  50%{
    opacity: 0;
  }

  100%{
    opacity: 1;
  }
}

.banner2{
    background-image: url(../images/main_banner.jpg);
    opacity: 0;
    animation: opacity2 8s 8s infinite ease;
}

@keyframes opacity2 {
  0%{
    opacity: 0;
  }

  50%{
    opacity: 1;
  }

  100%{
    opacity: 0;
  }
}

.main_banner .center2{
    height: 100%;
    display: flex;
    align-items: center;
    /* position: relative; */
    position: absolute;
    top: 0;
    /* left: 0; */
    left: 50%;
    transform: translateX(-50%);
}

.banner_text>p{
    font-size: 20px;
    color: #fff;
    font-family: 'Pretendard-Light';
    line-height: 30px;
    letter-spacing: 0.5px;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);
}

.font_tenor{
    position: relative;
}

.text_animation1,
.text_animation2{
    height: 95px;
    overflow: hidden;
}

.text_animation1 p,
.text_animation2 p{
    height: 100%;
    font-size: 80px;
    color: #fff;
    text-transform: uppercase;
    font-family: 'Philosopher';
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);
    line-height: 95px;
    margin-top: 95px;
    font-weight: 700;
}

.text_animation1 p{
    letter-spacing: -2px;
    animation: show-up .8s ease-out forwards;
}

.text_animation2 p{
    animation: show-up .8s .3s ease-out forwards;
}

@keyframes show-up{
    0%{
        margin-top: 95px;
    }

    100%{
        margin-top: 0;
    }
}

.leaf_text{
    position: absolute;
    width: 160px;
    height: 160px;
    top: -10px;
    right: -120px;
    opacity: 0;
    animation: opacity 2s .3s linear forwards;
}

@keyframes opacity{
    0%{
        opacity: 0;
    }

    100%{
        opacity: 1;
    }
}

img.text_cicle{
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation: spin infinite 10s .3s linear;
}

@keyframes spin{
    0%{
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

img.leaf{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.scroll_down{
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
}

.scroll_down p{
    font-size: 14px;
    color: #fff;
    font-family: 'Pretendard-Light', sans-serif;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);
}

.progressbar{
    width: 1px;
    height: 70px;
    background-color: rgba(255, 255, 255, 0.4);
    margin: 10px auto 0;
    position: relative;
}

.progress_in{
    width: 1px;
    height: 0;
    background-color: #fff;
    top: 0;
    left: 0;
    animation: scroll_down infinite 2s ease-out;
}

@keyframes scroll_down{
    0%{
        height: 0%;
    }

    100%{
        height: 100%;
    }
}


/* service */
.service{
    width: 100%;
    padding: 80px 0 100px;
    background-image: url(../images/main_service_bg.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
    position: relative;
}

.rolling_text{
    height: 100%;
    font-size: 150px;
    color: rgba(235, 235, 235, 0.6);
    font-family: 'Philosopher';
    writing-mode: vertical-lr;
    text-transform: uppercase;
    letter-spacing: -5px;
    position: absolute;
    top: 0;
    right: -30px;
    white-space: nowrap;
}

.rolling_text p{
    animation: waveTxt 1500s linear infinite;
}

@keyframes waveTxt{
    0%{ transform: translateY(0rem);}
    100%{ transform: translateY(-7000rem);}
}

.section_title{
    font-size: 50px;
    color: #222;
    text-transform: uppercase;
    font-family: 'Philosopher';
    letter-spacing: -2px;
}

.service_box{
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    padding:  0 60px;
    box-sizing: border-box;
}

.service_title{
    width: 380px;
}

.service_title ul{
    width: 100%;
}

.service_title ul li{
    width: 100%;
    margin-bottom: 40px;
    border-bottom: 1px solid #d7d7d7;
    padding: 0 5px 35px;
    box-sizing: border-box;
    position: relative;
    cursor: pointer;
}

.service_title ul li p{
    font-size: 24px;
    color: #999;
    font-family: 'Philosopher';
}

.service_title ul li i{
    position: absolute;
    top: 0;
    left: 60%;
    color: #54aea2;
    font-size: 24px;
    opacity: 0;
    transition: left .6s, opacity .8s;
}

.service_title ul li span{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    background-color: #54aea2;
    transition: width .8s;
}

.service_title ul li.title_on p{
    font-family: 'Philosopher';
    color: #54aea2;
}

.service_title ul li.title_on i{
    left: 90%;
    opacity: 1;
}

.service_title ul li.title_on span{
    width: 100%;
}

.service_content{
    width: 420px;
    height: 535px;
    position: relative;
}

.service_con{
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: none;
}

.content_on{
    display: block;
}

.service_imgbox{
    width: 385px;
    height: 515px;
    border-radius: 300px 300px 0 0;
    background-color: #d7d7d7;
    overflow: hidden;
    box-shadow: 20px 20px 30px rgba(0, 0, 0, 0.1);
}

.service_con p{
    writing-mode: vertical-lr;
    font-size: 18px;
    color: #9f9f9f;
    font-family: 'Philosopher';
    position: absolute;
    bottom: 0;
    right: 0;
}


/* Hope & Wellness */
.hope_wellness{
    width: 100%;
    height: 550px;
    background-image: url(../images/main_fix_banner.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

.left_box{
    width: 67%;
    height: 100%;
    float: left;
    border-right: 1px solid #c3c3c3;
    box-sizing: border-box;
    position: relative;
}

.leftbox_in{
    position: absolute;
    top: 50%;
    right: 22%;
    transform: translateY(-50%);
}

.leftbox_in>p{
    font-size: 58px;
    color: #c5b3a3;
    font-family: 'Philosopher';
    text-transform: uppercase;
    font-weight: 700;
}

.bar{
    width: 70px;
    height: 1px;
    background-color: #c3c3c3;
    margin: 25px 0 35px;
}

.leftbox_in>span{
    font-size: 18px;
    font-family: 'Pretendard-Regular', sans-serif;
    line-height: 28px;
    display: block;
}

.right_box{
    width: 33%;
    height: 50%;
    float: right;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    cursor: pointer;
}

.right_box:nth-of-type(2){
    border-bottom: 1px solid #c3c3c3;
    box-sizing: border-box;
}

.right_box p{
    font-size: 32px;
    font-family: 'Philosopher';
    text-transform: uppercase;
    letter-spacing: -1px;
    color: #222;
}

.right_box i{
    font-size: 22px;
    margin-top: 25px;
    color: #555;
    transition: margin-left .3s;
}

.right_box:hover i{
    margin-left: 40px;
}


/* more logo */
.more_logo{
    width: 100%;
    padding: 75px 0;
}

.more_logo p{
    font-size: 20px;
    font-family: 'Pretendard-Regular', sans-serif;
    text-align: center;
}

ul.m_logo_ul{
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
}

ul.m_logo_ul li{
    width: 18.5%;
    height: 80px;
    border: 1px solid #e1e1e1;
    box-sizing: border-box;
    padding: 25px;
}

ul.m_logo_ul li img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
