@charset "UTF-8";

:root {
  --red: #be113c;
  --green: #0a6a60;
  --cream: #ffe6c2;
  --purple: #3a359f;
  --orange: #ed6d20;
  --brown: #5c4321;
  --commonFont: #1c1c1c;
  --font30: clamp(0.8rem, 4vw, 1.875rem);
  --font33: clamp(0.88rem, 4.4vw, 2.063rem);
  --font35: clamp(0.933rem, 4.67vw, 2.188rem);
  --font37: clamp(0.987rem, 4.93vw, 2.313rem);
  --font39: clamp(1.04rem, 5.2vw, 2.438rem);
  --font45: clamp(1.2rem, 6vw, 2.813rem);
  --font48: clamp(1.28rem, 6.4vw, 3rem);
  --font50: clamp(1.334rem, 0.001rem + 6.67vw, 3.125rem);
  --font55: clamp(1.467rem, 7.33vw, 3.438rem);
}

/* 共通 */

html {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  overflow-x: hidden;
}

h1,h2,h3,h4,h5{
  font-weight: 500;
}

body {
  overflow-x: hidden;
  margin: 0 auto;
}

ul {
  margin: 0;
  padding: 0;
}

li {
  list-style: none;
}

aside {
  display: none;

  a {
    display: none;
  }
}

main{
  width: 100%;
}

header {
  display: none;
}

section,
.relative {
  position: relative;
}

section {
  text-align: center;
}

.contents {
  color: var(--commonFont);
  font-size: clamp(0.772rem, -0.001rem + 3.87vw, 1.813rem);
}

.pc_wrapper {
  overflow-x: hidden;
}

.wrapper {
  padding: 0 clamp(0.625rem, 0.16rem + 2.33vw, 1.25rem);
}

.red {
  color: var(--red);
}
.cream {
  color: var(--cream);
}
.green {
  color: var(--green);
}
.purple {
  color: var(--purple);
}
.orange {
  color: var(--orange)
}

