@charset "UTF-8";
@media screen and (min-width: 768px) {
  .heading .label {
    font-size: 5.4rem;
    letter-spacing: 0.1em;
  }
}

.section-title {
  text-align: left;
}

.worry_section::before {
  border-bottom-right-radius: 0;
}
.worry_section .worry_list {
  max-width: 95rem;
  margin: 0 auto;
  margin-top: 4.8rem;
}
@media screen and (max-width: 767px) {
  .worry_section .worry_list {
    padding-right: 2rem;
  }
}
.worry_section .worry_list .worry_list-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.6rem;
}
.worry_section .worry_list .worry_list-wrap .worry_item {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  gap: 2rem;
  padding: 1.6rem 2rem;
  border: 1px solid #046cca;
  border-radius: 8rem;
}
.worry_section .worry_list .worry_list-wrap .worry_item::before {
  content: "";
  display: block;
  aspect-ratio: 1;
  width: 2.4rem;
  background: url(../img/advertising/check-fill.svg) center/contain no-repeat;
}
.worry_section .worry_list .worry_list-wrap .worry_item span {
  flex: 1;
}
.worry_section .worry_list .worry_box {
  border-radius: 100%;
  background: url(../img/advertising/worry_box.png) center/contain no-repeat;
  margin-left: auto;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 380/98;
  padding-top: 1%;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .worry_section .worry_list .worry_box {
    transform: translateX(20%);
    width: 38rem;
  }
}
.worry_section .worry_list .worry_box span {
  display: block;
}

