/* °øÅëÀû¿ë */
html {scroll-behavior:smooth;}
body {overflow-x: hidden;}
body.scroll-lock {overflow-y: hidden;}
img {max-width: 100%;}
.inner {width: 90%; max-width: 1600px; margin: 0 auto; }
.bold {font-weight: 700;}
.colorMain {color: var(--mainColor);}
.icon {aspect-ratio: 1/1; font-size: 0;}
.icon img {width: 100%; height: 100%; object-fit: cover;}



/* ºñ¸Þ¿À, À¯Æ©ºê */
.video_container {position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%;}
.video_container iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%; }



/* padding */
.p_tb {padding: 150px 0;}
.p_t {padding-top: 150px;}
.p_b {padding-bottom: 150px;}



/* table */
.tb_box table {width: 100%;}
.tb_box th,
.tb_box td {border: 1px solid var(--border); padding: 10px; vertical-align: middle; text-align: center;}
.tb_box th {background: var(--mainColor); color: #fff;}
.tb_box .pbox {text-align: left; display: flex; flex-direction: column; gap: 5px;}
.tb_box .pbox .p {padding-left: 15px; position: relative;}
.tb_box .pbox .p::before {display: block; content: "-"; position: absolute; left: 0; top: 0;}



/* footer */
#footer {padding: 50px 0; background: #fff; border-top: 1px solid var(--border);}
#footer .tbox {display: flex; flex-wrap: wrap; gap: 40px; align-items: flex-start; justify-content: space-between; padding-bottom: 50px;}
#footer .bbox {display: flex; flex-wrap: wrap; gap: 20px; align-items: flex-start; justify-content: space-between; padding-top: 30px; border-top: 1px solid var(--border);}
#footer .menu {display: flex; gap: 30px 60px; align-items: flex-start; flex-wrap: wrap;}
#footer .menu > li > a {font-weight: 700;}
#footer .menu > li > a:hover {color: var(--mainColor);}
#footer .menu .submenu a {display: block; color: #555; margin-top: 15px; font-size: 0.875rem; line-height: 1;}
#footer .menu .submenu a:hover {color: var(--mainColor);}
#footer .info {font-size: 0.875rem; display: flex; flex-wrap: wrap; gap: 5px 20px;}
#footer .info li {display: flex; gap: 5px;}
#footer .info .gu {color: #aaa;}
#footer .info .nae {color: #777;}
#footer .copy {font-size: 0.8125rem; color: #aaa;}



/* header */
#header {width: 100%; height: 90px; display: flex; align-items: center; position: fixed; z-index: 997;;}
#header .inner {display: flex; align-items: center; justify-content: space-between; height: 100%; gap: 40px;}
#header .logo {font-size: 0;}
#header .logo img {height: 24px;}
#header .nav_wrap {height: 100%;}
#header .menu {display: flex; gap: 40px; align-items: center; color: #000; height: 100%;}
#header .menu > li {height: 100%; position: relative;}
#header .menu > li > a {height: 100%; display: flex; align-items: center; justify-content: center; font-size: 1rem; font-weight: 700; position: relative;}
#header .menu > li > a::after {
    display: block; content: ""; width: 0%; height: 3px; background: #000;
    position: absolute; bottom: 28px; left: 0; transition: all .3s;
}
#header .menu > li:hover > a::after {width: 100%;}
#header .submenu {
    display: none; position: absolute; top: 100%; left: 50%; transform: translateX(-50%); background: rgba(0,0,0,.9);
    padding: 15px; text-align: center; min-width: 120px;
}
#header .submenu > div {display: flex; flex-direction: column; gap: 15px}
#header .submenu > div > a {white-space: nowrap; display: block; color: #fff; font-size: 0.875rem; line-height: 1;}
#header .submenu > div > a:hover {font-weight: 700;}


#header .hamberg {display: none;}
#header.active {background: rgba(255,255,255, .9);}



