nav, .navbar-text {
    font-weight: 500;
    line-height: 32px;
}

.calc_display {
    float: right;
}

.calc_display_operator > span:not(:last-child) {
    padding-right: 1rem;
}

.calc_display_operator > span > span:first-child {
    font-size: 80%;
    padding-right: .5rem;
    color: grey;
}

body {
    color: #23374C;
    font-size: 13px;
}

.form-group > .control-label {
    font-size: 14px;
}

body.nav-md #side_menu {
    height: 100%;
    overflow-x: hidden;
}

.main_container {
    background: #2A3F54;
}

@media(min-width:768px) {
    .navbar-collapse.collapse {
        display: none !important;
    }
}

.nav-sm .nav.side-menu li a i {
    font-size: 20px !important;
}
.nav-sm .nav.side-menu li a {
    padding: 12px 5px 6px 5px;
}
.nav.side-menu>li>a,
.nav.side-menu>li>ul.nav.child_menu>li>a {
    text-shadow: rgba(255, 255, 255, 0.7) 0 0 1px;
}
.menu_section>ul {
    margin-top: 5px;
}

.nav.side-menu>li>a {
    color: #333;
    font-size: 15px;
}

.nav.child_menu>li>a {
    color: #333;
    font-size: 15px;
}

.nav.child_menu>li>a:hover {
    color: white !important;
}

@media(max-width:770px) {
    .minimum-font {
        font-size: 10px;
    }
    table.minimum-font > tbody > tr > td {
        line-height: 14px !important;
    }
}

table.table:not(.horizontal-table) > tbody > tr > td {
    line-height: 20px;
    vertical-align: middle;
}

table.table:not(.horizontal-table) > tbody > tr > td > span {
    line-height: 20px;
}

table.table:not(.horizontal-table) th {
    text-align: center;
    vertical-align: middle;
}

.table>tbody>tr>td {
    padding: 2px 4px;
}
.table>tfoot>tr>td {
    padding: 2px 4px;
}

.flash_title {
    font-size: 16px;
}

ul.tree-ul, ul.tree-ul ul {
    margin: 0;
    padding: 0;
    list-style-type: none;

}

ul.tree-ul ul {
    position: relative;
    margin-left: 30px;
}

ul.tree-ul ul::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 0;
    border-left: 1px solid #bbb;
}

ul.tree-ul li {
    position: relative;
    margin: 0;
    padding: 0px 10px;
    text-decoration: none;
    font-size: 16px;
}

ul.tree-ul ul li::before {
    content: "";
    display: block;
    position: absolute;
    top: 14px;
    left: 0;
    width: 8px;
    height: 0;
    border-top: 1px solid #bbb;
}

ul.tree-ul ul li:last-child::before {
    top: 14px;
    bottom: 0;
    height: auto;
    background: RGBA(255, 255, 255, 1);
}

.goods_image_confirm {
    height: 150px;
}

.main_col {
    background: RGBA(255, 255, 255, 1);
}

.label-data {
    margin-right: 8px;
}

input[type="file"].form-control {
    border: none;
    padding: 0;
    height: auto;
    margin-bottom: .5rem;
}

.input-group.date {
    margin-bottom: 0;
}

.label-margin {
    margin-top: 20px;
}

.horizontal-table th {
    width: 25%;
    text-align: right;
}


.horizontal-table>tbody>tr>td {
    vertical-align: middle;
}

.address-scroll-box {
    height: 350px;
    width: 100%;
    overflow: auto;
}

.margin-column {
    margin-bottom: 10px;
}

.form-indent {
    padding-left: 20px;
}

.inline-block {
    display: inline-block;
    margin-right: 15px;
}

.warning {
    font-size: 40px;
    color: red;
}

.warning-color {
    color: red;
}

table.inquiry-list thead > tr > th.inquiry-subject {
    width: 40%;
}

table.inquiry-list thead > tr > th.inquiry-timestamp {
    width: 20%;
}

label.inquiry-error {
    display: none;
}

.popup-window {
    margin: 0;
    padding-top: 10px;
}

.popup-window > .row{
    margin: 0;
}

td > li {
    list-style-position: inside;
}

.narrow-text-width {
    min-width: 130px;
}

.narrow-text-date {
    min-width: 110px;
    max-width: 110px;
}

span.required {
    color: #E00;
    font-size: 80%;
    vertical-align: middle;
    padding: 0 0.25rem;
    font-weight: bold;
}

.pp-tooltips {
    font-size: 1.3rem;
    color: #00d39b;
    margin-left: .5rem;
}

.returned_color {
    color: red;
}

.input-group .form-control {
    z-index: unset;
}

h3, div {
    word-wrap: break-word;
}

.no-border {
    border: none;
}

.x_content .no-border {
    border-bottom: none;
    margin-bottom: 6px;
}

.short-text {
    width: 100px;
}

.middle-text {
    width: 200px;
}

.minimum-text {
    width: 70px;
}

.input-group-margin-less {
    margin: 0;
}

.delete-btn-position {
    text-align: right;
}

.pp_top_logo_image_confirm {
    margin: 20px 0px;
    max-width: 50%;
    -webkit-backface-visibility: hidden;
}

.pp_title_logo_image_confirm {
    max-width: 50%;
    margin: 10px 0px;
    -webkit-backface-visibility: hidden;
}

.pp_footer_logo_image_confirm {
    max-width: 14rem;
    vertical-align: text-bottom;
    -webkit-backface-visibility: hidden;
}

.icon-color {
    color: #337ab7;
}

a {
    color: #337ab7;
}

.nav-sm .container.body .col-md-3.left_col {
    width: 130px;
    z-index: 100;
}

.nav-sm .nav.side-menu li a {
    font-size: 16px;
}

.nav-sm .main_container .top_nav {
    margin-left: 130px;
}

.nav-sm .container.body .right_col {
    margin-left: 130px;
}

.nav-sm footer {
    margin-left: 130px;
}

.text-small {
    font-size: 12px;
}

.focused {
    background: #FFF0F0 !important;
}

tfoot tr {
    background: #e3f3ff;
}

.x_panel {
    padding: 10px 5px;
}

.x_title {
    border-bottom: 0;
    font-weight: 700;
}

.form-control {
    height: 26px;
}

.form-control-static {
    height: 26px;
    padding-top: 3px;
    padding-bottom: 0;
}

.form-group {
    /* TODO: 他のclass(x_content_borderみたいな)作ってそのclass内だったら線出るようにする */
    border-bottom: 1px solid #bbb;
    margin-bottom: 8px;
    padding-bottom: 4px;
}

.button-form {
    padding-bottom: 10px;
}

select.form-control {
    padding: 0 12px;
}

.form-horizontal .control-label {
    text-align: left;
    padding: 3px 0 0 2px;
}

.input-group-addon {
    font-size: 13px;
    padding: 3px 12px;
}

.btn {
    line-height: inherit;
    padding: 3px 12px;
}

.btn-sm {
    line-height: 1.5;
    padding: 3px 10px;
}

.form-horizontal .checkbox {
    padding-top: 3px;
}

@media(min-width:768px) {
    .form-two-line {
        height: 60px;
    }
}
@media(max-width:767px) {
    .form-two-line {
        height: 88px;
    }
}

.scrollable {
    overflow: auto;
}

.minus {
    color: #f00;
    font-weight: bold;
}

.sort_asc:after {
    font-family: 'Glyphicons Halflings';
    padding-left: 3px;
    content: "\e155"
}

.sort_desc:after {
    font-family: 'Glyphicons Halflings';
    padding-left: 3px;
    content: "\e156"
}

.together-shipment {
    color: #23d629;
    font-weight: bold;
}

.cancel-together-shipment {
    color: #f00;
    font-weight: bold;
}

.parent-goods {
    position: relative;
}

.breakdown-goods {
    position: absolute;
    height: 26px;
    width: 50px;
    top: 0;
    left: 50px;
    padding: 3px 7px;
    font-size: 13px;
}

.csv-box {
    border-top: 1px solid #bbb;
}

.no-margin {
    margin: 0;
}

.no-padding {
    padding: 0;
}

.padding-left-0 {
    padding-left: 0;
}

.padding-right-0 {
    padding-right: 0;
}


.narrow-margin {
    margin-top: 0px;
    margin-bottom: 3px;
}

.checkbox-padding {
    padding-right: 11px;
    padding-left: 3px;
}

.checkbox-padding > label.control-label {
    font-size: 90%;
    vertical-align: text-top;
}

.pointer {
    cursor: pointer;
}

.tr_stripe {
    background-color: #f5f5f5;
}

.basket-calc-present-count-button{
    background-color:#8ad;
    margin-bottom: 10px;
    margin-left: 10px;
}

.sub-title {
    font-size: 1.8em;
    font-weight: bold;
}

.gray {
    color: gray;
}

.natural-line-height {
    line-height: 15px;
}

hr {
    margin-top: 10px;
    margin-bottom: 10px;
    border-top: 1px solid #ccc;
}

.long-separate {
    margin-top: 40px;
    margin-bottom: 40px;
}

.nav-sm ul.nav.child_menu {
    width: 240px;
}
.text-xs-left {
    text-align: left;
}
.text-xs-center {
    text-align: center;
}
.text-xs-right {
    text-align: right;
}
@media (min-width: 768px) {
    .text-sm-left {
        text-align: left;
    }
    .text-sm-center {
        text-align: center;
    }
    .text-sm-right {
        text-align: right;
    }
}
@media (min-width: 992px) {
    .text-md-left {
        text-align: left;
    }
    .text-md-center {
        text-align: center;
    }
    .text-md-right {
        text-align: right;
    }
}
@media (min-width: 1200px) {
    .text-lg-left {
        text-align: left;
    }
    .text-lg-center {
        text-align: center;
    }
    .text-lg-right {
        text-align: right;
    }
}

.form-with-unit {
    align-items: center;
    display: flex; !important;
}

.form-with-unit > .unit {
    display: inline-block;
}

.together_shipment_select > div:not(:first-child) {
    border-top: 1px solid #ddd;
}

.together_shipment_select > div {
    padding-top: .65rem;
    padding-bottom: .4rem;
    display: flex;
    align-items: center;
}

.together-shipment-address-area span {
    line-height: 20px;
}

#together_shipment_table tr:first-child > td {
    border: 0;
}

#together_shipment_table tr:last-child > td {
    padding-bottom: 0;
}

#together_shipment_table tr:not(:first-child) > td {
    padding-top: .5rem;
    border-top: 1px solid #bbb;
}

#together_shipment_table tr > td {
    padding-bottom: .5rem;
}

#together_shipment_table .control-label {
    padding: 0;
}

.modal-header.modal-header-with-title {
    display: flex;
    justify-content: center;
    background-color: #F7F7F7;
    border-radius: 6px 6px 0 0;
}

.modal-header.modal-header-with-title > button{
    position: absolute;
    right: 1.25rem;
}

.view_column_checkbox_list > div,
.extraction_checkbox_list > div {
    display: inline-block;
    margin-right: 1rem;
    font-size: 90%;
}

.view_column_checkbox_list > div > label.control-label,
.extraction_checkbox_list > div > label.control-label {
    padding-left: 3px!important;
}

.view_column_checkbox_list > div > div,
.view_column_checkbox_list > div > label.control-label,
.extraction_checkbox_list > div > div,
.extraction_checkbox_list > div > label.control-label {
    vertical-align: middle;
}

