@charset "UTF-8";

/* Javascript CSS .js-
============================================================================= */

/* Scroll Table
----------------------------------------------------------------------------- */
@media (max-width:1023px) {
  .js-scroll-table {
    margin-inline: calc(var(--pd-sp-20) * -1);
    padding-block:20px;
  }
  .js-scroll-table .simplebar-wrapper {
    margin-inline-end:var(--pd-sp-20);
  }
  .js-scroll-table .layout-table-B {
    padding-inline:var(--pd-sp-20);
  }
  .js-scroll-table .simplebar-horizontal.__top {
    bottom:auto;
    top:0;
  }
  .js-scroll-table .scroll-hint-icon {
    box-sizing: content-box;
  }
  .js-scroll-table .scroll-hint-text {
    font-size:.12rem;
  }
}



/* Layout CSS .layout-
============================================================================= */


/* Container
----------------------------------------------------------------------------- */
.layout-lowerpage_container-A {
  padding-top:.48rem;
}
@media (max-width:1023px) {
  .layout-lowerpage_container-A {
    padding-top:.36rem;
  }
}


/* Section Block
----------------------------------------------------------------------------- */
:where(.layout-section_block-A) {
  padding-block:.80rem;
}
@media (max-width:1023px) {
  :where(.layout-section_block-A) {
    padding-block:.60rem;
  }
}



/* Heading
----------------------------------------------------------------------------- */

/* H1 */
:where(.layout-h1-A) {
  margin-block-end:var(--margin-block-A);
  color:var(--heading-color-A);
}
.layout-h1-A {
}
.layout-h1-A > span {
  display:block;
  line-height:1;
}
.layout-h1-A-en {
  font-size:var(--fs-h1_en);
}
.layout-h1-A-ja {
  margin-top:1em;
  font-size:var(--fs-h1_ja);
  color:var(--sub-color-red);
  letter-spacing: .05em;
}

/* H2 */
:where(.layout-h2-A:not(:first-child)) {
  margin-block-start:var(--margin-block-A);
}
:where(.layout-h2-A) {
  margin-block-end:var(--margin-block-B);
  color:var(--heading-color-A);
  text-align: center;
}
.layout-h2-A {
  font-size:var(--fs-h2);
  line-height:var(--lh-heading-A);
}

:where(.layout-h2-B:not(:first-child)) {
  margin-block-start:var(--margin-block-A);
}
:where(.layout-h2-B) {
  margin-block-end:var(--margin-block-B);
  color:var(--heading-color-A);
  text-align: center;
}
.layout-h2-B {
}
.layout-h2-B > span {
  display:block;
}
.layout-h2-B-en {
  font-family:var(--ff-sen);
  font-size:.56rem;
  line-height:1;
}
.layout-h2-B-ja {
  margin-block-start:.20rem;
  font-size:.15rem;
  line-height:1;
  color:var(--sub-color-red);
}
@media (max-width:1023px) {
  .layout-h2-B-en {
    font-size:.40rem;
  }
  .layout-h2-B-ja {
    margin-block-start:.08rem;
  }
}

:where(.layout-h2-C:not(:first-child)) {
  margin-block-start:var(--margin-block-A);
}
:where(.layout-h2-C) {
  margin-block-end:.32rem;
  color:var(--sub-color-red);
}
.layout-h2-C {
  font-size:.15rem;
  line-height:var(--lh-heading-A);
}
@media (max-width:1023px) {
  :where(.layout-h2-C) {
    margin-block-end:.16rem;
  }
}

/* H3 */
:where(.layout-h3-A:not(:first-child)) {
  margin-block-start:var(--margin-block-B);
}
:where(.layout-h3-A) {
  margin-block-end:var(--margin-block-C);
  color:var(--heading-color-A);
}
.layout-h3-A {
  font-size:var(--fs-h3);
  line-height:var(--lh-heading-A);
}

/* H4 */
:where(.layout-h4-A:not(:first-child),.layout-h4-B:not(:first-child)) {
  margin-block-start:var(--margin-block-C);
}
:where(.layout-h4-A) {
  margin-block-end:var(--margin-block-E);
  color:var(--main-color-blue);
}
.layout-h4-A {
  font-size:var(--fs-h4);
  line-height:var(--lh-heading-A);
}

:where(.layout-h4-B) {
  margin-block-end:var(--margin-block-E);
}
.layout-h4-B > span {
  display:block;
}
.layout-h4-B-sub {
  font-size:var(--fs-caution-A);
  line-height:1;
  color:var(--main-color-blue);
}
.layout-h4-B-sub + .layout-h4-B-main {
  margin-block-start:.08rem;
}
.layout-h4-B-main {
  font-size:var(--fs-h4);
  line-height:var(--lh-heading-A);
  color:var(--heading-color-A);
}

/* H5 */
:where(.layout-h5-A:not(:first-child)) {
  margin-block-start:var(--margin-block-D);
}
:where(.layout-h5-A) {
  margin-block-end:var(--margin-block-E);
  font-weight:700;
  color:var(--heading-color-A);
}
.layout-h5-A {
  font-size:var(--fs-h5);
  line-height:var(--lh-heading-A);
}


/* Text
----------------------------------------------------------------------------- */

