/* main_common */
.main_tit { margin-bottom: 40px; text-align: center; }
.main_tit .tit1 { font-weight: 500; font-size: 50px; color: #000; line-height: 1.3; }
.main_tit .tit2 { margin-top: 10px; font-size: 18px; color: #9a9a9a; line-height: 1.3; }
@media (max-width: 767px) {
    .main_tit .tit2 { margin-top: 6px; }
}

/* main_visual */
#main_visual { position: relative; overflow: hidden; height: 1000px; max-height: calc(100vh - 20px); }
#main_visual .bg { z-index: 1; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(/image/main/mv_bg1.jpg) no-repeat center/cover; transform: scale(1.2); transform-origin: center; }
#main_visual .bg { animation: scale_1 3s forwards; }
@keyframes scale_1{
    to { transform: scale(1); }
}
#main_visual .frame { z-index: 2; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.37); }
#main_visual .contwrap { height: 100%; }
#main_visual .textbox { z-index: 3; position: relative; top: 50%; transform: translateY(-50%); text-align: center; max-width: 950px; margin: 0 auto; }
#main_visual .textbox .text1 { font-weight: 700; font-size: 60px; color: #fff; line-height: 1.35; }
#main_visual .textbox .text1 br { display: none; }
#main_visual .textbox .text2 { margin-top: 5px; font-size: 26px; color: #fff; line-height: 1.35; }
#main_visual .textbox .text2 br { display: none; }
#main_visual .textbox .icons { margin: -10px; }
#main_visual .textbox .icons ul { margin-top: 35px; display: flex; flex-wrap: nowrap; justify-content: space-between; }
#main_visual .textbox .icons ul li { width: 25%; padding: 10px; }
#main_visual .textbox .icons ul li a { position: relative; display: flex; align-items: center; justify-content: center; border-radius: 50%; background-color: #1371b4; }
#main_visual .textbox .icons ul li:nth-of-type(2n) a { background-color: #138bb4; }
#main_visual .textbox .icons ul li a .imgwrap img { display: inline-block; width: 72px; transform-origin: center; transition: transform 0.3s; }     
#main_visual .textbox .icons ul li a:hover .imgwrap img { transform: scaleX(-1); }
#main_visual .textbox .icons ul li a .scrwrap { margin-top: 11px; font-weight: 600; font-size: 24px; color: #fff; } 

#main_visual .textbox .icons ul li a::before { display: block; content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 50%; border: 1px solid #fff; transform-origin: center; opacity: 0; }
#main_visual .textbox .icons ul li a:hover::before { animation: mv_circle forwards infinite linear 0.8s; }
@keyframes mv_circle {
    0% { opacity: 0; transform: scale(1); }
    40% { opacity: 1; transform: scale(1.05); }
    100% { opacity: 0; transform: scale(1.1); }
}

@media (max-width: 1535px) {
    #main_visual { height: calc(450px + 20vw); }
    #main_visual .textbox .icons ul { margin-top: 30px; }
    #main_visual .textbox .icons ul li a .imgwrap img { width: calc(40px + 2vw); }
}
@media (max-width: 1279px) {
    #main_visual { height: calc(400px + 17vw); }
    #main_visual .textbox .icons ul { margin-top: 25px; }
}
@media (max-width: 1023px) {
    #main_visual { height: initial; padding: 120px 0 70px; }
    #main_visual .textbox { top: initial; transform: translateY(0); }
    #main_visual .textbox .icons ul li a .scrwrap { font-weight: 500; }
}
@media (max-width: 767px) {
    #main_visual .bg { background-position-x: 100%; }
    #main_visual .textbox .text1 br { display: inline-block; }
    #main_visual .textbox .text2 br { display: inline-block; }
}
@media (max-width: 624px) {
    #main_visual .textbox .icons { margin: 0 auto; max-width: 300px; }
    #main_visual .textbox .icons ul { flex-wrap: wrap; }
    #main_visual .textbox .icons ul li { width: 48%; padding: 0; }
    #main_visual .textbox .icons ul li:nth-of-type(n + 3) { margin-top: 4%; }
}


/* main_business */
#main_business { padding-top: 80px; overflow: hidden; }
#main_business .contents1 { margin: -10px; }
#main_business .contents1 ul { display: flex; flex-wrap: wrap; }
#main_business .contents1 ul li { padding: 10px; width: 25%; }
#main_business .contents1 ul li a { padding: 5px; display: flex; align-items: center; justify-content: center; height: 100%; overflow: hidden; border-radius: 10px; border: 1px solid #dbdbdb; pointer-events: none; }
@media (max-width: 1023px) {
    #main_business .contents1 ul li { width: 33.3333%; }
}
@media (max-width: 767px) {
    #main_business .contents1 { margin: 0; }
    #main_business .contents1 ul { justify-content: space-between; }
    #main_business .contents1 ul li { width: 48%; padding: 0; }
    #main_business .contents1 ul li:nth-of-type(n + 3) { margin-top: 4%; }
}

/* main_location */
#main_location { padding: 90px 0; overflow: hidden; }
#main_location .mapcont { position: relative; height: 520px; }
#main_location .mapcont .root_daum_roughmap { width: 100%; height: 100%; }
#main_location .mapcont .root_daum_roughmap .wrap_map { width: 100%; height: calc(100% - 32px); }
#main_location .contents1 { margin-top: 50px; display: flex; flex-wrap: nowrap; }
#main_location .contents1 li { position: relative; width: 33.3333%; padding: 0 30px; display: flex; align-items: center; justify-content: center; }
#main_location .contents1 li:first-of-type { padding-left: 0; }
#main_location .contents1 li:last-of-type { padding-right: 0; }
#main_location .contents1 li::after { display: block; content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 1px; height: 100%; background-color: #d6d6d6; }
#main_location .contents1 li:first-of-type::after { display: none; }
#main_location .contents1 li dl { display: flex; flex-wrap: nowrap; align-items: center; font-size: 20px; color: #8c8c8c; line-height: 1.5; }
#main_location .contents1 li dl * { font-size: inherit; color: inherit; line-height: inherit; }
#main_location .contents1 li dl dt { min-width: max-content; margin-right: 20px; }
#main_location .contents1 li dl dt img { display: inline-block; width: 111px; }
#main_location .contents1 li dl dd b { display: block; font-weight: 600; color: #126aa8; }
#main_location .contents1 li dl dd i { display: none; padding: 0 10px; font-style: normal; }

@media (max-width: 1535px) {
    #main_location .mapcont { height: calc(300px + 14vw); }
    #main_location .contents1 li dl dt img { width: calc(50px + 3.7vw); }
}
@media (max-width: 1279px) {
    #main_location .mapcont { height: calc(250px + 12vw); }
    #main_location .contents1 li dl dt { margin-right: 15px; }
}
@media (max-width: 1023px) {
    #main_location .contents1 { display: block; }
    #main_location .contents1 li { width: 100%; padding: 20px 0; display: block; }
    #main_location .contents1 li:first-of-type { padding-top: 0; }
    #main_location .contents1 li:last-of-type { padding-bottom: 0; }
    #main_location .contents1 li::after { top: 0; left: 50%; transform: translateX(-50%); width: 100%; height: 1px; }
    #main_location .contents1 li dl dt img { width: calc(40px + 3vw); }
    #main_location .contents1 li dl dd br { display: none; }
    #main_location .contents1 li dl dd i { display: inline-block; }
}
@media (max-width: 767px) {
    #main_location .mapcont { height: calc(200px + 10vw); }
}
@media (max-width: 680px) {
    #main_location .contents1 li { padding: 15px 0; }
    #main_location .contents1 li dl { display: block; text-align: center; }
    #main_location .contents1 li dl dt { min-width: initial; margin-right: initial; }
    #main_location .contents1 li dl dt img { width: 100%; max-width: 60px; }
    #main_location .contents1 li dl dd { margin-top: 15px; }
    #main_location .contents1 li dl dd br { display: inline-block; }
    #main_location .contents1 li dl dd i { display: none; }
}