/* screen - index */

.index {
  background-color: var(--white);
  min-height: 12000px;
  min-width: 1440px;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.index .index-item {
  height: 1443px;
  left: 448px;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 992px;
}

.index .header {
  align-items: center;
  display: flex;
  height: 148px;
  left: 2px;
  position: absolute;
  top: 0;
  width: 1438px;
}

.index .header01 {
  gap: 2979px;
}

.index .header-logo-text {
  height: 29.02px;
  margin-left: 88px;
  margin-top: 24px;
  width: 342.04px;
}

.index .header-deco-strip {
  height: 80px;
  margin-top: 2202px;
  width: 1439px;
}

.index .network {
  height: 672px;
  left: 1020px;
  position: absolute;
  top: 943px;
  width: 420px;
}

.index .hero-collage-pc {
  height: 824px;
  left: 0;
  position: absolute;
  top: 1049px;
  width: 467px;
}

.index .westside-3 {
  display: flex;
  flex-direction: column;
  gap: 70px;
  height: 488px;
  left: 200px;
  position: absolute;
  top: 1281px;
  width: 1040px;
}

.index .features-heading-block {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 25px;
  height: 121px;
  margin-top: -35px;
  position: relative;
  width: 1040px;
}

.index .section-heading-with-icon {
  height: 70px;
  position: relative;
  width: 597px;
}

.index .features-heading-wrapper {
  display: flex;
  height: 70px;
  left: 9px;
  position: absolute;
  top: 0;
  width: 588px;
}

.index .section-title-with-accent {
  height: 70px;
  position: relative;
  width: 590px;
}

.index .text {
  align-items: center;
  display: flex;
  height: 70px;
  justify-content: center;
  letter-spacing: 3.00px;
  line-height: normal;
}

.index .section-heading-accent-group {
  display: flex;
  height: 59px;
  left: 0;
  position: absolute;
  top: 11px;
  width: 588px;
}

.index .heading-accent-line-inner {
  display: flex;
  height: 59px;
  width: 588px;
}

.index .section-heading-underline-features {
  height: 2.6px;
  margin-left: 46.7px;
  margin-top: 55.7px;
  width: 542.6px;
}

.index .features-header-icon {
  height: 78.11%;
  left: 0;
  position: absolute;
  top: 21.43%;
  width: 10.55%;
}

.index .text-2-1 {
  align-self: stretch;
  letter-spacing: 1.60px;
  line-height: 25.6px;
  position: relative;
}

.index .span {
  letter-spacing: 0.26px;
}

.index .features-icons-row {
  height: 308px;
  margin-left: 1.1px;
  position: relative;
  width: 1031.8px;
}

.index .feature-icon-circle-1 {
  left: 0;
}

.index .feature-1-content {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 23.1px;
  left: 87px;
  position: absolute;
  top: 74px;
  width: 132px;
}

.index .feature-24h-icon {
  height: 69.3px;
  position: relative;
  width: 69.3px;
}

.index .text-3-1 {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 23.1px;
  font-weight: 400;
  letter-spacing: 1.85px;
  line-height: 34.6px;
  margin-left: -11.55px;
  margin-right: -11.55px;
  position: relative;
  text-align: center;
  width: 155.28px;
}

.index .span-1 {
  letter-spacing: 0.43px;
}

.index .span1-1 {
  color: var(--cyprus);
  font-size: 20.5px;
  font-weight: 500;
  letter-spacing: 0.34px;
  line-height: 30.8px;
}

.index .feature-icon-circle-2 {
  left: 362px;
}

.index .feature-2-content {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 23.1px;
  left: 449px;
  position: absolute;
  top: 74px;
  width: 132px;
}

.index .icon-1 {
  background-image: url(../img/price-icon-graph-line.svg);
  background-size: 100% 100%;
  height: 65.45px;
  position: relative;
  width: 57.75px;
}

.index .text-4-1 {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 23.1px;
  font-weight: 400;
  letter-spacing: 1.85px;
  line-height: 34.6px;
  margin-left: -53.90px;
  margin-right: -53.90px;
  position: relative;
  text-align: center;
  width: 239.98px;
}

.index .span0 {
  color: var(--cyprus);
  letter-spacing: 0.43px;
}

.index .feature-icon-circle-3 {
  left: 724px;
}

.index .feature-3-content {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 15px;
  height: 77px;
  left: 811px;
  position: absolute;
  top: 74px;
  width: 132px;
}

.index .icon2-1 {
  height: 77px;
  position: relative;
  width: 83.42px;
}

.index .price-icon-graph-line {
  height: 40.47%;
  left: 0;
  position: absolute;
  top: 59.53%;
  width: 99.99%;
}

.index .price-icon-graph-bar {
  height: 53.89%;
  left: 39.35%;
  position: absolute;
  top: 0;
  width: 49.98%;
}

.index .price-icon-graph-dot {
  height: 30.00%;
  left: 53.66%;
  position: absolute;
  top: 12.63%;
  width: 21.36%;
}

.index .text-5-1 {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 23.1px;
  font-weight: 400;
  letter-spacing: 1.85px;
  line-height: 34.6px;
  margin-bottom: -83.72px;
  margin-left: -53.99px;
  margin-right: -53.99px;
  position: relative;
  text-align: center;
  width: 239.98px;
}

.index .variations {
  height: 650px;
  left: 200px;
  position: absolute;
  top: 1897px;
  width: 1040px;
}

.index .variations-heading-block {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 25px;
  left: 0;
  position: absolute;
  top: 0;
  width: 722px;
}

.index .variations-heading-wrapper {
  height: 70px;
  position: relative;
  width: 588px;
}

.index .variations-heading-accent {
  height: 59px;
  top: 11px;
  width: 589px;
}

.index .variations-desc-block {
  gap: 5px;
  height: 335px;
  width: 695px;
}

.index .text-1 {
  align-self: stretch;
  letter-spacing: 1.60px;
  line-height: 16px;
  position: relative;
}

.index .span0-3 {
  letter-spacing: 0.26px;
  line-height: 25.6px;
}

.index .table-types-image {
  height: 433px;
  left: 393px;
  position: absolute;
  top: 217px;
  width: 647px;
}

.index .registaration {
  height: 931px;
  left: 0;
  position: absolute;
  top: 2515px;
  width: 1440px;
}

.index .text-7 {
  left: 200px;
  letter-spacing: 0.96px;
  line-height: 25.6px;
  position: absolute;
  top: 745px;
  width: 828px;
}

.index .registration-heading-block {
  align-items: flex-start;
  display: inline-flex;
  flex-direction: column;
  gap: 25px;
  left: 198px;
  position: absolute;
  top: 156px;
}

.index .text-8 {
  align-items: center;
  display: flex;
  height: 70px;
  justify-content: center;
  letter-spacing: 3.00px;
  line-height: normal;
}

.index .registration-heading-accent {
  height: 59px;
  top: 10px;
  width: 596px;
}

.index .web {
  letter-spacing: 1.60px;
  line-height: 25.6px;
  position: relative;
  width: 828px;
}

.index .step-1 {
  align-items: center;
  display: inline-flex;
  gap: 10px;
  justify-content: center;
  left: calc(50.00% - 499px);
  position: absolute;
  top: 373px;
}

.index .view {
  border: 1px solid;
  border-color: var(--fern);
  height: 135.48px;
  position: relative;
}

.index .reg-step-text-area {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 8px;
  left: 9px;
  position: absolute;
  top: 38px;
  width: 121px;
}

.index .text-9 {
  align-self: stretch;
  color: #024149;
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-xl);
  font-weight: 700;
  letter-spacing: 0.80px;
  line-height: 25.6px;
  margin-top: -1.00px;
  position: relative;
  text-align: center;
}

.index .flex-container {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 5px;
  height: 19px;
}

.index .text-2 {
  align-self: stretch;
  letter-spacing: 0.20px;
  line-height: 7.0px;
  position: relative;
  text-align: center;
}

.index .span-3 {
  letter-spacing: 0.02px;
}

.index .step-badge-wrapper {
  height: 20.86%;
  left: 0;
  position: absolute;
  top: 7.38%;
  width: 31.00%;
}

.index .step-badge-bg {
  background-color: var(--white);
  height: 99.08%;
  left: 0;
  position: absolute;
  top: 0;
  width: 90.48%;
}

.index .number-1 {
  height: 81.39%;
  left: 7.80%;
  letter-spacing: 1.30px;
  line-height: 26px;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 78.57%;
}

.index .st {
  width: 30.95%;
}

.index .step-2 {
  align-items: center;
  display: inline-flex;
  gap: 10px;
  justify-content: center;
  left: calc(50.00% + 146px);
  position: absolute;
  top: 373px;
}

.index .text_label {
  align-self: stretch;
  letter-spacing: 1.60px;
  line-height: 25.6px;
  margin-top: -1.00px;
  position: relative;
  text-align: center;
}

.index .step-badge-number {
  height: 81.39%;
  left: 7.80%;
  letter-spacing: 1.30px;
  line-height: 26px;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 78.57%;
}

.index .st-1 {
  width: 35.71%;
}

.index .step-3 {
  align-items: center;
  display: inline-flex;
  gap: 10px;
  justify-content: center;
  left: calc(50.00% - 284px);
  position: absolute;
  top: 373px;
}

.index .step-badge-number-2 {
  height: 81.39%;
  left: 7.80%;
  letter-spacing: 1.30px;
  line-height: 26px;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 78.57%;
}

.index .st-2 {
  width: 42.86%;
}

.index .step-4 {
  align-items: center;
  display: inline-flex;
  gap: 10px;
  justify-content: center;
  left: calc(50.00% + 361px);
  position: absolute;
  top: 373px;
}

.index .step-badge-number-5 {
  height: 81.39%;
  left: 7.80%;
  letter-spacing: 1.30px;
  line-height: 26px;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 78.57%;
}

.index .st-3 {
  width: 35.71%;
}

.index .step-5 {
  align-items: center;
  display: inline-flex;
  gap: 10px;
  justify-content: center;
  left: calc(50.00% - 69px);
  position: absolute;
  top: 373px;
}

.index .reg-step-agree-text {
  gap: 5px;
  height: 31px;
}

.index .step-badge-number-3 {
  height: 81.39%;
  left: 7.80%;
  letter-spacing: 1.30px;
  line-height: 26px;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 78.57%;
}

.index .st-4 {
  width: 38.10%;
}

.index .step-6 {
  display: flex;
  height: 1040px;
  left: 706px;
  position: absolute;
  top: -25px;
  transform: rotate(-90.00deg);
  width: 27px;
}

.index .reg-flow-arrow {
  height: 27px;
  margin-left: -506.5px;
  margin-top: 506.5px;
  transform: rotate(90.00deg);
  width: 1040px;
}

.index .step-7 {
  align-items: center;
  display: inline-flex;
  gap: 10px;
  justify-content: center;
  left: calc(50.00% - 275px);
  position: absolute;
  top: 551px;
}

.index .step-badge-number-6 {
  height: 81.39%;
  left: 7.80%;
  letter-spacing: 1.30px;
  line-height: 26px;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 78.57%;
}

.index .st-5 {
  width: 35.71%;
}

.index .step-8 {
  display: flex;
  height: 135px;
  left: calc(50.00% - 72px);
  position: absolute;
  top: 551px;
  width: 135px;
}

.index .view-1 {
  background-color: var(--pale-oyster);
  display: flex;
  flex: 1;
}

.index .reg-complete-card-text {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 8px;
  height: 40px;
  margin-left: 6px;
  margin-top: 48px;
  position: relative;
  width: 121px;
}

.index .reg-complete-text-block {
  gap: 5px;
  height: 43px;
}

.index .text-3 {
  align-self: stretch;
  letter-spacing: 1.60px;
  line-height: 19.2px;
  position: relative;
  text-align: center;
}

.index .text-10 {
  align-self: stretch;
  letter-spacing: 0.20px;
  line-height: 7.0px;
  margin-bottom: -17.00px;
  position: relative;
  text-align: center;
}

.index .step-9 {
  display: flex;
  height: 1040px;
  left: 706px;
  position: absolute;
  top: 153px;
  transform: rotate(-90.00deg);
  width: 27px;
}

.index .reg-flow-arrow-2 {
  height: 27px;
  margin-left: -506.5px;
  margin-top: 506.5px;
  transform: rotate(90.00deg);
  width: 1040px;
}

.index .westside {
  left: 796px;
  letter-spacing: 1.60px;
  line-height: 25.6px;
  position: absolute;
  top: 597px;
}

.index .span-4 {
  letter-spacing: 0.26px;
  text-decoration: underline;
}

.index .btn {
  align-items: center;
  background: linear-gradient(0deg, rgba(100, 191, 77, 1) 0%, rgba(100, 191, 77, 1) 100%), linear-gradient(49deg, rgba(123, 196, 241, 1) 0%, rgba(233, 199, 198, 1) 100%);
  border-radius: 529.31px;
  box-shadow: 0px 4px 4px 4px #0000000f;
  display: flex;
  gap: 34.51px;
  height: 302px;
  justify-content: center;
  overflow: hidden;
  padding: 79.4px 156.15px;
  width: 307px;
  margin-top: 150px;
}

.index .btn-inner-layout {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 10px;
  margin-left: -104.65px;
  margin-right: -104.65px;
  position: relative;
}

.index .surname {
  color: #000;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 28px;
  font-weight: 500;
  height: 74px;
  line-height: 34px;
  margin-top: -1.00px;
  text-align: center;
  width: 180px;
}

.index .btn-arrow-icon {
  aspect-ratio: 0.73;
  height: 22.34px;
  margin-right: -1.67px;
  position: relative;
  width: 17.34px;
}

.index .section-divider-green-band {
  background-color: var(--cyprus);
  height: 479px;
  left: 0;
  position: absolute;
  top: 9195px;
  width: 1440px;
}

