  @charset "UTF-8";
/*////////////////////////////////////////////////////

    .ÔO¶¨

////////////////////////////////////////////////////*/
/*////////////////////////////////////////////////////
    ¥Ú©`¥¸¹ÌÓÐ¤Î¥¹¥¿¥¤¥ë
////////////////////////////////////////////////////*/
.p-irLibrary01 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  container-type: inline-size;
  border-top: 1px solid #C8D2DC;
}
.p-irLibrary01_row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  border-bottom: 1px solid #C8D2DC;
}
@container (min-width: 640px) {
  .p-irLibrary01_row {
    grid-template-columns: 16rem 1fr;
  }
}
.p-irLibrary01_hl {
  background-color: #F5FAFF;
  padding: 1.5rem;
  font-weight: bold;
}
.p-irLibrary01_data {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 1.5rem;
}
.p-irLibrary01_data .cmn_btn01 {
  font-size: 1.6rem;
}

.p-irLibrary02 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5rem;
}
@media print, screen and (min-width: 600px) {
  .p-irLibrary02 {
    grid-template-columns: 1fr 1fr;
    gap: 8rem 3rem;
  }
}
.p-irLibrary02:nth-child(n+2) {
  margin-top: 5rem;
}
@media print, screen and (min-width: 600px) {
  .p-irLibrary02:nth-child(n+2) {
    margin-top: 8rem;
  }
}

.p-irLibrary-list01 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.5em;
}
.p-irLibrary-list02 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.5em;
}
@media print, screen and (min-width: 600px) {
  .p-irLibrary-list02 {
    grid-template-columns: 1fr 1fr;
  }
}

.p-irCalendar {
  table-layout: fixed;
  width: 920px;
  border: 1px solid #c8d2dc;
}
@container (min-width: 800px) {
  .p-irCalendar {
    width: 100%;
  }
}
.p-irCalendar_wp {
  container-type: inline-size;
}
@media print, screen and (min-width: 960px) {
  .p-irCalendar_wp {
    overflow: unset;
  }
}
.p-irCalendar_inner {
  overflow-x: scroll;
}
@container (min-width: 800px) {
  .p-irCalendar_inner {
    overflow-x: visible;
  }
}
.p-irCalendar td,
.p-irCalendar th {
  border: 1px solid #c8d2dc;
  text-align: center;
  vertical-align: middle;
  box-sizing: border-box;
  padding: 1rem 0.2rem;
  font-size: 1.3rem;
  line-height: 1.2;
}
.p-irCalendar > thead > tr:nth-child(1) > th {
  background-color: #167BC1;
  color: #fff;
  font-weight: 500;
}
.p-irCalendar > thead > tr > th {
  vertical-align: baseline;
  background-color: #F5FAFF;
}
.p-irCalendar > thead > tr > th > span {
  font-size: 1.6rem;
  font-weight: 500;
}
.p-irCalendar > tbody > tr > th {
  font-weight: 500;
  background-color: #edf2f7;
}

.p-irYears {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 1rem 2rem;
  margin-bottom: clamp(3rem, 8vw, 6rem);
}
.p-irYears_item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
}
.p-irYears .txt {
  color: #0068af;
}
.p-irYears .arrow {
  fill: none;
  stroke: #0068af;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 13px;
  height: 13px;
  transform: rotate(90deg);
}

.p-irFaq_q, .p-irFaq_a {
  display: flex;
  gap: 1rem;
  justify-content: flex-start;
  align-items: flex-start;
}
.p-irFaq_q_ico, .p-irFaq_a_ico {
  width: 5rem;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.1;
  font-size: 2.1rem;
  font-weight: bold;
  border-radius: 100%;
}
.p-irFaq_q_cnt, .p-irFaq_a_cnt {
  align-self: center;
  width: calc(100% - 6rem);
}
.p-irFaq_q {
  font-weight: bold;
}
.p-irFaq_q:nth-child(n+2) {
  margin-top: 3rem;
}
.p-irFaq_q_ico {
  background-color: #167bc1;
  color: #fff;
}
.p-irFaq_a {
  margin-top: 1rem;
  padding: 1rem;
  background-color: #F5FAFF;
}
.p-irFaq_a_ico {
  box-sizing: border-box;
  border: 1px solid #c8d2dc;
  background-color: #fff;
  color: #167bc1;
}

.pglink {
  margin-top: -60px;
  padding-top: 60px;
}
@media print, screen and (min-width: 960px) {
  .pglink {
    margin-top: -80px;
    padding-top: 80px;
  }
}
/*# sourceMappingURL=custom.css.map */
