.section-label {
  font-size: 13px;
  color: #666;
  letter-spacing: 0.08em;
  margin-bottom: 16px;
}

.corporate-hero {
  padding-top: 100px;
  padding-bottom: 110px;
  background: #eff0f5;
}

.corporate-hero h2 {
  font-size: 52px;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 24px;
}

.corporate-hero-text {
  font-size: 17px;
  line-height: 2;
  max-width: 760px;
  color: #333;
}

.corporate-issue,
.corporate-overview,
.corporate-strength,
.corporate-voice,
.corporate-flow,
.corporate-philosophy,
.corporate-faq,
.corporate-note,
.corporate-contact {
  padding: 110px 0;
}

.corporate-overview,
.corporate-flow,
.corporate-contact {
  background: #eff0f5;
}

.corporate-target,
.corporate-faq {
  background: #f7f7f7;
}

.corporate-issue-grid,
.corporate-overview-grid,
.corporate-philosophy-grid {
  display: flex;
  gap: 64px;
  align-items: flex-start;
}

.corporate-issue-head,
.corporate-overview-head {
  width: 300px;
  flex-shrink: 0;
}

.corporate-philosophy-side {
  width: 360px;
  flex-shrink: 0;
}

.corporate-issue-body,
.corporate-overview-body,
.corporate-philosophy-body {
  flex: 1;
  min-width: 0;
}

.corporate-issue-head h3,
.corporate-overview-head h3,
.corporate-strength h3,
.corporate-voice h3,
.corporate-flow h3,
.corporate-philosophy h3,
.corporate-faq h3,
.corporate-note h3 {
  font-size: 34px;
  font-weight: 500;
  line-height: 1.7;
  margin-bottom: 28px;
}

.corporate-contact h4 {
  font-size: 28px;
  font-weight: 500;
  line-height: 1.7;
  margin: 0 0 24px;
}

.corporate-issue-body p,
.corporate-overview-body p,
.corporate-flow-note p,
.corporate-philosophy-body p,
.corporate-contact-text {
  font-size: 17px;
  line-height: 2.1;
  color: #333;
}

.corporate-issue-body p + p,
.corporate-overview-body p + p,
.corporate-flow-note p + p,
.corporate-philosophy-body p + p {
  margin-top: 18px;
}

.corporate-point-list,
.corporate-mini-list,
.corporate-note-list {
  margin-top: 26px;
}

.corporate-point-list li,
.corporate-mini-list li,
.corporate-note-list li {
  position: relative;
  padding-left: 18px;
  font-size: 16px;
  line-height: 2;
  color: #333;
}

.corporate-point-list li::before,
.corporate-mini-list li::before,
.corporate-note-list li::before {
  content: "—";
  position: absolute;
  left: 0;
  top: 0;
}

.corporate-overview-points {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 34px;
}

.corporate-overview-point {
  border: 1px solid #d9d9d9;
  background: #fff;
  padding: 22px 20px;
  font-size: 18px;
  line-height: 1.8;
  box-sizing: border-box;
}

.corporate-strength-grid,
.corporate-voice-grid,
.corporate-flow-grid {
  display: grid;
  gap: 24px;
}

.corporate-strength-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 40px;
}

.corporate-voice-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 40px;
}

.corporate-flow-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 40px;
}

.corporate-strength-card,
.corporate-voice-card,
.corporate-flow-item,
.corporate-philosophy-box {
  background: #fff;
  border: 1px solid #d9d9d9;
  box-sizing: border-box;
}

.corporate-strength-card {
  padding: 30px 24px;
}

.corporate-strength-card h4,
.corporate-faq-item h4 {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.7;
  margin-bottom: 14px;
}

.corporate-strength-card p,
.corporate-voice-card p,
.corporate-faq-item p {
  font-size: 15px;
  line-height: 2;
  color: #333;
}

.corporate-voice-card {
  padding: 28px 24px;
}

.corporate-voice-name {
  font-size: 18px !important;
  font-weight: 500;
  margin-bottom: 18px;
  line-height: 1.8 !important;
  color: #111 !important;
}

.corporate-flow-item {
  padding: 28px 20px;
  text-align: center;
}

