@charset "UTF-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700;800&display=swap');

/*共通部分
------------------------------------------*/
body {
	font-family: 'Noto Sans JP', sans-serif;
}

/*ヘッダー*/
.main-header {
	min-height: 4.25em;
}

.main-header .icon-menu {
	font-size: 1.5rem;
}

.main-header .icon-angle-left {
	font-size: 1.2rem;
	vertical-align: text-bottom;
    margin-right: 5px;
}

/*サイドバー：navy色改訂*/
.sidebar-dark-navy {
	background-color: #00476D !important;
}

.sidebar-dark-navy .brand-link {
	border-bottom-color: #5a7e96;
}

.sidebar-dark-navy .brand-link img {
	height: 2.75rem;
	margin-top: .8rem;
	margin-bottom: .8rem;
	opacity: 1;
}

.sidebar-dark-navy .brand-link:hover img {
	opacity: .8;
}

.sidebar-mini.sidebar-collapse .brand-text {
	width: 0;
}

.sidebar-mini.sidebar-collapse .main-sidebar:not(.sidebar-no-expand):hover .brand-text,
.sidebar-mini.sidebar-collapse .main-sidebar:not(.sidebar-no-expand).sidebar-focused .brand-text {
	width: auto;
	opacity: .8;
}

.sidebar-dark-navy .brand-link img.brand-logo {
	margin-right: .65rem;
}

.sidebar-dark-navy .sidebar {
	padding: 0;
}

.nav-sidebar {
	margin-right: none;
}

.layout-navbar-fixed .wrapper .sidebar-dark-navy,
.layout-navbar-fixed .wrapper .sidebar-dark-navy .brand-link:not([class*="navbar"]) {
	background-color: #00476D !important;
}

.sidebar-dark-navy .nav-sidebar>.nav-item .nav-link,
.dark-mode .sidebar-dark-navy .nav-sidebar>.nav-item .nav-link {
	border-radius: 0;
	color: #fff;
	width: 100% !important;
	padding-top: .8em;
	padding-bottom: .8em;
}

.sidebar-dark-navy .has-treeview .nav-treeview>.nav-item .nav-link,
.dark-mode .sidebar-dark-navy .has-treeview .nav-treeview>.nav-item .nav-link {
	padding-left: 2.5rem
}

.sidebar-dark-navy .nav-sidebar>.nav-item>.nav-link.active,
.dark-mode .sidebar-dark-navy .nav-sidebar>.nav-item>.nav-link.active,
.sidebar-dark-navy .nav-sidebar>.nav-item .nav-treeview .nav-link.active,
.dark-mode .sidebar-dark-navy .nav-sidebar>.nav-item .nav-treeview .nav-link.active {
	background-color: #00476D;
	color: #fff;
	box-shadow: none;
	border-radius: 0;
}

.sidebar-dark-navy .nav-sidebar>.nav-item>.nav-link.active::before,
.dark-mode .sidebar-dark-navy .nav-sidebar>.nav-item>.nav-link.active::before,
.sidebar-dark-navy .nav-sidebar>.nav-item .nav-treeview .nav-link.active::before,
.dark-mode .sidebar-dark-navy .nav-sidebar>.nav-item .nav-treeview .nav-link.active::before {
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: .25rem;
	height: 100%;
	background-color: #fff;
}

.sidebar-dark-navy .nav-sidebar>.nav-item.menu-open>.nav-link.active::before,
.dark-mode .sidebar-dark-navy .nav-sidebar>.nav-item.menu-open>.nav-link.active::before {
	opacity: .5;
}

.sidebar-dark-navy .nav-sidebar.nav-legacy>.nav-item>.nav-link.active,
.dark-mode .sidebar-dark-navy .nav-sidebar.nav-legacy>.nav-item>.nav-link.active {
	border-color: #00476D;
}

.nav-sidebar .nav-link svg,
.nav-sidebar .nav-link i {
	font-size: 1.5rem;
	margin-right: .5em;
}

.nav-sidebar .nav-link svg.right,
.nav-sidebar .nav-link i.right {
	font-size: 1.2rem;
	line-height: 1.5;
}

.nav-sidebar .menu-open>.nav-link svg.right,
.nav-sidebar .menu-open>.nav-link i.right,
.nav-sidebar .menu-is-opening>.nav-link svg.right,
.nav-sidebar .menu-is-opening>.nav-link i.right {
	-webkit-transform: rotate(-180deg) !important;
	transform: rotate(-180deg) !important;
}

.sidebar-dark-navy .nav-sidebar .nav-link p {
	vertical-align: top;
}

/*背景色*/
.bg-navy {
	background-color: #00476D !important;
}

/*ボタンカスタマイズ*/
.btn-main {
	min-width: 8em;
	/*max-width: 13em;*/
	font-weight: 600;
	padding-top: .7em !important;
	padding-bottom: .7em !important;
}

/*navy色改訂・ボタン色追加*/
.btn.btn-navy {
	color: #fff;
	background-color: #00476D;
	border-color: #00476D;
	box-shadow: none
}

