@charset 'utf-8';

/* ===========================================
 * 得とく修理キャンペーン .cplp2502
 * ======================================== */

/* レイアウト
---------------------------------------------- */
:root .cplp2502 {
  --c-white: #fff;
  --c-font: #333;
  --c-brown: #793c00;
  --c-brown--dark: #5f2f00;
  --c-yellow: #ffec8f;
  --c-yellow--light: #fffb93;
  --c-orange: #f47a01;
  --c-orange--light: #fff5eb;
  --c-pink: #e20b54;

  --ls-sm: 0;
  --ls-default: 0.03em;

  --lh-sm: 1.3;
  --lh-default: 1.7;

  --ff-tubd-r: "TBUDゴシック R", "TBUDGothic R";
  --ff-tubd-b: "TBUDゴシック B", "TBUDGothic B";
}

.cplp2502 {
  font-size: 1.6rem;
  line-height: var(--lh-default);
  letter-spacing: var(--ls-default);
  color: var(--c-font);
  font-family: var(--ff-tubd-r);
  position: relative;
  margin-bottom: 70px;
}

.cplp2502 img {
  width: 100%;
  height: auto;
}

.cplp2502 :where(address) {
  display: inline-block;
}

.cplp2502 :where(time) {
  display: inline-block;
}

@media screen and (max-width: 767.499px) {
  .u-md-over-only {
    display: none !important;
  }
}

@media not screen and (max-width: 767.499px) {
  .u-md-only {
    display: none !important;
  }
}

@media not screen and (max-width: 499.999px) {
  .u-sm-only {
    display: none !important;
  }
}

@media screen and (max-width: 499.999px) {
  .u-sm-over-only {
    display: none !important; 
  }
}

.c-inner {
  padding: 0 40px;
  max-width: 1160px;
  margin-inline: auto;
}

@media screen and (max-width: 767.499px) {
  .c-inner {
    padding: 0 20px;
  }
}

.c-inner--sm {
  max-width: 960px;
}

/* 斜め斜線背景 */
.c-bg-diagonal {
  background: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.3) 2px, transparent 2px, transparent 18px);
  background-color: var(--c-yellow);
  padding: 80px 0;
}

@media screen and (max-width: 767.499px) {
  .c-bg-diagonal {
    padding: 60px 0;
  }
}

/* 囲いセクション */
.c-enclosure-section {
  max-width: 1160px;
  padding: 0px 40px;
  margin-inline: auto;
  scroll-margin-top: 100px;
}

@media screen and (max-width: 767.499px) {
  .c-enclosure-section {
    padding: 0px 20px;
    margin-inline: auto;
    scroll-margin-top: 60px;
  }
}

.c-enclosure-section__inner {
  background-color: var(--c-white);
  border: solid 3px var(--c-brown);
  border-radius: 15px;
  margin-inline: auto;
  padding: 66px 20px 42px;
  position: relative;
  box-shadow: rgba(152, 76, 0, 20%) 5px 5px 0;
}

@media screen and (max-width: 767.499px) {
  .c-enclosure-section__inner {
    padding: 40px 20px 32px;
  }
}

.c-enclosure-section__inner.-pd-sm {
  max-width: 960px;
  padding: 56px 20px 32px;
}

@media screen and (max-width: 767.499px) {
  .c-enclosure-section__inner.-pd-sm {
    padding: 44px 12px 32px;
  }
}

.c-enclosure-section__content {
  max-width: 960px;
  margin-inline: auto;
}

.c-enclosure-section__content--sm {
  max-width: 930px;
}

.c-heading-lv2 {
  font-family: var(--ff-tubd-b);
  display: block;
  width: fit-content;
  height: 52px;
  min-width: 555px;
  font-size: 24px;
  text-align: center;
  color: var(--c-white);
  background-color: var(--c-brown);
  padding: 6px 12px;
  margin-inline: auto;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
}

@media screen and (max-width: 767.499px) {
  .c-heading-lv2 {
    display: block;
    width: fit-content;
    height: 42px;
    min-width: 380px;
    font-size: 18px;
    padding: 6px 12px;
  }
}

