@charset "utf-8";

@media screen and (max-width: 1480px) {
    #footer .footer-branch dd:nth-of-type(2) .bar:last-of-type {
        display: block;
        width: 0;
        height: 0;
        margin: 0;
        font-size: 0;
        line-height: 0;
        overflow: hidden;
    }
}

@media screen and (max-width: 1280px) {
    #header .gnb-wrap {
        display: none !important;
    }

    .dep_bg,
    .gnb_bg {
        display: none !important;
    }

    #header {
        height: 74px;
    }

    #header .header-box {
        max-width: none;
    }

    #header .header-logo a {
        display: block;
        height: 32px;
        line-height: 0;
    }

    #header .header-logo img {
        height: 32px;
        width: auto;
    }

    #header.overlay:not(.is-scrolled):not(.is-open) .header-logo .logo-white {
        display: none;
    }

    #header.overlay:not(.is-scrolled):not(.is-open) .header-logo .logo-mix {
        display: inline;
    }

    body #sub:not(:has(#sVisual)),
    body .bbs:first-child {
        padding-top: 74px;
    }

    .full-menu {
        width: 100%;
    }

    .full-menu-header { height: 74px; }

    #mVisual .visual-txt .eyebrow {
        font-size: 1.8rem;
    }

    #mVisual .visual-txt .tit {
        font-size: 6.8rem;
        line-height: 1.3;
    }

    #mVisual .visual-txt .ko-txt {
        font-size: 2.2rem;
    }

    #mVisual .visual-txt .en-txt {
        font-size: 1.7rem;
    }

    #main .tit-box .small-tit {
        font-size: 1.7rem;
    }

    #main .tit-box .big-tit {
        font-size: 4.8rem;
    }

    #main .tit-box .big-tit::after {
        width: 9px;
        height: 9px;
        margin-left: 4px;
        top: 1px;
    }

    #main .tit-box .sub-txt {
        font-size: 1.7rem;
    }

    #main .section1 .service-box .txt strong {
        font-size: 2.1rem;
    }

    #main .section1 .service-box .txt span {
        font-size: 1.4rem;
    }

    #main .section1 .service-box .txt .detail {
        font-size: 1.5rem;
    }

    #main .section2 .tilt-box .tit em {
        font-size: 1.6rem;
    }

    #main .section2 .tilt-box .tit strong {
        font-size: 2.4rem;
    }

    .network-item .txt-head strong {
        width: 84px;
        font-size: 1.8rem;
    }

    .network-item.is-open .txt-head strong {
        font-size: 2.4rem;
    }

    .network-item .desc {
        font-size: 1.5rem;
    }

    #main .section4 .record-box .num {
        font-size: 3.4rem;
    }

    #main .section4 .record-box .label {
        font-size: 1.7rem;
    }

    #main .section5 .overview-txt {
        padding-bottom: 76px;
    }

    #main .section5 .overview-txt .watermark {
        font-size: 8.4rem;
        bottom: -40px;
    }

    #main .section5 .overview-txt .evt {
        font-size: 3.4rem;
    }

    #main .section5 .overview-txt .txt {
        font-size: 1.5rem;
    }

    #footer .footer-menu a {
        font-size: 1.4rem;
    }

    #footer .footer-menu li + li::before {
        margin: 0 60px;
    }

    #footer .footer-copy {
        font-size: 1.5rem;
    }

    #footer .footer-cont {
        gap: 60px;
        padding: 40px 40px 0;
        flex-direction: column;
    }

    #footer .branch-wrap {
        gap: 50px;
    }

    #footer .branch-col {
        gap: 24px;
    }

    #footer .footer-bottom {
        gap: 24px;
        padding: 60px 40px 80px;
    }

    #main .section1 .service-box .txt .detail br {
        display: none;
    }

    #main .section2 {
        padding: 0 0 120px;
    }

    #main .section2 .tilt-slide {
        height: 500px;
    }

    #main .section2 .tilt-track {
        gap: 40px;
    }

    #main .section2 .tilt-box {
        width: 300px;
        padding: 32px;
    }

    .quick-menu {
        right: 30px;
        bottom: 30px;
        width: 70px;
        gap: 8px;
    }

    .quick-menu .talk,
    .quick-menu .link-btn {
        width: 70px;
        height: 70px;
        font-size: 1.2rem;
    }

    .quick-menu .talk {
        gap: 3px;
    }

    .quick-menu .talk img {
        width: 33px;
    }

    .quick-menu .btn-top {
        width: 55px;
        height: 20px;
    }
}

@media screen and (min-width: 1025px) and (max-width: 1280px) {
    .full-menu-list .menu-sub a:hover,
    .full-menu-util a:hover {
        color: #5e2b03;
    }
}

@media screen and (max-width: 1024px) {
    #mVisual .visual-txt,
    #mVisual .visual-nav {
        max-width: none;
        bottom: 100px;
    }

    #main .section {
        padding: 100px 0;
    }

    #main .section .section-body {
        max-width: none;
    }

    #main .tit-area {
        margin-bottom: 50px;
    }

    #main .section1 .service-list {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    #main .section1 .service-box {
        height: 320px;
    }

    #main .section1 .service-box .txt {
        padding: 0 24px;
    }

    #main .section1 .service-list > li {
        opacity: 0;
        transform: translateY(60px);
        transition: opacity 700ms cubic-bezier(.22, .61, .36, 1), transform 700ms cubic-bezier(.22, .61, .36, 1);
    }

    #main .section1 .service-list > li.is-in {
        opacity: 1;
        transform: none;
        transition-delay: var(--rv-delay, 0ms), var(--rv-delay, 0ms);
    }

    #main .section2 {
        padding: 0 0 100px;
    }

    #main .section2 .tilt-track {
        gap: 30px;
    }

    #main .section2 .tilt-slide {
        height: 400px;
    }

    .network-item {
        gap: 24px;
    }

    .network-item .img-area {
        width: 300px;
    }

    .network-item.is-open .img-area {
        min-height: 300px;
    }

    .network-item .txt-area {
        padding: 30px 0;
    }

    .network-item.is-open .txt-area {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    #sub.company.networks .network-item .txt-area {
        padding: 30px 0;
    }

    #sub.company.networks .network-item.is-open .txt-area {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    #main .section4 .tit-area {
        margin-bottom: 70px;
    }

    #main .section4 .record-list {
        gap: 20px;
    }

    #main .section4 .record-box {
        padding: 20px 24px 60px;
        gap: 24px;
    }

    #main .section4 .record-box .meta {
        height: 130px;
    }

    #main .section4 .record-band {
        height: 300px;
    }

    .marquee-area,
    .marquee-wrap {
        gap: 24px;
    }

    .marquee-area + .marquee-area {
        margin-top: 24px;
    }

    .marquee-box {
        width: 220px;
        height: 140px;
    }

    #main .section6 .marquee-area.is-paused .marquee-wrap {
        animation-play-state: paused;
    }

    #main .section6 .marquee-box.is-active {
        background: #ffffff;
    }

    #main .section6 .marquee-box.is-active::before {
        opacity: 0;
    }

    #main .section6 .marquee-box.is-active img {
        filter: grayscale(0%);
    }

    #main .section7 {
        min-height: 420px;
        padding: 100px 30px;
    }

    #footer .footer-menu li + li::before {
        margin: 0 40px;
    }

    #footer .footer-cont {
        flex-direction: column;
        gap: 40px;
    }

    #footer .branch-wrap {
        gap: 30px;
        width: 100%;
    }

    #footer .branch-col {
        flex: 1;
        min-width: 0;
    }

    #footer .footer-bottom {
        padding: 60px 30px 80px;
    }

    .quick-menu.is-main {
        transition: opacity 400ms cubic-bezier(.22, .61, .36, 1),
        transform 400ms cubic-bezier(.22, .61, .36, 1),
        visibility 0s;
    }

    .quick-menu.is-main.is-hidden {
        opacity: 0;
        visibility: hidden;
        transform: translateY(20px);
        pointer-events: none;
        transition: opacity 400ms cubic-bezier(.22, .61, .36, 1),
        transform 400ms cubic-bezier(.22, .61, .36, 1),
        visibility 0s 400ms;
    }
}

@media screen and (max-width: 940px) {
    #main .section4 .record-list {
        flex-direction: column;
        gap: 0;
    }

    #main .section4 .record-box {
        border-left: 0;
        border-bottom: 1px solid #dddddd;
        padding: 20px 20px 40px;
        gap: 24px;
    }

    #main .section4 .record-box:first-child {
        border-top: 1px solid #dddddd;
    }

    #main .section4 .record-box:last-child {
        border-bottom: 0;
    }

    #main .section4 .record-box .meta {
        height: auto;
        gap: 5px;
    }
}

@media screen and (max-width: 900px) {
    #footer .footer-branch dd:nth-of-type(3) .bar:last-of-type {
        display: block;
        width: 0;
        height: 0;
        margin: 0;
        font-size: 0;
        line-height: 0;
        overflow: hidden;
    }
}

@media screen and (max-width: 800px) {
    .none800 {
        display: none;
    }
}

