/* ============================================== color */
/* hover
=================================================================== */
/* common
=================================================================== */
/* layout
=================================================================== */
/* imgCover
=================================================================== */
/* background
=================================================================== */
/* flex
=================================================================== */
/* animation delay
=================================================================== */
/* 3d
=================================================================== */
/* font
=================================================================== */
/* vw
=================================================================== */
/* form
=================================================================== */
/* ============================================== mome */
/* ============================================================================================ hover */
/* ============================================== color */
:root {
  --color-anime: 163, 167, 253;
  --color-animeBg: 186, 189, 254;
  --color-special: 224, 156, 195;
  --color-specialBg: 236, 194, 218;
}

/* ============================================== hoverAnime */
@keyframes hoverAnime {
  0% {
    transform: translate3d(0, 0, 0);
  }
  10% {
    transform: translate3d(0, -10px, 0);
  }
  20% {
    transform: translate3d(0, 0, 0);
  }
  30% {
    transform: translate3d(0, -10px, 0);
  }
  40% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}
/* ============================================================================================ common nav */
.navList > li img {
  height: 16px;
}

.navList > li.nav--anime > a {
  background-color: rgba(var(--color-anime), 1);
}

/* ============================================================================================ headerShare */
.headerShare {
  position: absolute;
  top: 20px;
  right: 25px;
  z-index: 5;
}

/* --------------------------------------- headerShare title */
.headerShare .headerShare__title {
  position: relative;
  width: 65px;
  margin-left: auto;
  margin-right: auto;
  z-index: 2;
}
.headerShare .headerShare__titleImg {
  display: block;
  text-indent: -9999px;
  height: 0;
  padding-top: 29.2307692308%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-image: url(../img/jochum/2024/common/shareTitle.png);
}

/* --------------------------------------- headerShare list */
.headerShare .share__list {
  border-radius: 9999px;
  padding: 15px 11px 10px 11px;
  background-color: #fff;
  margin-top: -11px;
  box-shadow: 5px 6px 0 rgba(0, 0, 0, 0.1);
}
.headerShare .share__list > li {
  margin: 0 6px;
}
.headerShare .share__list > li > a {
  width: 45px;
  height: 45px;
  background-size: 18px auto;
}
.headerShare .share__list > li > a::after {
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border-width: 1px;
  border-color: rgb(255, 255, 255);
}

/* ============================================================================================ joOneSns */
.joOneSns__title {
  font-size: 24px;
}

.joOneSns__list > li {
  margin: 0 15px;
}

.joOneSns__list > li > a {
  width: 96px;
  height: 96px;
  background-size: 40px auto;
  border-width: 0;
}
.joOneSns__list > li > a::before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  width: calc(100% - 16px);
  height: calc(100% - 16px);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  border-radius: 50%;
  border-width: 3px;
  border-style: dashed;
  border-color: rgba(255, 255, 255, 0.3);
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -ms-transition-duration: 0.5s;
  -ms-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-transition-duration: 0.5s;
  -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition-duration: 0.5s;
  -moz-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
}

/* ============================================================================================ menu */
.menu .menuNav__list > li.menuNav--anime > a::after {
  background-color: rgba(var(--color-anime), 1);
}
.menu .menuNav__list > li.menuNav--special > a::after {
  background-color: #e09cc3;
}
.menu .menuNav__list > li.menuNav--news > a::after {
  background-color: #e09cc3;
}

/* --------------------------------------- menu joOneSns */
.menu .joOneSns__title {
  font-size: 13px;
  margin-bottom: 20px;
}
.menu .joOneSns__list > li {
  margin: 0 10px;
}
.menu .joOneSns__list > li > a {
  width: 55px;
  height: 55px;
  background-size: 23px auto;
}
.menu .joOneSns__list > li > a::before {
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border-width: 2px;
}

.share, .joOneSns {
  margin-bottom: 50px;
}

/* ============================================================================================ top fixedBanner */
.fixedBanner {
  position: absolute;
  width: 285px;
  bottom: 40px;
  left: 3.3524904215%;
  z-index: 5;
  cursor: pointer;
}

