@charset "utf-8";
/*
color
rgba(102, 102, 102, 1);
link
rgba(1, 180, 237, 1);

*/
body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 125%;
	color: rgba(97, 95, 95, 1);
	box-sizing: border-box;
	font-size: 1.6rem;
}

* { padding: 0; margin: 0; box-sizing: border-box; }
img { vertical-align: bottom; }
a {
	color: rgba(1, 180, 237, 1);
	transition: 0.3s;
}
	a img { border: none; }
li { list-style: none; }
strong { color: rgba(234, 53, 70, 1); }
p {
	padding-bottom: 1em;
	line-height: 175%;
}
.underlineH {
	border-top: 1px solid rgba(1, 180, 237, 1);
	padding: 0.25em 0 0 1em;
	background: rgba(240, 247, 253, 0.5);
	border-bottom: 1px solid rgba(1, 180, 237, 1);
	margin-bottom: 0.5em;
}
input, textarea, select {
	padding: 0.5em;
	background: rgba(255, 255, 255, 1);
	border: none;
	border: 1px solid rgba(100, 100, 100, 0.5);
	border-radius: 3px;
}
::placeholder { color: rgba(100, 100, 100, 0.5); }
input:-ms-input-placeholder { color: rgba(100, 100, 100, 0.5); }
input::-ms-input-placeholder { color: rgba(100, 100, 100, 0.5); }

.pcHide { display: none; }
.spHide { display: block; }
#drawerBox { display: none; }
.pcBlock { display: block; }
.spBlock { display: inline; }

h2, 
.bigText { font-size: 2.4rem; }
.largerText { font-size: 140%; }
.largeText { font-size: 2.0rem; }
.smallText { font-size: 1.2rem; }
.smallerText { font-size: 86%; }
.tinyText { font-size: 1.0rem; }

.fixImgM, 
.fixImg {
	width: 100%;
	max-width: 1200px;
}
.flexBox {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.flexNoWrap { flex-wrap: nowrap; }
.unitBox { margin-bottom: 8rem; }
.unitBox2 { margin-bottom: 4rem; }
	.unitBox h1, 
	.unitBox2 h1 {
	/*	font-size: 2.4rem;*/
		font-size: 3.2rem;
		line-height: 150%;
	}
	.unitBox h3, 
	.unitBox2 h3 { line-height: 150%; }

.clearBox::after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}
.initWBox, 
.initBox {
	width: 66vw;
	max-width: 1200px;
	margin: 0 auto;
}
.initWBox, 
#headerBox .initBox, 
#footerBox .initBox { width: 80vw; }

.centerBox { text-align: center; }
.leftBox { text-align: left; }
.rightBox { text-align: right; }

.rightImg {
	float: right;
	margin: 0 0 1em 4em;
}
.leftImg {
	float: left;
	margin: 0 4em 1em 0;
}

/* [grid] ========================================== */
.grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, 16vw);
	grid-template-rows: repeat(4, 16vw);
	grid-row-gap: calc( 2vw / 3 );
    grid-column-gap: calc( 2vw / 3 );
}
#homeBody .grid { grid-template-rows: repeat(2, 16vw); }
	.griditem {
		overflow: hidden;
		border: 1px solid rgba(100, 100, 100, 0.5);
	}
		#homeBusinessBox li:nth-child(1) { grid-row: 1 / 3; grid-column: 1 / 3; }
		#homeBusinessBox li:nth-child(2) { grid-row: 1 / 3; }
		#homeBusinessBox li:nth-child(5) { grid-row: 3 / 5; }
		#homeBusinessBox li:nth-child(7) { grid-column: 3 / 5; }
		#homeBusinessBox li:nth-child(8) { grid-column: 2 / 4; }
		.griditem a {
			display: block;
			width: 100%;
			height: 100%;
			text-align: center;
			color: rgba(255, 255, 255, 1);
		/*	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);*/
			font-weight: bold;
			text-decoration: none;
			line-height: 16vw;
			font-size: 1.4rem;
			position: relative;
		}
		#homeBusinessBox li:nth-child(1) a, 
		#homeBusinessBox li:nth-child(2) a, 
		#homeBusinessBox li:nth-child(5) a { line-height: 32vw; }
		.griditem a::after {
			content: '';
			position: absolute;
			top: 0;
			left: 0;
			display: block;
			width: 100%;
			height: 100%;
			background-position: 50% 50%;
			background-repeat: no-repeat;
			background-size: cover;
			transition: 0.3s;
			z-index: -1;
		}
			.griditem a:hover::after { transform: scale(1.3); }
			#homeBusinessBox li:nth-child(1) a::after { background-image: url(../img/home/image01.jpg); }
			#homeBusinessBox li:nth-child(2) a::after { background-image: url(../img/home/image02.jpg); }
			#homeBusinessBox li:nth-child(3) a::after { background-image: url(../img/home/image03.jpg); }
			#homeBusinessBox li:nth-child(4) a::after { background-image: url(../img/home/image04.jpg); }
			#homeBusinessBox li:nth-child(5) a::after { background-image: url(../img/home/image05.jpg); }
			#homeBusinessBox li:nth-child(6) a::after { background-image: url(../img/home/image06.jpg); }
			#homeBusinessBox li:nth-child(7) a::after { background-image: url(../img/home/image07.jpg); }
			#homeBusinessBox li:nth-child(8) a::after { background-image: url(../img/home/image08.jpg); }
			#homeBusinessBox li:nth-child(9) a::after { background-image: url(../img/home/image09.jpg); }


/* [layout] ========================================== */
#headerBox {
	border-top: 5px solid rgba(1, 180, 237, 1);
	color: rgba(0, 0, 0, 1);
	background: rgba(255, 255, 255, 0.9);
	width: 100%;
