@charset "UTF-8";
/*---------------------------------------------------- 施工事例 TOPページ ----------------------------------------------------*/
main {
  font-family: "YakuHanJP", "Zen Kaku Gothic New", sans-serif;
}

@media screen and (min-width: 768px) {
  footer div.contact-area a.contact-btn {
    margin: 20px 0;
  }
}

div.casestudies-wrap {
  position: relative;
}

div.casestudies-top-hero {
  width: 100%;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  div.casestudies-top-hero div.casestudies-top-img {
    width: 100%;
    aspect-ratio: 1360/485;
    position: relative;
    overflow: hidden;
  }
  div.casestudies-top-hero div.casestudies-top-img span {
    display: block;
    position: absolute;
    inset: 0;
  }
  div.casestudies-top-hero div.casestudies-top-img span img {
    width: 100%;
    height: 100%;
    display: block;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: 50% 50%;
       object-position: 50% 50%;
    transition: all 0.4s;
  }
}
div.casestudies-top-hero nav.pan-nav {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, 0);
  z-index: 2;
}
div.casestudies-top-hero nav.pan-nav ul li {
  color: #FFF;
}
div.casestudies-top-hero nav.pan-nav ul li::before {
  border-color: #FFF;
}
div.casestudies-top-hero nav.pan-nav ul li a {
  color: #FFF;
}
div.casestudies-top-hero h1.casestudies-title {
  position: absolute;
  left: 50%;
  top: 30%;
  transform: translate(-50%, -50%);
  z-index: 3;
  background: #363742;
  padding: 2.8em 0;
  font-size: 7.46vw;
  width: 59%;
  text-align: center;
  color: #fff;
}
@media screen and (min-width: 768px) {
  div.casestudies-top-hero h1.casestudies-title {
    width: auto;
    top: 50%;
    left: 5%;
    padding: 0;
    font-size: clamp(20px, 2.1vw, 28px);
    transform: translate(0, -50%);
    padding: 2.8em 3em;
  }
}
@media screen and (min-width: 1000px) {
  div.casestudies-top-hero h1.casestudies-title {
    left: 10%;
  }
}
@media screen and (min-width: 1280px) {
  div.casestudies-top-hero h1.casestudies-title {
    left: 20%;
  }
}
div.casestudies-top-hero p.casestudies-txt {
  width: 100%;
  color: #FFF;
  text-align: center;
  position: absolute;
  left: 0;
  top: 90vw;
  z-index: 2;
  font-size: 4.26vw;
  line-height: 2em;
}
@media screen and (min-width: 768px) {
  div.casestudies-top-hero p.casestudies-txt {
    text-align: right;
    padding-right: 0;
    top: auto;
    bottom: 50px;
    left: auto;
    right: 5%;
    font-size: clamp(13px, 1.17vw, 16px);
  }
}

section.sec-casestudies {
  padding: 15vw 0 0;
  background: #F4F3F3;
  margin-bottom: 15%;
}
@media screen and (min-width: 768px) {
  section.sec-casestudies {
    padding: 115px 0 0;
    margin-bottom: 100px;
  }
}

h2.casestudies-title01 {
  text-align: center;
  font-size: 6.9333vw;
  font-weight: 600;
  margin: 0 0 2em;
  line-height: 1.4em;
}
@media screen and (min-width: 768px) {
  h2.casestudies-title01 {
    font-size: clamp(20px, 2vw, 27px);
  }
}

div.other-casestudies {
  margin-top: 20%;
  background: #F4F3F3;
  padding: 10vw 0 0;
}
@media screen and (min-width: 768px) {
  div.other-casestudies {
    margin-top: 147px;
    padding: 80px 0 0;
  }
}
div.other-casestudies h2 {
  text-align: center;
  font-size: 6.4vw;
  line-height: 1.2em;
  margin-bottom: 10vw;
}
@media screen and (min-width: 768px) {
  div.other-casestudies h2 {
    font-size: 24px;
    margin-bottom: 60px;
  }
}

