@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap');
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
}
html {
	font-size: 62.5%;
}
body, table, input, textarea, select, option {
	font-family: "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.en {
	font-family: 'Source Sans Pro', sans-serif;
}
article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
	height: auto;
}
a, a:link {
	color: #000;
	text-decoration: none;
}
a:visited {
	color: #000;
}
a:hover {
	color: #000;
}
a:active {
	color: #000;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	min-width: 1080px;
	color: #000;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #FFF;
}
#container {
	text-align: left;
	position: relative;
}
#main {}
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 896px) {
	body {
		min-width: inherit;
	}
	a:hover, a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
}
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
	padding: 15px 48px 10px 57px;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	box-sizing: border-box;
	z-index: 99;
}
#gHeader h1 {
	display: inline-block;
	width: 228px;
	vertical-align: middle;
}
#gHeader .hBox {
	width: 418px;
	float: left;
}
#gHeader .hBox p {
	margin-left: 40px;
	display: inline-block;
	color: #fff;
	position: relative;
	font-size: 1.4rem;
	font-weight: bold;
	vertical-align: middle;
}
#gHeader .hBox p a {
	color: #fff;
}
#gHeader .hBox p::before {
	margin-left: -28px;
	width: 56px;
	height: 2px;
	position: absolute;
	left: 50%;
	bottom: -3px;
	background-color: #fff;
	content: '';
	opacity: 0;
}
#gHeader .hBox p.on::before {
	opacity: 1;
}
@media all and (min-width: 897px) {
	#gHeader .hBox p:hover::before {
		opacity: 1;
	}
}
@media all and (max-width: 896px) {
	#gHeader {
		padding: 10px;
	}
	#gHeader .hBox {
		width: auto;
	}
	#gHeader h1 {
		width: 180px;
		display: block;
	}
	#gHeader .hBox p {
		display: none;
	}
	.menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.menu-trigger {
		position: absolute;
		width: 25px;
		height: 22px;
		right: 10px;
		top: 20px;
	}
	.menu-trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #fff;
		border-radius: 2px;
	}
	.menu-trigger span:nth-of-type(1) {
		top: 0;
	}
	.menu-trigger span:nth-of-type(2) {
		top: 10px;
	}
	.menu-trigger span:nth-of-type(3) {
		bottom: 0;
	}
	.menu-trigger.active span:nth-of-type(1) {
		-webkit-transform: translateY(10px) rotate(-45deg);
		transform: translateY(10px) rotate(-45deg);
	}
	.menu-trigger.active span:nth-of-type(2) {
		opacity: 0;
	}
	.menu-trigger.active span:nth-of-type(3) {
		-webkit-transform: translateY(-10px) rotate(45deg);
		transform: translateY(-10px) rotate(45deg);
	}
}

@media all and (min-width: 897px) {
	#gm-recruit {
		background-color: #ff4500;
		animation: change-color-anim 5s linear infinite;
		border-radius: 60px;
		padding: 3px 10px;
	}
}

@keyframes change-color-anim {
	0%,100%{
		background-color: #ff4500;
	}
	50%{
		background-color: #7fff00;
	}
}

@media all and (max-width: 896px) {
	#gm-recruit {
		background-color: none !important;
		padding:0;
		color: #FFF;
	}
}



/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gNavi {
	margin-top: 11px;
	width: 535px;
	float: right;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#gNavi .btn {
	width: 80px;
}
#gNavi .btn a {
	padding: 3px;
	display: block;
	color: #fff;
	text-align: center;
	border: 1px solid #fff;
}
#gNavi .btn a:hover {
	opacity: 0.7;
}
#gNavi ul {}
#gNavi > ul > li {
	margin-right: 59px;
	display: inline-block;
	position: relative;
}
#gNavi > ul > li:last-child {
	margin-right: 0;
}
#gNavi > ul > li a {
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
	border-bottom: 2px solid transparent;
}
#gNavi > ul > li + li::before {
	width: 1px;
	height: 100%;
	position: absolute;
	left: -57%;
	top: 0;
	background-color: #fff;
	content: '';
	transform: rotate(40deg);
}
#gNavi > ul > li .subBox {
	display: none;
	width: 240px;
	position: absolute;
	left: -93px;
	top: 120%;
	background-color: #00B0F0;
	border: 1px solid #fff;
}
#gNavi > ul > li .subBox li a {
	padding: 14px 2px;
	display: block;
	text-align: center;
	border-bottom: 1px solid #fff;
}
#gNavi > ul > li .subBox li:last-child a {
	border: none;
}
#gNavi > ul > li:nth-child(3) .subBox {
	width: 150px;
	left: -48px;
}
#gNavi > ul > li .subBox li a:hover {
	opacity: 0.7;
}

@media all and (min-width: 897px) {
	#gNavi > ul > li.on a, #gNavi > ul > li a:hover {
		border-bottom: 2px solid #fff;
	}
	#gNavi > ul > li a.on {
		border-bottom: 2px solid #fff;
	}
}
@media all and (max-width: 896px) {
	#gNavi {
		margin: 0;
		display: none;
		width: 100%;
		position: absolute;
		left: 0;
		top: 100%;
		background-color: #fff;
	}
	#gNavi > ul > li {
		margin: 0;
		display: block;
		text-align: center;
	}
	#gNavi > ul > li + li::before {
		display: none;
	}
	#gNavi > ul > li a {
		padding: 10px;
		display: block;
		color: #00B0F0;
		font-weight: bold;
		border-bottom: 1px solid #00B0F0;
	}
	#gNavi .btn {
		width: auto;
	}
	#gNavi .btn a {
		padding: 10px;
		color: #00B0F0;
		font-weight: bold;
		border-bottom: 1px solid #00B0F0;
	}
	#gNavi > ul > li .subBox {
		width: 100% !important;
		display: block;
		position: static;
		border: none;
	}
	#gNavi > ul > li .subBox li a {
		padding: 10px;
		color: #fff;
		font-size: 1.2rem;
	}
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
	padding: 11px 0;
	background-color: #91cdf1;
}
#gFooter .pageTop {
	width: 50px;
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 50;
}
#gFooter .pageTop a:hover img {
	opacity: 0.7;
}
#gFooter .fBox {
	margin: 0 auto;
	max-width: 982px;
}
#gFooter .fBox .fNav {
	margin-top: 11px;
	width: 608px;
	display: flex;
	float: left;
	justify-content: space-between;
}
#gFooter .fBox .fNav > li > a {
	font-weight: bold;
	font-size: 1.6rem;
}
#gFooter .fBox .fNav > li > a span.new {
	margin-left: 5px;
	font-size: 12px;
	color: #FF0004;
}

#gFooter .fBox .fNav > li li {
	margin-bottom: 4px;
	padding-left: 19px;
	position: relative;
	font-size: 1.4rem;
}
#gFooter .fBox .fNav > li ul {
	margin-top: 6px;
}
#gFooter .fBox .fNav > li li::before {
	width: 9px;
	height: 11px;
	position: absolute;
	left: 8px;
	top: 4px;
	background: url("img/common/icon03.png") no-repeat left top / 9px auto;
	content: '';
}
#gFooter .fBox .rBox {
	width: 326px;
	float: right;
}
#gFooter .fBox .rBox .logo {
	margin-bottom: 13px;
	width: 284px;
}
#gFooter .fBox .rBox p {
	font-size: 1.4rem;
}
#gFooter .fBox .rBox p span {
	margin-bottom: 1px;
	display: block;
	font-weight: bold;
}
#gFooter .fBox .rBox .txt {
	margin-top: 7px;
	color: #fff;
	font-size: 2.4rem;
	line-height: 1.2;
	font-weight: bold;
	font-family: 'Source Sans Pro', sans-serif;
}
#gFooter .fBox .rBox .txt a {
	color: #fff;
}
#gFooter .fBox .fNav > li a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	#gFooter {
		padding: 20px 15px;
	}
	#gFooter .fBox .fNav {
		margin: 0 0 20px;
		width: auto;
		float: none;
		display: block;
	}
	#gFooter .fBox .fNav > li:not(:last-child) {
		margin-bottom: 5px;
	}
	#gFooter .fBox .rBox {
		width: auto;
		float: none;
	}
}
.foot-recruit {
	font-size: 16px;
}
.foot-recruit-tel {
	font-size: 100%;
}
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* clearfix */
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
/* flex */
.flex, .flexA, .flexB, .flexC {
	display: flex;
	flex-wrap: wrap;
}
.flexA {
	justify-content: space-around;
}
.flexB {
	justify-content: space-between;
}
.flexC {
	justify-content: center;
}
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
.comBox {
	margin: 0 auto;
	max-width: 982px;
}
@media all and (max-width: 896px) {
	.comBox {
		padding: 0 15px;
	}
}
/*------------------------------------------------------------
	animated
------------------------------------------------------------*/
.animated {
	opacity: 0;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-transition-timing-function: ease-in-out;
	transition-timing-function: ease-in-out;
}
@-webkit-keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, 50px, 0);
		transform: translate3d(0, 50px, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}
@keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, 50px, 0);
		transform: translate3d(0, 50px, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}