@media screen and (max-width: 768px) {
    #header {
        height: 64px;
    }

    #header .header-box {
        padding: 0 20px;
    }

    #header .header-logo a {
        width: 65px;
        height: 28px;
    }

    #header .header-logo img {
        width: 65px;
        height: 28px;
    }

    #header .menu-btn {
        width: 26px;
        height: 18px;
    }

    body #sub:not(:has(#sVisual)),
    body .bbs:first-child {
        padding-top: 64px;
    }

    .full-menu-header { height: 64px; padding: 0 20px; }
    .full-menu-logo img { width: 65px; height: 28px; }

    .full-menu-inner {
        padding: 88px 0 40px;
    }

    .full-menu-list .menu-tit {
        height: 61px;
        padding: 16px 20px;
    }

    .full-menu-list .menu-sub a {
        height: 46px;
        padding: 10px 20px;
    }

    .full-menu-util {
        margin: 40px 20px 0;
    }

    #mVisual {
        min-height: 560px;
    }

    #mVisual .visual-txt {
        bottom: 68px;
        padding: 0 20px;
    }

    #mVisual .visual-txt .eyebrow {
        font-size: 1.6rem;
    }

    #mVisual .visual-txt .tit {
        margin-top: 4px;
        font-size: 4.8rem;
        line-height: 1.2;
    }

    #mVisual .visual-txt .ko-txt {
        font-size: 2rem;
        margin-top: 16px;
    }

    #mVisual .visual-txt .ko-txt br {
        display: none;
    }

    #mVisual .visual-txt .en-txt {
        font-size: 1.6rem;
        margin-top: 8px;
    }

    #mVisual .visual-txt a.txt-group {
        margin-top: 40px;
    }

    #mVisual .visual-nav {
        bottom: 60px;
        padding: 0 20px;
        gap: 8px;
    }

    #mVisual .visual-nav button {
        width: 48px;
        height: 48px;
    }

    .contact-btn {
        font-size: 1.8rem;
    }

    #main .section,
    #main .section2,
    #main .section3,
    #main .section5 {
        padding: 40px 0;
    }

    #main .section4 {
        padding: 62px 0 40px;
    }

    #main .section1 {
        padding: 60px 0 40px;
    }

    #main .section6 {
        padding: 40px 0 80px;
    }

    #main .section .section-body {
        padding: 0 20px;
    }

    #main .tit-area {
        margin-bottom: 40px;
    }

    #main .tit-box .small-tit {
        font-size: 1.4rem;
    }

    #main .tit-box .big-tit {
        font-size: 3.2rem;
    }

    #main .tit-box .big-tit::after {
        width: 5px;
        height: 5px;
        margin-left: 2px;
        top: -1px;
    }

    #main .tit-box .sub-txt {
        font-size: 1.6rem;
    }

    #main .tit-box .sub-txt br {
        display: none;
    }

    #main .section1 .service-list {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }

    #main .section1 .service-box {
        height: auto;
        aspect-ratio: 17 / 14;
    }

    #main .section1 .service-box .txt {
        align-items: flex-start;
        justify-content: flex-end;
        gap: 0;
        padding: 12px 10px;
        text-align: left;
    }

    #main .section1 .service-box .txt .tit {
        gap: 4px;
    }

    #main .section1 .service-box .txt strong {
        font-size: 1.4rem;
    }

    #main .section1 .service-box .txt span {
        font-size: 1.2rem;
    }

    #main .section1 .service-box .txt .detail {
        display: none;
    }

    #main .section2 .tilt-slide {
        position: static;
        height: auto;
        padding: 0 20px;
        touch-action: auto;
    }

    #main .section2 .tilt-rotate {
        position: static;
        left: auto;
        top: auto;
        transform: none;
    }

    #main .section2 .tilt-track {
        display: flex;
        flex-direction: column;
        gap: 10px;
        width: 100%;
        transform: none !important;
    }

    #main .section2 .tilt-box {
        display: block;
        position: relative;
        top: auto !important;
        width: 100%;
        height: 98px;
        aspect-ratio: auto;
        padding: 0;
        opacity: 0;
        transform: translateY(60px);
        transition: opacity 700ms cubic-bezier(.22, .61, .36, 1),
        transform 700ms cubic-bezier(.22, .61, .36, 1),
        height 450ms cubic-bezier(.22, .61, .36, 1);
    }

    #main .section2 .tilt-box.is-in {
        opacity: 1;
        transform: none;
        transition-delay: var(--rv-delay, 0ms), var(--rv-delay, 0ms), 0ms;
    }

    #main .section2 .tilt-box:nth-child(n+7) {
        display: none;
    }

    #main .section2 .tilt-box::before {
        display: none;
    }

    #main .section2 .tilt-box .tit {
        position: absolute;
        left: 20px;
        top: 20px;
        right: 72px;
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    #main .section2 .tilt-box .tit em {
        font-size: 1.4rem;
        line-height: 1.6;
    }

    #main .section2 .tilt-box .tit strong {
        font-size: 2rem;
        line-height: 1.6;
        letter-spacing: -0.02em;
    }

    #main .section2 .tilt-btn {
        position: absolute;
        right: 20px;
        top: 33px;
        z-index: 3;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 32px;
        height: 32px;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: #ffffff;
        cursor: pointer;
        transition: transform 400ms cubic-bezier(.22, .61, .36, 1);
    }

    #main .section2 .tilt-btn img {
        width: 20px;
        height: 20px;
    }

    #main .section2 .tilt-box::after {
        background: linear-gradient(200.83deg, rgba(0, 7, 30, 0) 50%, rgba(0, 7, 30, 0.5) 94.74%);
    }

    #main .section2 .tilt-box .txt-list {
        position: absolute;
        left: 20px;
        right: 20px;
        bottom: 20px;
        align-self: auto;
        overflow: visible;
        font-size: 1.4rem;
        line-height: 1.6;
        opacity: 0;
        transform: none;
        transition: opacity 350ms cubic-bezier(.22, .61, .36, 1);
    }

    #main .section2 .tilt-box.is-open {
        height: 260px;
    }

    #main .section2 .tilt-box.is-open::after {
        opacity: 0;
    }

    #main .section2 .tilt-box.is-open .dim,
    #main .section2 .tilt-box.is-open .txt-list {
        opacity: 1;
    }

    #main .section2 .tilt-box.is-open .txt-list {
        transition-delay: 120ms;
    }

    #main .section2 .tilt-box.is-open .tilt-btn {
        transform: rotate(180deg);
    }

    .network-item {
        flex-direction: column;
        gap: 0;
        height: auto;
    }

    .network-item .img-area {
        width: 100%;
        height: 200px;
        min-height: 200px;
    }

    .network-item .txt-area {
        display: block;
        flex: none;
        padding: 24px 0;
        border-top: 0;
        border-bottom: 1px solid #dddddd;
        margin-bottom: 0;
    }

    .network-item .txt-body {
        gap: 20px;
    }

    .network-item .txt-head {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .network-item .txt-head strong {
        width: auto;
        font-size: 2rem;
        font-weight: 700;
    }

    .network-item .desc {
        font-size: 1.4rem;
        color: #111111;
        -webkit-line-clamp: none;
    }

    .network-item .info {
        display: block;
        font-size: 1.4rem;
        line-height: 1.6;
    }

    .network-item .info span + span::before {
        margin: 0 8px;
    }

    .network-swiper {
        position: relative;
        overflow: hidden;
        opacity: 0;
        transform: translateY(60px);
        transition: opacity 800ms cubic-bezier(.22, .61, .36, 1), transform 800ms cubic-bezier(.22, .61, .36, 1);
    }

    .network-swiper.is-in {
        opacity: 1;
        transform: none;
    }

    .network-swiper .network-list {
        display: flex;
        align-items: flex-start;
        box-sizing: content-box;
        border-bottom: 0;
        transition-property: transform, height;
    }

    .network-swiper .network-item {
        flex: none;
        width: 100%;
        margin-top: 0;
        cursor: default;
    }

    .network-swiper .network-item.is-open .img-area {
        min-height: 200px;
    }

    .network-swiper .network-item .more-btn {
        display: none;
    }

    .network-pager {
        position: static;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        width: 100%;
        margin-top: 24px;
    }

    .network-pager .swiper-pagination-bullet {
        width: 8px;
        height: 8px;
        margin: 0 !important;
        border-radius: 50%;
        background: #dddddd;
        opacity: 1;
        transition: background-color 300ms cubic-bezier(.22, .61, .36, 1);
    }

    .network-pager .swiper-pagination-bullet-active {
        background: #5e2b03;
    }

    #main .section4 .tit-area {
        margin-bottom: 40px;
    }

    #main .section4 .record-box .num {
        font-size: 2.8rem;
    }

    #main .section4 .record-box .label {
        font-size: 1.6rem;
    }

    #main .section4 .record-box .gloss {
        font-size: 1.4rem;
    }

    #main .section4 .record-list.reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }

    #main .section4 .record-box {
        clip-path: inset(0 100% 0 0);
        -webkit-clip-path: inset(0 100% 0 0);
        transition: clip-path 900ms cubic-bezier(.65, 0, .35, 1), -webkit-clip-path 900ms cubic-bezier(.65, 0, .35, 1);
    }

    #main .section4 .record-list.is-in .record-box {
        clip-path: inset(0 0 0 0);
        -webkit-clip-path: inset(0 0 0 0);
    }

    #main .section4 .record-list.is-in .record-box:nth-child(2) {
        transition-delay: 300ms;
    }

    #main .section4 .record-list.is-in .record-box:nth-child(3) {
        transition-delay: 600ms;
    }

    #main .section4 .record-band {
        height: 200px;
    }

    #main .section5 .tit-area {
        margin-bottom: 24px;
    }

    #main .section5 .overview-txt {
        padding-bottom: 85px;
    }

    #main .section5 .overview-txt .watermark {
        left: 50%;
        right: auto;
        bottom: -3px;
        transform: translateX(-50%);
        font-size: 4.8rem;
    }

    #main .section5 .overview-txt .evt {
        font-size: 2.4rem;
    }

    #main .section5 .overview-txt .txt {
        font-size: 1.4rem;
        margin-top: 8px;
    }

    #main .section5 .overview-media {
        width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-top: -20px;
    }

    .marquee-area,
    .marquee-wrap {
        gap: 20px;
    }

    .marquee-area + .marquee-area {
        margin-top: 20px;
    }

    .marquee-box {
        width: 124px;
        height: 84px;
    }

    #main .section6 .marquee-box img {
        max-height: 44%;
        max-width: 60%;
    }

    #main .section7 {
        min-height: 335px;
        padding: 80px 20px;
    }

    #main .section7 .section-body {
        padding: 0;
    }

    #main .section7 .tit-area {
        margin-bottom: 40px;
    }

    .reveal {
        transform: translateY(60px);
    }

    #footer .footer-menu ul {
        height: auto;
        justify-content: center;
        flex-wrap: wrap;
        padding: 20px;
    }

    #footer .footer-menu li + li::before {
        margin: 0 9.33px;
    }

    #footer .footer-menu a {
        font-size: 1.2rem;
    }

    #footer .footer-cont {
        display: block;
        gap: 0;
        padding: 32px 20px 0;
    }

    #footer .footer-logo .logo-white {
        display: none;
    }

    #footer .footer-logo .logo-mix {
        display: inline;
    }

    #footer .footer-logo a {
        width: fit-content;
    }

    #footer .footer-logo img {
        width: 108px;
    }

    #footer .branch-wrap {
        display: block;
        margin-top: 40px;
    }

    #footer .branch-col {
        display: block;
        gap: 0;
    }

    #footer .footer-branch + .footer-branch,
    #footer .branch-col + .branch-col {
        margin-top: 16px;
    }

    #footer .footer-branch {
        border-bottom: 1px solid #555555;
    }

    #footer .footer-branch dt {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        margin-bottom: 0;
        padding-bottom: 16px;
        font-size: 1.6rem;
        cursor: pointer;
    }

    #footer .footer-branch dt::after {
        content: '';
        flex: none;
        width: 20px;
        height: 20px;
        background: url("/img/ico_arrow_down_w20.svg") no-repeat center / 20px 20px;
        transition: transform 300ms cubic-bezier(.22, .61, .36, 1);
    }

    #footer .footer-branch.is-open dt {
        padding-bottom: 12px;
    }

    #footer .footer-branch.is-open dt::after {
        transform: rotate(180deg);
    }

    #footer .footer-branch dd {
        display: none;
        font-size: 1.3rem;
    }

    #footer .footer-branch dd {
        padding-top: 2px;
    }

    #footer .footer-branch dd:first-of-type {
        padding-top: 0;
    }

    #footer .footer-branch dd:last-of-type {
        padding-bottom: 16px;
    }

    #footer .footer-branch dd .bar {
        display: block;
        width: 0;
        height: 0;
        margin: 0;
        font-size: 0;
        line-height: 0;
        overflow: hidden;
    }

    #footer .footer-branch dd:nth-of-type(3) .bar:first-of-type {
        display: inline;
        width: 11px;
        height: auto;
        margin: 0 6px;
        font-size: 1.1rem;
        line-height: inherit;
        overflow: visible;
    }

    #footer .footer-bottom {
        gap: 30px;
        padding: 60px 20px 60px;
    }

    #footer .footer-copy {
        font-size: 1.4rem;
    }

    #footer .footer-sns {
        gap: 10px;
    }

    #footer .footer-sns a {
        width: 50px;
        height: 50px;
    }

    .quick-menu {
        right: 20px;
        bottom: 40px;
        width: auto;
        gap: 6px;
    }

    .quick-menu .talk,
    .quick-menu .link-btn {
        width: 50px;
        height: 50px;
        font-size: 1.1rem;
    }

    .quick-menu .talk {
        gap: 2px;
    }

    .quick-menu .talk img {
        width: 22px;
    }

    .quick-menu .talk .txt {
        font-size: 1rem;
    }

    .quick-menu .btn-top {
        width: 50px;
        height: 20px;
    }
}

