@charset "UTF-8";
/*
 * cmn_layout.css
 *
 *  version --- 3.6
 *  updated --- 2014/06/20
 *
 */

/* !HTML5 elements
---------------------------------------------------------- */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section
{ display: block;}

/* !Reseting
---------------------------------------------------------- */
body {
	font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, 'メイリオ', Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
	font-size: 14px; /* 10px; */
	line-height: 1.8;
	color: #333;
	-webkit-text-size-adjust: none;
}
@media screen and (max-width: 768px) {
	body {
		font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, 'メイリオ', Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
		font-size: 12px;
		line-height: 1.5;
		color: #333;
		overflow-x: hidden; 
		-webkit-text-size-adjust: none;
	}
}

body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td
{ margin: 0; padding: 0;}
input, textarea
{ margin: 0; font-size: 100%;}
label
{ cursor: pointer;}
table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
fieldset, img
{ border: 0;}
img
{ vertical-align: top;}
address, caption, cite, code, dfn, em, th, var
{ font-style: normal; font-weight: normal;}
ol, ul
{ list-style: none;}
caption, th
{ text-align: left;}
h1, h2, h3, h4, h5, h6
{ font-size: 100%; font-weight: normal;}
q:after, q:before
{ content:'';}
a, input
{ /* outline: none; */ }
abbr, acronym
{ border: 0;}

/* !Reset Module
---------------------------------------------------------- */
.reset div, .reset dl, .reset dt, .reset dd, .reset ul, .reset ol, .reset li, .reset h1, .reset h2, .reset h3, .reset h4, .reset h5, .reset h6,
.reset pre, .reset form, .reset fieldset, .reset p, .reset blockquote, .reset th, .reset td
{ margin: 0; padding: 0;}
.reset input, .reset textarea
{ margin: 0; font-size: 100%;}
.reset table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
.reset fieldset, .reset img, .reset abbr, .reset acronym
{ border: 0;}
.reset address, .reset caption, .reset cite, .reset code, .reset dfn, .reset em, .reset th, .reset var
{ font-style: normal; font-weight: normal;}
.reset ol, .reset ul
{ list-style: none;}
.reset caption, .reset th
{ text-align: left;}
.reset h1, .reset h2, .reset h3, .reset h4, .reset h5, .reset h6
{ font-size: 100%; font-weight: normal;}
.reset a, .reset input
{ /* outline: none; */ }
.reset q:after, .reset q:before
{ content:'';}

/* !Clearfix
---------------------------------------------------------- */
.clearfix,
#headerPanel,
#contents,
#footerIn,
.section
{
	display: block;
	min-height: 1%;
}
.clearfix:after,
#headerPanel:after,
#contents:after,
#footerIn:after,
.section:after
{
	clear: both;
	content:"";
	display: block;
	height: 0;
	visibility: hidden;
}
* html .clearfix,
* html #headerPanel,
* html #contents,
* html #footerIn,
* html .section
{
	height: 1%;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}
/* !Layout
---------------------------------------------------------- */
html { overflow-y: scroll;}
body { text-align: center;}
html.enable-sp-menu {
   overflow: hidden;
}
@media print {
	html,
	html body { *zoom: 0.65;}
}
/* !wrapper
---------------------------------------------------------- */
#wrapper {
	margin: 0 auto;
	text-align: left;
}
/* !header,footer
---------------------------------------------------------- */
#header,
#header02 {
	width: 100%;
	height: 90px;
	border-bottom: #dddddd 1px solid;
	margin-bottom: 50px
}
#header02 {
	padding: 20px 0;
	height: auto;
	text-align: center;
}
	#header02 img {
		max-width: 100%;
	}
#headerIn {
	max-width: 968px;
	margin: 0 auto;
	overflow: hidden;
}
	#header .logo01 {
		float: left;
		padding-top: 19px;
	}
	#header .txt01 {
		float: left;
		padding: 40px 0 0 42px;
	}
	#header .logo02 {
		float: right;
		padding-top: 32px;
	}

#footer,
#footer02 {
	width: 100%;
	height: 95px;
	border-top: #dddddd 1px solid;
}
#footer02 {
	padding-top: 10px;
	text-align:center;
}
	#footer02 img {
		max-width: 100%;
	}
