@charset "UTF-8";
/* CSS Document */
@media screen and (max-width: 767px) { /*ウィンドウ幅が最大479pxまでの場合に適用*/
  h1, h2, h3, h4, h5, p {
    font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;
  }
  #header {
    background: #fff;
    width: 100%;
    margin: auto;
    padding: 0 0 10px 0;
  }
  #header h1 img {
    max-width: 50%;
    margin: auto;
    display: block;
  }
  .header_title {
    width: 100%;
    margin: auto;
    background: -moz-linear-gradient(left, blue, deepskyblue);
    background: -webkit-linear-gradient(left, blue, deepskyblue);
    background: -ms-linear-gradient(left, blue, deepskyblue);
    background: linear-gradient(left, blue, deepskyblue);
  }
  p.header_title_in { /*トップのテキスト*/
    /*max-width: 1000px;*/
    text-align: center;
    margin: auto;
    color: #fff;
    font-size: 0.6em;
    line-height: 1.5;
    padding: 5px 2em;
    margin-bottom: 1em;
  }
  .header_right {
    display: none;
  }
  .header_right p.tellink {
    color: orangered;
    text-align: center;
    margin: 5px 0 0 0;
    line-height: 1.2;
    font-size: 60%;
  }
  .header_right p.tellink span a {
    text-align: center;
    color: orangered;
    font-size: 2.2em;
    letter-spacing: 0.1em;
    margin-left: 10px;
  }
  /*************************************************/
  /*トップページ*/
  /*************************************************/
  #main_img .slider img {
    width: 100%;
    background-size: cover;
  }
  .index_title {
    text-align: center;
    font-size: 1em;
    font-weight: bold;
    letter-spacing: 1px;
    color: #000;
    line-height: 1.5;
    margin-top: 2.5em;
    margin-bottom: 2em
  }
  .goaisatu {
    width: 90%;
    margin: auto;
    line-height: 1.5;
    margin-bottom: 1.5em;
  }
  .president_area img {
    width: 100%;
    margin-bottom: 1.5em;
  }
  .president_area > div {
    text-align: center;
  }
  .president_area > div img {
    width: 80%;
  }
  .president_area p.name {
    margin-top: 1em;
  }
	.president_area p:first-of-type{
		text-align: center!important;
		font-weight: bold;
		margin-bottom: 0.5em;
	}
  .slick-dots {
    display: none;
  }
  /*共通コンテンツ*/
  /***************************************************/
  #greet, #company, #results, #sdgs, #recruit {
    overflow: hidden;
    width: 92%;
    margin: auto;
    margin-bottom: 2em;
  }
  #works {
    margin-bottom: 50px;
  }
  #greet h3, #works h3, #company h3, #results h3, #sdgs h3, #recruit h3 {
    font-size: 1.2em;
    font-weight: bold;
    color: #000;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 0em;
    font-family: Arial, Helvetica, "sans-serif";
  }
  #greet h3 span, #works h3 span, #company h3 span, #results h3 span, #sdgs h3 span {
    color: #5e5e5e;
    font-size: 0.5em;
    font-weight: normal;
  }
  h4 {
    text-align: center;
	color: #0080cc;
    font-size: 0.5em !important;
    margin-bottom: 1.5em !important;
  }
  .sdgs_img {
    margin-bottom: 0
  }
  #sdgs img {
    width: 100%;
    margin-bottom: 1.5em;
  }
  #greet p, #works p, #results p, #sdgs p,#recruit p {
    font-size: 0.8em;
    text-align: justify;
    line-height: 1.5
  }
  #greet p.name {
    text-align: center;
    font-size: 100%;
  }
  #works {
    width: 100%;
    background: url("../img/works_back2.gif") center;
    padding: 2em 0;
    background-size: cover;
  }
  .works_in {
    width: 90%;
    margin: auto;
  }
  .flex_area {
    display: inline;
    width: 100%;
    margin-bottom: 2em;
  }
  .flex_in1 {
    text-align: center;
  }
  .flex_in1 img {
    width: 50%;
    margin-bottom: 1em;
  }
  .flex_in2 {
    margin-left: 0;
    width: 100%;
    margin-bottom: 1em
  }
	
.naname {
  padding: 50px 0 0px 0;
  margin-bottom: 80px;
  background-color: #effbff;/*fffbe7*/
  -webkit-transform: skew(0deg, -3deg);
}
	
	
  /*タイトルの線*/
  .head-border {
    display: flex;
    align-items: center;
  }
  .head-border:before, .head-border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
  }
  .head-border:before {
    margin-right: 1rem;
  }
  .head-border:after {
    margin-left: 1rem;
  }
  .bold {
    font-weight: bold;
    margin-bottom: 1em;
    text-align: center !important;
  }
.brnone {
  display: none;
}
  /*FLEXBOX*/
  .cssgrid {
    display: flex;
    width: 100%;
	 justify-content: space-between;
	  flex-wrap: wrap;
  }
  .cssgrid > div {
    width: 100%;
    margin-bottom: 2em;
    min-width: 0;
  }
  .cssgrid > div img {
    width: 100%;
    overflow: hidden;
    margin-bottom: 1em;
  }
  .cssgrid > div p {
    font-size: 0.9em;
    line-height: 1.5;
  }
  .cssgrid h5 {
    text-align: center;
    padding: 0 0 0.5em 0;
    font-weight: bold;
    line-height: 1.5;
  }

.recruit_flex {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.recruit_flex > div {
  width: 50%;
}
.recruit_flex img {
  width: 100%;
}
  .recruit_area p {
	  text-align: justify;
	  line-height: 1.4!important;
	}
  .recruit_area2 p {
	  text-align: justify;
	  line-height: 1.4!important;
	}

	
.seko_flex {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.seko_flex > div {
  width: 48%;
  margin-bottom: 1em;
  min-width: 0;
}
.seko_flex > div img {
  width: 100%;
  overflow: hidden;
  margin-bottom: 0.5em;
}
.seko_flex p{
	line-height: 1;
	}
.recruit_blue span{
	color: #fff;
	text-align: center!important;
}
	
	
  /*マップ*/
  .gmap {
    height: 300px;
  }
  /*テーブル*/
  .kaisha {
    width: 100%;
    margin-bottom: 50px;
	font-size: 90%;
  }
  .kaisha th, .kaisha td {
    border-bottom: 1px solid #ccc;
    padding: 10px;
    font-size: 0.8em;
  }
	.kaisha th{
		width: 20%;
	}
.enkaku th,.enkaku td{
  border-bottom: none;
  padding: 5px 0;
	vertical-align: top;
	font-size: 100%;
}
	.enkaku td{
		padding-right: 10px;
	}
	
	#results .kaisha th,#results .kaisha td{
    border-bottom: 1px solid #ccc;
    padding: 10px;
    font-size: 0.8em;
	}
	
.table_sp {
  overflow: auto;
  white-space: nowrap;
}
	
  .m20 {
    margin: 1em 0;
  }
  td.tel a {
    color: #000000;
  }
  /*フッター*/
  #footer {
    background: #0080cc;
  }
  .footer_in {
    width: 90%;
    margin: auto;
  }
#footer .foot_logo img {
  width: 100%;
  margin-bottom: 10px;
}
  #footer ul {
    display: none;
  }
  #footer p.copy {
    text-align: center;
    font-size: 0.5em;
    color: #000;
    padding: 15px 0;
    background: #ffff;
  }
}