.point-wrap .title-wrap {
  padding: 1em;
  color: #fff;
  text-align: center;
  color: #0071bb;
}

.point-wrap .title-wrap .pages-ttl {
  margin-bottom: 5px;
  color: #0071bb;
}

.point-wrap .point-lead .pages-ttl, .point-wrap .point-lead .pages-sub-ttl {
  color: #0071bb;
  font-weight: bold;
}

.point-wrap .point-lead .pages-sub-ttl {
  margin-bottom: 0;
}

.point-wrap .point-lead .pages-ttl {
  margin-top: 0;
}

.point-wrap.point-wrap__1 .item-name {
  margin-bottom: 1em;
  border-radius: 6px;
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  .point-wrap.point-wrap__1 .item-name {
    margin-bottom: 1.5em;
    font-size: 1.1em;
  }
}
.point-wrap.point-wrap__2 .title-wrap {
  color: #009145;
}

.point-wrap.point-wrap__2 .pages-ttl, .point-wrap.point-wrap__2 .pages-sub-ttl {
  color: #009145;
}

.point-wrap.point-wrap__2 .data-wrap {
  text-align: center;
}

.point-wrap.point-wrap__2 .data-wrap .title {
  padding: 10px;
  border-radius: 6px;
  background: #009145;
  color: #fff;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .point-wrap.point-wrap__2 .data-wrap .title {
    font-size: 22px;
  }
}
.point-wrap.point-wrap__2 .data-wrap .inner {
  display: inline-block;
}

.point-wrap.point-wrap__2 .data-wrap .inner .ttl {
  margin: 1em 0;
  color: #009145;
  font-weight: bold;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .point-wrap.point-wrap__2 .data-wrap .inner .ttl {
    margin: 2em 0;
    font-size: 1.2em;
  }
}
.point-wrap.point-wrap__2 .data-wrap .inner figure {
  padding: 1em 0;
  border-bottom: 1px solid #009145;
}

.point-wrap .point-text {
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  .point-wrap .point-text {
    font-size: 1.5em;
  }
}
.point-wrap .pages-btn__corp-line {
  border: 1px solid #009145;
  background: #fff;
  color: #009145;
}

.point-wrap .pages-btn__corp-line:after {
  border-color: #009145;
}

.point-wrap .pages-btn__corp-line:hover {
  background: #009145;
  color: #fff;
}

.point-wrap .pages-btn__corp-line:hover:after {
  border-color: #fff;
}

/* faq */
.faq {
  background: #fcf7d6;
}

.faqList {
  background: #fff;
}

.faqItem {
  padding: 2rem 0;
}

.faqItem + .faqItem {
  border-top: 1px solid #ccc;
}

.faqItem__Qbox {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  cursor: pointer;
}

.faqItem__Abox {
  margin-top: 2rem;
}

.faqItem:not(:nth-child(1)) .faqItem__Abox {
  display: none;
}

.faqItem__Q {
  display: flex;
  align-items: baseline;
  position: relative;
  color: #dd5d0f;
  font-weight: bold;
}

.faqItem__Q::before {
  content: "Q.  ";
}

.faqItem__Qbtn {
  position: relative;
  margin-left: 0.8rem;
  border: 2px solid #dd5d0f;
  border-radius: 50%;
  content: "";
}

.faqItem__Qbtn::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50%;
  height: 2px;
  background-color: #dd5d0f;
  content: "";
}

.faqItem__Qbtn::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
  width: 50%;
  height: 2px;
  background-color: #dd5d0f;
  content: "";
  transition: 0.2s all;
}

.faqItem__Qbtn.-active::after {
  transform: translate(-50%, -50%) rotate(0);
}

@media screen and (min-width: 768px) {
  .faqList {
    padding: 6rem 8rem;
  }
  .faqItem__Q {
    font-size: 2rem;
  }
  .faqItem__Q::before {
    margin-right: 2rem;
  }
  .faqItem__A {
    font-size: 1.6rem;
  }
  .faqItem__Qbtn {
    min-width: 3.2rem;
    height: 3.2rem;
  }
}
@media screen and (max-width: 768px) {
  .faqList {
    padding: 0 2rem;
  }
  .faqItem__Q, .faqItem__A {
    font-size: 1.4rem;
  }
  .faqItem__Q::before {
    margin-right: 0.5rem;
  }
  .faqItem__Qbtn {
    min-width: 2.4rem;
    height: 2.4rem;
  }
}
/* sec */
.sec__head {
  text-align: center;
}

.sec__ttl {
  position: relative;
  padding-bottom: 1em;
}

.sec__ttl::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 6rem;
  height: 4px;
  background: #ef5a24;
  content: "";
}

h4.sec__third {
  margin-bottom: 0.8rem;
}

.sec__cap {
  font-size: 1.2rem;
}

.sec__cap + .sec__cap {
  margin-top: 0.8rem;
}