.toggle_title_wrap {
    margin-top: 1.25rem;
    margin-bottom: 0.5rem;
}

.toggle_title,
.toggle_title_right {
    display: flex;
    align-items: center;
    font-size: 18px;
}
.toggle_title_right {
    justify-content: space-between;
}
a .toggle_title::before,
a .toggle_title_right::after {
    display: inline-block;
    margin-right: .5em;
    font-family: FontAwesome, monospace;
    align-self: center;
}
a[aria-expanded='false'] .toggle_title::before,
a[aria-expanded='false'] .toggle_title_right::after {
    content: '\f13a';
}

a[aria-expanded='true'] .toggle_title::before,
a[aria-expanded='true'] .toggle_title_right::after {
    content: '\f139';
}

#extraction_mail_send_target_table th,
#extraction_mail_send_target_table td {
    white-space: nowrap;
}

.ml-2 {
    margin-left: .5rem;
}

.member-news-image {
    width: 100%;
    margin-bottom: 1rem;
}

@media (min-width: 768px) {
    .member-news-image {
        width: 75%;
        margin-bottom: 1rem;
    }
}

.agency-contract-unprocessed-message a {
    color: #ff0000;
}

.agency-contract-unprocessed-message a:focus,
.agency-contract-unprocessed-message a:hover {
    color: #d00000;
}

.agency-contract-process-cds {
    background-color: #F39C1260;
    border-color: #F39C1270;
}

.is_shortage {
    background-color: #F39C1260!important;
}

.alert-dark {
    color:#1b1e21;
    background-color:#d6d8d9;
    border-color:#c6c8ca;
}

.alert-secondary {
    color:#383d41;
    background-color:#e2e3e5;
    border-color:#d6d8db;
}

.alert-light {
    color:#818182;
    background-color:#fefefe;
    border-color:#fdfdfe;
}

tr.odd {
    background-color: #f9f9f9
}

.basket_submit_button {
    margin-bottom: 1.5rem;
}

.breakdown-count {
    margin-left: .5rem;
}

.breakdown-goods-name {
    text-indent: 1.5rem;
}

.member-badge,
.system-badge {
    font-weight: normal;
    border-radius: .65rem;
    font-size: 1.15rem;
}
.system-badge {
    line-height: 20px;
}
/* bootstrap v4.3.1 のbadge */
.badge-primary {
    color:#fff;
    background-color:#007bff;
}
a.badge-primary:focus,
a.badge-primary:hover {
    color:#fff;
    background-color:#0062cc;
}
a.badge-primary.focus,
a.badge-primary:focus {
    outline:0;
    box-shadow:0 0 0 .2rem rgba(0,123,255,.5);
}
.badge-secondary {
    color:#fff;
    background-color:#6c757d;
}
a.badge-secondary:focus,
a.badge-secondary:hover {
    color:#fff;
    background-color:#545b62;
}
a.badge-secondary.focus,
a.badge-secondary:focus {
    outline:0;
    box-shadow:0 0 0 .2rem rgba(108,117,125,.5);
}
.badge-success {
    color:#fff;
    background-color:#28a745;
}
a.badge-success:focus,
a.badge-success:hover {
    color:#fff;
    background-color:#1e7e34;
}
a.badge-success.focus,
a.badge-success:focus {
    outline:0;
    box-shadow:0 0 0 .2rem rgba(40,167,69,.5);
}
.badge-info {
    color:#fff;
    background-color:#17a2b8;
}
a.badge-info:focus,
a.badge-info:hover {
    color:#fff;
    background-color:#117a8b;
}
a.badge-info.focus,
a.badge-info:focus {
    outline:0;
    box-shadow:0 0 0 .2rem rgba(23,162,184,.5);
}
.badge-warning {
    color:#212529;
    background-color:#ffc107;
}
a.badge-warning:focus,
a.badge-warning:hover {
    color:#212529;
    background-color:#d39e00;
}
a.badge-warning.focus,
a.badge-warning:focus {
    outline:0;
    box-shadow:0 0 0 .2rem rgba(255,193,7,.5);
}
.badge-danger {
    color:#fff;
    background-color:#dc3545;
}
a.badge-danger:focus,
a.badge-danger:hover {
    color:#fff;
    background-color:#bd2130;
}
a.badge-danger.focus,
a.badge-danger:focus {
    outline:0;
    box-shadow:0 0 0 .2rem rgba(220,53,69,.5);
}
.badge-light {
    color:#212529;
    background-color:#f8f9fa;
}
a.badge-light:focus,
a.badge-light:hover {
    color:#212529;
    background-color:#dae0e5;
}
a.badge-light.focus,
a.badge-light:focus {
    outline:0;
    box-shadow:0 0 0 .2rem rgba(248,249,250,.5);
}
.badge-dark {
    color:#fff;
    background-color:#343a40;
}
a.badge-dark:focus,
a.badge-dark:hover {
    color:#fff;
    background-color:#1d2124;
}
a.badge-dark.focus,
a.badge-dark:focus {
    outline:0;
    box-shadow:0 0 0 .2rem rgba(52,58,64,.5);
}
/* bootstrap v4.3.1 のbadgeの拡張 */
.badge-outline-danger {
    color:#dc3545;
    background-color:#fff;
    border: 1px solid #dc3545;
}
a.badge-outline-danger:focus,
a.badge-outline-danger:hover {
    color:#fff;
    background-color:#dc3545;
    border-color:#dc3545;
}
a.badge-outline-danger.focus,
a.badge-outline-danger:focus {
    outline:0;
    box-shadow:0 0 0 .2rem rgba(220,53,69,.5);
}
.badge-outline-warning {
    color:#212529;
    background-color:#fff;
    border: 1px solid #ffc107;
}
a.badge-outline-warning:focus,
a.badge-outline-warning:hover {
    color:#212529;
    background-color:#ffc107;
    border-color:#ffc107;
}
a.badge-outline-warning.focus,
a.badge-outline-warning:focus {
    outline:0;
    box-shadow: 0 0 0 .2rem rgba(255, 193, 7, .5)
}

.btn-success.disabled.focus,
.btn-success.disabled:focus,
.btn-success.disabled:hover,
.btn-success[disabled].focus,
.btn-success[disabled]:focus,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success.focus,
fieldset[disabled] .btn-success:focus,
fieldset[disabled] .btn-success:hover {
    background: #26B99A;
    border: 1px solid #169F85;
}

