body {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  margin: 0;
  padding: 0;
  font-size: 0;
}

.grecaptcha-badge {
  display: none !important;
}

/* pc_block */
.pc_br {
  display: block;
}
.pc_div {
  display: block;
}
.pc_img {
  display: inline;
}

/* sp_none */
.sp_br {
  display: none;
}
.sp_div {
  display: none;
}
.sp_img {
  display: none;
}

/*fade*/
.js-fade {
  opacity: 0;
  visibility: hidden;
  position: relative;
  top: 3vw;
  transition: opacity 1s, visibility 1s, top 1s;
}

.scroll {
  opacity: 1;
  visibility: visible;
  top: 0;
}

/*header*/
.header {
  font-weight: 400;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  z-index: 9;
}

/* 外側：グラデーションを常に100%で表示 */
#progress-bar {
  clear: both;
  width: 100%;
  height: 0.25vw;
  background: linear-gradient(
    to right,
    rgba(48, 216, 100),
    rgba(255, 255, 0),
    rgba(255, 157, 0)
  );
  z-index: 9999;
  overflow: hidden; /* 内側がはみ出さないように */
}

/* 内側：灰色バー（100% → 0% に縮む） */
#progress-bar-inner {
  height: 100%;
  width: 100%; /* 初期値は100%（未スクロール） */
  background: #d8d8d8; /* 薄いグレー */
  float: right;
}

.header_img {
  width: 12.3vw;
  margin-left: 3.55vw;
  margin-top: 1.2vw;
  float: left;
}

.nav {
  float: left;
  margin-left: 4.3vw;
}

.nav p {
  margin: 0;
  padding-top: 1.7vw;
}

.nav p a {
  text-decoration: none;
  color: #414143;
  font-size: 0.9vw;
  margin-right: 2.4vw;
  letter-spacing: 0.08em;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.nav p a:hover {
  color: #ff9800;
}

.nav_right {
  float: right;
  height: 4.45vw;
  background-color: #00c736;
  width: 8.35vw;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.nav_right:hover {
  background-color: #ff9800;
}

.nav_right img {
  float: right;
  width: 1.3vw;
  margin-right: 1.3vw;
  padding-top: 1.5vw;
}

.nav_right p {
  float: left;
  margin: 0;
  color: #fff;
  font-size: 0.9vw;
  margin-left: 1.85vw;
  padding-top: 1.7vw;
  letter-spacing: 0.08em;
}

/*contant*/

.contant {
  display: flex;
  clear: both;
  padding-top: 4.7vw;
}

.contant_left {
  width: 75.6%;
  overflow: hidden;
}

.contant_right {
  width: calc(24.4% - 0.3vw);
  border-left: solid 0.3vw #00c736;
  background-color: #fffff4;
}

/*page1*/

.page1 {
  background-image: url("img/page1_bg.png");
  height: 62.1vw;
  background-size: cover;
  background-position: bottom center;
}

.page1 .left {
  float: left;
  margin-left: 5.4vw;
  margin-top: 4.3vw;
}

.page1 .right {
  float: right;
  width: 27.2vw;
  margin-right: 4.35vw;
  margin-top: 3.5vw;
  position: relative;
}

.page1 .right p {
  margin: 0;
  padding: 0;
  letter-spacing: 0.1em;
  font-size: 1.05vw;
  font-weight: 600;
  color: #fff;
}

.page1 .right .text1 {
  position: absolute;
  top: 51.5%;
  left: 6.4%;
  transform: translateY(-50%);
}

.page1 .right .text2 {
  position: absolute;
  top: 51.5%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.page1 .right .text3 {
  position: absolute;
  top: 51.5%;
  right: 6.4%;
  transform: translateY(-50%);
}
.page1 .right img {
  width: 100%;
}

.page1 h1 {
  margin: 0;
  padding: 0;
  letter-spacing: 0.1em;
  font-size: 2.4vw;
}

.page1 h1 .small {
  font-size: 2.4vw;
  color: #ff9800;
  line-height: 1.75em;
  display: block;
  font-weight: 600;
}

.page1 h1 .small .green {
  color: #00c736;
}

.page1 h1 .big {
  font-size: 3.3vw;
  color: #00c736;
  margin-left: -0.25vw;
  display: block;
  font-weight: 700;
}

.page1 h1 .line1 {
  margin-right: 0;
  position: relative;
}

.page1 h1 .line2 {
  margin-left: 0;
  position: relative;
}

.page1 h1 .line3 {
  margin-left: 0;
  position: relative;
}

.page1 h1 .line1 span {
  z-index: 2;
  position: relative;
}
.page1 h1 .line2 span {
  z-index: 2;
  position: relative;
}

.page1 h1 .line3 span {
  z-index: 2;
  position: relative;
}

.page1 h1 .line1::after {
  position: absolute;
  left: -0.25vw;
  content: "";
  width: 99.5%;
  height: 1.2vw;
  background: #ffff03;
  bottom: 0vw;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.5s;
  transition-delay: 0.7s;
  z-index: 1;
}

.page1 h1 .line1.active::after {
  transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
}

.page1 h1 .line2::after {
  position: absolute;
  left: -0.35vw;
  content: "";
  width: 99.5%;
  height: 1.2vw;
  background: #ffff03;
  bottom: 0vw;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.5s;
  transition-delay: 1.2s;
  z-index: 1;
}

.page1 h1 .line2.active::after {
  transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
}

.page1 h1 .line3::after {
  position: absolute;
  content: "";
  width: 89%;
  height: 1.2vw;
  background: #ffff03;
  bottom: 0vw;
  left: -0.45vw;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.5s;
  transition-delay: 1.7s;
  z-index: 1;
}

.page1 h1 .line3.active::after {
  transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
}

/*page2*/

.page2 {
  text-align: center;
  font-weight: 600;
  background: #fff;
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.page2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    to right,
    rgba(48, 216, 100, 0.25),
    rgba(255, 255, 0, 0.25),
    rgba(255, 157, 0, 0.25)
  );
  opacity: 0; /* 初期状態は透明 */
  transition: opacity 1s; /* ← これなら滑らかにアニメする */
  z-index: 0;
}

.page2.active::before {
  opacity: 1;
}

.page2 img {
  width: 39.5vw;
  padding-top: 2.4vw;
  z-index: 1;
  position: relative;
}

.page2 h2 {
  margin: 0;
  color: #ff9800;
  letter-spacing: 0.1em;
  font-size: 1.78vw;
  padding-top: 5.3vw;
  z-index: 1;
  position: relative;
  font-weight: 600;
}

.page2 p {
  margin: 0;
  color: #00c736;
  letter-spacing: 0.1em;
  font-size: 1.28vw;
  line-height: 2.1em;
  padding-top: 2.2vw;
  padding-bottom: 4.9vw;
  z-index: 1;
  position: relative;
}

/*page3*/

.page3456 {
  background-image: url("img/page3456_bg.png");
  background-size: 100%;
  background-repeat: repeat-y;
}

.page3 {
  text-align: center;
  font-weight: 600;
  padding-top: 7.3vw;
}

.page3_div1 {
  position: relative;
  width: auto;
  display: inline-block;
  margin-bottom: 2.2vw;
}

.page3_div1 h2 {
  margin: 0;
  color: #414141;
  letter-spacing: 0.1em;
  font-size: 2.41vw;
  font-weight: 600;
}

.page3_div1 .page3_img1_1 {
  width: 1.65vw;
  position: absolute;
  left: 8.35vw;
  top: -1.65vw;
}

.page3_div1 .page3_img1_2 {
  width: 1.65vw;
  position: absolute;
  left: 21.65vw;
  bottom: -1.85vw;
}

.page3_div1 h2 .span1 {
  position: relative;
  margin-right: 0.85vw;
  margin-left: 0.85vw;
}
.page3_div1 h2 .span1 span {
  z-index: 2;
  position: relative;
}

.page3_div1 h2 .span1::after {
  position: absolute;
  content: "";
  width: 105.6%;
  height: 1.5vw;
  background: rgba(139, 139, 139, 0.25);
  bottom: -0.14vw;
  left: -0.5vw;
  z-index: -1;
}

.page3_div2 {
  width: 63.5vw;
  margin: auto;
  margin-top: 1.05vw;
  animation: fluffy 3s infinite;
  z-index: 1;
  position: relative;
}

.page3_img2 {
  width: 100%;
}

@keyframes fluffy {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-1.5vw);
  }
}

@keyframes fluffy-sp {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-3.5vw);
  }
}

.page3_div2 p {
  margin: 0;
  padding: 0;
  letter-spacing: 0.1em;
  font-size: 1.75vw;
  color: #414141;
  line-height: 1.9em;
}

.page3_div2 .text1 {
  position: absolute;
  top: 4.9vw;
  left: 8.6%;
}

.page3_div2 .text2 {
  position: absolute;
  top: 8.8vw;
  left: 51%;
  transform: translateX(-50%);
}

