@charset "UTF-8";
html {
  font-size: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: 190px;
}

body {
  color: #222;
  font-family: "Zen Kaku Gothic New", system-ui, sans-serif;
  line-height: 1.8;
  background: #fff;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

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

main {
  min-height: 60vh;
}

[id] {
  scroll-margin-top: 190px;
}

@media only screen and (max-width: 1024px) {
  html {
    scroll-padding-top: 125px;
  }
  [id] {
    scroll-margin-top: 125px;
  }
}
.fadein {
  opacity: 0;
  will-change: opacity;
}

.fadein.is-animated {
  animation: fadein 1.5s ease forwards;
}

@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeup {
  opacity: 0;
  transform: translateY(20px);
  will-change: opacity, transform;
}

.fadeup.is-animated {
  animation: fadeup 1.5s ease forwards;
}

@keyframes fadeup {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .js-common-anim {
    transition: none;
  }
  .fadein {
    animation: none;
    opacity: 1;
  }
  .fadeup {
    animation: none;
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes page65-contact-circle-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.newhome-page * {
  box-sizing: border-box;
}
.newhome-page h2, .newhome-page h3 {
  line-height: unset;
}
.newhome-page .case {
  color: #1f3661;
  box-sizing: border-box;
}
.newhome-page .case *,
.newhome-page .case *::before,
.newhome-page .case *::after {
  box-sizing: border-box;
}
.newhome-page .soudan {
  color: #1f3661;
  box-sizing: border-box;
}
.newhome-page .soudan *,
.newhome-page .soudan *::before,
.newhome-page .soudan *::after {
  box-sizing: border-box;
}
.newhome-page .reason {
  color: #1f3661;
  box-sizing: border-box;
}
.newhome-page .reason *,
.newhome-page .reason *::before,
.newhome-page .reason *::after {
  box-sizing: border-box;
}
.newhome-page .difference {
  color: #1f3661;
  box-sizing: border-box;
}
.newhome-page .difference *,
.newhome-page .difference *::before,
.newhome-page .difference *::after {
  box-sizing: border-box;
}
.newhome-page .case__copy {
  margin: 0;
  color: #1f3661;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.newhome-page .case__panel h3 {
  margin: 0;
  color: #1f3661;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.newhome-page .case__recommend h3 {
  margin: 0;
  color: #1f3661;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.newhome-page .soudan h2 {
  margin: 0;
  color: #1f3661;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.newhome-page .reason h2 {
  margin: 0;
  color: #1f3661;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.newhome-page .difference h2 {
  margin: 0;
  color: #1f3661;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.newhome-page .case__inner {
  margin: 0 auto;
}
.newhome-page .soudan__inner {
  margin: 0 auto;
}
.newhome-page .reason__inner {
  margin: 0 auto;
}
.newhome-page .difference__inner {
  margin: 0 auto;
}
.newhome-page .faq__inner {
  margin: 0 auto;
}
.newhome-page .case__exp p {
  margin: 0;
  color: #1f3661;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.newhome-page .case__panel p {
  margin: 0;
  color: #1f3661;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.newhome-page .case__point-item p {
  margin: 0;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.newhome-page .soudan__lead {
  margin: 0;
  color: #1f3661;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.newhome-page .soudan__card p {
  margin: 0;
  color: #1f3661;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.newhome-page .reason__item p {
  margin: 0;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.newhome-page .difference__lead {
  margin: 0;
  color: #1f3661;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.newhome-page .faq__item dd {
  margin: 0;
  color: #1f3661;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.newhome-page .faq__reform p {
  margin: 0;
  color: #1f3661;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.newhome-page .case__panel-img img {
  display: block;
  width: 100%;
  object-fit: cover;
}
.newhome-page .case__point-item img {
  display: block;
  width: 100%;
  object-fit: cover;
}
.newhome-page .case__housing img {
  display: block;
  width: 100%;
  object-fit: cover;
}
.newhome-page .soudan__card img {
  display: block;
  width: 100%;
  object-fit: cover;
}
.newhome-page .reason__item img {
  display: block;
  width: 100%;
  object-fit: cover;
}
.newhome-page .case {
  background: #E2E6EB;
  position: relative;
}
.newhome-page .case::before {
  content: "";
  display: block;
  width: 100%;
  height: 17px;
  background: url(../images/page01/page20/PC/nami01_pc.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0px;
  left: 0;
}
.newhome-page .case::after {
  top: -1px;
  height: 18px;
  background-image: radial-gradient(32px 16px at 32px 18px, #fff 98%, transparent 100%);
}
.newhome-page .difference::before {
  top: -1px;
  height: 18px;
  background-image: radial-gradient(32px 16px at 32px 18px, #fff 98%, transparent 100%);
}
.newhome-page .case__copy,
.newhome-page .case__exp {
  text-align: center;
}
.newhome-page .case__copy {
  position: relative;
}
.newhome-page .case__copy::before,
.newhome-page .case__copy::after {
  content: "";
  display: inline-block;
  width: 55px;
  height: 65px;
  margin: 0;
  background: url("../images/page01/page20/PC/fukidashi_left.png") center/contain no-repeat;
  vertical-align: middle;
  position: relative;
  top: -9px;
  left: -14px;
}
.newhome-page .case__copy::after {
  left: 14px;
}
.newhome-page .case__copy::after {
  background-image: url("../images/page01/page20/PC/fukidashi_right.png");
}
.newhome-page .case__tab-section {
  border-radius: 8px 8px 0 0;
}
.newhome-page .case__tab-panel {
  background-color: #fff;
}
.newhome-page .case__tab-panel[hidden] {
  display: none;
}
.newhome-page .case__tabs {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.newhome-page .case__tab {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: 0;
  background: #1f3c6d;
  color: #fff;
  font-family: inherit;
  font-weight: 700;
  letter-spacing: 0.05em;
  border-radius: 10px 10px 0 0;
}
.newhome-page .case__tab.is-active {
  background: #fff;
  color: #1f3661;
}
.newhome-page .case__tab img {
  width: 25px;
  height: 25px;
  object-fit: contain;
  margin-top: 2px;
}
.newhome-page .case__panel {
  display: grid;
}
.newhome-page .case__panel h3 {
  color: #1f3661;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.newhome-page .case__point-item h4 {
  color: #1f3661;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.newhome-page .reason__item h3 {
  color: #1f3661;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.newhome-page .case__panel h3 {
  position: relative;
}
.newhome-page .case__panel-img img {
  border-radius: 14px;
}
.newhome-page .case__point-item img {
  border-radius: 14px;
}
.newhome-page .case__housing img {
  border-radius: 14px;
}
.newhome-page .soudan__card img {
  border-radius: 14px;
}
.newhome-page .reason__item img {
  border-radius: 14px;
}
.newhome-page .case__recommend {
  position: relative;
  background: #364D78;
  color: #fff;
  text-align: center;
}
.newhome-page .case__recommend h3,
.newhome-page .case__recommend li {
  color: #fff;
}
.newhome-page .case__recommend ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  padding: 0;
  margin: 0;
  list-style: none;
  margin-bottom: 90px;
  position: relative;
}
.newhome-page .case__recommend ul:before {
  content: "";
  display: block;
  background: url(../images/page01/page20/PC/triangle.png) no-repeat;
  background-size: contain;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.newhome-page .case__recommend li::before {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 auto 8px;
  background: url(../images/page01/page20/PC/check_white.png) no-repeat;
  background-size: contain;
}
.newhome-page .case__recommend p {
  display: grid;
  gap: 6px;
  margin: 0;
}
.newhome-page .case__recommend p span {
  display: inline-block;
  width: fit-content;
  margin: 0 auto;
  background: #fff;
  color: #1f3661;
  font-weight: 700;
  letter-spacing: 0.06em;
}
.newhome-page .case__point {
  text-align: center;
}
.newhome-page .case__point-list {
  text-align: left;
}
.newhome-page .case__point-item {
  display: flex;
  align-items: center;
}
.newhome-page .case__point-num {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  color: #5a78ad;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
}
.newhome-page .case__point-num::before {
  content: "POINT";
  display: inline-block;
  padding-bottom: 4px;
  border-bottom: 1px dotted #4C639E;
  font: normal normal 500 12px/15px Poppins;
  letter-spacing: 0.6px;
  color: #4C639E;
}
.newhome-page .case__point-item h4 span {
  background: linear-gradient(transparent calc(100% - 10px), rgba(237, 219, 6, 0.39) 0);
  text-shadow: 2px 2px #fff;
}
.newhome-page .reason__num {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  color: #5a78ad;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
}
.newhome-page .reason__num::before {
  content: "REASON";
  display: inline-block;
  padding-bottom: 4px;
  border-bottom: 1px dashed #4C639E;
  font: normal normal 500 12px/15px Poppins;
  letter-spacing: 0.6px;
  color: #4C639E;
}
.newhome-page .reason__item h3 span .bg {
  background: linear-gradient(transparent calc(100% - 10px), rgba(237, 219, 6, 0.39) 0);
  text-shadow: 2px 2px #fff;
}
.newhome-page .case__housing {
  display: grid;
}
.newhome-page .case__housing h5 {
  display: inline-block;
  margin: 0;
  background: #364D78 0% 0% no-repeat padding-box;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.05em;
}
.newhome-page .soudan {
  background: #fff;
  text-align: center;
}
.newhome-page .soudan .section-label {
  display: none;
}
.newhome-page .soudan h2 {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 28px;
}
.newhome-page .soudan__heading-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.newhome-page .soudan__heading-text::before, .newhome-page .soudan__heading-text::after {
  content: "";
  display: inline-block;
  width: 55px;
  height: 65px;
  margin: 0;
  background: url(../images/page01/page20/PC/fukidashi_left.png) center/contain no-repeat;
  vertical-align: middle;
  position: absolute;
}
.newhome-page .soudan__heading-text::before {
  background: url(../images/page01/page20/PC/fukidashi_left.png) center/contain no-repeat;
  top: -9px;
  left: -77px;
}
.newhome-page .soudan__heading-text::after {
  background: url(../images/page01/page20/PC/fukidashi_right.png) center/contain no-repeat;
  top: -9px;
  right: -77px;
}
.newhome-page .soudan__heading-main,
.newhome-page .soudan__heading-sub {
  display: block;
}
.newhome-page .soudan h2 .soudan__heading-main {
  font-size: 1em;
}
.newhome-page .soudan h2 .soudan__heading-sub {
  font-size: 0.68em;
}
.newhome-page .soudan__list {
  display: grid;
}
.newhome-page .soudan__card {
  text-align: left;
}
.newhome-page .soudan__card h3 {
  position: relative;
  margin: 0;
  color: #1f3661;
  font-weight: 700;
}
.newhome-page .soudan__card h3::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 70px;
  margin-right: 22px;
  margin-left: 24px;
  border-radius: 100px;
  background: #1f3c6d;
  vertical-align: middle;
  position: relative;
  bottom: -2px;
}
.newhome-page .reason {
  position: relative;
  background: #f7f8fa;
}
.newhome-page .reason::before {
  content: "";
  display: block;
  width: 100%;
  height: 58.5px;
  background: url(../images/page01/page20/PC/nami02_pc.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: -57px;
  left: 0;
}
.newhome-page .reason__inner {
  position: relative;
  z-index: 1;
}
.newhome-page .reason h2 {
  text-align: center;
}
.newhome-page .reason .section-label {
  text-align: center;
  position: relative;
  width: fit-content;
  margin: 0 auto 5px;
}
.newhome-page .difference h2 {
  text-align: center;
}
.newhome-page .reason__item {
  display: grid;
  align-items: center;
}
.newhome-page .difference {
  position: relative;
  background: #364D78;
  color: #fff;
}
.newhome-page .difference .section-label {
  color: #fff;
  text-align: center;
  position: relative;
  width: fit-content;
  margin: 0 auto 5px;
}
.newhome-page .difference h2 {
  color: #fff;
  text-align: center;
}
.newhome-page .difference__lead {
  color: #fff;
  text-align: center;
}
.newhome-page .difference__table-wrap {
  overflow-x: auto;
}
.newhome-page .difference__table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  color: #1f3661;
  table-layout: fixed;
}
.newhome-page .difference__table th {
  border: 2px solid #364D78;
  text-align: center;
  vertical-align: middle;
}
.newhome-page .difference__table td {
  border: 2px solid #364D78;
  text-align: center;
  vertical-align: middle;
}
.newhome-page .difference__table th {
  background: #E2E7EB;
  font-weight: 700;
}
.newhome-page .difference__table tbody th {
  text-align: left;
}
.newhome-page .difference__table .is-royal th {
  background: #F49517;
  color: #fff;
}
.newhome-page .difference__table .is-royal td {
  background: #FFEACE;
}
.newhome-page .difference__scrollbar {
  display: none;
}
.newhome-page .difference__button {
  display: flex;
  align-items: center;
  width: fit-content;
  margin: 0 auto;
  border: 1px solid #fff;
  border-radius: 999px;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.newhome-page .difference__button::after {
  content: "";
  width: 16px;
  height: 10px;
  margin-left: 20px;
  background-color: currentColor;
  mask: url(../images/top/plan/PC/right_blue.png) center/contain no-repeat;
  -webkit-mask: url(../images/top/plan/PC/right_blue.png) center/contain no-repeat;
  transition: background-color 0.4s ease;
}
.newhome-page .top {
  color: #1f3661;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}
.newhome-page .top *,
.newhome-page .top *::before,
.newhome-page .top *::after {
  box-sizing: border-box;
}
.newhome-page .top__inner {
  margin: 0 auto;
}
.newhome-page .top__copy {
  margin: 0;
}
.newhome-page .top__copy > span {
  color: #1f3661;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.newhome-page .top__copy .orange {
  color: #f49517;
}
.newhome-page .top__contents p {
  margin: 0;
  color: #1f3661;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.newhome-page .top__img {
  position: relative;
  pointer-events: none;
}
.newhome-page .top__img img {
  display: block;
  width: 100%;
  object-fit: cover;
  position: absolute;
}
@media only screen and (min-width: 1025px) {
  .newhome-page .sp {
    display: none;
  }
  .newhome-page .kv .texts h1 strong {
    display: inline-block;
    margin-top: 5px;
  }
  .newhome-page .case {
    padding: 115px 0 105px;
  }
  .newhome-page .case__inner {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
  }
  .newhome-page .soudan__inner {
    max-width: 1120px;
    margin: 0 auto;
  }
  .newhome-page .reason__inner {
    width: fit-content;
    max-width: 1094px;
    margin: 0 auto;
  }
  .newhome-page .reason__inner .section-label {
    display: block;
    width: fit-content;
    margin: 0 auto 5px;
    font: normal normal 500 14px/24px Poppins;
    letter-spacing: 0.98px;
    color: #4C639E;
    margin-bottom: 5px;
    text-align: center;
    position: relative;
  }
  .newhome-page .reason__inner .section-label::before,
  .newhome-page .reason__inner .section-label::after {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    background: url(../images/page01/page80/PC/star.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  .newhome-page .reason__inner .section-label::before {
    left: -25px;
  }
  .newhome-page .reason__inner .section-label::after {
    right: -25px;
  }
  .newhome-page .difference__inner .section-label {
    display: block;
    width: fit-content;
    margin: 0 auto 5px;
    font: normal normal 500 14px/24px Poppins;
    letter-spacing: 0.98px;
    margin-bottom: 5px;
    text-align: center;
    position: relative;
  }
  .newhome-page .difference__inner .section-label::before,
  .newhome-page .difference__inner .section-label::after {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    background: url(../images/page01/page80/PC/star.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  .newhome-page .difference__inner .section-label::before {
    left: -25px;
  }
  .newhome-page .difference__inner .section-label::after {
    right: -25px;
  }
  .newhome-page .faq__inner {
    width: 1280px;
  }
  .newhome-page .case__copy {
    font-size: 31px;
    line-height: 48px;
    font: normal normal bold 36px/46px Zen Kaku Gothic New;
    letter-spacing: 2.88px;
    color: #364D78;
  }
  .newhome-page .case__exp {
    margin-top: 28px;
  }
  .newhome-page .case__exp p {
    font-size: 15px;
    line-height: 28px;
    text-align: center;
  }
  .newhome-page .soudan__lead {
    font-size: 15px;
    line-height: 28px;
  }
  .newhome-page .difference__lead {
    font-size: 15px;
    line-height: 28px;
  }
  .newhome-page .case__tab-section {
    margin-top: 48px;
  }
  .newhome-page .case__tab {
    min-height: 70px;
    background: #364D78;
    font-size: 20px;
    line-height: 2.3;
    letter-spacing: 0.05em;
    transition: all 0.3s ease;
  }
  .newhome-page .case__tab:hover {
    cursor: pointer;
    background: #92A0C6;
  }
  .newhome-page .case__tab.is-active {
    background: #fff;
  }
  .newhome-page .case__panel {
    grid-template-columns: 500px 370px;
    gap: 80px;
    padding: 90px 0 0;
    margin: 0 auto;
    width: 950px;
  }
  .newhome-page .case__panel h3 span {
    display: inline-block;
    font: normal normal 500 26px/37px Zen Kaku Gothic New;
    letter-spacing: 1.3px;
    color: #1F3661;
    padding-bottom: 8px;
    border-bottom: dashed 1px;
  }
  .newhome-page .case__panel h3 span:first-child {
    margin-bottom: 8px;
  }
  .newhome-page .case__panel p {
    margin-top: 30px;
    font: normal normal normal 16px/30px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
  }
  .newhome-page .case__panel-img img {
    height: 247px;
  }
  .newhome-page .case__recommend {
    width: fit-content;
    margin: 124px auto 0;
    padding: 0 77px 60px;
    border-radius: 16px;
    position: relative;
    z-index: 1;
  }
  .newhome-page .case__recommend::before {
    content: "";
    display: block;
    width: 570px;
    height: 289px;
    background: url(../images/page01/page20/PC/circle_pc.png) no-repeat;
    background-size: contain;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -84px;
    z-index: 0;
  }
  .newhome-page .case__recommend h3 {
    font: normal normal bold 30px/46px Zen Kaku Gothic New;
    letter-spacing: 2.4px;
    color: #FFFFFF;
    margin-bottom: 40px;
    position: relative;
  }
  .newhome-page .case__recommend ul:before {
    width: 85px;
    height: 30px;
    bottom: 30px;
    bottom: -57px;
  }
  .newhome-page .case__recommend li {
    font: normal normal 500 18px/30px Zen Kaku Gothic New;
    letter-spacing: 0.54px;
    color: #FFFFFF;
    position: relative;
  }
  .newhome-page .case__recommend p {
    margin-top: 35px;
  }
  .newhome-page .case__recommend p span {
    font: normal normal bold 26px/44px Zen Kaku Gothic New;
    letter-spacing: 1.3px;
    color: #364D78;
    padding: 0 10px;
  }
  .newhome-page .case__recommend p span .sp {
    display: none;
  }
  .newhome-page .case__point {
    margin: 0 auto;
    padding: 60px 0 30px;
  }
  .newhome-page .case__point .section-label {
    display: inline-block;
    font: normal normal 500 14px/24px Poppins;
    letter-spacing: 0.98px;
    color: #4C639E;
    margin-bottom: 5px;
    text-align: center;
    position: relative;
  }
  .newhome-page .case__point .section-label::before,
  .newhome-page .case__point .section-label::after {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    background: url(../images/page01/page80/PC/star.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  .newhome-page .case__point .section-label::before {
    left: -25px;
  }
  .newhome-page .case__point .section-label::after {
    right: -25px;
  }
  .newhome-page .case__point h3 {
    font: normal normal bold 36px/52px Zen Kaku Gothic New;
    letter-spacing: 2.88px;
    color: #4C639E;
    margin-bottom: 60px;
  }
  .newhome-page .site-footer__quick a {
    padding: 0 58px 0 40px;
  }
  .newhome-page .soudan h2 {
    font: normal normal bold 31px/37px Zen Kaku Gothic New;
    letter-spacing: 2.48px;
    color: #364D78;
    margin-bottom: 0;
  }
  .newhome-page .reason h2 {
    font: normal normal bold 36px/52px Zen Kaku Gothic New;
    letter-spacing: 2.88px;
    color: #4C639E;
    margin-bottom: 60px;
  }
  .newhome-page .difference h2 {
    font: normal normal bold 36px/52px Zen Kaku Gothic New;
    letter-spacing: 2.88px;
    margin-bottom: 0;
  }
  .newhome-page .faq {
    padding: 90px 0;
  }
  .newhome-page .case__point-list {
    width: 1015px;
    margin: 58px auto;
  }
  .newhome-page .case__point-item {
    gap: 70px;
  }
  .newhome-page .case__point-item + .case__point-item {
    margin-top: 60px;
  }
  .newhome-page .case__point-item--reverse img {
    order: -1;
  }
  .newhome-page .case__point-item--wide {
    display: block;
    text-align: center;
  }
  .newhome-page .case__point-item--wide p {
    justify-content: center;
  }
  .newhome-page .case__point-num {
    font: normal normal 500 50px/70px Poppins;
    letter-spacing: 1.5px;
    color: #4C639E;
  }
  .newhome-page .case__point-num p {
    font: normal normal 500 50px/70px Poppins;
    letter-spacing: 1.5px;
    color: #4C639E;
  }
  .newhome-page .case__point-num::before {
    font: normal normal 500 12px/17px Poppins;
    letter-spacing: 0.6px;
    color: #4C639E;
    top: 10px;
    position: relative;
  }
  .newhome-page .site-footer__contact-area {
    padding-top: 0 !important;
    padding-bottom: 65px;
    background: linear-gradient(to bottom, #E2E6EB 0, #E2E6EB 315px, #1f3661 315px, #1f3661 100%);
  }
  .newhome-page .reason__num {
    font: normal normal 500 50px/70px Poppins;
    letter-spacing: 1.5px;
    color: #4C639E;
  }
  .newhome-page .reason__num::before {
    font: normal normal 500 12px/17px Poppins;
    letter-spacing: 0.6px;
    color: #4C639E;
    top: 10px;
    position: relative;
  }
  .newhome-page .case__point-item h4 {
    margin: 10px 0 20px;
    font: normal normal 500 26px/44px Zen Kaku Gothic New;
    letter-spacing: 1.3px;
    color: #1F3661;
  }
  .newhome-page .reason__item h3 {
    margin: 10px 0 20px;
    font: normal normal 500 26px/44px Zen Kaku Gothic New;
    letter-spacing: 1.3px;
    color: #1F3661;
  }
  .newhome-page .case__point-item img {
    width: 480px;
    height: 320px;
    border-radius: 20px;
  }
  .newhome-page .case__housing {
    grid-template-columns: repeat(2, 1fr);
    gap: 45px;
    margin-top: 30px;
  }
  .newhome-page .case__housing div {
    position: relative;
  }
  .newhome-page .case__housing h5 {
    padding: 8px 18px;
    font-size: 16px;
    border-radius: 5px;
    height: 49px;
    font: normal normal 500 24px/30px Zen Kaku Gothic New;
    letter-spacing: 0.72px;
    color: #FFFFFF;
    position: absolute;
    top: 295px;
    left: 0;
  }
  .newhome-page .case__housing p {
    margin-top: 44px;
  }
  .newhome-page .soudan {
    padding: 125px 0 150px;
  }
  .newhome-page .soudan__lead {
    width: 970px;
    margin: 50px auto 0;
    text-align: center;
  }
  .newhome-page .soudan__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 66px 50px;
    margin-top: 50px;
  }
  .newhome-page .soudan__card img {
    width: 340px;
    height: 227px;
    border-radius: 16px;
  }
  .newhome-page .soudan__card h3 {
    margin-top: -28px;
    font: normal normal 500 22px/30px Zen Kaku Gothic New;
    letter-spacing: 0.66px;
    color: #1F3661;
    display: flex;
    align-items: end;
  }
  .newhome-page .soudan__card p {
    margin: 22px 0 0 24px;
    font: normal normal normal 16px/26px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
  }
  .newhome-page .reason {
    padding: 118px 0 105px;
  }
  .newhome-page .reason__list {
    margin-top: 62px;
  }
  .newhome-page .reason__item {
    grid-template-columns: 465px 1fr;
    gap: 70px;
  }
  .newhome-page .reason__item p {
    width: 465px;
  }
  .newhome-page .reason__item + .reason__item {
    margin-top: 60px;
  }
  .newhome-page .reason__item img {
    width: 480px;
    height: 320px;
  }
  .newhome-page .difference {
    padding: 118px 0 60px;
    position: relative;
  }
  .newhome-page .difference::before {
    content: "";
    display: block;
    width: 100%;
    height: 17px;
    background: url(../images/page01/page20/PC/nami03_pc.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 0px;
    left: 0;
  }
  .newhome-page .difference__lead {
    width: 795px;
    margin: 40px auto 0;
    font: normal normal normal 16px/30px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
  }
  .newhome-page .difference__table-wrap {
    width: 100%;
    max-width: 1075px;
    margin: 50px auto 0;
    overflow-x: visible;
  }
  .newhome-page .difference__table {
    table-layout: fixed;
  }
  .newhome-page .difference__table th {
    height: 70px;
    padding: 12px 10px;
    font: normal normal 500 17px/23px Zen Kaku Gothic New;
    letter-spacing: 0.85px;
    color: #1F3661;
  }
  .newhome-page .difference__table td {
    height: 64px;
    padding: 12px 10px;
    font: normal normal bold 40px/35px Zen Kaku Gothic New;
    letter-spacing: 2px;
    color: #1F3661;
  }
  .newhome-page .difference__table thead th:first-child {
    width: 365px;
  }
  .newhome-page .difference__table tbody th {
    width: 365px;
    padding-left: 30px;
    font: normal normal 500 17px/35px Zen Kaku Gothic New;
    letter-spacing: 0.85px;
  }
  .newhome-page .difference__button {
    width: 418px;
    height: 64px;
    margin-top: 50px;
    font: normal normal 500 16px/24px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    padding-left: 140px;
    transition: all 0.4s ease;
  }
  .newhome-page .difference__button:hover {
    cursor: pointer;
    background-color: #fff;
    color: #1F3661;
  }
  .newhome-page .difference__button::after {
    content: "→";
    margin-left: 20px;
    font-weight: 400;
  }
  .newhome-page .contact-lead {
    padding-bottom: 90px;
  }
  .newhome-page .contact-lead .inner {
    width: -moz-min-content;
    width: min-content;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 1;
  }
  .newhome-page .contact-lead h2 {
    display: inline-block;
    margin-bottom: 30px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 36px;
    font-weight: bold;
    line-height: 46px;
    letter-spacing: 2.88px;
    color: #f49517;
    white-space: nowrap;
    position: relative;
  }
  .newhome-page .contact-lead h2::before {
    content: "";
    display: block;
    width: 50.1px;
    height: 52.4px;
    background-image: url(/wp-content/themes/cf_theme/images/page02/page60/contact_burst.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -26.2px;
    left: -56px;
  }
  .newhome-page .contact-lead p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.88;
    letter-spacing: 0.48px;
    color: #1f3661;
    white-space: nowrap;
    text-align: center;
  }
  .newhome-page .contact-lead .inner::after {
    content: "";
    display: block;
    width: 250px;
    height: 250px;
    background-image: url(/wp-content/themes/cf_theme/images/page02/page60/contact_circle.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -48px;
    right: -89px;
    z-index: -1;
    transform-origin: center;
    animation: page65-contact-circle-rotate 20s linear infinite;
    will-change: transform;
  }
  .newhome-page .top {
    margin-top: 150px;
    padding-bottom: 90px;
  }
  .newhome-page .top__inner {
    width: 1280px;
  }
  .newhome-page .top__text {
    width: 620px;
    margin-left: 420px;
  }
  .newhome-page .top__copy {
    margin-bottom: 40px;
  }
  .newhome-page .top__copy > span {
    font-size: 30px;
    line-height: 44px;
  }
  .newhome-page .top__contents p {
    font-size: 16px;
    line-height: 30px;
  }
  .newhome-page .top__img {
    width: 1280px;
    height: 410px;
    margin: -410px auto 0;
    z-index: -1;
  }
  .newhome-page .top__img img {
    border-radius: 30px;
  }
  .newhome-page .top__img .img01 {
    width: 310px;
    height: 299px;
    top: 0;
    left: -80px;
  }
  .newhome-page .top__img .img02 {
    width: 220px;
    height: 165px;
    bottom: 0;
    left: 118px;
    border: 6px solid #FFFFFF;
  }
  .newhome-page .top__img .img03 {
    width: 220px;
    height: 165px;
    top: 110px;
    right: -40px;
  }
}
@media only screen and (max-width: 1024px) {
  .newhome-page .pc {
    display: none;
  }
  .newhome-page .section-label {
    text-align: center;
    font: normal normal 500 13px/13px Poppins;
    letter-spacing: 0.91px;
    color: #4C639E;
  }
  .newhome-page .section-label::before, .newhome-page .section-label::after {
    content: "";
    display: block;
    width: 12.5px;
    height: 12.5px;
    background: url(../images/page01/page80/PC/star.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  .newhome-page .section-label::before {
    left: -15px;
  }
  .newhome-page .section-label::after {
    right: -15px;
  }
  .newhome-page .case__inner {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
  }
  .newhome-page .soudan__inner {
    width: 360px;
  }
  .newhome-page .reason__inner {
    width: 342px;
  }
  .newhome-page .difference__inner {
    width: 375px;
  }
  .newhome-page .faq__inner {
    width: 342px;
  }
  .newhome-page .case {
    padding: 60px 0 55px;
  }
  .newhome-page .case::before {
    content: "";
    display: block;
    width: 100%;
    height: 9px;
    background: url(../images/page01/page20/SMP/nami02_smp.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 0px;
    left: 0;
  }
  .newhome-page .case__copy {
    font-size: 18px;
    line-height: 28px;
    justify-content: center;
    display: flex;
  }
  .newhome-page .case__copy::before,
  .newhome-page .case__copy::after {
    width: 27.5px;
    height: 32.5px;
    top: 15px;
  }
  .newhome-page .case__copy::after {
    left: -13.5px;
  }
  .newhome-page .case__copy::after {
    left: 13.5px;
  }
  .newhome-page .case__exp {
    margin-top: 20px;
  }
  .newhome-page .case__exp p {
    width: 340px;
    margin: 0 auto;
    font-size: 12px;
    line-height: 22px;
    font: normal normal normal 15px/27.5px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #1F3661;
  }
  .newhome-page .soudan__lead {
    font-size: 12px;
    line-height: 22px;
  }
  .newhome-page .difference__lead {
    font-size: 12px;
    line-height: 22px;
  }
  .newhome-page .case__tab-section {
    margin: 45px 0 auto;
    width: 100%;
    max-width: 400px;
    border-radius: 0;
  }
  .newhome-page .case__tabs {
    gap: 5px;
  }
  .newhome-page .case__tab {
    min-height: 48px;
    gap: 5px;
    padding: 11px 5px;
    font-size: clamp(14px, 3.75vw, 15px);
    line-height: 1.23;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-align: left;
  }
  .newhome-page .case__tab img {
    width: 17.5px;
    height: 17.5px;
  }
  .newhome-page .case__panel {
    gap: 25px;
    width: 340px;
    margin: 0 auto;
    padding-top: 45px;
  }
  .newhome-page .case__panel h3 {
    margin-bottom: 18px;
    font-size: 17px;
    line-height: 30px;
  }
  .newhome-page .case__panel h3 span {
    display: inline-block;
    font: normal normal 500 18px/30px Zen Kaku Gothic New;
    letter-spacing: 0.9px;
    color: #1F3661;
    padding-bottom: 4px;
    border-bottom: dashed 1px;
  }
  .newhome-page .case__panel h3 span:first-child {
    margin-bottom: 4px;
  }
  .newhome-page .case__panel p {
    font: normal normal normal 15px/27.5px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #1F3661;
  }
  .newhome-page .faq__item dd {
    font-size: 12px;
    line-height: 22px;
  }
  .newhome-page .faq__reform p {
    font-size: 12px;
    line-height: 22px;
  }
  .newhome-page .case__panel-img {
    width: 270px;
    height: 180px;
    margin: 0 auto;
  }
  .newhome-page .case__panel-img img {
    width: 270px;
    height: 180px;
  }
  .newhome-page .case__recommend {
    width: 100%;
    max-width: 400px;
    margin: 92px auto 0;
    padding: 0 4px 40px;
    border-radius: 8px;
    overflow: visible;
  }
  .newhome-page .case__recommend::before {
    content: "";
    display: block;
    width: 285px;
    height: 145px;
    background: url(../images/page01/page20/SMP/circle_smp.png) no-repeat;
    background-size: contain;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -47px;
    z-index: 0;
  }
  .newhome-page .case__recommend h3 {
    position: relative;
    z-index: 1;
    margin-bottom: 25px;
    padding-top: 5px;
    font: normal normal bold 18px/30px Zen Kaku Gothic New;
    letter-spacing: 0.9px;
  }
  .newhome-page .case__recommend ul {
    grid-template-columns: 1fr;
    gap: 15px;
    width: 255px;
    margin: 0 auto 45px;
  }
  .newhome-page .case__recommend ul:before {
    width: 34px;
    height: 22px;
    bottom: -39px;
  }
  .newhome-page .case__recommend li {
    display: grid;
    grid-template-columns: 13px 1fr;
    gap: 5px;
    align-items: start;
    text-align: left;
    font: normal normal 500 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
  }
  .newhome-page .case__recommend li::before {
    width: 13px;
    height: 13px;
    margin: 7px 0 0;
  }
  .newhome-page .case__recommend p {
    gap: 4px;
    margin-top: 0;
  }
  .newhome-page .case__recommend p span {
    padding: 0px 5px;
    font: normal normal bold clamp(17px, 4.8vw, 18px)/30px Zen Kaku Gothic New;
    letter-spacing: 0.9px;
    color: #1F3661;
    white-space: nowrap;
  }
  .newhome-page .case__point {
    width: 360px;
    margin: 0 auto;
    padding: 45px 0;
    text-align: left;
  }
  .newhome-page .case__point .section-label {
    display: block;
    width: fit-content;
    margin: 0 auto 5px;
    font: normal normal 500 14px/24px Poppins;
    letter-spacing: 0.98px;
    color: #4C639E;
    margin-bottom: 5px;
    text-align: center;
    position: relative;
  }
  .newhome-page .case__point .section-label::before,
  .newhome-page .case__point .section-label::after {
    content: "";
    display: block;
    width: 12.5px;
    height: 12.5px;
    background: url(../images/page01/page80/PC/star.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  .newhome-page .case__point .section-label::before {
    left: -12.5px;
  }
  .newhome-page .case__point .section-label::after {
    right: -12.5px;
  }
  .newhome-page .case__point h3 {
    text-align: center;
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #4C639E;
  }
  .newhome-page .soudan h2 {
    font-size: 19px;
    line-height: 30px;
    gap: 14px;
  }
  .newhome-page .reason h2 {
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #4C639E;
    margin-top: 5px;
  }
  .newhome-page .difference h2 {
    font-size: 19px;
    line-height: 30px;
  }
  .newhome-page .case__point-list {
    width: 325px;
    margin: 30px auto 0;
  }
  .newhome-page .case__point-item {
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: stretch;
  }
  .newhome-page .case__point-item + .case__point-item {
    margin-top: 30px;
  }
  .newhome-page .case__point-num {
    gap: 6px;
    font: normal normal 500 30px/43px Poppins;
    letter-spacing: 0.9px;
    color: #4C639E;
  }
  .newhome-page .case__point-num::before {
    padding-bottom: 0;
    font: normal normal 500 10px/14px Poppins;
    letter-spacing: 0.5px;
    top: 4px;
    position: relative;
  }
  .newhome-page .reason__num {
    font: normal normal 500 30px/35px Poppins;
    letter-spacing: 0.9px;
    color: #4C639E;
  }
  .newhome-page .reason__num::before {
    font: normal normal 500 10px/14px Poppins;
    letter-spacing: 0.5px;
    color: #4C639E;
    padding-bottom: 1px;
    top: 6px;
    position: relative;
  }
  .newhome-page .case__point-item h4 {
    margin: 10px 0 15px;
    font: normal normal 500 18px/30px Zen Kaku Gothic New;
    letter-spacing: 0.9px;
    color: #1F3661;
  }
  .newhome-page .case__point-item h4 span {
    background: linear-gradient(transparent calc(100% - 8px), rgba(237, 219, 6, 0.39) 0);
  }
  .newhome-page .case__point-item p:not(.case__point-num) {
    font: normal normal normal 15px/27.5px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #1F3661;
  }
  .newhome-page .reason__item h3 {
    margin: 10px 0 16px;
    font: normal normal 500 18px/30px Zen Kaku Gothic New;
    letter-spacing: 0.9px;
    color: #1F3661;
  }
  .newhome-page .case__point-item img {
    width: 265px;
    height: 178px;
    border-radius: 10px;
  }
  .newhome-page .case__housing {
    gap: 28px;
    margin-top: 20px;
  }
  .newhome-page .case__housing > div {
    position: relative;
  }
  .newhome-page .case__housing h5 {
    padding: 2px 10px;
    font-size: 16px;
    font-weight: 500;
    position: absolute;
    top: 161px;
    left: 0px;
    border-radius: 2.5px;
  }
  .newhome-page .case__housing p {
    margin-top: 24px;
  }
  .newhome-page .site-footer__contact-area.page01 {
    padding: 0 0 45px;
    background: linear-gradient(to bottom, #E2E6EB 0, #E2E6EB 200px, #1f3661 200px, #1f3661 100%);
  }
  .newhome-page .site-footer__contact-area.page01::before {
    content: "";
    display: block;
    width: 100%;
    height: 9px;
    background: url(../images/top/nami01_smp.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: -9px;
    left: 0;
  }
  .newhome-page .soudan {
    padding: 64px 0;
  }
  .newhome-page .soudan__heading-text::before, .newhome-page .soudan__heading-text::after {
    content: "";
    display: inline-block;
    width: 27.5px;
    height: 32.5px;
    margin: 0;
    vertical-align: middle;
    position: absolute;
    top: 16px;
  }
  .newhome-page .soudan__heading-text::before {
    background: url(../images/page01/page20/PC/fukidashi_left.png) center/contain no-repeat;
    left: -39px;
  }
  .newhome-page .soudan__heading-text::after {
    background: url(../images/page01/page20/PC/fukidashi_right.png) center/contain no-repeat;
    right: -39px;
  }
  .newhome-page .soudan h2 .soudan__heading-sub {
    line-height: 24px;
  }
  .newhome-page .soudan__lead {
    width: 323px;
    margin: 30px auto 0;
    font: normal normal normal 15px/27.5px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #1F3661;
  }
  .newhome-page .soudan__list {
    width: 360px;
    margin: 0 auto;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px 14px;
    margin-top: 30px;
  }
  .newhome-page .soudan__card img {
    width: 170px;
    height: 113px;
    border-radius: 10px;
  }
  .newhome-page .soudan__card h3 {
    font: normal normal 500 16px/23px Zen Kaku Gothic New;
    letter-spacing: 0.8px;
    margin-top: 0px;
  }
  .newhome-page .soudan__card h3::before {
    width: 7.5px;
    height: 42px;
    margin-right: 10px;
    margin-left: 12px;
    bottom: 10px;
  }
  .newhome-page .soudan__card p {
    margin-top: 0px;
    font: normal normal normal 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    padding-left: 10px;
  }
  .newhome-page .reason {
    padding: 45px 0;
  }
  .newhome-page .reason::before {
    content: "";
    display: block;
    width: 100%;
    height: 30px;
    background: url(../images/page01/page20/SMP/nami_reason.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -30px;
    left: 0;
  }
  .newhome-page .reason__list {
    margin-top: 30px;
  }
  .newhome-page .reason__item {
    width: 323px;
    margin: 0 auto;
    gap: 20px;
  }
  .newhome-page .reason__item + .reason__item {
    margin-top: 31px;
  }
  .newhome-page .reason__item .text {
    width: 323px;
    margin: 0 auto;
    font: normal normal normal 15px/27.5px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #1F3661;
  }
  .newhome-page .reason__item img {
    width: 280px;
    height: 188px;
    border-radius: 0;
    margin: 0 auto;
  }
  .newhome-page .difference {
    padding: 45px 0;
  }
  .newhome-page .difference::before {
    content: "";
    display: block;
    width: 100%;
    height: 9px;
    background: url(../images/page01/page20/SMP/nami03_smp.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 0px;
    left: 0;
  }
  .newhome-page .difference__lead {
    margin: 30px auto 0;
    width: 343px;
    text-align: left;
    font: normal normal normal 15px/27.5px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
  }
  .newhome-page .difference__table-wrap {
    display: flex;
    width: 390px;
    margin: 30px 0 0 17.5px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .newhome-page .difference__table-wrap::after {
    content: "";
    display: block;
    flex: 0 0 20px;
  }
  .newhome-page .difference__table-wrap::-webkit-scrollbar {
    display: none;
  }
  .newhome-page .difference__table {
    flex: 0 0 auto;
    min-width: 590px;
  }
  .newhome-page .difference__table th {
    width: 80px;
    height: 35px;
    text-align: center;
    font: normal normal 500 13.5px/17.5px Zen Kaku Gothic New;
    letter-spacing: 0.68px;
    color: #1F3661;
  }
  .newhome-page .difference__table th:first-child {
    width: 183px;
    padding: 6px 0 9px 15px;
  }
  .newhome-page .difference__table td {
    width: 80px;
    height: 35px;
    font: normal normal bold 20px/17.5px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #1F3661;
  }
  .newhome-page .difference__scrollbar {
    display: block;
    position: relative;
    width: 300px;
    height: 7.5px;
    margin: 20px 0 0 40px;
    border: 1px solid #fff;
    border-radius: 999px;
    background: #DCE4EE;
  }
  .newhome-page .difference__scrollbar-thumb {
    display: block;
    position: absolute;
    top: 1px;
    left: 1px;
    width: 61%;
    height: 4.5px;
    border-radius: 999px;
    background: #1F3661;
    transition: width 0.2s ease;
  }
  .newhome-page .difference__button {
    width: 300px;
    height: 55px;
    margin-top: 28px;
    font: normal normal 500 15px/15px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    padding-left: 75px;
  }
  .newhome-page .faq {
    padding: 45px 0;
  }
  .newhome-page .contact-lead {
    width: 360px;
    margin: 0 auto 0;
    padding-bottom: 45px;
    position: relative;
  }
  .newhome-page .contact-lead .inner {
    text-align: center;
    position: relative;
    z-index: 1;
  }
  .newhome-page .contact-lead h2 {
    display: inline-block;
    margin-bottom: 17.5px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 18px;
    font-weight: bold;
    line-height: 23px;
    letter-spacing: 1.44px;
    color: #f49517;
    white-space: nowrap;
    position: relative;
  }
  .newhome-page .contact-lead h2::before {
    content: "";
    display: block;
    width: 25.1px;
    height: 26.2px;
    background-image: url(/wp-content/themes/cf_theme/images/page02/page60/contact_burst.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -13.1px;
    left: -28px;
  }
  .newhome-page .contact-lead p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 14px;
    font-weight: normal;
    line-height: 22.5px;
    letter-spacing: 0.42px;
    color: #1f3661;
    text-align: center;
  }
  .newhome-page .contact-lead .inner::after {
    content: "";
    display: block;
    width: 125px;
    height: 125px;
    background-image: url(/wp-content/themes/cf_theme/images/page02/page60/contact_circle.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -24px;
    right: -13px;
    z-index: -1;
    transform-origin: center;
    animation: page65-contact-circle-rotate 20s linear infinite;
    will-change: transform;
  }
  .newhome-page .top {
    margin-top: 146px;
    padding-bottom: 45px;
  }
  .newhome-page .top__inner {
    width: 342px;
  }
  .newhome-page .top__text {
    width: 342px;
    margin: 0 auto;
  }
  .newhome-page .top__copy {
    margin-bottom: 20px;
    line-height: 1;
  }
  .newhome-page .top__copy > span {
    font-size: 18px;
    line-height: 30px;
  }
  .newhome-page .top__contents p {
    font-size: 15px;
    line-height: 27.5px;
  }
  .newhome-page .top__img {
    width: 100%;
    height: 278px;
    margin: 30px auto 0;
    z-index: -1;
  }
  .newhome-page .top__img img {
    border-radius: 15px;
  }
  .newhome-page .top__img .img01 {
    width: 205px;
    height: 198px;
    top: 0;
    left: -24px;
  }
  .newhome-page .top__img .img02 {
    width: 175px;
    height: 132px;
    bottom: 0;
    left: 118px;
    border: 3px solid #FFFFFF;
  }
  .newhome-page .top__img .img03 {
    width: 140px;
    height: 105px;
    top: 15px;
    right: -20px;
  }
}

.about-page {
  color: #1F3661;
}
.about-page * {
  box-sizing: border-box;
}
.about-page h2, .about-page h3 {
  line-height: unset;
}
.about-page .section-label {
  display: inline-block;
  font: normal normal 500 14px/24px Poppins;
  letter-spacing: 0.98px;
  color: #4C639E;
  margin-bottom: 5px;
  text-align: center;
  position: relative;
}
.about-page .section-label::before,
.about-page .section-label::after {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: url(../images/page01/page80/PC/star.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.about-page .section-label::before {
  left: -25px;
}
.about-page .section-label::after {
  right: -25px;
}
.about-page img {
  display: block;
  object-fit: cover;
}
.about-page .shop h2 {
  text-align: center;
  font: normal normal bold 36px/52px Zen Kaku Gothic New;
  letter-spacing: 2.88px;
  color: #FFFFFF;
}
.about-page .message .section-label {
  margin-top: 40px;
  font: normal normal 500 14px/24px Poppins;
  letter-spacing: 0.98px;
  color: #4C639E;
  text-align: left;
  margin-left: 25px;
}
.about-page .message h2 {
  font: normal normal bold 36px/46px Zen Kaku Gothic New;
  letter-spacing: 2.88px;
  color: #364D78;
}
.about-page .company h2 {
  font: normal normal bold 36px/46px Zen Kaku Gothic New;
  letter-spacing: 2.88px;
  color: #364D78;
}
.about-page .history h2 {
  font: normal normal bold 36px/46px Zen Kaku Gothic New;
  letter-spacing: 2.88px;
  color: #364D78;
}
.about-page .shop dd {
  font: normal normal normal 16px/30px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #364D78;
}
.about-page .shop__notice p {
  font: normal normal normal 16px/26px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #1F3661;
  margin-top: 15px;
}
.about-page .message p {
  font: normal normal normal 16px/30px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #364D78;
}
.about-page .company dd {
  font: normal normal normal 16px/30px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #1F3661;
}
.about-page .history dd {
  display: flex;
  align-items: center;
  font: normal normal normal 16px/30px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #1F3661;
}
.about-page .shop__notice h3 {
  font: normal normal 500 17px/25px Zen Kaku Gothic New;
  letter-spacing: 0.51px;
  color: #1F3661;
  display: inline-block;
  padding-bottom: 5px;
  border-bottom: dashed 1px;
  margin-left: 35px;
  position: relative;
}
.about-page .shop__notice h3::before {
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  background: url(../images/page01/page80/PC/light_blue.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 40%;
  transform: translateY(-50%);
  left: -35px;
}
.about-page .message h3 {
  font: normal normal 500 24px/39px Zen Kaku Gothic New;
  letter-spacing: 1.2px;
  color: #1F3661;
}
.about-page .feel {
  background: #E2E6EB;
}
.about-page .feel h2 {
  width: 100%;
  margin: 0;
  color: #fff;
}
.about-page .feel p {
  font: normal normal normal 16px/30px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #364D78;
}
.about-page .feel h3 {
  font: normal normal 500 22px/30px Zen Kaku Gothic New;
  letter-spacing: 0.66px;
  color: #1F3661;
}
.about-page .feel__visual {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  background-image: url("../images/page01/page80/PC/karigazou_2000x1000.jpg");
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  will-change: background-position;
}
.about-page .feel__visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #142646;
  opacity: 0.7;
}
.about-page .feel__inner {
  position: relative;
  z-index: 1;
}
.about-page .feel__visual h2 span {
  display: inline-block;
  margin: 0 0 3px;
  padding: 0 20px;
  border-radius: 5px;
  background: #fff;
  font: normal normal 500 28px/50px Zen Kaku Gothic New;
  letter-spacing: 0.84px;
  color: #1F3661;
  height: 54px;
}
.about-page .feel__cards {
  display: grid;
  margin: 0 auto;
}
.about-page .feel__cards article {
  text-align: left;
}
.about-page .feel__cards h3 {
  text-align: center;
}
.about-page .feel__cards p {
  text-align: left;
}
.about-page .feel__cards img {
  display: block;
  width: 100%;
  object-fit: cover;
}
.about-page .feel__note {
  margin: 0 auto;
  border-radius: 10px;
  background: #364D78;
  color: #fff;
}
.about-page .feel__note-heading {
  display: inline-block;
  border-bottom: 1px dashed rgba(255, 255, 255, 0.72);
  color: #fff;
  margin-left: 35px;
  position: relative;
}
.about-page .feel__note-heading span {
  white-space: nowrap;
}
.about-page .feel__note-heading::before {
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  background: url(../images/page01/page80/PC/light.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 40%;
  transform: translateY(-50%);
  left: -35px;
}
.about-page .feel__note-heading img {
  flex: 0 0 auto;
  object-fit: contain;
}
.about-page .feel__note-heading span {
  font-weight: 700;
}
.about-page .feel__note p {
  margin: 0;
  color: #fff;
}
.about-page .flow {
  background: #fff;
  text-align: center;
  position: relative;
}
.about-page .flow::before {
  content: "";
  display: block;
  width: 100%;
  height: 17px;
  background: url(../images/page01/page80/PC/nami01_pc.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0px;
  left: 0;
}
.about-page .flow__inner {
  margin: 0 auto;
}
.about-page .shop__inner {
  margin: 0 auto;
}
.about-page .company__inner {
  margin: 0 auto;
}
.about-page .history__inner {
  margin: 0 auto;
}
.about-page .flow__list {
  display: grid;
  padding: 0;
  list-style: none;
}
.about-page .flow__list li {
  position: relative;
  font: normal normal bold 16px/24px Zen Kaku Gothic New;
  letter-spacing: 0.8px;
  color: #364D78;
}
.about-page .flow__list li::before {
  content: "";
  display: block;
  width: 72px;
  height: 72px;
  margin: 0 auto 18px;
  border-radius: 50%;
  background: #526DAA;
}
.about-page .flow__list span {
  display: flex;
}
.about-page .flow a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin: 0 auto;
  border: 2px solid #364D78;
  border-radius: 100px;
  font: normal normal 500 15px/24px Zen Kaku Gothic New;
  letter-spacing: 0.75px;
  color: #364D78;
}
.about-page .flow a::after {
  content: "";
  width: 16px;
  height: 10px;
  margin-left: 20px;
  background-color: currentColor;
  mask: url(../images/top/plan/PC/right_blue.png) center/contain no-repeat;
  -webkit-mask: url(../images/top/plan/PC/right_blue.png) center/contain no-repeat;
  transition: background-color 0.4s ease;
}
.about-page .shop {
  position: relative;
  background: #364D78;
  color: #fff;
}
.about-page .shop::before {
  content: "";
  display: block;
  width: 100%;
  height: 85px;
  background: url(../images/page01/page80/PC/nami02_pc.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: -84px;
  left: 0;
}
.about-page .shop .section-label {
  color: #fff;
  margin: 0 auto;
  display: block;
  width: 120px;
}
.about-page .shop h2 {
  color: #fff;
}
.about-page .shop dt {
  color: #fff;
}
.about-page .shop dd {
  color: #fff;
}
.about-page .shop__content {
  display: grid;
  align-items: center;
}
.about-page .shop dl {
  margin: 0;
}
.about-page .company dl {
  margin: 0;
}
.about-page .history dl {
  margin: 0;
}
.about-page .shop dl {
  display: grid;
}
.about-page .company dl {
  display: grid;
}
.about-page .shop dt {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #E8EEF4;
  border-radius: 100px;
  font: normal normal bold 15px/22px Zen Kaku Gothic New;
  letter-spacing: 0.75px;
  color: #364D78;
}
.about-page .shop dd {
  margin: 0;
}
.about-page .company dd {
  margin: 0;
}
.about-page .history dd {
  margin: 0;
}
.about-page .shop__content img {
  width: 100%;
  border-radius: 22px;
}
.about-page .message__inner img {
  width: 100%;
  border-radius: 22px;
}
.about-page .shop__map {
  display: block;
  width: 100%;
  border: 0;
}
.about-page .shop__notice {
  background: #E2E6EB;
  border-radius: 6px;
}
.about-page .shop__notice a {
  display: inline-flex;
  margin-top: 15px;
  font: normal normal 500 16px/24px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #1F3661;
  margin-left: 45px;
  position: relative;
  text-decoration: underline;
  text-decoration-color: transparent;
  transition: all 0.3s ease;
}
.about-page .shop__notice a::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background: url(../images/page01/page80/PC/arrow_orange.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -45px;
  transition: all 0.3s ease;
}
.about-page .message {
  background: url("../images/page01/page80/PC/haikei_pc.png") no-repeat;
  background-size: cover;
  position: relative;
}
.about-page .message::before {
  content: "";
  display: block;
  width: 100%;
  height: 17px;
  background: url(../images/page01/page80/PC/nami03_pc.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.about-page .message__inner {
  display: grid;
  margin: 0 auto;
}
.about-page .message__name {
  margin-top: 30px;
  text-align: right;
}
.about-page .message__name strong {
  font: normal normal bold 18px/30px Zen Kaku Gothic New;
  letter-spacing: 0.54px;
  color: #1F3661;
}
.about-page .company {
  background: #fff;
}
.about-page .company__inner {
  text-align: center;
}
.about-page .company dl {
  text-align: left;
}
.about-page .company dt {
  font: normal normal 500 20px/38px Zen Kaku Gothic New;
  letter-spacing: 1px;
  color: #1F3661;
}
.about-page .company dd {
  border-bottom: 1px dashed rgba(54, 77, 120, 0.5);
}
.about-page .history {
  background: #f7f7f7;
}
.about-page .history__inner {
  text-align: center;
}
.about-page .history dl {
  display: grid;
  text-align: left;
}
.about-page .history dt {
  display: flex;
  align-items: center;
  height: 52px;
  position: relative;
}
.about-page .history dt::before {
  box-sizing: border-box;
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  border: 4px solid #4C639E;
  background-color: #f7f7f7;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 130px;
  z-index: 1;
}
.about-page .history dt::after {
  box-sizing: border-box;
  content: "";
  display: block;
  width: 2px;
  height: 94px;
  border: 2px solid #E2E6EB;
  position: absolute;
  top: 22px;
  left: 135.5px;
  z-index: 0;
}
.about-page .history dt:nth-child(13)::after {
  display: none;
}
.about-page .history dt .year {
  display: inline-block;
  width: 98px;
  font: normal normal 600 37px/40px Poppins;
  letter-spacing: 1.48px;
  color: #4C639E;
  margin-right: 81px;
}
.about-page .history dt .month {
  display: inline-block;
  width: 45px;
  font: normal normal bold 20px/30px Zen Kaku Gothic New;
  letter-spacing: 2px;
  color: #4C639E;
}
.about-page .flow__step,
.about-page .flow__text {
  display: block;
}
.about-page .flow__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  border-radius: 50%;
  background: #526DAA;
}
.about-page .flow__icon img {
  display: block;
  object-fit: contain;
}
.about-page .shop__table {
  width: 100%;
  border-collapse: collapse;
}
.about-page .shop__table th,
.about-page .shop__table td {
  border-bottom: 1px dashed rgba(255, 255, 255, 0.9);
  vertical-align: middle;
}
.about-page .shop__table th a,
.about-page .shop__table td a {
  font: normal normal normal 16px/26px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #FFFFFF;
}
.about-page .shop__table th {
  padding: 0;
  font-weight: inherit;
  text-align: left;
}
.about-page .shop__table th span {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #E8EEF4;
  color: #364D78;
}
.about-page .shop__table td span {
  display: block;
  color: #fff;
  text-align: left;
  font: normal normal normal 16px/26px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #FFFFFF;
}
.about-page .top {
  color: #1F3661;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}
.about-page .top *,
.about-page .top *::before,
.about-page .top *::after {
  box-sizing: border-box;
}
.about-page .top__inner {
  margin: 0 auto;
}
.about-page .top__copy {
  margin: 0;
}
.about-page .top__copy > span {
  font: normal normal 500 18px/30px Zen Kaku Gothic New;
  letter-spacing: 0.9px;
  color: #1F3661;
}
.about-page .top__copy::before {
  content: "";
  display: block;
  width: 60px;
  height: 8px;
  margin-bottom: 20px;
  position: relative;
  left: -5px;
  background: radial-gradient(circle, #F49517 0 4px, transparent 4px) 0 0/21px 8px repeat-x;
}
.about-page .top__contents p {
  margin: 0;
  font: normal normal normal 16px/30px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #1F3661;
}
@media only screen and (min-width: 1025px) {
  .about-page .top__copy > span {
    font: normal normal 500 26px/44px Zen Kaku Gothic New;
    letter-spacing: 1.3px;
    color: #1F3661;
  }
  .about-page .feel {
    padding-bottom: 90px;
  }
  .about-page .feel__visual {
    height: 515px;
    padding: 114px 0 0;
    background-attachment: scroll;
    background-position: center top;
  }
  .about-page .feel__inner {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    max-width: 1120px;
    margin: 0 auto;
  }
  .about-page .feel__inner p {
    width: 760px;
    font: normal normal 500 16px/30px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #FFFFFF;
  }
  .about-page .feel__cards {
    position: relative;
    z-index: 10;
    max-width: 1120px;
    grid-template-columns: repeat(3, 350px);
    gap: 35px;
    margin-top: -110px;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1279px) {
  .about-page .feel__cards {
    display: flex;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 1025px) {
  .about-page .feel__cards img {
    width: 350px;
    height: 233.45px;
    border-radius: 30px;
  }
  .about-page .feel__cards h3 {
    margin: 20px 0;
    font: normal normal 500 22px/30px Zen Kaku Gothic New;
    letter-spacing: 0.66px;
  }
  .about-page .feel__cards p {
    margin: 0;
    font: normal normal normal 16px/26px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
  }
  .about-page .feel__note {
    max-width: 1120px;
    margin-top: 58px;
    padding: 25px 33px 25px 31px;
  }
  .about-page .feel__note-heading {
    padding-bottom: 5px;
    font: normal normal 700 16px/24px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
  }
  .about-page .feel__note-heading img {
    width: 20px;
    height: 25px;
  }
  .about-page .feel__note p {
    margin-top: 10px;
    font: normal normal 400 16px/24px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
  }
  .about-page .flow {
    padding: 105px 0 170px;
  }
  .about-page .flow h2 {
    margin: 18px 0 0;
    font: normal normal bold 36px/56px Zen Kaku Gothic New;
    letter-spacing: 2.88px;
    color: #4C639E;
  }
  .about-page .flow__inner {
    max-width: 1120px;
  }
  .about-page .flow__list {
    grid-template-columns: repeat(5, 1fr);
    gap: 56px;
    margin: 50px 0;
  }
  .about-page .flow__list li {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    text-align: center;
    font: normal normal bold 20px/28px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #4C639E;
  }
  .about-page .flow__list li::before {
    content: none;
  }
  .about-page .flow__list li:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 85px;
    right: -43px;
    width: 0;
    height: 0;
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    border-left: 20px solid #1F3661;
  }
  .about-page .flow__step {
    order: 1;
    display: flex;
    align-items: baseline;
    justify-content: center;
    margin: 0 0 7px;
    font: normal normal 600 28px/39px Poppins;
    letter-spacing: 1.4px;
    color: #4C639E;
  }
  .about-page .flow__step span {
    display: inline;
    margin: 0 5px 0 0;
    font: normal normal 600 12px/25px Poppins;
    letter-spacing: 0.6px;
    color: #4C639E;
  }
  .about-page .flow__icon {
    order: 2;
    width: 100px;
    height: 100px;
    margin: 0 0 20px;
  }
  .about-page .flow__icon img {
    width: 50px;
    height: 50px;
  }
  .about-page .flow__text {
    order: 3;
    display: block;
    font: normal normal bold 20px/28px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #4C639E;
    white-space: nowrap;
  }
  .about-page .flow a {
    width: 380px;
    height: 65px;
    min-width: 0;
    border: 2px solid #1F3661;
    font: normal normal 500 16px/24px Zen Kaku Gothic New;
    letter-spacing: 0.8px;
    color: #1F3661;
    transition: all 0.4s ease;
  }
  .about-page .flow a:hover {
    cursor: pointer;
    background-color: #1F3661;
    color: #fff;
  }
  .about-page .flow a::after {
    content: "";
    width: 16px;
    height: 10px;
    margin-left: 20px;
    background-color: currentColor;
    top: 1px;
    position: relative;
    mask: url(../images/top/plan/PC/right_blue.png) center/contain no-repeat;
    -webkit-mask: url(../images/top/plan/PC/right_blue.png) center/contain no-repeat;
    transition: background-color 0.4s ease;
  }
  .about-page .shop__inner {
    max-width: 1080px;
  }
  .about-page .company__inner {
    width: 900px;
  }
  .about-page .history__inner {
    width: 1080px;
  }
  .about-page .shop {
    padding: 5px 0 105px;
  }
  .about-page .shop__content {
    grid-template-columns: 1fr 500px;
    gap: 70px;
    margin-top: 50px;
  }
  .about-page .shop dl {
    grid-template-columns: 150px 1fr;
    gap: 0 28px;
  }
  .about-page .company dl {
    grid-template-columns: 105px 1fr;
    gap: 0 48px;
  }
  .about-page .shop dt {
    min-height: 48px;
  }
  .about-page .shop dd {
    min-height: 48px;
  }
  .about-page .shop__content img {
    width: 500px;
    height: 334px;
  }
  .about-page .shop__map {
    height: 315px;
    margin-top: 54px;
  }
  .about-page .shop__notice {
    margin-top: 50px;
    padding: 22px 30px;
  }
  .about-page .shop__notice a:hover {
    cursor: pointer;
    text-decoration-color: inherit;
  }
  .about-page .shop__notice a:hover::before {
    content: "";
    display: block;
    width: 37.5px;
    height: 37.5px;
    background-color: #fff;
    background: url(../images/page01/page80/PC/arrow_orange_white.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -45px;
  }
  .about-page .message {
    padding: 110px 0;
  }
  .about-page .message__inner {
    max-width: 1280px;
    grid-template-columns: 470px 1fr;
    gap: 100px;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1279px) {
  .about-page .message__inner {
    gap: 10px;
  }
}
@media only screen and (min-width: 1025px) {
  .about-page .message__inner img {
    height: 520px;
  }
  .about-page .message h3 {
    margin: 40px 0 30px;
  }
  .about-page .message .text {
    width: 528px;
  }
  .about-page .message .text p {
    font: normal normal normal 16px/30px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
  }
  .about-page .company {
    padding: 95px 0 150px;
  }
  .about-page .company dl {
    margin-top: 56px;
  }
  .about-page .company dt {
    padding: 22px 0;
  }
  .about-page .company dd {
    padding: 28px 0;
  }
  .about-page .history {
    padding: 60px 0 80px;
    position: relative;
  }
  .about-page .history::before {
    content: "";
    display: block;
    width: 100%;
    height: 59px;
    background: url(../images/page01/page80/PC/nami04_pc.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -59px;
    left: 0;
  }
  .about-page .history dl {
    width: 780px;
    grid-template-columns: 230px 1fr;
    gap: 30px 35px;
    margin: 50px auto 0;
  }
  .about-page .shop dl {
    grid-template-columns: 202px 1fr;
    column-gap: 50px;
    row-gap: 0;
    align-items: center;
  }
  .about-page .shop dt,
  .about-page .shop dd {
    min-height: 102px;
    padding: 25px 0;
    border-bottom: 1px dashed rgba(255, 255, 255, 0.9);
  }
  .about-page .shop dt {
    justify-content: center;
    width: 202px;
    height: 52px;
    min-height: 0;
    padding: 0;
    border-bottom: 0;
    border-radius: 999px;
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #364D78;
  }
  .about-page .shop dd {
    display: flex;
    align-items: center;
    font: normal normal normal 18px/30px Zen Kaku Gothic New;
    letter-spacing: 0.54px;
    color: #fff;
  }
  .about-page .shop dt:not(:last-of-type) {
    margin-bottom: 50px;
  }
  .about-page .shop dd:not(:last-of-type) {
    margin-bottom: 0;
  }
  .about-page .shop dt {
    position: relative;
    z-index: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 202px;
    height: auto;
    min-height: 102px;
    padding: 25px 0;
    border-bottom: 1px dashed rgba(255, 255, 255, 0.9);
    background: transparent;
    overflow: visible;
  }
  .about-page .shop dt::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    top: 25px;
    width: 202px;
    height: 52px;
    border-radius: 999px;
    background: #E8EEF4;
  }
  .about-page .shop dt:not(:last-of-type) {
    margin-bottom: 0;
  }
  .about-page .shop dl {
    grid-template-columns: 202px 1fr;
    column-gap: 50px;
    row-gap: 0;
    align-items: stretch;
  }
  .about-page .shop dt,
  .about-page .shop dd {
    display: flex;
    align-items: center;
    min-height: 102px;
    margin: 0;
    padding: 0;
    border-bottom: 1px dashed rgba(255, 255, 255, 0.9);
    background: transparent;
    overflow: visible;
  }
  .about-page .shop dt {
    justify-content: flex-start;
    width: auto;
    height: auto;
    color: inherit;
  }
  .about-page .shop dt::before {
    content: none;
  }
  .about-page .shop dt span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 202px;
    height: 52px;
    border-radius: 999px;
    background: #E8EEF4;
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #364D78;
  }
  .about-page .shop dd span {
    display: block;
    font: normal normal normal 18px/30px Zen Kaku Gothic New;
    letter-spacing: 0.54px;
    color: #fff;
  }
  .about-page .shop dl {
    position: relative;
    grid-template-columns: 202px 1fr;
    column-gap: 50px;
    row-gap: 0;
    align-items: stretch;
    background-image: repeating-linear-gradient(to right, rgba(255, 255, 255, 0.9) 0 2px, transparent 2px 6px);
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    background-size: 100% 1px;
    background-position: 0 102px, 0 204px, 0 306px, 0 408px;
  }
  .about-page .shop dt,
  .about-page .shop dd {
    min-height: 102px;
    border-bottom: 0;
  }
  .about-page .shop dt::before,
  .about-page .shop dt::after,
  .about-page .shop dd::before,
  .about-page .shop dd::after {
    content: none;
  }
  .about-page .shop__table th,
  .about-page .shop__table td {
    height: 80px;
  }
  .about-page .shop__table th {
    width: 158px;
  }
  .about-page .shop__table th span {
    width: 158px;
    height: 40px;
    text-align: center;
    font: normal normal 500 18px/30px Zen Kaku Gothic New;
    letter-spacing: 1.44px;
    color: #364D78;
  }
  .about-page .shop__table td {
    padding-left: 40px;
  }
  .about-page .shop__table td span {
    text-align: left;
    font: normal normal normal 16px/26px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #FFFFFF;
  }
  .about-page .top {
    margin-top: 150px;
    padding-bottom: 90px;
  }
  .about-page .top__inner {
    max-width: 1260px;
    display: grid;
    grid-template-columns: 560px 1fr;
    column-gap: 110px;
    row-gap: 30px;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1279px) {
  .about-page .top__inner {
    column-gap: 20px;
  }
}
@media only screen and (min-width: 1025px) {
  .about-page .top__text {
    width: 446px;
    margin: 30px 0 0;
    grid-column: 2;
    grid-row: 1;
  }
  .about-page .top__copy {
    margin-bottom: 23px;
  }
  .about-page .top__img--top {
    grid-column: 1;
    grid-row: 1;
  }
  .about-page .top__img--top img {
    width: 560px;
    height: 420px;
    border-radius: 30px;
  }
  .about-page .top__img--bottom {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: repeat(4, 300px);
    gap: 20px;
  }
  .about-page .top__img--bottom img {
    width: 300px;
    height: 200.1px;
    border-radius: 30px;
  }
}
@media only screen and (max-width: 1024px) {
  .about-page .top__img--top {
    width: 310px;
    margin: 30px auto 0;
  }
  .about-page .top__img--top img {
    width: 310px;
    height: 233px;
    border-radius: 20px;
  }
  .about-page .top__img--bottom {
    width: 310px;
    margin: 10px auto 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
  .about-page .top__img--bottom img {
    width: 150px;
    height: 100px;
    border-radius: 15px;
  }
  .about-page .feel h2 {
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1.6px;
    color: #364D78;
  }
  .about-page .feel p {
    font: normal normal normal 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #FFFFFF;
  }
  .about-page .feel__visual {
    padding: 44px 24px;
    background-attachment: scroll;
    background-image: url("../images/page01/page80/SMP/karigazou_1000x964.jpg");
  }
  .about-page .feel__cards {
    width: 342px;
    gap: 38px;
    padding: 36px 0 0;
  }
  .about-page .feel__cards img {
    height: 190px;
    border-radius: 18px;
  }
  .about-page .feel__cards h3 {
    margin: 18px 0 10px;
    font: normal normal bold 18px/28px Zen Kaku Gothic New;
    letter-spacing: 1.44px;
  }
  .about-page .feel__note {
    width: 342px;
    margin-top: 34px;
    padding: 20px;
    font: normal normal bold 13px/24px Zen Kaku Gothic New;
  }
  .about-page .feel__note-heading {
    font: normal normal 500 15px/15px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #FFFFFF;
    margin-left: 17.5px;
    padding-bottom: 3px;
  }
  .about-page .feel__note-heading::before {
    width: 17.5px;
    height: 17.5px;
    top: 40%;
    transform: translateY(-50%);
    left: -20px;
  }
  .about-page .feel__note p {
    margin-top: 10px;
  }
  .about-page .feel {
    padding-bottom: 45px;
  }
  .about-page .feel__visual {
    min-height: 400px;
    padding: 45px 0 0;
    background-position: center top;
  }
  .about-page .feel__inner {
    width: 342px;
    margin: 0 auto;
  }
  .about-page .feel__visual h2 {
    color: #fff;
  }
  .about-page .feel__visual h2 span {
    padding: 3px 10px 4px 10px;
    border-radius: 2.5px;
    font: normal normal 500 18px/25px Zen Kaku Gothic New;
    letter-spacing: 0.54px;
    color: #1F3661;
    height: 33px;
  }
  .about-page .feel__inner p {
    width: 340px;
    margin: 31px auto 0;
    font: normal normal normal 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #FFFFFF;
  }
  .about-page .feel__cards {
    width: 280px;
    display: grid;
    gap: 30px;
    padding: 0;
    margin-top: -65px;
    position: relative;
    z-index: 10;
  }
  .about-page .feel__cards article {
    text-align: center;
  }
  .about-page .feel__cards img {
    width: 280px;
    height: 187px;
    border-radius: 15px;
  }
  .about-page .feel__cards h3 {
    margin: 12.5px 0;
    font: normal normal 500 16px/23px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
    text-align: center;
  }
  .about-page .feel__cards p {
    margin: 0;
    font: normal normal normal 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #1F3661;
    text-align: left;
  }
  .about-page .feel__note {
    width: 100%;
    max-width: 388px;
    margin: 30px auto 0;
    border-radius: 5px;
    padding: 20px;
  }
  .about-page .flow {
    padding: 45px 0 70px;
  }
  .about-page .flow::before {
    height: 9px;
    background: url(../images/page01/page80/SMP/nami01_smp.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 0px;
    left: 0;
  }
  .about-page .flow .section-label {
    margin-bottom: 4px;
  }
  .about-page .flow h2 {
    font: normal normal bold 24px/35px Zen Kaku Gothic New;
    letter-spacing: 1.92px;
    color: #4C639E;
  }
  .about-page .flow__inner {
    width: 342px;
  }
  .about-page .flow__list {
    width: 253px;
    display: grid;
    margin: 30px auto 0;
  }
  .about-page .flow__list li {
    display: grid;
    grid-template-columns: 60px 1fr;
    grid-template-rows: 27px 27px auto;
    column-gap: 25px;
    min-height: 90px;
    padding-left: 0;
    text-align: left;
    color: #4C639E;
  }
  .about-page .flow__list li::before {
    content: none;
  }
  .about-page .flow__list li:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 23px;
    top: 70px;
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 9px solid #1F3661;
  }
  .about-page .flow__icon {
    grid-column: 1;
    grid-row: 1/span 2;
    align-self: start;
    width: 60px;
    height: 60px;
    margin: 0;
    border-radius: 50%;
    background: #526DAA;
  }
  .about-page .flow__icon img {
    width: 35px;
    height: 35px;
  }
  .about-page .flow__step {
    grid-column: 2;
    grid-row: 1;
    display: block;
    align-self: end;
    margin: 0;
    font: normal normal 600 19px/28.5px Poppins;
    letter-spacing: 0.95px;
    color: #4C639E;
  }
  .about-page .flow__step span {
    display: inline;
    margin-right: 2px;
    font: normal normal 600 11px/11px Poppins;
    letter-spacing: 0.55px;
    color: #4C639E;
    margin-top: 12px;
  }
  .about-page .flow__text {
    grid-column: 2;
    grid-row: 2;
    display: block;
    margin: 0;
    font: normal normal bold 15px/20px Zen Kaku Gothic New;
    letter-spacing: 0.75px;
    color: #4C639E;
  }
  .about-page .flow a {
    width: 290px;
    height: 55px;
    min-width: 0;
    border: 2px solid #1F3661;
    font: normal normal 500 15px/15px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #1F3661;
  }
  .about-page .flow a::after {
    content: "";
    width: 16px;
    height: 10px;
    margin-left: 20px;
    background-color: currentColor;
    mask: url(../images/top/plan/PC/right_blue.png) center/contain no-repeat;
    -webkit-mask: url(../images/top/plan/PC/right_blue.png) center/contain no-repeat;
  }
  .about-page .shop::before {
    height: 23px;
    background: url(../images/page01/page80/SMP/nami02_smp.png) no-repeat;
    top: -22px;
    background-size: 100% 100%;
  }
  .about-page .shop .section-label {
    font: normal normal 500 13px/22px Poppins;
    letter-spacing: 0.91px;
    color: #FFFFFF;
  }
  .about-page .shop .section-label::before,
  .about-page .shop .section-label::after {
    width: 12.5px;
    height: 12.5px;
  }
  .about-page .shop .section-label::before {
    left: -12.5px;
  }
  .about-page .section-label::after {
    right: -12.5px;
  }
  .about-page .shop {
    padding-bottom: 45px;
  }
  .about-page .shop__inner {
    width: 358px;
    margin: 0 auto;
    padding-top: 22.5px;
  }
  .about-page .shop h2 {
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #FFFFFF;
  }
  .about-page .shop__content {
    width: 346px;
    display: flex;
    flex-direction: column-reverse;
    margin: 30px auto 0;
  }
  .about-page .shop__content img {
    width: 300px;
    height: 200px;
    margin: 0 auto;
  }
  .about-page .shop__table {
    margin: 5px 0 30px;
  }
  .about-page .shop__table th,
  .about-page .shop__table td {
    height: 50px;
  }
  .about-page .shop__table th {
    width: 95px;
  }
  .about-page .shop__table th span {
    width: 95px;
    height: 29px;
    font: normal normal 500 15px/15px Zen Kaku Gothic New;
    letter-spacing: 1.2px;
    color: #364D78;
  }
  .about-page .shop__table td span, .about-page .shop__table td a {
    font: normal normal normal 14px/20px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #FFFFFF;
    padding-left: 10px;
  }
  .about-page .shop__map {
    width: 358px;
    height: 225px;
    margin: 0 auto 30px;
  }
  .about-page .shop__notice {
    padding: 15px 20px;
  }
  .about-page .shop__notice h3::before {
    width: 17.5px;
    height: 17.5px;
    top: 40%;
    transform: translateY(-50%);
    left: -17.5px;
  }
  .about-page .shop__notice h3 {
    font: normal normal 500 16px/16px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
    display: inline-block;
    padding-bottom: 3px;
    border-bottom: dashed 1px;
    margin-left: 17.5px;
    position: relative;
  }
  .about-page .shop__notice p {
    font: normal normal normal 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #1F3661;
    margin-top: 7.5px;
  }
  .about-page .shop__notice a {
    margin-top: 7.5px;
    font: normal normal 500 15px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #1F3661;
    margin-left: 30px;
    position: relative;
  }
  .about-page .shop__notice a::before {
    width: 22.5px;
    height: 22.5px;
    left: -30px;
  }
  .about-page .message {
    padding: 120px 0 45px;
    background: url("../images/page01/page80/SMP/haikei_smp.png") no-repeat;
    background-size: cover;
  }
  .about-page .message::before {
    content: "";
    display: block;
    width: 100%;
    height: 9px;
    background: url(../images/top/nami02_smp.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 0px;
    left: 0;
  }
  .about-page .message__inner {
    width: 325px;
    margin: 0 auto;
  }
  .about-page .wrap {
    position: relative;
    top: -325px;
  }
  .about-page .message .section-label {
    margin-top: 0;
    margin-left: 15px;
    font: normal normal 500 13px/13px Poppins;
    letter-spacing: 0.91px;
    color: #4C639E;
    text-align: left;
  }
  .about-page .message .section-label:before {
    width: 12.5px;
    height: 12.5px;
    left: -15px;
  }
  .about-page .message .section-label:after {
    display: none;
  }
  .about-page .message h2 {
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #4C639E;
  }
  .about-page .message__inner img {
    width: 325px;
    height: 244px;
    object-fit: cover;
  }
  .about-page .message h3 {
    font: normal normal 500 16px/27.5px Zen Kaku Gothic New;
    letter-spacing: 0.8px;
    color: #1F3661;
    margin-top: -35px;
  }
  .about-page .message .text {
    width: 325px;
    margin-top: 25px;
  }
  .about-page .message .text p {
    font: normal normal normal 15px/27.5px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #1F3661;
  }
  .about-page .message__name {
    margin-top: 15px;
  }
  .about-page .message__name strong {
    font: normal normal bold 16px/15px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
  }
  .about-page .company {
    padding: 45px 0 75px;
    width: 375px;
    margin: 0 auto;
  }
  .about-page .company .section-label {
    display: inline-block;
    font: normal normal 500 13px/13px Poppins;
    letter-spacing: 0.91px;
    color: #4C639E;
    margin-bottom: 5px;
    text-align: center;
    position: relative;
  }
  .about-page .company .section-label::before, .about-page .company .section-label::after {
    width: 12.5px;
    height: 12.5px;
  }
  .about-page .company .section-label::before {
    left: -17.5px;
  }
  .about-page .company .section-label::after {
    right: -17.5px;
  }
  .about-page .company h2 {
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #4C639E;
  }
  .about-page .company dl {
    grid-template-columns: 80px 1fr;
    gap: 0 18px;
    margin-top: 15px;
  }
  .about-page .company dt {
    font: normal normal 500 15px/19px Zen Kaku Gothic New;
    letter-spacing: 0.75px;
    color: #1F3661;
    padding: 15px 0 17px;
  }
  .about-page .company dd {
    font: normal normal normal 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #1F3661;
    padding: 15px 0 17px;
  }
  .about-page .history {
    padding: 60px 0 80px;
    position: relative;
  }
  .about-page .history::before {
    content: "";
    display: block;
    width: 100%;
    height: 29px;
    background: url(../images/page01/page80/SMP/nami04_smp.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -29px;
    left: 0;
  }
  .about-page .history {
    padding: 45px 0 35px;
  }
  .about-page .history .section-label {
    display: inline-block;
    font: normal normal 500 13px/13px Poppins;
    letter-spacing: 0.91px;
    color: #4C639E;
    margin-bottom: 5px;
    text-align: center;
    position: relative;
  }
  .about-page .history .section-label::before, .about-page .company .section-label::after {
    width: 12.5px;
    height: 12.5px;
  }
  .about-page .history .section-label::before {
    left: -17.5px;
  }
  .about-page .history .section-label::after {
    right: -17.5px;
  }
  .about-page .history h2 {
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #4C639E;
  }
  .about-page .history__inner {
    width: 370px;
    margin: 0 auto;
  }
  .about-page .history dl {
    display: grid;
    text-align: left;
    grid-template-columns: 135px 1fr;
    gap: 15px 17px;
    margin: 30px auto 0;
  }
  .about-page .history dt {
    display: flex;
    align-items: center;
    height: 33px;
    position: relative;
  }
  .about-page .history dt::before {
    width: 11.5px;
    height: 11.5px;
    border: 2px solid #4C639E;
    left: 76px;
  }
  .about-page .history dt::after {
    width: 1px;
    height: 53px;
    border: 1px solid #E2E6EB;
    top: 22px;
    left: 81px;
  }
  .about-page .history dt:nth-child(13)::after {
    display: none;
  }
  .about-page .history dt .year {
    width: 62px;
    font: normal normal 600 23.5px/23.5px Poppins;
    letter-spacing: 0.94px;
    margin-right: 40px;
  }
  .about-page .history dt .month {
    width: 35px;
    font: normal normal bold 15px/15px Zen Kaku Gothic New;
    letter-spacing: 1.5px;
  }
  .about-page .history dd {
    font: normal normal normal 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #1F3661;
  }
  .about-page .top {
    margin-top: 146px;
    padding-bottom: 45px;
  }
  .about-page .top__inner {
    width: 342px;
  }
  .about-page .top__text {
    width: 310px;
    margin: 0 auto;
  }
  .about-page .top__copy {
    margin-bottom: 20px;
    line-height: 1;
  }
  .about-page .top__contents p {
    font-size: 15px;
    line-height: 27.5px;
  }
}

.forb-page {
  color: #364D78;
}
.forb-page * {
  box-sizing: border-box;
}
.forb-page h2, .forb-page h3 {
  line-height: unset;
}
.forb-page .section-label {
  display: inline-block;
  font: normal normal 500 14px/24px Poppins;
  letter-spacing: 0.98px;
  color: #4C639E;
  margin-bottom: 5px;
  text-align: center;
  position: relative;
}
.forb-page .section-label::before,
.forb-page .section-label::after {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: url(../images/page01/page80/PC/star.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.forb-page .section-label::before {
  left: -25px;
}
.forb-page .section-label::after {
  right: -25px;
}
.forb-page img {
  display: block;
  object-fit: cover;
}
.forb-page h2 {
  margin: 0;
  font: normal normal bold 36px/46px Zen Kaku Gothic New;
  letter-spacing: 2.88px;
  color: #364D78;
  text-align: center;
}
.forb-page .forb__inner {
  margin: 0 auto;
}
.forb-page .reason__inner {
  margin: 0 auto;
}
.forb-page .works__inner {
  margin: 0 auto;
}
.forb-page .faq__inner {
  margin: 0 auto;
}
.forb-page .contractors__inner {
  margin: 0 auto;
}
.forb-page .benefit {
  position: relative;
}
.forb-page .benefit::before {
  content: "";
  display: block;
  width: 100%;
  height: 17px;
  background: url(../images/page01/page90/PC/nami05_pc.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0px;
  left: 0;
}
.forb-page .benefit__inner {
  margin: 0 auto;
}
.forb-page .forb-contact__inner {
  margin: 0 auto;
}
.forb-page .forb {
  background: #fff;
}
.forb-page .forb__sub {
  margin: 12px 0 0;
  text-align: center;
}
.forb-page .contractors__sub {
  margin: 12px 0 0;
  text-align: center;
}
.forb-page .forb__content {
  display: flex;
}
.forb-page .works__images img {
  width: 100%;
  border-radius: 8px;
}
.forb-page .reason__cards img {
  width: 100%;
  border-radius: 8px;
}
.forb-page .contractors__solution img {
  width: 100%;
  border-radius: 8px;
}
.forb-page .benefit__list img {
  width: 100%;
  border-radius: 8px;
}
.forb-page .forb__text h3 {
  margin: 0;
  font: normal normal bold 26px/42px Zen Kaku Gothic New;
  letter-spacing: 2.08px;
  color: #364D78;
}
.forb-page .reason__head h3 {
  margin: 0;
  font: normal normal bold 26px/42px Zen Kaku Gothic New;
  letter-spacing: 2.08px;
  color: #364D78;
}
.forb-page .contractors__worry h3 {
  margin: 0;
  font: normal normal bold 30px/46px Zen Kaku Gothic New;
  letter-spacing: 2.4px;
  color: #364D78;
}
.forb-page .contractors__solution h3 {
  margin: 0 auto;
  width: fit-content;
  font: normal normal bold 36px/46px Zen Kaku Gothic New;
  letter-spacing: 2.88px;
  color: #364D78;
  position: relative;
}
.forb-page .contractors__solution h3::before {
  content: "";
  display: block;
  width: 55px;
  height: 65px;
  background: url(../images/page01/page90/PC/line_orange_left.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  bottom: 0px;
  left: -95px;
}
.forb-page .contractors__solution h3::after {
  content: "";
  display: block;
  width: 55px;
  height: 65px;
  background: url(../images/page01/page90/PC/line_orange_right.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  bottom: 0px;
  right: -95px;
}
.forb-page .benefit__list h3 {
  margin: 0;
  font: normal normal bold 26px/42px Zen Kaku Gothic New;
  letter-spacing: 2.08px;
  color: #364D78;
}
.forb-page .forb-contact h2 {
  margin: 0;
  font: normal normal bold 26px/42px Zen Kaku Gothic New;
  letter-spacing: 2.08px;
  color: #364D78;
}
.forb-page .reason {
  background: #364D78;
  color: #fff;
  position: relative;
}
.forb-page .reason::before {
  content: "";
  display: block;
  width: 100%;
  height: 84px;
  background: url(../images/page01/page90/PC/nami01_pc.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: -83px;
  left: 0;
}
.forb-page .reason::after {
  content: "";
  display: block;
  width: 100%;
  height: 17px;
  background: url(../images/page01/page90/PC/nami02_pc.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  bottom: -17px;
  left: 0;
}
.forb-page .reason h2 {
  color: #fff;
}
.forb-page .reason p {
  color: #fff;
}
.forb-page .reason li {
  color: #fff;
}
.forb-page .reason__points {
  display: grid;
}
.forb-page .reason__points div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #fff;
  font: normal normal bold 17px/27px Zen Kaku Gothic New;
  letter-spacing: 0.85px;
  color: #F49517;
  text-align: center;
}
.forb-page .reason__points span {
  font: normal normal 300 40px/44px Poppins;
  letter-spacing: 2px;
  color: #8AA0C8;
}
.forb-page .reason__points p {
  margin: 0;
}
.forb-page .reason__points strong,
.forb-page .reason__points em {
  font-style: normal;
}
.forb-page .reason__cards {
  overflow: hidden;
  background: #fff;
  border-radius: 30px;
}
.forb-page .reason__cards article {
  display: grid;
  color: #364D78;
}
.forb-page .reason__cards article + article {
  border-top: 2px solid #364D78;
}
.forb-page .reason__head {
  position: relative;
}
.forb-page .reason__head-num {
  font: normal normal 300 74px/80px Poppins;
  letter-spacing: 3.7px;
  color: transparent;
  -webkit-text-stroke: 2px #526DAA;
}
.forb-page .reason__head h3 {
  color: #fff;
}
.forb-page .reason__head-line {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 3px;
  background: #364D78;
  white-space: nowrap;
}
.forb-page .reason__cards article > p {
  margin: 0;
  color: #364D78;
}
.forb-page .reason__voice {
  grid-column: 1/-1;
}
.forb-page .reason__voice h4 {
  margin: 0 0 18px;
  font: normal normal bold 22px/32px Zen Kaku Gothic New;
  letter-spacing: 1.76px;
  color: #364D78;
}
.forb-page .reason__voice div {
  background: #E8EEF4;
  border-radius: 6px;
}
.forb-page .reason__voice div p {
  margin: 0;
  color: #364D78;
}
.forb-page .reason__voice strong {
  display: block;
  font: normal normal bold 15px/24px Zen Kaku Gothic New;
  letter-spacing: 0.75px;
  color: #364D78;
}
.forb-page .reason__with-case .reason__case {
  display: block;
  grid-column: 1/-1;
  background: #fff;
}
.forb-page .reason__case h3 {
  position: relative;
  margin: 0;
  font: normal normal bold 26px/36px Zen Kaku Gothic New;
  letter-spacing: 2.08px;
  color: #364D78;
  text-align: center;
  white-space: nowrap;
}
.forb-page .reason__case h3::before,
.forb-page .reason__case h3::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 20px;
  background: #364D78;
  transform: rotate(45deg);
  vertical-align: 1px;
}
.forb-page .forb-case {
  display: grid;
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
}
.forb-page .forb-case:last-child {
  margin-bottom: 0;
}
.forb-page .forb-case__slider,
.forb-page .forb-case__text {
  min-width: 0;
}
.forb-page .forb-case__main {
  position: relative;
  touch-action: manipulation;
}
.forb-page .forb-case__main img {
  display: none;
  width: 100%;
  border-radius: 18px;
  -webkit-user-drag: none;
  user-select: none;
  touch-action: manipulation;
}
.forb-page .forb-case__main img.is-active {
  display: block;
}
.forb-page .forb-case__arrow {
  position: absolute;
  top: 50%;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #fff;
  border-radius: 50%;
  font: normal normal normal 18px/1 Poppins;
  background: #4C639E;
  color: #fff;
  cursor: pointer;
  touch-action: manipulation;
  transform: translateY(-50%);
}
.forb-page .forb-case__thumbs {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
}
.forb-page .forb-case__thumbs button {
  overflow: hidden;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  cursor: pointer;
  touch-action: manipulation;
}
.forb-page .forb-case__thumbs button.is-active {
  opacity: 1;
}
.forb-page .forb-case__thumbs img {
  width: 100%;
  height: 100%;
  border-radius: 8px;
}
.forb-page .forb-case__dots {
  display: none;
}
.forb-page .forb-case__label {
  position: relative;
  margin: 0;
  padding-left: 16px;
  font: normal normal 500 14px/20px Poppins;
  letter-spacing: 1.4px;
  color: #B5C3D5 !important;
}
.forb-page .forb-case__label::before {
  content: "";
  position: absolute;
  top: 12.5px;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #F49517;
}
.forb-page .forb-case__text h4 {
  margin: 8px 0 30px;
  font: normal normal 500 24px/34px Zen Kaku Gothic New;
  letter-spacing: 1.2px;
  color: #1F3661;
  word-break: keep-all;
  overflow-wrap: normal;
}
.forb-page .forb-case__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  padding: 0;
  margin: 0 0 28px;
  list-style: none;
}
.forb-page .forb-case__tags li {
  padding: 0;
  font: normal normal 500 15px/24px Zen Kaku Gothic New;
  letter-spacing: 0.75px;
  color: #1F3661;
}
.forb-page .forb-case__tags li::before {
  content: "#";
  margin-right: 6px;
}
.forb-page .forb-case__text p {
  font: normal normal normal 16px/30px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #1F3661;
}
.forb-page .forb-case__text p.forb-case__label {
  font: normal normal 500 14px/32px Poppins;
  letter-spacing: 1.4px;
  color: #B5C3D5;
}
.forb-page .works {
  background: #F5F5F5;
}
.forb-page .benefit {
  background: #F5F5F5;
}
.forb-page .works__group {
  position: relative;
}
.forb-page .works__group h3 {
  margin: 0;
  font: normal normal 500 26px/26px Zen Kaku Gothic New;
  letter-spacing: 1.3px;
  color: #1F3661;
}
.forb-page .works__images {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.forb-page .works__images img {
  display: block;
  width: 100%;
  object-fit: cover;
}
.forb-page .works ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
.forb-page .contractors ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
.forb-page .works li {
  position: relative;
  padding-left: 33px;
  font: normal normal 500 20px/38px Zen Kaku Gothic New;
  letter-spacing: 1px;
  color: #1F3661;
}
.forb-page .contractors li {
  position: relative;
}
.forb-page .works li::before {
  content: "✓";
  position: absolute;
  top: 7px;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border: 1px solid #F49517;
  border-radius: 50%;
  font: normal normal 500 13px/1 Poppins;
  color: #F49517;
}
.forb-page .contractors li::before {
  content: "";
  width: 32px;
  height: 32px;
  background: url(../images/page01/page90/PC/check_white.png) no-repeat;
  background-size: contain;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -40px;
}
.forb-page .contractors {
  background: #fff;
}
.forb-page .contractors__worry {
  background: #364D78;
  border-radius: 999px;
  text-align: center;
}
.forb-page .contractors__worry h3 {
  color: #fff;
}
.forb-page .contractors__worry p {
  color: #fff;
  text-align: center;
  font: normal normal normal 16px/26px Zen Kaku Gothic New;
  letter-spacing: 0.48px;
  color: #FFFFFF;
}
.forb-page .contractors__worry li {
  color: #fff;
}
.forb-page .contractors__worry ul {
  display: grid;
}
.forb-page .contractors__solution {
  display: grid;
  align-items: center;
}
.forb-page .contractors__solution h3 {
  grid-column: 1/-1;
  text-align: center;
}
.forb-page .benefit__list {
  display: grid;
}
.forb-page .benefit__list article {
  text-align: center;
}
.forb-page .benefit__list span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  margin: -40px auto 12px;
  border: 2px solid #364D78;
  border-radius: 50%;
  background: #fff;
  font: normal normal 500 26px/70px Poppins;
  letter-spacing: 0.78px;
  color: #4C639E;
  position: relative;
  text-decoration: underline;
  text-underline-offset: 5px;
  padding-bottom: 5px;
}
.forb-page .forb-contact {
  background: #fff;
  text-align: center;
}
.forb-page .forb-contact h2 {
  color: #F49517;
}
.forb-page .forb-contact a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin: 0 auto;
  border: 2px solid #364D78;
  border-radius: 100px;
  font: normal normal bold 15px/24px Zen Kaku Gothic New;
  letter-spacing: 0.75px;
  color: #364D78;
}
.forb-page .forb-contact a::after {
  content: "→";
  margin-left: 14px;
}
.forb-page .btn-area {
  display: grid;
  margin: 0 auto;
  transition: all 0.4s ease;
}
.forb-page .btn-area a {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #364D78;
  border-radius: 100px;
  font: normal normal bold 16px/24px Zen Kaku Gothic New;
  letter-spacing: 0.8px;
  color: #364D78;
  text-align: center;
  transition: all 0.4s ease;
}
.forb-page .btn-area a .for {
  position: relative;
  transition: all 0.4s ease;
}
.forb-page .btn-area a .for::before {
  content: "";
  display: block;
  width: 10px;
  height: 16px;
  background: url(../images/page01/page90/down_dblue.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -30px;
  transition: all 0.4s ease;
}
@media only screen and (min-width: 1025px) {
  .forb-page .forb__inner {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
  }
  .forb-page .reason__inner {
    max-width: 1280px;
  }
  .forb-page .works__inner {
    width: 1120px;
  }
  .forb-page .faq__inner {
    width: 1080px;
  }
  .forb-page .contractors__inner {
    max-width: 1280px;
  }
  .forb-page .benefit__inner {
    width: 100%;
    max-width: 1275px;
  }
  .forb-page .benefit__inner .section-label {
    display: block;
    width: fit-content;
    margin: 0 auto 5px;
  }
  .forb-page .forb-contact__inner {
    width: 1080px;
  }
  .forb-page .forb {
    padding: 87px 0 175px;
  }
  .forb-page .forb .section-label {
    display: block;
    width: fit-content;
    margin: 0 auto 5px;
    font: normal normal 500 13px/13px Poppins;
    letter-spacing: 0.91px;
    color: #4C639E;
  }
  .forb-page .contractors .section-label {
    display: block;
    width: fit-content;
    margin: 0 auto 5px;
  }
  .forb-page .contractors .section-label {
    display: block;
    width: fit-content;
    margin: 0 auto 5px;
  }
  .forb-page .forb h2 {
    position: relative;
  }
  .forb-page .forb h2::before, .forb-page .forb h2::after {
    content: "";
    display: block;
    width: 365px;
    height: 30px;
    background: #E2E6EB 0% 0% no-repeat padding-box;
    position: absolute;
    top: 0px;
  }
  .forb-page .forb h2:before {
    left: 0;
  }
  .forb-page .forb h2:after {
    right: 0;
  }
  .forb-page .contractors h2 {
    position: relative;
  }
  .forb-page .contractors h2::before, .forb-page .contractors h2::after {
    content: "";
    display: block;
    width: 365px;
    height: 30px;
    background: #E2E6EB 0% 0% no-repeat padding-box;
    position: absolute;
    top: 0px;
  }
  .forb-page .contractors h2:before {
    left: 0;
  }
  .forb-page .contractors h2:after {
    right: 0;
  }
  .forb-page .forb__sub {
    margin-top: 15px;
    font: normal normal 500 16px/30px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #364D78;
  }
  .forb-page .contractors__sub {
    margin-top: 15px;
    font: normal normal 500 16px/30px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #364D78;
  }
  .forb-page .forb__content {
    max-width: 1280px;
    margin-top: 72px;
  }
  .forb-page .forb__gallery {
    width: 590px;
    flex: none;
    margin-right: 95px;
  }
  .forb-page .forb__gallery img {
    width: 590px;
    height: 443px;
    border-radius: 20px;
  }
  .forb-page .forb__text {
    width: 495px;
  }
  .forb-page .forb__text h3 {
    margin-bottom: 28px;
    font: normal normal 500 26px/44px Zen Kaku Gothic New;
    letter-spacing: 1.3px;
    color: #1F3661;
  }
  .forb-page .forb__text p {
    font: normal normal normal 16px/30px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
  }
  .forb-page .reason {
    padding: 27px 0 90px;
  }
  .forb-page .reason__inner h2 {
    text-align: center;
    font: normal normal bold 36px/46px Zen Kaku Gothic New;
    letter-spacing: 2.88px;
    color: #FFFFFF;
    position: relative;
    width: fit-content;
    margin: 0 auto;
  }
  .forb-page .reason__inner h2 .small {
    text-align: center;
    font: normal normal bold 24px/46px Zen Kaku Gothic New;
    letter-spacing: 1.92px;
    color: #FFFFFF;
    margin-bottom: 10px;
  }
  .forb-page .reason__inner h2::before {
    content: "";
    display: block;
    width: 55px;
    height: 65px;
    background: url(../images/page01/page90/PC/line_orange_left.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: 0px;
    left: -95px;
  }
  .forb-page .reason__inner h2::after {
    content: "";
    display: block;
    width: 55px;
    height: 65px;
    background: url(../images/page01/page90/PC/line_orange_right.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: 0px;
    right: -95px;
  }
  .forb-page .reason__points {
    grid-template-columns: repeat(3, 240px);
    justify-content: center;
    gap: 84px;
    margin-top: 58px;
  }
  .forb-page .reason__points div {
    width: 240px;
    height: 240px;
    font: normal normal bold 26px/44px Zen Kaku Gothic New;
    letter-spacing: 1.3px;
    color: #1F3661;
    justify-content: start;
    padding-top: 20px;
  }
  .forb-page .reason__points p {
    color: #1F3661;
    text-align: center;
  }
  .forb-page .reason__points div::before {
    content: "POINT";
    border-bottom: 1px solid #1F3661;
    font: normal normal 500 12px/12px Poppins;
    letter-spacing: 0.6px;
    color: #364D78;
  }
  .forb-page .reason__points span {
    font: normal normal 500 50px/70px Poppins;
    letter-spacing: 1.5px;
    color: #fff;
    -webkit-text-stroke: 1.5px #1F3661;
    text-stroke: 1.5px #4C639E;
  }
  .forb-page .reason__points strong {
    text-align: center;
    text-decoration: underline;
    font: normal normal bold 20px/29px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #F49517;
    display: inline;
  }
  .forb-page .reason__points em {
    text-align: center;
    font: normal normal 500 20px/29px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #1F3661;
    display: inline;
  }
  .forb-page .reason__cards {
    margin-top: 70px;
  }
  .forb-page .reason__cards article {
    grid-template-columns: 530px 570px;
    grid-template-rows: 165px auto auto;
    column-gap: 76px;
    row-gap: 30px;
    padding: 80px 105px 75px;
    align-items: start;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1279px) {
  .forb-page .reason__cards article {
    padding: 80px 0px 75px;
  }
}
@media only screen and (min-width: 1025px) {
  .forb-page .reason__head {
    position: relative;
  }
  .forb-page .reason__head-num {
    font: normal normal 500 120px/70px Poppins;
    letter-spacing: 3.6px;
    color: #fff;
    -webkit-text-stroke: 2px #4C639E;
    position: absolute;
    right: 0;
  }
  .forb-page .reason__head h3 {
    grid-column: 1;
    grid-row: 1;
    align-self: end;
    margin-top: 70px;
    font: normal normal bold 30px/52px Zen Kaku Gothic New;
    letter-spacing: 1.5px;
    margin-top: 58px;
  }
  .forb-page .reason__head-line {
    padding: 0 18px;
    border-radius: 4px;
    font: normal normal 500 26px/50px Zen Kaku Gothic New;
    letter-spacing: 0.78px;
    color: #FFFFFF;
  }
  .forb-page .reason__cards article > img {
    grid-column: 2;
    grid-row: 1/3;
    width: 570px;
    height: 380px;
    border-radius: 30px 0px 0px 30px;
  }
  .forb-page .reason__cards article > p {
    grid-column: 1;
    grid-row: 2;
    font: normal normal normal 16px/30px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
  }
  .forb-page .reason__voice {
    grid-row: 3;
  }
  .forb-page .reason__with-case .reason__case {
    padding: 22px 0 0;
  }
  .forb-page .reason__case h3 {
    margin-bottom: 40px;
    font: normal normal 500 28px/26px Zen Kaku Gothic New;
    letter-spacing: 1.4px;
    color: #1F3661;
  }
  .forb-page .forb-case {
    grid-template-columns: 460px minmax(0, 1fr);
    gap: 90px;
    max-width: 977px;
    margin: 0 auto 30px;
  }
  .forb-page .forb-case + .forb-case {
    padding-top: 28px;
    border-top: 2px dotted #B8C0D0;
  }
  .forb-page .forb-case__main img {
    width: 460px;
    height: 307px;
  }
  .forb-page .forb-case__arrow {
    width: 39px;
    height: 39px;
    cursor: pointer;
    transition: all 0.4s ease;
  }
  .forb-page .forb-case__arrow:hover {
    background-color: #fff;
    color: #4C639E;
    border: solid 1px #4C639E;
  }
  .forb-page .forb-case__arrow--prev {
    left: -20px;
  }
  .forb-page .forb-case__arrow--next {
    border: solid 1px #fff;
    right: -20px;
  }
  .forb-page .forb-case__thumbs {
    gap: 10px;
    margin-top: 10px;
  }
  .forb-page .forb-case__thumbs button {
    height: 53.6px;
  }
  .forb-page .reason__voice {
    display: grid;
    grid-template-columns: 526px 526px;
    gap: 20px;
    align-items: start;
  }
  .forb-page .reason__voice h4 {
    grid-column: 1/-1;
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 0;
    font: normal normal 500 26px/26px Zen Kaku Gothic New;
    letter-spacing: 1.3px;
    color: #1F3661;
  }
  .forb-page .reason__voice h4::before {
    content: "";
    display: block;
    width: 28px;
    height: 28px;
    background: url(../images/page01/page90/PC/bubble.png) no-repeat;
    background-size: contain;
  }
  .forb-page .reason__voice .voice__item {
    width: 526px;
    min-height: 150px;
    padding: 20px 30px;
    position: relative;
  }
  .forb-page .reason__voice .voice__item .top {
    display: flex;
    align-items: center;
    gap: 18px;
  }
  .forb-page .reason__voice .voice__item .top img {
    width: 70px;
    height: 70px;
    border: 4px solid #fff;
    border-radius: 50%;
    background: url(../images/top/about/about-owner.webp) center/cover no-repeat;
  }
  .forb-page .reason__voice .voice__item .top strong {
    font: normal normal 500 20px/26px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #1F3661;
  }
  .forb-page .reason__voice div p {
    margin-top: 15px;
    font: normal normal normal 16px/26px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
  }
  .forb-page .reason__voice h4 {
    grid-column: 1/-1;
  }
  .forb-page .works {
    padding: 105px 0 150px;
  }
  .forb-page .works h2 {
    display: block;
    width: fit-content;
    margin: 0 auto 85px;
    position: relative;
  }
  .forb-page .works h2::before {
    content: "";
    display: block;
    width: 55px;
    height: 65px;
    background: url(../images/page01/page90/PC/line_orange_left.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: 0px;
    left: -95px;
  }
  .forb-page .works h2::after {
    content: "";
    display: block;
    width: 55px;
    height: 65px;
    background: url(../images/page01/page90/PC/line_orange_right.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: 0px;
    right: -95px;
  }
  .forb-page .works__group {
    padding: 0;
  }
  .forb-page .works__group + .works__group {
    margin-top: 80px;
  }
  .forb-page .works__group::before {
    content: "";
    position: absolute;
    top: -45px;
    left: -56px;
    width: 150px;
    height: 150px;
    background: #E2E6EB;
  }
  .forb-page .works__group h3 {
    position: relative;
    z-index: 1;
    margin-left: 32px;
    font: normal normal 500 26px/26px Zen Kaku Gothic New;
    letter-spacing: 1.3px;
    color: #1F3661;
  }
  .forb-page .works__images {
    position: relative;
    z-index: 1;
    grid-template-columns: repeat(3, 370px);
    gap: 6px;
    margin-top: 20px;
  }
  .forb-page .works__images img {
    width: 370px;
    height: 247px;
    border-radius: 10px;
  }
  .forb-page .works ul {
    display: grid;
    grid-template-columns: repeat(3, max-content);
    justify-content: center;
    gap: 0 58px;
    margin-top: 40px;
    padding: 50px 145px;
    border-radius: 8px;
    background: #fff;
  }
  .forb-page .contents-5 {
    padding: 90px 0;
    position: relative;
  }
  .forb-page .contents-5::before {
    content: "";
    display: block;
    width: 100%;
    height: 59px;
    background: url(../images/top/nami03_pc.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -58px;
    left: 0;
  }
  .forb-page .contractors {
    padding: 20px 0 105px;
  }
  .forb-page .contractors__worry {
    max-width: 1222px;
    margin: 60px auto 0;
    padding: 50px 170px 70px;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1279px) {
  .forb-page .contractors__worry {
    padding: 50px 10vw 70px;
  }
}
@media only screen and (min-width: 1025px) {
  .forb-page .contractors__worry ul {
    width: 885px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    margin: 80px 0 40px;
  }
  .forb-page .contractors__worry ul li {
    font: normal normal 500 18px/30px Zen Kaku Gothic New;
    letter-spacing: 0.54px;
    color: #FFFFFF;
  }
  .forb-page .contractors__solution {
    width: 100%;
    max-width: 1100px;
    grid-template-columns: 510px 1fr;
    gap: 42px 70px;
    margin: 90px auto 0;
  }
  .forb-page .contractors__solution div p {
    font: normal normal normal 16px/30px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
  }
  .forb-page .contractors__solution div ul {
    margin-bottom: 30px;
  }
  .forb-page .contractors__solution div ul li {
    font: normal normal 500 16px/30px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
    padding-left: 32px;
    position: relative;
  }
  .forb-page .contractors__solution div ul li::before {
    content: "";
    display: block;
    width: 22px;
    height: 22px;
    background: url(../images/page01/page90/PC/check_orange.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
  }
  .forb-page .contractors__solution img {
    height: 385px;
  }
  .forb-page .contractors__solution ul {
    margin-top: 22px;
  }
  .forb-page .benefit {
    padding: 95px 0;
  }
  .forb-page .benefit__list {
    grid-template-columns: repeat(4, 1fr);
    gap: 34px;
    margin-top: 50px;
  }
  .forb-page .benefit__list img {
    width: 300px;
    height: 200px;
    border-radius: 20px;
  }
  .forb-page .benefit__list h3 {
    font: normal normal 500 22px/30px Zen Kaku Gothic New;
    letter-spacing: 0.66px;
    color: #1F3661;
    white-space: nowrap;
  }
  .forb-page .benefit__list p {
    margin-top: 20px;
    font: normal normal normal 16px/26px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
  }
  .forb-page .forb-contact {
    padding: 95px 0 110px;
  }
  .forb-page .forb-contact p {
    width: 680px;
    margin: 22px auto 34px;
  }
  .forb-page .forb-contact a {
    height: 52px;
    min-width: 300px;
  }
  .forb-page .btn-area {
    width: 100%;
    max-width: 1080px;
    grid-template-columns: repeat(2, 1fr);
    gap: 42px;
    padding: 120px 0 0;
  }
  .forb-page .btn-area a {
    max-width: 500px;
    height: 85px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
  }
  .forb-page .btn-area a:hover {
    background-color: #364D78;
  }
  .forb-page .btn-area a:hover .for {
    color: #fff;
  }
  .forb-page .btn-area a:hover .for::before {
    background: url(../images/page01/page90/down_white.png) no-repeat;
    background-size: contain;
  }
  .forb-page .btn-area a:hover .ex {
    color: #fff;
  }
  .forb-page .btn-area a .for {
    font: normal normal bold 16px/24px Zen Kaku Gothic New;
    letter-spacing: 0.48px;
    color: #1F3661;
  }
  .forb-page .btn-area a .ex {
    font: normal normal normal 14px/20px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #1F3661;
    transition: all 0.4s ease;
  }
  .forb-page .contact-lead {
    padding-top: 108px;
    padding-bottom: 90px;
  }
  .forb-page .contact-lead .inner {
    width: -moz-min-content;
    width: min-content;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 1;
  }
  .forb-page .contact-lead h2 {
    display: inline-block;
    margin-bottom: 30px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 36px;
    font-weight: bold;
    line-height: 46px;
    letter-spacing: 2.88px;
    color: #f49517;
    white-space: nowrap;
    position: relative;
  }
  .forb-page .contact-lead h2::before {
    content: "";
    display: block;
    width: 50.1px;
    height: 52.4px;
    background-image: url(/wp-content/themes/cf_theme/images/page02/page60/contact_burst.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -26.2px;
    left: -56px;
  }
  .forb-page .contact-lead p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.88;
    letter-spacing: 0.48px;
    color: #1f3661;
    white-space: nowrap;
    text-align: center;
  }
  .forb-page .contact-lead .inner::after {
    content: "";
    display: block;
    width: 250px;
    height: 250px;
    background-image: url(/wp-content/themes/cf_theme/images/page02/page60/contact_circle.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -48px;
    right: -89px;
    z-index: -1;
    transform-origin: center;
    animation: page65-contact-circle-rotate 20s linear infinite;
    will-change: transform;
  }
  .forb-page .voice-section__button {
    display: flex;
    align-items: center;
    width: 370px;
    height: 64px;
    margin: 30px auto 0;
    border: 2px solid #1F3661;
    border-radius: 100px;
    color: #1F3661;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    letter-spacing: 0.48px;
    padding-left: 100px;
    text-decoration: none;
    transition: background-color 0.4s ease, border-color 0.4s ease, color 0.4s ease;
  }
  .forb-page .voice-section__button:hover {
    background: #1F3661;
    border-color: #1F3661;
    color: #fff;
  }
  .forb-page .voice-section__button::after {
    content: "";
    width: 16.2184867859px;
    height: 10px;
    margin-left: 20px;
    background-color: currentColor;
    mask: url("../images/top/voice/PC/right_blue.png") center/contain no-repeat;
    -webkit-mask: url("../images/top/voice/PC/right_blue.png") center/contain no-repeat;
    transition: background-color 0.4s ease;
  }
}
@media only screen and (max-width: 1024px) {
  .forb-page h2 {
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1.6px;
  }
  .forb-page .forb__inner {
    width: 100%;
    max-width: 400px;
  }
  .forb-page .reason__inner {
    width: 96%;
    max-width: 385px;
  }
  .forb-page .reason__inner h2 {
    position: relative;
    display: block;
    width: fit-content;
    margin: 0 auto;
  }
  .forb-page .reason__inner h2 .small {
    font: normal normal bold 13px/17px Zen Kaku Gothic New;
    letter-spacing: 1.04px;
    color: #FFFFFF;
  }
  .forb-page .reason__inner h2::before {
    content: "";
    display: block;
    width: 27.5px;
    height: 32.5px;
    background: url(../images/page01/page90/PC/line_orange_left.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: 0px;
    left: -40px;
  }
  .forb-page .reason__inner h2::after {
    content: "";
    display: block;
    width: 27.5px;
    height: 32.5px;
    background: url(../images/page01/page90/PC/line_orange_right.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: 0px;
    right: -40px;
  }
  .forb-page .works__inner {
    width: 375px;
  }
  .forb-page .works__inner h2 {
    font: normal normal bold 20px/28px Zen Kaku Gothic New;
    letter-spacing: 1.6px;
    color: #1F3661;
    display: block;
    width: fit-content;
    margin: 0 auto 55px;
    position: relative;
  }
  .forb-page .works__inner h2::before {
    content: "";
    display: block;
    width: 27.5px;
    height: 32.5px;
    background: url(../images/page01/page90/PC/line_orange_left.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: 0px;
    left: -40px;
  }
  .forb-page .works__inner h2::after {
    content: "";
    display: block;
    width: 27.5px;
    height: 32.5px;
    background: url(../images/page01/page90/PC/line_orange_right.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: 0px;
    right: -40px;
  }
  .forb-page .faq__inner {
    width: 342px;
  }
  .forb-page .contractors__inner {
    width: 100%;
    max-width: 400px;
  }
  .forb-page .contractors__inner .section-label {
    font: normal normal 500 13px/13px Poppins;
    letter-spacing: 0.91px;
    color: #4C639E;
    display: block;
    width: fit-content;
    margin: 0 auto 5px;
  }
  .forb-page .contractors__inner .section-label::before, .forb-page .contractors__inner .section-label::after {
    content: "";
    display: block;
    width: 12.5px;
    height: 12.5px;
    background: url(../images/page01/page80/PC/star.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  .forb-page .contractors__inner .section-label::before {
    left: -17.5px;
  }
  .forb-page .contractors__inner .section-label::after {
    right: -17.5px;
  }
  .forb-page .benefit__inner {
    width: 260px;
  }
  .forb-page .benefit__inner .section-label {
    font: normal normal 500 13px/13px Poppins;
    letter-spacing: 0.91px;
    color: #4C639E;
    display: block;
    width: fit-content;
    margin: 0 auto 5px;
  }
  .forb-page .benefit__inner .section-label::before, .forb-page .benefit__inner .section-label::after {
    content: "";
    display: block;
    width: 12.5px;
    height: 12.5px;
    background: url(../images/page01/page80/PC/star.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  .forb-page .benefit__inner .section-label::before {
    left: -17.5px;
  }
  .forb-page .benefit__inner .section-label::after {
    right: -17.5px;
  }
  .forb-page .forb-contact__inner {
    width: 342px;
  }
  .forb-page .forb {
    padding: 0 0 77px;
  }
  .forb-page .forb__content {
    gap: 30px;
    margin-top: 34px;
  }
  .forb-page .forb__gallery img {
    height: 106px;
  }
  .forb-page .forb__text h3 {
    font: normal normal bold 18px/30px Zen Kaku Gothic New;
    letter-spacing: 1.44px;
  }
  .forb-page .forb .section-label {
    display: block;
    width: fit-content;
    margin: 0 auto 5px;
    font: normal normal 500 13px/13px Poppins;
    letter-spacing: 0.91px;
    color: #4C639E;
  }
  .forb-page .forb h2 {
    position: relative;
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #4C639E;
  }
  .forb-page .forb h2::before, .forb-page .forb h2::after {
    content: "";
    display: block;
    width: 70px;
    height: 22.5px;
    background: #E2E6EB 0% 0% no-repeat padding-box;
    position: absolute;
    top: 0px;
  }
  .forb-page .forb h2:before {
    left: 0;
  }
  .forb-page .forb h2:after {
    right: 0;
  }
  .forb-page .contractors h2 {
    position: relative;
    font: normal normal bold 20px/30px Zen Kaku Gothic New;
    letter-spacing: 1px;
    color: #4C639E;
  }
  .forb-page .contractors h2::before, .forb-page .contractors h2::after {
    content: "";
    display: block;
    width: 70px;
    height: 22.5px;
    background: #E2E6EB 0% 0% no-repeat padding-box;
    position: absolute;
    top: 0px;
  }
  .forb-page .contractors h2:before {
    left: 0;
  }
  .forb-page .contractors h2:after {
    right: 0;
  }
  .forb-page .forb__sub {
    margin-top: 15px;
    font: normal normal 500 13px/15px Zen Kaku Gothic New;
    letter-spacing: 0.39px;
    color: #364D78;
  }
  .forb-page .contractors__sub {
    margin-top: 15px;
    font: normal normal 500 13px/15px Zen Kaku Gothic New;
    letter-spacing: 0.39px;
    color: #364D78;
  }
}
@media only screen and (max-width: 1024px) and (max-width: 399px) {
  .forb-page .contractors__sub {
    font-size: 12px;
  }
}
@media only screen and (max-width: 1024px) {
  .forb-page .forb__content {
    margin-top: 30px;
    flex-direction: column;
  }
  .forb-page .forb__gallery {
    width: 342px;
    height: 257px;
    margin: 0 auto;
  }
  .forb-page .forb__gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
  }
  .forb-page .forb__text {
    width: 341px;
    margin: 0 auto;
  }
  .forb-page .forb__text h3 {
    font: normal normal 500 18px/30px Zen Kaku Gothic New;
    letter-spacing: 0.9px;
    color: #1F3661;
  }
  .forb-page .forb__text p {
    font: normal normal normal 15px/27.5px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #1F3661;
  }
  .forb-page .reason__head h3 {
    font: normal normal bold 18px/30px Zen Kaku Gothic New;
    letter-spacing: 1.44px;
  }
  .forb-page .contractors__worry h3 {
    font: normal normal bold 18px/30px Zen Kaku Gothic New;
    letter-spacing: 1.44px;
  }
  .forb-page .contractors__solution h3 {
    font: normal normal bold 18px/30px Zen Kaku Gothic New;
    letter-spacing: 1.44px;
  }
  .forb-page .contractors__solution h3::before {
    content: "";
    display: block;
    width: 27.5px;
    height: 32.5px;
    background: url(../images/page01/page90/PC/line_orange_left.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: 0px;
    left: -30px;
  }
  .forb-page .contractors__solution h3::after {
    content: "";
    display: block;
    width: 27.5px;
    height: 32.5px;
    background: url(../images/page01/page90/PC/line_orange_right.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: 0px;
    right: -30px;
  }
  .forb-page .benefit__list h3 {
    font: normal normal bold 18px/30px Zen Kaku Gothic New;
    letter-spacing: 1.44px;
  }
  .forb-page .forb-contact h2 {
    font: normal normal bold 18px/30px Zen Kaku Gothic New;
    letter-spacing: 1.44px;
  }
  .forb-page .forb__text h3 {
    margin-bottom: 18px;
  }
  .forb-page .reason {
    padding: 23px 0 64px;
  }
  .forb-page .reason::before {
    content: "";
    display: block;
    width: 100%;
    height: 23px;
    background: url(../images/page01/page90/SMP/nami01_smp.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -22px;
    left: 0;
  }
  .forb-page .reason::after {
    content: "";
    display: block;
    width: 100%;
    height: 9px;
    background: url(../images/page01/page90/SMP/nami02_smp.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: -9px;
    left: 0;
  }
  .forb-page .reason__points {
    grid-template-columns: repeat(2, 170px);
    justify-content: center;
    gap: 18px 14px;
    margin-top: 34px;
  }
  .forb-page .reason__points div {
    width: 175px;
    height: 175px;
    justify-content: start;
    padding-top: 13px;
    font: normal normal 500 30px/35px Poppins;
    letter-spacing: 0.9px;
  }
  .forb-page .reason__points div::before {
    content: "POINT";
    border-bottom: 1px solid #1F3661;
    font: normal normal 500 10px/12px Poppins;
    letter-spacing: 0.5px;
    color: #364D78;
  }
  .forb-page .reason__points div:last-child {
    grid-column: 1/-1;
    justify-self: center;
  }
  .forb-page .reason__points span {
    font: normal normal 500 40px/45px Poppins;
    letter-spacing: 1.2px;
    color: #fff;
    -webkit-text-stroke: 1px #1F3661;
    text-stroke: 1px #4C639E;
  }
  .forb-page .reason__points p {
    color: #1F3661;
    text-align: center;
  }
  .forb-page .reason__points strong {
    display: inline;
    font: normal normal bold 16px/16px Zen Kaku Gothic New;
    letter-spacing: 0.85px;
    color: #F49517;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }
  .forb-page .reason__points em {
    display: inline;
    font: normal normal 500 16px/16px Zen Kaku Gothic New;
    letter-spacing: 0.8px;
    color: #1F3661;
  }
  .forb-page .reason__cards {
    margin-top: 30px;
    border-radius: 16px;
  }
  .forb-page .reason__cards article {
    width: 335px;
    margin: 0 auto;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    padding: 75px 0 42px;
  }
  .forb-page .reason__with-case .reason__case {
    padding: 12px 0 0;
    order: 4;
  }
  .forb-page .reason__case h3 {
    font: normal normal 500 18px/18px Zen Kaku Gothic New;
    letter-spacing: 0.9px;
    color: #1F3661;
    white-space: nowrap;
    margin: 30px calc(50% - 50vw) 20px;
  }
}
@media only screen and (max-width: 1024px) and (max-width: 399px) {
  .forb-page .reason__case h3 {
    font-size: 17px;
  }
}
@media only screen and (max-width: 1024px) {
  .forb-page .reason__case h3::before,
  .forb-page .reason__case h3::after {
    width: 12px;
    height: 12px;
    margin: 0 10px;
  }
  .forb-page .forb-case {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    max-width: 100%;
    margin: 0;
  }
  .forb-page .forb-case + .forb-case {
    padding-top: 28px;
    margin-top: 30px;
    border-top: 2px dotted #B8C0D0;
  }
  .forb-page .reason__head-num {
    position: absolute;
    top: -50px;
    right: 0;
    font: normal normal 500 60px/84px Poppins;
    letter-spacing: 1.8px;
    -webkit-text-stroke: 1.2px #1F3661;
  }
  .forb-page .reason__head h3 {
    max-width: 300px;
    font: normal normal bold 17px/28px Zen Kaku Gothic New;
    letter-spacing: 0.85px;
  }
  .forb-page .reason__head-line {
    padding: 0 10px;
    height: 33px;
    margin-bottom: 1.5px;
    font: normal normal 500 18px/33px Zen Kaku Gothic New;
    letter-spacing: 0.54px;
    color: #FFFFFF;
  }
  .forb-page .reason__cards article > p {
    margin-top: 15px;
    font: normal normal normal 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #1F3661;
  }
  .forb-page .reason__cards article > img {
    width: 285px;
    height: 190px;
    margin: 20px auto 0;
    border-radius: 15px;
    order: 3;
  }
  .forb-page .reason__voice {
    margin-top: 30px;
    order: 4;
  }
  .forb-page .reason__voice h4 {
    display: flex;
    align-items: center;
    gap: 8px;
    font: normal normal 500 18px/18px Zen Kaku Gothic New;
    letter-spacing: 0.9px;
    color: #1F3661;
    margin-bottom: 15px;
  }
  .forb-page .reason__voice h4::before {
    content: "";
    display: block;
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    background: url(../images/page01/page90/PC/bubble.png) no-repeat;
    background-size: contain;
  }
  .forb-page .reason__voice .voice__item {
    width: 333px;
    min-height: 150px;
    padding: 12.5px 15px;
    position: relative;
  }
  .forb-page .reason__voice .voice__item .top {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 0;
  }
  .forb-page .reason__voice .voice__item .top img {
    width: 45px;
    height: 45px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: url(../images/top/about/about-owner.webp) center/cover no-repeat;
  }
  .forb-page .reason__voice .voice__item .top strong {
    font: normal normal 500 15px/15px Zen Kaku Gothic New;
    letter-spacing: 0.75px;
    color: #1F3661;
  }
  .forb-page .reason__voice div p {
    margin-top: 7.5px;
    font: normal normal normal 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #1F3661;
  }
  .forb-page .forb-case__main img {
    height: 220px;
    border-radius: 10px;
  }
  .forb-page .forb-case__arrow {
    width: 34px;
    height: 34px;
  }
  .forb-page .forb-case__arrow--prev {
    left: -12px;
  }
  .forb-page .forb-case__arrow--next {
    right: -12px;
  }
  .forb-page .forb-case__thumbs {
    display: none;
  }
  .forb-page .forb-case__dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 11.5px;
    margin-top: 20px;
  }
  .forb-page .forb-case__dots button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 10px;
    height: 10px;
    padding: 0;
    border: 0;
    background: transparent;
  }
  .forb-page .forb-case__dots button::before {
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #dbdbdb;
  }
  .forb-page .forb-case__dots button.is-active::before {
    width: 10px;
    height: 10px;
    background: #4C639E;
  }
  .forb-page .forb-case__text .forb-case__label {
    font: normal normal 500 12px/12px Poppins;
    letter-spacing: 1.2px;
    color: #B5C3D5;
  }
  .forb-page .forb-case__text .forb-case__label::before {
    width: 6.5px;
    height: 6.5px;
    top: 4.5px;
  }
  .forb-page .forb-case__text h4 {
    margin: 5px 0 15px;
    font: normal normal 500 17px/22px Zen Kaku Gothic New;
    letter-spacing: 0.85px;
    color: #1F3661;
  }
  .forb-page .forb-case__text p {
    font: normal normal normal 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #1F3661;
  }
  .forb-page .forb-case__text p.forb-case__label {
    font: normal normal 500 12px/16px Poppins;
    letter-spacing: 1.2px;
    color: #B5C3D5;
  }
  .forb-page .forb-case__tags {
    gap: 10px;
    margin-bottom: 15px;
  }
  .forb-page .forb-case__tags li {
    font: normal normal 500 12px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.36px;
    color: #1F3661;
  }
  .forb-page .reason__voice div {
    padding: 16px;
  }
  .forb-page .reason__voice div + div {
    margin-top: 12px;
  }
  .forb-page .works {
    padding: 64px 0 54px;
  }
  .forb-page .works__group {
    padding: 0;
  }
  .forb-page .works__group + .works__group {
    margin-top: 43px;
  }
  .forb-page .works__group::before {
    content: "";
    position: absolute;
    top: -25px;
    left: -12.5px;
    width: 75px;
    height: 75px;
    background: #E2E8EE;
  }
  .forb-page .works__group h3 {
    position: relative;
    z-index: 1;
    margin-left: 12px;
    font: normal normal 500 18px/18px Zen Kaku Gothic New;
    letter-spacing: 0.9px;
    color: #1F3661;
  }
  .forb-page .works__images {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 5px;
    margin-top: 9px;
  }
  .forb-page .works__images img {
    width: 185px;
    height: 124px;
    border-radius: 5px;
  }
  .forb-page .works ul {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 20px;
    padding: 20px 15px;
    border-radius: 8px;
    background: #fff;
  }
  .forb-page .works__group:nth-of-type(1) ul {
    height: 225px;
  }
  .forb-page .works__group:nth-of-type(2) ul {
    height: 133px;
  }
  .forb-page .works__group:nth-of-type(3) ul {
    height: 219px;
  }
  .forb-page .works li {
    padding-left: 29px;
    font-size: 15px;
    line-height: 22px;
    letter-spacing: 0.75px;
  }
  .forb-page .works li::before {
    top: 6px;
    width: 18px;
    height: 18px;
    font-size: 11px;
  }
  .forb-page .contents-5 {
    padding: 45px 0;
  }
  .forb-page .contractors {
    padding: 0 0 25px;
  }
  .forb-page .contractors__worry {
    position: relative;
    width: 100%;
    max-width: 400px;
    margin: 30px auto 0;
    padding: 40px 0 40px;
    border-radius: 67px;
  }
  .forb-page .contractors__worry::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -16px;
    width: 52px;
    height: 32px;
    background: #364D78;
    transform: translateX(-50%);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
  }
  .forb-page .contractors__worry h3 {
    text-align: center;
    font: normal normal bold 18px/23px Zen Kaku Gothic New;
    letter-spacing: 1.44px;
    color: #FFFFFF;
  }
  .forb-page .contractors__worry ul {
    display: grid;
    gap: 10px;
    margin: 25px auto 0;
    text-align: left;
    width: 310px;
  }
  .forb-page .contractors__worry li {
    padding-left: 21px;
    text-align: center;
    font: normal normal 500 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #FFFFFF;
    display: block;
    width: fit-content;
  }
  .forb-page .contractors__worry li br {
    display: none;
  }
  .forb-page .contractors__worry li::before {
    content: "";
    top: 1px;
    left: 0;
    width: 16px;
    height: 16px;
    background: url(../images/page01/page90/PC/check_white.png) no-repeat;
    background-size: contain;
    top: 50%;
    transform: translateY(-50%);
    left: -2px;
  }
  .forb-page .contractors__worry p {
    text-align: center;
    font: normal normal normal 15px/27.5px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #FFFFFF;
    margin-top: 25px;
  }
  .forb-page .contractors__solution {
    width: 330px;
    margin: 0 auto;
    gap: 25px;
    margin-top: 42px;
  }
  .forb-page .contractors__solution div p {
    font: normal normal normal 15px/27.5px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #1F3661;
    margin-bottom: 20px;
  }
  .forb-page .contractors__solution div ul {
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    gap: 5px;
  }
  .forb-page .contractors__solution div ul li {
    font: normal normal 500 15px/24px Zen Kaku Gothic New;
    letter-spacing: 0.75px;
    color: #1F3661;
    padding-left: 19px;
    position: relative;
    white-space: nowrap;
  }
  .forb-page .contractors__solution div ul li::before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    background: url(../images/page01/page90/PC/check_orange.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
  }
  .forb-page .contractors__solution img {
    height: 250px;
    border-radius: 10px;
  }
  .forb-page .benefit {
    padding: 45px 0;
  }
  .forb-page .benefit::before {
    content: "";
    display: block;
    width: 100%;
    height: 9px;
    background: url(../images/page01/page90/SMP/nami05_smp.png) no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 0px;
    left: 0;
  }
  .forb-page .benefit__list {
    gap: 25px;
    margin-top: 30px;
  }
  .forb-page .benefit__list article p {
    font: normal normal normal 14px/22.5px Zen Kaku Gothic New;
    letter-spacing: 0.42px;
    color: #1F3661;
    margin-top: 10px;
  }
  .forb-page .benefit__list img {
    height: 174px;
  }
  .forb-page .benefit__list span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    margin: -25px auto 10px;
    border: 1px solid #364D78;
    border-radius: 50%;
    background: #fff;
    font: normal normal 500 18px/35px Poppins;
    letter-spacing: 0.54px;
    color: #4C639E;
    position: relative;
    text-decoration: underline;
    text-underline-offset: 2px;
    padding-bottom: 2px;
  }
  .forb-page .forb-contact {
    padding: 64px 0 70px;
  }
  .forb-page .forb-contact p {
    margin: 18px 0 28px;
  }
  .forb-page .forb-contact a {
    height: 48px;
    min-width: 260px;
  }
  .forb-page .btn-area {
    width: 100%;
    max-width: 395px;
    margin: 0 auto;
    gap: 15px;
    padding: 150px 0 45px;
  }
  .forb-page .btn-area a {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    height: 75px;
    font-size: 12px;
    line-height: 18px;
  }
  .forb-page .btn-area a .for {
    font: normal normal bold 15px/22px Zen Kaku Gothic New;
    letter-spacing: 0.45px;
    color: #1F3661;
    width: 155px;
  }
  .forb-page .btn-area a .for:before {
    width: 8px;
    height: 13px;
    right: -70px;
  }
  .forb-page .btn-area a .ex {
    text-align: center;
    font: normal normal normal 12px/17px Zen Kaku Gothic New;
    letter-spacing: 0.36px;
    color: #1F3661;
  }
  .forb-page .contact-lead {
    width: 360px;
    margin: 0 auto 0;
    padding-top: 58px;
    padding-bottom: 45px;
    position: relative;
  }
  .forb-page .contact-lead .inner {
    text-align: center;
    position: relative;
    z-index: 1;
  }
  .forb-page .contact-lead h2 {
    display: inline-block;
    margin-bottom: 17.5px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 18px;
    font-weight: bold;
    line-height: 23px;
    letter-spacing: 1.44px;
    color: #f49517;
    white-space: nowrap;
    position: relative;
  }
  .forb-page .contact-lead h2::before {
    content: "";
    display: block;
    width: 25.1px;
    height: 26.2px;
    background-image: url(/wp-content/themes/cf_theme/images/page02/page60/contact_burst.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -13.1px;
    left: -28px;
  }
  .forb-page .contact-lead p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 14px;
    font-weight: normal;
    line-height: 22.5px;
    letter-spacing: 0.42px;
    color: #1f3661;
    text-align: center;
  }
  .forb-page .contact-lead .inner::after {
    content: "";
    display: block;
    width: 125px;
    height: 125px;
    background-image: url(/wp-content/themes/cf_theme/images/page02/page60/contact_circle.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -24px;
    right: -13px;
    z-index: -1;
    transform-origin: center;
    animation: page65-contact-circle-rotate 20s linear infinite;
    will-change: transform;
  }
  .forb-page .voice-section__button {
    display: flex;
    align-items: center;
    width: 300px;
    height: 55px;
    margin: 20px auto 0;
    border: 2px solid #1F3661;
    border-radius: 100px;
    color: #1F3661;
    font-size: 15px;
    font-weight: 500;
    line-height: 15px;
    letter-spacing: 0.48px;
    padding-left: 60px;
    text-decoration: none;
  }
  .forb-page .voice-section__button::after {
    content: "";
    width: 16.2184867859px;
    height: 10px;
    margin-left: 20px;
    background-color: currentColor;
    mask: url("../images/top/voice/PC/right_blue.png") center/contain no-repeat;
    -webkit-mask: url("../images/top/voice/PC/right_blue.png") center/contain no-repeat;
  }
}
