@import 'reset.css';
@import 'color.css';

/**** font ****/
/*
  MPLUS 1p font -> 日本語（ひらがな·カタカナ·日本語符号·漢字）
  roboto -> 日本語を除く英文、数字
*/
@import '../font/mplus1p/mplus1.css'; /* M PLUS 1 */
@import '../font/roboto/roboto.css'; /* roboto */

/* margin */
.m-0 {
	margin: 0px;
}
.m-5 {
	margin: 5px;
}
.m-10 {
	margin: 10px;
}
.m-15 {
	margin: 15px;
}
.m-20 {
	margin: 20px;
}
.m-25 {
	margin: 25px;
}
.m-30 {
	margin: 30px;
}

/* margin-left */
.ml-0 {
	margin-left: 0px;
}
.ml-5 {
	margin-left: 5px;
}
.ml-10 {
	margin-left: 10px;
}
.ml-15 {
	margin-left: 15px;
}
.ml-20 {
	margin-left: 20px;
}
.ml-25 {
	margin-left: 25px;
}
.ml-30 {
	margin-left: 30px;
}
.ml-35 {
	margin-left: 35px;
}
.ml-40 {
	margin-left: 40px;
}
.ml-45 {
	margin-left: 45px;
}
.ml-50 {
	margin-left: 50px;
}
.ml-auto {
	margin-left: auto;
}

/* margin-right */
.mr-0 {
	margin-right: 0px;
}
.mr-5 {
	margin-right: 5px !important;
}
.mr-10 {
	margin-right: 10px;
}
.mr-15 {
	margin-right: 15px;
}
.mr-20 {
	margin-right: 20px;
}
.mr-25 {
	margin-right: 25px;
}
.mr-30 {
	margin-right: 30px;
}
.mr-35 {
	margin-right: 35px;
}
.mr-40 {
	margin-right: 40px;
}
.mr-45 {
	margin-right: 45px;
}
.mr-50 {
	margin-right: 50px;
}

/* margin-top */
.mt-0 {
	margin-top: 0px;
}
.mt-1 {
	margin-top: 1px;
}
.mt-3 {
	margin-top: 3px;
}
.mt-5 {
	margin-top: 5px;
}
.mt-10 {
	margin-top: 10px;
}
.mt-15 {
	margin-top: 15px;
}
.mt-20 {
	margin-top: 20px;
}
.mt-25 {
	margin-top: 25px;
}
.mt-30 {
	margin-top: 30px;
}
.mt-35 {
	margin-top: 35px;
}
.mt-40 {
	margin-top: 40px;
}
.mt-50 {
	margin-top: 50px;
}

/* margin-bottom */
.mb-0 {
	margin-bottom: 0px;
}
.mb-5 {
	margin-bottom: 5px !important;
}
.mb-8 {
	margin-bottom: 8px;
}
.mb-10 {
	margin-bottom: 10px;
}
.mb-15 {
	margin-bottom: 15px;
}
.mb-20 {
	margin-bottom: 20px;
}
.mb-25 {
	margin-bottom: 25px;
}
.mb-30 {
	margin-bottom: 30px;
}
.mb-40 {
	margin-bottom: 40px;
}
.mb-50 {
	margin-bottom: 50px;
}
.mb-70 {
	margin-bottom: 70px;
}
.mb-90 {
	margin-bottom: 90px;
}

/* padding */
.p-0 {
	padding: 0px;
}
.p-5 {
	padding: 5px;
}
.p-10 {
	padding: 10px;
}
.p-15 {
	padding: 15px;
}
.p-20 {
	padding: 20px;
}
.p-25 {
	padding: 25px;
}
.p-30 {
	padding: 30px;
}

/* padding-left */
.pl-0 {
	padding-left: 0px;
}
.pl-5 {
	padding-left: 5px;
}
.pl-10 {
	padding-left: 10px;
}
.pl-15 {
	padding-left: 15px;
}
.pl-16 {
	padding-left: 16px;
}
.pl-20 {
	padding-left: 20px;
}
.pl-25 {
	padding-left: 25px;
}
.pl-30 {
	padding-left: 30px;
}
.pl-50 {
	padding-left: 50px;
}
.pl-70 {
	padding-left: 70px;
}

/* padding-right */
.pr-0 {
	padding-right: 0px;
}
.pr-5 {
	padding-right: 5px;
}
.pr-10 {
	padding-right: 10px;
}
.pr-15 {
	padding-right: 15px;
}
.pr-20 {
	padding-right: 20px;
}
.pr-25 {
	padding-right: 25px;
}
.pr-30 {
	padding-right: 30px;
}

/* padding-top */
.pt-0 {
	padding-top: 0px;
}
.pt-5 {
	padding-top: 5px;
}
.pt-10 {
	padding-top: 10px;
}
.pt-15 {
	padding-top: 15px;
}
.pt-20 {
	padding-top: 20px;
}
.pt-25 {
	padding-top: 25px;
}
.pt-30 {
	padding-top: 30px;
}
.pt-35 {
	padding-top: 35px;
}

/* padding-bottom */
.pb-0 {
	padding-bottom: 0px;
}
.pb-5 {
	padding-bottom: 5px;
}
.pb-10 {
	padding-bottom: 10px;
}
.pb-15 {
	padding-bottom: 15px;
}
.pb-20 {
	padding-bottom: 20px;
}
.pb-25 {
	padding-bottom: 25px;
}
.pb-30 {
	padding-bottom: 30px;
}

/* padding X (left + right) */
.px-0 {
	padding-left: 0px;
	padding-right: 0px;
}
.px-5 {
	padding-left: 5px;
	padding-right: 5px;
}
.px-10 {
	padding-left: 10px;
	padding-right: 10px;
}
.px-15 {
	padding-left: 15px;
	padding-right: 15px;
}
.px-16 {
	padding-left: 16px !important;
	padding-right: 16px !important;
}
.px-20 {
	padding-left: 20px;
	padding-right: 20px;
}
.px-25 {
	padding-left: 25px;
	padding-right: 25px;
}
.px-30 {
	padding-left: 30px;
	padding-right: 30px;
}

