@charset "UTF-8";
/* ================================================== */
/* トップページ */
/* ================================================== */
#index {
  /*=== タイトル ===*/
  /*=== 共通 ===*/
  /* ===== 背景オブジェクト ===== */
  /*=== 会社概要 ===*/
  /*=== アクセスマップ ===*/
}
#index .page-title {
  width: 80%;
  max-width: 1400px;
  padding: 200px 0 100px;
  margin: 0 auto;
}
@media screen and (max-width: 640px) {
  #index .page-title {
    padding: 80px 0 80px;
  }
}
#index .contents {
  position: relative;
  overflow-x: hidden;
}
#index .contents .wrap {
  position: relative;
  width: 80%;
  max-width: 1000px;
  margin: 0 auto;
  max-width: 1000px;
  z-index: 1;
}
#index h2 {
  font-size: 38px;
  font-size: 2.375rem;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  margin-bottom: 0.6em;
  transition: 1s ease-in-out;
}
#index h2::after {
  content: attr(data-jp);
  font-size: 20px;
  font-size: 1.25rem;
  font-family: "Noto Sans JP", sans-serif;
  margin-left: 1.2em;
}
@media screen and (max-width: 640px) {
  #index h2 {
    font-size: 28px;
    font-size: 1.75rem;
  }
  #index h2::after {
    font-size: 13px;
    font-size: 0.8125rem;
    display: block;
    margin-left: 0;
  }
}
#index h3 {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 1em;
}
@media screen and (max-width: 640px) {
  #index h3 {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
#index .bg-object {
  position: absolute;
  pointer-events: none;
}
#index .s01-bg {
  width: 60%;
  max-width: 500px;
  min-width: 260px;
}
@media screen and (min-width: 1421px) {
  #index .s01-bg {
    right: -13%;
    top: 3%;
  }
}
@media screen and (max-width: 1420px) {
  #index .s01-bg {
    right: -18%;
    top: 3%;
  }
}
@media screen and (max-width: 768px) {
  #index .s01-bg {
    right: -28%;
    top: 1%;
  }
}
#index .profile table {
  width: 100%;
  line-height: 2;
  border-top: solid 1px #000;
  border-bottom: solid 1px #000;
}
#index .profile table tr:not(:last-child) {
  border-bottom: dashed 1px #000;
}
#index .profile table th,
#index .profile table td {
  padding: 0.8em;
}
#index .profile table th {
  white-space: nowrap;
  width: 140px;
}
#index .profile table li {
  padding-left: 1em;
  text-indent: -1em;
}
#index .profile table li::before {
  content: "・";
}
#index .profile table .box-wrap {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0 15%;
}
@media screen and (max-width: 640px) {
  #index .profile table tr {
    display: block;
    padding: 1em 0;
  }
  #index .profile table th,
#index .profile table td {
    display: block;
    padding: 0;
  }
  #index .profile table th {
    width: 100%;
  }
}
#index .access-map {
  margin-top: 200px;
}
#index .access-map .google-map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 400px;
}
#index .access-map .google-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 640px) {
  #index .access-map {
    margin-top: 80px;
  }
  #index .access-map .google-map {
    padding-top: 240px;
  }
}

/*# sourceMappingURL=index.css.map */
