@charset "UTF-8";
/* ==================================================
	デザイン
================================================== */
#wrapper .page_body .page_layout_column3 .page_layout_inner .perf_text {
  margin-top: 15px;
}
@media screen and (min-width: 768px), print {
  #wrapper .page_body section {
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 767px) {
  #wrapper .page_body section {
    margin-bottom: 30px;
  }
}

/*---------------------------------
  外観
---------------------------------*/
#exterior .exterior_slide {
  position: relative;
}
#exterior .exterior_slide .slick-slide {
  border: 1px solid #ddd;
}
#exterior .exterior_slide .slick-arrow {
  border: none;
  background: url("../img/common/icon_arrow_circle.png") no-repeat center;
  background-size: contain;
  position: absolute;
  top: 50%;
  white-space: nowrap;
  text-indent: 100%;
  color: transparent;
  overflow: hidden;
  z-index: 990;
  cursor: pointer;
}
#exterior .exterior_slide .slick-prev {
  left: 50%;
  transform: translateY(-50%) scaleX(-1);
}
#exterior .exterior_slide .slick-next {
  right: 50%;
  transform: translateY(-50%);
}
#exterior .exterior_slide .slick-dots {
  display: flex;
  justify-content: center;
  align-items: center;
}
#exterior .exterior_slide .slick-dots li {
  line-height: 0;
}
#exterior .exterior_slide .slick-dots li button {
  border: none;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #ededed;
  white-space: nowrap;
  text-indent: 100%;
  color: transparent;
  overflow: hidden;
  cursor: pointer;
}
#exterior .exterior_slide .slick-dots li.slick-active button {
  background-color: #00a7ab;
}
@media screen and (min-width: 768px), print {
  #exterior .exterior_slide .slick-slider {
    margin-bottom: 40px;
  }
  #exterior .exterior_slide .slick-slide {
    width: 780px;
    margin: 0 60px;
  }
  #exterior .exterior_slide .slick-arrow {
    width: 49px;
    height: 49px;
    transition: opacity 0.3s;
  }
  #exterior .exterior_slide .slick-arrow:hover {
    opacity: 0.75;
  }
  #exterior .exterior_slide .slick-prev {
    margin-left: -474px;
  }
  #exterior .exterior_slide .slick-next {
    margin-right: -474px;
  }
  #exterior .exterior_slide .slick-dots li {
    margin: 0 8px;
  }
}
@media screen and (max-width: 767px) {
  #exterior .exterior_slide .slick-slider {
    margin-bottom: 10px;
  }
  #exterior .exterior_slide .slick-slide {
    width: 76vw !important;
    margin: 0 15px;
  }
  #exterior .exterior_slide .slick-arrow {
    width: 20px;
    height: 20px;
  }
  #exterior .exterior_slide .slick-prev {
    margin-left: calc(-38vw - 25px);
  }
  #exterior .exterior_slide .slick-next {
    margin-right: calc(-38vw - 25px);
  }
  #exterior .exterior_slide .slick-dots li {
    margin: 0 4px;
  }
}

/*---------------------------------
  内観
---------------------------------*/
@media screen and (min-width: 768px), print {
  .page_body #interior .page_layout_column3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, auto) 1fr;
    gap: 50px 30px;
  }
  .page_body #interior .page_layout_column3 .page_layout_inner {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: subgrid;
    gap: 0;
    grid-row: span 3;
  }
  .page_body #interior .page_layout_column3 .page_layout_inner:nth-child(n) {
    margin-right: 0;
    margin-bottom: 0;
  }
  .page_body #interior .page_layout_column3 .page_layout_inner p {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .page_body #interior .page_layout_column3 .page_layout_inner p {
    font-size: 15px;
    font-size: 0.9375rem;
    margin-top: 15px;
  }
}

/*---------------------------------
  コンセプト
---------------------------------*/
#concept .concept_img {
  margin-bottom: 15px;
}
#concept .concept_text strong {
  color: #00a7ab;
}