@charset "UTF-8";
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  list-style: none;
}
*:before, *:after {
  box-sizing: border-box;
}
*:focus {
  outline: none;
}

html {
  font-size: 62.5%;
  min-height: 100%;
  -webkit-overflow-scrolling: touch;
  position: relative;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
html::-webkit-scrollbar {
  display: none;
}

body {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  font-size: 28px;
  color: #89772e;
  background: #ffffff;
  overflow-x: hidden;
}
body::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(./images/main_bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  body::before {
    background-image: url(./images/sp/main_bg.png);
  }
}
body.is-fixed {
  position: fixed;
  width: 100%;
}
body.modal-open {
  overflow: hidden;
}
body img {
  max-width: 100%;
  width: 100%;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 18px;
  }
  body img {
    pointer-events: none;
  }
}

.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp {
    display: block;
  }
}

.sp_inline {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp_inline {
    display: inline-block;
  }
}

@media screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}
.flex {
  display: flex;
}

.grid {
  display: grid;
}

section {
  position: relative;
  z-index: 0;
}

.inner {
  width: 90%;
  margin: 0 auto;
}

.simplebar-content-wrapper::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.simplebar-content-wrapper {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

h2 {
  text-align: center;
  margin-bottom: 2.604vw;
}
@media screen and (max-width: 767px) {
  h2 {
    margin-bottom: 10.514vw;
  }
}
h2.active img {
  opacity: 1;
  transition-delay: 0.7s;
}
h2.active .h2_deco_ul .h2_deco_li {
  height: 6.927vw;
}
@media screen and (max-width: 767px) {
  h2.active .h2_deco_ul .h2_deco_li {
    height: 13.318vw;
  }
}
h2.active .h2_deco_ul .h2_deco_li.h2_deco_li-01 {
  transition-delay: 0.1s;
}
h2.active .h2_deco_ul .h2_deco_li.h2_deco_li-02 {
  height: 4.896vw;
}
@media screen and (max-width: 767px) {
  h2.active .h2_deco_ul .h2_deco_li.h2_deco_li-02 {
    height: 8.178vw;
  }
}
h2 img {
  width: auto;
  height: 5.677vw;
  opacity: 0;
  transition: all ease-out 0.4s;
}
@media screen and (max-width: 767px) {
  h2 img {
    height: 14.486vw;
  }
}
h2 .h2_inner {
  display: inline-block;
  position: relative;
  padding: 2.083vw 5.99vw 0;
}
@media screen and (max-width: 767px) {
  h2 .h2_inner {
    padding: 2.336vw 11.682vw 0;
  }
}
h2 .h2_deco_ul {
  width: 2.396vw;
  height: 8.75vw;
  position: absolute;
  top: 0;
  display: flex;
  justify-content: space-between;
}
h2 .h2_deco_ul .h2_deco_li {
  width: 0.104vw;
  height: 0;
  background-image: radial-gradient(circle, #000000 1px, transparent 1px);
  background-position: left top;
  background-repeat: repeat-y;
  background-size: 0.104vw 0.885vw;
  position: relative;
  transition: all ease-out 0.6s;
}
h2 .h2_deco_ul .h2_deco_li::before {
  content: "";
  width: 1.719vw;
  height: 1.667vw;
  background-image: url(./images/mv_parts-star-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -1.823vw;
  left: 50%;
  transform: translateX(-50%);
  animation: twinkle-rotate 5s 2.5s infinite;
}
h2 .h2_deco_ul .h2_deco_li.h2_deco_li-02 {
  height: 0;
}
h2 .h2_deco_ul .h2_deco_li.h2_deco_li-02::before {
  background-image: url(./images/mv_parts-star-black.svg);
}
@media screen and (max-width: 767px) {
  h2 .h2_deco_ul {
    width: 5.841vw;
    height: 20.561vw;
  }
  h2 .h2_deco_ul .h2_deco_li {
    width: 2px;
    height: 0;
    background-image: radial-gradient(circle, #000000 1px, transparent 1px);
    background-size: 2px 8px;
  }
  h2 .h2_deco_ul .h2_deco_li::before {
    width: 4.673vw;
    height: 4.439vw;
    bottom: -4.673vw;
  }
  h2 .h2_deco_ul .h2_deco_li.h2_deco_li-02 {
    height: 0;
  }
}
h2 .h2_deco_ul.h2_deco_ul-left {
  left: 0;
}
h2 .h2_deco_ul.h2_deco_ul-right {
  right: 0;
  transform: scale(-1, 1);
}
h2 .h2_deco_ul.h2_deco_ul-right .h2_deco_li::before {
  background-image: url(./images/mv_parts-star-black.svg);
}
h2 .h2_deco_ul.h2_deco_ul-right .h2_deco_li.h2_deco_li-02::before {
  background-image: url(./images/mv_parts-star-pink.svg);
}
h2.h2-lineup img {
  height: 5.99vw;
}
@media screen and (max-width: 767px) {
  h2.h2-lineup img {
    height: 15.187vw;
  }
}
h2.h2-benefits img {
  height: 5.781vw;
}
@media screen and (max-width: 767px) {
  h2.h2-benefits img {
    height: 14.486vw;
  }
}
@media screen and (max-width: 767px) {
  h2.h2-benefits .h2_inner {
    padding: 2.336vw 6vw 0;
  }
}
@media screen and (max-width: 767px) {
  h2.h2-shop .h2_inner {
    padding: 2.336vw 6vw 0;
  }
}

h3.h3-exhibition {
  font-size: 1.563vw;
  height: 4.271vw;
  background-repeat: no-repeat;
  background-size: contain;
  background-position-y: top 0.1vw;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  margin-bottom: 1.042vw;
}
h3.h3-standee, h3.h3-rop {
  width: 13.125vw;
  background-image: url(./images/frame-exhibition-short.webp);
}
h3.h3-les {
  width: 16.042vw;
  background-image: url(./images/frame-exhibition-long.webp);
}
@media screen and (max-width: 767px) {
  h3.h3-exhibition {
    font-size: 4.673vw;
    height: 13.551vw;
    background-position-y: top 0.25vw;
    margin-bottom: 2.336vw;
  }
  h3.h3-standee, h3.h3-rop {
    width: 41.589vw;
  }
  h3.h3-les {
    width: 51.168vw;
  }
}

.frame-main {
  border-image-slice: 70 70 70 70 fill;
  border-image-width: 25px 25px 25px 25px;
  border-image-outset: 0px 0px 0px 0px;
  border-image-repeat: round round;
  border-image-source: url(./images/frame-benefits.webp);
  position: relative;
  z-index: 0;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
@media screen and (max-width: 767px) {
  .frame-main {
    border-image-slice: 35 35 35 35 fill;
    border-image-width: 18px 18px 18px 18px;
    border-image-source: url(./images/sp/frame-benefits.webp);
  }
}
.frame-main::before {
  content: "";
  width: 99%;
  height: 99%;
  border-image-slice: 550 550 550 550 fill;
  border-image-width: 225px 225px 225px 225px;
  border-image-outset: 0px 0px 0px 0px;
  border-image-repeat: stretch stretch;
  border-image-source: url(./images/frame_filter-benefits.webp);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  pointer-events: none;
}
.frame-main.active {
  opacity: 1;
  transform: translateY(0);
}

.modal-body {
  border-image-slice: 70 70 70 70 fill;
  border-image-width: 35px 35px 35px 35px;
  border-image-outset: 0px 0px 0px 0px;
  border-image-repeat: round round;
  border-image-source: url(./images/frame-benefits.webp);
}
@media screen and (max-width: 767px) {
  .modal-body {
    border-image-slice: 35 35 35 35 fill;
    border-image-width: 18px 18px 18px 18px;
    border-image-source: url(./images/sp/frame-benefits.webp);
  }
}

.deco_line_ul {
  width: 7.448vw;
  height: 12.969vw;
  position: absolute;
  display: flex;
  justify-content: space-between;
}
.deco_line_ul .deco_line_li {
  width: 0.2vw;
  height: 12.969vw;
  background-image: radial-gradient(circle, #000000 1.5px, transparent 1.5px);
  background-position: left top;
  background-repeat: repeat-y;
  background-size: 3px 13px;
  position: relative;
}
.deco_line_ul .deco_line_li::before {
  content: "";
  width: 2.552vw;
  height: 2.5vw;
  background-image: url(./images/mv_parts-star-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -2.5vw;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  animation: blinking 1s ease-in-out infinite 0.5s alternate;
}
.deco_line_ul .deco_line_li:first-of-type::before, .deco_line_ul .deco_line_li:last-of-type::before {
  background-image: url(./images/mv_parts-star-black.svg);
}
.deco_line_ul .deco_line_li:first-of-type {
  height: 11vw;
}
.deco_line_ul .deco_line_li:first-of-type::before {
  animation: blinking 1s ease-in-out infinite alternate;
}
.deco_line_ul .deco_line_li:last-of-type {
  height: 8vw;
}
.deco_line_ul .deco_line_li:last-of-type::before {
  background-image: url(./images/mv_parts-star-black.svg);
  animation: blinking 1s ease-in-out infinite 1s alternate;
}
@media screen and (max-width: 767px) {
  .deco_line_ul {
    width: 10.047vw;
    height: 28.505vw;
  }
  .deco_line_ul .deco_line_li {
    width: 0.467vw;
    height: 28.505vw;
    background-image: radial-gradient(circle, #000000 1px, transparent 1px);
    background-size: 0.467vw 2.336vw;
  }
  .deco_line_ul .deco_line_li::before {
    width: 5.14vw;
    height: 5.14vw;
    bottom: -5.14vw;
  }
  .deco_line_ul .deco_line_li:first-of-type {
    height: 19vw;
  }
  .deco_line_ul .deco_line_li:last-of-type {
    height: 8vw;
  }
}
.deco_line_ul.deco_line_ul-linup {
  top: -11vw;
  right: 16vw;
}
@media screen and (max-width: 767px) {
  .deco_line_ul.deco_line_ul-linup {
    top: 394vw;
    right: 13vw;
  }
}
.deco_line_ul.deco_line_ul-exhibition {
  top: -9.5vw;
  left: 16vw;
}
@media screen and (max-width: 767px) {
  .deco_line_ul.deco_line_ul-exhibition {
    display: none;
  }
}

#load {
  background: #fce2e6;
  position: fixed;
  height: 100svh;
  width: 100%;
  z-index: 999;
  transition: 0.2s;
  transition-delay: 2s;
}
#load.load_active {
  animation: view 0.5s ease-in-out 1s forwards;
}
@keyframes view {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    pointer-events: none;
  }
}

.main_frame {
  width: 100%;
  height: 100%;
  border: 0.26vw solid #a19153;
  padding: 5px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 30;
  pointer-events: none;
}
.main_frame::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border: 2px solid #a19153;
}
.main_frame::after {
  content: "";
  width: auto;
  height: auto;
  border: 3px solid #a19153;
  position: absolute;
  top: 9px;
  left: 9px;
  right: 9px;
  bottom: 9px;
}
@media screen and (max-width: 767px) {
  .main_frame {
    border: 2px solid #a19153;
  }
  .main_frame::before {
    border: 1px solid #a19153;
  }
  .main_frame::after {
    border: 2px solid #a19153;
    top: 8px;
    left: 8px;
    right: 8px;
    bottom: 8px;
  }
}
.main_frame .main_frame_inner {
  width: auto;
  height: auto;
  position: absolute;
  top: 20px;
  left: 20px;
  right: 20px;
  bottom: 22px;
  background-image: radial-gradient(circle, #a19153 1.5px, transparent 1.5px), radial-gradient(circle, #a19153 1.5px, transparent 1.5px), radial-gradient(circle, #a19153 1.5px, transparent 1.5px), radial-gradient(circle, #a19153 1.5px, transparent 1.5px);
  background-position: left top, right top, left bottom, left top;
  background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
  background-size: 13px 3px, 3px 13px, 13px 3px, 3px 13px;
}
@media screen and (max-width: 767px) {
  .main_frame .main_frame_inner {
    top: 12px;
    left: 12px;
    right: 12px;
    bottom: 12px;
    background-image: radial-gradient(circle, #a19153 1px, transparent 1px), radial-gradient(circle, #a19153 1px, transparent 1px), radial-gradient(circle, #a19153 1px, transparent 1px), radial-gradient(circle, #a19153 1px, transparent 1px);
    background-position: left top, right top, left bottom, left top;
    background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
    background-size: 12px 2px, 2px 12px, 12px 2px, 2px 12px;
  }
}

header #menu_btn {
  width: 3.854vw;
  height: 3.854vw;
  border: 1px solid #7d6a20;
  border-radius: 50%;
  background: url(./images/menu_btn_back.png) #ffffff no-repeat center center/170%;
  position: fixed;
  top: 2.76vw;
  right: 3.385vw;
  z-index: 90;
  cursor: pointer;
  transition: all 0.4s;
}
header #menu_btn span {
  width: 2.083vw;
  height: 0.052vw;
  background-color: #ffffff;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  transition: inherit;
}
header #menu_btn span:first-of-type {
  top: 30%;
}
header #menu_btn span:nth-of-type(2) {
  top: 50%;
}
header #menu_btn span:last-of-type {
  bottom: 30%;
}
@media screen and (min-width: 767px) {
  header #menu_btn:hover {
    background: #ffffff no-repeat center center/170%;
  }
  header #menu_btn:hover span {
    background-color: #a19153;
  }
}
@media screen and (max-width: 767px) {
  header #menu_btn {
    width: 13.084vw;
    height: 13.084vw;
    top: 6.5vw;
    right: 6.5vw;
  }
  header #menu_btn span {
    width: 7.009vw;
    height: 0.234vw;
  }
}
header #menu_btn.open {
  background: #ffffff no-repeat center center/170%;
}
header #menu_btn.open span {
  width: 2.604vw;
  background-color: #a19153;
}
header #menu_btn.open span:first-of-type {
  top: 50%;
  transform: translateX(-50%) rotate(45deg);
}
header #menu_btn.open span:nth-of-type(2) {
  opacity: 0;
}
header #menu_btn.open span:last-of-type {
  bottom: 50%;
  transform: translateX(-50%) rotate(-45deg);
}
@media screen and (max-width: 767px) {
  header #menu_btn.open span {
    width: 9.346vw;
  }
}
header #menu {
  width: 44%;
  height: 100vh;
  background: #f5becb;
  background: linear-gradient(270deg, rgb(245, 190, 203) 0%, rgba(248, 209, 218, 0.82) 25%, rgba(255, 255, 255, 0) 100%);
  position: fixed;
  top: 0;
  right: 0;
  z-index: 80;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  opacity: 0;
  pointer-events: none;
  transition: all 0.4s;
  overflow: hidden;
}
header #menu.open {
  opacity: 1;
  pointer-events: all;
  z-index: 85;
}
header #menu.open .nav_ul {
  opacity: 1;
  transform: translateX(0%);
  transition-delay: 0.25s;
}
@media screen and (max-width: 767px) {
  header #menu {
    width: 100%;
    background: rgba(245, 190, 203, 0.57);
    justify-content: center;
  }
  header #menu .open .nav_ul {
    transform: translateY(0%);
  }
}
header #menu .nav_ul {
  position: relative;
  width: 48%;
  padding: 3.646vw 1.875vw;
  margin-right: 3.125vw;
  border-image-slice: 100 100 100 100 fill;
  border-image-width: 2.188vw 2.188vw 2.188vw 2.188vw;
  border-image-outset: 0px 0px 0px 0px;
  border-image-repeat: round round;
  border-image-source: url(./images/menu_back.webp);
  opacity: 0;
  transform: translateX(1%);
  transition: all ease-out 0.4s;
}
header #menu .nav_ul::before, header #menu .nav_ul::after {
  content: "";
  width: 2.76vw;
  height: 1.51vw;
  background-image: url(./images/menu_parth-star.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
}
header #menu .nav_ul::before {
  top: 1.042vw;
  left: 1.042vw;
}
header #menu .nav_ul::after {
  bottom: 1.042vw;
  right: 1.042vw;
  transform: scale(-1, 1);
}
@media screen and (max-width: 767px) {
  header #menu .nav_ul {
    width: 87%;
    padding: 16.355vw 5.841vw;
    margin-right: 0;
    border-image-width: 9.813vw 9.813vw 9.813vw 9.813vw;
    transform: translateY(-1%);
  }
  header #menu .nav_ul::before, header #menu .nav_ul::after {
    width: 11.449vw;
    height: 6.308vw;
  }
  header #menu .nav_ul::before {
    top: 4.673vw;
    left: 4.673vw;
  }
  header #menu .nav_ul::after {
    bottom: 4.673vw;
    right: 4.673vw;
  }
}
header #menu .nav_ul .nav_li {
  border-top: 1px solid #a19153;
  text-align: center;
}
header #menu .nav_ul .nav_li:last-of-type {
  border-bottom: 1px solid #a19153;
}
header #menu .nav_ul .nav_li a {
  display: block;
  width: 100%;
  line-height: 1;
  padding: 1.615vw 0;
  position: relative;
}
header #menu .nav_ul .nav_li a::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #a19153;
  background: linear-gradient(90deg, rgba(161, 145, 83, 0) 0%, rgba(161, 145, 83, 0.75) 25%, rgb(161, 145, 83) 50%, rgba(161, 145, 83, 0.75) 75%, rgba(161, 145, 83, 0) 100%);
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0, 1);
  opacity: 0;
  transition: all 0.4s;
}
@media screen and (min-width: 767px) {
  header #menu .nav_ul .nav_li a:hover::before {
    transform: scale(1, 1);
    opacity: 1;
  }
  header #menu .nav_ul .nav_li a:hover img {
    filter: brightness(0) invert(1);
  }
}
header #menu .nav_ul .nav_li img {
  width: auto;
  height: 1.302vw;
}
header #menu .nav_ul .nav_li-lineup img {
  height: 1.406vw;
}
@media screen and (max-width: 767px) {
  header #menu .nav_ul .nav_li a {
    padding: 7.009vw 0;
  }
  header #menu .nav_ul .nav_li a img {
    height: 5.374vw;
  }
  header #menu .nav_ul .nav_li-lineup img {
    height: 5.841vw;
  }
}

