@import url('Common.css');
@import url('Spinner.css');
@import url('Progress.css');

body {
    background: url('../img/renga.jpg');
}

#target {
    margin-top: 75px; /*上書き*/
}
.flex {
    display: flex;	
    flex-flow: row nowrap;	
    justify-content: space-between;	
    width: 98%;
    height: 81vh;	
    margin-left: 1%;	
    border: 1px solid rgb(51, 51, 51);	
    border-top-left-radius: 0.5rem;	
    border-top-right-radius: 0.5rem;	
    border-bottom-right-radius: 0.5rem;	
    border-bottom-left-radius: 0.5rem;	
    padding: 0.5rem 0 0.5rem 0.5rem;	
    background-color: #fff;
}
.left-wrap {
    width: 100%;
    height: 100%;
}
.left-side {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    margin: 0 0 0.5rem 0;
}
.right-side {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    width: 100%;	
    height: 100%;	
    border: 1px solid rgb(51, 51, 51);	
    border-top-left-radius: 0.5rem;	
    border-top-right-radius: 0.5rem;	
    border-bottom-right-radius: 0.5rem;	
    border-bottom-left-radius: 0.5rem;	
    margin: 0rem 0.5rem 1.5em 0.5rem;	
    text-align: center;	
    padding: 0.5rem;
    height: 100%;
}
.section-wrap {
    border: 1px solid rgb(51, 51, 51);	
    border-top-left-radius: 0.5rem;	
    border-top-right-radius: 0.5rem;	
    border-bottom-right-radius: 0.5rem;	
    border-bottom-left-radius: 0.5rem;	
    width: 100%;	
    padding: 0 10px 0 0;	
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    flex: 1;
}
.wrap2 {
    justify-content: flex-start;
    align-items: center;
}
.section-wrap2 {
    border: 1px solid rgb(51, 51, 51);	
    border-top-left-radius: 0.5rem;	
    border-top-right-radius: 0.5rem;	
    border-bottom-right-radius: 0.5rem;	
    border-bottom-left-radius: 0.5rem;	
    width: 100%;	
    min-height: 20vh;
    margin: 0.5rem 0;
    padding: 0 5px 0 2px;/*三角形の位置を微調整*/	
    text-align: left;
    flex: 1;
}
.prev,.next {
    width: 2%;
    transform: scale(1,3);
    color: #46F;
    cursor: pointer;
    flex: 1;
}
.prev {
    margin-left: 1%;/*テーブルと三角形の間を微調整*/
}
.thistable {
    position: relative;
    width: 100%;
    height: 180px;
    min-height: 180px;
    overflow: hidden;
    margin: 0.5rem;
}

.thistable-content {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    width: 200%;
    height: 100%;
}

.table0-wrap {
    width: 50%;  /* thistable-contentの幅の半分 */
    flex-shrink: 0;
    padding: 0 2%;
} 

.table0 {
    width: 100%;
    margin: 0;
} 

.yoyakusu-title {
    background-color: rgb(150, 150, 150);
    font-weight: bold;
    width: 100%;
    margin: 0.5rem 0;
    color: rgb(255, 255, 255);
    text-align: center;
}

.date,.yoyakusu {
    cursor: pointer;
}
table {
    width: 96%;	
    border-collapse: collapse;	
    border: 1px solid rgb(85, 85, 85);	
    margin: 10px 0%;	
    table-layout: fixed;
    flex: 1;	
}
th {
    border: 1px solid rgb(85, 85, 85);	
    text-align: center;	
    background-color: rgb(200, 200, 200);	
    color: rgb(51, 51, 51);	
    height: 2rem;	
    padding: 0px;	
    font-weight: normal;	
}
td {
    border: 1px solid rgb(100, 100, 100);	
    background-color: rgb(255, 245, 255);	
    height: 2rem;	
    text-align: center;
}
#reservation-table {
    flex: 0;
}
.goraiten {
    margin: 1rem 0 0;
    height: 40vh;
    flex: 1;
}
.today-guest {
    width: 20%;	
    background-color: rgb(150, 150, 150);	
    margin: 1%;	
    font-size: 1rem;	
    text-align: center;	
    padding: 1rem 0px;	
    color: rgb(255, 255, 255);	
}
.guest-list-wrap {
    width: 100%;
    /* overflow: auto; */
}

