/*! normalize.css v4.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
progress,
video {
    display: inline-block;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

progress {
    vertical-align: baseline;
}

template,
[hidden] {
    display: none;
}

/* Links
   ========================================================================== */
a {
    background-color: transparent;
}

a:active,
a:hover {
    outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */
abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted;
}

b,
strong {
    font-weight: inherit;
}

b,
strong {
    font-weight: bolder;
}

dfn {
    font-style: italic;
}

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

mark {
    background-color: #ff0;
    color: #000;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* Embedded content
   ========================================================================== */
img {
    border-style: none;
}

svg:not(:root) {
    overflow: hidden;
}

/* Grouping content
   ========================================================================== */
code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

figure {
    margin: 1em 40px;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

/* Forms
   ========================================================================== */
button,
input,
select,
textarea {
    font: inherit;
    margin: 0;
}

optgroup {
    font-weight: bold;
}

button,
input,
select {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

button:-moz-focusring,
input:-moz-focusring {
    outline: 1px dotted ButtonText;
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal;
}

textarea {
    overflow: auto;
}

[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

[type="search"] {
    -webkit-appearance: textfield;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

.row:after {
    content: "";
    display: table;
    clear: both;
}

/* elements base
----------------------------------------------------*/
*,
*:before,
*:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html,
body {
    height: 100%;
}

html {
    -webkit-tap-highlight-color: transparent;
}

body {
    background: #fff;
    color: #555555;
    font-size: 14px;
    line-height: 20px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-weight: 300;
}

a {
    color: #697FE0;
    text-decoration: none;
}

a:hover,
a:focus {
    text-decoration: none;
    outline: 0;
}

img {
    vertical-align: top;
}

figure {
    margin: 0;
}

p {
    margin: 0 0 10px;
}

small {
    font-size: 11px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1.2em;
    margin: 0 0 .5em;
    font-weight: 500;
}

h1 {
    font-size: 16px;
}

h1 a {
    color: #7c7c7c;
}

h2 {
    font-size: 20px;
    color: #697FE0;
    margin: 0 0 1em;
}

h3 {
    font-size: 16px;
    color: #697FE0;
    margin: 1.5em 0;
}

h4,
h5,
h6 {
    font-size: 14px;
}

ol,
ul {
    list-style: none;
    padding: 0;
    margin: 0 0 1.4 0;
}

ul ul,
ul ol,
ol ol,
ol ul {
    margin-bottom: 0;
}

dl {
    margin: 0 0 1.4 0;
}

dt {
    font-weight: bold;
}

dd {
    margin-left: 0;
}

/*  table  */
table {
    border-collapse: collapse;
    border-spacing: 0;
}

/*  form  */
fieldset {
    padding: 0;
    margin: 0;
    border: 0;
}

legend {
    padding: 0;
    border: 0;
}

button,
input,
select,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: 100%;
    outline: 0;
}

button,
input {
    line-height: normal;
}

button,
select {
    text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    cursor: pointer;
    -webkit-appearance: button;
}

button[disabled],
html input[disabled] {
    cursor: default;
}

input[type="checkbox"],
input[type="radio"] {
    margin: 4px 0 0;
    padding: 0;
    box-sizing: border-box;
}

input[type="search"] {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    -webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    padding: 0;
    border: 0;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

input,
button,
select,
textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

button,
input,
select[multiple],
textarea {
    background-image: none;
}

select,
option {
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url(data:image/png;base64,R0lGODlhDQAEAIAAAAAAAP8A/yH5BAEHAAEALAAAAAANAAQAAAILhA+hG5jMDpxvhgIAOw==);
    background-repeat: no-repeat;
    background-position: right center;
    padding-right: 1.4;
}

option {
    background-image: none;
}

/*  */
input:-moz-placeholder,
textarea:-moz-placeholder,
input::-moz-placeholder,
textarea::-moz-placeholder,
input:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input::-ms-input-placeholder,
textarea::-ms-input-placeholder,
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #999999;
    font-size: .9em;
    font-weight: 300;
}

select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"] {
    display: inline-block;
    width: 18em;
    padding: 4px 6px;
    margin-bottom: 9px;
    border-radius: 3px;
    background-color: #ffffff;
    border: 1px solid lightgray;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    transition: background-color linear 0.15s, box-shadow linear 0.15s;
}

select:focus,
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus {
    background-color: #fffded;
    border-color: #ccc;
    outline: 0;
}

input[disabled],
select[disabled],
textarea[disabled] {
    cursor: not-allowed;
    background-color: #eeeeee;
}

input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"][readonly],
input[type="checkbox"][readonly] {
    background-color: transparent;
}

select {
    padding: 4px 6px 4px 4px;
}

/**/
textarea {
    height: auto;
}

/*  */
form dl dt,
fieldset legend,
label {
    clear: both;
    float: left;
    width: 10em;
    font-weight: 500;
    margin: 6px 8px 0 0;
    padding: 0 3px;
    font-size: 1em;
}

form dl {
    clear: both;
    margin-bottom: 9px;
}

form dl dd {
    padding: 5px 0;
}

textarea {
    width: calc(100% - 12px - 10em);
}

select {
    width: auto;
}

input[type="radio"]+label,
input[type="checkbox"]+label {
    float: none;
}

input[readonly],
input[readonly]:focus {
    padding: 5px;
    border: transparent;
    transition: none;
    box-shadow: none;
}
div.input:after {
  content: "";
  display: block;
  clear: both;
}
div.input:before {
  content: "";
  display: block;
  clear: both;
}
div.input {
  display: block;
}
/* structure
----------------------------------*/
#wrap {
    min-height: 100vh;
    height: 100% \9;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
}

#contents {
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto;
    background: #FBFBFB;
}

header {
    display: -webkit-flex;
    display: flex;
    border-bottom: 1px solid #bbb;
    background: #FBFBFB;
}

header .container {
    display: -webkit-flex;
    display: flex;
}

header .container h1 {
    margin: .75em 0;
    margin-right: auto;
}

header .container h1 a {
    font-size: 11px;
    color: #0A3047;
}

header .container nav ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin: .7em 0 0;
}

