@charset "UTF-8";
/* ==========================================================================
    Style sheet name
========================================================================== */
/*  Reset Class
========================================================================== */
.p-main {
  --kc: #3EAD4C;
  --sc: #D7355D;
  --ac: #82BA69;
  --ac-rgb: 130,186,105;
  --fc: #333;
  --ff: 'Montserrat', serif;
  color: var(--fc);
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  margin: 0;
  line-height: 1;
  /*
  .is-lazy {
    margin: auto;

    img[data-lazy-img] {
      width: 88px !important;
      height: 75px !important;
      max-height: initial !important;
    }
  }
  */
}

.p-main *,
.p-main *::before,
.p-main *::after {
  box-sizing: border-box;
}

.p-main .container {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  max-width: 1080px;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 768px) {
  .p-main .container {
    --bs-gutter-x: 4.5rem;
  
  }
}

.p-main .row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-0.5 * var(--bs-gutter-x));
  margin-left: calc(-0.5 * var(--bs-gutter-x));
}

.p-main .row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-top: var(--bs-gutter-y);
}

.p-main .col {
  -webkit-box-flex: 1;
          flex: 1 0 0%;
}

.p-main .col-4 {
  -webkit-box-flex: 0;
          flex: 0 0 auto;
  width: 33.33333333%;
}

.p-main a:hover {
  text-decoration: none;
}

/*  Js Class
========================================================================== */
.js-drawer {
  display: none;
}

@media screen and (max-width: 768px) {
  .js-drawer {
    display: block;
  }
}

.js-drawer-handle {
  display: none;
  position: absolute;
  top: 19px;
  right: 20px;
  cursor: pointer;
  z-index: 4;
  background-color: transparent;
}

@media screen and (max-width: 768px) {
  .js-drawer-handle {
    display: block;
  }
}

.js-drawer-handle.is-active > a:before {
  -webkit-transform: translateY(7px) rotate(-45deg);
          transform: translateY(7px) rotate(-45deg);
}

.js-drawer-handle.is-active > a:after {
  -webkit-transform: translateY(-7px) rotate(45deg);
          transform: translateY(-7px) rotate(45deg);
}

.js-drawer-handle.is-active > a > span {
  opacity: 0;
}

.js-drawer-handle > a {
  display: block;
  width: 25px;
  height: 16px;
}

.js-drawer-handle > a:before, .js-drawer-handle > a:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: #000;
  -webkit-transition: all 0.45s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.45s cubic-bezier(0.19, 1, 0.22, 1);
}

.js-drawer-handle > a:before {
  top: 0;
}

.js-drawer-handle > a:after {
  bottom: 0;
}

.js-drawer-handle > a > span {
  white-space: nowrap;
  text-indent: 100%;
  overflow: hidden;
  display: block;
  position: absolute;
  top: 7px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #000;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.js-drawer-menu {
  visibility: hidden;
  overflow: auto;
  width: 100%;
  max-height: 100vh;
  min-height: 100vh;
  padding: 45px 20px 100px;
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  background: var(--ac);
  opacity: 0;
  color: #000;
  box-sizing: border-box;
  -webkit-transform: translateY(-150px);
          transform: translateY(-150px);
  -webkit-transition: all 0.45s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.45s cubic-bezier(0.19, 1, 0.22, 1);
}

.js-drawer-menu.is-active {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.js-drawer-header {
  --bs-gutter-x: 4.5rem;
  background-color: rgba(255, 255, 255, 0.8);
  margin: -45px -20px 0;
  padding: 10px;
  position: relative;
}

.js-drawer-header .js-drawer-handle {
  margin-top: 0;
}

.js-drawer-nav {
  display: -webkit-box;
  display: flex;
}

.js-drawer-nav .js-drawer-nav__list {
  width: 80%;
  margin: 0 auto;
  text-align: center;
}

.js-drawer-nav .js-drawer-nav__list:before {
  content: '';
  width: 88px;
  height: 75px;
  background-image: url(../img/lineup-hover.png);
  background-size: contain;
  background-repeat: no-repeat;
  display: inline-block;
  margin: 30px auto 0;
  -webkit-transform: translateY(12px);
          transform: translateY(12px);
}

.js-drawer-nav .js-drawer-nav__list li:last-child a {
  border-bottom: 1px solid #fff;
}

.js-drawer-nav .js-drawer-nav__list a {
  border-top: 1px solid #fff;
  display: block;
  color: #fff;
  font-family: var(--ff);
  font-size: 21px;
  font-weight: 700;
  padding: 20px 0;
}

/*  Common Class
========================================================================== */
.fly-in,
.fly-in2,
.fly-in3,
.fly-in-sp-1,
.fly-in-sp-2 {
  -webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, transform 1s ease;
  transition: opacity 1s ease, transform 1s ease, -webkit-transform 1s ease;
  -webkit-transform: translateY(100px);
          transform: translateY(100px);
  opacity: 0;
}

.fly-in.is-active,
.fly-in2.is-active,
.fly-in3.is-active,
.fly-in-sp-1.is-active,
.fly-in-sp-2.is-active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.fly-in2 {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.fly-in3 {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

@media screen and (max-width: 768px) {
  .fly-in-sp-1 {
    -webkit-transition-delay: 0s !important;
            transition-delay: 0s !important;
  }
}

@media screen and (max-width: 768px) {
  .fly-in-sp-2 {
    -webkit-transition-delay: 0.2s !important;
            transition-delay: 0.2s !important;
  }
}

/* #p-kv__headline {
  opacity: 0;
} */

.p-kv {
  width: 100%;
  margin-top: -60px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

@media screen and (max-width: 768px) {
  .p-kv {
    min-height: initial;
    max-height: initial;
  }
}

.p-kv .p-kv__inner {
  width: 100%;
  height: 970px;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  z-index: 10;
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__inner {
    width: 100%;
    height: 830px;
  }
}

.p-kv .p-kv__bgtxt {
  display: -webkit-box;
  display: flex;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.p-kv .p-kv__bgtxt img {
  width: 2040px;
  max-width: 2040px;
  padding-right: 100px;
  white-space: nowrap;
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__bgtxt img {
    width: 1020px;
    max-width: 1020px;
    padding-right: 50px;
  }
}

.p-kv .p-kv__animal .animal1,
.p-kv .p-kv__animal .animal2,
.p-kv .p-kv__animal .animal3,
.p-kv .p-kv__animal .animal4 {
  opacity: 0;
  position: absolute;
  z-index: 10;
}

.p-kv .p-kv__animal .animal1 {
  width: 341px;
  height: 171px;
  bottom: 150px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 300px)) scale(0.5);
          transform: translateX(calc(-50% - 300px)) scale(0.5);
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__animal .animal1 {
    width: 120px;
    height: 60px;
    bottom: 180px;
    -webkit-transform: translateX(calc(-50% - 120px));
            transform: translateX(calc(-50% - 120px));
  }
}

.p-kv .p-kv__animal .animal2 {
  width: 96px;
  height: 114px;
  bottom: 170px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 540px)) scale(0.5);
          transform: translateX(calc(-50% + 540px)) scale(0.5);
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__animal .animal2 {
    width: 40px;
    height: 48px;
    bottom: 140px;
    -webkit-transform: translateX(calc(-50% + 120px));
            transform: translateX(calc(-50% + 120px));
  }
}

.p-kv .p-kv__animal .animal3 {
  width: 113px;
  height: 88px;
  bottom: 170px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 580px)) scale(0.5);
          transform: translateX(calc(-50% - 580px)) scale(0.5);
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__animal .animal3 {
    width: 60px;
    height: 47px;
    bottom: 140px;
    -webkit-transform: translateX(calc(-50% - 120px));
            transform: translateX(calc(-50% - 120px));
  }
}

.p-kv .p-kv__animal .animal4 {
  width: 348px;
  height: 160px;
  bottom: 180px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 300px)) scale(0.5);
          transform: translateX(calc(-50% + 300px)) scale(0.5);
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__animal .animal4 {
    width: 150px;
    height: 69px;
    bottom: 180px;
    -webkit-transform: translateX(calc(-50% + 120px));
            transform: translateX(calc(-50% + 120px));
  }
}

