/* Condo Content */
.js-condo-slide.js-horizontal {
  position: relative;
}

.js-condo-slide.js-horizontal::after {
  position: absolute;
  right: 0;
  bottom: 63px;
  z-index: -1;
  width: 58.4%;
  height: 409px;
  background-color: #e2e8eb;
  content: "";
}

.sec-condo-blk {
  padding-top: 86px;
}

.sec-condo-blk .condo-slide {
  display: flex;
  justify-content: space-between;
  padding-top: 117px;
}

.sec-condo-blk .slide-item {
  width: 32.2%;
}

.sec-condo-blk .slide-item a {
  position: relative;
}

.sec-condo-blk .thumb-img {
  position: relative;
  width: 100%;
  height: 429px;
  overflow: hidden;
}

.sec-condo-blk .thumb-img::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.9) 100%);
  content: "";
}

.sec-condo-blk .thumb-img img,
.sec-suitable .case-img-blk img {
  width: 100%;
  height: 100%;
  transition: transform 0.5s ease;
  object-fit: cover;
}

.sec-condo-blk .item-ttl {
  position: absolute;
  right: 0;
  bottom: 41px;
  left: 0;
  color: #ffffff;
  font-family: "Shippori Mincho", serif;
  font-size: 22px;
  font-weight: 600;
  text-align: center;
  letter-spacing: 1.4px;
}

@media (hover: hover) and (pointer: fine) {
  .sec-condo-blk .slide-item:hover .thumb-img img {
    transform: scale(1.1);
  }

  .sec-condo-blk .slide-item a:hover .item-ttl {
    color: #7cbe41;
  }
}

/* Suitable Content */
.sec-suitable {
  padding-bottom: 66px;
}

.sec-suitable .suitable-cnt-area {
  padding-top: 90px;
}

.sec-suitable .group-ttl {
  font-family: "Shippori Mincho", serif;
  font-weight: 600;
  text-align: center;
  letter-spacing: 2.2px;
}

.sec-suitable .group-ttl .group-sub-ttl {
  display: inline-block;
  padding: 10px 11px;
  background-color: #7cbe41;
  color: #ffffff;
  font-size: 20px;
}

.sec-suitable .group-ttl .main-ttl {
  display: block;
  padding-top: 17px;
  font-size: 36px;
  letter-spacing: 2px;
}

.sec-suitable .case-blk {
  position: relative;
  padding-top: 64px;
}

.sec-suitable .case-cnt {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1366px;
}

.sec-suitable .case-blk::before {
  position: absolute;
  bottom: 0;
  z-index: -1;
  width: 69.2%;
  height: 357px;
  background-color: #e2e8eb;
  content: "";
}

.sec-suitable .case-blk:nth-of-type(odd)::before {
  left: 0;
}

.sec-suitable .case-blk:nth-of-type(even)::before {
  right: 0;
}

.sec-suitable .case-txt-blk {
  width: 550px;
  margin: 0 auto;
  padding-top: 30px;
}

.sec-suitable .case-blk:nth-of-type(odd) .case-txt-blk {
  padding-left: 17px;
}

.sec-suitable .case-blk:nth-of-type(even) .case-txt-blk {
  padding-right: 17px;
}

.sec-suitable .case-number,
.sec-suitable .case-ttl {
  color: #7cbe41;
  font-family: "Shippori Mincho", serif;
  font-weight: 800;
}

.sec-suitable .case-number {
  position: relative;
  padding-left: 126px;
  font-size: 14px;
  letter-spacing: 4.2px;
}

.sec-suitable .case-number::before,
.sec-suitable .case-number::after {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  transform: translateY(-50%);
}

.sec-suitable .case-number::before {
  width: 105px;
  height: 1px;
  background-color: #7cbe41;
}

.sec-suitable .case-number::after {
  width: 14px;
  height: 2px;
  background-color: #34343a;
}

.sec-suitable .case-ttl {
  line-height: 1.56;
  padding: 33px 5px 14px 19px;
  font-size: 26px;
  letter-spacing: 1.1px;
}

