html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	border: 0;
	outline: 0;
}

body {
	line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

a {
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	background: transparent;
}

table {
	border-spacing: 0;
	border-collapse: collapse;
}

hr {
	display: block;
	height: 1px;
	margin: 1em 0;
	padding: 0;
	border: 0;
	border-top: 1px solid #ccc;
}

input, select {
	vertical-align: middle;
}

ol, ul, li {
	list-style: none;
}

img {
	font-size: 0;
	line-height: 0;
	vertical-align: top;
}

/*
SCSS variables are information about icon's compiled state, stored under its original file name

.icon-home {
  width: $icon-home-width;
}

The large array-like variables contain all information about a single icon
$icon-home: x y offset_x offset_y width height total_width total_height image_path;

At the bottom of this section, we provide information about the spritesheet itself
$spritesheet: width height image $spritesheet-sprites;
*/

/*
The provided mixins are intended to be used with the array-like variables

.icon-home {
  @include sprite-width($icon-home);
}

.icon-email {
  @include sprite($icon-email);
}

Example usage in HTML:

`display: block` sprite:
<div class="icon-home"></div>

To change `display` (e.g. `display: inline-block;`), we suggest using a common CSS class:

// CSS
.icon {
  display: inline-block;
}

// HTML
<i class="icon icon-home"></i>
*/

/*
The `sprites` mixin generates identical output to the CSS template
  but can be overridden inside of SCSS

@include sprites($spritesheet-sprites);
*/

/*
SCSS variables are information about icon's compiled state, stored under its original file name

.icon-home {
  width: $icon-home-width;
}

The large array-like variables contain all information about a single icon
$icon-home: x y offset_x offset_y width height total_width total_height image_path;

At the bottom of this section, we provide information about the spritesheet itself
$spritesheet: width height image $spritesheet-sprites;
*/

/*
The provided mixins are intended to be used with the array-like variables

.icon-home {
  @include sprite-width($icon-home);
}

.icon-email {
  @include sprite($icon-email);
}

Example usage in HTML:

`display: block` sprite:
<div class="icon-home"></div>

To change `display` (e.g. `display: inline-block;`), we suggest using a common CSS class:

// CSS
.icon {
  display: inline-block;
}

// HTML
<i class="icon icon-home"></i>
*/

/*
The `sprites` mixin generates identical output to the CSS template
  but can be overridden inside of SCSS

@include sprites($spritesheet-sprites);
*/

.clearfix:before, .clearfix:after {
	display: table;
	content: ' ';
}

.clearfix:after {
	clear: both;
}

body {
	/* font-family: 'Lucida Grande', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, Helvetica, Arial, sans-serif; */
	font-size: 14px;
	position: relative;
	width: 100%;
	color: #333;
	-webkit-text-size-adjust: 100%;
}

select::-ms-expand {
	display: none;
}

select {
	line-height: 28px;
	width: 100%;
	height: 28px;
	padding: 0 30px 0 10px;
	border: 1px solid #b5b5b6;
	background-color: #fff;
	background-image: url(/img/pc/common/select.png);
	background-repeat: no-repeat;
	background-position: 100% 0;
	background-size: 30px 28px;
}

p {
	line-height: 1.5;
}

a {
	color: #1878d9;
}

a:hover {
	opacity: .75;
}

img {
	margin: 0 auto;
	text-align: center;
	vertical-align: bottom;
	border: none;
}

.purchasenote-text {
	color: #FF0000;
}

.red-text {
	color: #c30d23;
}

.yellow-text {
	color: #fc0;
}

.light-gray-text {
	color: #999;
}

.text-center {
	text-align: center;
}

.text-right {
	text-align: right;
}

.d-table {
	display: table;
	width: 100%;
}

.d-tr {
	display: table-row-group;
}

.d-td {
	display: table-cell;
	vertical-align: middle;
}

.d-th {
	display: table-cell;
	vertical-align: middle;
}

.d-ib {
	display: inline-block;
	vertical-align: middle;
}

.wrapper {
	position: relative;
	width: 100%;
	margin: 0 auto;
	background-color: #f7f8f8;
}

.contents {
	margin: 0 auto;
}

.inner {
	box-sizing: border-box;
	max-width: 1440px;
	margin: 0 auto;
}

.btn a, .btn button {
	position: relative;
	display: block;
	box-sizing: border-box;
	padding: 15px 5px;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	border-radius: 3px;
}

.btn a:hover, .btn button:hover {
	opacity: .75;
}

.btn .not-link {
	line-height: 1;
	display: block;
	box-sizing: border-box;
	padding: 15px 5px;
	text-align: center;
	text-decoration: none;
	border-radius: 3px;
}

.red-btn a, .red-btn button, .red-btn .not-link {
	color: #fff;
	background-color: #bc1f18;
}

.bul-btn a, .bul-btn button, .bul-btn .not-link {
	color: #fff;
	background-color: #5ba9d1;
}

.light-gray-btn a, .light-gray-btn button, .light-gray-btn .not-link {
	border: 1px solid #ccc;
	background-color: #eeecec;
}

.gray-btn a, .gray-btn button, .gray-btn .not-link {
	color: #fff;
	background-color: #333;
}

.white-btn button {
    display: block;
    border: #131313 1px solid;
    border-radius: 5px;
    margin: 5px auto;
    width: 280px;
}

.white-btn button {
    color: #131313;
}

.orange-btn a, .orange-btn button, .orange-btn .not-link {
	color: #fff;
	background-color: #e65514;
}

.green-btn a, .green-btn button, .green-btn .not-link {
	color: #fff;
	background-color: #00954f;
}

.pc-not-view {
	display: none;
}

section .inner {
	padding: 40px 50px 0;
}

.triangle-bottom-icon {
	padding-left: 15px;
}

.triangle-bottom-icon::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 0;
	height: 0;
	margin-top: -5px;
	content: '';
	border-width: 10px 5px 0 5px;
	border-style: solid;
	border-color: #1878d9 transparent transparent transparent;
}

