img {
  max-width: initial;
  width: 100%;
}

/* ***************#footer_recruit_sec********************** */
#footer_recruit_sec {
  margin-bottom: 10rem;
}

#footer_recruit_sec .footer_recruit_key {
  background-image: url(../img/news/news-footer-recruit.png);
  background-repeat: no-repeat;
  background-size: cover;
}

.footer_recruit_key h3 {
  font-size: 3em;
  font-weight: bold;
  text-align: center;
  padding-top: 4rem;
}

.footer_recruit_key h3 div {
  margin-top: -0.8em;
}

.footer_recruit_key h4 {
  padding: 2vw 0 5vw 0;
  font-size: 2em;
  font-weight: bold;
  text-align: center;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.footer_recruit_key div span {
  font-size: 0.3em;
  font-weight: bold;
  text-align: center;
  margin-top: -0.5em;
  position: relative;
}

.footer_recruit_key .icon:before {
  content: '';
  position: absolute;
  top: 2px;
  left: -15px;
  bottom: 0;
  /* display: block; */
  margin: auto;
  background: url(../img/icn_sec_title.png)no-repeat 50%/cover;
  width: 8px;
  height: 6px;
}

#footer_recruit_sec .footer_recruit_industry_wrap {
  display: flex;
  border-top: 2px solid #74c345;
  border-bottom: 1px solid #e7e7e7;
}

.footer_recruit_industry_wrap .footer_recruit_industry {
  width: 33.33%;
}

.footer_recruit_industry_wrap .footer_recruit_industry:nth-child(2) {
  border-left: 1px solid #e7e7e7;
  border-right: 1px solid #e7e7e7;
}

.footer_recruit_industry h5 {
  font-size: 1.2em;
  font-weight: bold;
  position: relative;
  margin-bottom: 1em;
}

.footer_recruit_industry h5:after {
  content: '　　　';
  position: absolute;
  top: 2px;
  bottom: 0;
  margin: auto;
  margin-left: 2vw;
  background: url(../img/news/news-footer-line.png)no-repeat 50%/cover;
  width: 2vw;
  height: 1px;
}

.footer_recruit_industry span {
  font-size: 0.78em;
}

.footer_recruit_industry div:first-child {
  min-height: 180px;
}

.footer_recruit_industry div:last-child {
  padding: 2em;
}

.footer_recruit_industry:last-child div:last-child {
  padding-top: 1.5em;
}

/*************************#greeting**********************/
#greeting .inner {
  width: 100%;
  margin-bottom: 5rem;
}

.greeting_mess_wrap {
  position: relative;
}

.ceo_photo {
  width: 50%;
  position: absolute;
  left: 50%;
  top: -10vw;
  z-index: 50;
}

.greeting_mess {
  width: 95%;
  margin: 10vw auto 0;
  background-color: #f1ffe7;
  padding: 2rem 8rem 4rem 5rem;
}

.greeting_mess h3 {
  color: #62c41a;
  font-size: 1.5rem;
  font-weight: bold;
}

.greeting_mess h3 span {
  position: relative;
}

.line_icn:after {
  content: '　　　';
  position: absolute;
  top: 2px;
  bottom: 0;
  margin: auto;
  margin-left: 1vw;
  background: url(../img/company/line-black.png)no-repeat 50%/cover;
  width: 1vw;
  height: 1px;
}

.greeting_mess h3 div {
  font-size: 0.5em;
  color: #000;
  margin-left: 1vw;
}

.greeting_text {
  font-size: 0.875em;
  line-height: 1.5;
  padding: 1.5vw 1.4vw 0.2vw 0;
}

.ceo_name {
  margin-left: 70%;
  margin-top: 0.5em;
  width: 10vw;
}

/* ****************#overview***************** */
#overview .inner {
  width: 100%;
}

#overview h3 {
  color: #fff;
  font-size: 1.5rem;
  font-weight: bold;
  text-align: right;
  background-image: url(../img/company/over_viewbg.png);
  background-repeat: no-repeat;
  padding: 6vw;
  width: 50%;
  background-position-x: -2em;
  -webkit-background-size: cover;
  background-size: cover;
}

#overview h3 span {
  position: relative;
}

.line_icn:after {
  content: '　　　';
  position: absolute;
  top: 2px;
  bottom: 0;
  margin: auto;
  margin-left: 1vw;
  background: url(../img/company/line-black.png)no-repeat 50%/cover;
  width: 1vw;
  height: 1px;
}

#overview h3 div {
  font-size: 0.6em;
  color: #fff;
  margin-left: 1vw;
}

/*.overview_tbl*/
table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

.overview_tbl_wrap {
  width: 100%;
	max-width:1000px;
  margin: 0 auto;
  position: relative;
}

.overview_tbl_inner {
  position: relative;
}

.overview_tbl_inner table {
  position: absolute;
  top: -5vw;
}

