html {
    font-size: 12px;
    background-color: #FEF7FF; /* 背景色: 薄い桃色 */
}

@media (min-width: 768px) {
    html {
        font-size: 12px;
    }
}

.custom-btn:focus, .custom-btn:active:focus, .custom-btn-link.nav-link:focus, .custom-form-control:focus, .custom-form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 60px;
}

.full-height {
    height: 100vh;
}

.custom-nav-link:hover {
    background-color: #ececec; /* マウスオーバー時の背景色 */
    border-radius: 4px; /* 滑らかな角を作成 */
    transition: background-color 0.3s ease; /* スムーズなエフェクト */
}

/* --------------------------------*/
/* 背景色 */
/* --------------------------------*/
.custom-bg-theme {
    background-color: #FEF7FF !important; /* 背景色: 薄い桃色 */
}

.custom-bg-primary-light {
    background-color: #EAF5FD !important; /* 背景色: 薄い青 */
    color: #000 !important; /* 読みやすい文字色 */
}

.custom-bg-secondary-light {
    background-color: #FFFEF5 !important; /* 背景色: 薄いアイボリー */
    color: #000 !important;
}

.custom-bg-success-light {
    background-color: #98D4C0 !important; /* 背景色: 薄い緑 */
    color: #000 !important;
}

.custom-bg-warning-light {
    background-color: #FF9932 !important; /* 背景色: 濃いオレンジ */
    color: #fff !important; /* 白文字でコントラスト確保 */
}

/*最新のインフォメーションのデザイン*/
.custom-bg-green-light {
    background-color: #99D5C0 !important; /* 背景色: よく使用する緑*/
    color: #fff !important; /* 白文字でコントラスト確保 */
    font-size: 20px !important;
    font-weight: 700;
}

/* テーブル用背景色 */
.custom-bg-yellow-light {
    background-color: #FFFFCC !important; /* 背景色: 薄い黄色*/
    color: #000 !important; /* 読みやすい文字色 */
}

.custom-bg-red-light {
    background-color: #FFDB99 !important; /* 背景色: 薄いオレンジ色*/
    color: #000 !important; /* 読みやすい文字色 */
}

.custom-bg-blue-light {
    background-color: #C2DEF2 !important; /* 背景色: 薄い青色*/
    color: #000 !important; /* 読みやすい文字色 */
}

.custom-bg-orange-light {
    background-color: #FFCA67 !important; /* 背景色: オレンジ色*/
    color: #000 !important; /* 読みやすい文字色 */
}

/* --------------------------------*/
/* ボタン */
/* --------------------------------*/
.custom-btn-primary-light {
    background-color: #EAF5FD !important;
    color: #007bff !important;
}

    .custom-btn-primary-light:hover {
        background-color: #d0e8fa !important;
    }

.custom-btn-secondary-light {
    background-color: #FFFEF5 !important;
    color: #6c757d !important;
}

    .custom-btn-secondary-light:hover {
        background-color: #fef9f0 !important; /* ホバー時: 薄いアイボリー */
    }

.custom-btn-secondary {
    background-color: #FFFEF5 !important;
    border: none !important;
    color: #014D97 !important;
}

    .custom-btn-secondary:hover {
        background-color: #FFFEF5 !important;
        opacity: 0.8;
    }

.custom-btn-success-light {
    background-color: #98D4C0 !important;
    color: #28a745 !important;
}

    .custom-btn-success-light:hover {
        background-color: #84cbb2 !important; /* ホバー時: 薄い緑をさらに薄く */
    }

.custom-btn-warning-light {
    background-color: #FF9932 !important;
    color: #fff !important;
}

    .custom-btn-warning-light:hover {
        background-color: #ff8532 !important; /* ホバー時: 濃いオレンジを強調 */
    }

