@charset "UTF-8";
/* CSS Document */
/**************************************************
*制作：Shinichi Yamazaki
*Created Date：2022/07
*https://design-momonga.jp/
 レスポンシブレイアウトモバイルファーストでの記述。
***************************************************/
/*--------------------------------------------------
*共通パーツ設定
--------------------------------------------------*/
	
/*---↓↓↓コンセプトボックス構造部↓↓↓---*/

.concept-box{/*コンセプトボックス構造*/
	color:#FFF;
	/*-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;*/
}
.copy1{/*コンセプトのコピー*/
	font-size:2.1rem;
	font-weight:400;
	text-align:center;
	line-height:1.5;
	letter-spacing: 0.1rem;
}

/*---↓↓↓各パーツのスキン部（それぞれの設定）↓↓↓---*/

.h-style1 span{/*見出し文字の下線用の細工*/
	font-size:1.3rem;
	display:block;
	padding: 5px 0 5px 0;
	color:#999;
	font-weight:100;
}

.op1{/*mv中のコンセプトボックス*/
	width:90%;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	z-index:999;
	padding:20px 10px;
	text-shadow: 0px 3px 5px rgba(0,0,0,0.4);
}
.op2{/*mv中の「私たちの考え」ボタン*/
	width:70%;
	background:rgba(15,176,194,.80);
	position:absolute;
	bottom:40px;
	left:50%;
	transform:translate(-50%,0);
	z-index:999;
}
.op3{/*お知らせ一覧へボタン*/
	padding:5px 10px;
	text-align:center;
	text-decoration:none;
	color:#FFF;
	font-size:1.2rem;
}
.op4{
	margin:0 0 0 0;
	letter-spacing:0.05rem;
}
.op5{
	width:50%;
	margin:0 auto 0 auto;
	letter-spacing:0.05rem;
}
.op6{
	width:80%;
	margin:0 auto 0 auto;
	letter-spacing:0.05rem;
}
.op7{
	width:80%;
	margin:0 auto 0 auto;
	letter-spacing:0.05rem;
}
.btn-home{
	display:none;
}

/*--------------------------------------------------
*メインビジュアルエリア
---------------------------------------------------*/
#mv{/*メインビジュアル*/
	height:540px;
	/*background:url("../images/sp_mv_sample.jpg") no-repeat;
	background-size:cover;*/
	position:relative;
	overflow:hidden;
}
#bg-vid{
	position:absolute;
	top:50%;
	left:50%;
	min-height:100%;
	min-height:100vh;
	min-width:100%;
	min-width:100vw;
	transform:translate(-50%,-50%);
}
#mv::after {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAG0lEQVQYV2NkYGD4z8DAwMgABXAGNgGwSgwVAFbmAgXQdISfAAAAAElFTkSuQmCC), repeat;
  opacity: 0.3;
  pointer-events: none;
}
/*--------------------------------------------------
*コンテンツエリア
---------------------------------------------------*/

/*---↓↓↓最新情報エリア（#news）↓↓↓---*/
#news{
	padding:30px 0 0 0;
	margin-bottom:20px;
}
#news-inner{
	width:90%;
	margin:0 auto 0 auto;
}

#news-btn-list{
	text-align:right;
	padding:0 10px 10px 10px;
}
#no-posts{
    min-height: 100px;
    display: flex;
    justify-content:center;
    align-items:center;
}
.m-list-news > li{
    position:relative;
    border-bottom:solid 1px #dde3e9;
}
.m-list-news > li:last-child{
    border-bottom:none;
}
.m-list-news > li > a,
.m-list-news > li > span
{
    padding:10px 0;
    display:block;
	color:#555963;
}
.m-list-news > li > a:first-child,
.m-list-news > li > span:first-child
{
	padding-top:10px;
}
.m-list-news > li > a .news-date,
.m-list-news > li > span .news-date
{
    font-size:1.2rem;
    display:inline-block;
    font-weight:bold;
    /*padding-left: 15px;
    background-image: url("../images/common_icon_dot-arrow-red.svg");
    background-repeat: no-repeat;
    background-size: 5px;
    background-position: 0 2px;*/
}
.news-cat,
.m-list-news > li > span .news-cat {
    font-size: 1.2rem;
    display: inline-block;
    position: relative;
    /*margin-left: 10px;*/
    padding-left: 10px;
    color:#e50012;
    font-weight: 600;
}
.m-list-news > li > a .news-cat::before,
.m-list-news > li > span .news-cat::before {
    content: '';
    background: #dde3e9;
    width: 1px;
    height: 9px;
    position: absolute;
    bottom: 0;
    left: 0;
    margin: auto;
}
.m-list-news > li > a .news-ttl,
.m-list-news > li > span .news-ttl
{
    font-size: 13px;
    font-size: 1.3rem;
    margin-top: 5px;
	line-height:1.5;
}
/*---↓↓↓（#block01）↓↓↓---*/

