:root {
  /* --calcBaseSp: calc(24 / 26); */
  /* --calcBaseSp: 0.5; */
  --calcBaseSp: 1;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 14rem;
}

#checklist .checklistItems {
  padding-top: 2rem;
  list-style: none;
}

#checklist .checklistItems > li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 2rem;
  padding: 0 2rem;
  height: 7.2rem;
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
  background: var(--midnightblue);
}

#checklist .checklistItems > li::before {
  content: "";
  width: 2.5484rem;
  height: 2.6471rem;
  background: url(../img/_about_check.svg) no-repeat center / contain;
}

#design .round:has(+.list) {
  margin-bottom: 3rem;
}

#design .list {
  margin-right: auto;
  margin-left: auto;
  width: fit-content;
  list-style: none;
}

#design .list > li {
  font-size: 1.8rem;
  font-weight: 700;
}

#design .list > li::before {
  content: '・';
}

#design .list > li + li {
  margin-top: 1.8rem;
}

#design .marugotoDesignExamplesImages {
  margin-bottom: 2rem;
}

#why .picture {
  margin-bottom: 6.4rem;
}

#catalog .picture {
  margin-top: 10rem;
}

#faq .note {
  margin-top: 2.4rem;
  margin-right: auto;
  margin-left: auto;
  max-width: 90.5rem;
  opacity: .42;
}

.area {
  margin-top: 3rem;
  margin-right: auto;
  margin-left: auto;
  width: fit-content;
  max-width: var(--width-sp);
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.74;
  letter-spacing: 0.05em;
}

.area__list {
  list-style: none;
}

.pointsContents__imagesBlock-container::before {
  /* content: ''; */
  display: block;
  width: 0.5rem;
  aspect-ratio: 8/25;
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3LjUzNyIgaGVpZ2h0PSIyNC44NCI+PHBhdGggZD0iTTAgMjMuODRWMGgydjIwLjRsMy44NDktNi4wNSAxLjY4NyAxLjA3NC01LjY5MyA4Ljk0OGExIDEgMCAwIDEtMS4xMjMuNDIzQTEgMSAwIDAgMSAwIDIzLjg0eiIgZmlsbD0iIzg1MzEzMCIvPjwvc3ZnPg==) center/contain no-repeat;
}

.pointsContents__imagesBlock > p {
  margin-bottom: 1rem;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
}

.pointsContents__imagesBlock > p > em {
  font-size: calc(28 / 22 * 1em);
  padding-left: 0.5rem;
  font-style: normal;
}

.max-w-1200 {
  /* max-width: 138.5rem; */
  max-width: 120rem;
}

.mx-auto {
  margin-right: auto;
  margin-left: auto;
}

.mv {
  margin-bottom: 4rem;
}

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

.sliderPagination {
  display: flex;
  gap: calc(10em / 10);
  margin-top: calc(10em / 10);
  font-size: 1rem;
  margin-right: auto;
  margin-left: auto;
  width: fit-content;
}

.sliderPagination > li {
  list-style-type: none;
  font-size: 0;
}

.sliderPagination__dotButton {
  display: block;
  color: #222;
  width: calc(10em / 10);
  aspect-ratio: 1;
  font-size: 1rem;
  border-radius: 50%;
  border: 1px solid currentColor;
  background-color: #fff;
}

.sliderPagination__dotButton.is-active {
  background-color: currentColor;
}

.heading {
  font-size: 1rem;
  font-weight: 700;
  text-align: center;
}

.heading__head {
  display: block;
  font-size: 3rem;
  line-height: 1.425;
  letter-spacing: 0.05em;
}

.heading__middle {
  display: block;
  margin-top: 1rem;
  font-size: 3rem;
  line-height: 1.467;
  letter-spacing: 0.07em;
}

.heading__body {
  display: block;
  margin-top: 1rem;
  font-size: 3rem;
  line-height: 1.467;
  letter-spacing: 0.07em;
}

.serviceLabel {
  display: block;
}

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

.serviceInfo__body {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem;
  margin-top: 4rem;
}

.serviceInfo__foot {
  margin-top: 4rem;
  margin-right: auto;
  margin-left: auto;
  max-width: 80rem;
}

.serviceInfo__foot > p {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: calc(30 / 18);
}

