@charset "utf-8";

/* ======================================================
 * top.css
 * ------------------------------------------------------
 * Reset
 * Base
 * Animation
 * Parts
 * @media print, screen and (min-width: 768px)
 * - OldStyle
 * - Override
 * - Parts
 * - Clearfix
 * PC Media Queries
 * @media only screen and (max-width: 767px)
 * - OldStyle
 * - Override
 * - Parts
 * - Clearfix
 * SP Media Queries
 * Print
====================================================== */

/* ======================================================
 * Reset
====================================================== */
@layer reset {
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,a,address,img,sub,sup,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,menu,nav,output,ruby,section,summary,time,mark,audio,video {
  margin: 0;
  padding: 0;
  border: 0;
  line-height: 1.6;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

article,figcaption,figure,nav,section {
  display: block;
}

ol,ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

input {
  margin: 0;
  padding: 0;
  border: none;
}

input[type="submit"] {
  cursor: pointer;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}
}


/* ======================================================
 * Base
====================================================== */
.top-main {
  box-sizing: border-box;
  color: var(--color_text_main);
  line-height: 1.7;
}
.top-main,
.top-main *,
.top-main input,
.top-main select,
.top-main textarea,
.top-main button,
.top-main pre {
  box-sizing: border-box;
  font-family: "DM Sans", "Noto Sans JP", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
}

.top-main img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.top-main a {
  color: var(--color_link_main);
  text-decoration: none;
}
.top-main a:hover {
  color: var(--color_link_hover);
}

/* ======================================================
 * Animation
====================================================== */
@keyframes progressBarAnimation {
  from {
    left: -100%;
  }
  to {
    left: 0;
  }
}

/* ------------------------------------------------------
 * Override
------------------------------------------------------ */


/* ------------------------------------------------------
 * Parts
------------------------------------------------------ */
/* ----- top-hero ----- */
.top-hero {
  --top-hero-indication-time: 5000ms;
  --top-hero-animation-state: paused;
}
/* ----- top-disaster-info ----- */
.top-disaster-info:not(.is-active) {
  display: none;
}
/* ----- top-important-info ----- */
.top-important-info:not(.is-active) {
  display: none;
}
/* ----- top-news-tab ----- */
.top-news-tab:not(.is-active) {
  display: none;
}
/* ----- top-news-carousel ----- */
.top-news-carousel {
  --top-news-carousel-indication-time: 5000ms;
  --top-news-carousel-animation-state: paused;
}

/* ======================================================
 * PC
====================================================== */
@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * OldStyle
  ------------------------------------------------------ */

  /* ------------------------------------------------------
   * Override
  ------------------------------------------------------ */

  /* ------------------------------------------------------
   * Parts
  ------------------------------------------------------ */

  /* ----- top-disaster-info ----- */
  .top-disaster-info {
    display: flex;
    justify-content: center;
    width: 100%;
    padding-block: 8px 10px;
    padding-inline: var(--content-side--pc);
    background: var(--color_mono_bg_black);
    color: var(--color_mono_white);
  }
  .top-disaster-info .top-disaster-info__inner {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 0 12px;
    max-width: var(--content-width);
  }
  .top-disaster-info .top-disaster-info__head {
    flex-shrink: 0;
    margin: 0;
  }
  .top-disaster-info .top-disaster-info__head__inner {
    padding: 0;
    border: none;
    background: none;
    text-align: left;
  }
  .top-disaster-info .top-disaster-info__head__inner .top-disaster-info__title__visually-hidden {
    display: none;
  }
  .top-disaster-info .top-disaster-info__title {
    position: relative;
    display: inline-block;
    padding-block: 1px;
    padding-inline: 28px 12px;
    border-radius: 10px;
    background: var(--color_other_alert);
    color: var(--color_mono_white);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
  }
  .top-disaster-info .top-disaster-info__title::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0%;
    width: 20px;
    height: 20px;
    background: url(/extlib/top_new/img/index_ic01_01.svg) no-repeat center /contain;
    transform: translateY(-50%);
  }
  .top-disaster-info .top-disaster-info__body {
    flex-grow: 1;
    padding-block: 4px 0;
  }
  .top-disaster-info .top-disaster-info__list> :first-child {
    margin-top: 0 !important;
  }
  .top-disaster-info .top-disaster-info__article {
    margin-top: 7px;
  }
  .top-disaster-info .top-disaster-info__article>[class*="__type"] {
    display: flex;
    align-items: flex-start;
    gap: 0 12px;
    color: var(--color_mono_white);
  }
  .top-disaster-info .top-disaster-info__article__category {
    flex-shrink: 0;
    display: inline-block;
    padding-inline: 10px;
    border-radius: 6px;
    border: 1px solid var(--color_mono_white);
    font-size: 10px;
    font-weight: 500;
  }
  .top-disaster-info .top-disaster-info__article__date {
    flex-shrink: 0;
    font-size: 12px;
    font-weight: 500;
  }
  .top-disaster-info .top-disaster-info__article__title {
    font-size: 12px;
    font-weight: 500;
  }

  /* ----- top-hero ----- */
  .top-hero {
    position: relative;
  }
  .top-hero .top-hero__list:not(.slick-initialized) .top-hero__item:not(:first-of-type) {
    position: absolute;
    visibility: hidden;
  }
  .top-hero .top-hero__item {
    width: 100%;
  }
  .top-hero .top-hero__item > [class*="__type"] {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
  }
  .top-hero .top-hero__item__image {
    width: 100%;
    height: auto;
  }
  .top-hero .top-hero__item__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: bottom center;
  }
  .top-hero .top-hero__item__detail {
    position: absolute;
    width: calc(100% - (min(91px, calc(91 / 1440 * 100vw)) * 2) - 300px);
    bottom: 78px;
    left: min(91px, calc(91 / 1440 * 100vw));
  }
  .top-hero .top-hero__item__heading {
    color: var(--color_mono_white);
  }
  .top-hero .top-hero__item__heading__title {
    display: block;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.5;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-hero .top-hero__item__heading__subtitle {
    display: block;
    margin-top: 21px;
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-hero .top-hero__item__link {
    position: relative;
    display: inline-block;
    margin-top: 34px;
    padding-right: 53px;
    color: var(--color_main_base01);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-hero .top-hero__item > [class*="__type"] .top-hero__item__link::after {
    content: "";
    display: block;
    position: absolute;
    top: 3px;
    right: 0;
    width: 34px;
    height: 22px;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    background-color: var(--color_mono_white);
  }
  .top-hero .top-hero__item__type .top-hero__item__link::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_03.svg);
  }
  .top-hero .top-hero__item__type--blank .top-hero__item__link::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_04.svg);
  }
  .top-hero .top-hero__item__detail.type-miraijinzai .top-hero__item__heading__title {
    color: #EB5505;
    font-weight: 700;
  }
  .top-hero .top-hero__item__detail.type-miraijinzai .top-hero__item__heading__subtitle {
    margin-top: 13px;
    color: #000;
    font-size: 20px;
    letter-spacing: 0;
    line-height: 2;
  }
  .top-hero .top-hero__item__detail.type-miraijinzai .top-hero__item__link {
    margin-top: 25px;
    color: var(--color_text_main);
  }
  .top-hero .top-hero__item__detail.type-miraijinzai .top-hero__item__link::after {
    background-color: var(--color_text_main);
  }
  .top-hero .top-hero__control {
    display: flex;
    align-items: center;
    position: absolute;
    gap: 0 12px;
    right: min(92px, calc(92 / 1440 * 100vw));
    bottom: min(71px, calc(71 / 1440 * 100vw));
    mix-blend-mode: difference;
  }
  .top-hero .top-hero__number {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0 28px;
  }
  .top-hero .top-hero__number::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: calc(50% - 2px);
    width: 2px;
    height: 12px;
    background: url(/extlib/common/img_new/cmn_ex01_03.svg) no-repeat center /contain;
    transform: translate(-50%,-50%);
  }
  .top-hero .top-hero__number__current,
  .top-hero .top-hero__number__total {
    min-width: 1.43em;
    color: var(--color_mono_white);
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
  }
  .top-hero .top-hero__progress {
    display: flex;
    align-items: center;
    gap: 0 12px;
  }
  .top-hero .top-hero__progress > .slick-arrow {
    appearance: none;
    position: relative;
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    border: none;
    background: none;
    text-indent: -100vw;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    transition: opacity var(--transition_default-set);
  }
  .top-hero .top-hero__progress > .slick-arrow:hover {
    opacity: 0.5;
  }
  .top-hero .top-hero__progress > .slick-arrow::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 6px;
    height: 10px;
  }
  .top-hero .top-hero__progress > .slick-arrow.slick-prev::before {
    background: url(/extlib/common/img_new/cmn_ic13_01.svg) no-repeat center /contain;
    transform: translate(-50%,-50%) scale(-1,1);
  }
  .top-hero .top-hero__progress > .slick-arrow.slick-next::before {
    background: url(/extlib/common/img_new/cmn_ic13_01.svg) no-repeat center /contain;
    transform: translate(-50%,-50%) scale(1,1);
  }
  .top-hero .top-hero__progress__bar {
    position: relative;
    display: block;
    width: 115px;
    height: 2px;
    border-radius: 7px;
    background: rgb(var(--color_mono_bg_dark--rgb) / 0.4);
    overflow: hidden;
  }
  .top-hero .top-hero__progress__bar::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    border: 7px;
    background: var(--color_mono_white);
  }
  .top-hero.is-active .top-hero__progress__bar::before {
    animation: progressBarAnimation var(--top-hero-indication-time) linear forwards;
    animation-play-state: var(--top-hero-animation-state);
  }
  .top-hero .top-hero__switch > button {
    appearance: none;
    display: block;
    width: 28px;
    height: 18px;
    padding: 0;
    border: none;
    text-indent: -100vw;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    transition: opacity var(--transition_default-set);
  }
  .top-hero .top-hero__switch__pause {
    background: url(/extlib/common/img_new/cmn_ic12_01.svg) no-repeat center / contain;
  }
  .top-hero .top-hero__switch__play {
    background: url(/extlib/common/img_new/cmn_ic12_02.svg) no-repeat center / contain;
  }
  .top-hero .top-hero__switch > button:hover {
    opacity: 0.5;
  }

  /* ----- top-main-content ----- */
  .top-main-content {
    width: 100%;
    padding-inline: var(--content-side--pc);
    background: linear-gradient(2deg, #E5EAF0 15.13%, #ECF0F3 54.34%, #F9F9F9 70.26%, #E5EAF0 88.37%);
    overflow: hidden;
  }
  .top-main-content .top-main-content__inner {
    width: 100%;
    max-width: var(--content-width);
    margin: 0 auto;
    padding-block: 32px 128px;
  }
  .top-main-content .top-main-content__inner > :first-child {
    margin-top: 0!important;
  }

  /* ----- top-important-info ----- */
  .top-important-info {
    border-radius: 8px;
    background: var(--color_mono_white);
    overflow: hidden;
  }
  .top-important-info .top-important-info__head__inner {
    appearance: none;
    position: relative;
    width: 100%;
    padding-block: 12px;
    padding-inline: 32px 80px;
    border: none;
    background: none;
    text-align: left;
    cursor: pointer;
  }
  .top-important-info .top-important-info__head__inner::before {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% + 1px);
    right: 32px;
    width: 34px;
    height: 22px;
    border-radius: 8px;
    background: var(--color_main_key);
    transform: translateY(-50%);
    transition: background var(--transition_default-set);
  }
  .top-important-info .top-important-info__head__inner::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% + 1px);
    right: calc(32px + 12px);
    width: 10px;
    height: 10px;
    background: url(/extlib/common/img_new/cmn_ic14_01.svg) no-repeat center / contain;
    transform: translateY(-50%) scale(1,-1);
    transition: transform var(--transition_default-set);
  }
  .top-important-info .top-important-info__head__inner[aria-expanded="false"]::after {
    transform: translateY(-50%) scale(1,1);
  }
  .top-important-info .top-important-info__head__inner[aria-expanded="true"] .top-important-info__title__visually-hidden {
    display: none;
  }
  .top-important-info .top-important-info__head__inner[aria-expanded="false"] .top-important-info__title__visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    overflow: hidden !important;
    white-space: nowrap !important;
  }
  .top-important-info .top-important-info__title {
    color: var(--color_text_main);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.8;
    transition: color var(--transition_default-set);
  }
  .top-important-info .top-important-info__head__inner:hover::before {
    background-color: var(--color_link_hover);
  }
  .top-important-info .top-important-info__head__inner:hover .top-important-info__title {
    color: var(--color_text_sub);
  }
  .top-important-info .top-important-info__body {
    padding-block: 16px 48px;
    padding-inline: 68px;
    border-top: 1px solid var(--color_mono_bg_dark);
  }
  .top-important-info .top-important-info__article {
    border-bottom: 1px solid;
    border-image: linear-gradient(90deg, #E8E8E9 77%, rgba(236, 239, 243, 0.00) 100%) 1;
  }
  .top-important-info .top-important-info__article > [class*="__type"] {
    position: relative;
    display: flex;
    align-items: baseline;
    gap: 0 16px;
    padding-block: 12px 10px;
  }
  .top-important-info .top-important-info__article > [class*="__type"]:not([class*="--nolink"]) {
    padding-inline: 0 50px;
  }
  .top-important-info .top-important-info__article > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 15px;
    width: 34px;
    height: 22px;
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background var(--transition_default-set);
  }
  .top-important-info .top-important-info__article__type::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_01.svg);
  }
  .top-important-info .top-important-info__article__type--blank::after,
  .top-important-info .top-important-info__article__type--pdf::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_02.svg);
  }
  .top-important-info .top-important-info__article > [class*="__type"]:not([class*="--nolink"]):hover::after {
    background: var(--color_link_hover);
  }
  .top-important-info .top-important-info__article > [class*="__type"]:not([class*="--nolink"]):hover .top-important-info__article__property,
  .top-important-info .top-important-info__article > [class*="__type"]:not([class*="--nolink"]):hover .top-important-info__article__title {
    opacity: 0.5;
  }
  .top-important-info .top-important-info__article__property {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 0 8px;
    transition: opacity var(--transition_default-set);
  }
  .top-important-info .top-important-info__article__date {
    min-width: 6em;
    color: var(--color_text_darkgray);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
  }
  .top-important-info .top-important-info__article__category {
    display: inline-block;
    min-width: 72px;
    padding-block: 3px 3px;
    padding-inline: 5px;
    border-radius: 6px;
    border: 1px solid var(--color_text_darkgray);
    color: var(--color_text_darkgray);
    font-size: 10px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
  }
  .top-important-info .top-important-info__article__category.is-disaster-impact {
    border-color: var(--color_main_accent);
    color: var(--color_main_accent);
  }
  .top-important-info .top-important-info__article__title {
    color: var(--color_text_main);
    font-size: 14px;
    font-weight: 400;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    line-height: 1.7;
    transition: opacity var(--transition_default-set);
  }
  .top-important-info .top-important-info__link {
    display: flex;
    justify-content: flex-end;
    margin: 26px 0 0;
  }

  /* ----- top-view-all ----- */
  .top-view-all {
    border-bottom: 1px solid #C9CCD3;
  }
  .top-view-all > [class*="__type"] {
    position: relative;
    display: block;
    padding-right: calc(18px + 34px);
    padding-bottom: 8px;
    color: var(--color_text_main);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.8;
    letter-spacing: 0;
    transition: color var(--transition_default-set);
  }
  .top-view-all > [class*="__type"]::before {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 4px);
    right: 0;
    width: 34px;
    height: 22px;
    border-radius: 8px;
    background: var(--color_main_key);
    transform: translateY(-50%);
    transition: background var(--transition_default-set);
  }
  .top-view-all > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 4px);
    right: 12px;
    width: 10px;
    height: 10px;
    transform: translateY(-50%);
  }
  .top-view-all .top-view-all__type::after {
    background: url(/extlib/common/img_new/cmn_ic02_05.svg) no-repeat center / contain;
  }
  .top-view-all .top-view-all__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic02_06.svg) no-repeat center / contain;
  }
  .top-view-all > [class*="__type"]:hover {
    color: var(--color_text_sub);
  }
  .top-view-all > [class*="__type"]:hover::before {
    background-color: var(--color_link_hover);
  }

  /* ----- top-heading2 ----- */
  .top-heading2 {
    margin: 116px 0 0;
  }
  .top-heading2 .top-heading2__title {
    font-size: 36px;
    font-weight: 400;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }

  /* ----- top-rss ----- */
  .top-news__rss {
    position: absolute;
    bottom: -44px;
    right: 0;
    opacity: 1;
    transition: bottom var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-rss {
    margin: 0;
  }
  .top-rss > [class*="__type"] {
    position: relative;
    padding: 3px 9px 2px 27px;
    border-radius: 6px;
    background: rgba(123, 123, 123, 0.60);
    color: var(--color_mono_white) !important;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0;
    transition: background var(--transition_default-set);
  }
  .top-rss > [class*="__type"]::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 10px;
    width: 10px;
    height: 10px;
    background: url(/extlib/common/img_new/cmn_ic15_01.svg) no-repeat center / contain;
    transform: translateY(-50%);
  }
  .top-rss > [class*="__type"]:hover {
    background: var(--color_link_hover);
  }
  .top-news .top-news__rss:not(.is-show) {
    bottom: -90px;
    opacity: 0;
  }

  /* ----- top-news ----- */
  .top-news {
    margin: 110px 0 0;
  }
  .top-news .top-news__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0 var(--content-grid-gap--pc);
  }
  .top-news .top-news__head__heading > :first-child {
    margin-top: 0 !important;
  }
  .top-news .top-news__body {
    margin: 52px 0 0;
    padding-bottom: 44px;
  }
  .top-news .top-news__body > :first-child {
    margin-top: 0!important;
  }
  .top-news .top-news__link {
    position: absolute;
    bottom: 0;
    left: 0;
    display: flex;
    justify-content: flex-start;
    margin: -36px 0 0;
    opacity: 1;
    transition: bottom var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-news .top-news__link:not(.is-show) {
    bottom: -50px;
    opacity: 0;
  }

  /* ----- top-news-tab ----- */
  .top-news-tab {
    position: relative;
    display: flex;
    justify-content: space-between;
    gap: 0 var(--content-grid-gap--pc);
  }
  .top-news-tab .top-news-tab__head {
    flex-shrink: 0;
    padding-bottom: 50px;
  }
  .top-news-tab .top-news-tab__button-wrap > li {
    position: relative;
    top: 0;
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-news-tab .top-news-tab__button-wrap > li:not(.is-show) {
    top: 100px;
    opacity: 0;
  }
  .top-news-tab .top-news-tab__button-wrap > li:not(:first-child) {
    margin-top: 12px;
  }
  .top-news-tab .top-news-tab__button {
    appearance: none;
    padding: 6px 15px;
    border-radius: 8px;
    border: 1px solid var(--color_text_darkgray);
    background: none;
    color: var(--color_text_main);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    cursor: pointer;
    transition: border var(--transition_default-set), color var(--transition_default-set), background var(--transition_default-set);
  }
  .top-news-tab .top-news-tab__button:hover,
  .top-news-tab .top-news-tab__button[aria-expanded="true"] {
    border-color: #222222;
    background-color: #222222;
    color: var(--color_mono_white);
  }
  .top-news-tab .top-news-tab__body {
    width: 100%;
    max-width: 824px;
  }
  .top-news-tab .top-news-tab__panel {
    width: 100%;
  }
  .top-news-tab .top-news-tab__panel[aria-hidden="true"] {
    display: none;
  }
  .top-news-tab .top-news-tab__panel > :first-child {
    margin-top: 0 !important;
  }
  .top-news-tab .top-news-tab__article {
    position: relative;
    top: 0;
    margin: 14px 0 0;
    border-bottom: 1px solid;
    border-image: linear-gradient(90deg, #E8E8E9 77%, rgba(236, 239, 243, 0.00) 100%) 1;
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-news-tab .top-news-tab__article:not(.is-show) {
    top: 100px;
    opacity: 0;
  }
  .top-news-tab .top-news-tab__article > [class*="__type"] {
    position: relative;
    display: block;
    width: 100%;
    padding-bottom: 19px;
  }
  .top-news-tab .top-news-tab__article > [class*="__type"]:not([class*="--nolink"]) {
    padding-right: 50px;
  }
  .top-news-tab .top-news-tab__article > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: calc(50% - 1px);
    width: 34px;
    height: 22px;
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background var(--transition_default-set);
    transform: translateY(-50%);
  }
  .top-news-tab .top-news-tab__article__type::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_01.svg);
  }
  .top-news-tab .top-news-tab__article__type--blank::after,
  .top-news-tab .top-news-tab__article__type--pdf::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_02.svg);
  }
  .top-news-tab .top-news-tab__article__title {
    color: var(--color_text_main);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    transition: opacity var(--transition_default-set);
  }
  .top-news-tab .top-news-tab__article__property {
    display: flex;
    align-items: baseline;
    flex-flow: row wrap;
    margin: 5px 0 0;
    transition: opacity var(--transition_default-set);
  }
  .top-news-tab .top-news-tab__article__category {
    display: flex;
    align-items: baseline;
    flex-flow: row wrap;
    color: var(--color_text_darkgray);
    font-size: 12px;
    font-weight: 300;
    line-height: 1.4;
  }
  .top-news-tab .top-news-tab__article__category > li:not(:last-child)::after {
    content: "/";
    margin-inline: 4px;
  }
  .top-news-tab .top-news-tab__article__date {
    color: var(--color_text_sub);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.4;
  }
  .top-news-tab .top-news-tab__article__date:not(:only-child)::before {
    content: "";
    display: inline-block;
    width: 2px;
    height: 7px;
    margin-inline: 11px;
    background: url(/extlib/common/img_new/cmn_ex01_01.svg) no-repeat center / contain;
    vertical-align: 1px;
  }
  .top-news-tab .top-news-tab__article > [class*="__type"]:not([class*="--nolink"]):hover .top-news-tab__article__title,
  .top-news-tab .top-news-tab__article > [class*="__type"]:not([class*="--nolink"]):hover .top-news-tab__article__property {
    opacity: 0.5;
  }
  .top-news-tab .top-news-tab__article > [class*="__type"]:not([class*="--nolink"]):hover:after {
    background: var(--color_link_hover);
  }

  /* ----- top-pdf-badge ----- */
  .top-pdf-badge {
    display: inline-block;
    margin-inline: 10px;
    padding: 1px 6px;
    border-radius: 4px;
    border: 1px solid var(--color_mono_bg_dark);
    color: var(--color_text_sub);
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
    vertical-align: 1px;
  }

  /* ----- top-news-carousel ----- */
  .top-news-carousel {
    position: relative;
    margin: 64px 0 0;
    padding: 63px 0 0;
    border-top: 1px solid var(--color_mono_bg_dark);
  }
  .top-news-carousel .top-news-carousel__detail {
    position: relative;
    width: calc((100% - (min(40px, calc(40 / 1372 * 100vw))) * 2) / 3);
    min-height: 228px;
    overflow: hidden;
    z-index: 2;
  }
  .top-news-carousel .top-news-carousel__article {
    transition: opacity var(--transition_duration) var(--transition_easing) calc(var(--transition_duration) * (3 / 5));
  }
  .top-news-carousel .top-news-carousel__detail.swiper-initialized .top-news-carousel__article:not(.swiper-slide-active) {
    visibility: hidden;
    pointer-events: none;
  }
  .top-news-carousel .top-news-carousel__article > [class*="__type"] {
    display: block;
  }
  .top-news-carousel .top-news-carousel__article__title {
    color: var(--color_text_main);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.7;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    transition: opacity var(--transition_default-set);
  }
  .top-news-carousel .top-news-carousel__article__category {
    display: inline-block;
    margin: 19px 0 0;
    padding: 7px 12px 6px;
    border-radius: 14px;
    background: var(--color_mono_white);
    color: var(--color_text_darkgray);
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
  }
  .top-news-carousel .top-news-carousel__article > [class*="__type"]:hover .top-news-carousel__article__title {
    opacity: 0.5;
  }
  .top-news-carousel .top-news-carousel__image-carousel {
    position: relative;
    width: 100%;
    height: 343px;
    margin: -232px 0 0;
    overflow: hidden;
    z-index: 1;
  }
  .top-news-carousel .top-news-carousel__image-carousel__wrapper {
    display: flex;
    align-items: flex-end;
    position: relative;
    left: calc(((((100% - 40px * 5) / 6) - 40px) / 2 + 40px) * -1);
    transition: transform var(--transition_default-set) !important;
  }
  body[data-browser="safari"] .top-news-carousel .top-news-carousel__image-carousel__wrapper {
    left: calc(((((100% - 40px * 5) / 6) - 40px) / 2 + 40px) * -1 + 4px);
  }
  body[data-browser="safari"] .top-news-carousel .top-news-carousel__image-carousel__wrapper:has([data-swiper-slide-index="0"].swiper-slide-active) {
    left: calc(((((100% - 40px * 5) / 6) - 40px) / 2 + 40px) * -1 + 3px);
  }
  .top-news-carousel .top-news-carousel__image-carousel:not(.swiper-initialized) .top-news-carousel__image-carousel__wrapper {
    left: calc((((100% - 40px * 5) / 6) * 2) + 40px * 2);
  }
  .top-news-carousel .top-news-carousel__image-carousel.is-reinit .top-news-carousel__image-carousel__wrapper {
    left: calc(((((100% - 40px * 5) / 6) - 40px) / 2 + 40px) * -1);
  }
  body[data-browser="safari"] .top-news-carousel .top-news-carousel__image-carousel.is-reinit .top-news-carousel__image-carousel__wrapper {
    left: calc(((((100% - 40px * 5) / 6) - 40px) / 2 + 40px) * -1 + 4px);
  }
  .top-news-carousel .top-news-carousel__image-carousel.is-reinit .top-news-carousel__image {
    transition: none;
  }
  .top-news-carousel .top-news-carousel__image {
    position: relative;
    display: flex;
    align-items: flex-end;
    width: calc((100% - 40px * 5) / 6);
    height: auto;
    border-radius: 8px;
    overflow: hidden;
    transition: width var(--transition_duration) ease-in var(--transition_delay);
  }
  .top-news-carousel .top-news-carousel__image-carousel:not(.swiper-initialized).is-afterInit.is-imagesReady .top-news-carousel__image:only-child,
  .top-news-carousel .top-news-carousel__image-carousel.swiper-initialized.is-afterInit.is-imagesReady .top-news-carousel__image.swiper-slide-active {
    width: calc(((100% - 40px * 5) / 6) * 3 + 40px * 2);
  }
  .top-news-carousel .top-news-carousel__image:not(.swiper-slide-active) {
    cursor: pointer;
  }
  .top-news-carousel .top-news-carousel__image > [class*="__type"] {
    position: relative;
    display: block;
    aspect-ratio: 608 / 343;
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    z-index: 1;
  }
  .top-news-carousel .top-news-carousel__image-carousel.swiper-initialized .top-news-carousel__image:not(.swiper-slide-active) > [class*="__type"] {
    pointer-events: none;
  }
  .top-news-carousel .top-news-carousel__image-carousel.swiper-initialized .top-news-carousel__image:not(.swiper-slide-active) > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 0.3);
    opacity: 1;
    z-index: 2;
    transition: opacity var(--transition_default-set);
  }
  .top-news-carousel .top-news-carousel__image.swiper-slide-active > [class*="__type"]::after {
    opacity: 0;
  }
  .top-news-carousel .top-news-carousel__image > [class*="__type"] img  {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform var(--transition_default-set);
    transform-origin: center;
    transform: scale(1);
    z-index: 1;
  }
  .top-news-carousel .top-news-carousel__image-carousel:not(.swiper-initialized) .top-news-carousel__image > [class*="__type"]:hover img,
  .top-news-carousel .top-news-carousel__image-carousel.swiper-initialized .top-news-carousel__image.swiper-slide-active > [class*="__type"]:hover img  {
    transform: scale(1.1);
  }
  .top-news-carousel .top-news-carousel__image::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 0;
    background: var(--color_mono_white);
    z-index: 2;
    transition: height var(--transition_default-set);
  }
  .top-news-carousel .top-news-carousel__image::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: -100%;
    width: 100%;
    height: 0;
    background: var(--color_text_main);
    z-index: 3;
    transition: height var(--transition_default-set);
  }
  .top-news-carousel.is-active .top-news-carousel__image.swiper-slide-active::before {
    height: 3px;
  }
  .top-news-carousel.is-active .top-news-carousel__image.swiper-slide-active::after {
    height: 3px;
    animation: progressBarAnimation var(--top-news-carousel-indication-time) linear forwards;
    animation-play-state: var(--top-news-carousel-animation-state);
  }
  .top-news-carousel .top-news-carousel__control {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0 20px;
    margin: 48px 0 0;
  }
  .top-news-carousel .top-news-carousel__switch > button {
    appearance: none;
    display: block;
    width: 34px;
    height: 22px;
    padding: 0;
    border: none;
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background var(--transition_default-set);
    text-indent: -100vw;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
  }
  .top-news-carousel .top-news-carousel__switch__pause {
    mask-image: url(/extlib/common/img_new/cmn_ic12_05.svg);
  }
  .top-news-carousel .top-news-carousel__switch__play {
    mask-image: url(/extlib/common/img_new/cmn_ic12_06.svg);
  }
  .top-news-carousel .top-news-carousel__switch > button:hover {
    background-color: var(--color_link_hover);
  }
  .top-news-carousel .top-news-carousel__progress {
    display: flex;
    align-items: center;
    gap: 0 24px;
  }
  .top-news-carousel .top-news-carousel__arrow {
    appearance: none;
    position: relative;
    display: block;
    width: 34px;
    height: 22px;
    padding: 0;
    border: none;
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    mask-image: url(/extlib/common/img_new/cmn_ic01_01.svg);
    transition: background var(--transition_default-set);
    text-indent: -100vw;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
  }
  .top-news-carousel .top-news-carousel__arrow.swiper-prev {
    transform: scale(-1,1);
  }
  .top-news-carousel .top-news-carousel__arrow.swiper-next {
    transform: scale(1,1);
  }
  .top-news-carousel .top-news-carousel__arrow:hover {
    background-color: var(--color_link_hover);
  }
  .top-news-carousel .top-news-carousel__number {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0 28px;
  }
  .top-news-carousel .top-news-carousel__number::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: calc(50% - 2px);
    width: 2px;
    height: 12px;
    background: url(/extlib/common/img_new/cmn_ex01_02.svg) no-repeat center /contain;
    transform: translate(-50%,-50%);
  }
  .top-news-carousel .top-news-carousel__number__current,
  .top-news-carousel .top-news-carousel__number__total {
    min-width: 1.43em;
    color: var(--color_text_darkgray);
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
  }

  /* ----- top-tsunagu ----- */
  .top-tsunagu {
    position: relative;
    margin: 128px 0 0;
  }
  .top-tsunagu .pin-spacer:has(.top-tsunagu-grid) {
    transition: height var(--transition_default-set);
    pointer-events: none;
  }
  /* ----- top-tsunagu-grid ----- */
  .top-tsunagu-grid {
    width: 100%;
    pointer-events: all;
  }
  .top-tsunagu-grid:not(.is-animated) {
    height: 400vh;
  }
  .top-tsunagu-grid .top-tsunagu-grid__container {
    position: relative;
    left: 50%;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: min(179px, calc(179 / 1372 * 100vw)) min(173px, calc(173 / 1372 * 100vw)) min(179px, calc(179 / 1372 * 100vw)) min(357px, calc(357 / 1372 * 100vw));
    gap: min(40px, calc(40 / 1372 * 100vw));
    justify-content: center;
    width: 100%;
    max-height: 100%;
    transform: translateX(-50%);
    transform-origin: top center;
  }
  .top-tsunagu-grid .top-tsunagu-grid__container > [class*="__item"] {
    position: relative;
    display: flex;
    justify-content: center;
    width: 100%;
    height: 100%;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--01 {
    grid-column: 5 / span 4;
    grid-row: 1 / span 3;
    transform-origin: center top;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--02 {
    grid-column: 1 / span 4;
    grid-row: 1 / span 2;
    transform-origin: right bottom;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--03 {
    grid-column: 9 / span 4;
    grid-row: 1 / span 1;
    transform-origin: left bottom;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--04 {
    grid-column: 1 / span 4;
    grid-row: 3 / span 1;
    transform-origin: right top;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--05 {
    grid-column: 9 / span 4;
    grid-row: 2 / span 2;
    transform-origin: left top;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--06 {
    grid-column: 1 / span 5;
    grid-row: 4 / span 1;
    transform-origin: right top;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--07 {
    grid-column: 6 / span 7;
    grid-row: 4 / span 1;
    transform-origin: left top;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--08 {
    grid-column: 1 / span 8;
    grid-row: 5 / span 1;
    transform-origin: right top;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--09 {
    grid-column: 9 / span 4;
    grid-row: 5 / span 1;
    transform-origin: left top;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--01 .top-tsunagu-grid__heading {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 100%;
    padding-inline: 0.5em;
    color: var(--color_mono_white);
    font-size: min(42px, calc(42 / 1372 * 100vw));
    font-weight: 400;
    line-height: 1.8;
    transform: translate(-50%,-50%);
    text-align: center;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--01 .top-tsunagu-grid__heading__logo {
    letter-spacing: 0;
  }
  .top-tsunagu-grid .top-tsunagu-grid__container > [class*="__item"] > [class*="__type"] {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: min(8px, calc(8 / 1372 * 100vw));
    overflow: hidden;
  }
  .top-tsunagu-grid .top-tsunagu-grid__container > [class*="__item"] > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: block;
    position: absolute;
    right: min(36px, calc(36 / 1372 * 100vw));
    bottom: min(36px, calc(36 / 1372 * 100vw));
    width: min(34px, calc(34 / 1372 * 100vw));
    height: min(22px, calc(22 / 1372 * 100vw));
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__type::after {
    background: url(/extlib/common/img_new/cmn_ic01_03.svg) no-repeat center / contain;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic01_04.svg) no-repeat center / contain;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__type-v2::after {
    background: url(/extlib/common/img_new/cmn_ic01_01.svg) no-repeat center / contain;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__type-v2--blank::after {
    background: url(/extlib/common/img_new/cmn_ic01_02.svg) no-repeat center / contain;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--08 > [class*="__type"] {
    background: rgb(255 255 255 / 0.7);
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__image {
    width: 100%;
    height: 100%;
    border-radius: min(8px, calc(8 / 1372 * 100vw));
    overflow: hidden;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__image img {
    width: 100%;
    max-width: none;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1);
    transition: transform var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--08 .top-tsunagu-grid__item__image img {
    width: 100%;
    height: auto;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__detail {
    position: absolute;
    left: min(36px, calc(36 / 1372 * 100vw));
    width: calc(100% - min(36px, calc(36 / 1372 * 100vw)) - min(55px, calc(55 / 1372 * 100vw)));
    color: var(--color_mono_white);
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--02 .top-tsunagu-grid__item__detail {
    top: min(34px, calc(34 / 1372 * 100vw));
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--07 .top-tsunagu-grid__item__detail {
    bottom: min(34px, calc(34 / 1372 * 100vw));
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__title {
    font-size: clamp(12px, calc(22 / 1372 * 100vw), 22px);
    font-weight: 500;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__text {
    margin-top: min(9px, calc(9 / 1372 * 100vw));
    font-size: clamp(10px, calc(15 / 1372 * 100vw), 15px);
    font-weight: 400;
    line-height: 1.7;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-tsunagu-grid .top-tsunagu-grid__container > [class*="__item"] > [class*="__type"]:not([class*="__type-v2"]):not([class*="--nolink"]):hover .top-tsunagu-grid__item__image img {
    transform: scale(1.1);
  }
  .top-tsunagu-grid .top-tsunagu-grid__container > [class*="__item"] > [class*="__type-v2"]:not([class*="--nolink"]):hover .top-tsunagu-grid__item__image img {
    opacity: 0.5;
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(4, 1fr);
    width: 100%;
    gap: min(12px, calc(12 / 1372 * 100vw));
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list > li > [class*="__type"] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    border-radius: min(8px, calc(8 / 1372 * 100vw));
    width: 100%;
    height: 100%;
    padding-block: min(3px, calc(3 / 1372 * 100vw));
    padding-inline: min(32px, calc(32 / 1372 * 100vw)) min(70px, calc(70 / 1372 * 100vw));
    background: rgb(255 255 255 / 0.7);
    overflow: hidden;
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list > li > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: min(32px, calc(32 / 1372 * 100vw));
    width: min(34px, calc(34 / 1372 * 100vw));
    height: min(22px, calc(22 / 1372 * 100vw));
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background var(--transition_default-set);
    transform: translateY(-50%);
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list__type::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_01.svg);
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list__type--blank::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_02.svg);
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list__title {
    color: var(--color_text_main);
    font-size: clamp(12px, calc(18 / 1372 * 100vw), 18px);
    font-weight: 500;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    transition: opacity var(--transition_default-set);
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list__text {
    color: var(--color_text_darkgray);
    font-size: clamp(10px, calc(12 / 1372 * 100vw), 12px);
    font-weight: 300;
    line-height: 1.7;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    transition: opacity var(--transition_default-set);
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list > li > [class*="__type"]:not([class*="--nolink"]):hover::after {
    background: var(--color_link_hover);
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list > li > [class*="__type"]:not([class*="--nolink"]):hover .top-tsunagu-grid__link-list__title,
  .top-tsunagu-grid .top-tsunagu-grid__link-list > li > [class*="__type"]:not([class*="--nolink"]):hover .top-tsunagu-grid__link-list__text {
    opacity: 0.5;
  }

  /* ----- top-service ----- */
  .top-service {
    display: flex;
    align-items: stretch;
    flex-flow: row wrap;
    gap: var(--content-grid-gap--pc);
    margin: 52px 0 0;
  }
  .top-service .top-service__section {
    display: flex;
    flex-direction: column;
    width: calc((100% - var(--content-grid-gap--pc)) / 2);
    padding: 29px 32px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.70);
  }
  .top-service .top-service__section__head {
    flex-shrink: 0;
    width: 100%;
  }
  .top-service .top-service__section__title {
    color: var(--color_text_main);
    font-size: 24px;
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: 0;
  }
  .top-service .top-service__section__body {
    flex-grow: 1;
    width: 100%;
    margin: 47px 0 0;
  }

  /* ----- top-service-tab ----- */
  .top-service-tab {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }
  .top-service-tab .top-service-tab__head {
    flex-shrink: 0;
    width: 100%;
  }
  .top-service-tab .top-service-tab__button-wrap {
    display: flex;
    justify-content: center;
    gap: 16px;
    width: 100%;
  }
  .top-service-tab .top-service-tab__button-wrap > li {
    position: relative;
    top: 0;
    width: min(140px, calc((100% - 16px * 2) / 3));
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__button-wrap > li:not(.is-show) {
    top: 50px;
    opacity: 0;
  }
  .top-service-tab .top-service-tab__button,
  .top-service-tab .top-service-tab__button-wrap > li > [class*="__type"] {
    appearance: none;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 112px;
    margin: 0;
    padding: 25px 18px;
    border-radius: 8px;
    overflow: hidden;
    cursor: pointer;
  }
  .top-service-tab .top-service-tab__button {
    border: 1px solid rgba(241, 242, 246, 0.90);
    background: rgba(241, 242, 246, 0.90);
    transition: border var(--transition_default-set), background var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__button::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 6px;
    bottom: 0;
    left: 0;
    background: var(--color_mono_bg_dark);
    transform: scaleY(0);
    transform-origin: center bottom;
    transition: transform var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__button-wrap > li.is-current .top-service-tab__button,
  .top-service-tab .top-service-tab__button:hover {
    border-color: var(--color_mono_bg_dark);
    background-color: var(--color_mono_white);
  }
  .top-service-tab .top-service-tab__button-wrap > li.is-current .top-service-tab__button::after,
  .top-service-tab .top-service-tab__button:hover::after {
    transform: scaleY(1);
  }
  .top-service-tab .top-service-tab__button-wrap > li > [class*="__type"] {
    background: var(--color_mono_white);
  }
  .top-service-tab .top-service-tab__button-wrap > li > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 8px;
    right: 8px;
    width: 10px;
    height: 10px;
    background: var(--color_text_sub);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__type::after {
    mask-image: url(/extlib/common/img_new/cmn_ic02_01.svg);
  }
  .top-service-tab .top-service-tab__type--blank::after {
    mask-image: url(/extlib/common/img_new/cmn_ic02_02.svg);
  }
  .top-service-tab .top-service-tab__button-wrap > li > [class*="__type"] > img {
    transition: opacity var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__button-wrap > li > [class*="__type"]:hover::after {
    background: var(--color_link_hover);
  }
  .top-service-tab .top-service-tab__button-wrap > li > [class*="__type"]:hover > img {
    opacity: 0.5;
  }
  .top-service-tab .top-service-tab__body {
    flex-grow: 1;
    width: 100%;
    margin: 16px 0 0;
  }
  .top-service-tab .top-service-tab__panel {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 38px 0;
    height: 100%;
  }
  .top-service-tab .top-service-tab__panel__body {
    flex-grow: 1;
  }
  .top-service-tab .top-service-tab__link {
    display: flex;
    gap: var(--content-grid-gap--pc);
  }
  .top-service-tab .top-service-tab__link__list {
    width: 100%;
  }
  .top-service-tab .top-service-tab__link__list > li {
    position: relative;
    top: 0;
    border-bottom: 2px solid;
    border-image: linear-gradient(90deg, #F1F2F6 78%, rgba(241, 242, 246, 0.00) 100%) 1;
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__link__list > li:not(.is-show) {
    top: 50px;
    opacity: 0;
  }
  .top-service-tab .top-service-tab__link__list > li > [class*="__type"] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    padding-block: 14px 13px;
    padding-inline: 0 45px;
    color: var(--color_text_main);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    text-align: left;
    transition: color var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__link__list > li > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 34px;
    height: 22px;
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background var(--transition_default-set);
    transform: translateY(-50%);
  }
  .top-service-tab .top-service-tab__link__type::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_01.svg);
  }
  .top-service-tab .top-service-tab__link__type--blank::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_02.svg);
  }
  .top-service-tab .top-service-tab__link__list > li > [class*="__type"]:hover {
    color: var(--color_link_hover);
  }
  .top-service-tab .top-service-tab__link__list > li > [class*="__type"]:hover::after {
    background: var(--color_link_hover);
  }
  .top-service-tab .top-service-tab__inline-link {
    position: relative;
    top: 0;
    display: flex;
    flex-flow: row wrap;
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__inline-link:not(.is-show) {
    top: 50px;
    opacity: 0;
  }
  .top-service-tab .top-service-tab__inline-link > li {
    position: relative;
  }
  .top-service-tab .top-service-tab__inline-link > li:not(:last-child)::after {
    content: "/";
    margin-inline: .7em;
    color: var(--color_text_sub);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 0;
  }
  .top-service-tab .top-service-tab__inline-link > li > [class*="__type"] {
    color: var(--color_text_main);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    transition: color var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__inline-link > li > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: inline-block;
    position: relative;
    top: 3px;
    width: min(20px, calc(20 / 1372 * 100vw));
    height: min(13px, calc(13 / 1372 * 100vw));
    margin-left: 0.7em;
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__inline-link__type::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_01.svg);
  }
  .top-service-tab .top-service-tab__inline-link__type--blank::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_02.svg);
  }
  .top-service-tab .top-service-tab__inline-link > li > [class*="__type"]:hover {
    color: var(--color_link_hover);
  }
  .top-service-tab .top-service-tab__inline-link > li > [class*="__type"]:not([class*="--nolink"]):hover::after {
    background: var(--color_link_hover);
  }

  /* ----- top-sustainability ----- */
  .top-sustainability {
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: 520px;
    padding-block: 32px 57px;
    padding-inline: var(--content-side--pc);
    background: url(/extlib/top_new/img/index_bg01_01.jpg) no-repeat center / cover;
    overflow: hidden;
  }
  .top-sustainability .top-sustainability__inner {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0 var(--content-grid-gap--pc);
    width: 100%;
    max-width: var(--content-width);
    margin: 0 auto;
  }
  .top-sustainability .top-sustainability__head {
    width: 500px;
  }
  .top-sustainability .top-sustainability__title {
    color: var(--color_mono_white);
    font-size: 36px;
    font-weight: 400;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-sustainability .top-sustainability__text {
    margin: 14px 0 0;
    color: var(--color_mono_white);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.7;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-sustainability .top-sustainability__body {
    width: 392px;
    padding: 0 0 7px;
  }
  .top-sustainability .top-sustainability__link-list {
    width: 100%;
  }
  .top-sustainability .top-sustainability__link-list > li > [class*="__type"] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    padding-block: 14px 13px;
    padding-inline: 0 45px;
    border-bottom: 2px solid;
    border-image: linear-gradient(90deg, #DDE0E7 78.5%, rgba(221, 224, 231, 0.00) 94.18%) 1;
    color: var(--color_mono_white);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    text-align: left;
    transition: opacity var(--transition_default-set);
  }
  .top-sustainability .top-sustainability__link-list > li > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 34px;
    height: 22px;
    transform: translateY(-50%);
    transition: filter var(--transition_default-set);
  }
  .top-sustainability .top-sustainability__link__type::after {
    background: url(/extlib/common/img_new/cmn_ic01_03.svg) no-repeat center /contain;
  }
  .top-sustainability .top-sustainability__link__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic01_04.svg) no-repeat center /contain;
  }
  .top-sustainability .top-sustainability__link-list > li > [class*="__type"]:hover {
    opacity: 0.5;
  }

  /* ----- top-assist-content ----- */
  .top-assist-content {
    width: 100%;
    padding-inline: var(--content-side--pc);
    background: var(--color_mono_white);
    overflow: hidden;
  }
  .top-assist-content .top-assist-content__inner {
    width: 100%;
    max-width: var(--content-width);
    margin: 0 auto;
    padding-block: 121px 128px;
  }
  .top-assist-content .top-assist-content__inner > :first-child {
    margin-top: 0!important;
  }

  /* ----- top-section-column ----- */
  .top-section-column {
    display: flex;
    flex-flow: row wrap;
    gap: var(--content-grid-gap--pc);
    margin: 80px 0 0;
  }
  .top-section-column .top-section-column__item {
    width: calc((100% - var(--content-grid-gap--pc)) / 2);
  }
  .top-section-column .top-section-column__item__title {
    color: var(--color_text_main);
    font-size: 24px;
    font-weight: 500;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-section-column .top-section-column__item__body {
    margin: 23px 0 0;
  }
  .top-section-column .top-section-column__item__body > :first-child {
    margin-top: 0 !important;
  }

  /* ----- top-link-list ----- */
  .top-link-list {
    display: flex;
    flex-flow: row wrap;
    gap: 0 var(--content-grid-gap--pc);
    width: 100%;
    margin: 23px 0 0;
  }
  .top-link-list > li {
    width: calc((100% - var(--content-grid-gap--pc)) / 2);
    border-bottom: 2px solid;
    border-image: linear-gradient(90deg, #F1F2F6 78%, rgba(241, 242, 246, 0.00) 100%) 1;
  }
  .top-link-list > li > [class*="__type"] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    padding-block: 14px 13px;
    padding-inline: 0 45px;
    color: var(--color_text_main);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    text-align: left;
    transition: color var(--transition_default-set);
  }
  .top-link-list > li > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 34px;
    height: 22px;
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background var(--transition_default-set);
    transform: translateY(-50%);
  }
  .top-link-list .top-link-list__type::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_01.svg);
  }
  .top-link-list .top-link-list__type--blank::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_02.svg);
  }
  .top-link-list > li > [class*="__type"]:hover {
    color: var(--color_link_hover);
  }
  .top-link-list > li > [class*="__type"]:hover::after {
    background: var(--color_link_hover);
  }

  /* ----- top-banner ----- */
  .top-banner {
    display: flex;
    gap: var(--content-grid-gap--pc);
    margin: 80px 0 0;
  }
  .top-banner .top-banner__item {
    width: calc((100% - var(--content-grid-gap--pc)) / 2);
  }
  .top-banner .top-banner__item > [class*="__type"] {
    display: block;
    border-radius: 8px;
    border: 1px solid var(--color_mono_bg_dark);
    overflow: hidden;
    transition: opacity var(--transition_default-set);
  }
  .top-banner .top-banner__item > [class*="__type"]:hover {
    opacity: 0.5;
  }

  /* ----- top-customer-info ----- */
  .top-customer-info {
    margin-block: 80px 0;
    padding-block: 80px 0;
    border-top: 1px solid var(--color_mono_bg_dark);
  }
  .top-customer-info .top-customer-info__inner {
    border-radius: 8px;
    background: var(--color_mono_bg_light);
    overflow: hidden;
  }
  .top-customer-info .top-customer-info__head__inner {
    appearance: none;
    position: relative;
    width: 100%;
    padding-block: 17px;
    padding-inline: 32px 80px;
    border: none;
    background: none;
    text-align: left;
    cursor: pointer;
  }
  .top-customer-info .top-customer-info__head__inner::before {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% + 1px);
    right: 32px;
    width: 34px;
    height: 22px;
    border-radius: 8px;
    background: var(--color_main_key);
    transform: translateY(-50%);
    transition: background var(--transition_default-set);
  }
  .top-customer-info .top-customer-info__head__inner::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% + 1px);
    right: calc(32px + 12px);
    width: 10px;
    height: 10px;
    background: url(/extlib/common/img_new/cmn_ic14_01.svg) no-repeat center / contain;
    transform: translateY(-50%) scale(1,-1);
    transition: transform var(--transition_default-set);
  }
  .top-customer-info .top-customer-info__head__inner[aria-expanded="false"]::after {
    transform: translateY(-50%) scale(1,1);
  }
  .top-customer-info .top-customer-info__head__inner[aria-expanded="true"] .top-customer-info__title__visually-hidden {
    display: none;
  }
  .top-customer-info .top-customer-info__head__inner[aria-expanded="false"] .top-customer-info__title__visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    overflow: hidden !important;
    white-space: nowrap !important;
  }
  .top-customer-info .top-customer-info__title {
    color: var(--color_text_main);
    font-size: 20px;
    font-weight: 500;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    transition: color var(--transition_default-set);
  }
  .top-customer-info .top-customer-info__head__inner:hover::before {
    background-color: var(--color_link_hover);
  }
  .top-customer-info .top-customer-info__head__inner:hover .top-customer-info__title {
    color: var(--color_text_sub);
  }
  .top-customer-info .top-customer-info__body {
    padding-block: 19px 40px;
    padding-inline: 68px;
    border-top: 1px solid var(--color_mono_bg_dark);
  }
  .top-customer-info .top-customer-info__list > ul > li {
    position: relative;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.7;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    color: var(--color_text_main);
    border-bottom: 1px solid var(--color_mono_bg_dark);
    border-image: linear-gradient(90deg, #E8E8E9 77%, rgba(236, 239, 243, 0.00) 100%) 1;
  }
  .top-customer-info .top-customer-info__list > ul > li > a {
    position: relative;
    display: flex;
    align-items: baseline;
    gap: 0 16px;
    padding-block: 15px 10px;
    padding-inline: 0 50px;
    color: var(--color_text_main);
    transition: opacity var(--transition_default-set);
  }
  .top-customer-info .top-customer-info__list > ul > li:has( > a)::after {
    content: "";
    display: block;
    position: absolute;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    background: var(--color_text_darkgray);
    transition: background var(--transition_default-set);
    right: 0;
    bottom: 15px;
    width: 34px;
    height: 22px;
  }
  .top-customer-info .top-customer-info__list > ul > li:has( > a)::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_01.svg);
  }
  .top-customer-info .top-customer-info__list > ul > li:has(> a[target="_blank"])::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_02.svg);
  }
  .top-customer-info .top-customer-info__list > ul > li > a:hover {
    opacity: 0.5;
  }
  .top-customer-info .top-customer-info__list > ul > li:has(> a:hover)::after {
    background-color: var(--color_link_hover);
  }
  .top-customer-info .top-customer-info__list > ul > li > a > span {
    display: none;
  }
  .top-customer-info .top-customer-info__list > ul > li > a > img {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    overflow: hidden !important;
    white-space: nowrap !important;
  }

  /* ----- news-bunner ----- */
  .news-bunner {
    width: 100%;
    padding-inline: var(--content-side--pc);
    background: var(--color_mono_bg_light);
    overflow: hidden;
  }
  .news-bunner .news-bunner__inner {
    width: 100%;
    max-width: var(--content-width);
    margin: 0 auto;
    padding-block: 34px;
  }
  #emgAreaWrap + .news-bunner .news-bunner__inner {
    border-top: 1px solid #D2D2D2;
  }
  .news-bunner-link-list {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 10px;
  }
  .news-bunner-link-list li {
    position: relative;
    padding-left: 30px;
    font-weight: 600;
    font-size: 15px;
  }
  .news-bunner-link-list li::before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 18px;
    height: 18px;
    text-align: center;
    background: url(/extlib/top_new/img/index_ic01_02.svg) no-repeat center / contain;
    transform: translateY(-50%);
    content: '';
  }
  .news-bunner-link-list li > [class*="__type"]:not([class*="--nolink"]) {
    padding-right: 58px;
    color: var(--color_text_main);
    transition: color var(--transition_default-set);
  }
  .news-bunner-link-list li > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 34px;
    height: 22px;
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background var(--transition_default-set);
    transform: translateY(-50%);
  }
  .news-bunner-link-list .news-bunner-link-list__type--blank::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_02.svg);
  }
  .news-bunner-link-list li > [class*="__type"]:not([class*="--nolink"]):hover {
    color: var(--color_link_hover);
  }
  .news-bunner-link-list li > [class*="__type"]:not([class*="--nolink"]):hover::after {
    background: var(--color_link_hover);
  }



  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}


/* ======================================================
 * PC Media Queries
====================================================== */
@media screen and (min-width: 1921px) {}

@media screen and (min-width: 768px) and (max-width: 1920px) {}

@media screen and (min-width: 768px) and (max-width: 1440px) {}

@media screen and (min-width: 768px) and (max-width: 1372px) {
}
@media screen and (min-width: 768px) and (max-width: 1256px) {
}
@media screen and (min-width: 768px) and (max-width: 1080px) {
  .top-hero .top-hero__item__detail {
    width: calc(100% - (min(91px, calc(91 / 1440 * 100vw)) * 2));
  }
  .top-section-column .top-section-column__item {
    width: 100%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .top-news-carousel .top-news-carousel__detail {
    width: 100%;
    min-height: auto;
  }
  .top-news-carousel .top-news-carousel__image-carousel {
    margin-top: 10px;
    height: min(343px, calc(343 / 1372 * 100vw));
  }
  .top-service .top-service__section {
    width: 100%;
  }
}
@media screen and (min-width: 768px) and (max-width: 812px) {}

/* ======================================================
 * SP
====================================================== */
@media only screen and (max-width: 767px) {
  /* ------------------------------------------------------
   * OldStyle
  ------------------------------------------------------ */

  /* ------------------------------------------------------
   * Override
  ------------------------------------------------------ */

  /* ------------------------------------------------------
   * Parts
  ------------------------------------------------------ */
  /* ----- top-disaster-info ----- */
  .top-disaster-info {
    width: 100%;
    background: var(--color_mono_bg_black);
    color: var(--color_mono_white);
  }
  .top-disaster-info .top-disaster-info__head {
    position: relative;
  }
  .top-disaster-info .top-disaster-info__head::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 20px;
    width: calc(100% - 20px * 2);
    height: 1px;
    background: rgb(255 255 255 / 0.2);
  }
  .top-disaster-info .top-disaster-info__head__inner {
    position: relative;
    display: block;
    width: 100%;
    padding: 8px 40px 8px 20px;
    border: none;
    background: none;
    text-align: left;
  }
  .top-disaster-info .top-disaster-info__head__inner::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    width: 10px;
    height: 10px;
    background: url(/extlib/common/img_new/cmn_ic04_01.svg) no-repeat center /contain;
    transform: translateY(-50%) scale(1, 1);
    transition: transform var(--transition_default-set);
  }
  .top-disaster-info .top-disaster-info__head__inner[aria-expanded="false"]::after {
    transform: translateY(-50%) scale(1, -1);
  }
  .top-disaster-info .top-disaster-info__head__inner[aria-expanded="true"] .top-disaster-info__title__visually-hidden {
    display: none;
  }
  .top-disaster-info .top-disaster-info__head__inner[aria-expanded="false"] .top-disaster-info__title__visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    overflow: hidden !important;
    white-space: nowrap !important;
  }
  .top-disaster-info .top-disaster-info__title {
    position: relative;
    display: inline-block;
    padding-block: 1px 0;
    padding-inline: 28px 12px;
    border-radius: 10px;
    background: var(--color_other_alert);
    color: var(--color_mono_white);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;;
  }
  .top-disaster-info .top-disaster-info__title::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0%;
    width: 20px;
    height: 20px;
    background: url(/extlib/top_new/img/index_ic01_01.svg) no-repeat center /contain;
    transform: translateY(-50%);
  }
  .top-disaster-info .top-disaster-info__body {
    padding-block: 6px 15px;
    padding-inline: 20px;
  }
  .top-disaster-info .top-disaster-info__list {
    position: relative;
  }
  .top-disaster-info .top-disaster-info__list> :first-child {
    margin-top: 0 !important;
  }
  .top-disaster-info .top-disaster-info__article {
    margin-top: 0;
  }
  .top-disaster-info .top-disaster-info__article>[class*="__type"] {
    display: block;
    color: var(--color_mono_white);
  }
  .top-disaster-info .top-disaster-info__article__category {
    display: inline-block;
    padding-inline: 10px;
    border-radius: 4px;
    border: 1px solid var(--color_mono_white);
    font-size: 10px;
    font-weight: 500;
  }
  .top-disaster-info .top-disaster-info__article__date {
    display: block;
    font-size: 12px;
    font-weight: 400;
  }
  .top-disaster-info .top-disaster-info__article__title {
    display: block;
    font-size: 11px;
    font-weight: 500;
    font-feature-settings: "palt";
    letter-spacing: 0;
  }

  /* ----- top-hero ----- */
  .top-hero {
    position: relative;
  }
  .top-hero .top-hero__list:not(.slick-initialized) .top-hero__item:not(:first-of-type) {
    position: absolute;
    visibility: hidden;
  }
  .top-hero .top-hero__item {
    width: 100%;
    aspect-ratio: 390 / 709;
  }
  .top-hero .top-hero__item > [class*="__type"] {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
  }
  .top-hero .top-hero__item__image {
    width: 100%;
    height: 100%;
  }
  .top-hero .top-hero__item__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: bottom center;
  }
  .top-hero .top-hero__item__detail {
    position: absolute;
    bottom: min(117px,calc(117 / 390 * 100vw));
    left: min(32px,calc(32 / 390 * 100vw));
    width: calc(100% - (min(32px,calc(32 / 390 * 100vw)) * 2));
  }
  .top-hero .top-hero__item__heading {
    color: var(--color_mono_white);
  }
  .top-hero .top-hero__item__heading__title {
    display: block;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.6;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-hero .top-hero__item__heading__subtitle {
    display: block;
    margin-top: min(14px,calc(14 / 390 * 100vw));
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-hero .top-hero__item__link {
    position: relative;
    display: inline-block;
    margin-top: min(23px,calc(23 / 390 * 100vw));
    padding-right: 38px;
    color: var(--color_main_base01);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-hero .top-hero__item > [class*="__type"] .top-hero__item__link::after {
    content: "";
    display: block;
    position: absolute;
    top: 3px;
    right: 0;
    width: 25px;
    height: 16px;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    background-color: var(--color_mono_white);
  }
  .top-hero .top-hero__item__type .top-hero__item__link::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_03.svg);
  }
  .top-hero .top-hero__item__type--blank .top-hero__item__link::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_04.svg);
  }
  .top-hero .top-hero__item__detail.type-miraijinzai .top-hero__item__heading__title {
    color: #EB5505;
    font-size: 32px;
    font-weight: 700;
  }
  .top-hero .top-hero__item__detail.type-miraijinzai .top-hero__item__heading__subtitle {
    margin-top: min(5px,calc(5 / 390 * 100vw));
    color: #000;
    font-size: 14px;
    letter-spacing: 0;
    line-height: 2;
  }
  .top-hero .top-hero__item__detail.type-miraijinzai .top-hero__item__link {
    margin-top: min(19px,calc(19 / 390 * 100vw));
    color: var(--color_text_main);
  }
  .top-hero .top-hero__item__detail.type-miraijinzai .top-hero__item__link::after {
    background-color: var(--color_text_main);
  }
  .top-hero .top-hero__control {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    gap: 0 min(12px,calc(12 / 390 * 100vw));
    right: 0;
    bottom: min(63px,calc(63 / 390 * 100vw));
    width: min(390px,100%);
    padding-inline: min(32px,calc(32 / 390 * 100vw));
    mix-blend-mode: difference;
  }
  .top-hero .top-hero__number {
    flex-shrink: 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: min(66px,calc(66 / 390 * 100vw));
  }
  .top-hero .top-hero__number::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: calc(50% - 2px);
    width: 2px;
    height: 12px;
    background: url(/extlib/common/img_new/cmn_ex01_03.svg) no-repeat center /contain;
    transform: translate(-50%,-50%);
  }
  .top-hero .top-hero__number__current,
  .top-hero .top-hero__number__total {
    min-width: 1.43em;
    color: var(--color_mono_white);
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
  }
  .top-hero .top-hero__progress {
    display: flex;
    align-items: center;
    gap: 0 min(4px,calc(4 / 390 * 100vw));
  }
  .top-hero .top-hero__progress > .slick-arrow {
    flex-shrink: 0;
    appearance: none;
    position: relative;
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    border: none;
    background: none;
    text-indent: -100vw;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    transition: opacity var(--transition_default-set);
  }
  .top-hero .top-hero__progress > .slick-arrow::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 6px;
    height: 10px;
  }
  .top-hero .top-hero__progress > .slick-arrow.slick-prev::before {
    background: url(/extlib/common/img_new/cmn_ic13_01.svg) no-repeat center /contain;
    transform: translate(-50%,-50%) scale(-1,1);
  }
  .top-hero .top-hero__progress > .slick-arrow.slick-next::before {
    background: url(/extlib/common/img_new/cmn_ic13_01.svg) no-repeat center /contain;
    transform: translate(-50%,-50%) scale(1,1);
  }
  .top-hero .top-hero__progress__bar {
    flex-grow: 1;
    position: relative;
    display: block;
    width: min(159px,calc(159 / 390 * 100vw));
    height: 2px;
    border-radius: 7px;
    background: rgb(var(--color_mono_bg_dark--rgb) / 0.4);
    overflow: hidden;
  }
  .top-hero .top-hero__progress__bar::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    border: 7px;
    background: var(--color_mono_white);
  }
  .top-hero.is-active .top-hero__progress__bar::before {
    animation: progressBarAnimation var(--top-hero-indication-time) linear forwards;
    animation-play-state: var(--top-hero-animation-state);
  }
  .top-hero .top-hero__switch {
    flex-shrink: 0;
  }
  .top-hero .top-hero__switch > button {
    appearance: none;
    display: block;
    width: 28px;
    height: 18px;
    padding: 0;
    border: none;
    text-indent: -100vw;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    transition: opacity var(--transition_default-set);
  }
  .top-hero .top-hero__switch__pause {
    background: url(/extlib/common/img_new/cmn_ic12_01.svg) no-repeat center / contain;
  }
  .top-hero .top-hero__switch__play {
    background: url(/extlib/common/img_new/cmn_ic12_02.svg) no-repeat center / contain;
  }

  /* ----- top-main-content ----- */
  .top-main-content {
    width: 100%;
    padding-inline: var(--content-side--sp);
    background: linear-gradient(2deg, #ECF0F3 1.68%, #DAE2EA 27.68%, #ECF0F3 48.09%, #F9F9F9 66.94%, #E5EAF0 88.36%);
    overflow: hidden;
  }
  .top-main-content .top-main-content__inner {
    width: 100%;
    margin: 0 auto;
    padding-block: 32px 64px;
  }
  .top-main-content .top-main-content__inner > :first-child {
    margin-top: 0!important;
  }

  /* ----- top-important-info ----- */
  .top-important-info {
    margin-inline: -16px;
    border-radius: 8px;
    background: var(--color_mono_white);
    overflow: hidden;
  }
  .top-important-info .top-important-info__head__inner {
    appearance: none;
    position: relative;
    width: 100%;
    padding-block: 12px;
    padding-inline: 16px 60px;
    border: none;
    background: none;
    text-align: left;
    cursor: pointer;
  }
  .top-important-info .top-important-info__head__inner::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 16px;
    width: 34px;
    height: 22px;
    border-radius: 8px;
    background: var(--color_main_key);
    transform: translateY(-50%);
    transition: background var(--transition_default-set);
  }
  .top-important-info .top-important-info__head__inner::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: calc(16px + 12px);
    width: 10px;
    height: 10px;
    background: url(/extlib/common/img_new/cmn_ic14_01.svg) no-repeat center / contain;
    transform: translateY(-50%) scale(1,-1);
    transition: transform var(--transition_default-set);
  }
  .top-important-info .top-important-info__head__inner[aria-expanded="false"]::after {
    transform: translateY(-50%) scale(1,1);
  }
  .top-important-info .top-important-info__head__inner[aria-expanded="true"] .top-important-info__title__visually-hidden {
    display: none;
  }
  .top-important-info .top-important-info__head__inner[aria-expanded="false"] .top-important-info__title__visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    overflow: hidden !important;
    white-space: nowrap !important;
  }
  .top-important-info .top-important-info__title {
    color: var(--color_text_main);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.8;
  }
  .top-important-info .top-important-info__body {
    padding-block: 16px 48px;
    padding-inline: 16px;
    border-top: 1px solid var(--color_mono_bg_dark);
  }
  .top-important-info .top-important-info__article {
    border-bottom: 1px solid;
    border-image: linear-gradient(90deg, #E8E8E9 77%, rgba(236, 239, 243, 0.00) 100%) 1;
  }
  .top-important-info .top-important-info__article > [class*="__type"] {
    position: relative;
    display: block;
    padding-block: 9px;
  }
  .top-important-info .top-important-info__article > [class*="__type"]:not([class*="--nolink"]) {
    padding-inline: 0 50px;
  }
  .top-important-info .top-important-info__article > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 15px;
    width: 34px;
    height: 22px;
    transition: filter var(--transition_default-set);
  }
  .top-important-info .top-important-info__article__type::after {
    background: url(/extlib/common/img_new/cmn_ic01_01.svg) no-repeat center / contain;
  }
  .top-important-info .top-important-info__article__type--blank::after,
  .top-important-info .top-important-info__article__type--pdf::after {
    background: url(/extlib/common/img_new/cmn_ic01_02.svg) no-repeat center / contain;
  }
  .top-important-info .top-important-info__article__property {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 0 6px;
    transition: opacity var(--transition_default-set);
  }
  .top-important-info .top-important-info__article__date {
    min-width: 6em;
    color: var(--color_text_darkgray);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.8;
  }
  .top-important-info .top-important-info__article__category {
    display: inline-block;
    min-width: 72px;
    padding-block: 2px 3px;
    padding-inline: 5px;
    border-radius: 6px;
    border: 1px solid var(--color_text_darkgray);
    color: var(--color_text_darkgray);
    font-size: 10px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
  }
  .top-important-info .top-important-info__article__category.is-disaster-impact {
    border-color: var(--color_main_accent);
    color: var(--color_main_accent);
  }
  .top-important-info .top-important-info__article__title {
    margin-top: 2px;
    color: var(--color_text_main);
    font-size: 13px;
    font-weight: 400;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    line-height: 1.7;
    transition: opacity var(--transition_default-set);
  }
  .top-important-info .top-important-info__link {
    display: flex;
    justify-content: flex-end;
    margin: 20px 0 0;
  }

  /* ----- top-view-all ----- */
  .top-view-all {
    border-bottom: 1px solid #C9CCD3;
  }
  .top-view-all > [class*="__type"] {
    position: relative;
    display: block;
    padding-right: calc(18px + 25px);
    padding-bottom: 3px;
    color: var(--color_text_main);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.8;
    letter-spacing: 0;
    transition: color var(--transition_default-set);
  }
  .top-view-all > [class*="__type"]::before {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 2px);
    right: 0;
    width: 25px;
    height: 16px;
    border-radius: 5.76px;
    background: var(--color_main_key);
    transform: translateY(-50%);
    transition: background var(--transition_default-set);
  }
  .top-view-all > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 2px);
    right: 9px;
    width: 8px;
    height: 8px;
    transform: translateY(-50%);
  }
  .top-view-all .top-view-all__type::after {
    background: url(/extlib/common/img_new/cmn_ic02_05.svg) no-repeat center / contain;
  }
  .top-view-all .top-view-all__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic02_06.svg) no-repeat center / contain;
  }

  /* ----- top-heading2 ----- */
  .top-heading2 {
    margin: 72px 0 0;
  }
  .top-heading2 .top-heading2__title {
    font-size: 28px;
    font-weight: 400;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }

  /* ----- top-tobira ----- */
  .top-tobira {
    margin: 58px 0 0;
  }
  .top-tobira .top-tobira__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0 var(--content-grid-gap--pc);
  }
  .top-tobira .top-tobira__head__link {
    flex-shrink: 0;
    padding-bottom: 9px;
  }
  .top-tobira .top-tobira__head__heading > :first-child,
  .top-tobira .top-tobira__head__link > :first-child {
    margin-top: 0 !important;
  }
  .top-tobira .top-tobira__body {
    margin: 39px 0 0;
  }
  .top-tobira .top-tobira__card-wrap:not(.slick-initialized) .top-tobira__card-column:not(:first-of-type) {
    position: absolute;
    visibility: hidden;
  }
  .top-tobira .top-tobira__card-wrap {
    margin-inline: -8px;
  }
  .top-tobira .top-tobira__card-wrap .top-tobira__card-column {
    display: flex;
    align-items: stretch;
    flex-flow: row wrap;
    gap: 16px;
    padding-inline: 8px;
  }
  .top-tobira .top-tobira__card:has(>[class*="__type"][data-span="1"]) {
    width: calc((100% - 16px) / 2);
  }
  .top-tobira .top-tobira__card:has(> [class*="__type"][data-span="2"]) {
    width: 100%;
  }
  .top-tobira .top-tobira__card > [class*="__type"] {
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    height: 100%;
    padding-block: 16px;
    padding-inline: 16px;
    border-radius: 8px;
    background: var(--color_mono_white);
    overflow: hidden;
    transition: transform var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-tobira .top-tobira__card-column:not(.slick-cloned) .top-tobira__card:not(.is-show) > [class*="__type"] {
    transform: scale(0.9);
    opacity: 0;
  }
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="column"],
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="column-reverse"] {
    flex-direction: column;
    padding-block: 16px;
  }
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="row"],
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="row-reverse"] {
    align-items: center;
    flex-direction: row;
    gap: 0 18px;
  }
  .top-tobira .top-tobira__card__head {
    flex-shrink: 0;
    position: relative;
    aspect-ratio: 294 / 166;
    border-radius: 6px;
    overflow: hidden;
    transition: aspect-ratio var(--transition_default-set);
  }
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="column"] .top-tobira__card__head,
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="column-reverse"] .top-tobira__card__head {
    width: 100%;
  }
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="row"] .top-tobira__card__head,
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="row-reverse"] .top-tobira__card__head {
    width: calc(123 / 390 * 100vw);
  }
  .top-tobira .top-tobira__card__image {
    width: 100%;
    height: 100%;
  }
  .top-tobira .top-tobira__card__image > img {
    width: 100%;
    max-width: none;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
  .top-tobira .top-tobira__card__category {
    position: absolute;
    display: inline-block;
    bottom: 6px;
    left: 6px;
    padding-block: 4px;
    padding-inline: 8px;
    border-radius: 14px;
    background: rgba(34, 34, 34, 0.60);
    color: var(--color_mono_white);
    font-size: 7px;
    line-height: 1;
  }
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="column"] .top-tobira__card__body,
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="column-reverse"] .top-tobira__card__body {
    margin: 14px 0 0;
  }
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="column"][data-span="2"] .top-tobira__card__body,
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="column-reverse"][data-span="2"] .top-tobira__card__body {
    margin: 18px 0 0;
  }
  .top-tobira .top-tobira__card__detail > :first-child {
    margin-top: 0 !important;
  }
  .top-tobira .top-tobira__card__title {
    max-width: 100%;
    color: var(--color_text_main);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.7;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    word-break: break-all;
    overflow-wrap: break-word;
  }
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="column"][data-span="2"] .top-tobira__card__title,
  .top-tobira .top-tobira__card > [class*="__type"][data-direction="column-reverse"][data-span="2"] .top-tobira__card__title {
    font-size: 14px;
  }
  .top-tobira .top-tobira__control {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0 min(12px,calc(12 / 390 * 100vw));
    width: min(100%, calc(390px - var(--content-side--sp) * 2));
    margin-block: 31px 0;
    margin-inline: auto 0;
  }
  .top-tobira .top-tobira__number {
    flex-shrink: 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: min(67px,calc(67 / 390 * 100vw));
  }
  .top-tobira .top-tobira__number::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: calc(50% - 2px);
    width: 2px;
    height: 12px;
    background: url(/extlib/common/img_new/cmn_ex01_02.svg) no-repeat center /contain;
    transform: translate(-50%,-50%);
  }
  .top-tobira .top-tobira__number__current,
  .top-tobira .top-tobira__number__total {
    color: var(--color_text_main);
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
  }
  .top-tobira .top-tobira__progress {
    display: flex;
    align-items: center;
    gap: 0 11px;
  }
  .top-tobira .top-tobira__progress > .slick-arrow {
    flex-shrink: 0;
    appearance: none;
    position: relative;
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    border: none;
    background: none;
    text-indent: -100vw;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    transition: opacity var(--transition_default-set);
  }
  .top-tobira .top-tobira__progress > .slick-arrow::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 6px;
    height: 10px;
    background: url(/extlib/common/img_new/cmn_ic13_02.svg) no-repeat center /contain;
  }
  .top-tobira .top-tobira__progress > .slick-arrow.slick-prev::before {
    transform: translate(-50%,-50%) scale(-1,1);
  }
  .top-tobira .top-tobira__progress > .slick-arrow.slick-next::before {
    transform: translate(-50%,-50%) scale(1,1);
  }
  .top-tobira .top-tobira__progress__bar {
    flex-grow: 1;
    position: relative;
    display: block;
    width: min(144px,calc(144 / 390 * 100vw));
    height: 2px;
    border-radius: 7px;
    background: rgb(var(--color_text_sub--rgb) / 0.4);
    overflow: hidden;
  }
  .top-tobira .top-tobira__progress__bar::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    border: 7px;
    background: var(--color_text_main);
  }
  .top-tobira.is-active .top-tobira__progress__bar::before {
    animation: progressBarAnimation var(--top-tobira-indication-time) linear forwards;
    animation-play-state: var(--top-tobira-animation-state);
  }
  .top-tobira .top-tobira__switch {
    flex-shrink: 0;
  }
  .top-tobira .top-tobira__switch > button {
    appearance: none;
    display: block;
    width: 28px;
    height: 18px;
    padding: 0;
    border: none;
    text-indent: -100vw;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    transition: opacity var(--transition_default-set);
  }
  .top-tobira .top-tobira__switch__pause {
    background: url(/extlib/common/img_new/cmn_ic12_03.svg) no-repeat center / contain;
  }
  .top-tobira .top-tobira__switch__play {
    background: url(/extlib/common/img_new/cmn_ic12_04.svg) no-repeat center / contain;
  }
  .top-tobira .top-tobira__foot {
    display: flex;
    justify-content: flex-end;
    margin: 31px 0 0;
    padding: 25px 0 0;
    border-top: 1px solid var(--color_mono_bg_dark);
  }
  .top-tobira .top-tobira__link {
  }
  .top-tobira .top-tobira__link__label {
    position: relative;
    color: var(--color_text_main);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
  }
  .top-tobira .top-tobira__link__label::after {
    content: "";
    display: inline-block;
    width: 2px;
    height: 7px;
    margin-left: 10px;
    background: url(/extlib/common/img_new/cmn_ex01_01.svg) no-repeat center / contain;
    filter: var(--color_text_main--filtered);
    vertical-align: 2px;
  }
  .top-tobira .top-tobira__link__list {
    display: flex;
    flex-flow: row wrap;
    gap: 5px 14px;
    margin: 6px 0 0;
  }
  .top-tobira .top-tobira__link__list > li > [class*="__type"] {
    position: relative;
    padding-right: 34px;
    color: var(--color_text_main);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.7;
    transition: color var(--transition_default-set);
  }
  .top-tobira .top-tobira__link__list > li > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 23px;
    height: 15px;
    transform: translateY(-50%);
    transition: filter var(--transition_default-set);
  }
  .top-tobira .top-tobira__link__type::after {
    background: url(/extlib/common/img_new/cmn_ic01_01.svg) no-repeat center / contain;
  }
  .top-tobira .top-tobira__link__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic01_02.svg) no-repeat center / contain;
  }

  /* ----- top-rss ----- */
  .top-news__rss {
    position: relative;
    bottom: 0;
    right: 0;
    opacity: 1;
    transition: bottom var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-rss {
    margin: 24px 0 0;
    display: flex;
    justify-content: flex-end;
  }
  .top-rss > [class*="__type"] {
    position: relative;
    padding: 3px 9px 2px 27px;
    border-radius: 6px;
    background: rgba(123, 123, 123, 0.60);
    color: var(--color_mono_white) !important;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0;
    transition: background var(--transition_default-set);
  }
  .top-rss > [class*="__type"]::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 10px;
    width: 10px;
    height: 10px;
    background: url(/extlib/common/img_new/cmn_ic15_01.svg) no-repeat center / contain;
    transform: translateY(-50%);
  }
  .top-news .top-news__rss:not(.is-show) {
    bottom: -50px;
    opacity: 0;
  }

  /* ----- top-news ----- */
  .top-news {
    margin: 65px 0 0;
  }
  .top-news .top-news__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0 var(--content-grid-gap--pc);
  }
  .top-news .top-news__head__heading > :first-child {
    margin-top: 0 !important;
  }
  .top-news .top-news__body {
    margin: 39px 0 0;
  }
  .top-news .top-news__body > :first-child {
    margin-top: 0!important;
  }
  .top-news .top-news__link {
    position: relative;
    top: 0;
    display: flex;
    justify-content: flex-end;
    margin: 28px 0 0;
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-news .top-news__link:not(.is-show) {
    top: 50px;
    opacity: 0;
  }

  /* ----- top-news-tab ----- */
  .top-news-tab .top-news-tab__button-wrap {
    display: flex;
    align-items: flex-start;
    gap: 10px;
  }
  .top-news-tab .top-news-tab__button-wrap > li {
    position: relative;
    top: 0;
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-news-tab .top-news-tab__button-wrap > li:not(.is-show) {
    top: 100px;
    opacity: 0;
  }
  .top-news-tab .top-news-tab__button {
    appearance: none;
    padding: 5px 19px;
    border-radius: 6px;
    border: 1px solid var(--color_text_darkgray);
    background: none;
    color: var(--color_text_main );
    font-size: 13px;
    font-weight: 400;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    cursor: pointer;
    transition: border var(--transition_default-set), color var(--transition_default-set), background var(--transition_default-set);
  }
  .top-news-tab .top-news-tab__button[aria-expanded="true"] {
    border-color: #222222;
    background-color: #222222;
    color: var(--color_mono_white);
  }
  .top-news-tab .top-news-tab__body {
    width: 100%;
    margin: 25px 0 0;
  }
  .top-news-tab .top-news-tab__panel {
    width: 100%;
  }
  .top-news-tab .top-news-tab__panel[aria-hidden="true"] {
    display: none;
  }
  .top-news-tab .top-news-tab__panel > :first-child {
    margin-top: 0 !important;
  }
  .top-news-tab .top-news-tab__article {
    position: relative;
    top: 0;
    margin: 17px 0 0;
    border-bottom: 1px solid;
    border-image: linear-gradient(90deg, #E8E8E9 77%, rgba(236, 239, 243, 0.00) 100%) 1;
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-news-tab .top-news-tab__article:not(.is-show) {
    top: 100px;
    opacity: 0;
  }
  .top-news-tab .top-news-tab__article > [class*="__type"] {
    position: relative;
    display: block;
    width: 100%;
    padding-bottom: 19px;
  }
  .top-news-tab .top-news-tab__article > [class*="__type"]:not([class*="--nolink"]) {
    padding-right: 50px;
  }
  .top-news-tab .top-news-tab__article > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: block;
    position: absolute;
    top: 7px;
    right: 0;
    width: 34px;
    height: 22px;
  }
  .top-news-tab .top-news-tab__article__type::after {
    background: url(/extlib/common/img_new/cmn_ic01_01.svg) no-repeat center / contain;
  }
  .top-news-tab .top-news-tab__article__type--blank::after,
  .top-news-tab .top-news-tab__article__type--pdf::after {
    background: url(/extlib/common/img_new/cmn_ic01_02.svg) no-repeat center / contain;
  }
  .top-news-tab .top-news-tab__article__title {
    color: var(--color_text_main);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.5;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-news-tab .top-news-tab__article__property {
    display: flex;
    align-items: baseline;
    flex-flow: row wrap;
    margin: 8px 0 0;
    gap: 12px 11px;
  }
  .top-news-tab .top-news-tab__article__category {
    display: flex;
    align-items: baseline;
    flex-flow: row wrap;
    color: var(--color_text_darkgray);
    font-size: 12px;
    font-weight: 300;
    line-height: 1.4;
  }
  .top-news-tab .top-news-tab__article__category > li:not(:last-child)::after {
    content: "/";
    margin-inline: 4px;
  }
  .top-news-tab .top-news-tab__article__date {
    color: var(--color_text_sub);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.4;
  }
  .top-news-tab .top-news-tab__article__date:not(:only-child)::before {
    content: "";
    display: inline-block;
    width: 2px;
    height: 7px;
    margin-right: 11px;
    background: url(/extlib/common/img_new/cmn_ex01_01.svg) no-repeat center / contain;
    vertical-align: 1px;
  }

  /* ----- top-pdf-badge ----- */
  .top-pdf-badge {
    display: inline-block;
    margin-inline: 6px;
    padding: 2px 6px;
    border-radius: 4px;
    border: 1px solid var(--color_mono_bg_dark);
    color: var(--color_text_sub);
    font-size: 10px;
    font-weight: 400;
    line-height: 1;
    vertical-align: 1px;
  }

  /* ----- top-news-carousel ----- */
  .top-news-carousel {
    position: relative;
    margin: 47px 0 0;
    padding: 41px 0 0;
    border-top: 1px solid var(--color_mono_bg_dark);
  }
  .top-news-carousel .top-news-carousel__detail {
    position: relative;
    width: 100%;
    overflow: hidden;
    z-index: 2;
  }
  .top-news-carousel .top-news-carousel__article {
    transition: opacity var(--transition_default-set);
  }
  .top-news-carousel .top-news-carousel__detail.swiper-initialized .top-news-carousel__article:not(.swiper-slide-active) {
    visibility: hidden;
    pointer-events: none;
  }
  .top-news-carousel .top-news-carousel__article > [class*="__type"] {
    display: block;
  }
  .top-news-carousel .top-news-carousel__article__title {
    color: var(--color_text_main);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    transition: opacity var(--transition_default-set);
  }
  .top-news-carousel .top-news-carousel__article__category {
    display: inline-block;
    margin: 16px 0 0;
    padding: 7px 12px 6px;
    border-radius: 4px;
    background: var(--color_mono_white);
    color: var(--color_text_darkgray);
    font-size: 13px;
    font-weight: 400;
    line-height: 1;
  }
  .top-news-carousel .top-news-carousel__image-carousel {
    position: relative;
    width: 100%;
    margin: 31px 0 0;
    height: calc((612.13 / 767 * 100vw) * (343 / 608));
    z-index: 1;
  }
  .top-news-carousel .top-news-carousel__image-carousel__wrapper {
    display: flex;
    align-items: flex-end;
    position: relative;
    transition: transform var(--transition_default-set) !important;
  }
  body[data-browser="safari"] .top-news-carousel .top-news-carousel__image-carousel__wrapper {
    left: 10px;
  }
  body[data-browser="safari"] .top-news-carousel .top-news-carousel__image-carousel__wrapper:has([data-swiper-slide-index="0"].swiper-slide-active) {
    left: 0;
  }
  .top-news-carousel .top-news-carousel__image-carousel:not(.swiper-initialized) .top-news-carousel__image-carousel__wrapper {
    left: 0;
  }
  .top-news-carousel .top-news-carousel__image {
    position: relative;
    display: flex;
    align-items: flex-end;
    width: calc(((100% - 24px * 7) / 8) * 3 + 24px * 2);
    height: auto;
    border-radius: 8px;
    overflow: hidden;
    transition: width var(--transition_duration) ease-in var(--transition_delay);
  }
  .top-news-carousel .top-news-carousel__image-carousel:not(.swiper-initialized) .top-news-carousel__image:only-child,
  .top-news-carousel .top-news-carousel__image-carousel.swiper-initialized .top-news-carousel__image.swiper-slide-active {
    width: calc(((100% - 24px * 7) / 8) * 7 + 24px * 6);
  }
  .top-news-carousel .top-news-carousel__image:not(.swiper-slide-active) {
    cursor: pointer;
  }
  .top-news-carousel .top-news-carousel__image > [class*="__type"] {
    position: relative;
    display: block;
    aspect-ratio: 608 / 343;
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    z-index: 1;
  }
  .top-news-carousel .top-news-carousel__image-carousel.swiper-initialized .top-news-carousel__image:not(.swiper-slide-active) > [class*="__type"] {
    pointer-events: none;
  }
  .top-news-carousel .top-news-carousel__image-carousel.swiper-initialized .top-news-carousel__image:not(.swiper-slide-active) > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 0.3);
    opacity: 1;
    z-index: 2;
    transition: opacity var(--transition_default-set);
  }
  .top-news-carousel .top-news-carousel__image.swiper-slide-active > [class*="__type"]::after {
    opacity: 0;
  }
  .top-news-carousel .top-news-carousel__image > [class*="__type"] img  {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform var(--transition_default-set);
    transform-origin: center;
    transform: scale(1);
    z-index: 1;
  }
  .top-news-carousel .top-news-carousel__image::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 0;
    background: var(--color_mono_white);
    z-index: 2;
    transition: height var(--transition_default-set);
  }
  .top-news-carousel .top-news-carousel__image::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: -100%;
    width: 100%;
    height: 0;
    background: var(--color_text_main);
    z-index: 3;
    transition: height var(--transition_default-set);
  }
  .top-news-carousel.is-active .top-news-carousel__image.swiper-slide-active::before {
    height: 3px;
  }
  .top-news-carousel.is-active .top-news-carousel__image.swiper-slide-active::after {
    height: 3px;
    animation: progressBarAnimation var(--top-news-carousel-indication-time) linear forwards;
    animation-play-state: var(--top-news-carousel-animation-state);
  }
  .top-news-carousel .top-news-carousel__control {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0 20px;
    margin: 32px 0 0;
  }
  .top-news-carousel .top-news-carousel__switch > button {
    appearance: none;
    display: block;
    width: 34px;
    height: 22px;
    padding: 0;
    border: none;
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background var(--transition_default-set);
    text-indent: -100vw;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
  }
  .top-news-carousel .top-news-carousel__switch__pause {
    mask-image: url(/extlib/common/img_new/cmn_ic12_05.svg);
  }
  .top-news-carousel .top-news-carousel__switch__play {
    mask-image: url(/extlib/common/img_new/cmn_ic12_06.svg);
  }
  .top-news-carousel .top-news-carousel__progress {
    display: flex;
    align-items: center;
    gap: 0 24px;
  }
  .top-news-carousel .top-news-carousel__arrow {
    appearance: none;
    position: relative;
    display: block;
    width: 34px;
    height: 22px;
    padding: 0;
    border: none;
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    mask-image: url(/extlib/common/img_new/cmn_ic01_01.svg);
    transition: background var(--transition_default-set);
    text-indent: -100vw;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
  }
  .top-news-carousel .top-news-carousel__arrow.swiper-prev {
    transform: scale(-1,1);
  }
  .top-news-carousel .top-news-carousel__arrow.swiper-next {
    transform: scale(1,1);
  }
  .top-news-carousel .top-news-carousel__number {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0 28px;
  }
  .top-news-carousel .top-news-carousel__number::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: calc(50% - 2px);
    width: 2px;
    height: 12px;
    background: url(/extlib/common/img_new/cmn_ex01_02.svg) no-repeat center /contain;
    transform: translate(-50%,-50%);
  }
  .top-news-carousel .top-news-carousel__number__current,
  .top-news-carousel .top-news-carousel__number__total {
    min-width: 1.43em;
    color: var(--color_text_darkgray);
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
  }

  /* ----- top-tsunagu ----- */
  .top-tsunagu {
    position: relative;
    margin: 80px 0 0;
  }
  /* ----- top-tsunagu-grid ----- */
  .top-tsunagu-grid {
    width: 100%;
  }
  .top-tsunagu-grid .top-tsunagu-grid__container {
    display: flex;
    flex-flow: row wrap;
    gap: 12px 16px;
  }
  .top-tsunagu-grid .top-tsunagu-grid__container > [class*="__item"] {
    position: relative;
    top: 0;
    width: 100%;
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-tsunagu-grid .top-tsunagu-grid__container > [class*="__item"]:not(.is-show):not(:has(.js-top-scroll-animation__child)) {
    top: 50px;
    opacity: 0;
  }
  .top-tsunagu-grid .top-tsunagu-grid__container > .top-tsunagu-grid__item--05,
  .top-tsunagu-grid .top-tsunagu-grid__container > .top-tsunagu-grid__item--06 {
    width: calc((100% - 16px) / 2);
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--01 {
    aspect-ratio: 326 / 163;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--02,
  .top-tsunagu-grid .top-tsunagu-grid__item--07 {
    aspect-ratio: 326 / 217;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--03,
  .top-tsunagu-grid .top-tsunagu-grid__item--04 {
    aspect-ratio: 326 / 130;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--05,
  .top-tsunagu-grid .top-tsunagu-grid__item--06 {
    aspect-ratio: 155 / 111;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--08 {
    aspect-ratio: 326 / 194;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--01 .top-tsunagu-grid__heading {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 100%;
    padding-inline: 0.5em;
    color: var(--color_mono_white);
    font-size: min(30px, calc(30 / 390 * 100vw));
    font-weight: 400;
    line-height: 1.8;
    transform: translate(-50%,-50%);
    text-align: center;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--01 .top-tsunagu-grid__heading__logo {
    letter-spacing: 0;
  }
  .top-tsunagu-grid .top-tsunagu-grid__container > [class*="__item"] > [class*="__type"] {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 8px;
    overflow: hidden;
  }
  .top-tsunagu-grid .top-tsunagu-grid__container > [class*="__item"] > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: block;
    position: absolute;
    right: min(20px, calc(20 / 390 * 100vw));
    bottom: min(24px, calc(24 / 390 * 100vw));
    width: min(34px, calc(35 / 390 * 100vw));
    height: min(22px, calc(22 / 390 * 100vw));
  }
  .top-tsunagu-grid .top-tsunagu-grid__container > [class*="__item"] > [class*="__type-v2"]:not([class*="--nolink"])::after {
    bottom: min(16px, calc(16 / 390 * 100vw));
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__type::after {
    background: url(/extlib/common/img_new/cmn_ic01_03.svg) no-repeat center / contain;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic01_04.svg) no-repeat center / contain;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__type-v2::after {
    background: url(/extlib/common/img_new/cmn_ic01_01.svg) no-repeat center / contain;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__type-v2--blank::after {
    background: url(/extlib/common/img_new/cmn_ic01_02.svg) no-repeat center / contain;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--08 > [class*="__type"] {
    background: rgb(255 255 255 / 0.7);
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__image {
    width: 100%;
    height: 100%;
    border-radius: 8px;
    overflow: hidden;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__image img {
    width: 100%;
    max-width: none;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__detail {
    position: absolute;
    left: min(21px, calc(21 / 390 * 100vw));
    width: calc(100% - min(21px, calc(21 / 390 * 100vw)) - min(114px, calc(114 / 390 * 100vw)));
    color: var(--color_mono_white);
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--02 .top-tsunagu-grid__item__detail {
    top: min(20px, calc(20 / 390 * 100vw));
  }
  .top-tsunagu-grid .top-tsunagu-grid__item--07 .top-tsunagu-grid__item__detail {
    bottom: min(20px, calc(20 / 390 * 100vw));
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__title {
    font-size: clamp(12px, calc(18 / 390 * 100vw), 18px);
    font-weight: 500;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-tsunagu-grid .top-tsunagu-grid__item__text {
    margin-top: min(9px, calc(9 / 390 * 100vw));
    font-size: clamp(10px, calc(12 / 390 * 100vw), 12px);
    font-weight: 400;
    line-height: 1.7;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list {
    width: 100%;
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list > li {
    position: relative;
    top: 0;
    width: 100%;
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list > li:not(.is-show) {
    top: 50px;
    opacity: 0;
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list > li:not(:first-child) {
    margin-top: 12px;
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list > li > [class*="__type"] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    border-radius: 8px;
    width: 100%;
    height: 100%;
    padding-block: 15px;
    padding-inline: 20px 60px;
    background: rgb(255 255 255 / 0.7);
    overflow: hidden;
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list > li > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: min(20px, calc(20 / 390 * 100vw));
    width: min(34px, calc(34 / 390 * 100vw));
    height: min(22px, calc(22 / 390 * 100vw));
    transform: translateY(-50%);
    transition: filter var(--transition_default-set);
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list__type::after {
    background: url(/extlib/common/img_new/cmn_ic01_01.svg) no-repeat center / contain;
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic01_02.svg) no-repeat center / contain;
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list__title {
    color: var(--color_text_main);
    font-size: clamp(12px, calc(18 / 390 * 100vw), 18px);
    font-weight: 500;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    transition: opacity var(--transition_default-set);
  }
  .top-tsunagu-grid .top-tsunagu-grid__link-list__text {
    margin: 4px 0 0;
    color: var(--color_text_darkgray);
    font-size: clamp(10px, calc(12 / 390 * 100vw), 12px);
    font-weight: 300;
    line-height: 1.7;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    transition: opacity var(--transition_default-set);
  }

  /* ----- top-service ----- */
  .top-service {
    margin: 39px 0 0;
  }
  .top-service > :first-child {
    margin-top: 0 !important;
  }
  .top-service .top-service__section {
    width: 100%;
    margin: 16px 0 0;
    padding: 33px 20px 32px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.70);
  }
  .top-service .top-service__section__head {
    width: 100%;
  }
  .top-service .top-service__section__title {
    color: var(--color_text_main);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: 0;
    text-align: center;
  }
  .top-service .top-service__section__body {
    width: 100%;
    margin: 20px 0 0;
  }

  /* ----- top-service-tab ----- */
  .top-service-tab {
    width: 100%;
  }
  .top-service-tab .top-service-tab__head {
    width: 100%;
  }
  .top-service-tab .top-service-tab__button-wrap {
    display: flex;
    justify-content: center;
    gap: 8px;
    width: 100%;
  }
  .top-service-tab .top-service-tab__button-wrap > li {
    position: relative;
    top: 0;
    width: calc((100% - 8px * 2) / 3);
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__button-wrap > li:not(.is-show) {
    top: 50px;
    opacity: 0;
  }
  .top-service-tab .top-service-tab__button,
  .top-service-tab .top-service-tab__button-wrap > li > [class*="__type"] {
    appearance: none;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 14px 13px 13px;
    border-radius: 8px;
    overflow: hidden;
    cursor: pointer;
  }
  .top-service-tab .top-service-tab__button {
    border: 1px solid rgba(241, 242, 246, 0.90);
    background: rgba(241, 242, 246, 0.90);
    transition: border var(--transition_default-set), background var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__button::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 5px;
    bottom: 0;
    left: 0;
    background: var(--color_mono_bg_dark);
    transform: scaleY(0);
    transform-origin: center bottom;
    transition: transform var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__button-wrap > li.is-current .top-service-tab__button,
  .top-service-tab .top-service-tab__button:hover {
    border-color: var(--color_mono_bg_dark);
    background-color: var(--color_mono_white);
  }
  .top-service-tab .top-service-tab__button-wrap > li.is-current .top-service-tab__button::after,
  .top-service-tab .top-service-tab__button:hover::after {
    transform: scaleY(1);
  }
  .top-service-tab .top-service-tab__button-wrap > li > [class*="__type"] {
    background: var(--color_mono_white);
  }
  .top-service-tab .top-service-tab__button-wrap > li > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 7px;
    right: 7px;
    width: 6px;
    height: 6px;
    transition: filter var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__type::after {
    background: url(/extlib/common/img_new/cmn_ic02_01.svg) no-repeat center / contain;
  }
  .top-service-tab .top-service-tab__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic02_02.svg) no-repeat center / contain;
  }
  .top-service-tab .top-service-tab__body {
    width: 100%;
    margin: 12px 0 0;
  }
  .top-service-tab .top-service-tab__link__list {
    width: 100%;
  }
  .top-service-tab .top-service-tab__link__list > li {
    position: relative;
    top: 0;
    border-bottom: 2px solid;
    border-image: linear-gradient(90deg, #F1F2F6 78%, rgba(241, 242, 246, 0.00) 100%) 1;
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__link__list > li:not(.is-show) {
    top: 50px;
    opacity: 0;
  }
  .top-service-tab .top-service-tab__link__list > li > [class*="__type"] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    padding-block: 14px 13px;
    padding-inline: 0 45px;
    color: var(--color_text_main);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    text-align: left;
    transition: color var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__link__list > li > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 34px;
    height: 22px;
    transform: translateY(-50%);
    transition: filter var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__link__type::after {
    background: url(/extlib/common/img_new/cmn_ic01_01.svg) no-repeat center /contain;
  }
  .top-service-tab .top-service-tab__link__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic01_02.svg) no-repeat center /contain;
  }
  .top-service-tab .top-service-tab__panel__foot {
    margin: 18px 0 0;
  }
  .top-service-tab .top-service-tab__inline-link {
    position: relative;
    top: 0;
    display: flex;
    flex-flow: row wrap;
    opacity: 1;
    transition: top var(--transition_default-set), opacity var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__inline-link:not(.is-show) {
    top: 50px;
    opacity: 0;
  }
  .top-service-tab .top-service-tab__inline-link > li {
    position: relative;
  }
  .top-service-tab .top-service-tab__inline-link > li:not(:last-child)::after {
    content: "/";
    margin-inline: .7em;
    color: var(--color_text_sub);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 0;
  }
  .top-service-tab .top-service-tab__inline-link > li > [class*="__type"] {
    color: var(--color_text_main);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    transition: color var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__inline-link > li > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: inline-block;
    position: relative;
    top: 2px;
    width: 20px;
    height: 13px;
    margin-left: .7em;
    transition: filter var(--transition_default-set);
  }
  .top-service-tab .top-service-tab__inline-link__type::after {
    background: url(/extlib/common/img_new/cmn_ic01_01.svg) no-repeat center / contain;
  }
  .top-service-tab .top-service-tab__inline-link__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic01_02.svg) no-repeat center / contain;
  }

  /* ----- top-sustainability ----- */
  .top-sustainability {
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: 843px;
    padding-block: 84px;
    padding-inline: var(--content-side--sp);
    background: url(/extlib/top_new/img/index_bg01_01_sp.jpg) no-repeat center top / cover;
    overflow: hidden;
  }
  .top-sustainability .top-sustainability__inner {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    flex-flow: row wrap;
    gap: 25px var(--content-grid-gap--sp);
    width: 100%;
    margin: 0 auto;
  }
  .top-sustainability .top-sustainability__head,
  .top-sustainability .top-sustainability__body {
    width: calc((100% - var(--content-grid-gap--sp)) / 2);
  }
  .top-sustainability .top-sustainability__title {
    color: var(--color_mono_white);
    font-size: 28px;
    font-weight: 400;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-sustainability .top-sustainability__text {
    margin: 17px 0 0;
    color: var(--color_mono_white);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.7;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-sustainability .top-sustainability__link-list {
    width: 100%;
  }
  .top-sustainability .top-sustainability__link-list > li > [class*="__type"] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    padding-block: 14px 13px;
    padding-inline: 0 45px;
    border-bottom: 2px solid;
    border-image: linear-gradient(90deg, #DDE0E7 78.5%, rgba(221, 224, 231, 0.00) 94.18%) 1;
    color: var(--color_mono_white);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    text-align: left;
    transition: opacity var(--transition_default-set);
  }
  .top-sustainability .top-sustainability__link-list > li > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 34px;
    height: 22px;
    transform: translateY(-50%);
    transition: filter var(--transition_default-set);
  }
  .top-sustainability .top-sustainability__link__type::after {
    background: url(/extlib/common/img_new/cmn_ic01_03.svg) no-repeat center /contain;
  }
  .top-sustainability .top-sustainability__link__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic01_04.svg) no-repeat center /contain;
  }

  /* ----- top-assist-content ----- */
  .top-assist-content {
    width: 100%;
    padding-inline: var(--content-side--sp);
    background: var(--color_mono_white);
    overflow: hidden;
  }
  .top-assist-content .top-assist-content__inner {
    width: 100%;
    margin: 0 auto;
    padding-block: 58px 64px;
  }
  .top-assist-content .top-assist-content__inner > :first-child {
    margin-top: 0!important;
  }

  /* ----- top-section-column ----- */
  .top-section-column {
    display: flex;
    flex-flow: row wrap;
    gap: 42px var(--content-grid-gap--sp);
    margin: 64px 0 0;
  }
  .top-section-column .top-section-column__item {
    width: 100%
  }
  .top-section-column .top-section-column__item__title {
    color: var(--color_text_main);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-section-column .top-section-column__item__body {
    margin: 14px 0 0;
  }
  .top-section-column .top-section-column__item__body > :first-child {
    margin-top: 0 !important;
  }

  /* ----- top-link-list ----- */
  .top-link-list {
    width: 100%;
    margin: 14px 0 0;
  }
  .top-link-list > li {
    width: 100%;
    border-bottom: 2px solid;
    border-image: linear-gradient(90deg, #F1F2F6 78%, rgba(241, 242, 246, 0.00) 100%) 1;
  }
  .top-link-list > li > [class*="__type"] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    padding-block: 14px 13px;
    padding-inline: 0 45px;
    color: var(--color_text_main);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    text-align: left;
    transition: color var(--transition_default-set);
  }
  .top-link-list > li > [class*="__type"]::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 34px;
    height: 22px;
    transform: translateY(-50%);
    transition: filter var(--transition_default-set);
  }
  .top-link-list .top-link-list__type::after {
    background: url(/extlib/common/img_new/cmn_ic01_01.svg) no-repeat center /contain;
  }
  .top-link-list .top-link-list__type--blank::after {
    background: url(/extlib/common/img_new/cmn_ic01_02.svg) no-repeat center /contain;
  }

  /* ----- top-banner ----- */
  .top-banner {
    margin: 64px 0 0;
  }
  .top-banner .top-banner__item {
    width: 100%;
  }
  .top-banner .top-banner__item:not(:first-child) {
    margin-top: 16px;
  }
  .top-banner .top-banner__item > [class*="__type"] {
    display: block;
    border-radius: 8px;
    border: 1px solid var(--color_mono_bg_dark);
    overflow: hidden;
  }
  .top-banner .top-banner__item > [class*="__type"] img {
    width: 100%;
    max-width: none;
  }

  /* ----- top-customer-info ----- */
  .top-customer-info {
    position: relative;
    margin-block: 48px 0;
    margin-inline: -16px;
    padding-block: 48px 0;
  }
  .top-customer-info::before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 16px;
    width: calc(100% - (16px * 2));
    height: 1px;
    background: var(--color_mono_bg_dark);
  }
  .top-customer-info .top-customer-info__inner {
    border-radius: 8px;
    background: var(--color_mono_bg_light);
    overflow: hidden;
  }
  .top-customer-info .top-customer-info__head__inner {
    appearance: none;
    position: relative;
    width: 100%;
    padding-block: 12px;
    padding-inline: 16px 60px;
    border: none;
    background: none;
    text-align: left;
    cursor: pointer;
  }
  .top-customer-info .top-customer-info__head__inner::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 16px;
    width: 34px;
    height: 22px;
    border-radius: 8px;
    background: var(--color_main_key);
    transform: translateY(-50%);
    transition: background var(--transition_default-set);
  }
  .top-customer-info .top-customer-info__head__inner::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: calc(16px + 12px);
    width: 10px;
    height: 10px;
    background: url(/extlib/common/img_new/cmn_ic14_01.svg) no-repeat center / contain;
    transform: translateY(-50%) scale(1,-1);
    transition: transform var(--transition_default-set);
  }
  .top-customer-info .top-customer-info__head__inner[aria-expanded="false"]::after {
    transform: translateY(-50%) scale(1,1);
  }
  .top-customer-info .top-customer-info__head__inner[aria-expanded="true"] .top-customer-info__title__visually-hidden {
    display: none;
  }
  .top-customer-info .top-customer-info__head__inner[aria-expanded="false"] .top-customer-info__title__visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    overflow: hidden !important;
    white-space: nowrap !important;
  }
  .top-customer-info .top-customer-info__title {
    color: var(--color_text_main);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
  }
  .top-customer-info .top-customer-info__body {
    padding-block: 14px 48px;
    padding-inline: 16px;
    border-top: 1px solid var(--color_mono_bg_dark);
  }
  .top-customer-info .top-customer-info__list > ul > li {
    position: relative;
    margin-top: 2px;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.7;
    font-feature-settings: "palt" 1;
    letter-spacing: 0;
    border-bottom: 1px solid var(--color_mono_bg_dark);
    border-image: linear-gradient(90deg, #E8E8E9 77%, rgba(236, 239, 243, 0.00) 100%) 1;
  }
  .top-customer-info .top-customer-info__list > ul > li > a {
    position: relative;
    display: block;
    padding-block: 6px 6.5px;
    padding-inline: 0 50px;
    color: var(--color_text_main);
    transition: opacity var(--transition_default-set);
  }
  .top-customer-info .top-customer-info__list > ul > li:has( > a)::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 15px;
    width: 34px;
    height: 22px;
    background: url(/extlib/common/img_new/cmn_ic01_01.svg) no-repeat center / contain;
    transition: filter var(--transition_default-set);
  }
  .top-customer-info .top-customer-info__list > ul > li:has( > a[target="_blank"])::after {
    background: url(/extlib/common/img_new/cmn_ic01_02.svg) no-repeat center / contain;
  }
  .top-customer-info .top-customer-info__list > ul > li > a > span {
    display: none;
  }
  .top-customer-info .top-customer-info__list > ul > li > a > img {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    overflow: hidden !important;
    white-space: nowrap !important;
  }

  /* ----- news-bunner ----- */
  .news-bunner {
    width: 100%;
    padding-inline: var(--content-side--sp);
    background: var(--color_mono_bg_light);
    overflow: hidden;
  }
  .news-bunner .news-bunner__inner {
    max-width: var(--content-width);
    margin-inline: -8px;
    padding-block: 24px;
    overflow: hidden;
  }
  #emgAreaWrap + .news-bunner .news-bunner__inner {
    border-top: 1px solid #D2D2D2;
  }
  .news-bunner-link-list {
    display: flex;
    flex-direction: column;
    row-gap: 10px;
  }
  .news-bunner-link-list li {
    position: relative;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding-left: 33px;
    font-size: 13px;
  }
  .news-bunner-link-list li:only-child{
    font-size: 15px;
    padding-left: 38px;
  }
  .news-bunner-link-list li::before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 18px;
    height: 18px;
    text-align: center;
    background: url(/extlib/top_new/img/index_ic01_02.svg) no-repeat center / contain;
    transform: translateY(-50%);
    content: '';
  }
  .news-bunner-link-list li > [class*="__type"]:not([class*="--nolink"]) {
    min-height: 22px;
    padding-right: 58px;
    font-weight: 600;
    color: var(--color_text_main);
    transition: color var(--transition_default-set);
    line-height: 1.5;
  }
  .news-bunner-link-list li > [class*="__type"]:not([class*="--nolink"])::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 1px;
    width: 34px;
    height: 22px;
    background: var(--color_text_darkgray);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background var(--transition_default-set);
    transform: translateY(-50%);
  }
  .news-bunner-link-list .news-bunner-link-list__type--blank::after {
    mask-image: url(/extlib/common/img_new/cmn_ic01_02.svg);
  }

  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}


/* ======================================================
 * SP Media Queries
====================================================== */
@media only screen and (max-width: 767px) {
}
@media only screen and (max-width: 667px) {}
@media only screen and (max-width: 640px) {}
@media only screen and (max-width: 580px) {
  .top-sustainability .top-sustainability__head,
  .top-sustainability .top-sustainability__body {
    width: 100%;
  }
}
@media only screen and (max-width: 480px) {}
@media only screen and (max-width: 414px) {}
@media only screen and (max-width: 390px) {
  .top-news-carousel .top-news-carousel__image-carousel {
    height: calc((282.25 / 390 * 100vw) * (343 / 608));
  }
}
@media only screen and (max-width: 375px) {}
@media only screen and (max-width: 360px) {}
@media only screen and (max-width: 320px) {}


/* ======================================================
 * Print
====================================================== */
@media print {}