/*	height: 10vw;
	min-height: 100px;*/
	height: 100px;
	position: fixed;
	z-index: 500;
	transition: 0.3s;
}
	#headerBox:hover { background: rgba(255, 255, 255, 1); box-shadow: 1px 1px 2px rgba(100, 100, 100, 0.75); }
	#headerBox a { text-decoration: none; }
	#headerBox .flexBox { flex-wrap: nowrap; }
		#headerBox .flexBox h1 {
			width: 30%;
			min-width: 150px;
		}
		#headerBox .flexBox nav { flex-grow: 1; }
			#headerBox h1 a {
				text-indent: -2000em;
				background: url(../img/logo.png) no-repeat 0 100%;
				background-position: contain;
				width: 200px;
				max-width: 150px;
				height: 80px;
				display: block;
				background-size: contain;
			}

		#headerBox #subMenuBox ul {
			justify-content: flex-end;
		}
		#headerBox #subMenuBox li {
			display: inline-block;
			margin-left: 1rem;
		}
			#headerBox #subMenuBox li a {
				display: block;
				background: rgba(1, 180, 237, 1);
				color: rgba(255, 255, 255, 1);
				padding: 0 0 0.5rem 0;
				font-size: 1.2rem;
				border-radius: 0 0 3px 3px;
			}

		#headerBox .flexBox > li {
			text-align: center;
			position: relative;
		/*	line-height: 120%;*/
			width: 10vw;
		}
			#mainMenuBox .flexBox > li a {
				text-decoration: none;
				font-size: 1.2rem;
				font-weight: bold;
				position: relative;
				padding-top: 2rem;
				display: inline-block;
				color: rgba(0, 0, 0, 1);
			}
			#mainMenuBox .flexBox > li > a:hover {
				color: rgba(1, 180, 237, 1);
			}
			#mainMenuBox .flexBox > li > a::before {
				font-size: 1.6rem;
				display: block;
			}
				#mainMenuBox .flexBox > li.home > a::before { content: 'TOP PAGE'; }
				#mainMenuBox .flexBox > li.information > a::before { content: 'INFORMATION'; }
				#mainMenuBox .flexBox > li.business > a::before { /*content: 'BUSINESS CONTENT';*/ content: 'BUSINESS'; }
				#mainMenuBox .flexBox > li.technology > a::before { content: 'TECHNOLOGY'; }
				#mainMenuBox .flexBox > li.recruitment > a::before { content: 'RECRUITMENT'; }
				#mainMenuBox .flexBox > li > a::after {
					content: '';
					position: absolute;
					bottom: -1em;
					left: 0;
					width: 0;
					border-bottom: 2px solid rgba(1, 180, 237, 1);
					transition: 0.3s;
				}
				#mainMenuBox .flexBox > li > a:hover::after { width: 100%; }
				#mainMenuBox .flexBox > li > ul {
					position: absolute;
					top: 6rem;
					left: -2.5vw;
					display: none;
					padding: 1rem;
					width: 15vw;
					background: rgba(255, 255, 255, 0.8);
					box-shadow: 1px 1px 3px rgba(100, 100, 100, 0.5);
					z-index: 5;
				}
					#mainMenuBox .flexBox > li:hover > ul {
						display: block;
					}
						#mainMenuBox .flexBox > li:hover > ul li a:hover { color: rgba(1, 180, 237, 1); }


#mainContentsBox {
/*	padding-top: 11vw;*/
	padding-top: 100px;
	position: relative;
}
#mainContentsBox h1, 
#mainContentsBox h2, 
#mainContentsBox h3, 
#mainContentsBox h4, 
#mainContentsBox h5, 
#mainContentsBox h6 { margin-bottom: 2rem; }

#footerBox {
	margin-top: 6rem;
	background: rgba(1, 180, 237, 1);
	color: rgba(255, 255, 255, 1);
	padding: 2rem 0;
/*	line-height: 130%;*/
}
	#footerBox h1 {
	/*
		text-indent: -2000em;
		background: url(../img/logo_white.png) no-repeat;
		background-size: contain;
		width: 200px;
		height: 41px;
	*/
		margin-top: 1rem;
		font-size: 1.6rem !important;
		margin-bottom: 1rem;
	}
	#footerBox a {
		color: rgba(255, 255, 255, 1);
		text-decoration: none;
	}
	#footerBox a:hover { color: rgba(255, 241, 0, 1); }
	#footerBox .footerLeftBox { /*width: 14em;*/ width: 30%; margin-top: 2.4rem; }
	#footerBox .footerRightBox { flex: 1; }

		#footerBox #footerMainContentBox .flexBox > li { /*width: 20%;*/ width: 25%; }
		#footerBox #footerMainContentBox .flexBox > li.information > a:first-child, 
		#footerBox #footerMainContentBox .flexBox > li.business > a:first-child, 
		#footerBox #footerMainContentBox .flexBox > li.technology > a:first-child, 
		#footerBox #footerMainContentBox .flexBox > li.recruitment > a:first-child {
			font-size: 1.4rem;
			margin: 0 0 0.5rem 0;
		}
		#footerBox #footerMainContentBox .flexBox > li.business { flex: 1; align-items: flex-start; }
		#footerBox #footerMainContentBox .flexBox > li.business ul {
			display: flex;
			flex-wrap: wrap;
			justify-content: space-between;
		}
		#footerBox #footerMainContentBox .flexBox > li.business ul li { width: 48%; }


/* [form] ============================================ */
.mw_wp_form th.required::after, 
.mw_wp_form .error {
	margin-left: 0.5em;
	padding: 0.25em 1em;
	background: rgba(204, 0, 0, 1);
	color: rgba(255, 255, 255, 1);
	font-weight: bold;
	border-radius: 5px;
}
.mw_wp_form th.required::after {
	content: '必須';
	float: right;
	font-size: 86%;
}


/* [table] ========================================== */
	.nonlineTable, 
	.leftThTable, 
	.topThTable {
		border-collapse: collapse;
		width: 100%;
		border-top: 1px solid rgba(1, 180, 237, 0.5);
		border-left: 1px solid rgba(1, 180, 237, 0.5);
		margin-bottom: 0.5em;
	}
	.nonlineTable th, 
	.nonlineTable td, 
	.topThTable th, 
	.topThTable td, 
	.leftThTable th, 
	.leftThTable td {
		font-weight: normal;
		border-right: 1px solid rgba(1, 180, 237, 0.5);
		border-bottom: 1px solid rgba(1, 180, 237, 0.5);
		padding: 1em;
	}
	.nonlineTable th, 
	.nonlineTable td, 
	.nonlineTable { border: none; padding-left: 0; }
	.topThTable th, 
	.leftThTable th {
		background: rgba(1, 180, 237, 0.1);
	}
	.nonlineTable th, 
	.topThTable td { vertical-align: top; }
	.nonlineTable th, 
	.leftThTable th { text-align: left; width: 25%; }


/* [li] ========================================== */
.cautionUl {}
	.cautionUl li {
		margin-left: 1em;
		text-indent: -1em;
		line-height: 150%;
	}

	.myOl > li, 
	.myUl > li {
		list-style: decimal;
		margin: 0 0 1em 2em;
	}
	.myUl > li { list-style: square; }

	.inlineUl > li {
		display: inline;
		line-height: 175%;
	}

