.mainVisual h1 {
  top: 52px;
  right: 59px;
  width: 340px;
}
@media (max-width: 767px) {
  .mainVisual h1 {
    top: 3.259452412vw;
    right: 3.259452412vw;
    width: 28.0312907432vw;
  }
}
@media (max-width: 767px) {
  .mainVisual figure img {
    min-height: 158px;
  }
}
.main {
  padding-bottom: 0;
}
.contents {
  background-color: transparent;
}

.lede_txt {
  margin-block: 63px 60px;
  color: #333;
  text-align: center;
  letter-spacing: 0.04em;
  line-height: 1.3;
  font-weight: 500;
  font-size: 3.125rem;
}
@media (max-width: 767px) {
  .lede_txt {
    width: 100%;
    margin-block: 9.1264667536vw 6.518904824vw;
  }
}
@media (max-width: 767px) {
  .lede_txt {
    font-size: 5.2151238592vw;
  }
}

.eyecatch {
  padding: 70px;
  background-color: #fff;
  border-radius: 13px;
}
@media (max-width: 767px) {
  .eyecatch {
    width: 100%;
    padding: 9.1264667536vw 3.9113428944vw;
    border-radius: 0 0 1.3037809648vw 1.3037809648vw;
  }
}
.eyecatch figure img {
  width: 100%;
}
@media (max-width: 767px) {
  .eyecatch figure img {
    width: 45%;
    margin-inline: auto;
  }
}
.eyecatch figure figcaption {
  margin-top: 65px;
  text-align: center;
  color: #a92424;
  font-weight: bold;
  font-size: 1.6875rem;
  line-height: 1.4814814815;
}
@media (max-width: 767px) {
  .eyecatch figure figcaption {
    margin-top: 5.2151238592vw;
    font-size: 3.9113428944vw;
  }
}

.btn_box {
  margin-top: 70px;
  text-align: center;
}
@media (max-width: 767px) {
  .btn_box {
    margin-top: 6.518904824vw;
  }
}
.btn_box .btn {
  display: inline-block;
  width: 384px;
  margin-inline: auto;
  padding: 30px 10px 25px;
  background-color: #a92424;
  border-radius: 10px;
  text-decoration: none;
  color: #fff;
  font-weight: bold;
  font-size: 2.1875rem;
  line-height: 1;
  letter-spacing: 0;
}
@media (max-width: 767px) {
  .btn_box .btn {
    width: 50%;
    font-size: 3.3898305085vw;
    padding: 4.6936114733vw 3.9113428944vw;
    border-radius: 1.3037809648vw;
  }
}
@media (any-hover: hover) {
  .btn_box .btn:hover {
    opacity: 0.8;
  }
}

.explanation_contents + .btn_box {
  margin-block: 0 70px;
}
@media (max-width: 767px) {
  .explanation_contents + .btn_box {
    margin-block: 0 6.518904824vw;
  }
}

.explanation_box + .explanation_box {
  margin-top: 70px;
}
@media (max-width: 767px) {
  .explanation_box + .explanation_box {
    margin-top: 9.1264667536vw;
  }
}
.explanation_box .explanation_body {
  -webkit-padding-before: 53px;
          padding-block-start: 53px;
}
@media (max-width: 767px) {
  .explanation_box .explanation_body {
    -webkit-padding-before: 5.2151238592vw;
            padding-block-start: 5.2151238592vw;
  }
}
.explanation_box .explanation_body.sec01 {
  background-color: #def1fb;
}
.explanation_box .explanation_body.sec02 {
  background-color: #fffac6;
}

