/* screen - iphone-14-pro-home2 */

.iphone-14-pro-home2 {
  align-items: center;
  background-color: #F0F0F0;
  display: flex;
  flex-direction: column;
  height: auto;
  min-height: 100vh;
  overflow: hidden;
  width: 393px;
}

.iphone-14-pro-home2 .meni {
  background-color: var(--white);
  cursor: pointer;
  height: 55px;
  position: relative;
  width: 393px;
}

.iphone-14-pro-home2 .best {
  flex: 1;
  height: 31px;
  letter-spacing: 0;
  line-height: 41px;
  margin-right: -2px;
  white-space: nowrap;
}

.iphone-14-pro-home2 .mobile-06 {
  margin-top: 10px;
  /* Reduced from 38px */
}

.iphone-14-pro-home2 .text-14 {
  color: var(--black);
  font-family: var(--font-family-yu_gothic);
  font-size: 40px;
  font-weight: 700;
  height: 133px;
  letter-spacing: 0;
  line-height: 62px;
  margin-left: 3.0px;
  margin-top: 0;
  /* Removed margin completely */
  text-align: center;
  width: 360px;
  position: relative;
  z-index: 9999;
  /* Ensure text is front */
}

.iphone-14-pro-home2 .span-1 {
  font-family: var(--font-family-yugothic-bold);
  font-size: 50px;
}

.iphone-14-pro-home2 .mobile-07 {
  margin-top: 5px;
}

.iphone-14-pro-home2 .x4 {
  background-color: var(--fun-green);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 45px;
  height: 78px;
  margin-right: 0;
  margin-top: 10px;
  width: 366px;
  position: relative;
  z-index: 9999;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--white);
  font-family: var(--font-family-yugothic-bold);
  font-size: 36px;
  font-weight: 700;
  letter-spacing: 2px;
  text-decoration: none;
  cursor: pointer;
}

/* スタッフ紹介ボタン用ラッパー（SP版） */
.iphone-14-pro-home2 .sp-hero-buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 8px;
  margin-top: 10px;
  margin-bottom: 15px;
}

.iphone-14-pro-home2 .sp-hero-buttons .x4 {
  margin-top: 0;
}

.iphone-14-pro-home2 .sp-staff-btn-link {
  display: block !important;
  text-decoration: none;
  width: 366px;
}

.iphone-14-pro-home2 .sp-staff-btn {
  background-color: var(--java);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 45px;
  height: 78px;
  width: 366px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--white);
  font-family: var(--font-family-yugothic-bold);
  font-size: 36px;
  font-weight: 700;
  letter-spacing: 2px;
  cursor: pointer;
  position: relative;
  z-index: 9999;
}

.iphone-14-pro-home2 .overlap-group1 {
  height: 585px;
  margin-top: 0px;
  /* Reduced further to 0px to decrease space below hero section */
  margin-bottom: 15px;
  position: relative;
  width: 393px;
}

.iphone-14-pro-home2 .x429 {
  height: 585px;
  left: 0;
  position: absolute;
  top: 0;
  width: 393px;
}

.iphone-14-pro-home2 .x62 {
  background-color: var(--java);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 27px;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.iphone-14-pro-home2 .x5-1 {
  background-color: var(--java);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 0 0 20px 20px;
  bottom: -18px;
  height: 20px;
  left: calc(50% - 20px);
  position: absolute;
  width: 40px;
  z-index: 1;
}

.iphone-14-pro-home2 .x16 {
  align-items: flex-start;
  display: flex;
  gap: 8px;
  height: 334px;
  left: 11px;
  min-width: 371px;
  position: absolute;
  top: 27px;
}

.iphone-14-pro-home2 .flex-col {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-height: 329px;
  width: 181px;
}

.iphone-14-pro-home2 .x02 {
  align-items: flex-end;
  background-color: var(--white);
  border-radius: 26px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-height: 161px;
  padding: 4.2px 12px;
  width: 181px;
}

.iphone-14-pro-home2 .text {
  letter-spacing: 0;
  line-height: 27px;
  margin-top: 6px;
  min-height: 51px;
  min-width: 155px;
  text-align: center;
  white-space: nowrap;
}

.iphone-14-pro-home2 .x117 {
  background-image: none;
  background-position: 50% 50%;
  background-size: cover;
  height: 91px;
  margin-right: 12.99px;
  width: 132px;
  position: relative;
  overflow: hidden;
}

/* img tag inside illustration card for better scaling quality */
.iphone-14-pro-home2 .x117-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  position: absolute;
  top: 0;
  left: 0;
}