.btn.btn-navy:hover {
	color: #fff;
	background-color: #3e5976;
	border-color: #3b5571
}

.btn.btn-navy.focus,
.btn.btn-navy:focus {
	color: #fff;
	background-color: #1a3e5e;
	border-color: #193955;
	box-shadow: 0 0 0 0 rgba(24, 78, 127, .5)
}

.btn.btn-navy.disabled,
.btn.btn-navy:disabled {
	color: #fff;
	background-color: #00476D;
	border-color: #00476D
}

.btn.btn-navy:not(:disabled):not(.disabled).active,
.btn.btn-navy:not(:disabled):not(.disabled):active,
.show>.btn.btn-navy.dropdown-toggle {
	color: #fff;
	background-color: #193955;
	border-color: #18354e
}

.btn.btn-navy:not(:disabled):not(.disabled).active:focus,
.btn.btn-navy:not(:disabled):not(.disabled):active:focus,
.show>.btn.btn-navy.dropdown-toggle:focus {
	box-shadow: 0 0 0 0 rgba(24, 78, 127, .5)
}

.dark-mode .btn.btn-navy {
	color: #fff;
	background-color: #184e7f;
	border-color: #184e7f;
	box-shadow: none
}

.dark-mode .btn.btn-navy:hover {
	color: #fff;
	background-color: #3e5976;
	border-color: #3b5571
}

.dark-mode .btn.btn-navy.focus,
.dark-mode .btn.btn-navy:focus {
	color: #fff;
	background-color: #1a4b76;
	border-color: #1c4a73;
	box-shadow: 0 0 0 0 rgba(82, 167, 224, .5)
}

.dark-mode .btn.btn-navy.disabled,
.dark-mode .btn.btn-navy:disabled {
	color: #fff;
	background-color: #184e7f;
	border-color: #184e7f
}

.dark-mode .btn.btn-navy:not(:disabled):not(.disabled).active,
.dark-mode .btn.btn-navy:not(:disabled):not(.disabled):active,
.show>.dark-mode .btn.btn-navy.dropdown-toggle {
	color: #fff;
	background-color: #193955;
	border-color: #183650
}

.dark-mode .btn.btn-navy:not(:disabled):not(.disabled).active:focus,
.dark-mode .btn.btn-navy:not(:disabled):not(.disabled):active:focus,
.show>.dark-mode .btn.btn-navy.dropdown-toggle:focus {
	box-shadow: 0 0 0 0 rgba(82, 167, 224, .5)
}

[class*=accent-] a.btn.btn-navy {
	color: #fff
}

.dark-mode [class*=accent-] a.btn.btn-navy {
	color: #fff
}

/*見づらいため*/
.btn-outline-navy {
	border-color: #00476D;
	background-color: #fff;
	color: #00476D;
}

/*red色改訂・ボタン色追加*/
.btn.btn-red {
	color: #fff;
	background-color: #CC0000;
    box-shadow: none
}

.btn.btn-red:hover {
	color: #fff;
}

.btn-outline-secondary,
.btn-outline-danger {
	background-color: #fff;
}


.accent-navy .btn-link,
.accent-navy a:not(.dropdown-item):not(.btn-app):not(.nav-link):not(.brand-link):not(.page-link):not(.badge):not(.btn),
.accent-navy .nav-tabs .nav-link {
	color: #00476D;
}

.accent-navy .btn-link:hover,
.accent-navy a:not(.dropdown-item):not(.btn-app):not(.nav-link):not(.brand-link):not(.page-link):not(.badge):not(.btn):hover,
.accent-navy .nav-tabs .nav-link:hover {
	color: #001f3f;
}

.accent-navy .dropdown-item:active,
.accent-navy .dropdown-item.active {
	background-color: #001f3f;
	color: #fff;
}

.accent-navy .custom-control-input:checked~.custom-control-label::before {
	background-color: #00476D;
	border-color: #00476D;
}

.accent-navy .custom-control-input:checked~.custom-control-label::after {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");
}

.accent-navy .custom-checkbox .custom-control-label {
    line-height: 2.1;
    display: flex;
    align-items: center;
}

.accent-navy .custom-checkbox .custom-control-label::before {
	width: 1.25rem !important;
	height: 1.25rem !important;
	border-color: #00476D;
}

.accent-navy .custom-checkbox .custom-control-input:checked~.custom-control-label::after {
	width: 1.25rem !important;
	height: 1.25rem !important;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");
}

.accent-navy .custom-checkbox-allday .custom-control-label {
    line-height: 2.1;
    display: flex;
    align-items: center;
}

.accent-navy .custom-checkbox-allday .custom-control-label::before {
    margin-top: 0.20rem;
    display: flex;
    align-items: center;
	width: 1.25rem !important;
	height: 1.25rem !important;
	border-color: #00476D;
    border-radius: 20%;
}

.accent-navy .custom-checkbox-allday .custom-control-input:checked~.custom-control-label::after {
    margin-top: 0.20rem;
    display: flex;
    align-items: center;
	width: 1.25rem !important;
	height: 1.25rem !important;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");
}

