/**
 * フォントサイズと行の高さの実数値と倍数の表
 * 
 * px     | 1.4      | 1.5      | 1.6      | 1.7      | 1.8
 * ------------------------------------------------------------
 * 12px   | 16.8px   | 18.0px   | 19.2px   | 20.4px   | 21.6px
 * 13px   | 18.2px   | 19.5px   | 20.8px   | 22.1px   | 23.4px
 * 14px   | 19.6px   | 21.0px   | 22.4px   | 23.8px   | 25.2px
 * 16px   | 22.4px   | 24.0px   | 25.6px   | 27.2px   | 28.8px
 * 17px   | 23.8px   | 25.5px   | 27.2px   | 28.9px   | 30.6px
 * 18px   | 25.2px   | 27.0px   | 28.8px   | 30.6px   | 32.4px
 * 20px   | 28.0px   | 30.0px   | 32.0px   | 34.0px   | 36.0px
 * 24px   | 33.6px   | 36.0px   | 38.4px   | 40.8px   | 43.2px
 * 30px   | 42.0px   | 45.0px   | 48.0px   | 51.0px   | 54.0px
 * 36px   | 50.4px   | 54.0px   | 57.6px   | 61.2px   | 64.8px
**/

html {
	font-size: 100%;
}

:root {
	--translate-x: 0;
	--opacity: 1;
}

body {
	background-color: #000;
	color: #fff;
	font-family: YakuHanJP, "Noto Sans JP", sans-serif;
	font-feature-settings: "palt";
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}

body:not(.home) {
	background-image: url(../images/common/stripe-page.webp);
	background-position: 0% top;
	background-repeat: no-repeat;
	background-size: 125% auto;
}

/* reset.css start */

*,
::before,
::after {
	box-sizing: border-box;
	font-weight: 400;
}

html,
body {
	min-height: 100vh;
	overflow-x: clip;
}

ul,
ol {
	list-style: none;
}

a {
	-webkit-text-decoration: none;
	text-decoration: none;
	transition: opacity 0.3s;
}

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}

img {
	display: block;
}

img:not([alt]) {
	outline: red solid 5px;
}

/* reset.css end */

.l-footer {
	margin-top: 7.5rem;
}

.l-footer.l-footer--top {
	margin-top: 5rem;
}

.l-inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 600px;
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

.l-page-about {
	margin-top: 3rem;
}

.l-page-contact {
	margin-top: 2.5rem;
}

.l-page-privacy {
	margin-top: 2.5rem;
}

.l-page-schedule {
	margin-top: 3.5rem;
}

.l-page-staff {
	margin-top: 10.6666666667vw;
}

.l-page {
	margin-top: 2.5rem;
}

.l-section-about {
	margin-top: 5.5rem;
}

.l-section-instagram {
	margin-top: 3.75rem;
}

.l-section-news {
	margin-top: 6.875rem;
}

.l-section-partners {
	margin-top: 4.6875rem;
}

.l-section-schedule {
	margin-top: 3.75rem;
}

.l-section {
	margin-top: 3.75rem;
}

.l-single {
	margin-top: 2.5rem;
}

.c-arrow {
	align-items: center;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 0.75rem;
	font-weight: 500;
}

.c-arrow::before {
	content: "";
	display: block;
	height: 0.625rem;
	margin-right: 0.5rem;
	width: 2.25rem;
	-webkit-mask-image: url(../images/common/arrow-long.svg);
	mask-image: url(../images/common/arrow-long.svg);
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	background-color: #fff;
	mask-repeat: no-repeat;
}

.c-arrow:hover::before {
	animation: glide-into 1s infinite ease-in forwards 0s;
}

.c-arrow.c-arrow--red::before {
	background-color: #e50012;
}

.c-button-arrow a,
.c-button-arrow input {
	color: white;
	display: inline;
	font-size: 0.875rem;
}

.c-button-arrow::before,
.c-button-arrow::after {
	content: "";
	display: inline-block;
	height: 1em;
	margin-left: 0.25rem;
	margin-right: 0.25rem;
	width: 2.5rem;
	-webkit-mask-image: url(../images/common/arrow-long.svg);
	mask-image: url(../images/common/arrow-long.svg);
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	background-color: #e50012;
	mask-repeat: no-repeat;
	vertical-align: middle;
}

.c-button-arrow::before {
	display: none;
	margin-right: 0.5rem;
	scale: -1;
}

.c-button-arrow::after {
	margin-left: 0.5rem;
}

.c-button-arrow.c-button-arrow--reverse::before {
	display: inline-block;
}

.c-button-arrow.c-button-arrow--reverse::after {
	display: none;
}

.c-button-large {
	background-color: #7f7f7f;
	border-radius: 0.3125rem;
	position: relative;
	transition: background-color 0.2s;
}

.c-button-large a,
.c-button-large input {
	color: #fff;
	display: inline-block;
	font-size: 0.8125rem;
	min-width: 10rem;
	padding-bottom: 1.25rem;
	padding-left: 1.75rem;
	padding-right: 1.75rem;
	padding-top: 1.25rem;
	text-align: center;
}

.c-button-large:has(input[disabled]) {
	background-color: #232323;
}

.c-button-large:has(input[disabled]) a,
.c-button-large:has(input[disabled]) input {
	color: #7f7f7f;
}

.c-button-normal {
	background-color: black;
	border: 1px solid black;
	border-radius: 1.25rem;
	box-shadow: 1px 1px 0 0 gray;
	position: relative;
	transition: transform 0.2s, box-shadow 0.2s;
}

.c-button-normal a,
.c-button-normal input {
	color: white;
	display: inline-block;
	min-width: 12.5rem;
	padding-bottom: 0.375rem;
	padding-left: 2rem;
	padding-right: 2rem;
	padding-top: 0.375rem;
	text-align: center;
}

.c-button-normal.c-button-normal--white {
	background-color: white;
}

.c-button-normal.c-button-normal--white a,
.c-button-normal.c-button-normal--white input {
	color: black;
}

.c-button-text a,
.c-button-text input {
	color: #fff;
	font-size: 0.875rem;
}

.c-button-top {
	color: #e50012;
	display: block;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.6875rem;
	letter-spacing: 0.15em;
	opacity: 0;
	padding-top: 3rem;
	pointer-events: none;
	position: relative;
	text-align: center;
	text-transform: uppercase;
	transition: opacity 0.3s;
	visibility: hidden;
}

.c-button-top::after {
	aspect-ratio: 60/14;
	content: "";
	display: block;
	left: 50%;
	position: absolute;
	top: 2.5rem;
	transform: rotate(-90deg);
	transform-origin: left;
	width: 1.875rem;
	-webkit-mask-image: url(../images/common/arrow-long.svg);
	mask-image: url(../images/common/arrow-long.svg);
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	background: #e50012;
	mask-repeat: no-repeat;
}

.c-button-top.is-active {
	opacity: 1;
	pointer-events: initial;
	visibility: visible;
}

.c-card-about {
	display: block;
}

.c-card-about__img {
	aspect-ratio: 286/190;
	overflow: hidden;
	width: 100%;
}

.c-card-about__img picture,
.c-card-about__img img {
	aspect-ratio: inherit;
	height: auto;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
	transition: scale 0.3s, filter 0.3s;
}

.c-card-about__title {
	color: #fff;
	font-size: 0.875rem;
	padding-top: 1.875rem;
	position: relative;
	text-align: center;
}

.c-card-about__title::before {
	background-color: #e50012;
	content: "";
	display: block;
	height: 0.375rem;
	left: 50%;
	position: absolute;
	top: 0;
	transform: skew(-45deg) rotate(90deg);
	translate: -50% -50%;
	width: 2.5rem;
}

.c-card-about__subtitle {
	color: #e50012;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.5rem;
	letter-spacing: 0.1em;
	margin-top: 0.25rem;
	text-align: center;
	text-transform: uppercase;
}

.c-card-about:hover {
	opacity: 1;
}

.c-card-about:hover .c-card-about__img picture,
.c-card-about:hover .c-card-about__img img {
	filter: brightness(1.05);
	scale: 1.1;
}

.c-card-about:hover .c-card-about__title::before {
	animation-duration: 0.3s;
	animation-fill-mode: forwards;
	animation-name: a-card-about;
	animation-timing-function: linear;
}

.c-card-about:not(:hover) .c-card-about__title::before {
	animation-duration: 0.3s;
	animation-fill-mode: forwards;
	animation-name: reverse-a-card-about;
	animation-timing-function: linear;
}

.c-card-player__img {
	aspect-ratio: 1;
	overflow: hidden;
	width: 100%;
}

.c-card-player__img picture,
.c-card-player__img img {
	aspect-ratio: inherit;
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
	transition: scale 0.3s, filter 0.3s;
}

.c-card-player__bgimg {
	aspect-ratio: 1;
	overflow: hidden;
	width: 100%;
}

.c-card-player__bgimg .image {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 100%;
	transition: scale 0.3s, filter 0.3s;
	width: 100%;
}

.c-card-player__name {
	color: #fff;
	font-size: 1.5625rem;
	font-weight: 900;
	margin-top: 1.375rem;
}

.c-card-player__furigana {
	color: #e50012;
	font-size: 0.875rem;
	letter-spacing: 0.15em;
	margin-top: 0.25rem;
}

.c-card-player__list {
	margin-top: 1.25rem;
}

.c-card-player__item {
	border-bottom: 1px solid #7f7f7f;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 0 1.5rem;
	padding-bottom: 1rem;
	padding-top: 1rem;
}

.c-card-player__term {
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: -0.05em;
}

.c-card-player__description {
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: -0.05em;
}

.c-card-post {
	display: block;
	height: 100%;
	padding-bottom: 1.25rem;
	padding-left: 0.25rem;
	padding-right: 0.25rem;
	padding-top: 0.75rem;
	position: relative;
}

.c-card-post:hover::after {
	animation: glide-into 1s infinite ease-in forwards 0s;
}

