@charset "UTF-8";

h1,h2,h3,h4,h5,h6 {
	margin: 0;
	padding: 0;
}


/* layout */
#header {
	margin: 0;
	padding: 5px 0 0 0;
	width: 100%;
	min-height: 65px;
	overflow:hidden;
	background: url(../img/header_bg.png) repeat-x 0 100%;
}
#main {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
}
#footer {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
}

/* header */
.logo {
	margin: 0 auto;
	padding: 0;
	text-align:center;
	max-width: 400px;
}
.logo img {
	margin:0 auto;
	max-width: 70%;
	height: auto;
}

/* footer */
.footer-nav {
	margin: 0;
	padding: 0;
}
.footer-nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid #eee;
}
.footer-nav ul > li {
	margin: 0;
	padding: 0;
	width: 100%;
	border-bottom: 1px solid #eee;
	background: #ffffff; /* Old browsers */
	background: -moz-linear-gradient(top,  #ffffff 0%, #f1f1f1 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #ffffff 0%,#f1f1f1 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #ffffff 0%,#f1f1f1 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f1f1f1',GradientType=0 ); /* IE6-9 */
}
.footer-nav ul > li > a {
	display: block;
	margin: 0;
	padding: 0 60px 0 20px;
	width: 100%;
	height: 65px;
	font-size: 22px;
	line-height: 65px;
	font-weight: normal;
	color: #1b1b1b;
	text-decoration: none;
	background: url(../img/icon_arrow_gray.png) no-repeat 96% 50%;
	background-size:20px 20px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.copyright {
	margin: 0;
	padding: 10px;
	width: 100%;
	font-size: 14px;
	text-align: center;
	background-color: #d20b0d;
	color: #fff;
}
.copyright a {
	text-decoration: none;
	color: #fff;
}

/* conversion */
.cv-box {
	margin: 0 0 30px 0;
	padding: 0;
}
.cv-box .free-dial {
	margin: 0 0 20px 0;
	padding: 0;
}
.cv-box ul {
	margin: 0 20px;
	padding: 0;
	list-style: none;
}
.cv-box ul li {
	float: left;
	margin: 0 5% 0 0;
	padding: 0;
	width: 47%;
}
.cv-box ul li:last-child {
	margin-right: 0;
}

/* go to top */
.goto {
	margin: 0 0 20px 0;
	padding: 0 20px;
	text-align: right;
}
.goto a {
	float: right;
	font-size: 15px;
	line-height: 1.2;
	border-bottom: 2px solid #d20b0d;
	color: #d20b0d;
	text-decoration: none;
}

/* key visual */
.key-visual {
	margin: 0;
	padding: 0;
}

/* contact tel */
.contact-tel {
	margin: 0 0 10px 0;
	padding: 0;
}
.contact-tel .free-dial {
	margin: 0 0 20px 0;
	padding: 0;
}
.contact-tel .contact-tel-btn {
	margin: 0;
	padding: 0 5px;
	text-align: center;
}

/* top contact form */
.contact-mail {
	margin: 0;
	padding: 0;
}
.contact-mail h1 {
	margin: 0 0 30px 0;
	padding: 0;
}


/* form customize */
.required {
	display: inline-block;
	margin: 0 0 0 10px;
	padding: 4px 6px;
	font-size: 12px;
	line-height: 1;
	font-weight: normal;
	background-color: #f00;
	color: #fff;
	border-radius: 3px;
	vertical-align: middle;
}

.form-box label {
	display: block;
	font-size: 18px;
}

.form-control {
	padding: 10px 12px;
	height: 45px;
	border-color: #bbb;
	box-shadow: 0 1px 4px rgba(0,0,0,0.2) inset;
	border-radius: 5px;
}

.form-action {
	margin: 20px 0;
	padding: 0;
	text-align: center;
}
.form-action button {
	width: 100%;
	height: auto;
}

.has-error {
	color: #ff0006;
	border-color: #ff0006;
	background-color: #fcbfbc;
}
.has-error:focus {
	color: #ff0006;
	border-color: #ff0006;
	background-color: #fcbfbc;
}
div.has-error {
	margin: 5px 0;
	padding: 5px 10px;
	border-radius: 4px;
}

/* case */
#case img{
	margin-bottom:20px;}
#case h1{
	margin-bottom:5px !important;}
