@charset "UTF-8";

/* カレンダー用テキストボックス */
.date_calendar {
	text-align: center;
	width: 7em;
}

/* 表示用ラベル　*/
label {
	margin-bottom: 0 !important;
}

/* 検索条件枠 */
.search-area {
	border: 1px solid gray;
	border-radius: 0.5em;
	margin-bottom: 1rem;
}

/* 検索条件ヘッダー */
.search-header {
	color: white;
	background: gray;
	border-bottom: 1px solid gray;
	border-radius: 5px 5px 0px 0px;
	padding: 5px 10px;
}

/* 検索条件コンテンツ */
.search-contents {
	padding: 10px;
}

/* 重要アイコン */
.important-icon {
	fill: red;
	vertical-align: middle;
}

.important-icon>svg {
	width: 1.5em;
	height: 1.5em;
	display: inline-block;
	margin-bottom: 1px;
}

/* 表示用ラベル */
label {
	margin-bottom: 0 !important;
}

/* 検索条件枠 */
.search-area {
	border: 1px solid gray;
	border-radius: 0.5em;
	margin-bottom: 1rem;
}

/* 検索条件ヘッダー */
.search-header {
	color: white;
	background: gray;
	border-bottom: 1px solid gray;
	border-radius: 5px 5px 0px 0px;
	padding: 5px 10px;
}

/* 検索条件コンテンツ */
.search-contents {
	padding: 10px;
}

/* 重要アイコン */
.important-icon {
	fill: red;
	vertical-align: middle;
}

.important-icon>svg {
	width: 1.5em;
	height: 1.5em;
	display: inline-block;
	margin-bottom: 1px;
}

/* チェックアイコン */
.check-icon {
	fill: limegreen;
	position:absolute;
	width: 60px;
    height: 60px;
    z-index: 10;
}

/*　不一致アイコン */
.disagreement-Icon {
	fill: var(--ftc-color);
	width:30px;
	height: 30px;
}

/*　一致アイコン */
.match-Icon {
	fill: limegreen;
	width:30px;
	height: 30px;
}

/* 間隙用のセル */
.td_margin {
	padding: 0px 3px;
}

/* 入力項目用のセル */
.td_input {
	text-align: left;
	display: flex;
	align-items: center;
}

/* 入力項目セル内のオブジェクトを上下中央寄せ */
.td_input svg, .td_input input {
	vertical-align: middle;
}

/* 縦並び時の選択項目用インデント */
.vertical-selected {
	margin-left: 0;
	overflow-wrap: break-word;
}

/* 入力項目 非活性 */
input[type="text"]:disabled, input[type="number"]:disabled, input[type="date"]:disabled {
    background-color: #EEE;
    border: 1px solid lightgray;
    border-radius: 1px;
}

/* 数値 右寄せ */
.input_number {
	text-align: right;
}

/* 画面サイズ対応用セル */
.td_switch_align {
	vertical-align: inherit;
}

/* 画面サイズ対応用領域 */
.div_switch_align {
	display: flex;
	flex-direction: row; /* PC上は横並び*/
}

/* メールアドレステキストボックス */
.input_mail {
	width: 200%;
}

/* 必須マーク */
.required::after {
	content: "*";
	color: red;
	margin-left: 2px;
}

/* エラーメッセージ */
.error-msg {
	color: red;
	white-space: nowrap;
	font-size: 12px;
	margin-left: 10px;
}

/* ファイル選択ボタン */
.select-file {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	background-color: #EFEFEF;
	margin: 0px 4px 0px 0px;
	padding: 1px 6px;
	border: solid 1px rgb(133, 133, 133);
	border-radius: 2px;
}
.select-file:hover {
	background-color: #e6eae6;
}
.select-file:active {
	background-color: #EFEFEF;
}

/* 日付項目 波ダッシュ */
.tilde::after {
	content: "～";
}

/* DataTable以外で作成したボタンのスタイル */
.customize-buttons > button {
    font-size: 0.88em;
    margin-right: 0.333em;
    margin-bottom: 0.333em;
    padding: 0.5em 1em;
    line-height: 1.6em;
}

/* ラベル 折り返し不可 */
.select-item-label {
	white-Space: nowrap;
	vertical-align: top;
}

/* 選択内容 折り返し可 */
.select-item-details-label {
	word-break: break-all;
}

/* 選択内容表示テーブル マージン列にコロンを入れる */
#selectedContentsTable .td_margin::after {
	content: ":";
}

/* 項目区切り線(破線) */
.horizontal-dashed-line {
	border-top: 1px dashed lightgray;
	margin: 0.25rem 0 0.25rem 0;
}

.heading {
	padding-top: 1rem;
}

@media screen and (max-width: 640px) {
	/* DataTableライクなボタン配置(スマホ表示時) */
	.move-to-datatable {
		text-align: center;
	}
}

@media screen and (min-width:641px){
	/* DataTableライクなボタン配置(PC表示時) */
	.move-to-datatable {
		margin-bottom: -40px;
		position: absolute;
		z-index: 1;
	}
	
	.dataTables_filter {
		min-height: 2.5rem;
	}
}

/* スマホ画面になったとき */
@media screen and (max-width: 991px) {
	/* 画面サイズ対応用セル */
	.td_switch_align {
		vertical-align: baseline;
		padding-top: 4px;
	}

	/* 画面サイズ対応用領域 */
	.div_switch_align {
		display: flex;
		flex-direction: column; /* スマホでは縦並び */
		width: fit-content;
	}

	/* Table要素 */
	#inputItemTable {
		width: 100%;
	}

	/* Table要素 縦並び */
	#inputItemTable>thead>tr>th, #inputItemTable>tbody>tr>td {
		display: block;
		width: auto;
	}

	/* 縦並び時の選択項目用インデント */
	.vertical-selected {
		margin-left: 0.5rem;
	}

	/* モバイル表示の際に幅を画面いっぱいに伸ばす */
	.adjust-full-width {
		width: 100%;
	}

	/* エラーメッセージ */
	.error-msg {
		color: red;
		white-space: nowrap;
		font-size: 12px;
		margin-bottom: 2px;
		margin-left: 0;
	}
	
	.label-padding-left{
		padding-left: 5%;
	}

	.heading {
		padding-top: 1rem;
	}
}