.page3_div2 .text3 {
  position: absolute;
  top: 6.4vw;
  right: 9.4%;
}

.page3_img3 {
  width: 43.75vw;
  margin-top: -0.95vw;
}

/*page4*/

.page4 {
  position: relative;
  background: linear-gradient(
    to right,
    rgba(48, 216, 100, 0.25),
    rgba(255, 255, 0, 0.25),
    rgba(255, 157, 0, 0.25)
  );
  clip-path: polygon(
    0% 0%,
    /* 左上 */ 50% 10.65vw,
    /* 上に向かって食い込む中央のくぼみ */ 100% 0%,
    /* 右上 */ 100% 100%,
    /* 右下 */ 0% 100% /* 左下 */
  );
}

.page4_1 {
  padding-top: 16.35vw;
}

.page4_1:after {
  content: " ";
  display: block;
  visibility: hidden;
  height: 0;
  clear: both;
}

.page4_1_div {
  width: 37.8vw;
  float: left;
  margin-left: 6.1vw;
  margin-top: 0.8vw;
  position: relative;
}

.page4_1 .img1 {
  width: 100%;
}

.page4_1_div p {
  margin: 0;
  padding: 0;
  letter-spacing: 0.1em;
  color: #00c736;
  font-weight: 600;
}

.page4_1_div .text1 {
  position: absolute;
  top: 5.15vw;
  left: 7.6vw;
  font-size: 3vw;
  line-height: 1.45em;
}

.page4_1_div .text1 span {
  color: #ff9800;
}

.page4_1_div .text2 {
  position: absolute;
  top: 3.27vw;
  left: 5.4vw;
  font-size: 1.75vw;
  transform: rotate(-30deg);
}

.page4_1_div .img1_2 {
  width: 1.8vw;
  position: absolute;
  top: 9vw;
  left: 6vw;
}

.page4_1 .img2 {
  width: 21.9vw;
  float: right;
  margin-right: 7.05vw;
  animation: rotateAnimation 10s linear infinite;
}

@keyframes rotateAnimation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.page4_2 {
  clear: both;
}

.page4_2_div1 {
  width: 29.9vw;
  margin-left: 5.6vw;
  float: left;
  margin-top: 2.85vw;
  opacity: 0;
  transform: translate(-5vw);
  transition: transform 1.5s, opacity 1.5s;
  position: relative;
  background-color: #fff;
  border: solid 0.1vw #ff9800;
  border-radius: 0 4vw 0 0;
  box-shadow: 0.5vw 0.5vw #ff9800;
}

.page4_2_div2 {
  width: 29.9vw;
  margin-right: 5.6vw;
  float: right;
  margin-top: 9.67vw;
  opacity: 0;
  transform: translate(5vw);
  transition: transform 1.5s, opacity 1.5s;
  position: relative;
  background-color: #fff;
  border: solid 0.1vw #00c736;
  border-radius: 0 4vw 0 0;
  box-shadow: 0.5vw 0.5vw #00c736;
}

.page4_2_div3 {
  width: 29.9vw;
  margin-left: 18.4vw;
  float: left;
  clear: both;
  margin-top: 3.4vw;
  opacity: 0;
  transform: translate(-5vw);
  transition: transform 1.5s, opacity 1.5s;
  position: relative;
  background-color: #fff;
  border: solid 0.1vw #ffc400;
  border-radius: 0 4vw 0 0;
  box-shadow: 0.5vw 0.5vw #ffc400;
}

.page4_2_div1.active {
  opacity: 1;
  transform: translate(0);
}

.page4_2_div2.active {
  opacity: 1;
  transform: translate(0);
}

.page4_2_div3.active {
  opacity: 1;
  transform: translate(0);
}

.page4_2 p {
  margin: 0;
  padding: 0;
  letter-spacing: 0.1em;
  color: #414141;
  font-weight: 400;
  font-size: 1.1vw;
  line-height: 2.15em;
  width: 75.9%;
}

.page4_2 p span {
  display: block;
  font-size: 1.85vw;
  font-weight: 600;
  margin-bottom: 1.65vw;
}

.page4_2_div1 .text {
  margin-left: 3.2vw;
  margin-top: 5.9vw;
  margin-bottom: 3.65vw;
}
.page4_2_div2 .text {
  margin-left: 3.2vw;
  margin-top: 5.9vw;
  margin-bottom: 3.65vw;
}
.page4_2_div3 .text {
  margin-left: 3.2vw;
  margin-top: 5.9vw;
  margin-bottom: 3.65vw;
}

.page4_2_div1 .text span {
  color: #ff9800;
}
.page4_2_div2 .text span {
  color: #00c736;
}
.page4_2_div3 .text span {
  color: #ffc400;
}

.page4_2_div1 .img2 {
  width: 1.95vw;
  position: absolute;
  right: 1.87vw;
  top: 1.9vw;
}

.page4_2_div2 .img2 {
  width: 3.9vw;
  position: absolute;
  right: 1.5vw;
  top: 0.75vw;
}

.page4_2_div3 .img2 {
  width: 3.1vw;
  position: absolute;
  right: 1.8vw;
  top: 2vw;
}

.page4_2_div1 .img1 {
  width: 4.5vw;
  position: absolute;
  left: -1.25vw;
  top: -1.35vw;
}

.page4_2_div2 .img1 {
  width: 4.5vw;
  position: absolute;
  left: -1.25vw;
  top: -1.35vw;
}

.page4_2_div3 .img1 {
  width: 4.5vw;
  position: absolute;
  left: -1.25vw;
  top: -1.35vw;
}

.page4_3 {
  text-align: center;
  clear: both;
  padding-top: 8.4vw;
}

.page4_3_h2 {
  position: relative;
  width: auto;
  display: inline-block;
}

.page4_3 .img1 {
  width: 6.1vw;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -2.95vw;
}

.page4_3 h2 {
  margin: 0;
  padding: 0;
  letter-spacing: 0.1em;
  font-size: 1.75vw;
  color: #00c736;
  line-height: 1.9em;
  font-weight: 600;
}

.page4_3_div {
  width: 80.5%;
  margin: auto;
  margin-top: 4.7vw;
  padding-bottom: 2.3vw;
}

.page4_3_div:after {
  content: " ";
  display: block;
  visibility: hidden;
  height: 0;
  clear: both;
}

.page4_3_div_div {
  float: left;
  width: calc(89% / 3);
  margin-right: 5.5%;
  margin-bottom: 7.2vw;
  position: relative;
}

.page4_3_div_div:nth-child(3n) {
  margin-right: 0%;
}
.page4_3_div_div:nth-child(3n-2) {
  clear: both;
}

.page4_3_div_div img {
  width: 100%;
  display: block;
}

.page4_3_div_div > p {
  margin: 0;
  font-weight: 600;
  font-size: 1.07vw;
  letter-spacing: 0.1em;
  margin-top: 1.45vw;
  white-space: nowrap;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -3.05vw;
  color: #414141;
}

.onimg {
  width: 100%;
  height: 100%;
  position: relative;
}

