/*==================================================================================================================*/
/*カスタムブロック＞お見積り*/
/*---------------------------------------------------------*/
/*ブロック全体*/
.easys_content:has(.simulation_input_head) .entry_post > div {
	font-size: 16px;
}
/*SP*/
.easys_content:has(.simulation_input_head) .entry_post.sp > div {
	margin-right: 0;
	margin-left: 0;
	font-size: 14px;
}

/*input*/
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr td label {
	display: inline-flex;
	align-items: center;
	margin-right: 10px;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr td input {
	padding: 0;
	width: 20px;
	height: 20px;
}

/*画像付のラベル*/
.easys_content:has(.simulation_input_head) .entry_post > div > div table.image_label tr td label {
	position: relative;
	box-sizing: border-box;
	padding: 0;
	width: 100%;
	height: auto;
	background: no-repeat center center / cover;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table.image_label tr td input {
	position: absolute;
	bottom: 10px;
	left: 50%;
	margin: 0;
	padding: 0;
	width: 20px;
	height: 20px;
	vertical-align: middle;
	transform: translateX(-50%);
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table.image_label tr td label::before {
	display: block;
	padding-top: 100%;
	content: '';
}

/*input number*/
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr td input[type='number'] {
	margin: 0;
	padding: 5px 10px;
	width: 60px;
	height: auto;
	vertical-align: middle;
	text-align: right;
	font-size: 20px;
}
/*SP*/
.easys_content:has(.simulation_input_head) .entry_post.sp > div > div table tr td input[type='number'] {
	padding: 5px 10px;
	width: 40px;
	font-size: 16px;
}

/*select*/
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr td select {
	margin: 0 auto 0 10px;
	padding: 5px 10px;
	vertical-align: middle;
}
/*SP*/
.easys_content:has(.simulation_input_head) .entry_post.sp > div > div table tr td select {
	padding: 5px 10px;
	font-size: 16px;
}

/*table*/
.easys_content:has(.simulation_input_head) .entry_post > div > div table {
	margin: 0 0 40px 0;
	width: 100%;
	table-layout: fixed;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr th,
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr td {
	box-sizing: border-box;
	padding: 5px;
	border-width: 1px;
	border-style: solid;
	vertical-align: middle;
	text-align: center;
	line-height: 1.7;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr th span,
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr td span {
	font-size: 13px;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr th {
	text-align: left;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr td {
	text-align: left;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr:first-of-type th {
	text-align: left;
}
/*SP*/
.easys_content:has(.simulation_input_head) .entry_post.sp > div > div table {
	margin: 0 0 40px 0;
	table-layout: auto;
}
.easys_content:has(.simulation_input_head) .entry_post.sp > div > div table tr th,
.easys_content:has(.simulation_input_head) .entry_post.sp > div > div table tr td {
	padding: 10px 5px;
}
.easys_content:has(.simulation_input_head) .entry_post.sp > div > div table tr th {
	text-align: left;
}
.easys_content:has(.simulation_input_head) .entry_post.sp > div > div table tr td {
	width: 80px;
}
/* ID指定で「important」指定を上書き */
#outer_block .easys_content:has(.simulation_input_head) .entry_post.sp > div > div table tr th {
	width: auto !important;
}

/*---------------------------------------------------------*/
/*入力画面ヘッダ*/
.easys_content:has(.simulation_input_head) .entry_post > div .simulation_input_head {
	width: 100%;
}

/*---------------------------------------------------------*/
/*入力画面スクロール部*/
.easys_content:has(.simulation_input_head) .entry_post > div .simulation_input_scroll {
	display: none;
	width: 100%;
}
.easys_content:has(.simulation_input_head) .entry_post > div .simulation_input_scroll table {
	min-width: 960px;
}
/*SP*/
.easys_content:has(.simulation_input_head) .entry_post.sp > div .simulation_input_scroll {
	overflow-x: scroll;
}

/*---------------------------------------------------------*/
/*横スクロールメッセージ*/
/*SP*/
.easys_content:has(.simulation_input_head) .entry_post.sp > div .sp_message {
	/*display: block !important;*/
	color: #ff0000;
	font-weight: bold;
	font-size: 12px;
}

/*---------------------------------------------------------*/
/*入力画面フッタ*/
.easys_content:has(.simulation_input_head) .entry_post > div .simulation_input_foot {
	width: 100%;
}

/*simulation_result*/
.easys_content:has(.simulation_input_head) .entry_post > div .simulation_input_foot .simulation_result tr th,
.easys_content:has(.simulation_input_head) .entry_post > div .simulation_input_foot .simulation_result tr td {
	text-align: center;
	font-weight: bold;
	font-size: 22px;
}
/*SP*/
.easys_content:has(.simulation_input_head) .entry_post.sp > div .simulation_input_foot .simulation_result tr th,
.easys_content:has(.simulation_input_head) .entry_post.sp > div .simulation_input_foot .simulation_result tr td {
	font-size: 18px;
}

/*---------------------------------------------------------*/
/*注意事項*/
.easys_content:has(.simulation_input_head) .entry_post > div .notes_message {
	overflow-y: scroll;
	margin: 60px 0 0 0;
	max-height: 150px;
}
.easys_content:has(.simulation_input_head) .entry_post > div .notes_message p {
	margin: 0;
	padding: 5px;
	line-height: 24px;
}
/*SP*/
.easys_content:has(.simulation_input_head) .entry_post.sp > div .notes_message {
	margin: 40px 0 0 0;
}

/*==================================================================================================================*/
/*カスタムブロック＞価格表 (非公開)*/
#hbk9yoe58ewernfpibzn {
	display: none;
}

/*お問い合わせフォーム (最初は非表示)*/
#nqfmviz2ouzjxanwypbt {
	display: none;
}

/* #nb0klkx9xfi61fwamg6y .post_margin {
  margin-bottom: 0;
} */
/*==================================================================================================================*/
/*テーブルカラー個別上書き
#h2o4qhdxg050cysz91yi .easys_content:has(.simulation_input_head) .entry_post.sp > div > div table tr td {
  background: none !important;
}*/

/* 全体-------------------------------------------------------- */
.easys_content:has(.simulation_input_head) label {
	display: flex;
	align-items: center;
}
.easys_content:has(.simulation_input_head) input {
	margin: 0 10px;
	padding: 0;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
}
.easys_content:has(.simulation_input_head) table thead tr th {
	width: 100%;
}
.easys_content:has(.simulation_input_head) table tbody tr th {
	font-weight: 500;
}

/* 補足質問------------------------------------------------------------ */
.notice-text {
	margin: -40px 0 50px;
	padding: 20px;
	border-left: 4px solid #915b9b;
	background-color: #f6edf8;
	font-size: 16px;
}
.notice-text > label {
	margin-bottom: 20px;
	font-size: 16px;
}
.notice-text div {
	display: flex;
	align-items: center;

	margin-block: 10px 0;
}

/* 位牌全体のレイアウト */
.easys_content:has(.simulation_input_head) .entry_post > div > div table .select-body {
	display: flex;
}
/* 各位牌のレイアウト */
.easys_content:has(.simulation_input_head) .entry_post > div > div table .select-body tr {
	display: flex;
	width: calc(100% / 4);
}
/* 詳細テーブルコンテナは通常のブロック表示 */
.easys_content:has(.simulation_input_head) .entry_post > div > div table .detail-table-container {
	display: table;
	margin: 15px auto 0;
	width: 100%;
	border-collapse: collapse; /* ボーダーを統合して重複を防ぐ */
	table-layout: fixed;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table .detail-table-container tr {
	display: table-row;
	width: 100%;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table .detail-table-container tr td {
	display: table-cell;
	padding: 5px;
	width: calc(100% / 7); /* 7列のテーブルなので各列を均等分割 */
	border: 1px solid var(--border_color);
	vertical-align: middle;
	text-align: center;
}
/* キャプションのスタイル */
.easys_content:has(.simulation_input_head) .entry_post > div > div table .detail-table-container caption {
	padding: 5px 0;
	width: 100%;
	color: #666666;
	caption-side: top;
	text-align: left;
	font-size: 14px;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table.select4 thead th {
	display: block;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table .select-body tr th {
	display: flex;
	align-items: center;
	flex-direction: column;
	width: 100%;
	border: none;

	padding-block: 20px;
}
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr select {
	padding: 10px 2px;
	font-size: 16px;
}

.easys_content:has(.simulation_input_head) .kaimyo-note {
	margin-top: 20px;
}
/* 位牌画像 */
.easys_content:has(.simulation_input_head) .entry_post > div > div table tr th img {
	margin: 10px;
}
/* ヘッダー行のスタイル */
.easys_content:has(.simulation_input_head) .entry_post > div > .select1 .detail-table-container * {
	font-weight: 500;
}

[id*='divihs'] {
	margin-bottom: 0 !important;
}

/* SP---------------------------------------------------------------------------------------------------------------- */
.sp .notice-text > label {
	font-size: 14px;
}
.sp .easys_content:has(.simulation_input_head) input {
	margin-left: 0;
}
.sp .easys_content:has(.simulation_input_head) .entry_post.sp > div > div table {
	margin-bottom: calc(40 / 640 * 100vw);
}
/* プルダウン */
.sp .easys_content:has(.simulation_input_head) .entry_post > div > div table tr select {
	font-size: 14px;
	padding: 7px 2px;
}
/* 位牌レイアウト */
.sp #outer_block .easys_content:has(.simulation_input_head) .entry_post > div > div table .select-body tr th {
	width: 100% !important;
}
.sp .easys_content:has(.simulation_input_head) .entry_post.sp > div > div table {
	table-layout: fixed;
}
.sp .easys_content:has(.simulation_input_head) .entry_post > div > div table .select-body {
	flex-wrap: wrap;
}
.sp .easys_content:has(.simulation_input_head) .entry_post > div > div table .select-body tr {
	width: calc(100% / 2);
}
table.iqfm-table td textarea.paper-detail-box {
	height: auto !important;
}
/* 注意書き */
.sp .easys_content:has(.simulation_input_head) .notice-text {
	margin: calc(-40 / 640 * 100vw) 0 calc(60 / 640 * 100vw);
	padding: 10px;
	font-size: 14px;
	border-left: solid calc(4 / 640 * 100vw) #915a9b;
}