/* Description */
:where(.layout-description-A:not(:first-child),.layout-description-B:not(:first-child)) {
  margin-block-start:var(--margin-block-D);
}
@media (min-width:1024px) {
  .layout-description-B {
    font-size:.20rem;
  }
}

/* Caution */
:where(.layout-caution-A:not(:first-child)) {
  margin-block-start:var(--margin-block-D);
}
.layout-caution-A {
  font-size:var(--fs-caution-A);
  line-height:var(--lh-heading-A);
}
.layout-caution-A-item {
  display:flex;
}
.layout-caution-A-item + .layout-caution-A-item {
  margin-top:1em;
}
:where(.layout-caution-A-item-asterisk) {
  color:var(--sub-color-red);
}
.layout-caution-A-item-asterisk {
  flex-shrink: 0;
  min-width:2em;
}

/* Bullet */
:where(.layout-bullet-A:not(:first-child)) {
  margin-block-start:var(--margin-block-D);
}
.layout-bullet-A {
  line-height:var(--lh-heading-A);
}
.layout-bullet-A-item {
  padding-inline-start: 1em;
  position:relative;
}
.layout-bullet-A-item + .layout-bullet-A-item {
  margin-top:1em;
}
.layout-bullet-A-item::before {
  content:"";
  flex-shrink: 0;
  display:block;
  border-radius: 50%;
  width:.10rem;
  height:.10rem;
  background-color:var(--other-color-blue-A);
  position:absolute;
  top:calc(var(--lh-heading-A) * 1em / 2 - .05rem);
  left:0;
}


/* Ordered List */
:where(.layout-ol-A:not(:first-child)) {
  margin-block-start:var(--margin-block-D);
}
.layout-ol-A {
  line-height:var(--lh-heading-A);
  counter-reset: number 0;
}
.layout-ol-A-item {
  display:flex;
}
.layout-ol-A-item + .layout-ol-A-item {
  margin-top:1em;
}
.layout-ol-A-item::before {
  flex-shrink: 0;
  counter-increment: number 1;
  content:counter(number) ".";
  padding-inline-end:.5em;
  min-width:1.5em;
}


/* Link
----------------------------------------------------------------------------- */
.layout-link-A {
  display:block;
  width:fit-content;
  font-size:var(--fs-h5);
  line-height: var(--lh-heading-A);
  font-weight:700;
}
.layout-link-A:visited {
  color:var(--visited-color-purple-A);
}
.layout-link-A:not(.-pdf)::after,
.layout-link-A.-pdf > span::before {
  content:"";
  display:inline-block;
  margin-inline-start:.2em;
  background-size:contain;
  background-repeat:no-repeat;
}
.layout-link-A:not(.-pdf,.-external)::after {
  width:.12rem;
  height:.12rem;
  background-image:url(/common/img/icon-link-arrow-A.svg);
}
.layout-link-A.-anker::after {
  transform:rotate(90deg);
}
.layout-link-A.-external::after {
  width:.13rem;
  height:.13rem;
  background-image:url(/common/img/icon-link-external-A.svg);
}
.layout-link-A.-pdf > span {
  margin-inline-start:.5em;
  font-size:.12rem;
  vertical-align: 12%;
}
.layout-link-A.-pdf > span::before {
  margin-inline-end:1em;
  width:.38rem;
  height:.15rem;
  background-image:url(/common/img/icon-link-pdf-A.svg);
  vertical-align: -12%;
}
.no-touchevents .layout-link-A {
  transition:color var(--hover-duration-A);
}
.no-touchevents .layout-link-A:is(a,button):hover {
  color:var(--main-color-blue);
}

.layout-text_link-A {
  color:var(--main-color-blue);
  text-decoration: underline;
  white-space: pre;
}
.layout-text_link-A:visited {
  color:var(--visited-color-purple-A);
}
.no-touchevents .layout-text_link-A:hover {
  text-decoration: none;
}
.layout-text_link-A.-external::after {
  content:"";
  display:inline-block;
  margin-inline:.2em;
  background-size:contain;
  width:.13rem;
  height:.13rem;
  background-image:url(/common/img/icon-link-external-A.svg);
}


/* Image Link
----------------------------------------------------------------------------- */
.layout-image_link-A {
  display:block;
}
.layout-image_link-A-img {
  overflow: hidden;
}
.layout-image_link-A-img img {
  display:block;
  width:100%;
  height:auto;
  transition:transform var(--hover-duration-A);
}
.no-touchevents .layout-image_link-A:hover .layout-image_link-A-img img {
  transform:scale(1.2);
}
.layout-image_link-A-text {
  display:flex;
  align-items: center;
  margin-block-start: .24rem;
  font-size:.20rem;
  font-weight:700;
  line-height:1.5;
  transition:color var(--hover-duration-A);
}
.layout-image_link-A-text::after {
  content:"";
  display:block;
  margin-inline-start:1em;
  width:.34rem;
  height:.34rem;
  background-image:url(/common/img/icon-link-arrow-B.svg);
  background-size:99%;
  background-position:center;
  background-repeat:no-repeat;
}
.no-touchevents .layout-image_link-A:hover .layout-image_link-A-text {
  color:var(--main-color-blue);
}
@media (max-width:1023px) {
  .layout-image_link-A-text {
    margin-block-start: .16rem;
  }
  :where([class*="layout-pc-column_"][class$="-item"] + [class*="layout-pc-column_"][class$="-item"] > .layout-image_link-A) {
    margin-block-start:.40rem;
  }
}