@media screen and (max-width: 499.999px) {
  .c-heading-lv2 {
    min-width: 284px;
  }

  .c-heading-lv2.-sp-fz-sm {
    font-size: 1.6rem;
  }
}

.c-heading-lv2::before,
.c-heading-lv2::after {
  position: absolute;
  left: 0;
  top: 0;
  transform: translateX(-95%);
  content: "";
  mask: url('data:image/svg+xml,<svg width="18" height="52" viewBox="0 0 18 52" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_301_2)"><mask id="mask0_301_2" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="18" height="52"><path d="M18 0H0V52H18V0Z" fill="white"/></mask><g mask="url(%23mask0_301_2)"><path d="M590.001 52.002H0.000976562L13.311 26.002L0.000976562 0.00195312H590.001L576.693 26.002L590.001 52.002Z" fill="%23793C00"/></g></g><defs><clipPath id="clip0_301_2"><rect width="18" height="52" fill="white"/></clipPath></defs></svg>');
  mask-size: cover;
  mask-repeat: no-repeat;
  background-color: var(--c-brown);
  width: 17px;
  height: 100%;
}

@media screen and (max-width: 767.499px) {
  .c-heading-lv2::before,
  .c-heading-lv2::after {
    width: 14px;
  }
}

.c-heading-lv2::after {
  left: auto;
  right: 0;
  mask: url('data:image/svg+xml,<svg width="18" height="52" viewBox="0 0 18 52" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_301_9)"><mask id="mask0_301_9" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="18" height="52"><path d="M18 0H0V52H18V0Z" fill="white"/></mask><g mask="url(%23mask0_301_9)"><path d="M17.001 52.002H-572.999L-559.689 26.002L-572.999 0.00195312H17.001L3.69287 26.002L17.001 52.002Z" fill="%23793C00"/></g></g><defs><clipPath id="clip0_301_9"><rect width="18" height="52" fill="white"/></clipPath></defs></svg>');
  mask-size: cover;
  mask-repeat: no-repeat;
  transform: translateX(95%);
}

/* リスト */
.c-list__item {
  font-size: 1.6rem;
  font-weight: 400;
  text-indent: -1em;
  padding-left: 1em;
}

@media screen and (max-width: 767.499px) {
  .c-list__item {
    font-size: 1.5rem;
  }
}

.c-list__item::before {
  content: "・";
}

@media screen and (max-width: 767.499px) {
  .c-list__item::before {
    font-size: 1.5rem;
  }
}

/* ctaボタン */
.p-cta-btn {
}

.p-cta-btn__link {
  display: block;
  max-width: fit-content;
  margin-inline: auto;
}

.p-cta-btn__pic {
  display: block;
  max-width: 500px;
}

@media screen and (max-width: 767.499px) {
  .p-cta-btn__pic {
    max-width: 320px;
  }
}

/* 強調テキスト */
.p-strong-text {
  text-align: center;
  position: relative;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}

@media screen and (max-width: 499.999px) {
  .p-strong-text {
    gap: 16px;
  }
}

.p-strong-text::before,
.p-strong-text::after {
  content: "";
  display: block;
  width: 3px;
  height: 64px;
  background-color: var(--c-orange);
  border-radius: calc(1px / 0);
  flex-shrink: 0;
}

.p-strong-text::before {
  transform: rotate(-28deg) translateY(5%);
}

.p-strong-text::after {
  transform: rotate(28deg) translateY(5%);
}

@media screen and (max-width: 767.499px) {
  .p-strong-text::before,
  .p-strong-text::after {
    height: 52px;
  }
}

@media screen and (max-width: 499.999px) {
  .p-strong-text::before,
  .p-strong-text::after {
    height: 42px;
  }

  .p-strong-text.-sp-high::before,
  .p-strong-text.-sp-high::after {
    height: 90px;
  }

  .p-strong-text.-sp-high::before {
    transform: rotate(-20deg) translateY(5%);
  }

  .p-strong-text.-sp-high::after {
    transform: rotate(20deg) translateY(5%);
  }
}

/* MV
---------------------------------------------- */

.repair-cp2025-mv {
  width: 100%;
}