/* padding Y (top + bottom) */
.py-0 {
	padding-top: 0px;
	padding-bottom: 0px;
}
.py-5 {
	padding-top: 5px;
	padding-bottom: 5px;
}
.py-10 {
	padding-top: 10px;
	padding-bottom: 10px;
}
.py-15 {
	padding-top: 15px;
	padding-bottom: 15px;
}
.py-20 {
	padding-top: 20px;
	padding-bottom: 20px;
}
.py-25 {
	padding-top: 25px;
	padding-bottom: 25px;
}
.py-30 {
	padding-top: 30px;
	padding-bottom: 30px;
}

/* width */
.w-25 {
	width: 25%;
}
.w-33 {
	width: 33.3333%;
} /* 1/3 */
.w-50 {
	width: 50%;
}
.w-66 {
	width: 66.6667%;
} /* 2/3 */
.w-75 {
	width: 75%;
}
.w-80 {
	width: 80%;
}
.w-100 {
	width: 100%;
}
.w-px-20 {
	width: 20px;
}
.w-px-25 {
	width: 25px;
}
.w-px-34 {
	width: 34px;
}
.w-px-42 {
	width: 42px;
}
.w-px-90 {
	width: 90px;
}
.w-px-104 {
	width: 104px;
}
.w-px-106 {
	width: 106px;
}
.w-px-116 {
	width: 116px;
}
.w-px-132 {
	width: 132px;
}
.w-px-134 {
	width: 134px;
}
.w-px-152 {
	width: 152px;
}

/* height */
.h-23 {
	height: 23px;
}
.h-30 {
	height: 30px;
}
.h-32 {
	height: 32px;
}
.h-36 {
	height: 36px;
}
.h-38 {
	height: 38px;
}
.h-40 {
	height: 40px;
}
.h-42 {
	height: 42px;
}

/* font-size */
.fs-12 {
	font-size: 12px;
}
.fs-14 {
	font-size: 14px;
}

/* left */
.l-auto {
	left: auto !important;
}

/* gap */
.gap_5 {
	gap: 5px;
}

/* border-top */
.bt-1 {
	border-top: 1px solid var(--border-dark);
}

html,
body {
	min-width: 1600px;
	overflow-x: auto;
	font-family: 'M PLUS 1', 'Roboto';
}

form {
	display: contents;
}

/* Fields Basic Style */
input,
textarea,
select,
button {
	font-family: 'M PLUS 1', 'Roboto';
}
input,
textarea,
select {
	border: 1px solid var(--field-border);
	box-sizing: border-box;
}
textarea {
	resize: none;
}

/* readonly Event */
input[readonly],
textarea[readonly] {
	background-color: var(--gray-97) !important;
	color: var(--gray-70) !important;
    border: 1px solid var(--gray-80) !important;
}
input[type="checkbox"][readonly],
input[type="radio"][readonly] {
	color: var(--gray-70) !important;
}
select[data-readonly="true"] {
	background-color: var(--gray-97) !important;
	color: var(--gray-70) !important;
    border: 1px solid var(--gray-80) !important;
	pointer-events: none;
}

/* focus Event */
input:focus,
select:focus,
textarea:focus {
	background-color: var(--gray-blue-50);
	outline: 2px solid var(--primary-default);
	z-index: 1;
}

/* placeholder Event */
input::placeholder,
select::placeholder,
textarea::placeholder {
	color: var(--text-placeholder);
}
input:read-only::placeholder,
select:read-only::placeholder,
textarea:read-only::placeholder {
    opacity: 0;
}

/* error Event */
.error {
	background-color: var(--red-25);
	border: 1px solid var(--state-error);
}
.error_border {
	background-color: var(--red-25) !important;
	border: 1px solid var(--state-error) !important;
}
.error_text {
	display: flex;
	align-items: flex-start;
	font-size: 12px;
	color: var(--text-muted);
	margin-top: 8px;
}
.error_text img {
	margin-right: 8px;
}
.error_text span {
	width: calc(100% - 24px);
	color: var(--state-error) !important;
	font-size: 12px !important;
	word-break: break-all;
	line-height: 16px;
}

/* error Event */
.error {
	position: relative;
	border:0;
}
.error input, .error textarea, .error select {
	border: 2px solid var(--state-error) !important;
}
input.error, select.error, textarea.error {
	border: 2px solid var(--state-error) !important;
}
.error_message {
	position: absolute !important;
	z-index: 50 !important;
	bottom: -4px !important;
	left: 14px !important;
	padding: 2px 10px 2px 19px !important;
	font-size: 10px !important;
	text-wrap: nowrap !important;
	color: var(--common-white) !important;
	border: 1px solid var(--state-error) !important;
	background-image: url('../img/icon/icon_error_w.svg') !important;
	background-position: 3px center !important;
	background-repeat: no-repeat !important;
	background-size: 12px !important;
	background-color:  var(--state-error) !important;
	border-radius: 99px !important;
	display: none !important;
}

/* input - checkbox */
input[type='checkbox'] {
	width: 18px;
	height: 18px;
	background-color: var(--common-white);
	background-position: center 45%;
	background-repeat: no-repeat;
	margin: 0;
	cursor: pointer;
}
input[type='checkbox']:checked {
	border-color: var(--primary-default);
	background-image: url('../img/icon/icon_checkbox.svg');
	background-color: var(--primary-default);
}
/* checkbox - checked + readonly */
input[type='checkbox'][readonly]:checked {
	background-image: url(../img/icon/icon_checkbox_gray.svg);
}