@media screen and (max-width: 1280px) {
    #sVisual.position-visual {
        padding-top: 74px;
    }

    #sVisual .visual-body {
        height: 350px;
        margin: 0 40px;
        border-radius: 0 0 28px 28px;
    }

    #sVisual.position-visual .visual-inner.position-ab {
        border-radius: 0 0 28px 28px;
    }

    #sVisual .visual-txt .txt-wrap .txt-box h2 {
        font-size: 4rem;
    }

    #sVisual .visual-txt .txt-wrap .txt-box p {
        font-size: 1.6rem;
    }

    #sVisual .visual-nav .nav-wrap.breadcrumb {
        height: 60px;
        padding: 16px 28px;
    }

    #sVisual .nav-wrap.breadcrumb li.home {
        padding-right: 14px;
    }

    #sVisual .nav-wrap.breadcrumb li.home img {
        width: 17px;
    }

    #sVisual .nav-wrap.breadcrumb li.dep {
        width: 240px;
        height: auto;
        margin-left: 30px;
        padding: 0 15px;
    }

    #sVisual .nav-wrap.breadcrumb li.dep::before {
        left: -15px;
        height: 28px;
    }

    #sVisual .nav-wrap.breadcrumb li.dep a {
        font-size: 1.6rem;
    }

    #sVisual .nav-wrap.breadcrumb li.dep .dep-dropdown {
        left: -15px;
        top: 166%;
        width: calc(100% + 30px);
        padding: 10px 30px 12px;
    }

    #sVisual .nav-wrap.breadcrumb li.dep + li.dep .dep-dropdown {
        width: calc(100% + 44px);
    }

    #sVisual .nav-wrap.breadcrumb li.dep .dep-dropdown li + li {
        margin-top: 8px;
    }

    #sVisual .nav-wrap.breadcrumb li.dep .dep-dropdown a {
        font-size: 1.5rem;
    }

    #sub.company.ceo .section {
        padding: 100px 0;
    }

    #sub.company.ceo .ceo-sec3 {
        margin-bottom: 106px;
    }

    #sub.company.ceo .cont-tit {
        font-size: 2.2rem;
        margin-bottom: 28px;
    }

    #sub.company.ceo .outline-band {
        height: 92px;
        margin-top: -15px;
    }

    #sub.company.ceo .outline-band .band-item {
        padding-right: 95px;
    }

    #sub.company.ceo .outline-band .band-logo {
        width: 287px;
        height: 84px;
        margin-right: 62px;
    }

    #sub.company.ceo .outline-band .band-sub {
        width: 717px;
        height: 66px;
    }

    #sub.company.ceo .ceo-sec1 .section-row {
        gap: 40px;
    }

    #sub.company.ceo .tit-box .small-tit {
        font-size: 1.7rem;
    }

    #sub.company.ceo .tit-box .mid-tit {
        margin-top: 15px;
        font-size: 3.1rem;
    }

    #sub.company.ceo .ceo-sec1 .img-sticky {
        height: 300px;
    }

    #sub.company.ceo .ceo-sec1 .greeting-txt p {
        font-size: 1.6rem;
    }

    #sub.company.ceo .ceo-sec1 .greeting-txt p + p {
        margin-top: 20px;
    }

    #sub.company.ceo .vision-box {
        gap: 14px;
        padding: 56px 40px;
    }

    #sub.company.ceo .vision-box + .vision-box {
        margin-top: 25px;
    }

    #sub.company.ceo .vision-box .label {
        height: 34px;
        font-size: 1.6rem;
    }

    #sub.company.ceo .vision-box .txt strong {
        font-size: 2.9rem;
    }

    #sub.company.ceo .vision-box .txt p {
        margin-top: 9px;
        font-size: 1.6rem;
    }

    #sub.company.ceo .value-wrap .value {
        gap: 8px;
    }

    #sub.company.ceo .value-wrap .value strong {
        font-size: 2.7rem;
    }

    #sub.company.ceo .value-wrap .value p {
        font-size: 1.6rem;
    }

    #sub.company.history .section {
        padding: 100px 0;
    }

    #sub.company.history .hist-sec1 {
        padding-bottom: 56px;
    }

    #sub.company.history .tit-box .small-tit {
        font-size: 1.7rem;
    }

    #sub.company.history .tit-box .mid-tit {
        margin-top: 15px;
        font-size: 3.1rem;
    }

    #sub.company.history .hist-sec1 .sub-txt {
        margin-top: 17px;
        font-size: 1.6rem;
    }

    #sub.company.history .hist-timeline {
        padding-bottom: 100px;
    }

    #sub.company.history .hist-timeline::before {
        top: 56px;
    }

    #sub.company.history .hist-body {
        gap: 56px;
    }

    #sub.company.history .hist-body::before {
        bottom: 20px;
    }

    #sub.company.history .hist-logo {
        width: 112px;
        height: 112px;
    }

    #sub.company.history .hist-logo img {
        width: 79px;
    }

    #sub.company.history .hist-rows {
        gap: 56px;
    }

    #sub.company.history .hist-row {
        gap: 20px;
    }

    #sub.company.history .hist-row .yr strong {
        font-size: 3.5rem;
    }

    #sub.company.history .hist-row .ct {
        height: 45px;
    }

    #sub.company.history .hist-row .ct .dot {
        width: 10px;
        height: 10px;
    }

    #sub.company.history .hist-row .items {
        gap: 21px;
        padding-top: 9px;
    }

    #sub.company.history .hist-row .item .month {
        font-size: 1.7rem;
    }

    #sub.company.history .hist-row .item .txt {
        font-size: 1.6rem;
    }

    #sub.company.history .hist-more {
        margin-top: -56px;
    }

    #sub.company.history .hist-more .hist-rows {
        padding-top: 56px;
    }

    #sub.company.history .hist-end {
        width: 40px;
        height: 40px;
    }

    #sub.company.history .hist-end::after {
        width: 32px;
        height: 32px;
        background-size: 12px 12px;
    }

    #sub.company.history .hist-end[aria-expanded="true"]::after {
        background-size: 12px 2px;
    }

    #sub.company.value-chain .section {
        padding: 100px 0;
    }

    #sub.company.value-chain .vc-sec1 {
        padding-bottom: 56px;
    }

    #sub.company.value-chain .tit-box .small-tit {
        font-size: 1.7rem;
    }

    #sub.company.value-chain .tit-box .mid-tit {
        margin-top: 15px;
        font-size: 3.1rem;
    }

    #sub.company.value-chain .vc-sec1 .sub-txt {
        margin-top: 17px;
        font-size: 1.6rem;
    }

    #sub.company.value-chain .vc-band {
        padding: 125px 40px;
    }

    #sub.company.value-chain .vc-band .vc-diagram {
        max-width: 700px;
    }

    #sub.company.networks .section {
        padding: 100px 0;
    }

    #sub.company.networks .nw-sec2,
    #sub.company.networks .nw-sec3 {
        padding-top: 0;
    }

    #sub.company.networks .nw-sec1 {
        padding-bottom: 56px;
    }

    #sub.company.networks .tit-box .small-tit {
        font-size: 1.7rem;
    }

    #sub.company.networks .tit-box .mid-tit {
        margin-top: 15px;
        font-size: 3.1rem;
    }

    #sub.company.networks .nw-sec1 .sub-txt {
        margin-top: 17px;
        font-size: 1.6rem;
    }

    #sub.company.networks .cont-tit {
        font-size: 2.2rem;
        margin-bottom: 28px;
    }

    #sub.company.networks .cont-tit .cnt {
        font-size: 1.7rem;
    }

    #sub.company.networks .nw-sec3 .network-item:not(.is-open) .txt-head strong {
        width: auto;
    }

    #sub.company.contact .section {
        padding: 100px 0;
    }

    #sub.company.contact .ct-sec1 {
        padding-bottom: 0;
    }

    #sub.company.contact .ct-sec2 {
        padding-top: 56px;
    }

    #sub.company.contact .tit-box .small-tit {
        font-size: 1.7rem;
    }

    #sub.company.contact .tit-box .mid-tit {
        margin-top: 15px;
        font-size: 3.1rem;
    }

    #sub.company.contact .ct-head {
        gap: 28px;
    }

    #sub.company.contact .ct-head .sub-txt {
        margin-top: 17px;
        font-size: 1.6rem;
    }

    #sub.company.contact .ct-head .contact-btn.pill-btn {
        gap: 8px;
        padding: 8px 8px 8px 20px;
        font-size: 1.6rem;
    }

    #sub.company.contact .ct-head .contact-btn.pill-btn .circle-hover {
        width: 40px;
        height: 40px;
    }

    #sub.company.contact .branch-tab button {
        height: 43px;
        padding: 0 20px;
        font-size: 1.6rem;
    }

    #sub.company.contact .branch-info {
        margin-top: 28px;
    }

    #sub.company.contact .b-name {
        font-size: 2.6rem;
    }

    #sub.company.contact .b-addr {
        font-size: 1.6rem;
    }

    #sub.company.contact .b-meta {
        margin-top: 28px;
    }

    #sub.company.contact .b-meta .meta {
        gap: 14px;
        padding: 10px 20px;
    }

    #sub.company.contact .b-map {
        margin-top: 28px;
        height: 430px;
    }

    #sub.service .section {
        padding: 100px 0;
    }

    #sub.service .tit-box .small-tit {
        font-size: 1.7rem;
    }

    #sub.service .tit-box .mid-tit {
        margin-top: 15px;
        font-size: 3.1rem;
    }

    #sub.service .svc-sec1 {
        padding-bottom: 0;
    }

    #sub.service .svc-sec1 .sub-txt {
        margin-top: 17px;
        font-size: 1.6rem;
    }

    #sub.service .cont-tit {
        font-size: 2.2rem;
        margin-bottom: 28px;
    }

    #sub.service .svc-band {
        margin-top: 56px;
    }

    #sub.service .svc-band .band-txt {
        margin-bottom: -25px;
        padding: 0 40px;
        font-size: 5.6rem;
    }

    #sub.service .svc-band .band-img {
        height: 280px;
    }

    #sub.service .svc-list {
        gap: 28px;
    }

    #sub.service .svc-box {
        gap: 42px;
        padding: 45px 56px;
    }

    #sub.service .svc-box .tit {
        font-size: 1.7rem;
    }

    #sub.service .svc-box li {
        padding-left: 12px;
        font-size: 1.6rem;
    }

    #sub.service .svc-box .ico {
        width: 90px;
        height: 90px;
    }

    #sub.service .svc-box .ico img {
        width: 48px;
        height: 48px;
    }

    #sub.service .svc-cta {
        padding: 70px 40px;
    }

    #sub.service .svc-cta .cta-txt strong {
        font-size: 2.2rem;
    }

    #sub.service .svc-cta .cta-txt p {
        font-size: 1.6rem;
    }

    #sub.service .section.pd-type2 {
        padding: 100px 0 130px;
    }

    #sub.service .svc-sec3 .form-tit {
        margin-bottom: 28px;
    }

    #sub.service .svc-sec3 .form-tit .desc {
        font-size: 1.6rem;
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table textarea {
        height: 200px;
    }

    #sub.properties .section.pd-type2 {
        padding: 100px 0 125px;
    }

    #sub.properties .tit-box .small-tit {
        font-size: 1.7rem;
    }

    #sub.properties .tit-box .mid-tit {
        margin-top: 15px;
        font-size: 3.1rem;
    }

    #sub.properties .prop-sec1 .sub-txt {
        margin-top: 17px;
        font-size: 1.6rem;
    }

    .search-filter .filter-tit {
        font-size: 1.6rem;
    }

    .search-filter .tbl-box.tbl-type2 table tbody th {
        padding: 10px 15px;
        font-size: 1.4rem;
    }

    .search-filter .tbl-box.tbl-type2 table tbody th em {
        font-size: 1.2rem;
    }

    .search-filter .tbl-box.tbl-type2 table tbody td {
        padding: 12px 0 12px 15px;
    }

    .search-filter .filter-chips {
        gap: 8px;
    }

    .search-filter .filter-chips-area {
        gap: 8px;
    }

    .search-filter .filter-chips-area.is-collapsed .filter-chips {
        max-height: 32px;
    }

    .search-filter .chips-toggle {
        width: 22px;
        height: 22px;
        margin-top: 5px;
    }

    .search-filter .chips-toggle img {
        width: 22px;
        height: 22px;
    }

    .search-filter .chip {
        gap: 4px;
        height: 32px;
        padding: 0 12px;
        font-size: 1.4rem;
    }

    .search-filter .chip .chip-unit {
        font-size: 1.2rem;
    }

    .search-filter .selected-bar {
        gap: 14px;
        margin-top: 14px;
        padding: 12px 15px;
    }

    .search-filter .selected-bar .selected-tit {
        font-size: 1.4rem;
    }

    .search-filter .selected-list {
        gap: 8px;
    }

    .search-filter .selected-btn a {
        height: 34px;
        padding: 0 15px;
        font-size: 1.3rem;
    }

    .result-head {
        gap: 28px;
        padding-bottom: 12px;
    }

    .result-head .result-count {
        font-size: 1.6rem;
    }

    .result-head .result-sort,
    .result-head .result-sort li {
        gap: 8px;
    }

    .result-head .result-sort a {
        font-size: 1.4rem;
    }

    .property-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 28px;
    }

    .result-head + .property-list {
        margin-top: 28px;
    }

    .property-list .card-tag {
        left: 12px;
        top: 12px;
        font-size: 1.3rem;
    }

    .property-list .card-cont {
        gap: 12px;
        padding: 16px;
    }

    .property-list .card-head .area,
    .property-list .card-head .tel {
        font-size: 1.3rem;
    }

    .property-list .card-name {
        font-size: 1.6rem;
    }

    .property-list .price-box {
        padding: 8px 12px;
    }

    .property-list .price-box .label {
        font-size: 1.3rem;
    }

    .property-list .price-box .value {
        font-size: 1.4rem;
    }

    .property-list .info-row {
        gap: 12px;
    }

    .property-list .info-row .label,
    .property-list .info-row .value {
        font-size: 1.3rem;
    }

    .property-list .card-detail {
        height: 34px;
        font-size: 1.3rem;
    }

    a.more-view-btn {
        padding: 10px 28px;
        font-size: 1.6rem;
    }

    #sub.properties .prop-sec1 .btn-area {
        margin-top: 28px;
    }

    #sub.employment .section.pd-type2 {
        padding: 100px 0 125px;
    }

    #sub.employment .tit-box .small-tit {
        font-size: 1.7rem;
    }

    #sub.employment .tit-box .mid-tit {
        margin-top: 15px;
        font-size: 3.1rem;
    }

    #sub.employment .emp-sec1 .sub-txt {
        margin-top: 17px;
        font-size: 1.6rem;
    }

    #sub.employment .emp-sec1 .btn-area.left {
        margin-top: 28px;
    }

    #sub.employment .emp-sec1 .solid-btn {
        height: 46px;
        padding: 0 30px;
        font-size: 1.7rem;
    }

    #sub.employment .info-card {
        gap: 7px;
        padding: 13px 18px;
    }

    #sub.employment .info-card .card-tit {
        font-size: 1.5rem;
    }

    #sub.employment .info-card .card-mail {
        font-size: 1.8rem;
    }

    #sub.employment .inquiry-form .file-upload .file-btn {
        padding: 7px 13px;
        font-size: 1.35rem;
    }

    #sub.employment .inquiry-form .file-upload .guide-list {
        font-size: 1.15rem;
    }

    #sub.employment .value-list {
        margin-top: 56px;
    }

    #sub.employment .value-row {
        gap: 56px;
    }

    #sub.employment .value-row + .value-row {
        margin-top: 56px;
    }

    #sub.employment .value-row .img-col {
        height: 300px;
    }

    #sub.employment .value-row .txt-box + .line,
    #sub.employment .value-row .line + .txt-box {
        margin-top: 42px;
    }

    #sub.employment .value-row .tit {
        gap: 8px;
    }

    #sub.employment .value-row .tit .no {
        width: 23px;
        font-size: 1.7rem;
    }

    #sub.employment .value-row .tit strong {
        font-size: 2.2rem;
    }

    #sub.employment .value-row .desc {
        padding-left: 24px;
        font-size: 1.5rem;
    }

    #sub.employment .value-list + .btn-area {
        margin-top: 56px;
    }

    #sub.request .section.pd-type2 {
        padding: 100px 0 130px;
    }

    #sub.request .tit-box .small-tit {
        font-size: 1.7rem;
    }

    #sub.request .tit-box .mid-tit {
        margin-top: 15px;
        font-size: 3.1rem;
    }

    #sub.request .req-sec1 .sub-txt {
        margin-top: 18px;
        font-size: 1.6rem;
    }

    #sub.request .point-list,
    #sub.employment .point-list {
        gap: 15px;
        margin-top: 52px;
    }

    #sub.request .point-box,
    #sub.employment .point-box {
        padding: 30px;
    }

    #sub.request .point-box .tit .ico,
    #sub.employment .point-box .tit .ico,
    #sub.request .point-box .tit .ico img,
    #sub.employment .point-box .tit .ico img {
        width: 32px;
        height: 32px;
    }

    #sub.request .point-box .tit strong,
    #sub.employment .point-box .tit strong {
        font-size: 1.8rem;
    }

    #sub.request .point-box .txt,
    #sub.employment .point-box .txt {
        font-size: 1.5rem;
    }

    #sub.request .req-sec1 .inquiry-form,
    #sub.employment .emp-sec1 .inquiry-form {
        margin-top: 34px;
    }

    #sub.request .inquiry-form .unit-box .unit {
        font-size: 1.5rem;
    }

    #sub.faq .section.pd-type2 {
        padding: 100px 0 125px;
    }

    #sub.faq .tit-box .small-tit {
        font-size: 1.7rem;
    }

    #sub.faq .tit-box .mid-tit {
        margin-top: 15px;
        font-size: 3.1rem;
    }

    #sub.faq .faq-tab {
        gap: 8px;
        margin-top: 56px;
    }

    #sub.faq .faq-tab a {
        height: 43px;
        padding: 0 20px;
        font-size: 1.6rem;
    }

    #sub.faq .faq-tab + .faq-list,
    #sub.faq .faq-tab + .faq-empty {
        margin-top: 28px;
    }

    #sub.faq .faq-list {
        margin-top: 56px;
    }

    #sub.faq .faq-q {
        gap: 12px;
        padding: 24px 20px;
    }

    #sub.faq .faq-item .num {
        width: 40px;
        height: 40px;
        font-size: 1.7rem;
    }

    #sub.faq .faq-q .tit {
        gap: 28px;
    }

    #sub.faq .faq-q .subject {
        font-size: 1.6rem;
    }

    #sub.faq .faq-item.is-open .faq-q {
        padding-bottom: 12px;
    }

    #sub.faq .faq-a {
        padding: 0 20px 24px;
    }

    #sub.faq .faq-a-box {
        padding: 20px;
    }

    #sub.faq .faq-empty {
        margin-top: 56px;
        padding: 56px 20px;
        font-size: 1.5rem;
    }

    #sub.faq .pagination-area {
        margin-top: 28px;
    }

    .none1280 {
        display: none;
    }
}