.p-kv .p-kv__wine .wine1,
.p-kv .p-kv__wine .wine2 {
  width: 190px;
  max-width: 190px;
  height: 828px;
  max-height: 828px;
  position: absolute;
  bottom: -160px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__wine .wine1,
  .p-kv .p-kv__wine .wine2 {
    width: 95px;
    height: 414px;
    bottom: 0;
  }
}

.p-kv .p-kv__wine .wine1 {
  opacity: 0;
  z-index: 10;
}

.p-kv .p-kv__wine .wine2 {
  opacity: 1;
  z-index: 20;
}

.p-kv .p-kv__decoration img {
  width: 1280px;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__decoration img {
    width: 100%;
  }
}

.p-kv .p-kv__wine-mask {
  width: 190px;
  height: 0;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  overflow: hidden;
  z-index: 20;
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__wine-mask {
    width: 95px;
    bottom: 0;
  }
}

.p-kv .p-kv__bgcolor {
  --bg: var(--ac);
  --zindex: -1;
  height: 970px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--bg);
  z-index: var(--zindex);
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__bgcolor {
    height: 830px;
  }
}

.p-kv .p-kv__bgcolor.--pink {
  top: 100%;
}

.p-kv .p-kv__grapes {
  width: 100%;
  position: absolute;
  top: -30px;
  left: -50px;
  right: 0;
  margin: auto;
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__grapes {
    top: 40px;
    left: -8px;
  }
}

.p-kv .p-kv__end {
  width: 100%;
  height: 100vh;
  max-height: 900px;
  position: relative;
  z-index: -5;
}

.p-kv .p-kv__end .p-kv__end-ttl {
  position: absolute;
  width: 920px;
  height: 404px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(calc(-50%), calc(-50%));
          transform: translate(calc(-50%), calc(-50%));
  z-index: 10;
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__end .p-kv__end-ttl {
    width: 100%;
    height: auto;
    padding: 0 30px;
    -webkit-transform: translate(-50%, calc(-50% - 70px));
            transform: translate(-50%, calc(-50% - 70px));
  }
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__end .p-kv__end-ttl img {
    width: 540px;
    max-width: 540px;
  }
}

.p-kv .p-kv__end .p-kv__end-grape100 {
  position: absolute;
  top: 230px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 440px));
          transform: translateX(calc(-50% + 440px));
  z-index: 20;
}

.p-kv .p-kv__end .p-kv__end-wine {
  position: absolute;
  top: 150px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 300px));
          transform: translateX(calc(-50% + 300px));
  z-index: 10;
}

.p-kv .p-kv__end .p-kv__end-wine img {
  width: 123px;
  height: 533px;
  margin: 0 10px;
}

.p-kv .p-kv__end .p-kv__end-sheep {
  opacity: 0;
  position: absolute;
  top: 500px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 270px));
          transform: translateX(calc(-50% + 270px));
  z-index: 5;
}

.p-kv .p-kv__background {
  width: 100%;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__background {
    aspect-ratio: 125 / 268;
  }
}

.p-kv .p-kv__background img {
  width: 100%;
  min-width: 1280px;
  -o-object-fit: contain;
     object-fit: contain;
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__background img {
    min-width: initial;
  }
}

.p-kv .p-kv__background img:nth-child(1) {
  min-width: 640px;
}

.p-kv .p-kv__background img:nth-child(3) {
  min-width: 640px;
}

.p-kv .p-kv__background .p-kv__background-windmill {
  width: 80px;
  height: 80px;
  position: absolute;
  top: 382px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 603px));
          transform: translateX(calc(-50% - 603px));
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__background .p-kv__background-windmill {
    width: 12vw;
    height: 12vw;
    top: 51.5%;
    left: 4px;
    -webkit-transform: none;
            transform: none;
  }
}

.p-kv .p-kv__background .p-kv__background-windmill .p-kv__windmill {
  min-width: initial;
  -webkit-animation: 4s linear infinite rotation;
          animation: 4s linear infinite rotation;
}

.p-header {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 10px;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
}

.p-header .p-header__inner {
  max-width: 1080px;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
  margin: 0 auto;
}

.p-header .p-header__logo img {
  width: 180px;
  height: 30px;
}

@media screen and (max-width: 768px) {
  .p-header .p-header__logo img {
    width: 180px;
    height: 30px;
  }
}

@media screen and (max-width: 768px) {
  .p-nav {
    display: none;
  }
}

.p-nav .p-nav__list {
  display: -webkit-box;
  display: flex;
}