.fadeInUp.on {
	-webkit-animation-name: fadeInUp;
	animation-name: fadeInUp;
}
@-webkit-keyframes fadeInLeft {
	from {
		opacity: 0;
		-webkit-transform: translate3d(-3%, 0, 0);
		transform: translate3d(-3%, 0, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}
@keyframes fadeInLeft {
	from {
		opacity: 0;
		-webkit-transform: translate3d(-3%, 0, 0);
		transform: translate3d(-3%, 0, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}
.fadeInLeft.on {
	-webkit-animation-name: fadeInLeft;
	animation-name: fadeInLeft;
}
.animate-delay-100 {
	-webkit-animation-delay: .1s;
	animation-delay: .1s;
}
.animate-delay-200 {
	-webkit-animation-delay: .2s;
	animation-delay: .2s;
}
.animate-delay-300 {
	-webkit-animation-delay: .3s;
	animation-delay: .3s;
}
.animate-delay-400 {
	-webkit-animation-delay: .4s;
	animation-delay: .4s;
}
.animate-delay-500 {
	-webkit-animation-delay: .5s;
	animation-delay: .5s;
}
/*------------------------------------------------------------
	pageTitle
------------------------------------------------------------*/
.pageTitle {
	padding-top: 125px;
	text-align: center;
	min-height: 300px;
	box-sizing: border-box;
	background: url(img/require/page_bg.jpg) no-repeat center center;
	background-size: cover;
}
@media all and (max-width: 896px) {
	.pageTitle {
		padding-top: 97px;
	}
}
/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {
	color: #fff;
	font-size: 2.1rem;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}
.headLine01 span {
	margin-bottom: 16px;
	display: block;
	font-size: 4.6rem;
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 600;
	position: relative;
}
.headLine01 span::before {
	margin-left: -70px;
	position: absolute;
	bottom: -9px;
	left: 50%;
	width: 140px;
	height: 10px;
	content: '';
	background-color: #fff;
}
@media all and (max-width: 896px) {
	.headLine01 {
		font-size: 1.8rem;
	}
	.headLine01 span {
		font-size: 3.2rem;
	}
	.headLine01 span::before {
		margin-left: -35px;
		width: 70px;
		height: 5px;
	}
}
/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
.headLine02 {
	margin-bottom: 35px;
	font-size: 2.5rem;
	font-weight: normal;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	text-align: center;
}
.headLine02 span {
	padding-bottom: 9px;
	margin-bottom: 4px;
	display: block;
	font-size: 1.4rem;
	position: relative;
}
.headLine02 span::before {
	margin-left: -21px;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 42px;
	height: 1px;
	content: '';
	background-color: #b0b4b2;
}
@media all and (max-width: 896px) {
	.headLine02 {
		margin-bottom: 35px !important;
	}
}
/*------------------------------------------------------------
	headLine03
------------------------------------------------------------*/
.headLine03 {
	margin-bottom: 26px;
	padding-left: 15px;
	color: #231815;
	font-size: 2.5rem;
	font-weight: 500;
	line-height: 1.6;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	border-left: 2px solid #8fd3f5;
}
@media all and (max-width: 896px) {
	.headLine03 {
		margin-bottom: 20px;
		padding-left: 5px;
		font-size: 2rem;
	}
}
/*------------------------------------------------------------
	headLine04
------------------------------------------------------------*/
.headLine04 {
	margin: 0 auto 14px;
	max-width: 460px;
	padding-bottom: 7px;
	font-size: 2.1rem;
	font-weight: bold;
	text-align: center;
	border-bottom: 5px solid #6ec3ee;
}
/*------------------------------------------------------------
	gray
------------------------------------------------------------*/
.gray {
	background-color: #F3F2F8;
}
/*------------------------------------------------------------
	comContact
------------------------------------------------------------*/
.comContact {
	padding: 25px 15px 32px;
	background-color: #c7e4f8;
}
.comContact .ttl {
	margin-bottom: 30px;
	font-size: 1.582rem;
	font-weight: bold;
	text-align: center;
}
.comContact .ttl span {
	padding: 5px 25px;
	display: inline-block;
	background: url("img/common/icon01.png") no-repeat left center, url("img/common/icon02.png") no-repeat right center;
	background-size: 21px auto;
}
.comContact ul {
	margin: 0 auto;
	max-width: 624px;
}
.comContact ul li {
	width: 300px;
}
.comContact ul li a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	.comContact ul {
		display: block;
		margin: 0 auto;
		max-width: 300px;
	}
	.comContact ul li {
		width: auto;
		margin-bottom: 15px;
	}
	.comContact ul li:last-child {
		margin-bottom: 0;
	}
	.comContact ul li img {
		width: 100%;
	}
}
/*------------------------------------------------------------
	comTable
------------------------------------------------------------*/
.comTable {
	width: 100%;
	border-collapse: collapse;
}
.comTable th, .comTable td {
	padding: 16px 0 12px;
	text-align: left;
	line-height: 2;
	vertical-align: top;
	border-bottom: 1px dashed #ABAAA9;
}
.comTable th {
	padding: 12px 0 12px 15px;
	width: 24%;
	font-size: 1.6rem;
	color: #2c8ec1;
	font-weight: bold;
	text-align: center;
}
.comTable td p:not(:last-child) {
	margin-bottom: 29px;
}
.comTable td p.txt {
	font-size: 1.6rem;
	margin-bottom: 0;
}
.comTable td ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.comTable td ul li {
	width: 245px;
	font-size: 1.6rem;
	line-height: 1.875;
	letter-spacing: 0.1em;
}
.comTable td ul li:nth-child(2n) {
	width: calc(100% - 245px);
}
.comTable td p.size {
	font-size: 1.8rem;
	line-height: 2;
	font-weight: bold;
}
.comTable td dl  {
	font-size: 1.6rem;
}
.comTable td dl dt {
	width: 85px;
	float: left;
}
.comTable td dl dd {
	padding-left: 96px;
}
@media all and (min-width: 897px) {
	.comTable td p a:hover {
		color: #8aba28;
		text-decoration: underline;
	}
	.comTable td p a[href^="tel:"]:hover {
		color: #000;
		text-decoration: none;
	}
}
@media all and (max-width: 896px) {
	.comTable th, .comTable td {
		padding: 8px 0 !important;
		float: left !important;
		width: 100% !important;
		box-sizing: border-box;
		line-height: 1.5;
	}
	.comTable th {
		text-align: left;
	}
	.comTable td p:not(:last-child) {
		margin-bottom: 15px;
	}
	.comTable td dl {
		font-size: 1.4rem;
		margin-bottom: 10px;
		letter-spacing: -0.05em;
	}
	.comTable td dl dt {
		width: auto;
		float: none;
	}
	.comTable td dl dd {
		padding: 5px 0 0;
	}
	.comTable td ul {
		display: block;
	}
	.comTable td ul li {
		width: auto !important;
		font-size: 1.4rem;
		line-height: 1.5;
	}
	.comTable td p.size {
		font-size: 1.5rem;
	}
	.comTable td p.size a {
		color: #8aba28;
		text-decoration: underline;
	}
}
/*------------------------------------------------------------
	comLinkBox
------------------------------------------------------------*/
.comLinkBox {
	margin: -47px auto 26px;
	padding: 16px 5px 0;
	max-width: 460px;
	background-color: #fff;
	box-sizing: border-box;
}
.comLinkBox p {
	font-size: 1.6rem;
	line-height: 1.75;
}
.comLinkBox .ttl {
	margin-bottom: 26px;
	font-size: 2.1rem;
	font-weight: bold;
	text-align: center;
}
.comLinkBox ul {
	margin-top: 127px;
	text-align: center;
}
.comLinkBox ul li {
	margin: 0 42px;
	width: 130px;
	display: inline-block;
}
.comLinkBox ul li a:hover img {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	.comLinkBox {
		margin: -30px 15px 50px;
		max-width: inherit;
	}
	.comLinkBox .ttl {
		font-size: 1.8rem;
	}
	.comLinkBox p {
		font-size: 1.4rem;
	}
	.comLinkBox ul {
		margin: 70px -5px 0;
	}
	.comLinkBox ul li {
		margin: 0 5px;
	}
}
/*------------------------------------------------------------
	comLinkUl
------------------------------------------------------------*/
.comLinkUl {
	margin-top: 70px;
}
.comLinkUl li {
	margin-right: 20px;
	width: 180px;
	float: left;
	background-color: #A4C98C;
}
.comLinkUl li:nth-child(5n) {
	margin-right: 0;
}
.comLinkUl a {
	padding: 7px 0 38px;
	display: block;
	font-size: 2.0rem;
	text-align: center;
	font-weight: bold;
	letter-spacing: 2px;
	background: url("img/common/icon04.png") no-repeat center bottom 14px;
	background-size: 23px auto;
}
.comLinkUl a:hover {
	opacity: 0.7;
}
.comLinkUl span {
	display: block;
	color: #fff;
	font-size: 3rem;
}
@media all and (max-width: 896px) {
	.comLinkUl {
		margin-top: 40px;
	}
	.comLinkUl li {
		margin: 0 2% 10px 0;
		width: 49%;
	}
	.comLinkUl li:nth-child(2n) {
		margin-right: 0%;
	}
	.comLinkUl a {
		padding: 5px 0 25px;
		font-size: 1.5rem;
		letter-spacing: 1px;
		background-size: 18px auto;
		background-position: center bottom 10px;
	}
	.comLinkUl span {
		font-size: 2.6rem;
	}
}
/*------------------------------------------------------------
	comTxtDl
------------------------------------------------------------*/
.comTxtTab {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 53px;
}
.comTxtTab th, .comTxtTab td {
	text-align: left;
	vertical-align: middle;
}
.comTxtTab th {
	padding: 10px 10px 13px 60px;
	width: 300px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	position: relative;
	background-color: #8fd3f5;
	box-sizing: border-box;
}
.comTxtTab th::before {
	width: 3px;
	top: 8px;
	bottom: 8px;
	left: 37px;
	position: absolute;
	background-color: #fff;
	content: '';
}
.comTxtTab td {
	padding-left: 12px;
	font-size: 1.4rem;
	line-height: 1.75;
}
.comTxtTab .empty {
	height: 8px;
}
@media all and (max-width: 896px) {
	.comTxtDl {
		margin-bottom: 20px;
	}
	.comTxtTab td, .comTxtTab th {
		width: 100% !important;
		float: left !important;
		box-sizing: border-box;
	}
	.comTxtTab th {
		padding-left: 25px;
	}
	.comTxtTab td {
		padding: 20px !important;
	}
	.comTxtTab th::before {
		left: 10px;
	}
	.comTxtTab .empty {
		height: 0;
	}
}
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#index .mainImg {
	margin-bottom: 125px;
	position: relative;
}
#index .mainImg .list {
	padding-bottom: 8.2%;
	background: url("img/index/main_bg01.jpg") no-repeat center center / cover;
}
#index .mainImg .list02 {
	background-image: url("img/index/main_bg02.jpg");
}
#index .mainImg .list03 {
	background-image: url("img/index/main_bg03.jpg");
}
#index .mainImg .arrowUl li {
	margin-top: -46px;
	position: absolute;
	width: 48px;
	left: 28px;
	top: 50%;
	cursor: pointer;
	z-index: 10;
}
#index .mainImg .arrowUl .next {
	left: auto;
	right: 28px;
}
#index .mainImg .arrowUl li:hover {
	opacity: 0.7;
}
#index .mainImg .comBox {
	width: 712px;
	position: absolute;
	left: 50%;
	top: 17.8%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: translateX(-50%);
	text-align: right;
}
#index h2 {
	margin-bottom: 65px;
	font-size: 2.1rem;
	font-weight: normal;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	text-align: center;
}
#index h2 span {
	margin-bottom: 6px;
	padding-bottom: 14px;
	color: #000;
	display: block;
	position: relative;
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 4.2rem;
	font-weight: 700;
}
#index h2 span::before {
	margin-left: -70px;
	width: 140px;
	height: 10px;
	position: absolute;
	left: 50%;
	bottom: 0;
	background: url("img/index/line.png") no-repeat left top / 100% 100%;
	content: '';
}
#index .vision {
	padding-bottom: 85px;
	margin: 0 auto 166px;
	max-width: 700px;
	background: url("img/index/bg01.png") no-repeat center bottom / 326px auto;
}
#index .vision p {
	font-size: 1.6rem;
	line-height: 1.75;
	text-align: justify;
	letter-spacing: -0.02em;
}
#index .vision .ttl {
	margin-bottom: 21px;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	font-size: 2.5rem;
	text-align: center;
}
#index .advantage {
	margin-bottom: 73px;
}
#index .advantage .imgBox {
	margin-left: 31px;
}
#index .advantage .imgBox .textBox {
	margin-top: 4px;
	width: 424px;
}
#index .advantage .imgBox .textBox p {
	margin-bottom: 4px;
	font-size: 1.8rem;
	font-weight: bold;
}
#index .advantage .imgBox .textBox p span {
	padding: 0 6px;
	line-height: 0.5;
	display: inline-block;
	border-bottom: 8px solid #fff100;
}
#index .advantage .imgBox .videoBox {
	width: 480px;
}
#index .advantage .imgBox .videoBox p {
	margin-bottom: 12px;
	font-size: 1.5rem;
	text-align: center;
}
#index .advantage .imgBox .videoBox p span {
	padding: 10px 25px;
	display: inline-block;
	background: url("img/index/line01.png") no-repeat left center, url("img/index/line02.png") no-repeat right center;
	background-size: 22px auto;
}
#index .advantage h2 {
	margin-bottom: 50px;
}
#index .business {
	margin: 0 auto;
	max-width: 1080px;
	padding: 37px 0 83px;
}
#index .business h2 {
	margin-bottom: 36px;
}
#index .business .imgBox {
	padding-right: 48px;
	margin-bottom: 95px;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
