/* ゲスト画面
***********************************/
html,
body {
    height: 100%;
}

body {
    display: flex;
    align-items: center;
    padding-top: 40px;
    padding-bottom: 40px;
    background-color: #f5f5f5;
}

.alert ul {
    margin-bottom: 0;
}
.red {
    color: #ff0000;
}

/* ログイン画面
***********************************/
.form-signin {
    width: 100%;
    max-width: 500px;
    padding: 15px;
    margin: auto;
    margin-top: calc(50vh - 165px);
}

.form-signin .checkbox {
    font-weight: 400;
}

.form-signin .form-floating:focus-within {
    z-index: 2;
}

.form-signin input[type="email"] {
    margin-bottom: -1px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.form-signin input[type="password"] {
    margin-bottom: 10px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
/* ログイン画面背景
***********************************/
.auth-bg {
    width:100vw;
    height: 100vh;
    background: url(../assets/images/big/auth-bg.jpg) no-repeat center center;
}

/* ユーザー登録画面
***********************************/
.form-register {
    width: 100%;
    max-width: 500px;
    padding: 15px;
    margin: auto;
}
.form-register div {
    text-align: left;
    margin-top:16px;
}

/* 共通ゲストページ
***********************************/
main.common-guest {
    width: 100%;
    max-width: 800px;
    padding: 15px;
    margin: auto;
}
main.common-guest p {
    text-align: left;
}

/* テーマカラー
***********************************/
.btn-primary,
.btn-primary:visited,
.btn-primary:active,
.btn-primary:focus {
    background-color: #f42859;
    border-color: #f42859;
    min-width: 9.375rem;
    height: 2.3rem;
    line-height: 1.3333333;
    color:#fff;
    align-items: center;
    padding:0;
    font-size: 13px;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    box-shadow: 0 2px 1px -1px transparent;
}
.btn-primary:hover {
    background-color: #f6597e;
    border-color: #de0b3e;
}
.btn-primary.disabled,
.btn-primary:disabled {
    color: #fff;
    background-color: #f6597e;
    border-color: #de0b3e;
}

.bg-primary {
    background-color: #5E81AC !important;
}
.btn-outline-primary,
.btn-outline-primary:visited,
.btn-outline-primary:active,
.btn-outline-primary:focus {
    color:#5E81AC;
    border-color: #5E81AC;
}
.btn-outline-primary:hover {
    color:#ffffff;
    background-color: #5E81AC;
}
.border-primary {
    border-color: #5E81AC!important;
}
a,
a:visited,
a:active,
a:focus {
    color: #5E81AC;
}
a:hover {
    color: #81A1C1;
}

/* ユーザー規約
***********************************/
.auth-term {
    border:1px solid rgb(206, 212, 218);
    border-radius: 0.25rem;
    background-color: #ffffff;
    padding:1em;
    height: 200px;
    overflow-y: scroll;

}
.auth-term h4 {
    font-size:1.0rem;
}
.auth-term h5 {
    font-size:0.9rem;
}
.auth-term p {
    font-size:0.9rem;
}
/* スクロールバーの幅と高さを設定する */
.auth-term::-webkit-scrollbar {
    width: 10px;
    height: 10px;
  }
  /* スクロールバーの形を設定する */
  .auth-term::-webkit-scrollbar-thumb {
    border-radius: 0.25rem;
  }
  /* スクロールバーの色を設定する */
  .auth-term::-webkit-scrollbar-thumb {
    --bg-opacity: 0.8;
    background-color: rgb(206, 212, 218);
  }

/* ログインモーダル
***********************************/
@media (min-width: 576px) {
    .modal-dialog {
        max-width: 50%;
    }
}
.login-modal .modal-header {
    border-bottom: 0;
}
.login-modal .modal-header img {
    margin-left: calc(50% - 100px);
}
.login-modal a.btn-outline-dark,
.login-modal a.btn-outline-dark:visited,
.login-modal a.btn-outline-dark:active,
.login-modal a.btn-outline-dark:focus {
    color: #212529;
}
.login-modal a.btn-outline-dark:hover {
    color: #fff;
}

/* カード枠・エリア
***********************************/
.card {
    box-shadow: 1em 2em 6em rgb(0 0 0 / 30%) !important;
}