/* bootstrap v4.3.1 のbtn */
.btn-outline-primary{
    color:#007bff;
    border-color:#007bff;
}
.btn-outline-primary:hover{
    color:#fff;
    background-color:#007bff;
    border-color:#007bff;
}
.btn-outline-primary.focus,
.btn-outline-primary:focus{
    box-shadow:0 0 0 .2rem rgba(0,123,255,.5)
}
.btn-outline-primary.disabled,
.btn-outline-primary:disabled{
    color:#007bff;
    background-color:transparent;
}
.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show>.btn-outline-primary.dropdown-toggle{
    color:#fff;
    background-color:#007bff;
    border-color:#007bff;
}
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-primary.dropdown-toggle:focus{
    box-shadow:0 0 0 .2rem rgba(0,123,255,.5);
}
.btn-outline-secondary{
    color:#6c757d;
    border-color:#6c757d;
}
.btn-outline-secondary:hover{
    color:#fff;
    background-color:#6c757d;
    border-color:#6c757d;
}
.btn-outline-secondary.focus,
.btn-outline-secondary:focus{
    box-shadow:0 0 0 .2rem rgba(108,117,125,.5);
}
.btn-outline-secondary.disabled,
.btn-outline-secondary:disabled{
    color:#6c757d;
    background-color:transparent;
}
.btn-outline-secondary:not(:disabled):not(.disabled).active,
.btn-outline-secondary:not(:disabled):not(.disabled):active,
.show>.btn-outline-secondary.dropdown-toggle{
    color:#fff;
    background-color:#6c757d;
    border-color:#6c757d;
}
.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-secondary.dropdown-toggle:focus{
    box-shadow:0 0 0 .2rem rgba(108,117,125,.5);
}
.btn-outline-success{
    color:#28a745;
    border-color:#28a745;
}
.btn-outline-success:hover{
    color:#fff;
    background-color:#28a745;
    border-color:#28a745;
}
.btn-outline-success.focus,
.btn-outline-success:focus{
    box-shadow:0 0 0 .2rem rgba(40,167,69,.5);
}
.btn-outline-success.disabled,
.btn-outline-success:disabled{
    color:#28a745;
    background-color:transparent;
}
.btn-outline-success:not(:disabled):not(.disabled).active,
.btn-outline-success:not(:disabled):not(.disabled):active,
.show>.btn-outline-success.dropdown-toggle{
    color:#fff;
    background-color:#28a745;
    border-color:#28a745;
}
.btn-outline-success:not(:disabled):not(.disabled).active:focus,
.btn-outline-success:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-success.dropdown-toggle:focus{
    box-shadow:0 0 0 .2rem rgba(40,167,69,.5);
}
.btn-outline-info{
    color:#17a2b8;
    border-color:#17a2b8;
}
.btn-outline-info:hover{
    color:#fff;
    background-color:#17a2b8;
    border-color:#17a2b8;
}
.btn-outline-info.focus,
.btn-outline-info:focus{
    box-shadow:0 0 0 .2rem rgba(23,162,184,.5);
}
.btn-outline-info.disabled,
.btn-outline-info:disabled{
    color:#17a2b8;
    background-color:transparent;
}
.btn-outline-info:not(:disabled):not(.disabled).active,
.btn-outline-info:not(:disabled):not(.disabled):active,
.show>.btn-outline-info.dropdown-toggle{
    color:#fff;
    background-color:#17a2b8;
    border-color:#17a2b8;
}
.btn-outline-info:not(:disabled):not(.disabled).active:focus,
.btn-outline-info:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-info.dropdown-toggle:focus{
    box-shadow:0 0 0 .2rem rgba(23,162,184,.5);
}
.btn-outline-warning{
    color:#ffc107;
    border-color:#ffc107;
}
.btn-outline-warning:hover{
    color:#212529;
    background-color:#ffc107;
    border-color:#ffc107;
}
.btn-outline-warning.focus,
.btn-outline-warning:focus{
    box-shadow:0 0 0 .2rem rgba(255,193,7,.5);
}
.btn-outline-warning.disabled,
.btn-outline-warning:disabled{
    color:#ffc107;
    background-color:transparent;
}
.btn-outline-warning:not(:disabled):not(.disabled).active,
.btn-outline-warning:not(:disabled):not(.disabled):active,
.show>.btn-outline-warning.dropdown-toggle{
    color:#212529;
    background-color:#ffc107;
    border-color:#ffc107;
}
.btn-outline-warning:not(:disabled):not(.disabled).active:focus,
.btn-outline-warning:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-warning.dropdown-toggle:focus{
    box-shadow:0 0 0 .2rem rgba(255,193,7,.5);
}
.btn-outline-danger{
    color:#dc3545;
    border-color:#dc3545;
}
.btn-outline-danger:hover{
    color:#fff;
    background-color:#dc3545;
    border-color:#dc3545;
}
.btn-outline-danger.focus,
.btn-outline-danger:focus{
    box-shadow:0 0 0 .2rem rgba(220,53,69,.5);
}
.btn-outline-danger.disabled,
.btn-outline-danger:disabled{
    color:#dc3545;
    background-color:transparent;
}
.btn-outline-danger:not(:disabled):not(.disabled).active,
.btn-outline-danger:not(:disabled):not(.disabled):active,
.show>.btn-outline-danger.dropdown-toggle{
    color:#fff;
    background-color:#dc3545;
    border-color:#dc3545;
}
.btn-outline-danger:not(:disabled):not(.disabled).active:focus,
.btn-outline-danger:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-danger.dropdown-toggle:focus{
    box-shadow:0 0 0 .2rem rgba(220,53,69,.5);
}
.btn-outline-light{
    color:#f8f9fa;
    border-color:#f8f9fa;
}
.btn-outline-light:hover{
    color:#212529;
    background-color:#f8f9fa;
    border-color:#f8f9fa;
}
.btn-outline-light.focus,
.btn-outline-light:focus{
    box-shadow:0 0 0 .2rem rgba(248,249,250,.5);
}
.btn-outline-light.disabled,
.btn-outline-light:disabled{
    color:#f8f9fa;
    background-color:transparent;
}
.btn-outline-light:not(:disabled):not(.disabled).active,
.btn-outline-light:not(:disabled):not(.disabled):active,
.show>.btn-outline-light.dropdown-toggle{
    color:#212529;background-color:#f8f9fa;
    border-color:#f8f9fa;
}
.btn-outline-light:not(:disabled):not(.disabled).active:focus,
.btn-outline-light:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-light.dropdown-toggle:focus{
    box-shadow:0 0 0 .2rem rgba(248,249,250,.5);
}
.btn-outline-dark{
    color:#343a40;
    border-color:#343a40;
}
.btn-outline-dark:hover{
    color:#fff;
    background-color:#343a40;
    border-color:#343a40;
}
.btn-outline-dark.focus,
.btn-outline-dark:focus{
    box-shadow:0 0 0 .2rem rgba(52,58,64,.5);
}
.btn-outline-dark.disabled,
.btn-outline-dark:disabled{
    color:#343a40;
    background-color:transparent;
}
.btn-outline-dark:not(:disabled):not(.disabled).active,
.btn-outline-dark:not(:disabled):not(.disabled):active,
.show>.btn-outline-dark.dropdown-toggle{
    color:#fff;
    background-color:#343a40;
    border-color:#343a40;
}
.btn-outline-dark:not(:disabled):not(.disabled).active:focus,
.btn-outline-dark:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-dark.dropdown-toggle:focus{
    box-shadow:0 0 0 .2rem rgba(52,58,64,.5);
}
.label-for-radio-header {
    margin-right: 10px;
    font-weight: normal;
}
.file-upload-description {
    font-size: 1.1rem;
    color: red;
    margin-bottom: .5rem;
}
.file-info {
    font-size: 1.1rem;
    color: grey;
    margin-bottom: .5rem;
}
#total-file-size {
    font-size: 1.2rem;
    margin-bottom: .5rem;
}
.file-size-over {
    color: red;
}
#member_login_button {
    margin-bottom: 0;
}
#member_login_area {
    padding: 1rem;
}
.discount-percent:after {
    content: ' : ';
    padding: 0 .5rem;
}
.dataTables_scroll table {
    margin: unset!important;
}
.dataTables_scroll table th,
.dataTables_scroll table td {
    white-space: nowrap;
}
.dataTables_scroll div.dataTables_scrollFoot > div.dataTables_scrollFootInner {
    box-sizing: content-box;
}
/* ------------------------- トップお知らせ -------------------------*/
.operator-top-message-area {
    margin-top: 1.5rem;
}
.operator-top-message-area > .x_panel {
    padding: 1rem 2rem .75rem;
}
.operator-top-message-area > .x_panel > .x_title {
    padding-top: .25rem;
    padding-bottom: .25rem;
    margin-bottom: 2rem;
    border-bottom: 1px dashed #a4c2d0;
}
.operator-top-message-area > .x_panel > .x_title > h4 {
    font-weight: bold;
    color: #31708f;
}
.operator-top-message-area ul.operator-top-message-list {
    padding-inline-start: 20px!important;
}
.operator-top-message-area ul.operator-top-message-list li {
    font-size: 14px;
    line-height: 1.75;
}
.operator-top-message-area ul.operator-top-message-list li:not(:first-child) {
    padding-top: 1rem;
}
.operator-top-message-area ul.operator-top-message-list li div.badge {
    margin-left: .5rem;
    vertical-align: text-bottom;
    padding: 0 .75rem;
    line-height: 1.5;
}
.operator-top-message-area ul.operator-top-message-list li i {
    margin-right: .5rem;
    width: 1.75rem;
    text-align: center;
    font-size: 15px;
}
/* normalメッセージ */
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-normal > a,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-normal > div {
    color: #343a40;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-normal > a div.badge {
    color: #fff;
    background-color: #343a40;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-normal > a:focus,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-normal > a:hover {
    color: #1d2124;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-normal > a:focus div.badge,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-normal > a:hover div.badge {
    color: #fff;
    background-color: #1d2124;
}
/* infoメッセージ */
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-info > a,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-info > div {
    color: #17a2b8;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-info > a div.badge {
    color: #fff;
    background-color: #17a2b8;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-info > a:focus,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-info > a:hover {
    color: #117a8b;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-info > a:focus div.badge,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-info > a:hover div.badge {
    color: #fff;
    background-color: #117a8b;
}
/* warningメッセージ */
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-warning > a,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-warning > div {
    color: #ffb400;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-warning > a div.badge {
    color: #fff;
    background-color: #ffb400;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-warning > a:focus,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-warning > a:hover {
    color: #d39e00;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-warning > a:focus div.badge,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-warning > a:hover div.badge {
    color: #212529;
    background-color: #d39e00;
}
/* dangerメッセージ */
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-danger > a,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-danger > div {
    color: #dc3545;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-danger > a div.badge {
    color: #fff;
    background-color: #dc3545;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-danger > a:focus,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-danger > a:hover {
    color: #bd2130;
}
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-danger > a:focus div.badge,
.operator-top-message-area ul.operator-top-message-list li.operator-top-message-danger > a:hover div.badge {
    color: #fff;
    background-color: #bd2130;
}
/* -------------------------- 頒布会関連 --------------------------*/
/* 頒布会商品設定(一覧) */
#table_data_sd_setting th,
#table_data_sd_setting td {
    font-size: 90%;
    white-space: nowrap;
}
#table_data_sd_setting td:not(:nth-child(3)) {
    text-align: center;
}
#table_data_sd_setting th:nth-child(1) {
    width: 5%!important;
}
#table_data_sd_setting th:nth-child(2) {
    width: 5%!important;
}
#table_data_sd_setting th:nth-child(3) {
    width: 24%!important;
}
#table_data_sd_setting th:nth-child(4) {
    width: 8%!important;
}
#table_data_sd_setting th:nth-child(5) {
    width: 8%!important;
}
#table_data_sd_setting th:nth-child(6) {
    width: 20%!important;
}
#table_data_sd_setting th:nth-child(7) {
    width: 10%!important;
}
#table_data_sd_setting th:nth-child(8) {
    width: 10%!important;
}
#table_data_sd_setting th:nth-child(9) {
    width: 10%!important;
}
@media screen and (max-width: 767px) {
    #table_data_sd_setting {
        width: 200vw!important;
    }
}
@media screen and (max-width: 640px) {
    #table_data_sd_setting_wrapper .dataTables_length,
    #table_data_sd_setting_wrapper .dataTables_filter {
        float: left;
        text-align: left;
        width: 100%;
    }
}
#table_data_sd_setting_wrapper .dataTables_length .form-control,
#table_data_sd_setting_wrapper .dataTables_filter .form-control {
    display: inline-block!important;
    width: auto!important;
    vertical-align: middle!important;
}
#table_data_sd_setting_wrapper .dataTables_info {
    width: 100%;
}
#table_data_sd_setting_wrapper .table-responsive {
    padding: 0;
    margin: 0;
}
#table_data_sd_setting_wrapper > div.row:nth-child(2) {
    margin: 0;
}
/* 頒布会商品設定(変更・確認) */
.dataTables_length,
.dataTables_filter {
    float: left;
    text-align: left;
    width: 100%;
}
.dataTables_length .form-control,
.dataTables_filter .form-control {
    display: inline-block!important;
    width: auto!important;
    vertical-align: middle!important;
}
.dataTables_info {
    width: 100%;
}
#table_data_sequential_distribution td:nth-child(3),
#table_data_sd_autoship_goods td:nth-child(3) {
    text-align: center;
}
#table_data_sequential_distribution th:nth-child(1),
#table_data_sd_autoship_goods th:nth-child(1) {
    width: 25%!important;
}
#table_data_sequential_distribution th:nth-child(2),
#table_data_sd_autoship_goods th:nth-child(2) {
    width: 60%!important;
}
#table_data_sequential_distribution th:nth-child(3),
#table_data_sd_autoship_goods th:nth-child(3) {
    width: 15%!important;
}
#table_data_goods_preset th:nth-child(1) {
    width: 10%!important;
}
#table_data_goods_preset th:nth-child(2) {
    width: 40%!important;
}
#table_data_goods_preset th:nth-child(3) {
    width: 10%!important;
}
#table_data_goods_preset th:nth-child(4) {
    width: 10%!important;
}
#table_data_goods_preset th:nth-child(5) {
    width: 10%!important;
}
#table_data_goods_preset th:nth-child(6) {
    width: 15%!important;
}
#table_data_goods_preset th:nth-child(7) {
    width: 5%!important;
}
#table_data_goods_preset td:nth-child(4) {
    text-align: right;
}
#table_data_goods_preset td:last-child,
#table_data_sd_autoship_goods_preset td:last-child {
    text-align: center;
}
#table_data_sd_autoship_goods_preset th:nth-child(1) {
    width: 55%!important;
}
#table_data_sd_autoship_goods_preset th:nth-child(2) {
    width: 10%!important;
}
#table_data_sd_autoship_goods_preset th:nth-child(3) {
    width: 20%!important;
}
#table_data_sd_autoship_goods_preset th:nth-child(4) {
    width: 5%!important;
}
#table_data_sd_autoship_goods_preset td:nth-child(2) {
    text-align: right;
}
.sd-title:before {
    content: '\f0ad';
}
.sd-header-title:before {
    content: '\f013';
}
.sd-title:before,
.sd-header-title:before {
    font-family: FontAwesome, monospace;
    margin: 0 .75rem 0 .25rem;
}
.sd-title,
.sd-header-title {
    font-size: 2rem;
    margin-bottom: 1rem;
}
.sd-sub-title:before {
    content: '\f0c8';
    font-family: FontAwesome, monospace;
    margin: 0 .75rem 0 .25rem;
}
.sd-sub-title {
    margin-bottom: 1rem;
}
/* 顧客頒布会情報 */
.client-sd-table th,
.client-sd-setting-table th {
    width: 25%!important;
}
.client-sd-goods-table th:nth-child(2) {
    width: 50%!important;
}
.client-sd-goods-table th:not(:nth-child(2)) {
    width: 25%!important;
}
.client-sd-next-table th:nth-child(1) {
    width: 20%!important;
}
.client-sd-next-table th:not(:nth-child(1)) {
    width: 40%!important;
}
.client-sd-setting-table th {
    width: 33%!important;
}
.client-sd-section-table th:nth-child(1) {
    width: 5%!important;
}
.client-sd-section-table th:nth-child(2) {
    width: 10%!important;
}
.client-sd-section-table th:nth-child(3) {
    width: 10%!important;
}
.client-sd-section-table th:nth-child(4) {
    width: 40%!important;
}
.client-sd-section-table th:nth-child(5) {
    width: 10%!important;
}
.client-sd-section-table th:nth-child(6) {
    width: 5%!important;
}
.client-sd-section-table th:nth-child(7) {
    width: 10%!important;
}
.client-sd-section-table th:nth-child(8) {
    width: 10%!important;
}
.client-sd-title:before {
    content: '\f0c8';
    font-family: FontAwesome, monospace;
    margin: 0 .25rem;
    font-size: 85%;
}
.client-sd-title {
    font-size: 18px;
    margin: 1rem 0 .5rem;
}
.client-sd-list-panel table tbody td {
    padding: .35rem .75rem;
}
/*頒布会設定確認*/
#table-sd-section-data th,
#table-sd-section-data td {
    white-space: nowrap;
}
#table-sd-section-data th:nth-child(1) {
    width: 5%!important;
}
#table-sd-section-data th:nth-child(2) {
    width: 10%!important;
}
#table-sd-section-data th:nth-child(3) {
    width: 10%!important;
}
#table-sd-section-data th:nth-child(4) {
    width: 40%!important;
}
#table-sd-section-data th:nth-child(5) {
    width: 5%!important;
}
#table-sd-section-data th:nth-child(6) {
    width: 10%!important;
}
#table-sd-section-data th:nth-child(7) {
    width: 10%!important;
}
#table-sd-section-data th:nth-child(8) {
    width: 10%!important;
}
#table-sd-section-data tbody tr td {
    vertical-align: text-top;
    padding: 2px 8px;
}
tr.sd-breakdown-goods td:not(:last-child) {
    text-indent: 1em;
}
/*頒布会検索画面*/
#extraction_sequential_distribution_list_table th{
    white-space: nowrap;
}
/* --------------------------------------------------------------*/
.empty-to-none:empty {
    display: none !important;
}
.alert-remarks {
    color: #383d41;
    background-color: #fff5cd;
    border-color: #fdecb7;
    padding: 10px 15px;
}
.alert-danger-light {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1;
}
/* 商品情報 */
.goods-condition-radio-table th {
    white-space: nowrap;
    padding-right: 1rem;
    vertical-align: middle;
}
.goods-condition-radio-table th,
.goods-condition-radio-table td {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
.goods-condition-radio-table label {
    margin-bottom: 0;
}
@media screen and (max-width: 767px) {
    .goods-condition-radio-table th,
    .goods-condition-radio-table td {
        display: block;
    }
}
#data_goods_index,
#data_goods_breakdown_index {
    margin: unset;
}
#data_goods_index_wrapper,
#data_goods_breakdown_index_wrapper {
    font-size: 95%;
}
#data_goods_index_wrapper table > thead > tr > th,
#data_goods_index_wrapper table > tbody > tr > td,
#data_goods_breakdown_index_wrapper table > thead > tr > th,
#data_goods_breakdown_index_wrapper table > tbody > tr > td {
    white-space: nowrap;
}
#extraction_basket_table_wrapper table > thead > tr > th,
#extraction_basket_table_wrapper table > tbody > tr > td,
#extraction_untreated_basket_table_wrapper table > thead > tr > th,
#extraction_untreated_basket_table_wrapper table > tbody > tr > td {
    white-space: nowrap;
}
#extraction_basket_table > tbody > tr > td,
#extraction_untreated_basket_table > tbody > tr > td {
    vertical-align: top;
    padding: .5rem .75rem;
}
#extraction_basket_table > tbody > tr > td i,
#extraction_untreated_basket_table > tbody > tr > td i {
    margin: 0;
}
.paginate-show-count {
    margin-bottom: 1rem;
    font-weight: bold;
}
.paginate-show-count > span:first-child + span:before {
    content: '\FF1A';
    padding: 0 .5rem 0 .25rem;
}
.paginate-show-count > span:not(:first-child) + span:before {
    content: '\FF5E';
    padding: 0 .25rem;
}
.extraction-title {
    margin-top: 1.25rem;
    margin-bottom: 0.25rem;
}
.extraction-title > div {
    display: flex;
    align-items: center;
    font-size: 18px;
}
.extraction-title > div:before {
    content: '\f0c8';
    font-family: FontAwesome, monospace;
    margin-right: .5rem;
    font-size: 85%;
    vertical-align: middle;
}
/* メンバー 紹介コード発行 */
.table_goods_introduction th,
.table_goods_introduction td:not(:nth-child(2)) {
    white-space: nowrap;
}
.table_goods_introduction th,
.table_goods_introduction td {
    font-size: 90%;
}
.open-introduction-url {
    vertical-align: center;
    margin-bottom: 1.5rem;
}
.open-introduction-url span {
    vertical-align: sub;
}
.introduction-url-area > div {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    border-bottom: 1px solid #00000020;
}
.introduction-url-area > div:not(:last-child) {
    margin-bottom: .5rem;
}
.introduction-url-area > div > span {
    padding: 0 0 .25rem;
}
.introduction-url-area > div > span > span.badge {
    line-height: normal;
    font-weight: normal;
}
.introduction-url-area > div > span > span:last-child {
    padding-left: 1rem;
    font-size: 11px;
}
.introduction-goods-qr-area {
    text-align: center;
    text-align: -webkit-center;
    width: 140px;
}
.introduction-client-qr-img,
.introduction-goods-qr-img {
    border: 1px solid #e0e0e0;
    margin-bottom: 1rem;
    display: block;
}
.introduction-client-qr-img {
    margin-top: .5rem;
}
.introduction-goods-qr-img {
    width: 140px;
}
.copy-open-url-btn {
    margin: 0 0 0 1rem;
}
.open-product-link,
.goods-qr-download-btn {
    margin: 0;
}
.open-product-link i {
    margin-left: .5rem;
}
.open_cart_product_link > .fa:before,
.goods-qr-download-btn.fa:before {
    padding-right: 5px;
}
.copy-btn {
    position: relative;
    display: inline-block;
    cursor: pointer;
}
.copy-btn::after {
    font-size: .7em;
    border-radius: 3px;
    padding: 3px 5px;
    background: #333;
    color: #ffc;
    position: absolute;
    top: -2rem;
    left: 2rem;
    line-height: normal;
    transition: .4s;
    opacity: 0;
}
@media (hover: hover) {
    .copy-btn:not(.copied):hover::after {
        content: 'copy';
        opacity: 1;
    }
}
.copy-btn.copied::after {
    content: 'copied!';
    opacity: 1;
}
@media screen and (max-width: 767px) {
    #table_goods_introduction {
        width: 200vw!important;
    }
}
#table_goods_introduction_wrapper .dataTables_length,
#table_goods_introduction_wrapper .dataTables_filter,
#table_goods_introduction_wrapper .dataTables_info {
    padding: 5px 14px;
}
@media screen and (max-width: 767px) {
    #table_goods_introduction_wrapper .dataTables_length {
        text-align: left!important;
    }
    #table_goods_introduction_wrapper .dataTables_filter {
        text-align: right!important;
    }
}
#table_goods_introduction_wrapper .dataTables_length .form-control,
#table_goods_introduction_wrapper .dataTables_filter .form-control {
    display: inline-block!important;
    vertical-align: middle!important;
}
#table_goods_introduction_wrapper .dataTables_filter label {
    width: 100%;
}
#table_goods_introduction_wrapper .dataTables_filter .form-control {
    width: 80%!important;
}
#table_goods_introduction_wrapper .dataTables_info {
    width: 100%;
}
#table_goods_introduction_wrapper .table-responsive {
    padding: 0;
    margin: 0;
}
#table_goods_introduction_wrapper > div.row:nth-child(2) {
    margin: 0;
}