.merit_section {
  margin-bottom: 2rem;
}
.merit_section::before {
  border-top-right-radius: 0;
  border-top: 1px dashed #046cca;
}
.merit_section .merit-grid {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .merit_section .merit-grid {
    row-gap: 2.4rem;
    margin-top: 3rem;
    padding-right: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .merit_section .merit-grid {
    margin-top: 4.8rem;
    row-gap: 4.8rem;
    margin-left: -2.4rem;
    margin-right: -2.4rem;
  }
}
.merit_section .merit-grid .merit {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .merit_section .merit-grid .merit {
    padding-left: 2.4rem;
    padding-right: 2.4rem;
    width: 33.3333333333%;
  }
}
.merit_section .merit-grid .merit .inn {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.merit_section .merit-grid .merit .inn:after {
  content: "";
  display: block;
  margin-bottom: 0;
  margin-top: auto;
  aspect-ratio: 390/263;
  width: 100%;
  background: #f2f9ff var(--merit) center/auto 15rem no-repeat;
}
.merit_section .merit-grid .merit .inn .detail {
  margin-bottom: 1.2rem;
}
.merit_section .merit-grid .merit .inn .detail .num {
  font-weight: bold;
  font-size: 2rem;
}
.merit_section .merit-grid .merit .inn .detail .num strong {
  margin-left: 0.1em;
  font-size: 2.4em;
  color: #046cca;
}
.merit_section .merit-grid .merit .inn .detail .txt {
  letter-spacing: 0.05em;
}

.avd-note {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  text-align: center;
  color: #046cca;
  margin-top: 4.8rem;
}
@media screen and (max-width: 767px) {
  .avd-note {
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 768px) {
  .avd-note {
    font-size: 2rem;
  }
}
.avd-note p {
  margin-bottom: 2.4rem;
}

.strength_section {
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .strength_section .available_wrap {
    margin-top: 4rem;
    padding-right: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .strength_section .available_wrap {
    margin-top: 7.2rem;
  }
}
.strength_section .available_title {
  position: relative;
  z-index: 2;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  background-color: #fff;
  padding: 1.5rem;
  border-radius: 6rem;
}
@media screen and (max-width: 767px) {
  .strength_section .available_title {
    margin-bottom: -6rem;
  }
}
@media screen and (min-width: 768px) {
  .strength_section .available_title {
    margin-bottom: -8rem;
  }
  .strength_section .available_title::before, .strength_section .available_title::after {
    content: "";
    position: absolute;
    top: 2rem;
    left: 0;
    transform: translateX(-100%);
    width: 100%;
    height: 100%;
    border-radius: 6rem;
    background-color: #f2f9ff;
    z-index: -1;
  }
}
.strength_section .available_title span {
  display: block;
  background-color: #9fd4ff;
  color: #046cca;
  font-weight: bold;
  border: 1px solid #fff;
  filter: drop-shadow(0 0 0.3rem rgba(0, 0, 0, 0.1019607843));
  border-radius: 4rem;
  padding: 1rem 2.4rem;
}
@media screen and (min-width: 768px) {
  .strength_section .available_title span {
    padding: 1.6rem 2.4rem;
    font-size: 2.4rem;
  }
}
.strength_section .available_group {
  position: relative;
  z-index: 1;
  display: flex;
  background-color: #f2f9ff;
}
@media screen and (max-width: 767px) {
  .strength_section .available_group {
    flex-direction: column;
    border-radius: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .strength_section .available_group {
    border-radius: 4rem;
  }
}
.strength_section .available_group .available {
  position: relative;
}
@media screen and (max-width: 767px) {
  .strength_section .available_group .available {
    padding: 3.5rem 1rem;
  }
}
@media screen and (min-width: 768px) {
  .strength_section .available_group .available {
    width: 50%;
    padding: 3.5rem 2rem 5rem 2rem;
  }
}
.strength_section .available_group .available .ttl {
  font-weight: bold;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .strength_section .available_group .available .ttl {
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .strength_section .available_group .available .ttl {
    margin-bottom: 6.8rem;
    font-size: 2rem;
  }
}
.strength_section .available_group .available .items {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2rem;
}
@media screen and (min-width: 768px) {
  .strength_section .available_group .available .items {
    gap: 3.6rem;
  }
}
@media screen and (max-width: 767px) {
  .strength_section .available_group .available-left {
    padding-top: 8rem;
    border-bottom: 1px dashed #046cca;
  }
}
@media screen and (max-width: 767px) {
  .strength_section .available_group .available-left img {
    height: 3rem;
  }
}
@media screen and (min-width: 768px) {
  .strength_section .available_group .available-left img {
    height: 3.5rem;
  }
}
@media screen and (min-width: 768px) {
  .strength_section .available_group .available-left {
    padding-left: 5rem;
  }
  .strength_section .available_group .available-left::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    height: 100%;
    border-right: 1px dashed #046cca;
  }
}
@media screen and (min-width: 768px) {
  .strength_section .available_group .available-right {
    padding-left: 9.5rem;
  }
}
@media screen and (max-width: 767px) {
  .strength_section .available_group .available-right .items {
    gap: 1rem;
  }
}
.strength_section .available_group .available-right img {
  height: 4rem;
}
.strength_section .available_group .available-right .ttl {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .strength_section .available_group .available-right .ttl {
    padding-left: 5rem;
  }
}

.creative_section {
  margin-bottom: 2rem;
}
.creative_section .creative_group {
  display: flex;
  justify-content: space-between;
  gap: 3.6rem;
}
@media screen and (max-width: 767px) {
  .creative_section .creative_group {
    margin-top: 4rem;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding-right: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .creative_section .creative_group {
    margin-top: 7rem;
  }
}
.creative_section .creative_group > span {
  display: block;
  aspect-ratio: 1;
  text-indent: -100vw;
  overflow: hidden;
  background: url(../img/advertising/multiply.svg) center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .creative_section .creative_group > span {
    width: 2.4rem;
  }
}
@media screen and (min-width: 768px) {
  .creative_section .creative_group > span {
    width: 4.8rem;
  }
}
.creative_section .creative_group .creative {
  background-color: #f2f9ff;
}
@media screen and (max-width: 767px) {
  .creative_section .creative_group .creative {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .creative_section .creative_group .creative {
    width: 35rem;
  }
}
.creative_section .creative_group .creative .stt {
  background-color: #fff;
  font-weight: bold;
  padding-bottom: 1rem;
  font-size: 1.8rem;
}
@media screen and (min-width: 768px) {
  .creative_section .creative_group .creative .stt {
    font-size: 2.4rem;
  }
}
.creative_section .creative_group .creative .txt {
  padding: 2.4rem 2rem;
}
.creative_section .creative_group .creative .txt ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 768px) {
  .creative_section .creative_group .creative .txt ul {
    gap: 2rem;
    font-size: 2rem;
  }
}
.creative_section .creative_group .creative .txt ul li::before {
  content: "•";
  margin-right: 1rem;
}
.creative_section .creative-detail {
  margin-top: 2.4rem;
}

.difference_section {
  margin-bottom: 2rem;
}
.difference_section .difference-wrap {
  margin-top: 4rem;
}
.difference_section .difference-wrap .difference-table {
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 767px) {
  .difference_section .difference-wrap .difference-table {
    overflow-x: auto;
  }
  .difference_section .difference-wrap .difference-table table {
    min-width: 700px;
  }
}
.difference_section .difference-wrap table {
  border-collapse: separate;
  width: 100%;
}
.difference_section .difference-wrap table tr th,
.difference_section .difference-wrap table tr td {
  letter-spacing: 0.05em;
  font-weight: 400;
  color: #046cca;
  text-align: center;
  box-shadow: inset 0 0 0.4rem rgba(0, 0, 0, 0.1019607843);
}
@media screen and (max-width: 767px) {
  .difference_section .difference-wrap table tr th,
  .difference_section .difference-wrap table tr td {
    padding: 1rem 2rem;
    border: 0.2rem solid #fff;
  }
}
@media screen and (min-width: 768px) {
  .difference_section .difference-wrap table tr th,
  .difference_section .difference-wrap table tr td {
    padding: 2.3rem 2rem;
    border: 0.6rem solid #fff;
  }
}
.difference_section .difference-wrap table tr th strong {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .difference_section .difference-wrap table tr th strong {
    font-size: 2.4rem;
  }
}
.difference_section .difference-wrap table thead tr th {
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .difference_section .difference-wrap table thead tr th {
    padding: 1rem 0.5rem;
  }
}
@media screen and (min-width: 768px) {
  .difference_section .difference-wrap table thead tr th {
    padding: 1.7rem 1rem;
    font-size: 2.4rem;
  }
}
.difference_section .difference-wrap table thead tr th:first-child {
  box-shadow: none !important;
  border: none !important;
  background: none !important;
}
@media screen and (max-width: 767px) {
  .difference_section .difference-wrap table thead tr th:first-child {
    width: 15rem;
  }
}
@media screen and (min-width: 768px) {
  .difference_section .difference-wrap table thead tr th:first-child {
    width: 24.5rem;
  }
}
.difference_section .difference-wrap table tbody tr th {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .difference_section .difference-wrap table tbody tr th {
    font-size: 2.4rem;
  }
}
.difference_section .difference-wrap table tbody tr:first-child th,
.difference_section .difference-wrap table tbody tr:first-child td {
  background-color: #b8dfff;
}
@media screen and (max-width: 767px) {
  .difference_section .difference-wrap table tbody tr img {
    height: 2rem;
  }
}

.price_section .price-table {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .price_section .price-table {
    margin-top: 4.8rem;
  }
}
.price_section .price-table dl {
  display: flex;
}
@media screen and (max-width: 767px) {
  .price_section .price-table dl {
    flex-direction: column;
  }
}
@media screen and (min-width: 768px) {
  .price_section .price-table dl {
    gap: 4.8rem;
  }
}
.price_section .price-table dl dt,
.price_section .price-table dl dd {
  padding: 2.4rem 0;
}
@media screen and (min-width: 768px) {
  .price_section .price-table dl dt,
  .price_section .price-table dl dd {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
.price_section .price-table dl dt {
  font-weight: bold;
  color: #046cca;
  align-items: center;
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
  .price_section .price-table dl dt {
    padding: 2rem 0 1rem 0;
  }
}
@media screen and (min-width: 768px) {
  .price_section .price-table dl dt {
    border-bottom: 1px dashed #046cca;
    width: 33rem;
    font-size: 2.4rem;
  }
}
.price_section .price-table dl dd {
  flex: 1;
  border-bottom: 1px dashed #046cca;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .price_section .price-table dl dd {
    padding: 0 0 2rem 0;
  }
}
@media screen and (min-width: 768px) {
  .price_section .price-table dl dd {
    padding: 1.6rem 0;
    padding-left: 10rem;
    padding-right: 9rem;
  }
}
.price_section .price-table dl dd p {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .price_section .price-table dl dd strong {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 768px) {
  .price_section .price-table dl dd strong {
    font-size: 2.4rem;
  }
}
.price_section .price-detail {
  margin-top: 4.8rem;
}
@media screen and (max-width: 767px) {
  .price_section .price-detail strong {
    font-size: 1.7rem;
  }
}
@media screen and (min-width: 768px) {
  .price_section .price-detail strong {
    font-size: 2rem;
  }
}
.price_section .price-detail ul li {
  text-indent: -1em;
  padding-left: 1em;
}