.sec-suitable .case-txt {
  line-height: 2.12;
  letter-spacing: 0.9px;
}

.sec-suitable .case-txt span {
  padding-left: 20px;
}

.sec-suitable .case-img-blk {
  width: 47.65%;
  height: 419px;
}

.sec-suitable .case-blk.reverse .case-cnt {
  flex-direction: row-reverse;
}

.sec-suitable #medical .case-blk:nth-of-type(odd),
.sec-suitable #executives .case-blk:nth-of-type(odd) {
  padding-bottom: 163px;
}

.sec-suitable #medical .case-blk:nth-of-type(even) {
  padding-bottom: 100px;
}

.sec-suitable #executives .case-blk:nth-of-type(even) {
  padding-bottom: 102px;
}

.sec-suitable #civil .case-blk {
  padding-bottom: 134px;
}

/* Ipad
-----------------------------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1280px) {

  /* Condo Content */
  .js-condo-slide.js-horizontal::after {
    bottom: 4.922vw;
    height: 31.953vw;
  }

  .sec-condo-blk {
    padding-top: 6.719vw;
  }

  .sec-condo-blk .condo-slide {
    padding-top: 9.141vw;
  }

  .sec-condo-blk .thumb-img {
    height: 33.516vw;
  }

  .sec-condo-blk .item-ttl {
    bottom: 3.203vw;
    font-size: 1.719vw;
    letter-spacing: 0.109vw;
  }

  /* Suitable Content */
  .sec-suitable {
    padding-bottom: 5.156vw;
  }

  .sec-suitable .suitable-cnt-area {
    padding-top: 7.031vw;
  }

  .sec-suitable .group-ttl {
    letter-spacing: 0.172vw;
  }

  .sec-suitable .group-ttl .group-sub-ttl {
    padding: 0.781vw 0.859vw;
    font-size: 1.563vw;
  }

  .sec-suitable .group-ttl .main-ttl {
    padding-top: 1.328vw;
    font-size: 2.813vw;
    letter-spacing: 0.156vw;
  }

  .sec-suitable .case-blk {
    padding-top: 5vw;
  }

  .sec-suitable .case-cnt {
    max-width: 100%;
  }

  .sec-suitable .case-blk::before {
    height: 27.891vw;
  }

  .sec-suitable .case-txt-blk {
    width: 42.969vw;
    padding-top: 2.344vw;
  }

  .sec-suitable .case-blk:nth-of-type(odd) .case-txt-blk {
    padding-left: 1.328vw;
  }

  .sec-suitable .case-blk:nth-of-type(even) .case-txt-blk {
    padding-right: 1.328vw;
  }

  .sec-suitable .case-number {
    padding-left: 9.844vw;
    font-size: 1.094vw;
    letter-spacing: 0.328vw;
  }

  .sec-suitable .case-number::before {
    width: 8.203vw;
    height: 0.13vw;
  }

  .sec-suitable .case-number::after {
    width: 1.094vw;
    height: 0.156vw;
  }

  .sec-suitable .case-ttl {
    padding: 2.578vw 0.391vw 1.094vw 1.484vw;
    font-size: 2.031vw;
    letter-spacing: 0.086vw;
  }

  .sec-suitable .case-txt {
    letter-spacing: 0.07vw;
  }

  .sec-suitable .case-txt span {
    padding-left: 1.563vw;
  }

  .sec-suitable .case-img-blk {
    height: 32.734vw;
  }

  .sec-suitable #medical .case-blk:nth-of-type(odd),
  .sec-suitable #executives .case-blk:nth-of-type(odd) {
    padding-bottom: 12.734vw;
  }

  .sec-suitable #medical .case-blk:nth-of-type(even) {
    padding-bottom: 7.813vw;
  }

  .sec-suitable #executives .case-blk:nth-of-type(even) {
    padding-bottom: 7.969vw;
  }

  .sec-suitable #civil .case-blk {
    padding-bottom: 10.469vw;
  }
}