/* Button
----------------------------------------------------------------------------- */
:is(.layout-button-A,.layout-button-B,.-contact).-external > span::after {
  content:"";
  display:inline-block;
  margin-inline-start:.2em;
  background-size:contain;
  width:.13rem;
  height:.13rem;
  background-image:url(/common/img/icon-link-external-A.svg);
  transition:filter var(--hover-duration-A);
  filter:brightness(5);
}
._t-right :is(.layout-button-A,.layout-button-B,.layout-button-C,.-contact) {
  margin-inline-start:auto;
}
._t-center :is(.layout-button-A,.layout-button-B,.layout-button-C,.-contact) {
  margin-inline:auto;
}
:is(.layout-button-A,.layout-button-B,.layout-button-C) {
  display:flex;
  justify-content: center;
  align-items: center;
  border:1px solid var(--main-color-blue);
  border-radius:100px;
  width:fit-content;
  letter-spacing: .1em;
  font-weight:700;
  line-height: 1.5;
  overflow:hidden;
  transition-property:background-color,color,border-color;
  transition-duration: var(--hover-duration-A);
}
.-contact {
  display:flex;
  justify-content: center;
  align-items: center;
  border:1px solid #fff;
  border-radius:100px;
  width:fit-content;
  letter-spacing: .1em;
  font-weight:700;
  overflow:hidden;
  transition-property:background-color,color,border-color;
  transition-duration: var(--hover-duration-A);
}
:is(.layout-button-A,.layout-button-B,.-contact) {
  font-size:.14rem;
}
:is(.layout-button-A,.layout-button-B,.-contact):not(.-reverse) {
  color:#fff;
  background-color:var(--main-color-blue);
}
:is(.layout-button-A,.layout-button-B,.-contact).-reverse {
  color:var(--main-color-blue);
  background-color:#fff;
}
:is(.layout-button-A,.layout-button-B,.-contact).-reverse > span::after {
  filter:brightness(1);
}
.no-touchevents :is(.layout-button-A,.layout-button-B,.-contact):not(.-reverse):hover {
  color:var(--main-color-blue);
  background-color:#fff;
}
.no-touchevents :is(.layout-button-A,.layout-button-B,.-contact).-reverse:hover {
  background-color:var(--main-color-blue);
  border-color:#fff;
  color:#fff;
}
.no-touchevents :is(.layout-button-A,.layout-button-B,.-contact).-external:hover > span::after {
  filter:brightness(1);
}
.no-touchevents :is(.layout-button-A,.layout-button-B,.-contact).-reverse.-external:hover > span::after {
  filter:brightness(5);
}
.layout-button-A {
  padding-inline:.20rem;
  min-width:2.20rem;
  height:.60rem;
}
.layout-button-B {
  padding-inline:.12rem;
  min-width:1.00rem;
  height:.36rem;
}
.-contact {
  padding-inline:.20rem;
  min-width:1.70rem;
  height:.50rem;
}
.layout-button-C {
  background-color:#fff;
  border-color:var(--other-color-blue-A);
  color:var(--main-color-blue);
  width:100%;
  height:.80rem;
  text-align: center;
}
.no-touchevents .layout-button-C:hover {
  border-color:var(--main-color-blue);
  color:#fff;
  background-color:var(--main-color-blue);
}

@media (max-width:1023px) {
  .layout-button-A {
    margin-inline:auto;
    max-width:calc(100vw - .80rem);
    min-width:3.00rem;
  }
}
@media (max-width:1023px) {
.-contact {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 0.7rem;
  width: 100%;
  max-width: 3.2rem;
  height: 0.5rem;
  margin-inline: auto;
  padding-inline: 0.2rem;
  border: 1px solid #fff;
  border-radius: 100px;
  letter-spacing: .1em;
  inset-inline: 0;
}
}
@media (max-width:1023px) {
  .layout-button-C {
    height:.60rem;
  }
}


/* Link Set
----------------------------------------------------------------------------- */
.layout-linkset-A {
  padding:.40rem .24rem;
}
.layout-linkset-A-parent {
  font-size:.20rem;
  font-weight:700;
  letter-spacing: .05em;
}
.layout-linkset-A-parent > a {
  display:flex;
  align-items: center;
  transition:color var(--hover-duration-A);
}
.no-touchevents .layout-linkset-A-parent > a:hover {
  color:var(--main-color-blue);
}
.layout-linkset-A-parent > a:not(._link-external-A)::after {
  flex-shrink: 0;
  content:"";
  display:inline-block;
  margin-inline-start:.5em;
  width:.13rem;
  height:.13rem;
  background-image:url(/common/img/icon-link-arrow-A.svg);
  background-size:contain;
  transition:filter var(--hover-duration-A);
}
.layout-linkset-A-parent > a._link-external-A small {
  display:block;
  line-height:1;
  font-weight:400;
}
.layout-linkset-A-parent > a._link-external-A {
  justify-content: space-between;
}
.layout-linkset-A-child {
  margin-block-start: .12rem;
  font-size:.16rem;
}
.layout-linkset-A-child > a {
  display:flex;
  align-items: center;
  transition:color var(--hover-duration-A);
}
.layout-linkset-A-child > a > span {
  transition:transform var(--hover-duration-A);
}
.layout-linkset-A-child > a:hover {
  color:var(--main-color-blue);
}
.layout-linkset-A-child > a:hover > span {
  transform:translateX(.10rem);
}
.layout-linkset-A-child > a::before {
  content:"";
  display:block;
  margin-inline-end:.5em;
  border-top:1px solid var(--main-color-blue);
  border-right:1px solid var(--main-color-blue);
  width:.08rem;
  height:.08rem;
  transform:rotate(45deg);
}
@media (max-width:1023px) {
  .layout-linkset-A {
    padding:.36rem var(--pd-sp-20);
  }
  .layout-linkset-A-parent > a {
    justify-content: center;
  }
  .layout-linkset-A-parent + .layout-linkset-A-child {
    margin-block-start:.24rem;
  }
}