/*CSV出力ボタン用*/
.custom-btn-white {
    background-color: white; /* ボタンの背景色を白に */
    color: #005098; /* ボタンの文字色を紺に */
    padding: 5px 17px;
    cursor: pointer;
    font-size: 16px;
    border-radius: 17px;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
    .custom-btn-white:hover {
        background-color: #005098;
        color: white;
    }

/* 一括登録、新規登録ボタン（緑色） */
.custom-btn-new {
    background-color: #99D5C0;
    color: white;
    padding: 5px 17px;
    cursor: pointer;
    font-size: 16px;
    border-radius: 17px;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    min-width: 100px;
}
    .custom-btn-new:hover {
        background-color: #45a049;
        color: white;
    }

/* 一括登録、新規登録ボタン（緑色）小 */
.custom-btn-new--sm {
    background-color: #99D5C0;
    color: white;
    padding: 6px 8px;
    cursor: pointer;
    font-size: 12px;
    border-radius: 15px;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    min-width: 100px;
}
    .custom-btn-new--sm:hover {
        background-color: #45a049;
        color: white;
    }

/* 編集ボタン（青色） */
.custom-btn-edit {
    background-color: #84C5F2; /* 青色 */
    color: white; /* 文字色 */
    padding: 5px 17px;
    cursor: pointer;
    font-size: 14px;
    border-radius: 17px;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
    .custom-btn-edit:hover {
        background-color: #0056b3;
        color: white;
    }

/* 編集ボタン（青色）小 */
.custom-btn-edit--sm {
    background-color: #84C5F2;
    color: white;
    padding: 6px 8px;
    cursor: pointer;
    font-size: 12px;
    border-radius: 15px;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    min-width: 100px;
}
    .custom-btn-edit--sm:hover {
        background-color: #0056b3;
        color: white;
    }

/* 削除ボタン（赤色） */
.custom-btn-delete {
    background-color: #FF8000; /* 赤色 */
    color: white; /* 文字色 */
    padding: 5px 17px;
    cursor: pointer;
    font-size: 14px;
    border-radius: 17px;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
    .custom-btn-delete:hover {
        background-color: #c82333;
        color: white;
    }

/* 非活性ボタン */
.custom-btn-disabled {
    background-color: gray; /* グレー */
    color: white; /* 文字色 */
    padding: 5px 17px;
    cursor: pointer;
    font-size: 14px;
    border-radius: 17px;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* 削除ボタン（アイコン） */
.custom-btn-delete--icon {
    color: #FF8000; /* 赤色 */
    font-size: 1.5rem !important;
}
    .custom-btn-delete--icon:hover {
        color: #c82333;
    }

/* 行追加ボタン */
.custom-btn-add-line {
    background-color: #84C5F2;
    color: white;
    padding: 5px 10px;
    cursor: pointer;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
    .custom-btn-add-line:hover {
        background-color: #0056b3;
        color: white;
    }

/* 検索ボタン（虫眼鏡） */
.custom-btn-search--sm {
    background-color: #84C5F2;
    color: white;
    padding: 5px 10px;
    cursor: pointer;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
    .custom-btn-search--sm:hover {
        background-color: #0056b3;
        color: white;
    }

/* リンクボタン */
.custom-btn-link {
    font-size: 14px;
    font-weight: bold;
}
    /* クリック時（:active）のボーダーや背景色の変化を無効化 */
    .custom-btn-link:active,
    .custom-btn-link:focus,
    .custom-btn-link:focus:active {
        background-color: transparent !important;
        border-color: transparent !important;
        box-shadow: none !important;
    }

/* --------------------------------*/
/* サイドメニュー、ヘッダーメニュー */
/* --------------------------------*/
#quickMenuModal {
    z-index: 1080 !important;
}

/*クイックメニューダイアログの下線*/
.custom-quick-menu-link {
    border-bottom: 4px solid #005098; /* 青色 */
    padding-bottom: 2px;
}
/*サイドメニューの下線*/
.menu-link {
    border-bottom: 2px solid #99D5C0; /* 緑色 */
    padding-bottom: 2px;
}
/*サイドメニュー追加用ボタン*/
.custom-btn-menu-area {
    display: flex;
    align-items: center;
}

.custom-btn-menu {
    width: auto;
    height: auto;
    border-radius: 100%;
    background-color: #99D5C0;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    cursor: pointer;
}

    .custom-btn-menu:hover {
        background-color: #45a049;
    }

    .custom-btn-menu i {
        color: white;
        font-size: 1.2rem;
        font-weight: bold;
    }

/* ヘッダーのリンク文字色 */
.custom-nav-link {
    font-size: 20px !important;
    color: #014D97 !important; /* ヘッダーの文字色を指定 */
    text-decoration: none; /* 下線を削除 */
}

    .custom-nav-link:hover {
        background-color: #ececec;
        color: #012f63 !important;
        transition: background-color 0.3s ease;
    }

/* ヘッダーのリンク文字色(文字の色：黒) */
.custom-black-nav-link {
    font-size: 20px !important;
    color: black !important; /* ヘッダーの文字色を指定 */
    text-decoration: none; /* 下線を削除 */
}

    .custom-black-nav-link:hover {
        background-color: #ececec;
        color: #012f63 !important;
        transition: background-color 0.3s ease;
    }

/* --------------------------------*/
/* タイトル */
/* --------------------------------*/
/* タイトルの文字色 */
.custom-text-primary {
    color: #005098;
    font-weight: bold;
}

/*ページ名用*/
.custom-title {
    color: #005098;
    font-weight: bold;
    font-size: 24px;
    text-align: center;
}


/* --------------------------------*/
/* 検索フォーム */
/* --------------------------------*/
/* CSVエラー表示ボックス */
.custom-alert-box {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
}

/*検索窓の外枠(黄色)*/
.custom-yellow-box {
    background-color: #FFFEF5;
    padding: 40px;
    margin-top: 20px;
    border-radius: 15px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}

/* 検索窓 */
.custom-search-input {
    max-width: 400px;
    padding: 5px;
    font-size: 16px;
    font-weight: bold;
}

/* 検索窓（width制限なし、主にキーワード向け）*/
.custom-search-input--full {
    padding: 5px;
    font-size: 16px;
    font-weight: bold;
}

/* 検索窓（日付向け） */
.custom-search-input--date {
    max-width: 150px;
    padding: 5px;
    font-size: 16px;
    font-weight: bold;
}

/* 検索窓（単一チェックボックス） */
.custom-search-input--checkbox {
    transform: scale(2);
    margin-right: 10px;
}

/* 検索窓（ラベル） */
.custom-search-input--label {
    font-size: 14px;
    font-weight: bold;
}

/* 検索窓（ラベル・大） */
.custom-search-input--label-lg {
    font-size: 16px;
    font-weight: bold;
}

/*システム制御マスタ用*/
.custom-system-setting {
    color: #808080;
    font-weight: bold;
    font-size: 20px;
    text-align: left !important;
}

    /*システム制御マスタ用(選択タブ)*/
    .custom-system-setting.nav-link.active {
        color: #005098 !important;
        border-bottom: 4px solid #005098;
        border-radius: 0;
        background-color: transparent !important;
        font-weight: 700; /* 太字 */
    }

    /*システム制御マスタ用(未選択タブ)*/
    .custom-system-setting.nav-link {
        color: #6c757d;
        border-bottom: 4px solid transparent;
        transition: all 0.3s ease;
        font-weight: 500; /* 中程度の太さ */
    }
        /*システム制御マスタ用(未選択タブホバー)*/
        .custom-system-setting.nav-link:hover {
            color: #495057;
            border-bottom: 4px solid #6c757d; /* ホバー時も灰色の太線 */
            font-weight: 700; /* ホバー時も太字 */
        }

.custom-system-setting-title {
    color: #005098;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
}

.custom-system-setting-menu-title-black {
    color: black;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
    display: inline-block;
    width: 150px; /*横並びボタンの位置が揃わないので残す*/
}

.custom-system-setting-title-black {
    color: black;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
}
/*左寄せ(警告ダイアログ用)*/
.custom-system-setting-alert-title-black {
    color: black;
    font-weight: bold;
    font-size: 18px;
    text-align: left;
}

.outer {
    display: flex;
    justify-content: center;
}

.inner {
    display: flex;
    gap: 10px;
}

.radio-btn label {
    cursor: pointer;
}

.radio-btn input[type="radio"]:checked + label {
    /* 選択されている方に .custom-btn-edit を適用 */
    background-color: #84C5F2; /* 青色 */
    color: white; /* 文字色 */
    padding: 5px 17px;
    cursor: pointer;
    font-size: 14px;
    border-radius: 17px;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/*薬品出庫用ラジオボタン*/
.custom-medicine-radio-btn label {
    cursor: pointer;
}

.custom-medicine-radio-btn input[type="radio"]:checked + label {
    /* 選択されている方に .custom-btn-edit を適用 */
    background-color: #99D5C0; /* 緑 */
    color: white; /* 文字色 */
    padding: 5px 17px;
    cursor: pointer;
    font-size: 14px;
    border-radius: 17px;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.custom-medicine-radio-btn input[type="radio"] + label {
    background-color: white; /* ボタンの背景色を白に */
    color: #005098; /* ボタンの文字色を紺に */
    padding: 5px 17px;
    cursor: pointer;
    font-size: 16px;
    border-radius: 17px;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/*薬品出庫用ラベル*/
.custom-medicine-search-label {
    font-weight: bold !important;
    font-size: 14px !important;
    white-space: nowrap;
    width: 2vw;
}

#v-pills-tab {
    flex: 0 0 230px; /* 幅250pxで固定 */
    max-width: 230px;
}

.tab-content {
    flex: 1 1 auto;
    min-width: 0; /* はみ出し防止 */
}

.radio-btn input[type="radio"] + label {
    background-color: white; /* ボタンの背景色を白に */
    color: #005098; /* ボタンの文字色を紺に */
    padding: 5px 17px;
    cursor: pointer;
    font-size: 16px;
    border-radius: 17px;
    font-weight: bold;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* モーダルスタイル */
#dialog-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.4);
    z-index: 9999 !important;
}

#dialog-box {
    display: none;
    position: fixed;
    top: 30%;
    left: 50%;
    transform: translateX(-50%);
    width: 400px;
    background-color: #fffdf5;
    border: 2px solid #aaa;
    padding: 20px;
    border-radius: 12px;
    z-index: 10000 !important;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
}

    #dialog-box h3 {
        font-size: 18px;
        margin-bottom: 10px;
    }

    #dialog-box p {
        font-size: 14px;
        margin-bottom: 15px;
    }

        #dialog-box p.warning {
            color: red;
            font-weight: bold;
        }

.dialog-buttons {
    text-align: right;
}

    .dialog-buttons button {
        margin-left: 10px;
        padding: 6px 16px;
        border-radius: 8px;
        font-size: 14px;
        cursor: pointer;
        border: none;
    }


/* 変更警告ダイアログのスタイル */
.custom-edit-dialog-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: none;
    z-index: 1000;
}

.custom-edit-dialog {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
    min-width: 500px;
    text-align: center;
}

.custom-edit-dialog-title {
    font-size: 1.3rem;
    font-weight: bold;
    margin-bottom: 20px;
    color: #333;
}


.custom-dialog-buttons {
    display: flex;
    justify-content: center;
    gap: 20px;
}

/*ページ名用*/
.custom-title {
    color: #005098;
    font-weight: bold;
    font-size: 24px;
    text-align: center;
}

/* --------------------------------*/
/* マイページ */
/* --------------------------------*/
/*マイページ用*/
.custom-my-page {
    border-color: #84C5F2 !important;
    border-width: 5px !important;
}

/* --------------------------------*/
/* テーブル */
/* --------------------------------*/
/* テーブルのスタイル */
.custom-table {
    width: 95%;
    margin-left: auto;
    margin-right: auto;
}
    /* 水平スクロール時に追加 */
    .custom-table > .custom-responsive {
        width: auto;
        min-width: 160%;
        table-layout: auto !important;
    }

/* モーダル内テーブル用ラッパークラス */
.custom-modal-table-wrapper {
    max-height: 500px;
    overflow-y: auto;
}

.custom-tr-group-first-border-top {
    border-top: 1px solid #ccc; /* 薄いグレー */
}

th, td {
    padding: 10px;
}

/* テーブル行(背景：白)*/
.custom-template-table {
    min-width: 150%;
    background-color: white;
    border-collapse: collapse;
    border-spacing: 0; /* 隙間を0にして崩れを防ぐ */
    table-layout: fixed;
    font-size: 14px;
}
    /* 水平スクロール時に追加 */
    .custom-template-table.custom-template-responsive {
        min-width: 100%;
        table-layout: auto !important;
    }
        .custom-template-table.custom-template-responsive > .custom-word-wrap {
            word-wrap: break-word !important;
            word-break: break-all !important;
            white-space: pre-line !important;
            overflow-wrap: break-word !important;
        }

/* テーブルキャプション */
.custom-table-caption {
    caption-side: top;
    white-space: nowrap;
}

/*テーブルキャプション　背景色例*/
.custom-table-caption--bgcolor-box {
    width: 50px;
    height: 20px;
    border: 1px solid #ccc;
    display: inline-block;
}

.custom-table-frame {
    width: 90%;
    height: 200px;
    overflow: auto;
}

/* テーブルのヘッダースタイル(緑)*/
.custom-header-green-bg {
    background-color: #99D5C0;
    color: white;
    font-size: 15px;
    font-weight: bold;
    text-align: center;
    height: 20px;
}
    /* テーブルのヘッダースタイル(青) 予製マスタ用*/
    .custom-header-green-bg > th.blue-bg {
        background-color: #005098 !important;
    }

/* テーブルのヘッダースタイル(青)*/
.custom-header-blue-bg {
    background-color: #005098 !important;
    color: white !important;
    font-size: 15px;
    font-weight: bold;
    text-align: center;
    height: 20px;
}

/*ストライプの色*/
.table-striped > tbody > tr:nth-of-type(odd) {
    --bs-table-accent-bg: #DFF9F2;
    color: inherit; /* 文字色は継承 */
}

.table-striped > tbody > tr.custom-bg-yellow-light:nth-of-type(odd) {
    --bs-table-accent-bg: #FFFF99;
    color: inherit; /* 文字色は継承 */
}

.table-striped > tbody > tr.custom-bg-red-light:nth-of-type(odd) {
    --bs-table-accent-bg: #FFC966;
    color: inherit; /* 文字色は継承 */
}

.table-striped > tbody > tr.custom-bg-blue-light:nth-of-type(odd) {
    --bs-table-accent-bg: #84C5F2;
    color: inherit; /* 文字色は継承 */
}

.table-striped > tbody > tr.custom-bg-orange-light:nth-of-type(odd) {
    --bs-table-accent-bg: #FFCA67;
    color: inherit; /* 文字色は継承 */
}

/* 線消し */
thead.custom-no-border th.custom-header-white-bg,
thead.custom-no-border th.custom-header-blue-bg {
    border-bottom: none;
    border-top: none;
    vertical-align: top;
}

/* テーブルのヘッダースタイル(白)*/
.custom-header-white-bg {
    background-color: white !important;
    color: #005098 !important;
    font-size: 15px;
    font-weight: bold;
    text-align: center;
    height: 20px;
}

.custom-row-even {
    background-color: #DFF9F2 !important;
}

.custom-row-odd {
    background-color: #ffffff !important;
}

/* テーブルホバー時 背景色 */
.table-hover tbody tr:hover,
.table-striped.table-hover tbody tr:hover {
    background-color: #97D2FC !important; /* 青 */
}

/* テーブル選択行 背景色 */
.table-hover tbody tr.table-active,
.table-striped.table-hover tbody tr.table-active {
    background-color: #65BDFC !important; /* 濃い青 */
}


/* --------------------------------*/
/* コンテナ */
/* --------------------------------*/
.outer-container {
    display: flex;
    justify-content: center;
}

.custom-form-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start; /* 左端に揃える */
}

.custom-row-even td {
    background-color: #DFF9F2;
}

.custom-row-odd td {
    background-color: #ffffff;
}

/* --------------------------------*/
/* 入力フォーム */
/* --------------------------------*/
/* 入力フォームタイトル */
.custom-title-input-form {
    width: 80%;
    max-width: 300px;
    font-size: 18px;
    font-weight: bold;
}

/* 入力フォームタイトル (最大サイズ違い)*/
.custom-title-input-form-shop {
    width: 80%;
    max-width: 500px;
    font-size: 18px;
    font-weight: bold;
}


/* 入力フォーム */
.custom-input-form {
    width: 100%;
    max-width: 600px;
    padding: 5px;
    font-size: 16px;
    font-weight: bold;
}

/* 入力フォーム（中） */
.custom-input-form--md {
    width: 100%;
    max-width: 200px;
    padding: 5px;
    font-size: 16px;
    font-weight: bold;
}

/* 入力フォーム（小） */
.custom-input-form--sm {
    width: 100%;
    max-width: 100px;
    padding: 5px;
    font-size: 16px;
    font-weight: bold;
}

/* 入力フォーム（チェックボックス） */
.custom-input-form--checkbox {
    transform: scale(1.5);
}


.custom-page-link {
    display: inline-block;
    color: black;
    border: 1px solid #ccc;
    padding: 6px 12px;
    margin-left: 4px;
    background-color: white !important;
    border-radius: 0.375rem;
    text-decoration: none;
    font-weight: bold;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    transition: background-color 0.3s ease;
}

    .custom-page-link:hover {
        background-color: #f0f0f0 !important;
        text-decoration: none;
    }

    .custom-page-link.active {
        background-color: #007bff !important; /* 濃い青（Bootstrapのprimary） */
        color: white !important; /* 白文字でコントラスト */
        border-color: #007bff !important; /* 枠線も統一 */
        pointer-events: none; /* 押せないように（現在ページ） */
        box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15); /* 軽く凹んだ感じ */
    }

