@charset "utf-8";

/* RESET */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}

/* HTML5 */
article, aside, figure, figcaption, footer, header, nav, section{display: block;}

/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/

@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

html,body {
	margin:0px;
	padding:0px;
	-webkit-text-size-adjust:none;
	height:100%;
	width:100%;
}
body {
	color:#251E1C;
	font-size:12px;
	line-height:1.5;
	font-family:'Open Sans', 'Noto Sans Japanese', "ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ", Meiryo,'Century Gothic',"MS UI Gothic","Osaka","ＭＳ Ｐゴシック",sans serif;
	position:relative;
	background-color:#fff;
}

a img.linkimg {background:none!important;}
a:hover img.linkimg {opacity:0.8;filter:alpha(opacity=80);-ms-filter:"alpha( opacity=80 )";background:none!important;}
a.linkimg img {background:none!important;}
a.linkimg:hover img {opacity:0.8;filter:alpha(opacity=80);-ms-filter:"alpha( opacity=80 )";background:none!important;}

a:link {color:#3990C4;text-decoration:none;}
a:hover {color:#3990C4;text-decoration:underline;}
a:active {color:#3990C4;text-decoration:none;}
a:visited {color:#3990C4;text-decoration:none;}

.clear {clear:both;}
.alignleft {float:left;margin:20px 20px 20px 0;}
.alignright {float:right;margin:20px 0 20px 20px;}
.aligncenter {clear:both;display:block;margin:20px auto;}

/* clearfix */
.clearfix:after {visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0;}
/* clearfix for ie7 */
.clearfix {display:inline-block;}
.clearfix {display:block;}


/*------------------------------------------------------------
	COMMON
------------------------------------------------------------*/

#header {
	width:100%;
	height:500px;
	position:relative;
	background:url(images/topimg.png) center 58px no-repeat;
	background-size:cover;
	text-align:center;
}
#header .logo {
	padding-top:30px;
	padding-bottom:28px;
}
#header h1 {
	font-size:14px;
	line-height:1;
	font-weight:500;
	color:#000;
}
#top-nav {
	height:40px;
	width:100%;
	margin:0;
	position:absolute;
	bottom:-41px;
	border-top:1px solid #fff;
	z-index:10;
	background:#b4b4b4;
	text-align:center;
}
#top-nav.fixed {
	position:fixed;
	top:0;
}
#top-nav ul {
	letter-spacing:-.40em;
}
#top-nav li {
	letter-spacing:normal;
	display: table-cell;
	vertical-align:middle;
	list-style:none;
	display:inline-block;
	line-height:40px;
	width:160px;
	border-left:1px solid #fff;
	margin:0;
	padding:0;
	font-size:20px;
	font-weight:200;
}
#top-nav li img {
	vertical-align:top;
	margin-right:10px;
	padding-top:11px;
}
#top-nav li.nav-top img {
	padding-top:9px;
}
#top-nav li.nav-contact img {
	padding-top:14px;
}

#top-nav li:first-child {
	border-left:none;
}
#top-nav li a {
	width:160px;
	height:40px;
	display:block;
	color:#fff;
	transition:background-color 0.2s linear;
	-moz-transition:background-color 0.2s linear;
	-ms-transition:background-color 0.2s linear;
	-webkit-transition:background-color 0.2s linear;
	-o-transition:background-color 0.2s linear;
}
#top-nav li a:hover {
	text-decoration:none;
	background-color:#C72D18;
}

