@charset "UTF-8";

/*========================================

  外国人材採用支援サービス

========================================*/
#com_hero h1 img {
	width: 580px;
}

#com_hero p {
	font-size: 16px;
	line-height: 1.8em;
	margin-top: 1.5em;
}

.readcopy {
	font-size: 15px;
}

@media screen and (max-width: 767px) {
	#com_hero h1 img {
		width: 85%;
	}

	#com_hero p {
		width: 90%;
		margin: 0 auto;
		font-size: 4vw;
		line-height: 1.8em;
		margin-top: 1em;
	}

	.readcopy {
		width: 90%;
		margin: 0 auto;
		font-size: 4vw;
		text-align: left;
		text-align: justify;
		text-justify: inter-ideograph;
	}
}



/*===== sec001 =====*/
#sec001 {
	padding-bottom: 80px;
}

@media screen and (max-width: 767px) {
	#sec001 {
		padding-bottom: 20vw;
	}
}


/*===== sec002 =====*/
#sec002 {
	padding-bottom: 80px;
}

#sec002 .box {
	margin-top: 50px;
}

#sec002 .box .txt {
	width: 580px;
	text-align: left;
}

#sec002 .box .txt h4 {
	font-size: 20px;
	letter-spacing: 2px;
}

#sec002 .box .txt h4::first-letter {
	color: #d40011;
}

#sec002 .box .txt h4:nth-child(n+2) {
	margin-top: 1em;
}

#sec002 .box .txt p {
	font-size: 14px;
	text-align: justify;
	text-justify: inter-ideograph;
	margin-top: .6em;
	line-height: 1.8em;
}

#sec002 .box .photo {
	width: 370px;
}

@media screen and (max-width: 767px) {
	#sec002 {
		padding-bottom: 20vw;
	}

	#sec002 .box {
		flex-direction: column-reverse;
		margin-top: 10vw;
	}

	#sec002 .box .txt {
		width: 100%;
	}

	#sec002 .box .txt h4 {
		font-size: 5vw;
		letter-spacing: 1px;
	}

	#sec002 .box .txt p {
		font-size: 4vw;
	}

	#sec002 .box .photo {
		width: 100%;
		margin-bottom: 5vw;
	}
}



/*===== sec003 =====*/
#sec003 {
	padding-bottom: 80px;
}

#sec003 .box .item {
	align-items: center;
	margin-top: 30px;
}

#sec003 .box .item .photo {
	width: 250px;
}

#sec003 .box .item .photo img {
	border-radius: 8px;
}

#sec003 .box .item .photo img.bb {
	border: 1px solid #bdbdbd;
}

#sec003 .box .item .txt {
	width: 710px;
	text-align: left;
}

#sec003 .box .item .txt h4 {
	font-size: 16px;
}

#sec003 .box .item .txt p {
	font-size: 14px;
	text-align: justify;
	text-justify: inter-ideograph;
	margin-top: .8em;
}

@media screen and (max-width: 767px) {
	#sec003 {
		padding-bottom: 20vw;
	}

	#sec003 .box .item {
		align-items: stretch;
		margin-top: 10vw;
	}

	#sec003 .box .item .photo {
		width: 100%;
	}

	#sec003 .box .item .txt {
		width: 100%;
	}

	#sec003 .box .item .txt h4 {
		font-size: 5vw;
		text-align: center;
		margin-top: .8em;
	}

	#sec003 .box .item .txt p {
		font-size: 4vw;
		margin-top: .5em;
	}
}


/*===== sec004 =====*/
#sec004 {
	padding-bottom: 80px;
}

#sec004 .box {
	flex-wrap: wrap;
}

#sec004 .box .item {
	width: 480px;
	text-align: left;
	border-radius: 8px;
	background-color: #fff;
	box-sizing: border-box;
	padding: 30px;
}

#sec004 .box .item:nth-child(n+3) {
	margin-top: 30px;
}

#sec004 .box .item h4 {
	font-size: 20px;
	letter-spacing: 2px;
}

#sec004 .box .item h4::first-letter {
	color: #d40011;
}

