body.noScroll {
	position: fixed;
	overflow-y: scroll;
}

._show_sp-inline {
	display: none;
}

._show_sp-block {
	display: none;
}

._show_pc-inline {
	display: inline;
}

._show_pc-block {
	display: block;
}

@media (max-width: 768px) {
	._show_sp-inline {
		display: inline;
	}

	._show_sp-block {
		display: block;
	}

	._show_pc-inline {
		display: none;
	}

	._show_pc-block {
		display: none;
	}
}

.sideBanner {
	position: absolute;
	right: 30px;
	top: 140px;
	z-index: 100;
	transition: all 0.5s ease-in-out;
	/*transform: translate3d(0, 0, 0);*/
}

.sideBanner img {
	vertical-align: top;
}

.sideBanner._is_hide {
	right: -336px;
}

.sideBanner__overlay {
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.3);
	z-index: 5;
	position: absolute;
}

.sideBanner__label {
	position: absolute;
	left: 50%;
	top: 35%;
	width: 100%;
	text-align: center;
	color: #fff;
	transform: translateX(-50%) translateY(-50%);
	font-size: 30px;
	letter-spacing: 0.1em;
	z-index: 10;
	font-family: "BaskervilleSerial", serif;
}

.sideBanner__icon {
	position: absolute;
	left: 50%;
	top: 60%;
	transform: translateX(-50%) translateY(-50%);
	z-index: 10;
	width: 47px;
	height: auto;
}

@media (max-width: 768px) {
	.sideBanner {
		position: fixed;
		width: 100%;
		opacity: 1;
		right: auto;
		left: 0;
		top: 215px;
		bottom: 0;
		/*margin-bottom: 245px;*/
		/*margin-bottom: 35%;を上記に変更中*/
		/*padding-bottom: 35%;*/
		transition: opacity 0.5s ease-in-out;
		transform: translate3d(0, 0, 0);
	}
	.sideBanner.lower {
		margin-bottom: 35%;
	}

	.sideBanner a {
		width: 153px;
		margin: 0 auto;
		text-align: center;
		display: block;
		position: relative;
		/*box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.75);*/
	}

	.sideBanner._is_hide {
		transform: translate3d(0, 0, 0);
		opacity: 0;
	}

	.sideBanner_img {
		width: 100%;
		vertical-align: top;
		height: auto;
	}

	.sideBanner__label {
		font-size: 13px;
	}

	.sideBanner__icon {
		position: absolute;
		left: 50%;
		top: 65%;
		transform: translateX(-50%) translateY(-50%);
		z-index: 10;
		width: 30px;
		height: auto;
	}
}

.modalWindow {
	/*-webkit-overflow-scrolling: touch;*/
	overflow-x: hidden;
}

.modalWindow::-webkit-scrollbar {
	display: none;
}

.modalWindow .modal-content {
	width: 100%;
	height: 100%;
	min-height: 100%;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", Yu Mincho TT R1215165, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.closeBtn {
	display: block;
	position: fixed;
	right: 0;
	top: 0;
	width: 70px;
	height: 70px;
	z-index: -9999;
	cursor: pointer;
	background: #000;
	transition: all 0.2s ease-in-out;
	transform: translate3d(0, 0, 0);
}

.closeBtn._color_trans {
	background: transparent;
}

.modalTvcm-on .closeBtn,
.modalMovie-1-on .closeBtn,
.modalMovie-2-on .closeBtn,
.modalMovie-3-on .closeBtn,
.modalMovie-4-on .closeBtn {
	z-index: 9999;
}

.closeBtn._is_hide {
	transform: translate3d(70px, 0, 0);
}

.closeBtn__wrap {
	position: absolute;
	left: 27%;
	top: 27%;
	width: 46%;
	height: 46%;
}

.closeBtn__borderLt,
.closeBtn__borderLb,
.closeBtn__borderRt,
.closeBtn__borderRb {
	display: block;
	position: absolute;
	z-index: 1;
	box-sizing: border-box;
	border-width: 1px;
	border-color: #fff;
	border-top-style: solid;
	width: 65%;
	height: 1px;
}