.contents h2 {
	width:quto;
	text-align:center;
	max-width:260px;
	color:#C72D18;
	padding-bottom:10px;
	margin:0 auto 60px;
	font-size:30px;
	font-weight:100;
	border-bottom:1px solid #C72D18;
}
.contents {
	padding-top:90px;
	padding-bottom:100px;
}
.contents .btn {
	margin-top:50px;
}
#top .contents {
	text-align:center;
	font-size:18px;
	line-height:38px;
	font-weight:300;
}
#top .contents p {
	margin-bottom:18px;
}
#about .contents {
	background-color:#FAFAFA;
	font-size:16px;
	font-weight:300;
	line-height:28px;
}
#about .contents h2 {
	width:quto;
	text-align:center;
	max-width:260px;
	color:#C72D18;
	padding-bottom:10px;
	margin:0 auto 60px;
	font-size:30px;
	font-weight:100;
	border-bottom:1px solid #C72D18;
}
#about .contents .company-table1 {
	width:auto;
	margin:0 auto;
}
#about .contents .company-table1 th {
	width:110px;
}
#about .contents .company-table1 td,
#about .contents .company-table1 th {
	vertical-align:top;
	text-align:left;
	padding-bottom:18px;
}
#about .contents #map {
	width:100%;
	height:220px;
	margin:50px 0 70px;
}
#about .contents .company-detail {
	width:960px;
	margin:0 auto;
}
#about .contents .company-detail .company-detail-l {
	float:left;
	width:479px;
	border-right:1px solid #c8c8c8;
}
#about .contents .company-detail .company-detail-r {
	float:right;
	width:480px;
}
#about .contents .company-table2 {
	width:100%;
	margin:0 auto;
}
#about .contents .company-table2 th {
	width:110px;
	padding-left:30px;
}
#about .contents .company-table2 td,
#about .contents .company-table2 th {
	vertical-align:top;
	text-align:left;
	padding-bottom:18px;
}
#about .contents .company-table2 td p {
	margin-bottom:18px;
}
#about .contents .company-table3 {
	width:100%;
	margin:0 auto;
}
#about .contents .company-table3 th {
	width:110px;
	padding-left:30px;
}
#about .contents .company-table3 td,
#about .contents .company-table3 th {
	vertical-align:top;
	text-align:left;
	padding-bottom:18px;
}
#about .contents .company-table3 td p {
	margin-bottom:18px;
}


#recruit .contents {
	font-size:16px;
	font-weight:300;
	line-height:28px;
}
#recruit .contents h2 {
	width:quto;
	text-align:center;
	max-width:260px;
	color:#C72D18;
	padding-bottom:10px;
	margin:0 auto 60px;
	font-size:30px;
	font-weight:100;
	border-bottom:1px solid #C72D18;
}
#recruit .contents .recruit-detail {
	width:960px;
	margin:0 auto;
}
#recruit .contents .recruit-detail .recruit-detail-l {
	float:left;
	width:480px;
}
#recruit .contents .recruit-detail .recruit-detail-l p {
	margin:0 50px 18px 40px;
}
#recruit .contents .recruit-detail .recruit-detail-r {
	float:right;
	width:480px;
}
#recruit .contents .recruit-table {
	width:100%;
	margin:0 auto;
}
#recruit .contents .recruit-table th {
	font-family:'Noto Sans Japanese';
	color:#C72D18;
	width:110px;
	padding-left:30px;
}
#recruit .contents .recruit-table td,
#recruit .contents .recruit-table th {
	vertical-align:top;
	text-align:left;
	padding-bottom:18px;
}
#recruit .contents .recruit-table td p {
	margin-bottom:18px;
}
#recruit .contents a.btn-to-contact {
	display:block;
	height:100px;
	width:380px;
	margin:0 auto;
	border-radius:10px;
	position:relative;
	background-color:#E3968C;
	transition:background-color 0.2s linear;
	-moz-transition:background-color 0.2s linear;
	-ms-transition:background-color 0.2s linear;
	-webkit-transition:background-color 0.2s linear;
	-o-transition:background-color 0.2s linear;
}
#recruit .contents a.btn-to-contact:hover {
	background-color:#C72D18;
	text-decoration:none;
}
#recruit .contents a.btn-to-contact img {
	position:absolute;
	top:39px;
	left:55px;
}
#recruit .contents a.btn-to-contact span {
	position:absolute;
	top:23px;
	left:126px;
	color:#fff;
	font-size:21px;
	font-weight:400;
	line-height:28px;
}

#client .contents {
	background-color:#FAFAFA;
	font-size:16px;
	font-weight:300;
	line-height:28px;
}
#client .contents h2 {
	width:quto;
	text-align:center;
	max-width:260px;
	color:#C72D18;
	padding-bottom:10px;
	margin:0 auto 60px;
	font-size:30px;
	font-weight:100;
	border-bottom:1px solid #C72D18;
}
#client .contents p {
	text-align:center;
	font-size:16px;
	line-height:28px;
}
#client .contents a.btn-dl {
	display:block;
	height:100px;
	width:380px;
	margin:0 auto;
	border-radius:10px;
	position:relative;
	background-color:#E3968C;
	transition:background-color 0.2s linear;
	-moz-transition:background-color 0.2s linear;
	-ms-transition:background-color 0.2s linear;
	-webkit-transition:background-color 0.2s linear;
	-o-transition:background-color 0.2s linear;
}
#client .contents a.btn-dl:hover {
	background-color:#C72D18;
	text-decoration:none;
}
#client .contents a.btn-dl img {
	position:absolute;
	top:30px;
	left:56px;
}
#client .contents a.btn-dl span {
	position:absolute;
	top:23px;
	left:126px;
	color:#fff;
	font-size:21px;
	font-weight:400;
	line-height:28px;
}