#sec004 .box .item p {
	font-size: 14px;
	text-align: justify;
	text-justify: inter-ideograph;
	margin-top: .8em;
}

@media screen and (max-width: 767px) {
	#sec004 {
		padding-bottom: 20vw;
	}

	#sec004 .box .item {
		width: 100%;
		padding: 5vw 8vw;
	}

	#sec004 .box .item:nth-child(n+2) {
		margin-top: 5vw;
	}

	#sec004 .box .item h4 {
		font-size: 5vw;
		letter-spacing: 1px;
	}

	#sec004 .box .item p {
		font-size: 4vw;
	}
}


/*===== sec005 =====*/
#sec005 {
	padding-bottom: 80px;
}

#sec005 .box {
	margin-top: 70px;
}

#sec005 .box .photo {
	width: 180px;
	height: 180px;
}

#sec005 .box .photo img {
	border-radius: 90px;
}

#sec005 .box .txt {
	width: 780px;
	text-align: left;
}

#sec005 .box .txt h4 {
	font-size: 24px;
	line-height: 1em;
}

#sec005 .box .txt h4 small {
	display: inline-block;
	font-size: 15px;
	margin-left: 1em;
}

#sec005 .box .txt h4::after {
	content: "";
	display: inline-block;
	width: 100%;
	height: 5px;
	background-image: url(../img/bg_stripe_red.png);
	background-size: contain;
	vertical-align: middle;
}

#sec005 .box .txt h5 {
	font-size: 16px;
	letter-spacing: 1px;
	border-left: 3px solid #d40011;
	padding-left: .8em;
	margin-top: 1.5em;
}

#sec005 .box .txt p {
	font-size: 15px;
	text-align: justify;
	text-justify: inter-ideograph;
	margin-top: .5em;
}

#sec005 .box .txt .morebtn {
	cursor: pointer;
	display: block;
	color: #06b;
	font-size: 15px;
	margin-top: 1em;
}

#sec005 .box .txt .morebtn span::after {
	content: "\f107";
	font-family: FontAwesome;
	margin-left: .5em;
}

#sec005 .box .txt .morebtn span::before {
	content: "さらに詳しく見る";
}

#sec005 .box .txt .morebtn.open span::before {
	content: "閉じる";
}

#sec005 .box .txt .morebtn.open span::after {
	content: "\f106";
}

#sec005 .box .txt .moretxt {
	display: none;
}



@media screen and (max-width: 767px) {
	#sec005 {
		padding-bottom: 20vw;
	}

	#sec005 .box {
		margin-top: 0;
	}

	#sec005 .box:nth-child(n+2) {
		margin-top: 15vw;
	}

	#sec005 .box .photo {
		width: 100%;
		height: 100%;
	}

	#sec005 .box .photo img {
		width: 50vw;
		border-radius: 25vw;
	}

	#sec005 .box .txt {
		width: 90%;
		margin: 0 auto;
		margin-top: 5vw;
	}

	#sec005 .box .txt h4 {
		font-size: 5vw;
	}

	#sec005 .box .txt h4 small {
		font-size: 4vw;
	}

	#sec005 .box .txt h5 {
		font-size: 4.5vw;
	}

	#sec005 .box .txt p {
		font-size: 3.8vw;
	}

	#sec005 .box .txt a {
		font-size: 3.8vw;
	}
}



/*===== sec006 =====*/
#sec006 {
	padding-bottom: 80px;
}

#sec006 .box {
	width: 1000px;
	margin: 0 auto;
	text-align: left;
	border-radius: 10px;
	background-color: #fff;
	margin-top: 50px;
}

#sec006 .box h4 {
	font-size: 20px;
	letter-spacing: 3px;
	border-bottom: 2px solid #e70011;
	padding: .8em 30px;
}

#sec006 .box .innr {
	padding: 30px 30px;
}

#sec006 .box .innr p {
	font-size: 14px;
	text-align: justify;
	text-justify: inter-ideograph;
}

#sec006 .box .innr .in_box {
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
}

#sec006 .box .innr .in_box .txt {
	width: 630px;
}

