@charset "UTF-8";
.form_filed{
    color: black;
    background: #dfd4c4;
}

.form_block_first_caption{
    white-space:nowrap;
    width: 23%;
}

.form_send_group{
    padding: 0 0 2em 0;
    margin: auto;
    width: fit-content;
}

.form_container{
    margin: auto;
    height: fit-content;
    background-color: white;
}

.form_block{
    padding: 0.5em 0;

}.form_block a{
    color: #f00;
}

.form_selection{
    padding: 1em 0em;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
}.form_selection label{
    background-color: rgb(230, 230, 230);
    padding: 1em 0.5em;
    cursor: pointer;
    text-align: center;
}

.form_contents_selection{
    flex: 1;
}.form_contents_selection label{
    background-color: rgb(230, 230, 230);
    padding: 0.5em;
    cursor: pointer;
    text-align: center;
    width: fit-content;
}

.form_personal_info_block{
    margin: 2em 0;
}.form_personal_info_block:first-child{
    margin: 0.5em 0 1.0em 0!important;
}.form_personal_info_block:last-child{
    margin: 1.0em 0 0 0!important;
}

.form_caption_block{
    display: flex;
    width: fit-content;
    margin: auto auto auto 0;
}.form_caption_selection_block{
    display: flex;
    width: fit-content;
    height: fit-content;
}

.form_note{
    color: rgb(228, 0, 127);
    font-size: 0.5em;
}

.form_badge-required{
    background-color: white;
    border-radius: 5px;
    border: 1px solid #e4007f;
    color: #e4007f;
    padding: 0.1em 1em;
    font-size: 0.7em;
    height: fit-content;
    margin: auto;
}

.form_badge-any{
    background-color: white;
    border-radius: 5px;
    border: 1px solid rgb(121, 121, 121);
    color: rgb(121, 121, 121);
    padding: 0.1em 1em;
    font-size: 0.7em;
    height: fit-content;
    margin: auto;
}

.form_caption_str{
    width: fit-content;
    margin: auto auto auto 0.2em;
}

.form_width{
    margin: auto;
}

.form_checkboxs_other{
    width: 100%;
}.form_checkboxs_other label{
    width: fit-content;
    display: block;
}

.form_input_text{
    margin-top: 5px;
    border: 1px solid #b5b5b6;
    padding: 10px 7px;
    width: 100%;
}

.form_input_date_time{
    padding: 10px 7px;
    height: 3em;
}

.form_input_kit_type{
    padding: 10px 7px;
    height: fit-content;
}

.form_agreement {
    margin-top: 2rem;
    text-align: center;
}

.form_consent{
    margin: 1em auto;
    width: 100%;
    display: block;
    border: solid 2px red;
    padding: 0.5em 0em;
}.form_consent > div{
    width: fit-content;
    margin: 0 auto 0 1em;
}.form_consent > div > *{
    margin: auto 0.2em;
}.form_consent_check_box{
    display: block;
    transform: scale(1.5);
    margin: 0 0.5em 0.5px auto !important;
}

.form_checkboxs label{
    width: fit-content;
}

.form_send_button{
    position: relative;
    background-color: rgb(60, 45, 45);
    color: white;
    margin: 0 auto 0 auto;
    border-radius: 50px;
    font-weight: bold;
    font-size: 1.8em;
}.form_send_button::after{
    content: "▲";
    position: absolute;
    transform: translate(-50%, -50%) rotate(90deg);
    top: 50%;
    left: 93%;
    font-size: 0.8em;
}

.form_adjustment_radiobutton{
    margin: auto;
    width: fit-content;
    white-space: nowrap;
}.form_adjustment_radiobutton > div{
    margin: auto 0 0.1em 0;
}

.form_contents_select_groups{
    margin-top : 1em;
}

.form_contents_groups{
    margin-bottom: 1em;
    width: 100%;
}

.form_contents_select_box{
    flex: 1;
}.form_contents_select_box div,
.form_contents_select_box > div > input,
.form_contents_select_box > div > select{
    width: 100%;
}

.form-boxsize-image-groups{
    width: 100%;
}

.form-boxsize-image-groups > div select{
    width: 100%;
}

.form-boxsize-image-groups > div select,
.form_contents_select_box > div > select,
.form_contents_select_box > div > input{
    -webkit-appearance: none;
    border: 1px solid #b5b5b6;
    margin-top: 5px;
}

.form_head_explanation{
    font-size: 0.8em;
    text-align: center;
    width: fit-content;
    margin: auto;
}

.form_radio_style{
    margin: 0 0.2em 0 0;
}

