/* Greeting */
.greetingBox {
	margin: 24px 0 0;
	/*display: flex;*/
}
/*
.greetingBox .leftBox {
	width: 200px;
	text-align: center;
}
.greetingBox .leftBox img {
	width: 200px;
	margin: 0 0 8px;
	display: block;
}
.greetingBox .leftBox span {
	font-size: 1.1rem;
	margin: 0 0 4px;
	display: block;
}
.greetingBox .leftBox strong {
	font-size: 1.4rem;
}
.greetingBox .rightBox {
	padding: 0 0 0 48px;
}
.greetingBox .rightBox p {
	font-size: 1.4rem;
	line-height: 200%;
	margin: 24px 0 0;
}
.greetingBox .rightBox p:first-of-type {
	margin: 0;
}
*/
.greetingBox p {
	font-size: 1.4rem;
	line-height: 200%;
	margin: 24px 0 0;
}
.greetingBox p:first-of-type {
	margin: 0;
}
.greetingBox p:last-of-type {
	margin: 16px 0 0;
	text-align: right;
}
.greetingBox p:last-of-type span {
	font-size: 1.1rem;
	margin: 0 8px 0 0;
}

/* License List */
.licenseList {
	width: 100%;
	margin: 24px 0 0;
}
.licenseList p {
	font-size: 1.4rem;
	text-align: right;
}
.licenseList ul {
	list-style: none;
	margin: 4px 0 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.licenseList ul li {
	position: relative;
	width: calc(100% / 3);
	font-size: 1.4rem;
	line-height: 168%;
	padding: 0 0 8px 16px;
}
.licenseList ul li:last-of-type {
	padding: 0 0 0 16px;
}
.licenseList ul li:before {
	position: absolute;
	top: 8px;
	left: 0;
	width: 6px;
	height: 6px;
	border-top: solid 1px #2f40af;
	border-right: solid 1px #2f40af;
	display: inline-block;
	content: "";
	transform: rotate(45deg);
}

/* Specialty */
ul.certification li span {
	width: 80px;
	display: inline-block;
}
.specialistBoxes {
	margin: 24px 0 0;
	display: flex;
	flex-wrap: wrap;
}
.specialistBox {
	width: 50%;
	padding: 0 8px 16px;
}
.specialistBox:nth-of-type(3),
.specialistBox:last-of-type {
	padding: 0 8px 0;
}
.specialistBox .innerBox {
	height: 100%;
	border: solid 1px #2f40af;
	border-radius: 8px;
	padding: 16px 24px 24px;
}
.specialistBox .innerBox strong {
	font-size: 1.6rem;
	color: #2f40af;
	text-align: center;
	display: block;
}
.specialistBox .innerBox p {
	font-size: 1.4rem;
	line-height: 184%;
	margin: 8px 0 0;
}
.performanceBoxes {
		margin: 24px 0 0;
}
.performanceBox {
	border: solid 1px #afafaf;
	border-radius: 8px;
	margin: 16px 0 0;
	padding: 16px 24px 24px;
}
.associateBox .childBox ul.performanceList {
	margin: 8px 0 0;
	padding: 0 0 0 16px;
}
.associateBox .childBox ul.performanceList li {
	padding: 0 0 8px 16px;
	text-indent: -16px;
}
.associateBox .childBox ul.performanceList li:before {
	content: none;
}
.associateBox .childBox ul.performanceList li:last-of-type {
	padding: 0 0 0 16px;
}

/* Workstyle */
.workstyleBox {
	width: 56%;
	margin: 24px 0 0;
}
.workstyleBox table {
	width: 100%;
	border-collapse: collapse;
	border-top: dotted 1px #afafaf;
}
.workstyleBox tr {
	border-bottom: dotted 1px #afafaf;
}
.workstyleBox th,
.workstyleBox td {
	font-size: 1.4rem;
}
.workstyleBox th {
	position: relative;
	width: 168px;
	height: 48px;
	text-align: left;
	padding: 0 0 0 32px;
}
.workstyleBox th:before {
	position: absolute;
	top: 50%;
	left: 16px;
	width: 6px;
	height: 6px;
	border-top: solid 1px #2f40af;
	border-right: solid 1px #2f40af;
	display: inline-block;
	content: "";
	transform: translateY(-50%) rotate(45deg);
}
.workstyleBox td:last-of-type {
	width: 200px;
}
.workstyleBox p {
	font-size: 1.4rem;
}

/* Recruitment */
.internshipBox {
	width: 64%;
	margin: 24px auto 0;
}
.internshipBox table {
	width: 100%;
	border-top: dotted 1px #afafaf;
	border-collapse: collapse;
}
.internshipBox tr {
	border-bottom: dotted 1px #afafaf;
}
.internshipBox th,
.internshipBox td {
	font-size: 1.4rem;
}
.internshipBox th {
	position: relative;
	width: 200px;
	text-align: left;
	padding: 0 0 0 32px;
}
.internshipBox th:before {
	position: absolute;
	top: 50%;
	left: 16px;
	width: 6px;
	height: 6px;
	border-top: solid 1px #2f40af;
	border-right: solid 1px #2f40af;
	display: inline-block;
	content: "";
	transform: translateY(-50%) rotate(45deg);
}
.internshipBox td {
	height: 64px;
	line-height: 200%;
	padding: 16px 0;
}
.associateBox .childBox .internshipBox td p {
	margin: 16px 0 0;
}
.associateBox .childBox .internshipBox td p:first-of-type {
	margin: 0;
}

@media screen and (max-width: 520px) {
	/* Greeting */
	.greetingBox {
		margin: 16px 0 0;
		display: block;
	}
	/*
	.greetingBox .leftBox {
		width: 100%;
	}
	.greetingBox .leftBox img {
		width: 56%;
		margin: 0 auto 8px;
	}
	.greetingBox .rightBox {
		margin: 16px 0 0;
		padding: 0;
	}
	.greetingBox .rightBox p {
		line-height: 184%;
	}
	*/
	.greetingBox p {
		line-height: 184%;
	}
	.greetingBox p:last-of-type {
		margin: 8px 0 0;
	}
	
	/* License List */
	.licenseList {
		margin: 16px 0 0;
	}
	.licenseList ul {
		display: block;
		flex-wrap: nowrap;
	}
	.licenseList ul li {
		width: 100%;
		line-height: 160%;
	}
	
	/* Specialty */
	.specialistBoxes {
		margin: 16px 0 0;
		display: block;
		flex-wrap: nowrap;
	}
	.specialistBox {
		width: 100%;
		padding: 0 0 16px;
	}
	.specialistBox:nth-of-type(3) {
		padding: 0 0 16px;
	}
	.specialistBox:last-of-type {
		padding: 0;
	}
	.specialistBox .innerBox {
		padding: 16px;
	}
	.associateBox .childBox ul.performanceList {
		padding: 0;
	}
	.associateBox .childBox ul.performanceList li {
		line-height: 160%;
	}
	
	/* Workstyle */
	.workstyleBox {
		width: 100%;
		margin: 16px 0 0;
	}
	.workstyleBox th {
		width: 80px;
		padding: 0 0 0 16px;
	}
	.workstyleBox th:before {	
		left: 0;
	}
	.workstyleBox td {
		line-height: 160%;
		padding: 8px 0;
	}
	.workstyleBox td span {
		display: block;
	}
	.workstyleBox td:last-of-type {
		width: 72px;
	}
	
	/* Recruitment */
	.internshipBox {
		width: 100%;
	}
	.internshipBox tr {
		border: none;
	}
	.internshipBox th,
	.internshipBox td {
		display: block;
	}
	.internshipBox th {
		width: 100%;
		line-height: 200%;
		padding: 16px 0 0 16px;
	}
	.internshipBox th:before {
		top: auto;
		bottom: 8px;
		left: 0;
	}
	.internshipBox td {
		height: auto;
		line-height: 184%;
		border-bottom: dotted 1px #afafaf;
		padding: 8px 0 16px 16px;	
	}
	.internshipBox td span {
		display: block;
	}
}