div.basket-payment-info {
    margin-top: .5rem;
    color: #858484;
}
div.basket-payment-info > div {
    line-height: normal;
    display: inline-block;
}
div.basket-payment-info > div:first-child {
    border: 1px solid #b4b4b4;
    border-radius: .25rem;
    padding: .1rem .5rem;
    margin-right: .5rem;
    width: fit-content;
    font-size: 80%;
}
div.basket-payment-info > div:last-child {
    vertical-align: middle;
    font-size: 90%;
}
.is-null-checkbox-label {
    padding-left: 0!important;
    margin-top: 0.25rem;
    font-size: 85%;
    font-weight: bold!important;
}
.is-null-checkbox-label > div:first-child {
    margin-right: .5rem;
}
.unite_client_cd div:not(:last-child) {
    margin-bottom: .75rem;
}
table.basket-detail-table tbody tr.warning-basket-detail td:not([rowspan]) {
    color: #a972c6 !important;
}
table.basket-detail-table tbody tr.shortage-basket-detail td:not([rowspan]) {
    color: #ff3f2f !important;
}
table.basket-detail-table tbody tr.unshipped-basket-detail td:not([rowspan]) {
    color: #2f8dff !important;
}
table.basket-detail-table tbody tr.shipment-target-basket-detail td:not([rowspan]) {
    font-weight: bold!important;
}
div.sample-wrap {
    display: flex;
    align-items: center;
    margin-bottom: .25rem;
}
div.sample-wrap > div.sample-box {
    width: 12px;
    position: relative;
    border-radius: 0;
    display: inline-block;
}
div.sample-wrap > div.sample-unshipped {
    border: 2px solid #2f8dff;
}
div.sample-wrap > div.sample-shortage {
    border: 2px solid #ff3f2f;
}
div.sample-wrap > div.sample-unshipped-and-shortage {
    border: 2px solid #a972c6;
}
div.sample-wrap > div.sample-box:before {
    content: "";
    display: block;
    padding-top: 100%;
}
div.sample-wrap > div.sample-description {
    display: inline-block;
    line-height: inherit;
    margin-left: .1rem;
    margin-right: 1rem;
    font-weight: bold;
    font-size: 95%;
}
.backlog-status-sample-wrap {
    margin-top: .25rem;
    place-content: flex-start;
}
@media (min-width: 1200px) {
    .backlog-status-sample-wrap {
        margin-top: 0;
        place-content: flex-end;
    }
}
div.extraction-form > div {
    padding: 0 2rem .75rem;
    margin-left: -10px;
    margin-right: -10px;
}
div.extraction-form > div.extraction-form-content.extraction-form-content-first {
    border-top: 1px dashed #bfbfbf;
    margin-top: 1rem;
}
div.extraction-form > div.extraction-form-content {
    border-bottom: 1px dashed #bfbfbf;
}
@media (min-width:1200px) {
    .form-border-right-col-lg {
        border-right: 1px solid #ccc;
    }
}
@media (min-width: 992px) {
    .form-border-right-col-md {
        border-right: 1px solid #ccc;
    }
}
div.sample-wrap > div.sample-description:before {
    content: ':';
    padding: 0 .5rem;
}
.together-shipment-warn {
    color: #fd790a;
}
.together-shipment-info {
    color: #0a94fd;
}
.together-shipment-warn:before {
    content: '\f071';
}
.together-shipment-info:before {
    content: '\f05a';
}
.together-shipment-warn:before,
.together-shipment-info:before {
    font-family: FontAwesome, monospace;
    font-size: 15px;
    line-height: normal;
    vertical-align: -6%;
}
.select2-container {
    width: 100%!important;
}
.select2-search__field {
    height: 24px!important;
    line-height: 22px;
}
span.select2-container,
span.select2-container span {
    line-height: 22px;
}
#extraction-count,
#extraction-filtered-info {
    display: inline;
}
#extraction-count {
    padding: 0 .4rem;
}
#rate_table td {
    padding: .5rem;
}

