@charset "UTF-8";

/* ========================================
  リノベーション（page-renovation.php）
  PC：768px以上 ／ SP：767px以下（SPはデザイン414px基準のvw）
======================================== */

/* 共通（PC・SP）
-------------------------------------*/
/* タイトル帯（absolute）がFVの背景の下に隠れないように */
#renovation .main-title {
  z-index: 3;
}

/* タイトル帯の英字（画像） */
#renovation .main-title .en {
  line-height: 1;
}

#renovation .main-title .en img {
  height: auto;
  vertical-align: bottom;
}

/* サンクスページ（page-renovation-thank.php）：戻るボタン2つを横に並べる */
#renovation .btnArea-s {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 20px;
  justify-content: center;
}

#renovation .btnArea-s::after {
  flex-basis: 100%;
}

#renovation .btnArea-s a {
  margin: 0;
}

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

/* FAQ（PC・SP共通：開閉のしくみ）
-------------------------------------*/
.p-faq__q {
  appearance: none;
  background: none;
  border: 0;
  color: #090909;
  cursor: pointer;
  display: flex;
  font-family: inherit;
  padding: 0;
  text-align: left;
  width: 100%;
}

.p-faq__q:focus-visible {
  outline: 2px solid #889E14;
  outline-offset: 4px;
}

.p-faq__a {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.3s ease;
}

.p-faq__items.is-js .p-faq__item:not(.is-open) .p-faq__a {
  grid-template-rows: 0fr;
}

.p-faq__a-inner {
  display: flex;
  overflow: hidden;
}

.p-faq__icon {
  align-items: center;
  background-color: #090909;
  color: #FFFFFF;
  display: flex;
  flex-shrink: 0;
  font-family: "Helvetica Neue", Arial, sans-serif;
  justify-content: center;
  line-height: 1;
}

.p-faq__icon.a {
  background-color: #889E14;
}

.p-faq__arrow {
  background-color: #090909;
  flex-shrink: 0;
  position: relative;
}

/* 開いているとき▼、閉じているとき▲（カンプどおり） */
.p-faq__arrow::before {
  background-color: #FFFFFF;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  height: 35%;
  left: 50%;
  position: absolute;
  top: 50%;
  transition: rotate 0.3s ease;
  translate: -50% -50%;
  width: 40%;
}

.p-faq__items.is-js .p-faq__item:not(.is-open) .p-faq__arrow::before {
  rotate: 180deg;
}

@media (prefers-reduced-motion: reduce) {
  .p-faq__a,
  .p-faq__arrow::before {
    transition: none;
  }
}

/* ========================================
@media screen and (min-width: 768px),print {
======================================== */
@media screen and (min-width: 768px), print {

#renovation .main-title .en {
  padding: 4px 0 5px;
}

#renovation .main-title .en img {
  width: 405px;
}

/* FV
-------------------------------------*/
.p-fv {
  background-color: #F5F5F5;
  overflow: hidden;
  position: relative;
}

#renovation .p-fv .seo_bread_list {
  margin-bottom: 0;
  padding-bottom: 92px;
  position: relative;
  z-index: 2;
}

.p-fv .l-inner.l-fv {
  margin-inline: auto;
  padding-bottom: 272px;
  position: relative;
  width: min(95%, 1280px);
  z-index: 1;
}

.p-fv__catch {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 36px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.86;
  padding-bottom: 31px;
}

.p-fv__label {
  align-items: center;
  background-color: #090909;
  color: #FFFFFF;
  display: inline-flex;
  gap: 0;
  height: 105px;
  margin-bottom: 38px;
  padding: 0 38px 0 28px;
}

.p-fv__label-logo {
  align-items: center;
  display: flex;
  gap: 0 12px;
}

.p-fv__label-logo img {
  width: 263px;
}

.p-fv__label-no {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 50px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.74;
  position: relative;
  top: 5px;
}

.p-fv__label-txt {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 58px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1;
}

.p-fv__img {
  bottom: 0;
  left: calc(50% + 40px);
  position: absolute;
  width: 722px;
  z-index: -1;
}

.p-fv__txt {
  color: #090909;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.75;
  position: relative;
}

.p-fv__txt:not(:last-child) {
  margin-bottom: 41px;
}

.p-fv__lead {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.3333333333;
  margin-bottom: 40px;
  position: relative;
}

.p-fv__watermark {
  bottom: 85px;
  left: calc(50% - 855px);
  position: absolute;
  width: 1112px;
}

.p-fv__watermark img {
  width: 100%;
}

/* こんなお悩み、ありませんか？
-------------------------------------*/
.p-worry {
  background-color: #D9D9D9;
  padding-block: 104px 123px;
}

.p-worry__ttl {
  border-bottom: 1px solid #090909;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin: 0 auto 23px;
  padding: 0 2px 6px;
  text-align: center;
  width: fit-content;
}

.p-worry__ttl .small {
  font-size: 24px;
  line-height: 1.3;
}

.p-worry__lead {
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.6875;
  margin-bottom: 62px;
  text-align: center;
}

.p-worry__items {
  display: grid;
  gap: 0 40px;
  grid-template-columns: repeat(4, 280px);
  justify-content: center;
}

.p-worry__item {
  background-color: #FFFFFF;
  display: flex;
  flex-direction: column;
}

.p-worry__item-head {
  background-color: #090909;
  color: #FFFFFF;
  margin-bottom: -44px;
  padding: 23px 10px 60px;
  text-align: center;
}

.p-worry__item-num {
  color: #A8C415;
  font-size: 12px;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-bottom: 5px;
}

.p-worry__item-ttl {
  align-items: center;
  display: flex;
  flex-direction: column;
  font-size: 19px;
  font-weight: 700;
  gap: 5px 0;
  letter-spacing: 0.02em;
  line-height: 1.45;
}

