@charset "UTF-8";
/*
Theme Name: ORCSEN_OFFICIAL_WP
Theme URI: https://www.123hon.com/orcsen/
Author: 
Author URI: 
Description: 
Version: 1.0
*/
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  list-style: none;
}
*:before, *:after {
  box-sizing: border-box;
}
*:focus {
  outline: none;
}

@font-face {
  font-family: "UnifrakturCook-Bold";
  src: url("../fonts/UnifrakturCook-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
}
html {
  font-size: 62.5%;
  height: 100%;
  min-height: 100%;
  -webkit-overflow-scrolling: touch;
  position: relative;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

body {
  height: 100%;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.25vw;
  color: #ffffff;
  background: url(../images/bg_child.webp) repeat-y #000000 center top/cover;
}
body.home, body.error404 {
  background: #311102;
}
body.home #fireParticles, body.error404 #fireParticles {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: -2;
  pointer-events: none;
}
body.single-post::before, body.blog::before, body.category::before {
  content: "";
  width: 34.635vw;
  height: 32.708vw;
  background: url(../images/bg_mark.webp) no-repeat;
  background-size: contain;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  mix-blend-mode: multiply;
}
@media screen and (max-width: 767px) {
  body.single-post::before, body.blog::before, body.category::before {
    width: 81.776vw;
    height: 77.103vw;
  }
}
body img {
  max-width: 100%;
  width: 100%;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 3.738vw;
  }
  body.child_page::before, body.child_page::after {
    content: none;
  }
  body img {
    pointer-events: none;
  }
}

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

.flex {
  display: flex;
}

.grid {
  display: grid;
}

a {
  display: block;
}

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

h2 {
  width: 35.313vw;
  height: 7.031vw;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  background: url(../images/title_bg.webp) no-repeat center top/contain;
}
@media screen and (max-width: 767px) {
  h2 {
    width: 83.879vw;
    height: 17.056vw;
  }
}
h2 img {
  margin-top: 0.938vw;
}
@media screen and (max-width: 767px) {
  h2 img {
    margin-top: 2.103vw;
  }
}
h2 .sub_title {
  display: block;
  width: 12.135vw;
  margin: 0 auto;
  text-align: center;
  margin-top: 1.042vw;
  font-size: 1.563vw;
  line-height: 1;
  font-weight: 900;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  h2 .sub_title {
    width: 28.972vw;
    margin-top: 2.57vw;
    font-size: 3.738vw;
  }
}
h2 .sub_title::before, h2 .sub_title::after {
  content: "";
  width: 1.823vw;
  height: 0.313vw;
  background: url(../images/title_sub_line.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  h2 .sub_title::before, h2 .sub_title::after {
    width: 4.439vw;
    height: 0.701vw;
  }
}
h2 .sub_title::before {
  left: 0;
}
h2 .sub_title::after {
  right: 0;
}
h2.h2-title, h2.h2-title-page {
  transform: scale(0, 1);
  transition: all 0.4s;
}
h2.h2-title img, h2.h2-title-page img {
  opacity: 0;
  transform: translateY(20%);
  transition: all 0.6s;
}
h2.h2-title .sub_title, h2.h2-title-page .sub_title {
  opacity: 0;
  transform: translateY(30%);
  transition: all 0.6s;
}
h2.h2-title.active, h2.h2-title-page.active {
  transform: scale(1, 1);
}
h2.h2-title.active img, h2.h2-title-page.active img {
  opacity: 1;
  transform: translateY(0%);
  transition-delay: 0.3s;
}
h2.h2-title.active .sub_title, h2.h2-title-page.active .sub_title {
  opacity: 1;
  transform: translateY(0%);
  transition-delay: 0.3s;
}
h2.h2-news img {
  width: 10.938vw;
}
@media screen and (max-width: 767px) {
  h2.h2-news img {
    width: 25.935vw;
  }
}
h2.h2-about img {
  width: 13.385vw;
}
@media screen and (max-width: 767px) {
  h2.h2-about img {
    width: 31.776vw;
  }
}
h2.h2-books img {
  width: 13.906vw;
}
@media screen and (max-width: 767px) {
  h2.h2-books img {
    width: 33.178vw;
  }
}
h2.h2-goods img {
  width: 14.271vw;
}
@media screen and (max-width: 767px) {
  h2.h2-goods img {
    width: 34.112vw;
  }
}
h2.h2-link {
  width: auto;
  height: auto;
  font-size: 1.563vw;
  padding: 0.625vw 0;
  font-weight: 900;
  text-align: center;
  position: relative;
  z-index: 0;
  background: none;
}
h2.h2-link::after {
  content: "";
  width: 19.635vw;
  height: 3.385vw;
  background-image: url(../images/text_relaced.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  h2.h2-link {
    font-size: 4.673vw;
    padding: 2.57vw 0;
  }
  h2.h2-link::after {
    width: 62.15vw;
    height: 10.28vw;
  }
}
h2.h2-mv {
  width: 17.5vw;
  height: auto;
  background: none;
  position: fixed;
  top: 0;
  left: 0;
  display: block;
  z-index: 2;
  mix-blend-mode: exclusion;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  h2.h2-mv {
    width: 16.355vw;
    left: -3.271vw;
  }
}
h2.h2-mv img {
  margin-top: 0;
}
h2.h2-single {
  font-size: 1.979vw;
  font-weight: 900;
  line-height: 1.63;
  display: block;
  width: 103%;
  height: auto;
  background: none;
}
@media screen and (max-width: 767px) {
  h2.h2-single {
    font-size: 5.607vw;
    line-height: 1.25;
  }
}

h3.h3-about {
  width: 36.875vw;
  margin: 2.604vw auto 2.083vw;
}
@media screen and (max-width: 767px) {
  h3.h3-about {
    width: 83.645vw;
    margin: 8.879vw auto 4.673vw;
  }
}
h3.h3-books {
  font-size: 1.563vw;
  padding: 0.729vw 0;
  font-weight: 900;
  text-align: center;
  position: relative;
  z-index: 0;
}
h3.h3-books::after {
  content: "";
  width: 15.052vw;
  height: 3.229vw;
  background-image: url(../images/text_novel.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  h3.h3-books {
    font-size: 4.673vw;
    padding: 2.103vw 0;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  h3.h3-books::after {
    width: 47.664vw;
    height: 10.28vw;
  }
}
h3.h3-books.h3-books-comic::after {
  content: "";
  width: 14.896vw;
  height: 3.438vw;
  background-image: url(../images/text_comic.webp);
}
@media screen and (max-width: 767px) {
  h3.h3-books.h3-books-comic::after {
    width: 46.963vw;
    height: 10.748vw;
  }
}

.single_inner h3 {
  font-size: 1.771vw;
  font-weight: 900;
  border-left: 9px solid #960000;
  padding-left: 0.365vw;
  margin-bottom: 1.667vw;
}
@media screen and (max-width: 767px) {
  .single_inner h3 {
    font-size: 4.673vw;
    border-left: 6px solid #960000;
    padding-left: 1.168vw;
    margin-bottom: 3.271vw;
  }
}

.btn_more {
  width: 25.365vw;
  height: 6.094vw;
  font-size: 1.563vw;
  line-height: 1.2;
  font-weight: 900;
  text-align: center;
  margin: 0 auto;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
}
@media screen and (min-width: 767px) {
  .btn_more:hover::before {
    opacity: 1;
  }
  .btn_more:hover::after {
    opacity: 0;
  }
}
.btn_more::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../images/btn_viewmore_hover.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  opacity: 0;
  transition: all 0.4s;
}
.btn_more::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../images/btn_viewmore.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -2;
  transition: all 0.4s;
}
@media screen and (max-width: 767px) {
  .btn_more {
    width: 82.477vw;
    height: 17.991vw;
    font-size: 4.673vw;
  }
  .btn_more::after {
    background-image: url(../images/sp/btn_viewmore.webp);
  }
}

.btn_back {
  width: 25.365vw;
  height: 6.094vw;
  font-size: 1.563vw;
  line-height: 1.2;
  font-weight: 900;
  text-align: center;
  margin: 0 auto;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
}
@media screen and (min-width: 767px) {
  .btn_back:hover::before {
    opacity: 1;
  }
  .btn_back:hover::after {
    opacity: 0;
  }
}
.btn_back::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(../images/btn_back_hover.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  opacity: 0;
  transition: all 0.4s;
}
.btn_back::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(../images/btn_back.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -2;
  transition: all 0.4s;
}
@media screen and (max-width: 767px) {
  .btn_back {
    width: 82.477vw;
    height: 17.991vw;
    font-size: 4.673vw;
  }
  .btn_back::after {
    background-image: url(../images/sp/btn_back.webp);
  }
}

.btn_shopping {
  width: 20.729vw;
  height: 5.885vw;
  font-size: 1.354vw;
  line-height: 1.2;
  font-weight: 900;
  text-align: center;
  margin: 0 auto;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
}
@media screen and (min-width: 767px) {
  .btn_shopping:hover::before {
    opacity: 1;
  }
  .btn_shopping:hover::after {
    opacity: 0;
  }
}
.btn_shopping::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(../images/btn_shopping_hover.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  opacity: 0;
  transition: all 0.4s;
}
.btn_shopping::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(../images/btn_shopping.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -2;
  transition: all 0.4s;
}
@media screen and (max-width: 767px) {
  .btn_shopping {
    width: 40.187vw;
    height: 13.551vw;
    font-size: 3.738vw;
  }
  .btn_shopping::after {
    background-image: url(../images/sp/btn_shopping.webp);
  }
  .btn_shopping.btn_shopping_top {
    width: 63.785vw;
    height: 13.551vw;
    margin-top: 3.505vw;
  }
  .btn_shopping.btn_shopping_top::after {
    background-image: url(../images/sp/btn_shopping_top.webp);
  }
}

.btn_trial_reading {
  width: 25.26vw;
  height: 4.948vw;
  font-size: 1.563vw;
  line-height: 1.2;
  font-weight: 900;
  margin: 0 auto;
  margin-top: 1.354vw;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(../images/books_btn_line.webp), url(../images/books_btn_line.webp);
  background-position: center top, center bottom;
  background-size: contain, contain;
  background-repeat: no-repeat, no-repeat;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .btn_trial_reading {
    width: 63.785vw;
    height: 12.383vw;
    font-size: 3.738vw;
    margin-top: 3.972vw;
    border-bottom: 1px solid;
    border-top: 1px solid;
    background-image: none;
  }
}
.btn_trial_reading::before, .btn_trial_reading::after {
  content: "";
  width: 2.708vw;
  height: 1.875vw;
  background: url(../images/icon_deco.svg) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
}
@media screen and (max-width: 767px) {
  .btn_trial_reading::before, .btn_trial_reading::after {
    width: 6.776vw;
    height: 4.907vw;
    opacity: 1;
  }
}
.btn_trial_reading::before {
  left: 0;
  transition: left 0.4s, opacity 0.4s;
}
@media screen and (max-width: 767px) {
  .btn_trial_reading::before {
    left: 2.57vw;
  }
}
.btn_trial_reading::after {
  right: 0;
  transform: translateY(-50%) scale(-1, 1);
  transition: right 0.4s, opacity 0.4s;
}
@media screen and (max-width: 767px) {
  .btn_trial_reading::after {
    right: 2.57vw;
  }
}
.btn_trial_reading .btn_trial_reading_back {
  width: 21.719vw;
  height: 100%;
  background-color: rgba(150, 0, 0, 0.2);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  opacity: 0;
  transition: opacity 0.4s;
}
@media screen and (max-width: 767px) {
  .btn_trial_reading .btn_trial_reading_back {
    width: 100%;
    opacity: 1;
  }
}
@media screen and (min-width: 767px) {
  .btn_trial_reading:hover::before, .btn_trial_reading:hover::after {
    opacity: 1;
  }
  .btn_trial_reading:hover::before {
    left: 1.042vw;
  }
  .btn_trial_reading:hover::after {
    right: 1.042vw;
  }
  .btn_trial_reading:hover .btn_trial_reading_back {
    opacity: 1;
  }
}

.category {
  gap: 0.521vw 0.521vw;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .category {
    gap: 1.336vw 1.336vw;
  }
}

.sigle_category {
  gap: 0 0.521vw;
}
@media screen and (max-width: 767px) {
  .sigle_category {
    gap: 0 2.336vw;
  }
}

.icon {
  color: #960000;
  background-color: rgba(255, 255, 255, 0.5);
  border: 1px solid #960000;
  font-size: 0.938vw;
  letter-spacing: 0.06em;
  text-align: center;
  display: inline-block;
  padding: 0.104vw 0.417vw;
}
@media screen and (max-width: 767px) {
  .icon {
    font-size: 3.271vw;
    padding: 0.234vw 2.804vw;
  }
}

.new_icon {
  width: 4.948vw;
  height: 5.469vw;
  position: absolute;
  top: -0.417vw;
  left: -0.417vw;
  z-index: 2;
  transform: scale(1, 0);
  transform-origin: center top;
  transition: all 0.4s;
}
.new_icon.active {
  transform: scale(1, 1);
}
.new_icon.active::before {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .new_icon {
    width: 14.486vw;
    height: 15.888vw;
    top: -1.636vw;
    left: -1.636vw;
    filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.5));
  }
}
.new_icon::before {
  content: "";
  width: 3.646vw;
  height: 2.552vw;
  background: url(../images/text_new.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 0.99vw;
  left: 50%;
  transform: translate(-50%, 0%);
  opacity: 0;
  z-index: 1;
  transition: all 0.4s 0.1s;
}
@media screen and (max-width: 767px) {
  .new_icon::before {
    width: 10.28vw;
    height: 7.243vw;
    top: 3.037vw;
  }
}
.new_icon::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../images/bg_new.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}