.onimg p {
  color: #fff;
  width: 100%;
  height: 100%;
  margin: 0;
  position: absolute;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 400;
  font-size: 0.93vw;
  letter-spacing: 0.1em;
  line-height: 2.1em;
  text-align: left;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.onimg:hover p {
  opacity: 1;
}

.onimg p span {
  width: 79%;
  margin: auto;
}

/*page5*/

.page5 {
  text-align: center;
  clear: both;
  padding-top: 5vw;
  padding-bottom: 6.4vw;
}

.page5 h2 {
  margin: 0;
  font-size: 1.8vw;
  letter-spacing: 0.1em;
  margin-top: 1.15vw;
  color: #414141;
  font-weight: 600;
}

.page5_div1 {
  width: 80.5%;
  margin: auto;
  margin-top: 4.5vw;
  padding-bottom: 5vw;
}

.page5_div1:after {
  content: " ";
  display: block;
  visibility: hidden;
  height: 0;
  clear: both;
}

.page5_div1 > div {
  float: left;
  width: calc(89% / 3);
  margin-right: 5.5%;
  background-color: #fff;
  box-sizing: border-box;
  border-radius: 1.8vw;
  overflow: hidden;
}

.page5_div1 > div:nth-child(3n) {
  margin-right: 0%;
}

.page5_div1 h3 {
  margin: 0;
  font-weight: 600;
  font-size: 1.77vw;
  letter-spacing: 0.1em;
  color: #fff;
  height: 3.7vw;
  padding-top: 1.05vw;
}

.page5_div1 p {
  margin: 0;
  font-weight: 600;
  letter-spacing: 0.1em;
}

.page5_div1 p.p1 {
  font-size: 1.35vw;
  color: #414141;
  padding-top: 2.2vw;
}

.page5_div1 p.p3 {
  color: #414141;
  font-size: 0.78vw;
  text-align: right;
  margin-right: 1.6vw;
  padding-top: 0.5vw;
  padding-bottom: 2.3vw;
}

.page5_div1 p span.yen {
  font-size: 1.3vw;
  color: #414141;
  display: inline-block;
  vertical-align: 0.25vw;
  margin-left: 0.5vw;
}

.page5_div1_1 {
  border: solid 0.1vw #ff9800;
}
.page5_div1_2 {
  border: solid 0.1vw #ffc400;
}
.page5_div1_3 {
  border: solid 0.1vw #00c736;
}

.page5_div1_1 h3 {
  background-color: #ff9800;
}
.page5_div1_2 h3 {
  background-color: #ffc400;
}
.page5_div1_3 h3 {
  background-color: #00c736;
}

.page5_div1_1 p.p2 {
  font-size: 3.57vw;
  color: #ff9800;
  letter-spacing: 0;
  padding-top: 1vw;
}
.page5_div1_2 p.p2 {
  font-size: 3.57vw;
  color: #ffc400;
  letter-spacing: 0;
  padding-top: 1vw;
}
.page5_div1_3 p.p2 {
  font-size: 3.57vw;
  color: #00c736;
  letter-spacing: 0;
  padding-top: 1vw;
}

.page5_div1 p.p2 {
  position: relative;
}
.page5_div1 p span.span1 {
  z-index: 2;
  position: relative;
}

.page5_div1 p span.span1::after {
  position: absolute;
  content: "";
  width: 105.6%;
  height: 1.8vw;
  background: #ffff03;
  bottom: 0vw;
  left: -0.5vw;
  z-index: -1;
}

.page5_div2 {
  width: 80.5%;
  border: solid 0.09vw #8b8b8b;
  margin: auto;
  background-color: #fff;
}

.page5_div2 h3 {
  margin: 0;
  color: #fff;
  background-color: #8b8b8b;
  font-weight: 600;
  font-size: 1.1vw;
  letter-spacing: 0.1em;
  line-height: 2.75em;
}

.page5_div2_div {
  position: relative;
}

.page5_div2_div:after {
  content: " ";
  display: block;
  visibility: hidden;
  height: 0;
  clear: both;
}

.page5_div2 .left {
  float: left;
  width: 50%;
  box-sizing: border-box;
}

.page5_div2 .right {
  float: right;
  width: 50%;
  box-sizing: border-box;
}

.page5_div2 .center-line {
  position: absolute;
  left: 50%;
  top: 17%;
  transform: translateX(-50%);
  height: 65%;
  border-right: solid 0.09vw #8b8b8b;
}

.page5_div2 .left p {
  margin: 0;
  text-align: left;
  font-weight: 400;
  letter-spacing: 0.1em;
  font-size: 0.87vw;
  margin-left: 3.3vw;
  margin-top: 2vw;
  margin-bottom: 1.5vw;
  line-height: 1.8em;
  color: #414141;
}

.page5_div2 .right p {
  margin: 0;
  text-align: left;
  font-weight: 400;
  letter-spacing: 0.1em;
  font-size: 0.87vw;
  margin-left: 4.2vw;
  margin-top: 2vw;
  margin-bottom: 1.5vw;
  line-height: 1.8em;
  color: #414141;
}

.page5_div2 .left p span {
  font-weight: 600;
}

.page5_div2 .right p span {
  font-weight: 600;
}

.page5_div2 p a {
  text-decoration: none;
  color: #414141;
}

/*page7*/

.page7 {
  text-align: center;
  clear: both;
  padding-top: 5vw;
  padding-bottom: 6.6vw;
}

.page7 h2 {
  margin: 0;
  font-size: 1.8vw;
  letter-spacing: 0.1em;
  margin-top: 1.15vw;
  color: #414141;
  font-weight: 600;
  margin-bottom: 5.45vw;
}

.slider_div_div {
  background-image: url("img/page7_bg.png");
  background-size: 100% 100%;
  width: 100%;
  background-repeat: no-repeat;
  position: relative;
  height: 21vw;
}

.slider_div_div div {
  padding: 2.85vw 2.7vw 2.85vw 2.7vw;
  border-top: solid 0.1vw transparent;
}

.slider_div_div img {
  position: absolute;
  top: -1.4vw;
  left: -1.4vw;
  width: 3.85vw;
}

.slider_div_div h3 {
  margin: 0;
  font-weight: 600;
  letter-spacing: 0.1em;
  font-size: 1.1vw;
  color: #00c736;
  text-align: left;
}

.slider_div_div p {
  margin: 0;
  font-weight: 400;
  letter-spacing: 0.1em;
  font-size: 1.1vw;
  color: #414141;
  line-height: 2.15em;
  padding-top: 0.6vw;
  text-align: left;

  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  line-clamp: 5;
}

.slider .slick-slide {
  width: 25.4vw;
  margin: 0 1.93vw;
  position: relative;
}

.slider-controls {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 3.37vw;
}

.slider-controls .slick-prev,
.slider-controls .slick-next {
  background: none;
  border: none;
  width: 1.45vw;
  z-index: 1;
  position: absolute;
  top: 50%;
  left: 50%; /* 横も中央にしたいなら */
  transform: translate(-50%, -50%);
}

/* 背景だけ丸く表示 */
.slider-controls .slick-prev-div,
.slider-controls .slick-next-div {
  position: relative;
  width: 3.5vw;
  height: 3.5vw;
  cursor: pointer;
}

/* 背景だけ丸く表示 */
.slider-controls .slick-prev-div::before,
.slider-controls .slick-next-div::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #00c736;
  border-radius: 50%;
  z-index: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.slider-controls .slick-prev-div:hover::before,
.slider-controls .slick-next-div:hover::before {
  background-color: #ff9800;
}

.slider-controls .slick-dots {
  display: flex !important;
  gap: 1.9vw;
  margin: 0;
  padding: 0;
  list-style: none;
  justify-content: center;
  align-items: center;
}

.slider-controls .dots-area {
  min-width: 10.05vw;
  padding: 0 2vw;
}

.slider-controls .slick-dots li button:before {
  font-size: 12px;
  color: #777;
}

.slider-controls .slick-dots li.slick-active button:before {
  color: #000;
}

.slick-dots li button {
  font-size: 0;
  width: 0.79vw;
  height: 0.79vw;
  border-radius: 50%;
  background-color: #dbdbdb;
  border: none;
  padding: 0;
  margin: 0;
  display: block;
}

.slick-dots li.slick-active button {
  background-color: #ff9800;
}

.slider_outer .closeSlider {
  cursor: pointer;
  position: absolute;
  top: 1.8vw;
  right: 3.1vw;
  width: 3.15vw;
}

.slick-list {
  overflow: visible !important;
  padding: 0px 42.3vw 0 0 !important;
}

.slider_div_link {
  display: block;
  text-decoration: none;
  cursor: pointer;
}

.slider_div_link:hover .slider_div_div {
  transform: translateY(-0.3vw);
}
.slider_div_link:hover .slider_div_div h3 {
  color: #ff9800;
}
.slider_div_div::after {
  content: "詳しく見る >";
  position: absolute;
  right: 2.2vw;
  bottom: 1.4vw;
  font-size: 0.82vw;
  font-weight: 600;
  color: #ff9800;
  opacity: 0;
  transform: translateX(-0.3vw);
}
.slider_div_link:hover .slider_div_div::after {
  opacity: 1;
  transform: translateX(0);
}

/*footer*/
.footer {
  width: 100%;
  height: 10vw;
  background: linear-gradient(
    to right,
    rgba(48, 216, 100, 0.25),
    rgba(255, 255, 0, 0.25),
    rgba(255, 157, 0, 0.25)
  );
  border-top: solid 0.1vw #00c736;
}

.footer img {
  width: 21.6vw;
  float: left;
  margin-top: 2.15vw;
  margin-left: 3.55vw;
}

.footer span {
  margin-right: 0.55vw;
  margin-left: 0.55vw;
}

.footer .right {
  width: auto;
  float: right;
  margin-top: 1.25vw;
  margin-right: 3.35vw;
  text-align: right;
}

.footer p {
  margin: 0;
  font-weight: 400;
  letter-spacing: 0.1em;
  font-size: 0.84vw;
  color: #414141;
  margin-top: 1.75vw;
}

.footer span.line {
  margin-right: 0.95vw;
  margin-left: 0.95vw;
}

.footer b {
  font-weight: 600;
}

.footer .p2 a {
  margin-left: 2.7vw;
  color: #414141;
  text-decoration: none;
}

/*contact*/
.contact {
  position: sticky;
  top: 7.25vw;
  text-align: center;
  overflow-y: auto;
  height: calc(100vh - 7.25vw);
}

.contact h2 {
  margin: 0;
  font-weight: 600;
  letter-spacing: 0.08em;
  font-size: 1.3vw;
  color: #00c736;
  line-height: 1.7em;
  margin-bottom: 1.8vw;
}

.contact form {
  text-align: left;
  width: 76%;
  margin: auto;
}

.contact p {
  position: relative;
  margin: 0;
  font-weight: 600;
  letter-spacing: 0.1em;
  font-size: 0.84vw;
  color: #414141;
  margin-top: 1.15vw;
}

.contact p strong {
  padding-left: 1.15vw;
  font-weight: 600;
}

.contact p strong span {
  color: #c62c36;
  font-size: 0.68vw;
  margin-left: 0.2vw;
}

.contact p.required::before {
  content: "";
  background-image: url("img/contact_img1.png");
  background-size: 100%;
  position: absolute;
  left: 0.2vw;
  top: 0.18vw;
  width: 0.75vw;
  height: 0.75vw;
  background-repeat: no-repeat;
}

.contact p.checkbox {
  font-weight: 400;
  margin-top: 1.5vw;
  white-space: nowrap;
}

.contact input[type="text"] {
  font-weight: 400;
  width: 100%;
  margin-bottom: 0px;
  border: solid 0.07vw #8b8b8b;
  border-radius: 99999px;
  margin-top: 0.15vw;
  height: 2.5vw;
  box-sizing: border-box;
  background-color: #fff;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  letter-spacing: 0.1em;
  font-size: 0.84vw;
  color: #414141;
  padding: 0.15vw 1.1vw 0 1.1vw;
}

.contact input[type="email"] {
  font-weight: 400;
  width: 100%;
  margin-bottom: 0px;
  border: solid 0.07vw #8b8b8b;
  border-radius: 99999px;
  margin-top: 0.15vw;
  height: 2.5vw;
  box-sizing: border-box;
  background-color: #fff;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  letter-spacing: 0.1em;
  font-size: 0.84vw;
  color: #414141;
  padding: 0.15vw 1.1vw 0 1.1vw;
}

.contact textarea {
  font-weight: 400;
  width: 100%;
  margin-bottom: 0px;
  border: solid 0.07vw #8b8b8b;
  border-radius: 1.1vw;
  margin-top: 0.15vw;
  height: 9.15vw;
  box-sizing: border-box;
  background-color: #fff;
  line-height: 1.7em;
  padding: 1.1vw 1.1vw;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  letter-spacing: 0.1em;
  font-size: 0.84vw;
  color: #414141;
  resize: none;
}

.contact input::placeholder {
  opacity: 0.9;
}

.contact textarea::placeholder {
  opacity: 0.9;
}

.contact p.checkbox label {
  cursor: pointer;
}

.contact p.checkbox input[type="checkbox"] {
  display: none;
}

.contact p.checkbox label::before {
  background: #fff;
  border: solid 0.07vw #8b8b8b;
  content: "";
  display: block;
  height: 1.37vw;
  left: 0.8vw;
  margin-top: -0.75vw;
  position: absolute;
  top: 50%;
  width: 1.37vw;
}

.contact p.checkbox label::after {
  content: "";
  display: block;
  position: absolute;
  top: -0.65vw;
  left: 1vw;
  width: 1.77vw;
  height: 1.77vw;
  background-image: url("img/contact_img2.png");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
}

.contact p.checkbox.checked label::after {
  opacity: 1;
}

.contact p.checkbox span.text {
  margin-left: 3.3vw;
}

.contact p.checkbox span.text a {
  text-decoration: none;
  border-bottom: solid 0.08vw #414141;
  color: #414141;
}

.contact p.checkbox.confirmation label {
  cursor: auto;
}
.contact p.checkbox.confirmation label::after {
  opacity: 1;
}

#submitBtn {
  background-color: #8b8b8b;
  width: 100%;
  text-align: center;
  border-radius: 99999px;
  color: #fff;
  cursor: not-allowed;
  transition: background-color 0.3s;
  margin: 0;
  font-weight: 600;
  letter-spacing: 0.1em;
  font-size: 0.87vw;
  border: solid 0.07vw #8b8b8b;
  margin-top: 1.85vw;
  margin-bottom: 3vw;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  padding-top: 0.3vw;
  line-height: normal;
  height: 2.5vw;
}