.table-striped > tbody > tr.custom-bg-highlight {
    --bs-table-accent-bg: #FFC966; /* 好きな色に変更 */
    color: inherit; /* 文字色は継承 */
}

/* 一般的なチェックボックス */
.custom-check-box__text {
    display: inline-block;
    padding: 3px 0 3px 40px;
    cursor: pointer;
    position: relative;
}

    .custom-check-box__text::before {
        content: '';
        display: inline-block;
        position: absolute;
        width: 27px;
        padding-top: 27px;
        top: 0;
        left: 0;
        border: 1px solid #111;
    }

    .custom-check-box__text::after {
        content: '';
        display: inline-block;
        position: absolute;
        width: 20px;
        padding-top: 10px;
        top: 5px;
        left: 4px;
        border-left: 2px solid #000066;
        border-bottom: 2px solid #000066;
        transform: rotate(-45deg);
        opacity: 0;
    }

input[type=checkbox]:checked + span::after {
    opacity: 1;
}

/* チェックボックスグループ */
.custom-checkbox-group {
    display: flex;
    margin-bottom: 0.5rem;
    gap: 8px;
}

.custom-checkbox-area input[type="checkbox"] {
    display: none;
}

.custom-checkbox-area label {
    display: inline-block;
    padding: 10px 20px;
    border: 1px solid #999;
    border-radius: 6px;
    background-color: white;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.custom-checkbox-area input[type="checkbox"]:checked + label {
    background-color: #DAE8FC;
    border-color: #6C8EBF;
}

/* ラジオボタングループ */
.custom-radio-group {
    display: flex;
    margin-bottom: 0.5rem;
    gap: 8px;
}

.custom-radio-area input[type=radio] {
    position: absolute;
    -webkit-appearance: none;
    appearance: none;
}

.custom-radio-area label {
    display: inline-block;
    padding: 5px 10px;
    border: 1px solid #999;
    border-radius: 17px;
    background-color: white;
    cursor: pointer;
    transition: background-color 0.3s ease;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    min-width: 80px !important;
    font-size: 14px;
}

    .custom-radio-area label.modal-label {
        border-radius: 5px;
        min-width: 230px !important;
        font-size: 16px;
    }
    .custom-radio-area label.input-label--lg {
        border-radius: 6px;
        min-width: 120px !important;
        font-size: 16px;
    }

.custom-radio-area input[type=radio]:checked + label {
    background-color: #DAE8FC;
    border-color: #6C8EBF;
    color: #005098;
}

/* --------------------------------*/
/* メニュー */
/* --------------------------------*/
/* メニューアイテムのスタイル */
.custom-menu-item {
    position: relative;
    color: #005098;
    font-size: 20px !important;
}
/* メニューアイテムのスタイル (店舗、担当者表示用)*/
.custom-menu-nav-item {
    position: relative;
    font-size: 20px !important;
}

/* サブメニューのスタイル */
.custom-submenu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    list-style: none;
    background: #005098;
    padding: 10px;
    min-width: 200px;
    z-index: 1000;
}

    /* サブメニュー内のリンクのスタイル */
    .custom-submenu a {
        text-decoration: none;
        display: block;
        border-bottom: 1px solid white;
        padding-bottom: 5px;
        white-space: nowrap;
        color: white;
    }

        /* サブメニューのリンクホバー時の背景色変更 */
        .custom-submenu a:hover {
            background: #777;
        }