.repair-cp2025-mv__pic img {
  width: 100%;
}

/* ナビゲーション
---------------------------------------------- */
.repair-cp2025-nav {
  background-color: var(--c-brown);
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-nav__inner {
    padding: 0;
  }
}

.repair-cp2025-nav-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-nav-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

.repair-cp2025-nav-list__item {
  position: relative;
}

.repair-cp2025-nav-list__item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  width: 1px;
  height: 53%;
  background-color: var(--c-white);
  opacity: 0.3;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-nav-list__item:nth-child(odd):before {
    content: none;
  }
}

.repair-cp2025-nav-list__item:last-child::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  width: 1px;
  height: 53%;
  background-color: var(--c-white);
  opacity: 0.3;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-nav-list__item:last-child::after {
    content: none;
  }
}

.repair-cp2025-nav-list__link {
  display: block;
  color: var(--c-white);
  width: 100%;
  height: 100%;
  text-align: center;
  font-family: var(--ff-tubd-b);
  font-weight: 700;
  line-height: var(--lh-sm);
  padding: 20px;
  display: grid;
  place-items: center;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-nav-list__link {
    font-size: 1.5rem;
    padding: 12px;
  }
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-nav-list__link {
    min-height: 58px;
    padding: 8px;
  }
}

.repair-cp2025-nav-list__link:hover {
  opacity: 1;
  background-color: var(--c-brown--dark);
}

/* 概要
---------------------------------------------- */
.repair-cp2025-overview-list__item {
  display: grid;
  grid-template-columns: 170px 1fr;
  align-items: baseline;
  gap: 8px 20px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-overview-list__item {
    grid-template-columns: 150px 1fr;
  }
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-overview-list__item {
    grid-template-columns: 1fr;
    justify-content: flex-start;
  }
}

.repair-cp2025-overview-list__item:not(:first-child) {
  margin-top: 12px;
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-overview-list__item:not(:first-child) {
    margin-top: 20px;
  }
}

.repair-cp2025-overview-list__heading {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  background-color: var(--c-orange);
  color: var(--c-white);
  line-height: var(--lh-default);
  letter-spacing: var(--ls-sm);
  border-radius: 5px;
  padding: 4px 8px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-overview-list__heading {
    font-size: 1.5rem;
    padding: 2px 4px;
  }
}

.repair-cp2025-overview-list__content {
  font-family: var(--ff-tubd-b);
  font-size: 1.8rem;
  font-weight: 900;
  line-height: var(--lh-default);
  letter-spacing: var(--ls-sm);
}

.repair-cp2025-overview-list__content .c-list__item {
  font-family: var(--ff-tubd-r);
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-overview-list__content {
    font-size: 1.5rem;
  }
}

.repair-cp2025-overview-cta {
  margin-top: 46px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-overview-cta {
    margin-top: 32px;
  }
}

.repair-cp2025-overview-cta__text {
  font-family: var(--ff-tubd-b);
  font-size: 2.4rem;
  font-weight: 900;
  line-height: 1.4;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-overview-cta__text {
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-overview-cta__text {
    font-size: 2rem;
  }
}

.repair-cp2025-overview-cta__text em {
  position: relative;
  z-index: 1;
}

.repair-cp2025-overview-cta__text em::before {
  content: "";
  display: block;
  position: absolute;
  bottom: -4px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 101%;
  height: 12px;
  background-color: var(--c-yellow--light);
  z-index: -1;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-overview-cta__text em::before {
    height: 8px;
  }
}

/* メリット
---------------------------------------------- */
.repair-cp2025-merit {
  margin-top: 50px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-merit {
    margin-top: 32px;
  }
}

.repair-cp2025-merit__inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 20px;
  align-items: center;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-merit__inner {
    grid-template-columns: 1fr;
    max-width: 540px;
  }
}

.repair-cp2025-merit-list__item:not(:first-child) {
  margin-top: 8px;
}

.repair-cp2025-merit-note {
  margin-top: 4px;
  margin-bottom: 26px;
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.5em;
  justify-content: flex-end;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-merit-note {
    justify-content: flex-start;
    margin-top: 8px;
    margin-bottom: 0;
    gap: 4px 0.5em;
    padding-left: 0.5em;
  }
}

