@charset "utf-8";
/* CSS Document */
/* 目次 
1. リセット
2. 共通（レイアウト・その他・見出し・ボタン・ヘッダー・フッター・ぱんくず・TOP)
3. TOP
4. お問い合わせ
5. thanks 404　共通
6. 
7.
.
 
*/

/*=================== TBここから ==================*/
@media screen and (min-width: 700px) {
/**************************************************
2. 共通（レイアウト・その他・見出し・ボタン・ヘッダー・フッター・ぱんくず共通)
**************************************************/
/*------------------------------
基本スタイル ※変更不可
------------------------------*/
.sp { display: none; }
.tb { display: block; }	
.pc { display: none; }	
	
/*------------------------------
レイアウト ※変更不可
------------------------------*/
.all_bg::before{
  background-size: 160%;
}
.wraper {
  min-height: calc(100vh - 451px);
}
/*wrap共通*/
.wrap{
  padding: 75px 0 0;
}
.wrap-b{
  padding-bottom: 75px;
}
/*------------------------------
見出し h1-h6 ※変更不可
------------------------------*/
.lead01,
.lead02 {
  margin-bottom: 40px;
}
/*------------------------------
SPヘッダー、Gナビ共通 ※変更不可
------------------------------*/
/* Kv */
.kv-box{
  height: 400px;
}
.kv-inner{
  margin-top: 50px;
}
.kv-inner .catch h1{
  font-size: 40px;
  font-size: 4.0rem;
}
.kv-inner .catch h1 span{
  font-size: 30px;
  font-size: 3.0rem;
}
.kv-inner .catch p{
  font-size: 23px;
  font-size: 2.3rem;
}
/* SPヘッダー */
#sp-header #sp-head {
  height: 100px;
}
#sp-header #sp-head .logo {
  width: 70px;
}
/*------------------------------
フッター ※変更不可
------------------------------*/
#footer .flex-box{
  width: 100%;
  height: 340px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  flex-direction: column;
  padding: 0 0 40px;
}
#footer h1.logo{
  width: 250px;
  height: auto;
}
#footer .logo-text{
  margin: 40px 0 20px;
  width: 50%;
}
#footer p{
  color: #fff;
  font-size: 15px;
  font-size: 1.5rem;
}
#footer p.add{
  margin: 0 0 20px;
}
/* sitemap */
#footer .sitemap ul.fnav01{
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  width: 100%;
  margin-bottom: 20px;
}
#footer .sitemap ul.fnav01 li {
  line-height: 2;
  width: 50%;
}
#footer .sitemap ul li a {
  color: #fff;
}
#footer .sitemap ul li a:hover {
  text-decoration: underline;
}
#footer address,
#footer .sitemap{
  width: 50%;
}
#footer div.iso-mark{
  width: 50%;
  height: 22%;
}
#footer ul.iso-mark{
  width: 50%;
  max-width: 190px;
}
/**************************************************
TOP
***************************************************/
/*------------------------------
お知らせ
------------------------------*/	
	
.news_list .news_date {
    width: 30%;
	font-weight: bold;
	margin:10px auto 8px;
	text-align: right;
	padding-right: 50px;
}
.news_list .news_con {
    width: 70%;
	    margin: 10px auto 8px;
}
/*------------------------------
企業理念
------------------------------*/
#top #mission .text-box {
  margin-bottom: 280px;
  padding: 50px 0 100px;
  background: linear-gradient(90deg,#fff 0%,#fff 70%,transparent 70%,transparent 100%);
}
#top #mission .text-box .img{
  width: 500px;
  bottom: -280px;
  left: 25%;
}
/*------------------------------
事業内容
------------------------------*/
#top #services .wrap-l {
  padding: 50px 0;
}
#top #services .box{
  /* 2023.4.28 技術者派遣削除につき調整 */
  /* width: 49%; */
  /* margin: 0; */
  padding: 20px;
  margin-bottom: 20px;
}
/*------------------------------
会社概要
------------------------------*/
#top #outline{
  background: url(../images/top/outline-bg.png) no-repeat;
  background-size: 60%;
  background-position: top 20px right -50px;
}
#top #outline .box{
  width: 70%;
  background: rgb(255, 255, 255);
  padding: 20px;
}
#top #outline table{
  width: 100%;
}
/*------------------------------
採用情報
------------------------------*/
#top #recruit .text-box{
  margin-top: 50px;
}
#top #recruit .img{
  width: 400px;
  position: absolute;
  top: -50px;
  right: 0;
}
#top #recruit .text-box .box{
  padding: 100px 0 50px 5%;
}
/*------------------------------
お問い合わせ
------------------------------*/
#top #contact .contact-box {
  padding: 50px 0;
}
#top #contact .contact-box .box {
  padding: 40px;
}
/**************************************************
下層　共通
***************************************************/
/* Kv */
#recruit .kv-box .kv,
#contact .kv-box .kv,
#thanks .kv-box .kv,
#error .kv-box .kv,
#privacy .kv-box .kv{
  background-position: right -180px top 0;

}
/* con-box */
#recruit .con-box,
#contact .con-box,
#thanks .con-box,
#error .con-box,
#privacy .con-box{
  padding: 7% 8%;
}
/**************************************************
採用情報
***************************************************/
/*------------------------------
con01～con03
------------------------------*/
/* con01 */

