/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */
/* stylelint-disable no-duplicate-selectors */
/* stylelint-disable */
/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */
html,
body,
#root,
#app,
app {
    height: 100%;
    overflow: hidden;
}

.colorWeak {
    filter: invert(80%);
}

.ant-layout {
    min-height: 100vh;
}

canvas {
    display: block;
}

body {
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

ul,
ol {
    list-style: none;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    body .ant-design-pro > .ant-layout {
        min-height: 100vh;
    }
}

app svg {
    vertical-align: bottom;
}

app .ant-card-bordered {
    border: 1px solid #142C42;
}

app .ant-card-head {
    background-color: #142C42;
    border-bottom: 1px solid #142C42;
    color: white;
}

app .ant-collapse {
    border: 1px solid #142C42;
}

app .ant-collapse > .ant-collapse-item {
    border-bottom: unset;
}

app .ant-collapse > .ant-collapse-item > .ant-collapse-content > .ant-collapse-content-box {
    padding: 5px !important;
}

app .ant-collapse > .ant-collapse-item > .ant-collapse-header {
    background-color: #F2F4F8;
    color: black;
    height: 48px;
}

app .ant-collapse > .ant-collapse-item > .ant-collapse-header .ant-collapse-expand-icon {
    display: none !important;
}

app .ant-layout-header {
    background-color: white;
    box-shadow: rgba(64,64,64,0.4) 0px 5px 10px;
}

app .ant-pro-sider-logo h1 {
    font-size: 14px;
}

/*
    #001529

    #142C42
    #234E75

    #003D75
    #0064C2
*/
app .ant-descriptions-header {
    margin-bottom: unset;
}

app .ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-label {
    width: 180px;
}

app .ant-descriptions-bordered .ant-descriptions-view {
    border-color: #aaa;
}

app .ant-descriptions-bordered .ant-descriptions-row {
    border-color: #aaa;
}

app .ant-descriptions-bordered .ant-descriptions-item-label {
    background-color: #666;
    border-color: #aaa;
    color: #fff;
}

app .ant-descriptions-bordered .ant-descriptions-item-content {
    background-color: #eaeaea;
    border-color: #aaa;
}


app .option-view > .ant-descriptions-view {
    border: initial;
}


app input:read-only,
app textarea.ant-input:read-only,
.ant-modal-root input:read-only,
.ant-modal-root textarea:read-only {
    background: #EEE;
    color: #333;
}

app .order-status, app .progress-status {
    padding-left: 15px;
    position: relative;
}
app .order-status-New::before {
    content: "";
    display: block;
    width: 10px;
    height: 18px;
    background: deeppink;
    position: absolute;
    left: 0px;
    top: 0;
    bottom: 0;
    margin: auto;
}

app .progress-status-Waiting::before {
    content: "";
    display: block;
    width: 10px;
    height: 18px;
    background: dimgray;
    position: absolute;
    left: 0px;
    top: 0;
    bottom: 0;
    margin: auto;
}

app .order-status-OnGoing::before, app .progress-status-Working::before {
    content: "";
    display: block;
    width: 10px;
    height: 18px;
    background: blue;
    position: absolute;
    left: 0px;
    top: 0;
    bottom: 0;
    margin: auto;
}

app .order-status-Canceled::before {
    content: "";
    display: block;
    width: 10px;
    height: 18px;
    background: black;
    position: absolute;
    left: 0px;
    top: 0;
    bottom: 0;
    margin: auto;
}

app .order-status-Finished::before, app .progress-status-Completed::before {
    content: "";
    display: block;
    width: 10px;
    height: 18px;
    background: forestgreen;
    position: absolute;
    left: 0px;
    top: 0;
    bottom: 0;
    margin: auto;
}

app .instruction-status-Confirming::before {
    content: "";
    display: block;
    width: 10px;
    height: 18px;
    background: #ED9E31;
    position: absolute;
    left: 0px;
    top: 0;
    bottom: 0;
    margin: auto;
}

app .instruction-status-NotAvailable::before {
    content: "";
    display: block;
    width: 10px;
    height: 18px;
    background: crimson;
    position: absolute;
    left: 0px;
    top: 0;
    bottom: 0;
    margin: auto;
}

app .anticon svg {
    width: 1.3em;
    height: 1.3em;
}

app .last-item-in-order > td {
    border-bottom: double 3px silver !important;
}


app .highlight-type01 {
    background-color: #FF9999;
    font-weight: bold;
}

app .highlight-type02 {
    background-color: #CCECFF;
    font-weight: bold;
}

app .highlight-type03 {
    font-weight: bold;
    text-decoration: underline;
    color: red;
}

app .highlight-type01-lg {
    background-color: #FF9999;
    font-weight: bold;
    font-size: 10rem;
}

app .ant-tooltip {
    max-width: 350px;
}

app .moms-table-a {
    border-collapse: separate; /* Don't collapse */
    border-spacing: 0;
    width: 100%;
}

    app .moms-table-a > tbody, .moms-table-a > thead {
        width: 100%;
    }

    app .moms-table-a tr {
        height: 30px;
    }

    app .moms-table-a td {
        padding: 8px;
    }

    app .moms-table-a .header-row {
        border: solid 1px #aaa;
        background-color: #142C42;
        color: white;
    }

    app .moms-table-a .title-row {
        border-left: solid 1px #aaa;
        border-top: solid 1px #aaa;
        border-right: solid 1px #aaa;
        border-bottom: unset;
        background-color: #444;
        color: whitesmoke;
    }

    app .moms-table-a .item-row {
        border-left: solid 1px #aaa;
        border-top: unset;
        border-right: solid 1px #aaa;
        border-bottom: unset;
    }

    app .moms-table-a .item-last-row {
        border-left: solid 1px #aaa;
        border-top: unset;
        border-right: solid 1px #aaa;
        border-bottom: solid 1px #aaa;
    }

    app .moms-table-a .title-cell {
        border-bottom: unset;
        border-right: unset;
    }


    app .moms-table-a .item-cell {
        border-left: solid 1px #aaa;
        border-right: unset;
    }

    app .moms-table-a .item-first-cell {
        background-color: #444;
        border-top: solid 1px #444;
        border-bottom: unset;
    }

    app .moms-table-a .item-quantity-cell {
        text-align: right;
        font-size: 1.4rem;
    }

    app .moms-table-a .item-quantity-cell-wrapping {
        text-align: right;
    }

app .ecsite-link svg {
    height: 15px !important;
}


#app-instruction-tbl .ant-collapse > .ant-collapse-item > .ant-collapse-header {
    background-color: #444 !important;
}

