.company-greetings {
  margin-bottom: min(5.556vw, 80px);
  overflow-x: hidden;
}
@media only screen and (max-width: 767px) {
  .company-greetings {
    margin-bottom: 20.513vw;
  }
}
.company-greetings__inner {
  padding-top: min(11.111vw, 160px);
  margin: 0 auto;
  width: var(--container-width-pc);
}
@media only screen and (max-width: 767px) {
  .company-greetings__inner {
    padding-top: 2.564vw;
    width: var(--container-width-sp);
  }
}
.company-greetings .profile {
  position: relative;
}
.company-greetings .profile + .profile {
  margin-top: min(6.25vw, 90px);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile + .profile {
    margin-top: 8.205vw;
  }
}
.company-greetings .profile__inner {
  width: var(--container-width-pc);
  height: 100%;
  height: min(29.167vw, 420px);
  position: relative;
  z-index: 10;
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner {
    width: 84.615vw;
    height: auto;
  }
}
.company-greetings .profile__inner::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  z-index: 8;
}
.company-greetings .profile__inner dl {
  position: relative;
  z-index: 9;
  text-align: center;
  display: grid;
  grid-template-columns: 1fr;
  align-content: center;
  width: min(34.722vw, 500px);
  height: 100%;
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl {
    align-content: initial;
    padding-top: 12.821vw;
    padding-bottom: 87.179vw;
    width: auto;
    height: auto;
  }
}
.company-greetings .profile__inner dl dt {
  padding-bottom: min(0.972vw, 14px);
  position: relative;
  font-family: var(--family-jp);
  font-size: var(--size-18px);
  font-weight: var(--weight-regular);
  line-height: var(--line-height-170);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dt {
    font-size: var(--size-18px);
    font-weight: var(--weight-regular);
    line-height: var(--line-height-170);
  }
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dt {
    font-family: var(--family-jp);
    font-size: var(--size-16px);
    font-weight: var(--weight-regular);
    line-height: var(--line-height-170);
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .company-greetings .profile__inner dl dt {
    font-size: var(--size-16px);
    font-weight: var(--weight-regular);
    line-height: var(--line-height-170);
  }
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dt {
    padding-bottom: 2.564vw;
  }
}
.company-greetings .profile__inner dl dt::after {
  background-color: var(--primary-red);
  content: "";
  display: block;
  position: absolute;
  right: 0;
  left: 0;
  bottom: -1px;
  margin: auto;
  width: min(34.722vw, 500px);
  height: 1px;
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dt::after {
    width: 61.538vw;
  }
}
.company-greetings .profile__inner dl dd {
  padding-top: min(0.417vw, 6px);
  font-family: var(--family-jp);
  font-size: var(--size-40px);
  font-weight: var(--weight-bold);
  line-height: var(--line-height-150);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dd {
    font-size: var(--size-40px);
    font-weight: var(--weight-bold);
    line-height: var(--line-height-150);
  }
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dd {
    font-family: var(--family-jp);
    font-size: var(--size-32px);
    font-weight: var(--weight-bold);
    line-height: var(--line-height-150);
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .company-greetings .profile__inner dl dd {
    font-size: var(--size-32px);
    font-weight: var(--weight-bold);
    line-height: var(--line-height-150);
  }
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dd {
    padding-top: 2.564vw;
  }
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dd:has(.type--engligh) {
    padding-top: 2.564vw;
  }
}
.company-greetings .profile__inner dl dd span.generations {
  margin-right: min(2.431vw, 35px);
  font-family: var(--family-jp);
  font-size: var(--size-26px);
  font-weight: var(--weight-bold);
  line-height: var(--line-height-150);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dd span.generations {
    font-size: var(--size-26px);
    font-weight: var(--weight-bold);
    line-height: var(--line-height-150);
  }
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dd span.generations {
    font-family: var(--family-jp);
    font-size: var(--size-20px);
    font-weight: var(--weight-bold);
    line-height: var(--line-height-150);
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .company-greetings .profile__inner dl dd span.generations {
    font-size: var(--size-20px);
    font-weight: var(--weight-bold);
    line-height: var(--line-height-150);
  }
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dd span.generations {
    margin-right: 0;
    display: block;
  }
}
.company-greetings .profile__inner dl dd span.generations.type--english {
  margin-right: 0;
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile__inner dl dd span.generations.type--english {
    display: inline-block;
  }
}
.company-greetings .profile::before {
  background-image: url(/assets/img/company/greetings/background.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  display: inline-block;
  content: "";
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 7;
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile::before {
    background-image: url(/assets/img/company/greetings/background_sp.jpg);
  }
}
.company-greetings .profile::after {
  border: 1px solid var(--line-light_gray);
  position: absolute;
  display: inline-block;
  content: "";
  bottom: min(2.083vw, 30px);
  width: 100%;
  height: 100%;
  z-index: 6;
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile::after {
    bottom: 2.564vw;
  }
}
.company-greetings .profile.type--img__left {
  margin-right: calc((100vw - var(--container-width-pc)) / 2 * -1);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile.type--img__left {
    margin-right: -7.692vw;
  }
}
.company-greetings .profile.type--img__left .profile__inner {
  padding-left: min(40.278vw, 580px);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile.type--img__left .profile__inner {
    padding-left: 0;
    margin-left: 3.846vw;
  }
}
.company-greetings .profile.type--img__left .profile__inner .portrait {
  position: absolute;
  bottom: 0;
  height: min(40.278vw, 580px);
  width: min(31.528vw, 454px);
  left: min(6.944vw, 100px);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile.type--img__left .profile__inner .portrait {
    height: 84.615vw;
    width: 64.872vw;
    left: 9.744vw;
    left: 0;
    right: 0;
    margin: auto;
  }
}
.company-greetings .profile.type--img__left::before {
  background-position: left center;
  border-top-left-radius: min(4.028vw, 58px);
  left: calc(min(1.944vw, 28px) + 1px);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile.type--img__left::before {
    border-top-left-radius: 14.872vw;
    left: calc(2.564vw + 1px);
  }
}
.company-greetings .profile.type--img__left::after {
  border-top-left-radius: min(5.208vw, 75px);
  left: 1px;
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile.type--img__left::after {
    border-top-left-radius: 16.923vw;
  }
}
.company-greetings .profile.type--img__right {
  margin-left: calc((100vw - var(--container-width-pc)) / 2 * -1);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile.type--img__right {
    margin-left: -7.692vw;
  }
}
.company-greetings .profile.type--img__right .profile__inner {
  margin-left: auto;
  padding-left: min(1.25vw, 18px);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile.type--img__right .profile__inner {
    padding-left: 0;
    margin-right: 3.846vw;
  }
}
.company-greetings .profile.type--img__right .profile__inner .portrait {
  position: absolute;
  bottom: 0;
  height: min(40.278vw, 580px);
  width: min(29.583vw, 426px);
  right: min(5.556vw, 80px);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile.type--img__right .profile__inner .portrait {
    height: 84.615vw;
    width: 62.051vw;
    right: 11.282vw;
  }
}
.company-greetings .profile.type--img__right::before {
  border-top-right-radius: min(4.028vw, 58px);
  background-position: right center;
  right: calc(min(1.944vw, 28px) + 1px);
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile.type--img__right::before {
    border-top-right-radius: 14.872vw;
    right: calc(2.564vw + 1px);
  }
}
.company-greetings .profile.type--img__right::after {
  border-top-right-radius: min(5.208vw, 75px);
  right: 1px;
}
@media only screen and (max-width: 767px) {
  .company-greetings .profile.type--img__right::after {
    border-top-right-radius: 16.923vw;
  }
}
.company-greetings .message {
  margin-top: min(4.167vw, 60px);
}
@media only screen and (max-width: 767px) {
  .company-greetings .message {
    margin-top: 10.256vw;
  }
}
.company-greetings .c-list__primary-list.local--kind--statement dl dt {
  font-weight: var(--weight-bold);
}

.area--hokkaido .profile.type--img__left > .profile__inner > .portrait {
  left: min(6.181vw, 89px);
  width: min(31.667vw, 456px);
}
@media only screen and (max-width: 767px) {
  .area--hokkaido .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 66.41vw;
  }
}

.area--touhoku .profile.type--img__left > .profile__inner > .portrait {
  left: min(9.583vw, 138px);
  width: min(25.278vw, 364px);
}
@media only screen and (max-width: 767px) {
  .area--touhoku .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 52.821vw;
  }
}

.area--kanshinetsu .profile.type--img__left > .profile__inner > .portrait {
  left: min(4.514vw, 65px);
  width: min(32.708vw, 471px);
}
@media only screen and (max-width: 767px) {
  .area--kanshinetsu .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 68.462vw;
  }
}

.area--shutoken .profile.type--img__left > .profile__inner > .portrait {
  left: min(4.236vw, 61px);
  width: min(35.347vw, 509px);
}
@media only screen and (max-width: 767px) {
  .area--shutoken .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 73.846vw;
  }
}