/* input - radio */
input[type='radio'] {
	position: relative;
	width: 18px;
	height: 18px;
	margin: 0;
	border-radius: 50%;
	cursor: pointer;
}
input[type='radio']:checked {
	border-color: var(--primary-default);
}
input[type='radio']:disabled {
	cursor: initial;
}
input[type='radio']:checked:disabled::before {
	border-color: var(--field-disable-border) !important;
	background: radial-gradient(ellipse at center, #BBBBBB 0%, #BBBBBB 33%, #ffffff 37%, #ffffff 100%) !important;
}
input[type='radio']:checked:before {
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 100%;
	border-radius: 50%;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#18479b+0,18479b+33,ffffff+37,ffffff+100 */
	background: radial-gradient(ellipse at center, #18479b 0%, #18479b 33%, #ffffff 37%, #ffffff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
/* radio - checked + readonly */
input[type='radio'][readonly]:checked:before {
	background: radial-gradient(ellipse at center, #BBBBBB 0%, #BBBBBB 33%, var(--gray-97) 37%, var(--gray-97) 100%);
}

/* button style (primary-default color) */
/* 外郭線 button */
button {
	background-color: transparent;
	border: 1px solid var(--primary-default);
	color: var(--primary-default);
	transition: background-color 0.3s ease;
}

/* 基本 色 */
.btn_nofilled {
	background-color: var(--primary-color);
	border-radius: 0;
}

/* 色が満たされたボタンhover効果 */
.btn_filled:hover {
	background-color: var(--primary-dark) !important;
	border: var(--primary-dark) 1px solid;
}
.btn_filled.success_btn:hover {
	background-color: var(--green-600) !important;
	border: var(--green-600) 1px solid;
}
.btn_filled.error_btn:hover {
	background-color: var(--red-700) !important;
	border: var(--red-700) 1px solid;
}

/* 色がつまった button */
.btn_filled {
	background-color: var(--button-default);
	border-radius: 0;
	color: var(--common-white);
	border-radius: 0;
}
.btn_filled.success_btn {
	background-color: var(--green-500);
	border: var(--green-500) 1px solid;
}
.btn_filled.error_btn {
	background-color: var(--red-600);
	border: var(--red-600) 1px solid;
}

/* hover 効果 */
.btn_nofilled:hover {
	background-color: var(--gray-blue-100) !important;
}

.upload_btn {
	border: 1px solid var(--gray-40);
	box-sizing: border-box;
	color: var(--gray-40);
	font-weight: 500;
	margin-right: 4px;
	background-color: var(--common-white);
	transition: background-color 0.3s ease;
}

.upload_btn:hover {
	background-color: var(--gray-99);
}

.download_btn {
	border: 1px solid var(--primary-default);
	color: var(--primary-default);
	background-color: var(--common-white);
	font-weight: 500;
	box-sizing: border-box;
	transition: background-color 0.3s ease;
}

.download_btn:hover {
	background-color: var(--gray-blue-200); /* ホバーシー背景色変更 */
}

.realtime_fetch_btn {
	border: 1px solid var(--primary-default);
	color: var(--primary-default);
	background-color: var(--common-white);
	font-weight: 500;
	box-sizing: border-box;
	transition: background-color 0.3s ease;
}

.realtime_fetch_btn:hover {
	background-color: var(--gray-blue-200); /* ホバーシー背景色変更 */
}

.button_row {
	display: flex;
	align-items: center;
	width: 100%;
}

.reload_btn {
	border: 1px solid var(--primary-default);
	color: var(--primary-default);
	background-color: var(--common-white);
	font-weight: 500;
	box-sizing: border-box;
	transition: background-color 0.3s ease;
}

.reload_btn:hover {
	background-color: var(--gray-blue-200); /* ホバーシー背景色変更 */
}

.fileUpload_btn {
	background-color: var(--common-white);
	color: var(--gray-40);
	border: solid 1px var(--gray-40);
	font-weight: 500;
	box-sizing: border-box;
	transition: background-color 0.3s ease;
}

.fileUpload_btn:hover {
	background-color: var(--gray-99);
}

.del_btn {
	border: solid 1px var(--red-600);
	color: var(--red-600);
	background-color: var(--common-white);
	font-weight: 500;
	box-sizing: border-box;
	transition: background-color 0.3s ease;
}

.del_btn:hover {
	background-color: var(--red-25);
}

.mem_del_btn {
	background: url('../img/icon/icon_outlined_delete.svg') no-repeat center;
	border-radius: 0;
	border: 1px solid var(--red-600);
}

.mem_del_btn:hover {
	background-color: var(--red-25);
}

.btn_change_reviewer {
	transition: background-color 0.3s ease !important;
}

.btn_change_reviewer:hover {
	background-color: var(--gray-99) !important;
}

.preview_btn {
	transition: background-color 0.3s ease !important;
}

.preview_btn:hover {
	background-color: var(--gray-99) !important;
}

.file_sel_btn {
	display: flex;
	justify-content: center;
	align-items: center;
	border: solid 1px var(--blue-700);
	background-color: var(--common-white);
	color: var(--blue-700);
	font-weight: 500;
}
.file_sel_btn:hover {
	background-color: #e2f0ff;
}

.btn_progress {
	border: 1px solid var(--blue-600);
	background-color: var(--blue-600);
}

.btn_deleteTable {
	font-weight: 500;
	color: var(--red-600);
	border: 1px solid var(--red-600);
	background-color: var(--common-white);
}
.btn_deleteTable:hover {
	background-color: var(--red-25);
}

.btn_delete {
	width: 100%;
	height: 40px;
	background-color: transparent;
	border: 1px solid var(--red-600);
	font-size: 14px;
	font-weight: 500;
	color: var(--red-600);
}
.btn_delete:hover {
	background-color: var(--red-25);
}
.add_row button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	width: 100%;
	height: 40px;
	background-color: var(--blue-50);
	color: var(--blue-700);
	border: none;
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' stroke='%234290DDFF' stroke-width='2' stroke-dasharray='3%2c 6' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e");
}
.add_row button:hover {
	background-color: var(--blue-100);
}

/* select */
select {
	-webkit-appearance: none; /* chrome, edge, safari */
	-moz-appearance: none; /* firefox */
	appearance: none;
	cursor: pointer;
	padding: 0 30px 0 16px;
	background-image: url('../img/icon/icon_select_arrow.svg');
	background-repeat: no-repeat;
	background-position: center right 16px;
}

/* modal */
.modal_wrap {
	position: fixed;
	z-index: 10002;
	width: 100%;
	height: 100%;
	display: none;
	justify-content: center;
	align-items: center;
}
.modal_wrap.on {
	display: flex;
}
.modal_wrap .modal_box {
	position: relative;
	z-index: 2;
	padding: 40px 26px 24px;
	box-sizing: border-box;
	background-color: var(--common-white);
}
.modal_wrap .modal_box .modal_close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 22px;
	height: 22px;
	background-color: var(--navy-50);
	padding: 0;
	border: none;
	border-radius: 50%;
	line-height: 0;
}
.modal_wrap .modal_box .modal_title {
	font-size: 22px;
	font-weight: 700;
	color: var(--text-primary);
	padding-bottom: 8px;
	border-bottom: 1px solid var(--common-black);
	margin-bottom: 18px;
}
.modal_wrap .modal_box .modal_content {
	margin-bottom: 20px;
}
.modal_wrap .modal_box .btn_box {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
}
.modal_wrap .modal_box .btn_box button {
	box-sizing: border-box;
	font-size: 14px;
	font-weight: 500;
}
.modal_wrap .modal_bg {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--common-black);
	opacity: 0.6;
}

/* input datepicker custom */
input.datepicker {
	background-image: var(--calendar-icon);
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 16px 16px;
	cursor: pointer;
}
.qs-datepicker-container {
	border: 1px solid var(--primary-default);
	-webkit-box-shadow: 4px 4px 14px 0 rgba(0, 0, 0, 0.15);
	box-shadow: 4px 4px 14px 0 rgba(0, 0, 0, 0.15);
	border-radius: 0;
}
.qs-controls {
	background-color: var(--common-white);
	padding: 15px 15px 0;
}
.qs-squares {
	padding: 10px 15px 10px 15px;
}
.qs-square:not(.qs-empty):not(.qs-disabled):not(.qs-day):not(.qs-active):hover {
	background-color: var(--primary-default);
	font-weight: 500;
	color: var(--common-white);
	border-radius: 50%;
}
.qs-month-year {
	display: flex;
	flex-direction: row-reverse;
	gap: 5px;
	font-weight: 600;
	line-height: 1.3;
}
.qs-month-year .qs-year,
.qs-month-year .qs-month {
	padding: 0;
}
.qs-month-year .qs-year:before,
.qs-month-year .qs-month:before {
	display: none;
}
.qs-month-year .qs-year:after {
	content: '年';
}
.qs-month-year:not(.qs-disabled-year-overlay):hover {
	border-bottom: 1px solid var(--primary-default);
}
.qs-arrow {
	height: 35px;
}
.qs-day {
	font-size: 14px;
	font-weight: 600;
	color: var(--primary-dark);
}
.qs-square {
	font-size: 14px;
	height: 2.5625em;
	border-radius: 50%;
}
.qs-current {
	color: var(--primary-default);
	text-decoration: underline;
	font-weight: 600;
}
.qs-current:hover {
	color: var(--primary-light);
	font-weight: 600;
	text-decoration: none;
}
.qs-current.qs-active,
.qs-active {
	border-radius: 50%;
	background-color: var(--primary-dark);
	color: var(--common-white);
	text-decoration: none;
}
.qs-overlay {
	padding-top: 25px;
}
.qs-overlay .qs-overlay-month-container {
	flex-grow: 0.9;
}
.qs-overlay .qs-overlay-year {
	width: 90%;
	font-size: 14px;
}
.qs-overlay .qs-overlay-year:focus {
	outline: 0 none;
}
.qs-overlay .qs-submit {
	width: 50%;
	text-align: center;
	min-width: 80px;
}
.qs-btn-container {
	padding: 10px 0 15px 0;
	margin: 0 16px;
	color: var(--navy-30);
	border-top: 1px solid var(--border-primary);
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.qs-btn-inner-container {
    column-gap: 7px;
	display: flex;
	align-items: center;
}
.qs-close-btn {
	position: relative;
	width: 22px;
	height: 22px;
	border-radius: 99px;
	border: 0;
	background-color: var(--navy-50);
	cursor: pointer;
}
.qs-close-btn::after {
	position: absolute;
	content: '';
	top: 6px;
	left: 5.5px;
	display: block;
	width: 10px;
	height: 10px;
	background-image: url('../img/icon/icon_datepicker_close.svg');
	background-repeat: no-repeat;
	background-position: center;
}
.qs-update-btn {
	width: 60px;
	height: 28px;
    background-color: var(--primary-default);
	color: var(--common-white);
	border: 1px solid var(--primary-default);
	border-radius: 99px;
	font-size: 12px;
    font-weight: bold;
	cursor: pointer;
}
.qs-update-btn:hover {
    background-color: var(--primary-dark);
}
.qs-today-btn {
	width: 60px;
	height: 28px;
	color: var(--blue-700);
	border: 1px solid var(--blue-700);
	border-radius: 99px;
	font-size: 12px;
	cursor: pointer;
}
.qs-today-btn:hover {
    color: var(--blue-900);
    background-color: var(--gray-97);
    border: 1px solid var(--blue-900);
}

/* input datepicker custom fin */
.disabled {
	background-color: var(--gray-95) !important;
	border-color: var(--field-disable-border) !important;
	color: var(--state-disabled-text) !important;
	pointer-events: none !important;
}

/* table */
#myGrid {
	width: 100%;
	height: 100%;
}
.ag_wrap {
	position: relative;
	width: 100%;
	height: calc(100% - 54px);
}
.ag-header {
	border-bottom: none;
	margin-bottom: -1px;
}
.ag-header-cell-label {
	justify-content: center;
	font-weight: 700;
	font-size: 14px;
}
.ag-header-container {
	background-color: var(--gray-95);
}
.ag-header-row-column-filter {
	background-color: var(--common-white);
}
.ag-header-cell-text {
	font-weight: 600;
	font-family: 'M PLUS 1', 'Roboto';
}
.ag-cell {
	font-family: 'M PLUS 1', 'Roboto';
	color: var(--text-primary);
	border: 1px solid var(--border-tertiary);
	border-left: none;
	box-sizing: border-box;
}
.ag-cell:last-child {
	border-right: none;
}
.ag-floating-filter {
	border: 1px solid var(--border-tertiary);
	box-sizing: border-box;
	margin-bottom: -2px;
}
.ag-header-cell input[type='text'] {
	width: 100%;
	color: var(--text-primary);
	border: 1px solid var(--border-tertiary);
	box-sizing: border-box;
}
.ag-header-cell input[type='text']:focus {
	outline: 0 none;
	border: 1px solid var(--blue-700);
	box-shadow: none;
}
.ag-header-cell select {
	height: 32px;
	cursor: pointer;
	border: 1px solid var(--field-table-border);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: var(--select-arrow) var(--bg-default) no-repeat 95% 50%/17px auto;
	font-size: 14px;
	color: var(--text-primary);
	border-radius: 4px;
	padding-left: 10px;
}
.ag-header-cell select:focus {
	outline: 0 none;
	border: 1px solid var(--blue-700);
	box-shadow: none;
}
.ag-header-cell input[type='date'] {
	height: 32px;
	cursor: pointer;
	border: 1px solid var(--field-table-border);
	font-size: 14px;
	color: var(--text-primary);
	border-radius: 4px;
	padding-left: 0px;
	margin-top: 0;
}
.ag-header-cell input[type='date']:focus {
	outline: 0 none;
	border: 1px solid var(--blue-700);
	box-shadow: none;
}
.ag-header-row-column {
	background-color: var(--gray-blue-100);
}
.ag-text-field-input-wrapper:before {
	display: none;
}
.ag-input-wrapper {
	mask-image: none;
	background-color: var(--bg-default);
	-webkit-mask-image: none;
}
.ag-header-row .ag-header-row-column-filter .ag-floating-filter {
	border: 1px solid var(--border-tertiary);
	box-sizing: border-box;
}

.ag-header-container .ag-header-row-column-filter .ag-floating-filter {
	border: 1px solid var(--border-tertiary);
	box-sizing: border-box;
}
.ag-header-container .ag-header-row-column-filter .ag-header-cell {
	border: 1px solid var(--border-tertiary);
	border-left: none;
	border-bottom: none;
}
.ag-paging-panel {
	height: 64px;
}

/* modal */
.modal {
	position: fixed;
	display: none;
	justify-content: center;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1300;
}

.modal__wrap {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 3;
	padding: 80px;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
}
.modal__box {
	position: relative;
	height: 100%;
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: flex-end;
}

.modal_title_box {
	display: flex;
	margin-bottom: 20px;
	align-items: center;
	margin-bottom: 20px;
	flex-direction: column;
}
.modal__box .btn_modal_close {
	width: 22px;
	height: 22px;
	text-indent: -99999px;
	background-color: transparent;
	border: none;
	background: var(--navy-50) url('../img/icon/icon_modal_close.svg') no-repeat center;
	border-radius: 999px;
	margin-bottom: 10px;
}

.modal_body {
	position: relative;
	z-index: 2;
	min-width: 524px;
	width: 100%;
	max-height: calc(100% - 44px);
	padding: 30px;
	text-align: center;
	background-color: rgb(255, 255, 255);
	border-radius: 10px;
	box-shadow: 0 2px 3px 0 rgba(34, 36, 38, 0.15);
	box-sizing: border-box;
}

.modal_bg {
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 100%;
	background-color: #666666;
	opacity: 0.6;
}

.dim_bg {
	position: absolute;
	z-index: 10000;
	width: 100%;
	height: 100%;
	background-color: #666666;
	opacity: 0.6;
	display: none;
}

.modal_title {
	display: flex;
	width: 100%;
	color: var(--text-primary);
	font-size: 24px;
	font-weight: bold;
	text-align: left;
	border-bottom: 1px solid var(--common-black);
	padding-bottom: 8px;
}

/* align */
.justify-start {
	justify-content: flex-start !important;
}
.justify-center {
	justify-content: center;
}
.justify-end {
	justify-content: flex-end;
}
.justify-between {
	justify-content: space-between;
}
.justify-around {
	justify-content: space-around;
}
.justify-evenly {
	justify-content: space-evenly;
}

.items-start {
	align-items: flex-start;
}
.items-center {
	align-items: center;
}
.items-end {
	align-items: flex-end;
}
.items-stretch {
	align-items: stretch;
}

.mx-auto {
	margin-left: auto;
	margin-right: auto;
}

/* text align */
.text-center {
	text-align: center;
}
.text-left {
	text-align: left;
}
.text-right {
	text-align: right;
}

/* flex */
.d-flex {
	display: flex;
}
.d-inline-flex {
	display: inline-flex;
}

.flex-row {
	flex-direction: row;
}
.flex-column {
	flex-direction: column;
}
.flex-row-reverse {
	flex-direction: row-reverse;
}
.flex-column-reverse {
	flex-direction: column-reverse;
}

.flex-1 {
	flex: 1 1 0%;
}
.flex-auto {
	flex: 1 1 auto;
}
.flex-initial {
	flex: 0 1 auto;
}
.flex-none {
	flex: 0 0 auto;
}

.note_text {
	padding-top: 20px;
	padding-left: 20px;
	color: var(--text-muted);
	border-top: 1px solid var(--border-dark);
}
.note_text.depth2 {
	padding-top: 10px;
	border: none;
	padding-left: 20px;
}
.note_text.depth2_input {
	padding-top: 10px;
	margin-left: 50px;
	border: none;
}
.note_text.depth2_input textarea {
	height: 150px;
	width: calc(100% - 15px);
	text-align: left;
	white-space: pre-wrap;
	font-size: 16px;
    padding-left: 10px;
	color: var(--text-secondary);
}
.note_text .note_first_row {
	display: inline;
}
.note_text .note_second_row {
	display: inline-block;
	text-indent: 25.6ch;
	white-space: normal;
}

/* contents */
.header_box {
	padding: 15px;
	box-sizing: border-box;
	background-color: var(--gray-90);
	margin-bottom: 20px;
}
.header_box ul {
	display: flex;
	flex-direction: column;
	font-size: 14px;
	color: var(--text-primary);
}
.header_box ul li {
	margin-bottom: 10px;
}
.header_box ul li:first-of-type {
	margin-bottom: 6px;
}
.header_box ul li:last-of-type {
	margin-bottom: 0;
}
.header_box ul li span {
	position: relative;
	padding-left: 8px;
}
.header_box ul li .btn_date_select {
	width: 50px;
	height: 25px;
	font-size: 12px;
	font-weight: 500;
	color: var(--gray-40);
	border: 1px solid var(--gray-40);
	background-color: var(--common-white);
	margin-left: 8px;
	transition: background-color 0.3s ease;
}
.header_box ul li .btn_date_select.disabled {
	background-color: var(--gray-97) !important;
	color: var(--gray-70) !important;
}
.header_box ul li .btn_date_select:hover {
	background-color: #f8f8f8;
}

/* table */
.table_wrap {
	padding-top: 5px;
	border-top: 1px solid var(--border-dark);
}
.table_wrap_no_border {
	padding-top: 5px;
}

.table_wrap .text_box {
	height: 140px;
	padding: 10px 16px;
	font-size: 16px;
	color: var(--text-secondary);
	line-height: 1.5;
	border: 1px solid var(--border-secondary);
	box-sizing: border-box;
	overflow-y: auto;
}
.table_wrap .table_num {
	position: relative;
	height: 25px;
	border-bottom: 1px solid var(--gray-blue-500);
	margin-top: 20px;
}
.table_wrap .table_num div {
	width: 60px;
	height: 25px;
	position: relative;
}
.table_wrap .table_num div:first-child::before {
	content: '';
	position: absolute;
	top: 0;
	z-index: 1;
	display: block;
	width: 60px;
	border-bottom: 26px solid var(--gray-blue-300);
	border-right: 8px solid transparent;
	box-sizing: border-box;
}
.table_wrap .table_num span {
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 45%;
	transform: translate(-50%, -50%);
	font-size: 16px;
	font-weight: 500;
	color: var(--primary-dark);
}
.table_wrap > select {
	width: 165px;
	height: 40px;
	font-size: 16px;
	color: var(--text-secondary);
	margin-bottom: 5px;
}

/* page button (PREV, NEXT button) */
.page_btn_wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}
.page_btn_wrap button {
	width: 105px;
	height: 50px;
	font-size: 14px;
	font-weight: 500;
}