.overview_tbl_wrap tr {
  border-bottom: 1px #d2d2d2 solid;
}

.overview_tbl_wrap tr:first-child {
  border-top: 2px #78c50b solid;
}

.overview_tbl_wrap th {
  background-color: #f6f6f6;
  width: 29.5%;
  vertical-align: middle;
  line-height: 2.5;
  padding: 0.5em 0;
}

.overview_tbl_wrap td {
  background-color: #fff;
  padding-left: 6em;
  line-height: 3;
  width: 70.5%;
}

/************************#philosophy*************************/
#philosophy .inner {
  position: relative;
}

#philosophy .philosophy_title_wrap {
  background-image: url(../img/company/philosophy_img.png);
  background-repeat: no-repeat;
  width: 50%;
  position: absolute;
  z-index: 10;
  right: 0;
  padding: 8% 3%;
  top: -12vw;
}

#philosophy h3 {
  color: #fff;
  font-size: 1.5rem;
  font-weight: bold;
}

#philosophy h3 span {
  position: relative;
}

#philosophy h3 div {
  font-size: 0.6em;
  color: #fff;
  margin-left: 1vw;
}

#philosophy .introduction {
  width: 80.4%;
  background-color: #f5f5f5;
  padding: 9.5vw 4.8vw;
  line-height: 1.7;
  margin-top: 13vw;
}

.introduction h4 {
  font-size: 0.85em;
  font-weight: bold;
}

.introduction div {
}

#philosophy .history {
  width: 50%;
  position: absolute;
  background-color: #f1ffe7;
  right: 5%;
  bottom: -16vw;
  z-index: 25;
  padding: 4vw 13vw 5vw 4.5vw;
  line-height: 1.6;
}

#philosophy .history h3 {
  color: #62c41a;
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 1rem;
}

#philosophy .history h3 span {
  position: relative;
}

#philosophy .history h3 div {
  font-size: 0.6em;
  color: #000;
  margin-left: 1vw;
}

.history_content {
  font-size: 0.85em;
}

/***********************#accecc_map**************************/
#accecc_map .inner {
  width: 100%;
  margin-top: 23vw;
  margin-bottom: 2vw;
}

#accecc_map h3 {
  color: #62c41a;
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 2rem;
  text-align: center;
}

#accecc_map h3 span {
  position: relative;
}

#accecc_map h3 div {
  font-size: 0.6em;
  color: #000;
  margin-left: 1vw;
}

#accecc_map .accecc_detail {
  background-color: #fcfcfc;
  padding: 2.5rem 0;
}

.accecc_detail dl {
  width: 56%;
  display: flex;
  margin: 0 auto;
  font-size: 0.85em;
}

.accecc_detail dt {
  color: #acacac;
}

.accecc_detail dd {
  padding-left: 4.5vw;
}

.accecc_detail dt:nth-child(3) {
  padding-left: 7vw;
}

.alternative_map {
  margin-top: -2vw;
}

/* ****************.kv ******************* */
.sidebar {
  min-height: 285px;
  background-color: #62c41a;
}

.sidebar .breadcramb {
  background-color: #1c9f07;
}

.sidebar .breadcramb ul {
  display: flex;
}

.under-page-header {
  width: 130%;
  margin-left: 50%;
  bottom: 3em;
  position: absolute;
  left: -50%;
  color: #fff;
  font-size: 0.7em;
}

.under-page-header a{ color: #fff;}

.under-page-header ul {
  padding: 1.7em;
}

.under-page-header ul li {
  padding: 0 0.6em;
}

.under_leyer_kv {
  width: 100%;
}

.under_leyer_kv img,
.sns_badge img {
  max-width: initial;
  width: 100%;
}

.kv {
  margin-bottom: 70px;
}

#particles-js {
  width: 50%;
}

/***********h1.under_leyer_title**********************/
h1.under_leyer_title {
  position: absolute;
  z-index: 100;
  position: absolute;
  top: 40%;
  left: 40%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
  margin: auto;
  font-size: 3em;
  font-weight: bold;
}

h1.under_leyer_title div {
  font-size: 0.3em;
  font-weight: normal;
  text-align: center;
  margin-top: -0.5em;
}

h1.under_leyer_title span.icon {
  position: relative;
}

h1.under_leyer_title span.icon:before {
  content: '';
  position: absolute;
  top: 2px;
  left: -15px;
  bottom: 0;
  /* display: block; */
  margin: auto;
  background: url(../img/icn_sec_title.png)no-repeat 50%/cover;
  width: 8px;
  height: 6px;
}

.pc_hidden {
  display: none;
}