.p-nav .p-nav__list li a {
  color: var(--fc);
  display: inline-block;
  font-family: var(--ff);
  font-weight: 600;
  padding: 0 20px;
  position: relative;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.p-nav .p-nav__list li a:hover {
  opacity: 0.7;
}

.p-nav .p-nav__list li a:after {
  content: '';
  width: 1px;
  height: 12px;
  background-color: var(--fc);
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 10;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.p-nav .p-nav__list li:last-child a:after {
  content: none;
}

.p-headline {
  display: inline-block;
  font-size: 60px;
  margin-bottom: 60px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .p-headline {
    font-size: 34px;
  }
}

.p-headline.-on_icon:after {
  content: '';
  width: 137px;
  height: 79px;
  background-image: url(../img/headline.png);
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transition: opacity 0.3s ease, top 0.3s ease, right 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, top 0.3s ease, right 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, top 0.3s ease, right 0.3s ease, transform 0.3s ease;
  transition: opacity 0.3s ease, top 0.3s ease, right 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
}

@media screen and (max-width: 768px) {
  .p-headline.-on_icon:after {
    width: 82px;
    height: 48px;
  }
}

.p-headline.--type2 {
  font-family: var(--ff);
}

.p-headline.--type2:after {
  content: "";
  background-image: url(../img/headline2.png);
}

.p-headline.-on_icon.is-active:after {
  opacity: 1;
  top: -60px;
  right: -90px;
  -webkit-transform: scale(1);
          transform: scale(1);
}

@media screen and (max-width: 768px) {
  .p-headline.-on_icon.is-active:after {
    top: -40px;
    right: -20px;
  }
}

.p-sub-headline {
  max-width: 740px;
  border-top: 1px solid var(--kc);
  border-bottom: 1px solid var(--kc);
  font-size: 27px;
  font-weight: 500;
  margin: 0 auto;
  padding: 20px 0;
  position: relative;
}

@media screen and (max-width: 768px) {
  .p-sub-headline {
    font-size: 21px;
    line-height: 33.6px;
    padding: 10px 0;
  }
}

.p-sub-headline:after {
  content: attr(data-title);
  font-size: 28px;
  font-family: 'Allura', cursive;
  color: var(--kc);
  position: absolute;
  top: -36px;
  left: 0;
  right: 0;
  z-index: 10;
}

.p-section {
  padding: 64px 0;
  position: relative;
}

.p-btn {
  border: 1px solid var(--kc);
  color: var(--kc) !important;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  font-size: 14px;
  font-weight: 700;
  padding: 20px;
  position: relative;
  -webkit-transition: background-color 0.3s ease, color 0.3s ease;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.p-btn[target="_blank"]:not(.m-no-icon):after {
  content: '';
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2010.15%2010.15%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3Anone%3Bstroke%3A%233EAD4C%3Bstroke-miterlimit%3A10%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M6.01.5h3.64v3.1M9.65.5L4.01%206.14M4%20.5H1.5a1%201%200%200%200-1%201v7.15a1%201%200%200%200%201%201h7.15a1%201%200%200%200%201-1V6.19%22%2F%3E%3C%2Fsvg%3E");
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.p-btn:hover {
  background-color: var(--kc);
  color: #fff !important;
}

.p-btn:hover[target="_blank"]:not(.m-no-icon):after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2010.15%2010.15%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3Anone%3Bstroke%3A%23fff%3Bstroke-miterlimit%3A10%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M6.01.5h3.64v3.1M9.65.5L4.01%206.14M4%20.5H1.5a1%201%200%200%200-1%201v7.15a1%201%200%200%200%201%201h7.15a1%201%200%200%200%201-1V6.19%22%2F%3E%3C%2Fsvg%3E");
}

.p-btn.--plus:after {
  content: '';
  width: 30px;
  height: 30px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2230%22%20height%3D%2230%22%20viewBox%3D%220%200%2030%2030%22%3E%20%3Cg%20transform%3D%22translate(-1106%20-7285.569)%22%3E%20%3Crect%20width%3D%2230%22%20height%3D%222%22%20transform%3D%22translate(1106%207299.569)%22%20fill%3D%22%233ead4c%22%2F%3E%20%3Crect%20width%3D%2230%22%20height%3D%222%22%20transform%3D%22translate(1122%207285.569)%20rotate(90)%22%20fill%3D%22%233ead4c%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%) scale(0.5);
          transform: translateY(-50%) scale(0.5);
}

/*  modal
 ========================================================================== */
.modal-video {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000000;
  cursor: pointer;
  opacity: 1;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
  -webkit-animation-duration: 0.3s;
          animation-duration: 0.3s;
  -webkit-animation-name: modal-video;
          animation-name: modal-video;
  -webkit-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}

.modal-video-close {
  opacity: 0;
}

.modal-video-close .modal-video-movie-wrap {
  -webkit-transform: translate(0, 100px);
          transform: translate(0, 100px);
}

.modal-video-body {
  max-width: 960px;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: 0 10px;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  box-sizing: border-box;
}

.modal-video-inner {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
}

.modal-video-movie-wrap {
  width: 400px;
  height: 0;
  position: relative;
  padding-bottom: 76%;
  background-color: #333;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
  -webkit-animation-duration: 0.3s;
          animation-duration: 0.3s;
  -webkit-animation-name: modal-video-inner;
          animation-name: modal-video-inner;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}

@media screen and (max-width: 768px) {
  .modal-video-movie-wrap {
    padding-bottom: 177.58%;
  }
}

.modal-video-movie-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modal-video-close-btn {
  width: 32px;
  height: 32px;
  background-color: #3EAD4C;
  border: 0;
  border-radius: 100%;
  color: #fff;
  position: absolute;
  top: -20px;
  right: -20px;
  z-index: 100;
}

@media screen and (max-width: 768px) {
  .modal-video-close-btn {
    top: -40px;
    right: 10px;
  }
}

.modal-video-close-btn:before {
  content: "\2715";
}

@-webkit-keyframes modal-video {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes modal-video {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@-webkit-keyframes modal-video-inner {
  from {
    -webkit-transform: translate(0, 100px);
            transform: translate(0, 100px);
  }
  to {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@keyframes modal-video-inner {
  from {
    -webkit-transform: translate(0, 100px);
            transform: translate(0, 100px);
  }
  to {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

/*  Section Class
 ========================================================================== */
.p-intro {
  background-image: -webkit-linear-gradient(top, rgba(var(--ac-rgb), 100%) 70%, rgba(var(--ac-rgb), 87%) 80%, rgba(var(--ac-rgb), 40%));
  background-image: linear-gradient(to bottom, rgba(var(--ac-rgb), 100%) 70%, rgba(var(--ac-rgb), 87%) 80%, rgba(var(--ac-rgb), 40%));
  color: #fff;
  padding-top: 0;
  padding-bottom: 160px;
  position: relative;
  text-align: center;
}

.p-intro:after {
  content: '';
  width: 100%;
  height: calc(100vw * 171 / 1280);
  background-image: url(../img/bg-intro.png);
  background-size: cover;
  background-position: top center;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 20;
}

.p-intro > * {
  position: relative;
  z-index: 20;
}

.p-intro .container {
  margin-top: -150px;
}

@media screen and (max-width: 768px) {
  .p-intro .container {
    margin-top: -90px;
  }
}

.p-intro .p-headline {
  font-size: 42px;
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .p-intro .p-headline {
    font-size: 30px;
  }
}

.p-intro .p-intro__read {
  font-size: 16px;
  line-height: 36px;
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__read {
    text-align: left;
  }
}

.p-intro .p-intro__read.--em {
  font-size: 27px;
  font-weight: 600;
  line-height: 40.5px;
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__read.--em {
    font-size: 21px;
    font-weight: 700;
  }
}

.p-intro .p-intro__icon {
  position: absolute;
}

/* .p-intro .p-intro__icon.--sheep {
  top: 0;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 380px)) scale(0.5);
          transform: translateX(calc(-50% + 380px)) scale(0.5);
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__icon.--sheep {
    display: none;
  }
}

.p-intro .p-intro__icon.--flower {
  top: 200px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 480px)) scale(0.5);
          transform: translateX(calc(-50% + 480px)) scale(0.5);
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__icon.--flower {
    display: none;
  }
} */

/* .p-intro .p-intro__icon.--wine-icon {
  bottom: -30px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 320px)) scale(0.5);
          transform: translateX(calc(-50% + 320px)) scale(0.5);
  z-index: 30;
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__icon.--wine-icon {
    bottom: 180px;
    -webkit-transform: none;
            transform: none;
    left: unset;
    right: 5%;
    width: 120px;
    z-index: 0;
  }
}

@media screen and (max-width: 510px) {
  .p-intro .p-intro__icon.--wine-icon {
    bottom: 225px;
  }
}

.p-intro .p-intro__icon.--wine {
  bottom: -60px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 400px));
          transform: translateX(calc(-50% - 400px));
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__icon.--wine {
    height: 320px;
    bottom: -53px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: 10;
  }
  .p-intro .p-intro__icon.--wine img {
    width: auto;
    -webkit-mask-image: -webkit-linear-gradient(transparent 15%, black 40%);
            mask-image: linear-gradient(transparent 15%, black 40%);
  }
} */

.p-circle {
  background-color: #fff;
  padding-top: 140px;
  text-align: center;
  z-index: 20;
}

@media screen and (max-width: 768px) {
  .p-circle {
    /* overflow: hidden; */
    padding-bottom: 120px;
    

  }
}

.p-circle .p-circle__overflow {
  height: 100%;
  overflow: hidden;
  position: relative;
}

.p-circle .p-circle__read {
  font-size: 16px;
  line-height: 32px;
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__read {
    text-align: left;
    line-height: 28px;
  }
}

.p-circle .p-circle__figure {
  width: 100%;
  max-width: 760px;
  height: 550px;
  margin: 30px auto 0 auto;
  position: relative;
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__figure {
    max-width: 330px;
    height: 550px;
  }
}

.p-circle .p-circle__figure .--f01,
.p-circle .p-circle__figure .--f02,
.p-circle .p-circle__figure .--f03,
.p-circle .p-circle__figure .--f04,
.p-circle .p-circle__figure .--f05 {
  position: absolute;
}

.p-circle .p-circle__figure .--f01 {
  top: 0;
  left: 0;
  z-index: 20;
}

.p-circle .p-circle__figure .--f02 {
  width: 555px;
  height: 532px;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
  z-index: 10;
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__figure .--f02 {
    width: 100%;
    height: auto;
    -webkit-transform: rotate(80deg);
            transform: rotate(80deg);
  }
}

.p-circle .p-circle__figure .--f03,
.p-circle .p-circle__figure .--f04,
.p-circle .p-circle__figure .--f05 {
  width: 200px;
  white-space: nowrap;
  z-index: 30;
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__figure .--f03,
  .p-circle .p-circle__figure .--f04,
  .p-circle .p-circle__figure .--f05 {
    width: 100px;
  }
}

.p-circle .p-circle__figure .--f03 p,
.p-circle .p-circle__figure .--f04 p,
.p-circle .p-circle__figure .--f05 p {
  color: #fff;
  font-weight: 700;
  line-height: 25px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__figure .--f03 p,
  .p-circle .p-circle__figure .--f04 p,
  .p-circle .p-circle__figure .--f05 p {
    font-size: 12px;
    line-height: 18px;
  }
}

.p-circle .p-circle__figure .--f03 p strong,
.p-circle .p-circle__figure .--f04 p strong,
.p-circle .p-circle__figure .--f05 p strong {
  background-color: #F2D7E4;
  color: var(--sc);
  padding: 0 4px;
}

.p-circle .p-circle__figure .--f03 {
  top: 190px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 400px));
          transform: translateX(calc(-50% - 400px));
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__figure .--f03 {
    width: 140px;
    top: 110px;
    -webkit-transform: translateX(calc(-50% - 130px));
            transform: translateX(calc(-50% - 130px));
  }
}

.p-circle .p-circle__figure .--f04 {
  top: 190px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 400px));
          transform: translateX(calc(-50% + 400px));
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__figure .--f04 {
    width: 140px;
    top: 110px;
    -webkit-transform: translateX(calc(-50% + 130px));
            transform: translateX(calc(-50% + 130px));
  }
}

.p-circle .p-circle__figure .--f05 {
  bottom: -90px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__figure .--f05 {
    width: 150px;
    bottom: 130px;
  }
}

.p-circle .p-circle__icon {
  width: 168px;
  height: 164px;
  position: absolute;
  top: 230px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 520px));
          transform: translateX(calc(-50% - 520px));
  z-index: 10;
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__icon {
    display: none;
  }
}

.p-circle .p-circle__footprints {
  width: 133px;
  height: 316px;
  position: absolute;
  top: -60px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 450px));
          transform: translateX(calc(-50% + 450px));
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__footprints {
    top: -180px;
    -webkit-transform: translateX(calc(-50% + 100px)) scale(0.5);
            transform: translateX(calc(-50% + 100px)) scale(0.5);
  }
}

