:root {
    /*loginmodalの入力の大きさ*/
    --input-padding-x: 1.5rem;
    --input-padding-y: .75rem;
}

.wrapper {
    overflow-x: hidden;
    overflow-y: hidden;
}

.main-panel {
    background: #007bff;
    background: linear-gradient(to right, rgb(25 85 152 / 60%), rgb(8 52 86 / 60%)),
  url(../img/page_bg.jpg);
    /* 写真（1280×720）を箱いっぱいに広げる（2026-10-01）。以前は大きさの指定が無く、縦に長い画面では下で2枚目が始まって継ぎ目が見えた */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

@media (max-width: 992px) {
    .main-panel {        
        background: #007bff;
        background: linear-gradient(to right, rgb(25 85 152 / 60%), rgb(8 52 86 / 60%)),
  url(../img/page_bg.jpg) ;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }
}

.card-signin {
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.card-signin .card-title {
    margin-bottom: 2rem;
    font-weight: 300;
    font-size: 1.5rem;
}

.card-signin .card-img-left {
    width: 45%;
    /* Link to your background image using in the property below! */
    /*background: scroll center url('https://source.unsplash.com/WEQbe2jBg40/414x512');*/
    background-size: cover;
}

.card-signin .card-body {
    padding: 2rem;
}

.form-signin {
    width: 100%;
}

.form-signin .btn {
    font-size: 80%;
    border-radius: 5rem;
    letter-spacing: .1rem;
    font-weight: bold;
    padding: 1rem;
    transition: all 0.2s;
}

.form-label-group {
    position: relative;
    margin-bottom: 1rem;
}
.form-label-language {
    position: relative;
    margin-bottom: 1rem;
}

.form-label-group input {
    height: auto;
    border-radius: 2rem;
}

.form-label-group>input,
.form-label-group>label {
    padding: var(--input-padding-y) var(--input-padding-x);
}

.form-label-group>label {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    margin-bottom: 0;
    /* Override default `<label>` margin */
    line-height: 1.5;
    color: #495057;
    border: 1px solid transparent;
    border-radius: .25rem;
    transition: all .1s ease-in-out;
}

.form-label-group input::-webkit-input-placeholder {
    color: transparent;
}

.form-label-group input:-ms-input-placeholder {
    color: transparent;
}

.form-label-group input::-ms-input-placeholder {
    color: transparent;
}

.form-label-group input::-moz-placeholder {
    color: transparent;
}

.form-label-group input::placeholder {
    color: transparent;
}

.form-label-group input:not(:placeholder-shown) {
    padding-top: calc(var(--input-padding-y) + var(--input-padding-y) * (2 / 3));
    padding-bottom: calc(var(--input-padding-y) / 3);
}

.form-label-group input:not(:placeholder-shown)~label {
    padding-top: calc(var(--input-padding-y) / 3);
    padding-bottom: calc(var(--input-padding-y) / 3);
    font-size: 12px;
    color: #777;
}

.btn-google {
    color: white;
    background-color: #ea4335;
}

.btn-facebook {
    color: white;
    background-color: #3b5998;
}


/*
#modal {
  background: #fff;
  color: #555;
  width: 700px;
  padding: 40px;
  border-radius: 4px;
  top: 40px;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 2;
  transition: 0.4s;
  position: absolute;
}
*/

#loginmodal {
    position: absolute;
    transition: 0.4s;
    z-index: 9999;
}

.hidden {
    transform: translate(0, -10000px);
}

.main-panel .navbar {
    position: fixed;
}

#loginmodal-close {
    position: absolute;
    top: 0px;
    right: 30px;
    color: black;
}

#email_checkmark{
    left:auto;
    right:0;
    text-align:right;
    color: rgb(149, 221, 149);
    font-size: 15px;
}

#pass_checkmark{
    left:auto;
    right:0;
    text-align:right;
    color: rgb(255, 8, 28);
    font-size: 15px;
}