@media screen and (max-width: 1100px) {
    #sub.service .svc-sec3 .inquiry-form .tbl-box table,
    #sub.service .svc-sec3 .inquiry-form .tbl-box table tbody {
        display: block;
        width: 100%;
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table tbody {
        border-bottom: 1px solid #eeeeee;
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table tr {
        display: grid;
        grid-template-columns: 150px minmax(0, 1fr);
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table th {
        display: flex;
        align-items: center;
        border-top: 1px solid #eeeeee;
        border-bottom: 0;
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table td {
        display: block;
        min-width: 0;
        border-top: 1px solid #eeeeee;
        border-bottom: 0;
    }

    #sub.request .inquiry-form .tbl-box table,
    #sub.employment .inquiry-form .tbl-box table,
    #sub.request .inquiry-form .tbl-box table tbody,
    #sub.employment .inquiry-form .tbl-box table tbody {
        display: block;
        width: 100%;
    }

    #sub.request .inquiry-form .tbl-box table tbody,
    #sub.employment .inquiry-form .tbl-box table tbody {
        border-bottom: 1px solid #eeeeee;
    }

    #sub.request .inquiry-form .tbl-box table tr,
    #sub.employment .inquiry-form .tbl-box table tr {
        display: grid;
        grid-template-columns: 150px minmax(0, 1fr);
    }

    #sub.request .inquiry-form .tbl-box table th,
    #sub.employment .inquiry-form .tbl-box table th {
        display: flex;
        align-items: center;
        border-top: 1px solid #eeeeee;
        border-bottom: 0;
    }

    #sub.request .inquiry-form .tbl-box table td,
    #sub.employment .inquiry-form .tbl-box table td {
        display: block;
        min-width: 0;
        border-top: 1px solid #eeeeee;
        border-bottom: 0;
    }
}