.heading2 {
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: calc(45 / 28);
  text-align: center;
}

.examples {
  margin-top: 8rem;
}

.examples__body {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  margin-top: 4rem;
}

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

.examples__foot {
  margin-top: 4rem;
}

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

.serviceFeatures {
  margin-top: 8rem;
}

.serviceFeatures__head {
  margin-bottom: 4rem;
}

.serviceFeatures__serviceWrap {
  --_serviceFeatures-pt: 0rem;

  margin-top: calc(var(--_serviceFeatures-pt) * -1);
  padding-top: var(--_serviceFeatures-pt);
}

.serviceFeatures__service {
  --_serviceFeatures-bgc: #EDEAE7;
  --_serviceContent-c: #001339;
  --_serviceContent-c-text: #001339;
  --_serviceContent-heading-icon: url(../img/icon-check.svg);

  position: relative;
  padding-top: 9.7rem;
  padding-bottom: 7.4rem;
  background-color: var(--_serviceFeatures-bgc);
  font-size: 0;
}

.serviceFeatures__service._service-2_ {
  --_serviceFeatures-bgc: #EDEAE7;
  --_serviceContent-c: #7E5937;
  --_serviceContent-c-text: #533B25;
  --_serviceContent-heading-icon: url(../img/icon-check-brown.svg);

  margin-top: 11.4rem;
  padding-bottom: 6rem;
}

.serviceFeatures__heading {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}

.serviceFeatures__heading img {
  height: auto;
}

.serviceContent {
  display: grid;
  grid-template-columns: 1fr calc(210 / 800 * 100%) calc(24 / 800 * 100%) calc(518 / 800 * 100%) 1fr;
  margin-right: auto;
  margin-left: auto;
  max-width: 80rem;
}

.serviceContent__text {
  grid-area: 1/4;
  color: var(--_serviceContent-c-text);
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: calc(30 / 18);
}

.serviceContent__image {
  grid-area: 1/2;
  width: 100%;
  height: auto;
}

.serviceCards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4.2rem 5.6rem;
  margin: 4rem auto 4.4rem;
  max-width: 80rem;
}

.serviceCards__image img {
  height: auto;
}

.serviceFeatures__circleImage {
  margin-top: 4.8rem;
  margin-right: auto;
  margin-left: auto;
  max-width: 80rem;
}

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

.interview {
  margin-top: 8rem;
}

.interview__head {
  margin-bottom: 4rem;
}

.interview__item {
  --_interview-c: #001339;
  --_interview-c-text: #001339;
  --_interview-bgc: #ECEEF1;

  position: relative;
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #F7F7F7;
}

.interview__item._service-2_ {
  --_interview-c: #533B25;
  --_interview-c-text: #533B25;
  --_interview-bgc: #EDEAE7;
}

.interview__item + .interview__item {
  margin-top: 11.4rem;
}

.interview__heading {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}

.interview__heading img {
  height: auto;
}

.interview__card {
  display: grid;
  grid-template-columns: 2.5rem calc(300 / 800 * 100%) calc(60 / 800 * 100%) 1fr 2.5rem;
  background-color: var(--_interview-bgc);
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.interview__card__image {
  grid-column: 2;
}

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

.interview__card__textBlock {
  grid-column: 4;
}

.interview__card__heading {
  color: var(--_interview-c);
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: calc(30 / 20);
}

.interview__card__list {
  margin-top: 2rem;
  list-style-type: none;
}

.interview__card__list li {
  color: var(--_interview-c-text);
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: calc(30 / 16);
}

.interview__card__bottom {
  margin-top: 2rem;
  color: var(--_interview-c-text);
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: calc(30 / 16);
}

.consultation {
  margin-top: 8rem;
}

.consultation__text {
  margin-top: 3rem;
  margin-right: auto;
  margin-left: auto;
  max-width: 80rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: calc(30 / 18);
}

.consultation__card-container {
  display: grid;
  grid-template-columns: 585px;
  justify-content: center;
  gap: 3rem;
  margin-top: 4rem;
}

.consultation__card {
  display: grid;
  grid-template-rows: auto 1fr;
}

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

.consultation__card__body {
  padding: 2rem 3rem 3rem;
  border: 1px solid #222;
  background-color: #fff;
}

.consultation__card__body p {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: calc(30 / 18);
}

.consultation__bn {
  margin-top: 6.4rem;
  text-align: center;
}

.consultation__bottom {
  margin-top: 10rem;
}

.consultationBn {
  display: inline-block;
  width: min(100%, 80rem);
}

.consultationBn._footer_ {
  margin-bottom: 5rem;
}

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

#points {
  background-color: #F6F3F2;
}