div.casestudies-list {
  width: 90%;
  padding-bottom: 10%;
  margin: auto;
  max-width: 1010px;
}
@media screen and (min-width: 768px) {
  div.casestudies-list {
    display: flex;
    flex-wrap: wrap;
    gap: 3.5%;
    padding-bottom: 80px;
  }
}
div.casestudies-list article {
  margin: 0 0 18%;
}
@media screen and (min-width: 768px) {
  div.casestudies-list article {
    width: 31%;
    margin: 0 0 67px;
  }
}
div.casestudies-list article a {
  transition: all 0.4s;
}
div.casestudies-list article a:hover {
  opacity: 0.6;
  transition: all 0.4s;
}
div.casestudies-list article a:hover div.casestudies-thum-img span img {
  transform: scale(1.1);
  transition: all 0.4s;
}
div.casestudies-list article a {
  /*&:hover{*/
}
div.casestudies-list article a.more-txt:hover::after {
  transition: all 0.4s;
  transform: translate(100%, -50%) rotate(45deg);
}
div.casestudies-list article div.casestudies-thum-img {
  width: 100%;
  aspect-ratio: 320/215;
  position: relative;
  overflow: hidden;
  margin-bottom: 7vw;
}
@media screen and (min-width: 768px) {
  div.casestudies-list article div.casestudies-thum-img {
    margin-bottom: 20px;
  }
}
div.casestudies-list article div.casestudies-thum-img span {
  display: block;
  position: absolute;
  inset: 0;
}
div.casestudies-list article div.casestudies-thum-img span img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  transition: all 0.4s;
}
div.casestudies-list article p.tag {
  display: inline-block;
  line-height: 1.2em;
  padding: 0.4em 1em;
  border: solid 1px;
}
@media screen and (min-width: 768px) {
  div.casestudies-list article p.tag {
    font-size: 11px;
  }
}
@media screen and (min-width: 1000px) {
  div.casestudies-list article p.tag {
    font-size: 13px;
  }
}
@media screen and (min-width: 1280px) {
  div.casestudies-list article p.tag {
    font-size: 14px;
  }
}
div.casestudies-list article p.tag.green {
  color: #32562C;
}
div.casestudies-list article p.tag.blue {
  color: #141F6B;
}
div.casestudies-list article h3.casestudies-article-title {
  font-size: 4.5333vw;
  margin-top: 4%;
}
@media screen and (min-width: 768px) {
  div.casestudies-list article h3.casestudies-article-title {
    font-size: clamp(13px, 1.25vw, 17px);
    line-height: 1.4em;
    letter-spacing: -0.01em;
    margin-top: 20px;
  }
}
div.casestudies-list article ul.casestudies-cate {
  margin-top: 4%;
  display: flex;
  flex-wrap: wrap;
  gap: 2vw;
}
@media screen and (min-width: 768px) {
  div.casestudies-list article ul.casestudies-cate {
    margin-top: 20px;
    gap: 7px;
  }
}
div.casestudies-list article ul.casestudies-cate li {
  display: inline-block;
}
div.casestudies-list article ul.casestudies-cate li span {
  display: inline-block;
  background: #fff;
  border-radius: 60px;
  padding: 0.5em 1em;
  line-height: 1.2em;
}
@media screen and (min-width: 768px) {
  div.casestudies-list article ul.casestudies-cate li span {
    font-size: clamp(12px, 1vw, 14px);
  }
}
div.casestudies-list {
  /*	article{*/
}

