@charset "UTF-8";
/* -------------------------------------------------------------------
　お客様の声一覧ページ
------------------------------------------------------------------- */
#customer-voice {
  margin: 5% auto;
}
#customer-voice .voice {
  display: flex;
  justify-content: center;
}

.voice-item {
  margin: 0 10px 20px;
  border-radius: 5px;
  position: relative;
}
.voice-item .voice-item {
  padding: 0 10px;
}
.voice-item .voice-item_text {
  min-height: 170px;
  border-radius: 0 0 5px 5px;
}
.voice-item a {
  color: #0c482f;
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 5px;
}
.voice-item a:hover {
  opacity: 0.6;
}
.voice-item a img {
  width: 100%;
  height: 230px;
  object-fit: cover;
  vertical-align: bottom;
  border-radius: 5px 5px 0 0;
}
.voice-item a .voice-item_text img {
  height: 50px;
  max-width: 150px;
  object-fit: contain;
  display: block;
  position: absolute;
  right: 15px;
  bottom: 15px;
}
.voice-item p {
  line-height: 1.4em;
  text-align: left;
  margin: 10px;
}
.voice-item p.ttl {
  font-size: 14px;
  line-height: 1.2;
  margin-bottom: 0;
}
.voice-item p.txt {
  font-size: 16px;
  line-height: 1.4;
  font-weight: bold;
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  #customer-voice .voice {
    flex-wrap: wrap;
  }
  #customer-voice .voice-item {
    width: calc(50% - 20px);
  }
}
@media screen and (max-width: 767px) {
  #customer-voice .voice {
    display: block;
  }
  #customer-voice .voice-item_text {
    min-height: 0;
  }
  .voice-item p.ttl, .voice-item p.txt {
    text-align: center;
  }
}
#page h2 {
  margin-bottom: 0;
}

#archive-voice .ttlbox,
#single-voice .ttlbox {
  background: url(../imgs/voice/bg_voice.webp) no-repeat center;
  background-size: cover;
}

.archive-voice_wrap {
  margin: 100px auto;
}

.voice-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, 400px);
  margin-bottom: 60px;
}

#archive-voice .voice-item {
  box-shadow: 2px 3px 5px 0px rgba(51, 51, 51, 0.4);
}

@media screen and (max-width: 768px) {
  .archive-voice_wrap {
    margin: 40px auto;
  }
  .voice-list {
    grid-template-columns: repeat(auto-fill, 100%);
  }
  #archive-voice .voice-item {
    margin-bottom: 2rem;
  }
}
/* -------------------------------------------------------------------
　お客様の声詳細ページ
------------------------------------------------------------------- */
#single-page .ttlbox h2 {
  margin-bottom: 0;
}

.voice_contents {
  margin: 90px auto;
}

.voice_contents_ttl {
  display: flex;
  justify-content: space-between;
  gap: 30px;
}
.voice_contents_ttl img {
  width: 60%;
  height: auto;
}
.voice_contents_ttl img.voice_contents_logo {
  height: 70px;
  max-width: 150px;
  object-fit: contain;
}

.voice_contents_ttl-company {
  font-weight: 500;
  margin-bottom: 10px;
}

.voice_contents_ttl-part {
  font-size: 0.875rem;
  line-height: 1.2;
}

.voice_contents_ttl-name {
  font-weight: 500;
  font-size: 1.125rem;
  margin-bottom: 10px;
}

.voice_contents_ttl-text {
  width: 40%;
}

.voice_contents_ttl-title {
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 20px;
}

.voice_contents_item {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 60px;
}

.voice_contents_item_ttl {
  width: 50%;
}
.voice_contents_item_ttl h3 {
  font-size: 1.375rem;
  padding-bottom: 5px;
  border-bottom: 2px solid #0c482f;
  margin-bottom: 20px;
  font-weight: normal;
}
.voice_contents_item_ttl h4 {
  font-size: 1.5625rem;
}
.voice_contents_item_ttl h4 strong {
  background: linear-gradient(transparent 75%, #ff9c00 25%);
}

.voice_contents_item_text_wrap {
  width: 50%;
}

.voice_contents_item_text {
  margin-bottom: 30px;
}
.voice_contents_item_text h4 {
  font-size: 1.25rem;
  margin-bottom: 20px;
}
.voice_contents_item_text p {
  line-height: 1.7;
}
.voice_contents_item_text p strong {
  border-bottom: 2px solid #ff9c00;
}
.voice_contents_item_text img {
  width: 100%;
  height: auto;
  margin-bottom: 20px;
}

.voice_company {
  padding: 20px;
  border: 2px solid #0c482f;
  text-align: center;
  margin-bottom: 100px;
}
.voice_company h3 {
  margin-bottom: 20px;
  font-size: 1.25rem;
}
.voice_company p {
  text-align: left;
}

@media screen and (max-width: 768px) {
  .voice_contents {
    margin: 40px auto;
  }
  .voice_contents_ttl {
    display: block;
  }
  .voice_contents_ttl img {
    width: 100%;
  }
  .voice_contents_ttl-text {
    width: 100%;
    margin-bottom: 20px;
  }
  .voice_contents_item {
    display: block;
  }
  .voice_contents_item_ttl {
    width: 100%;
    margin-bottom: 20px;
  }
  .voice_contents_item_ttl h4 {
    font-size: 1.5rem;
  }
  .voice_contents_item_text_wrap {
    width: 100%;
  }
}

/*# sourceMappingURL=voice.css.map */