.area--chubu .profile.type--img__left > .profile__inner > .portrait {
  left: min(7.083vw, 102px);
  width: min(30.694vw, 442px);
}
@media only screen and (max-width: 767px) {
  .area--chubu .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 64.103vw;
  }
}

.area--nishinihon .profile.type--img__left > .profile__inner > .portrait {
  left: min(6.319vw, 91px);
  width: min(32.083vw, 462px);
}
@media only screen and (max-width: 767px) {
  .area--nishinihon .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 67.179vw;
  }
}

.area--kyushu .profile.type--img__left > .profile__inner > .portrait {
  left: min(7.778vw, 112px);
  width: min(28.889vw, 416px);
}
@media only screen and (max-width: 767px) {
  .area--kyushu .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 60.513vw;
  }
}

.area--kft .profile.type--img__left > .profile__inner > .portrait {
  left: min(8.542vw, 123px);
  width: min(26.806vw, 386px);
}
@media only screen and (max-width: 767px) {
  .area--kft .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 56.154vw;
  }
}

.area--yashima .profile.type--img__left > .profile__inner > .portrait {
  left: min(4.583vw, 66px);
  width: min(34.861vw, 502px);
}
@media only screen and (max-width: 767px) {
  .area--yashima .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 72.821vw;
  }
}