.p-circle .p-circle__footprints .--h01,
.p-circle .p-circle__footprints .--h02,
.p-circle .p-circle__footprints .--h03,
.p-circle .p-circle__footprints .--h04,
.p-circle .p-circle__footprints .--h05,
.p-circle .p-circle__footprints .--h06,
.p-circle .p-circle__footprints .--h07,
.p-circle .p-circle__footprints .--h08,
.p-circle .p-circle__footprints .--h09,
.p-circle .p-circle__footprints .--h10,
.p-circle .p-circle__footprints .--h11 {
  opacity: 0;
  position: absolute;
  z-index: 10;
}

.p-circle .p-circle__footprints .--h01 {
  top: 1px;
  left: 5px;
  -webkit-transform: rotate(-40deg);
          transform: rotate(-40deg);
}

.p-circle .p-circle__footprints .--h01.is-active {
  opacity: 0.3;
}

.p-circle .p-circle__footprints .--h02 {
  top: 12px;
  left: 43px;
  -webkit-transform: rotate(-40deg);
          transform: rotate(-40deg);
}

.p-circle .p-circle__footprints .--h02.is-active {
  opacity: 0.3;
}

.p-circle .p-circle__footprints .--h03 {
  top: 50px;
  left: 55px;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}

.p-circle .p-circle__footprints .--h03.is-active {
  opacity: 0.5;
}

.p-circle .p-circle__footprints .--h04 {
  top: 66px;
  left: 90px;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}

.p-circle .p-circle__footprints .--h04.is-active {
  opacity: 0.5;
}

.p-circle .p-circle__footprints .--h05 {
  top: 107px;
  left: 82px;
  -webkit-transform: rotate(-10deg);
          transform: rotate(-10deg);
}

.p-circle .p-circle__footprints .--h05.is-active {
  opacity: 0.8;
}

.p-circle .p-circle__footprints .--h06 {
  top: 125px;
  left: 116px;
  -webkit-transform: rotate(-10deg);
          transform: rotate(-10deg);
}

.p-circle .p-circle__footprints .--h06.is-active {
  opacity: 0.8;
}

.p-circle .p-circle__footprints .--h07 {
  top: 167px;
  left: 94px;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}

.p-circle .p-circle__footprints .--h07.is-active {
  opacity: 0.8;
}

.p-circle .p-circle__footprints .--h08 {
  top: 210px;
  left: 116px;
  -webkit-transform: rotate(20deg);
          transform: rotate(20deg);
}

.p-circle .p-circle__footprints .--h08.is-active {
  opacity: 1;
}

.p-circle .p-circle__footprints .--h09 {
  top: 235px;
  left: 78px;
  -webkit-transform: rotate(20deg);
          transform: rotate(20deg);
}

.p-circle .p-circle__footprints .--h09.is-active {
  opacity: 1;
}

.p-circle .p-circle__footprints .--h10 {
  top: 281px;
  left: 86px;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}

.p-circle .p-circle__footprints .--h10.is-active {
  opacity: 1;
}

.p-circle .p-circle__footprints .--h11 {
  top: 294px;
  left: 41px;
  -webkit-transform: rotate(35deg);
          transform: rotate(35deg);
}

.p-circle .p-circle__footprints .--h11.is-active {
  opacity: 1;
}

.p-circle .p-circle__footprints2 {
  width: 133px;
  height: 316px;
  position: absolute;
  bottom: 160px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 450px)) scale(-1, 1);
          transform: translateX(calc(-50% - 450px)) scale(-1, 1);
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__footprints2 {
    bottom: 60px;
    -webkit-transform: translateX(calc(-50% - 120px)) scale(-0.5, 0.5);
            transform: translateX(calc(-50% - 120px)) scale(-0.5, 0.5);
  }
}

.p-circle .p-circle__footprints2 .--h01,
.p-circle .p-circle__footprints2 .--h02,
.p-circle .p-circle__footprints2 .--h03,
.p-circle .p-circle__footprints2 .--h04,
.p-circle .p-circle__footprints2 .--h05,
.p-circle .p-circle__footprints2 .--h06,
.p-circle .p-circle__footprints2 .--h07,
.p-circle .p-circle__footprints2 .--h08,
.p-circle .p-circle__footprints2 .--h09,
.p-circle .p-circle__footprints2 .--h10,
.p-circle .p-circle__footprints2 .--h11 {
  opacity: 0;
  position: absolute;
  z-index: 10;
}

.p-circle .p-circle__footprints2 .--h01 {
  top: 1px;
  left: 5px;
  -webkit-transform: rotate(-40deg);
          transform: rotate(-40deg);
}

.p-circle .p-circle__footprints2 .--h01.is-active {
  opacity: 0.3;
}

.p-circle .p-circle__footprints2 .--h02 {
  top: 12px;
  left: 43px;
  -webkit-transform: rotate(-40deg);
          transform: rotate(-40deg);
}

.p-circle .p-circle__footprints2 .--h02.is-active {
  opacity: 0.3;
}

.p-circle .p-circle__footprints2 .--h03 {
  top: 50px;
  left: 55px;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}

.p-circle .p-circle__footprints2 .--h03.is-active {
  opacity: 0.5;
}

.p-circle .p-circle__footprints2 .--h04 {
  top: 66px;
  left: 90px;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}

.p-circle .p-circle__footprints2 .--h04.is-active {
  opacity: 0.5;
}

.p-circle .p-circle__footprints2 .--h05 {
  top: 107px;
  left: 82px;
  -webkit-transform: rotate(-10deg);
          transform: rotate(-10deg);
}

.p-circle .p-circle__footprints2 .--h05.is-active {
  opacity: 0.8;
}

.p-circle .p-circle__footprints2 .--h06 {
  top: 125px;
  left: 116px;
  -webkit-transform: rotate(-10deg);
          transform: rotate(-10deg);
}

.p-circle .p-circle__footprints2 .--h06.is-active {
  opacity: 0.8;
}

.p-circle .p-circle__footprints2 .--h07 {
  top: 167px;
  left: 94px;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}

.p-circle .p-circle__footprints2 .--h07.is-active {
  opacity: 0.8;
}

.p-circle .p-circle__footprints2 .--h08 {
  top: 210px;
  left: 116px;
  -webkit-transform: rotate(20deg);
          transform: rotate(20deg);
}

.p-circle .p-circle__footprints2 .--h08.is-active {
  opacity: 1;
}

.p-circle .p-circle__footprints2 .--h09 {
  top: 235px;
  left: 78px;
  -webkit-transform: rotate(20deg);
          transform: rotate(20deg);
}

.p-circle .p-circle__footprints2 .--h09.is-active {
  opacity: 1;
}

.p-circle .p-circle__footprints2 .--h10 {
  top: 281px;
  left: 86px;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}

.p-circle .p-circle__footprints2 .--h10.is-active {
  opacity: 1;
}

.p-circle .p-circle__footprints2 .--h11 {
  top: 294px;
  left: 41px;
  -webkit-transform: rotate(35deg);
          transform: rotate(35deg);
}

.p-circle .p-circle__footprints2 .--h11.is-active {
  opacity: 1;
}

.p-circle .p-circle__history .--h01,
.p-circle .p-circle__history .--h02 {
  position: absolute;
  z-index: 10;
}

.p-circle .p-circle__history .--h01 {
  width: 133px;
  height: 316px;
  position: absolute;
  top: -60px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 450px));
          transform: translateX(calc(-50% + 450px));
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__history .--h01 {
    top: -180px;
    -webkit-transform: translateX(calc(-50% + 100px)) scale(0.5);
            transform: translateX(calc(-50% + 100px)) scale(0.5);
  }
}

