@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900');
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css');

/* reset css*/
* {-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {margin:0; padding:0; border:0; font-family:'Noto Sans KR', sans-serif; font-size:100%; background:transparent; letter-spacing:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}
body {line-height:1 !important; word-break:keep-all}
ol, ul, li {list-style:none}
blockquote, q {quotes:none}
blockquote:before, blockquote:after, q:before, q:after {content:''; content:none}
table {border-collapse:collapse; border-spacing:0; table-layout:fixed}
caption, legend {overflow:hidden; text-indent:-9999px; height:1px; padding:0 !important}
html {font-family:sans-serif; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%}
a {background-color:transparent; color:inherit; text-decoration:none}
a:active, a:hover {outline:0; text-underline-position:under}
p {outline:none}
img {border:0}
button {background:inherit; border:none; box-shadow:none; border-radius:0; padding:0; overflow:visible; cursor:pointer}
select {font:inherit}
select:hover {cursor:pointer}
textarea {padding:0}
input, select {vertical-align:top; margin-top:0 !important}
input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {-webkit-appearance:none; margin:0}
input[type=number] {-moz-appearance:textfield}

.width100 {width:100%}
.auto {margin:0 auto}

.main-header {display:flex; align-items:center; justify-content:space-between; padding:32px 60px; box-sizing:border-box; position:relative; z-index:20}
.main-header.fixed {width:100%; position:fixed; top:0; left:0; z-index:1000; background:#222326}
.main-logo img {width:232px; height:auto; display:block}
.main-header-actions {display:flex; align-items:center; gap:26px}
.btn-eng {font-family: "adobe-myungjo-std", serif; font-size:14px; font-weight:500; letter-spacing:.03em}
.btn-menu {width:56px; height:48px; position:relative; border:1px solid #878787; border-radius:5px; text-align:center; padding:10px}
.btn-menu span, .btn-menu span:before, .btn-menu span:after {content:''; display:block; width:33px; height:1px; background:#fff; transition:all .25s ease}
.btn-menu span {margin-top:0px}
.btn-menu span:before {position:relative; top:-10px}
.btn-menu span:after {position:relative; top:10px}
.side-menu {position:fixed; top:0; right:0; width:570px; height:100vh; box-sizing:border-box; background:#000; padding:200px 100px 50px 100px; transform:translateX(100%); transition:transform .35s ease; z-index:9999}
.side-menu.open {transform:translateX(0)}
.btn-menu-close {position:absolute; top:50px; right:40px; width:56px; height:48px; border:1px solid #878787; border-radius:5px; text-align:center; padding:10px}
.btn-menu-close:before, .btn-menu-close:after {content:''; position:absolute; top:23px; left:13px; width:28px; height:1px; background:#fff}
.btn-menu-close:before {transform:rotate(45deg)}
.btn-menu-close:after {transform:rotate(-45deg)}
.side-menu-nav {display:flex; flex-direction:column; gap:40px}
.side-menu-nav a {font-family:'Work Sans', sans-serif; font-size:30px; font-weight:300; line-height:1.1; transition:color .25s ease; color:#fff}
.side-menu-nav a:hover {color:#ff6900}
.main-header_page-title-m {display:none}

.main-footer {width:100%; padding:50px; box-sizing:border-box; display:flex; align-items:center; justify-content:space-between; z-index:10; margin-top:70px}
.footer-left, .footer-right {width:240px; display:flex; align-items:center}
.footer-left {justify-content:flex-start; gap:12px}
.footer-right {justify-content:flex-end}
.sns-link {display:inline-flex; gap:10px; align-items:center; justify-content:center; width:38px; height:38px}
.sns-link img {width:38px; height:38px; display:block}
.footer-address {text-align:center; flex:1; font-family:'Noto Sans KR', sans-serif; font-size:14px; font-weight:400; line-height:1.4}
.footer-pdf-btn {display:inline-flex; align-items:center; justify-content:center; min-height:40px; border:1px solid #fff; border-radius:10px; padding:0 40px; font-family:'Noto Sans KR', sans-serif; font-size:14px; font-weight:400; transition:background-color .25s ease, border-color .25s ease}
.footer-pdf-btn:hover {background-color:#ff6900; border-color:#ff6900}

.subTit {margin:0; font-size:60px; font-weight:700; line-height:1.25; color:#fff; text-align:center}
.subDesc {margin:24px 0 0 0; font-size:18px; font-weight:400; line-height:30px; color:#b5b5b5; text-align:center}


/* 반응형 */
@media all and (min-width:1025px) {
	.main-header {padding:40px 50px 40px 50px}
	.main-footer {padding:50px}
}
@media all and (max-width:1024px) {
	.main-header {padding:24px 26px}
	.main-logo img {width:120px}
	.side-menu {width:min(100vw, 420px); padding:100px 28px 40px 28px}
	.btn-eng {font-size:13px}
	.btn-menu {width:46px; height:38px}
	.btn-menu span, .btn-menu span:before, .btn-menu span:after {width:23px}
	.btn-menu span {margin-top:0px}
	.btn-menu span:before {position:relative; top:-7px}
	.btn-menu span:after {position:relative; top:7px}
	.btn-menu-close {top:24px; right:20px}
	.side-menu-nav a {font-size:27px}
	.main-footer {padding:20px 26px 24px; flex-wrap:wrap; row-gap:14px}
	.footer-left, .footer-right {width:auto}
	.footer-address {order:3; width:100%; text-align:center}
	.subTit {font-size:clamp(36px, 6vw, 52px)}
	.subDesc {margin-top:18px; font-size:16px; line-height:1.75}
}
@media all and (max-width:767px) {
	.main-header {padding:16px 16px}
	.main-header .main-header_page-title {display:none}
	.main-header_page-title-m {display:block; text-align:center; margin-bottom:70px}
	.main-header-actions {gap:16px}
	.btn-eng {font-size:16px}	
	.side-menu {width:100%; max-width:100vw; padding:88px 24px 32px 24px; box-sizing:border-box}
	.side-menu-nav {gap:28px}
	.side-menu-nav a {font-size:clamp(18px, 4.6vw, 24px)}
	.btn-menu-close {top:20px; right:16px}
	.main-footer {flex-direction:column; align-items:stretch; justify-content:center; text-align:center; padding:16px 16px max(16px, env(safe-area-inset-bottom)); row-gap:12px; margin-top:32px}
	.footer-right {order:1; width:100%; justify-content:center}
	.footer-left {order:2; width:100%; justify-content:center}
	.footer-address {order:3; font-size:12px; line-height:1.5}
	.footer-pdf-btn {width:100%; max-width:280px; margin:0 auto; box-sizing:border-box}
	.subTit {font-size:clamp(28px, 8.3vw, 40px); line-height:1.3}
	.subDesc {margin-top:14px; font-size:14px; line-height:1.7}
}
@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}