.fixedBanner__link {
  position: relative;
  padding-top: 58.2456140351%;
  border-radius: 18px;
  background-color: #fff;
  box-shadow: 5px 6px 0 rgba(0, 0, 0, 0.1);
}

/* --------------------------------------- fixedBanner bg */
.fixedBanner__bg {
  position: absolute;
  width: 95.0877192982%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  border-radius: 12px;
  overflow: hidden;
  z-index: 1;
}

.fixedBanner__bgImg {
  display: block;
  position: relative;
  padding-top: 56.4575645756%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-image: url(../img/jochum/2024/contents/top/banner__bg.jpg);
  background-size: cover;
}

/* --------------------------------------- fixedBanner logo */
.fixedBanner__logo {
  position: absolute;
  width: 67.7192982456%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  z-index: 2;
}

.fixedBanner__logoImg {
  display: block;
  position: relative;
  padding-top: 36.7875647668%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-image: url(../img/jochum/2024/contents/top/banner__logo.png);
}

/* --------------------------------------- fixedBanner chara */
.fixedBanner__chara--wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.fixedBanner__chara {
  position: absolute;
  width: 21.0526315789%;
  z-index: 2;
}
.fixedBanner__chara:nth-child(1) {
  bottom: 0;
  left: 0;
  transform: translate(-10%, 10%) rotate(45deg);
}
.fixedBanner__chara:nth-child(2) {
  bottom: 0;
  right: 0;
  transform: translate(10%, 10%) rotate(-45deg);
}

.fixedBanner__charaImg {
  display: block;
  position: relative;
  padding-top: 114.2857142857%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
}

.fixedBanner__chara--1 .fixedBanner__charaImg {
  background-image: url(../img/jochum/2024/contents/chara/modal/menuChara--1.png);
}

.fixedBanner__chara--2 .fixedBanner__charaImg {
  background-image: url(../img/jochum/2024/contents/chara/modal/menuChara--2.png);
}

.fixedBanner__chara--3 .fixedBanner__charaImg {
  background-image: url(../img/jochum/2024/contents/chara/modal/menuChara--3.png);
}

.fixedBanner__chara--4 .fixedBanner__charaImg {
  background-image: url(../img/jochum/2024/contents/chara/modal/menuChara--4.png);
}

.fixedBanner__chara--5 .fixedBanner__charaImg {
  background-image: url(../img/jochum/2024/contents/chara/modal/menuChara--5.png);
}

.fixedBanner__chara--6 .fixedBanner__charaImg {
  background-image: url(../img/jochum/2024/contents/chara/modal/menuChara--6.png);
}

.fixedBanner__chara--7 .fixedBanner__charaImg {
  background-image: url(../img/jochum/2024/contents/chara/modal/menuChara--7.png);
}

.fixedBanner__chara--8 .fixedBanner__charaImg {
  background-image: url(../img/jochum/2024/contents/chara/modal/menuChara--8.png);
}

.fixedBanner__chara--9 .fixedBanner__charaImg {
  background-image: url(../img/jochum/2024/contents/chara/modal/menuChara--9.png);
}

.fixedBanner__chara--10 .fixedBanner__charaImg {
  background-image: url(../img/jochum/2024/contents/chara/modal/menuChara--10.png);
}

.fixedBanner__chara--11 .fixedBanner__charaImg {
  background-image: url(../img/jochum/2024/contents/chara/modal/menuChara--11.png);
}

/* --------------------------------------- fixedBanner show */
.fixedBanner {
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -ms-transition-duration: 0.5s;
  -ms-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-transition-duration: 0.5s;
  -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition-duration: 0.5s;
  -moz-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  opacity: 0;
  transform: translateY(20%);
}

.fixedBanner--wrapper.show .fixedBanner {
  opacity: 1;
  transform: translateY(0);
}

/* ============================================================================================ topArticle anime */
.topArticle__anime {
  background-color: rgba(var(--color-anime), 1);
}
.topArticle__anime .btnCircle__seeall {
  background-color: rgba(var(--color-anime), 1);
}