.area--niigata .profile.type--img__left > .profile__inner > .portrait {
  left: min(5.556vw, 80px);
  width: min(32.847vw, 473px);
}
@media only screen and (max-width: 767px) {
  .area--niigata .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 68.718vw;
  }
}

.area--deliciouscook .profile.type--img__left > .profile__inner > .portrait {
  left: min(8.611vw, 124px);
  width: min(27.431vw, 395px);
}
@media only screen and (max-width: 767px) {
  .area--deliciouscook .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 57.436vw;
  }
}

.area--lxtp .profile.type--img__left > .profile__inner > .portrait {
  left: min(7.5vw, 108px);
  width: min(28.264vw, 407px);
}
@media only screen and (max-width: 767px) {
  .area--lxtp .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 58.974vw;
  }
}

.area--tdlogitem .profile.type--img__left > .profile__inner > .portrait {
  left: min(7.5vw, 108px);
  width: min(29.306vw, 422px);
}
@media only screen and (max-width: 767px) {
  .area--tdlogitem .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 61.282vw;
  }
}

.area--kbs .profile.type--img__left > .profile__inner > .portrait {
  left: min(5.625vw, 81px);
  width: min(33.403vw, 481px);
}
@media only screen and (max-width: 767px) {
  .area--kbs .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 70vw;
  }
}

.area--kbe .profile.type--img__left > .profile__inner > .portrait {
  left: min(3.889vw, 56px);
  width: min(36.736vw, 529px);
}
@media only screen and (max-width: 767px) {
  .area--kbe .profile.type--img__left > .profile__inner > .portrait {
    left: 0;
    width: 76.923vw;
  }
}/*# sourceMappingURL=company-greetings.css.map */