@layer page {
  .ir-body {
    margin-top: 5rem;
    padding-bottom: 7.5rem;
  }
  @media screen and (max-width: 767px) {
    .ir-body {
      margin-top: 10.2564102564vw;
      padding-bottom: 20.5128205128vw;
    }
  }
  .ir-sec {
    border-top: 1px solid var(--accent);
    padding-top: 3.125rem;
  }
  @media screen and (max-width: 767px) {
    .ir-sec {
      padding-top: 2.5rem;
    }
  }
  .ir-sec + .ir-sec {
    margin-top: 6.875rem;
  }
  @media screen and (max-width: 767px) {
    .ir-sec + .ir-sec {
      margin-top: 5rem;
    }
  }
  .ir-sec .p-posts__tax span {
    background: var(--sub);
  }
  .ir-hdr {
    --my-accent: var(--accent);
    --my-color: var(--main);
  }
  @media screen and (min-width: 768px) {
    .ir-hdr.is-row {
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
  }
  @media screen and (min-width: 768px) {
    .ir-hdr .p-btn-b {
      min-width: 11rem;
    }
  }
  .ir-hdr__ttl {
    color: var(--my-accent);
    font-weight: bold;
  }
  @media screen and (min-width: 768px) {
    .ir-hdr__ttl {
      margin-bottom: 0.6em;
      font-size: 0.875rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-hdr__ttl {
      margin-bottom: 0.4em;
      font-size: 3.5897435897vw;
    }
  }
  .ir-hdr__en {
    font-family: var(--en-sans);
    line-height: 1.02;
    font-size: 3rem;
  }
  @media screen and (max-width: 767px) {
    .ir-hdr__en {
      font-size: 8.2051282051vw;
    }
  }
  @media screen and (min-width: 768px) {
    .ir-hdr__text {
      text-align: right;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-hdr__text {
      margin-top: 10.2564102564vw;
    }
  }
  .ir-sttl {
    font-size: 1.5rem;
    font-weight: 500;
    padding-left: 1.25rem;
    border-left: 1px solid var(--accent);
  }
  @media screen and (max-width: 767px) {
    .ir-sttl {
      font-size: 5.1282051282vw;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-news__body {
      padding-top: 5.1282051282vw;
    }
  }
  @media screen and (min-width: 768px) {
    .ir-news__row {
      display: grid;
      grid-template-columns: 19.375rem 1fr;
      gap: 1.875rem;
    }
  }
  .ir-news__btn-wrap {
    margin-top: 1.875rem;
    display: flex;
    flex-direction: column;
  }
  @media screen and (min-width: 768px) {
    .ir-news__btn-wrap {
      gap: 1.25rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-news__btn-wrap {
      margin-top: 10.2564102564vw;
      align-items: center;
      gap: 5.1282051282vw;
    }
  }
  .ir-news__btn-wrap a {
    text-align: center;
  }
  @media screen and (min-width: 768px) {
    .ir-news__btn-wrap a {
      width: 12.5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-news__btn-wrap a {
      padding-left: 2.5641025641vw;
      padding-right: 2.5641025641vw;
      width: 51.2820512821vw;
    }
  }
  .ir-news__btn-wrap .p-btn-b__icon,
  .ir-news__btn-wrap .p-btn-b__icon-blank {
    right: 1rem;
  }
  .ir-box {
    background: var(--sub);
    margin-top: 3.125rem;
    padding: 5rem;
  }
  @media screen and (max-width: 767px) {
    .ir-box {
      margin-top: 10.2564102564vw;
      padding: 10.2564102564vw var(--sp-pad);
    }
  }
  .ir-settlement {
    margin-top: 2.25rem;
  }
  @media screen and (min-width: 768px) {
    .ir-settlement {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 1.25rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-settlement {
      display: flex;
      flex-direction: column;
      gap: 2.5641025641vw;
    }
  }
  .ir-settlement > div {
    background: #fff;
    padding: 1.25rem;
  }
  @media screen and (max-width: 767px) {
    .ir-settlement > div {
      padding: 7.6923076923vw 5.1282051282vw;
    }
  }
  .ir-settlement dt {
    text-align: center;
    color: var(--accent);
    font-family: var(--en-sans);
    padding-bottom: 1.25rem;
  }
  @media screen and (max-width: 767px) {
    .ir-settlement dt {
      font-size: 4.1025641026vw;
      padding-bottom: 2.5641025641vw;
    }
  }
  .ir-settlement ul {
    border-bottom: 1px solid #DFE5EA;
  }
  .ir-settlement li {
    font-size: 0.875rem;
    border-top: 1px solid #DFE5EA;
    padding: 1rem 0;
  }
  .ir-settlement .is-pdf {
    width: 1rem;
    margin: 0 0 0 0.3125rem;
  }
  .ir-plan {
    margin-top: 5rem;
  }
  @media screen and (max-width: 767px) {
    .ir-plan {
      margin-top: 15.3846153846vw;
    }
  }
  .ir-plan__link {
    aspect-ratio: 1280/280;
    background: url("../../../img/page/ir/plan_bg.jpg") 100% 0/cover no-repeat;
    color: #fff;
    padding: 0 2.5rem;
    gap: 3.375rem;
    transition: 0.25s filter;
  }
  @media screen and (min-width: 768px) {
    .ir-plan__link {
      display: flex;
      justify-content: flex-end;
      align-items: center;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-plan__link {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      aspect-ratio: 360/150;
      padding: 5.1282051282vw;
      gap: 4.1025641026vw;
      background-image: url("../../../img/page/ir/plan_bg_sp.jpg");
    }
  }
  @media (hover: hover) {
    .ir-plan__link:hover {
      filter: brightness(120%);
    }
  }
  .ir-plan__label {
    font-size: 1.5rem;
  }
  @media screen and (max-width: 767px) {
    .ir-plan__label {
      font-size: 4.1025641026vw;
    }
  }
  .ir-nav {
    margin-top: 3.75rem;
  }
  @media screen and (max-width: 767px) {
    .ir-nav {
      margin-top: 7.6923076923vw;
    }
  }
  .ir-nav__list {
    display: grid;
    line-height: 1.4285714286;
  }
  @media screen and (min-width: 768px) {
    .ir-nav__list {
      font-size: 1.125rem;
      grid-template-columns: repeat(3, 1fr);
      gap: 0 2.5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-nav__list {
      font-size: 3.5897435897vw;
      grid-template-columns: repeat(2, 1fr);
      gap: 0 6.1538461538vw;
    }
  }
  .ir-nav__list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #C9CACE;
    transition: 0.25s border;
  }
  @media screen and (min-width: 768px) {
    .ir-nav__list a {
      padding: 1.375rem 0;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-nav__list a {
      height: 15.3846153846vw;
    }
  }
  @media (hover: hover) {
    .ir-nav__list a:hover {
      border-bottom-color: var(--sub);
    }
  }
  .ir-nav__list .p-icon-arrow {
    background-size: contain;
  }
  .ir-calendar__body {
    margin-top: 5rem;
  }
  @media screen and (max-width: 767px) {
    .ir-calendar__body {
      margin-top: 10.2564102564vw;
    }
  }
  @media screen and (min-width: 768px) {
    .ir-calendar__row {
      display: grid;
      grid-template-columns: 19.375rem 1fr;
      gap: 1.875rem;
      margin-bottom: 5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-calendar__row {
      display: flex;
      flex-direction: column;
      gap: 5.1282051282vw;
      margin-bottom: 20.5128205128vw;
    }
  }
  .ir-schedule {
    margin-top: 2.25rem;
  }
  @media screen and (min-width: 768px) {
    .ir-schedule {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 1.25rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-schedule {
      display: flex;
      flex-direction: column;
      gap: 5.1282051282vw;
    }
  }
}