.accent-navy .custom-radio .custom-control-label::before {
	border-radius: 50%;
	border: 1px solid #00476D;
	background: #fff;
	top: 0;
	bottom: 0;
	width: 1.7em;
	height: 1.7em;
    display: flex;
    align-items: center;
    justify-content: center;
}

.accent-navy .custom-radio .custom-control-input:checked~.custom-control-label::before {
	background-color: #fff;
}

.accent-navy .custom-radio .custom-control-input:checked~.custom-control-label::after {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='4' fill='%2300476D'/%3E%3C/svg%3E");
	background-size: 60%;
	top: 0;
	bottom: 0;
	width: 1.7em;
	height: 1.7em;
    display: flex;
    align-items: center;
    justify-content: center;
}

.accent-navy .custom-radio .custom-control-input:disabled:checked~.custom-control-label::before {
	background-color: rgba(0, 123, 255, 0.5);
}

.accent-navy .form-control:focus:not(.is-invalid):not(.is-warning):not(.is-valid),
.accent-navy .custom-select:focus,
.accent-navy .custom-control-input:focus:not(:checked)~.custom-control-label::before,
.accent-navy .custom-file-input:focus~.custom-file-label {
	border-color: #005ebf;
}

.accent-navy .page-item .page-link {
	color: #00476D;
}

.accent-navy .page-item.active a,
.accent-navy .page-item.active .page-link {
	background-color: #00476D;
	border-color: #001f3f;
	color: #fff;
}

/*タブ*/
.accent-navy .nav-tabs {
	border-bottom: 1px solid #ccc;
}

.accent-navy .nav-tabs .nav-link {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	border-color: #ccc #ccc #fff !important;
	border-bottom: none;
}

.accent-navy .nav-tabs .nav-link:hover,
.accent-navy .nav-tabs .nav-link:focus {
	color: #306f91;
	border-color: #e9ecef #e9ecef #dee2e6 !important;
	border-bottom-color: transparent !important;
}

.accent-navy .nav-tabs .nav-link.disabled {
	color: #6c757d;
	background-color: transparent;
	border-color: transparent;
}

.accent-navy .nav-tabs .nav-link.active,
.accent-navy .nav-tabs .nav-item.show .nav-link {
	color: #666;
	border-color: #ccc #ccc #fff !important;
	border-bottom: 1px solid #fff;
	z-index: 1;
}

/*タブ切り替えタイプ*/
.nav-tabs.switch-tab {
	font-size: .875rem;
	border: 1px solid #e0e0e0;
	border-radius: .25rem;
	background: #e0e0e0;
	overflow: hidden;
}

.nav-tabs.switch-tab[id*="shift-onsite"] {
	width: calc(5.6rem + 3px);
}

.nav-tabs.switch-tab .nav-link {
	margin-bottom: 0;
	color: #00476D;
	background-color: #fff;
	border-radius: 0;
	border: none;
}

.nav-tabs.switch-tab[id*="shift-onsite"] .nav-link {
	width: 2.8rem;
}

.nav-tabs.switch-tab .nav-link:nth-of-type(n+2) {
	margin-left: 1px !important;
}

.nav-tabs.switch-tab .nav-link:hover,
.nav-tabs.switch-tab .nav-link:focus {
	color: #666;
	background-color: #f2faff;
}

.nav-tabs.switch-tab .nav-link.disabled {
	color: #6c757d;
	background-color: transparent;
}

.nav-tabs.switch-tab .nav-link.active,
.nav-tabs.switch-tab .nav-item.show .nav-link {
	color: #333;
	background-color: #E1F0FA;
}



/*ログインページ*/
.login-page .main-header,
.login-page .main-footer {
	position: fixed;
	margin-left: 0 !important;
}

.login-page .main-header {
	top: 0;
}

.login-page .main-footer {
	bottom: 0;
}

.login-page [class*="icon-eye"] {
	font-size: 1.4em;
	position: absolute;
	top: calc(50% - .7rem);
	right: .75rem;
	bottom: 0;
	margin: auto;
}

::placeholder {
	font-size: .875rem;
	font-weight: 300;
	color: #ccc !important;
}

/*ページタイトル*/
.content-header h1 {
	font-size: 1.5rem;
}

/*dataTablesのプラグインのバグ？*/
.btn-default {
	background-color: #fff;
	border-color: #ccc !important;
	color: #333;
}

/*dataTablesカスタマイズ*/
.dataTables_wrapper table,
table.formtable {
	border: none;
	font-size: .875rem;
}

table.formtable input,
table.formtable select,
table.formtable textarea {
	font-size: .875rem;
}

.dataTables_wrapper table {
	margin: auto !important
}

.dataTables_wrapper table thead tr th {
	border-bottom: none;
}

.dataTables_wrapper table tr>th,
.dataTables_wrapper table tr>td,
table.formtable th,
table.formtable td {
	border-color: #fff !important;
}

.dataTables_wrapper table th,
table.formtable th {
	background-color: #E1F0FA;
	padding: .9em
}

.dataTables_wrapper table td,
table.formtable td {
	background-color: #FAFAFA;
	padding: .6em .8em
}

table.formtable th {
	padding: 1em;
	width: 22.5%;
}

