@charset "utf-8";

/***************************************************
  style.css
***************************************************/

/*------------------------------------------------*/

/* pc */

/*------------------------------------------------*/

/* common ----------------------------------------*/

.ouchiyakiniku_wrap .fit {
  width: 100%;
}

.ouchiyakiniku_wrap .btn_obj {
  cursor: pointer;
}

.ouchiyakiniku_wrap .pc {
  display: block;
}

.ouchiyakiniku_wrap .sp {
  display: none;
}

.ouchiyakiniku_wrap .font_kosugi{
  font-family: "Kosugi", sans-serif;
  font-weight: bold;
}

.anchor {
  padding-top: 100px;
  margin-top: -100px;
}



/* intro_wrap ----------------------------------------*/

.intro_wrap {
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  background-color: #D2161A;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
}

.intro_container {
  width: 270px;
  height: 181px;
  overflow: hidden;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-69.26%, -50%);
  opacity: 0;
}

.intro_container::after {
  content: '';
  display: block;
  width: 166px;
  height: 6px;
  background-color: #000;
  position: absolute;
  bottom: -1px;
  right: 0;
  z-index: 3;
}

.intro_container .door_obj01 {
  width: 166px;
  height: 181px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}

.intro_container .door_obj02 {
  width: 160px;
  height: 175px;
  position: absolute;
  top: 3px;
  right: 3px;
  z-index: 3;
  opacity: 1;
  transform-origin: left;
  transition: 1s;
}

.intro_container .door_obj02.open {
  animation: open01 .2s linear forwards;
}

@keyframes open01 {
  0% {
    transform: scale(1, 1);
    opacity: 1;
  }

  50% {
    transform: scale(.5, 1);
    opacity: 1;
  }

  99% {
    transform: scale(.01, 1);
    opacity: 1;
  }

  100% {
    transform: scale(0, 1);
    opacity: 0;
  }
}

.intro_container .door_obj03 {
  width: 104px;
  height: 175px;
  position: absolute;
  bottom: 0;
  left: 8px;
  z-index: 3;
  opacity: 0;
  transform-origin: right;
  transform: scale(0, 1);
  transition: 1s;
}

.intro_container .door_obj03.open {
  animation: open02 .2s linear forwards;
  animation-delay: .2s;
  opacity: 1;
}

@keyframes open02 {
  0% {
    transform: scale(0, 1);
    opacity: 1;
  }

  2% {
    transform: scale(0, 1);
  }

  100% {
    transform: scale(1, 1);
  }
}

.intro_wrap .intro_container .ebarakun_obj01 {
  display: inline-block;
  position: absolute;
  top: 70px;
  right: 10px;
  width: 100px;
  transform: translate(150px, 200px) rotate(-15deg);
  z-index: 2;
}

.intro_wrap .intro_container .ebarakun_obj01.entry {
  animation: entry 1.5s ease-in-out forwards;
  animation-delay: .3s;
}

@keyframes entry {
  0% {
    transform: translate(150px, 200px) rotate(-15deg);
  }

  10% {
    transform: translate(150px, 200px) rotate(-15deg);
    opacity: 1;
  }

  50% {
    transform: translate(0, 0) rotate(-15deg);
  }

  65% {
    transform: translate(10px, 10px) rotate(-15deg);
  }

  100% {
    transform: translate(0) rotate(-15deg);
  }
}

.ebarakun_obj03-1 {
  fill: #b2b2b2;
}

.ebarakun_obj03-1, .ebarakun_obj03-2, .ebarakun_obj03-3, .ebarakun_obj03-4, .ebarakun_obj03-5, .ebarakun_obj03-6, .ebarakun_obj03-7, .ebarakun_obj03-8, .ebarakun_obj03-9 {
  stroke-width: 0px;
}

.ebarakun_obj03-2 {
  fill: #3d1c0d;
}

.ebarakun_obj03-4 {
  fill: #D2161A;
}

.ebarakun_obj03-5 {
  fill: #fff;
}

.ebarakun_obj03-6 {
  fill: #b7793e;
}

.ebarakun_obj03-10 {
  fill: #000f00;
  stroke: #000;
  stroke-miterlimit: 10;
  stroke-width: 14.94px;
}

.ebarakun_obj03-7 {
  fill: #fad7a8;
}

.ebarakun_obj03-8 {
  fill: #4c2720;
}

.ebarakun_obj03-9 {
  fill: #c9c9c9;
}

.right_hands01 {
  transform-origin: right;
  animation: right_hand01 ease-in-out 3s infinite;
}