.repair-cp2025-merit-note__item {
  display: flex;
  align-items: flex-start;
}

.repair-cp2025-merit-note__heading,
.repair-cp2025-merit-note__content {
  font-size: 1.1rem;
  letter-spacing: var(--ls-sm);
  line-height: var(--lh-sm);
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-merit-note__heading,
  .repair-cp2025-merit-note__content {
    font-size: 1.2rem;
  }
}

.repair-cp2025-merit-note__heading {
  flex-shrink: 0;
}

/* 流れ
---------------------------------------------- */
@media screen and (max-width: 767.499px) {
  .repair-cp2025-flow {
    margin-top: 32px;
  }
}

.repair-cp2025-flow-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 45px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-flow-list {
    grid-template-columns: 1fr;
    max-width: 290px;
    margin-inline: auto;
  }
}

.repair-cp2025-flow-list__item {
  position: relative;
}

.repair-cp2025-flow-list__item:not(:last-child)::after {
  content: "";
  position: absolute;
  mask: url('data:image/svg+xml,<svg width="18" height="30" viewBox="0 0 18 30" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_301_16)"><path d="M2.317 29.728L2.517 29.559L17.197 16.809C17.4528 16.5845 17.6573 16.3075 17.7966 15.9969C17.9358 15.6863 18.0066 15.3494 18.004 15.009C18.0047 14.6689 17.9331 14.3326 17.794 14.0223C17.6549 13.7119 17.4514 13.4347 17.197 13.209L2.542 0.469001L2.298 0.250001C2.05761 0.0855776 1.77325 -0.00258844 1.482 -0.00299835C1.28229 0.0019287 1.0855 0.0461766 0.902902 0.127215C0.720301 0.208254 0.555467 0.324494 0.417825 0.469287C0.280183 0.61408 0.172434 0.784586 0.100741 0.971054C0.0290469 1.15752 -0.00518537 1.35629 1.21264e-06 1.556V28.444C-0.00966513 28.8468 0.141009 29.237 0.418907 29.5288C0.696806 29.8206 1.07919 29.99 1.482 30C1.78194 29.999 2.07399 29.9038 2.317 29.728Z" fill="%23F47A01"/></g><defs><clipPath id="clip0_301_16"><rect width="18" height="30" fill="white"/></clipPath></defs></svg>');
  mask-size: contain;
  mask-repeat: no-repeat;
  width: 18px;
  height: 30px;
  background-color: var(--c-orange);
  right: -33px;
  top: 60%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-flow-list__item:not(:last-child)::after {
    top: auto;
    bottom: -40px;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
    -webkit-transform: translateX(-50%) rotate(90deg);
    -ms-transform: translateX(-50%) rotate(90deg);
  }
}

.repair-cp2025-flow-list__item:last-child {
  margin-right: -4%;
}

/* 利用者さまの声
---------------------------------------------- */
.repair-cp2025-voice {
  margin-top: 106px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-voice {
    margin-top: 60px;
  }
}

.repair-cp2025-voice-intro__text-pic {
  max-width: 459px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-voice-intro__text-pic {
    max-width: 320px;
  }
}

.repair-cp2025-voice__content {
  margin-top: 30px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-voice__content {
    margin-top: 24px;
  }
}

.repair-cp2025-voice-item {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 20px 38px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-voice-item {
    grid-template-columns: 1fr;
    justify-content: center;
  }
}

.repair-cp2025-voice-item:not(:first-child) {
  margin-top: 40px;
}

.repair-cp2025-voice-item__pic {
  max-width: 344px;
  margin-inline: auto;
}

.repair-cp2025-voice-list {
  background-color: var(--c-orange--light);
  padding: 26px 30px 30px;
  border-radius: 10px;
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-voice-list {
    padding: 20px 20px 24px;
  }
}

.repair-cp2025-voice-list__heading {
  font-family: var(--ff-tubd-b);
  font-size: 2rem;
  font-weight: 900;
  position: relative;
  padding-bottom: 4px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-voice-list__heading {
    font-size: 1.8rem;
  }
}

