@layer page {
  @media screen and (min-width: 768px) {
    .p-breadcrumb {
      font-size: 0.75rem;
    }
  }
  .p-breadcrumb__list > li:not(:last-child)::after {
    top: 0.5rem;
  }
  .ir-link-switch {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 2.5rem;
    border: 1px solid var(--accent);
    border-bottom: 0;
    font-size: 1.125rem;
  }
  @media screen and (max-width: 767px) {
    .ir-link-switch {
      font-size: 0.875rem;
    }
  }
  .ir-link-switch > li:not(:last-child) {
    border-right: 1px solid var(--accent);
  }
  .ir-link-switch a {
    display: block;
    text-align: center;
    padding: 1.875rem;
    transition: 0.25s;
  }
  @media screen and (max-width: 767px) {
    .ir-link-switch a {
      min-height: 16.4102564103vw;
      padding: 0;
      line-height: 1.2857142857;
      display: flex;
      align-items: center;
      justify-content: center;
    }
  }
  .ir-link-switch a[aria-current=page] {
    background: var(--accent);
    color: #fff;
  }
  @media (hover: hover) {
    .ir-link-switch a:hover {
      background: var(--accent);
      color: #fff;
    }
  }
  .ir-local-nav {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
    gap: 0.625rem;
  }
  @media screen and (max-width: 767px) {
    .ir-local-nav {
      font-size: 1rem;
      display: flex;
      flex-direction: column;
      margin-bottom: 7.6923076923vw;
      gap: 2.5641025641vw;
    }
  }
  .ir-local-nav > li {
    border: 1px solid #C9CACE;
  }
  .ir-local-nav .p-icon-arrow {
    rotate: 90deg;
  }
  .ir-local-nav a {
    padding: 1.875rem 1.375rem 1.875rem 1.875rem;
    transition: 0.25s;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  @media screen and (max-width: 767px) {
    .ir-local-nav a {
      min-height: 16.4102564103vw;
      line-height: 1.2857142857;
      padding: 5.641025641vw;
    }
  }
  .ir-local-nav a[aria-current=page] {
    background: var(--accent);
    color: #fff;
    border-color: var(--accent);
  }
  @media (hover: hover) {
    .ir-local-nav a:hover {
      background: var(--accent);
      color: #fff;
    }
  }
  .ir-body {
    margin-top: 3.75rem;
    padding-bottom: 7.5rem;
  }
  @media screen and (max-width: 767px) {
    .ir-body {
      margin-top: 10.2564102564vw;
      padding-bottom: 20.5128205128vw;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-body.is-publication {
      margin-top: calc(10.2564102564vw - 1.5rem);
    }
  }
  .ir-body .p-posts {
    margin-top: 3.75rem;
    border-top: 1px solid #DFE5E9;
  }
  @media screen and (max-width: 767px) {
    .ir-body .p-posts {
      margin-top: 10.2564102564vw;
    }
  }
  .ir-body .p-posts__tax span {
    background: var(--sub);
  }
  .ir-hdr {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 3.75rem;
  }
  @media screen and (max-width: 767px) {
    .ir-hdr {
      margin-bottom: 6.4102564103vw;
      gap: 5.641025641vw;
    }
  }
  @media screen and (min-width: 768px) {
    .ir-filter {
      display: flex;
      flex-direction: row;
      justify-content: flex-end;
      gap: 1.25rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-filter {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 5.1282051282vw;
    }
    .ir-filter.is-one {
      width: 100%;
      display: flex;
      justify-content: flex-end;
      gap: 0;
    }
  }
  .ir-filter__item {
    appearance: none;
    border: 1px solid #C9CACE;
    background: url("../../../img/icon/arrow_btm.svg") calc(100% - 1rem) 50%/0.625rem auto no-repeat;
    font-size: 0.875rem;
    padding-left: 1.25rem;
    padding-right: 1.875rem;
    box-sizing: border-box;
  }
  @media screen and (min-width: 768px) {
    .ir-filter__item {
      width: 12.5rem;
      height: 3rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-filter__item {
      width: 42.3076923077vw;
      max-width: 100%;
      height: 12.3076923077vw;
      font-size: 3.3333333333vw;
      background-position: calc(100% - 3.5897435897vw);
    }
  }
  .ir-nav {
    background: var(--sub);
    padding: 3.75rem 0 5rem 0;
  }
  @media screen and (max-width: 767px) {
    .ir-nav {
      padding: 7.6923076923vw 0 12.8205128205vw 0;
    }
  }
  .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;
    }
  }
  .ir-nav__list a[aria-current=page] {
    border-bottom-color: var(--accent);
  }
  .ir-nav__list a[aria-current=page] .p-icon-arrow {
    display: none;
  }
  @media (hover: hover) {
    .ir-nav__list a:hover {
      border-bottom-color: var(--accent);
    }
  }
  .ir-nav__list .p-icon-arrow {
    background-size: contain;
  }
  .ir-doc {
    display: flex;
    flex-direction: column;
    gap: 4.0625rem;
  }
  @media screen and (max-width: 767px) {
    .ir-doc {
      gap: 11.5384615385vw;
    }
  }
  .ir-sec:not(:last-child) {
    padding-bottom: 4.375rem;
    border-bottom: 1px solid var(--accent);
  }
  @media screen and (max-width: 767px) {
    .ir-sec:not(:last-child) {
      padding-bottom: 12.8205128205vw;
    }
  }
  .ir-sec-a {
    margin-top: 5rem;
  }
  @media screen and (max-width: 767px) {
    .ir-sec-a {
      margin-top: 12.8205128205vw;
    }
  }
  .ir-sec-a__body {
    margin-top: 1.875rem;
  }
  @media screen and (max-width: 767px) {
    .ir-sec-a__body {
      margin-top: 5.1282051282vw;
    }
  }
  .ir-sec-b {
    margin-top: 3.125rem;
  }
  @media screen and (max-width: 767px) {
    .ir-sec-b {
      margin-top: 9.2307692308vw;
    }
  }
  .ir-sec-b__body {
    margin-top: 1.875rem;
  }
  @media screen and (max-width: 767px) {
    .ir-sec-b__body {
      margin-top: 5.1282051282vw;
    }
  }
  .ir-sec-c:not(:last-child) {
    padding-bottom: 6.875rem;
    border-bottom: 1px solid var(--accent);
  }
  @media screen and (max-width: 767px) {
    .ir-sec-c:not(:last-child) {
      padding-bottom: 12.8205128205vw;
    }
  }
  .ir-mt {
    margin-top: 1.875rem;
  }
  @media screen and (max-width: 767px) {
    .ir-mt {
      margin-top: 6.6666666667vw;
    }
  }
  .ir-mt-a {
    margin-top: 3.75rem;
  }
  @media screen and (max-width: 767px) {
    .ir-mt-a {
      margin-top: 10.2564102564vw;
    }
  }
  .ir-line {
    margin: 3.125rem 0;
    border: 0;
    border-top: 1px solid rgba(5, 12, 31, 0.2);
  }
  @media screen and (max-width: 767px) {
    .ir-line {
      margin: 10.2564102564vw 0;
    }
  }
  .ir-sttl {
    font-size: 2rem;
    font-weight: 500;
    margin-bottom: 2.5rem;
  }
  @media screen and (max-width: 767px) {
    .ir-sttl {
      font-size: 7.1794871795vw;
      margin-bottom: 9.2307692308vw;
    }
  }
  .ir-sttl-a {
    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-a {
      font-size: 5.1282051282vw;
    }
  }
  .ir-sttl-b {
    font-size: 2.5rem;
    font-weight: 500;
    margin-top: 3.75rem;
    margin-bottom: 3.75rem;
  }
  .ir-sttl-b span {
    font-size: 0.875rem;
    font-weight: normal;
  }
  @media screen and (max-width: 767px) {
    .ir-sttl-b {
      margin-top: 10.2564102564vw;
      margin-bottom: 10.2564102564vw;
      font-size: 7.1794871795vw;
    }
    .ir-sttl-b span {
      display: block;
      margin-top: 1.0256410256vw;
      font-size: 3.0769230769vw;
    }
  }
  .ir-text {
    font-size: 1.125rem;
  }
  @media screen and (max-width: 767px) {
    .ir-text {
      font-size: 4.1025641026vw;
    }
  }
  .ir-text a {
    text-decoration: underline;
  }
  @media (hover: hover) {
    .ir-text a:hover {
      text-decoration: none;
    }
  }
  .ir-text ul > li {
    text-indent: -1em;
    margin-left: 1em;
  }
  @media screen and (max-width: 767px) {
    .ir-text-a {
      font-size: 4.1025641026vw;
    }
  }
  .ir-text-a a {
    text-decoration: underline;
  }
  @media (hover: hover) {
    .ir-text-a a:hover {
      text-decoration: none;
    }
  }
  .ir-text-a ul > li {
    text-indent: -1em;
    margin-left: 1em;
  }
  .ir-btn-wrap {
    margin-top: 5rem;
    display: flex;
    justify-content: center;
  }
  @media screen and (max-width: 767px) {
    .ir-btn-wrap {
      margin-top: 10.2564102564vw;
    }
  }
  .ir-btn-wrap .p-btn-a {
    width: 20rem;
  }
  @media screen and (max-width: 767px) {
    .ir-btn-wrap .p-btn-a {
      width: 51.2820512821vw;
      font-size: 3.5897435897vw;
    }
  }
  .ir-table-wrap {
    overflow: auto;
  }
  @media screen and (max-width: 767px) {
    .ir-table-wrap {
      margin-right: calc(var(--sp-pad) * -1);
    }
  }
  .ir-table {
    line-height: 1.5;
    width: 100%;
  }
  @media screen and (max-width: 767px) {
    .ir-table {
      font-size: 4.1025641026vw;
    }
  }
  .ir-table th, .ir-table td {
    border: 1px solid #DFE5EA;
    padding: 1rem 1.25rem;
  }
  @media screen and (max-width: 767px) {
    .ir-table th, .ir-table td {
      padding: 3.0769230769vw 3.0769230769vw;
    }
  }
  .ir-table th {
    background: #F0F4F7;
    font-weight: 500;
    border-color: #c3ced7;
  }
  .ir-table thead th {
    background: #DFE5EA;
  }
  @media screen and (max-width: 767px) {
    .ir-table thead th {
      padding-right: 0;
      padding-left: 0;
    }
  }
  .ir-table tbody th {
    text-align: left;
  }
  @media screen and (min-width: 768px) {
    .ir-table.is-state {
      width: 40rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-table.is-state {
      width: 100%;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-table.is-m-hareholders {
      width: 230.7692307692vw;
    }
  }
  .ir-table.is-m-hareholders thead th {
    width: 50%;
  }
  .ir-table.is-m-hareholders thead th:nth-child(2) {
    width: 25%;
  }
  @media screen and (max-width: 767px) {
    .ir-table.is-distribution {
      width: 241.0256410256vw;
    }
  }
  .ir-table.is-distribution thead th:not(:first-child) {
    width: 16.796875%;
  }
  @media screen and (max-width: 767px) {
    .ir-table.is-stock {
      border: 1px solid #DFE5EA;
      border-top: 0;
    }
    .ir-table.is-stock * {
      display: block;
      border: 0;
    }
    .ir-table.is-stock th {
      border-top: 1px solid #DFE5EA;
      border-bottom: 1px solid #DFE5EA;
    }
    .ir-table.is-stock th, .ir-table.is-stock td {
      padding-left: 3.5897435897vw;
      padding-right: 3.5897435897vw;
    }
  }
  @media screen and (min-width: 768px) {
    .ir-table.is-stock thead th:nth-child(1) {
      width: 33.359375%;
    }
  }
  .ir-table-note {
    font-size: 0.75rem;
    color: #81858E;
    margin-top: 1.25rem;
  }
  .ir-place-holder {
    background: var(--sub);
    height: 20rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  @media screen and (max-width: 767px) {
    .ir-place-holder {
      height: 82.0512820513vw;
      font-size: 3.5897435897vw;
    }
  }
  @media screen and (min-width: 768px) {
    .ir-link-items {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 0.625rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-link-items {
      font-weight: 500;
      display: flex;
      flex-direction: column;
      gap: 2.5641025641vw;
      font-size: 4.1025641026vw;
    }
  }
  .ir-link-items a {
    border: 1px solid #C9CACE;
    display: grid;
    align-items: center;
    grid-template-columns: 1fr 1rem;
    gap: 1rem;
    padding: 1.25rem;
    transition: 0.25s color;
  }
  @media (hover: hover) {
    .ir-link-items a:hover {
      color: var(--accent);
    }
  }
  @media screen and (min-width: 768px) {
    .ir-graph-items {
      margin-top: 5rem;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-graph-items {
      display: flex;
      flex-direction: column;
      gap: 12.8205128205vw;
    }
  }
  .ir-graph-note {
    margin-top: 6.875rem;
    padding-top: 2.5rem;
    border-top: 1px solid rgba(5, 12, 31, 0.2);
    font-size: 0.75rem;
    color: #81858E;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
  }
  @media screen and (max-width: 767px) {
    .ir-graph-note {
      margin-top: 15.3846153846vw;
      padding-top: 2.25rem;
    }
  }
  .ir-graph-note__indent p,
  .ir-graph-note__indent li {
    margin-left: 1em;
    text-indent: -1em;
  }
  .ir-business-row {
    border: 1px solid var(--accent);
  }
  @media screen and (min-width: 768px) {
    .ir-business-row {
      margin-bottom: 7.5rem;
      padding: 4.375rem;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 4.375rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-business-row {
      margin-bottom: 19.2307692308vw;
      display: flex;
      flex-direction: column;
      gap: 10.2564102564vw;
      padding: 7.6923076923vw 6.4102564103vw 10.2564102564vw 6.4102564103vw;
    }
  }
  .ir-business-text {
    display: flex;
    align-items: center;
    font-size: 1.75rem;
    font-weight: 500;
  }
  @media screen and (max-width: 767px) {
    .ir-business-text {
      font-size: 4.6153846154vw;
    }
  }
  @media screen and (min-width: 768px) {
    .ir-business-row-2 {
      margin-bottom: 7.5rem;
      display: grid;
      grid-template-columns: 40rem 1fr;
      gap: 5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-business-row-2 {
      display: flex;
      flex-direction: column-reverse;
      gap: 12.8205128205vw;
      margin-top: 7.6923076923vw;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-business-graph-2 {
      text-align: center;
    }
    .ir-business-graph-2 img {
      width: 79.4871794872vw;
    }
  }
  .ir-business-items {
    display: flex;
    flex-direction: column;
    gap: 0.9375rem;
  }
  @media screen and (max-width: 767px) {
    .ir-business-items {
      gap: 2.5641025641vw;
    }
  }
  .ir-business-item {
    background-color: rgba(240, 244, 247, 0.5);
    padding: 2.5rem 0;
    display: grid;
    grid-template-columns: 9.375rem 1fr;
    gap: 2.5rem;
  }
  @media screen and (max-width: 767px) {
    .ir-business-item {
      padding: 6.4102564103vw 0;
      grid-template-columns: 28.2051282051vw 1fr;
      gap: 6.1538461538vw;
    }
  }
  .ir-business-item__box {
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 1px solid rgba(5, 12, 31, 0.2);
  }
  .ir-business-item__text {
    line-height: 1.6;
  }
  @media screen and (min-width: 768px) {
    .ir-business-item__text {
      padding-right: 3.125rem;
    }
  }
  @media screen and (max-width: 767px) {
    .ir-business-item__text {
      padding-right: 5.1282051282vw;
      font-size: 3.5897435897vw;
    }
  }
  .ir-business-item__num {
    --my-color: #033788;
    color: var(--my-color);
    text-align: center;
    line-height: 1.2;
  }
  .ir-business-item__num dt {
    letter-spacing: 0.06em;
  }
  .ir-business-item__num dd {
    font-size: 2.5rem;
    font-family: var(--en-sans);
  }
  .ir-business-item__num dd span {
    margin-left: 0.1em;
    display: inline-block;
    font-size: 1.5rem;
  }
  .ir-business-item__dl {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    line-height: 1.5;
  }
  .ir-business-item__dl dt {
    font-size: 1.125rem;
    font-weight: 500;
  }
  @media screen and (max-width: 767px) {
    .ir-business-item__dl dt {
      font-size: 4.1025641026vw;
    }
  }
  .ir-business-item__dl dd {
    font-size: 0.875rem;
    margin-top: 0.375rem;
  }
  @media screen and (max-width: 767px) {
    .ir-business-item__dl dd {
      font-size: 3.5897435897vw;
    }
  }
  .ir-business-item__btn-wrap {
    margin-top: 1.125rem;
  }
  @media screen and (max-width: 767px) {
    .ir-business-item__btn-wrap .c-btn {
      padding-left: 7.6923076923vw;
      padding-right: 5.1282051282vw;
      font-size: 3.5897435897vw;
      width: 100%;
    }
  }
  .ir-business-item__btn-wrap .c-icon {
    right: 0.9375rem;
  }
  @media screen and (max-width: 767px) {
    .ir-business-item__btn-wrap .c-icon {
      right: 3.0769230769vw;
    }
  }
}