#submitBtn.active {
  background-color: #00c736; /* 入力＆同意済みで緑色 */
  cursor: pointer;
}

#submitBtn.active:hover {
  background-color: #ff9800;
}

.contact span.checkbox2 {
  position: relative;
  margin-left: 0.1vw;
}

.contact span.checkbox2 .label {
  cursor: pointer;
}

.contact span.checkbox2 input[type="checkbox"] {
  display: none;
}

.contact span.checkbox2 .label::before {
  background: #fff;
  border: solid 0.07vw #8b8b8b;
  content: "";
  display: block;
  height: 1.37vw;
  left: 0.8vw;
  margin-top: -0.75vw;
  position: absolute;
  top: 50%;
  width: 1.37vw;
}

.contact span.checkbox2 .label::after {
  content: "";
  display: block;
  position: absolute;
  top: -0.65vw;
  left: 1vw;
  width: 1.77vw;
  height: 1.77vw;
  background-image: url("img/contact_img2.png");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
}

.contact span.checkbox2.checked .label::after {
  opacity: 1;
}

.contact span.checkbox2 span.text {
  margin-left: 3.3vw;
  font-weight: 400;
}

.contact span.checkbox2.confirmation .label {
  cursor: auto;
}
.contact span.checkbox2.confirmation .label::after {
  opacity: 1;
}

#errorBox {
  margin: 0;
  letter-spacing: 0.1em;
  font-size: 0.84vw;
  font-weight: 400;
  color: red;
  margin-top: 1.5vw;
  display: none;
}

#errorBox.activ {
  display: block;
}

/* confirmation */

.form_confirmation p {
  margin: 0vw;
}

.form_confirmation p.margin {
  margin-bottom: 1.5vw;
}

.contact p.checkbox.confirmation {
  margin-top: 5vw;
}

.contact p.agree2.confirmation {
  margin-top: 1.5vw;
}

.contact p strong.strong2 {
  padding-left: 1.15vw;
  font-weight: 400;
  display: block;
  line-height: 1.9em;
  margin-top: 0.7vw;
  margin-bottom: 1.5vw;
}

#backBtn {
  float: left;
  background-color: #414141;
  cursor: pointer;
  width: 46.8%;
  text-align: center;
  border-radius: 99999px;
  color: #fff;
  transition: background-color 0.3s;
  margin: 0;
  font-weight: 600;
  letter-spacing: 0.1em;
  font-size: 0.87vw;
  border: solid 0.07vw #8b8b8b;
  margin-top: 1.85vw;
  margin-bottom: 3vw;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  padding-top: 0.3vw;
  line-height: normal;
  height: 2.5vw;
}

#submitBtn2 {
  float: right;
  background-color: #00c736;
  cursor: pointer;
  width: 46.8%;
  text-align: center;
  border-radius: 99999px;
  color: #fff;
  transition: background-color 0.3s;
  margin: 0;
  font-weight: 600;
  letter-spacing: 0.1em;
  font-size: 0.87vw;
  border: solid 0.07vw #8b8b8b;
  margin-top: 1.85vw;
  margin-bottom: 3vw;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  padding-top: 0.3vw;
  line-height: normal;
  height: 2.5vw;
}

#submitBtn2:hover {
  background-color: #ff9800;
}

.contact form:after {
  content: " ";
  display: block;
  visibility: hidden;
  height: 0;
  clear: both;
}

#errorBox2 {
  margin: 0;
  letter-spacing: 0.1em;
  font-size: 0.84vw;
  font-weight: 400;
  margin-top: 1.5vw;
  color: red;
}

/* thanks */

body.thanks {
  width: 100%;
  height: 100vh;
  position: relative;
}

.thanks #progress-bar-inner {
  background: none;
}

body.thanks .thanks_div h1 {
  position: absolute;
  top: 47.6%;
  left: 50%;
  transform: translate(-50%, -50%);
  letter-spacing: 0.1em;
  font-size: 1.73vw;
  color: #00c736;
  line-height: 1.95em;
  margin: 0;
}

body.thanks .thanks_div button {
  position: absolute;
  left: 50%;
  bottom: 12.9%;
  transform: translateX(-50%);
  background-color: #00c736;
  cursor: pointer;
  width: 15.25vw;
  text-align: center;
  border-radius: 99999px;
  color: #fff;
  transition: background-color 0.3s;
  margin: 0;
  font-weight: 600;
  letter-spacing: 0.1em;
  font-size: 0.87vw;
  border: solid 0.07vw #8b8b8b;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  padding-top: 0.3vw;
  line-height: normal;
  height: 2.5vw;
}

body.thanks .thanks_div button:hover {
  background-color: #ff9800;
}

body.thanks .thanks_div::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    to right,
    rgba(48, 216, 100, 0.25),
    rgba(255, 255, 0, 0.25),
    rgba(255, 157, 0, 0.25)
  );
  z-index: 0;
}