.repair-cp2025-voice-list__heading::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background-repeat: repeat-x;
  background-size: 6px 3px;
  background-image: radial-gradient(circle, var(--c-orange) 1.5px, transparent 1.5px);
}

.repair-cp2025-voice-list__item-wrap {
  margin-top: 20px;
}

.repair-cp2025-voice-list__item {
  font-size: 1.5rem;
  letter-spacing: var(--ls-sm);
  position: relative;
  text-indent: -1.4em;
  padding-left: 1.4em;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-voice-list__item {
    font-size: 1.4rem;
    text-indent: -1.2em;
    padding-left: 1.2em;
  }
}

.repair-cp2025-voice-list__item::before {
  content: "";
  display: inline-block;
  aspect-ratio: 1;
  width: 8px;
  border-radius: 50%;
  background-color: var(--c-orange);
  margin-right: 0.8em;
  margin-bottom: 2px;
}

.repair-cp2025-voice-list__item:not(:first-child) {
  margin-top: 8px;
}

/*---------- その他のお声 ----------*/
.repair-cp2025-other-voice {
  margin-top: 40px;
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-other-voice {
    margin-top: 32px;
  }
}

.repair-cp2025-other-voice__content {
  border: solid 2px var(--c-orange);
  border-radius: 10px;
}

.repair-cp2025-other-voice__heading {
  font-family: var(--ff-tubd-b);
  color: var(--c-white);
  font-size: 2rem;
  font-weight: 900;
  text-align: center;
  line-height: var(--lh-default);
  background-color: var(--c-orange);
  border-radius: 10px 10px 0 0;
  transform: translateY(-2px);
  padding: 6px 12px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-other-voice__heading {
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-other-voice__heading {
    font-size: 1.6rem;
    line-height: var(--lh-sm);
  }
}

.repair-cp2025-other-voice-slider {
  padding: 30px 10px;
  position: relative;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-other-voice-slider {
    padding: 10px 10px;
  }
}

.repair-cp2025-other-voice-slider::after {
  content: "";
  position: absolute;
  right: 9px;
  top: 0;
  width: 5px;
  height: 100%;
  pointer-events: none;
  background-color: var(--c-white);
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-other-voice-slider::after {
    right: 10px;
  }
}

.repair-cp2025-other-voice-slider__item {
  padding: 0 18px;
  position: relative;
  min-height: 420px;
}

@media screen and (max-width: 1023.999px) {
  .repair-cp2025-other-voice-slider__item {
    min-height: 320px;
  }
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-other-voice-slider__item {
    min-height: none;
    padding: 0 12px;
  }
}

.repair-cp2025-other-voice-slider__item::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 2px;
  height: 100%;
  background-repeat: repeat-y;
  background-size: 2px 4px;
  background-image: radial-gradient(circle, var(--c-orange) 1px, transparent 1px);
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-other-voice-slider__item::after {
    right: 1px;
  }
}

.repair-cp2025-other-voice-slider__heading {
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 15px;
  align-items: center;
}

.repair-cp2025-other-voice-slider__evaluation {
  font-size: 20px;
  color: #ccc;
  letter-spacing: var(--ls-sm);
}

.repair-cp2025-other-voice-slider__evaluation em {
  color: #f4c501;
}

.repair-cp2025-other-voice-slider__info {
  font-size: 15px;
  letter-spacing: var(--ls-sm);
}

.repair-cp2025-other-voice-slider__text {
  margin-top: 20px;
  line-height: 1.6;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-other-voice-slider__text {
    font-size: 1.4rem;
  }
}

.repair-cp2025-other-voice__source {
  font-size: 1.3rem;
  letter-spacing: var(--ls-sm);
  line-height: var(--lh-sm);
  font-weight: 400;
  margin-top: 12px;
  display: flex;
  justify-content: flex-end;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-other-voice__source {
    font-size: 1.2rem;
    display: inline-block;
  }
}

.repair-cp2025-other-voice-slider__arrow {
  max-width: 40px;
  cursor: pointer;
  transition: opacity 0.2s;
  position: absolute;
  top: 50%;
  z-index: 1;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-other-voice-slider__arrow {
    max-width: 32px;
  }
}