header .container nav ul li {
    padding: 0 1em;
    border-left: 1px solid #d0d0d0;
}

header .container nav ul li.current a {
    color: #697FE0;
}

header .container nav ul li:last-child a {
    color: #7c7c7c;
}

header .container nav ul li:last-child {
    margin-right: 0;
    border-right: 1px solid #d0d0d0;
}

header .container nav ul li a {
    display: block;
    padding: 3px 5px;
    font-size: .92em;
    color: #0A3047;
    font-weight: 500;
}

header .container nav ul li a:hover {
    color: #555555;
}

header .container nav ul li a:before {
    font-family: ppctools, icomoon;
    display: inline-block;
    line-height: 1;
    font-size: 1em;
    font-weight: normal;
    font-size: 1.2em;
    padding: 0 2px 0 0;
    line-height: 1.3em;
    vertical-align: bottom;
}

header .container nav ul li a:first-child:before {
    content: "\e908";
}

header .container nav ul li a[href*="users"]:before {
    content: "\e972";
}

header .container nav ul li a[href*="logout"]:before {
    content: "\e90d";
}

footer {
    background: #89c3eb;
    padding: 0;
    /*width: 100%; min-width:768px;

 position:absolute;
 bottom:0;*/
}

footer .copyright {
    border-top: 1px solid #bbb;
}

footer .copyright p {
    margin: 0 auto;
    padding: .5em;
    color: #fff;
    font-size: .9em;
}

/* columns structure
----------------------------------*/
.container {
    margin-right: auto;
    margin-left: auto;
    width: 1060px;
    background: transparent;
}

@media (max-width: 1059px) {
    .container {
        max-width: 100%;
        padding-left: 1em;
        padding-right: 1em;
    }
}

/* 追加CSS　*/
@media (max-width: 480px) {
    header .container {
        display: inline;
        text-align: center;
    }
}

.login-p{
  text-align: center;
  padding-top: 60px;
}

.login-p a{

}
