@charset "UTF-8";
.mv {
  position: relative;
  padding-left: 0;
  background: #fff;
}
.mv .slick01 {
  width: 100%;
  height: 86vh;
  opacity: 0;
  transition: opacity 0.3s linear;
}
.mv .slick01.slick-initialized {
  opacity: 1;
}
.mv .slick01-01 {
  width: 100%;
  height: 86vh;
  /*background: url("../../img/top/top-mv01_pc.jpg") top center no-repeat transparent;
  background-size: cover;*/
  background-image: url("../../img/top/top-logo_pc.png"), url("../../img/top/top-mv01_pc.jpg");
  background-position: top right, top center;
  background-size: 432px auto, cover;
  background-repeat: no-repeat, no-repeat;
}
.mv .slick01-02 {
  width: 100%;
  height: 86vh;
  /*background: url("../../img/top/top-mv02_pc.jpg") top center no-repeat transparent;
  background-size: cover;*/
  background-image: url("../../img/top/top-logo_pc.png"), url("../../img/top/top-mv02_pc.jpg");
  background-position: top right, top center;
  background-size: 432px auto, cover;
  background-repeat: no-repeat, no-repeat;
}
.mv .slick01-03 {
  width: 100%;
  height: 86vh;
  /*background: url("../../img/top/top-mv02_pc.jpg") top center no-repeat transparent;
  background-size: cover;*/
  background-image: url("../../img/top/top-logo_pc.png"), url("../../img/top/top-mv03_pc.jpg");
  background-position: top right, top center;
  background-size: 432px auto, cover;
  background-repeat: no-repeat, no-repeat;
}

.lottie {
  position: absolute;
  right: 80px;
  bottom: 45px;
}
.lottie svg {
  width: 200px;
  height: 200px;
}

.block01 {
  width: 100%;
  height: 757px;
  padding: 0 0 45px 100px;
  background: url("../../img/top/top-block01-bg01_pc.png") top left no-repeat #fff;
  background-size: 100% 590px;
}
.block01__inner {
  padding: 0 0 0 150px;
}
.block01__bg {
  width: 100%;
  height: 712px;
  background: url("../../img/top/top-block01-bg02_pc.png") bottom right 20px no-repeat transparent;
  background-size: 605px auto;
}
.block01__block {
  width: 100%;
  height: 314px;
  padding-top: 160px;
  background: url("../../img/top/top-block01-icon_pc.png") left top no-repeat transparent;
  background-size: 2px auto;
}
.block01__block-ttl {
  padding-left: 35px;
  color: #fff;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.02em;
  text-align: left;
}
.block01__block-txt {
  max-width: 625px;
  padding-top: 35px;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
  text-align: left;
}

.block02 {
  position: relative;
  z-index: -1;
  padding-left: 0;
}
.block02__image {
  width: 100%;
  height: 733px;
  background: 0;
}
.block02__image:before {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100vh;
  background-image: url("../../img/top/top-block02_bg_pc.jpg");
  background-position: left;
  background-size: cover;
  content: "";
}

.block03-2 {
  /*padding-left:150px;*/
  position: relative;
  padding-top: 160px;
  background: url(../../img/top/top-block03-bg_pc.jpg) left top no-repeat transparent;
  background-size: cover;
  /*&__center{
    width:32%;
    &__link{
      .view__link{
        text-align: right;
        padding-right:0;
      }
    }
  }*/
}
.block03-2 .box {
  width: 100%;
  height: 100vh;
}
.block03-2 .slick-list {
  padding: 0 0 !important;
}
.block03-2__block {
  position: relative;
  /*padding-left: calc((100% - 1100px)/2);*/
  height: 1070px;
  padding-left: 0;
}
.block03-2__image01 {
  position: absolute;
  top: 200px;
  left: calc((100% - 1100px) / 2 + 480px);
}
.block03-2__image02 {
  position: absolute;
  top: 500px;
  left: calc((100% - 1100px) / 2);
}
.block03-2__image03 {
  position: absolute;
  top: 770px;
  left: calc((100% - 1100px) / 2 + 555px);
}
.block03-2__table {
  display: flex;
  position: absolute;
  position: relative;
  z-index: 200;
  padding-left: calc((100% - 1100px) / 2);
  pointer-events: none;
  /*&.active{
    display:flex;
    position: sticky;
    top: 15%;
    animation: fadeInUpMin 0.7s linear 0s forwards;
    pointer-events:auto;
  }*/
}
.block03-2__left {
  width: auto;
  text-align: left;
  vertical-align: bottom;
}
.block03-2__left h2 {
  position: relative;
  font-size: 8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: left;
  /*animation: fadeInRightMin 0.7s linear 0s forwards;*/
}
.block03-2__left h2:after {
  position: absolute;
  bottom: -45px;
  left: 0;
  width: 88px;
  height: 15px;
  background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
  background-size: 88px auto;
  content: "";
}
.block03-2__left dt {
  position: relative;
  font-size: 8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: left;
  /*animation: fadeInRightMin 0.7s linear 0s forwards;*/
}
.block03-2__left dt:after {
  position: absolute;
  bottom: -45px;
  left: 0;
  width: 88px;
  height: 15px;
  background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
  background-size: 88px auto;
  content: "";
}
.block03-2__left-txt {
  max-width: 436px;
  padding-top: 90px;
  color: #30342e;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
  text-align: left;
}
.block03-2 .view__link {
  padding-top: 30px;
  padding-right: 0;
  text-align: left;
}
.block03-2__right {
  position: absolute;
  top: 0;
  right: 0;
  width: 112px;
  height: 690px;
  border-top: 2px solid #317023;
  background: url(../../img/common/common-side_pc.png) bottom center no-repeat transparent;
  background-size: cover;
  text-align: center;
}
.block03-2__right p {
  display: inline-block;
  height: 100%;
  color: #30342e;
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}

