@charset "UTF-8";

.only_sp-1 { display: block; }
.only_pc-1 { display: none; }
@media screen and (min-width: 768px) {
	.only_sp-1 { display: none; }
	.only_pc-1 { display: block; }
}
.only_sp-2 { display: block; }
.only_pc-2 { display: none; }
@media screen and (min-width: 960px) {
	.only_sp-2 { display: none; }
	.only_pc-2 { display: block; }
}
.only_sp-3 { display: block; }
.only_pc-3 { display: none; }
@media screen and (min-width: 1200px) {
	.only_sp-3 { display: none; }
	.only_pc-3 { display: block; }
}

/* link */
.linkblue a { color: #0757D8; text-decoration: none;}
.linkblue a:link    { color: #0757D8; }
.linkblue a:visited { color: #0757D8; }
.linkblue a:hover   { color: #0757D8; text-decoration: underline;}
.linkblue a:active  { color: #0757D8; }
.linkblue a.disabled {
	pointer-events: none;
}

/* --from here-- */
.align_center {
	text-align: center;
}
.align_right {
	text-align: right;
}
.align_left {
	text-align: left;
}
.float-right {
	float: right;
}

/* space */
.mgt20 {
	margin-top: 20px;
}
.mgt40 {
	margin-top: 40px;
}
.mgt60 {
	margin-top: 60px;
}
.mgt80 {
	margin-top: 80px;
}
.mgb20 {
	margin-bottom: 20px;
}
.mgb30 {
	margin-bottom: 30px;
}
.mgb40 {
	margin-bottom: 40px;
}
.mgb50 {
	margin-bottom: 50px;
}
.mgb60 {
	margin-bottom: 60px;
}
.mgb80 {
	margin-bottom: 80px;
}
.mgb100 {
	margin-bottom: 100px;
}
.pdt20 {
	padding-top: 20px;
}
.pdt40 {
	padding-top: 40px;
}
.pdt60 {
	padding-top: 60px;
}
.pdt80 {
	padding-top: 80px;
}
.pdb20 {
	padding-bottom: 20px;
}
.pdb40 {
	padding-bottom: 40px;
}
.pdb60 {
	padding-bottom: 60px;
}
.pdb80 {
	padding-bottom: 80px;
}

/* txt */
#costume p {
	font-size: 16rem;
	line-height: 1.8;
	margin-bottom: 1.2em;
}
.txt_subtitle-1 {
	font-size: 18rem;
	font-weight: bold;
	margin: 12rem 0 4rem;
}
.txt_subtitle-2 {
	font-size: 16rem;
	font-weight: bold;
	margin: 0.5em 0 1.4em;
	line-height: 1.6;
}
.movie_description-1 {
	font-size: 13rem;
	line-height: 1.6;

}


/* movie */
.movie-wrap {
	position: relative;
	padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
	height: 0;
	overflow: hidden;
}
.movie-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* width */
.width100p {
	width: 100%;
}
.width300 {
	margin: 0 auto;
	width: 300px;
}
.width780r {
	margin: 0 auto;
	width: 780px;
}
.width880 {
	width: 880px;
}
.width1240 {
	margin: 0 auto;
	width: 1240px;
}
.sp_space {
	margin: 0 auto;
	width: 100%;
}

/* column */
.column_container {
	display: flex;
}
.column_container-2 {
	display: flex;
}
.column-2-a {
	flex: 1;
	padding-right: 30rem;
}
.column-2-b {
	flex: 1;
	padding-left: 30rem;
}
.column-2-c {
	flex: 1;
}
.column-2-d {
	flex: 2;
	padding-left: 20rem;
}
.column-2-e {
	flex: 1;
	padding-right: 20rem;
}
.column-2-f {
	flex: 1;
}
.main_column {
	flex: 940px;
}
.side_column {
	flex: 360px;
}

/* swiper */
/* .swiper-slide {
	height: 100vh;
} */
.swiper-slide > img {
	object-fit: cover; /* IE: not support */
	width: 100%;
	height: 100%;
}

.swiper-wrapper img {
	width :100%;
}
.swiper-button-next, .swiper-button-prev {
	width: 50rem !important;
	height: 50rem !important;
	border: 1px solid #000;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.8);
	position: relative;
	/* text-indent: 100%; */
	white-space: nowrap;
	overflow: hidden;
	transition: 0.3s;
	font-weight: 800;
}
.swiper-button-next:after {
	border-width: 0 0 2px 2px;
	right: 20rem;
}
.swiper-button-prev:after {
	border-width: 0 0 2px 2px;
	right: 20rem;
}
.swiper-button-next:after, .swiper-button-prev:after {
	font-family: swiper-icons;
	font-size: 12px !important;
	text-transform: none!important;
	letter-spacing: 0;
	font-variant: initial;
	line-height: 1;
	color: #000;
}
.article-wysiwyg a:not([class]) {
    color: #343434;
}


@media screen and (max-width: 1240px) {
	.firstvisual_img-pc {
		position: relative;
		width: 100%;
		margin: 0 auto;
	}
	.firstvisual_img-pc img{
		width: 100%;
	}
	.column_container-2 {
		display: block;
	}
}
@media screen and (max-width: 960px) {
	#costume p {
		line-height: 1.6;
	}
	.txt_credit {
		font-size: 12rem;
		margin: 10px 0;
	}
	.txt_lead {
		font-weight: normal;
	}
	.width800 {
		width: 100%;
	}

}
@media screen and (max-width: 768px) {
	.column_container{
		display: block;
	}
	.width780r {
		width: 100%;
	}
	.width880 {
		width: 100%;
	}
	.width1240 {
		width: 100%;
	}
	.sp_space {
		width: calc(100% - 15rem * 2);
		margin: 0 auto;
	}
	.separate-heading {
		border-width: 3rem 0 1rem 0;
		font-size: 22rem;
		padding: 7rem 0;
		display: flex;
		align-items: center;
		min-height: 70rem;
	}
	/* .column_container {
		display: nomal;
	} */
	.column-2-a {
		padding-right: 0;
	}
	.column-2-b {
		padding-left: 0;
	}
	.column-2-d {
		padding-left: 0;
	}
}