/* Figure
----------------------------------------------------------------------------- */
.layout-figure-A {
}
.layout-figure-A.img-border img {
  border: 1px solid #B2B2B2;
}
.layout-figure-A > img {
  margin-inline:auto;
  max-width:100%;
}
.layout-figure-A-caption {
  display:block;
  margin-block-start:.12rem;
  font-size:var(--fs-caution-A);
  line-height:var(--lh-heading-A);
}
.layout-figure-A-caption-B { /*ir/management/ */
  margin-block-start:.40rem;
  text-align: center;
  line-height:1;
}
.layout-figure-A-caption-B-ja {
  margin-inline-start:1em;
  font-weight:700;
  font-size:.32rem;
}
.layout-figure-A-caption-B-en {
  font-weight:700;
}
@media (min-width:1024px) {
  .layout-figure-A-caption {
    width:fit-content;
    margin-inline-start:auto;
  }
}
@media (max-width:1023px) {
  .layout-figure-A-caption {
    margin-block-start:.08rem;
  }
  .layout-figure-A-caption-B { /*ir/management/ */
    margin-block-start:.20rem;
    line-height:var(--lh-heading-A);
  }
  .layout-figure-A-caption-B-ja {
    font-size:.24rem;
  }
}



/* PC Column
----------------------------------------------------------------------------- */
:where(.layout-pc-column_3-A,.layout-pc-column_2-A,.layout-pc-column_2-B) {
  margin-block-start:var(--margin-block-E);
}
@media (min-width:1024px) {
  :is(.layout-pc-column_3-A,.layout-pc-column_4-A,.layout-pc-column_2-A,.layout-pc-column_2-B) {
    display:flex;
    flex-wrap:wrap;
  }
  :is(.layout-pc-column_3-A,.layout-pc-column_4-A,.layout-pc-column_2-A,.layout-pc-column_2-B).-reverse {
    flex-direction: row-reverse;
  }
  .layout-pc-column_3-A {
    gap:.60rem .30rem;
  }
  .layout-pc-column_3-A-item {
    width:calc(100% / 3 - .30rem * 2 / 3);
  }
  .layout-pc-column_2-A {
    gap:.60rem;
  }
  .layout-pc-column_2-A-item {
    width:calc(100% / 2 - .60rem / 2);
  }
  .layout-pc-column_2-B {
    gap:.30rem;
  }
  .layout-pc-column_2-B-item:nth-child(2n+1) {
    width:calc((100% / 3 - .30rem * 2 / 3) * 2 + .30rem);
  }
  .layout-pc-column_2-B-item:nth-child(2n+2) {
    width:calc(100% / 3 - .30rem * 2 / 3);
  }

  .layout-pc-column_4-A {
    gap:.20rem;
  }
  .layout-pc-column_4-A-item {
    width:calc(100% / 4 - .20rem * 3 / 4);
  }
}
@media (max-width:1023px) {
  :where(:is(.layout-pc-column_4-A,.layout-pc-column_3-A,.layout-pc-column_2-A,.layout-pc-column_2-B) > * + *) {
    margin-block-start:.20rem;
  }
}


/* Box
----------------------------------------------------------------------------- */
:where(.layout-box-A:not(:first-child)) {
  margin-block-start:var(--margin-block-A);
}
:where(.layout-box-A) {
  background-color:var(--bg-color-gray-A);
}
.layout-box-A {
  padding:.70rem;
}
@media (min-width:1024px) {
  .layout-box-A .layout-pc-column_2-A {
    gap:.30rem;
  }
  .layout-box-A .layout-pc-column_2-A-item {
    width:calc(100% / 2 - .30rem / 2);
  }
}
@media (max-width:1023px) {
  .layout-box-A {
    padding:.32rem var(--pd-sp-20);
  }
}