/* 親メニューアイテムにホバーされたときにサブメニューを表示 */
.custom-menu-item:hover .custom-submenu {
    display: block;
}


/* --------------------------------*/
/* ログイン */
/* --------------------------------*/
/*ログイン画像のサイズ*/
.smaller-image {
    max-width: 25%; /* 最大幅を25%に設定（お好みで調整） */
    height: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.smaller-image-logo {
    max-width: 10%;
    height: auto;
    display: block;
    margin-left: auto;
    margin-right: 10%;
}


/* --------------------------------*/
/* アイコン */
/* --------------------------------*/
/* 警告アイコン */
.alert-icon {
    width: 30px;
    height: 30px;
    background-color: #FF8000; /* 橙色 */
    color: white;
    border-radius: 50%;
    border: 1px solid black; /* 外枠黒 */
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5rem;
}

/* 削除済みアイコン */
.custom-bi--delete {
    font-size: 1.5rem !important;
    color: #FF8000;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

/* --------------------------------*/
/* その他 */
/* --------------------------------*/
/* フォームのスタイル */
.form-row {
    display: flex; /* フレックスボックスを使って横並びに */
    gap: 20px; /* フォーム間に隙間を追加 */
    white-space: nowrap;
}

.container {
    display: flex;
    justify-content: center; /* 横方向中央 */
    margin-top: 0;
    padding-top: 0;
}

.form-container {
    width: 100%; /* 幅を100%にして、最大幅に合わせる */
    max-width: 600px; /* 最大幅を設定 */
    padding: 20px; /* 内側の余白 */
    box-sizing: border-box; /* 幅にパディングを含める */
    float: left;
    clear: both;
}

/*パスワード再設定用の横幅指定*/
.custom-password-reset-form-container {
    width: 100%; /* 幅を100%にして、最大幅に合わせる */
    max-width: 1000px !important; /* 最大幅を設定 */
    padding: 20px; /* 内側の余白 */
    box-sizing: border-box; /* 幅にパディングを含める */
    float: left;
    clear: both;
}

/*ログインのエラーメッセージ*/
.error-message {
    height: 1.5em; /* 常に高さを確保しておく */
    color: red;
}

/* フォームのラベル */
label {
    display: inline-block;
    min-width: 150px;
    vertical-align: top;
}


/* --------------------------------*/
/* ダイアログ */
/* --------------------------------*/
/* ダイアログ */
.modal-content.custom-modal {
    background-color: #FFFEF5; /* 薄い黄色 */
    border: none; /* 枠線削除 */
    font-weight: bold !important; /* 太文字 */
    font-size: 18px; /* 文字の大きさを16pxに設定 */
    border-radius: 15px;
    padding: 1rem;
    max-width: 600px; /* または width: 80%; とか */
    margin: auto; /* 中央揃え */
}

/* 登録系ダイアログ */
.modal-content.edit-modal {
    background-color: #FEF7FF; /* 薄い桃色 */
    border: none; /* 枠線削除 */
    font-weight: bold !important; /* 太文字 */
    font-size: 18px; /* 文字の大きさを16pxに設定 */
    border-radius: 15px;
    padding: 1rem;
    max-width: 600px; /* または width: 80%; とか */
    margin: auto; /* 中央揃え */
}

.modal-header,
.modal-body,
.modal-footer {
    border: none; /* セクションの枠線も削除 */
}

.modal-xxl {
    max-width: 110vw; /* 画面の110%を使う */
}

/* 拡張モーダルコンテンツ */
.custom-modal-content-xl {
    width: fit-content !important; /* 1000px～1200pxの間で子要素の幅に依存 */
    max-width: 1200px !important;
    min-width: 1000px !important;
}

.custom-modal-content-xxl {
    width: fit-content !important; /* 1600px～1800pxの間で子要素の幅に依存 */
    max-width: 1800px !important;
    min-width: 1600px !important;
}

/* 併用チェック結果表示ダイアログ アイコン*/
.custom-combo-check-modal-aleart-icon--color {
    color: #FF8000; /* 赤色 */
}


/* --------------------------------*/
/* ショートカットメニューダイアログ用 */
/* --------------------------------*/
.menu-list-wrapper {
    width: 400px;
    max-height: 400px;
    overflow-y: auto;
}

.custom-search-title {
    font-weight: bold !important;
    font-size: 14px !important;
}

.reception-list-wrapper {
    width: 1200px !important;
    max-width: 1200px !important;
    min-width: 1200px !important;
}

.custom-toast {
    z-index: 1050;
}

.custom-radio {
    list-style-type: none;
    margin: 25px 0 0 0;
    padding: 0;
}

    .custom-radio li {
        float: left;
        margin: 0 30px 0 0;
        width: 140px;
        height: 40px;
        position: relative;
    }

    .custom-radio label,
    .custom-radio input {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }

        .custom-radio input[type="radio"] {
            opacity: 0.01;
            z-index: 100;
        }

            .custom-radio input[type="radio"]:checked + label,
            .Checked + label {
                background: #85C4F1;
            }

    .custom-radio label {
        padding: 5px;
        border: 1px solid #CCC;
        cursor: pointer;
        z-index: 90;
    }

        .custom-radio label:hover {
            background: #DDD;
        }


/* --------------------------------*/
/* ボタンリスト */
/* --------------------------------*/
/* ボタンリスト */
.custom-button-list-group-item {
    min-width: 180px;
    font-size: 16px;
    font-weight: bold;
    background-color: #FFF;
}
    /* ホバー時 */
    .custom-button-list-group-item:hover {
        background-color: #C2DEF2;
        color: #000;
    }
    /* 選択時 */
    .custom-button-list-group-item.active {
        background-color: #008DF2;
        color: #FFF;
        border-color: #008DF2;
    }
    /* 仮薬品の場合 */
    .custom-button-list-group-item.yellow {
        background-color: #FFFFCC;
    }
        /* ホバー時 */
        .custom-button-list-group-item.yellow:hover {
            background-color: #FFFF66;
            color: #000;
        }
        /* 選択時 */
        .custom-button-list-group-item.yellow.active {
            background-color: #FF9932;
            color: #FFF;
            border-color: #FF9932;
        }


/* --------------------------------*/
/* チップ */
/* --------------------------------*/
/* チップ（青） */
.custom-medicine-label-chip--blue {
    display: inline-block;
    background-color: #C2DEF2;
    border: 1px solid #008DF2;
    border-radius: 10px;
    padding: 0.4rem 0.75rem;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    color: #008DF2;
    min-width: 125px;
}

    .custom-medicine-label-chip--blue.sm-tip {
        min-width: 70px;
    }

/* チップ（黄） */
.custom-medicine-label-chip--yellow {
    display: inline-block;
    background-color: #FFFFCC;
    border: 1px solid #FF9932;
    border-radius: 10px;
    padding: 0.4rem 0.75rem;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    color: #FF9932;
    min-width: 125px;
}

    .custom-medicine-label-chip--yellow.sm-tip {
        min-width: 70px;
    }

/* --------------------------------*/
/* 患者履歴明細画面で使用 */
/* --------------------------------*/
/*パネル固定*/
.custom-yellow-box.patient-detail {
    position: relative;
}
/* 右上のパネル*/
.custom-progress-box {
    position: absolute; /* 黄色ボックスの中で右上に固定 */
    top: 18px; /* 余白 */
    right: 18px; /* 余白 */
    width: 220px; /* 正方形 */
    height: 220px; /* 正方形 */
    background: #fff; /* 白地 */
    color: #000; /* 黒文字 */
    border: 1px solid #000; /* 目立つ枠線（完成図の太め枠） */
    display: flex; /* 中央寄せ */
    align-items: center;
    justify-content: center;
    padding: 0; /* 余白なし（正方形維持） */
    box-sizing: border-box;
    white-space: nowrap; /* 文字を横並び維持 */
    font-size: 3rem; /* 文字を大きく */
    font-weight: 900; /* 太字 */
}


/* --------------------------------*/
/* 表示切り替えタブ */
/* --------------------------------*/
.custom-nav-tabs-item {
    background-color: #FFF !important;
    font-size: 16px;
    font-weight: bold;
    color: #000 !important;
}
    /* 選択時 */
    .custom-nav-tabs-item.active {
        background-color: #C2DEF2 !important;
    }
    /* 選択時（黄色） */
    .custom-nav-tabs-item.yellow.active {
        background-color: #FFF2CC !important;
    }

/* タブコンテンツ */
.custom-tab-content {
    overflow: auto !important;
}


/* --------------------------------*/
/* 薬品マスタ 編集画面 */
/* --------------------------------*/
/* 編集画面タイトル*/
.custom-medicine-edit--title {
    min-width: 70px;
    font-size: 16px;
    font-weight: bold;
    color: #999999;
}

.custom-medicine-edit--title-value {
    font-size: 20px;
    font-weight: bold;
}

/* 基本情報タブ */
#medicineEditTabs #base {
    background-color: #C2DEF2;
}
/* 付随情報タブ */
#medicineEditTabs #attribute {
    background-color: #FFF2CC;
}

