@charset "UTF-8";

/* PC固定ページ 企業情報 */
#page_company .common_fv {
  background: #F8F8F8;
}

#company_greeting {
  padding: 80px 0 110px;
  background: #F8F8F8;
}

#company_greeting .media {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 60px;
  margin-top: 40px;
}

#company_greeting .image {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 400px;
  flex: 0 0 400px;
}

#company_greeting .image img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 400/530;
}

#company_greeting .contents {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

#company_greeting .dl-wrap {
  max-width: 400px;
  margin-top: 50px;
}

#company_greeting .dl {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  gap: 10px;
}

#company_greeting .dt {
  min-width: 80px;
  font-weight: 500;
}

#company_greeting .name {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin-left: auto;
  margin-top: -65px;
}

#company_greeting .name img {
  width: 284px;
  margin-left: auto;
}

#company_about {
  padding: 100px 0 0;
}

#company_about .table_wrap {
  padding-bottom: 80px;
  margin-top: 40px;
}

#company_about table {
  width: 100%;
  border-collapse: collapse;
}

#company_about .th,
#company_about .td {
  border: 1px solid #BFBFBF;
  border-left: none;
  border-right: none;
  padding: 16px 30px;
}

#company_about .th:last-of-type,
#company_about .td:last-of-type {
  border-bottom: none;
}

#company_about .th {
  position: relative;
  width: 25%;
}

#company_about .th::before {
  content: "";
  position: absolute;
  width: 1px;
  height: calc(100% - 10px);
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  background: #BFBFBF;
}

#company_about .td {
  width: 75%;
  padding: 16px 40px;
}

#company_about .list {
  text-indent: -1em;
  padding-left: 1em;
}

#company_about .map {
  position: relative;
  width: 100%;
  aspect-ratio: 600/150;
}

#company_about .map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#consultation_content {
  padding: 80px 0 110px;
}

@media (max-width: 750px) {

  /* SP固定ページ 企業情報 */
  #company_greeting {
    padding: 10.26vw 0 15.38vw;
  }

  #company_greeting .media {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 6.15vw;
    margin-top: 5.13vw;
  }

  #company_greeting .image {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 100%;
  }

  #company_greeting .image {
    max-width: 80%;
    margin-inline: auto;
  }

  #company_greeting .text {
    line-height: 1.5;
  }

  #company_greeting .dl-wrap {
    max-width: 100%;
    margin-top: 5.13vw;
  }

  #company_greeting .dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.03vw;
  }

  #company_greeting .dl:not(:first-of-type) {
    margin-top: 4.1vw;
  }

  #company_greeting .dt {
    min-width: auto;
  }

  #company_greeting .dd {
    font-size: 3.5vw;
  }

  #company_greeting .name {
    width: 100%;
    border-bottom: 1px solid #E5E5E5;
    padding-bottom: 5.13vw;
    margin-left: 0;
    margin-top: 8.21vw;
  }

  #company_greeting .name img {
    width: 52vw;
    margin-left: auto;
  }

  #company_greeting .box_title {
    font-size: 4.36vw;
  }

  #company_greeting .box_text {
    font-size: 4.87vw;
    margin-top: 1.03vw;
  }

  #company_about {
    padding: 15.38vw 0 0;
  }

  #company_about .table_wrap {
    padding-bottom: 10.26vw;
    margin-top: 6.15vw;
  }

  #company_about .th,
  #company_about .td {
    font-size: 3.33vw;
    padding: 3.08vw 1.03vw;
  }

  #company_about .th:last-of-type,
  #company_about .td:last-of-type {
    border-bottom: none;
  }

  #company_about .th {
    width: 23%;
  }

  #company_about .list:not(:first-of-type) {
    margin-top: 1.28vw;
  }

  #company_about .th::before {
    height: calc(100% - 2.05vw);
  }

  #company_about .td {
    width: 77%;
    padding: 3.08vw 2.56vw;
  }

  #company_about .map {
    aspect-ratio: 600/320;
  }
}