@media screen and (min-width: 768px) {
  .sec {
    padding: 8rem 0;
  }
  .l-inner {
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
  }
  .sec__head {
    margin-bottom: 6rem;
  }
  .sec__ttl {
    font-size: 3.2rem;
  }
  .sec__ttl + .sec__lead {
    margin-top: 6rem;
  }
  .sec__sub {
    font-size: clamp(2.4rem, 2vw, 2.8rem);
  }
  .sec__third {
    font-size: clamp(1.8rem, 1.6vw, 2rem);
  }
  .sec__lead, .sec__txt {
    font-size: clamp(1.4rem, 1.2vw, 1.6rem);
  }
}
@media screen and (max-width: 768px) {
  .sec {
    padding: 5rem 0;
  }
  .l-inner {
    padding: 0 1.5rem;
  }
  .sec__head {
    margin-bottom: 4rem;
  }
  .sec__ttl {
    font-size: 2.2rem;
  }
  .sec__ttl + .sec__lead {
    margin-top: 4rem;
  }
  .sec__sub {
    font-size: 1.8rem;
  }
  .sec__third {
    font-size: 1.6rem;
  }
  .sec__lead {
    text-align: left;
  }
  .sec__txt, .sec__lead {
    font-size: 1.4rem;
  }
}
.gokuraku-v2-title {
  margin-bottom: clamp(2.5rem, 1.3636363636rem + 3.0303030303vw, 5rem);
  font-weight: 600;
  font-size: clamp(2.2rem, 1.7454545455rem + 1.2121212121vw, 3.2rem);
  text-align: center;
}

.gokuraku-v2-subtitle {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: clamp(1.5rem, 0.8181818182rem + 1.8181818182vw, 3rem);
  font-weight: 500;
  font-size: clamp(2.2rem, 1.9272727273rem + 0.7272727273vw, 2.8rem);
  text-align: center;
}
.gokuraku-v2-subtitle span {
  display: inline-block;
  position: relative;
  padding: 0 2.5em;
}
.gokuraku-v2-subtitle span::before, .gokuraku-v2-subtitle span::after {
  display: inline-block;
  position: absolute;
  top: 50%;
  width: 45px;
  height: 3px;
  background-color: #2589d0;
  content: "";
}
.gokuraku-v2-subtitle span::before {
  left: 0;
}
.gokuraku-v2-subtitle span::after {
  right: 0;
}

.gokuraku-v2-point {
  margin-bottom: 10px;
  color: #0071bc;
  font-weight: 500;
  font-size: clamp(1.8rem, 1.5272727273rem + 0.7272727273vw, 2.4rem);
  text-align: center;
}

.gokuraku-pan-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: clamp(2rem, 0.6363636364rem + 3.6363636364vw, 5rem);
  border: 1px solid #555;
  gap: clamp(1.5rem, 0.8181818182rem + 1.8181818182vw, 3rem);
}
@media screen and (max-width: 767px) {
  .gokuraku-pan-wrap {
    margin-inline: 3%;
  }
}

.gokuraku-pan {
  display: flex;
  gap: clamp(2.5rem, 1.3636363636rem + 3.0303030303vw, 5rem);
}
@media screen and (max-width: 767px) {
  .gokuraku-pan {
    flex-direction: column;
    align-items: center;
  }
}
.gokuraku-pan__title {
  margin-bottom: 0.5em;
  font-size: clamp(2rem, 0.2222222222rem + 2.3148148148vw, 3rem);
  line-height: 1;
}
.gokuraku-pan__mv {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: clamp(25rem, 16.1111111111rem + 11.5740740741vw, 30rem);
}
@media screen and (max-width: 767px) {
  .gokuraku-pan__mv {
    width: 200px;
  }
}
.gokuraku-pan__copy {
  color: #0071bc;
  font-weight: 600;
  font-size: clamp(1.8rem, 0.7333333333rem + 1.3888888889vw, 2.4rem);
}
.gokuraku-pan__body {
  display: flex;
  flex-direction: column;
  gap: clamp(1rem, 0.5454545455rem + 1.2121212121vw, 2rem);
}
.gokuraku-pan__pics {
  display: flex;
  align-items: end;
  line-height: 1.5;
  gap: clamp(1.5rem, 0.8181818182rem + 1.8181818182vw, 3rem);
}
@media screen and (max-width: 767px) {
  .gokuraku-pan__pics {
    flex-direction: column;
    max-width: 70%;
    margin-inline: auto;
  }
}
@media screen and (min-width: 768px) {
  .gokuraku-pan__pics figure:first-child {
    width: clamp(45rem, 36.1111111111rem + 11.5740740741vw, 50rem);
  }
}
.gokuraku-pan__pics figure {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

@media screen and (max-width: 767px) {
  .gokuraku-pan-mv {
    width: 200px;
  }
}

.gokuraku-pan-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.gokuraku-pan-btn a {
  display: grid;
  width: clamp(28rem, 22.5454545455rem + 14.5454545455vw, 40rem);
  aspect-ratio: 400/60;
  border: 1px solid #0071bc;
  border-radius: 50px;
  color: #0071bc;
  font-size: clamp(1.6rem, 1.5090909091rem + 0.2424242424vw, 1.8rem);
  place-items: center;
}
.gokuraku-pan-btn a:hover {
  background-color: #0071bc;
  color: #fff;
}

.heading-20 {
  padding: 0.5em 0.7em;
  background-image: repeating-linear-gradient(-45deg, #bbdbfb, #bbdbfb 3px, #f2f6fc 3px, #f2f6fc 7px);
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
  font-size: clamp(1.6rem, 1.4181818182rem + 0.4848484848vw, 2rem);
  border-radius: 6px;
}