.modal_title_close_box {
	display: flex;
	width: 100%;
	justify-content: flex-end;
	align-items: center;
}

.modal_title_text_box {
	display: flex;
	width: 100%;
	justify-content: flex-start;
	align-items: center;
}

.modal_content {
	width: 100%;
	max-height: 689px;
}

.insert_file_section {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 18px;
	background-color: var(--blue-50);
	height: 63px;
	border: 1px solid var(--blue-100);
	box-sizing: border-box;
}

.file_item {
	justify-content: flex-start;
    padding-left: 14px;
    position: relative;
}

.file_name {
	font-size: 14px;
	font-weight: 500;
	color: var(--text-primary);
}

/* 実際 X ボタン */
.file_remove_btn {
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	width: 10px;
	height: 10px;
	background: url('/img/icon/icon_close_gray.svg') no-repeat center;
	background-size: contain;
	border: none;
	cursor: pointer;
}

.explain_txt {
	font-size: 12px;
	color: var(--text-muted);
	text-align: left;
	margin-bottom: 16px;
}

.modal_text_area {
	width: 100%;
	max-height: 257px;
	height: 257px;
	overflow-y: auto;
	background-color: var(--gray-99);
	border: 1px solid var(--border-secondary);
	box-sizing: border-box;
	padding: 16px;
	text-align: left;
	margin-bottom: 30px;
}

