@CHARSET "UTF-8";

body {
	font-family: "メイリオ", sans-serif;
	font-size: 1rem;
}

.i-kan {
	ime-mode: active;
}
.i-han {
	ime-mode: inactive;
}
.-i-num {
	ime-mode: disabled;
}

.chk_lg {
	width: 1.25rem;
	height: 1.25rem;
}

.feather {
	width: 16px;
	height: 16px;
	vertical-align: text-bottom;
}

.text-required {
	color: red;
}

.text-reference {
	color: gray;
	font-size: 0.9rem;
}

table.table td {
	padding: 10px;
	vertical-align: middle;
}

table tr.sel-tr {
	cursor: pointer;
}

/* DataTables調整 */
div.dataTables_wrapper div.dataTables_filter input {
	width: 100%;
}

/* flatpickr */
.flatpickr-current-month {
	display: flex;
	justify-content: center;
}

.cur-year {
	order: 1
}

.cur-month:before	{
	 content: "年　"
}

.cur-month {
	order: 2
}

/* TOPに戻るボタン */
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 2.0rem;
}
#page-top a {
	background: #09c;
	text-decoration: none;
	color: #fff;
	width: 75px;
	padding: 10px 0;
	text-align: center;
	display: block;
	border-radius: 10px;
}
#page-top a:hover {
	text-decoration: none;
	background: #00BFFF;
}

/* エラー表示 */
div.err_area {
	width: 100%;
	color: red;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}

div.err_area ul {
	list-style: none;
}

/* サイドバー */
.sidebar {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	z-index: 100; /* ナビゲーションバーの背面 */
	padding: 60px 0 0; /* ナビゲーションバーの高さ */
	box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);

	background-color: #09c;
}

.sidebar-sticky {
	position: relative;
	top: 0;
	height: calc(100vh - 60px);
	padding-top: .5rem;
	overflow-x: hidden;
	overflow-y: auto; /* ビューポートがコンテンツより短い場合、スクロール可能なコンテンツ */
}

@supports ((position: -webkit-sticky) or (position: sticky)) {
	.sidebar-sticky {
		position: -webkit-sticky;
		position: sticky;
	}
}

.sidebar .nav-link {
	font-weight: 500;
	color: #FFF;
}

.sidebar .nav-link:hover {
	background-color:#00BFFF;
}

.sidebar .nav-link .feather {
	margin-right: 4px;
	color: #999;
}

.sidebar .nav-link.active {
	background-color: #32CCFF;
}

.sidebar .nav-link:hover .feather,
.sidebar .nav-link.active .feather {
	color: inherit;
}

.sidebar-heading {
	font-size: .75rem;
	text-transform: uppercase;
}

.sidebar i.fa {
	width: 20px;
	height: 20px;
}

/* コンテンツ */

[role="main"] {
	padding-top: 100px; /* 固定ナビゲーションバーの余白+40px */
}

/* トップナビゲーション */
.navbar {
	background-color: #09c;
}
.navbar-brand {
	padding-top: 1rem;
	padding-bottom: 1rem;
	font-size: 1.2rem;
}

.navbar .form-control {
	padding: .75rem 1rem;
	border-width: 0;
	border-radius: 0;
}

.form-control-dark {
	color: #fff;
	background-color: rgba(255, 255, 255, .1);
	border-color: rgba(255, 255, 255, .1);
}

.form-control-dark:focus {
	border-color: transparent;
	box-shadow: 0 0 0 3px rgba(255, 255, 255, .25);
}

/* ログインページ */
body.page_login input.[name='login_id'],
body.page_login input.[name='login_pw'] {
	width: 200px;
	ime-mode: disabled;
}

/* 現場管理登録画面 */
img.btn_map {
	width: 50px;
	height: 50px;
	margin-right: 20px;
	cursor: pointer;
}
img.btn_map:hover {
	opacity: 0.5;
}

/* 背景色追加 */
.bg-registing {
	background-color: #F2CE3F!important;
}
.bg-registered {
	background-color: #EAFAF0!important;
}
.bg-confirmed {
	background-color: #BDC3C7!important;
}

@media print {
	nav.navbar,
	nav.sidebar {
		display: none !important;
	}
}