.iphone-14-pro-home2 .x22 {
  align-items: flex-end;
  background-color: var(--white);
  border-radius: 26px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-height: 161px;
  padding: 4.2px 12px;
  width: 181px;
}

.iphone-14-pro-home2 .x12 {
  align-items: flex-end;
  background-color: var(--white);
  border-radius: 26px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-height: 161px;
  padding: 4.2px 12px;
  width: 181px;
}

.iphone-14-pro-home2 .x31 {
  align-items: flex-end;
  background-color: var(--white);
  border-radius: 26px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-height: 161px;
  padding: 4.2px 12px;
  width: 181px;
}

.iphone-14-pro-home2 .x873 {
  background-color: var(--white);
  border-radius: 26px;
  height: 161px;
  left: 106px;
  position: absolute;
  top: 371px;
  /* Moved down by 10px from 361px */
  width: 181px;
}

.iphone-14-pro-home2 .text-5 {
  left: 106px;
  width: 181px;
  letter-spacing: 0;
  line-height: 27px;
  position: absolute;
  text-align: center;
  top: 382px;
  /* Moved down by 10px from 372px */
  white-space: nowrap;
}

.iphone-14-pro-home2 .x430 {
  background-image: none;
  position: relative;
  overflow: hidden;
  background-position: 50% 50%;
  background-size: cover;
  height: 91px;
  left: 130px;
  position: absolute;
  top: 437px;
  /* Moved down by 10px from 427px */
  width: 132px;
}

.iphone-14-pro-home2 .text-6 {
  letter-spacing: 0.91px;
  line-height: 41px;
  margin-left: 3.0px;
  margin-top: 16px;
  min-height: 74px;
  min-width: 350px;
  text-align: center;
  white-space: nowrap;
}

.iphone-14-pro-home2 .overlap-group {
  height: 855px;
  /* Reduced to minimize white space after wavy border */
  margin-top: 0px;
  /* Removed gap */
  position: relative;
  width: 1041px;
  background-color: var(--white);
}

.iphone-14-pro-home2 .overlap-group::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 226px;
  background-color: #F0F0F0;
}

.iphone-14-pro-home2 .x431 {
  height: 630px;
  left: 0;
  position: absolute;
  top: 226px;
  width: 1041px;
}