.sort_box {
  width: 100%;
  max-width: 65.625vw;
  margin: 0 auto;
  margin-top: 2.292vw;
  font-weight: 900;
  border-bottom: 0.156vw solid #ffffff;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  position: relative;
  z-index: 10;
  /* デフォルトの select を非表示 */
}
@media screen and (max-width: 767px) {
  .sort_box {
    width: 91.121vw;
    max-width: none;
    margin-top: 5.841vw;
    border-bottom: 2px solid #ffffff;
    justify-content: center;
  }
}
.sort_box .custom-select-container {
  display: flex;
  gap: 0 1.927vw;
}
@media screen and (max-width: 767px) {
  .sort_box .custom-select-container {
    gap: 0 9.346vw;
  }
}
.sort_box .custom-select {
  position: relative;
  width: 7.9vw;
}
@media screen and (max-width: 767px) {
  .sort_box .custom-select {
    width: 19.626vw;
  }
}
.sort_box .custom-select[data-target=sortOrder] {
  width: 7.8vw;
}
@media screen and (max-width: 767px) {
  .sort_box .custom-select[data-target=sortOrder] {
    width: 19.159vw;
  }
}
.sort_box .selected {
  font-size: 1.25vw;
  line-height: 1.21;
  color: #ffffff;
  margin: -0.2vw 0 0.7vw;
  padding-left: 1.563vw;
  padding-right: 1vw;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  cursor: pointer;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .sort_box .selected {
    font-size: 3.271vw;
    margin: 0 0 1.869vw;
    padding-left: 3.037vw;
  }
}
.sort_box .custom-select[data-target=sortOrder] .selected::before {
  content: ""; /* カスタム矢印 */
  width: 1.042vw;
  height: 1.042vw;
  background: url(../images/icon_sort.svg) no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 55%;
  transform: translateY(-50%);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .sort_box .custom-select[data-target=sortOrder] .selected::before {
    width: 1.869vw;
    height: 2.57vw;
  }
}
.sort_box .custom-select[data-target=filterCategory] .selected::before {
  content: ""; /* カスタム矢印 */
  width: 0.833vw;
  height: 1.042vw;
  background: url(../images/icon_select.svg) no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 60%;
  transform: translateY(-50%);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .sort_box .custom-select[data-target=filterCategory] .selected::before {
    width: 2.336vw;
    height: 2.336vw;
  }
}
.sort_box .selected::after {
  content: ""; /* カスタム矢印 */
  width: 0.781vw;
  height: 0.677vw;
  background-color: #ffffff;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
  position: absolute;
  right: 0;
  top: 60%;
  transform: translateY(-50%);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .sort_box .selected::after {
    width: 1.869vw;
    height: 1.636vw;
  }
}
.sort_box .select-options {
  font-size: 0.99vw;
  font-weight: 900;
  color: #000000;
  position: absolute;
  width: 8.438vw;
  background: white;
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: -0.4vw;
  opacity: 0;
  transform: translateY(-10%);
  visibility: hidden;
  pointer-events: none;
  z-index: 10;
  transition: all 0.4s;
}
@media screen and (max-width: 767px) {
  .sort_box .select-options {
    font-size: 3.271vw;
    width: 53.972vw;
  }
}
.sort_box .select-options.active {
  opacity: 1;
  transform: translateY(0%);
  visibility: visible;
  pointer-events: auto;
}
@media screen and (max-width: 767px) {
  .sort_box .custom-select[data-target=sortOrder] .select-options {
    left: -3.336vw;
  }
  .sort_box .custom-select[data-target=filterCategory] .select-options {
    right: -2.336vw;
  }
}
.sort_box .select-options li {
  padding: 10px;
  cursor: pointer;
  border-bottom: 1px solid #b9b9b9;
  transition: all 0.3s;
}
.sort_box .select-options li:last-of-type {
  border-bottom: none;
}
@media screen and (min-width: 767px) {
  .sort_box .select-options li:hover {
    background: #ebebeb;
  }
}
.sort_box .hidden-select {
  display: none;
}

.transformY-Move {
  opacity: 0;
  transform: translateY(5%);
  transition: all 0.4s;
}
.transformY-Move.active {
  opacity: 1;
  transform: translateY(0%);
}

#load {
  background: #000000;
  position: fixed;
  height: 100svh;
  width: 100%;
  z-index: 999;
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
  transition: 0.2s;
  transition-delay: 2s;
}
#load.load_active {
  animation: view 1s ease-in-out 0.6s forwards;
}
@keyframes view {
  0% {
    -webkit-backdrop-filter: blur(20px);
            backdrop-filter: blur(20px);
    background: #000000;
  }
  1% {
    -webkit-backdrop-filter: blur(20px);
            backdrop-filter: blur(20px);
    background: transparent;
  }
  100% {
    -webkit-backdrop-filter: blur(0px);
            backdrop-filter: blur(0px);
    background: transparent;
    pointer-events: none;
  }
}

/*ホーム用-h1*/
.home header h1 {
  width: 34.323vw;
  padding-top: 0.313vw;
  margin-left: -0.729vw;
}
@media screen and (max-width: 767px) {
  .home header h1 {
    width: 64.486vw;
    padding-top: 0;
    margin-top: -1.402vw;
    margin-left: -2.336vw;
  }
}

header {
  /*ハンバーガーメニュー*/
  /*ハンバーガーメニュー*/
}
header h1 {
  width: 10.938vw;
  padding-top: 1.094vw;
  margin-left: 1.406vw;
  position: absolute;
  z-index: 88;
}
@media screen and (max-width: 767px) {
  header h1 {
    width: 30.14vw;
    padding-top: 2.57vw;
    margin-left: 0.935vw;
  }
}
header .openbtn {
  width: 6.094vw;
  height: 8.021vw;
  position: fixed;
  top: 1.979vw;
  right: 2.083vw;
  z-index: 99;
  cursor: pointer;
  transform: translateY(0);
  opacity: 1;
  transition: all 0.3s;
}
@media screen and (max-width: 767px) {
  header .openbtn {
    width: 14.486vw;
    height: 17.523vw;
    top: 2.103vw;
    right: 3.505vw;
  }
}
@media screen and (min-width: 767px) {
  header .openbtn:hover {
    transform: translateY(-5%);
  }
}
header .openbtn.active {
  opacity: 0;
  pointer-events: none;
}
header .hamburger-menu {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 98;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s;
}
header .hamburger-menu::-webkit-scrollbar {
  display: none;
}
header .hamburger-menu.panelactive {
  opacity: 1;
  visibility: visible;
}
header .hamburger-menu.panelactive .menu-content {
  transform: translateY(0%);
  transition-delay: 0.3s;
}
@media screen and (max-width: 767px) {
  header .hamburger-menu.panelactive .menu-content {
    transform: translate(50%, 0%);
  }
}
header .hamburger-menu .menu-content {
  background: url(../images/bg_menu.webp) no-repeat center bottom/100%;
  width: 23.021vw;
  height: 40.26vw;
  position: absolute;
  top: 0;
  right: 2.552vw;
  transform: translateY(-100%);
  transition: all 0.4s;
}
header .hamburger-menu .menu-content .menu-content-inner {
  width: 73.4%;
  margin: 3.7vw auto 0;
}
@media screen and (max-width: 767px) {
  header .hamburger-menu .menu-content {
    background: url(../images/sp/bg_menu.webp) no-repeat center bottom/100%;
    width: 86.916vw;
    height: 167.991vw;
    right: 50%;
    transform: translate(50%, -100%);
  }
  header .hamburger-menu .menu-content .menu-content-inner {
    width: 76%;
    margin: 21.495vw auto 0;
  }
}
header .hamburger-menu .menu_box .menu_item {
  padding: 0.938vw 0;
  position: relative;
  z-index: 0;
  transition: all 0.3s;
}
@media screen and (max-width: 767px) {
  header .hamburger-menu .menu_box .menu_item {
    padding: 4.673vw 0;
  }
}
header .hamburger-menu .menu_box .menu_item:first-of-type {
  padding-top: 0;
}
header .hamburger-menu .menu_box .menu_item:nth-last-of-type(2) {
  padding-bottom: 2.604vw;
}
@media screen and (max-width: 767px) {
  header .hamburger-menu .menu_box .menu_item:nth-last-of-type(2) {
    padding-bottom: 10.604vw;
  }
}
header .hamburger-menu .menu_box .menu_item:last-of-type {
  padding-top: 2.604vw;
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  header .hamburger-menu .menu_box .menu_item:last-of-type {
    padding-top: 7.604vw;
    text-align: center;
  }
}
header .hamburger-menu .menu_box .menu_item:last-of-type::before {
  content: "";
  width: 100%;
  height: 0.469vw;
  background: url(../images/menu_line.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  header .hamburger-menu .menu_box .menu_item:last-of-type::before {
    height: 1.869vw;
  }
}
header .hamburger-menu .menu_box .menu_item .menu_txt {
  font-size: 0.99vw;
  font-weight: 900;
  color: #ffffff;
  line-height: 1;
  padding-left: 3.021vw;
  transform: translateX(0%);
  transition: all 0.3s;
}
header .hamburger-menu .menu_box .menu_item .menu_txt img {
  display: block;
  width: auto;
  height: 2.083vw;
  margin-bottom: 0.365vw;
  filter: brightness(0) invert(1);
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  header .hamburger-menu .menu_box .menu_item .menu_txt {
    font-size: 3.738vw;
    padding-left: 11.449vw;
  }
  header .hamburger-menu .menu_box .menu_item .menu_txt img {
    height: 7.944vw;
    margin-bottom: 1.168vw;
  }
}
header .hamburger-menu .menu_box .menu_item a {
  position: relative;
  z-index: 0;
}
header .hamburger-menu .menu_box .menu_item a::after {
  content: "";
  width: 2.292vw;
  height: 2.292vw;
  background: url(../images/icon_star.svg) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%) rotate(0deg);
  filter: brightness(0) invert(1);
  transition: all 0.5s;
}
@media screen and (max-width: 767px) {
  header .hamburger-menu .menu_box .menu_item a::after {
    width: 8.645vw;
    height: 8.178vw;
  }
}
@media screen and (min-width: 767px) {
  header .hamburger-menu .menu_box .menu_item:hover .menu_txt {
    transform: translateX(4%);
  }
  header .hamburger-menu .menu_box .menu_item:hover a::after {
    animation: Rotate_Move 1.5s forwards 1;
  }
}
header .hamburger-menu .menu_box .menu_item.menu_item_top img {
  height: 2.396vw;
}
@media screen and (max-width: 767px) {
  header .hamburger-menu .menu_box .menu_item.menu_item_top img {
    height: 9.112vw;
  }
}
header .hamburger-menu .menu_box .menu_item.menu_item_123 a {
  transition: all 0.4s;
}
header .hamburger-menu .menu_box .menu_item.menu_item_123 a::after {
  content: none;
}
@media screen and (min-width: 767px) {
  header .hamburger-menu .menu_box .menu_item.menu_item_123 a:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 767px) {
  header .hamburger-menu .menu_box .menu_item.menu_item_123 img {
    width: 81%;
  }
}
header .hamburger-menu .closebtn {
  width: 1.354vw;
  height: 1.354vw;
  position: fixed;
  top: 1.51vw;
  right: 2.292vw;
  z-index: 99;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  header .hamburger-menu .closebtn {
    width: 5.607vw;
    height: 5.607vw;
    top: 7.944vw;
    right: 8.645vw;
  }
}
@media screen and (min-width: 767px) {
  header .hamburger-menu .closebtn:hover span {
    opacity: 1;
  }
}
header .hamburger-menu .closebtn span {
  width: 100%;
  height: 0.104vw;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  opacity: 0.6;
  transition: all 0.4s;
}
@media screen and (max-width: 767px) {
  header .hamburger-menu .closebtn span {
    height: 1px;
    opacity: 1;
  }
}
header .hamburger-menu .closebtn span:first-of-type {
  transform: translate(-50%, -50%) rotate(-45deg);
}
header .hamburger-menu .closebtn span:nth-of-type(2) {
  transform: translate(-50%, -50%) rotate(45deg);
}
header .hamburger-menu .menu-content-back {
  width: 100%;
  height: 100%;
  background: rgba(38, 14, 10, 0.75);
  position: fixed;
  z-index: -1;
}

