@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700;900&family=Shippori+Mincho:wght@400;500;600;700;800&family=Marcellus&display=swap");
@import url("colorbox.css");

/*---------------------------------------------
	Browser Default Initialization
  ---------------------------------------------*/

body,
div,
dl,
dt,
dd,
ul,
ul li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td,
section,
nav,
article,
aside,
header,
address,
figure,
figcaption {
 margin: 0;
 padding: 0;
}
address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
 font-style: normal;
 font-weight: normal;
}
table {
 border-collapse: collapse;
 border-spacing: 0;
}
caption,
th {
 text-align: left;
}
q::before,
q::after {
 content: "";
}
object,
embed {
 vertical-align: top;
}
hr,
legend {
 display: none;
}
h1,
h2,
h3,
h4,
h5,
h6 {
 font-size: 100%;
 font-weight: normal;
}
img,
abbr,
acronym,
fieldset {
 border: 0;
}
img {
 max-width: 100%;
 height: auto;
 vertical-align: bottom;
 -ms-interpolation-mode: bicubic;
}
ul li {
 list-style-type: none;
}
*,
*:before,
*:after {
 -moz-box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 box-sizing: border-box;
}
.clearfix {
 zoom: 1;
}
.clearfix:before,
.clearfix:after {
 content: "";
 display: table;
}
.clearfix:after {
 clear: both;
}
p.ind {
 text-indent: 1em;
}
em {
 font-style: normal;
}
strong {
 font-weight: bold;
}
a {
 color: #000;
 outline: none;
 text-decoration: none;
 transition: all 0.5s ease-in-out;
 -webkit-transition: all 0.25s ease-in-out;
 -moz-transition: all 0.25s ease-in-out;
 -o-transition: all 0.25s ease-in-out;
 -ms-transition: all 0.25s ease-in-out;
}
a:active,
a:hover {
 text-decoration: none;
}
a:focus,
*:focus {
 outline: none;
}
a:hover img {
 -moz-transition: all 0.25s ease-in-out;
 -o-transition: all 0.25s ease-in-out;
 -webkit-transition: all 0.25s ease-in-out;
 transition: all 0.25s ease-in-out;
}
/*.en {
	font-family: 'Smythe', cursive;
}*/
.min {
 font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
}
.object-fit {
 object-fit: cover;
 font-family: "object-fit: cover;";
 min-height: 100%;
}
.txhd {
 display: block;
 height: 0;
 overflow: hidden;
 font-size: 1rem;
 line-height: 2;
}
.pc,
.is_pc {
 display: block;
}
.sp,
.is_sp {
 display: none;
}
@-ms-viewport {
 width: auto !important;
 initial-scale: 1;
}
@media only screen and (max-width: 820px) {
 .pc {
  display: none;
 }
 .sp {
  display: block;
 }
}
@media only screen and (max-width: 600px) {
 .is_pc {
  display: none;
 }
 .is_sp {
  display: block;
 }
}

:root {
 /* Colors: */
 --color-blk: #000000;
 --color-wht: #ffffff;
 --color-red: #c7171e;
 --ff-mar: "Marcellus", serif;
 --ff-min: "Shippori Mincho", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
 --ff-zen: "Zen Kaku Gothic New", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}

/* ==========================================================================
   Global
   ========================================================================== */

html {
 font-size: 62.5%;
 overflow-y: scroll;
 height: 100%;
 line-height: 1.15;
 -ms-text-size-adjust: 100%;
 -webkit-text-size-adjust: 100%;
}
html.ofyh {
 height: 100%;
 overflow-y: hidden;
}
body {
 position: relative;
 font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
 font-weight: 400;
 background-color: var(--color-blk);
 margin: 0;
 width: 100%;
 -ms-width: calc(100% - (100vw - 100%));
 color: var(--color-wht);
 font-size: 1.6rem;
 line-height: 1;
 letter-spacing: 0.04em;
 text-align: left;
 -moz-text-size-adjust: 100%;
 -webkit-text-size-adjust: 100%;
 -o-text-size-adjust: 100%;
 -ms-text-size-adjust: 100%;
 text-size-adjust: 100%;
}
#page {
 width: 100%;
 min-height: 100vh;
 display: block;
 position: relative;
}
#wrap {
 width: 100%;
 max-width: 2400px;
 margin-inline: auto;
 min-height: 100vh;
 display: block;
 position: relative;
 container: wrapin / inline-size;
}
.ofyh {
 height: 100%;
 overflow-y: hidden;
}
.inner {
 zoom: 1;
 margin: 0 auto;
}

@media screen and (max-width: 820px) {
 body {
  width: 100%;
  font-size: 1.6rem;
  -webkit-text-size-adjust: 100%;
  -webkit-overflow-scrolling: touch;
  min-width: inherit;
 }
 #wrap {
  width: 100%;
  height: auto;
  min-width: 280px;
  overflow: hidden;
 }
}

/* sns
==================================================================================  */
.sns {
 display: flex;
 justify-content: center;
 align-items: center;
 gap: 12px;
}
.sns .btn {
 display: block;
 width: 30px;
 height: 30px;
}
.sns .btn a {
 display: block;
 width: 30px;
 height: 30px;
 padding: 0px;
 border-radius: 100%;
 fill: var(--color-wht);
}
.sns .btn a .icon {
 max-width: 100%;
 max-height: 100%;
}

@media screen and (min-width: 821px) {
 .sns .btn a:hover {
  fill: var(--color-wht);
 }
}

/*
LOADING
==================================================================================  */
.loadingWrap {
 width: 100%;
 height: 100%;
 position: fixed;
 top: 0;
 left: 0;
 z-index: 9999;
 margin: 0px;
 padding: 0px;
 display: block;
}
.loadingWrapWaku {
 width: 100%;
 height: 100%;
 background: var(--color-blk);
 position: relative;
 margin: 0px;
 padding: 0px;
 display: flex;
 justify-content: center;
 align-items: center;
}
.lds-dual-ring {
 width: 140px;
 height: 140px;
 margin: 0px;
 padding: 0px;
 background: url(../img/film_item_01.png) no-repeat 50% 50%;
 background-size: 40%;
 opacity: 0.8;
}
.lds-dual-ring div {
 position: absolute;
 width: 140px;
 height: 140px;
 box-sizing: border-box;
 border-radius: 100%;
 border: 6px solid rgba(150, 150, 150, 0.2);
 border-top-color: var(--color-red);
 -webkit-animation: spin 1s infinite linear;
 animation: spin 1s infinite linear;
}
body.-start .loadingWrap {
 animation: ani_ld 1.2s cubic-bezier(0.08, 0.8, 0.315, 1) 0.5s both;
}
@keyframes ani_ld {
 0% {
  opacity: 1;
  visibility: visible;
 }
 100% {
  opacity: 0;
  visibility: hidden;
 }
}
@keyframes spin {
 100% {
  transform: rotate(360deg);
 }
}

@media screen and (max-width: 600px) {
 .lds-dual-ring div {
  width: 140px;
  height: 140px;
  border: 4px solid rgba(150, 150, 150, 0.2);
  border-top-color: var(--color-red);
 }
}