.showroom-recommend {
  background: #e6f1f3;
  padding: 15% 0 25%;
}
@media screen and (min-width: 768px) {
  .showroom-recommend {
    padding: 0;
    padding-bottom: 80px;
  }
}
.showroom-recommend .cm-search-slide-wrap {
  width: 90%;
  max-width: 1100px;
  margin: 0 auto;
  background: #FFF;
  padding: 10% 0;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .showroom-recommend .cm-search-slide-wrap {
    padding: 60px 0;
  }
}
@media screen and (min-width: 1000px) {
  .showroom-recommend .cm-search-slide-wrap {
    padding: 80px 0;
  }
}
.showroom-recommend .cm-search-slide-wrap .showroom-list .cm-search-showroom-infobox {
  width: 90%;
  margin: 0 auto;
}
.showroom-recommend .cm-search-slide-wrap .showroom-list .cm-search-showroom-infobox div.infobox-inner div.inner-area {
  background: #646464;
  text-align: center;
  color: #FFF;
  margin-bottom: 3%;
}
.showroom-recommend .cm-search-slide-wrap .showroom-list .cm-search-showroom-infobox div.infobox-inner ul.detail-box li {
  background: #deedee;
  border-radius: 20px;
  /*
  display: inline-block;
  background: #deedee;
  border-radius: 60px;
  padding: 3% 1em 6%;
  line-height: 1.2em;
  @include mq(pc) {
  	font-size: clamp(12px, 1vw, 14px);
  }
  	*/
}
.showroom-recommend .cm-search-slide-wrap .showroom-list .cm-search-showroom-infobox {
  /*infobox-inner*/
}

/*---------------------------------------------------- 施工実績 詳細ページ ----------------------------------------------------*/
.single-hero-image-box {
  width: 100%;
  aspect-ratio: 375/250;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .single-hero-image-box {
    aspect-ratio: 1360/620;
  }
}
.single-hero-image-box .hero-img {
  position: absolute;
  inset: 0;
}
.single-hero-image-box .hero-img img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}

div.shingle-hero {
  position: relative;
}
div.shingle-hero nav.pan-nav {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, 0);
  z-index: 2;
}
div.shingle-hero nav.pan-nav ul li {
  color: #FFF;
}
div.shingle-hero nav.pan-nav ul li::before {
  border-color: #FFF;
}
div.shingle-hero nav.pan-nav ul li a {
  color: #FFF;
}

.casestudies-single-data-wrap {
  background: #F4F3F3;
  padding: 15vw 0;
}
@media screen and (min-width: 768px) {
  .casestudies-single-data-wrap {
    padding: 70px 0;
  }
}
.casestudies-single-data-wrap div.casestudies-single-data-wrap-inner {
  width: 88%;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .casestudies-single-data-wrap div.casestudies-single-data-wrap-inner {
    max-width: 1010px;
  }
}
@media screen and (min-width: 768px) {
  .casestudies-single-data-wrap div.data-info-image {
    width: 32%;
  }
}
.casestudies-single-data-wrap div.data-info-image div.gaikan {
  width: 100%;
  margin: 0 auto 8vw;
  aspect-ratio: 245/190;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .casestudies-single-data-wrap div.data-info-image div.gaikan {
    width: 100%;
    margin: 0;
    aspect-ratio: 245/190;
  }
}
.casestudies-single-data-wrap div.data-info-image div.gaikan .hero-img {
  position: absolute;
  inset: 0;
}
.casestudies-single-data-wrap div.data-info-image div.gaikan .hero-img img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
.casestudies-single-data-wrap {
  /*div.data-info-image*/
}
.casestudies-single-data-wrap hr {
  width: 100%;
  margin-bottom: 1.8em;
}
.casestudies-single-data-wrap div.data-info-box {
  display: contents;
}
@media screen and (min-width: 768px) {
  .casestudies-single-data-wrap div.data-info-box {
    display: block;
    width: 62%;
  }
}
.casestudies-single-data-wrap div.data-info-box h2 {
  background: #FFF;
  padding: 0.4em 0 0.4em 1em;
  margin-bottom: 8%;
  width: 100%;
  order: -1;
  font-size: 4.8vw;
}
@media screen and (min-width: 768px) {
  .casestudies-single-data-wrap div.data-info-box h2 {
    font-size: 18px;
    padding: 0.6em 1.2em;
    margin-bottom: 20px;
  }
}
.casestudies-single-data-wrap div.data-info-box table.data-table {
  width: 100%;
  line-height: 1.2em;
}
@media screen and (min-width: 768px) {
  .casestudies-single-data-wrap div.data-info-box table.data-table {
    font-size: 16px;
  }
}
.casestudies-single-data-wrap div.data-info-box table.data-table th {
  width: 6em;
  font-weight: 500;
  text-align: left;
  padding-bottom: 0.8em;
}
.casestudies-single-data-wrap div.data-info-box table.data-table td {
  width: calc(100% - 6em);
  overflow-wrap: break-word;
  padding-bottom: 0.8em;
}