.text_area_title {
	font-size: 16px;
	font-weight: bold;
	color: var(--text-primary);
}

.text_area_txt {
	font-size: 14px;
	color: var(--text-primary);
	margin-top: 10px;
}

.red_txt {
	color: var(--state-error);
}

/* edit text align */
.edit_right {
	text-align: right;
}
.edit_center {
	text-align: center;
}

/* textArea */
/* Basic textArea */
.text_area_wrap {
	padding-top: 10px;
	border-top: 1px solid var(--gray-20);
	margin-bottom: 40px;
}
.text_area_wrap .text_box {
	height: 140px;
	padding: 10px 16px;
	font-size: 16px;
	color: var(--text-secondary);
	line-height: 1.5;
	border: 1px solid var(--border-secondary);
	box-sizing: border-box;
	overflow-y: auto;
	width: 100%;
	white-space: pre-line;
}
.remarks_wrap {
	margin-bottom: 0;
}

.white-space{
	white-space: pre-line;
}

/* Large size textArea */
.text_area_wrap.large {
	height: calc(100% - 28px);
}
.text_area_wrap.large .text_box {
	height: 100%;
}

/* multiple textArea */
.text_area_wrap.multiple {
	margin-bottom: 40px;
}
.text_area_wrap.multiple:last-of-type {
	margin-bottom: 0;
}
.text_area_wrap.multiple .text_box {
	height: 265px;
	padding: 10px 16px;
	font-size: 16px;
	color: var(--text-secondary);
	line-height: 1.5;
	border: 1px solid var(--border-secondary);
	box-sizing: border-box;
	overflow-y: auto;
}
.text_area_wrap.multiple textarea {
	width: 100%;
}