main #mv {
  width: 100%;
  height: 56.979vw;
  background-image: url(./images/mv_back.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
  overflow: hidden;
}
main #mv::before {
  content: "";
  width: 103.438vw;
  height: 52.031vw;
  background-image: url(./images/mv_filter.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -2.187vw;
  left: -2.187vw;
  z-index: 20;
  pointer-events: none;
}
main #mv::after {
  content: "";
  width: 27.708vw;
  height: 24.74vw;
  background-image: url(./images/mv_ribbon.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -0.625vw;
  left: -1.823vw;
  z-index: 10;
  opacity: 0;
  transition: all ease-out 0.4s;
}
@media screen and (max-width: 767px) {
  main #mv {
    height: 214.72vw;
    background-image: url(./images/sp/mv_back.png);
  }
  main #mv::before {
    width: 112.617vw;
    height: 199.533vw;
    background-image: url(./images/sp/mv_filter.webp);
    top: -8.178vw;
    left: -6.542vw;
  }
  main #mv::after {
    width: 57.944vw;
    height: 51.168vw;
    top: -2.103vw;
    left: -4.439vw;
  }
}
main #mv.active::after {
  opacity: 1;
  transition-delay: 1.2s;
}
main #mv.active .mv_title {
  opacity: 1;
  transition-delay: 0.6s;
}
main #mv.active .mv_date {
  opacity: 1;
  transition-delay: 0.6s;
}
main #mv.active .mv_date::before, main #mv.active .mv_date::after {
  animation: twinkle-rotate-lineup 5s 1s infinite;
}
main #mv.active .mv_img {
  opacity: 1;
}
main #mv.active .mv_deco_ul {
  opacity: 1;
  transition-delay: 1.2s;
}
main #mv .mv_info {
  padding-top: 5.729vw;
  padding-left: 3.958vw;
}
main #mv .mv_title {
  width: 46.927vw;
  position: relative;
  z-index: 10;
  opacity: 0;
  transition: all ease 0.4s;
}
main #mv .mv_title::before, main #mv .mv_title::after {
  content: "";
  background-image: url(./images/mv_parts-star-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
}
main #mv .mv_title::before {
  width: 4.479vw;
  height: 4.427vw;
  bottom: 2.865vw;
  right: 16.823vw;
  animation: sleepy-twinkle 2s ease-in-out infinite;
}
main #mv .mv_title::after {
  width: 3.177vw;
  height: 3.073vw;
  bottom: 5.729vw;
  right: 14.063vw;
  animation: sleepy-twinkle 2s ease-in-out 1s infinite;
}
main #mv .mv_title h1 {
  position: relative;
}
main #mv .mv_title h1::before {
  content: "";
  width: 0.729vw;
  height: 0.729vw;
  background-image: url(./images/mv_parts-circle-purple.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 8.854vw;
  right: 17.708vw;
  animation: circle-move 2s ease-in-out 1s infinite;
}
main #mv .mv_date {
  width: 37.188vw;
  margin-top: -1.302vw;
  opacity: 0;
  transition: all ease 0.4s;
  position: relative;
}
main #mv .mv_date::before, main #mv .mv_date::after {
  content: "";
  width: 2.552vw;
  height: 2.552vw;
  background-image: url(./images/date_star.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 1.927vw;
}
main #mv .mv_date::before {
  left: 8.854vw;
}
main #mv .mv_date::after {
  right: 8.854vw;
}
@media screen and (max-width: 767px) {
  main #mv .mv_info {
    padding-top: 95.561vw;
    padding-left: 0;
  }
  main #mv .mv_title {
    width: 96.262vw;
    margin: 0 auto;
  }
  main #mv .mv_title::before {
    width: 9.112vw;
    height: 8.879vw;
    bottom: 6.075vw;
    right: 34.112vw;
  }
  main #mv .mv_title::after {
    width: 6.075vw;
    height: 5.841vw;
    bottom: 11.682vw;
    right: 29.206vw;
  }
  main #mv .mv_title h1::before {
    width: 1.636vw;
    height: 1.636vw;
    bottom: 17.757vw;
    right: 35.514vw;
  }
  main #mv .mv_date {
    width: 97.43vw;
    margin: 0 auto;
    margin-top: -3.505vw;
    position: relative;
    z-index: 10;
  }
  main #mv .mv_date::before, main #mv .mv_date::after {
    width: 7.009vw;
    height: 7.009vw;
    top: 4.907vw;
  }
  main #mv .mv_date::before {
    left: 21.495vw;
  }
  main #mv .mv_date::after {
    right: 21.495vw;
  }
}
main #mv .mv_img {
  width: 62.865vw;
  height: 55.469vw;
  background-image: url(./images/mv_img.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 1.667vw;
  right: 0;
  opacity: 0;
  transition: all ease-out 0.4s;
}
@media screen and (max-width: 767px) {
  main #mv .mv_img {
    width: 143.925vw;
    height: 234.112vw;
    background-image: url(./images/sp/mv_img.webp);
    top: 2.336vw;
    right: -15.187vw;
  }
}
main #mv .mv_deco_ul {
  pointer-events: none;
  opacity: 0;
  transition: all ease-out 0.4s;
}
main #mv .mv_deco_ul .mv_deco_li {
  position: absolute;
}
main #mv .mv_deco_ul .mv_deco_li-01 {
  width: 2.448vw;
  height: 3.073vw;
  top: 42.188vw;
  left: 2.448vw;
}
main #mv .mv_deco_ul .mv_deco_li-01::before {
  content: "";
  width: 2.24vw;
  height: 2.188vw;
  background-image: url(./images/mv_parts-star-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0.6);
  animation: sleepy-twinkle 2s ease-in-out infinite;
}
main #mv .mv_deco_ul .mv_deco_li-01::after {
  content: "";
  width: 0.469vw;
  height: 0.469vw;
  background-image: url(./images/mv_parts-circle-black.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  right: 0;
  animation: circle-move 2s ease-in-out infinite;
}
@media screen and (max-width: 767px) {
  main #mv .mv_deco_ul .mv_deco_li-01 {
    width: 5.841vw;
    height: 5.841vw;
    top: 25vw;
    left: 30.374vw;
  }
  main #mv .mv_deco_ul .mv_deco_li-01::before {
    width: 5.374vw;
    height: 5.374vw;
  }
  main #mv .mv_deco_ul .mv_deco_li-01::after {
    width: 0.935vw;
    height: 0.935vw;
  }
}
main #mv .mv_deco_ul .mv_deco_li-02 {
  width: 3.073vw;
  height: 2.76vw;
  top: 28.385vw;
  left: 3.646vw;
}
main #mv .mv_deco_ul .mv_deco_li-02::before {
  content: "";
  width: 2.24vw;
  height: 2.188vw;
  background-image: url(./images/mv_parts-star-black.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0.6);
  animation: sleepy-twinkle 2s ease-in-out 1s infinite;
}
main #mv .mv_deco_ul .mv_deco_li-02::after {
  content: "";
  width: 0.469vw;
  height: 0.469vw;
  background-image: url(./images/mv_parts-circle-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  right: 0;
  animation: circle-move 2s ease-in-out 1s infinite;
}
@media screen and (max-width: 767px) {
  main #mv .mv_deco_ul .mv_deco_li-02 {
    width: 5.841vw;
    height: 5.607vw;
    top: 48.832vw;
    left: auto;
    right: 5.14vw;
  }
  main #mv .mv_deco_ul .mv_deco_li-02::before {
    width: 5.14vw;
    height: 4.907vw;
  }
  main #mv .mv_deco_ul .mv_deco_li-02::after {
    width: 1.168vw;
    height: 1.168vw;
  }
}
main #mv .mv_deco_ul .mv_deco_li-03 {
  width: 3.49vw;
  height: 4.583vw;
  top: 15.365vw;
  right: 3.229vw;
}
main #mv .mv_deco_ul .mv_deco_li-03::before {
  content: "";
  width: 3.49vw;
  height: 3.438vw;
  background-image: url(./images/mv_parts-star-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: 0;
  transform: scale(0.6);
  animation: sleepy-twinkle 2s ease-in-out infinite;
}
main #mv .mv_deco_ul .mv_deco_li-03::after {
  content: "";
  width: 0.469vw;
  height: 0.469vw;
  background-image: url(./images/mv_parts-circle-black.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  left: 0;
  animation: circle-move 2s ease-in-out infinite;
}
@media screen and (max-width: 767px) {
  main #mv .mv_deco_ul .mv_deco_li-03 {
    width: 5.607vw;
    height: 5.841vw;
    top: 29.439vw;
    right: 10.748vw;
  }
  main #mv .mv_deco_ul .mv_deco_li-03::before {
    width: 5.14vw;
    height: 5.14vw;
  }
  main #mv .mv_deco_ul .mv_deco_li-03::after {
    width: 0.935vw;
    height: 0.935vw;
  }
}
main #mv .mv_deco_ul .mv_deco_li-04 {
  width: 0.469vw;
  height: 0.469vw;
  top: 23.802vw;
  left: 5.104vw;
}
main #mv .mv_deco_ul .mv_deco_li-04::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(./images/mv_parts-circle-black.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  animation: circle-move 2s ease-in-out infinite;
}
@media screen and (max-width: 767px) {
  main #mv .mv_deco_ul .mv_deco_li-04 {
    display: none;
  }
}
main #mv .mv_deco_ul .mv_deco_li-05 {
  width: 0.469vw;
  height: 0.469vw;
  top: 5.729vw;
  right: 35.677vw;
}
main #mv .mv_deco_ul .mv_deco_li-05::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(./images/mv_parts-circle-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  animation: circle-move 2s ease-in-out 1s infinite;
}
@media screen and (max-width: 767px) {
  main #mv .mv_deco_ul .mv_deco_li-05 {
    width: 1.168vw;
    height: 1.168vw;
    top: 13.084vw;
    left: 41.121vw;
    right: auto;
  }
}
main #mv .mv_deco_ul .mv_deco_li-06 {
  width: 2.24vw;
  height: 2.188vw;
  top: 3.802vw;
  left: 50.625vw;
}
main #mv .mv_deco_ul .mv_deco_li-06::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(./images/mv_parts-star-black.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0.6);
  animation: sleepy-twinkle 2s ease-in-out infinite;
}
@media screen and (max-width: 767px) {
  main #mv .mv_deco_ul .mv_deco_li-06 {
    width: 5.14vw;
    height: 4.907vw;
    top: 10.748vw;
    left: 28.505vw;
  }
}
main #mv .mv_deco_ul .mv_deco_li-07 {
  width: 2.24vw;
  height: 2.188vw;
  top: 10.833vw;
  right: 38.021vw;
}
main #mv .mv_deco_ul .mv_deco_li-07::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(./images/mv_parts-star-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0.6);
  animation: sleepy-twinkle 2s ease-in-out 1s infinite;
}
@media screen and (max-width: 767px) {
  main #mv .mv_deco_ul .mv_deco_li-07 {
    display: none;
  }
}
main #mv .mv_deco_ul .mv_deco_li-08 {
  width: 7.865vw;
  height: 5.781vw;
  top: 5.885vw;
  left: 50.99vw;
}
main #mv .mv_deco_ul .mv_deco_li-08::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(./images/mv_parts-heart-pink.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  main #mv .mv_deco_ul .mv_deco_li-08 {
    width: 15.888vw;
    height: 11.682vw;
    top: 17.056vw;
    left: 12.85vw;
    z-index: -1;
  }
}
main #mv .mv_deco_ul .mv_deco_li-09 {
  width: 7.083vw;
  height: 5.26vw;
  top: 10vw;
  right: 6.51vw;
}
main #mv .mv_deco_ul .mv_deco_li-09::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(./images/mv_parts-heart-black.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  main #mv .mv_deco_ul .mv_deco_li-09 {
    width: 12.15vw;
    height: 9.112vw;
    top: 32.009vw;
    right: 1.168vw;
    z-index: -1;
  }
}
main #about {
  width: 100%;
  height: 86.302vw;
  padding: 12.396vw 0 15vw;
  background-image: url(./images/about_bg.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center top;
  z-index: 10;
  margin-top: -8.594vw;
  scroll-margin-top: -12vw;
  position: relative;
}
main #about::before {
  content: "";
  width: 100%;
  height: 9.792vw;
  background-image: url(./images/ribbon-01.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -0.99vw;
  left: 0;
  pointer-events: none;
}
main #about::after {
  content: "";
  width: 100%;
  height: 9.792vw;
  background-image: url(./images/ribbon-02.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -1.354vw;
  left: 0;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  main #about {
    height: 223.364vw;
    padding: 20.561vw 0 35.514vw;
    margin-top: -21vw;
    scroll-margin-top: 0;
    background-image: url(./images/sp/about_bg.png);
  }
  main #about::before {
    height: 9.813vw;
    top: -0.99vw;
  }
  main #about::after {
    height: 9.813vw;
    bottom: -0.729vw;
  }
}
main #about .about_inner {
  width: 54.427vw;
  height: 58.177vw;
  margin: 0 auto;
  padding-top: 6.667vw;
  position: relative;
}
main #about .about_inner::before {
  content: "";
  width: 100%;
  height: 30.521vw;
  background-image: url(./images/about_envelope-front.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
}
main #about .about_inner::after {
  content: "";
  width: 100%;
  height: 58.177vw;
  background-image: url(./images/about_envelope-back.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  main #about .about_inner {
    width: 90.654vw;
    height: 167.29vw;
    padding-top: 39vw;
  }
  main #about .about_inner::before {
    height: 50.935vw;
    background-image: url(./images/sp/about_envelope-front.webp);
  }
  main #about .about_inner::after {
    height: 97.196vw;
    background-image: url(./images/sp/about_envelope-back.webp);
    top: auto;
    bottom: 36vw;
  }
}
main #about .about_inner.active .about_txt {
  transform: translateY(0%);
}
main #about .about_inner.active .about_txt p {
  opacity: 1;
  transition-delay: 0.4s;
}
main #about .about_inner.active .about_txt p span::after {
  width: 100%;
  transition-delay: 0.5s;
}
main #about .about_inner.active .about_txt .dot_box span {
  opacity: 1;
  transition-delay: 0.5s;
}
main #about .about_inner.active .about_txt .dot_box span:nth-of-type(2) {
  transition-delay: 0.6s;
}
main #about .about_inner.active .about_txt .dot_box span:nth-of-type(3) {
  transition-delay: 0.7s;
}
main #about .about_inner.active .about_img_ul .about_img_li {
  opacity: 1;
  transform: translateY(0%);
  transition-delay: 0.5s;
}
main #about .about_inner.active .about_img_ul .about_img_li-01 {
  transition-delay: 0.7s;
}
main #about .about_txt {
  width: 36.406vw;
  height: 47.396vw;
  margin: 0 auto;
  padding-top: 6.5vw;
  font-size: 1.25vw;
  font-weight: 300;
  line-height: 1.83;
  text-align: center;
  background-image: url(./images/about_stationery.webp);
  background-repeat: no-repeat;
  background-size: contain;
  transform: translateY(10%);
  transition: all ease-out 0.4s;
}
@media screen and (max-width: 767px) {
  main #about .about_txt {
    width: 84.346vw;
    height: 109.813vw;
    padding-top: 19vw;
    font-size: 3.738vw;
    line-height: 1.87;
    background-image: url(./images/sp/about_stationery.webp);
  }
}
main #about .about_txt p {
  opacity: 0;
  transition: all ease-out 0.4s;
}
main #about .about_txt p:first-of-type {
  margin-bottom: 1.823vw;
}
main #about .about_txt p span {
  font-size: 1.458vw;
  padding: 0 0.2vw;
  margin-right: 0.5vw;
  position: relative;
  z-index: 0;
}
main #about .about_txt p span::after {
  content: "";
  width: 0%;
  height: 0.885vw;
  background-color: #89772e;
  opacity: 0.14;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  transition: all ease-out 0.4s;
}
@media screen and (max-width: 767px) {
  main #about .about_txt p:first-of-type {
    margin-bottom: 6.308vw;
  }
  main #about .about_txt p span {
    font-size: inherit;
    padding: 0 1.168vw;
  }
  main #about .about_txt p span::after {
    height: 2.336vw;
  }
}
main #about .about_txt .dot_box {
  margin-top: 2.7vw;
}
main #about .about_txt .dot_box span {
  display: block;
  width: 0.156vw;
  height: 0.156vw;
  background-color: #89772e;
  margin: 0 auto;
  margin-top: 1.042vw;
  opacity: 0;
  transition: all ease-out 0.4s;
}
main #about .about_txt .dot_box span:first-of-type {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  main #about .about_txt .dot_box {
    margin-top: 9vw;
  }
  main #about .about_txt .dot_box span {
    width: 0.701vw;
    height: 0.701vw;
    margin-top: 2.336vw;
  }
}
main #about .about_img_ul .about_img_li {
  position: absolute;
  z-index: 10;
  opacity: 0;
  transform: translateY(10%);
  transition: all ease-out 0.4s;
}
main #about .about_img_ul .about_img_li-01 {
  width: 17.292vw;
  top: 20.833vw;
  right: -5.469vw;
}
main #about .about_img_ul .about_img_li-02 {
  width: 20.417vw;
  top: 12.5vw;
  left: -6.25vw;
}
@media screen and (max-width: 767px) {
  main #about .about_img_ul .about_img_li-01 {
    width: 31.542vw;
    top: 9.346vw;
    right: 7.009vw;
  }
  main #about .about_img_ul .about_img_li-02 {
    width: 38.318vw;
    top: 0;
    left: 7.009vw;
  }
}
main #about .about_back {
  width: 81.875vw;
  height: 79.323vw;
  position: absolute;
  top: 50%;
  left: 51%;
  transform: translate(-50%, -50%);
  z-index: -2;
}
main #about .about_back::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(./images/about_back_rose.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  main #about .about_back {
    width: 72.664vw;
    height: 100%;
    left: 50%;
  }
  main #about .about_back::before {
    width: 69.86vw;
    height: 62.383vw;
    background-image: url(./images/sp/about_back_rose-01.webp);
    top: -11vw;
    left: -11vw;
  }
  main #about .about_back::after {
    content: "";
    width: 65.421vw;
    height: 45.327vw;
    background-image: url(./images/sp/about_back_rose-02.webp);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    bottom: -1vw;
    left: -4vw;
  }
}
main #about .about_deco_ul .about_deco_li {
  position: absolute;
}
main #about .about_deco_ul .about_deco_li-01 {
  width: 2.917vw;
  height: 3.021vw;
  top: 28.5vw;
  left: 11vw;
}
main #about .about_deco_ul .about_deco_li-01::before {
  content: "";
  width: 2.708vw;
  height: 2.656vw;
  background-image: url(./images/mv_parts-star-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: 0;
  transform: scale(0.6);
  animation: sleepy-twinkle 2s ease-in-out infinite;
}
main #about .about_deco_ul .about_deco_li-01::after {
  content: "";
  width: 0.469vw;
  height: 0.469vw;
  background-image: url(./images/mv_parts-circle-black.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  left: 0;
  animation: circle-move 2s ease-in-out infinite;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-01 {
    width: 6.542vw;
    height: 7.009vw;
    top: 195vw;
    left: auto;
    right: 46vw;
  }
  main #about .about_deco_ul .about_deco_li-01::before {
    width: 6.075vw;
    height: 5.841vw;
  }
  main #about .about_deco_ul .about_deco_li-01::after {
    width: 1.168vw;
    height: 1.168vw;
  }
}
main #about .about_deco_ul .about_deco_li-02,
main #about .about_deco_ul .about_deco_li-04,
main #about .about_deco_ul .about_deco_li-05 {
  width: 2.604vw;
  height: 2.5vw;
}
main #about .about_deco_ul .about_deco_li-02::before,
main #about .about_deco_ul .about_deco_li-04::before,
main #about .about_deco_ul .about_deco_li-05::before {
  content: "";
  width: 2.24vw;
  height: 2.188vw;
  background-image: url(./images/mv_parts-star-black.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0.6);
  animation: sleepy-twinkle 2s ease-in-out 1s infinite;
}
main #about .about_deco_ul .about_deco_li-02::after,
main #about .about_deco_ul .about_deco_li-04::after,
main #about .about_deco_ul .about_deco_li-05::after {
  content: "";
  width: 0.469vw;
  height: 0.469vw;
  background-image: url(./images/mv_parts-circle-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  right: 0;
  animation: circle-move 2s ease-in-out 1s infinite;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-02,
  main #about .about_deco_ul .about_deco_li-04,
  main #about .about_deco_ul .about_deco_li-05 {
    width: 5.841vw;
    height: 5.607vw;
  }
  main #about .about_deco_ul .about_deco_li-02::before,
  main #about .about_deco_ul .about_deco_li-04::before,
  main #about .about_deco_ul .about_deco_li-05::before {
    width: 5.14vw;
    height: 4.907vw;
  }
  main #about .about_deco_ul .about_deco_li-02::after,
  main #about .about_deco_ul .about_deco_li-04::after,
  main #about .about_deco_ul .about_deco_li-05::after {
    width: 1.168vw;
    height: 1.168vw;
  }
}
main #about .about_deco_ul .about_deco_li-02 {
  top: 16vw;
  left: 22vw;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-02 {
    top: 23vw;
    left: 7vw;
  }
}
main #about .about_deco_ul .about_deco_li-04 {
  top: 40vw;
  right: 9vw;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-04 {
    top: 20vw;
    left: 48vw;
  }
}
main #about .about_deco_ul .about_deco_li-05 {
  width: 2.865vw;
  height: 2.604vw;
  top: 76.5vw;
  left: 20.5vw;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-05 {
    width: 6.542vw;
    height: 5.841vw;
    top: 195vw;
    left: 7vw;
  }
}
main #about .about_deco_ul .about_deco_li-03 {
  width: 2.917vw;
  height: 3.073vw;
  top: 23vw;
  right: 21vw;
}
main #about .about_deco_ul .about_deco_li-03::before {
  content: "";
  width: 2.708vw;
  height: 2.656vw;
  background-image: url(./images/mv_parts-star-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0.6);
  animation: sleepy-twinkle 2s ease-in-out infinite;
}
main #about .about_deco_ul .about_deco_li-03::after {
  content: "";
  width: 0.469vw;
  height: 0.469vw;
  background-image: url(./images/mv_parts-circle-black.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  right: 0;
  animation: circle-move 2s ease-in-out infinite;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-03 {
    width: 6.542vw;
    height: 7.009vw;
    top: 20vw;
    left: auto;
    right: 6vw;
  }
  main #about .about_deco_ul .about_deco_li-03::before {
    width: 6.075vw;
    height: 5.841vw;
  }
  main #about .about_deco_ul .about_deco_li-03::after {
    width: 1.168vw;
    height: 1.168vw;
  }
}
main #about .about_deco_ul .about_deco_li-06 {
  width: 2.24vw;
  height: 2.135vw;
  top: 72.5vw;
  right: 32vw;
}
main #about .about_deco_ul .about_deco_li-06::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(./images/mv_parts-star-black.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0.6);
  animation: sleepy-twinkle 2s ease-in-out infinite;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-06 {
    width: 5.14vw;
    height: 4.907vw;
    top: 198vw;
    left: auto;
    right: 6vw;
  }
}
main #about .about_deco_ul .about_deco_li-07,
main #about .about_deco_ul .about_deco_li-08,
main #about .about_deco_ul .about_deco_li-09 {
  width: 6.25vw;
  height: 4.635vw;
}
main #about .about_deco_ul .about_deco_li-07::after,
main #about .about_deco_ul .about_deco_li-08::after,
main #about .about_deco_ul .about_deco_li-09::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(./images/mv_parts-heart-black.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-07,
  main #about .about_deco_ul .about_deco_li-08,
  main #about .about_deco_ul .about_deco_li-09 {
    width: 13.785vw;
    height: 10.28vw;
  }
}
main #about .about_deco_ul .about_deco_li-07 {
  top: 7vw;
  left: 36vw;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-07 {
    top: 8vw;
    left: 21vw;
  }
}
main #about .about_deco_ul .about_deco_li-08 {
  top: 60vw;
  right: 12vw;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-08 {
    display: none;
  }
}
main #about .about_deco_ul .about_deco_li-09 {
  top: 54vw;
  left: 12vw;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-09 {
    top: 201vw;
    left: 23vw;
  }
}
main #about .about_deco_ul .about_deco_li-10,
main #about .about_deco_ul .about_deco_li-11 {
  width: 6.25vw;
  height: 4.635vw;
}
main #about .about_deco_ul .about_deco_li-10::after,
main #about .about_deco_ul .about_deco_li-11::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(./images/mv_parts-heart-pink.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-10,
  main #about .about_deco_ul .about_deco_li-11 {
    width: 13.785vw;
    height: 10.28vw;
  }
}
main #about .about_deco_ul .about_deco_li-10 {
  top: 12vw;
  left: 66vw;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-10 {
    width: 10.981vw;
    height: 8.178vw;
    top: 12vw;
    left: auto;
    right: 17vw;
  }
}
main #about .about_deco_ul .about_deco_li-11 {
  top: 74.5vw;
  left: 40vw;
}
@media screen and (max-width: 767px) {
  main #about .about_deco_ul .about_deco_li-11 {
    top: 195vw;
    left: auto;
    right: 18vw;
  }
}
main #lineup {
  margin-top: 2.865vw;
  margin-bottom: 5.313vw;
}
@media screen and (max-width: 767px) {
  main #lineup {
    margin-top: 10.514vw;
    margin-bottom: 11.682vw;
  }
}
main #lineup .inner-lineup {
  max-width: 68.4vw;
}
@media screen and (max-width: 767px) {
  main #lineup .inner-lineup {
    max-width: 83.879vw;
  }
}
main #lineup .lineup_list_ul {
  grid-template-columns: repeat(5, 1fr);
  gap: 1.25vw 1.51vw;
}
@media screen and (min-width: 767px) {
  main #lineup .lineup_list_ul.active .lineup_list_li {
    opacity: 1;
    transform: translateY(0);
  }
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(11) {
  grid-column: 2;
}
@media screen and (max-width: 767px) {
  main #lineup .lineup_list_ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.336vw;
  }
  main #lineup .lineup_list_ul .lineup_list_li:nth-child(11) {
    grid-column: auto;
  }
}
main #lineup .lineup_list_ul a {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  transition: all 0.4s;
}
@media screen and (min-width: 767px) {
  main #lineup .lineup_list_ul a:hover {
    opacity: 0.6;
  }
}
main #lineup .lineup_list_ul .lineup_list_li {
  font-weight: 800;
  width: 12.292vw;
  aspect-ratio: 237/339;
  background-image: url(./images/lineup_frame.webp);
  background-repeat: no-repeat;
  background-size: contain;
  padding: 1.042vw 0.938vw 1.302vw;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  position: relative;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
