*,
*:before,
*:after {
  box-sizing: border-box;
}

html {
  line-height: 1.6;
  height: 100%;
  scroll-behavior: smooth;
}
@media screen and (min-width: 1401px) {
  html {
    font-size: 62.5%;
  }
}
@media screen and (max-width: 1400px) {
  html {
    font-size: 0.7142857143vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 1.3333333333vw;
  }
}

body {
  color: #121212;
  background-color: #fff;
  font-size: 1.6rem;
  font-weight: 600;
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  max-width: 140rem;
  width: 100%;
  margin: 0 auto;
  overflow-x: hidden;
}
@media screen and (max-width: 750px) {
  body {
    width: 100%;
  }
}

img,
picture,
video,
object {
  max-width: 100%;
  width: 100%;
  height: auto;
  border: none;
  display: block;
}

a {
  text-decoration: underline;
  transition: opacity 0.4s;
}
a:hover {
  text-decoration: none;
}
a:hover img {
  text-decoration: none;
  opacity: 0.8;
  transition: all 0.3s;
}

/* --- header --- */
header {
  background-color: #182E59;
  color: #fff;
  font-size: 2.2rem;
  font-weight: 700;
  padding: 2.6rem 0;
  text-align: center;
}
@media (min-width: 769px) {
  header {
    font-size: 2.8rem;
    padding: 2rem 0;
  }
}

/* --- components --- */
/* .inner */
.inner {
  margin: 0 auto;
  width: 100%;
}

/* .section */
.section {
  padding: 5rem 0 9rem;
}
.section-title {
  text-align: center;
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 3.8rem;
}

/* .cta */
.cta {
  margin: 0 3rem;
  padding: 3rem 0 6rem;
}
.cta-content .arrow {
  margin: 0 auto 3rem;
  width: 69rem;
}
.cta-content .txt-large01 {
  font-family: "Noto Serif JP", serif;
  font-size: 4.2rem;
  text-align: center;
  padding-bottom: 5rem;
}
.cta-content .txt-large02 {
  color: #182E59;
  font-family: "Noto Serif JP", serif;
  font-size: 5rem;
  text-align: center;
  padding-bottom: 3rem;
}
.cta-content .txt-large02 .strong {
  font-size: 6.2rem;
}
.cta-btn {
  margin-top: 3rem;
}
.cta-btn .btn {
  display: block;
  margin: 0 auto;
  width: 70.5rem;
}
.cta-btn .txt01 {
  font-family: "Noto Serif JP", serif;
  font-size: 2.7rem;
  font-weight: 400;
  padding-bottom: 0.5rem;
  text-align: center;
}
.cta-btn .txt02 {
  font-size: 2.4rem;
  font-weight: 400;

}

@media (min-width: 769px) {
  .cta-btn .inner {
    width: 69.5rem;
  }
}

/* .borderbox */
.borderbox {
  background-color: #fff;
  border-radius: 2rem;
  padding: 1rem;
  filter: drop-shadow(0 0.3rem 0.6rem rgba(0, 0, 0, 0.16));
  position: relative;
}
.borderbox-inner {
  border: 1px solid #CE9D74;
  border-radius: 2rem;
  padding: 2rem;
}

/* .listcheck */
.listcheck > li {
  font-size: 2.6rem;
  line-height: 2;
  padding-left: 5.4rem;
  position: relative;
}
.listcheck > li::before {
  content: "";
  position: absolute;
  top: 0.5rem;
  left: 0;
  width: 4.8rem;
  height: 4.8rem;
  background: url("./../../assets/img/icon_listcheck.webp") no-repeat center center/contain;
}
.listcheck > dt {
  font-size: 2.6rem;
  line-height: 2;
  padding-left: 5.4rem;
  position: relative;
}
.listcheck > dt::before {
  content: "";
  position: absolute;
  top: 0.5rem;
  left: 0;
  width: 4.8rem;
  height: 4.8rem;
  background: url("./../../assets/img/icon_listcheck.webp") no-repeat center center/contain;
}

