@charset "UTF-8";
@font-face {
  font-family: "matissem";
  font-display: swap;
  src: url("/common/font/matisse-m.woff") format("woff"), url("/common/font/matisse-m.otf") format("truetype");
}
/*--------------------------------------------------- */
/* image_block */
/*--------------------------------------------------- */
.image_block {
  height: 140px;
  width: 100%;
}
.image_block img {
  height: 140px;
  width: 100%;
  object-fit: cover;
}

@media (max-width: 480px) {
  .image_block {
    height: 100px;
    width: 100%;
  }
  .image_block img {
    height: 100px;
    width: 100%;
    object-fit: cover;
  }
}
/*--------------------------------------------------- */
/* description */
/*--------------------------------------------------- */
.description {
  margin-top: 72px;
}
.description .title_heading {
  text-align: center;
}
.description .title_heading h1 {
  font-size: 35px;
  font-size: 3.5rem;
  position: relative;
  font-weight: 700;
  letter-spacing: -2px;
  line-height: 1.2em;
}
@media (min-width: 769px) {
  .description .title_heading h1 {
    font-family: "rodinb", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    font-display: swap;
  }
}
.description .title_heading h1:after {
  content: "";
  content: "";
  border-bottom: 2px solid #a1c199;
  width: 57px;
  height: 1px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -32px;
  margin: auto;
  /* style */
}
.description .flex {
  margin-top: 157px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.description .imgFlex {
  width: 38.4%;
}
.description .textFlex {
  width: calc(61.6% - 40px);
}
.description .textFlex .catch {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "Noto Serif JP", "MS P明朝", "MS PMincho", serif;
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: 500;
  line-height: 1.2em;
}
.description .textFlex p {
  margin-top: 25px;
  font-size: 19px;
  font-size: 1.9rem;
  line-height: 1.5em;
  letter-spacing: -0.5px;
}

@media (max-width: 768px) {
  .description .title_heading h1 {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .description .flex {
    margin-top: 80px;
    flex-wrap: wrap;
  }
}
@media (max-width: 768px) and (min-width: 481px) {
  .description .flex {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 768px) {
  .description .imgFlex {
    width: 100%;
  }
  .description .imgFlex img {
    margin: auto;
  }
  .description .textFlex {
    margin-top: 24px;
    width: 100%;
  }
  .description .textFlex .catch {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .description .textFlex p {
    margin-top: 12px;
  }
}
@media (max-width: 480px) {
  .description .title_heading h1 {
    font-size: 20px;
    font-size: 2rem;
  }
  .description .flex {
    margin-top: 60px;
  }
  .description .textFlex .catch {
    font-size: 22px;
    font-size: 2.2rem;
  }
}
