@charset "UTF-8";

.icatchWrap.typeA .thumb .img1 {
  background-image: url(../../img/interview/img_interview_01_pc.jpg);
}

/* ページ下リードコピー */

.pagecopy {
  color: #2F4969;
  font-size: 25px;
  font-weight: 500;
  text-align: center;
  margin-top: 60px;
}

.pagecopy.type2 {
  margin-top: 100px;
}

.interviewListWrap {
  padding: 40px 0 100px 0;
  background-color: #F8F8F8;
  margin-top: 60px;
}

.interviewListItem {
  background-color: #fff;
  color: #2F4969;
  position: relative;
}

.interviewListItem .link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}

.interviewListItem .category {
  font-size: 15px;
  line-height: 1;
  text-align: center;
  background-color: #2F4969;
  color: #fff;
  min-width: 138px;
  padding: 7px 5px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 20;
}

.interviewListItem .thumbnail {
  position: relative;
}

.interviewListItem .thumbnailPhoto,
.interviewListItem .thumbnailPhoto .photo {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
}

.interviewListItem .contents {
  text-align: center;
}

.interviewListItem .contents .date {
  font-size: 20px;
  font-weight: 500;
  text-align: center;
  padding-left: 30px;
  padding-right: 30px;
  position: relative;
  display: inline-block;
}

.interviewListItem .contents .date:before,
.interviewListItem .contents .date:after {
  content: "";
  background-color: #2F4969;
  display: block;
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.interviewListItem .contents .date:after {
  left: auto;
  right: 0;
}

.interviewListItem .contents .title {
  color: #000;
  font-size: 20px;
  font-weight: 400;
  line-height: 2;
  text-align: left;
  margin-top: 20px;
}

.moreButton {
  margin-top: 120px;
}

.comingSoon{
    text-align: center;
    padding: 120px 0 0 0;
}

@media all and (min-width: 681px) {
  .interviewList {
  }
  .interviewList.typeA .interviewListItem:nth-child(2n) {
    flex-direction: row-reverse;
  }
  .interviewList.typeA .interviewListItem:nth-child(2n) .category {
    left: 0;
    right: auto;
  }
  .interviewList.typeB .interviewListItem {
    flex-direction: row-reverse;
  }
  .interviewList.typeB .interviewListItem .thumbnail {
    margin: 20px 20px 20px 0;
    width: 640px;
    /* position: static; */
  }
  .interviewList.typeB .interviewListItem .category {
    left: 0;
    right: auto;
  }
  .interviewListItem {
    display: flex;
    margin-top: 40px;
    transition:0.3s ease;
  }
  .interviewListItem:first-child {
    margin-top: 0;
  }
  .interviewListItem .thumbnail {
    width: 660px;
    height: 360px;
    overflow:hidden;
  }
  .interviewListItem .photo {
    transition: 0.3s ease;
  }


  .interviewListItem .contents {
    padding: 80px 60px 0 60px;
    width: 540px;
  }

  .interviewListItem .thumbnail:after {
    content: "";
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0);
    position: absolute;
    top: 0;
    left: 0;
    transition: background 0.3s ease;
    z-index: 15;
  }
  .interviewListItem:hover .thumbnail:after {
    content: "";
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    transition: background 0.3s ease;
  }
  .interviewListItem:hover .photo {
    transform: scale(1.1, 1.1);
  }
  .interviewListItem:hover {
    /* background-color: #2F4969; */
    /* color: #fff; */
  }
  .interviewListItem:hover .readButton{
    background-color: #2F4969;
    color: #fff;
  }

  .interviewListItem:hover .readButton:after{
    border-color:#fff;

  }

  .interviewListItem:hover .contents .title{
    /* color: #fff; */
  }

  .interviewListItem .readButton {
    font-size: 15px;
    font-weight: 500;
    width: 230px;
    height: 53px;
    margin-top: 30px;
  }
  .moreButton a {
    font-size: 15px;
    width: 300px;
    height: 53px;
  }
}

@media all and (max-width: 680px) {
  .icatchWrap .thumb .img1{
    background-image: none !important;
  }
  .pagecopy {
    padding-left: 20px;
    padding-right: 20px;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.78;
    margin-top: 0;
  }
  .interviewListWrap {
    padding-top: 40px;
    padding-bottom: 50px;
    margin-top: 30px;
  }
  .interviewListItem {
    margin-top: 40px;
  }
  .interviewListItem:first-child {
    margin-top: 0;
  }
  .interviewListItem .thumbnail {
    height: 76.87vw;
  }
  .interviewListItem .contents {
    padding: 30px 15px;
  }
  .interviewListItem .contents .date {
    font-size: 16px;
  }
  .interviewListItem .contents .title {
    font-size: 15px;
    line-height: 1.733;
  }
  .interviewListItem .readButton {
    width: 230px;
    height: 41px;
    margin-top: 20px;
  }
  .moreButton {
    margin-top: 60px;
  }
  .comingSoon{
    padding:40px 0 0 0;
  }
}

