@charset "utf-8";

.error {
    color: red;
    font-weight: bold;
    }
.kome {
    font-size: 12px;
    color: #b70000;
    margin: 0 0 0 .5rem;
    font-weight:700;
    }
.input.short {
    max-width: 100%;
    width: auto;
    min-width:15em;
    }

.form-table {
        width:100%;
        border-collapse:collapse;
        border-spacing:0;
        text-align:left;
        letter-spacing:0;
        box-sizing: border-box;
        line-height: 150%;
        font-weight:500;

        }
        .form-table tr { }
        .form-table th {
        width:14em;
        }
        .form-table td {
        padding:0 0 2rem;
        }
        
        .form-table .input,
        .form-table .textarea { }
        .form-table input::placeholder { color:#CCC;}
        .form-table textarea::placeholder { color:#CCC;}

        @media screen and (max-width: 767px) {
        .form-table.sp-table th { width:100% !important; display: block !important; }
        .form-table.sp-table td { width:100% !important; display: block !important; padding-top:5px; }
        }

        .form-table .input,
        .form-table .textarea { box-shadow:none; }
        .label:not(:last-child) { display: block; }

.form {
        width:100%;
        max-width:600px;
        position: relative;
        }

        .button, .input, .textarea, .select select, .file-cta, .file-name, .pagination-previous, .pagination-next, .pagination-link, .pagination-ellipsis {
        border-radius: 5px;
        border:1px solid rgb(0 0 0 / .3);
        }

        .form-table .label {
        font-weight:500;
        }




.form-table {
	width:100%;
    line-height: 200%;
    font-size:1rem;
    box-sizing:border-box;
    border-collapse: collapse;
    border-spacing: 0;
	}
    
    .form-input { width:100%;  }
    
        .form-table tr {
        border-bottom:1px solid rgb(0 0 0 / .2);
        }
        .form-table tr:last-child {
        border-bottom:none;
        }
        .form-table th {
        vertical-align: middle;
        text-align: left;
        padding:2rem 1em 2rem 0;
        font-weight:400;
        width:13em;
        }
        .form-table td {
        text-align: left;
        vertical-align: middle;
        padding:2rem 0 2rem 1em;
        }

        .form-table input,
        .form-table select {
            background:rgb(255 255 255 / .3);
            border:1px solid rgb(0 0 0 / .5);
            padding:1em 2.5%;
            box-sizing: border-box;
            border-radius: 2px;
            font-size:1.125rem;
            height:auto;
            }
            .form-table .form-input input {
            width:100%;
            }


        .form-table textarea {
            background:rgb(255 255 255 / .3);
            border:1px solid rgb(0 0 0 / .5);
            padding:1em 2.5%;
            border-radius: 2px;
            box-sizing:border-box;
            font-size:1.125rem;
            height:auto;
            }
            .form-table .form-input textarea {
            width:100%;
            }

    
    
        .form-table input[type="checkbox"] {
            border-radius: 0;
            padding:0;
            -webkit-appearance: none;
               -moz-appearance: none;
                    appearance: none;
            }
            .form-table input[type="checkbox"] {
            position: relative;
            width: 1.125em;
            height: 1.125em;
            border: 1px solid #000;
            border-radius: 2px;
            vertical-align: -5px;
            margin-right:5px;
            }
            .form-table input[type="checkbox"]:checked:before {
            position: absolute;
            top: 2px;
            left: 6px;
            transform: rotate(50deg);
            width: 5px;
            height: 10px;
            border-right: 2px solid #000;
            border-bottom: 2px solid #000;
            content: '';
            }
    
        .form_btn {
            text-align:center;
            margin:4rem auto 0;
            width:100%;
            }



        /*=================================================
            ラジオボタン用セット
        ==================================================*/

        .radio {
        margin: 0.5rem;
        padding-right:1rem;
        display: inline-block;
        }
        .radio input[type="radio"] {
        position: absolute;
        opacity: 0;
        }
        .radio input[type="radio"] + .radio-label:before {
        content: '';
        background: #f4f4f4;
        border-radius: 100%;
        border: 1px solid #333;
        display: inline-block;
        width: 1.2em;
        height: 1.2em;
        position: relative;
        top: 0em;
        margin-right: .5em;
        vertical-align: top;
        cursor: pointer;
        text-align: center;
        transition: all 250ms ease;
        }
        .radio input[type="radio"]:checked + .radio-label:before {
        background-color: #3197EE;
        box-shadow: inset 0 0 0 4px #f4f4f4;
        }
        .radio input[type="radio"]:focus + .radio-label:before {
        outline: none;
        border-color: #3197EE;
        }
        .radio input[type="radio"]:disabled + .radio-label:before {
        box-shadow: inset 0 0 0 4px #f4f4f4;
        border-color: #b4b4b4;
        background: #b4b4b4;
        }
        .radio input[type="radio"] + .radio-label:empty:before {
        margin-right: 0;
        }





    html>/**/body .submit_button {
            cursor: pointer;
            display: block;
            color:#FFF;
            width: 100%;
            height: 90px;
            line-height: 90px;
            font-size:1rem;
            padding:0;
            border: none;
            border-radius:2px;
            background-color:#393734;
            -webkit-transition  : all .3s ease;
                    transition  : all .3s ease;
            }
    html>/**/body .submit_button:hover {
            opacity:.6;
            }

    html>/**/body #reset_button {
            cursor: pointer;
            display: block;
            color:#FFF;
            margin: 0 auto;
            width: 100%;
            max-width: 300px;
            height: 50px;
            border: none;
            border-radius: 8px;
            background-color:#929292;
            -webkit-transition: all 0.5s ease;
            -moz-transition: all 0.5s ease;
            -o-transition: all 0.5s ease;
            }
            html>/**/body #reset_button:hover {
            background-color:#B2B2B2;
            }





    .form-table    { border-top:none; }
    .form-table tr { border-bottom:none; }
    .form-table th { width:100% !important; display: block !important; padding:0 ; box-sizing: border-box; border-right:none; font-weight:500; font-size:1.075rem; }
    .form-table td { width:100% !important; display: block !important; padding:.75rem 0 3em; box-sizing: border-box;}
    .form-table textarea { width:100%; }
    .radio-input input { width:auto; margin:inherit; }
    .form-table input[type="checkbox"] { width: 14px; height:14px; vertical-align: -2px; }
    .form-table input[type="checkbox"]:checked:before { top:0px ;left: 3px; width: 4px; height: 8px; }


    @media only screen and (max-width: 1024px) {
    html>/**/body .submit_button { height: 70px; line-height: 70px; }
	}

    @media only screen and (max-width: 767px) {
    html>/**/body .submit_button { height: 60px; line-height: 60px; }

	}