main #lineup .lineup_list_ul .lineup_list_li::after {
  content: "";
  width: 1.667vw;
  height: 1.615vw;
  background-image: url(./images/lineup_parth-star-gold.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -1.406vw;
  right: -1.667vw;
  animation: twinkle-rotate-lineup 5s infinite;
}
main #lineup .lineup_list_ul .lineup_list_li.is-visible {
  opacity: 1;
  transform: translateY(0);
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(1) {
  transition-delay: 0.1s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(2) {
  transition-delay: 0.2s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(3) {
  transition-delay: 0.3s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(4) {
  transition-delay: 0.4s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(5) {
  transition-delay: 0.5s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(6) {
  transition-delay: 0.6s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(7) {
  transition-delay: 0.7s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(8) {
  transition-delay: 0.8s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(9) {
  transition-delay: 0.9s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(10) {
  transition-delay: 1s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(11) {
  transition-delay: 1.1s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(12) {
  transition-delay: 1.2s;
}
main #lineup .lineup_list_ul .lineup_list_li:nth-child(13) {
  transition-delay: 1.3s;
}
@media screen and (max-width: 767px) {
  main #lineup .lineup_list_ul .lineup_list_li {
    transition-delay: 0s !important;
  }
  main #lineup .lineup_list_ul .lineup_list_li:nth-child(2n) {
    transition-delay: 0.15s !important;
  }
}
main #lineup .lineup_list_ul .lineup_list_li.star_no::after {
  content: none;
}
@media screen and (max-width: 767px) {
  main #lineup .lineup_list_ul .lineup_list_li {
    width: 40.888vw;
    height: 58.411vw;
    padding: 2.57vw 2.57vw 3.738vw;
  }
  main #lineup .lineup_list_ul .lineup_list_li::after {
    width: 5.374vw;
    height: 5.14vw;
    bottom: -3.738vw;
    right: -3.738vw;
  }
  main #lineup .lineup_list_ul .lineup_list_li.star_no::after {
    content: "";
  }
  main #lineup .lineup_list_ul .lineup_list_li:nth-of-type(2n)::after, main #lineup .lineup_list_ul .lineup_list_li:last-of-type::after {
    content: none;
  }
}
main #lineup .lineup_list_ul .lineup_list_img {
  border: 1px solid #a19153;
  border-radius: 4px;
  overflow: hidden;
}
main #lineup .lineup_list_ul .lineup_list_name {
  font-size: 0.9vw;
  line-height: 1.28;
  margin-top: 0.521vw;
}
@media screen and (max-width: 767px) {
  main #lineup .lineup_list_ul .lineup_list_name {
    font-size: 3.1vw;
    margin-top: 2.336vw;
  }
}
main #lineup .lineup_list_ul .lineup_list_name span {
  font-size: 0.7vw;
}
@media screen and (max-width: 767px) {
  main #lineup .lineup_list_ul .lineup_list_name span {
    font-size: 2.5vw;
  }
}
main #lineup .lineup_list_ul .lineup_list_info {
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
}
main #lineup .lineup_list_ul .lineup_list_info-type {
  font-size: 0.729vw;
  color: #ffffff;
  width: 3.177vw;
  height: 1.354vw;
  background-color: #a19153;
  border-radius: 0.677vw;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  main #lineup .lineup_list_ul .lineup_list_info-type {
    font-size: 2.336vw;
    width: 10.514vw;
    height: 4.439vw;
    border-radius: 3.037vw;
  }
}
main #lineup .lineup_list_ul .lineup_list_info-price {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  font-size: 1.042vw;
}
main #lineup .lineup_list_ul .lineup_list_info-price span {
  font-size: 0.521vw;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  main #lineup .lineup_list_ul .lineup_list_info-price {
    font-size: 3.271vw;
  }
  main #lineup .lineup_list_ul .lineup_list_info-price span {
    font-size: 1.402vw;
  }
}
main #benefits {
  margin-bottom: 5.729vw;
}
@media screen and (max-width: 767px) {
  main #benefits {
    margin-bottom: 8.178vw;
  }
}
main #benefits .inner-benefits {
  max-width: 67.396vw;
}
@media screen and (max-width: 767px) {
  main #benefits .inner-benefits {
    max-width: 83.879vw;
  }
}
main #benefits .benefits_box {
  width: 100%;
  padding: 4.167vw 6.51vw 3.646vw;
}
main #benefits .benefits_box figure {
  width: 38.958vw;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  main #benefits .benefits_box {
    padding: 10.514vw 4.206vw 8.178vw;
  }
  main #benefits .benefits_box figure {
    width: 100%;
  }
}
main #benefits .benefits_txt {
  font-size: 1.458vw;
  line-height: 1.42;
  letter-spacing: 0.04em;
  text-align: center;
  margin-top: 2.083vw;
}
main #benefits .benefits_txt span {
  font-size: 1.667vw;
  position: relative;
  z-index: 0;
}
main #benefits .benefits_txt span::after {
  content: "";
  width: 100%;
  height: 1.146vw;
  background-color: #89772e;
  opacity: 0.14;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  transition: all ease-out 0.4s;
}
@media screen and (max-width: 767px) {
  main #benefits .benefits_txt {
    font-size: 4.206vw;
    line-height: 1.66;
    letter-spacing: 0.016em;
    margin-top: 4.673vw;
  }
  main #benefits .benefits_txt span {
    font-size: 4.673vw;
  }
  main #benefits .benefits_txt span::after {
    height: 3.505vw;
  }
}
main #benefits .benefits_date {
  font-size: 1.875vw;
  justify-content: center;
  align-items: center;
  margin-top: 2.083vw;
}
main #benefits .benefits_date .frame-title {
  font-size: 1.354vw;
  width: 7.969vw;
  height: 2.708vw;
  background-image: url(./images/frame-sales.webp);
  background-repeat: no-repeat;
  background-size: contain;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 1.198vw;
  padding-top: 0.1vw;
}
@media screen and (max-width: 767px) {
  main #benefits .benefits_date {
    font-size: 5.14vw;
    flex-direction: column;
    margin-top: 8.178vw;
  }
  main #benefits .benefits_date .frame-title {
    font-size: 4.673vw;
    width: 29.206vw;
    height: 10.047vw;
    margin-right: 0;
    margin-bottom: 3.505vw;
    padding-top: 0.5vw;
  }
}
main #benefits .benefits_note_ul {
  font-size: 0.833vw;
  font-weight: 500;
  line-height: 1.25;
  margin-top: 3.125vw;
}
main #benefits .benefits_note_ul .benefits_note_li {
  position: relative;
}
main #benefits .benefits_note_ul .benefits_note_li::before {
  content: "※";
}
@media screen and (max-width: 767px) {
  main #benefits .benefits_note_ul {
    font-size: 2.804vw;
    line-height: 1.5;
    margin-top: 10.514vw;
  }
  main #benefits .benefits_note_ul .benefits_note_li {
    text-indent: -1em;
    padding-left: 1em;
  }
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits {
  position: absolute;
  z-index: -1;
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits::before {
  content: "";
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-01 {
  width: 5.365vw;
  height: 9.323vw;
  top: 24vw;
  right: 3vw;
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-01::before {
  background-image: url(./images/benefits_deco-01.webp);
}
@media screen and (max-width: 767px) {
  main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-01 {
    width: 10.28vw;
    height: 19.626vw;
    top: 104vw;
    left: 5vw;
    right: auto;
  }
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-02 {
  width: 6.719vw;
  height: 11.875vw;
  top: 32vw;
  left: 2vw;
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-02::before {
  background-image: url(./images/benefits_deco-02.webp);
}
@media screen and (max-width: 767px) {
  main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-02 {
    width: 23.832vw;
    height: 20.794vw;
    top: 101vw;
    left: auto;
    right: -6vw;
  }
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-03 {
  width: 8.906vw;
  height: 8.073vw;
  top: 1vw;
  left: 1vw;
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-03::before {
  background-image: url(./images/benefits_deco-03.webp);
}
@media screen and (max-width: 767px) {
  main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-03 {
    width: 17.056vw;
    height: 15.421vw;
    top: 60vw;
    left: auto;
    right: 2vw;
  }
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-04 {
  width: 11.927vw;
  height: 11.771vw;
  top: 0;
  right: 0;
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-04::before {
  background-image: url(./images/benefits_deco-04.webp);
}
@media screen and (max-width: 767px) {
  main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-04 {
    width: 22.664vw;
    height: 22.43vw;
    top: 55vw;
    left: 0;
    right: auto;
  }
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-05 {
  width: 21.719vw;
  height: 11.458vw;
  bottom: 2vw;
  right: 2vw;
}
main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-05::before {
  background-image: url(./images/benefits_deco-05.webp);
}
@media screen and (max-width: 767px) {
  main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-05 {
    width: 34.112vw;
    height: 19.626vw;
    top: 1vw;
    bottom: auto;
    right: 5vw;
  }
  main #benefits .frame_deco_ul-benefits .frame_deco_li-benefits-05::before {
    background-image: url(./images/sp/benefits_deco-05.webp);
  }
}
main .back_yellow {
  background-image: url(./images/shop_bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  padding-top: 10vw;
  position: relative;
  z-index: 0;
}
main .back_yellow::before {
  content: "";
  width: 100%;
  height: 9.792vw;
  background-image: url(./images/ribbon-01.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -0.99vw;
  left: 0;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  main .back_yellow {
    background-image: url(./images/sp/shop_bg.png);
    padding-top: 16vw;
  }
  main .back_yellow::before {
    height: 9.813vw;
    top: -0.99vw;
  }
}
@media screen and (max-width: 767px) {
  main .back_yellow .back_yellow_deco_ul {
    display: none;
  }
}
main .back_yellow .back_yellow_deco_ul .back_yellow_deco_li {
  position: absolute;
  z-index: -1;
}
main .back_yellow .back_yellow_deco_ul .back_yellow_deco_li-01 {
  width: 28.229vw;
  top: 4vw;
  right: 0;
}
main .back_yellow .back_yellow_deco_ul .back_yellow_deco_li-02 {
  width: 31.042vw;
  top: 71vw;
  left: 4vw;
}
main .back_yellow .back_yellow_deco_ul .back_yellow_deco_li-03 {
  width: 26.719vw;
  bottom: 0;
  right: 3vw;
}
main #exhibition .inner-exhibition {
  max-width: 67.396vw;
}
@media screen and (max-width: 767px) {
  main #exhibition .inner-exhibition {
    max-width: 83.879vw;
  }
}
main #exhibition .exhibition_box {
  width: 100%;
  padding: 3.906vw 8.854vw 6.25vw;
  text-align: center;
}
main #exhibition .exhibition_box figure {
  width: 38.958vw;
  border: 1px solid #a19153;
  padding: 0.521vw;
  margin: 0 auto;
  margin-top: 2.083vw;
}
@media screen and (max-width: 767px) {
  main #exhibition .exhibition_box {
    padding: 9.346vw 3.505vw 11.682vw;
  }
  main #exhibition .exhibition_box figure {
    width: 100%;
    padding: 1.168vw;
    margin-top: 2.336vw;
  }
}
main #exhibition .exhibition_contents {
  font-size: 1.25vw;
  line-height: 1.41;
  margin-top: 2.604vw;
}
main #exhibition .exhibition_contents:first-of-type {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  main #exhibition .exhibition_contents {
    font-size: 3.738vw;
    line-height: 1.5;
    margin-top: 10.514vw;
  }
}
main #exhibition .les_ul {
  grid-template-columns: repeat(3, 1fr);
  gap: 1.563vw 0;
}
@media screen and (max-width: 767px) {
  main #exhibition .les_ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 2.336vw;
  }
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition {
  position: absolute;
  z-index: -1;
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition::before {
  content: "";
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-01 {
  width: 6.354vw;
  height: 10.677vw;
  top: 32vw;
  right: 3vw;
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-01::before {
  background-image: url(./images/exhibition_deco-01.webp);
}
@media screen and (max-width: 767px) {
  main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-01 {
    width: 10.28vw;
    height: 17.29vw;
    top: 124vw;
    right: 4vw;
  }
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-02 {
  width: 7.396vw;
  height: 13.542vw;
  bottom: 2vw;
  left: 2vw;
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-02::before {
  background-image: url(./images/exhibition_deco-02.webp);
}
@media screen and (max-width: 767px) {
  main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-02 {
    width: 11.916vw;
    height: 20.794vw;
    bottom: 20vw;
    left: 4vw;
  }
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-03 {
  width: 6.615vw;
  height: 8.073vw;
  top: 1vw;
  right: 1vw;
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-03::before {
  background-image: url(./images/exhibition_deco-03.webp);
}
@media screen and (max-width: 767px) {
  main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-03 {
    width: 34.579vw;
    height: 20.794vw;
    top: auto;
    bottom: 2vw;
    right: 2vw;
  }
  main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-03::before {
    background-image: url(./images/sp/exhibition_deco-03.webp);
  }
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-04 {
  width: 12.917vw;
  height: 12.812vw;
  bottom: 0;
  right: 0;
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-04::before {
  background-image: url(./images/exhibition_deco-04.webp);
}
@media screen and (max-width: 767px) {
  main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-04 {
    width: 22.664vw;
    height: 22.43vw;
    top: 0vw;
    right: 0vw;
    bottom: auto;
  }
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-05 {
  width: 15.99vw;
  height: 7.24vw;
  top: 1vw;
  left: 1.5vw;
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-05::before {
  background-image: url(./images/exhibition_deco-05.webp);
}
@media screen and (max-width: 767px) {
  main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-05 {
    width: 34.112vw;
    height: 19.626vw;
    top: 2vw;
    left: 2.5vw;
  }
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-06 {
  width: 8.906vw;
  height: 8.073vw;
  top: 33vw;
  left: 1vw;
}
main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-06::before {
  background-image: url(./images/exhibition_deco-06.webp);
}
@media screen and (max-width: 767px) {
  main #exhibition .frame_deco_ul-exhibition .frame_deco_li-exhibition-06 {
    width: 17.056vw;
    height: 15.421vw;
    top: 89vw;
    left: 1vw;
  }
}
main #shop {
  margin-top: 4.948vw;
  padding-bottom: 7.135vw;
}
@media screen and (max-width: 767px) {
  main #shop {
    margin-top: 15.2vw;
    padding-bottom: 14.019vw;
  }
}
main #shop .inner-shop {
  max-width: 67.396vw;
}
@media screen and (max-width: 767px) {
  main #shop .inner-shop {
    max-width: 83.879vw;
  }
}
main #shop .shop_box {
  width: 100%;
  padding: 85px 8.854vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  main #shop .shop_box {
    padding: 9.346vw 50px 11.682vw;
  }
}
main #shop .shop_ul {
  font-size: 1.25vw;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.563vw 0;
}
@media screen and (max-width: 767px) {
  main #shop .shop_ul {
    font-size: 4vw;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.336vw;
  }
}
main #shop .frame_deco_ul-shop .frame_deco_li-shop {
  position: absolute;
  z-index: -1;
}
main #shop .frame_deco_ul-shop .frame_deco_li-shop::before {
  content: "";
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
main #shop .frame_deco_ul-shop .frame_deco_li-shop-01 {
  width: 5.677vw;
  height: 9.844vw;
  top: 2vw;
  right: 1vw;
}
main #shop .frame_deco_ul-shop .frame_deco_li-shop-01::before {
  background-image: url(./images/shop_deco-01.webp);
}
@media screen and (max-width: 767px) {
  main #shop .frame_deco_ul-shop .frame_deco_li-shop-01 {
    width: 10.28vw;
    height: 17.29vw;
    top: 2vw;
    right: 3vw;
  }
}
main #shop .frame_deco_ul-shop .frame_deco_li-shop-02 {
  width: 5.833vw;
  height: 10.313vw;
  bottom: 2vw;
  left: 2vw;
}
main #shop .frame_deco_ul-shop .frame_deco_li-shop-02::before {
  background-image: url(./images/shop_deco-02.webp);
}
@media screen and (max-width: 767px) {
  main #shop .frame_deco_ul-shop .frame_deco_li-shop-02 {
    width: 11.916vw;
    height: 20.794vw;
    bottom: 5vw;
    left: 3vw;
  }
}
main #shop .frame_deco_ul-shop .frame_deco_li-shop-03 {
  width: 8.906vw;
  height: 8.073vw;
  top: 1vw;
  left: 1vw;
}
main #shop .frame_deco_ul-shop .frame_deco_li-shop-03::before {
  background-image: url(./images/shop_deco-03.webp);
}
@media screen and (max-width: 767px) {
  main #shop .frame_deco_ul-shop .frame_deco_li-shop-03 {
    width: 17.056vw;
    height: 15.421vw;
    top: 1vw;
    left: 1vw;
  }
}
main #shop .frame_deco_ul-shop .frame_deco_li-shop-04 {
  width: 12.812vw;
  height: 10.729vw;
  bottom: -1vw;
  right: -1vw;
}
main #shop .frame_deco_ul-shop .frame_deco_li-shop-04::before {
  background-image: url(./images/shop_deco-04.webp);
}
@media screen and (max-width: 767px) {
  main #shop .frame_deco_ul-shop .frame_deco_li-shop-04 {
    width: 22.664vw;
    height: 22.43vw;
    bottom: -1vw;
    right: -1vw;
  }
  main #shop .frame_deco_ul-shop .frame_deco_li-shop-04::before {
    background-image: url(./images/sp/shop_deco-04.webp);
  }
}
main #shop .onlinestore_box {
  text-align: center;
  margin-top: 2.969vw;
}
@media screen and (max-width: 767px) {
  main #shop .onlinestore_box {
    margin-top: 6.075vw;
  }
}
main #shop .onlinestore_txt {
  font-size: 1.563vw;
}
@media screen and (max-width: 767px) {
  main #shop .onlinestore_txt {
    font-size: 4.673vw;
  }
}
main #shop .onlinestore_link {
  display: inline-block;
  position: relative;
}
main #shop .onlinestore_link::before, main #shop .onlinestore_link::after {
  content: "";
  width: 5.573vw;
  height: 2.76vw;
  background-image: url(./images/shop_parts-star.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -1.042vw;
}
main #shop .onlinestore_link::before {
  left: -9.375vw;
}
main #shop .onlinestore_link::after {
  right: -9.375vw;
  transform: scale(-1, 1);
}
@media screen and (max-width: 767px) {
  main #shop .onlinestore_link::before, main #shop .onlinestore_link::after {
    width: 11.215vw;
    height: 7.944vw;
    bottom: -12vw;
  }
  main #shop .onlinestore_link::before {
    left: 8vw;
  }
  main #shop .onlinestore_link::after {
    right: 8vw;
  }
}
main #shop .link_onlinestore {
  display: block;
  width: 27.448vw;
  margin: 0 auto;
  margin-top: 1.823vw;
  transition: all 0.4s;
}
@media screen and (min-width: 767px) {
  main #shop .link_onlinestore:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 767px) {
  main #shop .link_onlinestore {
    width: 75.467vw;
    margin-top: 2.336vw;
  }
}
main #shop .onlinestore_date {
  font-size: 1.875vw;
  justify-content: center;
  align-items: center;
  margin-top: 2.083vw;
}
main #shop .onlinestore_date .frame-title {
  font-size: 1.354vw;
  width: 7.969vw;
  height: 2.708vw;
  background-image: url(./images/frame-sales.webp);
  background-repeat: no-repeat;
  background-size: contain;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 1.198vw;
  padding-top: 0.1vw;
}
@media screen and (max-width: 767px) {
  main #shop .onlinestore_date {
    font-size: 5.14vw;
    flex-direction: column;
    margin-top: 3.505vw;
  }
  main #shop .onlinestore_date .frame-title {
    font-size: 4.673vw;
    width: 29.206vw;
    height: 10.047vw;
    margin-right: 0;
    margin-bottom: 3.505vw;
    padding-top: 0.5vw;
  }
}