.p-circle .p-circle__history .--h02 {
  width: 133px;
  height: 316px;
  position: absolute;
  bottom: 160px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 450px));
          transform: translateX(calc(-50% - 450px));
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__history .--h02 {
    bottom: 60px;
    -webkit-transform: translateX(calc(-50% - 120px)) scale(0.5);
            transform: translateX(calc(-50% - 120px)) scale(0.5);
  }
}

.p-circle .p-circle__photo {
  width: 100%;
  height: 420px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__photo {
    height: auto;
    position: static;
  }
}

.p-circle .p-circle__photo .--p01,
.p-circle .p-circle__photo .--p02 {
  position: absolute;
  z-index: 10;
}

.p-circle .p-circle__photo .--p01 {
  width: 396px;
  height: 313px;
  position: absolute;
  top: -60px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 330px));
          transform: translateX(calc(-50% + 330px));
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__photo .--p01 {
    width: 250px;
    height: auto;
    top: unset;
    bottom: 110px;
    -webkit-transform: translateX(calc(-50% + 110px));
            transform: translateX(calc(-50% + 110px));
    z-index: -1;
  }
}

.p-circle .p-circle__photo .--p02 {
  width: 396px;
  height: 313px;
  position: absolute;
  top: 150px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 120px));
          transform: translateX(calc(-50% - 120px));
}

@media screen and (max-width: 768px) {
  .p-circle .p-circle__photo .--p02 {
    width: 230px;
    height: auto;
    top: unset;
    bottom: 0;
    -webkit-transform: translateX(calc(-50% - 100px));
            transform: translateX(calc(-50% - 100px));
  }
}

.p-separate {
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  z-index: 20;
}

.p-separate:after {
  content: '';
  display: block;
}

.p-separate.--s01:after {
  padding: calc(100% * 55 / 128) 0 0;
}

@media screen and (max-width: 768px) {
  .p-separate.--s01:after {
    padding: calc(100% * 209 / 250) 0 0;
  }
}

.p-separate.--s02:after {
  padding: calc(100% * 367 / 1280) 0 0;
}

@media screen and (max-width: 768px) {
  .p-separate.--s02:after {
    padding: calc(100% * 308 / 375) 0 0;
  }
}

.p-separate .p-separate__windmill {
  width: 6vw;
  height: 6vw;
  position: absolute;
  top: -1%;
  left: 0.6%;
}

@media screen and (max-width: 768px) {
  .p-separate .p-separate__windmill {
    width: 12vw;
    height: 12vw;
    top: -1%;
    left: 0.6%;
  }
}

.p-separate .p-separate__windmill .p-separate__windmill-img {
  width: 100%;
  -webkit-animation: 4s linear infinite rotation;
          animation: 4s linear infinite rotation;
}

