
html, body {
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
    background-color: darkgray;
}

body {
    font-family: "Noto Sans CJK JP Regular", Roboto, sans-serif;
}
body.manage_body {
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
    background-color: rgb(255,255,201);
}

#mainWindow {
    position: absolute;
    /*background-color: white;*/
}

#container {
    display: flex;
    flex-direction: column;
    /*background-color: white;*/
    width: 100%;
    height: 100%;
}

.header-container {
    display: flex;
    justify-content: space-between;
    width: 100%;
    height: 80px;
    background-color: #2A0304;
}

.header-item-base {
    /* height: 77px; */
    width: 100%;
    margin: 8px 2px 8px 2px;
    font-weight: bold;
}
.header-item {
    text-align:center;
    cursor: pointer;
    border: 1pt solid #C67C25;
    border-radius: 6px 6px 6px 6px;
    background: #EBB369;
    color: white;
    font-size: 16px;

    display: flex;
    align-items: center;
    justify-content: center;
    
    text-shadow: 1px 1px 2px rgb(65,33,12), -1px 1px 2px rgb(65,33,12), 1px -1px 2px rgb(65,33,12), -1px -1px 2px rgb(65,33,12);
}

.header-item-order {
    text-align:center;
    cursor: pointer;
    border: 1pt solid #694F50;
    border-radius: 6px 6px 6px 6px;
    background: linear-gradient(to right top, #7E0B0E, #BD232B);
    color: white;
    font-size: 14px;

    display: flex;
    align-items: center;
    justify-content: center;
    
    text-shadow: 1px 1px 2px rgb(65,33,12), -1px 1px 2px rgb(65,33,12), 1px -1px 2px rgb(65,33,12), -1px -1px 2px rgb(65,33,12);
}

.header-item-table {
    text-align: center;
    background: white;
    color: black;
    display: flex;
    flex-direction: row;
    justify-content: space-around
}

.header-item-table > .div1 {
    font-size: 15px;
    align-self: flex-start;
}

.header-item-table > .div2 {
    font-size: 23px;
    align-self: flex-end;
}

.header-item-NG {
    /* box-sizing: border-box; */
    border: 1pt solid black;
    height: 50px;
    width: 100%;
    text-align:center;
    cursor: pointer;
    background-color: white;
    border-radius: 6pt 6pt 0 0;
}
/* テーブル番号タブに色がつくので、この属性は使わない */
/* .header-item:active, .header-item:hover {
    background-color: #202020;
    color: white;
    outline: none;
    filter: invert(100%);
} */

.header-item-selected{
    /*border: 1pt solid white;*/
    /* background-color: #202020;
    color: white;
    outline: none;
    filter: invert(100%); */
    border: 1pt solid #A89899;
    background: radial-gradient(ellipse at center,#CC6601, #CC6601, #6C2803);
}
.header-item-order.header-item-selected{
    /*border: 1pt solid white;*/
    /* background-color: #202020;
    color: white;
    outline: none;
    filter: invert(100%); */
    border: 1pt solid #D5C1C2;
    background: radial-gradient(ellipse at center,#9D1C20, #9D1C20, #240709);
}
.header-item-language {
    background-image: url(img/language.png);
    background-repeat: no-repeat;
    background-position: center;
    background-color:#EBB26B;
    background-size:contain;
    border: 1pt solid #C67C27;
    box-sizing: border-box;
    border-radius: 3px 3px 3px 3px;
}
.header-item-language.header-item-selected {
    background-image : url(img/language-white.png), radial-gradient(ellipse at center,#CC6601, #CC6601, #6C2803);
    border: 1pt solid #A89899;
    /* background: radial-gradient(ellipse at center,#CC6601, #CC6601, #6C2803); */
}

.category-button {
    background: linear-gradient(#F9E0C2, #C79C6F);
    border: 0pt solid #FFFFFF;
    /* box-sizing: border-box; */
    border-radius: 3px 3px 3px 3px;
    font-size: 20px;
    font-weight: bold;

    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    height: 40px;

    width: 25%;
    /* width: 24.5%; */
    padding: 0;
    /* margin:2px */
    border: 1pt solid #240709;
}

.category-button-selected {
    background: linear-gradient(#C2272D, #7D0D0C);
    border: 1pt solid #FFFFFF;
    box-sizing: border-box;
    border-radius: 3px 3px 3px 3px;
    font-size: 20px;
    font-weight: bold;
}

.body-container {
    position: relative;
    background-color: white;
    width: 100%;
    height: 100%;
}

.body-item {
    display: none;
}

.dock-fill-base {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}

.ezo-contents-base {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    padding: 0px;
    box-sizing:border-box;
    background-color:#240405;
    display:flex;
    flex-direction:column;
}

.clickable {
    cursor: pointer;
}

.no-clickable {
    display: none;
    cursor: not-allowed;
}

/*
    ここまで、全画面共通のレイアウト
*/

/* 管理系画面用 */
table.top_menu {
    border-collapse: collapse;
    vertical-align: middle;
    width: 100%;
    height: 3.5pc;
}
.text_right {
    text-align: right;
}
.manage_bar{
    background-color: #44BB44;
    color: white;
}
.manage_link {
    margin: 0 1pc 0 1pc;
    text-decoration: none;
    color: white;
}
.title {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}


/* 白抜き文字用 css */
.outline-cha {
    color: white;
    text-shadow: 2px 2px 1px #000,
    -2px 2px 1px #000,
    2px -2px 1px #000,
    -2px -2px 1px #000;
}
.outline-cha2 {
    color: white;
    text-shadow: 1px 1px 1px #000,
    -1px 1px 1px #000,
    1px -1px 1px #000,
    -1px -1px 1px #000;
}
.outline-cha3 {
    color: black;
    text-shadow: 1px 1px 1px #fff,
    -1px 1px 1px #fff,
    1px -1px 1px #fff,
    -1px -1px 1px #fff;
}


/* tabulatorのボタンの標準デザイン */
button.tab_btn {
    padding: 5px 10px;
    border: 1px solid #25682a;
    background: #3FB449;
    /* Old browsers */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: -webkit-gradient(linear, left top, left bottom, from(#3FB449), to(#25682a));
    background: linear-gradient(to bottom, #3FB449 0%, #25682a 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    color: #fff;
    font-weight: bold;
}

button.tab_btn:hover {
    border: 1px solid #328e3a;
    background: #5fc768;
    /* Old browsers */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: -webkit-gradient(linear, left top, left bottom, from(#5fc768), to(#328e3a));
    background: linear-gradient(to bottom, #5fc768 0%, #328e3a 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    cursor: pointer;
    color: #000;
}

.arrow {
    position: relative;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
}
.arrow::before,
.arrow::after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.left-arrow::before {
    box-sizing: border-box;
    width: 32px;
    height: 32px;
    border: 1px solid #fff;
    border-radius: 50%;
    background-color: #F7C389;
    box-shadow: 3px 3px 2px #7A1A1E, -3px 3px 2px #7A1A1E, 3px -3px 2px #7A1A1E, -3px -3px 2px #7A1A1E;
}
.left-arrow::after {
    box-sizing: border-box;
    width: 16px;
    height: 10px;
    border: 10px solid transparent;

    left: -2px;
    border-right: 12px solid #41210A;
}
.right-arrow::before {
    box-sizing: border-box;
    width: 32px;
    height: 32px;
    border: 1px solid #fff;
    border-radius: 50%;
    background-color: #F7C389;
    box-shadow: 3px 3px 2px #7A1A1E, -3px 3px 2px #7A1A1E, 3px -3px 2px #7A1A1E, -3px -3px 2px #7A1A1E;
}
.right-arrow::after {
    box-sizing: border-box;
    width: 16px;
    height: 10px;
    border: 10px solid transparent;

    left: 12px;
    border-left: 12px solid #41210A;
}

.round-button {
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    width: 77px;
    height: 77px;
    border: 2pt solid white;
    border-radius: 50%;
    box-shadow: 2px 2px 4px #888;
    background: linear-gradient(160deg, #F6BDB2, #E31B25, #5B100A);
}
.round-button > span {
    font-size: 24px;
    /* font-weight: bold; */
    color: white;
    text-shadow:
        1px 1px 3px #781819,
        -1px 1px 3px #781819,
        1px -1px 3px #781819,
        -1px -1px 3px #781819;
}
.box-button {
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    width: 77px;
    height: 77px;
    border: 2pt solid white;
    border-radius: 3%;
    box-shadow: 2px 2px 4px #888;
    background: linear-gradient(to bottom, #C2272B, #BF262B, #6F1413);
}
.box-button > span {
    font-size: 24px;
    /* font-weight: bold; */
    color: white;
    text-shadow:
        1px 1px 3px #781819,
        -1px 1px 3px #781819,
        1px -1px 3px #781819,
        -1px -1px 3px #781819;
}
.box-button-light {
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    width: 77px;
    height: 77px;
    border: 2pt solid white;
    border-radius: 3%;
    box-shadow: 2px 2px 4px #888;
    background: linear-gradient(to bottom, #FADDBD, #C79B6A);
}
.box-button-light > span {
    font-size: 24px;
    /* font-weight: bold; */
    color: #3D1C0B;
    text-shadow:
        1px 1px 3px #FFFEFF,
        -1px 1px 3px #FFFEFF,
        1px -1px 3px #FFFEFF,
        -1px -1px 3px #FFFEFF;
}
.box-button-light.box-button-light-selected {
    background: radial-gradient(ellipse at center,#881A1B, #881A1B, #130000);
}
.box-button-light.box-button-light-selected > span {
    color: white;
    text-shadow:
        1px 1px 3px black,
        -1px 1px 3px black,
        1px -1px 3px black,
        -1px -1px 3px black;
}
.box-button-light.box-button-light-selected > span:before {
    position: relative;
    content: url(img/tri-white.png);
    margin: 1pc;
    top: 8px;
    filter: drop-shadow(0px 0px 10px black);
}

.button-like {
    cursor: pointer;
}
.button-like:active {
    filter: invert(100%);
}

.button-dark {
    background: #41210A;
    box-shadow: 3px 3px 6px #555;
}

.dialog-base {
    background: linear-gradient(to right bottom, #FAEFE3, #F7D8B7) !important;
}

.ezo-order-dlg-contents {
    height: 100%;
    display: flex;
    flex-direction: column;
}
.ezo-order-dlg-contents .main-contents {
    height: 70%;
    display: flex;
    flex-direction: row;
}
.ezo-order-dlg-contents .sub-contents {
    height: 30%;
    display: flex;
    border-top: 1pt solid #41210C;
}
.ezo-order-sub-dlg-contents {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.ezo-block-title {
    font-size: 24px;
    margin: 16px;
    padding: 0 16px;
    border-left: 4px solid #BA2328;
}

.ezo-footer {
    height: 64px;
    display: flex;
    flex-direction: row;
    background-color: #F7C389;
}
.ezo-footer > div {
    width: 25%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.ezo-footer-page {
    background-color: white;
    text-align: center;
    width: 80px;
    font-size: 24px;
    padding: 0 16px;
}

.ezo-mini-button {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #F7C389;
    border: 1pt solid white;
    box-sizing: border-box;
    border-radius: 3px;
    box-shadow: 
        2px 2px 4px #888,
        2px -2px 4px #888,
        -2px 2px 4px #888,
        -2px -2px 4px #888;
}
.ezo-mini-button-red {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: linear-gradient(to bottom, #C1282D, #7A0C0B) !important;
    border: 1pt solid white;
    box-sizing: border-box;
    border-radius: 3px;
    box-shadow: 
        2px 2px 4px #888,
        2px -2px 4px #888,
        -2px 2px 4px #888,
        -2px -2px 4px #888;
}
.ezo-footer-prev-button {
    width: 160px;
    height: 46px;
    background: url(img/tri-brown.png);
    background-repeat: no-repeat;
    background-position: center;
    transform: rotateY(180deg);
}
.ezo-footer-next-button {
    width: 160px;
    height: 46px;
    background: url(img/tri-brown.png);
    background-repeat: no-repeat;
    background-position: center;
}
.now-display {
    font-size: 24px;
    white-space: nowrap;
}

.mb_menu_items {
    padding: 4px;
}

/* タグを flex にして、左上から並べる */
.flex-left-top {
    display: flex;
    justify-content: left;
    align-items: start;
}

/* タグを flex にして、左中央から並べる */
.flex-left-center {
    display: flex;
    justify-content: left;
    align-items: center;
}

/* タグを flex にして、右中央から並べる */
.flex-right-center {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

/* タグを flex にして、上下左右中央に配置 */
.flex-center-center {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* タグを flex にして、上下左右中央に配置 */
.flex-center-bottom {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

/* タグを flex にして、横並び */
.flex-yoko {
    display: flex;
    flex-direction: row;
}

/* タグを flex にして、縦並び */
.flex-tate {
    display: flex;
    flex-direction: column;
}

.ezo-color {
    color: rgb(193,39,47);
}

.ezo-vertical-title {
    background: linear-gradient(to bottom, #C2272B, #BF262B, #6F1413);
    white-space: nowrap;
    color: white;
    text-align: center;
    font-size: 1.5rem;
}
.ezo-vertical-title span {
    writing-mode: vertical-rl;
}

.ezo-border-bottom {
    border-bottom: 1pt dashed rgb(235, 179, 105);
}
