/* @import url(https://fonts.googleapis.com/css?family=Open+Sans:300,400,700); */

* {
    padding: 0;
    margin: 0;
}

body {
    font-family: "Open Sans", sans-serif;
    background-color: #5966f5; /* 背景色 */
    background-image: url(../../img/my/common/bg01.png); /* 画像 */
    background-size: cover; /* 全画面 */
    background-attachment: fixed; /* 固定 */
    background-position: center center; /* 縦横中央 */
}
@media (max-width: 400px) {
fieldset {
    width: 310px;
    margin: 0 auto;
    margin-top: 8px;
    margin-bottom: 2%;
    transition: opacity 1s;
    -webkit-transition: opacity 1s;
    border: 0px;
}
}
@media (min-width: 401px) {
    fieldset {
        width: 400px;
        margin: 0 auto;
        margin-top: 8px;
        margin-bottom: 2%;
        transition: opacity 1s;
        -webkit-transition: opacity 1s;
        border: 0px;
    }
}
h1 {
    background: #172b4d;
    padding: 10px 0; /*PADDING TODOS OS LADOS DE 20PX*/
    font-size: 140%;
    font-weight: 300;
    text-align: center;
    color: #fff;
}
@media (max-width: 400px) {
h2 {
    display: block;
    font-size: 1em;
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
}
}
h1 span {
    padding-inline-start: 100px;
    background: url(../../img/my/common/SP_LOGIN.png) no-repeat center / 100px
        auto;
}
form {
    background: #f0f0f0;
    padding: 6% 4%;
}
@media (max-width: 400px) {
input[type="password"] {
    width: 200px;
    height: 15px;
    margin: 4%;
    border: 1px solid #ccc;
    padding: 4% 4% 4% 4%;
    font-family: "Open Sans", sans-serif;
    font-size: 95%;
    color: #555;
}
}
@media (min-width: 401px) {
    input[type="password"] {
        width: 220px;
        height: 15px;
        margin: 4%;
        border: 1px solid #ccc;
        padding: 4% 4% 4% 4%;
        font-family: "Open Sans", sans-serif;
        font-size: 95%;
        color: #555;
    }
}
.item {
    display: inline;
    width: 100px;
    height: 20px;
    margin: 10%;
    float: left;
    font-weight: 100;
}
@media (max-width: 400px) {
input[type="text"] {
    width: 200px;
    height: 15px;
    margin: 4%;
    border: 1px solid #ccc;
    padding: 4% 4% 4% 4%;
    font-family: "Open Sans", sans-serif;
    font-size: 95%;
    color: #555;
}
}
@media (min-width: 401px) {
    input[type="text"] {
        width: 220px;
        height: 15px;
        margin: 4%;
        border: 1px solid #ccc;
        padding: 4% 4% 4% 4%;
        font-family: "Open Sans", sans-serif;
        font-size: 95%;
        color: #555;
    }
}
input[type="submit"] {
    width: 100%;
    background: #ae0000;
    margin-top: 5%;
    border: 0;
    padding: 2%;
    font-family: "Open Sans", sans-serif;
    font-size: 100%;
    color: #fff;
    cursor: pointer;
    border-radius: 5px;
    transition: background 0.3s;
    -webkit-transition: background 0.3s;
    background-image: url(../../img/my/common/SP_LOGIN_Button.png);
    background-size: 100px;
    background-position: center;
    background-repeat: no-repeat;
}

input[type="submit"]:hover {
    background: #b95553;
    background-image: url(../../img/my/common/SP_LOGIN_Button.png);
    background-size: 100px;
    background-position: center;
    background-repeat: no-repeat;
}
::-webkit-input-placeholder {
}

.flexbox-container-vertical-center {
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center; /* 子要素をflexboxにより中央に配置する */
    height: 766px;
}
.blank {
    height: 70px;
}

.logo img {
    width: 300px;
}
@media (max-width: 400px) {
th div.item_id {

}
}
@media (min-width: 401px) {
    th div.item_id {
        width: 100px;
    }
}
th div.item_id img {
    width: 40px;
    height: 43px;
}
th div.item_password img {
    padding-top: 5px;
    width: 55px;
    height: 40px;
}
#error_explanation {
    background: #fff;
    width: 360px;
    height: auto;
}
#error_explanation li {
    list-style: none;
    color: red;
    font-size: 0.9em;
    font-weight: 100;
    padding: 10px;
}