.p-worry__item-ttl::after {
  background-color: #FFFFFF;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  display: block;
  height: 16px;
  width: 24px;
}

.p-worry__item-img {
  margin-inline: auto;
  position: relative;
  width: 140px;
}

.p-worry__item-txt {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.8571428571;
  padding: 10px 20px 42px;
}

/* グリッド背景（できるリノベ〜マンション）
-------------------------------------*/
.p-renovation__grid {
  background-color: #FFFFFF;
  background-image:
    linear-gradient(90deg, transparent 18px, #F7F4F2 18px, #F7F4F2 20px),
    linear-gradient(transparent 18px, #F7F4F2 18px, #F7F4F2 20px);
  background-size: 20px 20px;
}

/* できるリノベーションがあります
-------------------------------------*/
.p-point {
  background-image: linear-gradient(#D9D9D9 0, #D9D9D9 261px, transparent 261px);
}

.p-point .l-inner.l-point {
  margin-inline: auto;
  width: min(95%, 1440px);
}

.p-point__box {
  background-color: #A8C415;
  border: 10px solid #FFFFFF;
  padding: 113px 40px 90px;
  position: relative;
}

.p-point__box::before {
  background-color: #F8E700;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  height: 80px;
  left: 50%;
  position: absolute;
  top: -50px;
  translate: -50% 0;
  width: 296px;
}

.p-point__ttl {
  margin-bottom: 34px;
  text-align: center;
}

.p-point__ttl-sub {
  display: block;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin-bottom: 17px;
}

.p-point__ttl-main {
  color: #090909;
  display: block;
  font-size: 50px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.44;
}

.p-point__ttl-main .hl {
  background-image: linear-gradient(transparent 52%, #F8E700 52%, #F8E700 88%, transparent 88%);
}

.p-point__lead {
  color: #FFFFFF;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-bottom: 57px;
  text-align: center;
}

.p-point__items {
  display: grid;
  gap: 0 40px;
  grid-template-columns: repeat(3, 400px);
  justify-content: center;
}

.p-point__item {
  background-color: #FFFFFF;
  padding: 40px 40px 43px;
  text-align: center;
}

.p-point__item-en {
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin-bottom: 15px;
}

.p-point__item-ttl {
  color: #889E14;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin-bottom: 24px;
}

.p-point__item-ttl .small {
  font-size: 24px;
  line-height: 1.4;
}

.p-point__item-img {
  margin-bottom: 9px;
}

.p-point__item-txt {
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.75;
}

/* RENOVATION 共通（ガレージ・戸建て・マンション）
-------------------------------------*/
.p-category__en {
  color: #889E14;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 31px;
  letter-spacing: 0.05em;
  line-height: 1.2;
  margin-bottom: 42px;
}

.p-category__ttl .sub {
  display: block;
  font-size: min(24px, 1.8vw);
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-bottom: 18px;
}

.p-category__ttl .main {
  display: block;
  font-size: min(50px, 3.125vw);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.3;
}

.p-category__txt {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.75;
  max-width: 500px;
}

.p-category.garage .p-category__txt,
.p-category.house .p-category__txt {
  color: #090909;
}

.p-category.mansion .p-category__txt {
  color: #FFFFFF;
}

.p-category__img img {
  width: 100%;
}

/* RENOVATION.01 ガレージ
-------------------------------------*/
.p-category.garage {
  padding-block: 160px 80px;
}

.p-category.garage .l-inner.l-category {
  display: grid;
  grid-template-columns: 27.5% 1.25% 27.5% 5% 1fr;
  grid-template-rows: auto auto 1fr;
  margin-inline: auto;
  position: relative;
  width: min(95%, 1600px);
  z-index: 0;
}

.p-category.garage .p-category__img.img01 {
  align-self: start;
  grid-column: 1;
  grid-row: 1 / 4;
  position: relative;
}

.p-category.garage .p-category__img.img02 {
  align-self: start;
  grid-column: 3;
  grid-row: 1 / 4;
  position: relative;
  top: 80px;
}

.p-category.garage .p-category__head {
  grid-column: 5;
  grid-row: 1;
  margin-bottom: 53px;
}

.p-category.garage .l-category > .p-category__txt {
  grid-column: 5;
  grid-row: 2;
  margin-bottom: 164px;
}

.p-category.garage .p-category__box {
  grid-column: 5;
  grid-row: 3;
  position: relative;
}

.p-category.garage .p-category__box::before {
  background-color: #F5F5F5;
  content: "";
  height: 406px;
  left: -145.16%;
  position: absolute;
  right: 0;
  top: -54px;
  z-index: -1;
}

.p-category.garage .p-category__box .p-category__txt {
  margin-bottom: 71px;
}

.p-category.garage .p-category__sofa {
  margin-left: 148px;
  width: 425px;
}

/* RENOVATION.02 戸建て
-------------------------------------*/
.p-category.house {
  padding-bottom: 161px;
}

.p-category.house .l-inner.l-category {
  background-color: #F5F5F5;
  margin-left: max(2.5%, calc(50% - 800px));
  padding: 121px 0 120px min(160px, 8.333vw);
  position: relative;
}

.p-category.house .p-category__head {
  margin-bottom: 52px;
}

.p-category.house .p-category__img.main-img {
  position: absolute;
  right: 0;
  top: 118px;
  width: 54.545%;
  z-index: 1;
}

.p-category.house .p-category__txt {
  max-width: 640px;
}

.p-category.house .l-category > .p-category__txt {
  margin-bottom: 82px;
}

.p-category.house .p-category__box {
  background-color: #FFFFFF;
  margin-left: -80px;
  padding: 54px 80px 59px;
  position: relative;
  width: calc(100% - min(160px, 8.333vw));
}

.p-category.house .p-category__box .p-category__txt {
  margin-bottom: 142px;
}

.p-category__subs {
  display: grid;
  gap: 0 40px;
  grid-template-columns: repeat(3, 1fr);
}

.p-category__sub img {
  width: 100%;
}

/* RENOVATION.03 マンション
-------------------------------------*/
.p-category.mansion .l-inner.l-category {
  color: #FFFFFF;
  position: relative;
  z-index: 0;
}

.p-category.mansion .l-category::before {
  background-color: #212121;
  bottom: 0;
  content: "";
  left: min(160px, 8.333vw);
  position: absolute;
  right: 0;
  top: 120px;
  z-index: -1;
}

.p-category.mansion .p-category__img.main-img {
  position: relative;
  width: 78.646%;
  z-index: 1;
}

.p-category.mansion .p-category__panel {
  background-color: #212121;
  left: 55.208%;
  min-height: 538px;
  padding: 101px min(80px, 3.125vw) 60px 80px;
  position: absolute;
  right: 0;
  top: 120px;
  z-index: 2;
}

.p-category.mansion .p-category__head {
  margin-bottom: 49px;
}

.p-category.mansion .p-category__ttl .main {
  font-size: min(50px, 2.8vw);
}

.p-category.mansion .p-category__txt {
  max-width: none;
}

.p-category.mansion .p-category__box {
  align-items: flex-start;
  display: flex;
  padding: 60px 0 120px 12.5%;
  position: relative;
  z-index: 1;
}

.p-category.mansion .p-category__box .p-category__txt {
  padding-top: 51px;
  width: 37.262%;
}

.p-category.mansion .p-category__subs {
  gap: 0 41px;
  grid-template-columns: repeat(2, 1fr);
  width: 45.238%;
}

.p-category.mansion .p-category__sub {
  aspect-ratio: 3 / 2;
  overflow: hidden;
}

.p-category.mansion .p-category__sub img {
  height: 100%;
  object-fit: cover;
}

/* 英字見出し（GALLERY・FLOW・FAQ・CONTACT 共通）
-------------------------------------*/
.p-renovation__ttl {
  text-align: center;
}

.p-renovation__ttl .en {
  display: block;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 60px;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 1.2;
  margin-bottom: 2px;
}

.p-renovation__ttl .jp {
  display: block;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

/* GALLERY
-------------------------------------*/
.p-gallery {
  padding-block: 143px 147px;
}

.p-gallery .p-renovation__ttl {
  margin-bottom: 80px;
}

.p-gallery__items {
  display: grid;
  gap: 0 40px;
  grid-template-columns: repeat(4, minmax(0, 400px));
  justify-content: center;
  margin-inline: auto;
  width: min(95%, 1720px);
}

.p-gallery__link {
  color: #090909;
  display: block;
  transition: opacity 0.3s ease;
}

.p-gallery__img {
  margin-bottom: 13px;
}

.p-gallery__img img {
  width: 100%;
}

.p-gallery__ttl {
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1.5;
  margin-bottom: 23px;
}

.p-gallery__bottom {
  align-items: flex-start;
  display: flex;
  gap: 0 12px;
}

.p-gallery__cat {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  gap: 6px 0;
}

.p-gallery__cat span {
  background-color: #333333;
  color: #FFFFFF;
  display: inline-block;
  font-size: 12px;
  letter-spacing: 0.05em;
  line-height: 2;
  padding: 0 14px;
}

.p-gallery__area {
  color: #A1A1A1;
  flex: 1;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 1.7857142857;
  margin-right: 8px;
  position: relative;
  top: -6px;
}

.p-gallery__more {
  flex-shrink: 0;
  width: 74px;
}

@media (any-hover: hover) {
  .p-gallery__link:hover {
    opacity: 0.7;
  }
}

/* FLOW
-------------------------------------*/
.p-flow {
  background-color: #E9E7E3;
  padding-block: 143px 148px;
}

.p-flow .p-renovation__ttl {
  margin-bottom: 24px;
}

.p-flow__lead {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-bottom: 38px;
  text-align: center;
}

.p-flow__items {
  display: flex;
  flex-direction: column;
  gap: 40px 0;
  margin-inline: auto;
  width: min(95%, 1100px);
}

.p-flow__item {
  align-items: flex-start;
  background-color: #FFFFFF;
  border-radius: 110px;
  display: flex;
  min-height: 220px;
  padding: 30px 60px 30px;
  position: relative;
}

.p-flow__item:not(:last-child)::after {
  background-color: #889E14;
  content: "";
  height: 40px;
  left: 138px;
  position: absolute;
  top: 100%;
  width: 4px;
}

.p-flow__item-icon {
  align-items: center;
  background-color: #F5F5F5;
  border-radius: 50%;
  display: flex;
  flex-shrink: 0;
  height: 160px;
  justify-content: center;
  margin-right: 40px;
  width: 160px;
}

.p-flow__item-body {
  flex: 1;
  padding-top: 9px;
}

.p-flow__item-num {
  color: #889E14;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin-bottom: 15px;
}

.p-flow__item-ttl {
  border-bottom: 2px solid #ECECEC;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-bottom: 8px;
  padding-bottom: 21px;
}

.p-flow__item-txt {
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.75;
}

/* FAQ
-------------------------------------*/
.p-faq {
  background-color: #E9E7E3;
  padding-bottom: 140px;
}

.p-faq .l-inner.l-faq {
  background-color: #FFFFFF;
  margin-inline: auto;
  padding: 75px 80px 80px;
  width: min(95%, 1260px);
}

.p-faq .p-renovation__ttl {
  margin-bottom: 39px;
}

.p-faq__items {
  display: flex;
  flex-direction: column;
  gap: 24px 0;
}

.p-faq__item {
  background-color: #F5F5F5;
  padding: 30px 40px 30px 30px;
}

.p-faq__item.is-open {
  padding-bottom: 33px;
}

.p-faq__q {
  align-items: center;
  gap: 0 20px;
}

.p-faq__icon {
  font-size: 24px;
  height: 40px;
  width: 40px;
}

.p-faq__q-txt {
  flex: 1;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.6666666667;
}

.p-faq__arrow {
  height: 40px;
  width: 40px;
}

.p-faq__a-inner {
  align-items: flex-start;
  gap: 0 20px;
  padding-right: 95px;
}

.p-faq__a-icon {
  flex-shrink: 0;
  padding-top: 18px;
}

.p-faq__a-txt {
  padding-top: 13px;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.75;
}

/* CONTACT
-------------------------------------*/
.p-contact {
  padding-block: 142px 115px;
}

.p-contact .p-renovation__ttl {
  margin-bottom: 63px;
}

.p-contact__contents {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
  margin-inline: auto;
  width: min(95%, 1026px);
}

.p-contact__ttl {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.7083333333;
  margin-bottom: 18px;
}

.p-contact__txt {
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.75;
}

.p-contact__img {
  flex-shrink: 0;
  width: 46.784%;
}

.p-contact__img img {
  width: 100%;
}

/* メールフォーム（既存 .form-Box の色だけこのページ用に変更）
-------------------------------------*/
#renovation .form-Box {
  background-color: #FFFFFF;
}

#renovation .form-Box .form-Box-inner {
  background-color: #F5F5F5;
  padding-top: 84px;
}

#renovation .form-Box .form-Box-en {
  margin-bottom: 14px;
}

#renovation .form-Box .form-Box-ttl {
  margin-bottom: 52px;
}

#renovation .form-Box .list {
  margin-bottom: 36px;
  width: min(95%, 680px);
}

