@charset "UTF-8";


@media all and (max-width:1280px) {
    header nav .gnb li {padding: 0 16px;}
    header nav .gnb li a {font-size: 16px;}
    .common-inner {width: 90%; margin: 0 auto; padding: 0;}
    .main-visual .common-inner {background-size: auto 600px; background-position: left 5% center;}
    .main-visual .title-area {right: 5%;}
    .main-visual .title-area h2 {font-size: 46px;}
    .main-visual .title-area p {font-size: 16px;}
    .main-info .highlight {font-size: 1.125em;}
    .main-link .link-wrap .btn-link {padding: 68px 30px;}
    .main-link .link-wrap .btn-link span {font-size: 1.125em;}
    section.sub-visas .sub-intro-box {background-size: 360px auto;}
    body.eng section.sub-visas .sub-intro-box p {width: 48%;}
    .product-box-wrap .product-box {width: calc(33.33333% - 10px);}
    .product-box-wrap .product-box .img-wrap {height: auto;}
    .product-box-wrap .product-box .product-title {padding: 16px;}
    .product-box-wrap .product-box .product-title p:first-child {font-size: 1em;}
    .modal .btn-close {top: 1rem; right: .5rem;}
    .modal .video-wrap {width: 95%;}
}
@media all and (max-width:768px) {
    body {font-size: 14px;}
    header {height: 70px;}
    header .logo img {width: 164px;}
    header nav .gnb {display: none;}
    header .btn-m-menu {display: block;}
    main {padding-top: 70px;}
    section:not(.main-visual, .sub-faq) {margin-top: 80px;}
    section:first-of-type:not(.main-visual, .sub-faq) {margin-top: 50px;}
    section:last-child {margin-bottom: 100px;}
    section.sub-faq {padding-top: 50px;}
    section.sub-web {padding: 80px 0 100px; margin-bottom: 0;}
    .heading-01 {padding-bottom: 16px; margin-bottom: 32px;}
    .list li::before {top: 9px; width: 3px; height: 3px;}
    .main-visual .common-inner {background-size: 40% auto; background-position: left 7% center;}
    .main-visual .title-area {width: 44%; right: 5%;}
    .main-visual .title-area h2 {margin-bottom: 20px; font-size: 38px; line-height: 1; letter-spacing: -1px;}
    .main-visual .title-area p br:not(:last-of-type){display: none;}
    .table-container {overflow-x: scroll; -webkit-overflow-scrolling: touch; margin-bottom: 20px;}
    .table-container::-webkit-scrollbar {background-color: transparent;}
    .table-container .table-info {display: block;}
    .table-container .table, .table-container img {width: 950px;}
    .main-link .link-wrap .btn-link {padding: 30px 24px; background-image: none !important;}
    section.sub-flow .table-container {margin-bottom: 20px;}
    section.sub-visas {margin-top: 40px;}
    body.eng section.sub-visas .sub-intro-box {height: 450px;}
    body.eng section.sub-visas .sub-intro-box p {width: auto;}
    section.sub-visas .sub-intro-box {margin: 28px 0 32px; height: 420px; background-position: center bottom 30px; background-size: 280px auto;}
    section.sub-visas .sub-intro-box .text{padding: 40px 32px 0; text-align: center; position: static; transform: none;}
    section.sub-visas .sub-intro-box .text h3 {font-size: 1.75em; margin-bottom: 12px;}
    /* section.sub-visas .heading-02:not(:first-of-type) {margin-top: 28px;} */
    section.sub-overview .table-container {margin-bottom: 10px;}
    section.sub-program .program-step-wrap .step-box {margin-bottom: 20px; padding: 20px;}
    .sub-application .program-box .badge-wrap {margin-bottom: 8px;}
    .sub-application .program-box .list-title {width: 144px; padding-left: 20px;}
    body.eng .sub-contact .common-box .heading-02 span {display: block; margin-left: 0;}
    section.sub-video {margin-top: 50px;}
    .product-box-wrap .product-box {width: calc(50% - 10px);}
    .product-box-wrap .product-box:nth-last-child(-n+3) {margin-bottom: 32px;}
    /* .product-box-wrap .product-box:last-child {margin-bottom: 0;} */
}

