/*このディレクトリに適用されるCSSを記述する*/

/*暫定*/
select,
textarea,
input[type="text"],
input[type="number"],
input[type="date"] {
	font-size: 1em;
	padding: 4px;
	line-height:1.5;
}

.text_red {
	color:#ff0000;
}
.bold {
	font-weight: bold;
}

#h4_01 {
	margin-top: -8em;
	padding-top: 8em;
}

#selected_data_area {
	display: flex;
	width: 100%;
}
.selected_data_block {
	width: 50%;
	padding: 0.5em;
}

.highlight_block {
	background-color: #e8e8e8;
}

.second_header {
	display: flex;
	align-items: center;
    margin-top: 20px;
}

.select_pager_area {
	display: flex;
	justify-content: space-between;
	margin-left: 2em;
	flex-grow: 5;
}
.select_pager_area form {
	margin: 0;
}

.select_table {
	margin-bottom: 1em;
}
.select_table th {
	white-space: nowrap;
}
.select_table td {
	text-align: center;
}


.vartical {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.text_smaller {
/*	font-size: smaller;*/
	font-size: 12px;
}


.button_area{
	display: flex;
    justify-content: space-around;
}

.section_flex_area {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
.section_block {
	width: calc(50% - 2em);
	margin: 1em;
	border: 1px solid #bbb;
	padding: 1em;
}
.section_header {
	font-size: 20px;
	line-height: 1.5;
	padding: 8px;
	font-weight: bold;
}
#ceremony_cremate {
	color: #ffffff;
	background-color: #095795;
}
#only_cremate {
	color: #ffffff;
	background-color: #0a665e;
}
#only_ceremony {
	color: #000000;
	background-color: #ffc107;
}
#only_institution {
	color: #000000;
	background-color: #dbdbdb;
}
.section_text {
	min-height: 10em;
}
.section_form_block {
	text-align: right;
}

.back_gray {
	/*選択できない項目の背景色*/
	background-color: #bbb;
}

/*管理画面トップの空き状況テーブル*/
.reserve_table_000 th.th_date {
	width: 6em;
	text-align: center;
}
.reserve_table_000 td {
	text-align: center;
	vertical-align: middle;
}

/*予約者情報*/
.radio_button_block {
	display: flex;
	align-items: center;
	margin-bottom: 0.5em;
}
.radio_button_item:first-of-type {
	width: 10em;
}
.radio_button_item label {
	margin: 0;
}

.select_box_block {
	display: flex;
	align-items: center;
	margin-bottom: 0.5em;
}
.select_box_item:first-of-type {
	width: 10em;
}
.select_box_item label {
	margin: 0;
}
.input_block {
	display: flex;
	align-items: center;
	margin-bottom: 0.5em;
}
.input_item:first-of-type {
	width: 10em;
}
.input_item label {
	margin: 0;
}
.input_item input[type="text"] {
	width: 20em;
}

/*式場と利用日を選択*/
.reserve_table_030 th.th_date {
	width: 6em;
	text-align: center;
}
.reserve_table_030 td {
	text-align: center;
	vertical-align: middle;
}
.reserve_table_030 td label {
	margin: 0;
}

/*通夜と告別式時間の選択*/
/*
.select_block_060 {
	margin-bottom: 1em;
}
.select_block_060 select {
	font-size: 1em;
	padding: 4px;
}
*/

/* .reserve_table_050 {
} */
.reserve_table_050 td {
	text-align: center;
}

.reserve_table_060 input[type="number"] {
	width: 4em;
	text-align: right;
}

.vigil_room_alert span {
	color: #ff0000;
	font-weight: bold;
}

/*テーブル　その他の施設利用の追加*/
/*
#table_060_01 {
	width: 100%;
}
#table_060_01 tr td:last-of-type {
	text-align: left;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
#table_060_01 tr td:last-of-type label {
	display: flex;
	align-items: baseline;
	width: 8em;
}
#table_060_01 tr td:last-of-type label input[type="radio"] {
	margin: 0 0.5em 0 0;
}
#table_060_01 tr td:last-of-type select {
	font-size: medium;
	padding: 0.5em;
}
#table_060_01 tr td:last-of-type input[type="number"] {
	width: 3em;
	font-size: medium;
	text-align: right;
}
#table_060_01 tr td:last-of-type > span {
	width: 8em;
}
*/