#block01{
	padding:30px 0 30px 0;
}
#block01-inner{
	width:90%;
	margin:0 auto 20px auto;
}
#tutaeru{
	width:100%;
	margin:0 auto 20px auto;
}
#service-txt p{
	text-align:justify;
	line-height:2.4rem;
	color:#C4C4C4;
	font-size:1.3rem;
}

/*---↓↓↓（#block02）↓↓↓---*/

#block02{
	padding:30px 0 0 0;
}
#block02-inner{
	width:95%;
	margin:15px auto 0 auto;
}
#segment{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	margin-bottom:20px;
}
#segment li{
	width:49.2%;
	margin-bottom:5px;
}

/*---↓↓↓（#block03）↓↓↓---*/

#block03{
	padding:0 0 0 0;
	margin:0 0 50px 0;
}
#torikumi-header{
	min-height:210px;
	padding:40px 0 0 0;
}
#torikumi-catch{
	width:92%;
	background:#FFF;
	margin:-83px auto 15px auto;
	padding:25px 25px 0 25px;
}
#torikumi-catch h2{
	font-size:1.7rem;
	font-weight:600;
	line-height:2.6rem;
	color:#13376b;
	text-align:center;
	padding-bottom:20px;
	border-bottom:1px solid #CCC;
	margin-bottom: 20px;
}
#torikumi-catch h3{
	padding-top:20px;
	margin-bottom:15px;
	text-align:center;
	font-size:1.6rem;
	font-weight:600;
	line-height:2.2rem;
	color:#333;
}
#torikumi-catch p{
	line-height:2.6rem;
	text-align:justify;
}
#torikumi-img{
	width:92%;
	margin:0 auto 35px auto;
}
/*---↓↓↓（#block04）↓↓↓---*/

