@charset "UTF-8";
.pc_disp {
  display: none !important;
}
@media screen and (min-width: 768px) {
  .pc_disp {
    display: block !important;
  }
}

.sp_disp {
  display: block !important;
}
@media screen and (min-width: 768px) {
  .sp_disp {
    display: none !important;
  }
}

.DrawViewOverlay {
  pointer-events: auto;
}

nav#DrawerArea.OpenDraw {
  pointer-events: auto;
}

.DrawMenuBtn {
  pointer-events: auto;
}

a {
  pointer-events: auto;
}

@media only screen and (min-width: 768px) {
  header.Header_Area .Header_Inner .SiteToggleBtn01 a {
    min-width: auto;
  }
  header.Header_Area .Header_Inner {
    min-width: min(84.1666666667vw, 1010px);
    padding: 0 min(2.3333333333vw, 28px);
    box-sizing: border-box;
  }
  header.Header_Area h1 {
    min-width: min(18.5vw, 222px);
  }
  header.Header_Area h1 img {
    width: min(14.3333333333vw, 172px);
  }
  header.Header_Area .Header_Inner,
  header ul.UserMyMenu li a,
  nav {
    font-size: min(1.1666666667vw, 12px) !important;
  }
  nav.ContentNavi01 {
    min-width: min(80vw, 960px) !important;
  }
  nav.ContentNavi01 > ul li a {
    font-size: min(1.4166666667vw, 14px) !important;
    padding: 0 min(0.8333333333vw, 10px) 0 min(0.8333333333vw, 10.5px) !important;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  header.Header_Area .Header_Inner .SiteToggleBtn01 a {
    min-width: auto;
  }
  nav.ContentNavi01 {
    overflow: hidden;
  }
}
footer,
footer .FootWrap {
  min-width: min(91.6666666667vw, 960px) !important;
}

footer .KeirinLink01,
footer .NkFooterArea dl.FootSiteTitle,
footer .PCfooter .BtnPagetop {
  width: min(91.6666666667vw, 960px);
}

footer dl.NkFoot01 {
  padding: 0 min(2.5vw, 30px);
}

footer dl.NkFootCateLink {
  padding: 0 min(1vw, 12px) 0 0;
}

footer dl.NkFoot01:last-child {
  padding: 0 0 0 min(2.5vw, 30px);
}

footer dl.NkFoot02 {
  padding: min(0.5vw, 6px) min(1.8333333333vw, 22px);
}

footer dl.NkFoot02:first-child {
  padding: 0 min(1.8333333333vw, 22px) 0 0;
}

footer .NkFoot01 .Nk_Sns {
  width: min(22.5vw, 270px);
}

dl.NkFoot01 dd.SpNkInfoImg .SearchImg01 {
  width: min(16.6666666667vw, 200px);
}

dl.NkFoot01 dd.SpNkInfoImg .QrImg01 {
  width: min(5vw, 60px);
}

dl.NkFoot01 ul.AprStoreList img {
  width: min(11.5833333333vw, 140px);
}

.PCfooter .Nk_Sns ul li {
  width: min(3.75vw, 45px);
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  footer dl.NkFoot01:last-child {
    width: 15.8333333333vw;
  }
  footer dl.NkFoot01 dd.SpNkInfoImg img.QrImg01 {
    top: -9px;
  }
  footer dl.NkFoot01 dd ul li {
    font-size: min(1.25vw, 14px);
  }
  footer dl.NkFoot02 dd ul li {
    font-size: min(1.25vw, 14px);
  }
  dl.NkFoot02 dt {
    font-size: min(1.25vw, 14px);
  }
}
#PageTop {
  background: #E8E5E4;
}

footer {
  position: relative;
  z-index: 2;
  background-color: transparent;
}

header.Header_Area {
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  header.Header_Area {
    z-index: inherit;
  }
}

nav.ContentNavi01 {
  position: relative;
  z-index: 2;
}

html {
  scroll-behavior: smooth;
}

body {
  line-height: 1;
}

.MainColumn {
  position: relative;
  margin: 0px auto 0px;
  text-align: left;
  font-weight: 300;
  overflow: hidden;
}
.MainColumn::before {
  content: "";
  display: block;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: url("../img/main_bg_pc.png") no-repeat;
  background-size: cover;
  height: 100vh;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .MainColumn::before {
    background: url("../img/main_bg_sp.png") no-repeat;
    background-size: cover;
    background-position: bottom;
    height: 110vh;
  }
}

img {
  max-width: 100%;
  height: auto;
}