/* overlay */
#loading-overlay {
    position: fixed;
    top: 0;
    z-index: 10000;
    width: 100%;
    height:100%;
    display: none;
    background: rgba(0,0,0,0.6);
}
.cv-spinner {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.spinner {
    width: 40px;
    height: 40px;
    border: 4px #ddd solid;
    border-top: 4px #2e93e6 solid;
    border-radius: 50%;
    animation: sp-anime 0.8s infinite linear;
}
@keyframes sp-anime {
    100% {
        transform: rotate(360deg);
    }
}
#extraction_autoship_table td {
    vertical-align: top;
}
.discount-client-rate-edit-top-btn-area {
    border-bottom: 1px dashed #ccc;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    display: flex;
    justify-content: space-between;
}
.extraction-child-table {
    font-size: 12px;
    margin-bottom: 0;
}
.extraction-child-table > thead > tr > th,
.extraction-child-table > tbody > tr > td {
    border: 1px solid #ddd!important;
    white-space: nowrap;
    padding: 5px 10px!important;
}
.extraction-child-table > thead > tr > th {
    background-color: #9698a8!important;
    color: #fff!important;
    font-weight: normal!important;
}
.extraction-child-table > tbody > tr > td {
    vertical-align: top!important;
    line-height: 1.42857143!important;
}
.extraction-description {
    color: #4293b5;
    font-size: 87%;
    font-weight: normal;
    margin: 0.25rem 0;
}
.checkbox-controller {
    display: inline-block;
    margin-left: 1.5rem;
}
.checkbox-controller > a {
    padding: 0.4rem 0.75rem;
    border-radius: 0.6rem;
    margin-right: .75rem;
    font-size: 11px;
}
.checkbox-controller > a.checkbox-controller_check-btn {
    border: 1px solid #6aa3d4;
}
.checkbox-controller > a.checkbox-controller_check-btn.active {
    background-color: #6daade;
    color: #fff;
}
.checkbox-controller > a.checkbox-controller_uncheck-btn {
    border: 1px solid #e6e6e6;
    background-color: #f8f8f8;
    color: #5e5e5e;
}
.checkbox-controller > a.checkbox-controller_check-btn:focus,
.checkbox-controller > a.checkbox-controller_check-btn:hover {
    border: 1px solid #476d8f;
}
.checkbox-controller > a.checkbox-controller_uncheck-btn:focus,
.checkbox-controller > a.checkbox-controller_uncheck-btn:hover {
    background-color: #e6e6e6;
}
.extraction_shipment_request_table_wrap {
    max-height: 90vh;
    overflow-y: auto;
}
.extraction_shipment_request_table > thead > tr > th,
.extraction_shipment_request_table > tbody > tr > td {
    white-space: nowrap!important;
}
.extraction_shipment_request_table > tbody > tr > th,
.extraction_shipment_request_table > tbody > tr > td {
    padding: .5rem .75rem!important;
}
.extraction_shipment_request_table > tbody > tr > td {
    vertical-align: top!important;
}
.extraction_shipment_request_table > tbody > tr > td i {
    margin: 0!important;
}
.extraction_shipment_request_table tbody > tr > th {
    background: rgba(52,73,94,.94);
    color: #ECF0F1;
}
.extraction_shipment_request_table > tbody > tr > th::before,
.extraction_shipment_request_table > thead > tr > th:not(:last-child)::before {
    content: '';
    position: absolute;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    top: -1px;
    left: -1px;
    border: 1px solid #ddd;
}
.extraction_shipment_request_table > thead > tr > th:last-child::before {
    content: '';
    position: absolute;
    width: calc(100% + 1px);
    height: calc(100% + 2px);
    top: -1px;
    left: 0;
    border: 1px solid #ddd;
}
.extraction_shipment_request_table > thead > tr > th {
    /* 縦スクロール時に固定する */
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    /* tbody内のセルより手前に表示する */
    z-index: 1;
    background: rgba(52,73,94,.94);
    color: #ECF0F1;
}
.extraction_shipment_request_table > tbody > tr > th:first-child,
.extraction_shipment_request_table > tbody > tr > th:nth-child(2) {
    /* 横スクロール時に固定する */
    position: -webkit-sticky;
    position: sticky;
    z-index: 2;
}
.extraction_shipment_request_table > thead > tr > th:first-child,
.extraction_shipment_request_table > tbody > tr > th:first-child {
    left: 0;
    width: 80px;
    min-width: 80px;
}
.extraction_shipment_request_table > thead > tr > th:nth-child(2),
.extraction_shipment_request_table > tbody > tr > th:nth-child(2) {
    left: 80px;
}
.extraction_shipment_request_table > thead > tr > th:first-child,
.extraction_shipment_request_table > thead > tr > th:nth-child(2) {
    z-index: 3;
}
.collapse-shipment-request-table th.checkbox-wrap {
    position: relative;
}
.collapse-shipment-request-table th.checkbox-wrap > label {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    cursor: pointer;
}
.collapse-shipment-request-table th.checkbox-wrap > label > div {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}
.total-count,
.checked-count {
    font-size: 17px;
    font-weight: bold;
}
.checked-count {
    color: #058cff;
}
.total-count:before,
.total-count:after,
.checked-count:after {
    color: #929292;
    font-weight: normal;
    font-size: 13px;
    padding: 0 0.5rem
}
.total-count:before {
    content: '\5168'; /* 全 */
}
.total-count:after {
    content: '\4EF6\4E2D'; /* 件中 */
}
.checked-count:after {
    content: '\4EF6\3092\9078\629E\4E2D'; /* 件を選択中 */
}
.heading-shipment-request-table .header-total-count {
    vertical-align: text-top;
    line-height: normal;
    margin-left: .75rem;
    padding: 3px 8px;
}
.weekday-box > span  {
    line-height: 20px;
}
.weekday-box > span:nth-of-type(1) {
    vertical-align: middle;
}
.weekday-box > span:nth-of-type(2) {
    padding-left: .35rem;
}
#extraction_basket_table_wrapper,
#extraction_untreated_basket_table_wrapper,
.extraction_shipment_request_table {
    font-family: "Noto Sans JP";
}
.extraction-child-table td,
.extraction-child-table th {
    line-height: inherit!important;
}
#extraction_basket_table_wrapper th,
#extraction_untreated_basket_table_wrapper th,
.extraction_shipment_request_table th {
    font-weight: normal;
}
.form-group.extraction-sub-title {
    border-bottom: none;
    padding-bottom: 0;
    color: #337ab7;
}
.form-group.extraction-sub-title > label {
    display: flex;
    align-items: center;
    font-weight: normal;
    margin-bottom: 0!important;
}
.form-group.extraction-sub-title > label:after {
    content: "";
    flex-grow: 1;
    height: 1px;
    display: block;
}
.form-group.extraction-sub-title > label:after {
    margin-left: .4em;
    border-top: 1px dotted #bfbfbf;
}
.x_title.client-form-title h3::before {
    font-family: FontAwesome, monospace;
    content: '\f013';
    padding-right: .5rem;
}
.x_title.client-form-title {
    display: flex;
    justify-content: space-between;
}
.x_title.client-form-title > div {
    display: flex;
    align-items: center;
}
.x_title.client-form-title > div button {
    margin: 0 1rem 0 0;
}
/* disable時に見づらいため、元の画像に戻して、filterをかけて調整する */
.icheckbox_flat-green.checked.disabled {
    background-position: -22px 0!important;
    filter: grayscale(50%) brightness(120%);
}
.icheckbox_flat-green.disabled {
    background-position: 0 0!important;
    filter: grayscale(100%) brightness(105%);
}
#client_purchase_permit_group_area {
    margin-top: 1rem;
    padding-left: 0;
    max-height: 80vh;
    overflow-y: auto;
}
#client_purchase_permit_group_area table > thead > tr > th:not(:last-child)::before {
    content: '';
    position: absolute;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    top: -1px;
    left: -1px;
    border: 1px solid #ddd;
}
#client_purchase_permit_group_area table > thead > tr > th:last-child::before {
    content: '';
    position: absolute;
    width: calc(100% + 1px);
    height: calc(100% + 2px);
    top: -1px;
    left: 0;
    border: 1px solid #ddd;
}
#client_purchase_permit_group_area table > thead > tr > th {
    /* 縦スクロール時に固定する */
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    /* tbody内のセルより手前に表示する */
    z-index: 1;
    background: rgba(52,73,94,.94);
    color: #ECF0F1;
}
.spoof_button {
    margin-bottom: 10px!important;
}
.custom-x-panel {
    background-color: #3491aa;
    padding: .5rem 0 0;
    margin-bottom: 2rem;
}
.custom-x-panel .x_title {
    margin-bottom: 0;
    padding: 0 1.25rem;
}
.custom-x-panel .x_title h4 {
    font-weight: bold;
    color: #FFF;
}
.custom-x-panel .x_title h4 em.fa {
    padding-right: .75rem;
}
.custom-x-panel .x_content {
    background-color: #FFF;
    margin-top: 0;
    padding-top: 1rem;
}
.member-intro-description {
    margin: .5rem 0;
    border-bottom: 1px dashed #ccc;
    padding-bottom: 1rem;
    color: #168192;
}
.ex-info > div.ex-info_cd {
    font-size: 95%;
    color: #5d616b;
    padding-bottom: 2px;
}
a .ex-link-info > div.ex-link-info_cd {
    font-size: 95%;
    color: #337ab7;
    padding-bottom: 2px;
}
a:hover .ex-link-info > div.ex-link-info_cd {
    color: #23527c;
}
.m-0 {
    margin: 0!important
}
.m-1 {
    margin: .25rem!important
}
.m-2 {
    margin: .5rem!important
}
.m-3 {
    margin: 1rem!important
}
.m-4 {
    margin: 1.5rem!important
}
.m-5 {
    margin: 3rem!important
}
.m-auto {
    margin: auto!important
}
.mt-0 {
    margin-top: 0!important
}
.mt-1 {
    margin-top: .25rem!important
}
.mt-2 {
    margin-top: .5rem!important
}
.mt-3 {
    margin-top: 1rem!important
}
.mt-4 {
    margin-top: 1.5rem!important
}
.mt-5 {
    margin-top: 3rem!important
}
.mt-auto {
    margin-top: auto!important
}
.mb-0 {
    margin-bottom: 0!important
}
.mb-1 {
    margin-bottom: .25rem!important
}
.mb-2 {
    margin-bottom: .5rem!important
}
.mb-3 {
    margin-bottom: 1rem!important
}
.mb-4 {
    margin-bottom: 1.5rem!important
}
.mb-5 {
    margin-bottom: 3rem!important
}
.mb-auto {
    margin-bottom: auto!important
}
.ml-0 {
    margin-left: 0!important
}
.ml-1 {
    margin-left: .25rem!important
}
.ml-2 {
    margin-left: .5rem!important
}
.ml-3 {
    margin-left: 1rem!important
}
.ml-4 {
    margin-left: 1.5rem!important
}
.ml-5 {
    margin-left: 3rem!important
}
.ml-auto {
    margin-left: auto!important
}
.mr-0 {
    margin-right: 0!important
}
.mr-1 {
    margin-right: .25rem!important
}
.mr-2 {
    margin-right: .5rem!important
}
.mr-3 {
    margin-right: 1rem!important
}
.mr-4 {
    margin-right: 1.5rem!important
}
.mr-5 {
    margin-right: 3rem!important
}
.mr-auto {
    margin-right: auto!important
}
.mx-0 {
    margin-right: 0!important;
    margin-left: 0!important;
}
.mx-1 {
    margin-right: .25rem!important;
    margin-left: .25rem!important;
}
.mx-2 {
    margin-right: .5rem!important;
    margin-left: .5rem!important;
}
.mx-3 {
    margin-right: 1rem!important;
    margin-left: 1rem!important;
}
.mx-4 {
    margin-right: 1.5rem!important;
    margin-left: 1.5rem!important;
}
.mx-5 {
    margin-right: 3rem!important;
    margin-left: 3rem!important;
}
.mx-auto {
    margin-right: auto!important;
    margin-left: auto!important;
}
.my-0 {
    margin-top: 0!important;
    margin-bottom: 0!important;
}
.my-1 {
    margin-top: .25rem!important;
    margin-bottom: .25rem!important;
}
.my-2 {
    margin-top: .5rem!important;
    margin-bottom: .5rem!important;
}
.my-3 {
    margin-top: 1rem!important;
    margin-bottom: 1rem!important;
}
.my-4 {
    margin-top: 1.5rem!important;
    margin-bottom: 1.5rem!important;
}
.my-5 {
    margin-top: 3rem!important;
    margin-bottom: 3rem!important;
}
.my-auto {
    margin-top: auto!important;
    margin-bottom: auto!important;
}