#index .business .imgBox::before {
	width: 9999px;
	height: 86%;
	position: absolute;
	left: 23.5%;
	bottom: 11px;
	transform: skewX(-15deg);
	background-color: #fff;
	content: '';
	z-index: -1;
}
#index .business .imgBox .photo {
	width: 590px;
	float: left;
	position: relative;
}
#index .business .imgBox .photo p {
	padding: 0 49px 53px 0;
	width: 100%;
	position: absolute;
	left: 0;
	top: 50%;
	text-align: center;
	color: #fff;
	font-size: 2.8rem;
	font-weight: bold;
	transform: translateY(-50%);
	box-sizing: border-box;
}
#index .business .imgBox .photo p span {
	padding: 20px 0 17px;
	display: block;
	position: relative;
}
#index .business .imgBox .photo p span::before {
	margin-left: -50px;
	width: 100px;
	height: 2px;
	position: absolute;
	left: 50%;
	bottom: 0;
	background-color: #fff;
	content: '';
}
#index .business .imgBox .textBox {
	margin-top: 88px;
	width: 416px;
	float: right;
}
#index .business .imgBox .textBox .headLine03 {
	margin-bottom: 46px;
	font-weight: bold;
}
#index .business .imgBox .textBox .headLine03 .size {
	font-size: 1.9rem;
}
#index .business .imgBox .textBox p {
	margin: 0 35px 18px 15px;
	font-size: 1.6rem;
	line-height: 1.75;
}
#index .business .btnBox {
	margin-right: 3px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
}
#index .business .btnBox .more {
	margin-left: 21px;
}
#index .more a {
	padding-left: 14px;
	display: inline-block;
	font-size: 2.283rem;
	background: url("img/index/arrow03.png") no-repeat left center / 9px auto;
}
#index .business .btnBox a:hover {
	opacity: 0.7;
}
#index .business .btnBox ul li {
	width: 140px;
	display: inline-block;
}
#index .business .btnBox ul li a {
	padding: 17px 5px 16px 25px;
	display: block;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	background: url("img/index/arrow04.png") no-repeat left 14px center / 13px auto #8fd3f5;
	text-align: center;
}
#index .business .btnBox ul li:last-child {
	margin-left: 18px;
}
#index .business .btnBox ul li:last-child a {
	background-color: #8fc31f;
}
#index .business .linkUl {
	margin: -57px auto 0;
	max-width: 980px;
}
#index .business .linkUl li {
	margin-top: 57px;
	width: 460px;
}
#index .business .linkUl li a {
	display: block;
	height: 100%;
	border-bottom: 1px solid #000;
	box-sizing: border-box;
}
#index .business .linkUl li .photo {
	position: relative;
}
#index .business .linkUl li .photo p {
	margin-top: -21px;
	width: 100%;
	position: absolute;
	left: 0;
	top: 50%;
	text-align: center;
	color: #fff;
	font-size: 2.8rem;
	font-weight: bold;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	box-sizing: border-box;
}
#index .business .linkUl li .photo p span {
	padding: 20px 0 15px;
	display: block;
	position: relative;
}
#index .business .linkUl li .photo p span::before {
	margin-left: -50px;
	width: 100px;
	height: 2px;
	position: absolute;
	left: 50%;
	bottom: 0;
	background-color: #fff;
	content: '';
}
#index .business .linkUl li .photo + p {
	padding: 18px 14px 22px;
	font-size: 1.4rem;
	line-height: 1.75;
}
#index .business .linkUl li a:hover {
	opacity: 0.7;
}
#index .bgBox {
	padding: 78px 0 67px;
	background: url("img/index/bg02.png") no-repeat left top / 454px auto;
}
#index .bgBox .comBox {
	max-width: 1080px;
}
#index .recruit h2 {
	margin-bottom: 86px;
}
#index .recruit .imgBox {
	align-items: flex-end;
}
#index .recruit .imgBox .photoBox {
	width: 540px;
}
#index .recruit .imgBox .textBox {
	padding: 0 77px 0 75px;
	flex: 1;
}
#index .recruit .imgBox .textBox p {
	margin-bottom: 46px;
	font-size: 2.5rem;
	line-height: 1.6;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}
#index .recruit .imgBox .textBox .more {
	margin-bottom: -17px;
	text-align: right;
}
#index .recruit .imgBox .textBox .more a {
	display: inline-block;
}
#index .recruit .imgBox .textBox .more a:hover {
	opacity: 0.7;
}
#index .recruit {
	margin-bottom: 174px;
}
#index .news {
	margin: 0 auto 197px;
	max-width: 782px;
}
#index .news h2 {
	margin-bottom: 69px;
}
#index .news dl {
	font-size: 1.6rem;
}
#index .news dt {
	margin-top: 2px;
	padding: 1px 9px 0;
	width: 136px;
	float: left;
	color: #4d6a8b;
	line-height: 1;
	border-left: 3px solid #8ED3F5;
	box-sizing: border-box;
}
#index .news dd {
	padding: 0 0 32px 140px;
	color: #8fc31f;
	text-decoration: underline;
}
#index .news dd a {
	color: #8fc31f;
	text-decoration: underline;
}
#index .news dd a:hover {
	opacity: 0.7;
}
#index .contribution h2 {
	margin-bottom: 56px;
}
#index .contribution .photoUl li {
	margin: 0 50px;
	text-align: center;
}
#index .contribution .photoUl li p {
	margin-top: 15px;
	font-size: 1.5rem;
	line-height: 1.75;
	font-weight: bold;
}
#index .contribution .photoUl01 {
	margin: 45px auto 0;
	max-width: 794px;
}
@media all and (max-width: 896px) {
	#index .mainImg .comBox {
		margin-top: 20px;
		width: 280px;
	}
	#index .mainImg .arrowUl {
		display: none;
	}
	#index .mainImg {
		margin-bottom: 50px;
	}
	#index .mainImg .list {
		padding-bottom: 10%;
	}
	#index h2 {
		margin-bottom: 40px !important;
		font-size: 1.8rem;
	}
	#index h2 span {
		font-size: 3rem;
	}
	#index .vision .ttl {
		font-size: 2rem;
	}
	#index .vision {
		padding-bottom: 0px;
		margin-bottom: 80px;
		background-size: 50% auto;
		background-position: center center;
	}
	#index .advantage .imgBox {
		margin-left: 0;
		display: block;
	}
	#index .advantage .imgBox .textBox {
		margin: 0 0 20px;
		width: auto;
	}
	#index .advantage .imgBox .textBox p {
		margin-bottom: 15px;
	}
	#index .advantage .imgBox .videoBox {
		width: auto;
	}
	#index .advantage .imgBox .textBox .photo img {
		width: 100%;
	}
	#index .business .imgBox {
		padding: 0;
	}
	#index .business .imgBox .photo {
		width: auto;
		float: none;
	}
	#index .business .imgBox .photo p {
		padding: 0 20px;
		font-size: 1.8rem;
	}
	#index .business .imgBox .photo p img {
		width: 30px;
	}
	#index .business .imgBox .photo p span::before {
		margin-left: -25px;
		width: 50px;
	}
	#index .business .imgBox .textBox {
		margin: 0;
		padding: 20px;
		width: auto;
		float: none;
	}
	#index .business .imgBox .textBox .headLine03 {
		margin-bottom: 20px;
	}
	#index .business .imgBox .textBox .headLine03 .size {
		font-size: 1.5rem;
	}
	#index .business .imgBox .textBox p {
		margin: 0 15px 20px;
	}
	#index .business .btnBox {
		margin: 0;
		display: block;
	}
	#index .business .btnBox .more {
		margin-left: 0;
	}
	#index .business .btnBox ul li {
		width: 48%;
		max-width: 120px;
	}
	#index .business .btnBox ul li a {
		font-size: 1.4rem;
	}
	#index .more a {
		font-size: 1.8rem;
	}
	#index .business .linkUl {
		padding: 0 15px;
		display: block;
		margin: 0;
	}
	#index .business .linkUl li {
		margin: 0 0 20px;
		width: auto;
	}
	#index .business .linkUl li .photo p {
		margin-top: 0;
		padding: 0 20px;
		font-size: 1.8rem;
	}
	#index .business .linkUl li .photo p img {
		width: 30px;
	}
	#index .business .linkUl li .photo p span {
		padding: 10px 0;
	}
	#index .business .linkUl li .photo p span::before {
		margin-left: -25px;
		width: 50px;
	}
	#index .bgBox {
		padding: 30px 0;
	}
	#index .recruit .imgBox {
		display: block;
	}
	#index .recruit .imgBox .photoBox {
		width: auto;
		margin-bottom: 20px;
	}
	#index .recruit .imgBox .textBox {
		padding: 0;
	}
	#index .recruit .imgBox .textBox p {
		margin-bottom: 20px;
		font-size: 1.8rem;
	}
	#index .recruit {
		margin-bottom: 80px;
	}
	#index .news dt {
		margin-bottom: 10px;
		width: auto;
		float: none;
	}
	#index .news dd {
		padding: 0 0 20px;
	}
	#index .news {
		margin-bottom: 50px;
	}
	#index .contribution .photoUl li {
		margin-bottom: 20px;
	}
	#index .contribution .photoUl {
		display: block !important;
		max-width: inherit !important;
	}
	#index .contribution .photoUl01 {
		margin-top: 0;
	}
}
/*------------------------------------------------------------
	require
------------------------------------------------------------*/
#require .sec01 {
	padding: 92px 0 47px;
}
#require .sec01 h3 {
	margin-bottom: 39px;
	font-size: 2.5rem;
	text-align: center;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	letter-spacing: 2.5px;
}
#require .sec01 h3 span {
	padding: 4px 25px 0 35px;
	display: inline-block;
	background: url("img/require/line01.png") no-repeat left bottom 8px, url("img/require/line02.png") no-repeat right bottom 8px;
	background-size: 23px auto;
}
#require .sec01 p {
	margin: 0 25px;
	padding-left: 1em;
	text-indent: 1em;
	line-height: 1.75;
}
#require .sec02 .inner:nth-child(2n+1) {
	background-color: #F4F4F9;
}
#require .sec02 .inner {
	padding: 68px 0 75px;
}
#require .sec02 h4 {
	margin-bottom: 77px;
	display: flex;
	align-items: center;
	font-weight: normal;
}
#require .sec02 h4 .num {
	width: 110px;
	font-size: 6.0rem;
	text-align: center;
	font-weight: bold;
}
#require .sec02 h4 .ttl {
	padding: 0 0 4px 7px;
	margin: -7px 0 0 20px;
	width: calc(100% - 140px);
	border-bottom: 1px solid #000;
}
#require .sec02 h4 .ttl .txt {
	font-size: 3.0rem;
	letter-spacing: 3px;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}
