@charset "utf-8";
/*
 *  cmn_layout.css
 *
 *  version --- 1.0
 *  updated --- 2015/11/17
 */


/* ヘッダー・フッター中央寄せ（スライド・バナー群分の余白）
---------------------------------------------------------- */
#header,
#footer {
	margin: 0 40px;
}


/* ヘッダー
---------------------------------------------------------- */
#headerWrapper {
	behavior: url(PIE.htc);
}

/* 文字サイズ・言語切替 */
#fontSize, #language {
	behavior: url(PIE.htc);
}


/* グローバルナビ */
#gNavi li ul.show {
	behavior: url(PIE.htc);
}
	#gNavi li ul li.dropLast {
		behavior: url(PIE.htc);
	}
		#gNavi li ul li.dropLast a {
			behavior: url(PIE.htc);
		}


/* スライド看板
---------------------------------------------------------- */
#slideWrapper {
	width: 100%;
	height: 430px;
	background: url(../common/img/slideBg.jpg);
	margin-top: -1px;	/* macFirefox ちらつき対策 */
}
	#slideWrapper img.flL,
	#slideWrapper img.flR {
		margin-top: 195px;
	}

#slide {
	overflow: hidden;
	width: 1040px;
	margin: 0 auto;
	text-align: center;
	position: relative;
}
	#slide ul#slideItem {
		width: 960px;
		height: 430px;
		display: none;
		position: relative;
		overflow: hidden;
	}
		#slide ul#slideItem li {
			position: absolute;
			border-top: 1px solid #ffffff;	/* macFirefox ちらつき対策 */
		}
#prev, #next {
	cursor: pointer;
	display: none;
}
#skip {
	display: none;
	position: absolute;
	cursor: pointer;
	top: 10px;
	right: 42px;
}
ul#playnum {
	display: none;
	position: absolute;
	top: 10px;
	right: 50px;
}
	ul#playnum  li {
		cursor: pointer;
		padding-top: 5px;
	}
#video {
	width: 960px;
	display: inline-block;
}

/* バナー群
---------------------------------------------------------- */
#bannerWrapper {
	position: relative;
	z-index: 300;
	width: 1020px;
	margin: 0 auto;
	margin-top: -50px;
	margin-bottom: 45px;
	padding: 0 10px;
  display: block !important;
	min-height: 1% !important;  /* for IE 7*/
}
#bannerWrapper:after {
	content: "." !important; 
	display: block !important; 
	height: 0 !important; 
	clear: both !important; 
	visibility: hidden !important;
	font-size: 0 !important;
	line-height: 0 !important;
}
	#bannerWrapper li {
		float: left;
		margin-left: 13px;
	}
	#bannerWrapper li:first-child {
		margin-left: 0;
	}

/* 本文
---------------------------------------------------------- */
#main {
	text-align: center;
	background: #fffef7;
	/*position: relative;
	z-index: 100;
	margin-top: 50px;	/* バナー群マイナス余白相殺 */
	/*padding-top: 80px;
	behavior: url(PIE.htc);*/
}

#contentsWrapper {
	margin: 0 40px;
	background: none;
}

#contents {
	width: 654px;	/* 640+14 */
	padding: 0;
}

/* 見出し
---------------------------------------------------------- */
.hStyle01 {
	display: inline-block;
	width: 620px;
	margin-bottom: 0;
	behavior: url(PIE.htc);
}
	.hStyle01 h2 {
		float: left;
	}
	.hStyle01 p {
		float: right;
		margin-top: 1px;
		line-height: 100%;
	}