.points {
  margin-right: auto;
  margin-left: auto;
  /* max-width: 115.4rem; */
  max-width: 100rem;
}

.pointsContents__icon {
  grid-row: 4;
  grid-column: 2;
  align-self: center;
  margin-right: 3rem;
  margin-left: 4.2rem;
  width: 9.3rem;
}

.pointsContents__icon img {
  height: auto;
}

.documentRequest {
  margin-top: 8rem;
}

.documentRequest__button {
  margin-top: 4rem;
}

.documentRequest__button__inner {
  padding: 0 !important;
}

.documentRequest__button__inner .flexlr {
  justify-content: center;
}

.documentRequest__button__inner .flexlr .btn {
  margin-left: 0 !important;
}

.documentRequest__body {
  margin-top: 2.4rem;
}

.documentRequest__item {
  display: grid;
  grid-template-columns: 1fr 36rem;
  gap: 3.7rem;
  align-items: center;
  margin-right: auto;
  margin-left: auto;
  max-width: 100rem;
}

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

.documentRequest__item__heading {
  margin-bottom: 1.5rem;
  font-size: 2rem;
  line-height: 1.8;
}

#catalog .flexlr .btn {
  height: 5.6rem;
  border-radius: 1.2rem;
  font-size: 1.65rem;
  letter-spacing: 0.133em;
}

.faq {
  margin-top: 8rem;
  margin-bottom: 8rem;
}

#faq.faq {
  padding: 0;
  background: transparent;
}

.faq__head {
  margin-bottom: 4.3rem;
}

.faq__item {
  --_faq-c: #001339;
  --_faq-c-text: #001339;
  --_faq-bgc: #ECEEF1;

  position: relative;
  padding-top: calc(6.7rem - 2rem);
  padding-bottom: 6rem;
  background-color: var(--_faq-bgc);
}

.faq__item._service-2_ {
  --_faq-c: #7E5937;
  --_faq-c-text: #533B25;
  --_faq-bgc: #EDEAE7;
}

.faq__item + .faq__item {
  margin-top: 11.4rem;
}

.faq__item__heading {
  position: absolute;
  margin: 0 !important;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}

.faq__item__heading img {
  height: auto;
}

.faq#faq .qna .q,
.faq#faq .qna .q:before {
  color: var(--_faq-c) !important;
}

.faq#faq .qna .a {
  padding: 0;
  color: var(--_faq-c-text) !important;
}

.qna__inner {
  padding: 2.4rem 4.2rem;
  background-color: #fff;
}

.voice.large {
  color: #6E3A2C;
}

.voice.large::before,
.voice.large::after {
  content: none;
}

.header__time {
  margin-top: 0.5rem;
  font-size: 1rem;
}

.spLabel {
  position: fixed;
  z-index: 1;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 5.1rem;
  background-color: rgba(215, 209, 202, .95);
  transition: opacity .2s;
}

header.scrolled .spLabel {
  opacity: 0;
  pointer-events: none;
}

.serviceFeatureTitle {
  position: relative;
  display: block;
  width: 100%;
  margin: 4rem auto 2.4rem;
  max-width: 80rem;
  border: 0;
  cursor: pointer;
  pointer-events: none;
}

/* .serviceFeatureTitle::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0.8rem;
  width: 0.8rem;
  height: 0.6rem;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016.089%2011.795%22%3E%20%3Cpath%20id%3D%22icon_arrow_01%22%20d%3D%22M10%2C0%2C0%2C6.946%2C10%2C14%22%20transform%3D%22translate(1.044%2011.045)%20rotate(-90)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221.5%22%2F%3E%3C%2Fsvg%3E');
  transform: translateY(-50%);
  transition: transform .2s;
} */

.serviceFeatureTitle.is-open::after {
  transform: translateY(-50%) rotate(180deg);
}

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