.rating-icon {
	line-height: 24px;
	position: absolute;
	top: 50%;
	left: 0;
	width: 44px;
	height: 24px;
	margin-top: -12px;
	text-align: center;
	color: #fff;
	border-radius: 3px;
}

.rating-icon-g {
	background-color: #007d41;
}

.rating-icon-pg12 {
	background-color: #00a8e8;
}

.rating-icon-r15 {
	background-color: #e7428f;
}

.rating-icon-r18 {
	background-color: #de0716;
}

.modal {
	position: absolute;
	z-index: 10;
	top: 0;
	left: 0;
	display: none;
	border-radius: 3px;
	background-color: #fff;
	box-shadow: 0 0 5px #000;
}

.modal .modal-inner {
	padding: 30px;
}

.modal .modal-inner .modal-close {
	position: absolute;
	z-index: 1;
	top: 20px;
	right: 20px;
}

.modal .modal-inner .modal-close a {
	position: relative;
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 3px;
	background-color: #4c4c4c;
}

.modal .modal-inner .modal-close a:before {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 30px;
	width: 15px;
	height: 30px;
	height: 15px;
	margin-top: -7.5px;
	margin-left: -7.5px;
	content: '';
	background-image: url(/img/pc/common/sprite.png);
	background-position: -408px -60px;
	background-position: -204px -30px;
	background-size: 236px 207px;
}

.modal .modal-inner .modal-title {
	font-size: 18px;
	font-weight: bold;
	position: relative;
	margin-bottom: 20px;
	padding-left: 20px;
}

.modal .modal-inner .modal-title:before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 6px;
	height: 6px;
	margin-top: -8px;
	content: '';
	border: 4px solid #333;
	border-radius: 8px;
}

.modal.active {
	display: block;
}