@-webkit-keyframes rotation {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes rotation {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

.p-movie {
  padding-bottom: 120px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-movie {
    padding-top: 100px;
    padding-bottom: 60px;
  }
}

@media screen and (max-width: 768px) {
  .p-movie .col-4 {
    -webkit-box-flex: 0;
            flex: 0 0 auto;
    width: 50%;
  }
}

.p-movie .p-movie__after {
  width: 100%;
  height: calc(100vw * 1187 / 2563);
  background-image: url(../img/cta-bg.png);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 400px;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: -1;
}

@media screen and (max-width: 768px) {
  .p-movie .p-movie__after {
    height: calc(100vw * 1153 / 750);
    background-image: url(../img/cta-bg-sp.png);
  }
}

.p-movie .p-movie__after:before {
  content: '';
  width: 100%;
  height: 100%;
  background-image: url(../img/ani-sheep.gif);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -100px;
  left: 0;
  right: 0;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .p-movie .p-movie__after:before {
    top: -10px;
  }
}

.p-movie .row {
  max-width: 740px;
  margin: 0 auto;
}

.p-movie .p-movie__list {
  margin-top: 32px;
  text-align: left;
}

.p-movie .p-movie__ttl {
  border-bottom: 1px solid var(--kc);
  color: var(--kc);
  display: inline-block;
  font-size: 20px;
  line-height: 1.2;
  margin-top: 12px;
  padding-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .p-movie .p-movie__ttl {
    font-size: 16px;
  }
}

.p-movie .p-movie__read {
  color: var(--fc);
  line-height: 1.5;
  margin-top: 12px;
  font-weight: 700;
}

@media screen and (max-width: 768px) {
  .p-movie .p-movie__accordion-target {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.5s ease-out;
    transition: max-height 0.5s ease-out;
  }
}

.p-movie .p-movie__open {
  width: 100%;
  background-color: #fff;
  margin-top: -60px;
}

.p-movie .p-movie__open.is-active {
  margin-top: 32px;
}

.p-movie .p-movie__open.is-active:before {
  content: none;
}

.p-movie .p-movie__open.is-active:after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2230%22%20height%3D%2230%22%20viewBox%3D%220%200%2030%2030%22%3E%20%3Cg%20transform%3D%22translate(-1106%20-7285.569)%22%3E%20%3Crect%20width%3D%2230%22%20height%3D%222%22%20transform%3D%22translate(1106%207299.569)%22%20fill%3D%22%233ead4c%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
}

.p-movie .p-movie__open:before {
  content: '';
  width: calc(100% + 2px);
  height: 200px;
  background-image: -webkit-linear-gradient(top, transparent, #fff);
  background-image: linear-gradient(to bottom, transparent, #fff);
  position: absolute;
  top: -201px;
  left: -1px;
  right: 0;
  z-index: 1;
}

.p-movie .p-movie__open:hover {
  color: var(--kc) !important;
}

.p-movie .p-movie__comingsoon {
  display: inline-block;
  font-size: 36px;
  font-family: var(--ff);
  font-weight: 700;
  margin-top: 64px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .p-movie .p-movie__comingsoon {
    display: block;
    font-size: 31px;
    font-weight: 500;
    text-align: center;
  }
}

@media screen and (max-width: 520px) {
  .p-movie .p-movie__comingsoon {
    text-align: left;
  }
}

.p-movie .p-movie__comingsoon:before {
  content: '';
  background-image: url(../img/movie-coming.png), url(../img/movie-coming.png);
  background-size: 65px 18px, 65px 18px;
  background-position: left bottom, right bottom;
  background-repeat: no-repeat, no-repeat;
  margin: auto;
  position: absolute;
  left: -100px;
  right: -100px;
  top: 0;
  bottom: 0;
}

@media screen and (max-width: 768px) {
  .p-movie .p-movie__comingsoon:before {
    width: 131px;
    height: 36px;
    background-image: url(../img/movie-coming.png);
    background-size: 32px 9px;
    background-position: right bottom;
    background-repeat: no-repeat;
    left: 50%;
    right: unset;
    -webkit-transform: translateX(calc(-50% + 100px));
            transform: translateX(calc(-50% + 100px));
  }
}

@media screen and (max-width: 520px) {
  .p-movie .p-movie__comingsoon:before {
    background-position: right 70px bottom;
    background-repeat: no-repeat;
    left: unset;
    right: 0;
    -webkit-transform: none;
            transform: none;
  }
}

.p-movie .p-movie__comingsoon:after {
  content: '';
  width: 110px;
  height: 114px;
  background-image: url(../img/movie-sheep.png);
  background-size: contain;
  background-position: left bottom;
  background-repeat: no-repeat;
  margin: auto;
  position: absolute;
  right: -230px;
  top: -50px;
}

@media screen and (max-width: 768px) {
  .p-movie .p-movie__comingsoon:after {
    width: 60px;
    height: 80px;
    left: 50%;
    top: -40px;
    -webkit-transform: translateX(calc(-50% + 210px));
            transform: translateX(calc(-50% + 210px));
    right: unset;
  }
}

@media screen and (max-width: 520px) {
  .p-movie .p-movie__comingsoon:after {
    right: 0;
    left: unset;
    -webkit-transform: none;
            transform: none;
  }
}

.p-movie .p-sub-headline:before {
  content: '';
  width: 183px;
  height: 164px;
  background-image: url(../img/movie-ttl.png);
  background-size: contain;
  background-position: left bottom;
  background-repeat: no-repeat;
  margin: auto;
  position: absolute;
  left: -110px;
  top: -80px;
}

@media screen and (max-width: 768px) {
  .p-movie .p-sub-headline:before {
    left: -90px;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
}

/*202506 追加*/
.p-movie .p-banner__box{
  display: flex;
  gap: 50px;
}

@media screen and (max-width: 768px) {
  .p-movie .p-banner__box{
    flex-direction: column;
  }

  .p-movie .p-movie__banner + .p-movie__banner{
    margin-top: 0;
  }
}
/*202506 追加ここまで*/

.p-movie .p-movie__banner {
  width: 100%;
  max-width: 720px;
  height: 278px;
  display: block;
  margin: 180px auto 0 auto;
  opacity: 1;
  position: relative;
  z-index: 10;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media screen and (max-width: 768px) {
  .p-movie .p-movie__banner {
    max-width: 330px;
    height: auto;
  }
}


.p-movie .p-movie__banner:hover {
  opacity: 0.7;
}

.p-movie .p-movie__banner:hover .p-movie__banner-btn:after {
  right: 15px;
}

@media screen and (max-width: 768px) {
  .p-movie .p-movie__banner {
    margin: 120px auto 0 auto;
  }
}

.p-movie .p-movie__banner .p-movie__banner-btn {
  width: 50%;
  background-color: var(--sc);
  border-radius: 50rem;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  position: absolute;
  bottom: -20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  padding: 15px 20px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-movie .p-movie__banner .p-movie__banner-btn {
    width: 70%;
    padding: 10px 20px;
  }
}

.p-movie .p-movie__banner .p-movie__banner-btn:after {
  content: '';
  width: 18px;
  height: 18px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218.182%22%20height%3D%2218.182%22%20viewBox%3D%220%200%2018.182%2018.182%22%3E%20%3Cpath%20id%3D%22%22%20d%3D%22M10.587.579%2C17.1.5V7.1m0-6.6-12%2C12%22%20transform%3D%22translate(5.73%20-3.354)%20rotate(45)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%3C%2Fsvg%3E");
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: right 0.3s ease;
  transition: right 0.3s ease;
}

.p-movie .p-movie__banner .p-movie__banner-btn:hover:after {
  right: 15px;
}

.p-wine {
  width: 100%;
  height: 400px;
  background-size: cover;
  background-position: top -120px center;
  background-repeat: no-repeat;
  padding: 0;
}

@media screen and (max-width: 768px) {
  .p-wine {
    height: 250px;
    background-position: bottom -110px center;
  }
}

.p-wine .p-wine__image {
  width: 412px;
  height: 185px;
  position: absolute;
  bottom: -70px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 460px));
          transform: translateX(calc(-50% - 460px));
  z-index: 20;
}

@media screen and (max-width: 768px) {
  .p-wine .p-wine__image {
    -webkit-transform: translateX(calc(-50% - 150px)) scale(0.5);
            transform: translateX(calc(-50% - 150px)) scale(0.5);
  }
}

.p-sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

.p-history {
  background-color: #fff;
  overflow: hidden;
  padding: 120px 0;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-history {
    padding: 60px 0;
  }
}

.p-history .p-history__scroll {
  width: -webkit-max-content;
  width: max-content;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  white-space: nowrap;
  overflow: hidden;
}

.p-history .p-hitory__section {
  display: inline-block;
}

.p-history .p-history__list {
  width: -webkit-max-content;
  width: max-content;
  display: -webkit-box;
  display: flex;
  margin-left: 340px;
}

@media screen and (max-width: 768px) {
  .p-history .p-history__list {
    margin-left: 110px;
  }
}

.p-history .p-history__list li {
  width: 100%;
  max-width: 605px;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  padding-right: 80px;
  position: relative;
  text-align: left;
}

@media screen and (max-width: 768px) {
  .p-history .p-history__list li {
    max-width: 380px;
  }
}

.p-history .p-history__item {
  -webkit-box-ordinal-group: 3;
          order: 2;
  -webkit-transform: translateY(-70px);
          transform: translateY(-70px);
}

@media screen and (max-height: 740px) {
  .p-history .p-history__item {
    -webkit-transform: translateY(-50px);
            transform: translateY(-50px);
  }
}

@media screen and (max-height: 650px) {
  .p-history .p-history__item {
    -webkit-transform: translateY(-60px);
            transform: translateY(-60px);
  }
}

@media screen and (max-width: 768px) {
  .p-history .p-history__item {
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px);
  }
}

.p-history .p-history__headline {
  width: 396px;
  height: 98px;
  position: absolute;
  top: 50%;
  left: -250px;
  -webkit-transform: translateY(calc(-50% - 80px));
          transform: translateY(calc(-50% - 80px));
  z-index: 10;
}

@media screen and (max-height: 740px) {
  .p-history .p-history__headline {
    width: 240px;
    height: 60px;
    left: -180px;
  }
}

@media screen and (max-height: 650px) {
  .p-history .p-history__headline {
    width: 240px;
    height: 60px;
    left: -180px;
  }
}

@media screen and (max-width: 768px) {
  .p-history .p-history__headline {
    width: 184px;
    height: 49px;
    -webkit-transform: translateY(calc(-50% - 90px));
            transform: translateY(calc(-50% - 90px));
    left: -120px;
  }
}

.p-history .p-history__ttl {
  font-size: 24px;
  font-weight: 500;
  line-height: 38.4px;
}

@media screen and (max-height: 740px) {
  .p-history .p-history__ttl {
    font-size: 20px;
    line-height: 30.4px;
  }
}

@media screen and (max-height: 650px) {
  .p-history .p-history__ttl {
    font-size: 18px;
  }
}

@media screen and (max-width: 768px) {
  .p-history .p-history__ttl {
    font-size: 18px;
    font-weight: 700;
    line-height: 25px;
  }
}

.p-history .p-history__read {
  font-size: 14px;
  line-height: 24.5px;
  margin-top: 10px;
  white-space: initial;
}

@media screen and (max-height: 650px) {
  .p-history .p-history__read {
    font-size: 12px;
  }
}

.p-history .p-history__attention {
  font-size: 12px;
  margin-top: 10px;
}

.p-history .p-history__img {
  width: 100%;
  max-width: 605px;
  height: auto;
  -webkit-box-ordinal-group: 2;
          order: 1;
  position: relative;
  z-index: -1;
}

@media screen and (max-height: 740px) {
  .p-history .p-history__img {
    max-width: 410px;
  }
}

@media screen and (max-height: 650px) {
  .p-history .p-history__img {
    max-width: 360px;
  }
}

@media screen and (max-width: 768px) {
  .p-history .p-history__img {
    width: 300px;
    height: 204px;
  }
}

.p-history .p-history__img img {
  -o-object-fit: contain;
     object-fit: contain;
}

.p-history .txt {
  white-space: nowrap;
}

.p-feature {
  width: 100%;
}

.p-feature:before {
  content: '';
  width: 100%;
  height: 100dvh;
  background-image: url(../img/cta-bg.png);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: -1;
}

@media screen and (max-width: 768px) {
  .p-feature:before {
    height: calc(100vw * 1153 / 750);
    background-image: url(../img/cta-bg-sp.png);
  }
}

.p-feature .container {
  --bs-gutter-x: 7rem;
}

@media screen and (max-width: 768px) {
  .p-feature .container {
    --bs-gutter-x: 3.5rem;
  }
}

.p-feature .row {
  --bs-gutter-x: 7rem;
  -webkit-box-pack: center;
          justify-content: center;
}

@media screen and (max-width: 768px) {
  .p-feature .row {
    --bs-gutter-x: 3.5rem;
  }
}

@media screen and (max-width: 768px) {
  .p-feature .col,
  .p-feature .col-4 {
    -webkit-box-flex: 0;
            flex: 0 0 auto;
    width: 100%;
    margin-top: 30px;
  }
}

@media screen and (max-width: 768px) {
  .p-feature .col:first-child,
  .p-feature .col-4:first-child {
    margin-top: 0;
  }
}

.p-feature .p-feature__headline {
  font-size: 27px;
  font-weight: 500;
  margin: 60px 0;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-feature .p-feature__headline {
    font-size: 21px;
    margin: 0;
  }
}

.p-feature .p-feature__ttl {
  height: 48px;
  color: var(--kc);
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  align-content: flex-end;
  flex-wrap: wrap;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  text-align: center;
}

.p-feature .p-feature__ttl span {
  position: relative;
}

.p-feature .p-feature__ttl span:before, .p-feature .p-feature__ttl span:after {
  content: '';
  width: 30px;
  height: 1px;
  background-color: var(--kc);
  position: absolute;
  bottom: 10px;
}

.p-feature .p-feature__ttl span:before {
  left: -35px;
  -webkit-transform: rotate(65deg);
          transform: rotate(65deg);
}

.p-feature .p-feature__ttl span:after {
  right: -35px;
  -webkit-transform: rotate(-65deg);
          transform: rotate(-65deg);
}

.p-feature .p-feature__img {
  width: 100%;
  height: 200px;
  margin-top: 30px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-feature .p-feature__img {
    height: auto;
  }
}

@media screen and (max-width: 768px) {
  .p-feature .p-feature__img img {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .p-feature .p-feature__img.--f01 img {
    width: 100%;
    aspect-ratio: 69 / 32;
  }
}

@media screen and (max-width: 768px) {
  .p-feature .p-feature__img.--f02 img {
    width: 60%;
    aspect-ratio: 51 / 37;
  }
}

@media screen and (max-width: 768px) {
  .p-feature .p-feature__img.--f03 img {
    width: 40%;
    aspect-ratio: 34 / 35;
  }
}

.p-feature .p-feature__read {
  font-size: 14px;
  line-height: 24.5px;
}

.p-feature .p-btn {
  margin-top: 60px;
}

@media screen and (max-width: 768px) {
  .p-feature .p-btn {
    margin-top: 30px;
  }
}

.p-lineup {
  background-color: var(--ac);
  text-align: center;
  margin: 120px 0;
  position: relative;
}

@media screen and (max-width: 768px) {
  .p-lineup {
    margin: 60px 0;
  }
}

.p-lineup:before, .p-lineup:after {
  content: '';
  width: 100%;
  height: calc(100vw * 21 / 256);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 10;
}

.p-lineup:before {
  top: calc(100vw * 21 / 256 * -1);
  background-image: url(../img/lineup-top.png);
}

.p-lineup:after {
  height: calc(100vw * 241 / 1280);
  bottom: -60px;
  background-image: url(../img/lineup-bottom.png);
}

.p-lineup .p-lineup__inner {
  margin-top: -60px;
  overflow: hidden;
  position: relative;
  z-index: 60;
}

.p-lineup .container {
  max-width: 960px;
}

.p-lineup .p-headline {
  color: #fff;
  margin-top: 60px;
}

.p-lineup .col {
  -webkit-box-flex: 0;
          flex: 0 0 auto;
  width: 50%;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-lineup .col {
    width: 100%;
    margin-top: 30px;
  }
}

@media screen and (max-width: 768px) {
  .p-lineup .col:first-child {
    margin-top: 0;
  }
}

.p-lineup .col:nth-child(3) .p-lineup__img, .p-lineup .col:nth-child(4) .p-lineup__img {
  margin-top: 60px;
}

@media screen and (max-width: 768px) {
  .p-lineup .col:nth-child(3) .p-lineup__img, .p-lineup .col:nth-child(4) .p-lineup__img {
    margin-top: 0;
  }
}

.p-lineup .col .p-lineup__img {
  width: 380px;
  height: 380px;
}

@media screen and (max-width: 768px) {
  .p-lineup .col .p-lineup__img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
  }
}

.p-lineup .p-lineup__link {
  color: #fff;
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  text-align: center;
}

.p-lineup .p-lineup__link:hover .p-lineup__hover {
  opacity: 1;
}

.p-lineup .p-lineup__link:hover .p-lineup__icon {
  opacity: 1;
  top: -63px;
}

.p-lineup .p-lineup__ttl {
  -webkit-box-ordinal-group: 3;
          order: 2;
  margin-top: 30px;
}

@media screen and (max-width: 768px) {
  .p-lineup .p-lineup__ttl {
    line-height: 28px;
    margin-top: 15px;
  }
}

.p-lineup .p-lineup__sttl {
  -webkit-box-ordinal-group: 4;
          order: 3;
  margin-top: 15px;
}

.p-lineup .p-lineup__img {
  -webkit-box-ordinal-group: 2;
          order: 1;
  position: relative;
}

.p-lineup .p-lineup__hover {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: opacity 0.6s ease;
  transition: opacity 0.6s ease;
  z-index: 10;
}

.p-lineup .p-lineup__icon {
  opacity: 0;
  position: absolute;
  top: -50px;
  left: 0;
  -webkit-transition: opacity 0.6s ease, top 0.6s ease;
  transition: opacity 0.6s ease, top 0.6s ease;
  z-index: 10;
}

.p-lineup .p-circle__illust {
  position: absolute;
  top: calc(100vw * 21 / 256 * -1 - 60px);
  left: 0;
  right: 0;
  bottom: calc(100vw * 21 / 256 * -1 - 60px);
  overflow: hidden;
  margin: auto;
  z-index: 50;
}

.p-lineup .p-circle__illust .--c01 {
  position: absolute;
  top: 0;
  right: 0;
  width: 420px;
  height: auto;
  z-index: 10;
}

@media screen and (max-width: 768px) {
  .p-lineup .p-circle__illust .--c01 {
    width: 210px;
    top: 30px;
    right: -40px;
  }
}

.p-lineup .p-circle__illust .--c02 {
  position: absolute;
  top: 0;
  left: 0;
  width: 338px;
  height: auto;
  z-index: 10;
}

@media screen and (max-width: 768px) {
  .p-lineup .p-circle__illust .--c02 {
    width: 168px;
    top: 30px;
    left: -50px;
  }
}

.p-lineup .p-circle__illust .--c03 {
  position: absolute;
  top: 200px;
  right: -100px;
  width: 280px;
  height: auto;
  z-index: 10;
}

@media screen and (max-width: 768px) {
  .p-lineup .p-circle__illust .--c03 {
    display: none;
  }
}

.p-lineup .p-circle__illust .--c04 {
  position: absolute;
  top: 500px;
  left: -120px;
  width: 312px;
  height: auto;
  z-index: 10;
}

@media screen and (max-width: 768px) {
  .p-lineup .p-circle__illust .--c04 {
    display: none;
  }
}

.p-lineup .p-circle__illust .--c05 {
  position: absolute;
  bottom: 0;
  left: 40px;
  width: 264px;
  height: auto;
  z-index: 20;
}

@media screen and (max-width: 768px) {
  .p-lineup .p-circle__illust .--c05 {
    width: 132px;
    bottom: 10px;
    left: -20px;
  }
}

.p-lineup .p-circle__illust .--c06 {
  position: absolute;
  bottom: 0;
  right: 30px;
  width: 218px;
  height: auto;
  z-index: 20;
}

@media screen and (max-width: 768px) {
  .p-lineup .p-circle__illust .--c06 {
    width: 109px;
    bottom: 10px;
    right: 0px;
  }
}

.p-news {
  text-align: center;
}

.p-news .container {
  max-width: 500px;
}

.p-news .p-headline {
  margin-bottom: 50px;
}

.p-news .p-news__list li {
  display: -webkit-box;
  display: flex;
  font-size: 14px;
  padding: 10px 0;
  text-align: left;
}

.p-news .p-news__list li time {
  -webkit-box-flex: 0;
          flex: 0 0 auto;
  width: 120px;
}

.p-news .p-news__list li p {
  -webkit-box-flex: 0;
          flex: 0 0 auto;
  width: calc(100% - 120px);
  margin-top: 0;
}

.p-loading {
  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  z-index: 1010;
}

.p-loading .p-loading__inner {
  --bg: #fff;
  --circle: 0%;
  --zindex: 20;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--bg);
  -webkit-clip-path: circle(var(--circle));
          clip-path: circle(var(--circle));
  z-index: var(--zindex);
}

.p-loading .p-loading__logo {
  width: 491px;
  height: 369px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 10;
}

@media screen and (max-width: 768px) {
  .p-loading .p-loading__logo {
    width: 240px;
    height: 180px;
  }
}

.p-loading .p-loading__logo img {
  width: 100%;
  height: auto;
}

.p-loading .p-loading__logo:not(.--shape) {
  z-index: 20;
}

.p-loading .p-loading__logo:not(.--shape) img {
  -webkit-filter: drop-shadow(0 3px 10px rgba(0, 0, 0, 0.16));
          filter: drop-shadow(0 3px 10px rgba(0, 0, 0, 0.16));
  position: relative;
}





/*2024年9月 KV更新*/

/*既存の設定されていたクラス上書き*/
@media screen and (max-width: 768px) {
    .p-main{
      overflow: hidden;
    }
}

.p-kv{
  margin-top: 0;
}

.p-intro .container{
  margin-top: 0;
}

.p-kv .p-kv__inner{
  height: initial;
  position: relative;
  background-image: linear-gradient(to bottom, rgba(var(--ac-rgb), 100%) 70%, rgba(var(--ac-rgb), 87%) 80%, rgba(var(--ac-rgb), 40%));
}

@media screen and (max-width: 768px) {
  .p-circle{
    /* overflow: initial; */
    overflow-x: hidden; /* 左右のオーバーフローを隠す */
    overflow-y: visible; /* 上下のオーバーフローを表示 */
  }
}

/*新しく追加した要素*/
.kv-bg{
  position: relative;
}

.kv-bg .kv-bg_img{
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}

.kv-bg .kv-bg_img li{
  width: 50%;
}

.kv-bg .kv-bg_img li picture{
  width: 100%;
  display: block;
}

.kv-bg .kv-main{
  top: 0;
  width: 100%;
}

.kv-bg .kv-main .kv-tit{
  position: absolute;
  z-index: 10;
  /* top: 50%;
  transform: translateY(-50%); */
  top: 5%;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  /* max-width: 1280px; */
}

.kv-bg .kv-main .kv-tit picture{
  display: block;
  width: 100%;
}

.kv-bg .kv-main .kv-tit picture img{
  width: 100%;
}

.kv-bg .kv-main .kv-icon{
  width: 19%;
  position: absolute;
  bottom: 28px;
  right: 24%;
  z-index: 20;
}

@media screen and (max-width: 768px) {
  .p-kv .p-kv__inner{
    overflow: initial;
  }
  .kv-bg .kv-bg_img{
    display: block;
  }

  .kv-bg .kv-bg_img li{
    width: 100%;
  }

  .kv-bg .kv-bg_img li#kv-image-3{
    margin-top: 15%;
  }

  .kv-bg .kv-main .kv-tit{
    /* top: 27.8%; */
    /* transform: translateY(-25%); */
    top: 39.5%;
  }

  .kv-tit__sp{
    position: relative;
  }

  .kv-tit__sp #kv-title{
    position: absolute;
    top: -51%;
  }
  

  .kv-bg .kv-main .kv-icon{
    width: 43%;
    right: 4%;
    bottom: -5%;
  }
}