/* sub */
.sub_top {padding: 90px 0 0;}
.sub_top .inner {padding-bottom: 100px;margin-top:90px;}
.sub_top .titbox {display: flex; flex-direction: column; gap: 20px;}
.sub_top .cate {color: var(--mainColor); font-weight: 700; font-size: 1.5rem;}
.sub_top .tit {display: flex; flex-direction: column; gap: 50px;}
.sub_top .tit .big {font-size: 4.375rem; font-weight: 700; line-height: 1.3;}
.sub_top .tit .small {font-size: 2rem;}
.sub_top .descrip {font-size: 1.25rem; margin-top: 30px; line-height: 1.8;}
.sub_top .bg {height: 300px;}
.sub_top .bg img{ width: 100%; height: 100%; object-fit: cover;}
.sec_tit {margin-bottom: 50px;}
.sec_tit .big {font-size: 3rem; font-weight: 700;}
.sec_tit .small {font-size: 1.125rem; color: #555; margin-top: 20px;}



@media screen and (max-width:1199px) {


    /* sub */
    .sub_top .tit .big {font-size: 3.5rem;}
    .sub_top .tit .small {font-size: 1.75rem;}
    .sub_top .bg {height: 300px;}



}


@media screen and (max-width:899px) {


    /* padding */
    .p_tb {padding: 80px 0;}
    .p_t {padding-top: 80px;}
    .p_b {padding-bottom: 80px;}


    /* table */
    .tb_box {overflow-x: auto;}
    .tb_box table {width: 100%; max-width: max-content;}
    .tb_box th, .tb_box td {font-size: 0.875rem; padding: 10px;}




    /* header */
    #header {height: 60px;}
    #header .inner {gap: 20px;}
    #header .lang {margin-left: auto;}
    #header .logo img {height: 20px;}
    
    #header .hamberg {width: 24px; height: 24px; font-size: 0; display: flex; align-items: center; cursor: pointer; position: relative; z-index: 2;}
    #header .hamberg span {width: 100%; height: 2px; background: #000; display: block; position: relative; transition: all .3s;}
    #header .hamberg span::before,
    #header .hamberg span::after {display: block; content: ""; width: 100%; height: 2px; background: #000; position: absolute; transition: all .3s;}
    #header .hamberg span::before {top: -8px;}
    #header .hamberg span::after {top: 8px;}
    #header .hamberg span.on {background: rgba(255,255,255,0);}
    #header .hamberg span.on::before {top: 0; transform: rotate(-45deg);}
    #header .hamberg span.on::after {top: 0; transform: rotate(45deg);}
    
    #header .nav_wrap {
        position: fixed; top: 0; left: -500px; background: rgba(0,0,0,.95); width: 500px; height: 100vh;
        transition: all .3s; z-index: 1;
    }
    #header .nav_wrap.on {left: 0;}
    #header .menu {gap: 10px; justify-content: center; flex-direction: column; color: #fff;}
    #header .menu > li {height: auto; width: 100%;}
    #header .menu > li::after {display: none;}
    #header .menu > li > a {height: auto; height: 50px; font-size: 1.125rem; padding: 0 20px;}
    #header .menu > li > a::after {display: none;}
    #header .submenu {position: unset; transform: unset; width: 100%; border: 0; background: #222; padding: 20px;}
    #header .submenu > div {gap: 15px;}
    #header .submenu > div > a {font-size: 0.9125rem;}



    /* sub */
    .sub_top {padding: 100px 0 0;}
    .sub_top .inner {padding-bottom: 60px; margin-top:60px}
    .sub_top .titbox {gap: 20px;}
    .sub_top .cate {font-size: 1.25rem;}
    .sub_top .tit {gap: 20px;}
    .sub_top .tit .big {font-size: 2.5rem;}
    .sub_top .tit .small {font-size: 1.5rem;}
    .sub_top .descrip {font-size: 1.125rem; margin-top: 20px;}


    .sec_tit {margin-bottom: 20px;}
    .sec_tit .big {font-size: 2rem;}
    .sec_tit .small {margin-top: 15px;}


}


@media screen and (max-width:599px) {



    /* footer */
    #footer .tbox {padding-bottom: 30px;}
    #footer .menu {gap: 30px;}
    #footer .menu li {width: calc(50% - 15px);}


    /* hedaer */    
    #header .inner {gap: 10px;}
    #header .nav_wrap {width: 80%;}


    /* sub */
    .sub_top .cate {font-size: 1.125rem;}
    .sub_top .tit .big {font-size:2rem}
    .sub_top .tit .small {font-size: 1.25rem;}
    .sub_top .descrip {font-size: 1rem;}
    .sub_top .bg {height: 180px;}


    .sec_tit .big {font-size: 1.75rem;}
    .sec_tit .small {font-size: 1rem; margin-top: 10px;}




}