#require .sec02 h4 .ttl a {
	padding: 7px 5px 5px 22px;
	width: 320px;
	height: 42px;
	float: right;
	font-size: 1.8rem;
	text-align: center;
	font-weight: 500;
	border: 1px solid #000;
	box-sizing: border-box;
	background: url("img/require/icon.png") no-repeat left 15px center;
	background-size: 10px auto;
}
#require .sec02 h4 .ttl a:hover {
	opacity: 0.7;
}
#require .comTable {
	border-top: 1px dashed #ABAAA9;
}
#require .comTable td p {
	line-height: 1.4;
}
#require .comTable td p:not(:last-child) {
	margin-bottom: 0;
}
#require .comTable th {
	text-align: right;
	padding-right: 74px;
	box-sizing: border-box;
}
#require .comTable tr:last-child th, #require .comTable tr:last-child td {
	border-bottom: none;
}
#require .bannerBox {
	margin-top: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#require .bannerBox .lBox {
	display: flex;
	align-items: center;
	justify-content: center;
	padding:10px;
	border:1px #535353 solid;
	background:#fff;
	width: 60%;
	box-sizing: border-box;
}
#require .bannerBox .rBox {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40%;
	box-sizing: border-box;
	padding:10px;
	border:1px #535353 solid;
	border-left: none;
	background:#fff;
}
#require .bannerBox .rBox a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	#require .sec01 {
		padding: 40px 15px;
	}
	#require .sec01 h3 {
		margin-bottom: 25px;
		font-size: 2rem;
	}
	#require .sec01 p {
		margin: 0 5px;
		padding: 0;
	}
	#require .sec02 h4 .num {
		font-size: 2.2rem;
		width: 30px;
	}
	#require .sec02 h4 .ttl {
		margin: 0 0 0 0;
		width: calc(100% - 30px);
	}
	#require .sec02 h4 .ttl .txt {
		font-size: 1.5rem;
	}
	#require .sec02 h4 .ttl a {
		padding: 7px 5px 5px 10px;
		width: 120px;
		font-size: 1.0rem;
		background-size: 6px auto;
		background-position: left 5px center;
	}
	#require .comTable th {
		text-align: left;
		padding-right: 0;
	}
}
/*------------------------------------------------------------
	company
------------------------------------------------------------*/
#company .pageTitle {
	margin-bottom: 53px;
	background-image: url("img/company/page_bg.jpg");
}
#company .message {
	margin: 0 auto 53px;
	width: 680px;
}
#company .message p {
	margin-bottom: 24px;
	font-size: 1.4rem;
	line-height: 1.75;
	text-indent: 1em;
}
#company .message .name {
	margin: 34px 0 0;
	font-size: 1.8rem;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	text-align: right;
	letter-spacing: 0.05em;
}
#company .message .name span {
	margin-left: 3px;
	font-size: 2.5rem;
	vertical-align: middle;
	letter-spacing: 0.1em;
}
#company .philosophy {
	margin-bottom: 104px;
	padding: 82px 0 80px;
	background: url("img/company/bg01.jpg") no-repeat center center / cover;
}
#company .philosophy .headLine02 {
	margin-bottom: 62px;
}
#company .philosophy .comBox {
	padding: 74px 70px 73px;
	background-color: #fff;
	box-sizing: border-box;
}
#company .philosophy p {
	margin-bottom: 56px;
	line-height: 1.75;
	font-size: 1.6rem;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	letter-spacing: -0.05em;
}
#company .philosophy p:last-child {
	margin-bottom: 0;
}
#company .company .headLine02 {
	margin-bottom: 32px;
}
#company .company {
	margin-bottom: 80px;
}
#company .gray {
	padding: 99px 0 65px;
}
#company .gray .photoUl {
	margin: -9px auto 90px;
	max-width: 980px;
}
#company .gray .photoUl li {
	margin-top: 9px;
	width: 300px;
}
#company .gray .photoUl li p {
	margin-top: 3px;
	text-align: right;
	font-size: 1.4rem;
}
#company .history .headLine02 {
	margin-bottom: 43px;
}
#company .history .textDl {
	margin: 0 auto;
	width: 514px;
	font-size: 1.6rem;
}
#company .history .textDl dt {
	width: 135px;
	float: left;
	letter-spacing: 0.15em;
}
#company .history .textDl dd {
	padding: 0 0 6px 136px;
	letter-spacing: -0.02em;
}
@media all and (max-width: 896px) {
	#company .pageTitle {
		margin-bottom: 50px;
	}
	#company .message {
		margin: 0 15px 53px;
		width: auto !important;
	}
	#company .message .name span {
		vertical-align: 0;
	}
	#company .philosophy {
		margin-bottom: 50px;
		padding: 50px 15px;
	}
	#company .philosophy .headLine02 {
		margin-bottom: 62px;
	}
	#company .philosophy .comBox {
		padding: 30px 15px;
	}
	#company .philosophy p {
		margin-bottom: 28px;
		font-size: 1.4rem;
	}
	#company .company {
		margin-bottom: 50px;
	}
	#company .gray {
		padding: 50px 15px;
	}
	#company .gray .photoUl {
		margin: -9px auto 90px;
		display: block;
	}
	#company .gray .photoUl li {
		margin-top: 9px;
		width: auto;
	}
	#company .gray .photoUl li p {
		margin-top: 3px;
		text-align: right;
		font-size: 1.4rem;
	}
	#company .gray .photoUl li img {
		width: 100%;
	}
	#company .history .headLine02 {
		margin-bottom: 43px;
	}
	#company .history .textDl {
		margin: 0 auto;
		width: auto;
	}
	#company .history .textDl dt {
		width: auto;
		float: none;
	}
	#company .history .textDl dd {
		padding: 0 0 6px;
	}
}
/*------------------------------------------------------------
	clean
------------------------------------------------------------*/
#clean .pageTitle {
	background-image: url("img/clean/page_bg.jpg");
}
#clean .clean {
	padding: 66px 0 47px;
}
#clean .clean .comBox {
	background: url("img/clean/img01.png") no-repeat left 16px top 24px / 199px auto;
}
#clean h2 + p {
	margin: 0 auto 112px;
	max-width: 460px;
	font-size: 1.6rem;
	line-height: 1.75;
}
#clean .imgBox {
	margin-bottom: 89px;
}
#clean .imgBox .textBox {
	margin-top: 9px;
	width: 489px;
}
#clean .imgBox .photoUl, #clean .imgBox .photo {
	margin-left: 3px;
	flex: 1;
}
#clean .imgBox .textBox h3 {
	margin-bottom: 33px;
	padding: 0 0 8px 30px;
	font-size: 2.1rem;
	font-weight: bold;
	border-bottom: 1px solid #000;
}
#clean .imgBox .textBox p {
	margin: 0 40px;
	font-size: 1.6rem;
	line-height: 1.75;
}
#clean .imgBox .photoUl li {
	width: 241px;
}
#clean .imgBoxR {
	flex-direction: row-reverse;
}
#clean .imgBoxR .textBox {
	margin-top: 20px;
}
#clean .imgBoxR .textBox h3 {
	margin-bottom: 14px;
	padding-left: 50px;
}
#clean .imgBoxR .photoUl, #clean .imgBoxR .photo {
	margin: 0 3px 0 0;
}
#clean .imgBoxR .textBox p {
	margin-left: 45px;
}
#clean .clean .imgBoxR {
	margin-bottom: 0;
}
#clean .inquire {
	padding: 87px 0 96px;
	background: url("img/clean/img02.png") no-repeat right 92px top 17px / 143px auto;
}
#clean .inquire .headLine04 {
	margin-bottom: 74px;
}
#clean .inquire .imgBox01 {
	margin-bottom: 47px;
}
#clean .inquire .imgBox01 .photo img {
	max-width: 480px;
	width: 100%;
}
#clean .inquire .imgBox01 .textBox {
	margin-top: 0;
}
#clean .inquire .imgBox01 .textBox p {
	margin: 0 22px;
}
#clean .inquire .imgBox02 .textBox {
	margin-top: 15px;
}
#clean .inquire .imgBox02 .textBox h3 {
	margin-bottom: 8px;
}
#clean .inquire .imgBox02 {
	margin-bottom: 42px;
}
#clean .imgBox .photoUl li p {
	margin-top: 5px;
	text-align: right;
	font-size: 1.4rem;
}
#clean .inquire .imgBox03 {
	margin-bottom: 0;
}
#clean .inquire .imgBox03 .textBox {
	margin-top: 5px;
}
#clean .inquire .imgBox03 .textBox h3 {
	margin-bottom: 9px;
	padding-left: 31px;
}
#clean .inquire .imgBox03 .textBox p {
	margin-left: 32px;
}
@media all and (max-width: 896px) {
	#clean h2 + p {
		margin-bottom: 40px;
		font-size: 1.4rem;
	}
	#clean .clean {
		padding: 50px 0;
	}
	#clean .clean .comBox {
		background-size: 100px auto;
		background-position: left top;
	}
	#clean .imgBox {
		display: block !important;
	}
	#clean .imgBox .textBox {
		margin: 0 0 40px !important;
		width: auto !important;
	}
	#clean .imgBox .textBox h3 {
		margin-bottom: 15px !important;
		padding: 0 5px 5px !important;
		text-align: center;
		font-size: 1.8rem;
	}
	#clean .imgBox .textBox p {
		margin: 0 !important;
		font-size: 1.4rem;
	}
	#clean .imgBox .photoUl, #clean .imgBox .photo {
		margin: 0 !important;
		width: auto;
		display: block;
	}
	#clean .imgBox .photoUl li {
		width: auto;
		margin-bottom: 10px;
	}
	#clean .imgBox .photoUl li img {
		width: 100%;
	}
	#clean .inquire {
		padding: 50px 15px;
		background-size: 70px auto;
		background-position: right 10px top 10px;
	}
	#clean .inquire .headLine04 {
		margin-bottom: 30px;
	}
	#clean .imgBox .photo {
		margin-bottom: 20px !important;
		text-align: center;
	}

	#clean .imgBox .photoUl li p {
		font-size: 1.2rem;
	}
}
/*------------------------------------------------------------
	repair
------------------------------------------------------------*/
#repair .pageTitle {
	background-image: url("img/clean/page_bg.jpg");
}
#repair .comLinkBox {
	margin-bottom: 29px;
}
#repair .comLinkBox ul {
	margin-top: 71px;
}
#repair .repair {
	padding: 84px 0 120px;
}
#repair .headLine04 {
	border-color: #a5ca8c;
}
#repair h2 + p {
	margin: 0 auto 103px;
	max-width: 460px;
	font-size: 1.6rem;
	line-height: 1.75;
}
#repair .repair .photoUl li {
	width: 300px;
}
#repair .repair .photoUl li img {
	width: 100%;
}
#repair .repair .comBox {
	background: url("img/repair/img03.png") no-repeat right 38px top 75px / 202px auto;
}
#repair .rebuild {
	padding: 77px 0 82px;
	background: url("img/repair/img04.png") no-repeat left 5px top 48px;
}
#repair .rebuild h2 + p {
	margin-bottom: 64px;
}
#repair .linkBox {
	padding: 83px 0 39px;
}
#repair .linkBox h2 + p {
	margin-bottom: 29px;
}
#repair .linkBox .linkUl {
	margin: 0 auto;
	width: 460px;
}
#repair .linkBox .linkUl li {
	margin-bottom: 10px;
}
#repair .linkBox .linkUl li:last-child {
	margin-bottom: 0;
}
#repair .linkBox .linkUl li a {
	padding: 13px 45px;
	display: block;
	font-size: 2.1rem;
	font-weight: bold;
	border: 1px solid #000;
	text-align: center;
	background: url("img/repair/icon.png") no-repeat right 18px center / 15px auto #fff;
}
@media all and (min-width: 897px) {
	#repair .linkBox .linkUl li a:hover {
		color: #a5ca8c;
	}
}
@media all and (max-width: 896px) {
	#repair .repair {
		padding: 50px 0;
	}
	#repair h2 + p {
		margin-bottom: 40px !important;
		font-size: 1.4rem;
	}
	#repair .repair .comBox {
		background-size: 101px auto;
		background-position: right 12px top 0;
	}
	#repair .repair .photoUl li {
		width: auto;
		margin-bottom: 15px;
	}
	#repair .repair .photoUl {
		display: block;
	}
	#repair .repair .photoUl li:last-child {
		margin-bottom: 0;
	}
	#repair .rebuild {
		padding: 50px 15px;
		background-size: 144px auto;
	}
	#repair .rebuild .photoUl {
		margin: 0;
		display: block;
	}
	#repair .rebuild .photoUl li {
		width: auto;
		margin-bottom: 15px;
	}
	#repair .rebuild .photoUl li:last-child {
		margin-bottom: 0;
	}
	#repair .rebuild .photoUl li img {
		width: 100%;
	}
	#repair .linkBox .linkUl {
		width: auto;
	}
	#repair .linkBox .linkUl li a {
		padding: 10px 20px;
		font-size: 1.6rem;
		background-position: right 10px center;
		background-size: 7px auto;
	}
}
/*------------------------------------------------------------
	benefits
------------------------------------------------------------*/
#benefits .pageTitle {
	margin-bottom: 64px;
}
#benefits .topTxt {
	margin-bottom: 57px;
	text-align: center;
	font-size: 2.5rem;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}