/* PCヘッダここから（作品詳細/film以外のヘッダはstyle.cssを参照しているのでそちらも要修正。こっちは/film用のテキスト設定を継承してしまっている部分があるので戻す） */
/* header .inner {
	max-width: 1030px;
}

header .red-area {
	background-color: white;
	height: 55px;
}

header .red-area .inner {
	position: relative;
	padding: 14px 0;
	margin: auto;
	width: 1000px;
}

header .red-area .logo {
	font-size: 12px;
	float: left;
	color: black;
}

header .red-area .logo a {
	text-decoration: none;
}

header .red-area .logo img {
	width: 150px;
	height: 35px;
}

header .red-area .logo .logo-text-01 {
	line-height: 5px;
	margin-right: 40px;
	vertical-align: text-bottom;
}

header .red-area .logo .logo-text-02 {
	font-feature-settings: normal;
	font-family: 'Lucida Grande', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, Helvetica, Arial, sans-serif;
}

header .red-area .search-box {
	text-align: right;
	float: right;
	width: 45%;
	margin-right: 30px;
}

header .red-area .search-box input {
	width: 71%;
	display: inline-block;
	height: 35px;
	margin-top: -5px;
}

header .red-area .search-box button {
	width: 85px;
	height: 35px;
	display: inline-block;
	background-color: #fed22f;
	border-radius: 5px;
	cursor: pointer;
	margin-left: 6px;
}

header .red-area .search-box button img {
	width: 21px;
	height: 21px;
	display: inline-block;
}

header .red-area .sns {
	float: right;
	padding-right: 5px;
}

header .red-area .sns ul {
	margin: 0 -10px;
}

header .red-area .sns ul li {
	float: left;
	margin-right: 15px;
	margin-top: 3px;
	width: 30px;
	height: 30px;
}

header .red-area .sns ul li a {
	position: relative;
	display: block;
	margin: 0 10px;
}

header .red-area .sns ul .line a:before {
	display: block;
}

header .red-area .sns ul .facebook a img, header .red-area .sns ul .twitter a img, header .red-area .sns ul .line a img {
	width: 30px;
	height: 30px;
}

header .black-area {
	font-feature-settings: normal;
	font-family: 'Lucida Grande', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, Helvetica, Arial, sans-serif;
	font-size: 12px;
	background-color: #000;
}

header .black-area.login {
	height: 64px;
	background: linear-gradient(0deg, #474747 0%, #474747 50%, #000 50%, #000 100%);
}

header .black-area .inner {
	padding: 5px 18px;
}

header .black-area .global-menu, 
header .black-area .member-menu {
	padding-top: 5px;
	padding-bottom: 5px;
}

header .black-area .global-menu {
	float: left;
}

header .black-area .global-menu ul {
	margin: 0 -10px;
}

header .black-area .global-menu ul li {
	float: left;
	border-right: 1px solid #fff;
}

header .black-area .global-menu ul li:last-child {
	border: none;
}

header .black-area .global-menu ul li a {
	position: relative;
	margin: 0 5px;
	padding-left: 21px;
	text-decoration: none;
	color: #fc0;
}

header .black-area .global-menu ul li a:before {
	left: 0;
}

header .black-area .member-menu ul li:last-child {
	border: none;
}

header .black-area .global-menu ul .guide a {
	padding-left: 18px;
}

header .black-area .global-menu ul .guide a:before {
	position: absolute;
	top: 50%;
	display: block;
	width: 30px;
	width: 15px;
	height: 24px;
	height: 12px;
	margin-top: -6px;
	content: '';
	background-image: url(/img/pc/common/sprite.png);
	background-position: -356px -174px;
	background-position: -178px -87px;
	background-size: 236px 207px;
}

header .black-area .global-menu ul .faq a {
	padding-left: 17px;
}

header .black-area .global-menu ul .faq a:before {
	position: absolute;
	top: 50%;
	display: block;
	width: 28px;
	width: 14px;
	height: 26px;
	height: 13px;
	margin-top: -6.5px;
	content: '';
	background-image: url(/img/pc/common/sprite.png);
	background-position: -328px -174px;
	background-position: -164px -87px;
	background-size: 236px 207px;
}

header .black-area .global-menu ul .theater a {
	padding-left: 23px;
}

header .black-area .global-menu ul .theater a:before {
	position: absolute;
	top: 50%;
	display: block;
	width: 36px;
	width: 18px;
	height: 24px;
	height: 12px;
	margin-top: -6px;
	content: '';
	background-image: url(/img/pc/common/sprite.png);
	background-position: -422px -114px;
	background-position: -211px -57px;
	background-size: 236px 207px;
}

header .black-area .global-menu ul .screening-schedule a {
	padding-left: 23px;
}

header .black-area .global-menu ul .screening-schedule a:before {
	position: absolute;
	top: 50%;
	display: block;
	width: 20px;
	height: 16px;
	margin-top: -6px;
	content: '';
	background-image: url(/img/pc/header/scadule_icon.png);
	background-size: 20px 16px;
	background-repeat: no-repeat;
}

header .black-area .global-menu ul .eigagift-about a:before, 
header .black-area .global-menu ul .eigagift a:before {
	position: absolute;
	top: 50%;
	display: block;
	width: 20px;
	height: 18px;
	margin-top: -10px;
	content: '';
	background-image: url(/img/pc/header/eiga_gift_about_ylw.png);
	background-size: 20px 18px;
	background-repeat: no-repeat;
}

header .black-area .global-menu ul li.point {
	background-color: #000000;
	padding-bottom: 0;
}

header .black-area .global-menu ul .point a {
	padding-left: 18px;
}

header .black-area .global-menu ul .point a:before {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 14px;
	height: 13px;
	margin-top: -6px;
	content: '';
	background-image: url(/img/pc/header/mt_point_WEB_color.png);
	background-size: 14px 13px;
}

header .black-area .global-menu ul .qrcode a {
	padding-left: 0px;
}

header .black-area .global-menu ul .qrcode a:before {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 0px;
	height: 0px;
	margin-top: -6px;
	content: '';
}

header .black-area .global-menu ul .logout a:before {
	position: absolute;
	top: 50%;
	display: block;
	width: 32px;
	width: 16px;
	height: 34px;
	height: 17px;
	margin-top: -8.5px;
	content: '';
	background-image: url(/img/pc/common/sprite.png);
	background-position: -344px -60px;
	background-position: -172px -30px;
	background-size: 236px 207px;
}

header .black-area .member-menu {
	float: right;
}

header .black-area.login .member-menu {
	float: left;
	clear: both;
	margin-top: 10px;
}

header .black-area .member-menu ul {
	margin: 0 -10px;
}

header .black-area .member-menu ul li {
	float: left;
	border-right: 1px solid #fff;
}

header .black-area .member-menu ul li.login, 
header .black-area .member-menu ul li.logout {
	border: none;
}

header .black-area .member-menu ul li.login a, 
header .black-area .member-menu ul li.logout a {
	padding-left: 25px;
}

header .black-area .member-menu ul li.login a:before, 
header .black-area .member-menu ul li.logout a:before {
	left: 0;
}

header .black-area .member-menu ul li.new a {
	padding-left: 25px;
}

header .black-area .member-menu ul li.new a:before {
	left: 0;
}

header .black-area .member-menu ul li a {
	position: relative;
	margin: 0 10px;
	text-decoration: none;
	color: #fff;
}

header .black-area .member-menu ul .login a:before {
	position: absolute;
	top: 50%;
	display: block;
	width: 32px;
	width: 16px;
	height: 32px;
	height: 16px;
	margin-top: -8px;
	content: '';
	background-image: url(/img/pc/common/sprite.png);
	background-position: -376px -60px;
	background-position: -188px -30px;
	background-size: 236px 207px;
} */
/* PCヘッダここまで（作品詳細/film以外のヘッダはstyle.cssを参照しているのでそちらも要修正） */

