@charset "utf-8";
.mainContents{
	width: 100%;
	position: relative;
}
.contSection{
	width: 100%;
	position: relative;
	margin: 0 auto;
}
.contSection___inner{
	position: relative;
	width: 100%;
	padding-top: min(calc(80 / var(--vw-min) * 100vw), 80px);
}
@media screen and (min-width:769px){
	.cont__secTitle{
		width: min(calc(1040 / var(--vw-min) * 100vw), calc(1040px * var(--max-percent)));
		margin-left: auto;
		margin-right: auto;
		transform: translateX(max(calc(-30 / var(--vw-min) * 100vw), -30px));
	}
	.contSection___inner{
		max-width: calc(1200px * var(--max-percent));
		padding-left: min(calc(80 / var(--vw-min) * 100vw), calc(80px * var(--max-percent)));
		padding-right: min(calc(80 / var(--vw-min) * 100vw), calc(80px * var(--max-percent)));
		margin: 0 auto;
	}
}
@media screen and (max-width:768px){
	.contSection{
		max-width: 100%;
	}
	.cont__secTitle{
		margin-left: 0;
	}
	.contSection___inner{
		padding: calc(96 / var(--vw-min) * 100vw) calc(48 / var(--vw-min) * 100vw) 0;
	}
}
.specialCont{
	width: 100%;
}
.head_txtWrap{
	padding: min(calc(64 / var(--vw-min) * 100vw), 64px) 0;
}
.head_txt{
	font-size: min(calc(32 / var(--vw-min) * 100vw), 32px);
	font-weight: 900;
	text-align: center;
	line-height: 1.3;
}
.head_txt._txt1{
	margin-bottom: min(calc(24 / var(--vw-min) * 100vw), 24px);
}
.head_txt._txt2{
	line-height: 1.6;
}
.txt_red{
	font-size: min(calc(42 / var(--vw-min) * 100vw), 42px);
	color:var(--color-main-red);
}
@media screen and (max-width: 768px) {
	.head_txtWrap{
		padding:  var(--sp-size-64) 0;
	}
	.head_txt{
		font-size: var(--sp-size-32);
	}
	.head_txt._txt1{
		font-size:var(--sp-size-48);
		margin-bottom: var(--sp-size-48);
	}
	.txt_red{
		font-size:var(--sp-size-48);
	}
}
.marker-wh {
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 49%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1) 95%, rgba(255, 255, 255, 0) 96%, rgba(255, 255, 255, 0) 100%);
}
.itemBoxList{
	display: flex;
	flex-wrap: wrap;
	gap: min(calc(40 / var(--vw-min) * 100vw), 40px);
}
.itemBoxList_thCol{
	display: flex;
	flex-wrap: wrap;
	gap: min(calc(40 / var(--vw-min) * 100vw), 40px);
}
.itemBox{
	width: calc((100% - min(calc(40 / var(--vw-min) * 100vw), 40px)) / 2);
}
.itemBoxList_thCol li.itemBox{
	width: calc((100% - min(calc(80 / var(--vw-min) * 100vw), 80px)) / 3);
}
@media screen and (max-width: 768px) {
	.itemBoxList,
	.itemBoxList_thCol{
		gap: var(--sp-size-24);
	}
	.itemBox,
	.itemBoxList_thCol li.itemBox{
		width: calc((100% - var(--sp-size-24)) / 2);
	}
}
.itemBox__link{
	text-decoration: none;
}
.item_img{
	overflow: hidden;
	margin-bottom: min(calc(15 / var(--vw-min) * 100vw), 15px);
	position: relative;
}
.item_img img{
	transition: transform .3s ease;
	width: 100%;
	height: auto;
}
.item_img:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, 40%);
	opacity: 0;
	transition: opacity .3s ease;
}
.item_txt{
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	font-weight: 700;
	transition: color .4s ease;
	position: relative;
}
.item_txt span {
	background: linear-gradient(#000, #000) right bottom / 0 100% no-repeat;
	transition: background-size 0.4s ease;
}
@media screen and (max-width: 768px) {
	.item_txt {
		margin-top: var(--sp-size-12);
		font-size: var(--sp-size-24);
	}
}
@media (hover: hover) and (pointer: fine){
	.itemBox__link:hover .item_img:after {
		opacity: 1;
	}
	.itemBox__link:hover .item_img img {
		transform: scale(1.025);
	}
	.itemBox__link:hover .item_txt {
		color: var(--color-main-yellow);
	}
	.itemBox__link:hover .item_txt span {
		background-size: 100% 100%;
		background-position: left bottom;
	}
}
.special__indexLists{
	width: 100%;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: min(3.3334vw, calc(40px * 1.6));
}
.special__indexList--link{
	display: block;
	text-decoration: none;
}
.special__indexList--img{
	width: 100%;
	position: relative;
	border: 1px solid #000
}
.special__indexList--img img{
	width: 100%;
}
.special__indexList--title{
	margin-top: 16px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	pointer-events: auto;
}
@media (hover: hover) and (pointer: fine){
	.special__indexList--img{
		transition: transform .3s ease;
	}
	.special__indexList--link:hover .special__indexList--img{
		transform: scale(1.05);
	}
	.special__indexList--title{
		transition: color .4s ease;
	}
	.special__indexList--title span{
		background: linear-gradient(#000, #000) right bottom / 0 100% no-repeat;
		transition: background-size 0.4s ease;
	}
	.special__indexList--link:hover .special__indexList--title{
		color: var(--color-main-yellow);
	}
	.special__indexList--link:hover .special__indexList--title span{
		background-size: 100% 100%;
		background-position: left bottom;
	}
}
@media screen and (max-width: 767px){
	.special__indexLists{
		max-width: 640px;
		grid-template-columns: repeat(1, 1fr);
		gap: var(--sp-size-48);
	}
	.special__indexList--title{
		margin-top: var(--sp-size-12);
		font-size: var(--sp-size-24);
	}
}
.modalBox_item{
	-webkit-overflow-scrolling: touch;
	background: url(../img/common/bg/bg_texture-yellow.jpg) no-repeat top center / cover;
	display: none;
	width: 100%;
	height: 100%;
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9998;
}
@supports (background-image: url(../img/common/bg/bg_texture-yellow.webp)){
	.modalBox_item{
		background-image: url(../img/common/bg/bg_texture-yellow.webp);
	}
}
.oneModal_item{
	display: none;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}
.item__detailCont{
	width: min(calc(880 / var(--vw-min) * 100vw), calc(880px * var(--max-percent)));
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.item__detailCont{
		width: 100%;
		padding: 0 3.5715%;
	}
}
.detail_ttl{
	font-size: min(calc(20 / var(--vw-min) * 100vw), 20px);
	font-weight: 700;
	padding-bottom: min(calc(30 / var(--vw-min) * 100vw), 30px);
	border-bottom: 1px solid #000;
	margin-bottom: min(calc(40 / var(--vw-min) * 100vw), 40px);
}
@media screen and (max-width: 768px) {
	.detail_ttl{
		font-size: calc(36 / var(--vw-min) * 100vw);
		padding-bottom: calc(14 / var(--vw-min) * 100vw);
		margin-bottom: calc(24 / var(--vw-min) * 100vw);
	}
}
.detail_img{
	margin-bottom: min(calc(40 / var(--vw-min) * 100vw), 40px);
}	
.detail_img img{
	width: 100%;
	height: auto;
}
@media screen and (max-width: 768px) {
	.detail_img{
		margin-bottom: calc(24 / var(--vw-min) * 100vw);
	}
}
.detail_infoWrap{
	display: flex;
	flex-wrap: wrap;
	gap: min(calc(100 / var(--vw-min) * 100vw), 100px);
}
@media screen and (max-width: 768px) {
	.detail_infoWrap{
		flex-direction: column;
	}
}
.leftBlock{
	width: min(calc(280 / var(--vw-min) * 100vw), calc(280px * var(--max-percent)));
}
.info_ttl{
	font-size: min(calc(22 / var(--vw-min) * 100vw), 22px);
	color: #FFF;
	font-family: var(--font-en);
	font-weight: 900;
	letter-spacing: 0;
}
.info_ttl span{
	background-color: #000;
	line-height: 0.8;
	font-weight: 900;
	display: inline-block;
}
@media screen and (max-width: 768px) {
	.leftBlock{
		width: 100%;
	}
	.info_ttl{
		font-size: calc(28 / var(--vw-min) * 100vw);
	}
}
.staffList{
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	display: flex;
	margin-bottom: min(calc(14 / var(--vw-min) * 100vw), 14px);
}
.staffList_ttl{
	color: #c30a14;
	margin-right: min(calc(14 / var(--vw-min) * 100vw), 14px);
}
.staffListWrap__innerBox{
	margin-bottom: min(calc(24 / var(--vw-min) * 100vw), 24px);
}
.staffListWrap__innerBox:last-child{
	margin-bottom: 0;
}
.staffListWrap{
	margin-bottom: min(calc(48 / var(--vw-min) * 100vw), 48px);
}
@media screen and (max-width: 768px) {
	.staffListWrap__innerBox{
		margin-bottom: calc(48 / var(--vw-min) * 100vw);
	}
	.staffListWrap__innerBox:last-child{
		margin-bottom: 0;
	}
	.staffListWrap{
		margin-bottom: calc(48 / var(--vw-min) * 100vw);
	}
	.staffList{
		font-size: calc(21 / var(--vw-min) * 100vw);
		margin-bottom: calc(14 / var(--vw-min) * 100vw);
	}
	.staffList_ttl{
		margin-right: calc(14 / var(--vw-min) * 100vw);
	}
}
.rightBlock{
	width: min(calc(500 / var(--vw-min) * 100vw), calc(500px * var(--max-percent)));
}
@media screen and (max-width: 768px) {
	.rightBlock{
		width: 100%;
	}
}
.linkBtn{
	margin-bottom: min(calc(14 / var(--vw-min) * 100vw), 14px);
}
.linkBtn__link{
	text-align: center;
	display: block;
	background-color: #000;
	height: min(calc(40 / var(--vw-min) * 100vw), 40px);
	display: flex;
	justify-content: center;
	align-items: center;
	transition: .3s ease;
	text-decoration: none;
}
.linkBtn__link:hover{
	background-color: var(--color-main-red);
}
.linkBtn__txt{
	display: inline-block;
	color: #FFF;
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	padding-right: min(calc(20 / var(--vw-min) * 100vw), 20px);
	position: relative;
}
.ic_blank::after{
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	width: min(calc(8 / var(--vw-min) * 100vw), 8px);
	height: min(calc(8 / var(--vw-min) * 100vw), 8px);
	background-color: #FFF;
	mask: url(../img/common/icon/icon_blank.svg) no-repeat center center / contain;
	opacity: .3;
}
@media screen and (max-width: 768px) {
	.linkBtn{
		margin-bottom: calc(24 / var(--vw-min) * 100vw);
	}
	.linkBtn__link{
		height: calc(80 / var(--vw-min) * 100vw);
	}
	.linkBtn__txt{
		font-size: calc(24 / var(--vw-min) * 100vw);
		padding-right: calc(24 / var(--vw-min) * 100vw);
	}
	.ic_blank::after{
		width: calc(14 / var(--vw-min) * 100vw);
		height: calc(12 / var(--vw-min) * 100vw);
	}
}
.movieList{
	width: 100%;
	margin-bottom: min(calc(30 / var(--vw-min) * 100vw), 30px);
}
.movieList__link{
	display: block;
	width: 100%;
	text-decoration: none;
	pointer-events: none;
}
.movieList__image{
	width: 100%;
	padding-top: 56.25%;
	position: relative;
	pointer-events: auto;
}
.movieList__image img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.movieList__title{
	margin-top: min(calc(24 / var(--vw-min) * 100vw), 24px);
	font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
	font-weight: 700;
	line-height: 1.5;
	pointer-events: auto;
}
#order .cont_subTitle--en > span{
	background: linear-gradient(180deg, transparent 0%, transparent 25%, #000 25%, #000 80%, transparent 80%, transparent 100%);;
	color: var(--color-main-red);
}
#sakamotostore .cont_subTitle--en > span{
	background: linear-gradient(180deg, transparent 0%, transparent 25%, #000 25%, #000 80%, transparent 80%, transparent 100%);;
	color: var(--color-main-yellow);
}
@media (hover: hover) and (pointer: fine){
	.movieList__image{
		overflow: hidden;
	}
	.movieList__image img{
		transition: transform .3s ease;
	}
	.movieList__image:after{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background-color: rgba(0,0,0,40%);
		opacity: 0;
		transition: opacity .3s ease;
	}
	.movieList__title{
		transition: color .4s ease;
	}
	.movieList__title span{
		background: linear-gradient(#000, #000) right bottom / 0 100% no-repeat;
		transition: background-size 0.4s ease;
	}
	.movieList__link:hover .movieList__image img{
		transform: scale(105%);
	}
	.movieList__link:hover .movieList__image:after{
		opacity: 1;
	}
	.movieList__link:hover .movieList__title{
		color: var(--color-main-yellow);
	}
	.movieList__link:hover .movieList__title span{
		background-size: 100% 100%;
		background-position: left bottom;
	}
}
@media screen and (max-width: 767px){
	#movie .contentIn{
		padding: var(--sp-size-96) var(--sp-size-48) 0;
		flex-direction: column;
	}
	.movieSeciton:not(:first-child){
		padding-top: var(--sp-size-80);
	}
	.movieSeciton .cont_subTitle{
		margin-bottom: var(--sp-size-48);
	}
	.movieLists{
		margin-bottom: var(--sp-size-48)
	}
	.movieList__image:after{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background-color: rgba(0,0,0,20%);
	}
	.s-icon_play{
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		width: calc(120 / var(--vw-min) * 100vw);
		height: calc(120 / var(--vw-min) * 100vw);
		margin: auto;
		z-index: 2;
	}
	.s-icon_play:before,
	.s-icon_play:after{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	}
	.s-icon_play:before{
		width: 100%;
		height: 100%;
		background: url(../img/common/txt_playmovie.svg) no-repeat center / contain;
		animation: ani_rotate360 16s linear infinite;
	}
	.s-icon_play:after{
		width: 64%;
		height: 64%;
		-webkit-mask: url(../img/common/icon_sakamoto.svg) no-repeat center / contain;
		mask: url(../img/common/icon_sakamoto.svg) no-repeat center / contain;
		background-color: #fff;
		margin: auto;
	}
	.movieList__title{
		margin-top: var(--sp-size-12);
		font-size: var(--sp-size-24);
	}
}
#special .contSectionIn {
    width: 100%;
    max-width: 100%;
}
.mt64{
	margin-top: min(calc(64 / var(--vw-min) * 100vw), 64px);
}
.special__backLink{
	margin-top: min(calc(80 / var(--vw-min) * 100vw), 80px);
}
@media screen and (max-width: 767px){
	.specialNav{
		padding-top: var(--sp-size-96);
	}
	.specialNavList a{
		font-size: var(--sp-size-44);
		padding: var(--sp-size-32) var(--sp-size-48);
	}
	.mt64{
		margin-top: var(--sp-size-64);
	}
	.special__backLink{
		margin-top: var(--sp-size-80);
	}
}
.-center {
    text-align: center;
}
.wi100{
	width: 100%;
}