main {
  opacity: 0;
  transition: all 1s;
}
main.active {
  opacity: 1;
}
main.index_main {
  background: url(../images/bg_topmain_02.webp) no-repeat center top -17.188vw/contain;
}
@media screen and (max-width: 767px) {
  main.index_main {
    background: url(../images/sp/bg_topmain_02.webp) no-repeat center top -31.075vw/contain;
  }
}
main .bg_topmain {
  background: url(../images/bg_topmain_new.webp) repeat-y #000000 center top/contain;
  position: relative;
  z-index: 1;
}
main .news-list li {
  position: relative;
  margin-bottom: 1.563vw;
}
@media screen and (max-width: 767px) {
  main .news-list li {
    margin-bottom: 5.607vw;
  }
}
main .news-list li:last-of-type {
  margin-bottom: 0;
}
main .news-list li::before {
  content: "";
  width: 2.708vw;
  height: 1.875vw;
  background: url(../images/icon_deco.svg) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: -3.229vw;
  transform: translate(-15%, -50%);
  filter: drop-shadow(0 0 6px #ff0000);
  opacity: 0;
  transition: all 0.3s;
}
@media screen and (min-width: 767px) {
  main .news-list li:hover::before {
    transform: translate(0%, -50%);
    opacity: 1;
  }
  main .news-list li:hover .sub_option .date {
    filter: drop-shadow(0 0 6px #ff0000);
  }
  main .news-list li:hover .news_title {
    filter: drop-shadow(0 0 6px #ff0000);
  }
}
main .news-list li a {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
main .news-list li .new {
  width: 1.354vw;
  margin-right: 0.521vw;
}
@media screen and (max-width: 767px) {
  main .news-list li .new {
    width: 5.374vw;
    margin-right: 2.103vw;
  }
}
main .news-list li .title {
  width: 97%;
}
@media screen and (max-width: 767px) {
  main .news-list li .title {
    width: 91%;
  }
}
main .news-list li .sub_option {
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  main .news-list li .sub_option {
    display: flex;
    flex-wrap: wrap;
    gap: 1.168vw 0;
  }
}
main .news-list li .sub_option .date {
  font-size: 1.146vw;
  margin-right: 0.521vw;
  transition: all 0.4s;
}
@media screen and (max-width: 767px) {
  main .news-list li .sub_option .date {
    font-size: 3.738vw;
    margin-right: 1.402vw;
  }
}
main .news-list li .sub_option .category {
  margin-left: 0.521vw;
}
@media screen and (max-width: 767px) {
  main .news-list li .sub_option .category {
    margin-left: 1.402vw;
  }
}
main .news-list li .news_title {
  font-size: 1.354vw;
  font-weight: 900;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  transition: all 0.4s;
}
@media screen and (max-width: 767px) {
  main .news-list li .news_title {
    font-size: 4.206vw;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    white-space: normal;
  }
}
main .goods {
  padding-top: 22.917vw;
  margin-bottom: 6.146vw;
  /*スライダー-矢印とページネーション*/
}
@media screen and (max-width: 767px) {
  main .goods {
    padding-top: 26vw;
    margin-bottom: 17.757vw;
  }
  main .goods.active .goods__title {
    transform: scale(1, 1);
  }
  main .goods.active .goods__title img {
    opacity: 1;
    transform: translateY(0%);
    transition-delay: 0.6s;
  }
  main .goods.active .goods__wrapper,
  main .goods.active .goods__more {
    opacity: 1;
    transform: translateY(0%);
    transition-delay: 0.6s;
  }
}
@media screen and (min-width: 767px) {
  main .goods .goods__title.active {
    transform: scale(1, 1);
  }
  main .goods .goods__title.active img {
    opacity: 1;
    transform: translateY(0%);
    transition-delay: 0.6s;
  }
  main .goods .goods__wrapper.active,
  main .goods .goods__more.active {
    opacity: 1;
    transform: translateY(0%);
  }
}
main .goods__title {
  width: 38.438vw;
  height: 9.323vw;
  text-align: center;
  margin: 0 auto;
  padding-top: 1.771vw;
  background: url(../images/bg_title_02.webp) no-repeat center top/100%;
  transform: scale(0, 1);
  transition: all 0.5s;
}
@media screen and (max-width: 767px) {
  main .goods__title {
    width: 84.112vw;
    height: 20.561vw;
    padding-top: 3.972vw;
  }
}
main .goods__title img {
  width: 20.781vw;
  opacity: 0;
  transform: translateY(5%);
  transition: all 0.3s;
}
@media screen and (max-width: 767px) {
  main .goods__title img {
    width: 49.299vw;
  }
}
main .goods__wrapper {
  width: 81.2vw;
  margin: 0 auto;
  margin-top: 2.552vw;
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.5s;
}
@media screen and (max-width: 767px) {
  main .goods__wrapper {
    width: 100%;
    margin-top: 6.542vw;
  }
}
main .goods__slider-wrapper {
  gap: 0 1.406vw;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  main .goods__slider-wrapper {
    gap: normal;
    justify-content: normal;
  }
}
main .goods__slider-slide {
  width: 19.115vw;
}
main .goods__image {
  width: 14.375vw;
  height: 14.375vw;
  background: rgba(255, 255, 255, 0.7);
  margin: 0 auto;
  margin-top: 0.469vw;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
}
main .goods__image::before {
  content: "";
  width: 15.156vw;
  height: 15.156vw;
  background: url(../images/frame_goods.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
main .goods__image_front {
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0;
  transition: all 0.3s;
}
main .goods__image img {
  width: 85%;
  height: 85%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 767px) {
  main .goods__image {
    width: 91%;
    height: 37.85vw;
    margin-top: 0.701vw;
  }
  main .goods__image::before {
    width: 40.187vw;
    height: 40.187vw;
  }
}
main .goods__info {
  width: 100%;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 0.781vw;
}
@media screen and (max-width: 767px) {
  main .goods__info {
    width: 101%;
    margin-top: 2.336vw;
  }
}
main .goods__info-text {
  width: 65%;
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  main .goods__info-text {
    width: 85%;
  }
}
main .goods__release-date {
  font-size: 0.833vw;
}
@media screen and (max-width: 767px) {
  main .goods__release-date {
    font-size: 2.57vw;
  }
}
main .goods__name {
  font-size: 1.042vw;
  line-height: 1.35;
  margin-top: 0.4vw;
  margin-bottom: 0.4vw;
}
@media screen and (max-width: 767px) {
  main .goods__name {
    font-size: 3.271vw;
    line-height: 1.42;
    margin-top: 1.6vw;
    margin-bottom: 1.6vw;
  }
}
main .goods__price {
  font-size: 0.938vw;
}
@media screen and (max-width: 767px) {
  main .goods__price {
    font-size: 3.271vw;
  }
  main .goods__price small {
    width: 78%;
  }
}
main .goods__type {
  width: 3.698vw;
  height: 3.958vw;
  font-size: 0.833vw;
  font-weight: 900;
  color: #ffffff;
  padding-top: 0.521vw;
  text-align: center;
  position: relative;
  z-index: 0;
  text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.5);
}
main .goods__type span:first-of-type {
  display: block;
  margin-bottom: -0.208vw;
}
main .goods__type span:nth-of-type(2) {
  font-size: 1.563vw;
}
main .goods__type::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../images/bg_type.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  main .goods__type {
    width: 9.112vw;
    height: 9.813vw;
    font-size: 2.336vw;
    padding-top: 1.168vw;
  }
  main .goods__type span:first-of-type {
    margin-bottom: -0.234vw;
  }
  main .goods__type span:nth-of-type(2) {
    font-size: 3.505vw;
  }
}
main .goods .swiper-button-prev,
main .goods .swiper-button-next {
  display: none;
}
@media screen and (max-width: 767px) {
  main .goods {
    /* 前へ次への矢印カスタマイズ */
    /* 前へ次への矢印カスタマイズ */
    /* 前への矢印カスタマイズ */
    /* 次への矢印カスタマイズ */
    /* ページネーション位置*/
    /* ページネーションの余白 */
    /* ページネーションのサイズと色 */
    /* 選択されているページネーション */
  }
  main .goods .swiper-button-prev,
  main .goods .swiper-button-next {
    display: flex;
    top: 30%;
    height: 16.121vw;
    width: 6.308vw;
    filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.5));
  }
  main .goods .swiper-button-prev {
    left: 4.673vw;
  }
  main .goods .swiper-button-next {
    right: 4.673vw;
  }
  main .goods .swiper-button-prev::after,
  main .goods .swiper-button-next::after {
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 16.121vw;
    margin: auto;
    width: 6.308vw;
  }
  main .goods .swiper-button-prev::after {
    background-image: url(../images/sp/icon_top_prev.svg);
  }
  main .goods .swiper-button-next::after {
    background-image: url(../images/sp/icon_top_prev.svg);
    transform: scale(-1, 1);
  }
  main .goods .swiper-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    bottom: 4.673vw;
  }
  main .goods .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  main .goods .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 1.636vw 0;
  }
  main .goods .swiper-pagination-bullet {
    background-image: url(../images/icon_star.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-color: transparent;
    height: 4.206vw;
    width: 4.439vw;
    opacity: 1;
  }
  main .goods .swiper-pagination-bullet-active {
    background-image: url(../images/sp/icon_slider_pagination_active.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-color: transparent;
    border: none;
    border-radius: 0;
    height: 6.075vw;
    width: 6.308vw;
  }
}
@media screen and (min-width: 767px) {
  main a:hover .goods__image_front {
    opacity: 1;
  }
}
main #mv {
  height: 79.688vw;
  height: 50.677vw;
  height: 100vh;
  overflow: hidden;
  overflow: scroll;
  overflow-x: hidden;
  position: relative;
  z-index: 0;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
main #mv::-webkit-scrollbar {
  display: none;
}
@media screen and (max-width: 767px) {
  main #mv {
    height: 186.916vw;
    height: 100lvh;
    overflow: hidden;
  }
}
main #mv.active {
  overflow: hidden;
  pointer-events: none;
}
main #mv .guide_scroll {
  width: 8.766vw;
  height: 2.047vw;
  position: fixed;
  top: 45.407vw;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  opacity: 1;
  transition: all 0.5s;
}
@media screen and (max-width: 767px) {
  main #mv .guide_scroll {
    width: 23.364vw;
    height: 5.374vw;
    top: 158vw;
  }
}
main #mv .guide_scroll::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../images/icon_scroll.svg) no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  opacity: 1;
  filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.5));
  animation: Scroll-Move 2s infinite;
}
main #mv .wrapper {
  position: relative;
}
main #mv .mv-wrapper {
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  main #mv .swiper {
    width: 110%;
  }
}
main #mv .swiper-slide img {
  width: 100%;
  height: 100%;
  max-width: none;
  display: block;
  pointer-events: none;
}
main #mv .swiper-horizontal > .swiper-pagination-bullets,
main #mv .swiper-pagination-bullets.swiper-pagination-horizontal,
main #mv .swiper-pagination-custom,
main #mv .swiper-pagination-fraction {
  position: fixed;
  width: 3.385vw;
  top: 15.729vw;
  left: auto;
  right: 2.24vw;
  display: flex;
  flex-direction: column;
  gap: 1.302vw;
  pointer-events: auto;
}
@media screen and (max-width: 767px) {
  main #mv .swiper-horizontal > .swiper-pagination-bullets,
  main #mv .swiper-pagination-bullets.swiper-pagination-horizontal,
  main #mv .swiper-pagination-custom,
  main #mv .swiper-pagination-fraction {
    width: 10.047vw;
    top: 64.953vw;
    right: 4.673vw;
    gap: 4vw;
  }
}
main #mv .circle-pagination {
  position: relative;
  width: 3.6vw;
  height: 3.6vw;
  z-index: 1;
  background-color: transparent;
  text-align: center;
  cursor: pointer;
  opacity: 1;
  display: inline-block;
  outline: none;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 767px) {
  main #mv .circle-pagination {
    width: 10.5vw;
    height: 10.5vw;
    transform: scale(0.9);
  }
}
@media screen and (min-width: 767px) {
  main #mv .circle-pagination .circle-pagination__inner:hover {
    background: rgba(255, 255, 255, 0.5);
  }
}
main #mv .circle-pagination .circle-pagination__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 2.083vw;
  font-family: "UnifrakturCook", cursive;
  font-weight: 700;
  font-style: normal;
  position: relative;
  width: 3.385vw;
  height: 3.385vw;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  transition: all 0.4s;
}
@media screen and (max-width: 767px) {
  main #mv .circle-pagination .circle-pagination__inner {
    font-size: 7.944vw;
    width: 10.5vw;
    height: 10.5vw;
    background: rgba(255, 255, 255, 0.5);
  }
}
main #mv .circle-pagination .circle-pagination__inner span {
  filter: drop-shadow(0px 0px 3px rgb(0, 0, 0));
  transition: all 0.4s;
  z-index: 1;
}
main #mv .circle-pagination .circle-pagination__inner::before {
  content: "";
  width: 3.385vw;
  height: 3.385vw;
  border: 1px solid #c5b85f;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 0;
  filter: drop-shadow(0px 0px 3px rgb(0, 0, 0));
}
@media screen and (max-width: 767px) {
  main #mv .circle-pagination .circle-pagination__inner::before {
    width: 10.5vw;
    height: 10.5vw;
  }
}
main #mv .circle-pagination .circle-pagination__inner::after {
  content: "";
  width: 1.927vw;
  height: 1.823vw;
  background: url(../images/icon_star.svg) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 0;
}
@media screen and (max-width: 767px) {
  main #mv .circle-pagination .circle-pagination__inner::after {
    width: 5.841vw;
    height: 5.607vw;
  }
}
main #mv .circle-pagination__inner svg {
  transform: rotate(-90deg);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-90deg);
}
main #mv .circle-pagination__inner circle {
  fill: transparent;
  stroke: #c5b85f;
  stroke-width: 5;
  animation: Circle-Move 10s linear forwards;
}
@media screen and (max-width: 767px) {
  main #mv .circle-pagination__inner circle {
    stroke-width: 4;
  }
}
main #mv .circle-pagination__svg {
  width: 106%;
  height: auto;
  display: block;
}
main #mv .swiper-pagination-bullet.swiper-pagination-bullet-active {
  transform: scale(1.15);
}
@media screen and (max-width: 767px) {
  main #mv .swiper-pagination-bullet.swiper-pagination-bullet-active {
    transform: scale(1.05);
  }
}
main #mv .circle-pagination:not(.swiper-pagination-bullet-active) .circle-pagination__inner svg {
  /* 非アクティブ時なサークルのsvgは非表示に */
  display: none;
}
main .brand_box_mask {
  width: 100%;
  height: 100lvh;
  -webkit-mask-image: url(../images/mask_img.png);
  mask-image: url(../images/mask_img.png);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: 0% 100%;
  mask-position: 0% 100%;
  -webkit-mask-size: 3200% 100%;
  mask-size: 3200% 100%;
  position: absolute;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 100;
  z-index: 70;
  pointer-events: none;
}
main .brand_box_mask.active {
  animation: cloudsMask 1s steps(29) forwards 1;
  will-change: animation;
}
@media screen and (max-width: 767px) {
  main .brand_box_mask.active {
    animation: cloudsMask 1s steps(29) forwards 1;
  }
}
main .brand_box_mask.active #mv .swiper-horizontal > .swiper-pagination-bullets,
main .brand_box_mask.active #mv .swiper-pagination-bullets.swiper-pagination-horizontal,
main .brand_box_mask.active #mv .swiper-pagination-custom,
main .brand_box_mask.active #mv .swiper-pagination-fraction {
  display: none;
}
main .brand_box_mask.active_movie {
  -webkit-mask-position: 100% 100%;
  mask-position: 100% 100%;
  animation: cloudsMask02 1s steps(29) forwards 1;
  will-change: animation;
}
@media screen and (max-width: 767px) {
  main .brand_box_mask.active_movie {
    animation: cloudsMask02 1s steps(29) forwards 1;
  }
}
main .brand_box_mask.active_repeat {
  visibility: hidden !important;
}
main .brand_box_mask.active_repeat #mv .swiper-horizontal > .swiper-pagination-bullets,
main .brand_box_mask.active_repeat #mv .swiper-pagination-bullets.swiper-pagination-horizontal,
main .brand_box_mask.active_repeat #mv .swiper-pagination-custom,
main .brand_box_mask.active_repeat #mv .swiper-pagination-fraction {
  display: none;
}
main .brand_box_mask.active-on {
  display: none;
}
main .brand_box_mask .mv_bg_black {
  width: 100%;
  height: 100%;
  background: url(../images/bg_child_mask.webp) repeat-y center top/cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
main .brand_box_mask .mv_bg_black::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #762c1c;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  mix-blend-mode: multiply;
}
main #news {
  position: relative;
  z-index: 0;
  height: 58.698vw;
  background: url(../images/bg_news.webp) no-repeat center top -0.156vw/101%;
}
@media screen and (max-width: 767px) {
  main #news {
    height: 158.879vw;
    background: url(../images/sp/bg_news.webp) no-repeat center top -55.439vw/105%;
  }
}
main #news.news-active .transformY-Move {
  opacity: 1;
  transform: translateY(0%);
}
main #news .inner {
  max-width: 61.25vw;
  padding-top: 5.208vw;
  padding-bottom: 5.208vw;
}
@media screen and (max-width: 767px) {
  main #news .inner {
    max-width: 91.121vw;
    padding-top: 10.514vw;
    padding-bottom: 36.682vw;
  }
}
main #news .news-list {
  margin: 2.865vw auto;
}
@media screen and (max-width: 767px) {
  main #news .news-list {
    margin: 9.346vw 0 5.841vw;
    width: 93%;
  }
}
main #movie {
  position: relative;
  margin-top: -8.854vw;
  position: relative;
  z-index: -1;
  /* 前へ次への矢印カスタマイズ */
  /* 前へ次への矢印カスタマイズ */
  /* 前への矢印カスタマイズ */
  /* 次への矢印カスタマイズ */
  /* ページネーション */
  /* プログレスバー */
}
@media screen and (max-width: 767px) {
  main #movie {
    margin-top: -7.009vw;
    position: relative;
    z-index: -1;
  }
}
main #movie .youtube_link_a {
  display: inline-block;
  position: absolute;
  bottom: 0.469vw;
  right: 17.708vw;
}
@media screen and (max-width: 767px) {
  main #movie .youtube_link_a {
    bottom: 0.935vw;
    right: 4.673vw;
  }
}
@media screen and (min-width: 767px) {
  main #movie .youtube_link_a:hover .youtube_link::after {
    width: 100%;
  }
}
main #movie .youtube_link_a .youtube_link {
  position: relative;
  display: inline-block;
}
main #movie .youtube_link_a .youtube_link::after {
  content: "";
  width: 0%;
  height: 1px;
  background-color: #ffffff;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  transition: all 0.4s;
}
main #movie .youtube_link_a .youtube_link span {
  position: relative;
  padding-right: 1.823vw;
}
main #movie .youtube_link_a .youtube_link span::after {
  content: "";
  width: 0.938vw;
  height: 0.938vw;
  background: url(../images/icon_link.svg) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  main #movie .youtube_link_a .youtube_link span {
    font-size: 3.271vw;
    padding-right: 3.168vw;
  }
  main #movie .youtube_link_a .youtube_link span::after {
    width: 1.869vw;
    height: 1.869vw;
  }
}
@media screen and (min-width: 767px) {
  main #movie a:hover .movie-img .movie-img_in::after {
    opacity: 0.3;
  }
}
main #movie .swiper-slide-active .movie-img .movie-img_in {
  opacity: 1;
}
main #movie .swiper-slide-active .movie-img .movie-img_in::before {
  opacity: 1;
}
main #movie .movie-img {
  width: 100%;
  height: 22.969vw;
  margin: 0.521vw 0;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  main #movie .movie-img {
    height: 46.028vw;
    margin: 1.402vw 0;
  }
}
main #movie .movie-img::before {
  content: "";
  width: 41.927vw;
  height: 24.167vw;
  background: url(../images/frame_movie.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
@media screen and (max-width: 767px) {
  main #movie .movie-img::before {
    width: 84.112vw;
    height: 48.364vw;
  }
}
main #movie .movie-img::after {
  content: "";
  width: 42.865vw;
  height: 25.104vw;
  background: url(../images/bg_movie.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  main #movie .movie-img::after {
    width: 86.215vw;
    height: 50.467vw;
  }
}
main #movie .movie-img .movie-img_in {
  position: relative;
  height: inherit;
  z-index: 0;
  opacity: 0.4;
}
main #movie .movie-img .movie-img_in img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
main #movie .movie-img .movie-img_in::before {
  content: "";
  width: 9.063vw;
  height: 9.063vw;
  background: url(../images/icon_movie.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  opacity: 0;
}
@media screen and (max-width: 767px) {
  main #movie .movie-img .movie-img_in::before {
    width: 18.224vw;
    height: 18.224vw;
  }
}
main #movie .movie-img .movie-img_in::after {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  transition: all 0.4s;
}
main #movie .swiper-movie {
  padding-bottom: 4.688vw;
}
@media screen and (max-width: 767px) {
  main #movie .swiper-movie {
    padding-bottom: 9.346vw;
  }
}
main #movie .swiper-button-prev,
main #movie .swiper-button-next {
  height: 2.396vw;
  width: 0.938vw;
  top: auto;
  bottom: 0;
  transition: all 0.4s;
}
@media screen and (max-width: 767px) {
  main #movie .swiper-button-prev,
  main #movie .swiper-button-next {
    height: 4.907vw;
    width: 1.869vw;
  }
}
main #movie .swiper-button-prev {
  left: 18.229vw;
}
@media screen and (max-width: 767px) {
  main #movie .swiper-button-prev {
    left: 38.14vw;
  }
}
@media screen and (min-width: 767px) {
  main #movie .swiper-button-prev:hover {
    transform: translateX(-15%);
  }
}
@media screen and (max-width: 767px) {
  main #movie .swiper-button-prev:active {
    transform: translateX(-15%);
  }
}
main #movie .swiper-button-next {
  right: 71.354vw;
}
@media screen and (max-width: 767px) {
  main #movie .swiper-button-next {
    right: 38vw;
  }
}
@media screen and (min-width: 767px) {
  main #movie .swiper-button-next:hover {
    transform: translateX(15%);
  }
}
@media screen and (max-width: 767px) {
  main #movie .swiper-button-next:active {
    transform: translateX(15%);
  }
}
main #movie .swiper-button-prev::after,
main #movie .swiper-button-next::after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 2.396vw;
  margin: auto;
  width: 0.938vw;
}
@media screen and (max-width: 767px) {
  main #movie .swiper-button-prev::after,
  main #movie .swiper-button-next::after {
    height: 4.907vw;
    width: 1.869vw;
  }
}
main #movie .swiper-button-prev::after,
main #movie .swiper-button-next::after {
  background-image: url(../images/icon_movie_prev.svg);
}
main #movie .swiper-button-next::after {
  transform: scale(-1, 1);
}
main #movie .swiper-horizontal > .swiper-pagination-bullets,
main #movie .swiper-pagination-bullets.swiper-pagination-horizontal,
main #movie .swiper-pagination-custom,
main #movie .swiper-pagination-fraction {
  width: 47%;
  bottom: 0.469vw;
}
@media screen and (max-width: 767px) {
  main #movie .swiper-horizontal > .swiper-pagination-bullets,
  main #movie .swiper-pagination-bullets.swiper-pagination-horizontal,
  main #movie .swiper-pagination-custom,
  main #movie .swiper-pagination-fraction {
    font-size: 3.271vw;
    width: 100%;
    bottom: 0.935vw;
  }
}
main #movie .progressbar {
  width: 100%;
  max-width: 38.021vw;
  height: 0.156vw;
  margin-top: 0.521vw;
  background: #919191;
  border-radius: 0.365vw;
  overflow: hidden;
  position: absolute;
  bottom: 1.2vw;
  left: 50%;
  transform: translateX(-50%);
}
main #movie .progressbar span {
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #ffffff;
  border-radius: 7px;
  transform: scaleX(0);
  transform-origin: left center;
  transition-timing-function: linear;
}
@media screen and (max-width: 767px) {
  main #movie .progressbar {
    display: none;
  }
}
main #about {
  margin-top: 3.646vw;
}
@media screen and (max-width: 767px) {
  main #about {
    margin-top: 16.355vw;
    margin-bottom: 16.355vw;
  }
}
main #about .inner {
  max-width: 66.302vw;
}
@media screen and (max-width: 767px) {
  main #about .inner {
    width: 100%;
    max-width: 91.121vw;
  }
}
main #about .about_txt_box {
  font-size: 1.667vw;
  line-height: 1.62;
  font-weight: 900;
  width: 99%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  main #about .about_txt_box {
    font-size: 3.738vw;
    line-height: 2.18;
    width: 91%;
  }
}
main #about .about_txt_box .about_first_txt {
  position: relative;
}
main #about .about_txt_box .about_first_txt::after {
  content: "";
  width: 73%;
  height: 1px;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  main #about .about_txt_box .about_first_txt::after {
    width: 53%;
  }
}
main #about .about_character_box {
  display: flex;
  justify-content: space-between;
  margin-top: 3.125vw;
  margin-bottom: 4.427vw;
}
@media screen and (max-width: 767px) {
  main #about .about_character_box {
    flex-direction: column;
    align-items: center;
    margin-top: 9.346vw;
    margin-bottom: 9.346vw;
  }
}
main #about .about_character_box .about_character_box_left,
main #about .about_character_box .about_character_box_right {
  width: 49%;
}
@media screen and (max-width: 767px) {
  main #about .about_character_box .about_character_box_left,
  main #about .about_character_box .about_character_box_right {
    width: 96%;
  }
}
main #about .about_character_box .character_img {
  position: relative;
}
main #about .about_character_box .character_img .change_box {
  position: relative;
  width: 26.979vw;
  height: 29.323vw;
}
@media screen and (max-width: 767px) {
  main #about .about_character_box .character_img .change_box {
    width: 83.178vw;
    height: 81.308vw;
    margin: 0 auto;
  }
}
main #about .about_character_box .character_img .change_box img {
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.4s;
}
main #about .about_character_box .character_img .change_box img.chara_img_comic {
  opacity: 0;
  z-index: -1;
}
main #about .about_character_box .character_img .change_box.change img.chara_img_novel {
  opacity: 0;
}
main #about .about_character_box .character_img .change_box.change img.chara_img_comic {
  opacity: 1;
}
main #about .about_character_box .character_img .character_name {
  width: 3.75vw;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  main #about .about_character_box .character_img .character_name {
    width: 18.458vw;
    position: absolute;
    top: 0;
    right: auto;
    left: 1.636vw;
  }
  main #about .about_character_box .character_img .character_name.character_name_02 {
    right: 0;
    left: auto;
  }
}
main #about .about_character_box .character_img .change_btn {
  width: 6.927vw;
  height: 6.927vw;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
  cursor: pointer;
  transition: all 0.4s;
}
main #about .about_character_box .character_img .change_btn.novel_change::before {
  background-image: url(../images/btn_change_novel.webp);
}
main #about .about_character_box .character_img .change_btn.novel_change::after {
  background-image: url(../images/btn_change_novel.webp);
}
main #about .about_character_box .character_img .change_btn.active {
  opacity: 1;
  filter: brightness(1);
  animation: Change_Btn_Action 1s 1 forwards;
  transition: opacity 0.4s, filter 0.3s 0.4s;
  will-change: animation filter;
}
main #about .about_character_box .character_img .change_btn::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../images/btn_change.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  opacity: 1;
}
main #about .about_character_box .character_img .change_btn::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../images/btn_change.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  opacity: 0;
  filter: drop-shadow(0px 0px 6px #ff0000);
  transition: all 0.4s;
}
@media screen and (min-width: 767px) {
  main #about .about_character_box .character_img .change_btn:hover {
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.8));
  }
  main #about .about_character_box .character_img .change_btn:hover::after {
    opacity: 0.5;
  }
}
@media screen and (max-width: 767px) {
  main #about .about_character_box .character_img .change_btn {
    width: 23.598vw;
    height: 23.598vw;
    bottom: -2.336vw;
    right: auto;
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.8));
  }
  main #about .about_character_box .character_img .change_btn::after {
    opacity: 0.5;
  }
  main #about .about_character_box .character_img .change_btn.change_btn_02 {
    right: 0;
  }
}
main #about .about_character_box .character_txt {
  font-size: 1.25vw;
  line-height: 1.66;
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  main #about .about_character_box .character_txt {
    font-size: 3.738vw;
    width: 95%;
    margin: 0 auto;
    margin-top: 2.804vw;
  }
}
main #books .books_about_box {
  display: flex;
  justify-content: space-between;
  width: 65.573vw;
  margin: 0 auto;
  margin-top: 3.125vw;
}
@media screen and (max-width: 767px) {
  main #books .books_about_box {
    flex-direction: column;
    align-items: center;
    width: 100%;
    margin-top: 8.178vw;
    position: relative;
  }
}
main #books .comic_about_box {
  flex-direction: row-reverse;
  margin-top: 2.083vw;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  main #books .comic_about_box {
    flex-direction: column;
    margin-top: 11.682vw;
    margin-bottom: 8.178vw;
  }
}
main #books .books_img {
  width: 60%;
  /*矢印*/
  /* ページネーション */
}
@media screen and (max-width: 767px) {
  main #books .books_img {
    width: 100%;
    margin-top: 30.374vw;
  }
}
main #books .books_img .swiper {
  padding: 0 4vw;
  padding-bottom: 4.688vw;
}
@media screen and (max-width: 767px) {
  main #books .books_img .swiper {
    padding: 0;
    padding-bottom: 10.514vw;
  }
}
main #books .books_img .swiper-slide-active,
main #books .books_img .swiper-slide-next,
main #books .books_img .swiper-slide-prev {
  opacity: 1;
}
main #books .books_img .swiper-slide-active .books-slider-img img {
  opacity: 1;
}
@media screen and (min-width: 767px) {
  main #books .books_img .swiper-slide-active:hover .books-slider-img::before {
    opacity: 0.2;
  }
}
main #books .books_img .books-slider-img {
  position: relative;
  z-index: 0;
}
main #books .books_img .books-slider-img img {
  opacity: 0.5;
  transition: all 0.1s;
}
main #books .books_img .books-slider-img::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  z-index: 1;
  transition: all 0.4s;
}
main #books .books_img .books-slider-img::after {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #000000;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 1;
  z-index: -1;
}
main #books .books_img .swiper-button-prev,
main #books .books_img .swiper-button-next {
  height: 5.99vw;
  width: 2.396vw;
  top: 40%;
  transition: all 0.3s;
}
@media screen and (max-width: 767px) {
  main #books .books_img .swiper-button-prev,
  main #books .books_img .swiper-button-next {
    height: 64.121vw;
    width: 22.308vw;
    top: 16%;
  }
}
main #books .books_img .swiper-button-prev {
  left: 6.771vw;
}
@media screen and (min-width: 767px) {
  main #books .books_img .swiper-button-prev:hover {
    transform: translateX(-15%);
  }
}
@media screen and (max-width: 767px) {
  main #books .books_img .swiper-button-prev {
    left: 0;
  }
  main #books .books_img .swiper-button-prev:active {
    transform: translateX(-15%);
  }
}
main #books .books_img .swiper-button-next {
  right: 6.771vw;
}
@media screen and (min-width: 767px) {
  main #books .books_img .swiper-button-next:hover {
    transform: translateX(15%);
  }
}
@media screen and (max-width: 767px) {
  main #books .books_img .swiper-button-next {
    right: 0;
  }
  main #books .books_img .swiper-button-next:active {
    transform: translateX(15%);
  }
}
main #books .books_img .swiper-button-prev::after,
main #books .books_img .swiper-button-next::after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 5.99vw;
  margin: auto;
  width: 2.396vw;
}
@media screen and (max-width: 767px) {
  main #books .books_img .swiper-button-prev::after,
  main #books .books_img .swiper-button-next::after {
    height: 16.121vw;
    width: 6.308vw;
  }
}
main #books .books_img .swiper-button-prev::after,
main #books .books_img .swiper-button-next::after {
  background-image: url(../images/icon_books_prev.svg);
}
@media screen and (max-width: 767px) {
  main #books .books_img .swiper-button-prev::after,
  main #books .books_img .swiper-button-next::after {
    background-image: url(../images/sp/icon_goodsdetail_prev.svg);
  }
}
main #books .books_img .swiper-button-next::after {
  transform: scale(-1, 1);
}
main #books .books_img .swiper-pagination {
  bottom: 2.604vw;
}
main #books .books_img .swiper-pagination-bullet {
  background-color: transparent;
  background-image: url(../images/icon_star.svg);
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: unset;
  height: 1.458vw;
  opacity: 0.5;
  width: 1.458vw;
  margin: 0 0.677vw;
  filter: brightness(0) invert(1);
  transition: all 0.4s;
}
@media screen and (min-width: 767px) {
  main #books .books_img .swiper-pagination-bullet:hover {
    opacity: 1;
  }
}
@media screen and (max-width: 767px) {
  main #books .books_img .swiper-pagination-bullet {
    height: 4.439vw;
    width: 4.673vw;
    margin: 0 2.103vw;
  }
}
main #books .books_img .swiper-pagination-bullet-active {
  opacity: 1;
}
main #books .books_about {
  width: 39%;
  margin-top: 1.406vw;
}
@media screen and (max-width: 767px) {
  main #books .books_about {
    width: 100%;
    margin-top: 0;
  }
}
main #books .books_info-no {
  margin-top: 3.646vw;
  margin-bottom: 2.344vw;
  position: relative;
  filter: drop-shadow(0px 0px 6px #960000);
  text-align: center;
}
@media screen and (max-width: 767px) {
  main #books .books_info-no {
    width: 83.178vw;
    margin: 0 auto;
    margin-top: 7.009vw;
    margin-bottom: 4.673vw;
    position: absolute;
    top: 11.682vw;
    left: 50%;
    transform: translateX(-50%);
    filter: none;
  }
}
@media screen and (max-width: 767px) {
  main #books .books_info-no::before, main #books .books_info-no::after {
    content: "";
    width: 7.344vw;
    height: 1.458vw;
    background-image: url(../images/deco_left.webp);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 20%;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  main #books .books_info-no::before, main #books .books_info-no::after {
    width: 25.467vw;
    height: 5.14vw;
  }
}
@media screen and (max-width: 767px) {
  main #books .books_info-no::before {
    left: 0;
  }
  main #books .books_info-no::after {
    right: 0;
    transform: translateY(-50%) scale(-1, 1);
  }
}
main #books .books_info-no img {
  width: 5.885vw;
}
@media screen and (max-width: 767px) {
  main #books .books_info-no img {
    width: 10.514vw;
    filter: drop-shadow(0px 0px 6px #960000);
  }
}
main #books .books_info-no span {
  font-family: "UnifrakturCook-Bold", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 6.771vw;
  line-height: 0.2;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  main #books .books_info-no span {
    font-size: 11.215vw;
    filter: drop-shadow(0px 0px 6px #960000);
  }
}
main #goods {
  margin-top: 4.427vw;
  /*スライダー-矢印とページネーション*/
}
@media screen and (max-width: 767px) {
  main #goods {
    margin-top: 16.355vw;
  }
}
main #goods .goods_about {
  max-width: 65.938vw;
  margin: 0 auto;
  padding-top: 3.2vw;
  padding-bottom: 3.2vw;
}
@media screen and (max-width: 767px) {
  main #goods .goods_about {
    max-width: 100%;
    padding-top: 6vw;
    padding-bottom: 7.364vw;
  }
}
main #goods .goods__image {
  width: 20.104vw;
  height: 20.104vw;
  margin: 0.573vw auto;
  margin-top: 0.573vw;
}
main #goods .goods__image::before {
  content: "";
  width: 21.354vw;
  height: 21.354vw;
}
@media screen and (max-width: 767px) {
  main #goods .goods__image {
    width: 94%;
    height: 77.804vw;
    margin: 2.804vw auto;
    margin-top: 2.804vw;
  }
  main #goods .goods__image::before {
    width: 82.944vw;
    height: 82.944vw;
  }
}
main #goods .goods__info {
  margin-top: 1.2vw;
}
@media screen and (max-width: 767px) {
  main #goods .goods__info {
    width: 100%;
    margin-top: 5vw;
  }
}
main #goods .goods__info-text {
  width: 65%;
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  main #goods .goods__info-text {
    width: 85%;
  }
}
main #goods .goods__release-date {
  font-size: 1.146vw;
}
@media screen and (max-width: 767px) {
  main #goods .goods__release-date {
    font-size: 3.738vw;
  }
}
main #goods .goods__name {
  font-size: 1.25vw;
}
@media screen and (max-width: 767px) {
  main #goods .goods__name {
    font-size: 4.206vw;
  }
}
main #goods .goods__price {
  font-size: 1.25vw;
}
@media screen and (max-width: 767px) {
  main #goods .goods__price {
    font-size: 4.206vw;
  }
}
main #goods .goods__type {
  width: 5.26vw;
  height: 5.573vw;
  font-size: 1.25vw;
}
main #goods .goods__type span:nth-of-type(2) {
  font-size: 2.292vw;
}
@media screen and (max-width: 767px) {
  main #goods .goods__type {
    width: 20.327vw;
    height: 21.495vw;
    font-size: 4.907vw;
  }
  main #goods .goods__type span:first-of-type {
    margin-bottom: -1.636vw;
  }
  main #goods .goods__type span:nth-of-type(2) {
    font-size: 9.346vw;
  }
}
main #goods .new_icon {
  width: 5.469vw;
  height: 6.042vw;
  top: -0.729vw;
  left: -0.729vw;
}
@media screen and (max-width: 767px) {
  main #goods .new_icon {
    width: 21.729vw;
    height: 24.065vw;
    top: -2.804vw;
    left: -2.804vw;
  }
}
main #goods .new_icon::before {
  width: 3.854vw;
  height: 2.656vw;
  top: 1.25vw;
}
@media screen and (max-width: 767px) {
  main #goods .new_icon::before {
    width: 15.654vw;
    height: 10.748vw;
    top: 4.206vw;
  }
}
main #goods .swiper-wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 0.677vw;
}
@media screen and (max-width: 767px) {
  main #goods .swiper-wrapper {
    display: flex;
    gap: 0;
  }
}
@media screen and (min-width: 767px) {
  main #goods .swiper-button-prev,
  main #goods .swiper-button-next {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  main #goods {
    /* 前へ次への矢印カスタマイズ */
    /* 前へ次への矢印カスタマイズ */
    /* 前への矢印カスタマイズ */
    /* 次への矢印カスタマイズ */
  }
  main #goods .swiper-button-prev,
  main #goods .swiper-button-next {
    top: 40%;
    height: 16.121vw;
    width: 6.308vw;
    filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.6));
  }
  main #goods .swiper-button-prev {
    left: 4.673vw;
  }
  main #goods .swiper-button-next {
    right: 4.673vw;
  }
  main #goods .swiper-button-prev::after,
  main #goods .swiper-button-next::after {
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 16.121vw;
    margin: auto;
    width: 6.308vw;
  }
  main #goods .swiper-button-prev::after,
  main #goods .swiper-button-next::after {
    background-image: url(../images/sp/icon_goodsdetail_prev.svg);
  }
  main #goods .swiper-button-next::after {
    transform: scale(-1, 1);
  }
}
main #link {
  height: 36.104vw;
  padding-top: 11.979vw;
  background: url(../images/bg_link.webp) no-repeat center top/101%;
  /* 前へ次への矢印カスタマイズ */
  /* 前へ次への矢印カスタマイズ */
  /* 前への矢印カスタマイズ */
  /* 次への矢印カスタマイズ */
}
@media screen and (max-width: 767px) {
  main #link {
    height: 93.374vw;
    padding-top: 37vw;
    background: url(../images/sp/bg_link.webp?20250618) no-repeat center top/100%;
  }
}
main #link .link_slider_box {
  width: 72.24vw;
  margin: 0 auto;
  margin-top: 3.646vw;
  position: relative;
}
@media screen and (max-width: 767px) {
  main #link .link_slider_box {
    width: 100%;
    margin-top: 0;
  }
}
main #link .swiper-link {
  width: 100%;
  max-width: 65.833vw;
}
@media screen and (max-width: 767px) {
  main #link .swiper-link {
    max-width: none;
    margin-top: 5.542vw;
  }
}
main #link .swiper-link a img {
  transition: all 0.4s;
}
@media screen and (min-width: 767px) {
  main #link .swiper-link a:hover img {
    filter: brightness(1.5);
  }
}
main #link .swiper-button-prev,
main #link .swiper-button-next {
  height: 4.271vw;
  width: 1.719vw;
  top: 40%;
  filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.6));
}
@media screen and (max-width: 767px) {
  main #link .swiper-button-prev,
  main #link .swiper-button-next {
    height: 16.121vw;
    width: 6.308vw;
  }
}
main #link .swiper-button-prev {
  left: 0;
}
@media screen and (max-width: 767px) {
  main #link .swiper-button-prev {
    left: 4.673vw;
  }
}
main #link .swiper-button-next {
  right: 0;
}
@media screen and (max-width: 767px) {
  main #link .swiper-button-next {
    right: 4.673vw;
  }
}
main #link .swiper-button-prev::after,
main #link .swiper-button-next::after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 4.271vw;
  margin: auto;
  width: 1.719vw;
}
@media screen and (max-width: 767px) {
  main #link .swiper-button-prev::after,
  main #link .swiper-button-next::after {
    height: 16.121vw;
    width: 6.308vw;
  }
}
main #link .swiper-button-prev::after,
main #link .swiper-button-next::after {
  background-image: url(../images/sp/icon_goodsdetail_prev.svg);
  filter: brightness(0) invert(1);
}
@media screen and (max-width: 767px) {
  main #link .swiper-button-prev::after,
  main #link .swiper-button-next::after {
    filter: brightness(1) invert(0);
  }
}
main #link .swiper-button-next::after {
  transform: scale(-1, 1);
}