table.formtable td {
	padding: .6em
}

table.formtable td,
table.formtable.editpage td.inputtd {
	padding: .6em
}

table.formtable.editpage td {
	padding: 1.1em
}

table.formtable th label,
table.formtable td label {
	margin-bottom: 0 !important;
}


.dataTables_wrapper table th,
.dataTables_wrapper table td,
table.formtable th,
table.formtable td,
table.nobordertable th,
table.nobordertable td {
	/*リスト系のテーブルを縦中央揃えに*/
	vertical-align: middle !important;
}

.dataTables_wrapper .row:last-of-type {
	padding: 1rem 0 0 0;
}

/*ページネーション*/
.accent-navy .pagination {
	gap: .5rem !important;
}

.accent-navy .dataTables_wrapper .pagination {
	/*センター揃え*/
	-webkit-box-pack: center !important;
	justify-content: center !important;
	padding-top: 1.5rem;
}

.accent-navy .pagination li .page-link {
	font-size: .875rem;
	text-align: center;
	border-radius: .2rem !important;
	width: 2.4em !important;
    padding: 0.5rem 0;
}

.accent-navy .page-item.disabled .page-link {
	color: #ccc !important;
	border-color: #E8E9EC !important;
}

/*フォーム*/
.form-control {
	font-size: .875rem;
	min-height: 2.65em !important;
	padding-top: .75em !important;
	padding-bottom: .75em !important;
}

.form-control_select {
	padding: .65em .75em .70em .75em !important;
	margin
}

.custom-select {
	font-size: .875rem;
}

input[type="date"].form-control {
	min-width: 10em !important
}

input[type="number"].form-control {
	min-width: 4em !important
}

.btn-xs {
	font-size: .875rem !important;
}

/* ファイルアップロード*/
.form-group>#inputFile {
	display: none;
}

/*class追加*/
.font-small {
	font-size: .875rem;
}

.w-6em {
	width: 6em;
}

.w-12em {
	width: 12em;
}

.w-10 {
	width: 10% !important;
}

.w-15 {
	width: 15% !important;
}

.w-20 {
	width: 20% !important;
}

.w-30 {
	width: 30% !important;
}

.w-40 {
	width: 40% !important;
}

.w-45 {
	width: 45% !important;
}

.w-60 {
	width: 60%;
}

.w-80 {
	width: 80%;
}

.mw-10em {
	min-width: 10em;
}

.mw-5em {
	min-width: 5.2em;
}




.w-form100txt {
	/*テキスト付き*/
	width: calc(100% - 1.3rem);
	margin-right: .3rem;
}

/*パスワード非表示*/
.pwhidden input[type="password"] {
	border: none;
	background: rgba(255, 255, 255, 0);
}

/*…略*/
.line-clamp {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	margin: 0;
}

.line-clamp2 {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	margin: 0;
}


/*トップ
------------------------------------------*/

/*リスト修正*/
.list-group.newslist>* {
	border-color: #666;
	border-left: none !important;
	border-right: none !important;
}

#db_alert .list-group.newslist li:last-of-type {
	border-bottom: none !important;
}

.list-group.iconlist {
	font-size: .9rem;
}

.list-group.iconlist i {
	font-size: 1.4rem;
	vertical-align: middle;
}

/*gap*/
.gaplist-3 {
	gap: 2rem;
}


/*お知らせ
------------------------------------------*/
#news .badge-area {
	width: 3.4em;
	font-size: 1.125em;
}

#news .badge-area .badge {
	border: solid #CC0000 1px;
	color: #CC0000;
	padding: .5em;
	margin: 0;
	line-height: 1 !important;
}

.list-group.checklist a {
	padding: .75em 0 .75em 2.75em;
	text-decoration-line: underline;
}

.list-group.checklist a::before {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 1.96em;
	height: 1.45em;
	margin: auto;
	font-family: 'forJR';
	font-size: 1.4em;
	content: "\e90d";
}

#news .newsdate,
#news .newstext {
	font-size: .875rem;
}

#news .newstext p:last-of-type {
	margin: 0;
}


/*社員管理-運転士一覧
------------------------------------------*/
/*日報*/
.event-color-list {
	font-size: .75rem
}

.event-color-list [class*="bg-"],
.calender [class*="bg-"] {
	padding: .3em;
	border-radius: .4em;
}

.event-color-list [class*="bg-"] {
	display: inline-block;
	width: 3em;
	height: 1.5em;
	margin-right: .5em;
	vertical-align: middle;
}

#daily-report .bg-confirmed {
	background: #00476D;
	border: 1px solid #00476D;
	color: #fff;
}

#daily-report .bg-unsettled {
	background: #FAFAFA;
	border: 1px solid #00476D;
	color: #00476D;
}

#daily-report .bg-nysubmitted {
	background: #FAFAFA;
	border: 1px solid #c00;
	color: #c00;
}

#daily-report .calender {
	/*自動カウントリセット*/
	counter-reset: number 0;
}

#daily-report .calender thead th {
	background: #E1F0FA;
}

.calender tbody td {
	padding: 0 !important;
}