/* voice */

body.voice-detail {
  background: #fff;
}

.voice-main {
  width: 50%;
  margin: 0 auto;
  padding: 7.2vw 1.2vw 4.2vw;
  box-sizing: border-box;
}

.voice-case {
  border: solid 0.08vw #b7b7b7;
  background: #fff;
  box-sizing: border-box;
}

.voice-case-title {
  margin: 0;
  padding: 0.8vw 1.35vw 0.9vw;
  background: #00b050;
  color: #fff;
  font-size: 1.45vw;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.03em;
}

.voice-section {
  position: relative;
  padding-top: 0.75vw;
}

.voice-section:first-of-type {
  padding-top: 0;
}

.voice-section-label {
  display: inline-block;
  position: relative;
  z-index: 2;
  margin: 0 0 -0.5vw 1vw;
  padding: 0.18vw 0.95vw 0.22vw;
  min-width: 6.2vw;
  box-sizing: border-box;
  color: #fff;
  font-size: 0.88vw;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.03em;
  text-align: left;
  top: 0.5vw;
}

.voice-section-body {
  position: relative;
  z-index: 1;
  margin-top: -0.32vw;
  padding: 0.9vw 1vw 0.95vw;
  box-sizing: border-box;
  margin: 0.2vw;
}

.voice-section-body p,
.voice-section-body li {
  margin: 0;
  color: #333;
  font-size: 0.88vw;
  font-weight: 400;
  line-height: 1.85;
  letter-spacing: 0.01em;
}

.voice-section-body ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.voice-section-body li {
  position: relative;
  padding-left: 1em;
}

.voice-section-body li::before {
  content: "-";
  position: absolute;
  top: 0;
  left: 0;
}

.customer .voice-section-body {
  background: #fff;
  padding-top: 0.7vw;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}

.voice-section.customer .voice-section-body p {
  margin-bottom: 0.15vw;
  font-weight: 500;
}

.voice-section.before .voice-section-label {
  background: #9b9b9b;
}

.voice-section.before .voice-section-body {
  background: #efefef;
}

.voice-section.after .voice-section-label {
  background: #10c255;
}

.voice-section.after .voice-section-body {
  background: #dff9d9;
}

.voice-section.comment .voice-section-label {
  background: #f5a623;
}

.voice-section.comment .voice-section-body {
  background: #fff1cf;
}

.voice-back {
  text-align: center;
  margin-top: 2.3vw;
}

.voice-back a {
  display: inline-block;
  text-decoration: none;
  background: #00c736;
  color: #fff;
  border-radius: 9999px;
  padding: 0.95vw 2.4vw;
  font-size: 0.95vw;
  font-weight: 700;
  letter-spacing: 0.08em;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.voice-back a:hover {
  background: #ff9800;
}

/*pc none*/
@media screen and (min-width: 769px) {
  .menu-trigger {
    display: none !important;
  }
  #overlay {
    display: none !important;
  }
  .contant_right {
    display: block !important;
  }
}