.col_wrap {
  display: flex;
  gap: 50px;
  flex-wrap: wrap;
}
.col_wrap + .col_wrap {
  margin-top: 35px;
}
@media (max-width: 767px) {
  .col_wrap {
    gap: 3.9113428944vw;
    flex-direction: column;
  }
  .col_wrap + .col_wrap {
    margin-top: 6.518904824vw;
  }
}
.col_wrap .col {
  flex: 1 1 0;
  min-width: 0;
}
.col_wrap .col.w-557 {
  flex: 0 0 557px;
}
@media (max-width: 767px) {
  .col_wrap .col.w-557 {
    flex: 1 1 0;
  }
}
.col_wrap dl {
  -webkit-margin-before: 8px;
          margin-block-start: 8px;
}
@media (max-width: 767px) {
  .col_wrap dl {
    -webkit-margin-before: 0;
            margin-block-start: 0;
  }
}
.col_wrap dl dt {
  font-weight: bold;
  color: #333;
  font-size: 1.4375rem;
  letter-spacing: 0;
}
@media (max-width: 767px) {
  .col_wrap dl dt {
    font-size: 4.5632333768vw;
  }
}
.col_wrap dl dd {
  margin-top: 10px;
  color: #333;
  font-size: 1.0625rem;
  line-height: 1.7647058824;
  letter-spacing: 0;
  font-weight: normal;
}
@media (max-width: 767px) {
  .col_wrap dl dd {
    margin-top: 2.0860495437vw;
    font-size: 3.3898305085vw;
    line-height: 1.5294117647;
  }
}
.col_wrap ul {
  list-style: none;
  color: #333;
  padding: 0;
}
.col_wrap ul li {
  -webkit-padding-start: 1em;
          padding-inline-start: 1em;
  text-indent: -1em;
  font-size: 1.0625rem;
  line-height: 1.7647058824;
  letter-spacing: -0.04em;
  font-weight: normal;
}
@media (max-width: 767px) {
  .col_wrap ul li {
    font-size: 3.3898305085vw;
  }
  .col_wrap ul li + p {
    margin-top: 2em;
  }
}
.col_wrap ul + p {
  margin-top: 40px;
  color: #333;
}
@media (max-width: 767px) {
  .col_wrap ul + p {
    margin-top: 5.2151238592vw;
  }
}
.col_wrap figure {
  margin-top: 16px;
}
.col_wrap figure + p {
  margin-top: 20px;
}
@media (max-width: 767px) {
  .col_wrap figure {
    margin-top: 2.0860495437vw;
  }
  .col_wrap figure + p {
    margin-top: 2.6075619296vw;
  }
}
.col_wrap figure img {
  width: 100%;
}

ol {
  list-style: none;
  -webkit-margin-before: -20px;
          margin-block-start: -20px;
  -webkit-padding-start: 66px;
          padding-inline-start: 66px;
  color: #333;
}
@media (max-width: 767px) {
  ol {
    margin-block: 1.3037809648vw -2.6075619296vw;
    -webkit-padding-start: 8.6049543677vw;
            padding-inline-start: 8.6049543677vw;
  }
}
ol li {
  display: flex;
}
ol li::before {
  content: "";
  display: inline-block;
  width: 56px;
  height: 60px;
  flex: 56px 0 0;
  margin-left: -66px;
  margin-right: 0.5em;
}
@media (max-width: 767px) {
  ol li::before {
    width: 7.3011734029vw;
    height: 7.8226857888vw;
    flex: 7.3011734029vw 0 0;
    margin-left: -8.6049543677vw;
  }
}
ol li:nth-of-type(1)::before {
  background: url("../img/friends/icon_num1.png") no-repeat center;
  background-size: contain;
}
ol li:nth-of-type(2)::before {
  background: url("../img/friends/icon_num2.png") no-repeat center;
  background-size: contain;
}
ol li:nth-of-type(3)::before {
  background: url("../img/friends/icon_num3.png") no-repeat center;
  background-size: contain;
}
ol li:nth-of-type(4)::before {
  background: url("../img/friends/icon_num4.png") no-repeat center;
  background-size: contain;
}
ol li:nth-of-type(5)::before {
  background: url("../img/friends/icon_num5.png") no-repeat center;
  background-size: contain;
}
ol li + li {
  margin-top: 2em;
}
@media (max-width: 767px) {
  ol li + li {
    margin-top: 4.1720990874vw;
  }
}
ol dl {
  -webkit-margin-before: 13px;
          margin-block-start: 13px;
}
@media (max-width: 767px) {
  ol dl {
    -webkit-margin-before: 0.3911342894vw;
            margin-block-start: 0.3911342894vw;
  }
}
ol dl dt {
  font-weight: bold;
  font-size: 1.4375rem;
}
@media (max-width: 767px) {
  ol dl dt {
    font-size: 4.5632333768vw;
  }
}
ol dl dd {
  margin-top: 8px;
  font-size: 1.0625rem;
  line-height: 1.7647058824;
}
@media (max-width: 767px) {
  ol dl dd {
    margin-top: 1.0430247718vw;
    font-size: 3.3898305085vw;
  }
}
@media (max-width: 767px) {
  ol dl .figure01 {
    width: 100%;
    margin-inline: auto;
    padding: 3.9113428944vw;
    background-color: #fff;
  }
}
@media (max-width: 767px) {
  ol dl .figure01 figure {
    width: 50%;
    margin: auto;
  }
}
@media (max-width: 767px) {
  ol dl .figure01 figcaption {
    margin-top: 3.9113428944vw;
    margin-inline: -50%;
    font-size: 3.3898305085vw;
  }
}
/*# sourceMappingURL=friends.css.map */