*{
    margin:0;
    padding:0;
    box-sizing: border-box;
}
body{
    background: RGB(144,218,208);;
}
.flexbox{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.center{
    text-align: center;
}


/* フォームの入力欄のエラー状態 */
.err {
    color: #d63031;
    border: 1px solid #ff4444 !important;
    background-color: #fff8f8;
    padding:10px;
}
.reserve_form ul{
    margin:10px 20px;
}
h2 {
    font-size: 1.4em;
    border-top: none ;
    border-left: none ;
    border-right: none ;
    border-bottom: solid 3px rgba(100, 176, 102,0.3);
    position: relative;
    padding:0.5em;
    color:rgb(38, 76, 39);
    margin-bottom: 0.8em;
}

h2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px rgba(100, 176, 102,1);
    left:0;
    bottom: -3px;
    width: 20%;
}
ul.ul_st01 {
}
ul.ul_st01 li{
    width: 100%;
    list-style: none;
    margin-bottom: 0.5em;
}
ul.ul_st01 span{
    width: 100px;
    margin-right: 1em;
    display: inline-block;
    text-align: right;
}
ul.ul_st01 li input{
    width:60%;
}
ul.ul_st01 li input#date{
    width: 30%;
}
ul.ul_st01 li select{
    width: 60%;
    padding:10px;
}
ul.ul_st01 li select#date_option{
    width: 30%;
}
#ex{
    padding:1em
}
table.reserve_table{
    width:100%;
    border-left:1px solid #ccc;
    border-top:1px solid #ccc;
    border-spacing:0;
    margin-bottom: 1em;
}
table.reserve_table td,
table.reserve_table th{
    padding:8px 12px;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
    background: #FFF;
}
table.reserve_table th{
    background:#cadfc4;

}
table.reserve_table td:nth-child(2),
table.reserve_table td:nth-child(3){
    text-align: center;
    cursor: pointer;
}
.sitelogo{
    width:260px;
}
.debug_area{
    width:100%;
    background: rgba(0, 0, 0, 0.9);
    color:white;
    padding:20px;
    position: fixed;
    top:0;
    left:0;
}
.login_page{
    display:block;
    width:100%;
    background: #f6f3ec;
}
.login_inner{
    position: absolute;
    width:400px;
    top:0;
    bottom:0;
    right:0;
    left:0;
    margin:auto;
    height: 400px;
}
.login{
    /* background: rgba(255, 255, 255, 0.9); */
    display: block;
    position: absolute;
    width:400px;
    height: 400px;
    padding:30px;

}
.icon{
    text-align: center;
}
.icon img{
    width:50px;
    height: auto;
}
.user{
    background: rgba(255, 255, 255, 0.9);
    display: block;
    position: absolute;
    width:440px;
    height: 500px;
    padding:30px;
    left:0;
}

h1{
    text-align: center;
    color:RGB(144,218,208);
    font-size:1.5em;
}
.login_page .login dl{
    display:flex;
    flex-wrap: wrap;
    margin-top: 20px;
}
.login_page .login dt{
    width:100%;
    padding:10px 10px 10px 10px;
    text-align: center;
}
.login_page .login dd{
    width:100%;
    padding:0 10px;
    text-align: center;
}
.login_page .login dd input{
    padding:8px;
}


.login_page .login .login_btn button{
    background: white;
    color:RGB(144,218,208);
    padding:12px 30px;
    border:none;
    width:200px;
    text-align: center;
    font-size:1.2em;
    display: block;
    margin:30px auto 0 auto;
    cursor: pointer;
    border-radius: 5px;
}
.btn{
    background:RGB(144,218,208) ;
    color:white;
    padding:12px 20px;
    border:none;
    width:260px;
    text-align: center;
    font-size:1.2em;
    display: block;
    margin:30px auto 0 auto;
    cursor: pointer;
    text-decoration: none;
}
.reserve_btn{
    background:RGB(144,218,208) ;
    color:white;
    padding:12px 20px;
    border:none;
    width:260px;
    margin: 2em auto;
    font-size: 1.3em;
}
input{
    border: none;
    padding:10px;
    border-radius: 5px;
}
.main{
    width:100%;
    max-width: 880px;
    margin:0 auto;
    padding:3em;
}
.main a{
    color:rgb(38, 76, 39);
}
.cancel_btn{
    background:rgb(185, 54, 37);
    color:white;
    padding:12px 20px;
    border:none;
    width:260px;
    text-align: center;
    font-size:1.2em;
    display: block;
    margin:30px auto 0 auto;
    cursor: pointer;
}

input,select{
    padding:10px;
    font-size:1.2em;
}
@media screen and (max-width: 800px) {
    html{
        font-size: 16px;
    }
    h1{
        text-align: center;
        color:RGB(144,218,208);
        font-size:1.2em;
    }
    .login_inner{
        position: relative;
        width:100%;
        top:0;
        bottom:0;
        right:0;
        left:0;
        margin:auto;
        height: auto;
        padding:0px;
    }
    .login{
        display: block;
        position: relative;
        width:100%;
        height: auto;
        min-height: 400px;
        padding:0px;
        right:0;
    }
    .main{
        padding:0.5em;
    }
    .user{
        display: block;
        position: relative;
        width:100%;
        height: auto;
        min-height: 400px;
        padding:30px;
        left:0;
    }
    .login dt{
        width:100%;
        padding:18px 10px 10px 10px;
        text-align: center;

    }
    .login dd{
        width:100%;
        padding:0 10px;
        text-align: center;
    }
    ul.ul_st01 span.w100{
        width:100%;
        text-align: left;
        display: block;
    }
    ul.ul_st01 li input#date{
        width: 45%;
        margin-right: 2%;
        background: #FFF;
    }
    ul.ul_st01 li select#date_option{
        width:45%;
    }
    .reserve_table td:nth-child(1){
        width:54%;
    }
    .reserve_table td:nth-child(2){
        width:23%;
    }
    .reserve_table td:nth-child(3){
        width:23%;
    }

}