.white-line {
  background-image: linear-gradient(0deg, transparent 0.1em, #ffffff 0.1em, #ffffff 0.5em, transparent 0.5em);
}

.space-reduce {
  letter-spacing: -40%;
}

.mv {
  line-height: 0;
  .note {
    position: absolute;
    top: 35.3%;
    left: 2.5%;
    width: clamp(3.813rem, -0.001rem + 19.07vw, 8.938rem);
    height: clamp(3.375rem, 0.073rem + 16.51vw, 7.813rem);
  }
  .pen {
    position: absolute;
    top: 53.5%;
    right: 5.5%;
    width: clamp(2.75rem, 0.006rem + 13.72vw, 6.438rem);
    height: clamp(4.313rem, 0.126rem + 20.93vw, 9.938rem);
  }
  .webcatalog {
    position: absolute;
    top: 36%;
    left: 50%;
    transform: translateX(-50%);
    width: clamp(11.063rem, 0.086rem + 54.88vw, 25.813rem);
    height: clamp(2.938rem, 0.054rem + 14.42vw, 6.813rem);
  }
  .kiso {
    position: absolute;
    top: 53%;
    left: 50%;
    transform: translateX(-50%);
    width: clamp(12.875rem, 0.038rem + 64.19vw, 30.125rem);
    height: clamp(3.125rem, 0.009rem + 15.58vw, 7.313rem);
  }
  .mv_num {
    position: absolute;
    top: 14%;
    right: 3%;
    width: clamp(12.5rem, 0.081rem + 62.09vw, 29.188rem);
    height: clamp(4.313rem, 0.033rem + 21.4vw, 10.063rem);
  }
  .logo{
    position: absolute;
    width: 40%;
    height: 12%;
    background-color: #fff;
    border-radius: 0 0 30px 0;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;

    a{
      display: inline-block;
      width: 81.3%;
      img {
        display: block;
        width: 100%;
        height: auto;
      }
    }
  }
}

/* chaptertwo */

.link-contents{
  background-image: linear-gradient(#ffe8ee 1px, transparent 1px), linear-gradient(90deg, #ffe8ee 1px, transparent 1px);
  background-size: 0.79em 0.79em;
  background-color: #fff0f4;
  padding: 2.6em 0 3.1em;

  h2 {
    line-height: 1.5;
    font-size: var(--font39);
    margin: 0 auto;
    padding-bottom: 1.8em;
  }

  ul {
    li {
      margin-bottom: 7px;
    }
  }
}

.economic {
  background-image: radial-gradient(#ffc6d3 2px, transparent 2px), radial-gradient(#ffc6d3 2px, transparent 2px);
  background-size: 16px 16px;
  background-position: 0 0, 7.5px 7.5px;
  background-color: #ffd9e1;
  padding-top: clamp(1.75rem, -0.064rem + 9.07vw, 4.188rem);
  padding-bottom: clamp(3.375rem, -0.02rem + 16.98vw, 7.938rem);

  h2 {
    margin: 0;
    font-size: var(--font45);
    line-height: 1.3;
  }
  h2::before {
    position: absolute;
    content: "";
    display: block;
    background-image: url(../img/homesolar.png);
    background-size: cover;
    top: 18%;
    left: 4%;
    width: clamp(2.813rem, 0.022rem + 13.95vw, 6.563rem);
    height: clamp(1.875rem, 0.061rem + 9.07vw, 4.313rem);
  }
  h2::after {
    position: absolute;
    content: "";
    display: block;
    background-image: url(../img/chaptertwo/calculator.png);
    background-size: cover;
    top: 36%;
    right: 5%;
    width: clamp(2.625rem, 0.067rem + 12.79vw, 6.063rem);
    height: clamp(3.25rem, 0.087rem + 15.81vw, 7.5rem);
  }

  h3 {
    font-size: var(--font37);
    margin-top: 1.91em;

    .red {
      font-size: var(--font48);
    }

    .indent-reduce {
      display: inline-block;
      text-indent: -15%;
    }

    .space-reduce-strong {
      letter-spacing: -90%;
    }
  }

  .economical {
    background-color: #fff;
    border-radius: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem);
    width: 90%;
    margin: 0 auto;
    margin-top: clamp(0.563rem, -0.042rem + 3.02vw, 1.375rem);
    padding: clamp(0.906rem, -0.07rem + 4.88vw, 2.219rem) clamp(1.25rem, 0.087rem + 5.81vw, 2.813rem) clamp(1.063rem, -0.007rem + 5.35vw, 2.5rem);
    box-shadow: clamp(0.188rem, 0.048rem + 0.7vw, 0.375rem) clamp(0.188rem, 0.048rem + 0.7vw, 0.375rem) 0px 0px #f89fb4;

    h4 {
      margin: 0 auto;
      font-size: var(--font35);
      border-bottom: 2px dotted var(--commonFont);
      padding-top: 0;
      padding-bottom: 0.5em;
      line-height: 1.2;
    }

    p {
      font-size: clamp(0.72rem, 3.6vw, 1.688rem);
      margin-bottom: 0.69em;
      text-align: left;
    }

    figure {
      margin: 0 auto;
    }
  }
    .first-sentence::before{
      position: absolute;
      content: "";
      display: block;
      background-image: url(../img/chapterone/pouch.png);
      background-size: cover;
      top: -9.5%;
      right: 0.5%;
      transform: scale(0.8);
      width: clamp(2.875rem, 0.038rem + 14.19vw, 6.688rem);
      height: clamp(2.875rem, -0.009rem + 14.42vw, 6.75rem);
    }
    .second-sentence::before{
      position: absolute;
      content: "";
      display: block;
      background-image: url(../img/chapterone/coin.png);
      background-size: cover;
      top: -3%;
      left: -4.5%;
      transform: scale(0.8);
      width: clamp(2.5rem, 0.035rem + 12.33vw, 5.813rem);
      height: clamp(3.063rem, 0.132rem + 14.65vw, 7rem);
    }
    .third-sentence::before{
      position: absolute;
      content: "";
      display: block;
      background-image: url(../img/chaptertwo/calculator.png);
      background-size: cover;
      top: 0%;
      right: 4%;
      width: clamp(2.625rem, 0.067rem + 12.79vw, 6.063rem);
      height: clamp(3.25rem, 0.087rem + 15.81vw, 7.5rem);
    }
}

.simulation {
  background-image: radial-gradient(#b3f1ec 2px, transparent 2px), radial-gradient(#b3f1ec 2px, transparent 2px);
  background-size: 16px 16px;
  background-position: 0 0, 7.5px 7.5px;
  background-color: #ccf6f2;
  padding-top: clamp(1.438rem, -0.097rem + 7.67vw, 3.5rem);
  padding-bottom: clamp(2.75rem, 0.006rem + 13.72vw, 6.438rem);

  .open {
    display: inline-block;
    line-height: 1;
    margin: 0 auto;
    font-size: var(--font37);
  }
  .open::before{
    position: absolute;
    content: "";
    top: 0%;
    left: -5%;
    width: 2px;
    height: 100%;
    border-left: 2px solid;
    transform: rotate(330deg);
  }
  .open::after {
    position: absolute;
    content: "";
    top: 10%;
    right: -6%;
    width: 2px;
    height: 100%;
    border-left: 2px solid;
    transform: rotate(30deg);
  }

  h2 {
    line-height: 1;
    font-size: var(--font48);
    margin: clamp(0.625rem, 0.02rem + 3.02vw, 1.438rem) auto clamp(0.938rem, -0.132rem + 5.35vw, 2.375rem);
      .simu-small {
        font-size: clamp(0.966rem, 4.83vw, 2.264rem);
    }
  }

  .data-balloon {
    position: relative;
    display: inline-block;
    margin: 0 auto;
    line-height: 1;
    background-color: #0a6a60;
    border-radius: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem);
    font-size: clamp(0.747rem, 3.73vw, 1.75rem);
    color: #fff;
    padding: 0.32em 1.5em;
    z-index: 1;
  }

  .data-balloon::before {
    position: absolute;
    content: "";
    display: block;
    width: clamp(0.774rem, 0.001rem + 3.87vw, 1.813rem);
    height: clamp(0.693rem, 3.47vw, 1.625rem);
    bottom: -25%;
    left: 50%;
    transform: translateX(-50%);
    background: #0a6a60;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    z-index: -1;
  }

  .case {
    font-size: var(--font30);
    line-height: 1.5;
    margin-top: clamp(0.688rem, -0.057rem + 3.72vw, 1.688rem);
  }

  .not-solar {
    width: 100%;
    background-color: #fff;
    border-radius: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem);

    h4 {
      color: #fff;
      background-color: #646464;
      font-size: clamp(0.72rem, 3.6vw, 1.688rem);
      line-height: 1;
      border-radius: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem) clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem) 0 0;
      padding-top: 0.59em;
      padding-bottom: 0.48em;
      margin: 0 auto;
    }

    .not-solar__flex {
      display: flex;
      line-height: 1;
      padding-top: clamp(0.875rem, 0.131rem + 3.72vw, 1.875rem);
      padding-bottom: clamp(0.75rem, 0.052rem + 3.49vw, 1.688rem);

      .amount {
        width: 54%;
        text-align: right;

        dl {
          display: flex;
          justify-content: end;
          align-items: end;
          margin: 0 auto;

          dt {
            text-align: right;
            font-size: clamp(0.587rem, 2.93vw, 1.375rem);
            .dt-big {
              font-size: var(--font30);
            }
          }
          dd {
            margin: 0;
            margin-left: 0.4em;
            font-size: clamp(0.93rem, 4.65vw, 2.179rem);
            .amount__num {
              font-size: clamp(1.859rem, 9.3vw, 4.358rem);
            }
          }
        }
        .bg-gray {
          display: inline-block;
          background-color: #e5e5e5;
          border-radius: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem) ;
          font-size: clamp(0.613rem, 3.07vw, 1.438rem);
          padding: 0.318em 2em;
          margin: 0 auto;
          margin-top: 0.6em;
        }
      }
      .impression {
        width: 46%;
        text-align: left;

        p {
          position: relative;
          display: inline-block;
          line-height: 1.3;
          background-color: #e5e5e5;
          border-radius: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem) ;
          font-size: clamp(0.587rem, 2.93vw, 1.375rem);
          padding: 1em 1em 0.8em;
          margin: 0 auto;
          margin-left: clamp(0.75rem, 0.006rem + 3.72vw, 1.75rem);
        }
        p::before {
          position: absolute;
          content: "";
          display: block;
          width: clamp(0.774rem, 0.001rem + 3.87vw, 1.813rem);
          height: clamp(0.693rem, 3.47vw, 1.625rem);
          top: 50%;
          left: -5%;
          transform: translateY(-50%);
          background: #e5e5e5;
          clip-path: polygon(100% 0, 0 50%, 100% 100%);
        }
      }
    }
  }

  .solar-installation {
    display: flex;
    justify-content: space-between;
    margin-top: 15px;

    .installation__wrapper {
      padding: 0 6%;
    }

    h4 {
      font-size: clamp(0.72rem, 3.6vw, 1.688rem);
      margin: 0 auto;
      padding-top: 0.59em;
      padding-bottom: 0.48em;
      line-height: 1;
      border-radius: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem) clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem) 0 0;
      color: #fff;
    }

    .yearly{
      line-height: 1;
      margin: 0 auto;
      margin-top: clamp(0.75rem, -0.041rem + 3.95vw, 1.813rem);
      font-size: var(--font30);
    }

    .amount__dis {
      line-height: 1;
      margin: 0 auto;
      font-size: clamp(0.93rem, 4.65vw, 2.179rem);

      .amount__num {
        font-size: clamp(1.859rem, 9.3vw, 4.358rem);
      }
    }

    .bg-green {
      background-color: #a5dad4;
    }

    .bg-pink {
      background-color: #fdd1dc;
    }

    .month-cost {
      margin: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem) auto clamp(0.75rem, 0.006rem + 3.72vw, 1.75rem);
      border-radius: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem);
      font-size: clamp(0.613rem, 3.07vw, 1.438rem);
      padding: 0.27em 0;
    }

    .installation__impression {
      position: relative;
      display: flex;
      justify-content: center;
      align-items: center;
      margin: 0 auto;
      border-radius: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem);
      font-size: clamp(0.587rem, 2.93vw, 1.375rem);
      margin-bottom: 1.18em;
      height: clamp(3.754rem, 0.004rem + 18.75vw, 8.793rem);
    }
    .installation__impression::before {
      position: absolute;
      content: "";
      display: block;
      clip-path: polygon(0 100%, 50% 0, 100% 100%);
      background-color: #a5dad4;
      top: -8.5%;
      left: 50%;
      transform: translateX(-50%);
      width: clamp(0.774rem, 0.001rem + 3.87vw, 1.813rem);
      height: clamp(0.481rem, 0.001rem + 2.4vw, 1.125rem);
    }

    .cut {
      width: 49%;
      background-color: #fff;
      border-radius: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem);

      h4 {
        background-color: #2d9388;
      }
    }

    .selling-electricity {
      width: 49%;
      background-color: #fff;
      border-radius: clamp(0.5rem, -0.058rem + 2.79vw, 1.25rem);

      h4 {
        background-color: #d22853;
      }

      .installation__impression::before {
        background-color: #fdd1dc;
      }
    }
  }
}

