
/* input-area（入力欄）の対応 */
.input-area th,
.input-area td {
    white-space: nowrap;
}

/* スマホ用（Bootstrapのmd未満） */
@media (max-width: 992px) {

    .input-area table,
    .input-area tbody,
    .input-area tr,
    .input-area th,
    .input-area td {
        display: block;
        width: 100%;
    }
    
    .input-area tr {
        margin-bottom: 1rem;
        border-bottom: 1px solid #dee2e6;
        padding-bottom: .5rem;
    }
    
    .input-area th {
        border: none;
        padding: .25rem 0;
        font-weight: bold;
    }
    
    .input-area td {
        border: none;
        padding: .25rem 0;
    }
}

    

.checkbox-size-l {
    transform: scale(2.5);
}

.checkbox-size-m {
    transform: scale(1.8);
}

.checkbox-size-s {
    transform: scale(1.2);
}



.menu-button {
	background-color: #dfdcde;
	border: 2px solid;
	border-radius: 0.5rem;
	text-align: center;
}

.menu-button:hover {
	background-color: #f8fafc;
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}


/* データリスト関連 ↓↓*/
/* ==== 外枠（見た目・高さ制御のみ） ==== */
.data_list-area {
    padding: 0 2px 20px 2px;
    max-height: 45vh;
}

/* ==== スクロール担当 ==== */
.data_list-scroll {
    overflow-x: auto;
    overflow-y: auto;
}

/* ==== table ==== */
.data_list-scroll table {
    min-width: max-content;   /* 列が多い時だけ横スクロール */
    width: 100%;
    white-space: nowrap;
    margin: 0;
}

/* ==== sticky header ==== */
.data_list_table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #fff;
    border-bottom: 2px solid #dee2e6;
}

/* ==== th / td 共通 ==== */
.data_list_table th,
.data_list_table td {
    white-space: nowrap;
    vertical-align: middle;
    padding-top: 0;
    padding-bottom: 0;
}

/* ==== th ==== */
.data_list_table th {
    min-height: 42px;
    line-height: 42px;
}

/* ==== td ==== */
.data_list_table td {
    min-height: 42px;
    line-height: 26px;
}



/* データリスト関連 ↑↑*/


/* テーブル最終行のボーダーを消す */
.last_row_none_border tbody tr:last-child > th,
.last_row_none_border tbody tr:last-child > td {
    border-bottom: none !important;
}

.input-area
,.search-area
{
    margin: 0;
    width: 100%;
}

.input-button-area
,.search-button-area{
    margin: 3px;
    padding: 3px 5px;
    width: 100%;
    text-align: right;
}


.alert-danger li{
    margin-left: 15px;
}

.original-readonly {
    pointer-events: none; /* クリック・操作を無効化 */
    background-color: #e9ecef; /* 無効化っぽい見た目 */
    color: #6c757d;
}

.row-deleted > td {
    background-color: #ffecec !important;
}

.row-deleted:hover > td {
    background-color: #ffd6d6 !important;
}

/* Breadcrumbs コンテナ */
.Breadcrumbs {
    display: flex;
    align-items: center;
}

/* Bootstrap breadcrumb 上書き */
.Breadcrumbs .breadcrumb {
    display: flex;
    align-items: center;
    margin-bottom: 0;     /* ← これが無いと中央にならない */
    padding: 0;
    background: none;
}

/* breadcrumb item */
.Breadcrumbs .breadcrumb-item {
    font-size: 16px;
    font-weight: 450;
    line-height: 1;
    color: #10086a;
}

/* link */
.Breadcrumbs .breadcrumb-item a {
    position: relative;
    color: #10086a;
    text-decoration: none;
    padding-bottom: 2px;
}

/* hover underline */
.Breadcrumbs .breadcrumb-item a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0%;
    height: 1px;
    background-color: #3020dc;
    transition: width 0.25s ease;
}

.Breadcrumbs .breadcrumb-item a:hover::after {
    width: 100%;
}

/* active */
.Breadcrumbs .breadcrumb-item.active {
    font-weight: 600;
    color: #080437;
}

.data-count-label::before {
    content: "件数:";
}




.area_title {
    font-size: 1.5rem;
    font-weight: 600;
    color: #343a40;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #0d6efd; /* Bootstrap primary */
}


.info-area .table tr:last-child th,
.info-area .table tr:last-child td {
    border-bottom: none;
}



