/*メイン画像
------------------------------*/
.main {margin-bottom: 15px;}

/*新着情報
------------------------------*/
.news {max-width: 1140px; display: flex; gap: 15px;margin: -20px auto 50px; padding: 0 20px;}
.news_content {flex-basis: 50%; padding-top: 35px;}
.news_bn {flex-basis: 50%;}

.news_list li {border-bottom: 1px solid #bbb;}
.news_list li a:hover {color: var(--color-blue)}
.news_box {display: block; padding: 15px 10px 15px 100px; line-height: 1.3;}
.news_box span {display: inline-block; width: 100px; margin-left: -100px; color: #777;}

@media (max-width: 550px) {
	.news_box {padding: 15px 0;}
	.news_box span {display: block; width: 100%; margin: 0 0 4px 0;}
}

.bn {display: flex; gap: 10px;}
.bn_link {flex-basis: 50%;}
.bn_img {overflow: hidden;}
.bn_img img {transition: 0.3s;}
.bn_link:hover .bn_img img {transform: scale(1.1)}

.bn_bar {overflow: hidden; color: #fff; padding: 8px 10px; font-size: 1.4rem;}
.recruit_bar {background: var(--color-blue-light);}
.recruit_bar_left {float: left;}
.recruit_bar_right {float: right;}
.sdgs_bar {background: var(--color-green); text-align: center;}

@media (max-width: 900px) {
	.news {flex-wrap: wrap;}
	.news_content {flex-basis: 100%; padding: 35px 0 20px;}
	.news_bn {flex-basis: 100%; max-width: 600px;}

	.bn_bar {font-size: 1.2rem;}
}

/*事業内容
------------------------------*/
.title_business {padding: 10px 20px;}
.title_business h2 {color: #fff; max-width: 300px; margin: 0 auto; font-size: 1.8rem; text-align: center;}
.title_business h2 span {display: block; border-top: 1px solid #fff; font-size: 1.4rem; padding-top: 5px; margin-top: 7px; font-weight: 400;}

.business {max-width: 1140px; padding: 30px 20px 50px;}
.business_list {display: flex; gap: 15px; flex-wrap: wrap;}
.business_list li {flex-basis: calc(50% - 7.5px); padding-bottom: 40px;}

.bizbox {display: flex; gap: 15px;}
.bizbox_img {flex-basis: 50%;}
.bizbox_txt {flex-basis: 50%; position: relative; padding-bottom: 38px; overflow: hidden;}

@media (max-width: 767px) {
	.business {padding: 30px 20px 20px;}

	.bizbox {flex-wrap: wrap;}
	.bizbox_img {flex-basis: 100%;}
	.bizbox_txt {flex-basis: 100%;;}
}

.bizbox_title {margin-bottom: 15px;}
.bizbox_desc {font-size: 1.2rem; line-height: 1.3;}
.bizbox_more {display: block; position: absolute; right: 0; bottom: 0; height: 24px; width: 120px; color: #fff; font-size: 1.1rem; padding-left: 10px; line-height: 23px; border-radius: 4px; transition: 0.3s;}
.bizbox_more:after {content: ""; width: 27px; height: 7px; background: url(../images/arrow.png) no-repeat 0 0 / cover; position: absolute; right: 10px; top: 7px;}
.bizbox_more:before {content: ""; width: 300%; border-top: 2px solid #777; position: absolute; right: 137px; bottom: 0;}

.bizbox:hover .bizbox_more {filter: brightness(1.2)}

@media (max-width: 400px) {
	.bizbox_more {width: 100%;}
	.bizbox_more:before {display: none;}
}

/*PR動画
------------------------------*/
.video_block {max-width: 1140px; padding: 40px 20px 50px; display: flex; justify-content: space-between;}
.video_block .video{
	flex-wrap: 60%;
	position: relative;
	width: 100%;
	aspect-ratio: 10/5.5;
}
.video_block .video iframe{
	position: absolute;
	width: 100%;
	height: 100%;
}
.video_block .video_qr{
	flex-basis: 35%;
	box-sizing: border-box;
	padding: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.video_block .video_qr img{
	width: 220px;
}
@media (max-width: 767px) {
	.video_block .video{
		flex-basis: 100%;
	}
}
/*アクセス
------------------------------*/
.access_block {max-width: 1140px; padding: 0 20px 50px;}
.access {display: flex; gap: 20px;}
.access_address {flex-basis: 270px;}
.access_gaikan {flex-basis: calc(100% - 270px);}
.access_title {background: var(--color-blue-light); aspect-ratio: 1/0.95; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; color: #fff; text-align: center; padding: 30px 10px;}
.access_title div {width: 100%;}
.access_title span {display: block; border-top: 1px solid #fff; padding-top: 7px; margin-top: 10px; font-size: 1.2rem;}
.access_info {line-height: 1.5; font-size: 1.3rem; letter-spacing: 0; margin-top: 10px;}
.access_info a {text-decoration: underline;}
.access_zip {display: inline-block; margin-right: 5px;}

.map_block {padding: 0 0 50px 0;}
.map{height: 0; overflow: hidden; padding-bottom: 24%; position: relative;}
.map iframe{position: absolute; left: 0; top: 0; height: 100%; width: 100%;}

@media (max-width: 767px) {
	.access {flex-wrap: wrap;}
	.access_address {flex-basis: 100%; display: flex;}
	.access_gaikan {flex-basis: 100%;}
	.access_title {flex-basis: 100px;}
	.access_info {flex-basis: calc(100% - 100px); padding-left: 15px;}
	.access_zip {display: block;}

	.map{padding-bottom: 70%;}
}