@charset "utf-8";

body,a,p,div,
h1,h2,h3,h4,h5,h6,
dl,dt,dd,ol,ul,li {
	margin:0; padding:0;
}

body {
	background-color: #eceef6;
	color: #283769;
}

h1 {
	font: normal 2.6em "Trebuchet MS",arial,sans-serif;
	letter-spacing: 4px;
	font-size: 34px;
}
h2 {
	font: normal 2.6em "Trebuchet MS",arial,sans-serif;
	color: #5064ae;
	font-weight: bold;
	font-size: 24px;
}
h3 {
	margin: 40px 0 20px 0;
	font-size: 14px;
}
h4 {
	font-weight: normal;
	text-decoration: underline;
	margin-bottom: 1em;
}
.underline {
	text-decoration: underline;
}

section {
	font-size: 14px;
	line-height: 1.8;
	padding-right: 20px;
}

a {
	text-decoration: none;
	color: #445aa9;
}
a:hover {
	text-decoration: underline;
}

.container {
	width: 90%;
	margin: 0 auto;
	background-color: #fff;
	border-top: 7px solid #6678b8;
	border-bottom: 7px solid #6678b8;
	line-height: 1.5;
	display: grid;
	grid-template-columns: 270px 1fr;
	gap: 20px;
}

header {
    border-top: 3px solid #6678b8;
    margin-top: 2px;
	padding: 20px 20px 0 20px;
	grid-row: 1;
	grid-column: 1 / 3;
}

footer {
    border-bottom: 3px solid #6678b8;
    margin-bottom: 2px;
    border-top: 1px solid #c7c7c7;
	grid-row: 3;
	grid-column: 1 / 3;
}

nav > ul {
	list-style: none;
	font-size: 12px;
	border: 1px dotted #c7c7c7;
	padding: 5px;
	margin-left: 20px;
}
nav > ul > li.current {
	color: #283769;
	font-weight: bold;
}

ul.news {
	list-style: none;
	border-top: 1px dotted #c7c7c7;
	max-height: 300px;
	overflow: scroll;
}
ul.news span {
	display: block;
	color: #5064ae;
	font-weight: bold;
}
ul.news li {
	margin-bottom: 1.5em;
	border-bottom: 1px dotted #c7c7c7;
}

ol {
	margin-left: 1.5em;
}
ol li {
	margin-bottom: 1.5em;
}
ol.additional {
	margin-bottom: 1.5em;
}
ol.additional li {
	margin-bottom: 0.2em;
}

.yakuin {
	margin-top: 2em;
	margin-left: 2.5em;
	margin-bottom: 2em;
}

p {
	margin-bottom: 1em;
}

.kanji {
	margin-top: 20px;
	font-size: 14px;
	border-top: 1px dotted #c7c7c7;
}
.kanji caption {
	caption-side: top;
	text-align: right;
	font-size: 12px;
}
.meeting th, .meeting td,
.kanji th, .kanji td {
	padding: 0.2em 0.8em;
	border-bottom: 1px dotted #c7c7c7;
}

.meeting tr:last-child th, .meeting tr:last-child td {
	border-bottom: none;
}

.meeting {
	width: 90%;
	margin-top: 20px;
	font-size: 14px;
	border: 1px solid #c7c7c7;
	/* border-bottom: 1px solid #c7c7c7; */
}
.meeting th {
	font-weight: normal;
	border-right: 1px dotted #c7c7c7;
	width: 5em;
}

.pdflist td {
	padding: 0 0.8em;
}