@media screen and (max-width: 1024px) {
    #sub.service .svc-list {
        grid-template-columns: 1fr;
    }

    .property-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 1024px) {
    html.no-reset {
        overscroll-behavior: contain;
    }

    body.no-reset {
        height: 100svh;
        overflow: hidden;
        overscroll-behavior-y: none;
    }

    #map {
        height: 100svh !important;
    }

    .tab_area {
        display: none;
        position: fixed;
        left: 0;
        top: 50px;
        width: 100%;
        height: calc(100% - 50px);
        padding: 20px;
        z-index: 1000;
        background: rgba(0, 0, 0, 0.5);
        transition: all 0.5s;
    }

    .tab_area.active {
        display: block;
    }

    .tab_area .tab_body {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
    }

    .tab_area .tab_wrap {
        display: flex;
        flex-direction: column;
        position: relative;
        width: 100%;
        height: calc(85svh - 60px - 60px);
        border-radius: 10px 0 0 0;
        background: #ffffff;
        box-sizing: border-box;
    }

    .tab_area .tab_wrap .tab_cont {
        flex: 1 1 auto;
        min-height: 0;
        overflow-y: auto;
        overscroll-behavior-y: none;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

    .tab_area .tab_btns {
        position: absolute;
        left: 0;
        bottom: -60px;
        width: 100%;
    }

    .tab_area .tab_btns > * {
        float: left;
        position: relative !important;
        right: initial !important;
        top: initial !important;
        width: 50% !important;
        height: 60px !important;
        margin-top: 0 !important;
        font-size: 1.6rem;
        font-weight: 800;
        line-height: 60px;
        color: #ffffff;
        text-indent: initial !important;
    }

    .tab_area .tab_btns .btn-reset {
        border-radius: 0 0 0 10px;
        background: #999999;
    }

    .tab_area .tab_btns .btn-reset span {
        padding-left: 20px;
        background: url(/img/ico_reset.svg) no-repeat left center / 14px;
    }

    .tab_area .tab_btns input[type='button'] {
        border-radius: 0 0 10px 0;
        background: #5e2b03 !important;
    }

    #sub.search_login .section .map_option {
        top: 94px;
        max-width: calc(100% - 40px);
        height: auto;
        padding: 20px;
    }

    #sub.search_login .section .map_option .search_area .search_wrap {
        float: left;
        position: relative;
        width: calc(100% - 51px);
    }

    #sub.search_login .section .map_option .search_area .btn-fillter {
        float: right;
    }

    #sub.search_login .section .map_option .tab-content > ul li .con.option {
        max-height: 100%;
        padding-bottom: 0;
    }

    #sub.search_login .section .map_option .tabs {
        position: relative;
        flex: 0 0 auto;
        top: 0;
        z-index: 10;
        margin-top: 0;
        padding: 30px 30px 0;
        background: #ffffff;
        border-radius: 10px 0 0 0;
        box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.3);
        box-sizing: border-box;
    }

    #sub.search_login .section .map_option .tab_content_wrap {
        padding: 0 30px;
        box-sizing: border-box;
    }

    #sub.search_login .section .map_list {
        top: 100svh;
        max-width: 100%;
        height: 45svh;
        padding: 30px 20px 0;
        z-index: 96;
        background: rgba(255, 255, 255, 1);
        box-shadow: 0 0 18px 7px rgba(0, 0, 0, 0.14);
    }

    #sub.search_login .section .map_list.active {
        top: 55svh;
    }

    #sub.search_login .section .map_list .nice-select {
        width: 100%;
        max-width: 100% !important;
        transition: all 0.2s linear;
    }

    #sub.search_login .section .map_list ul.list_wrap {
        height: calc(100% - 65px);
    }

    #sub.search_login .section .map_list.action {
        height: calc(100svh - 74px - 130px);
    }

    #sub.search_login .section .map_list.action.move {
        transition: all 0s;
        transition-timing-function: linear !important;
        box-shadow: none;
    }

    #sub.search_login .section .map_list.action.move ul.list_wrap {
        overflow: hidden;
        overscroll-behavior-y: none;
    }

    #sub.search_login .section .map_list.action::after {
        content: '';
        display: none;
        clear: both;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100svh;
        z-index: 1000;
    }

    #sub.search_login .section .map_list.action.prevent::after {
        display: block;
    }

    #sub.search_login .section .map_list.action ul.list_wrap {
        position: relative;
        z-index: 1;
        height: calc(100% - 65px);
        overflow: auto;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

    #sub.search_login .section .map_list.action:not(.top):not(.move) {
        height: 45svh;
    }

    #sub.search_login .section .map_list .detail_list {
        display: none;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 97;
    }

    #sub.search_login .section .map_list .detail_list.on {
        display: block;
        position: fixed;
        top: 74px;
        padding-bottom: 55px;
    }

    #sub.search_login .section .map_list .detail_list .top {
        padding: 20px;
    }

    #sub.search_login .section .map_list .detail_list .middle {
        padding-bottom: 120px;
    }

    #sub.search_login .section .map_list .detail_list .list {
        padding: 20px;
    }

    #sub.search_login .section .map_list .detail_list .list_1 .swiper {
        max-width: 100%;
        max-height: 100%;
    }

    #sub.search_login .section .map_list .detail_list .list_1 .swiper .swiper-slide img {
        width: 100%;
        object-fit: cover;
    }

    #sub.search_login .section .map_list .detail_list .list_1 .swiper .swiper-pagination {
        left: inherit;
        right: 20px;
    }

    #sub.search_login .section .map_list .detail_list .bottom {
        max-width: 100%;
    }

    .map_btns {
        position: relative;
        z-index: 96;
    }

    .map_btns.off {
        display: none !important;
    }

    .map_btns > .map_btn {
        display: none;
        position: absolute;
        right: 10px;
        bottom: 20px;
        padding: 10px 20px;
        border: 1px solid #dddddd;
        border-radius: 50px;
        background: #ffffff;
        text-align: center;
    }

    .map_btns > .map_btn b {
        color: #5e2b03;
    }

    .map_btns > .map_btn.on {
        display: block;
    }

    .ss-content .ss-list .ss-option:hover:not(.ss-disabled) {
        color: #111111 !important;
        background-color: #ffffff !important;
        border-left: none !important;
    }

    .tab_area .pop_close {
        display: block;
        position: absolute;
        right: 0;
        top: -40px;
        width: 40px;
        height: 40px;
        border-radius: 5px 5px 0 0;
        background: #999999 url(/img/ico_close.svg) no-repeat center / 14px;
    }
}

@media screen and (max-width: 768px) {
    #sub.search_login .section .map_option {
        top: 84px;
    }

    #sub.search_login .section .map_list.action {
        height: calc(100svh - 64px - 130px);
    }

    #sub.search_login .section .map_list .detail_list.on {
        top: 64px;
    }
}

