/* total.css
 * - fontsize.css / retu1.css / retu2.css / retu3.css を統合
 * - @mediaは「PC」「スマホ」で各1本に集約
 */

/* ------------------------------------------------------------
 * Q17テーブル（TableValue2互換の見た目）
 * ------------------------------------------------------------ */

 table.TableQ17 {
	border: 1px #c0c0c0 solid;
	border-collapse: collapse;
	margin: 10px 0;
}
table.TableQ17 th {
	border: 1px #c0c0c0 solid;
	padding: 3px 5px;
	background-color: #ecf5ff;
	font-weight: normal;
	font-size: 80%;
	text-align: left;
}
table.TableQ17 td {
	border: 1px #c0c0c0 solid;
	padding: 3px 5px;
	font-size: 80%;
}


/* ------------------------------------------------------------
 * Q18テーブル（TableValue2互換の見た目）
 * ------------------------------------------------------------ */
table.TableQ18 {
	border: 1px #c0c0c0 solid;
	border-collapse: collapse;
	margin: 10px 0;
}
table.TableQ18 th {
	border: 1px #c0c0c0 solid;
	padding: 3px 5px;
	background-color: #ecf5ff;
	font-weight: normal;
	font-size: 80%;
	text-align: center;
}
table.TableQ18 td {
	border: 1px #c0c0c0 solid;
	padding: 3px 5px;
	font-size: 90%;
}

/* ------------------------------------------------------------
 * F1テーブル（TableValue2互換の見た目）
 * ------------------------------------------------------------ */
table.TableF1 {
	border: 1px #c0c0c0 solid;
	border-collapse: collapse;
	margin: 10px 0;
}
table.TableF1 th {
	border: 1px #c0c0c0 solid;
	padding: 3px 5px;
	background-color: #ecf5ff;
	font-weight: normal;
	font-size: 100%;
	text-align: center;
}
table.TableF1 td {
	border: 1px #c0c0c0 solid;
	padding: 3px 5px;
	font-size: 100%;
}

/* ------------------------------------------------------------
 * PC（800px以上）
 * ------------------------------------------------------------ */
@media (min-width: 800px) {
	/* fontsize.css（PC） */
	.mtqs2 { font-size: 17px; }
	FONT[COLOR="#FF0000"] { font-size: 17px; }
	div[style*="font-size:17px"] { font-size: 17px; }

	/* TableValue2（互換の残置：念のため） */
	table.TableValue2 { font-size: 17px; }
	table.TableValue2 tbody tr td[colspan="3"][bgcolor="#ffffff"] font[color="#ff0000"],
	table.TableValue2 tbody tr td[colspan="3"][bgcolor="#ffffff"] font[color="#0000ff"] {
		font-size: inherit;
	}
}

/* ------------------------------------------------------------
 * スマホ（799px以下）
 * ------------------------------------------------------------ */