/* item */
#item h1 {
	margin: 0 0 25px 0;
	padding: 0;
}
.item-list,
.item-list-large {
	margin: 0;
	padding: 0;
	list-style: none;
}
.item-list-large li {
	margin: 0 0 7px 0;
	padding: 0;
}
.item-list li {
	float: left;
	margin: 0 1% 12px 0;
	padding: 0;
	width: 49%;
}
#item .houjin {
	margin: 0;
	padding: 10px;
}
#item .houjin h2 {
	margin: 0;
	padding: 7px;
	font-size: 25px;
	font-weight: bold;
	text-align: center;
	background: #419b0f;
	color: #fff;
	border-radius: 8px 8px 0 0;
	text-shadow: 3px 3px 3px rgba(37,96,5,1);
	letter-spacing: 0.2em;
}
#item .houjin .houjin-body {
	margin: 0;
	padding: 10px;
	border: 2px solid #419b0f;
}
#item .houjin .houjin-body p {
	margin: 0 0 20px 10px;
	padding: 0;
	font-size: 17px;
	font-weight: bold;
}
#item .houjin .houjin-body ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
#item .houjin .houjin-body ul li {
	margin: 0 0 7px 0;
	padding: 0 0 0 40px;
	font-size: 21px;
	background: url(../img/icon_check.png) no-repeat 0 4px;
}
@media (max-width: 480px) {
	#item .houjin .houjin-body ul li {
		font-size: 20px;
		line-height: 38px;
	}
}

/* service */
#service h1 {
	margin: 0 0 30px 0;
	padding: 0;
}
.service-box {
	position: relative;
	margin: 0 0 20px 0;
	padding: 95px 25px 10px 25px;
	width: 100%;
	min-height: 280px;
	border: 4px solid #e60d00;
	z-index: 1;
}
.service-box .service-box-title {
	position: absolute;
	margin: 0;
	padding: 0;
	top: -4px;
	left: -4px;
	z-index: 10;
}
.service-box .service-box-img {
	position: absolute;
	margin: 0;
	padding: 0;
	bottom: 0;
	right: 0;
	z-index: 3;
}
.service-box .service-box-title-bg {
	position: absolute;
	margin: 0;
	padding: 0;
	top: -4px;
	left: -4px;
	right: -4px;
	z-index: 2;
}
.service-box .service-box-title-bg img {
	height: 88px;
}
.service-box .service-body {
	position: relative;
	margin: 0 150px 0 0;
	padding: 5px;
	font-size: 17px;
	line-height: 1.3;
	background: rgba(255,255,255,0.6);
	z-index: 5;
}
.service-box .service-body p {
	margin: 0 0 20px 0;
	padding: 0;
}
@media (max-width: 480px) {
	.service-box .service-box-title {
		top: 3%;
	}
	.service-box .service-body {
		margin: 0;
	}
}

/* flow */
#flow h1 {
	margin: 0 0 30px 0;
	padding: 0;
}
.flow-box {
	margin: 0;
	padding: 0;
}
.flow-box h2 {
	margin: 0 0 10px 0;
	padding: 0;
}
.flow-box .flow-body {
	margin: 0;
	padding: 0 20px;
	font-size: 15px;
}
.flow-box .flow-arrow {
	margin: 0 0 20px 0;
	padding: 0;
	width: 100%;
	text-align: center;
	clear: both;
}
.flow-box .flow-arrow img {
	max-width: 100%;
	width: auto;
	height: auto;
}
.flow-box .flow-contact {
	margin: 0 0 20px 0;
	padding: 0;
	width: 100%;
	list-style: none;
	display: table;
}
.flow-box .flow-contact li {
	margin: 0;
	padding: 0 5px 0 0;
	display: table-cell;
}
.flow-box .flow-contact li:last-child {
	padding: 0;
}

/* area */
#area h1 {
	margin: 0 0 30px 0;
	padding: 0;
}
.center-img{
	padding:0 10px;
	margin-bottom:20px;
}
.area-map {
	margin: 0 0 20px 0;
	padding: 0;
}
.area-list-box {
	margin: 0 0 20px 0;
	padding: 0;
}
.area-list-box dl {
	margin: 0 0 10px 0;
	padding: 0;
	width: 100%;
}
.area-list-box dt {
	margin: 0;
	padding: 10px 20px;
	font-size: 20px;
	line-height: 30px;
	font-weight: bold;
	background-color: #fff;
	border-bottom: 3px solid #f6a7a7;
	cursor: pointer;
}
.area-list-box dt span.close {
	float: right;
	display: block;
	width: 29px;
	height: 29px;
	background: url(../img/icon_area_open.png) no-repeat 0 0;
}
.area-list-box dt span.open {
	background: url(../img/icon_area_close.png) no-repeat 0 0;
}
.area-list-box dd {
	display: none;
	margin: 0;
	padding: 10px;
	font-size: 14px;
}
.area-list-box dd ul {
	margin: 0 0 20px 0;
	padding: 0;
	list-style: none;
}
.area-list-box dd ul li {
	margin: 0;
	padding: 0;
	font-size: 18px;
}

