:root {
    --focus: 0 0 3px 1px #f0f0f0;
    --c-error: #f63c81;
    --c-filled: #02b500;
}

body {
    background: var(--c-bg);
    color: var(--c-text);
}

.site-nav {
    background: var(--c-bg);
}

.site-nav__link {
    color: var(--c-text);
}


.contact__form {
    max-width: unset;
    margin: unset;
    background: transparent;
    border: unset;
    border-radius: unset;
    box-shadow: unset;
    margin-inline: 3vw;
}

.form__label {
    position: relative;
    margin-bottom: unset;
    display: inline-flex;
    align-items: center;
    gap: 0.5em;
}

.form__label::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    -webkit-mask: url(../img/icon/チェックマーク\(抜\).svg) no-repeat center / contain;
    mask: url(../img/icon/チェックマーク\(抜\).svg) no-repeat center / contain;
    background-color: currentColor;
}

.form__label.is-filled::before {
    background: linear-gradient(199deg, #96e7a0 5%, #14c925 40%);
}

.quote .form__label::before {
    background: linear-gradient(199deg, #96e7a0 5%, #14c925 40%);
}

.contact__form input,
.contact__form textarea {
    padding: 0.25rem 0.5rem;
    margin: 0 auto 0.25rem;
    border: 1px solid #283140;
    box-shadow: inset 0px 0px 4px 0.1px #283140;
}

.form__input:focus,
.form__textarea:focus {
    outline: none;
    border-color: var(--c-primary);
    box-shadow: var(--focus);
}

.form__error {
    color: var(--c-error);
    font-size: .95rem;
}



.contact-form_conf {
    margin-inline-start: 1.5rem;
    padding: unset;
}



.thanks-text {
    padding-inline: 3dvw;
    font-size: .875rem;
}

.center {
    display: flex;
    margin-inline: auto;
    justify-content: center;
}

.contact a {
    color: var(--c-text);
}

@media (min-width: 769px) {

    .site-nav {
        background: none;
    }

}