/* a0.css
 * a0.php / a1.php / index.php 用（同意・説明ブロック a0-block 共通）
 * index 内側の要件テーブル（.index-intro-req）もここで定義
 * スマホで読みやすいデザイン・文字サイズ
 */

/* ------------------------------------------------------------
 * 共通（PC・スマホ）
 * ------------------------------------------------------------ */
table.a0-block {
	max-width: 700px;
	margin: 0 auto;
	border: 1px solid #D3D3D3;
	border-collapse: collapse;
	box-sizing: border-box;
}
table.a0-block td {
	background-color: #fff;
	padding: 10px;
	vertical-align: top;
}
.a0-text {
	font-size: 13px;
	line-height: 1.6;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
table.a0-block .a0-text label {
	display: inline-block;
	margin-top: 0.35em;
	cursor: pointer;
}

/* ボタン間・ボタン周りの余白を詰める（a0・a1共通） */
.a0-page .a0-buttons-wrap TABLE {
	border-collapse: collapse;
	margin: 0 auto;
}
.a0-page .a0-buttons-wrap TD {
	padding: 4px 8px !important;
}
.a0-page .a0-buttons-wrap TR + TR TD {
	padding-top: 2px !important;
}

/* ------------------------------------------------------------
 * スマホ（799px以下）読みやすいデザイン・文字サイズ
 * ------------------------------------------------------------ */
@media (max-width: 799px) {
	/* ページ全体の余白 */
	.a0-page BLOCKQUOTE {
		margin-left: 16px !important;
		margin-right: 16px !important;
		padding: 0;
	}
	/* エラーメッセージ（赤字）も読みやすいサイズに */
	.a0-page FONT[COLOR="#FF0000"],
	.a0-page FONT[COLOR="#ff0000"] {
		font-size: 17px !important;
		line-height: 1.5;
		display: block;
		margin-bottom: 8px;
	}

	/* テーブル：画面幅いっぱい・余白確保 */
	table.a0-block {
		width: 100% !important;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
		margin-bottom: 1.2em;
	}
	table.a0-block:first-of-type {
		margin-top: 4px;
	}
	table.a0-block td {
		padding: 18px 16px;
	}

	/* 本文：スマホで読みやすい文字サイズ・行間 */
	.a0-text {
		font-size: 16px;
		line-height: 1.85;
		letter-spacing: 0.02em;
	}
	/* 見出し「本アンケートについて」をやや大きく */
	.a0-text b {
		font-size: 18px;
		display: block;
		margin-bottom: 0.4em;
	}

	/* ラジオボタン：タップしやすいサイズ・間隔 */
	table.a0-block .a0-text label {
		display: block;
		font-size: 17px;
		line-height: 1.5;
		min-height: 48px;
		padding: 12px 0 12px 0;
		margin-top: 0;
		margin-bottom: 4px;
		cursor: pointer;
		-webkit-tap-highlight-color: transparent;
	}
	/* a1のみ：調査を継続する/調査に参加しないの余白を詰める */
	.a1-page table.a0-block .a0-text label {
		min-height: 0;
		padding: 6px 0;
		margin-bottom: 2px;
	}
	table.a0-block .a0-text input[type="radio"] {
		width: 22px;
		height: 22px;
		margin-right: 10px;
		vertical-align: middle;
	}

	/* 送信ボタン周り：上余白・ボタン間を詰める */
	.a0-page .a0-buttons-wrap {
		margin-top: 4px;
	}
	.a0-page .a0-buttons-wrap TD {
		padding: 3px 6px !important;
	}
	.a0-page .a0-buttons-wrap TR + TR TD {
		padding-top: 0 !important;
	}

	/* index.php 内側の要件テーブル */
	table.index-intro-req {
		width: 100% !important;
		margin: 8px 0;
	}
	table.index-intro-req td {
		padding: 4px 0 !important;
		font-size: 15px !important;
		line-height: 1.6 !important;
	}
}
