.loader-screen{
	user-select: none;
	display: flex;
	justify-content: center;
	align-items: center;

	position: fixed;
	top: 0;
	left: 0;

	width:100vw;
	height:100vh;
	z-index: 999999;

	/*background-color: #20202050;
	font-size: 30px;*/
	background-color: #00000080;
	font-size: 40px;
	flex-direction: column;
}

.loader-screen .loader-wrap{
	/*
	background-color: #40404080;
	padding: 3px;
	border-radius: 50%;
	box-shadow: 0px 0px 40px 20px #40404080;
	*/
	user-select: none;
	color: #eee;
}

.loader-screen .loader-sub::after{
	content:'Loading...';
	font-size: 13px;
	font-weight:bold;
	color: #eee;
	user-select: none;
}
/* Flashメッセージ用 -- */

.message{
	padding:0.6em 1em;
	width: 100%;
	font-size:16px;
	z-index:95;
}
.message.success{
	background: #e3fcec;
	color: #1f9d55;
	border-color: #51d88a;
}
.message.warning{
	background: #fffabc;
	color: #8d7b00;
	border-color: #d3b800;
}
.message.error{
	background: #fcebea;
	color: #cc1f1a;
	border-color: #ef5753;
}

.message.unrecorded-error {
	background: #FF4747;
	color: #ffffff;
	border-color: #ff7070;
	cursor: pointer;
}

.message::before{
	font-family: 'Font Awesome 5 free';
	font-weight: 600;
	font-size:0.9em;
	margin-right:0.2em;
}
.message.success::before{
	content: '\f00c'; /* f058 */
}
.message.warning::before{
	content: '\f06a';
}
.message.error::before{
	content: '\f071';
}

.message.hidden{
	display:none;
}

/* -- Flashメッセージ用 */

/* パスワードリセット用 */
.login-form2 {
	font-size: initial;
}
.login-form2 label {
	display: block;
	margin-bottom: 5px;
}
.login-form-control {
	margin-bottom: 5%;
}
.login-form-control .input-style1 {
	display: block;
	max-width: 100%;
	width: 400px;
}
.error-message {
	color: red;
}
.login-wrapper2 .input label{
	font-size: 13px;
	font-weight: 700;
}
/* -- パスワードリセット用 */

/* フロントモーダル */
.modal-content {
	background: #FFFFFF;
	border-radius: 10px;
	text-align: left;
	position: unset;
	transform: unset;
	overflow-y: auto;
}
/* --フロントモーダル */

/* QRモーダル */
.qr-cont .box .qr-img {
	min-width: 170px;
	min-height: 170px;
	padding: 20px;
}
.qr-cont .box ol {
	width: fit-content;
	margin: 20px auto;
	text-align: left;
}
@media screen and (600px <= width < 961px) {
	.qr-cont .box ol {
		width: fit-content;
	}
}
@media screen and (961px <= width) {
	.qr-cont .box ol {
		width: fit-content;
		max-width: 100%;
		margin: 20px auto;
	}
}
/* --QRモーダル */


/* マイページアイコン画像 */
.staff-mypage-icon-img {
	width: 100px;
	height: 100px;
	background: no-repeat center;
	background-size: cover;
	border-radius: 50%;

	color: #ffffff;
	font-size: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #888;
	object-fit: cover;
}


/* ファイルアップロード */
.upl-img-list {
	display: flex;
	gap: 1rem;
}
.upl-img-list .upl-img-box{
	margin: 0.6rem;
}

/* アイコン画像 */
.staff-details-img {
	width: 150px;
	height: 150px;
	background: no-repeat center;
	background-size: cover;
	border-radius: 50%;

	color: #ffffff;
	font-size: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #888;
}
.change-status{
	cursor:pointer;
}

/* 請求一覧 */
.requested-paid-leave-status,
.requested-invoice-status{
	cursor:pointer;
}
.requested-paid-leave-status[data-requested_paid_leave_status_id="1"],
.requested-invoice-status[data-invoice_status_id="2"]{
	background: #FF4444;
}
.requested-paid-leave-status[data-requested_paid_leave_status_id="2"],
.requested-invoice-status[data-invoice_status_id="3"]{
	background: #4470FF;
}
.requested-paid-leave-status[data-requested_paid_leave_status_id="3"],
.requested-invoice-status[data-invoice_status_id="1"]{
	background: #DCDCDC;
}

/* チェックボックスをまとめるボックス */
.checkbox-container {
	display: flex; flex-wrap:wrap;
}
.checkbox-container .label-group2 {
	margin-right: 20px;
}

/* 資格管理システムのスタイル */
#qualifications-container {
	display: flex;
	overflow-x: auto;
	align-items: flex-start;
	gap: 15px;
}

.qualification-item {
	width: 300px;
	min-width: 300px;
	margin-top: 10px;
	position: relative;
}

.remove-qualification-btn {
	position: absolute;
	top: -10px;
	right: -10px;
}

.remove-qualification-btn img {
	width: 30px;
	height: 30px;
	-o-object-fit: contain;
	object-fit: contain;
}
/* 未打刻アラートモーダル用 */
.message.unrecorded-alert-modal {
	background: #ffffff;
	color: #FF4747;
	border-color: #ff7070;
}