/* 詳細ページ（AとB共通のデザイン）
***************************************************************/

.singleInner {
  padding-top: 30px;
  padding-bottom: 105px;
}

.singleMainvisual {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  height: 606px;
}

.pagecopyDate {
  text-align: center;
  margin-top: 40px;
}

.pagecopyDate span {
  font-size: 20px;
  font-weight: 500;
  padding-left: 30px;
  padding-right: 30px;
  position: relative;
  display: inline-block;
}

.pagecopyDate span:before,
.pagecopyDate span:after {
  content: "";
  background-color: #2F4969;
  display: block;
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.pagecopyDate span:after {
  left: auto;
  right: 0;
}

/* 記事コンテンツ */

.singleContents {
  margin-top: 60px;
}

.singleContents .title {
  font-size: 25px;
  font-weight: 500;
  line-height: 1.84;
}

.singleContents .text {
  font-size: 16px;
  line-height: 2.125;
  text-align: justify;
  text-justify: inter-ideograph;
  margin-top: 18px;
}

.singleContents .caption {
  font-size: 14px;
  line-height: 1.714;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  margin-top: 10px;
}

.singleContents .image {
  width: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

/* /記事コンテンツここまで */

/* 施工事例と同じパーツ */

.singleText {
  font-size: 18px;
  line-height: 1.888;
  letter-spacing: 0;
  margin-top: 40px;
}

.questionArea {
  background-color: #F8F8F8;
  padding: 100px 0;
  margin-top: 80px;
}

.questionTitle {
  color: #2F4969;
  text-align: center;
}

.questionTitle .eng {
  font-size: 55px;
  font-weight: 400;
  line-height: 1;
}

.questionTitle .jpn {
  font-size: 18px;
  font-weight: 500;
  display: block;
  margin-top: 20px;
}

.questionList {
  margin-top: 60px;
}

.questionListItem {
  padding-bottom: 60px;
}

.questionListItem + .questionListItem {
  padding-top: 40px;
  border-top: 1px solid #a0a29e;
}

.questionListItem:last-child {
  padding-bottom: 0;
}

.questionListItem .title {
  color: #2F4969;
  font-size: 25px;
  font-weight: 500;
  padding-left: 30px;
  position: relative;
}

.questionListItem .title:before {
  content: "Q.";
  position: absolute;
  top: 0;
  left: 0;
}

.questionListItem .text {
  font-size: 14px;
  text-align: justify;
  text-justify: inter-ideograph;
  line-height: 1.714;
  margin-top: 20px;
}

.dataArea {
  margin-top: 100px;
}

.dataListItem dl {
  line-height: 1.4;
  display: flex;
}

.dataListItem dl + dl {
  margin-top: 5px;
}

.dataListItem dt:after {
  content: "／";
}

.dataListItem dd {
}

.dataArea .tagArea {
  margin-top: 10px;
}

.dataArea .tagAreaList {
  justify-content: flex-start;
}

.dataArea .tagAreaListItem a {
  background-color: #fff;
  color: #000;
}

.dataAreaCategory {
  background-color: #2F4969;
  color: #fff;
  font-size: 14.5px;
  letter-spacing: 0;
  line-height: 1.3;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
}

.returnButton {
  margin-top: 60px;
}

.returnButton a {
  font-size: 18px;
  width: 347px;
  height: 71px;
}

@media all and (min-width: 681px) {
  /* 記事コンテンツ */
  .singleContents .singleColumn {
    margin-top: 60px;
  }
  .singleContents .singleColumn:first-child {
    margin-top: 0;
  }
  .singleContents .leftColumn,
  .singleContents .rightColumn {
    width: 580px;
  }
  .singleContents .typeImage .image {
    height: 800px;
  }
  .singleContents .typeImage .caption {
    padding-left: 60px;
    padding-right: 60px;
  }
  .singleContents .typeThreeImage .leftColumn .image,
  .singleContents .typeTwoImage.typeLarge .image {
    height: 870px;
  }
  .singleContents .typeTwoImage,
  .singleContents .typeThreeImage {
    display: flex;
    justify-content: space-between;
  }
  .singleContents .typeTwoImage .caption,
  .singleContents .typeThreeImage .caption {
    padding-left: 30px;
    padding-right: 30px;
  }
  .singleContents .typeTwoImage .image,
  .singleContents .typeThreeImage .image {
    height: 387px;
  }
  .singleContents .typeThreeImage .rightColumn .image {
    height: 415px;
  }
  .singleContents .typeThreeImage .rightColumn .image + .image {
    margin-top: 40px;
  }
  .singleContents .typeText {
    margin-top: 90px;
  }
  .singleColumn .movieBlock {
    width: 1000px;
    margin: 0 auto;
  }
  .singleColumn .movieBlock iframe {
    width: 100%;
    height: 500px;
  }
  /* /記事コンテンツここまで */

  .questionArea .sectionInner {
    width: 835px;
  }

  .dataArea .tagAreaListItem a:hover {
    background-color: #000;
    color: #fff;
  }

  .dataAreaInner {
    display: flex;
  }

  .dataAreaCategory {
    padding-left: 15px;
    padding-right: 15px;
    width: 194px;
  }

  .dataAreaTitle {
    font-size: 16px;
    width: 80px;
    display: flex;
    align-items: center;
    margin-left: 40px;
  }

  .dataList {
    padding-left: 25px;
    padding-right: 20px;
    border-left: 1px solid #707070;
    border-right: 1px solid #707070;
    width: 810px;
    display: flex;
  }

  .dataListItem {
    font-size: 14px;
    line-height: 1.857;
    letter-spacing: 0;
    margin-left: 20px;
  }

  .dataListItem:first-child {
    margin-left: 0;
  }

  .dataListItem.item1 {
    width: 225px;
  }
  .dataListItem.item2 {
    width: 250px;
  }
  .dataListItem.item3 {
    width: 250px;
  }

  .dataListItem dt {
    width: 118px;
  }
  .dataListItem dd {
    width: 100%;
  }
  .dataListItem.item3 dt {
    width: 132px;
  }

  .contactBanner {
    margin-top: 80px;
    margin-left: auto;
    margin-right: auto;
  }
  .contactBanner a {
    transition: 0.3s ease;
  }
  .contactBanner a:hover {
    opacity: 0.8;
  }
  .contactBanner,
  .contactBanner__image,
  .contactBanner img {
    width: 600px;
  }
}

@media all and (max-width: 680px) {
  .singleInner {
    padding-top: 0;
    padding-bottom: 90px;
  }

  .pagecopy.type2 {
    margin-top: 40px;
  }

  .singleMainvisual {
    height: 67.5vw;
  }

  .pagecopyDate {
    margin-top: 30px;
  }

  /* 記事コンテンツ */

  .singleContents {
    margin-top: 30px;
  }
  .singleContents .singleColumn {
    margin-top: 45px;
  }
  .singleContents .singleColumn:first-child {
    margin-top: 0;
  }

  .singleContents .rightColumn {
    margin-top: 30px;
  }

  .singleContents .typeThreeImage .rightColumn .image + .image {
    margin-top: 10px;
  }
  .singleContents .typeImage .image,
  .singleContents .typeTwoImage .image,
  .singleContents .typeThreeImage .rightColumn .image {
    height: 67.5vw;
  }
  .singleContents .typeThreeImage .leftColumn .image,
  .singleContents .typeTwoImage.typeLarge .image {
    height: 150vw;
  }
  .singleContents .caption {
    font-size: 13px;
    line-height: 1.85;
    margin-top: 10px;
    margin-left: 12px;
    margin-right: 12px;
  }

  .singleContents .typeText {
    margin-left: 12px;
    margin-right: 12px;
  }
  .singleContents .text {
    margin-top: 5px;
  }
  .singleContents .title {
    font-size: 17px;
    line-height: 1.82;
  }
  .singleContents .text {
    font-size: 15px;
    line-height: 1.6;
  }
  .singleColumn .movieBlock {
    width: 100%;
    margin: 0 auto;
    padding: 0 12px;
  }
  .singleColumn .movieBlock iframe {
    width: 100%;
    height: 46.8vw;
  }

  /* /記事コンテンツここまで */

  .singleText {
    font-size: 15px;
    line-height: 2;
    margin-left: 12px;
    margin-right: 12px;
  }

  .questionArea {
    padding: 60px 15px 60px 15px;
  }

  .questionListItem + .questionListItem {
    padding-top: 30px;
  }

  .questionListItem .title {
    font-size: 15px;
    line-height: 1.733;
  }

  .questionTitle .eng {
    font-size: 35px;
  }

  .questionTitle .jpn {
    font-size: 15px;
    margin-top: 10px;
  }

  .questionListItem .text {
    font-size: 15px;
    line-height: 1.6;
    text-align: justify;
    text-justify: inter-ideograph;
  }

  .dataArea {
    padding-top: 20px;
    padding-left: 30px;
    padding-right: 30px;
    margin-top: 50px;
  }
  .dataAreaInner {
    display: flex;
    flex-wrap: wrap;
  }
  .dataList {
    padding-left: 20px;
    border-left: 1px solid #a0a29e;
  }
  .dataListItem {
    font-size: 14px;
    line-height: 1.71;
  }
  .dataListItem + .dataListItem{
    margin-top: 5px;
  }
  .dataAreaCategory {
    padding: 5px 0;
    font-size: 13px;
    width: 100%;
    margin-bottom: 15px;
  }
  .dataAreaTitle {
    color: #4e4e4e;
    font-size: 16px;
    width: 65px;
  }
  .sectionTitleWrap {
    margin-top: 76px;
  }
  .contactBanner {
    text-align: center;
    margin-top: 50px;
    margin-left: 20px;
    margin-right: 20px;
  }
  .returnButton a {
    font-size: 13px;
    width: 229px;
    height: 41px;
  }
}

@media all and (max-width: 370px) {
  .dataArea {
    padding-left: 15px;
    padding-right: 15px;
  }
}