/*予約者の選択*/
.radio_button_item label:not(:last-of-type) {
	margin-right: 1em;
}
.radio_button_item label input[type="radio"] {
	margin-right:0.5em;
}

/*霊安室の選択*/
.select_block_070 {
	margin-bottom: 1em;
}

.reserve_table_070 td {
	text-align: center;
}

/*法要室の選択*/
.select_block_080 {
	margin-bottom: 1em;
}
.select_block_080 .select_item {
	display: flex;
	align-items: center;
}
.select_block_080 .select_item span {
	width: 10em;
}
.select_block_080 .select_item label:not(:last-of-type) {
	margin-right: 1em;
}


.reserve_table_080 td {
	text-align: center;
}
.reserve_table_080 td label {
	margin: 0;
}


.houyou_calendar_area {
	display: flex;
	flex-wrap: wrap;
}

.houyou_calendar_block {
	width: 50%;
	min-width: 400px;
}
.month_block {
	box-sizing: border-box;
	padding: 0.5em;
}
.month_block > table {
	width: 100%;
	table-layout: fixed;
}
.month_block > table td,
.month_block > table th {
	text-align: center;
	padding: 4px 0;
	white-space: nowrap;
}
.month_block > table td {
	background-color: #ffffff;
}
.month_block > table td.blank_date {/*空のセル*/
	background-color: #898989;
}
.month_block > table td.out_of_range {/*予約範囲外の日付のセル*/
	background-color: #bbb;
}
.month_block > table td.vacant_none label {/*法要室の空きが無い日付セル*/
	color: #ff0000;
}


.month_block > table td label {
	margin: 0;
}
.month_block > table th.back_pink {
	background-color: #ff8a82;
}
.month_block > table th.back_blue {
	background-color: #82cbff;
}
.houyou_vacant {
	font-size: 14px;
}

.require {
	font-weight:bold;
	color: #ff0000;
}

/*利用者情報入力*/
#reserve_table_100 {
	table-layout: fixed;
}

#reserve_table_100 th {
	width: 30%;
}

#reserve_table_110 {
	table-layout: fixed;
}

#reserve_table_110 th {
	width: 30%;
}
@media (max-width: 991px) {
	#reserve_table_100 th,
	#reserve_table_100 td {
		display:block;
	}
	#reserve_table_100 th {
		width: auto;
	}
}

/* .select_block_100 {
} */
.select_block_100 .select_item {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.select_block_100 .select_item:not(:last-of-type) {
	margin-bottom: 0.5em;
}
.select_block_100 label {
	display: flex;
	align-items: center;
	margin: 0;
}
.select_block_100 label:not(:last-of-type) {
/*	margin: 0 1em 0 0;*/
	margin: 0 0.5em 0 0;
}
.select_block_100 label input[type="checkbox"],
.select_block_100 label input[type="radio"] {
	width: 1em;
	height: 1em;
}

.select_block_100 input[type="number"] {
	width: 4em;
	text-align: right;
}
/*.select_block_100 .select_item_zip span {
/*	margin-right:2em;*/
/* } */
.select_block_100 .select_item_zip input[type="text"] {
	width: 6em;
}

.select_block_100 .select_item span {
	width: 6em;
}
.select_block_100 #BirthDay_JP_era {
/*	margin-right: 1em;*/
	margin-right: 0.5em;
	padding: 6px;
}
.select_block_100 .fixed_death_date {
	padding: 6px;
}
.select_block_100 .select_item > div > .fixed_death_date:first-of-type {
	/*margin-right: 1em;*/
	margin-right: 0.5em;
}
.select_block_100 .fixed_death_date label {
	margin-right: 1em;
}

.select_block_100 .total_use_count_item {
	margin-top: 2em;
}

.form_address {
	/*住所入力欄*/
	width: 20em;
}
.form_note {
	/*備考入力欄*/
	width: 20em;
}

.entry p.date_note {
	margin: 0 0 0 1em;
}

.flex {
	display: flex;
}