/*KVアニメーション*/
#kv-image, #kv-title {
  opacity: 0;
}

#kv-title {
  /* transform: translateY(50px); */
  /* transform: translateX(-50%) !important; */
  /* transition: opacity 1s ease-out, transform 1.5s ease-out; */
}

/* .kv-main .tit_bg{
  background-color: #fff;
  background-color: #3EAD4C;
  height: 107px;
  position: absolute;
  z-index: 0;
  top: 54.352%;
  width: calc(100vw + 20px);
  transform: rotate(-4deg);
} */

/*2024年9月 KV下のリード更新*/

/*既存の設定されていたクラス上書き*/
@media screen and (max-width: 768px) {
  .p-intro{
    padding-bottom: 220px;
  }
}

.p-intro .container{
  padding-top: 60px;
}

@media screen and (max-width: 768px) {
  .p-intro .container{
      padding-top: 120px;
  }

}

.p-intro .p-headline{
  line-height: 1.4;
}

.p-intro .p-intro__read{
  font-size: 23px;
}
@media screen and (max-width: 768px) {
    .p-intro .p-intro__read{
      font-size: 16px;
      text-align: center;
    }
}

.p-intro .p-headline{
  font-size: 52px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-intro .p-headline{
      font-size: 30px;
  }
}


@media screen and (max-width: 768px) {
  .p-intro .p-intro__read {
      line-height: 1.8;
  }
}

