@charset "UTF-8";

/* ▼▼▼ 玉井グループについて
=====================================*/

.main_img *{
	text-align: center;
}
.main_img{
	margin: 0 0 70px;
}
.main_img .bg{
	padding: 50px 0 0;
	position: relative;
}
.main_img .bg::before{
	content: "";
	background: url(../img/about/main.jpg)no-repeat center/cover;
	width: 100vw;
	height: 604px;
	position: absolute;
	transform: translateX(-50%);
	top: 0;
	left: 50%;
	z-index: -1;
}

.main_img h2{
	margin: 0 0 30px;
	position: relative;
}
	.main_img h2::before,
	.main_img h2::after{
		content: "";
		position: absolute;
	}
	.main_img h2::before{
		background: url(../img/about/ill_01.png) no-repeat center/100%;
		width: 200px;
		height: 177px;
		top: -20px;
		left: 0;
	}
	.main_img h2::after{
		background: url(../img/about/ill_02.png) no-repeat center/100%;
		width: 206px;
		height: 206px;
		right: 0;
		bottom: -200px;
	}

	.main_img h2 + p{
		margin: 0 0 50px;
		line-height: 2;
		font-family: 'Noto Serif JP', serif;
		font-weight: 500;
	}

.photo_list{
	display: flex;
	justify-content: space-between;
}
	.photo_list li{
		width: 23%;
	}

.flex_box{
	display: flex;
	justify-content: center;
	margin: 0 0 60px;
	font-family: 'Noto Serif JP', serif;
}
	.flex_box .txt_area{
		margin-left: 30px;
	}
	.flex_box .txt_area h3{
		font-size: 32px;
		color: #17B5AF;
		letter-spacing: .7em;
		margin: 0 0 10px;
		font-weight: 500;
	}
	.flex_box .txt_area h3 + p{
		line-height: 2;
	}

.sec01 .txt_read{
	font-size: 30px;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
}
.sec01 .photo{
	text-align: center;
}

.factory_list{
	display: flex;
	justify-content: space-between;
	margin: 0 0 60px;
}
	.factory_list li{
		width: 24.5%;
		position: relative;
		padding-bottom: 20px;
		font-size: 15px;
	}
	.factory_list li:hover{
		opacity: .7;
	}
	.factory_list li a > span{
		display: table;
		border-radius: 25px;
		max-width: 225px;
		width: 100%;
		height: 45px;
		color: #fff;
		text-align: center;
		font-weight: bold;
		position: absolute;
		transform: translateX(-50%);
		left: 50%;
		bottom: 0;
	}
		.factory_list li span.icon_01{background: #EF9F20;}
		.factory_list li span.icon_02{background: #448E4D;}
		.factory_list li span.icon_03{background: #BE8643;}
		.factory_list li span.icon_04{background: #DB7437;}

	.factory_list li a > span::before,
		.factory_list li a > span::after{
			content: "";
			background: #fff;
			position: absolute;
			right: 13px;
		}
			.factory_list li a > span::before{
				width: 17px;
				height: 1px;
				top: 23px;
			}
			.factory_list li a > span::after{
				width: 8px;
				height: 1px;
				transform: rotate(45deg);
				top: 20px;
				right: 12px;
			}

	.factory_list li a > span span{
		display: table-cell;
		height: 100%;
		padding: 0 10px;
		vertical-align: middle;
		text-align: center;
		line-height: 1.2;
	}
	.factory_list li a small{
		display: block;
		font-size: 14px;
		text-align: center;
	}


/* ▼▼▼ 480px〜768px
=====================================*/
@media screen and (max-width: 768px) {

	.main_img{
		margin: 0 0 20px;
	}
	.main_img .bg{
		padding: 70px 0;
		position: relative;
	}
	.main_img *{
		text-align: center;
	}
	.main_img .bg::before{
		content: "";
		background: url(../img/about/main.jpg)no-repeat center/cover;
		width: 100vw;
		height: 100%;
		position: absolute;
		transform: translateX(-50%);
		top: 0;
		left: 50%;
		z-index: -1;
	}

	.main_img h2{
		margin: 0 -20px 30px;
	}
	.main_img h2 img{
		width: 260px;
		margin: 0 auto;
	}
		.main_img h2::before{
			width: 108px;
			height: 95px;
			top: -90px;
			left: 0;
		}
		.main_img h2::after{
			width: 100px;
			height: 100px;
			right:  0;
			bottom: -30px;
		}
		.main_img h2 + p{
			margin: 0 -10px 30px;
			font-size: 15px;
		}

	.photo_list{
		flex-wrap: wrap;
		width: 80%;
		margin: -80px auto 0;
	}
		.photo_list li{
			width: 47%;
			margin-top: 6%;
		}

	.flex_box{
		display: block;
		margin: 0 0 40px;
	}
		.flex_box p{
			text-align: center;
		}
		.flex_box .txt_area{
			margin-left: 0;
		}
		.flex_box .txt_area h3{
			letter-spacing: .5em;
			margin: 0 -1em 10px 0;
			text-align: center;
		}
		.flex_box .txt_area h3 + p{
			margin: 0 -10px;
		}

	.factory_list{
		display: flex;
		flex-wrap: wrap;
		margin: -15px 0 60px;
	}
		.factory_list li{
			width: 49.5%;
			margin-top: 15px;
			padding-bottom: 15px;
		}
		.factory_list li a > span{
			max-width: 148px;
			width: 90%;
			height: 30px;
			font-size: 10px;
		}
		.factory_list li a > span::before,
		.factory_list li a > span::after{
			display: none;
		}
		.factory_list li a > span span{
			display: table-cell;
			height: 100%;
			padding: 0 10px;
			vertical-align: middle;
			text-align: center;
			line-height: 1.2;
		}
		.factory_list li a small{
			display: block;
			font-size: 10px;
			text-align: center;
		}

}