#daily-report .calender .calender-area {
	position: relative;
	min-height: 7.5em;
	padding: .3rem .3rem .3rem 1.6rem;
}

#daily-report .calender .today {
	background-color: rgba(255, 120, 79, .5);
}


#daily-report .calender .nysubmitted {
	box-shadow: 0 0 0 1px rgba(204, 0, 0, 1) inset;
}

#daily-report .calender .this_m .calender-area {
	/*自動カウント親*/
	counter-increment: number 1;
}

#daily-report .calender .this_m .calender-area::before {
	/*自動カウント子*/
	position: absolute;
	font-size: .75rem;
	top: .15rem;
	left: .2rem;
	width: 1rem;
	height: 1rem;
	content: counter(number);
	color: #333;
	font-weight: bold;
	z-index: 2
}

#daily-report .calender .event {
	font-size: .625rem;
	font-weight: bold;
	text-align: center;
}

#daily-report #calendar_driver.calender .calender-area .event:not(:last-of-type) {
	margin-bottom: .3em;
}

/*社員管理-FM一覧
------------------------------------------*/
/*アコーディオン*/
#fm-accordion li .accordion-area {
	display: none;
}

#fm-accordion li .accordion-area.active {
	display: block;
}

#fm-accordion .accordion-btn {
	cursor: pointer;
}

#fm-accordion .accordion-btn::before {
	content: "＋";
	display: inline-block;
	width: 1.2em;
	text-align: center;
}

#fm-accordion .accordion-btn.active::before {
	content: "−";
}


/*得意先管理
------------------------------------------*/
button.btn.delete-scdl {
	padding: 0.2em !important;
	font-size: 1.2rem;
}

button.btn.delete-scdl2 {
	padding: 0 0.2em !important;
	font-size: 2rem;
	line-height: 1.1 !important;
}

button.btn.delete-scdl3 {
	width: 1.5em;
	height: 1.5em;
	padding: 0 !important;
	text-align: center;
	line-height: 1;
}

/* 日報
------------------------------------------*/
.btn-group.category .btn {
	padding: .6em 1em;
	border-color: #e0e0e0 !important;
	font-size: .875rem;
	color: #00476D
}

.btn-group.category .btn:hover {
	background-color: #f2faff;
}

.btn-group.category .btn-default.active {
	background-color: #E1F0FA;
	color: #333
}

.comment_space .comment_time {
	font-size: .75rem;
	margin: .75em auto 1.4em
}

#receipt_ul #inputPreview img {
	max-width: 100%;
}

#receipt_ul #inputFile {
	display: none;
}

/* 運行管理　車両一覧
------------------------------------------*/
#csv_ul #uploadCSV {
	display: none;
}


/* シフト管理
------------------------------------------*/
/*検索パネル*/
@media print {
	#search_panel {
		display: none !important;
	}
}

#search_panel {
	width: 300px;
	height: 100vh;
	/*
	height: calc(100vh - calc(7.5rem + 2px));*/
	overflow: auto;
}

#ordinarymain {
	width: calc(100% - 300px);
}

#ordinarymain #shift-calendar .tablewrap {
    max-height: calc(100vh - 420px);
    position: relative;
}

#ordinarymain #shift-calendar .tablewrap .fixed-v {
    position: sticky;
    top: 0;
    z-index: 1;
}

#ordinarymain #shift-calendar .tablewrap .fixed-h {
    position: sticky;
    left: 0;
    z-index: 1;
}

#ordinarymain #shift-calendar .tablewrap .fixed-base {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 2;
}

#ordinarymain #shift-calendar .tablewrap .fixed-base:before {
    content: '';
    position: absolute;
    top: -1px;
    left: -1px;
    width: 100%;
    height: 100%;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
}

#ordinarymain #shift-calendar .tablewrap .fixed-base:after {
    content: '';
    position: absolute;
    top: 1px;
    left: 1px;
    width: 100%;
    height: 100%;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
}

#ordinarymain #shift-calendar .tablewrap .fixed-v:before {
    content: '';
    position: absolute;
    top: -1px;
    left: -1px;
    width: 100%;
    border-top: 1px solid #ccc;
}
#ordinarymain #shift-calendar .tablewrap .fixed-v:after {
    content: '';
    position: absolute;
    top: 100%;
    left: -1px;
    width: 100%;
    border-bottom: 1px solid #ccc;
}

#ordinarymain #shift-calendar .tablewrap .fixed-h:before {
    content: '';
    position: absolute;
    top: -1px;
    left: -1px;
    height: 100%;
    border-left: 1px solid #ccc;
}
#ordinarymain #shift-calendar .tablewrap .fixed-h:after {
    content: '';
    position: absolute;
    top: -1px;
    left: 100%;
    height: 100%;
    border-right: 1px solid #ccc;
}

@media (max-width: 1200px) {
	#search_panel {
		width: 25%;
	}

	#ordinarymain {
		width: 75%;
	}
}

@media (max-width: 992px) {
	#search_panel {
		display: none
	}

	#ordinarymain {
		width: 100%;
	}
}