#renovation .form-Box th {
  padding: 32px 42px 28px 61px;
  width: 311px;
}

#renovation .form-Box td {
  padding: 17px 22px 17px 14px;
  width: auto;
}

#renovation .form-Box .required::after {
  right: 9px;
  top: 31px;
}

#renovation .form-Box input[type="text"],
#renovation .form-Box input[type="tel"],
#renovation .form-Box input[type="email"] {
  background-color: #FFFFFF;
  height: 48px;
  max-width: 100%;
  padding: 0 20px;
  width: 408px;
}

#renovation .form-Box #postal_code,
#renovation .form-Box #prefecture {
  width: 174px;
}

#renovation .form-Box #address01,
#renovation .form-Box #address02,
#renovation .form-Box textarea {
  width: 618px;
}

#renovation .form-Box #address01 {
  margin-bottom: 0;
}

#renovation .form-Box textarea {
  background-color: #FFFFFF;
  display: block;
  height: 174px;
  max-width: 100%;
  min-height: 174px;
  padding: 14px 20px;
}

#renovation .form-Box td.add-td {
  padding: 17px 22px 17px 14px;
}

#renovation .form-Box td.add-td .input_area {
  gap: 18px 0;
}

#renovation .form-Box td.zip-td .input_area {
  align-items: center;
  display: flex;
  gap: 0 8px;
}

