@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@4.0.0/dist/css/yakuhanjp.css");
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanmp.min.css");
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho&display=swap");
.block.block-concept .block__inner {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .block.block-concept .block__inner {
    padding-top: 130px;
    padding-top: 34.6666666667vw;
  }
}
.block.block-concept .block-textArea {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 767px) {
  .block.block-concept .block-textArea {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .block.block-concept .block-textArea {
    padding-top: 90px;
    padding-top: 10.4651162791vh;
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  .block.block-concept .block-textArea {
    padding-top: 130px;
    padding-top: 15.1162790698vh;
  }
}
.block.block-concept .block__btn {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .block.block-concept .block__btn {
    margin-left: auto;
    margin-top: 2.5rem;
  }
}
@media screen and (min-width: 768px) {
  .block.block-concept .block__btn {
    position: absolute;
    top: 670px;
    top: 77.9069767442vh;
    right: 0;
  }
}
.block.block-concept .block__btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 200px;
  width: 23.2558139535vh;
  height: 46px;
  height: 5.3488372093vh;
  font-size: 16px;
  font-size: 1.8604651163vh;
  color: #fff;
  background: -webkit-gradient(linear, left top, right top, from(#752727), color-stop(#752727), color-stop(#602828), to(#602828));
  background: linear-gradient(to right, #752727, #752727, #602828, #602828);
  padding-inline: 1em;
}
@media (any-hover: hover) {
  .block.block-concept .block__btn a {
    -webkit-transition: 0.3s;
    transition: 0.3s;
    text-decoration: none;
  }
  .block.block-concept .block__btn a:hover {
    opacity: 0.4;
  }
}
.block.block-concept .block__btn a.--arrow {
  position: relative;
}
.block.block-concept .block__btn a.--arrow:before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1em;
  background-image: url(../../img/common/btn_arrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 30px;
  width: 3.488372093vh;
  height: 12px;
  height: 1.3953488372vh;
}
.block.--block01 {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .block.--block01 {
    width: 960px;
    width: 111.6279069767vh;
    padding-bottom: 40px;
    padding-bottom: 4.6511627907vh;
  }
}
@media screen and (min-width: 768px) {
  .block.--block01 .block__inner {
    margin-left: 0;
  }
}
.block.--block01 .block-textArea {
  position: relative;
}
@media screen and (max-width: 767px) {
  .block.--block01 .block-textArea {
    padding-top: 150px;
    padding-top: 40vw;
    padding-bottom: 130px;
    padding-bottom: 34.6666666667vw;
    margin-bottom: 0;
  }
}
.block.--block01 .block__ttl__img {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  width: 230px;
  width: 61.3333333333vw;
  margin-bottom: 1.9em;
}
@media screen and (min-width: 768px) {
  .block.--block01 .block__ttl__img {
    height: 108px;
    height: 12.5581395349vh;
    margin-bottom: 60px;
    margin-bottom: 6.976744186vh;
  }
}
@media screen and (max-width: 767px) {
  .block.--block01 .block-textArea {
    padding-bottom: 130px;
    padding-bottom: 34.6666666667vw;
  }
}
.block.--block02 .block__inner {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media screen and (max-width: 767px) {
  .block.--block02 .block__inner {
    padding-top: 0;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.block.--block02 .block-imgArea {
  position: relative;
}
@media screen and (max-width: 767px) {
  .block.--block02 .block-imgArea {
    margin-inline: -5.5vw;
    margin-bottom: 140px;
    margin-bottom: 20vw;
  }
}
@media screen and (min-width: 768px) {
  .block.--block02 .block-imgArea {
    height: 605px;
    height: 70.3488372093vh;
  }
}
.block.--block02 .block-imgArea .capt {
  position: absolute;
  right: 0;
  bottom: -1.5em;
}
@media screen and (min-width: 768px) {
  .block.--block02 .block-imgArea .capt {
    bottom: 0;
  }
}
.block.--block02 .block-textArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.block.--block04 .block__txt {
  white-space: nowrap;
}
.block.--block04 .block__txt .c-red__dark {
  font-weight: bold;
}
.block.--block04 .block__txt small {
  display: block;
  line-height: 1;
  margin-bottom: 0.65em;
}
.important {
  border: 1px solid rgba(0, 0, 0, 0.3);
  padding: 1em 0em;
}
@media screen and (min-width: 768px) {
  .important {
    padding: 2em 3em;
  }
}
.important .important__txt {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .important .important__txt {
    font-size: min(1.2727272727vw, 1.4rem);
  }
}
@media screen and (max-width: 767px) {
  .important .important__txt {
    font-size: 3.0555555556vw;
  }
}
.important strong {
  font-weight: 500;
}/*# sourceMappingURL=page-top.css.map */