@media screen and (-webkit-min-device-pixel-ratio:0) {
	input:not([type="file"]),select,textarea {
		padding: 2px;
		border-width: 1px;
	}
	:focus { outline: none; }
	/* --- onFocusピンク代替 --- */
	input:not([readonly]):focus-visible,select:focus-visible,textarea:not([readonly]):focus-visible {
		outline: 2px solid pink;
	}
}
a:link           { color:#0000EE; text-decoration:underline;}
a:visited        { color:#0000EE; text-decoration:underline;}
a:active         { color:#0000EE; text-decoration:underline;}
a:hover          { color:#00EE00; text-decoration:underline;}

/* 青色 */
.hyo-head            { background-color: #AFCAFF; font-size: 12px; color: #000000;}

/* ---------- table 項目文字サイズ12px ---------- */
.hyo-item1           { background-color: #F5F5F5; font-size: 12px; color: #000000; empty-cells: show; word-break: break-all;}
.hyo-item2           { background-color: #E5E5E5; font-size: 12px; color: #000000; empty-cells: show; word-break: break-all;}
.hyo-item3           { background-color: #FFFF99; font-size: 12px; color: #000000; empty-cells: show; word-break: break-all;}
.hyo-item4           { background-color: #FFFF00; font-size: 12px; color: #000000; empty-cells: show; word-break: break-all;}
.hyo-white           { background-color: #FFFFFF; font-size: 12px; color: #000000; empty-cells: show; word-break: break-all;}

/* 必須項目 */
.hissu-head				{ background-color:#FFFF00; }
.free-head				{ background-color:#FFFFFF; }

/* リードオンリー */
.readonly            { background-color:#EBEBEB;}
.select_readonly	 { background-color:#EBEBEB; pointer-events: none; } /* セレクトボックス用readonly */

/* ---------- ボタン ---------- */
.btn_l1 {
	width:80px;
	height:21px;
	background-color:#E9E9E9;
	/* padding: 2px; */
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#000000;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
}

.btn_l1_red {
	width:80px;
	height:21px;
	background-color:#ff4500;
	/* padding: 2px; */
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#ffffff;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
}

.btn_l1_blue {
	width:80px;
	height:21px;
	background-color:#4169e1;
	/* padding: 2px; */
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#ffffff;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
}

.btn_l2 {
	width:42px;
	height:21px;
	background-color:#E9E9E9;
	/* padding: 2px; */
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#000000;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
}

.btn_l3 {
	width:120px;
	height:21px;
	background-color:#E9E9E9;
	/* padding: 2px; */
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#000000;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
}

.btn_l4 {
	width:160px;
	height:21px;
	background-color:#E9E9E9;
	/* padding: 2px; */
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#000000;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
}

.btn_l5 {
	width:180px;
	height:21px;
	background-color:#E9E9E9;
	/* padding: 2px; */
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#000000;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
}

.btn_l5_blue {
	width:180px;
	height:21px;
	background-color:#4169e1;
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#ffffff;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
}

.btn_l {
	height:21px;
	background-color:#E9E9E9;
	/* padding: 2px; */
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#000000;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
	padding-left:8px;
	padding-right:8px;
}

.btn_l_red {
	height:21px;
	background-color:#ff4500;
	/* padding: 2px; */
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#ffffff;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
	padding-left:8px;
	padding-right:8px;
}

.btn_l_blue {
	height:21px;
	background-color:#4169e1;
	/* padding: 2px; */
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#ffffff;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
	padding-left:8px;
	padding-right:8px;
}

.btn_l_yellow {
	height:21px;
	background-color:#FFFF00;
	/* padding: 2px; */
	font-size: 12px;
	text-align:center;
	margin-right:3px;
	color:#000000;
	border-style: outset;
	border-width: 2px;
	border-color: #CCCCCC;
	padding-left:8px;
	padding-right:8px;
}

.dialog {
	overflow: hidden;
	position: fixed;
	height: 180px;
	width: 500px;
	display: none;
	border: 1px solid #808080;
	box-shadow: 2px 3px 5px #808080;
	background-color:#FFFFFF;
	z-index:1000;
	user-select: none;
	-ms-user-select: none;
}
.dialog-bar	{
	width: 100%;
	height: 2em;
	background-color:#FFFFFF;
}
.dialog-close {
	float: right;
	font-weight: bold;
	color: #696969;
	cursor: pointer;
}
.dialog-content {
	position: relative;
	border: 0;
	padding: .5em 1em;
	background: #fff;
	overflow: hidden;
	width: auto;
	height: auto;
}

ul.flexbox { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; align-items: center;}
ul.flexbox.row { flex-wrap: nowrap; }
ul.flexbox.item_space li { margin-right: 10px; }

/* ---------- ボタン点滅 ---------- */
.btn_blinking:enabled {
  animation: blinking 1s linear infinite normal;
}
@keyframes blinking {
  0%	{ background-color:#4169e1; color:#ffffff; }
  49.9%	{ background-color:#4169e1; color:#ffffff; }
  50%	{ background-color:#e9e9e9; color:#000000; }
  100%	{ background-color:#e9e9e9; color:#000000; }
}

.user-menu {
	position: relative;
	display: inline-block;
	margin: 20px;
	font-size: 16px;
}
.user-button {
	display: flex;
	align-items: center;
	background-color: #fff;
	border: none;
	padding: 8px 12px;
	cursor: pointer;
	border-radius: 4px;
}
.user-avatar {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	color: white;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
}

html, body, form {
	width: 100%;
}

.dir-menu-btn {
	text-decoration: none !important;
}
.dir-menu-btn:hover {
	color: inherit !important;
}

.bg-hyo-head {
	background-color: #AFCAFF;
}

/* ---------- 一覧テーブル ---------- */
.list-tbl {
	border-collapse: separate;
	border-spacing: 1px;
	background-color: #7f9cf5;
}
.list-tbl tr {
	height: 30px;
}
.list-tbl td,
.list-tbl th {
	padding: 2px;
}