@charset "UTF-8";

/** -------------------
	header
------------------- **/
/** -- fv -- **/
.fv {
	position: relative;
}
.fv img {
	width: 100%;
}
.fv p {
	color: #ffffff;
	font-size: 24px;
	font-weight: bold;
	position: absolute;
	left: 30px;
	top: 30px;
}
.fv h2 {
	color: #ffffff;
	font-size: 48px;
	font-weight: bold;
	line-height: 1.3;
	position: absolute;
	left: 50%;
	top: 50%;
	text-align: center;
	transform: translate(-50%, -50%);
}
@media screen and (max-width: 1040px) {
	.fv p {
		font-size: 2vw;
		left: 3vw;
		top: 3vw;
	}
	.fv h2 {
		font-size: 3.8vw;
	}
}
@media screen and (max-width: 770px) {
	.fv p {
		font-size: 4.8vw;
		left: 6vw;
		top: 4vw;
	}
	.fv h2 {
		font-size: 7.8vw;
		width: 100%;
	}
}

/** -------------------
	main
------------------- **/
/** -- common -- **/
/** title **/
.title {
	margin-bottom: 30px;
	text-align: center;
}
.title p {
	font-weight: bold;
}
.title h2 {
	font-size: 36px;
	margin: 5px 0;
}
@media screen and (max-width: 1040px) {
	/** title **/
	.title {
		margin-bottom: 3vw;
	}
	.title h2 {
		font-size: 3.4vw;
		margin: .5vw 0;
	}
}
@media screen and (max-width: 770px) {
	/** title **/
	.title {
		margin-bottom: 5vw;
	}
	.title h2 {
		font-size: 6.2vw;
		margin: 1vw 0;
	}
}

/** -- feature -- **/
.feature {
	padding: 50px 0 80px;
}
.feature .inner {
	margin: 0 -10px;
}
.feature article {
	margin: 0 10px;
	position: relative;
	width: calc(33.3333% - 20px);
}
.feature article .text {
	box-sizing: border-box;
	padding: 30px 25px;
	position: absolute;
	left: 0;
	top: 0;
	text-align: center;
	width: 100%;
}
.feature article .point {
	font-weight: bold;
	letter-spacing: 1px;
	margin-bottom: 16px;
	padding-bottom: 12px;
	position: relative;
	text-align: center;
}
.feature article .point::after {
	background-color: #FBC112;
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	height: 3px;
	width: 32px;
}
.feature article h3 {
	color: #FD6F06;
	font-size: 22px;
	letter-spacing: 1px;
	margin-bottom: 20px;
}
.feature article h3 em {
	font-size: 32px;
}
.feature article .exp {
	font-size: 15px;
	line-height: 2.0;
}
@media screen and (max-width: 1040px) {
	.feature {
		padding: 5vw 0 7vw;
	}
	.feature .inner {
		margin: 0 -1vw;
	}
	.feature article {
		margin: 0 1vw;
		width: calc(33.3333% - 2vw);
	}
	.feature article .text {
		padding: 3vw 2vw;
	}
	.feature article .point {
		letter-spacing: .1vw;
		margin-bottom: 1.4vw;
		padding-bottom: 1vw;
	}
	.feature article .point::after {
		width: 3.2vw;
	}
	.feature article h3 {
		font-size: 2.1vw;
		letter-spacing: .1vw;
		margin-bottom: 1.8vw;
	}
	.feature article h3 em {
		font-size: 3.1vw;
	}
	.feature article .exp {
		font-size: 1.38vw;
	}
}
@media screen and (max-width: 770px) {
	.feature {
		padding: 8vw 0 4vw;
	}
	.feature .inner {
		margin: 0;
	}
	.feature article {
		border-radius: 4vw;
		margin: 0 0 5vw;
		overflow: hidden;
		width: 100%;
	}
	.feature article figure {
		position: absolute;
		left: 0;
		top: 0;
	}
	.feature article .text {
		padding: 4vw 5vw;
		position: relative;
	}
	.feature article .point {
		letter-spacing: .2vw;
		margin-bottom: 3vw;
		padding-bottom: 2vw;
	}
	.feature article .point::after {
		height: 2px;
		width: 6vw;
	}
	.feature article h3 {
		font-size: 4vw;
		letter-spacing: .1vw;
		margin-bottom: 1.8vw;
	}
	.feature article h3 em {
		font-size: 6.2vw;
	}
	.feature article .exp {
		font-size: 3.4vw;
	}
}