/*予約照会*/
.result_area {
	margin-top: 2em;
}
.search_radio_block label {
	margin: 0;
}
.search_radio_block label:not(:last-of-type) {
	margin-right: 0.5em;
}
#search_result_table tr.cancel td {
	background-color: #7e7e7e;
/*	text-decoration: line-through;*/
}
#search_result_table th:first-of-type {
	/*予約進捗状況*/
	width: 7em;
}
#search_result_table tr:nth-of-type(odd) {
	background-color: inherit;
}
#search_result_table tr:nth-of-type(4n),
#search_result_table tr:nth-of-type(4n+1) {
	background-color: rgba(0,0,0,.05);
}
.maikasou {
	color: #ff0000;
	font-weight:bold;
}

/*予約修正*/
.top_button_area {
	display: flex;
	align-items: center;
	margin-bottom: 0.5em;
}
.top_button_area div:nth-of-type(n+2) {
	margin-left: 1em;
}
#cancel_button_block {
	margin-left: auto;
}
#cancel_button_block button {
	background-color: #ff0000;
	color: #ffffff;
	font-weight: bold;
	width: 4em;
}

.edit_alert_message_area {
	margin: 1em 0;
	border: 2px dashed #0000ff;
	padding: 0.5em;
}
.edit_alert_message_area p {
	margin: 0 0 0 1em;
	text-indent: -1em;
	color: #0000ff;
}

.result_message_area p {
	color: #ff0000;
	font-weight: bold;
}


/*予約修正　基本情報*/
.basic_info_area {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}
.basic_info_block {
	margin: 0.2em;
}
.basic_info_block span:first-of-type {
	color: #3e7cad;
}

/*予約修正　事業者*/
.company_info_block {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}
.company_info_item {
	width: 30%;
	border: 1px solid #bbb;
	padding: 0.5em;
	box-sizing: border-box;
}

.company_info_block .radio_button_block,
.company_info_block .select_box_block,
.company_info_block .input_block {
	flex-direction: column;
	align-items: flex-start;
}

.company_info_block .input_item input[type="text"] {
	width: 100%;
}

.company_info_area .second_header button,
.institution_info_area .second_header button,
.user_info_area .second_header button {
/*	margin-bottom: 20px;*/
	margin-left: auto;
}

/*予約修正　施設*/
.reserved {
	background-color: #bfeaff;/*予約した設備の背景色*/
}
/*予約修正　利用者情報*/
.edit_user_radio_block label {
	margin: 0;
}
.edit_user_radio_block label:not(:first-of-type) {
	margin-left: 1em;
}

.edit_user_input_block {
	display: flex;
	align-items: center;
}
.edit_user_input_block:nth-of-type(n+2) {
	margin-top: 0.5em;
}
.edit_user_input_block label {
	margin: 0;
}
.edit_user_input_block label:not(:first-of-type) {
/*	margin-left: 1em;*/
	margin-left: 0.5em;
}
.edit_user_input_block select {
	padding: 6px;
}

.edit_user_button_block {
	margin: 0.5em 0;
}
.edit_user_button_block label {
	margin: 0;
}

.edit_user_zip {
	margin-left: 2em;
	width: 6em;
}
.edit_user_address {
	width: 20em;
}

.edit_user_count {
	flex-direction: column;
	align-items: flex-start;
}
.edit_user_count label {
	margin: 0 0 0.5em 0!important;
	width: 8em;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.edit_user_count input[type="number"] {
	width: 4em;
	text-align: right;
}

/*予約　取消*/
.cancel_campany_block {
	justify-content: flex-start;
}
.cancel_campany_block > div {
	width: auto;
}

/*予約　埋火葬許可*/
.reserve_block {
	margin-bottom: 1em;
}
.reserve_block table {
	width: 100%;
}
.reserve_block table tr th:first-of-type {
	width: 16em;
}

.permit_cremate_block {
	justify-content: flex-start;
}
.permit_cremate_block > div:first-of-type {
	margin-right: 1em;
	margin-bottom: 1em;
}
#permit_cremate_item {
	flex-grow: 2;
}
/*#permit_cremate_item form {
/*	display: flex;*/
/*	align-items: center;*/
/* } */
#permit_cremate_item form > div:first-of-type {
	margin-bottom: 1em;
}
#permit_cremate_item span {
	background-color: #bbb;
	padding: 4px 8px;
}
#permit_cremate_item select,
#permit_cremate_item input[type="text"] {
	margin: 0 0.5em;
}