@media screen and (max-width: 768px) {
    #sub .section {
        padding: 40px 0 100px;
    }

    #sub .section .section-body {
        padding: 0 20px;
    }

    #sVisual.position-visual {
        height: auto;
        padding-top: 64px;
    }

    #sVisual .visual-body {
        width: 100%;
        height: 220px;
        margin: 0;
        border-radius: 0 0 15px 15px;
    }

    #sVisual.position-visual .visual-inner.position-ab {
        border-radius: 0 0 15px 15px;
    }

    #sVisual .visual-txt .txt-body {
        padding: 0;
    }

    #sVisual .visual-txt .txt-wrap,
    #sVisual.has-depth .visual-txt .txt-wrap {
        padding: 75px 20px 95px;
    }

    #sVisual .visual-txt .txt-wrap .txt-box {
        text-align: center;
    }

    #sVisual .visual-txt .txt-wrap .txt-box h2 {
        font-size: 2.4rem;
        font-weight: 700;
        line-height: 1.6;
    }

    #sVisual .visual-txt .txt-wrap .txt-box p {
        margin-top: 10px;
        font-size: 1.4rem;
        font-weight: 400;
        line-height: 1.6;
        letter-spacing: -0.02em;
    }

    #sVisual .visual-txt .txt-wrap .txt-box p br.br-mo {
        display: block;
    }

    #sVisual .visual-nav .nav-wrap.breadcrumb {
        width: 350px;
        max-width: calc(100% - 40px);
        height: 48px;
        padding: 12px 15px;
    }

    #sVisual .nav-wrap.breadcrumb ul {
        width: 100%;
    }

    #sVisual .nav-wrap.breadcrumb li.home {
        padding-right: 0;
    }

    #sVisual .nav-wrap.breadcrumb li.home img {
        width: 14px;
        height: 14px;
    }

    #sVisual .nav-wrap.breadcrumb li.dep {
        flex: 1;
        width: auto;
        min-width: 0;
        height: 100%;
        margin-left: 21px;
        padding: 0;
    }

    #sVisual .nav-wrap.breadcrumb li.dep::before {
        left: -11px;
        height: 16px;
    }

    #sVisual .nav-wrap.breadcrumb li.dep a {
        gap: 10px;
        font-size: 1.3rem;
        letter-spacing: -0.02em;
        white-space: nowrap;
    }

    #sVisual .nav-wrap.breadcrumb li.dep .arw {
        flex: none;
        margin-left: 0;
    }

    #sVisual .nav-wrap.breadcrumb li.dep .dep-dropdown {
        left: -15px;
        top: 148%;
        width: calc(100% + 30px);
        padding: 10px 15px 15px;
    }

    #sVisual .nav-wrap.breadcrumb li.dep + li.dep .dep-dropdown {
        width: calc(100% + 31px);
    }

    #sVisual .nav-wrap.breadcrumb li.dep .dep-dropdown a {
        font-size: 1.3rem;
    }

    #sub.company.ceo .outline-band {
        align-items: center;
        height: 44px;
        margin-top: 20px;
    }

    #sub.company.ceo .outline-band .band-item {
        padding-right: 32px;
    }

    #sub.company.ceo .outline-band .band-logo {
        width: 113.81px;
        height: 21px;
        margin-right: 19.24px;
    }

    #sub.company.ceo .outline-band .band-sub {
        width: 237.57px;
        height: 21px;
    }

    #sub.company.ceo .section {
        padding: 40px 0;
    }

    #sub.company.ceo .section .section-column {
        padding: 0;
    }

    #sub.company.ceo .ceo-sec1 {
        padding-top: 20px;
    }

    #sub.company.ceo .ceo-sec3 {
        padding-bottom: 100px;
        margin-bottom: 0;
    }

    #sub.company.ceo .cont-tit {
        font-size: 1.6rem;
        margin-bottom: 16px;
    }

    #sub.company.ceo .ceo-sec3 .cont-tit {
        margin-bottom: 14px;
    }

    #sub.company.ceo .ceo-sec1 .section-row {
        flex-direction: column;
        gap: 0;
    }

    #sub.company.ceo .ceo-sec1 .txt-col {
        display: contents;
    }

    #sub.company.ceo .ceo-sec1 .tit-area {
        order: 1;
    }

    #sub.company.ceo .ceo-sec1 .img-col {
        order: 2;
        margin-top: 12px;
    }

    #sub.company.ceo .ceo-sec1 .greeting-txt {
        order: 3;
        margin-top: 22px;
        max-width: none;
    }

    #sub.company.ceo .tit-box .small-tit {
        font-size: 1.4rem;
    }

    #sub.company.ceo .tit-box .mid-tit {
        margin-top: 10px;
        font-size: 2rem;
        line-height: 1.4;
    }

    #sub.company.ceo .ceo-sec1 .img-sticky {
        position: static;
        height: auto;
        aspect-ratio: 350 / 206;
    }

    #sub.company.ceo .ceo-sec1 .greeting-txt p {
        font-size: 1.4rem;
    }

    #sub.company.ceo .ceo-sec1 .greeting-txt p + p {
        margin-top: 10px;
    }

    #sub.company.ceo .vision-box {
        gap: 13.19px;
        padding: 32px 20px;
    }

    #sub.company.ceo .vision-box + .vision-box {
        margin-top: 10px;
    }

    #sub.company.ceo .vision-box .label {
        height: auto;
        padding: 5px 15px;
        font-size: 1.3rem;
    }

    #sub.company.ceo .vision-box .txt strong {
        font-size: 1.8rem;
    }

    #sub.company.ceo .vision-box .txt strong br {
        display: block;
    }

    #sub.company.ceo .vision-box .txt p {
        margin-top: 8.39px;
        font-size: 1.4rem;
    }

    #sub.company.ceo .value-wrap {
        flex-direction: column;
    }

    #sub.company.ceo .value-wrap .val-col,
    #sub.company.ceo .value-wrap .val-col:last-of-type {
        flex: none;
        width: 58.86%;
        margin-right: 0;
        padding-top: 0;
    }

    #sub.company.ceo .value-wrap .val-col:nth-child(2n) {
        padding-top: 0;
    }

    #sub.company.ceo .value-wrap .val-col:nth-child(odd) {
        margin-left: 10.28%;
    }

    #sub.company.ceo .value-wrap .val-col:nth-child(even) {
        margin-left: auto;
        margin-right: 10.28%;
    }

    #sub.company.ceo .value-wrap .val-col + .val-col {
        margin-top: -13.71%;
    }

    #sub.company.ceo .value-wrap .value {
        gap: 6.19px;
    }

    #sub.company.ceo .value-wrap .value strong {
        font-size: 1.8rem;
    }

    #sub.company.ceo .value-wrap .value p {
        font-size: 1.4rem;
    }

    #sub.company.ceo .value-wrap .dot {
        width: 6px;
        height: 6px;
    }

    #sub.company.history .section {
        padding: 40px 0;
    }

    #sub.company.history .section .section-column {
        padding: 0;
    }

    #sub.company.history .hist-sec1 {
        padding-top: 20px;
        padding-bottom: 32px;
    }

    #sub.company.history .tit-box .small-tit {
        font-size: 1.4rem;
    }

    #sub.company.history .tit-box .mid-tit {
        margin-top: 10px;
        font-size: 2rem;
        line-height: 1.4;
    }

    #sub.company.history .hist-sec1 .sub-txt {
        margin-top: 12px;
        font-size: 1.4rem;
    }

    #sub.company.history .hist-timeline {
        padding-bottom: 80px;
    }

    #sub.company.history .hist-timeline::before {
        top: 40px;
    }

    #sub.company.history .hist-body {
        gap: 40px;
        padding: 0 20px;
    }

    #sub.company.history .hist-body::before {
        bottom: 17px;
    }

    #sub.company.history .hist-logo {
        width: 80px;
        height: 80px;
    }

    #sub.company.history .hist-logo img {
        width: 56px;
    }

    #sub.company.history .hist-rows {
        gap: 40px;
    }

    #sub.company.history .hist-row {
        gap: 10px;
    }

    #sub.company.history .hist-row .yr strong {
        font-size: 2.4rem;
    }

    #sub.company.history .hist-row .ct {
        height: 34px;
    }

    #sub.company.history .hist-row .ct .dot {
        width: 6px;
        height: 6px;
    }

    #sub.company.history .hist-row .items {
        gap: 16px;
        padding-top: 6px;
    }

    #sub.company.history .hist-row .item .month {
        font-size: 1.4rem;
    }

    #sub.company.history .hist-row .item .txt {
        font-size: 1.4rem;
    }

    #sub.company.history .hist-more {
        margin-top: -40px;
    }

    #sub.company.history .hist-more .hist-rows {
        padding-top: 40px;
    }

    #sub.company.history .hist-end {
        width: 34px;
        height: 34px;
    }

    #sub.company.history .hist-end::after {
        width: 26px;
        height: 26px;
        background-size: 10px 10px;
    }

    #sub.company.history .hist-end[aria-expanded="true"]::after {
        background-size: 10px 2px;
    }

    #sub.company.value-chain .section {
        padding: 40px 0;
    }

    #sub.company.value-chain .section .section-column {
        padding: 0;
    }

    #sub.company.value-chain .vc-sec1 {
        padding-top: 20px;
        padding-bottom: 32px;
    }

    #sub.company.value-chain .tit-box .small-tit {
        font-size: 1.4rem;
    }

    #sub.company.value-chain .tit-box .mid-tit {
        margin-top: 10px;
        font-size: 2rem;
        line-height: 1.4;
    }

    #sub.company.value-chain .vc-sec1 .sub-txt {
        margin-top: 12px;
        font-size: 1.4rem;
    }

    #sub.company.value-chain .vc-sec1 .sub-txt br {
        display: none;
    }

    #sub.company.value-chain .vc-band {
        padding: 48px 0 60px;
    }

    #sub.company.value-chain .vc-band .vc-diagram {
        max-width: 440px;
        margin: 0 auto;
    }

    #sub.company.networks .section {
        padding: 40px 0;
    }

    #sub.company.networks .section .section-column {
        padding: 0;
    }

    #sub.company.networks .nw-sec2,
    #sub.company.networks .nw-sec3 {
        padding-top: 0;
    }

    #sub.company.networks .nw-sec1 {
        padding-top: 20px;
        padding-bottom: 32px;
    }

    #sub.company.networks .nw-sec3 {
        padding-bottom: 100px;
    }

    #sub.company.networks .tit-box .small-tit {
        font-size: 1.4rem;
    }

    #sub.company.networks .tit-box .mid-tit {
        margin-top: 10px;
        font-size: 2rem;
        line-height: 1.4;
    }

    #sub.company.networks .nw-sec1 .sub-txt {
        margin-top: 12px;
        font-size: 1.4rem;
    }

    #sub.company.networks .cont-tit {
        font-size: 1.6rem;
        margin-bottom: 16px;
    }

    #sub.company.networks .cont-tit .cnt {
        font-size: 1.4rem;
    }

    #sub.company.networks .network-list {
        border-bottom: 0;
    }

    #sub.company.networks .network-item {
        cursor: default;
    }

    #sub.company.networks .network-item .txt-area,
    #sub.company.networks .network-item.is-open .txt-area {
        padding: 24px 0;
    }

    #sub.company.networks .network-item .more-btn {
        display: none;
    }

    #sub.company.networks .network-item.is-open .img-area {
        height: 200px;
        min-height: 200px;
    }

    #sub.company.networks .network-item.is-open .txt-body {
        gap: 20px;
    }

    #sub.company.networks .network-item.is-open .txt-head {
        gap: 8px;
    }

    #sub.company.networks .network-item.is-open .txt-head strong {
        width: auto;
        font-size: 2rem;
    }

    #sub.company.networks .nw-sec3 .network-item .txt-head strong,
    #sub.company.networks .nw-sec3 .network-item:not(.is-open) .txt-head strong {
        width: auto;
        white-space: normal;
    }

    #sub.company.contact .section {
        padding: 40px 0;
    }

    #sub.company.contact .ct-sec1 {
        padding-bottom: 0;
    }

    #sub.company.contact .ct-sec2 {
        padding-top: 40px;
        padding-bottom: 100px;
    }

    #sub.company.contact .tit-box .small-tit {
        font-size: 1.4rem;
    }

    #sub.company.contact .tit-box .mid-tit {
        margin-top: 10px;
        font-size: 2rem;
        line-height: 1.4;
    }

    #sub.company.contact .ct-head {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
    }

    #sub.company.contact .ct-head .sub-txt {
        margin-top: 12px;
        font-size: 1.4rem;
    }

    #sub.company.contact .ct-head .sub-txt br {
        display: none;
    }

    #sub.company.contact .ct-head .contact-btn.pill-btn {
        gap: 6px;
        padding: 6px 6px 6px 16px;
        font-size: 1.4rem;
    }

    #sub.company.contact .ct-head .contact-btn.pill-btn .circle-hover {
        width: 32px;
        height: 32px;
    }

    #sub.company.contact .ct-head .contact-btn.pill-btn .circle-hover img {
        width: 18px;
        height: 18px;
    }

    #sub.company.contact .branch-tab {
        flex-wrap: nowrap;
        gap: 6px;
        margin: 0 -20px;
        padding: 0 20px;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

    #sub.company.contact .branch-tab::-webkit-scrollbar {
        display: none;
    }

    #sub.company.contact .branch-tab button {
        flex: none;
        height: 36px;
        padding: 0 16px;
        font-size: 1.4rem;
        white-space: nowrap;
    }

    #sub.company.contact .branch-info {
        margin-top: 20px;
    }

    #sub.company.contact .b-name {
        font-size: 1.8rem;
    }

    #sub.company.contact .b-addr {
        margin-top: 8px;
        font-size: 1.4rem;
    }

    #sub.company.contact .b-meta {
        gap: 6px;
        margin-top: 20px;
    }

    #sub.company.contact .b-meta .meta {
        gap: 10px;
        padding: 8px 16px;
    }

    #sub.company.contact .b-meta .tit,
    #sub.company.contact .b-meta .txt {
        font-size: 1.3rem;
    }

    #sub.company.contact .b-map {
        margin-top: 20px;
        height: 300px;
    }

    #sub .btn-area {
        margin-top: 22.57px;
    }

    #sub.service .section {
        padding: 40px 0;
    }

    #sub.service .tit-box .small-tit {
        font-size: 1.4rem;
    }

    #sub.service .tit-box .mid-tit {
        margin-top: 10px;
        font-size: 2rem;
        line-height: 1.4;
    }

    #sub.service .svc-sec1 {
        padding: 40px 0 0;
    }

    #sub.service .svc-sec1 .sub-txt {
        margin-top: 12px;
        font-size: 1.4rem;
    }

    #sub.service .tit-box .mid-tit br,
    #sub.service .svc-sec1 .sub-txt br {
        display: none;
    }

    #sub.service .svc-band {
        margin-top: 20px;
    }

    #sub.service .svc-band .band-txt {
        height: 30px;
        margin-bottom: 20px;
        padding: 0 20px;
        font-size: 2.6rem;
        line-height: 30px;
    }

    #sub.service .svc-band .band-img {
        height: 160px;
    }

    #sub.service .svc-sec2 {
        padding: 80px 0;
    }

    #sub.service .cont-tit {
        font-size: 1.6rem;
        margin-bottom: 16px;
    }

    #sub.service .svc-list {
        gap: 20px;
    }

    #sub.service .svc-box {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        padding: 30px 20px;
    }

    #sub.service .svc-box .ico {
        order: 1;
        width: 71px;
        height: 71px;
    }

    #sub.service .svc-box .ico img {
        width: 39px;
        height: 39px;
    }

    #sub.service .svc-box .txt {
        order: 2;
        width: 100%;
        flex: none;
    }

    #sub.service .svc-box .tit {
        font-size: 1.6rem;
    }

    #sub.service .svc-box li {
        padding-left: 11px;
        font-size: 1.4rem;
    }

    #sub.service .svc-cta {
        padding: 33px 20px 34px;
    }

    #sub.service .svc-cta .cta-txt strong {
        font-size: 1.6rem;
    }

    #sub.service .svc-cta .cta-txt p {
        font-size: 1.4rem;
    }

    #sub.service .svc-cta .cta-txt strong br.br-mo {
        display: block;
    }

    #sub.service .svc-cta .contact-btn.pill-btn {
        gap: 10px;
        padding: 8px 8px 8px 16px;
        font-size: 1.4rem;
    }

    #sub.service .svc-cta .contact-btn.pill-btn .circle-hover {
        width: 32px;
        height: 32px;
    }

    #sub.service .section.pd-type2 {
        padding: 40px 0 100px;
    }

    #sub.service .svc-sec3 .form-tit {
        margin-bottom: 18px;
    }

    #sub.service .svc-sec3 .form-tit .cont-tit {
        margin-bottom: 8px;
    }

    #sub.service .svc-sec3 .form-tit .desc {
        font-size: 1.4rem;
    }

    #sub.service .svc-sec3 .inquiry-form {
        --ss-main-height: 40px;
        --ss-border-radius: 5px;
    }

    #sub .inquiry-form .required-txt {
        margin-bottom: 9px;
        font-size: 1.3rem;
        color: #666666;
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table,
    #sub.service .svc-sec3 .inquiry-form .tbl-box table tbody,
    #sub.service .svc-sec3 .inquiry-form .tbl-box table tr,
    #sub.service .svc-sec3 .inquiry-form .tbl-box table th,
    #sub.service .svc-sec3 .inquiry-form .tbl-box table td {
        display: block;
        width: auto;
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table {
        padding-top: 3px;
        border-top: 1px solid #dddde3;
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table tbody {
        border-bottom: 0;
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table th {
        padding: 13px 0 8px;
        border: 0;
        background: none;
        font-size: 1.3rem;
        font-weight: 500;
        line-height: 21px;
        color: #111111;
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table th .req {
        margin-left: 2px;
        font-size: 1.3rem;
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table td {
        padding: 0 0 15px;
        border: 0;
        border-bottom: 1px solid #ededf1;
    }

    #sub.service .svc-sec3 .inquiry-form input[type="text"],
    #sub.service .svc-sec3 .inquiry-form input[type="tel"] {
        height: 40px;
        padding: 0 15px;
        border-radius: 5px;
        font-size: 1.4rem;
        line-height: 38px;
    }

    input[type='text'], input[type='password'], input[type='tel'], input[type='email'], input[type='number'], input[type='url'], select {
        border-color: #dddde3;
    }

    input::placeholder, textarea::placeholder {
        font-size: 1.4rem !important;
        color: #afafb9 !important;
    }

    #sub.service .svc-sec3 .inquiry-form .tbl-box table textarea {
        height: 144px;
        padding: 12px 13px;
        border-radius: 0;
        font-size: 1.4rem;
        border-color: #dddde3;
    }

    #sub.service .svc-sec3 .inquiry-form .email-box {
        grid-template-columns: minmax(0, 1fr) 14px minmax(0, 1fr);
        gap: 5px;
    }

    #sub.service .svc-sec3 .inquiry-form .email-box .at {
        font-size: 1.15rem;
        color: #5a5a66;
        text-align: center;
    }

    #sub.service .svc-sec3 .inquiry-form .domain-box input[type="text"] {
        right: 32px;
        height: auto;
        padding: 0 8px 0 15px;
        border-radius: 5px 0 0 5px;
    }

    #sub.service .svc-sec3 .inquiry-form .agree-area {
        margin-top: 9px;
    }

    #sub.service .svc-sec3 .inquiry-form .check-box > input[type="checkbox"] ~ label {
        font-size: 1.4rem;
    }

    #sub.service .svc-sec3 .inquiry-form .btn-area {
        margin-top: 20px;
    }

    #sub.service .svc-sec3 .inquiry-form .solid-btn {
        display: flex;
        width: 100%;
        height: 44px;
        padding: 0;
        font-size: 1.4rem;
        font-family: 'Inter', sans-serif;
    }

    :root {
        --ss-main-height: 40px;
        --ss-option-height: 40px;
        --ss-content-height: 240px;
        --ss-border-radius: 5px;
    }

    .ss-main {
        padding: 0 15px;
        font-size: 1.4rem;
    }

    .ss-main .ss-values .ss-placeholder {
        color: #5a5a66;
    }

    .ss-main .ss-values .ss-single {
        color: #111111;
    }

    .ss-main .ss-arrow {
        width: 16px;
        height: 16px;
        background-size: 16px 16px;
    }

    .ss-content {
        margin-top: 8px !important;
        border-radius: 5px;
    }

    .ss-content.ss-dir-above {
        margin-top: 0 !important;
        margin-bottom: 8px !important;
    }

    .ss-content .ss-list .ss-option {
        height: 40px;
        padding: 8px 15px;
        font-size: 1.4rem;
        transition: none;
    }

    #sub.properties .section.pd-type2 {
        padding: 40px 0 100px;
    }

    #sub.properties .tit-box .small-tit {
        font-size: 1.4rem;
    }

    #sub.properties .tit-box .mid-tit {
        margin-top: 10px;
        font-size: 2rem;
        line-height: 1.4;
    }

    #sub.properties .tit-box .mid-tit br {
        display: none;
    }

    #sub.properties .prop-sec1 .sub-txt {
        margin-top: 12px;
        font-size: 1.4rem;
    }

    .search-filter .filter-head {
        gap: 20px;
        padding-bottom: 10px;
        border-bottom: 1px solid #eeeeee;
    }

    .search-filter .filter-tit {
        font-size: 1.4rem;
    }

    .search-filter .filter-toggle {
        display: flex;
    }

    .search-filter .tbl-area .tbl-box {
        margin-top: 0;
    }

    .search-filter .tbl-box.tbl-type2 table,
    .search-filter .tbl-box.tbl-type2 table tbody,
    .search-filter .tbl-box.tbl-type2 table tr,
    .search-filter .tbl-box.tbl-type2 table tbody th,
    .search-filter .tbl-box.tbl-type2 table tbody td {
        display: block;
        width: auto;
    }

    .search-filter .tbl-box.tbl-type2 table colgroup {
        display: none;
    }

    .search-filter .tbl-box.tbl-type2 table tr.filter-row {
        padding: 15px 0;
        border-bottom: 1px solid #eeeeee;
    }

    .search-filter .tbl-box.tbl-type2 table tr.filter-row:last-child {
        border-bottom: 0;
    }

    .search-filter .tbl-box.tbl-type2 table tbody th {
        padding: 0 0 10px;
        background: none;
        border: 0;
        font-size: 1.3rem;
        font-weight: 600;
        color: #111111;
    }

    .search-filter .tbl-box.tbl-type2 table tbody th em {
        margin-left: 0;
        font-size: 1.1rem;
    }

    .search-filter .tbl-box.tbl-type2 table tbody td {
        padding: 0;
        border: 0;
    }

    .search-filter .filter-chips {
        gap: 5px;
    }

    .search-filter .filter-chips-area {
        gap: 6px;
    }

    .search-filter .filter-chips-area.is-collapsed .filter-chips {
        max-height: 31px;
    }

    .search-filter .chips-toggle {
        width: 20px;
        height: 20px;
        margin-top: 5px;
    }

    .search-filter .chips-toggle img {
        width: 20px;
        height: 20px;
    }

    .search-filter .chip {
        margin: 0;
        gap: 4px;
        height: 31px;
        padding: 5px 10px;
        font-size: 1.3rem;
    }

    .search-filter .chip .chip-unit {
        font-size: 1.1rem;
    }

    .search-filter .selected-bar {
        flex-direction: column;
        align-items: stretch;
        gap: 5px;
        margin-top: 0;
        padding: 14px;
    }

    .search-filter.is-closed .selected-bar {
        margin-top: 15px;
    }

    .search-filter .selected-bar .selected-tit {
        font-size: 1.3rem;
    }

    .search-filter .selected-list {
        flex: none;
        gap: 5px;
    }

    .search-filter .selected-list .chip-del {
        display: none;
    }

    .search-filter .selected-btn {
        justify-content: center;
        margin-top: 8px;
        gap: 10px;
    }

    .search-filter .selected-btn a {
        flex: 1;
        min-width: 0;
        height: 40px;
        padding: 0 10px;
        font-size: 1.3rem;
        font-weight: 600;
    }

    #sub.properties.theme .search-filter .selected-btn a {
        font-size: 1.15rem;
    }

    .result-head {
        position: relative;
        z-index: 2;
        gap: 10px;
        padding-bottom: 10px;
        border-bottom-color: #dddddd;
    }

    .result-head .result-count {
        font-size: 1.4rem;
        font-weight: 400;
    }

    .result-head .result-count em {
        font-weight: 400;
    }

    .result-head .sort-trigger {
        display: flex;
        font-size: 1.2rem;
    }

    .result-head .result-sort {
        display: none;
        position: absolute;
        right: 0;
        top: calc(100% + 8px);
        z-index: 10;
        min-width: 118px;
        padding: 0;
        background: #ffffff;
        border: 0;
        border-radius: 5px;
        box-shadow: 0 4px 16px 0 rgb(0 0 0 / 14%);
        overflow: hidden;
    }

    .result-head .result-sort li {
        display: block;
    }

    .result-head .result-sort li + li::before {
        display: none;
    }

    .result-head .result-sort a {
        display: flex;
        align-items: center;
        height: 40px;
        padding: 8px 15px;
        box-sizing: border-box;
        border-bottom: 1px solid #dddddd;
        font-size: 1.4rem;
        color: #111111;
        transition: background-color 0.35s ease;
    }

    .result-head .result-sort li.active a {
        font-weight: 400;
        color: #111111;
    }

    .result-head .result-sort a:hover {
        background-color: #fff8f5;
    }

    .property-list {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
    }

    .result-head + .property-list {
        margin-top: 10px;
    }

    .property-list .card-tag {
        left: 16px;
        top: 16px;
        font-size: 1.3rem;
    }

    .property-list .card-cont {
        gap: 16px;
        padding: 20px;
    }

    .property-list .card-head .area,
    .property-list .card-head .tel {
        font-size: 1.3rem;
    }

    .property-list .card-name {
        font-size: 1.6rem;
    }

    .property-list .price-box {
        padding: 10px 16px;
    }

    .property-list .price-box .label {
        font-size: 1.3rem;
    }

    .property-list .price-box .value {
        font-size: 1.4rem;
    }

    .property-list .info-row {
        gap: 20px;
    }

    .property-list .info-row .label,
    .property-list .info-row .value {
        font-size: 1.3rem;
    }

    .property-list .card-body {
        box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.05);
    }

    .property-list .card-detail {
        height: auto;
        padding: 8px 20px;
        font-size: 1.3rem;
    }

    a.more-view-btn {
        display: flex;
        width: 100%;
        height: 44px;
        padding: 11px 20px;
        font-size: 1.4rem;
        font-family: 'Inter', sans-serif;
    }

    #sub.properties .prop-sec1 .btn-area {
        margin-top: 20px;
    }

    #sub.employment .section.pd-type2 {
        padding: 40px 0 100px;
    }

    #sub.employment .tit-box .small-tit {
        font-size: 1.4rem;
    }

    #sub.employment .tit-box .mid-tit {
        margin-top: 10px;
        font-size: 2rem;
        line-height: 1.4;
    }

    #sub.employment .emp-sec1 .sub-txt {
        margin-top: 14.75px;
        font-size: 1.4rem;
    }

    #sub.employment .emp-sec1 .btn-area.left {
        margin-top: 20px;
    }

    #sub.employment .emp-sec1 .btn-area.left .solid-btn {
        height: 40px;
        padding: 0 20px;
        font-size: 1.2rem;
        font-weight: 700;
    }

    #sub.employment .value-list {
        margin-top: 40px;
    }

    #sub.employment .value-row,
    #sub.employment .value-row.reverse {
        flex-direction: column;
        align-items: stretch;
        gap: 26px;
    }

    #sub.employment .value-row + .value-row {
        margin-top: 40px;
    }

    #sub.employment .value-row .img-col,
    #sub.employment .value-row .txt-col {
        flex: none;
        width: 100%;
    }

    #sub.employment .value-row .img-col {
        height: auto;
        aspect-ratio: 350 / 214;
    }

    #sub.employment .value-row .txt-box + .line,
    #sub.employment .value-row .line + .txt-box {
        margin-top: 20px;
    }

    #sub.employment .value-row .line {
        background: #ededf1;
    }

    #sub.employment .value-row .tit {
        gap: 5px;
    }

    #sub.employment .value-row .tit .no {
        width: auto;
        font-size: 1.3rem;
    }

    #sub.employment .value-row .tit strong {
        font-size: 1.6rem;
        color: #15152b;
    }

    #sub.employment .value-row .desc {
        margin-top: 10px;
        padding-left: 0;
        font-size: 1.4rem;
        color: #333333;
    }

    #sub.employment .value-row .desc br {
        display: none;
    }

    #sub.employment .value-list + .btn-area {
        margin-top: 20px;
    }

    #sub.employment .value-list + .btn-area .solid-btn {
        display: flex;
        width: 100%;
        height: 44px;
        padding: 0;
        font-size: 1.4rem;
    }

    #sub.request .section.pd-type2 {
        padding: 40px 0 100px;
    }

    #sub.request .tit-box .small-tit {
        font-size: 1.4rem;
    }

    #sub.request .tit-box .mid-tit {
        margin-top: 10px;
        font-size: 2rem;
        line-height: 1.4;
    }

    #sub.request .req-sec1 .sub-txt {
        margin-top: 12px;
        font-size: 1.4rem;
    }

    #sub.request .point-list,
    #sub.employment .point-list {
        flex-direction: column;
        gap: 10px;
        margin-top: 25px;
    }

    #sub.request .point-box,
    #sub.employment .point-box {
        padding: 20px;
    }

    #sub.request .point-box .tit .ico,
    #sub.employment .point-box .tit .ico,
    #sub.request .point-box .tit .ico img,
    #sub.employment .point-box .tit .ico img {
        width: 24px;
        height: 24px;
    }

    #sub.request .point-box .tit strong,
    #sub.employment .point-box .tit strong {
        font-size: 1.6rem;
    }

    #sub.request .point-box .txt,
    #sub.employment .point-box .txt {
        font-size: 1.4rem;
    }

    #sub.request .req-sec1 .inquiry-form,
    #sub.employment .emp-sec1 .inquiry-form {
        margin-top: 27px;
        --ss-main-height: 40px;
        --ss-border-radius: 5px;
    }

    #sub.request .inquiry-form .tbl-box table,
    #sub.employment .inquiry-form .tbl-box table,
    #sub.request .inquiry-form .tbl-box table tbody,
    #sub.employment .inquiry-form .tbl-box table tbody,
    #sub.request .inquiry-form .tbl-box table tr,
    #sub.employment .inquiry-form .tbl-box table tr,
    #sub.request .inquiry-form .tbl-box table th,
    #sub.employment .inquiry-form .tbl-box table th,
    #sub.request .inquiry-form .tbl-box table td,
    #sub.employment .inquiry-form .tbl-box table td {
        display: block;
        width: auto;
    }

    #sub.request .inquiry-form .tbl-box table,
    #sub.employment .inquiry-form .tbl-box table {
        padding-top: 3px;
        border-top: 1px solid #dddde3;
    }

    #sub.request .inquiry-form .tbl-box table tbody,
    #sub.employment .inquiry-form .tbl-box table tbody {
        border-bottom: 0;
    }

    #sub.request .inquiry-form .tbl-box table th,
    #sub.employment .inquiry-form .tbl-box table th {
        padding: 13px 0 8px;
        border: 0;
        background: none;
        font-size: 1.3rem;
        font-weight: 500;
        line-height: 21px;
        color: #111111;
    }

    #sub.request .inquiry-form .tbl-box table th .req,
    #sub.employment .inquiry-form .tbl-box table th .req {
        margin-left: 2px;
        font-size: 1.3rem;
    }

    #sub.request .inquiry-form .tbl-box table td,
    #sub.employment .inquiry-form .tbl-box table td {
        padding: 0 0 15px;
        border: 0;
        border-bottom: 1px solid #ededf1;
    }

    #sub.request .inquiry-form input[type="text"],
    #sub.employment .inquiry-form input[type="text"],
    #sub.request .inquiry-form input[type="tel"],
    #sub.employment .inquiry-form input[type="tel"] {
        height: 40px;
        padding: 0 15px;
        border-radius: 5px;
        font-size: 1.4rem;
        line-height: 38px;
    }

    #sub.request .inquiry-form .tbl-box table textarea,
    #sub.employment .inquiry-form .tbl-box table textarea {
        height: 144px;
        padding: 12px 13px;
        border-radius: 0;
        font-size: 1.4rem;
        border-color: #dddde3;
    }

    #sub.request .inquiry-form .email-box,
    #sub.employment .inquiry-form .email-box {
        grid-template-columns: minmax(0, 1fr) 14px minmax(0, 1fr);
        gap: 5px;
    }

    #sub.request .inquiry-form .email-box .at,
    #sub.employment .inquiry-form .email-box .at {
        font-size: 1.15rem;
        color: #5a5a66;
        text-align: center;
    }

    #sub.request .inquiry-form .domain-box input[type="text"],
    #sub.employment .inquiry-form .domain-box input[type="text"] {
        right: 32px;
        height: auto;
        padding: 0 8px 0 15px;
        border-radius: 5px 0 0 5px;
    }

    #sub.request .inquiry-form .ss-main, #sub.service .svc-sec3 .inquiry-form .ss-main,
    #sub.employment .inquiry-form .ss-main, #sub.service .svc-sec3 .inquiry-form .ss-main {
        padding: 0 7.88px 0 15px;
        font-size: 1.4rem;
    }

    #sub.request .inquiry-form .unit-box {
        position: relative;
        display: block;
    }

    #sub.request .inquiry-form .unit-box input[type="text"] {
        width: 100%;
        padding-right: 48px;
    }

    #sub.request .inquiry-form .unit-box .unit {
        position: absolute;
        right: 5.69px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 1.4rem;
    }

    #sub.request .inquiry-form .agree-area,
    #sub.employment .inquiry-form .agree-area {
        margin-top: 9px;
    }

    #sub.request .inquiry-form .check-box > input[type="checkbox"] ~ label,
    #sub.employment .inquiry-form .check-box > input[type="checkbox"] ~ label {
        font-size: 1.4rem;
    }

    #sub.request .inquiry-form .btn-area,
    #sub.employment .inquiry-form .btn-area {
        margin-top: 20px;
    }

    #sub.request .inquiry-form .solid-btn,
    #sub.employment .inquiry-form .solid-btn {
        display: flex;
        width: 100%;
        height: 44px;
        padding: 0;
        font-size: 1.4rem;
        font-family: 'Inter', sans-serif;
    }

    #sub.employment .point-box .dot-list li {
        padding-left: 11px;
    }

    #sub.employment .point-box.type2 {
        gap: 10px;
    }

    #sub.employment .info-card {
        gap: 6px;
        padding: 12px 15px;
    }

    #sub.employment .info-card .card-tit {
        font-size: 1.4rem;
    }

    #sub.employment .info-card .card-mail {
        font-size: 1.6rem;
        word-break: break-all;
    }

    #sub.employment .inquiry-form .file-upload {
        gap: 6px;
    }

    #sub.employment .inquiry-form .file-upload .file-btn {
        padding: 7px 12px;
        font-size: 1.3rem;
    }

    #sub.employment .inquiry-form .file-upload .file-list li {
        padding: 5px 9px;
        font-size: 1.2rem;
    }

    #sub.employment .inquiry-form .file-upload .guide-list {
        font-size: 1.1rem;
    }

    #sub.employment .inquiry-form .file-upload .guide-list li {
        padding-left: 9px;
    }

    #sub.faq .section.pd-type2 {
        padding: 40px 0 100px;
    }

    #sub.faq .tit-box .small-tit {
        font-size: 1.4rem;
    }

    #sub.faq .tit-box .mid-tit {
        margin-top: 10px;
        font-size: 2rem;
        line-height: 1.4;
    }

    #sub.faq .faq-tab {
        flex-wrap: nowrap;
        gap: 6px;
        margin: 40px -20px 0;
        padding: 0 20px;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

    #sub.faq .faq-tab::-webkit-scrollbar {
        display: none;
    }

    #sub.faq .faq-tab a {
        flex: none;
        height: 36px;
        padding: 0 16px;
        font-size: 1.4rem;
        white-space: nowrap;
    }

    #sub.faq .faq-tab + .faq-list,
    #sub.faq .faq-tab + .faq-empty {
        margin-top: 20px;
    }

    #sub.faq .faq-list {
        margin-top: 40px;
    }

    #sub.faq .faq-q {
        gap: 10px;
        padding: 20px 0;
    }

    #sub.faq .faq-item .num {
        width: 32px;
        height: 32px;
        font-size: 1.4rem;
    }

    #sub.faq .faq-q .tit {
        gap: 12px;
    }

    #sub.faq .faq-q .cate {
        font-size: 1.2rem;
    }

    #sub.faq .faq-q .subject {
        font-size: 1.4rem;
    }

    #sub.faq .faq-q .arw {
        width: 20px;
        height: 20px;
    }

    #sub.faq .faq-item.is-open .faq-q {
        padding-bottom: 10px;
    }

    #sub.faq .faq-a {
        padding: 0 0 20px;
    }

    #sub.faq .faq-a-box {
        padding: 16px;
        font-size: 1.3rem;
    }

    #sub.faq .faq-a-box .file-area {
        margin-top: 16px;
    }

    #sub.faq .faq-file {
        height: 36px;
        padding: 8px 12px;
        font-size: 1.2rem;
    }

    #sub.faq .faq-empty {
        margin-top: 40px;
        padding: 40px 20px;
        font-size: 1.4rem;
    }

    #sub.faq .pagination-area {
        margin-top: 20px;
    }

    #sub.faq .pagenate .pagination {
        gap: 4px;
    }

    #sub.faq .pagenate .pagination > li.paginate-prev {
        margin-right: 10px;
    }

    #sub.faq .pagenate .pagination > li.paginate-next {
        margin-left: 10px;
    }

    #sub.faq .pagenate .pagination > li > a {
        width: 34px;
        height: 34px;
    }

    #sub.faq .pagenate .pagination img {
        height: 16px;
    }

    #sub.faq .pagenate .paginate-num > a {
        font-size: 1.4rem;
    }

    #map_min {
        width: 100%;
    }

    #sub.search_login .section .map_list .detail_list .list.list_1 {
        padding: 0 20px 20px;
    }

    .popup .popup-inner {
        padding: 30px 20px;
    }

    .popup .popup-title h2 {
        font-size: 1.8rem;
    }

    .agree {
        margin: 0;
    }

    .agree .agree_txt {
        font-size: 1.4rem;
    }

    .agree_txt h4 {
        margin-bottom: 15px;
        margin-top: 15px;
        font-size: 1.4rem;
    }

    .popup .popup-inner .popup-close {
        top: -40px;
        width: 40px;
        height: 40px;
        background-size: 14px;
        border-radius: 5px 5px 0 0;
    }
}

