#slide{
 position: relative;
}
#slide h2{
 position: absolute;
 /*top: 38%;*/
 top: 28.5%;
 left:  0px;
 color: #fff;
 z-index: 2;
 width: 100%;
 text-align: center;
}
#slide h2 img{
 width: 50vw;
 max-width: 422px;
 height: auto;
}
#contents .contentsList{
 display: table;
 width: 100%;
}
#contents .contentsList li{
 display: table-cell;
 padding: 5px;
}
#contents .contentsList .styleLink .ttl span{
 padding: 5px 0px;
 width: 85%;
 font-size: 85%;
}
#blog .styleList li a{
 display: table;
 width: 100%;
}
#blog .styleList li a .photo{
 display: table-cell;
 width: 35%;
 vertical-align: top;
}
#blog .styleList li a .photo img{
 width: 100%;
 height: auto;
}
#blog .styleList li a .text{
 display: table-cell;
 width: 54%;
 vertical-align: top;
 padding: 2% 4%;
}
#blog .styleList li a .text .cat{
 margin-bottom: 10px;
}
#blog .styleList li a .text .cat span{
 display: inline-block;
 border:solid 1px #e36e45;
 color: #e36e45;
 padding: 2px 5px;
}
#news .sns a{
 display: block;
 /*border:solid 1px #666;*/
}
#news .sns a img{
 width: 100%;
 height: auto;
}
#news .sns li{
 margin-bottom: 20px;
}
#news .news{
 border:solid 1px #666;
 /*margin-right: 30px;*/
 padding: 40px 30px 30px;
 min-height: 168px;
}
#news .news li{
 border-bottom: solid 1px #999;
}
#news .news li a{
 display: block;
 padding: 5px;
}
#news .news li a .date{
 min-width: 120px;
 display: inline-block;
}

.top_btn_wrap{
 max-width: 1050px;
 margin: 0 auto;
 padding: 60px 15px 0;
}
.top_recruit_btn_wrap,
.top_btn_wrap.furusato_bnrs{
	display: flex;
	gap: 20px;
}
/*
===================================================
	sp
===================================================
*/
@media screen and (max-width: 768px) {
 #slide h2{
  /*top: 30%;*/
  top: 22%;
 }
 #contents .contentsList{
  display: block;
  width: auto;
  text-align: center;
 }
 #contents .contentsList li{
  display: inline-block;
  width: 48%;
  padding: 0.5%;
  font-size: 75%;
 }
 #contents .contentsList .styleLink .ttl span{
  padding: 5px 0px;
  width: 85%;
  font-size: 100%;
 }
 #blog .styleList li a{
  display: table;
  width: 100%;
 }
 #blog .styleList li a .photo{
  display: table-cell;
  width: 25%;
  vertical-align: top;
 }
 #blog .styleList li a .photo img{
  width: 100%;
  height: auto;
 }
 #blog .styleList li a .text{
  display: table-cell;
  width: 64%;
  vertical-align: top;
  padding:0px 0px 0px 2%;
  font-size: 90%;
 }
 #blog .styleList li a .text .cat{
  margin-bottom: 15px;
 }
 #blog .styleList li a .text .cat span{
  display: inline-block;
  border:solid 1px #e36e45;
  color: #e36e45;
  padding: 2px 5px;
 }
 #news .sns a{
  display: block;
  /*border:solid 1px #666;*/
 }
 #news .sns a img{
  width: 100%;
  height: auto;
 }
 #news .sns li{
  margin-bottom: 20px;
 }
 #news .news{
  border:solid 1px #666;
  margin-right: 0px;
  padding: 20px;
  min-height: 168px;
 }
 #news .news li{
  border-bottom: solid 1px #999;
 }
 #news .news li a{
  display: block;
  padding: 5px;
 }
 #news .news li a .date{
  display: block;
 }
	
 .top_btn_wrap{
 padding: 30px 15px 0;
 }
}

.slider li{
    position: relative;
}

.slider .slidelogo {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
}

.slider .slidelogo img {
    width: 50vw;
    max-width: 422px;
    height: auto;
    aspect-ratio: 422 / 145;
    object-fit: contain;
}

.slider .slidelogo.img-shadow img{
    filter: drop-shadow(4px 4px 8px #000);
}