@layer component {
  .p-ir-library-head {
      display: flex;
      justify-content: space-between;
      margin: calc(8 * var(--base-unit)) auto 0;
      padding: calc(4 * var(--base-unit)) calc(5 * var(--base-unit));
      width: var(--width-contents);
      border: 1px solid #BEBEBE;
      box-sizing: border-box;
  }
  @media screen and (max-width: 767px) {
      .p-ir-library-head {
          flex-direction: column;
          margin-top: calc(4 * var(--base-unit));
          padding: calc(3 * var(--base-unit)) calc(1.6 * var(--base-unit));
      }
  }
  .p-ir-library-head__container {
      width: calc(50% - 20px);
  }
  @media screen and (max-width: 767px) {
      .p-ir-library-head__container {
          width: 100%;
      }
      .p-ir-library-head__container:nth-of-type(2) {
          margin-top: calc(4 * var(--base-unit));
      }
  }
  .p-ir-library-head .p-btn01 a {
      margin-left: 0;
  }
  .p-ir-library-head .p-link01__list li {
      padding-left: 0;
      padding-bottom: calc(2.3 * var(--base-unit));
  }
  @media screen and (max-width: 767px) {
      .p-ir-library-head .p-link01__list li {
          padding-bottom: calc(1.6 * var(--base-unit));
      }
  }
  .p-ir-library-head__label {
      margin-top: calc(1.2 * var(--base-unit));
      padding: calc(0.4 * var(--base-unit)) calc(0.8 * var(--base-unit)) calc(0.5 * var(--base-unit));
      width: -moz-fit-content;
      width: fit-content;
      border: 1px solid #BEBEBE;
      font-weight: 400;
      font-size: calc(1.4 * var(--base-unit));
      letter-spacing: 0.05em;
      line-height: 1;
      color: #333;
  }
  .p-ir-library-list {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      -moz-column-gap: calc(2.4 * var(--base-unit));
           column-gap: calc(2.4 * var(--base-unit));
      margin-inline: auto;
      padding-block: calc(10 * var(--base-unit)) calc(12 * var(--base-unit));
      width: var(--width-contents);
  }
  @media screen and (max-width: 767px) {
      .p-ir-library-list {
          display: block;
          padding-block: calc(5 * var(--base-unit));
      }
  }
  .p-ir-library-list__item {
      position: relative;
      display: grid;
      grid-template-rows: subgrid;
      grid-row: span 4;
      gap: 0;
      padding-bottom: calc(8.2 * var(--base-unit));
      border-bottom: 2px solid #D5D5D5;
  }
  @media print, screen and (min-width: 768px) {
      .p-ir-library-list__item:nth-of-type(n+4) {
          margin-top: calc(7.5 * var(--base-unit));
      }
  }
  @media screen and (max-width: 767px) {
      .p-ir-library-list__item {
          display: block;
          padding-bottom: calc(5.6 * var(--base-unit));
      }
      .p-ir-library-list__item:not(:first-of-type) {
          margin-top: calc(3.5 * var(--base-unit));
      }
  }
  .p-ir-library-list__item > *:not(.p-ir-library-list__img, .p-ir-library-list__link-right) {
      box-sizing: border-box;
      padding-inline: calc(2 * var(--base-unit));
  }
  .p-ir-library-list__item a {
      will-change: auto;
  }
  @media screen and (max-width: 767px) {
      .p-ir-library-list .p-txt01 > p {
          font-size: calc(1.4 * var(--base-unit));
          line-height: 2.0571428571;
      }
  }
  .p-ir-library-list__link-img {
      display: grid;
      justify-items: center;
      align-items: center;
      width: 100%;
      height: 100%;
      aspect-ratio: 384/214;
      background: linear-gradient(0deg, rgb(247, 247, 247) 0%, rgb(252, 249, 249) 10%, rgb(226, 226, 226) 100%);
  }
  @media screen and (max-width: 767px) {
      .p-ir-library-list__link-img {
          aspect-ratio: 355/187;
      }
  }
  .p-ir-library-list__img {
      width: 33.8541666667%;
  }
  .p-ir-library-list__img img {
      width: 100%;
      height: auto;
      box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.16);
  }
  .p-ir-library-list__item--2 .p-ir-library-list__img {
      width: 67%;
  }
  
  .p-ir-library-list__item--6 .p-ir-library-list__img {
      width: 41.6666666667%;
  }
  .p-ir-library-list__link {
      font-size: calc(2 * var(--base-unit));
      will-change: auto;
  }
  .p-ir-library-list__link-right {
      position: absolute;
      bottom: calc(4 * var(--base-unit));
      right: calc(2 * var(--base-unit));
      display: block;
      margin-top: 0;
      width: -moz-fit-content;
      width: fit-content;
  }
  @media screen and (max-width: 767px) {
      .p-ir-library-list__link-right {
          bottom: calc(1.8 * var(--base-unit));
      }
  }
  .p-ir-library-list__link-right a {
      display: block;
  }
  .p-ir-library-list .p-link01__list li {
      padding-inline: 0;
      padding-bottom: calc(1.8 * var(--base-unit));
  }
}