#block04{
	padding:40px 0 40px 0;
	background:#F4F4F4;
}
#block04-inner{
	width:90%;
	margin:20px auto 20px auto;
}
.recrute{
	margin: 0 0 25px 0;
}
.recrute-title{
	padding:10px 0 0 0;
	text-align:center;
}
/*********************************************
*タブレット（600px以上の場合）
**********************************************/
@media screen and (min-width:600px){
	
	/*--------------------------------------------------
	*【タブレット】共通パーツ設定
	--------------------------------------------------*/
	
	.copy1{
		font-size:3.2rem;
		text-align:center;
	}
	.op1{
		width:100%;
	}
	.op2{
		width:40%;
		bottom:70px;
	}
	.op3{
		width:55%;
	}
	.op4{
		margin:0 0 0 0;
	}
	.op6{
		width:40%;
	}
	.op7{
		width:40%;
	}
	/*--------------------------------------------------
	*【タブレット】メインビジュアルエリア（#mv）
	---------------------------------------------------*/
	
	#mv{/*【タブレット】メインビジュアル*/
		/*height:725px;*/
		height:800px;
	}
	#bg-vid{
		transform:translate(-50%,-47%);
	}
	/*--------------------------------------------------
	*【タブレット】コンテンツエリア
	---------------------------------------------------*/
	
	/*---↓↓↓【タブレット】最新情報エリア（#news）↓↓↓---*/
	
	#news{
		padding:40px 0 0 0;
		margin-bottom:50px;
	}
	#news-inner::after{
		width:33.0%;
	}
	.news-post{
		width:33.2%;
		margin-bottom:5px;
	}
	.news-post-date{
		padding:9px 0 9px 0;
		font-size:1.5rem;
	}
	.news-text{
		padding:10px 15px 15px 15px;
		line-height:2.2rem;
	}
	
	/*---↓↓↓【タブレット】（#block01）↓↓↓---*/
	
	#block01{
		padding:50px 0 50px 0;
	}
	#block01-inner{
		width:80%;
		margin-bottom:30px;
	}
	#tutaeru{
		width:90%;
	}
	#service-txt p{
		font-size:1.4rem;
	}
	/*---↓↓↓【タブレット】（#block02）↓↓↓---*/
	
	#block02{
		padding:60px 0 0 0;
	}
	#block02-inner{
		width:80%;	
	}
	#segment li{
		margin-bottom:10px;
	}
	/*---↓↓↓【タブレット】（#block03）↓↓↓---*/

	#torikumi-catch{
		width:80%;
		margin:-90px auto 15px auto;
		padding:30px 35px 0 35px;
	}
	#torikumi-catch h2{
		font-size:2.2rem;
		font-weight:600;
		line-height:3.6rem;
		padding-bottom:25px;
	}
	#torikumi-catch h3{
		padding-top:30px;
		margin-bottom:25px;
		font-size:1.8rem;
	}
	#torikumi-catch p{
		font-size:1.5rem;
		line-height:2.6rem;
	}
	#torikumi-img{
		width:80%;
		margin:0 auto 35px auto;
	}
	
}
/*********************************************
*PC（960px以上の場合）
**********************************************/
@media screen and (min-width:960px){

	/*--------------------------------------------------
	*【PC】共通パーツ設定
	--------------------------------------------------*/
	
	.copy1{
		font-size:3.5rem;
        font-style:italic;
		letter-spacing:0.4rem;
	}
	.copy1 span{
		font-size:1.6rem;
		line-height:2rem;
	}
	.op1{
		padding:30px 10px;
		transform:translate(-50%,-60%);
	}
	.op2{
		width:20%;
		bottom:80px;
	}
	.op3{
		width:35%;
	}
	.op4{
		margin:0 0 30px 0;
	}
	.op5{
		width:35%;
	}
	
	/*--------------------------------------------------
	*【PC】メインビジュアルエリア（#mv）
	---------------------------------------------------*/
	
	#mv{/*メインビジュアル*/
		height:800px;
		border-bottom:10px solid #F1F1F1;
	}
	#bg-vid{
		max-width:none;
		transform:translate(-50%,-50%);
	}
	
	/*--------------------------------------------------
	*【PC】コンテンツ領域（#mc）
	---------------------------------------------------*/
	
	.contents-wrapper{
		max-width:1120px;
		margin: 0 auto;
	}
	
	/*---↓↓↓【PC】最新情報エリア（#news）↓↓↓---*/
	
	#news{
		padding:45px 0 0 0;
		margin-bottom:50px;
	}
	#news-inner{
		margin:0 auto 0 auto;
	}
    .m-list-news > li > a,
    .m-list-news > li > span
    {
        padding:15px 0;
    }
	.m-list-news > li > a:hover{
		color:#e50012;
	}
	.m-list-news > li > a .news-date,
	.m-list-news > li > span .news-date
	{
		font-size:1.4rem;
	}
	.news-cat,
	.m-list-news > li > span .news-cat {
		font-size: 1.4rem;
	}
	.m-list-news > li > a .news-ttl,
	.m-list-news > li > span .news-ttl
	{
		font-size: 1.5rem;
		letter-spacing: 0.1rem;
	}
	
	/*---↓↓↓【PC】（#block01）↓↓↓---*/
	
	#block01{
		padding:50px 0 50px 0;
	}
	#block01-inner{
		width:90%;
		margin:0 auto 50px auto;
		display:flex;
		justify-content:space-between;
	}
	#tutaeru{
		width:50%;
		text-align:center;
	}
	#tutaeru img{
		width:100%;
	}
	#service-txt{
		width:52%;
	}
	#service-txt p{
		padding:15px 0 0 0;
		line-height:2.8rem;
		font-size:1.5rem;
	}
	
	/*---↓↓↓【PC】（#block02）↓↓↓---*/
	
	#block02{
		padding:50px 0 0 0;
	}
	#block02-inner{
		width:100%;
		margin:20px auto 60px auto;
	}
	#sec1{
		display:flex;
		justify-content:space-between;
		flex-flow: row-reverse;
	}
	.txt1{
		line-height:3rem;
		margin-bottom:25px;
	}
	.txt2{
		width:58%;
		padding:40px 0 0 0;
	}
	.photo1{
		width:40%;
	}
	#sec2{
		display:flex;
		justify-content:space-between;
	}
	#segment li{
		width:32.5%;
		margin-bottom:15px;
	}
	
	/*---↓↓↓【pc】（#block03）↓↓↓---*/
	#block03{
		margin:0 0 100px 0;
	}
	
	#torikumi-header{
		min-height:280px;
		padding:70px 0 0 0;
	}
	#torikumi-catch{
		width:1060px;
		margin:-120px auto 35px auto;
		padding:40px 230px 0 230px;
	}
	#torikumi-catch h2{
		font-size:2.6rem;
		line-height:3.8rem;
		padding-bottom:25px;
	}
	#torikumi-catch h3{
		padding-top:30px;
		margin-bottom:25px;
		font-size:1.8rem;
	}
	#torikumi-catch p{
		font-size:1.5rem;
		line-height:2.6rem;
	}
	#torikumi-img{
		width:100%;
		margin:0 auto 35px auto;
	}
	
	/*---↓↓↓【PC】（#block04）↓↓↓---*/
	#block04{
		padding:40px 0 40px 0;
	}
	#block04-inner{
		width:100%;
		margin:20px auto 20px auto;
		display:flex;
		justify-content:space-between;
	}
	.recrute{
		width:49.5%;
		margin: 0 0 25px 0;
	}
	.recrute-title{
		padding:10px 0 0 0;
		text-align:center;
	}
	
}