
.container{
	width:980px;
	margin:0 auto;
	font-size:17px;
	color:#404040;
}

a{
	color:#002060;
}

header{
	width:980px;
	margin:0 auto;
}

footer{
	width:980px;
	margin:30px auto;
	text-align:right;
}

.picture{
	width:200px;
}

.picture img{
	box-shadow: 3px 3px 2px 1px rgba(0,0,0,0.6);
}

.profile,
.title,
.about{
	font-size:20px;
	margin:20px 0 15px 10px;
}

.name{
	font-size:30px;
	margin:0 0 10px 0;
	padding:0;
}

.text-box{
	line-height:170%;
}

ul.title-list{
	line-height:170%;
	margin-bottom:30px;
}

.about-list{
	line-height:200%;
	font-size:17px !important;
	margin-bottom:30px;
}

.article-list li{
	font-size:17px !important;
}

.line{
	padding-top:10px;
	margin-bottom:10px;
	border-top:1px #ccc solid;
}

.article-title{
	font-size:30px;
}

.article-list{
	line-height:200%;
	margin-bottom:50px;
}

.article-text{
	line-height:180%;
}

.article-chapter{
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	padding:15px 0;
	font-size:22px;
	margin-top:50px;
	
}

.img-caption{
	text-align:left;
	color:#888;
	padding-left:20px;
	font-size:16px;
}

.kagawa-title{
	font-size:30px;
}

.kagawa-author{
	text-align:right;
	font-size:20px;
	font-weight:bold;
	margin:30px 0;
}

.kagawa-chapter{
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	padding:15px 0;
	font-size:22px;
	margin-top:20px;
}

.kagawa-text{
	line-height:180%;
}

.movie-title{
	font-size:30px;
}

.movie-chapter{
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	padding:15px 0;
	font-size:22px;
	margin-top:50px;
}

.movie-text{
	line-height:180%;
}

.movie-text span{
	font-weight: bold;
}


.newspaper-title{
	font-size:30px;
}


.newspaper-list li{
	padding:5px 0;
}

.newspaper-text{
	line-height:180%;
}

.newspaper-label{
	font-size:22px;
	font-weight:normal;
	margin-bottom:0;
}

.newspaper-list{
	margin-top:0px;
	padding-top:0;
}
.newspaper-article-title{
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	padding:15px 0;
	font-size:22px;
	margin-top:50px;
}

.lecturer-title{
	display:inline-block;
	margin-left:10px;
	font-size:12px;
}

.taidan-table{
	margin-left:20px;
	margin-bottom:30px;
}


.taidan-table tr td{
	padding-top:10px;
	vertical-align:top;
	line-height:140%;
}

.taidan-table tr td.right{
	padding-left:16px;
}

.taidan-table tr td.left{
	width:50px;
}



.button-box{
	margin:20px auto 50px auto;
	width:980px;
	height:50px;
	position:relative;
}

.next-link{
	position:absolute;
	right:0;
	top:0;
}
.prev-link{
	position:absolute;
	left:0;
	top:0;
}

/* --- サムネイルの装飾 --- */
.thumbnail-grid, 
.thumbnail-grid * {
	box-sizing: border-box;
}

.thumbnail-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 15px;
	width: 100%;
	/*max-width: 980px;*/
	/*margin: 20px auto;*/
	max-width: 900px;
	margin: 20px 20px 20px 0px;
}

.thumbnail-item {
	display: block;
	text-decoration: none;
	border: 1px solid #ccc;
	overflow: hidden;
	background-color: #fff;
	transition: all 0.2s ease;
}

.thumbnail-item:hover {
	border-color: #999;
	transform: translateY(-2px);
}

.image-box {
	width: 100%;
	aspect-ratio: 1 / 1.414; 
	overflow: hidden;
}

.image-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