.sp-global-menu {
	position: fixed;
	z-index: 1;
	right: 0;
	bottom: 0;
	left: 0;
}

.sp-global-menu ul li {
	float: left;
	width: 25%;
}

.sp-global-menu ul li a {
	font-size: 11px;
	position: relative;
	display: block;
	box-sizing: border-box;
	height: 62px;
	padding: 40px 0 0 0;
	text-align: center;
	text-decoration: none;
	color: #fc0;
	background-color: #d82918;
}

.sp-global-menu ul li a:before {
	top: 8px;
}

.sp-global-menu ul .login a {
	line-height: 1.2;
	padding: 32px 0 0 0;
}

.sp-global-menu ul .guide a:before {
	position: absolute;
	left: 50%;
	display: block;
	width: 30px;
	width: 15px;
	height: 24px;
	height: 12px;
	margin-left: -7.5px;
	content: '';
	background-image: url(/img/pc/common/sprite.png);
	background-position: -356px -174px;
	background-position: -178px -87px;
	background-size: 236px 207px;
}

.sp-global-menu ul .faq a:before {
	position: absolute;
	left: 50%;
	display: block;
	width: 28px;
	width: 14px;
	height: 26px;
	height: 13px;
	margin-left: -7px;
	content: '';
	background-image: url(/img/pc/common/sprite.png);
	background-position: -328px -174px;
	background-position: -164px -87px;
	background-size: 236px 207px;
}

