/****************************************

          Table Setting

*****************************************/
/**テーブルのみブレイクポイントを640**/
/**フォーム等スタンダードなテーブル**/
table.bto_template_table_std {
	width: 100%;
	border-spacing :0px;
	border-collapse: collapse;
	border-top: 1px solid #EBEBEB;
	border-right: 1px solid #EBEBEB;
}

table.bto_template_table_std th {
	width: 20%;
}

table.bto_template_table_std td {
	width: 80%;
}

table.bto_template_table_std,
table.bto_template_table_std td,
table.bto_template_table_std th {
	padding: 12px;
	vertical-align: top;
	border-bottom: 1px solid #EBEBEB;
	border-left: 1px solid #EBEBEB;
}

table.bto_template_table_std th {
	white-space: nowrap;
	color: #FFA500;
	text-align: left;
	font-weight: normal;
}

	@media screen and (max-width: 640px) {
		table.bto_template_table_std {
			border: none;
		}

		table.bto_template_table_std td,
		table.bto_template_table_std th {
			width: 100%;
			text-align: center;
			border: none;
			display: block;
		}

		table.bto_template_table_std th {
			border: none;
			background-color: #FFA500;
			color: #FFFFFF;
		}
	}/*** Media Queries ***/

/**横並びを縦にする場合のスタンダードなテーブル**/
table.bto_template_table_custom {
	width: 100%;
	border-spacing :0px;
	border-collapse: collapse;
	border-top: 1px solid #EBEBEB;
	border-right: 1px solid #EBEBEB;
}

table.bto_template_table_custom,
table.bto_template_table_custom td,
table.bto_template_table_custom th {
	padding: 12px;
	vertical-align: top;
	border-bottom: 1px solid #EBEBEB;
	border-left: 1px solid #EBEBEB;
}

table.bto_template_table_custom th {
	white-space: nowrap;
	color: #FFA500;
	text-align: left;
	font-weight: normal;
}

	@media screen and (max-width: 640px) {
		table.bto_template_table_custom {
			border-left: 1px solid #EBEBEB;
			border-right: 1px solid #EBEBEB;
			border-bottom: none;
		}

		table.bto_template_table_custom td,
		table.bto_template_table_custom th {
			width: 100%;
			text-align: center;
			border-left: none;
			border-right: none;
			display: block;
		}

		table.bto_template_table_custom th {
			border: 1px solid #FFA500;
			/** 背景色と同じにするとボーダーのはみ出しを感じない **/
			background-color: #FFA500;
			color: #FFFFFF;
		}
	}/*** Media Queries ***/

/**横並びの複数項目の表を縦にするテーブル**/
table.bto_template_table_vertical {
	width: 100%;
}

table.bto_template_table_vertical th,
table.bto_template_table_vertical td {
	padding: 12px;
}

table.bto_template_table_vertical th {
	background-color: #FFA500;
	border-right: 1px solid #FFFFFF;
}

table.bto_template_table_vertical th:last-child {
	border-right: none;
}

table.bto_template_table_vertical tr:nth-child(even) {
	background: #fbf5f5;
}

table.bto_template_table_vertical td {
	border: none;
}

table.bto_template_table_vertical .last {
	border-bottom: solid 1px #EBEBEB;
}

	@media screen and (max-width: 640px) {
		table.bto_template_table_vertical .thead {
			display: none;
		}

		table.bto_template_table_vertical td {
			display: inline-block;
		}

		table.bto_template_table_vertical span {
			font-weight: bold;
		}

		table.bto_template_table_vertical .last {
			border-bottom: none;
		}
	}

/**レスポンシブでスクロールするテーブル**/
table.bto_template_table_sp2 {
	width: 100%;
	border-collapse: collapse;
	border-spacing :0px;
	color: #222222;
}

	@media only screen and (max-width: 640px) {
		table.bto_template_table_sp2 {
			display: block;
			position: relative;
			letter-spacing: -0.4em;
		}
	}/*** Media Queries ***/

table.bto_template_table_sp2 thead tr th {
	border: 1px solid #EBEBEB;
	padding: 12px;
	background-color: #FFA500;
	font-weight: normal;
	color: #FFFFFF;
	vertical-align: top;
	border-collapse: collapse;
}

	@media only screen and (max-width: 640px) {
		table.bto_template_table_sp2 thead {
			display: block;
			float: left;
		}

		table.bto_template_table_sp2 thead tr {
			display: block;
		}

		table.bto_template_table_sp2 thead tr th {
			display: block;
			border-left: 1px solid #EBEBEB;
			border-bottom: none;
			letter-spacing: normal;
		}

		table.bto_template_table_sp2 thead tr th:last-child {
			border-bottom: 1px solid #EBEBEB;
		}
	}/*** Media Queries ***/