#formWrap {
	max-width:600px;
	width:100%;
	margin:0 auto;
	line-height:32px;
	font-size:16px;
}
table.formTable {
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
table.formTable td,
table.formTable th {
	padding:10px;
}
table.formTable th {
	width:30%;
	font-weight:normal;
	text-align:left;
}
table.formTable td span {
	display:block;
}
table.formTable td.textinput input {
	width:97%;
	padding:1%;
	border:1px solid #B4B4B4;
	height:18px;
}

table.formTable td textarea {
	width:97%;
	padding:1%;
	font-size:14px;
	border:1px solid #B4B4B4;
	box-shadow:none;
}
.submit {
	text-align:center;
	margin-top:60px;	
}

.submit input {
	letter-spacing:20px;
	display:block;
	margin:0 auto;
	text-align:center;
	text-decoration:none;
	height:60px;
	width:260px;
	padding-left:80px;
	border-radius:10px;
	color:#fff;
	line-height:60px;
	font-size:21px;
	font-weight:400;
	border:none;
	background:url(images/icon-btn-contact.png) 48px 19px no-repeat;
	background-size:38px 24px;
	background-color:#E3968C;
	transition:background-color 0.2s linear;
	-moz-transition:background-color 0.2s linear;
	-ms-transition:background-color 0.2s linear;
	-webkit-transition:background-color 0.2s linear;
	-o-transition:background-color 0.2s linear;
}
#mailform .submit input:hover {
	background-color:#C72D18;
	text-decoration:none;
}

#mailform .btn-back input {
	display:block;
	margin:40px auto;
	text-align:center;
	text-decoration:none;
	height:60px;
	width:260px;
	border-radius:10px;
	color:#fff;
	line-height:60px;
	font-size:21px;
	font-weight:400;
	border:none;
	background-color:#E3968C;
	transition:background-color 0.2s linear;
	-moz-transition:background-color 0.2s linear;
	-ms-transition:background-color 0.2s linear;
	-webkit-transition:background-color 0.2s linear;
	-o-transition:background-color 0.2s linear;
}
#mailform .btn-back input:hover {
	background-color:#C72D18;
	text-decoration:none;
}
#mailform .btn-totop {
	display:block;
	margin:40px auto;
	text-align:center;
	text-decoration:none;
	height:60px;
	width:260px;
	border-radius:10px;
	color:#fff;
	line-height:60px;
	font-size:21px;
	font-weight:400;
	border:none;
	background-color:#E3968C;
	transition:background-color 0.2s linear;
	-moz-transition:background-color 0.2s linear;
	-ms-transition:background-color 0.2s linear;
	-webkit-transition:background-color 0.2s linear;
	-o-transition:background-color 0.2s linear;
}
#mailform .btn-totop:hover {
	background-color:#C72D18;
	text-decoration:none;
	color:#fff;
}



p.error_messe{
	margin:5px 0;
	color:red;
}

#mailform {
	height:100%;
	position:relative;
}
#mailform .contents {
	font-size:16px;
	font-weight:300;
	line-height:28px;
}
#mailform .contents h2 {
	width:quto;
	text-align:center;
	max-width:260px;
	color:#C72D18;
	padding-bottom:10px;
	margin:0 auto 60px;
	font-size:30px;
	font-weight:100;
	border-bottom:1px solid #C72D18;
}
#mailform #footer {
	position:absolute;
	width:100%;
	bottom:0;
}

#footer {
	clear:both;
	background:#B4B4B4;
	padding:25px 0 25px;
	color:#fff;
	text-align:center;
	font-size:12px;
	line-height:1;
}
#footer .footer-logo {
	margin-bottom:20px;
}
#footer .copyright {
	font-family:'Open Sans', Verdana, Geneva, sans-serif;
}