@charset "utf-8";

/* ----------------------------------------------------------
 Default Setting
-----------------------------------------------------------*/

	
/*------ Site Set (default) ------*/

body, table { 
	font-size: 14px;
	font-family: 'Open Sans', meiryo , "メイリオ", verdana ,'ＭＳ Ｐゴシック', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN" ,osaka ,sans-serif;
	line-height: 1.75em;
	color: #333;
	}
	
	* {
		box-sizing: border-box;
		margin: 0;
		padding: 0;
		}
	
	p,ul,ol,dl,table  { margin: 0 0 1em 0;  }

	address           { font-style: normal; }
	
	img {
		image-rendering: -moz-crisp-edges;
		image-rendering:   -o-crisp-edges;
		image-rendering: -webkit-optimize-contrast;
		image-rendering: crisp-edges;
		}


	sup { font-size: 80%; line-height: 0px; }
	sub { font-size: 80%; line-height: 0px; vertical-align: baseline; }
	/* IE6 */ * html sup { position: relative; top: -0.4em; vertical-align: top; }
	/* IE7 */ *:first-child+html sup { position: relative; top: -0.4em; vertical-align: top; }


	/* Anchor */
	a:link ,
	a:visited {
		color: #175699;
		text-decoration: none;
		}
	a:hover ,
	a:active {
		text-decoration: underline;
		}

	/* Clear */
	.clear { clear: both; }
	
	/* Clearfix */
	header:after,
	article:after,
	.clearfix:after ,
	p#pageTop:after ,
	section:after ,
	nav:after,
	div:after ,
	ul:after ,
	ol:after ,
	li:after ,
	dl:after {
		visibility: hidden;
		display: block;
		font-size: 0;
		content: "";
		clear: both;
		height: 0;
		}
		/* IE6 */
		* html header,
		* html article,
		* html nav,
		* html section:after ,
		* html .clearfix ,
		* html p#pageTop ,
		* html div ,
		* html ul ,
		* html ol ,
		* html li ,
		* html dl { zoom: 1; } 
		/* IE7 */
		*:first-child+html header ,
		*:first-child+html nav ,
		*:first-child+html article ,
		*:first-child+html section:after ,
		*:first-child+html .clearfix ,
		*:first-child+html p#pageTop ,
		*:first-child+html div ,
		*:first-child+html ul ,
		*:first-child+html ol ,
		*:first-child+html li ,
		*:first-child+html dl { zoom: 1; } 

	.spOnly { display: none; }
	.iBlock { display: inline-block; }



/*-----------------------------------------------------------
 Icon
-----------------------------------------------------------*/

/*---------- Blank ----------*/

header    a[target=_blank]:after ,
#contents a[target=_blank]:after ,
footer    a[target=_blank]:after {
	margin: 0 5px 0 5px;
	content: url("/common/images/icoBlank.gif"); 
	}
	#siteSearch #primary a[target=_blank]:after ,
	#contents   a[href*=".pdf"]:after ,
	header      a[target=_blank].notBlankIcon:after ,
	#contents   a[target=_blank].notBlankIcon:after ,
	footer      a[target=_blank].notBlankIcon:after{ margin: 0; content: ""; }

img.icoBlank {
	margin: 0 10px 0 5px;
	vertical-align: middle;
	}

span.pdfFileSize {
	margin: 0 0 0 5px; padding: 0 0 0 20px;
	background: transparent url("/company/ir/base/img/icon_pdf.gif") no-repeat left center;
	}

/*---------- List ----------*/

ul.icoList ,
dl.icoList {
	}
	p.icoList     ,
	ul.icoList > li ,
	dl.icoList > dt {
		padding: 0 5px 0 15px;
		background: transparent url("/common/images/icoList.gif") no-repeat 3px 0.65em;
		}
	dl.icoList > dd {
		padding: 0 5px 0 15px;
		}
		dl.icoList.ilDd > dd {
			padding-left: 30px;
			text-indent: -1em;
			}
			dl.icoList.ilDd > dd:before { content: "・"; }

ul.icoAsterisk ,
dl.icoAsterisk {
	}
	p.icoAsterisk ,
	ul.icoAsterisk > li ,
	dl.icoAsterisk > dt {
		position: relative;
		padding-left: 1.3em;
		}
		p.icoAsterisk { margin-bottom: 1em; }
		dl.icoAsterisk > dt { margin: 0; }
	
		p.icoAsterisk:before ,
		ul.icoAsterisk > li:before ,
		dl.icoAsterisk > dt:before {
			position: absolute;
			left: 0;
			content: "※";
			}

	dl.icoAsterisk > dd {
		margin: 0 0 5px; padding: 0 5px 0 18px;
		}

