@charset "utf-8";
/********************
技術資料ページ用CSS
  /products/data/
 ********************/
.cmn-pageHeader[data-header="data"] {
  height: min(13.05vw, 180px);
}
@media (width <= 760px) {
  .cmn-pageHeader[data-header="data"] {
    height: auto;
  }
}

.data-search {
  padding-block: min(1.46vw,20px) min(2.2vw,30px);
  background-color: #5AB7BA;
  & > div {
    width: 100%;
    max-width: 1360px;
    margin-inline: auto;
    padding-inline: 60px;
  }
}
@media (width <= 760px) {
  .data-search {
    padding-block: 13.33vw;
    padding-inline: 0;
    & > div {
      padding-inline: 4.53vw;
    }
  }
}

.data-searchBox {
  display: grid;
  gap: 0 min(2.66vw,34px);
  grid-template-columns: min(17.19vw,220px) 1fr;
  width: min(79.06vw,1080px);
  margin-inline: auto;
}
@media (width <= 760px) {
  .data-searchBox {
    gap: 3.2vw 0;
    grid-template-columns: 100%;
    width: 100%;
  }
}

.data-searchBox_select {
  display: flex;
  flex-direction: column;
}

.data-searchBox_ttl {
  color: #FFF;
  font-size: min(1.46vw,20px);
  font-weight: 500;
}
@media (width <= 760px) {
  .data-searchBox_ttl {
    font-size: 4.27vw;
  }
}

.data-searchBox_cate {
  width: min(16.11vw, 220px);
  height: auto;
  aspect-ratio: 220/50;
  margin-block-start: auto;
  padding-inline: min(0.88vw,12px);
  border: 1px solid #E0E0E0;
  border-radius: 0;
  background-color: #FFF;
}
@media (width <= 760px) {
  .data-searchBox_cate {
    width: 100%;
    height: auto;
    aspect-ratio: 320/40;
    margin-block-start: 3.2vw;
    padding-inline: 3.2vw;
  }
}

.data-searchBox_radio {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.73vw;
  justify-content: space-between;
}
@media (width <= 760px) {
  .data-searchBox_radio {
    align-items: flex-start;
    flex-direction: column;
  }
}

.data-searchBox_sale {
  display: flex;
  gap: 0 min(1.95vw,25px);
  & label {
    color: #FFF;
    font-size: min(1.17vw,15px);
    font-weight: 500;
  }
  & input[type="radio"] {
    position: relative;
    width: 1em;
    height: 1em;
    border: none;
    border-radius: 50%;
    background-color: #FFF;
    margin-left: .7em;
    vertical-align: -2px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    &:checked:before {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 0.56em;
      height: 0.56em;
      border-radius: 50%;
      background: #000;
      content: '';
    }
  }
}
@media (width <= 760px) {
  .data-searchBox_sale {
    flex-wrap: wrap;
    gap: 1.6vw 6.67vw;
    & label {
      font-size: 4.27vw;
    }
  }
}

.data-searchBox_input {
  display: grid;
  align-items: center;
  gap: 0 min(0.94vw, 10px);
  grid-template-columns: 1fr min(5.86vw, 80px);
  margin-top: min(1.25vw, 16px);
}
@media (width <= 760px) {
  .data-searchBox_input {
    gap: 0;
    grid-template-columns: 100%;
    margin-block-start: 3.2vw;
  }
}

.data-searchBox_word {
  width: min(53.15vw,726px);
  height: 100%;
  padding: 0 min(1.41vw, 15px);
  border: none;
  background-color: #FFF;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, .2) inset;
}
@media (width <= 760px) {
  .data-searchBox_word {
    width: 100%;
    height: auto;
    aspect-ratio: 320/40;
    margin-block-start: 0;
  }
}

.data-searchBox_submit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: auto;
  aspect-ratio: 80 / 50;
  border-radius: 4px;
  background-color: #707070;
  color: #FFF;
  font-weight: 500;
  transition: background .3s ease-out, color .3s ease-out;
}
@media (width <= 760px) {
  .data-searchBox_submit {
    aspect-ratio: 320/40;
    margin-block-start: 6.4vw;
    font-size: 4.27vw;
  }
}
@media (hover: hover) {
  .data-searchBox_submit:hover {
    background-color: #FFF;
    color: #202020;
  }
}