/** -- service -- **/
.service {
	background-color: #F5F5F5;
	padding: 80px 0 100px;
}
/** block_1 **/
.service .block_1 {
	margin: 10px -20px 100px;
}
.service .block_1 article {
	margin: 0 20px;
	width: calc(50% - 40px);
}
.service .block_1 article h3 {
	background-color: #666666;
	color: #ffffff;
	font-size: 18px;
	line-height: 1.4;
	margin-bottom: 40px;
	padding: 14px 0;
	text-align: center;
}
.service .block_1 article h3 span {
	font-size: 16px;
	font-weight: normal;
}
.service .block_1 article figure {
	margin-bottom: 30px;
}
.service .block_1 article p {
	line-height: 1.8;
}
/** block_2 **/
.service .block_2 {
	padding-left: 480px;
	position: relative;
}
.service .block_2 figure {
	position: absolute;
	left: 0;
	top: 5px;
	width: 480px;
}
.service .block_2 .text_box {
	margin: 0 auto;
	width: 416px;
}
.service .block_2 .text_box .inner {
	justify-content: space-between;
}
.service .block_2 .box {
	width: calc(50% - 10px);
}
.service .block_2 .box + .box {
	margin-left: 20px;
}
.service .block_2 h3 {
	font-size: 24px;
	margin-bottom: 30px;
}
.service .block_2 .icon {
	border-radius: 50%;
	box-sizing: border-box;
	color: #ffffff;
	font-weight: bold;
	line-height: 1.4;
	margin: 0 auto 20px;
	padding-top: 20px;
	text-align: center;
	height: 104px;
	width: 104px;
}
.service .block_2 .icon.red {
	background-color: #D65A52;
}
.service .block_2 .icon.orange {
	background-color: #FEA600;
}
.service .block_2 .icon span {
	font-size: 28px;
}
.service .block_2 .exp {
	font-size: 14px;
}
@media screen and (max-width: 1040px) {
	.service {
		padding: 6vw 0 8vw;
	}
	/** block_1 **/
	.service .block_1 {
		margin: 1vw -2vw 10vw;
	}
	.service .block_1 article {
		margin: 0 2vw;
		width: calc(50% - 4vw);
	}
	.service .block_1 article h3 {
		font-size: 1.8vw;
		margin-bottom: 4vw;
		padding: 1.4vw 0;
	}
	.service .block_1 article h3 span {
		font-size: 1.6vw;
	}
	.service .block_1 article figure {
		margin-bottom: 3vw;
	}
	/** block_2 **/
	.service .block_2 {
		padding-left: 48vw;
	}
	.service .block_2 figure {
		top: .5vw;
		width: 45vw;
	}
	.service .block_2 .text_box {
		width: 42vw;
	}
	.service .block_2 .box {
		width: calc(50% - 1vw);
	}
	.service .block_2 .box + .box {
		margin-left: 2vw;
	}
	.service .block_2 h3 {
		font-size: 2.3vw;
		margin-bottom: 3vw;
	}
	.service .block_2 .icon {
		margin: 0 auto 2vw;
		padding-top: 2vw;
		height: 10vw;
		width: 10vw;
	}
	.service .block_2 .icon span {
		font-size: 2.7vw;
	}
	.service .block_2 .exp {
		font-size: 1.4vw;
	}
}
@media screen and (max-width: 770px) {
	.service {
		padding: 8vw 0 9vw;
	}
	/** block_1 **/
	.service .block_1 {
		margin: 7vw 0 0;
	}
	.service .block_1 article {
		margin: 0 0 8vw;
		width: 100%;
	}
	.service .block_1 article h3 {
		font-size: 4.2vw;
		line-height: 1.2;
		margin-bottom: 6vw;
		padding: 2vw 0;
	}
	.service .block_1 article h3 span {
		font-size: 3.6vw;
	}
	.service .block_1 article figure {
		margin-bottom: 4vw;
	}
	/** block_2 **/
	.service .block_2 {
		border-top: solid 3px #666666;
		padding-left: 0;
		padding-top: 6vw;
	}
	.service .block_2 figure {
		position: relative;
		left: auto;
		top: auto;
		width: 100%;
	}
	.service .block_2 .text_box {
		margin-bottom: 7vw;
		width: 100%;
	}
	.service .block_2 .box {
		width: calc(50% - 2vw);
	}
	.service .block_2 .box + .box {
		margin-left: 2vw;
	}
	.service .block_2 h3 {
		font-size: 5vw;
		margin-bottom: 6vw;
		text-align: center;
	}
	.service .block_2 .icon {
		margin: 0 auto 2vw;
		padding-top: 4vw;
		height: 21vw;
		width: 21vw;
	}
	.service .block_2 .icon span {
		font-size: 6.2vw;
	}
	.service .block_2 .exp {
		font-size: 3.2vw;
	}
}