ol.icoDecimal {
	}
	ol.icoDecimal li {
		margin: 0 0 0 2em;
		list-style: decimal;
		}

ol.icoAlpha {
	}
	ol.icoAlpha li {
		margin: 0 0 0 2em;
		list-style: lower-alpha;
		}

ol.icoNone {
	}
	ol.icoNone li {
		margin: 0;
		list-style: none;
		}


/*---------- Arrow ----------*/

p.icoArrow ,
ul.icoArrow li {
	padding: 0 0 0 20px;
	background: transparent url("/company/common/images/icoArrow.png") no-repeat 5px 0.5em;
	}
	a.icoArrow {
		display: inline-block;
		padding: 0 0 0 20px;
		background: transparent url("/company/common/images/icoArrow.png") no-repeat 5px 0.5em;
		}

	/*a.icoArrow:hover { background-position: 8px 0.5em; }*/

ul.icoLink {
	}
	ul.icoLink li {
		padding: 0 5px 0 15px;
		background: transparent url("/common/images/icoArrow_def_s.gif") no-repeat 5px center;
		}



/*-----------------------------------------------------------
 Float & Flat
-----------------------------------------------------------*/

/*---------- Float ----------*/

.prImage {
	float: right;
	margin-left: 20px;
	text-align: center;
	}
	
.plImage {
	float: left;
	margin-right: 20px;
	text-align: center;
	}


/*---------- Flat ----------*/

dl.flatDef  {
	}
	dl.flatDef  dt {
		clear: both;
		float: left;
		margin: 0 7px 0 0; padding: 0 10px 0 0;
		background: transparent url("/common/images/icoSeparate.gif") no-repeat right 0.6em;
		}

dl.flatInDef {
	}
	dl.flatInDef dt {
		display: inline;
		margin: 0 7px 0 0; padding: 0 10px 0 0;
		background: transparent url("/common/images/icoSeparate.gif") no-repeat right 0.5em;
		}
	dl.flatInDef dd {
		display: inline;
		margin: 0 25px 0 0;
		}

ul.flatUno {
	}
	ul.flatUno li {
		float: left;
		margin: 0 20px 0 0;
		white-space: nowrap;
		}

ul.colList {
	margin: 20px 0 0;
	text-align: center;
	}
	ul.colList li {
		display: inline-block;
		margin: 0 5px 20px;
		vertical-align: top;
		}

ul.phList {
	margin: 20px 0 20px -1px;
	}
	ul.phList li {
		float: left;
		margin: 0 0 1px 1px;
		}
		ul.phList li.plRight { float: right; margin: 0 0 1px 1px; }

/*-----------------------------------------------------------
 Text
-----------------------------------------------------------*/

.txtLeft   { text-align:   left; }
.txtRight  { text-align:  right; }
.txtCenter { text-align: center; }
.txtMiddle { vertical-align: middle; }
.txtTop    { vertical-align: top; }


td.txtLeft   { text-align:   left !important; }
td.txtRight  { text-align:  right !important; }
td.txtCenter { text-align: center !important; }
th.txtMiddle ,
td.txtMiddle { vertical-align: middle !important; }
th.txtTop    ,
td.txtTop    { vertical-align:    top !important; }


.txtRed    ,
a.txtRed   { color: #ff0000; }
.txtStrong { font-weight: bold; }

.txtMinLead {
	font-size: 24px;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	line-height: 1.4em;
	font-weight: 400;
	}


/*-----------------------------------------------------------
 Button
-----------------------------------------------------------*/

.btnLine {
	display: inline-block;
	padding: 8px 18px 6px 29px;
	background: #fff url("/company/common/images/icoArrow.png") no-repeat 13px center;
	border: 1px solid #ccc;
	border-radius: 5px;
	transition: all ease-out .3s;
	}
	
	.btnLine:hover {
		color: #fff;
		background: rgba(13,44,85,1) url("/company/common/images/icoArrow-white.gif") no-repeat 13px center;
		border: 1px solid rgba(13,44,85,1);
		}



/*-----------------------------------------------------------
 Box
-----------------------------------------------------------*/

.cntFrame {
	width: 1000px;
	margin: 0 auto;
	}
	#contents section.cntFrame { margin-right: auto; margin-left: auto; }

.grayBox {
	margin: 0 0 1em; padding: 10px;
	box-shadow: inset 0 0 0 1px #ccc;
	border: 4px solid #eee;
	}
	.grayBox p:last-child  ,
	.grayBox ul:last-child ,
	.grayBox dl:last-child ,
	.grayBox ol:last-child { margin-bottom: 0; }
	
	#primary .grayBox h5 {
		margin-left: 0;
		}



/*-----------------------------------------------------------
 Table
-----------------------------------------------------------*/

/*---------- Default ----------*/