#footerIn {
	max-width: 968px;
	margin: 0 auto;
	overflow: hidden;
}
	#footer .logo01 {
		float: left;
		padding-top: 27px;
	}
	#footer .copyright {
		float: left;
		padding: 36px 0 0 33px;
		line-height: 1.1;
		font-size: 10px;
		color: #9c9c9c;
	}
	
	
	/* ! SP header,footer
---------------------------------------------------------- */
@media screen and (max-width: 768px) {
#header,
#header02 {
	width: 100%;
	height: 74px;
	border-bottom: #02763b 4px solid;
	margin-bottom: 15px
}
#header02 {
	height: auto;
	text-align:center;

}
	#header .logo02 {
		float: none;
		clear:both;
		width: 100%;
		height: 20px;
		overflow: hidden;
		position:absolute;
		top:0;
		left:0;
		padding-top: 0;
		background: #eee;

	}
		#header .logo02 img {
			display: block;
			float: right;
			margin: 1px 12px 0 0;
			width: 101px;
			height: 13px;
			background: url(/assets_sp/images/logo_header01.png) left top no-repeat;
			background-size: 101px 13px;
			text-indent: -9999px;
			position:relative;
			z-index:3;
		}

#headerIn {
	width: 100%;
	overflow: hidden;
	position:relative;
}
	#header .logo01{
		padding-top: 21px;
		float: left;
		position:relative;
		z-index:2;
	}
	#header .logo01 img {
		float: left;
		margin: 10px 0 0 8px;
		width: 114px;
		height: 31px;
		background: url(/assets_sp/images/logo_header02.gif) left top no-repeat;
		background-size: 114px 31px;
		text-indent: -9999px;
	}
	#header .txt01 {
		float: left;
		margin: 35px 0 0 19px;
		width: 99px;
		height: 25px;
		background: url(/assets_sp/images/txt_header01.gif) left top no-repeat;
		background-size: 99px 25px;
		text-indent: -9999px;
		padding: 0;
	}

#footer,
#footer02 {
	width: 100%;
	height: 69px;
	border-top: #dcdcdc 1px solid;
	overflow: hidden;
}
#footer02 {
	height: auto;
}
	#footer02 img {
		width: 100%;
	}
	#footer .logo01{
		padding-top: 0;
		float: none;
		
	}
	#footer .logo01 img {
		float: none;
		display:block;
		margin: 12px 10px;
		width: 109px;
		height: 14px;
		background: url(/assets_sp/images/logo_footer01.gif) left top no-repeat;
		background-size: 109px 14px;
		text-indent: -9999px;
		overflow: hidden;
	}
	#footer .copyright {
		float: none;
		overflow: hidden;
		padding: 0 0 0 10px;
		line-height: 1.4;
		font-size: 9px;
		color: #9c9c9c;
	}
}

/* !contents 
---------------------------------------------------------- */
#contents {
	width: 100%;
	text-align: left;
}
	#main {
		max-width: 968px;
		margin: 0 auto;
		padding: 0 0 40px;
		min-height:500px;
	}
	
#bottomLink {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 20px 35px 40px;
	clear: both;
	font-family: "Ryumin Regular KL", "Meiryo", "メイリオ";
	font-size: 22px;
}
	#bottomLink * {
		vertical-align: middle;
	}



/* !SP contents 
---------------------------------------------------------- */
@media screen and (max-width: 768px) {
#contents {
	width: auto;
	margin: 0 auto;
	text-align: left;
}
	#main {
		width: auto;
		padding: 0 0 30px 0;
		min-height:inherit;
	}
	
#bottomLink {
	width: auto;
	margin: 0 auto;
	padding: 0 12px 14px;
	clear: both;
	font-family: "Ryumin Regular KL", "Meiryo", "メイリオ";
	font-size: 12px;
}
	#bottomLink * {
		vertical-align: middle;
	}
}

/* !Section
---------------------------------------------------------- */

.section01 {
	padding: 0 0 64px;
}

/* !SP Section
---------------------------------------------------------- */
@media screen and (max-width: 768px) {
.section01 {
	padding: 0 12px 30px;
}
}

/* !Fluid
---------------------------------------------------------- */
.is_fluid {}
	.is_fluid #headerIn,
	.is_fluid #main,
	.is_fluid #footerIn {
		width: auto;
	}
	.is_fluid #header {
		width: auto;
		padding: 0 20px;
	}
	.is_fluid #footer {
		width: auto;
		padding: 0 20px;
	}


