@charset "UTF-8";
@import "html5-reset-1.4.css";

/****** html,body *******/

body {
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	color:#333333;
	background:#f0f0e0;
}
a:link {
	color:#2b63ae;
}
a:visited {
	color:#5a7ead;
}
a:hover,
a:active {
	color:#3e90fa;
}
ruby>rp,
ruby>rt {
	font-size:60%;
	line-height:1;
}
img {
	max-width: 100%;
}
/****** header *******/

#headerWrap {
	position:fixed;
	top:0;
	left:0;
	z-index:99999;
	width:100%;
	background:#006cfa;
	background-color:rgba(0, 108, 250, 0.75);
}
#header {
	width:1400px;
	max-width:98%;
	margin:0 auto;
	/zoom:1;
}
#header:after {
	content:'';
	display:block;
	clear:both;
}
#header #siteTitle h1 {
	position:fixed;
}
#header #siteTitle h1 a {
	display:block;
	width:120px;
	height:120px;
	text-indent:-9999px;
	text-decoration:none;
	background:url(../img/siteTitle2.gif) no-repeat;
}
#header #siteTitle h2 {
	position:fixed;
	top:140px;
	width:120px;
	font-size:90%;
	font-weight:normal;
	line-height:140%;
}
#header #siteSearch {
	float:right;
	width:300px;
	height:20px;
	overflow:hidden;
	margin-right:10px;
	padding:5px 0px;
	text-align:right;
	z-index:22220;
}
#header #siteSearch #searchInput {
	width:230px;
	height:18px;
	margin:0;
	padding:0;
	border:0;
}
#header #siteSearch #searchBtn {
	width:70px;
	height:18px;
	margin:0;
	padding:0;
	border:0;
	background:#dddddd;
}
#header #globalNav {
	float:left;
	margin-left:140px;
	padding:3px 50px 3px 10px;
	background:-webkit-gradient(linear, left top, right top, from(rgba(17, 59, 115, 0.54)), color-stop(0.8, rgba(17, 59, 115, 0.54)), to(rgba(17, 59, 115, 0)) );
	background:-moz-linear-gradient(left top, rgba(17, 59, 115, 0.54), rgba(17, 59, 115, 0.54) 80%, rgba(17, 59, 115, 0));
	filter:progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr=#ff2b63ae, endColorstr=#003e90fa);
}
#header #globalNav li {
	float:left;
}
#header #globalNav li a {
	display:block;
	margin:0 5px 3px 0;
	padding:5px 10px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	position:relative;
	font-size:80%;
	font-weight:normal;
	text-decoration:none;
}
#header #globalNav li a:link,
#header #globalNav li a:visited {
	color:#dddddd;
}
#header #globalNav li a:hover,
#header #globalNav li a:active {
	color:#ffffff;
}
#header #globalNav li a.on {
	background:#ffffff;
	background-color:rgba(255, 255, 255, 0.7);
}
#header #globalNav li a.on:link,
#header #globalNav li a.on:visited {
	color:#333333;
}
#header #globalNav li a.on:hover,
#header #globalNav li a.on:active {
	color:#000000;
}

/****** contents *******/

#contentsWrap {
	width:1400px;
	max-width:98%;
	margin:0 auto;
}
#contents {
	margin:0 0 20px 140px;
	padding:50px 10px 10px 10px;
	background:#ffffff;
	box-shadow: 0 0 .5em rgba(0,0,0,0.4);
	-moz-box-shadow: 0 0 .5em rgba(0,0,0,0.4);
	-webkit-box-shadow: 0 0 .5em rgba(0,0,0,0.4);
	/zoom:1;
}
#contents:after {
	content:'';
	display:block;
	clear:both;
}
#contents #contentsTop {
	margin-bottom:5px;
	font-size:90%;
	/zoom:1;
}
#contents #contentsTop:after {
	content:'';
	display:block;
	clear:both;
}
#contents .breadcrumb {
	float:left;
	margin-bottom:10px;
	list-style:none;
	line-height:160%;
}
#contents .breadcrumb li {
	display:inline;
	margin-bottom:3px;
}
#contents .socialButton {
	float:right;
	margin-bottom:3px;
	list-style:none;
	font-size:90%;
}
#contents .socialButton li {
	float:left;
	margin-bottom:10px;
	vertical-align:top;
}
#contents .socialButton .twitterButton,
#contents .socialButton .facebookButton {
	width:120px;
}
#contents .socialButton iframe {
	vertical-align:top;
}
#contents #contentsHeader {
	margin-bottom:20px;
	padding:10px 20px;
	border:1px solid #cccccc;
	-webkit-border-radius:15px;
	-moz-border-radius:15px;
	border-radius:15px;
	position:relative;
	/zoom:1;
}
#contents #contentsHeader:after {
	content:'';
	display:block;
	clear:both;
}
#contents #contentsHeader h2 {
	font-size:160%;
}
#contents #contentsHeader h2:first-letter {
	font-size:200%;
}
#contents #contentsHeader.small h2 {
	float:left;
	font-size:140%;
}
#contents #contentsHeader.small h2:first-letter {
	font-size:100%;
}
#contents #contentsHeader h2 .sub {
	font-size:80%;
	font-weight:normal;
}
#contents #contentsHeader p {
	margin-top:5px;
	padding:5px;
	border-top:2px ridge #cccccc;
	line-height:140%;
	background:url(../img/alphaBack.png);
}
#contents #contentsHeader.small p {
	float:right;
	margin-top:0px;
	padding:5px;
	border-top:none;
	line-height:100%;
}

/****** mainContents *******/