@keyframes right_hand01 {
  0% {
    transform: rotate(0deg);
  }

  60% {
    transform: rotate(0deg);
  }

  70% {
    transform: rotate(5deg);
  }

  80% {
    transform: rotate(0deg);
  }

  90% {
    transform: rotate(5deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

.intro_wrap>.ebarakun_obj02 {
  width: 160px;
  position: fixed;
  top: 45%;
  left: 50%;
  transform: translate(-50%, 0);
  opacity: 0;
}

.intro_wrap>.ebarakun_obj02.walk {
  opacity: 1;
  animation: walk 2s ease-in-out forwards;
  animation-delay: .2s;
}

@keyframes walk {
  0% {
    transform: translate(-50%, 0);
  }

  70% {
    transform: translate(-50%, 150%) scale(2.6, 2.6);
  }

  90% {
    transform: translate(-50%, 130%) scale(2.6, 2.6);
  }

  99% {
    transform: translate(-50%, 120vh) scale(2.6, 2.6);
  }

  100% {
    transform: translate(-50%, 120vh) scale(2.6, 2.6);
    display: none;
  }
}

.ebarakun_obj02-1 {
  fill: #b2b2b2;
}

.ebarakun_obj02-1, .ebarakun_obj02-2, .ebarakun_obj02-3, .ebarakun_obj02-4, .ebarakun_obj02-5, .ebarakun_obj02-6, .ebarakun_obj02-7, .ebarakun_obj02-8, .ebarakun_obj02-9 {
  stroke-width: 0px;
}

.ebarakun_obj02-2 {
  fill: #3d1c0d;
}

.ebarakun_obj02-4 {
  fill: #d01b24;
}

.ebarakun_obj02-5 {
  fill: #fff;
}

.ebarakun_obj02-6 {
  fill: #b7793e;
}

.ebarakun_obj02-7 {
  fill: #4c2620;
}

.ebarakun_obj02-8 {
  fill: #fad7a8;
}

.ebarakun_obj02-10 {
  stroke: #000;
  stroke-miterlimit: 10;
  stroke-width: 11px;
}

.ebarakun_obj02-9 {
  fill: #c9c9c9;
}

.left_hands {
  transform-origin: left;
  animation: left_hand ease-in-out 1s infinite;
}

@keyframes left_hand {
  0% {
    transform: rotate(0deg);
  }

  25% {
    transform: rotate(-5deg);
  }

  50% {
    transform: rotate(0deg);
  }

  75% {
    transform: rotate(-5deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

.foot {
  transform-origin: center;
  animation: foot ease-in-out 1s infinite;
}

@keyframes foot {
  0% {
    transform: rotate(0deg);
  }

  25% {
    transform: rotate(5deg);
  }

  50% {
    transform: rotate(0deg);
  }

  75% {
    transform: rotate(5deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

.intro_container.close {
  animation: close00 2s linear forwards;
  animation-delay: .5s;
}

@keyframes close00 {
  0% {
    transform: translate(-69.26%, -50%) scale(1, 1);
  }

  100% {
    transform: translate(-64.26%, 20%) scale(.7, .7);
  }
}

.intro_container .door_obj03.open.close {
  animation: close01 1s linear forwards;
  opacity: 1;
}

@keyframes close01 {
  0% {
    transform: scale(1, 1);
    opacity: 1;
  }

  99% {
    transform: scale(0, 1);
    opacity: 1;
  }

  100% {
    transform: scale(0, 1);
    opacity: 0;
  }
}

.intro_container .door_obj02.open.close {
  opacity: 0;
  animation: close02 1s linear forwards;
  animation-delay: 1s;
}

@keyframes close02 {
  0% {
    transform: scale(0, 1);
    opacity: 0;
  }

  1% {
    transform: scale(0, 1);
    opacity: 1;
  }

  99% {
    transform: scale(1, 1);
    opacity: 1;
  }

  100% {
    transform: scale(1, 1);
    opacity: 1;
  }
}

.intro_wrap>.ebarakun_obj03 {
  width: 262px;
  position: fixed;
  top: 100%;
  left: 50%;
  transform: translate(-63%, 300%);
  opacity: 0;
}

.intro_wrap>.ebarakun_obj03.up {
  opacity: 1;
  animation: up .5s ease-in-out forwards;
  animation-delay: 2.2s;
}

@keyframes up {
  0% {
    transform: translate(-63%, 300%);
    opacity: 1;
  }

  95% {
    transform: translate(-63%, -240px);
  }

  99% {
    transform: translate(-63%, -270px);
  }

  100% {
    transform: translate(-63%, -270px);
  }
}

.ebarakun_obj03-1 {
  fill: #b2b2b2;
}

.ebarakun_obj03-1, .ebarakun_obj03-2, .ebarakun_obj03-3, .ebarakun_obj03-4, .ebarakun_obj03-5, .ebarakun_obj03-6, .ebarakun_obj03-7, .ebarakun_obj03-8, .ebarakun_obj03-9 {
  stroke-width: 0px;
}

.ebarakun_obj03-2 {
  fill: #3d1c0d;
}

.ebarakun_obj03-4 {
  fill: #D2161A;
}

.ebarakun_obj03-5 {
  fill: #fff;
}

.ebarakun_obj03-6 {
  fill: #b7793e;
}

.ebarakun_obj03-10 {
  fill: #000f00;
  stroke: #000;
  stroke-miterlimit: 10;
  stroke-width: 14.94px;
}

.ebarakun_obj03-7 {
  fill: #fad7a8;
}

.ebarakun_obj03-8 {
  fill: #4c2720;
}

.ebarakun_obj03-9 {
  fill: #c9c9c9;
}

.right_hands02 {
  transform-origin: right;
  animation: right_hand02 ease-in-out 7s infinite;
}

@keyframes right_hand02 {
  0% {
    transform: rotate(0deg);
  }

  40% {
    transform: rotate(0deg);
  }

  44% {
    transform: rotate(5deg);
  }

  48% {
    transform: rotate(0deg);
  }

  52% {
    transform: rotate(5deg);
  }

  56% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

.intro_wrap .intro_ttl {
  width: 50vh;
  max-width: 90vw;
  position: fixed;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  z-index: 3;
}

.intro_wrap .intro_ttl.zoom {
  animation: zoom .5s ease-in-out forwards;
  animation-delay: 2.7s;
}

@keyframes zoom {
  0% {
    transform: translate(-50%, -50%) scale(0, 0);
    opacity: 0;
  }

  5% {
    transform: translate(-50%, -50%) scale(0, 0);
    opacity: 1;
  }

  50% {
    transform: translate(-50%, -50%) scale(1.2, 1.2);
    opacity: 1;
  }

  100% {
    transform: translate(-50%, -50%) scale(1, 1);
    opacity: 1;
  }
}

.intro_wrap .intro_ttl.zoom.out {
  animation: out00 1s ease-in-out forwards;
}

@keyframes out00 {
  0% {
    transform: translate(-50%, -50%) scale(1, 1);
    opacity: 1;
  }

  70% {
    transform: translate(-50%, -50%) scale(1.05, 1.05);
    opacity: 1;
  }

  100% {
    transform: translate(-50%, -50%) scale(0, 0);
    opacity: 1;
  }
}

.intro_wrap>.ebarakun_obj03.up.out {
  animation: out01 1s ease-in-out forwards;
}

@keyframes out01 {
  0% {
    transform: translate(-63%, -270px);
  }

  70% {
    transform: translate(-63%, -310px);
  }

  100% {
    transform: translate(-63%, 300%);
  }
}

.intro_container.close.out {
  animation: out02 1s ease-in-out forwards;
}

@keyframes out02 {
  0% {
    transform: translate(-64.26%, 20%) scale(.7, .7);
  }

  70% {
    transform: translate(-64.26%, 20%) scale(.7, .7);
  }

  100% {
    transform: translate(-50%, 20%) scale(0, 0);
  }
}

.btn_skip_container {
  width: 123px;
  height: 34px;
  display: block;
  background-color: #000;
  border-radius: 17px;
  font-family: "Paytone One", sans-serif;
  font-size: 20px;
  color: #fff;
  letter-spacing: .205em;
  text-align: center;
  text-indent: .2em;
  line-height: 32px;
  position: fixed;
  bottom: 60px;
  right: 100px;
  cursor: pointer;
  transition: .3s;
}

.btn_skip_container:hover {
  transition: .3s;
  opacity: .8;
}



/* mv_wrap ----------------------------------------*/

.mv_wrap {
  width: 100vw;
  height: 43.61vw;
  /*  max-height: 676px;*/
  overflow: hidden;
  background-color: #D2161A;
  position: relative;
}

.mv_wrap .mv_news_container {
  position: absolute;
  bottom: 30px;
  right: 50%;
}

.mv_news_list_container {
  width: 38.71vw;
  /*  max-width: 600px;*/
  background-color: #fff;
  border-radius: 1.16vw;
  padding: .774vw 0;
  box-sizing: border-box;
  display: flex;
  align-items: stretch;
  opacity: 0;
}

.mv_news_list_container.zoom_in {
  animation: zoom_in05 .5s ease-in-out forwards;
}

@keyframes zoom_in05 {
  0% {
    transform: scale(0, 0);
    opacity: 0;
  }

  5% {
    transform: scale(0, 0);
    opacity: 1;
  }

  50% {
    transform: scale(1.1, 1.1);
    opacity: 1;
  }

  100% {
    transform: scale(1, 1);
    opacity: 1;
  }
}

.mv_news_list_container dt.mv_news_list_item {
  width: 18.3%;
  font-family: "Paytone One", sans-serif;
  font-size: 1.42vw;
  color: #D2161A;
  letter-spacing: 2px;
  padding: 0 3.33%;
  box-sizing: border-box;
  position: relative;
  border-right: 2px solid #BABABA;
  display: flex;
  align-items: center;
}

.mv_news_list_container dd.mv_news_list_item {
  width: 81.7%;
}

.mv_news_list_container dd.mv_news_list_item a {
  width: 100%;
  display: flex;
  text-decoration: none;
}

.mv_news_list_container dd.mv_news_list_item span {
  width: 24.49%;
  padding: 0 3.33%;
  box-sizing: border-box;
  font-size: .9vw;
  font-weight: 700;
  letter-spacing: 2px;
}

.mv_news_list_container dd.mv_news_list_item strong {
  width: 75.51%;
  box-sizing: border-box;
  font-size: .97vw;
  font-weight: 700;
  letter-spacing: 2px;
  padding-right: 1.5%;
}

.mv_wrap .mv_news_obj_container .mv_news_obj01 {
  width: 13.29vw;
  /*  max-width: 206px;*/
  position: absolute;
  bottom: -10.65vw;
  right: -15.48vw;
  transform: translate(0, 0);
}

.mv_wrap .mv_news_obj_container .mv_news_obj01.default {
  transform: translate(0, 200vh);
}

.mv_wrap .mv_news_obj_container .mv_news_obj01.pop_up {
  animation: pop_up 1s ease-in-out forwards;
  animation-delay: .5s;
}

@keyframes pop_up {
  0% {
    transform: translate(0, 200vh);
  }

  70% {
    transform: translate(0, -15%);
  }

  85% {
    transform: translate(0, 0);
  }

  100% {
    transform: translate(0, 0);
  }
}

.mv_news_obj_container .mv_news_obj02 {
  width: 12.39vw;
  /*  max-width: 192px;*/
  position: absolute;
  bottom: 4.55vw;
  right: -23.75vw;
  opacity: 0;
}

.right_hands02 {
  transform-origin: right;
  animation: right_hand02 ease-in-out 7s infinite;
}

@keyframes right_hand02 {
  0% {
    transform: rotate(0deg);
  }

  40% {
    transform: rotate(0deg);
  }

  44% {
    transform: rotate(5deg);
  }

  48% {
    transform: rotate(0deg);
  }

  52% {
    transform: rotate(5deg);
  }

  56% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

.left_hands02 {
  position: relative;
  z-index: 999;
}

.mv_news_obj_container .mv_news_obj02.zoom_in {
  animation: zoom_in00 .5s ease-in-out forwards;
  animation-delay: 1.5s;
}

@keyframes zoom_in00 {
  0% {
    transform: scale(0, 0);
    opacity: 0;
  }

  5% {
    transform: scale(0, 0);
    opacity: 1;
  }

  50% {
    transform: scale(1.2, 1.2);
    opacity: 1;
  }

  100% {
    transform: scale(1, 1);
    opacity: 1;
  }
}

.mv_slide01_container {
  width: 19.23vw;
  height: 14.77vw;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-167.74vw, -13.1%);
}

.mv_slide01_container.slide_in {
  animation: slide_in01 1s ease-in-out forwards;
}

@keyframes slide_in01 {
  0% {
    transform: translate(-167.74vw, -13.1%);
  }

  100% {
    transform: translate(-38.71vw, -13.1%);
  }
}

.mv_slide02_container {
  width: 28.71vw;
  height: 20.71vw;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate(-132.26vw, -3.23vw);
}

.mv_slide02_container.slide_in {
  animation: slide_in02 1s ease-in-out forwards;
}

@keyframes slide_in02 {
  0% {
    transform: translate(-132.26vw, -3.23vw);
  }

  100% {
    transform: translate(-3.23vw, -3.23vw);
  }
}

.mv_slide03_container {
  width: 45.16vw;
  height: 29.16vw;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(134.84vw, -55%);
}

.mv_slide03_container.slide_in {
  animation: slide_in03 1s ease-in-out forwards;
}

@keyframes slide_in03 {
  0% {
    transform: translate(134.84vw, -55%);
  }

  100% {
    transform: translate(7.1vw, -55%);
  }
}

.mv_slide_container {
  width: 100%;
  height: 100%;
  border: 3px solid #000;
  box-shadow: .77vw .77vw 0 #000;
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.mv_slide_list_container {
  width: 104%;
  height: 104%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.mv_slide01_container .mv_slide_container {
  border-top-left-radius: 45% 50%;
  border-top-right-radius: 45% 50%;
}

.mv_slide02_container .mv_slide_container {
  border-top-left-radius: 30% 35%;
  border-top-right-radius: 30% 35%;
}

.mv_slide03_container .mv_slide_container {
  border-top-left-radius: 30% 40%;
  border-top-right-radius: 30% 40%;
}

.mv_slide01_container .door_container {
  display: block;
  width: 105%;
  height: 100%;
  background-color: #E27E12;
  border-right: 3px solid #000;
  position: absolute;
  top: 0;
  left: -110%;
}

.mv_slide01_container .door_container::after {
  content: '';
  display: block;
  width: 1.42vw;
  height: 3.03vw;
  background: url('../img/knob_obj01.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 2.5vw;
}

.mv_slide02_container .door_container {
  display: block;
  width: 105%;
  height: 100%;
  background-color: #192B80;
  border-right: 3px solid #000;
  position: absolute;
  top: 0;
  left: -110%;
}

.mv_slide02_container .door_container::after {
  content: '';
  display: block;
  width: 2.32vw;
  height: 6.06vw;
  background: url('../img/knob_obj02.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 40%;
  right: 4vw;
}

.mv_slide03_container .door_container {
  display: block;
  width: 105%;
  height: 100%;
  background-color: #F1D521;
  border-right: 3px solid #000;
  position: absolute;
  top: 0;
  left: -110%;
}

.mv_slide03_container .door_container::after {
  content: '';
  display: block;
  width: 2.71vw;
  height: 7.23vw;
  background: url('../img/knob_obj03.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 45%;
  right: 11vw;
}

.mv_slide01_container .mv_obj {
  width: 13.03vw;
  max-width: 202px;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate(-42%, 50%);
  z-index: 2;
}

.mv_slide01_container .mv_obj.zoom_in {
  opacity: 0;
  animation: zoom_in01 .5s ease-in-out forwards;
  animation-delay: 1s;
}

@keyframes zoom_in01 {
  0% {
    transform: translate(-42%, 50%) scale(0, 0);
    opacity: 0;
  }

  5% {
    transform: translate(-42%, 50%) scale(0, 0);
    opacity: 1;
  }

  50% {
    transform: translate(-42%, 50%) scale(1.2, 1.2);
    opacity: 1;
  }

  100% {
    transform: translate(-42%, 50%) scale(1, 1);
    opacity: 1;
  }
}

.mv_slide02_container .mv_obj {
  width: 18.26vw;
  max-width: 283px;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(50%, 0);
  z-index: 2;
}

.mv_slide02_container .mv_obj.zoom_in {
  opacity: 0;
  animation: zoom_in02 .5s ease-in-out forwards;
  animation-delay: 1s;
}

@keyframes zoom_in02 {
  0% {
    transform: translate(50%, 0) scale(0, 0);
    opacity: 0;
  }

  5% {
    transform: translate(50%, 0) scale(0, 0);
    opacity: 1;
  }

  50% {
    transform: translate(50%, 0) scale(1.2, 1.2);
    opacity: 1;
  }

  100% {
    transform: translate(50%, 0) scale(1, 1);
    opacity: 1;
  }
}

.mv_slide03_container .mv_obj {
  width: 27.9vw;
  max-width: 510px;
  position: absolute;
  bottom: 5%;
  left: 53%;
  transform: translate(-15%, 35%);
  z-index: 2;
}

.mv_slide03_container .mv_obj.zoom_in {
  opacity: 0;
  animation: zoom_in03 .5s ease-in-out forwards;
  animation-delay: 1s;
}

@keyframes zoom_in03 {
  0% {
    transform: translate(-15%, 35%) scale(0, 0);
    opacity: 0;
  }

  5% {
    transform: translate(-15%, 35%) scale(0, 0);
    opacity: 1;
  }

  50% {
    transform: translate(-15%, 35%) scale(1.2, 1.2);
    opacity: 1;
  }

  100% {
    transform: translate(-15%, 35%) scale(1, 1);
    opacity: 1;
  }
}

.mv_slide01_container .mv_obj.move_ico {
  -webkit-animation: move_ico01 2s infinite linear;
  animation: move_ico01 2s infinite linear;
  opacity: 1;
}

@keyframes move_ico01 {
  0% {
    transform: rotate(0) translate(-42%, 50%);
  }

  10% {
    transform: rotate(5deg) translate(-42%, 50%);
  }

  20% {
    transform: rotate(0) translate(-42%, 50%);
  }

  30% {
    transform: rotate(5deg) translate(-42%, 50%);
  }

  40% {
    transform: rotate(0) translate(-42%, 50%);
  }

  100% {
    transform: rotate(0) translate(-42%, 50%);
  }
}

.mv_slide02_container .mv_obj.move_ico {
  -webkit-animation: move_ico02 2s infinite linear;
  animation: move_ico02 2s infinite linear;
  opacity: 1;
}

@keyframes move_ico02 {
  0% {
    transform: rotate(0) translate(50%, 0);
  }

  10% {
    transform: rotate(5deg) translate(50%, 0);
  }

  20% {
    transform: rotate(0) translate(50%, 0);
  }

  30% {
    transform: rotate(5deg) translate(50%, 0);
  }

  40% {
    transform: rotate(0) translate(50%, 0);
  }

  100% {
    transform: rotate(0) translate(50%, 0);
  }
}

.mv_slide03_container .mv_obj.move_ico {
  -webkit-animation: move_ico03 2s infinite linear;
  animation: move_ico03 2s infinite linear;
  opacity: 1;
}

@keyframes move_ico03 {
  0% {
    transform: rotate(0deg) translate(-15%, 35%);
    opacity: 1;
  }

  10% {
    transform: rotate(5deg) translate(-15%, 35%);
    opacity: 1;
  }

  20% {
    transform: rotate(0) translate(-15%, 35%);
    opacity: 1;
  }

  30% {
    transform: rotate(5deg) translate(-15%, 35%);
    opacity: 1;
  }

  40% {
    transform: rotate(0) translate(-15%, 35%);
    opacity: 1;
  }

  100% {
    transform: rotate(0) translate(-15%, 35%);
    opacity: 1;
  }
}

.mv_txt {
  font-family: "Paytone One", sans-serif;
  font-size: 15px;
  position: absolute;
  letter-spacing: .05em;
}

.mv_slide01_container .mv_txt {
  width: 11.35vw;
  height: 6.97vw;
  bottom: -2.26vw;
  right: -2.9vw;
}

.mv_slide02_container .mv_txt {
  width: 11.35vw;
  height: 9.29vw;
  top: -1.94vw;
  right: -2.08vw;
}

.mv_slide03_container .mv_txt {
  width: 19.1vw;
  height: 4.58vw;
  bottom: -6.13vw;
  left: 50%;
  transform: translate(-70%, 0);
}

.mv_ttl {
  width: 26.32vw;
  /*  max-width: 408px;*/
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -58%);
  opacity: 0;
}

.mv_ttl.zoom_in {
  animation: zoom_in04 .5s ease-in-out forwards;
}

@keyframes zoom_in04 {
  0% {
    transform: translate(-50%, -58%) scale(0, 0);
    opacity: 0;
  }

  5% {
    transform: translate(-50%, -58%) scale(0, 0);
    opacity: 1;
  }

  50% {
    transform: translate(-50%, -58%) scale(1.1, 1.1);
    opacity: 1;
  }

  100% {
    transform: translate(-50%, -58%) scale(1, 1);
    opacity: 1;
  }
}

.mv_obj05_list_container {
  width: 69px;
  height: 90px;
  position: absolute;
  top: -60px;
  left: 100px;
  z-index: 2;
}

.mv_obj06_list_container {
  width: 69px;
  height: 90px;
  position: absolute;
  top: -50px;
  left: 200px;
  z-index: 2;
}

.character_list_item {
  display: none;
  width: 100%;
  height: 100%;
}

.character_list_item.current {
  display: block;
}

.character_list_obj {
  height: 100%;
}

.mv_obj05_01,
.mv_obj05_03,
.mv_obj06_02,
.mv_obj06_04 {
  opacity: 1;
  animation: walk02 4s ease-in-out forwards;
}

@keyframes walk02 {
  0% {
    transform: translate(0, 0);
  }
  10% {
    transform: translate(10px, -5px) rotate(10deg);
  }
  20% {
    transform: translate(20px, 0) rotate(0);
  }
  30% {
    transform: translate(30px, -5px) rotate(10deg);
  }
  40% {
    transform: translate(40px, 0) rotate(0);
  }
  50% {
    transform: translate(50px, -5px) rotate(10deg);
  }
  60% {
    transform: translate(60px, 0) rotate(0);
  }
  70% {
    transform: translate(70px, -5px) rotate(10deg);
  }
  80% {
    transform: translate(80px, 0) rotate(0);
  }
  90% {
    transform: translate(90px, -5px) rotate(10deg);
  }
  100% {
    transform: translate(100px, 0) rotate(0);
    display: none;
  }
}

.mv_obj05_02,
.mv_obj05_04,
.mv_obj06_01,
.mv_obj06_03 {
  opacity: 1;
  animation: walk03 4s ease-in-out forwards;
}

@keyframes walk03 {
  0% {
    transform: translate(100px, 0);
  }
  10% {
    transform: translate(90px, -5px) rotate(10deg);
  }
  20% {
    transform: translate(80px, 0) rotate(0);
  }
  30% {
    transform: translate(70px, -5px) rotate(10deg);
  }
  40% {
    transform: translate(60px, 0) rotate(0);
  }
  50% {
    transform: translate(50px, -5px) rotate(10deg);
  }
  60% {
    transform: translate(40px, 0) rotate(0);
  }
  70% {
    transform: translate(30px, -5px) rotate(10deg);
  }
  80% {
    transform: translate(20px, 0) rotate(0);
  }
  90% {
    transform: translate(10px, -5px) rotate(10deg);
  }
  100% {
    transform: translate(0, 0) rotate(0);
    display: none;
  }
}

/*@media only screen and (min-width: 1550px) {

  .mv_news_list_container {
    border-radius: 18px;
    padding: 12px 0;
  }

  .mv_news_list_container dt.mv_news_list_item {
    font-size: 22px;
  }

  .mv_news_list_container dd.mv_news_list_item span {
    font-size: 14px;
  }
  
  .mv_news_list_container dd.mv_news_list_item strong {
    font-size: 15px;
  }

  .mv_slide_container {
    box-shadow: 12px 12px 0 #000;
  }

  .mv_slide01_container {
    width: 298px;
    height: 229px;
    transform: translate(-2600px, -25px);
  }

  .mv_slide01_container.slide_in {
    animation:slide_in01 1s ease-in-out forwards;
  }
  
  @keyframes slide_in01 {
    0% {
      transform: translate(-2600px, -25px);
    }
    100% {
      transform: translate(-600px, -25px);
    }
  }

  .mv_slide02_container {
    width: 445px;
    height: 321px;
    transform: translate(-2050px, -50px);
  }

  .mv_slide02_container.slide_in {
    animation:slide_in02 1s ease-in-out forwards;
  }
  
  @keyframes slide_in02 {
    0% {
      transform: translate(-2050px, -50px);
    }
    100% {
      transform: translate(-50px, -50px);
    }
  }

  .mv_slide03_container {
    width: 700px;
    height: 452px;
    transform: translate(2090px, -50%);
  }

  .mv_slide03_container.slide_in {
    animation:slide_in03 1s ease-in-out forwards;
  }
  
  @keyframes slide_in03 {
    0% {
      transform: translate(2090px, -50%);
    }
    100% {
      transform: translate(90px, -50%);
    }
  }

  .mv_slide01_container .door_container::after {
    width: 22px;
    height: 47px;
    right: 40px;
  }

  .mv_slide02_container .door_container::after {
    width: 36px;
    height: 94px;
    right: 60px;
  }

  .mv_slide03_container .door_container::after {
    width: 42px;
    height: 112px;
    right: 160px;
  }

  .mv_txt {
    font-size: 15px;
  }

  .mv_wrap .mv_news_obj_container .mv_news_obj01 {
    bottom: -165px;
    right: -240px;
  }
  
  .mv_wrap .mv_news_obj_container .mv_news_obj02 {
    bottom: 75px;
    right: -365px;
  }

}*/
/*
.mv_slide_list_container{
  opacity: 0;
  transition: .3s linear;
}
.mv_slide_list_container.slick-initialized{
  opacity: 1;
}
*/


/* bg_wrap ----------------------------------------*/

.bg_wrap {
  overflow: hidden;
  position: relative;
}

.bg_wrap::before {
  content: "";
  display: block;
  width: 100%;
  max-width: 1200px;
  height: 142px;
  background: url(../img/sec01_obj06_bottom.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 40px;
  right: 17%;
  transform: translate(630px, 0);
  z-index: 3;
}

.bg_wrap::after {
  content: "";
  display: block;
  width: 100%;
  max-width: 1200px;
  height: 106px;
  background: url(../img/sec07_balloon_obj_pc.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 110px;
  right: 18%;
  transform: translate(725px, 0);
  z-index: 2;
}

.bg_txt {
  font-family: "Paytone One", sans-serif;
  font-size: 3.23vw;
  line-height: 1em;
  letter-spacing: .08em;
  white-space: nowrap;
  writing-mode: vertical-lr;
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: vertical-lr;
  position: absolute;
  z-index: 1;
}

.bg_txt i {
  font-style: normal;
  display: inline-block;
  -webkit-transform: scale(1, 0.8);
  transform: scale(1, 0.8);
  letter-spacing: -.05em;
}

.bg_txt.right_txt {
  top: 60px;
  right: -.2em;
  animation: loop_down 25s -10s linear infinite;
}

@keyframes loop_down {
  0% {
    transform: translateY(-100%);
  }

  to {
    transform: translateY(700%);
  }
}


.bg_txt.left_txt {
  bottom: 0;
  left: -.2em;
  animation: loop_up 25s -10s linear infinite;
}

@keyframes loop_up {
  0% {
    transform: translateY(100%);
  }

  to {
    transform: translateY(-700%);
  }
}



/* sec01 ----------------------------------------*/

.sec01 {
  background-color: #D2161A;
  position: relative;
}

.sec01::before {
  content: '';
  display: block;
  width: 100%;
  height: 100px;
  background-color: #D2161A;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

.sec01 .sec01_container {
  width: 100%;
  background-color: #fff;
  border-radius: 70px;
  padding: 80px 0;
  box-sizing: border-box;
  position: relative;
  z-index: 2;
}

.sec01 .lead_txt {
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  line-height: 2.9em;
  letter-spacing: .28em;
  padding-bottom: 30px;
}

.sec01 .sec01_ttl:first-of-type {
  width: 577px;
  padding: 80px 0 30px;
  margin: 0 auto;
  position: relative;
}

.sec01 .sec01_ttl:first-of-type::before {
  content: '';
  display: block;
  width: 75px;
  height: 29px;
  background: url('../img/ttl_obj01.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.sec01 .sec01_subttl_obj {
  display: block;
  width: 248px;
  margin: 0 auto 30px;
}

.sec01 .sec01_ttl:last-of-type {
  width: 387px;
  padding: 50px 0 30px;
  margin: 0 auto;
  position: relative;
}

.sec01_list_wrap {
  width: 91.41vw;
  max-width: 1186px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sec01_list_container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.sec01_list_wrap:first-of-type .sec01_list_item {
  width: 184px;
  text-align: center;
  position: relative;
  z-index: 2;
}

.sec01_list_wrap:first-of-type .sec01_list_item .sec01_list_obj {
  height: 170px;
  position: relative;
  z-index: 1;
}

.sec01_list_wrap:last-of-type .sec01_list_item {
  width: 141px;
  text-align: center;
  position: relative;
  z-index: 2;
}

.sec01_list_wrap:last-of-type .sec01_list_item .btn_obj {
  cursor: default;
}

.sec01_list_wrap:last-of-type .sec01_list_item .sec01_list_obj {
  height: 133px;
}

.sec01_list_item:hover::before {
  content: '';
  display: block;
  width: 110px;
  height: 49px;
  position: absolute;
  top: -10px;
  left: -30px;
  z-index: 0;
}

.sec01_list_wrap:first-of-type .sec01_list_item:first-child:hover::before {
  background: url('../img/sec01_balloon03.svg') center center no-repeat;
  background-size: contain;
}

.sec01_list_wrap:first-of-type .sec01_list_item:nth-child(2):hover::before {
  background: url('../img/sec01_balloon02.svg') center center no-repeat;
  background-size: contain;
}

.sec01_list_wrap:first-of-type .sec01_list_item:nth-child(3):hover::before {
  background: url('../img/sec01_balloon01.svg') center center no-repeat;
  background-size: contain;
}

.sec01_list_wrap:last-of-type .sec01_list_item:hover::after {
  content: '';
  display: block;
  width: 101px;
  height: 40px;
  position: absolute;
  bottom: -50px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.sec01_list_wrap:last-of-type .sec01_list_item:nth-child(1):hover::after {
  background: url('../img/sec01_balloon09.svg') center center no-repeat;
  background-size: contain;
}

.sec01_list_wrap:last-of-type .sec01_list_item:nth-child(2):hover::after {
  background: url('../img/sec01_balloon04.svg') center center no-repeat;
  background-size: contain;
}

.sec01_list_wrap:last-of-type .sec01_list_item:nth-child(3):hover::after {
  background: url('../img/sec01_balloon05.svg') center center no-repeat;
  background-size: contain;
}

.sec01_list_wrap:last-of-type .sec01_list_item:nth-child(4):hover::after {
  background: url('../img/sec01_balloon06.svg') center center no-repeat;
  background-size: contain;
}

.sec01_list_wrap:last-of-type .sec01_list_item:nth-child(5):hover::after {
  background: url('../img/sec01_balloon07.svg') center center no-repeat;
  background-size: contain;
}

.sec01_list_wrap:last-of-type .sec01_list_item:nth-child(6):hover::after {
  background: url('../img/sec01_balloon08.svg') center center no-repeat;
  background-size: contain;
}



/* modal_wrap ----------------------------------------*/

.modal_wrap {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .5);
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 99999;
  display: none;
}

.modal_wrap .modal_list_item {
  width: 91.41vw;
  max-width: 960px;
  background-color: #D2161A;
  box-sizing: border-box;
  padding: 70px;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: none;
}

.modal_wrap .modal_container {
  width: 100%;
  height: 100%;
  padding: 60px 0;
  box-sizing: border-box;
  background-color: #fff;
  border: 3px solid #000;
  border-radius: 3.23vw;
  position: relative;
  display: flex;
}

.modal_wrap .btn_close {
  width: 50px;
  height: 50px;
  background: url('../shared/img/btn_close.png') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 40px;
  right: 40px;
  cursor: pointer;
}

.sec01 .modal_wrap .modal_container .img_container {
  width: 40%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sec01 .modal_wrap .modal_container .txt_container {
  width: 60%;
}

.sec01 .modal_wrap .modal_list_item.modal01 .sec01_modal_list_obj {
  width: 204px;
}

.sec01 .modal_wrap .modal_list_item.modal02 .sec01_modal_list_obj {
  width: 162px;
}

.sec01 .modal_wrap .modal_list_item.modal03 .sec01_modal_list_obj {
  width: 192px;
}

.sec01 .modal_wrap .modal_ttl {
  padding-bottom: 65px;
  position: relative;
}

.sec01 .modal_wrap .modal_ttl span {
  display: block;
  width: 250px;
  height: 45px;
  background-color: #000;
  border-radius: 24px;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  line-height: 45px;
  letter-spacing: .15em;
  margin-bottom: 30px;
}

.sec01 .modal_wrap .modal_list_item.modal01 .sec01_modal_ttl_obj {
  width: 172px;
}

.sec01 .modal_wrap .modal_list_item.modal02 .sec01_modal_ttl_obj {
  width: 224px;
}

.sec01 .modal_wrap .modal_list_item.modal03 .sec01_modal_ttl_obj {
  width: 224px;
}

.sec01 .modal_wrap .modal_ttl::after {
  content: '';
  display: block;
  width: 39px;
  height: 15px;
  background: url('../img/ttl_obj01.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  bottom: 20px;
}

.sec01 .modal_wrap .modal_txt {
  font-size: 15px;
  font-weight: 700;
  line-height: 2.47em;
  letter-spacing: .1em;
}


/* sec02 ----------------------------------------*/

.sec02 {
  background-color: #D2161A;
  padding: 85px 0 133px;
  position: relative;
}

.sec02_bg02 {
  width: 100%;
  height: 906px;
  background-color: #BABABA;
  position: absolute;
  bottom: 0;
}

.sec02_bg02::after {
  content: '';
  display: block;
  width: 100%;
  height: 60px;
  background: url('../img/sec02_bg_obj.png') left top repeat-x, linear-gradient(180deg, #D2161A 0%, #D2161A 80%, #BABABA 80%, #BABABA 100%);
  background-size: auto 60px;
  position: absolute;
  top: -58px;
  left: 0;
  z-index: 0;
  animation: scroll_anim01 12s linear infinite;
}
.sec02_bg02::before {
  content: '';
  display: block;
  width: 100%;
  height: 60px;
  background: url(../img/sec02_bg_obj_02.png) left top repeat-x, linear-gradient(180deg, #BABABA 0%, #BABABA 80%, #fff 80%, #fff 100%);
  background-size: auto 50px;
  position: absolute;
  bottom: -12px;
  left: 0;
  z-index: 0;
  animation: scroll_anim01 20s linear infinite;
}

@keyframes scroll_anim01 {
  100% {
    background-position: 500% 0;
  }
}

.sec02_ttl {
  width: 452px;
  margin: 0 auto;
  padding-bottom: 90px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}

.sec02_ttl span {
  display: inline-block;
  font-family: "Paytone One", sans-serif;
  font-size: 22px;
  letter-spacing: .12em;
  padding-top: 25px;
}

.sec02 .sec02_ttl::after {
  content: '';
  display: block;
  width: 51px;
  height: 19px;
  background: url('../img/ttl_obj02.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 50%;
  bottom: 45px;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.sec02 .sec02_container {
  width: 91.41vw;
  max-width: 1200px;
  margin: 0 auto;
  padding: 90px 7.5vw 70px;
  box-sizing: border-box;
  background-color: #fff;
  border: 4px solid #000;
  border-radius: 29.03vw 29.03vw 0 0;
  box-shadow: 10px 10px 1px #000;
  position: relative;
  z-index: 3;
}

.sec02 .sec02_container::before {
  content: '';
  display: block;
  width: 382px;
  height: 310px;
  background: url('../img/mv_obj01.png') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 40px;
  left: -40px;
  transform: rotate(5deg);
}

.sec02 .sec02_container.animate::before {
  animation: move_ico_00 7s infinite linear;
}

@keyframes move_ico_00 {
  0% {
    transform: rotate(0);
  }

  2% {
    transform: rotate(5deg);
  }

  4% {
    transform: rotate(0);
  }

  6% {
    transform: rotate(5deg);
  }

  8% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(0);
  }
}

.sec02 .sec02_container::after {
  content: '';
  display: block;
  width: 463px;
  height: 317px;
  background: url('../img/mv_obj02.png') center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -210px;
  right: -300px;
  z-index: 2;
}

.sec02 .sec02_container.animate::after {
  animation: move_ico_00 7s infinite linear;
}

.sec02 .sec02_subttl {
  width: 309px;
  margin: 0 auto;
  padding-bottom: 50px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.sec02_subttl span {
  display: inline-block;
  font-family: "Paytone One", sans-serif;
  font-size: 18px;
  color: #D2161A;
  text-align: center;
  line-height: 1.44em;
  letter-spacing: .15em;
  padding-top: 20px;
}

.sec02 .lead_txt {
  font-size: 20px;
  font-weight: 700;
  line-height: 2.1em;
  text-align: center;
  letter-spacing: .23em;
  padding-bottom: 50px;
  position: relative;
}

.sec02 .lead_txt::before {
  content: '';
  display: block;
  width: 85px;
  height: 142px;
  background: url('../img/sec01_obj02_off.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -20px;
  right: 40px;
}

.sec02 .lead_txt::after {
  content: '';
  display: block;
  width: 169px;
  height: 128px;
  background: url('../img/sec02_balloon_obj01_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -140px;
  right: -50px;
}

.sec02 .sec02_list_container {
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding-bottom: 80px;
}

.sec02 .sec02_list_item {
  width: 31.37%;
  max-width: 320px;
}

.sec02 .sec02_list_item a,
.sec02_slide_list_item a {
  text-decoration: none;
}

.sec02 .img_container {
  width: 100%;
  box-sizing: border-box;
  border: 3px solid #000;
}

.sec02 .txt_container {
  padding-top: 15px;
}

.sec02 .sec02_list_item a:hover .txt_container,
.sec02_slide_list_item a:hover .txt_container {
  opacity: .6;
}

.sec02 .sec02_list_txt {
  font-size: 17px;
  font-weight: 500;
  line-height: 1.47em;
  letter-spacing: .215em;
}

.sec02 .sec02_subttl:nth-of-type(2) {
  width: 292px;
  padding-bottom: 40px;
  padding-top: 120px;
}

.sec02 .sec02_list_ttl {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .17em;
  padding-bottom: 10px;
}

.sec02_slide_list_item {
  width: 300px;
  padding: 0 10px;
}

.sec02_slide_list_item.slick-active {}

.sec02 .sec02_slide_list_container .slick_prev {
  display: block;
  width: 50px;
  height: 50px;
  text-indent: -9999px;
  background: url(../img/sec02_btn_arrow.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 30%;
  left: -15px;
  z-index: 10;
  transform: rotate(-180deg);
  -webkit-transform: rotate(-180deg);
  cursor: pointer;
}

.sec02 .sec02_slide_list_container .slick_next {
  display: block;
  width: 50px;
  height: 50px;
  text-indent: -9999px;
  background: url(../img/sec02_btn_arrow.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 30%;
  right: -15px;
  z-index: 10;
  cursor: pointer;
}

.sec02 .sec02_slide_list_container {
  position: relative;
}

.sec02 .sec02_slide_list_container.recipe::before {
  content: '';
  display: block;
  width: 101px;
  height: 142px;
  background: url('../img/sec01_obj03_off.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -120px;
  left: 20px;
  z-index: 999;
}

.sec02 .sec02_slide_list_container.recipe::after {
  content: '';
  display: block;
  width: 115px;
  height: 77px;
  background: url('../img/sec02_balloon_obj02_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -180px;
  left: -50px;
}

.sec02 .dots_wrap {
  display: block;
  width: 100%;
  text-align: center;
  position: absolute;
  bottom: -45px;
}

.sec02 .slick-dots {
  position: static;
  display: inline;
}

.sec02_slide02 .slick-dots li {
  display: none;
}

.sec02_slide02 .slick-dots li:nth-child(1),
.sec02_slide02 .slick-dots li:nth-last-child(1),
.sec02_slide02 .slick-dots li.slick-active,
.sec02_slide02 .slick-dots li.show {
  display: inline-block;
}

.sec02_slide02 .slick-dots li.omission {
  position: relative;
  display: inline-block;
  text-indent: -999999px;
}

.sec02_slide02 .slick-dots li.omission::after {
  content: '';
  display: block;
  width: 20px;
  height: 4px;
  background: url('../img/sec02_dots_obj.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, 0);
}

.sec02_slide02 .slick-dots li.omission.slick-active,
.sec02_slide02 .slick-dots li.omission.show {
  text-indent: 0;
}

.sec02_slide02 .slick-dots li.omission.slick-active::after,
.sec02_slide02 .slick-dots li.omission.show::after {
  display: none;
}

.sec02 .slick-dots li span {
  font-family: "Paytone One", sans-serif;
  font-size: 14px;
  text-align: center;
}

.sec02 .slick-dots li span:hover,
.sec02 .slick-dots .slick-active span {
  color: #D2161A;
}

.sec02_dots_prev,
.sec02_dots_next {
  position: relative;
}

.sec02 .sec02_dots_prev {
  display: inline-block;
  margin-right: 10px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  transform: rotate(-45deg);
  cursor: pointer;
}

.sec02 .sec02_dots_next {
  display: inline-block;
  margin-left: 10px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  transform: rotate(45deg);
  cursor: pointer;
}

.sec02 .sec02_dots_prev:hover,
.sec02 .sec02_dots_next:hover {
  border-color: #D2161A;
}



/* sec03 ----------------------------------------*/

.sec03 {
  position: relative;
  margin-top: -80px;
}

.sec03::before {
  content: '';
  display: block;
  width: 100%;
  height: 100px;
  background-color: #EA7200;
  position: absolute;
  bottom: 0;
  left: 0;
}

.sec03 .sec03_container {
  width: 100%;
  background-color: #EFEEEE;
  border-radius: 70px;
  padding: 80px 0 240px;
  position: relative;
  z-index: 2;
}

.sec03 .sec03_container::after {
  content: '';
  display: block;
  width: 300px;
  height: 216px;
  background: url(../img/sec03_balloon_obj.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -10px;
  left: 50%;
  -webkit-transform: translate(-396px, 0);
  transform: translate(-396px, 0);
  z-index: 999;
  pointer-events: none;
}

.sec03_ttl {
  width: 510px;
  margin: 0 auto;
  padding-bottom: 25px;
}

.sec03 .sec03_container .lead_txt {
  position: relative;
  font-size: 20px;
  font-weight: 700;
  line-height: 2.1em;
  text-align: center;
  letter-spacing: .23em;
  padding-bottom: 25px;
}

.sec03 .sec03_container .lead_txt::before {
  content: '';
  display: block;
  width: 75px;
  height: 29px;
  background: url(../img/ttl_obj01.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -33px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.sec03_list_container{
  display: grid;
  grid-template-columns: 60.95% auto;
  row-gap: 46px;
  column-gap: 28px;
  position: relative;
  width: 91.41vw;
  max-width: 1050px;
  margin: 74px auto 0;
}

.sec03_list_wrapper{
  display: grid;
  justify-items: center;
  align-items: center;
  position: relative;
}

.sec03_list_bg{
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #fff;
}

.sec03_list_wrapper.n01{
  grid-column: 1 / 3;
  grid-template-columns: repeat(3, 1fr);
  row-gap: 38px;
  column-gap: 36px;
  padding: 78px 11.14% 54px;
}

.sec03_list_wrapper.n01::after{
  content: '';
  display: block;
  width: 26px;
  height: 69px;
  background: url(../img/sec03_list_obj01.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
}

.sec03_list_wrapper.n01::before{
  content: '';
  display: block;
  position: absolute;
  width: 123px;
  height: 105px;
  background: url(../img/sec03_chara_02.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  left: -69px;
  bottom: 47px;
  z-index: -1;
}

.sec03_list_wrapper.n01 .sec03_list_bg{
  border-top-left-radius: 200px;
  border-top-right-radius: 200px;
}

.sec03_list_wrapper.n01 .sec03_list_bg::before{
  content: '';
  display: block;
  position: absolute;
  width: 185px;
  height: 253px;
  background: url(../img/sec03_chara_01.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  left: -88px;
  top: -124px;
  z-index: -1;
}

.sec03_list_wrapper.n01 .sec03_list_ttl{
  margin-left: 21px;
  width: 110%;
}

.sec03_list_wrapper.n02{
  grid-column: 1 / 3;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 36px;
  padding: 48px 11.14% 45px;
  z-index: 1;
}

.sec03_list_wrapper.n02::after{
  content: '';
  display: block;
  width: 29px;
  height: 78px;
  background: url(../img/sec03_list_obj02.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 5%;
  top: 50%;
  transform: translateY(-50%);
}

.sec03_list_wrapper.n02::before{
  content: '';
  display: block;
  width: 147px;
  height: 194px;
  background: url(../img/sec03_chara_03.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  right: -44px;
  top: -57px;
  z-index: -1;
}

.sec03_list_wrapper.n02 .sec03_list_bg{
  clip-path: polygon(0 0, 84.48% 0, 100% 37.62%, 100% 100%, 0 100%);
}

.sec03_list_wrapper.n02 .sec03_list_ttl{
  order: 3;
  margin-left: 70px;
  width: 120%;
}

.sec03_list_wrapper.n02 .sec03_list_item.modal305{
  order: 1;
}

.sec03_list_wrapper.n02 .sec03_list_item.modal304{
  order: 2;
}

.sec03_list_wrapper.n03{
  grid-column: 1 / 2;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 38px;
  column-gap: 36px;
  padding: 70px 9.7% 45px 7.19%;
}

.sec03_list_wrapper.n03::after{
  content: '';
  display: block;
  width: 26px;
  height: 69px;
  background: url(../img/sec03_list_obj01.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  right: 2.3%;
  top: 59%;
  transform: translateY(-50%);
}

.sec03_list_wrapper.n03::before{
  content: '';
  display: block;
  width: 102px;
  height: 140px;
  background: url(../img/sec03_chara_04.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  right: 9px;
  top: -35px;
  z-index: -1;
}

.sec03_list_wrapper.n03 .sec03_list_bg{
  clip-path: polygon(0 9.47%, 50% 0, 100% 9.47%, 100% 100%, 0 100%);
}

.sec03_list_wrapper.n03 .sec03_list_ttl{
  grid-column: 1 / 3;
  text-align: center;
}

.sec03_list_wrapper.n04{
  grid-column: 2 / 3;
  align-items: end;
  row-gap: 38px;
  padding: 70px 17.5% 45px;
}

.sec03_list_wrapper.n04::after{
  content: '';
  display: block;
  width: 19px;
  height: 50px;
  background-color: #000;
  position: absolute;
  right: 5%;
  top: 59%;
  transform: translateY(-50%);
}

.sec03_list_wrapper.n04::before{
  content: '';
  display: block;
  width: 109px;
  height: 127px;
  background: url(../img/sec03_chara_05.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  right: -65px;
  bottom: 27px;
  z-index: -1;
}

.sec03_list_wrapper.n04 .sec03_list_bg{
  border-top-left-radius: 160px;
  border-top-right-radius: 160px;
}

.sec03_list_ttl{
  font-size: 28px;
  line-height: 1.66;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #000;
  z-index: 1;
}

.sec03_list_item {
  display: block;
  width: 100%;
  min-width: 178px;
  aspect-ratio: 240 / 325;
  border-radius: 17px;
  position: relative;
  transition: .3s;
}

.sec03_list_item .modal_trigger {
  width: 100%;
  height: 100%;
  padding: 26.62% 10px 0;
  box-sizing: border-box;
  cursor: pointer;
}

.sec03_list_item .txt_container {
  width: 100%;
  height: 31%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sec03_list_item .sec03_txt {
  font-size: 19px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  line-height: 1.58;
  letter-spacing: 0.1em;
}

a.sec03_list_item:hover {
  text-decoration: none;
  opacity: 0.7;
}

.sec03_list_item:hover {
  opacity: 0.7;
}


.sec03_list_item.modal301 {
  background-image: url(../oshiete_ebarake/img/bg_card_01.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.sec03_list_item.modal302 {
  background-image: url(../oshiete_ebarake/img/bg_card_02.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.sec03_list_item.modal303 {
  background-image: url(../oshiete_ebarake/img/bg_card_03.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.sec03_list_item.modal304 {
  background-image: url(../oshiete_ebarake/img/bg_card_04.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.sec03_list_item.modal305 {
  background-image: url(../oshiete_ebarake/img/bg_card_05.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.sec03_list_item.modal306 {
  background-image: url(../oshiete_ebarake/img/bg_card_06.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.sec03_list_item.modal307 {
  background-image: url(../oshiete_ebarake/img/bg_card_07.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.sec03_list_item.modal308 {
  background-image: url(../oshiete_ebarake/img/bg_card_08.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.sec03_list_item.modal309 {
  background-image: url(../oshiete_ebarake/img/bg_card_09.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.sec03_list_item.modal310 {
  background-image: url(../oshiete_ebarake/img/bg_card_10.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.sec03_list_item::before {
  display: block;
  font-family: "Paytone One", sans-serif;
  font-size: 30px;
  color: #fff;
  letter-spacing: .095em;
  position: absolute;
  top: 11px;
  left: 23px;
}

.sec03_list_item.modal301::before {
  content: '10';
}

.sec03_list_item.modal302::before {
  content: '09';
}

.sec03_list_item.modal303::before {
  content: '08';
}

.sec03_list_item.modal304::before {
  content: '07';
}

.sec03_list_item.modal305::before {
  content: '06';
}

.sec03_list_item.modal306::before {
  content: '05';
}

.sec03_list_item.modal307::before {
  content: '04';
}

.sec03_list_item.modal308::before {
  content: '03';
}

.sec03_list_item.modal309::before {
  content: '02';
}

.sec03_list_item.modal310::before {
  content: '01';
}

#sec03_list_item .img_container {
  width: 100%;
  height: 155px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sec03_list_item.modal306 .img_container,
.sec03_list_item.modal308 .img_container,
.sec03_list_item.modal309 .img_container {
  align-items: flex-end;
}

.modal301 .sec03_list_obj {
  width: 132px;
}

.modal302 .sec03_list_obj {
  width: 116px;
}

.modal303 .sec03_list_obj {
  width: 107px;
}

.modal304 .sec03_list_obj {
  width: 121px;
}

.modal305 .sec03_list_obj {
  width: 145px;
}

.modal306 .sec03_list_obj {
  width: 100%;
}

.modal307 .sec03_list_obj {
  width: 116px;
}

.modal308 .sec03_list_obj {
  width: 100%;
}

.modal309 .sec03_list_obj {
  width: 152px;
}

.modal310 .sec03_list_obj {
  width: 132px;
}

.sec03 .slick_prev {
  display: block;
  width: 53px;
  height: 53px;
  text-indent: -9999px;
  background: url(../img/sec03_btn_prev.png) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 12.9vw;
  z-index: 10;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  cursor: pointer;
}

.sec03 .slick_next {
  display: block;
  width: 53px;
  height: 53px;
  text-indent: -9999px;
  background: url(../img/sec03_btn_next.png) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 12.9vw;
  z-index: 10;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  cursor: pointer;
}

.sec03 .btn_container {
  width: 100%;
  position: relative;
}

.sec03 .btn_container a {
  display: block;
  width: 366px;
  height: 94px;
  background-color: #000;
  border-radius: 94px;
  border: 3px solid #fff;
  box-sizing: border-box;
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  line-height: 1.5;
  letter-spacing: .2em;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 82px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.sec03 .btn_container a::after {
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  position: absolute;
  top: 50%;
  right: 25px;
  -webkit-transform: translate(0, -50%) rotate(45deg);
  transform: translate(0, -50%) rotate(45deg);
}

.sec03 .btn_container a:hover {
  text-decoration: none;
  background-color: #4e4e4e;
}

.sec03 .modal_wrap .modal_list_item {
  max-width: 1250px;
}

.modal_card{
  position: absolute;
  top: 44px;
  left: 127px;
  transform: rotate(-10deg);
  width: 155px;
  height: 209px;
  z-index: 9;
}
.modal_card:after{
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 5px;
  width: 100%;
  height: 100%;
  border-radius: 13px;
  background-color: #000;
}
.wrapper_modal_card{
  position: relative;
  padding: 0;
  width: 100%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 1;
}

.modal_card.modal_card_01 .wrapper_modal_card{
  background-image: url(../oshiete_ebarake/img/bg_card_answer_01.svg);
}
.modal_card.modal_card_02 .wrapper_modal_card{
  background-image: url(../oshiete_ebarake/img/bg_card_answer_02.svg);
}
.modal_card.modal_card_03 .wrapper_modal_card{
  background-image: url(../oshiete_ebarake/img/bg_card_answer_03.svg);
}
.modal_card.modal_card_04 .wrapper_modal_card{
  background-image: url(../oshiete_ebarake/img/bg_card_answer_04.svg);
}
.modal_card.modal_card_05 .wrapper_modal_card{
  background-image: url(../oshiete_ebarake/img/bg_card_answer_05.svg);
}
.modal_card.modal_card_06 .wrapper_modal_card{
  background-image: url(../oshiete_ebarake/img/bg_card_answer_06.svg);
}
.modal_card.modal_card_07 .wrapper_modal_card{
  background-image: url(../oshiete_ebarake/img/bg_card_answer_07.svg);
}
.modal_card.modal_card_08 .wrapper_modal_card{
  background-image: url(../oshiete_ebarake/img/bg_card_answer_08.svg);
}
.modal_card.modal_card_09 .wrapper_modal_card{
  background-image: url(../oshiete_ebarake/img/bg_card_answer_09.svg);
}
.modal_card.modal_card_10 .wrapper_modal_card{
  background-image: url(../oshiete_ebarake/img/bg_card_answer_10.svg);
}

.sec03 .modal_wrap .modal_num {
  font-family: "Paytone One", sans-serif;
  font-size: 47px;
  text-align: center;
  letter-spacing: 0.12em;
  color: #000;
}

.sec03 .modal_wrap .modal_square {
  display: flex;
  justify-content: center;
  position: relative;
  margin-top: 3px;
}

.sec03 .modal_wrap .modal_square span {
  display: block;
  width: 8px;
  height: 11px;
  background-color: #d4110a;
  clip-path: polygon(0 50%, 50% 0, 100% 50%, 50% 100%);
}

.sec03 .modal_wrap .modal302 .modal_square span,
.sec03 .modal_wrap .modal302 .modal_ttl:before,
.sec03 .modal_wrap .modal307 .modal_square span,
.sec03 .modal_wrap .modal307 .modal_ttl:before {
  background-color: #d25e1e;
}

.sec03 .modal_wrap .modal303 .modal_square span,
.sec03 .modal_wrap .modal303 .modal_ttl:before,
.sec03 .modal_wrap .modal308 .modal_square span,
.sec03 .modal_wrap .modal308 .modal_ttl:before {
  background-color: #d49123;
}

.sec03 .modal_wrap .modal304 .modal_square span,
.sec03 .modal_wrap .modal304 .modal_ttl:before,
.sec03 .modal_wrap .modal309 .modal_square span,
.sec03 .modal_wrap .modal309 .modal_ttl:before {
  background-color: #182b81;
}

.sec03 .modal_wrap .modal305 .modal_square span,
.sec03 .modal_wrap .modal305 .modal_ttl:before,
.sec03 .modal_wrap .modal310 .modal_square span,
.sec03 .modal_wrap .modal310 .modal_ttl:before {
  background-color: #6b2054;
}

.sec03 .modal_wrap .modal_container {
  font-size: 47px;
  text-align: center;
  letter-spacing: 0.12em;
  color: #000;
  display: block;
  padding: 50px 57px;
}

.sec03 .modal_wrap .modal_box {
  display: flex;
  justify-content: center;
  position: relative;
  margin-top: 3px;
  align-items: flex-start;
  padding-top: 37px;
}

.sec03 .modal_wrap .modal_container .img_container {
  width: 40%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sec03 .modal_wrap .modal_container .txt_container {
  width: 60%;
  margin-left: 30px;
  text-align: left;
}

.sec03 .modal_wrap .modal_container:before {
  content: "";
  display: block;
  position: absolute;
  top: -101px;
  left: -190px;
  width: 39.27%;
  /* height: 327px; */
  aspect-ratio: 322 / 327;
  background-image: url(../img/bg_modal_confetti_left_01.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.sec03 .modal_wrap .modal_container:after {
  content: "";
  display: block;
  position: absolute;
  top: -152px;
  right: -133px;
  width: 42.07%;
  /* height: 354px; */
  aspect-ratio: 345 / 354;
  background-image: url(../img/bg_modal_confetti_right_01.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.sec03 .modal_wrap .btn-modal-details {
  margin-top: 40px;
}

.sec03 .modal_wrap .btn-modal-details a {
  display: block;
  position: relative;
  margin: 0 auto;
  padding: 10px 0;
  width: 280px;
  border-radius: 56px;
  background-color: #000;
  font-size: 16px;
  text-align: center;
  letter-spacing: 0.23em;
  font-weight: 700;
  color: #fff;
}

.sec03 .modal_wrap .btn-modal-details a:hover {
  transition: .3s;
  opacity: .6;
  text-decoration: none;
}

.sec03 .modal_wrap .btn-modal-details a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 26px;
  transform: translateY(-50%) rotate(45deg);
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}


/* .sec03 .modal_wrap .modal_ttl::after {
  content: '';
  display: block;
  width: 39px;
  height: 15px;
  background: url('../img/ttl_obj01.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  bottom: 20px;
} */

.sec03 .modal_wrap .modal_txt {
  margin-top: 20px;
  font-size: 15px;
  line-height: 1.87;
  letter-spacing: 0.13em;
  font-weight: 600;
}


.sec03 .modal_wrap .modal_ttl {
  position: relative;
  padding-left: 30px;
  padding-bottom: 20px;
  border-bottom: 2px solid #000;
  font-size: 22px;
  line-height: 1.5;
  letter-spacing: 0.12em;
  font-weight: 700;
}

.sec03 .modal_wrap .modal_ttl:before {
  content: "";
  display: block;
  position: absolute;
  top: 9px;
  left: 0;
  width: 17px;
  height: 23px;
  background-color: #d4110a;
  clip-path: polygon(0 50%, 50% 0, 100% 50%, 50% 100%);
}

.sec03 .modal_wrap .modal_ttl span {
  display: block;
  width: 275px;
  height: 54px;
  background-color: #000;
  border-radius: 27px;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  line-height: 54px;
  letter-spacing: .15em;
  margin-bottom: 20px;
}

.sec03 .modal_wrap .btn_close {
  z-index: 106;
}

.sec03 .modal_wrap .modal_link {
  display: block;
  width: 100%;
  margin-top: 20px;
  font-size: 12px;
  text-align: left;
  letter-spacing: 0.1em;
}

.sec03 .modal_wrap .modal_link::after {
  content: "";
  display: inline-block;
  margin: 0 0 -2px 5px;
  width: 13px;
  height: 13px;
  background-image: url(../img/icon_link_01.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.sec03 .modal_wrap .modal_link:hover {
  opacity: 0.6;
}

.sec03_list_item .img_container {
  justify-content: center;
  align-items: center;
  display: flex;
  margin: 18px 0 0 0;

}



/* sec04 ----------------------------------------*/

.sec04 {
  background-color: #D2161A;
  position: relative;
  padding: 80px 0 85px;
  overflow: hidden;
}

.sec04::before {
  content: '';
  display: block;
  width: 463px;
  height: 317px;
  background: url('../img/mv_obj02.png') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 465px;
  left: 50%;
  z-index: 3;
  transform: translate(-813px, 0);
}

.sec04.animate::before {
  animation: move_ico_sec04_01 7s infinite linear;
}

@keyframes move_ico_sec04_01 {
  0% {
    transform: rotateZ(0) translate(-813px, 0);
  }

  2% {
    transform: rotateZ(1deg) translate(-813px, 0);
  }

  4% {
    transform: rotateZ(0) translate(-813px, 0);
  }

  6% {
    transform: rotateZ(1deg) translate(-813px, 0);
  }

  8% {
    transform: rotateZ(0) translate(-813px, 0);
  }

  100% {
    transform: rotateZ(0) translate(-813px, 0);
  }
}

.sec04::after {
  content: '';
  display: block;
  width: 80%;
  max-width: 1100px;
  height: 398px;
  background: url(../img/mv_obj03.png) center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -8px;
  right: 30%;
  z-index: 3;
  transform: translate(888px, 0);
  pointer-events: none;
}

.sec04.animate::after {
  animation: move_ico_sec04_02 7s infinite linear;
}

@keyframes move_ico_sec04_02 {
  0% {
    transform: rotateZ(0) translate(888px, 0);
  }

  2% {
    transform: rotateZ(1deg) translate(888px, 0);
  }

  4% {
    transform: rotateZ(0) translate(888px, 0);
  }

  6% {
    transform: rotateZ(1deg) translate(888px, 0);
  }

  8% {
    transform: rotateZ(0) translate(888px, 0);
  }

  100% {
    transform: rotateZ(0) translate(888px, 0);
  }
}

.sec04_bg01 {
  background: #1A2E7F;
  border-bottom-left-radius: 50% 200px;
  border-bottom-right-radius: 50% 200px;
  margin-left: -100px;
  margin-right: -100px;
  padding-left: 100px;
  padding-right: 100px;
  width: calc(100% + 400px);
  height: 81%;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.sec04_bg02 {
  background: #EA7200;
  border-bottom-left-radius: 50% 200px;
  border-bottom-right-radius: 50% 200px;
  margin-left: -100px;
  margin-right: -100px;
  padding-left: 100px;
  padding-right: 100px;
  width: calc(100% + 400px);
  height: 78%;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

@keyframes scroll-anim {
  100% {
    background-position: -500% 0;
  }
}

.sec04_container {
  position: relative;
  z-index: 2;
}

.sec04_ttl {
  width: 533px;
  margin: 0 auto;
  padding-bottom: 80px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}

.sec04_ttl span {
  font-family: "Paytone One", sans-serif;
  font-size: 22px;
  text-align: center;
  letter-spacing: .12em;
  padding-top: 25px;
}

.sec04_ttl::after {
  content: '';
  display: block;
  width: 51px;
  height: 19px;
  background: url('../img/ttl_obj02.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 50%;
  bottom: 20px;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.sec04 .lead_txt {
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  line-height: 2.1em;
  letter-spacing: .23em;
  padding-bottom: 50px;
}

.sec04 .tab_trigger_list_container {
  margin: 0 auto 40px;
  padding-top: 56px;
  padding-bottom: 40px;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  column-gap: 20px;
}

.sec04 .tab_trigger {
  width: 235px;
  height: 68px;
  background-color: #000;
  border-radius: 34px;
  border: 3px solid #000;
  box-sizing: border-box;
  font-size: 22px;
  font-weight: 700;
  color: #808080;
  letter-spacing: .18em;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.sec04 .tab_trigger:hover {
  background-color: #FFEE2F;
  color: #000;
  transition: .3s;
}


.sec04 .tab_trigger.current {
  background-color: #FFEE2F;
  box-shadow: 0 5px 1px #000;
  color: #000;
}

.sec04 .tab_target_container {
  width: 91.41vw;
  max-width: 1200px;
  margin: 0 auto;
  padding: 70px 85px 70px;
  box-sizing: border-box;
  background-color: #fff;
  border: 4px solid #000;
  border-radius: 29.03vw 29.03vw 0 0;
  box-shadow: 10px 10px 1px #000;
  position: relative;
  z-index: 3;
}

.sec04 p.sec05_analysis {
  margin-top: 25px;
}

.tab_target_container::before {
  content: "";
  display: block;
  width: 106px;
  height: 142px;
  background: url('../img/sec01_obj05_on.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 100px;
  right: 146px;
  z-index: 3;
}

.tab_target_container::after {
  content: "";
  display: block;
  width: 185px;
  height: 151px;
  background: url('../img/sec04_balloon_obj01_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -6px;
  right: 57px;
  z-index: 2;
}

.sec04 .sec04_subttl {
  width: 262px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.sec04_subttl span {
  display: inline-block;
  font-family: "Paytone One", sans-serif;
  font-size: 18px;
  color: #D2161A;
  text-align: center;
  line-height: 1.44em;
  letter-spacing: .15em;
  padding-top: 20px;
}

.tab_target_list_item {
  text-align: center;
  display: none;
}

.tab_target_list_item.current {
  display: block;
}

.tab_target_list_item.beef {
  margin-top: -40px;
}

.tab_target_list_item.pork {
  padding-top: 30px;
}

.tab_target_list_item.chicken {
  padding-top: 20px;
}

.tab_target_list_item.beef .parts_trigger_obj {
  width: 705px;
  margin-bottom: 50px;
}

.tab_target_list_item.pork .parts_trigger_obj {
  width: 695px;
  margin-bottom: 90px;
}

.tab_target_list_item.chicken .parts_trigger_obj {
  width: 481px;
  margin-bottom: 40px;
}

.beef_1, .beef_2, .beef_3 {
  font-family: NotoSansCJKjp-Bold-90ms-RKSJ-H, 'Noto Sans CJK JP', 'Noto Sans Japanese';
  font-size: 16px;
  font-weight: 700;
}

.beef_1 {
  letter-spacing: .15em;
}

.beef_1, .beef_2 {
  font-family: NotoSansCJKjp-Bold-90ms-RKSJ-H, 'Noto Sans CJK JP', 'Noto Sans Japanese';
  font-size: 16px;
  font-weight: 700;
}

.beef_1, .beef_2, .beef_3 {
  fill: #fff;
}

.beef_4 {
  fill: #f2d700;
}

.beef_4, .beef_5 {
  stroke-linecap: round;
  stroke-linejoin: round;
}

.beef_4, .beef_5, .beef_6, .beef_7 {
  stroke: #fff;
}

.beef_4, .beef_5, .beef_7 {
  stroke-width: 3px;
}

.beef_8 {
  fill: #000;
}

.beef_8, .beef_3, .beef_9, .beef_10 {
  stroke-width: 0px;
}

.beef_2 {
  letter-spacing: .15em;
}

.beef_5, .beef_6, .beef_7 {
  fill: #f2d700;
}

.beef_6 {
  stroke-width: 2.94px;
}

.beef_6, .beef_7 {
  stroke-miterlimit: 10;
}

.beef_9 {
  fill: #c6c4b6;
}

.beef_10 {
  fill: #b7b4b0;
}

.pork_1 {
  fill: #fff;
  font-family: NotoSansCJKjp-Bold-90ms-RKSJ-H, 'Noto Sans CJK JP', 'Noto Sans Japanese';
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .15em;
}

.pork_2 {
  fill: #000;
}

.pork_2, .pork_3, .pork_4, .pork_5 {
  stroke-width: 0px;
}

.pork_3 {
  fill: #dfc3b5;
}

.pork_4 {
  fill: #665953;
}

.pork_6 {
  fill: #f2d700;
  stroke-width: 2.94px;
}

.pork_6, .pork_7, .pork_8 {
  stroke: #fff;
  stroke-linejoin: round;
}

.pork_7 {
  stroke-width: 3.96px;
}

.pork_7, .pork_8 {
  fill: #f2d700;
}

.pork_8 {
  stroke-width: 2.81px;
}

.pork_5 {
  fill: #d1a48e;
}

.chicken_1 {
  letter-spacing: .15em;
}

.chicken_1, .chicken_2 {
  fill: #fff;
  font-family: NotoSansCJKjp-Bold-90ms-RKSJ-H, 'Noto Sans CJK JP', 'Noto Sans Japanese';
  font-size: 16px;
  font-weight: 700;
}

.chicken_3 {
  fill: #000;
}

.chicken_3, .chicken_4, .chicken_5, .chicken_6, .chicken_7 {
  stroke-width: 0px;
}

.chicken_2 {
  letter-spacing: .15em;
}

.chicken_4 {
  fill: #665953;
}

.chicken_8 {
  fill: #f2d700;
}

.chicken_8, .chicken_9, .chicken_10 {
  stroke: #fff;
  stroke-miterlimit: 10;
}

.chicken_8, .chicken_10 {
  stroke-width: 3px;
}

.chicken_5 {
  fill: #bd2d3d;
}

.chicken_9 {
  stroke-width: 3.24px;
}

.chicken_9, .chicken_10 {
  fill: #f2d700;
}

.chicken_6 {
  fill: #ded3c2;
}

.chicken_7 {
  fill: #e07e27;
}

.parts_trigger .parts_trigger_bg,
.parts_trigger text {
  cursor: pointer;
  transition: .3s;
}

.parts_trigger text {
  fill: #000;
}

.parts_trigger rect {
  display: none;
}

.parts_trigger:hover .parts_trigger_bg,
.parts_trigger.current .parts_trigger_bg {
  fill: #d2161a;
  transition: .3s;
}

.parts_trigger:hover text,
.parts_trigger.current text {
  fill: #fff;
  display: inline-block;
  position: relative;
}

.parts_trigger:hover rect,
.parts_trigger.current rect {
  display: block;
  cursor: pointer;
}

.parts_target_ilst_item {
  position: relative;
  display: none;
}

.parts_target_ilst_item.current {
  display: block;
}

.parts_target_ilst_item::before {
  content: "";
  display: block;
  width: 158px;
  height: 86px;
  background: url('../img/sec04_balloon_obj02_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -190px;
  left: -10px;
  z-index: 2;
}

.parts_target_ilst_item::after {
  content: "";
  display: block;
  width: 109px;
  height: 142px;
  background: url('../img/sec01_obj09_on.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -110px;
  left: 60px;
  z-index: 3;
}

.parts_target_container {
  width: 100%;
  background-color: #D8D7D7;
  padding: 4.95%;
  border-radius: 50px;
  box-sizing: border-box;
  position: relative;
  display: flex;
  justify-content: space-between;
}

.parts_target_container::before {
  content: "";
  display: block;
  border-top: 50px solid transparent;
  border-right: 30px solid #D8D7D7;
  position: absolute;
  top: -39px;
  left: 22.77%;
  -webkit-transform: rotate(10deg);
  transform: rotate(10deg);
}

.parts_target_container .txt_container {
  width: 35%;
  font-size: 16px;
  font-weight: 500;
  line-height: 2.31em;
  text-align: left;
  letter-spacing: .03em;
}

.parts_target_container .img_container {
  width: 60%;
  clear: both;
}

.parts_target_container .parts_ttl {
  width: 100%;
  padding-bottom: 15px;
}

.parts_target_container .parts_ttl span {
  width: 100%;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000;
  border-radius: 20px;
  font-size: 19px;
  font-weight: 700;
  color: #fff;
  letter-spacing: .15em;
}

.parts_target_container .parts_ttl strong {
  width: 100%;
  padding: 32px 0 32px 40px;
  border-bottom: 2px solid #fff;
  box-sizing: border-box;
  background: url(../img/sec04_parts_ttl_obj.svg) 5px 28px no-repeat;
  background-size: 20px 26px;
  display: block;
  font-size: 26px;
  font-weight: 700;
  text-align: left;
}

.parts_target_container .parts_txt_obj_container {
  width: 140px;
  padding: 10px 0 0 10px;
  float: right;
}

.parts_target_container .parts_obj_list_item+.parts_obj_list_item {
  padding-top: 30px;
}

.parts_target_container .parts_obj_list_item .parts_obj_list_ttl {
  width: 100%;
  background-color: #fff;
  text-align: left;
  display: flex;
  align-items: stretch;
}

.parts_target_container .parts_obj_list_item .parts_obj_list_ttl span {
  display: inline-block;
  width: 175px;
  background-color: #d2161a;
  padding: 13px 29px 13px 13px;
  position: relative;
  z-index: 1;
  clip-path: polygon(0 0, 89.14% 0, 100% 50%, 89.14% 100%, 0 100%);
}

/* .parts_target_container .parts_obj_list_item .parts_obj_list_ttl span::after {
  content: '';
  display: block;
  width: 19px;
  height: 100%;
  background: url(../img/sec04_parts_ttl_obj.svg) right center no-repeat;
  background-size: auto 100%;
  position: absolute;
  top: 0;
  left: 98%;
  transform: scale(.7, 1);
  z-index: 2;
} */

.parts_target_container .parts_obj_list_item .parts_obj_list_ttl .parts_rec_ttl_obj {
  height: 16px;
}

.parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong {
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2em;
  letter-spacing: 2px;
  padding-left: 25px;
  padding-right: 40px;
  position: relative;
}
.parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .font_kosugi{
  display: contents;
  position: relative;
  top: 1px;
  left: 0.5px;
}

.parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .nowrap {
  white-space: nowrap;
  font-weight: 700;
}

/* ▼黄金シリーズ▼ */
.parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj1 {
  width: 22px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(10px, -50%);
}

/* ▼その他▼ */
.parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj2 {
  width: 26px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(10px, -50%);
}

/* ▼黄金辛口▼ */
.parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj5 {
  width: 22px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(10px, -50%);
}

/* ▼ザクだれ▼ */
.parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj3 {
  width: 35px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(10px, -50%);
}

/* ▼極シリーズ▼ */
.parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj4 {
  width: 24px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(10px, -50%);
}

/* ▼焼肉堪能▼ */
.parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj6 {
  width: 26px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(10px, -50%);
}

.parts_target_container .parts_obj_list_item .parts_obj_list_txt_container {
  padding-top: 20px;
  display: flex;
  justify-content: space-between;
}

.parts_target_container .parts_obj_list_item .parts_obj_txt {
  width: 300px;
  font-size: 14px;
  font-weight: 500;
  text-align: left;
  line-height: 2.25em;
  letter-spacing: .035em;
}

.parts_target_container .parts_obj_list_item .parts_graph_container {
  width: 225px;
  margin-left: 10px;
}

.parts_target_container .parts_obj_list_item .parts_graph_list_container {
  padding-top: 5px;
}

.parts_target_container .parts_obj_list_item .parts_graph_list_item {
  padding: 0 0 0 15px;
  font-size: 12px;
  font-weight: 500;
  text-align: left;
  letter-spacing: .1em;
  position: relative;
}

.parts_target_container .parts_obj_list_item .parts_graph_list_item::before {
  content: '';
  display: block;
  width: 9px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}

.parts_target_container .parts_obj_list_item .parts_graph_list_item:first-child::before {
  background-color: #1a2e7f;
}

.parts_target_container .parts_obj_list_item .parts_graph_list_item:nth-child(2)::before {
  background-color: #d2161a;
}

.sec04 p.sec04_analysis {
  margin: 10px 0 0 0;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .28em;
  text-align: left;
}

.sec04 p.sec04_analysis img {
  width: 105px;
}



/* plx_container ----------------------------------------*/

.plx_container {
  width: 100%;
  height: 380px;
  overflow: hidden;
  position: relative;
  z-index: -1;
}

.plx_container.active::after {
  content: '';
  display: block;
  width: 100vw;
  height: 100vh;
  background: url('../img/plx_obj.jpg') center 30% no-repeat;
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}



/* sec05 ----------------------------------------*/

.sec05 {
  background-color: #F2D700;
  padding: 120px 0 0;
  position: relative;
}

.sec05::before {
  content: "";
  display: block;
  width: 394px;
  height: 338px;
  background: url('../img/mv_obj01.png') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 100px;
  left: 50%;
  z-index: 2;
  transform: translate(-788px, 0);
}

.sec05.animate::before {
  animation: move_ico_sec05 7s infinite linear;
}

@keyframes move_ico_sec05 {
  0% {
    transform: rotate(0) translate(-788px, 0);
  }

  2% {
    transform: rotate(1deg) translate(-788px, 0);
  }

  4% {
    transform: rotate(0) translate(-788px, 0);
  }

  6% {
    transform: rotate(1deg) translate(-788px, 0);
  }

  8% {
    transform: rotate(0) translate(-788px, 0);
  }

  100% {
    transform: rotate(0) translate(-788px, 0);
  }
}


.sec05_container {
  width: 1190px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 230px 70px 70px;
  background-color: #fff;
  border: 4px solid;
  border-radius: 100px;
  box-shadow: 10px 10px 1px #000;
  position: relative;
  z-index: 1;
}

.sec05_container::before {
  content: "";
  display: block;
  width: 112px;
  height: 142px;
  background: url('../img/sec01_obj09.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 70px;
  right: 180px;
  z-index: 3;
}

.sec05_container::after {
  content: "";
  display: block;
  width: 207px;
  height: 139px;
  background: url('../img/sec05_balloon_obj_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -40px;
  right: 55px;
  z-index: 2;
}

.sec05 .sec05_ttl {
  width: 343px;
  /*padding-bottom: 50px;*/
  display: flex;
  flex-direction: column;
  align-items: center;
  position: absolute;
  top: 210px;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 99;
}

.sec05_ttl span {
  display: inline-block;
  font-family: "Paytone One", sans-serif;
  font-size: 18px;
  color: #D2161A;
  line-height: 1.44em;
  letter-spacing: .15em;
  padding-top: 20px;
}

.sec05 .graph_list_container {
  width: 1043px;
  height: 795px;
  background: url('../img/sec05_graph_obj.svg') center center no-repeat;
  background-size: contain;
  position: relative;
}

.sec05 p.sec05_analysis {
  margin-left: 25px;
}

.graph_list_item .graph_list_obj {
  cursor: pointer;
  position: absolute;
  top: 50%;
  left: 50%;
}

.product_obj01 {
  width: 26px;
  transform: translate(-42px, 42px);
}

.product_obj02 {
  width: 25px;
  transform: translate(73px, -122px);
}

.product_obj03 {
  width: 23px;
  transform: translate(140px, -120px);
}

.product_obj04 {
  width: 30px;
  transform: translate(30px, -294px);
}

.product_obj05 {
  width: 30px;
  transform: translate(-320px, 95px);
}

.product_obj06 {
  width: 30px;
  transform: translate(-52px, -256px);
}

.product_obj07 {
  width: 27px;
  transform: translate(-270px, 20px);
}

.product_obj08 {
  width: 26px;
  transform: translate(-193px, 128px);
}

.product_obj09 {
  width: 27px;
  transform: translate(-272px, 95px);
}

.product_obj10 {
  width: 26px;
  transform: translate(230px, -120px);
}

.product_obj11 {
  width: 26px;
  transform: translate(-80px, 44px);
}

.product_obj12 {
  width: 22px;
  transform: translate(198px, -116px);
}

.product_obj13 {
  width: 31px;
  transform: translate(309px, -298px);
}

.product_obj14 {
  width: 31px;
  transform: translate(278px, -120px);
}

.product_obj15 {
  width: 33px;
  transform: translate(342px, -305px);
}

.product_obj16 {
  width: 33px;
  transform: translate(248px, -36px);
}

.product_obj17 {
  width: 25px;
  transform: translate(45px, -219px);
}

.product_obj18 {
  width: 34px;
  transform: translate(165px, -172px);
}

.product_obj19 {
  width: 27px;
  transform: translate(106px, -111px);
}

.product_obj20 {
  width: 25px;
  transform: translate(-134px, 12px);
}

.product_obj21 {
  width: 25px;
  transform: translate(-162px, 90px);
}

.product_obj22 {
  width: 31px;
  transform: translate(-290px, 192px);
}

.product_obj23 {
  width: 30px;
  transform: translate(-218px, -239px);
}

.product_obj24 {
  width: 38px;
  transform: translate(-416px, 247px);
}

.product_obj25 {
  width: 25px;
  transform: translate(294px, -226px);
}

.product_obj26 {
  width: 31px;
  transform: translate(6px, -156px);
}

.product_obj27 {
  width: 31px;
  transform: translate(37px, -118px);
}

.product_obj28 {
  width: 31px;
  transform: translate(76px, -22px);
}

.product_obj29 {
  width: 31px;
  transform: translate(376px, -320px);
}

.product_obj30 {
  width: 31px;
  transform: translate(402px, -260px);
}

.product_obj31 {
  width: 38px;
  transform: translate(-349px, 260px);
}




/* modal_wrap ----------------------------------------*/

.sec05 .modal_wrap .modal_container .img_container {
  width: 33%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sec05 .modal_wrap .modal_container .txt_container {
  width: 67%;
}

.sec05 .modal_wrap .modal_container {
  position: relative;
}

.sec05 .modal_wrap .modal_container::before {
  content: '';
  display: block;
  width: 200px;
  height: 220px;
  background-size: contain;
  position: absolute;
  bottom: -92px;
  right: 30px;
  z-index: 2;
}


.sec05 .modal_wrap .modal01 .modal_container::before {
  background: url('../img/modal_obj01.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal02 .modal_container::before {
  background: url('../img/modal_obj02.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal03 .modal_container::before {
  background: url('../img/modal_obj03.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal04 .modal_container::before {
  background: url('../img/modal_obj04.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal05 .modal_container::before {
  background: url('../img/modal_obj05.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal06 .modal_container::before {
  background: url('../img/modal_obj06.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal07 .modal_container::before {
  background: url('../img/modal_obj07.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal08 .modal_container::before {
  background: url('../img/modal_obj08.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal09 .modal_container::before {
  background: url('../img/modal_obj09.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal10 .modal_container::before {
  background: url('../img/modal_obj10.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal11 .modal_container::before {
  background: url('../img/modal_obj11.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal12 .modal_container::before {
  background: url('../img/modal_obj12.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal13 .modal_container::before {
  background: url('../img/modal_obj13.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal14 .modal_container::before {
  background: url('../img/modal_obj14.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal15 .modal_container::before {
  background: url('../img/modal_obj15.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal16 .modal_container::before {
  background: url('../img/modal_obj16.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal17 .modal_container::before {
  background: url('../img/modal_obj17.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal18 .modal_container::before {
  background: url('../img/modal_obj18.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal19 .modal_container::before {
  background: url('../img/modal_obj19.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal20 .modal_container::before {
  background: url('../img/modal_obj20.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal21 .modal_container::before {
  background: url('../img/modal_obj21.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal22 .modal_container::before {
  background: url('../img/modal_obj22.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal23 .modal_container::before {
  background: url('../img/modal_obj23.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal24 .modal_container::before {
  background: url('../img/modal_obj24.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal25 .modal_container::before {
  background: url('../img/modal_obj25.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal26 .modal_container::before {
  background: url('../img/modal_obj01.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal27 .modal_container::before {
  background: url('../img/modal_obj04.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal28 .modal_container::before {
  background: url('../img/modal_obj10.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal29 .modal_container::before {
  background: url('../img/modal_obj04.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal30 .modal_container::before {
  background: url('../img/modal_obj01.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal31 .modal_container::before {
  background: url('../img/modal_obj10.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal_container::after {
  content: '';
  display: block;
  width: 160px;
  height: 101px;
  background: url('../img/modal_balloon_obj01.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 62px;
  right: -53px;
  z-index: 1;
}


.sec05 .modal_wrap .modal01 .modal_container::after {
  background: url('../img/modal_balloon_obj01.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal02 .modal_container::after {
  background: url('../img/modal_balloon_obj02.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal03 .modal_container::after {
  background: url('../img/modal_balloon_obj03.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal04 .modal_container::after {
  background: url('../img/modal_balloon_obj04.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal05 .modal_container::after {
  background: url('../img/modal_balloon_obj05.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal06 .modal_container::after {
  background: url('../img/modal_balloon_obj06.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal07 .modal_container::after {
  background: url('../img/modal_balloon_obj07.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal08 .modal_container::after {
  background: url('../img/modal_balloon_obj08.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal09 .modal_container::after {
  background: url('../img/modal_balloon_obj09.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal10 .modal_container::after {
  background: url('../img/modal_balloon_obj10.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal11 .modal_container::after {
  background: url('../img/modal_balloon_obj11.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal12 .modal_container::after {
  background: url('../img/modal_balloon_obj12.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal13 .modal_container::after {
  background: url('../img/modal_balloon_obj13.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal14 .modal_container::after {
  background: url('../img/modal_balloon_obj14.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal15 .modal_container::after {
  background: url('../img/modal_balloon_obj15.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal16 .modal_container::after {
  background: url('../img/modal_balloon_obj16.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal17 .modal_container::after {
  background: url('../img/modal_balloon_obj17.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal18 .modal_container::after {
  background: url('../img/modal_balloon_obj18.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal19 .modal_container::after {
  background: url('../img/modal_balloon_obj19.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal20 .modal_container::after {
  background: url('../img/modal_balloon_obj20.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal21 .modal_container::after {
  background: url('../img/modal_balloon_obj21.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal22 .modal_container::after {
  background: url('../img/modal_balloon_obj22.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal23 .modal_container::after {
  background: url('../img/modal_balloon_obj23.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal24 .modal_container::after {
  background: url('../img/modal_balloon_obj24.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal25 .modal_container::after {
  background: url('../img/modal_balloon_obj07.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal26 .modal_container::after {
  background: url('../img/modal_balloon_obj01.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal27 .modal_container::after {
  background: url('../img/modal_balloon_obj18.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal28 .modal_container::after {
  background: url('../img/modal_balloon_obj03.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal29 .modal_container::after {
  background: url('../img/modal_balloon_obj18.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal30 .modal_container::after {
  background: url('../img/modal_balloon_obj15.svg') center center no-repeat;
}

.sec05 .modal_wrap .modal31 .modal_container::after {
  background: url('../img/modal_balloon_obj25.svg') center center no-repeat;
}



.sec05 .modal_wrap .modal_ttl {
  font-size: 27px;
  font-weight: 700;
  line-height: 1.48em;
  letter-spacing: .23em;
  padding-bottom: 45px;
  position: relative;
}

.sec05 .modal_wrap .modal_ttl::after {
  content: '';
  display: block;
  width: 39px;
  height: 15px;
  background: url('../img/ttl_obj01.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  bottom: 20px;
}

.sec05 .modal_wrap .modal_txt {
  font-size: 16px;
  font-weight: 700;
  line-height: 2.47em;
  letter-spacing: .1em;
}



/* sec06 ----------------------------------------*/

.sec06 {
  background: #6A2253;
  margin-top: -210px;
  padding: 270px 0 100px;
  position: relative;
}

.sec06::before {
  content: '';
  display: block;
  width: 100%;
  height: 66px;
  background: url('../img/sec06_bg_obj.png') left bottom repeat-x, linear-gradient(180deg, #F2D700 0%, #F2D700 80%, #6A2253 80%, #6A2253 100%);
  background-size: auto 66px;
  position: absolute;
  top: -64px;
  left: 0;
  z-index: 0;
  animation: scroll_anim02 30s linear infinite;
}

.sec06::after {
  content: '';
  display: block;
  width: 100%;
  height: 66px;
  background: url('../img/sec06_bg_obj.png') left top repeat-x, linear-gradient(180deg, #fff 0%, #fff 80%, #6A2253 80%, #6A2253 100%);
  background-size: auto 66px;
  position: absolute;
  bottom: -64px;
  left: 0;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  animation: scroll_anim02 30s linear infinite;
  z-index: 0;
}

@keyframes scroll_anim02 {
  100% {
    background-position: -500% 0;
  }
}

.sec06_wrap {
  width: 1190px;
  margin: 0 auto;
  background-color: #fff;
  border: 4px solid #000;
  border-radius: 100px;
  box-shadow: 10px 10px 1px #000;
  position: relative;
}

.sec06_wrap::after {
  content: "";
  display: block;
  width: 463px;
  height: 317px;
  background: url('../img/mv_obj02.png') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -220px;
  right: -160px;
  z-index: 2;
}

.sec06_wrap.animate::after {
  animation: move_ico_00 7s infinite linear;
}

.sec06_container {
  width: 100%;
  height: 100%;
  padding: 60px 0;
  box-sizing: border-box;
  position: relative;
}

.sec06_container::before {
  content: "";
  display: block;
  width: 110px;
  height: 142px;
  background: url('../img/sec01_obj04_on.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 12px;
  left: 185px;
  z-index: 3;
}

.sec06_container::after {
  content: "";
  display: block;
  width: 149px;
  height: 106px;
  background: url('../img/sec06_balloon_obj_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -40px;
  left: 105px;
  z-index: 2;
}

.sec06 .sec06_ttl {
  width: 230px;
  margin: 0 auto;
  padding-bottom: 50px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.sec06_ttl span {
  display: inline-block;
  font-family: "Paytone One", sans-serif;
  font-size: 18px;
  color: #D2161A;
  line-height: 1.44em;
  letter-spacing: .15em;
  padding-top: 18px;
}

.sec06_list_container {
  width: 1024px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.sec06_list_container li:nth-of-type(1) {
  width: 370px;
}

.sec06_list_item a:hover {
  text-decoration: none;
}

.sec06_list_container .img_container {
  text-align: center;
}

.sec06_list_container .YZS90 {
  width: 80%;
}

.sec06_list_container .txt_container {
  padding-top: 10px;
  text-align: center;
}

.sec06_list_container .lineup_txt {
  display: inline-block;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: .18em;
  position: relative;
}

.sec06_list_container .lineup_txt::before {
  content: '';
  display: block;
  width: 16px;
  height: 16px;
  background-color: #000;
  border-radius: 8px;
  position: absolute;
  top: 52%;
  right: -1em;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.sec06_list_container .lineup_txt::after {
  content: '';
  display: block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 52%;
  right: calc(-1em + 4px);
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.spacer {
  width: 100%;
  height: 135px;
  background-color: #fff;
  position: relative;
  z-index: -1;
}


/* sec07 ----------------------------------------*/

.sec07 {
  background-color: #fff;
  padding: 120px 0 80px;
}

.sec07 .sec07_ttl {
  width: 330px;
  margin: 0 auto;
  padding-bottom: 90px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}

.sec07_ttl span {
  display: inline-block;
  font-family: "Paytone One", sans-serif;
  font-size: 18px;
  color: #D2161A;
  line-height: 1.44em;
  letter-spacing: .15em;
  white-space: nowrap;
  padding-top: 20px;
}

.sec07_ttl::after {
  content: '';
  display: block;
  width: 51px;
  height: 19px;
  background: url('../img/ttl_obj01.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 50%;
  bottom: 40px;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.sec07_list_container {
  width: 1190px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  position: relative;
}

.sec07_list_container::before {
  content: "";
  display: block;
  width: 109px;
  height: 142px;
  background: url('../img/sec01_obj06_on.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -150px;
  right: 50px;
  z-index: 3;
}

.sec07_list_container::after {
  content: "";
  display: block;
  width: 149px;
  height: 106px;
  background: url('../img/sec07_balloon_obj_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -220px;
  right: -20px;
  z-index: 2;
}

.sec07_list_container .sec07_list_item {
  width: 280px;
}

.sec07_list_container .sec07_list_item .txt_container {
  padding-top: 15px;
}

.sec07_list_container .sec07_list_item .sec07_list_ttl {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5em;
  letter-spacing: .17em;
  margin-bottom: 10px;
  position: relative;
}

.sec07_list_container .sec07_list_item .sec07_list_ttl::before {
  content: '';
  display: block;
  width: 16px;
  height: 16px;
  background-color: #D2161A;
  border-radius: 8px;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.sec07_list_container .sec07_list_item .sec07_list_ttl::after {
  content: '';
  display: block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  right: 4px;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.sec07_list_container .sec07_list_item .sec07_list_txt {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.57em;
  letter-spacing: .155em;
}



/* floating_btn_container ----------------------------------------*/

.floating_btn_container {
  width: 170px;
  height: 180px;
  position: fixed;
  bottom: 38px;
  right: 98px;
  z-index: 10;
  display: none;
}

/* sec_type ----------------------------------------*/
.sec_type{
  position: relative;
  padding: 63px 0 160px;
  background-color: #fff;
}
.type_container{
  position: relative;
  margin: 0 auto;
  padding: 44px 10px 37px;
  width: 90%;
  max-width: 665px;
  border: 3px solid #000;
  border-radius: 190px 190px 0 0;
  background-color: #F1D521;
  box-shadow: 10px 10px 1px #000;
}
.type_container::after{
  content: '';
  display: block;
  width: 29px;
  height: 78px;
  background: url(../img/sec03_list_obj02.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 5%;
  top: 63%;
}
.type_ttl{
  margin: 0 auto;
  width: 74.30%;
}
.sec_type .lead_txt{
  margin-top: 28px;
  font-size: 16px;
  text-align: center;
  line-height: 1.8;
  letter-spacing: 0.2em;
  font-weight: 700;
  color: #000;
}
.sec_type .btn_container{
  display: flex;
  justify-content: center;
  margin-top: 30px;
}
.sec_type .btn_container a {
  width: 223px;
  height: 55px;
  background-color: #000;
  border-radius: 94px;
  border: 3px solid #fff;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sec_type .btn_container a img{
  width: 55.35%;
}
.sec_type .btn_container a:hover {
  background-color: #4e4e4e;
}
.type_chara_container{
  position: relative;
  z-index: 3;
}
.type_chara_img{
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center bottom;
}
.type_chara_img{
  width: 150px;
  height: 150px;
  top: -212px;
  transition: all .5s ease-out;
}
.type_chara_img.large{
  /* width: 220px;
  height: 270px;
  top: -185px;
  right: -21%; */
  /* transition-duration: .3s; */
  
}


@media screen and (min-width: 641px) {
  .type_chara_img--i1{ background-image: url(../img/chara_type_01.png); margin-left: 0.5%; }
  .type_chara_img--i2{ background-image: url(../img/chara_type_02.png); }
  .type_chara_img--i3{ background-image: url(../img/chara_type_03.png); }
  .type_chara_img--i4{ background-image: url(../img/chara_type_04.png); }
  .type_chara_img--i5{ background-image: url(../img/chara_type_05.png); }
  .type_chara_img--i6{ background-image: url(../img/chara_type_06.png); }
  .type_chara_img--i7{ background-image: url(../img/chara_type_07.png); margin-left: 1.1%; }
  .type_chara_img--i8{ background-image: url(../img/chara_type_08.png); }
  .type_chara_img.large{
    animation: large .3s ease-out forwards;
  }
  .type_chara_img[data-pos="1"]{
    
  }
  .type_chara_img[data-pos="2"]{
    right: -46%;
  }
  .type_chara_img[data-pos="3"]{
    right: -72%;
  }
  .type_chara_img[data-pos="4"]{
    right: -98%;
  }
  .type_chara_img[data-pos="5"]{
    right: -124%;
  }
  /*
    add - right
  */
  .type_chara_img[data-pos="6"]{
    right: -150%;
  }
  .type_chara_img[data-pos="7"]{
    right: -176%;
  }
  .type_chara_img[data-pos="8"]{
    right: -202%;
  }
  .type_chara_img[data-pos="9"]{
    right: -228%;
  }
  .type_chara_img[data-pos="10"]{
    right: -254%;
    animation: right-edge .5s ease-out;
  }

  /*
    add - left
  */
  .type_chara_img[data-pos="11"]{
    left: -267%;
    /* animation: left-edge .5s ease-out; */
  }
  .type_chara_img[data-pos="12"]{
    left: -241%;
  }
  .type_chara_img[data-pos="13"]{
    left: -215%;
  }
  .type_chara_img[data-pos="14"]{
    left: -189%;
  }
  .type_chara_img[data-pos="15"]{
    left: -163%;
  }
  .type_chara_img[data-pos="16"]{
    left: -137%;
  }
  .type_chara_img[data-pos="17"]{
    left: -111%;
  }


  .type_chara_img[data-pos="18"]{
    left: -85%;
    
  }
  .type_chara_img[data-pos="19"]{
    left: -59%;
  }
  .type_chara_img[data-pos="20"]{
    left: -33%;
    animation: large_out .5s ease-out;
    
  }
  @keyframes right-edge {
    0%{
      right: -280%;
    }
    100%{
      right: -254%;
    }
  }
  @keyframes large_out {
    0%{
      width: 150px;
      height: 150px;
      top: -212px;
      opacity: 0;
      left: -10%;
    }
    100%{
      width: 150px;
      height: 150px;
      top: -212px;
      opacity: 1;
      left: -33%;
    }
  }
  @keyframes large {
    0%{
      width: 100px;
      height: 200px;
      top: -155px;
      /* left: auto; */
      right: -7%;
    }
    100%{
      width: 220px;
      height: 270px;
      top: -185px;
      right: -21%;
      /* left: auto; */
    }
  }
  
  @keyframes left-edge {
    0%{
      left: -293%;
    }
    100%{
      left: -267%;
    }
  }
}




/*------------------------------------------------*/

/* sp */

/*------------------------------------------------*/

@media only screen and (max-width: 640px) {

  /* common ----------------------------------------*/

  .ouchiyakiniku_wrap .pc {
    display: none;
  }

  .ouchiyakiniku_wrap .sp {
    display: block;
  }

  .anchor {
    padding-top: calc(9.38vw + 20px);
    margin-top: calc(-9.38vw - 20px);
  }



  /* intro_wrap ----------------------------------------*/

  .intro_container {
    width: 216px;
    height: 145px;
  }

  .intro_container::after {
    width: 133px;
    height: 5px;
  }

  .intro_container .door_obj01 {
    width: 133px;
    height: 145px;
  }

  .intro_container .door_obj02 {
    width: 128px;
    height: 140px;
    top: 2px;
    right: 2px;
  }

  .intro_container .door_obj03 {
    width: 84px;
    height: 140px;
    left: 6px;
  }

  .intro_wrap .intro_container .ebarakun_obj01 {
    top: 56px;
    right: 8px;
    width: 80px;
    transform: translate(120px, 160px) rotate(-15deg);
  }

  @keyframes entry {
    0% {
      transform: translate(120px, 160px) rotate(-15deg);
    }

    10% {
      transform: translate(120px, 160px) rotate(-15deg);
      opacity: 1;
    }

    50% {
      transform: translate(0, 0) rotate(-15deg);
    }

    65% {
      transform: translate(8px, 8px) rotate(-15deg);
    }

    100% {
      transform: translate(0) rotate(-15deg);
    }
  }

  .intro_wrap>.ebarakun_obj02 {
    width: 128px;
  }

  @keyframes walk {
    0% {
      transform: translate(-50%, 0);
    }

    70% {
      transform: translate(-50%, 150%) scale(1.6, 1.6);
    }

    90% {
      transform: translate(-50%, 130%) scale(1.6, 1.6);
    }

    99% {
      transform: translate(-50%, 150vh) scale(1.6, 1.6);
    }

    100% {
      transform: translate(-50%, 150vh) scale(1.6, 1.6);
      display: none;
    }
  }

  @keyframes close00 {
    0% {
      transform: translate(-69.26%, -50%) scale(1, 1);
    }

    100% {
      transform: translate(-64.26%, -10%) scale(.7, .7);
    }
  }

  .intro_wrap>.ebarakun_obj03 {
    width: 210px;
    transform: translate(-63%, 300%);
  }

  @keyframes up {
    0% {
      transform: translate(-63%, 300%);
      opacity: 1;
    }

    95% {
      transform: translate(-63%, -192px);
    }

    99% {
      transform: translate(-63%, -216px);
    }

    100% {
      transform: translate(-63%, -216px);
    }
  }

  .intro_wrap .intro_ttl {
    width: 70vw;
    top: 40%;
    transform: translate(-50%, -50%);
  }

  @keyframes zoom {
    0% {
      transform: translate(-50%, -50%) scale(0, 0);
      opacity: 0;
    }

    5% {
      transform: translate(-50%, -50%) scale(0, 0);
      opacity: 1;
    }

    50% {
      transform: translate(-50%, -50%) scale(1.2, 1.2);
      opacity: 1;
    }

    100% {
      transform: translate(-50%, -50%) scale(1, 1);
      opacity: 1;
    }
  }

  @keyframes out00 {
    0% {
      transform: translate(-50%, -50%) scale(1, 1);
      opacity: 1;
    }

    70% {
      transform: translate(-50%, -50%) scale(1.05, 1.05);
      opacity: 1;
    }

    100% {
      transform: translate(-50%, -50%) scale(0, 0);
      opacity: 1;
    }
  }

  @keyframes out01 {
    0% {
      transform: translate(-63%, -216px);
    }

    70% {
      transform: translate(-63%, -248px);
    }

    100% {
      transform: translate(-63%, 300%);
    }
  }

  @keyframes out02 {
    0% {
      transform: translate(-64.26%, -10%) scale(.7, .7);
    }

    70% {
      transform: translate(-64.26%, -10%) scale(.7, .7);
    }

    100% {
      transform: translate(-50%, -10%) scale(0, 0);
    }
  }

  .btn_skip_container {
    width: 21.4vw;
    height: 5.94vw;
    border-radius: 2.97vw;
    font-size: 3.44vw;
    line-height: 5.74vw;
    bottom: 5.78vw;
    right: 5.78vw;
  }



  /* mv_wrap ----------------------------------------*/

  .mv_wrap {
    height: 105vw;
    max-height: auto;
  }

  .mv_news_container {
    position: static;
    margin: -6rem auto 0;
    padding: 0 1rem 1rem 1rem;
    background-color: #D2161A;
  }

  .mv_news_list_container {
    width: 92.19vw;
    max-width: auto;
    border-radius: 3.13vw;
    padding: 1.56vw 0;
    display: block;
    position: relative;
    z-index: 2;
  }

  .mv_news_list_container dt.mv_news_list_item {
    width: 100%;
    font-size: 4.69vw;
    letter-spacing: .5vw;
    padding: 0 4.13vw;
    border-right: none;
    display: block;
  }

  .mv_news_list_container dd.mv_news_list_item {
    width: 100%;
    padding: 0 4.13vw;
    box-sizing: border-box;
  }

  .mv_news_list_container dd.mv_news_list_item span {
    padding: 0;
    font-size: 3.13vw;
    letter-spacing: .06em;
  }

  .mv_news_list_container dd.mv_news_list_item strong {
    padding-right: 0;
    font-size: 3.44vw;
  }

  .mv_news_obj_container .mv_news_obj01 {
    width: 22.03vw;
    max-width: auto;
    position: absolute;
    bottom:auto;
    top: 92vw;
    right: 27.44vw;
    z-index: 1;
    transform: translate(0, 200vh);
  }
  .mv_news_obj_container .mv_news_obj01.pop_up {
    animation: pop_up 1s ease-in-out forwards;
    animation-delay: .5s;
  }

  @keyframes pop_up {
    0% {
      transform: translate(0, 200vh);
      opacity: 0;
    }

    70% {
      transform: translate(0, -15%);
      opacity: 1;
    }

    85% {
      transform: translate(0, 0);
      opacity: 1;
    }

    100% {
      transform: translate(0, 0);
      opacity: 1;
    }
  }

  .mv_news_obj_container .mv_news_obj02 {
    width: 24.22vw;
    max-width: auto;
    position: absolute;
    bottom: auto;
    top: 93.34vw;
    right: 7.13vw;
    z-index: 0;
  }

  .mv_slide01_container {
    width: 30.78vw;
    height: 23.75vw;
    top: -3.13vw;
    left: -5.47vw;
    transform: translate(-100vw, 0);
  }

  .mv_slide01_container.slide_in {
    animation: slide_in01 1s ease-in-out forwards;
  }

  @keyframes slide_in01 {
    0% {
      transform: translate(-200vw, 0);
    }

    100% {
      transform: translate(0, 0);
    }
  }

  .mv_slide02_container {
    width: 41.25vw;
    height: 29.69vw;
    bottom: 23.56vw;
    left: -15.63vw;
    transform: translate(-100vw, 0);
  }

  .mv_slide01_container.slide_in {
    animation: slide_in02 1s ease-in-out forwards;
  }

  @keyframes slide_in02 {
    0% {
      transform: translate(-200vw, 0);
    }

    100% {
      transform: translate(0, 0);
    }
  }

  .mv_slide03_container {
    width: 56.09vw;
    height: 36.25vw;
    top: 4.69vw;
    right: -14.69vw;
    transform: translate(100vw, 0);
  }

  .mv_slide03_container .mv_slide_container {
    border-radius: 17.83vw 17.83vw 0 0;
  }

  .mv_slide01_container.slide_in {
    animation: slide_in03 1s ease-in-out forwards;
  }

  @keyframes slide_in03 {
    0% {
      transform: translate(200vw, 0);
    }

    100% {
      transform: translate(0, 0);
    }
  }

  .mv_slide01_container .door_container {
    border-right: .47vw solid #000;
  }

  .mv_slide01_container .door_container::after {
    width: 2.5vw;
    height: 5.31vw;
    right: 2.81vw;
  }

  .mv_slide02_container .door_container {
    border-right: .47vw solid #000;
  }

  .mv_slide02_container .door_container::after {
    width: 4.22vw;
    height: 10.94vw;
    top: 50%;
    right: 5.5vw;
    -webkit-transform: translate(0, -30%);
    transform: translate(0, -30%);
  }

  .mv_slide03_container .door_container {
    border-right: .47vw solid #000;
  }

  .mv_slide03_container .door_container::after {
    width: 3.91vw;
    height: 10.31vw;
    right: 17vw;
  }

  .mv_slide01_container .mv_obj {
    width: 20.78vw;
    max-width: auto;
    position: absolute;
    bottom: -10.94vw;
    left: -1vw;
    transform: translate(0, 0);
  }

  @keyframes zoom_in01 {
    0% {
      transform: translate(0, 0) scale(0, 0);
      opacity: 0;
    }

    5% {
      transform: translate(0, 0) scale(0, 0);
      opacity: 1;
    }

    50% {
      transform: translate(0, 0) scale(1.2, 1.2);
      opacity: 1;
    }

    100% {
      transform: translate(0, 0) scale(1, 1);
      opacity: 1;
    }
  }

  .mv_slide02_container .mv_obj {
    width: 28.75vw;
    max-width: auto;
    position: absolute;
    bottom: -3.13vw;
    right: -14.06vw;
    transform: translate(0, 0);
  }

  @keyframes zoom_in02 {
    0% {
      transform: translate(0, 0) scale(0, 0);
      opacity: 0;
    }

    5% {
      transform: translate(0, 0) scale(0, 0);
      opacity: 1;
    }

    50% {
      transform: translate(0, 0) scale(1.2, 1.2);
      opacity: 1;
    }

    100% {
      transform: translate(0, 0) scale(1, 1);
      opacity: 1;
    }
  }

  .mv_slide03_container .mv_obj {
    width: 42.25vw;
    max-width: auto;
    position: absolute;
    bottom: -21.25vw;
    left: auto;
    right: -1.25vw;
    transform: translate(0, 0);
  }

  @keyframes zoom_in03 {
    0% {
      transform: translate(0, 0) scale(0, 0);
      opacity: 0;
    }

    5% {
      transform: translate(0, 0) scale(0, 0);
      opacity: 1;
    }

    50% {
      transform: translate(0, 0) scale(1.2, 1.2);
      opacity: 1;
    }

    100% {
      transform: translate(0, 0) scale(1, 1);
      opacity: 1;
    }
  }

  @keyframes move_ico01 {
    0% {
      transform: rotate(0) translate(0, 0);
    }

    10% {
      transform: rotate(5deg) translate(0, 0);
    }

    20% {
      transform: rotate(0) translate(0, 0);
    }

    30% {
      transform: rotate(5deg) translate(0, 0);
    }

    40% {
      transform: rotate(0) translate(0, 0);
    }

    100% {
      transform: rotate(0) translate(0, 0);
    }
  }

  @keyframes move_ico02 {
    0% {
      transform: rotate(0) translate(0, 0);
    }

    10% {
      transform: rotate(5deg) translate(0, 0);
    }

    20% {
      transform: rotate(0) translate(0, 0);
    }

    30% {
      transform: rotate(5deg) translate(0, 0);
    }

    40% {
      transform: rotate(0) translate(0, 0);
    }

    100% {
      transform: rotate(0) translate(0, 0);
    }
  }

  @keyframes move_ico03 {
    0% {
      transform: rotate(0) translate(0, 0);
    }

    10% {
      transform: rotate(5deg) translate(0, 0);
    }

    20% {
      transform: rotate(0) translate(0, 0);
    }

    30% {
      transform: rotate(5deg) translate(0, 0);
    }

    40% {
      transform: rotate(0) translate(0, 0);
    }

    100% {
      transform: rotate(0) translate(0, 0);
    }
  }

  .mv_txt {
    font-size: 3.38vw;
  }

  .mv_slide02_container .mv_txt {
    width: 25.31vw;
    height: 27.75vw;
    top: -8.59vw;
    right: -4.69vw;
    transform: translate(0, 0);
  }

  .mv_slide03_container .mv_txt {
    width: 40vw;
    height: 12.8vw;
    top: -4.69vw;
    left: 0;
    transform: translate(0, 0);
  }

  .mv_ttl {
    width: 56.25vw;
    max-width: auto;
    transform: translate(-50%, -80%);
  }

  @keyframes zoom_in04 {
    0% {
      transform: translate(-50%, -80%) scale(0, 0);
      opacity: 0;
    }

    5% {
      transform: translate(-50%, -80%) scale(0, 0);
      opacity: 1;
    }

    50% {
      transform: translate(-50%, -80%) scale(1.1, 1.1);
      opacity: 1;
    }

    100% {
      transform: translate(-50%, -80%) scale(1, 1);
      opacity: 1;
    }
  }

  .mv_obj05_list_container {
    width: 7.81vw;
    height: 10.16vw;
    position: absolute;
    top: -6.13vw;
    left: unset;
    right: 18vw;
    z-index: 2;
  }
  
  .mv_obj06_list_container {
    width: 7.81vw;
    height: 10.16vw;
    position: absolute;
    top: -2.21vw;
    left: 2.21vw;
    z-index: 2;
  }
  
  .mv_obj05_01,
  .mv_obj05_03,
  .mv_obj06_02,
  .mv_obj06_04 {
    opacity: 1;
    animation: walk02 4s ease-in-out forwards;
  }
  
  @keyframes walk02 {
    0% {
      transform: translate(0, 0);
    }
    10% {
      transform: translate(1.93vw, -.48vw) rotate(10deg);
    }
    20% {
      transform: translate(3.86vw, 0) rotate(0);
    }
    30% {
      transform: translate(5.8vw, -.48vw) rotate(10deg);
    }
    40% {
      transform: translate(7.73vw, 0) rotate(0);
    }
    50% {
      transform: translate(9.66vw, -.48vw) rotate(10deg);
    }
    60% {
      transform: translate(11.59vw, 0) rotate(0);
    }
    70% {
      transform: translate(13.53vw, -.48vw) rotate(10deg);
    }
    80% {
      transform: translate(15.46vw, 0) rotate(0);
    }
    90% {
      transform: translate(17.39vw, -.48vw) rotate(10deg);
    }
    100% {
      transform: translate(19.32vw, 0) rotate(0);
      display: none;
    }
  }
  
  .mv_obj05_02,
  .mv_obj05_04,
  .mv_obj06_01,
  .mv_obj06_03 {
    opacity: 1;
    animation: walk03 4s ease-in-out forwards;
  }
  
  @keyframes walk03 {
    0% {
      transform: translate(19.32vw, 0);
    }
    10% {
      transform: translate(17.39vw, -.48vw) rotate(10deg);
    }
    20% {
      transform: translate(15.46vw, 0) rotate(0);
    }
    30% {
      transform: translate(13.53vw, -.48vw) rotate(10deg);
    }
    40% {
      transform: translate(11.59vw, 0) rotate(0);
    }
    50% {
      transform: translate(9.66vw, -.48vw) rotate(10deg);
    }
    60% {
      transform: translate(7.73vw, 0) rotate(0);
    }
    70% {
      transform: translate(5.8vw, -.48vw) rotate(10deg);
    }
    80% {
      transform: translate(3.86vw, 0) rotate(0);
    }
    90% {
      transform: translate(1.93vw, -.48vw) rotate(10deg);
    }
    100% {
      transform: translate(0, 0) rotate(0);
      display: none;
    }
  }



  /* bg_wrap ----------------------------------------*/

  .bg_wrap::before {
    width: 22.03vw;
    height: 28.91vw;
    bottom: 1.56vw;
    right: -9.38vw;
    transform: rotate(-35deg);
  }

  .bg_wrap::after {
    width: 30.31vw;
    height: 18.75vw;
    background: url('../img/sec07_balloon_obj_sp.svg') center center no-repeat;
    background-size: contain;
    bottom: 17.18vw;
    right: 5.47vw;
    transform: translate(0, 0)
  }

  .bg_txt {
    font-size: 7.97vw;
  }

  .bg_txt i {
    letter-spacing: .05em;
  }

  .bg_txt.right_txt {
    top: 12.5vw;
    animation: loop_down 40s -10s linear infinite;
  }

  @keyframes loop_down {
    0% {
      transform: translateY(-100%);
    }

    to {
      transform: translateY(1400%);
    }
  }


  .bg_txt.left_txt {
    animation: loop_up 40s -10s linear infinite;
  }

  @keyframes loop_up {
    0% {
      transform: translateY(100%);
    }

    to {
      transform: translateY(-1400%);
    }
  }



  /* sec01 ----------------------------------------*/

  .sec01::before {
    height: 12.5vw;
  }

  .sec01 .sec01_container {
    border-radius: 8.59vw;
    padding: 12.5vw 0 20vw;
  }

  .sec01 .lead_txt {
    font-size: 4.38vw;
    line-height: 2.39em;
    text-align: left;
    letter-spacing: .045em;
    padding: 0 7.81vw 6.25vw;

  }

  .sec01 .sec01_ttl:first-of-type {
    width: 75.63vw;
    padding: 10.94vw 0 4.69vw;
  }

  .sec01 .sec01_ttl:first-of-type::before {
    width: 11.72vw;
    height: 4.53vw;
  }

  .sec01 .sec01_subttl_obj {
    width: 50vw;
    margin: 0 auto 3.91vw;
  }

  .sec01 .sec01_ttl:last-of-type {
    width: 56.25vw;
    padding: 6.25vw 0 4.69vw;
  }

  .sec01_list_wrap {
    width: 100%;
    max-width: auto;
    display: block;
  }

  .sec01_list_container {
    justify-content: center;
  }

  .sec01_list_container {
    width: 100%;
    max-width: auto;
    justify-content: center;
    flex-wrap: wrap;
  }

  .sec01_list_wrap:first-of-type .sec01_list_item {
    width: 22.19vw;
  }

  .sec01_list_wrap:first-of-type .sec01_list_item .sec01_list_obj {
    height: 25.31vw;
  }

  .sec01_list_wrap:last-of-type .sec01_list_item {
    width: 15.5vw;
  }

  /* .sec01_list_wrap:last-of-type .sec01_list_item:nth-of-type(1){
    margin-left: 1.2vw;
  } */

  .sec01_list_wrap:last-of-type .sec01_list_item:nth-of-type(2){
    margin-left: -0.2vw;
  }

  .sec01_list_wrap:last-of-type .sec01_list_item:nth-of-type(3){
    margin-left: -1vw;
  }

  .sec01_list_wrap:last-of-type .sec01_list_item:nth-of-type(5){
    margin-left: -1vw;
  }

  .sec01_list_wrap:last-of-type .sec01_list_item:nth-of-type(6){
    margin-left: 0.2vw;
  }

  .sec01_list_wrap:last-of-type .sec01_list_item:nth-of-type(6):hover::after{
    left: 37%;
  }

  .sec01_list_wrap:last-of-type .sec01_list_item .sec01_list_obj {
    height: 17.84vw;
  }

  /* .sec01_list_item:hover::before,
  .sec01_list_wrap:last-of-type .sec01_list_item:hover::after {
    display: none;
  } */

  .sec01_list_item:hover::before{
    display: none;
  }



  /* modal_wrap ----------------------------------------*/

  .modal_wrap {
    width: 100%;
    height: 120vh;
    background-color: #D2161A;
    overflow: hidden;
  }

  .modal_wrap .modal_list_item {
    width: 100%;
    height: 100vh;
    max-width: auto;
    box-sizing: border-box;
    padding: 7.69vw 5.78vw 0;
    top: 0;
    transform: translate(-50%, 0);
    overflow-y: scroll;
    overflow-x: hidden;
  }

  .modal_wrap .modal_container {
    width: 100%;
    height: auto;
    min-height: 84.62vh;
    padding: 12.5vw 4.69vw;
    margin-bottom: 7.69vw;
    border: 4px solid #000;
    border-radius: 10.16vw;
    position: relative;
    display: block;
  }

  .modal_wrap .btn_close {
    width: 10.94vw;
    height: 10.94vw;
    top: 6.25vw;
    right: 6.25vw;
  }

  .sec03 .modal_wrap .modal_container .txt_container {
    width: unset;
  }

  .sec01 .modal_wrap .modal_container .img_container {
    width: 100%;
  }

  .sec01 .modal_wrap .modal_container .txt_container {
    width: 100%;
  }

  .sec01 .modal_wrap .modal_list_item.modal01 .sec01_modal_list_obj {
    width: 44.06vw;
  }

  .sec01 .modal_wrap .modal_list_item.modal02 .sec01_modal_list_obj {
    width: 35.31vw;
  }

  .sec01 .modal_wrap .modal_list_item.modal03 .sec01_modal_list_obj {
    width: 41.41vw;
  }

  .sec01 .modal_wrap .modal_ttl {
    padding-bottom: 15.63vw;
    text-align: center;
  }

  .sec01 .modal_wrap .modal_ttl span {
    width: 64.53vw;
    height: 10.94vw;
    border-radius: 5.5vw;
    font-size: 3.75vw;
    line-height: 10.94vw;
    letter-spacing: .23em;
    margin: 6.25vw auto;
  }

  .sec01 .modal_wrap .modal_list_item.modal01 .sec01_modal_ttl_obj {
    width: 39.06vw;
  }

  .sec01 .modal_wrap .modal_list_item.modal02 .sec01_modal_ttl_obj {
    width: 50.94vw;
  }

  .sec01 .modal_wrap .modal_list_item.modal03 .sec01_modal_ttl_obj {
    width: 50.78vw;
  }

  .sec01 .modal_wrap .modal_ttl::after {
    width: 11.72vw;
    height: 4.53vw;
    left: 50%;
    bottom: 6.25vw;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }

  .sec01 .modal_wrap .modal_txt {
    font-size: 4.06vw;
    line-height: 2.29em;
    letter-spacing: .135em;
  }



  /* sec02 ----------------------------------------*/

  .sec02 {
    padding: 12.5vw 0 18.75vw;
  }

  .sec02_bg02 {
    height: 106.25vw;
  }

  .sec02_bg02::after {
    height: 9.38vw;
    background: url('../img/sec02_bg_obj.png') center center repeat-x;
    background-size: auto 9.38vw;
    top: -9.06vw;
    animation: scroll_anim01 60s linear infinite;
  }
  .sec02_bg02::before {
    height: 9.38vw;
    background: url('../img/sec02_bg_obj_02.png') center center repeat-x;
    background-size: auto 9.38vw;
    bottom: -0.06vw;
    animation: scroll_anim01 60s linear infinite;
  }

  .sec02_ttl {
    width: 54.53vw;
    padding-bottom: 18.75vw;
  }

  .sec02_ttl span {
    font-size: 4.06vw;
    padding-top: 4.69vw;
    white-space: nowrap;
  }

  .sec02 .sec02_ttl::after {
    width: 16.25vw;
    height: 6.25vw;
    bottom: 8.59vw;
  }

  .sec02 .sec02_container {
    width: 89.84vw;
    max-width: auto;
    padding: 23.44vw 6.25vw 18.75vw;
    border-radius: 44.92vw 44.92vw 0 0;
    box-shadow: 1.56vw 1.56vw 1px #000;
  }

  .sec02 .sec02_container::before {
    width: 51.09vw;
    height: 41.56vw;
    top: -16.4vw;
    left: -18.75vw;
  }

  .sec02 .sec02_container::after {
    width: 64.06vw;
    height: 44.53vw;
    bottom: -32.82vw;
    right: -34.38vw;
  }

  .sec02 .sec02_subttl {
    width: 53.59vw;
    padding-bottom: 10.56vw;
  }

  .sec02_subttl span {
    font-size: 3.44vw;
    line-height: 1.45em;
    letter-spacing: .165em;
    padding-top: 4.69vw;
  }

  .sec02 .lead_txt {
    font-size: 4.06vw;
    line-height: 2.15em;
    text-align: left;
    letter-spacing: .05em;
    padding-bottom: 4.69vw;
  }

  .sec02 .lead_txt::before {
    width: 17.19vw;
    height: 28.91vw;
    top: -26.56vw;
    right: -18.75vw;
    -webkit-transform: rotate(-35deg);
    transform: rotate(-35deg);
  }

  .sec02 .lead_txt::after {
    width: 24.84vw;
    height: 20.31vw;
    background: url('../img/sec02_balloon_obj01_sp.svg') center center no-repeat;
    background-size: contain;
    top: -45.31vw;
    right: -17.19vw;
  }

  .sec02 .sec02_list_container {
    width: 100%;
    display: block;
    padding-bottom: 0;
  }

  .sec02 .sec02_list_item {
    width: 71.88vw;
    max-width: auto;
    padding: 0 2.42vw;
  }

  .sec02 .txt_container {
    padding-top: 3.13vw;
  }

  .sec02 .sec02_list_txt {
    font-size: 3.75vw;
    line-height: 1.62em;
    letter-spacing: .145em;
  }

  .sec02 .sec02_subttl:nth-of-type(2) {
    width: 47.34vw;
    padding: 18.75vw 0 9.38vw;
    margin-top: 0;
  }

  .sec02 .sec02_list_ttl {
    font-size: 4.06vw;
    padding-bottom: 1.56vw;
  }

  .sec02_slide_list_item {
    width: 71.88vw;
    padding: 0 2.42vw;
  }

  .sec02 .sec02_slide_list_container .slick_prev {
    width: 9.38vw;
    height: 9.38vw;
    top: 30%;
    left: 0;
  }

  .sec02 .sec02_slide_list_container .slick_next {
    width: 9.38vw;
    height: 9.38vw;
    top: 30%;
    right: 0;
  }

  .sec02 .sec02_slide_list_container.recipe::before {
    width: 20.47vw;
    height: 28.91vw;
    top: -26.56vw;
    left: -6.25vw;
  }

  .sec02 .sec02_slide_list_container.recipe::after {
    width: 19.06vw;
    height: 9.22vw;
    background: url('../img/sec02_balloon_obj02_sp.svg') center center no-repeat;
    background-size: contain;
    top: -35.94vw;
    left: -7.81vw;
  }

  .sec02 .slick-dots {
    bottom: -7.03vw;
    height: 2.34vw;
  }

  .sec02 .slick-dots li span {
    font-size: 4.06vw;
  }

  .sec02_dots_prev,
  .sec02_dots_next {
    position: relative;
  }

  .sec02 .sec02_dots_prev {
    margin-right: 1.56vw;
    width: 2.34vw;
    height: 2.34vw;
    border-top: .73vw solid #000;
    border-left: .73vw solid #000;
  }

  .sec02 .sec02_dots_next {
    margin-left: 1.56vw;
    width: 2.34vw;
    height: 2.34vw;
    border-top: .73vw solid #000;
    border-right: .73vw solid #000;
  }



  /* sec03 ----------------------------------------*/

  .sec03::before {
    height: 15.63vw;
  }

  .sec03 .sec03_container {
    border-radius: 10.31vw;
    padding: 12.5vw 0 45vw;
  }

  .sec03 .sec03_container::after {
    width: 63.56vw;
    height: 40.83vw;
    background: url('../img/sec03_balloon_obj.svg') center center no-repeat;
    background-size: contain;
    bottom: -2.03vw;
    left: -11.91vw;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }

  .sec03_ttl {
    width: 84.38vw;
    padding-bottom: 3.25vw;
  }

  .sec03 .sec03_container .lead_txt {
    font-size: 4.38vw;
    line-height: 2em;
    letter-spacing: .01em;
    padding-bottom: 0;
  }

  .sec03 .sec03_container .lead_txt::before{
    width: 15vw;
    height: 7vw;
  }

  .sec03_list_container{
    display: block;
    width: 93.75%;
    max-width: none;
    margin: 14.19vw auto 0;
  }


  .sec03_list_ttl{
    font-size: 4.06vw;
    text-align: center;
    line-height: 1.54;
    letter-spacing: 0.16em;
  }

  .sec03_list_wrapper.n01{
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto 45.36vw 45.36vw 45.36vw;
    row-gap: 3.13vw;
    column-gap: 4.06vw;
    padding: 5.94vw 14.84vw 10.63vw 7.81vw;
  }

  .sec03_list_wrapper.n01::after{
    width: 4.22vw;
    height: 11.25vw;
    right: 6.1%;
    top: 40%;
  }

  .sec03_list_wrapper.n01::before{
    content: '';
    display: block;
    position: absolute;
    width: 20.69vw;
    height: 29.59vw;
    background: url(../img/sec03_chara_02.svg) center center no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    bottom: -19vw;
    z-index: 1;
    rotate: 28deg;
  }

  .sec03_list_wrapper.n01 .sec03_list_bg{
    border-top-left-radius: 17.19vw;
    border-top-right-radius: 17.19vw;
  }

  .sec03_list_wrapper.n01 .sec03_list_bg::before{
    width: 37.5vw;
    height: 41.88vw;
    background: url(../img/sec03_chara_01_sp.svg) center center no-repeat;
    left: auto;
    right: -11vw;
    top: -19vw;
    z-index: 1;
  }

  .sec03_list_wrapper.n01 .sec03_list_bg::after{
    content: '';
    display: block;
    position: absolute;
    right: 0;
    bottom: -5%;
    width: 52%;
    height: 65vw;
    background-color: #EFEEEE;
  }

  .sec03_list_wrapper.n01 .sec03_list_ttl{
    grid-column: 1 / 3;
    margin-left: 7vw;
    margin-bottom: 3vw;
    width: auto;
  }

  .sec03_list_wrapper.n02{
    grid-template-columns: auto;
    grid-template-rows: auto 45.36vw 45.36vw;
    row-gap: 3.13vw;
    position: absolute;
    top: 125vw;
    right: 0;
    width: 45.31vw;
    padding: 6.56vw 6.88vw 4.69vw 4.84vw;
  }

  .sec03_list_wrapper.n02::after{
    width: 2.97vw;
    height: 8.13vw;
    left: auto;
    top: 57%;
    right: 4%;
  }

  .sec03_list_wrapper.n02::before{
    width: 22.44vw;
    height: 28.22vw;
    background: url(../img/sec03_chara_03_sp.svg) center center no-repeat;
    right: -8vw;
    top: -17vw;
  }

  .sec03_list_wrapper.n02 .sec03_list_bg{
    clip-path: polygon(0 0, 80.34% 0, 100% 5.59%, 100% 100%, 0 100%);
  }

  .sec03_list_wrapper.n02 .sec03_list_ttl{
    order: 1;
    position: relative;
    left: 1vw;
    margin-left: 0;
    width: auto;
  }

  .sec03_list_wrapper.n02 .sec03_list_item.modal305{
    order: 2;
  }

  .sec03_list_wrapper.n02 .sec03_list_item.modal304{
    order: 3;
  }

  .sec03_list_wrapper.n03{
    grid-template-columns: auto;
    grid-template-rows: auto 45.36vw 45.36vw;
    row-gap: 3.13vw;
    width: 45.31vw;
    padding: 13.59vw 7.5vw 10.31vw 4.06vw;
    margin-top: 4.06vw;
    z-index: 1;
  }

  .sec03_list_wrapper.n03::after{
    content: '';
    display: block;
    width: 2.66vw;
    height: 7.19vw;
    right: 4.3%;
    top: 59%;
  }

  .sec03_list_wrapper.n03::before{
    width: 25.53vw;
    height: 25.69vw;
    background: url(../img/sec03_chara_04.svg) center center no-repeat;
    right: -62vw;
    top: 58vw;
    z-index: 1;
    rotate: -64deg;
  }

  .sec03_list_wrapper.n03 .sec03_list_bg{
    clip-path: polygon(0 8.86%, 50% 0, 100% 8.86%, 100% 100%, 0 100%);
  }

  .sec03_list_wrapper.n03 .sec03_list_ttl{
    position: relative;
    left: 1.8vw;
    grid-column: 1 / 2;
  }

  .sec03_list_wrapper.n04{
    grid-template-columns: auto;
    grid-template-rows: auto 45.36vw;
    row-gap: 5vw;
    align-items: center;
    position: absolute;
    top: 248vw;
    right: 0;
    padding: 5.78vw 5.47vw 4.53vw 6.56vw;
    width: 45.31vw;
  }

  .sec03_list_wrapper.n04::after{
    width: 1.97vw;
    height: 6.4vw;
    right: auto;
    left: 5%;
    top: 59%;
  }

  .sec03_list_wrapper.n04::before{
    width: 20.31vw;
    height: 26.02vw;
    right: 14vw;
    bottom: -24vw;
    rotate: -27deg;
    z-index: 1;
  }

  .sec03_list_wrapper.n04 .sec03_list_bg{
    border-top-left-radius: 18.28vw;
    border-top-right-radius: 18.28vw;
  }

  .sec03_list_wrapper.n04 .sec03_list_ttl{
    position: relative;
    left: -1vw;
  }





  .sec03_list_item .modal_trigger {
    padding: 0;
  }

  .sec03_list_item {
    display: block;
    width: 100%;
    min-width: auto;
    height: 100%;
    aspect-ratio: 240 / 325;
    padding-top: 10.5vw;
    border-radius: 3.31vw;
  }

  .sec03_list_item .txt_container {
    height: 7.81vw;
  }

  .sec03_list_item .sec03_txt {
    font-size: 3vw;
    line-height: 1.5em;
    letter-spacing: 0.05em;
  }

  .sec03_list_item::before {
    font-size: 4.5vw;
    top: 1.4vw;
    left: 3.91vw;
  }

  .sec03 .slick_prev {
    width: 16vw;
    height: 16vw;
    top: 90%;
    left: 3.5vw;
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
  }

  .sec03 .slick_next {
    width: 16vw;
    height: 16vw;
    top: 90%;
    right: 3.5vw;
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
  }

  .sec03_list_container_sp {
    padding: 4.62vw 0 6vw;
  }

  .sec03 .modal_wrap .modal_container .img_container {
    width: 100%;
  }


  .sec03 .modal_wrap .modal_container {
    padding: 7.5vw 7.03vw;
  }

.modal_card{
  top: 13.03vw;
  left: 1.6vw;
  width: 29.06vw;
  height: 38.75vw;
}
.modal_card:after{
  top: 0.9vw;
  left: 0.6vw;
}
.wrapper_modal_card{
  padding: 1vw 0 0 0;
}

  .sec03 .modal_wrap .modal_square {
    margin-top: 1vw;
  }

  .sec03 .modal_wrap .modal_square span {
    width: 2.66vw;
    height: 3.44vw;
  }

  .sec03 .modal_wrap .modal_box {
    padding-top: 5.94vw;
  }

  .sec03 .modal_wrap .modal_num {
    font-size: 10.31vw;
  }


  .sec03 .modal_wrap .modal_container .txt_container {
    margin-left: 0;
    margin-top: 5.16vw;
  }

  .sec03 .modal_wrap .modal_ttl {
    padding-left: 5.31vw;
    padding-bottom: 3.38vw;
    font-size: 4.84vw;
  }

  .sec03 .modal_wrap .modal_ttl:before {
    top: 1.8vw;
    width: 3.59vw;
    height: 4.69vw;
  }

  .sec03 .modal_wrap .modal_txt {
    margin-top: 2vw;
    font-size: 4.06vw;
    line-height: 1.92;
    font-weight: 600;
  }

  .sec03 .modal_wrap .btn-modal-details {
    margin-top: 3.75vw;
  }

  .sec03 .modal_wrap .btn-modal-details a {
    padding: 2.66vw 0;
    width: 62.5vw;
    font-size: 3.75vw;
    letter-spacing: 0.23em;
    line-height: 1.58;
  }

  .sec03 .modal_wrap .modal_link {
    margin-top: 7.33vw;
    font-size: 3vw;
  }


  .sec03 .modal_wrap .modal_box {
    display: block;
  }

  .modal301 .sec03_list_obj {
    width: 26.41vw;
  }

  .modal302 .sec03_list_obj {
    width: 23.28vw;
  }

  .modal303 .sec03_list_obj {
    width: 21.41vw;
  }

  .modal304 .sec03_list_obj {
    width: 24.22vw;
  }

  .modal305 .sec03_list_obj {
    width: 29.22vw;
  }

  .modal306 .sec03_list_obj {
    width: 100%;
  }

  .modal307 .sec03_list_obj {
    width: 23.28vw;
  }

  .modal308 .sec03_list_obj {
    width: 100%;
  }

  .modal309 .sec03_list_obj {
    width: 26.09vw;
  }

  .carousel10 .sec03_list_obj {
    width: 21.88vw;
  }

  .sec03 .btn_container a {
    width: 60vw;
    height: 18.75vw;
    border-radius: 11.96vw;
    font-size: 3.75vw;
    line-height: 1.39;
    letter-spacing: .18vw;
    top: 11.88vw;
    left: 50%;
    z-index: 1;
  }

  .sec03 .btn_container a::after {
    width: 1.56vw;
    height: 1.56vw;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    right: 4.06vw;
  }

  .sec03 .modal_wrap .modal_list_item:before {
    content: "";
    display: block;
    position: absolute;
    top: -2.81vw;
    left: -26.16vw;
    width: 54.38vw;
    height: 59.53vw;
    background-image: url(../img/bg_modal_confetti_left_01.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 9;
  }

  .sec03 .modal_wrap .modal_list_item:after {
    content: "";
    display: block;
    position: absolute;
    top: -1vw;
    right: -44.94vw;
    width: 76.25vw;
    height: 62.5vw;
    background-image: url(../img/bg_modal_confetti_right_01.png);
    background-size: contain;
    background-repeat: no-repeat;
  }

  .sec03 .modal_wrap .modal_container:before {
    display: none;
  }

  .sec03 .modal_wrap .modal_container:after {
    display: none;
  }

  /* sec04 ----------------------------------------*/

  .sec04 {
    padding: 12.5vw 0 28.13vw;
  }

  .sec04::before {
    display: none;
  }

  .sec04::after {
    width: 68.26vw;
    height: 52.86vw;
    bottom: -3.13vw;
    right: auto;
    left: 50%;
    -webkit-transform: translate(3.13vw, 0);
    transform: translate(3.13vw, 0);
    z-index: 2;
  }

  @keyframes move_ico_sec04_02 {
    0% {
      transform: rotateZ(0) translate(3.13vw, 0);
    }

    2% {
      transform: rotateZ(1deg) translate(3.13vw, 0);
    }

    4% {
      transform: rotateZ(0) translate(3.13vw, 0);
    }

    6% {
      transform: rotateZ(1deg) translate(3.13vw, 0);
    }

    8% {
      transform: rotateZ(0) translate(3.13vw, 0);
    }

    100% {
      transform: rotateZ(0) translate(3.13vw, 0);
    }
  }

  .sec04_ttl {
    width: 58.75vw;
    padding-bottom: 17.19vw;
  }

  .sec04_ttl span {
    width: 80vw;
    font-size: 4.06vw;
    padding-top: 4.69vw;
  }

  .sec04_ttl::after {
    width: 16.25vw;
    height: 6.25vw;
    bottom: 6.25vw;
  }

  .sec04 .lead_txt {
    width: 80vw;
    margin: 0 auto;
    font-size: 4.38vw;
    text-align: left;
    line-height: 2.14em;
    letter-spacing: .055em;
    padding-bottom: 7.81vw;
  }

  .sec04 .tab_trigger_list_container {
    margin-bottom: 0;
    padding-top: 9.06vw;
    padding-bottom: 0;
    column-gap: 1.88vw;
  }

  .sec04 .tab_trigger {
    width: 25.94vw;
    height: 17.19vw;
    border-radius: 3.91vw;
    font-size: 4.06vw;
    text-align: center;
    line-height: 1.4em;
    letter-spacing: .205em;
  }

  .sec04 .tab_target_container {
    width: 89.84vw;
    max-width: none;
    padding: 20vw 5.16vw 5.94vw;
    border-radius: 45vw 45vw 0 0;
    box-shadow: 1.56vw 1.56vw 1px #000;
  }

  .tab_target_container::before {
    width: 21.41vw;
    height: 28.91vw;
    top: 50.78vw;
    right: -14.84vw;
    -webkit-transform: rotate(-35deg);
    transform: rotate(-35deg);
    z-index: 2;
  }

  .tab_target_container::after {
    width: 25.78vw;
    height: 22.5vw;
    background: url('../img/sec04_balloon_obj01_sp.svg') center center no-repeat;
    background-size: contain;
    top: 34.37vw;
    right: -9.38vw;
    z-index: 1;
  }

  .sec04 .sec04_subttl {
    width: 48.28vw;
  }

  .sec04_subttl span {
    width: 70vw;
    font-size: 3.44vw;
    line-height: 1.45em;
    letter-spacing: .165em;
    padding-top: 4.69vw;
  }

  .tab_target_list_item.beef {
    margin-top: 5ch;
  }

  .tab_target_list_item.pork {
    padding-top: 15.63vw;
  }

  .tab_target_list_item.chicken {
    padding-top: 14.84vw;
  }

  .tab_target_list_item.beef .parts_trigger_obj {
    width: 77.03vw;
    margin-bottom: 18.75vw;
  }

  .tab_target_list_item.pork .parts_trigger_obj {
    width: 75.94vw;
    margin-bottom: 24.22vw;
  }

  .tab_target_list_item.chicken .parts_trigger_obj {
    width: 52.66vw;
    margin-bottom: 17.19vw;
  }

  .parts_target_ilst_item::before {
    width: 21.41vw;
    height: 12.5vw;
    background: url('../img/sec04_balloon_obj02_sp.svg') center center no-repeat;
    background-size: contain;
    top: -33.01vw;
    left: -7.81vw;
  }

  .parts_target_ilst_item::after {
    width: 22.19vw;
    height: 28.91vw;
    top: -20.32vw;
    left: -4.69vw;
  }

  .parts_target_container {
    padding: 6.25vw 6.25vw 9.38vw;
    border-radius: 7.03vw;
    display: block;
  }

  .parts_target_container::before {
    border-top: 7.81vw solid transparent;
    border-right: 4.69vw solid #D8D7D7;
    top: -7.19vw;
    left: 23.44vw;
  }

  .parts_target_container .txt_container {
    width: 100%;
    font-size: 4.06vw;
    line-height: 2.37em;
    letter-spacing: .05em;
    padding-bottom: 9.38vw;
  }

  .parts_target_container .img_container {
    width: 100%;
  }

  .parts_target_container .parts_ttl {
    width: 32.81vw;
    box-sizing: border-box;
    padding-bottom: 3.13vw;
    float: left;
  }

  .parts_target_container .parts_ttl span {
    width: 100%;
    height: 7.5vw;
    border-radius: 3.75vw;
    font-size: 3.75vw;
    letter-spacing: .23em;
  }

  .parts_target_container .parts_ttl strong {
    padding: 4.69vw 0 4.69vw 5.47vw;
    background: url(../img/sec04_parts_ttl_obj.svg) left center no-repeat;
    background-size: 3.59vw 4.53vw;
    font-size: 4.69vw;
    line-height: 1.2rem;
  }

  .parts_target_container .parts_txt_obj_container {
    width: 28.13vw;
    padding: 0 0 3.13vw 0;
  }

  .parts_target_container .parts_txt_obj_container+.sp {
    clear: both;
    width: 100%;
    height: 1px;
  }

  .parts_target_container .parts_obj_list_item+.parts_obj_list_item {
    padding-top: 9.38vw;
  }

  .parts_target_container .parts_obj_list_item .parts_obj_list_ttl span {
    /* width: 14.06vw; */
    width: 17.92vw;
    padding: 2.81vw 4.95vw 1.56vw 2.19vw;
    clip-path: polygon(0 0, 78.46% 0, 100% 50%, 78.46% 100%, 0 100%);
  }

  /* .parts_target_container .parts_obj_list_item .parts_obj_list_ttl span::after {
    width: 3.86vw;
    background: url(../img/sec04_parts_ttl_obj.svg) right center no-repeat;
    background-size: auto 100%;
    transform: scale(.8, 1.6);
    left: 95%;
  } */

  .parts_target_container .parts_obj_list_item .parts_obj_list_ttl .parts_rec_ttl_obj {
    height: 10.94vw;
  }

  .parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong {
    justify-content: center;
    font-size: 3.75vw;
    line-height: 1.5em;
    padding-left: 5.69vw;
    padding-right: 1.5vw;
  }

  .parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .font_kosugi{
    display: contents;
  }

  .parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .nowrap {
    white-space: normal;
  }

  /* ▼黄金シリーズ▼ */
  .parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj1 {
    width: 6.8vw;
    left: 100%;
    top: 42%;
    transform: translate(2.34vw, -50%);
  }

  /* ▼その他▼ */
  .parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj2 {
    width: 7.63vw;
    left: 100%;
    top: 50%;
    transform: translate(2.34vw, -50%);
  }

  /* ▼贅沢辛口▼ */
  .parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj5 {
    width: 6vw;
    left: 100%;
    top: 50%;
    transform: translate(2.34vw, -50%);
  }

  /* ▼ザクだれ▼ */
  .parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj3 {
    width: 10vw;
    left: 100%;
    top: 50%;
    transform: translate(0, -50%);
  }

  /* ▼極シリーズ▼ */
  .parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj4 {
    width: 7.8vw;
    left: 100%;
    top: 42%;
    transform: translate(2.34vw, -50%);
  }
  /* ▼焼肉堪能▼ */
  .parts_target_container .parts_obj_list_item .parts_obj_list_ttl strong .parts_obj6 {
    width: 7.63vw;
    left: 100%;
    top: 50%;
    transform: translate(2.34vw, -50%);
  }

  .parts_target_container .parts_obj_list_item .parts_obj_list_txt_container {
    padding-top: 3.13vw;
    display: block;
  }

  .parts_target_container .parts_obj_list_item .parts_obj_txt {
    width: 100%;
    font-size: 3.75vw;
    font-weight: 700;
    line-height: 2.15em;
    letter-spacing: .09em;
    padding-bottom: 3.91vw;
  }

  .parts_target_container .parts_obj_list_item .parts_graph_container {
    width: 100%;
  }

  .parts_target_container .parts_obj_list_item .parts_graph_list_container {
    padding-top: 1.56vw;
  }

  .parts_target_container .parts_obj_list_item .parts_graph_list_item {
    padding: 0 0 0 4.38vw;
    font-size: 2.97vw;
  }

  .parts_target_container .parts_obj_list_item .parts_graph_list_item::before {
    width: 2.66vw;
    height: .63vw;
  }

  .parts_target_container .btn_container {
    padding-top: 7.81vw;
  }

  .parts_target_container .btn_container a {
    display: block;
    width: 62.5vw;
    height: 14.06vw;
    background-color: #000;
    border-radius: 7.03vw;
    border: 3px solid #fff;
    box-sizing: border-box;
    font-size: 3.75vw;
    font-weight: 700;
    color: #fff;
    letter-spacing: .1em;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
  }

  .parts_target_container .btn_container a::after {
    content: '';
    display: block;
    width: 1.56vw;
    height: 1.56vw;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    position: absolute;
    top: 50%;
    right: 4.06vw;
    -webkit-transform: translate(0, -20%) rotate(-45deg);
    transform: translate(0, -20%) rotate(-45deg);
  }

  .parts_target_container .btn_container a:hover {
    text-decoration: none;
  }

  .sec04 p.sec04_analysis {
    margin: 2.34vw 0 0 0;
    font-size: 3.13vw;
    font-weight: 500;
    letter-spacing: .28em;
    text-align: left;
  }
  
  .sec04 p.sec04_analysis img {
    width: 31.25vw;
  }


  /* plx_container ----------------------------------------*/

  .plx_container {
    height: 46.88vw;
  }

  .plx_container.active::after {
    background: url('../img/plx_obj.jpg') center center no-repeat;
    background-size: cover;
  }



  /* sec05 ----------------------------------------*/

  .sec05 {
    padding: 12.5vw 0 0;
    position: relative;
  }

  .sec05::before {
    content: '';
    display: block;
    width: 17.97vw;
    height: 28.91vw;
    background: url('../img/sec01_obj08_map.svg') center center no-repeat;
    background-size: contain;
    position: absolute;
    top: 18.3vw;
    left: 88.5vw;
    -webkit-transform: rotate(-35deg);
    transform: rotate(-35deg);
    z-index: 2;
  }

  .sec05.animate::before {
    animation: move_ico_sec05 7s infinite linear;
  }

  @keyframes move_ico_sec05 {
    0% {
      transform: rotate(-35deg) translate(0, 0);
    }

    2% {
      transform: rotate(-40deg) translate(0, 0);
    }

    4% {
      transform: rotate(-35deg) translate(0, 0);
    }

    6% {
      transform: rotate(-40deg) translate(0, 0);
    }

    8% {
      transform: rotate(-35deg) translate(0, 0);
    }

    100% {
      transform: rotate(-35deg) translate(0, 0);
    }
  }

  .sec05::after {
    content: '';
    display: block;
    width: 32.34vw;
    height: 25vw;
    background: url('../img/sec05_balloon_obj_sp.svg') center center no-repeat;
    background-size: contain;
    position: absolute;
    top: 1vw;
    right: 0;
    z-index: 1;
  }

  .sec05_wrap {
    width: 100vw;
    padding: 0 5vw 3.13vw;
    box-sizing: border-box;
    position: relative;
    overflow: scroll;
    z-index: 1;
  }

  .sec05_container {
    width: 268.13vw;
    padding: 34.97vw 7.81vw 15.63vw;
    border-radius: 11.72vw;
    box-shadow: 1.56vw 1.56vw 1px #000;
  }

  .sec05_container::before,
  .sec05_container::after {
    display: none;
  }

  .sec05 .graph_list_container {
    width: 252.66vw;
    height: 192.19vw;
  }

  .sec05 .sec05_ttl {
    width: 57.66vw;
    /*margin-left: 10.63vw;
    padding-bottom: 9.38vw;*/
    position: absolute;
    top: 28.13vw;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: 2;
  }

  .sec05_ttl span {
    font-size: 3.44vw;
    line-height: 1.45em;
    letter-spacing: .165em;
    padding-top: 3.69vw;
  }

  .graph_wrap {
    position: relative;
  }

  .graph_wrap::after {
    font-size: 5.31vw;
    bottom: 4.83vw;
    left: 19.32vw;
  }

  .graph_contaier::before {
    font-size: 5.31vw;
    top: -1.56vw;
    left: 7.25vw;
  }

  .graph_contaier::after {
    font-size: 5.31vw;
    bottom: 4.83vw;
    right: 4.69vw;
  }

  .scroll_bnr {
    width: 40vw;
    height: 40vw;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 3;
  }




  /* modal_wrap ----------------------------------------*/

  .sec05 .modal_wrap .modal_container {
    padding-bottom: 50vw;
  }

  .sec05 .modal_wrap .modal_container::before {
    width: 100%;
    height: 65vw;
    bottom: -27vw;
    right: auto;
    left: 45%;
    transform: translate(-50%, 0);
  }

  .sec05 .modal_wrap .modal_container::after {
    width: 38.44vw;
    height: 24.22vw;
    bottom: 14.84vw;
    right: auto;
    left: 50%;
    transform: translate(4.01vw, 0);
  }

  .sec05 .modal_wrap .modal_container .img_container {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .sec05 .modal_wrap .modal_container .txt_container {
    width: 100%;
    padding-top: 3.13vw;
  }

  .sec05 .modal_wrap .modal_list_obj {
    width: 37%;
  }

  .sec05 .modal_wrap .modal_ttl {
    font-size: 6.5vw;
    letter-spacing: 0.15em;
    text-align: center;
    padding-bottom: 17.19vw;
  }

  .sec05 .modal_wrap .modal_ttl::after {
    width: 11.72vw;
    height: 4.53vw;
    left: 50%;
    bottom: 6.25vw;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }

  .sec05 .modal_wrap .modal_txt {
    font-size: 4.38vw;
    line-height: 2.39em;
    letter-spacing: .045em;
  }



  /* sec06 ----------------------------------------*/

  .sec06 {
    background-color: #F2D700;
    margin-top: 0;
    padding: 12.5vw 0 18.75vw;
  }

  .sec06_bg_wrap {
    display: block;
    width: 100%;
    height: 50%;
    background: #6A2253;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 0;
  }

  .sec06::before {
    height: 10.31vw;
    background: url('../img/sec06_bg_obj.png') left center repeat-x;
    background-size: auto 10.31vw;
    top: 50%;
    -webkit-transform: translate(0, -98%);
    transform: translate(0, -98%);
    animation: scroll_anim02 40s linear infinite;
  }

  .sec06::after {
    height: 10.31vw;
    background: url('../img/sec06_bg_obj.png') left center repeat-x;
    background-size: auto 10.31vw;
    position: absolute;
    bottom: -10vw;
    animation: scroll_anim02 40s linear infinite;
  }

  .sec06_wrap {
    width: 87.5vw;
    border-radius: 8.59vw;
    box-shadow: 1.56vw 1.56vw 1px #000;
    z-index: 2;
  }


  .sec06_wrap::after {
    /* width: 64.06vw;
    height: 44.53vw;
    top: auto;
    bottom: 6.25vw;
    right: -23.43vw;*/
    display: none
  }

  .sec06_container {
    padding: 12.38vw 0;
  }

  .sec06_container::before {
    width: 22.34vw;
    height: 28.91vw;
    top: 13.66vw;
    left: -14.07vw;
    -webkit-transform: rotate(35deg);
    transform: rotate(35deg);
  }

  .sec06_container::after {
    width: 29.06vw;
    height: 20.31vw;
    background: url('../img/sec06_balloon_obj_sp.svg') center center no-repeat;
    background-size: contain;
    top: -4.69vw;
    left: -9.38vw;
  }

  .sec06 .sec06_ttl {
    width: 38.6vw;
    padding-bottom: 0;
  }

  .sec06_ttl span {
    font-size: 3.44vw;
    line-height: 1.45em;
    letter-spacing: .165em;
    padding-top: 3vw;
  }

  .sec06_list_container {
    width: 90%;
    justify-content: space-around;
    flex-wrap: wrap;
  }
  .sec06_list_container li:nth-of-type(1) {
  width: 9rem;
}

  .sec06_list_container .sec06_list_item {
    width: 46%;
    height: 60.39vw;
    padding-bottom: 3.13vw;
  }

  .sec06_list_container .img_container {
    width: 90%;
    height: 43vw;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin: 0 auto;
  }

  .sec06_list_container .txt_container {
    padding-top: 0;
  }

  .sec06_list_container .lineup_txt {
    font-size: 4.06vw;
    line-height: 1.46em;
    letter-spacing: .25em;
    padding-bottom: 1.56vw;
  }

  .sec06_list_container .lineup_txt::before {
    width: 4.06vw;
    height: 4.06vw;
    border-radius: 2.03vw;
    top: 100%;
    right: auto;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }

  .sec06_list_container .lineup_txt::after {
    width: 1.25vw;
    height: 1.25vw;
    top: 100%;
    right: auto;
    left: 50%;
    -webkit-transform: translate(-60%, 1.56vw) rotate(45deg);
    transform: translate(-60%, 1.56vw) rotate(45deg);
  }

  .spacer {
    height: 24.99vw;
  }


  /* sec07 ----------------------------------------*/

  .sec07 {
    padding: 23.44vw 0 12.5vw;
  }

  .sec07 .sec07_ttl {
    width: 67.66vw;
    padding-bottom: 21.88vw;
  }

  .sec07_ttl span {
    font-size: 3.44vw;
    line-height: 1.45em;
    letter-spacing: .165em;
    padding-top: 4.69vw;
  }

  .sec07_ttl::after {
    width: 13.59vw;
    height: 5.16vw;
    bottom: 9.38vw;
  }

  .sec07_list_container {
    width: 87.5vw;
    display: block;
  }

  .sec07_list_container::before {
    width: 22.03vw;
    height: 28.91vw;
    top: -65.25vw;
    right: -13.29vw;
    -webkit-transform: rotate(-35deg);
    transform: rotate(-35deg);
  }

  .sec07_list_container::after {
    width: 30.31vw;
    height: 18.75vw;
    background: url('../img/sec07_balloon_obj_sp.svg') center center no-repeat;
    background-size: contain;
    top: -80.01vw;
    right: -3.13vw;
  }

  .sec07_list_container .sec07_list_item {
    width: 100%;
  }

  .sec07_list_container .sec07_list_item+.sec07_list_item {
    padding-top: 10.94vw;
  }

  .sec07_list_container .sec07_list_item .txt_container {
    padding-top: 2.34vw;
  }

  .sec07_list_container .sec07_list_item .sec07_list_ttl {
    font-size: 4.69vw;
    margin-bottom: 1.56vw;
  }

  .sec07_list_container .sec07_list_item .sec07_list_ttl::before {
    width: 4.69vw;
    height: 4.69vw;
    border-radius: 2.35vw;
    right: 0.78vw;
  }

  .sec07_list_container .sec07_list_item .sec07_list_ttl::after {
    width: 1.25vw;
    height: 1.25vw;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    top: 50%;
    right: 0.78vw;
    -webkit-transform: translate(-2vw, -50%) rotate(45deg);
    transform: translate(-2vw, -50%) rotate(45deg);
  }

  .sec07_list_container .sec07_list_item .sec07_list_txt {
    font-size: 4.06vw;
    line-height: 1.69em;
    letter-spacing: .065em;
  }



  /* floating_btn_container ----------------------------------------*/

  .floating_btn_container {
    width: 25.97vw;
    height: 29.09vw;
    bottom: 3.32vw;
    right: 20vw;
  }


/* sec_type ----------------------------------------*/
.sec_type{
  /* padding: 10.94vw 0 61.31vw; */
  padding: 10.94vw 0 71.31vw;
}
.type_container{
  padding: 12.13vw 12.94vw 9vw 15.19vw;
  width: 89.84vw;
  max-width: none;
  border-radius: 37.03vw 37.03vw 0 0;
  box-shadow: 1.56vw 1.56vw 1px #000;
}
.type_container::after{
  width: 5.47vw;
  height: 15.63vw;
  left: 5%;
  top: 58%;
}
.type_ttl{
  margin: 2.5vw 2vw 0 5vw;
  width: 87.4%;
}
.sec_type .lead_txt{
  margin: 5vw 2vw 0 3.5vw;
  font-size: 4.06vw;
  text-align: left;
  line-height: 1.9;
}
.sec_type .btn_container{
  display: flex;
  margin-top: 5vw;
}
.sec_type .btn_container a {
  width: 100%;
  height: 14.59vw;
}
.sec_type .btn_container a img{
  width: 35.09vw;
}
.type_chara_container{
  position: relative;
  display: flex;
  z-index: 3;
}
.type_chara_img{
  /* top: 17vw; */
  top: 22vw;
  width: 29.81vw;
  /* height: 28.06vw; */
  height: 30.5vw;
}
.type_chara_img.large{
  /* width: 30.66vw;
  height: 36.44vw;
  top: -22vw;
  right: -18vw; */
  animation: mobile_large .4s ease-out forwards;
}

.type_chara_img--i1{ 
  width: 22.3vw;
  margin-left: 1.2vw;
  background-image: url(../img/chara_type_01.png);}
.type_chara_img--i2{ 
  width: 29.375vw;
  margin-left: -2vw;
  background-image: url(../img/chara_type_02.png);}
.type_chara_img--i3{
  width: 27vw;
  background-image: url(../img/chara_type_03.png);}
.type_chara_img--i4{ 
  width: 27.65625vw;
  background-image: url(../img/chara_type_04.png);}
.type_chara_img--i5{ 
  width: 26.5625vw;
  background-image: url(../img/chara_type_05.png); }
.type_chara_img--i6{ 
  width: 24.375vw;
  background-image: url(../img/chara_type_06.png); }
.type_chara_img--i7{ 
  width: 28vw;
  background-image: url(../img/chara_type_07.png); }
.type_chara_img--i8{ 
  width: 23.75vw;
  background-image: url(../img/chara_type_08.png);}

.type_chara_img[data-pos="1"]{
  
}
.type_chara_img[data-pos="2"]{
  left: -34vw;
}
.type_chara_img[data-pos="3"]{
  left: -4vw;
}
.type_chara_img[data-pos="4"]{
  left: 27vw;
}
.type_chara_img[data-pos="5"]{
  /* right: -27vw; */
  left: 57.5vw;
  animation: mobile_right_edge .5s ease-out;
}

.type_chara_img[data-pos="6"]{
  right: -60vw;
}
.type_chara_img[data-pos="7"]{
  right: -93vw;
}
.type_chara_img[data-pos="8"]{
  right: -126vw;
}
.type_chara_img.large.type_chara_img--i1{ animation: mobile_large_01 .5s ease-out forwards; }
.type_chara_img.large.type_chara_img--i2{ animation: mobile_large_02 .5s ease-out forwards; }
.type_chara_img.large.type_chara_img--i3{ animation: mobile_large_03 .5s ease-out forwards; }
.type_chara_img.large.type_chara_img--i4{ animation: mobile_large_04 .5s ease-out forwards; }
.type_chara_img.large.type_chara_img--i5{ animation: mobile_large_05 .5s ease-out forwards; }
.type_chara_img.large.type_chara_img--i6{ animation: mobile_large_06 .5s ease-out forwards; }
.type_chara_img.large.type_chara_img--i7{ animation: mobile_large_07 .5s ease-out forwards; }
.type_chara_img.large.type_chara_img--i8{ animation: mobile_large_08 .5s ease-out forwards; }
@keyframes mobile_large_01{
  0%{
    width: 10.66vw;
    height: 26.44vw;
    top: -22vw;
    right: -12vw;
    transform: rotate(0deg);
  }
  100%{
    width: 30.9375vw;
    height: 42.1875vw;
    top: -25vw;
    right: -22vw;
    transform: rotate(10deg);
  }
}
@keyframes mobile_large_02{
  0%{
    width: 10.66vw;
    height: 26.44vw;
    top: -22vw;
    right: -12vw;
    transform: rotate(0deg);
  }
  100%{
    width: 40.625vw;
    height: 42.1875vw;
    top: -23vw;
    right: -24vw;
    transform: rotate(10deg);
  }
}
@keyframes mobile_large_03{
  0%{
    width: 10.66vw;
    height: 26.44vw;
    top: -22vw;
    right: -12vw;
    transform: rotate(0deg);
  }
  100%{
    width: 37.3vw;
    height: 42.1875vw;
    top: -24vw;
    right: -21vw;
    transform: rotate(10deg);
  }
}
@keyframes mobile_large_04{
  0%{
    width: 10.66vw;
    height: 26.44vw;
    top: -22vw;
    right: -12vw;
    transform: rotate(0deg);
  }
  100%{
    width: 38.28125vw;
    height: 42.1875vw;
    top: -23vw;
    right: -26vw;
    transform: rotate(10deg);
  }
}
@keyframes mobile_large_05{
  0%{
    width: 10.66vw;
    height: 26.44vw;
    top: -22vw;
    right: -12vw;
    transform: rotate(0deg);
  }
  100%{
    width: 36.7vw;
    height: 42.1875vw;
    top: -21vw;
    right: -26vw;
    transform: rotate(10deg);
  }
}
@keyframes mobile_large_06{
  0%{
    width: 10.66vw;
    height: 26.44vw;
    top: -22vw;
    right: -12vw;
    transform: rotate(0deg);
  }
  100%{
    width: 34vw;
    height: 42.1875vw;
    top: -24vw;
    right: -22vw;
    transform: rotate(10deg);
  }
}
@keyframes mobile_large_07{
  0%{
    width: 10.66vw;
    height: 26.44vw;
    top: -22vw;
    right: -12vw;
    transform: rotate(0deg);
  }
  100%{
    width: 38.75vw;
    height: 42.1875vw;
    top: -25vw;
    right: -25vw;
    transform: rotate(10deg);
  }
}
@keyframes mobile_large_08{
  0%{
    width: 10.66vw;
    height: 26.44vw;
    top: -22vw;
    right: -12vw;
    transform: rotate(0deg);
  }
  100%{
    width: 32.8125vw;
    height: 42.1875vw;
    top: -26vw;
    right: -19vw;
    transform: rotate(10deg);
  }
}
@keyframes mobile_left_second{
  0%{
    opacity: 0;
    left: 6.5vw;
  }
  100%{
    opacity: 1;
    left: -1vw;
  }
}
@keyframes mobile_right_edge{
  0%{
    right: auto;
    top: 22vw;
    left: 76.5vw;
  }
  100%{
    right: auto;
    top: 22vw;
    left: 57.5vw;
  }
}
@keyframes mobile_large{
  0%{
    width: 10.66vw;
    height: 26.44vw;
    top: -22vw;
    right: -12vw;
    transform: rotate(0deg);
  }
  100%{
    width: 30.66vw;
    height: 36.44vw;
    top: -20vw;
    right: -22vw;
    transform: rotate(10deg);
  }
}
@keyframes mobile_left_edge {
  0%{
    width: 29.81vw;
    height: 28.06vw;
    top: 22vw;
    left: -65vw;
  }
  100%{
    width: 29.81vw;
    height: 28.06vw;
    top: 22vw;
    left: -34vw;
  }
}

}

@media screen and (min-width:768px) and (max-width:1080px) {


  .sec05_container {
    width: 91.41vw;
    max-width: 1200px;
    margin: 0 auto;
    padding: 230px 14px 80px;
  }

  .sec05 .graph_list_container {
    width: 710px;
    height: 540px;
    background: url(../img/sec05_graph_obj.svg) center center no-repeat;
    background-size: contain;
    position: relative;
    margin: 0 auto;
  }

  .product_obj01 {
    width: 18px;
    transform: translate(-33px, 26px);
  }

  .product_obj02 {
    width: 17px;
    transform: translate(48px, -83px);
  }

  .product_obj03 {
    width: 15px;
    transform: translate(98px, -80px);
  }

  .product_obj04 {
    width: 20px;
    transform: translate(17px, -195px);
  }

  .product_obj05 {
    width: 20px;
    transform: translate(-213px, 67px);
  }

  .product_obj06 {
    width: 22px;
    transform: translate(-62px, -177px);
  }

  .product_obj07 {
    width: 20px;
    transform: translate(-178px, 15px);
  }

  .product_obj08 {
    width: 18px;
    transform: translate(-134px, 88px);
  }

  .product_obj09 {
    width: 17px;
    transform: translate(-177px, 64px);
  }

  .product_obj10 {
    width: 18px;
    transform: translate(157px, -85px);
  }

  .product_obj11 {
    width: 18px;
    transform: translate(-56px, 27px);
  }

  .product_obj12 {
    width: 16px;
    transform: translate(133px, -86px);
  }

  .product_obj13 {
    width: 19px;
    transform: translate(220px, -200px);
  }

  .product_obj14 {
    width: 20px;
    transform: translate(186px, -82px);
  }

  .product_obj15 {
    width: 20px;
    transform: translate(260px, -218px);
  }

  .product_obj16 {
    width: 20px;
    transform: translate(174px, -27px);
  }

  .product_obj17 {
    width: 17px;
    transform: translate(32px, -143px);
  }

  .product_obj18 {
    width: 22px;
    transform: translate(109px, -128px);
  }

  .product_obj19 {
    width: 19px;
    transform: translate(72px, -77px);
  }

  .product_obj20 {
    width: 17px;
    transform: translate(-90px, 10px);
  }

  .product_obj21 {
    width: 17px;
    transform: translate(-108px, 62px);
  }

  .product_obj22 {
    width: 21px;
    transform: translate(-196px, 124px);
  }

  .product_obj23 {
    width: 22px;
    transform: translate(-149px, -162px);
  }

  .product_obj24 {
    width: 24px;
    transform: translate(-286px, 164px);
  }

  .product_obj25 {
    width: 17px;
    transform: translate(206px, -158px);
  }

  .product_obj26 {
    width: 19px;
    transform: translate(4.2px, -109px);
  }

  .product_obj27 {
    width: 19px;
    transform: translate(26px, -83px);
  }

  .product_obj28 {
    width: 19px;
    transform: translate(54px, -16px);
  }

  .product_obj29 {
    width: 19px;
    transform: translate(288px, -230px);
  }

  .product_obj30 {
    width: 19px;
    transform: translate(309px, -196px);
  }

  .product_obj31 {
    width: 24px;
    transform: translate(-252px, 198px);
  }

  .sec02 .sec02_container::before {
    left: -216px;
  }

  .sec02 .lead_txt::after {
    top: -246px;
  }

  .sec02 .lead_txt::before {
    top: -142px;
  }

  .sec06_wrap {
    width: 91.41vw;
    max-width: 1200px;
    margin: 0 auto;
    padding: 80px 14px;
  }

  .sec06_list_container {
    width: 88.41vw;
    display: flex;
    flex-wrap: wrap;
  }

  .sec06_list_container li {
    flex: 0 0 16%
  }

  .sec05_container::before {
    width: 80px;
    height: 142px;
    top: 45px;
    right: 98px;
  }

  .sec06_list_container {
    width: 85.41vw;

  }

  .sec06_container::after {
    top: -40px;
    left: 14px;
  }

  .sec06_container::before {
    top: 12px;
    left: 94px;
  }

  .sec06_list_container .lineup_txt {
    font-size: 12px;
  }

  .sec06_list_container .lineup_txt::before {
    right: -1.4em;
  }

  .sec06_list_container .lineup_txt::after {
    right: calc(-1.4em + 4px);
  }

  .sec04 .tab_trigger {
    width: 220px;
  }

  .sec05::before{
    left: 67%;
  }
}@media screen and (min-width:1080px) and (max-width:1260px) {
    .sec05_container{
      width: 91.41vw;
      max-width: 1200px;
    }

    .sec05 .graph_list_container {
      width: 100%;
      height: unset;
      padding-bottom: 76.55%;
    }

    .sec06_wrap{
      width: 91.41vw;
      max-width: 1200px;
    }

}@media screen and (min-width:1940px) {
  .sec04::after{
    right: 40%;
    width: 23%;
  }

}@media screen and (min-width:2200px) {
  .sec04::after{
    right: 37%;
    width: 23%;
  }

}