.p-0 {
    padding: 0 !important
}
.pt-0, .py-0 {
    padding-top: 0 !important
}
.pr-0, .px-0 {
    padding-right: 0 !important
}
.pb-0, .py-0 {
    padding-bottom: 0 !important
}
.pl-0, .px-0 {
    padding-left: 0 !important
}
.p-1 {
    padding: .25rem !important
}
.pt-1, .py-1 {
    padding-top: .25rem !important
}
.pr-1, .px-1 {
    padding-right: .25rem !important
}
.pb-1, .py-1 {
    padding-bottom: .25rem !important
}
.pl-1, .px-1 {
    padding-left: .25rem !important
}
.p-2 {
    padding: .5rem !important
}
.pt-2, .py-2 {
    padding-top: .5rem !important
}
.pr-2, .px-2 {
    padding-right: .5rem !important
}
.pb-2, .py-2 {
    padding-bottom: .5rem !important
}
.pl-2, .px-2 {
    padding-left: .5rem !important
}
.p-3 {
    padding: 1rem !important
}
.pt-3, .py-3 {
    padding-top: 1rem !important
}
.pr-3, .px-3 {
    padding-right: 1rem !important
}
.pb-3, .py-3 {
    padding-bottom: 1rem !important
}
.pl-3, .px-3 {
    padding-left: 1rem !important
}
.p-4 {
    padding: 1.5rem !important
}
.pt-4, .py-4 {
    padding-top: 1.5rem !important
}
.pr-4, .px-4 {
    padding-right: 1.5rem !important
}
.pb-4, .py-4 {
    padding-bottom: 1.5rem !important
}
.pl-4, .px-4 {
    padding-left: 1.5rem !important
}
.p-5 {
    padding: 3rem !important
}
.pt-5, .py-5 {
    padding-top: 3rem !important
}
.pr-5, .px-5 {
    padding-right: 3rem !important
}
.pb-5, .py-5 {
    padding-bottom: 3rem !important
}
.pl-5, .px-5 {
    padding-left: 3rem !important
}

.affiliate_cd_available {
    margin-top: .5rem;
}
.affiliate_cd_available:empty {
    display: none;
}
.coupon-goods-candidate-area,
.coupon-goods-select-area {
    padding-bottom: 1rem;
}
.coupon-goods-candidate-box,
.coupon-goods-select-box {
    border: 1px solid #bbb;
    border-radius: 5px;
    height: 100%;
    font-size: 92%;
}
.coupon-goods-candidate-box {
    padding: 10px 10px 0;
}
.coupon-goods-select-box {
    padding: 20px 10px 0;
}
@media (min-width: 1200px) {
    .coupon-goods-candidate-area.col-lg-6 > .coupon-goods-candidate-box {
        margin-right: 0;
    }
    .coupon-goods-select-area.col-lg-6 > .coupon-goods-select-box {
        padding-top: 85px;
        margin-left: 0;
    }
}
.coupon-goods-candidate-radio {
    height: 32px;
    border-bottom: 1px solid #bbb;
    margin-bottom: 7px;
}
.row-eq-height {
    display: flex;
    flex-wrap: wrap;
}
.coupon-goods-table {
    border-collapse: separate;
}
.coupon-goods-table thead th {
    white-space: nowrap;
}
.coupon-goods-table thead tr th {
    padding: 10px 10px;
}
.coupon-goods-table tbody tr td {
    padding: 8px 10px;
}
.coupon-goods-table-td_delete {
    text-align: center;
}
.coupon-goods-table-td_delete i {
    margin: 0!important;
}
.coupon-goods-table-th_delete {
    width: 70px;
}
.coupon-goods-table-th_goodsCd {
    width: 120px;
}
.coupon-goods-table-th_goodsCount {
    width: 120px;
}
.coupon_goods_add_button {
    margin: 0!important;
}
.coupon_goods_add_button::before {
    font-family: FontAwesome, monospace;
    content: '\f055';
    padding-right: 6px;
}
/* x_panel拡張 */
.x_panel.custom_x_panel {
    background-color: #3491aa;
    padding: 0;
    margin-bottom: 1rem;
    border: none;
}
.x_panel.custom_x_panel .x_title {
    margin-bottom: 0;
    padding: 0 1.25rem;
}
.x_panel.custom_x_panel .x_title h4 {
    font-weight: bold;
    color: #FFF;
    line-height: inherit;
}
.x_panel.custom_x_panel .x_title h4 em.fa {
    padding-right: .75rem;
}
.x_panel.custom_x_panel .x_content {
    background-color: #FFF;
    margin-top: 0;
    padding-top: 1rem;
    border: 1px solid #E6E9ED;
}
span.control-label-description {
    color: #007bff;
    font-size: 80%;
    vertical-align: middle;
    padding: 0 0.25rem 0 0.5rem;
    font-weight: bold;
}
/* 複数のformを括るタイトルごとの説明 */
.form-index-description-info,
.form-index-description-warning,
.form-index-description-danger {
    margin-bottom: 1rem;
    font-weight: bold;
}
.form-index-description-info {
    color: #007bff;
}
.form-index-description-warning {
    color: #ffc107;
}
.form-index-description-danger {
    color: #dc3545;
}
.custom-tag-remarks {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}
.csv-import-detail-message {
    border: 1px solid #afafaf;
    padding: 2px 6px;
    margin: 4px;
    border-radius: 3px;
}
.like-table-header {
    background: rgba(52,73,94,.94)!important;
    color: #ECF0F1;
    font-weight: bold;
}
table.csv-import-result-overview-table {
    margin-bottom: 1rem;
    white-space: nowrap;
    margin-bottom: 0;
}
table.csv-import-result-overview-table tr th {
    width: 120px!important;
    min-width: 120px!important;
    max-width: 120px!important;
}
table.csv-import-result-overview-table tr td {
    width: 100px!important;
    min-width: 100px!important;
    max-width: 100px!important;
}
table.csv-import-result-overview-table tr td {
    padding: 6px 10px;
}
table.csv-import-result-overview-table {
    width: 300px;
    max-width: 600px;
}
.csv-import-detail-table-title {
    font-weight: bold!important;
    margin-bottom: 1.5rem;
}
.csv-import-detail-table-title.csv-import-detail-table-title_ng {
    color: #ff4d00;
}
.csv-import-detail-table-title.csv-import-detail-table-title_warn {
    color: #c9a800;
}
.csv-import-detail-table-title .fa {
    font-weight: normal;
    padding-left: 5px;
}
.csv_import_description {
    color: #337ab7;
    background-color: #e5f3ff;
    border: 3px double #c2d2db;
    font-weight: bold;
    font-size: 14px;
    padding: 10px 15px;
    margin-bottom: 5px;
    border-radius: 0.5rem!important;
}
.csv_import_detail_description {
    color: #337ab7;
    background-color: #e5f3ff;
    border: 1px solid #c2d2db;
    font-weight: bold;
    padding: 5px 10px;
    margin-bottom: 1.5rem;
    border-radius: 0.5rem!important;
}
.csv_import_detail_description::before {
    content: '\f05a';
    font-family: FontAwesome, monospace;
    font-weight: normal;
    padding-right: 3px;
}

/* ------------------------------- サービス申込一覧（client_service_application/list） ------------------------------- */

.service-application-list-title {
    padding: .75rem 1.5rem;
    margin: 1rem 0 0;
    font-weight: 600;
    font-size: 20px;
    background-color: #fff;
}

.service-application-list-title.service-application-list-title_continue {
    color: #249d4b;
}

.service-application-list-title.service-application-list-title_cancel {
    color: #ca4d4d;
    margin-top: 4rem;
}

.client-service-application-panel {
    padding: 10px;
    background: rgb(102 127 152);
    position: relative;
    margin: 2.5rem 0;
    box-shadow: 0 0 5px rgb(0 0 0 / 25%);
    border: none;
}

.client-service-application-panel:before {
    content: '';
    position: absolute;
    border-top: 1px solid #ccc;
    width: 100%;
    top: -2.5rem;
    left: 0;
}

.service-application-list-title + .client-service-application-panel:before {
    display: none;
}

.client-service-application-panel-header {
    padding: calc(1.15rem - 10px - 1px) 1.5rem 1.15rem;
    font-size: 22px;
    font-weight: 600;
    line-height: normal;
    color: #fff;
}

.client-service-application-panel table tbody td {
    padding: .5rem .75rem;
}

.client-service-application-btn-area {
    padding-top: 1.5rem;
    padding-bottom: calc(1.5rem - 10px);
}

.client-service-application-btn {
    width: 150px;
    margin: 0 1rem;
}

.service-application-undeletable-reason {
    color: rgb(255 255 255 / 90%);
}

.service-application-target-none-message {
    font-size: 14px;
    color: gray;
    margin-left: 0.5rem;
}

.service-application-info-block {
    padding: 0.5rem 0.75rem 1.5rem;
    border-top: 1px dashed #ccc;
    background: #fff;
}

table.client-service-application-info-table {
    font-size: 95%;
}

table.client-service-application-info-table tbody th,
table.client-service-application-info-table tbody td {
    vertical-align: text-top !important;
}

table.client-service-application-info-table tbody th {
    background: rgba(52, 73, 94, .94);
    color: #ECF0F1;
}

table.client-service-application-info-table tbody th {
    text-align: left !important;
    width: 20%;
}

table.client-service-application-info-table tbody td {
    width: 30%;
}

table.client-service-application-info-table tbody td[colspan="3"] {
    width: 80%;
}

