@charset "UTF-8";
#officePhilosophy .logo {
  width: 274px;
  margin-inline: auto; }
#officePhilosophy .philosophy-txt {
  margin-top: 48px; }
#officePhilosophy .philosophy-list {
  margin-top: 48px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px; }
#officePhilosophy .philosophy-box {
  padding-left: 32px;
  counter-increment: number 1;
  border-left: 1px solid #0091db; }
  #officePhilosophy .philosophy-box dt {
    font-size: 2.0rem;
    color: #0091db;
    padding-left: 48px;
    position: relative; }
    #officePhilosophy .philosophy-box dt:before {
      content: counter(number);
      background: #eff1f2;
      border-radius: 8px 0 0;
      display: block;
      font: normal normal 700 1.4rem/1.6 "Lato", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, Osaka, "MS PGothic", "M+ 1p", sans-serif;
      width: 32px;
      line-height: 32px;
      text-align: center;
      position: absolute;
      top: 0;
      left: 0; }
  #officePhilosophy .philosophy-box dd {
    margin-top: 24px; }

#officeGreet .greetsec .phtbox {
  width: 420px; }
#officeGreet .greetsec .txtbox {
  width: 652px; }
#officeGreet .greetsec .sign {
  margin-top: 40px;
  text-align: right; }
  #officeGreet .greetsec .sign span {
    display: block; }
  #officeGreet .greetsec .sign-name {
    width: 142px;
    margin: 14px 0 0 auto; }

#officeProfile .profilesec + .profilesec {
  margin-top: 64px; }
#officeProfile .profilebox .phtbox {
  width: 560px; }
#officeProfile .profilebox .txtbox {
  width: 520px; }
#officeProfile .profilebox .name span {
  display: block; }
#officeProfile .profilebox .name-jp {
  margin-top: 10px;
  font-size: 2.8rem; }
#officeProfile .profilebox .name-en {
  margin-top: 8px;
  font-size: 1.4rem;
  line-height: 1;
  color: #0071bd; }
#officeProfile .detailbox h4 {
  font-size: 2.2rem;
  margin-top: 40px; }
#officeProfile .detailbox .detaillist .row {
  width: 540px;
  border-left: 1px solid #0071bd;
  padding: 0 0 24px 31px; }
#officeProfile .detailbox .detaillist .ttl {
  font-size: 1.8rem;
  color: #0071bd; }
#officeProfile .detailbox .detaillist .detail {
  margin-top: 24px; }
#officeProfile .affiliation li + li {
  margin-top: 12px; }
#officeProfile .career li + li {
  margin-top: 12px; }
#officeProfile .career dt {
  font-weight: 500;
  width: 110px; }
#officeProfile .career dd {
  width: calc(100% - 110px); }

#officeOverview table {
  margin-top: 44px; }
#officeOverview .phtbox {
  margin-top: 80px;
  gap: 20px; }
  #officeOverview .phtbox .pht {
    width: 550px; }

@media screen and (max-width: 600px) {
  #officePhilosophy .logo {
    max-width: 274px;
    width: 76.1%; }
  #officePhilosophy .philosophy-list {
    margin-top: 64px;
    grid-template-columns: 1fr; }
  #officePhilosophy .philosophy-box {
    padding-left: 6.67%; }

  #officeGreet .greetsec .phtbox {
    width: 100%; }
  #officeGreet .greetsec .txtbox {
    width: 100%;
    margin-top: 48px; }

  #officeProfile .profilebox .phtbox {
    width: 100%; }
  #officeProfile .profilebox .txtbox {
    width: 100%;
    margin: 40px 0 0; }
  #officeProfile .detailbox .detaillist .row {
    width: 100%;
    padding: 0 0 24px 5.2%; }
    #officeProfile .detailbox .detaillist .row + .row {
      margin-top: 40px; }

  #officeOverview .phtbox {
    margin-top: 64px; }
    #officeOverview .phtbox .pht {
      width: 100%; } }
