@charset "utf-8";



/* reset
-----------------------------------*/
html,body,h1,h2,h3,h4,h5,h6,ul,ol,dl,li,dt,dd,p,header,hgroup,section,article,aside,hgroup,footer,figure,figcaption,nav{margin:0;padding:0;font-size:100%;}body{line-height:1.0;-webkit-text-size-adjust:none;}article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{display:block;}img{border:0;vertical-align:bottom;}ul,ol{list-style:none;}table{border-spacing:0;empty-cells: show;}h1,h2,h3,h4,h5,h6,strong,th{font-weight:normal;text-align:left;}

body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small}select,input,button,textarea{font:99% arial,helvetica,clean,sans-serif}table{font-size:inherit;font:100%}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}#yui3-css-stamp.cssfonts{display:none}



/* setting
-----------------------------------*/
a{
	color: #333333;
	text-decoration: underline;
}
a:hover{
	color: #666666;
	text-decoration: none;
}
a:focus{
	-moz-outline-style: none;
}
strong{
	font-weight: bold;
}
ul li{
	list-style-type: disc;
}
ol li{
	list-style-type: decimal;
}
address{
	font-style :normal;
}



/* clear
-----------------------------------*/
.clear{
	clear: both;
}



/* clearfix
-----------------------------------*/
.clearfix:after{
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: ".";
	line-height: 0;
}
.clearfix{
	display: inline-table;
	min-height: 1%;
}

/* for macIE \*/
* html .clearfix{
	height: 1%;
}
.clearfix{
	display: block;
}
/* end of for macIE */



/* html
-----------------------------------*/
html{
	height: 100%;
	overflow: auto;
}
*html{
	overflow-y: scroll;
}



/* body
-----------------------------------*/
body{
	color: #333333;
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	line-height: 1.61;
	-webkit-text-size-adjust: 100%;
	background: #ffffff;
	text-align: left;
	overflow-x: hidden;
	min-width: 1000px;
	position: relative;
}



/* header
-----------------------------------*/
#header{
	width: 100%;
	height: 220px;
	background: #000000;
	position: relative;
}
#header:before, 
#header:after{
	content: "";
	display: block;
	position: absolute;
	z-index: 1;
}
#header:before{
	width: 100%;
	height: 3px;
	background: #ffe100;
	left: 0;
	bottom: 2px;
}
#header:after{
	width: 604px;
	height: 192px;
	background: url("../img/bg_header_01.gif") no-repeat 0 0;
	margin-left: -302px;
	left: 50%;
	top: 0;
}


#header h1{
	color: #666666;
	font-size: 85%;
	width: 1000px;
	margin-left: -500px;
	position: absolute;
	left: 50%;
	top: 4px;
}
#header a.logo img{
	margin-left: -154px;
	position: absolute;
	left: 50%;
	top: 37px;
}


#header nav ul li{
	list-style: none;
	position: absolute;
	left: 50%;
}
#header nav ul li:nth-child(1){
	margin-left: -500px;
	top: 70px;
}
#header nav ul li:nth-child(2){
	margin-left: -340px;
	top: 80px;
}
#header nav ul li:nth-child(3){
	margin-left: 185px;
	top: 80px;
}
#header nav ul li:nth-child(4){
	margin-left: 345px;
	top: 55px;
}
#header nav ul li img{
	border: none;
	vertical-align: top;
}


#header h2.page_title{
	width: 1000px;
	margin-left: -500px;
	position: absolute;
	left: 50%;
	top: 165px;
}


#header ul.breadcrumbs{
	width: 1000px;
	text-align: center;
	margin-left: -500px;
	position: absolute;
	left: 50%;
	top: 188px;
}
#header ul.breadcrumbs li{
	color: #ffffff;
	font-size: 85%;
	list-style: none;
	text-shadow: 2px 2px 3px #000000;
	display: inline-block;
}
#header ul.breadcrumbs li + li{
	margin-left: 3px;
}
#header ul.breadcrumbs li a{
	color: #ffffff;
	text-decoration: none;
	display: block;
	background: url("../img/ico_01.png") no-repeat right 5px;
	padding-right: 12px;
}
#header ul.breadcrumbs li a:hover{
	text-decoration: underline;
}


#header h1, 
#header nav ul li, 
#header h2.page_title{
	z-index: 10;
}
#header a.logo img, 
#header ul.breadcrumbs{
	z-index: 11;
}



/* footer
-----------------------------------*/
#footer{
	width: 100%;
}


#footer section.inquiry{
	width: 100%;
	height: 345px;
	background: #000000 url("../img/bg_footer_01.gif") no-repeat center 8px;
	position: relative;
}
#footer section.inquiry:after{
	content: "";
	width: 157px;
	height: 131px;
	background: url("../img/img_footer_03.png") no-repeat 0 0;
	display: block;
	margin-left: -105px;
	position: absolute;
	left: 50%;
	top: -64px;
}
#footer section.inquiry h2{
	margin-left: -301px;
	position: absolute;
	left: 50%;
	top: 96px;
}
#footer section.inquiry address.tel{
	margin-left: -372px;
	position: absolute;
	left: 50%;
	top: 188px;
}
#footer section.inquiry address.inquiry{
	margin-left: 80px;
	position: absolute;
	left: 50%;
	top: 155px;
}