/* header
==================================================================================  */
.l-gnav__container {
 position: absolute;
 top: 0;
 left: 0;
 z-index: 100;
}
.l-header__navi {
 position: absolute;
 top: calc((50 / 1360) * 100cqw);
 left: calc((10 / 1360) * 100cqw);
 display: flex;
 z-index: 3;
}
.l-header__navi ul {
 display: flex;
 flex-direction: column;
 position: relative;
}
.l-header__navi li {
 display: block;
 position: relative;
}
.l-header__navi li.top,
.l-header__navi li.sp {
 display: none;
}
.l-header__navi li a {
 display: flex;
 padding-block: 0.2em;
 position: relative;
 cursor: pointer;
}
.l-header__navi li a span {
 color: var(--color-wht);
 font-size: min(calc((27 / 1360) * 100cqw), 2.7rem);
 font-family: var(--ff-mar);
 font-weight: 600;
 letter-spacing: -0.01em;
 line-height: 0.9;
 white-space: nowrap;
 display: flex;
 transition: 0.1s;
}
.l-header__navi li.no a {
 pointer-events: none;
}
.l-header__navi li.no a span {
 opacity: 0.3;
}
.l-header__navi li ul.submenu {
 display: none;
}
.hd__menutrigger {
 display: block;
 position: fixed;
 left: 0;
 top: 0;
 z-index: 1000;
 cursor: pointer;
 transition: 0.3s;
 opacity: 0;
}
.l-gnav__container.-scroll .hd__menutrigger,
.l-gnav__container.-open .hd__menutrigger {
 opacity: 1;
}
.hd__menutrigger-inner {
 position: relative;
 width: 70px;
 height: 70px;
 background-color: var(--color-blk);
}
.hd__menutrigger span {
 width: 36px;
 height: 2px;
 background: var(--color-wht);
 display: block;
 position: absolute;
 left: 17px;
 transition: all 0.3s;
}
.hd__menutrigger span.hd__menutrigger__line01 {
 top: 26px;
}
.hd__menutrigger span.hd__menutrigger__line02 {
 top: 36px;
}
.hd__menutrigger.-active span.hd__menutrigger__line01 {
 transform: rotate(20deg) translateX(0px);
 left: 17px;
 top: 30px;
}
.hd__menutrigger.-active span.hd__menutrigger__line02 {
 transform: rotate(-20deg) translateX(0px);
 left: 17px;
 top: 30px;
}
.hd__menutrigger .hd__menutrigger__txt {
 display: block;
 width: auto;
 position: absolute;
 top: 45px;
 left: 0;
 right: 0;
}
.hd__menutrigger .hd__menutrigger__txt em {
 color: var(--color-wht);
 font-size: 1rem;
 font-weight: 600;
 letter-spacing: 0.02em;
 text-align: center;
 display: block;
 transition: 0.5s;
 position: relative;
}
.hd__menutrigger .hd__menutrigger__txt em.menu,
.hd__menutrigger.-active .hd__menutrigger__txt em.close {
 display: block;
}
.hd__menutrigger .hd__menutrigger__txt em.close,
.hd__menutrigger.-active .hd__menutrigger__txt em.menu {
 display: none;
}
.hd__menutrigger .hd__menutrigger__txt em.close {
 transition: 0.5s;
}
.backlayer {
 position: fixed;
 overflow-y: auto;
 z-index: 10;
 top: 0;
 left: 0;
 width: 100%;
 height: 0;
 background-color: #1e2225;
 transition: all 0.8s cubic-bezier(0.23, 1, 0.32, 1);
}
.backlayer.-open {
 height: 100dvh;
}
.l-gnav__container.-open .l-header__navi {
 position: fixed;
 top: 0;
 left: 0;
 bottom: 0;
 width: 100%;
 height: 100dvh;
 display: flex;
 justify-content: center;
 align-items: center;
 padding: 0;
 background: none;
 overflow-x: hidden;
 overflow-y: auto;
 z-index: 12;
}
.l-gnav__container.-open .hd__logo {
 display: none;
}
.l-gnav__container.-open .l-header__navi ul {
 border-top: none;
 width: 86%;
 margin: 0 auto;
 padding: 0;
 display: flex;
 flex-flow: column;
 align-items: center;
 gap: 10px;
}
.l-gnav__container.-open .l-header__navi li {
 display: block;
 text-align: center;
 height: unset;
 animation: hd__start 0.6s both;
}
.l-gnav__container.-open .l-header__navi li:first-child:before,
.l-gnav__container.-open .l-header__navi li::after {
 display: none;
}
.l-gnav__container.-open .l-header__navi li:nth-child(2) {
 animation-delay: 0.05s;
 -webkit-animation-delay: 0.05s;
}
.l-gnav__container.-open .l-header__navi li:nth-child(3) {
 animation-delay: 0.1s;
 -webkit-animation-delay: 0.1s;
}
.l-gnav__container.-open .l-header__navi li:nth-child(4) {
 animation-delay: 0.15s;
 -webkit-animation-delay: 0.15s;
}
.l-gnav__container.-open .l-header__navi li:nth-child(5) {
 animation-delay: 0.2s;
 -webkit-animation-delay: 0.2s;
}
.l-gnav__container.-open .l-header__navi li:nth-child(6) {
 animation-delay: 0.25s;
 -webkit-animation-delay: 0.25s;
}
.l-gnav__container.-open .l-header__navi li:nth-child(7) {
 animation-delay: 0.3s;
 -webkit-animation-delay: 0.3s;
}
.l-gnav__container.-open .l-header__navi li:nth-child(8) {
 animation-delay: 0.35s;
 -webkit-animation-delay: 0.35s;
}
.l-gnav__container.-open .l-header__navi li:nth-child(9) {
 animation-delay: 0.35s;
 -webkit-animation-delay: 0.35s;
}
.l-gnav__container.-open .l-header__navi li:nth-child(10) {
 animation-delay: 0.4s;
 -webkit-animation-delay: 0.4s;
}
.l-gnav__container.-open .l-header__navi li:nth-child(11) {
 animation-delay: 0.45s;
 -webkit-animation-delay: 0.45s;
}
.l-gnav__container.-open .l-header__navi li:nth-child(12) {
 animation-delay: 0.5s;
 -webkit-animation-delay: 0.5s;
}
.l-gnav__container.-open .l-header__navi li.top {
 display: block;
}
.l-gnav__container.-open .l-header__navi li.sp {
 display: none;
}
.l-gnav__container.-open .l-header__navi li a {
 width: auto;
 margin: 0 auto;
 padding-inline: 0.1em;
 display: inline-block;
 position: relative;
 line-height: 1;
 background: none;
 cursor: pointer;
}
.l-gnav__container.-open .l-header__navi li a span {
 font-size: min(calc((27 / 1360) * 100cqw), 2.7rem);
}
@keyframes hd__start {
 0% {
  opacity: 0;
  transform: translateY(30px);
 }
 100% {
  opacity: 1;
  transform: translateY(0);
 }
}

@media screen and (min-width: 2401px) {
 .hd__menutrigger {
  right: calc(50vw - 1200px);
 }
 .backlayer {
  left: calc(50vw - 1200px);
  width: 2400px;
 }
}

@media screen and (min-width: 821px) {
 .l-header__navi li a:hover span {
  color: var(--color-red);
 }
 .l-gnav__container.-open .l-header__navi li a:hover span {
  color: var(--color-red);
 }
}

@media screen and (max-width: 999px) {
 .l-gnav__container {
  height: 0;
 }
 .l-header__navi {
  display: none;
 }
 .hd__menutrigger {
  opacity: 1;
  transform: scale(1);
 }
}

@media only screen and (max-width: 820px) {
 .hd__menutrigger {
  left: 0;
 }
 .l-gnav__container.-open .l-header__navi ul {
  gap: 20px;
 }
 .l-gnav__container.-open .l-header__navi li.pc {
  display: none;
 }
 .l-gnav__container.-open .l-header__navi li.sp {
  display: block;
 }
 .l-header__navi li a span,
 .l-gnav__container.-open .l-header__navi li a span {
  font-size: min(calc((27 / 820) * 100cqw), 2.7rem);
 }
}

@media only screen and (max-width: 600px) {
 .l-gnav__container {
  opacity: 1;
 }
 .hd__menutrigger {
  display: flex;
  justify-content: center;
 }
 .l-gnav__container.-open .hd__menutrigger {
  background: unset;
 }
 body.-scrolldown .hd__menutrigger {
  transform: translateY(-100%);
 }
 body.-scrolldown .hd__menutrigger-inner.-active {
  transform: translateY(0);
 }
 .hd__menutrigger-inner {
  width: calc((60 / 390) * 100cqw);
  height: calc((60 / 390) * 100cqw);
 }
 .hd__menutrigger-inner::before {
  width: calc((60 / 390) * 100cqw);
  height: calc((60 / 390) * 100cqw);
 }
 .hd__menutrigger span {
  width: calc((36 / 390) * 100cqw);
  height: 2px;
  left: calc((12 / 390) * 100cqw);
 }
 .hd__menutrigger span.hd__menutrigger__line01 {
  top: calc((22 / 390) * 100cqw);
 }
 .hd__menutrigger span.hd__menutrigger__line02 {
  top: calc((32 / 390) * 100cqw);
 }
 .hd__menutrigger.-active span.hd__menutrigger__line01 {
  transform: rotate(20deg) translateX(0px);
  left: calc((12 / 390) * 100cqw);
  top: calc((26 / 390) * 100cqw);
 }
 .hd__menutrigger.-active span.hd__menutrigger__line02 {
  transform: rotate(-20deg) translateX(0px);
  left: calc((12 / 390) * 100cqw);
  top: calc((26 / 390) * 100cqw);
 }
 .hd__menutrigger .hd__menutrigger__txt {
  top: calc((40 / 390) * 100cqw);
 }
 .hd__menutrigger .hd__menutrigger__txt em {
  font-size: min(calc((11 / 390) * 100cqw), 1.1rem);
 }
 .l-gnav__container.-open .hd__menutrigger .hd__menutrigger__txt em {
  color: var(--color-wht);
 }
 .l-gnav__container.-open .l-header__navi {
  overflow-x: hidden;
  overflow-y: auto;
 }
 .l-gnav__container.-open .l-header__navi ul {
  width: 88%;
  padding: 25vw 0;
  gap: calc((14 / 390) * 100cqw);
 }
 .l-header__navi li a span,
 .l-gnav__container.-open .l-header__navi li a span {
  font-size: min(calc((24 / 390) * 100cqw), 2.4rem);
 }
}

/*
titleArea
==================================================================================*/
.titleArea {
 display: flex;
 flex-direction: column;
 position: relative;
 width: 100%;
 padding-bottom: calc((240 / 2720) * 100cqw);
}
.main_img {
 display: block;
 position: absolute;
 top: 0;
 left: calc((654 / 2720) * 100cqw);
 width: calc((1410 / 2720) * 100cqw);
 height: calc((1952 / 2720) * 100cqw);
 z-index: 0;
 overflow: hidden;
}
.image-wrap {
 width: 100%;
 height: 100%;
 overflow: hidden;
}
.main_img .img {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
 display: block;
 background: url(../img/ta_main.jpg) no-repeat 50% 50%;
 background-size: contain;
 transition: all 1.8s cubic-bezier(0.08, 0.8, 0.315, 1);
}
.ta_main {
 display: block;
 position: relative;
 width: 100%;
 padding-top: calc((22 / 2720) * 100cqw);
 z-index: 1;
}
.ta_marks {
 position: relative;
 width: calc((664 / 2720) * 100cqw);
 margin-inline: auto;
 display: block;
}
.ta_logo {
 position: relative;
 width: calc((536 / 2720) * 100cqw);
 margin-top: calc((50 / 2720) * 100cqw);
 margin-inline: auto;
 display: block;
}
.ta_logo h1 {
 position: relative;
 width: 100%;
 z-index: 2;
}
.ta_billing {
 position: relative;
 width: calc((732 / 2720) * 100cqw);
 margin-top: calc((1180 / 2720) * 100cqw);
 margin-inline: auto;
 display: block;
}
.ta_cp1 {
 position: absolute;
 top: calc((173 / 2720) * 100cqw);
 right: calc((192 / 2720) * 100cqw);
 width: calc((244 / 2720) * 100cqw);
 display: block;
}
.ta_cp2 {
 position: relative;
 width: calc((1384 / 2720) * 100cqw);
 margin-top: calc((60 / 2720) * 100cqw);
 margin-inline: auto;
 display: block;
}
.ta_date {
 position: absolute;
 top: calc((1764 / 2720) * 100cqw);
 right: calc((122 / 2720) * 100cqw);
 width: calc((298 / 2720) * 100cqw);
 display: block;
}
.ts_linkbtn {
 display: flex;
 justify-content: center;
 align-items: center;
 gap: calc((80 / 2720) * 100cqw);
 margin-top: calc((60 / 2720) * 100cqw);
 z-index: 2;
}
.btn_wrap {
 display: flex;
 align-items: center;
 gap: 10px;
}
.ts_linkbtn .sns {
 gap: calc((30 / 1360) * 100cqw);
}
.ts_linkbtn .sns .btn {
 display: flex;
 align-items: center;
 justify-content: center;
 width: 26px;
 height: 26px;
}
.ts_linkbtn .sns .btn a {
 width: 26px;
 height: 26px;
 display: flex;
 align-items: center;
 justify-content: center;
 fill: var(--color-wht);
 transition: all 0.2s ease;
}
.top_banner {
 position: relative;
 display: flex;
 justify-content: center;
 gap: 2cqw;
}
.top_banner .bnr_mvtk {
 width: 160px;
}
#topmovarea_sp {
 display: none;
}