#sec006 .box .innr .in_box .txt h5 {
	font-size: 16px;
	letter-spacing: 1px;
	border-left: 3px solid #d40011;
	padding-left: .8em;
	margin-top: 1.5em;
}

#sec006 .box .innr .in_box .txt h5:first-child {
	margin-top: 0;
}

#sec006 .box .innr .in_box .txt .table {
	margin-top: 10px;
}

#sec006 .box .innr .in_box .txt .table table {
	font-size: 13px;
}

#sec006 .box .innr .in_box .txt .table table th {
	font-weight: normal;
	text-align: center;
	letter-spacing: 1px;
	background-color: #e3eeee;
	border-top: 2px solid #fff;
	border-bottom: 2px solid #fff;
	padding: .3em 0;
}

#sec006 .box .innr .in_box .txt .table table th.w01 {
	width: 150px;
}

#sec006 .box .innr .in_box .txt .table table th.w02 {
	width: 70px;
}

#sec006 .box .innr .in_box .txt .table table th.w03 {
	width: 100px;
}

#sec006 .box .innr .in_box .txt .table table th.w04 {
	width: 120px;
}

#sec006 .box .innr .in_box .txt .table table td {
	line-height: 1.8em;
	border-top: 2px solid #fff;
	border-bottom: 2px solid #fff;
	padding: .3em 0;
	padding-left: 1em;
}

#sec006 .box .innr .in_box .txt span {
	display: block;
	font-size: 12px;
	margin-top: .5em;
}

#sec006 .box .innr .in_box .photo {
	width: 300px;
}

.reception {
	margin-top: 30px;
}

.reception img {
	width: 400px;
}

address {
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 2px;
	font-style: normal;
	margin-top: 1em;
}

address .phone {
	font-size: 24px;
}

address img {
	margin-right: 5px;
	width: 50px;
}

@media screen and (max-width: 767px) {
	#sec006 {
		padding-bottom: 20vw;
	}

	#sec006 .box {
		width: 90%;
		margin-top: 10vw;
	}

	#sec006 .box h4 {
		font-size: 4.5vw;
		letter-spacing: 1px;
		padding: .8em 8vw;
	}

	#sec006 .box .innr {
		padding: 4vw 8vw;
	}

	#sec006 .box .innr p {
		font-size: 3.5vw;
	}

	#sec006 .box .innr .in_box {
		flex-direction: column-reverse;
		margin-top: 5vw;
	}

	#sec006 .box .innr .in_box .txt {
		width: 100%;
		margin-top: 8vw;
	}

	#sec006 .box .innr .in_box .txt h5 {
		font-size: 4.5vw;
	}

	#sec006 .box .innr .in_box .txt .table {
		margin-top: 3vw;
	}

	#sec006 .box .innr .in_box .txt .table table {
		font-size: 3.5vw;
	}

	#sec006 .box .innr .in_box .txt .table table th {
		font-weight: normal;
		text-align: left;
		padding: 5vw 2vw;
	}

	#sec006 .box .innr .in_box .txt .table table th.w01 {
		width: 30%;
	}

	#sec006 .box .innr .in_box .txt .table table th.w02 {
		width: 30%;
	}

	#sec006 .box .innr .in_box .txt .table table th.w03 {
		width: 30%;
	}

	#sec006 .box .innr .in_box .txt .table table th.w04 {
		width: 30%;
	}

	#sec006 .box .innr .in_box .txt .table table td {
		text-align: justify;
		text-justify: inter-ideograph;
	}

	#sec006 .box .innr .in_box .txt span {
		font-size: 3.5vw;
		line-height: 1.6em;
		text-align: justify;
		text-justify: inter-ideograph;
		padding-left: 1em;
		text-indent: -1em;
		margin-top: 1em;
	}

	#sec006 .box .innr .in_box .photo {
		width: 100%;
	}

	address {
		font-size: 5vw;
	}

	address .phone {
		font-size: 8vw;
	}

	address img {
		width: 15vw;
	}

	.reception {
		margin-top: 8vw;
	}

	.reception img {
		width: 80%;
	}
}