@charset "UTF-8";
/* ========================================================================================================
	h1 背景画像
======================================================================================================== */
.el_headline_lv01 {background-image: url(../../img/company/img_main_company.jpg);}


/* ========================================================================================================
	企業情報
======================================================================================================== */
.company .bl_col02 li {
	width: calc(598 / 1200 * 100%);
	max-width: 598px;
	margin-bottom: 4px;
	line-height: 1;
}

.company .bl_col02 li:hover {
	opacity:0.7;
}

.company .bl_col02 li a:hover {
	text-decoration: none;
}

.ly_title_flame {
	display: block;
	width: 598px;
	display: flex;
	justify-content: space-between;
	padding: calc(112 / 598 * 100%) calc(40 / 598 * 100%) calc(32 / 598 * 100%);
}

.el_title_box span {
	font-family: Noto Sans CJK JP, sans-serif;
	font-weight: 500;
	display: block;
}

.title-text {
	color: #fff;
	font-size: 2.4rem;
	margin-bottom: 18px;
}

.sub-title-text {
	color: #DD594D;
	font-size: 1.6rem;
}

.btn_circle_right_arrow {
	width: calc(58 / 518 * 100%);
	max-width: 58px;
}

.company .bl_col02 li:nth-of-type(1) {background: url(../../img/company/img_company01_01.jpg) center center no-repeat;background-size:100% auto;}
.company .bl_col02 li:nth-of-type(2) {background: url(../../img/company/img_company02.jpg) center center no-repeat;background-size:100% auto;}
.company .bl_col02 li:nth-of-type(3) {background: url(../../img/company/img_company03.jpg) center center no-repeat;background-size:100% auto;}
.company .bl_col02 li:nth-of-type(4) {background: url(../../img/company/img_company04.jpg) center center no-repeat;background-size:100% auto;}
.company .bl_col02 li:nth-of-type(5) {background: url(../../img/company/img_company05.jpg) center center no-repeat;background-size:100% auto;}
.company .bl_col02 li:nth-of-type(6) {background: url(../../img/company/img_company06.jpg) center center no-repeat;background-size:100% auto;}

/* ========================================================================================================
	トップメッセージ
======================================================================================================== */
.ly_content_main_img {
	width: calc(850 / 1600 * 100%);
	max-width: 850px;
	margin: 0 auto;
}

.ly_content_main_img figure {
	margin: 0 auto calc(20 / 1200 * 100%);
}

/* 代表取締役の名前 */
.ceo_name {
	width: calc(700 / 1200 * 100%);
	max-width: 700px;
	margin: 0 auto calc(60 / 1200 * 100%);
	display: flex;
	justify-content: space-around;
}

.ceo_name li {
	font-size: 2.8rem;
}

.ceo_name span {
	display: block;
	font-size: 2rem;
	padding-bottom: 0.5rem;
}

.ly_message_contents {
	width: calc(850 / 1200 * 100%);
	max-width: 850px;
	margin: 0 auto;
	font-size: 1.6rem;
	line-height: 2.4;;
}

/* ========================================================================================================
	拠点・グループ会社
======================================================================================================== */
.bl_locations-data dt {
	font-size: 1.8rem;
	font-family: "Noto Sans CJK JP", sans-serif;
	font-weight: 500;
	position:relative;
	margin-bottom: 14px;
	padding-bottom: 14px;
}

.bl_locations-data dt::after {
	position: absolute;
    left: 0;
    bottom: 0;
    content: "";
    vertical-align: middle;
    width: 25px;
    height: 1px;
    border-top: 1px solid #DD594D;
}

.bl_locations-data .el_after-none::after {
	display: none;
}

.bl_locations-data li {	display: flex;}
.locations-data-title {
	width: calc(160 / 960 * 100%);
	min-width: 160px;
}

/* 2カラム用
-------------------------------------------------------------------------------------------------------- */
.locations .ly_content_area > .bl_col02 {width: 100%;}
.locations > .ly_content_area > .bl_col02:nth-last-of-type(1),
.locations > .ly_content_area > .bl_col02:nth-last-of-type(1) > .bl_col02:nth-last-of-type(1) {
	margin-bottom: 0;
}
.locations .bl_col02 {
	margin-bottom: 0;
}
.locations .bl_col02.el_col02-bottom {
	margin-bottom: 50px;
}
.locations .bl_col02 > .bl_col02 {
	width: 50%;
	margin-bottom: calc(50 / 1200 * 100%);
}