.beforeAfter {
  margin-top: 8rem;
}

.beforeAfter__body {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 4.8rem;
  margin-top: 4rem;
}

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

.reason {
  margin-top: 8rem;
}

.reason__item:not(:first-child) {
  margin-top: 2.4rem;
}

.reason__body {
  margin-top: 4rem;
  padding-top: 6.4rem;
  padding-bottom: 6.4rem;
  background-color: #EDEAE7;
}

.reason__item {
  display: grid;
  grid-template-rows: 2.4rem auto 1.2rem 1fr;
  grid-template-columns: 20rem 1fr;
  grid-template-areas: 
  'image none-1'
  'image title'
  'image none-2'
  'image text';
  column-gap: 2.4rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 2.4rem;
  width: min(80rem, 95%);
  background-color: #B59175;
}

.reason__item__title {
  --_py: .4rem;
  --_pl: 1.3rem;
  --_pr: 2.4rem;

  grid-area: title;
  padding: var(--_py) var(--_pr) var(--_py) var(--_pl);
  display: flex;
  gap: .8rem;
  align-items: center;
  width: fit-content;
  min-height: 3.7rem;
  color: #7E5936;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  background-color: #fff;
}

.reason__item__title::before {
  content: '';
  margin-bottom: -0.1rem;
  width: 1.6rem;
  aspect-ratio: 16/17;
  background: url(../img/icon-check-brown.svg) center/contain no-repeat;
}

.reason__item__text {
  grid-area: text;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 500;
}

.reason__item__image {
  grid-area: image;
}