/* SP
-----------------------------------------------------------------*/
@media only screen and (max-width: 767.9px) {

  /* Condo Content */
  .js-condo-slide.js-horizontal::after {
    bottom: 11.285vw;
    width: 55.216vw;
    height: 66.158vw;
  }

  .sec-condo-blk {
    padding-top: 12.005vw;
  }

  .sec-condo-blk .sub-ttl {
    font-size: 6.107vw;
    letter-spacing: 0.254vw;
  }

  .sec-condo-blk .condo-slide {
    width: calc(60.8vw * 3);
    padding-top: 9.415vw;
    padding-left: 11.98vw;
    overflow-x: hidden;
  }

  .sec-condo-blk .slide-item {
    width: 55.348vw;
  }

  .sec-condo-blk .thumb-img {
    height: 62.041vw;
  }

  .sec-condo-blk .item-ttl {
    bottom: 6.361vw;
    font-size: 4.835vw;
    letter-spacing: 0.254vw;
  }

  /* Suitable Content */
  .sec-suitable {
    padding-bottom: 15.204vw;
  }

  .sec-suitable .suitable-cnt-area {
    padding-top: 13.232vw;
  }

  .sec-suitable .group-ttl {
    letter-spacing: 0.56vw;
  }

  .sec-suitable .group-ttl .group-sub-ttl {
    padding: 2.545vw;
    font-size: 5.089vw;
  }

  .sec-suitable .group-ttl .main-ttl {
    padding-top: 4.58vw;
    font-size: 5.598vw;
    letter-spacing: 0.331vw;
  }

  .sec-suitable .case-blk,
  .sec-suitable .case-blk.reverse {
    padding-top: 2.862vw;
  }

  .sec-suitable .case-cnt {
    flex-wrap: wrap;
    max-width: 100%;
  }

  .sec-suitable .case-blk::before {
    bottom: 43.257vw;
    width: 72.265vw;
    height: 100vw;
  }

  .sec-suitable .case-blk:nth-of-type(even)::before {
    left: 0;
  }

  .sec-suitable .case-txt-blk {
    width: 100%;
  }

  .sec-suitable .case-blk:nth-of-type(odd) .case-txt-blk,
  .sec-suitable .case-blk:nth-of-type(even) .case-txt-blk {
    padding: 7.634vw 6.071vw 7.379vw 4.071vw;
  }

  .sec-suitable .case-number {
    padding-left: 31.298vw;
    font-size: 3.053vw;
    letter-spacing: 0.84vw;
  }

  .sec-suitable .case-number::before {
    width: 26.718vw;
    height: 0.296vw;
  }

  .sec-suitable .case-number::after {
    width: 3.562vw;
    height: 0.509vw;
  }

  .sec-suitable .case-ttl {
    line-height: 1.6;
    padding: 5.144vw 1.3vw 4.48vw 5.707vw;
    font-size: 5.598vw;
    letter-spacing: 0.204vw;
  }

  .sec-suitable .case-txt {
    line-height: 1.87;
    letter-spacing: 0.254vw;
  }

  .sec-suitable .case-txt span {
    padding-left: 5.452vw;
  }

  .sec-suitable .case-img-blk {
    width: 78.88vw;
    height: 84.478vw;
    margin-left: auto;
  }

  .sec-suitable #medical .case-blk:nth-of-type(odd) {
    padding-bottom: 4.226vw;
  }

  .sec-suitable #medical .case-blk:nth-of-type(even) {
    padding-bottom: 1.1vw;
  }

  .sec-suitable #civil .case-blk:nth-of-type(odd) {
    padding-bottom: 4.226vw;
  }

  .sec-suitable #civil .case-blk:nth-of-type(even) {
    padding-bottom: 1.163vw;
  }

  .sec-suitable #executives .case-blk:nth-of-type(odd) {
    padding-bottom: 11.859vw;
  }

  .sec-suitable #executives .case-blk:nth-of-type(even) {
    padding-bottom: 0;
  }
}