.locations .bl_col02 figure {
	width: calc(210 / 600 * 100%);
	margin-right: calc(30 / 600 * 100%);
}
.bl_locations-data {width: calc(360 / 600 * 100%);}
.one-third-width {width: calc(320 / 1200 * 100%);}

/* 1カラム用
-------------------------------------------------------------------------------------------------------- */
/*.locations .subsidiary {display:block;}*/
.locations .subsidiary > .bl_col02 {
	width: 100%;
	margin-bottom: calc(50 / 1200 * 100%);
	justify-content: flex-start;
}
.subsidiary .bl_col02 figure {
	width: calc(210 / 1200 * 100%);
	margin-right: calc(30 / 1200 * 100%);
}
.subsidiary .bl_locations-data {width: calc(960 / 1200 * 100%);}
.subsidiary .el_left-space {margin-left: calc(240 / 1200 * 100%);}
.subsidiary .one-third-width {width: calc(320 / 1200 * 100%);}

.photo_2sheets span:nth-of-type(1) {
	display: block;
	margin-bottom: 2rem;
}

/* MAPボタン*/
.el_btn_oblong {
	margin-top: 10px;
	padding: 0.5rem 2.5rem;
	border-radius: 20px;
	line-height: 1;
	display: inline;
}

.el_btn_oblong:hover {
	text-decoration: none;
	opacity: 0.7;
}

/* ========================================================================================================
	役員一覧
======================================================================================================== */
/* 2カラム用 */
.officer .bl_contents {margin-bottom: 60px;}
.officer .bl_col02 {justify-content: center;}
.officer .bl_col02 li {margin: 0 0 calc(40 / 1200 * 100%) calc(80 / 1200 * 100%);}

/* 3カラム用 */
.officer .bl_col03 {justify-content: space-between;}
.officer .bl_col03 li {	margin: 0 calc(40 / 1200 * 100%) calc(40 / 1200 * 100%);}
.officer .bl_col03 li:nth-of-type(4),
.officer .bl_col03 li:nth-of-type(5),
.officer .bl_col03 li:nth-of-type(6),
.officer .bl_col03 li:nth-of-type(7) {	margin: 0 calc(20 / 1200 * 100%) calc(40 / 1200 * 100%);}
.officer .bl_col02 li:nth-of-type(1) {margin: 0 calc(80 / 1200 * 100%) 0 0;}

/* 1人1人の横幅 */
.officer .board_member_data {width: calc(260 / 1200 * 100%);}

/* 文字周り */
.board_member_data p {
    text-align: center;
    line-height: 1.8;
    margin-top: 1rem;
	margin-bottom: 0;
}

.board_member_data span {
    display: block;
    font-size: 2rem;
}

.officer .bl_table-list + .bl_table-list {
	border-top: none;
}

.officer .bl_table-list dt {
	width: calc(362 / 1200 * 100%);
	display: flex;
}

.officer .bl_table-list dt span:nth-of-type(1) {
	margin-right: 28px;
	width: 30%;
}

.officer .bl_table-list dd {
	width: calc(838 / 1200 * 100%);
}



/* ========================================================================================================
	沿革
======================================================================================================== */
.history .bl_table-list dt {
	width: calc(362 / 1200 * 100%);
	display: flex;
}

.history .bl_table-list dt span:nth-of-type(1) {
	width: 26%;
	margin-right: 28px;
}

.history .bl_table-list dd {
	width: calc(838 / 1200 * 100%);
}

/* ========================================================================================================
	会社概要
======================================================================================================== */
.profile .el_caption-text {
	margin-bottom: 0;
}

.profile .bl_table-list video {
	height: 315px;
	margin-bottom: 2rem;
	object-fit:cover;
}

.profile .bl_table-list {width: calc(900 / 1200 * 100%);}
.profile .bl_table-list dt {
	width: calc(254 / 900 * 100%);
}
.profile .bl_table-list dd {
	width: calc(646 / 900 * 100%);
}