.reason__item__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media screen and (max-width: 768px) {

  #checklist .checklistItems {
    padding-top: 1rem;
  }

  #checklist .checklistItems > li {
    gap: 1rem;
    padding: 0 1.2rem;
    height: 3.6rem;
    font-size: 1.3rem;
  }
  
  #checklist .checklistItems > li::before {
    width: 1.2742rem;
    height: 1.32355rem;
  }

  #checklist .checklistItems > li + li {
    margin-top: 1rem;
  }

  #design .round:has(+.list) {
    margin-bottom: 2.79rem;
  }

  #design .list > li {
    font-size: 1.2rem;
  }

  #design .list > li + li {
    margin-top: 1rem;
  }

  #design .marugotoDesignExamplesImages > div {
    display: flex;
    margin-top: 1rem;
    gap: 1rem;
  }

  #why .picture {
    margin-bottom: 4rem;
    margin-right: auto;
    margin-left: auto;
    width: var(--width-sp);
  }

  #catalog .picture {
    margin-top: 8rem;
    margin-right: auto;
    margin-left: auto;
    width: var(--width-sp);
  }

  .pointsContents__ja {
    margin-bottom: 1.5rem;
  }

  .pointsContents__imagesBlock-container {
    display: flex;
    flex-direction: column;
  }

  .pointsContents__imagesBlock-container::before {
    order: 2;
    margin: 1rem auto 0.2rem;
  }

  .pointsContents__imagesBlock._first_ {
    order: 1;
  }

  .pointsContents__imagesBlock:not(._first_) {
    order: 3;
  }

  .pointsContents__imagesBlock._first_ > img {
    margin-inline: auto;
    width: 72.64957%;
  }

  .w-90-sp {
    width: 90%;
  }

  .mv {
    padding-top: var(--header-height-sp);
    margin-bottom: calc(50rem * 0.05);
  }

  .sliderPagination {
    gap: calc(20rem * 0.05);
    margin-top: calc(10rem * 0.05);
  }

  .sliderPagination__dotButton {
    width: calc(20rem * 0.05);
  }

  .heading {
    font-size: 1.6rem;
  }

  .heading__head {
    font-size: 1.15em;
  }

  .heading__middle {
    margin-top: calc(10rem * 0.05);
    font-size: 1.15em;
  }

  .heading__body {
    margin-top: calc(10rem * 0.05);
    font-size: 1.15em;
  }

  .consultationBn._footer_ {
    margin-bottom: 3rem;
  }

  .serviceInfo {
    display: grid;
  }

  .serviceInfo__head {
    grid-area: 1/1;
  }

  .serviceInfo__body {
    grid-area: 3/1;
    grid-template-columns: none;
    gap: calc(30rem * 0.05);
    margin-top: calc(40rem * 0.05);
  }

  .serviceInfo__foot {
    grid-area: 2/1;
    margin-top: calc(30rem * 0.05);
  }

  .serviceInfo__foot > p {
    font-size: 1.2rem;
    line-height: 2;
  }

  .heading2 {
    font-size: 1.6rem;
    line-height: calc(45 / 30);
    letter-spacing: 0.07em;
  }

  .examples {
    margin-top: calc(80rem * 0.05);
  }

  .examples__body {
    grid-template-columns: none;
    gap: calc(20rem * 0.05);
    margin-top: calc(40rem * 0.05);
  }

  .examples__foot {
    margin-top: calc(40rem * 0.05);
  }

  .serviceFeatures {
    margin-top: calc(80rem * 0.05);
  }

  .serviceFeatures__head {
    margin-bottom: calc(2.4rem * var(--calcBaseSp));
  }

  .serviceFeatures__service {
    padding-top: 0;
    padding-bottom: 0;
  }

  .serviceFeatures__service._service-2_ {
    margin-top: calc(40rem * 0.05);
    padding-bottom: calc(54rem * 0.05);
  }

  .serviceFeatures__heading {
    position: static;
    transform: none;
    margin-bottom: calc(30rem * 0.05);
  }

  .serviceFeatures__heading img {
    width: 100%;
  }

  .serviceContent {
    grid-template-columns: calc(20 / 580 * 100%) calc(210 / 580 * 100%) 1fr calc(310 / 580 * 100%) calc(20 / 580 * 100%);
    row-gap: calc(30rem * 0.05);
    padding-top: calc(1rem * var(--calcBaseSp));
    padding-bottom: calc(4rem * var(--calcBaseSp));
  }

  .serviceContent__text {
    font-size: 1.2rem;
    line-height: 1.8;
  }

  .serviceCards {
    grid-template-columns: repeat(2, 1fr);
    row-gap: calc(42rem * 0.05);
    column-gap: calc(55rem * 0.05);
    margin-top: calc(52rem * 0.05);
    margin-bottom: calc(90rem * 0.05);
    width: calc(520 / 580 * 100%);
    max-width: none;
  }

  .serviceFeatures__circleImage {
    width: calc(520 / 580 * 100%);
  }

  .interview {
    margin-top: calc(80rem * 0.05);
  }

  .interview__heading {
    width: 90%;
    max-width: 580px;
  }

  .interview__card {
    display: block;
    grid-template-columns: none;
    padding: calc(32rem * 0.05) calc(35rem * 0.05) calc(28rem * 0.05);
  }

  .interview__card__textBlock {
    margin-top: calc(30rem * 0.05);
  }

  .interview__card__heading {
    font-size: 1.2rem;
    line-height: 1.8;
  }

  .interview__card__list {
    margin-top: calc(20rem * 0.05);
  }

  .interview__card__list li {
    font-size: 1.2rem;
    line-height: 1.8;
  }

  .interview__card__bottom {
    margin-top: calc(20rem * 0.05);
    font-size: 1.2rem;
  }

  .interview__head {
    margin-bottom: calc(2.4rem * var(--calcBaseSp));
  }

  .interview__item {
    padding-top: calc(76rem * 0.05);
    padding-bottom: 0;
  }

  .interview__item + .interview__item {
    margin-top: calc(96rem * 0.05);
  }

  .consultation {
    margin-top: calc(80rem * 0.05);
  }

  .consultation__text {
    margin-top: calc(30rem * 0.05);
    font-size: 1.2rem;
    line-height: 2;
  }

  .consultation__card-container {
    grid-template-columns: none;
    gap: calc(50rem * 0.05);
    margin-top: calc(30rem * 0.05);
  }

  .consultation__card__body {
    padding: calc(20rem * 0.05);
  }

  .consultation__card__body p {
    font-size: 1.2rem;
    line-height: 1.8;
    letter-spacing: normal;
  }

  .consultation__bn {
    margin-top: calc(60rem * 0.05);
    margin-right: -2rem;
    margin-left: -2rem;
  }

  .consultation__top {
    margin-right: auto;
    margin-left: auto;
    width: calc(90% - calc(60rem * 0.05));
  }

  .consultation__bottom {
    margin-top: calc(80rem * 0.05);
  }

  .pointsContents__icon {
    order: 2;
    margin-right: 0;
    margin-left: 6rem;
  }

  .pointsContents__icon img {
    margin-top: calc(28rem * 0.05);
    width: calc(150rem * 0.05);
  }

  .documentRequest__item {
    grid-template-columns: none;
    gap: 0;
    width: calc(100% - calc(90rem * 0.05));
  }

  .documentRequest__item__left {
    grid-area: 2/1;
  }

  .documentRequest__item__right {
    display: contents;
  }

  .documentRequest__item__heading {
    grid-area: 1/1;
    margin-bottom: calc(33rem * 0.05);
    font-size: calc(30rem * 0.05);
    line-height: calc(35 / 24);
    letter-spacing: .025em;
    text-align: center;
  }

  .documentRequest__item__text {
    grid-area: 3/1;
    font-size: 1.2rem;
    line-height: 1.8;
  }

  #catalog .flexlr .btn {
    margin-left: auto !important;
  }

  #catalog .flexlr .btn svg {
    right: 1rem;
  }

  #faq .qna {
    margin: 0;
  }

  .faq {
    margin-top: calc(80rem * 0.05);
    margin-bottom: calc(80rem * 0.05);
  }

  .faq__head {
    margin-bottom: calc(24rem * 0.05);
  }

  .faq__item {
    padding-top: calc(2rem * 0.05);
    padding-bottom: calc(40rem * 0.05);
  }

  .faq__item__heading {
    position: static;
    transform: none;
  }

  .faq__item__heading img {
    width: 100%;
  }

  .faq__item + .faq__item {
    margin-top: calc(35rem * 0.05);
  }
  
  .qna__inner {
    padding: calc(24rem * 0.05) calc(29rem * 0.05);
  }

  footer w-sp {
    width: 100%;
  }

  .consultationBn._footer_ {
    width: calc(100% - 2.7rem);
    margin-right: -2rem;
    margin-left: -2rem;
  }

  footer .logo {
    width: calc(270 / 375 * 100%);
  }

  .header__time {
    color: #6E3A2C;
    margin-top: calc(4rem * 0.05);
    padding-right: calc(9rem * 0.05);
    font-size: calc(12rem * 0.05);
    text-align: right;
    white-space: nowrap;
    scale: 0.9;
    transform-origin: center right;
  }

  html {
    scroll-padding-top: 7rem;
  }

  header {
    padding: 0 1% 0 4%;
  }

  header nav a.tel svg {
    height: 4.08rem !important;
  }

  header nav a.catalog,
  header nav a.soudan {
    z-index: 2;
    bottom: 1rem
  }

  header nav a:not(.tel) {
    width: 15.7rem;
    height: 3rem;
  }

  header nav a.catalog {
    z-index: 2;
    right: calc(50% + 0.6rem);
  }

  header nav a.soudan {
    z-index: 2;
    left: calc(50% + 0.6rem);
  }

  .serviceFeatureTitle {
    margin-top: 0;
    margin-bottom: calc(1.4rem * var(--calcBaseSp));
    pointer-events: none;
  }

  .beforeAfter {
    margin-top: calc(5.6rem * var(--calcBaseSp));
  }

  .beforeAfter__body {
    display: flex;
    flex-direction: column;
    grid-template-columns: unset;
    gap: calc(4rem * var(--calcBaseSp));
    margin-top: calc(2.4rem * var(--calcBaseSp));
  }

  .reason {
    /* margin-top: calc(8rem * var(--calcBaseSp)); */
    margin-top: calc(80rem * 0.05);
  }

  .reason__body {
    margin-top: calc(2.4rem * var(--calcBaseSp));
    padding: 0;
  }

  .reason__item {
    grid-template-rows: calc(1.5rem * var(--calcBaseSp)) auto calc(.9rem * var(--calcBaseSp)) 1fr;
    grid-template-columns: calc(145 / 345 * 100%) 1fr;
    column-gap: calc(1.2rem * var(--calcBaseSp));
    padding-right: 0;
    width: 100%;
  }

  .reason__item:not(:first-child) {
    margin-top: calc(2.4rem * var(--calcBaseSp));
  }

  .reason__item__title {
    --_pr: 0;
    grid-row: 2;
    grid-column: 1/-1;
    z-index: 2;
    gap: calc(.8rem * var(--calcBaseSp));
    margin-right: auto;
    margin-left: auto;
    width: calc(100% - calc(1.5rem * var(--calcBaseSp)) - calc(1.5rem * var(--calcBaseSp)));
    min-height: calc(3.3rem * var(--calcBaseSp));
    font-size: calc(1.5rem * var(--calcBaseSp));
  }

  .reason__item__title::before {
    width: calc(1.6rem * var(--calcBaseSp));
  }

  .reason__item__text {
    padding-right: calc(1.3rem * var(--calcBaseSp));
    font-size: calc(1.1rem * var(--calcBaseSp));
    line-height: calc(21.6 / 12);
    letter-spacing: 0;
  }
}

