@charset "utf-8";
/* =トップページのみに適用されます
-------------------------------------------------------------- */

/* =#top-mainvisual
-------------------------------------------------------------- */
#top-mainvisual {
	background: transparent repeat-x top center;
	background-image: url("../images/top/top_mainvisual_bg.png");
}
#top-mainvisual .fixed-img {
	position: relative;
	width: 1300px;
	height: 420px;
	margin: auto;
	overflow: hidden;
}
#top-mainvisual .fixed-img img {
	position: absolute;
	top: 0;
	left: 50%;
	width: 1300px;
	height: 420px;
	margin-left: -650px;
}

@media screen and (max-width: 767px) {
	#top-mainvisual .fixed-img {
		position: static;
		width: 480px;
		height: auto;
		margin: auto;
	}
	#top-mainvisual .fixed-img img {
		position: static;
		width: 480px;
		height: auto;
		margin: auto;
	}
}

/* =#top-intro
-------------------------------------------------------------- */
#top-intro {
	margin: -74px 0 117px 0;
}
#top-intro-box {
	padding: 53px 0 86px 0;
	text-align: center;
}
#top-intro-txt {
	margin: 43px 0 0;
}

@media screen and (max-width: 767px) {
	#top-intro {
		margin-top: -20px;
	}

	#top-intro-box {
		padding: 53px 2% 86px;
	}
}

/* =sec-about
-------------------------------------------------------------- */
.sec-about {
	margin-bottom: 75px;
}

#top-office .sec-about-box,#top-service .sec-about-box {
	position: absolute;
	top: 50%;
	left: 0;
	width: 745px;
	box-sizing: border-box;
	padding: 55px 86px 48px;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
#top-staff .sec-about-box {
	position: absolute;
	top: 50%;
	right: 0;
	width: 745px;
	box-sizing: border-box;
	padding: 55px 86px 48px;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	line-height: 1;
}
#top-office .sec-about-img,#sec-about-service .sec-about-img {
	text-align: right;
}
#top-staff .sec-about-img {
	text-align: left;
}


.sec-about .sec-about-ttl {
	margin: 0 0 45px 0;
	font-size: 3.4rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	line-height: 1;
}
.sec-about .sec-about-ttl .ttl-border {
	position: relative;
	display: inline-block;
	padding-bottom: 36px;
}
.sec-about .sec-about-ttl .ttl-border::before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 65px;
	height: 4px;
	background: -ms-linear-gradient(90deg,#f83600,#f09819);
	background: -moz-linear-gradient(90deg,#f83600,#f09819);
	background: -webkit-gradient(90deg,#f83600,#f09819);
	background: -webkit-linear-gradient(90deg,#f83600,#f09819);
	background: -o-linear-gradient(90deg,#f83600,#f09819);
	background: linear-gradient(90deg,#f83600,#f09819);
}

.sec-about .sec-about-txt {
	margin: 0 0 40px;
}

@media screen and (max-width: 767px) {
	#top-office .sec-about-box, #top-service .sec-about-box {
		position: static;
		width: auto;
		padding-right: 5%;
		padding-left: 5%;
		-moz-transform: none;
		-webkit-transform: none;
		-o-transform: none;
		-ms-transform: none;
		transform: none;
		text-align: center;
	}
	#top-staff .sec-about-box {
		position: static;
		width: auto;
		padding-right: 5%;
		padding-left: 5%;
		-moz-transform: none;
		-webkit-transform: none;
		-o-transform: none;
		-ms-transform: none;
		transform: none;
		text-align: center;
	}
	.sec-about .sec-about-ttl .ttl-border::before {
		right: 0;
		margin: auto;
	}
	.sec-about .sec-about-txt {
		text-align: left;
	}
}

/* =top-info
-------------------------------------------------------------- */
#top-info .top-info-box {
	padding: 0 0 60px 0;
}

#top-info .top-info-ttl {
	text-align: center;
	margin: 0 0 36px 0;
	font-size: 3.0rem;
	font-weight: 500;
	line-height: 1;
	color: #f83600;
}
#top-info .top-info-ttl .lato {
	letter-spacing: 0.1em;
}
#top-info .top-info-ttl .top-info-ttl-border {
	position: relative;
	display: inline-block;
	padding: 60px 0 0 0;
}
#top-info .top-info-ttl .top-info-ttl-border::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 150px;
	height: 2px;
	margin: auto;
	background: -ms-linear-gradient(90deg,#f83600,#f09819);
	background: -moz-linear-gradient(90deg,#f83600,#f09819);
	background: -webkit-gradient(90deg,#f83600,#f09819);
	background: -webkit-linear-gradient(90deg,#f83600,#f09819);
	background: -o-linear-gradient(90deg,#f83600,#f09819);
	background: linear-gradient(90deg,#f83600,#f09819);
}

#top-info .info-list .info-list-item {
	width: 33.3%;
	padding: 18px 3% 8px 3%;
	box-sizing: border-box;
	border-right: 1px solid #a79993;
}
#top-info .info-list .info-list-item:last-child {
	border-right: none;
}
#top-info .info-list .info-meta-box {
	margin-bottom: 17px;
	line-height: 1;
}
#top-info .info-list .info-title {
	margin-bottom: 7px;
	line-height: 1;
	font-size: 1.6rem;
}
#top-info .info-list .info-text {
	margin: 0;
	font-size: 1.4rem;
}
#top-info .info-list .info-meta-box {
	font-size: 0;
}
#top-info .info-list .info-date {
	margin: 0 10px 0 0;
	font-size: 1.4rem;
}
#top-info .info-list .cat-box {
	display: inline-block;
}
#top-info .info-list .cat-item {
	position: relative;
	display: inline-block;
	text-align: center;
	min-width: 94px;
	padding: 4px 0;
	padding: 7px 0 3px\0;
	border-left: 2px solid #f83600;
	border-right: 2px solid #f09819;
	font-size: 1.2rem;
	letter-spacing: 0.1em;
}
#top-info .info-list .cat-item::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 2px;
	margin: auto;
	background: -ms-linear-gradient(90deg,#f83600,#f09819);
	background: -moz-linear-gradient(90deg,#f83600,#f09819);
	background: -webkit-gradient(90deg,#f83600,#f09819);
	background: -webkit-linear-gradient(90deg,#f83600,#f09819);
	background: -o-linear-gradient(90deg,#f83600,#f09819);
	background: linear-gradient(90deg,#f83600,#f09819);
}
#top-info .info-list .cat-item::after {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 2px;
	margin: auto;
	background: -ms-linear-gradient(90deg,#f83600,#f09819);
	background: -moz-linear-gradient(90deg,#f83600,#f09819);
	background: -webkit-gradient(90deg,#f83600,#f09819);
	background: -webkit-linear-gradient(90deg,#f83600,#f09819);
	background: -o-linear-gradient(90deg,#f83600,#f09819);
	background: linear-gradient(90deg,#f83600,#f09819);
}

#top-info .btn-conteiner {
	margin: 36px 0 0;
	text-align: center;
}

@media screen and (max-width: 767px) {
	#top-info .top-info-box {
		padding-left: 5%;
		padding-right: 5%;
	}
	#top-info .info-list .info-list-item {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		border-right: none;
	}
}