.closeBtn__borderLt {
	transform-origin: left center;
	transform: rotate(45deg);
	left: 0;
	top: 0;
}

.closeBtn__borderRt {
	transform-origin: left center;
	transform: rotate(135deg);
	left: 100%;
	top: 0;
}

.closeBtn__borderLb {
	transform-origin: left center;
	transform: rotate(315deg);
	left: 0;
	top: 100%;
}

.closeBtn__borderRb {
	transform-origin: left center;
	transform: rotate(225deg);
	left: 100%;
	top: 100%;
}

@media (max-width: 768px) {
	.closeBtn {
		width: 45px;
		height: 45px;
	}
}

.modalTvcm__mainImage {
	position: relative;
	z-index: -15;
	margin-bottom: 75px;
}

.modalTvcm__mainImage img {
	width: 100%;
	height: auto;
}

.modalTvcm__container {
	width: 1000px;
	margin: 0 auto;
	padding-bottom: 60px;
}

.modalTvcm__catchCopy {
	margin-bottom: 40px;
}

.modalTvcm__body {
	float: left;
	width: 640px;
	text-align: left;
}

.modalTvcm__movie {
	float: right;
	width: 340px;
}

.modalTvcm__movieList__item {
	margin-bottom: 20px;
}

.modalTvcm__movieList__item a {
	text-decoration: none;
	color: #333;
}

.modalTvcm__movie__poster {
	overflow: hidden;
	position: relative;
	margin-bottom: 5px;
}

.modalTvcm__movie__poster img {
	vertical-align: top;
}

.modalTvcm__movie__poster > img {
	width: 100%;
	height: auto;
	transition: all 0.4s ease;
	transform: scale(1.0);
}

.modalTvcm__movie__poster:hover > img {
	transform: scale(1.1);
}

.modalTvcm__movie__title {
	font-size: 12px;
	text-align: center;
	letter-spacing: 0.2em;
}

.modalTvcm__movie__play {
	position: absolute;
	right: 15px;
	bottom: 15px;
}

.modalTvcm__text {
	font-size: 12px;
	letter-spacing: 0.15em;
	padding-left: 20px;
	line-height: 2.75;
}

.modalTvcm__text._type_1 {
	margin-bottom: 40px;
}

.modalTvcm__text._type_2 {
	font-size: 18px;
	line-height: 1.4;
	margin-bottom: 10px;
}

.modalTvcm__logo {
	padding-left: 23px;
}

.modalMovie__player {
	width: 100%;
	height: 100%;
	background: #000;
	position: relative;
	z-index: 1;
	opacity: 0;
}

@media (max-width: 768px) {
	.modalTvcm__mainImage {
		margin-bottom: 40px;
	}

	.modalTvcm__container {
		width: auto;
		padding-bottom: 30px;
	}

	.modalTvcm__catchCopy {
		margin-bottom: 30px;
	}

	.modalTvcm__catchCopy img {
		width: 238px;
		height: auto;
	}

	.modalTvcm__body {
		float: none;
		width: auto;
		padding: 0 25px;
		margin-bottom: 30px;
	}

	.modalTvcm__movie {
		float: none;
		width: auto;
		padding: 0 30px;
	}

	.modalTvcm__text {
		font-size: 10px;
		letter-spacing: 0.05em;
		padding-left: 5px;
	}

	.modalTvcm__text._type_1 {
		margin-bottom: 20px;
	}

	.modalTvcm__text._type_2 {
		font-size: 14px;
	}

	.modalTvcm__logo {
		padding-left: 7px;
	}

	.modalTvcm__logo img {
		width: 112px
	}

	.modalTvcm__movieList__item {
		margin-bottom: 15px;
	}

	.modalTvcm__movie__poster {
		margin-bottom: 5px;
	}

	.modalTvcm__movie__poster > img {
		transform: scale(1.0);
	}

	.modalTvcm__movie__poster:hover > img {
		transform: scale(1.0);
	}

	.modalTvcm__movie__title {
		font-size: 10px;
	}

	.modalTvcm__movie__play {
		position: absolute;
		right: 15px;
		bottom: 15px;
	}
}