.corporate-flow-item span {
  display: block;
  font-size: 14px;
  color: #666;
  margin-bottom: 12px;
}

.corporate-flow-item p {
  font-size: 20px;
  line-height: 1.8;
}

.corporate-flow-note {
  margin-top: 36px;
}

.corporate-philosophy-box {
  padding: 28px 24px;
}

.corporate-philosophy-title {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.8;
  margin-bottom: 14px;
}

.corporate-faq-item {
  padding: 28px 0;
  border-top: 1px solid #d9d9d9;
}

.corporate-faq-item:last-child {
  border-bottom: 1px solid #d9d9d9;
}

.corporate-note-list {
  border-top: 1px solid #d9d9d9;
  padding-top: 18px;
}

.corporate-note-list li + li {
  margin-top: 10px;
}

.corporate-contact {
  text-align: center;
}

.corporate-contact-info {
  margin-top: 28px;
}

.corporate-contact-info p {
  font-size: 17px;
  line-height: 2;
  color: #333;
}

.corporate-contact-info a {
  color: #000;
  text-decoration: none;
}

.corporate-cta-buttons {
  margin-top: 34px;
}

.corporate-cta-buttons .btn {
  margin: 0 10px 16px;
}

@media screen and (max-width: 812px) {
  .corporate-hero {
    padding-top: 16vw;
    padding-bottom: 14vw;
  }

  .corporate-hero h2 {
    font-size: 8vw;
    line-height: 1.5;
    margin-bottom: 5vw;
  }

  .corporate-hero-text,
  .corporate-issue-body p,
  .corporate-overview-body p,
  .corporate-flow-note p,
  .corporate-philosophy-body p,
  .corporate-contact-text,
  .corporate-contact-info p {
    font-size: 4vw;
    line-height: 2;
  }

  .corporate-issue,
  .corporate-overview,
  .corporate-strength,
  .corporate-voice,
  .corporate-flow,
  .corporate-philosophy,
  .corporate-faq,
  .corporate-note,
  .corporate-contact {
    padding: 14vw 0;
  }

  .corporate-issue-grid,
  .corporate-overview-grid,
  .corporate-philosophy-grid {
    display: block;
  }

  .corporate-issue-head,
  .corporate-overview-head,
  .corporate-philosophy-side {
    width: 100%;
  }

  .corporate-philosophy-side {
    margin-top: 8vw;
  }

  .corporate-issue-head h3,
  .corporate-overview-head h3,
  .corporate-strength h3,
  .corporate-voice h3,
  .corporate-flow h3,
  .corporate-philosophy h3,
  .corporate-faq h3,
  .corporate-note h3 {
    font-size: 6.2vw;
    line-height: 1.7;
    margin-bottom: 5vw;
  }

  .corporate-contact h4 {
    font-size: 5.6vw;
    line-height: 1.7;
    margin: 0 0 5vw;
  }

  .corporate-point-list li,
  .corporate-mini-list li,
  .corporate-note-list li,
  .corporate-strength-card p,
  .corporate-voice-card p,
  .corporate-faq-item p {
    font-size: 4vw;
    line-height: 2;
  }

  .corporate-overview-points,
  .corporate-strength-grid,
  .corporate-voice-grid,
  .corporate-flow-grid {
    display: block;
  }

  .corporate-overview-point,
  .corporate-strength-card,
  .corporate-voice-card,
  .corporate-flow-item {
    margin-bottom: 4vw;
  }

  .corporate-overview-point:last-child,
  .corporate-strength-card:last-child,
  .corporate-voice-card:last-child,
  .corporate-flow-item:last-child {
    margin-bottom: 0;
  }

  .corporate-overview-point {
    font-size: 4.4vw;
    line-height: 1.8;
    padding: 5vw 4vw;
  }

  .corporate-strength-card h4,
  .corporate-faq-item h4 {
    font-size: 5vw;
    line-height: 1.7;
  }

  .corporate-voice-name {
    font-size: 4.6vw !important;
  }

  .corporate-flow-item p {
    font-size: 4.6vw;
  }

  .corporate-cta-buttons .btn {
    display: block;
    max-width: 320px;
    margin: 0 auto 12px;
    text-align: center;
  }
}