.guest-list {
    padding: 0.5rem;
    height: 98%;/*40vh;*/
    overflow: auto;
}
.guest-list p {
    margin: 0.2rem;
}
.system {
    overflow: auto;
}
.yoyaku-information {	
    text-align: left;
    font-size: 0.8rem;
}
.yoyaku-information p {	
    margin: 0.5rem 0.5rem 1rem;
}

.yoyaku-information a {
    color: blue;
    cursor: pointer;
}
.system-information {	
    text-align: left;
    font-size: 0.8rem;
}
.square {
    display: inline-block;	
    width: 0.7rem;	
    height: 0.7rem;	
    margin: 0 0.5rem;	
    background-color: rgb(51, 68, 255);
    vertical-align: middle;	
}
.right-title-box {
    width: 60%;	
    background-color: rgb(150, 150, 150);	
    margin: 0.2rem;	
    color: rgb(255, 255, 255);	
    text-align: center;	
}
.thisday-staff {
    min-height: 20vh;	
}
.staff-list {
    width: 100%;
    margin-top: 0;
}
.staff-list li {
    text-align: left;
    font-size: 1rem;
    line-height: 1.8rem;
    color: black;
}
.staffkan {
    position: relative;
    min-height: 20vh;
    /* align-items: flex-start; */
}
.staffkan button {
    display: inline;
    min-width: 1.5rem;	
    max-width: 1.5rem;	
    width: 1.5rem;
    height: 1.4rem;	
    margin: 0;
    background-color: white;	
    line-height: 1;	
    font-size: 1rem;
    color: #333;	
    padding: 0;
}
.staff-title {
    display: inline-block;
    margin-left: 0;
}
.hozon {
    background-color: #BBB;
    border: 1px #999 solid;
    cursor: pointer;
    transform: translateY(-2px);
}
.jofo-renraku {
    position: absolute;
    top: 4rem;
    left: 2%;
    bottom: 10px;
    width: 96%;
    height: 50%;
    overflow: auto;
    text-align: left;
    font-size: 0.8rem;
}
.jofo-renraku:focus {
    border: none;
    outline: none;
}
.jofo-renraku * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* contenteditable要素のスタイル調整 */
.jofo-renraku [contenteditable="true"] {
    outline: none; /* フォーカス時の枠線を削除 */
    line-height: normal; /* 行間を標準化 */
}
.star {
    cursor: pointer;
    color: red;
}
.yellow {
    color: yellow;
}
#progress-text {
    text-align: left;
    color: blue;
}

@keyframes spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}

@media screen and (max-width: 1000px) {
    .date {
        font-size: 0.8rem;
    }
}
@media screen and (max-width: 767px) {
    * {
        box-sizing: border-box;
    }

    #target {
        margin-top: 70px;
        width: 100%;
        padding: 0;
    }
    .flex {
        width: 100%;
        margin-left: 0;
        padding: 0;
        margin-bottom: 100px;
        flex-direction: column;
        flex-flow: column wrap;	
        height: auto;
    }
    .left-wrap {
        margin-left: 1%;
        width: 98%;
    }

    .section-wrap {	
        margin: 1% 1% 1% 0;
        padding: 5px 10px 0 3px;/*三角形の位置を微調整*/	
    }

    .prev {
        margin-left: 0.2rem;
        margin-right: 0.5rem;
    }
    .next{
        margin-left: 0;
        margin-right: 0.3rem;
    }
    .left-side {
        width: 98%;	
    }
    .goraiten {
        flex-direction: column;
    }
    .today-guest {
        width: 100%;
        height: 1.6rem;	
        line-height: 1.6rem;	
        padding: 0;
    }
    .guest-list {
        overflow: auto;
        height: 10rem;
    }
    .guest-list-item {
        font-size: 1rem;
    }
    .right-side {
        width: 96%;
        margin: 2%;	
    }
    .date {
        font-size: 0.8rem;
    }
    .yoyaku-information p {
        font-size: 0.8rem;
        margin: 0 0.5rem;
    }
    .yoyakuJoho {
        font-size: 1rem;
    }
    .jofo-renraku {
        height: 40%;
    }
    .PC {
        display: none;
    }
    .SP {
        display: block; 
    }

    .footerbox.SP {
        display: block;
    }

}