@media screen and (min-width: 1400px) {
    table.client-service-application-info-table tbody th {
        width: 12%;
    }

    table.client-service-application-info-table tbody td {
        width: calc(100% / 2 - 12%);
    }

    table.client-service-application-info-table tbody td[colspan="3"] {
        width: calc(100% - 12%);
    }
}

@media screen and (min-width: 992px) and (max-width: 1399px) {
    table.client-service-application-info-table tbody th {
        width: 15%;
    }

    table.client-service-application-info-table tbody td {
        width: calc(100% / 2 - 15%);
    }

    table.client-service-application-info-table tbody td[colspan="3"] {
        width: calc(100% - 15%);
    }
}

@media screen and (max-width: 767px) {
    table.client-service-application-info-table tbody th,
    table.client-service-application-info-table tbody td {
        display: flex;
        width: 100% !important;
        border: none;
    }
    table.client-service-application-info-table tbody td {
        background-color: #fff!important;
    }
}

table.client-service-application-next-time-table {
    font-size: 90%;
}

table.client-service-application-next-time-table tbody th {
    background: rgb(52 73 94 / 74%);
    color: #ECF0F1;
}


table.client-service-application-next-time-table tbody tr th,
table.client-service-application-next-time-table tbody tr td,
table.client-service-application-component-table tbody tr td {
    height: 35px;
}

table.client-service-application-next-time-table thead th:nth-of-type(1) {
    width: 60px;
}

table.client-service-application-next-time-table thead th:nth-of-type(2) {
    width: 100px;
}

table.client-service-application-component-table {
    font-size: 90%;
}

table.client-service-application-component-table tbody tr {
    background: #fff!important;
}

table.client-service-application-component-table tbody tr.current-selected td {
    background: rgba(248, 255, 126, 0.4);
    color: #3e3e3e;
}

table.client-service-application-component-table tbody tr.selected td {
    border-color: rgb(38 185 154);
}

table.client-service-application-component-table tbody tr:has(+ tr.selected) td {
    border-bottom-color: rgb(38 185 154);
}

table.client-service-application-component-table tbody tr:has(input[type='checkbox']:disabled) {
    background-color: rgba(0, 0, 0, 0.15)!important;
}


table.client-service-application-component-table thead th:nth-of-type(1) {
    width: 40px;
}

table.client-service-application-component-table thead th:nth-of-type(2) {
    width: 100px;
}

tr.select-component {
    cursor: pointer;
}

.icheckbox_flat-green.disabled,
tr.select-component:has(.icheckbox_flat-green.disabled) {
    cursor: not-allowed;
}

.change_component_btn_area {
    margin-top: 1rem;
}

.change_component_btn,
.disabled_change_component_btn {
    margin: 0;
}

.change_component_btn_disabled_reason {
    padding-left: 1rem;
    color: #41adfd;
}

.change_component_btn_disabled_reason:before {
    padding-right: .35rem;
}

.change_component_description {
    color: #697081;
    margin-top: 1rem;
}

/* ------------------------------- service_recommend_pattern ------------------------------- */
table.service-goods-pattern-setting-table tbody tr td {
    height: 35px;
}

table.service-goods-pattern-setting-table tbody tr:has(input[type='checkbox']:disabled) {
    background-color: rgba(0, 0, 0, 0.15)!important;
}

table.service-goods-pattern-setting-table tbody tr {
    background: #fff!important;
}

table.service-goods-pattern-setting-table tbody tr.current-selected td {
    background: rgba(248, 255, 126, 0.4);
    color: #3e3e3e;
}

table.service-goods-pattern-setting-table tbody tr.selected td {
    border-color: rgb(38 185 154);
}

table.service-goods-pattern-setting-table tbody tr:has(+ tr.selected) td {
    border-bottom-color: rgb(38 185 154);
}

table.service-goods-pattern-setting-table thead th:nth-of-type(1) {
    width: 40px;
}

table.service-goods-pattern-setting-table thead th:nth-of-type(2) {
    width: 100px;
}

.pattern_setting_btn_area {
    margin-top: 1rem;
}

.pattern_setting_btn,
.disabled_pattern_setting_btn {
    margin: 0;
}

.pattern_setting_btn_disabled_reason {
    padding-left: 1rem;
    color: #41adfd;
}

.pattern_setting_btn_disabled_reason:before {
    padding-right: .35rem;
}

.pattern_setting_description {
    color: #4293b5;
    font-size: 110%;
    font-weight: normal;
    margin: 0.25rem 0;
}

#service-recommend-pattern-setting-table-wrap {
    overflow-y: auto;
    margin-top: 2rem;
    border-top: 1px dashed #ccc;
    padding-top: 2rem;
}

#service-recommend-pattern-setting-table > thead > tr > th,
#service-recommend-pattern-setting-table > tbody > tr > th,
#service-recommend-pattern-setting-table > tbody > tr > td {
    white-space: nowrap !important;
}

#service-recommend-pattern-setting-table > tbody > tr > th,
#service-recommend-pattern-setting-table > tbody > tr > td {
    padding: .5rem .75rem !important;
}

#service-recommend-pattern-setting-table > tbody > tr > td {
    vertical-align: top !important;
}

#service-recommend-pattern-setting-table > tbody > tr > td i {
    margin: 0 !important;
}

#service-recommend-pattern-setting-table > tbody > tr > th {
    font-weight: normal;
    background-color: rgba(89, 104, 120, .94);
    color: #ECF0F1;
}

#service-recommend-pattern-setting-table > tbody > tr > th:nth-child(-n+2) {
    text-align: left;
}

#service-recommend-pattern-setting-table > tbody > tr > th:before,
#service-recommend-pattern-setting-table > thead > tr > th:not(:last-child):before {
    content: '';
    position: absolute;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    top: -1px;
    left: -1px;
    border: 1px solid #ddd;
}

#service-recommend-pattern-setting-table > thead > tr > th:last-child:before {
    content: '';
    position: absolute;
    width: calc(100% + 1px);
    height: calc(100% + 2px);
    top: -1px;
    left: 0;
    border: 1px solid #ddd;
}

#service-recommend-pattern-setting-table > thead > tr > th {
    /* 縦スクロール時に固定する */
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    /* tbody内のセルより手前に表示する */
    z-index: 1;
    background: rgba(52, 73, 94, .94);
    color: #ECF0F1;
}

#service-recommend-pattern-setting-table > tbody > tr > th:nth-child(-n+4) {
    /* 横スクロール時に固定する */
    position: -webkit-sticky;
    position: sticky;
    z-index: 2;
}

#service-recommend-pattern-setting-table > thead > tr > th:nth-child(1),
#service-recommend-pattern-setting-table > tbody > tr > th:nth-child(1) {
    left: 0;
    min-width: 100px;
    width: 100px;
    max-width: 100px;
}

#service-recommend-pattern-setting-table > thead > tr > th:nth-child(2),
#service-recommend-pattern-setting-table > tbody > tr > th:nth-child(2) {
    left: 100px;
    min-width: 400px;
    width: 400px;
    max-width: 400px;
    overflow: hidden;
    text-overflow: ellipsis;
}

#service-recommend-pattern-setting-table > thead > tr > th:nth-child(3),
#service-recommend-pattern-setting-table > tbody > tr > th:nth-child(3),
#service-recommend-pattern-setting-table > thead > tr > th:nth-child(4),
#service-recommend-pattern-setting-table > tbody > tr > th:nth-child(4) {
    min-width: 90px;
    width: 90px;
    max-width: 90px;
}

#service-recommend-pattern-setting-table > thead > tr > th:nth-child(3),
#service-recommend-pattern-setting-table > tbody > tr > th:nth-child(3) {
    left: 500px;
}

#service-recommend-pattern-setting-table > thead > tr > th:nth-child(4),
#service-recommend-pattern-setting-table > tbody > tr > th:nth-child(4) {
    left: 590px;
}

#service-recommend-pattern-setting-table > thead > tr > th:nth-child(1),
#service-recommend-pattern-setting-table > thead > tr > th:nth-child(2),
#service-recommend-pattern-setting-table > thead > tr > th:nth-child(3),
#service-recommend-pattern-setting-table > thead > tr > th:nth-child(4) {
    z-index: 3;
}

#service-recommend-pattern-setting-table > thead > tr > th:nth-child(n+5),
#service-recommend-pattern-setting-table > tbody > tr > td {
    min-width: 120px;
    width: 120px;
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ------------------------------- js/sortable_table.jsで使用 ------------------------------- */
table.sortable-table > tbody > tr > td .up-btn.disabled,
table.sortable-table > tbody > tr > td .down-btn.disabled {
    background-color: #c6c6c6 !important;
    border-color: #c6c6c6 !important;
    cursor: not-allowed;
}

table.sortable-table > tbody > tr.sort-changed > td {
    background-color: rgba(238, 255, 0, 0.15);
}

table.sortable-table > tbody > tr > td .up-btn,
table.sortable-table > tbody > tr > td .down-btn {
    margin-top: 3px;
    margin-bottom: 3px;
}

table.sortable-table > tbody > tr > td > .up-btn {
    margin-right: 5px;
    margin-left: 0;
}

table.sortable-table > tbody > tr > td .down-btn {
    margin-right: 0;
    margin-left: 5px;
}

table > tbody > tr.divider-tr > td {
    border-bottom: 4px solid rgb(52 73 94 / 34%) !important;
}

/* ------------------------------- サービス設定 ------------------------------- */
.service-information-panel .form-control-static {
    padding-bottom: 3px;
    height: unset;
    min-height: 26px;
}

.divider-back-button-col {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px dashed #ccc;
}

table.service-list-table {
    white-space: nowrap;
    font-size: 90%;
}

table.service-setting-table {
    white-space: nowrap;
    font-size: 90%;
    margin-bottom: 15px;
}

table.service-setting-table > tbody > tr > td {
    padding: 6px 8px;
}

.service-goods-candidate-area,
.service-goods-select-area {
    padding-bottom: 1rem;
}

.service-goods-candidate-box,
.service-goods-select-box {
    border: 1px solid #bbb;
    border-radius: 5px;
    height: 100%;
    font-size: 92%;
}

.service-goods-candidate-box {
    padding: 10px 10px 0;
}

.service-goods-select-box {
    padding: 20px 10px 0;
}

@media (min-width: 1200px) {
    .service-goods-candidate-area.col-lg-6 > .service-goods-candidate-box {
        margin-right: 0;
    }

    .service-goods-select-area.col-lg-6 > .service-goods-select-box {
        padding-top: 85px;
        margin-left: 0;
    }
}

@media (max-width: 1199px) {
    .service-goods-select-area.col-lg-6 > .service-goods-select-box {
        padding-top: 70px;
    }
}

.service-goods-candidate-radio {
    height: 32px;
    border-bottom: 1px solid #bbb;
    margin-bottom: 7px;
}

table.service-goods-table {
    border-collapse: separate;
}

table.service-goods-table > thead > tr > th {
    white-space: nowrap;
    padding: 10px 10px;
}

table.service-goods-table > tbody > tr > td {
    padding: 8px 10px;
}

table.service-goods-table > tbody > tr > td.service-goods-table-td_delete {
    text-align: center;
}

table.service-goods-table > tbody > tr > td.service-goods-table-td_delete i {
    margin: 0 !important;
}

table.service-goods-table > thead > tr > th.service-goods-table-th_delete {
    width: 70px;
}

table.service-goods-table > thead > tr > th.service-goods-table-th_goodsCd {
    width: 120px;
}

