@charset "UTF-8";

:root {
  --sub-color-page: var(--sub-color-jigyo05-03);
  --main-color-page: var(--main-color-jigyo05);
  --accent-color-page: var(--accent-color-jigyo05);
  --accent-sub-color-page: var(--accent-sub-color-jigyo05);
}

@media all and (min-width: 768px), print {
  main:not(:has(.breadcrumb-area)) + .l-contact{
    margin-top: 0;
  }
  .l-contact{
  }
}
@media all and (max-width: 767px), print {
  main:not(:has(.breadcrumb-area)) + .l-contact{
    margin-top: 0;
  }
  .l-contact{
  }
}
@media all and (min-width: 1320px), print {
  body{
    max-width:none;
  }
}
@media screen and (min-width: 768px), print {
  .c-btn.--disable .c-btn__arrow {
    display: none;
  }
  .c-btn:has(.c-btn__arrow).--disable .c-btn__inner {
    /* padding-left: calc(16 / var(--font-size) * 1rem);
    padding-right: calc(16 / var(--font-size) * 1rem); */
  }
}
@media all and (max-width: 767px), print {
  .c-btn.--disable .c-btn__arrow {
    display: none;
  }
  .c-btn:has(.c-btn__arrow).--disable .c-btn__inner {
    /* padding-left: calc(32 / var(--font-size) * 1rem);
    padding-right: calc(32 / var(--font-size) * 1rem); */
  }
}
/* --------------------------------------------------------------------------
  TOP VISUAL
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
    .top-visual{
      position: relative;
      background-image: linear-gradient(135deg, #ffffff, #fff6ff66 43%, #d2f3eb4d);
      color: var(--text-color);
      overflow: hidden;
      min-height: calc(610 / var(--font-size) * 1rem);
    }
    .top-visual:before{
      content: '';
      position: absolute;
      bottom: 0;
      left: 50%;
      width: calc(2057 / var(--font-size) * 1rem);
      height: 100%;
      background: url(/assets/img/top_public/bg_visual01.svg) no-repeat center top / cover;
      transform: translate3d(-50%,0,0);
      pointer-events: none;
    }
    .top-visual > *{
      position: relative;
      z-index: 1;
    }
    .top-visual__inner{
      padding: 0 calc(84 / var(--font-size) * 1rem);
      height: auto;
      max-width: calc(1024 / var(--font-size) * 1rem);
      width: 100%;
      margin: auto;
      box-sizing: content-box;
    }
    .top-visual__body {
      height: auto;
    }
    .top-visual-container{
      height: auto;
      padding-top: calc(82 / var(--font-size) * 1rem);
      padding-bottom: calc(34 / var(--font-size) * 1rem);
    }
    .top-visual-content{
        position: relative;
      height: auto;
    }
    .top-visual-container > *{
      width: 100%;
    }
    .top-visual-catch {
      position: absolute;
      left: 0;
      z-index: 1;
    }
    .top-visual-heading{
    }
    .top-visual-heading__label{
      display: inline-block;
      vertical-align: top;
      width: calc(415 / var(--font-size) * 1rem);
    }
    .top-visual-body{
      margin-top: calc(32 / var(--font-size) * 1rem);
    }
    .top-visual-body:first-child{
      margin-top: 0;
    }
    .top-visual-txt{
      line-height: calc(22.4 / 14 * 1);
      font-size: calc(14 / var(--font-size) * 1rem);
      font-weight: 400;
    }
    .top-visual-txt em{
      color: var(--main-color-jigyo03);
    }
    .top-visual-btn{
        margin-top: calc(32 / var(--font-size) * 1rem);
    }
    .top-visual-btn .c-btn{
        width: calc(250 / var(--font-size) * 1rem);
    }
    .top-visual-btn .c-btn .c-btn__inner{
        min-height: calc(50 / var(--font-size) * 1rem);
    }
    .top-visual-btn .c-btn__text__label{
    }
    /* news */
    .top-visual-news{
        width: 100%;
        color: var(--text-color);
        position: relative;
        padding-top: calc((428 - 81) / var(--font-size) * 1rem);
        left: 0;
    }
      .top-visual-news__inner{
        position: relative;
        padding: 0 calc(40 / var(--font-size) * 1rem);
      }
      .top-visual-news__inner::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border-radius: calc(20 / var(--font-size) * 1rem);
        background-color: var(--color-white);
        filter: drop-shadow(0 0 calc(2 / var(--font-size) * 1rem) rgba(0,0,0,.2));
        background-color: var(--color-white);
        opacity: .7;
        z-index: -1;
      }
      .top-visual-news__body{
        padding: calc(18 / var(--font-size) * 1rem) 0 calc(14 / var(--font-size) * 1rem);
        min-height: calc(148 / var(--font-size) * 1rem);
      }
      .top-visual-news-column{
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
      }
      .top-visual-news-column__parts:first-child{
        flex-shrink: 0;
        width: calc(124 / var(--font-size) * 1rem);
      }
      .top-visual-news-column__parts + .top-visual-news-column__parts{
        flex-grow: 1;
        margin-left: calc(32 / var(--font-size) * 1rem);
      }
      .top-visual-news-heading{
        margin-top: calc(4 / var(--font-size) * 1rem);
      }
      .top-visual-news-heading__label{
        display: inline-block;
        vertical-align: top;
        line-height: calc(28 / 24 * 1);
        font-size: calc(24 / var(--font-size) * 1rem);
        font-weight: 700;
        color: var(--main-color-page);
        letter-spacing: calc(7 / 1000 * 1em);
      }
      .top-visual-news-body{
        margin-top: calc(32 / var(--font-size) * 1rem);
        /* max-height: calc(144 / var(--font-size) * 1rem);
        overflow-y: scroll; */
      }
      .top-visual-news-body:first-child{
        margin-top: 0;
      }
      .top-visual-news-link{
        margin-top: calc(16 / var(--font-size) * 1rem);
      }
      .top-visual-news-link:first-child{
        margin-top: 0;
      }
      .top-visual-news-link-txt{
        line-height: calc(22.4 / 14 * 1);
        font-size: calc(14 / var(--font-size) * 1rem);
        font-weight: 700;
      }
      .top-visual-news-link-txt a{
        display: inline-block;
        vertical-align: top;
        color: var(--text-color);
      }
      .top-visual-news-link-txt a svg{
        display: inline-block;
        vertical-align: top;
        width: calc(16 / 14 * 1em);
        height: calc(16 / 14 * 1em);
        margin-top: calc(4 / var(--font-size) * 1rem);
        margin-left: calc(4 / 14 * 1em);
        fill: var(--main-color-page);
      }
      .top-visual-news .c-news-list__item__body{
        margin-top: 0;
      }
      .top-visual-news .c-news-list__item{
        display: flex;
        /* align-items: flex-start; */
        column-gap: calc(16 / var(--font-size) * 1rem);
        margin-bottom: calc(11 / var(--font-size) * 1rem);
        padding-bottom: calc(11 / var(--font-size) * 1rem);
      }
      .top-visual-news .c-news-list__item:last-child{
        margin-bottom: 0;
        padding-bottom: 0;
      }
      .top-visual-news .c-news-list__item:last-child::before{
        display: none;
      }
      .top-visual-news .c-news-list__item__heading{
        flex-shrink: 0;
      }
      .top-visual-news .c-news-list__item__body{
        max-width: calc(780 / var(--font-size) * 1rem);
        overflow: hidden;

      }
      .top-visual-news .c-news-list__text{
        width: 100%;
        display: inline-block;
        position: relative;
        top:calc(-2.5 / var(--font-size) * 1rem);
      }
}
  
@media (max-width: 767px) {
  .top-visual {
    position: relative;
    /* background: var(--bg-color-jigyo04); */
    color: var(--text-color);
    overflow: hidden;
  }
  .top-visual:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: calc(548 / var(--font-size) * 1rem);
    background-image: url(/assets/img/top_public/bg_visual01_sp.png);
    background-size:cover;
    background-position:top center;
    background-repeat:no-repeat;
    pointer-events: none;
    transform: translateX(-50%);
  }
  .top-visual > * {
    position: relative;
    z-index: 1;
  }
  .top-visual__body {
  }
  .top-visual__inner {
    width: 100%;
    margin: 0 auto;
  }
  .top-visual-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .top-visual-content {
    position: relative;
    padding-top: calc(78 / var(--font-size) * 1rem);
    height: 100%;
  }
  .top-visual-content:has(.top-visual-attention-news) {
    padding-top: calc(89 / var(--font-size) * 1rem);
  }
  .top-visual-container > * {
    width: 100%;
  }
  .top-visual-heading {
    text-align: center;
  }
  .top-visual-heading__label {
    display: inline-block;
    vertical-align: top;
    max-width: calc(286 / var(--font-size) * 1rem);
    width: 100%;
  }
  .top-visual-body {
    margin-top: calc(18 / var(--font-size) * 1rem);
  }
  .top-visual-body:first-child {
    margin-top: 0;
  }
  .top-visual-txt {
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(var(--text-size-s) / var(--font-size) * 1rem);
    font-weight: 400;
    text-align: center;
  }
  .top-visual-txt em {
    color: var(--main-color-jigyo03);
  }
  .top-visual-btn {
    margin-top: calc(33 / var(--font-size) * 1rem);
  }
  .top-visual-btn .c-btn {
    width: calc(250 / var(--font-size) * 1rem) !important;
    margin: 0 auto;
  }
  .top-visual-btn .c-btn .c-btn__inner {
    min-height: calc(50 / var(--font-size) * 1rem);
  }
  .top-visual-btn .c-btn__text__label {
    font-size: calc(var(--text-size-l) / var(--font-size) * 1rem) !important;
  }
  /* news */
  .top-visual-news {
    width: 100%;
    margin-top: calc(283 / var(--font-size) * 1rem);
    color: var(--text-color);
  }
  .top-visual-news__inner {
    padding: 0 calc(24 / var(--font-size) * 1rem);
    background-color: var(--color-white);
    border-radius: calc(0 / var(--font-size) * 1rem);
  }
  .top-visual-news__body {
    padding: calc(30 / var(--font-size) * 1rem) 0 calc(33 / var(--font-size) * 1rem);
    position: relative;
  }
  .top-visual-news-column {
    display: flex;
    flex-direction: column;
  }
  .top-visual-news-column__parts:first-child {
  }
  .top-visual-news-heading {
    margin-bottom: calc(16 / var(--font-size) * 1rem);
  }
  .top-visual-news-heading__label {
    display: inline-block;
    vertical-align: top;
    line-height: calc(42 / 24 * 1);
    font-size: calc(var(--text-size-l) / var(--font-size) * 1rem);
    font-weight: 700;
    color: var(--main-color-page);
  }
  .top-visual-news-body {
    margin-top: calc(32 / var(--font-size) * 1rem);
  }
  .top-visual-news-body:first-child {
    margin-top: 0;
  }
  .top-visual-news-link {
    position: absolute;
    top: calc(34 / var(--font-size) * 1rem);
    right: calc(2 / var(--font-size) * 1rem);
  }
  .top-visual-news-link:first-child {
    margin-top: 0;
  }
  .top-visual-news-link-txt {
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(var(--text-size-s) / var(--font-size) * 1rem);
    font-weight: 700;
    text-align: right;
  }
  .top-visual-news-link-txt a {
    vertical-align: top;
    color: var(--text-color);
  }
  .top-visual-news-link-txt a svg {
    display: inline-block;
    vertical-align: top;
    width: calc(16 / 14 * 1em);
    height: calc(16 / 14 * 1em);
    margin-top: calc(5 / var(--font-size) * 1rem);
    margin-left: calc(4 / 14 * 1em);
    fill: var(--main-color-page);
  }
  .top-visual-news .c-news-list__item__body {
    margin-top: 0;
  }
  .top-visual-news .c-news-list__item {
    display: flex;
    align-items: flex-start;
    column-gap: calc(16 / var(--font-size) * 1rem);
    margin-bottom: calc(20 / var(--font-size) * 1rem);
    padding-bottom: calc(20 / var(--font-size) * 1rem);
  }
  .top-visual-news .c-news-list__item:last-child::before {
    display: none;
  }
  .top-visual-news .c-news-list__item__heading {
    flex-shrink: 0;
  }
  .top-visual-news .c-news-list__item__body {
    max-width: calc(780 / var(--font-size) * 1rem);
    overflow: hidden;
  }
  .top-visual-news .c-news-list__text {
    width: 100%;
    overflow: hidden;
  }
  .top-visual-news .c-news-list__item {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .top-visual-news .c-news-list__item__date {
    line-height: calc(22.4 / 14 * 1);
  }
  .top-visual-news .c-news-list__item:last-child:after {
    content: "";
    display: block;
    width: 100%;
    padding-top: calc(2 / var(--font-size) * 1rem);
    background: url("/assets/img/common/deco_news_dots.svg") repeat-x left / calc(6 / var(--font-size) * 1rem);
    position: absolute;
    bottom: 0;
    left: 0;
  }
}