.repair-cp2025-other-voice-slider__arrow.arrow_prev {
  left: 0;
  transform: translateY(-50%) translateX(-55%);
  -webkit-transform: translateY(-50%) translateX(-55%);
  -ms-transform: translateY(-50%) translateX(-55%);
}

.repair-cp2025-other-voice-slider__arrow.arrow_next {
  right: 0;
  transform: translateY(-50%) translateX(55%) scale(-1, 1);
  -webkit-transform: translateY(-50%) translateX(55%) scale(-1, 1);
  -ms-transform: translateY(-50%) translateX(55%) scale(-1, 1);
}

.repair-cp2025-other-voice-slider__arrow:hover {
  opacity: 0.8;
}

/* 応募規約
---------------------------------------------- */
.repair-cp2025-terms-list__item:not(:first-child) {
  margin-top: 1.8em;
}

.repair-cp2025-terms-list__heading {
  font-family: var(--ff-tubd-b);
  font-size: 1.4rem;
  font-weight: 900;
  display: grid;
  grid-template-columns: 1em 1fr;
  letter-spacing: var(--ls-sm);
}

.repair-cp2025-terms-list__heading::before {
  content: "";
  display: block;
  transform: translateY(51%);
  width: 0.8em;
  height: 0.8em;
  background-color: var(--c-font);
}

.repair-cp2025-terms-list__content {
  font-size: 1.4rem;
  letter-spacing: var(--ls-sm);
}

.repair-cp2025-terms-list__item .c-list__item {
  font-size: 1.4rem !important;
}