table.service-goods-table > thead > tr > th.service-goods-table-th_goodsCount {
    width: 120px;
}

.service-goods-add-button {
    margin: 0 !important;
}

.service-goods-add-button::before {
    font-family: FontAwesome, monospace;
    content: '\f055';
    padding-right: 6px;
}

table.candidate-table > tbody > tr.selected {
    background: unset;
}

table.candidate-table > tbody > tr.selected > td {
    border: 1px solid #ddd;
}

table.candidate-table > tbody > tr:has(button.service-goods-add-button.disabled) > td {
    background-color: rgba(0, 0, 0, 0.15);
}

table.candidate-table > tbody > tr:has(button.service-goods-add-button.selected) > td {
    background-color: rgb(0, 255, 88, 0.15);
}

table.service-component-goods-table > tbody > tr.selected:nth-of-type(odd) {
    background: #f9f9f9;
}

table.service-component-goods-table > tbody > tr.selected:nth-of-type(even) {
    background: unset;
}

table.service-component-goods-table > tbody > tr.selected > td {
    border: 1px solid #ddd;
}

table.service-component-goods-table > tbody > tr > td:has(input[type="checkbox"]:not(:checked):disabled) {
    background-color: rgba(0, 0, 0, 0.15);
}

table.service-component-goods-table > tbody > tr > td:has(input[type="checkbox"]) {
    cursor: pointer;
    text-align: center;
}

table.service-component-goods-table > tbody > tr > td:has(input[type="checkbox"]:not(:checked):disabled) {
    cursor: not-allowed;
}

table.service-attached-goods-table > tbody > tr.error-row > td,
table.service-component-goods-table > tbody > tr.error-row > td {
    background-color: rgba(255, 0, 0, 0.15);
}

.service-goods-select-box {
    position: relative;
}

.service-goods-message-area {
    position: absolute;
    left: 10px;
    top: 15px;
    font-weight: 600;
    font-size: 14px;
    color: rgb(164, 0, 0);
}

.refill-setting > div {
    border: 1px solid #ccc;
    padding: 1.25rem .5rem 2rem;
    border-radius: 5px;
    margin-top: 1rem;
}

#refill-setting-area {
    padding: 0 1rem 1rem;
}

.remove-setting-btn {
    border: 1px solid #dddddd;
    margin: 0;
    font-size: 16px;
    background-color: #ebe8e8;
}

label:has(.unlimited_discount) {
    display: inline-flex;
    margin: .5rem 0 0;
    align-items: center;
    font-weight: 500;
}

.unlimited_discount {
    margin: 0 .5rem 0 0 !important;
}

.refill-setting-header {
    margin-bottom: 1rem;
    display: flex;
    align-items: center;
}

.refill-setting-message-area {
    display: inline-block;
    margin: 0 0 0 1.5rem;
    font-size: 14px;
    font-weight: 600;
}

.refill-setting-message-area:empty {
    display: none;
}

.refill-setting-message-area:before {
    content: '\f071';
    font-family: FontAwesome, monospace;
    padding-right: .5rem;
}

.refill-setting.refill-setting-danger > div {
    background-color: rgba(255, 0, 0, 0.15);
}

.refill-setting.refill-setting-warning > div {
    background-color: rgb(255, 255, 0, 0.15);
}

.refill-setting.refill-setting-danger .refill-setting-message-area {
    color: rgb(164, 0, 0);
}

.refill-setting.refill-setting-warning .refill-setting-message-area {
    color: rgb(164, 164, 0);
}

table.refill-setting-goods-table {
    white-space: nowrap;
    font-size: 90%;
    background-color: #fff;
    margin-bottom: 5px;
}

table.refill-setting-goods-table > tbody > tr:has(input[type="checkbox"]:disabled) > td {
    background-color: rgba(0, 0, 0, 0.15);
}

table.refill-setting-goods-table > tbody > tr:has(input[type="checkbox"]) {
    cursor: pointer;
}

table.refill-setting-goods-table > tbody > tr:has(input[type="checkbox"]:disabled) {
    cursor: not-allowed;
}

table.refill-setting-goods-table > tbody > tr > td {
    padding: 6px 8px;
}

table.refill-setting-goods-table > tbody > tr > td:has(input[type='checkbox']) {
    text-align: center;
}

/* ------------------------------- サービス権利一覧（client_service_right/list） ------------------------------- */

.client-service-right-text-alert {
    color: #d00000;
}

.service-right-list-title {
    padding: .75rem 1.5rem;
    margin: 1rem 0 0;
    font-weight: 600;
    font-size: 20px;
    background-color: #fff;
}

.service-right-list-title.service-right-list-title_future {
    color: #aaaa33;
}

.service-right-list-title.service-right-list-title_continue {
    color: #249d4b;
}

.service-right-list-title.service-right-list-title_cancel {
    color: #ca4d4d;
}

.service-right-list-title.service-right-list-title_onetime {
    color: #4d4dca;
}

.client-service-right-panel {
    padding: 10px;
    background: rgb(102 127 152);
    position: relative;
    margin: 2.5rem 0;
    box-shadow: 0 0 5px rgb(0 0 0 / 25%);
    border: none;
}

.client-service-right-panel:before {
    content: '';
    position: absolute;
    border-top: 1px solid #ccc;
    width: 100%;
    top: -2.5rem;
    left: 0;
}

.service-right-list-title + .client-service-right-panel:before {
    display: none;
}

.client-service-right-panel-header {
    padding: calc(1.15rem - 10px - 1px) 1.5rem 1.15rem;
    font-size: 22px;
    font-weight: 600;
    line-height: normal;
    color: #fff;
}

.client-service-right-panel table tbody td {
    padding: .5rem .75rem;
}

.client-service-right-btn-area {
    padding-top: 1.5rem;
    padding-bottom: calc(1.5rem - 10px);
}

.client-service-right-btn {
    width: 150px;
    margin: 0 1rem;
}

.service-right-undeletable-reason {
    color: rgb(255 255 255 / 90%);
}

.service-right-info-block {
    padding: 0.5rem 0.75rem 1.5rem;
    border-top: 1px dashed #ccc;
    background: #fff;
}

table.client-service-right-info-table tbody th,
table.client-service-right-info-table tbody td {
    vertical-align: text-top !important;
}

table.client-service-right-info-table tbody th {
    background: rgba(52, 73, 94, .94);
    color: #ECF0F1;
}

table.client-service-right-info-table tbody th {
    text-align: left !important;
    width: 20%;
}

.client-service-right-history-table {
    font-size: 90%;
}

.client-service-right-history-table tbody tr.current-row {
    background: #FAFA66A0;
}

#refill_settings_table {
    margin-bottom: 1rem;
}

#refill_settings_table > tbody > tr > td {
    padding: 6px 8px;
}

.service-right-target-none-message {
    font-size: 14px;
    color: gray;
    margin-left: 0.5rem;
}

.refill-setting-goods-candidate-area,
.refill-setting-goods-select-area {
    padding-bottom: 1rem;
}
@media (min-width: 1200px) {
    .refill-setting-goods-candidate-area.col-lg-6 > .refill-setting-goods-candidate-box {
        margin-right: 0;
    }
    .refill-setting-goods-select-area.col-lg-6 > .refill-setting-goods-select-box {
        padding-top: 85px;
        margin-left: 0;
    }
}
.refill-setting-goods-candidate-box,
.refill-setting-goods-select-box {
    border: 1px solid #bbb;
    border-radius: 5px;
    height: 100%;
    font-size: 92%;
}
.refill-setting-goods-select-box {
    padding: 20px 10px 0;
}
.refill-setting-goods-candidate-box {
    padding: 10px 10px 0;
}
.refill-setting-goods-table-th_delete {
    width: 70px;
}
.refill-setting-goods-table-th_goodsCd {
    width: 120px;
}
.refill-setting-goods-table {
    border-collapse: separate;
}
.refill-setting-goods-table thead th {
    white-space: nowrap;
}
.refill-setting-goods-table thead tr th {
    padding: 10px 10px;
}
.refill-setting-goods-table tbody tr td {
    padding: 8px 10px;
}
.refill-setting-goods-table-td_delete {
    text-align: center;
}
.refill-setting-goods-table-td_delete i {
    margin: 0!important;
}
.refill-setting-goods-candidate-radio {
    height: 32px;
    border-bottom: 1px solid #bbb;
    margin-bottom: 7px;
}
.refill_setting_goods_add_button {
    margin: 0!important;
}
.refill_setting_goods_add_button::before {
    font-family: FontAwesome, monospace;
    content: '\f055';
    padding-right: 6px;
}

/* 詳細説明ポップアップ */
.detail-popup-wrap {
    max-width: 100vw;
    width: 100%;
    height: 100%;
    z-index: 99999999;
    position: fixed;
    top: 0;
    left: 0;
}

.detail-popup-background {
    background-color: #000;
    width: 100%;
    height: 100%;
    opacity: 70%;
    position: fixed;
    top: 0;
    left: 0;
}

.detail-popup-body {
    border-radius: 0.2rem;
    position: fixed;
    width: 80%;
    left: calc(50% - 80% / 2);
    height: 80%;
    top: calc(50% - 80% / 2);
    background-color: #fff;
    padding: 0 1rem;
    overflow-y: auto;
}

.detail-popup-area {
    position: relative;
    height: 70vh;
    width: 80vw;
    text-align: center;
}

.detail-popup,
.detail-popup-spinner {
    position: absolute;
    margin: auto;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.detail-popup {
    z-index: 1;
    max-height: 100%;
    max-width: 100%;
    object-fit: contain;
    min-height: 50%;
}

.detail-popup-title {
    padding: 2rem;
    font-size: 22px;
    font-weight: 600;
}

.detail-popup-content {
    padding: 1rem 2rem;
    font-size: 16px;
}

.detail-popup-spinner {
    z-index: 0;
}

.detail-popup-close-btn-col {
    position: fixed;
    bottom: 5vh;
    text-align: center;
}

.detail-popup-close-btn {
    width: 80vw;
    height: 40px;
    margin: 0;
}

.member-subscript-detail-table > tbody > tr > th,
.member-subscript-detail-table > tbody > tr > td,
.member-subscript-detail-table > tfoot > tr > td,
.member-subscript-info-table > tbody > tr > th,
.member-subscript-info-table > tbody > tr > td {
    padding: .5rem .75rem !important;
}

.member-subscript-detail-table > tbody > tr > th,
.member-subscript-info-table > tbody > tr > th {
    background: rgb(52 73 94 / 74%);
    color: #ECF0F1;
}

.member-subscript-info-table > tbody > tr > th {
    width: 140px;
    line-height: normal;
}

.member-subscript-detail-table {
    margin-bottom: .25rem;
}

.member-subscript-info-table {
    margin-bottom: 1rem;
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    .member-subscript-info-table tbody th,
    .member-subscript-info-table tbody td {
        display: flex;
        width: 100% !important;
        border: none !important;
    }
}

.x_panel.member_subscript_panel .x_title {
    border-bottom: 1px dashed #ccc;
    padding-bottom: .75rem;
    margin-bottom: .5rem;
}

.x_panel.member_subscript_panel .x_title > h4 {
    margin-bottom: 0;
}

.member-subscript-target-none-message {
    font-size: 14px;
    color: gray;
    margin-left: 0.5rem;
}

.member-subscript-description-skip {
    font-size: 90%;
    color: #dc3545;
}
