@charset "UTF-8";

/* ----------------------------------------------------------------------
Top
---------------------------------------------------------------------- */

/* ロゴアニメーション */
.site-logo-top {
	animation: showlogo 2.5s ease;
	-webkit-animation: showlogo 2.5s ease;
	-moz-animation: showlogo 2.5s ease;
}
@media screen and (max-width:1070px) {
	.site-logo-top {
		animation: showlogosp 2.5s ease;
		-webkit-animation: showlogosp 2.5s ease;
		-moz-animation: showlogosp 2.5s ease;
	}
}
@keyframes showlogo {
	0% {
		opacity: 0;
		width: 12em;
		margin-top: 2rem;
		margin-left: -7rem;
	}
	20% {
		opacity: 0;
		width: 12em;
		margin-top: 2rem;
		margin-left: -7rem;
	}
	40% {
		opacity: 1;
		width: 12em;
		margin-top: 2rem;
		margin-left: -7rem;
	}
	70% {
		opacity: 1;
		width: 12em;
		margin-top: 2rem;
		margin-left: -7rem;
	}
	100% {
		opacity: 1;
		width: 6em;
		margin-top: 0.65rem;
		margin-left: -3rem;
	}
}
@keyframes showlogosp {
	0% {
		opacity: 0;
		width: 10em;
		margin-left: -5rem;
	}
	20% {
		opacity: 0;
		width: 10em;
		margin-left: -5rem;
	}
	40% {
		opacity: 1;
		width: 10em;
		margin-left: -5rem;
	}
	70% {
		opacity: 1;
		width: 10em;
		margin-left: -5rem;
	}
	100% {
		opacity: 1;
		width: 4.2rem;
		margin-left: -2.1rem;
	}
}

/* sec-kv */
.sec-kv {
	position: relative;
	height: auto;
	/*overflow: hidden;*/
}
.sec-kv video {
	width: 100%;
}
.sec-kv .catch {
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	padding:0;
	width: 100%;
	text-shadow: 2px 2px 12px #4c4c4c;
}
.sec-kv .catch h1 {
	font-size: 3.8rem;
	text-align: center;
	padding: 0 0 1rem 0;
	font-weight: 600;
	color: #fff;
	animation: showkvchatch1 3.5s linear;
	-webkit-animation: showkvchatch1 3.5s linear;
	-moz-animation: showkvchatch1 3.5s linear;
}
.sec-kv .catch p {
	border-top: 1px solid #fff;
	font-size: 1.8rem;
	font-weight: 600;
	text-align: center;
	padding: 2rem 0 0 0;
	margin: 0 0.5rem;
	width: 70%;
	margin: 0 auto;
	color: #fff;
	animation: showkvchatch2 5.2s linear;
	-webkit-animation: showkvchatch2 5.2s linear;
	-moz-animation: showkvchatch2 5.2s linear;
}
@media screen and (max-width:1299px) {
	.sec-kv  {
		position: relative;
		height: auto;
	}
	.sec-kv  > .kv-catch {
		position: absolute;
		top: 50%;
		left: 50%;
		-ms-transform: translate(-50%,-50%);
		-webkit-transform: translate(-50%,-50%);
		transform: translate(-50%,-50%);
		margin:0;
		padding:0;
		width: 100%;
	}
	.sec-kv .catch h1 {
		font-size: 3.6rem;
	}
	.sec-kv .catch p {
		font-size: 1.6rem;
		width: 85%;
	}
}
@media screen and (max-width:967px) {
	.sec-kv .catch h1 {
		font-size: 3.0rem;
	}
	.sec-kv .catch p {
		font-size: 1.4rem;
	}
}
@media screen and (max-width:767px) {
	.sec-kv .catch h1 {
		font-size: 1.9rem;
		padding: 0 0 0.5rem 0;
	}
	.sec-kv .catch p {
		font-size: 0.95em;
		padding: 1rem 0 0 0;
	}
}
@media screen and (max-width:543px) {
	.sec-kv .catch h1 {
		font-size: 1.4rem;
	}
	.sec-kv .catch p {
		font-size: 0.9rem;
	}
}
@keyframes showkvchatch1 {
	0% {
		opacity: 0;
	}
	80% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes showkvchatch2 {
	0% {
		opacity: 0;
	}
	80% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}


/* sec-solution */
.sec-solution {
	margin: -6rem 0 0 0;
	padding: 2rem 0 4rem 0;
	background: #f1f1f1;
}
.sec-solution .container {
}
.sec-solution h1 {
	padding: 3rem 0 1rem 0;
	text-align: center;
	font-size: 1.2rem;
}
.sec-solution p {
	padding: 0;
}
.sec-solution ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	width: 100%;
}
.sec-solution ul > li {
	position: relative;
	z-index: 100;
	width: 22%;
	opacity: 0.7;
}
@media screen and (max-width:767px) {
	.sec-solution {
		margin: -4rem 0 0 0;
	}
	.sec-solution ul > li {
		width: 48%;
		margin-bottom: 1rem;
	}
}

