@charset "utf-8";




















.intro{
    margin-top:3rem;
}
.intro p{
    font-size:0.9rem;
    line-height:1.3rem;
}
dl{
    display:flex;
    flex-wrap:wrap;
}

dt{
    width: 32%;
    color:#fff;
    padding: 1rem 1rem;
    display:flex;
    align-items:center;
    border-bottom:1px solid #fff;
    min-height: 7.5rem;
}
dt .required{
    display:block;
    padding:0.2rem 0.5rem;
    background-color:#fff;
    color:#f00;
    font-size:0.8rem;
    margin-left:auto;
    order:1;
    min-width: 2.8rem;
}
dt div{
    padding:0.2rem 0;
}
dt .optional{
    display:none;
}
dd{
    background-color:#fff;
    width: 68%;
    padding:1rem;overflow: visible;
}
.conf-page dd{
    border-bottom:1px solid #f3f3f3;
}
dd .edit-form{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    height: 100%;
}

dd .edit-form ul{
    display:flex;
}
dd .edit-form ul > li + li{
    margin-left:1rem;
}

dd .conf-form{
    display:flex;
/*  flex-wrap:wrap; */
    flex-direction:column;
    justify-content:center;
    height: 100%;
}
dd .conf-form ul > li{
    margin:0.5rem 0;
}

dd .edit-form .entryclass-list{
    display:block;
}
dd .edit-form .entryclass-list > li + li{
    margin-left:0rem;
    margin-top:0.25rem;
}

dd .error_blank,
dd .error_match,
dd .error_format{
    display:block;
    width:100%;
    color:#f00;
    font-size:0.9rem;position: relative;
}

dd .error_blank:before,
dd .error_match:before,
dd .error_format:before{
    content:"";
    display:inline-block;
    width: 1.2rem;
    height: 1rem;
    margin-bottom:-0.1rem;
    margin-right:0.25rem;
    background-image:url(../img/exclamation.png);
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}


dd .error_blank:empty,
dd .error_match:empty,
dd .error_format:empty{
    display:none;
}
dd input,
dd textarea,
dd select{
    border: 1px solid #edebeb;
    background: #edecec;
    border-radius:0.25rem;
    padding:0.5rem;
    margin: 0 0.25rem 0 0;
    font-size:16px !important;
}

dd input:focus,
dd textarea:focus,
dd select:focus{
    background-color:#eaf5f7;
    border: 1px solid #cbdde1;
}

.section-split{
    width:100%;
    margin-top:3rem;
    margin-bottom:1.5rem;
    padding:1rem 2rem;
    position:relative;
    min-height:0;
}
.section-split h3{
    font-size:1.7rem;
    font-weight:bold;
}
.section-split:before{
    content:"";
    display:block;
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:1rem;

}

.section-split .optional,
.section-split + dd{
    display:none;
}
.sample-text{
    font-size:0.8rem;
}


.licence-text{
    display:block;
    font-weight:bold;
    color:#f00;
    margin-top:0.3rem;
    line-height: 1.2;
}

#name_1{
    width:100%;
}
#name_2{
    /* width:7rem; */
}

#read_1{
    width:100%;
}
#read_2{
    /* width:7rem; */
}
#nick{
    width:100%;
}

#mail_address{
    width:100%;
}
#mail_address_confirm{
    width:100%;
}
dd .mail-confirm{
    color:#3A8D08;
    font-weight:bold;
}

#age{
    /* width:10rem; */
    -webkit-appearance: none;
    font-size: 0.9rem;
}
#age + span{
    margin-left:0.5rem;
}
.age_parent{
    display:block;
    width:100%;
}
.age_parent-text{
    margin-top:0.25rem;
    display:block;
}
.btn-age_parent{
    margin-top:0.25rem;
    margin-bottom: 0.25rem;
}
.gender{}

#postal{
    /* width:10rem; */
}

#address{
    width:100%;
}

#phone{
    width:100%;
}

#mobilephone{
    width:100%;
}
#lineid{
    width:100%;
}
#cartype{
    width:100%;
}

