* {
    margin: 0;
    padding: 0;
}

ul {
    margin: 0;
    padding: 0;
}
header, footer, section, nav {
    display: block;
}
html, body {
    height: 100%;
}
body {
    font-family:Verdana, Geneva, sans-serif;
    font-size: 12px;
    line-height: 1.5;
    color: #717171;
    background: #717171;
}
a:link,
a:visited {
    text-decoration: none;
    color: #717171;
}
img {
    max-width: 100%;
    margin-bottom: 12px;
}

.wrapper {
    background: #ffffff;
}

.container {
    position: relative;
    left: 34%;
    width: 540px;
    /* margin-left: -270px; */
    margin-left: 10%;
}
.container-footer {
    padding-top: 12px;
    background-color: #717171;
}
@media only screen and (max-width: 1020px) {
    .container {
        left: 45%;
    }
}
@media only screen and (max-width: 650px) {
    .container {
        position: static;
        margin: 0 auto;
        width: 100vw;
    }
}

header {
    padding: 20px 0;
}

.logo img {
    border: none;
}
@media only screen and (max-width: 650px) {
    .logo img {
        display: none;
    }
    .logo {
        background: url(../images/dummylogo-mobile.png) no-repeat top center;
        display: block;
        height: 115px;
        width: 100px;
        margin: 0 auto;
    }
}

.content {
    padding-bottom: 0px;
    overflow: hidden;
}

.content-spacer {
    padding: 30px;
}

.column {
    float: left;
}
.column.one {
    width: 50%;
    margin-right: 48px;
}

.content {
    width: 240px;
    padding-bottom: 15px;
}

.full-content {
    width: 100%;
    padding-bottom: 15px;
}

form label { /* labels are hidden */
    font-weight: bold;
}
form legend {
    font-size:1.2em;
    margin-bottom: 12px;
}
.form-element-wrapper {
    margin-bottom: 12px;
}
.form-element {
    width: 100%;
    padding: 13px 12px;
    border: none;
    font-size: 14px;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}
.form-field {
    color: #B7B7B7;
    border: 1px solid #B7B7B7;
}
.form-field-focus,
.form-field:focus,
input[type="text"]:focus {
    color: #333333;
    border-color: #333;
}

.form-button {
    background: #B61601;
    color: #ffffff;
}

.button {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    cursor: pointer;
    width:100%;
}

.anotherway-button {
    border: 1px solid #B7B7B7;
    background: #ffffff;
    padding: 6px 12px;
    width: 100%;
}

.form-button:hover {
    background: #FF6400;
}
.form-error {
    padding: 0;
    color: #B61601;
}

.list-help {
    margin-top: 40px; /* offset padding on first anchor */
    list-style: none;
}
.list-help-item a {
    display: block;
    padding: 6px 0;
}
.item-marker {
    color: #be0000;
}

.also-login {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 16px;
}

.also-login:before, .also-login:after {
    border-top: 1px solid;
    content: "";
    width: 5rem; /* 線の長さ */
  }
  .also-login:before {
    margin-right: 3px; /* 文字の右隣 */
  }
  .also-login:after {
    margin-left: 3px; /* 文字の左隣 */
  }
  

footer {
    color: #ffffff;
    font-size: 11px;
    background: #717171;
}
.footer-text {
    margin-bottom: 12px;
    color: white;
}
.footer-links a:link,
.footer-links a:visited {
    color: #ffffff;
    font-weight: bold;
}
.footer-links a:after {
    content: "\00a0\00a0\00a0|\00a0\00a0";
}
.footer-links a.last:after {
    content: "";
}

/* select-authenticator.ftl */

.pf-l-split__item {
    display: flex;
    margin: 3px 6px 0 2px;
}

.pf-l-stack {
    display: flex;
    flex-direction: column;
}

.pf-m-fill {
    /* flex-grow: 1; */
}

.select-auth-box-parent {
    display: flex;
    flex-direction: row;
    border-top: 1px solid #f0f0f0;
    padding: 10px 4px;
}

.select-auth-box-parent:hover {
    background: #f0f0f0;
}

/* error link highlight */

a#loginRestartLink:visited, a#loginContinueLink:visited,
a#loginRestartLink:link, a#loginContinueLink:link {
    color: blue;
}

/* template.ftl */

div.container {
    color: #717171;
    position: initial;
}

body {
    font-size: 1.5rem;
    background-image: none;
}

label {
    font-size: 1rem;
}

span {
    font: 1rem;
}
