@charset 'utf-8';

.block-table {
	margin-top:1em;
	margin-bottom:1em;
	position:relative;
	max-width:100vw;
}

.tbl-md-wrap {
	position:relative;
	max-width:100vw;
	overflow-x:auto;
}

table.tbl-md {
	border-collapse: collapse;
	/* width: 100%; */
	white-space: nowrap;
}

table.tbl-md:not(.noborder) {
	border: 1px solid #ccc;
	line-height:1.4;
	font-size:87.5%;
	/* font-size:calc(14 / 16 * 100%); IE11は font-size calc(%) がおかしい  */
	font-size:calc(14/16);
}

table.tbl-md>*>tr>* {
	padding: .5em .75em .4em;
	text-align: left;
	vertical-align: middle;
}
table.tbl-md:not(.noborder)>*>tr>* {
	border-style: solid;
	border-width: 1px;
	border-color: inherit;
}

table.tbl-md.noborder>*>tr>:first-child {
	padding-left:0;
}
table.tbl-md.noborder>*>tr>:last-child {
	padding-right:0;
}

table.tbl-md>*>tr.bordered>* {
	border-bottom-style: double;
	border-bottom-width: 3px;
}

table.tbl-md:not(.noborder)>*>tr:nth-child(odd)>* {
	background: #f8f8f8;
}

table.tbl-md:not(.noborder)>*>tr:nth-child(n)>th {
	background: #ddd;
}

table.tbl-md>*>tr:nth-child(n)>th.marked,
table.tbl-md>*>tr:nth-child(n)>td.marked {
	background: #fcc;
}
table.tbl-md>*>tr:nth-child(n)>*.autowrap {
	white-space:normal;
	word-break:break-all;
	min-width:10em;
}

table.tbl-md>*>tr:nth-child(n)>*.double-bordered-left {
	border-left-style: double;
	border-left-width: 3px;
}

table.tbl-md>*>tr>*[style*="white-space:normal"] {
	min-width:10em;
}

table.tbl-md > caption {
	opacity:.8;
	font-size:85.7143%;
	/* font-size:calc(12 / 14 * 100%); IE11は font-size calc(%) がおかしい  */
	font-size:calc(12/14);
	font-style:italic;
	line-height:1.2;
	margin-top:.6em;
	margin-bottom:.5em;
}

table.tbl-md > caption a {
	color:inherit;
}

table.tbl-md>*>tr>*>ul,
table.tbl-md>*>tr>*>ol {
	margin-top:.5em;
	margin-bottom:.5em;
	margin-left:-.5em;
	margin-right:-.5em;
}