#carnumber{
    width:100%;
}
#bodycolor{
    width:100%;
}
#engine{
    width:100%;
}
#entryname{
    width:100%;
}
#enthusiasm{
    width:100%;
}

#message{
    width:100%;
}

#maintenance{
    width:100%;
}


.privacy-label{
    width:100%;
}

.privacy-text{
    min-width:100%;
    min-height:200px;
    margin-top:2rem;
    padding: 1rem;
    font-size:0.9rem;
    border: 1px solid #bebebe;
    height: 10rem;
    overflow: auto;
    /*     box-shadow: inset 0px 0px 5px rgba(0,0,0,0.5); */
/*     border-radius: 0.5rem; */
    background-color:#fff;
    resize:auto;
    line-height:1.3;
}
.privacy-text p{
    font-size:0.9rem;
}
.privacy-text p + p{
    margin-top: 0.5rem;
}

.privacycheck{
    width:100%;
    margin-top: 0.5rem;
    /* text-align: center; */
}
.privacycheck input{
    width:1.4rem;
    height:1.4rem;
    margin-right:0.5rem;
}
.privacycheck label{
    font-size:1.15rem;
    font-weight:bold;
}
.privacycheck > div{
    justify-content: center;
    align-items: center;
}
.privacycheck .error_blank{
    text-align:center;
}
@media (max-width:480px){
    .privacy-text{
        font-size: 1rem;
    }
}

#form_submit{
    margin-top:2rem;
    text-align:center;
}
label{
    display:flex;
    align-items:center;
}

@media (max-width:480px){
    dt{
        width:100%;
        padding:1rem 1rem;
        font-size: 1.1rem;
        min-height: 0;
    }
    dd{
        width:100%;
        padding:2rem 1rem;
    }
    .sample-text{
        margin-top:0.5rem;  
    }
    .mail-confirm{
        margin-bottom:0.5rem;   
    }
    #age + span{
        font-size:1.1rem;
    }
    dd .error_blank,
    dd .error_match,
    dd .error_format{
        margin-top:0.5rem
    }
}










.btn-def{
    display:inline-block;
    border-radius:0.5rem;
    box-shadow:0px 1px 1px rgba(0,0,0,0.3);
    padding:0.75rem 1rem;
    font-size:0.9rem;
    line-height:1;
    background-color:#555;
    color:#fff;
    cursor:pointer;
}
.btn-def:hover{
    opacity:0.7;
}

.btn-address_search{
    background-color:#6A7986;
    color:#fff;
}
.btn-age_parent{
    background-color:#6A7986;
    color:#fff;
}
.btn-form_conf,
.btn-form_send{
    padding:1.2rem 2rem;
    background-color:#25b08e;
    font-size:1.3rem;
    margin:1rem;
}

.btn-form_edit{
    padding:1.2rem 2rem;
    /* background-color:#25b08e; */
    font-size:1.3rem;
    margin:1rem;
}

.edit-page .conf-after{
    display:none;
}
.conf-page .conf-before{
    display:none;
}


.form_button-wrap{
    text-align:center;
}


.small-text{
    font-size:0.65em;
    margin-left:1rem;
}

.itemTitle{
    display:none;
}
.itemTitle-show{
    display: flex;
    align-items: center;
    width:100%;
    max-width: 9%;
    background-color:#fff;
    color:#000;
    padding: 1rem 0.5rem;
    justify-content: flex-end;
}
.itemTitle.rowfirst{
    padding-left:1rem;
}
.itemInput.rowLast{
    padding-right:1rem;
}

.itemTitle > .required{
    display:none;
}
.itemInput{
    width:100%;
    max-width: 13.6%;
    padding: 1rem 0.5rem;
}
.itemInput input{
    width:100%;
    margin:0;
}
@media (max-width:480px){
    .itemTitle-show{
        max-width:25%;
    }
    .itemInput{
        max-width:75%;
        padding:1rem;
    }
}






/*conf*/
.edit-page .conf-form,
.conf-page .edit-form,
.conf-page dt span.required,
.conf-page .privacycheck,
.conf-page .privacy-label{
    display:none !important;
}

.conf-page .privacy-text{
    margin-top:0;
}