/* -start */
.ta_marks,
.ta_logo,
.ta_cp1,
.ta_cp2,
.ta_billing,
.ta_date {
 opacity: 1;
}
.main_img .img {
 opacity: 0;
 transform: scale(1.1);
}
body.-start .main_img .img {
 opacity: 1;
 transform: scale(1);
 transition: all 3.5s cubic-bezier(0.17, 0.67, 0.5, 1);
 transition-delay: 0.6s;
}
.ta_cp1 {
 clip-path: inset(0 0 100% 0);
}
body.-start .ta_cp1 {
 animation: reveal 2.5s cubic-bezier(0.08, 0.8, 0.315, 1) 2s both;
}
@keyframes reveal {
 to {
  clip-path: inset(0% 0% 0% 0%);
 }
}
body.-start .ta_h1 {
 animation: ani_tah1 2s cubic-bezier(0.17, 0.67, 0.5, 1) 4.5s both;
}
body.-start .ta_marks,
body.-start .ta_cp2,
body.-start .ta_billing,
body.-start .ta_date {
 animation: obiOpa 0.8s cubic-bezier(0.435, 0.25, 0.15, 0.965) 6s both;
}
@keyframes ani_tah1 {
 0% {
  opacity: 0;
  transform: scale(1.05);
 }
 100% {
  opacity: 1;
  transform: scale(1);
 }
}
@keyframes obiOpa {
 0% {
  opacity: 0;
 }
 100% {
  opacity: 1;
 }
}

@media screen and (min-width: 821px) {
 .ts_linkbtn .sns .btn a:hover {
  fill: var(--color-red);
 }
}

@media screen and (max-width: 820px) {
 .titleArea {
  padding-bottom: calc((240 / 2720) * 100cqw);
 }
 .main_img {
  left: 0;
  width: 100%;
  height: calc((1700 / 1170) * 100cqw);
 }
 .ta_main {
  padding-top: calc((30 / 1170) * 100cqw);
 }
 .ta_marks {
  width: calc((630 / 1170) * 100cqw);
 }
 .ta_logo {
  width: calc((480 / 1170) * 100cqw);
  margin-top: calc((36 / 1170) * 100cqw);
 }
 .ta_billing {
  width: calc((630 / 1170) * 100cqw);
  margin-top: calc((992 / 1170) * 100cqw);
 }
 .ta_cp1 {
  top: calc((966 / 1170) * 100cqw);
  right: calc((50 / 1170) * 100cqw);
  width: calc((192 / 1170) * 100cqw);
 }
 .ta_cp2 {
  width: calc((1118 / 1170) * 100cqw);
  margin-top: calc((60 / 1170) * 100cqw);
 }
 .ta_date {
  position: relative;
  top: unset;
  right: unset;
  width: calc((268 / 1170) * 100cqw);
  margin-top: calc((38 / 1170) * 100cqw);
  margin-inline: auto;
 }
 .ts_linkbtn {
  gap: calc((80 / 1170) * 100cqw);
  margin-top: calc((40 / 1170) * 100cqw);
  z-index: 2;
 }

 #topmovarea_sp {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
  margin-inline: auto;
  padding-bottom: calc((100 / 1170) * 100cqw);
 }
 #topmovarea_sp .movie {
  width: calc((1060 / 1170) * 100cqw);
  margin: 0 auto;
 }
 #topmovarea_sp .movie .inner {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  margin: 0 auto;
 }
 #topmovarea_sp .movie .inner iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
  line-height: 1em;
  position: absolute;
  top: 0;
  left: 0;
 }
 #topmovarea_sp .movie .tab_area {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 10px;
  padding-block: 15px;
  flex-wrap: wrap;
  margin: 0 auto;
 }
 #topmovarea_sp .movie .tab_area li {
  display: block;
  text-align: center;
  position: relative;
 }
 #topmovarea_sp .movie .tab_area li.widebtn {
  width: 100%;
 }
 #topmovarea_sp .movie .tab_area li a {
  display: block;
  width: 100%;
  height: 100%;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  background-color: var(--color-wht);
  color: var(--color-red);
  border: 1px solid var(--color-red);
  padding: 15px 20px;
  border-radius: 6px;
  letter-spacing: 0;
 }
 #topmovarea_sp .movie .tab_area li a span {
  font-size: 1.4rem;
  font-weight: 500;
  margin-left: 4px;
 }
 #topmovarea_sp .movie .tab_area li a.small {
  font-size: 1.1rem;
 }
 #topmovarea_sp .movie .tab_area li a em {
  display: inline-block;
  font-size: 1.3rem;
 }
 #topmovarea_sp .movie .tab_area li a.active {
  color: var(--color-wht);
  background-color: var(--color-red);
 }
 #topmovarea_sp .movie .tab_area li .new {
  position: absolute;
  top: 0px;
  left: 0px;
  display: inline-block;
  width: auto;
  height: auto;
  padding: 1em;
  background: #efdb2c;
  color: #000;
  font-size: 10px;
  font-weight: bold;
  text-align: center;
  z-index: 2;
 }
}

@media screen and (max-width: 600px) {
 .titleArea {
  padding-bottom: calc((24 / 390) * 100cqw);
 }
 .ta_cp1 {
  top: calc((1026 / 1170) * 100cqw);
  right: calc((40 / 1170) * 100cqw);
  width: calc((222 / 1170) * 100cqw);
 }
 .ta_date {
  width: calc((268 / 1170) * 100cqw);
  margin-top: calc((24 / 390) * 100cqw);
 }
 .ts_linkbtn {
  gap: calc((20 / 390) * 100cqw);
  margin-top: calc((30 / 390) * 100cqw);
 }
 .ts_linkbtn .sns {
  gap: calc((24 / 390) * 100cqw);
  margin-inline: unset;
 }
 .ts_linkbtn .sns .btn {
  width: calc((24 / 390) * 100cqw);
  height: calc((24 / 390) * 100cqw);
 }
 .ts_linkbtn .sns .btn a {
  width: calc((24 / 390) * 100cqw);
  height: calc((24 / 390) * 100cqw);
 }
 .top_banner .bnr_mvtk {
  width: calc((140 / 390) * 100cqw);
 }
 #topmovarea_sp .movie {
  width: 100%;
 }
 #topmovarea_sp .movie .tab_area {
  gap: 6px;
  padding-block: 12px;
 }
 #topmovarea_sp .movie .tab_area li a {
  font-size: min(1.4rem, 3.5vw);
  padding: 8px 12px;
 }
 #topmovarea_sp .movie .tab_area li a span {
  font-size: 1.2rem;
 }
}

/*
 movieModal
==================================================================================*/
#cboxTopCenter {
 height: 0;
}
#cboxClose {
 position: fixed;
 right: 0;
 top: 0;
 width: 60px;
 height: 60px;
 background: var(--color-red);
 background-size: auto 24px;
 z-index: 10000;
 transition: all 0.3s ease-out;
}
#cboxClose::before {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 width: 60px;
 height: 60px;
 background: url(../img/common/svg_close.svg) no-repeat 50% 50%;
 background-size: auto 24px;
 transition: all 0.3s ease-out;
}

@media only screen and (min-width: 821px) {
 #cboxClose:hover {
  background: var(--color-red);
 }
 #cboxClose:hover::before {
  transform: rotate(180deg);
 }
}

@media only screen and (max-width: 600px) {
 #cboxClose {
  width: min(54px, calc((54 / 390) * 100cqw));
  height: min(54px, calc((54 / 390) * 100cqw));
 }
 #cboxClose::before {
  width: min(54px, calc((54 / 390) * 100cqw));
  height: min(54px, calc((54 / 390) * 100cqw));
  background: url(../img/common/svg_close.svg) no-repeat 50% 50%;
  background-size: auto 20px;
 }
}

/*
 top_mvtk
==================================================================================*/
.mvtk {
 width: 100%;
 display: block;
 position: relative;
 padding: 20px 40px;
 background: linear-gradient(to bottom, rgba(232, 32, 18, 1) 0%, rgba(232, 32, 18, 0) 60%, rgba(232, 32, 18, 0) 100%);

 z-index: 1;
}
.mvtk.bg_red {
 background-color: var(--color-wht);
}
.top_mvtk {
 width: 100%;
 display: block;
}
.top_mvtk #mvtk-widgets-container {
 margin: 0 auto;
}
.top_mvtk .mvtk-normal-container {
 border: none;
}

@media only screen and (max-width: 820px) {
 .mvtk {
  padding: 20px 20px;
 }
}
@media only screen and (max-width: 600px) {
 .top_mvtk {
  width: 100%;
  display: block;
  padding: 0;
  margin-bottom: 0;
 }
}

/* Contents
================================================================================== */
.cont_body {
 position: relative;
 padding-inline: calc((60 / 1360) * 100cqw);
}
.ttl_wrap {
 display: flex;
 justify-content: center;
 align-items: center;
}
.ttl {
 display: flex;
 flex-flow: column;
 align-items: center;
 gap: min(calc((20 / 1360) * 100cqw), 20px);
 position: relative;
}
.sub {
 display: flex;
 color: var(--color-wht);
 font-size: min(calc((90 / 1360) * 100cqw), 9rem);
 font-family: var(--ff-mar);
 font-weight: 400;
 letter-spacing: -0.02em;
 position: relative;
}
.sub i {
 color: var(--color-red);
 font-style: normal;
}
.mds {
 display: flex;
 justify-content: center;
 color: var(--color-red);
 font-size: min(calc((22 / 1360) * 100cqw), 2.2rem);
 font-family: var(--ff-min);
 font-weight: 600;
 position: relative;
}
.sq_red {
 position: absolute;
 top: 0;
 left: 0;
 width: calc((120 / 1360) * 100cqw);
 aspect-ratio: 1/1;
}
.sq_red span {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 display: block;
 background-color: var(--color-red);
}
.bg {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 overflow: hidden;
}
.bg .img {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 background-position: 50% 50%;
 background-repeat: no-repeat;
 background-size: cover;
}
.sticky {
 position: sticky;
 top: 0;
}

@media only screen and (max-width: 820px) {
 .cont_body {
  padding: 0 calc((30 / 820) * 100cqw);
 }
 .ttl {
  gap: min(calc((14 / 820) * 100cqw), 14px);
 }
 .sub {
  font-size: min(calc((70 / 820) * 100cqw), 7rem);
 }
 .mds {
  font-size: min(calc((18 / 820) * 100cqw), 1.8rem);
 }
 .sticky {
  position: relative;
  top: unset;
 }
}