.reviews {
  background-color: #fff2c9;
  padding-top: clamp(2.5rem, 0.267rem + 11.16vw, 5.5rem);
  padding-bottom: clamp(2.5rem, 0.267rem + 11.16vw, 5.5rem);

  .heading-balloon {
    display: inline-block;
    background-color: #fff;
    line-height: 1;
    margin: 0 auto;
    margin-bottom: 0.42em;
    padding: 0.43em 1.41em;
    font-size: var(--font35);
    border-radius: clamp(0.853rem, 0.093rem + 3.8vw, 1.875rem);
  }

  .heading-balloon::after {
    position: absolute;
    content: "";
    display: block;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    background-color: #fff;
    bottom: -20.5%;
    left: 50%;
    transform: translateX(-50%);
    width: clamp(0.774rem, 0.001rem + 3.87vw, 1.813rem);
    height: clamp(0.481rem, 0.001rem + 2.4vw, 1.125rem);
  }

  h2 {
    margin: 0 auto 0.5em;
    font-size: clamp(1.68rem, 8.4vw, 3.938rem);
    line-height: 1.3;
    letter-spacing: -1px;

    .heading-small {
      font-size: clamp(1.414rem, 0.001rem + 7.07vw, 3.313rem);
    }
  }
  h2::before {
      position: absolute;
      content: "";
      display: block;
      background-image: url(../img/chaptertwo/reviews_human_l.png);
      background-size: cover;
      top: -43%;
      left: 6%;
      width: clamp(1.75rem, -0.343rem + 10.47vw, 4.563rem);
      height: clamp(3.563rem, -0.158rem + 18.6vw, 8.563rem);
  }
  h2::after {
      position: absolute;
      content: "";
      display: block;
      background-image: url(../img/chaptertwo/reviews_human_r.png);
      background-size: cover;
      top: -49%;
      right: 6%;
      width: clamp(1.688rem, -0.266rem + 9.77vw, 4.313rem);
      height: clamp(3.688rem, -0.266rem + 19.77vw, 9rem);
  }

  .balloon {
    position: relative;
    width: clamp(14.188rem, 0.094rem + 70.47vw, 33.125rem);
    height: clamp(14.188rem, 0.094rem + 70.47vw, 33.125rem);
    background-image: url(../img/chaptertwo/balloon.png);
    background-size: cover;
    margin: 0 auto;
    line-height: 1;
    padding: clamp(2rem, 0.233rem + 8.84vw, 4.375rem) clamp(2.313rem, -0.153rem + 12.33vw, 5.625rem) clamp(2.563rem, 0.004rem + 12.79vw, 6rem) clamp(2.063rem, 0.063rem + 10vw, 4.75rem);
    z-index: 1;

    h3 {
      line-height: 1.5;
      font-size: clamp(1.014rem, 0.001rem + 5.07vw, 2.375rem);
      margin: 0 auto;
      padding-bottom: 0.2em;
      border-bottom: 2px dotted;
    }
    p {
      line-height: 1.5;
      font-size: clamp(0.625rem, 0.006rem + 3.09vw, 1.456rem);
      margin: 1em auto;
    }
    .customer {
      line-height: 1;
      font-size: clamp(0.613rem, 3.07vw, 1.438rem);
    }
  }
  .first-balloon {
    z-index: 3;
  }
  .second-balloon {
    z-index: 2;
  }
  .third-balloon {
    z-index: 1;
  }
  .first-balloon .balloon,
  .third-balloon .balloon {
    margin-left: 0;
  }

  .second-balloon .balloon{
    margin-right: 0;
    padding-top: clamp(2.375rem, -0.044rem + 12.09vw, 5.625rem);
  }
  .second-balloon .balloon,
  .third-balloon .balloon {
    margin-top: -5%;
  }
  .third-balloon .balloon {
    padding-top: clamp(2.625rem, 0.113rem + 12.56vw, 6rem);
  }
  .first-balloon::before {
      position: absolute;
      content: "";
      display: block;
      background-image: url(../img/chaptertwo/balloon1_human.png);
      background-size: cover;
      top: 0%;
      right: 5%;
      width: clamp(10.063rem, 0.063rem + 50vw, 23.5rem);
      height: clamp(14.375rem, 0.096rem + 71.4vw, 33.563rem);
    }
    .second-balloon::before {
      position: absolute;
      content: "";
      display: block;
      background-image: url(../img/chaptertwo/balloon2_human.png);
      background-size: cover;
      top: -15%;
      left: -3%;
      width: clamp(9.5rem, 0.012rem + 47.44vw, 22.25rem);
      height: clamp(16.375rem, 0.142rem + 81.16vw, 38.188rem);
    }
    .third-balloon::before {
      position: absolute;
      content: "";
      display: block;
      background-image: url(../img/chaptertwo/balloon3_human.png);
      background-size: cover;
      top: -14%;
      right: 1%;
      width: clamp(5.188rem, 0.071rem + 25.58vw, 12.063rem);
      height: clamp(17.313rem, 0.057rem + 86.28vw, 40.5rem);
    }
}