/* Date Select Modal */
.modal_wrap .modal_box {
	width: 400px;
}
.date_select_modal .modal_content {
	padding-bottom: 25px;
	border-bottom: 1px solid var(--border-primary);
}
.date_select_modal .modal_content p {
	font-size: 16px;
	font-weight: 500;
	color: var(--primary-dark);
	margin-bottom: 8px;
}
.date_select_modal .modal_content div {
	display: flex;
	align-items: center;
	height: 40px;
	gap: 10px;
}
.date_select_modal .modal_content div select,
.date_select_modal .modal_content div input {
	height: 100%;
	font-size: 16px;
}
.date_select_modal .modal_content div select {
	width: 135px;
}
.date_select_modal .modal_content div input {
	padding: 0 16px;
}
.date_select_modal .modal_content div input.date {
	width: 95px;
}
.date_select_modal .modal_content div input.year {
	width: 100px;
}
.date_select_modal .btn_box button {
	width: 135px;
	height: 40px;
}

/* Emphasized text colors */
.text_primary_dark {
	font-weight: 500 !important;
	color: var(--primary-dark);
}

.text_purple {
	font-weight: 500 !important;
	color: var(--purple-800);
}

/* background colors */
.bg_color_gray {
	background-color: var(--gray-97);
}
.bg_color_purple {
	background-color: var(--purple-50);
}
.bg_color_blue {
	background-color: var(--blue-50);
}