.occupationUl {}
	.occupationUl li {
		border: 3px solid rgba(0, 0, 0, 1);
		border-radius: 5px;
		margin: 2rem 0;
		position: relative;
	}
		.occupationUl li::before, 
		.occupationUl li::after {
			content: '';
			position: absolute;
			border: 3px solid transparent;
			width: calc( 100% - 20px - 20vw);
		}
		.occupationUl li::before {
			border-right-width: 20px;
			border-bottom: 3px solid rgba(0, 0, 0, 1);
			border-left-width: 20vw;
			top: -8px;
		}
		.occupationUl li::after {
			border-top: 3px solid rgba(0, 0, 0, 1);
			border-right-width: 20vw;
			border-left-width: 20px;
			bottom: -8px;
		}
		.occupationUl li a {
			display: block;
			font-size: 2rem;
			padding: 2rem;
			text-decoration: none;
			color: rgba(0, 0, 0, 1);
			position: relative;
		}
			.occupationUl li a::after {
				content: '詳細をみる';
				font-size: 1.2rem;
				background: rgba(0, 0, 0, 1);
				color: rgba(255, 255, 255, 1);
				padding: 0.5rem 1rem;
				position: absolute;
				right: 0;
				bottom: 0;
			}
			.occupationUl li a:hover {
				background: rgba(1, 180, 237, 1);
				color: rgba(255, 255, 255, 1);
				box-shadow: 5px 5px 8px rgba(100, 100, 100, 0.5);
			}
		.occupationUl li .salary {
			font-size: 76%;
			display: inline-block;
			padding: 1rem 0 0 4rem;
		}


/* [btn] ========================================== */
#footerBox a#backToTopBtn::before, 
#backToTopBtn {
	display: block;
	position: fixed;
	bottom: 1em;
	right: 3vw;
	width: 50px;
	height: 50px;
	transition: 0.3s;
	color: rgba(1, 180, 237, 1);
}
#backToTopBtn {
	text-indent: -2000em;
	background: rgb(255, 255, 255, 1);
	border-radius: 50%;
	border: 2px solid rgba(1, 180, 237, 1);
	box-shadow: 1px 1px 2px rgba(102, 102, 102, 0.5);
	font-size: 25px;
}
#footerBox a#backToTopBtn::before {
	text-indent: 0;
	text-align: center;
	line-height: 50px;
}
#footerBox a.hideBtn { opacity: 0; }
#footerBox a.showBtn { opacity: 1; }

.backBtn, 
.submitBtn {
	padding: 1em 0;
	background: rgba(1, 180, 237, 1);
	color: rgba(255, 255, 255, 1);
	width: 45vw;
	border: none;
}
.backBtn { background: rgba(102, 102, 102, 1); }

.myBtn {
	text-decoration: none;
	padding: 1em 2em;
	border-radius: 3px;
	background: rgba(1, 180, 237, 1);
	color: rgba(255, 255, 255, 1);
	display: inline-block;
}
	.myBtn:hover{
		background: rgba(255, 241, 0, 1);
		color: rgba(0, 0, 0, 0.75);
	}

.arrowBtn {
	display: inline-block;
	padding: 2em 4em;
	text-align: center;
	border: 2px solid rgba(0, 78, 162, 1);
	color: rgba(0, 78, 162, 1);
	text-decoration: none;
	position: relative;
	background: rgba(255, 255, 255, 1);
}
	#homeBody #homeSpecialBox .arrowBtn { padding: 0.5em 2em; }
	.arrowBtn::before {
		content: '';
		position: absolute;
		bottom: 2px;
		right: 2px;
		border: 3px solid transparent;
		border-right-color: rgba(0, 78, 162, 1);
		border-bottom-color: rgba(0, 78, 162, 1);
	}
	.arrowBtn::after {
		content: '';
		position: absolute;
		bottom: 1em;
		right: -30px;
		width: 55px;
		height: 16px;
		background: url(../img/btn_arrow.png) no-repeat 100% 0;
		transition: 0.3s;
	}
	.arrowBtn:hover {
		background: rgba(0, 78, 162, 1);
		color: rgba(255, 255, 255, 1);
	}
		.arrowBtn:hover::before {
			border-right-color: rgba(255, 255, 255, 1);
			border-bottom-color: rgba(255, 255, 255, 1);
		}
		.arrowBtn:hover::after { right: -35px; }

	.worklocationBox {
		border: 1px solid rgba(102, 102, 102, 0.25);
		padding: 2rem 40% 2rem 2rem;
		background: url(../img/information/company/photo01.jpg) 100% 0 no-repeat;
		background-size: contain;
		min-height: 150px;
	}
	.worklocationBox:not(:last-child) { margin-bottom: 1rem; }
		.worklocationBox.secondoffice { background-image: url(../img/information/company/photo02.jpg); }
		.worklocationBox .myBtn { font-size: 1.0rem; padding: 0.5em 2em; margin-top: 0.5rem; }


/* [js] ============================================ */
.ggmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	}
	 
	.ggmap iframe,
	.ggmap object,
	.ggmap embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	.muuriGrid {
		position: relative;
		width: 100%;
		margin: 0 auto;
	}
	.initWBox > .muuriGrid { width: 80vw; }
	/*
		.muuriGridItem {
			display: block;
			position: absolute;
			width: 100px;
			height: 100px;
			z-index: 1;
			background: rgba(100, 100, 100, 0.1);
		}
		.initWBox > .muuriGrid > .muuriGridItem {
			width: 20vw;
			height: 20vw;
		}
	*/
	
	.newscategory ul { position: relative; height: 1.75em; overflow: hidden; }
	.newscategory ul li {
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		display: inline-block;
		width: 100%;
		transition: 0.3s;
	}
	.newscategory ul li.current { opacity: 1; }
	.newscategory ul li a {
		display: block;
		background: rgba(0, 78, 162, 1);
		color: rgba(255, 255, 255, 1);
		text-decoration: none;
		text-align: center;
	}
	.newscategory ul li a.product { background-color: rgba(252, 98, 142, 1); }

	.dotContent span { position: relative; }
		.dotContent span::after {
			position: absolute;
			content: '●';
			color: rgba(1, 180, 237, 1);
			top: -1.2em;
			left: 0;
			font-size: 40%;
			width: 100%;
			text-align: center;
			display: inline-block;
		}
		#homeRecruitBox .dotContent span::after { top: -2.8em; color: rgba(0, 78, 162, 1); font-size: 30%; }
		#recruitmentBody h1 .dotContent span::after { top: -0.35em; }