a {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

strong {
  font-weight: bold;
}

.Arrow01 {
  position: absolute;
  right: 6%;
  top: 50%;
  transform: translateY(-50%);
  width: 13px;
  height: 14px;
  -webkit-mask: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214.448%22%20height%3D%2213.696%22%20viewBox%3D%220%200%2014.448%2013.696%22%3E%3Cpath%20d%3D%22M0%2C7.223%2C13.7%2C0%2C10.629%2C7.223%2C13.7%2C14.448Z%22%20transform%3D%22translate%280%2013.696%29%20rotate%28-90%29%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
  mask: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214.448%22%20height%3D%2213.696%22%20viewBox%3D%220%200%2014.448%2013.696%22%3E%3Cpath%20d%3D%22M0%2C7.223%2C13.7%2C0%2C10.629%2C7.223%2C13.7%2C14.448Z%22%20transform%3D%22translate%280%2013.696%29%20rotate%28-90%29%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #FFF;
}

.Arrow02 {
  position: absolute;
  right: 4%;
  top: 50%;
  transform: translateY(-50%);
  margin-top: -10px;
  width: 18px;
  height: 18px;
  -webkit-mask: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214.448%22%20height%3D%2213.696%22%20viewBox%3D%220%200%2014.448%2013.696%22%3E%3Cpath%20d%3D%22M0%2C7.223%2C13.7%2C0%2C10.629%2C7.223%2C13.7%2C14.448Z%22%20transform%3D%22translate%280%2013.696%29%20rotate%28-90%29%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
  mask: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214.448%22%20height%3D%2213.696%22%20viewBox%3D%220%200%2014.448%2013.696%22%3E%3Cpath%20d%3D%22M0%2C7.223%2C13.7%2C0%2C10.629%2C7.223%2C13.7%2C14.448Z%22%20transform%3D%22translate%280%2013.696%29%20rotate%28-90%29%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #FFF;
  transform: rotate(-90deg);
  transition: 0.3s;
}
.Icon_X {
  margin-right: 10px;
  display: inline-block;
  width: min(2.25vw, 27px);
  height: min(2.25vw, 27px);
  -webkit-mask: url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Csvg%20width%3D%22300%22%20height%3D%22271%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%0A%20%3Cpath%20d%3D%22m236%200h46l-101%20115%20118%20156h-92.6l-72.5-94.8-83%2094.8h-46l107-123-113-148h94.9l65.5%2086.6zm-16.1%20244h25.5l-165-218h-27.4z%22%2F%3E%0D%0A%3C%2Fsvg%3E);
  mask: url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Csvg%20width%3D%22300%22%20height%3D%22271%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%0A%20%3Cpath%20d%3D%22m236%200h46l-101%20115%20118%20156h-92.6l-72.5-94.8-83%2094.8h-46l107-123-113-148h94.9l65.5%2086.6zm-16.1%20244h25.5l-165-218h-27.4z%22%2F%3E%0D%0A%3C%2Fsvg%3E);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #FFF;
  transition: 0.3s;
  position: relative;
  top: min(0.4166666667vw, 5px);
}
@media screen and (max-width: 767px) {
  .Icon_X {
    width: 4.8vw;
    height: 4.8vw;
    top: 3px;
  }
}

.Icon_Blank {
  -webkit-mask: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220.203%22%20height%3D%2220.203%22%20viewBox%3D%220%200%2020.203%2020.203%22%3E%3Cpath%20d%3D%22M0%2C153.691v17.241H17.241V164.39H14.816v4.118H2.425V156.116H6.889v-2.425Z%22%20transform%3D%22translate%280%20-150.729%29%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M407%2C0V2.429h4.062l-8.3%2C8.3%2C1.715%2C1.714%2C8.3-8.3V8.206H415.2V0Z%22%20transform%3D%22translate%28-394.997%20-0.005%29%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
  mask: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220.203%22%20height%3D%2220.203%22%20viewBox%3D%220%200%2020.203%2020.203%22%3E%3Cpath%20d%3D%22M0%2C153.691v17.241H17.241V164.39H14.816v4.118H2.425V156.116H6.889v-2.425Z%22%20transform%3D%22translate%280%20-150.729%29%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M407%2C0V2.429h4.062l-8.3%2C8.3%2C1.715%2C1.714%2C8.3-8.3V8.206H415.2V0Z%22%20transform%3D%22translate%28-394.997%20-0.005%29%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}

.main_head {
  position: relative;
  padding-left: 20px;
  margin-bottom: 30px;
  font-size: min(2.75vw, 33px);
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .main_head {
    margin-bottom: 15px;
    font-size: 18px;
    font-size: 4.8vw;
  }
}
.main_head::before {
  display: inline-block;
  background: #fff;
  content: "";
  width: 10px;
  height: 33px;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .main_head::before {
    width: 5px;
    height: 4.8vw;
  }
}