@media (max-width: 799px) {
	/* fontsize.css（スマホ） */
	body { margin: 0; padding: 0; }
	#content {
		margin-left: 20px !important;
		margin-right: 20px !important;
		margin-top: 10px;
		margin-bottom: 10px;
	}
	BLOCKQUOTE {
		margin-left: 10px;
		margin-right: 10px;
		padding-left: 0;
		padding-right: 0;
	}

	/* Q17（TableQ17）：スマホのみ左右余白＋幅調整 */
	table.TableQ17 {
		width: 100% !important;
		margin-left: 0;
		margin-right: 0;
	}

	/* Q18（TableQ18）：スマホのみ左右余白＋幅調整 */
	table.TableQ18 {
		width: 100% !important;
		margin-left: 0;
		margin-right: 0;
		table-layout: fixed;
	}

	/* Q18：列幅（colgroupで制御） */
	table.TableQ18 col.q18-col-no { width: 26px; }
	table.TableQ18 col.q18-col-choice { width: 40px; }
	/* q18-col-item は残り幅 */

	/* Q18：3選択列（イブランス/ベージニオ/どちらでも）を細くして、項目列を広く */
	table.TableQ18 tr:first-child th:not([colspan]) {
		width: 40px !important;
		padding-left: 2px;
		padding-right: 2px;
		font-size: 12px;
		line-height: 1.1;
		white-space: normal;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	table.TableQ18 tr:not(:first-child) td:nth-child(3),
	table.TableQ18 tr:not(:first-child) td:nth-child(4),
	table.TableQ18 tr:not(:first-child) td:nth-child(5) {
		width: 40px !important;
		padding-left: 2px;
		padding-right: 2px;
	}

	/* Q18：左端の【1】列を最小限に */
	table.TableQ18 tr:not(:first-child) td:nth-child(1) {
		width: 26px !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		white-space: nowrap;
	}

	/* F1（TableF1）：スマホのみ 右側4列を細く */
	table.TableF1 {
		width: 92% !important;
		margin-left: auto;
		margin-right: auto;
		table-layout: fixed;
	}

	/* 「無床」〜「200床以上」(2〜5列目) を細くして項目列を広く */
	table.TableF1 th:nth-child(2),
	table.TableF1 th:nth-child(3),
	table.TableF1 th:nth-child(4),
	table.TableF1 th:nth-child(5),
	table.TableF1 td:nth-child(2),
	table.TableF1 td:nth-child(3),
	table.TableF1 td:nth-child(4),
	table.TableF1 td:nth-child(5) {
		width: 44px !important;
		padding-left: 2px;
		padding-right: 2px;
		font-size: 11px;
		line-height: 1.1;
		white-space: normal;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	/* retu1（Q4_1/Q4_2/Q4_3: TableRetu1） */
	table.TableRetu1 {
		width: 100% !important;
		margin-left: 0;
		margin-right: 0;
		table-layout: fixed;
	}
	table.TableRetu1 tr:first-child th:last-child {
		width: 120px;
		white-space: normal;
		overflow-wrap: anywhere;
		word-break: break-word;
	}
	table.TableRetu1 tr:first-child th:first-child {
		width: 64px;
		white-space: nowrap;
	}

	/* retu2（Q2: TableRetu2） */
	table.TableRetu2 {
		width: 100% !important;
		margin-left: 0;
		margin-right: 0;
		table-layout: fixed;
		font-size: 20px;
	}
	table.TableRetu2 col.retu2-col-side { width: 22px; }
	table.TableRetu2 col.retu2-col-col1,
	table.TableRetu2 col.retu2-col-col2 { width: 95px; }
	table.TableRetu2 td:nth-child(3),
	table.TableRetu2 td:nth-child(4),
	table.TableRetu2 th:nth-child(3),
	table.TableRetu2 th:nth-child(4) {
		padding-left: 4px;
		padding-right: 4px;
	}

	/* retu3（Q1: TableRetu3） */
	table.TableRetu3 {
		width: 90% !important;
		margin-left: auto;
		margin-right: auto;
		table-layout: fixed;
		font-size: 20px;
	}
	table.TableRetu3 colgroup col:nth-child(1) { width: 22px; }
	table.TableRetu3 colgroup col:nth-child(3),
	table.TableRetu3 colgroup col:nth-child(4),
	table.TableRetu3 colgroup col:nth-child(5) { width: 60px; }
	table.TableRetu3 td[rowspan][bgcolor="#ffffff"] {
		padding-left: 0 !important;
		padding-right: 0 !important;
		text-align: center;
		line-height: 1.1;
	}
	table.TableRetu3 td[align="center"] { white-space: nowrap; }
	table.TableRetu3 input[type="tel"],
	table.TableRetu3 input[type="text"] {
		width: 2.6em;
		box-sizing: border-box;
	}
	table.TableRetu3 td[align="center"],
	table.TableRetu3 th {
		padding-left: 4px;
		padding-right: 4px;
	}
}

/* ------------------------------------------------------------
 * 強調（未満/以上など）の文字サイズだけがズレないように固定
 * ------------------------------------------------------------ */
table.TableRetu2 font[color="#ff0000"],
table.TableRetu2 font[color="#FF0000"],
table.TableRetu2 font[color="#0000ff"],
table.TableRetu2 font[color="#0000FF"],
table.TableRetu2 FONT[COLOR="#ff0000"],
table.TableRetu2 FONT[COLOR="#FF0000"],
table.TableRetu2 FONT[COLOR="#0000ff"],
table.TableRetu2 FONT[COLOR="#0000FF"],
table.TableRetu3 font[color="#ff0000"],
table.TableRetu3 font[color="#FF0000"],
table.TableRetu3 font[color="#0000ff"],
table.TableRetu3 font[color="#0000FF"],
table.TableRetu3 FONT[COLOR="#ff0000"],
table.TableRetu3 FONT[COLOR="#FF0000"],
table.TableRetu3 FONT[COLOR="#0000ff"],
table.TableRetu3 FONT[COLOR="#0000FF"] {
	font-size: inherit !important;
}

table.TableRetu2 font[color="#ff0000"] b,
table.TableRetu2 font[color="#FF0000"] b,
table.TableRetu2 font[color="#0000ff"] b,
table.TableRetu2 font[color="#0000FF"] b,
table.TableRetu2 FONT[COLOR="#ff0000"] b,
table.TableRetu2 FONT[COLOR="#FF0000"] b,
table.TableRetu2 FONT[COLOR="#0000ff"] b,
table.TableRetu2 FONT[COLOR="#0000FF"] b,
table.TableRetu3 font[color="#ff0000"] b,
table.TableRetu3 font[color="#FF0000"] b,
table.TableRetu3 font[color="#0000ff"] b,
table.TableRetu3 font[color="#0000FF"] b,
table.TableRetu3 FONT[COLOR="#ff0000"] b,
table.TableRetu3 FONT[COLOR="#FF0000"] b,
table.TableRetu3 FONT[COLOR="#0000ff"] b,
table.TableRetu3 FONT[COLOR="#0000FF"] b {
	font-size: inherit !important;
}