@media screen and (max-width: 480px) {
    .block480 {
        display: block !important;
    }

    .pc-br480 {
        display: none;
    }
}

@media screen and (max-width: 425px) {
    .block425 {
        display: block;
    }

    #main .section3 .tit-box .big-tit {
        line-height: 1.2;
        margin-bottom: 8px;
    }
}

@media screen and (max-width: 390px) {
    .br-390, #main .section2 .tit-box .sub-txt br.br-390,
    #main .section2 .tit-box .sub-txt br:nth-of-type(2) {
        display: block !important;
    }

    .property-list .card-thumb {
        aspect-ratio: 350 / 220;
    }

    #sub.search_login .section .map_option {
        left: 10px;
        top: 74px;
        max-width: calc(100% - 20px);
        padding: 10px;
    }

    #sub.search_login .section .map_option .tab_content_wrap {
        padding: 0 20px;
    }

    #sub.search_login .section .map_option .tabs {
        padding: 20px 20px 0;
    }
}

@media screen and (max-width: 388px) {
    #footer .footer-menu a {
        font-size: 1.1rem;
    }

    #footer .footer-menu li + li::before {
        margin: 0 5px;
    }
}

@media screen and (max-width: 380px) {
    #sub.company.value-chain .tit-box .mid-tit br.br-380 {
        display: block;
    }
}