@media all and (max-width:480px) {
    header .logo img {width: 144px;}
    header .lang-wrap i {display: none;}
    header .lang-wrap .lang-select button {padding: 6px 28px 6px 12px;}
    header .lang-wrap .lang-select button::after {right: 12px;}
    footer .go-top {top: -23px; width: 40px; height: 40px;}
    footer .footer-logo a {margin: 0 12px;}
    footer .footer-logo a img {height: 32px;}
    footer h2.footer-title {margin-top: 20px; font-size: 20px;}
    footer address {margin-top: 12px;}
    footer address i {font-size: 0.938em;}
    .heading-01 {font-size: 20px;}
    .heading-02 {margin-bottom: 16px;}
    .heading-03::before {top: 4px;}
    .common-box {padding: 20px;}
    .common-box h5.heading-03 {margin-bottom: 8px;}
    .btn-download {width: 100%;}
    section:not(.main-visual, .sub-faq) {margin-top: 50px;}
    section:first-of-type:not(.main-visual, .sub-faq) {margin-top: 40px;}
    section:last-child {margin-bottom: 80px;}
    section.sub-faq {padding: 40px 0 60px;}
    section.sub-web {padding: 50px 0 80px; margin-bottom: 0;}
    .tab-nav li {width: calc(50% - 5px);}
    .tab-nav li a {font-size: 1em; letter-spacing: -.5px;}
    .main-visual .common-inner {height: auto; padding-bottom: 1050px; background-position: center bottom 70px; background-size: auto 390px;}
    body.kor .main-visual .common-inner {padding-bottom: 1000px;}
    .main-visual .title-area {width: 90%; right: auto; left: 5%; top: 40px; transform: none; text-align: center;}
    .main-visual .title-area h2 {margin-bottom: 12px; font-size: 32px;}
    .main-visual .title-area p {font-size: 14px; line-height: 1.5; word-break: keep-all;}
    .main-visual .title-area .video-wrap {margin-top: 12px;}
    .main-visual .scroll-wrap {bottom: 24px;}
    .main-visual .scroll-wrap span {display: none;}
    .main-link .link-wrap {display: block;}
    .main-link .link-wrap .btn-link {width: 100%;}
    .main-link .link-wrap .btn-link:last-of-type {margin-top: 20px;}
    body.eng section.sub-visas .sub-intro-box {height: 480px;}
    section.sub-visas {margin-top: 30px;}
    section.sub-visas .sub-intro-box .text {padding: 28px 20px;}
    section.sub-visas .sub-intro-box .text h3 {font-size: 20px;}
    section.sub-visas .sub-intro-box .text p {line-height: 1.4;}
    body.kor section.sub-visas .sub-intro-box {height: 400px;}
    body.kor section.sub-visas .sub-intro-box .text p {word-break: keep-all;}
    body.kor section.sub-visas .sub-intro-box .text p br {display: none;}
    section.sub-overview .video-wrap {margin-bottom: 24px;}
    .sub-application .program-box  {padding: 20px 0 60px;}
    .sub-application .program-box:not(:has(.btn-fill)) {padding: 20px 0px;}
    .sub-application .program-box>*:not(.btn-fill) {padding: 0 18px;}
    .sub-application .program-box .program-list li {display: block;}
    .sub-application .program-box .program-list li:not(:last-child) {margin-bottom: 8px;}
    .sub-application .program-box .list-title {margin-bottom: 2px;}
    .sub-application .program-box .next-wrap {padding-top: 16px;}
    .sub-application .program-box .btn-fill {top: auto; right: auto; bottom: 0; left: 0; width: 100%; padding: 14px 0; border-radius: 0 0 10px 10px; box-shadow: none;}
    .sub-faq .faq-box {padding: 20px;}
    .sub-faq .faq-box li:not(:last-of-type) {margin-bottom: 24px;}
    .product-box-wrap .product-box {width: 100%;}
}