/* [animation] ============================================ */

	@keyframes fuwafuwa {
		0% { transform: translateY(0) }
		50% { transform: translateY(-20px) }
		100% { transform: translateY(0) }
	}


/* [pages] ============================================ */
/* toppage */
	#mainImageBox {
		width: 100%;
		height: 25vw;
		background: url(../img/business/image01.jpg) 50% 50% no-repeat;
		background-size: cover;
		text-align: center;
		position: relative;
		z-index: -2;
	}
	#informationBody #mainImageBox, 
	#greetingBody #mainImageBox, 
	#specialBody #mainImageBox { background-image: url(../img/information/image01.jpg); }
	#businessBody #mainImageBox { background-image: url(../img/business/image01.jpg); }
	#technologyBody #mainImageBox, 
	#systemBody #mainImageBox, 
	#qualityBody #mainImageBox { background-image: url(../img/technology/image01.jpg); }
	#newsBody #mainImageBox { background-image: url(../img/news/image01.jpg); }
	#contactBody #mainImageBox { background-image: url(../img/contact/image01.jpg); }

		#mainImageBox .copyBox {
			color: rgba(255, 255, 255, 1);
			margin: 0 auto;
		}
	#homeBody #mainImageBox { background-image: url(../img/home/imagetop.jpg); height: 34vw; }
		#homeBody #mainImageBox .copyBox {
			position: absolute;
			bottom: 1rem;
			left: 20vw;
			width: 65vw;
			text-align: left;
			text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
		}
		.singleBody #mainImageBox .copyBox, 
		.pageBody #mainImageBox .copyBox {
			text-align: center;
			padding-top: 10vw;
		}
			#mainImageBox .copyBox h1 {
				line-height: 110%;
				font-size: 3.4rem;
				font-weight: bold;
				margin-bottom: 2rem;
			}
			#homeBody #mainImageBox .copyBox h1 {
			/*	font-size: 2.8rem;*/
				font-size: 3vw;
				line-height: 150%;
			}
			.singleBody #mainImageBox .copyBox h1 .subTitle, 
			.pageBody #mainImageBox .copyBox h1 .subTitle {
				font-size: 1.6rem;
				display: block;
			}
			#mainImageBox .copyBox p {
			/*	font-size: 1.4rem;*/
				font-size: 1.2vw;
			/*	line-height: 125%;*/
			}

		#mainImageBox::before, 
		#mainImageBox::after {
			position: absolute;
			content: '';
			z-index: -1;
			border: 12.5vw solid transparent;
		}
		#homeBody #mainImageBox::before, 
		#homeBody #mainImageBox::after { border-width: 17vw; }
		#mainImageBox::before {
			top: 0;
			left: 0;
			border-top-color: rgba(0, 180, 237, 0.6);
			border-left-color: rgba(0, 180, 237, 0.6);
		}
		#mainImageBox::after {
			right: 0;
			bottom: 0;
			border-right-color: rgba(0, 180, 237, 0.6);
			border-bottom-color: rgba(0, 180, 237, 0.6);
		}

		#homeBody #mainContentsBox { min-height: 140vw; }
			#homeBody #mainContentsBox::before, 
			#homeBody #mainContentsBox::after {
				content: '';
				position: absolute;
			/*	top: 34vw;
				top: 45vw;*/
				top: calc( 34vw + 100px );
				z-index: -2;
				width: 34vw;
				height: 140vw;
				background-size: contain;
				background-repeat: no-repeat;
			}
			#homeBody #mainContentsBox::before {
				background-image: url(../img/home/left.png);
				left: 0;
			} 
			#homeBody #mainContentsBox::after {
				background-image: url(../img/home/right.png);
				right: 0;
			}

		#homeBody h1 { font-size: 3.2rem; margin-bottom: 6rem; }
		#homeBody #footerBox h1 { margin-bottom: 1rem; }
		#homeBody #homeBusinessBox h1 {
			text-align: center;
		}
		#homeBody #homeNewsBox, 
		#homeBody #homeSpecialBox { padding-left: 16vw; }
			#homeBody #homeSpecialBox .flexBox p:nth-child(1) { width: 60%; }
			#homeBody #homeSpecialBox .flexBox p:nth-child(2) { width: 32%; }

		#homeBody #homeNewsBox h2 { width: 3em; }
		#homeBody #homeNewsBox .flexBox > ul {
			flex: 1;
			padding-left: 2em;
			background: url(../img/downwardarrow.png) no-repeat 0.5em 100%;
		}
			#homeBody #homeNewsBox li.flexBox span { width: 6em; font-size: 1.2rem; }
	/*		#newsBody .flexBox .newscategory a, 
			#homeBody #homeNewsBox li.flexBox span.newscategory a {
				display: block;
				background: rgba(0, 78, 162, 1);
				color: rgba(255, 255, 255, 1);
				text-decoration: none;
				text-align: center;
			}*/
			#homeBody #homeNewsBox li.flexBox span.newstitle { flex: 1; padding-left: 1em; font-size: 1.4rem; text-align: left; }
			#homeBody #homeNewsBox li.alllistBtnLi { font-size: 1.2rem; text-align: right; padding: 1rem 0 0 0; }

		#homeBody #homeRecruitBox {
		}
			#homeBody #homeRecruitBox a {
				display: block;
				border: 5px solid rgba(0, 78, 162, 1);
				background: rgba(255, 241, 0, 1);
				font-size: 3.0rem;
				text-decoration: none;
				color: rgba(0, 0, 0, 1);
				position: relative;
			/*	padding: 20px 0 40px 350px;*/
				padding: 20px 0 40px 320px;
				line-height: 125%;
				font-weight: bold;
				text-align: left;
			}
				#homeBody #homeRecruitBox a:hover {
					background: rgba(244, 160, 42, 1);
				}
			#homeBody #homeRecruitBox a .blueText {
				color: rgba(0, 78, 162, 1);
				font-size: 2.6rem;
			}
			#homeBody #homeRecruitBox .blueText::before, 
			#homeBody #homeRecruitBox .blueText::after, 
			#homeBody #homeRecruitBox .dotContent::before, 
			#homeBody #homeRecruitBox .dotContent::after, 
			#homeBody #homeRecruitBox a::before, 
			#homeBody #homeRecruitBox a::after {
				content: '';
				position: absolute;
				background-repeat: no-repeat;
				background-size: contain;
			}
				#homeBody #homeRecruitBox a::after {
					bottom: auto;
					top: 15px;
					width: 40px;
					background-size: cover;
				}
			#homeBody #homeRecruitBox .dotContent::before {
				top: -59px;
				left: -66px;
				width: 193px;
				height: 158px;
				background-image: url(../img/home/recruit01.png);
				animation: fuwafuwa 3s ease infinite;
			}
			#homeBody #homeRecruitBox .blueText::before {
				bottom: -1px;
			/*	left: 70px;*/
				left: 20px;
				width: 278px;
				height: 205px;
				background-image: url(../img/home/recruit02.png);
			}
			#homeBody #homeRecruitBox .dotContent::after {
				bottom: -105px;
				right: 10px;
				width: 200px;
				height: 191px;
				background-image: url(../img/home/recruit03.png);
				animation: fuwafuwa 2.5s ease infinite;
			}
			#homeBody #homeRecruitBox .blueText::after {
				top: 10px;
				right: 3px;
				width: 57px;
				height: 42px;
				background-image: url(../img/home/recruit_go.png);
			}