@media screen and (min-width: 769px) {

  header .backdrop {
    backdrop-filter: blur(2rem) brightness(150%);
    -webkit-backdrop-filter: blur(2rem) brightness(150%);
    background-color: rgba(43, 43, 43, .15);
  }

  #checklist .checklistItems {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 2rem;
    column-gap: 6rem;
  }

  #design .marugotoDesignExamplesImages {
    display: flex;
    gap: 1rem;
    margin-bottom: 4rem;
  }

  #design .marugotoDesignExamplesImages > div {
    display: contents;
  }

  .area {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6rem;
    margin-top: 7rem;
    max-width: none;
    font-size: 2.3rem;
  }

  .area__list:first-child {
    grid-area: 1/1;
    justify-self: end;
  }

  .area__list:last-child {
    grid-area: 1/2;
  }

  .pointsContents {
    display: grid;
    grid-template-rows: repeat(4, auto);
    grid-template-columns: 35% 1fr 48.5%;
  }
  
  .pointsContents__en {
    grid-row: 1;
    grid-column: 1/-1;
  }

  .pointsContents__ja {
    grid-row: 2;
    grid-column: 1/-1;
    margin-bottom: 2.2rem;
  }

  .pointsContents__imagesBlock > p {
    font-size: 2.2rem;
    text-align: left;
  }
  
  .pointsContents__imagesBlock-container {
    display: contents;
  }

  .pointsContents__imagesBlock-container::before {
    grid-row: 4;
    grid-column: 2;
    align-self: center;
    margin-inline: 5.2rem;
    width: 2.5rem;
    aspect-ratio: 25/8;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNC44NCIgaGVpZ2h0PSI3LjUzNyI+PHBhdGggZD0iTTIzLjg0IDcuNTM3SDB2LTJoMjAuNGwtNi4wNS0zLjg0OUwxNS40MjQuMDAxbDguOTQ4IDUuNjkzYTEgMSAwIDAgMSAuNDIzIDEuMTIzIDEgMSAwIDAgMS0uOTU1LjcyeiIgZmlsbD0iIzg1MzEzMCIvPjwvc3ZnPg==);
  }

  .pointsContents__imagesBlock._first_ {
    display: contents;
  }

  .pointsContents__imagesBlock._first_ > p {
    grid-area: 3/1;
  }

  .pointsContents__imagesBlock._first_ > img {
    grid-area: 4/1;
  }

  .pointsContents__imagesBlock:not(._first_) {
    grid-row: 1/-1;
    grid-column: 3;
    align-self: end;
  }

  ._pcInactive_ .serviceContent-wrap {
    display: block !important;
    height: auto !important;
  }

  .serviceFeatureTitle::after {
    right: 2rem;
    width: 1.4rem;
    height: 1rem;
  }

  button.serviceFeatureTitle {
    transition: opacity .2s;
  }

  button.serviceFeatureTitle:hover {
    opacity: .6;
  }

  ._pcInactive_ button.serviceFeatureTitle {
    pointer-events: none;
    cursor: auto;
    opacity: 1;
  }

  #catalog .flexlr .btn {
    max-width: 35.4rem;
    height: 6rem;
    padding-left: 4rem;
    justify-content: flex-start;
    border-radius: 1.2rem;
    font-size: 2rem;
    letter-spacing: 0.133em;
  }

  #catalog .flexlr .btn svg {
    right: 3.8rem;
  }

  .u-hidden-pc {
    display: none;
  }

}
