/************
* case
*************/
.case-content {
  width: 100%;
  max-width: 1240px;
  min-width: 1000px;
  margin: 0 auto;
  padding: 30px 20px;
}
@media screen and (max-width: 767px) {
  .case-content {
    max-width: unset;
    min-width: unset;
    padding: 30px 20px;
  }
}

/***** list ******/
.case__list {
  display: flex;
  gap: 60px 30px;
  justify-content: flex-start;
  margin-bottom: 60px;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .case__list {
    gap: 60px 0;
  }
}
.case__list-item {
  display: flex;
  text-align: center;
  width: calc((100% - 60px) / 3);
}
@media screen and (max-width: 767px) {
  .case__list-item {
    width: 100%;
  }
}
.case_itemBox {
  color: var(--color-black);
  text-decoration: none;
}
.case_itemBox:hover {
  text-decoration: none;
}
.case_itemImg {
  aspect-ratio: 16 / 9;
  margin-bottom: 20px;
  overflow: hidden;
}
.case_itemImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all .3s ease;
}
.case_itemBox:hover .case_itemImg img {
  transform: scale(1.05);
}
.case_itemTitle {
  color: var(--color-black);
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 8px;
}
@media screen and (max-width: 767px) {
  .case_itemTitle {
    font-size: 18px;
  }
}
.case_itemText {
  color: var(--color-black);
  font-size: 16px;
  text-align: left;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .case_itemText {
    font-size: 15px;
    margin-bottom: 10px;
  }
}
.case_itemTag {
  display: flex;
  gap: 2px 14px;
  flex-wrap: wrap;
  color: var(--color-black);
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .case_itemTag {
    font-size: 13px;
  }
}
.case_itemTag li::before {
  content: '＃';
}

/***** detail ******/
.pageHeader._detail {
    background: unset;
    color: var(--color-black);
}
.caseDetail-container .pageHeader-inner {
  padding: 60px 20px 0;
}
.pageHeader-comp_name {
  font-size: 32px;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .pageHeader-comp_name {
    font-size: 18px;
    text-align: left;
  }
}
.caseDetail-container .pageHeader-title {
  text-align: center;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .caseDetail-container .pageHeader-title {
    text-align: left;
  }

}
.pageHeader-comp_subtitle {
  font-size: 24px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .pageHeader-comp_subtitle {
    font-size: 16px;
    text-align: left;
  }
}
.caseDetail-container .pageHeader-tagList {
  justify-content: center;
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .caseDetail-container .pageHeader-tagList {
    margin-top: 20px;
    justify-content: flex-start;
  }
}
.case-content._detail {
  padding: 60px 20px;
}
@media screen and (max-width: 767px) {
  .case-content._detail {
    padding: 50px 20px;
  }
}
.case-content._detail .section-img {
  text-align: center;
  margin-bottom: 30px;
}
.case-content._detail .section-text {
  text-align: left;
}
.case-content._detail .section-title {
  text-align: left;
}
@media screen and (max-width: 767px) {
  .case-content._detail .section-title {
    font-size: 25px;
  }
}
.case-content._detail .list-disc {
  font-size: 16px;
  margin-bottom: 20px;
}
.case-interview_box {
  display: flex;
  gap: 0 40px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .case-interview_box {
    gap: 30px 0;
    flex-wrap: wrap;
    width: 100%;
  }
}
.case-interview_image,
.case-interview_content {
  width: calc(50% - 20px);
}
@media screen and (max-width: 767px) {
  .case-interview_image, 
  .case-interview_content {
    width: 100%;
  }
  .case-interview_image {
    order: 1;
  }
  .case-interview_content {
    order: 2;
  }
}
.case-interview_text {
  font-size: 16px;
}

/*** 関連事例 ***/
@media screen and (max-width: 767px) {
  .related-case-content .section-title {
    font-size: 25px;
  }
}
