@charset "utf-8";
/* ------------------------------
 共通（PC）
------------------------------ */
.contents .inBlock h2 {
	text-align: center;
}
.contents .inBlock h2::after {
	margin-left: auto;
	margin-right: auto;
}

/* ------------------------------
 早わかり浜名部品工業（PC）
------------------------------ */
.infoBox {
	margin-bottom: 120px;
}
.infoBox li {
	color: #fff;
}
.infoBox li:nth-child(odd) {
	background-color: #005aab;
}
.infoBox li:nth-child(even) {
	background-color: #0b3b82;
}
.infoBox li h3 {
	width: 100%;
	margin-bottom: 35px;
	padding-bottom: 2px;
	border-bottom: 1px solid #8ba5b3;
	font-size: 2.2rem;
	line-height: 1.4;
	text-align: center;
}
/* 会社情報 */
.infoBox.aboutus li:not(:last-child) {
	margin-bottom: 20px;
}
.infoBox.aboutus li div {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 60px 40px 0
}
.infoBox.aboutus li div img {
	margin-bottom: 25px;
}
.infoBox.aboutus li div .btn  {
	margin-top: 20px;
}
/* 職場情報 */
.infoBox.office li {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 40px;
}
.infoBox.office li div {
	display: flex;
}
.infoBox.office li p {
	width: 100%;
}
/* 働き方のイメージ */
.infoBox.working li {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 40px;
}
.infoBox.working li div {
	display: flex;
}
.infoBox.working li p {
	width: 100%;
}
@media print, screen and (min-width: 768px) {
	/* 会社情報 */
	.infoBox.aboutus li {
		display: flex;
	}
	.infoBox.aboutus li:nth-child(even) {
		flex-direction: row-reverse;
	}
	.infoBox.aboutus li > img {
		width: 570px;
		height: auto;
	}
	/* 職場情報 */
	.infoBox.office {
		display: flex;
		flex-wrap: wrap;
		gap: 18px;
	}
	.infoBox.office li {
		width: 561px;
	}
	.infoBox.office li:first-child img {
		margin-top: 5px;
	}
	.infoBox.office li:nth-child(-n+2) img {
		margin-bottom: 25px;
	}
	.infoBox.office li div {
		height: 95px;
		margin-bottom: 25px;
	}
	.infoBox.office li:nth-child(3) div {
		column-gap: 76px;
		align-items: flex-start;
	}
	.infoBox.office li:nth-child(4) div {
		column-gap: 50px;
		align-items: flex-end;
	}
	.infoBox.office li:nth-child(4) div img + img {
		margin-bottom: 6px;
	}
	/* 働き方のイメージ */
	.infoBox.working {
		display: flex;
		flex-wrap: wrap;
		gap: 18px;
	}
	.infoBox.working li:nth-child(-n+3) {
		width: 368px;
	}
	.infoBox.working li:nth-child(n+4) {
		width: 561px;
	}
	.infoBox.working li:nth-child(-n+3) div {
		flex-direction: column;
		align-items: center;
		row-gap: 30px;
		height: 222px;
		margin-bottom: 25px;
	}
	.infoBox.working li:nth-child(n+4) div {
		align-items: flex-end;
		height: 94px;
		margin-bottom: 25px;
	}
	.infoBox.working li:nth-child(4) div {
		column-gap: 97px;
	}
	.infoBox.working li:nth-child(5) div {
		column-gap: 74px;
	}
	.infoBox.working li:first-child div img {
		margin-top: 3px;
	}
	.infoBox.working li:first-child div img + img {
		margin-top: 20px;
	}
	.infoBox.working li:nth-child(2) div img + img {
		margin-top: 4px;
	}
	.infoBox.working li:nth-child(3) div img {
		margin-top: 4px;
	}
	.infoBox.working li:nth-child(3) div img + img {
		margin-top: 0;
	}
	.infoBox.working li:nth-child(5) div img + img {
		margin-bottom: 4px;
	}
}
/* ------------------------------
 早わかり浜名部品工業（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	.infoBox {
		margin-bottom: 60px;
	}
	.infoBox li h3 {
		margin-bottom: 30px;
		padding-bottom: 3px;
		font-size: 1.8rem;
		line-height: 1.4;
	}
	.infoBox li h3 span {
		display: block;
	}
	/* 会社情報 */
	.infoBox.aboutus li div {
		padding: 36px 20px 40px;
	}
	.infoBox.aboutus li div img {
		margin-bottom: 23px;
	}
	.infoBox.aboutus li div .btn  {
		margin-top: 12px;
	}
	/* 職場情報 */
	.infoBox.office li {
		padding: 36px 20px 32px;
	}
	.infoBox.office li:not(:last-child) {
		margin-bottom: 20px;
	}
	.infoBox.office li:nth-child(-n+2) img {
		margin-bottom: 22px;
	}
	.infoBox.office li div {
		display: flex;
		flex-direction: column;
		align-items: center;
		row-gap: 30px;
		margin-bottom: 22px;
	}
	/* 働き方のイメージ */
	.infoBox.working li {
		padding: 36px 20px 32px;
	}
	.infoBox.working li:not(:last-child) {
		margin-bottom: 20px;
	}
	.infoBox.working li div {
		display: flex;
		flex-direction: column;
		align-items: center;
		row-gap: 30px;
		margin-bottom: 22px;
	}
}