.repair-cp2025-terms-list__accordion {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.repair-cp2025-terms-list__accordion:not([open]) {
  margin-top: 20px;
}

.repair-cp2025-terms-list__accordion[open] {
  flex-direction: column-reverse;
  gap: 20px;
  margin-top: auto;
}

.repair-cp2025-terms-list__accordion-btn {
  text-align: center;
  font-size: 1.8rem;
  font-family: var(--ff-tubd-b);
  cursor: pointer;
  list-style: none;
  transition: opacity 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  font-weight: 900;
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-terms-list__accordion-btn {
    font-size: 1.6rem;
    gap: 12px;
  }
}

.repair-cp2025-terms-list__accordion-btn:hover {
  opacity: 0.8;
}

.repair-cp2025-terms-list__accordion-btn::after {
  content: "";
  display: block;
  background-image: url('data:image/svg+xml,<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_315_2)"><path d="M14 0C6.26801 0 0 6.26801 0 14C0 21.732 6.26801 28 14 28C21.732 28 28 21.732 28 14C28 6.26801 21.732 0 14 0Z" fill="white"/><path d="M28 14C28 16.7689 27.1789 19.4757 25.6406 21.778C24.1022 24.0803 21.9157 25.8747 19.3576 26.9343C16.7994 27.9939 13.9845 28.2712 11.2687 27.731C8.553 27.1908 6.05844 25.8574 4.10051 23.8995C2.14257 21.9416 0.8092 19.447 0.269007 16.7313C-0.271186 14.0155 0.00606036 11.2006 1.06569 8.64243C2.12531 6.08427 3.91973 3.89777 6.22202 2.35943C8.52431 0.821086 11.2311 0 14 0C17.713 0 21.274 1.475 23.8995 4.1005C26.525 6.72601 28 10.287 28 14ZM8.541 11.079C8.29722 10.8353 7.96666 10.6985 7.622 10.6985C7.27734 10.6985 6.94678 10.8353 6.703 11.079C6.58271 11.199 6.48745 11.3416 6.42273 11.4987C6.35801 11.6558 6.32513 11.8241 6.326 11.994C6.32679 12.3401 6.4649 12.6717 6.71 12.916L13.057 19.243C13.3037 19.467 13.6269 19.5877 13.96 19.5803C14.2931 19.5728 14.6106 19.4378 14.847 19.203L21.288 12.782C21.5188 12.5358 21.6448 12.2095 21.6394 11.8721C21.6339 11.5347 21.4975 11.2126 21.259 10.974C21.0205 10.7353 20.6985 10.5987 20.3611 10.5931C20.0237 10.5875 19.6973 10.7134 19.451 10.944L13.999 16.457L8.541 11.079Z" fill="%23F47A01"/></g><defs><clipPath id="clip0_315_2"><rect width="28" height="28" fill="white"/></clipPath></defs></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  width: 28px;
  aspect-ratio: 1;
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-terms-list__accordion-btn::after {
    width: 20px;
  }
}

.repair-cp2025-terms-list__accordion[open] .repair-cp2025-terms-list__accordion-btn::after {
  rotate: 180deg;
}

.repair-cp2025-terms-list__accordion-btn::-webkit-details-marker {
  display: none;
}

/* お問い合わせ先
---------------------------------------------- */
.repair-cp2025-contact-flow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-contact-flow {
    gap: 0 4px;
  }
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-contact-flow {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    width: fit-content;
    margin-inline: auto;
  }
}

.repair-cp2025-contact-flow__text {
  font-family: var(--ff-tubd-b);
  font-size: 2rem;
  font-weight: 900;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-contact-flow__text {
    font-size: 1.6rem;
  }
}

.repair-cp2025-contact-flow__text:first-child {
  grid-column: 1/3;
}

.repair-cp2025-contact-flow__num {
  color: var(--c-white);
  background-color: var(--c-pink);
  width: 32px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border-radius: 5px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-contact-flow__num {
    width: 28px;
  }
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-contact-flow__num {
    margin-left: 18px;
  }
}

.repair-cp2025-contact-btn {
  display: block;
  max-width: 470px;
  margin-inline: auto;
  margin-top: 24px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-contact-btn.-sp{
    display: block !important;
    max-width: 320px;
  }
}

.repair-cp2025-contact-reception {
  display: block;
  margin-top: 20px;
  font-size: 2rem;
  font-family: var(--ff-tubd-b);
  font-weight: 700;
  text-align: center;
  letter-spacing: var(--ls-sm);
  line-height: 1.4;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-contact-reception {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 499.999px) {
  .repair-cp2025-contact-reception {
    font-size: 1.5rem;
  }
}

.repair-cp2025-contact-reception .fz-sm {
  font-size: 1.8rem;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-contact-reception .fz-sm {
    font-size: 1.5rem;
  }
}

.repair-cp2025-contact__note {
  display: block;
  font-size: 1.5rem;
  text-align: center;
  margin-inline: auto;
  margin-top: 16px;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-contact__note {
    font-size: 1.2rem;
  }
}

/* 追従ボタン
---------------------------------------------- */
.repair-cp2025-follow-btn {
  display: none;
  position: fixed;
  max-width: 60px;
  right: 0;
  top: 12%;
  z-index: 2;
}

@media screen and (max-width: 767.499px) {
  .repair-cp2025-follow-btn {
    max-width: 100%;
    width: 100%;
    top: auto;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }

  .repair-cp2025-follow-btn__link {
    display: block;
    padding: 12px 16px;
    background: linear-gradient(60deg, #f4bc01, #f47a01);
    border-radius: 10px 10px 0 0;
    text-align: center;
  }

  .repair-cp2025-follow-btn__text {
    font-size: 1.5rem;
    font-family: var(--ff-tubd-b);
    font-weight: 900;
    color: var(--c-white);
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 8px;
    align-items: center;
    width: fit-content;
    margin-inline: auto;
  }

  .repair-cp2025-follow-btn__text::before {
    content: "";
    display: block;
    background: url('data:image/svg+xml,<svg width="24" height="22" viewBox="0 0 24 22" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_320_2)"><path d="M20.306 8.462L17.058 5.156L14.48 2.534L12 0L0 12.221L1.778 14.034L3.373 12.411V22.003H20.627V12.406L22.222 14.034L24 12.221L20.306 8.462ZM19.132 20.476H14.044V14.785H9.956V20.476H4.869V10.885L12 3.621L19.127 10.882V20.476H19.132Z" fill="white"/></g><defs><clipPath id="clip0_320_2"><rect width="24" height="22" fill="white"/></clipPath></defs></svg>');
    aspect-ratio: 12/11;
    width: 24px;
  }
}