.block03 {
  /*padding-left:150px;*/
  position: relative;
  padding-top: 160px;
  padding-bottom: 320px;
  background: url(../../img/top/top-block03-bg_pc.jpg) left top repeat transparent;
  /*&__center{
    width:32%;
    &__link{
      .view__link{
        text-align: right;
        padding-right:0;
      }
    }
  }*/
}
.block03__table {
  display: flex;
  position: absolute;
  z-index: 200;
  padding-left: 200px;
  opacity: 0;
  pointer-events: none;
}
.block03__table.active {
  display: flex;
  position: sticky;
  top: 15%;
  opacity: 1;
  /*animation: fadeInUpMin2 0.7s linear 0s forwards;*/
  pointer-events: auto;
}
.block03__left {
  width: auto;
  padding: 50px 50px 50px 0;
  text-align: left;
  vertical-align: bottom;
}
.block03__left h2 {
  position: relative;
  font-size: 8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: left;
  /*animation: fadeInRightMin 0.7s linear 0s forwards;*/
}
.block03__left h2:after {
  position: absolute;
  bottom: -45px;
  left: 0;
  width: 88px;
  height: 15px;
  background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
  background-size: 88px auto;
  content: "";
}
.block03__left dt {
  position: relative;
  font-size: 8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: left;
  /*animation: fadeInRightMin 0.7s linear 0s forwards;*/
}
.block03__left dt:after {
  position: absolute;
  bottom: -45px;
  left: 0;
  width: 88px;
  height: 15px;
  background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
  background-size: 88px auto;
  content: "";
}
.block03__left-txt {
  max-width: 436px;
  padding-top: 90px;
  color: #30342e;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
  text-align: left;
}
.block03 .view__link {
  padding-top: 30px;
  padding-right: 0;
  text-align: left;
}
.block03__right {
  position: absolute;
  top: 0;
  right: 0;
  width: 112px;
  height: 690px;
  border-top: 2px solid #317023;
  background: url(../../img/common/common-side_pc.png) bottom center no-repeat transparent;
  background-size: cover;
  text-align: center;
}
.block03__right p {
  display: inline-block;
  height: 100%;
  color: #30342e;
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
  writing-mode: vertical-rl;
}
.block03 .block03-01 {
  position: relative;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding-bottom: 300px;
}
.block03__inner {
  padding: 0 0;
}
.block03__block {
  position: relative;
}
.block03__image01 {
  position: absolute;
  top: 200px;
  left: calc((100% - 1100px) / 2 + 480px);
  opacity: 0;
}
.block03__image01.is-type04 {
  position: absolute;
  top: 300px;
  left: calc((100% - 1100px) / 2 + 480px);
  opacity: 0;
}
.block03__image01.active {
  animation-name: fadeIn;
  animation-duration: 1s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03__image02 {
  position: absolute;
  top: 500px;
  left: calc((100% - 1100px) / 2 + 80px);
  opacity: 0;
}
.block03__image02.is-type04 {
  position: absolute;
  top: 550px;
  left: calc((100% - 1100px) / 2);
  opacity: 0;
}
.block03__image02.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.4s;
  animation-delay: 0.1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03__image02_2 {
  position: absolute;
  top: 220px;
  left: calc((100% - 1100px) / 2 + 120px);
  opacity: 0;
}
.block03__image02_2.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.4s;
  animation-delay: 0.1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03__image02_3 {
  position: absolute;
  top: 170px;
  left: calc((100% - 1100px) / 2 + 120px);
  opacity: 0;
}
.block03__image02_3.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.4s;
  animation-delay: 0.1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03__image03 {
  position: absolute;
  top: 770px;
  left: calc((100% - 1100px) / 2 + 555px);
  opacity: 0;
}
.block03__image03.is-type04 {
  position: absolute;
  top: 800px;
  left: calc((100% - 1100px) / 2 + 555px);
  opacity: 0;
}
.block03__image03.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.5s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03__image03_2 {
  position: absolute;
  top: 570px;
  left: calc((100% - 1100px) / 2 + 555px);
  opacity: 0;
}
.block03__image03_2.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.5s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03__image03_3 {
  position: absolute;
  top: 600px;
  left: calc((100% - 1100px) / 2 + 555px);
  opacity: 0;
}
.block03__image03_3.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.5s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03__image {
  /*margin-top:-170px;*/
  visibility: hidden;
  text-align: center;
  opacity: 0;
}
.block03__video {
  position: absolute;
  top: 0;
  left: 477px;
  opacity: 0;
}
.block03__video video {
  width: 624px;
  height: 100% !important;
  border-radius: 50%;
  text-align: center;
}

.block03-test {
  /*padding-left:150px;*/
  position: relative;
  padding-top: 160px;
  padding-bottom: 320px;
  background: url(../../img/top/top-block03-bg_pc.jpg) left top repeat transparent;
  /*background: url(../../img/top/top-block03-bg_pc.jpg) left top no-repeat transparent;
  background-size: cover;*/
  /*&__center{
    width:32%;
    &__link{
      .view__link{
        text-align: right;
        padding-right:0;
      }
    }
  }*/
}
.block03-test__table {
  display: flex;
  position: absolute;
  z-index: 200;
  padding-left: 200px;
  opacity: 0;
  pointer-events: none;
}
.block03-test__table.active {
  display: flex;
  position: sticky;
  top: 5%;
  transition: 1s;
  animation: fadeInUpMin 0.7s linear 0s forwards;
  animation: fadeIn 2.2s linear 0s forwards;
  pointer-events: auto;
}
.block03-test__left {
  width: auto;
  padding: 50px 0;
  text-align: left;
  vertical-align: bottom;
}
.block03-test__left h2 {
  position: relative;
  font-size: 8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: left;
  /*animation: fadeInRightMin 0.7s linear 0s forwards;*/
}
.block03-test__left h2:after {
  position: absolute;
  bottom: -45px;
  left: 0;
  width: 88px;
  height: 15px;
  background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
  background-size: 88px auto;
  content: "";
}
.block03-test__left dt {
  position: relative;
  font-size: 8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: left;
  /*animation: fadeInRightMin 0.7s linear 0s forwards;*/
}
.block03-test__left dt:after {
  position: absolute;
  bottom: -45px;
  left: 0;
  width: 88px;
  height: 15px;
  background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
  background-size: 88px auto;
  content: "";
}
.block03-test__left-txt {
  max-width: 436px;
  padding-top: 90px;
  color: #30342e;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
  text-align: left;
}
.block03-test .view__link {
  padding-top: 30px;
  padding-right: 0;
  text-align: left;
}
.block03-test__right {
  position: absolute;
  top: 0;
  right: 0;
  width: 112px;
  height: 690px;
  border-top: 2px solid #317023;
  background: url(../../img/common/common-side_pc.png) bottom center no-repeat transparent;
  background-size: cover;
  text-align: center;
}
.block03-test__right p {
  display: inline-block;
  height: 100%;
  color: #30342e;
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}
.block03-test .block03-01 {
  position: relative;
  width: 100%;
  max-width: 1100px;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 0;
}
.block03-test__inner {
  padding: 0 0;
}
.block03-test__block {
  position: relative;
}
.block03-test__image01 {
  position: absolute;
  top: 200px;
  left: calc((100% - 1100px) / 2 + 480px);
  opacity: 0;
}
.block03-test__image01.is-type04 {
  position: absolute;
  top: 300px;
  left: calc((100% - 1100px) / 2 + 480px);
  opacity: 0;
}
.block03-test__image01.active {
  animation-name: fadeIn;
  animation-duration: 1s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03-test__image02 {
  position: absolute;
  top: 500px;
  left: calc((100% - 1100px) / 2);
  opacity: 0;
}
.block03-test__image02.is-type04 {
  position: absolute;
  top: 550px;
  left: calc((100% - 1100px) / 2);
  opacity: 0;
}
.block03-test__image02.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.4s;
  animation-delay: 0.1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03-test__image02_2 {
  position: absolute;
  top: 220px;
  left: calc((100% - 1100px) / 2);
  opacity: 0;
}
.block03-test__image02_2.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.4s;
  animation-delay: 0.1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03-test__image02_3 {
  position: absolute;
  top: 250px;
  left: calc((100% - 1100px) / 2);
  opacity: 0;
}
.block03-test__image02_3.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.4s;
  animation-delay: 0.1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03-test__image03 {
  position: absolute;
  top: 720px;
  left: calc((100% - 1100px) / 2 + 555px);
  opacity: 0;
}
.block03-test__image03.is-type04 {
  position: absolute;
  top: 800px;
  left: calc((100% - 1100px) / 2 + 555px);
  opacity: 0;
}
.block03-test__image03.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.5s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03-test__image03_2 {
  position: absolute;
  top: 490px;
  left: calc((100% - 1100px) / 2 + 555px);
  opacity: 0;
}
.block03-test__image03_2.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.5s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03-test__image03_3 {
  position: absolute;
  top: 500px;
  left: calc((100% - 1100px) / 2 + 555px);
  opacity: 0;
}
.block03-test__image03_3.active {
  animation-name: fadeInUpMin;
  animation-duration: 1.5s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03-test__image {
  /*margin-top:-170px;*/
  visibility: hidden;
  text-align: center;
  opacity: 0;
}
.block03-test__video {
  position: absolute;
  top: 0;
  left: 477px;
  opacity: 0;
}
.block03-test__video video {
  width: 624px;
  height: 100% !important;
  border-radius: 50%;
  text-align: center;
}

.block04 {
  padding: 120px 0;
  background: #fff;
}
.block04__image {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding-right: 80px;
  text-align: right;
}

.block05 {
  padding: 0 0 150px;
  background: url("../../img/top/top-block05-bg_pc.jpg") bottom center no-repeat #fff;
  background-size: cover;
}
.block05__inner {
  position: relative;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding-top: 175px;
}
.block05__inner02 {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.block05__txt {
  position: absolute;
  top: 0;
  right: 0;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}
.block05__txt01 {
  display: inline-block;
  width: auto;
  padding: 25px 15px;
  background: #fff;
  color: #30342e;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
}
.block05__txt02 {
  display: inline-block;
  width: auto;
  margin-top: 40px;
  padding: 25px 15px;
  background: #fff;
  color: #30342e;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
}
.block05 h2 {
  color: #30342e;
  font-size: 6rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.08em;
  text-align: left;
}
.block05__block {
  width: 100%;
  font-size: 0;
  text-align: left;
}
.block05__list {
  display: inline-block;
  position: relative;
  width: 33.3%;
  margin-top: 60px;
  padding: 0 20px;
  vertical-align: top;
}
.block05__list.is-type2 {
  margin-top: 120px;
}
.block05__list:hover {
  opacity: 1;
}
.block05__image {
  position: absolute;
  top: 0;
  left: 20px;
  z-index: 2;
  width: 268px;
  height: 268px;
  overflow: hidden;
  border-radius: 50%;
}
.block05__image img {
  transition: 1s all;
}
.block05__icon {
  position: absolute;
  top: 135px;
  left: 230px;
  z-index: 3;
}
.block05__box {
  position: relative;
  width: 245px;
  height: 357px;
  margin-top: 25px;
  margin-left: auto;
  padding: 25px 25px;
  border-right: 1px solid #317023;
  background: #fff;
  text-align: right;
}
.block05__ttl {
  display: inline-block;
  color: #30342e;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}
.block05__link {
  position: absolute;
  right: 25px;
  bottom: 25px;
}
.block05__link a, .block05__link p {
  display: inline-block;
  height: 40px;
  padding-right: 65px;
  background-image: url(../../img/common/common-arrow_pc.png), url(../../img/common/common-circle_pc.png);
  background-position: right 23px center, right 11px center;
  background-size: 16px auto, 40px auto;
  background-repeat: no-repeat, no-repeat;
  color: #30342e;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  text-align: center;
  transition: 0.3s;
}

.block05__list:hover .block05__link a, .block05__list:hover .block05__link p {
  background-image: url(../../img/common/common-arrow_on_pc.png), url(../../img/common/common-circle_on_pc.png);
  background-position: right center, right 11px center;
  background-size: 16px auto, 40px auto;
  background-repeat: no-repeat, no-repeat;
  color: #be0000;
  cursor: pointer;
}

.block05__list:hover .block05__image img {
  transform: scale(1.1, 1.1);
  transition: 1s all;
}
.block06 {
  padding: 0 0 200px;
  background: url("../../img/top/top-block06-bg_pc.jpg") bottom center no-repeat #fff;
  background-size: cover;
}
.block06__inner {
  position: relative;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding-top: 175px;
}
.block06__inner02 {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.block06__txt {
  position: absolute;
  top: 0;
  right: 0;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}
.block06__txt01 {
  display: inline-block;
  width: auto;
  padding: 25px 15px;
  background: #fff;
  color: #30342e;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
}
.block06__txt02 {
  display: inline-block;
  width: auto;
  margin-top: 40px;
  padding: 25px 15px;
  background: #fff;
  color: #30342e;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
}
.block06 h2 {
  color: #30342e;
  font-size: 6rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.08em;
  text-align: left;
}
.block06__block {
  width: 100%;
  font-size: 0;
  text-align: left;
}
.block06__list {
  display: inline-block;
  position: relative;
  width: 33.3%;
  margin-top: 60px;
  padding: 15px 20px 0;
  vertical-align: top;
}
.block06__list.is-type2 {
  margin-top: 120px;
}
.block06__recipe {
  position: absolute;
  top: 0;
  left: 45px;
}
.block06__block02 {
  display: flex;
  width: 100%;
}
.block06__left {
  width: 240px;
  padding-bottom: 40px;
  background: #fff;
  vertical-align: top;
}
.block06__image {
  padding-top: 45px;
  text-align: center;
}
.block06__link {
  padding-top: 25px;
  text-align: center;
}
.block06__link a {
  display: inline-block;
  padding: 0 40px;
  border: 1px solid #707070;
  border-radius: 20px;
  color: #30342e;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  text-align: center;
}
.block06__right {
  width: 100px;
  padding-top: 25px;
  background: #f1f5dc;
  vertical-align: top;
}
.block06__txt03 {
  width: 100%;
  text-align: left;
  vertical-align: middle;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}
.block06__txt04 {
  display: inline-block;
  width: auto;
  padding-right: 25px;
  color: #679000;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.125;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}
.block06__txt05 {
  display: inline-block;
  width: auto;
  padding-right: 5px;
  color: #30342e;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}

.info {
  padding: 100px 0 120px;
  background: #fff;
}
.info__inner {
  position: relative;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}
.info__table {
  display: table;
  width: 100%;
}
.info__left {
  display: table-cell;
  width: 380px;
  padding-top: 20px;
  vertical-align: top;
}
.info__left h2 {
  color: #30342e;
  font-size: 6rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.08em;
  text-align: left;
}
.info__right {
  display: table-cell;
  width: 720px;
  vertical-align: top;
}
.info__right #info-container {
  width: 100%;
}
.info__right #info-container .info-list {
  width: 100%;
}
.info__right #info-container .info-list li {
  display: block;
  border-bottom: 1px solid #30342e;
}
.info__right #info-container .info-list li a {
  display: block;
  padding: 25px 40px 25px 0;
  background: url("../../img/common/common-arrow_pc.png") right 15px center no-repeat transparent;
  background-size: 16px auto;
  color: #30342e;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  text-align: left;
}
.info__right #info-container .info-list li a:hover {
  display: block;
  padding: 25px 40px 25px 0;
  background: url("../../img/common/common-arrow_on_pc.png") right center no-repeat transparent;
  background-size: 16px auto;
  color: #be0000;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  text-align: left;
}
.info__right #info-container .info-list li a:hover span {
  border: 1px solid #be0000;
  color: #be0000;
}
.info__right #info-container .info-list li a span {
  display: inline-block;
  margin-bottom: 15px;
  margin-left: 15px;
  padding: 0 10px;
  border: 1px solid #30342e;
  color: #30342e;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
.info__link {
  position: absolute;
  bottom: 0;
  left: 0;
  padding-top: 25px;
  text-align: center;
}
.info__link a {
  display: inline-block;
  padding-right: 65px;
  padding-left: 15px;
  background-image: url(../../img/common/common-arrow_pc.png), url(../../img/common/common-circle_pc.png);
  background-position: right 23px center, right 11px center;
  background-size: 16px auto, 40px auto;
  background-repeat: no-repeat, no-repeat;
  color: #30342e;
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  text-align: center;
}
.info__link a:hover {
  background-image: url("../../img/common/common-arrow_on_pc.png"), url("../../img/common/common-circle_on_pc.png");
  background-position: right center, right 11px center;
  background-size: 16px auto, 40px auto;
  background-repeat: no-repeat, no-repeat;
  color: #be0000;
}

.block07 {
  padding: 0 0 120px;
  background: url("../../img/top/top-block07-bg_pc.jpg") bottom center no-repeat #fff;
  background-size: cover;
}
.block07__inner {
  position: relative;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding-top: 175px;
}
.block07__inner02 {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.block07__txt {
  position: absolute;
  top: 0;
  right: 0;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}
.block07__txt01 {
  display: inline-block;
  width: auto;
  padding: 25px 15px;
  background: #679000;
  color: #fff;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
}
.block07__txt02 {
  display: inline-block;
  width: auto;
  margin-top: 40px;
  padding: 25px 15px;
  background: #679000;
  color: #fff;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
}
.block07 h2 {
  display: inline-block;
  padding-left: 70px;
  background: url("../../img/top/top-block07-icon01_pc.png") left bottom no-repeat transparent;
  background-size: 48px auto;
  color: #30342e;
  font-size: 6.8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.02em;
  text-align: left;
}
.block07 h2 span {
  padding-left: 20px;
  color: #30342e;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.02em;
  text-align: left;
}
.block07__block {
  width: 100%;
  font-size: 0;
  text-align: left;
}
.block07__list {
  display: inline-block;
  position: relative;
  width: 340px;
  height: 345px;
  margin-top: 60px;
  padding: 15px 40px 0 0;
  overflow: hidden;
  vertical-align: top;
}
.block07__list:nth-of-type(3n) {
  width: 300px;
  padding: 15px 0 0 0;
}
.block07__image {
  display: block;
  text-align: center;
}
.block07__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  max-width: 100%;
}

.lbox__close {
  padding: 100px 50px 0 0;
  text-align: center;
}
.lbox__close p {
  display: inline-block;
  padding: 15px 70px;
  border: 1px solid #30342e;
  border-radius: 25px;
  color: #30342e;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.02em;
  text-align: center;
}
.lbox__close p:hover {
  cursor: pointer;
}
.lbox__inner {
  position: relative;
  width: 100% !important;
  max-width: 1100px !important;
}
.lbox__contents {
  height: 100% !important;
  max-height: 85vh !important;
  padding: 0 0 50px 50px;
}
.lbox__recipe {
  position: absolute;
  top: -15px;
  left: 40px;
}
.lbox__table {
  display: table;
  width: 100%;
}
.lbox__left {
  display: table-cell;
  width: 500px;
  padding-top: 40px;
  text-align: left;
  vertical-align: top;
}
.lbox__block {
  padding-top: 30px;
}
.lbox__table02 {
  display: table;
  width: 100%;
}
.lbox__left02 {
  display: table-cell;
  width: 180px;
  padding-right: 20px;
  text-align: left;
  vertical-align: top;
}
.lbox__right02 {
  width: auto;
  text-align: left;
  vertical-align: top;
}
.lbox__num {
  position: relative;
  color: #679000;
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.08em;
  text-align: left;
}
.lbox__num:after {
  display: inline-block;
  position: absolute;
  bottom: -12px;
  left: 8px;
  width: 20px;
  height: 1px;
  border-top: 1px solid #679000;
  content: "";
}
.lbox__txt {
  padding-top: 32px;
  color: #30342e;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
  text-align: left;
}
.lbox__txt span {
  display: block;
  color: #30342e;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: left;
}
.lbox__right {
  width: auto;
  text-align: right;
  vertical-align: top;
}
.lbox__table03 {
  display: flex;
  width: 100%;
}
.lbox__left03 {
  width: 500px;
  padding-top: 60px;
  padding-right: 40px;
  vertical-align: top;
}
.lbox__image {
  text-align: center;
}
.lbox__right03 {
  width: 100px;
  padding-top: 25px;
  background: #f1f5dc;
  vertical-align: top;
}
.lbox__txt02 {
  width: 100%;
  text-align: left;
  vertical-align: middle;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}
.lbox__txt03 {
  display: inline-block;
  width: auto;
  padding-right: 25px;
  color: #679000;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.125;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}
.lbox__txt04 {
  display: inline-block;
  width: auto;
  padding-right: 5px;
  color: #30342e;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
  text-align: center;
  vertical-align: middle;
  /* IE用　*/
  /* chrome用　*/
  -o-writing-mode: vertical-rl;
  /* opera用　*/
  writing-mode: vertical-rl;
}

.js-range01 {
  height: 690px !important;
  margin-top: -500px !important;
  opacity: 0;
}
.js-range02 {
  height: 690px !important;
  margin-top: 440px !important;
  opacity: 0;
}
.js-range03 {
  height: 690px !important;
  margin-top: 340px !important;
  opacity: 0;
}
.js-range04 {
  height: 690px !important;
  margin-top: 240px !important;
  padding-top: 0 !important;
  padding-bottom: 150px !important;
  opacity: 0;
}
.block03-01.active {
  animation: fadeIn 1.2s linear 0s forwards;
}

/* 慣性スクロール */
#block03__image01 img, #block03__image02 img, #block03__image03 img, #block03__image04 img, #block03__image05 img, #block03__image06 img, #block03__image07 img, #block03__image08 img, #block03__image09 img, #block03__image10 img, #block03__image11 img, #block03__image12 img, #block03__image13 img, #block03__image14 img, #block03__image15 img, #block03__image16 img {
  transition-duration: 0s !important;
  /*will-change:transform;
  transition-duration:1.0s;
  transition-delay:0.5s;
  transition-timing-function:ease-out;*/
}

.block03 .animation02 {
  opacity: 0;
}
.block03 .js-active02 {
  animation-name: fadeIn;
  animation-duration: 1.5s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03 .animation03 {
  opacity: 0;
}
.block03 .js-active03 {
  animation-name: fadeInUpMin;
  animation-duration: 2.4s;
  animation-delay: 0.1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03 .animation04 {
  opacity: 0;
}
.block03 .js-active04 {
  animation-name: fadeIn;
  animation-duration: 2s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.block03 .animation05 {
  opacity: 0;
}
.block03 .js-active05 {
  animation-name: fadeInUpMin3;
  /*animation-duration: 2.0s;
  animation-delay : 0.5s;
  animation-name: fadeInUpMin2;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  animation-timing-function:ease-in;*/
  animation-duration: 2s;
  animation-delay: 0.1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  /*animation-timing-function:ease-in;*/
}

#block03__image13 {
  display: none;
}

#block03__image14 {
  display: none;
}

#block03__image15 {
  display: none;
}

#block03__image16 {
  display: none;
}

@media screen and (max-width: 1600px) {
  .mv .slick01 {
    height: 86vh;
  }
  .mv .slick01-01 {
    background-image: url("../../img/top/top-logo_pc.png"), url("../../img/top/top-mv01_pc.jpg");
    background-position: top right, top center;
    background-size: 27vw auto, cover;
    background-repeat: no-repeat, no-repeat;
  }
  .mv .slick01-02 {
    background-image: url("../../img/top/top-logo_pc.png"), url("../../img/top/top-mv02_pc.jpg");
    background-position: top right, top center;
    background-size: 27vw auto, cover;
    background-repeat: no-repeat, no-repeat;
  }
  .mv .slick01-03 {
    background-image: url("../../img/top/top-logo_pc.png"), url("../../img/top/top-mv03_pc.jpg");
    background-position: top right, top center;
    background-size: 27vw auto, cover;
    background-repeat: no-repeat, no-repeat;
  }
  .lottie {
    right: 5vw;
    bottom: 2.8125vw;
  }
  .lottie lottie-player {
    width: 12.5vw !important;
    height: 12.5vw !important;
  }
  .lottie svg {
    width: 12.5vw !important;
    height: 12.5vw !important;
  }
  .block01 {
    height: 47.3125vw;
    padding: 0 0 2.8125vw 6.25vw;
    background: url("../../img/top/top-block01-bg01_pc.png") top left no-repeat #fff;
    background-size: 100% 36.875vw;
  }
  .block01__inner {
    padding: 0 0 0 3.375vw;
  }
  .block01__bg {
    height: 44.5vw;
    background: url("../../img/top/top-block01-bg02_pc.png") bottom right 1.25vw no-repeat transparent;
    background-size: 37.8125vw auto;
  }
  .block01__block {
    height: 19.625vw;
    padding-top: 10vw;
    background: url("../../img/top/top-block01-icon_pc.png") left top no-repeat transparent;
    background-size: 2px 100%;
  }
  .block01__block-ttl {
    padding-left: 2.1875vw;
    color: #fff;
    font-size: clamp(1.4rem, 3vw, 4.8rem);
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.02em;
    text-align: left;
  }
  .block01__block-txt {
    max-width: 37.8125vw;
    padding-top: 2.1875vw;
    color: #fff;
    font-size: clamp(1.4rem, 1.125vw, 1.8rem);
    font-size: 1.125vw;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0;
    text-align: left;
  }
  .block02 {
    padding-left: 0;
  }
  .block02__image {
    height: 45.8125vw;
  }
  .block02__image:before {
    width: 100%;
  }
  .block03-2 {
    padding-top: 10vw;
    /*padding-left:res_size(150,$size01);*/
  }
  .block03-2__block {
    height: 66.875vw;
  }
  .block03-2__table {
    padding-left: calc((100% - 1100px) / 2);
  }
  .block03-2__left h2 {
    font-size: clamp(1.4rem, 5vw, 8rem);
  }
  .block03-2__left h2:after {
    bottom: -2.8125vw;
    width: 5.5vw;
    height: 0.9375vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 5.5vw auto;
  }
  .block03-2__left dt {
    font-size: clamp(1.4rem, 5vw, 8rem);
  }
  .block03-2__left dt:after {
    bottom: -2.8125vw;
    width: 5.5vw;
    height: 0.9375vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 5.5vw auto;
  }
  .block03-2__left-txt {
    max-width: 27.25vw;
    padding-top: 5.625vw;
    color: #30342e;
    font-size: clamp(1.4rem, 1.125vw, 1.8rem);
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0;
    text-align: left;
  }
  .block03-2 .view__link {
    padding-top: 1.875vw;
  }
  .block03-2__right {
    top: 0;
    width: 7vw;
    height: 43.125vw;
  }
  .block03-2__right p {
    font-size: clamp(1.4rem, 2vw, 3.2rem);
  }
  .block03 {
    padding-top: 10vw;
    padding-bottom: 20vw;
    /*padding-left:res_size(150,$size01);*/
  }
  .block03__table {
    padding-left: 10.9375vw;
  }
  .block03__table.active {
    display: flex;
  }
  .block03__left {
    padding: 3.125vw 3.125vw 3.125vw 0vw;
  }
  .block03__left h2 {
    font-size: 5vw;
  }
  .block03__left h2:after {
    bottom: -2.8125vw;
    width: 5.5vw;
    height: 0.9375vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 5.5vw auto;
  }
  .block03__left dt {
    font-size: 5vw;
  }
  .block03__left dt:after {
    bottom: -2.8125vw;
    width: 5.5vw;
    height: 0.9375vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 5.5vw auto;
  }
  .block03__left-txt {
    max-width: 27.25vw;
    padding-top: 5.625vw;
    color: #30342e;
    font-size: 1.125vw;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0;
    text-align: left;
  }
  .block03 .view__link {
    padding-top: 1.875vw;
  }
  .block03__right {
    top: 0;
    width: 7vw;
    height: 43.125vw;
  }
  .block03__right p {
    font-size: 2vw;
  }
  .block03 .block03-01 {
    max-width: 68.75vw;
    padding-bottom: 18.75vw;
  }
  .block03__image01 {
    top: 12.5vw;
    left: 30vw;
  }
  .block03__image01.is-type04 {
    top: 18.75vw;
    left: 30vw;
  }
  .block03__image01 img {
    width: 39vw;
    height: auto;
  }
  .block03__image02 {
    top: 31.25vw;
    left: 5vw;
  }
  .block03__image02.is-type04 {
    top: 34.375vw;
    left: 0;
  }
  .block03__image02 img {
    width: 46.125vw;
    height: auto;
  }
  .block03__image02_2 {
    top: 13.75vw;
    left: calc((100% - 68.75vw) / 2 + 7.5vw);
  }
  .block03__image02_2 img {
    width: 46.125vw;
    height: auto;
  }
  .block03__image02_3 {
    top: 10.625vw;
    left: 7.5vw;
  }
  .block03__image02_3 img {
    width: 46.125vw;
    height: auto;
  }
  .block03__image03 {
    top: 48.125vw;
    left: 34.6875vw;
  }
  .block03__image03.is-type04 {
    top: 50vw;
    left: 34.6875vw;
  }
  .block03__image03 img {
    width: 34.6875vw;
    height: auto;
  }
  .block03__image03_2 {
    top: 35.625vw;
    left: 34.6875vw;
  }
  .block03__image03_2 img {
    width: 34.6875vw;
    height: auto;
  }
  .block03__image03_3 {
    top: 37.5vw;
    left: 34.6875vw;
  }
  .block03__image03_3 img {
    width: 34.6875vw;
    height: auto;
  }
  .block03__image img {
    width: 100%;
    max-width: 68.8125vw;
    height: auto;
  }
  .block03__video {
    left: 29.8125vw;
  }
  .block03__video video {
    width: 39vw;
  }
  .block03-test {
    padding-top: 10vw;
    padding-bottom: 20vw;
    /*padding-left:res_size(150,$size01);*/
  }
  .block03-test__table {
    padding-left: 12.5vw;
  }
  .block03-test__left {
    padding: 3.125vw 0;
  }
  .block03-test__left h2 {
    font-size: clamp(1.4rem, 5vw, 8rem);
  }
  .block03-test__left h2:after {
    bottom: -2.8125vw;
    width: 5.5vw;
    height: 0.9375vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 5.5vw auto;
  }
  .block03-test__left dt {
    font-size: clamp(1.4rem, 5vw, 8rem);
  }
  .block03-test__left dt:after {
    bottom: -2.8125vw;
    width: 5.5vw;
    height: 0.9375vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 5.5vw auto;
  }
  .block03-test__left-txt {
    max-width: 27.25vw;
    padding-top: 5.625vw;
    color: #30342e;
    font-size: clamp(1.4rem, 1.125vw, 1.8rem);
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0;
    text-align: left;
  }
  .block03-test .view__link {
    padding-top: 1.875vw;
  }
  .block03-test__right {
    top: 0;
    width: 7vw;
    height: 43.125vw;
  }
  .block03-test__right p {
    font-size: clamp(1.4rem, 2vw, 3.2rem);
  }
  .block03-test .block03-01 {
    max-width: 68.75vw;
    padding-bottom: 0vw;
  }
  .block03-test__image01 {
    top: 12.5vw;
    left: 30vw;
  }
  .block03-test__image01.is-type04 {
    top: 18.75vw;
    left: 30vw;
  }
  .block03-test__image01 img {
    width: 39vw;
    height: auto;
  }
  .block03-test__image02 {
    top: 31.25vw;
    left: 0;
  }
  .block03-test__image02.is-type04 {
    top: 34.375vw;
    left: 0;
  }
  .block03-test__image02 img {
    width: 46.125vw;
    height: auto;
  }
  .block03-test__image02_2 {
    top: 13.75vw;
    left: calc((100% - 68.75vw) / 2);
  }
  .block03-test__image02_2 img {
    width: 46.125vw;
    height: auto;
  }
  .block03-test__image02_3 {
    top: 15.625vw;
    left: 0;
  }
  .block03-test__image02_3 img {
    width: 46.125vw;
    height: auto;
  }
  .block03-test__image03 {
    top: 45vw;
    left: 34.6875vw;
  }
  .block03-test__image03.is-type04 {
    top: 50vw;
    left: 34.6875vw;
  }
  .block03-test__image03 img {
    width: 34.6875vw;
    height: auto;
  }
  .block03-test__image03_2 {
    top: 30.625vw;
    left: 34.6875vw;
  }
  .block03-test__image03_2 img {
    width: 34.6875vw;
    height: auto;
  }
  .block03-test__image03_3 {
    top: 31.25vw;
    left: 34.6875vw;
  }
  .block03-test__image03_3 img {
    width: 34.6875vw;
    height: auto;
  }
  .block03-test__image img {
    width: 100%;
    max-width: 68.8125vw;
    height: auto;
  }
  .block03-test__video {
    left: 29.8125vw;
  }
  .block03-test__video video {
    width: 39vw;
  }
  .block04 {
    padding: 7.5vw 0;
  }
  .block04__image {
    max-width: 100%;
    padding-right: 5vw;
  }
  .block04__image img {
    max-width: 79.375vw;
    height: auto;
  }
  .block05 {
    padding: 0 0 9.375vw;
  }
  .block05__inner {
    max-width: 90vw;
    padding-top: 10.9375vw;
  }
  .block05__inner02 {
    max-width: 71.25vw;
  }
  .block05__txt01 {
    padding: 1.5625vw 0.9375vw;
    font-size: clamp(1.4rem, 1.5vw, 2.4rem);
    font-size: 1.5vw;
  }
  .block05__txt02 {
    margin-top: 2.5vw;
    padding: 1.5625vw 0.9375vw;
    font-size: 1.5vw;
  }
  .block05 h2 {
    font-size: clamp(1.4rem, 3.75vw, 6rem);
  }
  .block05__list {
    margin-top: 3.75vw;
    padding: 0 1.25vw;
  }
  .block05__list.is-type2 {
    margin-top: 7.5vw;
  }
  .block05__image {
    left: 1.25vw;
    width: 16.75vw;
    height: 16.75vw;
  }
  .block05__image img {
    max-width: 16.75vw;
    height: auto;
  }
  .block05__icon {
    top: 8.4375vw;
    left: 14.375vw;
  }
  .block05__icon img {
    max-width: 2.5vw;
    height: auto;
  }
  .block05__box {
    width: 15.3125vw;
    height: 22.3125vw;
    margin-top: 1.5625vw;
    padding: 1.5625vw 1.5625vw;
  }
  .block05__ttl {
    font-size: clamp(1.4rem, 1.5vw, 2.4rem);
    font-size: 1.5vw;
  }
  .block05__link {
    right: 1.5625vw;
    bottom: 1.5625vw;
  }
  .block05__link a, .block05__link p {
    height: 2.5vw;
    padding-right: 4.0625vw;
    background-image: url(../../img/common/common-arrow_pc.png), url(../../img/common/common-circle_pc.png);
    background-position: right 1.4375vw center, right 0.6875vw center;
    background-size: 1vw auto, 2.5vw auto;
    background-repeat: no-repeat, no-repeat;
    font-size: clamp(1.4rem, 1.125vw, 1.8rem);
    font-size: 1.125vw;
  }
  .block05__list:hover .block05__link a, .block05__list:hover .block05__link p {
    background-image: url(../../img/common/common-arrow_on_pc.png), url(../../img/common/common-circle_on_pc.png);
    background-position: right center, right 0.6875vw center;
    background-size: 1vw auto, 2.5vw auto;
    background-repeat: no-repeat, no-repeat;
    color: #be0000;
  }
  .block06 {
    padding: 0 0 12.5vw;
    background: url("../../img/top/top-block06-bg_pc.jpg") bottom center no-repeat #fff;
    background-size: cover;
  }
  .block06__inner {
    max-width: 90vw;
    padding-top: 10.9375vw;
  }
  .block06__inner02 {
    max-width: 71.25vw;
  }
  .block06__txt01 {
    padding: 1.5625vw 0.9375vw;
    font-size: clamp(1.4rem, 1.5vw, 2.4rem);
    font-size: 1.5vw;
  }
  .block06__txt02 {
    margin-top: 2.5vw;
    padding: 1.5625vw 0.9375vw;
    font-size: clamp(1.4rem, 1.5vw, 2.4rem);
    font-size: 1.5vw;
  }
  .block06 h2 {
    font-size: clamp(1.4rem, 3.75vw, 6rem);
  }
  .block06__list {
    margin-top: 3.75vw;
    padding: 0.9375vw 1.25vw 0;
  }
  .block06__list.is-type2 {
    margin-top: 7.5vw;
  }
  .block06__recipe {
    top: 0;
    left: 2.8125vw;
  }
  .block06__recipe img {
    max-width: 7.5vw;
    height: auto;
  }
  .block06__left {
    width: 15vw;
    padding-bottom: 2.5vw;
  }
  .block06__image {
    padding-top: 2.8125vw;
  }
  .block06__image img {
    max-width: 13.125vw;
    height: auto;
  }
  .block06__link {
    padding-top: 1.5625vw;
  }
  .block06__link a {
    padding: 0 2.5vw;
    border-radius: 1.25vw;
    font-size: clamp(1.4rem, 1vw, 1.6rem);
    font-size: 1vw;
  }
  .block06__right {
    width: 6.25vw;
    padding-top: 1.5625vw;
  }
  .block06__txt04 {
    padding-right: 1.5625vw;
    font-size: clamp(1.4rem, 1vw, 1.6rem);
    font-size: 1vw;
  }
  .block06__txt05 {
    padding-right: 0.3125vw;
    font-size: clamp(1.4rem, 1.5vw, 2.4rem);
    font-size: 1.5vw;
  }
  .info {
    padding: 6.25vw 0 7.5vw;
  }
  .info__inner {
    max-width: 68.75vw;
  }
  .info__table {
    display: table;
  }
  .info__left {
    width: 23.75vw;
    padding-top: 1.25vw;
  }
  .info__left h2 {
    font-size: clamp(1.4rem, 3.75vw, 6rem);
  }
  .info__right {
    width: 45vw;
  }
  .info__right #info-container .info-list li a {
    display: block;
    padding: 1.5625vw 2.5vw 1.5625vw 0;
    background: url("../../img/common/common-arrow_pc.png") right 15px center no-repeat transparent;
    background-size: 1vw auto;
    color: #30342e;
    font-size: clamp(1.4rem, 1vw, 1.6rem);
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0.02em;
    text-align: left;
  }
  .info__right #info-container .info-list li a:hover {
    display: block;
    padding: 1.5625vw 2.5vw 1.5625vw 0;
    background: url("../../img/common/common-arrow_on_pc.png") right center no-repeat transparent;
    background-size: 1vw auto;
    color: #be0000;
    font-size: clamp(1.4rem, 1vw, 1.6rem);
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0.02em;
    text-align: left;
  }
  .info__right #info-container .info-list li a span {
    margin-bottom: 0.9375vw;
    margin-left: 0.9375vw;
    padding: 0 0.625vw;
    font-size: clamp(1.4rem, 1vw, 1.6rem);
  }
  .info__link {
    padding-top: 1.5625vw;
  }
  .info__link a {
    padding-right: 4.0625vw;
    padding-left: 0.9375vw;
    background-image: url(../../img/common/common-arrow_pc.png), url(../../img/common/common-circle_pc.png);
    background-position: right 1.4375vw center, right 0.6875vw center;
    background-size: 1vw auto, 2.5vw auto;
    background-repeat: no-repeat, no-repeat;
    font-size: clamp(1.4rem, 2vw, 3.2rem);
  }
  .info__link a:hover {
    background-image: url("../../img/common/common-arrow_on_pc.png"), url("../../img/common/common-circle_on_pc.png");
    background-position: right center, right 0.6875vw center;
    background-size: 1vw auto, 2.5vw auto;
    background-repeat: no-repeat, no-repeat;
  }
  .block07 {
    padding: 0 0 7.5vw;
    background: url("../../img/top/top-block07-bg_pc.jpg") bottom center no-repeat #fff;
    background-size: cover;
  }
  .block07__inner {
    max-width: 90vw;
    padding-top: 10.9375vw;
  }
  .block07__inner02 {
    max-width: 71.25vw;
  }
  .block07__txt01 {
    padding: 1.5625vw 0.9375vw;
    font-size: clamp(1.4rem, 1.5vw, 2.4rem);
  }
  .block07__txt02 {
    margin-top: 2.5vw;
    padding: 1.5625vw 0.9375vw;
    font-size: clamp(1.4rem, 1.5vw, 2.4rem);
  }
  .block07 h2 {
    padding-left: 4.375vw;
    background: url("../../img/top/top-block07-icon01_pc.png") left bottom no-repeat transparent;
    background-size: 3vw auto;
    font-size: clamp(1.4rem, 4.25vw, 6.8rem);
  }
  .block07 h2 span {
    padding-left: 1.25vw;
    font-size: clamp(1.4rem, 1vw, 1.6rem);
  }
  .block07__list {
    width: 21.25vw;
    height: 21.75vw;
    margin-top: 3.75vw;
    padding: 0.9375vw 2.5vw 0 0;
  }
  .block07__list:nth-of-type(3n) {
    width: 18.75vw;
    padding: 0.9375vw 0 0 0;
  }
  .block07__image img {
    max-width: 18.75vw;
    height: auto;
  }
  .lbox__close {
    padding: 6.25vw 3.125vw 0 0;
  }
  .lbox__close p {
    padding: 0.9375vw 4.375vw;
    border-radius: 1.5625vw;
    font-size: clamp(1.4rem, 1vw, 1.6rem);
  }
  .lbox__inner {
    max-width: 71vw !important;
  }
  .lbox__contents {
    padding: 0 0 3.125vw 3.125vw;
  }
  .lbox__recipe {
    top: -0.9375vw;
    left: 2.5vw;
  }
  .lbox__recipe img {
    max-width: 7.5vw;
    height: auto;
  }
  .lbox__left {
    width: 34.25vw;
    padding-top: 2.5vw;
  }
  .lbox__block {
    padding-top: 1.875vw;
  }
  .lbox__left02 {
    width: 11.25vw;
    padding-right: 1.25vw;
  }
  .lbox__left02 img {
    max-width: 10vw;
    height: auto;
  }
  .lbox__num {
    font-size: clamp(1.4rem, 2vw, 3.2rem);
  }
  .lbox__num:after {
    bottom: -0.75vw;
    left: 0.5vw;
    width: 1.25vw;
  }
  .lbox__txt {
    padding-top: 2vw;
    font-size: clamp(1.4rem, 1.125vw, 1.8rem);
  }
  .lbox__txt span {
    font-size: clamp(1.2rem, 0.75vw, 1.2rem);
  }
  .lbox__left03 {
    width: 31.25vw;
    padding-top: 3.75vw;
    padding-right: 2.5vw;
  }
  .lbox__image img {
    max-width: 28.75vw;
    height: auto;
  }
  .lbox__right03 {
    width: 7.25vw;
    padding-top: 1.5625vw;
  }
  .lbox__txt03 {
    padding-right: 1.5625vw;
    font-size: clamp(1.4rem, 1vw, 1.6rem);
  }
  .lbox__txt04 {
    padding-right: 0.3125vw;
    font-size: clamp(1.4rem, 1.5vw, 2.4rem);
  }
  .js-range01 {
    height: 43.125vw !important;
    margin-top: -31.25vw !important;
  }
  .js-range02 {
    height: 43.125vw !important;
    margin-top: 27.5vw !important;
  }
  .js-range03 {
    height: 43.125vw !important;
    margin-top: 21.25vw !important;
  }
  .js-range04 {
    height: 43.125vw !important;
    margin-top: 15vw !important;
    padding-top: 0 !important;
    padding-bottom: 9.375vw !important;
  }
}