/* Table
----------------------------------------------------------------------------- */
:where(.layout-table-A_outer:not(:first-child)) {
  margin-block-start:var(--margin-block-C);
}
:where(.layout-table-A_outer) {
}
.layout-table-A {
  width:100%;
  line-height:1.5;
  border-block-start:1px solid var(--border-color-gray-A);
}
:where(.layout-table-A th) {
  text-align: left;
  vertical-align: top;
}
.layout-table-A td p + p {
  margin-block-start:.5em;
}
:where(.layout-table-A-th01) {
  color:var(--main-color-blue);
  white-space: nowrap;
  padding-right:10px;
}
@media (min-width:1024px) {
  :where(.layout-table-A :where(th,td)) {
    border-block-end:1px solid var(--border-color-gray-A);
    padding-block:.24rem;
  }
}
@media (max-width:1023px) {
  .layout-table-A {
    display:block;
  }
  .layout-table-A :where(tbody,th,td) {
    display:block;
  }
  .layout-table-A tr {
    border-block-end:1px solid var(--border-color-gray-A);
  }
  .layout-table-A.type01 {
    font-size: 0.14rem;
  }
  .layout-table-A:not(.-sp_row) tr {
    display:grid;
    grid-template-columns: .85rem calc(100% - .85rem);
    grid-template-rows: auto auto;
  }
  .layout-table-A.type01 th {
    letter-spacing: -1px;
    transform: scaleX(0.94);
    transform-origin: left top;
  }
  .layout-table-A.type01 .layout-link-A {
    font-size: 0.14rem;
  }
  .layout-table-A.-sp_row tr {
    display:block;
  }
  :where(.layout-table-A :where(th,.layout-table-A-th01 + td)) {
    padding-block-start:.16rem;
  }
  .layout-table-A:not(.-sp_row) th {
    padding-block-end:.16rem;
  }
  .layout-table-A:not(.-sp_row) .layout-table-A-th01 {
    grid-row:1/3;
    grid-column:1/2;
    white-space: normal;
  }
  .layout-table-A:not(.-sp_row) :where(th:not(.layout-table-A-th01),td) {
    grid-column:2/3;
  }
  .layout-table-A:not(.-sp_row) th:not(.layout-table-A-th01) {
    grid-row:1/2;
  }
  .layout-table-A:not(.-sp_row) td {
    grid-row:2/3;
  }
  :where(.layout-table-A td) {
    padding-block-end:.16rem;
  }
}

:where(.layout-table-B_outer:not(:first-child)) {
  margin-block-start:var(--margin-block-C);
}
:where(.layout-table-B_outer) {
}
.layout-table-B {
  line-height:1.5;
}
.layout-table-B :where(th,td) {
  border-block-end:1px solid var(--border-color-gray-A);
  padding-block:.24rem;
}
:where(.layout-table-B th) {
  text-align: left;
  vertical-align: top;
}
.layout-table-B td p + p {
  margin-block-start:.5em;
}
:where(.layout-table-B-th01) {
  color:var(--main-color-blue);
}
@media (min-width:1024px) {
  .layout-table-B {
    border-block-start:1px solid var(--border-color-gray-A);
    width:100%;
  }
}
@media (max-width:1023px) {
  .layout-table-B_outer {
    overflow-x:auto;
  }
  .layout-table-B {
    min-width:100%;
  }
  .layout-table-B tr:first-child :is(th,td) {
    border-block-start:1px solid var(--border-color-gray-A);
  }
  .layout-table-B :where(th,td) {
    padding-inline-end:.20rem;
    padding-block:.16rem;
    white-space: nowrap;
  }
}


/* News Wrap
----------------------------------------------------------------------------- */
.layout-news_wrap-A .layout-h3-A:not(:first-child) {
  margin-block-start:.60rem;
}
.layout-news_wrap-A .layout-h3-A {
  margin-block-end:var(--margin-block-D);
}


/* News List
----------------------------------------------------------------------------- */
.layout-news_list-A {
  border-top:1px solid var(--border-color-gray-A);
}
.layout-news_list-A-item {
  border-bottom:1px solid var(--border-color-gray-A);
  padding-block:.30rem .24rem;
  padding-inline-end:.70rem;
  position:relative;
}
.layout-news_list-A-item a::before {
  content:"";
  display:block;
  width:.34rem;
  height:.34rem;
  background-image:url(/common/img/icon-link-arrow-B.svg);
  background-size:99%;
  background-position:center;
  background-repeat:no-repeat;
  position:absolute;
  top:.40rem;
  right:0;
}
.layout-news_list-A-item .layout-link-A:not(.-pdf,.-external)::after {
  content:none;
}
.layout-news_list-A-item-date_category {
  display:flex;
  align-items: center;
  margin-block-end:.10rem;
}
.layout-news_list-A-item-category {
  margin-inline-start:1em;
  border-radius: 100px;
  padding:.04rem .10rem .04rem;
  font-size:.12rem;
  line-height: 1;
}
@media (max-width:1023px) {
  .layout-news_list-A-item::after {
    top:.60rem;
  }
}


/* Category Slect
----------------------------------------------------------------------------- */
.layout-category_select-A {
  display:flex;
  color:var(--main-color-blue);
  border:1px solid;
  font-size:.24rem;
  font-weight:700;
  position:relative;
}
.layout-category_select-A::after {
  content:"";
  display:block;
  margin-block:auto;
  width:.12rem;
  height:.12rem;
  border-bottom:1px solid;
  border-right:1px solid;
  transform:rotate(45deg);
  position:absolute;
  inset-block:-.04rem 0;
  right:.20rem;
}
.layout-category_select-A > select {
  padding-block:.08rem;
  padding-inline:.20rem .40rem;
}
@media (min-width:1024px) {
  .layout-category_select-A {
    width:fit-content;
  }
  .layout-category_select-A > select {
    min-width:2.40rem;
  }
}
@media (max-width:1023px) {
  .layout-category_select-A {
    width:100%;
  }
  .layout-category_select-A > select {
    padding-block:.04rem;
    width:100%;
  }
}