/* 見出しタブ */
.custom-medicine-edit--section-label {
    background-color: #FFF;
    padding: 0.25rem 0.75rem;
    font-size: 14px;
    font-weight: bold;
    min-width: 150px;
    min-height: 30px;
}

/* 各入力フォーム行 */
.custom-medicine-edit--row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 5px;
    min-width: 100%;
}

/* 各入力フォーム欄 */
.custom-medicine-edit--col {
    padding: 0;
}

.custom-medicine-edit--input-group {
    display: flex;
    align-items: start;
}
    /* ラベル */
    .custom-medicine-edit--input-group > .custom-medicine-edit--label {
        flex: 1 1 0;
        border-radius: 0;
        padding: 0.25rem 0.5rem;
        font-size: 12px;
        font-weight: bold;
        white-space: normal;
        max-width: 450px;
    }

        .custom-medicine-edit--input-group > .custom-medicine-edit--label.col1-content {
            min-width: 100px;
            max-width: 200px;
            min-height: 50px;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--label.col2-content {
            min-width: 100px;
            min-height: 50px;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--label.col3-content {
            min-width: 100px;
            min-height: 50px;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--label.col4-content {
            min-width: 80px;
            min-height: 40px;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--label.col6-content {
            padding: 0.15rem 0.25rem;
            min-width: 70px;
            min-height: 30px;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--label.blue {
            background-color: #C2DEF2;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--label.yellow {
            background-color: #FFF2CC;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--label.green {
            background-color: #D5E8D4;
        }

    /* 値 */
    .custom-medicine-edit--input-group > .custom-medicine-edit--values {
        border-radius: 0;
        padding: 0.25rem 0.5rem;
        font-size: 14px;
    }

        .custom-medicine-edit--input-group > .custom-medicine-edit--values.col1-content {
            min-width: 250px;
            min-height: 50px;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--values.col1-content-sm {
            max-width: 200px;
            min-height: 50px;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--values.col2-content {
            flex: 3 1 0;
            min-width: 250px;
            min-height: 50px;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--values.col3-content {
            flex: 3 1 0;
            min-width: 200px;
            min-height: 50px;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--values.col4-content {
            flex: 2 1 0;
            min-width: 160px;
            min-height: 40px;
        }

        .custom-medicine-edit--input-group > .custom-medicine-edit--values.col6-content {
            flex: 2 1 0;
            padding: 0.15rem 0.25rem;
            min-width: 150px;
            min-height: 30px;
        }

    .custom-medicine-edit--input-group > input[readonly] {
        background-color: #fff !important;
    }

    .custom-medicine-edit--input-group > textarea[readonly] {
        background-color: #fff !important;
    }

/* 管理区分トグルスイッチ */
.custom-regulationflag-switch-area {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 100%;
}

.custom-regulationflag-switch {
    min-width: 60px;
    min-height: 25px;
}


/* --------------------------------*/
/* 薬品マスタ 一括操作画面 */
/* --------------------------------*/
.custom-yellow-box--bulk-action {
    background-color: #FFFEF5;
    padding: 10px;
    border-radius: 15px;
}

.custom-bulk-action--label {
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    white-space: nowrap;
    min-width: fit-content;
}

.custom-bulk-action--input-large {
    min-width: 150px;
}


/* --------------------------------*/
/* 予製マスタ マスタ画面 */
/* --------------------------------*/
/* 並び順選択ボックス */
.custom-search-input--reserved-medicine-sort {
    max-width: 120px;
    padding: 5px;
    font-size: 16px;
    font-weight: bold;
}

/* 予製マスタテーブルのbox-shadowを無効化 */
.custom-reserved-medicine-table > :not(caption) > * > * {
    box-shadow: none !important;
}

/*テーブル各列の幅*/
.custom-reserved-medicine-th--icon {
    max-width: 35px;
    min-width: 30px;
}

.custom-reserved-medicine-th--code {
    max-width: 135px;
    min-width: 120px;
}

.custom-reserved-medicine-th--text {
    max-width: 370px;
    min-width: 370px;
}

.custom-reserved-medicine-th--decimal {
    max-width: 110px;
    min-width: 110px;
}

.custom-reserved-medicine-th--decimal-sm {
    max-width: 50px;
    min-width: 45px;
}

.custom-reserved-medicine-th--button {
    max-width: 90px;
    min-width: 80px;
}

.custom-reserved-medicine-th--date {
    max-width: 90px;
    min-width: 90px;
}

.custom-reserved-medicine-th--user {
    max-width: 120px;
    min-width: 100px;
}

.custom-reserved-medicine-th--shop {
    max-width: 200px;
    min-width: 180px;
}


/* --------------------------------*/
/* 予製マスタ 編集画面 */
/* --------------------------------*/
/* 予製種別チップ */
.custom-reserved-type-chip {
    display: inline-block;
    padding: 5px 10px;
    border: 1px solid #999;
    border-color: #6C8EBF;
    border-radius: 6px;
    background-color: #DAE8FC;
    cursor: pointer;
    transition: background-color 0.3s ease;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    max-width: 120px !important;
    min-width: 80px !important;
    font-size: 16px;
    color: #005098;
}

/* 区切り線 */
.custom-solid-line {
    border-bottom: 2px solid #005098;
}

/* 予製単位選択ドロップダウンリスト */
.custom-reserved-medicine-unit-select {
    min-width : 200px;
}

/* 入力フォーム用補足説明 */
.custom-reserved-medicine-input-caption {
    font-size: 14px;
    font-weight: bold;
}

/* 内訳薬品エラー表示ボックス */
.custom-reserved-medicine-details-alert-box {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5px;
}

/* 薬品検索ダイアログ テーブルキャプション */
.custom-add-reserved-medicine-details-modal-sticky-caption {
    background-color: #FFFEF5;
    font-size: 14px;
    font-weight: bold;
    color: #6c757d;
}

/*
* 薬品検索ダイアログ テーブル奇数行背景色
* table-stripedとtable-hoverの共存が難しいため、table-stripedの代用として使用
*/
#modalDataListTable tbody tr:nth-of-type(odd) {
    background-color: #DFF9F2;
}


/* --------------------------------*/
/* 予製作成履歴 */
/* --------------------------------*/
.custom-reserved-medicine-history-table {
    min-width: 100% !important;
    max-width: 2460px;
}
    /* 予製マスタテーブルのbox-shadowを無効化 */
    .custom-reserved-medicine-history-table > :not(caption) > * > * {
        box-shadow: none !important;
    }

/*テーブル各列の幅*/
.custom-reserved-medicine-history-th--code {
    max-width: 130px;
    min-width: 130px;
}

.custom-reserved-medicine-history-th--text {
    max-width: 370px;
    min-width: 370px;
}

.custom-reserved-medicine-history-th--decimal {
    max-width: 110px;
    min-width: 110px;
}

.custom-reserved-medicine-history-th--decimal-sm {
    max-width: 50px;
    min-width: 45px;
}

.custom-reserved-medicine-history-th--date {
    max-width: 90px;
    min-width: 90px;
}

.custom-reserved-medicine-history-th--user {
    max-width: 120px;
    min-width: 100px;
}

.custom-reserved-medicine-history-th--button {
    max-width: 90px;
    min-width: 80px;
}

.custom-reserved-medicine-history-th--button-xl {
    max-width: 130px;
    min-width: 120px;
}

/* --------------------------------*/
/* 集薬・照合履歴 */
/* --------------------------------*/

/* 集薬・照合履歴テーブルの行間を狭くする */
.custom-picking-matching-history-table td,
.custom-picking-matching-history-table th {
    padding: 6px 8px;
    line-height: 1.3;
}

/*テーブル各列の幅*/
.custum-picking-maching-history-col-coll-datetime {
    width: 85px;
    min-width: 85px;
}

.custum-picking-maching-history-col-coll-no {
    width: 85px;
    min-width: 85px;
}

.custum-picking-maching-history-col-veri-datetime {
    width: 85px;
    min-width: 85px;
}

.custum-picking-maching-history-col-recept-no {
    width: 65px;
    min-width: 65px;
}

.custum-picking-maching-history-col-split-deli {
    width: 45px;
    min-width: 45px;
}

.custum-picking-maching-history-col-veri-result {
    width: 45px;
    min-width: 45px;
}

.custum-picking-maching-history-col-gs1 {
    width: 120px;
    min-width: 120px;
}

.custum-picking-maching-history-col-med-name {
    width: 13%;
    min-width: 180px;
}

.custum-picking-maching-history-col-coll-quantity {
    width: 75px;
    min-width: 75px;
}

.custum-picking-maching-history-col-exp-date {
    width: 50px;
    min-width: 50px;
}

.custum-picking-maching-history-col-lot {
    width: 90px;
    min-width: 90px;
}

.custum-picking-maching-history-col-resv-name {
    width: 13%;
    min-width: 180px;
}

.custum-picking-maching-history-col-resv-quantity {
    width: 75px;
    min-width: 75px;
}

.custum-picking-maching-history-col-resv-unit {
    width: 55px;
    min-width: 55px;
}

.custum-picking-maching-history-col-delete-detail {
    width: 80px;
    min-width: 80px;
}

.custum-picking-maching-history-col-staff {
    width: 110px;
    min-width: 110px;
}

.custum-picking-maching-history-col-record {
    width: 100px;
    min-width: 100px;
}

.custum-picking-maching-history-col-delete-collection {
    width: 80px;
    min-width: 80px;
}

/* --------------------------------*/
/* 棚卸一覧 */
/* --------------------------------*/
.custom-inventory-list-table table {
    table-layout: fixed;
    width: 100%;
}

.custom-inventory-list-header-table {
    width: 100%;
}

.custom-inventory-list-table td,
.custom-inventory-list-table th {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

    .custom-inventory-list-table td.text-wrap,
    .custom-inventory-list-table td.custom-inventory-list-wrap {
        /* 薬品名セルを折り返し・複数行表示に */
        /* 長い英数字やGS1のような連続文字にも対応 */
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        word-break: break-word;
        overflow-wrap: anywhere;
    }

    .custom-inventory-list-table td.custom-inventory-list-text-top {
        /* 集薬Noセルだけ上寄せ */
        vertical-align: top !important;
    }

.custom-inventory-list-th--rack-number {
    width: 85px;
    min-width: 85px;
    max-width: 85px;
}

.custom-inventory-list-th--product-name {
    width: 15%;
}

.custom-inventory-list-th--standard-capacity {
    width: 15%;
}

.custom-inventory-list-th--yj-code {
    width: 60px;
    min-width: 60px;
    max-width: 60px;
}

.custom-inventory-list-th--capacity {
    width: 60px;
    min-width: 60px;
    max-width: 60px;
}

.custom-inventory-list-th--medicine-type {
    width: 30px;
    min-width: 30px;
    max-width: 30px;
}

.custom-inventory-list-th--gs1-code {
    width: 60px;
    min-width: 60px;
    max-width: 60px;
}

.custom-inventory-list-th--reserved-type {
    width: 45px;
    min-width: 45px;
    max-width: 45px;
}

.custom-inventory-list-th--minimum-quantity {
    width: 73px;
    min-width: 73px;
    max-width: 73px;
}

.custom-inventory-list-th--packing-quantity {
    width: 73px;
    min-width: 73px;
    max-width: 73px;
}

/* --------------------------------*/
/* 受付状況モニター */
/* --------------------------------*/
.custom-nsips-error-modal-sticky-caption {
    background-color: #FEF7FF;
    font-size: 14px;
    font-weight: bold;
    color: #6c757d;
}

/* 処方箋情報セル（薬品名と「他」を横並びで表示） */
.custom-prescription-detail-cell {
    position: relative;
}

.custom-prescription-detail-content {
    overflow: hidden;
}

.custom-prescription-detail-omitted {
    font-weight: bold;
    white-space: nowrap;
    float: right;
    vertical-align: bottom;
}

/* --------------------------------*/
/* Width セット */
/* --------------------------------*/
.w-1 {
    width: 1%;
}

.w-2 {
    width: 2%;
}

.w-3 {
    width: 3%;
}

.w-4 {
    width: 4%;
}

.w-5 {
    width: 5%;
}

.w-6 {
    width: 6%;
}

.w-7 {
    width: 7%;
}

.w-8 {
    width: 8%;
}

.w-9 {
    width: 9%;
}

.w-10 {
    width: 10%;
}

.w-11 {
    width: 11%;
}

.w-13 {
    width: 13%;
}

.w-15 {
    width: 15%;
}

.w-16 {
    width: 16%;
}

.w-20 {
    width: 20%;
}

.w-22 {
    width: 22%;
}

.w-23 {
    width: 23%;
}

.w-25 {
    width: 25%;
}

.w-30 {
    width: 30%;
}

.w-35 {
    width: 35%;
}

.w-40 {
    width: 40%;
}

.w-45 {
    width: 45%;
}

.w-50 {
    width: 50%;
}

.w-55 {
    width: 55%;
}

.w-60 {
    width: 60%;
}

.w-70 {
    width: 70%;
}

.w-80 {
    width: 80%;
}

.w-85 {
    width: 85%;
}

.w-90 {
    width: 90%;
}

.w-95 {
    width: 95%;
}

.w-100 {
    width: 100%;
}

.w-fit-content {
    width: fit-content;
}

.w-min-fit-content {
    min-width: fit-content;
}

.w-max-fit-content {
    max-width: fit-content;
}

/* --------------------------------*/
/* Height セット */
/* --------------------------------*/
.h-100 {
    height: 100%;
}