/* sp */
@media screen and (max-width: 768px) {
  /* pc_none */
  .pc_br {
    display: none;
  }
  .pc_div {
    display: none;
  }
  .pc_img {
    display: none;
  }

  /* sp_block */
  .sp_br {
    display: block;
  }
  .sp_div {
    display: block;
  }
  .sp_img {
    display: inline;
  }

  .js-fade {
    top: 10vw;
  }

  .scroll {
    top: 0;
  }

  /* sp_header */
  .nav {
    display: none;
  }

  .nav_right {
    display: none;
  }

  .header {
    text-align: center;
    z-index: 9999;
  }

  .header_img {
    width: 42.1vw;
    margin-left: 0;
    margin-top: 2.2vw;
    float: none;
    margin-bottom: 2.2vw;
  }

  #progress-bar {
    height: 1vw;
  }

  /* sp_contant  */

  .contant {
    display: block;
    clear: both;
    padding-top: 14.1vw;
    width: 100%;
  }

  .contant_left {
    width: 100%;
    overflow: hidden;
  }

  .contant_right {
    width: 100%;
    border-left: solid 0.3vw #00c736;
    background-color: #fffff4;
  }

  /* bottom_fix_sp */

  .bottom_fix_sp.active {
    z-index: 997;
  }

  .bottom_fix_sp.active2 {
    z-index: 999;
  }

  .bottom_fix_sp {
    display: flex;
    height: 18.95vw;
    position: relative;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
  }

  .bottom_fix_sp .left {
    background-color: #ff9801;
    width: 60.2%;
    height: 100%;
    border-radius: 4.5vw 4.5vw 0 0;
    position: relative;
    cursor: pointer;
  }

  .bottom_fix_sp .right {
    background-color: #00c736;
    width: 39.8%;
    height: 100%;
    border-radius: 4.5vw 4.5vw 0 0;
    position: relative;
    cursor: pointer;
  }

  .bottom_fix_sp p {
    margin: 0;
    padding: 0;
    font-size: 4.13vw;
    line-height: 2.1em;
    color: #fff;
    margin-top: 5vw;
    font-weight: 700;
  }

  .bottom_fix_sp .left p {
    margin-left: 11.2vw;
    letter-spacing: 0.1em;
  }

  .bottom_fix_sp .right p {
    margin-left: 9vw;
    letter-spacing: 0.1em;
  }

  .bottom_fix_sp .left img {
    position: absolute;
    right: 11.4vw;
    top: 5.8vw;
    width: 6.15vw;
    padding: 0;
  }

  .bottom_fix_sp .right img {
    position: absolute;
    right: 8.6vw;
    top: 6.6vw;
    width: 4.45vw;
    padding: 0;
  }

  .bottom_fix_sp .right a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-decoration: none;
  }

  .bottom_fix_sp .left a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-decoration: none;
  }

  /* sp_page1 */

  .page1 {
    background-image: url("img/sp/page1_bg_sp.png");
    height: 136vw;
  }

  .page1 .left {
    float: none;
    margin: auto;
    padding-top: 7.1vw;
    text-align: center;
  }

  .page1 .right {
    float: none;
    width: 79.8vw;
    margin: auto;
    position: relative;
    text-align: center;
    margin-top: 6.2vw;
  }

  .page1 h1 {
    line-height: 1.7em;
    font-size: 5.2vw;
    letter-spacing: 0.1em;
  }

  .page1 h1 .small {
    font-size: 5.2vw;
    font-weight: 700;
    line-height: 1.7em;
    text-align: left;
    display: inline-block;
  }

  .page1 h1 .big {
    font-size: 9.75vw;
    margin-left: 5.1vw;
    white-space: nowrap;
    padding-top: 0.3vw;
  }

  .page1 h1 .line1 {
    margin-right: 0;
  }

  .page1 h1 .line2 {
    margin-left: 0;
  }

  .page1 h1 .line1::after {
    left: -0.6vw;
    width: 100%;
    height: 2.55vw;
    bottom: 0vw;
  }

  .page1 h1 .line2::after {
    left: -0.6vw;
    width: 100%;
    height: 2.55vw;
    bottom: 0vw;
  }

  .page1 h1 .line3::after {
    width: 90.8%;
    height: 2.55vw;
    bottom: 0vw;
    left: -1.3vw;
  }

  .page1 .right p {
    font-size: 3.35vw;
    font-weight: 700;
    letter-spacing: 0.1em;
  }

  .page1 .right .text1 {
    top: 49.9%;
    left: 6.2%;
  }

  .page1 .right .text2 {
    top: 49.9%;
  }

  .page1 .right .text3 {
    top: 49.9%;
    right: 5.4%;
  }

  /* sp_page2 */
  .page2 {
    font-weight: 700;
    text-align: center;
  }

  .page2 > img {
    padding-top: 4vw;
    width: 80%;
    margin: auto;
    text-align: center;
  }

  .page2 h2 {
    letter-spacing: 0.045em;
    font-size: 4.28vw;
    padding-top: 15.2vw;
    font-weight: 700;
    width: 80%;
    margin: auto;
    text-align: left;
    white-space: nowrap;
  }

  .page2 p {
    letter-spacing: 0.045em;
    font-size: 4.13vw;
    line-height: 2.1em;
    padding-top: 7.45vw;
    padding-bottom: 15.9vw;
    width: 78.3%;
    margin: auto;
    text-align: left;
  }

  /* sp_page3 */

  .page3456 {
    background-image: url("img/sp/page3456_bg_sp.png");
  }

  .page3 {
    font-weight: 700;
    padding-top: 13.35vw;
    margin-bottom: 10.6vw;
  }

  .page3_div1 {
    margin-bottom: 0;
  }

  .page3_div2 {
    width: 84.1vw;
    margin-top: 6.6vw;
    z-index: 1;
    padding-right: 3.5vw;
    animation: fluffy-sp 3s infinite;
  }

  .page3_div2 p {
    font-size: 4.15vw;
    line-height: 1.81em;
    letter-spacing: 0.045em;
  }

  .page3_div2 .text1 {
    top: 8.9vw;
    left: 13.8vw;
  }

  .page3_div2 .text2 {
    top: 50.8%;
    left: auto;
    right: 11.1vw;
    transform: translate(0, -50%);
  }

  .page3_div2 .text3 {
    top: auto;
    right: auto;
    bottom: 9.8vw;
    left: 9.8vw;
  }

  .page3_div1 h2 {
    letter-spacing: 0.045em;
    font-size: 5.7vw;
    font-weight: 700;
    line-height: 1.65em;
  }
  .page3_div1 h2 .span1 {
    margin-right: 1.6vw;
    margin-left: 1.6vw;
  }

  .page3_div1 .page3_img1_1 {
    width: 6.3vw;
    left: -11vw;
    top: 0.65vw;
  }

  .page3_div1 .page3_img1_2 {
    width: 6.3vw;
    left: auto;
    right: -11.1vw;
    bottom: 2vw;
  }

  .page3_div1 h2 .span1::after {
    width: 100.8%;
    height: 2.6vw;
    bottom: 0.4vw;
    left: -0.4vw;
  }

  .page3_img3 {
    width: 43.75vw;
    position: absolute;
    right: 3.7vw;
    bottom: 0vw;
    z-index: 2;
    margin: 0;
  }

  /* sp_page4 */
  .page4 {
    clip-path: polygon(0% 0%, 50% 18.65vw, 100% 0%, 100% 100%, 0% 100%);
  }

  .page4_1 {
    padding-top: 33vw;
  }

  .page4_1_div {
    width: 63.6%;
    margin-left: 2.9%;
    margin-top: 0;
  }

  .page4_1 .img2 {
    width: 26.2%;
    margin-right: 4.5%;
    margin-top: 3.8vw;
  }

  .page4_1_div p {
    letter-spacing: 0.045em;
    font-weight: 700;
  }

  .page4_1_div .text1 {
    top: 7.9vw;
    left: 12.5vw;
    font-size: 5.68vw;
    line-height: 1.63em;
  }

  .page4_1_div .text2 {
    top: 4.47vw;
    left: 6.4vw;
    font-size: 3.37vw;
  }

  .page4_1_div .img1_2 {
    width: 4.6vw;
    top: 15.4vw;
    left: 9vw;
  }

  .page4_2_div1 {
    border: solid 0.5vw #ff9800;
    border-radius: 0 12vw 0 0;
    box-shadow: 1.4vw 1.4vw #ff9800;
    margin: auto;
    width: calc(78.2% - 1.4vw);
    float: none;
    transform: translate(-30vw);
    margin-top: 9.9vw;
    box-sizing: border-box;
    margin-left: 10.9%;
  }

  .page4_2_div2 {
    border: solid 0.5vw #00c736;
    border-radius: 0 12vw 0 0;
    box-shadow: 1.4vw 1.4vw #00c736;
    margin: auto;
    width: calc(78.2% - 1.4vw);
    float: none;
    transform: translate(30vw);
    margin-top: 9.4vw;
    box-sizing: border-box;
    margin-left: 10.9%;
  }

  .page4_2_div3 {
    border: solid 0.5vw #ffc400;
    border-radius: 0 12vw 0 0;
    box-shadow: 1.4vw 1.4vw #ffc400;
    margin: auto;
    width: calc(78.2% - 1.4vw);
    float: none;
    transform: translate(-30vw);
    margin-top: 9.4vw;
    box-sizing: border-box;
    margin-left: 10.9%;
  }

  .page4_2 p {
    margin: 0;
    padding: 0;
    letter-spacing: 0.045em;
    color: #414141;
    font-weight: 500;
    font-size: 3.61vw;
    line-height: 2.05em;
    width: 77%;
  }

  .page4_2 p span {
    display: block;
    font-size: 4.95vw;
    font-weight: 700;
    margin-bottom: 4.25vw;
  }

  .page4_2_div1 .text {
    margin-left: 9.8vw;
    margin-top: 9.2vw;
    margin-bottom: 6.55vw;
  }

  .page4_2_div2 .text {
    margin-left: 9.8vw;
    margin-top: 9.2vw;
    margin-bottom: 6.55vw;
  }

  .page4_2_div3 .text {
    margin-left: 9.8vw;
    margin-top: 9.2vw;
    margin-bottom: 6.55vw;
  }

  .page4_2_div1 .img1 {
    width: 10.7vw;
    position: absolute;
    left: -2.8vw;
    top: -2.1vw;
  }

  .page4_2_div2 .img1 {
    width: 10.7vw;
    position: absolute;
    left: -2.8vw;
    top: -2.1vw;
  }

  .page4_2_div3 .img1 {
    width: 10.7vw;
    position: absolute;
    left: -2.8vw;
    top: -2.1vw;
  }

  .page4_2_div1 .img2 {
    width: 5.4vw;
    right: 3.95vw;
    top: auto;
    bottom: 3.6vw;
  }

  .page4_2_div2 .img2 {
    width: 10.6vw;
    right: 1.88vw;
    top: auto;
    bottom: 2.3vw;
    transform: rotate(12deg);
  }

  .page4_2_div3 .img2 {
    width: 8.9vw;
    right: 2.8vw;
    top: auto;
    bottom: 3.2vw;
  }

  .page4_3 {
    padding-top: 24.9vw;
  }

  .page4_3 .img1 {
    width: 20.3vw;
    top: -9.3vw;
  }

  .page4_3 h2 {
    letter-spacing: 0.045em;
    font-size: 5.7vw;
    font-weight: 700;
    line-height: 1.65em;
  }

  .page4_3_div_div {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 4.9vw;
    position: relative;
  }

  .page4_3_div {
    width: 78.2%;
    margin: auto;
    margin-top: 7.2vw;
    padding-bottom: 10.85vw;
  }

  .page4_3_div_div > p {
    font-weight: 700;
    font-size: 4.15vw;
    letter-spacing: 0.045em;
    margin: 0;
    white-space: nowrap;
    position: static;
    left: 0%;
    transform: none;
    bottom: auto;
    top: auto;
    width: 100%;
    height: auto;
    background-color: #00c736;
    border-radius: 5.5vw 0 0 0;
    color: #fff;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    line-height: 1.5em;
    padding-top: 2.6vw;
    padding-bottom: 2vw;
    cursor: pointer;
  }

  .page4_3_div_div > p::before {
    content: "";
    display: block;
    width: 6.2vw;
    height: 6.2vw;
    position: absolute;
    top: 2.2vw;
    right: 1.5vw;
    background-image: url("img/sp/page4_3_ plus.png");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }

  .onimg:hover p {
    opacity: 0;
  }

  .onimg.active p {
    opacity: 1;
  }

  .page4_3_div_div > p.active {
    background-color: #ff9800;
  }

  .page4_3_div_div > p.active::before {
    transform: rotate(45deg);
  }

  .onimg p {
    font-weight: 500;
    font-size: 3.61vw;
    letter-spacing: 0.045em;
    line-height: 2.05em;
  }

  .onimg p span {
    width: 71%;
  }

  /* sp_page5 */

  .page5 {
    text-align: center;
    clear: both;
    padding-top: 13.35vw;
    padding-bottom: 0;
  }

  .page5 h2 {
    letter-spacing: 0.045em;
    font-size: 5.7vw;
    font-weight: 700;
    margin-top: 0;
  }

  .page5_div1 {
    width: 78.2%;
    margin: auto;
    margin-top: 7.6vw;
    padding-bottom: 5vw;
  }

  .page5_div1 > div {
    float: none;
    width: 100%;
    margin-right: 0;
    background-color: #fff;
    box-sizing: border-box;
    border-radius: 5vw;
    overflow: hidden;
    margin-bottom: 5.1vw;
  }

  .page5_div1_1 {
    border: solid 0.5vw #ff9800;
  }

  .page5_div1_2 {
    border: solid 0.5vw #ffc400;
  }

  .page5_div1_3 {
    border: solid 0.5vw #00c736;
  }

  .page5_div1 h3 {
    margin: 0;
    font-weight: 700;
    font-size: 4.9vw;
    letter-spacing: 0.045em;
    color: #fff;
    height: 9.5vw;
    padding-top: 1.9vw;
  }

  .page5_div1 p {
    margin: 0;
    font-weight: 700;
    letter-spacing: 0.045em;
  }

  .page5_div1 p.p1 {
    font-size: 4.15vw;
    color: #414141;
    padding-top: 3.8vw;
  }

  .page5_div1 p span.span1::after {
    position: absolute;
    content: "";
    width: 105.6%;
    height: 7vw;
    background: #ffff03;
    bottom: -0.6vw;
    left: -0.5vw;
    z-index: -1;
  }

  .page5_div1 p span.yen {
    font-size: 5vw;
    color: #414141;
    display: inline-block;
    vertical-align: 0.25vw;
    margin-left: 1.5vw;
  }

  .page5_div1_1 p.p2 {
    font-size: 13.35vw;
    padding-top: 0;
    line-height: 1.05em;
  }

  .page5_div1_2 p.p2 {
    font-size: 13.35vw;
    padding-top: 0;
    line-height: 1.05em;
  }

  .page5_div1_3 p.p2 {
    font-size: 13.35vw;
    padding-top: 0;
    line-height: 1.05em;
  }

  .page5_div1 p.p3 {
    color: #414141;
    font-size: 3.1vw;
    text-align: right;
    margin-right: 1.6vw;
    padding-top: 0vw;
    padding-bottom: 2.3vw;
    line-height: 1.6em;
  }

  .page5_div2 {
    width: 100%;
    border-top: solid 0 #8b8b8b;
    border-bottom: solid 0.32vw #8b8b8b;
    border-left: solid 0.32vw #8b8b8b;
    border-right: solid 0.32vw #8b8b8b;
  }

  .page5_div2 .center-line {
    display: none;
  }

  .page5_div2 .left {
    float: none;
    width: 100%;
    box-sizing: border-box;
    border-bottom: solid 0.3vw #8b8b8b;
  }

  .page5_div2 .right {
    float: none;
    width: 100%;
    box-sizing: border-box;
  }

  .page5_div2 h3 {
    margin: 0;
    color: #fff;
    background-color: #8b8b8b;
    font-weight: 700;
    letter-spacing: 0.07em;
    line-height: 2em;
    font-size: 4.15vw;
    padding-top: 4.5vw;
    padding-bottom: 3.5vw;
  }

  .page5_div2 .left p {
    text-align: left;
    font-weight: 500;
    letter-spacing: 0.1em;
    font-size: 3.62vw;
    line-height: 2.05em;
    color: #414141;
    width: 78.2%;
    margin: auto;
    margin-top: 6.7vw;
    margin-bottom: 5.7vw;
  }

  .page5_div2 .right p {
    text-align: left;
    font-weight: 500;
    letter-spacing: 0.1em;
    font-size: 3.62vw;
    line-height: 2.05em;
    color: #414141;
    width: 78.2%;
    margin: auto;
    margin-top: 6.7vw;
    margin-bottom: 5.7vw;
  }

  .page5_div2 .left p span {
    font-weight: 700;
    font-size: 4.15vw;
    color: #414141;
  }

  .page5_div2 .right p span {
    font-weight: 700;
    font-size: 4.15vw;
    color: #414141;
  }

  /* sp_page7 */

  .page7 {
    padding-top: 10vw;
    padding-bottom: 12vw;
  }

  .page7 h2 {
    letter-spacing: 0.045em;
    font-size: 5.7vw;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 0;
  }

  .slider_outer {
    overflow: hidden;
    padding-top: 4vw;
  }

  .slick-list {
    overflow: hidden !important;
    padding: 4vw 9vw 0 !important;
  }

  .slider .slick-slide {
    width: 80vw;
    margin: 0 1.5vw;
  }

  .slider_div_div {
    height: 62vw;
    background-size: 100% 100%;
    background-position: center;
  }

  .slider_div_div div {
    padding: 7vw 6vw;
    height: auto;
  }

  .slider_div_div img {
    width: 11vw;
    top: -2vw;
    left: -2vw;
  }

  .slider_div_div h3 {
    font-size: 4.2vw;
    line-height: 1.5;
  }

  .slider_div_div p {
    font-size: 3.6vw;
    line-height: 1.8;
    padding-top: 2.5vw;
    -webkit-line-clamp: 5;
    line-clamp: 5;
  }

  .slider-controls {
    margin-top: 7vw;
    gap: 3vw;
  }

  .slider-controls .slick-prev-div,
  .slider-controls .slick-next-div {
    width: 8vw;
    height: 8vw;
  }

  .slider-controls .slick-prev,
  .slider-controls .slick-next {
    width: 3.2vw;
  }

  .slider-controls .dots-area {
    min-width: auto;
    padding: 0 3vw;
  }

  .slick-dots li button {
    width: 1.8vw;
    height: 1.8vw;
  }

  /* sp_footer */

  .footer {
    height: 95vw;
    border-top: solid 0.6vw #00c736;
    position: relative;
  }

  .footer a {
    text-decoration: none;
    color: #414141;
  }

  .footer span.line {
    display: none;
  }

  .footer span.line2 {
    display: none;
  }

  .footer span.span1 {
    display: block;
  }

  .footer span.span2 {
    display: block;
  }

  .footer img {
    width: 74vw;
    float: none;
    margin-top: 9.8vw;
    margin-left: 10.65vw;
  }

  .footer .right {
    float: none;
    text-align: left;
    width: 78.7%;
    margin: auto;
    margin-top: 5.05vw;
  }

  .footer .p2 a {
    margin-left: 0;
    display: block;
  }

  .footer p {
    margin-top: 1.75vw;
    letter-spacing: 0.1em;
    font-size: 3.62vw;
    line-height: 2.05em;
    font-weight: 500;
  }

  .footer b {
    font-weight: 700;
  }

  .footer .p2 {
    margin-top: 6.3vw;
    font-size: 3.15vw;
    line-height: 2.5em;
  }

  .footer .backtop {
    position: absolute;
    right: 10.1vw;
    bottom: 28.8vw;
    width: 9.3vw;
    height: 9.3vw;
    cursor: pointer;
  }

  .footer .backtop::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #00c736;
    border-radius: 50%;
    z-index: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }

  .footer .backtop img {
    background: none;
    border: none;
    width: 4vw;
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
  }

  /* sp_nav */

  .menu-trigger,
  .menu-trigger span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
  }

  .menu-trigger {
    position: fixed;
    top: 2.05vw;
    right: 4.8vw;
    width: 10vw;
    height: 8vw;
    z-index: 9999;
    cursor: pointer;
  }

  .menu-trigger span {
    position: absolute;
    z-index: 9999;
    left: 1.7vw;
    width: 6.5vw;
    height: 0.5vw;
    background-color: #00c736;
    border-radius: 0px;
  }

  .menu-trigger span:nth-of-type(1) {
    top: 1.8vw;
  }

  .menu-trigger span:nth-of-type(2) {
    top: 50%;
    transform: translateY(-50%);
  }

  .menu-trigger span:nth-of-type(3) {
    bottom: 1.8vw;
  }

  .menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(1.95vw) rotate(-45deg);
    transform: translateY(1.95vw) rotate(-45deg);
    width: 8vw;
    left: 0.8vw;
  }

  .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }

  .menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-1.95vw) rotate(45deg);
    transform: translateY(-1.95vw) rotate(45deg);
    width: 8vw;
    left: 0.8vw;
  }

  #overlay {
    display: none;
    width: 100%;
    height: 100%;
    text-align: left;
    position: fixed;
    top: 0;
    left: 0;
    opacity: 1;
    z-index: 999;
    padding: 0px;
    background-color: #fff;
  }

  #overlay::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
      to right,
      rgba(48, 216, 100, 0.25),
      rgba(255, 255, 0, 0.25),
      rgba(255, 157, 0, 0.25)
    );
    z-index: 0;
  }

  .overlay_nav {
    width: 78.2%;
    margin: auto;
    padding-top: 14.1vw;
    z-index: 1;
    position: relative;
  }

  .overlay_nav_outer {
    width: 100%;
    height: calc(100vh - 18.95vw);
    overflow-y: auto;
  }

  .overlay_nav p.p1 {
    margin: 0;
    font-size: 4.88vw;
    letter-spacing: 0.1em;
    color: #414141;
    font-weight: 500;
    padding-bottom: 5vh;
    padding-top: 8.5vh;
  }

  .overlay_nav p.p1 a {
    margin-bottom: 2vh;
    display: block;
  }

  .overlay_nav p.p1 a.margin1 {
    margin-bottom: 5vh;
  }

  .overlay_nav p.p1 a.margin2 {
    margin-bottom: 0vh;
  }

  .overlay_nav p.p1 span {
    font-size: 3.42vw;
  }

  .overlay_nav p.p2 {
    margin: 0;
    font-size: 3.42vw;
    letter-spacing: 0.1em;
    color: #414141;
    font-weight: 500;
    line-height: 2.15em;
    margin-bottom: 5vh;
  }

  .overlay_nav a {
    text-decoration: none;
    color: #414141;
  }

  .overlay_nav b {
    font-weight: 700;
  }

  #overlay .img1 {
    position: absolute;
    top: 43.65vh;
    right: 6%;
    width: 35.1vw;
  }

  .overlay_bottom {
    display: flex;
    height: 18.95vw;
    z-index: 1;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
  }
  .overlay_bottom .left {
    background-color: #ff9801;
    width: 60.2%;
    height: 100%;
    border-radius: 4.5vw 4.5vw 0 0;
    position: relative;
    cursor: pointer;
  }

  .overlay_bottom .right {
    background-color: #00c736;
    width: 39.8%;
    height: 100%;
    border-radius: 4.5vw 4.5vw 0 0;
    position: relative;
    cursor: pointer;
  }

  .overlay_bottom p {
    margin: 0;
    padding: 0;
    font-size: 4.13vw;
    line-height: 2.1em;
    color: #fff;
    margin-top: 5vw;
  }

  .overlay_bottom .left p {
    margin-left: 11.2vw;
    letter-spacing: 0.1em;
    font-weight: 700;
  }

  .overlay_bottom .right p {
    margin-left: 9vw;
    letter-spacing: 0.1em;
    font-weight: 700;
  }

  .overlay_bottom .left img {
    position: absolute;
    right: 11.4vw;
    top: 5.8vw;
    width: 6.15vw;
    padding: 0;
  }

  .overlay_bottom .right img {
    position: absolute;
    right: 8.6vw;
    top: 6.6vw;
    width: 4.45vw;
    padding: 0;
  }

  .overlay_bottom .right a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-decoration: none;
  }

  /* sp_contact */

  .contant_right {
    display: none;
    width: 100%;
    height: calc(100% - 14.1vw);
    text-align: left;
    position: fixed;
    top: 14.1vw;
    left: 0;
    opacity: 1;
    z-index: 998;
    padding: 0px;
    background: rgba(0, 0, 0, 0.6);
    border-left: solid 0vw #00c736;
    overflow: scroll;
  }

  .contant_right.active {
    display: block;
  }

  .contact {
    position: relative;
    top: auto;
    text-align: center;
    background-color: #fffff4;
    margin: 5.8vw 4.7vw 10vw 4.7vw;
    width: calc(100% - 9.4vw);
    box-sizing: border-box;
    border-radius: 7vw;
    height: auto;
    overflow-y: visible;
  }

  .contact .cross {
    position: absolute;
    top: 8.7vw;
    right: 5.15vw;
    width: 6.1vw;
    cursor: pointer;
  }

  .contact h2 {
    font-weight: 700;
    font-size: 5.18vw;
    line-height: 1.7em;
    margin-bottom: 8.5vw;
    letter-spacing: 0.07em;
    padding-top: 8.3vw;
  }

  .contact form {
    text-align: left;
    width: 87.5%;
    margin: auto;
  }

  .contact p {
    font-weight: 700;
    letter-spacing: 0.1em;
    font-size: 3.32vw;
    margin-top: 4.15vw;
  }

  .contact p strong {
    padding-left: 5vw;
    font-weight: 700;
  }

  .contact p strong span {
    font-size: 2.65vw;
    margin-left: 1vw;
  }

  .contact p.required::before {
    left: 0.8vw;
    top: 1.6vw;
    width: 2.75vw;
    height: 2.75vw;
  }

  .contact input[type="text"] {
    font-weight: 500;
    margin-bottom: 0px;
    border: solid 0.3vw #8b8b8b;
    margin-top: 1.2vw;
    height: 10.6vw;
    letter-spacing: 0.1em;
    font-size: 3.32vw;
    padding: 0vw 4.8vw 0vw 4.8vw;
  }

  .contact input[type="email"] {
    font-weight: 500;
    margin-bottom: 0px;
    border: solid 0.3vw #8b8b8b;
    margin-top: 1.2vw;
    height: 10.6vw;
    letter-spacing: 0.1em;
    font-size: 3.32vw;
    padding: 0vw 4.8vw 0vw 4.8vw;
  }

  .contact textarea {
    font-weight: 500;
    margin-bottom: 0px;
    border: solid 0.3vw #8b8b8b;
    margin-top: 1.2vw;
    height: 36.9vw;
    letter-spacing: 0.1em;
    font-size: 3.32vw;
    padding: 2.8vw 4.8vw;
    border-radius: 5.5vw;
  }

  .contact span.checkbox2 {
    margin-left: 4vw;
  }

  .contact span.checkbox2 span.text {
    margin-left: 10.7vw;
    font-weight: 500;
  }

  .contact span.checkbox2 .label::before {
    border: solid 0.3vw #8b8b8b;
    height: 5.9vw;
    left: 0;
    margin-top: -2.8vw;
    width: 5.9vw;
  }

  .contact span.checkbox2 .label::after {
    top: -2.6vw;
    left: 0.75vw;
    width: 7.85vw;
    height: 7.85vw;
  }

  .contact p.checkbox.agree {
    width: auto;
    margin-top: 10.75vw;
    margin-bottom: 0vw;
    margin-left: 3.4vw;
  }

  .contact p.checkbox.agree2 {
    width: auto;
    margin-top: 4.15vw;
    margin-bottom: 7.7vw;
    margin-left: 3.4vw;
  }

  .contact p.checkbox span.text {
    margin-left: 10.7vw;
    font-weight: 500;
  }

  .contact p.checkbox label::before {
    border: solid 0.3vw #8b8b8b;
    height: 5.9vw;
    left: 0;
    margin-top: -2.8vw;
    width: 5.9vw;
  }

  .contact p.checkbox label::after {
    top: -2.6vw;
    left: 0.75vw;
    width: 7.85vw;
    height: 7.85vw;
  }

  .contact p.checkbox span.text a {
    border-bottom: solid 0.3vw #414141;
    padding-bottom: 0.2vw;
  }

  #submitBtn {
    background-color: #9f9d97;
    margin: 0;
    font-weight: 700;
    font-size: 3.87vw;
    border: solid 0.3vw #707070;
    margin-top: 1.85vw;
    margin-bottom: 9.3vw;
    padding-top: 0.3vw;
    line-height: normal;
    height: 10.6vw;
    letter-spacing: 0.07em;
  }

  #errorBox {
    margin-top: 0vw;
    margin-bottom: 1vw;
    font-weight: 500;
    font-size: 3.32vw;
  }

  /* sp_confirmation */

  .contact p strong.strong2 {
    padding-left: 5vw;
    font-weight: 500;
    display: block;
    line-height: 1.9em;
    margin-top: 3.6vw;
    margin-bottom: 6.2vw;
  }

  .contact p.checkbox.confirmation.agree {
    margin-top: 11.4vw;
  }

  .form_confirmation p.margin {
    margin-bottom: 6.2vw;
  }

  #backBtn {
    font-weight: 700;
    font-size: 3.87vw;
    border: solid 0.3vw #707070;
    margin-top: 1.85vw;
    margin-bottom: 9.3vw;
    padding-top: 0.3vw;
    line-height: normal;
    height: 10.6vw;
    letter-spacing: 0.07em;
    white-space: nowrap;
  }

  #submitBtn2 {
    font-weight: 700;
    font-size: 3.87vw;
    border: solid 0.3vw #707070;
    margin-top: 1.85vw;
    margin-bottom: 9.3vw;
    padding-top: 0.3vw;
    line-height: normal;
    height: 10.6vw;
    letter-spacing: 0.07em;
    white-space: nowrap;
  }

  /* sp_thanks */

  body.thanks {
    width: 100%;
    height: 100%;
    position: relative;
  }

  body.thanks .thanks_div {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
  }

  body.thanks .thanks_div h1 {
    top: 50.5%;
    font-size: 5.7vw;
    line-height: 2em;
    letter-spacing: 0.07em;
    white-space: nowrap;
  }

  body.thanks .thanks_div button {
    font-weight: 700;
    font-size: 3.87vw;
    border: solid 0.3vw #707070;
    padding-top: 0.3vw;
    line-height: normal;
    height: 10.6vw;
    letter-spacing: 0.07em;
    white-space: nowrap;
    width: 78.2%;
    bottom: 9.2%;
  }

  /** sp_voice */

  .voice-main {
    width: auto;
    padding: 21vw 3.3vw 10vw;
  }

  .voice-case {
    border-width: 0.3vw;
  }

  .voice-case-title {
    padding: 2.7vw 3.2vw 2.9vw;
    font-size: 4.8vw;
    line-height: 1.45;
  }

  .voice-section {
    border-top-width: 0.3vw;
    padding-top: 2.2vw;
  }

  .voice-section-label {
    margin: 0 0 -1.1vw 2.6vw;
    padding: 0.9vw 2.8vw 1.1vw;
    min-width: 21vw;
    font-size: 3.3vw;
  }

  .voice-section-body {
    margin-top: -0.7vw;
    padding: 3.1vw 2.6vw 3vw;
  }

  .voice-section.customer .voice-section-body {
    padding-top: 2.4vw;
    margin-top: 0;
  }

  .voice-section-body p,
  .voice-section-body li {
    font-size: 3.35vw;
    line-height: 1.8;
  }

  .voice-back {
    margin-top: 6vw;
  }

  .voice-back a {
    font-size: 3.8vw;
    padding: 2.8vw 6vw;
  }

  .slider_div_div::after {
    font-size: 3.6vw;
  }
}