.index .houtouse {
  height: 1137px;
  left: 199px;
  position: absolute;
  top: 3618px;
  width: 1050px;
}

.index .frame-427319 {
  align-items: flex-start;
  display: inline-flex;
  flex-direction: column;
  gap: 25px;
  left: 0;
  position: absolute;
  top: 0;
}

.index .howtouse-heading-text-block {
  height: 71px;
  position: relative;
  width: 591px;
}

.index .text-10-1 {
  align-items: center;
  display: flex;
  height: 70px;
  justify-content: center;
  letter-spacing: 3.00px;
  line-height: normal;

}

.index .howtouse-heading-accent {
  height: 58px;
  top: 13px;
  width: 590px;
}

.index .web-1 {
  letter-spacing: 1.60px;
  line-height: 25.6px;
  position: relative;
  width: 828px;
}

.index .howto-step-num-block-1 {
  height: 7.85%;
  left: 17.33%;
  position: absolute;
  top: 16.62%;
  width: 13.81%;
}

.index .step-10 {
  height: 51.52%;
  left: 0;
  letter-spacing: 1.92px;
  line-height: 41.6px;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 40.69%;
}

.index .number-2 {
  align-items: center;
  display: flex;
  height: 93.02%;
  justify-content: center;
  left: 55.17%;
  letter-spacing: 8.32px;
  line-height: 41.6px;
  position: absolute;
  top: 6.98%;
  width: 42.07%;
}

.index .howto-step1-photo {
  height: 205px;
  left: 2px;
  position: absolute;
  top: 272px;
  width: 308px;
}

.index .qr {
  left: 2px;
  letter-spacing: 1.30px;
  line-height: 20.8px;
  position: absolute;
  top: 514px;
  width: 308px;
}

.index .span-5 {
  letter-spacing: 0.17px;
}

.index .howto-step-label-badge-1 {
  height: 26px;
  left: 2px;
  position: absolute;
  top: 483px;
  width: 64px;
}

.index .howto-step-label-bg-1 {
  width: 62px;
}

.index .text-11 {
  align-items: center;
  display: flex;
  height: 22px;
  justify-content: center;
  left: 10px;
  letter-spacing: 2.00px;
  line-height: 34.0px;
  position: absolute;
  top: 1px;
  white-space: nowrap;
  width: 43px;
}

.index .line-9 {
  height: 1px;
  left: 3px;
  position: absolute;
  top: 532px;
  width: 189px;
}

.index .howto-step-2 {
  height: 409px;
  left: 367px;
  position: absolute;
  top: 187px;
  width: 311px;
}

.index .howto-step-num-block {
  height: 21.84%;
  left: 57.88%;
  position: absolute;
  top: 0;
  width: 42.77%;
}

.index .step {
  height: 51.52%;
  left: 0;
  letter-spacing: 1.92px;
  line-height: 41.6px;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 44.36%;
}

.index .number {
  align-items: center;
  display: flex;
  height: 93.02%;
  justify-content: center;
  left: 51.13%;
  letter-spacing: 8.32px;
  line-height: 41.6px;
  position: absolute;
  top: 6.98%;
  width: 45.86%;
}

.index .howto-step-photo {
  height: 205px;
  left: 0;
  position: absolute;
  top: 83px;
  width: 308px;
}

.index .text_label-1 {
  left: 0;
  letter-spacing: 1.30px;
  line-height: 20.8px;
  position: absolute;
  top: 325px;
  width: 308px;
}

.index .howto-step-label-badge {
  height: 26px;
  left: 0;
  position: absolute;
  top: 294px;
  width: 106px;
}

.index .howto-step-label-bg {
  background-color: var(--gallery);
  height: 26px;
  left: 0;
  position: absolute;
  top: 0;
  width: 104px;
}

.index .text-12 {
  align-items: center;
  display: flex;
  height: 22px;
  justify-content: center;
  left: 9px;
  letter-spacing: 2.00px;
  line-height: 34.0px;
  position: absolute;
  top: 1px;
  white-space: nowrap;
  width: 86px;
}

.index .line-7 {
  height: 1px;
  left: 176px;
  position: absolute;
  top: 343px;
  width: 127px;
}

.index .line-8 {
  height: 1px;
  left: 1px;
  position: absolute;
  top: 363px;
  width: 90px;
}

.index .howto-step-3 {
  height: 409px;
  left: 731px;
  position: absolute;
  top: 182px;
  width: 311px;
}

.index .text_label-2 {
  left: 0;
  letter-spacing: 1.30px;
  line-height: 20.8px;
  position: absolute;
  top: 325px;
  width: 308px;
}

.index .text-1-1 {
  align-items: center;
  display: flex;
  height: 22px;
  justify-content: center;
  left: 8px;
  letter-spacing: 2.00px;
  line-height: 34.0px;
  position: absolute;
  top: 1px;
  white-space: nowrap;
  width: 89px;
}

.index .line-6 {
  height: 1px;
  left: 73px;
  position: absolute;
  top: 343px;
  width: 226px;
}

.index .howto-step-4 {
  height: 409px;
  left: 0;
  position: absolute;
  top: 692px;
  width: 311px;
}

.index .howto-step-photo-alt {
  height: 50.16%;
  left: 0;
  position: absolute;
  top: 20.24%;
  width: 99.04%;
}

.index .text_label-3 {
  left: 0;
  letter-spacing: 1.30px;
  line-height: 20.8px;
  position: absolute;
  top: 325px;
  width: 308px;
}

.index .line-10 {
  height: 1px;
  left: 117px;
  position: absolute;
  top: 364px;
  width: 170px;
}

.index .howto-step-5 {
  height: 409px;
  left: 368px;
  position: absolute;
  top: 691px;
  width: 311px;
}

.index .web-2 {
  left: 0;
  letter-spacing: 1.30px;
  line-height: 20.8px;
  position: absolute;
  top: 325px;
  width: 308px;
}

.index .howto-step-label-badge-5 {
  height: 26px;
  left: 0;
  position: absolute;
  top: 294px;
  width: 60px;
}

.index .howto-step-label-bg-5 {
  width: 58px;
}

.index .text-15 {
  align-items: center;
  display: flex;
  height: 22px;
  justify-content: center;
  left: 8px;
  letter-spacing: 2.00px;
  line-height: 34.0px;
  position: absolute;
  top: 1px;
  white-space: nowrap;
  width: 42px;
}

.index .line-11 {
  height: 1px;
  left: 158px;
  position: absolute;
  top: 343px;
  width: 133px;
}

.index .line-12 {
  height: 1px;
  left: 29px;
  position: absolute;
  top: 386px;
  width: 248px;
}

.index .howto-step-6 {
  height: 409px;
  left: 732px;
  position: absolute;
  top: 691px;
  width: 311px;
}

.index .text-16 {
  left: 0;
  letter-spacing: 1.30px;
  line-height: 22.1px;
  position: absolute;
  top: 325px;
  width: 308px;
}

.index .howto-step-label-badge-6 {
  height: 26px;
  left: 0;
  position: absolute;
  top: 294px;
  width: 123px;
}

.index .howto-step-label-bg-6 {
  width: 121px;
}

.index .text-17 {
  align-items: center;
  display: flex;
  height: 22px;
  justify-content: center;
  left: 8px;
  line-height: 34.0px;
  position: absolute;
  top: 1px;
  white-space: nowrap;
  width: 110px;
}

.index .span-6 {
  letter-spacing: 0.40px;
}

.index .span-7 {
  letter-spacing: 0;
}

.index .line-13 {
  height: 1px;
  left: 35px;
  position: absolute;
  top: 365px;
  width: 211px;
}

.index .price-1 {
  height: 809px;
  left: 197px;
  position: absolute;
  top: 5019px;
  width: 1043px;
}

.index .price-heading-block {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 25px;
  left: 0;
  position: absolute;
  top: 0;
  width: 1041px;
}

.index .price-heading-text-block {
  height: 70px;
  position: relative;
  width: 569px;
}

.index .text-18 {
  align-items: center;
  color: var(--white);
  display: flex;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 30px;
  font-weight: 500;
  height: 70px;
  justify-content: center;
  letter-spacing: 3.00px;
  line-height: normal;
}

.index .price-heading-accent {
  height: 74.29%;
  top: 24.99%;
  width: 99.65%;
}

.index .price-heading-accent-line {
  left: 27px;
  position: absolute;
  top: 51px;
  width: 540px;
}

.index .section-heading-underline-price {
  width: 542.6px;
}

.index .price-heading-icon-large {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 9.35%;
}

.index .price-heading-icon-small {
  height: 57.69%;
  left: 2.65%;
  position: absolute;
  top: 23.08%;
  width: 4.06%;
}

.index .text-19 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-xl);
  font-weight: 400;
  letter-spacing: 1.60px;
  line-height: 25.6px;
  position: relative;
  width: 828px;
}

.index .normal-price-card-bg {
  height: 348px;
  left: 3px;
  position: absolute;
  top: 221px;
  width: 1040px;
}

.index .text-20 {
  left: 222px;
  letter-spacing: 1.92px;
  line-height: 38.4px;
  position: absolute;
  top: 317px;
  white-space: nowrap;
}

.index .span-8 {
  letter-spacing: 0.46px;
}

.index .text-21 {
  left: 716px;
  letter-spacing: 1.92px;
  line-height: 38.4px;
  position: absolute;
  top: 319px;
  white-space: nowrap;
}

.index .normal-price-label-bar {
  background-color: var(--fern);
  border-radius: 3px;
  height: 122px;
  left: 57px;
  position: absolute;
  top: 329px;
  width: 35px;
}

.index .text-22 {
  left: 9px;
  letter-spacing: 1.28px;
  line-height: 32px;
  position: absolute;
  top: 13px;
  white-space: nowrap;
}

.index .text-23 {
  left: 9px;
  letter-spacing: 1.28px;
  line-height: 32px;
  position: absolute;
  top: 34px;
  white-space: nowrap;
}

.index .text-24 {
  left: 9px;
  letter-spacing: 1.28px;
  line-height: 32px;
  position: absolute;
  top: 54px;
  white-space: nowrap;
}

.index .text-25 {
  left: 9px;
  letter-spacing: 1.28px;
  line-height: 32px;
  position: absolute;
  top: 74px;
  white-space: nowrap;
}

.index .pack-price-label-bar {
  background-color: var(--fern);
  border-radius: 3px;
  height: 122px;
  left: 541px;
  position: absolute;
  top: 329px;
  width: 35px;
}

.index .text-26 {
  left: 9px;
  letter-spacing: 1.28px;
  line-height: 32px;
  position: absolute;
  top: 7px;
  white-space: nowrap;
}

.index .text-27 {
  left: 9px;
  letter-spacing: 1.28px;
  line-height: 32px;
  position: absolute;
  top: 22px;
  white-space: nowrap;
}

.index .text-28 {
  left: 9px;
  letter-spacing: 1.28px;
  line-height: 32px;
  position: absolute;
  top: 42px;
  white-space: nowrap;
}

.index .text-29 {
  left: 9px;
  letter-spacing: 1.28px;
  line-height: 32px;
  position: absolute;
  top: 61px;
  white-space: nowrap;
}

.index .text-30 {
  left: 9px;
  letter-spacing: 1.28px;
  line-height: 32px;
  position: absolute;
  top: 78px;
  white-space: nowrap;
}

.index .normal-price-card-display {
  align-items: center;
  border: 1.48px solid;
  border-color: var(--fern);
  border-radius: 3px;
  display: flex;
  gap: 12.96px;
  height: 85px;
  justify-content: center;
  left: 108px;
  position: absolute;
  top: 366px;
  width: 400px;
}

.index .normal-price-amount-block {
  height: 85.16px;
  margin-bottom: -0.08px;
  margin-top: -0.08px;
  position: relative;
  width: 118.48px;
}

.index .number-3 {
  left: 1px;
  letter-spacing: 4.26px;
  line-height: 85.2px;
  position: absolute;
  top: 0;
  white-space: nowrap;
}

.index .text-31 {
  left: 89px;
  letter-spacing: 2.96px;
  line-height: 59.2px;
  position: absolute;
  top: 19px;
  white-space: nowrap;
}

.index .text-32 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 42.6px;
  font-weight: 300;
  letter-spacing: 4.26px;
  line-height: 85.2px;
  margin-top: -1.48px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.index .normal-price-per-time-block {
  height: 85.16px;
  margin-bottom: -0.08px;
  margin-top: -0.08px;
  position: relative;
  width: 90.72px;
}

.index .normal-price-per-time-inner {
  display: flex;
  gap: 5.1px;
  width: 91px;
}

.index .number-4 {
  height: 85px;
  letter-spacing: 4.26px;
  line-height: 85.2px;
  margin-left: 0;
  margin-top: 0;
  white-space: nowrap;
  width: 56px;
}

.index .text-33 {
  height: 59.24px;
  letter-spacing: 2.96px;
  line-height: 59.2px;
  margin-top: 18.5px;
  white-space: nowrap;
  width: 29.62px;
}

.index .pack-price-amount-block {
  border: 1.48px solid;
  border-color: var(--fern);
  border-radius: 3px;
  display: flex;
  height: 86px;
  left: 589px;
  position: absolute;
  top: 366px;
  width: 400px;
}

.index .pack-price-number-unit {
  display: flex;
  gap: 7.2px;
  margin-left: 124px;
  width: 156.19px;
}

.index .number-5 {
  height: 85px;
  letter-spacing: 4.26px;
  line-height: 85.2px;
  white-space: nowrap;
  width: 115px;
}

.index .text-34 {
  height: 59px;
  letter-spacing: 2.96px;
  line-height: 59.2px;
  margin-top: 16.7px;
  white-space: nowrap;
  width: 30px;
}

