
:root {
    --form-padding:     3px;
}

form {
    margin-top:     10px;
    margin-bottom:  15px;
}

div.form-field {
    display:        block;
    margin-top:     10px;
}

.form-field.label {
    color:          var( --header-navi-background );
    font-size:      var( --font-small );
    display:        inline-block;
    margin-top:     unset;
}

.required::after {
    color:              red;
    content:            "\00a0*";
    font-size:          var( --font-small );
}

div.form-field.error {
    margin-top:         0px;
    font-size:          var( --font-small );
    font-weight:    var( --weight-bold );
}

div.form-field.label.error {
    font-weight:    var( --weight-bold );
}

div.form-field.error::before, div.form-field.label.error::after {
    color:              red;
    content:            "\00a0\f071\00a0";
    font-family:        "FontAwesome Solid";
    font-size:          var( --font-small );
}

div.form-field.field {
    margin-top:         0px;
}

div.form-field.submit {
    margin-top:         calc( 1.5 * var( --font-normal ) );
    min-height:         calc( 1.1 * var( --font-normal ) + 2 * var( --form-padding ) );
    position:           relative;
}

div.form-field.field > input, div.form-field > input, div.form-field.field > textarea, div.form-field.field > select {
    display:            block;
    background-color:   rgba( 96, 128, 160, 0.07 );
    line-height:        var( --font-normal );
    font-size:          var( --font-normal );
    font-weight:        var( --weight-normal );
    font-family:        var( --common-font );

    padding:            var( --form-padding );
    border-radius:      calc( var( --font-normal ) * 0.5 );
    box-shadow:         0 2px 2px 0 rgba(0,0,0,0.11),0 3px 3px 0 rgba(0,0,0,0.08);
    border:             none;
}

div.form-field.submit > input {
    float:              right;
    margin-left:        var( --common-space );
}

div.form-field.field > input[type=text], div.form-field.field > input[type=email], div.form-field.field > input[type=file], div.form-field.field > input[type=password] {
    min-width:          90%;
    width:              100%;
}

div.form-field.field > textarea {
    min-width:          90%;
    width:              100%;
    line-height:        calc( 1.33 * var( --font-normal ) );
}

div.form-field.field > select {
    min-width:          90%;
    width:              100%;
    /* padding:            calc( var( --form-padding ) * 0.5 ); */
    padding-left:       calc( 0.6 * var( --font-normal ) );
    padding-right:      calc( 0.6 * var( --font-normal ) );
}


/* input.form-field */
div.form-field > input[type="button"], div.form-field > input[type="reset"], div.form-field > input[type="submit"] {
    background-color: #43a2d1;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: var( --font-normal );
    font-weight: 400;
    height: 50px;
    line-height: 50px;
    padding: 0 30px;
    margin-bottom: 20px;
    width: auto;
    outline: 0;
    position: relative;
    text-align: center;
    text-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-transition: background-color .2s ease-out,border-color .2s ease-out,color .2s ease-out;
    transition: background-color .2s ease-out,border-color .2s ease-out,color .2s ease-out;
}
