/* page_flow
---------------------------------------------------------- */
.flow_wrap .flow_item .flow_content {
	background-color: #f3f6f8;
}
.bx_estimate {
	padding: 40px;
	margin-top: 30px;
	background-color: #fff;
}
.bx_estimate .tit_estimate {
	margin-bottom: 10px;
	font-size: 26px;
	text-align: center;
}
.bx_estimate .case_estimate {
	margin-top: 20px;
}
.bx_estimate .case_estimate .pack_estimate {
	margin-bottom: 20px;
}
.bx_estimate .case_estimate .pack_estimate:last-child {
	margin-bottom: 0;
}
.bx_estimate .case_estimate .pack_estimate .list_estimate {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 20px;
	margin-bottom: 10px;
	background-color: #f3f6f8;
}
.bx_estimate .case_estimate .pack_estimate .list_estimate li {
	padding-right: 40px;
	margin-right: 30px;
	font-size: 18px;
	background-size: 16px;
	background-repeat: no-repeat;
	background-position: right center;
}
.bx_estimate .case_estimate .pack_estimate .list_estimate li:last-child {
	padding-right: 0;
	margin-right: 0;
}
.bx_estimate .case_estimate .pack_estimate .list_estimate li.equals {
	background-image: url(../img/flow/ico_equals.png);
}
.bx_estimate .case_estimate .pack_estimate .list_estimate li.add {
	background-image: url(../img/flow/ico_plus.png);
}
#outsourcing .case .pack .tb_style01 td {
	background-color: #fff;
}
.inquiry_wrap {
	padding: 70px 0;
	background: url(../img/common/bg_inquiry.jpg) no-repeat center / cover;
}
.inquiry_wrap .tit_inquiry {
	color: #fff;
	font-size: 26px;
}
.inquiry_wrap .btn_inquiry {
	margin-top: 10px;
	max-width: 415px;
	color: #0e5ab0;
	background-color: #fff;
	border: 1px solid #fff;
}
.inquiry_wrap .btn_inquiry::before {
	display: none;
}
.inquiry_wrap .btn_inquiry span {
	display: inline-block;
	padding-left: 43px;
	background: url(../img/common/ico_inquiry.png) no-repeat left center / 32px;
	transition: all .3s ease;
}
.inquiry_wrap .btn_inquiry:hover {
	color: #fff;
	border-color: #fff;
	background-color: #0e5ab0;
}
.inquiry_wrap .btn_inquiry:hover span {
	background-image: url(../img/common/ico_mail_hov.png);
}

/* page_strengths
---------------------------------------------------------- */
.page_strengths .t_center {
	margin-bottom: 40px;
	font-size: 18px;
}
.list_strengths {
	counter-reset: list-counter;
}
.list_strengths li {
	position: relative;
	padding: 28px 20px;
	margin-bottom: 30px;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	background-color: #004492;
}
.list_strengths li:last-child {
	margin-bottom: 0;
}
.list_strengths li::before {
	content: counter(list-counter);
	counter-increment: list-counter;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 20px;
	color: #fff;
	font-size: 120px;
	font-style: italic;
	line-height: 0.7;
	font-family: 'Noto Sans JP', sans-serif;
	width: 100px;
	height: 100px;	
	margin: auto;
	opacity: .25;
}

/* page_maintenance
---------------------------------------------------------- */
.page_maintenance header,
.page_maintenance footer .container {
	display: none;
}
.page_maintenance #contents main {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100vh;
	background: url(../img/common/bg_maintenance.png) no-repeat center / cover;
}
.page_maintenance .logo {
	margin: 0 auto 40px;
	max-width: 322px;
}
.page_maintenance .tit_sub {
	margin-bottom: 45px;
}
.page_maintenance .tit_jp {
	letter-spacing: 2px;
}
.page_maintenance .tit_en {
	display: block;
	padding: 0;
	margin: 20px 0 0;
	color: #333;
	font-size: 26px;
	font-weight: bold;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 1px;
	text-transform: capitalize;
	background-color: transparent;
}
.page_maintenance p {
	font-size: 18px;
}

@media screen and ( max-width: 768px ) {
	/* page_flow
	---------------------------------------------------------- */
	.bx_estimate {
		padding: 30px;
	}
	.bx_estimate .case_estimate .pack_estimate .list_estimate {
		display: block;
	}
	.bx_estimate .case_estimate .pack_estimate .list_estimate li {
		padding: 0 0 20px;
		margin: 0 0 10px;
		text-align: center;
		background-size: 13px;
		background-position: bottom center;
	}
	.bx_estimate .case_estimate .pack_estimate .list_estimate li:last-child {
		padding: 0;
		margin: 0;
	}
	.inquiry_wrap {
		padding: 50px 0;
	}
	.inquiry_wrap .tit_inquiry {
		font-size: 140%;
	}
	.inquiry_wrap .btn_inquiry {
		max-width: 350px;
	}
	.inquiry_wrap .btn_inquiry span {
		padding-left: 35px;
		background-size: 25px;
	}

	/* page_strengths
	---------------------------------------------------------- */
	.page_strengths .t_center {
		margin-bottom: 30px;
		font-size: 110%;
	}
	.list_strengths li {
		padding: 25px 15px;
		margin-bottom: 20px;
		font-size: 115%;
	}
	.list_strengths li::before {
		left: 10px;
		font-size: 570%;
	}

	/* page_maintenance
	---------------------------------------------------------- */
	.page_maintenance .logo {
		margin-bottom: 30px;
		max-width: 280px;
	}
	.page_maintenance .tit_sub {
		margin-bottom: 30px;
	}
	.page_maintenance .tit_en {
		font-size: 130%;
	}
	.page_maintenance p {
		font-size: 110%;
	}
}

@media screen and ( max-width: 640px ) {
	/* page_flow
	---------------------------------------------------------- */
	.inquiry_wrap .tit_inquiry {
		font-size: 120%;
	}
	.inquiry_wrap .btn_inquiry {
		max-width: 320px;
	}

	/* page_strengths
	---------------------------------------------------------- */
	.page_strengths .t_center {
		margin-bottom: 20px;
		font-size: 105%;
		text-align: left;
	}
	.page_strengths .t_center br{
		display: none;
	}
	.list_strengths li {
		padding: 20px 10px;
		margin-bottom: 15px;
		font-size: 110%;
	}
	.list_strengths li::before {
		left: 0;
		font-size: 490%;
		width: 72px;
		height: 72px;
		text-align: left;		
	}

	/* page_maintenance
	---------------------------------------------------------- */
	.page_maintenance .logo {
		margin-bottom: 20px;
		max-width: 250px;
	}
	.page_maintenance .tit_sub {
		margin-bottom: 20px;
	}
	.page_maintenance .tit_en {
		font-size: 120%;
	}
	.page_maintenance p {
		font-size: 105%;
	}
}