*{
    font-family: "SourceHanSansKR-Normal";
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    list-style: none;
    text-decoration: none;
    color: #222;
    letter-spacing: -0.5;
}
html,body{
    font-size: 16px;

}
.header{
    background-image: url('../img/main_background.png');
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    z-index: 1;
}
.header::after{
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top:0;
    left: 0;
    background-color: #222;
    opacity: 0.52;
    z-index: -1;
}
.col-8 {
    margin: 0 auto;
    position: relative;
    max-width: 1279.98px;
}

a.nav-link{
    font-size: 1.25rem;
    color: #fff;
    --bs-nav-link-hover-color: #fff;
}
a.nav-link:hover{
    color: #d9d9d9;
}
.navbar-brand{
    display: flex;
    align-items: center;
}
.navbar-brand > img{
    width: 100%;
    height: 100%;
}
.logo_title{
    display: flex;
    flex-direction: column;
    font-weight: bold;
    color: #fff;
    text-align: center;
}
.logo_title > span{
    font-size: .875rem;
    font-family: 'SourceHanSansKR-ExtraLight';
    color: #fff;
    font-weight: 100;
    letter-spacing: 1;
}
.header_layout{
    display: flex;
    width: 100%;
    flex-direction: row-reverse;
    padding: 200px 0 30px 0 ;
}
.header_text{
    text-align: right;
    width: 40%;
}
.header_title{
    font-size: 2.5rem;
    color :#fff;
    font-weight: 400;
    font-family: 'SourceHanSansKR-Medium';
}
.header_title > span{
    color: #E5C5FF;
    font-size: 3.75rem;
    font-weight: bold;
    font-family: 'SourceHanSansKR-Bold';
}
.header_subtitle{
    font-size: 1.875rem;
    color: #fff;
    padding: 20px 0;
}
.header_box{
    padding: 50px 0 0 0;
}
.header_time{
    background-color: rgba(248, 248, 248, 0.69);
    border-radius: 24px;
    padding: 20px 30px;
    display: flex;
    height: 34%;
}
.header_left, .header_right{
    display: flex;
    
    width: 50%;
    flex-direction: column;
}
.header_left_layout{
    width: 100%;
    display: flex;
    align-items: center;
}
.header_left_title{
    font-size: 1.125rem;
    width: 34%;
    text-align: justify;
    font-family: 'SourceHanSansKR-Regular';
}
.header_left_title::after{
    content: '';
    display: inline-block;
    width: 100%;
}
.header_left_subtitle{
    font-size: .9375rem;
    font-family: 'SourceHanSansKR-Light';
    color: #575757;
    width: 45%;
}
.exception{
    width: 100%;
    text-align: left;
    font-size: .75rem;
}
.line{
    width: 1px;
    height: 100%;
    background-color: #575757;
}
.header_right{
    text-align: center;
    justify-content: space-around;
}
.header_right_title{
    font-family: 'SourceHanSansKR-Regular';
    font-weight: 600;
    font-size: 1.125rem;
}
.header_right_tel, .header_right_phone{
    font-family: 'SourceHanSansKR-Bold';
    color: #575757;
    font-weight: bold;
}
.header_right_tel{
    font-size: 1.5rem;
}
.header_right_phone{
    font-size: 1.125rem;
}
.header_img{
    position:absolute;
    bottom:0;

}

.content_container{
    padding:100px 0;
}
.content_container > .col-8 > img{
    width: 100%;
}
.circle{
    display: flex;
    justify-content: space-evenly;
    padding: 0 0 100px 0;
}
.circle > div{
    position:relative;
    z-index: 1;
    cursor: pointer;
}

