w@charset "utf-8";

/*=================================================================================================================================*/
/** 個別指定 for スマートフォン
/*=================================================================================================================================*/

/*---------------------------------------------
 ** 320px
---------------------------------------------*/
@media screen and (max-width: 320px) {
}

/*---------------------------------------------
 ** 740px
---------------------------------------------*/
@media screen and (max-width: 740px) {

/*---------------------------------------------
	body
---------------------------------------------*/
html { scroll-behavior: smooth; }
body { font-size: 15px;  line-height: 1.8;
}
p    {font-size: 15px;}

/* fook */
.only_sp_none {display:none!important; }
.only_pc_none {display:block!important; }
.sp_br{display: inline;}

/*画像*/
img{max-width:100%; height:auto;}


section{
  margin:0 auto 40px;
}

h2{
  font-size:2.2rem;
  color: #171B60;
  padding-bottom:10px;
}

h2 span{
  color:#333;
  font-size:1.2rem;
}

/*---------------------------------------------
 ** コンテンツ全体
---------------------------------------------*/
#content {
  width: 100%;
  margin:0 auto 0;
}

.wp-block-spacer{
  height:20px!important;
}
.wp-block-image{
  margin-bottom:15px!important;
}
/*---------------------------------------------
 **  ナビ
---------------------------------------------*/




/*---------------------------------------------
 **  メイン画像
---------------------------------------------*/



/*---------------------------------------------
 ** ヘッダー記述
---------------------------------------------*/
.header_wrapper {
  background:url(../img/common/main_img2.jpg) no-repeat top 140px center;
  background-size:contain;
  height: 200px;
  margin-bottom: 0px;
}
#index .header_wrapper {
  height: 560px;
  background:url(../img/top/main_img.jpg) no-repeat top 140px center;
  background-size:contain;
  margin-bottom: 0px;
}

.header_wrapper h1{
  width:100px;
  max-width:170px;
  top:75px;
  left:0;
  right:0;
  margin:0 auto;
}
#header .tel_box{
  width:85%;
  height:60px;
  top:0;
  left:0;
  background:#171B60;
  position:fixed;
  z-index: 999;
}
.tel_box p{
  font-size:2.0rem;
  text-align:left;
  font-weight: bold;
  z-index:2;
  color:#fff;
  letter-spacing:1.5px;
  margin-top: 13px;
  padding-left:15px;
}
.tel_box p a:link,.tel_box p a:visited{
  color:#fff;
}
.tel_box p span{
  background:url(../img/common/tel_sp.png) no-repeat;
  background-size: 17%;
  padding: 0% 0 3% 45px;
}

/*---------------------------------------------
 **  タイトル
---------------------------------------------*/


/*=================================================================================================================================*/
/**  TOP	*/

#top_info{
  margin:-310px auto 50px;
}
#top_info #info_block{
  width:100%;
  height:80px;
  top:0;
  left:0;
}
#top_info #info_block p:nth-child(1){
  font-size:1.8rem;
  bottom:10px;
  left:20px;
}
#top_info #info_block p:nth-child(1) span{
  font-size:1.4rem;
  display: block;
}
#top_info #info_block p:nth-child(2){
  font-size:1.4rem;
  bottom:11px!important;
  left:80%!important;
}
#top_info #info_dl{
  width:95%;
  height:150px;
  display: flex;
  flex-wrap: wrap;
  bottom:50px;
  right:0;
  left:0;
  margin:0 auto;
}
#top_info #info_dl dl{
  width:100%;
  background:#fff;
  border-left: 10px solid;
  border-image: linear-gradient(to bottom, #171c61 0%, #0085b2 100%);
  border-image-slice: 1;
  margin:2% 0 2% 0;
  padding:1% 2%;
}
#top_info #info_dl dl:last-child{
  margin:2% 0 2% 0;
}

#top_info #info_dl dl dt{
  font-size:1.6rem;
}
#top_info #info_dl dl dt span{
  font-size:1.2rem;
}
#top_info #info_dl dl dd{
  margin-top:2%;
}

#top_info #info_block p:nth-child(2){
  background:url(../img/common/arrow.png) no-repeat top 4px left 0;
  bottom:16px;
}

#top_service{
  margin-top:100px;
}

.top_con img{
  margin-bottom:10px;
}

.top_con p{
  width:146px;
  display: inline-block;
  color:#fff;
  font-weight: bold;
  font-size:90%;
  background:#162165;
  position:absolute;
  bottom:5px;
  right:5px;
  margin-bottom:10px!important;
}
.top_con p span{
  background:url(../img/common/arrow.png) no-repeat top 13px left 20px;
  padding:8px 10px 8px 35px;
}

