@charset "UTF-8";

.archiverow a{
	display:block;
	color:#000;
	
	box-sizing: border-box;
	padding:5px;
	
	height:100%;
}

.archiverow a:hover{
	opacity: 0.5;
	text-decoration: none;
}

.archiverow div.inner{
	background-color:#fff;
	color:#000;
	
	position: relative;
	
	box-sizing: border-box;
	padding:20px;
	
	height:100%;
}

.archiverow p.update{
	text-align: center;
	
	font-size:0.6rem;
	line-height:20px;
	color:#888;
	
	margin-bottom:5px;
}

.archiverow p.update:before{
	display:inline-block;
	content:"投稿日";
	
	box-sizing: border-box;
	padding-right:5px;
}

.archiverow h4{
	font-weight:bold;
	text-align: center;
	
	white-space: nowrap;
	overflow:hidden;
	text-overflow: ellipsis;
}

.archiverow p.thumbnail{
	display:block;
	
	width:100%;
	position: relative;
	
	margin-top:10px;
}

.archiverow p.thumbnail:before{
	display:block;
	content:"";
	
	box-sizing: border-box;
	padding-top:50%;
}

.archiverow p.thumbnail img{
	width:100%;
	height:100%;
	
	position: absolute;
	top:0;
	left:0;
	
	object-fit: cover;
	object-position: center;
}

.archiverow p.excerpt{
	font-size:0.8rem;
	line-height:1.75em;
	color:#444;
	
	margin-top:10px;
}

.archiverow p.btn{
	display:none;
	
	font-size:0.6rem;
	line-height:30px;
	color:#fff;
	
	background-color:#000;
	width:120px;
	margin:0 auto;
	
	text-align: center;
	
	margin-top:10px;
}

.archiverow div.inner span.ol_top_left{
	position: absolute;
	top:10px;
	left:10px;
}

.archiverow div.inner span.ol_top_left:before{
	display:block;
	content:"";
	
	width:30px;
	height:1px;
	
	background-color:#444;
	position: absolute;
	top:0;
	left:0;
}

.archiverow div.inner span.ol_top_left:after{
	display:block;
	content:"";
	
	width:1px;
	height:30px;
	
	background-color:#444;
	position: absolute;
	top:0;
	left:0;
}

.archiverow div.inner span.ol_top_right{
	position: absolute;
	top:10px;
	right:10px;
}

.archiverow div.inner span.ol_top_right:before{
	display:block;
	content:"";
	
	width:30px;
	height:1px;
	
	background-color:#444;
	position: absolute;
	top:0;
	right:0;
}

.archiverow div.inner span.ol_top_right:after{
	display:block;
	content:"";
	
	width:1px;
	height:30px;
	
	background-color:#444;
	position: absolute;
	top:0;
	right:0;
}

.archiverow div.inner span.ol_bottom_left{
	position: absolute;
	bottom:10px;
	left:10px;
}

.archiverow div.inner span.ol_bottom_left:before{
	display:block;
	content:"";
	
	width:30px;
	height:1px;
	
	background-color:#444;
	position: absolute;
	bottom:0;
	left:0;
}

.archiverow div.inner span.ol_bottom_left:after{
	display:block;
	content:"";
	
	width:1px;
	height:30px;
	
	background-color:#444;
	position: absolute;
	bottom:0;
	left:0;
}

.archiverow div.inner span.ol_bottom_right{
	position: absolute;
	bottom:10px;
	right:10px;
}

.archiverow div.inner span.ol_bottom_right:before{
	display:block;
	content:"";
	
	width:30px;
	height:1px;
	
	background-color:#444;
	position: absolute;
	bottom:0;
	right:0;
}

.archiverow div.inner span.ol_bottom_right:after{
	display:block;
	content:"";
	
	width:1px;
	height:30px;
	
	background-color:#444;
	position: absolute;
	bottom:0;
	right:0;
}

/*//////////----- NEWS -----//////////*/

#news div.content{
	box-sizing: border-box;
	padding:5px;
	
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
}

#news article{
	width:100%;
}

@media only screen and (min-width: 720px){
	
	#news article{
		width:50%;
	}
	
}

@media only screen and (min-width: 960px){
	
	#news article{
		width:calc(100%/3);
	}
	
}

/*//////////----- NEWS-SHOW -----//////////*/

#news-show div.summary{
	margin-bottom:10px;
	
	box-sizing: border-box;
	padding:10px;
	border-radius:5px;
	
	background-color:#fff;
	color:#000;
}

#news-show div.summary p.update{
	font-size:0.8rem;
	line-height:20px;
	color:#444;
	
	margin-bottom:5px;
}

#news-show div.summary p.update:before{
	content:"投稿日：";
}

