@charset "UTF-8";


/* 基本クラス
----------------------------------------*/

/* リセット
----------------------------------------*/

html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6,  
pre, form, fieldset, input, textarea, p, th, td {  
	margin: 0;
	padding: 0;  
	font-size: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
} 

img { 
	border: 0;
}

ol ,
ul {
	list-style: none;
}

article, aside, figure, figcaption, footer, header, nav, section {
	display: block;
	margin: 0;
	padding: 0;  
	font-size: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}


/* レイアウト
----------------------------------------*/

html {
	height: 100%;
}

body {
	color: #000000;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Yu Gothic", YuGothic, sans-serif;
	font-size: 13px;
	*font-size: small;
	*font: x-small;
	line-height: 1.5;
	background: #ffffff;
	height: 100%;
	-webkit-text-size-adjust: 100%;
}


@media only screen and (max-width: 736px) {
	body {
		min-width: 320px;
		height: 100%;
	}
}


a {
	position: relative;
}

a:link, a:visited {
	color: #000000;
	text-decoration: underline;
}

a:hover, a:active {
	color: #000000;
	text-decoration: none;
}

/* PCだけ表示 */
.visible_l {
	display: block !important;
}
/* SPだけ表示 */
.visible_s {
	display: none !important;
}

@media only screen and (max-width: 736px) {
	/* PCだけ表示 */
	.visible_l {
		display: none !important;
	}
	/* SPだけ表示 */
	.visible_s {
		display: block !important;
	}
}



* html div#wrapper {
	height: 100%;
}

div#wrapper {
	min-height: 100%;
	position: relative;
}

body > #wrapper {
	height: auto;
}




/*float
----------------------------------------*/

.clear {
	clear: both !important;
}
.float_n {
	float: none !important;
}

.float_l {
	float: left;
}

.float_r {
	float: right;
}

.img_float_l {
	float: left;
	margin-right: 20px;
}

.img_float_r {
	float: right;
	margin-left: 20px;
}

.align_l {
	text-align: left !important;
}

.align_c {
	text-align: center !important;
}

.align_r {
	text-align: right !important;
}

.valign_m {
	vertical-align: middle !important;
}

/*color
----------------------------------------*/

.color_red { color: #d51100; }
.color_blue { color: #25508f; }
.color_geen { color: #23b607; }
.color_orange { color: #F60; }
.color_gray { color:#999; }


/*font-size
----------------------------------------*/

.font10 { font-size: 77%; }
.font11 { font-size: 85%; }
.font12 { font-size: 93%; }
.font13 { font-size: 100%; }
.font14 { font-size: 108%; }
.font15 { font-size: 116%; }
.font16 { font-size: 123.1%; }
.font17 { font-size: 131%; }
.font18 { font-size: 138.5%; }
.font19 { font-size: 146.5%; }
.font20 { font-size: 153.9%; }
.font21 { font-size: 161.6%; }
.font22 { font-size: 167%; }
.font23 { font-size: 174%; }
.font24 { font-size: 182%; }
.font25 { font-size: 189%; }
.font26 { font-size: 197%; }
.fontb { font-weight: bold; }


/*margin
----------------------------------------*/

/*top*/
.mt0{ margin-top: 0px !important; }
.mt05{ margin-top: 5px !important; }
.mt10{ margin-top: 10px !important; }
.mt15{ margin-top: 15px !important; }
.mt20{ margin-top: 20px !important; }
.mt25{ margin-top: 25px !important; }
.mt30{ margin-top: 30px !important; }
.mt40{ margin-top: 40px !important; }

/*bottom*/
.mb0 { margin-bottom: 0px !important; }
.mb05 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb80 { margin-bottom: 80px !important; }

/*right*/
.mr0 { margin-right: 0px !important; }
.mr05 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr35 { margin-right: 35px !important; }
.mr40 { margin-right: 40px !important; }

/*left*/
.ml0 { margin-left: 0px !important; }
.ml05 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml35 { margin-left: 35px !important; }
.ml40 { margin-left: 40px !important; }



/*padding
----------------------------------------*/


/*width
----------------------------------------*/

/*clearfix
----------------------------------------*/
.clearfix { zoom:1; }

.clearfix:after {
	content: "";  
	display: block; 
	visibility: hidden; 
	clear: both; 
	height: 0.1px; 
	font-size: 0.1em; 
	line-height: 0;
}

/* img
----------------------------------------*/
.img_responsive {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
	_width: 100%;
}

/* hr
----------------------------------------*/

hr {
	clear: both;
	border: none;
	border-top: dotted 1px #dadada;
	margin: 30px 0;
}

hr.noline {
	clear: both;
	border: none;
	color: transparent;
	height: 1px;
	margin: 30px 0;
}