table.bto_template_table_sp2 tbody tr td {
	border: 1px solid #EBEBEB;
	padding: 12px;
	text-align: center;
}

	@media only screen and (max-width: 640px) {
		table.bto_template_table_sp2 tbody {
			display: block;
			width: auto;
			position: relative;
			overflow-x: auto;
			-webkit-overflow-scrolling: touch;
			/****iOSの慣性スクロール****/
			white-space: nowrap;
		}

		table.bto_template_table_sp2 tbody tr {
			display: inline-block;
			vertical-align: top;
			border-right: 1px solid #EBEBEB;
		}

		table.bto_template_table_sp2 tbody tr td {
			display: block;
			border-left: 0;
			border-right: 0;
			border-bottom: 0;
			letter-spacing: normal;
			color: #424242;
		}

		table.bto_template_table_sp2 tbody tr td:last-child {
			border-bottom: 1px solid #EBEBEB;
		}
	}/*** Media Queries ***/

/**レスポンシブでリスト化するテーブル**/
table.bto_template_table_list {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0px;
}

table.bto_template_table_list th {
	border: 1px solid #EBEBEB;
	/**背景を着色する場合**/
	/*background: #FAFAFA;*/
	padding: 12px;
}

table.bto_template_table_list thead th {
	font-weight: 500;
	color: #666666;
}

table.bto_template_table_list td {
	padding: 12px;
	border: 1px solid #EBEBEB;
}

table.bto_template_table_list tbody th {
	color: #FFA500;
	font-size: 120%;
	font-weight: normal;
}

	@media only screen and (max-width:640px) {
		table.bto_template_table_list thead {
			display: none;
		}

		table.bto_template_table_list tbody tr {
			display: block;
			margin-bottom: 2em;
		}

		table.bto_template_table_list tbody th,
		table.bto_template_table_list tbody td {
			border: none;
			display: list-item;
			list-style: none;
		}

		table.bto_template_table_list td:nth-child(2n+1) {
			background: #F2F2F2;
		}

		table.bto_template_table_list tbody th {
			width: 100%;
			padding: 7px;
			color: #FFFFFF;
			text-align: left;
			background-color: #FFA500;
		}

		table.bto_template_table_list tbody td {
			/*margin-left: 1em;*/
		}
	}/*** Media Queries ***/

/**レスポンシブでリスト化するテーブル2**/
table.bto_template_table_list2 {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0px;
}

table.bto_template_table_list2 th {
	padding: 12px;
	border: 1px solid #EBEBEB;
	background: #FAFAFA;
}

table.bto_template_table_list2 td {
	padding: 12px;
	border: 1px solid #EBEBEB;
}

table.bto_template_table_list2 td:first-child {
	background-color: #FFA500;
}

	@media screen and (max-width: 640px) {
		table.bto_template_table_list2 th {
			padding: 12px;
			border: 1px solid #EBEBEB;
		}

		table.bto_template_table_list2 td {
			padding: 12px;
			border-top: none;
			border-bottom: 1px solid #EBEBEB;
			border-left: none;
			border-right: none;
		}

		table.bto_template_table_list2 {
			width: 100%;
		}

		table.bto_template_table_list2 .thead {
			display: none;
		}

		table.bto_template_table_list2 tr {
			width: 100%;
		}

		table.bto_template_table_list2 td {
			width: 100%;
			display: block;
			text-align: right;
		}

		table.bto_template_table_list2 td:first-child {
			background: #666666;
			color: #FFFFFF;
			font-weight: bold;
			text-align: center;
		}

		table.bto_template_table_list2 td:before {
			content: attr(data-label);
			float: left;
			font-weight: bold;
			margin-right: 12px;
		}
	}

/**フォームテーブル**/
table.bto_template_table {
	width: 100%;
	border-spacing :0px;
	border-collapse: collapse;
	border-top: 1px solid #EBEBEB;
	border-right: 1px solid #EBEBEB;
}

table.bto_template_table th {
	width: 30%;
}

table.bto_template_table td {
	width: 70%;
}

table.bto_template_table,
table.bto_template_table td,
table.bto_template_table th {
	padding: 12px;
	vertical-align: middle;
	border-bottom: 1px solid #EBEBEB;
	border-left: 1px solid #EBEBEB;
}

table.bto_template_table th {
	white-space: nowrap;
	color: #FFA500;
	text-align: left;
	font-weight: normal;
}

	@media screen and (max-width: 640px) {
		table.bto_template_table td,
		table.bto_template_table th {
			width: 100%;
			text-align: center;
			line-height: 1;
			border-bottom: 1px solid #EBEBEB;
			border-left: none;
			display: block;
		}

		/**最後のtdにだけ指定**/
		table.bto_template_table tr:last-child td:last-child {
			border-bottom: none;
		}

		table.bto_template_table th {
		/**着色する場合(反転させるだけ)**/
			/*border: none;
			background-color: #FFA500;
			color: #FFFFFF;*/
		}
	}/*** Media Queries ***/
