.under-h2+p {
    margin-bottom: 20px;
}

.telDiscriptionArea {
    display: flex;
    margin-bottom: 50px;
    align-items: center;
}

.telDiscriptionArea>figure {
    padding-top: 4px;
}

.telDiscriptionArea>figure>img {
    width: auto;
    height: 27px;
    margin-right: 10px;
}

.telDiscriptionArea div {
    display: flex;
    flex-direction: column;
}

.telDiscriptionArea p a {
    font-size: 35px;
    line-height: 47px;
    padding-right: 10px;
    color: #cc4454;
    font-weight: bold;
}

.telDiscriptionArea div p span {
    color: #cc4454;
}

main {
    margin-bottom: 118px;
}

.teltext {
    font-size: 12px;

}

.form-container {
    max-width: 800px;
    margin: 60px auto;
    padding: 0 4%;
}

form div {
    margin-bottom: 14px;
}

label {
    display: block;
    padding-bottom: 15px;
    font-weight: bold;
    font-size: 16px;
    color: #000000;

}

.textform {
    width: 100%;
    padding: 1% 1%;
    border: 1px solid #c6c6c6;
    border-radius: 3px;
    -webkit-box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
    box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
}

textarea {
    width: 100%;
    height: 200px;
    padding: 1% 1%;
    border: 1px solid #c6c6c6;
    border-radius: 3px;
    -webkit-box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
    box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
    margin-top: 10px;
}

.required {
    background-color: #C52A3C;
    color: #ffffff;
    padding: 0px 5px;
    margin: 0 0px 0px 10px;
    font-size: 14px;
}

.any {
    background-color: #ffffff;
    color: #000000;
    border: 1px solid #000000;
    padding: 0px 5px;
    margin: 0px 0px 0px 10px
}

.contact-item {
    text-align: center;
    margin-top: 30px;
    margin-bottom: 120px;
}

.contact-btn:hover {
    opacity: 0.7;
}

.form-container div br {
    display: none;
}

input[type="text"],
input[type="email"],
input[type="tel"] {
    width: 100%;
    padding: 1% 1%;
    border: 1px solid #c6c6c6;
    border-radius: 3px;
    -webkit-box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
    box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
    margin-top: 10px;
}

.wpcf7-list-item {
    display: block !important;
    margin: 0 !important;
}

.wpcf7-list-item label {
    display: block;
    padding-bottom: 0;
    font-weight: normal;
    font-size: 16px;
    margin-top: 5px;
}

.wpcf7-list-item.first {
    margin: 0;
}


.wpcf7-list-item-label {
    cursor: pointer;
    display: flex;
    font-size: 15px;
}

/* ラジオボタンのデフォルトのボタン */
/* // デフォルトのボタンを非表示 */
input[type="radio"] {
    opacity: 0;
    position: absolute;
}

/* チェック前のボタン */
/* // ラジオボタンっぽく丸くする */
/* // 色をじんわり変化させる */
.wpcf7-list-item-label::before {
    background: #fff;
    border: 1px solid #333;
    border-radius: 100%;
    content: "";
    height: 1.0em;
    margin-bottom: auto;
    margin-right: 2px;
    margin-top: auto;
    transition: background-color .5s;
    width: 1.0em;
}

/* チェック後のボタン */
/* // チェック後の中心の色 */
/* // 中心の色のスタイル */
input[type="radio"]:checked+.wpcf7-list-item-label::before {
    background-color: #C52A3C;
    box-shadow: inset 0 0 0 3px #fff;
}