/* company */
#company h1 {
	margin: 30px 0;
	padding: 0;
}
#company h2,
#privacy h2 {
	margin: 0 0 30px 0;
	padding: 0;
	width: 100%;
	overflow: hidden;
}
#company h2 img,
#privacy h2 img {
	width: auto;
	height: auto;
}
#company dl,
#privacy dl {
	margin: 0 0 20px 0;
	padding: 0;
	font-size: 18px;
}
#company dt,
#privacy dt {
	margin: 0;
	padding: 0;
	font-weight: bold;
}
#company dd,
#privacy dd {
	margin: 0;
	padding: 0;
}

#privacy ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
#privacy ul li {
	margin: 0 0 0.5em 0;
	padding: 0;
}
#privacy .sign {
	margin: 0;
	padding: 0;
	text-align: right;
}
#privacy h3 {
	margin: 0 0 20px 0;
	padding: 0;
	font-size: 18px;
}
#privacy dl {
	font-size: 16px;
}
.privacy-box {
	margin: 0 0 20px 0;
	padding: 0;
}
.privacy-contact {
	margin: 0;
	padding: 10px;
	background-color: #f2f2f2;
}
#privacy .privacy-contact dl {
	margin-bottom: 10px;
}
@media (min-width: 896px) {
	#company h2 img,
	#privacy h2 img {
		width: 100%;
		height: auto;
	}
}

/* point */
#point h1 {
	margin: 0 0 30px 0;
	padding: 0;
}
.point-box {
	margin: 0 0 20px 0;
	padding: 0;
}
.point-box p {
	font-size: 18px;
}

/* case */
#case h1 {
	margin:0 0 30px 0;
	padding: 0;
}
.case-box {
	margin: 0 0 30px 0;
	padding: 30px 20px 20px 20px;
	border: 1px solid #bbb;
	border-radius: 6px;
	box-shadow: 1px 1px 10px rgba(0,0,0,0.6);
}
.case-box .case-image {
	position: relative;
	margin: 0 0 20px 0;
	padding: 0;
	width: 100%;
	height: auto;
}
.case-box .case-image:after {
	content: " ";
	position: absolute;
	margin: 0;
	padding: 0;
	top: -25px;
	left: -15px;
	width: 90px;
	height: 90px;
	background: url(../img/case_mark.png) no-repeat 0 0;
	background-size:90px 90px;
}
.case-box h2 {
	margin: 0 0 10px 0;
	padding: 0;
	text-align: center;
	color: #84350d;
}
.case-box p {
	margin: 0;
	padding: 0;
	font-size: 18px;
}

/* contact */
.form-nav {
	margin: 10px 0 20px;
	padding: 0 20px;
}

.form-desc .required {
	margin-right: 10px;
	vertical-align: top;
}

#form label {
	font-size: 20px;
}
#form legend {
	margin: 0 0 10px 0;
	padding: 0;
	width: 100%;
	border-bottom: 1px solid #ddd;
	font-size: 24px;
	font-weight: bold;
}
#form hr {
	position: relative;
	margin: 20px 0;
	height: 1px;
	background-color: #f6a7a7;
	border: none;
}
#form hr:after {
	content: " ";
	position: absolute;
	width: 40%;
	height: 1px;
	background-color: #e60d0e;
}
#form .form-action {
	padding: 20px;
}
#form .form-action ul {
	margin: 0;
	padding: 0;
	width: 100%;
	display: table;
}
#form .form-action ul li {
	margin: 0;
	padding: 0 5px;
	display: table-cell;
}


/* thanks */
.thanks-box {
	margin: 0 0 0 0;
	padding: 60px 20px;
}
.thanks-box h1 {
	margin: 0 0 20px 0;
	padding: 0;
	font-size: 30px;
	text-align: center;
}
.thanks-box p {
	margin: 0 0 20px 0;
	padding: 0;
	font-size: 18px;
}
.thanks-box .top-link {
	margin: 0;
	padding: 0;
	font-size: 26px;
	text-align: center;
}

.s-marker{
	background-color:#fff667;color:#000;padding:0 3px;
}
.fs_s{
	padding-left:25px;
	font-size:80%;
}
.fs_ss{
	font-size:90%;
}

/*----------------------------
margin padding 
----------------------------*/
.mb0{margin-bottom:0px !important;}
.mb10{margin-bottom:10px !important;}
.mb20{margin-bottom:20px !important;}
.mt0{margin-top:0px !important;}
.mt05{margin-top:5px !important;}
.mt10{margin-top:10px !important;}
.mt20{margin-top:20px !important;}