/* 画像にした番号・英字見出し（お悩みの番号／RENOVATION.01〜03）
-------------------------------------*/
.p-worry__item-num {
  align-items: flex-start;
  display: flex;
  height: 18px;
  justify-content: center;
  padding-top: 4px;
}

.p-worry__item-num img {
  height: auto;
}

.p-worry__item:nth-child(1) .p-worry__item-num img { width: 12.6px; }
.p-worry__item:nth-child(2) .p-worry__item-num img { width: 15.5px; }
.p-worry__item:nth-child(3) .p-worry__item-num img { width: 15.44px; }
.p-worry__item:nth-child(4) .p-worry__item-num img { width: 16.29px; }

.p-category__en {
  align-items: flex-start;
  display: flex;
  height: 37.2px;
  padding-top: 7px;
}

.p-category__en img {
  height: auto;
}

.p-category.garage .p-category__en img { width: 244.59px; }
.p-category.house .p-category__en img { width: 251.28px; }
.p-category.mansion .p-category__en img { width: 251.16px; }

}

/* ========================================
@media screen and (min-width: 768px) and (max-width: 1599px) {
  PCデザイン（1920）を768〜1599pxで崩さないための縮小
======================================== */
@media screen and (min-width: 768px) and (max-width: 1599px) {

/* FV */
.p-fv__contents {
  width: 50%;
}

.p-fv__catch {
  font-size: max(24px, 2.25vw);
}

.p-fv__label {
  gap: 0 0.25vw;
  height: 6.563vw;
  padding: 0 2.375vw 0 1.75vw;
}

.p-fv__label-logo {
  gap: 0 0.9vw;
}

.p-fv__label-logo img {
  width: 14.9vw;
}

.p-fv__label-no {
  font-size: 2.84vw;
}

.p-fv__label-txt {
  font-size: 3.3vw;
  white-space: nowrap;
}

.p-fv__lead {
  font-size: max(18px, 1.5vw);
}

.p-fv__img {
  left: calc(50% + 2.5vw);
  width: 45.125vw;
}

.p-fv__watermark {
  left: 2.5%;
  width: 69.5vw;
}

/* お悩み */
.p-worry__items {
  gap: 0 2.5vw;
  grid-template-columns: repeat(4, minmax(0, 280px));
  padding-inline: 2.5%;
}

.p-worry__item-ttl {
  font-size: min(19px, 1.4vw);
}

.p-worry__item-txt {
  padding-inline: min(20px, 1.25vw);
}

/* できるリノベ */
.p-point__box {
  padding: 7.063vw 2.5vw 5.625vw;
}

.p-point__box::before {
  height: 5vw;
  top: calc(-2.5vw - 10px);
  width: 18.5vw;
}

.p-point__ttl-sub {
  font-size: 2vw;
}

.p-point__ttl-main {
  font-size: 3.125vw;
}

.p-point__items {
  gap: 0 2.5vw;
  grid-template-columns: repeat(3, minmax(0, 400px));
}

.p-point__item {
  padding: 2.5vw 2.5vw 2.688vw;
}

.p-point__item-ttl {
  font-size: 2vw;
}

.p-point__item-ttl .small {
  font-size: 1.5vw;
}

.p-point__item-txt {
  font-size: min(16px, 1.25vw);
}

/* RENOVATION 共通 */
.p-category__en {
  font-size: 1.938vw;
  height: 2.325vw;
  margin-bottom: 2.625vw;
}

.p-category.garage .p-category__en img { width: 12.74vw; }
.p-category.house .p-category__en img { width: 13.09vw; }
.p-category.mansion .p-category__en img { width: 13.08vw; }

.p-category__ttl .sub {
  margin-bottom: 1.125vw;
}

.p-category.garage .p-category__head,
.p-category.house .p-category__head {
  margin-bottom: 3.25vw;
}

/* ガレージ */
.p-category.garage {
  padding-block: 10vw 5vw;
}

.p-category.garage .p-category__img.img02 {
  top: 5vw;
}

.p-category.garage .l-category > .p-category__txt {
  margin-bottom: 10.25vw;
}

.p-category.garage .p-category__box::before {
  height: calc(100% + 3.375vw);
  top: -3.375vw;
}

.p-category.garage .p-category__box .p-category__txt {
  margin-bottom: 4.438vw;
}

.p-category.garage .p-category__sofa {
  margin-left: 23.87%;
  width: 68.548%;
}

/* 戸建て */
.p-category.house {
  padding-bottom: 10.063vw;
}

.p-category.house .l-inner.l-category {
  padding-block: 7.563vw 7.5vw;
}

.p-category.house .p-category__img.main-img {
  top: 7.375vw;
}

.p-category.house .l-category > .p-category__txt {
  max-width: 40%;
}

.p-category.house .p-category__box {
  margin-left: -5vw;
  padding: 3.375vw 5vw 3.688vw;
}

.p-category.house .p-category__box .p-category__txt {
  margin-bottom: 8.875vw;
}

.p-category__subs {
  gap: 0 2.5vw;
}

/* マンション */
.p-category.mansion .l-category::before,
.p-category.mansion .p-category__panel {
  top: 7.5vw;
}

.p-category.mansion .p-category__panel {
  min-height: 33.625vw;
  padding: 6.313vw 3.125vw 3.125vw 5vw;
}

.p-category.mansion .p-category__ttl .main {
  font-size: min(50px, 2.8vw);
}

.p-category.mansion .p-category__panel .p-category__txt {
  font-size: max(13px, 1vw);
}

.p-category.mansion .p-category__head {
  margin-bottom: 3.063vw;
}

.p-category.mansion .p-category__box {
  padding: 3.75vw 0 7.5vw 12.5%;
}

.p-category.mansion .p-category__box .p-category__txt {
  padding: 3.188vw 2.5vw 0 0;
}

.p-category.mansion .p-category__subs {
  gap: 0 2.563vw;
}

/* 英字見出し */
.p-renovation__ttl .en {
  font-size: 3.75vw;
}

/* GALLERY */
.p-gallery__items {
  gap: 0 2.5vw;
}

.p-gallery__bottom {
  flex-direction: column;
  gap: 10px 0;
}

.p-gallery__area {
  margin-right: 0;
  top: 0;
}

.p-gallery__more {
  align-self: flex-end;
}

/* メールフォーム */
#renovation .form-Box table {
  table-layout: fixed;
}