#searchlistdisplay h6 {
	background-color: #eee;
}

#searchlistdisplay .list-group a,
#modal-revision_history .list-group li {
	font-size: .875rem;
	color: #333;
}

#searchlistdisplay .list-group a.active {
	background-color: #E1F0FA;
	border-color: #dfe2e5;
}


#searchlistdisplay .list-group a p,
#modal-revision_history .list-group li p {
	margin: 0;
}

#searchlistdisplay .list-group a .customercode {
	opacity: .6;
	font-size: .75rem;
}

#searchlistdisplay .icon-triangle-exclamation-solid {
	font-size: 1.75rem;
	line-height: 1.2;
}

#searchlistdisplay .list-group a.alertsign {
	padding-left: 3.25rem;
	overflow: hidden;
}

#searchlistdisplay .list-group a.alertsign::before {
	position: absolute;
	top: 0;
	left: 1rem;
	bottom: 0;
	width: 1.5rem;
	height: 1.5rem;
	margin: auto;
	content: "\e913";
	font-size: 1.5rem;
	font-family: 'forJR';
	line-height: 1;
	color: #c00;
}

/*カレンダー イベント設定*/
#shift-calendar .event-color-list [class*=bg-] {
	color: #333;
}

#shift-calendar .event {
	background: #fff;
	border: 1px solid #ccc;
}

#shift-calendar .bg-rotation-draft {
	background: #E1F0FA;
	border: none;
}

#shift-calendar .bg-rotation {
	background: #E1F0FA;
	border: none;
}

#shift-calendar .bg-normal {
	background: #E2A651;
	border: none;
}

#shift-calendar .bg-normal-edit {
    background: #E2A651;
    border: red 1px solid;
}

#shift-calendar .bg-vicarious_approved {
	background: #C0A88C;
	border: none;
	color: #fff;
	text-align: left;
}

#shift-calendar .bg-vicarious_unapproved {
	background: #FFE505;
	border: none;
	text-align: left;
}

#shift-calendar .bg-spot {
	background: #C16A60;
	border: none;
	text-align: left;
}

#shift-calendar .bg-short {
	background: #CCC444;
	border: none;
	text-align: left;
}

#shift-calendar .bg-training {
	background: #647CA8;
	border: none;
	text-align: left;
}

#shift-calendar .bg-vacancy {
	background: #DD1717;
	border: none;
	color: #fff;
}

#shift-calendar .event.bg-vacancy {
	text-align: center;
}

#shift-calendar .bg-holiday {
	background: #699ED6;
	text-align: center;
}

#shift-calendar .bg-training,
#shift-calendar .bg-tentative {
	text-align: center;
}

#shift-calendar .event-color-list .d-inline-block:nth-of-type(-n+3) {
	margin-bottom: .5em;
}

/**/
#shiftInfoarea span.text-right {
	display: inline-block;
	width: 1.5em;
}

#shiftInfoarea .alertsign {
	font-size: 1.5em;
	vertical-align: middle;
}

/*シフトカレンダー*/
#shift-calendar .tablewrap {
	overflow: auto;
}

#shift-calendar table {
	border-color: #ccc;
}

#shift-calendar table tr>th,
#shift-calendar table tr>td {
	border-color: #ccc;
}

#shift-calendar table tr.alertarea>th {
	background-color: #fff;
	border-color: #fff;
	border-bottom-color: #ccc;
}

/* #shift-calendar .calender tr:first-of-type,
#shift-calendar .calender tr:nth-of-type(2),
#shift-calendar .calender tr th:first-of-type,
#shift-calendar .calender tr td:first-of-type {
	z-index: 9999 !important;
} */

#shift-calendar .calender thead th {
	padding: .5em;
	background: #EEEEEE;
	text-align: center;
	font-weight: normal;
	border-bottom: 1px solid #ccc;
	min-width: 100px;
	font-size: .875rem;
}

#shift-calendar #calendar_driver.calender thead th.driver,
#shift-calendar [id*="calendar_onsite_"].calender thead th.onsite {
	font-weight: bold;
	min-width: 176px;
}

#shift-calendar .calender thead th.sunday,
#shift-calendar .calender thead th.holiday {
	color: #CC0000
}

#shift-calendar .calender thead th.saturday {
	color: #029DF4
}

#shift-calendar .calender td {
	padding: .3rem !important;
	min-height: 3rem;
	vertical-align: top !important;
	background-color: #fff;
}

#shift-calendar #calendar_onsite_month.calender td.holiday {
	background-color: #BBBBBB;
}

#shift-calendar .btn.no-pointer{
    cursor: auto;
}

#shift-calendar .calender .driverbaseinfo p,
#shift-calendar .calender .workingdays p,
#shift-calendar .calender .shiftinfo p {
	margin: 0 !important;
}

#shift-calendar .calender .driverbaseinfo,
#shift-calendar .calender .shiftinfo {
	font-size: .875rem;

}

#shift-calendar .calender a.driverbaseinfo {
	color: #000
}

#shift-calendar .calender .bg-vacancy a.driverbaseinfo {
	color: #fff;
}

#shift-calendar .calender .workingdays {
	font-size: .75rem;
}

