@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap");
/*---------------------------------------------------- 施工事例 TOPページ ----------------------------------------------------*/
main {
  font-family: "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: 25%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 3;
  background: #304259;
  padding: 15% 7%;
}
@media screen and (min-width: 768px) {
  div.casestudies-top-hero h1.casestudies-title {
    width: 180px;
    height: 100px;
    top: 50%;
    left: 6%;
    padding: 0;
    transform: translate(-1%, -50%);
  }
}
@media screen and (min-width: 1000px) {
  div.casestudies-top-hero h1.casestudies-title {
    width: 272px;
    height: 175px;
    left: 35%;
  }
}
@media screen and (min-width: 1280px) {
  div.casestudies-top-hero h1.casestudies-title {
    width: 272px;
    height: 175px;
    left: 20%;
  }
}
div.casestudies-top-hero h1.casestudies-title span {
  display: block;
  letter-spacing: 0.1em;
  color: #FFF;
  font-size: var(--spfont-size28);
}
@media screen and (min-width: 768px) {
  div.casestudies-top-hero h1.casestudies-title span {
    letter-spacing: 0.2em;
    font-size: var(--pcfont-size28);
  }
}
div.casestudies-top-hero p.casestudies-txt {
  width: 100%;
  color: #FFF;
  text-align: center;
  position: absolute;
  left: 50%;
  bottom: 10%;
  z-index: 2;
  transform: translate(-50%, 0);
  font-size: var(--spfont-size16);
  line-height: 2em;
}
@media screen and (min-width: 768px) {
  div.casestudies-top-hero p.casestudies-txt {
    text-align: right;
    padding-right: 15%;
    font-size: var(--pcfont-size16);
  }
}

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

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

div.other-casestudies {
  margin-top: 20%;
}
@media screen and (min-width: 768px) {
  div.other-casestudies {
    margin-top: 0;
  }
}

div.casestudies-list {
  width: 90%;
  padding-bottom: 10%;
  margin: auto;
  max-width: 1010px;
  /*	article{*/
}
@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%;
    display: flex;
    flex-direction: column;
    margin: 0 0 100px;
  }
}
div.casestudies-list article a {
  transition: all 0.4s;
  /*&:hover{*/
}
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.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;
}
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 h3.casestudies-article-title {
  font-size: var(--spfont-size17);
  margin-top: 4%;
}
@media screen and (min-width: 768px) {
  div.casestudies-list article h3.casestudies-article-title {
    font-size: var(--pcfont-size17);
    line-height: 1.4em;
    letter-spacing: -0.01em;
    margin-top: 20px;
  }
}
div.casestudies-list article ul.casestudies-cate {
  margin-top: 4%;
}
@media screen and (min-width: 768px) {
  div.casestudies-list article ul.casestudies-cate {
    margin-top: 20px;
  }
}
div.casestudies-list article ul.casestudies-cate li {
  display: inline-block;
}
div.casestudies-list article ul.casestudies-cate li span {
  display: inline-block;
  background: #deedee;
  border-radius: 60px;
  padding: 3% 1em 6%;
  line-height: 1.2em;
}
@media screen and (min-width: 768px) {
  div.casestudies-list article ul.casestudies-cate li span {
    font-size: var(--pcfont-size14);
  }
}
div.casestudies-list article .more-txt {
  display: block;
  font-size: var(--spfont-size15);
  margin-top: 8%;
  border-bottom: solid 1px #666;
  position: relative;
}
div.casestudies-list article .more-txt::after {
  display: block;
  content: "";
  width: 0.6em;
  height: 0.6em;
  border: 0;
  border-top: solid 1px #1a1a1a;
  border-right: solid 1px #1a1a1a;
  position: absolute;
  top: 50%;
  right: 8%;
  transform: translate(0, -50%) rotate(45deg);
  transition: all 0.4s;
}
@media screen and (min-width: 768px) {
  div.casestudies-list article .more-txt {
    font-size: var(--pcfont-size15);
    margin-top: 30px;
  }
}

.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;
  /*infobox-inner*/
}
.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: var(--pcfont-size14);
  }
  	*/
}

/*---------------------------------------------------- 施工実績 詳細ページ ----------------------------------------------------*/
.single-hero-image-box {
  width: 100%;
  aspect-ratio: 375/450;
  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;
  /*shingle-hero-inner*/
}
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;
}
div.shingle-hero div.shingle-hero-inner h1 {
  position: absolute;
  font-size: var(--spfont-size28);
  line-height: 1.5em;
  font-weight: 500;
}
div.shingle-hero div.shingle-hero-inner h1.shigle-title-right {
  right: 5%;
  bottom: 5%;
  text-align: right;
  color: #FFF;
}
div.shingle-hero div.shingle-hero-inner h1.shigle-title-left {
  left: 5%;
  bottom: 5%;
  text-align: left;
  color: #FFF;
}