/* ========================================================================================================
	経営理念
======================================================================================================== */
.philosophy .bl_contents header {margin-bottom: 0;}

.philosophy_content {
	width: 840px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.philosophy_content dl {
	width: 240px;
	background-color:rgba(221,89,77,0.1);
	text-align: center;
	border-radius: 120px;
    padding: 32px 20px 48px;
}

.philosophy_content dt {
	font-size: 2.6rem;
	color:#cf0000;
	margin-bottom : 14px;
}

.norms_content {
	margin-bottom: calc(30 / 1200 * 100%);
}

.norms_content dl {
	width: 100%;
	margin: 0 auto;
}

.norms_content dt {
	font-size: 2rem;
	font-weight: 500;
	margin-bottom:calc(10 / 1200 * 100%);
}

/* 新体制の経営理念 */
.el_pc-display {display: block;}
.el_sp-display {display: none;}


.ly_wrap .ly_wrap-inner .bl_area-section {
    margin: 8.4745762712% auto 0;
}

.el_type-gray-center {
    background: #E7E7E8;
    text-align: center;
}

.el_type-gray-center .el_headline-text {
    display: inline-block;
    font-size: 2.5rem;
    font-weight: 500;
    padding: 1.8644067797% 0;
}

.bl_area-section {
    margin: 8.4745762712% auto 0;
}

.bl_area-section .el_width-780 {
    width: 66.1016949153%;
    max-width: 780px;
}

.bl_area-section .el_width-100 {
    width: 100%;
}

.bl_area-section .el_mt-60 {
    margin: 5.0847457627% auto 0;
}

.el_motto-text {
    width: 100%;
    text-align: center;
    font-size: 4rem;
    font-weight: 500;
}

.el_mission-img {
    width: 81.6949152542%;
    max-width: 964px;
    margin: 5.9322033898% auto 0;
}

.bl_philosophy {
    width: 100%;
    border-top: 1px solid #707070;
    display: flex;
    justify-content: space-between;
    padding: 4.4915254237% 0;
}

.bl_philosophy:nth-of-type(1) {align-items: center;}
.bl_philosophy:nth-of-type(1) .el_philosophy-content {align-items: center;}

.bl_philosophy .el_philosophy-title .el_philosophy-title-text {
    display: block;
    width: 194px;
    border: 1px solid #707070;
    text-align: center;
    font-size: 2.5rem;
    font-weight: 700;
    padding: 7.2164948454% 0;
}

.bl_philosophy .el_philosophy-title .el_philosophy-title-text::first-letter {
    color: #dd594d;
}

.bl_philosophy .el_philosophy-content {
    width: 77.6271186441%;
    display: flex;
    justify-content: space-between;
    line-height: 1.7;
}

.bl_philosophy .el_philosophy-content .el_philosophy-copy {
    width: 40%;
    font-size: 1.8rem;
    font-weight: 700;
}

.bl_philosophy .el_philosophy-content .el_philosophy-text {
    width: 58%;
    font-size: 1.5rem;
    font-weight: 400;
}

.el_value-copy {
    padding-left: 3.5rem;
}

.el_philosophy-copy dl + dl {
    margin-top: calc(10 / 380 * 100%);
}

.el_value-copy .el_value-list {
    font-weight: normal;
}

.bl_philosophy .el_philosophy-content ol.el_philosophy-copy {
    padding-left: 2rem;
}

.bl_philosophy .el_philosophy-content ol.el_philosophy-copy li {
    list-style-type: decimal;
}

.bl_philosophy .el_philosophy-content ol.el_philosophy-copy li:not(:nth-of-type(1)) {
    margin-top: calc(20 / 380 * 100%);
}


/* ========================================================================================================
	SP用CSS
	------------------------------------------------------------------------------------------------------
	@media all and (max-width: 750px)
======================================================================================================== */
@media all and (max-width: 750px) {
/* ========================================================================================================
	企業情報
======================================================================================================== */
.company .bl_col02 li {
		width: 100%;
		max-width: 100%;
		margin-bottom: 1px;
	}

	.ly_title_flame {
		width: 100%;
		display: flex;
		justify-content: space-between;
		padding: calc(112 / 690 * 100%) calc(40 / 690 * 100%) calc(32 / 690 * 100%);
	}

	.title-text {
		font-size: 1.5rem;
		margin-bottom: 10px;
	}

	.sub-title-text {
		font-size: 1rem;
	}

	.btn_circle_right_arrow {
		width: calc(116 / 750 * 100%);
		max-width: 100%;
	}

/* ========================================================================================================
	トップメッセージ
======================================================================================================== */
	.ly_content_main_img {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
	}

	/* 代表取締役の名前 */
	.ceo_name {
		width: calc(600 / 750 * 100%);
		max-width: 100%;
		margin: 0 auto calc(60 / 750 * 100%);
		display: flex;
		justify-content: space-around;
	}

	.ceo_name li {
		width: calc(240 / 600 * 100%);
	}

	.ceo_name span {
		display: block;
		font-size: 1rem;
	}

	.ly_message_contents {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		font-size: 1.4rem;
		line-height: 2;
	}

/* ========================================================================================================
	拠点・グループ会社
======================================================================================================== */
	.locations .bl_contents header {
		margin-bottom: calc(54 / 690 * 100%);
		text-align: center;
	}

	.bl_locations-data dt {
		font-size: 1.8rem;
		font-family: "Noto Sans CJK JP", sans-serif;
		font-weight: 400;
		position:relative;
		margin-bottom: 20px;
		padding-bottom: 15px;
	}

	.bl_locations-data dt::after {
		position: absolute;
		left: 0;
		bottom: 0;
		content: "";
		vertical-align: middle;
		width: 25px;
		height: 1px;
		border-top: 1px solid #DD594D;
	}

	.bl_locations-data li {
		padding-top: 0;
		display: block;
	}

	.bl_locations-data li:nth-of-type(1) {
		padding-top: 0;
	}

	.locations-data-title {
		display: block;
		width: 100%;
		color: #DD594D;
		font-size: 1.3rem;
	}

	.locations-data-text {
		display: block;
		width: 100%;
		border-bottom: 1px solid #CDCDCD;
		padding-bottom: calc(8 / 690 * 100%);
		margin-bottom: calc(30 / 690 * 100%);
	}

/* 2カラム用
-------------------------------------------------------------------------------------------------------- */
	.locations .ly_content_area > .bl_col02 {width: 100%;}
	.locations .bl_col02 > .bl_col02 {
		width: 100%;
		margin-bottom: calc(55 / 690 * 100%);
	}

	.locations .bl_col02 figure {
		width: 100%;
		margin: 0 0 calc(48 / 690 * 100%);
	}

	.bl_locations-data {
		width: 100%;
		margin-bottom: calc(55 / 690 * 100%);
	}

	.one-third-width {width: 100%}

/* 1カラム用
-------------------------------------------------------------------------------------------------------- */
	.locations .subsidiary {display:block;}
	.locations .subsidiary > .bl_col02 {
		width: 100%;
		margin-bottom: 0;
	}
	.subsidiary .bl_col02 figure {
		width: 100%;
		margin-right: 0;
	}
	.subsidiary .bl_locations-data {width: 100%;}
	.subsidiary .el_left-space {margin-left: 0;}
	.subsidiary .one-third-width {width: 100%;}

	/* MAPボタン*/
	.el_btn_oblong {
		margin-top: calc(30 / 690 * 100%);
		padding: 0.5rem 2.5rem;
		border-radius: 20px;
		line-height: 1;
		display: inline-block;
	}

	.photo_2sheets {
		display:flex;
		justify-content: space-between;
	}

	.photo_2sheets span {
		width: 49%;
	}

	.photo_2sheets span:nth-of-type(1) {
		margin-bottom: 0;
	}

	.locations .bl_col02 {
		margin-bottom: calc(80 / 690 * 100%);
	}

	.bl_list-line .el_line {
		border-top: 1px solid #CDCDCD;
		padding: 1rem 0;
	}

/* ========================================================================================================
	役員一覧
======================================================================================================== */
	.officer .bl_contents {margin-bottom: calc(80 / 690 * 100%);}
	.officer .bl_contents header {margin-bottom: calc(54 / 690 * 100%);}
/* 共通 */
	.officer .bl_col02 {display: block;}
	.officer .el_headline_lv02_ver02 {text-align: center;}

/* 2カラム用 */
	.officer .bl_col02 li,
	.officer .bl_col02 li:nth-of-type(1) {
		width: 60%;
		margin: 0 auto calc(40 / 750 * 100%);
	}

/* 1人1人の横幅 */
	.officer .bl_col03 {
		display: flex;
		justify-content: space-between;
	}

	.officer .bl_col03 li {
		width: 48%;
		margin: 0 0 calc(40 / 750 * 100%);
	}

	.officer .bl_table-list {width: 100%;}
	.officer .bl_table-list dt {width: 100%;}
	.officer .bl_table-list dd {width: 100%;}

	.officer .bl_table-list dt:nth-of-type(1) {padding-top: 0;}
	.officer .bl_table-list dd:nth-of-type(1) {padding-top: 0;}

	/* 文字周り */
	.board_member_data p {line-height: 1.4;}
	.board_member_data span {font-size: 1.6rem;}

/* ========================================================================================================
	沿革
======================================================================================================== */
	.history .bl_table-list {width: 100%;}
	.history .bl_table-list dt {width: 100%;}
	.history .bl_table-list dt:nth-of-type(1) {padding-top: 0;}
	.history .bl_table-list dd {width: 100%;}

.history .bl_table-list dt span:nth-of-type(1) {
	width: 30%;
	margin-right: 10px;
}


/* ========================================================================================================
	会社概要
======================================================================================================== */
	.profile .bl_table-list video {height: auto;}
	.profile .bl_table-list {width: 100%;}
	.profile .bl_table-list dt {width: 100%;}
	.profile .bl_table-list dd {width: 100%;}

/* ========================================================================================================
	経営理念
======================================================================================================== */
.philosophy_content {
	width: 100%;
	margin: 0 auto;
	display: block;
}

.philosophy_content dl {
	width: 100%;
	background:none;
	display: block;
	text-align: left;
	overflow: hidden;
    padding: 0;
	border-radius: 0;
	margin-bottom: calc(30 / 690 * 100%);
}

.philosophy_content dt {
	float: left;
	font-size: 1.8rem;
	width: calc(120 / 690 * 100%);
	min-width: 60px;
	color:#cf0000;
	background-color:rgba(221,89,77,0.1);
	text-align: center;
	border-radius: 120px;
    padding: calc(28 / 690 * 100%) 0;
	margin: 0 0 0;
}

.philosophy_content dd {
	width: calc(540 / 690 * 100%);
	margin-top: 2px;
	float: right;
}

.norms_content {margin-bottom: calc(44 / 690 * 100%);}
.norms_content dt {font-size: 1.6rem;}
.el_headline_lv03 {margin-bottom: calc(0 / 690 * 100%);}

/* 新体制の経営理念 */
.el_pc-display {display: none;}
.el_sp-display {display: block;}

.bl_area-section .el_width-780 {width: 100%;}
.bl_area-section .el_mt-60 {margin: 8.6956521739% auto 0;}
.bl_philosophy {
	display: block;
	padding-top: calc(138 / 690 * 100%);
	border-top: none;
}
.bl_philosophy .el_philosophy-title .el_philosophy-title-text {
    width: 100%;
    line-height: 1;
    padding: 1.4492753623% 0;
}

.bl_philosophy .el_philosophy-content {
    display: block;
    width: 100%;
    margin-top: 5.7971014493%;
}

.bl_philosophy .el_philosophy-content .el_philosophy-copy {
    width: 90%;
    margin: 0 auto 0;
    display: block;
    text-align: center;
}

.bl_philosophy .el_philosophy-content .el_philosophy-text {
    width: 100%;
    display: block;
    margin-top: 5.7971014493%;
}

.el_mission-img {
    width: 86.9565217391%;
    max-width: 600px;
    margin: 10.1449275362% auto 0;
}

.el_philosophy-copy dl,
.el_philosophy-copy .el_el_copy-list {text-align: left;}

}