/* information */

#informationBody .nonlineTable th { border-right: 1px dotted rgba(102, 102, 102, 0.5); }
#informationBody .nonlineTable td { padding-left: 3rem; }
#informationBody .inlineUl {
	border-top: 1px dotted rgba(102, 102, 102, 0.5);
	padding: 2rem 0;
	border-bottom: 1px dotted rgba(102, 102, 102, 0.5);
}

#technologyBody .leftImg, 
#technologyBody .rightImg, 
#voiceBody .leftImg, 
#voiceBody .rightImg, 
#messageBody .leftImg, 
#messageBody .rightImg, 
#greetingBody .rightImg { width: 25vw; max-width: 650px; }

	#specialBody .specialNumberDl dt {
		width: 24vw;
		margin: 0 0 1em 2em;
		float: right;
		text-align: center;
	}
		#specialBody .specialNumberDl dt .countSubNumber, 
		#specialBody .specialNumberDl dt .countNumber {
			font-size: 10vw;
			line-height: 110%;
			letter-spacing: -0.05em;
		}
		#specialBody .specialNumberDl dd { flex: 1; }
		#specialBody .specialNumberDl dd h2 { line-height: 150%; }


/* business */
#businessBody h2 {
	padding-bottom: 0.5em;
	line-height: 125%;
	border-bottom: 1px dotted rgba(102, 102, 102, 0.5);
}
	#businessBody h2 .englishTitle { position: relative; }
		#businessBody h2 .englishTitle::after {
			content: '';
			width: 100%;
			position: absolute;
			left: 0;
			bottom: -10px;
			border-bottom: 3px solid rgba(102, 102, 102, 0.5);
		}
/*
.businessGrid .muuriGridItem {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 50%;

}
	.businessGrid .muuriGridItem::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 20vw;
		height: 20vw;
		border: 1px solid rgba(255, 255, 255, 1);
	}
		.initWBox > .muuriGrid > .w2 { width: 40vw; }
		.initWBox > .muuriGrid > .w2:before { width: calc(40vw - 2px); }
		.initWBox > .muuriGrid > .h2 { height: 40vw; }
		.initWBox > .muuriGrid > .h2:before { height: calc(40vw - 2px); }
		.initWBox > .muuriGrid > .w05:before, 
		.initWBox > .muuriGrid > .w05 { width: 10vw; }
		.initWBox > .muuriGrid > .h05:before, 
		.initWBox > .muuriGrid > .h05 { height: 10vw; }
		.initWBox > .muuriGrid > .w4 { width: 80vw; }
		.initWBox > .muuriGrid > .w4:before { width: calc(80vw - 2px); }

	.businessGrid .basic01 { background-image: url(../img/business/basic/photo01.jpg); }
	.businessGrid .basic02 { background-image: url(../img/business/basic/photo02.jpg); }
	.businessGrid .basic03 { background-image: url(../img/business/basic/photo03.jpg); }
	.businessGrid .basic04 { background-image: url(../img/business/basic/photo04.jpg); }
	.businessGrid .basic05 { background-image: url(../img/business/basic/photo05.jpg); }
	.businessGrid .basic06 { background-image: url(../img/business/basic/photo06.jpg); }
	.businessGrid .basic07 { background-image: url(../img/business/basic/photo07.jpg); }
	.businessGrid .basic08 { background-image: url(../img/business/basic/photo08.jpg); }
	.businessGrid .basic09 { background-image: url(../img/business/basic/photo09.jpg); }
	.businessGrid .basic10 { background-image: url(../img/business/basic/photo10.jpg); }
	
	.businessGrid .conicalhead01 { background-image: url(../img/business/conicalhead/photo01.jpg); }
	.businessGrid .conicalhead02 { background-image: url(../img/business/conicalhead/photo02.jpg); }
	.businessGrid .conicalhead03 { background-image: url(../img/business/conicalhead/improved01.jpg); }
	.businessGrid .conicalhead04 { background-image: url(../img/business/conicalhead/improved02.jpg); }

	.businessGrid .casing01 { background-image: url(../img/business/casing/photo01.jpg); }
	.businessGrid .casing02 { background-image: url(../img/business/casing/photo02.jpg); }

	.businessGrid .tank01 { background-image: url(../img/business/tank/photo01.jpg); }
	.businessGrid .tank02 { background-image: url(../img/business/tank/photo02.jpg); }
	.businessGrid .tank03 { background-image: url(../img/business/tank/photo03.jpg); }
	.businessGrid .tank04 { background-image: url(../img/business/tank/photo04.jpg); }
	.businessGrid .tank05 { background-image: url(../img/business/dummy.png); }
	.businessGrid .tank06 { background-image: url(../img/business/tank/photo06.jpg); }

	.businessGrid .tablemachine { background-image: url(../img/business/dummy.png); }

	.businessGrid .steelstructure01 { background-image: url(../img/business/steelstructure/photo01.jpg); }
	.businessGrid .steelstructure02 { background-image: url(../img/business/steelstructure/photo02.jpg); }
	.businessGrid .steelstructure03 { background-image: url(../img/business/steelstructure/photo03.jpg); }
	.businessGrid .steelstructure04 { background-image: url(../img/business/steelstructure/photo04.jpg); }
	.businessGrid .steelstructure05 { background-image: url(../img/business/steelstructure/photo05.jpg); }
	.businessGrid .steelstructure06 { background-image: url(../img/business/steelstructure/photo06.jpg); }
	.businessGrid .steelstructure07 { background-image: url(../img/business/steelstructure/photo07.jpg); }
	.businessGrid .steelstructure08 { background-image: url(../img/business/steelstructure/photo08.jpg); }
	.businessGrid .steelstructure09 { background-image: url(../img/business/steelstructure/photo09.jpg); }
	.businessGrid .steelstructure10 { background-image: url(../img/business/steelstructure/photo10.jpg); }
	.businessGrid .steelstructure11 { background-image: url(../img/business/steelstructure/photo11.jpg); }
	.businessGrid .steelstructure12 { background-image: url(../img/business/steelstructure/photo12.jpg); }
	.businessGrid .steelstructure13 { background-image: url(../img/business/steelstructure/photo13.jpg); }

	.businessGrid .mortarplant01 { background-image: url(../img/business/mortarplant/photo01.jpg); }
	.businessGrid .mortarplant02 { background-image: url(../img/business/mortarplant/photo02.jpg); }

	.businessGrid .groundimprovement01 { background-image: url(../img/business/groundimprovement/photo01.jpg); }
*/
.resultBox {
	border-top: 1px solid rgba(100, 100, 100, 0.5);
	padding: 2rem 0;
	border-bottom: 1px solid rgba(100, 100, 100, 0.5);
}
	.resultBox .resultTitleBox { flex: 1; }
		.resultBox .resultTitleBox p { margin-right: 2rem; }
	.resultBox .resultContentBox { width: 50vw; }
		.resultBox .resultContentBox li {
			font-size: 1.0rem;
			width: 16vw;
		}