@media screen and (max-width: 768px) {
  .p-circle__footprints{
    z-index: 50;
  }
}


/*新規追加したクラス（アイコン）*/
.p-intro .p-intro__icon.--duck {
  top: 40px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 430px)) scale(0.5);
  transform: translateX(calc(-50% + 430px)) scale(0.5);
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__icon.--duck {
    /* -webkit-transform: none;
    transform: none; */
    width: 70px;
    /* width: 9vw; */
    /* top: 350px; */
    top: 26%;
    right: calc(1.5rem * 0.5);
    -webkit-transform: translateX(calc(-50% + 150px)) scale(0.5);
    transform: translateX(calc(-50% + 150px)) scale(0.5);
  }
}

.p-intro .p-intro__icon.--animal_grape {
  top: 50px;
  right: 50%;
  -webkit-transform: translateX(calc(50% + -410px)) scale(0.5);
          transform: translateX(calc(50% + -410px)) scale(0.5);
  animation: pikopiko 1s steps(2, start) infinite;
}

@keyframes pikopiko {
  0% {
    transform: translateX(calc(50% + -410px)) scale(0.5) rotate(20deg);
  }
  to {
    transform: translateX(calc(50% + -410px)) scale(0.5) rotate(-10deg);
  }
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__icon.--animal_grape{
    -webkit-transform: none;
    transform: none;
    width: 183px;
    top: -15px;
    /* right: initial; */
    /* left: calc(1.5rem * 0.5); */
    -webkit-transform: translateX(calc(50% + -140px)) scale(0.5);
          transform: translateX(calc(50% + -140px)) scale(0.5);
  }

  @keyframes pikopiko {
    0% {
      transform: translateX(calc(50% + -140px)) scale(0.5) rotate(20deg);
    }
    to {
      transform: translateX(calc(50% + -140px)) scale(0.5) rotate(-10deg);
    }
  }
}

.p-intro .p-intro__icon.--wine-icon {
  top: 170px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 350px)) scale(0.5);
          transform: translateX(calc(-50% + 350px)) scale(0.5);
  z-index: 30;
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__icon.--wine-icon {
    z-index: 0;
    top: initial;
    width: 205px;
    bottom: 1%;
    right: 50%;

    -webkit-transform: translateX(calc(50% + -320px)) scale(0.5);
    transform: translateX(calc(50% + -320px)) scale(0.5);
  }
}

.p-intro .p-intro__icon.--sheep {
  top: 420px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 380px)) scale(0.5);
          transform: translateX(calc(-50% + 380px)) scale(0.5);
  animation: pikopiko2 1s steps(2, start) infinite;
}

@keyframes pikopiko2 {
  0% {
    transform: translateX(calc(-50% + 380px)) scale(0.5) rotate(-10deg);
  }
  to {
    transform: translateX(calc(-50% + 380px)) scale(0.5) rotate(20deg);
  }
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__icon.--sheep{
    width: 170px;
    top: initial;
    bottom: 9%;
    -webkit-transform: translateX(calc(-50% + 120px)) scale(0.5);
          transform: translateX(calc(-50% + 120px)) scale(0.5);
  }

  @keyframes pikopiko2 {
    0% {
      transform: translateX(calc(-50% + 120px)) scale(0.5) rotate(-10deg);
    }
    to {
      transform: translateX(calc(-50% + 120px)) scale(0.5) rotate(20deg);
    }
  }
}

.p-intro .p-intro__icon.--flower {
  top: 660px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 440px)) scale(0.5);
          transform: translateX(calc(-50% + 440px)) scale(0.5);
  
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__icon.--flower{
    z-index: 0;
    top: initial;
    width: 104px;
    bottom: 14%;
    right: 50%;

    -webkit-transform: translateX(calc(50% + -190px)) scale(0.5);
    transform: translateX(calc(50% + -190px)) scale(0.5);
  }
}

.p-intro .p-intro__icon.--wine {
  bottom: -60px;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 450px));
          transform: translateX(calc(-50% - 450px));
}

@media screen and (max-width: 768px) {
  .p-intro .p-intro__icon.--wine {
    height: 320px;
    bottom: -53px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: 10;
  }
  .p-intro .p-intro__icon.--wine img {
    width: auto;
    -webkit-mask-image: -webkit-linear-gradient(transparent 5%, black 40%);
            mask-image: linear-gradient(transparent 5%, black 40%);
  }
}

/*バナーがcomingsoonの時の処理*/
.p-movie .p-movie__banner.coming-soon:hover {
  opacity: initial;
}

/*  Example ID
 ========================================================================== */

/*# sourceMappingURL=style.css.map */
