/* Generated from the verified 2026-08-08 LP snapshot. */

/* ===== ReBORN HERO ===== */
  .reborn-hero {
    --hero-max-width: 900px;
    --hero-title-x: 4.3%;
    --hero-title-y: 61.2%;

    width: 100%;
    margin: 0;
    padding: 80px 0 96px;
    overflow: hidden;
    background: #000;
    box-sizing: border-box;
  }

  .reborn-hero__inner {
    position: relative;
    width: min(
      var(--hero-max-width),
      calc(100% - 30px)
    );
    margin: 0 auto;
    container-type: inline-size;
  }

  .reborn-hero__picture {
    display: block;
    width: 100%;
  }

  .reborn-hero__image {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
  }

  .reborn-hero__title {
    position: absolute;
    top: var(--hero-title-y);
    left: var(--hero-title-x);
    z-index: 2;

    margin: 0;
    padding: 0;

    color: #fff;
    font-family:
      "Noto Sans JP",
      "Hiragino Kaku Gothic ProN",
      "Yu Gothic",
      "Meiryo",
      sans-serif;
    font-size: clamp(10px, 2.05cqw, 20px);
    font-weight: 400;
    line-height: 1.25;
    letter-spacing: 0.025em;
    white-space: nowrap;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.65);
  }

  /* ===== スマートフォン ===== */
  @media screen and (max-width: 767px) {
    .reborn-hero {
      --hero-title-x: 4.2%;
      --hero-title-y: 59.3%;

      padding-top: 16px;
      padding-bottom: 28px;
    }

    .reborn-hero__inner {
      width: calc(100% - 16px);
      max-width: 430px;
    }

    .reborn-hero__title {
      font-size: clamp(13px, 3.8cqw, 16px);
      font-weight: 700;
      letter-spacing: 0.01em;
    }
  }

html,
body {
  margin: 0 !important;
  padding: 0 !important;
  background: #000 !important;
}

.reborn-core-copy,
.reborn-core-copy * {
  box-sizing: border-box;
}

.reborn-core-copy {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  background: #000;
  color: #fff;
  font-family: inherit;
}

.reborn-core-copy__inner {
  width: min(calc(100% - 40px), 1040px);
  margin: 0 auto;
  padding: 62px 0 66px;
  text-align: center;
}

/* メインコピー */

.reborn-core-copy__title {
  margin: 0;
  color: #fff;
  font-size: clamp(29px, 2.5vw, 34px);
  font-weight: 700;
  line-height: 1.55;
  letter-spacing: 0.05em;
}

/* 控えめな金線 */

.reborn-core-copy__line {
  width: 58px;
  height: 1px;
  margin: 25px auto 23px;
  background: linear-gradient(
    90deg,
    transparent,
    #73b6ed,
    transparent
  );
}

/* 補足文 */

.reborn-core-copy__text {
  margin: 0;
  color: #fff;
  font-size: clamp(17px, 1.45vw, 19px);
  font-weight: 600;
  line-height: 1.9;
  letter-spacing: 0.025em;
}

.reborn-core-copy__mobile-break {
  display: none;
}

/* スマートフォン */

@media (max-width: 640px) {
  .reborn-core-copy__inner {
    width: min(calc(100% - 28px), 480px);
    padding: 58px 0 56px;
  }

  .reborn-core-copy__title {
    font-size: 21px;
    line-height: 1.65;
    letter-spacing: 0.035em;
  }

  .reborn-core-copy__line {
    width: 48px;
    margin: 23px auto 21px;
  }

  .reborn-core-copy__text {
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0;
  }

  .reborn-core-copy__mobile-break {
    display: block;
  }
}

.reborn-dirt-analysis,
.reborn-dirt-analysis * {
  box-sizing: border-box;
}

.reborn-dirt-analysis {
  width: 100%;
  margin: 0;
  padding: 60px 0 88px;
  overflow: hidden;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-dirt-analysis__inner {
  width: min(calc(100% - 64px), 1220px);
  margin: 0 auto;
}

/* 3カラム */

.reborn-dirt-analysis__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 38px;
  align-items: start;
}

.reborn-dirt-analysis__item {
  min-width: 0;
  margin: 0;
}

/* 写真 */

.reborn-dirt-analysis__image-frame {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  background: #080808;
  border: 1px solid rgba(255, 255, 255, 0.18);
}

/* 左上のメタリックブルーのコーナー */

.reborn-dirt-analysis__image-frame::before {
  position: absolute;
  z-index: 2;
  top: -1px;
  left: -1px;
  width: 25px;
  height: 25px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
  content: "";
  pointer-events: none;
}

/* 右下のメタリックブルーのコーナー */

.reborn-dirt-analysis__image-frame::after {
  position: absolute;
  z-index: 2;
  right: -1px;
  bottom: -1px;
  width: 25px;
  height: 25px;
  border-right: 2px solid #73b6ed;
  border-bottom: 2px solid #73b6ed;
  content: "";
  pointer-events: none;
}

.reborn-dirt-analysis__image {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  border: 0 !important;
}

/* 写真下の情報 */

.reborn-dirt-analysis__caption {
  position: relative;
  margin-top: 25px;
  padding: 1px 0 1px 18px;
  border-left: 1px solid #73b6ed;
}

.reborn-dirt-analysis__category {
  display: block;
  margin: 0 0 9px;
  color: #73b6ed;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.13em;
}

.reborn-dirt-analysis__title-row {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 13px;
}

.reborn-dirt-analysis__title {
  flex: 0 0 auto;
  margin: 0;
  color: #fff;
  font-size: 21px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.025em;
  white-space: nowrap;
}

.reborn-dirt-analysis__title-line {
  flex: 1 1 auto;
  height: 1px;
  background: rgba(255, 255, 255, 0.24);
}

.reborn-dirt-analysis__text {
  margin: 13px 0 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0.01em;
  text-align: left;
}

/* 締め */

.reborn-dirt-analysis__closing {
  position: relative;
  width: min(100%, 820px);
  margin: 94px auto 0;
  padding: 52px 24px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.23);
  text-align: center;
}

.reborn-dirt-analysis__closing::before {
  position: absolute;
  top: -1px;
  left: 50%;
  width: 64px;
  height: 2px;
  background: #73b6ed;
  content: "";
  transform: translateX(-50%);
}

.reborn-dirt-analysis__closing-main {
  margin: 0;
  color: #fff;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.025em;
}

.reborn-dirt-analysis__closing-brand {
  position: relative;
  display: inline-block;
  margin: 29px 0 0;
  padding-top: 19px;
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.025em;
}

.reborn-dirt-analysis__closing-brand::before {
  position: absolute;
  top: 0;
  left: 50%;
  width: 34px;
  height: 1px;
  background: rgba(115, 182, 237, 0.9);
  content: "";
  transform: translateX(-50%);
}

/* タブレット */

@media (max-width: 900px) {
  .reborn-dirt-analysis__inner {
    width: min(calc(100% - 38px), 760px);
  }

  .reborn-dirt-analysis__grid {
    gap: 22px;
  }

  .reborn-dirt-analysis__caption {
    padding-left: 14px;
  }

  .reborn-dirt-analysis__title {
    font-size: 18px;
  }

  .reborn-dirt-analysis__text {
    font-size: 14px;
  }
}

/* スマートフォン */

@media (max-width: 640px) {
  .reborn-dirt-analysis {
    padding: 54px 0 66px;
  }

  .reborn-dirt-analysis__inner {
    width: 100%;
  }

  .reborn-dirt-analysis__grid {
    display: block;
  }

  .reborn-dirt-analysis__item {
    width: calc(100% - 40px);
    margin: 0 auto;
    padding-bottom: 62px;
  }

  .reborn-dirt-analysis__item + .reborn-dirt-analysis__item {
    margin-top: 2px;
  }

  .reborn-dirt-analysis__image-frame {
    width: 100%;
  }

  .reborn-dirt-analysis__image-frame::before,
  .reborn-dirt-analysis__image-frame::after {
    width: 21px;
    height: 21px;
  }

  .reborn-dirt-analysis__caption {
    margin-top: 22px;
    padding-left: 15px;
  }

  .reborn-dirt-analysis__category {
    margin-bottom: 8px;
    font-size: 10px;
    letter-spacing: 0.12em;
  }

  .reborn-dirt-analysis__title-row {
    gap: 12px;
  }

  .reborn-dirt-analysis__title {
    font-size: 18px;
    line-height: 1.4;
  }

  .reborn-dirt-analysis__text {
    margin-top: 11px;
    font-size: 14px;
    line-height: 1.75;
  }

  .reborn-dirt-analysis__closing {
    width: calc(100% - 48px);
    margin-top: 14px;
    padding: 43px 0 0;
  }

  .reborn-dirt-analysis__closing::before {
    width: 52px;
  }

  .reborn-dirt-analysis__closing-main {
    font-size: 17px;
    font-weight: 600;
    line-height: 1.8;
    letter-spacing: 0;
  }

  .reborn-dirt-analysis__closing-brand {
    margin-top: 26px;
    padding-top: 17px;
    font-size: 17px;
    line-height: 1.6;
    letter-spacing: 0;
  }
}

.reborn-deep-reset,
.reborn-deep-reset * {
  box-sizing: border-box;
}

