@charset "UTF-8" ;
/* -------------------
common
--------------------- */
:root {
    --primary-black: #3e3e3e;
    --primary-gray: #f3f3f3;
    --contentWidth: 77.6%;
    --contentPadding: 11.2%;
}

/* -------------------
header
--------------------- */
.header__topic {
    display: block;
    font-family: "Cormorant Garamond";
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 121%;
    padding-top: 2rem;
    padding-left: 3.2rem;
    padding-bottom: 1.2rem;
}

.header__topic a {
    color: var(--primary-black);
}

/* contact pc */
@media screen and (min-width: 769px) {
    .header__topic {
        display: none;
    }
}

/* -------------------
contact
--------------------- */
body.page-id-16 , body.page-id-30 {
    background-color: var(--primary-gray);
}

.section--contact {
    padding: 11.4rem 11.2% 0;
}

.topic {
    margin: 0 auto;
    text-align: center;
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 100%;
}

.topicJP {
    font-family: "Noto Sans JP";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 3rem;
}

.contactTxt {
    margin-top: 6.4rem;
    line-height: 220%;
}

.fadeInSupplement {
    margin: 9rem 0 0;
    font-size: 1.2rem;
    line-height: 200%;  
    position: relative;
}

.fadeInSupplement--contact::before {
    content: "";
    display: block;
    width: 14.1rem;
    height: 9.7rem;
    background-image: url(../images/contactImage.png);
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    top: -9.7rem;
    right: 0;
    opacity: 0; /* フェードイン用 */
    transition: opacity 1.5s ease; /* フェードイン用 */
}

.fadeInSupplement.show::before {
    opacity: 1; /* 表示 */
}

.form--contact{
    margin: 10rem auto 0;
    text-align: center;
}

/* contact pc */
@media screen and (min-width: 769px) {
    .section--contact {
        padding: 15rem 0 0;
        width: 72.2%;
        margin: 0 auto;
    }

    .topic {
        font-size: 3.2rem;
    }
    
    .contactTxt {
        margin-top: 10rem;
        text-align: center;
    }
    
    .contactSupplement {
        margin-top: 10rem;
        margin-left: 26.3%;
        font-size: 1.4rem;
        line-height: 220%;   
    }

    .contactSupplement::before {
        width: 14.1rem;
        height: 9.7rem;
        top: -9.7rem;
        right: 28%;
    }

    .fadeInSupplement {
        margin: 9rem 0 0 14%;
        max-width: 80rem;
    }
}

/* -------------------
form
--------------------- */
.snow-monkey-form {
    margin: 4rem 11.2% 10rem;
}

.smf-item__label {
    margin-top: 2rem;
}

.smf-item__label:first-of-type {
    margin-top: 4rem;
}

.smf-item__description {
    margin-top: 0;
    font-size: 1.2rem;
}

.smf-form .smf-text-control__control{
    width: 80%;
    margin-top: 1rem;
}

.smf-form .smf-textarea-control__control{
    margin-top: 1rem;  
}

.smf-label {
    margin-top: 1rem;
}

.smf-action .smf-button-control__control {
    margin-top: 4rem;
}

.smf-form .smf-checkbox-control__control {
    margin-top: calc(var(--_half-leading) * 1.8em);;
}

.smf-complete-content {
    margin-top: 6rem;
}

/* contact pc */
@media screen and (min-width: 769px) {
    .snow-monkey-form {
        width: 50%;
        margin: 4rem auto 10rem;
    }

    .smf-form .smf-text-control__control{
        width: 50%;
    }
}
/* pc 769px */

/* -------------------
EN form
--------------------- */
/* body.page-id-30 .smf-form {
    margin: 0 11.2% 10rem;
} */