@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 #1A448E;
	border-left: 3px solid #1A448E;
}
table.tbl01a {
	margin-bottom: 1.5em;
}
table.tbl01 th,
table.tbl01a th {
	padding: 10px;
	font-weight: bold;
	color: #FFF;
	border-right: 1px solid #1A448E;
	border-bottom: 1px solid #1A448E;
	background: #005EAD;
	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 #1A448E;
	border-bottom: 1px solid #1A448E;
}

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: 0 auto 2em;
	width: 100%;
	border-spacing: 0 8px;
	border-top: 1px solid #9DCF8E;
	border-left: 1px solid #9DCF8E;
}

table.tbl02 th {
	background: #5DBA7D;
	font-weight: bold;
	margin: 0;
	padding: 3px 10px 5px;
	vertical-align: middle;
	white-space: nowrap;
	width: 9em;
	text-align: center;
	color: #FFF;
	border-right: 1px solid #9DCF8E;
	border-bottom: 1px solid #9DCF8E;
}
 
table.tbl02 td {
	padding: 3px 10px 5px;
	margin: 0;
	line-height: 1.6em;
	vertical-align: middle;
	border-right: 1px solid #9DCF8E;
	border-bottom: 1px solid #9DCF8E;
}

table.tbl02 td.tbl_lft {
	border-left: 3px solid #DCE3E7;
	white-space: nowrap;
}
table.tbl01b {
	border-collapse: collapse;
	text-align: left;
	line-height: 2;
	width: 100%;
	border-top: 1px solid #9DCF8E;
	border-left: 3px solid #9DCF8E;
}
table.tbl01b th {
	padding: 10px;
	font-weight: bold;
	color: #FFF;
	border-right: 1px solid #9DCF8E;
	border-bottom: 1px solid #9DCF8E;
	background: #5DBA7D;
	text-align: center;
	white-space: nowrap;
}
table.tbl01 th {
	width: 100px;
	vertical-align: top;
}
table.tbl01b th {
	width: 175px;
}
table.tbl01b td {
	padding: 10px;
	background: #FFF;
	border-right: 1px solid #9DCF8E;
	border-bottom: 1px solid #9DCF8E;
}
table.tbl01b th {
	font-size: 90%;
	padding: 10px 5px;
}
table.tbl01b td {
	display: flex;
	font-size: 94%;
	padding: 10px 5px;
}
table.tbl01b td div:first-of-type {
	width: 6.5em;
	text-align:justify;
	text-align-last:justify;
}
table.tbl01b td div:last-of-type {
	width: calc(100% - 7em);
	text-indent: -1em;
  padding-left: 1em;
}

table.tbl01b td.two {
	display: table-cell;
}
table.tbl01b td.two > div {
	width: 100%;
	display: flex;
}
table.tbl01b td.two div:last-of-type {
	width: 100%;
	text-indent: inherit;
  padding-left: 0;
}
table.tbl01b td.two div:first-of-type {
	width: 100%;
	text-align: inherit;
	text-align-last: inherit
}
table.tbl01b td.two div > div:last-of-type {
	width: calc(100% - 7em);
	text-indent: -1em;
  padding-left: 1em;
}
table.tbl01b td.two div > div:first-of-type {
	width: 6.5em;
	text-align:justify;
	text-align-last:justify;
}
/* 表示領域が767.98px以下の場合に適用するスタイル */
@media print, screen and (max-width: 767.98px) {
	table.tbl01b td,
	table.tbl01b td.two > div {
		flex-direction: column;
	}
	table.tbl01b td div:last-of-type {
		width: 100%;
	}
	table.tbl01b td div:last-of-type,
	table.tbl01b td.two div > div:last-of-type {
		width: 100%;
	}
}


/* SY・WSは03、演題募集は03c、プログラムのポスター発表は03d　*/
table.tbl03,
table.tbl03b,
table.tbl03c,
table.tbl03d {
	margin: 0.5em 0;
	border-collapse: collapse;
	border: 1px solid #0075D8;
}
table.tbl03b,
table.tbl03d {
    width: 100%;
}
table.tbl03 th,
table.tbl03b th,
table.tbl03c th,
table.tbl03d th,
table.tbl03 td,
table.tbl03b td,
table.tbl03c td,
table.tbl03d td {
	border-right: 1px solid #0075D8;
	border-bottom: 1px solid #0075D8;
	padding: 3px 7px;
}

table.tbl03 th,
table.tbl03b th,
table.tbl03c th,
table.tbl03d th {
	background: #005EAD;
	font-weight: 500;
	color: #FFF;
}
table.tbl03c th {
	text-align: left;
}
table.tbl03d th {
	text-align: center;
}
table.tbl03d td:first-of-type {
	width: 20%;
	min-width: 6em;
	text-align: center;
}
table.tbl03d td:nth-of-type(2) {
	width: 35%;
	text-align: center;
}
table.tbl03d td:nth-of-type(3) {
	width: 45%;
}
table.tbl03d td:nth-of-type(2).txt01 {
	color: #FF76B1;
}
table.tbl03d td:nth-of-type(2).txt02 {
	color: #40A1FF;
}

/* 表示領域が767.98px以下の場合に適用するスタイル */
@media screen and (max-width: 767.98px) {
	table.tbl03d th,
	table.tbl03d td {
		font-size: 1.5rem;
		line-height: 1.5em;
	}
}

.td_b01 {
	background: #F3F8ED;
}

.td_w01 {
	width: 47%;
}
.td_w02 {
	width: 28%;
}
.td_w03 {
	width: 25%;
}
.td_w04 {
	width: 60px;
}
.td_w05 {
	width: 20%;
}