/* Category List
----------------------------------------------------------------------------- */
.layout-category_list {
  display:flex;
  flex-wrap:wrap;
  gap:2px;
  font-size:.14rem;
  line-height:var(--lh-heading-A);
  text-align: center;
}
.layout-category_list-item-link {
  display:flex;
  justify-content: center;
  align-items: center;
  height:.56rem;
  font-weight:500;
  background-color:var(--bg-color-gray-A);
  cursor:pointer;
  transition-property:opacity,color;
  transition-duration: var(--hover-duration-A);
}
.layout-category_list-item-link:not(.-news).-active {
  background-color:var(--main-color-blue);
  color:#fff;
}
.no-touchevents .layout-category_list-item-link:not(.-news):hover {
  opacity:.6;
}

.layout-category_list-item-link.-news {
  position:relative;
  z-index:1;
}
.layout-category_list-item-link.-news::after {
  content:"";
  width:100%;
  height:100%;
  position:absolute;
  bottom:0;
  left:0;
  transform-origin:50% 100%;
  transform:scaleY(.14285);
  z-index:-1;
  transition-property:transform;
  transition-duration: var(--hover-duration-A);
}
.layout-category_list-item-link.-news.-all::after {
  background-color:var(--category-color-A);
}
.layout-category_list-item-link.-news.-topics::after {
  background-color:var(--category-color-B);
}
.layout-category_list-item-link.-news.-seminar::after {
  background-color:var(--category-color-C);
}
.layout-category_list-item-link.-news.-press::after {
  background-color:var(--category-color-D);
}
.layout-category_list-item-link.-news.-media::after {
  background-color:var(--category-color-E);
}
.layout-category_list-item-link.-news.-update::after {
  background-color:var(--category-color-F);
}
.layout-category_list-item-link.-news.-group::after {
  background-color:var(--category-color-G);
}
.layout-category_list-item-link.-news:is(:hover,.-active) {
  color:#fff;
}
.layout-category_list-item-link.-news:is(:hover,.-active)::after {
  transform:scaleY(1);
}
@media (min-width:1024px) {
  .layout-category_list-item {
    width:calc(100% / 3 - 2px * 3 / 3);
  }
}
@media (max-width:1023px) {
  .layout-category_list-item {
    width:calc(100% / 2 - 1px);
  }
}




/* IR Document
----------------------------------------------------------------------------- */
.layout-ir_document {
  margin-block-start:.90rem;
  background-color:var(--bg-color-gray-A);
}
.layout-ir_document-list-item + .layout-ir_document-list-item {
  margin-block-start:.20rem;
}
.layout-ir_document-download > a {
  display:flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border:1px solid var(--main-color-blue);
  gap:.24rem;
  border-radius: .20rem;
  height:2.14rem;
  font-size:.20rem;
  font-weight:700;
  background-color:var(--main-color-blue);
  color:#fff;
  transition-property: background-color,color;
  transition-duration: var(--hover-duration-A);
}
.no-touchevents .layout-ir_document-download > a:hover {
  color:var(--main-color-blue);
  background-color:var(--bg-color-gray-A);
}
.layout-ir_document-download > a::before,
.layout-ir_document-download > a::after {
  content:"";
  display:block;
  background-size:contain;
  background-repeat: no-repeat;
  background-position: center;
  filter:brightness(5);
  transition-property: filter;
  transition-duration: var(--hover-duration-A);
}
.no-touchevents .layout-ir_document-download > a:hover::before,
.no-touchevents .layout-ir_document-download > a:hover::after {
  filter:brightness(1);
}
.layout-ir_document-download > a::before {
  width:.39rem;
  height:.52rem;
  background-image:url(/common/img/icon-ir_document.svg);
}
.layout-ir_document-download > a::after {
  width:.26rem;
  height:.26rem;
  background-image:url(/common/img/icon-link-download-A.svg);
}
@media (min-width:1024px) {
  .layout-ir_document {
    display:flex;
    padding-block:.50rem;
    gap:.30rem;
  }
  .layout-ir_document > .layout-h2-A {
    padding-inline-start: .50rem;
  }
  .layout-ir_document > * {
    width:calc(100% / 3 - .30rem * 2 / 3);
  }
  .layout-ir_document-list {

  }
  .layout-ir_document-download {
    padding-inline-end: .50rem;
  }
}
@media (max-width:1023px) {
  .layout-ir_document {
    margin-block-start:.60rem;
    padding:.60rem var(--pd-sp-20);
  }
  .layout-ir_document-download {
    margin-block-start: .32rem;
  }
  .layout-ir_document-download > a {
    gap:.18rem;
    font-size:.18rem;
  }
}


/* Youtube
----------------------------------------------------------------------------- */
.layout-youtube-A {
}
.layout-youtube-A > iframe {
  width:100%;
  height:auto;
  aspect-ratio:16/9;
}


/* Googlemap
----------------------------------------------------------------------------- */
.layout-googlemap-A {
}
.layout-googlemap-A > iframe {
  width:100%;
  height:auto;
  aspect-ratio:16/9;
}


/* ���o
----------------------------------------------------------------------------- */
[data-pararax01] {
	position: relative;
}