/*予約　料金収受*/
.collect_block {
	justify-content: flex-start;
}
.collect_block > div:first-of-type {
	margin-right: 1em;
	margin-bottom: 1em;
}
#collect_item {
	flex-grow: 2;
}
#collect_item > div:nth-of-type(2) {
	margin: 1em 0;
}
#collect_item span:first-of-type {
	background-color: #bbb;
	padding: 4px 8px;
}
#collect_item label {
	display: flex;
	align-items: center;
}
#collect_item input[type="checkbox"] {
	width: 1em;
	height: 1em;
	margin-right: 0.5em;
}
.input_amount {
	width: 5em;
	text-align: right;
}
.amount_cell {
	text-align: right!important;
}

/*お知らせ登録編集*/
/* .news_list_table {
} */
.news_list_table td:first-of-type {
	text-align: center;
}
.news_edit_table {
	min-width: 600px;
	margin: 0 auto 2em;
}
.news_edit_table th {
	width: 14em;
}
.news_edit_table td img {
	width: 200px;
	height: auto;
	margin: 0.5em;
	border: 1px solid #bbb;
}
.news_edit_table td textarea {
	width: 20em;
	height: 4em;
	resize: auto!important;
}
.news_radio_block {
	display: flex;
	align-items: center;
}
.news_radio_block label {
	margin: 0 0.5em;
	display: flex;
	align-items: center;
}
.news_radio_block label input[type="radio"] {
	width: 1em;
	height: 1em;
	margin-right: 0.2em;
}
.news_button_block {
	display: flex;
	justify-content: space-around;
}

/*サービス停止期間登録編集*/
/* .outage_list_table {
} */
.outage_list_table td:first-of-type {
	text-align: center;
}
.outage_edit_table {
	min-width: 600px;
	margin: 0 auto 2em;
}
.outage_edit_table th {
	width: 14em;
}
.outage_edit_table td textarea {
	width: 20em;
	height: 4em;
	resize: auto!important;
}
.outage_radio_block {
	display: flex;
	align-items: center;
}
.outage_radio_block label {
	margin: 0 0.5em;
	display: flex;
	align-items: center;
}
.outage_radio_block label input[type="radio"] {
	width: 1em;
	height: 1em;
	margin-right: 0.2em;
}
.outage_button_block {
	display: flex;
	justify-content: space-around;
}
.term_input_area {
	display: flex;
	flex-direction: column;
}
.term_input_area > div {
	display: flex;
	align-items: center;
	justify-content: space-around;
	margin-bottom: 0.5em;
}
.term_input_area > div:nth-of-type(2) {
	writing-mode: vertical-rl;
}

.term_input_area select {
	padding: 8px;
}

/* 2022028 pdf印刷用追加 */
/* 印刷 */

.print_area .input_wrap {
    display: flex;
    flex-direction: column
}

.choise_pdf {
    margin: 0 10px;
}

.btn-wrap {
    text-align: center;
    padding-top: 50px;
}

.btn-wrap .print-btn {
    max-width: 150px;
    width: 100%;
    padding: 5px 20px;
}

.btn-wrap .print-btn.btn-blue {
    color: #fff;
    background-color: #3e7cad;
    border: 2px solid #255c86;
    border-radius: 3px;
}

.btn-wrap .print-btn.btn-blue:hover {
    border: 2px solid #3885c0;
}

/* スマホ */
@media (max-width: 991px) {
    .print_area .input_wrap {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .print_area .input_wrap label {
        width: 50%;
    }
}

@media (max-width: 450px) {
    .print_area .input_wrap {
        flex-direction: column;
        flex-wrap: nowrap;
    }

    .print_area .input_wrap label {
        width: 100%;
    }

}


/*帳票出力*/
#output_date_block {
	text-align: center;
	margin-bottom: 2em;
}
.output_button_area {
	display: flex;
	justify-content: space-evenly;
}
.output_button_item {
	margin-bottom: 1em;
}
.output_button_item button {
	width: 20em;
}