/* border colors */
.border-b-gray-blue {
	border-bottom: 1px solid var(--gray-blue-500);
}
.border-b-purple {
	border-bottom: 1px solid var(--purple-100);
}

/* unit box */
.table_wrap .unit_box {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 20px;
	margin-bottom: 10px;
}
.table_wrap .unit_box p {
	display: flex;
	align-items: center;
	width: 165px;
	height: 40px;
	padding-left: 10px;
	font-size: 16px;
	color: var(--text-secondary);
	border-bottom: 1px solid var(--border-secondary);
	box-sizing: border-box;
}

table thead tr th div select,
table tbody tr td div input {
	z-index: 1;
}
table thead tr th div span,
table tbody tr td div span {
	position: relative;
	z-index: 2;
}

/* company_table */
.table_title_description{
	font-size: 14px;
	font-weight: 400;
}
.table_title_left {
	display: flex;
	align-items: baseline; /* ← キーワード:テキスト baseline 合わせ */
}

.title-main {
	font-weight: 500;
}

.title-sub {
	font-size: 14px;
	font-weight: 400;
}
.company_table {
	width: 100%;
	table-layout: fixed;
}
.company_table tbody th {
	position: relative;
	width: 275px;
}
.company_table tbody th.date_th {
	/* position: relative; */
	width: 140px;
}
.company_table tbody th > div {
	position: absolute;
	top: 5px;
	left: 0;
	width: 100%;
	height: calc(100% - 5px);
	padding: 0 16px;
	font-size: 16px;
	font-weight: 500;
	color: var(--primary-dark);
	background-color: var(--blue-100);
	border-bottom: 1px solid var(--gray-blue-500);
	display: flex;
	align-items: center;
	box-sizing: border-box;
}
.company_table tbody th div span {
	position: relative;
	padding-left: 16px;
	box-sizing: border-box;
	text-align: left;
}
.company_table tbody th div span:before {
	position: absolute;
	top: 4.5px;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background-color: var(--primary-dark);
}
.company_table tbody td {
	height: 45px;
	padding-top: 5px;
	font-size: 16px;
	font-weight: 400;
	color: var(--text-secondary);
}
.company_table tbody td .table_flex_item {
	display: flex;
	height: 100%;
	align-items: center;
}
.company_table tbody td .table_flex_item > div {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	margin-left: 16px;
	padding: 0 16px;
	box-sizing: border-box;
}
.company_table tbody td .table_flex_item > div:before {
	position: absolute;
	left: 0;
	bottom: 0;
	content: '';
	width: calc(100%);
	height: 1px;
	border-bottom: 1px solid var(--border-secondary);
}
.company_table tbody td .table_flex_item > div .unit {
	margin-left: 10px;
}
.company_table tbody td .table_flex_item > div strong {
	font-size: 15px;
	font-weight: 500;
	color: var(--text-primary);
}
.company_table tbody td .table_flex_item .code_box {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 200px;
	height: 40px;
	background-color: var(--gray-99);
	border: 1px solid var(--border-secondary);
	box-sizing: border-box;
	margin-bottom: 5px;
}
.company_table tbody td .table_flex_item .text_box {
	width: 100%;
	height: 140px;
	padding: 10px 16px;
	border: 1px solid var(--border-secondary);
	box-sizing: border-box;
	overflow-y: auto;
	line-height: 1.5;
}

/* company_table_wrap - item width size & align */
.company_table tbody td .table_flex_item .item_small {
	min-width: 170px;
	max-width: 170px;
}
.company_table tbody td .table_flex_item .item_medium {
  	min-width: 200px;
}
.company_table tbody td .table_flex_item .item_rest_full {
	width: 100%;
	/* width: calc(100% - 170px); */
}
.company_table tbody td .table_flex_item .item_quarter {
	width: 356px;
}
.company_table tbody td .table_flex_item .item_half {
	width: 50%;
}
.company_table tbody td .table_flex_item .item_full {
	width: 100%;
}
.company_table tbody td .table_flex_item .item_column {
	align-items: flex-start;
	flex-direction: column;
}
.company_table tbody td .table_flex_item .item_column .item_span {
	position: relative;
	width: 100%;
}
.company_table tbody td .table_flex_item .pl-0 {
	padding: 0;
}
.company_table tbody tr.category_tr td .table_flex_item .item_full {
	margin-left: 5px;
}

.company_table tbody td .table_flex_item .align_right {
	justify-content: flex-end;
}

/* capital_table_wrap */
.capital_table {
	width: 100%;
	font-size: 16px;
	color: var(--text-secondary);
}
.capital_table thead tr th {
	padding-top: 5px;
}
.capital_table thead tr th div {
	height: 45px;
	padding: 0 16px;
	font-weight: 500;
	color: var(--text-primary);
	border-top: 1px solid var(--border-divider);
	border-bottom: 1px solid var(--border-divider);
	background-color: var(--gray-95);
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}
.capital_table thead tr th:first-of-type,
.capital_table thead tr td:first-of-type {
	width: calc(100% - 225px - 140px);
	padding-right: 2.5px;
}
.capital_table thead tr th:nth-of-type(2),
.capital_table thead tr td:nth-of-type(2) {
	width: 225px;
	padding-right: 2.5px;
	padding-left: 2.5px;
}
.capital_table thead tr th:last-of-type,
.capital_table thead tr td:last-of-type {
	width: 140px;
	padding-left: 2.5px;
}
.capital_table tbody tr td {
	position: relative;
	height: 50px;
	box-sizing: border-box;
}
.capital_table tbody tr td > div {
	position: absolute;
	top: 0;
	height: 100%;
	display: flex;
	align-items: center;
	padding: 0 16px;
	box-sizing: border-box;
	border-bottom: 1px solid var(--border-secondary);
}
.capital_table tbody tr td:first-of-type div {
	width: calc(100% - 2.5px);
	left: 0;
	justify-content: flex-start;
}
.capital_table tbody tr td:nth-of-type(2) div {
	width: calc(100% - 5px);
	left: 2.5px;
	justify-content: flex-end;
}
.capital_table tbody tr td:last-of-type > div {
	width: calc(100% - 2.5px);
	right: 0;
	justify-content: center;
}

