@charset "utf-8";

@font-face {
	font-family: 'Shippori Mincho';
	src: url(/fonts/ShipporiMincho-Regular.ttf);
	font-weight: 400;
	font-display: swap;
}
@font-face {
	font-family: 'Zen Old Mincho';
	src: url(/fonts/ZenOldMincho-Medium.ttf);
	font-weight: 500;
	font-display: swap;
}
@font-face {
	font-family: 'Zen Old Mincho';
	src: url(/fonts/ZenOldMincho-SemiBold.ttf);
	font-weight: 600;
	font-display: swap;
}
@font-face {
	font-family: 'Noto Serif JP';
	src: url(/fonts/NotoSerifJP-Medium.woff2);
	font-weight: 500;
	font-display: swap;
}
@font-face {
	font-family: 'Noto Serif JP';
	src: url(/fonts/NotoSerifJP-SemiBold.woff2);
	font-weight: 600;
	font-display: swap;
}
#contents {
    width: 100%;
    padding: 0;
    overflow: hidden;
}
.l-main * {
	font-family: "Noto Serif JP";
    font-weight: 500;
    color: #262626;
}
.l-main {
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
	background: #fff;
}
.mv__img {
	width: 100%;
	height: 629px;
}
.mv__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.message__contents {
	padding-block: 0 80px;
}
.message__inner {
	width: 1140px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
.message__inner::before {
	content: "";
	position: absolute;
	background: url(/images/company/message__bg.webp) no-repeat center / cover;
	width: 453px;
	height: 403px;
	top: 38px;
	right: -43px;
	z-index: -1;
}
.contents__title--box {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-bottom: 51px;
	align-items: center;
}
.message__contents .contents__title--box {
	align-items: flex-start;
}
.contents--subtitle {
	color: #BEA954;
	font-family: "Zen Old Mincho";
	font-size: 16px;
	font-weight: 600;
	line-height: 100%;
	letter-spacing: 3.2px;
}
.contents--title {
	text-align: right;
	font-family: "Zen Old Mincho";
	font-size: 32px;
	line-height: 120%;
	letter-spacing: 3.2px;
}
.message__box {
	display: flex;
	flex-direction: column;
	gap: 30px;
	align-items: flex-end;
}
.message__text {
	font-size: 20px;
	line-height: 200%;
	letter-spacing: 2px;
	width: 1140px;
}
.message__name-box {
	display: flex;
	gap: 20px;
	align-items: center;
}
.message__company {
	color: #395645;
	font-family: "Shippori Mincho";
	font-size: 20px;
	font-weight: 400;
	line-height: 170%;
	padding-top: 6px;
}
.message__name {
	font-family: "Shippori Mincho";
	font-size: 20px;
	font-weight: 400;
	line-height: 170%;
}
.message__name span {
	color: #000;
	font-family: "Shippori Mincho";
	font-size: 29px;
	font-weight: 400;
	line-height: 170%;
	margin: 0 0 0 5px;
}

.effort__contents {
	padding-block: 78px 160px;
}
.effort__inner {
	width: 1140px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
.effort__inner::before {
	content: "";
	position: absolute;
	background: #F9F7EE;
	width: 1300px;
	height: 597px;
	top: -80px;
	right: 0;
	left: 50%;
	transform: translateX(-50%);
	margin: 0 auto;
}
.effort__inner::after {
	content: "";
	position: absolute;
	background: linear-gradient(92deg, #375D47 26.43%, #3F7355 101.33%);
	box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.06);
	width: 959px;
	height: 360px;
	left: -389px;
	top: 237px;
	z-index: -1;
}
.effort__contents .contents__title--box {
    margin-bottom: 50px;
    z-index: 2;
    position: relative;
}
.effort__box {
	display: flex;
	gap: 60px;
	align-items: center;
	z-index: 2;
	position: relative;
}
.effort__text-box {
	display: flex;
	flex-direction: column;
	gap: 16px;
	width: 660px;
}
.effort__text--top {
	font-size: 20px;
	font-weight: 600;
	line-height: 180%;
}
.effort__text--top span {
	color: #A3924E;
	font-size: 20px;
	font-weight: 600;
	line-height: 180%;
}
.effort__text--bottom {
	font-size: 16px;
	font-weight: 500;
	line-height: 200%;
	letter-spacing: 1.6px;
}

.overview__contents {
	padding-block: 80px;
}
.overview__inner {
	width: 1140px;
	margin: 0 auto;
}
.overview__box {
	display: flex;
	gap: 60px;
	margin-bottom: 50px;
}
.overview__contents .contents__title--box {
    margin-bottom: 48px;
}
.overview__img {
	width: 570px;
	height: 427px;
	overflow: hidden;
}
.overview__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.overview__list {
	width: 510px;
	display: flex;
	flex-direction: column;
	gap: 18px;
}
.overview__item {
	display: flex;
}
.overview__title {
	font-size: 16px;
	line-height: 157%;
	width: 160px;
	border-bottom: 1px solid #BEA954;
	padding: 0 0 18px 14px;
	flex-shrink: 0;
}
.overview__title-top {
	border-top: 1px solid #BEA954;
	padding: 18px 0 18px 14px;
}
.overview__text {
	font-size: 16px;
	line-height: 157%;
	width: 510px;
	border-bottom: 1px solid #EEE;
	padding: 0 0 18px 14px;
}
.overview__text-top {
	padding: 18px 0 18px 14px;
	border-top: 1px solid #EEE;
}
.overview__map-box {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.overview__map {
	width: 1140px;
	height: 400px;
	overflow: hidden;
}
.overview__map iframe {
	width: 100%;
	height: 100%;
}
.overview__bottom-box {
	display: flex;
	width: 1140px;
	align-items: center;
	justify-content: space-between;
}
.overview__bottom-text {
	color: #000;
	font-family: "Shippori Mincho";
	font-size: 18px;
	font-weight: 400;
	position: relative;
	margin-left: 21px;
}
.overview__bottom-text::before {
	content:"";
	position: absolute;
	background: url(/images/company/overview__point.svg) no-repeat center / cover;
	empty-cells: show;
	width: 15px;
	height: 21px;
	left: -21px;
	top: 3px;
}
.overview__map--link {
	width: 240px;
	height: 50px;
}
.overview__map--link a {
	width: 100%;
	height: 100%;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #A3924E;
	text-align: center;
	font-size: 16px;
	font-weight: 600;
	line-height: 160%;
	border: 1px solid #BEA954;
	background: #FFF;
}
.overview__map--link a::after {
	content: "";
	position: absolute;
	background: url(/images/company/overview__arrow.svg) no-repeat center / cover;
	right: 13px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 34px;
	height: 15px;
}
.overview__map--link a:hover {
	color: #FFF;
	background: #A3924E;
	opacity: 1;
}
.overview__map--link a:hover::after {
	background: url(/images/company/overview__on-arrow.svg) no-repeat center / cover;
}