@media only screen and (max-width: 600px) {
 .cont_body {
  padding: 0 calc((20 / 390) * 100cqw);
 }
 .ttl {
  gap: min(calc((14 / 390) * 100cqw), 14px);
 }
 .sub {
  font-size: min(calc((58 / 390) * 100cqw), 5.8rem);
  text-align: center;
 }
 .mds {
  font-size: min(calc((16 / 390) * 100cqw), 1.6rem);
 }
 .sq_red {
  width: calc((60 / 390) * 100cqw);
 }
}

/* overimg
 ================================================================================== */
#overimg {
 width: 100%;
 height: 100vh;
 overflow: hidden;
 position: relative;
}
.overimg_img {
 position: absolute;
 top: 0;
 left: 0;
 width: 100cqw;
 height: 100vh;
 background: var(--color-blk) url(../img/overimg_img.jpg) no-repeat 50% 50%;
 background-size: 100% auto;
 z-index: 1;
}
.overimg_img::after {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 background: var(--color-blk);
 transition: 0.5s all ease-in-out;
 opacity: 0;
 z-index: 1;
}
.overimg_img.-on::after {
 opacity: 0.6;
}
.p-overimg {
 position: absolute;
 top: 100%; /* 画面の下に待機 */
 width: 100%;
 z-index: 2;
 display: flex;
 flex-direction: column;
 align-items: center;
 padding-bottom: calc((400 / 1360) * 100cqw);
}

@media only screen and (max-width: 820px) {
 .overimg_img {
  width: 100vw;
  height: 100vh;
  background-size: cover;
 }
}

/* selections
 ================================================================================== */
#selections {
 width: 100%;
 position: relative;
}
#selections .cont_body {
 position: relative;
 padding-inline: 0;
 height: 100vh;
 overflow: hidden;
}
.p-selections {
 position: absolute;
 top: 100%;
 left: 0;
 width: 100%;
 z-index: 2;
 display: flex;
 flex-direction: column;
 align-items: center;
 padding-bottom: calc((240 / 1360) * 100cqw);
}
.selections_wrap {
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: calc((25 / 1360) * 100cqw);
 margin-top: calc((100 / 1360) * 100cqw);
}
.selections_wrap .item {
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: calc((5 / 1360) * 100cqw);
}
.selections_wrap .item .name,
.selections_wrap .item .type {
 font-size: min(calc((17 / 1360) * 100cqw), 1.7em);
 font-family: var(--ff-min);
 font-weight: 500;
 line-height: 1.4;
 letter-spacing: -0.02em;
}
.selections_wrap .item .eng {
 font-size: min(calc((17 / 1360) * 100cqw), 1.7em);
 font-family: var(--ff-mar);
 font-weight: 400;
 line-height: 1.4;
 letter-spacing: -0.01em;
}
.selections_wrap .item .other {
 margin-top: calc((20 / 1360) * 100cqw);
 font-size: min(calc((14 / 1360) * 100cqw), 1.4em);
 font-weight: 400;
 line-height: 1.4;
}

@media only screen and (max-width: 820px) {
 .p-selections {
  padding-top: calc((100 / 820) * 100cqw);
 }
 .selections_wrap {
  gap: calc((25 / 820) * 100cqw);
 }
 .selections_wrap .item {
  gap: calc((5 / 820) * 100cqw);
 }
 .selections_wrap .item .name,
 .selections_wrap .item .type {
  font-size: min(calc((17 / 820) * 100cqw), 1.7em);
 }
 .selections_wrap .item .eng {
  font-size: min(calc((17 / 820) * 100cqw), 1.7em);
 }
 .selections_wrap .item .other {
  margin-top: calc((20 / 820) * 100cqw);
  font-size: min(calc((14 / 820) * 100cqw), 1.4em);
 }
}

@media only screen and (max-width: 600px) {
 #selections .cont_body {
  padding-top: calc((100 / 390) * 100cqw);
  padding-bottom: calc((160 / 390) * 100cqw);
 }
 .p-selections {
  padding-top: calc((50 / 390) * 100cqw);
  padding-bottom: calc((120 / 390) * 100cqw);
 }
 .selections_wrap {
  gap: calc((25 / 390) * 100cqw);
  margin-top: calc((60 / 390) * 100cqw);
 }
 .selections_wrap .item {
  gap: calc((5 / 390) * 100cqw);
 }
 .selections_wrap .item .name,
 .selections_wrap .item .type {
  font-size: min(calc((15 / 390) * 100cqw), 1.5em);
 }
 .selections_wrap .item .eng {
  font-size: min(calc((15 / 390) * 100cqw), 1.5em);
  text-align: center;
 }
 .selections_wrap .item .other {
  margin-top: calc((20 / 390) * 100cqw);
  font-size: min(calc((13 / 390) * 100cqw), 1.3em);
 }
}

/* praise
================================================================================== */
#praise {
 width: 100%;
 position: relative;
}
#praise .cont_body {
 padding-top: calc((200 / 1360) * 100cqw);
 padding-bottom: calc((240 / 1360) * 100cqw);
}
.p-praise {
 width: 100%;
 margin-top: calc((60 / 1360) * 100cqw);
 position: relative;
}
.praise_wrap {
 width: 100%;
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: calc((70 / 1360) * 100cqw);
}
.praise_wrap .item {
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: calc((10 / 1360) * 100cqw);
}
.praise_wrap .item .word {
 font-size: min(calc((17 / 1360) * 100cqw), 1.7em);
 font-family: var(--ff-min);
 font-weight: 500;
 line-height: 1.7;
 letter-spacing: -0.02em;
 text-align: center;
}
.praise_wrap .item .name {
 color: var(--color-red);
 font-size: min(calc((15 / 1360) * 100cqw), 1.5em);
 font-family: var(--ff-min);
 font-weight: 600;
 line-height: 1.4;
 letter-spacing: -0.01em;
 text-align: center;
 position: relative;
}
.praise_wrap .item .name::before {
 content: "";
 position: relative;
 top: -0.3em;
 width: 20px;
 height: 1px;
 background: var(--color-red);
 display: inline-block;
 margin-right: 0.5em;
}
.praise_wrap .item em {
 letter-spacing: -0.04em;
 margin-inline: 0.2em;
}

@media only screen and (max-width: 820px) {
 .p-praise {
  margin-top: calc((60 / 820) * 100cqw);
 }
 .praise_wrap {
  gap: calc((70 / 820) * 100cqw);
 }
 .praise_wrap .item {
  gap: calc((10 / 820) * 100cqw);
 }
 .praise_wrap .item .word {
  font-size: min(calc((17 / 820) * 100cqw), 1.7em);
 }
 .praise_wrap .item .name {
  color: var(--color-red);
  font-size: min(calc((15 / 820) * 100cqw), 1.5em);
 }
}

@media only screen and (max-width: 600px) {
 #praise .cont_body {
  padding-top: calc((100 / 390) * 100cqw);
  padding-bottom: calc((120 / 390) * 100cqw);
 }
 .p-praise {
  margin-top: calc((60 / 390) * 100cqw);
 }
 .praise_wrap {
  gap: calc((50 / 390) * 100cqw);
 }
 .praise_wrap .item {
  align-items: flex-start;
  gap: calc((10 / 390) * 100cqw);
 }
 .praise_wrap .item .word {
  font-size: min(calc((15 / 390) * 100cqw), 1.5em);
  text-align: left;
 }
 .praise_wrap .item .name {
  font-size: min(calc((13 / 390) * 100cqw), 1.3em);
  text-align: left;
 }
}

/* film
 ================================================================================== */
.film_header {
 width: 100%;
 height: 66.9cqw;
 display: flex;
 justify-content: center;
 align-items: center;
 position: relative;
 overflow: hidden;
 background-color: var(--color-blk);
}
.film_header_photo {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 overflow: hidden;
 background: url(../img/film_header_photo.jpg) no-repeat 50% 50%;
 background-size: cover;
}
#film {
 width: 100%;
 position: relative;
 color: var(--color-blk);
 background-color: var(--color-wht);
}
#film .sq_red {
 left: unset;
 right: 0;
}
#film .cont_body {
 padding-top: calc((200 / 1360) * 100cqw);
 padding-inline: unset;
}
.film_head {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 padding-inline: calc((60 / 1360) * 100cqw);
 width: 100%;
 position: relative;
}
.film_wrap {
 display: flex;
 flex-direction: row;
}
.p-film {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 padding-left: calc((60 / 1360) * 100cqw);
 padding-bottom: calc((160 / 1360) * 100cqw);
 width: calc((840 / 1360) * 100cqw);
 position: relative;
}
#film .ttl {
 align-items: flex-start;
}
#film .sub {
 display: block;
 color: var(--color-blk);
}
#film .mds {
 justify-content: flex-start;
}
.film_cp {
 color: var(--color-red);
 font-size: min(calc((21 / 1360) * 100cqw), 2.1rem);
 font-family: var(--ff-min);
 font-weight: 700;
 letter-spacing: -0.02em;
 line-height: 1.7;
 margin-top: calc((80 / 1360) * 100cqw);
}
.p-film .p-text {
 width: calc((645 / 1360) * 100cqw);
 margin-top: calc((40 / 1360) * 100cqw);
 position: relative;
 z-index: 2;
}
.p-film .p-text p {
 font-size: min(calc((17 / 1360) * 100cqw), 1.7rem);
 font-family: var(--ff-min);
 font-weight: 500;
 line-height: 1.8;
 letter-spacing: -0.02em;
}
.p-film .p-text p + p {
 margin-top: 2em;
}
.p-film .p-text p em {
 letter-spacing: -0.05em;
}
.film_photo {
 position: relative;
 width: calc((520 / 1360) * 100cqw);
 margin-top: calc((40 / 1360) * 100cqw);
}

@media only screen and (max-width: 820px) {
 #film .cont_body {
  padding-top: calc((200 / 820) * 100cqw);
 }
 .film_wrap {
  flex-direction: column;
 }
 .p-film {
  padding-inline: calc((40 / 820) * 100cqw);
  padding-bottom: calc((160 / 1360) * 100cqw);
  width: 100%;
 }
 .film_cp {
  font-size: min(calc((21 / 820) * 100cqw), 2.1rem);
  margin-top: calc((60 / 820) * 100cqw);
 }
 .p-film .p-text {
  width: 100%;
  margin-top: calc((54 / 820) * 100cqw);
 }
 .p-film .p-text p {
  font-size: min(calc((16 / 820) * 100cqw), 1.6rem);
 }
 .film_photo {
  width: calc((620 / 820) * 100cqw);
  margin-top: unset;
  margin-left: auto;
 }
}