/* balancesheet_table */
.balanceSheet_table {
	width: 100%;
	font-size: 16px;
    color: var(--text-secondary);
    table-layout: fixed;
}
.balanceSheet_table:last-of-type {
	margin-bottom: 0;
}
.balanceSheet_table thead tr th,
.balanceSheet_table tbody tr td {
	align-content: center;
}
.balanceSheet_table thead tr th {
	padding-top: 5px;
}
.balanceSheet_table thead tr th .table_flex_item {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 45px;
	gap: 5px;
}
.balanceSheet_table thead tr th .table_flex_item > div {
	min-width: 200px;
	height: 100%;
	color: var(--text-primary);
	padding: 0 16px;
	font-weight: 500;
	background-color: var(--gray-95);
	border-top: 1px solid var(--border-divider);
	border-bottom: 1px solid var(--border-divider);
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}
.balanceSheet_table thead tr th .table_flex_item .table_th,
.balanceSheet_table tbody tr td .table_flex_item .table_th {
	justify-content: flex-start;
	text-align: left;
}

.balanceSheet_table tbody tr td .table_flex_item .table_th {
	color: var(--text-primary);
}
.balanceSheet_table tbody tr td .table_flex_item .table_depth1_th {
	position: relative;
	justify-content: flex-start;
	font-size: 18px;
	font-weight: 500;
	box-sizing: border-box;
	color: var(--text-primary);
	border-top: 1px solid var(--border-dark);
}
.balanceSheet_table tbody tr td .table_flex_item .table_depth2_th {
  padding-left: 48px;
}
.balanceSheet_table tbody tr td {
	position: relative;
	height: 55px;
	box-sizing: border-box;
}
.balanceSheet_table:not(.ratio_table) tbody tr:first-child td {
	height: 55px;
	padding-top: 10px;
}
.balanceSheet_table tbody tr td .table_flex_item {
	display: flex;
	height: 100%;
	gap: 5px;
}
.balanceSheet_table tbody tr td .table_flex_item div {
  	min-width: 200px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding: 0 16px;
	box-sizing: border-box;
	border-bottom: 1px solid var(--border-secondary);
}

.balanceSheet_table tfoot tr td {
	padding-top: 10px;
}
.balanceSheet_table tfoot tr td .table_flex_item {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 45px;
	font-weight: 500;
	gap: 5px;
}
.balanceSheet_table tfoot tr td .table_flex_item div {
	min-width: 200px;
	height: 100%;
	color: var(--text-primary);
	padding: 0 16px;
	border-top: 1px solid var(--border-divider);
	border-bottom: 1px solid var(--border-divider);
	display: flex;
	align-items: center;
	justify-content: flex-end;
	box-sizing: border-box;
}
.balanceSheet_table tfoot tr td .table_flex_item .table_th {
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	font-weight: 500;
	color: var(--common-black);
	gap: 2px;
	background-color: var(--gray-95);
}

/* balanceSheet_table - item width size & align */
.bill_table .table_flex_item .table_th.w_px_200,
.balanceSheet_table .table_flex_item .table_th.w_px_200 {
	min-width: 200px;
}
.bill_table .table_flex_item .table_th.w_px_320,
.balanceSheet_table .table_flex_item .table_th.w_px_320 {
	min-width: 320px;
}
.bill_table .table_flex_item .table_th.w_35,
.balanceSheet_table .table_flex_item .table_th.w_35 {
	width: 35%;
}
.bill_table .table_flex_item .table_th.w_40,
.balanceSheet_table .table_flex_item .table_th.w_40 {
	width: 40%;
}
.bill_table .table_flex_item .table_th.w_70,
.balanceSheet_table .table_flex_item .table_th.w_70 {
	width: 70%;
}
.bill_table .table_flex_item .table_th.w_85,
.balanceSheet_table .table_flex_item .table_th.w_85 {
	width: 85%;
}
.bill_table .table_flex_item .table_th.w_100,
.balanceSheet_table .table_flex_item .table_th.w_100 {
	width: 100%;
}
.bill_table .table_flex_item .item_full,
.balanceSheet_table .table_flex_item .item_full {
	width: 100%;
}

/* update color */
.yellow {
	background-color: var(--yellow-400) !important;
}

/* loading */
.loading {
	position: absolute;
	z-index: 9999;
	top: 0;
	left: 0;
	width: 100dvw;
	height: 100dvh;
	background-color: rgba(0, 0, 0, 0.4);
	display: flex;
	align-items: center;
	justify-content: center;
}
.loading img {
	scale: 0.3;
}

/* contents */

input.datepicker {
	position: absolute;
	bottom: 0;
	left: -2px;
	width: 0;
	height: 0;
	padding: 0;
	outline: none;
	background-color: transparent;
	border: none;
}
.dateText {
	display: inline-block;
	min-width: 80px;
	padding-left: 0;
}
.dateText:before {
	display: none;
}

/* display */
.display_none { display: none;}
.display_block { display: block !important;}

/* disabled Event */
:disabled, input[disabled],
textarea[disabled], select[disabled] {
	opacity: 1;
	background-color: #ccc !important;
	border-color: var(--field-disable-border) !important;
	color: var(--state-disabled-text) !important;
}
:disabled::placeholder {
	color: var(--state-disabled-text) !important;
}
button:disabled {
	background-color: var(--gray-95) !important;
	border-color: var(--field-disable-border) !important;
	color: var(--state-disabled-text) !important;
}
button:disabled:hover {
	background-color: var(--gray-95) !important;
	border-color: var(--field-disable-border) !important;
	color: var(--state-disabled-text) !important;
}

/* Chrome, Safari, Edge, Opera */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* Firefox */
input[type=number] {
	-moz-appearance: textfield;
}
div:hover > span.error_message,
h4:hover > span.error_message {
	display: block !important;
}

.keep-linebreak {
	white-space: pre-line !important;
}