.index .text-35 {
  left: 605px;
  letter-spacing: 0.72px;
  line-height: 16.8px;
  position: absolute;
  top: 459px;
  width: 395px;
}

.index .text-36 {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 12px;
  font-weight: 400;
  left: 59px;
  letter-spacing: 0.72px;
  line-height: 8.0px;
  position: relative;
  top: 524px;
  width: 603px;
}

.index .span-9 {
  letter-spacing: 0.09px;
}

.index .span1-3 {
  color: var(--buff);
  letter-spacing: 0.09px;
}

.index .text_label-4 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-xl);
  font-weight: 400;
  left: 46px;
  letter-spacing: 1.60px;
  line-height: 25.6px;
  position: absolute;
  top: 715px;
  width: 958px;
}

.index .poket-carom {
  left: 36px;
  letter-spacing: 2.60px;
  line-height: 8.0px;
  position: absolute;
  top: 260px;
  width: 409px;
}

.index .span0-1 {
  letter-spacing: 0.68px;
}

.index .span-10 {
  letter-spacing: 0.20px;
}

.index .pack-price-card-bg {
  height: 202px;
  left: 3px;
  position: absolute;
  top: 621px;
  width: 1040px;
}

.index .priceattention {
  color: var(--black);
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-xxxxl);
  font-weight: 500;
  left: 36px;
  letter-spacing: 2.60px;
  line-height: 8.0px;
  position: absolute;
  top: 659px;
  width: 329px;
}

.index .span1-4 {
  color: var(--white);
  font-size: 24px;
  letter-spacing: 0.58px;
}

.index .span2-1 {
  color: var(--white);
  font-size: 12px;
  letter-spacing: 0.15px;
}

.index .access {
  height: 1052px;
  left: 199px;
  position: absolute;
  top: 6105px;
  width: 963px;
}

.index .access-heading-wrapper {
  height: 70px;
  position: relative;
  width: 562px;
}

.index .access-heading-text-block {
  height: 70px;
  left: 19px;
  position: absolute;
  top: 0;
  width: 545px;
}

.index .text-37 {
  align-items: center;
  display: flex;
  height: 70px;
  justify-content: center;
  letter-spacing: 3.00px;
  line-height: normal;
 }

.index .access-heading-accent {
  display: flex;
  height: 1px;
  top: 68px;
  width: 543px;
}

.index .access-heading-accent-line {
  margin-top: 0;
  width: 543px;
}

.index .section-heading-underline-access {
  width: 545.6px;
}

.index .access-transport-icon {
  background-image: url(../img/footer-email-icon-envelope.svg);
  background-size: 100% 100%;
  height: 77.63%;
  left: 0;
  position: absolute;
  top: 21.63%;
  width: 6.76%;
}

.index .access-heading-icon-inner {
  height: 36.90%;
  left: 23.55%;
  position: absolute;
  top: 14.76%;
  width: 52.76%;
}

.index .text-38 {
  letter-spacing: 1.60px;
  line-height: 25.6px;
  position: relative;
  width: 828px;
}

.index .text-39 {
  color: var(--black);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 24px;
  font-weight: 700;
  left: 64px;
  letter-spacing: 2.40px;
  line-height: 40.8px;
  position: absolute;
  top: 204px;
  white-space: nowrap;
  width: 333px;
}

.index .text-40 {
  left: 64px;
  letter-spacing: 1.40px;
  line-height: 25.2px;
  position: absolute;
  top: 260px;
  white-space: nowrap;
  width: 347px;
}

.index .access-transport-list {
  align-items: flex-start;
  display: inline-flex;
  flex-direction: column;
  gap: 16.2px;
  left: 64px;
  position: absolute;
  top: 353px;
}

.index .access-transport-row {
  align-items: flex-start;
  align-self: stretch;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 17.28px;
  position: relative;
  width: 100%;
}

.index .access-transport-label {
  align-items: flex-start;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 7.56px;
  position: relative;
  width: 38.89px;
}

.index .text-4 {
  align-self: stretch;
  height: 25.93px;
  letter-spacing: 1.40px;
  line-height: 25.2px;
  margin-top: -1.08px;
  position: relative;
  white-space: nowrap;
}

.index .access-transport-divider-car {
  height: 1.08px;
  position: relative;
  width: 19px;
}

.index .text-42 {
  align-self: stretch;
  height: 25.93px;
  letter-spacing: 1.40px;
  line-height: 23.8px;
  position: relative;
  white-space: nowrap;
}

.index .access-by-train {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 16.2px;
  left: 64px;
  position: absolute;
  top: 456px;
  width: 339px;
}

.index .access-transport-divider {
  align-self: stretch;
  height: 1.08px;
  position: relative;
  width: 100%;
}

.index .access-detail-text-block {
  align-items: flex-start;
  align-self: stretch;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  position: relative;
  width: 100%;
}

.index .text-45 {
  align-self: stretch;
  height: 25.93px;
  letter-spacing: 1.40px;
  line-height: 25.2px;
  position: relative;
  white-space: nowrap;
}

.index .access-by-bus {
  gap: 16.2px;
  left: 64px;
  position: absolute;
  top: 584px;
  width: 339px;
}

.index .access-bus-text {
  align-self: stretch;
  height: 49.69px;
  position: relative;
  width: 100%;
}

.index .text-47 {
  align-self: stretch;
  height: 25.93px;
  letter-spacing: 1.40px;
  line-height: 19.6px;
  margin-top: -1.08px;
  position: relative;
}

.index .access-map-container-pc {
  height: 300px;
  left: 60px;
  position: absolute;
  top: 712px;
  width: 400px;
  margin-top: 20px;
}

.index .text-48 {
  color: var(--black);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 24px;
  font-weight: 700;
  left: 579px;
  letter-spacing: 2.40px;
  line-height: 40.8px;
  position: absolute;
  top: 204px;
  white-space: nowrap;
  width: 333px;
}

.index .parking-info-text {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 16.2px;
  left: 579px;
  position: absolute;
  top: 260px;
  width: 290px;
}

.index .text-50 {
  align-self: stretch;
  height: 53px;
  letter-spacing: 1.20px;
  line-height: 20px;
  position: relative;
}

/* 追加 */
.index .text-50 div.notion {
  font-size: 0.8rem;
  color:#666;
  margin:8px 0 8px;
}

.index .text-50 ul li {
	margin :8px 0 8px;
	color:chocolate
}

.index .parking-photo-pc {
  height: 300px;
  left: 579px;
  position: absolute;
  top: 712px;
  width: 400px;
  margin-top: 20px;
}

/* .index .rectangle-1676 {
  height: 1982px;
  left: 0;
  position: absolute;
  top: 7133px;
  width: 1440px;
} */

.index .faq-attention-heading-block {
  align-items: center;
  display: inline-flex;
  flex-direction: column;
  gap: 25px;
  left: 199px;
  position: absolute;
  top: 7286px;
}

.index .faq-heading-wrapper {
  height: 104px;
  position: relative;
  width: 590px;
}

.index .qa-4 {
  height: 104px;
  left: 0;
  position: absolute;
  top: 0;
  width: 104px;
}

.index .faq-heading-text-block {
  height: 70px;
  left: 50px;
  position: absolute;
  top: 9px;
  width: 542px;
}

.index .text-54 {
  align-items: center;
  display: flex;
  height: 70px;
  justify-content: center;
  left: 57px;
  letter-spacing: 3.00px;
  line-height: normal;
  position: absolute;
  top: 0;
  /* width: 427px; */
}

.index .faq-heading-accent {
  display: flex;
  height: 1px;
  top: 68px;
  width: 540px;
}

.index .faq-heading-accent-line {
  width: 540px;
}

.index .section-heading-underline-faq {
  width: 542.6px;
}

.index .text-55 {
  letter-spacing: 1.60px;
  line-height: 25.6px;
  position: relative;
  width: 828px;
}

.index .attention {
  left: 233px;
  letter-spacing: 2.60px;
  line-height: 8.0px;
  position: absolute;
  top: 7543px;
  width: 298px;
}

.index .span1 {
  color: var(--rangitoto);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.58px;
}

.index .span2 {
  color: var(--rangitoto);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.15px;
}

.index .span3 {
  color: var(--rangitoto);
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-l);
  font-weight: 500;
  letter-spacing: 0.20px;
}

.index .faq {
  left: 233px;
  letter-spacing: 2.60px;
  line-height: 8.0px;
  position: absolute;
  top: 7830px;
  width: 298px;
}

.index .btn-register-cta-pc {
  align-items: center;
  background-color: rgba(100, 191, 77, 1);
  /* background: linear-gradient(0deg, rgba(100, 191, 77, 1) 0%, rgba(100, 191, 77, 1) 100%), linear-gradient(49deg, rgba(123, 196, 241, 1) 0%, rgba(233, 199, 198, 1) 100%); */
  border-radius: 529.31px;
  box-shadow: 0px 4px 4px 4px #0000000f;
  display: flex;
  gap: 34.51px;
  height: 302px;
  justify-content: center;
  left: calc(50.00% + 215px);
  overflow: hidden;
  padding: 79.4px 156.15px;
  position: absolute;
  top: 9105px;
  width: 307px;
}

/* 追加 */
.index .btn-register-cta-pc:hover {
  background-color: #322B24;
}
.index .btn-register-cta-pc:hover .surname{
  color: #fff;
}

.index .btn-register-arrow-pc {
  height: 22.34px;
  margin-right: -1.67px;
  width: 17.34px;
}

.index .btn-line-cta {
  align-items: center;
  background-color: rgba(100, 191, 77, 1);
  /* background: linear-gradient(0deg, rgba(100, 191, 77, 1) 0%, rgba(100, 191, 77, 1) 100%); */
  border: 1px solid;
  border-color: var(--pale-oyster);
  border-radius: 271.42px;
  box-shadow: 0px 4px 4px #0000000f;
  display: flex;
  gap: 17.7px;
  height: 155px;
  justify-content: center;
  left: calc(50.00% + 467px);
  overflow: hidden;
  padding: 40.71px 80.07px;
  position: absolute;
  top: 9016px;
  width: 157px;
}

/* 追加 */
.index .btn-line-cta:hover {
  background-color: #004539;
}
.index .btn-line-cta:hover .line {
  color: #ffffff;
  /* transition: color 0.3s ease; */
}

.index .btn-line-inner-layout {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 5.13px;
  height: 37px;
  margin-left: -53.64px;
  margin-right: -53.64px;
  position: relative;
}

.index .line {
  color: var(--black);
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-l);
  font-weight: 500;
  height: 37.95px;
  letter-spacing: 0.70px;
  line-height: 17.4px;
  margin-top: -0.99px;
  position: relative;
  text-align: center;
  width: 92.3px;
}

.index .btn-line-arrow-pc {
  height: 11.52px;
  margin-right: -0.86px;
  width: 8.84px;
}

.index .address {
  display: flex;
  flex-direction: column;
  gap: 13px;
  height: 129px;
  left: 1151px;
  position: absolute;
  top: 9497px;
  width: 214px;
}

.index .frame-4 {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 5px;
  height: 94px;
  position: relative;
  width: 201.35px;
}

.index .text-72 {
  letter-spacing: 1.40px;
  line-height: 28px;
  margin-right: -13.65px;
  margin-top: -1.38px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.index .text-73 {
  letter-spacing: 1.40px;
  line-height: 28px;
  margin-right: -6.65px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.index .httpswestern-companycom {
  letter-spacing: 0.70px;
  line-height: 28px;
  margin-right: -14.65px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
  color: #fff;
}

.index .footer-contact-box {
  align-items: center;
  border: 0.4px solid;
  border-color: var(--white);
  border-radius: 2px;
  display: flex;
  gap: 37px;
  height: 22px;
  justify-content: center;
  position: relative;
  width: 214px;
}

.index .footer-contact-inner {
  align-items: center;
  display: flex;
  gap: 32px;
  height: 22px;
  padding: 10px;
  position: relative;
  width: 167px;
}

.index .text-74 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-s);
  font-weight: 400;
  letter-spacing: 1.00px;
  line-height: 20px;
  margin-bottom: -8.00px;
  margin-top: -10.00px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.index .footer-contact-divider {
  height: 14px;
  margin-bottom: -6.00px;
  margin-top: -6.00px;
  position: relative;
  width: 1px;
}

.index .mail-send-envelope-e {
  height: 14px;
  margin-bottom: -6.00px;
  margin-top: -6.00px;
  position: relative;
  width: 14px;
}

.index .mail-send-envelope-e-1 {
  height: 75.00%;
  left: 3.57%;
  position: relative;
  top: 12.50%;
  width: 92.86%;
}

.index .footer-email-icon-envelope {
  height: 109.52%;
  left: -3.85%;
  position: absolute;
  top: -4.76%;
  width: 107.69%;
}

.index .footer-email-icon-flap {
  height: 44.64%;
  left: -3.85%;
  position: absolute;
  top: 7.14%;
  width: 107.69%;
}

.index .logo_white-1 {
  height: 47px;
  left: 1292px;
  position: absolute;
  top: 9440px;
  width: 67px;
}

.index .text-75 {
  left: calc(50.00% - 592px);
  letter-spacing: 1.40px;
  line-height: normal;
  position: absolute;
  top: 9607px;
}

.index .privacy-policy {
  color: var(--white);
  font-family: var(--font-family-gibson-regular);
  font-size: var(--font-size-xl);
  font-weight: 400;
  left: calc(50.00% - 489px);
  letter-spacing: 0;
  line-height: normal;
  position: absolute;
  top: 9607px;
  white-space: nowrap;
}

.index .logomark-1 {
  height: 210px;
  left: 128px;
  position: absolute;
  top: 9360px;
  width: 209px;
}

.index .menu-box {
  background-color: var(--cyprus);
  border-radius: 2px;
  height: 232px;
  left: 0;
  position: absolute;
  top: 890px;
  width: 1441px;
}

.index .nav-menu-item-features {
  border-radius: 3px;
  display: flex;
  height: 95px;
  left: 197px;
  position: absolute;
  top: 33px;
  width: 134px;
}

.index .nav-item-features-inner {
  display: flex;
  height: 95px;
  width: 134px;
}

.index .nav-item-features-text {
  height: 72px;
  width: 134px;
}

.index .text-76 {
  height: 39px;
  letter-spacing: 2.20px;
  line-height: 52.8px;
  margin-top: -1.00px;
  position: relative;
  white-space: nowrap;
  width: 110px;
}

.index .features {
  height: 33px;
  letter-spacing: 1.40px;
  line-height: 33.6px;
  position: relative;
  white-space: nowrap;
  width: 68px;
}

.index .nav-menu-item-variations {
  display: flex;
  height: 95px;
  left: 484px;
  position: absolute;
  top: 33px;
  width: 134px;
}

.index .nav-item-variations-text {
  height: 70px;
  width: 134px;
}

.index .text-77 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 22px;
  font-weight: 400;
  height: 37px;
  letter-spacing: 2.20px;
  line-height: 52.8px;
  margin-top: -1.00px;
  position: relative;
  white-space: nowrap;
  width: 96px;
}