.form_input_line_group > *{
    width: 100%;
}.form_input_line_group > .form_no_responce_input:nth-child(1){
    margin: 0 0.5em 0 auto;
}.form_input_line_group > .form_no_responce_input:nth-child(2){
    margin: 0 auto 0 0.5em;
}

.form_privacy_policy_field, .form_purchase_contract_terms_field{
    width: 100%;
    height: 14em;
    border: 2px solid #b5b5b6;
    overflow-y: auto;
    overflow-x: hidden;
    font-size: 1em;
    border-radius: 0.4em;
    padding: 0em 1em;
    margin-top: 5px;
}.form_privacy_policy_field > div, .form_purchase_contract_terms_field > div{
    margin: 1.3em 0;
    font-size: 1em;
}.form_privacy_policy_field > div > div, .form_purchase_contract_terms_field > div > div{
    font-size: 0.8em;
} .form_privacy_policy_field > div > h5{
    width: 100%;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em;
    border-bottom: 2px dotted black;
}.form_purchase_contract_terms_field > div:first-child{
    margin: 0 0 1.3em 0!important;
}.form_purchase_contract_terms_field > div > h5{
    width: 100%;
    padding-bottom: 0.5em;
}.form_revision_history > div{
    text-indent: 1em;
}

.form_term_container{
    border: solid 2px black;
    padding: 2em;
    width: 100%;
    height: fit-content;
    text-align: center;
}
.form_term_caption{
    font-size: 1.2em !important;
    font-weight: bold;
}

.form_contents_select_a{
    padding: 1.0em 0;
}

.form_footer_msg{
    width: fit-content;
    margin: 1.5em auto;
    font-size: 0.9em;
    padding: 0 1em;
}

.form_progress{
    margin: 2em auto 1em;
}
/*--------- pc ---------*/
@media (min-width: 768px) {
    .form_consent > div > *{
        font-size: 1.0em;
    }

    .form_send_button{
        width: fit-content;
        padding: 0.5em 3em;
        margin-bottom: 0.5em;
    }

    .form_contents_select_box > div:nth-child(1){
        margin: 0 0.5em 0 0;
    }.form_contents_select_box > div:nth-child(2){
        margin: 0 0 0 0.5em;
    }

    .form_input_line_group > .form_responce_input:nth-child(1){
        margin: auto 0.5em auto auto;
    }.form_input_line_group > .form_responce_input:nth-child(2){
        margin: auto auto auto 0.5em;
    }

    .form-boxsize-image-groups > div{
        width: 60%;
        margin-right: 1em;
    }.form-boxsize-image-groups > img{
        width: 40%;
        margin-left: 1em;
    }

    .form_contents_selection label{
        width: 30%;
    }.form_contents_selection label:nth-child(1){
        margin: 0.2em 0.5em 0 0;
    }.form_contents_selection label:nth-child(2){
        margin: 0.2em 0 0 0.5em;
    }

    .form_contents_selection{
        width: 60%;
        margin-left: 1.5em;
    }

    .form_acontents_adjustment_radiobutton span{
        margin: auto;
    }

    .form_checkbox_groups{
        margin-left: 1em;
        flex: 1;
    }

    .form_checkboxs{
        display: grid;
        /* gap: 1rem; */
        grid-template-columns: repeat(2, 2fr);
        flex: 1;
    }

    .form_width{
        width: 90%;
        max-width: 830px;
    }

    .form_selection{
        gap: 1rem;
    }

    .form_filed{
        padding: 3em 0;
    }

    .form_container{
        max-width: 1400px;
        width: 73%;
    }
}
/*--------- sp ---------*/
@media (max-width: 767px) {
    .form_consent > div > *{
        font-size: 0.8em;
    }

    .form_send_button{
        width: 100%;
        padding: 0.5em 1.9em;
        margin-bottom: 0.5em;
    }

    .form-boxsize-image-groups > div{
        width: 100%;
    }.form-boxsize-image-groups > img{
        width: 80%;
        margin: 0.5em auto 0px auto;
        display: block;
    }

    .form_contents_selection label{
        width: 55%;
    }.form_contents_selection label:nth-child(1){
        margin: 0.2em 0.5em 0 0;
    }.form_contents_selection label:nth-child(2){
        margin: 0.2em 0 0 0.5em;
    }

    .form_contents_selection{
        width: 80%;
        margin-left: 0em;
    }

    .form_acontents_adjustment_radiobutton span{
        margin: auto auto;
    }

    .form_checkboxs label{
        display: block;
        margin: 0.5em 0;
    }

    .form_note{
        text-indent: 0.5em;
    }

    .form_width{
        width: 95%;
    }

    .form_selection{
        gap: 0.5rem;
        font-size: 0.85em;
    }
}