@charset "UTF-8";
/*
 * ==========================================================================
 *
 * [home]
 *
 * ==========================================================================
 */
#mainVisual {
	position: relative;
	height: 423px
}
	#mainVisual .inner {
		width: 100%;
		margin: 0 auto;
	}
	#mainVisual .slider {
		position: relative;
		z-index: 1;
	}
		#mainVisual .slider li.num01 { background-image: url(../images/home/slider_img01.jpg); }
		#mainVisual .slider li.num02 { background-image: url(../images/home/slider_img02.jpg); }
		#mainVisual .slider li.num03 { background-image: url(../images/home/slider_img03.jpg); }
		#mainVisual .slider li.num04 { background-image: url(../images/home/slider_img04.jpg); }
		#mainVisual .slider li.num05 { background-image: url(../images/home/slider_img05.jpg); }
		#mainVisual .slider li {
			height: 423px;
			background-repeat: no-repeat;
			background-size: cover;
		}
	#mainVisual .copy {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 539px;
		height: 53px;
		margin: auto;
		z-index: 10;
	}
#mainCopy {
	width: 100%;
	margin: 0 auto;
	font-size: 15px;
	font-weight: bold;
	padding: 30px 0;
	background: #FFCC33;
	text-align: center
}
/**
 * section01
 */
#section01 {
	background: #f2f2f2;
	padding: 50px 0 88px;
}
	#section01 .inner {
		padding: 0 80px;
	}
	#section01 .serviceList h2 {
		position: relative;
		font-size: 15px;
		width: 269px;
		height: 272px;
		float: left;
		background: #f9e546;
		text-align: center;
		padding-top: 100px;
		border: 6px solid #f2f2f2;
	}
	#section01 .serviceList h2 span {
		border-bottom: 5px solid #000;
		padding-bottom: 1em;
		margin-top: -100px;
	}
	#section01 .serviceList .nav-service li {
		float: left;
		width: 269px;
		height: 272px;
		margin: 0 0 23px 0;
	}
	#section01 .serviceList .nav-service li:first-child,
	#section01 .serviceList .nav-service li:nth-child(4),
	#section01 .serviceList .nav-service li:nth-child(7)	{
		margin: 0 11.5px 23px 11.5px;
	}
		#section01 .serviceList .nav-service a.box {
			border: 6px solid #f2f2f2;
			display: block;
			width: 100%;
			height: 100%;
			text-decoration: none;
		}
		#section01 .serviceList .nav-service a.box:hover {
			transition: .5s;
			border: 6px solid #f7e491;
		}
		#section01 .serviceList .nav-service a.box span {
			display: block;
			background: #e1e1e1;
			color: #000;
			font-weight: bold;
		}
		#section01 .serviceList .nav-service a.box span.title {
			box-sizing: content-box;
			background-color: #d6d6d6;
			background-image: url(../images/common/icon_block_r.png);
			background-repeat: no-repeat;
			background-position: 16px center;
			font-size: 16px;
			padding: 10px 0 10px 48px;
			/*margin-left: 16px;*/
		}
		#section01 .serviceList .nav-service a.box span.look {
			text-align: right;
			font-size: 12px;
			padding: 6.5px 16px 6.5px 0;
		}
/**
 * section02
 */
#section02 {
	background: #ffc768;
	padding: 10px 0;
}
	#section02 .inner {
		padding: 0 77px;
	}
	#section02 .item {
		float: left;
	}
	#section02 .works {
		background: url(../images/home/record_bg.jpg) no-repeat;
		width: 269px;
		height: 275px;
		border: 9px solid #FFF;
	}
		#section02 .works a {
			display: block;
			width: 257px;
			height: 257px;
		}
			#section02 .works a span {
				position: relative;
				top: 50%;
				-webkit-transform: translateY(-50%); /* Safari用 */
				transform: translateY(-50%);
				display: block;
				width: 8.1em;
				margin: 0 auto;
				border-bottom: 5px solid #FFF;
				color: #FFF;
				font-weight: bold;
				font-size: 24px;
				letter-spacing: 3px;
				text-align: center;
			}
		#section02 .contact {
			width: 275px;
			height: 275px;
			background: #ff9e42;
			padding: 55px 9px;
			margin: 0 13px;
		}
			#section02 .contact .detail {
				position: relative;
				background: #FFF;
				padding: 15px 0 20px;
			}
			#section02 .contact .detail::before {
				content: '';
				width: 32px;
				height: 24px;
				position: absolute;
				top: -23px;
				left: 32px;
				display: block;
				background: url(../images/common/ico_phone.png) no-repeat;
			}
				#section02 .contact .detail .phone {
					background: #FFF;
					padding: 0 44px;
				}
					#section02 .contact .detail .phone h3 {
						font-size: 20px;
						font-weight: bold;
						text-align: center;
						margin-bottom: 5px;
						border-bottom: 3px solid #000;
					}
					#section02 .contact .detail .phone dl {
						margin-bottom: 10px;
					}
					#section02 .contact .detail .phone dt {
						padding-left: 15px;
						background: url(../images/home/icon_block_r_contact.png) no-repeat left center;
					}
					#section02 .contact .detail .phone dd {
						font-size: 25px;
						font-weight: bold;
						line-height: 1;
					}
					#section02 .contact .detail .mail {
						margin: 20px 0 0 0;
						width: 204px;
						margin: 32px auto 0;
						line-height: 43px;
						width: 204px;
						background: #f9e546 url(../images/home/icon_block_r_sm.png) no-repeat 20px center;
					}
						#section02 .contact .detail .mail a {
							display: block;
							color: #000;
							font-weight: bold;
							text-align: center;
							padding-left: 20px;
						}
		#section02 .menu {
			width: 256px;
		}
			#section02 .menu li {
				background: #FFF;
				margin-bottom: 11px;
				padding: 15px 11px 5px;
			}
				#section02 .menu li a {
					display: block;
					font-size: 15px;
					color: #464646;
					border-right: 2px solid #dedddd;
					border-bottom: 2px solid #dedddd;
					padding: 5px 1em 15px 2.2em;
					background: url(../images/common/icon_block_r.png) no-repeat 4px 8px;
				}
				#section02 .menu li a:hover {
					text-decoration: underline;
				}
/**
 * topics
 */
#topics {
	padding: 70px 0;
}
	#topics .inner {
		padding: 0 90px;
	}
	#topics h2 {
		float: left;
		width: 180px;
		background: #71d2e9;
		text-align: center;
		color: #FFF;
		font-size: 15px;
		letter-spacing: 2px;
		margin-right: 30px;
		padding: 1em 0;
		margin-top: 30px;
	}
	#topics ul.topicsList {
		overflow: hidden;
		width: 600px;
		float: left;
	}
	#topics ul.topicsList li {
		overflow: hidden;
		width: 600px;
		float: left;
		display: table;
		padding: 0 23px;
		border-bottom: 2px solid #d9d9d5;
		line-height: 3;
	}
		#topics ul.topicsList li time,
		#topics ul.topicsList li h3 {
			display: table-cell;
			font-size: 12px;
		}
		#topics ul.topicsList li time {
			width: 8em;
		}
/**
 * bannerArea
 */
#bannerArea {
	width: 772px;
	margin: 0 auto;
	padding: 50px 0;

}
	#bannerArea li {
		float: left;
		margin: 0 34px 25px 0;
	}
	#bannerArea li:nth-child(3n) {
		margin: 0 0 25px 0;
	}