.main_btn_inner {
  width: min(33.1666666667vw, 398px);
  position: relative;
  z-index: 1;
  background: #000;
}
@media screen and (max-width: 767px) {
  .main_btn_inner {
    width: 84vw;
  }
}
@media screen and (max-width: 767px) {
  .main_btn_inner.share .main_btn {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
.main_btn_inner.new::after {
  background: url("../img/icon_new.png") no-repeat;
  content: "";
  display: block;
  width: min(5.1666666667vw, 62px);
  height: min(5.25vw, 63px);
  position: absolute;
  background-size: contain;
  top: -10%;
  left: -3%;
}
@media screen and (max-width: 767px) {
  .main_btn_inner.new::after {
    width: 14.6666666667vw;
    height: 14.6666666667vw;
  }
}

.main_btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  width: 100%;
  height: min(8.0833333333vw, 97px);
  line-height: 1.5;
  text-align: center;
  text-transform: uppercase;
  border: 2px solid #fff;
  transition: 0.5s ease-in-out;
  font-size: min(2.3333333333vw, 28px);
  font-weight: bold;
  color: #fff;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .main_btn {
    height: 18.6666666667vw;
    font-size: 16px;
    font-size: 4.2666666667vw;
  }
}

.main_btn:before,
.main_btn:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  transition: 0.5s ease-in-out;
}

.main_btn:before {
  right: max(-4.1666666667vw, -50px);
  border-bottom: min(8.3333333333vw, 100px) solid #fff;
  border-left: min(8.3333333333vw, 100px) solid transparent;
  transform: translateX(77%);
}
@media screen and (max-width: 767px) {
  .main_btn:before {
    transform: translateX(79%);
    right: -13.3333333333vw;
    border-bottom: 16vw solid #fff;
    border-left: 14.6666666667vw solid transparent;
  }
}

.main_btn:after {
  left: max(-4.1666666667vw, -50px);
  border-top: min(8.3333333333vw, 100px) solid #fff;
  border-right: min(8.3333333333vw, 100px) solid transparent;
  transform: translateX(-77%);
}
@media screen and (max-width: 767px) {
  .main_btn:after {
    transform: translateX(-79%);
    left: -13.3333333333vw;
    border-top: 16vw solid #fff;
    border-right: 14.6666666667vw solid transparent;
  }
}

@media screen and (min-width: 1000px) {
  .main_btn:hover {
    color: #000;
  }
  .main_btn:hover:before {
    transform: translateX(-10%);
  }
  .main_btn:hover:after {
    transform: translateX(10%);
  }
  .entry_btn .main_btn:hover {
    color: #B33224;
  }
  .entry_btn .main_btn:hover .Arrow02 {
    background-color: #B33224;
  }
  .share .main_btn:hover .Icon_X {
    background-color: #000;
  }
  .goods_inner .main_btn:hover .Arrow02 {
    background-color: #000;
  }
  .about .main_btn:hover {
    color: #fff;
  }
}
.menu {
  position: relative;
  max-width: 1070px;
  margin: -10px auto 0;
}
@media screen and (max-width: 767px) {
  .menu {
    margin: 0 0 0 9.3333333333vw;
  }
}
.menu_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .menu_inner {
    gap: 13px 0;
  }
}
.menu_title {
  display: block;
  margin: 0 auto -5px;
  width: min(48.1666666667vw, 578px);
}
@media screen and (max-width: 767px) {
  .menu_title {
    position: absolute;
    left: -37.0666666667vw;
    top: 25%;
    transform: rotate(90deg);
    width: 64vw;
  }
}
.menu .main_btn_inner {
  width: min(28vw, 336px);
}
@media screen and (max-width: 767px) {
  .menu .main_btn_inner {
    width: 78.6666666667vw;
  }
}
.menu .main_btn {
  height: min(7.1666666667vw, 86px);
  font-size: min(1.5vw, 18px);
  border: solid 2px #F29201;
}
@media screen and (max-width: 767px) {
  .menu .main_btn {
    height: 18.6666666667vw;
    font-size: 15px;
    font-size: 4vw;
  }
}
.menu .main_btn:before {
  border-bottom: 82px solid #F29201;
}
@media screen and (max-width: 767px) {
  .menu .main_btn:before {
    border-bottom: 16vw solid #F29201;
  }
}
.menu .main_btn:after {
  border-top: 82px solid #F29201;
}
@media screen and (max-width: 767px) {
  .menu .main_btn:after {
    border-top: 16vw solid #F29201;
  }
}
.menu .menu_close {
  width: min(28vw, 336px);
}
@media screen and (max-width: 767px) {
  .menu .menu_close {
    width: 78.6666666667vw;
  }
}
@media screen and (min-width: 1000px) {
  .menu .main_btn:hover {
    color: #fff;
  }
}