[data-pararax01-inview] {
	position: absolute !important;
	top: 120px;
	bottom: 120px;
	left: 0;
	right: 0;
	width: 0%;
	margin-left: auto;
	margin-right: auto;
	pointer-events: none;
	opacity: 0;
}
@media print, screen and (min-width: 461px) and (max-height: 800px) {
	[data-pararax01-inview] {
		top: 120px;
		bottom: 120px;
	}
}
@media print, screen and (min-width: 461px) and (max-height: 650px) {
	[data-pararax01-inview] {
		top: 50px;
		bottom: 50px;
	}
}
@media screen and (max-width: 460px) {
	[data-pararax01-inview] {
		top: 100px;
		bottom: 100px;
	}
}

[data-pararax01-opacity01] {
	opacity: 0 !important;
}
[data-pararax01-opacity01].active {
	opacity: 1 !important;
	transition: opacity 1.0s cubic-bezier(0.515, 0.005, 0.505, 1);
}

[data-pararax01-opacity02] {
	opacity: 0 !important;
	transform: translateX(-20px) !important;
}
[data-pararax01-opacity02].active {
	opacity: 1 !important;
	transform: none !important;
	transition: opacity 1.0s cubic-bezier(0.515, 0.005, 0.505, 1), transform 1.0s cubic-bezier(0.515, 0.005, 0.505, 1);
}

[data-pararax01-opacity03] {
	opacity: 0 !important;
	transform: translateX(20px) !important;
}
[data-pararax01-opacity03].active {
	opacity: 1 !important;
	transform: none !important;
	transition: opacity 1.0s cubic-bezier(0.515, 0.005, 0.505, 1), transform 1.0s cubic-bezier(0.515, 0.005, 0.505, 1);
}

[data-pararax01-opacity04] {
	opacity: 0 !important;
	transform: translateY(20px) !important;
}
[data-pararax01-opacity04].active {
	opacity: 1 !important;
	transform: none !important;
	transition: opacity 1.0s cubic-bezier(0.515, 0.005, 0.505, 1), transform 1.0s cubic-bezier(0.515, 0.005, 0.505, 1);
}

[data-pararax01-opacity05] {
	opacity: 0 !important;
	transform: translateY(-20px) !important;
}
[data-pararax01-opacity05].active {
	opacity: 1 !important;
	transform: none !important;
	transition: opacity 1.0s cubic-bezier(0.515, 0.005, 0.505, 1), transform 1.0s cubic-bezier(0.515, 0.005, 0.505, 1);
}

[data-pararax01-opacity06] {
	opacity: 0 !important;
	transform: scale(0.8) !important;
}
[data-pararax01-opacity06].active {
	opacity: 1 !important;
	transform: none !important;
	transition: opacity 1.0s cubic-bezier(0.515, 0.005, 0.505, 1), transform 1.0s cubic-bezier(0.515, 0.005, 0.505, 1);
}

[data-pararax01-opacity07] {
	opacity: 0 !important;
	transform: scale(1.2) !important;
}
[data-pararax01-opacity07].active {
	opacity: 1 !important;
	transform: none !important;
	transition: opacity 1.0s cubic-bezier(0.515, 0.005, 0.505, 1), transform 1.0s cubic-bezier(0.515, 0.005, 0.505, 1);
}

[data-pararax01-opacity08] {
	perspective: 1000px;
}
[data-pararax01-opacity08] [data-pararax01-opacity08-target] {
	transform-style: preserve-3d;
	opacity: 0;
	transform: rotateY(720deg) scale(0.2);
	overflow: hidden;
}
[data-pararax01-opacity08] [data-pararax01-opacity08-target]:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	opacity: 0.5;
	-webkit-clip-path: polygon(0px 0%, 100% 0%, 100% 100%, 0% 100%);
					clip-path: polygon(0px 0%, 100% 0%, 100% 100%, 0% 100%);
}
[data-pararax01-opacity08].active [data-pararax01-opacity08-target] {
	opacity: 1;
	transform: rotateY(0deg) scale(1);
	transition: 3.6s cubic-bezier(0.515, 0.005, 0.505, 1);
}
[data-pararax01-opacity08].active [data-pararax01-opacity08-target]:after {
	left: 100%;
	transition: 1.0s cubic-bezier(0.515, 0.005, 0.505, 1) 0.7s;
	-webkit-clip-path: polygon(50px 0%, 100% 0%, 100% 100%, 0% 100%);
					clip-path: polygon(50px 0%, 100% 0%, 100% 100%, 0% 100%);
}

[data-pararax01-opacity09] {
	-webkit-clip-path: polygon(0% 50%, 100% 50%, 100% 50%, 0% 50%);
					clip-path: polygon(0% 50%, 100% 50%, 100% 50%, 0% 50%);
	opacity: 0;
}
[data-pararax01-opacity09].active {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
					clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
	opacity: 1;
	transition: opacity 1.0s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 1.0s cubic-bezier(0.515, 0.005, 0.505, 1);
	transition: clip-path 1.0s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 1.0s cubic-bezier(0.515, 0.005, 0.505, 1);
	transition: clip-path 1.0s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 1.0s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 1.0s cubic-bezier(0.515, 0.005, 0.505, 1);
}