@media screen and (max-width: 767px) {
  .mv .slick01 {
    height: 133.33vw;
  }
  .mv .slick01-01 {
    height: 133.33vw;
    background-image: url("../../img/top/top-logo_pc.png"), url("../../img/top/top-mv01_sp.jpg");
    background-position: top right, top center;
    background-size: 57.6vw auto, cover;
    background-repeat: no-repeat, no-repeat;
    /*background: url("../../img/top/top-mv01_sp.jpg") top center no-repeat transparent;
    background-size: cover;*/
  }
  .mv .slick01-02 {
    height: 133.33vw;
    background-image: url("../../img/top/top-logo_pc.png"), url("../../img/top/top-mv02_sp.jpg");
    background-position: top right, top center;
    background-size: 57.6vw auto, cover;
    background-repeat: no-repeat, no-repeat;
    /*background: url("../../img/top/top-mv02_sp.jpg") top center no-repeat transparent;
    background-size: cover;*/
  }
  .mv .slick01-03 {
    height: 133.33vw;
    background-image: url("../../img/top/top-logo_pc.png"), url("../../img/top/top-mv03_sp.jpg");
    background-position: top right, top center;
    background-size: 57.6vw auto, cover;
    background-repeat: no-repeat, no-repeat;
    /*background: url("../../img/top/top-mv02_sp.jpg") top center no-repeat transparent;
    background-size: cover;*/
  }
  .lottie {
    top: -22vw;
    right: 2.6666666667vw;
    bottom: auto;
  }
  .lottie lottie-player {
    width: 37.3333333333vw !important;
    height: 37.3333333333vw !important;
  }
  .lottie svg {
    width: 26.6666666667vw !important;
    height: 26.6666666667vw !important;
  }
  .lottie #animation-container {
    width: 26.6666666667vw !important;
    height: 26.6666666667vw !important;
  }
  .block01__wrap {
    position: relative;
    padding: 22.6666666667vw 0 0 0;
    background: #fff;
  }
  .block01 {
    height: 156vw;
    padding: 0 0 6vw 6.6666666667vw;
    background: url("../../img/top/top-block01-bg01_sp.png") top left no-repeat #fff;
    background-size: 90.6% 70%;
  }
  .block01__inner {
    padding: 0 0 0 0;
  }
  .block01__bg {
    height: 142.4vw;
    background: url("../../img/top/top-block01-bg02_pc.png") bottom right 4vw no-repeat transparent;
    background-size: 64.8vw auto;
  }
  .block01__block {
    height: 35.6vw;
    padding-top: 8vw;
    padding-right: 16vw;
    background: url("../../img/top/top-block01-icon_sp.png") left top no-repeat transparent;
    background-size: 2px 100%;
  }
  .block01__block-ttl {
    padding-left: 4.6666666667vw;
    color: #fff;
    font-size: 5.3333333333vw;
    font-size: clamp(1.4rem, 5.3333333333vw, 4rem);
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.02em;
    text-align: left;
  }
  .block01__block-txt {
    max-width: 100%;
    padding-top: 4.6666666667vw;
    color: #fff;
    font-size: 3.7333333333vw;
    font-size: clamp(1.4rem, 3.7333333333vw, 2.8rem);
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0;
    text-align: left;
  }
  .block02 {
    background: #070c0f;
  }
  .block02__image {
    height: 68.4vw;
  }
  .block02__image:before {
    height: 100vh;
    background-image: url("../../img/top/top-block02_bg_sp.jpg");
  }
  .block03-2 {
    padding-top: 16vw;
  }
  .block03-2__block {
    height: 142.6666666667vw;
  }
  .block03-2__table {
    padding-left: 4vw;
  }
  .block03-2__left {
    width: 80vw;
  }
  .block03-2__left h2 {
    font-size: 7.4666666667vw;
    font-size: clamp(1.4rem, 7.4666666667vw, 5.6rem);
  }
  .block03-2__left h2:after {
    bottom: -6vw;
    width: 11.7333333333vw;
    height: 2vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 11.7333333333vw auto;
  }
  .block03-2__left dt {
    font-size: 10.6666666667vw;
    font-size: clamp(1.4rem, 10.6666666667vw, 8rem);
  }
  .block03-2__left dt:after {
    bottom: -8vw;
    width: 23.4666666667vw;
    height: 4vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 23.4666666667vw auto;
  }
  .block03-2__left-txt {
    max-width: 100%;
    padding-top: 12vw;
    color: #30342e;
    font-size: 3.7333333333vw;
    font-size: clamp(1.4rem, 3.7333333333vw, 2.8rem);
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0;
    text-align: left;
  }
  .block03-2 .view__link {
    padding-top: 4vw;
    text-align: right;
  }
  .block03-2__right {
    top: 0;
    width: 10.5333333333vw;
    height: 69.3333333333vw;
  }
  .block03-2__right p {
    font-size: 3.4666666667vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
  }
  .block03 {
    padding-top: 16vw;
  }
  .block03__table {
    position: relative;
    padding-left: 4vw;
    opacity: 1;
    pointer-events: auto;
  }
  .block03__table.active {
    position: static;
  }
  .block03__left {
    width: 80vw;
    padding: 2.6666666667vw 1.3333333333vw 2.6666666667vw 0;
  }
  .block03__left h2 {
    font-size: 7.4666666667vw;
  }
  .block03__left h2:after {
    bottom: -6vw;
    width: 11.7333333333vw;
    height: 2vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 11.7333333333vw auto;
  }
  .block03__left dt {
    font-size: 10.6666666667vw;
  }
  .block03__left dt:after {
    bottom: -8vw;
    width: 23.4666666667vw;
    height: 4vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 23.4666666667vw auto;
  }
  .block03__left-txt {
    max-width: 100%;
    padding-top: 12vw;
    color: #30342e;
    font-size: 3.7333333333vw;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0;
    text-align: left;
  }
  .block03 .view__link {
    padding-top: 4vw;
    text-align: right;
  }
  .block03__right {
    top: 0;
    width: 10.5333333333vw;
    height: 69.3333333333vw;
  }
  .block03__right p {
    font-size: 3.4666666667vw;
  }
  .block03 .block03-01 {
    max-width: 100%;
    padding-bottom: 26.6666666667vw;
  }
  .block03__image01 {
    display: none !important;
    top: 1.6vw;
    left: 1.3333333333vw;
  }
  .block03__image01.is-type04 {
    display: none !important;
    top: 1.6vw;
    left: 1.3333333333vw;
  }
  .block03__image01 img {
    width: 87.2vw;
    height: auto;
  }
  .block03__image02 {
    display: none !important;
    top: 66.6666666667vw;
    left: 0;
  }
  .block03__image02.is-type04 {
    display: none !important;
    top: 66.6666666667vw;
    left: 0;
  }
  .block03__image02 img {
    width: 87.2vw;
    height: auto;
  }
  .block03__image02_2 {
    display: none !important;
    top: 76.2666666667vw;
    left: -15.3333333333vw;
  }
  .block03__image02_2 img {
    width: 87.2vw;
    height: auto;
  }
  .block03__image02_3 {
    display: none !important;
    top: 58.4vw;
    left: -4vw;
  }
  .block03__image02_3 img {
    width: 87.2vw;
    height: auto;
  }
  .block03__image03 {
    top: 102.6666666667vw;
    right: 10.6666666667vw;
    left: auto;
  }
  .block03__image03.is-type02 {
    top: 113.7333333333vw;
    right: 10.6666666667vw;
    left: auto;
  }
  .block03__image03.is-type04 {
    top: 102.6666666667vw;
    right: 10.6666666667vw;
    left: auto;
  }
  .block03__image03 img {
    display: none !important;
    width: 87.2vw;
    height: auto;
  }
  .block03__image03_2 {
    display: none !important;
    top: 111.7333333333vw;
    right: 10.6666666667vw;
    left: auto;
  }
  .block03__image03_2 img {
    width: 87.2vw;
    height: auto;
  }
  .block03__image03_3 {
    display: none !important;
    top: 99.7333333333vw;
    right: 10.6666666667vw;
    left: auto;
  }
  .block03__image03_3 img {
    width: 87.2vw;
    height: auto;
  }
  .block03__image img {
    visibility: visible;
    width: 100%;
    max-width: 100%;
    height: auto;
  }
  .block03__video {
    top: 1.6vw;
    left: 6.4vw;
  }
  .block03__video video {
    width: 87.2vw;
  }
  .block03-test {
    padding-top: 16vw;
    padding-bottom: 32vw;
  }
  .block03-test__table {
    padding-left: 4vw;
  }
  .block03-test__table.active {
    top: 15%;
    /*animation: fadeIn 0.5s linear 0s forwards;*/
    opacity: 1;
    animation: none;
  }
  .block03-test__left {
    width: 80vw;
    padding: 2.6666666667vw 1.3333333333vw;
  }
  .block03-test__left h2 {
    font-size: 7.4666666667vw;
    font-size: clamp(1.4rem, 7.4666666667vw, 5.6rem);
  }
  .block03-test__left h2:after {
    bottom: -6vw;
    width: 11.7333333333vw;
    height: 2vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 11.7333333333vw auto;
  }
  .block03-test__left dt {
    font-size: 10.6666666667vw;
    font-size: clamp(1.4rem, 10.6666666667vw, 8rem);
  }
  .block03-test__left dt:after {
    bottom: -8vw;
    width: 23.4666666667vw;
    height: 4vw;
    background: url(../../img/common/common-wave_pc.png) left bottom no-repeat transparent;
    background-size: 23.4666666667vw auto;
  }
  .block03-test__left-txt {
    max-width: 100%;
    padding-top: 12vw;
    color: #30342e;
    font-size: 3.7333333333vw;
    font-size: clamp(1.4rem, 3.7333333333vw, 2.8rem);
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0;
    text-align: left;
  }
  .block03-test .view__link {
    padding-top: 4vw;
    text-align: right;
  }
  .block03-test__right {
    top: 0;
    width: 10.5333333333vw;
    height: 69.3333333333vw;
  }
  .block03-test__right p {
    font-size: 3.4666666667vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
  }
  .block03-test .block03-01 {
    max-width: 100%;
    padding-bottom: 40vw;
  }
  .block03-test__image01 {
    display: none !important;
    top: 1.6vw;
    left: 1.3333333333vw;
  }
  .block03-test__image01.is-type04 {
    display: none !important;
    top: 1.6vw;
    left: 1.3333333333vw;
  }
  .block03-test__image01 img {
    width: 87.2vw;
    height: auto;
  }
  .block03-test__image02 {
    display: none !important;
    top: 66.6666666667vw;
    left: 0;
  }
  .block03-test__image02.is-type04 {
    display: none !important;
    top: 66.6666666667vw;
    left: 0;
  }
  .block03-test__image02 img {
    width: 87.2vw;
    height: auto;
  }
  .block03-test__image02_2 {
    display: none !important;
    top: 76.2666666667vw;
    left: -15.3333333333vw;
  }
  .block03-test__image02_2 img {
    width: 87.2vw;
    height: auto;
  }
  .block03-test__image02_3 {
    display: none !important;
    top: 58.4vw;
    left: -4vw;
  }
  .block03-test__image02_3 img {
    width: 87.2vw;
    height: auto;
  }
  .block03-test__image03 {
    top: 102.6666666667vw;
    right: 10.6666666667vw;
    left: auto;
  }
  .block03-test__image03.is-type02 {
    top: 113.7333333333vw;
    right: 10.6666666667vw;
    left: auto;
  }
  .block03-test__image03.is-type04 {
    top: 102.6666666667vw;
    right: 10.6666666667vw;
    left: auto;
  }
  .block03-test__image03 img {
    display: none !important;
    width: 87.2vw;
    height: auto;
  }
  .block03-test__image03_2 {
    display: none !important;
    top: 111.7333333333vw;
    right: 10.6666666667vw;
    left: auto;
  }
  .block03-test__image03_2 img {
    width: 87.2vw;
    height: auto;
  }
  .block03-test__image03_3 {
    display: none !important;
    top: 99.7333333333vw;
    right: 10.6666666667vw;
    left: auto;
  }
  .block03-test__image03_3 img {
    width: 87.2vw;
    height: auto;
  }
  .block03-test__image img {
    visibility: visible;
    width: 100%;
    max-width: 100%;
    height: auto;
  }
  .block03-test__video {
    top: 1.6vw;
    left: 6.4vw;
  }
  .block03-test__video video {
    width: 87.2vw;
  }
  .block04 {
    padding: 16vw 0;
  }
  .block04__image {
    max-width: 90vw;
    padding-right: 0;
  }
  .block04__image img {
    max-width: 100%;
    height: auto;
  }
  .block05 {
    padding: 0 0 20vw;
  }
  .block05__inner {
    max-width: 100%;
    padding: 12vw 21.8666666667vw 0 4vw;
  }
  .block05__inner02 {
    max-width: 100%;
  }
  .block05__txt {
    right: 4vw;
  }
  .block05__txt01 {
    height: auto;
    padding: 3.3333333333vw 2vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
    font-size: 3.4666666667vw;
  }
  .block05__txt02 {
    height: 75.0666666667vw;
    margin-top: 5.3333333333vw;
    padding: 3.3333333333vw 2vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
    font-size: 3.4666666667vw;
  }
  .block05 h2 {
    font-size: 5.6vw;
    font-size: clamp(1.4rem, 5.6vw, 4.2rem);
  }
  .block05__list {
    width: 50%;
    margin-top: 8vw;
    padding: 0 0;
  }
  .block05__list.is-type2 {
    margin-top: 8vw;
  }
  .block05__image {
    left: 2.6666666667vw;
    width: 25.0666666667vw;
    height: 25.0666666667vw;
  }
  .block05__image img {
    max-width: 25.0666666667vw;
    height: auto;
  }
  .block05__icon {
    top: 12.5333333333vw;
    left: 21.4666666667vw;
  }
  .block05__icon img {
    max-width: 3.7333333333vw;
    height: auto;
  }
  .block05__box {
    width: 83%;
    height: 42.6666666667vw;
    margin-top: 3.3333333333vw;
    padding: 3.3333333333vw 2.6666666667vw;
  }
  .block05__ttl {
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
    font-size: 3.4666666667vw;
  }
  .block05__link {
    right: 1.3333333333vw;
    bottom: 3.3333333333vw;
  }
  .block05__link a, .block05__link p {
    height: 5.3333333333vw;
    padding-right: 8.6666666667vw;
    background-image: url(../../img/common/common-arrow_pc.png), url(../../img/common/common-circle_pc.png);
    background-position: right 3.0666666667vw center, right 1.4666666667vw center;
    background-size: 2.1333333333vw auto, 5.3333333333vw auto;
    background-repeat: no-repeat, no-repeat;
    font-size: clamp(1.4rem, 3.2vw, 2.4rem);
    font-size: 3.2vw;
    line-height: 1.75;
  }
  .block06 {
    padding: 0 0 13.3333333333vw;
    background: url("../../img/top/top-block06-bg_pc.jpg") bottom center no-repeat #fff;
    background-size: cover;
  }
  .block06__inner {
    max-width: 100%;
    padding: 12vw 21.8666666667vw 0 4vw;
  }
  .block06__inner02 {
    max-width: 100%;
  }
  .block06__txt {
    right: 4vw;
  }
  .block06__txt01 {
    height: auto;
    padding: 3.3333333333vw 2vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
    font-size: 3.4666666667vw;
  }
  .block06__txt02 {
    height: 75.0666666667vw;
    margin-top: 5.3333333333vw;
    padding: 3.3333333333vw 2vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
    font-size: 3.4666666667vw;
  }
  .block06 h2 {
    font-size: 5.6vw;
    font-size: clamp(1.4rem, 5.6vw, 4.2rem);
  }
  .block06__list {
    width: 100%;
    margin-top: 8vw;
    padding: 0 0;
  }
  .block06__list.is-type2 {
    margin-top: 8vw;
  }
  .block06__recipe {
    top: -4vw;
    left: 5.3333333333vw;
  }
  .block06__recipe img {
    max-width: 24vw;
    height: auto;
  }
  .block06__block02 {
    display: flex;
  }
  .block06__left {
    display: block;
    width: 56.9333333333vw;
    padding-bottom: 5.3333333333vw;
  }
  .block06__image {
    padding-top: 12vw;
  }
  .block06__image img {
    max-width: 43.3333333333vw;
    height: auto;
  }
  .block06__link {
    padding-top: 5.3333333333vw;
  }
  .block06__link a {
    padding: 0 10.6666666667vw;
    border-radius: 3.3333333333vw;
    font-size: clamp(1.4rem, 3.2vw, 2.4rem);
    font-size: 3.2vw;
  }
  .block06__right {
    display: block;
    width: 15.7333333333vw;
    padding-top: 3.3333333333vw;
  }
  .block06__txt04 {
    padding-right: 3.3333333333vw;
    font-size: clamp(1.4rem, 3.2vw, 2.4rem);
    font-size: 3.2vw;
  }
  .block06__txt05 {
    padding-right: 0.6666666667vw;
    font-size: clamp(1.4rem, 4vw, 3rem);
    font-size: 4vw;
  }
  .info {
    padding: 13.3333333333vw 0 13.3333333333vw;
  }
  .info__inner {
    max-width: 100%;
    padding: 0 4vw;
  }
  .info__table {
    display: block;
  }
  .info__left {
    display: block;
    width: 100%;
    padding-top: 0;
  }
  .info__left h2 {
    font-size: 5.6vw;
    font-size: clamp(1.4rem, 5.6vw, 4.2rem);
  }
  .info__right {
    display: block;
    width: 100%;
  }
  .info__right #info-container .info-list li a {
    display: block;
    padding: 3.3333333333vw 5.3333333333vw 3.3333333333vw 0;
    background: url("../../img/common/common-arrow_pc.png") right 15px center no-repeat transparent;
    background-size: 2.1333333333vw auto;
    color: #30342e;
    font-size: 3.4666666667vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0.02em;
    text-align: left;
  }
  .info__right #info-container .info-list li a:hover {
    display: block;
    padding: 3.3333333333vw 5.3333333333vw 3.3333333333vw 0;
    background: url("../../img/common/common-arrow_on_pc.png") right center no-repeat transparent;
    background-size: 2.1333333333vw auto;
    color: #be0000;
    font-size: 3.4666666667vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0.02em;
    text-align: left;
  }
  .info__right #info-container .info-list li a span {
    margin-bottom: 2vw;
    margin-left: 2vw;
    padding: 0 1.3333333333vw;
    font-size: 3.2vw;
    font-size: clamp(1.4rem, 3.2vw, 2.4rem);
  }
  .info__link {
    position: static;
    padding-top: 8vw;
  }
  .info__link a {
    min-height: 5.3333333333vw;
    padding-right: 8.6666666667vw;
    padding-left: 2vw;
    background-image: url(../../img/common/common-arrow_pc.png), url(../../img/common/common-circle_pc.png);
    background-position: right 3.0666666667vw center, right 1.4666666667vw center;
    background-size: 2.1333333333vw auto, 5.3333333333vw auto;
    background-repeat: no-repeat, no-repeat;
    font-size: 3.2vw;
    font-size: clamp(1.4rem, 3.2vw, 2.4rem);
    line-height: 1.5;
  }
  .info__link a:hover {
    background-image: url("../../img/common/common-arrow_on_pc.png"), url("../../img/common/common-circle_on_pc.png");
    background-position: right center, right 1.4666666667vw center;
    background-size: 2.1333333333vw auto, 5.3333333333vw auto;
    background-repeat: no-repeat, no-repeat;
  }
  .block07 {
    padding: 0 0 13.3333333333vw;
    background: url("../../img/top/top-block07-bg_pc.jpg") bottom center no-repeat #fff;
    background-size: cover;
  }
  .block07__inner {
    max-width: 100%;
    padding: 12vw 21.8666666667vw 13.0666666667vw 4vw;
    /*height:sp_size(503);*/
  }
  .block07__inner02 {
    max-width: 100%;
  }
  .block07__txt {
    right: 4vw;
  }
  .block07__txt01 {
    height: auto;
    padding: 3.3333333333vw 2vw;
    font-size: 3.4666666667vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
  }
  .block07__txt02 {
    height: auto;
    margin-top: 5.3333333333vw;
    padding: 3.3333333333vw 2vw;
    font-size: 3.4666666667vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
  }
  .block07 h2 {
    padding-left: 9.3333333333vw;
    background: url("../../img/top/top-block07-icon01_pc.png") left top no-repeat transparent;
    background-size: 6.4vw auto;
    font-size: 5.6vw;
    font-size: clamp(1.4rem, 5.6vw, 4.2rem);
  }
  .block07 h2 span {
    display: block;
    padding-top: 2vw;
    padding-left: 0;
    font-size: 3.4666666667vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
  }
  .block07__list {
    width: 33.3%;
    height: 31.7333333333vw;
    margin-top: 2.6666666667vw;
    padding: 2vw 2.6666666667vw 0 0;
  }
  .block07__list:nth-of-type(3n) {
    width: 33.3%;
    padding: 2vw 2.6666666667vw 0 0;
  }
  .block07__image {
    height: 21.733333vw;
    overflow: hidden;
  }
  .block07__image img {
    max-width: 100%;
    height: auto;
  }
  .lbox__close {
    padding: 13.3333333333vw 6.6666666667vw 0 0;
  }
  .lbox__close p {
    padding: 2vw 9.3333333333vw;
    border-radius: 4vw;
    font-size: 3.2vw;
    font-size: clamp(1.4rem, 3.2vw, 2.4rem);
  }
  .lbox__inner {
    max-width: 94% !important;
  }
  .lbox__contents {
    padding: 0 0 6.6666666667vw 2.6666666667vw;
  }
  .lbox__recipe {
    top: -2vw;
    left: 5.3333333333vw;
  }
  .lbox__recipe img {
    max-width: 16vw;
    height: auto;
  }
  .lbox__table {
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
  }
  .lbox__left {
    display: block;
    order: 2;
    width: 100%;
    padding-top: 5.3333333333vw;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
  }
  .lbox__block {
    padding-top: 5.3333333333vw;
  }
  .lbox__left02 {
    width: 20vw;
    padding-right: 1.3333333333vw;
  }
  .lbox__left02 img {
    max-width: 100%;
    height: auto;
  }
  .lbox__right02 {
    display: block;
    width: 100%;
  }
  .lbox__num {
    font-size: 4vw;
    font-size: clamp(1.4rem, 4vw, 3rem);
  }
  .lbox__num:after {
    bottom: -1.6vw;
    left: 1.0666666667vw;
    width: 2.6666666667vw;
  }
  .lbox__txt {
    padding-top: 4.2666666667vw;
    font-size: 3.4666666667vw;
    font-size: clamp(1.4rem, 3.4666666667vw, 2.6rem);
  }
  .lbox__txt span {
    font-size: 2.9333333333vw;
    font-size: clamp(1.4rem, 2.9333333333vw, 2.2rem);
  }
  .lbox__right {
    display: block;
    order: 1;
    width: 100%;
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
  }
  .lbox__table03 {
    display: flex;
  }
  .lbox__left03 {
    display: block;
    width: 76.9333333333vw;
    padding-top: 10vw;
    padding-right: 5.3333333333vw;
  }
  .lbox__image img {
    max-width: 70%;
    height: auto;
  }
  .lbox__right03 {
    display: block;
    width: 15.7333333333vw;
    padding-top: 3.3333333333vw;
  }
  .lbox__txt03 {
    padding-right: 3.3333333333vw;
    font-size: 3.2vw;
    font-size: clamp(1.4rem, 3.2vw, 2.4rem);
  }
  .lbox__txt04 {
    padding-right: 0.6666666667vw;
    font-size: 4vw;
    font-size: clamp(1.4rem, 4vw, 3rem);
  }
  .js-range01 {
    height: auto !important;
    margin-top: 0 !important;
  }
  .js-range02 {
    height: auto !important;
    margin-top: 8vw !important;
  }
  .js-range03 {
    height: auto !important;
    margin-top: 0vw;
  }
  .js-range04 {
    height: auto !important;
    margin-top: 0vw;
  }
  .block03-01.active {
    animation: fadeIn 1.2s linear 0s forwards;
  }
  #block03__image13 img, #block03__image14 img, #block03__image15 img, #block03__image16 img {
    margin-top: 10vw !important;
  }
  #block03__image13 {
    display: block;
  }
  #block03__image14 {
    display: block;
  }
  #block03__image15 {
    display: block;
  }
  #block03__image16 {
    display: block;
  }
}

@media screen and (min-width: 1601px) {
  .block03-2__table {
    padding-left: calc((100% - 1100px) / 2);
  }
  .block03__table {
    padding-left: calc((100% - 1140px) / 2);
  }
  .block03-test__table {
    padding-left: calc((100% - 1100px) / 2);
  }
}

@media screen and (max-width: 767.5px) {
  .block05__list:hover .block05__link a, .block05__list:hover .block05__link p {
    background-image: url(../../img/common/common-arrow_on_pc.png), url(../../img/common/common-circle_on_pc.png);
    background-position: right center, right 1.4666666667vw center;
    background-size: 2.1333333333vw auto, 5.3333333333vw auto;
    background-repeat: no-repeat, no-repeat;
    color: #be0000;
  }
}