.sp-global-menu ul .theater a:before {
	position: absolute;
	left: 50%;
	display: block;
	width: 36px;
	width: 18px;
	height: 24px;
	height: 12px;
	margin-left: -9px;
	content: '';
	background-image: url(/img/pc/common/sprite.png);
	background-position: -422px -114px;
	background-position: -211px -57px;
	background-size: 236px 207px;
}

.sp-global-menu ul .login a:before {
	position: absolute;
	left: 50%;
	display: block;
	width: 32px;
	width: 16px;
	height: 34px;
	height: 17px;
	margin-left: -8px;
	content: '';
	background-image: url(/img/pc/common/sprite.png);
	background-position: -344px -60px;
	background-position: -172px -30px;
	background-size: 236px 207px;
}

.sp-global-menu ul .mypage a:before {
	position: absolute;
	left: 50%;
	display: block;
	width: 40px;
	width: 20px;
	height: 38px;
	height: 19px;
	margin-left: -10px;
	content: '';
	background-image: url(/img/pc/common/sprite.png);
	background-position: -228px -60px;
	background-position: -114px -30px;
	background-size: 236px 207px;
}

/* footer {
	background-color: #333;
}

footer .sns {
	font-size: 12px;
	background-color: #5e5e5e;
}

footer .sns .inner {
	padding: 10px 20px;
	text-align: center;
}

footer .sns .inner .sns-inner {
	width: 1072px;
	margin: 0 auto;
}

footer .sns .inner .yellow-text {
	font-size: 24px;
	font-weight: bold;
	margin-right: 30px;
}

footer .sns .inner p {
	margin-right: 15px;
	color: #fff;
}

footer .sns .inner ul {
	margin: 0 -5px;
}

footer .sns .inner ul li {
	float: left;
}

footer .sns .inner ul li a {
	display: block;
	margin: 0 5px;
}

footer .sns .inner #sns-logo {
	display: inline-block;
} */

/* footer .sns .inner ul .facebook a {
	display: block;
	width: 302px;
	width: 151px;
	height: 60px;
	height: 30px;
} */

/* footer .sns .inner ul .twitter a {
	display: block;
	width: 302px;
	width: 151px;
	height: 60px;
	height: 30px;
	background-image: url(/img/pc/common/sprite.png);
	background-position: 0 -114px;
	background-position: 0 -57px;
	background-size: 236px 207px;
} */

/* footer .sns .inner ul .line a {
	display: block;
	width: 302px;
	width: 151px;
	height: 60px;
	height: 30px;
} */

/* footer .sns .inner ul .facebook a, footer .sns .inner ul .twitter a {
	margin-right: 15px;
}

footer .sns .inner ul .facebook a, footer .sns .inner ul .twitter a, footer .sns .inner ul .line a {
	display: block;
	width: 50px;
	height: 50px;
}

footer .sns .inner ul .twitter a img, footer .sns .inner ul .line a img, footer .sns .inner ul .facebook a img {
	width: 50px;
	height: 50px;
}

footer .menu {
	font-size: 14px;
}

footer .menu .inner {
	padding: 30px 20px;
}

footer .menu .inner ul {
	margin: 0 -10px;
}

footer .menu .inner ul li {
	float: left;
	margin: 5px 0;
	border-right: 1px solid #fff;
}

footer .menu .inner ul li:last-child {
	border: none;
}

footer .menu .inner ul li a {
	margin: 0 10px;
	text-decoration: none;
	color: #fff;
}

footer .note {
	font-size: 12px;
	color: #fff;
	background-color: #5e5e5e;
}

footer .note .inner {
	padding: 20px 20px;
}

footer .copy {
	font-size: 10px;
	color: #fff;
}

footer .copy .inner {
	padding: 0 20px 20px;
}

footer .copy .inner p {
	line-height: 1.3;
	word-break: break-all;
	color: #989898;
}

@media screen and (max-width: 1187px) {
	footer .sns .inner .sns-inner {
		width: 616px;
	}
} */

a.triangle-right-icon {
	text-decoration: underline;
	color: #333;
}

.triangle-right-icon {
	position: relative;
	padding-left: 15px;
}

.triangle-right-icon::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 0;
	height: 0;
	margin-top: -5px;
	content: '';
	border-width: 5px 0 5px 10px;
	border-style: solid;
	border-color: transparent transparent transparent #c30d23;
}

.mt-10 {
	margin-top: 10px;
}