.topArticle.topArticle__anime::after {
  height: 29px;
  top: -29px;
  background-image: url(../img/jochum/2024/contents/anime/bg--top.png);
}

/* ================================================================ anime mainBlock */
.anime__mainBlock {
  position: relative;
}

/* --------------------------------------- mainBlock inner */
a.anime__mainBlock--inner, .anime__mainBlock--inner {
  position: relative;
}

.anime__mainBlock--inner--contents {
  position: relative;
  height: 0;
  padding-top: 65.4008438819%;
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__bg--pc.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  border-radius: 30px;
  overflow: hidden;
  z-index: 1;
}

/* --------------------------------------- mainBlock logo */
.anime__mainBlock--logo {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  width: 50%;
  top: 31.1290322581%;
}

.anime__mainBlock--logoInner {
  display: block;
  padding-top: 37.3417721519%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__logo--pc.png);
}

/* --------------------------------------- mainBlock frame */
.anime__mainBlock--frame {
  position: absolute;
  width: 39.5569620253%;
  top: 7.9032258065%;
  right: 3.1678986272%;
  transform: translate(0%, 20%);
  opacity: 0;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -ms-transition-duration: 0.5s;
  -ms-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-transition-duration: 0.5s;
  -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition-duration: 0.5s;
  -moz-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
}

.anime__mainBlock--frameInner {
  display: block;
  padding-top: 32%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__frame--pc.png);
}

/* --------------------------------------- mainBlock chara */
.anime__mainBlock--charaTarget {
  position: absolute;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -ms-transition-duration: 0.5s;
  -ms-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-transition-duration: 0.5s;
  -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition-duration: 0.5s;
  -moz-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
}
.anime__mainBlock--charaTarget > span {
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
}