/* recruitment */

#recruitmentBox #recruitmentHead .initBox {
	width: auto;
	display: inline-block;
	text-align: left;
	margin-top: 3em;
	color: rgba(0, 0, 0, 1);
}
#recruitmentBox #recruitmentHead .initBox h1 { font-size: 7.5rem; line-height: 125%; }
#recruitmentBox #recruitmentHead .initBox p { padding: 0.5em 0 0 0; }

#recruitmentBox .arrowBtn {
	font-size: 3rem;
	padding: 0.5em 1.5em;
	color: rgba(255, 255, 255, 1);
	border-color: rgba(255, 255, 255, 1);
	background-color: transparent;
}
	#recruitmentBox .arrowBtn::before {
		border-right-color: rgba(255, 255, 255, 1);
		border-bottom-color: rgba(255, 255, 255, 1);		
	}
	#recruitmentBox .arrowBtn::after { background-image: url(../img/btn_arrow_white.png); }

	#voiceBox, 
	#messageBox, 
	#applicationpointBox, 
	#applicationBox {
		text-align: center;
		display: block;
		position: relative;
	}
	#recruitmentBox .cartoonBox {
		position: relative;
		background-position: 50% 0;
		background-repeat: no-repeat;
		background-size: contain;
		margin: 0 auto 1em auto;
	}
	#recruitmentBox .textBox {
		position: absolute;
		text-align: left;
		color: rgba(255, 255, 255, 1);
		text-shadow: 1px 1px 2px rgba(100, 100, 100, 0.5);
	}
		#recruitmentBox .textBox h2 { margin-bottom: 0.5em; }

	/* 1段目 */
		#voiceBox .cartoonBox {
			background-image: url(../img/recruitment/bg01.png);
			width: 75vw;
			max-width: 1005px;
			height: 48.9vw;
			max-height: 653px;
		}
		#voiceBox .textBox {
			left: 25vw;
			bottom: 10vw;
			z-index: 50;
		}
		@media only screen and (min-width: 1005px) {
			#voiceBox .textBox {
				left: 250px;
				bottom: 100px;
			}
		}
			#messageBox::after, 
			#applicationpointBox::after,
			#voiceBox::after, 
			#voiceBox .cartoonBox::before, 
			#voiceBox .cartoonBox::after, 
			#recruitmentSecondUnitBox::before, 
			#recruitmentSecondUnitBox::after, 
			#applicationBox .cartoonBox::before, 
			#applicationBox .cartoonBox::after {
				content: '';
				position: absolute;
				background-size: contain;
				background-repeat: no-repeat;
				z-index: 50;
			}
			#voiceBox::after {
				top: 0;
				left: 0;
				display: block;
				width: 100%;
			/*	height: 65.3vw;
				max-height: 653px;*/
				height: 24.5vw;
				max-height: 327px;
				background-image: url(../img/recruitment/parts_woman.png);
				background-position: 50% 6vw;
				background-size: auto;
			}
			#voiceBox .cartoonBox::before {
				top: 0;
				left: -15vw;
				background-image: url(../img/recruitment/parts_businessman.png);
				width: 41.4vw;
				max-width: 560px;
				height: 40.8vw;
				max-height: 552px;
				animation: fuwafuwa 3s ease infinite;
			}
			#voiceBox .cartoonBox::after {
				bottom: 6vw;
				right: -10vw;
				background-image: url(../img/recruitment/parts_businessman02.png);
				width: 39.5vw;
				max-width: 534px;
				height: 33vw;
				max-height: 447px;
				animation: fuwafuwa 3.5s ease infinite;
			}

	/* 2段目 */
		#recruitmentSecondUnitBox {
			position: relative;
			width: 100%;
			max-width: 1351px;
		/*	height: 37.8vw;
			max-height: 412px; */
			height: 15vw;
			max-height: 212px;
			margin: 0 auto;
		}
			#applicationpointBody #recruitmentSecondUnitBox,  
			#messageBody #recruitmentSecondUnitBox {
				height: auto;
				max-height: none;
			}
			#applicationpointBody #recruitmentSecondUnitBox {
				width: 41vw;
				max-width: 555px;
				margin: 0 auto;
			}
			#messageBody #recruitmentSecondUnitBox {
				width: 62vw;
				max-width: 840px;
				margin: 0 auto;
			}
			#recruitmentSecondUnitBox::before {
				top: -5vw;
				left: 25vw;
				width: 34.7vw;
				max-width: 469px;
				height: 26.7vw;
				max-height: 362px;
				background-image: url(../img/recruitment/parts_businessman03.png);
			}
			#recruitmentSecondUnitBox::after {
				bottom: 30px;
				right: 3vw;
				width: 19vw;
				max-width: 258px;
				height: 24vw;
				max-height: 325px;
				background-image: url(../img/recruitment/parts_woman02.png);
			}
				#messageBody #recruitmentSecondUnitBox::before {
					top: 2vw;
					left: 3vw;
				}
				#applicationpointBody #recruitmentSecondUnitBox::after {
					bottom: -1vw;
					right: -3vw;
				}
				#applicationpointBody #recruitmentSecondUnitBox::before, 
				#messageBody #recruitmentSecondUnitBox::after {
					content: none;
					height: auto;
					max-height: none;
				}
			#messageBox, 
			#applicationpointBox {
				position: absolute;
				background-size: contain;
				background-repeat: no-repeat;
			}
			#messageBox {
				top: -8vw;
				left: 0;
				background-image: url(../img/recruitment/bg02.png);
				width: 62vw;
				max-width: 840px;
				height: 26vw;
				max-height: 360px;
			}
			#messageBox::after {
				top: 2vw;
				left: 23vw;
				width: 11.1vw;
				max-width: 150px;
				height: 21vw;
				max-height: 284px;
				background-image: url(../img/recruitment/parts_cool.png);
				animation: fuwafuwa 1s ease infinite;
				z-index: 70;
			}
				#messageBody #messageBox::after { left: auto; right: 10vw; }
			#messageBox .cartoonBox { height: 26vw; max-height: 360px; }
			#applicationpointBox {
				top: -16vw;
				right: 0;
				background-image: url(../img/recruitment/bg03.png);
				width: 41vw;
				max-width: 555px;
				height: 30.4vw;
				max-height: 412px;
			}
				#applicationpointBox::after {
					top: -1vw;
					left: 10vw;
					width: 12.4vw;
					max-width: 168px;
					height: 13.3vw;
					max-height: 180px;
					background-image: url(../img/recruitment/parts_exmark.png);
					animation: fuwafuwa 1s ease infinite;
					z-index: 70;
				}
					#applicationpointBody #applicationpointBox::after { left: 0; top: 5vw; }
				#applicationpointBody #applicationpointBox, 
				#messageBody #messageBox {
					position: relative;
					top: 0;
					margin: 0 auto 8rem auto;
				}
			#applicationpointBox .cartoonBox { height: 30.4vw; max-height: 412px; }
			#messageBox .textBox {
				left: 8vw;
				bottom: 5px;
				z-index: 50;
			}
			#applicationpointBox .textBox {
				left: 5.5vw;
				bottom: 60px;
				z-index: 50;
			}
		@media only screen and (min-width: 1005px) {
			#messageBox { top: -120px; }
			#applicationpointBox { top: -225px; }

			#messageBox .textBox, 
			#applicationpointBox .textBox {
			}
		}
	/* 3段目 */
		#applicationBox .cartoonBox {
			background-image: url(../img/recruitment/bg04.png);
			width: 75vw;
			max-width: 1005px;
			height: 24.7vw;
			max-height: 334px;
		}
		#applicationBox .textBox {
			left: 25vw;
			top: 9vw;
		}
			#applicationBox .cartoonBox::before {
				top: -5vw;
				right: -5vw;
				width: 36.1vw;
				max-width: 489px;
				height: 31.2vw;
				max-height: 422px;
				background-image: url(../img/recruitment/parts_toolman.png);
				animation: fuwafuwa 3s ease infinite;
			}
			#applicationBox .cartoonBox::after {
				top: 5vw;
				left: -2vw;
				width: 27.1vw;
				max-width: 367px;
				height: 22.3vw;
				max-height: 302px;
				background-image: url(../img/recruitment/parts_new.png);
				animation: fuwafuwa 2.5s ease infinite;
			}
		@media only screen and (min-width: 1005px) {
			#applicationBox .textBox {
				left: 350px;
				top: 120px;
			}
		}
		


