.fs-xs {
  font-size: clamp(0.75rem, 0.772rem + -0.0704vw, 0.6875rem);
}

.fs-sm {
  font-size: clamp(0.8rem, 0.17vw + 0.76rem, 0.89rem);
}

.fs-base {
  font-size: clamp(1rem, 0.34vw + 0.91rem, 1.19rem);
}

.fs-md {
  font-size: clamp(1.25rem, 0.61vw + 1.1rem, 1.58rem);
}

.fs-lg {
  font-size: clamp(1.56rem, 1vw + 1.31rem, 2.11rem);
}

.fs-xl {
  font-size: clamp(1.95rem, 1.56vw + 1.56rem, 2.81rem);
}

.fs-xxl {
  font-size: clamp(2.44rem, 2.38vw + 1.85rem, 3.75rem);
}

.fs-xxxl {
  font-size: clamp(3.05rem, 3.54vw + 2.17rem, 5rem);
}

.content_body section {
  margin-bottom: 5rem;
}

@media (min-width: 991px) {
  .content_body section {
    margin-bottom: 7rem;
  }
}

.content_body .story {
  background: url(../img/bg_story.jpg) no-repeat center;
  background-size: cover;
  padding: 4rem 0;
}

@media (min-width: 991px) {
  .content_body .story {
    padding: 7rem 0;
  }
}

.content_body h2 {
  font-size: clamp(2.44rem, 2.38vw + 1.85rem, 3.75rem);
  color: #b93a3a;
  font-weight: bolder;
  margin-bottom: 3rem;
}

.content_body h3,
.content_body .h3 {
  font-size: clamp(1.56rem, 1vw + 1.31rem, 2.11rem);
  color: #b93a3a;
  font-weight: bolder;
  margin-bottom: 2rem;
}

.content_header {
  background: url(../img/bg_miyadaizu_main.jpg) no-repeat center;
  background-size: cover;
  display: flex;
  align-items: stretch;
  height: 70vh;
  min-height: 600px;
}

.content_header .row {
  width: 100%;
  display: flex;
  align-items: stretch;
  margin-left: 0 !important;
}

.content_header .col-md-5 {
  background-color: rgba(255, 220, 172, 0.9);
  display: flex;
  align-items: center; /* 上下中央配置に変更 */
  justify-content: flex-start;
  padding: 3rem; /* 上下の余白を均等に */
  height: 100%;
}

.content_header h1 {
  margin-bottom: 1rem;
  text-align: center;
}

.content_header h1::after {
  width: 300px;
  height: 300px;
  content: "";
  display: block;
  background: url(../img/img_sq_miyadaizu.jpg) no-repeat center;
  background-size: contain;
  border-radius: 250px;
  /* margin-right: 2rem; */
}

@media screen and (min-width: 991px) and (orientation: portrait) {
  .content_header h1::after {
    width: 300px;
    height: 300px;
    margin: 1rem auto 1rem auto;
  }
}
@media screen and (min-width: 991px) and (orientation: landscape) {
  .content_header h1::after {
    width: 300px;
    height: 300px;
    margin: 1rem auto 1rem auto;
  }
}
