@charset "UTF-8";
/* CSS Document */

/*
 * プロジェクト本文用CSS
 * プロジェクトページで使用する
 */

.project-content {
  line-height: 1.8;
}

.project-content :is(p, h2, h3, h4) {
  display: flow-root;
}

.project-content :is(p, h2, h3, h4)::before,
.project-content :is(p, h2, h3, h4)::after {
  content: '';
  display: table;
}

.project-content p {
  font-size: 16px;
  line-height: 28px;
  margin: 24px 0;
}

.project-content p:not(:has(img))::before {
  margin-top: -5px;
}

.project-content p:not(:has(img))::after {
  margin-bottom: -5px;
}

.project-content strong {
  font-weight: bold;
}

.project-content h1 {
  background: #222;
  color: #fff;
  font-size: 28px;
  font-weight: bold;
  line-height: 40px;
  margin: 56px 0 24px;
  padding: 10px 16px;
  text-align: center;
}

.project-content h2 {
  font-size: 25px;
  font-weight: bold;
  line-height: 36px;
  margin: 48px 0 24px;
}

.project-content h2::before {
  margin-top: -5.5px;
}

.project-content h2::after {
  margin-bottom: -5.5px;
}

.project-content h3 {
  font-size: 22px;
  font-weight: bold;
  line-height: 32px;
  margin: 40px 0 24px;
}

.project-content h3::before {
  margin-top: -5px;
}

.project-content h3::after {
  margin-bottom: -5px;
}

.project-content h4 {
  font-size: 20px;
  font-weight: bold;
  line-height: 28px;
  margin: 32px 0 24px;
}

.project-content h4::before {
  margin-top: -4px;
}

.project-content h4::after {
  margin-bottom: -4px;
}

.project-content :first-child {
  margin-top: 0;
}

.project-content :last-child {
  margin-bottom: 0;
}