#shift-calendar .calender .event {
	font-size: .75rem;
}

#shift-calendar .calender .btn-group {
	display: block;
	padding: 0;
}

#shift-calendar .calender .btn-group-no-pointer {
	display: block;
	padding: 0;
    cursor: none;
}

#shift-calendar .calender button.btn {
	font-size: .75rem;
	padding: .3em;
	width: 100%;
	border-radius: 0.3rem;
}

#shift-calendar .calender button.btn-no-pointer {
	font-size: .75rem;
	padding: .3em;
	width: 100%;
	border-radius: 0.3rem;
    cursor: none;
}

#shift-calendar .calender tbody td[id^="driver"],
#shift-calendar .calender tbody td[id^="vehicle"] {
	position: relative;
	background-color: rgba(255, 255, 255, 0);
}

#shift-calendar .calender td .event {
	margin: 0 0 .35rem 0 !important;
}

#shift-calendar .calender td .cell {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: none !important;
	cursor: pointer;
	z-index: 0;
}

#shift-calendar .calender td .cell-no-pointer {
    background-color: white;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: none !important;
	z-index: 0;
}

#shift-calendar .calender td hr {
	height: 1px;
	margin: 0 0 .35rem 0;
	padding: 0;
	border: 1px;
	border-top: 1px dotted #333;
}

#shift-calendar .calender .driver.bg-vacancy {
	background: #CC0000;
	color: #fff;
	border-radius: 0;
}

#shift-calendar .vacansy_alert {
	display: inline-block;
	position: relative;
	padding: .8em 1.2em;
	background: #fae5e5;
	font-size: .625rem;
	margin: 0 0 1em 0;
}

#shift-calendar .vacansy_alert::after {
	display: block;
	position: absolute;
	right: 0;
	bottom: -1em;
	left: 0;
	width: 1.2em;
	height: 1em;
	margin: auto;
	content: '';
	background: linear-gradient(to top right, transparent 50%, #fae5e5 50%) no-repeat top left / 50% 100%,
		linear-gradient(to top left, transparent 50%, #fae5e5 50%) no-repeat bottom right/50% 100%;
}

#shift-calendar .dropdown-menu {
	font-size: .75rem
}

#shift-calendar .dropdown-menu .dropdown-item.disabled {
	pointer-events: none;
	cursor: not-allowed;
	opacity: .6;
}

#shift-calendar .vacancy {
    background: #FAFAFA;
    color: #c00;
    border: 1px solid #c00;
    border-radius: 0.3rem;
    z-index: 0;
}
#shift-calendar .vacancy:hover {
    color: #c00;
}
#shift-calendar .vacancy.selected {
    background: #CC0000;
    color: #fff;
}
#shift-calendar .vacancy.saved {
    color: #212529;
    border: 1px solid #ccc;
}
#shift-calendar .vacancy.saved.selected {
    color: #fff;
    border: 1px solid #c00;
}
#shift-calendar .vacancy.locked {
    pointer-events: none;
}

#shift-calendar .cell {
    background: white;
}

#shift-calendar .cell.selected {
    background: rgb(226, 240, 250);
}

/*shift設定用table*/
table.tablelist tr th,
table.tablelist tr td {
	padding: .25em 1em .25em 0
}

table.tablelist tr td:last-of-type {
	padding: .25em 0
}

#content_workday table.tablelist2 {
	margin-bottom: 2em !important;
}

table.tablelist2 tr th,
table.tablelist2 tr td {
	padding: .6em 1.5em .6em 0
}


table.tablelist2 tr td:last-of-type {
	padding: .6em 0
}

table.tablelist2 tr td p:last-of-type {
	margin-bottom: 0 !important;
}

/*日カレンダー*/
#shift-calendar #calendar_onsite_day.calender thead th:nth-of-type(n+2) {
	min-width: 2.75rem;
	border-left: none !important;
	border-right: none !important;
	vertical-align: bottom;
	padding: 0 !important;
}

#shift-calendar #calendar_onsite_day.calender .timescale {
	display: inline-block;
	width: 2em;
	font-size: .75rem;
	line-height: 1;
	margin-right: -2.75rem;
}

#shift-calendar #calendar_onsite_day.calender tbody td {
	height: 4rem;
}

#shift-calendar #calendar_onsite_day.calender tbody tr td:first-of-type {
	z-index: 9999;
}

#shift-calendar #calendar_onsite_day.calender tbody tr td:nth-of-type(n+2) {
	padding: 0 !important;
	position: relative;
	background-color: transparent;
}

#shift-calendar #calendar_onsite_day.calender tbody tr td:nth-of-type(n+2) .event {
	position: absolute;
	top: calc(50% - 1.4rem);
	bottom: 0;
	width: 100%;
	height: 2.8rem;
	margin: auto;
	text-align: left;
	padding-left: 1em;
    padding-top: 0.4em;
}

/*バッジ*/
.badge.shiftmodal {
	border: solid #707070 1px;
	color: #000;
	padding: .5em 1em;
	font-size: .6875rem;
	line-height: 1 !important;
	font-weight: normal;
	border-radius: 0;
}