/* ------------------------------
 HAMANAの技術力（PC）
------------------------------ */
/* イントロ */
.inBlock.techIntro {
	position: relative;
}
/* 主要技術 */
.technology {
	display: inline-block;
	height: 23px;
	padding: 0 12px 0 8px;
	background-color: #d7fa00;
	font-family: 'Poppins', sans-serif;
	font-size: 1.4rem;
	line-height: 23px;
	font-style: italic;
	font-weight: 600;
	text-align: center;
	vertical-align: top;
}
.techMain h3 {
	margin: -6px 0 33px;
	border-bottom: 1px solid #a2b7c2;
	color: #005aab;
	font-size: 3.2rem;
	line-height: 1.75;
}
.techMain h4 {
	margin-bottom: 5px;
	font-size: 2.2rem;
	line-height: 1.6;
}
@media print, screen and (min-width: 768px) {
	/* イントロ */
	.inBlock.techIntro {
		margin-bottom: 140px;
	}
	.techIntro > img {
		position: absolute;
		top: 115px;
		left: -207px;
	}
	.techIntro .w1-2 {
		position: relative;
		z-index: 1;
	}
}
/* ------------------------------
 HAMANAの技術力（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	/* イントロ */
	.inBlock.techIntro {
		margin-bottom: 0;
	}
	.techIntro + img {
		position: relative;
		z-index: -1;
		margin-top: -42px;
		margin-bottom: 60px;
	}
	/* 主要技術 */
	.technology {
		height: 20px;
		margin-bottom: 8px;
		padding: 0 9px 0 8px;
		font-size: 1.2rem;
		line-height: 20px;
	}
	.techMain h3 {
		margin: -3px 0 15px;
		font-size: 2.6rem;
		line-height: 1.75;
	}
	.techMain h4 {
		font-size: 1.8rem;
	}
}