.reborn-deep-reset {
  width: 100%;
  margin: 0;
  padding: 26px 0 88px;
  overflow: hidden;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-deep-reset__inner {
  width: min(calc(100% - 64px), 960px);
  margin: 0 auto;
}

/* 重点洗浄箇所の車両図 */

.reborn-deep-reset__diagram {
  width: min(100%, 900px);
  margin: 0 auto;
}

.reborn-deep-reset__diagram-image {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* 車両図直下の説明 */

.reborn-deep-reset__lead {
  width: min(100%, 720px);
  margin: 38px auto 76px;
  text-align: center;
}

.reborn-deep-reset__lead-main {
  margin: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.9;
}

.reborn-deep-reset__lead-line {
  width: 46px;
  height: 1px;
  margin: 24px auto;
  background: #73b6ed;
}

.reborn-deep-reset__lead-sub {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 2;
}

/* 汚れ事例4点 */

.reborn-deep-reset__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 66px 42px;
}

.reborn-deep-reset__item {
  min-width: 0;
  margin: 0;
}

.reborn-deep-reset__image-frame {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background: #080808;
  border: 1px solid rgba(255, 255, 255, 0.18);
}

/* 左上の青のコーナー */

.reborn-deep-reset__image-frame::before {
  position: absolute;
  z-index: 2;
  top: -1px;
  left: -1px;
  width: 25px;
  height: 25px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
  content: "";
  pointer-events: none;
}

/* 右下の青のコーナー */

.reborn-deep-reset__image-frame::after {
  position: absolute;
  z-index: 2;
  right: -1px;
  bottom: -1px;
  width: 25px;
  height: 25px;
  border-right: 2px solid #73b6ed;
  border-bottom: 2px solid #73b6ed;
  content: "";
  pointer-events: none;
}

.reborn-deep-reset__image-frame img.reborn-deep-reset__image {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* 写真下の説明 */

.reborn-deep-reset__caption {
  position: relative;
  margin-top: 23px;
  padding: 1px 0 1px 18px;
  border-left: 1px solid #73b6ed;
}

.reborn-deep-reset__category {
  display: block;
  margin: 0 0 8px;
  color: #73b6ed;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.13em;
}

.reborn-deep-reset__title-row {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 13px;
}

.reborn-deep-reset__title {
  flex: 0 0 auto;
  margin: 0;
  color: #fff;
  font-size: 21px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.01em;
}

.reborn-deep-reset__title-line {
  flex: 1 1 auto;
  height: 1px;
  background: rgba(255, 255, 255, 0.23);
}

.reborn-deep-reset__item-text {
  margin: 14px 0 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.85;
  letter-spacing: 0.01em;
}

/* 下部本文 */

.reborn-deep-reset__method {
  width: min(100%, 780px);
  margin: 100px auto 0;
}

.reborn-deep-reset__method-block {
  padding: 0 0 38px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.reborn-deep-reset__method-block +
.reborn-deep-reset__method-block {
  padding-top: 38px;
}

.reborn-deep-reset__method-block:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.reborn-deep-reset__method-text {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 2.1;
  letter-spacing: 0.01em;
}

.reborn-deep-reset__principle {
  position: relative;
  padding-left: 22px;
}

.reborn-deep-reset__principle::before {
  position: absolute;
  top: 4px;
  bottom: 4px;
  left: 0;
  width: 1px;
  background: #73b6ed;
  content: "";
}

.reborn-deep-reset__conclusion {
  color: #fff;
  font-size: 17px;
  font-weight: 700;
}

/* タブレット */

@media (max-width: 900px) {
  .reborn-deep-reset__inner {
    width: min(calc(100% - 42px), 760px);
  }

  .reborn-deep-reset__grid {
    gap: 52px 26px;
  }

  .reborn-deep-reset__title {
    font-size: 18px;
  }

  .reborn-deep-reset__item-text {
    font-size: 14px;
  }
}

/* スマートフォン */

@media (max-width: 640px) {
  .reborn-deep-reset {
    padding: 18px 0 68px;
  }

  .reborn-deep-reset__inner {
    width: 100%;
  }

  .reborn-deep-reset__diagram {
    width: calc(100% - 28px);
  }

  .reborn-deep-reset__lead {
    width: calc(100% - 48px);
    margin-top: 30px;
    margin-bottom: 58px;
  }

  .reborn-deep-reset__lead-main {
    font-size: 15px;
    line-height: 1.85;
  }

  .reborn-deep-reset__lead-line {
    width: 42px;
    margin: 20px auto;
  }

  .reborn-deep-reset__lead-sub {
    font-size: 14px;
    line-height: 1.9;
  }

  .reborn-deep-reset__grid {
    display: block;
  }

  .reborn-deep-reset__item {
    width: calc(100% - 40px);
    margin: 0 auto;
  }

  .reborn-deep-reset__item +
  .reborn-deep-reset__item {
    margin-top: 62px;
  }

  .reborn-deep-reset__image-frame::before,
  .reborn-deep-reset__image-frame::after {
    width: 21px;
    height: 21px;
  }

  .reborn-deep-reset__caption {
    margin-top: 21px;
    padding-left: 15px;
  }

  .reborn-deep-reset__category {
    margin-bottom: 8px;
    font-size: 10px;
    letter-spacing: 0.12em;
  }

  .reborn-deep-reset__title-row {
    gap: 11px;
  }

  .reborn-deep-reset__title {
    font-size: 18px;
    line-height: 1.45;
  }

  .reborn-deep-reset__item-text {
    margin-top: 11px;
    font-size: 14px;
    line-height: 1.85;
  }

  .reborn-deep-reset__method {
    width: calc(100% - 48px);
    margin-top: 78px;
  }

  .reborn-deep-reset__method-block {
    padding-bottom: 31px;
  }

  .reborn-deep-reset__method-block +
  .reborn-deep-reset__method-block {
    padding-top: 31px;
  }

  .reborn-deep-reset__method-text {
    font-size: 14px;
    line-height: 2;
  }

  .reborn-deep-reset__principle {
    padding-left: 17px;
  }

  .reborn-deep-reset__conclusion {
    font-size: 15px;
  }
}

.reborn-care-section,
.reborn-care-section * {
  box-sizing: border-box;
}

.reborn-care-section {
  width: 100%;
  margin: 0;
  padding: 26px 0 84px;
  overflow: hidden;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-care-section__inner {
  width: min(calc(100% - 64px), 960px);
  margin: 0 auto;
}

/* 写真・管理対象 */

.reborn-care-section__targets {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 42px;
  align-items: start;
}

.reborn-care-section__target {
  min-width: 0;
  margin: 0;
}

/* 写真枠 */

.reborn-care-section__image-frame {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  background: #080808;
  border: 1px solid rgba(255, 255, 255, 0.18);
}

.reborn-care-section__image-frame::before {
  position: absolute;
  z-index: 2;
  top: -1px;
  left: -1px;
  width: 25px;
  height: 25px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
  content: "";
  pointer-events: none;
}

.reborn-care-section__image-frame::after {
  position: absolute;
  z-index: 2;
  right: -1px;
  bottom: -1px;
  width: 25px;
  height: 25px;
  border-right: 2px solid #73b6ed;
  border-bottom: 2px solid #73b6ed;
  content: "";
  pointer-events: none;
}

.reborn-care-section__image {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* 写真下の説明 */

.reborn-care-section__caption {
  position: relative;
  margin-top: 23px;
  padding: 1px 0 1px 18px;
  border-left: 1px solid #73b6ed;
}

.reborn-care-section__category {
  display: block;
  margin: 0 0 8px;
  color: #73b6ed;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.13em;
}

.reborn-care-section__title-row {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 13px;
}

.reborn-care-section__target-title {
  flex: 0 0 auto;
  margin: 0;
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

.reborn-care-section__title-line {
  flex: 1 1 auto;
  height: 1px;
  background: rgba(255, 255, 255, 0.23);
}

.reborn-care-section__target-text {
  margin: 14px 0 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.9;
  letter-spacing: 0.01em;
}

/* CARE CLEAN定義 */

.reborn-care-section__lead {
  position: relative;
  width: min(100%, 720px);
  margin: 82px auto 0;
  padding: 0 24px 42px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.21);
  text-align: center;
}

.reborn-care-section__lead::after {
  position: absolute;
  bottom: -1px;
  left: 50%;
  width: 54px;
  height: 2px;
  background: #73b6ed;
  content: "";
  transform: translateX(-50%);
}

.reborn-care-section__lead-text {
  margin: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.01em;
}

/* 本文 */

.reborn-care-section__body {
  width: min(100%, 780px);
  margin: 54px auto 0;
}

.reborn-care-section__block {
  padding: 0 0 38px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.reborn-care-section__block +
.reborn-care-section__block {
  padding-top: 38px;
}

.reborn-care-section__block:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.reborn-care-section__text {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 2.1;
  letter-spacing: 0.01em;
}

/* 結論部分 */

.reborn-care-section__principle {
  position: relative;
  padding-left: 22px;
}

.reborn-care-section__principle::before {
  position: absolute;
  top: 4px;
  bottom: 4px;
  left: 0;
  width: 1px;
  background: #73b6ed;
  content: "";
}

.reborn-care-section__key {
  font-size: 18px;
  font-weight: 700;
}

.reborn-care-section__conclusion {
  font-size: 17px;
  font-weight: 700;
}

/* 注意書き */

.reborn-care-section__note {
  margin: 52px 0 0;
  padding: 17px 20px;
  border-left: 1px solid rgba(115, 182, 237, 0.85);
  color: rgba(255, 255, 255, 0.88);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.8;
}

/* タブレット */

@media (max-width: 900px) {
  .reborn-care-section__inner {
    width: min(calc(100% - 42px), 760px);
  }

  .reborn-care-section__targets {
    gap: 26px;
  }

  .reborn-care-section__target-title {
    font-size: 18px;
  }

  .reborn-care-section__target-text {
    font-size: 14px;
  }

  .reborn-care-section__lead-text {
    font-size: 17px;
  }

  .reborn-care-section__text {
    font-size: 15px;
  }
}

/* スマートフォン */

@media (max-width: 640px) {
  .reborn-care-section {
    padding: 18px 0 66px;
  }

  .reborn-care-section__inner {
    width: 100%;
  }

  .reborn-care-section__targets {
    display: block;
  }

  .reborn-care-section__target {
    width: calc(100% - 40px);
    margin: 0 auto;
  }

  .reborn-care-section__target +
  .reborn-care-section__target {
    margin-top: 62px;
  }

  .reborn-care-section__image-frame {
    aspect-ratio: 4 / 3;
  }

  .reborn-care-section__image-frame::before,
  .reborn-care-section__image-frame::after {
    width: 21px;
    height: 21px;
  }

  .reborn-care-section__caption {
    margin-top: 21px;
    padding-left: 15px;
  }

  .reborn-care-section__category {
    margin-bottom: 8px;
    font-size: 10px;
    letter-spacing: 0.12em;
  }

  .reborn-care-section__title-row {
    gap: 11px;
  }

  .reborn-care-section__target-title {
    font-size: 18px;
    line-height: 1.5;
  }

  .reborn-care-section__target-text {
    margin-top: 11px;
    font-size: 14px;
    line-height: 1.9;
  }

  .reborn-care-section__lead {
    width: calc(100% - 48px);
    margin-top: 72px;
    padding: 0 0 34px;
  }

  .reborn-care-section__lead::after {
    width: 46px;
  }

  .reborn-care-section__lead-text {
    font-size: 15px;
    line-height: 1.95;
  }

  .reborn-care-section__body {
    width: calc(100% - 48px);
    margin-top: 42px;
  }

  .reborn-care-section__block {
    padding-bottom: 30px;
  }

  .reborn-care-section__block +
  .reborn-care-section__block {
    padding-top: 30px;
  }

  .reborn-care-section__text {
    font-size: 14px;
    line-height: 2;
  }

  .reborn-care-section__principle {
    padding-left: 17px;
  }

  .reborn-care-section__key {
    font-size: 16px;
  }

  .reborn-care-section__conclusion {
    font-size: 15px;
  }

  .reborn-care-section__note {
    margin-top: 42px;
    padding: 14px 15px;
    font-size: 12px;
    line-height: 1.8;
  }
}

.reborn-chain-maintenance,
.reborn-chain-maintenance * {
  box-sizing: border-box;
}

.reborn-chain-maintenance {
  width: 100%;
  margin: 0;
  padding: 76px 0 86px;
  overflow: hidden;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-chain-maintenance__inner {
  width: min(calc(100% - 64px), 960px);
  margin: 0 auto;
}

/* 見出し */

.reborn-chain-maintenance__header {
  margin: 0 auto 58px;
  text-align: center;
}

.reborn-chain-maintenance__title {
  margin: 0;
  color: #fff;
  font-size: 28px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.025em;
}

.reborn-chain-maintenance__title::before {
  content: "− ";
}

.reborn-chain-maintenance__title::after {
  content: " −";
}

.reborn-chain-maintenance__subtitle {
  margin: 9px 0 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

.reborn-chain-maintenance__header-line {
  width: 48px;
  height: 1px;
  margin: 22px auto 0;
  background: #73b6ed;
}

/* 写真 */

.reborn-chain-maintenance__image-frame {
  position: relative;
  width: 100%;
  margin: 0;
  overflow: hidden;
  aspect-ratio: 1184 / 532;
  background: #080808;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.reborn-chain-maintenance__image-frame::before {
  position: absolute;
  z-index: 2;
  top: -1px;
  left: -1px;
  width: 26px;
  height: 26px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
  content: "";
  pointer-events: none;
}

.reborn-chain-maintenance__image-frame::after {
  position: absolute;
  z-index: 2;
  right: -1px;
  bottom: -1px;
  width: 26px;
  height: 26px;
  border-right: 2px solid #73b6ed;
  border-bottom: 2px solid #73b6ed;
  content: "";
  pointer-events: none;
}

.reborn-chain-maintenance__image {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* 導入 */

.reborn-chain-maintenance__lead {
  position: relative;
  width: min(100%, 760px);
  margin: 66px auto 0;
  padding: 0 0 42px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.21);
  text-align: center;
}

.reborn-chain-maintenance__lead::after {
  position: absolute;
  bottom: -1px;
  left: 50%;
  width: 54px;
  height: 2px;
  background: #73b6ed;
  content: "";
  transform: translateX(-50%);
}

.reborn-chain-maintenance__lead-text {
  margin: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.01em;
}

/* 本文 */

.reborn-chain-maintenance__body {
  width: min(100%, 780px);
  margin: 52px auto 0;
}

.reborn-chain-maintenance__block {
  padding: 0 0 38px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.reborn-chain-maintenance__block +
.reborn-chain-maintenance__block {
  padding-top: 38px;
}

.reborn-chain-maintenance__block:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.reborn-chain-maintenance__text {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 2.1;
  letter-spacing: 0.01em;
}

/* 結論 */

.reborn-chain-maintenance__key {
  font-size: 17px;
  font-weight: 700;
}

.reborn-chain-maintenance__conclusion {
  font-size: 17px;
  font-weight: 700;
}

/* 注意書き */

.reborn-chain-maintenance__note {
  margin: 52px 0 0;
  padding: 17px 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.8;
}

/* タブレット */

@media (max-width: 900px) {
  .reborn-chain-maintenance__inner {
    width: min(calc(100% - 42px), 760px);
  }

  .reborn-chain-maintenance__title {
    font-size: 25px;
  }

  .reborn-chain-maintenance__text {
    font-size: 15px;
  }
}

/* スマートフォン */

@media (max-width: 640px) {
  .reborn-chain-maintenance {
    padding: 66px 0 68px;
  }

  .reborn-chain-maintenance__inner {
    width: 100%;
  }

  .reborn-chain-maintenance__header {
    width: calc(100% - 40px);
    margin-bottom: 46px;
  }

  .reborn-chain-maintenance__title {
    font-size: 20px;
    line-height: 1.45;
    letter-spacing: 0;
  }

  .reborn-chain-maintenance__subtitle {
    margin-top: 8px;
    font-size: 13px;
  }

  .reborn-chain-maintenance__header-line {
    width: 44px;
    margin-top: 18px;
  }

  .reborn-chain-maintenance__image-frame {
    width: calc(100% - 40px);
    margin: 0 auto;
    aspect-ratio: 1184 / 532;
  }

  .reborn-chain-maintenance__image-frame::before,
  .reborn-chain-maintenance__image-frame::after {
    width: 21px;
    height: 21px;
  }

  .reborn-chain-maintenance__lead {
    width: calc(100% - 48px);
    margin-top: 52px;
    padding-bottom: 34px;
  }

  .reborn-chain-maintenance__lead::after {
    width: 46px;
  }

  .reborn-chain-maintenance__lead-text {
    font-size: 15px;
    line-height: 1.95;
  }

  .reborn-chain-maintenance__body {
    width: calc(100% - 48px);
    margin-top: 42px;
  }

  .reborn-chain-maintenance__block {
    padding-bottom: 30px;
  }

  .reborn-chain-maintenance__block +
  .reborn-chain-maintenance__block {
    padding-top: 30px;
  }

  .reborn-chain-maintenance__text {
    font-size: 14px;
    line-height: 2;
  }

  .reborn-chain-maintenance__key,
  .reborn-chain-maintenance__conclusion {
    font-size: 15px;
  }

  .reborn-chain-maintenance__note {
    margin-top: 42px;
    padding: 14px 0;
    font-size: 12px;
    line-height: 1.8;
  }
}

.reborn-coat-section,
.reborn-coat-section * {
  box-sizing: border-box;
}

.reborn-coat-section {
  width: 100%;
  margin: 0;
  padding: 26px 0 88px;
  overflow: hidden;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-coat-section__inner {
  width: min(calc(100% - 64px), 960px);
  margin: 0 auto;
}

/* ==================================================
   導入
================================================== */

.reborn-coat-section__lead {
  position: relative;
  width: min(100%, 760px);
  margin: 0 auto;
  padding: 0 0 42px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.21);
  text-align: center;
}

.reborn-coat-section__lead::after {
  position: absolute;
  bottom: -1px;
  left: 50%;
  width: 54px;
  height: 2px;
  background: #73b6ed;
  content: "";
  transform: translateX(-50%);
}

.reborn-coat-section__lead-text {
  margin: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.01em;
}

/* ==================================================
   コーティング思想
================================================== */

.reborn-coat-section__intro {
  width: min(100%, 780px);
  margin: 54px auto 0;
}

.reborn-coat-section__intro-block {
  padding: 0 0 38px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.reborn-coat-section__intro-block +
.reborn-coat-section__intro-block {
  padding-top: 38px;
}

.reborn-coat-section__intro-block:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.reborn-coat-section__intro-text {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 2.1;
  letter-spacing: 0.01em;
}

.reborn-coat-section__principle {
  font-size: 17px;
  font-weight: 700;
}

/* ==================================================
   STANDARD / SPECIAL
================================================== */

.reborn-coat-section__courses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 42px;
  align-items: start;
  margin-top: 84px;
}

.reborn-coat-section__course {
  min-width: 0;
}

/* ==================================================
   施工範囲画像
================================================== */

.reborn-coat-section__image-frame {
  position: relative;
  width: 100%;
  margin: 0;
  overflow: hidden;
  aspect-ratio: 1536 / 376;
  background: #050505;
  border: 1px solid rgba(255, 255, 255, 0.18);
}

.reborn-coat-section__image-frame::before {
  position: absolute;
  z-index: 2;
  top: -1px;
  left: -1px;
  width: 24px;
  height: 24px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
  content: "";
  pointer-events: none;
}

.reborn-coat-section__image-frame::after {
  position: absolute;
  z-index: 2;
  right: -1px;
  bottom: -1px;
  width: 24px;
  height: 24px;
  border-right: 2px solid #73b6ed;
  border-bottom: 2px solid #73b6ed;
  content: "";
  pointer-events: none;
}

.reborn-coat-section__image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
}

/* ==================================================
   コース見出し
================================================== */

.reborn-coat-section__course-header {
  margin-top: 24px;
}

.reborn-coat-section__course-type {
  display: block;
  margin: 0 0 8px;
  color: #73b6ed;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.13em;
}

.reborn-coat-section__title-row {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 13px;
}

.reborn-coat-section__course-title {
  flex: 0 0 auto;
  margin: 0;
  color: #fff;
  font-size: 23px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

.reborn-coat-section__title-line {
  flex: 1 1 auto;
  height: 1px;
  background: rgba(255, 255, 255, 0.23);
}

/* ==================================================
   コース本文
================================================== */

.reborn-coat-section__course-body {
  margin-top: 24px;
}

.reborn-coat-section__course-block {
  padding: 0 0 30px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

.reborn-coat-section__course-block +
.reborn-coat-section__course-block {
  padding-top: 30px;
}

.reborn-coat-section__course-block:last-child {
  border-bottom: 0;
}

.reborn-coat-section__course-text {
  margin: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.01em;
}

/* ==================================================
   仕様
================================================== */

.reborn-coat-section__specs {
  margin: 0;
  padding: 0;
}

.reborn-coat-section__spec-row {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 14px;
  padding: 11px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.reborn-coat-section__spec-row:last-child {
  border-bottom: 0;
}

.reborn-coat-section__spec-label,
.reborn-coat-section__spec-value {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.8;
}

.reborn-coat-section__spec-label {
  color: #73b6ed;
}

.reborn-coat-section__spec-value {
  color: #fff;
}

/* ==================================================
   タブレット
================================================== */

@media (max-width: 900px) {
  .reborn-coat-section__inner {
    width: min(calc(100% - 42px), 760px);
  }

  .reborn-coat-section__courses {
    gap: 28px;
  }

  .reborn-coat-section__course-title {
    font-size: 20px;
  }

  .reborn-coat-section__intro-text,
  .reborn-coat-section__course-text {
    font-size: 15px;
  }
}

/* ==================================================
   スマートフォン
================================================== */

@media (max-width: 640px) {
  .reborn-coat-section {
    padding: 20px 0 70px;
  }

  .reborn-coat-section__inner {
    width: 100%;
  }

  /* 導入 */

  .reborn-coat-section__lead {
    width: calc(100% - 48px);
    padding-bottom: 34px;
  }

  .reborn-coat-section__lead::after {
    width: 46px;
  }

  .reborn-coat-section__lead-text {
    font-size: 15px;
    line-height: 1.95;
  }

  /* コーティング思想 */

  .reborn-coat-section__intro {
    width: calc(100% - 48px);
    margin-top: 42px;
  }

  .reborn-coat-section__intro-block {
    padding-bottom: 30px;
  }

  .reborn-coat-section__intro-block +
  .reborn-coat-section__intro-block {
    padding-top: 30px;
  }

  .reborn-coat-section__intro-text {
    font-size: 14px;
    line-height: 2;
  }

  .reborn-coat-section__principle {
    font-size: 15px;
  }

  /* コース配置 */

  .reborn-coat-section__courses {
    display: block;
    margin-top: 68px;
  }

  .reborn-coat-section__course {
    width: calc(100% - 40px);
    margin: 0 auto;
  }

  /*
   STANDARDとSPECIALの区切り。
   旧設定の76px＋68pxを縮小。
  */

  .reborn-coat-section__course +
  .reborn-coat-section__course {
    margin-top: 40px;
    padding-top: 40px;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
  }

  /* 画像 */

  .reborn-coat-section__image-frame {
    aspect-ratio: 1536 / 376;
  }

  .reborn-coat-section__image-frame::before,
  .reborn-coat-section__image-frame::after {
    width: 20px;
    height: 20px;
  }

  /* コース見出し */

  .reborn-coat-section__course-header {
    margin-top: 22px;
  }

  .reborn-coat-section__course-type {
    font-size: 10px;
  }

  .reborn-coat-section__course-title {
    font-size: 20px;
  }

  /* コース本文 */

  .reborn-coat-section__course-text {
    font-size: 14px;
    line-height: 2;
  }

  .reborn-coat-section__course-block {
    padding-bottom: 27px;
  }

  .reborn-coat-section__course-block +
  .reborn-coat-section__course-block {
    padding-top: 27px;
  }

  /*
   各コース最終ブロックの下余白を除去。
   STANDARD終了後の不要な空白を防ぐ。
  */

  .reborn-coat-section__course-block:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }

  /* 仕様 */

  .reborn-coat-section__spec-row {
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 10px;
  }

  .reborn-coat-section__spec-label,
  .reborn-coat-section__spec-value {
    font-size: 13px;
  }
}

/* ========================================
   ReBORN 感情ベネフィット訴求
   ======================================== */

.rb-emotion,
.rb-emotion * {
  box-sizing: border-box;
}

.rb-emotion {
  --rb-emotion-bg: #000;
  --rb-emotion-panel: #0c0c0c;
  --rb-emotion-text: #fff;
  --rb-emotion-muted: #d2d2d2;
  --rb-emotion-line: #343434;
  --rb-emotion-gold: #73b6ed;

  width: 100%;
  background: var(--rb-emotion-bg);
  color: var(--rb-emotion-text);
  font-family: inherit;
}

.rb-emotion-inner {
  width: min(calc(100% - 40px), 820px);
  margin: 0 auto;
  padding: 72px 0 84px;
}

/* 外側パネル */

.rb-emotion-panel {
  position: relative;
  padding: 68px 76px 72px;
  border: 1px solid var(--rb-emotion-line);
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.035),
      transparent 42%
    ),
    var(--rb-emotion-panel);
  box-shadow:
    0 28px 70px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

/* 上部の青のアクセント */

.rb-emotion-panel::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 18%;
  width: 64%;
  height: 2px;
  background: linear-gradient(
    90deg,
    transparent,
    var(--rb-emotion-gold),
    transparent
  );
}

/* 見出し */

.rb-emotion-title {
  margin: 0 0 42px;
  text-align: center;
  font-size: clamp(21px, 2.3vw, 28px);
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}

.rb-emotion-title::after {
  content: "";
  display: block;
  width: 74px;
  height: 1px;
  margin: 23px auto 0;
  background: linear-gradient(
    90deg,
    transparent,
    var(--rb-emotion-gold),
    transparent
  );
}

/* PCでは見出し内の強制改行を無効化 */

.rb-emotion-mobile-break {
  display: none;
}

/* 本文共通 */

.rb-emotion-body {
  width: min(100%, 590px);
  margin: 0 auto;
  font-size: 17px;
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.025em;
  line-break: strict;
  word-break: normal;
}

.rb-emotion-body p {
  margin: 0 0 27px;
}

.rb-emotion-body p:last-child {
  margin-bottom: 0;
}

/* 問いかけ部分 */

.rb-emotion-question {
  margin-bottom: 34px;
}

/* 思い出の列挙 */

.rb-emotion-memory {
  margin: 34px 0;
  padding: 25px 28px;
  border-left: 2px solid var(--rb-emotion-gold);
  background:
    linear-gradient(
      90deg,
      rgba(115, 182, 237, 0.075),
      transparent 78%
    );
}

.rb-emotion-memory p {
  margin: 0;
}

/* 汚れの具体 */

.rb-emotion-dirt {
  margin: 34px 0 38px;
  color: var(--rb-emotion-muted);
}

.rb-emotion-dirt p {
  margin: 0;
}

/* 中間の区切り */

.rb-emotion-divider {
  position: relative;
  height: 1px;
  margin: 55px 0;
  background: linear-gradient(
    90deg,
    transparent,
    #3d3d3d 24%,
    #3d3d3d 76%,
    transparent
  );
}

.rb-emotion-divider::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 46px;
  height: 1px;
  transform: translateX(-50%);
  background: var(--rb-emotion-gold);
}

/* 艶・質感などの列挙 */

.rb-emotion-result {
  margin: 32px 0 38px;
  padding-left: 21px;
  border-left: 1px solid #555;
}

.rb-emotion-result p {
  margin: 0;
}

/* 強調文 */

.rb-emotion-focus {
  margin: 43px 0;
  text-align: center;
  font-size: clamp(18px, 2vw, 22px);
  line-height: 2;
  letter-spacing: 0.05em;
}

.rb-emotion-focus strong {
  font-weight: 700;
}

/* 最終部 */

.rb-emotion-closing {
  margin-top: 45px;
  padding-top: 31px;
  border-top: 1px solid var(--rb-emotion-line);
}

.rb-emotion-final {
  margin-top: 34px !important;
  color: #fff;
  font-size: clamp(17px, 1.8vw, 20px);
  font-weight: 700;
  line-height: 2;
}

/* ========================================
   タブレット
   ======================================== */

@media (max-width: 900px) {
  .rb-emotion-inner {
    width: min(calc(100% - 34px), 760px);
    padding: 62px 0 72px;
  }

  .rb-emotion-panel {
    padding: 58px 55px 62px;
  }
}

/* ========================================
   スマートフォン
   ======================================== */

@media (max-width: 640px) {
  .rb-emotion-inner {
    width: min(calc(100% - 16px), 480px);
    padding: 46px 0 58px;
  }

  .rb-emotion-panel {
    padding: 40px 16px 44px;
  }

  .rb-emotion-panel::before {
    left: 12%;
    width: 76%;
  }

  .rb-emotion-title {
    margin-bottom: 32px;
    font-size: 18px;
    line-height: 1.8;
    letter-spacing: 0.025em;
  }

  .rb-emotion-mobile-break {
    display: block;
  }

  .rb-emotion-title::after {
    margin-top: 17px;
  }

  .rb-emotion-body {
    width: 100%;
    font-size: 15px;
    line-height: 1.95;
    letter-spacing: 0;
  }

  .rb-emotion-body p {
    margin-bottom: 23px;
  }

  .rb-emotion-question {
    margin-bottom: 29px;
  }

  .rb-emotion-memory {
    margin: 29px 0;
    padding: 20px 14px;
  }

  /*
    スマホで「時間。」だけが次行へ落ちるのを防ぐ
  */
  .rb-emotion-long-line {
    display: block;
    white-space: nowrap;
    font-size: 14px;
  }

  .rb-emotion-dirt {
    margin: 29px 0 33px;
  }

  .rb-emotion-divider {
    margin: 42px 0;
  }

  .rb-emotion-result {
    margin: 28px 0 33px;
    padding-left: 14px;
  }

  .rb-emotion-focus {
    margin: 35px 0;
    text-align: center;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.025em;
  }

  .rb-emotion-closing {
    margin-top: 36px;
    padding-top: 26px;
  }

  .rb-emotion-final {
    margin-top: 28px !important;
    font-size: 16px;
    line-height: 2;
  }
}

/* 極端に狭い端末だけ通常改行を許可 */

@media (max-width: 350px) {
  .rb-emotion-long-line {
    white-space: normal;
    font-size: 14px;
  }
}

.reborn-preservation,
.reborn-preservation * {
  box-sizing: border-box;
}

.reborn-preservation {
  width: 100%;
  margin: 0;
  padding: 18px 0 88px;
  overflow: hidden;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-preservation__inner {
  width: min(calc(100% - 64px), 960px);
  margin: 0 auto;
}

/* ==================================================
   導入
================================================== */

.reborn-preservation__lead {
  width: min(100%, 720px);
  margin: 0 auto;
  padding: 0 20px;
  text-align: center;
}

.reborn-preservation__lead-text {
  margin: 0;
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.01em;
  text-align: center;
}

.reborn-preservation__lead-text
+ .reborn-preservation__lead-text {
  margin-top: 27px;
}

.reborn-preservation__lead-emphasis {
  font-size: 18px;
}

/* ==================================================
   区切り線
================================================== */

.reborn-preservation__divider {
  position: relative;
  width: min(100%, 720px);
  height: 1px;
  margin: 42px auto 0;
  background: rgba(255, 255, 255, 0.2);
}

.reborn-preservation__divider::after {
  position: absolute;
  top: -1px;
  left: 50%;
  width: 54px;
  height: 2px;
  background: #73b6ed;
  content: "";
  transform: translateX(-50%);
}

/* ==================================================
   再洗浄の提案
================================================== */

.reborn-preservation__intro {
  position: relative !important;
  left: 50% !important;
  display: block !important;
  width: min(100%, 720px) !important;
  margin: 34px 0 0 !important;
  padding: 0 20px !important;
  transform: translateX(-50%) !important;
  text-align: center !important;
}

.reborn-preservation__intro-text {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.01em;
  text-align: center !important;
}

/* ==================================================
   STANDARD / SPECIAL
================================================== */

.reborn-preservation__periods {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
  width: 100%;
  margin: 58px auto 0;
}

.reborn-preservation__period-card {
  position: relative;
  min-width: 0;
  padding: 34px 32px 38px;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0)
    );
  border: 1px solid rgba(255, 255, 255, 0.22);
}

.reborn-preservation__period-card::before {
  position: absolute;
  top: -1px;
  left: -1px;
  width: 29px;
  height: 29px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
  content: "";
}

.reborn-preservation__course-name {
  margin: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

.reborn-preservation__period-content {
  margin-top: 31px;
}

.reborn-preservation__period-prefix {
  margin: 0;
  color: rgba(255, 255, 255, 0.76);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.6;
}

.reborn-preservation__period-value {
  display: block;
  margin-top: 7px;
  color: #fff;
  font-size: 29px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.01em;
}

/* ==================================================
   適用基準
================================================== */

.reborn-preservation__basis {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 25px;
  align-items: center;
  width: min(100%, 760px);
  margin: 52px auto 0;
  padding: 25px 27px;
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(255, 255, 255, 0.21);
}

.reborn-preservation__basis-label {
  margin: 0;
  color: #73b6ed;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.06em;
}

.reborn-preservation__basis-text {
  margin: 0;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.9;
}

/* ==================================================
   タブレット
================================================== */

@media (max-width: 900px) {
  .reborn-preservation__inner {
    width: min(calc(100% - 42px), 760px);
  }

  .reborn-preservation__periods {
    gap: 22px;
  }

  .reborn-preservation__period-card {
    padding: 31px 27px 34px;
  }
}

/* ==================================================
   スマートフォン
================================================== */

@media (max-width: 640px) {
  .reborn-preservation {
    padding: 14px 0 70px;
  }

  .reborn-preservation__inner {
    width: 100%;
  }

  /* 導入 */

  .reborn-preservation__lead {
    width: calc(100% - 48px);
    margin: 0 auto;
    padding: 0;
  }

  .reborn-preservation__lead-text {
    font-size: 14px;
    line-height: 2;
  }

  .reborn-preservation__lead-text
  + .reborn-preservation__lead-text {
    margin-top: 22px;
  }

  .reborn-preservation__lead-emphasis {
    font-size: 15px;
  }

  /* 区切り線 */

  .reborn-preservation__divider {
    width: calc(100% - 48px);
    margin: 34px auto 0;
  }

  .reborn-preservation__divider::after {
    width: 46px;
  }

  /* 再洗浄の提案 */

  .reborn-preservation__intro {
    left: 50% !important;
    width: calc(100% - 48px) !important;
    margin: 27px 0 0 !important;
    padding: 0 !important;
    transform: translateX(-50%) !important;
    text-align: center !important;
  }

  .reborn-preservation__intro-text {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px;
    line-height: 2;
    text-align: center !important;
  }

  /* コース別期間 */

  .reborn-preservation__periods {
    display: block;
    width: calc(100% - 40px);
    margin: 49px auto 0;
  }

  .reborn-preservation__period-card {
    width: 100%;
    padding: 28px 24px 31px;
  }

  .reborn-preservation__period-card
  + .reborn-preservation__period-card {
    margin-top: 22px;
  }

  .reborn-preservation__course-name {
    font-size: 17px;
  }

  .reborn-preservation__period-content {
    margin-top: 25px;
  }

  .reborn-preservation__period-prefix {
    font-size: 12px;
  }

  .reborn-preservation__period-value {
    margin-top: 5px;
    font-size: 26px;
  }

  /* 適用基準 */

  .reborn-preservation__basis {
    display: block;
    width: calc(100% - 48px);
    margin: 39px auto 0;
    padding: 22px 20px;
  }

  .reborn-preservation__basis-label {
    font-size: 12px;
  }

  .reborn-preservation__basis-text {
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.9;
  }
}

.reborn-works,
.reborn-works * {
  box-sizing: border-box;
}

.reborn-works {
  width: 100%;
  margin: 0;
  padding: 22px 0 48px;
  overflow: hidden;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-works__inner {
  width: min(calc(100% - 44px), 1260px);
  margin: 0 auto;
}

/* ==================================================
   導入
================================================== */

.reborn-works__lead {
  width: min(100%, 760px);
  margin: 0 auto;
  text-align: center;
}

.reborn-works__lead-main {
  margin: 0;
  color: #fff;
  font-size: 19px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.02em;
  text-align: center;
}

.reborn-works__lead-sub {
  margin: 32px 0 0;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.01em;
  text-align: center;
}

/* ==================================================
   施工事例一覧
================================================== */

.reborn-works__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 36px;
  align-items: start;
  width: 100%;
  margin: 58px auto 0;
}

.reborn-works__item {
  min-width: 0;
}

/* ==================================================
   画像
================================================== */

.reborn-works__image-frame {
  position: relative;
  width: 100%;
  padding: 14px;
  background: #020202;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.reborn-works__image-frame::before,
.reborn-works__image-frame::after {
  position: absolute;
  width: 28px;
  height: 28px;
  content: "";
  pointer-events: none;
}

.reborn-works__image-frame::before {
  top: -1px;
  left: -1px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
}

.reborn-works__image-frame::after {
  right: -1px;
  bottom: -1px;
  border-right: 2px solid #73b6ed;
  border-bottom: 2px solid #73b6ed;
}

.reborn-works__image {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  margin: 0;
  object-fit: cover;
}

/* ==================================================
   事例見出し
================================================== */

.reborn-works__header {
  position: relative;
  margin-top: 24px;
  padding-left: 18px;
}

.reborn-works__header::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 1px;
  background: #73b6ed;
  content: "";
}

.reborn-works__category {
  margin: 0;
  color: #73b6ed;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.14em;
}

.reborn-works__course,
.reborn-works__coat {
  display: flex;
  align-items: center;
  gap: 13px;
  width: 100%;
  color: #fff;
  font-size: 21px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.01em;
}

.reborn-works__course {
  margin: 10px 0 0;
}

.reborn-works__coat {
  margin: 0;
}

.reborn-works__course::after,
.reborn-works__coat::after {
  flex: 1;
  min-width: 24px;
  height: 1px;
  background: rgba(255, 255, 255, 0.23);
  content: "";
}

.reborn-works__cross {
  display: block;
  margin: 4px 0;
  color: #fff;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
}

/* ==================================================
   説明文
================================================== */

.reborn-works__body {
  margin-top: 25px;
  padding: 0 4px 0 18px;
}

.reborn-works__text {
  margin: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.95;
  letter-spacing: 0.01em;
}

.reborn-works__text + .reborn-works__text {
  margin-top: 25px;
}

/* ==================================================
   タブレット
================================================== */

@media (max-width: 1000px) {
  .reborn-works__inner {
    width: min(calc(100% - 40px), 900px);
  }

  .reborn-works__grid {
    gap: 25px;
  }

  .reborn-works__course,
  .reborn-works__coat {
    font-size: 18px;
  }

  .reborn-works__text {
    font-size: 14px;
  }
}

/* ==================================================
   スマートフォン
================================================== */

@media (max-width: 640px) {
  .reborn-works {
    padding: 18px 0 42px;
  }

  .reborn-works__inner {
    width: 100%;
  }

  /* 導入 */

  .reborn-works__lead {
    width: calc(100% - 48px);
  }

  .reborn-works__lead-main {
    font-size: 15px;
    line-height: 1.9;
  }

  .reborn-works__lead-sub {
    margin-top: 24px;
    font-size: 14px;
    line-height: 1.85;
  }

  /* 施工事例 */

  .reborn-works__grid {
    display: block;
    width: calc(100% - 38px);
    margin-top: 45px;
  }

  .reborn-works__item {
    width: 100%;
  }

  .reborn-works__item + .reborn-works__item {
    margin-top: 67px;
  }

  /* 画像 */

  .reborn-works__image-frame {
    padding: 11px;
  }

  .reborn-works__image-frame::before,
  .reborn-works__image-frame::after {
    width: 25px;
    height: 25px;
  }

  /* 見出し */

  .reborn-works__header {
    margin-top: 21px;
    padding-left: 15px;
  }

  .reborn-works__category {
    font-size: 10px;
  }

  .reborn-works__course,
  .reborn-works__coat {
    gap: 11px;
    font-size: 18px;
  }

  .reborn-works__cross {
    margin: 5px 0;
    font-size: 14px;
  }

  /* 本文 */

  .reborn-works__body {
    margin-top: 23px;
    padding: 0 5px 0 15px;
  }

  .reborn-works__text {
    font-size: 14px;
    line-height: 1.9;
  }

  .reborn-works__text + .reborn-works__text {
    margin-top: 22px;
  }
}

/* ==============================
   ReBORN PRICE SYSTEM
   ============================== */

.rb-price-system,
.rb-price-system * {
  box-sizing: border-box;
}

.rb-price-system {
  --rb-bg: #000;
  --rb-panel: #0b0b0b;
  --rb-panel-2: #111;
  --rb-line: #343434;
  --rb-line-strong: #777;
  --rb-text: #fff;
  --rb-muted: #c8c8c8;
  --rb-accent: #5a9bd2;
  --rb-accent-light: #73b6ed;

  width: 100%;
  background: var(--rb-bg);
  color: var(--rb-text);
  font-family: inherit;
  line-height: 1.85;
}

.rb-price-inner {
  width: min(100% - 40px, 1040px);
  margin: 0 auto;
  padding: 24px 0 80px;
}

/* ---------- 導入 ---------- */

.rb-price-lead {
  margin: 0 0 30px;
  text-align: center;
  font-size: clamp(18px, 2vw, 23px);
  font-weight: 700;
  letter-spacing: 0.05em;
}

.rb-price-mobile-break {
  display: none;
}

/* ---------- 料金式 ---------- */

.rb-formula {
  display: grid;
  grid-template-columns:
    minmax(0, 1fr) 46px
    minmax(0, 1fr) 46px
    minmax(0, 1fr) 46px
    minmax(0, 1fr);
  align-items: stretch;
  gap: 10px;
  margin-bottom: 62px;
}

.rb-formula-card {
  position: relative;
  min-height: 144px;
  padding: 24px 16px 21px;
  border: 1px solid var(--rb-line);
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.055),
      transparent 55%
    ),
    var(--rb-panel);
  text-align: center;
}

.rb-formula-card::before {
  position: absolute;
  top: -1px;
  left: 18%;
  width: 64%;
  height: 2px;
  background: linear-gradient(
    90deg,
    transparent,
    var(--rb-accent-light),
    transparent
  );
  content: "";
}

.rb-formula-card.is-discount {
  border-color: rgba(115, 182, 237, 0.55);
}

.rb-formula-kicker {
  display: block;
  margin-bottom: 8px;
  color: var(--rb-accent-light);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
}

.rb-formula-number {
  display: block;
  margin-bottom: 5px;
  color: var(--rb-muted);
  font-size: 13px;
  letter-spacing: 0.08em;
}

.rb-formula-title {
  display: block;
  font-size: clamp(17px, 1.65vw, 21px);
  font-weight: 700;
  line-height: 1.45;
}

.rb-formula-sub {
  display: block;
  margin-top: 8px;
  color: var(--rb-muted);
  font-size: 12px;
}

.rb-operator {
  display: flex;
  align-items: center;
  justify-content: center;
}

.rb-operator span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid var(--rb-line-strong);
  border-radius: 50%;
  background: #080808;
  color: #fff;
  font-size: 25px;
  font-weight: 400;
  line-height: 1;
}

.rb-operator.is-minus span {
  border-color: rgba(115, 182, 237, 0.72);
  color: var(--rb-accent-light);
}

/* ---------- 詳細カード ---------- */

.rb-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.rb-detail-card {
  padding: 30px;
  border: 1px solid var(--rb-line);
  background: var(--rb-panel);
}

.rb-detail-card.is-wide {
  grid-column: 1 / -1;
}

.rb-detail-head {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 20px;
  padding-bottom: 15px;
  border-bottom: 1px solid var(--rb-line);
}

.rb-detail-number {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 45px;
  height: 45px;
  border: 1px solid var(--rb-accent-light);
  color: var(--rb-accent-light);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.05em;
}

.rb-detail-heading {
  margin: 0;
  font-size: clamp(19px, 2vw, 24px);
  line-height: 1.35;
}

.rb-detail-en {
  display: block;
  margin-top: 4px;
  color: var(--rb-muted);
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.06em;
}

.rb-detail-body {
  font-size: 16px;
}

.rb-detail-body p {
  margin: 0 0 18px;
}

.rb-detail-body p:last-child {
  margin-bottom: 0;
}

.rb-detail-body strong {
  font-weight: 700;
}

.rb-choice {
  display: inline-block;
  margin-bottom: 20px;
  padding: 7px 12px;
  border-left: 2px solid var(--rb-accent-light);
  background: rgba(255, 255, 255, 0.045);
  font-weight: 700;
}

/* ---------- 車格 ---------- */

.rb-size-intro {
  max-width: 820px;
  margin: 0 0 24px;
  color: var(--rb-text);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.9;
}

.rb-size-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 13px;
}

.rb-size-card {
  padding: 20px 17px;
  border: 1px solid var(--rb-line);
  background: var(--rb-panel-2);
}

.rb-size-name {
  display: block;
  margin-bottom: 9px;
  color: var(--rb-accent-light);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.45;
}

.rb-size-description {
  color: var(--rb-text);
  font-size: 14px;
  line-height: 1.7;
}

.rb-size-note {
  display: block;
  margin-top: 5px;
  color: var(--rb-muted);
  font-size: 12px;
  line-height: 1.6;
}

/* ---------- PRESERVATION ---------- */

.rb-preservation-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--rb-line);
  border-bottom: 1px solid var(--rb-line);
}

.rb-preservation-item {
  min-width: 0;
  padding: 24px 22px 26px;
}

.rb-preservation-item + .rb-preservation-item {
  border-left: 1px solid var(--rb-line);
}

.rb-preservation-course {
  display: block;
  margin-bottom: 15px;
  color: var(--rb-text);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.5;
}

.rb-preservation-basis {
  display: block;
  color: var(--rb-muted);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.6;
}

.rb-preservation-period {
  display: block;
  margin-top: 2px;
  color: var(--rb-text);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.65;
}

.rb-preservation-discount {
  display: block;
  margin-top: 11px;
  color: var(--rb-accent-light);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.35;
}

.rb-preservation-note {
  margin: 20px 0 0;
  color: var(--rb-muted);
  font-size: 13px;
  line-height: 1.85;
}

/* ---------- OPTION ---------- */

.rb-option-block {
  grid-column: 1 / -1;
  padding: 30px;
  border: 1px solid var(--rb-line);
  background: var(--rb-panel);
}

.rb-option-heading {
  margin: 0;
  font-size: clamp(19px, 2vw, 24px);
  line-height: 1.35;
}

.rb-option-en {
  display: block;
  margin-top: 4px;
  color: var(--rb-muted);
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.06em;
}

.rb-option-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 20px;
  border-top: 1px solid var(--rb-line);
  border-bottom: 1px solid var(--rb-line);
}