/*.casestudies-single-data-wrap*/
div.casestudies-point-list-wrap {
  width: 88%;
  margin: 0 auto;
  padding-bottom: 10%;
  margin-top: 20vw;
}
@media screen and (min-width: 768px) {
  div.casestudies-point-list-wrap {
    max-width: 1010px;
    display: flex;
    flex-wrap: wrap;
    margin-top: 80px;
    padding-bottom: 0;
  }
}
@media screen and (min-width: 1000px) {
  div.casestudies-point-list-wrap {
    margin-top: 120px;
  }
}
div.casestudies-point-list-wrap div.point-list {
  margin-bottom: 14%;
}
@media screen and (min-width: 768px) {
  div.casestudies-point-list-wrap div.point-list {
    width: 47.5%;
    margin-bottom: 80px;
  }
  div.casestudies-point-list-wrap div.point-list:nth-child(even) {
    margin-left: 5%;
  }
}
@media screen and (min-width: 1000px) {
  div.casestudies-point-list-wrap div.point-list {
    margin-bottom: 100px;
  }
}
div.casestudies-point-list-wrap div.point-list p {
  font-size: 4.26vw;
  margin-top: 1em;
  line-height: 1.6em;
}
@media screen and (min-width: 768px) {
  div.casestudies-point-list-wrap div.point-list p {
    font-size: clamp(13px, 1.17vw, 16px);
    margin-top: 1.6em;
  }
}

/*casestudies-point-list-wrap*/
div.casestudies-link-box {
  width: 74.6%;
  margin: 0 auto;
  margin-top: 20%;
}
@media screen and (min-width: 768px) {
  div.casestudies-link-box {
    width: 280px;
    margin-top: 68px;
  }
}
div.casestudies-link-box a {
  margin: 0 0 4%;
}
@media screen and (min-width: 768px) {
  div.casestudies-link-box a {
    margin: 0 0 23px;
  }
}

.sec-topics-inner {
  width: 100%;
  overflow: hidden;
}

.casestudies-shingle-cont .single-explanation {
  background-color: #F4F3F3;
  padding: 10vw 0;
}
@media screen and (min-width: 768px) {
  .casestudies-shingle-cont .single-explanation {
    padding: 60px 0;
  }
}
.casestudies-shingle-cont .single-explanation div.single-explanation-inner {
  max-width: 1010px;
  width: 88%;
  margin: auto;
}
.casestudies-shingle-cont .single-explanation p.tag {
  display: inline-block;
  line-height: 1.2em;
  padding: 0.4em 1em;
  border: solid 1px;
}
@media screen and (min-width: 768px) {
  .casestudies-shingle-cont .single-explanation p.tag {
    font-size: 14px;
  }
}
.casestudies-shingle-cont .single-explanation p.tag.green {
  color: #32562C;
}
.casestudies-shingle-cont .single-explanation p.tag.blue {
  color: #141F6B;
}
.casestudies-shingle-cont .single-explanation h1 {
  font-size: 5.3vw;
  line-height: 1.5em;
  margin-top: 1em;
}
@media screen and (min-width: 768px) {
  .casestudies-shingle-cont .single-explanation h1 {
    font-size: 28px;
  }
}
@media screen and (min-width: 1000px) {
  .casestudies-shingle-cont .single-explanation h1 {
    font-size: 30px;
  }
}
@media screen and (min-width: 1280px) {
  .casestudies-shingle-cont .single-explanation h1 {
    font-size: 34px;
  }
}
.casestudies-shingle-cont .single-explanation p.explanation-txt {
  line-height: 2em;
  margin-top: 1em;
  font-size: 4.26vw;
}
@media screen and (min-width: 768px) {
  .casestudies-shingle-cont .single-explanation p.explanation-txt {
    font-size: 16px;
  }
}/*# sourceMappingURL=casestudies.css.map */