.implant::after, .correction::after, .laminate::after{
    position:absolute;
    width: 100%;
    height: 100%;
    border-radius: 1000px;
    background-color: rgba(0,0,0,0.6);
    left: 0;
    text-align: center;
    padding: 45% 0 0 0;
    color: #fff;
    font-size: 1.875rem;
    font-weight: 600;
}
.implant::after{
    content: "임플란트";
}
.correction::after{
    content: "교정";
}
.laminate::after{
    content: "라미네이트";
}
.section_01, .section_02{
    display: flex;
    align-items: center;
    width: 100%;
    background-color: #EBEBEB;   
}
.section_01{
    border-radius: 0 1000px 1000px 0;
}
.right_01{
    padding: 0 0 0 50px;
}
.title_01{
    font-family: 'SourceHanSansKR-Bold';
    font-size: 2.5rem;
    color: #8758AC;
    
}
.subtitle_01{
    font-size: 1.5625rem;
    color: #575757;
    padding: 80px 0 40px 0;
}
.infomation{
    font-size: 1.25rem;
    color: #969696;
    text-decoration: none;
}
.section_02{
    border-radius: 1000px 0 0 1000px;
    flex-direction: row-reverse;
}
.right_02{
    padding: 0 50px 0 0 ;
    text-align: right;
}
.section_03{
    background-image: linear-gradient(72deg, #575757 0% ,#7d7d7d 100%);
    padding: 40px 0;
    display: flex;
    justify-content: center;
}
.section_03_layout{
    display: flex;
    justify-content: center;
    width: 50%;
}
.section_03_header{
    display: flex;
    flex-direction: column;
}
.section_03_title{
    text-align: center;
}
.section_03_title > span{
    font-size: 3.75rem;
    text-align: justify;
    font-family: 'SourceHanSansKR-Heavy';
    color: #E5C5FF;
    width: 55%;
    display: inline-block;
}
.section_03_title > span::after{
    content:'';
    width: 100%;
    display: inline-block;
}
.section_03_title{
    font-size: 1.875rem;
    color: #fff;
}
.section_03_content{
    padding: 50px 0;
    display: flex;
}
.section_03_img{
    position:relative;
    z-index: 5;
}
.section_03_img::after{
    content: "";
    position:absolute;
    bottom:0;
    left: -30%;
    width: 100%;
    height: 100%;
    background-color: #460875;
    z-index: -1;
    border-radius: 1000px;
}
.section_03_right{
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: space-evenly;
    padding: 0 0 0 100px;
}
.title_03{
    font-size: 1.5625rem;
    color: #fff;
}
.subtitle_03{
    font-size: 2.1875rem;
    font-family: 'SourceHanSansKR-Bold';
    font-weight: bold;
}
.subtitle_03{
    color :#fff;
    line-height: 30px;
}
.subtitle_03 > span{
    color: #CC8DFF;
}
.subtitle_03 > p{
    color: #E5C5FF;
    display: inline-block;
}
.section_04{
    position:absolute;
    right: 0;
    top:-150px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}
.purple_line{
    width: 3px;
    height: 250px;
    background-image: linear-gradient(0deg,#946AB3, #E5C5FF);
}
.section_04_title, .section_04_title > span{
    font-size: 3.125rem;
    font-family: 'SourceHanSansKR-Bold';
    font-weight: bold;
}
.section_04_title{
    text-align: right;
    color: #946AB3;
}
.section_04_title > span{
    color: #460875;
}

.footer{
    background-color: #F2F2F2;
    padding: 30px 0;
}
.footer > .col-8{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.footer_left{
    padding: 20px 0 ;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.footer_left_header{
    text-align: center;
    line-height: 15px;
}
.footer_left_title{
    font-family: 'SourceHanSansKR-Bold';
    font-weight: bold;
    font-size: 1.125rem;
    color: #575757;
}
.footer_left_subtitle{
    font-family: 'SourceHanSansKR-ExtraLight';
    font-size: .625rem;
    color: #969696;
    width: 100%;
    letter-spacing: 1px;
}
.person_info, .person_info > span{
    font-family: 'SourceHanSansKR-Regular';
    font-size: .8125rem;
} 
.person_info{
    color: #969696;
}
.person_info > span{
    color: #575757;
}
.footer_addr{
    font-family: 'SourceHanSansKR-Regular';
    font-size: .625rem;
    color: #969696;
}
.footer_button{
    display: flex;
    padding:0;
    justify-content: space-between;
}
.footer_button > li > a{
    text-decoration: none;
    font-size: .8125rem;
    font-family: 'SourceHanSansKR-Regular';
}
.terms a{
    color: #969696;
}
.private a{
    color: #575757;
}
.introduction a{
    color: #946AB3;
}



.footer_right{
    display: flex;
    justify-content: space-evenly;
    height: 150px;
    align-items: center;
}
.footer_time, .footer_time > span{
    color: #575757;
    font-weight: bold;    
    font-family: 'SourceHanSansKR-Bold';
}
.footer_time{
    font-size: .8125rem;
}
.footer_time > span{
    font-size: 1.5625rem;
}
.footer_time_info{
    display: flex;
    justify-content: space-between;
}
.footer_time_title, .footer_time_subtitle, .footer_time_exception{
    font-size: .8125rem;
    font-family: 'SourceHanSansKR-Regular';
}
.footer_time_title{
    text-align: justify;
    color: #969696;
    width: 30%;
}
.footer_time_title::after{
    content: '';
    display: inline-block;
    width: 100%;
}
.footer_time_subtitle{
    color: #AFAFAF;
    width: 55%;
}
.footer_time_right{
    height: 80%;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;

}
.footer_time_exception{
    width: 100%;
    color: #AFAFAF;
}