.company_profile {
  padding-top: 36px;
  padding-bottom: 27px;
}
@media screen and (min-width: 768px) {
  .company_profile {
    padding-top: 60px;
    padding-bottom: 70px;
  }
}
@media screen and (min-width: 980px) {
  .company_profile {
    padding-top: 48px;
    padding-bottom: 107px;
  }
}
.company_profile .section_header {
  margin-bottom: 15px;
}
@media screen and (min-width: 768px) {
  .company_profile .section_header {
    margin-bottom: 34px;
  }
}

.office_list .section_header {
  margin-bottom: 24px;
}
@media screen and (min-width: 768px) {
  .office_list .section_header {
    margin-bottom: 36px;
  }
}
@media screen and (min-width: 980px) {
  .office_list .section_header {
    margin-bottom: 48px;
  }
}
.office_list .grid_123 {
  gap: 35px;
}
@media screen and (min-width: 768px) {
  .office_list .grid_123 {
    gap: 43px 50px;
  }
}
@media screen and (min-width: 980px) {
  .office_list .grid_123 {
    gap: 83px 30px;
  }
}

#main .office_list {
  padding-bottom: 90px;
}
@media screen and (min-width: 768px) {
  #main .office_list {
    padding-top: 78px;
    padding-bottom: 110px;
  }
}
@media screen and (min-width: 980px) {
  #main .office_list {
    padding-top: 41px;
    padding-bottom: 110px;
  }
}

.office_image {
  width: 100%;
  aspect-ratio: 335/187;
  border: 1px solid #d7d8d9;
}
.office_info {
  margin-top: 27px;
  padding-inline: 30px;
}
@media screen and (min-width: 768px) {
  .office_info {
    padding-inline: 0;
  }
}
@media screen and (min-width: 980px) {
  .office_info {
    margin-top: 24px;
    padding-inline: 30px;
  }
}
.office_name {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .office_name {
    font-size: 28px;
    letter-spacing: 0.05em;
  }
}
.office_address {
  margin-top: 8px;
  font-size: 15px;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .office_address {
    margin-top: 10px;
    font-size: 16px;
    letter-spacing: 0.1em;
  }
}
.office_contact {
  margin-top: 23px;
  font-size: 15px;
  letter-spacing: 0.05em;
  margin-bottom: 5px;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .office_contact {
    margin-top: 23px;
    font-size: 16px;
    letter-spacing: 0.1em;
    margin-bottom: 11px;
  }
}
.office_contact--last {
  margin-top: 0;
  margin-bottom: 20px;
}
@media screen and (min-width: 980px) {
  .office_link {
    margin-left: 6px;
  }
}