main.child_page-main {
  padding-top: 6.771vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main {
    padding-top: 20.327vw;
  }
}
main.child_page-main .transformY-Move {
  transform: translateY(1%);
  transition: all 0.6s;
}
main.child_page-main.active_child .h2-title-page {
  transform: scale(1, 1);
}
main.child_page-main.active_child .h2-title-page img {
  opacity: 1;
  transform: translateY(0%);
  transition-delay: 0.3s;
}
main.child_page-main.active_child .h2-title-page .sub_title {
  opacity: 1;
  transform: translateY(0%);
  transition-delay: 0.3s;
}
main.child_page-main.active_child .new_icon {
  transform: scale(1, 1);
}
main.child_page-main.active_child .new_icon::before {
  opacity: 1;
}
main.child_page-main.active_child .transformY-Move {
  opacity: 1;
  transform: translateY(0%);
}
main.child_page-main.active_child_on .h2-title-page {
  transform: scale(1, 1);
  transition-duration: 0s;
}
main.child_page-main.active_child_on .h2-title-page img {
  opacity: 1;
  transform: translateY(0%);
  transition-duration: 0s;
}
main.child_page-main.active_child_on .h2-title-page .sub_title {
  opacity: 1;
  transform: translateY(0%);
  transition-duration: 0s;
}
main.child_page-main.active_child_on .new_icon {
  transform: scale(1, 1);
  transition-duration: 0s;
}
main.child_page-main.active_child_on .new_icon::before {
  opacity: 1;
  transition-duration: 0s;
}
main.child_page-main.active_child_on .transformY-Move {
  opacity: 1;
  transform: translateY(0%);
  transition-duration: 0s;
}
main.child_page-main .inner {
  max-width: 71.615vw;
  margin-bottom: 5.625vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main .inner {
    width: 100%;
    max-width: 90.888vw;
    margin-bottom: 10.28vw;
  }
}
main.child_page-main .inner.single_inner {
  max-width: 55.26vw;
  margin-top: 2.083vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main .inner.single_inner {
    max-width: 82.944vw;
    margin-top: 0;
  }
}
main.child_page-main .inner.single-goods_inner {
  max-width: 68.438vw;
  margin-top: 1.875vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main .inner.single-goods_inner {
    max-width: 83.645vw;
    margin-top: 0;
  }
}
main.child_page-main .inner.news_inner {
  width: 100%;
  max-width: 65.625vw;
  margin-top: 2.604vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main .inner.news_inner {
    max-width: 89.019vw;
    margin-top: 7.009vw;
  }
}
main.child_page-main .inner.inner-books, main.child_page-main .inner.inner-goods {
  max-width: 65.625vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main .inner.inner-books, main.child_page-main .inner.inner-goods {
    max-width: 90.654vw;
  }
}
main.child_page-main #fireParticles {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: -1;
  pointer-events: none;
}
main.child_page-main .pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 17.188vw;
  gap: 0 1.8vw;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  main.child_page-main .pagination {
    width: 72.897vw;
    margin: 0 auto;
    gap: 0 8.411vw;
  }
}
main.child_page-main .pagination a {
  position: relative;
  z-index: 0;
  transition: all 0.4s;
}
@media screen and (min-width: 767px) {
  main.child_page-main .pagination a:hover {
    color: #a53906;
  }
}
main.child_page-main .pagination .current {
  color: #ff0000;
}
main.child_page-main .pagination .prev,
main.child_page-main .pagination .next {
  width: 1.094vw;
  height: 1.719vw;
  position: relative;
  z-index: 0;
  filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.4));
  transition: all 0.4s;
}
@media screen and (max-width: 767px) {
  main.child_page-main .pagination .prev,
  main.child_page-main .pagination .next {
    width: 4.673vw;
    height: 7.243vw;
  }
}
main.child_page-main .pagination .prev::before,
main.child_page-main .pagination .next::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../images/icon_pagination_prev.svg) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  filter: brightness(0) invert(1);
  transition: all 0.4s;
}
main.child_page-main .pagination .prev::after,
main.child_page-main .pagination .next::after {
  content: none;
}
main.child_page-main .pagination .next::before {
  transform: translate(-50%, -50%) scale(-1, 1);
}
@media screen and (min-width: 767px) {
  main.child_page-main .pagination .next:hover::before {
    filter: brightness(1) invert(0);
  }
}
@media screen and (min-width: 767px) {
  main.child_page-main .pagination .prev:hover::before {
    filter: brightness(1) invert(0);
  }
}
main.child_page-main--news .news-list {
  margin-bottom: 3.646vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--news .news-list {
    margin-bottom: 8.411vw;
  }
}
main.child_page-main--news .news-list li {
  margin-bottom: 3.333vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--news .news-list li {
    margin-bottom: 10.514vw;
  }
}
main.child_page-main--news .news-list li:last-of-type {
  margin-bottom: 0;
}
main.child_page-main--news .news-list li:last-of-type::after {
  content: none;
}
main.child_page-main--news .news-list li::after {
  content: "";
  width: 68.698vw;
  height: 0.104vw;
  background-image: url(../images/news_line.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -1.667vw;
  left: 50%;
  transform: translate(-50%, 0%);
}
@media screen and (max-width: 767px) {
  main.child_page-main--news .news-list li::after {
    width: 100%;
    height: 1px;
    bottom: -5vw;
  }
}
main.child_page-main--news-single .sub_option {
  font-weight: 700;
  margin-bottom: 1.198vw;
}
main.child_page-main--news-single .sub_option .date {
  font-size: 1.146vw;
  margin-right: 0.521vw;
  transition: all 0.4s;
}
main.child_page-main--news-single .sub_option .category {
  margin-left: 0.521vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--news-single .sub_option {
    font-size: 4.206vw;
    margin-bottom: 2.804vw;
  }
  main.child_page-main--news-single .sub_option .date {
    font-size: 5.14vw;
    margin-right: 2.336vw;
  }
  main.child_page-main--news-single .sub_option .category {
    margin-left: 2.336vw;
  }
}
main.child_page-main--news-single .single_txt {
  margin-top: 1.354vw;
  margin-bottom: 3.75vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--news-single .single_txt {
    margin-top: 7.009vw;
    margin-bottom: 0.467vw;
  }
}
main.child_page-main--news-single .single_txt img {
  margin-bottom: 1.042vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--news-single .single_txt img {
    margin-bottom: 1.869vw;
  }
}
main.child_page-main--news-single .single_txt p {
  margin-bottom: 2.083vw;
  font-weight: 500;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  main.child_page-main--news-single .single_txt p {
    margin-bottom: 4.206vw;
  }
}
main.child_page-main--news-single .single_txt a {
  display: inline-block;
  text-decoration: underline;
  transition: all 0.4s;
}
@media screen and (min-width: 767px) {
  main.child_page-main--news-single .single_txt a:hover {
    color: #960000;
  }
}
main.child_page-main--books .books-list {
  grid-template-columns: repeat(3, 1fr);
  gap: 3.229vw 1.823vw;
  margin-top: 3.385vw;
  margin-bottom: 3.385vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--books .books-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 4.907vw 2.804vw;
    margin-top: 7.71vw;
    margin-bottom: 9.112vw;
  }
}
main.child_page-main--books .books-list li .books_info {
  text-align: center;
  margin-bottom: 1.2vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--books .books-list li .books_info {
    margin-bottom: 2.57vw;
  }
}
main.child_page-main--books .books-list li .books_info .books_info-type img {
  filter: brightness(0) invert(1);
}
main.child_page-main--books .books-list li .books_info .books_info-type img.text_novel {
  width: 4.375vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--books .books-list li .books_info .books_info-type img.text_novel {
    width: 10.748vw;
  }
}
main.child_page-main--books .books-list li .books_info .books_info-type img.text_comic {
  width: 4.271vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--books .books-list li .books_info .books_info-type img.text_comic {
    width: 11.215vw;
  }
}
main.child_page-main--books .books-list li .books_info .books_info-no {
  margin-top: 1.042vw;
  position: relative;
}
main.child_page-main--books .books-list li .books_info .books_info-no::before, main.child_page-main--books .books-list li .books_info .books_info-no::after {
  content: "";
  width: 7.344vw;
  height: 1.458vw;
  background-image: url(../images/deco_left.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 20%;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  main.child_page-main--books .books-list li .books_info .books_info-no::before, main.child_page-main--books .books-list li .books_info .books_info-no::after {
    width: 12.383vw;
    height: 2.57vw;
  }
}
main.child_page-main--books .books-list li .books_info .books_info-no::before {
  left: 0;
}
main.child_page-main--books .books-list li .books_info .books_info-no::after {
  right: 0;
  transform: translateY(-50%) scale(-1, 1);
}
main.child_page-main--books .books-list li .books_info .books_info-no img {
  width: 2.083vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--books .books-list li .books_info .books_info-no img {
    width: 5.607vw;
  }
}
main.child_page-main--books .books-list li .books_info .books_info-no span {
  font-family: "UnifrakturCook-Bold", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.292vw;
  line-height: 0.2;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  main.child_page-main--books .books-list li .books_info .books_info-no span {
    font-size: 5.841vw;
  }
}
main.child_page-main--books .books-list li .books_img {
  text-align: center;
  margin-bottom: 1.771vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--books .books-list li .books_img {
    margin-bottom: 3.738vw;
  }
}
main.child_page-main--books .books-list li .books_img img {
  width: 11.51vw;
  height: 16.927vw;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 767px) {
  main.child_page-main--books .books-list li .books_img img {
    width: 32.477vw;
    height: 47.664vw;
  }
}
main.child_page-main--goods .goods-list {
  grid-template-columns: repeat(4, 1fr);
  gap: 2.396vw 1.667vw;
  margin-top: 3.49vw;
  margin-bottom: 3.229vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main--goods .goods-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 3.738vw 1.636vw;
    width: 95%;
    max-width: 84.813vw;
    margin: 0 auto;
    margin-top: 7.944vw;
    margin-bottom: 8.879vw;
  }
}
main.child_page-main #lineup_detail {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3.229vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail {
    flex-direction: column;
    margin-bottom: 4.673vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider {
  width: 59%;
  max-width: 39.896vw;
  /*矢印*/
  /* 前へ次への矢印カスタマイズ */
  /* 前へ次への矢印カスタマイズ */
  /* 次への矢印カスタマイズ */
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider {
    width: 100%;
    max-width: none;
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .lineup_detail_slider_01 {
  position: relative;
  z-index: 0;
  margin: 0.99vw 3.542vw;
  background: rgba(255, 255, 255, 0.5);
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .lineup_detail_slider_01 {
    margin: 2.103vw 2.57vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .lineup_detail_slider_01::before {
  content: "";
  width: 35.104vw;
  height: 35.104vw;
  background: url(../images/frame_goods.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .lineup_detail_slider_01::before {
    width: 82.944vw;
    height: 82.944vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .lineup_detail_slider_01 .lineup_detail_img .slide-inner .slider_goodsimg_inner {
  height: 33.021vw;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
}
main.child_page-main #lineup_detail .lineup_detail_slider .lineup_detail_slider_01 .lineup_detail_img .slide-inner .slider_goodsimg_inner img {
  width: 80%;
  height: 80%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .lineup_detail_slider_01 .lineup_detail_img .slide-inner .slider_goodsimg_inner {
    height: 78vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail {
  width: 86%;
  margin-top: 2.552vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail {
    width: 100%;
    margin-top: 6.308vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper {
  flex-wrap: wrap;
  gap: 0.417vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper {
    gap: 3.505vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper .swiper-slide {
  width: 13.2% !important;
  cursor: pointer;
}
main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper .swiper-slide .thum_illust_box {
  height: 4.583vw;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
  transition: all 0.3s;
}
main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper .swiper-slide .thum_illust_box::before {
  content: "";
  width: 100%;
  height: 100%;
  border: 4px solid transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 0;
  transition: all 0.3s;
}
main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper .swiper-slide .thum_illust_box::after {
  content: "";
  width: 100%;
  height: 100%;
  background: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1);
  z-index: -1;
  transition: all 0.3s;
}
main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper .swiper-slide .thum_illust_box img {
  width: 60%;
  height: 60%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper .swiper-slide .thum_illust_box {
    height: 10.981vw;
  }
}
@media screen and (min-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper .swiper-slide .thum_illust_box:hover::before {
    border: 4px solid #960000;
  }
  main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper .swiper-slide .thum_illust_box:hover::after {
    transform: translate(-50%, -50%) scale(0.85);
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper .swiper-slide.swiper-slide-thumb-active .thum_illust_box::before {
  border: 0.208vw solid #960000;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper .swiper-slide.swiper-slide-thumb-active .thum_illust_box::before {
    border: 1px solid #960000;
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .slider-thumbnail .swiper-wrapper .swiper-slide.swiper-slide-thumb-active .thum_illust_box::after {
  transform: translate(-50%, -50%) scale(0.85);
}
main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-prev,
main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-next {
  height: 7.448vw;
  width: 1.771vw;
  top: 40%;
  filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.4));
  transition: all 0.3s;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-prev,
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-next {
    height: 16.121vw;
    width: 6.308vw;
    top: 45%;
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-prev {
  left: -3.646vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-prev {
    left: -5.841vw;
  }
}
@media screen and (min-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-prev:hover {
    transform: translateX(-15%);
  }
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-prev:active {
    transform: translateX(-15%);
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-next {
  right: -3.646vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-next {
    right: -5.841vw;
  }
}
@media screen and (min-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-next:hover {
    transform: translateX(15%);
  }
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-next:active {
    transform: translateX(15%);
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-prev:after,
main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-next:after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 7.448vw;
  margin: auto;
  width: 1.771vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-prev:after,
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-next:after {
    height: 16.121vw;
    width: 6.308vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-prev:after {
  background-image: url(../images/icon_goodsdetail_prev.svg);
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-prev:after {
    background-image: url(../images/sp/icon_goodsdetail_prev.svg);
  }
}
main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-next:after {
  background-image: url(../images/icon_goodsdetail_prev.svg);
  transform: scale(-1, 1);
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_slider .swiper-button-next:after {
    background-image: url(../images/sp/icon_goodsdetail_prev.svg);
  }
}
main.child_page-main #lineup_detail .lineup_detail_about {
  width: 40%;
  max-width: 27.083vw;
  font-weight: 900;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about {
    width: 100%;
    max-width: none;
    margin-top: 4.439vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__info-text {
  width: 77%;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .goods__info-text {
    width: 70%;
  }
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__release-date {
  font-size: 1.25vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .goods__release-date {
    font-size: 3.738vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__name,
main.child_page-main #lineup_detail .lineup_detail_about .goods__price {
  font-size: 1.25vw;
  line-height: 1.66;
  margin-top: 0.313vw;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .goods__name,
  main.child_page-main #lineup_detail .lineup_detail_about .goods__price {
    font-size: 4.206vw;
    margin-top: 0;
  }
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__name small,
main.child_page-main #lineup_detail .lineup_detail_about .goods__price small {
  font-size: 75%;
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__name {
  display: block;
}
main.child_page-main #lineup_detail .lineup_detail_about .lineup_detail_about__detail {
  font-size: 1.042vw;
  line-height: 1.8;
  margin-top: 0.99vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .lineup_detail_about__detail {
    font-size: 3.738vw;
    line-height: 1.62;
    margin-top: 1.869vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__type {
  width: 5.885vw;
  height: 6.302vw;
  font-size: 1.25vw;
  font-weight: 900;
  color: #ffffff;
  padding-top: 0.677vw;
  text-align: center;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__type span:first-of-type {
  display: block;
  margin-bottom: -0.104vw;
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__type span:nth-of-type(2) {
  font-size: 2.448vw;
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__type::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../images/bg_type.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .goods__type {
    width: 20.327vw;
    height: 21.495vw;
    font-size: 4.907vw;
    padding-top: 2.336vw;
  }
  main.child_page-main #lineup_detail .lineup_detail_about .goods__type span:first-of-type {
    margin-bottom: -1.402vw;
  }
  main.child_page-main #lineup_detail .lineup_detail_about .goods__type span:nth-of-type(2) {
    font-size: 9.346vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__point_box {
  position: relative;
  z-index: 0;
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__point {
  position: relative;
  width: 100%;
  padding: 3.2vw 0;
  text-align: left;
  color: #ffffff;
  margin-top: 2.813vw;
  transform: scale(1, 0);
  transition: all 0.3s;
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__point.active {
  transform: scale(1, 1);
  transition-delay: 0.7s;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .goods__point.active {
    transition-delay: 0.7s;
  }
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__point.active .goods__point__img,
main.child_page-main #lineup_detail .lineup_detail_about .goods__point.active .goods__point__description {
  opacity: 1;
  transform: translateY(0%);
  transition-delay: 1s;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .goods__point.active .goods__point__img,
  main.child_page-main #lineup_detail .lineup_detail_about .goods__point.active .goods__point__description {
    transition-delay: 1s;
  }
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__point::before {
  content: "";
  width: 100%;
  height: 2.813vw;
  background: url(../images/deco_goodsdetail_point.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 0;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .goods__point::before {
    height: 9vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__point::after {
  content: "";
  width: 100%;
  height: 2.813vw;
  background: url(../images/deco_goodsdetail_point.webp) no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) scale(1, -1);
  z-index: 0;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .goods__point::after {
    height: 9vw;
  }
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .goods__point {
    margin-top: 5.841vw;
    padding: 10.505vw 0;
  }
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__point .goods__point__img {
  text-align: center;
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.5s;
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__point .goods__point__img img {
  width: 9.219vw;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .goods__point .goods__point__img img {
    width: 28.972vw;
  }
}
main.child_page-main #lineup_detail .lineup_detail_about .goods__point .goods__point__description {
  font-size: 1.042vw;
  line-height: 1.8;
  margin-top: 0.26vw;
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.5s;
}
@media screen and (max-width: 767px) {
  main.child_page-main #lineup_detail .lineup_detail_about .goods__point .goods__point__description {
    font-size: 3.271vw;
    margin-top: 2.336vw;
  }
}

.custom-select-wrapper {
  position: relative;
  width: 100%;
  max-width: 9.479vw;
  border-radius: 0.104vw;
  cursor: pointer;
  font-size: 1.042vw;
  font-weight: 500;
  color: #ffffff;
  margin-top: 0;
  margin-left: auto;
  z-index: 90;
}
@media screen and (max-width: 767px) {
  .custom-select-wrapper {
    max-width: 58.411vw;
    border-radius: 0.467vw;
    font-size: 3.271vw;
    margin: 0 auto;
    margin-top: 5.673vw;
    border: 1px solid #000000;
    color: #000000;
  }
}
.custom-select-wrapper-events, .custom-select-wrapper-postevent {
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .custom-select-wrapper-events, .custom-select-wrapper-postevent {
    position: relative;
  }
}

.single-event-goodslineup #goods-sort-form {
  display: none;
}

.custom-selected {
  padding: 0.6vw 1.823vw 0.6vw 3.229vw;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .custom-selected {
    padding: 2.6vw 20.561vw 2.6vw 23.364vw;
  }
}
.custom-selected::before {
  content: "";
  width: 0.677vw;
  height: 0.885vw;
  background: url(../images/icon_srot.svg) no-repeat;
  background-size: contain;
  position: absolute;
  top: 55%;
  left: 2.083vw;
  transform: translateY(-50%);
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .custom-selected::before {
    width: 2.804vw;
    height: 3.738vw;
    left: 18.692vw;
    filter: brightness(0);
  }
}

.custom-options {
  position: absolute;
  top: 125%;
  left: -0.26vw;
  right: 0.26vw;
  background: white;
  border-radius: 0.313vw;
  color: #000000;
  border-top: none;
  z-index: 90;
  opacity: 0;
  overflow: hidden;
  transition: all 0.1s;
}
@media screen and (max-width: 767px) {
  .custom-options {
    width: 88.785vw;
    font-size: 3.738vw;
    left: 50%;
    right: 0;
    transform: translateX(-50%);
    border-radius: 1.402vw;
  }
}
.custom-options.open_active {
  opacity: 1;
}
.custom-options.open_active li {
  opacity: 1;
  max-height: none;
  padding: 0.66vw 0.66vw;
}
.custom-options.open_active li:nth-of-type(2) {
  transition-delay: 0.05s;
}
.custom-options.open_active li:nth-of-type(3) {
  transition-delay: 0.1s;
}
.custom-options.open_active li:nth-of-type(4) {
  transition-delay: 0.15s;
}
@media screen and (max-width: 767px) {
  .custom-options.open_active li {
    padding: 3.8vw;
  }
}

.custom-options li {
  font-size: 0.938vw;
  text-align: center;
  padding: 0;
  position: relative;
  z-index: 0;
  opacity: 0;
  max-height: 0;
  transition: all 0.1s;
}
@media screen and (max-width: 767px) {
  .custom-options li {
    font-size: 3.738vw;
  }
}

.custom-options li:hover {
  background: #bcbcbc;
}

.hidden-select {
  display: none !important;
}

.back_select {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  z-index: 89;
}

/* スマホだけ有効にしたい場合（例：768px以下） */
@media (max-width: 768px) {
  .back_select.active {
    display: block;
  }
}
footer {
  background: url(../images/bg_footer.webp) no-repeat center top/cover;
  color: #ffffff;
  padding: 2.5vw 3.854vw 2.031vw;
  position: sticky;
  top: 100vh;
  z-index: 1;
}
@media screen and (min-width: 767px) {
  footer ul a {
    transition: all 0.4s;
  }
  footer ul a:hover {
    opacity: 0.6;
  }
}
footer ul {
  font-size: 0.729vw;
  font-weight: 900;
  line-height: 1.66;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.854vw;
}
footer ul li:first-of-type {
  width: 17.656vw;
  margin: 0 auto;
}
footer ul li:last-of-type {
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  footer {
    padding: 7.944vw 16.43vw 6.776vw;
  }
  footer ul {
    font-size: 2.804vw;
    text-align: center;
    padding: 0;
  }
  footer ul li:first-of-type {
    width: 53.505vw;
    margin-bottom: 5.14vw;
  }
}

/* TOPボタン*/
.top_btn {
  width: 7.917vw;
  height: 7.917vw;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  bottom: 1.719vw;
  right: 1.719vw;
  cursor: pointer;
  z-index: 97;
  opacity: 1;
  transition: opacity 0.4s;
}
@media screen and (max-width: 767px) {
  .top_btn {
    width: 23.364vw;
    height: 23.364vw;
    bottom: 3vw;
    right: 2vw;
  }
}
@media screen and (min-width: 767px) {
  .top_btn:hover {
    opacity: 0.7;
  }
}
.top_btn::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../images/btn_top_out.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: 10s linear infinite Rotate_Move_02;
  pointer-events: none;
}
.top_btn a {
  display: flex;
  justify-content: center;
}
.top_btn a img {
  width: 80%;
  height: 80%;
  -o-object-fit: contain;
     object-fit: contain;
  animation: 10s linear infinite Rotate_Move_01;
}

/*モーダル設定*/
.mfp-content {
  max-width: 1604px;
}

.mfp-iframe-scaler {
  position: relative;
  overflow: visible;
}

/*モーダル矢印*/
.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  background: url(../images/modal_btn_close.webp) no-repeat;
  background-size: contain;
  width: 4.01vw;
  height: 4.01vw;
  top: -4.01vw;
  right: -4.01vw;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .mfp-image-holder .mfp-close,
  .mfp-iframe-holder .mfp-close {
    width: 12.383vw;
    height: 12.383vw;
    top: -14.72vw;
    right: 0;
  }
}

.mfp-container {
  padding-left: 6.771vw !important;
  padding-right: 7.813vw !important;
}
@media screen and (max-width: 767px) {
  .mfp-container {
    padding-left: 4.673vw !important;
    padding-right: 4.673vw !important;
  }
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: 1;
  cursor: auto;
  pointer-events: none;
}

/*モーダルアニメーション*/
/*フェードインアウト*/
.mfp-fade.mfp-bg {
  opacity: 0;
  transition: all 0.3s ease-out;
}

.mfp-fade.mfp-bg.mfp-ready {
  background: rgba(38, 14, 10, 0.75);
  opacity: 1;
}

.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  transition: all 0.3s ease-out;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
  max-width: 60.313vw;
  min-height: 34.01vw;
}
@media screen and (max-width: 767px) {
  .mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    max-width: none;
    min-height: auto;
  }
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}/*# sourceMappingURL=style.css.map */