@charset "UTF-8";


.contact_wrapper{
    width: 100%;
}
.contact_title{
    text-align: center;
}
.contact_head{
    margin-bottom: 50px;
}
.contact_item{
    margin-bottom: 25px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
}
.contact_item dt{
    width: 250px;
    min-height: 50px;
    font-size: 1.6rem;
    font-weight: 700;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.contact_item dt .kome{
    padding-right: 1.5em;
    position: relative;
    display: inline-block;
}
.contact_item dt .kome::before{
    position: absolute;
    right: 0;
    content: "※";
    display: block;
}
.head_kome,
.contact_item dt .kome::before{
    color: #d52a4d;
}
.contact_item dd{
    width: calc(100% - 250px);
}
.contact_item dd input[type="text"],
.contact_item dd input[type="email"],
.contact_item dd input[type="tel"],
.contact_item dd textarea{
    width: 100%;
    min-height: 50px;
    padding: 12px 20px 11px 20px;
    border-radius: 3px;
    font-size: 1.6rem;
    font-weight: 400;
    background: #efefef;
}
.confirm_wrapper dd{
    padding: 12px 20px 11px 20px;
}
.policy_item{
    margin-top: 50px;
    margin-bottom: 50px;
    font-size: 1.6rem;
    font-weight: 400;
    text-align: center;
}
.policy_item .red{
    color: #d52a4d;
}
.policy_item input[type="checkbox"]{
    width: 0.8em;
    height: 0.8em;
    margin-right: 0.5em; 
    background: #efefef;
}
.policy_item a{
    color: #00608c;
    text-decoration: underline;
    display: inline;
}
.policy_item .wpcf7-list-item{
    margin-left: 0;
}
.policy_item .wpcf7-list-item-label{
    line-height: 1;
    margin-bottom: 0;
    display: block;
}
.policy_check{
    margin-top: 2rem;
}
.policy_check .wpcf7-list-item label{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.submit_item {
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 10px;
}
.submit_item p{
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 10px;
}
.wpcf7-spinner{
    display: none;
}
.submit_item input[type="submit"]{
    min-width: 200px;  
    padding: 10px 20px 9px;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    color: #00a8b8;
    background-color: #fff;
    border: 1px solid #00a8b8;
    border-radius: 3px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    display: block;
}
.submit_item input[type="submit"]:disabled{
    border-color: #ccc !important;
    background-color: #eee !important;
    color: #ccc !important;
}
.submit_item input[type="submit"]:hover {
    background-color: #00a8b8;
    color: #fff;
}
.submit_item input[type="button"]{
    min-width: 200px;  
    padding: 10px 20px 9px;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    color: #3a8fd1;
    background-color: #fff;
    border: 1px solid #3a8fd1;
    border-radius: 3px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    display: block;
}
.submit_item input[type="button"]:hover {
    background-color: #3a8fd1;
    color: #fff;
}

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

    
    .contact_head{
        margin-bottom: 7.5vw;
    }

    .contact_item{
        flex-direction: column;
    }
    
    .contact_item dt{
        margin-bottom: 0.5em;
        width: 100%;
        min-height: unset;
        font-size: 3.125vw;
    }
    .contact_item dt .kome{
    }
    .contact_item dt .kome::before{
    }
    .contact_item dd{
        width: 100%;
    }
    .contact_item dd input[type="text"],
    .contact_item dd input[type="email"],
    .contact_item dd input[type="tel"],
    .contact_item dd textarea{
        width: 100%;
        min-height: unset;
        padding: 2.5vw 3vw 2.4vw 3vw;
        font-size: 3.125vw;
    }
    .confirm_wrapper dd{
        padding: 2.5vw 0 2.4vw 0;
    }
    .policy_item{
        margin-top: 7.5vw;
        margin-bottom: 7.5vw;
        font-size: 3.125vw;
    }
    .policy_item input[type="checkbox"]{
        width: 0.8em;
        height: 0.8em;
        margin-right: 0.5em; 
        background: #efefef;
    }
    .policy_item a{
        color: #00608c;
        text-decoration: underline;
        display: inline;
    }
    .policy_item .wpcf7-list-item-label{
        width: 85%;
        line-height: 2;
        margin-left: auto;
        margin-right: auto;
    }
    .submit_item {
        gap: 3vw;
    }
    .submit_item p{
        width: 100%;
    }
    .submit_item input[type="submit"]{
        width: calc((100% - 3vw) / 2);
        min-width: unset;  
        padding: 2vw 3vw 1.9vw;
        font-size: 3.5vw;
    }
    .submit_item input[type="button"]{
        width: calc((100% - 3vw) / 2);
        min-width: unset;  
        padding: 2vw 3vw 1.9vw;
        font-size: 3.5vw;
    }

}