/* con02 */
#recruit #con02 .con-box .box{
  padding: 5%;
}
/* con03 */
#recruit #con03 .con-box .flex-box{
  width: 100%;
  display: flex;
  justify-content: space-between;
  
}
#recruit #con03 .con-box .flex-box h4{
  width: 150px;
}
#recruit #con03 .con-box .flex-box .box{
  width: calc(100% - 150px);
}
/* contact */
#recruit #contact .contact-box{
  background-position: left -5% top 0;
}
#recruit #contact .contact-box .wrap-m{
  padding-left: 10%;
}
/**************************************************
お問い合わせフォーム
***************************************************/
/*------------------------------
mailform
------------------------------*/
#mailform .mfp_element_file{
  font-size: 15px;
  font-size: 1.5rem;
  }

/*メール確認画面*/
#mfp_overlay_inner table#mfp_confirm_table tr th{
  width: 200px;
  padding: 10px;
}
#mfp_overlay_inner table#mfp_confirm_table tr td{
  width: calc(100% - 200px);
  padding: 10px;
}
div#mfp_overlay {
    margin-top: 50px!important;
}
}/*=================== TBここまで ==================*/



/*=================== PCここから==================*/
@media screen and (min-width: 1000px) {
/**************************************************
2. 共通（レイアウト・見出し・その他・table・header・footer・ハンバーガー・btn・戻るボタン)
**************************************************/
/*------------------------------
基本スタイル ※変更不可
------------------------------*/
.sp { display: none; }
.tb { display: none; }	
.pc { display: block; }
/*------------------------------
レイアウト ※変更不可
------------------------------*/
.all_bg::before{
 background-size: 1920px;
}
.wraper {
  min-height: calc(100vh - 405px);
}
/*wrap共通*/
.wrap{
  padding: 100px 0 0;
}
.wrap-b{
  padding-bottom: 100px;
}
/*------------------------------
見出し h1-h6 ※変更不可
------------------------------*/
h2 {
  font-size: 30px;
  font-size: 3.0rem;
}
h3 {
  font-size: 24px;
  font-size: 2.4rem;
}
h4 {
  font-size: 22px;
  font-size: 2.2rem;
}
h5 {
  font-size: 20px;
  font-size: 2.0rem;
}
.lead01,
.lead02{
  font-size: 48px;
  font-size: 4.8rem;
}
.lead01 span,
.lead02 span{
  font-size: 30px;
  font-size: 3.0rem;
  font-weight: normal;
}
/*------------------------------
PCヘッダー、Gナビ共通 ※変更不可
------------------------------*/
/* Kv */
.kv-box{
  height: 500px;
}
.kv-inner{
  margin-top: 70px;
}
.kv-box hr{
  width: 50%;
  border-top: 1px solid #dcdcdc;
  position: absolute;
  top: 140px;
}
/* PCヘッダー */
#pc-header{
  position: relative;
  width: 50%;
  padding: 20px 0;
  display: flex;
  justify-content: space-between;
}
#pc-header .logo {
  width: 90px;
}
#pc-header .inner {
  width: calc(100% - 100px);
}
#pc-header .inner .tel {
  text-align: right;
  font-size: 15px;
  font-size: 1.5rem;
}
/* gnav */
#pc-header .nav01{
  padding-top: 5px;
  display: flex;
  justify-content: flex-end;
}
#pc-header .nav01 li.saiyo a{
  display: block;
  width: 130px;
  height: 30px;
  line-height: 30px;
  background: #0f7b89;
  text-align: center;
  color: #fff;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
}
#pc-header .nav01 li.con a{
  display: block;
  width: 130px;
  height: 30px;
  line-height: 30px;
  margin-left: 10px;
  background: #403938;
  text-align: center;
  color: #fff;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
}
#pc-header .nav02 {
  display: flex;
  justify-content: flex-end;
  margin-top: 5px;
}
#pc-header .nav02 li{
  margin-left: 25px;
}
#pc-header .nav02 li a{
  font-size: 15px;
  font-size: 1.5rem;
  color: #000;
  font-weight: bold;
}
#pc-header .nav02 li a:hover{
  text-decoration: underline;
}

