@charset "UTF-8";

/* ==========================================================================
  top_message.css
========================================================================== */

.message {
  padding: 150px 0;
}

.message__wrap {
  display: flex;
  justify-content: space-between;
  gap: 5.3%;
}

.message__wrap.reverse {
  flex-direction: row-reverse;
}

.message__wrap.reverse:last-of-type {
  margin-top: 45px;
}

.message__textbox {
  flex: 1;
}

.message__title {
  border-bottom: 1px solid var(--color-navy);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 1px;
  padding-bottom: 35px;
  margin-bottom: 30px;
}

.message__text {
  font-size: 1.8rem;
  line-height: 2.4;
  margin-bottom: 1.2em;
}

.message__text.text-right {
  margin-top: 30px;
}

.message__text.text-right span {
  display: block;
  font-size: 2.8rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  line-height: 1.5;
}

.text-right {
  text-align: right;
}

.message__img {
  max-width: 350px;
  width: 30%;
}

.message__img:first-of-type img {
  height: 200px;
}

.message__img.large {
  max-width: 310px;
  width: 29%;
}

@media screen and (max-width: 1024px) {
  .message {
    padding: 75px 0;
  }
}

@media screen and (max-width: 768px) {
  .message {
    padding: 30px 0 0;
  }

  .message__wrap {
    flex-direction: column;
  }

  .message__wrap.reverse {
    flex-direction: column;
  }

  .message__wrap.reverse.float {
    display: block;
    overflow: hidden;
  }

  .message__wrap.reverse:last-of-type {
    margin-top: 0;
  }

  .message__textbox {
    width: 100%;
  }

  .message__title {
    font-size: 1.6rem;
    padding-bottom: 30px;
    margin-bottom: 25px;
  }

  .message__text {
    font-size: 1.5rem;
    line-height: 1.8;
    margin-bottom: 25px;
  }

  .message__text p + p {
    margin-top: 1.2em;
  }

  .message__text.text-right {
    margin-top: 0;
  }

  .message__text.text-right span {
    font-size: 2rem;
  }

  .message__wrap.reverse.float .message__img {
    float: right;
    margin-left: 20px;
    width: 51%;
  }

  .message__img:first-of-type img {
    height: auto;
  }

  .message__img.large {
    max-width: 100%;
    width: 55%;
  }
}