/* お知らせ
---------------------------------------------------------- */
#topics p,#topics h3{
	word-wrap: break-word;
}
#topics {
	position: relative;
	display: inline-block;
	margin-top: 9px;
	padding-bottom: 60px;
}
	#topics .r1c1,
	#topics .r1c2,
	#topics .r1c3,
	#topics .r2c1,
	#topics .r2c2 {
		position: relative;
		float: left;
		margin-right: 17px;
		margin-top: 18px;
		padding: 10px;
		border: 1px solid #d7ccdd;
		border-radius: 3px;
		background: url(../img/topicsCorner.gif) top right no-repeat, #fff;
		box-shadow: #e6e6e6 3px 3px 0px 0px;
		behavior: url(PIE.htc);
		-pie-background: url(img/topicsCorner.gif) top right no-repeat, #fff;

	}
		#topics .r1c1 img,
		#topics .r1c2 img,
		#topics .r1c3 img,
		#topics .r2c1 img,
		#topics .r2c2 img {
			vertical-align: top;
		}
		#topics .r1c1 img.topicsCategory,
		#topics .r1c2 img.topicsCategory,
		#topics .r1c3 img.topicsCategory,
		#topics .r2c1 img.topicsCategory,
		#topics .r2c2 img.topicsCategory {
			margin-bottom: 5px;
		}
		#topics .r1c1 a,
		#topics .r1c2 a,
		#topics .r1c3 a,
		#topics .r2c1 a,
		#topics .r2c2 a {
			color: #333;
		}
		#topics h3 {
			margin-bottom: 5px;
			font-size: 114.3%;
		}
		#topics p {
			margin-bottom: 3px;
		}
			/* 段落ち対策　詰めたい余白の前の字に適用 */
			#topics h3 .letterSpMinus {
				letter-spacing: -7px;
			}
			#topics p .letterSpMinus {
				letter-spacing: -4px;
			}

	/* r1c1の縦並び用 */
	#topics .r1c1Wrapper {
		display: inline-block;
		float: left;
	}
	#topics .r2c1Wrapper {
		display: inline-block;
		float: left;
		margin-right: 17px;
		width: 201px;
	}

	/* サイズ */
	#topics .r1c1 {
		width: 179px;
		height: 123px;
	}	
	#topics .r1c2 {
		width: 397px;
		height: 123px;
	}	
	#topics .r1c3 {
		width: 615px;
		height: 123px;
	}	
	#topics .r2c1 {
		width: 179px;
		height: 286px;
	}	
	#topics .r2c2 {
		width: 397px;
		height: 286px;
	}	

	/* 文字サイズ大 */
.fontLarge #topics div {
	font-size: 18px;
	line-height: 1.4;
}
	.fontLarge #topics .r1c1,
	.fontLarge #topics .r1c2,
	.fontLarge #topics .r1c3 {
		height: 160px;
	}	
	.fontLarge #topics .r2c1,
	.fontLarge #topics .r2c2 {
		height: 360px;
	}	
		/* 段落ち対策　詰めたい余白の前の字に適用 */
		.fontLarge #topics p .letterSpMinus {
			letter-spacing: -10px;
		}

	/* 色 */
	#topics .redBox {
		border: 1px solid #ff5757;
		background: #fff7f7;
		background: url(../img/topicsCornerRed.gif) top right no-repeat, #fff7f7;
		behavior: url(PIE.htc);
		-pie-background: url(img/topicsCornerRed.gif) top right no-repeat, #fff7f7;
	}
	#topics .colorBox01 {
		background: #fcfaff;
		background: url(../img/topicsCorner.gif) top right no-repeat, #fcfaff;
		behavior: url(PIE.htc);
		-pie-background: url(img/topicsCorner.gif) top right no-repeat, #fcfaff;
	}
	
	#topics .notesRed {
		color: #ff5757;
	}

		/* 画像 */
		#topics .r1c2 img.topicsImg,
		#topics .r1c3 img.topicsImg {
			float: right;
			margin-top: 3px;
			margin-right: 3px;
			margin-left: 20px;
		}
		
		#topics .r2c1 img.topicsImg,
		#topics .r2c2 img.topicsImg {
			position: absolute;
			right: 13px;
			bottom: 10px;
		}	
		/* 縦長の画像を配置する場合 */
		#topics .r2c2 img.vLong {
			position: static;
			right: auto;
			bottom: auto;
			float: right;
			margin-top: 3px;
			margin-right: 3px;
			margin-left: 20px;
		}	

/* fb・バナー群
---------------------------------------------------------- */
#aside {
	width: 282px;
	float: right;
	margin-bottom: 60px;
}

.fb-page {
	height: 541px;
	border: 1px solid #aaa;
}

#aside .sp {
	margin-top: 21px;
}

/* ページトップ
---------------------------------------------------------- */

/* ビデオローダー
---------------------------------------------------------- */
#videoLoader {
	position: absolute;
	top: 180px;
	left: 520px;
}


/* フッター
---------------------------------------------------------- */
#footerWrapper {
	behavior: url(PIE.htc);
}
