@charset "utf-8";

#footer table {
    border-collapse: collapse;
    margin: 0 auto;
}
#footer table th {
    padding-right: 10px;
}
#footer table td {
    text-align: center;
}

.nowrap {
	white-space: nowrap;
}

.v_top {
	vertical-align: top;
}

.v_middle {
	vertical-align: middle;
}

table.tbl00,
table.tbl00b {
	margin: 0;
	border-collapse: collapse;
}
table.tbl00 th {
	margin: 0;
	padding: 0;
}
table.tbl00 td {
	margin: 0;
	padding: 0;
}

table.tbl00b tr.tbl00b_top {
	border-top: 1px dashed #CCC;
}
table.tbl00b tr {
	border-bottom: 1px dashed #CCC;
}
table.tbl00b th {
	font-weight: normal;
	margin: 0;
	padding: 0.2em 0 0.2em 0;
	text-align: right;
	vertical-align: top;
	white-space: nowrap;
}
table.tbl00b td {
	margin: 0;
	padding: 0.2em 0 0.2em 0.5em;
	vertical-align: top;
}

/* 開催概要　a：プログラム*/
table.tbl01,
table.tbl01a {
	border-collapse: collapse;
	text-align: left;
	line-height: 1.5;
	width: 100%;
	border-top: 1px solid #508CCA;
	border-left: 3px solid #508CCA;
}
table.tbl01a {
	margin-bottom: 1.5em;
}
table.tbl01 th,
table.tbl01a th {
	padding: 10px;
	font-weight: bold;
	color: #305496;
	border-right: 1px solid #508CCA;
	border-bottom: 1px solid #508CCA;
	background: #B6CEFF;
	text-align: center;
	white-space: nowrap;
}
table.tbl01 th {
	width: 100px;
	vertical-align: top;
}
table.tbl01a th {
	width: 150px;
}

table.tbl01 td,
table.tbl01a td {
	padding: 10px;
	vertical-align: top;
	background: #FFF;
	border-right: 1px solid #508CCA;
	border-bottom: 1px solid #508CCA;
}

table.tbl01a td.td01 {
	font-weight: bold;
	font-size: 1.8rem;
}
table.tbl01a td.td01 span {
	font-size: 1.6rem;
	font-weight: bold;
}

table.tbl02 {
	margin:auto 10px;
	width: 500px;
	border-spacing: 0 8px;
}
 
table.tbl02 th {
	border: 1px solid #000;
	font-weight: bold;
	margin: 0;
	padding: 5px 10px;
	text-align: left;
	vertical-align: middle;
	white-space: nowrap;
}
 
table.tbl02 td {
	padding: 0 0 0 10px;
	margin: 0;
	line-height: 1.6em;
	vertical-align: middle;
	overflow: hidden;
}

table.tbl02 td.tbl_lft {
	border-left: 3px solid #DCE3E7;
	white-space: nowrap;
}

table.tbl03,
table.tbl03c,
table.tbl03d {
	margin: 0.5em 0;
	border-collapse: collapse;
	border: 1px solid #508CCA;
}
table.tbl03b {
	margin: 0;
	width: 100%;
}
table.tbl03d {
	border-width: 2px;
	width: 100%;
}

table.tbl03 th,
table.tbl03c th,
table.tbl03 td,
table.tbl03d th,
table.tbl03d td {
	border-right: 1px solid #508CCA;
	border-bottom: 1px solid #508CCA;
	padding: 5px 10px;
}

table.tbl03 th,
table.tbl03b th,
table.tbl03c th,
table.tbl03d th {
	white-space: nowrap;
	background: #B6CEFF;
	font-weight: bold;
}
table.tbl03b th {
	padding: 5px 10px;
}
table.tbl03b td {
	padding: 5px;
	vertical-align: top;
}
table.tbl03b td:first-of-type {
	width: 50px;
	text-align: center;
	white-space: nowrap;
}

table.tbl03c th,
table.tbl03d th {
	text-align: left;
	width: 200px;
}
table.tbl03c td:nth-of-type(1) {
	background: #FFFF;
	width: 200px;
}
table.tbl03c td:nth-of-type(2),
table.tbl03c td:nth-of-type(3) {
	text-align: left;
	white-space: nowrap;
	width: 200px;
}

table.tbl03d td:nth-of-type(1) {
	background: #E9F0FF;
}
table.tbl03d td:nth-of-type(2),
table.tbl03d td:nth-of-type(3),
table.tbl03d td:nth-of-type(4) {
	text-align: left;
	white-space: nowrap;
	width: 150px;
}


table.tbl04 {
	margin: 0.5em 0;
	border-collapse: collapse;
	border: 1px solid #508CCA;
}
table.tbl04 th,
table.tbl04 td {
	border-right: 1px solid #508CCA;
	border-bottom: 1px solid #508CCA;
	padding: 5px 10px;
	width: auto;
}

table.tbl04 th {
	white-space: nowrap;
	background: #ffffff;
	font-weight: bold;
}
table.tbl04 th {
	text-align: center;
}
table.tbl04 td:nth-of-type(1) {
	background: #ffffff;
}
table.tbl04 td:nth-of-type(2),
table.tbl04 td:nth-of-type(3) {
	text-align: center;
	white-space: nowrap;
	width: 150px;

}
table.tbl05 {
	margin: 0 auto 10px;
	width: 500px;
	border-spacing: 0 8px;
}
 
table.tbl05 th {
	border: 1px solid #000;
	font-weight: bold;
	margin: 0;
	padding: 5px 10px;
	text-align: left;
	vertical-align: left;
	white-space: nowrap;
}
 
table.tbl05 td {
	padding: 0 0 0 10px;
	margin: 0;
	line-height: 1.6em;
	vertical-align: middle;
	overflow: hidden;
}

table.tbl05 td.tbl_lft {
	border-left: 3px solid #DCE3E7;
	white-space: nowrap;
}
