.page-title span::after {
  content: "COMPANY";
}

.company-door {
  margin-top: 60px;
}
@media screen and (max-width: 599px) {
  .company-door {
    margin-top: 30px;
  }
}
.company-door__bn {
  width: 1120px;
  margin: 0 auto;
  display: flex;
  gap: 40px;
  margin-bottom: 60px;
}
@media screen and (max-width: 599px) {
  .company-door__bn {
    width: 100%;
    padding: 0px 20px;
    flex-direction: column;
  }
}
.company-door__bn__greeting {
  flex: 1;
  position: relative;
  z-index: 1;
}
.company-door__bn__greeting::after {
  content: "";
  position: absolute;
  bottom: -20px;
  right: -20px;
  width: 346px;
  aspect-ratio: 346/450;
  background-image: url(../image/company/greeting.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  filter: blur(20px);
  z-index: -1;
}
@media screen and (max-width: 599px) {
  .company-door__bn__greeting::after {
    width: 100%;
    aspect-ratio: 320/230;
    background-image: url(../image/company/greeting_sp.jpg);
  }
}
.company-door__bn__greeting a {
  display: block;
  width: 100%;
  padding: 38px;
  aspect-ratio: 346/450;
  background-repeat: no-repeat;
  background-image: url(../image/company/greeting.jpg);
  background-size: contain;
  position: relative;
  overflow: visible;
}
@media screen and (max-width: 599px) {
  .company-door__bn__greeting a {
    width: 100%;
    padding: 20px 25px;
    aspect-ratio: 320/230;
    background-image: url(../image/company/greeting_sp.jpg);
  }
}
.company-door__bn__greeting a::after {
  position: absolute;
  display: inline-block;
  bottom: 40px;
  right: 40px;
  content: url(../image/common/ico_bn_arrow.svg);
  width: 60px;
  height: 60px;
  background-size: contain;
  filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.8));
  z-index: 5;
}
@media screen and (max-width: 599px) {
  .company-door__bn__greeting a::after {
    bottom: 30px;
    right: 30px;
  }
}
.company-door__bn__greeting a h3::after {
  content: "GREETING";
}
.company-door__bn__outline {
  flex: 1;
  position: relative;
  z-index: 1;
}
.company-door__bn__outline::after {
  content: "";
  position: absolute;
  bottom: -20px;
  right: -20px;
  width: 346px;
  aspect-ratio: 346/450;
  background-image: url(../image/company/outline.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  filter: blur(20px);
  z-index: -1;
}
@media screen and (max-width: 599px) {
  .company-door__bn__outline::after {
    width: 100%;
    aspect-ratio: 320/230;
    background-image: url(../image/company/outline_sp.jpg);
  }
}
.company-door__bn__outline a {
  display: block;
  width: 100%;
  padding: 38px;
  aspect-ratio: 346/450;
  background-repeat: no-repeat;
  background-image: url(../image/company/outline.jpg);
  background-size: contain;
  position: relative;
  overflow: visible;
}
@media screen and (max-width: 599px) {
  .company-door__bn__outline a {
    width: 100%;
    padding: 20px 25px;
    aspect-ratio: 320/230;
    background-image: url(../image/company/outline_sp.jpg);
  }
}
.company-door__bn__outline a::after {
  position: absolute;
  display: inline-block;
  bottom: 40px;
  right: 40px;
  content: url(../image/common/ico_bn_arrow.svg);
  width: 60px;
  height: 60px;
  background-size: contain;
  filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.8));
  z-index: 5;
}
@media screen and (max-width: 599px) {
  .company-door__bn__outline a::after {
    bottom: 30px;
    right: 30px;
  }
}
.company-door__bn__outline a h3::after {
  content: "OUTLINE";
}
.company-door__bn__history {
  flex: 1;
  position: relative;
  z-index: 1;
}
.company-door__bn__history::after {
  content: "";
  position: absolute;
  bottom: -20px;
  right: -20px;
  width: 346px;
  aspect-ratio: 346/450;
  background-image: url(../image/company/history.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  filter: blur(20px);
  z-index: -1;
}
@media screen and (max-width: 599px) {
  .company-door__bn__history::after {
    width: 100%;
    aspect-ratio: 320/230;
    background-image: url(../image/company/history_sp.jpg);
  }
}
.company-door__bn__history a {
  display: block;
  width: 100%;
  padding: 38px;
  aspect-ratio: 346/450;
  background-repeat: no-repeat;
  background-image: url(../image/company/history.jpg);
  background-size: contain;
  position: relative;
  overflow: visible;
}
@media screen and (max-width: 599px) {
  .company-door__bn__history a {
    width: 100%;
    padding: 20px 25px;
    aspect-ratio: 320/230;
    background-image: url(../image/company/history_sp.jpg);
  }
}
.company-door__bn__history a::after {
  position: absolute;
  display: inline-block;
  bottom: 40px;
  right: 40px;
  content: url(../image/common/ico_bn_arrow.svg);
  width: 60px;
  height: 60px;
  background-size: contain;
  filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.8));
  z-index: 5;
}
@media screen and (max-width: 599px) {
  .company-door__bn__history a::after {
    bottom: 30px;
    right: 30px;
  }
}
.company-door__bn__history a h3::after {
  content: "HISTORY";
}