@charset "utf-8";
main{
    background: #F5F3F1;
}
.contact_wrap{
    padding: 0 15px;
    max-width: 1032px;
    margin: 0 auto;
}
/*.contact_wrap > p {
    font-size: 20px;
    }*/
.contact_wrap > form{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}
.contact_list{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    max-width: 1032px;
    margin: 0 auto 0 0;
}
.contact_list ~ p{
    text-align: center;
}
.contact_list dt{
    width: 100%;
    margin: 0;
    padding: 25px 0 0;
    /*font-size: 20px;*/
    font-weight: 500;
    max-width: 265px;
}
.contact_list dt.req::after{
    content:"必須";
    display: inline-block;
    margin: 0 0 0 30px;
    padding: 5px 10px;
    color: #fff;
    background: #B42F2F;
}
.contact_list dd{
    width: 100%;
    margin: 0;
    border-bottom: 1px solid #C9BCBC;
    padding: 25px 0;
    /*font-size: 20px;*/
}


.contact_list dd input,
.contact_list dd textarea{
    border: 1px solid #707070;
    padding: 16px;
    font-size: 20px;
}
.contact_list dd textarea{
    width: 100%;
    min-height: 250px;
}
.contact_wrap > div > form > p > input{
    background: #3D2525;
    border: none;
    color: #fff;
    padding: 20px 40px;
    text-align: center;
    margin: 2em auto 0;
    cursor: pointer;
    font-size: 20px;
    display: block;
}
.wpcf7-spinner {
    display: block;
    margin: 10px auto;
    }


.hidden-fields-container {
  display: none;
}
.screen-reader-response, span.wpcf7-not-valid-tip, div.wpcf7-response-output {
  color: #640F0F;
}

dl.contact_list > dt > p {
  display: inline-block;
}


@media (min-width: 1200px) {
  .contact_wrap > p {
    margin: 130px auto 1em;
  }


}

@media(min-width: 600px){

}

@media (max-width: 767px) {
.contact_list dd p {
        margin: 0px;
    }
.contact_list dd {
        padding: 0px 0px 25px;
    }
.contact_list dd input {
width:70%;
}
.contact_list dd textarea{
width:100%;
}
}
/* 768px for table*/
@media (min-width: 768px) {
    .contact_list dt{
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: flex-start;
        border-bottom: 1px solid #371212;
        padding: 38px 0;
    }
    
    .contact_list dt.req::after{
        margin: 10px 0 0 auto;
    }
    .contact_list dd{
        width: calc(100% - 300px);
        margin: 0 0 0 auto;
    }
    .contact_wrap > div > form > p > input{
        padding: 20px 200px;
    }

  

}

/* 992px for pc*/
@media (min-width: 1000px) {
}

@media (min-width: 1620px) {
}