.index .variations-1 {
  height: 33px;
  letter-spacing: 1.40px;
  line-height: 33.6px;
  position: relative;
  white-space: nowrap;
  width: 78px;
}

.index .nav-menu-item-registration {
  display: flex;
  height: 95px;
  left: 772px;
  position: absolute;
  top: 33px;
  width: 169px;
}

.index .nav-item-registration-text {
  height: 71px;
  width: 175px;
}

.index .text-78 {
  height: 38px;
  letter-spacing: 2.20px;
  line-height: 52.8px;
  margin-top: -1.00px;
  position: relative;
  white-space: nowrap;
  width: 145px;
}

.index .registration {
  height: 33px;
  letter-spacing: 1.40px;
  line-height: 33.6px;
  position: relative;
  white-space: nowrap;
  width: 95px;
}

.index .nav-menu-item-howtouse {
  display: flex;
  height: 95px;
  left: 1079px;
  position: absolute;
  top: 33px;
  width: 169px;
}

.index .nav-item-howtouse-text {
  height: 72px;
  width: 175px;
}

.index .text-79 {
  height: 38px;
  letter-spacing: 2.20px;
  line-height: 52.8px;
  margin-top: -1.00px;
  position: relative;
  white-space: nowrap;
  width: 119px;
}

.index .how-to-use {
  letter-spacing: 1.40px;
  line-height: 33.6px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.index .nav-menu-item-price {
  display: flex;
  height: 95px;
  left: 178px;
  position: absolute;
  top: 118px;
  width: 169px;
}

.index .nav-item-inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 70px;
  justify-content: center;
  position: relative;
  width: 175px;
}

.index .text-80 {
  height: 36px;
  letter-spacing: 2.20px;
  line-height: 52.8px;
  margin-top: -1.00px;
  position: relative;
  white-space: nowrap;
  width: 95px;
}

.index .surname-1 {
  line-height: 33.6px;
  white-space: nowrap;
  width: fit-content;
}

.index .nav-menu-item-access {
  display: flex;
  height: 95px;
  left: 467px;
  position: absolute;
  top: 118px;
  width: 169px;
}

.index .text-81 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_hebrew);
  font-size: 22px;
  font-weight: 500;
  height: 36px;
  letter-spacing: 2.20px;
  line-height: 52.8px;
  margin-top: -1.00px;
  position: relative;
  white-space: nowrap;
  width: 95px;
}

.index .place {
  letter-spacing: 1.40px;
  line-height: 33.6px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.index .nav-menu-item-attention {
  display: flex;
  height: 95px;
  left: 772px;
  position: absolute;
  top: 118px;
  width: 169px;
}

.index .text-82 {
  height: 36px;
  letter-spacing: 2.20px;
  line-height: 52.8px;
  margin-top: -1.00px;
  position: relative;
  white-space: nowrap;
  width: 145px;
}

.index .attention-1 {
  letter-spacing: 1.40px;
  line-height: 33.6px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.index .nav-menu-item-faq {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  left: 1072px;
  position: absolute;
  top: 118px;
  width: 175px;
}

.index .text-83 {
  height: 34px;
  letter-spacing: 2.20px;
  line-height: 52.8px;
  margin-top: -1.00px;
  position: relative;
  white-space: nowrap;
  width: 145px;
}

.index .faq-1 {
  letter-spacing: 1.40px;
  line-height: 33.6px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.index .nav-menu-divider-1 {
  height: 30px;
  left: 1015px;
  object-fit: cover;
  position: absolute;
  top: 54px;
  width: 1px;
}

.index .nav-menu-divider-2 {
  height: 30px;
  left: 1015px;
  object-fit: cover;
  position: absolute;
  top: 135px;
  width: 1px;
}

.index .nav-menu-divider-5 {
  height: 30px;
  left: 691px;
  object-fit: cover;
  position: absolute;
  top: 54px;
  width: 1px;
}

.index .nav-menu-divider-6 {
  height: 30px;
  left: 691px;
  object-fit: cover;
  position: absolute;
  top: 135px;
  width: 1px;
}

.index .nav-menu-divider-3 {
  height: 30px;
  left: 411px;
  object-fit: cover;
  position: absolute;
  top: 54px;
  width: 1px;
}

.index .nav-menu-divider-4 {
  height: 30px;
  left: 411px;
  object-fit: cover;
  position: absolute;
  top: 135px;
  width: 1px;
}

.index .hero-bg-sp {
  height: 890px;
  left: calc(50.00% - 720px);
  position: absolute;
  top: 0;
  width: 1440px;
}

.index .fv-main-catchcopy {
  height: 109px;
  left: 69px;
  position: absolute;
  top: 305px;
  width: 858px;
}

.index .fv-catchcopy-text {
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent;
  background: linear-gradient(90deg, rgba(0, 69, 57, 1) 37%, rgba(31, 107, 63, 1) 62%, rgba(100, 191, 77, 1) 100%);
  background-clip: text;
  color: transparent;
  font-family: var(--font-family-poppins);
  font-size: 86px;
  font-weight: 400;
  left: 0;
  line-height: 108.4px;
  position: absolute;
  text-fill-color: transparent;
  top: 0;
  white-space: nowrap;
}

.index .fv-catchcopy-text span {
  -webkit-text-fill-color: inherit;
}

.index .hero-collage-sp-a {
  height: 681px;
  left: 0;
  position: absolute;
  top: 339px;
  width: 591px;
}

.index .hero-collage-sp-b {
  height: 625px;
  left: 0;
  position: absolute;
  top: 0;
  width: 612px;
}

.index .header01-1 {
  gap: 3029px;
  margin-left: -1px;
  margin-top: -66px;
}

.index .header-0 {
  height: 107px;
  left: 0;
  position: absolute;
  top: -18px;
  /* width: 100%; */
  z-index: 100000;
}

.index .header-logo-text-sp {
  height: 29.02px;
  margin-left: 39px;
  margin-top: 40px;
  width: 342.04px;
}

.index .header-deco-strip-sp {
  height: 80px;
  margin-top: 2235px;
  width: 1439px;
}

.index .fv-badge-1 {
  align-items: flex-end;
  background-image: url(../img/feature-icon-circle-2.png);
  background-size: 100% 100%;
  display: flex;
  height: 200px;
  justify-content: flex-end;
  left: 69px;
  min-width: 200px;
  padding: 48.2px 28.3px;
  position: absolute;
  top: 480px;
}

.index .fv-badge-inner {
  display: flex;
  width: 143px;
}

.index .fv-badge-text-outer {
  display: flex;
  width: 144.53px;
}

.index .fv-badge-text-24h {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 22px;
  font-weight: 400;
  height: 95px;
  letter-spacing: 1.76px;
  line-height: 35.2px;
  text-align: center;
  width: 142.53px;
}

.index .span0-2 {
  letter-spacing: 0.39px;
}

.index .span-13 {
  letter-spacing: 0.20px;
  line-height: 25.6px;
}

.index .fv-badge-2 {
  align-items: flex-end;
  background-image: url(../img/feature-icon-circle-2.png);
  background-size: 100% 100%;
  display: flex;
  height: 200px;
  justify-content: flex-end;
  left: 287px;
  min-width: 200px;
  padding: 48.2px 28.3px;
  position: absolute;
  top: 480px;
}

.index .ok {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 22px;
  font-weight: 400;
  height: 95px;
  letter-spacing: 1.76px;
  line-height: 35.2px;
  text-align: center;
  width: 142.53px;
}

.index .span1-5 {
  color: var(--pale-oyster);
  font-size: var(--font-size-xl);
  font-weight: 700;
  letter-spacing: 0.20px;
  line-height: 25.6px;
}

.index .span2-2 {
  color: var(--pale-oyster);
  font-weight: 700;
  letter-spacing: 0.39px;
}

.index .fv-badge-3 {
  align-items: flex-end;
  background-image: url(../img/feature-icon-circle-2.png);
  background-size: 100% 100%;
  display: flex;
  height: 200px;
  justify-content: flex-end;
  left: 506px;
  min-width: 200px;
  padding: 14.2px 28.3px;
  position: absolute;
  top: 480px;
}

.index .text-86 {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-xl);
  font-weight: 400;
  height: 130px;
  letter-spacing: 1.28px;
  line-height: 16px;
  text-align: center;
  width: 142.53px;
}

.index .span1-6 {
  letter-spacing: 0.39px;
  line-height: 32.3px;
}

.index .span2-3 {
  letter-spacing: 0.39px;
  line-height: 35.2px;
}

.index .reg-complete-badge {
  height: 176px;
  left: 687px;
  position: absolute;
  top: 3066px;
  width: 156px;
}

.index .feature-icon-circle {
  height: 308px;
  position: absolute;
  top: 0;
  width: 308px;
}

.index .flex-col-layout {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
}

.index .access-transport-text-modifier {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
}

.index .nav-item-inner-modifier {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}

.index .heading-accent-line-modifier {
  display: flex;
  height: 1px;
}

.index .section-heading-accent-modifier {
  left: 0;
  position: absolute;
}

.index .header01-2 {
  display: flex;
  width: 1439px;
}

.index .section-heading-underline-sp {
  height: 2.6px;
  margin-left: -1.3px;
  margin-top: -1.3px;
}

.index .howto-step-label-bg-modifier {
  background-color: var(--gallery);
  height: 26px;
  left: 0;
  position: absolute;
  top: 0;
}

.index .st-6 {
  height: 56.62%;
  left: 38.75%;
  letter-spacing: 0.80px;
  line-height: 16px;
  position: absolute;
  top: 28.31%;
  white-space: nowrap;
}

.index .surname-2 {
  letter-spacing: 1.40px;
  position: relative;
}

.index .btn-arrow-sp {
  aspect-ratio: 0.73;
  position: relative;
}

.index .view-2 {
  border-radius: 67.74px;
  width: 135.48px;
}
/* screen - spu95design */

.spu95design {
  background-color: var(--white);
  height: 100vh;
  min-width: 100%;
  position: relative;
  width: 100%;

  display: flex;
  flex-direction: column;
  align-items: center; /* これで子要素がすべて中央に寄ります */
  width: 100%;
}

.spu95design .fv {
  height: 560px; /* 600 */
  /* left: 0; */
  position: absolute;
  top: 0;
  width: 100%;
}

.spu95design .header-1 {
  height: 44px;
  /* left: 0; */
  position: absolute;
  top: 0;
  width: 100%;
}

.spu95design .fv-main-catchcopy-sp {
  height: 45px;
  left: 20px;
  position: absolute;
  top: 111px;
  width: 353px;
}

.spu95design .fv-catchcopy-text-sp {
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent;
  background: linear-gradient(90deg, rgba(0, 69, 57, 1) 37%, rgba(31, 107, 63, 1) 62%, rgba(100, 191, 77, 1) 100%);
  background-clip: text;
  color: transparent;
  font-family: var(--font-family-poppins);
  font-size: 35px;
  font-weight: 400;
  left: 0;
  line-height: 44.1px;
  position: absolute;
  text-fill-color: transparent;
  top: 0;
  white-space: nowrap;
}

.spu95design .fv-catchcopy-text-sp span {
  -webkit-text-fill-color: inherit;
}

.spu95design .span-14 {
  letter-spacing: 0.49px;
}

.spu95design .span-15 {
  letter-spacing: 0;
}

.spu95design .span-16 {
  color: var(--black);
  font-family: var(--font-family-felix_titling-regular);
  letter-spacing: 0;
}

.spu95design .text-87 {
  color: var(--cyprus);
  font-family: var(--font-family-poppins);
  font-size: 35.3px;
  font-weight: 400;
  left: 77px;
  letter-spacing: 1.41px;
  line-height: 44.5px;
  position: absolute;
  text-shadow: 1.22px 1.22px 1.22px #ffffff;
  top: 1px;
  white-space: nowrap;
}

.spu95design .text-88 {
  color: var(--cyprus);
  font-family: var(--font-family-poppins);
  font-size: 35.3px;
  font-weight: 400;
  left: 138px;
  letter-spacing: 1.41px;
  line-height: 44.5px;
  position: absolute;
  text-shadow: 1.22px 1.22px 1.22px #ffffff;
  top: 1px;
  white-space: nowrap;
}

.spu95design .text-89 {
  /* -webkit-text-stroke: 0.6px var(--white); */
  left: 19px;
  letter-spacing: 1.04px;
  line-height: 29px;
  position: absolute;
  text-align: justify;
  text-shadow: 0.8px 0.8px 0px #ffffff;
  top: 156px;
  white-space: nowrap;
  width: 350px;
}

.spu95design .fv-open-announcement {
  height: 34px;
  left: 19px;
  position: absolute;
  top: 63px;
  width: 358px;
}

.spu95design .fv-highlight-line-top {
  background-color: var(--buff);
  height: 7px;
  left: 1px;
  position: absolute;
  top: 9px;
  width: 350px;
}

.spu95design .fv-highlight-line-bottom {
  background-color: var(--buff);
  height: 7px;
  left: 1px;
  position: absolute;
  top: 26px;
  width: 138px;
}

.spu95design .wests {
  left: 0;
  letter-spacing: 1.04px;
  line-height: 17.4px;
  position: absolute;
  text-align: justify;
  top: 0;
  width: 356px;
}

.spu95design .fv-badge-1-sp {
  /* --- 正円を維持するための設定 --- */
  width: 110px;           /* 幅を固定 */
  height: 110px;          /* 高さを固定 */
  min-width: 110px;       /* 収縮防止 */
  min-height: 110px;      /* 収縮防止 */
  
  /* --- 背景画像の設定 --- */
  background-image: url(../img/feature-icon-circle-3.png);
  background-size: contain;    /* 画像の比率を保って収める */
  background-repeat: no-repeat;
  background-position: center; /* 中央に配置 */
  
  /* --- 中のテキストを中央に寄せる設定 --- */
  display: flex;
  align-items: center;    /* 上下中央（元のflex-endから変更） */
  justify-content: center; /* 左右中央（元のflex-endから変更） */
  text-align: center;     /* 文字自体を中央揃え */
  
  /* --- 配置の設定 --- */
  position: absolute;
  left: 21px;
  top: 209px;
  
  /* 余計なパディングとアスペクト比設定を削除 */
  padding: 0; 
  aspect-ratio: 1 / 1; 
}
/* .spu95design .fv-badge-1-sp {
  align-items: flex-end;
  aspect-ratio: 1;
  background-image: url(../img/feature-icon-circle-3.png);
  background-size: 100% 100%;
  display: flex;
  height: 110px;
  justify-content: flex-end;
  left: 21px;
  min-width: 110px;
  padding: 27.2px 15.6px;
  position: absolute;
  top: 209px;
} */

.spu95design .fv-badge-inner-sp {
  display: flex;
  height: 51px;
  width: 78px;
}

.spu95design .fv-badge-text-outer-sp {
  display: flex;
  width: 80.35px;
}

.spu95design .fv-badge-text-24h-sp {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 11.2px;
  font-weight: 400;
  height: 51.5px;
  letter-spacing: 0.90px;
  line-height: 18.0px;
  text-align: center;
  width: 78.35px;
}

.spu95design .span-17 {
  letter-spacing: 0.10px;
}

.spu95design .span-18 {
  letter-spacing: 0.04px;
  line-height: 12.0px;
}

.spu95design .fv-badge-2-sp {
  width: 110px;           /* 幅を固定 */
  height: 110px;          /* 高さを固定 */
  min-width: 110px;       /* 収縮防止 */
  min-height: 110px;      /* 収縮防止 */
  background-image: url(../img/feature-icon-circle-3.png);
  background-size: contain;    /* 画像の比率を保って収める */
  background-repeat: no-repeat;
  background-position: center; /* 中央に配置 */
  display: flex;
  align-items: center;    /* 上下中央（元のflex-endから変更） */
  justify-content: center; /* 左右中央（元のflex-endから変更） */
  text-align: center;     /* 文字自体を中央揃え */
  position: absolute;
  left: 21px;
  top: 326px;
  padding: 0; 
  aspect-ratio: 1 / 1;
}
/* .spu95design .fv-badge-2-sp {
  align-items: flex-end;
  aspect-ratio: 1;
  background-image: url(../img/feature-icon-circle-3.png);
  background-size: 100% 100%;
  display: flex;
  height: 110px;
  justify-content: flex-end;
  left: 21px;
  min-width: 110px;
  padding: 27.2px 15.6px;
  position: absolute;
  top: 326px;
} */

.spu95design .ok-1 {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 11.2px;
  font-weight: 400;
  height: 51.5px;
  letter-spacing: 0.90px;
  line-height: 18.0px;
  text-align: center;
  width: 78.35px;
}

.spu95design .span1-8 {
  color: var(--shingle-fawn);
  font-size: 7.5px;
  font-weight: 700;
  letter-spacing: 0.04px;
  line-height: 12.0px;
}

.spu95design .span2-6 {
  color: var(--shingle-fawn);
  font-weight: 700;
  letter-spacing: 0.10px;
}

.spu95design .fv-badge-3-sp {
  width: 110px;           /* 幅を固定 */
  height: 110px;          /* 高さを固定 */
  min-width: 110px;       /* 収縮防止 */
  min-height: 110px;      /* 収縮防止 */
  background-image: url(../img/feature-icon-circle-3.png);
  background-size: contain;    /* 画像の比率を保って収める */
  background-repeat: no-repeat;
  background-position: center; /* 中央に配置 */
  display: flex;
  align-items: center;    /* 上下中央（元のflex-endから変更） */
  justify-content: center; /* 左右中央（元のflex-endから変更） */
  text-align: center;     /* 文字自体を中央揃え */
  position: absolute;
  left: 21px;
  top: 441px;
  padding: 0; 
  aspect-ratio: 1 / 1;
}
/* .spu95design .fv-badge-3-sp {
  align-items: flex-end;
  aspect-ratio: 1;
  background-image: url(../img/feature-icon-circle-3.png);
  background-size: 100% 100%;
  display: flex;
  height: 110px;
  justify-content: flex-end;
  left: 21px;
  min-width: 110px;
  padding: 6.0px 15.6px;
  position: absolute;
  top: 441px;
} */

.spu95design .fv-badge-3-inner-sp {
  display: flex;
  height: 73px;
  width: 78px;
}

.spu95design .text-90 {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 7.5px;
  font-weight: 400;
  height: 73.24px;
  letter-spacing: 0.60px;
  line-height: 20.5px;
  text-align: center;
  width: 78.35px;
}

.spu95design .span1-9 {
  letter-spacing: 0.10px;
  line-height: 16.5px;
}

.spu95design .span2-7 {
  letter-spacing: 0.10px;
  line-height: 18.0px;
}

.spu95design .hero-collage-sp-c {
  height: 0;
  left: 0;
  position: absolute;
  top: 0;
  width: 58.22%;
}

.spu95design .feature-1-item-sp {
  align-items: flex-start;
  display: inline-flex;
  flex-direction: column;
  gap: 5.4px;
  justify-content: center;
  left: 113px;
  position: absolute;
  top: 1075px;
}

.spu95design .feature-icon-circle-2 {
  height: 166.2px;
  position: relative;
  width: 166.2px;
}

.spu95design .feature-3-icon-wrapper-sp {
  height: 42px;
  left: 438px;
  position: absolute;
  top: 40px;
  width: 71px;
}

.spu95design .feature-1-content-sp {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 12.47px;
  left: 47px;
  position: absolute;
  top: 40px;
  width: 71px;
}

.spu95design .feature-24h-icon-sp {
  height: 37.4px;
  position: relative;
  width: 37.4px;
}

.spu95design .text-91 {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-m);
  font-weight: 400;
  letter-spacing: 1.04px;
  line-height: 19.5px;
  margin-left: -11.84px;
  margin-right: -11.84px;
  position: relative;
  text-align: center;
  width: 95px;
}

.spu95design .span-19 {
  letter-spacing: 0.14px;
}

.spu95design .feature-icon-circle-3-sp {
  height: 166px;
  left: 204px;
  position: absolute;
  top: 1240px;
  width: 166px;
}

.spu95design .icon2-1-1 {
  height: 42px;
  left: 261px;
  position: absolute;
  top: 1280px;
  width: 45px;
}

.spu95design .price-icon-graph-line-sp {
  height: 40.47%;
  left: 0;
  position: absolute;
  top: 59.53%;
  width: 99.99%;
}

.spu95design .price-icon-graph-bar-sp {
  height: 53.89%;
  left: 39.35%;
  position: absolute;
  top: 0;
  width: 49.98%;
}

.spu95design .price-icon-graph-dot-sp {
  height: 30.00%;
  left: 53.66%;
  position: absolute;
  top: 12.63%;
  width: 21.36%;
}

.spu95design .text-92 {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-m);
  font-weight: 400;
  left: 219px;
  letter-spacing: 1.04px;
  line-height: 19.5px;
  position: absolute;
  text-align: center;
  top: 1329px;
  width: 129px;
}