#benefits .gray {
	margin-bottom: 82px;
	padding: 38px 0 58px;
}
#benefits .headLine03 {
	margin-bottom: 23px;
	padding-left: 29px;
	color: #000;
}
#benefits .headLine03 + p {
	margin-bottom: 29px;
	width: 450px;
	line-height: 1.75;
	margin-left: 37px;
}
#benefits .photoUl {
	margin: -9px 0 0;
}
#benefits .photoUl li {
	margin-top: 9px;
	width: 300px;
	text-align: right;
	font-size: 1.4rem;
}
#benefits .photoUl li p {
	margin-top: 7px;
}
#benefits .photoUl li img {
	width: 100%;
}
#benefits .improve .headLine03 {
	margin-bottom: -2px;
	padding: 18px 0 23px 29px;
}
#benefits .improve .headLine03 + p {
	margin-bottom: 33px;
	width: auto;
}
#benefits .improve .imgBox {
	margin-bottom: 91px;
}
#benefits .improve .imgBox .tabBox {
	margin-bottom: 0;
	width: 478px;
}
#benefits .improve .imgBox .tabBox .comTxtTab {
	margin-bottom: 0;
}
#benefits .improve .imgBox .tabBox th, #benefits .improve .imgBox .tabBox td {
	width: 100% !important;
	float: left !important;
	box-sizing: border-box;
}
#benefits .improve .imgBox .tabBox td {
	padding: 23px 0 0 40px;
	line-height: 1.75;
}
#benefits .improve .imgBox .photoUl {
	width: 480px;
}
#benefits .improve .imgBox .photoUl li {
	width: 230px;
}
#benefits .comTxtTab {
	margin-bottom: 63px;
}
#benefits .comTxtTab td {
	font-size: 1.5rem;
}
#benefits .comTxtTab .empty {
	height: 12px;
}
@media all and (max-width: 896px) {
	#benefits .topTxt {
		margin: 0 15px 50px;
		font-size: 2rem;
	}
	#benefits .headLine03 {
		margin-bottom: 20px !important;
		padding-left: 5px;
	}
	#benefits .headLine03 + p {
		width: auto;
		margin: 0 0 20px !important;
	}
	#benefits .photoUl {
		display: block !important;
	}
	#benefits .photoUl li {
		width: auto !important;
	}
	#benefits .improve .imgBox {
		display: block;
	}
	#benefits .improve .imgBox .tabBox {
		width: auto;
	}
	#benefits .improve .imgBox .photoUl {
		width: auto;
	}
}
/*------------------------------------------------------------
	benefits
------------------------------------------------------------*/
#people .sec01 {
	margin-bottom: 70px;
}
#people .comLinkUl {
	margin-top: 80px;
}
#people .comLinkUl li {
	background-color: #7FCEF4;
}
#people h3 {
	margin: 0 0 32px 20px;
	display: flex;
	justify-content: space-between;
	color: #231815;
}
#people h3 span {
	display: block;
}
#people h3 .num {
	font-size: 7.2rem;
	line-height: 1.1;
}
#people h3 .ttl {
	width: calc(100% - 105px);
	letter-spacing: 0.05em;
}
#people h3 .ttl span {
	padding-left: 14px;
}
#people h3 .ttl .txt {
	margin-bottom: 7px;
	font-size: 2.8rem;
	line-height: 1.4;
	letter-spacing: 0.1em;
	border-bottom: 1px solid #231815;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}
#people .sec02 {
	padding: 65px 0 84px;
	background-color: #F4F4F9;
}
#people .imgUl {
	margin-bottom: 46px;
}
#people .imgUl li {
	width: 300px;
}
#people .imgUl li:not(:nth-child(3n)) {
	margin-right: 40px;
}
#people h4 {
	margin-bottom: 28px;
	padding: 10px 0 10px 22px;
	font-size: 2.2rem;
	letter-spacing: 0.05em;
	border-left: 4px solid #7ECEF4;
}
#people .h4Ttl {
	margin-bottom: 24px;
	padding: 8px 0 8px 22px;
	font-size: 2.4rem;
}
#people .textUl {
	margin-bottom: 46px;
}
#people .textUl li {
	padding: 17px 32px;
	width: 300px;
	min-height: 250px;
	box-sizing: border-box;
	background-color: #fff;
}
#people .textUl li:not(:nth-child(3n)) {
	margin-right: 40px;
}
#people .textUl li p {
	line-height: 1.75;
	font-size: 1.4rem;
}
#people .textUl li .ttl {
	margin-bottom: 20px;
	padding-bottom: 19px;
	min-height: 67px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #2C8EC1;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.38;
	text-align: center;
	letter-spacing: 0.1em;
	box-sizing: border-box;
}
#people .textUl li .ttl::after {
	margin-left: -30px;
	width: 60px;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 50%;
	background-color: #9FA0A0;
	content: '';
}
#people .imgBox {
	align-items: center;
}
#people .imgBox .photoBox {
	margin-right: 10px;
	width: 355px;
	text-align: center;
}
#people .imgBox .photoBox img {
	width: 200px;
}
#people .imgBox .textBox {
	width: calc(100% - 480px);
}
#people .imgBox .textBox p {
	line-height: 1.8;
}
#people .imgBox .textBox .title {
	margin-bottom: 18px;
	font-size: 2.2rem;
	letter-spacing: 0.1em;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}
#people .sec03 {
	padding: 73px 0 60px;
}
#people .sec03 .textUl li {
	background-color: #F4F4F9;
}
#people .sec04 {
	margin-bottom: 73px;
	padding: 75px 0 66px;
	background-color: #F4F4F9;
}
#people .comTxtTab {
	margin-bottom: 0;
}
#people .comTxtTab th {
	padding: 10px 10px 13px 12px;
}
#people .comTxtTab th::before {
	display: none;
}
#people .sec05 {
	margin-bottom: 60px;
}
#people .sec05 .textUl li {
	background-color: #F4F4F9;
}
#people .sec05 .imgBox {
	justify-content: center;
}
#people .sec05 .imgBox .photoBox {
	margin-right: 50px;
	width: 200px;
}
#people .sec05 .textBox {
	padding: 15px 38px 20px;
	position: relative;
	background-color: #F4F4F9;
	border-radius: 10px;
}
#people .sec05 .textBox::before {
	width: 41px;
	height: 39px;
	position: absolute;
	right: 100%;
	bottom: 26px;
	background: url("img/people/arrow.jpg") no-repeat left top / 100% 100%;
	content: '';
}
#people .sec06 {
	padding: 75px 0 160px;
	background-color: #F4F4F9;
}
#people .sec06 .btn {
	margin: 95px auto 0;
	width: 420px;
}
#people .sec06 .btn a {
	height: 72px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 2.6rem;
	letter-spacing: 0.04em;
	font-weight: bold;
	background: #8dc21f;
}
#people .sec06 .btn a:hover {
	opacity: 0.7;
}
#people .sec06 .btn a span {
	display: block;
	position: relative;
}
#people .sec06 .btn a span::before {
	width: 14px;
	height: 24px;
	position: absolute;
	left: -25px;
	top: 7px;
	background: url("img/common/icon06.png") no-repeat left center / 14px 24px;
	content: "";
}
@media all and (max-width: 896px) {
	#people .sec01 {
		margin-bottom: 20px;
	}
	#people h3 {
		margin: 0 0 15px 0;
	}
	#people h3 .num {
		font-size: 3rem;
		line-height: 1.5;
	}
	#people h3 .ttl {
		width: calc(100% - 40px);
	}
	#people h3 .ttl span {
		padding-left: 8px;
		font-size: 1.2rem;
		letter-spacing: 0;
	}
	#people h3 .ttl .txt {
		margin-bottom: 3px;
		font-size: 1.8rem;
		letter-spacing: 0;
	}
	#people .sec02 {
		margin-bottom: 20px;
		padding: 30px 0;
	}
	#people .imgUl {
		margin-bottom: 30px;
		display: block;
	}
	#people .imgUl li {
		width: auto;
		text-align: center;
	}
	#people .imgUl li:not(:nth-child(3n)) {
		margin-right: 0;
	}
	#people .imgUl li:not(:last-child) {
		margin-bottom: 15px;
	}
	#people h4 {
		margin-bottom: 15px;
		padding: 5px 0 5px 15px;
		font-size: 1.8rem;
		border-left: 2px solid #7ECEF4;
	}
	#people .textUl {
		margin-bottom: 30px;
		display: block;
	}
	#people .textUl li {
		padding: px;
		width: auto;
		min-height: 200px;
	}
	#people .textUl li:not(:nth-child(3n)) {
		margin-right: 0;
	}
	#people .textUl li:not(:last-child) {
		margin-bottom: 15px;
	}
	#people .textUl li p {
		line-height: 1.5;
	}
	#people .textUl li .ttl {
		margin-bottom: 10px;
		padding-bottom: 10px;
		min-height: initial;
		display: block;
	}
	#people .imgBox {
		display: block;
	}
	#people .imgBox .photoBox {
		margin: 0 0 15px !important;
		width: auto !important;
	}
	#people .imgBox .textBox {
		width: auto !important;
	}
	#people .imgBox .textBox p {
		line-height: 1.5;
	}
	#people .imgBox .textBox .title {
		margin-bottom: 10px;
		font-size: 2rem;
		letter-spacing: 0;
	}
	#people .sec03 {
		margin-bottom: 30px;
	}
	#people .sec04 {
		margin-bottom: 30px;
		padding: 30px 0;
	}
	#people .comTxtTab {
		margin-bottom: 0;
	}
	#people .comTxtTab th {
		padding: 10px 10px 13px 12px;
	}
	#people .comTxtTab th::before {
		display: none;
	}
	#people .sec05 {
		margin-bottom: 30px;
	}
	#people .sec05 .textBox {
		padding: 15px 25px;
	}
	#people .sec05 .textBox::before {
		display: none;
	}
	#people .sec06 {
		padding: 30px 0 60px;
	}
	#people .sec06 .btn {
		margin: 30px auto 0;
		width: auto;
		max-width: 400px;
	}
	#people .sec06 .btn a {
		height: 60px;
		font-size: 2rem;
		letter-spacing: 0.02em;
	}
	#people .sec06 .btn a span::before {
		left: -20px;
		top: 4px;
		background-size: 10px auto;
	}
}
/*------------------------------------------------------------
	business
------------------------------------------------------------*/
#business .pageTitle {
	margin-bottom: 45px;
	background-image: url("img/clean/page_bg.jpg");
}
#business .sec01 {
	margin-bottom: 52px;
	max-width: 1080px;
}
#business .sec01 .topTxt {
	margin-bottom: 35px;
	font-size: 2.5rem;
	text-align: center;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}
