@media only screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}
:root {
  --bg-color: #ffffff;
  --text-color: #121212;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg-color: #121212;
    --text-color: #f0f0f0;
  }
}

html {
  word-break: break-all;
  font-size: 0.8333333333vw;
  scroll-behavior: smooth;
}
@media only screen and (max-width: 767px) {
  html {
    font-size: 3.5897435897vw;
  }
}

body {
  font-size: 1rem;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  background-color: var(--bg-color);
  color: var(--text-color);
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 1rem;
  }
}
body a {
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.Inner {
  inline-size: 100%;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  -webkit-margin-end: auto;
          margin-inline-end: auto;
  -webkit-padding-start: 1.5625vw;
          padding-inline-start: 1.5625vw;
  -webkit-padding-end: 1.5625vw;
          padding-inline-end: 1.5625vw;
}
@media only screen and (max-width: 767px) {
  .Inner {
    max-width: 550px;
    -webkit-padding-start: 1.4285714286rem;
            padding-inline-start: 1.4285714286rem;
    -webkit-padding-end: 1.4285714286rem;
            padding-inline-end: 1.4285714286rem;
  }
}

.Header {
  position: fixed;
  inset-block-start: 0;
  inset-inline-start: 0;
  inline-size: 100%;
  z-index: 1000;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  block-size: 4.1666666667vw;
  -webkit-padding-start: 3.90625vw;
          padding-inline-start: 3.90625vw;
  -webkit-padding-end: 2.1354166667vw;
          padding-inline-end: 2.1354166667vw;
}
@media only screen and (max-width: 767px) {
  .Header {
    block-size: 4.2857142857rem;
    -webkit-padding-start: 1rem;
            padding-inline-start: 1rem;
    -webkit-padding-end: 1.0692857143rem;
            padding-inline-end: 1.0692857143rem;
  }
}

.HeaderLogo {
  inline-size: 7.34375vw;
  block-size: 1.7708333333vw;
}
@media only screen and (max-width: 767px) {
  .HeaderLogo {
    inline-size: 10.0714285714rem;
    block-size: 2.4285714286rem;
  }
}

.HeaderLogoLink {
  display: block;
  inline-size: 100%;
  block-size: 100%;
}

.HeaderLogoImg {
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.HeaderHamburger {
  position: relative;
  border: none;
  cursor: pointer;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  inline-size: 2.2916666667vw;
  block-size: 2.2916666667vw;
}
@media only screen and (max-width: 767px) {
  .HeaderHamburger {
    inline-size: 3.1428571429rem;
    block-size: 3.1428571429rem;
  }
}

.HeaderHamburgerBar {
  position: absolute;
  inset-inline-start: 50%;
  inset-block-start: 50%;
  background-color: #333;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  inline-size: 1.6666666667vw;
  block-size: 0.078125vw;
}
@media only screen and (max-width: 767px) {
  .HeaderHamburgerBar {
    inline-size: 1.6185714286rem;
    block-size: 0.1071428571rem;
  }
}

.HeaderHamburgerBar:nth-child(1) {
  -webkit-transform: translate(-50%, calc(-50% - 0.3385416667vw));
          transform: translate(-50%, calc(-50% - 0.3385416667vw));
}
@media only screen and (max-width: 767px) {
  .HeaderHamburgerBar:nth-child(1) {
    -webkit-transform: translate(-50%, calc(-50% - 0.3571428571rem));
            transform: translate(-50%, calc(-50% - 0.3571428571rem));
  }
}

.HeaderHamburgerBar:nth-child(2) {
  -webkit-transform: translate(-50%, calc(-50% + 0.3385416667vw));
          transform: translate(-50%, calc(-50% + 0.3385416667vw));
}
@media only screen and (max-width: 767px) {
  .HeaderHamburgerBar:nth-child(2) {
    -webkit-transform: translate(-50%, calc(-50% + 0.3571428571rem));
            transform: translate(-50%, calc(-50% + 0.3571428571rem));
  }
}

.Header.is-Open .HeaderHamburgerBar:nth-child(1) {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}

.Header.is-Open .HeaderHamburgerBar:nth-child(2) {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.HeaderNav {
  position: fixed;
  inset-inline-end: 0;
  background-color: rgba(255, 255, 255, 0.96);
  overflow-y: auto;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  inset-block-start: 4.1666666667vw;
  inline-size: 17.8125vw;
  block-size: calc(100dvh - 4.1666666667vw);
}
@media only screen and (max-width: 767px) {
  .HeaderNav {
    inset-block-start: 4.2857142857rem;
    inline-size: 24.4285714286rem;
    block-size: calc(100dvh - 4.2857142857rem);
  }
}

.Header.is-Open .HeaderNav {
  visibility: visible;
  opacity: 1;
}

.HeaderNavInner {
  -webkit-padding-before: 3.0208333333vw;
          padding-block-start: 3.0208333333vw;
  -webkit-padding-after: 2.0833333333vw;
          padding-block-end: 2.0833333333vw;
  -webkit-padding-start: 2.0833333333vw;
          padding-inline-start: 2.0833333333vw;
  -webkit-padding-end: 2.0833333333vw;
          padding-inline-end: 2.0833333333vw;
}
@media only screen and (max-width: 767px) {
  .HeaderNavInner {
    -webkit-padding-before: 4.1428571429rem;
            padding-block-start: 4.1428571429rem;
    -webkit-padding-after: 2.8571428571rem;
            padding-block-end: 2.8571428571rem;
    -webkit-padding-start: 2.8571428571rem;
            padding-inline-start: 2.8571428571rem;
    -webkit-padding-end: 2.8571428571rem;
            padding-inline-end: 2.8571428571rem;
  }
}

.HeaderNavItem {
  -webkit-border-after: 1px solid rgba(118, 147, 177, 0.3);
          border-block-end: 1px solid rgba(118, 147, 177, 0.3);
  -webkit-padding-after: 1.1458333333vw;
          padding-block-end: 1.1458333333vw;
}
@media only screen and (max-width: 767px) {
  .HeaderNavItem {
    -webkit-padding-after: 1.5714285714rem;
            padding-block-end: 1.5714285714rem;
  }
}

.HeaderNavItem:not(:first-child) {
  -webkit-margin-before: 1.1458333333vw;
          margin-block-start: 1.1458333333vw;
}
@media only screen and (max-width: 767px) {
  .HeaderNavItem:not(:first-child) {
    -webkit-margin-before: 1.5714285714rem;
            margin-block-start: 1.5714285714rem;
  }
}

.HeaderNavLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-family: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
  font-weight: 700;
  line-height: 1.7;
  color: #7693b1;
  font-size: 0.7291666667vw;
}
@media only screen and (max-width: 767px) {
  .HeaderNavLink {
    font-size: 1rem;
  }
}

.HeaderNavLink::after {
  content: "";
  -webkit-border-before: 1.5px solid currentColor;
          border-block-start: 1.5px solid currentColor;
  -webkit-border-end: 1.5px solid currentColor;
          border-inline-end: 1.5px solid currentColor;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -ms-flex-negative: 0;
      flex-shrink: 0;
  inline-size: 0.3645833333vw;
  block-size: 0.3645833333vw;
}
@media only screen and (max-width: 767px) {
  .HeaderNavLink::after {
    inline-size: 0.5rem;
    block-size: 0.5rem;
  }
}

.HeaderNavSocial {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-margin-before: 2.7604166667vw;
          margin-block-start: 2.7604166667vw;
  -webkit-column-gap: 1.5625vw;
     -moz-column-gap: 1.5625vw;
          column-gap: 1.5625vw;
}
@media only screen and (max-width: 767px) {
  .HeaderNavSocial {
    -webkit-margin-before: 3.7857142857rem;
            margin-block-start: 3.7857142857rem;
    -webkit-column-gap: 2.1428571429rem;
       -moz-column-gap: 2.1428571429rem;
            column-gap: 2.1428571429rem;
  }
}

.HeaderNavSocialItem {
  inline-size: 2.1875vw;
  block-size: 2.1875vw;
}
@media only screen and (max-width: 767px) {
  .HeaderNavSocialItem {
    inline-size: 3rem;
    block-size: 3rem;
  }
}

.HeaderNavSocialLink {
  display: block;
  inline-size: 100%;
  block-size: 100%;
}

.HeaderNavSocialLink img {
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

body.is-MenuOpen {
  overflow: hidden;
}

.SiteFooter {
  background-image: linear-gradient(181.9deg, #839FBD 4.149%, #7693B1 38.8%, #556982 97.752%);
  color: #fff;
  -webkit-padding-before: 2.0833333333vw;
          padding-block-start: 2.0833333333vw;
  -webkit-padding-after: 2.6041666667vw;
          padding-block-end: 2.6041666667vw;
}
@media only screen and (max-width: 767px) {
  .SiteFooter {
    -webkit-padding-before: 1.4285714286rem;
            padding-block-start: 1.4285714286rem;
    -webkit-padding-after: 1.0714285714rem;
            padding-block-end: 1.0714285714rem;
  }
}

.SiteFooterInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  inline-size: 100%;
}

.SiteFooterNav {
  inline-size: 100%;
}

.SiteFooterNavList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-padding-start: 0;
          padding-inline-start: 0;
}

.SiteFooterNavItem {
  position: relative;
  -webkit-padding-start: 0.5208333333vw;
          padding-inline-start: 0.5208333333vw;
  -webkit-padding-end: 0.5208333333vw;
          padding-inline-end: 0.5208333333vw;
}
@media only screen and (max-width: 767px) {
  .SiteFooterNavItem {
    -webkit-padding-start: 0.7142857143rem;
            padding-inline-start: 0.7142857143rem;
    -webkit-padding-end: 0.7142857143rem;
            padding-inline-end: 0.7142857143rem;
  }
}

.SiteFooterNavItem + .SiteFooterNavItem::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: currentColor;
  inline-size: 0.0520833333vw;
  block-size: 0.6770833333vw;
}
@media only screen and (max-width: 767px) {
  .SiteFooterNavItem + .SiteFooterNavItem::before {
    inline-size: 0.0714285714rem;
    block-size: 0.9285714286rem;
  }
}

.SiteFooterNavLink {
  display: inline-block;
  font-family: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
  font-weight: 500;
  color: inherit;
  text-decoration: none;
  letter-spacing: 0;
  line-height: 2.5833333333;
  font-size: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .SiteFooterNavLink {
    font-size: 0.8571428571rem;
  }
}

.SiteFooterNavLink:hover,
.SiteFooterNavLink:focus-visible {
  text-decoration: underline;
}

.SiteFooterSocial {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-padding-start: 0;
          padding-inline-start: 0;
  -webkit-margin-before: 1.0416666667vw;
          margin-block-start: 1.0416666667vw;
  gap: 1.0416666667vw;
}
@media only screen and (max-width: 767px) {
  .SiteFooterSocial {
    -webkit-margin-before: 0.7142857143rem;
            margin-block-start: 0.7142857143rem;
    gap: 0.7857142857rem;
  }
}

.SiteFooterSocialItem {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.SiteFooterSocialLink {
  display: block;
  color: inherit;
  inline-size: 1.875vw;
  block-size: 1.875vw;
}
@media only screen and (max-width: 767px) {
  .SiteFooterSocialLink {
    inline-size: 1.2857142857rem;
    block-size: 1.2857142857rem;
  }
}

.SiteFooterSocialImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

.SiteFooterCopyright {
  font-family: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
  font-weight: 400;
  text-align: center;
  letter-spacing: 0;
  line-height: 2.75;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-margin-before: 2.0833333333vw;
          margin-block-start: 2.0833333333vw;
  font-size: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .SiteFooterCopyright {
    -webkit-margin-before: 1.2857142857rem;
            margin-block-start: 1.2857142857rem;
    font-size: 0.5714285714rem;
  }
}

.ArrowsArea {
  width: 51.5rem;
  margin-inline: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 5.75rem;
     -moz-column-gap: 5.75rem;
          column-gap: 5.75rem;
  color: #354256;
  -webkit-margin-before: 5.1875rem;
          margin-block-start: 5.1875rem;
  -webkit-margin-after: 6.875rem;
          margin-block-end: 6.875rem;
}

.PrevNavi,
.NextNavi {
  width: 22.875rem;
  height: 5rem;
  border-radius: 999px;
  border: 2px solid;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.5rem;
  font-weight: 700;
  position: relative;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.PrevNavi:hover,
.NextNavi:hover {
  background-color: #354256;
  color: #fff;
}

.PrevNavi__p,
.NextNavi__p {
  opacity: 0.6;
  pointer-events: none;
}

.PrevNavi::after {
  display: block;
  content: "";
  width: 0.9375rem;
  height: 0.9375rem;
  -webkit-border-before: 2px solid;
          border-block-start: 2px solid;
  -webkit-border-start: 2px solid;
          border-inline-start: 2px solid;
  position: absolute;
  top: 50%;
  left: 3.125rem;
  -webkit-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
}

.PrevNavi:hover::after,
.NextNavi:hover::after {
  border-color: #fff;
}

.NextNavi::after {
  display: block;
  content: "";
  width: 0.9375rem;
  height: 0.9375rem;
  -webkit-border-before: 2px solid;
          border-block-start: 2px solid;
  -webkit-border-end: 2px solid;
          border-inline-end: 2px solid;
  position: absolute;
  top: 50%;
  right: 3.125rem;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}

.is-disabled {
  color: #ccc;
  cursor: default;
  pointer-events: none;
  text-decoration: none;
}

.list-pageNo {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .list-pageNo {
    margin-top: 6.4rem;
  }
}

.PageNumBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 0.625rem;
     -moz-column-gap: 0.625rem;
          column-gap: 0.625rem;
}

.page-numbers {
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
  padding-top: 0.9375rem;
  width: 3.125rem;
  height: 3.125rem;
  background: #fff;
  border: 0.0625rem solid #000;
}

.page-numbers.current {
  color: #fff;
  background: #000;
}

.page-numbers.dots {
  border: none;
}

.PageNumBox div {
  inline-size: 3.125rem;
  block-size: 3.125rem;
  -webkit-margin-start: 0.21875rem;
          margin-inline-start: 0.21875rem;
  -webkit-margin-end: 0.21875rem;
          margin-inline-end: 0.21875rem;
  border: 1px solid #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}

.PageNumBox div:hover {
  opacity: 0.5;
}

.PageNumBox div:nth-of-type(1) {
  background-color: #000;
  color: #fff;
}

.PageNumBox div:nth-of-type(4) {
  border: none;
}

.PageNumBox div p,
.PageNumBox div a {
  -webkit-padding-before: 0.625rem;
          padding-block-start: 0.625rem;
  -webkit-padding-after: 0.625rem;
          padding-block-end: 0.625rem;
  -webkit-padding-start: 0.9375rem;
          padding-inline-start: 0.9375rem;
  -webkit-padding-end: 0.9375rem;
          padding-inline-end: 0.9375rem;
}

.Breadcrumb {
  -webkit-margin-after: 0.5rem;
          margin-block-end: 0.5rem;
}

.Breadcrumb_List {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  row-gap: 1rem;
}
@media only screen and (max-width: 767px) {
  .Breadcrumb_List {
    row-gap: unset;
  }
}

.Breadcrumb_Item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.125rem;
  color: #fff;
  line-height: 2.3333333333;
}
@media only screen and (max-width: 767px) {
  .Breadcrumb_Item {
    font-size: 0.8571428571rem;
    line-height: unset;
  }
}

.Breadcrumb_Item:not(:last-child)::after {
  content: ">";
  margin-left: min(0.6024096386vw, 10px);
  color: #fff;
  font-family: sans-serif;
  -ms-flex-item-align: center;
      align-self: center;
}

.Breadcrumb_Item a {
  text-decoration: none;
  color: inherit;
}

.Breadcrumb_Item a:hover {
  text-decoration: underline;
}

.Breadcrumb_List--white .Breadcrumb_Item {
  color: #000;
}

.Breadcrumb_List--white .Breadcrumb_Item:not(:last-child)::after {
  color: #000;
}

.PageFv {
  position: relative;
  overflow: hidden;
  block-size: 66.1458333333vw;
}
@media only screen and (max-width: 767px) {
  .PageFv {
    background-color: #f4f8fb;
    block-size: 94.2142857143rem;
  }
}

.PageFv::before {
  content: "";
  position: absolute;
  inset-block-start: 26.9270833333vw;
  inset-inline-start: 0;
  inline-size: 100%;
  block-size: 39.21875vw;
  background-color: #f4f8fb;
}
@media only screen and (max-width: 767px) {
  .PageFv::before {
    display: none;
  }
}

.PageFvSlider {
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0;
  inline-size: 50vw;
  block-size: 36.4583333333vw;
}
@media only screen and (max-width: 767px) {
  .PageFvSlider {
    inline-size: 100%;
    inset-block-start: 4.2857142857rem;
    block-size: 35.1428571429rem;
  }
}

.PageFvSliderSlide {
  overflow: hidden;
}

.PageFvSliderImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.PageFvFade {
  position: absolute;
  z-index: 2;
  inset-inline-start: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  pointer-events: none;
  background: radial-gradient(ellipse at center top, rgb(244, 248, 251) 0%, rgba(244, 248, 251, 0.85) 35%, rgba(244, 248, 251, 0) 80%);
}
@media only screen and (max-width: 767px) {
  .PageFvFade {
    inset-block-start: 38.5714285714rem;
    inline-size: 30.3571428571rem;
    block-size: 8.5714285714rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageFvFade {
    display: none;
  }
}

.PageFvDecoEn {
  position: absolute;
  z-index: 3;
  pointer-events: none;
  inset-block-start: 5.6770833333vw;
  inset-inline-start: 56.6666666667vw;
  inline-size: 33.9479166667vw;
  block-size: 6.7541666667vw;
}
@media only screen and (max-width: 767px) {
  .PageFvDecoEn {
    inset-block-start: 38.1428571429rem;
    inset-inline-start: 1.3571428571rem;
    inline-size: 24.9285714286rem;
    block-size: 4.9285714286rem;
  }
}

.PageFvDecoEnImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.PageFvTitle {
  position: absolute;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 600;
  color: #1a1a1a;
  line-height: 1;
  letter-spacing: 0;
  inset-block-start: 11.7078125vw;
  inset-inline-start: 56.7640625vw;
  font-size: 2.7083333333vw;
}
@media only screen and (max-width: 767px) {
  .PageFvTitle {
    inset-block-start: 42.5714285714rem;
    inset-inline-start: 1.4285714286rem;
    font-size: 2rem;
  }
}

.PageFvTitleRow {
  display: block;
}

.PageFvTitleRow + .PageFvTitleRow {
  -webkit-margin-before: 1.7541666667vw;
          margin-block-start: 1.7541666667vw;
}
@media only screen and (max-width: 767px) {
  .PageFvTitleRow + .PageFvTitleRow {
    -webkit-margin-before: 1.2857142857rem;
            margin-block-start: 1.2857142857rem;
  }
}

.PageFvVCopy {
  position: absolute;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #7693b1;
  -webkit-writing-mode: horizontal-tb;
      -ms-writing-mode: lr-tb;
          writing-mode: horizontal-tb;
  inset-inline-start: 40.5729166667vw;
  font-size: 1.25vw;
  line-height: 1.4583333333;
  letter-spacing: 0;
}
@media only screen and (max-width: 767px) {
  .PageFvVCopy {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    line-height: 1.8;
    letter-spacing: 0.4em;
    inset-block-end: 2.1428571429rem;
    inset-inline-start: 55rem;
    font-size: 1.4285714286rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageFvVCopy {
    inset-block-start: 43.8541666667vw;
    inline-size: 18.8541666667vw;
    block-size: auto;
    text-align: center;
  }
}

@media only screen and (min-width: 768px) {
  .PageFvVCopy br:nth-of-type(2) {
    display: none;
  }
}

.PageFvProductImg {
  position: absolute;
  inset-block-start: 18.2291666667vw;
  inset-inline-start: 62.1354166667vw;
  inline-size: 22.9895833333vw;
  block-size: 35.0890625vw;
}
@media only screen and (max-width: 767px) {
  .PageFvProductImg {
    inset-block-start: 50rem;
    inset-inline-start: 11.4285714286rem;
    inline-size: 18.4285714286rem;
    block-size: 28.0714285714rem;
  }
}

.PageFvProductImgFig {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.PageFvLead {
  position: absolute;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: center;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  background-image: linear-gradient(182.196deg, #839fbd 4.149%, #7693b1 38.8%, #556982 97.752%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  inset-block-start: 54.7395833333vw;
  inset-inline-start: 36.0416666667vw;
  inline-size: 27.9166666667vw;
  font-size: 1.25vw;
  line-height: 1.4583333333;
}
@media only screen and (max-width: 767px) {
  .PageFvLead {
    line-height: 2.25;
    inset-block-start: 82.0714285714rem;
    inset-inline-start: 5.5rem;
    inline-size: 16.8571428571rem;
    font-size: 1.1428571429rem;
  }
}

@media only screen and (min-width: 768px) {
  .PageFvLead br:nth-of-type(2) {
    display: none;
  }
}

.PageFvLeadEm {
  font-size: inherit;
}
@media only screen and (max-width: 767px) {
  .PageFvLeadEm {
    font-size: 1.4285714286rem;
  }
}

@-webkit-keyframes pageFvDropFloat {
  0%, 100% {
    translate: 0 0;
  }
  50% {
    translate: 0 var(--drop-float-distance, 0);
  }
}

@keyframes pageFvDropFloat {
  0%, 100% {
    translate: 0 0;
  }
  50% {
    translate: 0 var(--drop-float-distance, 0);
  }
}
.PageFvDrop {
  position: absolute;
  z-index: 2;
  pointer-events: none;
  -webkit-animation: pageFvDropFloat var(--drop-float-duration, 6s) ease-in-out infinite;
          animation: pageFvDropFloat var(--drop-float-duration, 6s) ease-in-out infinite;
  -webkit-animation-delay: var(--drop-float-delay, 0s);
          animation-delay: var(--drop-float-delay, 0s);
  will-change: translate;
}

@media (prefers-reduced-motion: reduce) {
  .PageFvDrop {
    -webkit-animation: none;
            animation: none;
  }
}
.PageFvDropImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.PageFvDrop--cluster {
  -webkit-transform: rotate(-11.51deg);
          transform: rotate(-11.51deg);
  opacity: 0.49;
  --drop-float-duration: 9.2s;
  --drop-float-delay: -1.4s;
  --drop-float-distance: -0.7291666667vw;
  inset-block-start: 35.1651041667vw;
  inset-inline-start: 15.15625vw;
  inline-size: 4.0541666667vw;
  block-size: 4.0541666667vw;
}
@media only screen and (max-width: 767px) {
  .PageFvDrop--cluster {
    --drop-float-distance: -1rem;
    inset-block-start: 49.4285714286rem;
    inset-inline-start: -1.7857142857rem;
    inline-size: 5.5714285714rem;
    block-size: 5.5714285714rem;
  }
}

.PageFvDrop--top {
  --drop-float-duration: 5.7s;
  --drop-float-delay: -0.3s;
  --drop-float-distance: -0.4166666667vw;
  inset-block-start: 35.9864583333vw;
  inset-inline-start: 42.96875vw;
  inline-size: 1.2145833333vw;
  block-size: 1.2145833333vw;
}
@media only screen and (max-width: 767px) {
  .PageFvDrop--top {
    --drop-float-distance: -0.5714285714rem;
    inset-block-start: 6rem;
    inset-inline-start: 26.7857142857rem;
    inline-size: 1.6428571429rem;
    block-size: 1.6428571429rem;
  }
}

.PageFvDrop--title {
  --drop-float-duration: 6.9s;
  --drop-float-delay: -2.1s;
  --drop-float-distance: -0.5208333333vw;
  inset-block-start: 36.5015625vw;
  inset-inline-start: 61.71875vw;
  inline-size: 2.4104166667vw;
  block-size: 2.4104166667vw;
}
@media only screen and (max-width: 767px) {
  .PageFvDrop--title {
    --drop-float-distance: -0.7142857143rem;
    inset-block-start: 45.8571428571rem;
    inset-inline-start: 23.7857142857rem;
    inline-size: 1.6428571429rem;
    block-size: 1.6428571429rem;
  }
}

.PageFvDrop--right {
  --drop-float-duration: 7.6s;
  --drop-float-delay: -0.8s;
  --drop-float-distance: -0.625vw;
  inset-block-start: 36.8682291667vw;
  inset-inline-start: 95.2973958333vw;
  inline-size: 3.7619791667vw;
  block-size: 3.7619791667vw;
}
@media only screen and (max-width: 767px) {
  .PageFvDrop--right {
    --drop-float-distance: -0.8571428571rem;
    inset-block-start: 57.0714285714rem;
    inset-inline-start: 25.7142857143rem;
    inline-size: 3.2857142857rem;
    block-size: 3.2857142857rem;
  }
}

.PageFvDrop--leftMid {
  --drop-float-duration: 6.3s;
  --drop-float-delay: -3.5s;
  --drop-float-distance: -0.46875vw;
  inset-block-start: 26.0859375vw;
  inset-inline-start: 85.2083333333vw;
  inline-size: 4.2630208333vw;
  block-size: 4.2630208333vw;
}
@media only screen and (max-width: 767px) {
  .PageFvDrop--leftMid {
    --drop-float-distance: -0.6428571429rem;
    inset-block-start: 70.7857142857rem;
    inset-inline-start: 4.7142857143rem;
    inline-size: 2.3571428571rem;
    block-size: 2.3571428571rem;
  }
}

.PageFvDrop--leftLarge {
  --drop-float-duration: 8.7s;
  --drop-float-delay: -1.7s;
  --drop-float-distance: -0.9375vw;
  inset-block-start: 49.4791666667vw;
  inset-inline-start: 29.375vw;
  inline-size: 5.78125vw;
  block-size: 5.78125vw;
}
@media only screen and (max-width: 767px) {
  .PageFvDrop--leftLarge {
    --drop-float-distance: -1.2857142857rem;
    inset-block-start: 76.3571428571rem;
    inset-inline-start: -2.0714285714rem;
    inline-size: 7.9285714286rem;
    block-size: 7.9285714286rem;
  }
}

.PageFvDrop--bottom {
  --drop-float-duration: 5.9s;
  --drop-float-delay: -2.8s;
  --drop-float-distance: -0.46875vw;
  inset-block-start: 57.3526041667vw;
  inset-inline-start: 8.2291666667vw;
  inline-size: 4.0541666667vw;
  block-size: 4.0541666667vw;
}
@media only screen and (max-width: 767px) {
  .PageFvDrop--bottom {
    --drop-float-distance: -0.6428571429rem;
    inset-block-start: 76.7142857143rem;
    inset-inline-start: 10.2857142857rem;
    inline-size: 2.0714285714rem;
    block-size: 2.0714285714rem;
  }
}

@media only screen and (min-width: 768px) {
  .PageFvGlow {
    position: absolute;
    z-index: 2;
    pointer-events: none;
    inset-block-start: 40.690625vw;
    inset-inline-start: 67.3151041667vw;
    inline-size: 16.7484375vw;
    block-size: 16.7338541667vw;
  }
}

.PageFvGlowImg {
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

@-webkit-keyframes pageFvIntroFadeInUp {
  from {
    opacity: 0;
    translate: 0 var(--fv-intro-offset);
  }
  to {
    opacity: 1;
    translate: 0 0;
  }
}

@keyframes pageFvIntroFadeInUp {
  from {
    opacity: 0;
    translate: 0 var(--fv-intro-offset);
  }
  to {
    opacity: 1;
    translate: 0 0;
  }
}
@-webkit-keyframes pageFvIntroFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes pageFvIntroFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.PageFv {
  --fv-intro-offset: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .PageFv {
    --fv-intro-offset: 0.8571428571rem;
  }
}

.PageFvSlider {
  -webkit-animation: pageFvIntroFadeIn 1.8s cubic-bezier(0.22, 1, 0.36, 1) 0s both;
          animation: pageFvIntroFadeIn 1.8s cubic-bezier(0.22, 1, 0.36, 1) 0s both;
}

.PageFvDecoEn,
.PageFvTitle {
  -webkit-animation: pageFvIntroFadeInUp 1.8s cubic-bezier(0.22, 1, 0.36, 1) 1s both;
          animation: pageFvIntroFadeInUp 1.8s cubic-bezier(0.22, 1, 0.36, 1) 1s both;
}

.PageFvProductImg {
  -webkit-animation: pageFvIntroFadeInUp 1.8s cubic-bezier(0.22, 1, 0.36, 1) 2s both;
          animation: pageFvIntroFadeInUp 1.8s cubic-bezier(0.22, 1, 0.36, 1) 2s both;
}

.PageFvVCopy {
  -webkit-animation: pageFvIntroFadeInUp 1.8s cubic-bezier(0.22, 1, 0.36, 1) 3s both;
          animation: pageFvIntroFadeInUp 1.8s cubic-bezier(0.22, 1, 0.36, 1) 3s both;
}

.PageFvDrop--leftLarge {
  -webkit-animation: pageFvDropFloat var(--drop-float-duration, 6s) ease-in-out var(--drop-float-delay, 0s) infinite, pageFvIntroFadeIn 1.8s cubic-bezier(0.22, 1, 0.36, 1) 4s both;
          animation: pageFvDropFloat var(--drop-float-duration, 6s) ease-in-out var(--drop-float-delay, 0s) infinite, pageFvIntroFadeIn 1.8s cubic-bezier(0.22, 1, 0.36, 1) 4s both;
}

.PageFvLead {
  -webkit-animation: pageFvIntroFadeInUp 1.8s cubic-bezier(0.22, 1, 0.36, 1) 5s both;
          animation: pageFvIntroFadeInUp 1.8s cubic-bezier(0.22, 1, 0.36, 1) 5s both;
}

@media (prefers-reduced-motion: reduce) {
  .PageFvSlider,
  .PageFvDecoEn,
  .PageFvTitle,
  .PageFvProductImg,
  .PageFvVCopy,
  .PageFvLead {
    -webkit-animation: none;
            animation: none;
  }
}
.PageConcern {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 767px) {
  .PageConcern {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    block-size: 88.5714285714rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageConcern {
    -webkit-padding-before: 7.8125vw;
            padding-block-start: 7.8125vw;
    -webkit-padding-after: 9.375vw;
            padding-block-end: 9.375vw;
  }
}

.PageConcernBg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#7ca0bb), color-stop(28.79%, #7693b1), color-stop(57.55%, rgba(157, 194, 213, 0)));
  background-image: linear-gradient(to bottom, #7ca0bb 0%, #7693b1 28.79%, rgba(157, 194, 213, 0) 57.55%);
}

.PageConcernBgImg {
  position: absolute;
  inset: 0;
  opacity: 0.54;
  pointer-events: none;
}

.PageConcernBgImgPic {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.PageConcernTitle {
  position: relative;
  z-index: 1;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 600;
  letter-spacing: 0;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  inline-size: 62.5vw;
  font-size: 1.6666666667vw;
  line-height: 1;
  color: #363636;
  text-align: center;
  white-space: normal;
}
@media only screen and (max-width: 767px) {
  .PageConcernTitle {
    text-align: center;
    color: #363636;
    line-height: 1.25;
    white-space: nowrap;
    -webkit-margin-before: 5rem;
            margin-block-start: 5rem;
    -webkit-margin-start: 3.2857142857rem;
            margin-inline-start: 3.2857142857rem;
    inline-size: 21.4285714286rem;
    font-size: 1.4285714286rem;
  }
}

.PageConcernList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: absolute;
  z-index: 2;
  inline-size: 15.9895833333vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  row-gap: 0.6526041667vw;
}
@media only screen and (max-width: 767px) {
  .PageConcernList {
    position: relative;
    z-index: 1;
    -webkit-margin-before: 2.2142857143rem;
            margin-block-start: 2.2142857143rem;
    -webkit-margin-start: 5.2142857143rem;
            margin-inline-start: 5.2142857143rem;
    inline-size: 17.5rem;
    row-gap: 0.7142857143rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageConcernList {
    inset-block-start: 17.1354166667vw;
    inset-inline-start: 30.3645833333vw;
  }
}

.PageConcernItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #141414;
  color: #fff;
  font-family: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
  font-weight: 400;
  block-size: 1.8276041667vw;
  -webkit-padding-start: 1.5010416667vw;
          padding-inline-start: 1.5010416667vw;
  -webkit-column-gap: 0.6770833333vw;
     -moz-column-gap: 0.6770833333vw;
          column-gap: 0.6770833333vw;
  font-size: 0.9375vw;
}
@media only screen and (max-width: 767px) {
  .PageConcernItem {
    block-size: 2rem;
    -webkit-padding-start: 1.6428571429rem;
            padding-inline-start: 1.6428571429rem;
    -webkit-column-gap: 0.7142857143rem;
       -moz-column-gap: 0.7142857143rem;
            column-gap: 0.7142857143rem;
    font-size: 1.1428571429rem;
  }
}

.PageConcernItemIcon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  color: #fff;
  inline-size: 0.9791666667vw;
  block-size: 0.9791666667vw;
}
@media only screen and (max-width: 767px) {
  .PageConcernItemIcon {
    inline-size: 1.0714285714rem;
    block-size: 1.0714285714rem;
  }
}

.PageConcernItemIconSvg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
}

.PageConcernItemText {
  line-height: 1.875;
}

.PageConcernLead {
  position: relative;
  z-index: 1;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 600;
  letter-spacing: 0;
  -webkit-margin-before: 26.3020833333vw;
          margin-block-start: 26.3020833333vw;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  inline-size: 62.5vw;
  font-size: 1.25vw;
  line-height: 1.4583333333;
  color: #202020;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .PageConcernLead {
    text-align: center;
    color: #202020;
    line-height: 1.5625;
    -webkit-margin-before: 1.7142857143rem;
            margin-block-start: 1.7142857143rem;
    -webkit-margin-start: 4.8571428571rem;
            margin-inline-start: 4.8571428571rem;
    inline-size: 18.8571428571rem;
    font-size: 1.1428571429rem;
  }
}

.PageConcernPhoto {
  z-index: 1;
  overflow: hidden;
  position: absolute;
  inline-size: 25.009375vw;
  block-size: 17.96875vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
}
@media only screen and (max-width: 767px) {
  .PageConcernPhoto {
    position: relative;
    -webkit-margin-before: 2.1428571429rem;
            margin-block-start: 2.1428571429rem;
    -webkit-margin-start: 4.8571428571rem;
            margin-inline-start: 4.8571428571rem;
    inline-size: 17.5rem;
    block-size: 17.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageConcernPhoto {
    inset-block-start: 14.9479166667vw;
    inset-inline-start: 44.6354166667vw;
  }
}

.PageConcernPhotoImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.PageConcernDrop {
  position: absolute;
  z-index: 2;
  pointer-events: none;
  -webkit-transform: rotate(-11.51deg);
          transform: rotate(-11.51deg);
  opacity: 0.24;
  inset-block-start: 24.4786458333vw;
  inset-inline-start: 62.9166666667vw;
  inline-size: 4.9239583333vw;
  block-size: 4.9239583333vw;
}
@media only screen and (max-width: 767px) {
  .PageConcernDrop {
    inset-block-start: 43rem;
    inset-inline-start: 20.1428571429rem;
    inline-size: 5.7142857143rem;
    block-size: 5.7142857143rem;
  }
}

.PageConcernDropImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.PageConcernBigDrop {
  position: absolute;
  z-index: 1;
  pointer-events: none;
  opacity: 0.33;
  inset-block-start: 42.1354166667vw;
  inset-inline-start: 20.78125vw;
  inline-size: 19.9479166667vw;
  block-size: 19.9479166667vw;
}
@media only screen and (max-width: 767px) {
  .PageConcernBigDrop {
    inset-block-start: 47.2857142857rem;
    inset-inline-start: -5.8571428571rem;
    inline-size: 19.7142857143rem;
    block-size: 19.7142857143rem;
  }
}

.PageConcernBigDropImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.PageConcernWaterTitle {
  position: relative;
  z-index: 1;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  line-height: 1.0416666667;
  letter-spacing: 0;
  background-image: linear-gradient(180.371deg, #839fbd 4.149%, #7693b1 38.8%, #556982 97.752%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-margin-before: 10.8854166667vw;
          margin-block-start: 10.8854166667vw;
  -webkit-margin-start: 30.1041666667vw;
          margin-inline-start: 30.1041666667vw;
  inline-size: 28.1770833333vw;
  text-align: start;
  font-size: 1.6666666667vw;
}
@media only screen and (max-width: 767px) {
  .PageConcernWaterTitle {
    text-align: center;
    -webkit-margin-before: 9.2857142857rem;
            margin-block-start: 9.2857142857rem;
    -webkit-margin-start: -1.5714285714rem;
            margin-inline-start: -1.5714285714rem;
    inline-size: 24.9285714286rem;
    font-size: 1.7142857143rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageConcernWaterTitle {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
}

.PageConcernNarrative {
  position: relative;
  z-index: 1;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: start;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #000;
  letter-spacing: 0;
  font-size: 1.25vw;
  line-height: 2.125;
}
@media only screen and (max-width: 767px) {
  .PageConcernNarrative {
    line-height: 1.7857142857;
    font-size: 1rem;
  }
}

.PageConcernNarrative--first {
  -webkit-margin-before: 2.2395833333vw;
          margin-block-start: 2.2395833333vw;
  -webkit-margin-start: 30.1041666667vw;
          margin-inline-start: 30.1041666667vw;
}
@media only screen and (max-width: 767px) {
  .PageConcernNarrative--first {
    -webkit-margin-before: 2.1428571429rem;
            margin-block-start: 2.1428571429rem;
    -webkit-margin-start: 1.5rem;
            margin-inline-start: 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageConcernNarrative--first {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
}

.PageConcernNarrative--second {
  -webkit-margin-before: 2.7604166667vw;
          margin-block-start: 2.7604166667vw;
  -webkit-margin-start: 30.1041666667vw;
          margin-inline-start: 30.1041666667vw;
}
@media only screen and (max-width: 767px) {
  .PageConcernNarrative--second {
    -webkit-margin-before: 2.1428571429rem;
            margin-block-start: 2.1428571429rem;
    -webkit-margin-start: 1.4285714286rem;
            margin-inline-start: 1.4285714286rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageConcernNarrative--second {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
}

.PageConcern {
  --concern-fadein-offset: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .PageConcern {
    --concern-fadein-offset: 0.8571428571rem;
  }
}

.PageConcern .js-FadeIn {
  opacity: 0;
  translate: 0 var(--concern-fadein-offset);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  will-change: opacity, translate;
}

.PageConcern .js-FadeIn.is-revealed {
  opacity: 1;
  translate: 0 0;
}

@media (prefers-reduced-motion: reduce) {
  .PageConcern .js-FadeIn {
    opacity: 1;
    translate: 0 0;
    -webkit-transition: none;
    transition: none;
  }
}
.PageFeatures {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  -webkit-padding-before: 7.8125vw;
          padding-block-start: 7.8125vw;
  block-size: 48.4375vw;
}
@media only screen and (max-width: 767px) {
  .PageFeatures {
    -webkit-padding-before: 5rem;
            padding-block-start: 5rem;
    block-size: 93.9285714286rem;
  }
}

.PageFeaturesBg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.PageFeaturesBgImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
}

.PageFeaturesBgImgPic {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.PageFeaturesHeading {
  position: relative;
  z-index: 1;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: center;
}

.PageFeaturesEyebrow {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 600;
  background-image: linear-gradient(180.864deg, #839fbd 4.149%, #7693b1 38.8%, #556982 97.752%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: 1.5625vw;
  line-height: 1.3333333333;
}
@media only screen and (max-width: 767px) {
  .PageFeaturesEyebrow {
    line-height: 1.0416666667;
    font-size: 1.7142857143rem;
  }
}

.PageFeaturesEyebrowJa {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #31537d;
  -webkit-margin-before: 0.5208333333vw;
          margin-block-start: 0.5208333333vw;
  font-size: 0.7291666667vw;
  line-height: 1.8571428571;
}
@media only screen and (max-width: 767px) {
  .PageFeaturesEyebrowJa {
    line-height: 1.7857142857;
    -webkit-margin-before: 0.5rem;
            margin-block-start: 0.5rem;
    font-size: 1rem;
  }
}

.PageFeaturesCardList {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-margin-before: 4.375vw;
          margin-block-start: 4.375vw;
}
@media only screen and (max-width: 767px) {
  .PageFeaturesCardList {
    -webkit-margin-before: 1.5rem;
            margin-block-start: 1.5rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 4.2857142857rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageFeaturesCardList {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 3.90625vw;
       -moz-column-gap: 3.90625vw;
            column-gap: 3.90625vw;
  }
}

.PageFeaturesCard {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  inline-size: 18.2291666667vw;
}
@media only screen and (max-width: 767px) {
  .PageFeaturesCard {
    inline-size: 25rem;
  }
}

.PageFeaturesCard--01 {
  block-size: 19.4791666667vw;
}
@media only screen and (max-width: 767px) {
  .PageFeaturesCard--01 {
    block-size: 23.9285714286rem;
  }
}

.PageFeaturesCard--02 {
  block-size: 19.4791666667vw;
}
@media only screen and (max-width: 767px) {
  .PageFeaturesCard--02 {
    block-size: 23.9285714286rem;
  }
}

.PageFeaturesCard--03 {
  block-size: 19.4791666667vw;
}
@media only screen and (max-width: 767px) {
  .PageFeaturesCard--03 {
    block-size: 22.1428571429rem;
  }
}

.PageFeaturesCardImg {
  inline-size: 100%;
  overflow: hidden;
  block-size: 7.8125vw;
}
@media only screen and (max-width: 767px) {
  .PageFeaturesCardImg {
    block-size: 10.7142857143rem;
  }
}

.PageFeaturesCardImgPic {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.PageFeaturesCardTitle {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  inline-size: 100%;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 600;
  background-image: linear-gradient(180.4deg, #839fbd 4.149%, #7693b1 38.8%, #556982 97.752%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-margin-before: 1.0416666667vw;
          margin-block-start: 1.0416666667vw;
  font-size: 1.0416666667vw;
  line-height: 1.25;
}
@media only screen and (max-width: 767px) {
  .PageFeaturesCardTitle {
    line-height: 1.0416666667;
    -webkit-margin-before: 1.4285714286rem;
            margin-block-start: 1.4285714286rem;
    font-size: 1.7142857143rem;
  }
}

.PageFeaturesCardBody {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: start;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #000;
  -webkit-margin-before: 0.78125vw;
          margin-block-start: 0.78125vw;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  inline-size: 18.1770833333vw;
  font-size: 0.8333333333vw;
  line-height: 2;
}
@media only screen and (max-width: 767px) {
  .PageFeaturesCardBody {
    line-height: 1.7857142857;
    -webkit-margin-before: 1.0714285714rem;
            margin-block-start: 1.0714285714rem;
    -webkit-margin-start: 0.0714285714rem;
            margin-inline-start: 0.0714285714rem;
    inline-size: 22.8571428571rem;
    font-size: 1rem;
  }
}

.PageFeaturesCard--03 .PageFeaturesCardBody {
  inline-size: 18.0729166667vw;
}
@media only screen and (max-width: 767px) {
  .PageFeaturesCard--03 .PageFeaturesCardBody {
    inline-size: 24.7857142857rem;
  }
}

.PageFeatures {
  --features-fadein-offset: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .PageFeatures {
    --features-fadein-offset: 0.8571428571rem;
  }
}

.PageFeatures .js-FadeIn {
  opacity: 0;
  translate: 0 var(--features-fadein-offset);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  will-change: opacity, translate;
}

.PageFeatures .js-FadeIn.is-revealed {
  opacity: 1;
  translate: 0 0;
}

@media (prefers-reduced-motion: reduce) {
  .PageFeatures .js-FadeIn {
    opacity: 1;
    translate: 0 0;
    -webkit-transition: none;
    transition: none;
  }
}
.PageMerit {
  position: relative;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  block-size: 53.3854166667vw;
}
@media only screen and (max-width: 767px) {
  .PageMerit {
    block-size: 58.9285714286rem;
  }
}

.PageMeritBg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.PageMeritBgImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
}

.PageMeritBgImgPic {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.PageMeritHero {
  position: absolute;
  z-index: 1;
  overflow: hidden;
  inset-block-start: 7.2395833333vw;
  inset-inline-start: 21.3541666667vw;
  inline-size: 28.6458333333vw;
  block-size: 18.75vw;
}
@media only screen and (max-width: 767px) {
  .PageMeritHero {
    inset-block-start: 7.1428571429rem;
    inset-inline-start: 3.5714285714rem;
    inline-size: 24.2857142857rem;
    block-size: 15.7857142857rem;
  }
}

.PageMeritHeroImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom;
     object-position: bottom;
}

.PageMeritCopy {
  position: absolute;
  z-index: 2;
  background-color: #fff;
  -webkit-box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.08);
          box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.08);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.PageMeritCopyText {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  line-height: 1;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(4.149%, #839fbd), color-stop(38.8%, #7693b1), color-stop(97.752%, #556982));
  background-image: linear-gradient(180deg, #839fbd 4.149%, #7693b1 38.8%, #556982 97.752%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: 1.6666666667vw;
  letter-spacing: 0.267em;
}
@media only screen and (max-width: 767px) {
  .PageMeritCopyText {
    font-size: 1.4285714286rem;
    letter-spacing: 0.25em;
  }
}

.PageMeritCopy--left {
  inset-block-start: 5.5729166667vw;
  inset-inline-start: 18.75vw;
  inline-size: 3.5473958333vw;
  -webkit-padding-before: 0.5208333333vw;
          padding-block-start: 0.5208333333vw;
}
@media only screen and (max-width: 767px) {
  .PageMeritCopy--left {
    inset-block-start: 5.7142857143rem;
    inset-inline-start: 1.4285714286rem;
    inline-size: 3rem;
    -webkit-padding-before: 0.4285714286rem;
            padding-block-start: 0.4285714286rem;
  }
}

.PageMeritCopy--right {
  inset-block-start: 5.5729166667vw;
  inset-inline-start: 22.9729166667vw;
  inline-size: 3.5473958333vw;
  -webkit-padding-before: 0.4166666667vw;
          padding-block-start: 0.4166666667vw;
}
@media only screen and (max-width: 767px) {
  .PageMeritCopy--right {
    inset-block-start: 5.7142857143rem;
    inset-inline-start: 5rem;
    inline-size: 3rem;
    -webkit-padding-before: 0.2857142857rem;
            padding-block-start: 0.2857142857rem;
  }
}

.PageMeritBubble {
  position: absolute;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
}

.PageMeritBubbleBg {
  position: absolute;
  inset: 0;
  z-index: 0;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  pointer-events: none;
}

.PageMeritBubbleText {
  position: relative;
  z-index: 1;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #31537d;
  font-size: 0.9375vw;
  line-height: 1.4444444444;
}
@media only screen and (max-width: 767px) {
  .PageMeritBubbleText {
    line-height: 1.4285714286;
    font-size: 1rem;
  }
}

.PageMeritBubble--01 {
  inset-block-start: 13.125vw;
  inset-inline-start: 63.5473958333vw;
  inline-size: 12.0859375vw;
  block-size: 12.2421875vw;
}
@media only screen and (max-width: 767px) {
  .PageMeritBubble--01 {
    inset-block-start: 26.5rem;
    inset-inline-start: 8.2142857143rem;
    inline-size: 11.8571428571rem;
    block-size: 12rem;
  }
}

.PageMeritBubble--02 {
  inset-block-start: 20.5vw;
  inset-inline-start: 56.0416666667vw;
  inline-size: 12.8442708333vw;
  block-size: 12.3880208333vw;
}
@media only screen and (max-width: 767px) {
  .PageMeritBubble--02 {
    inset-block-start: 34.2857142857rem;
    inset-inline-start: 2.2857142857rem;
    inline-size: 12.5714285714rem;
    block-size: 12.1428571429rem;
  }
}

.PageMeritBubble--03 {
  inset-block-start: 24.1307291667vw;
  inset-inline-start: 69.8869791667vw;
  inline-size: 11.5135416667vw;
  block-size: 11.5135416667vw;
}
@media only screen and (max-width: 767px) {
  .PageMeritBubble--03 {
    inset-block-start: 37.2857142857rem;
    inset-inline-start: 14.4285714286rem;
    inline-size: 11.2857142857rem;
    block-size: 11.2857142857rem;
  }
}

.PageMerit {
  --merit-fadein-offset: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .PageMerit {
    --merit-fadein-offset: 0.8571428571rem;
  }
}

.PageMerit .js-FadeIn {
  opacity: 0;
  translate: 0 var(--merit-fadein-offset);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  will-change: opacity, translate;
}

.PageMerit .js-FadeIn.is-revealed {
  opacity: 1;
  translate: 0 0;
}

.PageMerit .PageMeritBubble.js-FadeIn,
.PageMerit .PageMeritDrop.js-FadeIn {
  translate: 0 0;
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
}

@media (prefers-reduced-motion: reduce) {
  .PageMerit .js-FadeIn {
    opacity: 1;
    translate: 0 0;
    -webkit-transition: none;
    transition: none;
  }
}
.PageMeritPunchline {
  position: absolute;
  z-index: 1;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: center;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #31537d;
  inset-block-start: 35.3645833333vw;
  inset-inline-start: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  inline-size: 22.5vw;
  font-size: 1.25vw;
  line-height: 2.7083333333;
}
@media only screen and (max-width: 767px) {
  .PageMeritPunchline {
    line-height: 1.9444444444;
    inset-block-start: 49.9285714286rem;
    inset-inline-start: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    inline-size: 25rem;
    font-size: 1.2857142857rem;
  }
}

@-webkit-keyframes pageMeritDropFloat {
  0%, 100% {
    translate: 0 0;
  }
  50% {
    translate: 0 var(--drop-float-distance, 0);
  }
}

@keyframes pageMeritDropFloat {
  0%, 100% {
    translate: 0 0;
  }
  50% {
    translate: 0 var(--drop-float-distance, 0);
  }
}
.PageMeritDrop {
  position: absolute;
  z-index: 0;
  pointer-events: none;
  -webkit-animation: pageMeritDropFloat var(--drop-float-duration, 8s) ease-in-out infinite;
          animation: pageMeritDropFloat var(--drop-float-duration, 8s) ease-in-out infinite;
  -webkit-animation-delay: var(--drop-float-delay, 0s);
          animation-delay: var(--drop-float-delay, 0s);
  will-change: translate;
}

@media (prefers-reduced-motion: reduce) {
  .PageMeritDrop {
    -webkit-animation: none;
            animation: none;
  }
}
.PageMeritDropImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

.PageMeritDrop--01 {
  --drop-float-duration: 7.3s;
  --drop-float-delay: -0.7s;
  --drop-float-distance: -0.3125vw;
  inset-block-start: 1.25vw;
  inset-inline-start: 2.4479166667vw;
  inline-size: 0.78125vw;
  block-size: 0.7291666667vw;
}
@media only screen and (max-width: 767px) {
  .PageMeritDrop--01 {
    --drop-float-distance: -0.4285714286rem;
    inset-block-start: 1.7142857143rem;
    inset-inline-start: 3.3571428571rem;
    inline-size: 1.0714285714rem;
    block-size: 1rem;
  }
}

.PageMeritDrop--02 {
  --drop-float-duration: 8.5s;
  --drop-float-delay: -2.1s;
  --drop-float-distance: -0.5208333333vw;
  inset-block-start: 18.6458333333vw;
  inset-inline-start: 15.625vw;
  inline-size: 2.2916666667vw;
  block-size: 2.2916666667vw;
}
@media only screen and (max-width: 767px) {
  .PageMeritDrop--02 {
    --drop-float-distance: -0.7142857143rem;
    inset-block-start: 25.5714285714rem;
    inset-inline-start: 21.4285714286rem;
    inline-size: 3.1428571429rem;
    block-size: 3.1428571429rem;
  }
}

.PageMeritDrop--03 {
  --drop-float-duration: 6.7s;
  --drop-float-delay: -1.5s;
  --drop-float-distance: -0.2604166667vw;
  inset-block-start: 22.3958333333vw;
  inset-inline-start: 15.3125vw;
  inline-size: 0.78125vw;
  block-size: 0.7291666667vw;
}
@media only screen and (max-width: 767px) {
  .PageMeritDrop--03 {
    --drop-float-distance: -0.3571428571rem;
    inset-block-start: 30.7142857143rem;
    inset-inline-start: 21rem;
    inline-size: 1.0714285714rem;
    block-size: 1rem;
  }
}

.PageMeritDrop--04 {
  --drop-float-duration: 9.1s;
  --drop-float-delay: -3.4s;
  --drop-float-distance: -0.3125vw;
  inset-block-start: 31.2113020833vw;
  inset-inline-start: 24.3243229167vw;
  inline-size: 2.9279166667vw;
  block-size: 2.9320833333vw;
}
@media only screen and (max-width: 767px) {
  .PageMeritDrop--04 {
    --drop-float-distance: -0.4285714286rem;
    inset-block-start: 45.2857142857rem;
    inset-inline-start: 2.0714285714rem;
    inline-size: 1.0714285714rem;
    block-size: 1rem;
  }
}

.PageMeritDrop--05 {
  --drop-float-duration: 10.7s;
  --drop-float-delay: -4.8s;
  --drop-float-distance: -0.625vw;
  inset-block-start: 42.29515625vw;
  inset-inline-start: 14.8730208333vw;
  inline-size: 10.6508333333vw;
  block-size: 10.6654166667vw;
}
@media only screen and (max-width: 767px) {
  .PageMeritDrop--05 {
    --drop-float-distance: -0.8571428571rem;
    inset-block-start: 31.1428571429rem;
    inset-inline-start: -1.9285714286rem;
    inline-size: 5rem;
    block-size: 5rem;
  }
}

.PageMeritDrop.PageMeritDrop--05.js-FadeIn.is-revealed {
  opacity: 0.5;
}

.PageScene {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  block-size: 74.6354166667vw;
  display: block;
}
@media only screen and (max-width: 767px) {
  .PageScene {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    block-size: 81.8571428571rem;
  }
}

.PageSceneBg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.PageSceneBgImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
}

.PageSceneBgImgPic {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.PageSceneDrop {
  position: absolute;
  z-index: 1;
  pointer-events: none;
}

.PageSceneDropImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.PageSceneDrop--01 {
  opacity: 0.28;
  -webkit-transform: rotate(-0.38deg);
          transform: rotate(-0.38deg);
  inset-block-start: 12.140625vw;
  inset-inline-start: 42.1348958333vw;
  inline-size: 0.78125vw;
  block-size: 0.7536458333vw;
}
@media only screen and (max-width: 767px) {
  .PageSceneDrop--01 {
    inset-block-start: 17.3571428571rem;
    inset-inline-start: 5.2142857143rem;
    inline-size: 1.0714285714rem;
    block-size: 1rem;
  }
}

.PageSceneDrop--02 {
  opacity: 0.33;
  inset-block-start: 27.7083333333vw;
  inset-inline-start: 35.4161458333vw;
  inline-size: 9.9479166667vw;
}
@media only screen and (max-width: 767px) {
  .PageSceneDrop--02 {
    inset-block-start: 21.4285714286rem;
    inset-inline-start: 20.7142857143rem;
    inline-size: 7.4285714286rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageSceneDrop--02 {
    block-size: 9.9479166667vw;
  }
}

.PageSceneDrop--03 {
  opacity: 0.33;
  inset-block-start: 37.0833333333vw;
  inset-inline-start: 22.8640625vw;
  inline-size: 9.9479166667vw;
}
@media only screen and (max-width: 767px) {
  .PageSceneDrop--03 {
    inset-block-start: 41.7142857143rem;
    inset-inline-start: -2rem;
    inline-size: 8.4285714286rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageSceneDrop--03 {
    block-size: 9.9479166667vw;
  }
}

.PageSceneDrop--04 {
  opacity: 0.28;
  -webkit-transform: rotate(-0.38deg);
          transform: rotate(-0.38deg);
  inset-block-start: 44.484375vw;
  inset-inline-start: 41.7182291667vw;
  inline-size: 0.78125vw;
}
@media only screen and (max-width: 767px) {
  .PageSceneDrop--04 {
    inset-block-start: 61.7142857143rem;
    inset-inline-start: 4.6428571429rem;
    inline-size: 1.0714285714rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageSceneDrop--04 {
    block-size: 0.7536458333vw;
  }
}

.PageSceneDrop--05 {
  opacity: 0.18;
  inset-block-start: 43.28125vw;
  inset-inline-start: 56.2494791667vw;
  inline-size: 9.9479166667vw;
}
@media only screen and (max-width: 767px) {
  .PageSceneDrop--05 {
    inset-block-start: 65.7857142857rem;
    inset-inline-start: 21.0714285714rem;
    inline-size: 5.7142857143rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageSceneDrop--05 {
    block-size: 9.9479166667vw;
  }
}

.PageScenePhoto {
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.PageScenePhotoImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.PageScenePhoto--top {
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
@media only screen and (max-width: 767px) {
  .PageScenePhoto--top {
    block-size: 15rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageScenePhoto--top {
    display: none;
  }
}

.PageScenePhoto--mid {
  -ms-flex-item-align: start;
      align-self: flex-start;
  inline-size: 28.6458333333vw;
  block-size: 18.75vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
}
@media only screen and (max-width: 767px) {
  .PageScenePhoto--mid {
    -webkit-margin-before: 2.9285714286rem;
            margin-block-start: 2.9285714286rem;
    inline-size: 22.5rem;
    block-size: 15.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageScenePhoto--mid {
    position: absolute;
    inset-block-start: 18.3333333333vw;
    inset-inline-start: 18.75vw;
  }
}

.PageScenePhoto--bottom {
  -ms-flex-item-align: start;
      align-self: flex-start;
  inline-size: 28.6458333333vw;
  block-size: 18.75vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
}
@media only screen and (max-width: 767px) {
  .PageScenePhoto--bottom {
    -webkit-margin-before: 4.5rem;
            margin-block-start: 4.5rem;
    -webkit-margin-start: 5.7142857143rem;
            margin-inline-start: 5.7142857143rem;
    inline-size: 22.1428571429rem;
    block-size: 15.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageScenePhoto--bottom {
    position: absolute;
    inset-block-start: 25.3645833333vw;
    inset-inline-start: 52.6036458333vw;
  }
}

.PageSceneLead {
  z-index: 1;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: center;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #31537d;
  position: absolute;
  inline-size: 28.6458333333vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  font-size: 1.25vw;
  line-height: 1.875;
}
@media only screen and (max-width: 767px) {
  .PageSceneLead {
    position: relative;
    line-height: 1.3888888889;
    -webkit-margin-before: 2.8571428571rem;
            margin-block-start: 2.8571428571rem;
    inline-size: 25rem;
    font-size: 1.2857142857rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageSceneLead {
    inset-block-start: 6.25vw;
    inset-inline-start: 35.6770833333vw;
  }
}

.PageSceneVCopyBox {
  position: absolute;
  z-index: 2;
}

.PageSceneVCopyBox--right {
  inset-block-start: 41.6666666667vw;
  inset-inline-start: 27.34375vw;
  inline-size: 15.8854166667vw;
  block-size: 1.3541666667vw;
}
@media only screen and (max-width: 767px) {
  .PageSceneVCopyBox--right {
    inset-block-start: 24.3571428571rem;
    inset-inline-start: 23.6428571429rem;
    inline-size: 1.7857142857rem;
    block-size: 15.5rem;
  }
}

.PageSceneVCopyBox--left {
  inset-block-start: 47.5520833333vw;
  inset-inline-start: 61.8229166667vw;
  inline-size: 11.3020833333vw;
  block-size: 1.3541666667vw;
}
@media only screen and (max-width: 767px) {
  .PageSceneVCopyBox--left {
    inset-block-start: 44.3571428571rem;
    inset-inline-start: 1.9285714286rem;
    inline-size: 1.7857142857rem;
    block-size: 14.2857142857rem;
  }
}

.PageSceneVCopy {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #31537d;
  -webkit-writing-mode: horizontal-tb;
      -ms-writing-mode: lr-tb;
          writing-mode: horizontal-tb;
  line-height: 1;
  font-size: 1.25vw;
}
@media only screen and (max-width: 767px) {
  .PageSceneVCopy {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    white-space: nowrap;
    line-height: 1;
    letter-spacing: 0.1111em;
    font-size: 1.2857142857rem;
  }
}

.PageScenePunchline {
  z-index: 1;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: center;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #31537d;
  position: absolute;
  inline-size: 62.5vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  font-size: 1.25vw;
  line-height: 1.875;
}
@media only screen and (max-width: 767px) {
  .PageScenePunchline {
    position: relative;
    line-height: 1.9444444444;
    -webkit-margin-before: 2.8571428571rem;
            margin-block-start: 2.8571428571rem;
    inline-size: 25rem;
    font-size: 1.2857142857rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageScenePunchline {
    inset-block-start: 55.5208333333vw;
    inset-inline-start: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.PageSceneCta {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#dccb98), color-stop(46.442%, #b7a86a), color-stop(92%, #9a8031));
  background-image: linear-gradient(to bottom, #dccb98 0%, #b7a86a 46.442%, #9a8031 92%);
  -webkit-box-shadow: 1px 1px 1.9px 0 rgba(77, 98, 125, 0.32);
          box-shadow: 1px 1px 1.9px 0 rgba(77, 98, 125, 0.32);
  color: #fff;
  font-family: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
  font-weight: 500;
  inline-size: 18.2291666667vw;
  block-size: 3.0729166667vw;
  border-radius: 2.0653645833vw;
  font-size: 1.0416666667vw;
}
@media only screen and (max-width: 767px) {
  .PageSceneCta {
    inline-size: 25rem;
    block-size: 4.2142857143rem;
    border-radius: 2.8325rem;
    font-size: 1.4285714286rem;
  }
}

.PageScene .PageSceneCta {
  z-index: 1;
  -ms-flex-item-align: start;
      align-self: flex-start;
  position: absolute;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
}
@media only screen and (max-width: 767px) {
  .PageScene .PageSceneCta {
    position: relative;
    -webkit-margin-before: 4.9285714286rem;
            margin-block-start: 4.9285714286rem;
    -webkit-margin-start: 1.4285714286rem;
            margin-inline-start: 1.4285714286rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageScene .PageSceneCta {
    inset-block-start: 63.75vw;
    inset-inline-start: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.PageSceneCtaArrow {
  position: absolute;
  inset-block-start: 50%;
  display: block;
  color: #fff;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  inset-inline-end: 1.5104166667vw;
  inline-size: 0.6770833333vw;
  block-size: 1.3541666667vw;
  -webkit-margin-before: -0.6770833333vw;
          margin-block-start: -0.6770833333vw;
}
@media only screen and (max-width: 767px) {
  .PageSceneCtaArrow {
    inset-inline-end: 2.0714285714rem;
    inline-size: 0.9285714286rem;
    block-size: 1.8571428571rem;
    -webkit-margin-before: -0.9285714286rem;
            margin-block-start: -0.9285714286rem;
  }
}

.PageSceneCtaArrowSvg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
}

.PageScene {
  --scene-fadein-offset: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .PageScene {
    --scene-fadein-offset: 0.8571428571rem;
  }
}

.PageScene .js-FadeIn {
  opacity: 0;
  translate: 0 var(--scene-fadein-offset);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  will-change: opacity, translate;
}

.PageScene .js-FadeIn.is-revealed {
  opacity: 1;
  translate: 0 0;
}

@media (prefers-reduced-motion: reduce) {
  .PageScene .js-FadeIn {
    opacity: 1;
    translate: 0 0;
    -webkit-transition: none;
    transition: none;
  }
}
.PageVoice {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background-image: linear-gradient(187.683deg, #eaf4f7 3.8215%, #f2f5f7 90.725%);
  -webkit-padding-before: 7.8125vw;
          padding-block-start: 7.8125vw;
  -webkit-padding-after: 4.9479166667vw;
          padding-block-end: 4.9479166667vw;
}
@media only screen and (max-width: 767px) {
  .PageVoice {
    -webkit-padding-before: 5rem;
            padding-block-start: 5rem;
    -webkit-padding-after: 6.7857142857rem;
            padding-block-end: 6.7857142857rem;
  }
}

.PageVoiceTitle {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: center;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.PageVoiceTitleEn {
  display: block;
  background-image: linear-gradient(180.385deg, #839fbd 4.149%, #7693b1 38.8%, #556982 97.752%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  letter-spacing: 0;
  font-size: 2.0833333333vw;
}
@media only screen and (max-width: 767px) {
  .PageVoiceTitleEn {
    font-size: 2.5714285714rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageVoiceTitleEn {
    line-height: 1;
  }
}

.PageVoiceTitleJa {
  display: block;
  color: #31537d;
  -webkit-margin-before: 0.5208333333vw;
          margin-block-start: 0.5208333333vw;
  font-size: 0.8333333333vw;
  line-height: 1.5625;
}
@media only screen and (max-width: 767px) {
  .PageVoiceTitleJa {
    line-height: 1.7857142857;
    -webkit-margin-before: 0.7142857143rem;
            margin-block-start: 0.7142857143rem;
    font-size: 1rem;
  }
}

.PageVoiceList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-before: 3.28125vw;
          margin-block-start: 3.28125vw;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  row-gap: 0;
}
@media only screen and (max-width: 767px) {
  .PageVoiceList {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-margin-before: 2.1428571429rem;
            margin-block-start: 2.1428571429rem;
    row-gap: 5rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageVoiceList {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 2.34375vw;
       -moz-column-gap: 2.34375vw;
            column-gap: 2.34375vw;
  }
}

.PageVoiceCard {
  background-color: rgba(255, 255, 255, 0.74);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  inline-size: 19.2708333333vw;
  -webkit-padding-before: 1.5625vw;
          padding-block-start: 1.5625vw;
  -webkit-padding-after: 1.5625vw;
          padding-block-end: 1.5625vw;
  -webkit-padding-start: 1.5625vw;
          padding-inline-start: 1.5625vw;
  -webkit-padding-end: 1.5625vw;
          padding-inline-end: 1.5625vw;
  border-radius: 0.46875vw;
  -webkit-box-shadow: 0.2083333333vw 0.2083333333vw 0.5208333333vw -0.1041666667vw rgba(154, 154, 154, 0.25);
          box-shadow: 0.2083333333vw 0.2083333333vw 0.5208333333vw -0.1041666667vw rgba(154, 154, 154, 0.25);
}
@media only screen and (max-width: 767px) {
  .PageVoiceCard {
    inline-size: 23.5714285714rem;
    -webkit-padding-before: 2.1428571429rem;
            padding-block-start: 2.1428571429rem;
    -webkit-padding-after: 2.1428571429rem;
            padding-block-end: 2.1428571429rem;
    -webkit-padding-start: 2.1428571429rem;
            padding-inline-start: 2.1428571429rem;
    -webkit-padding-end: 2.1428571429rem;
            padding-inline-end: 2.1428571429rem;
    border-radius: 0.6428571429rem;
    -webkit-box-shadow: 0.2857142857rem 0.2857142857rem 0.7142857143rem -0.1428571429rem rgba(154, 154, 154, 0.25);
            box-shadow: 0.2857142857rem 0.2857142857rem 0.7142857143rem -0.1428571429rem rgba(154, 154, 154, 0.25);
  }
}
@media only screen and (min-width: 768px) {
  .PageVoiceCard {
    block-size: 32.03125vw;
  }
}

.PageVoiceCardImg {
  overflow: hidden;
  inline-size: 16.1458333333vw;
  block-size: 14.0625vw;
  border-radius: 0.46875vw;
}
@media only screen and (max-width: 767px) {
  .PageVoiceCardImg {
    inline-size: 19.2857142857rem;
    block-size: 19.2857142857rem;
    border-radius: 0.6428571429rem;
  }
}

.PageVoiceCardImgFig {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.PageVoiceCardTitle {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 600;
  color: #161616;
  letter-spacing: 0;
  -webkit-margin-before: 0.78125vw;
          margin-block-start: 0.78125vw;
  font-size: 1.0416666667vw;
  line-height: 1.25;
}
@media only screen and (max-width: 767px) {
  .PageVoiceCardTitle {
    line-height: 1.5625;
    -webkit-margin-before: 1.0714285714rem;
            margin-block-start: 1.0714285714rem;
    font-size: 1.1428571429rem;
  }
}

.PageVoiceCardData {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #161616;
  line-height: 1.7857142857;
  letter-spacing: 0;
  -webkit-margin-before: 0.2604166667vw;
          margin-block-start: 0.2604166667vw;
  font-size: 0.7291666667vw;
}
@media only screen and (max-width: 767px) {
  .PageVoiceCardData {
    -webkit-margin-before: 0.3571428571rem;
            margin-block-start: 0.3571428571rem;
    font-size: 1rem;
  }
}

.PageVoiceCardText {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  font-style: normal;
  color: #161616;
  letter-spacing: 0;
  -webkit-margin-before: 0.78125vw;
          margin-block-start: 0.78125vw;
  inline-size: 16.1458333333vw;
  font-size: 0.7291666667vw;
  line-height: 1.7857142857;
}
@media only screen and (max-width: 767px) {
  .PageVoiceCardText {
    line-height: 1.7857142857;
    -webkit-margin-before: 1.0714285714rem;
            margin-block-start: 1.0714285714rem;
    inline-size: 19.2857142857rem;
    font-size: 1rem;
  }
}

.PageVoiceCardText em,
.PageVoiceCardText span {
  font-style: normal;
  color: #c04b42;
}

.PageVoiceDisclaimer {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #161616;
  letter-spacing: 0;
  -webkit-margin-before: 1.5625vw;
          margin-block-start: 1.5625vw;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  -webkit-margin-end: 18.75vw;
          margin-inline-end: 18.75vw;
  inline-size: 17.1354166667vw;
  font-size: 0.625vw;
  line-height: 2.0833333333;
}
@media only screen and (max-width: 767px) {
  .PageVoiceDisclaimer {
    -webkit-margin-end: 0;
            margin-inline-end: 0;
    line-height: 2.5;
    -webkit-margin-before: 0.5714285714rem;
            margin-block-start: 0.5714285714rem;
    -webkit-margin-start: 6.4285714286rem;
            margin-inline-start: 6.4285714286rem;
    inline-size: 19.4285714286rem;
    font-size: 0.7142857143rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageVoiceDisclaimer {
    text-align: end;
  }
}

.PageVoice {
  --voice-fadein-offset: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .PageVoice {
    --voice-fadein-offset: 0.8571428571rem;
  }
}

.PageVoice .js-FadeIn {
  opacity: 0;
  translate: 0 var(--voice-fadein-offset);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  will-change: opacity, translate;
}

.PageVoice .js-FadeIn.is-revealed {
  opacity: 1;
  translate: 0 0;
}

@media (prefers-reduced-motion: reduce) {
  .PageVoice .js-FadeIn {
    opacity: 1;
    translate: 0 0;
    -webkit-transition: none;
    transition: none;
  }
}
.PageTrust {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  background-image: linear-gradient(34.7945deg, #eaf4f7 1.0628%, #ffffff 52.564%);
  block-size: 40.1041666667vw;
  display: block;
}
@media only screen and (max-width: 767px) {
  .PageTrust {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    block-size: 47rem;
  }
}

.PageTrustImg {
  -ms-flex-item-align: stretch;
      align-self: stretch;
  z-index: 0;
  overflow: hidden;
  position: absolute;
  block-size: 23.90625vw;
}
@media only screen and (max-width: 767px) {
  .PageTrustImg {
    position: relative;
    block-size: 13.2857142857rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageTrustImg {
    inset-block-start: 7.8125vw;
    inset-inline-start: 18.75vw;
    inline-size: 26.0416666667vw;
  }
}

.PageTrustImgFig {
  display: block;
  position: absolute;
  max-inline-size: none;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  inset-block-start: 0;
  inset-inline-start: 0;
  inline-size: 100%;
  block-size: 100%;
}
@media only screen and (max-width: 767px) {
  .PageTrustImgFig {
    inset-block-start: -2.8571428571rem;
    inset-inline-start: -2.5rem;
    inline-size: 35rem;
    block-size: 19.6428571429rem;
  }
}

.PageTrustHeader {
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  inline-size: 31.1458333333vw;
  block-size: 3.8541666667vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 1.0416666667vw;
     -moz-column-gap: 1.0416666667vw;
          column-gap: 1.0416666667vw;
}
@media only screen and (max-width: 767px) {
  .PageTrustHeader {
    position: relative;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-margin-before: 1.4285714286rem;
            margin-block-start: 1.4285714286rem;
    -webkit-margin-start: 2.5rem;
            margin-inline-start: 2.5rem;
    inline-size: 23.9285714286rem;
    block-size: 5.2857142857rem;
    -webkit-column-gap: 1.4285714286rem;
       -moz-column-gap: 1.4285714286rem;
            column-gap: 1.4285714286rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageTrustHeader {
    inset-block-start: 7.8125vw;
    inset-inline-start: 48.1770833333vw;
  }
}

.PageTrustLogo {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  inline-size: 3.8541666667vw;
  block-size: 3.8541666667vw;
}
@media only screen and (max-width: 767px) {
  .PageTrustLogo {
    inline-size: 5.2857142857rem;
    block-size: 5.2857142857rem;
  }
}

.PageTrustLogoImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

.PageTrustTitle {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  color: #31537d;
  letter-spacing: 0;
  inline-size: 26.25vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  font-weight: 600;
  font-size: 1.25vw;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .PageTrustTitle {
    font-weight: 600;
    line-height: 1.25;
    -webkit-margin-before: 0.9285714286rem;
            margin-block-start: 0.9285714286rem;
    inline-size: 17.2142857143rem;
    font-size: 1.4285714286rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageTrustTitle {
    -webkit-margin-start: 0;
            margin-inline-start: 0;
  }
}

.PageTrustTitleRow {
  display: inline;
}
@media only screen and (max-width: 767px) {
  .PageTrustTitleRow {
    display: block;
  }
}

.PageTrustIntro {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: start;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  color: #31537d;
  letter-spacing: 0;
  position: absolute;
  z-index: 1;
  inline-size: 33.1770833333vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  font-weight: 300;
  font-size: 1.0416666667vw;
  line-height: 1.85;
}
@media only screen and (max-width: 767px) {
  .PageTrustIntro {
    position: relative;
    z-index: 1;
    font-weight: 300;
    line-height: 1.7857142857;
    -webkit-margin-before: 2.5rem;
            margin-block-start: 2.5rem;
    -webkit-margin-start: 1.4285714286rem;
            margin-inline-start: 1.4285714286rem;
    inline-size: 25rem;
    font-size: 1rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageTrustIntro {
    inset-block-start: 14.0104166667vw;
    inset-inline-start: 48.3854166667vw;
  }
}

.PageTrustIntro::after {
  content: "";
  inline-size: 100%;
  block-size: 1px;
  background-color: #759bca;
  position: absolute;
  top: -1.4285714286rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: none;
}
@media only screen and (max-width: 767px) {
  .PageTrustIntro::after {
    display: block;
  }
}

.PageTrustList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: absolute;
  z-index: 1;
  inline-size: 14.375vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
}
@media only screen and (max-width: 767px) {
  .PageTrustList {
    position: relative;
    z-index: 1;
    -webkit-margin-before: 1rem;
            margin-block-start: 1rem;
    -webkit-margin-start: 2.1428571429rem;
            margin-inline-start: 2.1428571429rem;
    inline-size: 17.4285714286rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageTrustList {
    inset-block-start: 19.6875vw;
    inset-inline-start: 48.4895833333vw;
  }
}

.PageTrustItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #31537d;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  block-size: 1.5625vw;
  -webkit-column-gap: 0.2604166667vw;
     -moz-column-gap: 0.2604166667vw;
          column-gap: 0.2604166667vw;
  font-size: 0.8333333333vw;
}
@media only screen and (max-width: 767px) {
  .PageTrustItem {
    block-size: 2.1428571429rem;
    -webkit-column-gap: 0.3571428571rem;
       -moz-column-gap: 0.3571428571rem;
            column-gap: 0.3571428571rem;
    font-size: 1rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageTrustItem {
    line-height: 1.875;
  }
}

.PageTrustItem + .PageTrustItem {
  -webkit-margin-before: -0.0520833333vw;
          margin-block-start: -0.0520833333vw;
}
@media only screen and (max-width: 767px) {
  .PageTrustItem + .PageTrustItem {
    -webkit-margin-before: -0.0714285714rem;
            margin-block-start: -0.0714285714rem;
  }
}

.PageTrustItemIcon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  color: #31537d;
  inline-size: 0.78125vw;
  block-size: 0.78125vw;
}
@media only screen and (max-width: 767px) {
  .PageTrustItemIcon {
    inline-size: 1.0714285714rem;
    block-size: 1.0714285714rem;
  }
}

.PageTrustItemIconSvg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
}

.PageTrustItemText {
  white-space: nowrap;
  line-height: 1.875;
}
@media only screen and (max-width: 767px) {
  .PageTrustItemText {
    line-height: 2.1428571429;
  }
}

.PageTrustOutro {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: start;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #31537d;
  letter-spacing: 0;
  position: absolute;
  z-index: 1;
  inline-size: 31.1458333333vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  font-size: 1.0416666667vw;
  line-height: 1.85;
}
@media only screen and (max-width: 767px) {
  .PageTrustOutro {
    position: relative;
    z-index: 1;
    line-height: 1.7857142857;
    -webkit-margin-before: 1.2142857143rem;
            margin-block-start: 1.2142857143rem;
    -webkit-margin-start: 1.4285714286rem;
            margin-inline-start: 1.4285714286rem;
    inline-size: 25rem;
    font-size: 1rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageTrustOutro {
    inset-block-start: 27.34375vw;
    inset-inline-start: 48.1770833333vw;
  }
}

.PageTrust {
  --trust-fadein-offset: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .PageTrust {
    --trust-fadein-offset: 0.8571428571rem;
  }
}

.PageTrust .js-FadeIn {
  opacity: 0;
  translate: 0 var(--trust-fadein-offset);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  will-change: opacity, translate;
}

.PageTrust .js-FadeIn.is-revealed {
  opacity: 1;
  translate: 0 0;
}

@media (prefers-reduced-motion: reduce) {
  .PageTrust .js-FadeIn {
    opacity: 1;
    translate: 0 0;
    -webkit-transition: none;
    transition: none;
  }
}
.PageFaq {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background-image: linear-gradient(268deg, #b7e1ec 0%, #85bad7 51%, #6b7e9b 100%);
  -webkit-padding-before: 7.8125vw;
          padding-block-start: 7.8125vw;
  -webkit-padding-after: 7.8125vw;
          padding-block-end: 7.8125vw;
}
@media only screen and (max-width: 767px) {
  .PageFaq {
    -webkit-padding-before: 4.2857142857rem;
            padding-block-start: 4.2857142857rem;
    -webkit-padding-after: 5rem;
            padding-block-end: 5rem;
  }
}

.PageFaqTitle {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: center;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #ffffff;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.PageFaqTitleEn {
  display: block;
  letter-spacing: 0;
  font-size: 1.875vw;
}
@media only screen and (max-width: 767px) {
  .PageFaqTitleEn {
    font-size: 2.5714285714rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageFaqTitleEn {
    line-height: 1;
  }
}

.PageFaqTitleJa {
  display: block;
  -webkit-margin-before: 0.5208333333vw;
          margin-block-start: 0.5208333333vw;
  font-size: 0.8333333333vw;
  line-height: 1.5625;
}
@media only screen and (max-width: 767px) {
  .PageFaqTitleJa {
    line-height: 1.7857142857;
    -webkit-margin-before: 0.7142857143rem;
            margin-block-start: 0.7142857143rem;
    font-size: 1rem;
  }
}

.PageFaqList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-before: 3.125vw;
          margin-block-start: 3.125vw;
  row-gap: 1.5625vw;
}
@media only screen and (max-width: 767px) {
  .PageFaqList {
    -webkit-margin-before: 2.1428571429rem;
            margin-block-start: 2.1428571429rem;
    row-gap: 1.4285714286rem;
  }
}

.PageFaqItem {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  inline-size: 39.84375vw;
  border-radius: 0.5208333333vw;
  -webkit-box-shadow: 0.1041666667vw 0.15625vw 0.4166666667vw -0.1041666667vw rgba(77, 98, 125, 0.18);
          box-shadow: 0.1041666667vw 0.15625vw 0.4166666667vw -0.1041666667vw rgba(77, 98, 125, 0.18);
  -webkit-padding-before: 1.0416666667vw;
          padding-block-start: 1.0416666667vw;
  -webkit-padding-after: 1.0416666667vw;
          padding-block-end: 1.0416666667vw;
  -webkit-padding-start: 1.5625vw;
          padding-inline-start: 1.5625vw;
  -webkit-padding-end: 1.5625vw;
          padding-inline-end: 1.5625vw;
}
@media only screen and (max-width: 767px) {
  .PageFaqItem {
    inline-size: 25rem;
    border-radius: 0.7142857143rem;
    -webkit-box-shadow: 0.1428571429rem 0.2142857143rem 0.5714285714rem -0.1428571429rem rgba(77, 98, 125, 0.18);
            box-shadow: 0.1428571429rem 0.2142857143rem 0.5714285714rem -0.1428571429rem rgba(77, 98, 125, 0.18);
    -webkit-padding-before: 1.0714285714rem;
            padding-block-start: 1.0714285714rem;
    -webkit-padding-after: 1.0714285714rem;
            padding-block-end: 1.0714285714rem;
    -webkit-padding-start: 1.0714285714rem;
            padding-inline-start: 1.0714285714rem;
    -webkit-padding-end: 1.0714285714rem;
            padding-inline-end: 1.0714285714rem;
  }
}

.PageFaqItem:focus-visible {
  outline: 2px solid #6b7e9b;
  outline-offset: 2px;
}

.PageFaqItemBody {
  -webkit-user-select: text;
     -moz-user-select: text;
      -ms-user-select: text;
          user-select: text;
}

.PageFaqItemQ {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.5208333333vw;
     -moz-column-gap: 0.5208333333vw;
          column-gap: 0.5208333333vw;
  min-block-size: 1.7708333333vw;
  -webkit-padding-before: 0.78125vw;
          padding-block-start: 0.78125vw;
}
@media only screen and (max-width: 767px) {
  .PageFaqItemQ {
    -webkit-padding-before: 0.3571428571rem;
            padding-block-start: 0.3571428571rem;
    -webkit-column-gap: 0.7857142857rem;
       -moz-column-gap: 0.7857142857rem;
            column-gap: 0.7857142857rem;
    min-block-size: 2.4285714286rem;
  }
}

.PageFaqItemQuestion {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 600;
  color: #313131;
  letter-spacing: 0;
  font-size: 1.0416666667vw;
  line-height: 1.005;
}
@media only screen and (max-width: 767px) {
  .PageFaqItemQuestion {
    line-height: 1.4357142857;
    font-size: 1rem;
  }
}

.PageFaqItemToggle {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  inline-size: 0.78125vw;
  block-size: 0.78125vw;
}
@media only screen and (max-width: 767px) {
  .PageFaqItemToggle {
    inline-size: 1.0714285714rem;
    block-size: 1.0714285714rem;
  }
}

.PageFaqItemToggle::before,
.PageFaqItemToggle::after {
  content: "";
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  background-color: #6b7e9b;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.PageFaqItemToggle::before {
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  inline-size: 100%;
  block-size: 0.078125vw;
}
@media only screen and (max-width: 767px) {
  .PageFaqItemToggle::before {
    inline-size: 100%;
    block-size: 0.1071428571rem;
  }
}

.PageFaqItemToggle::after {
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  inline-size: 0.078125vw;
  block-size: 100%;
}
@media only screen and (max-width: 767px) {
  .PageFaqItemToggle::after {
    inline-size: 0.1071428571rem;
    block-size: 100%;
  }
}

.PageFaqItem.is-open .PageFaqItemToggle::after {
  -webkit-transform: translate(-50%, -50%) scaleY(0);
          transform: translate(-50%, -50%) scaleY(0);
}

.PageFaqItemBody {
  display: grid;
  grid-template-rows: 0fr;
  -webkit-transition: grid-template-rows 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  transition: grid-template-rows 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  transition: grid-template-rows 0.4s cubic-bezier(0.22, 1, 0.36, 1), -ms-grid-rows 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.PageFaqItem.is-open .PageFaqItemBody {
  grid-template-rows: 1fr;
}

.PageFaqItemBodyInner {
  min-block-size: 0;
  overflow: hidden;
  -webkit-padding-after: 0.5208333333vw;
          padding-block-end: 0.5208333333vw;
}
@media only screen and (max-width: 767px) {
  .PageFaqItemBodyInner {
    -webkit-padding-after: 0.5rem;
            padding-block-end: 0.5rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .PageFaqItemBody,
  .PageFaqItemToggle::before,
  .PageFaqItemToggle::after {
    -webkit-transition: none;
    transition: none;
  }
}
.PageFaqItemDivider {
  block-size: 1px;
  background-color: rgba(118, 147, 177, 0.35);
  -webkit-margin-before: 0.78125vw;
          margin-block-start: 0.78125vw;
  -webkit-margin-after: 0.78125vw;
          margin-block-end: 0.78125vw;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  -webkit-margin-end: 0;
          margin-inline-end: 0;
}
@media only screen and (max-width: 767px) {
  .PageFaqItemDivider {
    -webkit-margin-before: 0.8571428571rem;
            margin-block-start: 0.8571428571rem;
    -webkit-margin-after: 0.7857142857rem;
            margin-block-end: 0.7857142857rem;
    -webkit-margin-start: 0.0714285714rem;
            margin-inline-start: 0.0714285714rem;
    -webkit-margin-end: 0.0714285714rem;
            margin-inline-end: 0.0714285714rem;
  }
}

.PageFaqItemA {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 0.5729166667vw;
     -moz-column-gap: 0.5729166667vw;
          column-gap: 0.5729166667vw;
}
@media only screen and (max-width: 767px) {
  .PageFaqItemA {
    -webkit-column-gap: 0.7857142857rem;
       -moz-column-gap: 0.7857142857rem;
            column-gap: 0.7857142857rem;
  }
}

.PageFaqItemAnswer {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #070707;
  letter-spacing: 0;
  font-size: 0.7291666667vw;
  line-height: 1.7142857143;
}
@media only screen and (max-width: 767px) {
  .PageFaqItemAnswer {
    line-height: 1.6666666667;
    font-size: 0.8571428571rem;
  }
}

.PageFaqItemBadge {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border-radius: 50%;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0;
  inline-size: 1.7708333333vw;
  block-size: 1.7708333333vw;
  font-size: 1.0416666667vw;
}
@media only screen and (max-width: 767px) {
  .PageFaqItemBadge {
    inline-size: 2.4285714286rem;
    block-size: 2.4285714286rem;
    font-size: 1.4285714286rem;
  }
}

.PageFaqItemBadge--q {
  background-image: linear-gradient(220deg, #b7e1ec 0%, #85bad7 51%, #6b7e9b 100%);
  color: #ffffff;
}

.PageFaqItemBadge--a {
  background-color: transparent;
  color: #6b7e9b;
  border: 1px solid currentColor;
}

.PageFaq {
  --faq-fadein-offset: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .PageFaq {
    --faq-fadein-offset: 0.8571428571rem;
  }
}

.PageFaq .js-FadeIn {
  opacity: 0;
  translate: 0 var(--faq-fadein-offset);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  will-change: opacity, translate;
}

.PageFaq .js-FadeIn.is-revealed {
  opacity: 1;
  translate: 0 0;
}

@media (prefers-reduced-motion: reduce) {
  .PageFaq .js-FadeIn {
    opacity: 1;
    translate: 0 0;
    -webkit-transition: none;
    transition: none;
  }
}
.PageProduct {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  display: block;
}
@media only screen and (max-width: 767px) {
  .PageProduct {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-padding-after: 5rem;
            padding-block-end: 5rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageProduct {
    block-size: 54.1666666667vw;
  }
}

.PageProductBg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.PageProductBgImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
}

.PageProductBgImgPic {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.PageProductGlow {
  position: absolute;
  z-index: 0;
  pointer-events: none;
  inset-block-start: 32.0833333333vw;
  inset-inline-start: 35.7291666667vw;
  inline-size: 28.59375vw;
  block-size: 18.28125vw;
}
@media only screen and (max-width: 767px) {
  .PageProductGlow {
    inset-block-start: 44rem;
    inset-inline-start: -5.7857142857rem;
    inline-size: 39.2142857143rem;
    block-size: 25.0714285714rem;
  }
}

.PageProductGlowImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: fill;
     object-fit: fill;
}

.PageProductLogo {
  z-index: 1;
  position: absolute;
  inline-size: 15vw;
  block-size: 4.5833333333vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
}
@media only screen and (max-width: 767px) {
  .PageProductLogo {
    position: relative;
    -webkit-margin-before: 5rem;
            margin-block-start: 5rem;
    -webkit-margin-start: 4.5rem;
            margin-inline-start: 4.5rem;
    inline-size: 18rem;
    block-size: 5.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageProductLogo {
    inset-block-start: 12.2395833333vw;
    inset-inline-start: 52.8197916667vw;
  }
}

.PageProductLogoImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

.PageProductSubtitle {
  z-index: 1;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  text-align: center;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #161616;
  letter-spacing: 0;
  position: absolute;
  inline-size: 20.8333333333vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  font-size: 1.0713541667vw;
  line-height: 1.3889158969;
}
@media only screen and (max-width: 767px) {
  .PageProductSubtitle {
    position: relative;
    line-height: 1.3888888889;
    -webkit-margin-before: 0.9285714286rem;
            margin-block-start: 0.9285714286rem;
    -webkit-margin-start: 1.4285714286rem;
            margin-inline-start: 1.4285714286rem;
    inline-size: 25rem;
    font-size: 1.2857142857rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageProductSubtitle {
    inset-block-start: 17.596875vw;
    inset-inline-start: 50.2604166667vw;
  }
}

.PageProductImg {
  z-index: 1;
  position: absolute;
  inline-size: 16.4583333333vw;
  block-size: 27.34375vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
}
@media only screen and (max-width: 767px) {
  .PageProductImg {
    position: relative;
    -webkit-margin-before: 2.2142857143rem;
            margin-block-start: 2.2142857143rem;
    -webkit-margin-start: 4.5rem;
            margin-inline-start: 4.5rem;
    inline-size: 16.8571428571rem;
    block-size: 28rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageProductImg {
    inset-block-start: 4.7395833333vw;
    inset-inline-start: 31.9270833333vw;
  }
}

.PageProductImgFig {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

.PageProductAward {
  position: absolute;
  z-index: 2;
  inset-block-start: 22.7083333333vw;
  inset-inline-start: 28.6979166667vw;
  inline-size: 6.9270833333vw;
  block-size: 6.9270833333vw;
}
@media only screen and (max-width: 767px) {
  .PageProductAward {
    inset-block-start: 37.2142857143rem;
    inset-inline-start: 3rem;
    inline-size: 6.6428571429rem;
    block-size: 6.6428571429rem;
  }
}

.PageProductAwardImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

.PageProductPrice {
  z-index: 1;
  text-align: center;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  position: absolute;
  inline-size: 21.1979166667vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
}
@media only screen and (max-width: 767px) {
  .PageProductPrice {
    position: relative;
    -webkit-margin-before: 3.6428571429rem;
            margin-block-start: 3.6428571429rem;
    -webkit-margin-start: 1.7142857143rem;
            margin-inline-start: 1.7142857143rem;
    inline-size: 25rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageProductPrice {
    inset-block-start: 21.6145833333vw;
    inset-inline-start: 50.2604166667vw;
  }
}

.PageProductPriceLine {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-weight: 600;
  color: #212121;
  letter-spacing: 0;
  font-size: 1.0416666667vw;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .PageProductPriceLine {
    line-height: 1.7857142857;
    font-size: 1rem;
  }
}

.PageProductPriceOld {
  position: relative;
  display: inline-block;
  text-decoration: none;
  font-size: 0.8479166667vw;
}
@media only screen and (max-width: 767px) {
  .PageProductPriceOld {
    font-size: 1rem;
  }
}

.PageProductPriceOld::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-inline-end: 0;
  inset-block-start: 50%;
  background-color: #d50000;
  -webkit-transform: translateY(-50%) rotate(9.87deg);
          transform: translateY(-50%) rotate(9.87deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  pointer-events: none;
  block-size: 0.0520833333vw;
}
@media only screen and (max-width: 767px) {
  .PageProductPriceOld::after {
    block-size: 0.0714285714rem;
  }
}

.PageProductPriceYenOld {
  letter-spacing: -0.33em;
  font-size: 0.8479166667vw;
}
@media only screen and (max-width: 767px) {
  .PageProductPriceYenOld {
    font-size: 1rem;
  }
}

.PageProductPriceTaxSmall {
  font-size: 0.6057291667vw;
}
@media only screen and (max-width: 767px) {
  .PageProductPriceTaxSmall {
    font-size: 0.7142857143rem;
  }
}

.PageProductPriceArrow {
  font-size: 0.8479166667vw;
}
@media only screen and (max-width: 767px) {
  .PageProductPriceArrow {
    font-size: 1rem;
  }
}

.PageProductPriceLabel {
  font-size: 0.7265625vw;
}
@media only screen and (max-width: 767px) {
  .PageProductPriceLabel {
    font-size: 0.8571428571rem;
  }
}

.PageProductPriceNumNew {
  font-size: 0.9692708333vw;
}
@media only screen and (max-width: 767px) {
  .PageProductPriceNumNew {
    font-size: 1.1428571429rem;
  }
}

.PageProductPriceYenNew {
  letter-spacing: -0.39em;
  font-size: 0.8479166667vw;
}
@media only screen and (max-width: 767px) {
  .PageProductPriceYenNew {
    font-size: 1rem;
  }
}

.PageProductPriceNote {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-weight: 300;
  color: #212121;
  letter-spacing: 0;
  font-size: 0.6057291667vw;
  line-height: 2.0997420464;
}
@media only screen and (max-width: 767px) {
  .PageProductPriceNote {
    line-height: 2.1;
    font-size: 0.7142857143rem;
  }
}

.PageProductBanner {
  display: block;
  z-index: 1;
  position: absolute;
  inline-size: 33.0859375vw;
  block-size: 11.1552083333vw;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
}
@media only screen and (max-width: 767px) {
  .PageProductBanner {
    position: relative;
    -webkit-margin-before: 1rem;
            margin-block-start: 1rem;
    -webkit-margin-start: 1.3571428571rem;
            margin-inline-start: 1.3571428571rem;
    inline-size: 25rem;
    block-size: 8.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageProductBanner {
    inset-block-start: 36.1979166667vw;
    inset-inline-start: 33.4375vw;
  }
}

.PageProductBannerImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.PageProduct {
  --product-fadein-offset: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .PageProduct {
    --product-fadein-offset: 0.8571428571rem;
  }
}

.PageProduct .js-FadeIn {
  opacity: 0;
  translate: 0 var(--product-fadein-offset);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  will-change: opacity, translate;
}

.PageProduct .js-FadeIn.is-revealed {
  opacity: 1;
  translate: 0 0;
}

@media (prefers-reduced-motion: reduce) {
  .PageProduct .js-FadeIn {
    opacity: 1;
    translate: 0 0;
    -webkit-transition: none;
    transition: none;
  }
}
.PageCta {
  position: relative;
  background-image: linear-gradient(344deg, #eaf4f7 0%, #f1f1f1 100%);
  -webkit-padding-after: 10.4166666667vw;
          padding-block-end: 10.4166666667vw;
}
@media only screen and (max-width: 767px) {
  .PageCta {
    -webkit-padding-after: 3.5714285714rem;
            padding-block-end: 3.5714285714rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageCta {
    -webkit-padding-before: 6.6145833333vw;
            padding-block-start: 6.6145833333vw;
  }
}

.PageCtaHero {
  position: relative;
}
@media only screen and (min-width: 768px) {
  .PageCtaHero {
    -webkit-margin-start: 18.75vw;
            margin-inline-start: 18.75vw;
    inline-size: 58.8020833333vw;
    display: grid;
    grid-template-columns: 35.625vw 23.1770833333vw;
    grid-template-rows: 23.8541666667vw auto;
  }
}

.PageCtaHeroImg {
  display: block;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  -webkit-margin-before: 0.4166666667vw;
          margin-block-start: 0.4166666667vw;
  inline-size: 35.625vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaHeroImg {
    -webkit-margin-before: 0;
            margin-block-start: 0;
    inline-size: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .PageCtaHeroImg {
    grid-column: 1;
    grid-row: 1/span 2;
    block-size: 26.5104166667vw;
  }
}

.PageCtaHeroImgFig {
  display: block;
  inline-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  block-size: 100%;
}
@media only screen and (max-width: 767px) {
  .PageCtaHeroImgFig {
    block-size: auto;
  }
}

.PageCtaHeroCopy {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  background-image: linear-gradient(180.795deg, #839fbd 4.149%, #7693b1 38.8%, #556982 97.752%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  letter-spacing: 0;
  font-size: 1.6666666667vw;
  line-height: 1.26690625;
}
@media only screen and (max-width: 767px) {
  .PageCtaHeroCopy {
    line-height: 1.25;
    position: absolute;
    inset-block-start: 3.0714285714rem;
    inset-inline-start: 14.1428571429rem;
    font-size: 1.4285714286rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageCtaHeroCopy {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    align-self: start;
    margin-right: 7.2916666667vw;
    width: 6.8229166667vw;
    height: 16.9270833333vw;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
  }
}

.PageCtaHeroCopyLine {
  display: block;
}

.PageCtaHeroCopyLine + .PageCtaHeroCopyLine {
  -webkit-margin-before: 1.6145833333vw;
          margin-block-start: 1.6145833333vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaHeroCopyLine + .PageCtaHeroCopyLine {
    -webkit-margin-before: 0.6428571429rem;
            margin-block-start: 0.6428571429rem;
  }
}

.PageCtaHeroBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  inline-size: 18.2291666667vw;
  -webkit-padding-start: 0;
          padding-inline-start: 0;
  -webkit-padding-end: 0;
          padding-inline-end: 0;
}
@media only screen and (max-width: 767px) {
  .PageCtaHeroBtn {
    inline-size: 100%;
    -webkit-margin-before: 3.8571428571rem;
            margin-block-start: 3.8571428571rem;
    -webkit-padding-start: 1.4285714286rem;
            padding-inline-start: 1.4285714286rem;
    -webkit-padding-end: 1.4285714286rem;
            padding-inline-end: 1.4285714286rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageCtaHeroBtn {
    grid-column: 2;
    grid-row: 2;
    justify-self: end;
    align-self: start;
  }
}

.PageCtaInfo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-margin-before: 8.0208333333vw;
          margin-block-start: 8.0208333333vw;
  -webkit-padding-start: 27.96875vw;
          padding-inline-start: 27.96875vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaInfo {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-margin-before: 4rem;
            margin-block-start: 4rem;
    -webkit-padding-start: 1.5rem;
            padding-inline-start: 1.5rem;
    row-gap: 1.4285714286rem;
  }
}
@media only screen and (min-width: 768px) {
  .PageCtaInfo {
    -webkit-column-gap: 4.4270833333vw;
       -moz-column-gap: 4.4270833333vw;
            column-gap: 4.4270833333vw;
  }
}

.PageCtaContents {
  display: block;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  inline-size: 17.7083333333vw;
  block-size: 14.0625vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaContents {
    inline-size: 17.0714285714rem;
    block-size: 13.5714285714rem;
  }
}

.PageCtaContentsImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

.PageCtaShopInfo {
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: 300;
  color: #212121;
  letter-spacing: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  inline-size: 31.1458333333vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaShopInfo {
    inline-size: 25rem;
  }
}

.PageCtaShopInfoContact {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  font-style: normal;
  font-size: 0.8333333333vw;
  line-height: 1.6875;
}
@media only screen and (max-width: 767px) {
  .PageCtaShopInfoContact {
    font-size: 0.8571428571rem;
    line-height: 1.6666666667;
  }
}

.PageCtaShopInfoContact a {
  color: inherit;
}

.PageCtaShopInfoContact a:hover,
.PageCtaShopInfoContact a:focus-visible {
  text-decoration: underline;
}

.PageCtaShopInfoBody {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-margin-before: 1.40625vw;
          margin-block-start: 1.40625vw;
  font-size: 0.8333333333vw;
  line-height: 1.6875;
}
@media only screen and (max-width: 767px) {
  .PageCtaShopInfoBody {
    -webkit-margin-before: 3.5714285714rem;
            margin-block-start: 3.5714285714rem;
    font-size: 0.8571428571rem;
    line-height: 2.0833333333;
  }
}

.PageCtaLine {
  position: fixed;
  z-index: 100;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #05ba05;
  color: #fff;
  border-start-start-radius: 0.7857142857rem;
  border-end-start-radius: 0.7857142857rem;
  inset-inline-end: 0;
  inset-block-start: min(29.5833333333vw, 100dvh - 13.90625vw);
  inset-block-end: auto;
  inline-size: 4.375vw;
  block-size: 5.5729166667vw;
  -webkit-padding-before: 0.3645833333vw;
          padding-block-start: 0.3645833333vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaLine {
    inset-inline-end: 0;
    inset-block-start: min(40.5714285714rem, 100dvh - 19.0714285714rem);
    inset-block-end: auto;
    inline-size: 6rem;
    block-size: 7.6428571429rem;
    -webkit-padding-before: 0.5rem;
            padding-block-start: 0.5rem;
  }
}

.PageCtaLine:hover,
.PageCtaLine:focus-visible {
  opacity: 0.9;
}

.PageCtaLineIcon {
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  inline-size: 1.9270833333vw;
  block-size: 1.8229166667vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaLineIcon {
    inline-size: 2.6428571429rem;
    block-size: 2.5rem;
  }
}

.PageCtaLineIconImg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

.PageCtaLineLabel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  -webkit-margin-before: 0.2083333333vw;
          margin-block-start: 0.2083333333vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaLineLabel {
    -webkit-margin-before: 0.2857142857rem;
            margin-block-start: 0.2857142857rem;
  }
}

.PageCtaLineLabelTop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  font-size: 0.9895833333vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaLineLabelTop {
    font-size: 1.3571428571rem;
  }
}

.PageCtaLineLabelTopSmall {
  font-size: 0.6015625vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaLineLabelTopSmall {
    font-size: 0.825rem;
  }
}

.PageCtaLineLabelBottom {
  -webkit-margin-before: 0.15625vw;
          margin-block-start: 0.15625vw;
  font-size: 0.721875vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaLineLabelBottom {
    -webkit-margin-before: 0.2142857143rem;
            margin-block-start: 0.2142857143rem;
    font-size: 0.99rem;
  }
}

.PageCtaLineArrow {
  display: block;
  color: #fff;
  -webkit-margin-before: 0.4166666667vw;
          margin-block-start: 0.4166666667vw;
  inline-size: 1.6145833333vw;
  block-size: 0.3645833333vw;
}
@media only screen and (max-width: 767px) {
  .PageCtaLineArrow {
    -webkit-margin-before: 0.5714285714rem;
            margin-block-start: 0.5714285714rem;
    inline-size: 2.2142857143rem;
    block-size: 0.5rem;
  }
}

.PageCtaLineArrowSvg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
}

.PageCta {
  --cta-fadein-offset: 0.625vw;
}
@media only screen and (max-width: 767px) {
  .PageCta {
    --cta-fadein-offset: 0.8571428571rem;
  }
}

.PageCta .js-FadeIn {
  opacity: 0;
  translate: 0 var(--cta-fadein-offset);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s), translate 0.9s cubic-bezier(0.22, 1, 0.36, 1) var(--fadein-delay, 0s);
  will-change: opacity, translate;
}

.PageCta .js-FadeIn.is-revealed {
  opacity: 1;
  translate: 0 0;
}

@media (prefers-reduced-motion: reduce) {
  .PageCta .js-FadeIn {
    opacity: 1;
    translate: 0 0;
    -webkit-transition: none;
    transition: none;
  }
}/*# sourceMappingURL=style__yd.css.map */