/* news */

#newsBody .categoryUl > li:not(:last-child) {
	padding-bottom: 4rem;
	border-bottom: 1px dotted rgba(0, 0, 0, 0.5);
	margin-bottom: 4rem;
}
#newsBody .flexBox .newsdate { width: 7em; }
#newsBody .flexBox .newscategory { width: 6em; }
	#newsBody .flexBox .newscategory a { font-size: 1.2rem; }
#newsBody .flexBox .newstitle { flex: 1; padding-left: 1em; }

/* privacypolicy */

#privacypolicyBody .myOl { counter-reset: number 0; }
	#privacypolicyBody .myOl > li { list-style: none; margin-left: 3em; position: relative; }
		#privacypolicyBody .myOl > li::before {
			counter-increment: number 1;
			content: "第" counter(number) "条";
			position: absolute;
			left: -3em;
			top: 0;
			font-size: 1.6rem;
			font-weight: bold;
			line-height: 125%;
			font-family: 'Noto Sans JP', sans-serif;
		}
		#privacypolicyBody .myOl li h4 { margin-bottom: 1rem; }
	#privacypolicyBody .myUl { margin-bottom: 2em; }


/* contact */

.addressTD input, 
.addressTD select { margin-bottom: 0.5rem; }
#contactBody .rightImg {
	width: 25vw;
	max-width: 600px;
}


/* [sp] ============================================ */
@media only screen and (max-width: 780px) {
	.initWBox, 
	.initBox { width: 80vw; }
	.pcHide { display: block; }
	.spHide { display: none; }
	.pcBlock { display: inline; }
	.spBlock, 
	#drawerBox { display: block; }
	
	.fixImgM {
		width: 70%;
		margin: 0 auto;
	}

	.spLeftText { text-align: left !important; }
	.smallText { font-size: 1.4rem; }
	.leftBox, 
	.rightBox { float: none !important; width: 100% !important; }
	.myContentBox { margin: 0; }

	.flexBox > div, 
	.column2 > div, 
	.column3 > div, 
	.columnFlexBox .textBox, 
	.columnFlexBox .imgBox { width: 100%; margin-bottom: 1em; }

	.spTable tr, 
	.spTable th, 
	.spTable td {
		float: left;
		width: 100% !important;
		box-sizing: border-box;
	}
	.spTable thead { display: none; }
	.spTable td { padding: 0.25em 1em; }
	.spTable td:not(:last-child) { border-bottom-style: dotted; }
	.spTable tbody td::before { content: attr(data-name)' '; }

	.leftImg, 
	.rightImg {
		float: none;
		width: 100%;
		margin: 0 0 0.5em 0;
	}
		#technologyBody .leftImg, 
		#technologyBody .rightImg, 
		#voiceBody .leftImg, 
		#voiceBody .rightImg, 
		#messageBody .leftImg, 
		#messageBody .rightImg, 
		#greetingBody .rightImg { width: 100%; max-width: 650px; }

	.backBtn, 
	.submitBtn, 
	input, textarea, select, 
	.spTable { width: 100%; }
	input:not(:last-child), 
	select:not(:last-child) { margin-bottom: 0.5em; }
	input#zipcode1, input#zipcode2, 
	input[type=radio], 
	select[name=year], select[name=month], select[name=day] { width: auto; }
	.backBtn, 
	.submitBtn { margin-bottom: 0.5em; }
	.mwform-tel-field input { width: auto; }
	
	#footerBox #footerSubMenuBox li { width: 100%; margin-bottom: 0.5em; }

	.ggmap {
		padding-bottom: 56.25%;
	}

	.muuriGridItem { width: 48%; }
	.businessGrid .muuriGridItem::before, 
	.initWBox > .muuriGrid > .muuriGridItem {
		width: 35vw !important;
		height: 35vw !important;
	}


	#headerBox {
	/*	position: relative;*/
		height: auto;
		min-height: auto;
	}
		#headerBox:hover { box-shadow: none; }
	#headerBox .initBox { width: 90vw; }
	#headerBox .flexBox h1 { min-width: 40vw; }
	#headerBox h1 a {
		background-position: 0 50%;
		width: 100%;
	}

	#mainContentsBox { padding-top: 100px; }
	.pageBody #mainImageBox { height: 34vw; }
	.pageBody #mainImageBox::before, 
	.pageBody #mainImageBox::after { border-width: 17vw; }
	.pageBody #mainImageBox .copyBox { padding-top: calc( ( 34vw - 4.4rem ) / 2 ) }
		#homeBody #mainImageBox .copyBox h1 { font-size: 2.8rem; }
		#homeBody #mainImageBox .copyBox p { font-size: 1.4rem; }


	.worklocationBox {
		padding: 2rem 2rem calc( 45vw - 1.75rem ) 2rem;
		background-position: 0 100%;
	}
	#requirementsDetailBody .worklocationBox { padding-bottom: 60vw; }
	.englishTitle {
		display: block;
		line-height: 125%;
		margin-bottom: 0.5em;
	}
	#businessBody h2 .englishTitle::after { content: none; }