@media only screen and (max-width: 600px) {
 #film .cont_body {
  padding-top: calc((140 / 390) * 100cqw);
 }
 #film .sub {
  text-align: left;
 }
 .film_head {
  padding-inline: calc((20 / 390) * 100cqw);
 }
 .p-film {
  padding-inline: calc((20 / 390) * 100cqw);
  padding-bottom: calc((60 / 390) * 100cqw);
 }
 .film_cp {
  font-size: min(calc((18 / 390) * 100cqw), 1.8rem);
  margin-top: calc((50 / 390) * 100cqw);
 }
 .p-film .p-text {
  width: 100%;
  margin-top: calc((30 / 390) * 100cqw);
 }
 .p-film .p-text p {
  font-size: min(calc((15 / 390) * 100cqw), 1.5rem);
 }
 .film_photo {
  width: calc((300 / 390) * 100cqw);
 }
}

/* ozu
 ================================================================================== */
#ozu {
 width: 100%;
 position: relative;
 color: var(--color-blk);
 background-color: var(--color-wht);
}
#ozu .cont_body {
 padding-top: calc((200 / 1360) * 100cqw);
 padding-bottom: calc((200 / 1360) * 100cqw);
 padding-inline: unset;
}
.ozu_wrap {
 display: flex;
 flex-direction: row-reverse;
}
.p-ozu {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 padding-top: calc((120 / 1360) * 100cqw);
 padding-left: calc((90 / 1360) * 100cqw);
 padding-right: calc((130 / 1360) * 100cqw);
 padding-bottom: calc((160 / 1360) * 100cqw);
 width: calc((880 / 1360) * 100cqw);
 position: relative;
}
#ozu .ttl {
 align-items: flex-start;
}
#ozu .sub {
 color: var(--color-blk);
 flex-direction: column;
}
.ozu_cp_01 {
 width: min(calc((480 / 1360) * 100cqw), 480px);
}
.ozu_cp_02 {
 color: var(--color-red);
 font-size: min(calc((22 / 1360) * 100cqw), 2.2rem);
 font-weight: 700;
 letter-spacing: -0.02em;
 line-height: 1.7;
 text-align: center;
 margin-top: calc((18 / 1360) * 100cqw);
}
.p-ozu .p-text {
 width: calc((645 / 1360) * 100cqw);
 margin-top: calc((50 / 1360) * 100cqw);
 position: relative;
 z-index: 2;
}
.p-ozu .p-text p {
 font-size: min(calc((17 / 1360) * 100cqw), 1.7rem);
 font-weight: 400;
 line-height: 1.8;
 letter-spacing: -0.02em;
}
.p-ozu .p-text p + p {
 margin-top: 2em;
}
.p-ozu .p-text p em {
 letter-spacing: -0.05em;
}
.ozu_photo {
 width: calc((480 / 1360) * 100cqw);
 position: relative;
}

@media only screen and (max-width: 820px) {
 .ozu_wrap {
  flex-direction: column;
 }
 .p-ozu {
  padding-top: calc((60 / 820) * 100cqw);
  padding-bottom: calc((100 / 820) * 100cqw);
  padding-inline: calc((40 / 820) * 100cqw);
  width: 100%;
 }
 .p-ozu .p-text {
  width: 100%;
  margin-top: calc((54 / 820) * 100cqw);
 }
 .p-ozu .p-text p {
  font-size: min(calc((16 / 820) * 100cqw), 1.6rem);
 }
 .ozu_photo {
  width: calc((380 / 820) * 100cqw);
 }
}

@media only screen and (max-width: 600px) {
 #ozu .cont_body {
  padding-top: calc((140 / 390) * 100cqw);
  padding-bottom: 0;
 }
 #ozu .sub {
  font-size: min(calc((55 / 390) * 100cqw), 5.5rem);
  text-align: left;
 }
 .p-ozu {
  padding-top: unset;
  padding-bottom: calc((60 / 390) * 100cqw);
  padding-inline: calc((20 / 390) * 100cqw);
  width: 100%;
 }
 .p-ozu .p-text {
  margin-top: calc((50 / 390) * 100cqw);
 }
 .p-ozu .p-text p {
  font-size: min(calc((15 / 390) * 100cqw), 1.5rem);
 }
 .ozu_photo {
  width: calc((220 / 390) * 100cqw);
 }
}

/* note
 ================================================================================== */
.note_header {
 width: 100%;
 height: 66.9cqw;
 display: flex;
 justify-content: center;
 align-items: center;
 position: relative;
 overflow: hidden;
 background-color: var(--color-blk);
}
.note_header_photo {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 overflow: hidden;
 background: url(../img/note_header_photo.jpg) no-repeat 50% 50%;
 background-size: cover;
}
#note {
 width: 100%;
 position: relative;
 color: var(--color-blk);
 background-color: #f3ede0;
}
#note .cont_body {
 padding-top: calc((200 / 1360) * 100cqw);
 padding-bottom: calc((200 / 1360) * 100cqw);
 padding-inline: unset;
}
#note .ttl_wrap {
 display: flex;
 justify-content: flex-start;
 align-items: center;
 padding-inline: calc((60 / 1360) * 100cqw);
}
#note .ttl {
 align-items: flex-start;
}
#note .sub {
 display: block;
 color: var(--color-blk);
}
.note_wrap {
 display: flex;
 flex-direction: row;
 margin-top: calc((60 / 1360) * 100cqw);
}
.p-note {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 padding-left: calc((60 / 1360) * 100cqw);
 padding-bottom: calc((160 / 1360) * 100cqw);
 width: calc((835 / 1360) * 100cqw);
 position: relative;
}
.p-note .p-text {
 width: calc((645 / 1360) * 100cqw);
 position: relative;
 z-index: 2;
}
.p-note .p-text p {
 font-size: min(calc((17 / 1360) * 100cqw), 1.7rem);
 font-family: var(--ff-min);
 font-weight: 500;
 line-height: 1.8;
 letter-spacing: -0.02em;
}
.p-note .p-text p + p {
 margin-top: 2em;
}
.p-note .p-text p em {
 letter-spacing: -0.05em;
}
.note_photo {
 position: relative;
 width: calc((525 / 1360) * 100cqw);
}

@media only screen and (max-width: 820px) {
 #note .cont_body {
  padding-top: calc((140 / 820) * 100cqw);
  padding-bottom: calc((200 / 820) * 100cqw);
  padding-inline: calc((40 / 820) * 100cqw);
 }
 #note .ttl_wrap {
  padding-inline: unset;
 }
 .note_wrap {
  flex-direction: column-reverse;
  margin-top: calc((54 / 820) * 100cqw);
 }
 .p-note {
  padding-inline: unset;
  padding-bottom: unset;
  margin-top: calc((54 / 820) * 100cqw);
  width: 100%;
 }
 .p-note .p-text {
  width: 100%;
 }
 .p-note .p-text p {
  font-size: min(calc((15 / 820) * 100cqw), 1.5rem);
 }
 .note_photo {
  width: calc((400 / 820) * 100cqw);
  margin-inline: auto;
 }
}

@media only screen and (max-width: 600px) {
 #note .cont_body {
  padding-top: calc((100 / 390) * 100cqw);
  padding-bottom: calc((100 / 390) * 100cqw);
  padding-inline: calc((20 / 390) * 100cqw);
 }
 #note .sub {
  text-align: left;
 }
 .note_wrap {
  margin-top: calc((50 / 390) * 100cqw);
 }
 .p-note {
  margin-top: calc((54 / 390) * 100cqw);
 }
 .p-note .p-text p {
  font-size: min(calc((15 / 390) * 100cqw), 1.5rem);
 }
 .note_photo {
  width: calc((300 / 390) * 100cqw);
 }
}

/* featuring
================================================================================== */
#featuring {
 width: 100%;
 position: relative;
 color: var(--color-blk);
 background-color: var(--color-wht);
 overflow: hidden;
}
#featuring .cont_body {
 padding-top: calc((200 / 1360) * 100cqw);
}
#featuring .ttl_wrap {
 justify-content: flex-end;
}
#featuring .ttl {
 align-items: flex-end;
}
#featuring .sub {
 display: block;
 color: var(--color-blk);
}
.p-cast {
 display: flex;
 flex-direction: column;
 align-items: center;
 width: 100%;
 margin-top: calc((20 / 1360) * 100cqw);
 margin-inline: auto;
 position: relative;
}
.cast_over {
 display: flex;
 flex-direction: column;
 gap: calc((54 / 1360) * 100cqw);
}
.cast_over .cast {
 display: flex;
 align-items: center;
 gap: calc((50 / 1360) * 100cqw);
 width: 100%;
}
.cast_over .cast.cast_02,
.cast_over .cast.cast_04 {
 flex-direction: row-reverse;
}
.cast .photo img {
 width: 100%;
}
.cast_over .cast .photo {
 width: calc((530 / 1360) * 100cqw);
}
.cast_over .cast .prof {
 width: calc((660 / 1360) * 100cqw);
 display: flex;
 flex-direction: column;
}
.cast_middle {
 margin-top: calc((54 / 1360) * 100cqw);
 width: 100%;
 display: flex;
 gap: calc((50 / 1360) * 100cqw);
}
.cast_middle .cast {
 display: flex;
 flex-direction: column;
 gap: calc((20 / 1360) * 100cqw);
 width: calc((380 / 1360) * 100cqw);
}
.prof .en_name {
 font-size: min(calc((26 / 1360) * 100cqw), 2.6rem);
 font-family: var(--ff-mar);
 font-weight: 400;
}
.prof .jp_name {
 color: var(--color-red);
 font-size: min(calc((28 / 1360) * 100cqw), 2.8rem);
 font-family: var(--ff-min);
 font-weight: 500;
 letter-spacing: -0.04em;
 margin-top: calc((15 / 1360) * 100cqw);
}
.prof .text {
 margin-top: calc((15 / 1360) * 100cqw);
}
.prof .text p {
 font-size: min(calc((15 / 1360) * 100cqw), 1.5em);
 font-weight: 400;
 line-height: 1.6;
}
.cast_sp {
 display: none;
}
.under_list {
 margin-top: calc((110 / 1360) * 100cqw);
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: calc((18 / 1360) * 100cqw);
 padding-block: calc((40 / 1360) * 100cqw);
 border-top: 2px solid var(--color-red);
 border-bottom: 2px solid var(--color-red);
}
.under_list .item {
 display: flex;
 align-items: center;
 gap: calc((15 / 1360) * 100cqw);
}
.under_list .jp_name {
 color: var(--color-red);
 font-size: min(calc((17 / 1360) * 100cqw), 1.7em);
 font-family: var(--ff-min);
 font-weight: 500;
 line-height: 1.4;
 letter-spacing: -0.02em;
}
.under_list .en_name {
 font-size: min(calc((17 / 1360) * 100cqw), 1.7em);
 font-family: var(--ff-mar);
 font-weight: 400;
 line-height: 1.4;
 letter-spacing: -0.01em;
}
.under_list .job {
 font-size: min(calc((15 / 1360) * 100cqw), 1.5em);
 font-weight: 400;
 line-height: 1.4;
}
.under_list .biko {
 font-size: min(calc((14 / 1360) * 100cqw), 1.4em);
 font-weight: 400;
 line-height: 1.4;
}
.under_list .item_mds {
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: calc((6 / 1360) * 100cqw);
 margin-top: calc((40 / 1360) * 100cqw);
}
.under_list .item_mds .en_mds {
 font-size: min(calc((18 / 1360) * 100cqw), 1.8em);
 font-family: var(--ff-mar);
 font-weight: 400;
}
.under_list .item_mds .jp_mds {
 font-size: min(calc((14 / 1360) * 100cqw), 1.4em);
 font-family: var(--ff-min);
 font-weight: 500;
}
.under_list .item_s {
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: calc((5 / 1360) * 100cqw);
}