.fv {
  padding: min(2.6666666667vw, 32px) 0 0;
  position: relative;
  background: url("../img/fv_bg_pc.png") no-repeat;
  background-size: cover;
  background-position: bottom;
  min-height: min(58.3333333333vw, 900px);
}
@media screen and (max-width: 767px) {
  .fv {
    padding: 0;
    min-height: auto;
    background: none;
  }
}
.fv_title {
  position: absolute;
  top: 43%;
  left: 50%;
  transform: translateX(-50%);
  width: min(91.6666666667vw, 1550px);
  opacity: 0;
  animation: popInZoom 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) 0.3s forwards;
}
@media screen and (max-width: 767px) {
  .fv_title {
    top: auto;
    bottom: 12%;
    width: 78.9333333333vw;
  }
}
.fv_img {
  display: block;
  margin: 0 auto;
  width: min(130vw, 1760px);
}
@media screen and (max-width: 767px) {
  .fv_img {
    width: 100%;
  }
}
.fv_link {
  background-image: linear-gradient(to right, #F29201 0%, #E62318 100%);
  width: min(50vw, 600px);
  height: 50px;
  line-height: 50px;
  border-radius: 2em;
  font-size: min(1.9166666667vw, 23px);
  color: #fff;
  text-align: center;
  position: absolute;
  bottom: 0%;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .fv_link {
    bottom: 6%;
    width: 89.3333333333vw;
    height: 8.5333333333vw;
    line-height: 8.5333333333vw;
    font-size: 15px;
    font-size: 4vw;
  }
}
@media screen and (min-width: 1000px) {
  .fv_link:hover {
    animation: none;
    animation: pyon 0.6s ease-out forwards;
  }
}
.fv_link .span01 {
  font-size: min(1.6666666667vw, 20px);
}
@media screen and (max-width: 767px) {
  .fv_link .span01 {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
}
.fv_link .span02 {
  margin-right: 13px;
  font-size: min(1.4166666667vw, 17px);
}
@media screen and (max-width: 767px) {
  .fv_link .span02 {
    margin-right: 2.1333333333vw;
    font-size: 10px;
    font-size: 2.6666666667vw;
  }
}
.fv_link .Arrow01 {
  width: 16px;
  height: 16px;
}
@media screen and (max-width: 767px) {
  .fv_link .Arrow01 {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }
}

.main_btn_inner.new::after {
  opacity: 0;
}
.main_btn_inner.new.fadein::after {
  animation-name: boundanime;
  animation-duration: 0.8s;
  animation-delay: 0.3s;
  animation-timing-function: ease-out;
  animation-fill-mode: both;
  opacity: 1;
}

.menu_inner .main_btn_inner.new:nth-of-type(2).fadein::after {
  animation-delay: 0.6s;
}
.menu_inner .main_btn_inner.new:nth-of-type(3).fadein::after {
  animation-delay: 0.8s;
}
.menu_inner .main_btn_inner.new:nth-of-type(4).fadein::after {
  animation-delay: 1s;
}
.menu_inner .main_btn_inner.new:nth-of-type(5).fadein::after {
  animation-delay: 1.2s;
}

@keyframes popInZoom {
  0% {
    transform: translateX(-50%) scale(0.7) translateY(30px) rotateZ(-2deg);
    opacity: 0;
  }
  60% {
    transform: translateX(-50%) scale(1.1) translateY(-5px) rotateZ(0.5deg);
    opacity: 1;
  }
  100% {
    transform: translateX(-50%) scale(1) translateY(0) rotateZ(0deg);
    opacity: 1;
  }
}
@keyframes pyon {
  0% {
    transform: translateX(-50%) translateY(0);
  }
  20% {
    transform: translateX(-50%) translateY(-10px);
  }
  40% {
    transform: translateX(-50%) translateY(0px);
  }
  60% {
    transform: translateX(-50%) translateY(-5px);
  }
  80% {
    transform: translateX(-50%) translateY(0px);
  }
  100% {
    transform: translateX(-50%) translateY(0px);
  }
}
@keyframes boundanime {
  0% {
    transform: scale(0);
  }
  20% {
    transform: scale(1.3);
  }
  40% {
    transform: scale(0.95);
  }
  60% {
    transform: scale(1);
  }
}
.bg01 {
  padding: min(12.9166666667vw, 155px) 0 205px;
  background-color: #000;
}
@media screen and (max-width: 767px) {
  .bg01 {
    padding: 0 0 29.3333333333vw;
  }
}

.movie {
  margin-bottom: 130px;
  display: flex;
  align-items: center;
  justify-content: end;
  gap: 0 min(4.1666666667vw, 50px);
}
@media screen and (max-width: 767px) {
  .movie {
    margin-bottom: 50px;
    justify-content: center;
    flex-wrap: wrap;
    gap: 17.0666666667vw 0;
  }
}
.movie_title {
  display: block;
  margin: 0 auto 30px;
  width: min(41.8333333333vw, 502px);
}
@media screen and (max-width: 767px) {
  .movie_title {
    margin: 0 auto 6px;
    width: 62.4vw;
  }
}
.movie_text {
  padding-left: 10px;
}
@media screen and (max-width: 767px) {
  .movie_text {
    padding-left: 0;
  }
}
.movie_text > p {
  text-align: center;
  font-size: min(2.3333333333vw, 28px);
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .movie_text > p {
    font-size: 18px;
    font-size: 4.8vw;
  }
}
.movie_text .movie_text01 {
  margin-bottom: 30px;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .movie_text .movie_text01 {
    margin-bottom: 13px;
  }
}
.movie_text .movie_text02 {
  color: #F29201;
}
.movie_wrap {
  position: relative;
  width: min(91.6666666667vw, 1100px);
}
@media screen and (max-width: 767px) {
  .movie_wrap {
    width: 100%;
  }
}
.movie_wrap img {
  width: 100%;
  cursor: pointer;
}
.movie_wrap::after {
  background: url("../img/g1_logo.png") no-repeat;
  content: "";
  display: block;
  width: min(12.34375vw, 237px);
  height: min(7.65625vw, 147px);
  position: absolute;
  background-size: contain;
  top: max(-4.0104166667vw, -77px);
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .movie_wrap::after {
    width: 26.6666666667vw;
    height: 16.5333333333vw;
    top: -36px;
  }
}

.yoso {
  position: relative;
  z-index: 1;
  background: #B33224;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .yoso {
    padding: 10px 0 13.3333333333vw;
  }
}
.yoso::before {
  background: url("../img/yoso_bg01_pc.png") no-repeat;
  content: "";
  display: block;
  width: 100%;
  height: 205px;
  position: absolute;
  background-size: cover;
  background-position: center bottom;
  top: -205px;
  left: 0%;
}
@media screen and (max-width: 767px) {
  .yoso::before {
    background: url("../img/yoso_bg01_sp.png") no-repeat;
    background-size: cover;
    background-position: center;
    height: 16vw;
    top: -16vw;
  }
}
.yoso::after {
  background: url("../img/yoso_bg02_pc.png") no-repeat;
  content: "";
  display: block;
  width: 100%;
  height: 205px;
  position: absolute;
  background-size: cover;
  background-position: center bottom;
  bottom: -205px;
  left: 0%;
}
@media screen and (max-width: 767px) {
  .yoso::after {
    background: url("../img/yoso_bg02_sp.png") no-repeat;
    background-size: cover;
    background-position: center;
    height: 16vw;
    bottom: -16vw;
  }
}
.yoso_inner {
  position: relative;
  width: min(90.8333333333vw, 1090px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .yoso_inner {
    position: initial;
    width: auto;
  }
}
.yoso_title {
  position: relative;
  z-index: 1;
  margin-bottom: 10px;
  width: min(51.6666666667vw, 620px);
}
@media screen and (max-width: 767px) {
  .yoso_title {
    margin-bottom: 5px;
    width: 72vw;
  }
}
.yoso_text {
  position: relative;
  z-index: 1;
  font-size: min(1.9166666667vw, 23px);
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .yoso_text {
    margin: 0 5.3333333333vw;
    font-size: 15px;
    font-size: 4vw;
  }
}
.yoso .yoso_text + .yoso_text {
  margin-top: 23px;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .yoso .yoso_text + .yoso_text {
    margin-top: 15px;
    margin-bottom: 7.2vw;
  }
}
.yoso_img {
  width: min(66.6666666667vw, 819px);
  position: absolute;
  right: -15%;
  top: -90px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .yoso_img {
    top: -70px;
    right: -8px;
    width: 40vw;
  }
}
@media screen and (max-width: 767px) {
  .yoso .main_head {
    margin-right: 5.3333333333vw;
    margin-left: 5.3333333333vw;
  }
}
.yoso_movie_inner {
  margin-bottom: 50px;
  position: relative;
  z-index: 1;
  width: min(58.3333333333vw, 700px);
}
@media screen and (max-width: 767px) {
  .yoso_movie_inner {
    width: auto;
    margin: 0 calc(50% - 50vw) 28px;
  }
}
.yoso_movie_inner .movie_thumb {
  cursor: pointer;
}
.yoso .archive_movie_inner {
  width: min(13.3854166667vw, 257px);
}
@media screen and (max-width: 767px) {
  .yoso .archive_movie_inner {
    width: 42.6666666667vw;
  }
}
.yoso_archive {
  display: flex;
  gap: 0 20px;
}
@media screen and (max-width: 767px) {
  .yoso_archive {
    flex-wrap: wrap;
    gap: 4vw 5.3333333333vw;
    margin: 0 auto;
    max-width: 90.6666666667vw;
  }
}
.yoso_archive li p {
  margin-bottom: 10px;
  color: #fff;
  font-size: min(1.9166666667vw, 23px);
}
@media screen and (max-width: 767px) {
  .yoso_archive li p {
    font-size: 15px;
    font-size: 4vw;
  }
}
.yoso_archive li img {
  display: block;
  width: min(21.4166666667vw, 257px);
  background: #959595;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .yoso_archive li img {
    width: 42.6666666667vw;
  }
}

.match {
  padding: 250px 0 304px;
}
@media screen and (max-width: 767px) {
  .match {
    padding: 22.9333333333vw 0 43.2vw;
  }
}
.match_title {
  display: block;
  margin: 0 auto 52px;
  width: min(66.6666666667vw, 800px);
}
@media screen and (max-width: 767px) {
  .match_title {
    margin-bottom: 4.8vw;
    width: 89.3333333333vw;
  }
}
.match_img {
  display: block;
  margin: 0 auto 30px;
  width: min(90.8333333333vw, 1090px);
}
@media screen and (max-width: 767px) {
  .match_img {
    width: 93.3333333333vw;
  }
}
.match_table_inner {
  max-width: min(92.5833333333vw, 1111px);
  margin: 0 auto;
  overflow-x: auto;
}
@media only screen and (max-width: 1200px) {
  .match_table_inner {
    -webkit-overflow-scrolling: touch;
    direction: rtl;
  }
}
@media screen and (max-width: 767px) {
  .match_table_inner {
    max-width: 92vw;
  }
}
.match_arrow {
  position: absolute;
  left: 5%;
  bottom: 11%;
  display: none;
}
@media screen and (max-width: 767px) {
  .match_arrow {
    left: 6%;
  }
}
.match_arrow img {
  display: inline-block;
  width: 16px;
  animation: move 1.3s infinite;
}
@media screen and (max-width: 767px) {
  .match_arrow img {
    width: 2.6666666667vw;
  }
}
@media screen and (max-width: 767px) {
  .match_arrow img + img {
    margin-left: -3px;
  }
}
@media only screen and (max-width: 1200px) {
  .match_arrow {
    display: block;
  }
}

.match_table_inner {
  scrollbar-width: none; /* Firefox用 */
  -ms-overflow-style: none; /* IE/Edge旧版用 */
}

.match_table_inner:-webkit-scrollbar {
  display: none; /* Chrome, Safari, iOSなどWebKit系 */
}

.match_arrow img:nth-child(2) {
  animation-delay: 0.15s;
}

.match_arrow img:nth-child(3) {
  animation-delay: 0.3s;
}

@keyframes move {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translateX(-10px);
  }
}
.match_table_head {
  position: relative;
}
.match_table_head .head_img {
  display: block;
  margin: 30px auto 15px;
  height: 63px;
}
@media screen and (max-width: 767px) {
  .match_table_head .head_img {
    margin: 30px auto 5px;
    height: 9.8666666667vw;
  }
}