/* sec-product */
.sec-product {
	background-image: url("../../../../../wp-content/uploads/2019/02/bg_service.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	padding: 5rem 0;
}
.sec-product .container {
	opacity: 0;
	margin-top: 4rem;
	margin-bottom: -4rem;
}
.sec-product h1 {
	text-align: center;
	font-size: 2.0rem;
	color: #fff;
	text-shadow: 2px 2px 12px #4c4c4c;
}
.sec-product p {
	padding: 1rem 0 2rem 0;
	color: #fff;
	text-align: center;
}
.sec-product ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	width: 100%;
}
.sec-product ul > li {
	text-align: center;
	color: #fff;
	width: 30%;
}
@media screen and (max-width:991px) {
	.sec-product p {
		text-align: left;
	}
	.sec-product ul {
		display: block;
	}
	.sec-product ul > li {
		width: 100%;
		margin: 0 0 2rem 0;
	}
	.sec-product ul > li:last-child {
		margin: 0;
	}
}

/* sec-case */
.sec-case {
	padding: 4rem 0;
	background: #fff;
}
ul.case-list li.case {
	margin: 0 1rem 1rem 1rem;
	padding: 1.5rem;
}
/*---ul.case-list li.case .case-thumb {
	float: left;
	width: 45% !important;
	padding-right: 2rem;
	padding: 0 !important;
}---*/
ul.case-list li.case .case-thumb img {
	border-radius: 1rem;
}
/*---ul.case-list li.case .case-header {
	float: right;
	width: 55% !important;
	padding: 0 0 0 1.5rem !important;
	min-height: 12rem;
}---*/
@media screen and (max-width:1399px) {
	ul.case-list li.case .case-header {
		min-height: 13rem;
	}
}
@media screen and (max-width:1299px) {
	ul.case-list li.case .case-header {
		min-height: 12rem;
	}
}
@media screen and (max-width:991px) {
	ul.case-list li.case {
		padding: 0;
	}
	ul.case-list li.case .case-thumb {
		float: none;
		width: 100% !important;
		padding: 0 !important;
	}
	ul.case-list li.case .case-thumb img {
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 0;
	}
	ul.case-list li.case .case-header {
		float: none;
		width: 100% !important;
		padding: 1rem !important;
		min-height: 13rem;
	}
}
@media screen and (max-width:767px) {
	ul.case-list li.case .case-header {
		min-height: 16rem;
	}
}
@media screen and (max-width:543px) {
	ul.case-list li.case .case-header {
		min-height: 15rem;
	}
}

/* sec-news */
.sec-news {
	padding: 4rem 0 4rem 0;
	background: #ffffff;
}
ul.news-list {
	margin: 1rem auto;
}

/* sec-consulting */
.sec-consulting {
	padding: 4rem 0;
	/*background: #f1f1f1;*/
}
.sec-consulting h1 {
	text-align: center;
	font-size: 2.0rem;
	color: #00a63c;
}
.sec-consulting p {
	padding: 1rem 0;
	text-align: center;
}
.sec-consulting .keywords {
	background: #fff;
	padding: 2rem 4rem;
	margin: 1.5rem 0 0 0;
}
.sec-consulting .keywords ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	width: 100%;
	z-index: 100;
	padding: 1rem 0;
}
.sec-consulting .keywords ul > li {
	background: #52cbff;
	padding: 1rem 3.5rem;
	margin: 0;
	text-align: center;
	color: #fff;
	font-weight: 600;
	width: 50%;
}
.sec-consulting .keywords ul > li:first-child {
	margin: 0 1rem 0 0;
}
.sec-consulting .keywords ul > li:last-child {
	margin: 0 0 0 1rem;
}
.sec-consulting  input[type="text"] {
	border-radius: 0.5rem;
	display: block;
	width: 100%;
	height: 3.5rem;
	padding: 0.5rem 1rem;
	border: 1px solid #ddd;
	font-size: 1.0rem;
	outline: none !important;
}
@media screen and (max-width:767px) {
	.sec-consulting p {
		text-align: left;
	}
	.sec-consulting .keywords {
		padding: 1rem;
	}
	.sec-consulting .keywords ul {
		padding: 0.5rem 0;
	}
	.sec-consulting .keywords ul > li {
		padding: 1rem 0;
		font-size: 0.9rem;
	}
	.sec-consulting .keywords ul > li:first-child {
		margin: 0 0.5rem 0 0;
	}
	.sec-consulting .keywords ul > li:last-child {
		margin: 0 0 0 0.5rem;
	}
}

/* sec-recruit */
.sec-recruit {
	background-image: url("../../../../../wp-content/uploads/2019/02/bg_recruit.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	padding: 5rem 0 4rem 0;
}
.sec-recruit .container {
	opacity: 0;
	margin-top: 4rem;
	margin-bottom: -4rem;
}
.sec-recruit h1 {
	text-align: center;
	font-size: 2.0rem;
	color: #fff;
	padding: 0 0 1rem 0;
	text-shadow: 2px 2px 12px #4c4c4c;
}
.sec-recruit h2 {
	text-align: center;
	font-size: 1.3rem;
	color: #fff;
	padding: 1rem 0 0.25rem 0;
}
.sec-recruit p {
	padding: 1rem 0 2rem 0;
	color: #fff;
}
.sec-recruit ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	width: 100%;
	margin: 0 auto;
}
.sec-recruit ul > li {
	color: #fff;
	width: 47%;
}
@media screen and (max-width:767px) {
	.sec-recruit h2 {
		font-size: 1.2rem;
	}
	.sec-recruit ul {
		display: block;
	}
	.sec-recruit ul > li {
		width: 100%;
	}
	.sec-recruit ul > li:first-child {
		margin: 0 0 2rem 0;
	}
}
