@charset "utf-8";
/* CSS Document */


/* -------------------- all -------------------- */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video{
	margin:0;
	padding:0;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section{
    display:block;
}

h1,h2,h3,h4,h5,h6,p,li,th,td{
	font-weight:normal;
}

li{
	list-style:none;
}

img{
	border:0;
	vertical-align:bottom;
}

a{
	color:#0071a8;
	text-decoration:none;
}

a img{
	transition:0.5s;
}

a img:hover{
	opacity:0.7;
}

body{
	font-size:14px;
	color:#333;
	line-height:1.7em;
	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",游ゴシック,"Yu Gothic",游ゴシック体,YuGothic,メイリオ,Meiryo,"ＭＳ　Ｐゴシック","MS PGothic",Osaka,sans-serif;
	word-break:normal;
}

.cf:after{
	content:"";
	clear:both;
	display:block;
}

.flex{
	display:flex;
	flex-flow:row wrap;
}

.dire_rv{
	flex-flow:row-reverse wrap;
}

.bb{
	box-sizing:border-box;
}





/* -------------------- header -------------------- */

header{
	width:100%;
	min-width:960px;
}

.head_txt_top br{
	display:none;
}

.head_wrap_top{
	width:100%;
	min-width:960px;
	height:600px;
	border-top:solid 6px #b21b1b;
	background:url(../images/main_img.jpg) no-repeat;
	background-size:cover;
	background-position:50% 15%;
	position:relative;
}

.head_wrap_top:before{
	background-color:rgba(0,0,0,0.3);
	content:"";
	display:block;
	z-index:0;
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
}

.head_wrap_archive{
	border-bottom:solid 4px #08085f;
	background:url(../images/head_bg.jpg) no-repeat;
	background-size:cover;
	background-position:50% 50%;
	position:relative;
}

.head_wrap_archive:before{
	background-color:rgba(131,21,23,0.4);
	content:"";
	display:block;
	z-index:0;
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
}

.head_txt_top{
	padding-top:5px;
	font-size:115%;
	color:#fff;
	text-align:center;
	position:relative;
	z-index:1;
}

.head_txt_archive{
	padding:2% 0;
	font-size:129%;
	color:#fff;
	text-align:center;
	position:relative;
}

nav{
	width:100%;
	background:#f88b8b;
	background:linear-gradient(to right, #f88b8b 0%,#cb1d1d 60%,#940606 80%,#6b0505 100%);
}

nav ul.menu{
	width:65%;
	height:40px;
	margin:0 auto;
	justify-content:space-between;
	align-items:center;
}

nav ul.menu li,
nav ul.menu li a{
	color:#fff;
}

nav ul.menu li a:hover{
	text-decoration:underline;
}

nav ul.menu ul.menu_sns li{
	height:20px;
	margin-right:10px;
	line-height:20px;
}

nav ul.menu ul.menu_sns li:last-child{
	margin-right:0;
}





/* -------------------- contents -------------------- */

#contents{
	margin:60px 0 150px;
}

#archive_contents{
	width:960px;
	margin:30px auto 150px;
	justify-content:space-between;
}

.pankuzu{
	margin-bottom:10px;
	font-size:86%;
}

.pankuzu a{
	color:#333;
}

.pankuzu a:hover{
	text-decoration:underline;
}


/* ---------- main ---------- */

.main{
	width:700px;
}


/* ---------- side ---------- */

aside{
	width:230px;
}

.side_menu{
	margin-bottom:20px;
	border:solid 1px #08085f;
}

.side_menu h1{
	padding:5px 10px;
	color:#fff;
	font-weight:bold;
	background-color:#08085f;
}

.side_menu ul li{
	border-bottom:dotted 1px #08085f;
}

.side_menu ul li a{
	padding:5px 10px;
	color:#333;
	display:block;
}

.side_menu ul li a:hover{
	color:#b21b1b;
}

.side_menu ul li:last-child{
	border-bottom:none;
}





/* -------------------- footer -------------------- */

footer{
	width:100%;
	min-width:960px;
	padding:20px 0;
	border-top:solid 4px #08085f;
	background:url(../images/foot_bg.jpg) no-repeat;
	background-size:cover;
	background-position:50% 50%;
	position:relative;
}

footer:before{
	background-color:rgba(131,21,23,0.6);
	content:"";
	display:block;
	z-index:0;
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
}

.foot_inner{
	width:960px;
	margin:0 auto 20px;
	position:relative;
}

.foot_txt{
	width:310px;
	color:#fff;
}

.foot_menu{
	width:650px;
	height:20px;
	line-height:20px;
	justify-content:flex-end;
	align-items:center;
}

.foot_menu li{
	margin-right:20px;
	color:#fff;
}

.foot_menu li.menu_sns{
	margin-right:10px;
}

.foot_menu li.menu_sns:last-child{
	margin-right:0;
}

.foot_menu li a{
	color:#fff;
}

.foot_menu li a:hover{
	text-decoration:underline;
}

.copyright{
	font-size:86%;
	color:#fff;
	text-align:center;
	position:relative;
}