/* home */
	#homeBody #mainContentsBox::before, 
	#homeBody #mainContentsBox::after { content: none; }
	#homeBody #mainImageBox {
		height: auto;
		padding: 15vw 0;
	}
		#homeBody #mainImageBox .copyBox {
			width: 80vw;
			position: relative;
			top: 0;
			bottom: auto;
			left: 0;
		}
	#homeBody #mainImageBox .copyBox h1, 
/*	#homeBody h1 { font-size: 2.0rem; }*/
	#homeBusinessBox .grid { display: block; }
	#homeBusinessBox li a { line-height: 32vw; }
		#homeBody #homeNewsBox, 
		#homeBody #homeSpecialBox { padding-left: 0; }
		#homeBody #homeSpecialBox .flexBox p:nth-child(1), 
		#homeBody #homeSpecialBox .flexBox p:nth-child(2), 
		#homeBody #homeNewsBox h2, 
		#homeBody #homeNewsBox .flexBox > ul, 
		#homeBody #homeNewsBox li.flexBox span.newstitle { width: 100%; }
		#homeBody #homeNewsBox li.flexBox span.newstitle { flex: auto; padding: 0.5em 0 0 0; }
		#homeBody #homeRecruitBox a { padding: 2em 1rem 0 1rem; font-size: 2.4rem; }
		#homeBody #homeRecruitBox a .blueText { font-size: 2rem; }
		#homeBody #homeRecruitBox .dotContent::after { content: none; }
		#homeBody #homeRecruitBox .blueText::before {
			left: auto;
			right: -50px;
			bottom: -4.5vw;
			width: 139px;
			height: 102px;
		}

/* business */
	.resultBox { display: block; }
		.resultBox .resultTitleBox, 
		.resultBox .resultContentBox, 
		.resultBox .resultContentBox li { flex: auto; width: 100%; }

/* recruitment */
	#recruitmentBox #recruitmentHead .initBox h1 {
		font-size: 3rem;
		margin-bottom: 1rem;
	}
	#recruitmentBody #recruitmentBox .cartoonBox, 
	#recruitmentBody #recruitmentSecondUnitBox, 
	#recruitmentBody #recruitmentBox .textBox, 
	#recruitmentBody #messageBox, 
	#recruitmentBody #applicationpointBox, 
	#recruitmentBody #applicationBox {
		position: relative;
		top: auto;
		left: auto;
		bottom: auto;
		right: auto;
		height: auto;
		max-height: initial;
	}
	#recruitmentBody #recruitmentBox .textBox { color: rgba(97, 95, 95, 1); text-shadow: none; }
		#recruitmentBody #recruitmentBox .arrowBtn { color: rgba(0, 78, 162, 1); border-color: rgba(0, 78, 162, 1); }
			#recruitmentBody #recruitmentBox .arrowBtn::before {
				border-right-color: rgba(0, 78, 162, 1);
				border-bottom-color: rgba(0, 78, 162, 1);
			}
			#recruitmentBody #recruitmentBox .arrowBtn::after { background-image: url(../img/btn_arrow.png); }
	#recruitmentBody #recruitmentSecondUnitBox::after, 
	#voiceBox::after { content: none; }
	#recruitmentBody #recruitmentBox #voiceBox .textBox { padding: 51.9vw 0 2rem 0; }
	#recruitmentBody #voiceBox .cartoonBox::after { top: 8vw; bottom: auto; }
	#recruitmentBody #messageBox { width: 75vw; margin-left: 12.5vw; }
	#recruitmentBody #recruitmentBox #messageBox .textBox { padding: 35.5vw 0 2rem 0; }
	#recruitmentBody #recruitmentSecondUnitBox::before { top: 7vw; left: 19vw; }
	#recruitmentBody #messageBox::after { left: auto; right: 15vw; }
	#recruitmentBody #applicationpointBox { width: 55vw; margin-left: 12.5vw; }
	#recruitmentBody #recruitmentBox #applicationpointBox .textBox { padding: 43.7vw 0 2rem 0; }
	#recruitmentBody #recruitmentBox #applicationpointBox::before {
		content: '';
		position: absolute;
		background-size: contain;
		background-repeat: no-repeat;
		z-index: 50;
		background-image: url(../img/recruitment/parts_woman02.png);
		width: 28vw;
		max-width: 258px;
		height: 35.3vw;
		max-height: 325px;
		top: 7vw;
		left: 45vw;
	}
	#recruitmentBody #recruitmentBox #applicationpointBox::after { top: 15vw; }
	#recruitmentBody #recruitmentBox #applicationBox .textBox { padding: 27.7vw 0 2rem 0; }

	#newsBody .flexBox .newstitle { padding: 1em 0 0 0; flex: auto; width: 100%; }

	#contactBody .rightImg { float: right; margin: 0 0 1em 2em; width: 35vw; }
}