#mainContents {
	float:left;
	width:100%;
	margin-right:-330px;
	line-height:140%;
}
#mainContents .inner {
	margin-right:330px;
}
#mainContents .inner section,
#mainContents .inner article {
	margin-bottom:20px;
	/zoom:1;
}
#mainContents .inner section:after,
#mainContents .inner article:after {
	content:'';
	display:block;
	clear:both;
}
#mainContents .inner h3 {
	margin-bottom:10px;
	padding:3px 6px;
	border-top:3px solid #2b63ae;
	border-right:1px solid #cccccc;
	border-bottom:1px solid #cccccc;
	border-left:1px solid #cccccc;
	background:#eeeeee;
	background:-webkit-gradient(linear, left top, left bottom, from(#eeeeee), to(#ffffff) );
	background:-moz-linear-gradient(top, #eeeeee, #ffffff);
	filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#ffeeeeee, endColorstr=#ffffffff);
}
#mainContents #facebookComment {
	clear:both;
	width:100%;
}
#mainContents #facebookComment .fb-comments,
#mainContents #facebookComment .fb-comments>span,
#mainContents #facebookComment iframe {
	width: 100% !important;
}

/****** sidebar *******/

#sidebar {
	float:right;
	width:300px;
	font-size:85%;
	line-height:140%;
}
#sidebar .adLarge {
	margin-bottom:20px;
}
#sidebar #facebook {
	margin-bottom:20px;
}
#sidebar #twitter {
	margin-bottom:20px;
}
#sidebar #twitter h3 {
	border-left:10px groove #3e90fa;
	margin-bottom:10px;
	padding-left:10px;
}
#sidebar #twitter .item {
	margin-bottom:10px;
	padding-bottom:10px;
	border-bottom:1px dotted #aaaaaa;
	font-size:90%;
	/zoom: 1;
}
#sidebar #twitter .item:after {
  content: '';
  display: block;
  clear: both;
}
#sidebar #twitter .item p {
  line-height: 140%;
}
#sidebar #twitter .item a {
  text-decoration: none;
}
#sidebar #twitter .item a:hover,
#sidebar #twitter .item a:active {
  text-decoration: underline;
}
#sidebar #twitter .item figure {
  float: left;
  width: 53px;
}
#sidebar #twitter .item figure img {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
#sidebar #twitter .item .user {
  line-height: 90%;
  margin-bottom: 0.2em;
  word-wrap: break-word;
  word-break: break-all;
}
#sidebar #twitter .item .user span {
  color: #999;
  font-size: 80%;
  word-wrap: break-word;
  word-break: break-all;
}
#sidebar #twitter .item .text {
  font-size: 90%;
  color: #333;
  word-wrap: break-word;
  word-break: break-all;
}
#sidebar #twitter .item .time {
  float: left;
  font-size: 80%;
}
#sidebar #twitter .item .time a {
  color: #999;
}
#sidebar #twitter .item .action {
  float: right;
  font-size: 80%;
}


/****** footer *******/

#footerWrap {
	clear:both;
	width:100%;
	margin-top:20px;
	font-size:85%;
	line-height:160%;
	background:#2b63ae;
	color:#dddddd;
}
#footer {
	width:1400px;
	max-width:98%;
	margin:0 auto;
	padding:10px 0;
}
#footer a:link,
#footer a:visited {
	color:#dddddd;
}
#footer a:hover,
#footer a:active {
	color:#ffffff;
}
#footer #about,
#footer #copyright {
	text-align:right;
}

/****** media queries *******/

@media screen and (max-width: 1100px) {
	#header {
		max-width:94%;
	}
	#header #siteTitle h1 a {
		height:80px;
		background:url(../img/siteTitle3.gif) no-repeat;
	}
	#header #siteTitle h2 {
		top:0;
		width:auto;
		height:30px;
		overflow:hidden;
		padding:3px 0 0 150px;
		color:#333333;
	}
	#header #siteSearch {
		width:25%;
		max-width:270px;
	}
	#header #siteSearch #searchInput {
		width:65%;
		max-width:200px;
	}
	#header #siteSearch #searchBtn {
		width:55px;
	}
	#header #globalNav {
		margin-top:30px;
	}
	#contentsWrap {
		max-width:94%;
	}
	#contents {
		width:auto;
		margin:0 0 20px 0;
		padding:90px 10px 10px 10px;
	}
	#mainContents {
		margin-right:-320px;
	}
	#mainContents .inner {
		margin-right:320px;
	}
	#footer {
		max-width:94%;
	}
}
@media screen and (max-width: 900px) {
	#headerWrap {
		position:absolute;
	}
	#header #siteTitle h1 {
		position:absolute;
	}
	#header #siteTitle h2 {
		display:none;
	}
	#header #siteSearch {
		float:right;
		width:100%;
	}
	#header #siteSearch #searchInput {
		width:60%;
		max-width:200px;
	}
	#header #siteSearch #searchBtn {
		width:50px;
	}
	#header #globalNav {
		float:left;
		margin-top:0;
	}
	#contents {
		padding:100px 10px 10px 10px;
	}
	#mainContents {
		float:none;
		width:auto;
		margin-right:0;
	}
	#mainContents .inner {
		margin-right:0;
	}
	#sidebar {
		clear:both;
		float:none;
		width:auto;
		padding-top:20px;
	}
	#sidebar .adLarge {
		text-align:center;
	}
	#sidebar #facebook {
		text-align:center;
	}
}
@media screen and (max-width: 600px) {
}
@media screen and (max-width: 480px) {
	#header {
		height:30px;
	}
	#header #siteTitle h1 a {
	}
	#header #siteSearch {
		display:none;
	}
	#header #globalNav {
		display:none;
	}
	#contents {
		padding-top:90px;
	}
}
@media screen and (max-width: 400px) {
	#sidebar {
		display:none;
	}
}