@media screen and (max-width: 375px) {
    #sub.company.networks .tit-box .mid-tit br.br-375 {
        display: block;
    }

    #sub.search_login .section .map_list {
        padding: 15px 10px 0;
    }

    #sub.search_login .section .map_list ul.list_wrap > div .detail_list .top {
        padding: 10px;
    }

    #sub.search_login .section .map_list ul.list_wrap > div .detail_list .list {
        padding: 10px;
    }

    #sub.search_login .section .map_list ul.list_wrap > div .detail_list .list_1 .swiper .swiper-pagination {
        right: 10px;
    }

    #sub.search_login .section .map_list.action {
        height: calc(100svh - 64px - 85px);
    }

    #sub.search_login .section .map_list.action.active {
        top: 149px;
    }

    #sVisual .nav-wrap.breadcrumb li.home + li.dep {
        flex: 0 0 auto;
        min-width: 100px;
    }

    #sVisual .nav-wrap.breadcrumb li.home + li.dep .dep-dropdown {
        width: auto;
        min-width: calc(100% + 30px);
        white-space: nowrap;
    }

    #sub.service .svc-band .band-txt {
        font-size: 2.2rem;
    }
}

@media screen and (max-width: 360px) {
}

@media screen and (max-width: 359px) {
    #main .section2 .tit-box .sub-txt br.br-390,
    #main .section2 .tit-box .sub-txt br:nth-of-type(2) {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    #main .section1 .service-list > li,
    #main .section2 .tilt-box,
    .network-swiper {
        opacity: 1;
        transform: none;
        transition: none;
    }

    #main .section4 .record-box {
        clip-path: none;
        -webkit-clip-path: none;
        transition: none;
    }

    #mVisual .swiper-slide.is-shown .visual-bg img,
    #mVisual .swiper-slide.is-shown .visual-txt .txt-group {
        animation: none;
    }

    #mVisual .visual-txt .txt-group {
        transform: none;
    }

    #sub.company.ceo .outline-band .band-track {
        animation: none;
    }

    .property-list .property-item.is-appended {
        opacity: 1;
        transform: none;
        transition: none;
    }

    #sub.company.history .hist-more {
        transition: none;
    }
}