.rb-option-item {
  min-width: 0;
  padding: 23px 20px 25px;
  text-align: center;
}

.rb-option-item + .rb-option-item {
  border-left: 1px solid var(--rb-line);
}

.rb-option-name {
  display: block;
  margin-bottom: 14px;
  color: var(--rb-text);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.65;
}

.rb-option-description {
  display: block;
  color: var(--rb-muted);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.75;
}

.rb-option-price {
  display: block;
  margin-top: 7px;
  color: var(--rb-text);
  font-size: 21px;
  font-weight: 700;
  line-height: 1.45;
}

.rb-option-note {
  display: block;
  margin-top: 8px;
  color: var(--rb-muted);
  font-size: 12px;
  line-height: 1.7;
}

/* ---------- 締め ---------- */

.rb-price-reason {
  margin-top: 34px;
  padding: 32px 34px;
  border-left: 3px solid var(--rb-accent-light);
  background:
    linear-gradient(
      90deg,
      rgba(115, 182, 237, 0.09),
      transparent 65%
    ),
    var(--rb-panel);
}

.rb-price-reason-lead {
  margin: 0 0 22px;
  font-size: clamp(18px, 2vw, 22px);
  font-weight: 700;
  line-height: 1.75;
}

.rb-price-reason p {
  margin: 0 0 18px;
  font-size: 16px;
}