.spu95design .feature-icon-circle-2-sp {
  height: 166px;
  left: 19px;
  position: absolute;
  top: 1240px;
  width: 166px;
}

.spu95design .feature-2-content-sp {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 12.47px;
  left: 66px;
  position: absolute;
  top: 1280px;
  width: 71px;
}

.spu95design .icon-1-1 {
  background-image: url(../img/price-heading-icon-small-sp.svg);
  background-size: 100% 100%;
  height: 35.32px;
  position: relative;
  width: 31.16px;
}

.spu95design .text-93 {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-m);
  font-weight: 400;
  letter-spacing: 1.04px;
  line-height: 19.5px;
  margin-left: -29.09px;
  margin-right: -29.09px;
  position: relative;
  text-align: center;
  width: 129.5px;
}

/* 追加 */
.spu95design .features-wrapper-sp {
  position: absolute;
  top: 0px;
  left: 50%;
  transform: translateX(-50%); /* これで「このカタマリごと」中央へ */
  
  /* 3つの円が並ぶのに必要な横幅を指定 */
  /* 画像の通りだと大体 360px〜390px 程度かと思います */
  width: 375px; 
  height: 200px; /* 中身が収まる高さ */
  
  pointer-events: none; /* 念のため背景の誤クリック防止 */
}

/* 中身の要素はクリックできるように戻す */
.spu95design .features-wrapper-sp div, 
.spu95design .features-wrapper-sp img {
  pointer-events: auto;
}

/* もし個別のパーツの left が 400px など大きな値になっていたら、
 この wrapper の中での相対位置（例: 0px, 130px, 260pxなど）に修正してください */

.spu95design .network-1 {
  height: 420px;
  right: 0px;
  position: absolute;
  top: 777px;
  width: 254px;
}

.spu95design .features-section-sp {
  display: flex;
  flex-direction: column;
  gap: 13.4px;
  height: 89px;
  left: 20px;
  position: absolute;
  top: 936px;
  width: 350px;
}

.spu95design .features-heading-outer-sp {
  height: 40.96px;
  position: relative;
}

.spu95design .features-heading-wrapper-sp {
  display: flex;
  height: 41px;
  left: 6px;
  top: 0;
  justify-content: center;
}

.spu95design .features-title-with-accent-sp {
  height: 40.96px;
  position: relative;
  width: 345.75px;
}

.spu95design .text-95 {
  align-items: center;
  color: var(--black);
  display: flex;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 22px;
  font-weight: 500;
  height: 23px;
  justify-content: center;
  left: 54px;
  letter-spacing: 2.20px;
  line-height: normal;
  position: absolute;
  top: 6px;
  white-space: nowrap;
  width: 197px;
}

.spu95design .section-heading-accent-modifier {
  display: flex;
  height: 41px;
  top: 0;
  width: 344px;
}

.spu95design .heading-accent-line-modifier {
  display: flex;
  height: 40.96px;
  width: 343.75px;
}

.spu95design .section-heading-underline-sp {
  /* height: 1.8px; */
  margin-left: 32.8px;
  margin-top: 38.5px;
  width: 311.8px;
}

.spu95design .features-header-icon-sp {
    left: 10px;
    position: absolute;
    top: 6px;
    width: 46px;
}

.spu95design .features-heading-block-sp {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 17.36px;
  height: 35px;
  position: relative;
}

.spu95design .text-94 {
  height: 35px;
  letter-spacing: 1.40px;
  line-height: 16.8px;
  margin-top: -0.69px;
  position: relative;
  width: 350px;
}

.spu95design .span-20 {
  letter-spacing: 0.20px;
}

.spu95design .table-types-image-sp {
  height: 234px;
  /* left: 20px; */
  position: absolute;
  top: 1692px;
  width: 100%;
}

.spu95design .variations-section-sp {
    display: flex;
    flex-direction: column;
    gap: 12.7px;
    height: 99px;
    justify-content: center;
    align-items: center;
}

.spu95design .variations-heading-wrapper-sp {
  display: flex;
}

.spu95design .variations-title-with-accent-sp {
  height: 51.31px;
}

.spu95design .text-97 {
  align-items: center;
  display: flex;
  height: 51px;
  justify-content: center;
  
  letter-spacing: 2.00px;
  line-height: normal;
 /*
  position: absolute;
 left: 61px; 
  top: 0;
  width: 208px;*/
}

.spu95design .variations-heading-accent-sp {
  height: 43px;
  top: -45px;
  width: 352px;
  position: relative !important;
  height: 43px;
}

.spu95design .variations-desc-sp {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 17.36px;
  height: 35px;
  margin-left: 1px;
  position: relative;
  width: 350px;
}

.spu95design .text-96 {
  height: 35px;
  letter-spacing: 1.40px;
  line-height: 16.8px;
  margin-top: -0.69px;
  position: relative;
  width: 350px;
}

.spu95design .reg-flow-arrow-sp {
  height: 1205px;
  left: 104px;
  position: absolute;
  top: 2119px;
  width: 30px;
}

.spu95design .step-12 {
  align-items: center;
  display: inline-flex;
  gap: 11.15px;
  justify-content: center;
  left: calc(50.00% - 76px);
  position: absolute;
  top: 2119px;
}

.spu95design .view-2 {
  border: 1.11px solid;
  border-color: var(--fern);
}

.spu95design .reg-step-text-area-sp {
  align-items: center;
  gap: 8.92px;
  left: 10px;
  position: absolute;
  top: 43px;
  width: 135px;
}

