/* お問い合わせフォーム（1カラム）　*/
.required {
    display: flex;
}

.notrequired {
    display: flex;
}

/* お問い合わせフォーム（2カラム）　*/
.flex {
   display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #E3E3E3;
    margin-bottom: 0;
    position: relative;
     padding: 1em 0;
}

.required_2,
.notrequired_2 {
    color: #111;
    font-size: 14px;
    width: 25%;
    display: flex;
    justify-content: space-between;
}

.required_2::after {
 color: #fff;
    font-size: 12px;
    content: "必須";
    margin-right: 0.5em;
    padding: 0.1em 0.7em;
    background-color: #D9544F;
    display: inline-block;
   border-radius: 4px;
}

.notrequired_2::after {
color: #fff;
    font-size: 12px;
    content: "任意";
    margin-right: 0.5em;
    padding: 0 0.5em;
    background-color: #2C7AB5;
    display: inline-block;
   border-radius: 4px;
}

.input_2 {
    width: 70%;
   margin: 0;
   color: #111;
    font-size: 14px;
}

.text_2,
.textarea_2 {
   border-radius: 15px !important;
    border: 0 !important;
}

.text_2::placeholder,
.textarea_2::placeholder {
  color: lightgray;
  font-size: 14px;
}

.check_2  input {
color: #555 !important;
    height: 0.6em !important;
    width: 0.6em !important;
    min-width: initial !important;
    -webkit-appearance: none !important;
    border: 1px solid #777 !important;
    border-radius: 0 !important;
}

.accept_2 {
  color: #555 !important;
    height: 0.6em !important;
    width: 0.6em !important;
    min-width: initial !important;
    -webkit-appearance: none !important;
    border: 1px solid #777 !important;
    border-radius: 0 !important;
}

.optional .wpcf7-list-item {
   text-align: left !important;
   margin-left: 1em !important;
}


.privacy_2 {
    margin-left: 1em !important;
}

.submit-btn_2 {
    width: 413px;
    height: 64px;
    border-radius: 40px !important;
    font-size: 20px !important;
    background: #DE2E42!important;
    background-color: #DE2E42!important;
    border-width: 0;
    transition: .2s all ease-in;
    border-color: #fa3200;
    color: #ffffff;
    font-size: 22px;
    line-height: 1;
    margin: auto;
    margin-top: 2em;
    display: block;
    max-width: 100%;
}

.submit-btn_2:hover {
background: #FFF!important;
    background-color: #FFF!important;
    color: #DE2E42!important;
    border: 2px solid #DE2E42!important;
}

@media (max-width: 767px) {
.flex {
   flex-direction: column;
   align-items: flex-start;
}

.required_2, .notrequired_2 {
    width: 100%;
    justify-content: flex-start;
    gap: 1em;
}

.input_2 {
   width: 100%;
}
}

/* お問い合わせフォーム（モノクロ）　*/
.input_3 {
    font-size: 16px;
}

.required_3,
.notrequired_3 {
    font-size: 14px;
    font-weight: bold;
   padding: 0;
}

.required_3 p ,
.notrequired_3 p {
   display: inline;
}

.required_3::after {
 color: #fff;
    font-size: 10px;
    content: "必須";
    background-color: #000;
    display: inline-block;
   padding: 2px 4px 4px 4px;
   margin-left: 8px;
    border-radius: 2px;
    line-height: 1;
}

.notrequired_3::after {
color: #fff;
    content: "任意";
    font-size: 10px;
    color: #fff;
    line-height: 1;
    display: inline-block;
    padding: 2px 4px 4px 4px;
    margin-left: 8px;
    border-radius: 2px;
    background-color: #A0A0A0;
}

.text_3,
.textarea_3 {
    background: #Fff !important;
    border: none !important;
    border-bottom: 1px solid #000 !important;
   padding: .5em !important;
}

.text_3:focus,
.textarea_3:focus {
    outline: 0 !important;
    background-color: #E7E7E7 !important;
    border-bottom: 0 !important;
}

.textarea_3 {
   height: 150px;
}

.text_3::placeholder,
.textarea_3::placeholder {
  color: lightgray;
  font-size: 14px;
}

.check_3 input {
    color: #555 !important;
    height: 0.6em !important;
    width: 0.6em !important;
    min-width: initial !important;
    -webkit-appearance: none !important;
    border: 1px solid #777 !important;
    border-radius: 0 !important;
}

.privacy_3 {
    margin-left: 1em !important;
}

.submit-btn_3 {
    background-color: #D6D6D6 !important;
    color: #fff !important;
    border: 1px solid #D6D6D6 !important;
    width: 80% !important;
    margin: auto !important;
    display: block !important;
}