.c-card-post__information {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.c-card-post__new {
	color: #e50012;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.8125rem;
	letter-spacing: 0.1em;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

.c-card-post__year {
	color: #fff;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.75rem;
	letter-spacing: 0.05em;
	line-height: 1;
	text-align: center;
}

.c-card-post__date {
	color: #fff;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 1.875rem;
	letter-spacing: 0.1em;
	margin-left: 0.75rem;
	text-align: center;
	width: 4rem;
}

.c-card-post__term {
	background-color: #7f7f7f;
	border-radius: 0.25rem;
	color: #fff;
	display: inline-block;
	font-size: 0.75rem;
	margin-left: 0.75rem;
	min-width: 5rem;
	padding-bottom: 0.125rem;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	padding-top: 0.125rem;
	text-align: center;
}

.c-card-post__term.members {
	background-color: #e50012;
}

.c-card-post__title {
	color: #fff;
	font-size: 0.75rem;
	font-weight: 500;
	margin-top: 0.25rem;
}

.c-card-staff {
	cursor: pointer;
	display: block;
}

.c-card-staff__img {
	aspect-ratio: 1;
	overflow: hidden;
	width: 100%;
}

.c-card-staff__img picture,
.c-card-staff__img img {
	aspect-ratio: inherit;
	height: auto;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
	transition: scale 0.3s, filter 0.3s;
}

.c-card-staff__bgimg {
	aspect-ratio: 1;
	overflow: hidden;
	width: 100%;
}

.c-card-staff__bgimg .image {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 100%;
	transition: scale 0.3s, filter 0.3s;
	width: 100%;
}

.c-card-staff__position {
	color: #fff;
	font-size: 0.875rem;
	font-weight: 500;
	margin-top: 2.25rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.c-card-staff__title {
	margin-top: 0.875rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
	position: relative;
}

.c-card-staff__title::after {
	content: "";
	display: block;
	height: 4rem;
	position: absolute;
	right: 0.5rem;
	top: 50%;
	translate: 0 -50%;
	width: 2rem;
	-webkit-mask-image: url(../images/common/arrow-short.svg);
	mask-image: url(../images/common/arrow-short.svg);
	-webkit-mask-position: right center;
	mask-position: right center;
	-webkit-mask-size: auto 100%;
	mask-size: auto 100%;
	-webkit-mask-repeat: repeat-x;
	background-color: #e50012;
	mask-repeat: repeat-x;
}

.c-card-staff__name {
	color: #fff;
	font-size: 1.5625rem;
	font-weight: 900;
}

.c-card-staff__furigana {
	color: #e50012;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.875rem;
	letter-spacing: 0.15em;
	margin-top: 0.25rem;
	text-transform: uppercase;
}

.c-hamburger {
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	height: 0.625rem;
	justify-content: space-between;
	position: relative;
	transform: skewX(-45deg);
	width: 1.875rem;
}

.c-hamburger::before {
	background-color: #e50012;
	bottom: -1.25rem;
	bottom: -0.625rem;
	content: "";
	height: 7.5rem;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 3.75rem;
}

.c-hamburger__border {
	background-color: #000;
	border-radius: 1px;
	display: inline-block;
	height: 1px;
	transform: skewX(-45deg);
	transition: transform 0.3s, opacity 0.1s, width 0.3s, height 0.3s;
	width: 100%;
}

.c-hamburger.is-active {
	height: 1.5rem;
	transform: skewX(0);
	width: 2rem;
}

.c-hamburger.is-active::before {
	display: none;
}

.c-hamburger.is-active .c-hamburger__border {
	background-color: #fff;
	transform-origin: center;
}

.c-hamburger.is-active .c-hamburger__border:nth-child(1) {
	transform: scaleX(1.1547005384) translateY(calc(0.75rem - 50%)) rotate(30deg) skewX(0);
}

.c-hamburger.is-active .c-hamburger__border:nth-child(2) {
	opacity: 0;
}

.c-hamburger.is-active .c-hamburger__border:nth-child(3) {
	transform: scaleX(1.1547005384) translateY(calc(-0.75rem + 50%)) rotate(-30deg) skewX(0);
}

.c-instagram {
	align-items: center;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 1.125rem;
	text-transform: uppercase;
}

.c-instagram::before {
	background-image: url(../images/common/sns-instagram.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	height: 1.375rem;
	margin-right: 0.75rem;
	width: 1.375rem;
}

.c-instagram.c-instagram--white {
	font-size: 1.25rem;
}

.c-instagram.c-instagram--white::before {
	background-image: url(../images/common/sns-instagram-white.svg);
	height: 1.625rem;
	margin-right: 0.75rem;
	width: 1.625rem;
}

.c-instagram.c-instagram--large {
	font-size: 1.875rem;
	padding-top: 0.25rem;
}

.c-instagram.c-instagram--large::before {
	height: 2rem;
	width: 2rem;
}

.c-instagram.c-instagram--large::before {
	margin-right: 0.75rem;
}

.c-list-1clm {
	border-top: 1px solid #e50012;
	padding-top: 1.5rem;
}

.c-list-1clm__title {
	font-size: 0.875rem;
	font-weight: 900;
	text-transform: uppercase;
}

.c-list-1clm__body {
	margin-top: 1.75rem;
	width: 100%;
}

.c-list-1clm__item:has(.c-list-1clm__1clm) + .c-list-1clm__item:has(.c-list-1clm__1clm) {
	margin-top: 2rem;
}

.c-list-1clm__1clm .term {
	font-size: 1rem;
	font-weight: 900;
}

.c-list-1clm__1clm .description {
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: -0.05em;
	line-height: 2;
}

.c-list-1clm__2clm {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.c-list-1clm__2clm .title,
.c-list-1clm__2clm .text {
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 2;
}

.c-list-1clm__2clm .title {
	flex-shrink: 0;
	width: 26%;
}

.c-list-1clm__textbox {
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: -0.05em;
	line-height: 2;
}

.c-list-1clm__mini-list {
	margin-top: 1rem;
}

.c-list-1clm__note {
	font-size: 0.6875rem;
	font-weight: 500;
	line-height: 2.2857142857;
}

.c-list-1clm__text {
	font-size: 0.75rem;
	line-height: 2;
}

.c-list-1clm__text .link {
	color: #007bff;
	-webkit-text-decoration: underline;
	text-decoration: underline;
}

.c-list-1clm__img {
	aspect-ratio: 816/450;
	margin-top: 1.875rem;
	width: 100%;
}

.c-list-1clm__img img {
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.c-list-1clm__map {
	aspect-ratio: 1;
	margin-top: 1.875rem;
	width: 100%;
}

.c-list-1clm__map iframe {
	aspect-ratio: inherit;
	height: 100%;
	width: 100%;
}

.c-list-2clm {
	border-top: 1px solid #e50012;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 1.375rem;
	padding-top: 1.5rem;
}

.c-list-2clm__heading {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.c-list-2clm__title {
	font-size: 0.875rem;
	font-weight: 900;
}

.c-list-2clm__subtitle {
	font-size: 0.875rem;
	font-weight: 900;
}

.c-list-2clm__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 0 1rem;
	gap: 0 1rem;
	width: 100%;
}

.c-list-2clm__item .destination {
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 2;
}

.c-modal-close {
	align-items: center;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 1.25rem;
	justify-content: center;
	position: relative;
	width: 2.5rem;
}

.c-modal-close span {
	background-color: #fff;
	display: block;
	height: 0.125rem;
	left: 50%;
	position: absolute;
	top: 50%;
	transform-origin: center;
	transition: transform 0.3s ease;
	width: 100%;
}

.c-modal-close span:first-child {
	transform: translate(-50%, -50%) rotate(30deg);
}

.c-modal-close span:last-child {
	transform: translate(-50%, -50%) rotate(-30deg);
}

.c-pagination {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
	justify-content: center;
}

.c-pagination .page-numbers {
	align-items: center;
	background-color: transparent;
	border-radius: 100%;
	color: #fff;
	display: grid;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.9375rem;
	height: 1.25rem;
	justify-items: center;
	place-items: center;
	transition: background-color 0.3s, color 0.3s;
	width: 1.25rem;
}

.c-pagination .page-numbers.prev,
.c-pagination .page-numbers.next,
.c-pagination .page-numbers.first,
.c-pagination .page-numbers.last {
	height: 1.5625rem;
	width: 1.5625rem;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	background-color: #fff;
	mask-repeat: no-repeat;
}

.c-pagination .page-numbers.prev {
	margin-right: 1rem;
	scale: -1;
	-webkit-mask-image: url("../images/common/arrow-small1.svg");
	mask-image: url("../images/common/arrow-small1.svg");
}

.c-pagination .page-numbers.next {
	margin-left: 1rem;
	-webkit-mask-image: url("../images/common/arrow-small1.svg");
	mask-image: url("../images/common/arrow-small1.svg");
}

.c-pagination .page-numbers.first {
	margin-right: 0.5rem;
	scale: -1;
	-webkit-mask-image: url("../images/common/arrow-small2.svg");
	mask-image: url("../images/common/arrow-small2.svg");
}

.c-pagination .page-numbers.last {
	margin-left: 0.5rem;
	-webkit-mask-image: url("../images/common/arrow-small2.svg");
	mask-image: url("../images/common/arrow-small2.svg");
}

.c-pagination .page-numbers.current,
.c-pagination .page-numbers:not(.dots):not(.prev):not(.next):hover,
.c-pagination .page-numbers.prev:hover,
.c-pagination .page-numbers.next:hover,
.c-pagination .page-numbers.first:hover,
.c-pagination .page-numbers.last:hover {
	background-color: #e50012;
}

.c-post-filter {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.c-post-filter__label {
	color: #fff;
	font-size: 0.875rem;
	font-weight: 500;
}

.c-post-filter__select {
	background-color: #fff;
	background-image: url("../images/common/arrow-down.svg");
	background-position: right 0.9375rem center;
	background-repeat: no-repeat;
	background-size: 0.875rem 0.875rem;
	border-radius: 6.25rem;
	color: #000;
	cursor: pointer;
	font-size: 0.75rem;
	font-weight: bold;
	margin-top: 0.25rem;
	padding-bottom: 0.375rem;
	padding-left: 1.25rem;
	padding-right: 3rem;
	padding-top: 0.375rem;
	position: relative;
	width: 100%;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.c-post-filter__select option {
	font-size: 0.75rem;
	letter-spacing: -0.05em;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

.c-section-subtitle {
	align-items: baseline;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1.5rem;
}

.c-section-subtitle__main {
	color: #fff;
	font-size: 1.25rem;
	font-weight: 900;
}

.c-section-subtitle__sub {
	color: #e50012;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.625rem;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

.c-section-title-red-line {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	text-align: center;
}

.c-section-title-red-line::before,
.c-section-title-red-line::after {
	background-color: #e50012;
	content: "";
	height: 1px;
	width: 100%;
}

.c-section-title-red-line span {
	display: inline-block;
	flex-shrink: 0;
	font-size: 1rem;
	font-weight: 900;
	padding-left: 0.9375rem;
	padding-right: 0.9375rem;
}

.c-section-title {
	display: inline-block;
}

.c-section-title__main {
	font-size: 1rem;
	font-weight: 900;
	line-height: 1.75;
	margin-top: -0.375rem;
}

.c-section-title__main .red {
	color: #e50012;
	font-weight: inherit;
}

.c-section-title__sub {
	color: #fff;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 4.0625rem;
	line-height: 1;
	text-transform: uppercase;
}

.c-section-title__sub .gold {
	color: #c2a209;
	font-weight: inherit;
	line-height: inherit;
}

.c-section-title.c-section-title--small .c-section-title__sub {
	font-size: 3.125rem;
	line-height: 0.8;
}

.p-archive__list {
	background-color: rgba(0, 0, 0, 0.5);
	width: 100%;
}

.p-archive__item {
	border-bottom: 1px solid #7f7f7f;
	width: 100%;
}

.p-archive__item:first-of-type {
	border-top: 1px solid #7f7f7f;
}

.p-archive__pagination {
	margin-top: 5rem;
}

.p-content .post-password-form {
	color: #fff;
}

.p-content .post-password-form p {
	color: #fff;
}

.p-content .post-password-form label {
	color: #fff;
}

.p-content .post-password-form input[type=submit] {
	color: #fff;
}

.p-content .post-password-form input[type=password] {
	border: 1px solid red;
	color: #fff;
	letter-spacing: 0.3em;
	padding-bottom: 0.25rem;
	padding-left: 1rem;
	padding-right: 1rem;
	padding-top: 0.25rem;
	width: 10em;
}

.p-content h2 {
	font-size: 1.125rem;
	font-weight: bold;
	margin: 0.83rem 0;
}

.p-content h3 {
	font-size: 1rem;
	font-weight: bold;
	margin: 1rem 0;
}

.p-content h4 {
	font-size: 1rem;
	font-weight: bold;
	margin: 1.33rem 0;
}

.p-content h5 {
	font-size: 0.83rem;
	font-weight: bold;
	margin: 1.67rem 0;
}

.p-content h6 {
	font-size: 0.67rem;
	font-weight: bold;
	margin: 2.33rem 0;
}

.p-content p {
	font-size: 0.8125rem;
	line-height: 2;
	margin: 1rem 0;
}

.p-content p + p {
	margin-top: 1rem;
}

.p-content ol,
.p-content ul {
	font-size: 0.8125rem;
}

.p-content ol {
	list-style-type: decimal;
	margin: 1rem 0;
	padding-left: 2rem;
}

.p-content ul {
	list-style-type: disc;
	margin: 1rem 0;
	padding-left: 2rem;
}

.p-content a {
	color: #007bff;
	-webkit-text-decoration: underline;
	text-decoration: underline;
}

.p-content blockquote {
	background-color: #111111;
	border-left: 4px solid #ffffff;
	margin-bottom: 1rem;
	margin-top: 1rem;
	padding-bottom: 0.5rem;
	padding-left: 1rem;
	padding-right: 1rem;
	padding-top: 0.5rem;
}

.p-content.p-content--revert * {
	all: revert;
}

.p-drawer-mask {
	bottom: 0;
	height: 100vh;
	left: 0;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	right: 0;
	top: 0;
	visibility: hidden;
	width: 100vw;
	z-index: 7000;
}

.p-drawer-mask.is-active {
	opacity: 1;
	visibility: visible;
}

.p-drawer-mask.is-active::before,
.p-drawer-mask.is-active::after {
	animation-direction: normal;
	animation-duration: 0.9s;
	animation-fill-mode: forwards;
	animation-iteration-count: 1;
	animation-name: door-open;
	animation-timing-function: ease-in-out;
	background-color: #000;
	bottom: 0;
	content: "";
	display: block;
	height: 100%;
	position: fixed;
	top: 0;
	transform: skew(-45deg);
	transform-origin: center;
	width: 150vw;
	z-index: 9000;
}

.p-drawer-mask.is-active::before {
	border-right: 1rem solid #e50012;
	left: 50%;
	translate: -100% 0;
	--translate-x: -100%;
	--opacity: 0.2;
}

.p-drawer-mask.is-active::after {
	border-left: 1rem solid #e50012;
	right: 50%;
	translate: 100% 0;
	--translate-x: 100%;
	--opacity: 0.2;
}

.p-drawer {
	background-image: url(../images/common/stripe-drawer.webp);
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	bottom: 0;
	height: 100vh;
	left: 0;
	opacity: 0;
	position: fixed;
	right: 0;
	top: 0;
	visibility: hidden;
	z-index: 3000;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	padding-top: clamp(50 * 1px, 4.0816326531vw + 34.693877551px, 100 * 1px);
	transition: all 0.2s ease-in-out;
	user-select: none;
}

.p-drawer.is-active {
	opacity: 1;
	pointer-events: initial;
	visibility: visible;
	-webkit-user-select: initial;
	-moz-user-select: initial;
	user-select: initial;
}

.p-drawer__inner.l-inner {
	height: 100%;
	max-width: 340px;
}

.p-drawer__nav {
	padding-top: 15vh;
}

.p-drawer__list {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	height: inherit;
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
}

.p-drawer__item {
	border-bottom: 1px solid #fff;
	padding-bottom: 0.75rem;
	width: 100%;
}

.p-drawer__link {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
	line-height: 1;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	width: 100%;
}

.p-drawer__link .en {
	color: #fff;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 1.25rem;
	position: relative;
	text-transform: uppercase;
}

.p-drawer__link .en::after {
	background-color: #fff;
	border-radius: 0.125rem;
	bottom: -4px;
	content: "";
	display: block;
	height: 0.125rem;
	left: 0;
	position: absolute;
	transform: scale(0);
	transform-origin: left;
	transition: transform 0.3s;
	width: 100%;
}

.p-drawer__link .jp {
	color: #fff;
	font-size: 0.875rem;
	font-weight: 700;
}

.p-drawer__link:hover .en::after {
	transform: scale(1);
}

.p-drawer__sublist {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
	margin-top: 0.25rem;
	padding-left: 1.875rem;
	padding-right: 0.625rem;
}

.p-drawer__subitem + .p-drawer__subitem::before {
	color: #fff;
	content: "/";
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 1rem;
	margin-right: 0.5rem;
}

.p-drawer__sublink .en {
	color: #fff;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 1.125rem;
	position: relative;
}

.p-drawer__sublink .en::after {
	background-color: #fff;
	border-radius: 0.125rem;
	bottom: -4px;
	content: "";
	display: block;
	height: 0.125rem;
	left: 0;
	position: absolute;
	transform: scale(0);
	transform-origin: left;
	transition: transform 0.3s;
	width: 100%;
}

.p-drawer__sublink:hover .en::after {
	transform: scale(1);
}

.p-drawer__mask {
	display: none;
}

.p-error__title {
	font-size: 1.25rem;
	text-align: center;
}

.p-error__text {
	font-size: 0.875rem;
	line-height: 2;
	margin-top: 1.125rem;
	text-align: center;
}

.p-error__text span {
	display: inline-block;
}

.p-error__button {
	align-items: center;
	display: grid;
	justify-items: center;
	margin-top: 1.875rem;
	place-items: center;
}

.p-footer {
	padding-bottom: 2.5rem;
	position: relative;
}

.p-footer__button-top {
	bottom: 7.4962518741vh;
	position: fixed;
	right: 0.5rem;
}

.p-footer__inner.l-inner {
	padding-left: 2.8125rem;
	padding-right: 2.8125rem;
}

.p-footer__logo {
	align-items: center;
	display: grid;
	justify-items: center;
	place-items: center;
}

.p-footer__logo a {
	width: 5.625rem;
}

.p-footer__logo a picture,
.p-footer__logo a img {
	height: auto;
	width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-footer__info {
	margin-top: 1.5rem;
}

.p-footer__nameEn {
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.9375rem;
	letter-spacing: 0.15em;
	text-align: center;
	text-transform: uppercase;
}

.p-footer__nameJp {
	font-size: 0.8125rem;
	font-weight: 700;
	text-align: center;
}

.p-footer__sns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	margin-top: 1.5rem;
}

.p-footer__subbox1 {
	margin-top: 3.25rem;
}

.p-footer__list {
	align-items: center;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	justify-items: center;
	place-items: center;
	grid-gap: 1.5rem 1.5rem;
	gap: 1.5rem 1.5rem;
}

.p-footer__item span {
	color: #fff;
	color: #fff;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	position: relative;
}

.p-footer__item span::after {
	background-color: #fff;
	border-radius: 0.125rem;
	bottom: -4px;
	content: "";
	display: block;
	height: 0.125rem;
	position: absolute;
	transform: scale(0);
	transform-origin: center;
	transition: transform 0.3s;
	width: 100%;
}

.p-footer__link-mini {
	color: #fff;
	display: block;
	font-size: 0.6875rem;
	letter-spacing: 0.05em;
	margin-top: 2rem;
	text-align: center;
}

.p-footer__banner-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 1.875rem;
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	margin-top: 4rem;
	width: 82%;
}

.p-footer__banner {
	width: 100%;
}

.p-footer__banner img {
	height: auto;
	width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-footer__box2 {
	margin-top: 3.5rem;
}

.p-footer__subbox2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
	justify-content: center;
}

.p-footer__emblem {
	flex-shrink: 0;
	width: 3.125rem;
}

.p-footer__emblem img {
	height: auto;
	width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-footer__note .note1 {
	color: #7f7f7f;
	font-size: 0.75rem;
	font-weight: 500;
	letter-spacing: 0.05em;
}

.p-footer__note .note2 {
	color: #7f7f7f;
	font-size: 0.75rem;
	font-style: normal;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.8;
}

.p-footer__note .note2 .small {
	font-size: 0.625rem;
}

.p-footer__copy {
	color: #7f7f7f;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.5625rem;
	letter-spacing: 0.15em;
	margin-top: 3rem;
	text-align: center;
	text-transform: uppercase;
}

.wpcf7-spinner {
	display: none;
}

.wpcf7-list-item {
	margin: 0;
}

.wpcf7-not-valid {
	outline: 1px solid #e84f5b !important; /* エラー時の枠線 */
}

.wpcf7-response-output {
	border-color: #e50012 !important;
	text-align: center !important;
}

.wpcf7-not-valid-tip {
	color: #e84f5b;
}

.wpcf7-not-valid-tip::before {
	aspect-ratio: 1;
	background-image: url(../images/common/error.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "!";
	display: inline-block;
	margin-right: 0.2em;
	width: 1em;
}

.p-form .p-form__item {
	align-items: baseline;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	font-size: 0.875rem;
	font-weight: 700;
	gap: 0.5rem 2rem;
}

.p-form .p-form__item:has(#f-textarea) {
	align-items: flex-start;
}

.p-form .p-form__item:has(#f-textarea) .p-form__term {
	margin-top: 1.5em;
}

.p-form .p-form__item:not(:nth-of-type(1)),
.p-form div[data-class=wpcf7cf_group] {
	margin-top: 1.5rem;
}

.p-form .p-form__term label,
.p-form .p-form__term p {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
}

.p-form .p-form__term label::before,
.p-form .p-form__term p::before {
	aspect-ratio: 1;
	border: 1px solid #e50012;
	content: "";
	rotate: 45deg;
	width: 0.6em;
}

.p-form .p-form__term label.required::before,
.p-form .p-form__term p.required::before {
	background-color: #e50012;
}

.p-form .p-form__description {
	line-height: 2;
	word-wrap: anywhere;
}

.p-form .p-form__description .zip-code {
	align-items: baseline;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1rem;
}

.p-form .p-form__description .zip-code input {
	max-width: 7.5rem;
}

.p-form .p-form__description .address {
	margin-top: 1rem;
}

.p-form .p-form__description fieldset {
	border: medium none currentcolor;
	border: initial;
}

.p-form .p-form__sub {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: flex-start;
}

.p-form .p-form__sub-list {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.625rem;
}

.p-form .p-form__policy {
	font-size: 0.875rem;
	font-weight: 500;
	margin-top: 3.125rem;
}

.p-form .p-form__submit-cation {
	margin-top: 1rem;
	text-align: center;
}

.p-form .p-form__confirm {
	align-items: center;
	display: grid;
	justify-items: center;
	margin-top: 2.5rem;
	place-items: center;
}

.p-form .p-form__buttons {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1rem;
	justify-content: center;
	margin-top: 2.5rem;
}

.p-form .p-form__other-link {
	color: #fff;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: -0.05em;
	line-height: 2.3;
	margin-top: 1em;
}

.p-form .p-form__other-link a {
	color: #007bff;
	font-size: inherit;
	-webkit-text-decoration: underline;
	text-decoration: underline;
}

.p-form .p-form__note {
	color: #fff;
	font-size: 0.875rem;
}

.p-form [type=text],
.p-form [type=search],
.p-form [type=tel],
.p-form [type=url],
.p-form [type=email],
.p-form [type=password],
.p-form [type=date],
.p-form textarea,
.p-form select {
	background-color: #303030;
	border-radius: 0.3125rem;
	color: #fff;
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 2;
	margin: 0;
	padding: 1em;
	width: 100%;
}

.p-form [type=text]:active,
.p-form [type=text]:hover,
.p-form [type=text]:focus,
.p-form [type=search]:active,
.p-form [type=search]:hover,
.p-form [type=search]:focus,
.p-form [type=tel]:active,
.p-form [type=tel]:hover,
.p-form [type=tel]:focus,
.p-form [type=url]:active,
.p-form [type=url]:hover,
.p-form [type=url]:focus,
.p-form [type=email]:active,
.p-form [type=email]:hover,
.p-form [type=email]:focus,
.p-form [type=password]:active,
.p-form [type=password]:hover,
.p-form [type=password]:focus,
.p-form [type=date]:active,
.p-form [type=date]:hover,
.p-form [type=date]:focus,
.p-form textarea:active,
.p-form textarea:hover,
.p-form textarea:focus,
.p-form select:active,
.p-form select:hover,
.p-form select:focus {
	outline: 0.1875rem solid #484848;
}

.p-form [type=text]::-moz-placeholder,
.p-form [type=search]::-moz-placeholder,
.p-form [type=tel]::-moz-placeholder,
.p-form [type=url]::-moz-placeholder,
.p-form [type=email]::-moz-placeholder,
.p-form [type=password]::-moz-placeholder,
.p-form [type=date]::-moz-placeholder,
.p-form textarea::-moz-placeholder,
.p-form select::-moz-placeholder {
	color: #7f7f7f;
}

.p-form [type=text]::placeholder,
.p-form [type=search]::placeholder,
.p-form [type=tel]::placeholder,
.p-form [type=url]::placeholder,
.p-form [type=email]::placeholder,
.p-form [type=password]::placeholder,
.p-form [type=date]::placeholder,
.p-form textarea::placeholder,
.p-form select::placeholder {
	color: #7f7f7f;
}

.p-form textarea {
	min-height: 10rem;
	word-wrap: anywhere;
	resize: none;
}

.p-form button,
.p-form [type=button],
.p-form [type=submit] {
	cursor: pointer;
	display: inline-block;
	transition: 0.3s ease;
}

.p-form input:disabled {
	cursor: not-allowed;
}

.p-form #f-radio {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.p-form [type=radio] {
	display: none;
}

.p-form [type=radio] + span {
	cursor: pointer;
	display: inline-block;
	padding-left: 1.5em;
	position: relative;
}

.p-form [type=radio] + span::before,
.p-form [type=radio] + span::after {
	border-radius: 100%;
	content: "";
	display: block;
	left: 0.4em;
	position: absolute;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	transform-origin: center;
}

.p-form [type=radio] + span::before {
	background-color: #7f7f7f;
	border: 1px solid #7f7f7f;
	height: 1.25rem;
	width: 1.25rem;
}

.p-form [type=radio] + span::after {
	background: #fff;
	border: 0.25rem solid #e50012;
	height: 1.25rem;
	opacity: 0;
	transition: 0.2s ease;
	width: 1.25rem;
}

.p-form [type=radio]:checked + span::after {
	opacity: 1;
}

.p-form #f-checkbox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	gap: 0.8em 1em;
}

.p-form [type=checkbox] {
	display: none;
}

.p-form [type=checkbox] + span {
	cursor: pointer;
	display: inline-block;
	padding-left: 3.2em;
	position: relative;
}

.p-form [type=checkbox] + span::before,
.p-form [type=checkbox] + span::after {
	content: "";
	display: block;
	left: 1em;
	position: absolute;
	top: 0;
	transform: translateX(-50%) translateY(0);
	transform-origin: center;
}

.p-form [type=checkbox] + span::before {
	background-color: #7f7f7f;
	border: 2px solid #303030;
	border-radius: 4px;
	height: 2.1em;
	transition: 0.2s ease;
	width: 2.1em;
}

.p-form [type=checkbox] + span::after {
	border-color: #fff;
	border-style: solid;
	border-width: 0 0 4px 4px;
	height: 1.05em;
	opacity: 0;
	transform: translateX(-30%) translateY(0) rotate(-45deg);
	transition: 0.2s ease;
	width: 2.1em;
}

.p-form [type=checkbox]:checked + span::before {
	background-color: #e50012;
	border: 2px solid red;
}

.p-form [type=checkbox]:checked + span::after {
	opacity: 1;
}

.p-form select {
	background-image: url(../images/common/triangle.svg);
	background-image: url("../images/common/arrow-down-white.svg");
	background-position: right 1em center;
	background-position: right 0.75rem center;
	background-repeat: no-repeat;
	background-repeat: no-repeat;
	background-size: 0.5em;
	background-size: 0.75rem 0.75rem;
	color: #fff;
	cursor: pointer;
	position: relative;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.p-form select option {
	font-size: 0.875rem;
}

.p-form [type=date] {
	position: relative; /*↓デフォルトのアイコンを消す場合はコメントアウト（noneにする）*/
	-webkit-appearance: auto;
	-moz-appearance: auto;
	appearance: auto; /*↓デフォルトではないアイコンを使う場合は入力する*/
}

.p-form #f-birth-year {
	width: 5.5rem;
}

.p-form #f-birth-month {
	width: 4rem;
}

.p-form #f-birth-day {
	width: 4rem;
}

.p-form #f-school-year {
	width: 5.5rem;
}

.p-form__confirm {
	display: none;
}

.p-form__confirm .p-form__description span {
	word-wrap: anywhere;
}

.p-fv {
	min-height: 100vh;
	padding-top: clamp(50 * 1px, 4.0816326531vw + 34.693877551px, 100 * 1px);
	position: relative;
}

.p-fv__inner {
	margin-left: auto;
	margin-right: auto;
	padding-left: 1.75rem;
	padding-right: 1.75rem;
}

.p-fv__heading {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	justify-content: center;
	margin-top: 1.25rem;
}

.p-fv__title {
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 3.5rem;
	line-height: 0.9166666667;
	text-align: center;
	text-transform: uppercase;
}

.p-fv__title .red {
	color: #e50012;
	line-height: inherit;
}

.p-fv__title.is-loading {
	overflow: hidden;
}

.p-fv__title.is-loading .row {
	font-size: inherit;
	position: relative;
}

.p-fv__title.is-loading .text,
.p-fv__title.is-loading .row::before,
.p-fv__title.is-loading .row::after {
	animation-direction: normal;
	animation-fill-mode: forwards;
	animation-iteration-count: 1;
	animation-timing-function: ease-in-out;
}

.p-fv__title.is-loading .text {
	animation-duration: 1.1s;
	animation-name: clip-center;
}

.p-fv__title.is-loading .row::before,
.p-fv__title.is-loading .row::after {
	animation-duration: 1s;
	animation-name: door-open;
	background-color: transparent;
	bottom: 0;
	content: "";
	display: block;
	height: 0.8em;
	position: absolute;
	top: 0.2em;
	transform: skew(-45deg);
	transform-origin: center;
	width: 80%;
}

.p-fv__title.is-loading .row::before {
	--opacity: 0.6;
	border-right: 0.5rem solid #e50012;
	left: 50%;
	translate: -100% 0;
	--translate-x: -100%;
}

.p-fv__title.is-loading .row::after {
	--opacity: 0.3;
	border-left: 0.5rem solid #e50012;
	right: 50%;
	translate: 100% 0;
	--translate-x: 100%;
}

.p-fv__subtitle {
	font-size: 1.375rem;
	font-weight: 900;
	line-height: 1.3;
	text-align: center;
}

.p-fv__note {
	font-size: 0.6875rem;
	font-weight: 500;
	letter-spacing: -0.05em;
	line-height: 2;
	text-align: center;
}

.p-fv__players {
	display: none;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	transform-origin: center;
	width: 100%;
}

.p-fv__players picture,
.p-fv__players img {
	height: auto;
	width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-fv__bg {
	left: 0;
	mix-blend-mode: lighten;
	position: absolute;
	top: 0;
	transform-origin: bottom;
	width: 100%;
	z-index: -30;
}

.p-fv__bg picture,
.p-fv__bg img {
	height: auto;
	width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	-o-object-position: top left;
	object-position: top left;
}

.p-fv__stripe {
	left: -75%;
	position: absolute;
	top: 0;
	transform-origin: top;
	width: 200%;
	z-index: -40;
}

.p-fv__stripe picture,
.p-fv__stripe img {
	height: auto;
	width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-fv__halo {
	background-image: radial-gradient(rgba(45, 79, 146, 0.5), #000 80%);
	border-radius: 100%;
	height: 44.5rem;
	left: 50%;
	mix-blend-mode: screen;
	position: absolute;
	top: 50%;
	translate: -50% -50%;
	width: 44.5rem;
	z-index: -40;
}

.p-header {
	height: clamp(50 * 1px, 4.0816326531vw + 34.693877551px, 100 * 1px);
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	transition: opacity 0.5s, visibility 0.5s;
	z-index: 5000;
}

.p-header__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: inherit;
	justify-content: space-between;
	padding-left: 1.25rem;
	padding-right: 2rem;
}

.p-header__logo {
	height: inherit;
}

.p-header__logo a {
	display: block;
	padding-top: 0.625rem;
	transform: scale(1.5);
	transform-origin: top left;
	transition: width 0.3s, transform 0.3s, opacity 0.3s;
	width: 3rem;
}

.p-header__logo a img {
	height: auto;
	width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-header__title {
	align-items: end;
	display: grid;
	height: inherit;
	justify-items: end;
	margin-left: 1.125rem;
	place-items: end;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.3s;
}

.p-header__title p {
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.5625rem;
	letter-spacing: 0.15em;
}

.p-header__nav {
	display: none;
	height: inherit;
	margin-left: auto;
}

.p-header__list {
	height: inherit;
}

.p-header__item {
	height: inherit;
}

.p-header__item a {
	align-items: end;
	color: #fff;
	display: grid;
	height: inherit;
	justify-items: end;
	place-items: end;
}

.p-header__item span {
	position: relative;
	transition: color 0.3s;
}

.p-header__item span::after {
	background-color: #fff;
	border-radius: 0.125rem;
	bottom: -0.375rem;
	content: "";
	display: block;
	height: 0.125rem;
	position: absolute;
	transform: scale(0);
	transform-origin: center;
	transition: transform 0.3s;
	width: 100%;
}

.p-header__item.is-current span::after {
	transform: scale(1);
}

.p-header__instagram {
	display: none;
}

.p-header__hamburger {
	align-items: end;
	display: grid;
	justify-items: end;
	margin-left: auto;
	place-items: end;
}

.p-header.is-scroll {
	-webkit-backdrop-filter: blur(2px);
	backdrop-filter: blur(2px);
}

.p-header.is-scroll .p-header__logo a {
	transform: scale(1);
}

.p-header.is-scroll .p-header__title {
	transform: scaleX(1);
}

.p-header.is-active .p-header__inner {
	max-width: 640px;
	padding-right: 1rem;
}

.p-header.is-active .p-header__logo a {
	transform: scale(1);
}

.p-header.is-active .p-header__title {
	display: none;
}

.p-header.is-active .p-header__nav {
	display: none;
}

.p-header.is-active .p-header__instagram {
	align-items: end;
	display: grid;
	justify-items: end;
	margin-left: auto;
	place-items: end;
}

.p-header.is-active .p-header__hamburger {
	margin-left: 2rem;
}

.p-loading {
	bottom: 0;
	display: none;
	height: 100vh;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 9000;
}

.p-loading.is-active {
	display: block;
}

.p-loading__inner {
	height: 100%;
}

.p-lower-heading1 {
	padding-top: calc(50px + 3.5rem);
	position: relative;
}

.p-lower-heading1__bg {
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: -30;
}

.p-lower-heading1__bg picture,
.p-lower-heading1__bg img {
	height: auto;
	width: 100%;
	-o-object-position: top;
	object-position: top;
}

.p-lower-heading1__inner.l-inner {
	align-items: center;
	display: grid;
	min-height: inherit;
	padding-left: 1.875rem;
	padding-right: 1.875rem;
}

.p-lower-heading1__lead {
	font-size: 1.5625rem;
	font-weight: 900;
	letter-spacing: -0.02em;
	line-height: 1.3;
	margin-top: 6.25rem;
}

.p-lower-heading1__text {
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1.25rem;
}

.p-lower-heading1.p-lower-heading1--about {
	padding-top: calc(50px + 32vh);
}

.p-lower-heading1.p-lower-heading1--about .p-lower-heading1__lead {
	margin-top: 1.5rem;
}

.p-lower-heading2 {
	padding-top: calc(50px + 3.5rem);
	position: relative;
}

.p-lower-heading2__inner.l-inner {
	padding-left: 1.875rem;
	padding-right: 1.875rem;
}

.p-modal-box {
	height: 100vh;
	left: 0;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	right: 0;
	top: 0;
	visibility: hidden;
	z-index: 7000;
}

.p-modal-box:has(.p-modal-box__item.is-open) {
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}

.p-modal-box__list {
	background-color: rgba(0, 0, 0, 0.2);
	height: inherit;
	position: relative;
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
}

.p-modal-box__item {
	height: inherit;
	left: 50%;
	margin-left: auto;
	margin-right: auto;
	max-width: 1028px;
	opacity: 0;
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
	pointer-events: none;
	position: absolute;
	top: 0;
	transition: opacity 0.3s;
	translate: -50% 0;
	visibility: hidden;
	width: 90%;
}

.p-modal-box__item.is-open {
	opacity: 1;
	pointer-events: auto;
	transition: opacity 0.3s;
	visibility: visible;
}

.p-modal {
	background-color: #000;
	height: 100%;
	overflow-y: auto;
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
	position: relative;
}

.p-modal__close {
	align-items: flex-end;
	display: grid;
	justify-items: flex-end;
	place-items: flex-end;
	position: sticky;
	right: 0;
	top: 0;
	translate: -1.5rem -1.5rem;
}

.p-modal__inner {
	margin-left: auto;
	margin-right: auto;
	padding-left: 2rem;
	padding-right: 2rem;
}

.p-modal__head {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.p-modal__heading {
	display: contents;
}

.p-modal__title-staff {
	order: 1;
}

.p-modal__content-schedule {
	margin-top: 3.75rem;
}

.p-modal__cat-schedule {
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: -0.05em;
	line-height: 2;
}

.p-modal__title-schedule {
	font-size: 1rem;
	font-weight: 900;
	margin-top: 0.625rem;
}

.p-modal__info {
	order: 3;
}

.p-modal__position {
	color: #fff;
	font-size: 0.875rem;
	font-weight: 900;
}

.p-modal__name {
	font-size: 1.5625rem;
	font-weight: 900;
}

.p-modal__furigana {
	color: #e50012;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.875rem;
	letter-spacing: 0.15em;
	margin-top: 0.9375rem;
	text-transform: uppercase;
}

.p-modal__img {
	aspect-ratio: 1;
	order: 2;
	width: 100%;
}

.p-modal__img img {
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-modal__bgimg {
	aspect-ratio: 1;
	order: 2;
	overflow: hidden;
	width: 100%;
}

.p-modal__bgimg .image {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 100%;
	transition: scale 0.3s, filter 0.3s;
	width: 100%;
}

.p-modal__message {
	margin-top: 3.75rem;
}

.p-modal__career {
	margin-top: 3.75rem;
}

.p-modal__box-schedule {
	margin-top: 1.5rem;
}

.p-page-about__gallery-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 0.1875rem;
	gap: 0.1875rem;
}

.p-page-about__gallery-item {
	aspect-ratio: 1/1;
	width: 100%;
}

.p-page-about__gallery-item img {
	aspect-ratio: inherit;
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-page-about__subtitle {
	font-size: 1.5625rem;
	font-weight: 900;
	line-height: 1.3;
	margin-top: 1.625rem;
	text-align: center;
}

.p-page-about__philosophy-list {
	margin-top: 2.75rem;
}

.p-page-about__philosophy-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 0.875rem 0;
	justify-content: start;
}

.p-page-about__philosophy-item .title {
	font-size: 0.875rem;
	font-weight: 900;
	text-align: center;
}

.p-page-about__philosophy-item .text,
.p-page-about__philosophy-item .item {
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 2;
}

.p-page-about__philosophy-item .list {
	list-style-position: outside;
	list-style-type: decimal;
	padding-left: 1em;
}

.p-page-about__philosophy-item .item {
	padding-left: 0.5em;
}

.p-page-about__philosophy-item + .p-page-about__philosophy-item {
	margin-top: 2.5rem;
}

.p-page-about__movie {
	aspect-ratio: 560/315;
	margin-top: 2.5rem;
	width: 100%;
}

.p-page-about__movie iframe {
	aspect-ratio: inherit;
	height: 100%;
	width: 100%;
}

.p-page-about__uniform {
	margin-top: 3.75rem;
}

.p-page-about__uniform-section {
	margin-top: 1.75rem;
}

.p-page-about__record {
	margin-top: 3.75rem;
}

.p-page-about__record-list {
	margin-top: 1.75rem;
}

.p-page-about__destination {
	margin-top: 5rem;
}

.p-page-about__destination-list {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	grid-gap: 3.125rem;
	gap: 3.125rem;
	margin-top: 1.75rem;
}

.l-page-application {
	margin-top: 4rem;
}

.p-page-application__detail {
	margin-top: 1.625rem;
}

.p-page-application__apply {
	margin-top: 2rem;
}

.p-page-application__field {
	margin-top: 3rem;
}

.p-page-contact__lead {
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 2;
}

.p-page-contact__lead a {
	color: #007bff;
	-webkit-text-decoration: underline;
	text-decoration: underline;
}

.p-page-contact__cation {
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 2.5rem;
}

.p-page-contact__contact {
	margin-top: 3.5rem;
}

.p-page-contact__tel {
	color: #fff;
	display: block;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 1.875rem;
	letter-spacing: 0.05em;
	margin-top: 1rem;
	text-align: center;
}

.p-page-contact__explanation {
	color: #fff;
	font-size: 0.75rem;
	line-height: 2;
	margin-top: 1rem;
}

.p-page-contact__explanation .red {
	color: #e50012;
}

.p-page-contact__flow {
	margin-top: 2rem;
}

.p-page-contact__flow-list {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1px;
	justify-content: space-between;
	overflow-x: hidden;
}

.p-page-contact__flow-item {
	font-size: 0.625rem;
	font-weight: 500;
	letter-spacing: -0.05em;
	padding-bottom: 0.875rem;
	padding-top: 0.875rem;
	position: relative;
	text-align: center;
	text-indent: 1em;
	width: 33.3%;
}

.p-page-contact__flow-item::before,
.p-page-contact__flow-item::after {
	background-color: #353535;
	content: "";
	display: block;
	height: 51%;
	left: 0;
	position: absolute;
	right: 0;
	translate: 0.875rem 0;
	width: 100%;
	z-index: -1;
}

.p-page-contact__flow-item::before {
	top: 0;
	transform: skewX(30deg);
}

.p-page-contact__flow-item::after {
	bottom: 0;
	transform: skewX(-30deg);
}

.p-page-contact__flow-item:nth-of-type(2) {
	text-indent: 2em;
}

.p-page-contact__flow-item:first-of-type {
	background-color: #353535;
}

.p-page-contact__flow-item:first-of-type.is-current {
	background-color: #e50012;
}

.p-page-contact__flow-item.is-current::before,
.p-page-contact__flow-item.is-current::after {
	background-color: #e50012;
}

.p-page-contact__form {
	margin-top: 2.5rem;
}

.p-page-contact__thanks {
	font-size: 1rem;
	font-weight: 700;
	margin-top: 2.5rem;
	text-align: center;
}

.p-page-contact__note {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1.25rem;
}

.p-page-contact__home {
	align-items: center;
	display: grid;
	justify-items: center;
	margin-top: 2.5rem;
	place-items: center;
}

.l-page-player {
	margin-top: 2rem;
}

.p-page-player__tab-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1px;
	justify-content: space-between;
	width: 100%;
}

.p-page-player__tab-item {
	background-color: #353535;
	cursor: pointer;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 1rem;
	letter-spacing: 0.05em;
	padding-bottom: 1rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	padding-top: 1.25rem;
	text-align: center;
	transition: background-color 0.3s;
	width: 100%;
}

.p-page-player__tab-item.is-open {
	background-color: #e50012;
}

.p-page-player__content {
	display: none;
	margin-top: 2rem;
}

.p-page-player__content.is-open {
	display: block;
}

.p-page-player__img {
	aspect-ratio: 670/335;
	width: 100%;
}

.p-page-player__img img {
	height: auto;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-page-player__title {
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 1.875rem;
	margin-top: 1.125rem;
	text-align: center;
}

.p-page-player__list {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	grid-gap: 4rem 1.5rem;
	gap: 4rem 1.5rem;
	margin-top: 1.75rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.p-page-player__tab-down {
	margin-top: 6.25rem;
}

.p-page-privacy__content h2 {
	font-size: 1.125rem;
	font-weight: 700;
}

.p-page-privacy__content * + h2 {
	margin-top: 2.5rem;
}

.p-page-privacy__content h3,
.p-page-privacy__content h4,
.p-page-privacy__content h5,
.p-page-privacy__content h6 {
	font-weight: 700;
	margin-top: 1.875rem;
}

.p-page-privacy__content h3 {
	font-size: 1rem;
}

.p-page-privacy__content h4 {
	font-size: 0.875rem;
}

.p-page-privacy__content h5 {
	font-size: 0.75rem;
}

.p-page-privacy__content h6 {
	font-size: 0.625rem;
}

.p-page-privacy__content p {
	line-height: 2;
	margin-top: 1.25rem;
}

.p-page-privacy__content p + p {
	margin-top: 1em;
}

.p-page-privacy__content ol,
.p-page-privacy__content ul {
	line-height: 2;
	margin-top: 2.25rem;
	padding-left: 0.5em;
}

.p-page-privacy__content ol li,
.p-page-privacy__content ul li {
	padding-left: 0.5em;
}

.p-page-privacy__content ol {
	list-style-type: decimal;
}

.p-page-privacy__content ul {
	list-style-type: "・";
}

.p-page-privacy__content a {
	color: #007bff;
	-webkit-text-decoration: underline;
	text-decoration: underline;
}

.eo-event-toolip {
	display: none !important;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-toolbar {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-toolbar .fc-left h2 {
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 1.875rem;
	margin-left: 0;
	margin-left: initial;
	margin-right: 0;
	margin-right: initial;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-toolbar .fc-right .fc-button.fc-prev-button,
.p-page-schedule__calendar .eo-fullcalendar .fc-toolbar .fc-right .fc-button.fc-next-button {
	border-radius: 0.3125rem;
	height: 1.5625rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-toolbar .fc-right .fc-button.fc-today-button {
	background-color: #303030;
	border-radius: 0.3125rem;
	color: #fff;
	font-size: 0.75rem;
	height: 1.5625rem;
	padding-left: 0.75rem;
	padding-right: 0.75rem;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-toolbar .fc-center {
	display: contents;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-toolbar .fc-clear {
	display: contents;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-header {
	background-color: #1b1b1b;
	border-color: #303030;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-header .fc-day-header {
	padding-bottom: 0.5rem !important;
	padding-top: 0.5rem !important;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content {
	border-color: #303030;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid {
	background-color: #232323;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-today {
	background-color: #e50012;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-day-grid-event {
	border-radius: 0.3125rem;
	margin-top: 0.125rem;
	padding-bottom: 0.5rem;
	padding-top: 0.5rem;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-day-grid-event .fc-title {
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: -0.05em;
	padding-left: 1rem;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-day-number {
	border-color: #303030;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 2;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-day-number .fc-list-header-left,
.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-day-number .fc-list-header-right {
	color: #fff;
	padding-bottom: 0.5rem;
	padding-top: 0.5rem;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-content-skeleton table tbody {
	padding-top: 0.5rem !important;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-content-skeleton table tbody::before,
.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-content-skeleton table tbody::after {
	display: none;
}

.p-page-staff__list {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	grid-gap: 4.5rem 2rem;
	gap: 4.5rem 2rem;
}

.p-post {
	padding-top: 1.25rem;
}

.p-post__inner.l-inner {
	position: relative;
}

.p-post__filter-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1rem;
	justify-content: center;
}

.p-post__filter-item {
	min-width: 8.75rem;
}

.p-post__content {
	background-color: rgba(0, 0, 0, 0.5);
	margin-top: 2.5rem;
}

.p-section-about {
	padding-top: 13.75rem;
	position: relative;
}

.p-section-about__bg {
	position: absolute;
	right: -12%;
	top: 0;
	width: 135%;
	z-index: -10;
}

.p-section-about__bg img {
	height: auto;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-section-about__lead {
	font-size: 1.5625rem;
	font-weight: 900;
	line-height: 1.3;
	margin-top: 1.375rem;
}

.p-section-about__sublead {
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1.25rem;
}

.p-section-about__content {
	margin-top: 3.25rem;
}

.p-section-about__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 2rem 1rem;
	gap: 2rem 1rem;
}

.p-section-instagram__heading {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.5rem;
	justify-content: space-between;
}

.p-section-news__subbox {
	align-items: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
}

.p-section-news__heading {
	align-items: center;
	display: grid;
	justify-items: center;
	place-items: center;
}

.p-section-news__content {
	margin-top: 2.75rem;
	width: 100%;
}

.p-section-partners__content {
	border-bottom: 1px solid #7f7f7f;
	border-top: 1px solid #7f7f7f;
	padding-bottom: 1.5rem;
	padding-top: 1.5rem;
}

.p-section-partners__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 1.25rem 2.5rem;
	align-items: center;
	gap: 1.25rem 2.5rem;
	justify-items: center;
	place-items: center;
}

.p-section-partners__item {
	max-width: 8.125rem;
	opacity: 0.7;
}

.p-section-partners__img {
	width: 100%;
}

.p-section-partners__img img {
	height: auto;
	width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-section-schedule {
	position: relative;
}

.p-section-schedule__bg {
	left: 50%;
	position: absolute;
	top: 0;
	translate: -50% -50%;
	width: 300%;
	z-index: -10;
}

.p-section-schedule__img {
	margin-bottom: -3rem;
	margin-left: -10%;
	width: 130%;
}

.p-section-schedule__img img {
	height: auto;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.p-section-schedule__lead {
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1.625rem;
}

.p-section-schedule__link {
	margin-top: 1.25rem;
}

.p-single__box {
	background: rgba(0, 0, 0, 0.5);
	border-bottom: 1px solid #353535;
	border-top: 0.125rem solid #e50012;
	padding-bottom: 3rem;
	padding-top: 1.5rem;
}

.p-single__information {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.p-single__new {
	color: #e50012;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.8125rem;
	letter-spacing: 0.1em;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

.p-single__year {
	color: #fff;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 0.8125rem;
	letter-spacing: 0.05em;
	line-height: 1;
	text-align: center;
}

.p-single__date {
	color: #fff;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 1.875rem;
	letter-spacing: 0.05em;
	margin-left: 0.625rem;
}

.p-single__term {
	background-color: #7f7f7f;
	border-radius: 0.25rem;
	color: #fff;
	display: inline-block;
	font-size: 0.75rem;
	margin-left: 1rem;
	min-width: 5rem;
	padding-bottom: 0.125rem;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	padding-top: 0.125rem;
	text-align: center;
}

.p-single__term.members {
	background-color: #e50012;
}

.p-single__title {
	font-size: 1.125rem;
	font-weight: 900;
	margin-top: 1.5rem;
}

.p-single__content {
	margin-top: 2.5rem;
}

.p-single__pagination {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
	justify-content: space-between;
	margin-top: 2.5rem;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}

.p-single__pagination .hidden {
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
}

.p-uniform__tab-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2px;
	justify-content: space-between;
	width: 100%;
}

.p-uniform__tab-item {
	background-color: #7f7f7f;
	border-radius: 0.3125rem 0.3125rem 0 0;
	cursor: pointer;
	font-family: "Bebas Neue", YakuHanJP, "Noto Sans JP", sans-serif;
	font-size: 1rem;
	font-weight: 900;
	line-height: 1.2;
	padding-bottom: 0.75rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	padding-top: 1rem;
	text-align: center;
	transition: background-color 0.3s;
	width: 100%;
}

.p-uniform__tab-item.is-open {
	background-color: #e50012;
}

.p-uniform__content-list {
	background-color: #444444;
}

.p-uniform__content-item {
	display: none;
}

.p-uniform__content-item.is-open {
	display: block;
}

.p-uniform__list {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	grid-gap: 0;
	gap: 0;
}

.p-uniform__item {
	width: 100%;
}

.p-uniform__img {
	width: 100%;
}

.p-uniform__img img {
	height: auto;
	width: 100%;
}

.u-pc {
	display: none;
}

@media (any-hover: hover) {

a:hover {
	cursor: pointer;
	opacity: 0.8;
}

}

@media screen and (any-hover: hover) {

.c-button-arrow:hover::before,
.c-button-arrow:hover::after {
	animation: glide-into 1s infinite ease-in forwards 0s;
}

.c-button-large:not(:has(input[disabled])):hover {
	background-color: #e50012;
	opacity: 1;
}

.c-button-normal:hover {
	box-shadow: 0 0 0 0 gray;
	opacity: 1;
	transform: translate(1px, 1px);
}

.c-button-top:hover::after {
	animation: glide-into 1s infinite ease-in forwards 0s;
}

.c-card-staff:hover {
	opacity: 1;
}

.c-card-staff:hover .c-card-staff__img picture,
.c-card-staff:hover .c-card-staff__img img {
	filter: brightness(1.05);
	scale: 1.1;
}

.c-card-staff:hover .c-card-staff__bgimg .image {
	filter: brightness(1.05);
	scale: 1.1;
}

.c-card-staff:hover .c-card-staff__title::after {
	animation: yurayura 2s forwards ease-in-out infinite;
}

.p-footer__item:hover span::after {
	transform: scale(1);
}

.p-header__item:hover span::after {
	transform: scale(1);
}

.p-page-player__tab-item:hover {
	background-color: #e50012;
}

.p-uniform__tab-item:hover {
	background-color: #e50012;
}

}

@media screen and (min-width: 600px) {

.c-list-1clm__map {
	aspect-ratio: 4/3;
}

}

@media screen and (min-width: 768px) {

html {
	font-size: calc(0.4326923077vw + 9.0769230769px);
}

body:not(.home) {
	background-position: top;
	background-size: 100% auto;
}

a[href^="tel:"] {
	pointer-events: none;
}

.l-footer {
	margin-top: 14rem;
}

.l-footer.l-footer--top {
	margin-top: 7.75rem;
}

.l-inner {
	max-width: 1290px;
	padding-left: 25px;
	padding-right: 25px;
	width: 80.625vw;
}

.l-page-about {
	margin-top: -2.5rem;
}

.l-page-contact {
	margin-top: 6.25rem;
}

.l-page-privacy {
	margin-top: 6.25rem;
}

.l-page-schedule {
	margin-top: 6.25rem;
}

.l-page-staff {
	margin-top: 5vw;
}

.l-page {
	margin-top: 3.75rem;
}

.l-section-about {
	margin-top: 0;
	margin-top: initial;
}

.l-section-instagram {
	margin-top: 5.75rem;
}

.l-section-news {
	margin-top: 21.75rem;
}

.l-section-partners {
	margin-top: 7rem;
}

.l-section-schedule {
	margin-top: 16.25rem;
}

.l-section {
	margin-top: 16.25rem;
}

.l-single {
	margin-top: 8.75rem;
}

.c-arrow {
	font-size: 0.875rem;
}

.c-arrow::before {
	height: 0.75rem;
	margin-right: 0.625rem;
	width: 3.5rem;
}

.c-button-arrow::before,
.c-button-arrow::after {
	margin-left: 0.625rem;
	margin-right: 0.625rem;
	width: 3.75rem;
}

.c-button-arrow::before {
	margin-right: 1.5rem;
}

.c-button-arrow::after {
	margin-left: 1.5rem;
}

.c-button-large a,
.c-button-large input {
	font-size: 1rem;
	min-width: 15rem;
	padding-bottom: 1.75rem;
	padding-top: 1.75rem;
}

.c-button-top {
	font-size: 0.875rem;
	padding-top: 4.5rem;
}

.c-button-top::after {
	top: 3.5rem;
	width: 3.75rem;
}

.c-card-about__title {
	font-size: 1.25rem;
	padding-top: 3.75rem;
}

.c-card-about__title::before {
	height: 0.75rem;
	width: 5rem;
}

.c-card-about__subtitle {
	font-size: 0.875rem;
	margin-top: 0.5rem;
}

.c-card-player__name {
	font-size: 1.25rem;
	margin-top: 1.5rem;
}

.c-card-player__furigana {
	margin-top: 0.875rem;
}

.c-card-player__list {
	margin-top: 1.25rem;
}

.c-card-player__item {
	flex-direction: row;
	gap: 0.5rem 1.5rem;
	padding-bottom: 1.3125rem;
	padding-top: 1rem;
}

.c-card-player__term {
	flex-shrink: 0;
	width: 30%;
}

.c-card-post {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding-bottom: 1.25rem;
	padding-left: 1.125rem;
	padding-right: 5rem;
	padding-top: 1.25rem;
}

.c-card-post::after {
	content: "";
	display: block;
	height: 0.75rem;
	position: absolute;
	right: 1.25rem;
	top: 50%;
	translate: 0 -50%;
	width: 3.5rem;
	-webkit-mask-image: url(../images/common/arrow-long.svg);
	mask-image: url(../images/common/arrow-long.svg);
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	background-color: #e50012;
	mask-repeat: no-repeat;
}

.c-card-post__new {
	font-size: 1rem;
}

.c-card-post__year {
	font-size: 1rem;
}

.c-card-post__date {
	font-size: 2.5rem;
	margin-left: 1.25rem;
	width: 6rem;
}

.c-card-post__term {
	font-size: 0.875rem;
	margin-left: 1.5rem;
	min-width: 6.625rem;
	padding-bottom: 0.25rem;
	padding-top: 0.25rem;
}

.c-card-post__title {
	font-size: 1rem;
	margin-left: 1.5rem;
	margin-top: 0;
	margin-top: initial;
}

.c-card-staff__position {
	margin-top: 2.25rem;
	padding-left: 0;
	padding-left: initial;
	padding-right: 0;
	padding-right: initial;
}

.c-card-staff__title {
	margin-top: 1.5rem;
	padding-left: 0;
	padding-left: initial;
	padding-right: 0;
	padding-right: initial;
}

.c-card-staff__name {
	font-size: 1.25rem;
}

.c-card-staff__furigana {
	margin-top: 0.625rem;
}

.c-hamburger {
	height: 1rem;
	width: 3.75rem;
}

.c-hamburger::before {
	bottom: -1.25rem;
	height: 18.75rem;
	width: 7.5rem;
}

.c-hamburger__border {
	border-radius: 0.125rem;
	height: 0.125rem;
}

.c-hamburger.is-active {
	height: 2rem;
	width: 3.375rem;
}

.c-hamburger.is-active .c-hamburger__border:nth-child(1) {
	transform: scaleX(1.1547005384) translateY(calc(1rem - 50%)) rotate(30deg) skewX(0);
}

.c-hamburger.is-active .c-hamburger__border:nth-child(3) {
	transform: scaleX(1.1547005384) translateY(calc(-1rem + 50%)) rotate(-30deg) skewX(0);
}

.c-instagram {
	font-size: 1.5625rem;
}

.c-instagram::before {
	height: 2.1875rem;
	margin-right: 1rem;
	width: 2.1875rem;
}

.c-instagram.c-instagram--large {
	font-size: 3.125rem;
}

.c-instagram.c-instagram--large::before {
	height: 3.75rem;
	width: 3.75rem;
}

.c-instagram.c-instagram--large::before {
	margin-right: 1rem;
}

.c-list-1clm {
	align-items: baseline;
	border-left: 1px solid #e50012;
	border-top: 0;
	border-top: initial;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding-bottom: 0.5rem;
	padding-left: 1.25rem;
	padding-top: 0;
	padding-top: initial;
}

.c-list-1clm__heading {
	flex-shrink: 0;
	width: 19%;
}

.c-list-1clm__title {
	font-size: 1.25rem;
}

.c-list-1clm__body {
	margin-top: 0;
	margin-top: initial;
}

.c-list-1clm__item + .c-list-1clm__item {
	margin-top: 1rem;
}

.c-list-1clm__1clm .term {
	font-size: 1.25rem;
}

.c-list-1clm__1clm .description {
	font-size: 1rem;
}

.c-list-1clm__2clm .title,
.c-list-1clm__2clm .text {
	font-size: 1rem;
}

.c-list-1clm__2clm .title {
	width: 15%;
}

.c-list-1clm__textbox {
	font-size: 1rem;
}

.c-list-1clm__mini-list {
	margin-top: 1.875rem;
}

.c-list-1clm__note {
	font-size: 0.875rem;
}

.c-list-1clm__text {
	font-size: 1rem;
}

.c-list-1clm__map {
	aspect-ratio: 816/450;
}

.c-list-2clm {
	align-items: baseline;
	border-left: 1px solid #e50012;
	border-top: 0;
	border-top: initial;
	flex-direction: row;
	gap: 2rem;
	padding-bottom: 0.5rem;
	padding-left: 1.25rem;
	padding-top: 0;
	padding-top: initial;
}

.c-list-2clm__heading {
	display: block;
	flex-shrink: 0;
	width: 33%;
}

.c-list-2clm__title {
	font-size: 1.25rem;
}

.c-list-2clm__subtitle {
	font-size: 0.875rem;
	font-weight: 400;
	margin-left: 0.5rem;
	margin-top: 0.5rem;
}

.c-list-2clm__list {
	grid-template-columns: repeat(1, 1fr);
}

.c-list-2clm__item .destination {
	font-size: 1rem;
	line-height: 2.5;
}

.c-modal-close {
	height: 1.875rem;
	width: 3.125rem;
}

.c-pagination {
	gap: 1rem;
}

.c-pagination .page-numbers {
	height: 2rem;
	width: 2rem;
}

.c-pagination .page-numbers {
	font-size: 1.25rem;
}

.c-pagination .page-numbers.prev,
.c-pagination .page-numbers.next,
.c-pagination .page-numbers.first,
.c-pagination .page-numbers.last {
	height: 2rem;
	width: 2rem;
}

.c-post-filter__select {
	background-position: right 1.25rem center;
	background-size: 1.25rem 1.25rem;
	font-size: 0.875rem;
	margin-top: 1rem;
	padding-bottom: 0.625rem;
	padding-top: 0.625rem;
}

.c-post-filter__select option {
	font-size: 0.875rem;
}

.c-section-subtitle {
	align-items: center;
	gap: 2.375rem;
}

.c-section-subtitle__main {
	font-size: 2.5rem;
}

.c-section-subtitle__sub {
	font-size: 0.875rem;
	letter-spacing: 0.1em;
}

.c-section-title-red-line span {
	font-size: 1.25rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

.c-section-title__main {
	font-size: 1.25rem;
	margin-top: -0.625rem;
}

.c-section-title__sub {
	font-size: 7.5rem;
}

.c-section-title.c-section-title--small .c-section-title__sub {
	font-size: 7.5rem;
	line-height: 1;
}

.p-archive__pagination {
	margin-top: 6.25rem;
}

.p-column2__inner.l-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 3%;
}

.p-column2__sidebar {
	flex-shrink: 0;
	width: 15%;
}

.p-column2__main {
	width: 100%;
}

.p-content h2 {
	font-size: 1.5rem;
}

.p-content h3 {
	font-size: 1.125rem;
}

.p-content p {
	font-size: 1rem;
}

.p-content ol,
.p-content ul {
	font-size: 1rem;
}

.p-drawer__inner.l-inner {
	max-width: calc(45vw + 40px);
}

.p-drawer__nav {
	padding-top: 6.6666666667vh;
}

.p-drawer__list {
	gap: 2.4444444444vh;
	max-width: 100%;
	transform: skewX(-45deg);
	transform-origin: center;
	width: 33.75rem;
}

.p-drawer__item {
	padding-bottom: 2.6666666667vh;
	transform: skewX(45deg);
	transform-origin: center;
}

.p-drawer__link {
	padding-left: 2.5rem;
	padding-right: 1.25rem;
}

.p-drawer__link .en {
	font-size: 2.1875rem;
}

.p-drawer__link .jp {
	font-size: 0.9375rem;
}

.p-drawer__sublist {
	gap: 1rem;
	padding-left: 3.75rem;
	padding-right: 1.25rem;
}

.p-drawer__subitem + .p-drawer__subitem::before {
	font-size: 1.875rem;
	margin-right: 1rem;
}

.p-drawer__sublink .en {
	font-size: 1.875rem;
}

.p-error__title {
	font-size: 1.5rem;
}

.p-error__text {
	font-size: 1rem;
	margin-top: 2rem;
}

.p-error__button {
	margin-top: 3.125rem;
}

.p-footer {
	padding-bottom: 8.125rem;
}

.p-footer__button-top {
	bottom: 5vh;
	right: 3.75rem;
}

.p-footer__inner.l-inner {
	padding-left: 25px;
	padding-right: 25px;
}

.p-footer__box1 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2rem;
	justify-content: space-between;
}

.p-footer__heading {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	gap: 2rem;
}

.p-footer__logo a {
	width: 7.5rem;
}

.p-footer__info {
	margin-top: 0;
	margin-top: initial;
}

.p-footer__nameEn {
	font-size: 1.25rem;
	text-align: left;
}

.p-footer__nameJp {
	font-size: 0.9375rem;
	margin-top: 0.5rem;
	text-align: left;
}

.p-footer__sns {
	justify-content: flex-start;
	margin-left: 0.625rem;
	margin-top: 2.25rem;
}

.p-footer__subbox1 {
	margin-top: 0;
	margin-top: initial;
}

.p-footer__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem 2.125rem;
}

.p-footer__item span {
	font-size: 0.9375rem;
}

.p-footer__link-mini {
	font-size: 0.875rem;
	margin-top: 1.875rem;
	text-align: right;
}

.p-footer__banner-list {
	flex-direction: row;
	gap: 2.25rem;
	justify-content: flex-end;
	margin-top: -0.5rem;
	width: 100%;
}

.p-footer__banner-item {
	max-width: 20rem;
}

.p-footer__box2 {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
	margin-top: 4.375rem;
}

.p-footer__subbox2 {
	align-items: center;
	gap: 1.25rem;
}

.p-footer__emblem {
	width: 4.6875rem;
}

.p-footer__note {
	display: contents;
}

.p-footer__note .note1 {
	font-size: 0.9375rem;
}

.p-footer__note .note2 {
	font-size: 0.9375rem;
}

.p-footer__note .note2 .small {
	font-size: 0.8125rem;
}

.p-footer__copy {
	font-size: 0.75rem;
	margin-top: 0;
	margin-top: initial;
}

.p-form .p-form__item {
	flex-direction: row;
	font-size: 1rem;
}

.p-form .p-form__item:not(:nth-of-type(1)),
.p-form div[data-class=wpcf7cf_group] {
	margin-top: 2.5rem;
}

.p-form .p-form__term {
	flex-shrink: 0;
	width: 22.2%;
}

.p-form .p-form__term label,
.p-form .p-form__term p {
	gap: 1rem;
}

.p-form .p-form__description {
	width: 100%;
}

.p-form .p-form__description.cation {
	align-items: baseline;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1rem;
}

.p-form .p-form__sub-list:has(#f-school-year) {
	margin-left: auto;
}

.p-form .p-form__policy {
	margin-top: 3.75rem;
	text-align: center;
}

.p-form .p-form__submit-cation {
	margin-top: 2rem;
}

.p-form .p-form__confirm {
	margin-top: 3.75rem;
}

.p-form .p-form__buttons {
	gap: 2rem;
	margin-top: 2.5rem;
}

.p-form [type=text]:active,
.p-form [type=text]:hover,
.p-form [type=text]:focus,
.p-form [type=search]:active,
.p-form [type=search]:hover,
.p-form [type=search]:focus,
.p-form [type=tel]:active,
.p-form [type=tel]:hover,
.p-form [type=tel]:focus,
.p-form [type=url]:active,
.p-form [type=url]:hover,
.p-form [type=url]:focus,
.p-form [type=email]:active,
.p-form [type=email]:hover,
.p-form [type=email]:focus,
.p-form [type=password]:active,
.p-form [type=password]:hover,
.p-form [type=password]:focus,
.p-form [type=date]:active,
.p-form [type=date]:hover,
.p-form [type=date]:focus,
.p-form textarea:active,
.p-form textarea:hover,
.p-form textarea:focus,
.p-form select:active,
.p-form select:hover,
.p-form select:focus {
	outline: 0.3125rem solid #484848;
}

.p-form #f-radio {
	gap: 1.625rem;
}

.p-form [type=checkbox] + span::before,
.p-form [type=checkbox] + span::after {
	left: 0.4em;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}

.p-form [type=checkbox] + span::after {
	transform: translateX(-30%) translateY(-100%) rotate(-45deg);
}

.p-form select {
	background-position: right 1.25rem center;
	background-size: 1.25rem 1.25rem;
}

.p-form select option {
	font-size: 0.875rem;
}

.p-form #f-birth-year {
	width: 7rem;
}

.p-form #f-birth-month {
	width: 5.5rem;
}

.p-form #f-birth-day {
	width: 5.5rem;
}

.p-form #f-school-year {
	width: 7rem;
}

.p-fv__inner {
	max-width: calc(1400px + 12.5rem);
	padding-left: 6.25rem;
	padding-right: 6.25rem;
}

.p-fv__heading {
	align-items: flex-end;
	gap: 1rem;
	margin-top: 0;
	margin-top: initial;
	padding-top: 13.125rem;
}

.p-fv__title {
	font-size: 7.5rem;
	text-align: right;
}

.p-fv__subtitle {
	font-size: 3.125rem;
	letter-spacing: -0.05em;
	text-align: left;
}

.p-fv__note {
	font-size: 1rem;
	letter-spacing: 0;
	text-align: right;
}

.p-fv__players {
	left: 0;
	padding-left: 0;
	padding-left: initial;
	padding-right: 0;
	padding-right: initial;
	position: absolute;
	top: 0;
	width: 64%;
	z-index: -20;
}

.p-fv__bg {
	left: 0;
	top: -8%;
	width: 60%;
}

.p-fv__stripe {
	left: 0;
	width: 100%;
}

.p-header__inner {
	padding-left: 3.5rem;
	padding-right: 4rem;
}

.p-header__logo a {
	padding-top: 1.875rem;
	width: 7.5rem;
}

.p-header__title {
	margin-left: 2rem;
}

.p-header__title p {
	font-size: 1rem;
}

.p-header__list {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1.5rem;
}

.p-header__hamburger {
	margin-left: 7.25rem;
}

.p-header.is-active .p-header__inner {
	margin-left: auto;
	max-width: 770px;
	padding-left: 1.25rem;
	padding-right: 5rem;
}

.p-header.is-active .p-header__logo a {
	width: 3.5rem;
}

.p-header.is-active .p-header__title {
	display: grid;
	transform: scaleX(1);
}

.p-header.is-active .p-header__hamburger {
	margin-left: 3.5rem;
}

.p-lower-heading1 {
	min-height: calc(56.25rem - 100px);
	padding-top: 100px;
}

.p-lower-heading1__bg {
	left: 0;
	right: auto;
	right: initial;
	top: 0;
}

.p-lower-heading1__inner.l-inner {
	padding-left: 25px;
	padding-right: 25px;
}

.p-lower-heading1__lead {
	font-size: 2.5rem;
	line-height: 1.4;
	margin-top: 2.5rem;
}

.p-lower-heading1__text {
	font-size: 1rem;
	margin-top: 1rem;
	max-width: 30rem;
}

.p-lower-heading1.p-lower-heading1--about {
	padding-top: 100px;
}

.p-lower-heading1.p-lower-heading1--about .p-lower-heading1__lead {
	margin-top: 2.5rem;
}

.p-lower-heading2 {
	padding-top: 100px;
}

.p-lower-heading2__inner.l-inner {
	padding-left: 25px;
	padding-right: 25px;
}

.p-lower-heading2__heading {
	margin-top: 9.5rem;
}

.p-modal {
	padding-bottom: 6.25rem;
	padding-top: 6.25rem;
}

.p-modal__close {
	translate: -2.5rem -2.5rem;
}

.p-modal__inner {
	padding-left: 6.25rem;
	padding-right: 6.25rem;
}

.p-modal__head {
	flex-direction: row;
	justify-content: space-between;
}

.p-modal__heading {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.p-modal__content-schedule {
	margin-top: 6.25rem;
}

.p-modal__cat-schedule {
	font-size: 1rem;
}

.p-modal__title-schedule {
	font-size: 1.875rem;
}

.p-modal__position {
	font-size: 1.25rem;
}

.p-modal__name {
	font-size: 2.5rem;
}

.p-modal__furigana {
	margin-top: 0.625rem;
}

.p-modal__img {
	width: 50%;
}

.p-modal__bgimg {
	width: 50%;
}

.p-modal__message {
	margin-top: 7.5rem;
}

.p-modal__career {
	margin-top: 7.5rem;
}

.p-modal__box-schedule {
	margin-top: 2.5rem;
}

.p-page-about__inner.l-inner {
	max-width: 1078px;
}

.p-page-about__gallery-list {
	gap: 1rem;
}

.p-page-about__gallery-item {
	aspect-ratio: 3/2;
}

.p-page-about__subtitle {
	font-size: 3.125rem;
	line-height: 1.5;
	margin-top: 4.625rem;
}

.p-page-about__philosophy-list {
	margin-top: 4.75rem;
}

.p-page-about__philosophy-item {
	flex-direction: row;
	gap: 1.5rem 0;
}

.p-page-about__philosophy-item .title {
	flex-shrink: 0;
	font-size: 1.25rem;
	text-align: left;
	width: 20.5%;
}

.p-page-about__philosophy-item .text,
.p-page-about__philosophy-item .item {
	font-size: 1rem;
}

.p-page-about__philosophy-item + .p-page-about__philosophy-item {
	margin-top: 3.75rem;
}

.p-page-about__movie {
	margin-top: 4.5rem;
}

.p-page-about__uniform {
	margin-top: 7.5rem;
}

.p-page-about__uniform-section {
	margin-top: 3.375rem;
}

.p-page-about__record {
	margin-top: 7.5rem;
}

.p-page-about__record-list {
	margin-top: 3.5rem;
}

.p-page-about__destination {
	margin-top: 7.5rem;
}

.p-page-about__destination-list {
	gap: 3.25rem 2rem;
	grid-template-columns: repeat(2, 1fr);
	margin-top: 3.375rem;
}

.l-page-application {
	margin-top: 0;
	margin-top: initial;
}

.p-page-application__inner.l-inner {
	max-width: 1078px;
}

.p-page-application__detail {
	margin-top: 3.75rem;
}

.p-page-application__apply {
	margin-top: 3.75rem;
}

.p-page-application__field {
	margin-top: 3.75rem;
}

.p-page-contact__inner.l-inner {
	max-width: 866px;
}

.p-page-contact__lead {
	font-size: 1rem;
	letter-spacing: 0.05em;
}

.p-page-contact__cation {
	font-size: 1rem;
	letter-spacing: 0.05em;
	margin-top: 3.75rem;
}

.p-page-contact__contact {
	margin-top: 5rem;
}

.p-page-contact__tel {
	font-size: 3.125rem;
	margin-top: 2.5rem;
}

.p-page-contact__explanation {
	font-size: 1rem;
	margin-top: 2.5rem;
}

.p-page-contact__explanation .small {
	font-size: 0.875rem;
}

.p-page-contact__flow {
	margin-top: 5rem;
}

.p-page-contact__flow-list {
	gap: 0.125rem;
}

.p-page-contact__flow-item {
	font-size: 1rem;
	padding-bottom: 1.125rem;
	padding-top: 1.125rem;
	text-indent: 1.5em;
}

.p-page-contact__flow-item::before {
	transform: skewX(45deg);
}

.p-page-contact__flow-item::after {
	transform: skewX(-45deg);
}

.p-page-contact__flow-item:nth-of-type(2) {
	text-indent: 1.5em;
}

.p-page-contact__form {
	margin-top: 3.75rem;
}

.p-page-contact__thanks {
	font-size: 1.25rem;
	margin-top: 3.75rem;
}

.p-page-contact__note {
	font-size: 1rem;
	margin-top: 1.25rem;
}

.p-page-contact__home {
	margin-top: 3.75rem;
}

.l-page-player {
	margin-top: 0;
	margin-top: initial;
}

.p-page-player__tab-item {
	font-size: 1.875rem;
	letter-spacing: normal;
	letter-spacing: initial;
	padding-bottom: 1.25rem;
	padding-top: 1.5rem;
}

.p-page-player__content {
	margin-top: 5.5rem;
}

.p-page-player__img {
	aspect-ratio: 1240/600;
}

.p-page-player__title {
	font-size: 5rem;
	margin-top: 2rem;
}

.p-page-player__list {
	gap: 7.5rem 2rem;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 5.75rem;
	padding-left: 0;
	padding-left: initial;
	padding-right: 0;
	padding-right: initial;
}

.p-page-player__tab-down {
	margin-top: 8.75rem;
}

.p-page-privacy__inner.l-inner {
	max-width: 866px;
}

.p-page-privacy__content h2 {
	font-size: 1.25rem;
}

.p-page-privacy__content * + h2 {
	margin-top: 3.75rem;
}

.p-page-privacy__content h3,
.p-page-privacy__content h4,
.p-page-privacy__content h5,
.p-page-privacy__content h6 {
	margin-top: 3.125rem;
}

.p-page-privacy__content h3 {
	font-size: 1.125rem;
}

.p-page-privacy__content h4 {
	font-size: 1rem;
}

.p-page-privacy__content h5 {
	font-size: 0.875rem;
}

.p-page-privacy__content h6 {
	font-size: 0.75rem;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-toolbar .fc-left h2 {
	font-size: 2.5rem;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-toolbar .fc-right .fc-button.fc-prev-button,
.p-page-schedule__calendar .eo-fullcalendar .fc-toolbar .fc-right .fc-button.fc-next-button {
	height: 1.875rem;
	padding-left: 1rem;
	padding-right: 1rem;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-toolbar .fc-right .fc-button.fc-today-button {
	font-size: 0.875rem;
	height: 1.875rem;
	margin-left: 0.75rem;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-day-grid-event {
	padding-bottom: 0.25rem;
	padding-top: 0.25rem;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-day-grid-event .fc-title {
	font-size: 0.875rem;
	padding-left: 0.25rem;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-day-number {
	letter-spacing: -0.05em;
	text-indent: 0.5em;
}

.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-day-number .fc-list-header-left,
.p-page-schedule__calendar .eo-fullcalendar .fc-view-container .fc-view .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-day-number .fc-list-header-right {
	padding-right: 0.5rem;
}

.p-page-staff__list {
	gap: 7.5rem 2rem;
	grid-template-columns: repeat(auto-fill, minmax(17.5rem, 1fr));
}

.p-post {
	padding-top: 7.5rem;
}

.p-post__archive {
	position: absolute;
	right: 1.5rem;
	top: -7.5rem;
	translate: 0 -100%;
}

.p-post__filter-list {
	gap: 2.25rem;
	justify-content: initial;
}

.p-post__filter-item {
	min-width: 8.75rem;
}

.p-post__content {
	margin-top: 0;
	margin-top: initial;
	padding-bottom: 6.25rem;
	padding-left: 6.25rem;
	padding-right: 6.25rem;
	padding-top: 6.25rem;
}

.p-section-about {
	padding-top: 16.25rem;
}

.p-section-about__bg {
	right: 0;
	width: 100%;
}

.p-section-about__heading {
	padding-left: 4.5rem;
}

.p-section-about__lead {
	font-size: 2.5rem;
	line-height: 1.4;
	margin-top: 2.5rem;
}

.p-section-about__sublead {
	font-size: 1rem;
	margin-top: 1.25rem;
	max-width: 28.75rem;
}

.p-section-about__content {
	margin-top: 8.5rem;
}

.p-section-about__list {
	gap: 2rem 2rem;
	grid-template-columns: repeat(4, 1fr);
}

.p-section-instagram__heading {
	gap: 3rem;
	justify-content: start;
}

.p-section-instagram__content {
	margin-top: 1.375rem;
}

.p-section-news__box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 7.25rem;
}

.p-section-news__subbox {
	display: block;
}

.p-section-news__link {
	margin-top: 2.5rem;
}

.p-section-news__content {
	margin-top: 1.5rem;
}

.p-section-partners__content {
	padding-bottom: 5rem;
	padding-top: 5rem;
}

.p-section-partners__list {
	gap: 1.875rem 2rem;
	grid-template-columns: repeat(auto-fit, minmax(11.25rem, 1fr));
}

.p-section-partners__item {
	max-width: none;
	max-width: initial;
	opacity: 0.4;
	transition: opacity 0.3s;
}

.p-section-schedule__bg {
	top: 80%;
	width: 100%;
}

.p-section-schedule__img {
	aspect-ratio: 928/591;
	left: 0;
	margin-bottom: 0;
	margin-bottom: initial;
	margin-left: 0;
	margin-left: initial;
	position: absolute;
	top: 0;
	width: 58%;
}

.p-section-schedule__img img {
	width: 100%;
}

.p-section-schedule__heading {
	margin-left: auto;
	margin-right: 0;
	max-width: 26.5rem;
	padding-top: 4.5rem;
}

.p-section-schedule__lead {
	font-size: 1rem;
	margin-top: 2.5rem;
}

.p-section-schedule__link {
	margin-top: 1.625rem;
}

.p-single__inner.l-inner {
	max-width: 1078px;
}

.p-single__box {
	border-top: 0.3125rem solid #e50012;
	padding-bottom: 9.375rem;
	padding-left: 6.25rem;
	padding-right: 6.25rem;
	padding-top: 6.25rem;
}

.p-single__new {
	font-size: 1rem;
}

.p-single__year {
	font-size: 1rem;
}

.p-single__date {
	font-size: 2.5rem;
	margin-left: 1.25rem;
}

.p-single__term {
	font-size: 0.875rem;
	margin-left: 1.5rem;
	min-width: 6.625rem;
	padding-bottom: 0.25rem;
	padding-top: 0.25rem;
}

.p-single__title {
	font-size: 1.875rem;
	margin-top: 2.5rem;
}

.p-single__content {
	margin-top: 3.75rem;
}

.p-single__pagination {
	gap: 2.5rem;
	margin-top: 5rem;
	padding-left: 2.5rem;
	padding-right: 2.5rem;
}

.p-uniform__tab-item {
	font-size: 1.25rem;
	letter-spacing: normal;
	letter-spacing: initial;
	padding-bottom: 1.75rem;
	padding-top: 1.75rem;
}

.p-uniform__list {
	grid-template-columns: repeat(2, 1fr);
}

.u-pc {
	display: inline;
	display: initial;
}

.u-sp {
	display: none;
}

}

@media screen and (any-hover: hover) and (min-width: 768px) {

.p-section-partners__item:hover {
	opacity: 1;
}

}

@media screen and (min-width: 1024px) {

.p-drawer__inner.l-inner {
	max-width: 1290px;
}

}

@media (min-width: 1240px) {

.p-header__nav {
	display: block;
}

}

@media screen and (min-width: 1440px) {

.p-header__list {
	gap: 2.125rem;
}

.p-header.is-active .p-header__logo a {
	width: 4.5rem;
}

}

@media (min-width: 1600px) {

html {
	font-size: 100%;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}

@keyframes a-card-about {

0% {
	transform: skew(-45deg) rotate(90deg);
}

50% {
	transform: skew(0deg) rotate(0deg) scaleX(0.5);
}

100% {
	transform: skew(0deg) rotate(0deg) scaleX(1) scaleY(0.2);
	width: 100%;
}

}

@keyframes reverse-a-card-about {

0% {
	transform: skew(0deg) rotate(0deg) scaleX(1) scaleY(0.2);
	width: 100%;
}

50% {
	transform: skew(0deg) rotate(0deg) scaleX(0.5);
}

100% {
	transform: skew(-45deg) rotate(90deg);
}

}

@keyframes flowing {

0% {
	transform: translateX(0);
}

100% {
	transform: translateX(-100%);
}

}

@keyframes fuwafuwa {

0% {
	transform: translate(0, 0) rotate(-7deg);
}

50% {
	transform: translate(0, -7px) rotate(0deg);
}

100% {
	transform: translate(0, 0) rotate(7deg);
}

}

@keyframes rinrin {

0% {
	transform: rotate(0deg);
}

50% {
	transform: rotate(0deg);
}

51% {
	transform: rotate(-10deg);
}

52% {
	transform: rotate(0deg);
}

53% {
	transform: rotate(-10deg);
}

54% {
	transform: rotate(0deg);
}

100% {
	transform: rotate(0deg);
}

}

@keyframes glide-into {

0% {
	clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}

50% {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

100% {
	clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
}

}

@keyframes yurayura {

0% {
	transform: translateX(0);
}

50% {
	transform: translateX(-100%);
}

100% {
	transform: translateX(0);
}

}

@keyframes door-open {

40% {
	opacity: 1;
	transform: skew(-45deg);
}

100% {
	opacity: 1;
	opacity: var(--opacity);
	transform: skew(-45deg) translateX(0);
	transform: skew(-45deg) translateX(var(--translate-x));
}

}

@keyframes clip-center {

0% {
	clip-path: polygon(50% 0, 50% 0, 50% 100%, 50% 100%);
	opacity: 0;
}

40% {
	clip-path: polygon(50% 0, 50% 0, 50% 100%, 50% 100%);
	opacity: 0;
}

100% {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	opacity: 1;
}

}


/*# sourceMappingURL=style.css.map */