.iphone-14-pro-home2 .x132 {
  background-image: url(../img/file-----131@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: 1px;
  height: 176px;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: 1;
}

.iphone-14-pro-home2 .x65 {
  background-color: #F0F0F0;
  height: 480px;
  left: calc(50.00% - 196px);
  position: absolute;
  top: 0;
  width: 393px;
}

.iphone-14-pro-home2 .x10nin {
  height: auto;
  width: 100%;
  max-width: 355px;
  object-fit: contain;
  position: relative;
  display: block;
  margin: 0 auto 0;
  /* Center horizontally, no extra spacing */
  z-index: 1;
  /* Ensure visibility */
}

.iphone-14-pro-home2 .x435 {
  background-color: var(--bitter-lemon);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 24px;
  height: 103px;
  left: 324px;
  position: absolute;
  top: 193px;
  /* Finetuned to just touch the bottom of the suits without overlapping */
  width: 393px;
}

.iphone-14-pro-home2 .text-1 {
  height: 63px;
  left: 16px;
  letter-spacing: 0;
  line-height: 36px;
  position: absolute;
  text-align: center;
  top: calc(31.25% - 20px);
  width: calc(100% - 30px);
}

.iphone-14-pro-home2 .text-8 {
  left: 341px;
  letter-spacing: 0;
  line-height: 28px;
  position: absolute;
  text-align: center;
  top: 343px;
  white-space: nowrap;
}

.iphone-14-pro-home2 .span-2 {
  color: var(--java);
  font-family: var(--font-family-yugothic-bold);
  font-size: 20px;
  font-weight: 700;
}

.iphone-14-pro-home2 .text-9 {
  left: 404px;
  letter-spacing: 0;
  line-height: 29px;
  position: absolute;
  text-align: center;
  top: 785px;
  white-space: nowrap;
  z-index: 2;
}

.iphone-14-pro-home2 .x2 {
  background-color: var(--java);
  /* 水色 */
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 20px;
  /* SP版吹き出しの角丸 */
  height: 116px;
  left: 332px;
  position: absolute;
  top: 465px;
  width: 377px;
}

.iphone-14-pro-home2 .x2::after {
  content: "";
  position: absolute;
  bottom: -14px;
  /* 1px重ねて隙間を消す */
  left: 50%;
  transform: translateX(-50%);
  width: 30px;
  height: 15px;
  background-color: var(--java);
  background-image: url(../img/cardboard-texture_200px.png);
  background-blend-mode: multiply;
  border-radius: 0 0 30px 30px;
}

.iphone-14-pro-home2 .text-10 {
  color: var(--white);
  font-family: var(--font-family-yugothic-medium);
  font-size: var(--font-size-xs);
  font-weight: 500;
  left: 371px;
  letter-spacing: 0;
  line-height: 31px;
  position: absolute;
  text-align: center;
  top: 492px;
  white-space: nowrap;
}

.iphone-14-pro-home2 .honnne {
  height: 133px;
  left: 436px;
  object-fit: cover;
  position: absolute;
  top: 615px;
  width: 169px;
  z-index: 2;
}

.iphone-14-pro-home2 .x {
  color: var(--black);
  font-family: var(--font-family-yugothic-bold);
  font-size: var(--font-size-l);
  font-weight: 700;
  left: 406px;
  letter-spacing: 0;
  line-height: 27px;
  position: absolute;
  top: 300px;
  white-space: nowrap;
}

.iphone-14-pro-home2 .text-11 {
  color: var(--black);
  font-family: var(--font-family-yugothic-medium);
  font-size: 14px;
  font-weight: 500;
  height: 190px;
  letter-spacing: 0;
  line-height: 39px;
  margin-left: 2.0px;
  margin-top: 21px;
  text-align: center;
  width: 395px;
}

.iphone-14-pro-home2 .overlap-group2 {
  align-self: flex-end;
  height: 68px;
  margin-right: -19px;
  margin-top: 26px;
  position: relative;
  width: 384px;
}

.iphone-14-pro-home2 .parts1 {
  height: 38px;
  left: 280px;
  object-fit: cover;
  position: absolute;
  top: 30px;
  width: 104px;
}

.iphone-14-pro-home2 .x20200608-dsc09757 {
  height: 64px;
  left: 250px;
  object-fit: cover;
  position: absolute;
  top: 4px;
  width: 82px;
}

.iphone-14-pro-home2 .text-13 {
  color: var(--apple);
  font-family: var(--font-family-yugothic-bold);
  font-size: var(--font-size-s);
  font-weight: 700;
  height: 54px;
  left: 0;
  letter-spacing: 0;
  line-height: 30px;
  position: absolute;
  top: 0;
  width: 275px;
}

.iphone-14-pro-home2 .overlap-group3 {
  align-self: flex-start;
  height: 1348px;
  margin-left: -103px;
  position: relative;
  width: 640px;
}

.iphone-14-pro-home2 .x432 {
  background-image: url(../img/map.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 200px;
  left: 0;
  position: absolute;
  top: 95px;
  width: 640px;
}

.iphone-14-pro-home2 .x434 {
  background-color: var(--bitter-lemon);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 24px;
  height: 103px;
  left: 103px;
  position: absolute;
  top: 0;
  width: 393px;
}

/* .x222, x223, x224 deleted for regression fix */

.iphone-14-pro-home2 .x36 {
  bottom: calc(45.75% - 18px);
  height: 39px;
  object-fit: cover;
  position: absolute;
  right: 0;
  width: 40px;
}

.iphone-14-pro-home2 .x182 {
  background-color: #00b4bf;
  border-radius: 26px;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: calc(100% - 35px);
}

.iphone-14-pro-home2 .x223 {
  height: 117px;
  left: 126px;
  position: absolute;
  top: 128px;
  width: 160px;
}

.iphone-14-pro-home2 .text-15 {
  color: var(--white);
  font-family: var(--font-family-yugothic-bold);
  font-size: var(--font-size-xl);
  font-weight: 700;
  height: 41px;
  left: 0;
  letter-spacing: 2.67px;
  line-height: 53px;
  position: absolute;
  text-align: center;
  top: -12px;
  white-space: nowrap;
  width: calc(100% + 2px);
}

.iphone-14-pro-home2 .text-16 {
  bottom: -5px;
  /* Adjusted slightly down from 5px */
  color: var(--white);
  font-family: var(--font-family-yugothic-bold);
  font-size: var(--font-size-xl);
  font-weight: 700;
  height: 83px;
  /* Matched to line-height */
  letter-spacing: 0;
  line-height: 83px;
  /* overflow: hidden; Removed to prevent cutting off */
  position: absolute;
  right: 7px;
  text-align: center;
  white-space: nowrap;
  width: 50px;
}

.iphone-14-pro-home2 .number-1 {
  color: var(--white);
  font-family: var(--font-family-yugothic-bold);
  font-size: 81px;
  font-weight: 700;
  height: 89px;
  left: 4px;
  letter-spacing: 0;
  line-height: 83px;
  overflow: hidden;
  position: absolute;
  text-align: center;
  top: 29px;
  white-space: nowrap;
  width: calc(100% - 38px);
}

.iphone-14-pro-home2 .x17 {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 36px;
  left: 102px;
  min-height: 1073px;
  padding: 3.2px 0;
  position: absolute;
  top: 275px;
  width: 395px;
}

.iphone-14-pro-home2 .x03 {
  align-items: center;
  display: flex;
  flex-direction: column;
  min-height: 326px;
  width: 397px;
}

.iphone-14-pro-home2 .x433-1 {
  height: 102px;
  margin-right: 2.0px;
  position: relative;
  width: 376px;
}

.iphone-14-pro-home2 .x48 {
  background-color: var(--fun-green);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 19px;
  height: calc(100% - 16px);
  left: 0;
  position: absolute;
  top: 16px;
  width: 100%;
}

.iphone-14-pro-home2 .text-2 {
  left: 50px;
  height: 86px;
  letter-spacing: 0.44px;
  line-height: 86px;
  position: absolute;
  top: 16px;
  white-space: nowrap;
  width: 326px;
  text-align: center;
  color: white;
  z-index: 2;
  font-size: 28px;
  margin: 0;
  padding: 0;
}

.iphone-14-pro-home2 .value {
  height: 20px;
  left: 5px;
  position: absolute;
  top: 12px;
  width: 98px;
  text-align: center;
  line-height: 20px;
  font-size: 14px;
  margin: 0;
  color: #333;
  font-weight: 500;
  z-index: 2;
}

.iphone-14-pro-home2 .number {
  height: 38px;
  left: 5px;
  position: absolute;
  top: 32px;
  width: 98px;
  text-align: center;
  line-height: 38px;
  font-size: 36px;
  margin: 0;
  color: #333;
  font-weight: bold;
  z-index: 2;
}

.iphone-14-pro-home2 .text-18 {
  height: auto;
  letter-spacing: 0;
  line-height: 1.5;
  margin-top: 10px;
  text-align: center;
  width: 397px;
  color: var(--fun-green);
}

.iphone-14-pro-home2 .text-19 {
  height: 73px;
  letter-spacing: 0;
  line-height: 38px;
  margin-left: 1.0px;
  margin-top: 28px;
  text-align: center;
  width: 378px;
}

.iphone-14-pro-home2 .x17-item {
  align-items: center;
  display: flex;
  flex-direction: column;
  min-height: 326px;
  width: 395px;
}

.iphone-14-pro-home2 .x433 {
  height: 102px;
  position: relative;
  width: 376px;
}

.iphone-14-pro-home2 .text-2-1 {
  height: auto;
  line-height: 1.5;
  margin-left: 2.0px;
  margin-top: 10px;
  width: 397px;
  color: var(--fun-green);
}

.iphone-14-pro-home2 .text-2-2 {
  height: 73px;
  line-height: 38px;
  margin-left: 3.0px;
  margin-top: 15px;
  width: 378px;
}

.iphone-14-pro-home2 .x124 {
  background-color: var(--apple);
  border-radius: 56px;
  height: 112px;
  margin-left: 1.0px;
  position: relative;
  width: 112px;
}

.iphone-14-pro-home2 .x9 {
  height: 5px;
  object-fit: cover;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 53px;
}

.iphone-14-pro-home2 .x10 {
  height: 53px;
  object-fit: cover;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 5px;
}

.iphone-14-pro-home2 .x126 {
  background-color: var(--bitter-lemon);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 164.5px;
  height: 329px;
  margin-left: 6.0px;
  margin-top: 32px;
  position: relative;
  width: 329px;
}

.iphone-14-pro-home2 .text-26 {
  height: 114px;
  left: 37px;
  letter-spacing: 0;
  line-height: 52px;
  position: absolute;
  text-align: center;
  top: calc(22.09% - 25px);
  width: calc(100% - 70px);
}

.iphone-14-pro-home2 .text-2-3 {
  bottom: calc(32.53% - 26px);
  height: 80px;
  left: 29px;
  line-height: 38px;
  position: absolute;
  width: calc(100% - 55px);
}

.iphone-14-pro-home2 .x125 {
  background-color: var(--white);
  border-radius: 49px;
  bottom: calc(17.96% - 8px);
  display: flex;
  justify-content: center;
  align-items: center;
  height: 45px;
  position: absolute;
  right: calc(49.76% - 60px);
  width: 120px;
  z-index: 10;
  pointer-events: auto;
}

/* ... ensure we append to the end ... */

.iphone-14-pro-home2 .sp-banner-replacement {
  position: relative;
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}

.iphone-14-pro-home2 .overlap-group2 {
  height: auto !important;
  width: 100% !important;
  margin: 0 !important;
  align-self: center !important;
  right: 0 !important;
  left: 0 !important;
}

/* NEW SP HERO STYLES */
.new-sp-hero {
  width: 100%;
  margin-bottom: 20px;
  display: flex;
  flex-direction: column;
  padding-top: 0;
}

.sp-hero-row-top,
.sp-hero-row-bottom {
  width: 100%;
  overflow: hidden;
  height: auto;
  /* Flexible */
  display: flex;
  align-items: flex-end;
  padding-bottom: 5px;
}

.sp-hero-row-bottom {
  align-items: flex-start;
  padding-top: 5px;
  padding-bottom: 0;
}

.sp-hero-row-middle {
  width: 100%;
  margin: 0;
  display: flex;
  justify-content: center;
}

.sp-hero-banner {
  width: 95%;
  height: auto;
  display: block;
}

.sp-hero-img-item {
  width: 19vw;
  /* 5 items visible */
  height: auto;
  margin-right: 1vw;
  object-fit: contain;
}

.sp-marquee-content-left {
  display: flex;
  width: max-content;
  animation: hero-scroll-left 40s linear infinite;
}

.sp-marquee-content-right {
  display: flex;
  width: max-content;
  animation: hero-scroll-right 40s linear infinite;
}

/* Reuse keyframes from PC or define locally if needed */
/* Since PC CSS is usually loaded, check if accessible. If specific to SP file, define again. */
@keyframes hero-scroll-left {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-50%);
  }
}

