@charset "utf-8";

#contents_outer {
    background: #fff!important;
}
/* outline
------------------------------*/
.parts01-l-page * {
	font-family: "Noto Sans JP", sans-serif;
	box-sizing: border-box;
	color: #333333;
}

.h1_section,
#path {
	display: none;
}

#contents {
	width: 100%;
	padding-bottom: 0;
	background-color: #fff;
}

.l-container {
	width: 950px;
	margin: 0 auto;
}

.l-container a {
	text-decoration: none;
}

.l-container a:hover {
	opacity: .8;
}
.parts01-l-page {
	padding-bottom: 0;
	background-color: #EBF4FF;
}
/*---------------------------------------------------------
main
---------------------------------------------------------*/
.parts01-l-page .l-container h2 {
	color: #333;
	font-size: 34px;
	font-weight: 700;
	text-align: center;
}
/*---------------------------------------------------------
mv
---------------------------------------------------------*/
.main_ttl{
	height: 500px;
}

.main_ttl img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/*---------------------------------------------------------
メイン画像下テキスト
---------------------------------------------------------*/

.txt__box{
	background: url(/images/company/message_bg.webp) no-repeat center / cover;
	width: 100%;
	padding-block: 90px;
}

.box__inner{
	width: 1140px;
	margin: 0 auto;
}

.representative__ttl{
	font-size: 34px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	margin-bottom: 30px;
}

[class*="main__txt--"]{
	font-size: 16px;
	font-weight: 500;
	text-align: center;
	line-height: 1.8;
}

[class*="main__txt--"]:not(:last-child){
	margin-bottom: 10px;
}

/*---------------------------------------------------------
info
---------------------------------------------------------*/
.info-parts {
	padding-block: 100px 95px;
}
h2.info_ttl {
	margin-bottom: 60px;
	color: #333;
}
.info-parts table {
	border-collapse: collapse;
	width: 100%;
}
.info_list {
	border-bottom: #DDDDDD solid 1px;
}
.info_list th {
	width: 200px;
	font-size: 16px;
	font-weight: 700;
	padding: 18px 0 16px;
	text-align: left;
	vertical-align: baseline;
}
.info_list td {
	font-size: 16px;
	padding: 15px 0 17px;
	line-height: 1.5;
}
.info_list td a {
	color: #00429B;
    font-size: 16px;
    line-height: 1.5;
	text-decoration: underline;
}

/*---------------------------------------------------------
profile
---------------------------------------------------------*/
.staff_parts {
	padding-block: 95px;
	background: #fff;
}
h2.staff_ttl {
	margin-bottom: 30px;
}
.staff_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
}
.staff_item {
	width: 310px;
	margin-bottom: 30px;
}
h3.staff_name {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 10px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}
.staff_post {
	font-size: 16px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}
.staff_img {
	margin-bottom: 10px;
}
.staff_img img {
	width: 310px;
	height: 233px;
	-o-object-fit: cover;
		object-fit: cover;
}

/*---------------------------------------------------------
desc
---------------------------------------------------------*/
.contents_parts {
	background-color: #F7F7F7;
	padding: 90px 0;
}
h2.contents_ttl {
	margin-bottom: 30px;
}
.contents_part:not(:last-child) {
	margin-bottom: 60px;
}
.contents_text {
	font-size: 16px;
	line-height: 1.6;
}

.contents_text:not(:last-child) {
	margin-bottom: 25px;
}
table {
	margin-bottom: 30px;
}
/*---------------------------------------------------------
gallery
---------------------------------------------------------*/
.gallery-parts {
	padding: 91px 0 90px;
	background-color: #F7F7F7;
}
h2.gallery_ttl {
	margin-bottom: 34px;
}
.gallery_wrap {
	display: flex;
	justify-content: center;
	gap: 25px;
	flex-wrap: wrap;
	margin-bottom: 30px;
}
.gallery_list {
	width: 300px;
	background: #ddd;
}
.gallery_list img {
	width: 300px;
	height: 233px;
	object-fit: contain;
}