.match_table {
  border-collapse: collapse;
  border-spacing: 0;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 1200px) {
  .match_table {
    direction: ltr;
  }
}
@media screen and (max-width: 767px) {
  .match_table {
    font-size: 11px;
    font-size: 2.9333333333vw;
  }
}
.match_table td {
  border: 1px solid #000;
  vertical-align: middle;
}
.match_table td:nth-child(odd) {
  background: #fff;
}
.match_table td:nth-child(even) {
  background: #F8EFEE;
}
.match_table .num td {
  background: #000;
  padding: 10px 0px;
  color: #FFF;
  border-right: 1px solid #999;
  border-left: 1px solid #999;
  border-top: 1px solid #999;
  font-size: 23px;
}
@media screen and (max-width: 767px) {
  .match_table .num td {
    padding: 5px 0px;
    font-size: 15px;
    font-size: 4vw;
  }
}
.match_table .name {
  font-size: 23px;
}
@media screen and (max-width: 767px) {
  .match_table .name {
    font-size: 15px;
    font-size: 4vw;
  }
}
.match_table .name td.two_rows a {
  padding: 20px 32px;
}
@media screen and (max-width: 767px) {
  .match_table .name td.two_rows a {
    padding: 10px 3.4666666667vw;
  }
}
.match_table .name td.two_rows a .Icon_Blank {
  position: relative;
  left: 10px;
}
@media screen and (max-width: 767px) {
  .match_table .name td.two_rows a .Icon_Blank {
    left: 2.1333333333vw;
  }
}
.match_table .name td.font_en a {
  letter-spacing: -0.2rem;
}
@media screen and (max-width: 767px) {
  .match_table .name td.font_en a {
    letter-spacing: normal;
  }
}
.match_table .name td a {
  display: block;
  position: relative;
  padding: 20px 45px;
  width: 110px;
  height: 320px;
  box-sizing: border-box;
  color: #B33224;
  transition: 0.3s;
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  text-orientation: upright;
  text-align: start;
}
@media screen and (max-width: 767px) {
  .match_table .name td a {
    padding: 10px 5.3333333333vw;
    width: 14.6666666667vw;
    height: 56.8vw;
  }
}
.match_table .name td a .Icon_Blank {
  display: inline-block;
  margin-top: 15px;
  width: 24px;
  height: 24px;
  background-color: #B33224;
}
@media screen and (max-width: 767px) {
  .match_table .name td a .Icon_Blank {
    width: 4vw;
    height: 4vw;
  }
}
.match_table .name td a .span01 {
  writing-mode: initial;
}
.match_table .name td a .span02 {
  display: inline-block;
  transform: rotate(90deg);
  position: relative;
  right: -10px;
  letter-spacing: -0.9rem;
}
@media screen and (max-width: 767px) {
  .match_table .name td a .span02 {
    letter-spacing: -0.4rem;
    right: -5px;
    top: -1px;
  }
}
.match_table .name td a .span03 {
  top: -3px;
}
@media screen and (max-width: 767px) {
  .match_table .name td a .span03 {
    top: -1px;
  }
}
.match_table .name td a .rotate {
  display: inline-block;
  transform: rotate(90deg);
}
@media screen and (min-width: 1000px) {
  .match_table .name td a:hover {
    opacity: 0.7;
  }
}
.match_table .img td img {
  display: block;
  margin-bottom: 0px;
  width: 110px;
  height: 130px;
}
@media screen and (max-width: 767px) {
  .match_table .img td img {
    width: 14.6666666667vw;
    height: 21.3333333333vw;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.match_table .data td {
  padding: 10px 0px;
  line-height: 1.32;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .match_table .data td {
    padding: 4px 0;
    font-size: 11px;
    font-size: 2.9333333333vw;
  }
}
.match_table .height td {
  padding: 10px 0px;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .match_table .height td {
    padding: 8px 0;
    font-size: 11px;
    font-size: 2.9333333333vw;
  }
}
.match_table .syozoku td {
  border: 1px solid #999;
}
.match_table .syozoku td img {
  display: block;
  margin-bottom: 0px;
  width: 110px;
  height: 110px;
}
@media screen and (max-width: 767px) {
  .match_table .syozoku td img {
    width: 14.6666666667vw;
    height: auto;
  }
}

.entry_data {
  display: block;
  width: min(43.0833333333vw, 517px);
  margin: 51px auto 10px;
}
@media screen and (max-width: 767px) {
  .entry_data {
    margin: 8vw auto 10px;
    width: 94.6666666667vw;
  }
}
.entry_btn_inner {
  max-width: 847px;
  margin: 0 auto 53px;
  display: flex;
  justify-content: center;
  gap: 0 50px;
}
@media screen and (max-width: 767px) {
  .entry_btn_inner {
    flex-wrap: wrap;
    gap: 30px 0;
  }
}
.entry_btn_inner .top {
  display: block;
  margin-bottom: 3px;
  font-size: min(1.6666666667vw, 20px);
}
@media screen and (max-width: 767px) {
  .entry_btn_inner .top {
    margin-bottom: 5px;
    font-size: 15px;
    font-size: 4vw;
  }
}
.entry_btn_inner .main_btn_inner.entry_btn {
  background: #B33224;
}
@media screen and (max-width: 767px) {
  .entry_btn_inner .main_btn_inner.entry_btn .main_btn {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}

.column_bnr {
  display: block;
  margin: 0 auto 0;
  width: min(90.8333333333vw, 1090px);
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .column_bnr {
    width: 100%;
  }
}
@media screen and (min-width: 1000px) {
  .column_bnr:hover {
    opacity: 0.7;
  }
}

.goods {
  position: relative;
  z-index: 1;
  background-image: linear-gradient(to bottom, #B33224 0%, #000 100%);
  color: #fff;
}
.goods::before {
  background: url("../img/goods_bg_pc.png") no-repeat;
  content: "";
  display: block;
  width: 100%;
  height: 923px;
  position: absolute;
  background-size: cover;
  top: -300px;
  left: 0%;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .goods::before {
    background: url("../img/goods_bg_sp.png") no-repeat;
    background-size: contain;
    top: -115px;
    height: 93.3333333333vw;
  }
}
.goods_inner {
  position: relative;
  max-width: min(90.8333333333vw, 1090px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .goods_inner {
    position: initial;
    max-width: inherit;
    margin: 0 10px 22.4vw;
  }
}
.goods_inner .main_btn_inner {
  margin: 0 auto 46px;
}
@media screen and (max-width: 767px) {
  .goods_inner .main_btn {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
.goods_title {
  margin-bottom: 25px;
  width: min(51.6666666667vw, 620px);
}
@media screen and (max-width: 767px) {
  .goods_title {
    width: 94.1333333333vw;
    margin: 0 auto 28px;
  }
}
.goods_img01 {
  margin-bottom: 32px;
  width: min(55.75vw, 669px);
  position: relative;
  right: min(4.1666666667vw, 87px);
}
@media screen and (max-width: 767px) {
  .goods_img01 {
    right: 2.1333333333vw;
    width: 64.5333333333vw;
    z-index: 2;
  }
}
.goods_img02 {
  width: min(64.5833333333vw, 775px);
  position: absolute;
  right: -15%;
  top: -17px;
}
@media screen and (max-width: 767px) {
  .goods_img02 {
    width: 55.4666666667vw;
    right: 0px;
    top: 7%;
  }
}
.goods_item {
  display: block;
  width: 100%;
  margin: 0 auto 50px;
}
@media screen and (max-width: 767px) {
  .goods_item {
    width: 89.3333333333vw;
    margin-bottom: 8vw;
  }
}
.goods_list_inner {
  display: inline-block;
  display: flex;
  gap: 0 20px;
  max-width: min(90.8333333333vw, 1090px);
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .goods_list_inner {
    margin: 0 calc(50% - 50vw) 0;
    max-width: inherit;
  }
}
.goods_list {
  display: flex;
  gap: 0 20px;
  margin-bottom: 50px;
  animation: scroll-left linear infinite;
  animation-duration: 14s;
}
@media screen and (max-width: 767px) {
  .goods_list {
    animation: scroll-left_sp linear infinite;
    margin-bottom: 20px;
    animation-duration: 14s;
  }
}
.goods_list li {
  flex-shrink: 0;
}
.goods_list li img {
  height: 165px;
}
@media screen and (max-width: 767px) {
  .goods_list li img {
    height: 34.6666666667vw;
  }
}
.goods_text {
  margin-bottom: 50px;
  font-size: min(1.9166666667vw, 23px);
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .goods_text {
    font-size: 15px;
    font-size: 4vw;
    margin-bottom: 6.4vw;
    line-height: 1.7;
  }
}
@media screen and (max-width: 767px) {
  .goods_movie_inner {
    margin: 0 calc(50% - 50vw) 10px;
  }
}
.goods_movie {
  cursor: pointer;
}
@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-102%);
  }
}
@keyframes scroll-left_sp {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-235%);
  }
}
.about {
  padding: min(39.4166666667vw, 473px) 0 100px;
  background: url("../img/about_bg_pc.png") no-repeat;
  background-size: cover;
  background-position: top;
  color: #000;
}
@media screen and (max-width: 767px) {
  .about {
    background: url("../img/about_bg_sp.png") no-repeat;
    background-size: cover;
    background-position: top;
    padding: 31.4666666667vw 0 13.3333333333vw;
  }
}
.about_title img {
  display: block;
  width: min(50.6666666667vw, 608px);
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .about_title img {
    margin-bottom: 6.6666666667vw;
    width: 69.3333333333vw;
  }
}
.about_text {
  margin-bottom: 46px;
  font-size: min(1.9166666667vw, 23px);
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .about_text {
    margin-bottom: 5.3333333333vw;
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
}
.about_inner {
  position: relative;
  padding-left: min(15.25vw, 183px);
  max-width: min(75.1666666667vw, 902px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .about_inner {
    max-width: 88vw;
    padding-left: 9.3333333333vw;
  }
}
.about_inner::before {
  background: url("../img/title02.png") no-repeat;
  content: "";
  display: block;
  width: 100px;
  height: min(34.6666666667vw, 416px);
  position: absolute;
  background-size: contain;
  top: -1%;
  left: 28px;
}
@media screen and (max-width: 767px) {
  .about_inner::before {
    width: 9.6vw;
    height: 46.4vw;
    left: -6.4vw;
  }
}
@media screen and (max-width: 767px) {
  .about .main_btn_inner {
    width: 100%;
  }
}
.about .main_btn {
  border-color: #832529;
  font-size: min(2vw, 24px);
}
@media screen and (max-width: 767px) {
  .about .main_btn {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
}
.about .main_btn .Icon_Blank {
  position: absolute;
  right: 4%;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .about .main_btn .Icon_Blank {
    width: 4vw;
    height: 4vw;
  }
}
.about .main_btn:before {
  border-bottom: min(8.3333333333vw, 100px) solid #832529;
}
@media screen and (max-width: 767px) {
  .about .main_btn:before {
    border-bottom: 16vw solid #832529;
    transform: translateX(77%);
  }
}
.about .main_btn::after {
  border-top: min(8.3333333333vw, 100px) solid #832529;
}
@media screen and (max-width: 767px) {
  .about .main_btn::after {
    border-top: 16vw solid #832529;
    transform: translateX(-77%);
  }
}

#modalOverlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 9999;
  display: flex;
  justify-content: center;
  align-items: center;
}

#modalContent {
  background: #fff;
  max-width: 1200px;
  /* width: calc(100% - 20px); */
  max-height: 90vh;
  position: relative;
  margin: auto;
}

#modalContent img {
  max-width: 90vw;
  max-height: 80vh;
  display: block;
}

#modalVideoWrap {
  position: relative;
  width: 80vw;
  max-width: 960px;
  aspect-ratio: 16/9;
  background-color: #000;
  display: none;
}
@media screen and (max-width: 767px) {
  #modalVideoWrap {
    width: 90vw;
  }
}

#modalVideoWrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

#modalClose {
  position: absolute;
  top: -76px;
  right: -10px;
  width: 60px;
  height: 60px;
  background: transparent;
  border: none;
  cursor: pointer;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  #modalClose {
    top: -36px;
    width: 30px;
    height: 30px;
  }
}

#modalClose::before,
#modalClose::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 60px;
  height: 2px;
  background-color: white;
  transform-origin: center;
}
@media screen and (max-width: 767px) {
  #modalClose::before,
  #modalClose::after {
    width: 30px;
  }
}

#modalClose::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

#modalClose::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}/*# sourceMappingURL=style.css.map */