#renovation .form-Box th {
  padding-left: 3.177vw;
  width: 30%;
}

/* FLOW */
.p-flow__item {
  padding-inline: 3.75vw;
}

.p-flow__item:not(:last-child)::after {
  left: calc(3.75vw + 78px);
}

}

/* ========================================
@media screen and (max-width: 767px) {
======================================== */
@media screen and (max-width: 767px) {

#renovation .main-title .en {
  padding: 1.208vw 0;
}

#renovation .main-title .en img {
  width: 65.459vw;
}

/* FV
-------------------------------------*/
.p-fv {
  background-color: #F5F5F5;
  overflow: hidden;
  position: relative;
}

#renovation .p-fv .seo_bread_list {
  margin-bottom: 0;
  padding-bottom: 10.386vw;
  position: relative;
  z-index: 2;
}

.p-fv .l-inner.l-fv {
  padding-bottom: 16.908vw;
  position: relative;
  z-index: 1;
}

.p-fv__catch {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 5.797vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.8;
  padding: 0 4.106vw 4.831vw;
}

.p-fv__label {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 1.208vw 0;
  margin-bottom: -10.87vw;
  padding-inline: 4.106vw;
  position: relative;
  z-index: 1;
}

.p-fv__label-logo,
.p-fv__label-txt {
  align-items: center;
  background-color: #090909;
  color: #FFFFFF;
  display: flex;
  height: 13.285vw;
}

.p-fv__label-logo {
  padding-inline: 4.831vw 5.314vw;
}

.p-fv__label-logo {
  gap: 0 0.725vw;
}

.p-fv__label-logo img {
  width: 41.063vw;
}

.p-fv__label-no {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 7.246vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.74;
  position: relative;
  top: 0.725vw;
}

.p-fv__label-txt {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 6.763vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1;
  padding-inline: 5.556vw 4.106vw;
}

.p-fv__img {
  margin-bottom: 4.106vw;
}

.p-fv__img img {
  width: 100%;
}

.p-fv__txt {
  color: #090909;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 3.865vw;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.75;
  padding-inline: 4.106vw;
  position: relative;
}