.top_con dl{
  margin-bottom:60px;
}
.top_service_r dl{
  margin-bottom:10px!important;
}
.top_con dl dt{
  font-size:1.6rem;
  font-weight: bold;
  padding:0 3%;
}
.top_con dl dd{
  padding:0 3%;
}


#top_service > div, #top_other > div{
  display: flex;
  flex-wrap: wrap;
}
#top_recruit > div{
  position:relative;
}

.top_service_l{
  width:100%;
  position:relative;
}
.top_service_r{
  width:100%;
  margin-left:0;
}
.top_service_r img{
  height: 140px;
  object-fit: cover;
  overflow: hidden;
}

#top_other{
  width:80%;
  margin:0 auto;
}

.top_other_l{
  width:100%;
  margin-left:0;
}
.top_other_r{
  width:100%;
  margin:0;
}



/*---------------------------------------------
 ** 下層ページ
---------------------------------------------*/
.img_box{
  margin: -10px auto 40px!important;
}

.company_box{
  margin: 0 auto 50px!important;
}
.company_box div:nth-child(1){
  width:95%;
  margin:0 auto;
}
.company_box div:nth-child(1) p{
  width: 60%;
  padding:1% 0 1%;
  font-size:17px;
  text-align: left;
  margin-left: 12px;
}
.company_box div:nth-child(1) p.p_name{
  width: 55%;
  padding: 0;
  font-size:18px;
}
.company_box div:nth-child(1) p.p_name span{
  font-size:10px;
}
.company_box div:nth-child(2) {
  width: 35%;
  max-width:140px;
  position:absolute;
  bottom: 0px;
  right: 5px;
  /* left:0; */
  margin:0 auto;
}
.wp-block-table tr{
  display: flex;
  flex-wrap: wrap;
}
.wp-block-table th, .wp-block-table td{
  padding: 1em 1em!important;
  width:100%!important;
  text-align: center;
}

.about_title01, .about_title02{
  width:100%;
  position:relative;
  text-align: center;
  font-size:2.4rem;
  margin-top: 50px;
}
.about_title01::before{
  /* width: 30%; */
  width: 80px;
  top: -70px;
}
.about_title02::before{
  width: 80px;
  top: -70px;
}
.about_list{
  width:90%;
  display:block;
  margin:3% auto 0;
}
.about_list li{
  width:96%;
  margin:0 0 10px 0;
  text-align: center;
  color: #171a5f;
  padding:2% 1%;
  list-style: none;
  font-size:1.8rem;
  font-weight: bold;
  background: #edfaff;
  border: 3px solid #171a5f;
}
.about_list_lan li{
  background: #edfaff;
}


.about_text{
  width:90%;
}

.rec_human dt{
  padding:1% 2%;
  border-left: 10px solid;
  border-image: linear-gradient(to bottom, #171c61 0%, #0085b2 100%);
  border-image-slice: 1;
  font-size:110%;
  font-weight: bold;
  background-color:#edfaff;
}
.rec_human dd{
  padding:2% 2% 5% 12%;
  font-size:110%;
  margin:1% 0 3%;
  border-bottom:1px solid #999;
}
.rec_human dd.ok{
  background-size:35px;
}
.rec_human dd.good{
  background-size:35px;
}

.rec_safety{
  width:90%;
  margin:3% auto;
}
.rec_safety li{
  padding-left:0!important;

}
/*=================================================================================================================================*/
/**  フッター	*/
/*=================================================================================================================================*/
.foot_img{
  width:100%;
  height:auto;
  position:static;
  margin-top:30px;
}
.foot_img ul{
  width:90%;
  display: flex;
  flex-wrap: wrap;
  margin:0 auto;
  position:static;
  padding-top:4%;
}
.foot_img ul li{
  width:48%;
  margin-right:4%;
  margin-bottom:4%;
}
.foot_img ul li:nth-child(2n){
  margin-right:0;
}

.foot_box{
  width:95%;
  margin:8% auto 2%;
  display: block;
}
.foot_box h1{
  width:100%;
  text-align: left;
}
.foot_box h1 img{
  max-width:437px;
}

.foot_box p{
  width:100%;
  font-weight: bold;
  font-size:1.4rem;
  text-align:left;
  margin-top:20px;
  color:#000;
}



#copyright {
  font-size:10px!important;
  letter-spacing: 1px;
  padding: 15px 0 80px;
}

/* ページTOPへ */
#pageTop {
  width:100px;
  height:20px;
  border-radius: 10px;
  padding: 10px 3px 10px 10px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  color:#fff;
  font-size:1.2rem;
  position: fixed;
  bottom: 30px;
  right: 10px;
  z-index: 999;
}
#pageTop a {
  width:100px;
  height:20px;
  display: block;
}
#pageTop a::before {
  content:url(../img/common/arrow.png);
  display: block;
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
  position:absolute;
  top:0px;
  right:auto;
  left:5px;
}


}