.spu95design .text-98 {
  align-self: stretch;
  color: #024149;
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-xxl);
  font-weight: 700;
  letter-spacing: 0.90px;
  line-height: 28.8px;
  margin-top: -1.11px;
  position: relative;
  text-align: center;
}

.spu95design .flex-col-layout {
  gap: 5.57px;
  height: 22px;
}

.spu95design .text-14 {
  align-self: stretch;
  letter-spacing: 0.22px;
  line-height: 7.7px;
  position: relative;
  text-align: center;
}

.spu95design .span-21 {
  letter-spacing: 0.02px;
}

.spu95design .step-badge-wrapper-sp {
  height: 20.86%;
  left: 0;
  position: absolute;
  top: 7.38%;
  width: 30.70%;
}

.spu95design .step-badge-bg-sp {
  background-color: var(--white);
  height: 99.08%;
  left: 0;
  position: absolute;
  top: 0;
  width: 91.37%;
}

.spu95design .number-7 {
  height: 81.39%;
  left: 7.87%;
  letter-spacing: 1.45px;
  line-height: 29px;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 79.35%;
}

.spu95design .st-6 {
  width: 30.20%;
}

.spu95design .step-13 {
  align-items: center;
  display: inline-flex;
  gap: 11.15px;
  justify-content: center;
  left: calc(50.00% - 76px);
  position: absolute;
  top: 2641px;
}

.spu95design .text_label-5 {
  align-self: stretch;
  letter-spacing: 1.80px;
  line-height: 28.8px;
  margin-top: -1.11px;
  position: relative;
  text-align: center;
}

.spu95design .span2-4 {
  letter-spacing: 0.02px;
  line-height: 7.8px;
}

.spu95design .st-7 {
  width: 34.52%;
}

.spu95design .step-14 {
  align-items: center;
  display: inline-flex;
  gap: 11.15px;
  justify-content: center;
  left: calc(50.00% - 76px);
  position: absolute;
  top: 2293px;
}

.spu95design .st-8 {
  width: 43.15%;
}

.spu95design .step-15 {
  align-items: center;
  display: inline-flex;
  gap: 11.15px;
  justify-content: center;
  left: calc(50.00% - 76px);
  position: absolute;
  top: 2814px;
}

.spu95design .st-9 {
  width: 34.52%;
}

.spu95design .step-16 {
  align-items: center;
  display: inline-flex;
  gap: 11.15px;
  justify-content: center;
  left: calc(50.00% - 76px);
  position: absolute;
  top: 2467px;
}

.spu95design .reg-step-agree-text-sp {
  gap: 5.57px;
  height: 36px;
}

.spu95design .st-10 {
  width: 38.83%;
}

.spu95design .step-17 {
  align-items: center;
  display: inline-flex;
  gap: 11.15px;
  justify-content: center;
  left: calc(50.00% - 76px);
  position: absolute;
  top: 2988px;
}

.spu95design .st-11 {
  width: 34.52%;
}

.spu95design .step-18 {
  align-items: flex-start;
  display: inline-flex;
  gap: 11.15px;
  justify-content: center;
}

.spu95design .view-3 {
  background-color: var(--pale-oyster);
}

.spu95design .reg-complete-card-text-sp {
  align-items: center;
  gap: 8.92px;
  height: 45px;
  left: 7px;
  position: relative;
  top: 53px;
  width: 135px;
}

.spu95design .reg-complete-text-block-sp {
  gap: 5.57px;
  height: 50px;
}

.spu95design .text-41 {
  align-self: stretch;
  letter-spacing: 1.80px;
  line-height: 21.6px;
  position: relative;
  text-align: center;
}

.spu95design .span-22 {
  letter-spacing: 0.32px;
}

.spu95design .text-44 {
  align-self: stretch;
  letter-spacing: 0.22px;
  line-height: 7.8px;
  margin-bottom: -21.22px;
  position: relative;
  text-align: center;
}

.spu95design .btn-1 {
  left: 84px;
  top: 3471px;
}

.spu95design .btn-inner-layout-sp {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 7.27px;
  margin-left: -76.02px;
  margin-right: -76.02px;
  position: relative;
}

.spu95design .surname-2 {
  color: var(--black);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 20.3px;
  font-weight: 500;
  height: 53.78px;
  letter-spacing: 1.02px;
  line-height: 24.7px;
  margin-top: -0.73px;
  position: relative;
  text-align: center;
  width: 130.82px;
}

.spu95design .btn-arrow-sp {
  height: 16.32px;
  margin-right: -1.21px;
  width: 12.53px;
}

.spu95design .text-99 {
  left: 120px;
  letter-spacing: 1.20px;
  line-height: 16.8px;
  position: absolute;
  top: 3327px;
  /* width: 147px; */
}

.spu95design .span0-4 {
  letter-spacing: 0.14px;
  text-decoration: underline;
}

.spu95design .text-100 {
  left: 68px;
  letter-spacing: 1.10px;
  line-height: 17.6px;
  position: absolute;
  top: 3401px;
  width: 253px;
  left: 50%;
  font-size: 12px;
}

.spu95design .registration-section-sp {
  display: flex;
  flex-direction: column;
  gap: 23.1px;
  height: 108px;
  left: 18px;
  position: absolute;
  top: 1971px;
  width: 352px;
}

.spu95design .registration-heading-outer-sp {
  height: 49.88px;
  position: relative;
}

.spu95design .text-101 {
  align-items: center;
  color: var(--black);
  display: flex;
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-xxxl);
  font-weight: 400;
  height: 50px;
  justify-content: center;
  left: 70px;
  letter-spacing: 2.00px;
  line-height: normal;
  position: absolute;
  top: 0;
}

.spu95design .registration-heading-accent-sp {
  height: 42px;
	position: relative !important;
}

.spu95design .registration-desc-sp {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 17.36px;
  height: 35px;
  margin-left: 2px;
  position: relative;
}

.spu95design .web-4 {
  height: 35px;
  letter-spacing: 1.40px;
  line-height: 16.8px;
  margin-top: -0.69px;
  position: relative;
  width: 350px;
}

.spu95design .reg-complete-badge-sp {
  height: 196px;
  left: 164px;
  position: absolute;
  top: 3161px;
  width: 174px;
}

.spu95design .howtouse-section-sp {
  height: 101px;
  left: 19px;
  position: absolute;
  top: 3749px;
  width: 353px;
}

.spu95design .web-5 {
  height: 35px;
  letter-spacing: 1.40px;
  line-height: 16.8px;
  margin-top: -0.69px;
  position: relative;
  width: 350px;
}

.spu95design .text-102 {
  align-items: center;
  display: flex;
  height: 54px;
  justify-content: center;
  left: 60px;
  letter-spacing: 2.00px;
  line-height: normal;
  position: absolute;
  top: 0;
  width: 219px;
}

.spu95design .howtouse-heading-accent-sp {
  height: 45px;
  top: 9px;
  width: 351px;
}

.spu95design .span-23 {
  letter-spacing: 0.17px;
}

.spu95design .howto-step-3-sp {
  height: 409px;
  left: 37px;
  position: absolute;
  top: 4716px;
  width: 311px;
}

.spu95design .howto-step-photo-sp {
  height: 205px;
  left: 0;
  position: absolute;
  top: 83px;
  width: 308px;
}

.spu95design .text_label-6 {
  left: 0;
  letter-spacing: 1.30px;
  line-height: 20.8px;
  position: absolute;
  top: 325px;
  width: 308px;
}

.spu95design .howto-step-num-block-sp {
  height: 21.84%;
  left: 57.88%;
  position: absolute;
  top: 0;
  width: 42.77%;
}

.spu95design .step-11 {
  height: 51.52%;
  left: 0;
  letter-spacing: 1.92px;
  line-height: 41.6px;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 44.36%;
}

.spu95design .number-6 {
  align-items: center;
  display: flex;
  height: 93.02%;
  justify-content: center;
  left: 51.13%;
  letter-spacing: 8.32px;
  line-height: 41.6px;
  position: absolute;
  top: 6.98%;
  width: 45.86%;
}

.spu95design .howto-step-label-badge-sp {
  height: 26px;
  left: 0;
  position: absolute;
  top: 294px;
  width: 106px;
}

.spu95design .howto-step-label-bg-modifier {
  width: 104px;
}

.spu95design .text-10-2 {
  align-items: center;
  display: flex;
  height: 22px;
  justify-content: center;
  left: 8px;
  letter-spacing: 2.00px;
  line-height: 34.0px;
  position: absolute;
  top: 1px;
  white-space: nowrap;
  width: 89px;
}

.spu95design .line-6-1 {
  height: 1px;
  left: 73px;
  position: absolute;
  top: 343px;
  width: 226px;
}

.spu95design .howto-step-2-sp {
  height: 409px;
  left: 37px;
  position: absolute;
  top: 4282px;
  width: 311px;
}
.spu95design .howto-step-1-sp {
  height: 409px;
  left: 37px;
  position: absolute;
  top: 3875px;
  width: 311px;
}

.spu95design .text_label-7 {
  left: 0;
  letter-spacing: 1.30px;
  line-height: 20.8px;
  position: absolute;
  top: 325px;
  width: 308px;
}

.spu95design .text-104 {
  align-items: center;
  display: flex;
  height: 22px;
  justify-content: center;
  left: 9px;
  letter-spacing: 2.00px;
  line-height: 34.0px;
  position: absolute;
  top: 1px;
  white-space: nowrap;
  width: 86px;
}

.spu95design .line-7-1 {
  height: 1px;
  left: 176px;
  position: absolute;
  top: 343px;
  width: 127px;
}

.spu95design .line-8-1 {
  height: 1px;
  left: 1px;
  position: absolute;
  top: 363px;
  width: 90px;
}

.spu95design .line-9-1 {
  height: 1px;
  left: 38px;
  position: absolute;
  top: 4219px;
  width: 189px;
}

.spu95design .howto-step-4-sp {
  height: 409px;
  left: 37px;
  position: absolute;
  top: 5141px;
  width: 311px;
}

.spu95design .howto-step-photo-alt-sp {
  height: 50.16%;
  left: 0;
  position: absolute;
  top: 20.24%;
  width: 99.04%;
}

.spu95design .text_label-8 {
  left: 0;
  letter-spacing: 1.30px;
  line-height: 20.8px;
  position: absolute;
  top: 325px;
  width: 308px;
}

.spu95design .line-10-1 {
  height: 1px;
  left: 117px;
  position: absolute;
  top: 364px;
  width: 170px;
}

.spu95design .howto-step-5-sp {
  height: 409px;
  left: 37px;
  position: absolute;
  top: 5564px;
  width: 311px;
}

.spu95design .web-6 {
  left: 0;
  letter-spacing: 1.30px;
  line-height: 20.8px;
  position: absolute;
  top: 325px;
  width: 308px;
}

.spu95design .howto-step-label-badge-5-sp {
  height: 26px;
  left: 0;
  position: absolute;
  top: 294px;
  width: 60px;
}

.spu95design .howto-step-label-bg-5-sp {
  width: 58px;
}

.spu95design .text-107 {
  align-items: center;
  display: flex;
  height: 22px;
  justify-content: center;
  left: 8px;
  letter-spacing: 2.00px;
  line-height: 34.0px;
  position: absolute;
  top: 1px;
  white-space: nowrap;
  width: 42px;
}

.spu95design .line-11-1 {
  height: 1px;
  left: 158px;
  position: absolute;
  top: 343px;
  width: 133px;
}

.spu95design .line-12-1 {
  height: 1px;
  left: 29px;
  position: absolute;
  top: 386px;
  width: 248px;
}

.spu95design .howto-step-6-sp {
  height: 409px;
  left: 37px;
  position: absolute;
  top: 5991px;
  width: 311px;
}

.spu95design .text-108 {
  left: 0;
  letter-spacing: 1.30px;
  line-height: 22.1px;
  position: absolute;
  top: 325px;
  width: 308px;
}

.spu95design .howto-step-label-badge-6-sp {
  height: 26px;
  left: 0;
  position: absolute;
  top: 294px;
  width: 123px;
}

.spu95design .howto-step-label-bg-6-sp {
  width: 121px;
}

.spu95design .text-109 {
  align-items: center;
  display: flex;
  height: 22px;
  justify-content: center;
  left: 8px;
  line-height: 34.0px;
  position: absolute;
  top: 1px;
  white-space: nowrap;
  width: 110px;
}

.spu95design .span-24 {
  letter-spacing: 0.40px;
}

.spu95design .line-13-1 {
  height: 1px;
  left: 35px;
  position: absolute;
  top: 365px;
  width: 211px;
}

.spu95design .price-section-bg-sp {
  height: 812px;
  left: 0;
  position: absolute;
  top: 6417px;
  width: 100%;
}

.spu95design .price-heading-text-block-sp {
  height: 47px;
}

.spu95design .text-110 {
  align-items: center;
  color: var(--white);
  display: flex;
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-xxxl);
  font-weight: 500;
  height: 47px;
  justify-content: center;
  letter-spacing: 2.00px;
  line-height: normal;
  border-bottom: 2px solid #fff;
}

.spu95design .price-heading-accent-sp {
  height: 75.94%;
  top: 22.40%;
  width: 99.43%;
}

.spu95design .price-heading-accent-line-sp {
  display: flex;
  height: 1px;
  left: 18px;
  position: absolute;
  top: 35px;
  width: 332px;
}

.spu95design .section-heading-underline-price-sp {
  /* height: 1.8px; */
  margin-left: -0.9px;
  margin-top: -0.9px;
  width: 333.8px;
}

.spu95design .price-heading-icon-large-sp {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 10.28%;
}

.spu95design .price-heading-icon-small-sp {
  height: 58.33%;
  left: 2.86%;
  position: absolute;
  top: 22.22%;
  width: 4.57%;
}