.p-fv__txt:not(:last-child) {
  margin-bottom: 4.348vw;
}

.p-fv__lead {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 4.348vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.7777777778;
  margin-bottom: 4.106vw;
  padding-inline: 4.106vw;
  position: relative;
}

.p-fv__watermark {
  bottom: 3.865vw;
  position: absolute;
  right: 6.763vw;
  width: 68.116vw;
}

.p-fv__watermark img {
  width: 100%;
}

/* こんなお悩み、ありませんか？
-------------------------------------*/
.p-worry {
  background-color: #D9D9D9;
  padding-block: 15.217vw 9.903vw;
}

.p-worry__ttl {
  border-bottom: 1px solid #090909;
  font-size: 5.797vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin: 0 auto 3.865vw;
  padding: 0 0.483vw 2.657vw;
  text-align: center;
  width: fit-content;
}

.p-worry__ttl .small {
  font-size: 4.348vw;
  line-height: 1.3;
}

.p-worry__lead {
  font-size: 3.865vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-bottom: 10.145vw;
  text-align: center;
}

.p-worry__items {
  display: flex;
  flex-direction: column;
  gap: 5.797vw 0;
  margin-inline: auto;
  width: 82.126vw;
}

.p-worry__item {
  background-color: #FFFFFF;
}

.p-worry__item-head {
  background-color: #090909;
  color: #FFFFFF;
  margin-bottom: -11.111vw;
  padding: 5.556vw 2.415vw 14.976vw;
  text-align: center;
}

.p-worry__item-num {
  color: #A8C415;
  font-size: 2.899vw;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-bottom: 1.329vw;
}

.p-worry__item-ttl {
  align-items: center;
  display: flex;
  flex-direction: column;
  font-size: 4.589vw;
  font-weight: 700;
  gap: 1.449vw 0;
  letter-spacing: 0.02em;
  line-height: 1.45;
}

.p-worry__item-ttl::after {
  background-color: #FFFFFF;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  display: block;
  height: 3.865vw;
  width: 5.797vw;
}

.p-worry__item-img {
  margin-inline: auto;
  position: relative;
  width: 33.816vw;
}

.p-worry__item-txt {
  font-size: 3.382vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.8571428571;
  padding: 2.415vw 6.039vw 10.386vw;
}