@media only screen and (max-width: 820px) {
 #featuring .cont_body {
  padding-top: calc((140 / 820) * 100cqw);
 }
 .p-cast {
  margin-top: calc((54 / 820) * 100cqw);
 }
 .cast_over {
  gap: calc((54 / 820) * 100cqw);
 }
 .cast_over .cast {
  align-items: flex-start;
  gap: calc((50 / 1360) * 100cqw);
 }
 .cast_middle {
  flex-wrap: wrap;
  margin-top: calc((54 / 820) * 100cqw);
  gap: calc((50 / 820) * 100cqw);
 }
 .cast_middle .cast {
  gap: calc((20 / 820) * 100cqw);
  width: calc((354 / 820) * 100cqw);
 }
 .prof .jp_name {
  font-size: min(calc((22 / 820) * 100cqw), 2.2rem);
 }
 .prof .text p {
  font-size: min(calc((14 / 820) * 100cqw), 14px);
  line-height: 1.5;
 }
 .under_list {
  margin-top: calc((80 / 820) * 100cqw);
  gap: calc((18 / 820) * 100cqw);
  padding-block: calc((40 / 820) * 100cqw);
 }
 .under_list .item {
  gap: calc((15 / 820) * 100cqw);
 }
 .under_list .jp_name {
  font-size: min(calc((17 / 820) * 100cqw), 1.7em);
 }
 .under_list .en_name {
  font-size: min(calc((17 / 820) * 100cqw), 1.7em);
 }
 .under_list .job {
  font-size: min(calc((15 / 820) * 100cqw), 1.5em);
 }
 .under_list .biko {
  font-size: min(calc((14 / 820) * 100cqw), 1.4em);
 }
 .under_list .item_mds {
  gap: calc((6 / 820) * 100cqw);
  margin-top: calc((40 / 820) * 100cqw);
 }
 .under_list .item_mds .en_mds {
  font-size: min(calc((18 / 820) * 100cqw), 1.8em);
 }
 .under_list .item_mds .jp_mds {
  font-size: min(calc((14 / 820) * 100cqw), 1.4em);
 }
 .under_list .item_s {
  gap: calc((5 / 820) * 100cqw);
 }
}

@media only screen and (max-width: 600px) {
 #featuring .cont_body {
  padding-top: calc((140 / 390) * 100cqw);
  padding-bottom: calc((40 / 390) * 100cqw);
 }
 .p-cast {
  margin-top: calc((40 / 390) * 100cqw);
 }
 .cast_over {
  gap: calc((54 / 390) * 100cqw);
 }
 .cast_over .cast,
 .cast {
  color: var(--color-blk);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: calc((20 / 390) * 100cqw);
  padding-top: calc((80 / 390) * 100cqw);
  padding-bottom: calc((40 / 390) * 100cqw);
  padding-inline: calc((20 / 390) * 100cqw);
  background-color: var(--color-wht);
  min-height: 100vh;
 }
 .cast_over .cast.cast_02,
 .cast_over .cast.cast_04 {
  flex-direction: column;
 }
 .cast .photo img {
  width: 100%;
 }
 .cast_over .cast .photo {
  width: 100%;
 }
 .cast_over .cast .prof {
  width: 100%;
 }
 .cast_middle {
  margin-top: calc((54 / 390) * 100cqw);
  width: 100%;
  display: flex;
  gap: calc((50 / 390) * 100cqw);
 }
 .cast_middle .cast {
  gap: calc((20 / 390) * 100cqw);
  width: 100%;
  padding-inline: calc((20 / 390) * 100cqw);
 }
 .prof .en_name {
  font-size: min(calc((20 / 390) * 100cqw), 2rem);
 }
 .prof .jp_name {
  font-size: min(calc((20 / 390) * 100cqw), 2rem);
  margin-top: calc((10 / 390) * 100cqw);
 }
 .prof .text {
  margin-top: calc((10 / 390) * 100cqw);
 }
 .prof .text p {
  font-size: min(calc((14 / 390) * 100cqw), 1.4em);
 }
 .under_list {
  width: 100%;
  margin-top: calc((50 / 390) * 100cqw);
  gap: calc((8 / 390) * 100cqw);
  padding-block: calc((20 / 390) * 100cqw);
 }
 .under_list .item {
  gap: calc((10 / 390) * 100cqw);
 }
 .under_list .jp_name {
  font-size: min(calc((14 / 390) * 100cqw), 1.4em);
 }
 .under_list .en_name {
  font-size: min(calc((13 / 390) * 100cqw), 1.3em);
 }
 .under_list .job {
  font-size: min(calc((12 / 390) * 100cqw), 1.2em);
 }
 .under_list .biko {
  font-size: min(calc((12 / 390) * 100cqw), 1.2em);
 }
 .under_list .item_mds {
  gap: calc((4 / 390) * 100cqw);
  margin-top: calc((30 / 390) * 100cqw);
 }
 .under_list .item_mds .en_mds {
  font-size: min(calc((16 / 390) * 100cqw), 1.6em);
 }
 .under_list .item_mds .jp_mds {
  font-size: min(calc((13 / 390) * 100cqw), 1.3em);
 }
 .under_list .item_s {
  gap: calc((5 / 390) * 100cqw);
 }

 .cast_over,
 .cast_middle {
  display: none;
 }
 .cast_sp {
  display: flex;
  flex-wrap: wrap;
  gap: calc((16 / 390) * 100cqw);
 }
 .cast_sp .thumb {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: calc((10 / 390) * 100cqw);
  width: calc((167 / 390) * 100cqw);
 }
 .cast_sp .thumb .photo {
  position: relative;
 }
 .thumb .prof .en_name {
  font-size: min(calc((15 / 390) * 100cqw), 1.5rem);
 }
 .thumb .prof .jp_name {
  font-size: min(calc((14 / 390) * 100cqw), 1.4rem);
  margin-top: calc((5 / 390) * 100cqw);
 }
 .pannel_button {
  position: absolute;
  bottom: 0;
  right: 0;
  width: calc((24 / 390) * 100cqw);
  height: calc((24 / 390) * 100cqw);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
  z-index: 2;
 }
 .pannel_button::before {
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  display: block;
  background-color: var(--color-red);
  transition: 0.3s;
 }
 .pannel_button svg {
  width: calc((10 / 390) * 100cqw);
  height: calc((10 / 390) * 100cqw);
  position: relative;
  transform: rotate(-45deg);
  fill: var(--color-wht);
  z-index: 2;
 }

 #colorbox.staffmodal {
  z-index: 99999;
 }
 #colorbox.staffmodal #cboxPrevious,
 #colorbox.staffmodal #cboxNext {
  width: 40px;
  height: 40px;
  top: calc(50% - 20px);
  background-color: var(--color-blk);
  border-radius: 0;
  transition: 0.2s;
 }
 #colorbox.staffmodal #cboxPrevious::after,
 #colorbox.staffmodal #cboxNext::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  top: calc(50% - 4px);
  left: calc(50% - 4px);
  border: solid 0 var(--color-wht);
  border-width: 2px 0 0 2px;
  transform: rotate(-45deg);
 }
 #colorbox.staffmodal #cboxNext::after {
  transform: rotate(135deg);
 }
 #colorbox.staffmodal #cboxPrevious {
  left: 0;
  top: 0;
 }
 #colorbox.staffmodal #cboxNext {
  left: 41px;
  top: 0;
 }
}

/* voices
================================================================================== */
#voices {
 width: 100%;
 position: relative;
 color: var(--color-blk);
 background-color: var(--color-wht);
 overflow: hidden;
}
#voices .sq_red {
 left: unset;
 right: 0;
}
#voices .cont_body {
 padding-top: calc((200 / 1360) * 100cqw);
}
#voices .sub {
 color: var(--color-blk);
}
.p-voices {
 display: flex;
 flex-direction: column;
 align-items: center;
 width: 100%;
 margin-top: calc((70 / 1360) * 100cqw);
 margin-inline: auto;
 position: relative;
}
.voices_over {
 display: flex;
 gap: calc((70 / 1360) * 100cqw);
}
.voices_over .voices {
 display: flex;
 flex-direction: column;
 gap: calc((20 / 1360) * 100cqw);
 width: calc((570 / 1360) * 100cqw);
}
.voices .voices .photo img {
 width: 100%;
}
.voices .name_wrap {
 display: flex;
 align-items: center;
 gap: calc((20 / 1360) * 100cqw);
 margin-top: calc((15 / 1360) * 100cqw);
}
.voices .prof .jp_name {
 margin-top: unset;
}
.voices .prof .job {
 font-size: min(calc((18 / 1360) * 100cqw), 1.8em);
 font-family: var(--ff-min);
 font-weight: 600;
 line-height: 1.4;
 letter-spacing: -0.02em;
}
.voices_sp {
 display: none;
}
.under_list.voices_under .item {
 flex-direction: column;
 align-items: center;
 gap: calc((5 / 1360) * 100cqw);
}
.under_list.voices_under .name_wrap {
 display: flex;
 align-items: center;
 gap: calc((10 / 1360) * 100cqw);
}

@media only screen and (max-width: 820px) {
 #voices .cont_body {
  padding-top: calc((140 / 820) * 100cqw);
 }
 .voices_over .voices {
  gap: calc((20 / 820) * 100cqw);
 }
 .voices_over .prof .job {
  font-size: min(calc((13 / 820) * 100cqw), 1.3em);
 }
 .under_list.voices_under .item {
  gap: calc((5 / 820) * 100cqw);
 }
 .under_list.voices_under .name_wrap {
  gap: calc((10 / 820) * 100cqw);
 }
}