/** -- lots -- **/
.lots {
	padding: 80px 0;
}
.lots .inner {
	justify-content: center;
}
.lots .inner .table {
	margin: 0 15px;
	text-align: center;
	width: 280px;
}
.lots .inner .table.orange {
	border: solid 1px #FD6F06;
	color: #FD6F06;
}
.lots .inner .table.black {
	border: solid 1px #000000;
}
.lots .inner .table p {
	font-weight: bold;
	letter-spacing: 1px;
	line-height: 1.4;
	padding: 20px 0;
}
.lots .inner .table p + p {
	padding: 16px 0;
}
.lots .inner .table.orange p + p {
	border-top: solid 1px #FD6F06;
}
.lots .inner .table.black p + p {
	border-top: solid 1px #000000;
}
.lots .attention {
	font-weight: bold;
	margin-top: 30px;
	text-align: center;
}
@media screen and (max-width: 1040px) {
	.lots {
		padding: 7vw 0;
	}
	.lots .inner .table {
		margin: 0 1.5vw;
		width: 28vw;
	}
	.lots .inner .table p {
		letter-spacing: .1vw;
		padding: 2vw 0;
	}
	.lots .inner .table p + p {
		padding: 1.6vw 0;
	}
	.lots .attention {
		margin-top: 3vw;
	}
}
@media screen and (max-width: 770px) {
	.lots {
		padding: 8vw 0;
	}
	.lots .inner .table {
		margin: 0 1.5vw 3vw;
		width: 70vw;
	}
	.lots .inner .table p {
		letter-spacing: .2vw;
		padding: 4vw 0;
	}
	.lots .inner .table p + p {
		padding: 4vw 0;
	}
	.lots .attention {
		font-size: 3.5vw;
		margin-top: 2vw;
	}
}

/** -- case -- **/
.case {
	background-color: #F5F5F5;
	padding: 80px 0;
}
.case .title {
	margin-bottom: 40px;
}
.case article {
	align-items: center;
	justify-content: space-between;
	margin-bottom: 60px;
}
.case article.image_right {
	flex-direction: row-reverse;
}
.case article:last-child {
	margin-bottom: 0;
}
.case article figure {
	width: 50%;
}
.case article .text_box {
	width: calc(50% - 40px);
}
.case article h3 {
	font-size: 28px;
	margin-bottom: 20px;
	padding: 10px 0;
	position: relative;
	padding-left: 80px;
}
.case article h3 .no {
	background: url("/wp/wp-content/themes/oem_cfs/img/case_no.png") no-repeat 0 0 / 100%;
	display: block;
	line-height: 64px;
	position: absolute;
	left: 0;
	top: 0;
	text-align: center;
	height: 64px;
	width: 64px;
}
.case article p {
	line-height: 1.8;
}
@media screen and (max-width: 1040px) {
	.case {
		padding: 7vw 0;
	}
	.case .title {
		margin-bottom: 4vw;
	}
	.case article {
		margin-bottom: 6vw;
	}
	.case article .text_box {
		width: calc(50% - 4vw);
	}
	.case article h3 {
		font-size: 2.7vw;
		margin-bottom: 2vw;
		padding: 1vw 0;
		padding-left: 8vw;
	}
	.case article h3 .no {
		line-height: 6.2vw;
		height: 6.2vw;
		width: 6.2vw;
	}
}
@media screen and (max-width: 770px) {
	.case {
		padding: 8vw 0;
	}
	.case .title {
		margin-bottom: 6vw;
	}
	.case article {
		display: block;
		margin-bottom: 8vw;
	}
	.case article figure {
		margin-bottom: 4vw;
		width: 100%;
	}
	.case article .text_box {
		width: 100%;
	}
	.case article h3 {
		font-size: 3.8vw;
		margin-bottom: 3vw;
		padding: 1.6vw 0;
		padding-left: 14vw;
	}
	.case article h3 .no {
		line-height: 10vw;
		height: 10vw;
		width: 10vw;
	}
}

