.zeh {
  position: relative;
}
.zeh .l-container {
  overflow: hidden;
}
.zeh .content-box {
  width: min(85.014vw, 1416px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .zeh .content-box {
    width: 100%;
  }
}

.s01 {
  -webkit-margin-before: min(3.818vw, 63.6px);
          margin-block-start: min(3.818vw, 63.6px);
}
@media screen and (max-width: 768px) {
  .s01 {
    -webkit-margin-before: min(18.667vw, 84px);
            margin-block-start: min(18.667vw, 84px);
  }
}
.s01 h2 {
  text-align: center;
  color: #fff;
  font-size: clamp(24px, 2.161vw, 36px);
  letter-spacing: 0.06em;
  line-height: 1.17;
  background-color: #00616A;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 769px) {
  .s01 h2 {
    padding-block: clamp(39.2px, 3.53vw, 58.8px);
  }
}
@media screen and (max-width: 768px) {
  .s01 h2 {
    font-size: clamp(12.8px, 4.267vw, 19.2px);
    line-height: 1.56;
    padding-block: clamp(26.4px, 8.8vw, 39.6px);
  }
}
.s01 .wrap > p {
  text-align: center;
  font-size: clamp(16px, 1.441vw, 24px);
  letter-spacing: 0.06em;
  line-height: 2;
  -webkit-margin-before: min(2.81vw, 46.8px);
          margin-block-start: min(2.81vw, 46.8px);
}
@media screen and (max-width: 768px) {
  .s01 .wrap > p {
    padding-inline: min(2.667vw, 12px);
    font-size: clamp(10.4px, 3.467vw, 15.6px);
    letter-spacing: 0;
    -webkit-margin-before: min(4.8vw, 21.6px);
            margin-block-start: min(4.8vw, 21.6px);
  }
}
.s01 .wrap > p span {
  color: #00616A;
  font-size: clamp(28px, 2.522vw, 42px);
  line-height: 0;
}
@media screen and (max-width: 768px) {
  .s01 .wrap > p span {
    font-size: clamp(18.4px, 6.133vw, 27.6px);
  }
}
.s01 .wrap .box01 {
  -webkit-margin-before: min(3.386vw, 56.4px);
          margin-block-start: min(3.386vw, 56.4px);
  padding: min(5.403vw, 90px) min(5.403vw, 90px) min(5.764vw, 96px);
  background-color: #e4ede8;
}
@media screen and (max-width: 768px) {
  .s01 .wrap .box01 {
    -webkit-margin-before: min(8.533vw, 38.4px);
            margin-block-start: min(8.533vw, 38.4px);
    padding: min(8vw, 36px) min(7.2vw, 32.4px) min(9.867vw, 44.4px);
  }
}
.s01 .wrap .box01 > figure {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr min(3.746vw, 62.4px) 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: min(4.035vw, 67.2px) min(3.746vw, 62.4px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .s01 .wrap .box01 > figure {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: min(7.733vw, 34.8px);
  }
}
.s01 .wrap .box01 > figure img {
  width: 100%;
}
.s01 .wrap .box01 > figure::after {
  content: "";
  display: block;
  width: min(10.231vw, 170.4px);
  height: min(7.565vw, 126px);
  background-image: url(/asset/img/zeh/zeh-s01_p03.webp);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  margin-inline: auto;
}
@media screen and (min-width: 769px) {
  .s01 .wrap .box01 > figure::after {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
  }
}
@media screen and (max-width: 768px) {
  .s01 .wrap .box01 > figure::after {
    width: min(25.067vw, 112.8px);
    height: min(18.4vw, 82.8px);
  }
}
.s01 .wrap .box01 > p {
  -webkit-margin-before: min(2.161vw, 36px);
          margin-block-start: min(2.161vw, 36px);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .s01 .wrap .box01 > p {
    -webkit-margin-before: min(3.467vw, 15.6px);
            margin-block-start: min(3.467vw, 15.6px);
  }
}
.s01 .wrap .box01 > p span {
  display: block;
}
.s01 .wrap .box01 > p span:nth-of-type(1) {
  font-size: clamp(16px, 1.441vw, 24px);
  letter-spacing: 0.06em;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .s01 .wrap .box01 > p span:nth-of-type(1) {
    font-size: clamp(10.4px, 3.467vw, 15.6px);
  }
}
.s01 .wrap .box01 > p span:nth-of-type(2) {
  color: #00616A;
  font-size: clamp(28px, 2.522vw, 42px);
  letter-spacing: 0.06em;
  line-height: 1.43;
}
@media screen and (max-width: 768px) {
  .s01 .wrap .box01 > p span:nth-of-type(2) {
    font-size: clamp(18.4px, 6.133vw, 27.6px);
  }
}
.s01 .wrap .box01 .item-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr min(3.242vw, 54px) 1fr min(3.242vw, 54px) 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: min(3.242vw, 54px);
  -webkit-margin-before: min(3.89vw, 64.8px);
          margin-block-start: min(3.89vw, 64.8px);
}
@media screen and (max-width: 768px) {
  .s01 .wrap .box01 .item-list {
    gap: 0;
    -webkit-margin-before: min(6.4vw, 28.8px);
            margin-block-start: min(6.4vw, 28.8px);
  }
}

.s02 {
  -webkit-margin-before: min(8.573vw, 142.8px);
          margin-block-start: min(8.573vw, 142.8px);
}
@media screen and (max-width: 768px) {
  .s02 {
    -webkit-margin-before: min(14.4vw, 64.8px);
            margin-block-start: min(14.4vw, 64.8px);
  }
}
.s02 h2 {
  position: relative;
  text-align: center;
  background-color: #00616A;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-block: clamp(38.4px, 3.458vw, 57.6px) clamp(25.6px, 2.305vw, 38.4px);
}
@media screen and (max-width: 768px) {
  .s02 h2 {
    padding-block: clamp(22.4px, 7.467vw, 33.6px) clamp(16px, 5.333vw, 24px);
  }
}
.s02 h2 img {
  position: absolute;
}
@media screen and (min-width: 769px) {
  .s02 h2 img {
    top: calc(clamp(21.6px, 1.945vw, 32.4px) * -1);
    height: clamp(43.2px, 3.89vw, 64.8px);
  }
}
@media screen and (max-width: 768px) {
  .s02 h2 img {
    top: calc(clamp(14.4px, 4.8vw, 21.6px) * -1);
    height: clamp(27.2px, 9.067vw, 40.8px);
  }
}
.s02 h2 span:nth-of-type(1) {
  color: #fff;
  font-size: clamp(16px, 1.441vw, 24px);
  letter-spacing: 0.06em;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .s02 h2 span:nth-of-type(1) {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
    line-height: 1.91;
  }
}
.s02 h2 span:nth-of-type(2) {
  color: #fff;
  font-size: clamp(24px, 2.161vw, 36px);
  letter-spacing: 0.06em;
  line-height: 1.33;
}
@media screen and (max-width: 768px) {
  .s02 h2 span:nth-of-type(2) {
    font-size: min(4.267vw, 19.2px);
    line-height: 1.31;
  }
}
.s02 .wrap {
  padding: min(2.882vw, 48px) min(5.764vw, 96px) min(5.331vw, 88.8px);
  background-color: #f7faf9;
  -webkit-box-shadow: 0 0 10px 0 #e6e5e5;
          box-shadow: 0 0 10px 0 #e6e5e5;
}
@media screen and (max-width: 768px) {
  .s02 .wrap {
    padding: min(7.467vw, 33.6px) min(7.467vw, 33.6px) min(9.067vw, 40.8px);
  }
}
.s02 [class*=box] .main {
  text-align: center;
  color: #00616A;
  font-size: clamp(20px, 1.801vw, 30px);
  letter-spacing: 0.06em;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .s02 [class*=box] .main {
    font-size: clamp(12.8px, 4.267vw, 19.2px);
    line-height: 2.19;
    letter-spacing: 0;
  }
}
.s02 [class*=box] .sub {
  text-align: center;
  color: #00616A;
  font-weight: 400;
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  letter-spacing: 0.06em;
  line-height: 1.56;
  -webkit-margin-before: min(1.081vw, 18px);
          margin-block-start: min(1.081vw, 18px);
}
@media screen and (max-width: 768px) {
  .s02 [class*=box] .sub {
    text-align: left;
    font-size: clamp(11.2px, 3.733vw, 16.8px);
    letter-spacing: 0;
    line-height: 2.14;
    -webkit-margin-before: min(6.4vw, 28.8px);
            margin-block-start: min(6.4vw, 28.8px);
  }
}
.s02 [class*=box] figure {
  -webkit-margin-before: min(5.043vw, 84px);
          margin-block-start: min(5.043vw, 84px);
  width: min(64.121vw, 1068px);
  padding-inline: min(1.945vw, 32.4px) 0;
  margin-inline: auto;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr min(2.161vw, 36px) min(33.718vw, 561.6px);
  grid-template-columns: 1fr min(33.718vw, 561.6px);
  gap: min(2.161vw, 36px);
}
@media screen and (max-width: 768px) {
  .s02 [class*=box] figure {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    width: 100%;
    -webkit-margin-before: min(8vw, 36px);
            margin-block-start: min(8vw, 36px);
    gap: min(5.333vw, 24px);
    padding-inline: 0;
  }
}
.s02 [class*=box] figure img {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .s02 [class*=box] figure img:nth-of-type(1) {
    padding-inline: min(10.4vw, 46.8px) min(10.133vw, 45.6px);
  }
}
.s02 [class*=box] .box02 {
  -webkit-border-before: 1px solid #00616A;
          border-block-start: 1px solid #00616A;
  -webkit-margin-before: min(5.187vw, 86.4px);
          margin-block-start: min(5.187vw, 86.4px);
  -webkit-padding-before: min(4.539vw, 75.6px);
          padding-block-start: min(4.539vw, 75.6px);
}
@media screen and (max-width: 768px) {
  .s02 [class*=box] .box02 {
    -webkit-margin-before: min(8.8vw, 39.6px);
            margin-block-start: min(8.8vw, 39.6px);
    -webkit-padding-before: min(8vw, 36px);
            padding-block-start: min(8vw, 36px);
  }
}
.s02 [class*=box] .box02 figure {
  width: min(66.138vw, 1101.6px);
  -ms-grid-columns: 1fr min(2.45vw, 40.8px) min(33.429vw, 556.8px);
  grid-template-columns: 1fr min(33.429vw, 556.8px);
  gap: min(2.45vw, 40.8px);
  -webkit-margin-before: min(4.899vw, 81.6px);
          margin-block-start: min(4.899vw, 81.6px);
  padding-inline: 0 min(1.081vw, 18px);
}
@media screen and (max-width: 768px) {
  .s02 [class*=box] .box02 figure {
    width: 100%;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: min(7.2vw, 32.4px);
    padding-inline: 0;
    -webkit-margin-before: min(9.867vw, 44.4px);
            margin-block-start: min(9.867vw, 44.4px);
  }
}
@media screen and (max-width: 768px) {
  .s02 [class*=box] .box02 figure img:nth-of-type(1) {
    padding-inline: min(6.4vw, 28.8px);
    margin: 0;
  }
}
@media screen and (max-width: 768px) {
  .s02 [class*=box] .box02 figure img:nth-of-type(2) {
    padding-inline: 0;
  }
}
.s02 [class*=box] .box02 img:nth-of-type(1) {
  -webkit-margin-before: min(1.945vw, 32.4px);
          margin-block-start: min(1.945vw, 32.4px);
}
.s02 .c-list--notice {
  -webkit-margin-before: min(1.081vw, 18px);
          margin-block-start: min(1.081vw, 18px);
}
@media screen and (max-width: 768px) {
  .s02 .c-list--notice {
    width: 100%;
    padding-inline: min(5.333vw, 24px);
    -webkit-margin-before: min(5.333vw, 24px);
            margin-block-start: min(5.333vw, 24px);
  }
}
.s02 .c-list--notice li {
  font-weight: 400;
  font-size: clamp(8px, 0.72vw, 12px);
  line-height: 2;
  letter-spacing: 0.06em;
  margin: 0;
  text-indent: 0;
  -webkit-padding-start: 0;
          padding-inline-start: 0;
}
@media screen and (max-width: 768px) {
  .s02 .c-list--notice li {
    font-size: clamp(8px, 2.667vw, 12px);
    line-height: 1.5;
  }
}

.s03 {
  -webkit-margin-before: min(6.052vw, 100.8px);
          margin-block-start: min(6.052vw, 100.8px);
}
@media screen and (max-width: 768px) {
  .s03 {
    margin-block: min(9.6vw, 43.2px) 0;
  }
}
.s03 .content-box {
  width: min(75.648vw, 1260px);
}
@media screen and (max-width: 768px) {
  .s03 .content-box {
    width: 100%;
    padding-inline: min(7.2vw, 32.4px);
  }
}
.s03 h2 {
  text-align: center;
  font-size: clamp(20px, 1.801vw, 30px);
  letter-spacing: 0.06em;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .s03 h2 {
    font-size: clamp(12.8px, 4.267vw, 19.2px);
  }
}
.s03 .item-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr min(2.233vw, 37.2px) 1fr min(2.233vw, 37.2px) 1fr min(2.233vw, 37.2px) 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 min(2.233vw, 37.2px);
  -webkit-margin-before: min(2.017vw, 33.6px);
          margin-block-start: min(2.017vw, 33.6px);
}
@media screen and (max-width: 768px) {
  .s03 .item-list {
    -ms-grid-columns: 1fr min(4.533vw, 20.4px) 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: min(6.667vw, 30px) min(4.533vw, 20.4px);
    -webkit-margin-before: min(5.067vw, 22.8px);
            margin-block-start: min(5.067vw, 22.8px);
  }
}
.s03 .item-list li {
  display: -ms-grid;
  display: grid;
  gap: 0;
}
@media screen and (min-width: 769px) {
  .s03 .item-list li {
    -ms-grid-rows: subgrid;
    grid-template-rows: subgrid;
    -ms-grid-row-span: 2;
    grid-row: span 2;
  }
}
.s03 .item-list figure {
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.s03 .item-list img {
  width: 100%;
}
.s03 .item-list figcaption {
  position: absolute;
  bottom: clamp(5.6px, 0.504vw, 8.4px);
  right: clamp(8px, 0.72vw, 12px);
}
@media screen and (max-width: 768px) {
  .s03 .item-list figcaption {
    bottom: clamp(3.2px, 1.067vw, 4.8px);
    right: clamp(6.4px, 2.133vw, 9.6px);
  }
}
.s03 .item-list p {
  -webkit-margin-before: min(0.865vw, 14.4px);
          margin-block-start: min(0.865vw, 14.4px);
  text-align: center;
  font-weight: 400;
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  letter-spacing: 0.06em;
  line-height: 1.25;
}
@media screen and (max-width: 768px) {
  .s03 .item-list p {
    -webkit-margin-before: min(2.667vw, 12px);
            margin-block-start: min(2.667vw, 12px);
    font-size: clamp(8px, 2.667vw, 12px);
    line-height: 1.4;
  }
}

.s04 {
  -webkit-margin-before: min(5.331vw, 88.8px);
          margin-block-start: min(5.331vw, 88.8px);
}
@media screen and (max-width: 768px) {
  .s04 {
    -webkit-margin-before: min(12.533vw, 56.4px);
            margin-block-start: min(12.533vw, 56.4px);
  }
}
.s04 .content-box:nth-of-type(1) {
  background-image: url(/asset/img/zeh/zeh-s04_p01.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-block: min(4.611vw, 76.8px) 0;
}
@media screen and (max-width: 768px) {
  .s04 .content-box:nth-of-type(1) {
    padding-block: min(8.8vw, 39.6px) 0;
  }
}
.s04 .wrap {
  background-color: rgba(228, 237, 232, 0.8);
}
.s04 .box01 {
  padding: min(2.161vw, 36px) min(2.161vw, 36px) min(2.882vw, 48px);
}
@media screen and (max-width: 768px) {
  .s04 .box01 {
    padding: min(4.8vw, 21.6px) min(8vw, 36px);
  }
}
.s04 .box01 h2 {
  color: #00616A;
  font-size: clamp(20px, 1.801vw, 30px);
  letter-spacing: 0.06em;
  text-align: center;
  -webkit-margin-after: min(1.873vw, 31.2px);
          margin-block-end: min(1.873vw, 31.2px);
  -webkit-padding-after: min(1.441vw, 24px);
          padding-block-end: min(1.441vw, 24px);
  -webkit-border-after: 1px solid #00616A;
          border-block-end: 1px solid #00616A;
  width: min(46.83vw, 780px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .s04 .box01 h2 {
    width: 100%;
    font-size: clamp(12.8px, 4.267vw, 19.2px);
    line-height: 2;
    -webkit-margin-after: min(2.933vw, 13.2px);
            margin-block-end: min(2.933vw, 13.2px);
    -webkit-padding-after: min(3.2vw, 14.4px);
            padding-block-end: min(3.2vw, 14.4px);
  }
}
.s04 .box01 p {
  font-weight: 400;
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  letter-spacing: 0.06em;
  line-height: 1.56;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .s04 .box01 p {
    font-size: clamp(11.2px, 3.733vw, 16.8px);
    line-height: 2.14;
    text-align: left;
    letter-spacing: 0;
  }
}
.s04 .box02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-block: min(3.818vw, 63.6px) min(7.277vw, 121.2px);
  width: clamp(384px, 34.582vw, 576px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .s04 .box02 {
    width: 100%;
    padding: min(7.733vw, 34.8px) min(8vw, 36px) min(12.533vw, 56.4px);
  }
}
.s04 .box02 .main {
  color: #fff;
  font-size: clamp(20px, 1.801vw, 30px);
  letter-spacing: 0.06em;
  line-height: 2;
  text-shadow: 0px 0px 10px #000;
}
@media screen and (max-width: 768px) {
  .s04 .box02 .main {
    font-size: clamp(12.8px, 4.267vw, 19.2px);
  }
}
.s04 .box02 .sub {
  color: #fff;
  font-weight: 400;
  font-size: clamp(12px, 1.081vw, 18px);
  letter-spacing: 0.06em;
  line-height: 2;
  text-shadow: 0px 0px 20px rgb(7, 31, 19);
  -webkit-margin-before: min(1.729vw, 28.8px);
          margin-block-start: min(1.729vw, 28.8px);
}
@media screen and (max-width: 768px) {
  .s04 .box02 .sub {
    font-size: clamp(12px, 4vw, 18px);
    letter-spacing: 0;
    -webkit-margin-before: min(4.8vw, 21.6px);
            margin-block-start: min(4.8vw, 21.6px);
  }
}
.s04 .c-list--notice {
  -webkit-margin-before: min(0.937vw, 15.6px);
          margin-block-start: min(0.937vw, 15.6px);
}
@media screen and (max-width: 768px) {
  .s04 .c-list--notice {
    -webkit-margin-before: min(6.667vw, 30px);
            margin-block-start: min(6.667vw, 30px);
    padding-inline: min(5.333vw, 24px);
  }
}
.s04 .c-list--notice li {
  font-weight: 400;
  font-size: clamp(8px, 0.72vw, 12px);
  letter-spacing: 0.06em;
  line-height: 2;
  letter-spacing: 0;
  text-indent: 0;
}
@media screen and (max-width: 768px) {
  .s04 .c-list--notice li {
    font-size: clamp(8px, 2.667vw, 12px);
    line-height: 1.5;
  }
}

.s05 {
  -webkit-margin-before: min(7.637vw, 127.2px);
          margin-block-start: min(7.637vw, 127.2px);
}
@media screen and (max-width: 768px) {
  .s05 {
    margin-block: min(16vw, 72px) 0;
  }
}
@media screen and (max-width: 768px) {
  .s05 .content-box {
    padding-inline: min(7.2vw, 32.4px);
  }
}
.s05 h2 {
  font-size: clamp(20px, 1.801vw, 30px);
  letter-spacing: 0.06em;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .s05 h2 {
    font-size: clamp(12.8px, 4.267vw, 19.2px);
    letter-spacing: 0;
    line-height: 2.19;
  }
}
.s05 p {
  font-weight: 400;
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  letter-spacing: 0.06em;
  text-align: center;
  line-height: 1.56;
  -webkit-margin-before: min(1.081vw, 18px);
          margin-block-start: min(1.081vw, 18px);
}
@media screen and (max-width: 768px) {
  .s05 p {
    font-size: clamp(11.2px, 3.733vw, 16.8px);
    line-height: 2.14;
    letter-spacing: 0;
    -webkit-margin-before: min(6.133vw, 27.6px);
            margin-block-start: min(6.133vw, 27.6px);
    text-align: left;
  }
}
.s05 figure {
  -webkit-margin-before: min(6.916vw, 115.2px);
          margin-block-start: min(6.916vw, 115.2px);
  width: min(36.96vw, 615.6px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .s05 figure {
    width: 100%;
    padding-inline: min(3.733vw, 16.8px);
    -webkit-margin-before: min(8.533vw, 38.4px);
            margin-block-start: min(8.533vw, 38.4px);
    display: block;
  }
}
.s05 figure img {
  width: 100%;
}
.s05 figcaption {
  -webkit-margin-before: min(1.585vw, 26.4px);
          margin-block-start: min(1.585vw, 26.4px);
  font-weight: 400;
  font-size: clamp(8px, 0.72vw, 12px);
  letter-spacing: 0.06em;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .s05 figcaption {
    -webkit-margin-before: min(3.733vw, 16.8px);
            margin-block-start: min(3.733vw, 16.8px);
    font-size: clamp(8px, 2.667vw, 12px);
    line-height: 1.5;
    display: block;
  }
}

.s06 {
  margin-block: min(10.303vw, 171.6px) 0;
}
@media screen and (max-width: 768px) {
  .s06 {
    margin-block: min(25.6vw, 115.2px) 0;
  }
}
@media screen and (max-width: 768px) {
  .s06 :not(.is-active) h2 {
    -webkit-padding-after: clamp(28px, 9.333vw, 42px);
            padding-block-end: clamp(28px, 9.333vw, 42px);
  }
}
.s06 h2 {
  position: relative;
  text-align: center;
  background-color: #00616A;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-block: clamp(32px, 2.882vw, 48px) clamp(28px, 2.522vw, 42px);
  -webkit-transition: padding-block 0.3s;
  transition: padding-block 0.3s;
}
@media screen and (max-width: 768px) {
  .s06 h2 {
    padding-block: clamp(23.2px, 7.733vw, 34.8px) clamp(12px, 4vw, 18px);
  }
}
.s06 h2 img {
  position: absolute;
}
@media screen and (min-width: 769px) {
  .s06 h2 img {
    top: calc(clamp(21.6px, 1.945vw, 32.4px) * -1);
    height: clamp(43.2px, 3.89vw, 64.8px);
  }
}
@media screen and (max-width: 768px) {
  .s06 h2 img {
    top: calc(clamp(14.4px, 4.8vw, 21.6px) * -1);
    height: clamp(27.2px, 9.067vw, 40.8px);
  }
}
.s06 h2 > span:nth-of-type(1) {
  color: #fff;
  font-size: clamp(16px, 1.441vw, 24px);
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .s06 h2 > span:nth-of-type(1) {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
    letter-spacing: 0;
  }
}
.s06 h2 > span:nth-of-type(1) span {
  color: #fff;
  font-size: clamp(24px, 2.161vw, 36px);
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .s06 h2 > span:nth-of-type(1) span {
    font-size: clamp(12.8px, 4.267vw, 19.2px);
    letter-spacing: 0;
  }
}
.s06 .wrap {
  background-color: #e4ede8;
  padding: min(2.882vw, 48px) min(5.043vw, 84px) min(5.908vw, 98.4px);
  -webkit-border-after: 2px solid #00616A;
          border-block-end: 2px solid #00616A;
}
@media screen and (max-width: 768px) {
  .s06 .wrap {
    padding: min(7.467vw, 33.6px) 0 min(16vw, 72px);
  }
}
.s06 .wrap p {
  text-align: center;
  color: #00616A;
  font-size: clamp(20px, 1.801vw, 30px);
  letter-spacing: 0.06em;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .s06 .wrap p {
    font-size: clamp(12.8px, 4.267vw, 19.2px);
    letter-spacing: 0;
    line-height: 2.19;
  }
}
.s06 .wrap img {
  width: 100%;
}
.s06 .wrap figcaption {
  display: block;
  -webkit-margin-before: min(0.576vw, 9.6px);
          margin-block-start: min(0.576vw, 9.6px);
  font-size: clamp(8px, 0.72vw, 12px);
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .s06 .wrap figcaption {
    -webkit-margin-before: min(4.267vw, 19.2px);
            margin-block-start: min(4.267vw, 19.2px);
    font-size: clamp(8px, 2.667vw, 12px);
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  .s06 .wrap .box01 {
    padding-inline: min(7.2vw, 32.4px);
  }
}
.s06 .wrap .box01 figure {
  display: block;
  -webkit-margin-before: min(2.666vw, 44.4px);
          margin-block-start: min(2.666vw, 44.4px);
  width: min(59.366vw, 988.8px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .s06 .wrap .box01 figure {
    -webkit-margin-before: min(5.333vw, 24px);
            margin-block-start: min(5.333vw, 24px);
    width: 100%;
  }
}
.s06 .wrap .box02 {
  -webkit-margin-before: min(5.548vw, 92.4px);
          margin-block-start: min(5.548vw, 92.4px);
}
@media screen and (max-width: 768px) {
  .s06 .wrap .box02 {
    -webkit-margin-before: min(15.733vw, 70.8px);
            margin-block-start: min(15.733vw, 70.8px);
  }
}
.s06 .wrap .box02 .c-box--swipe::before {
  z-index: 3;
}
@media screen and (max-width: 768px) {
  .s06 .wrap .box02 .c-box--swipe figure {
    padding-inline: min(7.2vw, 32.4px);
  }
}
@media screen and (min-width: 769px) {
  .s06 .wrap .box02 .c-box--swipe:nth-of-type(1) {
    width: min(58.429vw, 973.2px);
    margin-inline: auto;
    -webkit-margin-before: min(1.369vw, 22.8px);
            margin-block-start: min(1.369vw, 22.8px);
  }
}
@media screen and (max-width: 768px) {
  .s06 .wrap .box02 .c-box--swipe:nth-of-type(1) {
    -webkit-margin-before: min(5.067vw, 22.8px);
            margin-block-start: min(5.067vw, 22.8px);
  }
}
@media screen and (max-width: 768px) {
  .s06 .wrap .box02 .c-box--swipe:nth-of-type(1) figcaption {
    -webkit-margin-before: min(3.2vw, 14.4px);
            margin-block-start: min(3.2vw, 14.4px);
  }
}
@media screen and (max-width: 768px) {
  .s06 .wrap .box02 .c-box--swipe:nth-of-type(1) img {
    width: auto;
    max-height: min(151.733vw, 682.8px);
  }
}
@media screen and (min-width: 769px) {
  .s06 .wrap .box02 .c-box--swipe:nth-of-type(2) {
    width: min(60.735vw, 1011.6px);
    margin-inline: auto;
    -webkit-margin-before: min(4.251vw, 70.8px);
            margin-block-start: min(4.251vw, 70.8px);
  }
}
@media screen and (max-width: 768px) {
  .s06 .wrap .box02 .c-box--swipe:nth-of-type(2) {
    -webkit-margin-before: min(10.4vw, 46.8px);
            margin-block-start: min(10.4vw, 46.8px);
  }
}
@media screen and (min-width: 769px) {
  .s06 .wrap .box02 .c-box--swipe:nth-of-type(2) figure {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .s06 .wrap .box02 .c-box--swipe:nth-of-type(2) img {
    width: auto;
    max-height: min(48.533vw, 218.4px);
  }
}

.s07 {
  margin-block: min(5.908vw, 98.4px) min(5.764vw, 96px);
}
@media screen and (max-width: 768px) {
  .s07 {
    margin-block: min(15.2vw, 68.4px);
  }
}
@media screen and (max-width: 768px) {
  .s07 :not(.is-active) h2 {
    -webkit-padding-after: clamp(28px, 9.333vw, 42px);
            padding-block-end: clamp(28px, 9.333vw, 42px);
  }
}
.s07 h2 {
  position: relative;
  text-align: center;
  background-color: #00616A;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-block: clamp(32px, 2.882vw, 48px) clamp(28px, 2.522vw, 42px);
  -webkit-transition: padding-block 0.3s;
  transition: padding-block 0.3s;
}
@media screen and (max-width: 768px) {
  .s07 h2 {
    padding-block: clamp(23.2px, 7.733vw, 34.8px) clamp(12px, 4vw, 18px);
  }
}
.s07 h2 img {
  position: absolute;
}
@media screen and (min-width: 769px) {
  .s07 h2 img {
    top: calc(clamp(21.6px, 1.945vw, 32.4px) * -1);
    height: clamp(43.2px, 3.89vw, 64.8px);
  }
}
@media screen and (max-width: 768px) {
  .s07 h2 img {
    top: calc(clamp(14.4px, 4.8vw, 21.6px) * -1);
    height: clamp(27.2px, 9.067vw, 40.8px);
  }
}
.s07 h2 > span:nth-of-type(1) {
  color: #fff;
  font-size: clamp(16px, 1.441vw, 24px);
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .s07 h2 > span:nth-of-type(1) {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
    letter-spacing: 0;
  }
}
.s07 h2 > span:nth-of-type(1) > span {
  color: #fff;
  font-size: clamp(24px, 2.161vw, 36px);
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .s07 h2 > span:nth-of-type(1) > span {
    font-size: clamp(12.8px, 4.267vw, 19.2px);
    letter-spacing: 0;
  }
}
@media screen and (min-width: 769px) {
  .s07 h2 > span:nth-of-type(1) > span span {
    letter-spacing: -0.03em;
  }
}
@media screen and (max-width: 768px) {
  .s07 h2 > span:nth-of-type(1) > span span {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
    letter-spacing: 0;
  }
}
.s07 .wrap {
  background-color: #e4ede8;
  padding: min(3.17vw, 52.8px) min(3.17vw, 52.8px) min(5.403vw, 90px);
  -webkit-border-after: 2px solid #00616A;
          border-block-end: 2px solid #00616A;
}
@media screen and (max-width: 768px) {
  .s07 .wrap {
    padding: min(7.733vw, 34.8px) 0 min(13.333vw, 60px);
  }
}
.s07 .wrap p:nth-of-type(1) {
  text-align: center;
  color: #00616A;
  font-size: clamp(20px, 1.801vw, 30px);
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .s07 .wrap p:nth-of-type(1) {
    font-size: clamp(12.8px, 4.267vw, 19.2px);
    letter-spacing: 0;
    line-height: 2.19;
  }
}
.s07 .wrap .box01 {
  width: min(47.334vw, 788.4px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box01 {
    width: 100%;
    padding-inline: min(7.2vw, 32.4px);
  }
}
.s07 .wrap .box01 figure {
  -webkit-margin-before: min(1.657vw, 27.6px);
          margin-block-start: min(1.657vw, 27.6px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box01 figure {
    -webkit-margin-before: min(2.667vw, 12px);
            margin-block-start: min(2.667vw, 12px);
  }
}
.s07 .wrap .box01 figure img {
  width: 100%;
}
.s07 .wrap .box01 p:nth-of-type(2) {
  margin-inline: auto;
  font-weight: 400;
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  letter-spacing: 0.06em;
  line-height: 1.56;
  -webkit-margin-before: min(2.233vw, 37.2px);
          margin-block-start: min(2.233vw, 37.2px);
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box01 p:nth-of-type(2) {
    -webkit-margin-before: min(4.8vw, 21.6px);
            margin-block-start: min(4.8vw, 21.6px);
    width: 100%;
    font-size: clamp(11.2px, 3.733vw, 16.8px);
    line-height: 1.79;
    letter-spacing: 0;
  }
}
.s07 .wrap .box02 {
  -webkit-margin-before: min(4.539vw, 75.6px);
          margin-block-start: min(4.539vw, 75.6px);
  width: min(55.331vw, 921.6px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box02 {
    width: 100%;
    padding-inline: min(7.2vw, 32.4px);
    -webkit-margin-before: min(13.867vw, 62.4px);
            margin-block-start: min(13.867vw, 62.4px);
  }
}
.s07 .wrap .box02 figure {
  -webkit-margin-before: min(1.657vw, 27.6px);
          margin-block-start: min(1.657vw, 27.6px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box02 figure {
    -webkit-margin-before: min(5.333vw, 24px);
            margin-block-start: min(5.333vw, 24px);
  }
}
.s07 .wrap .box02 figure img {
  width: 100%;
}
.s07 .wrap .box03 {
  -webkit-margin-before: min(8.429vw, 140.4px);
          margin-block-start: min(8.429vw, 140.4px);
  width: min(58.429vw, 973.2px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box03 {
    width: 100%;
    -webkit-margin-before: min(16.533vw, 74.4px);
            margin-block-start: min(16.533vw, 74.4px);
  }
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box03 p {
    padding-inline: min(7.2vw, 32.4px);
  }
}
.s07 .wrap .box03 p:nth-of-type(2) {
  text-align: center;
  color: #00616A;
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  letter-spacing: 0.06em;
  line-height: 1.56;
  -webkit-margin-before: min(1.081vw, 18px);
          margin-block-start: min(1.081vw, 18px);
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box03 p:nth-of-type(2) {
    font-size: clamp(11.2px, 3.733vw, 16.8px);
    line-height: 2.14;
    letter-spacing: 0;
    -webkit-margin-before: min(6.4vw, 28.8px);
            margin-block-start: min(6.4vw, 28.8px);
  }
}
.s07 .wrap .box03 .c-box--swipe {
  -webkit-margin-before: min(1.873vw, 31.2px);
          margin-block-start: min(1.873vw, 31.2px);
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box03 .c-box--swipe {
    -webkit-margin-before: min(9.333vw, 42px);
            margin-block-start: min(9.333vw, 42px);
  }
}
.s07 .wrap .box03 .c-box--swipe::before {
  z-index: 3;
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box03 .c-box--swipe figure {
    padding-inline: min(7.2vw, 32.4px);
  }
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box03 .c-box--swipe img {
    max-height: min(151.733vw, 682.8px);
  }
}
.s07 .wrap .box03 .c-list--notice:nth-of-type(1) {
  text-align: center;
  -webkit-margin-before: 20px;
          margin-block-start: 20px;
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box03 .c-list--notice:nth-of-type(1) {
    -webkit-margin-before: min(5.6vw, 25.2px);
            margin-block-start: min(5.6vw, 25.2px);
    text-align: left;
  }
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box03 .c-list--notice:nth-of-type(1) li {
    letter-spacing: 0;
  }
}
.s07 .wrap .box03 .c-list--notice:nth-of-type(2) {
  margin-inline: auto;
  -webkit-margin-before: min(1.441vw, 24px);
          margin-block-start: min(1.441vw, 24px);
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box03 .c-list--notice:nth-of-type(2) {
    width: 100%;
    -webkit-margin-before: min(2.667vw, 12px);
            margin-block-start: min(2.667vw, 12px);
  }
}
.s07 .wrap .box03 .c-list--notice:nth-of-type(2) li {
  margin: 0;
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box03 .c-list--notice {
    padding-inline: min(7.2vw, 32.4px);
  }
}
.s07 .wrap .box03 .c-list--notice li {
  font-weight: 400;
  font-size: clamp(8px, 0.72vw, 12px);
  line-height: 2;
  letter-spacing: 0.06em;
  text-indent: 0;
  -webkit-padding-start: 0;
          padding-inline-start: 0;
}
@media screen and (max-width: 768px) {
  .s07 .wrap .box03 .c-list--notice li {
    font-size: clamp(8px, 2.667vw, 12px);
    line-height: 1.5;
  }
}

.acBox .acBox__wrap {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 0fr;
  grid-template-rows: 0fr;
  -webkit-transition: grid-template-rows 0.5s;
  transition: grid-template-rows 0.5s;
  transition: grid-template-rows 0.5s, -ms-grid-rows 0.5s;
}
.acBox .acBox__inner {
  overflow: hidden;
}
.acBox .acBox__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  position: relative;
  z-index: 2;
  -webkit-margin-before: calc(clamp(20px, 1.801vw, 30px) * -1);
          margin-block-start: calc(clamp(20px, 1.801vw, 30px) * -1);
}
@media screen and (max-width: 768px) {
  .acBox .acBox__btn {
    -webkit-margin-before: calc(clamp(18.4px, 6.133vw, 27.6px) * -1);
            margin-block-start: calc(clamp(18.4px, 6.133vw, 27.6px) * -1);
  }
}
.acBox .acBox__btn:hover {
  opacity: unset;
}
.acBox .acBox__btn span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: clamp(40px, 3.602vw, 60px);
  height: clamp(40px, 3.602vw, 60px);
  border: 2px solid #00616A;
  border-radius: 50%;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .acBox .acBox__btn span {
    width: clamp(36.8px, 12.267vw, 55.2px);
    height: clamp(36.8px, 12.267vw, 55.2px);
  }
}
.acBox .acBox__btn span::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 clamp(9.6px, 0.865vw, 14.4px) clamp(16.64px, 1.499vw, 24.96px) clamp(9.6px, 0.865vw, 14.4px);
  border-color: transparent transparent #00616A transparent;
  margin-block: clamp(2.4px, 0.216vw, 3.6px) 0;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
@media screen and (max-width: 768px) {
  .acBox .acBox__btn span::before {
    border-width: 0 clamp(8px, 2.667vw, 12px) clamp(13.84px, 4.613vw, 20.76px) clamp(8px, 2.667vw, 12px);
    margin-block: clamp(4px, 1.333vw, 6px) 0;
  }
}
.acBox.is-active .acBox__wrap {
  -ms-grid-rows: 1fr;
  grid-template-rows: 1fr;
}
.acBox.is-active .acBox__btn span::before {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  margin-block: 0 clamp(2.4px, 0.216vw, 3.6px);
}
@media screen and (max-width: 768px) {
  .acBox.is-active .acBox__btn span::before {
    margin-block: 0 clamp(4px, 1.333vw, 6px);
  }
}
/*# sourceMappingURL=zeh.css.map */