.spu95design .price-desc-sp {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 17.36px;
  left: 20px;
  position: absolute;
  top: 6524px;
  width: 350px;
}
.spu95design .price-header-wrapper-sp {
  padding: 20px;
}

.spu95design .text-111 {
  height: 17px;
  letter-spacing: 1.40px;
  line-height: 16.8px;
  margin-bottom: 36px;
 }

.spu95design .text-112 {
  left: 158px;
  letter-spacing: 1.44px;
  line-height: 28.8px;
  position: absolute;
  top: 6756px;
  white-space: nowrap;
}

.spu95design .span-25 {
  letter-spacing: 0.26px;
}

.spu95design .pack-price-amount-block-sp {
  display: flex;
  height: 58px;

}

.spu95design .pack-price-number-unit-sp {
  display: flex;
  gap: 6.8px;
  margin-left: 84.1px;
  margin-top: 0;
  width: 105.84px;
}

.spu95design .number-9 {
  height: 56px;
  letter-spacing: 2.80px;
  line-height: 56px;
  white-space: nowrap;
  width: 76px;
}

.spu95design .text-118 {
  height: 38px;
  letter-spacing: 1.90px;
  line-height: 38px;
  margin-top: 11.3px;
  white-space: nowrap;
  width: 19px;
}

.spu95design .text-119 {
  left: 90px;
  letter-spacing: 0.66px;
  line-height: 14.3px;
  position: absolute;
  top: 6850px;
  width: 267px;
}

.spu95design .normal-price-card-bg-sp {
  height: 388px;
  /* left: 20px; */
  position: absolute;
  top: 6578px;
  width: 350px;
}

.spu95design .poket-carom-1 {
  left: 70px;
  letter-spacing: 1.60px;
  line-height: 5.1px;
  position: absolute;
  top: 6604px;
  width: 258px;
}

.spu95design .span1-10 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 16.4px;
  font-weight: 500;
  letter-spacing: 0.27px;
}

.spu95design .span2-8 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 8.8px;
  font-weight: 500;
  letter-spacing: 0.08px;
}

.spu95design .span3-1 {
  color: var(--white);
}

.spu95design .text-120 {
  left: 152px;
  letter-spacing: 1.44px;
  line-height: 28.8px;
  position: absolute;
  top: 6637px;
  white-space: nowrap;
}

.spu95design .normal-price-card-display-sp {
  align-items: center;
  display: flex;
  gap: 8.79px;
  height: 58px;
  justify-content: center;
  left: 90px;
}

.spu95design .normal-price-amount-block-sp {
  height: 57.74px;
  margin-bottom: -0.05px;
  margin-top: -0.05px;
  position: relative;
  width: 80.33px;
}

.spu95design .number-10 {
  left: 1px;
  letter-spacing: 2.80px;
  line-height: 56px;
  position: absolute;
  top: 1px;
  white-space: nowrap;
}

.spu95design .text-125 {
  left: 60px;
  letter-spacing: 1.90px;
  line-height: 38px;
  position: absolute;
  top: 13px;
  white-space: nowrap;
}

.spu95design .text-126 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 28.9px;
  font-weight: 300;
  letter-spacing: 2.89px;
  line-height: 57.7px;
  margin-top: -1.19px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.spu95design .normal-price-per-time-block-sp {
  height: 57.74px;
  margin-bottom: -0.05px;
  margin-top: -0.05px;
  position: relative;
  width: 61.5px;
}

.spu95design .normal-price-per-time-inner-sp {
  display: flex;
  gap: 4.4px;
  height: 58px;
  position: relative;
  top: 1px;
  width: 62px;
}

.spu95design .number-11 {
  height: 56px;
  letter-spacing: 2.80px;
  line-height: 56px;
  margin-left: 0;
  margin-top: 0;
  white-space: nowrap;
  width: 37px;
}

.spu95design .text-127 {
  height: 40.17px;
  letter-spacing: 1.90px;
  line-height: 38px;
  margin-top: 12.6px;
  white-space: nowrap;
  width: 20.08px;
}

.spu95design .text-128 {
  color: transparent;
  font-family: var(--font-family-noto_sans_jp);
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.66px;
  line-height: 20px;
  margin-top:8px;
}

.spu95design .span-26 {
  letter-spacing: 0.07px;
}

.spu95design .span1-11 {
  color: var(--buff);
  letter-spacing: 0.07px;
}

.spu95design .pack-price-card-bg-sp {
  height: 178px;
  /* left: 20px; */
  position: absolute;
  top: 6991px;
  width: 350px;
}

.spu95design .priceattention-1 {
  left: 60px;
  letter-spacing: 1.60px;
  line-height: 5.1px;
  position: absolute;
  top: 7024px;
  width: 215px;
}

.spu95design .span1-12 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 15.2px;
  font-weight: 500;
  letter-spacing: 0.23px;
}

.spu95design .span2-9 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 7.6px;
  font-weight: 500;
  letter-spacing: 0.06px;
}

.spu95design .text_label-9 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 10.1px;
  font-weight: 400;
  left: 60px;
  letter-spacing: 1.01px;
  line-height: 18.2px;
  position: absolute;
  top: 7054px;
  width: 291px;
}

.spu95design .access-section-sp {
  display: flex;
  flex-direction: column;
  gap: 12.8px;
  height: 80px;
  left: 20px;
  position: absolute;
  top: 7272px;
  width: 350px;
}

.spu95design .access-heading-wrapper-sp {
  height: 51.19px;
  position: relative;
 }

.spu95design .access-heading-text-block-sp {
  height: 51px;
  left: 14px;
  position: absolute;
  top: 0;
  width: 337px;
  border-bottom: 2px solid #004539; /* ビリヤード場の色に合わせて調整 */
  /* margin-top: 5px; */
}

.spu95design .text-130 {
  align-items: center;
  display: flex;
  height: 51px;
  justify-content: center;
  left: 44px;
  letter-spacing: 2.00px;
  line-height: normal;
  position: absolute;
  top: 0;
  width: 208px;
}

.spu95design .access-heading-accent-sp {
  display: flex;
  height: 1px;
  top: 50px;
  width: 335px;
}

.spu95design .access-heading-accent-line-sp {
  display: flex;
  height: 1px;
  margin-left: 0;
  margin-top: 0;
  width: 335px;
}

.spu95design .section-heading-underline-access-sp {
  /* height: 1.8px; */
  margin-left: -0.9px;
  margin-top: -0.9px;
  width: 336.8px;
}

.spu95design .access-transport-icon-sp {
  background-image: url(../img/vector-16.svg);
  background-size: 100% 100%;
  height: 77.63%;
  left: 0;
  position: absolute;
  top: 21.63%;
  width: 7.96%;
}

.spu95design .access-heading-icon-inner-sp {
  height: 36.90%;
  left: 23.55%;
  position: absolute;
  top: 14.76%;
  width: 52.76%;
}

.spu95design .access-desc-sp {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 17.36px;
  height: 16px;
  position: relative;
  width: 350px;
}

.spu95design .text-129 {
  height: 16px;
  letter-spacing: 1.40px;
  line-height: 16.8px;
  margin-top: -0.69px;
  position: relative;
  white-space: nowrap;
  width: 350px;
}

.spu95design .span1-13 {
  color: var(--black);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.14px;
  line-height: 14.4px;
}

.spu95design .text-131 {
  color: var(--black);
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-xxl);
  font-weight: 700;
  left: 40px;
  letter-spacing: 1.80px;
  line-height: 30.6px;
  position: absolute;
  top: 7382px;
  width: 294px;
}

.spu95design .text-132 {
  left: 40px;
  letter-spacing: 1.40px;
  line-height: 25.2px;
  position: absolute;
  top: 7432px;
}

.spu95design .access-transport-list-sp {
  align-items: flex-start;
  display: inline-flex;
  flex-direction: column;
  gap: 14.31px;
  left: 40px;
  position: absolute;
  top: 7500px;
}

.spu95design .access-transport-row-sp {
  align-items: flex-start;
  align-self: stretch;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 15.26px;
  position: relative;
  width: 100%;
}

.spu95design .access-transport-label-sp {
  align-items: flex-start;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 6.68px;
  position: relative;
  width: 34.33px;
}

.spu95design .text-1-2 {
  align-self: stretch;
  height: 22.89px;
  letter-spacing: 1.40px;
  line-height: 25.2px;
  margin-top: -0.95px;
}

.spu95design .access-transport-divider-car-sp {
  height: 1px;
  margin-bottom: -0.05px;
  position: relative;
  width: 16.77px;
}

.spu95design .text-134 {
  height: 23px;
  letter-spacing: 1.40px;
  line-height: 23.8px;
  position: relative;
  white-space: nowrap;
  width: 238px;
}

.spu95design .access-by-train-sp {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 14.31px;
  left: 40px;
  position: absolute;
  top: 7591px;
  width: 299px;
}

.spu95design .access-transport-divider-sp {
  align-self: stretch;
  height: 1px;
  margin-bottom: -0.05px;
  position: relative;
  width: 100%;
}

.spu95design .access-transport-text-modifier {
  align-self: stretch;
  flex: 0 0 auto;
  position: relative;
  width: 100%;
}

.spu95design .text-137 {
  align-self: stretch;
  height: 22.89px;
  letter-spacing: 1.40px;
  line-height: 25.2px;
  position: relative;
  white-space: nowrap;
}

.spu95design .access-by-bus-sp {
  gap: 14.31px;
  left: 40px;
  position: absolute;
  top: 7702px;
  width: 299px;
}

.spu95design .access-bus-text-sp {
  align-self: stretch;
  height: 43.87px;
  position: relative;
  width: 100%;
}

.spu95design .text-139 {
  align-self: stretch;
  height: 22.89px;
  letter-spacing: 1.40px;
  line-height: 19.6px;
  margin-top: -0.95px;
  position: relative;
  white-space: nowrap;
}

.spu95design .access-map-container-sp {
  height: 265px;
  left: 40px;
  position: absolute;
  top: 7805px;
  width: 353px;
}

.spu95design .text-140 {
  color: var(--black);
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-xxl);
  font-weight: 700;
  left: 40px;
  letter-spacing: 1.80px;
  line-height: 30.6px;
  position: absolute;
  top: 8095px;
  width: 294px;
}

.spu95design .parking-info-text-sp {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 14.31px;
  left: 40px;
  position: absolute;
  top: 8122px;
  width: 340px;
}
/* 追加 */
.spu95design .parking-info-text-sp span{
  font-size: 0.65rem;
  line-height: normal;

}

.spu95design .text-142 {
  align-self: stretch;
  /* height: 46.79px; */
  letter-spacing: 1.40px;
  line-height: 20px;
  position: relative;
}

.spu95design .parking-photo-sp {
  height: 265px;
  left: 40px;
  position: absolute;
  top: 8462px;
  width: 353px;
}

.spu95design .attention-2 {
  left: 60px;
  letter-spacing: 1.80px;
  line-height: 5.1px;
  position: absolute;
  top: 8855px;
  width: 215px;
}

.spu95design .span1-7 {
  color: var(--black);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 15.2px;
  font-weight: 200;
  letter-spacing: 0.23px;
}

.spu95design .span2-5 {
  color: var(--black);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 12px;
  font-weight: 200;
  letter-spacing: 0.06px;
}

.spu95design .span3-2 {
  color: var(--black);
}

.spu95design .faq-2 {
  left: 41px;
  letter-spacing: 1.80px;
  line-height: 5.1px;
  position: absolute;
  top: 9102px;
  width: 215px;
}

.spu95design .faq-list-container-sp {
  align-items: flex-start;
  /* border: 0.27px solid;
  border-color: var(--rangitoto-3);
  border-radius: 1.36px; */
  display: flex;
  flex-direction: column;
  gap: 6.79px;
  height: 38px;
  justify-content: center;
  left: 20px;
  padding: 0px 20.38px;
  position: absolute;
  top: 9458px;
  width: 350px;
}

.spu95design .address-1 {
  display: flex;
  flex-direction: column;
  align-items: center;    /* 内部の要素を中央に */
  gap: 22px;
  height: auto;           /* 内容に合わせて可変に */
  width: 100%;            /* 横幅いっぱいに広げて中央配置の基準にする */
  text-align: center;     /* テキスト自体を中央に */
  margin-top: 32px;
}

.spu95design .frame-4-1 {
  /* align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 4.1px;
  height: 74.2px;
  margin-left: 0;
  margin-top: 0;
  position: relative;
  width: 165.04px; */
  align-items: center;    /* 子要素（テキスト）を中央に */
  display: flex;
  flex-direction: column;
  gap: 4.1px;
  height: auto;
  position: relative;
  width: 100%;            /* 幅を広げて中央揃えを有効に */
}

.spu95design .text-160,
.spu95design .text-161,
.spu95design .httpswestern-companycom-1 {
    width: auto;
    margin-right: 0;        /* 余計なマージンを消す */
    text-align: center;
}