/* グリッド背景（できるリノベ〜マンション）
-------------------------------------*/
.p-renovation__grid {
  background-color: #FFFFFF;
  background-image:
    linear-gradient(90deg, transparent 1.836vw, #F7F4F2 1.836vw, #F7F4F2 2.077vw),
    linear-gradient(transparent 1.836vw, #F7F4F2 1.836vw, #F7F4F2 2.077vw);
  background-size: 2.077vw 2.077vw;
}

/* できるリノベーションがあります
-------------------------------------*/
.p-point {
  background-image: linear-gradient(#D9D9D9 0, #D9D9D9 9.662vw, transparent 9.662vw);
}

.p-point .l-inner.l-point {
  margin-inline: auto;
  width: 94.203vw;
}

.p-point__box {
  background-color: #A8C415;
  border: 0.966vw solid #FFFFFF;
  padding: 13.647vw 5.072vw 10.628vw;
  position: relative;
}

.p-point__box::before {
  background-color: #F8E700;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  height: 9.42vw;
  left: 50%;
  position: absolute;
  top: -5.797vw;
  translate: -50% 0;
  width: 37.681vw;
}

.p-point__ttl {
  margin-bottom: 2.778vw;
  text-align: center;
}

.p-point__ttl-sub {
  display: block;
  font-size: 4.348vw;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.5;
  margin-bottom: 2.053vw;
}

.p-point__ttl-main {
  color: #090909;
  display: block;
  font-size: 6.28vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.42;
  text-align: center;
}

.p-point__ttl-main .hl {
  background-image: linear-gradient(transparent 62%, #F8E700 62%, #F8E700 100%);
}

.p-point__lead {
  color: #FFFFFF;
  font-size: 3.382vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.8571428571;
  margin-bottom: 9.903vw;
}

.p-point__items {
  display: flex;
  flex-direction: column;
  gap: 2.415vw 0;
}

.p-point__item {
  background-color: #FFFFFF;
  padding: 7.246vw 4.831vw 8.575vw;
  text-align: center;
}

.p-point__item-en {
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 3.14vw;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin-bottom: 1.304vw;
}

.p-point__item-ttl {
  color: #889E14;
  font-size: 7.729vw;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.4;
  margin-bottom: 3.865vw;
}

.p-point__item-ttl .small {
  font-size: 5.314vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.68;
}

.p-point__item-img {
  margin-bottom: 1.57vw;
}

.p-point__item-txt {
  font-size: 3.865vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.75;
}

/* RENOVATION 共通（ガレージ・戸建て・マンション）
-------------------------------------*/
.p-category__en {
  color: #889E14;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 3.382vw;
  letter-spacing: 0.05em;
  line-height: 1.2;
  margin-bottom: 6.039vw;
}

.p-category__ttl .sub {
  display: block;
  font-size: 3.865vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-bottom: 2.295vw;
}

.p-category__ttl .main {
  display: block;
  font-size: 6.28vw;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.3;
}

.p-category__txt {
  font-size: 3.865vw;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.75;
}

.p-category.garage .p-category__txt,
.p-category.house .p-category__txt {
  color: #090909;
}

.p-category.mansion .p-category__txt {
  color: #FFFFFF;
}

.p-category__img img {
  width: 100%;
}

/* RENOVATION.01 ガレージ
-------------------------------------*/
.p-category.garage {
  padding-block: 19.807vw 27.053vw;
}

.p-category.garage .l-inner.l-category {
  display: flex;
  flex-direction: column;
  padding-inline: 4.106vw;
}

.p-category.garage .p-category__head {
  margin-bottom: 6.039vw;
  order: 1;
}

.p-category.garage .p-category__img.img01 {
  margin-bottom: 4.348vw;
  order: 2;
}

.p-category.garage .l-category > .p-category__txt {
  margin-bottom: 10.145vw;
  order: 3;
}

.p-category.garage .p-category__img.img02 {
  margin-bottom: -9.662vw;
  order: 4;
  position: relative;
  z-index: 1;
}

.p-category.garage .p-category__box {
  background-color: #F5F5F5;
  margin-inline: -4.106vw;
  order: 5;
  padding: 14.01vw 4.106vw 0;
}

.p-category.garage .p-category__box .p-category__txt {
  margin-bottom: 0.483vw;
}

.p-category.garage .p-category__sofa {
  margin: 0 2.657vw -17.15vw auto;
  width: 47.585vw;
}

/* RENOVATION.02 戸建て
-------------------------------------*/
.p-category.house {
  padding-bottom: 14.734vw;
}

.p-category.house .l-inner.l-category {
  background-color: #F5F5F5;
  margin-inline: 1.932vw;
  padding: 14.734vw 5.797vw 14.251vw;
}

.p-category.house .p-category__head {
  margin-bottom: 6.039vw;
}

.p-category.house .p-category__img.main-img {
  margin-bottom: 4.348vw;
}

.p-category.house .l-category > .p-category__txt {
  margin-bottom: 10.145vw;
}

.p-category.house .p-category__box {
  background-color: #FFFFFF;
  padding: 4.348vw 3.382vw 5.797vw;
}

.p-category.house .p-category__box .p-category__txt {
  margin-bottom: 4.348vw;
}

.p-category__subs {
  display: grid;
  gap: 3.865vw 3.382vw;
  grid-template-columns: repeat(2, 1fr);
}

.p-category__sub:first-child {
  grid-column: 1 / 3;
}

.p-category__sub img {
  width: 100%;
}

/* RENOVATION.03 マンション
-------------------------------------*/
.p-category.mansion .l-inner.l-category {
  background-color: #212121;
  color: #FFFFFF;
  display: flex;
  flex-direction: column;
  padding: 14.493vw 4.106vw;
}

.p-category.mansion .p-category__panel {
  display: contents;
}

.p-category.mansion .p-category__head {
  margin-bottom: 6.28vw;
  order: 1;
}

.p-category.mansion .p-category__img.main-img {
  margin-bottom: 4.106vw;
  order: 2;
}

.p-category.mansion .p-category__panel .p-category__txt {
  margin-bottom: 10.145vw;
  order: 3;
}

.p-category.mansion .p-category__box {
  display: flex;
  flex-direction: column;
  order: 4;
}

.p-category.mansion .p-category__subs {
  display: contents;
}

.p-category.mansion .p-category__sub {
  aspect-ratio: 380 / 200;
  overflow: hidden;
}

.p-category.mansion .p-category__sub img {
  height: 100%;
  object-fit: cover;
}

.p-category.mansion .p-category__sub:first-child {
  margin-bottom: 4.348vw;
  order: 1;
}

.p-category.mansion .p-category__box .p-category__txt {
  margin-bottom: 6.039vw;
  order: 2;
}

.p-category.mansion .p-category__sub:last-child {
  order: 3;
}

/* 英字見出し（GALLERY・FLOW・FAQ・CONTACT 共通）
-------------------------------------*/
.p-renovation__ttl {
  text-align: center;
}

.p-renovation__ttl .en {
  display: block;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 9.662vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.2;
  margin-bottom: 0.725vw;
}

.p-renovation__ttl .jp {
  display: block;
  font-size: 3.865vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

/* GALLERY
-------------------------------------*/
.p-gallery {
  padding-block: 20.048vw 23.913vw;
}

.p-gallery .p-renovation__ttl {
  margin-bottom: 9.058vw;
}

.p-gallery__items {
  display: grid;
  gap: 8.937vw 2.415vw;
  grid-template-columns: repeat(2, 1fr);
  padding-inline: 2.899vw;
}

.p-gallery__link {
  color: #090909;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.p-gallery__img {
  margin-bottom: 3.261vw;
}

.p-gallery__img img {
  width: 100%;
}

.p-gallery__ttl {
  font-size: 3.382vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.5;
  margin-bottom: 2.778vw;
}

.p-gallery__bottom {
  align-items: flex-start;
  display: flex;
  flex: 1;
  flex-direction: column;
}

.p-gallery__cat {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 1.932vw 0;
  margin-bottom: 2.585vw;
}

.p-gallery__cat span {
  background-color: #3C3C3C;
  color: #FFFFFF;
  display: inline-block;
  font-size: 2.899vw;
  letter-spacing: 0.05em;
  line-height: 2;
  padding: 0 3.382vw;
}

.p-gallery__area {
  color: #A1A1A1;
  font-size: 2.899vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  flex: 1;
  line-height: 1.7;
  margin-bottom: 3.382vw;
}

.p-gallery__more {
  align-self: flex-end;
  width: 16.908vw;
}

/* FLOW
-------------------------------------*/
.p-flow {
  background-color: #E9E7E3;
  padding-block: 14.66vw 15.7vw;
}

.p-flow .p-renovation__ttl {
  margin-bottom: 5.556vw;
}

.p-flow__lead {
  font-size: 4.348vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.6;
  margin-bottom: 9.662vw;
  text-align: center;
}

.p-flow__items {
  display: flex;
  flex-direction: column;
  gap: 2.899vw 0;
  margin-inline: 2.899vw;
}

.p-flow__item {
  align-items: flex-start;
  background-color: #FFFFFF;
  border-radius: 4.831vw;
  display: flex;
  padding: 4.034vw 4.831vw 5.435vw 5.072vw;
  position: relative;
}

.p-flow__item:not(:last-child)::after {
  background-color: #889E14;
  content: "";
  height: 2.899vw;
  left: 19.082vw;
  position: absolute;
  top: 100%;
  width: 0.966vw;
}

.p-flow__item-icon {
  align-items: center;
  background-color: #F5F5F5;
  border-radius: 50%;
  display: flex;
  flex-shrink: 0;
  height: 28.986vw;
  justify-content: center;
  margin-right: 2.415vw;
  position: relative;
  top: 1.039vw;
  width: 28.986vw;
}

/* SPのアイコンはPCの75% */
.p-flow__item:nth-child(1) .p-flow__item-icon img { width: 17.531vw; }
.p-flow__item:nth-child(2) .p-flow__item-icon img { width: 12.734vw; }
.p-flow__item:nth-child(3) .p-flow__item-icon img { width: 22.79vw; }
.p-flow__item:nth-child(4) .p-flow__item-icon img { width: 11.614vw; }
.p-flow__item:nth-child(5) .p-flow__item-icon img { width: 17.198vw; }
.p-flow__item:nth-child(6) .p-flow__item-icon img { width: 20.229vw; }

.p-flow__item-body {
  flex: 1;
}

.p-flow__item-num {
  color: #889E14;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 2.174vw;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin-bottom: 1.401vw;
}

.p-flow__item-ttl {
  border-bottom: 0.483vw solid #ECECEC;
  font-size: 4.348vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-bottom: 1.812vw;
  padding-bottom: 1.57vw;
}

.p-flow__item-txt {
  color: #090909;
  font-size: 3.382vw;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.86;
}

/* FAQ
-------------------------------------*/
.p-faq {
  padding-block: 14.9vw 0;
}

.p-faq .p-renovation__ttl {
  margin-bottom: 9.42vw;
}

.p-faq__items {
  display: flex;
  flex-direction: column;
  gap: 2.657vw 0;
  margin-inline: 2.899vw;
}

.p-faq__item {
  background-color: #F5F5F5;
  padding: 7.246vw 6.039vw 6.763vw;
}

.p-faq__item.is-open {
  padding-bottom: 7.246vw;
}

.p-faq__q {
  align-items: flex-start;
  gap: 0 2.657vw;
}

.p-faq__icon {
  font-size: 4.348vw;
  height: 7.246vw;
  width: 7.246vw;
}

.p-faq__q-txt {
  flex: 1;
  color: #090909;
  font-size: 4.348vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.56;
  margin-right: 0.966vw;
  position: relative;
  top: -1.449vw;
}

.p-faq__arrow {
  height: 7.246vw;
  width: 7.246vw;
}

.p-faq__a-inner {
  align-items: flex-start;
  gap: 0 2.657vw;
  padding-right: 10.87vw;
}

.p-faq__a-icon {
  flex-shrink: 0;
  padding-top: 5.556vw;
}

.p-faq__a-txt {
  color: #090909;
  font-size: 3.382vw;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.86;
  padding-top: 3.623vw;
}

/* CONTACT
-------------------------------------*/
.p-contact {
  padding-block: 14.9vw 15.58vw;
}

.p-contact .p-renovation__ttl {
  margin-bottom: 8.333vw;
}

.p-contact__contents {
  display: flex;
  flex-direction: column;
  padding-inline: 6.522vw;
}

.p-contact__body {
  display: contents;
}

.p-contact__ttl {
  font-size: 4.348vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.6666666667;
  margin-bottom: 5.072vw;
  order: 1;
}

.p-contact__img {
  aspect-ratio: 360 / 200;
  margin-bottom: 2.295vw;
  order: 2;
  overflow: hidden;
}

/* SPはカンプに合わせて横長にトリミング */
.p-contact__img img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-contact__txt {
  font-size: 3.382vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.8571428571;
  order: 3;
}

/* メールフォーム（既存 .form-Box の色だけこのページ用に変更）
-------------------------------------*/
#renovation .form-Box {
  background-color: #FFFFFF;
  padding-top: 0;
}

#renovation .form-Box #address01 {
  margin-bottom: 0;
}

#renovation .form-Box td.add-td .input_area {
  display: grid;
  gap: 3.382vw 0;
}

#renovation .form-Box td.zip-td .input_area {
  align-items: center;
  display: flex;
  gap: 0 2.415vw;
}

#renovation .form-Box #postal_code {
  width: 28.986vw;
}