/* .marker */
.marker {
  background: linear-gradient(transparent 68%, #FFF46E 68%, #FFF46E 96%, transparent 96%);
  padding: 0 0.5rem;
}

.marker-bold {
  background: linear-gradient(transparent 45%, #FFF46E 45%, #FFF46E 96%, transparent 96%);
  padding: 0;
}

/* --- contents --- */
/* .fv */
.fv {
  background: url("./../../assets/img/fv_sp.webp") no-repeat center top/contain;
  display: flex;
  align-items: flex-start;
  margin-bottom: 4rem;
}
.fv .inner {
  padding-top: 6rem;
}
.fv h1 {
  color: #fff;
  font-size: 4.7rem;
  font-family: "Noto Serif JP", serif;
  line-height: 1.8;
  text-shadow: 0.1rem 0.3rem 0.7rem rgb(0, 0, 0);
  padding-left: 1.5rem;
}
.fv h1 .strong {
  font-size: 6.2rem;
  line-height: 0.8;
}
.fv-txt {
  margin-top: 2rem;
}
.fv-txt p {
  display: inline;
  background-color: #fff;
  font-size: 3rem;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
  line-height: 2.6;
  padding: 1rem 3rem 1rem 1.5rem;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
.fv-btn {
  margin: 0 auto;
  margin-top: 4.5rem;
  width: 70.5rem;
}
.fv-btn .notice {
  font-size: 2.4rem;
  font-weight: 400;
}
@media (min-width: 769px) {
  .fv {
    background: url("./../../assets/img/fv.webp") no-repeat center top/contain;
    margin-bottom: 0;
    height: 69.6rem;
  }
  .fv .inner {
    width: 120rem;
  }
  .fv h1 {
    font-size: 5.2rem;
  }
  .fv h1 .strong {
    font-size: 7.2rem;
  }
  .fv-txt {
    margin-top: 2rem;
  }
  .fv-txt p {
    padding: 1rem 2rem;
  }
  .fv-btn {
    margin: 0;
    margin-top: 5rem;
    width: 61rem;
  }
  .fv-btn .notice {
    color: #fff;
    font-size: 2rem;
  }
}

/* .intro */
.intro {
  background: url("./../../assets/img/intro_bg_sp.webp") repeat-y center bottom/100% auto;
  padding-bottom: 23rem;
  clip-path: polygon(0 0, 100% 0%, 100% 93%, 50% 100%, 0 93%);
}
.intro-title {
  background: url("./../../assets/img/intro_ttl_bg_sp.webp") no-repeat center top/contain;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: 6rem;
  padding-top: 4.5rem;
  height: 26.5rem;
}
.intro-title h2 {
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-size: 5.6rem;
  line-height: 1.2;
  text-align: center;
}
.intro-content {
  margin: 0 auto;
  width: 66.8rem;
  position: relative;
}
.intro-label {
  position: absolute;
  left: 1rem;
  top: -8.5rem;
  width: 23.9rem;
  z-index: 1;
}
.intro-list {
  background-color: #fff;
  padding: 2.5rem 2.5rem 3.6rem;
  filter: drop-shadow(0.5rem 0.6rem 0.5rem rgba(0, 0, 0, 0.65));
  position: relative;
}
.intro-list::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7.2rem 6.5rem 0 6.5rem;
  border-color: #fff transparent transparent transparent;
}
.intro-list .list {
  border: 0.5rem solid #013983;
  padding: 2.5rem 2.5rem 6rem;
}
.intro-list .list > li:not(:last-child) {
  margin-bottom: 4rem;
}
.intro-list .list dl dt {
  margin: 0 auto;
  padding-bottom: 1.5rem;
  width: 16rem;
}
.intro-list .list dl dd {
  font-size: 2.7rem;
  text-align: center;
}
.intro-important {
  background: rgba(255, 255, 255, 0.5);
  margin-top: 10.2rem;
}
.intro-important .inner {
  padding: 0 2.5rem;
}
.intro-important .txtbox {
  padding: 2rem 0;
}
.intro-important .txt01 {
  font-family: "Noto Serif JP", serif;
  font-size: 4.4rem;
  text-align: center;
}
.intro-important .txt01 img {
  margin: 0 auto;
  width: 68.8rem;
}
.intro-important .txt01 .strong {
  font-size: 5.1rem;
}
@media (min-width: 769px) {
  .intro {
    background: url("./../../assets/img/intro_bg.webp") repeat-y center center/cover;
    clip-path: polygon(0% 0%, 100% 0%, 100% 92%, 75% 92%, 50% 100%, 25% 92%, 0 92%);
  }
  .intro-title {
    background: url("./../../assets/img/intro_ttl_bg.webp") no-repeat center top/cover;
    height: 26.5rem;
  }
  .intro-content {
    width: 100rem;
  }
  .intro-list {
    padding: 2.5rem;
  }
  .intro-list::after {
    border-width: 5rem 9.7rem 0 9.7rem;
  }
  .intro-list .list {
    padding: 11rem 1.4rem 10rem;
  }
  .intro-list .list dl {
    display: flex;
    justify-content: flex-start;
  }
  .intro-list .list dl dt {
    margin: 0;
  }
  .intro-list .list dl dd {
    text-align: left;
    padding-left: 1.4rem;
    width: calc(100% - 16rem);
  }
  .intro-important {
    margin-top: 8rem;
  }
  .intro-important .txtbox {
    padding: 5rem 0;
  }
  .intro-important .txt01 .strong {
    font-size: 5.2rem;
  }
}

/* .why */
.why {
  background: url("./../../assets/img/why_bg_sp.webp") no-repeat center top/cover;
  margin-top: -13.3rem;
  padding-top: 13.3rem;
  padding-bottom: 7.4rem;
}
.why-title {
  color: #182E59;
  font-family: "Noto Serif JP", serif;
  font-size: 5.2rem;
  text-align: center;
  padding-bottom: 3.5rem;
}
.why-content .inner {
  padding: 0 4.2rem;
}
.why-content h3 {
  margin: 0 auto;
  padding-bottom: 5.6rem;
  width: 66.8rem;
}
.why-list > li {
  display: table;
  background-color: #fff;
  border: 2px solid #CE9D74;
  border-radius: 2rem;
  padding: 2rem;
  width: 100%;
  filter: drop-shadow(0.3rem 0.3rem 0.6rem rgba(0, 0, 0, 0.16));
  position: relative;
}
.why-list > li:not(:last-child) {
  margin-bottom: 5rem;
}
.why-list > li .ttl img {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.why-list > li .ttl h4 {
  font-size: 2.8rem;
}
.why-list > li .txt p {
  font-size: 2rem;
  font-weight: 400;
}
.why-list > li .txt .small {
  font-size: 1.6rem;
}
.why-list > li:nth-child(1) .ttl {
  padding-left: 15.1rem;
}
.why-list > li:nth-child(1) .ttl img {
  left: 3.6rem;
  width: 13.1rem;
}
.why-list > li:nth-child(1) .txt {
  padding-left: 15.1rem;
}
.why-list > li:nth-child(2) .ttl img {
  right: 0;
  width: 13.9rem;
}
.why-list > li:nth-child(2) .txt {
  padding-right: 14.9rem;
}
.why-list > li:nth-child(3) .ttl {
  padding-left: 14.1rem;
}
.why-list > li:nth-child(3) .ttl img {
  left: 1rem;
  width: 13.1rem;
}
.why-list > li:nth-child(3) .txt {
  padding-left: 14.1rem;
}
.why-list > li:nth-child(4) .ttl img {
  right: 2rem;
  width: 15.4rem;
}
.why-list > li:nth-child(4) .txt {
  padding-right: 15.4rem;
}
.why-list > li:nth-child(5) .ttl {
  padding-left: 16.2rem;
}
.why-list > li:nth-child(5) .ttl img {
  left: 0.6rem;
  width: 16.2rem;
}
.why-list > li:nth-child(5) .txt {
  padding-left: 16.2rem;
}
@media (min-width: 769px) {
  .why {
    background: url("./../../assets/img/why_bg.webp") no-repeat center top/cover;
  }
  .why-title {
    padding-bottom: 5rem;
  }
  .why-content .inner {
    padding: 0 10rem;
  }
  .why-content h3 {
    padding-bottom: 12.5rem;
    width: 100rem;
  }
  .why-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    gap: 6rem;
  }
  .why-list > li {
    display: flex;
    flex-direction: column;
    width: calc((100% - 6rem) / 2);
  }
  .why-list > li:not(:last-child) {
    margin-bottom: 5rem;
  }
  .why-list > li .ttl {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-left: 17rem;
    height: 12rem;
  }
  .why-list > li .ttl img {
    top: 0;
    transform: translateY(0);
  }
  .why-list > li .txt {
    margin-top: 2rem;
  }
  .why-list > li .txt p {
    font-size: 2.6rem;
  }
  .why-list > li .txt .small {
    font-size: 2rem;
  }
  .why-list > li:nth-child(1) .ttl {
    padding-left: 0;
  }
  .why-list > li:nth-child(1) .ttl img {
    left: 0.5rem;
    top: -7rem;
  }
  .why-list > li:nth-child(1) .txt {
    padding-left: 0;
  }
  .why-list > li:nth-child(2) .ttl img {
    right: auto;
    left: 2rem;
    top: -9rem;
  }
  .why-list > li:nth-child(2) .txt {
    padding-right: 0;
  }
  .why-list > li:nth-child(3) .ttl {
    padding-left: 0;
  }
  .why-list > li:nth-child(3) .ttl img {
    left: 1rem;
    top: -7rem;
  }
  .why-list > li:nth-child(3) .txt {
    padding-left: 0;
  }
  .why-list > li:nth-child(4) .ttl img {
    right: auto;
    left: 2rem;
    top: -8.5rem;
  }
  .why-list > li:nth-child(4) .txt {
    padding-right: 0rem;
  }
  .why-list > li:nth-child(5) .ttl {
    padding-left: 0;
  }
  .why-list > li:nth-child(5) .ttl img {
    top: -7.2rem;
  }
  .why-list > li:nth-child(5) .txt {
    padding-left: 0rem;
  }
}

/* .solution */
.solution-title {
  background: url("./../../assets/img/solution_ttl_bg_sp.webp") no-repeat center top/cover;
  font-family: "Noto Serif JP", serif;
  font-size: 6.2rem;
  line-height: 1.4;
  margin-bottom: 3rem;
  padding: 2rem 0;
  text-align: center;
}
.solution-content {
  border: 1.5rem solid #FC9E54;
  font-size: 3.2rem;
  margin: 0 1.5rem;
  padding: 2rem;
}
.solution-content p:not(:last-child) {
  margin-bottom: 3rem;
}
.solution-content .hr {
  background: url("./../../assets/img/solution_hr.webp") no-repeat center center/contain;
  margin: 0 auto 3rem;
  width: 19.7rem;
  height: 0.7rem;
}
@media (min-width: 769px) {
  .solution-title {
    background: url("./../../assets/img/solution_ttl_bg.webp") no-repeat center top;
    margin-bottom: 8rem;
    padding: 2rem 0;
  }
  .solution-content {
    margin: 0 auto;
    padding: 4.5rem 6rem;
    width: 96.8rem;
  }
}

/* .reason */
.reason {
  background: url("./../../assets/img/reason_bg_sp.webp") repeat-y center bottom/100% auto;
  padding-bottom: 15rem;
  clip-path: polygon(0 0, 100% 0%, 100% 95%, 50% 100%, 0 95%);
}
.reason-title {
  background: url("./../../assets/img/reason_ttl_bg_sp.webp") no-repeat center top/contain;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: 5.4rem;
  padding: 3.2rem 0;
  height: 30rem;
}
.reason-title h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 6.2rem;
  line-height: 1.2;
  text-align: center;
}
.reason-list {
  padding-bottom: 4.5rem;
}
.reason-list > li:not(:last-child) {
  margin-bottom: 7.2rem;
}
.reason-list > li h3 {
  margin: 0 auto;
  width: 100%;
}
.reason-list .inner {
  background-color: #fff;
  border: 1px solid #707070;
  border-top: none;
  margin-top: -0.6rem;
  padding: 4rem;
  width: 66.8rem;
}
.reason-important {
  text-shadow: 0.6rem 0.6rem 0.6rem #fff, -0.6rem -0.6rem 0.6rem #fff, -0.6rem 0.6rem 0.6rem #fff, 0.6rem -0.6rem 0.6rem #fff, 0.6rem 0 0.6rem #fff, -0.6rem 0 0.6rem #fff, 0 0.6rem 0.6rem #fff, 0 -0.6rem 0.6rem #fff;
}
.reason-important .txt-large01 {
  font-size: 5.2rem;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 5.2rem;
}
.reason-important .txt-large02 {
  font-family: "Noto Serif JP", serif;
  font-size: 4.2rem;
  text-align: center;
}
@media (min-width: 769px) {
  .reason {
    padding-bottom: 18rem;
    background: url("./../../assets/img/reason_bg.webp") repeat-y center top/cover;
  }
  .reason-title {
    background: url("./../../assets/img/reason_ttl_bg.webp") no-repeat center top/contain;
    margin-bottom: 5.4rem;
    padding: 3.2rem 0;
  }
  .reason-list {
    padding-bottom: 9rem;
  }
  .reason-list > li:not(:last-child) {
    margin-bottom: 5.4rem;
  }
  .reason-list > li h3 {
    width: 100rem;
  }
  .reason-list .inner {
    border: none;
    margin-top: -3rem;
    padding: 5.8rem 2.8rem 2.8rem;
    width: 100rem;
  }
  .reason-important .txt-large01 {
    margin-bottom: 0.8rem;
  }
}

/* .flow */
.flow {
  background: url("./../../assets/img/flow_bg_sp.webp") repeat-y center top/cover;
}
.flow-title {
  background: url("./../../assets/img/flow_ttl_bg_sp.webp") no-repeat center top/contain;
  display: grid;
  align-items: center;
  height: 17.6rem;
}
.flow-title h2 {
  color: #182E59;
  font-family: "Noto Serif JP", serif;
  font-size: 6.2rem;
  line-height: 1.2;
  text-align: center;
}
.flow-content {
  padding-top: 8.8rem;
}
.flow-content .inner {
  width: 55.8rem;
}
.flow-list {
  margin-bottom: 3rem;
}
.flow-list > li {
  background-color: #fff;
  border: 1px solid #CE9D74;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding: 1rem 1rem 1rem 1.5rem;
  position: relative;
}
.flow-list > li:not(:last-child) {
  margin-bottom: 5.2rem;
}
.flow-list > li:not(:last-child)::after {
  content: "";
  position: absolute;
  bottom: -4rem;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 2.3rem 1.8rem 0 1.8rem;
  border-color: #fff transparent transparent transparent;
  filter: drop-shadow(0.3rem 0.3rem 0.4rem rgba(0, 0, 0, 0.5));
}
.flow-list > li h3 {
  display: inline-block;
  color: #fff;
  background: linear-gradient(90deg, rgb(78, 167, 209) 0%, rgb(25, 41, 142) 100%);
  font-size: 3.2rem;
  margin-bottom: 0.5rem;
  padding: 0.5rem 1rem;
  text-align: center;
  min-width: 19.7rem;
  max-width: 28rem;
}
.flow-list > li .txt {
  margin-top: -14rem;
  order: 3;
  width: calc(100% - 21rem);
}
.flow-list > li .txt p {
  padding-left: 2.8rem;
  font-size: 2.8rem;
}
.flow-list > li .img {
  order: 2;
  width: 21rem;
}
.flow-important .inner {
  width: 66.8rem;
}
.flow-important .box {
  display: flex;
  justify-content: center;
  align-items: center;
}
.flow-important .txt {
  background-color: #fff;
  border-radius: 2rem;
  font-size: 3.2rem;
  padding: 2.5rem;
  width: calc(100% - 16rem);
  position: relative;
}
.flow-important .txt::after {
  content: "";
  position: absolute;
  top: 5rem;
  left: 100%;
  height: 5.6rem;
  aspect-ratio: 0.8660254038;
  clip-path: polygon(0 15%, 100% 40%, 0 50%);
  background-color: #fff;
}
.flow-important .img {
  width: 16rem;
}
@media (min-width: 769px) {
  .flow {
    background: url("./../../assets/img/flow_bg.webp") repeat-y center top/cover;
  }
  .flow-title {
    background: url("./../../assets/img/flow_ttl_bg.webp") no-repeat center top;
    height: 21.1rem;
  }
  .flow-content .inner {
    width: 120rem;
  }
  .flow-list {
    display: flex;
    justify-content: space-between;
    gap: 4.8rem;
    margin-bottom: 3.6rem;
  }
  .flow-list > li {
    border-width: 0.2rem;
    flex-direction: column;
    justify-content: flex-start;
    padding: 1.6rem 1.6rem 3.6rem;
    width: calc((100% - 9.6rem) / 4);
  }
  .flow-list > li:not(:last-child) {
    margin-bottom: 0;
  }
  .flow-list > li:not(:last-child)::after {
    bottom: 40%;
    left: auto;
    right: -4rem;
    transform: translate(0, -50%);
    border-width: 1.8rem 0 1.8rem 2.3rem;
    border-color: transparent transparent transparent #fff;
  }
  .flow-list > li h3 {
    margin-bottom: 0.8rem;
    margin-left: -1.8rem;
    padding: 0.8rem 1.4rem;
    min-width: 13.3rem;
    max-width: 100%;
  }
  .flow-list > li .txt {
    margin-top: 0;
    width: 100%;
  }
  .flow-list > li .txt p {
    padding-left: 0;
    font-size: 2.6rem;
  }
  .flow-list > li .img {
    width: 22.7rem;
  }
  .flow-important .inner {
    width: 95rem;
  }
  .flow-important .box {
    gap: 4rem;
  }
  .flow-important .txt {
    padding: 4rem;
    width: calc(100% - 16rem - 4rem);
  }
  .flow-important .txt::after {
    top: 5rem;
    left: 100%;
    height: 5.6rem;
    aspect-ratio: 0.8660254038;
    clip-path: polygon(0 15%, 100% 40%, 0 50%);
  }
}

/* .result */
.result {
  background: url("./../../assets/img/result_bg_sp.webp") repeat-y center top/cover;
  padding-bottom: 9rem;
}
.result-title {
  background: url("./../../assets/img/result_ttl_bg_sp.webp") no-repeat center top/contain;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin-top: -3rem;
  margin-bottom: 5rem;
  padding: 3.2rem 0;
  height: 43.1rem;
}
.result-title h2 {
  color: #BF0403;
  font-family: "Noto Serif JP", serif;
  font-size: 6.2rem;
  line-height: 1.2;
  padding-top: 2.7rem;
  text-align: center;
  text-shadow: 0.6rem 0.6rem 0.6rem #fff, -0.6rem -0.6rem 0.6rem #fff, -0.6rem 0.6rem 0.6rem #fff, 0.6rem -0.6rem 0.6rem #fff, 0.6rem 0 0.6rem #fff, -0.6rem 0 0.6rem #fff, 0 0.6rem 0.6rem #fff, 0 -0.6rem 0.6rem #fff;
}
.result-title h2 .medium {
  font-size: 5.2rem;
}
.result-title h2 .num {
  font-size: 9.2rem;
}
.result-content .inner {
  padding: 0 2rem;
}
.result-list > li:not(:last-child) {
  margin-bottom: 2.2rem;
}
.result-list h3 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
}
.result-list h3 img {
  position: relative;
  z-index: 1;
}
.result-list h3 span {
  display: inline;
  background: linear-gradient(90deg, rgb(160, 123, 4) 0%, rgba(160, 125, 11, 0.88) 34%, rgba(232, 179, 3, 0.64) 75%, rgba(255, 255, 255, 0.38) 100%);
  margin-left: -6rem;
  padding: 1.2rem 0;
  padding-left: 7rem;
  width: 100%;
}
.result-list .label {
  display: inline;
  width: 11.9rem;
}
.result-list .box {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.result-list .box .txt {
  color: #182E59;
  font-size: 2.8rem;
  font-weight: 400;
  padding: 0 3rem;
  width: calc(100% - 15rem);
}
.result-list .box .img {
  width: 15rem;
}
@media (min-width: 769px) {
  .result {
    background: url("./../../assets/img/result_bg.webp") repeat-y center top/cover;
  }
  .result-title {
    background: url("./../../assets/img/result_ttl_bg.webp") no-repeat center top/contain;
    padding: 7rem 0;
    height: 28.5rem;
  }
  .result-content .inner {
    padding: 0;
    width: 100rem;
  }
  .result-list {
    padding: 4.5rem 7rem;
  }
  .result-list > li:not(:last-child) {
    margin-bottom: 7rem;
  }
  .result-list h3 {
    width: calc(100% - 18rem);
  }
  .result-list .box .txt {
    font-size: 2.6rem;
    width: calc(100% - 18rem);
  }
  .result-list .box .img {
    margin-top: -10rem;
    width: 18rem;
  }
}

/* .improve */
.improve-title {
  background: url("./../../assets/img/improve_ttl_bg_sp.webp") no-repeat center top/cover;
  color: #182E59;
  font-family: "Noto Serif JP", serif;
  font-size: 6.2rem;
  line-height: 1.2;
  padding: 1rem 0;
  text-align: center;
}
.improve-content {
  background: url("./../../assets/img/improve_bg_sp.webp") repeat-y center top/cover;
  padding-top: 7rem;
  padding-bottom: 4rem;
}
.improve-content .inner {
  padding: 0 2rem;
}
.improve-box {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 12rem;
}
.improve-before {
  border: 0.5rem solid #E5E0E0;
  margin-right: 6.5rem;
  width: 25rem;
  position: relative;
}
.improve-before::after {
  position: absolute;
  content: "";
  top: 50%;
  right: -8.5rem;
  transform: translateY(-50%);
  background: url("./../../assets/img/improve_arrow01.webp") no-repeat center center/contain;
  width: 6.8rem;
  height: 24.5rem;
  z-index: 1;
}
.improve-before > li {
  background-color: #fff;
  font-size: 2.2rem;
  line-height: 1.3;
  padding: 2rem;
  text-align: center;
}
.improve-before > li:not(:last-child) {
  border-bottom: 0.5rem solid #E5E0E0;
}
.improve-before > li .img {
  margin: 0 auto;
  margin-top: -8rem;
  width: 13.9rem;
}
.improve-after {
  border: 0.6rem solid #BF272D;
  width: 34.6rem;
  position: relative;
}
.improve-after::after {
  position: absolute;
  content: "+";
  bottom: -17rem;
  left: 50%;
  transform: translateX(-50%);
  color: #BF0403;
  font-size: 14rem;
}
.improve-after > li {
  color: #BF272D;
  background-color: #fff;
  font-size: 3.2rem;
  line-height: 1.3;
  padding: 1rem 2rem;
  text-align: center;
}
.improve-after > li:nth-child(1) {
  color: #fff;
  background-color: #BF272D;
}
.improve-after > li:not(:last-child) {
  border-bottom: 0.6rem solid #BF272D;
}
.improve-after > li .img {
  margin: 0 auto;
  margin-top: -5.5rem;
  width: 18.5rem;
}
.improve-point {
  font-size: 3.2rem;
}
.improve-point h3 {
  color: #BF0403;
  font-size: 5.2rem;
}
.improve-point .listcheck > li {
  font-size: 3.2rem;
}
.improve-point .listcheck > li::before {
  top: 0.8rem;
}
@media (min-width: 769px) {
  .improve-title {
    background: url("./../../assets/img/improve_ttl_bg.webp") no-repeat center top/cover;
  }
  .improve-content {
    background: url("./../../assets/img/improve_bg.webp") repeat-y center top/cover;
    padding-top: 10.5rem;
    padding-bottom: 13.3rem;
  }
  .improve-before {
    margin-right: 11rem;
    width: 33.6rem;
  }
  .improve-before::after {
    right: -9.8rem;
  }
  .improve-before > li {
    font-size: 2.6rem;
    padding: 3.2rem 0;
  }
  .improve-before > li .img {
    width: 11.6rem;
  }
  .improve-after {
    width: 55rem;
  }
  .improve-after > li {
    padding: 3.6rem 1.8rem;
  }
  .improve-after > li .img {
    width: 22.2rem;
  }
  .improve-point {
    margin: 0 auto;
    width: 100rem;
  }
  .improve-point .borderbox-inner {
    padding: 2rem 14.2rem;
  }
  .improve-point h3 {
    font-size: 5.6rem;
  }
}

/* .case */
.case-title {
  background: url("./../../assets/img/case_ttl_bg_sp.webp") no-repeat center top/cover;
  color: #182E59;
  font-family: "Noto Serif JP", serif;
  font-size: 6.2rem;
  line-height: 1.2;
  padding: 1rem 0;
  text-align: center;
}
.case-content {
  background: url("./../../assets/img/case_bg_sp.webp") repeat-y center top/cover;
  padding: 9rem 0 5rem;
}
.case-content .inner {
  padding: 0 2rem;
}
.case-content .borderbox-inner {
  display: flex;
  flex-direction: column;
  padding-top: 10rem;
  padding-bottom: 8rem;
}
.case-list > li {
  display: flex;
  flex-direction: column;
}
.case-list > li:not(:last-child) {
  margin-bottom: 7rem;
}
.case-name {
  order: 4;
}
.case-name h3 {
  color: #343434;
  font-family: "Noto Serif JP", serif;
  font-size: 4.2rem;
  text-align: center;
}
.case-label {
  position: absolute;
  left: -2rem;
  top: 3rem;
  width: 24.1rem;
  order: 1;
}
.case-txt {
  order: 2;
}
.case-txt .list dt {
  display: table;
  color: #182E59;
  font-size: 5.2rem;
  background: linear-gradient(transparent 65%, #FCD8A9 65%, #FADF6D 75%, #EFC857 85%, transparent 85%);
  margin: 0 auto;
  padding: 0 1rem;
}
.case-txt .list dt .strong {
  font-size: 7.2rem;
}
.case-txt .list dt .num {
  font-size: 9.2rem;
}
.case-txt .list dd {
  font-size: 4.2rem;
  text-align: center;
}
.case-img {
  margin: 0 auto;
  padding: 6rem 0 3.6rem;
  order: 3;
  width: 50.1rem;
}
@media (min-width: 769px) {
  .case {
    margin-bottom: 2rem;
  }
  .case-title {
    background: url("./../../assets/img/case_ttl_bg.webp") no-repeat center top/cover;
  }
  .case-content {
    background: url("./../../assets/img/case_bg.webp") repeat-y center top/cover;
    padding: 11rem 0 6rem;
  }
  .case-content .inner {
    padding: 0;
    width: 100rem;
  }
  .case-content .borderbox-inner {
    flex-direction: row;
    justify-content: space-between;
    padding: 10rem 8rem 4rem;
  }
  .case-name {
    position: absolute;
    top: 3rem;
    left: 22rem;
    order: 2;
  }
  .case-label {
    left: 0;
    width: 19.1rem;
  }
  .case-txt {
    order: 3;
  }
  .case-txt .list dt {
    font-size: 4.2rem;
    padding: 0;
  }
  .case-txt .list dt .num {
    font-size: 7.2rem;
  }
  .case-txt .list dd {
    font-size: 3.2rem;
    text-align: left;
  }
  .case-img {
    margin: 0;
    padding: 0;
    order: 4;
    width: 28.5rem;
  }
}

/* .support */
.support {
  margin-bottom: 7.7rem;
  padding: 5rem 0 6.7rem;
  position: relative;
}
.support::before {
  position: absolute;
  content: "";
  background: url("./../../assets/img/support_top_sp.webp") no-repeat center center/cover;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 71.4rem;
  height: 7.2rem;
}
.support::after {
  position: absolute;
  content: "";
  background: url("./../../assets/img/support_bottom_sp.webp") no-repeat center center/cover;
  left: 50%;
  bottom: 1rem;
  transform: translateX(-50%);
  width: 71rem;
  height: 6.7rem;
}
.support-title {
  color: #182E59;
  font-family: "Noto Serif JP", serif;
  font-size: 4.2rem;
  line-height: 1.4;
  margin-bottom: 6rem;
  padding: 2rem 0 4rem;
  text-align: center;
  position: relative;
}
.support-title::after {
  position: absolute;
  content: "";
  background: url("./../../assets/img/support_line01_sp.webp") no-repeat center center/cover;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 47.5rem;
  height: 0.2rem;
}
.support-title .logo {
  margin: 0 auto;
  width: 32.6rem;
}
.support-title .strong {
  font-size: 6.2rem;
}
.support-content .inner {
  padding: 0 4rem;
}
.support-list {
  font-size: 3.2rem;
  margin-bottom: 7rem;
  padding-bottom: 7rem;
  position: relative;
}
.support-list::after {
  position: absolute;
  content: "";
  background: url("./../../assets/img/support_line01_sp.webp") no-repeat center center/cover;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 47.5rem;
  height: 0.2rem;
}
.support-list > li {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}
.support-list > li:not(:last-child) {
  margin-bottom: 6rem;
}
.support-list > li .icon {
  margin-right: 3rem;
  width: 12rem;
}
.support-list > li .txt {
  width: calc(100% - 12rem - 3rem);
}
.support-list > li .txt h3 {
  margin-bottom: 2rem;
}
.support-list > li .txt p {
  font-size: 3.2rem;
}
.support-list > li:nth-child(1) .txt h3 {
  width: 33.4rem;
}
.support-list > li:nth-child(2) .txt h3 {
  width: 29.4rem;
}
.support-list > li:nth-child(3) .txt h3 {
  width: 16.8rem;
}
.support-list > li:nth-child(4) .txt h3 {
  width: 21rem;
}
.support-important {
  margin: 0 auto;
  width: 67rem;
}
@media (min-width: 769px) {
  .support {
    margin-top: 5rem;
  }
  .support::before {
    background: url("./../../assets/img/support_top.webp") no-repeat center center/cover;
    top: 0;
    width: 99.4rem;
    height: 7.1rem;
  }
  .support::after {
    background: url("./../../assets/img/support_bottom.webp") no-repeat center center/cover;
    bottom: 1rem;
    width: 100.2rem;
    height: 6.8rem;
  }
  .support-title .logo {
    padding-bottom: 1.6rem;
  }
  .support-content .inner {
    padding: 0;
    width: 90rem;
  }
  .support-list > li .icon {
    margin-right: 3.4rem;
  }
  .support-list > li .txt {
    width: calc(100% - 12rem - 3.4rem);
  }
}

/* .profile */
.profile-title {
  display: grid;
  align-items: center;
  background: url("./../../assets/img/profile_ttl_bg_sp.webp") no-repeat center top/cover;
  color: #182E59;
  font-family: "Noto Serif JP", serif;
  font-size: 4.6rem;
  line-height: 1.2;
  padding: 1rem 0;
  text-align: center;
  height: 17.6rem;
}
.profile-content {
  padding: 9rem 0 5rem;
}
.profile-content .inner {
  padding: 0 5rem;
}
.profile-bio {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 5.5rem;
}
.profile-bio .txt {
  width: calc(100% - 30.4rem);
}
.profile-bio .txt picture {
  width: 36.4rem;
}
.profile-bio .txt dt {
  font-size: 6.2rem;
  line-height: 1.2;
  padding-bottom: 2rem;
}
.profile-bio .txt dt span {
  display: block;
  font-size: 2.6rem;
}
.profile-bio .txt dd {
  font-size: 2.7rem;
  line-height: 1.4;
}
.profile-bio .img {
  width: 30.4rem;
}
.profile-txt {
  color: #383838;
  font-size: 2.7rem;
}
.profile-performance h3 {
  font-size: 4.2rem;
  text-align: center;
  margin: 5rem auto 6rem;
  padding: 4.3rem 0 2.3rem;
  position: relative;
}
.profile-performance h3::before {
  position: absolute;
  content: "";
  background: url("./../../assets/img/profile_performance_ttl01.webp") no-repeat center center/contain;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 42.6rem;
  height: 3.1rem;
}
.profile-performance h3::after {
  position: absolute;
  content: "";
  background: url("./../../assets/img/profile_performance_ttl02.webp") no-repeat center center/contain;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 53.1rem;
  height: 0.3rem;
}
.profile-performance .box {
  border: 2.1rem solid #EDEDED;
  padding: 2rem 4rem 6rem;
}
.profile-performance .list:not(:last-child) {
  margin-bottom: 3.2rem;
}
.profile-performance .list dt {
  font-size: 4.2rem;
  padding-bottom: 3.2rem;
}
.profile-performance .list dd {
  font-size: 3.2rem;
  margin-left: 5.6rem;
}
.profile-performance .listcheck dt::before {
  top: 2.1rem;
}
@media (min-width: 769px) {
  .profile-title {
    background: url("./../../assets/img/profile_ttl_bg.webp") no-repeat center top/cover;
    font-size: 6.2rem;
    height: 21.1rem;
  }
  .profile-content {
    padding: 9rem 0 10.4rem;
  }
  .profile-content .inner {
    padding: 0;
    width: 120rem;
  }
  .profile-bio {
    margin: 0 auto;
    padding-bottom: 5rem;
    width: 100rem;
  }
  .profile-bio .txt {
    width: calc(100% - 40rem);
  }
  .profile-bio .txt picture {
    width: 60rem;
  }
  .profile-bio .txt dt {
    padding-bottom: 3rem;
  }
  .profile-bio .txt dd {
    font-size: 3.2rem;
  }
  .profile-bio .img {
    width: 40rem;
  }
  .profile-txt {
    margin: 0 auto;
    width: 100rem;
  }
  .profile-performance h3 {
    margin: 7rem auto 5rem;
  }
  .profile-performance .box {
    padding: 8rem 10rem;
  }
}

/* .form */
.form-title {
  display: grid;
  align-items: center;
  background: url("./../../assets/img/form_ttl_bg_sp.webp") no-repeat center top/cover;
  color: #182E59;
  font-family: "Noto Serif JP", serif;
  font-size: 4.6rem;
  line-height: 1.2;
  padding: 1rem 0;
  text-align: center;
  height: 17.6rem;
}
.form-content {
  background-color: #efefef;
  padding: 5rem 0;
}
.form-content .inner {
  padding: 0 5rem;
}
@media (min-width: 769px) {
  .form-title {
    background: url("./../../assets/img/form_ttl_bg.webp") no-repeat center top/cover;
    height: 21.1rem;
  }
}

/* --- footer --- */
footer {
  padding: 7rem 0;
}
footer .footer-logo {
  margin: 0 auto 3rem;
  width: 46.5rem;
}
footer .footer-content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
footer .footer-content small {
  font-size: 1.6rem;
}
footer .footer-list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  margin-bottom: 2rem;
}
footer .footer-list > li {
  font-size: 2rem;
  line-height: 1;
}
footer .footer-list > li:not(:last-child) {
  border-right: 1px solid #121212;
  margin-right: 1rem;
  padding-right: 2rem;
}
footer .footer-list > li a {
  text-decoration: none;
}
@media (min-width: 769px) {
  footer .footer-logo {
    margin-bottom: 5rem;
  }
}

/* --- utility --- */
/* .common */
.sp {
  display: block !important;
}
@media (min-width: 769px) {
  .sp {
    display: none !important;
  }
}

.pc {
  display: none !important;
}
@media (min-width: 769px) {
  .pc {
    display: block !important;
  }
}

.color-blue {
  color: #064A94;
}

.color-red {
  color: #BF0403;
}