/*------------------------------
フッター ※変更不可
------------------------------*/

/**************************************************
TOP
***************************************************/
/*------------------------------
企業理念
------------------------------*/
#top #mission .text-box {
  margin-bottom: 400px;
  background: linear-gradient(90deg,#fff 0%,#fff 50%,transparent 50%,transparent 100%);
}
#top #mission .text-box .img{
  width: 660px;
  bottom: -400px;
  left: 15%;
}
/*------------------------------
事業内容
------------------------------*/
#top #services .box{
  padding: 40px;
}
/*------------------------------
会社概要
------------------------------*/
#top #outline .box{
  width: 53%;
  background: rgb(255, 255, 255);
  padding: 20px;
}
#top #outline{
  background-size: 40%;
  background-position: top 20% right 15%;
}
#top #outline table{
  width: 90%;
  margin: auto;
}
/*------------------------------
採用情報
------------------------------*/
#top #recruit .text-box{
  margin-top: 100px;
  background: linear-gradient(90deg,transparent 0%, transparent 40%,#fff 40%,#fff 100%);
}
#top #recruit .img{
  width: 48%;
  max-width: 800px;
  position: absolute;
  top: -100px;
  right: 10%;
}
#top #recruit .text-box .text{
  margin-bottom: 30px;
}
#top #recruit .btn-box01{
  margin-left: 0;
    text-align: left;
}
/*------------------------------
お問い合わせ
------------------------------*/
#top #contact .contact-box {
  padding: 50px 0;
}
#top #contact .contact-box .box {
  padding: 40px;
}
/**************************************************
下層　共通
***************************************************/
/* Kv */
#recruit .kv-box .kv,
#contact .kv-box .kv,
#thanks .kv-box .kv,
#error .kv-box .kv,
#privacy .kv-box .kv{
  background-position: right -225px top 0;
}
/* con-box */
#recruit .con-box,
#contact .con-box,
#thanks .con-box,
#error .con-box,
#privacy .con-box{
  padding: 7% 8%;
}
/**************************************************
採用情報
***************************************************/
/*------------------------------
con01～con03
------------------------------*/
/* con01 */

/* con02 */

/* con03 */

/* contact */
#recruit #contact .contact-box{
  background-position: left -10% top 0;
  padding: 7% 0;
}
#recruit #contact .contact-box .wrap-m{
  padding-left: 5%;
  
}
/**************************************************
お問い合わせフォーム
***************************************************/


}/*================== PC(min-width: 1000px)ここまで ==================*/

@media screen and (min-width: 1400px){
  /**************************************************
2. 共通（レイアウト・見出し・その他・table・header・footer・ハンバーガー・btn・戻るボタン)
**************************************************/
/*------------------------------
SPヘッダー、Gナビ共通 ※変更不可
------------------------------*/
/* Kv */
.kv-box{
  height: 550px;
}
/*------------------------------
フッター ※変更不可
------------------------------*/
#footer ul.iso-mark{
  width:  37%;
}
/**************************************************
下層　Kv共通
***************************************************/
/* Kv */
#recruit .kv-box .kv,
#contact .kv-box .kv,
#thanks .kv-box .kv,
#error .kv-box .kv,
#privacy .kv-box .kv{
  background-position: left 750px top 0;
}
/**************************************************
採用情報
***************************************************/
/* contact */
#recruit #contact .contact-box{
  background-position: left -30% top 0;
}
#recruit #contact .contact-box .wrap-m{
  padding-left: 0;
  
}

}/*================== PC(min-width: 1400px)ここまで ==================*/