
	.service-part{
		padding: 4rem 0;	
		background-color: #f3f1ed;
		position: relative;
		z-index: 1;
	}
	.section2 > .main-txt-part
	{
		color: #fff!important;
		margin-bottom: 5rem;
	}
	.contents-innner {
    width: 85%;
    margin: auto;
}
	.service-list > ul{
		padding: 20px!important;
		border-radius: 10px;
		background-color: #1F1F1F;
		display: flex;
		gap: 20px;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-bottom: 100px;
			
	}
	.service-list > ul > li{
		flex-basis: 23.2%;
		border-radius: 10px;
		display: flex;
		flex-direction: column;
	}	
	.service-logo-wrapper{
		background-color: #F7F7F7;
		flex: 1.5;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 2rem 0;
		border-radius: 10px 10px 0 0;
	}
	.service-logo-wrapper img{
		width: 60%;
	}
	.service-txt-wrapper{
		flex: 1;
		background: #fff;
		display: flex;	
		padding: 1.5rem 1.5rem  1.5rem 2rem; 
				border-radius:0 0 10px 10px;
/*		gap:0.5rem;*/
	}
	.explain-title{
		font-size: 0.9vw;
		text-align: center;
		flex: 1.2;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.explain-txt{
		font-size: 0.7rem;
		flex: 1.8;
		padding-left: 0.5rem;
/*		border-left: 1px solid black;*/
		display: flex;
		align-items: center;
	}
.servicebou{
	border-right: 1px solid black;
}
	
/*	サステナブルパート*/
	.sustainable-part{
		padding: 10rem 0 3rem;
		position: relative;
	}
	
	.recruit-part{
		margin: 10rem 0 3rem;
		height: auto;
		width: 100%;
		background-color: #F9F9F9;
		box-shadow: 0px 0px 15px lightgrey;
	}
	
	.part-back {
		width: 100%;
		height: 100%;
		background-size: cover;
		background-position: 50%;
		background-image: url("/../img_new/recruit-back.webp");		
	}	
	.recruit-txt-wrapper{
		width: 50%;
		margin: auto;
		padding: 20vh 0 10vh;
		color: #0A2357;
	}
	.recruit-txt-wrapper h2{
		font-size: 2.3vw;
		letter-spacing: 3.5px;
		line-height: 1.5;
		font-weight: bold;
		padding-left: 10px;
	}
	.recruit-txt-wrapper h2 span {
		color: #49B6E6;
	}
	.recruit-txt-wrapper p{
		font-size: 1.2vw;
		padding-left: 10px;
		letter-spacing: 3.5px;
	}	
	
	.rec-link-btn{
		border-radius: 100px;
		color: #fff;
		font-size: 1.5rem;
		font-weight: bold;
		text-decoration: none;
		background-color:#0B1F4B;
		width: 400px;
		display: block;
		margin: 2rem auto;
		text-align: center;
		letter-spacing: 3px;
		padding: 0.8rem 0;
		position: relative;
	}


	.rec-link-btn:after{
		font-family: "Font Awesome 6 Pro";
		font-weight: 900;
		content: "\f178";
		display: inline-block;
		position: absolute;
		right: 3.2rem;
	}

	.rec-link-btn:hover::after{
	animation: yureru 1s linear infinite;
		color: #fff;
}
.rec-link-btn:hover{
	color: #fff;
}

.company-back:hover + .white-border p:after{
	animation: yureru 1s linear infinite;
}



	
/*	ニュースエリア*/
	
.news-container {
    width: 50vw;
    margin: auto;
}	
	
.news-title {
    margin-bottom: 2vh;
}
	
dl.topics_area {
    border-top: #999999 solid 2px;
    border-bottom: #999999 solid 2px;
    list-style: none;
    box-sizing: border-box;
    padding: 15px;
    height: 300px;
    overflow: scroll;
    background-color: #ffffff;
}
dl.topics_area dt {
    margin: 0;
    padding: 0;
    font-size: 12px;
}

.news_list dt {
    color: #0B1F4B;
}
	
dl.topics_area dd {
    margin: 0 0 10px;
    padding: 0;
    border-bottom: dotted 1px #999999;
    font-size: 14px;
	min-height: 45px;
}
dl.topics_area dd a{
	color: #0B1F4B;
}



/*青い横棒のサブタイトル部分作り直し*/
.part-title2{
	color: #38ACE0;
	margin-bottom: 5.5vh;
}
.sub-title-wrap{
	display: flex;
	align-items: center;
	margin-bottom: 0.8vh;
	gap:0.7rem;
}
.side-border2{
	height: 2px;
	width: 5vw;
	background-color: #38ACE0;
}
.en-title2{
	font-size: 1vw;
}

.ja-title2 {
	font-size: 1.5vw;
	color: #38ACE0;
	font-weight: 500;
}


.more-info-top:hover::before{
	animation: yurayura 1s linear infinite;
}


@keyframes yurayura {
  0% , 100%{
	  transform: translateX(2px) scale(2);
  }
  50%{
	  transform: translateX(-2px) scale(2);
  }
}	
@keyframes yureru {
  0% , 100%{
	  transform: translateX(2px);
  }
  50%{
	  transform: translateX(-2px);
  }
}	


@media(max-width:480px){
	.sub-title-wrap {
		gap: 0.5rem;
	}
	.side-border2{
		width: 3rem;
	}
	.ja-title2{
		font-size: 1.3rem;
	}
	.en-title2 {
		font-size: 0.7rem;
	}

}
/*↑青い横棒のサブタイトル部分作り直し*/




.rec-link-btn:hover:after{
	transform: translateX(2rem);
}


			.news-title{
				position: relative;
			}
			
			.to-all{
				position: absolute;
				right: 1rem;
				bottom: 0;
				color: #0B1F4B;
			}	
			.to-all:after{
				content: '→';
				font-weight: bold;
				font-weight: 1.1rem;
			}
			

	@media (max-width: 480px) {
		
		.service-part {
			padding-bottom: 0px!important;
		}
		
		.service-list > ul {
			margin-bottom: 60px;}
.service-list > ul > li {
    flex-basis: 45%;
		}
	.service-txt-wrapper {
    flex-direction: column;
    padding: 1rem;
    gap: 0.6rem;
}
	   .explain-title { border-right: none;
    border-bottom: 1px solid black;
    padding-bottom: 0.5rem;
    font-size: 1rem;
}
	
	}
			@media(max-width:480px){
				.to-all {
					text-align: right;
					color: #0B1F4B;
					position: inherit;
				}
				.news-title{
					text-align: center;
				}				
			}



@media(max-width:480px){
		.recruit-part{
		margin: 10rem 0 3rem;
		height: 450px;
		width: 100%;
		background-color: #F9F9F9;
		box-shadow: 0px 0px 15px lightgrey;
	}
	.explain-txt{
		padding-left: 0;
		border-left: none;
	}
	
	.leadership-side-border	{
		left: 26vw;
	}
	
	
}
	
	
/*	会社情報パート*/
	.company-info-part{
		width: 100%;
		height: 45vh;
		background-color: gray;
		margin: 10rem 0;
	}
	
	.company-back{
		width: 100%;
		height: 100%;
		background-size: cover;
		background-position: 50%;
		background-image: url("/../img_new/company-info-back.webp");	
		padding: 3.5vh 0;
	}
	
	.white-border{
		border-bottom: 2px solid #fff;
		border-top: 2px solid #fff;
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100%;
		position: relative;
	}
	.white-border p{
		color: #fff;
		font-size: 3.7rem;
		text-shadow: 1px 2px 3px #808080; 
		letter-spacing: 3px;
	}	
	.white-border p:after{
		font-family: "Font Awesome 6 Pro";
		font-weight: 900;
		content: "\f0a9";
		transform: scale(1);
		display: inline-block;
		left:0.5rem;
		color: #fff;
		margin-left: 20px;
	}
	.company-info-part span{
		position: absolute;
		left: 5vw;
		bottom: 0;
		color: #fff;		
		font-size: 1.5rem;
		letter-spacing: 2px;		
	}	

.company-info-part span:before {
    content: url(/../img_new/access.webp);
    transform: scale(1.2);
    display: inline-block;
    position: absolute;
    bottom: -9px;
    left: -40px;
}
	
