:root {
	--prof-color: #0b57a7
}
.p-prof {
	max-width: 100dvw;
	margin-right: calc(clamp(1.25rem, .833rem + 1.39vw, 1.875rem)*-1) !important;
	margin-left: calc(clamp(1.25rem, .833rem + 1.39vw, 1.875rem)*-1) !important;
	padding-right: clamp(1.25rem, .833rem + 1.39vw, 1.875rem);
	padding-left: clamp(1.25rem, .833rem + 1.39vw, 1.875rem);
	padding-top: clamp(3.75rem, 2.083rem + 5.56vw, 6.25rem);
	padding-bottom: clamp(3.75rem, 2.083rem + 5.56vw, 6.25rem);
	border-top: 1rem solid var(--prof-color);
	border-bottom: 1rem solid var(--prof-color)
}
@media screen and (max-width: 480px) {
	.p-prof {
		max-width: initial;
        padding: 60px 30px;
	}
}
.p-prof>* {
	max-width: 960px;
	margin-right: auto;
	margin-left: auto
}
.p-prof>* a {
	-webkit-transition: ease .3s;
	transition: ease .3s
}
.p-prof>* a:hover {
	opacity: .9
}
.p-prof h2{}
.p-prof_title {
	margin-top: 2em;
	font-size: clamp(1.5rem, .546rem + 4.07vw, 2.5rem);
    font-size: 2em;
	text-align: center;
	margin-bottom: 1em;
}
.p-prof_title:first-child {
	margin-top: 0
}
.p-prof_subtitle {
	margin-top: 1em;
	margin-bottom: 1em;
	padding-bottom: .5em;
	font-size: clamp(1.25rem, .534rem + 3.05vw, 2rem);
	text-align: left;
	border-bottom: 4px solid var(--prof-color)
}
.p-prof_map {
	margin-top: -40px;
	margin-bottom: 0
}
.p-prof_table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0
}
.p-prof_table>tbody {
	border-bottom: 1px solid #ddd
}
.p-prof_table>tbody>tr>td {
	display: list-item;
	list-style: none;
	border-top-width: 0px
}
.p-prof_table>tbody>tr th, .p-prof_table>tbody>tr td {
	display: list-item;
	list-style: none;
	padding: 1.5em 1em;
	line-height: 1.7;
	-webkit-font-feature-settings: "halt";
	font-feature-settings: "halt";
	border: 1px solid #ddd;
	border-width: 1px 0 0 0
}
.p-prof_table>tbody>tr th {
	width: 100%;
	text-align: center;
	background-color: #f7f7f7
}
.p-prof_table>tbody>tr td {
	overflow-wrap: break-word;
	text-align: justify
}
.p-prof_table>tbody>tr td:last-child {
	text-align: left;
}
.p-prof .head-office {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 0em
}
.p-prof .head-office dl, .p-prof .head-office dt, .p-prof .head-office dd {
	margin: 0;
	padding: 0
}
.p-prof .head-office dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 1em;
	width: 100%;
	margin-bottom: 2em
}
.p-prof .head-office dt {
	margin-bottom: 0;
	padding-bottom: .5em;
	font-weight: bold;
	font-size: clamp(1.125rem, 1.006rem + .51vw, 1.25rem);
	font-size: 1em;
	border-bottom: 2px solid #eee
}
.p-prof .head-office a.map {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 200px;
	padding: .75em 0;
	color: #fff;
	text-decoration: none;
	line-height: 1;
	font-size: 16px;
	font-weight: bold;
	background-color: var(--prof-color);
	border-radius: 100px
}
.p-prof .branch-office a.map {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 200px;
	padding: .75em 0;
	color: #333;
	text-decoration: none;
	line-height: 1;
	font-size: 16px;
	font-weight: bold;
	background-color: #eee;
	border-radius: 100px
}
@media screen and (min-width: 768px) {
	.p-prof_table {
		table-layout: auto
	}
	.p-prof_table tbody tr td, .p-prof_table tbody tr th {
		width: auto;
		display: table-cell;
		text-align: left;
		border-width: 1px 0
	}
	.p-prof_table tbody tr>th {
		width: 30%;
		text-align: center
	}
	.p-prof .head-office {
		gap: 2em
	}
	.p-prof .head-office dl {
		width: calc(50% - 1em)
	}
	.p-prof .branch-office a.map {
		width: 160px
	}
}