@keyframes hero-scroll-right {
  0% {
    transform: translateX(-50%);
  }

  100% {
    transform: translateX(0);
  }
}

.iphone-14-pro-home2 .text-28 {
  letter-spacing: -0.16px;
  text-align: center;
  white-space: nowrap;
}

.iphone-14-pro-home2 .x126-1 {
  margin-top: 14px;
}

.iphone-14-pro-home2 .sns {
  height: 66px;
  left: 37px;
  letter-spacing: 0;
  line-height: 52px;
  position: absolute;
  text-align: center;
  top: calc(35.93% - 24px);
  width: calc(100% - 70px);
}

.iphone-14-pro-home2 .text-30 {
  letter-spacing: -0.16px;
  text-align: center;
  white-space: nowrap;
}

.iphone-14-pro-home2 .x126-2 {
  margin-top: 13px;
}

.iphone-14-pro-home2 .text-31 {
  height: 63px;
  left: 21px;
  letter-spacing: 0;
  line-height: 52px;
  position: absolute;
  text-align: center;
  top: calc(27.63% - 17px);
  width: calc(100% - 35px);
}

.iphone-14-pro-home2 .text-32 {
  bottom: calc(42.17% - 34px);
  height: 80px;
  left: 29px;
  letter-spacing: 0;
  line-height: 38px;
  position: absolute;
  text-align: center;
  width: calc(100% - 55px);
}

