@charset "UTF-8";

@media screen and (max-width: 480px) {
    html,
    body {
        font-size: 12px;
    }
    .subBody {
        padding-top: 60px;
    }
    /**Sub GNB**/
    .toggleBtn {
        display: block;
    }
    .logo-menubtn {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        padding: 9px 10px 11px 10px;
    }
    .logo-menubtn h1 img {
        vertical-align: middle;
    }
    .searchBtn {
        cursor: pointer;
        display: flex;
        width: 40px;
        height: 40px;
    }
    .m-top-btn {
        display: flex;
    }

    .mainMenu {
        display: flex;
        justify-content: space-between;
        align-items: center;
        max-width: 100%;
    }
    .mainMenu .logo-menubtn h1 img {
        width: 200px;
    }
    .mainMenu .gnbMenu {
        position: fixed;
        top: 0;
        left: 100%;
        display: flex;
        flex-direction: column;
        width: 100%;
        height: 100%;
        background-color: #fff;
        overflow-y: auto;
        z-index: 1;
        transition: 0.3s;
    }
    .mainMenu .gnbMenu.menuOpen {
        left: 0;
    }
    .mainMenu .gnbMenu > li > a {
        font-size: 18px;
        font-weight: 700;
        padding: 16px 20px 10px;
        border-top: 1px solid #999;
    }
    .mainMenu .gnbMenu > li > a:after {
        display: none;
    }

    .mainMenu .gnbMenu > li .subMenu {
        position: static;
        left: 0;
        width: 100%;
        height: auto;
        background-image: none;
        box-shadow: none;
        transition: 0.3s;
    }
    .mainMenu .gnbMenu > li:hover .subMenu,
    .mainMenu .gnbMenu > li:hover .subMenu.sub1
    .mainMenu .gnbMenu > li:hover .subMenu.sub2
    .mainMenu .gnbMenu > li:hover .subMenu.sub3
    .mainMenu .gnbMenu > li:hover .subMenu.sub4
    .mainMenu .gnbMenu > li:hover .subMenu.sub5 {
        height: auto !important;
    }

    .mainMenu .gnbMenu > li .subMenu .submenu-inner {
        display: flex;
        width: 100%;
        padding: 0 20px 20px 20px;
    }
    .mainMenu .gnbMenu > li .subMenu .submenu-inner > h3 {
        display: none;
    }
    .mainMenu .gnbMenu > li .subMenu .submenu-inner > ul {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        background-color: #fff;
        padding: 0;
    }
    .mainMenu .gnbMenu > li .subMenu .submenu-inner > ul > li {
        width: calc(50% - 5px);
    }
    .mainMenu .gnbMenu > li .subMenu .submenu-inner > ul > li > a {
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 14px;
        font-weight: 600;
        height: 45px;
        background-color: #f4f5fa;
        border-radius: 6px;
    }
    .mainMenu .gnbMenu > li .subMenu .submenu-inner > ul > li > ul {
        margin-top: 5px;
    }
    .mainMenu .gnbMenu > li .subMenu .submenu-inner > ul > li > ul > li > a {
        position: relative;
        display: flex;
        align-items: center;
        font-size: 13px;
        font-weight: 600;
        color: #414141;
        min-height: 40px;
        border-bottom: 1px solid #ddd;
        padding: 8px 0 8px 14px;
    }
    /** e: sub gnb**/

    .mainMenu .utilBox {
        display: none;
    }
    .mainMenu .m-utilBox {
        display: flex;
        justify-content: space-between;
    }
    .mainMenu .m-utilBox {
        width: 100%;
        background-color: #f7f7f7;
        padding: 10px 12px;
        z-index: 9999;
    }
    .mainMenu .m-utilBox > ul {
        display: flex;
        align-items: center;
        font-size: 14px;
    }
    .mainMenu .m-utilBox > ul > li {
        font-weight: 500;
        border-right: 1px solid #ccc;
    }
    .mainMenu .m-utilBox > ul > li:last-child {
        border: none;
    }
    .mainMenu .m-utilBox > ul > li > a {
        display: block;
        line-height: 14px;
        padding: 0 8px;
    }
    .mainMenu .m-utilBox > ul > li:nth-child(3) > a img {
        display: none;
    }

    #dropdownMenu {
        top: 58px;
        background-color: #fff;
        padding: 20px 14px;
    }
    #dropdownMenu.show {
        min-height: 195px;
    }
    .searchArea {
        width: 100%;
    }
    .searchArea .scForm input {
        line-height: 50px;
    }
    .searchArea .scForm a > img {
        width: 24px;
    }
    .searchArea .key {
        padding: 10px 0;
    }
    .searchArea .key span {
        padding: 2px 8px;
        margin: 3px;
    }

    #lnb-about-placeholder,
    #lnb-info-placeholder,
    #lnb-member-placeholder,
    #lnb-notice-placeholder,
    #lnb-sale-placeholder {
        display: none;
    }

    .subVisual {
        height: 160px;
    }
    .subVisual > div > h2 {
        font-size: 35px;
    }
    .subVisual > div > p {
        font-size: 14px;
        margin-top: 6px;
    }

    main {
        margin-top: 0;
        color: #111;
        padding-bottom: 50px;
    }
    .subWrap {
        display: block;
        width: 100%;
    }

    .subTitle {
        padding: 10px;
    }
    .subTitle .btnArea > a {
        width: 30px;
        height: 30px;
    }
    .subTitle .btnArea {
        padding-top: 0;
    }

    .content {
        padding: 0 10px;
        margin-top: 30px;
    }

    .search-box {
        padding: 20px 12px 16px 12px;
    }
    .search-box .multi {
        gap: 5px;
    }
    .search-box select {
        line-height: 40px;
        padding: 0 16px 0 6px;
        background: #fff url(/img/arrow-select.svg) no-repeat right 6px center;
        background-size: 8px;
    }
    .search-box input[type="date"],
    .search-box .search-text input[type="text"] {
        line-height: 38px;
        padding: 0 6px 0 8px;
    }
    .search-box .search-text {
        height: 42px;
        width: auto;
        flex: 1;
    }
    .search-box input[type="text"] {
        width: 86px;
        line-height: 40px;
    }
    .search-box .multi {
        align-items: end;
    }
    .search-box .multi > div {
        flex-direction: column;
        align-items: flex-start;
        margin-left: 0;
    }
    .search-box .single label,
    .search-box .multi label {
        margin: 0 0 4px 2px;
    }
    .search-box .single label::after,
    .search-box .multi label::after {
        display: none;
    }
    .search-box .multi > div.flexfull {
        flex: 1;
        flex-direction: row;
    }
    .search-box .multi > div.btnset {
        flex-direction: row;
    }
    .search-box .normal-inner .empty {
        margin: 0 1px;
    }
    .btn-search,
    .btn-reset {
        width: 40px;
        height: 40px;
    }

    .schedule > div {
        flex: 1;
    }
    .schedule input[type="date"] {
        font-size: 14px;
        width: 105px;
    }
    .schedule > div i {
        margin: 0 4px;
    }
    .schedule > a {
        padding: 0 2px;
    }
    .schedule > a img {
        display: none;
    }

    /*table*/
    .mob-table {
        width: 100%;
        overflow-x: auto;
    }
    .tableArea {
        margin-top: 20px;
    }
    .tbList > li > a > dl {
        padding: 16px 6px;
    }
    .tbList > li > a > dl > dd {
        flex-wrap: wrap;
        padding-top: 0;
    }
    .tbList > li > a > dl > dt .file {
        order: 1;
        margin-left: 0;
        margin-right: 5px;
    }
    .tbList > li > a > dl > dt p {
        order: 2;
    }
    .tbList > li > a > dl > dd > p {
        align-items: center;
        padding: 3px 0;
        margin-right: 8px;
    }
    .tbList > li > a > dl > dd > p,
    .tbList > li > a > dl > dd > p > span {
        font-size: 12px;
    }
    .tbList > li > a > dl > dd > p > span {
        padding: 2px 6px;
        margin-right: 4px;
    }
    .tbList > li > a > dl > dd > p > strong,
    .tbList > li > a > dl > dd > p > strong.mon {
        min-width: auto;
    }

    .tbView > dl > dt {
        font-size: 18px;
    }
    .tbView > dl > dd {
        gap: 14px;
        flex-wrap: wrap;
    }
    .tbView > dl > dd p > span {
        padding: 2px 5px;
        margin-right: 2px;
    }
    .tbView .detail {
        padding-bottom: 10px;
    }
    .tbView .detail > dl {
        padding: 10px;
    }
    .tbView .detail > dl > dt {
        margin-bottom: 6px;
    }
    .tbView .detail > dl > dt > span {
        display: none;
    }
    .tbView .detail .prenext > dl > dt {
        padding: 6px 10px;
    }

    .regiTable th {
        width: 10%;
        padding-left: 10px;
    }
    .regiTable th,
    .regiTable td {
        padding: 10px;
    }

    .addOpt {
        flex-direction: column;
    }
    .addOpt .order2 {
        order: 2;
        width: 100%;
        text-align: left;
        margin-top: 10px;
    }

    .pasing {
        padding-top: 20px;
    }
    .pasing > ul > li > a {
        font-size: 12px;
        width: 30px;
        height: 30px;
    }

    .galleryList {
        gap: 6%;
    }
    .galleryList > li {
        width: 47%;
        margin-bottom: 20px
    }
    .galleryList .imgArea {
        height: 110px;
    }
    .galleryList .txtArea {
        padding: 10px;
        padding-bottom: 20px;
    }

    .sub-content-top {
        color: #fff;
        background-image: none;
        background: #039CD9;
        padding: 25px 20px;
    }
    .sub-content-top h3 {
        color: #fff;
        line-height: 140%;
    }
    .sub-content-top.bg-img1,
    .sub-content-top.bg-img2,
    .sub-content-top.bg-img3,
    .sub-content-top.bg-img4,
    .sub-content-top.bg-img5,
    .sub-content-top.bg-img6 {
        background-image: none;
    }

    .normalPage {
        padding-top: 26px;
    }
    .normal-type-box {
        margin-bottom: 30px;
    }
    .normal-type-box dd > p::before {
        top: 8px;
    }
    .p-step > ul {
        flex-direction: column;
    }
    .p-step > ul > li p {
        padding: 5px 5px 5px 5px;
    }
    .p-step > ul > li.imgBlock {
        display: flex;
        align-items: center;
        gap: 16px;
    }
    .p-step > ul > li.imgBlock > img {
        height: 100px;
    }
    .p-step > ul > li.imgBlock > div {
        text-align: left;
    }
    .p-step > ul > li.arrow {
        justify-content: center;
        height: 50px;
    }
    .p-step > ul > li.arrow > img {
        transform: rotate(90deg);
        width: 20px;
    }

    .mob-table table th,
    .mob-table table td {
        padding: 16px 10px !important;
    }

    .inBox .in-detail {
        padding: 20px 10px;
    }

    .divBox {
        padding-bottom: 30px;
    }
    .divBox dl {
        flex-direction: column;
        gap: 20px;
    }
    .divBox dl dt {
        width: 100%;
        min-height: 60px;
    }
    .divBox dl dt.div01,
    .divBox dl dt.div02,
    .divBox dl dt.div03,
    .divBox dl dt.div04 {
        background-size: cover;
        background-position: top;
    }
    .divBox dl dd ul li {
        width: 100%;
    }
    .divBox .normal-type-table {
        margin-top: 20px;
    }
    .divBox .normal-type-table th,
    .divBox .normal-type-table td {
        padding: 14px 10px;
    }

    .director .multi {
        flex-direction: column;
        gap: 20px;
    }
    .director article {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .director article.first > div {
        padding: 0 20px;
    }
    .director article.first .detail {
        gap: 20px;
    }
    .director article.first .detail > dt > p {
        width: 70px;
        height: 70px;
    }
    .director article.second {
        padding: 0 20px;
    }
    .director article.second > div {
        padding: 20px 0;
    }
    .director article dl.detail > dt > p {
        width: 70px;
        height: 70px;
    }
    .director article.third {
        flex-direction: column;
        padding: 0 20px;
    }
    .director article.third > div {
        justify-content: left;
        border-right: none;
        border-bottom: 1px solid #e5e5e5;
        padding: 20px 0;
    }
    .director article.third > div:last-child {
        border: none;
    }
    .director article.fourth {

    }
    .director article.fourth > div {
        width: 50%;
    }
    .director article.fourth > div:nth-child(2n) {
        border: none;
    }

    .ci-info .img-box {
        padding: 20px 30px;
    }
    .ci-info .img-box > img {
        width: 100%;
    }
    .ci-info > div {
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        padding: 30px 0;
    }
    .ci-info .better {
        font-size: 20px;
        margin-bottom: 20px;
    }
    .ci-info .spWord {
        font-size: 32px;
        margin-bottom: 30px;
    }
    .ci-info > div > p > img {
        width: 100%;
    }
    .ciTab .tab-list > li {
        height: 60px;
    }
    .ciTab .tab-list > li > a {
        font-size: 13px;
        padding: 0 10px;
    }
    .ciArea > div {
        flex-direction: column;
        gap: 30px;
        margin: 30px 0;
    }
    .ci-mark > div {
        flex-direction: column;
        gap: 30px;
    }
    .ci-mark > div > div:first-child {
        text-align: center;
    }
    .ci-mark > div > div > img {
        width: 60%;
        margin: 0 auto;
    }
    .ci-sign .titleWith {
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 20px;
    }
    .ci-sign > div h3 {
        padding-bottom: 6px;
    }
    .ci-sign li {
        width: 48%;
        margin-bottom: 15px;
    }
    .ci-sign li > img {
        width: 100%;
    }
    .ci-color .colorRule {
        margin-top: 20px;
    }
    .ci-color .colorRule dl {
        padding: 20px 0;
    }
    .ci-color .colorRule > li dt {
        padding-left: 10px;
        margin-bottom: 10px;
        text-decoration: underline;
    }
    .ci-color .colorRule > li dd {
        flex-wrap: wrap;
        justify-content: left;
        padding-left: 10px;
    }
    .ci-color .colorRule > li dd p {
        width: 44%;
    }
    .ci-color .colorRule > li dd p:nth-child(2n) {
        width: 56%;
    }
    .ci-usage .dont li > p {
        height: 140px;
    }
    .ci-usage .dont li > p > img {
        width: 70%;
    }
    .ci-usage li {
        width: 49%;
        margin-top: 0;
    }
    .ci-usage li > img {
        width: 100%;
    }
    .ci-usage li > p {
        line-height: 140%;
        padding: 10px 0;
    }
    .borderBox {
        padding: 16px;
    }

    .memberInfo {
        flex-direction: column;
    }
    .memberInfo > li {
        padding: 20px;
    }
    .memberInfo > li:first-child {
        border: none;
        border-bottom: 1px solid #ddd;
    }
    .benefit {
        flex-direction: column;
    }
    .benefit dt,
    .benefit dd {
        width: 100%;
        border-radius: 6px;
        padding: 10px;
    }
    .benefit dd {
        border-left: 1px solid #ddd;
    }
    .flexList > li {
        width: 100%;
    }
    .membersForm {
        flex-direction: column;
    }
    .membersForm article {
        width: 100%;
        padding: 20px;
    }
    .mambersTab {
        margin-bottom: 10px;
    }
    .mambersTab > ul {
        gap: 2%;
    }
    .mambersTab > ul > li {
        width: 15%;
    }
    .mambersTab > ul > li > a {
        height: 50px;
    }

    .root_daum_roughmap_landing {
        width: 100% !important;
    }
    .location {
        padding: 30px 0;
    }
    .location > dl > dt {
        padding-left: 0;
        width: 100px;
    }
    .location > dl > dd {
        flex: 1;
    }
    .location .fLine {
        flex-direction: column;
        gap: 10px;
    }
    .location .fLine > li {
        margin: 0;
        padding: 0;
    }

    #salesChart,
    #boardList,
    .moScroll {
        overflow-x: scroll;
    }

    .v-empty-s {
        height: 20px;
    }

    .scheduleForm h4 {
        padding: 20px 16px;
    }
    .scheduleForm > ul > li {
        padding: 16px 0;
        margin: 0 16px;
    }
    .scheduleForm > ul > li > dl {
        gap: 10px;
    }
    .scheduleForm > ul > li > dl > dt > span {
        width: 60px;
    }
    .scheduleForm > ul > li > dl > dd > p {
        display: flex;
        align-items: flex-start;
        gap: 4px;
    }
    .scheduleForm > ul > li > dl > dd > p > a {
        padding-top: 2px;
    }

    .yearArea {
        flex-direction: column;
        margin-top: 30px;
    }
    .yearTab .tab-list {
        flex-direction: row;
        gap: 2px;
    }
    .yearTab .tab-list > li {
        flex: 1;
        height: 60px;
    }
    .yearTab .tab-list > li > a {
        flex-direction: column;
        width: auto;
        font-size: 12px;
        padding: 0 10px;
    }
    .yearTab .tab-list > li.active > a {
        border-radius: 6px !important;
    }
    .yearTab .tab-list > li::after {
        display: none;
    }
    .yearTab .tab-list a strong {
        display: block;
        font-weight: 700;
        padding: 0;
    }
    .year-detail {
        padding: 16px 10px 0;
    }
    .year-detail > ul > li {
        display: flex;
        align-items: flex-start;
        font-size: 12px;
        padding: 10px 0;
    }
    .year-detail > ul > li > strong {
        width: 100px;
    }
    .year-detail > ul > li > span {
        flex: 1;
    }

    .footer-inner {
        width: 100%;
    }
    .footer-inner .footerLink {
        flex-direction: column;
        padding-bottom: 20px;
    }
    .footer-inner .footerLink > ul {
        height: 60px;
    }
    .footer-inner .footerLink > ul > li {
        padding: 0 8px;
    }
    .footer-inner .footerInfo p.logo > img {
        width: 180px;
    }

    .sitemapText {
        display: none;
    }

    table .brb {
        display: block;
    }

    .d-btn {
        height: 40px;
        padding: 0 10px;
    }
    .deSelect {
        line-height: 40px;
        background: #fff url(../img/arrow-select.svg) no-repeat right 8px center;
        padding: 0 24px 0 10px;
    }

    .moBottom {
        align-items: flex-end;
    }

    .m-hidden {
        display: block;
    }
    .m-none {
        display: none;
    }
    .moBlock .pc {
        display: none;
    }
    .moBlock .mob {
        width: 100%;
        display: block;
    }
}
