@charset "utf-8";

.contact #h2-title .h2-titleInner {
    background-image: url(../images/contact/bg-h2-title.jpg);
}

.contact #h2-title h2::before {
    background-image: url(../images/contact/h2-title.svg);
}

.contact #contents .article-body {
    max-width: 1024px;
    margin: auto;
}

.contact #contents .article-body dl dt span.req {
    border: solid 1px #004098;
    padding: 2px 10px;
    color: #004098;
    margin: 0 0 0 10px;
}

.contact #contents .article-body dl dt span.possible {
    margin: 0 0 0 10px;
}

.contact #contents .description {
    border-top: solid 0.5px #004098;
    border-bottom: solid 0.5px #004098;
    padding: 30px;
    max-width: 835px;
    margin: 0 auto 60px;
}

.contact #contents .article-body dl dd textarea,
.contact #contents .article-body dl dd input {
    background-color: #f2f2f2;
    border: none;
}

.contact #contents .article-body dl dd textarea {
    height: 200px;
    width: 100%;
}

.contact #contents .article-body dl dd input[type="text"],
.contact #contents .article-body dl dd input[type="email"],
.contact #contents .article-body dl dd input[type="tel"] {
    height: 60px;
}

.contact #contents .article-body dl dd input[type="text"],
.contact #contents .article-body dl dd input[type="email"] {
    width: 100%;
}

.contact #contents .article-body dl dd input[type="tel"],
.contact #contents .article-body dl.name dd input[type="text"],
.contact #contents .article-body dl dd span.mwform-tel-field input[type="text"] {
    width: 150px;
}

.contact #contents .article-body dl {
    margin: 0 0 40px;
}

.contact #contents .article-body dl:last-child {
    margin: 0;
}

.contact #contents .article-body dl dd {
    margin: 20px 0 0;
}

.contact .mw_wp_form .horizontal-item {
    margin-right: 10px !important;
}

.contact .mw_wp_form .horizontal-item+.horizontal-item {
    margin-left: 0px !important;
}

.contact #contents .article-foot {
    max-width: 1024px;
    margin: auto;
    text-align: center;
    padding: 60px 0 0;
}

.contact #contents .article-foot ul {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    max-width: 750px;
    width: 100%;
    margin: 0 auto;
}

.contact #contents .article-foot ul li {
    margin: 0 4% 0 0;
    width: 48%;
}

.contact #contents .article-foot ul li a {
    max-width: 100%;
}

.contact #contents .article-foot ul li:last-child {
    margin: 00;
}

.contact #contents .article-foot.btnBox ul li a {
    background-color: #004098;
    border: 0.5px solid #004098;
}

.contact #contents .article-foot.btnBox ul li a:hover {
    background-color: #FFFFFF;
    color: #004098;
}

.contact #contents .article-foot dl dt {
    border-bottom: solid 0.5px #004098;
    margin: 0 auto 25px;
    padding: 0 0 25px;
    max-width: 835px;
}

.contact #contents .article-foot dl dd {
    text-align: left;
}

.contact #contents .article-foot input[type="submit"] {
    background-color: #004098;
    color: #ffffff;
    width: 400px;
    padding: 20px;
    border: none;
    font-size: 2.0rem;
    margin: 100px 0 0;
    cursor: pointer;
}

.contact #contents .article-body dl dt span.sub {
    font-size: 1.5rem;
    margin: 0 0 0 20px;
}

.contact #contents .article-body dl.name {
    display: flex !important;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
}

.contact #contents .article-body dl.name dt {
    margin: 0 15px 0 0;
    font-weight: 400;
}

.contact #contents .article-body dl.name dd {
    margin: 0;
}

.contact #contents .article-body dl.name dd input[type="text"]:nth-child(1) {
    margin-right: 20px;
}

.contact #contents .article-body input,
.contact #contents .article-body textarea {
    font: inherit;
}


.contact #contents .article-body .mwform-tel-field input[type="text"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: textfield;
    box-sizing: border-box;
    vertical-align: middle;
}

.contact #contents .article-body .mwform-tel-field input[type="text"] {
    -moz-appearance: textfield;
}


/*チェックボックス*/
.mwform-radio-field {
    margin: 0 .5em;
}

input[type=checkbox],
input[type=radio] {
    appearance: none;
    display: none;
}

input[type=checkbox]+span,
input[type=radio]+span {
    display: inline-block;
    position: relative;
    vertical-align: middle;
    cursor: pointer;
}

input[type=checkbox]+span:before,
input[type=radio]+span:before {
    font-family: "Font Awesome 5 Free";
    content: "\f0c8";
    display: inline-block;
    margin-right: 0.5em;
    font-weight: 400;
    color: #004098;
    font-size: 2.0rem;
    line-height: 1;
    outline: 2px solid #004098;
    border-radius: 2px;
    font-size: 1.8rem;
    color: #ffffff;
    width: 18px;
    height: 18px;
    line-height: 1;
}


input[type=checkbox]:checked+span:before,
input[type=radio]:checked+span:before {
    content: "\f00c";
    font-weight: 600;
    color: #FFFFFF;
    background-color: #004098;
    font-size: 95%;
}




.mwform-radio-field {
    margin: 0 .5em;
}

.contact #autozip {
    display: none !important;
}

/*----------------------------------------*/

/* 確認画面 (page-id-90,93)

/*----------------------------------------*/

/*---------- 追加 20250626 ----------*/
.contact.confirm #contents .article-body dl {
    margin: 0;
}

.contact.confirm #contents .article-body dl.name dt {
    display: none !important;
}