.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget {
  width: 20.8860759494%;
  transform: translate(0, 100%);
  opacity: 0;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget > span {
  padding-top: 117.6767676768%;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(1) {
  left: 1.0548523207%;
  bottom: 10.6451612903%;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(1) > span {
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__charaPc--1.png);
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(2) {
  left: -3.7974683544%;
  bottom: -8.3870967742%;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(2) > span {
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__charaPc--2.png);
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(3) {
  left: 10.1265822785%;
  bottom: -10.3225806452%;
  z-index: 2;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(3) > span {
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__charaPc--3.png);
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(4) {
  left: 22.9957805907%;
  bottom: -6.1290322581%;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(4) > span {
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__charaPc--4.png);
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(5) {
  left: 34.1772151899%;
  bottom: -7.7419354839%;
  z-index: 2;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(5) > span {
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__charaPc--5.png);
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(6) {
  left: 45.9915611814%;
  bottom: -2.2580645161%;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(6) > span {
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__charaPc--6.png);
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(7) {
  left: 59.8101265823%;
  bottom: -9.0322580645%;
  z-index: 3;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(7) > span {
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__charaPc--7.png);
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(8) {
  left: 67.4050632911%;
  bottom: 10.6451612903%;
  z-index: 2;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(8) > span {
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__charaPc--8.png);
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(9) {
  left: 72.1518987342%;
  bottom: -10%;
  z-index: 4;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(9) > span {
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__charaPc--9.png);
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(10) {
  left: 76.1603375527%;
  bottom: 20%;
  z-index: 1;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(10) > span {
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__charaPc--10.png);
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(11) {
  left: 85.0210970464%;
  bottom: -1.935483871%;
  z-index: 2;
}
.anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(11) > span {
  background-image: url(../img/jochum/2024/contents/anime/mainBlock__charaPc--11.png);
}

/* ================================================================ btn */
.btn {
  position: relative;
  z-index: 2;
}

.btnHover__wrapper .btnInner {
  cursor: pointer;
}

/* --------------------------------------- btnInner */
.btnInner {
  position: relative;
  width: 220px;
  height: 62px;
  border-radius: 9999px;
  background-color: #fff;
  margin: 0 auto;
  box-shadow: 5px 6px 0 rgba(0, 0, 0, 0.1);
  z-index: 2;
}
.btnInner::after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  border-radius: 9999px;
  border-width: 2px;
  border-style: dashed;
  border-color: rgba(var(--color-anime), 1);
}

.btnText {
  position: absolute;
  font-size: 20px;
  white-space: nowrap;
  line-height: 1;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}

/* --------------------------------------- top btnCheck */
.btnCheck .btnInner {
  width: 350px;
  height: 76px;
  transform: translateY(-50%);
}
.btnCheck .btnText {
  width: 148px;
  font-size: 0;
  line-height: 0;
}
.btnCheck .btnText__inner {
  display: block;
  text-indent: -9999px;
  height: 0;
  padding-top: 27.7027027027%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-image: url(../img/jochum/2024/contents/anime/btnText.png);
}

/* ================================================================ anime mainBlock show */
.anime__mainBlock.show .anime__mainBlock--frame {
  transform: translate(0%, 0%);
  opacity: 1;
  transition-delay: 1s;
  -webkit-transition-delay: 1s;
}
.anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget {
  transform: translate(0, 0);
  opacity: 1;
}
.anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(1), .anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(4), .anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(8), .anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(9), .anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(11) {
  transition-delay: 0.1s;
  -webkit-transition-delay: 0.1s;
}
.anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(2), .anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(5) {
  transition-delay: 0.2s;
  -webkit-transition-delay: 0.2s;
}
.anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(6), .anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(7) {
  transition-delay: 0.3s;
  -webkit-transition-delay: 0.3s;
}
.anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(3), .anime__mainBlock.show .anime__mainBlock--chara.partsPc .anime__mainBlock--charaTarget:nth-child(10) {
  transition-delay: 0.4s;
  -webkit-transition-delay: 0.4s;
}

/* ============================================================================================ top special */
/* --------------------------------------- special section */
.topArticle__special--section {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.topArticle__special--movie {
  width: 56.852248394%;
}

.topArticle__special--wallpaper {
  width: 39.4004282655%;
}

/* --------------------------------------- special title */
.specialTitle {
  height: 25px;
  margin-bottom: 25px;
}
.specialTitle img {
  width: auto;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}

/* ================================================================ newIcon */
.movieBlock, .wallpaperBlock {
  position: relative;
}
.movieBlock::after, .wallpaperBlock::after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  width: 52px;
  height: 52px;
  border-width: 2px;
  border-style: solid;
  border-color: #fff;
  border-radius: 50%;
  background-color: rgba(var(--color-special), 1);
  background-image: url(../img/jochum/2024/common/newIcon.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 36px auto;
  transform: translate(-25%, -25%);
  z-index: 2;
  display: none;
}
.movieBlock.is--new::after, .wallpaperBlock.is--new::after {
  display: block;
}

/* ================================================================ movieBlock */
.movieBlock__thum {
  margin-bottom: 20px;
}

.movieBlock__title {
  font-size: 18px;
  padding-left: 0;
  color: #fff;
  min-height: inherit;
}

/* ================================================================ wallpaperBlock */
/* --------------------------------------- wallpaperList */
.topArticle__special--wallpaper .wallpaperList {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}
.topArticle__special--wallpaper .wallpaperList .wallpaperBlock {
  width: calc(50% - 14px);
}

/* --------------------------------------- wallpaperBlock link */
.wallpaperBlock__thum--wrapper {
  position: relative;
  padding-top: 173.3333333333%;
  border-radius: 10px;
  overflow: hidden;
}

.wallpaperBlock__thum {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -ms-transition-duration: 0.5s;
  -ms-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-transition-duration: 0.5s;
  -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition-duration: 0.5s;
  -moz-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
}

/* ============================================================================================ charaModal */
.charaModal__profile--img {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
}

/* ============================================================================================ navList */
.pages--anime .navList > li.nav--anime {
  z-index: 3;
}
.pages--special .navList > li.nav--special {
  z-index: 3;
}

/* ============================================================================================ pageSection */
.pageSection {
  position: relative;
  padding-top: 95px;
  padding-bottom: 80px;
}

/* --------------------------------------- pageSection title */
.pageSection__title {
  position: absolute;
  width: 100%;
  height: 42px;
  top: 0;
  left: 0;
  font-size: 0;
  text-align: center;
}
.pageSection__title::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  border-top-width: 5px;
  border-top-style: dashed;
}

.pageSection__title--inner {
  position: relative;
  display: inline-block;
  height: 100%;
  z-index: 2;
  padding-left: 20px;
  padding-right: 20px;
}
.pageSection__title--inner img {
  width: auto;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}

/* ============================================================================================ pages color */
.pages--anime .contents__wrapper {
  border-color: rgba(var(--color-anime), 1);
}
.pages--anime .contents {
  background-color: rgba(var(--color-animeBg), 1);
}
.pages--anime .btnText {
  color: rgba(var(--color-anime), 1);
}
.pages--anime .pageSection__title::after {
  border-top-color: rgba(var(--color-anime), 1);
}
.pages--anime .pageSection__title--inner {
  background-color: rgba(var(--color-animeBg), 1);
}

.pages--special .contents__wrapper {
  border-color: rgba(var(--color-special), 1);
}
.pages--special .contents {
  background-color: rgba(var(--color-specialBg), 1);
}
.pages--special .btnText {
  color: rgba(var(--color-special), 1);
}
.pages--special .btnInner::after {
  border-color: rgba(var(--color-special), 1);
}
.pages--special .pageSection__title::after {
  border-top-color: rgba(var(--color-special), 1);
}
.pages--special .pageSection__title--inner {
  background-color: rgba(var(--color-specialBg), 1);
}

/* ============================================================================================ pages special */
.pages--special .movieBlock__title {
  font-size: 15px;
}
.pages--special .movieBlock__list .movieBlock:nth-child(n+5) {
  display: none;
}
.pages--special .wallpaperList {
  display: flex;
  flex-wrap: wrap;
}
.pages--special .wallpaperBlock {
  width: calc((100% - 120px) / 3);
  margin-right: 60px;
  margin-bottom: 50px;
}
.pages--special .wallpaperBlock:nth-child(3n) {
  margin-right: 0;
}
.pages--special .wallpaperBlock:nth-child(n+4) {
  display: none;
}
.pages--special .specialSection__movie.active .movieBlock__list .movieBlock:nth-child(n+5) {
  display: block;
}
.pages--special .specialSection__wallpaper.active .wallpaperBlock:nth-child(n+4) {
  display: block;
}

/* --------------------------------------- specialSection__wallpaper */
.specialSection__wallpaper {
  padding-bottom: 15px;
}

/* --------------------------------------- btnDownload */
.btn.btnDownload {
  margin-top: 30px;
}
.btn.btnDownload .btnInner {
  width: 100%;
  height: 55px;
  background-color: rgba(var(--color-special), 1);
}
.btn.btnDownload .btnInner::after {
  border-color: #fff;
}
.btn.btnDownload .btnText {
  font-size: 17px;
  color: #fff;
}

/* --------------------------------------- specialBanner */
.specialBanner__link {
  width: 513px;
  margin-left: auto;
  margin-right: auto;
}
.specialBanner__link img {
  border-radius: 20px;
  border-width: 2px;
  border-style: solid;
  border-color: rgba(255, 255, 255, 0);
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -ms-transition-duration: 0.5s;
  -ms-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-transition-duration: 0.5s;
  -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition-duration: 0.5s;
  -moz-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
}

/* ============================================================================================ hover pc */
@media (hover: hover) and (pointer: fine) {
  .fixedBanner--wrapper.show .fixedBanner:hover, .fixedBanner--wrapper.show .fixedBanner:active {
    animation: hoverAnime 2.2s ease-in-out infinite;
    -webkit-animation: hoverAnime 2.2s ease-in-out infinite;
  }
  .share__list > li:hover > a, .share__list > li:active > a {
    background-size: 20px auto;
  }
  .joOneSns__list > li > a:hover::before, .joOneSns__list > li > a:active::before {
    border-color: white;
  }
  .btnHover__wrapper:hover .btn, .btnHover__wrapper:active .btn {
    animation: hoverAnime 2.2s ease-in-out infinite;
    -webkit-animation: hoverAnime 2.2s ease-in-out infinite;
  }
  .wallpaperBlock__link:hover .wallpaperBlock__thum, .wallpaperBlock__link:active .wallpaperBlock__thum {
    transform: scale(1.1);
  }
  .specialBanner__link:hover img, .specialBanner__link:active img {
    border-color: white;
  }
}
.menu .menuInner__chara--block.chara--9 .menuInner__chara--block--img > span {
  background-image: url(../img/jochum/2024/common/menuChara--9.png);
}

.specialSection__others {
  margin-top: 65px;
  padding-bottom: 40px;
}

/* ============================================================================================ edit guideline */
/* --------------------------------------- footer__guideLine */
.btnGuideLine {
  margin-bottom: 55px;
}
.btnGuideLine .btnInner::after {
  pointer-events: none;
  border-color: rgba(255, 255, 255, 0.3);
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -ms-transition-duration: 0.5s;
  -ms-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-transition-duration: 0.5s;
  -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition-duration: 0.5s;
  -moz-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
}
.btnGuideLine .btnInner {
  width: 300px;
  height: 55px;
  background-color: #a3a7d3;
  transition-duration: 0.3s;
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -ms-transition-duration: 0.3s;
  -ms-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-transition-duration: 0.3s;
  -webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition-duration: 0.3s;
  -moz-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
}
.btnGuideLine a.btnGuideLine__link {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.btnGuideLine__link--inner {
  position: relative;
  width: 158px;
  margin-left: auto;
  margin-right: auto;
}

@media (hover: hover) and (pointer: fine) {
  .btnGuideLine .btnInner:hover, .btnGuideLine .btnInner:active {
    transform: translateY(-8px);
  }
  .btnGuideLine .btnInner:hover::after, .btnGuideLine .btnInner:active::after {
    border-color: white;
  }
}
/* ================================================= guideline */
.textIndent {
  padding-left: 1em;
  text-indent: -1em;
}

.textAside {
  font-size: 12px;
  line-height: 1.5;
  margin-top: 5px;
}

/* --------------------------------------- glSection */
.glSection {
  line-height: 1.9;
  padding-bottom: 45px;
  margin-bottom: 45px;
  border-bottom: 2px dashed #a3a7d3;
  color: #a3a7d3;
}
.glSection:last-of-type {
  margin-bottom: 0;
  border-bottom: none;
}

/* --------------------------------------- glSection__title text */
.glSection__title {
  font-size: 26px;
  line-height: 1.4;
  text-align: left;
  margin-bottom: 15px;
}

.glSection__text {
  font-size: 16px;
}

/* --------------------------------------- glSection__list */
.glSection__list--target {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin-top: 30px;
}

.glSection__list--num {
  width: 45px;
}

.glSection__list--text {
  width: calc(100% - 45px);
}

.glSection__list--title {
  font-size: 20px;
  line-height: 1.5;
  margin-bottom: 10px;
}

/* --------------------------------------- glFrame */
.glFrame {
  position: relative;
  padding: 35px 40px;
  border-width: 2px;
  border-style: solid;
  border-color: #a3a7d3;
  border-radius: 18px;
  margin-top: 40px;
}

.glFrame__title {
  position: absolute;
  top: 0;
  left: 30px;
  transform: translateY(-50%);
  font-size: 20px;
  line-height: 1;
  background-color: #fff;
  white-space: nowrap;
  padding-left: 10px;
  padding-right: 10px;
}

.glFrame__block {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.glFrame__block--title {
  width: 95px;
}

.glFrame__block--text {
  width: calc(100% - 95px);
  line-height: 1.6;
  margin-bottom: 12px;
}

/* --------------------------------------- marginT */
.glSection__marginT {
  margin-top: 30px;
}

.glDate {
  line-height: 1;
  text-align: right;
  margin-top: 65px;
}