@charset "UTF-8";
.wrapper {
  padding-top: 150px;
  background-color: #fefaf7;
}
@media screen and (max-width: 767px) {
  .wrapper {
    padding-top: 120px;
  }
}
.mv-sub__visual {
  background: url("/_common_n/img/attention/mv.webp") 50% 50% / cover no-repeat;
}
/* -------------------------------- */
.att_title {
  padding: 160px 5% 0;
}
.att_title__inner {
  position: relative;
  max-width: 880px;
  margin: 0 auto;
}
.att_title h2 {
  position: relative;
  text-align: center;
  z-index: 2;
}
.att_title h2 .en {
  display: block;
  font-size: 52px;
  letter-spacing: .05em;
}
.att_title h2 .ja {
  display: block;
  margin-top: 10px;
  color: #e47d6e;
}
@media screen and (max-width: 767px) {
  .att_title {
    padding: 60px 24px 0;
  }
  .att_title h2 .en {
    font-size: 40px;
    letter-spacing: .05em;
  }
  .att_title h2 .ja {
    margin-top: 10px;
  }
}
/* -------------------------------- */
.attention {
  padding: 70px 5% 160px;
}
.attention__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.more-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 70px;
}
.more-btn a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 287px;
  height: 70px;
  color: #333;
  font-weight: bold;
  letter-spacing: .05em;
  border: 1px solid #e47d6e;
  border-radius: 35px;
}
.more-btn a i {
  position: absolute;
  top: 50%;
  right: 24px;
  transform: translate(0, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  background-color: #e47d6e;
  color: #fff;
  font-size: 12px;
  border-radius: 13px;
}
@media screen and (max-width: 767px) {
  .attention {
    padding: 50px 24px 100px;
  }
}
/* =========================
  ATTENTION / CONTENT
========================= */
.att {
  background: #fefaf7;
  padding: 60px 5% 160px;
}
.att__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.att__head {
  text-align: center;
  margin-bottom: 28px;
}
.att__ttl {
  font-size: 34px;
  letter-spacing: .12em;
  margin: 0;
}
.att__sub {
  margin-top: 6px;
  color: #e47d6e;
  letter-spacing: .08em;
}
.att__intro {
  margin-top: 20px;
  line-height: 2.1;
  color: #333;
}
.att__main-visual {
  margin: 54px 0 54px;
}
.att__main-visual img {
  width: 100%;
  height: auto;
  border-radius: 14px;
  display: block;
}
/* section */
.att-sec {
  margin-top: 34px;
}
.att-sec__ttl {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 26px;
  font-weight: 700;
  letter-spacing: .06em;
  margin: 0 0 14px;
  position: relative;
  padding-left: 22px; /* ●の分の余白 */
}
.att-sec__ttl::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.8em;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background: #e47d6e;
  border-radius: 50%;
}
.att-sec__text {
  line-height: 2;
  margin: 0 0 14px;
}
.att-box {
  border-radius: 10px;
  padding: 14px 0px;
  margin-top: 12px;
}
.att-box--thin {
  padding: 12px 16px;
}
.att-box__ttl {
  font-weight: 700;
  letter-spacing: .04em;
  margin: 0 0 8px;
  color: #333;
}
.att-box__ttl span {
  background: #f5ebdf;
  padding: 4px 8px;
  border-radius: 4px;
  display: inline-block;
}
.att-box__text {
  line-height: 2;
  margin: 0;
}
.att-list {
  margin: 10px 0 10px 20px;
  padding-left: 1.2em;
  line-height: 2;
  list-style: none;
  padding-left: 0;
}
.att-list li {
  margin: 0;
  position: relative;
  padding-left: 14px;
}
.att-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1.0em;
  transform: translateY(-50%);
  width: 6px;
  height: 6px;
  background: #e47d6e;
  border-radius: 50%;
}
/* =========================
  Responsive
========================= */
@media screen and (max-width: 767px) {
  .att-mv {
    padding: 18px 0 34px;
  }
  .att-mv__inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
  }
  .att-mv__texts {
    width: 100%;
    min-width: initial;
  }
  .att-mv__ttl {
    font-size: 38px;
  }
  .att-mv__visual {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9; /* スマホは比率で安定 */
  }
  .att__main-visual {
    margin: 34px 0 34px;
  }
  .att {
    padding: 60px 24px 100px;
  }
  .att__ttl {
    font-size: 28px;
  }
}