.spu95design .text-160 {
  letter-spacing: 1.10px;
  line-height: 22px;
  margin-right: -3.96px;
  margin-top: -1.13px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.spu95design .text-161 {
  letter-spacing: 1.10px;
  line-height: 22px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.spu95design .httpswestern-companycom-1 {
  letter-spacing: 0.55px;
  line-height: 22px;
  margin-right: -4.96px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

/* 追加 */
.spu95design .httpswestern-companycom-1 a {
  color: #fff;
}

.spu95design .footer-contact-box-sp {
  margin: 0 auto;         /* flexコンテナ内での中央寄せ */
  align-items: center;
  border: 0.32px solid;
  border-color: var(--white);
  border-radius: 1.59px;
  display: flex;
  gap: 29.34px;
  height: 17.45px;
  justify-content: center;
  position: relative;
  width: 169.7px;
}

.spu95design .footer-contact-inner-sp {
  gap: 25.38px;
  height: 17.45px;
}

.spu95design .text-162 {
  color: var(--white);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 11px;
}

.spu95design .footer-contact-divider-sp {
  height: 11.1px;
  margin-bottom: -4.76px;
  margin-top: -4.76px;
  position: relative;
  width: 1px;
}

.spu95design .mail-send-envelope-e-2 {
  height: 11.1px;
  margin-bottom: -4.76px;
  margin-top: -4.76px;
  position: relative;
  width: 11.1px;
}

.spu95design .mail-send-envelope-e-3 {
  height: 75.00%;
  left: 3.57%;
  position: relative;
  top: 12.50%;
  width: 92.86%;
}

.spu95design .footer-email-icon-envelope-sp {
  height: 109.53%;
  left: -3.85%;
  position: absolute;
  top: -4.76%;
  width: 107.69%;
}

.spu95design .footer-email-icon-flap-sp {
  height: 44.64%;
  left: -3.85%;
  position: absolute;
  top: 7.14%;
  width: 107.69%;
}

.spu95design .btn-2 {
  left: calc(50.00% - 106px);
  top: 10053px;
}

.spu95design .btn-line-cta-sp {
  background: linear-gradient(0deg, rgba(100, 191, 77, 1) 0%, rgba(100, 191, 77, 1) 100%);
  border: 0.87px solid;
  border-color: var(--pale-oyster);
  border-radius: 235.23px;
  box-shadow: 0px 2.6px 2.6px 1.73px #0000000f;
  gap: 15.34px;
  height: 134px;
  justify-content: center;
  left: calc(50.00% + 21px);
  overflow: hidden;
  padding: 35.28px 69.39px;
  position: absolute;
  top: 9920px;
  width: 136px;
}

.spu95design .btn-line-inner-layout-sp {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 4.44px;
  height: 32.07px;
  margin-left: -46.48px;
  margin-right: -46.48px;
  position: relative;
}

.spu95design .line-1 {
  color: var(--black);
  font-family: var(--font-family-noto_sans_jp);
  font-size: 12.1px;
  font-weight: 500;
  height: 32.89px;
  letter-spacing: 0.61px;
  line-height: 15.1px;
  margin-top: -0.85px;
  position: relative;
  text-align: center;
  width: 79.99px;
}

.spu95design .btn-line-arrow-sp {
  height: 9.98px;
  margin-right: -0.74px;
  width: 7.66px;
}

.spu95design .logo_white-1-1 {
  height: 34px;
  width: 48px;
  margin-top: 32px;
}

.spu95design .logomark-1-1 {
    height: 164px;
	width: 163px;
 }

.spu95design .faq-attention-section-sp {
  height: 77px;
  left: 19px;
  position: absolute;
  top: 8733px;
  width: 351px;
}

.spu95design .faq-attention-desc-sp {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 17.36px;
  left: 1px;
  position: absolute;
  top: 64px;
  width: 350px;
}

.spu95design .text-163 {
  height: 13px;
  letter-spacing: 1.40px;
  line-height: 16.8px;
  margin-top: -0.69px;
  position: relative;
  white-space: nowrap;
  width: 350px;
}

.spu95design .faq-heading-wrapper-sp {
  height: 69px;
  width: 90%;
}

.spu95design .qa-4-1 {
  height: 69px;
  left: 0;
  position: absolute;
  top: 0;
  width: 69px;
}

.spu95design .faq-heading-text-block-sp {
  height: 46px;
  left: 33px;
  position: absolute;
  top: 6px;
  width: 320px;
  border-bottom: 2px solid #004539;
}

.spu95design .text-164 {
  align-items: center;
  color: var(--black);
  display: flex;
  font-family: var(--font-family-noto_sans_jp);
  font-size: var(--font-size-xxxl);
  font-weight: 400;
  height: 46px;
  justify-content: center;
  left: 27px;
  letter-spacing: 1.20px;
  line-height: normal;
  position: absolute;
  top: 0;
  width: 291px;
}

.spu95design .faq-heading-accent-sp {
  display: flex;
  height: 1px;
  top: 44px;
  width: 318px;
}

/* ナビゲーション全体のコンテナ */
.spu95design .nav-container-mobile {
  background-color: var(--cyprus);
  width: 100%;
  /* height: 285px; */
  position: absolute;
  top: 650px; /* 位置は元の設定に合わせて調整してください */
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 9999; /* リンクが反応するように最前面へ */
}

/* 4つずつ並べる行 */
.spu95design .nav-row {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 15px 0;
}

/* リンク1項目 */
.spu95design .nav-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  width: 44%; /* 4つ並ぶので約1/4 */
  color: #ffffff;
  transition: opacity 0.3s;
}

.spu95design .nav-item:hover {
  opacity: 0.7;
}

/* メインの日本語 */
.spu95design .nav-text-main {
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 4px;
  white-space: nowrap;
  font-family: var(--font-family-noto_sans_jp);
}

/* 下の英語 */
.spu95design .nav-text-sub {
  font-size: 9px;
  font-weight: 400;
  opacity: 0.8;
  font-family: var(--font-family-noto_sans_jp);
}

/* 縦の区切り線 */
.spu95design .nav-line {
  width: 1px;
  height: 30px;
  background-color: rgba(255, 255, 255, 0.3);
}

/* 最後の項目の後の線は消す */
.spu95design .nav-row .nav-line:last-child {
  display: none;
}

.spu95design .nav-item-inner-modifier {
  align-items: center;
  height: 43px;
  justify-content: center;
  position: relative;
  width: 104.94px;
}

.spu95design .btn {
  align-items: center;
  background: linear-gradient(0deg, rgba(100, 191, 77, 1) 0%, rgba(100, 191, 77, 1) 100%), linear-gradient(49deg, rgba(123, 196, 241, 1) 0%, rgba(233, 199, 198, 1) 100%);
  border-radius: 384.68px;
  box-shadow: 0px 2.6px 2.6px 1.73px #0000000f;
  display: flex;
  gap: 25.08px;
  height: 219px;
  justify-content: center;
  overflow: hidden;
  padding: 57.7px 113.48px;
  position: absolute;
  width: 223px;

  /* position: absolute; */
  left: 50%;
}

.spu95design .flex-container {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
}

.spu95design .access-detail-text-block {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
}

.spu95design .btn-line-cta {
  align-items: center;
  display: flex;
}

.spu95design .nav-item-inner {
  display: flex;
  flex-direction: column;
}

.spu95design .reg-step-text-area {
  display: flex;
  flex-direction: column;
}

.spu95design .nav-menu-item-features {
  display: flex;
  position: absolute;
}

.spu95design .section-heading-accent-group {
  left: 0;
}

.spu95design .howto-step-label-bg {
  background-color: var(--gallery);
  height: 26px;
  left: 0;
  position: absolute;
  top: 0;
}

.spu95design .span3 {
  font-family: var(--font-family-noto_sans_jp);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.10px;
}

.spu95design .st {
  height: 57.15%;
  left: 39.13%;
  letter-spacing: 0.89px;
  line-height: 17.8px;
  position: absolute;
  top: 28.31%;
  white-space: nowrap;
}

.spu95design .text-1 {
  position: relative;
  white-space: nowrap;
}

.spu95design .btn-arrow-icon {
  aspect-ratio: 0.73;
  position: relative;
}

.spu95design .view {
  border-radius: 75.5px;
  height: 151px;
  position: relative;
  width: 151px;
}

.spu95design .step-badge-number {
  height: 81.39%;
  left: 7.87%;
  letter-spacing: 1.45px;
  line-height: 29px;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 79.35%;
}

.spu95design .news {
  /* background-color: var(--cyprus); */
  width: 100%;
  height: 90px;
  position: absolute;
  top: 560px;
  left: 0;
  /* padding: 10px; */
  line-height: 23px;
  text-align: center;
  color: var(--cyprus);
  font-size: 0.75rem;
}

.spu95design .news a{
  text-decoration: none;
  color: #000;
  border-bottom: 1px solid #000;
  display: inline;
  color: var(--cyprus);
}

.spu95design .news span{
  font-weight: bold;
}

/* 親要素を画面中央に配置する設定 */
/* .spu95design .howto-steps-all-sp {
  position: absolute;
  left: 50% !important;        
  transform: translateX(-50%);
} */

@media screen and (max-width: 767px) {
  .screen.index { 
    display: none;
   }
}
@media screen and (min-width: 768px) {
  .screen.spu95design { 
    display: none;
   }
}

/* 親要素をFlexboxにして中身を中央に揃える */
/* .index.screen {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
} */

/* 各セクション（アクセスや特徴など）の幅を100%にして中央寄せを保証する */
.westside-3, 
.variations, 
.registaration, 
.houtouse, 
.price-1, 
.access, 
.faq-attention-heading-block {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative; /* absoluteが効いている場合の上書き用 */
  /* left: 0 !important; */
}

/* 追加 */
.frame-question {
  display: flex;
  flex-direction: column;
  width: 1039px;
  /* height: 56px; */
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  /* padding: 0px 30px; */
  position: absolute;
  top: 7891px;
  left: 200px;
  /* border-radius: 2px; */
  /* border: 0.4px solid; */
  /* border-color: #322b24e6; */
}

/*********** Q & A エリア　　独自 ***********/
/* 全体コンテナ */
.qa-wrapper {
  width: 1039px;
  /* max-width: 900px; */
  /* margin: 0 auto; */
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}

.qa-item {
  margin-bottom: 8px;
  border: 1px solid #d1d1d1;
  border-radius: 4px;
  overflow: hidden;
}

/* 質問エリア */
.qa-question {
  background-color: #eeeeee; /* スクショの薄いグレー */
  padding: 12px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  transition: background-color 0.2s;
}

.qa-question:hover {
  background-color: #e5e5e5;
}

.qa-question-content {
  display: flex;
  align-items: center;
  gap: 15px;
}

  /* 丸いQ/Aアイコン */
  .icon-q, .icon-a {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 16px;
    flex-shrink: 0;
  }
  
  .icon-q {
    background-color: #ffffff;
    color: #333;
  }
  
  .icon-a {
    background-color: #f0f0f0;
    color: #333;
  }
  
  .question-text {
    font-size: 16px;
    font-weight: 500;
    color: #333;
  }
  
  /* 右側の横線アイコン */
  .toggle-icon {
    width: 18px;
    height: 2px;
    background-color: #333;
    transition: transform 0.3s;
  }
  
  /* 回答エリア（初期は非表示） */
  .qa-answer {
    max-height: 0;
    overflow: hidden;
    background-color: #ffffff;
    transition: max-height 0.3s ease-in-out;
  }
  
  .qa-answer-content {
    padding: 10px 20px;
    display: flex;
    gap: 15px;
    align-items: center;
    border-top: 1px solid #f0f0f0;
  }
  
  .answer-text {
    margin: 0;
    line-height: 1.7;
    color: #444;
    font-size: 15px;
  }
  
  .answer-text a {
    color: #000;
    text-decoration: underline;
    /* font-weight: bold; */
  }
  
  /* アクティブ状態（JSで付与） */
  .qa-item.is-active .qa-answer {
    max-height: 500px; /* 内容に合わせて十分な高さを設定 */
  }
  
  .qa-item.is-active .toggle-icon {
    transform: rotate(180deg); /* 必要なら回転などの演出を追加 */
  }

@media screen and (max-width: 767px) {
  .frame-question_sp {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 6.79px;
    height: 38px;
    justify-content: center;
    left: 20px;
    padding: 0px 20.38px;
    position: absolute;
    top: 9487px;
    width: 390px;
    font-family: var(--font-family-noto_sans_jp);
  }
  /* 質問エリア */
  .qa-question {
    background-color: #eeeeee; /* スクショの薄いグレー */
    padding: 4px 6px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    transition: background-color 0.2s;
  }

  .qa-question:hover {
    background-color: #e5e5e5;
  }

  .qa-question-content {
    display: flex;
    align-items: center;
    gap: 15px;
    padding-right: 8px;
  }

  /* 丸いQ/Aアイコン */
  .icon-q, .icon-a {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 12px;
    flex-shrink: 0;
  }
  
  .icon-q {
    background-color: #ffffff;
    color: #333;
  }
  
  .icon-a {
    background-color: #f0f0f0;
    color: #333;
  }
  
  .question-text {
    font-size: var(--font-size-s);
    font-weight: 500;
    color: #333;
  }
  
  /* 右側の横線アイコン */
  .toggle-icon {
    width: 18px;
    height: 2px;
    background-color: #333;
    transition: transform 0.3s;
  }
  
  /* 回答エリア（初期は非表示） */
  .qa-answer {
    max-height: 0;
    overflow: hidden;
    background-color: #ffffff;
    transition: max-height 0.3s ease-in-out;
  }
  
  .qa-answer-content {
    padding: 4px 6px;
    display: flex;
    gap: 15px;
    align-items: center;
    border-top: 1px solid #f0f0f0;
  }
  
  .answer-text {
    margin: 0;
    line-height: 1.7;
    color: #444;
    font-size: var(--font-size-s);
  }
  
  .answer-text a {
    color: #000;
    text-decoration: underline;
    /* font-weight: bold; */
  }
  
  /* アクティブ状態（JSで付与） */
  .qa-item.is-active .qa-answer {
    max-height: 500px; /* 内容に合わせて十分な高さを設定 */
  }
  
  .qa-item.is-active .toggle-icon {
    transform: rotate(180deg); /* 必要なら回転などの演出を追加 */
  }

  .policy {
    width: 100%;
	margin-bottom: 40px;
}

  .policy a {
    text-decoration: none;
    color: #fff;
    /* font-weight: bold; */
    font-size: 14px;
    font-family: var(--font-family-noto_sans_jp);
  }
}