.iphone-14-pro-home2 .text-33 {
  letter-spacing: -0.16px;
  text-align: center;
  white-space: nowrap;
}

.iphone-14-pro-home2 .x436 {
  background-color: var(--bitter-lemon);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 24px;
  height: 103px;
  margin-top: 33px;
  position: relative;
  width: 393px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.iphone-14-pro-home2 .text-34 {
  color: var(--black);
  font-family: var(--font-family-yugothic-bold);
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: normal;
  text-align: center;
  white-space: nowrap;
}

.iphone-14-pro-home2 .span1 {
  color: var(--black);
  font-family: var(--font-family-yugothic-bold);
  font-size: 37px;
  font-weight: 700;
}

.iphone-14-pro-home2 .overlap-group4 {
  width: 100%;
  height: 400px;
  /* Set a reasonable height for the map */
  position: relative;
  margin: 0;
  padding: 0;
  background: none;
  display: block;
}

.iphone-14-pro-home2 .x451 {
  background-color: transparent;
  width: 100%;
  height: 100%;
  border: none;
  position: relative;
}

.iphone-14-pro-home2 .google-map {
  height: 132px;
  left: 21px;
  letter-spacing: 1.65px;
  line-height: 46px;
  position: absolute;
  top: calc(20.45% - 27px);
  width: calc(100% - 32px);
}

.iphone-14-pro-home2 .x2025-12-08-111128 {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border: 0;
}

.iphone-14-pro-home2 .iphone-14-pro-home2-item {
  background-color: var(--fun-green);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  background-position: 50% 50%;
  background-size: cover;
  border-radius: 57px;
  height: 114px;
  margin-top: 30px;
  /* Equal spacing above each CTA */
  margin-bottom: 0;
  position: relative;
  width: 358px;
}

.iphone-14-pro-home2 .iphone-14-pro-home2-item:last-child {
  margin-bottom: 30px;
  /* Equal spacing below last CTA */
}

.iphone-14-pro-home2 .pro-item {
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  background-color: #00b4bf;
  /* Light Blue */
  border-radius: 57px;
  /* Rounded corners */
}

.iphone-14-pro-home2 .text-35 {
  color: var(--white);
  font-family: var(--font-family-yugothic-bold);
  font-size: 28px;
  font-weight: 700;
  height: 38px;
  left: calc(48.49% - 55px);
  letter-spacing: 0;
  line-height: 33px;
  position: absolute;
  top: 10px;
  white-space: nowrap;
  width: 113px;
}

.iphone-14-pro-home2 .text-36 {
  bottom: 7px;
  color: var(--white);
  font-family: var(--font-family-yugothic-bold);
  font-size: 43px;
  font-weight: 700;
  height: 57px;
  left: calc(48.15% - 83px);
  letter-spacing: 0;
  line-height: 52px;
  position: absolute;
  white-space: nowrap;
  width: 172px;
}

.iphone-14-pro-home2 .text-37 {
  color: var(--white);
  font-family: var(--font-family-yugothic-bold);
  font-size: 28px;
  font-weight: 700;
  height: 38px;
  left: 53px;
  letter-spacing: 0;
  line-height: 33px;
  position: absolute;
  top: 10px;
  white-space: nowrap;
  width: calc(100% - 104px);
}

.iphone-14-pro-home2 .ai {
  bottom: 7px;
  color: var(--white);
  font-family: var(--font-family-yugothic-bold);
  font-size: 43px;
  font-weight: 700;
  height: 57px;
  letter-spacing: 0;
  line-height: 52px;
  position: absolute;
  right: calc(49.56% - 65px);
  white-space: nowrap;
  width: 131px;
}

.iphone-14-pro-home2 .view {
  background-color: var(--fun-green);
  height: 175px;
  margin-top: 34px;
  position: relative;
  width: 393px;
}

.iphone-14-pro-home2 .text-38 {
  bottom: calc(24.12% - 4px);
  cursor: pointer;
  height: 16px;
  left: calc(48.76% - 54px);
  letter-spacing: 0;
  line-height: 21.6px;
  position: absolute;
  white-space: nowrap;
  width: 111px;
}

.iphone-14-pro-home2 .mobile {
  object-fit: cover;
  width: 393px;
}

.iphone-14-pro-home2 .text-2-4 {
  letter-spacing: 0;
  text-align: center;
}

.iphone-14-pro-home2 .x126-3 {
  background-color: var(--bitter-lemon);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 164.5px;
  height: 329px;
  margin-left: 6.0px;
  position: relative;
  width: 329px;
}

.iphone-14-pro-home2 .x4-4 {
  background-color: var(--bitter-lemon);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 50%;
  height: 98px;
  left: 5px;
  position: absolute;
  top: -10px;
  width: 98px;
  z-index: 1;
}

.iphone-14-pro-home2 .x48-3 {
  background-color: var(--fun-green);
  background-image: url(../img/cardboard-texture_200px.png);
  background-repeat: repeat;
  background-blend-mode: multiply;
  border-radius: 19px;
  height: calc(100% - 16px);
  left: 0;
  position: absolute;
  top: 16px;
  width: 100%;
}

/* Marquee Animation Styles */
.marquee-container {
  width: 100%;
  overflow: hidden;
  position: relative;
  /* Ensure it takes up space in the flow */
  display: block;
}

.marquee-content {
  display: flex;
  width: max-content;
  /* 
     We use two sets of images. 
     translateX(-50%) means we show the second half.
     translateX(0%) means we show the first half.
     The movement from -50% to 0% makes it look like it's moving Right.
     Wait, if we want it to move TO THE RIGHT, we should go from left to right.
     Standard marquee usually moves Right-to-Left (text scrolling). 
     User asked for "move to the right direction".
     So visual flow: -> -> -> 
     
     If we start at translateX(-50%) (showing the second set) and move to translateX(0%) (showing the first set),
     the content moves to the RIGHT.
     
     [Set1][Set2]
     View: [Set2] (at -50%)
     ... moves right ...
     View: [Set1] (at 0%)
     
     So yes, -50% to 0% is correct for Left-to-Right movement.
  */
  animation: marquee-right 20s linear infinite;
}

.mobile-marquee-item {
  width: 393px;
  height: auto;
  /* Maintain aspect ratio based on width */
  object-fit: cover;
  flex-shrink: 0;
  display: block;
  margin-right: 20px;
  /* Add whitespace between images */
}

/* Adjust margins for specific slots to match original layout */
/* Adjust margins for specific slots to match original layout */
.marquee-container.mobile-06 {
  margin-top: 10px;
  /* Reduced from 30px to tighten space below header */
  margin-bottom: 30px;
  /* Space below top marquee */
}

/* Reverse animation for bottom marquee */
.marquee-container.mobile-07 .marquee-content {
  animation-direction: reverse;
}

.marquee-container.mobile-07 {
  margin-top: 30px;
  /* Equal space above bottom marquee (below text) */
}

@keyframes marquee-right {
  0% {
    transform: translateX(-50%);
  }

  100% {
    transform: translateX(0%);
  }
}

/* White background for bottom section in SP */
.sp-white-bg-container {
  background-color: var(--white);
  width: 100%;
  position: relative;
  min-height: 200px;
}

/* Gray background section for SP */
.sp-gray-bg-container {
  background-color: #F0F0F0;
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Y-Axis Centering for Value Texts (01, 02, 03) */
.iphone-14-pro-home2 .sp-value-text-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex: 1;
  width: 100%;
  padding-top: 36px;
  /* 上下の緑背景間の距離（260px）の正確な中央に配置するための調整 */
  padding-bottom: 0;
}

.iphone-14-pro-home2 .sp-value-text-wrap>div {
  position: static !important;
  height: auto !important;
  margin-top: 0 !important;
}

.iphone-14-pro-home2 .sp-value-text-wrap>div:last-child {
  margin-top: 15px !important;
}

/* SP 版 追従スタッフ紹介ボタン */
.floating-staff-btn {
  position: fixed;
  top: 60px;
  left: 10px;
  z-index: 9998;
  display: block;
  transition: opacity 0.3s ease;
}
.floating-staff-btn img {
  width: 140px;
  height: auto;
}