#renovation .form-Box td.zip-td .subtxt {
  font-size: 2.899vw;
  letter-spacing: 0;
}

#renovation .form-Box .form-Box-inner {
  background-color: #F5F5F5;
}

/* 画像にした番号・英字見出し（お悩みの番号／RENOVATION.01〜03）
-------------------------------------*/
.p-worry__item-num {
  align-items: flex-start;
  display: flex;
  height: 4.348vw;
  justify-content: center;
  padding-top: 1.208vw;
}

.p-worry__item-num img {
  height: auto;
}

.p-worry__item:nth-child(1) .p-worry__item-num img { width: 3.043vw; }
.p-worry__item:nth-child(2) .p-worry__item-num img { width: 3.743vw; }
.p-worry__item:nth-child(3) .p-worry__item-num img { width: 3.73vw; }
.p-worry__item:nth-child(4) .p-worry__item-num img { width: 3.935vw; }

.p-category__en {
  align-items: flex-start;
  display: flex;
  height: 4.058vw;
}

.p-category__en img {
  height: auto;
  position: relative;
  top: 0.966vw;
}

.p-category.garage .p-category__en img { width: 27.71vw; }
.p-category.house .p-category__en img { width: 28.47vw; }
.p-category.mansion .p-category__en img { width: 28.46vw; }

}