.rb-price-reason p:last-child {
  margin-bottom: 0;
}

/* ==============================
   TABLET
   ============================== */

@media (max-width: 900px) {
  .rb-formula {
    grid-template-columns:
      minmax(0, 1fr) 38px
      minmax(0, 1fr);
  }

  .rb-formula .rb-operator:nth-of-type(4) {
    display: none;
  }

  .rb-formula-card:nth-of-type(5),
  .rb-formula-card:nth-of-type(7) {
    margin-top: 12px;
  }

  .rb-size-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* ==============================
   SMARTPHONE
   ============================== */

@media (max-width: 640px) {
  .rb-price-inner {
    width: min(100% - 28px, 520px);
    padding: 16px 0 58px;
  }

  .rb-price-lead {
    margin-bottom: 24px;
    font-size: 18px;
    line-height: 1.65;
  }

  .rb-price-mobile-break {
    display: block;
  }

  .rb-formula {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    margin-bottom: 44px;
  }

  .rb-formula-card {
    min-height: auto;
    padding: 21px 16px 19px;
  }

  .rb-formula-card:nth-of-type(5),
  .rb-formula-card:nth-of-type(7) {
    margin-top: 0;
  }

  .rb-operator {
    height: 54px;
  }

  .rb-operator span {
    width: 34px;
    height: 34px;
    font-size: 22px;
  }

  .rb-formula .rb-operator:nth-of-type(4) {
    display: flex;
  }

  .rb-formula-kicker {
    font-size: 11px;
  }

  .rb-formula-number {
    font-size: 12px;
  }

  .rb-formula-title {
    font-size: 19px;
  }

  .rb-details {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .rb-detail-card,
  .rb-detail-card.is-wide {
    grid-column: auto;
    padding: 24px 20px;
  }

  .rb-detail-head {
    align-items: flex-start;
    margin-bottom: 18px;
  }

  .rb-detail-number {
    width: 41px;
    height: 41px;
    font-size: 12px;
  }

  .rb-detail-heading {
    font-size: 20px;
  }

  .rb-detail-en {
    font-size: 12px;
  }

  .rb-detail-body {
    font-size: 15px;
    line-height: 1.9;
  }

  .rb-size-intro {
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 1.9;
  }

  .rb-size-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .rb-size-card {
    padding: 17px;
  }

  .rb-preservation-grid {
    grid-template-columns: 1fr;
  }

  .rb-preservation-item {
    padding: 21px 17px 23px;
  }

  .rb-preservation-item + .rb-preservation-item {
    border-top: 1px solid var(--rb-line);
    border-left: 0;
  }

  .rb-preservation-course {
    font-size: 16px;
  }

  .rb-preservation-period {
    font-size: 15px;
  }

  .rb-preservation-discount {
    font-size: 22px;
  }

  .rb-preservation-note {
    font-size: 12px;
    line-height: 1.85;
  }

  .rb-option-block {
    grid-column: auto;
    padding: 24px 20px;
  }

  .rb-option-heading {
    font-size: 20px;
  }

  .rb-option-en {
    font-size: 12px;
  }

  .rb-option-grid {
    grid-template-columns: 1fr;
  }

  .rb-option-item {
    padding: 20px 16px 22px;
    text-align: left;
  }

  .rb-option-item + .rb-option-item {
    border-top: 1px solid var(--rb-line);
    border-left: 0;
  }

  .rb-option-name {
    margin-bottom: 9px;
    font-size: 15px;
  }

  .rb-option-price {
    font-size: 19px;
  }

  .rb-price-reason {
    margin-top: 24px;
    padding: 25px 21px;
  }

  .rb-price-reason-lead {
    font-size: 17px;
  }

  .rb-price-reason p {
    font-size: 15px;
    line-height: 1.9;
  }
}

html,
body {
  margin: 0 !important;
  padding: 0 !important;
  background: #000 !important;
}

.reborn-sizeclass,
.reborn-sizeclass * {
  box-sizing: border-box;
}

.reborn-sizeclass {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-sizeclass__inner {
  width: min(calc(100% - 40px), 960px);
  margin: 0 auto;
  padding: 62px 0 72px;
}

/* ==================================================
   セクション見出し
================================================== */

.reborn-sizeclass__heading {
  margin: 0;
  color: #fff;
  font-size: 30px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-align: center;
}

.reborn-sizeclass__subheading {
  margin: 8px 0 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.08em;
  text-align: center;
}

.reborn-sizeclass__heading-line {
  width: 48px;
  height: 1px;
  margin: 19px auto 30px;
  background: #73b6ed;
}

.reborn-sizeclass__intro {
  max-width: 760px;
  margin: 0 auto 36px;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.9;
  text-align: center;
}

/* ==================================================
   車種・料金・作業時間検索
================================================== */

.reborn-sizeclass__finder-kicker {
  margin: 0 0 16px;
  color: #73b6ed;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.12em;
  text-align: center;
}

.reborn-sizeclass__finder {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.reborn-sizeclass__form {
  width: 100%;
  padding: 31px 34px 34px;
  border: 1px solid #444;
  border-left: 2px solid #73b6ed;
  background:
    linear-gradient(
      135deg,
      rgba(115, 182, 237, 0.065) 0%,
      rgba(115, 182, 237, 0) 34%
    ),
    #090909;
}

.reborn-sizeclass__form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px 26px;
}

.reborn-sizeclass__field {
  min-width: 0;
}

.reborn-sizeclass__field--full {
  grid-column: 1 / -1;
}

.reborn-sizeclass__label {
  display: block;
  margin: 0 0 9px;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
}

.reborn-sizeclass__label-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 23px;
  height: 23px;
  margin-right: 8px;
  border: 1px solid #73b6ed;
  color: #73b6ed;
  font-size: 11px;
  line-height: 1;
  vertical-align: middle;
}

.reborn-sizeclass__select {
  width: 100%;
  min-height: 50px;
  margin: 0;
  padding: 12px 44px 12px 14px;
  border: 1px solid #555;
  border-radius: 0;
  outline: none;
  background-color: #111;
  background-image:
    linear-gradient(45deg, transparent 50%, #73b6ed 50%),
    linear-gradient(135deg, #73b6ed 50%, transparent 50%);
  background-position:
    calc(100% - 18px) 21px,
    calc(100% - 12px) 21px;
  background-repeat: no-repeat;
  background-size: 6px 6px, 6px 6px;
  color: #fff;
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
  appearance: none;
  -webkit-appearance: none;
}

.reborn-sizeclass__select:focus {
  border-color: #73b6ed;
  box-shadow: 0 0 0 1px #73b6ed;
}

.reborn-sizeclass__select:disabled {
  border-color: #333;
  background-color: #0b0b0b;
  color: #777;
  cursor: not-allowed;
  opacity: 1;
}

.reborn-sizeclass__field-note {
  margin: 8px 0 0;
  color: #bbb;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.75;
}

.reborn-sizeclass__actions {
  display: flex;
  gap: 14px;
  margin-top: 30px;
}

.reborn-sizeclass__button {
  min-height: 52px;
  padding: 13px 24px;
  border-radius: 0;
  font-family: inherit;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease,
    border-color 0.2s ease;
}

.reborn-sizeclass__button--primary {
  flex: 1 1 auto;
  border: 1px solid #73b6ed;
  background: #73b6ed;
  color: #000;
}

.reborn-sizeclass__button--primary:hover,
.reborn-sizeclass__button--primary:focus-visible {
  background: #73b6ed;
  border-color: #73b6ed;
}

.reborn-sizeclass__button--secondary {
  flex: 0 0 auto;
  border: 1px solid #555;
  background: transparent;
  color: #fff;
}

.reborn-sizeclass__button--secondary:hover,
.reborn-sizeclass__button--secondary:focus-visible {
  border-color: #888;
  background: #151515;
}

.reborn-sizeclass__button:disabled {
  border-color: #333;
  background: #191919;
  color: #777;
  cursor: not-allowed;
}

/* ==================================================
   エラー・結果
================================================== */

.reborn-sizeclass__message {
  display: none;
  margin-top: 20px;
  padding: 15px 17px;
  border-left: 2px solid #73b6ed;
  background: #111;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.8;
}

.reborn-sizeclass__message.is-visible {
  display: block;
}

.reborn-sizeclass__result {
  display: none;
  margin-top: 30px;
  border-top: 1px solid #555;
  border-bottom: 1px solid #555;
}

.reborn-sizeclass__result.is-visible {
  display: block;
}

.reborn-sizeclass__result-header {
  padding: 28px 30px 26px;
  border-bottom: 1px solid #444;
  text-align: center;
}

.reborn-sizeclass__result-brand {
  margin: 0 0 4px;
  color: #73b6ed;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.12em;
}

.reborn-sizeclass__result-model {
  margin: 0;
  color: #fff;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.45;
}

.reborn-sizeclass__result-selection {
  padding: 22px 24px 23px;
  border-bottom: 1px solid #444;
  background:
    linear-gradient(
      90deg,
      rgba(115, 182, 237, 0.11) 0%,
      rgba(115, 182, 237, 0.025) 50%,
      rgba(115, 182, 237, 0.11) 100%
    ),
    #0b0b0b;
  text-align: center;
}

.reborn-sizeclass__selection-label {
  display: block;
  margin-bottom: 6px;
  color: #73b6ed;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

.reborn-sizeclass__selection-value {
  display: block;
  color: #fff;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.5;
}

.reborn-sizeclass__result-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-bottom: 1px solid #444;
}

.reborn-sizeclass__summary-item {
  min-width: 0;
  padding: 22px 18px 24px;
  text-align: center;
}

.reborn-sizeclass__summary-item + .reborn-sizeclass__summary-item {
  border-left: 1px solid #444;
}

.reborn-sizeclass__summary-label {
  display: block;
  margin-bottom: 6px;
  color: #bbb;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.6;
}

.reborn-sizeclass__summary-value {
  display: block;
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.reborn-sizeclass__prices {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.reborn-sizeclass__price-card {
  min-width: 0;
  padding: 28px 30px 30px;
}

.reborn-sizeclass__price-card + .reborn-sizeclass__price-card {
  border-left: 1px solid #444;
}

.reborn-sizeclass__price-title {
  margin: 0 0 17px;
  color: #fff;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.5;
}

.reborn-sizeclass__duration {
  margin: 0 0 18px;
  padding: 12px 14px 13px;
  border-left: 2px solid #73b6ed;
  background: #0d0d0d;
}

.reborn-sizeclass__duration-label {
  display: block;
  margin-bottom: 3px;
  color: #bbb;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.reborn-sizeclass__duration-value {
  display: block;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.55;
}

.reborn-sizeclass__breakdown {
  margin: 0 0 19px;
  padding: 0;
  list-style: none;
}

.reborn-sizeclass__breakdown-row {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  margin: 0;
  padding: 7px 0;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.6;
}

.reborn-sizeclass__breakdown-row +
.reborn-sizeclass__breakdown-row {
  border-top: 1px solid #242424;
}

.reborn-sizeclass__breakdown-label {
  min-width: 0;
}

.reborn-sizeclass__breakdown-value {
  flex: 0 0 auto;
  white-space: nowrap;
}

.reborn-sizeclass__price-total-label {
  display: block;
  margin-bottom: 4px;
  color: #73b6ed;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

.reborn-sizeclass__price-total {
  display: block;
  color: #fff;
  font-size: 29px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.015em;
}

.reborn-sizeclass__result-note {
  padding: 23px 28px 25px;
  border-top: 1px solid #444;
  background: #080808;
}

.reborn-sizeclass__result-note p {
  margin: 0;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.9;
}

.reborn-sizeclass__result-note p + p {
  margin-top: 8px;
}

/* 受付対象外 */

.reborn-sizeclass__excluded {
  display: none;
  margin-top: 30px;
  padding: 31px 30px 33px;
  border-top: 1px solid #555;
  border-bottom: 1px solid #555;
  text-align: center;
}

.reborn-sizeclass__excluded.is-visible {
  display: block;
}

.reborn-sizeclass__excluded-label {
  margin: 0 0 8px;
  color: #73b6ed;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

.reborn-sizeclass__excluded-model {
  margin: 0 0 19px;
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.45;
}

.reborn-sizeclass__excluded-text {
  margin: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.9;
}

.reborn-sizeclass__noscript {
  margin-top: 22px;
  padding: 15px 17px;
  border-left: 2px solid #73b6ed;
  background: #111;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.8;
}

/* ==================================================
   タブレット
================================================== */

@media (max-width: 820px) {

  .reborn-sizeclass__finder {
    margin-top: 0;
    padding-top: 0;
  }
.reborn-sizeclass__form {
    padding: 25px 17px 27px;
  }

  .reborn-sizeclass__form-grid {
    display: block;
  }

  .reborn-sizeclass__field + .reborn-sizeclass__field {
    margin-top: 22px;
  }

  .reborn-sizeclass__label {
    font-size: 13px;
  }

  .reborn-sizeclass__select {
    min-height: 49px;
    font-size: 14px;
  }

  .reborn-sizeclass__actions {
    display: block;
    margin-top: 25px;
  }

  .reborn-sizeclass__button {
    width: 100%;
    min-height: 50px;
    font-size: 14px;
  }

  .reborn-sizeclass__button--secondary {
    margin-top: 11px;
  }

  .reborn-sizeclass__message {
    font-size: 13px;
  }

  .reborn-sizeclass__result-header {
    padding: 24px 18px 22px;
  }

  .reborn-sizeclass__result-model {
    font-size: 21px;
  }

  .reborn-sizeclass__result-selection {
    padding: 19px 16px 20px;
  }

  .reborn-sizeclass__selection-value {
    font-size: 18px;
  }

  .reborn-sizeclass__result-summary {
    display: block;
  }

  .reborn-sizeclass__summary-item {
    padding: 17px 18px 18px;
    text-align: left;
  }

  .reborn-sizeclass__summary-item + .reborn-sizeclass__summary-item {
    border-top: 1px solid #444;
    border-left: 0;
  }

  .reborn-sizeclass__summary-label {
    margin-bottom: 3px;
  }

  .reborn-sizeclass__summary-value {
    font-size: 15px;
  }

  .reborn-sizeclass__prices {
    display: block;
  }

  .reborn-sizeclass__price-card {
    padding: 25px 18px 27px;
  }

  .reborn-sizeclass__price-card + .reborn-sizeclass__price-card {
    border-top: 1px solid #444;
    border-left: 0;
  }

  .reborn-sizeclass__price-title {
    font-size: 17px;
  }

  .reborn-sizeclass__duration {
    margin-bottom: 16px;
    padding: 11px 12px 12px;
  }

  .reborn-sizeclass__duration-label {
    font-size: 10px;
  }

  .reborn-sizeclass__duration-value {
    font-size: 15px;
  }

  .reborn-sizeclass__breakdown-row {
    font-size: 12px;
  }

  .reborn-sizeclass__price-total {
    font-size: 26px;
  }

  .reborn-sizeclass__result-note {
    padding: 20px 18px 22px;
  }

  .reborn-sizeclass__result-note p {
    font-size: 12px;
    line-height: 1.85;
  }

  .reborn-sizeclass__excluded {
    padding: 27px 18px 29px;
  }

  .reborn-sizeclass__excluded-model {
    font-size: 20px;
  }

  .reborn-sizeclass__excluded-text {
    font-size: 14px;
  }
}

.reborn-price-list,
.reborn-price-list * {
  box-sizing: border-box;
}

.reborn-price-list {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-price-list__inner {
  width: min(calc(100% - 40px), 960px);
  margin: 0 auto;
  padding: 62px 0 72px;
}

/* ==================================================
   見出し
================================================== */

.reborn-price-list__heading {
  margin: 0;
  color: #fff;
  font-size: 30px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-align: center;
}

.reborn-price-list__subheading {
  margin: 8px 0 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.08em;
  text-align: center;
}

.reborn-price-list__heading-line {
  width: 48px;
  height: 1px;
  margin: 19px auto 28px;
  background: #73b6ed;
}

.reborn-price-list__intro {
  margin: 0 0 28px;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.8;
  text-align: center;
}

/* ==================================================
   折り畳み
================================================== */

.reborn-price-list__details {
  width: 100%;
  border-top: 1px solid #444;
}

.reborn-price-list__details:last-of-type {
  border-bottom: 1px solid #444;
}

.reborn-price-list__summary {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 76px;
  padding: 22px 58px 22px 22px;
  border-right: 1px solid #333;
  border-left: 1px solid #333;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.045),
      transparent 58%
    ),
    #0b0b0b;
  color: #fff;
  cursor: pointer;
  list-style: none;
}

.reborn-price-list__summary::-webkit-details-marker {
  display: none;
}

.reborn-price-list__summary::after {
  position: absolute;
  top: 50%;
  right: 22px;
  width: 12px;
  height: 12px;
  border-right: 1px solid #73b6ed;
  border-bottom: 1px solid #73b6ed;
  content: "";
  transform: translateY(-68%) rotate(45deg);
  transition: transform 0.2s ease;
}

.reborn-price-list__details[open]
.reborn-price-list__summary::after {
  transform: translateY(-30%) rotate(225deg);
}

.reborn-price-list__summary-main {
  display: block;
  min-width: 0;
}

.reborn-price-list__summary-en {
  display: block;
  margin-bottom: 3px;
  color: #73b6ed;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.12em;
}

.reborn-price-list__summary-ja {
  display: block;
  color: #fff;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.5;
}

.reborn-price-list__summary-range {
  flex: 0 0 auto;
  color: #cfcfcf;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.6;
  white-space: nowrap;
}

.reborn-price-list__content {
  padding: 30px 22px 34px;
  border-right: 1px solid #333;
  border-left: 1px solid #333;
  background: #050505;
}

/* ==================================================
   料金表
================================================== */

.reborn-price-list__course + .reborn-price-list__course {
  margin-top: 34px;
}

.reborn-price-list__course-heading {
  margin: 0 0 15px;
  color: #fff;
  font-size: 21px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.035em;
}

.reborn-price-list__table-wrap {
  width: 100%;
  overflow-x: auto;
}

.reborn-price-list__table {
  width: 100%;
  min-width: 560px;
  border-collapse: collapse;
  table-layout: fixed;
}

.reborn-price-list__table th,
.reborn-price-list__table td {
  padding: 15px 18px;
  border: 1px solid #3a3a3a;
  text-align: left;
  vertical-align: middle;
}

.reborn-price-list__table thead th {
  background: #121212;
  color: #73b6ed;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.reborn-price-list__table thead th:first-child {
  width: 44%;
}

.reborn-price-list__table tbody th {
  background: #080808;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.55;
}

.reborn-price-list__table tbody td {
  background: #020202;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.55;
  white-space: nowrap;
}

.reborn-price-list__note {
  margin: 25px 0 0;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.85;
}

.reborn-price-list__note-line {
  display: block;
}

.reborn-price-list__note-line
+ .reborn-price-list__note-line {
  margin-top: 4px;
}

/* ==================================================
   スマートフォン
================================================== */

@media (max-width: 640px) {
  .reborn-price-list__inner {
    width: min(calc(100% - 34px), 480px);
    padding: 50px 0 56px;
  }

  .reborn-price-list__heading {
    font-size: 25px;
    line-height: 1.45;
  }

  .reborn-price-list__subheading {
    margin-top: 6px;
    font-size: 14px;
  }

  .reborn-price-list__heading-line {
    width: 42px;
    margin: 17px auto 23px;
  }

  .reborn-price-list__intro {
    margin-bottom: 24px;
    font-size: 13px;
    line-height: 1.8;
  }

  .reborn-price-list__summary {
    min-height: 70px;
    padding: 18px 46px 18px 16px;
  }

  .reborn-price-list__summary::after {
    right: 17px;
    width: 10px;
    height: 10px;
  }

  .reborn-price-list__summary-en {
    font-size: 10px;
  }

  .reborn-price-list__summary-ja {
    font-size: 16px;
  }

  .reborn-price-list__summary-range {
    display: none;
  }

  .reborn-price-list__content {
    padding: 25px 13px 29px;
  }

  .reborn-price-list__course + .reborn-price-list__course {
    margin-top: 29px;
  }

  .reborn-price-list__course-heading {
    margin-bottom: 12px;
    font-size: 18px;
  }

  /*
   スマートフォンでは、
   車格 / STANDARD / SPECIALを1行3列で表示する。
   車格と料金の対応関係を視線移動なしで確認できる構成。
  */

  .reborn-price-list__table-wrap {
    overflow: visible;
  }

  .reborn-price-list__table {
    display: block !important;
    width: 100%;
    min-width: 0;
    border-collapse: separate;
    border-spacing: 0;
  }

  .reborn-price-list__table thead,
  .reborn-price-list__table tbody {
    display: block !important;
    width: 100%;
  }

  .reborn-price-list__table thead tr,
  .reborn-price-list__table tbody tr {
    display: grid !important;
    grid-template-columns:
      minmax(0, 1.35fr)
      minmax(0, 1fr)
      minmax(0, 1fr);
    width: 100%;
  }

  .reborn-price-list__table thead th,
  .reborn-price-list__table tbody th,
  .reborn-price-list__table tbody td {
    display: flex !important;
    align-items: center;
    width: auto !important;
    min-width: 0;
    padding: 12px 9px;
    border: 0;
    border-bottom: 1px solid #383838;
  }

  .reborn-price-list__table thead th {
    justify-content: center;
    background: #121212;
    color: #73b6ed;
    font-size: 9px;
    line-height: 1.4;
    text-align: center;
  }

  .reborn-price-list__table thead th:first-child {
    justify-content: flex-start;
    color: #bdbdbd;
  }

  .reborn-price-list__table thead th + th,
  .reborn-price-list__table tbody td {
    border-left: 1px solid #383838;
  }

  .reborn-price-list__table tbody th {
    justify-content: flex-start;
    background: #090909;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;
    overflow-wrap: anywhere;
  }

  .reborn-price-list__table tbody td {
    justify-content: flex-end;
    background: #020202;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    text-align: right;
    white-space: nowrap;
  }

  .reborn-price-list__table tbody tr:last-child th,
  .reborn-price-list__table tbody tr:last-child td {
    border-bottom: 1px solid #383838;
  }

  .reborn-price-list__note {
    margin-top: 21px;
    font-size: 11px;
    line-height: 1.85;
  }
}

@media (max-width: 360px) {
  .reborn-price-list__table thead tr,
  .reborn-price-list__table tbody tr {
    grid-template-columns:
      minmax(0, 1.45fr)
      minmax(0, 1fr)
      minmax(0, 1fr);
  }

  .reborn-price-list__table thead th,
  .reborn-price-list__table tbody th,
  .reborn-price-list__table tbody td {
    padding-right: 6px;
    padding-left: 6px;
  }

  .reborn-price-list__table thead th {
    font-size: 8px;
  }

  .reborn-price-list__table tbody th {
    font-size: 10px;
  }

  .reborn-price-list__table tbody td {
    font-size: 11px;
  }
}

/* ==============================
   ReBORN 受付対象外車両
   折り畳み版
   ============================== */

.rb-excluded,
.rb-excluded * {
  box-sizing: border-box;
}

.rb-excluded {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.rb-excluded__inner {
  width: min(calc(100% - 40px), 960px);
  margin: 0 auto;
  padding: 62px 0 72px;
}

/* ==============================
   見出し
   ============================== */

.rb-excluded__header {
  margin: 0 0 28px;
  text-align: center;
}

.rb-excluded__title {
  margin: 0;
  color: #fff;
  font-size: 30px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.04em;
}

.rb-excluded__subtitle {
  margin: 8px 0 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.08em;
}

.rb-excluded__heading-line {
  width: 48px;
  height: 1px;
  margin: 19px auto 0;
  background: #73b6ed;
}

.rb-excluded__intro {
  margin: 0 0 28px;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.85;
  text-align: center;
}

/* ==============================
   折り畳み
   ============================== */

.rb-excluded__details {
  width: 100%;
  border-top: 1px solid #444;
  border-bottom: 1px solid #444;
}

.rb-excluded__summary {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 76px;
  padding: 22px 58px 22px 22px;
  border-right: 1px solid #333;
  border-left: 1px solid #333;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.045),
      transparent 58%
    ),
    #0b0b0b;
  color: #fff;
  cursor: pointer;
  list-style: none;
}

.rb-excluded__summary::-webkit-details-marker {
  display: none;
}

.rb-excluded__summary::after {
  position: absolute;
  top: 50%;
  right: 22px;
  width: 12px;
  height: 12px;
  border-right: 1px solid #73b6ed;
  border-bottom: 1px solid #73b6ed;
  content: "";
  transform: translateY(-68%) rotate(45deg);
  transition: transform 0.2s ease;
}

.rb-excluded__details[open]
.rb-excluded__summary::after {
  transform: translateY(-30%) rotate(225deg);
}

.rb-excluded__summary-main {
  display: block;
  min-width: 0;
}

.rb-excluded__summary-en {
  display: block;
  margin-bottom: 3px;
  color: #73b6ed;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.12em;
}

.rb-excluded__summary-ja {
  display: block;
  color: #fff;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.5;
}

.rb-excluded__content {
  padding: 30px 22px 34px;
  border-right: 1px solid #333;
  border-left: 1px solid #333;
  background: #050505;
}

/* ==============================
   受付対象外一覧
   ============================== */

.rb-excluded__columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  border-top: 1px solid #444;
  border-bottom: 1px solid #444;
}

.rb-excluded__column {
  min-width: 0;
  padding: 28px 30px 30px;
}

.rb-excluded__column + .rb-excluded__column {
  border-left: 1px solid #444;
}

.rb-excluded__group-title {
  margin: 0 0 20px;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
}

.rb-excluded__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.rb-excluded__item {
  position: relative;
  margin: 0;
  padding: 13px 4px 13px 21px;
  border-bottom: 1px solid #333;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.75;
}

.rb-excluded__item::before {
  position: absolute;
  top: 22px;
  left: 1px;
  width: 7px;
  height: 7px;
  border: 1px solid #73b6ed;
  content: "";
}

.rb-excluded__supplement {
  margin: 17px 0 0;
  padding: 11px 0 11px 15px;
  border-left: 1px solid #777;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.8;
}

/* ==============================
   最終注記
   ============================== */

.rb-excluded__notice {
  width: min(calc(100% - 70px), 760px);
  margin: 27px auto 0;
  padding: 2px 0 2px 16px;
  border-left: 1px solid #777;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.9;
}

.rb-excluded__notice p {
  margin: 0;
}

.rb-excluded__notice p + p {
  margin-top: 3px;
}

/* ==============================
   スマートフォン
   ============================== */

@media (max-width: 640px) {
  .rb-excluded__inner {
    width: min(calc(100% - 34px), 480px);
    padding: 50px 0 56px;
  }

  .rb-excluded__header {
    margin-bottom: 24px;
  }

  .rb-excluded__title {
    font-size: 25px;
    line-height: 1.45;
  }

  .rb-excluded__subtitle {
    margin-top: 6px;
    font-size: 14px;
  }

  .rb-excluded__heading-line {
    width: 42px;
    margin-top: 17px;
  }

  .rb-excluded__intro {
    margin-bottom: 24px;
    font-size: 13px;
    line-height: 1.85;
  }

  .rb-excluded__summary {
    min-height: 70px;
    padding: 18px 46px 18px 16px;
  }

  .rb-excluded__summary::after {
    right: 17px;
    width: 10px;
    height: 10px;
  }

  .rb-excluded__summary-en {
    font-size: 10px;
  }

  .rb-excluded__summary-ja {
    font-size: 16px;
  }

  .rb-excluded__content {
    padding: 25px 13px 29px;
  }

  .rb-excluded__columns {
    display: block;
  }

  .rb-excluded__column {
    padding: 24px 17px 26px;
  }

  .rb-excluded__column + .rb-excluded__column {
    border-top: 1px solid #444;
    border-left: 0;
  }

  .rb-excluded__group-title {
    margin-bottom: 17px;
    font-size: 15px;
  }

  .rb-excluded__item {
    padding: 12px 3px 12px 20px;
    font-size: 13px;
    line-height: 1.75;
  }

  .rb-excluded__item::before {
    top: 20px;
    width: 7px;
    height: 7px;
  }

  .rb-excluded__supplement {
    margin-top: 15px;
    padding: 10px 0 10px 14px;
    font-size: 12px;
  }

  .rb-excluded__notice {
    width: calc(100% - 6px);
    margin-top: 22px;
    padding-left: 14px;
    font-size: 12px;
    line-height: 1.85;
  }
}

html,
body {
  margin: 0 !important;
  padding: 0 !important;
  background: #000 !important;
}

.reborn-before-reservation,
.reborn-before-reservation * {
  box-sizing: border-box;
}

.reborn-before-reservation {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-before-reservation__inner {
  width: min(calc(100% - 40px), 1080px);
  margin: 0 auto;
  padding: 52px 0 66px;
}

/* 見出し */

.reborn-before-reservation__heading {
  margin: 0;
  text-align: center;
  color: #fff;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.04em;
}

.reborn-before-reservation__subheading {
  margin: 7px 0 0;
  text-align: center;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.06em;
}

.reborn-before-reservation__heading-line {
  width: 46px;
  height: 1px;
  margin: 18px auto 30px;
  background: #73b6ed;
}

/* PC：中央列を広くした3列構成 */

.reborn-before-reservation__groups {
  display: grid;
  grid-template-columns: 1fr 1.35fr 1fr;
  width: 100%;
  border-top: 1px solid #555;
  border-bottom: 1px solid #555;
}

.reborn-before-reservation__group {
  min-width: 0;
  padding: 30px 24px 32px;
}

.reborn-before-reservation__group + .reborn-before-reservation__group {
  border-left: 1px solid #444;
}

.reborn-before-reservation__group-title {
  margin: 0 0 20px;
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em;
}

/* 各確認事項 */

.reborn-before-reservation__text {
  margin: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.85;
  overflow-wrap: anywhere;
}

.reborn-before-reservation__text + .reborn-before-reservation__text {
  margin-top: 17px;
  padding-top: 17px;
  border-top: 1px solid #333;
}

.reborn-before-reservation__text--important {
  font-weight: 700;
}

/* スマートフォン */

@media (max-width: 640px) {
  .reborn-before-reservation__inner {
    width: min(calc(100% - 34px), 480px);
    padding: 44px 0 54px;
  }

  .reborn-before-reservation__heading {
    font-size: 23px;
    line-height: 1.5;
    white-space: nowrap;
  }

  .reborn-before-reservation__subheading {
    margin-top: 6px;
    font-size: 14px;
  }

  .reborn-before-reservation__heading-line {
    width: 42px;
    margin: 17px auto 29px;
  }

  .reborn-before-reservation__groups {
    display: block;
  }

  .reborn-before-reservation__group {
    padding: 25px 18px 27px;
  }

  .reborn-before-reservation__group + .reborn-before-reservation__group {
    border-top: 1px solid #444;
    border-left: 0;
  }

  .reborn-before-reservation__group-title {
    margin-bottom: 16px;
    font-size: 15px;
  }

  .reborn-before-reservation__text {
    font-size: 13px;
    line-height: 1.85;
  }

  .reborn-before-reservation__text + .reborn-before-reservation__text {
    margin-top: 14px;
    padding-top: 14px;
  }
}

html,
body {
  margin: 0 !important;
  padding: 0 !important;
  background: #000 !important;
}

.reborn-cancel-policy,
.reborn-cancel-policy * {
  box-sizing: border-box;
}

.reborn-cancel-policy {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-cancel-policy__inner {
  width: min(calc(100% - 40px), 960px);
  margin: 0 auto;
  padding: 62px 0 72px;
}

/* 見出し */

.reborn-cancel-policy__heading {
  margin: 0;
  color: #fff;
  font-size: 29px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-align: center;
}

.reborn-cancel-policy__subheading {
  margin: 8px 0 0;
  color: #fff;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.55;
  letter-spacing: 0.035em;
  text-align: center;
}

.reborn-cancel-policy__heading-line {
  width: 48px;
  height: 1px;
  margin: 19px auto 38px;
  background: #73b6ed;
}

/* 条件一覧 */

.reborn-cancel-policy__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  border-top: 1px solid #555;
  border-bottom: 1px solid #555;
}

.reborn-cancel-policy__item {
  min-width: 0;
  padding: 32px 34px 35px;
}

.reborn-cancel-policy__item:nth-child(even) {
  border-left: 1px solid #444;
}

.reborn-cancel-policy__item:nth-child(n + 3) {
  border-top: 1px solid #444;
}

.reborn-cancel-policy__label {
  margin: 0 0 13px;
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.7;
}

.reborn-cancel-policy__value {
  display: block;
  margin: 0 0 12px;
  color: #fff;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

.reborn-cancel-policy__value--strong {
  font-size: 22px;
}

.reborn-cancel-policy__description {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.85;
}

/* 当日の連絡方法 */

.reborn-cancel-policy__contact {
  width: min(100%, 760px);
  margin: 30px auto 0;
  padding: 13px 0 13px 18px;
  border-left: 1px solid #777;
}

.reborn-cancel-policy__contact-text {
  margin: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.9;
}

/* スマートフォン */

@media (max-width: 640px) {
  .reborn-cancel-policy__inner {
    width: min(calc(100% - 34px), 480px);
    padding: 50px 0 56px;
  }

  .reborn-cancel-policy__heading {
    font-size: 24px;
    line-height: 1.45;
  }

  .reborn-cancel-policy__subheading {
    margin-top: 7px;
    font-size: 19px;
    line-height: 1.55;
  }

  .reborn-cancel-policy__heading-line {
    width: 42px;
    margin: 17px auto 30px;
  }

  .reborn-cancel-policy__grid {
    display: block;
  }

  .reborn-cancel-policy__item {
    padding: 25px 18px 27px;
  }

  .reborn-cancel-policy__item:nth-child(even) {
    border-left: 0;
  }

  .reborn-cancel-policy__item:nth-child(n + 2) {
    border-top: 1px solid #444;
  }

  .reborn-cancel-policy__label {
    margin-bottom: 10px;
    font-size: 15px;
    line-height: 1.7;
  }

  .reborn-cancel-policy__value {
    margin-bottom: 10px;
    font-size: 19px;
    line-height: 1.5;
  }

  .reborn-cancel-policy__value--strong {
    font-size: 20px;
  }

  .reborn-cancel-policy__description {
    font-size: 14px;
    line-height: 1.85;
  }

  .reborn-cancel-policy__contact {
    margin-top: 24px;
    padding: 11px 0 11px 14px;
  }

  .reborn-cancel-policy__contact-text {
    font-size: 14px;
    line-height: 1.85;
  }
}

html,
body {
  margin: 0 !important;
  padding: 0 !important;
  background: #000 !important;
}

.reborn-quality-body,
.reborn-quality-body * {
  box-sizing: border-box;
}

.reborn-quality-body {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-quality-body__inner {
  width: min(calc(100% - 40px), 900px);
  margin: 0 auto;
  padding: 0 0 76px;
}

/* ==================================================
   本文共通
================================================== */

.reborn-quality-body__content {
  width: min(100%, 720px);
  margin: 0 auto;
}

.reborn-quality-body__paragraph {
  margin: 0;
  color: #fff;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.9;
  letter-spacing: 0.01em;
}

.reborn-quality-body__paragraph
+ .reborn-quality-body__paragraph {
  margin-top: 27px;
}

/* ==================================================
   冒頭
================================================== */

.reborn-quality-body__opening {
  padding-bottom: 30px;
  border-bottom: 1px solid #333;
}

.reborn-quality-body__opening-main {
  margin: 0;
  color: #fff;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.85;
}

.reborn-quality-body__opening-main
+ .reborn-quality-body__paragraph {
  margin-top: 27px;
}

/* ==================================================
   品質とは考えない洗い方
================================================== */

.reborn-quality-body__wrong {
  margin: 34px 0;
  padding: 20px 0 20px 24px;
  border-left: 1px solid #73b6ed;
}

.reborn-quality-body__wrong-line {
  display: block;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.9;
}

.reborn-quality-body__denial {
  margin: 0 0 35px;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.9;
}

/* ==================================================
   施工方法の総論
================================================== */

.reborn-quality-body__method {
  padding: 31px 0 0;
  border-top: 1px solid #333;
}

/* ==================================================
   技術ブロック
================================================== */

.reborn-quality-body__technology {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  width: 100%;
  margin: 48px auto 0;
}

.reborn-quality-body__technology-card {
  position: relative;
  min-width: 0;
  padding: 32px 29px 34px;
  overflow: hidden;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.01) 48%,
      rgba(255, 255, 255, 0)
    );
  border: 1px solid rgba(255, 255, 255, 0.22);
}

/* 左上の青のコーナー */

.reborn-quality-body__technology-card::before {
  position: absolute;
  top: -1px;
  left: -1px;
  width: 29px;
  height: 29px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
  content: "";
}

.reborn-quality-body__technology-en {
  margin: 0;
  color: #73b6ed;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.13em;
}

.reborn-quality-body__technology-title {
  margin: 8px 0 0;
  color: #fff;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.55;
  letter-spacing: 0.025em;
}

.reborn-quality-body__technology-line {
  width: 42px;
  height: 1px;
  margin: 17px 0 23px;
  background: #73b6ed;
}

.reborn-quality-body__technology-text {
  margin: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.95;
  letter-spacing: 0.005em;
}

.reborn-quality-body__technology-text
+ .reborn-quality-body__technology-text {
  margin-top: 20px;
}

/* ==================================================
   結論
================================================== */

.reborn-quality-body__conclusion {
  width: min(100%, 720px);
  margin: 45px auto 0;
  padding-top: 34px;
  border-top: 1px solid #333;
}

.reborn-quality-body__conclusion-main {
  margin: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.9;
}

.reborn-quality-body__conclusion-main
+ .reborn-quality-body__conclusion-main {
  margin-top: 27px;
}

.reborn-quality-body__final {
  margin: 33px 0 0;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-align: center;
}

.reborn-quality-body__final::before {
  display: block;
  width: 46px;
  height: 1px;
  margin: 0 auto 24px;
  background: #73b6ed;
  content: "";
}

/* ==================================================
   タブレット
================================================== */

@media (max-width: 800px) {
  .reborn-quality-body__technology {
    gap: 18px;
  }

  .reborn-quality-body__technology-card {
    padding-right: 24px;
    padding-left: 24px;
  }
}

/* ==================================================
   スマートフォン
================================================== */

@media (max-width: 640px) {
  .reborn-quality-body__inner {
    width: min(calc(100% - 34px), 480px);
    padding: 0 0 58px;
  }

  .reborn-quality-body__content {
    width: 100%;
  }

  .reborn-quality-body__paragraph {
    font-size: 14px;
    line-height: 1.9;
  }

  .reborn-quality-body__paragraph
  + .reborn-quality-body__paragraph {
    margin-top: 23px;
  }

  /* 冒頭 */

  .reborn-quality-body__opening {
    padding-bottom: 25px;
  }

  .reborn-quality-body__opening-main {
    font-size: 15px;
    line-height: 1.9;
  }

  .reborn-quality-body__opening-main
  + .reborn-quality-body__paragraph {
    margin-top: 23px;
  }

  /* 品質とは考えない洗い方 */

  .reborn-quality-body__wrong {
    margin: 28px 0;
    padding: 16px 0 16px 17px;
  }

  .reborn-quality-body__wrong-line {
    font-size: 15px;
    line-height: 1.9;
  }

  .reborn-quality-body__denial {
    margin-bottom: 29px;
    font-size: 15px;
    line-height: 1.9;
  }

  /* 施工方法の総論 */

  .reborn-quality-body__method {
    padding-top: 26px;
  }

  /* 技術ブロック */

  .reborn-quality-body__technology {
    display: block;
    width: 100%;
    margin-top: 38px;
  }

  .reborn-quality-body__technology-card {
    width: 100%;
    padding: 27px 22px 29px;
  }

  .reborn-quality-body__technology-card
  + .reborn-quality-body__technology-card {
    margin-top: 20px;
  }

  .reborn-quality-body__technology-card::before {
    width: 25px;
    height: 25px;
  }

  .reborn-quality-body__technology-en {
    font-size: 10px;
  }

  .reborn-quality-body__technology-title {
    margin-top: 6px;
    font-size: 18px;
    line-height: 1.55;
  }

  .reborn-quality-body__technology-line {
    width: 38px;
    margin: 14px 0 19px;
  }

  .reborn-quality-body__technology-text {
    font-size: 14px;
    line-height: 1.9;
  }

  .reborn-quality-body__technology-text
  + .reborn-quality-body__technology-text {
    margin-top: 17px;
  }

  /* 結論 */

  .reborn-quality-body__conclusion {
    width: 100%;
    margin-top: 37px;
    padding-top: 28px;
  }

  .reborn-quality-body__conclusion-main {
    font-size: 15px;
    line-height: 1.9;
  }

  .reborn-quality-body__conclusion-main
  + .reborn-quality-body__conclusion-main {
    margin-top: 23px;
  }

  .reborn-quality-body__final {
    margin-top: 29px;
    font-size: 17px;
    line-height: 1.8;
  }

  .reborn-quality-body__final::before {
    width: 42px;
    margin-bottom: 21px;
  }
}

html,
body {
  margin: 0 !important;
  padding: 0 !important;
  background: #000 !important;
}

.reborn-faq-body,
.reborn-faq-body * {
  box-sizing: border-box;
}

.reborn-faq-body {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-faq-body__inner {
  width: min(calc(100% - 40px), 900px);
  margin: 0 auto;
  padding: 0 0 72px;
}

/* FAQ一覧 */

.reborn-faq-body__list {
  width: 100%;
  border-top: 1px solid #4a4a4a;
}

.reborn-faq-body__item {
  margin: 0;
  border-bottom: 1px solid #4a4a4a;
}

/* 質問 */

.reborn-faq-body__question {
  position: relative;
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 12px;
  width: 100%;
  margin: 0;
  padding: 24px 26px;
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.75;
  cursor: pointer;
  list-style: none;
  -webkit-tap-highlight-color: transparent;
}

.reborn-faq-body__question::-webkit-details-marker {
  display: none;
}

.reborn-faq-body__question::marker {
  content: "";
}

.reborn-faq-body__q {
  color: #73b6ed;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

/* スマホ専用改行 */

.reborn-faq-body__sp-break {
  display: none;
}

/* 開閉記号 */

.reborn-faq-body__icon {
  position: relative;
  display: block;
  width: 18px;
  height: 18px;
}

.reborn-faq-body__icon::before,
.reborn-faq-body__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 1px;
  background: #73b6ed;
  transform: translate(-50%, -50%);
  transition: transform 0.2s ease;
}

.reborn-faq-body__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.reborn-faq-body__item[open]
.reborn-faq-body__icon::after {
  transform: translate(-50%, -50%) rotate(0deg);
}

/* 回答 */

.reborn-faq-body__answer {
  padding: 0 28px 27px 74px;
}

.reborn-faq-body__answer-inner {
  position: relative;
  padding: 2px 0 2px 20px;
  border-left: 1px solid #5a9bd2;
}

.reborn-faq-body__a {
  position: absolute;
  top: 3px;
  left: -47px;
  color: #73b6ed;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.8;
}

.reborn-faq-body__text {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.9;
}

.reborn-faq-body__text + .reborn-faq-body__text {
  margin-top: 13px;
}

.reborn-faq-body__item[open]
.reborn-faq-body__question {
  padding-bottom: 17px;
}

/* スマートフォン */

@media (max-width: 640px) {
  .reborn-faq-body__inner {
    width: min(calc(100% - 34px), 480px);
    padding: 0 0 56px;
  }

  .reborn-faq-body__question {
    grid-template-columns: 22px minmax(0, 1fr) 16px;
    gap: 5px;
    padding: 20px 4px;
    font-size: 15px;
    line-height: 1.75;
  }

  .reborn-faq-body__q {
    font-size: 15px;
  }

  .reborn-faq-body__sp-break {
    display: block;
  }

  .reborn-faq-body__icon {
    width: 16px;
    height: 16px;
  }

  .reborn-faq-body__icon::before,
  .reborn-faq-body__icon::after {
    width: 12px;
  }

  .reborn-faq-body__answer {
    padding: 0 4px 23px 31px;
  }

  .reborn-faq-body__answer-inner {
    padding: 2px 0 2px 13px;
  }

  .reborn-faq-body__a {
    top: 3px;
    left: -31px;
    font-size: 15px;
  }

  .reborn-faq-body__text {
    font-size: 14px;
    line-height: 1.9;
  }

  .reborn-faq-body__text + .reborn-faq-body__text {
    margin-top: 11px;
  }

  .reborn-faq-body__item[open]
  .reborn-faq-body__question {
    padding-bottom: 14px;
  }
}

html,
body {
  margin: 0 !important;
  padding: 0 !important;
  background: #000 !important;
}

.reborn-review-body,
.reborn-review-body * {
  box-sizing: border-box;
}

.reborn-review-body {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-review-body__inner {
  width: min(calc(100% - 40px), 920px);
  margin: 0 auto;
  padding: 0 0 76px;
}

/* 導入文 */

.reborn-review-body__intro {
  margin: 0 0 34px;
  padding: 0 20px;
  text-align: center;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.9;
  letter-spacing: 0.02em;
}

.reborn-review-body__sp-break {
  display: none;
}

/* 技術評価を主役にするレビュー */

.reborn-review-body__featured {
  padding: 30px 34px;
  border-top: 1px solid #444;
  border-bottom: 1px solid #444;
}

.reborn-review-body__featured-inner {
  padding-left: 25px;
  border-left: 1px solid #73b6ed;
}

.reborn-review-body__label {
  margin: 0 0 12px;
  color: #73b6ed;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.reborn-review-body__stars {
  margin: 0 0 15px;
  color: #73b6ed;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.08em;
}

.reborn-review-body__featured-text {
  margin: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  line-height: 2;
}

/* 補強レビュー */

.reborn-review-body__sub-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-bottom: 1px solid #444;
}

.reborn-review-body__sub {
  padding: 29px 34px 31px;
}

.reborn-review-body__sub + .reborn-review-body__sub {
  border-left: 1px solid #444;
}

.reborn-review-body__sub-text {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.95;
}

/* 注記 */

.reborn-review-body__note {
  margin: 19px 0 0;
  text-align: center;
  color: #bcbcbc;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.8;
}

/* Googleレビュー導線 */

.reborn-review-body__button-wrap {
  margin-top: 35px;
  text-align: center;
}

.reborn-review-body__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 280px;
  min-height: 54px;
  padding: 13px 30px;
  border: 1px solid #aaa;
  background: transparent;
  color: #fff !important;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none !important;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease;
}

.reborn-review-body__button:hover {
  background: #191919;
  border-color: #ddd;
}

/* スマートフォン */

@media (max-width: 640px) {
  .reborn-review-body__inner {
    width: min(calc(100% - 34px), 480px);
    padding: 0 0 60px;
  }

  .reborn-review-body__intro {
    margin: 0 0 27px;
    padding: 0 4px;
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0;
  }

  .reborn-review-body__sp-break {
    display: block;
  }

  .reborn-review-body__featured {
    padding: 24px 8px;
  }

  .reborn-review-body__featured-inner {
    padding-left: 17px;
  }

  .reborn-review-body__label {
    margin-bottom: 10px;
    font-size: 12px;
  }

  .reborn-review-body__stars {
    margin-bottom: 13px;
    font-size: 15px;
  }

  .reborn-review-body__featured-text {
    font-size: 15px;
    line-height: 1.95;
  }

  .reborn-review-body__sub-list {
    display: block;
  }

  .reborn-review-body__sub {
    padding: 24px 8px 25px;
  }

  .reborn-review-body__sub + .reborn-review-body__sub {
    border-top: 1px solid #444;
    border-left: 0;
  }

  .reborn-review-body__sub-text {
    font-size: 14px;
    line-height: 1.9;
  }

  .reborn-review-body__note {
    margin-top: 16px;
    font-size: 11px;
  }

  .reborn-review-body__button-wrap {
    margin-top: 29px;
  }

  .reborn-review-body__button {
    width: min(100%, 280px);
    min-width: 0;
    min-height: 52px;
    padding: 12px 20px;
    font-size: 15px;
  }
}

html,
body {
  margin: 0 !important;
  padding: 0 !important;
  background: #000 !important;
}

.reborn-payment,
.reborn-payment * {
  box-sizing: border-box;
}

.reborn-payment {
  width: 100%;
  margin: 0;
  padding: 82px 0 76px;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-payment__inner {
  width: min(calc(100% - 40px), 920px);
  margin: 0 auto;
}

/* 見出し */

.reborn-payment__header {
  margin: 0 0 38px;
  text-align: center;
}

.reborn-payment__title {
  margin: 0;
  color: #fff;
  font-size: 30px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.03em;
}

.reborn-payment__subtitle {
  margin: 5px 0 0;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
}

.reborn-payment__line {
  width: 48px;
  height: 1px;
  margin: 19px auto 0;
  background: #5a9bd2;
}

/* 導入文 */

.reborn-payment__intro {
  margin: 0 0 34px;
  text-align: center;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.9;
}

.reborn-payment__intro strong {
  font-weight: 700;
}

.reborn-payment__sp-break {
  display: none;
}

/* 支払方法一覧 */

.reborn-payment__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid #444;
  border-bottom: 1px solid #444;
}

.reborn-payment__item {
  min-width: 0;
  padding: 27px 32px 29px;
}

.reborn-payment__item:nth-child(even) {
  border-left: 1px solid #444;
}

.reborn-payment__item:nth-child(n + 3) {
  border-top: 1px solid #444;
}

.reborn-payment__category {
  margin: 0 0 14px;
  color: #73b6ed;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.03em;
}

.reborn-payment__methods {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.9;
}

.reborn-payment__methods + .reborn-payment__methods {
  margin-top: 2px;
}

/* 注記 */

.reborn-payment__note {
  margin: 22px 0 0;
  padding-left: 15px;
  border-left: 1px solid #777;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.8;
}

/* スマートフォン */

@media (max-width: 640px) {
  .reborn-payment {
    padding: 62px 0 56px;
  }

  .reborn-payment__inner {
    width: min(calc(100% - 34px), 480px);
  }

  .reborn-payment__header {
    margin-bottom: 30px;
  }

  .reborn-payment__title {
    font-size: 24px;
  }

  .reborn-payment__subtitle {
    margin-top: 4px;
    font-size: 17px;
  }

  .reborn-payment__line {
    width: 42px;
    margin-top: 17px;
  }

  .reborn-payment__intro {
    margin-bottom: 27px;
    font-size: 14px;
    line-height: 1.9;
  }

  .reborn-payment__sp-break {
    display: block;
  }

  .reborn-payment__grid {
    display: block;
  }

  .reborn-payment__item {
    padding: 23px 17px 24px;
  }

  .reborn-payment__item:nth-child(even) {
    border-left: 0;
  }

  .reborn-payment__item:nth-child(n + 2) {
    border-top: 1px solid #444;
  }

  .reborn-payment__category {
    margin-bottom: 10px;
    font-size: 13px;
  }

  .reborn-payment__methods {
    font-size: 14px;
    line-height: 1.85;
  }

  .reborn-payment__note {
    margin-top: 19px;
    padding-left: 12px;
    font-size: 12px;
  }
}

.reborn-access,
.reborn-access * {
  box-sizing: border-box;
}

.reborn-access {
  width: 100%;
  margin: 0;
  padding: 74px 0 82px;
  overflow: hidden;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-access__inner {
  width: min(calc(100% - 48px), 1080px);
  margin: 0 auto;
}

/* ==================================================
   見出し
================================================== */

.reborn-access__header {
  margin: 0 auto 34px;
  text-align: center;
}

.reborn-access__title {
  margin: 0;
  color: #fff;
  font-size: 30px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.03em;
}

.reborn-access__subtitle {
  margin: 5px 0 0;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
}

.reborn-access__header-line {
  width: 48px;
  height: 1px;
  margin: 19px auto 0;
  background: #5a9bd2;
}

/* ==================================================
   導入
================================================== */

.reborn-access__lead {
  width: min(100%, 720px);
  margin: 0 auto;
  text-align: center;
}

.reborn-access__lead-text {
  margin: 0;
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.02em;
}

.reborn-access__divider {
  position: relative;
  width: min(100%, 720px);
  height: 1px;
  margin: 38px auto 0;
  background: rgba(255, 255, 255, 0.2);
}

.reborn-access__divider::after {
  position: absolute;
  top: -1px;
  left: 50%;
  width: 54px;
  height: 2px;
  background: #73b6ed;
  content: "";
  transform: translateX(-50%);
}

/* ==================================================
   店舗情報＋地図
================================================== */

.reborn-access__main {
  display: grid;
  grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
  gap: 42px;
  align-items: stretch;
  width: 100%;
  margin-top: 55px;
}

/* ==================================================
   店舗情報
================================================== */

.reborn-access__information {
  position: relative;
  min-width: 0;
  padding: 35px 34px 37px;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0)
    );
  border: 1px solid rgba(255, 255, 255, 0.22);
}

.reborn-access__information::before {
  position: absolute;
  top: -1px;
  left: -1px;
  width: 30px;
  height: 30px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
  content: "";
}

.reborn-access__information-label {
  margin: 0;
  color: #73b6ed;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.15em;
}

.reborn-access__information-title {
  margin: 8px 0 0;
  color: #fff;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.45;
  letter-spacing: 0.03em;
}

.reborn-access__list {
  margin: 31px 0 0;
  padding: 0;
}

.reborn-access__row {
  display: grid;
  grid-template-columns: 105px minmax(0, 1fr);
  gap: 21px;
  align-items: start;
  margin: 0;
  padding: 20px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.reborn-access__row:last-child {
  padding-bottom: 0;
}

.reborn-access__term {
  margin: 0;
  color: #73b6ed;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.05em;
}

.reborn-access__description {
  min-width: 0;
  margin: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.85;
  overflow-wrap: anywhere;
}

.reborn-access__reservation {
  font-size: 16px;
  font-weight: 700;
}

.reborn-access__mobile-break {
  display: none;
}

/* ==================================================
   Googleマップ
================================================== */

.reborn-access__map-column {
  min-width: 0;
}

.reborn-access__map-frame {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 430px;
  padding: 13px;
  background: #020202;
  border: 1px solid rgba(255, 255, 255, 0.22);
}

.reborn-access__map-frame::before,
.reborn-access__map-frame::after {
  position: absolute;
  z-index: 2;
  width: 30px;
  height: 30px;
  content: "";
  pointer-events: none;
}

.reborn-access__map-frame::before {
  top: -1px;
  left: -1px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
}

.reborn-access__map-frame::after {
  right: -1px;
  bottom: -1px;
  border-right: 2px solid #73b6ed;
  border-bottom: 2px solid #73b6ed;
}

.reborn-access__map {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 402px;
  margin: 0;
  border: 0;
  filter: grayscale(0.2) contrast(1.05);
}

/* ==================================================
   来店案内
================================================== */

.reborn-access__notice {
  display: grid;
  grid-template-columns: 185px minmax(0, 1fr);
  gap: 35px;
  align-items: center;
  width: min(100%, 900px);
  margin: 48px auto 0;
  padding: 28px 31px;
  background:
    linear-gradient(
      120deg,
      rgba(115, 182, 237, 0.08),
      rgba(255, 255, 255, 0.015)
    );
  border-top: 1px solid rgba(255, 255, 255, 0.22);
  border-bottom: 1px solid rgba(255, 255, 255, 0.22);
}

.reborn-access__notice-label {
  margin: 0;
  color: #73b6ed;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.14em;
}

.reborn-access__notice-title {
  display: block;
  margin-top: 8px;
  color: #fff;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.5;
}

.reborn-access__notice-text {
  margin: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 2;
}

/* ==================================================
   Google Mapsボタン
================================================== */

.reborn-access__button-wrap {
  margin-top: 40px;
  text-align: center;
}

.reborn-access__button {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 290px;
  min-height: 58px;
  padding: 14px 35px;
  overflow: hidden;
  color: #fff !important;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-align: center;
  text-decoration: none !important;
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(255, 255, 255, 0.55);
  transition:
    background 0.2s ease,
    border-color 0.2s ease;
}

.reborn-access__button::before {
  position: absolute;
  top: -1px;
  left: -1px;
  width: 27px;
  height: 27px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
  content: "";
}

.reborn-access__button:hover {
  background: rgba(115, 182, 237, 0.11);
  border-color: #73b6ed;
}

/* ==================================================
   タブレット
================================================== */

@media (max-width: 900px) {
  .reborn-access__inner {
    width: min(calc(100% - 42px), 780px);
  }

  .reborn-access__main {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 25px;
  }

  .reborn-access__information {
    padding: 31px 27px 33px;
  }

  .reborn-access__row {
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 17px;
  }

  .reborn-access__description {
    font-size: 14px;
  }

  .reborn-access__notice {
    grid-template-columns: 165px minmax(0, 1fr);
    gap: 25px;
  }
}

/* ==================================================
   スマートフォン
================================================== */

@media (max-width: 640px) {
  .reborn-access {
    padding: 62px 0 68px;
  }

  .reborn-access__inner {
    width: 100%;
  }

  /* 見出し */

  .reborn-access__header {
    width: calc(100% - 40px);
    margin-bottom: 28px;
  }

  .reborn-access__title {
    font-size: 24px;
  }

  .reborn-access__subtitle {
    margin-top: 4px;
    font-size: 17px;
  }

  .reborn-access__header-line {
    width: 42px;
    margin-top: 17px;
  }

  /* 導入 */

  .reborn-access__lead {
    width: calc(100% - 48px);
  }

  .reborn-access__lead-text {
    font-size: 14px;
    line-height: 2;
  }

  .reborn-access__divider {
    width: calc(100% - 48px);
    margin-top: 30px;
  }

  .reborn-access__divider::after {
    width: 46px;
  }

  /* 店舗情報＋地図 */

  .reborn-access__main {
    display: block;
    width: calc(100% - 40px);
    margin: 42px auto 0;
  }

  .reborn-access__information {
    width: 100%;
    padding: 28px 24px 30px;
  }

  .reborn-access__information-label {
    font-size: 10px;
  }

  .reborn-access__information-title {
    margin-top: 7px;
    font-size: 22px;
  }

  .reborn-access__list {
    margin-top: 26px;
  }

  .reborn-access__row {
    display: block;
    padding: 18px 0;
  }

  .reborn-access__term {
    font-size: 11px;
  }

  .reborn-access__description {
    margin-top: 6px;
    font-size: 14px;
    line-height: 1.85;
  }

  .reborn-access__reservation {
    font-size: 15px;
  }

  .reborn-access__mobile-break {
    display: block;
  }

  /* 地図 */

  .reborn-access__map-column {
    width: 100%;
    margin-top: 27px;
  }

  .reborn-access__map-frame {
    min-height: 330px;
    padding: 10px;
  }

  .reborn-access__map-frame::before,
  .reborn-access__map-frame::after {
    width: 26px;
    height: 26px;
  }

  .reborn-access__map {
    min-height: 308px;
  }

  /* 来店案内 */

  .reborn-access__notice {
    display: block;
    width: calc(100% - 48px);
    margin-top: 34px;
    padding: 25px 22px;
  }

  .reborn-access__notice-label {
    font-size: 10px;
  }

  .reborn-access__notice-title {
    margin-top: 7px;
    font-size: 17px;
  }

  .reborn-access__notice-text {
    margin-top: 17px;
    font-size: 14px;
    line-height: 1.95;
  }

  /* ボタン */

  .reborn-access__button-wrap {
    margin-top: 31px;
  }

  .reborn-access__button {
    width: calc(100% - 80px);
    min-width: 0;
    min-height: 55px;
    padding: 13px 20px;
    font-size: 14px;
  }
}

.reborn-related-service,
.reborn-related-service * {
  box-sizing: border-box;
}

.reborn-related-service {
  width: 100%;
  margin: 0;
  padding: 74px 0 82px;
  overflow: hidden;
  background: #000;
  color: #fff;
  font-family:
    Arial,
    "Yu Gothic",
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

.reborn-related-service__inner {
  width: min(calc(100% - 48px), 900px);
  margin: 0 auto;
}

/* ==================================================
   見出し
================================================== */

.reborn-related-service__header {
  margin: 0 auto 48px;
  text-align: center;
}

.reborn-related-service__title {
  margin: 0;
  color: #fff;
  font-size: 30px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.03em;
}

.reborn-related-service__subtitle {
  margin: 5px 0 0;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
}

.reborn-related-service__header-line {
  width: 48px;
  height: 1px;
  margin: 19px auto 0;
  background: #5a9bd2;
}

/* ==================================================
   VISIGUARD
================================================== */

.reborn-related-service__card {
  position: relative;
  width: min(100%, 780px);
  margin: 0 auto;
  padding: 46px 50px 50px;
  text-align: center;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0)
    );
  border: 1px solid rgba(255, 255, 255, 0.22);
}

.reborn-related-service__card::before,
.reborn-related-service__card::after {
  position: absolute;
  width: 31px;
  height: 31px;
  content: "";
  pointer-events: none;
}

.reborn-related-service__card::before {
  top: -1px;
  left: -1px;
  border-top: 2px solid #73b6ed;
  border-left: 2px solid #73b6ed;
}

.reborn-related-service__card::after {
  right: -1px;
  bottom: -1px;
  border-right: 2px solid #73b6ed;
  border-bottom: 2px solid #73b6ed;
}

/* テキストリンク */

.reborn-related-service__text-link {
  display: inline-block;
  margin: 0;
  color: #fff !important;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.03em;
  text-decoration: none !important;
  transition:
    color 0.2s ease,
    opacity 0.2s ease;
}

.reborn-related-service__text-link:hover {
  color: #73b6ed !important;
}

/* 区切り線 */

.reborn-related-service__divider {
  position: relative;
  width: min(100%, 560px);
  height: 1px;
  margin: 31px auto 35px;
  background: rgba(255, 255, 255, 0.2);
}

.reborn-related-service__divider::after {
  position: absolute;
  top: -1px;
  left: 50%;
  width: 54px;
  height: 2px;
  background: #73b6ed;
  content: "";
  transform: translateX(-50%);
}

/* ロゴリンク */

.reborn-related-service__logo-link {
  display: block;
  width: min(100%, 560px);
  margin: 0 auto;
  padding: 10px 0;
  text-decoration: none !important;
  transition:
    opacity 0.2s ease,
    transform 0.2s ease;
}

.reborn-related-service__logo-link:hover {
  opacity: 0.82;
  transform: translateY(-2px);
}

.reborn-related-service__logo {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* ==================================================
   スマートフォン
================================================== */

@media (max-width: 640px) {
  .reborn-related-service {
    padding: 62px 0 68px;
  }

  .reborn-related-service__inner {
    width: 100%;
  }

  /* 見出し */

  .reborn-related-service__header {
    width: calc(100% - 40px);
    margin-bottom: 39px;
  }

  .reborn-related-service__title {
    font-size: 23px;
    line-height: 1.45;
  }

  .reborn-related-service__subtitle {
    margin-top: 4px;
    font-size: 17px;
  }

  .reborn-related-service__header-line {
    width: 42px;
    margin-top: 17px;
  }

  /* カード */

  .reborn-related-service__card {
    width: calc(100% - 40px);
    padding: 35px 24px 38px;
  }

  .reborn-related-service__card::before,
  .reborn-related-service__card::after {
    width: 27px;
    height: 27px;
  }

  .reborn-related-service__text-link {
    font-size: 17px;
    line-height: 1.7;
  }

  .reborn-related-service__divider {
    width: 100%;
    margin: 27px auto 29px;
  }

  .reborn-related-service__divider::after {
    width: 46px;
  }

  .reborn-related-service__logo-link {
    width: 100%;
    padding: 8px 0;
  }
}
