/* ----- tabTableBox ----- */
.tabTableBox {
	position:relative;
	width:100%;
	margin:20px auto 0 auto;
}

.tabTableBox img.tabHeader{
	width:100%;
	margin:0 auto;
}
.tabTableBox dl {
	position:relative;
	width:100%;
	height:auto;
}
.tabTableBox dl dt {
	float:left;
	width:100%;
	background:#d8c7be;
}
.tabTableBox dl dt a {
	display:block;
	color:#800000;
	font-size:1.9em;
	font-weight:bold;
	text-align:center;
	padding:17px 0 21px 0;
}
.tabTableBox dl dt a em {
	font-style:normal;
}
.tabTableBox dl dt a:hover,
.tabTableBox dl dt a:focus {
	background:rgba(127,45,0,.2);
}
.tabTableBox dl dt.saTab,
.tabTableBox dl dt.saTabOn {
	position:absolute;
	top:0;
	width:100%;
	text-align:center;
	z-index:10;
}
.tabTableBox dl.dtm2 dt.saTab,
.tabTableBox dl.dtm2 dt.saTabOn {
	position:absolute;
	top:0;
	width:50%;
	text-align:center;
	z-index:10;
}
.tabTableBox dl.dtm2 dt.tab01.saTab,
.tabTableBox dl.dtm2 dt.tab01.saTabOn {left:0;}
.tabTableBox dl.dtm2 dt.tab02.saTab,
.tabTableBox dl.dtm2 dt.tab02.saTabOn {left:50%;}
.tabTableBox dl dt.saTab a {
	float:left;
	width:100%;
}
.tabTableBox dl dt.saTabOn a {
	position:relative;
	float:left;
	width:100%;
	color:#FFF;
	width:100%;
	background:#7f2d00;
	cursor:text;
}
.tabTableBox dl dt.saTabOn a:before {  
	content: '';
	display: block;
	position: absolute;
	bottom:0;
	left:50%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 10px 10px;
	border-color: transparent transparent #eeeeee transparent;
	margin-left:-11px;
}
.tabTableBox dl dd {
	position:relative;	
	float:left;
	width:100%;
	padding:20px;
	box-sizing:border-box;
	/*background:#eeeeee;*/
	border: 1px #ccc solid;
}
.tabTableBox dl dd.mTop {	
	margin-top:55px;
}
.tabTableBox table {
	width: 100%;
	border:none;
	border-collapse: collapse;
}
.tabTableBox table tr {
	border-bottom:1px dashed #b2b2b2;
}
.tabTableBox table tr:last-child {
	border-bottom:none;
}
.tabTableBox table th {
	width:70px;
	color:#fff;
	font-size:1.9em;
	font-weight:bold;
	padding:10px 0;
	text-align:center;
	vertical-align:middle;
	/*border:none;*/
}
.tabTableBox table td {
	color:#000;
	font-size:1.9em;
	font-weight:bold;
	padding:10px 0;
	vertical-align:middle;
	/*border:none;*/
}
.tabTableBox table ul {
	list-style:none;
	margin-left:10px;
}
.tabTableBox table ul li {
	display:inline-block;
	margin:5px 10px;
	vertical-align:top;
}

@media screen and (max-width: 420px) {
	.tabTableBox dl dt a {
		font-size:1.7em;
		padding:12px 0 18px 0;
	}
	.tabTableBox dl.dtm2 dt a em {
		display:block;
		margin-top:5px;
	}
	.tabTableBox dl dd.mTop {
		margin-top:65px;
	}
}
@media screen and (min-width: 991px) {
	.tabTableBox table th {
		width:90px;
	}
}
@media screen and (min-width: 1200px) {
	.tabTableBox dl dd {
		/*padding:20px 40px;*/
	}
}