/*breakpoint***********************************************/
@media (max-width: 1023px) {
  .kv {
    margin: 0 auto;
  }

  .current_color {
    background-color: #78c50b;
    border-color: #78c50b;
    color: #fff;
  }

  /* ***************#footer_recruit_sec********************** */
  #footer_recruit_sec .footer_recruit_industry_wrap {
    display: flex;
    flex-wrap: wrap;
  }

  .footer_recruit_industry_wrap .footer_recruit_industry {
    width: 100%;
  }

  .footer_recruit_key h3 {
    font-size: 2em;
    padding-top: 1em;
  }

  .footer_recruit_key h4 {
    font-size: 1.2em;
  }

  .footer_recruit_industry {
    display: flex;
  }

  .footer_recruit_industry div:last-child {
    padding: 0.6em;
  }

  .footer_recruit_industry h5 {
    font-size: 0.78em;
    margin-bottom: 0.5em;
  }

  .footer_recruit_industry span {
    font-size: 0.6em;
    line-height: 1;
    display: block;
  }

  .footer_recruit_industry span br {
    display: none;
  }

  .footer_recruit_industry div:first-child {
    min-height: initial;
    min-width: 51vw;
    overflow: hidden;
  }

  .footer_recruit_industry div:first-child img {
    transform: scale(1.5) translateX(-0.1em) translateY(0.1em);
  }


  /***********#greeting****************/
  .greeting_mess {
    width: 100%;
    margin-top: 15vw;
    background-color: transparent;
    padding: 0;
    position: relative;
  }

  .greeting_mess h3 {
    text-align: center;
    margin-top: -8vw;
  }

  .ceo_photo {
    width: 93%;
    right: 0;
  }

  .ceo_photo-sp {
    width: 92.8%;
    position: absolute;
    left: 7.2%;
    top: 14vw;
  }

  .greeting_text {
    background-color: #f1ffe7;
    margin-top: 5vw;
    padding-top: 23vw;
    width: 100%;
    padding-left: 8vw;
    padding-right: 6vw;
    padding-bottom: 11vw;
    font-size: 14px
  }

  .greeting_text span {
    text-align: right;
  }

  .greeting_text span img {
    width: 35%;
  }

  /************#overview***************/
  #overview .inner {
    width: 100%;
  }

  #overview h3 {
    width: 92.8%;
    -webkit-background-size: cover;
    background-size: 107%;
    background-position-x: -2vw;
  }

  .overview_tbl_wrap {
    width: 100%;
  }

  .overview_tbl_inner table {
    top: -2vw;
  }

  table {
    font-size: 0.65em;
  }

  .overview_tbl_wrap td {
    padding-left: 1em;
    line-height: 1.9;
  }

  #philosophy .philosophy_title_wrap {
    width: 93%;
    left: 7%;
    padding-top: 5vw;
    background-size: cover;
    padding-bottom: 26vw;
    top: -28vw;
  }

  #philosophy h3 {
    font-size: 1rem;
  }

  #philosophy h3 div {
    margin-left: 24vw;
  }

  #philosophy .history {
    position: static;
    width: 100%;
  }

  #philosophy .introduction {
    width: 100%;
    margin-top: 40vw;
    padding-top: 17vw;
    padding-left: 7vw;
    padding-right: 7vw;
  }

  .introduction h4 {
    font-size: 12px;
  }

  .introduction div {
    font-size: 12px;
  }

  .history_content {
    font-size:12px;
    padding-left: 3vw;
    padding-top: 3vw;
  }

  #philosophy .history h3 {
    color: #62c41a;
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 0;
  }

  #philosophy .history h3 div {
    font-size: 0.6em;
    margin-left: 6vw;
    margin-top: -0.5em;
  }

  #philosophy .history {
    padding-right: 7vw;
  }

  /****************.accesmap****************************/
  .accecc_detail-sp {
    width: 100%;
    background-color: #fcfcfc;
    padding: 2.5rem 0;
  }

  .accecc_detail-sp div {
    font-size: 0.5rem;
    padding-left: 0.2rem;
  }

  .access_wrap div:nth-of-type(odd) {
    width: 2rem;
    color: #acacac;
  }

  .access_wrap div:nth-of-type(2) {
    width: 16rem;
  }

  .access_wrap div:nth-of-type(4) {
    width: 12rem;
  }

  .access_wrap {
    display: flex;
  }

  /********************************************/
  .under-page-header ul {
    padding: 1em 0.5em;
    font-size: 0.4em;
  }

  div.submenu {
    display: none;
  }

  div.swiper-container {
    margin-top: 70px;
    /* transform: scale(1.8); */
  }

  h1.under_leyer_title {
    left: 50%;
    font-size: 2em;
  }

  .breadcramb {
    background-color: #1c9f07;
    position: absolute;
    bottom: 0;
    left: 0;
  }
	
	
  .breadcramb a{color: #fff;}	

  .breadcramb ul {
    color: #fff;
    display: flex;
    font-size: 0.7em;
    padding: 1em;
  }

  .breadcramb ul li {
    padding-right: 1em;
  }

  .sp_hidden {
    display: none;
  }

  .pc_hidden {
    display: block;
  }
}

/**break*/
