@charset "UTF-8";
/* ==========================================================================//
//
// 特集 産調レポート
//
// ========================================================================== */
.p-top {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .p-top {
    margin-top: 4.4943820225vw;
  }
}
.p-top__wrap {
  max-width: 1280px;
  width: 94%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-top__wrap {
    width: 100%;
  }
}
.p-top__box {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  justify-items: start;
  align-items: center;
}
.p-top__ttl {
  z-index: 1;
  margin-left: 32px;
  padding: 6px 0;
  grid-column: 1/2;
  grid-row: 1/2;
  position: relative;
  font-size: 2.8rem;
  line-height: 1.4;
  letter-spacing: 0.04em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-top__ttl {
    margin-left: 4.4943820225vw;
    padding: 0.2808988764vw 0 0.8426966292vw;
    font-size: 5.6179775281vw;
    letter-spacing: 0.02em;
  }
}
.p-top__ttl::after {
  content: "";
  width: 100%;
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #252525;
}
@media screen and (max-width: 767px) {
  .p-top__ttl::after {
    height: 0.2808988764vw;
  }
}
.p-top__ttl02 {
  color: #fff;
}
.p-top__ttl02::after {
  background-color: #fff;
}
.p-top__img {
  grid-column: 1/2;
  grid-row: 1/2;
}
.p-top__img img {
  border-radius: 8px;
}
@media screen and (max-width: 767px) {
  .p-top__img img {
    border-radius: 0;
  }
}

@media print, screen and (min-width: 768px) {
  .l-wrap {
    margin-top: 64px;
  }
}

@media screen and (max-width: 767px) {
  .p-report {
    margin-top: 5.6179775281vw;
  }
}
@media screen and (max-width: 767px) {
  .p-report__wrap {
    width: 91%;
    margin: 0 auto;
  }
}
.p-report__item {
  background: radial-gradient(circle farthest-side, #eee, #eee 33%, transparent 33%, transparent);
  background-repeat: repeat-x;
  background-size: 6px 6px;
  background-position: left calc(100% + 2px);
}
@media screen and (max-width: 767px) {
  .p-report__item {
    background: radial-gradient(circle farthest-side, #ddd, #ddd 33%, transparent 33%, transparent);
    background-repeat: repeat-x;
    background-size: 6px 6px;
    background-position: left calc(100% + 2px);
  }
}
.p-report__item + .p-report__item {
  margin-top: 24px;
}
@media screen and (max-width: 767px) {
  .p-report__item + .p-report__item {
    margin-top: 1.1235955056vw;
  }
}
.p-report__item > a {
  padding: 20px 0 22px;
  display: flex;
  align-items: flex-start;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .p-report__item > a {
    padding: 3.3707865169vw 0 3.9325842697vw;
    gap: 2.808988764vw;
  }
}
.p-report__item > a:hover .p-report__item-img img {
  transform: scale(1.05);
}
.p-report__item > a:hover .p-report__item-date {
  opacity: 0.7;
}
.p-report__item > a:hover .p-report__item-ttl {
  opacity: 0.7;
}
.p-report__item-img {
  overflow: hidden;
  width: 23.5%;
  border-radius: 4px;
}
@media screen and (max-width: 767px) {
  .p-report__item-img {
    width: 25.5%;
    border-radius: 0.5617977528vw;
  }
}
.p-report__item-img img {
  transition: transform 0.3s;
}
.p-report__item-box {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .p-report__item-box {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    gap: 0 1.404494382vw;
  }
}
.p-report__item-date {
  color: #636363;
  transition: opacity 0.3s;
  font-size: 1.4rem;
  line-height: 1.4;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .p-report__item-date {
    font-size: 2.808988764vw;
    letter-spacing: 0.02em;
  }
}
.p-report__item-ttl {
  margin-top: 10px;
  transition: opacity 0.3s;
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.04em;
  font-weight: 500;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media screen and (max-width: 767px) {
  .p-report__item-ttl {
    width: 100%;
    margin: 0 0 1.404494382vw;
    order: -1;
    font-size: 4.2134831461vw;
    line-height: 1.2;
    letter-spacing: 0.02em;
  }
}
.p-report__item-tag {
  margin-top: 10px;
}
@media print, screen and (min-width: 768px) {
  .p-report__item-tag {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .p-report__item-tag {
    margin-top: 0;
  }
}
.p-report__item-tag a {
  padding-left: 11px;
  position: relative;
  transition: color 0.3s;
  font-size: 1.4rem;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-report__item-tag a {
    padding-left: 2.2471910112vw;
    color: #636363;
    font-size: 2.808988764vw;
  }
}
.p-report__item-tag a:hover {
  color: #df0024;
}
.p-report__item-tag a:hover::before {
  background-color: #df0024;
}
.p-report__item-tag a::before {
  content: "";
  width: 5px;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  transition: background 0.3s;
  background-color: #0d131b;
}
@media screen and (max-width: 767px) {
  .p-report__item-tag a::before {
    width: 1.1235955056vw;
    background-color: #888;
  }
}
.p-report__pagination {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .p-report__pagination {
    margin-top: 12.6404494382vw;
  }
}

@media screen and (max-width: 767px) {
  .l-pagination__list {
    gap: 1.9662921348vw;
  }
}
.l-pagination__item--first::before, .l-pagination__item--last::before {
  pointer-events: none;
  content: "";
  width: 12px;
  aspect-ratio: 1/1;
  border-top: 2px solid #444;
  border-left: 2px solid #444;
  position: absolute;
  top: 50%;
}
@media screen and (max-width: 767px) {
  .l-pagination__item--first::before, .l-pagination__item--last::before {
    width: 2.2471910112vw;
    border-width: 0.5617977528vw;
  }
}
.l-pagination__item--first::before, .l-pagination__item--first::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.l-pagination__item--first::before {
  left: 44%;
}
.l-pagination__item--first::after {
  left: 66%;
}
.l-pagination__item--last::before, .l-pagination__item--last::after {
  transform: translate(-50%, -50%) rotate(135deg);
}
.l-pagination__item--last::before {
  left: 36%;
}
.l-pagination__item--last::after {
  left: 58%;
}/*# sourceMappingURL=feature-report.css.map */