@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Oswald:wght@700&display=swap");

input, button {
    display: block;
    margin: 25px auto 5px;
}
.error{
    display: block;
    text-align: center;
    color: red;
    font-size: x-small;
}


input#username{
    margin-top: 100px;
}

/* --------------------------------------- 2021.01.31 add css --------------------------------------- */

/* ---------------------------------------
  common
-----------------------------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline;
}

html {
    line-height: 1;
}

ol,
ul,
li {
    list-style: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

caption,
th,
td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle;
}

q,
blockquote {
    quotes: none;
}

q:before,
q:after,
blockquote:before,
blockquote:after {
    content: "";
    content: none;
}

a img {
    border: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary {
    display: block;
}

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

a,
button {
    text-decoration: none;
    -webkit-transition: opacity .4s ease, color .4s ease, background-color .4s ease;
    transition: opacity .4s ease, color .4s ease, background-color .4s ease;
    color: #000;
}

a:hover,
button:hover {
    opacity: .5;
}

button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

img {
    max-width: 100%;
    height: auto;
}

table {
    width: 100%;
}

input[type="text"],
input[type="email"],
input[type="password"],
textarea {
    -webkit-appearance: none;
    border: none;
    font-family: inherit;
    font-size: 1.6rem;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea:focus {
    outline: 0;
}

::-webkit-input-placeholder {
    color: #cccccc;
}

:-ms-input-placeholder {
    color: #cccccc;
}

::-ms-input-placeholder {
    color: #cccccc;
}

::placeholder {
    color: #cccccc;
}

/* IE */
:-ms-input-placeholder {
    color: #cccccc;
}

/* Edge */
::-ms-input-placeholder {
    color: #cccccc;
}

html {
    font-size: 62.5%;
    font-family: 'Noto Sans JP', sans-serif;
}

body {
    -webkit-text-size-adjust: 100%;
    overflow-y: scroll;
    overflow-x: auto;
    color: #333;
    font-size: 1.6rem;
    position: relative;
    border-top: solid 10px #ba0b00;
    min-width: 1200px;
}

/* ---------------------------------------
  form parts
-----------------------------------------*/
input[type="text"],
input[type="password"] {
    font-size: 1.6rem;
    padding: 10px;
    border-radius: 5px;
    background-color: #eee;
    border: solid 1px #eee;
}
input[type="text"]:focus,
input[type="password"]:focus {
    border-color: #ba0b00;
    box-shadow: 2px 2px 5px 0px rgba(0,0,0,0.2);
}
button {
    border-radius: 5px;
    background-color: #ba0b00;
    color: #fff;
    min-width: 150px;
    text-align: center;
    font-size: 1.8rem;
    display: block;
    padding: 20px 30px;
}