@charset "UTF-8";
/* =====================
  p-dismantling
  解体工事ページ専用スタイル
===================== */

.wrapper.p-dismantling {
  overflow: clip;
}
/* ---- パンくず ---- */
.p-dismantling__bread {
  padding: 0 0 min(1.5rem, 0.9375vw);
  font-size: min(1.4rem, 0.875vw);
  font-weight: 500;
  line-height: 1.8;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__bread {
    padding: 1.4rem 0 1rem;
    font-size: 1.1rem;
  }
}
.p-dismantling__bread a {
  color: #1D4A9E;
}
.p-dismantling__bread__sep {
  margin: 0 1em;
}
/* ---- MV ---- */
.p-dismantling__mv {
  margin-top: min(14rem, 8.75vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv {
    margin-top: 7.4rem;
  }
}
.p-dismantling__mv__visual {
  position: relative;
  grid-column: 3/21;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__visual {
    grid-column: 1/21;
  }
}
.p-dismantling__mv__visual > img {
  width: 100%;
  height: min(53rem, 33.125vw);
  object-fit: cover;
  object-position: center 70%;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__visual > img {
    width: calc(100% - 1.9rem);
    height: 38.9rem;
    margin-left: 1.9rem;
  }
}
.p-dismantling__mv__head {
  position: absolute;
  top: max(-13.4rem, -8.375vw);
  left: 0;
  z-index: 1;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__head {
    top: -6.6rem;
  }
}
.p-dismantling__mv__label {
  display: flex;
  gap: min(0.7rem, 0.4375vw);
  align-items: center;
  font-size: min(3.3rem, 2.0625vw);
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.001em;
  color: #2F2F2F;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__label {
    margin-bottom: 0.6rem;
    padding-left: 1.9rem;
    font-size: 1.4rem;
  }
}
.p-dismantling__mv__label img {
  width: min(1.5rem, 0.9375vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__label img {
    width: 1rem;
  }
}
.p-dismantling__mv__title {
  display: table;
  padding: 0 min(3.6rem, 2.25vw) 0 0;
  font-size: min(7.2rem, 4.5vw);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.047em;
  background: #fff;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__title {
    padding: 0.4rem 1.4rem 0.4rem 1.9rem;
    font-size: 3.6rem;
  }
}
.p-dismantling__mv__en {
  display: table;
  padding: min(1.5rem, 1vw) min(2.5rem, 1.5625vw) min(2.5rem, 1.75vw) 0;
  font-size: min(3.3rem, 2.0625vw);
  font-weight: 700;
  letter-spacing: 0.001em;
  color: #2F2F2F;
  background: #fff;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__en {
    padding: 0.5rem 1rem 1rem 1.9rem;
    font-size: 1.5rem;
  }
}
.p-dismantling__mv__body {
  position: relative;
  z-index: 0;
  display: grid;
  grid-template-columns: 1fr min(60.6rem, 33vw);
  grid-column: 3/19;
  gap: 4rem;
  margin-top: min(14rem, 8.75vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__body {
    display: flex;
    flex-direction: column;
    grid-column: 2/20;
    margin-top: 7.2rem;
  }
}
.p-dismantling__mv__text-area {
  padding-left: min(9.6rem, 6vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__text-area {
    margin-top: 3.2rem;
    padding: 0 1.9rem;
  }
}
.p-dismantling__mv__catch {
  font-size: min(6rem, 3.8vw);
  font-weight: 700;
  line-height: 1.77;
  letter-spacing: 0.047em;
  color: #272828;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__catch {
    font-size: 3.2rem;
    line-height: 1.7;
    letter-spacing: 0.02em;
  }
}
.p-dismantling__mv__catch strong {
  font-weight: 700;
  color: #1D4A9E;
}
.p-dismantling__mv__lead {
  margin-top: min(4rem, 2.5vw);
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-size: min(2.25rem, 1.4vw);
  font-weight: 600;
  line-height: 2.53;
  letter-spacing: 0.022em;
  color: #262626;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__lead {
    margin-top: 1.6rem;
    font-size: 1.7rem;
    line-height: 2.35;
  }
}
.p-dismantling__mv__highlight {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: min(0.8rem, 0.5vw);
  max-width: min(54.4rem, 34vw);
  margin-top: min(5.8rem, 3.625vw);
  width: 85%;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__highlight {
    width: 100%;
    max-width: none;
    gap: 0.5rem;
    margin-top: 2rem;
  }
}
.p-dismantling__mv__highlight__item:nth-child(3) {
  grid-column: span 2;
}
.p-dismantling__mv__highlight__item {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: min(13.4rem, 8.375vw);
  padding: min(0.8rem, 0.5vw) 1rem;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-size: min(3.1rem, 1.9375vw);
  font-weight: 600;
  line-height: 1.2;
  color: #3E71B7;
  text-align: center;
  background: #EAF3F8;
  border-radius: min(1.6rem, 1vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__highlight__item {
    min-height: 8.4rem;
    font-size: 1.8rem;
    border-radius: 0.8rem;
  }
}
.p-dismantling__mv__photo {
  align-self: end;
}
.p-dismantling__mv__photo img {
  width: 100%;
  border-radius: min(1.3rem, 0.8125vw);
  box-shadow: min(3.8rem, 2.375vw) min(5rem, 3.125vw) min(4.7rem, 2.9375vw) 0 rgba(0, 0, 0, 0.16);
  aspect-ratio: 1 / 1;
  object-fit: cover;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__photo {
    order: -1;
    align-self: center;
    width: 26.8rem;
  }
  .p-dismantling__mv__photo img {
    height: 27.9rem;
    border-radius: 0.65rem;
    box-shadow: 1.9rem 2.5rem 2.4rem 0 rgba(0, 0, 0, 0.16);
  }
}
.p-dismantling__mv__watermark {
  position: absolute;
  top: max(-41rem, -25.625vw);
  right: max(-97.7rem, -61.0625vw);
  z-index: -1;
  width: min(193.3rem, 120.8125vw);
  max-width: none;
  opacity: 0.12;
  pointer-events: none;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__mv__watermark {
    top: -20.7rem;
    right: auto;
    left: -2rem;
    width: 96.7rem;
  }
}
.p-dismantling__service__head {
  padding-bottom: min(1.6rem, 1vw);
  border-bottom: 1px solid #E0E0E0;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__service__head {
    padding-bottom: 1.6rem;
  }
}
/* ---- ブロック共通 (サイドナビ + コンテンツ) ---- */
.p-dismantling__service__body {
  display: grid;
  grid-template-columns: min(28.8rem, 18vw) 1fr;
  margin-top: min(5.6rem, 3.5vw);
}
.p-dismantling__service__contents {
  min-width: 0;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__service__body {
    display: block;
    margin-top: 4.8rem;
  }
}
.p-dismantling__block {
  scroll-margin-top: min(12rem, 7.5vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__block {
    scroll-margin-top: 7rem;
  }
}
.p-dismantling__block + .p-dismantling__block,
.p-dismantling__service__contents > [class*="wp-block-lazyblock-sanjin-dismantling-"] + [class*="wp-block-lazyblock-sanjin-dismantling-"] {
  margin-top: min(15rem, 9.375vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__block + .p-dismantling__block,
  .p-dismantling__service__contents > [class*="wp-block-lazyblock-sanjin-dismantling-"] + [class*="wp-block-lazyblock-sanjin-dismantling-"] {
    margin-top: 6.4rem;
  }
}
.p-dismantling__service {
  margin-top: min(37rem, 19.2708vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__service {
    margin-top: 6.4rem;
  }
}
.p-dismantling__price {
  margin-top: min(5.4rem, 3.375vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__price {
    margin-top: 2.8rem;
  }
}
.p-dismantling__block__nav {
  padding-right: min(4rem, 2.5vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__block__nav {
    display: none;
  }
}
.p-dismantling__block__nav__inner {
  position: sticky;
  top: 100px;
  display: flex;
  flex-direction: column;
  gap: min(0.9rem, 0.5625vw);
  align-items: flex-start;
}
.p-dismantling__block__nav a {
  padding: min(0.5rem, 0.3125vw) min(1.9rem, 1.1875vw);
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-size: min(2rem, 1.25vw);
  font-weight: 600;
  line-height: 1.8;
  letter-spacing: 0.015em;
  color: #262626;
  border-radius: min(0.6rem, 0.375vw);
}
.p-dismantling__block__nav a.is-active {
  background: #F4F4F4;
}
.p-dismantling__block__banner {
  position: relative;
}
.p-dismantling__block__banner > img {
  width: 100%;
  height: min(44.3rem, 27.6875vw);
  object-fit: cover;
  border-radius: min(1.3rem, 0.8125vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__block__banner {
    margin: 0 1.9rem;
  }
  .p-dismantling__block__banner > img {
    height: 21.5rem;
    border-radius: 0.65rem;
  }
}
.p-dismantling__block__head-area {
  position: relative;
  margin-top: max(-11.5rem, -7.1875vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__block__head-area {
    margin-top: -6.5rem;
    margin-left: 1.7rem;
  }
}
.p-dismantling__block__heading {
  display: table;
  max-width: 100%;
  padding: min(0.6rem, 0.375vw) min(2.5rem, 1.5625vw) min(0.6rem, 0.375vw) min(2.9rem, 1.8125vw);
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-size: min(4.8rem, 3vw);
  font-weight: 600;
  line-height: 1.6;
  background: #fff;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__block__heading {
    padding: 0.4rem 1.4rem 0.4rem 1.2rem;
    font-size: 2.85rem;
    line-height: 1.5;
  }
}
.p-dismantling__block__kicker {
  font-size: min(2.4rem, 1.5vw);
  font-weight: 500;
  line-height: 2;
  color: #262626;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__block__kicker {
    font-size: 1.5rem;
    line-height: 1.8;
  }
}
.p-dismantling__block__kicker span {
  display: inline-block;
  padding: 0 min(2.8rem, 1.75vw);
  background: #fff;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__block__kicker span {
    padding: 0 1.2rem;
  }
}
.p-dismantling__block__kicker span span {
  padding: 0;
}
/* ---- 高価買取のしくみ ---- */
.p-dismantling__shikumi {
  margin-top: min(7.4rem, 4.625vw);
  padding: min(7.2rem, 4.5vw) min(5.2rem, 3.25vw) min(9.4rem, 5.875vw);
  background: #F7F7F7;
  border-radius: 3px 3px 0 0;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__shikumi {
    margin-top: 3.2rem;
    padding: 2.4rem 1.6rem 3.2rem;
  }
}
.p-dismantling__shikumi__title {
  font-size: min(3.4rem, 2.125vw);
  font-weight: 700;
  letter-spacing: 0.047em;
  color: #272828;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__shikumi__title {
    font-size: 1.9rem;
  }
}
.p-dismantling__shikumi__title strong {
  font-weight: 700;
  color: #1D4A9E;
}
.p-dismantling__shikumi__sub {
  margin-top: min(0.4rem, 0.25vw);
  font-size: min(1.8rem, 1.125vw);
  font-weight: 500;
  line-height: 2.4;
  letter-spacing: 0.015em;
  color: #262626;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__shikumi__sub {
    margin-top: min(3.6rem, 2.25vw);
    font-size: 1.2rem;
    line-height: 1.9;
  }
}
.p-dismantling__shikumi__genka-title {
  margin-top: min(6rem, 3.75vw);
  margin-bottom: min(1.5rem, 0.9375vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__shikumi__genka-title {
    margin-top: min(12rem, 7.5vw);
  }
}
.p-dismantling__shikumi__note {
  margin-top: min(1.2rem, 0.75vw);
  font-size: min(1.8rem, 1.125vw);
  font-weight: 500;
  line-height: 2.1;
  letter-spacing: 0.015em;
  color: #262626;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__shikumi__note {
    font-size: 1.1rem;
    line-height: 1.8;
  }
}
/* 相殺の計算式 */
.p-dismantling__formula {
  display: flex;
  gap: min(1rem, 0.625vw);
  align-items: stretch;
  margin-top: min(4.7rem, 2.9375vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__formula {
    flex-direction: column;
    gap: 0.8rem;
  }
}
.p-dismantling__formula__group {
  position: relative;
  display: flex;
  flex: 1;
  gap: min(1rem, 0.625vw);
  align-items: center;
  padding: min(2.3rem, 1.4375vw);
  background: #DEDEDE;
  border-radius: 3px;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__formula__group {
    flex-direction: column;
    padding: 1.6rem;
  }
}
.p-dismantling__formula__group--result {
  flex: 0 0 min(34.6rem, 21.625vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__formula__group--result {
    flex: none;
  }
}
.p-dismantling__formula__item {
  flex: 1;
  width: 100%;
  padding: min(1rem, 0.625vw) min(1rem, 0.625vw) min(1.4rem, 0.875vw);
  text-align: center;
  background: #fff;
}
.p-dismantling__formula__item.radius {
  border-radius: min(1.4rem, 0.875vw);
}
.p-dismantling__formula__item--result {
  border: min(0.4rem, 0.25vw) solid #3E71B7;
}
.p-dismantling__formula__item__label {
  padding-bottom: min(0.6rem, 0.375vw);
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-size: min(2.3rem, 1.4375vw);
  font-weight: 600;
  border-bottom: 1px solid #F0F0F0;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__formula__item__label {
    font-size: 1.4rem;
  }
}
.p-dismantling__formula__item--result .p-dismantling__formula__item__label {
  color: #3E71B7;
}
.p-dismantling__formula__item__value {
  margin-top: min(0.4rem, 0.25vw);
  font-family: Arial, sans-serif;
  font-size: min(4rem, 2.5vw);
  font-weight: 700;
  line-height: 1.2;
  color: #2F2F2F;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__formula__item__value {
    font-size: 2.4rem;
  }
}
.p-dismantling__formula__item__value span {
  font-size: min(2.2rem, 1.375vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__formula__item__value span {
    font-size: 1.4rem;
  }
}
.p-dismantling__formula__item--result .p-dismantling__formula__item__value {
  color: #3E71B7;
}
.p-dismantling__formula__op {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: min(6.1rem, 3.8125vw);
  height: min(6.1rem, 3.8125vw);
  font-size: min(3.2rem, 2vw);
  font-weight: 700;
  color: #fff;
  background: #2F2F2F;
  border-radius: 50%;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__formula__op {
    width: 3.2rem;
    height: 3.2rem;
    font-size: 1.8rem;
  }
}
.p-dismantling__formula__op--eq {
  align-self: center;
  margin: 0 max(-2rem, -1.25vw);
  z-index: 1;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__formula__op--eq {
    margin: -2rem 0;
  }
}
/* 他社との比較表 */
.p-dismantling__compare {
  width: min(105.6rem, 66vw);
  max-width: 100%;
  margin: min(4.8rem, 3vw) auto 0;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__compare {
    width: 100%;
    margin-top: 4rem;
    overflow-x: auto;
  }
}
.p-dismantling__compare__img {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__compare__img {
    width: 52rem;
    max-width: none;
  }
}
/* ---- ご依頼の流れ ---- */
.p-dismantling__flow {
  margin-top: min(8.4rem, 5.25vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__flow {
    margin-top: 3.2rem;
  }
}
.p-dismantling__flow__item {
  position: relative;
  display: grid;
  grid-template-columns: min(48rem, 26vw) 1fr;
  align-items: center;
  min-height: min(12.5rem, 7.8125vw);
  padding: min(1.5rem, 0.9375vw) 0;
  background: #F7F7F7;
  border-radius: 3px;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__flow__item {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 1.2rem 1.9rem 1.9rem;
  }
}
.p-dismantling__flow__item + .p-dismantling__flow__item {
  margin-top: min(2.1rem, 1.3125vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__flow__item + .p-dismantling__flow__item {
    margin-top: 2.6rem;
  }
}
.p-dismantling__flow__item + .p-dismantling__flow__item::before {
  position: absolute;
  top: max(-2.5rem, -1.5625vw);
  left: 50%;
  content: "";
  border-color: #2F2F2F transparent transparent;
  border-style: solid;
  border-width: min(2.8rem, 1.75vw) min(1.5rem, 0.9375vw) 0;
  transform: translateX(-50%);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__flow__item + .p-dismantling__flow__item::before {
    top: -1.8rem;
    border-color: #262626 transparent transparent;
    border-width: 0.9rem 0.7rem 0;
  }
}
.p-dismantling__flow__head {
  display: flex;
  gap: min(2.1rem, 1.3125vw);
  align-items: center;
  padding-left: min(2.4rem, 1.5vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__flow__head {
    gap: 1rem;
    padding: 0 0 1rem;
  }
}
.p-dismantling__flow__num {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: min(4.4rem, 2.75vw);
  height: min(4.4rem, 2.75vw);
  font-size: min(2.4rem, 1.5vw);
  font-weight: 700;
  color: #fff;
  background: #2F2F2F;
  border-radius: 50%;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__flow__num {
    width: 2.9rem;
    height: 2.9rem;
    font-size: 1.25rem;
  }
}
.p-dismantling__flow__title {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-size: min(2.4rem, 1.5vw);
  font-weight: 600;
  line-height: 1.5;
}
.p-dismantling__flow__title strong {
  color: #1D4A9E;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__flow__title {
    font-size: 1.5rem;
  }
}
.p-dismantling__flow__badge {
  flex-shrink: 0;
  padding: 0.1em 1.2em;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-size: min(1.6rem, 1vw);
  font-weight: 600;
  color: #1D4A9E;
  background: #fff;
  border: 2px solid #1D4A9E;
  border-radius: 4px;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__flow__badge {
    padding: 0.1em 0.8em;
    font-size: 1.1rem;
  }
}
.p-dismantling__flow__body {
  align-self: stretch;
  display: flex;
  align-items: center;
  padding: min(0.5rem, 0.3125vw) min(3rem, 1.875vw) min(0.5rem, 0.3125vw) min(4.6rem, 2.875vw);
  border-left: 1px solid #2F2F2F;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__flow__body {
    padding: 1rem 0 0;
    border-top: 1px solid #D9D9D9;
    border-left: none;
  }
}
.p-dismantling__flow__text {
  font-size: min(2rem, 1.25vw);
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.015em;
  color: #262626;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__flow__text {
    font-size: 1.2rem;
    line-height: 2;
  }
}
.p-dismantling__flow__text strong {
  font-weight: 700;
  color: #1D4A9E;
}
/* ---- FAQ ---- */
.p-dismantling__faq {
  margin-top: min(14rem, 8.75vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__faq {
    margin-top: 6.4rem;
  }
}
.p-dismantling__faq__cate {
  margin-top: min(7.3rem, 4.5625vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__faq__cate {
    margin-top: 4rem;
  }
}
.p-dismantling__faq__cate__title {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-size: min(2.8rem, 1.75vw);
  font-weight: 600;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__faq__cate__title {
    font-size: 1.7rem;
  }
}
.p-dismantling__faq__item {
  margin-top: min(1.6rem, 1vw);
  border-radius: 3px;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__faq__item {
    margin-top: 1.2rem;
  }
}
.p-dismantling__faq__item[open] {
  background: #F7F7F7;
}
.p-dismantling__faq__item summary {
  position: relative;
  display: flex;
  gap: min(1.8rem, 1.125vw);
  align-items: center;
  min-height: min(9.3rem, 5.8125vw);
  padding: min(1rem, 0.625vw) min(9rem, 5.625vw) min(1rem, 0.625vw) min(2.2rem, 1.375vw);
  cursor: pointer;
  list-style: none;
  background: #EAF3F8;
  border-radius: 3px;
}
.p-dismantling__faq__item summary::-webkit-details-marker {
  display: none;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__faq__item summary {
    gap: 1rem;
    min-height: 0;
    padding: 1.4rem 4rem 1.4rem 1.4rem;
  }
}
.p-dismantling__faq__item summary::after {
  position: absolute;
  top: 0;
  right: min(3.2rem, 2vw);
  bottom: 0;
  width: min(2.8rem, 1.75vw);
  height: min(2.8rem, 1.75vw);
  margin: auto;
  content: "";
  background: linear-gradient(#1D4A9E, #1D4A9E), linear-gradient(#1D4A9E, #1D4A9E);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 0.2rem, 0.2rem 100%;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__faq__item summary::after {
    right: 1.4rem;
    width: 1.6rem;
    height: 1.6rem;
  }
}
.p-dismantling__faq__item[open] summary::after {
  background-size: 100% 0.2rem, 0.2rem 0;
}
.p-dismantling__faq__item__q {
  flex-shrink: 0;
  font-size: min(3.4rem, 2.125vw);
  font-weight: 700;
  color: #1D4A9E;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__faq__item__q {
    font-size: 1.8rem;
  }
}
.p-dismantling__faq__item summary span:last-child {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-size: min(2rem, 1.25vw);
  font-weight: 600;
  letter-spacing: 0.015em;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__faq__item summary span:last-child {
    font-size: 1.3rem;
  }
}
.p-dismantling__faq__item__a {
  display: flex;
  gap: min(1.8rem, 1.125vw);
  align-items: flex-start;
  padding: min(2rem, 1.25vw) min(4rem, 2.5vw) min(3rem, 1.875vw) min(2.2rem, 1.375vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__faq__item__a {
    gap: 1rem;
    padding: 1.4rem 1.4rem 1.8rem;
  }
}
.p-dismantling__faq__item__a-mark {
  flex-shrink: 0;
  font-size: min(3.4rem, 2.125vw);
  font-weight: 700;
  color: #262626;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__faq__item__a-mark {
    font-size: 1.8rem;
  }
}
.p-dismantling__faq__item__a p {
  padding-top: 0.4em;
  font-size: min(2rem, 1.25vw);
  font-weight: 500;
  line-height: 2.15;
  letter-spacing: 0.015em;
  color: #262626;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__faq__item__a p {
    font-size: 1.2rem;
    line-height: 1.9;
  }
}
/* ---- 対応エリア ---- */
.p-dismantling__area {
  margin-top: min(9.7rem, 6.0625vw);
  padding: min(6.5rem, 4.0625vw) 0 min(10.4rem, 6.5vw);
  text-align: center;
  background: #F7F7F7;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__area {
    margin-top: 6.4rem;
    padding: 4rem 0 4.8rem;
  }
}
.p-dismantling__area__title {
  font-size: min(4rem, 2.5vw);
  font-weight: 700;
  letter-spacing: 0.047em;
  color: #272828;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__area__title {
    font-size: 2.4rem;
  }
}
.p-dismantling__area__pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: min(7rem, 4.375vw);
  margin-top: min(3.7rem, 2.3125vw);
  padding: min(1rem, 0.625vw) min(4.3rem, 2.6875vw);
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-size: min(2.4rem, 1.5vw);
  font-weight: 600;
  letter-spacing: 0.015em;
  background: #fff;
  border-radius: min(3.5rem, 2.1875vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__area__pill {
    min-height: 0;
    margin-top: 2rem;
    padding: 1rem 1.8rem;
    font-size: 1.2rem;
    border-radius: 2.4rem;
  }
}
.p-dismantling__area__pill strong {
  font-weight: 600;
  color: #1D4A9E;
}
.p-dismantling__area__map {
  margin-top: min(5.3rem, 3.3125vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__area__map {
    margin-top: 2.4rem;
  }
}
.p-dismantling__area__map img {
  width: 100%;
  max-width: min(115.2rem, 72vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__area__map img {
    max-width: 100%;
  }
}
/* ---- サービス内容リスト ---- */
.p-dismantling__service-list {
  margin-top: min(5.4rem, 3.375vw);
  border-top: 1px solid #EDEDED;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__service-list {
    margin-top: 2.8rem;
    padding: 0 1.9rem;
    border-top: none;
  }
}
.p-dismantling__service-list__item {
  display: grid;
  grid-template-columns: min(35.3rem, 18.3854vw) 1fr;
  gap: min(3.7rem, 2.3125vw);
  padding: min(2.9rem, 1.8125vw) 0;
  border-bottom: 1px solid #EDEDED;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__service-list__item {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    padding: 2.3rem 0;
    border-bottom: none;
  }
}
.p-dismantling__service-list__img {
  overflow: hidden;
  border-radius: 3px;
}
.p-dismantling__service-list__img img {
  width: 100%;
  object-fit: cover;
}
.p-dismantling__service-list__title {
  font-size: min(3.4rem, 2.125vw);
  font-weight: 700;
  line-height: 2.03;
  letter-spacing: 0.047em;
  color: #272828;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__service-list__title {
    font-size: 1.6rem;
  }
}
.p-dismantling__service-list__tag {
  display: block;
  margin-top: min(0.4rem, 0.2083vw);
  font-size: min(1.6rem, 0.8333vw);
  font-weight: 300;
  line-height: 2.06;
  color: #A0A0A0;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__service-list__tag {
    font-size: 1.2rem;
  }
}
.p-dismantling__service-list__text {
  margin-top: min(1.8rem, 1.125vw);
  font-size: min(1.8rem, 1.125vw);
  line-height: 1.83;
  color: #2F2F2F;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__service-list__text {
    margin-top: 0.4rem;
    font-size: 1.2rem;
    line-height: 1.75;
  }
}
/* ---- FOR THE NEXT ---- */
.p-dismantling__next {
  margin-top: min(19rem, 11.875vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__next {
    margin-top: 6.4rem;
  }
}
.p-dismantling__next__band {
  position: relative;
  height: min(40.1rem, 25.0625vw);
  overflow: hidden;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__next__band {
    height: 18rem;
  }
}
.p-dismantling__next__band__bg {
  position: absolute;
  inset: 0;
}
.p-dismantling__next__band__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-dismantling__next__band__bg::after {
  position: absolute;
  inset: 0;
  content: "";
  background: rgba(255, 255, 255, 0.74);
}
.p-dismantling__next__display {
  position: absolute;
  top: max(-23.7rem, -14.8125vw);
  left: min(24rem, 15vw);
  font-size: min(18.3rem, 11.4375vw);
  font-weight: 700;
  line-height: 1.58;
  letter-spacing: 0.001em;
  color: #fff;
  white-space: nowrap;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__next__display {
    top: -10rem;
    left: 2rem;
    font-size: 7.6rem;
  }
}
.p-dismantling__next__title {
  position: absolute;
  top: min(16.2rem, 10.125vw);
  right: 0;
  left: 0;
  font-size: min(5.6rem, 3.5vw);
  font-weight: 700;
  letter-spacing: 0.047em;
  text-align: center;
  color: #272828;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__next__title {
    top: 7.6rem;
    font-size: 2.4rem;
  }
}
.p-dismantling__next__body {
  padding: 0 0 min(8.2rem, 5.125vw);
  background: #EAF3F8;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__next__body {
    padding-bottom: 4.8rem;
  }
}
.p-dismantling__next__vertical {
  display: table;
  margin: 0 auto;
  padding-top: 0;
  transform: translateY(-28%);
  font-size: min(2.4rem, 1.25vw);
  font-weight: 700;
  line-height: 2.4;
  color: #262626;
  writing-mode: vertical-rl;
  position: relative;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__next__vertical {
    margin-top: 3rem;
    transform: translateY(0);
    font-size: min(7.2rem, 3.75vw);
  }
}
.p-dismantling__next__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: min(7.4rem, 4.625vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__next__list {
    grid-template-columns: 1fr;
    gap: 3.2rem;
    margin-top: 0;
    padding-top: 3.2rem;
  }
}
.p-dismantling__next__item {
  display: block;
}
.p-dismantling__next__item__img img {
  width: 100%;
  height: min(38.6rem, 24.125vw);
  object-fit: cover;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__next__item__img img {
    height: 20rem;
  }
}
.p-dismantling__next__item__tag {
  position: relative;
  display: inline-block;
  margin: max(-2.7rem, -1.6875vw) 0 0 min(2.6rem, 1.625vw);
  padding: min(0.2rem, 0.125vw) min(1.5rem, 0.9375vw);
  font-size: min(3.4rem, 2.125vw);
  font-weight: 700;
  line-height: 1.6;
  color: #262626;
  background: #fff;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__next__item__tag {
    margin: -1.8rem 0 0 1.4rem;
    font-size: 1.8rem;
  }
}
.p-dismantling__next__item__text {
  margin-top: min(2.1rem, 1.3125vw);
  font-size: min(1.6rem, 1vw);
  font-weight: 500;
  line-height: 2.06;
  color: #2F2F2F;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__next__item__text {
    margin-top: 1.2rem;
    font-size: 1.3rem;
  }
}
.p-dismantling__next__item__arrow {
  display: block;
  width: min(5.4rem, 3.375vw);
  margin-top: min(2.4rem, 1.5vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__next__item__arrow {
    width: 3.2rem;
    margin-top: 1.4rem;
  }
}

/* =====================
  以下、解体工事ページ固有セクション
===================== */

/* ---- REASON ---- */
.p-dismantling__reason {
  margin-top: min(33.5rem, 17.4479vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason {
    margin-top: 6.4rem;
  }
}
.p-dismantling__reason__head {
  position: relative;
  z-index: 1;
  width: min(153.6rem, 80vw);
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__head {
    width: calc(100% - 3rem);
  }
}
.p-dismantling__reason__band {
  position: relative;
  width: min(153.6rem, 80vw);
  margin: min(4rem, 2.0833vw) auto 0;
  margin-top: -36px;
  padding: min(5rem, 2.6042vw) 0 min(7.2rem, 3.75vw);
  padding-top: 80px;
  background: #F7F7F7;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__band {
    width: calc(100% - 3rem);
    margin-top: 2rem;
    padding: 2.4rem 0 3rem;
  }
}
.p-dismantling__reason__panel {
  position: relative;
  width: min(134.4rem, 70vw);
  margin: min(4rem, 2.0833vw) auto 0;
  padding: min(6rem, 3.125vw) min(9.6rem, 5vw) min(7rem, 3.6458vw);
  background: #fff;
  border-radius: min(0.3rem, 0.1563vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__panel {
    width: calc(100% - 3rem);
    padding: 3rem 2rem;
  }
}
.p-dismantling__reason__en {
  color: #1D4A9E;
  font-family: "Outfit", sans-serif;
  font-size: min(2.4rem, 1.25vw);
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__en {
    font-size: 1.3rem;
  }
}
.p-dismantling__reason__title {
  margin-top: min(0.6rem, 0.3125vw);
  font-size: min(5.6rem, 2.9167vw);
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__title {
    font-size: 3.3rem;
    line-height: 1.35;
  }
}
.p-dismantling__reason__deco {
  width: min(55.8rem, 34.875vw);
  margin: min(1.5rem, 0.9375vw) auto 0;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__deco {
    width: 24rem;
  }
}
.p-dismantling__reason__note {
  max-width: calc(min(134.4rem, 70vw) - min(46rem, 23.9583vw));
  margin: 0 auto 0 min(9.6rem, 5vw);
  font-size: min(2.8rem, 1.4583vw);
  font-weight: 600;
  line-height: 1.9;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__note {
    max-width: none;
    margin: 0 2rem;
    font-size: 1.5rem;
    line-height: 2;
  }
}
.p-dismantling__reason__note span {
  display: inline;
  padding: min(1.6rem, 0.8333vw) min(1.4rem, 0.875vw);
  background: #fff;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.p-dismantling__reason__illust {
  position: absolute;
  top: 6.5px;
  right: 0;
  width: min(49.3rem, 25.6771vw);
  max-width: 320px;
  transform: translateY(-100%) translateX(36%);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__illust {
    position: absolute;
    width: 50%;
    top: 6.5px;
    transform: translateY(-100%) translateX(28%);
  }
}
.p-dismantling__reason__list {
  margin-top: min(6rem, 3.125vw);
}
.p-dismantling__reason__item {
  position: relative;
  display: grid;
  grid-template-columns: min(52.2rem, 27.1875vw) 1fr;
  gap: min(3.8rem, 1.9792vw);
  align-items: start;
  padding: min(4rem, 2.0833vw) 0;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__item {
    grid-template-columns: 1fr;
    gap: 1.6rem;
    padding: 2rem 0;
  }
}
.p-dismantling__reason__item--em {
  display: grid;
  grid-template-columns: min(41.3rem, 21.5104vw) 1fr;
  gap: min(4rem, 2.0833vw);
  margin-bottom: min(3rem, 1.5625vw);
  padding: min(7rem, 3.6458vw) min(4rem, 2.0833vw) min(4rem, 2.0833vw) min(8rem, 4.1667vw);
  background: #EAF3F8;
  border-radius: min(1.3rem, 0.6771vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__item--em {
    grid-template-columns: 1fr;
    padding: 5rem 1.6rem 2rem;
  }
}
.p-dismantling__reason__num {
  grid-column: 2;
  grid-row: 1;
  align-self: start;
  justify-self: start;
  color: #F0F0F0;
  font-family: "Outfit", sans-serif;
  font-size: min(10.8rem, 5.625vw);
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__num {
    font-size: 5rem;
    grid-column: 1;
  }
}
.p-dismantling__reason__item--em .p-dismantling__reason__num {
  color: #fff;
}
.p-dismantling__reason__badge {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-30%, -30%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(17.7rem, 9.2188vw);
  height: min(17.7rem, 9.2188vw);
  background: #fff;
  border: min(0.6rem, 0.3125vw) solid #1D4A9E;
  border-radius: 50%;
  color: #1D4A9E;
  font-size: min(2.9rem, 1.5104vw);
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__badge {
    width: 8rem;
    height: 8rem;
    top: 0rem;
    left: 0rem;
    font-size: 1.2rem;
  }
}
.p-dismantling__reason__item__text-area {
  grid-column: 2;
  grid-row: 1;
  padding-top: min(7.695rem, 4.007799vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__item__text-area {
    grid-column: 1;
    grid-row: auto;
    padding-top: 0;
  }
}
.p-dismantling__reason__item__title {
  font-size: min(3.6rem, 1.875vw);
  font-weight: 600;
  line-height: 1.5;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__item__title {
    font-size: 2rem;
  }
  .p-dismantling__reason__item__title br {
    display: none;
  }
}
.p-dismantling__reason__item__text {
  margin-top: min(2rem, 1.0417vw);
  font-size: min(1.8rem, 0.9375vw);
  font-weight: 500;
  line-height: 2.389;
}
.p-dismantling__reason__item__text strong {
  color: #3E71B7;
  font-weight: 700;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__item__text {
    font-size: 1.4rem;
  }
  .p-dismantling__reason__item__text br {
    display: none;
  }
}
.p-dismantling__reason__item__img {
  grid-column: 1;
  grid-row: 1;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__item__img {
    grid-row: auto;
  }
}
.p-dismantling__reason__item__img img {
  width: 100%;
  border-radius: min(0.6rem, 0.3125vw);
}
.p-dismantling__reason__item__deco {
  grid-column: 1;
  grid-row: 1;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  align-self: end;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__item__deco {
    grid-column: 1;
    grid-row: auto;
  }
}
.p-dismantling__reason__item__deco img {
  width: min(41.3rem, 21.5104vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__reason__item__deco img {
    width: 20rem;
  }
}

/* ---- 費用: 見出し・4つのアプローチ ---- */
.p-dismantling__approach-band {
  margin-top: min(6rem, 3.125vw);
  padding: min(5.1rem, 2.6563vw) min(9.6rem, 5vw) min(7.5rem, 3.9063vw);
  background: #F7F7F7;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__approach-band {
    margin-top: 3rem;
    padding: 3rem 1.9rem;
  }
}
.p-dismantling__price__sub-heading {
  font-size: min(4rem, 2.0833vw);
  font-weight: 700;
  line-height: 1.6;
  color: #1D4A9E;
}
.p-dismantling__price__sub-heading span {
  color: #272828;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__price__sub-heading {
    font-size: 2.1rem;
  }
}
.p-dismantling__price__sub-lead {
  margin-top: min(4rem, 2.0833vw);
  margin-bottom: min(4rem, 2.0833vw);
  font-size: min(1.8rem, 0.9375vw);
  font-weight: 500;
  line-height: 1.9;
}
.p-dismantling__price__sub-lead strong {
  font-weight: 700;
  font-size: min(2.2rem, 1.1458vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__price__sub-lead {
    margin-top: min(12rem, 6.2499vw);
    margin-bottom: min(12rem, 6.2499vw);
    font-size: 1.4rem;
  }
  .p-dismantling__price__sub-lead strong {
    font-size: 1.7rem;
  }
  .p-dismantling__price__sub-lead br {
    display: none;
  }
}
.p-dismantling__approach {
  margin-top: 0;
  display: grid;
  gap: min(2.4rem, 1.25vw);
}
.p-dismantling__approach__item {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  margin: 0 auto;
  width: min(105.9rem, 55.1563vw);
  min-height: min(18.5rem, 9.6354vw);
  padding: min(3rem, 1.5625vw) min(4rem, 2.0833vw);
  background: #fff;
  border-radius: min(1.3rem, 0.6771vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__approach__item {
    width: 100%;
    padding: 1.6rem;
  }
}
.p-dismantling__approach__num {
  display: none;
}
.p-dismantling__approach__title {
  font-size: min(3.4rem, 1.7708vw);
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__approach__title {
    font-size: 1.8rem;
  }
}
.p-dismantling__approach__text {
  margin-top: min(1rem, 0.5208vw);
  font-size: min(1.8rem, 0.9375vw);
  line-height: 1.9;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__approach__text {
    font-size: 1.4rem;
  }
}

/* ---- 損かもセクション ---- */
.p-dismantling__sonkamo {
  margin-top: min(8rem, 4.1667vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__sonkamo {
    margin-top: min(24rem, 12.5001vw);
  }
}
.p-dismantling__sonkamo__band {
  margin-top: min(-5rem, -2.6042vw);
  padding-top: min(7rem, 3.64581vw);
  padding-right: min(5.2rem, 2.7083vw);
  padding-bottom: min(5rem, 2.6042vw);
  padding-left: min(5.2rem, 2.7083vw);
  background: #F7F7F7;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__sonkamo__band {
    padding: 2.4rem 1.6rem;
  }
}
.p-dismantling__sonkamo__head {
  position: relative;
  padding: min(9rem, 4.6875vw) min(4rem, 2.0833vw);
  background: #EAF3F8;
  border-radius: min(1.3rem, 0.6771vw);
}
.p-dismantling__sonkamo__arrow {
  display: block;
  width: min(7.6rem, 3.9583vw);
  margin: min(3.7rem, 1.9271vw) auto 0;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__sonkamo__arrow {
    width: 4.4rem;
    margin-top: 1.6rem;
  }
}
.p-dismantling__sonkamo__title {
  font-size: min(4rem, 2.0833vw);
  font-weight: 700;
  line-height: 1.6;
  color: #272828;
}
.p-dismantling__sonkamo__title span {
  color: #1D4A9E;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__sonkamo__title {
    font-size: 2rem;
  }
}
.p-dismantling__sonkamo__text {
  margin-top: min(1.6rem, 0.8333vw);
  width: calc(100% - min(32rem, 16.6667vw));
  font-size: min(1.8rem, 0.9375vw);
  font-weight: 500;
  line-height: 1.9;
}
.p-dismantling__sonkamo__text strong {
  font-weight: 700;
  font-size: min(2.2rem, 1.1458vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__sonkamo__text {
    width: 100%;
    font-size: 1.4rem;
  }
  .p-dismantling__sonkamo__text strong {
    font-size: 1.7rem;
  }
  .p-dismantling__sonkamo__text br {
    display: none;
  }
}
.p-dismantling__sonkamo__illust {
  position: absolute;
  right: min(3rem, 1.5625vw);
  bottom: 50%;
  transform: translateY(50%);
  width: min(35.5rem, 18.4896vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__sonkamo__illust {
    position: static;
    display: block;
    width: 55%;
    margin: 1.5rem auto 0;
    transform: none;
  }
}
.p-dismantling__sonkamo__sub-title {
  margin: min(7rem, 3.6458vw) 0 0;
  font-size: min(4rem, 2.0833vw);
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__sonkamo__sub-title {
    font-size: 2rem;
  }
}
.p-dismantling__sonkamo__deco {
  width: min(55.8rem, 34.875vw);
  margin: min(1.5rem, 0.9375vw) auto min(3rem, 1.5625vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__sonkamo__deco {
    width: 24rem;
    margin-bottom: 1.6rem;
  }
}

/* ---- 追加費用が発生しやすいケース ---- */
.p-dismantling__addcost {
  margin-top: min(8rem, 4.1667vw);
  padding: min(4.6rem, 2.3958vw) min(5rem, 2.6042vw);
  background: #fff;
  border-radius: min(1.3rem, 0.6771vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__addcost {
    padding: 2rem 1.6rem;
  }
}
.p-dismantling__addcost__title {
  padding-bottom: min(2.2rem, 1.1458vw);
  border-bottom: 1px solid #C3C3C3;
  font-size: min(2.6rem, 1.3542vw);
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__addcost__title {
    padding-bottom: 1.4rem;
    font-size: 1.8rem;
  }
}
.p-dismantling__addcost__list {
  margin-top: min(2.6rem, 1.3542vw);
  display: grid;
  gap: min(2rem, 1.0417vw);
}
.p-dismantling__addcost__item {
  display: flex;
  align-items: center;
  gap: min(3.6rem, 1.875vw);
  padding: min(2.2rem, 1.1458vw) min(3.4rem, 1.7708vw);
  background: #F7F7F7;
  border-radius: min(0.3rem, 0.1563vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__addcost__item {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.6rem;
  }
}
.p-dismantling__addcost__item__head {
  display: flex;
  align-items: center;
  gap: min(2rem, 1.0417vw);
  flex: 0 0 min(19rem, 9.8958vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__addcost__item__head {
    flex: none;
  }
}
.p-dismantling__addcost__item__icon {
  flex-shrink: 0;
  width: min(2.9rem, 1.5104vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__addcost__item__icon {
    width: 2.4rem;
  }
}
.p-dismantling__addcost__divider {
  flex-shrink: 0;
  display: block;
  width: 1px;
  height: min(9.4rem, 4.8958vw);
  background: #2F2F2F;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__addcost__divider {
    display: none;
  }
}
.p-dismantling__addcost__label {
  color: #262626;
  font-size: min(2.4rem, 1.25vw);
  font-weight: 600;
  line-height: 1.5;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__addcost__label {
    font-size: 1.6rem;
  }
  .p-dismantling__addcost__label br {
    display: none;
  }
}
.p-dismantling__addcost__text {
  flex: 1;
  font-size: min(2rem, 1.0417vw);
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__addcost__text {
    font-size: 1.4rem;
  }
  .p-dismantling__addcost__text br {
    display: none;
  }
}

/* ---- 見積チャット ---- */
.p-dismantling__estimate {
  margin-top: min(10rem, 5.2083vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__estimate {
    margin-top: min(30rem, 15.6249vw);
  }
}
.p-dismantling__estimate__lead {
  display: flex;
  gap: min(3rem, 1.875vw);
  align-items: center;
  justify-content: center;
  font-size: min(2.4rem, 1.25vw);
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__estimate__lead {
    gap: 0.6rem;
    font-size: 1.7rem;
  }
}
.p-dismantling__estimate__lead strong {
  color: #1D4A9E;
}
.p-clearance__price__confirm__slash {
  font-size: min(4rem, 2.5vw);
  font-weight: 500;
  color: #2F2F2F;
}
@media screen and (max-width: 768.9px) {
  .p-clearance__price__confirm__slash {
    font-size: 2rem;
  }
}
.p-dismantling__estimate__banner {
  display: block;
  width: 100%;
  margin-top: min(3rem, 1.5625vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__estimate__banner {
    margin-top: min(9rem, 4.6875vw);
  }
}
.p-dismantling__estimate__form {
  background: #EAF3F8;
  padding: min(3rem, 1.5625vw) min(2rem, 1.0417vw) min(1rem, 0.5208vw);
}

/* ---- 事例カード ---- */
.p-dismantling__case {
  margin-top: min(5rem, 2.6042vw);
  padding: min(8.5rem, 4.4271vw) min(9.3rem, 4.8438vw);
  background: #F7F7F7;
}
/* PCはトラックを透過（従来の縦積み）。カルーセルUIはSPのみ */
.p-dismantling__case__track {
  display: contents;
}
.p-dismantling__case__nav,
.p-dismantling__case__progress {
  display: none;
}
.p-dismantling__case__item {
  display: grid;
  grid-template-columns: min(51.5rem, 26.8229vw) 1fr;
  margin-bottom: min(2.9rem, 1.5104vw);
  background: #fff;
  border-radius: 0 min(1.3rem, 0.6771vw) min(1.3rem, 0.6771vw) 0;
  overflow: hidden;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__case {
    position: relative;
    margin: 2.8rem calc(50% - 50vw) 0;
    padding: 2rem 0;
    background: #F7F7F7;
  }
  .p-dismantling__case__track {
    display: flex;
    gap: 1.25rem;
    padding: 0 3.75rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .p-dismantling__case__track::-webkit-scrollbar {
    display: none;
  }
  .p-dismantling__case__item {
    display: block;
    flex: 0 0 30rem;
    margin-bottom: 0;
    overflow: hidden;
    border-radius: 0.6rem;
    scroll-snap-align: center;
  }
  .p-dismantling__case__nav {
    position: absolute;
    top: 16rem;
    z-index: 1;
    display: block;
    width: 3.1rem;
    height: 9.1rem;
    background: #888888;
    border: none;
    border-radius: 0.4rem;
    cursor: pointer;
  }
  .p-dismantling__case__nav::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1rem;
    height: 1rem;
    content: "";
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
  }
  .p-dismantling__case__nav--prev {
    left: 0;
    border-radius: 0 0.4rem 0.4rem 0;
  }
  .p-dismantling__case__nav--prev::before {
    transform: translate(-30%, -50%) rotate(-135deg);
  }
  .p-dismantling__case__nav--next {
    right: 0;
    border-radius: 0.4rem 0 0 0.4rem;
  }
  .p-dismantling__case__nav--next::before {
    transform: translate(-70%, -50%) rotate(45deg);
  }
  .p-dismantling__case__nav:disabled {
    opacity: 0.35;
  }
  .p-dismantling__case__progress {
    position: relative;
    display: block;
    width: 30rem;
    height: 0.3rem;
    margin: 2rem auto 0;
    overflow: hidden;
    background: #D9D9D9;
    border-radius: 0.15rem;
  }
  .p-dismantling__case__progress span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 50%;
    height: 100%;
    background: #262626;
  }
  .p-dismantling__case__note {
    padding: 0 3.75rem;
  }
  .p-dismantling__case__more {
    padding: 0 3.75rem;
  }
  .p-dismantling__case__photo img {
    height: 17.5rem;
  }
  .p-dismantling__case__body {
    padding: 1.3rem 1.9rem 2.4rem;
  }
}
.p-dismantling__case__photo {
  position: relative;
}
.p-dismantling__case__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-dismantling__case__tag {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  padding: min(0.4rem, 0.2083vw) min(1.6rem, 0.8333vw);
  background: #272828;
  color: #fff;
  font-size: min(1.6rem, 0.8333vw);
  font-weight: 300;
}
.p-dismantling__case__body {
  padding: min(2.4rem, 1.25vw) min(3.4rem, 1.7708vw) min(3rem, 1.5625vw);
}
.p-dismantling__case__cate {
  font-size: min(3.2rem, 1.6667vw);
  font-weight: 600;
  line-height: 1.6;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__case__cate {
    font-size: 1.9rem;
  }
}
.p-dismantling__case__title {
  font-size: min(2.4rem, 1.25vw);
  font-weight: 600;
  line-height: 1.6;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__case__title {
    font-size: 1.5rem;
  }
}
.p-dismantling__case__spec {
  margin-top: min(1.6rem, 0.8333vw);
}
.p-dismantling__case__spec__row {
  display: grid;
  grid-template-columns: min(15rem, 7.8125vw) 1fr;
  gap: min(1rem, 0.5208vw);
  align-items: center;
  padding: min(1rem, 0.5208vw) 0;
  border-top: 1px solid #D9D9D9;
  font-size: min(1.8rem, 0.9375vw);
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__case__spec__row {
    grid-template-columns: 10rem 1fr;
    padding-top: min(3rem, 1.5624vw);
    padding-bottom: min(3rem, 1.5624vw);
    font-size: 1.4rem;
  }
}
.p-dismantling__case__spec__label {
  font-weight: 600;
}
.p-dismantling__case__spec__price-area {
  font-weight: 700;
}
.p-dismantling__case__spec__price {
  color: #2F2F2F;
  font-size: min(2.4rem, 1.25vw);
  margin: 0 0.3em;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__case__spec__price {
    font-size: min(7.2rem, 3.75vw);
  }
}
.p-dismantling__case__note {
  margin-top: min(3rem, 1.5625vw);
  color: #6f6f6f;
  font-size: min(1.8rem, 0.9375vw);
  line-height: 1.9;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__case__note {
    font-size: 1.2rem;
  }
}
.p-dismantling__case__more {
  margin-top: min(4rem, 2.0833vw);
  text-align: center;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__case__more {
    margin-top: min(12rem, 6.2499vw);
    margin-bottom: min(12rem, 6.2499vw);
  }
}
.p-dismantling__case__more__btn {
  display: inline-flex;
  align-items: center;
  gap: min(2.5rem, 1.3021vw);
  padding: min(1.8rem, 0.9375vw) min(3rem, 1.5625vw) min(1.8rem, 0.9375vw) min(6rem, 3.125vw);
  background: #fff;
  border: 1px solid #000;
  font-size: min(1.8rem, 0.9375vw);
  font-weight: 600;
  color: #262626;
  transition: 0.3s;
}
.p-dismantling__case__more__btn__arrow {
  width: min(2.6663rem, 1.3887vw);
  flex-shrink: 0;
}
.p-dismantling__case__more__btn__arrow path {
  transition: fill 0.3s;
}
.p-dismantling__case__more__btn:hover {
  background: #1D4A9E;
  border-color: #1D4A9E;
  color: #fff;
}
.p-dismantling__case__more__btn:hover .p-dismantling__case__more__btn__arrow path {
  fill: #fff;
}
@media screen and (max-width: 768.9px) {
  .p-dismantling__case__more__btn {
    gap: 1.5rem;
    padding: 1.4rem 2rem 1.4rem 2.8rem;
    font-size: 1.4rem;
  }
  .p-dismantling__case__more__btn__arrow {
    width: 1.8rem;
  }
}
