/*===========================================
 reset
===========================================*/
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;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

input, select {
    vertical-align:middle;
}

ol, ul {
    list-style: none;
}


/*===========================================
 clearfix
===========================================*/
.cf {
	zoom: 1;
}
.cf:before, .cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear: both;
}


/*===========================================
 body
===========================================*/
body {
	width: 100%;
	background-color:#FFF;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", sans-serif;
	color:#555;
}
a {
	color:#71Afe3;
	text-decoration:none;
}
a:hover {
	color:#112255;
	text-decoration:underline;
}
/*===========================================
 header
===========================================*/
header {
	text-align:center;
	margin-bottom: 20px;
}

header #left {
	margin:0 auto;
	padding:15px 5px 7px 5px;
	width:90%;
}

header #right {
	margin:0 auto;
	padding:15px 5px 7px 5px;
	width:90%;
}

.logo, .info {
	font-size: 20px;
	font-weight: bold;
}

.logo span, .logo p, .info span, .info p {
	margin-top: 5px;
	font-size: 0.6em;
	font-weight: normal;
}

.title {
	border-bottom: 3px solid #ebebeb;
	border-top: 3px solid #ebebeb;
	font-size: 16px;
	font-weight: normal;
	margin-bottom: 15px;
	padding: 15px 7px;
}

header {
	position:relative;
	overflow:hidden;
}

header p {
	width:100%;
}
header p img {
	width:100%;
	height:auto;
	max-width:960px;
}


/*===========================================
 box
===========================================*/
div#contents section.box h2 {
	margin: 0 0 15px 5px;
}
div#contents section.box article {
	text-align: center;
	width: 100%;
	min-width: 120px;
	float: left;
	margin-bottom: 30px;
}
div#contents section.box article img {
	width: 100%;
	height: auto;
	max-width: 184px;
} 
div#contents section.box article h3 {
	font-size: 0.9em;
	font-weight: bold;
}
div#contents section.box article p {
	text-align: left;
	font-size: 0.7em;
	line-height: 2.0em;
	padding: 0 15px;
}

div#contents section.post article {
	text-align: center;
	margin-bottom: 30px;
	overflow: auto;
}
div#contents section.post article p {
	text-align: left;
	font-size: 0.7em;
	line-height: 2.0em;
	padding: 0 15px;
}
div#contents section.post article img{
	float: none;
	width: 100%;
	height: auto;
	max-width: 260px;
	margin: 0;
}


/*===========================================
 footer
===========================================*/
footer {
	border-top: 8px solid #000;
}
footer div {
	margin: 20px 0 0 20px;
}
footer div p {
	font-size: 0.7em;
	line-height: 2.0em;
}
footer div small {
	font-size: 0.6em;
}


/* 769px〜960px PC向けおよびタブレット向けのレイアウトの指定 */
@media only screen and (min-width: 769px) {
	header {
		position:static;
		overflow:visible;
	}
  
	header #left {
		text-align:left;
		padding:15px 5px 15px 5px;
		width:280px;
		float:left;
	}
  
	header #right {
		text-align:right;
		padding:15px 5px 15px 5px;
		width:280px;
		float:right;
	}
	
	div#contents section.box article {
		width: 33%;
	}
	div#contents section.box article h3 {
		line-height: 2.0em;
	}
	div#contents section.box article p {
		font-size: 0.8em;
		line-height: 2.0em;
	}
	
	div#contents section.post article p {
		font-size: 0.8em;
		line-height: 2.0em;
	}
	div#contents section.post article img{
		text-align: right;
		float:right;
		margin: 0 15px;
	}
}

/* 961px以上 PC向けレイアウトの指定 960pxに固定 */
@media only screen and (min-width: 961px) {
	header {
		width:960px;
		margin-left:auto;
		margin-right:auto;
	}
	div#contents {
		max-width: 960px;
		margin: 0 auto;
	}
	div#contents section.box article {
		width: 33%;
	}
	div#contents section.box article h3 {
		line-height: 2.2em;
	}
	
	div#contents section.post article img{
		text-align: right;
		float:right;
		margin: 0 15px;
	}
	
	footer {
		text-align: center;
	}
}