#business .sec01 .ttl {
	margin-bottom: 8px;
	font-size: 1.6rem;
	text-align: center;
}
#business .sec01 .ttl span {
	padding: 5px 25px;
	display: inline-block;
	background: url("img/businness/icon01.png") no-repeat left center, url("img/businness/icon02.png") no-repeat right center;
	background-size: 21px auto;
}
#business .sec01 .linkUl li {
	width: 142px;
}
#business .sec01 .linkUl li a:hover img {
	opacity: 0.7;
}
#business .imgBox {
	align-items: center;
}
#business .imgBox .photo {
	width: 490px;
}
#business .imgBox .textBox {
	width: 436px;
}
#business .imgBox .textBox .headLine03 {
	margin-bottom: 36px;
	padding: 30px 0 26px 24px;
	font-size: 2.8rem;
	font-weight: bold;
	font-family: "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	border-left: 8px solid #8FC31F;
}
#business .imgBox .textBox p {
	margin: 0 0 28px 33px;
	font-size: 1.6rem;
	line-height: 1.75;
}
#business .imgBox .textBox .linkList {
	margin-top: 60px;
	text-align: center;
}
#business .imgBox .textBox .linkList li {
	margin: 0 9px;
	width: 140px;
	display: inline-block;
}
#business .imgBox .textBox .linkList li a {
	padding: 19px 5px 14px 25px;
	display: block;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	background: url("img/index/arrow04.png") no-repeat left 14px center / 13px auto #8fd3f5;
	text-align: center;
}
#business .imgBox .textBox .linkList li:last-child a {
	background-color: #8fc31f;
}
#business .imgBoxL {
	flex-direction: row-reverse;
}
#business .imgBox .photoUl {
	margin-top: -8px;
}
#business .imgBox .photoUl li {
	margin-top: 8px;
	width: 241px;
	text-align: right;
}
#business .imgBox .photoUl li p {
	margin: 3px 0;
	font-size: 1.2rem;
}
#business .imgBox .textUl {
	padding: 14px 20px 8px 36px;
	width: 274px;
	margin: 53px auto 0;
	background-color: #F4F4F9;
	border-radius: 50px;
	box-sizing: border-box;
}
#business .imgBox .textUl li {
	padding-left: 18px;
	position: relative;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.75;
}
#business .imgBox .textUl li::before {
	width: 16px;
	height: 16px;
	position: absolute;
	left: 0;
	top: 7px;
	background-color: #000;
	content: '';
	border-radius: 100%;
}
#business .imgBox .photoUl01 li {
	width: auto;
	text-align: left;
}
#business .imgBox .photoUl01 li:not(:last-child) {
	margin-bottom: -25px;
}
#business .imgBox .photoUl01 li p {
	margin: 8px 0 0;
}
#business .imgBox .photoUl01 li:nth-child(2n) {
	text-align: right;
}
#business .sec02 .comBox {
	padding: 89px 0 88px;
	background: url("img/businness/bg01.png") no-repeat right 17px top 50px;
}
#business .sec03 {
	padding: 101px 0 35px;
	background: url("img/businness/bg02.png") no-repeat left 35% top 42px;
}
#business .sec03 .imgBox {
	align-items: flex-start;
}
#business .sec03 .imgBox .textBox {
	margin-top: 16px;
}
#business .sec03 .imgBox .textBox .headLine03 {
	margin-bottom: 32px;
}
#business .sec04 .imgBox .photoUl li:first-child {
	width: 100%;
}
#business .sec04 .comBox {
	padding: 84px 0 41px;
	background: url("img/businness/bg03.png") no-repeat right 15px top 42px;
}
#business .sec04 .imgBox {
	align-items: flex-start;
}
#business .sec04 .imgBox .textBox {
	margin-top: 43px;
}
#business .sec04 .imgBox .textBox .txtImg {
	width: 356px;
	margin: -3px auto 20px;
}
#business .sec05 {
	padding: 63px 0 55px;
	background: url("img/businness/bg04.png") no-repeat left 36.6% top 39px;
}
#business .sec05 .imgBox {
	align-items: stretch;
}
#business .sec05 .imgBox .textUl {
	margin-top: 59px;
	padding: 33px 20px 26px 36px;
	width: 229px;
	border-radius: 40px;
}
#business .sec05 .imgBox .textBox {
	margin-top: 44px;
}
#business .sec06 .comBox {
	padding: 59px 0 58px;
	background: url("img/businness/bg05.png") no-repeat right 82px top 115px;
}
#business .sec06 .imgBox .photoUl01 li {
	text-align: right;
}
#business .sec06 .imgBox .photoUl01 li:nth-child(2n) {
	text-align: left;
}
#business .sec06 .imgBox .photoUl01 li:nth-child(2n) p {
	text-align: right;
	max-width: 330px;
}
#business .sec06 .imgBox .textUl {
	margin-top: 45px;
	padding: 17px 20px 11px 36px;
	width: 229px;
	border-radius: 40px;
	background-color: #fff;
}
#business .sec07 {
	padding: 116px 0 100px;
	background: url("img/businness/bg06.png") no-repeat left 36.2% top 122px;
}
#business .sec07 .imgBox {
	margin-bottom: 47px;
	align-items: stretch;
}
#business .sec07 .imgBox .textBox {
	width: 452px;
}
#business .sec07 .imgBox .photo {
	margin-top: 7px;
}
#business .sec07 .imgBox .headLine03 {
	margin-bottom: 32px;
}
#business .sec07 .imgBox .headLine03 .txt {
	display: inline-block;
	position: relative;
}
#business .sec07 .imgBox .headLine03 .txt small {
	width: 100%;
	position: absolute;
	left: 0;
	top: 93%;
	font-size: 1.2rem;
	text-align: right;
}
#business .sec07 .imgBox .txtImg {
	margin-top: -20px;
}
#business .sec07 .imgBox .video {
	padding-bottom: 63.5%;
	margin: 25px auto 0;
	width: 418px;
	position: relative;
}
#business .sec07 .imgBox .video img, #business .sec07 .imgBox .video iframe {
	width: 100% !important;
	height: 100% !important;
	position: absolute;
	left: 0;
	top: 0;
}
#business .sec08 .comBox {
	padding: 66px 0 80px;
	background: url("img/businness/bg07.png") no-repeat right 77px top 42px / 162px auto;
}
#business .sec08 .imgBox {
	align-items: flex-start;
}
#business .sec08 .imgBox .photoUl li:first-child {
	width: 100%;
	text-align: right;
}
#business .sec08 .imgBox .photoUl li:first-child img {
	width: 330px;
}
#business .sec08 .imgBox .textBox {
	margin-top: 100px;
}
#business .infoBox {}
#business .infoBox .btn {
	margin: 0 auto;
	width: 537px;
}
#business .infoBox .btn a {
	padding: 5px 5px 3px;
	display: block;
	color: #fff;
	font-size: 2.8rem;
	font-weight: bold;
	position: relative;
	background-color: #8FC31F;
	text-align: center;
}
#business .infoBox .btn a:hover {
	opacity: 0.7;
}
#business .infoBox .btn a span {
	color: #000;
}
#business .infoBox .btn a::before {
	margin-top: -16px;
	width: 31px;
	height: 32px;
	position: absolute;
	right: 15px;
	top: 50%;
	background: url("img/businness/icon03.png") no-repeat left top / 100% 100%;
	content: '';
	-webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	transform: rotate(180deg);
	transition: 0.3s;
	-webkit-transition: 0.3s;
}
#business .infoBox .btn a.on::before {
	transform: none;
}
#business .infoBox .photoList {
	display: none;
	padding: 77px 0;
	margin: -149px 0 0;
}
#business .infoBox .photoList li {
	margin-top: 149px;
	width: 450px;
	float: left;
}
#business .infoBox .photoList li:nth-child(2) {
	float: right;
}
#business .infoBox .photoList li .photo {
	margin-bottom: 6px;
	text-align: center;
}
#business .infoBox .photoList li .photo img {
	width: 273px;
}
#business .infoBox .photoList li .photo p {
	margin-top: 13px;
	font-size: 2.1rem;
	color: #8FC31F;
	font-weight: bold;
}
#business .infoBox .photoList li dl {
	font-size: 1.4rem;
	line-height: 1.75;
	letter-spacing: -0.02em;
}
#business .infoBox .photoList li dl dd:not(:last-child) {
	margin-bottom: 24px;
}
@media all and (max-width: 896px) {
	#business .sec01 .topTxt {
		font-size: 1.8rem;
	}
	#business .sec01 .ttl {
		font-size: 1.4rem;
	}
	#business .sec01 .linkUl li {
		width: 48%;
		margin-bottom: 10px;
	}
	#business .sec01 .linkUl li img {
		width: 100%;
	}
	#business .imgBox {
		display: block;
	}
	#business .imgBox .photo {
		margin-bottom: 40px !important;
		width: auto !important;
	}
	#business .imgBox .textBox {
		width: auto !important;
	}
	#business .sec02 .comBox {
		padding: 50px 15px;
	}
	#business .imgBox .textBox .headLine03 {
		margin-bottom: 20px !important;
		padding: 10px 0 10px 10px;
		font-size: 1.9rem;
		border-width: 4px;
	}
	#business .imgBox .textBox p {
		margin: 0 0 20px;
	}
	#business .imgBox .textBox .linkList li {
		margin: 0 1px;
		width: 133px;
	}
	#business .imgBox .textBox .linkList li a {
		font-size: 1.6rem;
	}
	#business .imgBox .photoUl {
		display: block !important;
	}
	#business .imgBox .photoUl li {
		width: auto !important;
		text-align: left !important;
	}
	#business .imgBox .photoUl li p {
		text-align: left !important;
	}
	#business .imgBox .photoUl li img {
		width: 100%;
	}
	#business .sec03 {
		padding: 50px 15px;
		background: none;
	}
	#business .imgBox .textUl {
		padding: 14px 20px 8px 36px !important;
		width: 274px !important;
	}
	#business .sec04 .comBox {
		padding: 50px 15px;
		background: none;
	}
	#business .sec04 .imgBox .textBox .txtImg {
		width: auto;
		text-align: center;
	}
	#business .sec04 .imgBox .textBox .txtImg img {
		width: 100%;
		max-width: 356px;
	}
	#business .sec05 {
		padding: 50px 15px;
		background: none;
	}
	#business .imgBox .photoUl01 li:not(:last-child) {
		margin-bottom: 0 !important;
	}
	#business .sec06 .comBox {
		padding: 50px 15px;
		background: none;
	}
	#business .sec07 {
		padding: 50px 15px;
		background: none;
	}
	#business .sec07 .imgBox .video {
		width: auto;
	}
	#business .sec07 .imgBox .txtImg {
		margin-top: 0;
	}
	#business .sec08 .comBox {
		padding: 50px 15px;
		background: none;
	}
	#business .sec08 .imgBox {
		align-items: flex-start;
	}
	#business .sec08 .imgBox .photoUl li {
		text-align: center !important;
	}
	#business .sec08 .imgBox .photoUl li:first-child {
		width: auto;
	}
	#business .sec08 .imgBox .photoUl li img {
		width: auto !important;
	}
	#business .sec08 .imgBox .textBox {
		margin-top: 0;
	}
	#business .infoBox .btn {
		width: auto;
		max-width: 300px;
	}
	#business .infoBox .btn a {
		font-size: 1.6rem;
	}
	#business .infoBox .btn a::before {
		margin-top: -8px;
		width: 16px;
		height: 16px;
	}
	#business .infoBox .photoList {
		margin-top: -60px;
	}
	#business .infoBox .photoList li {
		margin-top: 60px;
		width: auto;
		float: none !important;
	}
}
/*------------------------------------------------------------
	contact
------------------------------------------------------------*/
#contact .pageTitle {
	background-image: url("img/contact/page_bg.jpg");
}
#contact .comBox {
	max-width: 1080px
}
#contact .mailForm .gray {
	padding: 62px 0 0;
}
#contact .mailForm .gray01 {
	padding: 62px 0;
}
#contact .gray01 .submit {
	margin-top: 30px;
}
#contact .mailForm .topTxt {
	margin: 0 auto 50px;
	max-width: 854px;
	line-height: 1.75;
}
#contact .mailForm .topTxt p:not(:last-child) {
	margin-bottom: 27px;
}
#contact .mailForm .txtImg {
	margin-bottom: 33px;
	text-align: center;
}
#contact .mailForm .txtImg img {
	max-width: 337px;
	width: 100%;
}
#contact .white {
	padding: 33px 0;
	background-color: #fff;
}
#contact .tabBox {
	margin: 0 auto;
	max-width: 980px;
}
#contact .tabBox table {
	width: 100%;
	border-collapse: collapse;
}
#contact .tabBox th, #contact .tabBox td {
	padding: 14px 0 15px;
	line-height: 1.75;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid #999;
}
#contact .tabBox th {
	padding-top: 21px;
	width: 27.9%;
}
#contact .tabBox th .must {
	padding: 3px;
	margin-left: 10px;
	display: inline-block;
	width: 37px;
	line-height: 1;
	font-size: 1.3rem;
	color: #fff;
	font-weight: bold;
	background-color: #E79F3A;
	box-sizing: border-box;
	text-align: center;
	border-radius: 15px;
}
#contact .tabBox .radioUl li input[type="radio"] {
	display: none;
}
#contact .tabBox .radioUl li input[type="radio"] + label {
	background: url("img/contact/radio.png") no-repeat left top 3px;
	background-size: 19px 19px;
	display: block;
	padding-left: 26px;
}
#contact .tabBox .radioUl li input[type="radio"]:checked + label {
	background-image: url("img/contact/radio_on.png");
}
#contact .tabBox .radioUl + p {
	margin-top: -2px;
}
#contact .tabBox td .note {
	color: #CC6600;
}
#contact .tabBox td input[type="text"], #contact .tabBox td input[type="tel"], #contact .tabBox td input[type="email"], #contact .tabBox td textarea {
	padding: 0 5px;
	width: 100%;
	max-width: 500px;
	height: 41px;
	font-size: 1.4rem;
	border: 1px solid #999;
	box-sizing: border-box;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
}
#contact .tabBox td .note01 {
	margin: 13px 0 -4px;
}
#contact .tabBox td .nameUl {
	display: flex;
}
#contact .tabBox td .nameUl li {
	margin-right: 34px;
	width: 226px;
}
#contact .tabBox td .nameUl li:last-child {
	margin-right: 0;
}
#contact .tabBox td .nameUl li span {
	width: 20px;
	display: inline-block;
}
#contact .tabBox td .nameUl li input {
	width: calc(100% - 25px);
}
#contact .tabBox td .emailUl li:not(:last-child) {
	margin-bottom: 10px;
}
#contact .tabBox td .emailUl li .note {
	margin-left: 19px;
}
#contact .tabBox td input.wid01 {
	width: 90px;
}
#contact .tabBox td input.wid02 {
	width: 100px;
}
#contact .tabBox td input.wid03 {
	width: 200px;
}
#contact .tabBox td input.wid04 {
	margin-right: 11px;
	width: 55px;
}
#contact .tabBox td .tel span {
	margin: 0 4px;
}
#contact .tabBox td .tel span:first-child {
	margin-left: 0;
}
#contact .tabBox td dl dt {
	padding-top: 10px;
	width: 120px;
	float: left;
	clear: left;
}
#contact .tabBox td .addDl01 dt {
	padding-top: 0;
}
#contact .tabBox td dl dd {
	margin-bottom: 7px;
	padding-left: 121px;
}
#contact .tabBox td dl dd:last-child {
	margin-bottom: 0;
}
#contact .tabBox td dl dd .wid01 {
	margin-right: 6px;
}
#contact .tabBox td dl dd .wid02 {
	margin: 0 24px 0 7px;
}
#contact .tabBox td dl dd input[type="button"] {
	padding: 1px 4px 0;
	display: inline-block;
	color: #FF6666;
	font-size: 1.5rem;
	line-height: 1.3;
	border: 1px solid #FF6666;
	border-radius: 3px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: #fff;
	cursor: pointer;
}
#contact .tabBox td textarea {
	padding: 5px 15px;
	height: 180px;
	resize: vertical;
}
#contact .tabBox td textarea:placeholder-shown {
	color: #CC6600;
	opacity: 1;
}
#contact .tabBox td textarea:-webkit-placeholder {
	color: #CC6600;
	opacity: 1;
}
#contact .tabBox td textarea:-moz-placeholder {
	color: #CC6600;
	opacity: 1;
}
#contact .tabBox td textarea::-moz-placeholder {
	color: #CC6600;
	opacity: 1;
}
#contact .tabBox td textarea:-ms-placeholder {
	color: #CC6600;
	opacity: 1;
}
#contact .tabBox .trSyle02 td .nameUl li {
	margin-right: 20px;
	width: 240px;
}
#contact .tabBox .trSyle02 td .nameUl li span {
	width: 29px;
	letter-spacing: -0.05em;
}
#contact .tabBox .trSyle02 td .nameUl li input {
	width: calc(100% - 38px);
}
#contact .tabBox .trSyle03 td, #contact .tabBox .trSyle03 th {
	padding: 0 0 39px;
}
#contact .tabBox .trSyle04 td, #contact .tabBox .trSyle04 th {
	padding-bottom: 9px;
	border: none;
}
#contact .tabBox .trSyle05 td, #contact .tabBox .trSyle05 th,
#contact .tabBox tr:last-child td, #contact .tabBox tr:last-child th {
	border: none;
}
#contact .policy {
	margin: 46px auto 31px;
	width: 846px;
}
#contact .policy .note {
	margin-bottom: 10px;
}
#contact .policy .innerBox {
	padding: 20px 15px;
	height: 565px;
	border: 1px solid #999;
	box-sizing: border-box;
	overflow-y: auto;
}
#contact .policy .innerBox p {
	margin-bottom: 24px;
	font-size: 1.4rem;
	line-height: 1.75;
}
#contact .policy .innerBox .ttl {
	margin-bottom: 2px;
	font-size: 1.8rem;
	font-weight: bold;
}
#contact .submit {
	text-align: center;
}
#contact .submit li {
	margin: 0 10px;
	display: inline-block;
	width: 200px;
}
#contact .submit li input {
	width: 100%;
	height: 60px;
	border: none;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: #A3C98A;
	cursor: pointer;
}
#contact .submit li input:hover {
	opacity: 0.7;
}
#contact .tabBox .trSyle02 {
	display: none;
}
#contact .errorMsg {
	color: #FF0000;
	margin: 0 auto 20px;
	max-width: 980px;
}
#contact .thanks {
	padding-bottom: 70px !important;
}
#contact .thanks .white {
	padding: 150px 30px;
	text-align: center;
}
#contact .thanks p {
	margin-bottom: 25px;
}
#contact .thanks .btn {
	margin: 0 auto;
	width: 240px;
}
#contact .thanks .btn a {
	padding: 10px;
	display: block;
	color: #fff;
	font-weight: bold;
	background-color: #A3C98A;
}
#contact .thanks .btn a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	#contact .comBox {}
	#contact .tabBox th, #contact .tabBox td {
		padding: 10px !important;
		width: 100% !important;
		float: left !important;
		box-sizing: border-box;
	}
	#contact .white {
		margin: 0 -15px;
		padding: 0 10px 50px;
	}
	#contact .tabBox td .nameUl {
		display: block;
	}
	#contact .tabBox td .nameUl li {
		margin: 0 0 10px;
	}
	#contact .tabBox td .nameUl li:last-child {
		margin-bottom: 0;
	}
	#contact .tabBox td input.wid01 {
		width: 50px;
	}
	#contact .tabBox td dl dt {
		width: 80px;
	}
	#contact .tabBox td dl dd {
		padding-left: 81px;
	}
	#contact .tabBox td input.wid02 {
		width: 60px;
	}
	#contact .tabBox td dl dd .wid01 {
		margin-right: 0;
	}
	#contact .tabBox td dl dd .wid02 {
		margin: 0;
	}
	#contact .tabBox td dl dd a {
		font-size: 1.2rem;
	}
	#contact .tabBox td input.wid03 {
		width: 100%;
	}
	#contact .policy {
		width: auto;
	}
	#contact .tabBox td .note {
		font-size: 1.2rem;
	}
	#contact .tabBox td .emailUl li .note {
		margin-left: 0;
		width: 60px;
	}
	#contact .tabBox td .emailUl li input {
		width: calc(100% - 70px);
	}
	#contact .policy .note {
		font-size: 1.4rem;
	}
	#contact .submit li input:hover {
		opacity: 1;
	}
	#contact .submit li input {
		font-size: 1.5rem;
	}
	#contact .submit li {
		display: block;
		margin-bottom: 10px;
	}
	#contact .submit {
		width: 200px;
		margin: 0 auto;
	}
}
/*------------------------------------------------------------
	recruit
------------------------------------------------------------*/
#recruit .pageTitle {
	margin-bottom: 90px;
}
#recruit .message .headLine02 {
	margin-bottom: 74px;
}
#recruit .imgBox {
	display: flex;
	justify-content: space-between;
}
#recruit .message {
	margin-bottom: 98px;
}
#recruit .message .imgBox {
	margin: 0 56px 0 43px;
}
#recruit .message .photoBox {
	margin-top: 67px;
	width: 150px;
	text-align: center;
}
#recruit .message .photoBox p {
	margin-top: 10px;
	font-size: 1.2rem;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
}
#recruit .message .photoBox p span {
	font-size: 1.6rem;
}