footer {
  width: 100%;
  height: 25.781vw;
  font-size: 1.042vw;
  background-image: url(./images/footer_back.webp?20260128);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  text-align: center;
  color: #ffffff;
  padding-top: 13.5vw;
  padding-bottom: 6.146vw;
  margin-top: -7.2vw;
  position: relative;
}
footer .link_ap {
  display: block;
  width: 6.615vw;
  margin: 0 auto;
  margin-top: 2.083vw;
  opacity: 1;
  transition: all 0.4s;
}
@media screen and (min-width: 767px) {
  footer .link_ap:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 767px) {
  footer {
    height: 40.654vw;
    font-size: 3.271vw;
    background-image: url(./images/sp/footer_back.webp?20260128);
    padding-top: 16vw;
    padding-bottom: 11.682vw;
  }
  footer .link_ap {
    width: 24.766vw;
    margin-top: 3.037vw;
  }
}
footer .btn_top_ul {
  width: 3.646vw;
  height: 9.896vw;
  position: absolute;
  top: 3.5vw;
  right: 12.708vw;
  display: flex;
  justify-content: space-between;
  cursor: pointer;
}
@media screen and (min-width: 767px) {
  footer .btn_top_ul:hover .btn_top_li.btn_top {
    height: 7.594vw;
  }
  footer .btn_top_ul:hover .btn_top_li.btn_top::before {
    transform: translateX(-50%) translateY(-3px);
  }
}
footer .btn_top_ul .btn_top_li {
  width: 0.104vw;
  height: 6.927vw;
  background-image: radial-gradient(circle, #ffffff 1px, transparent 1px);
  background-position: left top;
  background-repeat: repeat-y;
  background-size: 0.104vw 0.885vw;
  position: relative;
}
footer .btn_top_ul .btn_top_li::before {
  content: "";
  width: 1.719vw;
  height: 1.667vw;
  background-image: url(./images/mv_parts-star-pink.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -1.823vw;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  animation: blinking 1s ease-in-out infinite alternate;
}
footer .btn_top_ul .btn_top_li.btn_top {
  height: 8.594vw;
  transition: all ease-out 0.4s;
}
footer .btn_top_ul .btn_top_li.btn_top::before {
  width: 3.542vw;
  height: 1.094vw;
  background-image: url(./images/btn_top.webp);
  bottom: -1.823vw;
  animation: none;
  opacity: 1;
  transition: all ease-out 0.4s;
}
footer .btn_top_ul .btn_top_li:nth-of-type(2) {
  height: 4.948vw;
}
footer .btn_top_ul .btn_top_li:nth-of-type(2)::before {
  filter: brightness(0) invert(1);
  animation: blinking 1s ease-in-out infinite 1s alternate;
}
@media screen and (max-width: 767px) {
  footer .btn_top_ul {
    width: 7.71vw;
    height: 35.047vw;
    top: 3vw;
    right: 10vw;
  }
  footer .btn_top_ul .btn_top_li {
    width: 0.234vw;
    height: 14.019vw;
    background-image: radial-gradient(circle, #ffffff 0.5px, transparent 0.5px);
    background-size: 0.234vw 2.103vw;
  }
  footer .btn_top_ul .btn_top_li::before {
    width: 3.738vw;
    height: 3.738vw;
    bottom: -4.673vw;
  }
  footer .btn_top_ul .btn_top_li.btn_top {
    height: 16.355vw;
  }
  footer .btn_top_ul .btn_top_li.btn_top::before {
    width: 7.71vw;
    height: 2.336vw;
    bottom: -3.505vw;
  }
  footer .btn_top_ul .btn_top_li:nth-of-type(2) {
    height: 8.178vw;
  }
}

.modal-box {
  position: fixed;
  width: 100%;
  height: 100%;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  background-color: rgba(255, 255, 255, 0.01);
  top: 0;
  left: 0;
  z-index: 100;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.modal-box .modal-content {
  width: 90%;
  max-width: 76.563vw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-content {
    max-width: 83.879vw;
    height: 100%;
    padding: 20.093vw 0 9.346vw;
  }
}
.modal-box .modal-content::-webkit-scrollbar {
  display: none;
  -webkit-appearance: none;
}
.modal-box .modal-body {
  width: 47.396vw;
  height: 31.771vw;
  margin: 0 auto;
  padding: 2.865vw 3.385vw;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body {
    width: 100%;
    height: auto;
    padding: 2.336vw 3.738vw 6.776vw;
  }
}
.modal-box .modal-body_inner {
  height: 100%;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner {
    height: auto;
    flex-direction: column;
  }
}
.modal-box .modal-body_inner-img {
  width: 55%;
  padding-top: 0;
  position: relative;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner-img {
    width: 100%;
    padding-bottom: 1.168vw;
  }
}
.modal-box .modal-body_inner-img .modal-goods_info-type {
  font-size: 0.938vw;
  letter-spacing: 0.08em;
  color: #ffffff;
  width: 3.906vw;
  height: 1.563vw;
  background-color: #a19153;
  border-radius: 1.042vw;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 1.563vw;
  left: 0.781vw;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner-img .modal-goods_info-type {
    font-size: 3.271vw;
    width: 13.785vw;
    height: 5.841vw;
    border-radius: 4.673vw;
    top: 5.841vw;
    left: 3.505vw;
  }
}
.modal-box .modal-body_inner-txt {
  width: 43%;
  padding-top: 0.26vw;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner-txt {
    width: 100%;
    padding-top: 0;
  }
}
.modal-box .modal-body_inner-txt_inner {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.modal-box .modal-body_inner-txt h2 {
  font-size: 1.563vw;
  line-height: 1.25;
  text-align: left;
  font-weight: 800;
  padding-bottom: 0.521vw;
  margin-bottom: 0;
  border-bottom: 1px solid #a19153;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner-txt h2 {
    font-size: 4.673vw;
    padding-bottom: 1.869vw;
  }
}
.modal-box .modal-body_inner-txt h2 span {
  font-size: 1.2vw;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner-txt h2 span {
    font-size: 3.5vw;
  }
}
.modal-box .modal-body_inner-txt .modal-goods_info_txt {
  font-size: 0.833vw;
  line-height: 1.55;
  font-weight: 700;
  margin-top: 0.781vw;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner-txt .modal-goods_info_txt {
    font-size: 2.804vw;
    margin-top: 1.869vw;
    width: 98%;
    height: 21.729vw;
  }
}
.modal-box .modal-body_inner-txt .modal-goods_info_ul {
  font-size: 0.729vw;
  font-weight: 700;
  margin-top: 1.823vw;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner-txt .modal-goods_info_ul {
    font-size: 2.336vw;
    margin-top: 2.336vw;
  }
}
.modal-box .modal-body_inner-txt .modal-goods_price_about {
  font-size: 1.9vw;
  font-weight: 700;
  justify-content: flex-end;
  align-items: center;
  margin-top: auto;
}
.modal-box .modal-body_inner-txt .modal-goods_price_about + .modal-goods_price_about {
  margin-top: 1vw;
}
.modal-box .modal-body_inner-txt .modal-goods_price_about p {
  font-size: 0.842vw;
}
.modal-box .modal-body_inner-txt .modal-goods_price_about span {
  font-size: 0.842vw;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner-txt .modal-goods_price_about {
    font-size: 7.009vw;
    margin-top: 8.178vw;
  }
  .modal-box .modal-body_inner-txt .modal-goods_price_about p,
  .modal-box .modal-body_inner-txt .modal-goods_price_about span {
    font-size: 2.804vw;
  }
}
.modal-box .modal-body_inner .goods_detail_img {
  background-image: url(./images/modal_frame-img.webp);
  background-repeat: no-repeat;
  background-size: contain;
  padding: 1.458vw 0.677vw 0.677vw 0.625vw;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner .goods_detail_img {
    padding: 4.907vw 1.402vw 1.168vw 1.402vw;
  }
}
.modal-box .modal-body_inner .goods_detail_img .slider_goodsimg_inner {
  height: 20.625vw;
  display: flex;
  justify-content: center;
  align-items: center;
}
.modal-box .modal-body_inner .goods_detail_img .slider_goodsimg_inner img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner .goods_detail_img .slider_goodsimg_inner {
    height: 73.598vw;
  }
}
.modal-box .modal-body_inner .slider-thumbnail {
  width: 100%;
  margin-top: 0.885vw;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner .slider-thumbnail {
    margin-top: 2.336vw;
  }
}
.modal-box .modal-body_inner .slider-thumbnail .swiper-wrapper {
  gap: 0.417vw;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner .slider-thumbnail .swiper-wrapper {
    gap: 1.869vw;
  }
}
.modal-box .modal-body_inner .slider-thumbnail .swiper-slide {
  width: 1.771vw !important;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner .slider-thumbnail .swiper-slide {
    width: 25px !important;
  }
}
.modal-box .modal-body_inner .slider-thumbnail .swiper-slide .thum_illust_box {
  height: 1.771vw;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ffffff;
  border: 1px solid transparent;
  position: relative;
  z-index: 0;
  transition: all 0.3s;
}
.modal-box .modal-body_inner .slider-thumbnail .swiper-slide .thum_illust_box img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner .slider-thumbnail .swiper-slide .thum_illust_box {
    height: 5.841vw;
  }
}
@media screen and (min-width: 767px) {
  .modal-box .modal-body_inner .slider-thumbnail .swiper-slide .thum_illust_box:hover {
    border: 1px solid #a19153;
  }
}
.modal-box .modal-body_inner .slider-thumbnail .swiper-slide.swiper-slide-thumb-active .thum_illust_box {
  border: 1px solid #a19153;
}
@media screen and (max-width: 767px) {
  .modal-box .modal-body_inner .slider-thumbnail .swiper-slide.swiper-slide-thumb-active .thum_illust_box {
    border: 1px solid #a19153;
  }
}
.modal-box .close {
  width: 1.406vw;
  height: 1.406vw;
  position: absolute;
  top: -2.344vw;
  right: 0;
  z-index: 1;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .modal-box .close {
    width: 7.009vw;
    height: 7.009vw;
    top: -9.7vw;
    right: 0;
  }
}
.modal-box .close::before, .modal-box .close::after {
  content: "";
  width: 140%;
  height: 2px;
  background-color: #a19153;
  position: absolute;
  top: 50%;
  left: 50%;
}
@media screen and (max-width: 767px) {
  .modal-box .close::before, .modal-box .close::after {
    height: 2px;
  }
}
.modal-box .close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.modal-box .close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.modal-box .prev,
.modal-box .next {
  width: 1.615vw;
  aspect-ratio: 32/67;
  border-radius: 50%;
  display: block;
  position: absolute;
  top: 50%;
  transform: translateX(0%) translateY(-50%);
  z-index: 2;
  transition: all 0.4s;
  cursor: pointer;
}
.modal-box .prev::before,
.modal-box .next::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(./images/modal_arrow.svg) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.4s;
}
@media screen and (max-width: 767px) {
  .modal-box .prev,
  .modal-box .next {
    width: 6%;
    top: 55%;
  }
}
.modal-box .prev {
  left: -3.125vw;
}
.modal-box .prev::before {
  left: 45%;
}
@media screen and (min-width: 767px) {
  .modal-box .prev:hover {
    transform: translateX(-20%) translateY(-50%);
  }
}
@media screen and (max-width: 767px) {
  .modal-box .prev {
    left: -6vw;
  }
  .modal-box .prev::before {
    left: 50%;
  }
}
.modal-box .next {
  right: -3.125vw;
}
.modal-box .next::before {
  left: 55%;
  transform: translate(-50%, -50%) scale(-1, 1);
}
@media screen and (min-width: 767px) {
  .modal-box .next:hover {
    transform: translateX(20%) translateY(-50%);
  }
}
@media screen and (max-width: 767px) {
  .modal-box .next {
    right: -6vw;
  }
  .modal-box .next::before {
    left: 50%;
  }
}

.simplebar-scrollbar::before {
  background-color: #a19153 !important;
  left: 3px !important;
  right: 3px !important;
  opacity: 0.25 !important;
}

.simplebar-track.simplebar-vertical {
  right: -5px !important;
}/*# sourceMappingURL=style.css.map */