/* --------------------------------------------------------------------------
  TOP HEADING
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
    .top-heading{
      position: relative;
      padding-bottom: calc(17 / var(--font-size) * 1rem);
      max-width: calc(1024 / var(--font-size) * 1rem);
      margin-inline: auto;
      font-family: "Noto Sans JP", sans-serif;
      font-size: calc(28 / var(--font-size) * 1rem);
      font-weight: 700;
      line-height: 1.43;
      color: var(--text-color);
      text-align: left;
    }

    .top-heading::before {
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: calc(3 / var(--font-size) * 1rem);
      background-color: var(--color-gray_300);
      border-radius: calc(1.5 / var(--font-size) * 1rem);
    }
    .top-heading::after {
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: calc(210 / var(--font-size) * 1rem);
      height: calc(3 / var(--font-size) * 1rem);
      background-color: var(--main-color-page);
      border-radius: calc(1.5 / var(--font-size) * 1rem);
    }
    .top-heading--accent.top-heading::after {
      background-color: var(--main-accent-color);
    }
}

@media (max-width: 767px) {
  .top-heading{
      position: relative;
      padding-bottom: calc(17 / var(--font-size) * 1rem);
      font-family: "Noto Sans JP", sans-serif;
      font-size: calc(20 / var(--font-size) * 1rem);
      font-weight: 700;
      line-height: 1.43;
      color: var(--text-color);
      text-align: left;
    }

    .top-heading::before {
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: calc(3 / var(--font-size) * 1rem);
      background-color: var(--sub-border-color);
    }
    .top-heading::after {
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: calc(100 / var(--font-size) * 1rem);
      height: calc(3 / var(--font-size) * 1rem);
      background-color: var(--main-color);
    }
    .top-heading--accent.top-heading::after {
      background-color: var(--main-accent-color);
    }
}

/* --------------------------------------------------------------------------
  TOP FRATURE
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
    .top-desc-feature{
        background-color: var(--color-white);
        border-radius: calc(20 / var(--font-size) * 1rem);
        max-width: calc(1024 / var(--font-size) * 1rem);
        margin-left: auto;
        margin-right: auto;
    }
    .top-desc-feature + .top-desc-feature{
      margin-top: calc(24 / var(--font-size) * 1rem);
    }
    .top-desc-feature__inner{
        padding: calc(32 / var(--font-size) * 1rem) calc(54 / var(--font-size) * 1rem);
    }
    .top-desc-feature__container{
    }
    .top-desc-feature-header{
      width: 100%;
      padding-left: calc(24 / var(--font-size) * 1rem);
      padding-bottom: calc(32 / var(--font-size) * 1rem);
    }
    .top-desc-feature-header.--no-border{
      padding-bottom: 0;
      border-bottom: 0;
    }
    .top-desc-feature-header__inner{
      display:flex;
      align-items:center;
      margin-bottom: calc(16 / var(--font-size) * 1rem) 
    }
    .top-desc-feature-header__button{
      margin-left: auto;
    }
    .top-desc-feature-header:has(.top-desc-feature-account-btn){
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      column-gap: calc(12 / var(--font-size) * 1rem);
    }
    .top-desc-feature-header:has(.top-desc-feature-account-btn) .top-business-desc-title-lead__txt{
      flex-grow: 1;
    }
    .top-desc-feature-account-btn .c-btn__link{
      background-color: var(--main-accent-color);
      border-color: var(--main-accent-color);
    }
    .top-desc-feature-header__txt {
      font-size: calc(22 / var(--font-size) * 1rem);
      line-height: calc(42/22 * 1);
      font-weight: bold;
    }
    .top-desc-feature-header-img {
        display: flex;
        justify-content: center;
    }
    .top-desc-feature-header-img__label {
        flex-shrink: 0;
        display: inline-block;
        width: calc(65 / var(--font-size) * 1rem);
    }
    .top-desc-feature-header-link {
        text-align: center;
    }
    .top-desc-feature-header-link a{
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .top-desc-feature-header-link a svg{
        display: inline-block;
        vertical-align: top;
        width: calc(16 / 14 * 1em);
        height: calc(16 / 14 * 1em);
        margin-top: calc(5 / var(--font-size) * 1rem);
        margin-left: calc(4 / 14 * 1em);
        fill: var(--main-accent-color);
    }
    .top-desc-feature-header__paragraph {
      font-size: calc(14 / var(--font-size) * 1rem);
      line-height: 1.6;
    }
    .top-desc-feature-body {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: stretch;
    }
    .top-desc-feature-body.--2col,
    .top-desc-feature-body.--3col {
      border-top: calc(1 / var(--font-size) * 1rem) solid var(--sub-border-color);
    }
    .top-desc-feature-body.--2col .top-desc-feature-item {
      width: 50%;
      padding-top: calc(24 / var(--font-size) * 1rem);
    }
    .top-desc-feature-body.--3col .top-desc-feature-item {
      width: calc(100% / 3);
      padding-top: calc(24 / var(--font-size) * 1rem);
    }
    .top-desc-feature-item {
      display: flex;
      justify-content: center;
      position: relative;
    }
    .top-desc-feature-item.top-desc-feature-item--b::after{
      content: "";
      position: absolute;
      display: inline-block;
      border-right: calc(1 / var(--font-size) * 1rem) solid var(--sub-border-color);
      right: 0;
      top: calc(64 / var(--font-size) * 1rem);
      height: calc(64 / var(--font-size) * 1rem);
    }
    .top-desc-feature-item__inner {
      display: flex;
      align-items: center;
      flex-direction: column;
      row-gap: calc(12 / var(--font-size) * 1rem);
  }
  .top-desc-feature-item--row .top-desc-feature-item__inner{
    flex-direction: row;
    align-items: center;
    column-gap: calc(32 / var(--font-size) * 1rem);
}
    .top-desc-feature-item__title {
        font-size: calc(18 / var(--font-size) * 1rem);
        line-height: 1.4;
        font-weight: bold;
        text-align: center;
        height: 100%;
        max-height: calc(59 / var(--font-size) * 1rem);
    }
    .top-desc-feature-item .c-btn .c-btn__link{
        height: calc(64 / var(--font-size) * 1rem);
        border-radius: calc(20 / var(--font-size) * 1rem);
    }
    .top-desc-feature-item .c-btn.--color-gray .c-btn__link{
        background-color: var(--color-gray_400);
        border-color: var(--color-gray_400);
    }
    .top-desc-feature-item .c-btn.--color-accent .c-btn__link{
        background-color: var(--main-accent-color);
        border-color: var(--main-accent-color);
    }
    .top-desc-feature-item .c-btn .c-btn__text__label {
      font-size: calc(14 / var(--font-size) * 1rem);
    }
    .top-desc-feature-item-note__txt{
        font-size: calc(12 / var(--font-size) * 1rem);
        line-height: 1.6;
        padding-left: 1em;
        text-indent: -1em;
    }
    .top-desc-feature-item-note__txt.--color-red{
        color: var(--color-attention_1000);
    }
    .top-desc-feature-item-note__txt > * {
      text-indent: 0;
    }
    .top-desc-feature-item-note__label {
      display: inline-block;
      vertical-align: top;
      width: 1em;
    }
    .top-desc-feature__container.--top-border .top-desc-feature-header{
      padding-top: calc(24 / var(--font-size) * 1rem);
      border-top: calc(1 / var(--font-size) * 1rem) solid var(--sub-border-color);
      margin-top: calc(32 / var(--font-size) * 1rem);
    }
}

@media (max-width: 767px) {
  .top-desc-feature{
    background-color: var(--color-white);
    border-radius: calc(10 / var(--font-size) * 1rem);
}
.top-desc-feature + .top-desc-feature{
  margin-top: calc(24 / var(--font-size) * 1rem);
}
.top-desc-feature__inner{
    padding: calc(20 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem);
}
.top-desc-feature__container{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.top-desc-feature-header{
    width: 100%;
    padding-bottom: calc(32 / var(--font-size) * 1rem);
    border-bottom: calc(1 / var(--font-size) * 1rem) solid var(--sub-border-color);
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    row-gap: calc(12 / var(--font-size) * 1rem);
}
.top-desc-feature-header.--no-border{
  padding-bottom: 0;
  border-bottom: 0;
}
.top-desc-feature-header__button{
  margin-top: calc(12 / var(--font-size) * 1rem);
  margin-left: auto;
  margin-right: auto;
  margin-bottom: calc(6 / var(--font-size) * 1rem);
}
.top-desc-feature-account-btn{
  margin: 0 auto;
}
.top-desc-feature-account-btn .c-btn__link{
  background-color: var(--main-accent-color);
  border-color: var(--main-accent-color);
}
.top-desc-feature-header + .top-desc-feature-body{
    padding-top: calc(32 / var(--font-size) * 1rem);
}
.top-desc-feature-header__txt {
    font-size: calc(22 / var(--font-size) * 1rem);
    font-weight: bold;
    text-align: center;
}
.top-desc-feature-header-img {
    display: flex;
    justify-content: center;
}
.top-desc-feature-header-img__label {
    flex-shrink: 0;
    display: inline-block;
    width: calc(72 / var(--font-size) * 1rem);
}
.top-desc-feature-header-link {
    text-align: center;
}
.top-desc-feature-header-link a{
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  text-decoration: none;
  font-feature-settings: "palt";
  letter-spacing: 0.07em;
}
.top-desc-feature-header-link a svg{
    display: inline-block;
    vertical-align: top;
    width: calc(16 / 14 * 1em);
    height: calc(16 / 14 * 1em);
    margin-top: calc(5 / var(--font-size) * 1rem);
    margin-left: calc(4 / 14 * 1em);
    fill: var(--main-accent-color);
}
.top-desc-feature-header__paragraph {
      font-size: calc(14 / var(--font-size) * 1rem);
      line-height: 1.6;
}
.top-desc-feature-header-link .c-text {
  margin-bottom: 0!important;
}
.top-desc-feature-body {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    column-gap: calc(32 / var(--font-size) * 1rem);
    align-items: center;
}
.top-desc-feature-item {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
}
.top-desc-feature-item .c-btn-list{
  width: 100%;
  justify-content: center;
}
.top-desc-feature-item--row {
  padding-inline: calc(16 / var(--font-size) * 1rem);
}
.top-desc-feature-item__title {
    font-size: calc(18 / var(--font-size) * 1rem);
    line-height: 1.4;
    color: var(--accent-color-page);
    font-weight: bold;
    text-align: center;
    margin-bottom: calc(16 / var(--font-size) * 1rem);
}
.top-desc-feature-item .c-btn .c-btn__link{
    min-height: calc(56 / var(--font-size) * 1rem);
}
.top-desc-feature-item .c-btn.--color-gray .c-btn__link{
    background-color: var(--color-gray_400);
    border-color: var(--color-gray_400);
}
.top-desc-feature-item .c-btn.--color-accent .c-btn__link{
    background-color: var(--main-accent-color);
    border-color: var(--main-accent-color);
    transition: none;
}
.top-desc-feature-item .c-btn .c-btn__link:hover {
  opacity: 1;
}
.top-desc-feature-item .c-btn .c-btn__text__label {
  font-size: calc(14 / var(--font-size) * 1rem);
}
.top-desc-feature-item-note{
  margin-top: calc(8 / var(--font-size) * 1rem);
}
.top-desc-feature-item-note__txt{
    font-size: calc(12 / var(--font-size) * 1rem);
    line-height: 1.6;
    padding-left: 1em;
    text-indent: -1em;
}
.top-desc-feature-item-note__txt.--color-red{
    color: var(--color-attention_1000);
}
.top-desc-feature-item-note__txt > * {
  text-indent: 0;
}
.top-desc-feature-item-note__label {
  display: inline-block;
  vertical-align: top;
  width: 1em;
}
.top-consumer .top-desc-feature-item__title{
    color: var(--color-black);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-feature-settings: "palt";
    line-height: calc(22.4 / 14 * 1);
}
.top-desc-feature__container.--top-border .top-desc-feature-header{
  padding-top: calc(24 / var(--font-size) * 1rem);
  border-top: calc(1 / var(--font-size) * 1rem) solid var(--sub-border-color);
  margin-top: calc(32 / var(--font-size) * 1rem);
}
}

/* --------------------------------------------------------------------------
  TOP BUSINESS
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
    .top-business{
        padding-top: calc(80 / var(--font-size) * 1rem);
        padding-bottom: calc(64 / var(--font-size) * 1rem);
        background-color: var(--accent-sub-color-jigyo05-02);
    }
    .top-business__inner{
        padding: 0 calc(84 / var(--font-size) * 1rem);
    }
    .top-business__content{
      padding: calc(76 / var(--font-size) * 1rem) 0;
    }
    .top-business-desc{
      max-width: calc(1024 / var(--font-size) * 1rem);
      margin: 0 auto;
    }
    .top-business-desc + .top-business-desc{
        margin-top: calc(62 / var(--font-size) * 1rem);
    }
    .top-business-desc-heading{
      background-color: var(--main-accent-color);
      border-top-left-radius: calc(30 / var(--font-size) * 1rem);
      border-top-right-radius: calc(30 / var(--font-size) * 1rem);
      display: flex;
      justify-content: center;
      padding-inline: calc(170 / var(--font-size) * 1rem);
    }
    .top-business-desc-title__container {
      position: relative;
      display: inline-block;
    }
    .top-business-desc-title{
        color: var(--color-white);
        position: relative;
        display: inline-block;
        padding-block: calc(14 / var(--font-size) * 1rem);
        min-width: calc(280 / var(--font-size) * 1rem);
        text-align: center;
    }
    .top-business-desc-title-img{
      position: absolute;
      bottom: 0;
      left: 0;
      width: calc(115 / var(--font-size) * 1rem);
      transform: translate(-100%, 0);
    }
    .top-business-desc-title-img__label{
        width: 100%;
    }
    .top-business-desc-title-img__label img{
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .top-business-desc-title__label{
        font-size: calc(30 / var(--font-size) * 1rem);
        line-height: 1.4;
    }
    .top-business-desc-lead{
      padding-top: calc(40 / var(--font-size) * 1rem);
      padding-inline: calc(84 / var(--font-size) * 1rem);
    }
    .top-business-desc-lead__txt{
      font-size: calc(14 / var(--font-size) * 1rem);
      line-height: 1.6;
    }
    .top-desc-feature-note{
      margin-top: calc(8 / var(--font-size) * 1rem);
    }
    .top-desc-feature-note__txt{
      font-size: calc(12 / var(--font-size)* 1rem);
      line-height: 1.6;
      padding-left: 1em;
      text-indent: -1em;
    }
    .top-business-desc-title-note{
      margin-top: calc(6 / var(--font-size) * 1rem);
    }
    .top-business-desc-body {
        background-color: var(--color-white);
        border-bottom-left-radius: calc(30 / var(--font-size) * 1rem);
        border-bottom-right-radius: calc(30 / var(--font-size) * 1rem);
    }

    .top-business .c-btn-list > .c-btn {
      width: calc(304 / var(--font-size) * 1rem);
    }
}

@media (max-width: 767px) {
  .top-business{
    padding-top: calc(48 / var(--font-size) * 1rem);
    padding-bottom: calc(48 / var(--font-size) * 1rem);
    background-color: var(--accent-sub-color-jigyo05-02);
}
.top-business__inner{
    padding: 0 calc(15 / var(--font-size) * 1rem);
}
.top-business__content{
    padding: calc(40 / var(--font-size) * 1rem) 0 0;
}
.top-business-desc{
}
.top-business-desc + .top-business-desc{
    margin-top: calc(32 / var(--font-size) * 1rem);
}
.top-business-desc-heading{
  background-color: var(--main-accent-color);
  border-top-left-radius: calc(10 / var(--font-size) * 1rem);
  border-top-right-radius: calc(10 / var(--font-size) * 1rem);
  display: flex;
  justify-content: center;
  padding-inline: calc(84 / var(--font-size) * 1rem);
  position: relative;
}
.top-business-desc-title__container {
  display: inline-block;
}
.top-business-desc-title{
  color: var(--color-white);
  display: inline-block;
  padding-block: calc(18 / var(--font-size) * 1rem);
}
.top-business-desc-title-img{
  position: absolute;
  bottom: 0;
  left: 0;
  width: calc(88 / var(--font-size) * 1rem);
}
.top-business-desc-title-img__label{
  width: 100%;
}
.top-business-desc-title-img__label img{
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.top-business-desc-title__label{
  font-size: calc(17 / var(--font-size) * 1rem);
  line-height: 1.4;
}
.top-business-desc-lead {
  padding-top: calc(20 / var(--font-size) * 1rem);
  padding-inline: calc(16 / var(--font-size) * 1rem);
}
.top-business-desc-lead__txt {
  font-size: calc(14 / var(--font-size) * 1rem);
  line-height: 1.6;
}
.top-desc-feature-note__txt{
  font-size: calc(12 / var(--font-size)* 1rem);
  line-height: 1.6;
  padding-left: 1em;
  text-indent: -1em;
}
.top-business-desc-title-note{
  margin-top: calc(6 / var(--font-size) * 1rem);
}
.top-business-desc-body{
  background-color: var(--color-white);
  border-bottom-left-radius: calc(10 / var(--font-size) * 1rem);
  border-bottom-right-radius: calc(10 / var(--font-size) * 1rem);
}
.top-business .top-desc-feature-item + .top-desc-feature-item {
  margin-top: calc(32 / var(--font-size) * 1rem);
  padding-top: calc(32 / var(--font-size) * 1rem);
  border-top: calc(1 / var(--font-size) * 1rem) solid var(--sub-border-color);
}
.top-business .c-btn-list > .c-btn {
  width: 100%;
}
}

/* --------------------------------------------------------------------------
  TOP CONSUMER
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
    .top-consumer{
        padding-bottom: calc(64 / var(--font-size) * 1rem);
        padding-top: calc(80 / var(--font-size) * 1rem);
    }
    .top-consumer + .top-consumer{
      margin-top: calc(20 / var(--font-size) * 1rem);
      margin-bottom: calc(20 / var(--font-size) * 1rem);
    }
    .top-consumer__content-wrap{
      padding:calc(10 / var(--font-size) * 1rem) calc(30 / var(--font-size) * 1rem) calc(20 / var(--font-size) * 1rem) calc(30 / var(--font-size) * 1rem);
      background-color: var(--color-white);
      border-radius:calc(10 / var(--font-size) * 1rem);
      display: flex;
      margin-top: calc(30 / var(--font-size) * 1rem);
    }
    .top-consumer-desc{
      max-width: calc(1024 / var(--font-size) * 1rem);
      margin: 0 auto;
    }
    .top-consumer-desc + .top-consumer-desc{
        margin-top: calc(28 / var(--font-size) * 1rem);
    }
    .top-consumer-desc-heading{
      background-color: var(--main-color);
      border-top-left-radius: calc(30 / var(--font-size) * 1rem);
      border-top-right-radius: calc(30 / var(--font-size) * 1rem);
      padding-inline: calc(170 / var(--font-size) * 1rem);
      display: flex;
      justify-content: center;
    }
    .top-consumer-desc-title__container {
      display: inline-block;
      position: relative;
      min-width: calc(280 / var(--font-size) * 1rem);
    }
    .top-consumer-desc-title-img{
      position: absolute;
      bottom: 0;
      left: 0;
      transform: translate(-100%, 0);
      width: calc(115 / var(--font-size) * 1rem);
    }
    .top-consumer-desc-title-img__label{
        width: 100%;
    }
    .top-consumer-desc-title-img__label img{
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .top-consumer-desc-title{
      text-align: center;
      color: var(--color-white);
      padding-block: calc(14 / var(--font-size) * 1rem);
    }
    .top-consumer-desc-title__label{
        font-size: calc(30 / var(--font-size) * 1rem);
        line-height: 1.4;
    }

    .top-consumer__inner{

    }
    .top-consumer__body{
      max-width: calc(1024 / var(--font-size) * 1rem);
      margin: 0 auto;
      padding-inline: calc(84 / var(--font-size) * 1rem);
      box-sizing: content-box;
    }
    .top-consumer-lead{
        padding-top: calc(24 / var(--font-size) * 1rem);
    }
    .top-desc-feature-title{
        display: flex;
        column-gap: calc(12 / var(--font-size) * 1rem);
        align-items: center;
        justify-content: center;
        margin-bottom: calc(27 / var(--font-size) * 1rem);
    }
    .top-desc-feature-title-icon{
        position: relative;
        width: calc(50 / var(--font-size) * 1rem);
        height: calc(50 / var(--font-size) * 1rem);
        border-radius: 100%;
        background-color: var(--main-color);
    }
    .top-desc-feature-title-icon__label{
        width: calc(20 / var(--font-size) * 1rem);
        height: calc(30 / var(--font-size) * 1rem);
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
    }
    .top-desc-feature-title-icon svg {
        fill: var(--color-white);
        max-width: 100%;
        max-height: 100%;
        width: 100%;
        height: auto;
    }
    .top-desc-feature-title__label {
        font-weight: bold;
        font-size: calc(20 / var(--font-size) * 1rem);
    }
    .top-consumer-desc-body{
      padding-top: calc(24 / var(--font-size)* 1rem);
    }
    .top-consumer .top-desc-feature-body {
        gap: 0;
    }
    .top-consumer .top-desc-feature-item {
      padding: 0 calc(30 / var(--font-size) * 1rem);
    }
    .top-consumer .top-business-desc-title{
      color: var(--main-color);
    }
    .top-consumer .u-text-link{
        color: var(--main-color);
    }

    .top-consumer-desc-body{
        background: var(--color-white);
        padding-top: calc(40 / var(--font-size) * 1rem);
        border-bottom-left-radius: calc(20 / var(--font-size) * 1rem);
        border-bottom-right-radius: calc(20 / var(--font-size) * 1rem);
    }
    .top-consumer-desc-lead{
      padding-left: calc(85 / var(--font-size) * 1rem);
      padding-right: calc(77 / var(--font-size) * 1rem);
    }
    .top-consumer-desc-lead__txt{
        font-size: calc(14 / var(--font-size) * 1rem);
        line-height: 1.6;
    }
    .top-consumer-desc-note{
      margin-top: calc(10 / var(--font-size) * 1rem);
      padding-left: calc(85 / var(--font-size) * 1rem);
      padding-right: calc(77 / var(--font-size) * 1rem);
    }

    .top-consumer .top-desc-feature__inner {
        padding-bottom: calc(60 / var(--font-size) * 1rem);
        padding-top: calc(40 / var(--font-size) * 1rem);
    }

    .top-consumer .c-btn-list > .c-btn {
      width: calc(304 / var(--font-size) * 1rem);

    }
    .top-consumer-button .c-btn__link {
      min-height: calc(64 / var(--font-size) * 1rem);
    }
}

@media (max-width: 767px) {
  .top-consumer{
    padding-top: calc(48 / var(--font-size) * 1rem);
    padding-bottom: calc(48 / var(--font-size) * 1rem);
    }
    .top-consumer + .top-consumer{
      margin-top: calc(20 / var(--font-size) * 1rem);
      margin-bottom: calc(20 / var(--font-size) * 1rem);
    }
    .top-consumer__content-wrap{
      padding:calc(10 / var(--font-size) * 1rem) calc(30 / var(--font-size) * 1rem) calc(20 / var(--font-size) * 1rem) calc(30 / var(--font-size) * 1rem);
      background-color: var(--color-white);
      border-radius:calc(10 / var(--font-size) * 1rem);
      margin-top: calc(30 / var(--font-size) * 1rem);
    }
    .top-consumer__inner{
        padding: 0 calc(15 / var(--font-size) * 1rem);
    }
    .top-consumer-lead{
        padding-top: calc(24 / var(--font-size) * 1rem);
    }
    .top-consumer-lead .c-text {
      margin-bottom: calc(24 / var(--font-size) * 1rem)!important;
      text-align: left!important;
    }
    .top-consumer-desc-heading{
      background-color: var(--main-color);
      border-top-left-radius: calc(10 / var(--font-size) * 1rem);
      border-top-right-radius: calc(10 / var(--font-size) * 1rem);
      display: flex;
      justify-content: center;
      padding-inline: calc(84 / var(--font-size) * 1rem);
      position: relative;
    }
    .top-consumer-desc-title__container {
      display: inline-block;
    }
    .top-consumer-desc-title-img{
      position: absolute;
      bottom: 0;
      left: 0;
      width: calc(88 / var(--font-size) * 1rem);
    }
    .top-consumer-desc-title-img__label{
        width: 100%;
    }
    .top-consumer-desc-title-img__label img{
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .top-consumer-desc-title{
      text-align: center;
      color: var(--color-white);
      padding-block: calc(18 / var(--font-size) * 1rem);
    }
    .top-consumer-desc-title__label{
        font-size: calc(17 / var(--font-size) * 1rem);
        line-height: 1.4;
    }
    .top-desc-feature-title{
        display: flex;
        column-gap: calc(12 / var(--font-size) * 1rem);
        align-items: center;
        justify-content: center;
    }
    .top-desc-feature-title-icon{
        position: relative;
        width: calc(50 / var(--font-size) * 1rem);
        height: calc(50 / var(--font-size) * 1rem);
        border-radius: 100%;
        background-color: var(--main-color);
    }
    .top-desc-feature-title-icon__label{
        width: calc(20 / var(--font-size) * 1rem);
        height: calc(30 / var(--font-size) * 1rem);
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
    }
    .top-desc-feature-title-icon svg {
        fill: var(--color-white);
        max-width: 100%;
        max-height: 100%;
        width: 100%;
        height: auto;
    }
    .top-desc-feature-title__label {
        font-weight: bold;
        font-size: calc(20 / var(--font-size) * 1rem);
    }
    .top-consumer-desc + .top-consumer-desc{
        margin-top: calc(24 / var(--font-size) * 1rem);
    }
    .top-consumer .top-desc-feature__container {
        margin-top: calc(32 / var(--font-size) * 1rem);
    }
    .top-consumer-desc-body{
      background: var(--color-white);
      border-bottom-left-radius: calc(10 / var(--font-size) * 1rem);
      border-bottom-right-radius: calc(10 / var(--font-size) * 1rem);
    }
    .top-consumer .top-desc-feature-body {
        gap: 0;
    }
    .top-consumer .top-desc-feature-item{
      position: relative;
    }
    .top-consumer .top-desc-feature-item + .top-desc-feature-item {
      padding-top: calc(32 / var(--font-size) * 1rem);
      margin-top: calc(32 / var(--font-size) * 1rem);
      border-top: calc(1 / var(--font-size) * 1rem) solid var(--sub-border-color);
    }
    .top-consumer .top-business-desc-title{
      color: var(--main-color);
    }
    .top-consumer .u-text-link{
        color: var(--main-color);
    }
    .top-desc-feature .c-btn {
      width: calc(304 / var(--font-size) * 1rem)!important;
    }
    .top-desc-feature .c-btn .c-btn__inner {
      min-height: calc(64 / var(--font-size) * 1rem);
    }
    .top-desc-feature-item-note__txt.--color-red {
      text-align: center;
    }
    .top-consumer-desc-lead{
      padding-top: calc(32 / var(--font-size) * 1rem);
      padding-inline: calc(20 / var(--font-size) * 1rem);
    }
    .top-consumer-desc-lead__txt{
        font-size: calc(14 / var(--font-size) * 1rem);
        line-height: 1.6;
    }
    .top-consumer-desc-note{
      padding-inline: calc(20 / var(--font-size) * 1rem);
      margin-top: calc(6 / var(--font-size) * 1rem);
    }
    .top-consumer .c-btn.--size-m {
      width: calc(304 / var(--font-size) * 1rem)!important;
    }
    .top-consumer-button .c-btn__link {
      min-height: calc(56 / var(--font-size) * 1rem);
    }
    .top-consumer .c-btn .c-btn__inner {
      min-height: calc(64 / var(--font-size) * 1rem);
    }
    .top-consumer .c-btn .c-btn__text__label{
      font-size: calc(14 / var(--font-size)* 1rem);
    }

}

/* list-parts */
@media all and (min-width: 768px), print {
  .list-parts {
      padding-top: calc(80 / var(--font-size)* 1rem);
      padding-bottom: calc(85 / var(--font-size)* 1rem);
  }
  .list-parts__inner {
      padding: 0 calc(84 / var(--font-size) * 1rem);
  }
  .list-parts .top-heading {
    margin-bottom: calc(40 / var(--font-size) * 1rem);
  }
  .top-subsidized-business__inner-section{
    max-width: calc(1024 / var(--font-size)* 1rem);
    margin-left: auto;
    margin-right: auto;
  }
  .top-subsidized-business__inner-section + .top-subsidized-business__inner-section{
      padding-top: calc(80 / var(--font-size)* 1rem);
  }
  .subsidized-business-list {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
  }
  .subsidized-business-box {
      width: calc(436 / var(--font-size) * 1rem);
      background-color: var(--color-white);
      border-radius: calc(10 / var(--font-size) * 1rem);
      padding: calc(40 / var(--font-size) * 1rem) calc(38 / var(--font-size) * 1rem);
      border: 1px solid var(--sub-border-color);
  }
  .subsidized-business-box__icon {
      display: block;
      max-width: calc(150 / var(--font-size) * 1rem);
      width: 100%;
      height: calc(150 / var(--font-size) * 1rem);
      margin: 0 auto calc(22 / var(--font-size) * 1rem);
  }
  .subsidized-business-box__icon img {
      max-width: 100%;
      max-height: 100%;
  }
  .subsidized-business-box-sub-heading {
      text-align: center;
  }
  .subsidized-business-box-sub{
      margin-top: calc(38 / var(--font-size) * 1rem);
  }
  .subsidized-business-box + .subsidized-business-box{
      margin-left: calc(32 / var(--font-size) * 1rem);
  }
  .subsidized-business-box .c-btn.--size-m-960{
      margin: 0 auto;
  }
  .subsidized-business-box .c-btn-list{
    flex-direction: column;
    gap: calc(20 / var(--font-size)* 1rem) calc(10 / var(--font-size)* 1rem);
  }
  .subsidized-business-box .c-btn.--color-accent .c-btn__link{
    background-color: var(--main-accent-color);
    border-color: var(--main-accent-color);
  }

  .c-btn.--color--acc .c-btn__link{
      background: var(--accent-color-jigyo04);
      border:0;
  }
  .bl_btn--col2 {
      display: flex;
      gap: calc(8 / var(--font-size) * 1rem);
  }

  /* 下部 */
  .construction-list-container {
      background-color: var(--color-white);
      border: var(--sub-border-color) 1px solid;
      border-radius: calc(10 / var(--font-size) * 1rem);
    }
    .construction-list {
      display: grid;
      --x-gap: 40;
      --y-gap: 1;
      grid-template-columns: repeat(2, 1fr);
      padding: calc(13 / var(--font-size) * 1rem) calc(34 / var(--font-size) * 1rem);
      column-gap: calc(var(--x-gap) / var(--font-size) * 1rem);
      row-gap: calc(var(--y-gap) / var(--font-size) * 1rem);
    }
    .construction-list-item {
      position: relative;
      display: flex;
      align-items: center;
      column-gap: calc(var(--x-gap) / var(--font-size) * 1rem);
      width: 100%;
    }
    .construction-list-item:nth-child(2n + 1)::after {
      content: '';
      display: block;
      background-color: var(--sub-border-color);
      width: calc(1 / var(--font-size) * 1rem);
      height: calc((100% - (calc(25 / var(--font-size) * 1rem)) * 2));
    }
    .construction-list-item__inner {
      width: 100%;
    }
    .construction-list-item__inner {}
    .construction-btn {}
    .construction-btn__inner {
      position: relative;
      padding: calc(25 / var(--font-size) * 1rem) calc(72 / var(--font-size) * 1rem) calc(25 / var(--font-size) * 1rem) 0;
    }
    .construction-btn__body {
      display: flex;
      gap: calc(30 / var(--font-size) * 1rem);
      align-items: center;
    }
    .construction-btn.--glass {
      --ico-width: 34;
      --ico-height: 34;
    }
    .construction-btn.--inner-window {
      --ico-width: 34;
      --ico-height: 25;
    }
    .construction-btn.--outside-window-co {
      --ico-width: 30;
      --ico-height: 31;
    }
    .construction-btn.--outside-window-ha {
      --ico-width: 37;
      --ico-height: 27;
    }
    .construction-btn.--door-co {
      --ico-width: 18;
      --ico-height: 37;
    }
    .construction-btn.--door-ha {
      --ico-width: 26;
      --ico-height: 26;
    }
    .construction-btn__ico {
      position: relative;
      width: calc(50 / var(--font-size) * 1rem);
      height: calc(50 / var(--font-size) * 1rem);
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .construction-btn__ico::before {
      position: absolute;
      content: '';
      width: calc(50 / var(--font-size) * 1rem);
      height: calc(50 / var(--font-size) * 1rem);
      border-radius: 9999px;
      background-color: #F4F4F0;
      z-index: 0;
    }
    .construction-btn__ico img {
      width: calc(var(--ico-width) / var(--font-size) * 1rem);
      height: calc(var(--ico-height) / var(--font-size) * 1rem);
      z-index: 1;
    }
    .construction-btn__arrow {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: calc(3 / var(--font-size) * 1rem);
    }
    .construction-btn__arrow__icon {
      width: calc(18 / var(--font-size) * 1rem);
      height: calc(18 / var(--font-size) * 1rem);
    }
    .construction-btn__arrow__icon svg {
      fill: var(--main-color);
      width: 100%;
      height: 100%;
      vertical-align: top;
    }
  
    .construction-btn__lead {
    }
    .construction-btn__title__label {
      font-size: calc(20 / var(--font-size) * 1rem);
      font-weight: bold;
      vertical-align: top;
    }
    .construction-btn__text {
      width: calc((100% - calc(72 / var(--font-size) * 1rem)));
      margin-top: calc(14 / var(--font-size) * 1rem);
    }



}
@media all and (max-width: 767px), print {
  .list-parts {
      padding-top: calc(48 / var(--font-size)* 1rem);
      padding-bottom: calc(48 / var(--font-size)* 1rem);
  }
  .list-parts__inner {
      padding: 0 calc(20 / var(--font-size) * 1rem);
  }
  .top-subsidized-business__inner-section + .top-subsidized-business__inner-section {
      padding-top: calc(48 / var(--font-size)* 1rem);
  }
  .subsidized-business-list {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      margin-top: calc(32 / var(--font-size) * 1rem);
  }
  .subsidized-business-box {
      width: 100%;
      background-color: #fff;
      border-radius: calc(10 / var(--font-size) * 1rem);
      padding: calc(32 / var(--font-size) * 1rem) calc(38 / var(--font-size) * 1rem);
      border: 1px solid #E0E0E0;
  }
  .subsidized-business-box__icon {
      display: block;
      max-width: calc(108 / var(--font-size) * 1rem);
      width: 100%;
      height: calc(108 / var(--font-size) * 1rem);
      margin: 0 auto calc(16 / var(--font-size) * 1rem);
  }
  .subsidized-business-box__icon img {
      max-width: 100%;
      max-height: 100%;
  }
  .subsidized-business-box-sub-heading {
      text-align: center;
  }
  .subsidized-business-box-sub-heading .c-text {
    margin-bottom: calc(12 / var(--font-size) * 1rem)!important;
  }
  .subsidized-business-box-sub-heading .u-title--m {
    font-size: calc(20 / var(--font-size) * 1rem)!important;
  }
  .subsidized-business-box-sub{
      margin-top: calc(24 / var(--font-size) * 1rem);
  }
  .subsidized-business-box-sub-list .c-text {
    margin-bottom: calc(12 / var(--font-size) * 1rem)!important;
  }
  .subsidized-business-box-sub-list .u-text--l {
    font-size: calc(18 / var(--font-size) * 1rem)!important;
  }
  .subsidized-business-box + .subsidized-business-box{
      margin-top: calc(24 / var(--font-size) * 1rem);
  }
  .subsidized-business-box .c-btn.--size-m-960{
    width: calc(260 / var(--font-size) * 1rem)!important;
      margin: 0 auto;
  }
  .subsidized-business-box .c-btn.--size-m-960 .c-btn__inner {
    min-height: calc(56 / var(--font-size) * 1rem);
  }
  .subsidized-business-box .c-btn.--color-accent .c-btn__link{
    background-color: var(--main-accent-color);
    border-color: var(--main-accent-color);
  }
  .subsidized-business-box .c-btn.--size-m-960 .c-btn__text__label{
    font-size: calc(16 / var(--font-size) * 1rem);
  }
  .c-btn.--color--acc .c-btn__link{
      background: var(--accent-color-jigyo04);
      border:0;
  }
  .bl_btn--col2 {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: calc(12 / var(--font-size) * 1rem);
  }
  .subsidized-business-box-sub-list .c-btn {
    margin: auto;
    max-width: calc(260 / var(--font-size) * 1rem);
  }

  /* 下部 */
  .construction-list-container {
      background-color: var(--color-white);
      border: var(--sub-border-color) 1px solid;
      border-radius: calc(10 / var(--font-size) * 1rem);
      margin-top: calc(32 / var(--font-size) * 1rem);
    }
    .construction-list {
      display: flex;
      flex-direction: column;
      --x-gap: 40;
      --y-gap: 1;
      padding: calc(13 / var(--font-size) * 1rem) calc(26 / var(--font-size) * 1rem);
      column-gap: calc(var(--x-gap) / var(--font-size) * 1rem);
      row-gap: calc(var(--y-gap) / var(--font-size) * 1rem);
    }
    .construction-list-item {
      position: relative;
      width: 100%;
    }
    .construction-list-item:not(:last-child)::after {
      content: '';
      position: absolute;
      bottom: 0;
      transform: translateY(-50%);
      right: 0;
      background-color: var(--sub-border-color);
      width: 100%;
      height: calc(1 / var(--font-size) * 1rem);
    }
    /* .construction-list-item::after {
      content: '';
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      bottom: 0;
      background-color: var(--sub-border-color);
      width: calc((100% - (calc(42 / var(--font-size) * 1rem)) * 2));
      height: calc(1 / var(--font-size) * 1rem)
    } */
    .construction-list-item:nth-child(5)::after,
    .construction-list-item:nth-child(6)::after {
      content: none;
    }
    .construction-list-item__inner {}
    .construction-btn {}
    .construction-btn__inner {
      position: relative;
      padding: calc(20 / var(--font-size) * 1rem) calc(28 / var(--font-size) * 1rem) calc(25 / var(--font-size) * 1rem) calc(4 / var(--font-size) * 1rem);
    }
    .construction-btn__body {
      display: flex;
      gap: calc(18 / var(--font-size) * 1rem);
      align-items: center;
    }
    .construction-btn.--glass {
      --ico-width: 34;
      --ico-height: 34;
    }
    .construction-btn.--inner-window {
      --ico-width: 34;
      --ico-height: 25;
    }
    .construction-btn.--outside-window-co {
      --ico-width: 30;
      --ico-height: 31;
    }
    .construction-btn.--outside-window-ha {
      --ico-width: 37;
      --ico-height: 27;
    }
    .construction-btn.--door-co {
      --ico-width: 18;
      --ico-height: 37;
    }
    .construction-btn.--door-ha {
      --ico-width: 26;
      --ico-height: 26;
    }
    .construction-btn__ico {
      position: relative;
      width: calc(50 / var(--font-size) * 1rem);
      height: calc(50 / var(--font-size) * 1rem);
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .construction-btn__ico::before {
      position: absolute;
      content: '';
      width: calc(50 / var(--font-size) * 1rem);
      height: calc(50 / var(--font-size) * 1rem);
      border-radius: 9999px;
      background-color: #F4F4F0;
      z-index: 0;
    }
    .construction-btn__ico img {
      width: calc(var(--ico-width) / var(--font-size) * 1rem);
      height: calc(var(--ico-height) / var(--font-size) * 1rem);
      z-index: 1;
    }
    .construction-btn__arrow {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 0;
    }
    .construction-btn__arrow__icon {
      width: calc(19 / var(--font-size) * 1rem);
      height: calc(19 / var(--font-size) * 1rem);
    }
    .construction-btn__arrow__icon svg {
      fill: var(--main-color);
      width: 100%;
      height: 100%;
    }
  
    .construction-btn__lead {
    }
    .construction-btn__lead .construction-btn__title {
      font-size: calc(16 / var(--font-size) * 1rem)!important;
      font-weight: bold;
    }
    .construction-btn__text {
      width: calc((100% - calc(72 / var(--font-size) * 1rem)));
      margin-top: calc(14 / var(--font-size) * 1rem);
    }
}

/* --------------------------------------------------------------------------
  TOP SOUDAN
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
  .top-soudan {
    padding-block: calc(80 / var(--font-size) * 1rem);
    background-color: var(--accent-sub-color-jigyo05-02);
  }
  .top-soudan__inner {
  }
  .top-soudan__body {
    max-width: calc(1024 / var(--font-size) * 1rem);
    margin: 0 auto;
    padding-inline: calc(84 / var(--font-size) * 1rem);
    box-sizing: content-box;
  }
  .top-soudan__content {
    margin-top: calc(40 / var(--font-size) * 1rem);
  }
  .top-soudan-copy {
    font-size: calc(16 / var(--font-size) * 1rem);
    margin-bottom: calc(40 / var(--font-size) * 1rem);
  }

  .top-soudan-contact {
    background-color: var(--color-white);
    border-radius: calc(20 / var(--font-size) * 1rem);
    padding: calc(32 / var(--font-size) * 1rem) calc(32 / var(--font-size) * 1rem) calc(36 / var(--font-size) * 1rem);
  }
  .top-soudan-contact-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 calc(20 / var(--font-size) * 1rem);
  }
  .top-soudan-contact-list-item {
    --soudan-contact-color-base: var(--main-color);
    display: flex;
    gap: 0 calc(20 / var(--font-size) * 1rem);
  }
  .top-soudan-contact-list-item--accent {
    --soudan-contact-color-base: var(--main-accent-color);
  }
  .top-soudan-contact-list-item + .top-soudan-contact-list-item::before {
    content: "";
    display: block;
    width: calc(1 / var(--font-size) * 1rem);
    height: 100%;
    background-color: var(--sub-border-color);
    flex-shrink: 0;
  }
  .top-soudan-contact-list__inner {
    width: 100%;
  }
  .top-soudan-contact-list__head {
    display: flex;
    align-items: center;
    gap: 0 calc(10 / var(--font-size) * 1rem);
  }
  .top-soudan-contact-list__illust {
    width: calc(114 / var(--font-size) * 1rem);
    flex-shrink: 0;
  }
  .top-soudan-contact-list__title {
    font-size: calc(20 / var(--font-size) * 1rem);
    font-weight: bold;
    color: var(--soudan-contact-color-base);
  }
  .top-soudan-contact-list__body {
    margin-top: calc(10 / var(--font-size) * 1rem);
  }
  .top-soudan-contact-list__txt {
    font-size: calc(14 / var(--font-size) * 1rem);
    line-height: 1.6;
    text-align: center;
  }
  .top-soudan-contact-list__btn {
    margin-top: calc(24 / var(--font-size) * 1rem);
    margin-inline: auto;
  }
  .top-soudan .c-btn-list {
    justify-content: center;
  }
  .top-soudan .c-btn-list > .c-btn {
    width: calc(304 / var(--font-size) * 1rem);
  }
  .top-soudan .c-btn-list > .c-btn .c-btn__link {
    background-color: var(--soudan-contact-color-base);
    border-color: var(--soudan-contact-color-base);
  }
  .top-soudan .c-btn-list > .c-btn .c-btn__inner {
    min-height: calc(62 / var(--font-size) * 1rem);
  }

}
@media all and (max-width: 767px), print {
  .top-soudan {
    padding-block: calc(48 / var(--font-size) * 1rem);
    background-color: var(--accent-sub-color-jigyo05-02);
  }
  .top-soudan__inner {
  }
  .top-soudan__body {
    padding-inline: calc(15 / var(--font-size) * 1rem);
  }
  .top-soudan__content {
    margin-top: calc(32 / var(--font-size) * 1rem);
  }
  .top-soudan-copy {
    font-size: calc(14 / var(--font-size) * 1rem);
    margin-bottom: calc(32 / var(--font-size) * 1rem);
  }

  .top-soudan-contact {
    background-color: var(--color-white);
    border-radius: calc(10 / var(--font-size) * 1rem);
    padding: calc(16 / var(--font-size) * 1rem) calc(15 / var(--font-size) * 1rem) calc(36 / var(--font-size) * 1rem);
  }
  .top-soudan-contact-list {
  }
  .top-soudan-contact-list-item {
    --soudan-contact-color-base: var(--main-color);
    position: relative;
  }
  .top-soudan-contact-list-item--accent {
    --soudan-contact-color-base: var(--main-accent-color);
  }
  .top-soudan-contact-list-item + .top-soudan-contact-list-item {
    margin-top: calc(32 / var(--font-size) * 1rem);
    padding-top: calc(16 / var(--font-size) * 1rem);
  }
  .top-soudan-contact-list-item + .top-soudan-contact-list-item::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(1 / var(--font-size) * 1rem);
    background-color: var(--sub-border-color);
  }
  .top-soudan-contact-list__inner {
    width: 100%;
  }
  .top-soudan-contact-list__head {
  }
  .top-soudan-contact-list__illust {
    width: calc(114 / var(--font-size) * 1rem);
    margin-inline: auto;
    margin-bottom: calc(10 / var(--font-size) * 1rem);
  }
  .top-soudan-contact-list__title {
    font-size: calc(20 / var(--font-size) * 1rem);
    font-weight: bold;
    color: var(--soudan-contact-color-base);
    text-align: center;
  }
  .top-soudan-contact-list__body {
    margin-top: calc(12 / var(--font-size) * 1rem);
  }
  .top-soudan-contact-list__txt {
    font-size: calc(14 / var(--font-size) * 1rem);
    line-height: 1.6;
  }
  .top-soudan-contact-list__btn {
    margin-top: calc(24 / var(--font-size) * 1rem);
    margin-inline: auto;
  }
  .top-soudan .c-btn-list {
    justify-content: center;
  }
  .top-soudan .c-btn-list > .c-btn {
    width: calc(304 / var(--font-size) * 1rem);
  }
  .top-soudan .c-btn-list > .c-btn .c-btn__link {
    background-color: var(--soudan-contact-color-base);
    border-color: var(--soudan-contact-color-base);
  }
  .top-soudan .c-btn-list > .c-btn .c-btn__inner {
    min-height: calc(62 / var(--font-size) * 1rem);
  }
}

/* --------------------------------------------------------------------------
  TOP OVERVIEW
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
  .top-overview{
    padding-top: calc(44 / var(--font-size) * 1rem);
    padding-bottom: calc(44 / var(--font-size) * 1rem);
    margin-top: calc(20 / var(--font-size) * 1rem);
  }
  .top-overview__inner{
    padding: 0 calc(84 / var(--font-size) * 1rem);
  }
  .top-overview-heading{
    font-size: calc(var(--title-size-l) / var(--font-size) * 1rem);
    font-weight: 700;
    text-align: center;
    line-height: 1.78;
    text-align: center;
    margin-bottom: calc(24 / var(--font-size)* 1rem);
  }
  .top-overview__body{

  }
  .top-overview__content{
  }
  .top-overview-column{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: calc(30 / var(--font-size) * 1rem);
  }
  .top-overview-column__parts{
    flex-grow: 1;
    width: calc(calc(1 / 2 * 100%) - calc(30 / var(--font-size) * 1rem));
    max-width: calc(502 / var(--font-size) * 1rem);
  }
  .top-overview-progress{
    max-width: calc(502 / var(--font-size) * 2rem + 30 / var(--font-size) * 1rem + 32 / var(--font-size) * 2rem);
    margin: 0 auto;
    margin-top: calc(30 / var(--font-size) * 1rem);
  }
  .top-overview-progress:first-child{
    margin-top: 0;
  }
  .top-overview-progress__inner{
    padding: calc(32 / var(--font-size) * 1rem) calc(32 / var(--font-size) * 1rem);
    border-radius: calc(10 / var(--font-size) * 1rem);
    background-color: var(--bg-accent-color);
  }
  .top-overview-progress-desc{
  }
  .top-overview-progress-desc__term{
    text-align: center;
  }
  .top-overview-progress__inner .top-overview-progress-desc__term{
    margin-left: calc(-32 / var(--font-size) * 1rem);
    margin-right: calc(-32 / var(--font-size) * 1rem);
  }
  .top-overview-progress-desc__term__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(33.6 / 21 * 1);
    font-size: calc(21 / var(--font-size) * 1rem);
    font-weight: 700;
    color: var(--main-accent-color);
  }
  .top-overview-progress-desc__defin{
    max-width: calc(420 / var(--font-size) * 1rem);
    margin: 0 auto;
    margin-top: calc(18 / var(--font-size) * 1rem);
  }
  .top-overview-progress-desc__defin:first-child{
    margin-top: 0;
  }
  .top-overview-progress-desc-desc{
    margin-top: calc(18 / var(--font-size) * 1rem);
  }
  .top-overview-progress-desc-desc:first-child{
    margin-top: 0;
  }
  .top-overview-progress-desc-desc__term{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .top-overview-progress-desc-desc__term__label{
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 50%;
    padding-left: calc(14 / var(--font-size) * 1rem + 8 / var(--font-size) * 1rem);
    line-height: calc(28.8 / 18 * 1);
    font-size: calc(16 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-progress-desc-desc__term__label::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: calc(14 / var(--font-size) * 1rem);
    height: calc(14 / var(--font-size) * 1rem);
    margin-top: calc(calc(28.8 / 18 * .5em) - calc(14 / var(--font-size) * .5rem));
    border-radius: calc(14 / var(--font-size) * 1rem);
    background-color: var(--text-color);
  }
  .top-overview-progress-desc-desc__defin{
    margin-top: calc(4 / var(--font-size) * 1rem);
  }
  .top-overview-progress-desc-desc__defin:first-child{
    margin-top: 0;
  }
  .top-overview-progress-body{
    position: relative;
    display: flex;
    justify-content: flex-start;
    height: calc(80 / var(--font-size) * 1rem);
    border-radius: calc(6 / var(--font-size) * 1rem);
    background: var(--color-white);
    color: var(--main-color);
    --x: 0 0 calc(2 / var(--font-size) * 1rem) var(--color-white);
    --y: var(--x), var(--x), var(--x), var(--x), var(--x), var(--x);
    text-shadow: var(--y), var(--y), var(--y), var(--y), var(--y), var(--y);
    overflow: hidden;
  }
  .top-overview-progress-body::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: calc(6 / var(--font-size) * 1rem);
    border: calc(2 / var(--font-size) * 1rem) solid var(--main-color);
  }
  .top-overview-progress-body > *{
    position: relative;
    z-index: 1;
  }
  .top-overview-progress-column{
    position: relative;
    width: 100%;
  }
  .top-overview-progress-column::before{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    height: calc(100% - calc(8 / var(--font-size) * 1rem));
    border-left: calc(2 / var(--font-size) * 1rem) dashed var(--main-border-color);
    transform: translate3d(-50%, -50%, 0);
  }
  .top-overview-progress-column__parts{
    position: absolute;
    top: 0;
    display: flex;
    justify-content: flex-start;
    width: 100%;
    height: 100%;
  }
  .top-overview-progress-column__parts:first-child{
    left: 0;
  }
  .top-overview-progress-column__parts + .top-overview-progress-column__parts{
    right: 0;
  }
  .top-overview-progress__bar{
    position: relative;
    display: inline-block;
    vertical-align: top;
    flex-grow: 1;
    width: 100%;
  }
  .top-overview-progress__bar > span{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    height: 100%;
    background: var(--main-color);
  }
  .top-overview-progress-column__parts .top-overview-progress__bar > span{
    max-width: 50%;
  }
  .top-overview-progress-column__parts + .top-overview-progress-column__parts .top-overview-progress__bar > span{
    left: auto;
    right: 0;
  }
  .top-overview-progress__label{
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    text-align: center;
    line-height: calc(25.6 / 20 * 1);
    font-size: calc(27 / var(--font-size) * 1rem);
    font-weight: 700;
    white-space: nowrap;
    transform: translate3d(0, -50%, 0);
  }
  .top-overview-progress__label > span{
    display: block;
  }
  .top-overview-progress__label > span > span{
    font-size: calc(18 / 27 * 100%);
  }
  .top-overview-progress-footer{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: calc(4 / var(--font-size) * 1rem);
  }
  .top-overview-progress-footer:first-child{
    margin-top: 0;
  }
  .top-overview-progress-footer > span{
    display: inline-block;
    vertical-align: top;
    line-height: calc(28.8 / 18 * 1);
    font-size: calc(18 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-progress-footer > span:first-child{
    text-align: left;
  }
  .top-overview-progress-footer > span:last-child{
    text-align: right;
  }
  .top-overview-lead{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .top-overview-lead:first-child{
    margin-top: 0;
  }
  .top-overview-lead-txt{
    line-height: calc(25.6 / 16 * 1);
    font-size: calc(16 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-lead-txt a{
    color: var(--main-accent-color);
    text-decoration: underline;
  }
  .top-overview-lead-txt a:hover{
    text-decoration: none;
  }
  .top-overview-note{
    margin-top: calc(8 / var(--font-size) * 1rem);
  }
  .top-overview-note:first-child{
    margin-top: 0;
  }
  .top-overview-note-txt{
    line-height: calc(19.2 / 12 * 1);
    font-size: calc(12 / var(--font-size) * 1rem);
    display: flex;
  }
  .top-overview-note-txt > *{
  }
  .top-overview-note__label{
    display: inline-block;
    vertical-align: top;
    width: 1em;
    margin-right: 0.5em;
    flex-shrink: 0;
  }
  .top-overview-txt{
    margin-top: calc(21 / var(--font-size) * 1rem);
    line-height: calc(22.4 / 12 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
  }
  .top-overview-txt:first-child{
    margin-top: 0;
  }
}

@media (max-width: 767px) {
  .top-overview{
    padding-top: calc(32 / var(--font-size) * 1rem);
    padding-bottom: calc(32 / var(--font-size) * 1rem);
    margin-top: calc(16 / var(--font-size)* 1rem);
  }
  .top-overview__inner{
    padding: 0 calc(20 / var(--font-size) * 1rem);
  }
  .top-overview-heading {
    font-size: calc(24 / var(--font-size) * 1rem);
    font-weight: 700;
    text-align: center;
    line-height: 1.78;
    text-align: center;
    margin-bottom: calc(16 / var(--font-size)* 1rem);
  }
  .top-overview__body{

  }
  .top-overview__content{
  }
  .top-overview-column{
  }
  .top-overview-column__parts{
    margin-top: calc(24 / var(--font-size) * 1rem);
  }
  .top-overview-column__parts:first-child{
    margin-top: 0;
  }
  .top-overview-progress{
    margin-top: calc(24 / var(--font-size) * 1rem);
  }
  .top-overview-progress:first-child{
    margin-top: 0;
  }
  .top-overview-progress__inner{
    padding: calc(24 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
    border-radius: calc(10 / var(--font-size) * 1rem);
    background-color: var(--bg-accent-color);
  }
  .top-overview-progress-desc{
  }
  .top-overview-progress-desc__term{
    text-align: center;
  }
  .top-overview-progress__inner .top-overview-progress-desc__term{
    margin-left: calc(-24 / var(--font-size) * 1rem);
    margin-right: calc(-24 / var(--font-size) * 1rem);
  }
  .top-overview-progress-desc__term__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(27 / 18 * 1);
    font-size: calc(18 / var(--font-size) * 1rem);
    font-weight: 700;
    color: var(--main-accent-color);
  }
  .top-overview-progress-desc__defin{
    margin-top: calc(9 / var(--font-size) * 1rem);
  }
  .top-overview-progress-desc__defin:first-child{
    margin-top: 0;
  }
  .top-overview-progress-desc-desc{
    margin-top: calc(18 / var(--font-size) * 1rem);
  }
  .top-overview-progress-desc-desc:first-child{
    margin-top: 0;
  }
  .top-overview-progress-desc-desc__term{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .top-overview-progress-desc-desc__term__label{
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 50%;
    padding-left: calc(14 / var(--font-size) * 1rem + 8 / var(--font-size) * 1rem);
    line-height: calc(28.8 / 18 * 1);
    font-size: calc(16 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-progress-desc-desc__term__label::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: calc(14 / var(--font-size) * 1rem);
    height: calc(14 / var(--font-size) * 1rem);
    margin-top: calc(calc(28.8 / 18 * .5em) - calc(14 / var(--font-size) * .5rem));
    border-radius: calc(14 / var(--font-size) * 1rem);
    background-color: var(--text-color);
  }
  .top-overview-progress-desc-desc__defin{
    margin-top: calc(4 / var(--font-size) * 1rem);
  }
  .top-overview-progress-desc-desc__defin:first-child{
    margin-top: 0;
  }
  .top-overview-progress-body{
    position: relative;
    display: flex;
    justify-content: flex-start;
    height: calc(80 / var(--font-size) * 1rem);
    border-radius: calc(6 / var(--font-size) * 1rem);
    background: var(--color-white);
    color: var(--main-color);
    --x: 0 0 calc(2 / var(--font-size) * 1rem) var(--color-white);
    --y: var(--x), var(--x), var(--x), var(--x), var(--x), var(--x);
    text-shadow: var(--y), var(--y), var(--y), var(--y), var(--y), var(--y);
    overflow: hidden;
  }
  .top-overview-progress-body::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: calc(6 / var(--font-size) * 1rem);
    border: calc(2 / var(--font-size) * 1rem) solid var(--main-color);
  }
  .top-overview-progress-body > *{
    position: relative;
    z-index: 1;
  }
  .top-overview-progress-column{
    position: relative;
    width: 100%;
  }
  .top-overview-progress-column::before{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    height: calc(100% - calc(8 / var(--font-size) * 1rem));
    border-left: calc(2 / var(--font-size) * 1rem) dashed var(--main-border-color);
    transform: translate3d(-50%, -50%, 0);
  }
  .top-overview-progress-column__parts{
    position: absolute;
    top: 0;
    display: flex;
    justify-content: flex-start;
    width: 100%;
    height: 100%;
  }
  .top-overview-progress-column__parts:first-child{
    left: 0;
  }
  .top-overview-progress-column__parts + .top-overview-progress-column__parts{
    right: 0;
  }
  .top-overview-progress__bar{
    position: relative;
    display: inline-block;
    vertical-align: top;
    flex-grow: 1;
    width: 100%;
  }
  .top-overview-progress__bar > span{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    height: 100%;
    background: var(--main-color);
  }
  .top-overview-progress-column__parts .top-overview-progress__bar > span{
    max-width: 50%;
  }
  .top-overview-progress-column__parts + .top-overview-progress-column__parts .top-overview-progress__bar > span{
    left: auto;
    right: 0;
  }
  .top-overview-progress__label{
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    text-align: center;
    line-height: calc(25.6 / 20 * 1);
    font-size: calc(27 / var(--font-size) * 1rem);
    font-weight: 700;
    white-space: nowrap;
    transform: translate3d(0, -50%, 0);
  }
  .top-overview-progress__label > span{
    display: block;
  }
  .top-overview-progress__label > span > span{
    font-size: calc(18 / 27 * 100%);
  }
  .top-overview-progress-footer{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: calc(4 / var(--font-size) * 1rem);
  }
  .top-overview-progress-footer:first-child{
    margin-top: 0;
  }
  .top-overview-progress-footer > span{
    display: inline-block;
    vertical-align: top;
    line-height: calc(28.8 / 18 * 1);
    font-size: calc(18 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-progress-footer > span:first-child{
    text-align: left;
  }
  .top-overview-progress-footer > span:last-child{
    text-align: right;
  }
  .top-overview-lead{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .top-overview-lead:first-child{
    margin-top: 0;
  }
  .top-overview-lead-txt{
    line-height: calc(25.6 / 16 * 1);
    font-size: calc(16 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-lead-txt a{
    color: var(--main-accent-color);
    text-decoration: underline;
  }
  .top-overview-lead-txt a:hover{
    text-decoration: none;
  }
  .top-overview-note{
    margin-top: calc(8 / var(--font-size) * 1rem);
  }
  .top-overview-note:first-child{
    margin-top: 0;
  }
  .top-overview-note-txt{
    line-height: calc(19.2 / 12 * 1);
    font-size: calc(12 / var(--font-size) * 1rem);
    display: flex;
  }
  .top-overview-note-txt > *{
  }
  .top-overview-note__label{
    display: inline-block;
    vertical-align: top;
    width: 1em;
    margin-right: 0.5em;
    flex-shrink: 0;
  }
  .top-overview-txt{
    margin-top: calc(21 / var(--font-size) * 1rem);
    line-height: calc(22.4 / 12 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
  }
  .top-overview-txt:first-child{
    margin-top: 0;
  }
}

.top-visual-attention-news.--hidden {
  display: none;
}

.top-visual-attention-news.--show {
  display: block;
}
@media screen and (min-width: 768px), print {
  /* attention-news */
  .top-visual-content:has(.top-visual-attention-news.--show) {
    padding-top: calc(144 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news {
    position: absolute;
    top: calc(15 / var(--font-size) * 1rem);
    width: 100%;
    margin-bottom: calc(13 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news__inner {
    padding: 0 calc(12 / var(--font-size) * 1rem) 0 calc(6 / var(--font-size) * 1rem);
    border: calc(2 / var(--font-size) * 1rem) solid var(--color-attention_1000);
    border-radius: calc(5 / var(--font-size) * 1rem);
    overflow:hidden;
  }
  .top-visual-attention-news__inner + .top-visual-attention-news__inner {
    margin-top: calc(8 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news__body {
    background-color: var(--color-white);
    padding: calc(12 / var(--font-size) * 1rem) 0;
  }
  .top-visual-attention-news-column {
    display: flex;
    width: 100%;
    gap: calc(20 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news-column__parts:first-child {
    flex-shrink: 0;
  }
  .top-visual-attention-news-column__parts {
    display: flex;
    align-items: center;
    gap: calc(16 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news__date {
    flex-shrink: 0;
  }
  .top-visual-attention-news__date__label {
    font-weight: bold;
    font-size: calc(14 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news-heading {
    display: flex;
    align-items: center;
  }
  .top-visual-attention-news-heading__ico {
    --ico-width: 30;
    --ico-height: 30;
    margin-right: calc(4 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news-heading__ico img {
    width: calc(var(--ico-width) / var(--font-size) * 1rem);
    height: calc(var(--ico-height) / var(--font-size) * 1rem);
  }
  .top-visual-attention-news-heading__label {
    font-size: calc(17 / var(--font-size) * 1rem);
    line-height: 1.3;
    font-weight: bold;
    color: var(--color-attention_1000);
  }
  .top-visual-attention-news__content {
  }
  .top-visual-attention-news__link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
  .top-visual-attention-news__label {
    font-size: calc(14 / var(--font-size) * 1rem);
    line-height: 1.3;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    max-height: calc(32 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news__link svg {
    display: inline-block;
    flex-shrink: 0;
    vertical-align: top;
    width: calc(16 / var(--font-size) * 1rem);
    height: calc(16 / var(--font-size) * 1rem);
    margin-top: calc(5 / var(--font-size) * 1rem);
    margin-left: calc(8 / 14 * 1em);
    fill: var(--color-attention_1000);
  }

  /* 2/26 */
  body[data-top-attention="true"] .top-visual-attention-news {
    max-width: calc(1024 / var(--font-size) * 1rem);
    top: calc(18 / var(--font-size) * 1rem);
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 1;
  }
  body[data-top-attention="true"] .top-visual-attention-news-column {
    justify-content: center;
    gap: 0;
  }
  body[data-top-attention="true"] .top-visual-attention-news__inner {
    padding: 0;
  }
  body[data-top-attention="true"] .top-visual-attention-news__body {
    padding: 0;
    position: relative;
  }
  body[data-top-attention="true"] .top-visual-attention-news__link {
    padding: calc(6 / var(--font-size) * 1rem) calc(6 / var(--font-size) * 1rem) calc(6 / var(--font-size) * 1rem) calc(6 / var(--font-size) * 1rem);
    min-height: calc(42 / var(--font-size) * 1rem);
  }
  body[data-top-attention="true"] .top-visual-attention-news__link svg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: calc(18 / var(--font-size) * 1rem);
    margin: auto 0;
  }
  body[data-top-attention="true"] .top-visual-content {
    /* padding-top: calc(135 / var(--font-size) * 1rem); */
  }
  /* 2025/11/04 */
  .top-visual-attention-news__inner.--important{
  }
  .top-visual-attention-news__inner.--important .top-visual-attention-news__body{
    background-color: var(--color-attention_1000);
    color:var(--color-white);
  }
  .top-visual-attention-news__inner.--important .top-visual-attention-news-heading__ico{
    background-color: var(--color-white);
    mask-image: url(/assets/img/top_public/icon_attention.svg);
    mask-size:contain;
    mask-position:center center;
    mask-repeat:no-repeat;
    width:calc(30 / var(--font-size) * 1rem);
    height: calc(30 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news__inner.--important .top-visual-attention-news__link svg{
    fill:var(--color-white);
  }
}
@media screen and (max-width: 767px), print {
  .top-visual-content:has(.top-visual-attention-news.--show) {
    padding-top: calc(89 / var(--font-size) * 1rem);
  }
  /* attention-news */
  .top-visual-attention-news {
    position: absolute;
    top: calc(15 / var(--font-size) * 1rem);
    width: 100%;
    margin-bottom: calc(13 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news__inner {
    padding: 0 calc(12 / var(--font-size) * 1rem) 0 calc(6 / var(--font-size) * 1rem);
    border: calc(2 / var(--font-size) * 1rem) solid var(--color-attention_1000);
    border-radius: calc(5 / var(--font-size) * 1rem);
    overflow:hidden;
  }
  .top-visual-attention-news__inner + .top-visual-attention-news__inner{
    margin-top: calc(9 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news__body {
    background-color: var(--color-white);
    padding: calc(8 / var(--font-size) * 1rem) 0 calc(10 / var(--font-size) * 1rem) 0;
  }
  .top-visual-attention-news-column {
    display: flex;
    width: 100%;
  }
  .top-visual-attention-news-column__parts:first-child {
    width: calc(94 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news-column__parts {
    width: calc(100% - calc(94 / var(--font-size) * 1rem));
  }
  .top-visual-attention-news-heading {
    display: flex;
    align-items: center;
  }
  .top-visual-attention-news-heading__ico {
    width: calc(44 / var(--font-size) * 1rem);
    display:flex;
    align-items:center;
    justify-content:center;
    --ico-width: 30;
    --ico-height: 30;
    margin-right: calc(4 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news-heading__ico img {
    width: calc(var(--ico-width) / var(--font-size) * 1rem);
    height: calc(var(--ico-height) / var(--font-size) * 1rem);
  }
  .top-visual-attention-news-heading__label {
    font-size: calc(12 / var(--font-size) * 1rem);
    line-height: 1.3;
    font-weight: bold;
    color: var(--color-attention_1000);
  }
  .top-visual-attention-news__content {
  }
  .top-visual-attention-news__link {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
  .top-visual-attention-news__label {
    padding-right: calc(28 / var(--font-size) * 1rem);
    font-size: calc(12 / var(--font-size) * 1rem) !important;
    line-height: 1.3;
    font-weight: bold;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    max-height: calc(34 / var(--font-size) * 1rem);
    width: 100%;
  }
  .top-visual-attention-news__label span{
    font-size: calc(11 / var(--font-size) * 1rem);
    flex-shrink: 0;
  }
  .top-visual-attention-news__link svg {
    display: inline-block;
    flex-shrink: 0;
    vertical-align: top;
    width: calc(16 / var(--font-size) * 1rem);
    height: calc(16 / var(--font-size) * 1rem);
    margin-top: calc(5 / var(--font-size) * 1rem);
    margin-left: calc(8 / 14 * 1em);
    fill: var(--color-attention_1000);
  }

  /* 2/26 */
  body[data-top-attention="true"] .top-visual-attention-news {
    max-width:calc(100% - calc(20 / var(--font-size) * 1rem));
    top: calc(30 / var(--font-size) * 1rem);
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 1;
  }
  body[data-top-attention="true"] .top-visual-attention-news-heading__ico {
    position: relative;
    top: calc(2 / var(--font-size) * 1rem);
  }
  body[data-top-attention="true"] .top-visual-attention-news-column {
    align-items: center;
    gap: 0;
  }
  body[data-top-attention="true"] .top-visual-attention-news-column__parts:first-child {
    width: auto;
  }
  body[data-top-attention="true"] .top-visual-attention-news-column__parts:nth-child(2) {
    width: 100%;
  }
  body[data-top-attention="true"] .top-visual-attention-news__inner {
    padding: 0;
  }
  body[data-top-attention="true"] .top-visual-attention-news__body {
    padding: 0;
    position: relative;
  }
  body[data-top-attention="true"] .top-visual-attention-news__link {
    padding: calc(12 / var(--font-size) * 1rem) calc(12 / var(--font-size) * 1rem) calc(12 / var(--font-size) * 1rem) calc(8 / var(--font-size) * 1rem);
  }
  body[data-top-attention="true"] .top-visual-attention-news__link svg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: calc(12 / var(--font-size) * 1rem);
    margin: auto 0;
  }
  body[data-top-attention="true"] .top-visual-content {
    padding-top: calc(117 / var(--font-size) * 1rem);
  }
  /* 2025/11/04 */
  .top-visual-attention-news__inner.--important{
  }
  .top-visual-attention-news__inner.--important .top-visual-attention-news__body{
    background-color: var(--color-attention_1000);
    color:var(--color-white);
  }
  .top-visual-attention-news__inner.--important .top-visual-attention-news-heading__ico{
    background-color: var(--color-white);
    mask-image: url(/assets/img/top_public/icon_attention.svg);
    mask-size:contain;
    mask-position:center center;
    mask-repeat:no-repeat;
    width:calc(30 / var(--font-size) * 1rem);
    height: calc(30 / var(--font-size) * 1rem);
  }
  .top-visual-attention-news__inner.--important .top-visual-attention-news__link svg{
    fill:var(--color-white);
  }
}