.data-numberBox {
  display: flex;
  width: 100%;
  max-width: 1360px;
  margin-inline: auto;
  padding-block: min(3.91vw,50px);
  padding-inline: 60px;
  &.top {
    justify-content: flex-end;
  }
  &.bottom {
    position: relative;
    justify-content: center;
  }
}
@media (width <= 760px) {
  .data-numberBox {
    align-items: center;
    flex-direction: column;
    padding-block: 13.33vw;
    padding-inline: 2.67vw;
    &.top {
      justify-content: center;
      flex-direction: row;
      gap: 2.66vw 0;
    }
    &.bottom {
      gap: 5.33vw 0;
    }
  }
}

.data-numberBox_number {
  font-size: min(1.46vw,20px);
  font-weight: 500;
  display: none;
}
@media (width <= 760px) {
  .data-numberBox_number {
    font-size: 5.33vw;
  }
}

.data-numberBox_pagination {
  &.prevNext {
    & .page-numbers:not(.prev):not(.next) {
      display: none;
    }
  }
  .bottom & {
    &.number {
      position: absolute;
      top: 50%;
      right: 60px;
      translate: 0 -50%;
    }
  }
}
@media (width <= 760px) {
  .data-numberBox_pagination {
    .bottom & {
      &.number {
        position: static;
        translate: 0;
      }
    }
  }
}

.nav-links {
  display: flex;
  .prevNext & {
    gap: 0 min(3.66vw,50px);
  }
  .number & {
    gap: 0 .2em;
  }
}

.page-numbers {
  font-size: min(1.17vw,16px);
  font-weight: 500;
  min-width: 1.75em;
  text-align: center;
  p& {
    color: #E0E0E0;
  }
  &.prev,&.next {
    position: relative;
    &::before {
      position: absolute;
      top: calc(50% + 1px);
      translate: 0 -50%;
      display: block;
      width: min(0.59vw,8px);
      height: auto;
      aspect-ratio: 8/12;
      background: url(../img/search/icn_pagination_arrow.svg) no-repeat center/cover;
      content: "";
    }
  }
  &.prev {
    padding-inline-start: min(1.02vw,14px);
    &::before {
      left: 0;
      rotate: 180deg;
    }
  }
  &.next {
    padding-inline-end: min(1.02vw,14px);
    &::before {
      right: 0;
    }
  }
  &.current {
    color: #fff;
    background-color: #5AB7BA;
    border-radius: 4px;
  }
}
@media (width <= 760px) {
  .page-numbers {
    font-size: 4.27vw;
    &.prev,&.next {
      &::before {
        width: 2.13vw;
      }
    }
    &.prev {
      padding-inline-start: 3.73vw;
    }
    &.next {
      padding-inline-end: 3.73vw;
    }
  }
}

.screen-reader-text {
  display: none;
}

.data-result {
  & > li {
    border-block-end: 1px solid #F0F0F0;
  }
}
@media (width <= 760px) {
  .data-result {
    & > li {
      border-block-end-width: 2px;
    }
  }
}

.data-resultItem {
  display: grid;
  gap: min(2.34vw,30px) 0;
  grid-template-areas: 'areaB areaA areaC' 'areaB areaD areaD';
  grid-template-columns: min(6.72vw,86px) 1fr min(25.77vw,352px);
  width: 100%;
  max-width: 1360px;
  margin-inline: auto;
  padding-block: min(2.34vw,30px);
  padding-inline: 60px;
}
@media (width <= 760px) {
  .data-resultItem {
    gap: 3.47vw 0;
    grid-template-areas: 'areaB' 'areaA' 'areaC' 'areaD';
    grid-template-columns: 100%;
    padding-block: 8vw;
    padding-inline: 2.67vw;
  }
}

.data-resultItem_ttl {
  grid-area: areaA;
  padding-inline-end: min(3.66vw, 50px);
  & a,p {
    font-size: min(1.88vw,24px);
    font-weight: 500;
    line-height: 1.67;
    transition: color 0.3s ease-out;
  }
}
@media (width <= 760px) {
  .data-resultItem_ttl {
    padding-inline-end: 0;
    & a {
      font-size: 4.8vw;
    }
  }
}
@media (hover: hover) {
  .data-resultItem_ttl {
    & a:hover {
      color: var(--hover-color);
      text-decoration: underline;
    }
  }
}

.data-resultItem_label {
  grid-area: areaB;
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(4.39vw,60px);
  height: auto;
  aspect-ratio: 1;
  margin-block-start: min(0.73vw,10px);
  margin-inline-end: min(1.9vw,26px);
  padding-inline: min(0.95vw,13px);
  background-color: #707070;
  color: #FFF;
  font-size: min(1.17vw,16px);
  font-weight: 600;
  line-height: 1.31;
  text-align: center;
}
@media (width <= 760px) {
  .data-resultItem_label {
    width: 25.33vw;
    height: auto;
    aspect-ratio: 95/38;
    margin-block-start: 0;
    margin-inline-end: 0;
    padding-inline: 0;
    font-size: 4.27vw;
  }
}

