@charset "UTF-8";
/*=======================================================
共通
=======================================================*/
.ly_cont_inner {
	margin-bottom: 150px;
}
.el_lv2Header {
	margin-bottom: 60px;
}
@media screen and (max-width : 767px) {
	.el_lv2Header {
		margin-bottom: 32px;
	}	
}
/*=======================================================
会社概要
=======================================================*/
/*---------------------------------
ミッション・ビジョン
---------------------------------*/
#intro .bl_intro + .bl_intro {
	margin-top: 25px;
}
#intro .bl_intro_ttl {
	height: 50px;
	font-size: 18px;
	color: var(--blue);
	font-family: "Zen Old Mincho", serif;
	position: relative;
    display: flex;
    align-items: flex-end;
	margin-bottom: 10px;
}
#intro .bl_intro_ttl::before {
	content: "Mission";
	display: block; 
	position: absolute; 
	top: 0;
	left: 0;
	color: #E9F2F6;
	font-size: 50px;
	z-index: -1;
}
#intro .bl_intro + .bl_intro .bl_intro_ttl::before {
	content: "Vision";
}
#intro .el_intro_txt {
	font-size: 18px;
	font-family: "Zen Old Mincho", serif;
}
/*---------------------------------
代表挨拶
---------------------------------*/
#greeting .bl_greetingUnit {
	display: flex;
	gap: 100px; 
	justify-content: space-between;
	align-items: flex-start;
}
#greeting .bl_greeting_imgWrapper {
	width: 350px;
	flex-shrink: 0;
	box-shadow: 0 4px 10px rgba(0,0,0,.2);
}
#greeting .bl_greeting_body {
	margin-top: 7px;
}
#greeting .bl_greeting_txt {
	font-size: 18px;
	line-height: 2;
	margin-bottom: 50px;
}
#greeting .bl_greeting_sign {
	text-align: right;
}
#greeting .bl_greeting_sign span {
	display: block;
	margin-top: 10px;
}
#greeting .bl_greeting_sign span img {
	width: 147px;
}
@media screen and (max-width : 767px) {
	#greeting .bl_greetingUnit {
		flex-wrap: wrap;
		gap: 0;
	}
	#greeting .bl_greeting_imgWrapper {
		margin: auto auto 32px;
		width: 100%;
	}
	#greeting .bl_greeting_txt {
    	font-size: 16px;
   		margin-bottom: 32px;
	}
}
/*---------------------------------
沿革
---------------------------------*/
#history .bl_historyUnit {
	position: relative;
}
#history .bl_history {
	font-family: "Zen Old Mincho", serif;
	font-size: 20px;
	display: flex; 
	align-items: center; 
	padding: 39px 0;
	position: relative;
}
#history .bl_history:first-of-type {
	padding-top: 0;
}
#history .bl_history::after {
	content: "";
    width: 1px;
    background: #000;
	height: 100%;
    position: absolute;
    left: 99px;
	left: 190px;
}
#history .bl_history:first-of-type::after {
	top: 5px;
}
#history .bl_history + .bl_history {
	border-top: 1px solid #CDDADF;
}
#history .bl_history_year {
	margin-right: 40px;
	flex-shrink: 0;
	position: relative;
	width: 107px;
	width: 198px;
}
#history .bl_history_year::after {
	content: "";
	display: block; 
	width: 15px;
	height: 15px;
	background: var(--blue);
	border-radius: 50%;
	position: absolute; 
	top: 3px;
	right: 0;
	z-index: 2;
}
@media screen and (max-width : 767px) {
	#history .bl_history_year {
    	margin-right: 45px;
		margin-right: 19px;
    	font-size: 18px;
		width: 168px;
	}
	#history .bl_history_body {
		font-size: 18px;
		line-height: 1.8;
	}
	#history .bl_history:first-of-type::after {
		top: 15px;
	}
	#history .bl_history::after {
		left: 160px;
	}
}
@media screen and (max-width : 532px) {
	#history .bl_history:first-of-type::after {
		top: 28px;
		height: 77px;
	}
}
@media screen and (max-width : 388px) {
	#history .bl_history:first-of-type::after {
        top: 52px;
		height: 85px;
    }
}
@media screen and (max-width : 334px) {
	#history .bl_history:first-of-type::after {
        top: 65px;
        height: 105px;
    }
}
/*---------------------------------
企業情報
---------------------------------*/
#info .bl_horizTable table {
	border: 1px solid #000;
	border-bottom: 0;
	width: 100%;
}
#info .bl_horizTable tr {
	display: flex;
	border-bottom: 1px solid #000;
}
#info .bl_horizTable th {
	background: #CDDADF;
	width: 298px;
	border-right: 1px solid #000;
	font-family: "Zen Old Mincho", serif;
	font-size: 18px;
	font-weight: normal;
	flex-shrink: 0;
	padding: 12px;
	display: flex; 
	align-items: center;
}
#info .bl_horizTable td {
	font-size: 18px;
	padding: 12px 15px;
	line-height: 1.5;
}
/*---------------------------------
アクセス
---------------------------------*/
#access .el_access_info {
	font-size: 18px; 
	margin-bottom: 31px;
	line-height: 1.5;
	font-family: "Zen Old Mincho", serif;
	font-weight: 500;
}
#access .bl_map_wrapper iframe {
	width: 100%;
	height: 400px;
}
@media screen and (max-width : 767px) {
	#info .bl_horizTable tr {
		display: block;
	}
	#info .bl_horizTable th {
    	width: 100%;
    	border-right: 0;
		border-bottom: 1px solid #000;
    	font-size: 18px;
    	font-weight: 500;
    	padding: 12px 15px;
	}
	#info .bl_horizTable td {
    	font-size: 17px;
	}
	#access .bl_map_wrapper iframe {
    	height: 335px;
	}
}
/*=======================================================
プライバシーポリシー
=======================================================*/
#privacy-policy .el_lv1Header + p {
	margin-bottom: 32px;
}
.bl_privacyUnit {
	line-height: 1.6;
}
.bl_privacyUnit > li + li {
	margin-top: 30px;
}
.bl_privacy_ttl {
	margin-bottom: 20px;
}
.bl_privacy_txt {
	margin-bottom: 20px;
	margin-left: 2em;
}
.bl_privacy_sub {
	margin-left: 1em;
}
.bl_privacy_sub_ttl {
	margin-bottom: 10px;
}
.bl_privacy_sub_txt {
	margin-left: 3em;
	margin-bottom: 20px;
}
.bl_privacy_txt span,
.bl_privacy_sub_txt span {
	font-size: 14px; 
	display: block;
}
@media screen and (max-width : 767px) {
	#privacy-policy .el_lv1Header {
		font-size: 32px;
		margin-bottom: 32px;
	}
}