#contents table {
	width: 100%;
	margin: 10px 0 20px;
	border: 1px solid #ccc;
	border-collapse: collapse;
	}
	
	#contents table caption {
		margin: 0 0 10px -15px; padding: 0 0 0 16px;
		text-align: left;
		text-shadow: 0.1px 0.1px 0 #333;
		background: transparent url("/common/images/icoSquare.gif") no-repeat left 0.5em;
		}
		#contents table caption.noNm { margin: 0 0 10px 0; }
	
	#contents table th ,
	#contents table td {
		padding: 5px 8px;
		vertical-align: middle;
		border: 1px solid #aaa;
		}
		#contents table thead th { text-align: center; background: #ddd; }
		#contents table tbody th { vertical-align: middle;  background: #f2f2f2; }
		#contents form table tbody th { text-align: left; }
		
		
		#contents table td {
			}
			#contents table td p ,
			#contents table td dl ,
			#contents table td ul ,
			#contents table td ol { margin: 0; }
		

	
/*---------- Flat Table ----------*/

/*#contents table.defStyle {
	margin: 15px 0 20px;
	background: #fff;
	border: none;
	border-collapse: separate;
	border-spacing: 1px;
	border-top: 1px dotted #bbb;
	}
	#contents table.defStyle th ,
	#contents table.defStyle td {
		padding: 8px 10px 6px;
		vertical-align: top;
		border: none;
		border-bottom: 1px dotted #bbb;
		}
		#contents table.defStyle th { color: #303b40; background: #eee; border-right: 1px dotted #ddd;  }
		#contents table.defStyle td { }

		#contents table.defStyle th.icoRequire {
			background-image: url("/common/images/icoAsterisk_blue.png");
			background-repeat: no-repeat;
			background-position: right center;
			}*/


/*---------- No Style Table ----------*/

#contents table.noStyle {
	width: auto;
	margin: 0 0 10px;
	border: none;
	}
	
	#contents table.noStyle th ,
	#contents table.noStyle td {
		padding: 0;
		vertical-align: top !important;
		background: none;
		border: none;
		}
		#contents table.noStyle th { padding: 0 10px 0 0; background: transparent url("/common/images/icoSeparate.gif") no-repeat right 0.6em; }
		#contents table.noStyle td { padding-left: 10px; }




/*-----------------------------------------------------------
 Form
-----------------------------------------------------------*/

form input ,
form select{
	margin: 0 5px 0 0;
	vertical-align: middle;
	}
	form input    ,
	form select   ,
	form textarea {
		padding: 3px 8px;
		font-family: meiryo ,verdana ,MS PGothic ,osaka ,sans-serif;
		border: 1px solid #999;
		border-radius: 3px;
		}
		form input:focus    ,
		form select:focus   ,
		form textarea:focus { background: #eafeff; }

		
		form input[type=radio] ,
		form input[type=checkbox] { border: none; }
	
	form input.inXShort   { width: 6em; }
	form input.inShort   { width: 160px; }
	form input.inMiddle  { width: 300px; }
	form input.inLong    ,
	form textarea.inLong { width: 520px; }

	form th span.txtRed { float: right; }

	#primary form button {
		background: none;
		border: none;
		outline: none;
		cursor: pointer;
		}
		#primary form button span {
			min-width: 150px;
			margin: 0 10px; padding: 22px 30px 22px;
			display: block;
			font-family: 'Open Sans', meiryo ,verdana ,'ＭＳ Ｐゴシック' ,osaka ,sans-serif;
			color: #fff;
			background: #f75c6e;
			background:    -moz-linear-gradient(-6deg, #f75c6e 0%, #f75c6e 50%, #fb6c7d 50%, #fb6c7d 100%); /* FF3.6-15 */
			background: -webkit-linear-gradient(-6deg, #f75c6e 0%, #f75c6e 50%, #fb6c7d 50%, #fb6c7d 100%); /* Chrome10-25,Safari5.1-6 */
			background:         linear-gradient(-6deg, #f75c6e 0%, #f75c6e 50%, #fb6c7d 50%, #fb6c7d 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
			border: 1px solid #fff;
			box-shadow: 0 6px 0 -4px #ddd;
			transition: all ease-out .3s;
			}
			
			#primary form button span:hover {
				background: #f14a5e;
				background:    -moz-linear-gradient(-6deg, #f14a5e 0%, #f14a5e 50%, #f45669 50%, #f45669 100%); /* FF3.6-15 */
				background: -webkit-linear-gradient(-6deg, #f14a5e 0%, #f14a5e 50%, #f45669 50%, #f45669 100%); /* Chrome10-25,Safari5.1-6 */
				background:         linear-gradient(-6deg, #f14a5e 0%, #f14a5e 50%, #f45669 50%, #f45669 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
				}
	