@media only screen and (max-width: 600px) {
 #voices .cont_body {
  padding-top: calc((140 / 390) * 100cqw);
  padding-bottom: calc((40 / 390) * 100cqw);
 }
 .p-voices {
  margin-top: calc((40 / 390) * 100cqw);
 }
 .voices_over {
  flex-direction: column;
  gap: calc((70 / 1360) * 100cqw);
 }
 .voices_over .voices,
 .voices {
  color: var(--color-blk);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: calc((20 / 390) * 100cqw);
  padding-top: calc((80 / 390) * 100cqw);
  padding-bottom: calc((40 / 390) * 100cqw);
  padding-inline: calc((20 / 390) * 100cqw);
  background-color: var(--color-wht);
  width: 100%;
  min-height: 100vh;
 }
 .voices_over .voices .photo img {
  width: 100%;
 }
 .voices_over .name_wrap,
 .voices .name_wrap {
  display: flex;
  align-items: center;
  gap: calc((15 / 390) * 100cqw);
  margin-top: calc((10 / 390) * 100cqw);
 }
 .voices_over .prof .job,
 .voices .prof .job {
  font-size: min(calc((13 / 390) * 100cqw), 1.3em);
 }
 .under_list.voices_under .item {
  gap: calc((5 / 390) * 100cqw);
 }
 .under_list.voices_under .name_wrap {
  gap: calc((10 / 390) * 100cqw);
 }

 .voices_over {
  display: none;
 }
 .voices_sp {
  display: flex;
  flex-wrap: wrap;
  gap: calc((16 / 390) * 100cqw);
 }
 .voices_sp .thumb {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: calc((10 / 390) * 100cqw);
  width: calc((167 / 390) * 100cqw);
 }
 .voices_sp .thumb .photo {
  position: relative;
 }
 .voices_sp .thumb .name_wrap {
  display: flex;
  flex-direction: column;
 }
 .voices_sp .thumb .name_wrap .job {
  font-size: min(calc((12 / 390) * 100cqw), 1.2em);
  margin-top: calc((5 / 390) * 100cqw);
 }
}

/* staff
================================================================================== */
#staff {
 width: 100%;
 position: relative;
 color: var(--color-blk);
 background-color: var(--color-wht);
 overflow: hidden;
}
#staff .sq_red {
 left: unset;
 right: 0;
}
#staff .cont_body {
 padding-block: calc((200 / 1360) * 100cqw);
}
#staff .ttl_wrap {
 display: flex;
 justify-content: flex-start;
 align-items: center;
}
#staff .ttl {
 align-items: flex-start;
}
#staff .sub {
 display: block;
 color: var(--color-blk);
}
.p-staff {
 display: flex;
 flex-direction: column;
 align-items: center;
 width: 100%;
 margin-top: calc((70 / 1360) * 100cqw);
 margin-inline: auto;
 position: relative;
}
.staff_over {
 display: flex;
}
.staff_over .staff {
 display: flex;
 flex-direction: row-reverse;
 gap: calc((50 / 1360) * 100cqw);
 width: 100%;
}
.staff_over .staff .prof {
 width: calc((735 / 1360) * 100cqw);
 display: flex;
 flex-direction: column;
}
.staff_over .staff .photo {
 width: calc((455 / 1360) * 100cqw);
}
.staff_middle {
 display: flex;
 gap: calc((70 / 1360) * 100cqw);
 margin-top: calc((50 / 1360) * 100cqw);
}
.staff_middle .staff {
 display: flex;
 flex-direction: column;
 gap: calc((20 / 1360) * 100cqw);
 width: calc((570 / 1360) * 100cqw);
}
.staff .name_wrap {
 display: flex;
 align-items: center;
 gap: calc((20 / 1360) * 100cqw);
 margin-top: calc((15 / 1360) * 100cqw);
}
.staff .prof .jp_name {
 margin-top: unset;
}
.staff .prof .job {
 font-size: min(calc((18 / 1360) * 100cqw), 1.8em);
 font-family: var(--ff-min);
 font-weight: 600;
 line-height: 1.4;
 letter-spacing: -0.02em;
}
.staff_sp {
 display: none;
}
.under_list.staff_under .item {
 flex-direction: column;
 align-items: center;
 gap: calc((5 / 1360) * 100cqw);
}
.under_list.staff_under .name_wrap {
 display: flex;
 align-items: center;
 gap: calc((10 / 1360) * 100cqw);
}
.under_list.staff_under .jp_name {
 font-size: min(calc((16 / 1360) * 100cqw), 1.6em);
 letter-spacing: -0.02em;
}
.under_list.staff_under .en_name {
 font-size: min(calc((16 / 1360) * 100cqw), 1.6em);
}
.under_list.staff_under .item_s .jp_name {
 color: var(--color-blk);
 font-size: min(calc((13 / 1360) * 100cqw), 1.3em);
 font-family: var(--ff-zen);
 font-weight: 400;
 letter-spacing: -0.02em;
 text-align: center;
}
.under_list.staff_under .item_s .jp_name.border {
 border-top: 1px solid #ccc;
 margin-top: calc((10 / 1360) * 100cqw);
 padding-top: calc((15 / 1360) * 100cqw);
}
.under_list.staff_under .copyright {
 font-size: min(calc((13 / 1360) * 100cqw), 1.3em);
 font-family: var(--ff-mar);
 font-weight: 400;
 text-align: center;
}

@media only screen and (max-width: 820px) {
 #staff .cont_body {
  padding-block: calc((140 / 820) * 100cqw);
 }
 .staff_middle {
  gap: calc((70 / 1360) * 100cqw);
  margin-top: calc((50 / 820) * 100cqw);
 }
 .staff .prof .job {
  font-size: min(calc((13 / 820) * 100cqw), 1.3em);
 }
 .under_list.staff_under .item {
  gap: calc((3 / 820) * 100cqw);
 }
 .under_list.staff_under .name_wrap {
  flex-direction: column;
  gap: calc((3 / 820) * 100cqw);
 }
 .under_list.staff_under .jp_name {
  font-size: min(calc((16 / 820) * 100cqw), 1.6em);
 }
 .under_list.staff_under .en_name {
  font-size: min(calc((16 / 820) * 100cqw), 1.6em);
 }
 .under_list.staff_under .item_s .jp_name {
  font-size: min(calc((13 / 820) * 100cqw), 1.3em);
 }
 .under_list.staff_under .item_s .jp_name.border {
  margin-top: calc((10 / 820) * 100cqw);
  padding-top: calc((15 / 820) * 100cqw);
 }
 .under_list.staff_under .copyright {
  font-size: min(calc((13 / 820) * 100cqw), 1.3em);
 }
}

@media only screen and (max-width: 600px) {
 #staff .cont_body {
  padding-top: calc((140 / 390) * 100cqw);
  padding-bottom: calc((60 / 390) * 100cqw);
 }
 .p-staff {
  margin-top: calc((40 / 390) * 100cqw);
 }
 .staff_over .staff,
 .staff {
  color: var(--color-blk);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: calc((20 / 390) * 100cqw);
  padding-top: calc((80 / 390) * 100cqw);
  padding-bottom: calc((40 / 390) * 100cqw);
  padding-inline: calc((20 / 390) * 100cqw);
  background-color: var(--color-wht);
  width: 100%;
  min-height: 100vh;
 }
 .staff_over .staff .photo,
 .staff .photo {
  width: 66%;
  margin-inline: auto;
 }
 .staff_over .staff .prof {
  width: 100%;
 }
 .staff_middle {
  flex-direction: column;
  gap: calc((50 / 390) * 100cqw);
  margin-top: calc((50 / 390) * 100cqw);
 }
 .staff_middle .staff {
  display: flex;
  flex-direction: column;
  gap: calc((20 / 390) * 100cqw);
  width: 100%;
 }
 .staff .name_wrap {
  display: flex;
  align-items: center;
  gap: calc((20 / 390) * 100cqw);
  margin-top: calc((10 / 390) * 100cqw);
 }
 .staff .prof .jp_name {
  margin-top: unset;
 }
 .staff .prof .job {
  font-size: min(calc((13 / 390) * 100cqw), 1.3em);
 }
 .under_list.staff_under .item {
  gap: calc((3 / 390) * 100cqw);
 }
 .under_list.staff_under .name_wrap {
  flex-direction: column;
  gap: calc((3 / 390) * 100cqw);
 }
 .under_list.staff_under .jp_name {
  font-size: min(calc((14 / 390) * 100cqw), 1.4em);
  line-height: 1.3;
  text-align: center;
 }
 .under_list.staff_under .en_name {
  font-size: min(calc((13 / 390) * 100cqw), 1.3em);
  text-align: center;
 }
 .under_list.staff_under .item_s .jp_name {
  font-size: min(calc((11 / 390) * 100cqw), 1.1em);
 }
 .under_list.staff_under .item_s .jp_name.border {
  margin-top: calc((10 / 390) * 100cqw);
  padding-top: calc((15 / 390) * 100cqw);
 }
 .under_list.staff_under .copyright {
  font-size: min(calc((11 / 390) * 100cqw), 1.1em);
 }

 .staff_over,
 .staff_middle {
  display: none;
 }
 .staff_sp {
  display: flex;
  flex-wrap: wrap;
  gap: calc((16 / 390) * 100cqw);
  width: 100%;
 }
 .staff_sp .thumb {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: calc((10 / 390) * 100cqw);
  width: calc((167 / 390) * 100cqw);
  position: relative;
 }
 .staff_sp .thumb .name_wrap {
  display: flex;
  flex-direction: column;
 }
 .staff_sp .thumb .name_wrap .job {
  font-size: min(calc((12 / 390) * 100cqw), 1.2em);
  margin-top: calc((5 / 390) * 100cqw);
 }
 .staff_sp .pannel_button {
  position: relative;
  bottom: 0;
  right: 0;
  width: calc((24 / 390) * 100cqw);
  height: calc((24 / 390) * 100cqw);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
  z-index: 2;
  margin-top: calc((8 / 390) * 100cqw);
 }
}