#modal-preview_onsite .modal-dialog {
	max-height: 90%;
	overflow: auto;
}

#modal-revision_history .list-group {
	overflow: auto;
	max-height: calc(100vh - 13rem);
}

#modal-revision_history #revision_listarea {
	overflow: auto;
	height: 90vh !important;
}

/*シフト表プレビュー*/
#shift-calendar #shift-list.calender,
#shift-calendar #shift-list.calender th {
	font-size: .625rem
}

#shift-calendar #shift-list.calender tr:first-of-type,
#shift-calendar #shift-list.calender tr:nth-of-type(2),
#shift-calendar #shift-list.calender tr th:first-of-type,
#shift-calendar #shift-list.calender tr td:first-of-type {
	z-index: 1 !important;
}

#shift-calendar #shift-list.calender thead th {
	padding: .1em !important;
	min-width: 2em;
	background: #fff;
}

#shift-calendar #shift-list.calender td {
	padding: .1em !important;
	background-color: #eee;
}
.no-shift {
    padding: .1em !important;
	background-color: #eee !important;
}

#shift-calendar #shift-list.calender td.driver {
	font-weight: normal;
	padding: .8em !important;
	min-width: 8em;
	background: #fff;
}

#shift-calendar #shift-list.calender .driverbaseinfo {
	font-size: .625rem;
}

#shift-calendar #shift-list.calender td.shift {
	text-align: center;
	background-color: #fff;
	line-height: 1.2;
}

#shift-calendar #shift-list.calender .shifttime {
	font-size: .4375rem;
}

#shift-calendar #shift-list.calender .shiftname,
#shift-calendar #shift-list.calender .vicariousdrivername {
	font-size: .4375rem;
}

#shift-calendar #shift-list.calender .shiftname.shift-holiday {
	font-size: .4375rem;
}

/* Multiple Shift Selection */
.shift-selected {
    position: relative;
}

.vehicle-container .shift-selected::after {
    content: "";
    position: absolute;
    top: -5px;
    left: -5px;
    width: calc(100% + 10px);
    height: calc(100% + 10px);
    background-color: rgba(218, 250, 219, 0.5);
    z-index: 0;
}

#multiple-shift-dropdown .dropdown-item {
    cursor: pointer;
}

/* Multiple Driver Selection */
.driver-selected {
    position: relative;
}

.driver-selected::after {
    content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    width: calc(100%);
    height: calc(100%);
    background-color: #80F4E9;
    z-index: 0;
}

.driver-container .shift-selected::after {
    content: "";
    position: absolute;
    top: -7px;
    left: -7px;
    width: calc(100% + 14px);
    height: calc(100% + 14px);
    background-color: rgba(218, 250, 219, 0.5);
    z-index: 0;
}

/*シフト登録*/
#workingfield {}

.date i {
	cursor: pointer;
}

.date .input-group-addon:has(+ input:disabled) i {
	cursor: default;
}


/* アカウント管理
------------------------------------------*/
#accountmanage .accountbtnlist {
	gap: 1.5rem 0;
	width: 60%
}

#accountmanage .accountbtnlist .btn {
	border-radius: .5rem;
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 2.5;
}

#accountmanage .employeeNoSuggestionFrame{
    width: 100%;
    position: relative;
}
#accountmanage .employeeNoSuggestion{
    display:none;
    background:#fff;
    border:1px solid #c3c3c3;
	position: absolute;
	width: 100%;
    z-index: 1000;
}
#accountmanage .employeeNoSuggestion ul{
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
	padding:0px !important;
	margin-bottom: 0px !important;
}
#accountmanage .employeeNoSuggestion li{
    cursor:pointer;
	list-style:none;
    color:#000;
	padding:3px 5px;
}
#accountmanage .employeeNoSuggestion li:hover{
    background:#eee;
}

/* 集計：給与データ
------------------------------------------*/
/*詳細*/
#salary .salarydatainfo p {
	font-size: 1.25rem;
	margin: 0;
	line-height: 1.75;
}

#salary .salarydatainfo p .period {
	font-size: .75rem;
}

/* マイページ：パスワード変更
------------------------------------------*/
#setup .icon-eye {
	font-size: 1.4em;
	position: absolute;
	top: calc(50% - .7rem);
	right: .75rem;
	bottom: 0;
	margin: auto;
    color: #666;
}

/* edgeパスワードマスキングトグルボタンの非表示
------------------------------------------*/
::-ms-reveal {
    display: none;
}

/*削除ボタン*/
.a-cursor-pointer {
    cursor: pointer;
}
.list-unstyled:not(:first-child) {
    padding-top: 1.1rem;
    margin-top: 1.1rem !important;
    border-top: 1px solid #fff;
}
/* Start for multiple operation */
.btn-remove-operate-hours{
    display: none;
    margin-left: 15rem;
}
.operate-hours-container .list-unstyled:first-child .btn-add-operate-hours {
    margin-left: 15rem;
}
.operate-hours-container .list-unstyled:not(:first-child) .btn-add-operate-hours {
    margin-left: 1rem;
}
