/*-----------------------------
Company
-----------------------------*/
main {
  letter-spacing: 0.8px;
}
main h2 {
  font-size: 18px;
  font-weight: 400;
}
main dl {
  padding-left: 30px;
}

/*-----------------------------
企業理念
-----------------------------*/
main section.philosophy {
  padding-bottom: 30px;
}
main section.philosophy dt {
  padding-top: 16px;
  padding-bottom: 5px;
}
main section.philosophy dd {
  padding-left: 16px;
  line-height: 1.4;
}

/*-----------------------------
会社概要
-----------------------------*/
main section.overview h2 {
  padding-bottom: 20px;
}
main section.overview dl div {
  padding-left: 1.1em;
  padding-bottom: 7px;
  line-height: 1.4;
  display: flex;
  position: relative;
}
main section.overview dl div::before {
  content: "【";
  position: absolute;
  left: 0;
}
main section.overview dt {
  margin-right: 10px;
  padding-right: 1.12em;
  flex-basis: 4.38em;
  text-align-last: justify;
  text-justify: inter-ideograph;
  position: relative;
}
main section.overview dt::after {
  content: "】";
  position: absolute;
  left: 53px;
}
main section.overview div:last-child dt {
  flex-basis: 5.4em;
  text-align-last: auto;
  text-justify: auto;
}
main section.overview div:last-child dt::after {
  left: 69px;
}
main section.overview div:last-child dd {
  flex: 1;
}
main section.overview dd:nth-child(3) {
  padding-left: 1em;
}
main section.overview dd a:hover {
  opacity: 0.7;
  transition: 0.5s;
}
main section.overview dd img {
  padding-right: 3px;
  vertical-align: -3px;
}

/*-----------------------------
Responsive
-----------------------------*/
@media (max-width: 559px) {
  main dl {
    padding-left: 0;
  }
  main section.overview dl div {
    display: block;
    position: relative;
  }
  main section.overview dt {
    margin-right: 0;
    text-align-last: auto;
    text-justify: auto;
    position: static;
  }
  main section.overview dt::after {
    position: static;
  }
  main section.overview dd:nth-child(3) {
    padding-left: 0;
  }
}