/* theaters
================================================================================== */
#theaters {
 width: 100%;
 position: relative;
}
#theaters .cont_body {
 padding-top: calc((200 / 1360) * 100cqw);
}
.p-theaters {
 display: flex;
 flex-direction: column;
 align-items: center;
 width: 100%;
 margin-top: calc((70 / 1360) * 100cqw);
 margin-inline: auto;
 position: relative;
}
table.theatb {
 width: 100%;
 font-size: min(calc((16 / 1360) * 100cqw), 1.6em);
 line-height: 1.8;
 table-layout: fixed;
}
table.theatb th {
 padding-block: calc((10 / 1360) * 100cqw);
 padding-inline: calc((10 / 1360) * 100cqw);
 font-weight: normal;
 vertical-align: middle;
 background: #1e2225;
}
table.theatb td {
 padding-block: calc((16 / 1360) * 100cqw);
 padding-inline: calc((10 / 1360) * 100cqw);
 vertical-align: top;
 border-bottom: 1px solid #1e2225;
 word-wrap: break-word;
}
.todofuken {
 width: calc((100 / 1360) * 100cqw);
 text-align: center;
}
.theater_name {
 width: calc((400 / 1360) * 100cqw);
 text-align: left;
}
.theater_name a {
 color: var(--color-wht);
 text-decoration: underline;
}
.theater_biko label {
 display: none;
}

@media only screen and (max-width: 820px) {
 table.theatb {
  font-size: min(calc((14 / 820) * 100cqw), 1.4em);
 }
 .todofuken {
  width: calc((100 / 820) * 100cqw);
 }
}

@media only screen and (max-width: 600px) {
 #theaters .cont_body {
  padding-top: calc((100 / 390) * 100cqw);
 }
 .p-theaters {
  margin-top: calc((50 / 390) * 100cqw);
 }
 table.theatb {
  font-size: min(calc((14 / 390) * 100cqw), 1.4em);
  line-height: 1.2;
  border-top: 1px solid #555;
 }
 table.theatb th {
  display: none;
 }
 table.theatb tr {
  display: flex;
  flex-wrap: wrap;
  gap: 0 10px;
  padding-block: calc((16 / 390) * 100cqw);
  border-bottom: 1px solid #555;
 }
 table.theatb tr.tb_ttl {
  display: none;
 }
 table.theatb td {
  display: inline-block;
  padding-block: calc((16 / 1360) * 100cqw);
  padding-inline: calc((10 / 1360) * 100cqw);
  border-bottom: unset;
 }
 .todofuken {
  width: 100%;
  font-size: min(calc((16 / 390) * 100cqw), 1.6em);
  text-align: left;
 }
 .theater_name {
  width: 100%;
  font-size: min(calc((15 / 390) * 100cqw), 1.5em);
  font-weight: 600;
  text-align: left;
 }
 .theater_name a {
  color: var(--color-wht);
  text-decoration: underline;
 }
 .theater_biko label {
  display: inline;
  font-size: min(calc((13 / 390) * 100cqw), 1.3em);
 }
}

/* credit
================================================================================== */
#credit {
 display: block;
 width: 100%;
 position: relative;
 overflow: hidden;
}
.p-credit {
 width: 100%;
 display: flex;
 flex-direction: column;
 align-items: center;
 padding-top: calc((260 / 1360) * 100cqw);
 padding-bottom: calc((75 / 1360) * 100cqw);
}
.p-credit .sns {
 gap: calc((40 / 1360) * 100cqw);
}
.p-credit .sns .btn a {
 width: calc((36 / 1360) * 100cqw);
 height: calc((36 / 1360) * 100cqw);
}
.cd_logo {
 width: calc((300 / 1360) * 100cqw);
 position: relative;
 margin-top: calc((46 / 1360) * 100cqw);
}
.cd_logo a {
 display: block;
 background: url(../img/cd_logo.png) no-repeat 50% 0;
 background-size: contain;
 width: 100%;
 aspect-ratio: 300/267;
 position: relative;
}
.cd_copy {
 margin-top: calc((25 / 1360) * 100cqw);
 font-size: min(calc((12 / 1360) * 100cqw), 1.2rem);
}
#credit #pageTop {
 position: absolute;
 display: block;
 bottom: 20px;
 right: 20px;
 width: 50px;
 height: 50px;
 z-index: 9;
 transform: scale(1.2);
 transition: all 0.3s ease-in-out;
 opacity: 0;
}
#credit #pageTop.show {
 transform: scale(1);
 opacity: 1;
}
#credit #pageTop::before {
 content: "";
 position: absolute;
 top: 0;
 bottom: 0;
 left: 0;
 width: 100%;
 z-index: -1;
 background-color: var(--color-red);
 transition: 0.2s;
}
#credit #pageTop a {
 display: block;
 height: 0;
 overflow: hidden;
 width: 50px;
 padding: 50px 0 0;
}
#credit #pageTop a:after {
 position: absolute;
 top: 50%;
 left: 50%;
 margin-top: -4px;
 margin-left: -6px;
 content: "";
 display: block;
 width: 12px;
 height: 12px;
 border: solid 0 var(--color-wht);
 border-width: 2px 0 0 2px;
 transform: rotate(45deg);
}

@media screen and (min-width: 821px) {
 #credit #pageTop:hover::before {
  transform: scale(1.1);
 }
}

@media only screen and (max-width: 600px) {
 .p-credit {
  padding-top: calc((100 / 390) * 100cqw);
  padding-bottom: calc((50 / 390) * 100cqw);
 }
 .p-credit .sns {
  gap: calc((26 / 390) * 100cqw);
 }
 .p-credit .sns .btn a {
  width: calc((26 / 390) * 100cqw);
  height: calc((26 / 390) * 100cqw);
 }
 .cd_logo {
  width: calc((160 / 390) * 100cqw);
  margin-top: calc((50 / 390) * 100cqw);
 }
 .cd_copy {
  margin-top: calc((25 / 390) * 100cqw);
  font-size: min(calc((11 / 390) * 100cqw), 1.1rem);
 }
 #credit #pageTop {
  bottom: 8px;
  right: 8px;
  width: 40px;
  height: 40px;
 }
 #credit #pageTop a {
  width: 40px;
  padding: 40px 0 0;
 }
 #credit #pageTop a:after {
  margin-top: -3px;
  margin-left: -3.5px;
  width: 8px;
  height: 8px;
 }
}

/* [Show Animate] 出現アニメーション
    ================================================================================== */
.p-show-elem {
 opacity: 0;
 transform: translateY(100px);
 transition: all 2s cubic-bezier(0.08, 0.8, 0.315, 1);
}
.p-show-elem.p-rev {
 opacity: 0;
 transform: translateY(-100px);
 transition: all 2s cubic-bezier(0.08, 0.8, 0.315, 1);
}
.p-show-elem.p-left {
 opacity: 0;
 transform: translateX(-200px);
 transition: all 3s cubic-bezier(0.08, 0.8, 0.315, 1);
}
.p-show-elem.p-right {
 opacity: 0;
 transform: translateX(200px);
 transition: all 3s cubic-bezier(0.08, 0.8, 0.315, 1);
}
.p-show-elem.-show,
.p-show-elem.p-rev.-show,
.p-show-elem.p-left.-show,
.p-show-elem.p-right.-show {
 opacity: 1;
 transform: translate(0, 0);
}
.p-show-elem.del2 {
 transition-delay: 0.5s;
}
.p-show-elem.del3 {
 transition-delay: 0.6s;
}
.p-show-elem.del4 {
 transition-delay: 0.7s;
}
.p-show-elem.del5 {
 transition-delay: 0.8s;
}
.p-show-elem.del6 {
 transition-delay: 0.9s;
}

@media only screen and (max-width: 767px) {
 .p-show-elem.del2,
 .p-show-elem.del3,
 .p-show-elem.del4,
 .p-show-elem.del5,
 .p-show-elem.del6 {
  transition-delay: 0.3s;
 }
}

/* p-show-clip */
.p-show-clip {
 clip-path: inset(0 100% 0 0);
 transition: all 1.5s 0.5s cubic-bezier(0.08, 0.8, 0.315, 1);
}
.p-show-clip.-show {
 clip-path: inset(0 0 0 0);
}

/* p-show-img */
.p-show-img {
 opacity: 0;
 transform: scale(1.05);
}
.p-show-img.-show {
 animation: img_show 0.8s cubic-bezier(0.08, 0.8, 0.315, 1) 0.4s both;
}
@keyframes img_show {
 0% {
  opacity: 0;
  transform: scale(0.3, 0.3);
 }
 100% {
  opacity: 1;
  transform: scale(1, 1);
 }
}

/* p-show-ttl */
.ttl.p-show-ttl .sub,
.ttl.p-show-ttl .mds {
 opacity: 0;
}
.ttl.-show .sub,
.ttl.-show .mds {
 animation: ttl_show 1.6s cubic-bezier(0.08, 0.8, 0.315, 1) 0.4s both;
}
@keyframes ttl_show {
 0% {
  opacity: 0;
  transform: translateX(60px);
 }
 100% {
  opacity: 1;
  transform: translateX(0);
 }
}
.ttl.-show .mds {
 animation-delay: 0.8s;
}

/* p-show-item */
.film_header_photo,
.note_header_photo {
 opacity: 0;
}
.film_header_photo.-show,
.note_header_photo.-show {
 animation: ani_img 3s cubic-bezier(0.17, 0.67, 0.5, 1) 0.4s both;
}
@keyframes ani_img {
 0% {
  opacity: 0;
  transform: scale(1.1);
 }
 100% {
  opacity: 1;
  transform: scale(1);
 }
}

.sq_red span.sq_left {
 width: 0;
}
.sq_red span.sq_right {
 left: unset;
 right: 0;
 width: 0;
}
.sq_red span.sq_top {
 height: 0;
}
.sq_red.-show span.sq_left,
.sq_red.-show span.sq_right {
 animation: sq_w 3s cubic-bezier(0.08, 0.8, 0.315, 1) 0.4s both;
}
.sq_red.-show span.sq_top {
 animation: sq_h 3s cubic-bezier(0.08, 0.8, 0.315, 1) 0.4s both;
}

@keyframes sq_w {
 0% {
  width: 0;
 }
 100% {
  width: 100%;
 }
}
@keyframes sq_h {
 0% {
  height: 0;
 }
 100% {
  height: 100%;
 }
}
@keyframes elem_down {
 0% {
  opacity: 0;
  transform: translateY(-50px);
 }
 100% {
  opacity: 1;
  transform: translateY(0);
 }
}
@keyframes obiSlideW {
 0% {
  width: 100%;
 }
 100% {
  width: 0;
 }
}
@keyframes obiSlideH {
 0% {
  height: 100%;
 }
 100% {
  height: 0;
 }
}