.contact.confirm #contents .article-body dl.name dd {
    margin: 0;
    padding: 0 12.5px 0 0;
}

.page-id-90 .article-area .article-body dl {

    display: table;

    border-bottom: 0.5px solid #F1F1F1;

    max-width: 1024px;

    margin: 0 auto;

    width: 100%;

}



.page-id-90 .article-area .article-body dl dt {

    display: table-cell;

    width: 240px;

    padding: 12.5px 25px;

    background-color: #f0f8ff;

}



.page-id-90 .article-area .article-body dl dd {

    display: table-cell;

    padding: 12.5px 25px;

    background-color: #ffffff;

}



.page-id-90 .req,
.page-id-90 .sub,
.page-id-90 .policy-dl {

    display: none;

}

.page-id-93 .description p {
    color: #B70000;
}

.page-id-93 .description {
    background-color: rgba(220, 20, 60, 0.1);
}

.page-id-90 .article-body dl.name {
    border-bottom: none;
}

.page-id-90 dl.name dt {
    width: 150px !important;
}

.page-id-95 .article-foot ul li::before {
    display: none !important;
}

.page-id-95 .article-foot ul li a {
    max-width: 350px;
    margin: auto;
}

.page-id-95 .article-foot ul li {
    padding: 0 !important;
}

.page-id-95 .article-foot ul li {
    margin: 50px auto 0;
}

.contact #contents .article-foot {
    max-width: 1024px;
    margin: auto;
    text-align: center;
    padding: 60px 0 0;
}


@media screen and (max-width: 1024px) {


    .contact #contents .description {
        padding: 25px;
        margin: 0 auto 50px;
    }

    .contact #contents .article-body dl {
        margin: 0 0 30px;
    }

    .contact #contents .article-body dl dd input[type="text"],
    .contact #contents .article-body dl dd input[type="email"],
    .contact #contents .article-body dl dd input[type="tel"] {
        height: 50px;
    }

    .contact.confirm #contents .article-foot {
        padding: 0;
    }
}



@media screen and (max-width: 960px) {}



@media screen and (max-width: 835px) {
    .contact #contents .description {
        padding: 25px 15px;
        margin: 0 auto 40px;
    }

    .contact #contents .article-body dl {
        margin: 0 0 25px;
    }

    .contact #contents .article-body dl dd input[type="text"],
    .contact #contents .article-body dl dd input[type="email"],
    .contact #contents .article-body dl dd input[type="tel"] {
        height: 40px;
    }

    .contact #contents .article-foot input[type="submit"] {
        padding: 20px 10px;
        font-size: 1.7rem;
        margin: 60px 0 0;
    }
}

@media screen and (max-width: 750px) {
    .contact #contents .description {
        padding: 25px 15px;
    }

    .contact #contents .article-body dl {
        margin: 0 0 20px;
    }

    .contact #contents .article-body dl dt {
        font-weight: 600;
        /*padding: 10px 25px;*/
    }

    .contact #contents .article-body dl dt span.req,
    .contact #contents .article-body dl dt span.possible,
    .contact #contents .article-body dl dt span.sub {
        font-weight: 400 !important;
    }

    .contact #contents .article-body dl dt span.sub {
        letter-spacing: 0;
        font-size: 80%;
    }

    .contact #contents .article-body dl.name dt {
        padding: 0;
    }

    .contact #contents .article-body dl dd {
        margin: 15px 0 0;
    }

    .contact #contents .article-foot input[type="submit"] {
        padding: 15px 5px;
        margin: 50px 0 0;
    }
}



@media screen and (max-width: 640px) {


    .contact #h2-title h2 span.ja {
        font-size: 2.0rem;
    }

    .contact #contents .description {
        padding: 25px 15px;
        text-align: left;
    }

    /*.contact #contents .description {
        font-size: 1.6rem;
    }*/

    .contact #contents .article-body dl dt span.req,
    .contact #contents .article-body dl dt span.possible,
    .contact #contents .article-body dl dt span.sub {
        font-size: 1.3rem;
    }

    .contact #contents .article-body dl dt span.sub {
        letter-spacing: 0;
        display: block;
        margin: 5px 0 0;
        font-size: 80%;
    }

    .contact #contents .article-foot input[type="submit"] {
        width: 350px;
    }

    .contact #contents .article-body dl dd input[type="tel"],
    .contact #contents .article-body dl.name dd input[type="text"],
    .contact #contents .article-body dl dd span.mwform-tel-field input[type="text"] {
        width: 120px;
    }

    .page-id-90 .article-area .article-body dl,
    .page-id-90 .article-area .article-body dl dt,
    .page-id-90 .article-area .article-body dl dd {
        display: block !important;
    }

    .page-id-90 .article-area .article-body dl dd {
        margin: 0 !important;
        padding: 10px 15px;
    }

    .page-id-90 .article-area .article-body dl dt {
        width: 100% !important;
        padding: 10px 15px;
    }

    .page-id-90 .article-area .article-body dl {
        border-bottom: none !important;
    }

}



@media screen and (max-width: 480px) {
    .contact #h2-title h2 span.ja {
        font-size: 1.6rem;
    }

    .contact #contents .description {
        padding: 25px 5px;
    }

    .contact #contents .article-foot input[type="submit"] {
        width: 300px;
        font-size: 1.8rem;
        padding: 15px;
    }

    .contact #contents .article-body dl dd input[type="tel"],
    .contact #contents .article-body dl.name dd input[type="text"],
    .contact #contents .article-body dl dd span.mwform-tel-field input[type="text"] {
        width: 90px;
    }
}



@media screen and (max-width: 350px) {}