@charset "UTF-8";

/* =============================
common
================================ */
.article__header {
    height: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.topics__txt {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding-bottom: 5px;
    border-bottom: 5px solid;
    border-image: linear-gradient(90deg, #3C8255 0%, #5A5 100%) 1;
}

.article__header h2 {
    order: 2;
    color: var(--base-gray);
    font-family: "Noto Serif JP";
    font-size: 3.2rem;
    font-weight: 900;
    letter-spacing: 6.4px;
}

.article__header p {
    order: 1;
    color: var(--base-gray);
    font-family: "Noto Serif JP";
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 2.1px;
    margin: 4px 0;
}

/* common pc */
@media screen and (min-width:769px) {
    .nav__item:nth-child(5) {
        background-color: var(--base-green);
        color: var(--base-white);
    }

    .article__header {
        height: 380px;
    }

    .article__header h2 {
        font-size: 4.8rem;
        letter-spacing: 9.6px;
    }

    .article__header p {
        font-size: 2rem;
        letter-spacing: 3px;
    }

    .nav__item.line:nth-child(5)::before {
        background: var(--base-white);
    }
}

/* pc 769px */
/* =============================
contact
================================ */
.section__contact {
    padding: 48px var(--contentPadding);
    background: var(--point-green);
}

.form__category {
    font-family: "Noto Sans";
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 16px;
}

.form__category::before {
    display: inline-block;
    content: '必須';
    padding: 3px 10px;
    background-color: var(--point-pink);
    color: var(--base-white, #FDFDFD);
    font-family: "Noto Sans";
    text-align: center;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 3.2px;
    margin-right: 16px;
}

.form__category.noRequired {
    letter-spacing: 3.2px;
}

.form__category.noRequired::before {
    display: none;
}

input[type="text"],
input[type="email"],
textArea {
    display: block;
    width: 100%;
    height: 36px;
    padding: 1px 10px;
    border: 1px solid var(--base-gray);
    background: var(--base-white, #FDFDFD);
    font-size: 1.4rem;
    margin-bottom: 32px;
}

input[type="text"]:focus,
input[type="email"]:focus,
textArea:focus {
    outline: solid 1px var(--base-green);

}

textarea {
    height: 200px;
}

::placeholder {
    color: #C8D1D1;
    font-family: "Noto Sans";
}

.caution {
    color: #3C3C3C;
    text-align: center;
    font-family: "Noto Sans";
    font-size: 1.4rem;
    margin-bottom: 32px;
}
button{
    display: flex;
    margin: 0 auto;
    width: 300px;
    height: 50px;
    padding: 10px 50px;
    justify-content: space-between;
    align-items: center;
    background: linear-gradient(90deg, #3C8255 0%, #5A5 100%);
    color: var(--base-white);
    box-shadow: 4px 4px 8px 0px rgba(0, 0, 0, 0.25);
    font-family: "Noto Serif JP";
    font-size: 1.6rem;
    font-weight: 900;
    letter-spacing: 1.12px;    
    transition: 0.8s;
}
button:hover{
    opacity: 0.6;

}

/* contact pc */
@media screen and (min-width:769px) {
    .section__contact {
        width: 100vw;
        padding: 64px 0px 96px 0px;
        margin: 0 auto;
        display: flex;
        justify-content: center;
    }
    .form__parts{
        display: flex;
        gap: 30px;
    }
    .form__category {
        width: 269px;
        font-size: 2rem;
    }
    .form__category.mail,
    .form__category.content{
        font-size: 1.8rem;
    }
    
    .form__category::before {
        font-size: 2rem;
        letter-spacing: 4px;
        margin-right: 30px;
    }
    
    .form__category.noRequired {
        padding-left: 98px;
    }
    
    .form__category.noRequired::before {
        display: none;
    }
    
    input[type="text"],
    input[type="email"],
    textArea {
        width: 350px;
    }

    
    textarea {
        height: 200px;
    }

    
    .caution {
        font-size: 1.6rem;

    }
    button{
        width: 350px;
        height: auto;
        padding: 16px 0;
        justify-content: center;
        align-items: center;
        font-size: 2.4rem;
        font-weight: 900;
    }
    button img{
        display: none;
    }

}

/* pc 769px */