#recruit .message .textBox {
	width: 700px;
}
#recruit .message .textBox h4 {
	margin-bottom: 22px;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	font-size: 2.5rem;
	letter-spacing: 0.1em;
}
#recruit .message .textBox p {
	line-height: 1.75;
	text-indent: 1em;
}
#recruit .people {
	padding: 65px 0 90px;
	background: url("img/recruit/people_bg.jpg") no-repeat left top / 100% auto;
}
#recruit .people .headLine02 {
	margin-bottom: 20px;
}
#recruit .people p {
	margin-bottom: 67px;
	line-height: 1.7;
	text-align: center;
}
#recruit .people li {
	background-color: #fff;
}
#recruit .people li a {
	padding: 12px 10px 38px;
	width: 180px;
	height: 100%;
	display: block;
	font-weight: bold;
	text-align: center;
	position: relative;
	background-color: #7FCEF4;
	box-sizing: border-box;
}
#recruit .people li a:hover {
	opacity: 0.7;
}
#recruit .people li strong {
	margin-bottom: 3px;
	display: block;
	color: #fff;
	font-size: 3rem;
	line-height: 1;
}
#recruit .people li span {
	margin-bottom: 5px;
	display: block;
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	text-decoration: underline;
}
#recruit .people li small {
	display: inline-block;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	font-size: 1.3rem;
	line-height: 1.62;
	letter-spacing: 0.1em;
	text-align: left;
}
#recruit .people li span.btn {
	margin-bottom: 0;
	text-align: right;
	text-decoration: none;
	position: absolute;
	right: 16px;
	bottom: 11px;
}
#recruit .people li span.btn em {
	padding: 0 5px 0 2px;
	font-family: "Calibri";
	font-size: 1.5rem;
	font-style: normal;
	letter-spacing: 0;
	border: 1px solid #000;
}
#recruit .people li span.btn em::before {
	margin-right: 3px;
	display: inline-block;
	transform: scale(0.5) translateY(3px);
	content: url("img/common/icon05.png");
}
#recruit .action {
	padding: 102px 0 110px;
	background-color: #F4F4F9;
}
#recruit .action .comBox {
	padding: 70px 53px 63px;
	display: flex;
	justify-content: space-between;
	background-color: #fff;
	box-sizing: border-box;
}
#recruit .action .photoBox {
	width: 265px;
	text-align: center;
}
#recruit .action .photoBox h3 {
	margin-bottom: 52px;
}
#recruit .action ul {
	width: 580px;
}
#recruit .action ul li {
	padding-left: 2em;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	font-size: 1.6rem;
	line-height: 2;
	text-indent: -2em;
}
#recruit .human {
	margin: 80px 0 83px;
}
#recruit .human h3 {
	margin-bottom: 64px;
}
#recruit .human img {
	width: 477px;
}
#recruit .human li:not(:last-of-type) {
	margin-bottom: 40px;
}
#recruit .human li:nth-of-type(2) {
	margin-right: 11px;
	text-align: center;
}
#recruit .human li:nth-of-type(3) {
	margin-right: 13px;
	text-align: right;
}
#recruit .benefits {
	padding: 78px 0 36px;
	background-color: #F4F4F9;
}
#recruit .benefits h3 {
	margin-bottom: 24px;
}
#recruit .benefits .comBox > p {
	margin-bottom: 54px;
	text-align: center;
}
#recruit .benefits .imgBox {
	margin: 0 40px 40px 37px;
}
#recruit .benefits .imgBox:last-of-type {
	margin-bottom: 0;
}
#recruit .benefits .imgBox .photoBox {
	margin-top: 6px;
	width: 450px;
	text-align: center;
}
#recruit .benefits .imgBox .textBox {
	width: 427px;
}
#recruit .benefits .imgBox:last-of-type .textBox {
	margin-left: 15px;
	width: 434px;
}
#recruit .benefits .imgBox p {
	line-height: 1.75;
}
#recruit .benefits .imgBox:last-of-type p {
	margin-bottom: 6px;
}
#recruit .benefits .imgBox p.ttl {
	margin-bottom: 16px;
	padding-left: 21px;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	font-size: 2.5rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
	border-left: 4px solid #000;
}
#recruit .benefits .imgBox:last-of-type p.ttl {
	margin-bottom: 25px;
}
#recruit .benefits .imgBox .btn {
	margin: -12px 12px 0;
	text-align: right;
}
#recruit .benefits .imgBox:last-of-type .btn {
	margin: 0 16px 0 0;
}
#recruit .benefits .imgBox .btn a {
	font-family: "Calibri";
	font-size: 2.3rem;
}
#recruit .benefits .imgBox .btn a::before {
	margin-right: 7px;
	display: inline-block;
	transform: scale(0.73) translateY(1px);
	content: url("img/common/icon05.png");
}
#recruit .benefits .imgBox .btn a:hover {
	opacity: 0.7;
}
#recruit .recBox {
	margin: 194px 0;
}
#recruit .recBox .recBtn {
	margin: 0 auto;
	max-width: 783px;
}
#recruit .recBox .recBtn a {
	padding: 82px 40px 40px;
	display: block;
	color: #fff;
	font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
	letter-spacing: 0.1em;
	text-align: center;
	background: linear-gradient(to right, #8ECBA0, #62C3CE);
	box-sizing: border-box;
}
#recruit .recBox .recBtn a:hover {
	opacity: 0.7;
}
#recruit .recBox .recBtn a span {
	margin-bottom: 19px;
	padding: 5px 21px 7px;
	display: inline-block;
	font-size: 2.5rem;
	border: 1px solid #fff;
}
#recruit .recBox .recBtn a small {
	display: block;
	font-size: 2.1rem;
}
#recruit .recBox .recBtn a small::after {
	width: 15px;
	height: 15px;
	display: inline-block;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg) translate(5px, -6px);
	content: "";
}
@media all and (max-width: 896px) {
	#recruit .pageTitle {
		margin-bottom: 50px;
	}
	#recruit .message .headLine02 {
		margin-bottom: 25px !important;
	}
	#recruit .imgBox {
		display: block;
	}
	#recruit .message {
		margin-bottom: 40px;
	}
	#recruit .message .imgBox {
		margin: 0;
	}
	#recruit .message .photoBox {
		margin: 0 auto;
		width: auto;
	}
	#recruit .message .textBox {
		margin-bottom: 20px;
		width: auto;
	}
	#recruit .message .textBox h4 {
		margin-bottom: 15px;
		font-size: 1.7rem;
	}
	#recruit .message .textBox p {
		font-size: 1.4rem;
	}
	#recruit .message .textBox p:not(:last-of-type) {
		margin-bottom: 10px;
	}
	#recruit .people {
		padding: 0 0 50px;
		background: none;
	}
	#recruit .people .titleBox {
		margin: 0 -15px 30px;
		padding: 35px 15px 10px;
		background: url("img/require/people_bg.jpg") no-repeat left top / cover;
	}
	#recruit .people .headLine02 {
		margin-bottom: 10px !important;
	}
	#recruit .people p {
		margin-bottom: 0;
	}
	#recruit .people ul {
		margin-top: -15px;
		justify-content: center;
	}
	#recruit .people li {
		margin: 15px 2% 0;
		width: 46%;
	}
	#recruit .people li a {
		padding: 15px 10px 34px;
		width: auto;
		height: 100%;
		display: block;
	}
	#recruit .people li a:hover {
		opacity: 1;
	}
	#recruit .people li strong {
		margin-bottom: 3px;
		font-size: 2.2rem;
	}
	#recruit .people li span {
		margin-bottom: 5px;
		font-size: 1.4rem;
		letter-spacing: 0;
	}
	#recruit .people li small {
		margin-bottom: 5px;
		display: block;
		font-size: 1.2rem;
		line-height: 1.62;
		text-align: center;
	}
	#recruit .people li span.btn {
		text-align: center;
		bottom: 8px;
	}
	#recruit .people li span.btn em {
		font-size: 1.2rem;
	}
	#recruit .action {
		padding: 50px 0;
	}
	#recruit .action .comBox {
		padding: 30px;
		display: block;
	}
	#recruit .action .photoBox {
		margin-bottom: 20px;
		width: auto;
	}
	#recruit .action .photoBox h3 {
		margin-bottom: 52px;
	}
	#recruit .action ul {
		width: auto;
	}
	#recruit .action ul li {
		font-size: 1.4rem;
		line-height: 1.6;
	}
	#recruit .human {
		margin: 50px 0;
	}
	#recruit .human img {
		width: 90%;
		max-width: 500px;
	}
	#recruit .human li {
		margin-right: 0 !important;
		text-align: center !important;
	}
	#recruit .human li:not(:last-of-type) {
		margin-bottom: 25px;
	}
	#recruit .benefits {
		padding: 50px 0;
	}
	#recruit .benefits .headLine02 {
		margin-bottom: 15px !important;
	}
	#recruit .benefits .comBox > p {
		margin-bottom: 30px;
	}
	#recruit .benefits .imgBox {
		margin: 0 0 40px;
	}
	#recruit .benefits .imgBox .photoBox {
		margin: 0 0 20px;
		width: auto;
	}
	#recruit .benefits .imgBox .photoBox:last-of-type {
		margin-bottom: 0;
	}
	#recruit .benefits .imgBox .photoBox img {
		width: 85%;
	}
	#recruit .benefits .imgBox .textBox {
		width: auto;
	}
	#recruit .benefits .imgBox:last-of-type .textBox {
		margin: 0 0 20px;
		width: auto;
	}
	#recruit .benefits .imgBox p.ttl {
		margin-bottom: 15px !important;
		padding-left: 8px;
		font-size: 1.8rem;
		line-height: 1.3;
		letter-spacing: 0;
		border-left-width: 2px;
	}
	#recruit .benefits .imgBox .btn {
		margin: 0 !important;
	}
	#recruit .benefits .imgBox .btn a {
		font-size: 1.7rem;
	}
	#recruit .benefits .imgBox .btn a::before {
		margin-right: 3px;
		transform: scale(0.5) translateY(3px);
	}
	#recruit .benefits .imgBox .btn a:hover {
		opacity: 1;
	}
	#recruit .recBox {
		margin: 45px 0;
	}
	#recruit .recBox .recBtn {
		width: 90%;
		max-width: 500px;
	}
	#recruit .recBox .recBtn a {
		padding: 40px 20px 20px;
	}
	#recruit .recBox .recBtn a:hover {
		opacity: 1;
	}
	#recruit .recBox .recBtn a span {
		margin-bottom: 10px;
		font-size: 1.8rem;
	}
	#recruit .recBox .recBtn a small {
		font-size: 1.5rem;
	}
	#recruit .recBox .recBtn a small::after {
		width: 7px;
		height: 7px;
	}
}

