* {
    margin: 0;
}

.g-font {
    font-family: "EB Garamond", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}
.en {
    font-family: "EB Garamond", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}
.jp {
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3",
        "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS Ｐ明朝",
        "MS 明朝", serif;
}

body {
    font-feature-settings: "palt";
}

.v1st {
    width: 100%;
    height: 100vh;
    position: relative;
    .logo {
        width: min(75%, 380px);
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%) !important;
        @media (max-width: 768px) {
            /* width: 38%; */
        }
        img {
            width: 100%;
            height: auto;
        }
    }
}

.v2nd {
    width: 100%;
    height: 130vh;
    position: relative;
    background-image: url("../img/bg_footer.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center bottom;
    @media (max-width: 768px) {
        height: 110vh;
        background-size: 160%;
    }
    .top-descri {
        width: 50%;
        margin: 0 auto;
        text-align: left;
        @media (max-width: 768px) {
            width: 90%;
        }
    }
    h1 {
        line-height: 1;
        margin-bottom: 10px;
        font-family: "EB Garamond", serif;
        font-optical-sizing: auto;
        font-weight: 400;
        font-style: normal;
        letter-spacing: 1px;
        span {
            display: inline-block;
            width: 15px;
            height: 15px;
            position: relative;
            &::before,
            &::after {
                content: "";
                width: 15px;
                height: 1px;
                background-color: black;
                position: absolute;
                top: 50%;
                left: 0;
                transform: translateY(-50%);
            }
            &::before {
                transform: rotate(-45deg);
            }
            &::after {
                transform: rotate(45deg);
            }
        }
    }
    h2.jp {
        line-height: 1.4;
        margin-bottom: 2rem;
        font-size: 14px;
        font-weight: 400;
        letter-spacing: 1.5px;
        span {
            display: inline-block;
            width: 11px;
            height: 11px;
            position: relative;
            &::before,
            &::after {
                content: "";
                width: 11px;
                height: 1px;
                background-color: black;
                position: absolute;
                top: 50%;
                left: 0;
                transform: translateY(-50%);
            }
            &::before {
                transform: rotate(-45deg);
            }
            &::after {
                transform: rotate(45deg);
            }
        }
    }
    .txt {
        p {
            &:first-child {
                line-height: 1.7;
                margin-bottom: 20px;
                letter-spacing: .5px;
            }
            &:last-child {
                line-height: 2;
                font-size: 14px;
                letter-spacing: 1px;
            }
        }
    }
}
