@charset "utf-8";

/* IE以外でスクロールバーを常に出す(IEは元々常に出てる) */
html { overflow-y: scroll; }
/* IE7、FF3.5以上にて、画像をリサイズをバイキュービック法で行う = 若干キレイに見えます */
img { -ms-interpolation-mode:bicubic; image-rendering: optimizequality; vertical-align: bottom; }
/* Common */
#doc { margin: 0 auto; min-height: 100%; _height:100%; width: 980px;}
/* layout_2col */
.layout_2col .layout_main { width: 665px; position: relative; }
.layout_2col .layout_sidebar { width: 300px; }
/* 便利ツール */
/* layout処理 */
.left				{ *display: inline; float: left; }
.right				{ *display: inline; float: right; }
.layout-center		{ margin-left:auto; margin-right:auto; position:relative; }
img.layout-center	{ display: block; }
.clear				{ clear: both; }
/* テキスト処理 */
.text-center		{ text-align: center; }
.text-right			{ text-align: right; }
.text-left			{ text-align: left; }
.strikeout			{ text-decoration: line-through; }
.underline			{ text-decoration: underline; }
.bold				{ font-weight: bold; }
.normal				{ font-weight: normal; }
/* display と visibility　*/
.hide				{ display: none!important; }
.show,
.isBlock			{ display: block; }
.isInline			{ display: inline; }
.isInline-block		{ display: inline-block; *display: inline; zoom: 1; }
.isInvisible		{ visibility: hidden; }
/* ulに対して追加 */
.list-disc 			{ list-style: disc; padding-left: 15px; }
.list-square		{ list-style: square; padding-left: 15px; }
.list-decimal		{ list-style: decimal; padding-left: 15px; }
/* position */
.pos-rel { position: relative; }
.pos-abs { position: absolute; }
/* テキスト飛ばし */
.replace { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }
/* リンク hoverで透明度を下げる */
a:hover img.trans,
a.trans:hover {
	cursor: pointer;
	filter:alpha(opacity=68);
	-moz-opacity:0.68;
	opacity:0.68;
}
/* スペースヘルパ
p,m = paddingとmargin
a,t,r,b,l,h,v = all,top,right,bottom,left,horizontal,vertical
s,m,l,n = small(7px),medium(14px),large(21px),none(0)
*/
.ptn, .pvn, .pan { padding-top: 0 }
.pts, .pvs, .pas { padding-top: 7px }
.ptm, .pvm, .pam { padding-top: 14px }
.ptl, .pvl, .pal { padding-top: 21px }
.prn, .phn, .pan { padding-right: 0 }
.prs, .phs, .pas { padding-right: 7px }
.prm, .phm, .pam { padding-right: 14px }
.prl, .phl, .pal { padding-right: 21px }
.pbn, .pvn, .pan { padding-bottom: 0 }  
.pbs, .pvs, .pas { padding-bottom: 7px }
.pbm, .pvm, .pam { padding-bottom: 14px }
.pbl, .pvl, .pal { padding-bottom: 21px }
.pln, .phn, .pan { padding-left: 0 }
.pls, .phs, .pas { padding-left: 7px }
.plm, .phm, .pam { padding-left: 14px }
.pll, .phl, .pal { padding-left: 21px }
.mtn, .mvn, .man { margin-top: 0 }
.mts, .mvs, .mas { margin-top: 7px }
.mtm, .mvm, .mam { margin-top: 14px }
.mtl, .mvl, .mal { margin-top: 21px }
.mrn, .mhn, .man { margin-right: 0 }
.mrs, .mhs, .mas { margin-right: 7px }
.mrm, .mhm, .mam { margin-right: 14px }
.mrl, .mhl, .mal { margin-right: 21px }
.mbn, .mvn, .man { margin-bottom:0 }  
.mbs, .mvs, .mas { margin-bottom: 7px }
.mbm, .mvm, .mam { margin-bottom: 14px }
.mbl, .mvl, .mal { margin-bottom: 21px }
.mln, .mhn, .man { margin-left:0 }
.mls, .mhs, .mas { margin-left: 7px }
.mlm, .mhm, .mam { margin-left: 14px }
.mll, .mhl, .mal { margin-left: 21px }
.hasGrid {
	letter-spacing: -0.31em; /* webkit: グリッド間のスペース均一化 */
	*letter-spacing: normal; /* reset IE < 8 */
	word-spacing: -0.43em; /* IE < 8 && gecko: グリッド間のスペース均一化 */
}
.size1of1,.size1of2,.size1of3,.size2of3,.size1of4,.size3of4,.size1of5,.size2of5,.size3of5,.size4of5 {
	display: inline-block;
	zoom: 1; *display: inline; /* IE < 8: inline-block は IE8以下でサポートしていないので、ハック */
	/float: left;/* IE < 7 */
	letter-spacing: normal;
	word-spacing: normal;
	vertical-align: top;
}
.size1of1 { display: block; }
.size1of2 { width: 50%; *width: 49.5%; }
.size1of3 { width: 33.33333%; }
.size2of3 { width: 66.66666%; }
.size1of4 { width: 25%; *width: 24%;}
.size3of4 { width: 75%; }
.size1of5 { width: 20%; *width: 19.8%; }
.size2of5 { width: 40%; }
.size3of5 { width: 60%; }
.size4of5 { width: 80%; }
/* form */
textarea { overflow: auto; } /* www.sitepoint.com/blogs/2010/08/20/ie-remove-textarea-scrollbars/ */
.ie6 legend, .ie7 legend { margin-left: -7px; } 
/* Align checkboxes, radios, text inputs with their label by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
.ie7 input[type="checkbox"] { vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }
*/
/* Hand cursor on clickable input elements */
label, input[type="button"], input[type="submit"], input[type="image"], button { cursor: pointer; }
/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea { margin: 0; }
/* Colors for form validity */
input:invalid, textarea:invalid { border-radius: 1px; -moz-box-shadow: 0px 0px 5px red; -webkit-box-shadow: 0px 0px 5px red; box-shadow: 0px 0px 5px red; }
/* clearfix */
.clearfix:after,.cf:after,#head:after,#body:after,#foot:after,.layout-unit:after,.hasGrid:after,.hasGrid .last-grid:after,.mod .inner:after,.mod .hd:after,.mod .bd:after,.mod .ft:after,.media:after,.media .bd:after,
.list-float:after,.section:after {
	clear: both;
	display: block;
	visibility: hidden;
	overflow: hidden;
	height: 0 !important;
	line-height: 0;
	font-size: xx-large;
	content: " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ";
}
.clearfix,.cf,#head,#body,#foot,.layout-unit,.hasGrid,.hasGrid .last-grid,.mod .inner,.mod .hd,.mod .bd,.mod .ft,.media,.media .bd,.list-float,.section { zoom: 1; } /* IE < 8 */
/* ベースフォント設定 */
body,select,input,textarea {
	color: #404040;
	font-size: 12px;
	/* font-family: "MS PGothic","Osaka","Lucida Grande",Tahoma,Verdana,Arial,sans-serif; */
	font-family: 'Lucida Grande','Hiragino Kaku Gothic ProN','MS PGothic',sans-serif;
	line-height: 1.42;
}
select,input,textarea,button { font-size:99%; }
pre,code,kbd,samp { font-family: monospace; }
strong,em,th { font-weight: bold; font-style: normal; }
sub { vertical-align: sub; font-size: smaller; }
sup { vertical-align: super; font-size: smaller; }
/* Headings */
h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6 { font-weight: bold; }
/* font-size */
h1, .h1 { font-size: 22px; }
h2, .h2 { font-size: 20px; }
h3, .h3 { font-size: 18px; }
h4, .h4 { font-size: 16px; }
h5, .h5 { font-size: 14px; }
h6, .h6 { font-size: 12px; }
small, .small { font-size: 11px; }
big, .big { font-size: 24px; }
.huge { font-size: 36px; }
.cap, .caption { font-size: 12px; ine-height: 1.2;}
a:link { color: #04C; text-decoration: underline; }
a:visited { color: #606; text-decoration: underline;}
a:hover { color: #06C; text-decoration: none;}