#footer section.group{
	width: 1000px;
	margin: 0 auto;
	padding-top: 110px;
	position: relative;
	z-index: 10;
}
#footer section.group h2{
	position: absolute;
	left: 323px;
	top: -39px;
}
#footer section.group ul{
	width: 544px;
	margin: 0 auto;
}
#footer section.group ul li{
	list-style: none;
	width: 544px;
	background: #e6e6e6;
	border: 3px solid #e6e6e6;
	box-shadow: 0 0 0 1px #808080 inset;
	float: left;
	padding: 19px 0 13px 0;
}
#footer section.group ul li:nth-child(2), 
#footer section.group ul li:nth-child(3){
	background: #f2f2f2;
	border: 3px solid #f2f2f2;
	box-shadow: 0 0 0 1px #8c8c8c inset;
}
#footer section.group ul li h3{
	color: #000000;
	font-size: 138.5%;
	font-weight: bold;
	width: 100px;
	text-align: center;
	border-bottom: 2px solid #000000;
	margin: 0 auto 12px auto;
}
#footer section.group ul li p{
	line-height: 1.53;
	text-align: center;
}
#footer section.group ul li p + p{
	margin-top: 10px;
}
#footer section.group ul li p a{
	text-decoration: none;
	font-weight: bold;
	display: inline-block;
	padding-bottom: 12px;
	position: relative;
}
#footer section.group ul li p a::before{
	content: '';
	width: 0;
	height: 0;
	border-width: 5px 10px;
	border-style: solid;
	border-color: #333 transparent transparent;
	display: block;
	margin-inline: auto;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}
#footer section.group ul li p a:hover{
	transform: translateY(2px);
}
#footer section.group ul li p a:hover::before{
	border-top-color: #666;
}


#footer div.footer{
	width: 100%;
	background: #000000;
	margin-top: -45px;
	padding: 85px 0 80px 0;
	position: relative;
	z-index: 1;
}
#footer div.footer ul.nav{
	width: 1000px;
	margin: 0 auto;
}
#footer div.footer ul.nav li{
	list-style: none;
	width: 16.6%;
	float: left;
}
#footer div.footer ul.nav li a{
	color: #ffffff;
	font-size: 108%;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	background: url("../img/ico_02.png") no-repeat center 26px;
	display: block;
	padding: 35px 0 22px 0;
}
#footer div.footer ul.nav li a:hover{
	color: #cccccc;
	background-position: center 24px;
	padding: 33px 0 24px 0;
}
#footer div.footer p.copy{
	width: 100%;
	height: 120px;
	background: url("../img/bg_footer_03.jpg") repeat-x center 0;
	margin-bottom: 68px;
	position: relative;
}
#footer div.footer p.copy img{
	margin-left: -365px;
	position: absolute;
	left: 50%;
	top: 44px;
}
#footer div.footer p.copyright{
	color: #666666;
	font-size: 85%;
	width: 1000px;
	text-align: center;
	margin: 0 auto;
}
#footer div.footer p.copyright small{
	font-size: 100%;
}


#footer div.pagetop{
	width: 70px;
	height: 70px;
	position: fixed;
	right: 70px;
	bottom: 0;
	z-index: 1000;
}



/* form
-----------------------------------*/
table.form{
	font-size: 116%;
	width: 100%;
	margin-bottom: 66px;
}
table.form th{
	font-weight: bold;
	line-height: 1.3;
	vertical-align: top;
	padding: 23px 0 15px 19px;
}
table.form th span{
	font-size: 80%;
	font-weight: normal;
}
table.form th img{
	float: right;
	margin: -8px 10px 0 0;
}
table.form td{
	padding: 13px 0 11px 0;
}
table.form td div.note{
	font-size: 80%;
	margin-bottom: 5px;
}
table.form td div.note strong{
	color: #cc0000;
	font-weight: normal;
}
table.form tr:nth-of-type(odd) th, 
table.form tr:nth-of-type(odd) td{
	background: url("../img/bg_01.gif") repeat 0 0;
}


.confirm_unit table.form th{
	padding: 20px 0 15px 19px;
}
.confirm_unit table.form th img{
	margin-top: -5px;
}
.confirm_unit table.form td{
	vertical-align: top;
	padding: 20px 0 15px 0;
}


table.form input[type="text"], 
table.form input[type="tel"], 
table.form textarea{
	padding: 8px;
}
table.form .textinput70{
	width: 70px;
}
table.form .textinput85{
	width: 85px;
}
table.form .textinput510{
	width: 510px;
}
table.form .textinput540{
	width: 540px;
}
table.form .textareainput510_75{
	width: 510px;
	height: 75px;
}
table.form .textareainput540_200{
	width: 540px;
	height: 200px;
}
table.form input[type="checkbox"], 
table.form input[type="radio"]{
	vertical-align: middle;
}
table.form select{
	padding: 8px;
}