@charset "UTF-8";

/*==================================================================
	Contents setting COMPANY
===================================================================*/
#contents h2 {
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 0.15em;
	text-align: center;
	color: #66CCFF;
}
.sec01 {
	padding: 200px 0 150px;
	background-color: #003366;
}
.sec02 {
	padding: 120px 0;
}
.sec01_inner,
.sec02_inner {
	width: 1170px;
	margin: 0 auto;
	padding: 80px 15px 90px;
	background: #081D4C url(../imgs/company/office_back.jpg) left top repeat-y;
}
.greeting_headline {
	width: 950px;
	height: 308px;
	margin: 100px auto;
	background: url(../imgs/company/greeting_img01.png) center top no-repeat;
}
.greeting_headline p {
	display: inline-block;
	margin: 70px 0 0 115px;
	font-size: 30px;
	line-height: 2.1;
	text-align: right;
	color: #003366;
}
.greeting_speech {
	width: 950px;
	margin: 1.83em auto 0;
	font-size: 18px;
	line-height: 1.83;
	text-align: justify;
	color: #fff;
}
@media only screen and (max-width: 1200px) {
	.sec01,
	.sec02 {
		padding-left: 15px;
		padding-right: 15px;
	}
	.sec01_inner,
	.sec02_inner {
		width: 100%;
	}
}
@media only screen and (max-width: 1000px) {
	.greeting_headline {
		width: 100%;
	}
	.greeting_speech {
		width: 100%;
	}
}
@media only screen and (max-width: 767px) {
	.sec01 {
		padding: 100px 0 70px;
	}
	.greeting_headline {
		margin: 50px auto;
		background-size: cover;
		height: 220px;
	}
	.greeting_headline p {
		margin: 40px 0 0 5%;
		font-size: 24px;
	}
	.greeting_speech {
		font-size: 16px;
	}
}
@media only screen and (max-width: 500px) {
	.greeting_headline {
		height: 160px;
	}
	.greeting_headline p {
		margin: 20px 0 0 5%;
		font-size: 18px;
		line-height: 1.7;
	}
}

/* 会社概要・沿革 */
.profile_table,
.history_table {
	width: 770px;
	margin: 80px auto 0;
}
.history_table tr {
	border-bottom: #fff 1px solid;
}
.profile_table tr th,
.history_table tr th {
	width: 20%;
}
.profile_table tr td,
.history_table tr td {
	width: 80%;
}
.profile_table tr th,
.profile_table tr td,
.history_table tr th,
.history_table tr td {
	font-size: 18px;
	line-height: 1.8;
	color: #fff;
	text-align: left;
	font-weight: normal;
	vertical-align: top;
}
.profile_table tr th,
.profile_table tr td {
	padding-bottom: 2em;
}
.history_table tr th,
.history_table tr td {
	padding: 0.4em 0;
}
.profile_table .machinery_list {
	overflow: hidden;
}
.profile_table .machinery_list dt {
	float: left;
}
.profile_table .machinery_list dt,
.profile_table .machinery_list dt+dd {
	margin-top: 15px;
}
.profile_table .machinery_list dt:first-child,
.profile_table .machinery_list dt:first-child+dd {
	margin-top: 0;
}
.profile_table .machinery_list dd {
	margin-left: 6em;
}
.profile_table .clients_list li {
	display: inline-block;
	margin-right: 1.5em;
}
@media only screen and (max-width: 840px) {
	.profile_table,
	.history_table {
		width: 100%;
		margin: 40px auto 0;
	}
}
@media only screen and (max-width: 640px) {
	.profile_table tr th,
	.profile_table tr td,
	.history_table tr th,
	.history_table tr td {
		width: 100%;
		display: block;
		font-size: 16px;
	}
	.profile_table tr th {
		padding-bottom: 0em;
	}
	.profile_table tr td {
		padding: 0 0 1em 2em;
	}
	.history_table tr th {
		padding: 0.4em 0 0;
	}
	.history_table tr td {
		padding: 0 0 0.4em 3em;
	}
	.profile_table .machinery_list dt {
		float: none;
	}
	.profile_table .machinery_list dd {
		margin-left: 2em;
	}
	.profile_table .machinery_list dt+dd {
		margin-top: 0;
	}
}
/* 事務所一覧追加：2025-07-09～ */
.office_list_wrap {
	margin-top: 80px;
}
.office_list_wrap .office_list {
	margin: 40px auto 0;
	width: 770px;
	max-width: 100%;
	color: #fff;
}
.office_list_wrap .office_list .office_item {
	border-bottom: #fff 1px solid;
	padding: 1em 0;
}
.office_list_wrap .office_list .office_item h3 {
	font-size: 20px;
	font-weight: bold;
}
.office_list_wrap .office_list .office_item dl {
	margin-top: 0.5em;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	column-gap: 0.5em;
	row-gap: 0.25em;
	font-size: 18px;
}
.office_list_wrap .office_list .office_item dl dt {
	width: 6.5em;
}
.office_list_wrap .office_list .office_item dl dd {
	width: calc(100% - 7em);
}
.office_list_wrap .office_list .office_item dl .map-pin {
	margin: 0 0 0 5px;
	vertical-align: middle;
	transition: all 0.3s;
	width: 0.8em;
}
.office_list_wrap .office_list .office_item dl .map-pin:hover {
	transform: scale(1.5);
}
@media only screen and (max-width: 840px) {
}

@media only screen and (max-width: 640px) {
	.office_list_wrap .office_list {
		margin: 20px auto 0;
	}
	.office_list_wrap .office_list .office_item dl {
		flex-direction: column;
		font-size: 16px;
	}
	.office_list_wrap .office_list .office_item dl dt {
		width: 100%;
	}
	.office_list_wrap .office_list .office_item dl dd {
		width: 100%;
		padding-left: 3em;
	}
	.office_list_wrap .office_list .office_item dl dd + dt {
		margin-top: 0.5em;
	}
	
}
