@charset "UTF-8";

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

@media (max-width: 1401px) {

    .s-header-1 {
        background-color: var(--sub-color);
        padding: 30px 0 30px 100px;
    }

    .s-header-5 {
        padding: 75px 0 25px 100px;
    }

    .sec-1 {
        background-image: url(img/bg_04.png);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        height: 60vh;
    }

    .sec-1 div.i-container {
        max-width: 600px;
        width: 100%;
        margin: 0 auto;
        padding: 20px;
        background-color: rgba(255, 255, 255, 0.8);
        border-radius: 10px;
        box-shadow: none;
        position: absolute;
        top: 45%;
        left: 50%;
        transform: translate(-50%,-50%);
    }

    .img-1, .img-2 {
        display: none;
    }

    .sec-1 h3 {
        font-size: 1.2em;
    }

    .sec-1 p {
        font-size: 0.9em;
    }

    .sec-2 ul.work li div.txt-box h3::after {
        bottom: -0.5em;
    }

    .sec-2::after {
        bottom: -150px;
    }

    .s-header-4 {
        padding: 100px 0 50px 6rem;
        position: relative;
    }

    .sec-4 div.i-container {
        right: 5%;
        transform: translateY(-60%);
    }

    .sec-4 div.i-container span.txt {
        display: block;
        font-size: 1.2em;
    }

    .sec-4 div.i-container p {
        max-width: 600px;
        font-size: 0.8em;
        border-top: 3px dotted var(--main-txt-color);
        padding: 20px 0;
        margin: 20px auto 0;
    }

    .img-4 img {
        height: 600px;
    }

    .sec-5 div.dt-area {
        font-size: 0.9em;
    }

    .s-sec-1 {
        max-width: 950px;
        gap: 30px;
        padding: 10px;
    }

    .s-sec-2 div.i-container {
        max-width: 950px;
    }

    .s-sec-2 div.i-container div {
        max-width: 460px;
    }

    .r-sec-1 .inner-2 img {
        width: 350px;
        border-radius: 32% 68% 42% 58% / 43% 40% 60% 57%;
    }

    .r-grid {
        gap: 30px;
    }

    .r-grid div.g-item span.mask {
        width: 230px;
        height: 230px;
    }

    .r-grid div.g-item span.mask img {
        object-fit: cover;
        width: 100%;
    }

}