.casestudies-single-data-wrap {
  background: #e6f1f3;
  padding: 20% 0 15% 0;
  /*div.data-info-image*/
}
@media screen and (min-width: 768px) {
  .casestudies-single-data-wrap {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding: 80px 40px;
  }
}
@media screen and (min-width: 1000px) {
  .casestudies-single-data-wrap {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding: 80px 0;
  }
}
.casestudies-single-data-wrap div.date-txt01 {
  width: 88%;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .casestudies-single-data-wrap div.date-txt01 {
    width: 100%;
    margin: 0;
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 1000px) {
  .casestudies-single-data-wrap div.date-txt01 {
    width: 33%;
    max-width: 330px;
    margin: 0;
  }
}
.casestudies-single-data-wrap div.date-txt01 p {
  text-align: justify;
}
.casestudies-single-data-wrap div.data-info-image {
  width: 88%;
  margin: 0 auto;
  margin-top: 8%;
}
@media screen and (min-width: 768px) {
  .casestudies-single-data-wrap div.data-info-image {
    width: 35%;
    margin: 0;
  }
}
@media screen and (min-width: 1000px) {
  .casestudies-single-data-wrap div.data-info-image {
    width: 25%;
    max-width: 245px;
    margin-left: 35px;
  }
}
.casestudies-single-data-wrap div.data-info-image h2 {
  background: #FFF;
  padding: 0.4em 0 0.4em 0.4em;
  margin-bottom: 8%;
}
.casestudies-single-data-wrap div.data-info-image div.gaikan {
  width: 80%;
  margin: 0 auto;
  aspect-ratio: 260/170;
  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-box {
  width: 88%;
  margin: 0 auto;
  margin-top: 10%;
}
@media screen and (min-width: 768px) {
  .casestudies-single-data-wrap div.data-info-box {
    width: 58%;
    margin: 0;
    margin-top: 0;
    margin-left: 5%;
  }
}
@media screen and (min-width: 1000px) {
  .casestudies-single-data-wrap div.data-info-box {
    width: 36%;
    max-width: 360px;
    margin-left: 35px;
  }
}
.casestudies-single-data-wrap div.data-info-box table.data-table {
  width: 100%;
}
.casestudies-single-data-wrap div.data-info-box table.data-table th {
  width: 6em;
  text-align: left;
  padding-bottom: 3%;
}
.casestudies-single-data-wrap div.data-info-box table.data-table td {
  width: calc(100% - 6em);
  overflow-wrap: break-word;
}

/*.casestudies-single-data-wrap*/
div.casestudies-point-list-wrap {
  width: 88%;
  margin: 0 auto;
  padding-bottom: 10%;
}
@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: 12%;
}
@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 h3 {
  font-size: var(--spfont-size21);
  margin-top: 6%;
  margin-bottom: 3%;
}
@media screen and (min-width: 768px) {
  div.casestudies-point-list-wrap div.point-list h3 {
    margin-top: 20px;
    font-size: var(--pcfont-size22);
  }
}
@media screen and (min-width: 1000px) {
  div.casestudies-point-list-wrap div.point-list h3 {
    margin-top: 30px;
  }
}
div.casestudies-point-list-wrap div.point-list p {
  font-size: var(--spfont-size16);
}
@media screen and (min-width: 768px) {
  div.casestudies-point-list-wrap div.point-list p {
    font-size: var(--pcfont-size16);
  }
}

/*casestudies-point-list-wrap*/
div.casestudies-point-wrap {
  background: #e6f1f3;
  padding: 15% 0;
}
@media screen and (min-width: 768px) {
  div.casestudies-point-wrap {
    padding: 100px 0;
  }
}
div.casestudies-point-wrap h3 {
  width: 88%;
  margin: 0 auto;
  margin-bottom: 3%;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  div.casestudies-point-wrap h3 {
    width: 90%;
    max-width: 1010px;
    margin-bottom: 20px;
  }
}
div.casestudies-point-wrap h3 span {
  display: block;
}
div.casestudies-point-wrap h3 span.en {
  font-size: var(--spfont-size16);
  --cut: 15px;
  background: #4c9ba9;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.6em 1.6em 0.6em 1em;
  clip-path: polygon(0 0, calc(100% - var(--cut)) 0, 100% 50%, calc(100% - var(--cut)) 100%, 0 100%);
}
@media screen and (min-width: 768px) {
  div.casestudies-point-wrap h3 span.en {
    font-size: var(--pcfont-size16);
    padding: 0.2em 1.6em 0.2em 1em;
  }
}
div.casestudies-point-wrap h3 span.ja {
  line-height: 1.4em;
  margin-left: 0.5em;
  font-size: var(--spfont-size21);
}
@media screen and (min-width: 768px) {
  div.casestudies-point-wrap h3 span.ja {
    font-size: var(--pcfont-size26);
  }
}
div.casestudies-point-wrap div.point-box {
  width: 88%;
  margin: 0 auto;
  padding: 10% 5%;
  background: #FFF;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  div.casestudies-point-wrap div.point-box {
    width: 90%;
    max-width: 1010px;
    padding: 40px;
  }
}
div.casestudies-point-wrap div.point-box p {
  font-size: var(--spfont-size16);
  line-height: 1.8em;
  text-align: justify;
}
@media screen and (min-width: 768px) {
  div.casestudies-point-wrap div.point-box p {
    font-size: var(--pcfont-size16);
  }
}

div.casestudies-link-box {
  width: 88%;
  margin: 0 auto;
  margin-top: 20%;
}
@media screen and (min-width: 768px) {
  div.casestudies-link-box {
    width: 24%;
    margin-top: 100px;
  }
}
div.casestudies-link-box a {
  margin: 0 0 4%;
}
div.casestudies-link-box a.visitor-btn {
  background: #f5ac00;
  color: #fff;
  border: solid 1px #f5ac00;
}
@media screen and (min-width: 768px) {
  div.casestudies-link-box a.visitor-btn:hover {
    border: solid 1px var(--blue01);
    background: var(--blue01);
  }
}
div.casestudies-link-box a.visitor-btn svg {
  fill: #fff;
}

.sec-topics-inner {
  width: 100%;
  overflow: hidden;
}/*# sourceMappingURL=casestudies.css.map */