.data-resultItem_number {
  grid-area: areaC;
  display: grid;
  gap: 0 min(2.42vw,31px);
  grid-template-columns: 33px 1fr;
  padding-inline-start: min(3.66vw,50px);
  border-inline-start: 1px solid #D0D0D0;
  font-size: min(1.46vw,20px);
  line-height: 1.6;
  & span {
    font-size: min(1.17vw,16px);
    line-height: 1.9;
    white-space: nowrap;
  }
}
@media (width <= 760px) {
  .data-resultItem_number {
    gap: 0 8.53vw;
    grid-template-columns: 10.67vw 1fr;
    padding-block-start: 4.27vw;
    padding-inline-start: 0;
    border-block-start: 1px solid #D0D0D0;
    border-inline-start: none;
    font-size: 4.27vw;
    & span {
      font-size: inherit;
      line-height: inherit;
    }
  }
}

.data-resultItem_pdfs {
  grid-area: areaD;
  display: flex;
  & ul {
    display: flex;
    flex-wrap: wrap;
    gap: min(1.17vw,15px);
  }
}
@media (width <= 760px) {
  .data-resultItem_pdfs {
    flex-direction: column;
    gap: 3.2vw 0;
    margin-block-start: 2.67vw;
    & ul {
      gap: 3.2vw 2.67vw;
    }
    & li {
      min-width: calc((100% - 2.67vw)/2);
    }
  }
}

.data-resultItem_pdf {
  position: relative;
  display: inline-block;
  width: auto;
  padding-block: min(0.78vw,10px) min(0.94vw,12px);
  padding-inline: min(1.25vw,16px) min(4.38vw,56px);
  border-radius: min(0.23vw,3px);
  background-color: #F4F7F8;
  font-size: min(1.17vw,16px);
  font-weight: 600;
  transition: background 0.3s ease-out,color 0.3s ease-out;
  &::after {
    position: absolute;
    top: 50%;
    right: min(1.25vw,16px);
    translate: 0 -50%;
    display: block;
    width: min(1.56vw,20px);
    height: auto;
    aspect-ratio: 1;
    background: url(/cms/wp-content/themes/ndc/assets/img/common/icn_link_pdf.svg) no-repeat center/cover;
    content: "";
  }
}
@media (width <= 760px) {
  .data-resultItem_pdf {
    width: 100%;
    padding-block: 2.93vw;
    padding-inline: 2.67vw 10.67vw;
    border-radius: 0.8vw;
    font-size: 3.73vw;
    &::after {
      right: 2.67vw;
      width: 5.33vw;
    }
  }
}
@media (hover: hover) {
  .data-resultItem_pdf:hover {
    background-color: #78BFC1;
    color: #FFF;
  }
}

.data-resultItem_zip {
  flex-shrink: 0;
  margin-inline-start: auto;
}

.data-resultItem_all {
  position: relative;
  display: inline-block;
  width: auto;
  padding-block: min(0.63vw,8px) min(0.78vw,10px);
  padding-inline: min(1.56vw,20px) min(3.28vw,42px);
  border-radius: 9999px;
  background-color: #F4F7F8;
  font-size: min(1.02vw,14px);
  font-weight: 600;
  transition: background 0.3s ease-out,color 0.3s ease-out;
  &::after {
    position: absolute;
    top: 50%;
    right: min(1.17vw,15px);
    translate: 0 -50%;
    display: block;
    width: min(1.41vw,18px);
    height: auto;
    aspect-ratio: 18/15;
    background-color: #202020;
    mask: url(/cms/wp-content/themes/ndc/assets/img/common/icn_link_dl.svg) no-repeat center/cover;
    transition: background 0.3s ease-out;
    content: "";
  }
}
@media (width <= 760px) {
  .data-resultItem_all {
    padding-block: 2.13vw;
    padding-inline: 5.6vw 11.47vw;
    border-radius: 9999px;
    font-size: 3.73vw;
    &::after {
      right: 4vw;
      width: 4.8vw;
    }
  }
}
@media (hover: hover) {
  .data-resultItem_all:hover {
    background-color: #78BFC1;
    color: #FFF;
    &::after {
      background-color: #FFF;
    }
  }
}