#news-show div.summary h4{
	font-size:1.5rem;
	line-height:1.5em;
	font-weight:bold;
	
	margin-bottom:5px;
	
	box-sizing: border-box;
	padding-left:15px;
	
	position: relative;
}

#news-show div.summary h4:before{
	display:block;
	content:"";
	
	width:5px;
	height:25px;
	
	background-color:#000;
	
	position: absolute;
	top:5px;
	left:2.5px;
}

#news-show div.post-content{
	box-sizing: border-box;
	padding:10px;
	border-radius:5px;
	
	background-color:#fff;
	color:#000;
	
	display:flex;
	flex-flow: row wrap;
	align-items: flex-start;
	justify-content: flex-start;
	
	width:100%;
}

#news-show div.post-content p.thumbnail{
	width:100%;
	
	position: relative;
	display:none;
}

#news-show div.post-content p.thumbnail:before{
	display:block;
	content:"";
	
	box-sizing: border-box;
	padding-top:100%;
	
	background-color:#f8f8f8;
}

#news-show div.post-content p.thumbnail img{
	max-width: 100%;
	max-height: 100%;
	
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	
	margin:auto;
}

#news-show div.post-content{
	margin-bottom:10px;
}

#news-show div.post-content div.text{
	box-sizing: border-box;
	padding:10px;
	
	width:100%;
}

#news-show div.post-content.text-only p.thumbnail{
	display:none;
}

@media only screen and (min-width: 720px){
	
	#news-show div.post-content p.thumbnail{
		width:240px;
		display:none;
	}
	
	#news-show div.post-content div.text{
		width:100%;
		
		box-sizing: border-box;
		padding:0;
		/* padding-left:20px; */
	}
	
	#news-show div.post-content.text-only div.text{
		width:100%;
		padding-left:0;
	}
	
}

.content-twin-main{
	margin-bottom:20px;
}

.content-twin-sidebar{
	margin-bottom:10px;
	
	box-sizing: border-box;
	padding:10px;
	border-radius:5px;
	
	background-color:#fff;
	color:#000;
	display:none;
}

.content-twin-sidebar h5{
	font-size:1.25rem;
	line-height:1.5em;
	font-weight:bold;
	
	margin-bottom:10px;
	
	box-sizing: border-box;
	padding-left:15px;
	
	position: relative;
}

.content-twin-sidebar h5:before{
	display:block;
	content:"";
	
	width:5px;
	height:20px;
	
	background-color:#000;
	
	position: absolute;
	top:5px;
	left:2.5px;
}

.content-twin-sidebar article{
	box-sizing: border-box;
	padding-bottom:10px;
	border-bottom:dashed 1px #000;
	margin-bottom:10px;
}

.content-twin-sidebar article:last-child{
	padding-bottom:0;
	border-bottom:none;
	margin-bottom:0;
}

.content-twin-sidebar article div.inner{
	display:flex;
	flex-flow: row wrap;
	align-items: flex-start;
	justify-content: flex-start;
	
	width:100%;
}

.content-twin-sidebar article div.inner p.thumbnail{
	width:80px;
	
	position: relative;
}

.content-twin-sidebar article div.inner p.thumbnail:before{
	display:block;
	content:"";
	
	width:100%;
	box-sizing: border-box;
	padding-top:100%;
}

.content-twin-sidebar article div.inner p.thumbnail img{
	width:100%;
	height:100%;
	
	position: absolute;
	top:0;
	left:0;
	
	object-fit: cover;
	object-position: center;
}

.content-twin-sidebar article div.inner div.text{
	width:calc(100% - 80px);
	box-sizing: border-box;
	padding-left:10px;
}

.content-twin-sidebar article div.inner div.text h4{
	font-weight:bold;
	
	font-size:0.8rem;
	line-height:1.75em;
}

.content-twin-sidebar article div.inner div.text p.update{
	font-size:0.6rem;
	line-height:20px;
	color:#444;
}

.content-twin-sidebar article div.inner div.text p.update:before{
	content:"投稿日：";
}

.content-twin-sidebar article div.inner div.text p.author{
	font-size:0.6rem;
	line-height:20px;
	color:#444;
}

.content-twin-sidebar article div.inner div.text p.author:before{
	content:"投稿者：";
}

@media only screen and (min-width: 960px){
	
	.content-twin{
		display:flex;
		flex-flow: row wrap;
		align-items: flex-start;
		justify-content: flex-start;
		
		width:100%;
	}
	
	.content-twin div.content-twin-main{
		margin-bottom:0;
		
		width:100%;
		
		box-sizing: border-box;
		padding-right:20px;
	}
	
	.content-twin div.content-twin-sidebar{
		margin-bottom:0;
		
		width:320px;
		display:none;
	}
	
}
