@charset "UTF-8";

:root {
  --sub-color-page: var(--sub-color);
  --sub-color-table-title: var(--sub-color);
  --main-color-page: var(--main-color);
  --accent-color-page: var(--main-accent-color);
  --accent-sub-color-page: var(--bg-sub-color);
}

/* --------------------------------------------------------------------------
  Layout
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
  .l-container{
    padding: 0;
    max-width:none;
    margin: 0;
  }
}

@media (max-width: 767px) {
  .l-container{
    padding: 0;
    margin: 0;
  }
}

/* --------------------------------------------------------------------------
  TOP VISUAL
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
  .top-visual{
    position: relative;
    background: var(--sub-color-03);
    color: var(--text-color);
    overflow: hidden;
  }
  .top-visual:before{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(/assets/img/top/bg_visual01.png) no-repeat center bottom / calc(2312 / var(--font-size) * 1rem);
    pointer-events: none;
  }
  .top-visual > *{
    position: relative;
    z-index: 1;
  }
  .top-visual__inner{
    padding: 0 calc(50 / var(--font-size) * 1rem);
  }
  .top-visual-container{
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: flex-start;
    height: calc(440 / var(--font-size) * 1rem);
    padding-top: calc(27 / var(--font-size) * 1rem);
  }
  .top-visual-container > *{
    width: 100%;
  }
  .top-visual-heading{
    height: calc(243 / var(--font-size) * 1rem);
    text-align: center;
  }
  .top-visual-heading__label{
    display: inline-block;
    vertical-align: top;
    height: calc(243 / var(--font-size) * 1rem);
  }
  .top-visual-heading__label img{
    width: auto;
    height: 100%;
    object-fit: contain;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: high-quality;
  }
  .top-visual-body{
    margin-top: calc(21 / var(--font-size) * 1rem);
  }
  .top-visual-body:first-child{
    margin-top: 0;
  }
  .top-visual-txt{
    line-height: 1.86;
    font-size: calc(15 / var(--font-size) * 1rem);
    font-weight: 700;
    letter-spacing: calc(2 / var(--font-size) * 1rem);
    text-align: center;
  }
  .top-visual-txt em{
    color: var(--main-strong-color);
  }
}

@media all and (max-width: 767px) {
  .top-visual{
    position: relative;
    background: var(--sub-color-03);
    color: var(--color-black-sub);
    overflow: hidden;
  }
  .top-visual:before{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(/assets/img/top/bg_visual01_sp.png) no-repeat center bottom / 100%;
    background-color: rgb(247 255 233 / .5);
    pointer-events: none;
  }
  .top-visual > *{
    position: relative;
    z-index: 1;
  }
  .top-visual__inner{
    width: 100%;
    margin: 0 auto;
    padding: 0 calc(32 / var(--font-size) * 1rem);
  }
  .top-visual-container{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    height: 100%;
    min-height: calc(400 / var(--font-size) * 1rem);
    padding-top: calc(35 / var(--font-size) * 1rem);
    padding-bottom: calc(63 / var(--font-size) * 1rem);
  }
  .top-visual-container > *{
    width: 100%;
  }
  .top-visual-heading{
    height: calc(184 / var(--font-size) * 1rem);
    text-align: center;
  }
  .top-visual-heading__label{
    display: inline-block;
    vertical-align: top;
    height: calc(184 / var(--font-size) * 1rem);
  }
  .top-visual-heading__label img{
    width: auto;
    height: 100%;
    object-fit: contain;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: high-quality;
  }
  .top-visual-body{
    margin-top: calc(20 / var(--font-size) * 1rem);
  }
  .top-visual-body:first-child{
    margin-top: 0;
  }
  .top-visual-txt{
    line-height: 1.9;
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 500;
    letter-spacing: calc(1 / var(--font-size) * 1rem);
  }
  .top-visual-txt em{
    color: var(--main-strong-color);
  }
}

/* --------------------------------------------------------------------------
  TOP NEWS
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
  .top-news{
    padding-top: calc(80 / var(--font-size) * 1rem);
    padding-bottom: calc(70 / var(--font-size) * 1rem);
    color: var(--text-color);
  }
  .top-news__inner{
    padding: 0 calc(85 / var(--font-size) * 1rem);
  }
  .top-news-column{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .top-news-column__parts:first-child{
    flex-shrink: 0;
    width: calc(194 / var(--font-size) * 1rem);
  }
  .top-news-column__parts + .top-news-column__parts{
    flex-grow: 1;
    margin-left: calc(32 / var(--font-size) * 1rem);
  }
  .top-news-heading{

  }
  .top-news-heading__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(42 / 28 * 1);
    font-size: calc(28 / var(--font-size) * 1rem);
    font-weight: 700;
    color: var(--main-color-page);
  }
  .top-news-body{
    margin-top: calc(32 / var(--font-size) * 1rem);
  }
  .top-news-body:first-child{
    margin-top: 0;
  }
  .top-news-link{
    margin-top: calc(22 / var(--font-size) * 1rem);
  }
  .top-news-link:first-child{
    margin-top: 0;
  }
  .top-news-link-txt{
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-news-link-txt a{
    display: inline-block;
    vertical-align: top;
    color: var(--text-color);
    transition:0.3s ease;
  }
  .top-news-link-txt a:hover{
    opacity: 0.7;
  }
  .top-news-link-txt a svg{
    display: inline-block;
    vertical-align: top;
    width: calc(16 / 14 * 1em);
    height: calc(16 / 14 * 1em);
    margin-top: calc(22.4 / 2 / 14 * 1em - 16 / 2 / 14 * 1em);
    margin-bottom: calc(22.4 / 2 / 14 * 1em - 16 / 2 / 14 * 1em);
    margin-right: calc(4 / 14 * 1em);
    fill: var(--main-color-page);
  }
}

@media all and (max-width: 767px) {
  .top-news{
    padding-top: calc(52 / var(--font-size) * 1rem);
    padding-bottom: calc(12 / var(--font-size) * 1rem);
    color: var(--color-black-sub);
  }
  .top-news__inner{
    width: 100%;
    margin: 0 auto;
    padding: 0 calc(15 / var(--font-size) * 1rem);
  }
  .top-news-column{
  }
  .top-news-column__parts {
  }
  .top-news-column__parts:first-child{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
  }
  .top-news-column__parts:nth-child(2){
    margin-top: calc(28 / var(--font-size) * 1rem);
  }
  .top-news-heading{

  }
  .top-news-heading__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(42 / 28 * 1);
    font-size: calc(18 / var(--font-size) * 1rem);
    font-weight: 700;
    color: var(--main-color-page);
  }
  .top-news-body{
    margin-top: calc(32 / var(--font-size) * 1rem);
  }
  .top-news-body:first-child{
    margin-top: 0;
  }
  .top-news-link{
    flex-grow: 1;
    margin-top: calc(2 / var(--font-size) * 1rem);
  }
  .top-news-link:first-child{
    margin-top: 0;
  }
  .top-news-link-txt{
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 700;
    text-align: right;
  }
  .top-news-link-txt a{
    display: inline-block;
    vertical-align: top;
    color: var(--text-color);
  }
  .top-news-link-txt a svg{
    display: inline-block;
    vertical-align: top;
    width: calc(16 / 14 * 1em);
    height: calc(16 / 14 * 1em);
    margin-top: calc(22.4 / 2 / 14 * 1em - 16 / 2 / 14 * 1em);
    margin-bottom: calc(22.4 / 2 / 14 * 1em - 16 / 2 / 14 * 1em);
    margin-right: calc(4 / 14 * 1em);
    fill: var(--main-color-page);
  }
}

/* --------------------------------------------------------------------------
  TOP OVERVIEW
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
  .top-overview{
    padding-top: calc(115 / var(--font-size) * 1rem);
    padding-bottom: calc(110 / var(--font-size) * 1rem);
    color: var(--text-color);
  }
  .top-overview p a{
    text-decoration: underline;
  }
  .top-overview p a:hover{
    text-decoration: none;
  }
  .top-overview__inner{
    padding: 0 calc(146 / var(--font-size) * 1rem);
  }
  .top-overview-heading{
  }
  .top-overview-heading-sub{
    display: block;
    margin-bottom: calc(4 / var(--font-size) * 1rem);
  }
  .top-overview-heading-sub:last-child{
    margin-bottom: 0;
  }
  .top-overview-heading-sub__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(25.6 / 20 * 1);
    font-size: calc(20 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-heading__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(47.6 / 38 * 1);
    font-size: calc(38 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-body{
    margin-top: calc(70 / var(--font-size) * 1rem);
  }
  .top-overview-body:first-child{
    margin-top: 0;
  }
  .top-overview-tab {
    margin-top: calc(70 / var(--font-size) * 1rem);
  }
  .top-overview-tab:first-child{
    margin-top: 0;
  }
  .top-overview-tab .c-tab__button .c-tab__btn__inner{
    border-left:0;
    border-right:0;
  }
  .top-overview-tab .c-tab__btn-list{
  }
  .top-overview-tab .c-tab__contents__container {
  }
  .top-overview-tab .top-overview-body{
    padding-left: 0;
    padding-right: 0;
  }
  .top-overview-tab .top-overview-outline-desc{
  }

  .top-overview-tab .c-tab__button .c-tab__btn__inner{
  }

  /** **/
  .top-overview-tab .c-tab__btn.--new-house .c-tab__btn__inner{
    background-color: var(--main-color);
  }
  .top-overview-tab .c-tab__btn.--reform .c-tab__btn__inner{
    background-color: var(--main-accent-color);
  }
  .top-overview-tab .c-tab__contents__container[data-tab-item="new-house"]{
    border-color: var(--main-color);
  }
  .top-overview-tab .c-tab__contents__container[data-tab-item="reform"]{
    border-color: var(--main-accent-color);
  }
  .top-overview-tab .c-tab__contents__container[data-tab-item="reform"] .top-overview-outline-desc__term:after{
    border-color:  var(--main-accent-color) !important;
  }
  .top-overview-tab .c-tab__contents__container[data-tab-item="reform"] .top-overview-outline-desc__term__label{
    color: var(--main-accent-color) !important;
  }
  .top-overview-tab .top-overview-outline-desc:last-child:before{
    content:none;
  }
  .top-overview-tab .c-tab__contents__container[data-tab-item="reform"] .top-overview-outline-table__heading{
    background: var(--main-table-bg-color-reform);
  }
  /** **/


  .top-overview-outline{
    margin-top: calc(64 / var(--font-size) * 1rem);
  }
  .top-overview-outline:first-child{
    margin-top: 0;
  }
  .top-overview-outline-desc{
    margin-top: calc(75 / var(--font-size) * 1rem);
  }
  .top-overview-outline-desc:first-child{
    margin-top: 0;
  }
  .top-overview-outline-desc__term{
    position: relative;
    padding-bottom: calc(14 / var(--font-size)* 1rem + 3 / var(--font-size)* 1rem);
  }
  .top-overview-outline-desc__term:before{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    border-bottom: calc(3 / var(--font-size) * 1rem) solid var(--color-gray_300);
  }
  .top-overview-outline-desc__term:after{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(100 / var(--font-size) * 1rem);
    border-bottom: calc(3 / var(--font-size) * 1rem) solid var(--main-color-page);
  }
  .top-overview-outline-desc__term__label{
    display: inline-block;
    vertical-align: top;
    font-size: calc(24 / var(--font-size) * 1rem);
    font-weight: 700;
    line-height: 1.28;
    color: var(--main-color-page);
  }
  .top-overview-outline-desc__defin{
    margin-top: calc(34 / var(--font-size) * 1rem);
  }
  .top-overview-outline-desc__defin > *:first-child{
  }
  .top-overview-outline-desc__defin:first-child{
    margin-top: 0;
  }
  .top-overview-outline-txt{
    margin-top: calc(11.2 / 14 * 1em);
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
  }
  .top-overview-outline-txt:first-child{
    margin-top: 0;
  }
  .top-overview-outline-table__data.--recipients{
    padding-left: calc(34 / var(--font-size) * 1rem);
    padding-right: calc(34 / var(--font-size) * 1rem);
    max-width:calc(105 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table__data.--recipients-02{
    padding-left: calc(34 / var(--font-size) * 1rem);
    padding-right: calc(34 / var(--font-size) * 1rem);
  }
  .top-overview-outline-btn .c-btn.--size-xxxs{
  }
  .top-overview-outline-table__data.--recipients .top-overview-outline-txt,
  .top-overview-outline-table__data.--recipients-02 .top-overview-outline-txt{
    text-align:left;
  }
  .top-overview-outline-desc__defin > .top-overview-outline-txt:first-child{
  }
  .top-overview-outline-table + .top-overview-outline-txt,
  .top-overview-outline-feature + .top-overview-outline-txt,
  .top-overview-outline-feature-table + .top-overview-outline-txt{
    margin-top: calc(21 / var(--font-size) * 1rem);
  }
  .top-overview-outline-txt--l{
    margin-top: calc(12.8 / 16 * 1em);
    line-height: calc(25.6 / 16 * 1);
    font-size: calc(16 / var(--font-size) * 1rem);
  }
  .top-overview-outline-txt--l:first-child{
    margin-top: 0;
  }
  .top-overview-outline-txt--bold{
    font-weight: 700;
  }
  .top-overview-outline-table-column .top-overview-outline-txt{
    text-align: center;
  }
  .top-overview-outline-txt em{
    text-decoration: underline;
  }
  .top-overview-outline-txt sup{
    white-space: nowrap;
  }
  .top-overview-outline-list{

  }
  .top-overview-outline-list__item{
    margin-top: 0;
    padding-left: 1em;
    text-indent: -1em;
  }
  .top-overview-outline-list__item > *{
    text-indent: 0;
  }
  .top-overview-outline-list__label{
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
  .top-overview-outline-desc-desc{
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: calc(24 / var(--font-size) * 1rem);
    padding-top: calc(24 / var(--font-size) * 1rem);
  }
  .top-overview-outline-desc-desc:before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    border-bottom: calc(1 / var(--font-size) * 1rem) solid var(--color-gray_300);
  }
  .top-overview-outline-desc-desc:first-child{
    margin-top: 0;
    padding-top: 0;
  }
  .top-overview-outline-desc-desc:first-child:before{
    content: none;
  }
  .top-overview-outline-desc-desc__term{
    flex-shrink: 0;
    min-width: calc(16 / var(--font-size) * 10rem);
  }
  .top-overview-outline-desc-desc__term__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(25.6 / 16 * 1);
    font-size: calc(16 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-outline-desc-desc__term__label:before{
    content: '・';
  }
  .top-overview-outline-desc-desc__defin{
    flex-grow: 1;
    margin-left: calc(32 / var(--font-size) * 1rem);
  }
  .top-overview-outline-desc-desc__defin:first-child{
    margin-left: 0;
  }
  .top-overview-outline-note{
    margin-top: calc(8 / var(--font-size) * 1rem);
  }
  .top-overview-outline-note:first-child{
    margin-top: 0;
  }
  .top-overview-outline-table + .top-overview-outline-note,
  .top-overview-outline-feature + .top-overview-outline-note,
  .top-overview-outline-feature-table + .top-overview-outline-note{
    margin-top: calc(21 / var(--font-size) * 1rem);
  }
  .top-overview-outline-note-txt{
    padding-left: 1.5em;
    line-height: calc(19.2 / 12 * 1);
    font-size: calc(12 / var(--font-size) * 1rem);
    text-indent: -1.5em;
  }
  .top-overview-outline-note--num .top-overview-outline-note-txt{
    padding-left: 2em;
    text-indent: -2em;
  }
  .top-overview-outline-note-txt > *{
    text-indent: 0;
  }
  .top-overview-outline-note__label{
    display: inline-block;
    width: 1.5em;
  }
  .top-overview-outline-note--num .top-overview-outline-note__label{
    width: 2em;
  }
  .top-overview-outline-attention{
    margin-top: calc(8 / var(--font-size) * 1rem);
  }
  .top-overview-outline-attention:first-child{
    margin-top: 0;
  }
  .top-overview-outline-table + .top-overview-outline-attention,
  .top-overview-outline-feature + .top-overview-outline-attention,
  .top-overview-outline-feature-table + .top-overview-outline-attention{
    margin-top: calc(21 / var(--font-size) * 1rem);
  }
  .top-overview-outline-attention-txt{
    padding-left: 1.5em;
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 700;
    color: var(--color-attention_1000);
    text-indent: -1.5em;
  }
  .top-overview-outline-attention--num .top-overview-outline-attention-txt{
    padding-left: 2em;
    text-indent: -2em;
  }
  .top-overview-outline-attention-txt > *{
    text-indent: 0;
  }
  .top-overview-outline-attention-txt__label{
    display: inline-block;
    vertical-align: top;
  }
  .top-overview-outline-attention--num .top-overview-outline-attention-txt__label{
    width: 2em;
  }
  .top-overview-outline-table{
    margin-top: calc(27 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table:first-child{
    margin-top: 0;
  }
  .top-overview-outline-table__outer{
    overflow: hidden!important;
  }
  .top-overview-outline-table__inner{
    border: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    border-radius: calc(20 / var(--font-size) * 1rem);
    overflow: hidden;
  }
  .top-overview-outline-table-column .top-overview-outline-table__inner{
    height: 100%;
  }
  .top-overview-outline-table-body{
    display: table;
    width: 100%;
  }
  .top-overview-outline-table-column .top-overview-outline-table-body{
    height: 100%;
  }
  .top-overview-outline-table__row{
    display: table-row;
  }
  .top-overview-outline-table__heading{
    display: table-cell;
    padding: calc(16 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
    border: calc(1 / var(--font-size) * 1rem) solid var(--color-white);
    background: var(--main-table-bg-color);
    vertical-align: middle;
    text-align: center;
    font-weight: 700;
  }
  .top-overview-outline-table__row:first-child .top-overview-outline-table__heading{
    border-top: none;
  }
  .top-overview-outline-table__row:last-child .top-overview-outline-table__heading{
    border-bottom: none;
  }
  .top-overview-outline-table__heading:first-child{
    border-left: none;
  }
  .top-overview-outline-table__heading:last-child{
    border-right: none;
  }
  .top-overview-outline-table__heading.u-bg-sub-color-02,
  .top-overview-outline-table__heading.u-bg-sub-color-03{
    border-color: var(--main-border-color);
  }
  .top-overview-outline-table__heading.u-bg-table-head-01-gx{
    border-color: var(--main-border-color);
  }
  .top-overview-outline-table__row--s .top-overview-outline-table__heading{
    padding: calc(16 / var(--font-size) * 1rem - 22.4 / 2 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table__heading--b{
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color) !important;
  }
  .top-overview-outline-table__heading__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-outline-table__data{
    display: table-cell;
    padding: calc(16 / var(--font-size) * 1rem) calc(22 / var(--font-size) * 1rem);
    border: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    background: var(--color-white);
    text-align: left;
  }
  .top-overview-outline-table__row:first-child .top-overview-outline-table__data{
    border-top: none;
  }
  .top-overview-outline-table__row:last-child .top-overview-outline-table__data{
    border-bottom: none;
  }
  .top-overview-outline-table__data:first-child{
    border-left: none;
  }
  .top-overview-outline-table__data:last-child{
    border-right: none;
  }
  .top-overview-outline-table__row--s .top-overview-outline-table__data{
    padding-top: calc(16 / var(--font-size) * 1rem - 22.4 / 2 / var(--font-size) * 1rem);
    padding-bottom: calc(16 / var(--font-size) * 1rem - 22.4 / 2 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table__data[rowspan]{
    vertical-align: middle;
  }
  .top-overview-outline-table-column .top-overview-outline-table__data{
    padding: calc(20 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
    vertical-align: middle;
    text-align: center;
  }
  .top-overview-outline-table--flex .top-overview-outline-table__data{
    vertical-align: middle;
  }
  .top-overview-outline-table--heading-col .top-overview-outline-table__data{
    padding: calc(16 / var(--font-size) * 1rem) calc(40 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table__data--b{
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color) !important;
  }
  .top-overview-outline-table-column{
    display: flex;
    justify-content: flex-start;
  }
  .top-overview-outline-table-column__parts{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
    width: 50%;
  }
  .top-overview-outline-table-column__parts--center{
    flex-shrink: 0;
    width: 12%;
    margin-left: calc(16 / var(--font-size) * 1rem);
    margin-right: calc(16 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table-column__parts > *{
    width: 100%;
  }
  .top-overview-outline-feature{
    margin-top: calc(27 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature:first-child{
    margin-top: 0;
  }
  .top-overview-outline-feature__inner{
    padding: calc(24 / var(--font-size) * 1rem) calc(40 / var(--font-size) * 1rem);
    border-radius: calc(20 / var(--font-size) * 1rem);
    background: var(--sub-color-03);
    overflow: hidden;
  }
  .top-overview-outline-feature__inner:not(:has(.c-btn)){
    position: relative;
    background: var(--color-white);
  }
  .top-overview-outline-feature__inner:not(:has(.c-btn))::before{
    content: "";
    position: absolute;
    inset: 0;
    border: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    border-radius: calc(20 / var(--font-size) * 1rem);
    pointer-events: none;
  }
  .top-overview-outline-feature-desc{
    margin-top: calc(27 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-desc:first-child{
    margin-top: 0;
  }
  .top-overview-outline-feature-desc__term{

  }
  .top-overview-outline-feature-desc__term__label{
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding-left: calc(28 / 16 * 1em);
    line-height: calc(25.6 / 16 * 1);
    font-size: calc(16 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-outline-feature-desc__term__label:before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: calc(16 / 16 * 1em);
    height: calc(16 / 16 * 1em);
    margin-top: calc(25.6 / 2 / 16 * 1em - 16 / 2 / 16 * 1em);
    margin-bottom: calc(25.6 / 2 / 16 * 1em - 16 / 2 / 16 * 1em);
    border-radius: calc(16 / 16 * 1em);
    background: var(--main-color-page);
  }
  .top-overview-outline-feature-desc--color > .top-overview-outline-feature-desc__term .top-overview-outline-feature-desc__term__label{
    padding-left: 0;
    color: var(--main-color-page);
  }
  .top-overview-outline-feature-desc--color > .top-overview-outline-feature-desc__term .top-overview-outline-feature-desc__term__label:before{
    content: none;
  }
  .top-overview-outline-feature-desc__defin{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-desc__defin:first-child{
    margin-top: 0;
  }
  .top-overview-outline-feature-table{
    margin-top: calc(27 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table:first-child{
    margin-top: 0;
  }
  .top-overview-outline-feature-table__outer{
    overflow: hidden;
  }
  .top-overview-outline-feature-table__inner{
    border: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    border-radius: calc(10 / var(--font-size) * 1rem);
    overflow: hidden;
  }
  .top-overview-outline-feature-table-body{
    display: table;
    width: 100%;
  }
  .top-overview-outline-feature-table__row{
    display: table-row;
  }
  .top-overview-outline-feature-table__heading{
    display: table-cell;
    padding: calc(16 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem);
    border-top: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    background: var(--accent-sub-color-page);
    vertical-align: middle;
    font-weight: 700;
  }
  .top-overview-outline-feature-table__row--s .top-overview-outline-feature-table__heading{
    padding-top: calc(16 / var(--font-size) * 1rem - 22.4 / 2 / var(--font-size) * 1rem);
    padding-bottom: calc(16 / var(--font-size) * 1rem - 22.4 / 2 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table__heading:first-child{
    border-left: none;
  }
  .top-overview-outline-feature-table__row:first-child .top-overview-outline-feature-table__heading{
    border-top: none;
  }
  .top-overview-outline-feature-table__heading--b{
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color) !important;
  }
  .top-overview-outline-feature-table__heading__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-outline-feature-table__data{
    display: table-cell;
    padding: calc(16 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem);
    border-top: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    background: var(--color-white);
    text-align: center;
  }
  .top-overview-outline-feature-txt {
    line-height: calc(22.4 / 14* 1);
    font-size: calc(14 / var(--font-size)* 1rem);
  }
  .top-overview-outline-feature-table__row--s .top-overview-outline-feature-table__data{
    padding: calc(16 / var(--font-size) * 1rem - 22.4 / 2 / var(--font-size) * 1rem) calc(8 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table__data:first-child{
    border-left: none;
  }
  .top-overview-outline-feature-table__row:first-child .top-overview-outline-feature-table__data{
    border-top: none;
  }
  .top-overview-outline-feature-table__data--b{
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color) !important;
  }
  .top-overview-outline-feature-table-container{
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
  }
  .top-overview-outline-feature-table-container > *{
    width: 100%;
  }
  .top-overview-outline-feature-table-img{
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
  .top-overview-outline-feature-table-img--row{
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: calc(16 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table__row--l {
    height: calc(132 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-container--l .top-overview-outline-feature-table-img{
    justify-content: flex-start;
  }
  .top-overview-outline-feature-table-container--l .top-overview-outline-feature-table-img--row{
    justify-content: center;
  }
  .top-overview-outline-feature-table__data[rowspan] .top-overview-outline-feature-table-img{
    height: calc(72 / var(--font-size) * 1.5rem + 22.4 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table__data[rowspan] .top-overview-outline-feature-table-img--row{
    height: 100%;
  }
  .top-overview-outline-feature-table-img > *{
    width: 100%;
  }
  .top-overview-outline-feature-table-img__label{
    flex-shrink: 0;
    display: inline-block;
    vertical-align: top;
    width: calc(72 / var(--font-size) * 1rem);
    height: calc(72 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-img--row .top-overview-outline-feature-table-img__label{
    min-width: calc(40% - calc(16 / var(--font-size) * 1rem));
  }
  .top-overview-outline-feature-table-img__label img{
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .top-overview-outline-feature-table-img__caption{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink: 0;
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 700;
    min-height:calc(68 / var(--font-size) * 1rem);
    margin-top: calc(12 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-img--row .top-overview-outline-feature-table-img__caption{
    width: 60%;
    flex-grow: 1;
    justify-content: flex-start;
  }
  .top-overview-outline-feature-table-btn{
    flex-shrink: 0;
    margin-top: calc(6 / var(--font-size) * 1rem);
    text-align: center;
  }
  .top-overview-outline-feature-table-btn:first-child{
    margin-top: 0;
  }
  .top-overview-outline-feature-table-btn a{
    display: inline-block;
    vertical-align: top;
    transition: all 0.3s ease;
  }
  .top-overview-outline-feature-table-btn a:hover{
    opacity: 0.7;
  }
  .top-overview-outline-feature-table-btn-body{
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(80 / var(--font-size) * 1rem);
    height: calc(26 / var(--font-size) * 1rem);
    border: calc(1 / var(--font-size) * 1rem) solid var(--main-color-page);
    border-radius: calc(26 / var(--font-size) * 1rem);
    background: var(--main-color-page);
    color: var(--color-white);
    transition: all 0.3s ease;
  }
  .top-overview-outline-feature-table-btn__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(19.2 / 12 * 1);
    font-size: calc(12 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-outline-feature-table-btn__ico{
    display: inline-block;
    vertical-align: top;
    width: calc(14 / var(--font-size) * 1rem);
    height: calc(14 / var(--font-size) * 1rem);
    margin-left: calc(4 / var(--font-size) * 1rem);
    margin-right: calc(4 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-btn__ico svg{
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 100%;
    fill: var(--color-white);
  }
  .top-overview-outline-feature-table-btn__ico:first-child{
    margin-left: calc(-4 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-btn__ico:last-child{
    margin-right: calc(-4 / var(--font-size) * 1rem);
  }
  .top-overview-outline-box{
    margin-top: calc(8 / var(--font-size) * 1rem);
  }
  .top-overview-outline-box:first-child{
    margin-top: 0;
  }
  .top-overview-outline-box__inner{
    padding: calc(16 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
    border-radius: calc(20 / var(--font-size) * 1rem);
    background: var(--sub-color-02);
    overflow: hidden;
  }

  .top-schedule-box-attention{
    /* padding: calc(12 / var(--font-size) * 1rem) calc(20 / var(--font-size) * 1rem); */
    /* border: calc(1 / var(--font-size) * 1rem) solid var(--color-attention_1000);
    border-radius: calc(8 / var(--font-size) * 1rem); */
    margin-top: calc(24 / var(--font-size) * 1rem);
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .top-overview-outline-table__outer.js-scrollable{
    overflow: auto !important;
  }
  .js-scrollable .top-overview-outline-table__inner{
    width: calc(1200 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table__heading{
    padding-left: calc(12 / var(--font-size) * 1rem);
    padding-right: calc(12 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table__data{
    padding-left: calc(12 / var(--font-size) * 1rem);
    padding-right: calc(12 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table--heading-col .top-overview-outline-table__data{
    padding-left: calc(30 / var(--font-size) * 1rem);
    padding-right: calc(30 / var(--font-size) * 1rem);
  }
}

@media all and (max-width: 767px) {
  .top-overview{
    padding-top: calc(46 / var(--font-size) * 1rem);
    padding-bottom: calc(46 / var(--font-size) * 1rem);
    color: var(--color-black-sub);
  }
  .top-overview .c-table--sp-stick > *{
    padding-left: calc(15 / var(--font-size) * 1rem);
    padding-right: calc(15 / var(--font-size) * 1rem);
  }
  .top-overview p a{
    color: var(--main-accent-color);
    text-decoration: underline;
  }
  .top-overview p a:hover{
    text-decoration: none;
  }
  .top-overview__inner{
    max-width: calc(1064 / var(--font-size) * 1rem);
    margin: 0 auto;
  }
  .top-overview-heading{
    padding: 0 calc(15 / var(--font-size) * 1rem);
  }
  .top-overview-heading-sub{
    display: block;
  }
  .top-overview-heading-sub:last-child{
    margin-bottom: 0;
  }
  .top-overview-heading-sub__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-heading__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(42 / 28 * 1);
    font-size: calc(28 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-body{
    padding: 0 calc(30 / var(--font-size) * 1rem);
    margin-top: calc(40 / var(--font-size) * 1rem);
  }
  .top-overview-body:first-child{
    margin-top: 0;
  }
  .top-overview-tab {
    padding: 0 calc(15 / var(--font-size) * 1rem);
    margin-top: calc(40 / var(--font-size) * 1rem);
  }
  .top-overview-tab .c-tab__button .c-tab__btn__inner{
    border-left:0;
    border-right:0;
  }
  .top-overview-tab .c-tab__btn-list{
  }
  .top-overview-tab .c-tab__contents__container {
  }
  .top-overview-tab .top-overview-body{
    padding-left: 0;
    padding-right: 0;
  }
  .top-overview-tab .top-overview-outline-desc{
  }

  .top-overview-tab .c-tab__button .c-tab__btn__inner{
  }

  .top-overview-outline-btn .c-btn.--size-xxxs{
  }

  /** **/
  .top-overview-tab .c-tab__btn.--new-house .c-tab__btn__inner{
    background-color: var(--main-color);
  }
  .top-overview-tab .c-tab__btn.--reform .c-tab__btn__inner{
    background-color: var(--main-accent-color);
  }
  .top-overview-tab .c-tab__contents__container[data-tab-item="new-house"]{
    border-color: var(--main-color);
  }
  .top-overview-tab .c-tab__contents__container[data-tab-item="reform"]{
    border-color: var(--main-accent-color);
  }
  .top-overview-tab .c-tab__contents__container[data-tab-item="reform"] .top-overview-outline-desc__term__label{
    color: var(--main-accent-color) !important;
  }
  .top-overview-tab .c-tab__contents__container[data-tab-item="reform"] .top-overview-outline-desc__term:after{
    border-color:  var(--main-accent-color) !important;
  }
  .top-overview-tab .top-overview-outline-desc:last-child:before{
    content:none;
  }
  .top-overview-tab .c-tab__contents__container[data-tab-item="reform"] .top-overview-outline-table__heading{
    background: var(--main-table-bg-color-reform);
  }
  /** **/

  .top-overview-outline{
    margin-top: calc(64 / var(--font-size) * 1rem);
  }
  .top-overview-outline:first-child{
    margin-top: 0;
  }
  .top-overview-outline-desc{
    margin-top: calc(75 / var(--font-size) * 1rem);
  }
  .top-overview-outline-desc:first-child{
    margin-top: 0;
  }
  .top-overview-outline-desc__term{
    position: relative;
    padding-bottom: calc(14 / var(--font-size)* 1rem + 3 / var(--font-size)* 1rem);
  }
  .top-overview-outline-desc__term:before{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    border-bottom: calc(3 / var(--font-size) * 1rem) solid var(--color-gray_300);
  }
  .top-overview-outline-desc__term:after{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(100 / var(--font-size) * 1rem);
    border-bottom: calc(3 / var(--font-size) * 1rem) solid var(--main-color-page);
  }
  .top-overview-outline-desc__term__label{
    display: inline-block;
    vertical-align: top;
    font-size: calc(20 / var(--font-size) * 1rem);
    font-weight: 700;
    line-height: 1.28;
    color: var(--main-color-page);
  }
  .top-overview-outline-desc__defin{
    margin-top: calc(34 / var(--font-size) * 1rem);
  }
  .top-overview-outline-desc__defin > *:first-child{
  }
  .top-overview-outline-desc__defin:first-child{
    margin-top: 0;
  }
  .top-overview-outline-txt{
    margin-top: calc(11.2 / 14 * 1em);
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table__data .top-overview-outline-txt{
    text-align: center;
  }
  .top-overview-outline-feature-desc__defin .top-overview-outline-txt{
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
  }
  .top-overview-outline-txt:first-child{
    margin-top: 0;
  }
  .top-overview-outline-table__data.--recipients{
    padding-left: calc(41 / var(--font-size) * 1rem);
    padding-right: calc(41 / var(--font-size) * 1rem);
    max-width:calc(105 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table__data.--recipients-02{
    padding-left: calc(41 / var(--font-size) * 1rem);
    padding-right: calc(41 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table__data.--recipients .top-overview-outline-txt,
  .top-overview-outline-table__data.--recipients-02 .top-overview-outline-txt{
    text-align:left;
  }
  .top-overview-outline-desc__defin > .top-overview-outline-txt:first-child{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table + .top-overview-outline-txt,
  .top-overview-outline-feature + .top-overview-outline-txt,
  .top-overview-outline-feature-table + .top-overview-outline-txt{
    margin-top: calc(21 / var(--font-size) * 1rem);
  }
  .top-overview-outline-txt--l{
    margin-top: calc(12.8 / 16 * 1em);
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
  }
  .top-overview-outline-txt--l-sp{
    margin-top: calc(12.8 / 16 * 1em);
    line-height: calc(25.6 / 16 * 1);
    font-size: calc(16 / var(--font-size) * 1rem);
  }
  .top-overview-outline-txt--l:first-child{
    margin-top: 0;
  }
  .top-overview-outline-txt--bold{
    font-weight: 700;
  }
  .top-overview-outline-table-column .top-overview-outline-txt{
    text-align: center;
  }
  .top-overview-outline-txt em{
    text-decoration: underline;
  }
  .top-overview-outline-txt sup{
    white-space: nowrap;
  }
  .top-overview-outline-list{

  }
  .top-overview-outline-list__item{
    margin-top: 0;
    padding-left: 1em;
    text-indent: -1em;
  }
  .top-overview-outline-list__item > *{
    text-indent: 0;
  }
  .top-overview-outline-list__label{
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
  .top-overview-outline-desc-desc{
    position: relative;
    margin-top: calc(26 / var(--font-size) * 1rem);
    padding-top: calc(24 / var(--font-size) * 1rem);
  }
  .top-overview-outline-desc-desc:before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    border-bottom: calc(1 / var(--font-size) * 1rem) solid var(--color-gray_300);
  }
  .top-overview-outline-desc-desc:first-child{
    margin-top: calc(16 / var(--font-size) * 1rem);
    padding-top: 0;
  }
  .top-overview-outline-desc-desc:first-child:before{
    content: none;
  }
  .top-overview-outline-desc-desc__term{
    flex-shrink: 0;
    min-width: calc(16 / var(--font-size) * 10rem);
  }
  .top-overview-outline-desc-desc__term__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-outline-desc-desc__term__label:before{
    content: '・';
  }
  .top-overview-outline-desc-desc__defin{
    margin-top: calc(14 / var(--font-size) * 1rem);
  }
  .top-overview-outline-desc-desc__defin:first-child{
    margin-left: 0;
  }
  .top-overview-outline-note{
    margin-top: calc(16/ var(--font-size) * 1rem);
  }
  .top-overview-outline-note:first-child{
    margin-top: 0;
  }
  .top-overview-outline-table + .top-overview-outline-note,
  .top-overview-outline-feature + .top-overview-outline-note,
  .top-overview-outline-feature-table + .top-overview-outline-note{
    margin-top: calc(13 / var(--font-size) * 1rem);
  }
  .top-overview-outline-note-txt{
    padding-left: 1.5em;
    line-height: calc(19.2 / 12 * 1);
    font-size: calc(12 / var(--font-size) * 1rem);
    text-indent: -1.5em;
  }
  .top-overview-outline-note--num .top-overview-outline-note-txt{
    padding-left: 2em;
    text-indent: -2em;
  }
  .top-overview-outline-note-txt > *{
    text-indent: 0;
  }
  .top-overview-outline-note__label{
    display: inline-block;
    width: 1.5em;
  }
  .top-overview-outline-note--num .top-overview-outline-note__label{
    width: 2em;
  }
  .top-overview-outline-attention{
    margin-top: calc(8 / var(--font-size) * 1rem);
  }
  .top-overview-outline-attention:first-child{
    margin-top: 0;
  }
  .top-overview-outline-table + .top-overview-outline-attention,
  .top-overview-outline-feature + .top-overview-outline-attention,
  .top-overview-outline-feature-table + .top-overview-outline-attention{
    margin-top: calc(21 / var(--font-size) * 1rem);
  }
  .top-overview-outline-attention-txt{
    padding-left: 1.5em;
    line-height: calc(19.2 / 12 * 1);
    font-size: calc(12 / var(--font-size) * 1rem);
    font-weight: 700;
    color: var(--color-attention_1000);
    text-indent: -1.5em;
  }
  .top-overview-outline-attention--num .top-overview-outline-attention-txt{
    padding-left: 2em;
    text-indent: -2em;
  }
  .top-overview-outline-attention-txt > *{
    text-indent: 0;
  }
  .top-overview-outline-attention-txt__label{
    display: inline-block;
    vertical-align: top;
  }
  .top-overview-outline-attention--num .top-overview-outline-attention-txt__label{
    width: 2em;
  }
  .top-overview-outline-table{
    margin-top: calc(27 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table.top-overview-outline-table--stick{
    margin-left: calc(-15 / var(--font-size) * 1rem);
    margin-right: calc(-15 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table.top-overview-outline-table--stick .top-overview-outline-table__outer {
    padding-bottom: calc(5 / var(--font-size) * 1rem);
    padding-left: calc(15 / var(--font-size) * 1rem);
    padding-right: calc(15 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table:first-child{
    margin-top: calc(17 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table__outer{
    overflow: hidden;
  }
  .top-overview-outline-table__inner{
    border: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    border-radius: calc(20 / var(--font-size) * 1rem);
    overflow: hidden;
  }
  .js-scrollable .top-overview-outline-table__inner{
    width: calc(1200 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table-column .top-overview-outline-table__inner{
    height: 100%;
  }
  .top-overview-outline-table-body{
    display: table;
    width: 100%;
  }
  .top-overview-outline-table-column .top-overview-outline-table-body{
    height: 100%;
  }
  .top-overview-outline-table__row{
    display: table-row;
  }
  .top-overview-outline-table--separated .top-overview-outline-table__row{
    border-radius: 0;
    border: none;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
  .top-overview-outline-table__heading{
    display: table-cell;
    padding: calc(16 / var(--font-size) * 1rem) calc(12 / var(--font-size) * 1rem);
    border: calc(1 / var(--font-size) * 1rem) solid var(--color-white);
    background: var(--main-table-bg-color);
    vertical-align: middle;
    text-align: center;
    font-weight: 700;
  }
  .top-overview-outline-table--separated .top-overview-outline-table__heading{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%!important;
    border: none;
  }
  .top-overview-outline-table__row:first-child .top-overview-outline-table__heading{
    border-top: none;
  }
  .top-overview-outline-table__row:last-child .top-overview-outline-table__heading{
    border-bottom: none;
  }
  .top-overview-outline-table__heading:first-child{
    border-left: none;
  }
  .top-overview-outline-table__heading:last-child{
    border-right: none;
  }
  .top-overview-outline-table__heading.u-bg-sub-color-02,
  .top-overview-outline-table__heading.u-bg-sub-color-03{
    border-color: var(--main-border-color);
  }
  .top-overview-outline-table__heading.u-bg-table-head-01-gx{
    border-color: var(--main-border-color);
  }
  .top-overview-outline-table__row--s .top-overview-outline-table__heading{
    padding: calc(16 / var(--font-size) * 1rem - 22.4 / 2 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table__heading--b{
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color) !important;
  }
  .top-overview-outline-table__heading__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 700;
    vertical-align: middle;
  }
  .top-overview-outline-table__data{
    display: table-cell;
    padding: calc(16 / var(--font-size) * 1rem) calc(12 / var(--font-size) * 1rem);
    border: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    background: var(--color-white);
    text-align: left;
  }
  .top-overview-outline-table__row:first-child .top-overview-outline-table__data{
    border-top: none;
  }
  .top-overview-outline-table__row:last-child .top-overview-outline-table__data{
    border-bottom: none;
  }
  .top-overview-outline-table__data:first-child{
    border-left: none;
  }
  .top-overview-outline-table__row:first-child .top-overview-outline-table__data{
    border-top: none;
  }
  .top-overview-outline-table__row:last-child .top-overview-outline-table__data{
    border-bottom: none;
  }
  .top-overview-outline-table__data:first-child{
    border-left: none;
  }
  .top-overview-outline-table__data:last-child{
    border-right: none;
  }
  .top-overview-outline-table-column .top-overview-outline-table__data{
    padding: calc(20 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
    vertical-align: middle;
    text-align: center;
  }
  .top-overview-outline-table--flex .top-overview-outline-table__data{
    vertical-align: middle;
  }
  .top-overview-outline-table--heading-col .top-overview-outline-table__data{
    padding: calc(16 / var(--font-size) * 1rem) calc(12 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table--join .top-overview-outline-table__data{
    padding: calc(16 / var(--font-size) * 1rem) calc(12 / var(--font-size)* 1rem);
  }
  .top-overview-outline-table--join .top-overview-outline-table__data:first-child{
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
  }
  .top-overview-outline-table--join th.top-overview-outline-table__data:first-child {
    border-left: none;
  }
  .top-overview-outline-table__data--b{
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color) !important;
  }
  .top-overview-outline-table--separated .top-overview-outline-table__data{
    padding: 0;
    border: none;
    overflow: hidden;
  }
  .top-overview-outline-table--separated .top-overview-outline-txt {
    padding: calc(15 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table--separated .top-overview-outline-txt {
    padding: calc(15 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table--separated .top-overview-outline-table__data + .top-overview-outline-table__data {
    margin-top: calc(8 / var(--font-size) * 1rem)
  }
  .top-overview-outline-table-column{
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .top-overview-outline-table-column__parts{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
    width: 100%;
  }
  .top-overview-outline-table-column__parts--center{
    flex-shrink: 0;
    width: 100%;
    margin-top: calc(8 / var(--font-size) * 1rem);
    margin-bottom: calc(8 / var(--font-size) * 1rem);
  }
  .top-overview-outline-table-column__parts > *{
    width: 100%;
  }
  .top-overview-outline-feature{
    margin-top: calc(27 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature:first-child{
    margin-top: 0;
  }
  .top-overview-outline-feature__inner{
    padding: calc(15 / var(--font-size) * 1rem) calc(20 / var(--font-size) * 1rem);
    border-radius: calc(20 / var(--font-size) * 1rem);
    background: var(--sub-color-03);
    overflow: hidden;
  }
  .top-overview-outline-feature__inner:not(:has(.c-btn)){
    position: relative;
    background: var(--color-white);
  }
  .top-overview-outline-feature__inner:not(:has(.c-btn))::before{
    content: "";
    position: absolute;
    inset: 0;
    border: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    border-radius: calc(20 / var(--font-size) * 1rem);
    pointer-events: none;
  }
  .top-overview-outline-feature-desc{
    margin-top: calc(27 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-desc:first-child{
    margin-top: 0;
  }
  .top-overview-outline-feature-desc__term{

  }
  .top-overview-outline-feature-desc__term__label{
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding-left: calc(24 / 16 * 1em);
    line-height: calc(25.6 / 16 * 1);
    font-size: calc(16 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-outline-feature-desc__term__label:before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: calc(16 / 16 * 1em);
    height: calc(16 / 16 * 1em);
    margin-top: calc(25.6 / 2 / 16 * 1em - 16 / 2 / 16 * 1em);
    margin-bottom: calc(25.6 / 2 / 16 * 1em - 16 / 2 / 16 * 1em);
    border-radius: calc(16 / 16 * 1em);
    background: var(--main-color-page);
  }
  .top-overview-outline-feature-desc--color > .top-overview-outline-feature-desc__term .top-overview-outline-feature-desc__term__label{
    padding-left: 0;
    color: var(--main-color-page);
  }
  .top-overview-outline-feature-desc--color > .top-overview-outline-feature-desc__term .top-overview-outline-feature-desc__term__label:before{
    content: none;
  }
  .top-overview-outline-feature-desc__defin{
    margin-top: calc(12 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-desc__defin:first-child{
    margin-top: 0;
  }
  .top-overview-outline-feature-table{
    margin-top: calc(27 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table.top-overview-outline-feature-table--stick{
    margin-left: calc(-15 / var(--font-size) * 1rem);
    margin-right: calc(-15 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table.top-overview-outline-feature-table--stick .top-overview-outline-feature-table__outer {
    padding-left: calc(15 / var(--font-size) * 1rem);
    padding-right: calc(15 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table:first-child{
    margin-top: calc(17 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table__outer{
    overflow: hidden;
  }
  .top-overview-outline-feature-table__inner{
    border: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    border-radius: calc(10 / var(--font-size) * 1rem);
    overflow: hidden;
  }
  .js-scrollable .top-overview-outline-feature-table__inner{
    width: calc(800 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-body{
    display: table;
    width: 100%;
  }
  .top-overview-outline-feature-table__row{
    display: table-row;
  }
  .top-overview-outline-feature-table__heading{
    display: table-cell;
    padding: calc(16 / var(--font-size) * 1rem) calc(8 / var(--font-size) * 1rem);
    border-top: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    background: var(--accent-sub-color-page);
    vertical-align: middle;
    text-align: center;
    font-weight: 700;
  }
  .top-overview-outline-feature-table__row--s .top-overview-outline-feature-table__heading{
    padding-top: calc(16 / var(--font-size) * 1rem - 22.4 / 2 / var(--font-size) * 1rem);
    padding-bottom: calc(16 / var(--font-size) * 1rem - 22.4 / 2 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table__heading:first-child{
    border-left: none;
  }
  .top-overview-outline-feature-table__row:first-child .top-overview-outline-feature-table__heading{
    border-top: none;
  }
  .top-overview-outline-feature-table__heading--b{
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color) !important;
  }
  .top-overview-outline-feature-table__heading__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 700;
    vertical-align: middle;
  }
  .top-overview-outline-feature-table__data{
    display: table-cell;
    padding: calc(26 / var(--font-size) * 1rem) calc(26 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem) ;
    border-top: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color);
    background: var(--color-white);
    vertical-align: bottom;
    text-align: center;
  }
  .top-overview-outline-feature-table__data[rowspan]{
    vertical-align: middle;
  }
  .top-overview-outline-feature-table__data:first-child{
    border-left: none;
  }
  .top-overview-outline-feature-table__row:first-child .top-overview-outline-feature-table__data{
    border-top: none;
  }
  .top-overview-outline-feature-table__data--b{
    border-left: calc(1 / var(--font-size) * 1rem) solid var(--main-border-color) !important;
  }
  .top-overview-outline-feature-table-container{
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
  }
  .top-overview-outline-feature-table-container > *{
    width: 100%;
  }
  .top-overview-outline-feature-table-img{
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
  .top-overview-outline-feature-table-img--row{
    flex-direction: row;
    column-gap: calc(16 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-container--l .top-overview-outline-feature-table-img{
    justify-content: flex-start;
    width: calc(213 / var(--font-size) * 1rem + 14 / var(--font-size) * 4rem);
    height: calc(72 / var(--font-size) * 1rem + 22.4 * 3 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-container--l .top-overview-outline-feature-table-img--row{
    justify-content: center;
  }
  .top-overview-outline-feature-table__data[rowspan] .top-overview-outline-feature-table-img{
    height: calc(72 / var(--font-size) * 1.5rem + 22.4 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-img > *{
    width: 100%;
  }
  .top-overview-outline-feature-table-img__label{
    flex-shrink: 0;
    display: inline-block;
    vertical-align: top;
    width: calc(72 / var(--font-size) * 1rem);
    height: calc(72 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-img--row .top-overview-outline-feature-table-img__label{
    min-width: calc(40% - calc(16 / var(--font-size) * 1rem));
  }
  .top-overview-outline-feature-table-img__label img{
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .top-overview-outline-feature-table-img__caption{
    display: block;
    flex-shrink: 0;
    line-height: calc(22.4 / 14 * 1);
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: 700;
    margin-top: calc(12 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-img--row .top-overview-outline-feature-table-img__caption{
    display: inline-block;
    width: fit-content;
  }
  .top-overview-outline-feature-table-btn{
    flex-shrink: 0;
    margin-top: calc(20 / var(--font-size) * 1rem);
    text-align: center;
  }
  .top-overview-outline-feature-table-btn:first-child{
    margin-top: 0;
  }
  .top-overview-outline-feature-table-btn a{
    display: inline-block;
    vertical-align: top;
    transition: all 0.3s ease;
  }
  .top-overview-outline-feature-table-btn a:hover{
    opacity: 0.7;
  }
  .top-overview-outline-feature-table-btn-body{
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(80 / var(--font-size) * 1rem);
    height: calc(26 / var(--font-size) * 1rem);
    border: calc(1 / var(--font-size) * 1rem) solid var(--main-color-page);
    border-radius: calc(26 / var(--font-size) * 1rem);
    background: var(--main-color-page);
    color: var(--color-white);
    transition: all 0.3s ease;
  }
  .top-overview-outline-feature-table-btn__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(19.2 / 12 * 1);
    font-size: calc(12 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-overview-outline-feature-table-btn__ico{
    display: inline-block;
    vertical-align: top;
    width: calc(14 / var(--font-size) * 1rem);
    height: calc(14 / var(--font-size) * 1rem);
    margin-left: calc(4 / var(--font-size) * 1rem);
    margin-right: calc(4 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-btn__ico svg{
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 100%;
    fill: var(--color-white);
  }
  .top-overview-outline-feature-table-btn__ico:first-child{
    margin-left: calc(-4 / var(--font-size) * 1rem);
  }
  .top-overview-outline-feature-table-btn__ico:last-child{
    margin-right: calc(-4 / var(--font-size) * 1rem);
    margin-top: calc(1 / var(--font-size) * 1rem);
  }
  .top-overview-outline-box{
    margin-top: calc(8 / var(--font-size) * 1rem);
  }
  .top-overview-outline-box:first-child{
    margin-top: 0;
  }
  .top-overview-outline-box__inner{
    padding: calc(16 / var(--font-size) * 1rem) calc(18 / var(--font-size) * 1rem);
    border-radius: calc(20 / var(--font-size) * 1rem);
    background: var(--sub-color-02);
    overflow: hidden;
  }
  .top-overview-outline-box + .top-overview-outline-txt--l{
    margin-top: calc(20 / var(--font-size) * 1rem);
  }

  .top-schedule-box-attention{
    margin-top: calc(24 / var(--font-size) * 1rem);
  }
}

/* --------------------------------------------------------------------------
  TOP SECTION
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
  .top-section{
    padding-top: calc(80 / var(--font-size) * 1rem);
    padding-bottom: calc(100 / var(--font-size) * 1rem);
    color: var(--text-color);
  }
  .top-section p a{
    color: var(--main-color-page);
    text-decoration: underline;
  }
  .top-overview p a:hover{
    text-decoration: none;
  }
  .top-section__inner{
    padding: 0 calc(146 / var(--font-size) * 1rem);
  }
  .top-section__inner + .top-section__inner{
    margin-top: calc(68 / var(--font-size) * 1rem);
  }
  .top-section-heading{

  }
  .top-section-heading-sub{
    display: block;
    margin-bottom: calc(4 / var(--font-size) * 1rem);
  }
  .top-section-heading-sub:last-child{
    margin-bottom: 0;
  }
  .top-section-heading-sub__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(25.6 / 16 * 1);
    font-size: calc(16 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-section-heading__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(47.6 / 34 * 1);
    font-size: calc(34 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-section-body{
    margin-top: calc(40 / var(--font-size) * 1rem);
  }
  .top-section-body:first-child{
    margin-top: 0;
  }
}

@media (max-width: 767px) {
  .top-section{
    padding-top: calc(48 / var(--font-size) * 1rem);
    padding-bottom: calc(43 / var(--font-size) * 1rem);
    color: var(--color-black-sub);
  }
  .top-section p a{
    color: var(--main-color-page);
    text-decoration: underline;
  }
  .top-overview p a:hover{
    text-decoration: none;
  }
  .top-section__inner{
    padding: 0 calc(15 / var(--font-size) * 1rem);
  }
  .top-section__inner + .top-section__inner{
    margin-top: calc(48 / var(--font-size) * 1rem);
  }
  .top-section-heading{

  }
  .top-section-heading-sub{
    display: block;
    margin-bottom: calc(4 / var(--font-size) * 1rem);
  }
  .top-section-heading-sub:last-child{
    margin-bottom: 0;
  }
  .top-section-heading-sub__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(25.6 / 16 * 1);
    font-size: calc(16 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-section-heading__label{
    display: inline-block;
    vertical-align: top;
    line-height: calc(47.6 / 34 * 1);
    font-size: calc(34 / var(--font-size) * 1rem);
    font-weight: 700;
  }
  .top-section-body{
    margin-top: calc(24 / var(--font-size) * 1rem);
  }
  .top-section-body:first-child{
    margin-top: 0;
  }
}

/* --------------------------------------------------------------------------
  TOP ATTENTION
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
  .l-frame-main main {
    position: relative;
  }
  .top-attention{
    position: absolute;
    width: 100%;
    padding: calc(8 / var(--font-size) * 1rem) 0;
    background: #FFEEEE;
    border-bottom: calc(1 / var(--font-size) * 1rem) solid var(--color-attention_1000);
    z-index: 2;
  }
  .top-attention_inner{
    padding: 0 calc(20 / var(--font-size) * 1rem);
  }
  .l-frame-main:first-child .top-attention_inner{
    max-width: calc(1264 / var(--font-size) * 1rem);
    margin: 0 auto;
  }
  .top-attention-container{

  }
  .top-attention-content{

  }
  .top-attention-desc{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .top-attention-desc__term{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-shrink: 0;
  }
  .top-attention-desc__term__label{
    display: inline-block;
    vertical-align: top;
    margin-left: calc(4 / var(--font-size) * 1rem);
    line-height: calc(22.4 / 17 * 1);
    font-size: calc(17 / var(--font-size) * 1rem);
    font-weight: 700;
    color: var(--color-attention_1000);
  }
}

@media (max-width: 767px) {
  .l-frame-main main {
    position: relative;
  }
  .top-attention{
    position: absolute;
    width: 100%;
    padding: calc(8 / var(--font-size) * 1rem) 0;
    background: #FFEEEE;
    border-bottom: calc(1 / var(--font-size) * 1rem) solid var(--color-attention_1000);
    z-index: 2;
  }
  .top-attention_inner{
    padding: 0 calc(20 / var(--font-size) * 1rem);
  }
  .l-frame-main:first-child .top-attention_inner{
    margin: 0 auto;
  }
  .top-attention-container{

  }
  .top-attention-content{

  }
  .top-attention-desc{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .top-attention-desc__term{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-shrink: 0;
  }
  .top-attention-desc__term__label{
    display: inline-block;
    vertical-align: top;
    margin-left: calc(4 / var(--font-size) * 1rem);
    line-height: calc(22.4 / 17 * 1);
    font-size: calc(12 / var(--font-size) * 1rem);
    font-weight: 700;
    color: var(--color-attention_1000);
  }
}