@media all and (-ms-high-contrast:none){
	#gNavi .btn a {
		padding: 5px 3px 1px;
	}
	#index .more a {
		background-position: left top 7px;
	}
	#index .business .linkUl li .photo p {
		margin-top: 0;
	}
	#business .imgBox .textUl li::before {
		top: 4px;
	}
	#business .infoBox .btn a {
		padding: 8px 5px 1px;
	}
	#gFooter .fBox .fNav > li li::before {
		top: 2px;
	}
	#repair .linkBox .linkUl li a {
		padding: 17px 45px 9px;
	}
	.comTable td ul {
		max-width: 600px;
	}
	#recruit .recBox .recBtn a span {
		padding: 11px 21px 1px;
	}
	#people .textUl li .ttl {
		height: 67px;
	}
	.comTxtTab th {
		padding: 17px 10px 11px 60px;
	}
	#people .comTxtTab th {
		padding: 15px 10px 8px 12px;
	}
	#require .sec02 h4 .ttl a {
		padding: 9px 5px 3px 22px;
	}
	#contact .tabBox th .must {
		padding: 5px 3px 1px;
	}
	#contact .thanks .btn a {
		padding: 12px 10px 8px;
	}
}

#index .contribution .list li {
	padding: 20px;
	display: flex;
	font-size: 2rem;
	align-items: center;
	border-bottom: 2px solid #ddd;
}
#index .contribution .list li p {
	flex: 1;
}
#index .contribution .list li .photo {
	margin-right: 20px;
	width: 100px;
}
#index .contribution .list li .photo img {
	width: 100%;
}
#index .contribution .list li:last-child {
	border: none;
}
@media all and (max-width: 896px) {
	#index .contribution .list li {
		font-size: 1.4rem;
	}
	#index .contribution .list li .photo {
		margin-right: 10px;
		width: 60px;
	}
}

/*202204追加分*/
.kankyo-list li {
	list-style-type: decimal;
	margin-bottom: 16px;
	line-height: 180%;
}
.message-flex {
	display: flex;
	justify-content: center;
}
.message-flex .photo {
	margin-right: 25px;
	min-width: 320px;
}
#company .message2 {
	width: 960px;
}
@media all and (max-width: 896px) {
	#company .message2 {
		width: auto;
	}
	.message-flex {
		flex-wrap: wrap;
	}
	.message-flex .photo {
		min-width: inherit;
		max-width: 60vw;
		margin-bottom: 20px;
	}
	.message-flex .photo img {
		max-width: 100%;
		height: auto;
	}
}


/*20250701追加分*/
/* navのドロップダウン表示 */

.nav1 {
	padding: 0 15px 18px;
	border-bottom: none !important;
}


.gmenu-area {
  left: 0 !important;
  right: 0;
  margin: 0 auto;
}

/* 非表示が初期状態 */
.gmenu-area {
    position: fixed;
    top: 68px; /* header高さに応じて調整 */
    left: 0;
    width: 100vw;
    z-index: 1000;
    background: rgba(255,255,255,0.95);
    padding: 40px 0;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition: opacity 0.4s ease, visibility 0.4s ease;
}


.has-submenu:hover .gmenu-area {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.has-submenu:hover .gmenu-area {
    display: block;
    opacity: 1;
}

.gmenu-area a {
	border-bottom: none !important;
}

.gmenu-area a:hover {
	opacity: 0.5;
}

/* 内部のボタン配置 */
.gmenu-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: flex-start;
    padding: 0 20px;
}

.gbtn {
    flex: 0 0 calc(22.5% - 20px); /* 4列にしてgap考慮 */
	max-width: 280px;
    height: 80px;
    padding: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-size: cover;
    background-position: center;
    border-radius: 10px;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    position: relative;
    overflow: hidden;
	
	opacity: 0;
    transform: translateY(5px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.gbtn.gbtn-show {
    opacity: 1;
    transform: translateY(0);
}



/* メディアクエリで調整（タブレット2列） */
@media screen and (max-width: 1024px) {
  .gbtn {
    flex: 0 0 calc(40% - 20px);
	  height: 80px;
  }
}

.gbtn .en {
  font-size: 13px;
  line-height: 1.2;
	pacity: 0.6;
}

.gbtn .ja {
  font-size: 18px;
  line-height: 1.2;
}

.gmenu-area h5 {
	font-size: 20px;
	color: #7F7F7F;
	display: block;
	max-width: 1200px;
	text-align: left;
	margin: 0 auto 20px;
}

.gmenu-area h5 span {
	color: #0F92A7;
	font-size: 100%;
}


/* 背景画像個別指定 */
.g01 { background-image: url('./img/common/g01.jpg'); }
.g02 { background-image: url('./img/common/g02.jpg'); background-position: top;}
.g03 { background-image: url('./img/common/g03.jpg'); }
.g04 { background-image: url('./img/common/g04.jpg'); background-position: right;}
.g05 { background-image: url('./img/common/g05.jpg'); background-position: left;}
.g06 { background-image: url('./img/common/g06.jpg'); }
.g07 { background-image: url('./img/common/g07.jpg'); }

@media screen and (max-width: 896px) {
  .gmenu-area {
    position: static;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto;
    box-shadow: none;
    background: #fff;
    padding: 0;
  }

  .gmenu-inner {
    flex-direction: column;
    gap: 0;
    padding: 0;
  }

  .gbtn {
    flex: 1 1 auto;
    height: auto;
    padding: 16px;
    background: #00BFFF !important; /* 明るい青 */
    color: #fff !important;
    border-radius: 0;
    justify-content: center;
    align-items: flex-start;
    background-image: none !important;
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
	  margin-top:1px !important;
	  border: none !important;
  }

  .gbtn .en {
    display: none;
  }

  .gbtn .ja {
    font-size: 16px;
  }

  .gmenu-area h5 {
    display: none;
  }
}

#clean .advantage {
	margin-bottom: 73px;
}
#clean .advantage .imgBox {
	margin-left: 31px;
}
#clean .advantage .imgBox .textBox {
	margin-top: 4px;
	width: 424px;
}
#clean .advantage .imgBox .textBox p {
	margin-bottom: 4px;
	font-size: 1.8rem;
	font-weight: bold;
}
#clean .advantage .imgBox .textBox p span {
	padding: 0 6px;
	line-height: 0.5;
	display: inline-block;
	border-bottom: 8px solid #fff100;
}
#clean .advantage .imgBox .videoBox {
	width: 480px;
}
#clean .advantage .imgBox .videoBox p {
	margin-bottom: 12px;
	font-size: 1.5rem;
	text-align: center;
}
#clean .advantage .imgBox .videoBox p span {
	padding: 10px 25px;
	display: inline-block;
	background: url("img/index/line01.png") no-repeat left center, url("img/index/line02.png") no-repeat right center;
	background-size: 22px auto;
}
#clean .advantage h2 {
	margin-bottom: 50px;
}

@media all and (max-width: 896px) {

	#clean .advantage .imgBox {
		margin-left: 0;
		display: block;
	}
	#clean .advantage .imgBox .textBox {
		margin: 0 0 20px;
		width: auto;
	}
	#clean .advantage .imgBox .textBox p {
		margin-bottom: 15px;
	}
	#clean .advantage .imgBox .videoBox {
		width: auto;
	}
	#clean .advantage .imgBox .textBox .photo img {
		width: 100%;
	}

}