.summary {
  background-image: linear-gradient(#eaeaea 1px, transparent 1px), linear-gradient(90deg, #eaeaea 1px, transparent 1px);
  background-size: 0.79em 0.79em;
  background-color: rgb(243, 243, 243, 0.9);
  padding-top: clamp(2.188rem, 0.094rem + 10.47vw, 5rem);

  h2 {
    font-size: var(--font50);
    line-height: 1;
    margin: 0 auto;
  }

  h3 {
    width: 76%;
    font-size: var(--font33);
    margin: 1em auto 0.8em;
    border-bottom: 2px dotted #909090;
    padding-bottom: 0.2em;
  }

  p {
    text-align: left;
    font-size: clamp(0.719rem, -0.049rem + 3.84vw, 1.75rem);
    margin-bottom: 1.4em;
  }

  .summary__item {
    display: flex;
    justify-content: space-evenly;
    align-items: end;
    line-height: 1;
    padding-bottom: clamp(1.375rem, -0.02rem + 6.98vw, 3.25rem);
    border-bottom: double;
  }

  .pagination{
    display: flex;
    justify-content: space-between;
    line-height: 1;
    padding-top: clamp(0.938rem, -0.086rem + 5.12vw, 2.313rem);
    padding-bottom: clamp(1.125rem, -0.038rem + 5.81vw, 2.688rem);

    >div {
      width: 48%;

      a {
        position: relative;
        display: block;
        text-decoration: none;
        color: inherit;
        border: 1px solid;
        padding: 0.5em 0;
        border-radius: 38px;
        transition: 0.3s;
      }
      a:hover {
        box-shadow: 0 0;
        transform: translateY(3px);
      }
    }

    .back a {
      background-color: #fff5a0;
      box-shadow: 5px 5px 0px 0px rgba(149, 143, 93, 1);
    }

    .back a::after {
      position: absolute;
      content: "";
      display: block;
      clip-path: polygon(100% 100%, 0% 50%, 100% 0%);;
      background-color: var(--commonFont);
      top: 50%;
      left: 8%;
      transform: translateY(-50%);
      width: clamp(0.625rem, 0.16rem + 2.33vw, 1.25rem);
      height: clamp(0.625rem, 0.16rem + 2.33vw, 1.25rem);
    }
    .next a{
      background-color: #bec0ff;
      box-shadow: 5px 5px 0px 0px rgba(121, 122, 164, 1);
    }
    .next a::after {
      position: absolute;
      content: "";
      display: block;
      clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
      background-color: var(--commonFont);
      top: 50%;
      right: 8%;
      transform: translateY(-50%);
      width: clamp(0.625rem, 0.16rem + 2.33vw, 1.25rem);
      height: clamp(0.625rem, 0.16rem + 2.33vw, 1.25rem);
    }
  }
}

.summary::before {
  position: absolute;
  content: "";
  display: block;
  background-image: url(../img/note.png);
  background-size: cover;
  top: 8.4%;
  left: 1.6%;
  width: clamp(3.813rem, -0.001rem + 19.07vw, 8.938rem);
  height: clamp(3.375rem, 0.073rem + 16.51vw, 7.813rem);
  transform: scale(0.85) rotate(6.5deg);
}

.summary::after {
  position: absolute;
  content: "";
  display: block;
  background-image: url(../img/pen.png);
  background-size: cover;
  top: 7.9%;
  right: 4.1%;
  width: clamp(2.75rem, 0.006rem + 13.72vw, 6.438rem);
  height: clamp(4.313rem, 0.126rem + 20.93vw, 9.938rem);
  transform: scale(0.8) rotate(347deg);
}

footer {
  background-color: #d8d8d8;
  text-align: center;
  padding-top: clamp(0.688rem, 0.036rem + 3.26vw, 1.563rem);
  padding-bottom: clamp(0.5rem, -0.105rem + 3.02vw, 1.313rem);

  p {
      font-size: clamp(0.533rem, 2.67vw, 1.25rem);
      line-height: 1;
      margin: 0 auto;
  }
}


/*  波区切り　*/
.economic .wave-dot {
  position: absolute;
  top: -2%;
  left: 0;
  width: 100%;
}

.simulation .wave-dot {
  position: absolute;
  top: -4%;
  left: 0;
  width: 100%;
}

.wave-yellow {
  position: absolute;
  top: -2%;
  left: 0;
  width: 100%;
  overflow: hidden;
}

.lattice-path {
  background-image: linear-gradient(#e6f2f1 1px, transparent 1px), linear-gradient(90deg, #e6f2f1 1px, transparent 1px);
  background-size: 0.79em 0.79em;
  background-color: #f0fcfb;
}