[data-pararax01-opacity10] {
	-webkit-clip-path: polygon(0% 0%, 100% -100%, -100% 100%);
					clip-path: polygon(0% 0%, 100% -100%, -100% 100%);
	opacity: 0;
}
[data-pararax01-opacity10].active {
	-webkit-clip-path: polygon(0% 0%, 200% 0%, 0% 200%);
					clip-path: polygon(0% 0%, 200% 0%, 0% 200%);
	opacity: 1;
	transition: opacity 3.6s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 3.6s cubic-bezier(0.515, 0.005, 0.505, 1);
	transition: clip-path 3.6s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 3.6s cubic-bezier(0.515, 0.005, 0.505, 1);
	transition: clip-path 3.6s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 3.6s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 3.6s cubic-bezier(0.515, 0.005, 0.505, 1);
}

[data-pararax01-opacity11] {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
					clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
	opacity: 0;
}
[data-pararax01-opacity11].active {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
					clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
	opacity: 1;
	transition: opacity 3.6s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 3.6s cubic-bezier(0.515, 0.005, 0.505, 1);
	transition: clip-path 3.6s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 3.6s cubic-bezier(0.515, 0.005, 0.505, 1);
	transition: clip-path 3.6s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 3.6s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 3.6s cubic-bezier(0.515, 0.005, 0.505, 1);
}

.pararax01_pattern01 {
	font-size: 20px;
	line-height: 2;
	font-weight: bold;
}
.pararax01_pattern01 .pararax01_pattern01_underline {
	background-image: linear-gradient(#f00 0%, #f00 100%);
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: 0% 2px;
}
.pararax01_pattern01.active .pararax01_pattern01_underline {
	background-size: 100% 2px;
	transition: background-size 3.6s cubic-bezier(0.2, 0, 0.18, 1);
}

[data-pararax01-photo01a],
[data-pararax01-photo01b],
[data-pararax01-photo02a],
[data-pararax01-photo02b],
[data-pararax01-photo03a],
[data-pararax01-photo03b],
[data-pararax01-photo03c],
[data-pararax01-photo04a],
[data-pararax01-photo04b] {
	display: inline-block;
	position: relative;
	opacity: 0;
	font-size: 0;
}

[data-pararax01-photo01a].active,
[data-pararax01-photo01b].active,
[data-pararax01-photo02a].active,
[data-pararax01-photo02b].active,
[data-pararax01-photo03a].active,
[data-pararax01-photo03b].active,
[data-pararax01-photo03c].active,
[data-pararax01-photo04a].active,
[data-pararax01-photo04b].active {
	opacity: 1;
}

.ie [data-pararax01-photo01a],
.ie [data-pararax01-photo01b],
.ie [data-pararax01-photo02a],
.ie [data-pararax01-photo02b],
.ie [data-pararax01-photo03a],
.ie [data-pararax01-photo03b],
.ie [data-pararax01-photo03c],
.ie [data-pararax01-photo04a],
.ie [data-pararax01-photo04b],
.edge [data-pararax01-photo01a],
.edge [data-pararax01-photo01b],
.edge [data-pararax01-photo02a],
.edge [data-pararax01-photo02b],
.edge [data-pararax01-photo03a],
.edge [data-pararax01-photo03b],
.edge [data-pararax01-photo03c],
.edge [data-pararax01-photo04a],
.edge [data-pararax01-photo04b] {
	background-color: #FFF;
	opacity: 1 !important;
}

[data-pararax01-photo01a] svg,
[data-pararax01-photo01b] svg,
[data-pararax01-photo02a] svg,
[data-pararax01-photo02b] svg,
[data-pararax01-photo03a] svg,
[data-pararax01-photo03b] svg,
[data-pararax01-photo03c] svg,
[data-pararax01-photo04a] svg,
[data-pararax01-photo04b] svg {
	position: absolute;
	top: 0;
	left: 0;
	pointer-events: none;
}

[data-pararax01-photo01a] rect,
[data-pararax01-photo01b] rect,
[data-pararax01-photo02a] rect,
[data-pararax01-photo02b] rect,
[data-pararax01-photo03a] rect,
[data-pararax01-photo03b] rect,
[data-pararax01-photo03c] rect,
[data-pararax01-photo04a] rect,
[data-pararax01-photo04b] rect {
	fill: #FFF;
}

[data-pararax01-photo01a].init,
[data-pararax01-photo01b].init,
[data-pararax01-photo02a].init,
[data-pararax01-photo02b].init,
[data-pararax01-photo03a].init,
[data-pararax01-photo03b].init,
[data-pararax01-photo03c].init,
[data-pararax01-photo04a].init,
[data-pararax01-photo04b].init {
	opacity: 1;
}


/* スクロールボタン
----------------------------------------------------------------------------- */
.global-pagetop_button {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 50px;
  height: 50px;
  border-radius: 5px;
  border: 2px solid var(--main-color-blue);
  background-color: var(--main-color-blue);

  opacity: 0;
  pointer-events: none;
  transition: 0.2s;
}
.state_screenheightscroll .global-pagetop_button {
  opacity: 1;
  pointer-events: auto;
}
.global-pagetop_button:after {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 15px;
  height: 15px;
  border-top: 2px solid #FFF;
  border-right: 2px solid #FFF;
  transform: rotate(-45deg);
  transition: 0.2s;
}
.global-pagetop_button:hover {
  background-color: #fff;
}
.global-pagetop_button:hover:after {
  border-top: 2px solid var(--main-color-blue);
  border-right: 2px solid var(--main-color-blue);
}