#app-instruction-tbl .ant-collapse {
    border: unset;
}

#app-instruction-tbl .ant-collapse-content {
    background-color: #444;
    border: unset;
}

#app-instruction-tbl .ant-collapse > .ant-collapse-item:last-child > .ant-collapse-header {
    border-radius: unset;
}

#app-instruction-tbl .ant-collapse-content > .ant-collapse-content-box {
    padding: 0px 8px 8px 40px;
}

#app-instruction-tbl .sub-table {
    width: 100%;
    border-top: solid 2px darkgoldenrod;
    color: whitesmoke;
}

    #app-instruction-tbl .sub-table > tr {
        border-bottom: dotted 1px dimgray;
    }

        #app-instruction-tbl .sub-table > tr > td {
            text-align: left;
            vertical-align: top;
        }

    #app-instruction-tbl .sub-table .sub-table-header {
        font-weight: bold;
    }

app .instruction {
    border-radius: 0 0 2px 2px;
    border: solid 1px #142C42;
    margin-bottom: 10px;
}

    app .instruction .instruction-title {
        background-color: #142C42;
        color: white;
        padding: 8px 16px;
    }

    app .instruction .instruction-body {
        background-color: white;
    }

        app .instruction .instruction-body .instruction-body-inner {
            padding: 10px;
        }

        app .instruction .instruction-body .instruction-status {
            padding: 5px 10px;
        }

            app .instruction .instruction-body .instruction-status .instruction-status-title {
                font-size: 1.5rem;
                font-weight: bold;
            }

        app .instruction .instruction-body .instruction-confirmed {
            align-content: flex-end;
        }

        app .instruction .instruction-body .instruction-status-link {
            align-content: flex-end;
        }

    app .instruction .instruction-body-avl .instruction-status {
        background: linear-gradient(to right, rgba(165, 198, 216, 1), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
    }

    app .instruction .instruction-body-avl .instruction-status-link > a {
        color: steelblue;
    }

    app .instruction .instruction-body-navl {
        background-color: #FFEEEE;
    }

        app .instruction .instruction-body-navl .instruction-status {
            background: linear-gradient(to right, rgba(220, 20, 60, 1), rgba(255, 238, 238, 0), rgba(255, 238, 238, 0));
            color: white;
        }

        app .instruction .instruction-body-navl .instruction-status-link > a {
            color: darkslateblue;
        }

    app .instruction .instruction-body-cfrm {
        background-color: #FFF0D0;
    }

        app .instruction .instruction-body-cfrm .instruction-status {
            color: white;
            background: linear-gradient(to right, rgba(237, 158, 49, 1), rgba(255, 240, 224, 0), rgba(255, 240, 224, 0));
        }

        app .instruction .instruction-body-cfrm .instruction-status-link > a {
            color: darkolivegreen;
        }

    app .instruction .instruction-title-orderno {
        display: flex;
        justify-content: flex-start;
    }

    app .instruction .instruction-title-printed {
        display: flex;
        justify-content: flex-end;
    }

    app .instruction .instruction-body .date-border {
        border: solid 1px #5F728C;
        width: 160px;
        text-align: center;
    }

    app .instruction .instruction-body .date-title {
        background-color: #5F728C;
        color: white;
        font-weight: bold;
        padding: 5px 0;
    }

    app .instruction .instruction-body .date-value {
        color: black;
        padding: 5px 0;
        background-color: white;
    }

    app .instruction .instruction-body .date-distance {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 80px;
    }

        app .instruction .instruction-body .date-distance .date-distance-sub {
            text-align: center;
        }

    /* 製造指示 項目タイトル 装飾 */
    app .instruction .instruction-body .prop-title::before {
        content: '■';
        margin: 0 5px;
    }

    app .instruction .instruction-body-avl .prop-title::before {
        color: white;
    }

    app .instruction .instruction-body-navl .prop-title::before {
        color: crimson;
    }

    app .instruction .instruction-body-cfrm .prop-title::before {
        color: #ED9E31;
    }

    app .instruction .instruction-body .prop-title {
        font-weight: bold;
    }

    app .instruction .instruction-body-avl .prop-title {
        background: linear-gradient(to right, rgba(165,198,216, 1), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
    }

    app .instruction .instruction-body-navl .prop-title {
        background: linear-gradient(to right, rgba(250,160,180, 1), rgba(255, 238, 238, 0), rgba(255, 238, 238, 0), rgba(255, 238, 238, 0), rgba(255, 238, 238, 0));
    }

    app .instruction .instruction-body-cfrm .prop-title {
        background: linear-gradient(to right, rgba(247,210,120, 1), rgba(255, 240, 224, 0), rgba(255, 240, 224, 0), rgba(255, 240, 224, 0), rgba(255, 240, 224, 0));
    }

    app .instruction .instruction-body .prop-value {
        margin-left: 16px;
        padding: 10px;
    }

        app .instruction .instruction-body .prop-value fieldset {
            min-width: 300px;
            margin: unset;
            padding: 10px;
            border: solid 1px #888;
            background-color: white;
        }

        app .instruction .instruction-body .prop-value legend {
            display: unset;
            width: unset;
            max-width: unset;
            margin-bottom: unset;
            padding: unset;
            color: unset;
            font-size: unset;
            line-height: unset;
            white-space: unset;
        }

    app .instruction .instruction-body .inst-status-tag {
        width: 100px;
        height: 45px;
        border-radius: 3px;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 1rem;
    }

    app .instruction .instruction-body .inst-status-tag-navl {
        background-color: crimson;
        color: white;
        border: solid 1px crimson;
    }

    app .instruction .instruction-body .inst-status-tag-cfrm {
        background-color: #ED9E31;
        color: white;
        border: solid 1px #ED9E31;
    }

    app .instruction .instruction-body .inst-status-tag-avl {
        background-color: white;
        color: black;
        border: solid 1px #888;
    }

    app .instruction .instruction-body .item-table {
        border: solid 1px #5F728C;
        max-width: 980px;
        width: 100%;
    }

        app .instruction .instruction-body .item-table thead > tr > td {
            background-color: #5F728C;
            color: white;
            font-weight: bold;
            padding: 5px;
        }

        app .instruction .instruction-body .item-table tbody > tr > td {
            background-color: white;
            padding: 5px;
        }

        app .instruction .instruction-body .item-table tbody .item-quantity-cell {
            text-align: right;
            font-size: 1.4rem;
        }

        app .instruction .instruction-body .item-table tbody .item-quantity-cell {
            text-align: right;
        }

        app .instruction .instruction-body .item-table tbody .ignore-item {
            background-color: silver;
        }


.ant-pro-basicLayout-content {
    height: 200px;
    overflow: auto;
    margin: 0 !important;
}

.button-top {
    padding-top: 24px;
}

.btn-css {
    margin-top: 10px;
}
/*css checkbox custom*/
.ant-checkbox-inner {
    border: 1px solid #343A3F;
    width: 18px;
    min-width: 18px;
    height: 18px;
}

.ant-checkbox-input:focus + .ant-checkbox-inner, .ant-checkbox-wrapper:hover .ant-checkbox-inner, .ant-checkbox:hover .ant-checkbox-inner {
    border-color: #005DC2;
    border: 2px solid #343A3F;
}

.ant-checkbox-checked::after {
    border: 1px solid #1890ff;
}

.ant-checkbox-input:checked + .ant-checkbox-inner::after {
    border-color: #005DC2;
}

.ant-checkbox-input:checked + .ant-checkbox-inner {
    border-color: #005DC2;
    background-color: #fff;
    border: 2px solid #005DC2;
}

/* input custom*/
.ant-input {
    border: 0.5px solid #8D8D8D;
    height: 32px;
}
.ant-input-number {
    border: 0.5px solid #8D8D8D;
    height: 32px;
}
.ant-input-number:hover{
    border-color: #40a9ff;
}
.ant-input-number:focus, .ant-input-number:active{
    border-color: #40a9ff;
    box-shadow: 0 0 0 2px rgba(24, 144, 255, .2);
}
.ant-input-number:focus-within{
    border-color: #40a9ff;
}
.ant-input-affix-wrapper {
    height: 32px;
    border-color: #8D8D8D;
    padding: 0 0 0 10px
}
    .ant-input-affix-wrapper:focus-within {
        border-color: #40a9ff;
    }
.ant-input-affix-wrapper .ant-input {
    height: 30px;
}
.ant-input-affix-wrapper-disabled:hover {
    border-color: #8D8D8D !important;
    box-shadow: none !important;
}
.ant-input-affix-wrapper-disabled .ant-input[disabled], .ant-input[disabled] {
    color: black;
}
.ant-input-number-handler-wrap{
    display: none;
}
.invalid-input {
    border: 1px solid red !important;
}
.invalid-input:hover {
    border: 1px solid red !important;
}
/*error message custom*/
.validate-message-custom {
    font-size: 12px;
    font-weight: 500;
    color: #ff4d4f;
}
/*select custom*/
.ant-select-common {
    height: 30px;
}
.ant-select-common .ant-select-selector {
    height: 28px !important;
}
.btn-custom {
    width: 72px;
    height: 30px;
    border-radius: 3px;
    font-size: 13px;
    font-weight: 500;
    border: 0.5px solid;
    font-weight: 500;
    line-height: 1.2rem;
    letter-spacing: 0.014rem;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    border: none;
    border-radius: 3px;
    text-decoration: none;
    cursor: pointer;
}

.btn-custom:disabled {
    cursor: no-drop;
    opacity: 0.7;
}

.btn-custom.type-0 {
    border: 1px solid #E63131;
    background: #FFFFFF;
    color: #E63131;
}

.btn-custom.type-0:not(:disabled):hover {
    background: #efefef;
}

.btn-custom.type-1 {
    background: #4392BB;
    color: white;
}

.btn-custom.type-1:not(:disabled):hover {
    background: #0e6085;
}

.btn-custom.type-2 {
    background: #EB5757;
    color: white;
}

.btn-custom.type-2:not(:disabled):hover {
    background: #d73f3f;
}

app .ant-select {
    border: 1px solid #8D8D8D;
    border-radius: 2px;
}

    app .ant-select:hover {
        border-color: #40a9ff;
        border-right-width: 1px;
    }

.ant-select:not(.ant-select-customize-input) .ant-select-selector {
    border: 0px solid #d9d9d9
}

app .ant-form-item-label > label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before {
    display: none;
}

app .ant-form-item-label > label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::after {
    display: inline-block;
    margin-right: 4px;
    color: #ff4d4f;
    font-size: 14px;
    font-family: SimSun, sans-serif;
    line-height: 1;
    content: '*';
}

.ant-form label{
    font-size: 12px;
}

.ant-input-search > .ant-input-group > .ant-input-group-addon:last-child .ant-input-search-button {
    border: 1px solid #8D8D8D;
}

    .ant-input-search > .ant-input-group > .ant-input-group-addon:last-child .ant-input-search-button:hover {
        border-color: #40a9ff;
    }

/*::-webkit-scrollbar {
    width: 10px !important;
    height: 10px !important;
}
*/
.ant-select-custom .ant-select-selector {
    padding-top: 2px !important;
}

.pagination-custom {
    margin-top: auto;
    display: flex;
    justify-content: left;
    align-items: center;
    height: 52px;
    background-color: #FFFFFF;
    border: 0.5px solid #c7bbbb;
    padding: 0 6px;
}

.total-pagination {
    font-weight: 600;
    font-size: 13px;
    display: flex;
    justify-content: flex-start;
    flex: 1;
}

.pagination-number {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.ant-pagination-next, .ant-pagination-prev {
    display: none;
}

.pagination-custom img {
    width: 30px;
    height: 30px;
    cursor: pointer;
}

/*css common dialog header*/
.ant-modal-content{
    border-radius: 5px;
    max-height: 85vh;
    max-width: 85vw;
    overflow: hidden;
}
.ant-modal-header {
    padding: 0;
    margin: 0;
    height: 38px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
.ant-modal-body{
    padding: 0;
    max-height: calc(85vh - 38px);
}
.ant-modal-header .ant-modal-title {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
.dialog-header-container {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0 10px;
    height: 38px;
    background: #002247;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.dialog-header-container .title {
    font-weight: 500;
    font-size: 16px;
    line-height: 150%;
    letter-spacing: 0.014em;
    color: #fff;
    width: calc(100% - 24px);
}

.dialog-header-container .icon-close {
    width: 24px;
    height: 24px;
    cursor: pointer;
}

.dialog-header-container .icon-close:hover {
    opacity: 0.5;
}

.ant-form-item-explain-error {
    font-size: 12px;
}

app .icon-search:hover {
    opacity:0.5
}

select {
    font-size: 12px;
    height: 32px;
    border-radius: 2px;
    cursor: pointer;
}

select:not(:disabled):focus-visible,
select:not(:disabled):hover {
   outline: none;
   border-radius: 2px;
   border: 1px solid #40a9ff;
}

select:not(:disabled):focus {
   box-shadow: 0 0 5px rgba(0, 123, 255, 0.5);
}

select:disabled {
   background-color: #F5F5F5 !important;
   cursor: no-drop !important;
}

.select-common {
    border: unset;
    padding-left: 10px;
    width: 100%;
    max-width: 400px;
    border: 1px solid #8D8D8D;
    appearance: none;
    background-image: url("/images/icons/arrow_drop_down.png");
    background-repeat: no-repeat;
    background-position: right 0.7rem top 50%;
    background-size: 24px 24px;
}

.ant-input-affix-wrapper-status-error,
.ant-input-affix-wrapper-status-error:hover {
    border-color: #ff4d4f !important;
}
.input-decimal-custom {
    height: 32px;
    outline: none;
    border-radius: 2px;
    border: 0.5px solid #8D8D8D
}
.input-decimal-custom:focus,
.input-decimal-custom:focus-visible {
    border-color: #40a9ff;
    box-shadow: 0 0 0 2px rgba(24, 144, 255, .2);
    border-right-width: 1px;
    outline: 0
}
.input-decimal-custom:not(:disabled):hover {
    border-color: #40a9ff;
    border-right-width: 1px;
}
.input-decimal-custom:disabled {
    cursor: no-drop;
}
.invalid {
    border: 0.5px solid #ff4d4f !important;
}
.invalid:focus,
.invalid:focus-visible {
    box-shadow: none;
}
.validation-message {
    position: absolute;
    font-size: 12px;
    color: #ff4d4f;
    white-space: nowrap;
}
.ant-form-item-explain-success {
    display: none;
}
.ant-checkbox-disabled + span{
    color: black;
}
.ant-input[disabled],
.ant-input[disabled]:hover{
    border-color: #8D8D8D;
}
.tooltip-custom {
    position: fixed;
    background: rgba(0, 0, 0, 0.85);
    color: white;
    padding: 6px 8px;
    font-size: 14px;
    text-align: left;
    white-space: normal;
    word-wrap: break-word;
    z-index: 99999;
    display: none;
    width: max-content;
    max-width: 100%;
    border-radius: 2px;
    text-decoration: none;
    box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
}

    .tooltip-custom::after {
        content: "";
        position: absolute;
        top: 100%;
        left: 50%;
        transform: translateX(-50%);
        border-left: 6px solid transparent;
        border-right: 6px solid transparent;
        border-top: 6px solid rgba(0, 0, 0, 0.85);
    }

.cell-content {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
}
.cell-text {
    width: 100%;
    height: 100%;
    text-align: inherit;
    padding: 6px 0;
}
.text-ellipsis-tooltip {
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    width: 100%;
}

.ant-modal-root .ant-modal-wrap.custom-order-modal .ant-modal-content {
    height: 100vh !important;
    max-height: 100vh !important;
    width: 95vw !important;
    max-width: 95vw !important;
}

.ant-modal-root .ant-modal-wrap.material-partner-custom-modal .ant-modal-content {
    height: 95vh !important;
    max-height: 95vh !important;
}