input.contact-btn {
    width: 400px;
    padding: 20px 0;
    background: transparent linear-gradient(90deg, #EB3E53, #F5A52C) 0 0 no-repeat padding-box;
    font-weight: bold;
    font-size: 20px;
    color: #ffffff;
    border-radius: 0px;
    border: #ffffff;
}

.wpcf7-spinner {
    display: none !important;
}


/* チェックボックスのデフォルトのボタン */
/* // デフォルトのボタンを非表示 */
input[type="checkbox"] {
    opacity: 0;
    position: absolute;
}

/* チェック後のボタン */
/* // チェック後の中心の色 */
/* // 中心の色のスタイル */
input[type="checkbox"]:checked+.wpcf7-list-item-label::before {
    background-color: #C52A3C;
    box-shadow: inset 0 0 0 3px #fff;
}

.contact-privacy {
    text-align: center;
    margin-top: 30px;
    max-width: 378px;
    margin: 0 auto;
}

.contact-privacy a {
    color: #1571DA;
    display: inline-block;
}


@media screen and (max-width: 768px) {
    .under-h2+p {
        margin-bottom: 20px;
    }

    .telDiscriptionArea {
        display: flex;
        margin-bottom: 50px;
        align-items: center;
    }

    .telDiscriptionArea>figure {
        padding-top: 4px;
    }

    .telDiscriptionArea>figure>img {
        width: auto;
        height: 20px;
        margin-right: 4px;
    }

    .telDiscriptionArea div {
        display: flex;
        flex-direction: column;
    }

    .telDiscriptionArea p a {
        font-size: 19px;
        line-height: 47px;
        padding-right: 10px;
        color: #cc4454;
        font-weight: bold;
    }

    .telDiscriptionArea div p span {
        color: #cc4454;
    }

    main {
        margin-bottom: 118px;
    }

    .teltext {
        font-size: 10px;
    }

    .form-container {
        max-width: 800px;
        margin: 60px auto;
        padding: 0 4%;
    }

    form div {
        margin-bottom: 14px;
    }

    label {
        display: block;
        padding-bottom: 15px;
        font-weight: bold;
        font-size: 15px;
        color: #000000;

    }

    .textform {
        width: 100%;
        padding: 1% 1%;
        border: 1px solid #c6c6c6;
        border-radius: 3px;
        -webkit-box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
        box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
    }

    textarea {
        width: 100%;
        height: 110px;
        padding: 2% 1%;
        border: 1px solid #c6c6c6;
        border-radius: 3px;
        -webkit-box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
        box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
    }

    .required {
        background-color: #C52A3C;
        color: #ffffff;
        padding: 0px 5px;
        margin: 0 0px 0px 10px
    }

    .any {
        background-color: #ffffff;
        color: #000000;
        border: 1px solid #000000;
        padding: 0px 5px;
        margin: 0px 0px 0px 10px
    }

    .contact-item {
        text-align: center;
        margin-top: 30px;
        margin-bottom: 120px;
    }

    .contact-btn:hover {
        opacity: 0.7;
    }


    .form-container div br {
        display: none;
    }

    input[type="text"],
    input[type="email"],
    input[type="tel"] {
        width: 100%;
        height: 20px;
        padding: 1% 1%;
        border: 1px solid #c6c6c6;
        border-radius: 3px;
        -webkit-box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
        box-shadow: 1px 1px 3px rgb(0 0 0 / 5%) inset;
        margin-top: 10px;
    }

    .wpcf7-list-item {
        display: block !important;
        margin: 0 !important;
    }

    .wpcf7-list-item label {
        display: block;
        padding-bottom: 0;
        font-weight: normal;
        font-size: 12px;
        margin-top: 5px;
    }

    .wpcf7-list-item.first {
        margin: 0;
    }


    .wpcf7-list-item-label {
        cursor: pointer;
        display: flex;
        font-size: 12px;
    }

    /* ラジオボタンのデフォルトのボタン */
    /* // デフォルトのボタンを非表示 */
    input[type="radio"] {
        opacity: 0;
        position: absolute;
    }

    /* チェック前のボタン */
    /* // ラジオボタンっぽく丸くする */
    /* // 色をじんわり変化させる */
    .wpcf7-list-item-label::before {
        background: #fff;
        border: 1px solid #333;
        border-radius: 100%;
        content: "";
        height: 1.0em;
        margin-bottom: auto;
        margin-right: 2px;
        margin-top: auto;
        transition: background-color .5s;
        width: 1.0em;
    }

    /* チェック後のボタン */
    /* // チェック後の中心の色 */
    /* // 中心の色のスタイル */
    input[type="radio"]:checked+.wpcf7-list-item-label::before {
        background-color: #C52A3C;
        box-shadow: inset 0 0 0 2px #fff;
    }

    input.contact-btn {
        width: 300px;
        padding: 15px 0;
        background: transparent linear-gradient(90deg, #EB3E53, #F5A52C) 0 0 no-repeat padding-box;
        font-weight: bold;
        font-size: 20px;
        color: #ffffff;
        border-radius: 0px;
        border: #ffffff;
    }

    .wpcf7-spinner {
        display: none !important;
    }


    /* チェックボックスのデフォルトのボタン */
    /* // デフォルトのボタンを非表示 */
    input[type="checkbox"] {
        opacity: 0;
        position: absolute;
    }

    /* チェック後のボタン */
    /* // チェック後の中心の色 */
    /* // 中心の色のスタイル */
    input[type="checkbox"]:checked+.wpcf7-list-item-label::before {
        background-color: #C52A3C;
        box-shadow: inset 0 0 0 2px #fff;
    }

    .contact-privacy {
        text-align: center;
        margin-top: 30px;
        max-width: 378px;
        margin: 0 auto;
        font-size: 12px;
    }

    .contact-privacy a {
        color: #1571DA;
        display: inline-block;
    }

    .wpcf7-list-item first last {
        font-size: 12px;
    }

}