/* ------------------------------
 ヒストリー（PC）
------------------------------ */
/* イントロ */
.dna {
	display: inline-block;
	height: 42px;
	padding: 0 23px 0 17px;
	background-color: #d7fa00;
	font-family: 'Poppins', sans-serif;
	font-size: 2.5rem;
	line-height: 42px;
	font-style: italic;
	font-weight: 700;
	text-align: center;
	vertical-align: top;
}
.contents .inBlock.historyIntro h2 {
	color: #005aab;
	font-size: 6.3rem;
	line-height: 1.2;
	font-weight: bold;
	text-align: left;
}
.contents .inBlock.historyIntro h2 span {
	font-size: 4.2rem;
}
.contents .inBlock.historyIntro h2::after {
	content: none;
}
/* ヒストリー */
.historyMain .inBlock {
	margin-bottom: 0;
}
.historyMain .inBlock h3 {
	position: relative;
	margin-top: -15px;
	color: #005aab;
	font-size: 4.2rem;
	line-height: 1;
	font-weight: bold;
}
.historyMain .inBlock h3 span:not(.line) {
	font-family: 'Poppins', sans-serif;
	font-size: 8.6rem;
	line-height: 1;
	font-weight: 600;
}
.historyMain .inBlock h3 span.line {
	display: inline-block;
	padding-left: 2em;
	font-family: "メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}
.historyMain .inBlock h3::after {
	content: "";
	position: absolute;
	display: block;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background-color: #d7fa00;
}
.historyMain .inBlock h4 {
	margin-top: -12px;
	margin-bottom: 5px;
	font-size: 2.2rem;
	line-height: 1.6;
}
.columnBox {
	margin-top: 50px;
	padding: 50px;
	background-color: #fff;
}
.column {
	display: inline-block;
	height: 23px;
	margin-bottom: 10px;
	padding: 0 15px 0 11px;
	background-color: #d7fa00;
	font-family: 'Poppins', sans-serif;
	font-size: 1.4rem;
	line-height: 23px;
	font-style: italic;
	font-weight: 600;
	text-align: center;
	vertical-align: top;
}
.historyMain .inBlock .columnBox h4 {
	margin-top: 0;
}
.epilogueBox {
	margin-top: -90px;
	padding: 50px;
	border: 15px solid #d7fa00;
	background-color: #fff;
}
.epilogueBox h4 {
	margin-bottom: 5px;
	font-size: 2.2rem;
	line-height: 1.6;
}
@media print, screen and (min-width: 768px) {
	/* ヒストリー */
	.historyMain .inBlock h3 {
		float: left;
		width: 343px;
	}
	.historyMain .inBlock h3::after {
		top: 13px;
		right: -7px;
	}
	.historyMain .inBlock > div {
		padding: 0 0 90px 50px;
		border-left: 2px solid #d7fa00;
		box-sizing: content-box;
	}
	.historyMain .inBlock:last-child > div {
		margin-bottom: 60px;
		padding-bottom: 0;
	}
}
/* ------------------------------
 ヒストリー（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	/* イントロ */
	.dna {
		height: 32px;
		padding: 0 16px 0 12px;
		font-size: 1.9rem;
		line-height: 32px;
	}
	.contents .inBlock.historyIntro h2 {
		font-size: 4.7rem;
	}
	.contents .inBlock.historyIntro h2 span {
		font-size: 3.2rem;
	}
	.contents .inBlock.historyIntro h2 span:last-of-type {
		display: block;
	}
	/* ヒストリー */
	.historyMain .inBlock {
		border-left: 2px solid #d7fa00;
		padding-bottom: 60px;
		padding-left: 20px;
	}
	.historyMain .inBlock:last-child {
		margin-bottom: 60px !important;
		padding-bottom: 0;
	}
	.historyMain .inBlock h3 {
		margin-top: 0;
		margin-bottom: 18px;
		font-size: 3.2rem;
	}
	.historyMain .inBlock h3 span:not(.line) {
		font-size: 6.4rem;
	}
	.historyMain .inBlock h3::after {
		z-index: 1;
		top: 26px;
		left: -27px;
	}
	.historyMain .inBlock:first-child h3::before {
		content: "";
		display: block;
		position: absolute;
		top:0;
		left: -27px;
		width: 12px;
		height: 28px;
		background-color: #c5d2d9;
	}
	.historyMain .inBlock h4 {
		margin-top: 0;
		font-size: 1.8rem;
	}
	.columnBox {
		margin-top: 20px;
		padding: 20px;
	}
	.column {
		height: 20px;
		margin-bottom: 8px;
		padding: 0 12px 0 10px;
		font-size: 1.2rem;
		line-height: 20px;
	}
	.epilogueBox {
		margin-top: -60px !important;
		padding: 20px;
		border: 10px solid #d7fa00;
	}
	.epilogueBox h4 {
		font-size: 1.8rem;
	}
}