/** -- attempt -- **/
.attempt {
	padding: 80px 0;
}
.attempt .inner {
	align-items: center;
	justify-content: space-between;
	margin: 0 100px;
}
.attempt .inner figure {
	width: calc(50% - 20px);
}
.attempt .inner p {
	line-height: 1.8;
	width: calc(50% - 40px);
}
@media screen and (max-width: 1040px) {
	.attempt {
		padding: 7vw 0;
	}
	.attempt .inner {
		margin: 0 9vw;
	}
	.attempt .inner figure {
		width: calc(50% - 1vw);
	}
	.attempt .inner p {
		width: calc(50% - 3vw);
	}
}
@media screen and (max-width: 770px) {
	.attempt {
		padding: 7vw 0 9vw;
	}
	.attempt .inner {
		margin: 0;
	}
	.attempt .inner figure {
		width: 100%;
	}
	.attempt .inner p {
		margin-bottom: 6vw;
		width: 100%;
	}
}

/** -- flow -- **/
.flow {
	background: url("/wp/wp-content/themes/oem_cfs/img/flow_bg.jpg") repeat-y 0 0 / 100%;
	padding: 80px 0;
}
.flow .title {
	margin-bottom: 40px;
}
.flow .title p {
	font-weight: normal;
	line-height: 1.8;
	margin-top: 40px;
}
.flow .inner {
	margin: 0 76px;
}
.flow article {
	margin: 0 24px;
	position: relative;
	width: calc(25% - 48px);
}
.flow article::after {
	background: url("/wp/wp-content/themes/oem_cfs/img/icon_arrow_1.png") no-repeat 0 0 / 100%;
	content: '';
	display: block;
	position: absolute;
	right: -30px;
	top: 50px;
	height: 30px;
	width: 30px;
}
.flow article:last-child::after {
	display: none;
}
.flow article figure {
	background-color: #ffffff;
	border-radius: 50%;
	box-sizing: border-box;
	margin: 0 auto 20px;
	padding-top: 35px;
	text-align: center;
	height: 120px;
	width: 120px;
}
.flow article:nth-child(1) figure {
	padding-left: 10px;
}
.flow article figure img {
	height: 48px;
}
.flow article h3 {
	color: #FD6F06;
	font-size: 16px;
	margin-bottom: 10px;
	text-align: center;
}
.flow article p {
	line-height: 1.8;
}
@media screen and (max-width: 1040px) {
	.flow {
		padding: 7vw 0;
	}
	.flow .title {
		margin-bottom: 4vw;
	}
	.flow .title p {
		margin-top: 4vw;
	}
	.flow .inner {
		margin: 0 6.6vw;
	}
	.flow article {
		margin: 0 2.4vw;
		width: calc(25% - 4.8vw);
	}
	.flow article::after {
		right: -4vw;
		top: 5vw;
		height: 3vw;
		width: 3vw;
	}
	.flow article figure {
		margin: 0 auto 2vw;
		padding-top: 3.2vw;
		height: 11vw;
		width: 11vw;
	}
	.flow article:nth-child(1) figure {
		padding-left: 1vw;
	}
	.flow article figure img {
		height: 4.5vw;
	}
	.flow article h3 {
		font-size: 1.5vw;
		margin-bottom: 1vw;
	}
}
@media screen and (max-width: 770px) {
	.flow {
		padding: 8vw 0;
	}
	.flow .title {
		margin-bottom: 6vw;
	}
	.flow .title p {
		margin-top: 4vw;
		text-align: left;
	}
	.flow .inner {
		margin: 0;
	}
	.flow article {
		margin: 0 0 14vw;
		padding-left: 24vw;
		position: relative;
		width: 100%;
	}
	.flow article:last-child {
		margin-bottom: 0;
	}
	.flow article::after {
		bottom: -10vw;
		left: 50%;
		right: auto;
		top: auto;
		transform: translateX(-50%) rotate(90deg);
		height: 6vw;
		width: 6vw;
	}
	.flow article figure {
		margin: 0 auto 2vw;
		padding-top: 5.6vw;
		position: absolute;
		left: 0;
		top: 0;
		height: 20vw;
		width: 20vw;
	}
	.flow article:nth-child(1) figure {
		padding-left: 2vw;
	}
	.flow article figure img {
		height: 9vw;
	}
	.flow article h3 {
		font-size: 4.2vw;
		margin-bottom: 2vw;
		text-align: left;
	}
}

/** -------------------
	footer
------------------- **/
/** -- fv -- **/
.fv {
	position: relative;
}
@media screen and (max-width: 1040px) {
	
}
@media screen and (max-width: 770px) {
	
}