@charset "UTF-8";
@-webkit-keyframes elastic {
	0% {
		-webkit-transform-origin: 50% 0;
		        transform-origin: 50% 0;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	60% {
		-webkit-transform: translateY(-9px) scaleX(1.1) scaleY(1.02);
		        transform: translateY(-9px) scaleX(1.1) scaleY(1.02);
	}
	100% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}
@keyframes elastic {
	0% {
		-webkit-transform-origin: 50% 0;
		        transform-origin: 50% 0;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	60% {
		-webkit-transform: translateY(-9px) scaleX(1.1) scaleY(1.02);
		        transform: translateY(-9px) scaleX(1.1) scaleY(1.02);
	}
	100% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}

@-webkit-keyframes elastic2 {
	0% {
		opacity: 0;
		-webkit-transform-origin: 50% 0;
		        transform-origin: 50% 0;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	60% {
		opacity: 1;
		-webkit-transform: translateY(-12px) scaleX(1.08) scaleY(1.02);
		        transform: translateY(-12px) scaleX(1.08) scaleY(1.02);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}

@keyframes elastic2 {
	0% {
		opacity: 0;
		-webkit-transform-origin: 50% 0;
		        transform-origin: 50% 0;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	60% {
		opacity: 1;
		-webkit-transform: translateY(-12px) scaleX(1.08) scaleY(1.02);
		        transform: translateY(-12px) scaleX(1.08) scaleY(1.02);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}

/*clearfix*/
.clearfix {
	zoom: 1;
}

.clearfix:after {
	content: "";
	clear: both;
	display: block;
}

@font-face {
	font-family: "YakuHanJP";
	font-style: normal;
	font-weight: 100;
	src: url("/fonts/YakuHanJP-Thin.woff2") format("woff2"), url("/fonts/YakuHanJP-Thin.woff") format("woff");
}

@font-face {
	font-family: "YakuHanJP";
	font-style: normal;
	font-weight: 400;
	src: url("/fonts/YakuHanJP-Regular.woff2") format("woff2"), url("/fonts/YakuHanJP-Regular.woff") format("woff");
}

@font-face {
	font-family: 'NotoSerif';
	font-style: normal;
	font-weight: 200;
	src: url("/fonts/NotoSerifCJKjp-Light-sub.woff2") format("woff2"), url("/fonts/NotoSerifCJKjp-Light-sub.woff") format("woff");
}

@font-face {
	font-family: 'NotoSerif';
	font-style: normal;
	font-weight: 400;
	src: url("/fonts/NotoSerifCJKjp-Regular-sub.woff2") format("woff2"), url("/fonts/NotoSerifCJKjp-Regular-sub.woff") format("woff");
}

/*
 * HTML5 ✰ Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 *
 * Detailed information about this CSS: h5bp.com/css
 *
 * ==|== normalize ==========================================================
 */
/* =============================================================================
	 HTML5 display definitions
	 ========================================================================== */
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
	display: block;
}

audio, canvas, video {
	display: inline-block;
	*display: inline;
	*zoom: 1;
}

audio:not([controls]) {
	display: none;
}

[hidden] {
	display: none;
}

/* =============================================================================
	 Base
	 ========================================================================== */
/*
 * 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units
 * 2. Force vertical scrollbar in non-IE
 * 3. Prevent iOS text size adjust on device orientation change, without disabling user zoom: h5bp.com/g
 */
html {
	font-size: 100%;
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

body {
	margin: 0;
	font-size: 100%;
	line-height: 1.231;
}

body, button, input, select, textarea {
	font-family: "Times New Roman", "游明朝", YuMincho, "Hiragino Mincho ProN", Meiryo, serif;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection declarations have to be separate
 * Also: hot pink! (or customize the background color to match your design)
 */
::-moz-selection {
	text-shadow: none;
	background-color: highlight;
	color: highlighttext;
}
::selection {
	text-shadow: none;
	background-color: highlight;
	color: highlighttext;
}

/* =============================================================================
	 Links
	 ========================================================================== */
a {
	color: #00e;
}

a:focus {
	outline: thin dotted;
}

/* Improve readability when focused and hovered in all browsers: h5bp.com/h */
.pc a:hover {
	outline: 0;
}

a:active {
	outline: 0;
}

/* =============================================================================
	 Typography
	 ========================================================================== */
abbr[title] {
	border-bottom: 1px dotted;
}

b, strong {
	font-weight: bold;
}

blockquote {
	margin: 1em 40px;
}

dfn {
	font-style: italic;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

ins {
	background: #ff9;
	color: #000;
	text-decoration: none;
}

mark {
	background: #ff0;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

/* Redeclare monospace font family: h5bp.com/j */
pre, code, kbd, samp {
	font-family: monospace, serif;
	_font-family: 'courier new', monospace;
	font-size: 1em;
}

/* Improve readability of pre-formatted text in all browsers */
pre {
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

q {
	quotes: none;
}

q:before, q:after {
	content: "";
	content: none;
}

small {
	font-size: 85%;
}

/* Position subscript and superscript content without affecting line-height: h5bp.com/k */
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

/* =============================================================================
	 Lists
	 ========================================================================== */
ul, ol {
	margin: 1em 0;
	padding: 0 0 0 40px;
}

dd {
	margin: 0 0 0 40px;
}

nav ul, nav ol {
	list-style: none;
	list-style-image: none;
	margin: 0;
	padding: 0;
}

/* =============================================================================
	 Embedded content
	 ========================================================================== */
/*
 * 1. Improve image quality when scaled in IE7: h5bp.com/d
 * 2. Remove the gap between images and borders on image containers: h5bp.com/e
 */
img {
	border: 0;
	-ms-interpolation-mode: bicubic;
	vertical-align: middle;
}

/*
 * Correct overflow not hidden in IE9
 */
svg:not(:root) {
	overflow: hidden;
}

/* =============================================================================
	 Figures
	 ========================================================================== */
figure {
	margin: 0;
}

/* =============================================================================
	 Forms
	 ========================================================================== */
form {
	margin: 0;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

/* Indicate that 'label' will shift focus to the associated form element */
label {
	cursor: pointer;
}

/*
 * 1. Correct color not inheriting in IE6/7/8/9
 * 2. Correct alignment displayed oddly in IE6/7
 */
legend {
	border: 0;
	*margin-left: -7px;
	padding: 0;
}

/*
 * 1. Correct font-size not inheriting in all browsers
 * 2. Remove margins in FF3/4 S5 Chrome
 * 3. Define consistent vertical alignment display in all browsers
 */
button, input, select, textarea {
	font-size: 100%;
	margin: 0;
	vertical-align: baseline;
	*vertical-align: middle;
}

/*
 * 1. Define line-height as normal to match FF3/4 (set using !important in the UA stylesheet)
 */
button, input {
	line-height: normal;
}

/*
 * 1. Display hand cursor for clickable form elements
 * 2. Allow styling of clickable form elements in iOS
 * 3. Correct inner spacing displayed oddly in IE7 (doesn't effect IE6)
 */
button, input[type="button"], input[type="reset"], input[type="submit"] {
	cursor: pointer;
	-webkit-appearance: button;
	*overflow: visible;
}

/*
 * Consistent box sizing and appearance
 */
input[type="checkbox"], input[type="radio"] {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	padding: 0;
}

input[type="search"] {
	-webkit-appearance: textfield;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/*
 * Remove inner padding and border in FF3/4: h5bp.com/l
 */
button::-moz-focus-inner, input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

/*
 * 1. Remove default vertical scrollbar in IE6/7/8/9
 * 2. Allow only vertical resizing
 */
textarea {
	overflow: auto;
	vertical-align: top;
	resize: vertical;
}

/* Colors for form validity */
input:invalid, textarea:invalid {
	background-color: #f0dddd;
}

/* =============================================================================
	 Tables
	 ========================================================================== */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

td {
	vertical-align: top;
}

/* ==|== primary styles =====================================================
	 Author:
	 ========================================================================== */
/* ==|== media queries ======================================================
	 PLACEHOLDER Media Queries for Responsive Design.
	 These override the primary ('mobile first') styles
	 Modify as content requires.
	 ========================================================================== */
@media only screen and (min-width: 480px) {
	/* Style adjustments for viewports 480px and over go here */
}

@media only screen and (min-width: 768px) {
	/* Style adjustments for viewports 768px and over go here */
}

/* ==|== non-semantic helper classes ========================================
	 Please define your styles before this section.
	 ========================================================================== */
/* For image replacement */
.ir {
	display: block;
	border: 0;
	text-indent: -999em;
	overflow: hidden;
	background-color: transparent;
	background-repeat: no-repeat;
	text-align: left;
	direction: ltr;
}

.ir br {
	display: none;
}

/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden {
	display: none !important;
	visibility: hidden;
}

/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
}

/* Hide visually and from screenreaders, but maintain layout */
.invisible {
	visibility: hidden;
}

/* Contain floats: h5bp.com/q */
.clearfix:before, .clearfix:after {
	content: "";
	display: table;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	*zoom: 1;
}

/* ==|== print styles =======================================================
	 Print styles.
	 Inlined to avoid required HTTP connection: h5bp.com/r
	 ========================================================================== */
@media print {
	* {
		background: transparent !important;
		color: black !important;
		-webkit-box-shadow: none !important;
		        box-shadow: none !important;
		text-shadow: none !important;
		-webkit-filter: none !important;
		        filter: none !important;
		-ms-filter: none !important;
	}
	/* Black prints faster: h5bp.com/s */
	a, a:visited {
		text-decoration: underline;
	}
	a[href]:after {
		content: " (" attr(href) ")";
	}
	abbr[title]:after {
		content: " (" attr(title) ")";
	}
	.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
		content: "";
	}
	/* Don't show links for images, or javascript/internal links */
	pre, blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}
	table {
		display: table-header-group;
	}
	/* h5bp.com/t */
	tr, img {
		page-break-inside: avoid;
	}
	img {
		max-width: 100% !important;
	}
	@page {
		margin: 0.5cm;
	}
	p, h2, h3 {
		orphans: 3;
		widows: 3;
	}
	h2, h3 {
		page-break-after: avoid;
	}
}

/* reflow reset for -webkit-margin-before: 1em */
p {
	margin: 0;
}

html {
	overflow-y: auto;
	background-color: transparent;
}

body {
	background: #fff;
	font: normal 100%;
	position: relative;
	height: 100%;
}

body, div, img, p, button, input, select, textarea, a {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.image {
	display: block;
}

input {
	cursor: default;
	display: block;
}

input[type=button] {
	background-color: #e5e9e8;
	border: 1px solid #9daca9;
	border-radius: 4px;
	-webkit-box-shadow: inset 0 1px #fff;
	        box-shadow: inset 0 1px #fff;
	font: inherit;
	letter-spacing: inherit;
	text-indent: inherit;
	color: inherit;
}

input[type=button]:hover {
	background-color: #eff1f1;
}

input[type=button]:active {
	background-color: #d2d6d6;
	border: 1px solid #9daca9;
	-webkit-box-shadow: inset 0 1px rgba(0, 0, 0, 0.1);
	        box-shadow: inset 0 1px rgba(0, 0, 0, 0.1);
}

/* Reset anchor styles to an unstyled default to be in parity with design surface. It
is presumed that most link styles in real-world designs are custom (non-default). */
/*
a, a:visited, a:hover, a:active {
	color: inherit;
	text-decoration: inherit;
}
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
}

ol, ul {
	list-style: none;
}

body:target {
	height: 100%;
}

body:target::before {
	display: block;
	position: absolute;
	width: 1px;
	height: 100%;
	background: cyan;
	left: 50%;
	top: 0;
	z-index: 10000;
	content: "";
	margin-left: -1px;
	-webkit-box-shadow: -600px 0 0 0 cyan, 600px 0 0 0 cyan;
	        box-shadow: -600px 0 0 0 cyan, 600px 0 0 0 cyan;
}

body:target::after {
	display: block;
	position: absolute;
	height: 1px;
	width: 100%;
	background: cyan;
	top: 50%;
	left: 0;
	z-index: 10000;
	content: "";
	margin-top: -1px;
	-webkit-box-shadow: 0 -352px 0 0 cyan, 0 352px 0 0 cyan;
	        box-shadow: 0 -352px 0 0 cyan, 0 352px 0 0 cyan;
}

/* =======================================================================
base settings
========================================================================== */
html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body {
	background-color: #000;
	font-family: YakuHanJP, "NotoSerif", sans-serif;
	font-weight: 300;
	width: 100%;
}

.pc #wrapper {
	margin: 0 auto;
	position: relative;
}

@media screen and (max-width: 1400px) {
	.pc #wrapper {
		width: 1200px;
	}
	.pc #wrapper .gnav {
		left: 53px;
	}
}

a {
	color: #ce9740;
}

a:visited {
	color: #ce9740;
}

.pc .onlySP {
	display: none;
}

.sp .onlyPC {
	display: none;
}

.bgWrapper {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.mainbg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 200%;
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.82, 0.165, 1);
	     -o-transition-timing-function: cubic-bezier(0.175, 0.82, 0.165, 1);
	        transition-timing-function: cubic-bezier(0.175, 0.82, 0.165, 1);
}

.mainbg.background-1 {
	background: #000 url(/images/common/bg_bubble.png) 0 0 repeat;
	-webkit-transition-duration: 0.6s;
	     -o-transition-duration: 0.6s;
	        transition-duration: 0.6s;
}

.mainbg.background-2 {
	background: url(/images/common/bg_petal.png) 0 0 repeat;
	-webkit-transition-duration: 1.1s;
	     -o-transition-duration: 1.1s;
	        transition-duration: 1.1s;
}

/* =======================================================================
loader
========================================================================== */
.loader {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background-color: #f1e6d0;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-transition: 0s;
	-o-transition: 0s;
	transition: 0s;
	overflow: hidden;
}

.loader .inner {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 406px;
	height: 352px;
	opacity: 0;
}

.loader .logo {
	width: 100%;
	height: auto;
}

.loader.disabled {
	-webkit-transition: opacity 0.5s linear 2s, height 0s linear 2.5s;
	-o-transition: opacity 0.5s linear 2s, height 0s linear 2.5s;
	transition: opacity 0.5s linear 2s, height 0s linear 2.5s;
	opacity: 0;
	height: 0;
}

.loader.disabled .inner {
	opacity: 1;
	-webkit-transition: opacity 2s linear 0.2s;
	-o-transition: opacity 2s linear 0.2s;
	transition: opacity 2s linear 0.2s;
}

/* =======================================================================
page title
========================================================================== */
.pc .pageTitle {
	margin: 0 auto 28px;
	color: #fff;
}

/* =======================================================================
global nav
========================================================================== */
.gnav {
	position: absolute;
	z-index: 5000;
}

.gnav .gnav_item a {
	font-family: 'Cinzel Decorative', cursive;
}

.gnav .gnav_item.gnav_item-bddvd a {
	text-indent: -9999px;
	white-space: nowrap;
	overflow: hidden;
	vertical-align: bottom;
}

.siteTitle {
	position: absolute;
}

.siteTitle a {
	display: block;
	text-indent: -9999px;
	white-space: nowrap;
	overflow: hidden;
	vertical-align: bottom;
	z-index: 100;
}

body.pc .siteTitle {
	left: -91px;
	top: 5px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 339px;
	height: 296px;
	background: url(/images/common/gnav_siteTitle.png) 0 0 no-repeat;
	padding-top: 30px;
}

body.pc .siteTitle a {
	margin: 0 auto;
	width: 190px;
	height: 180px;
}

body.sp .siteTitle {
	display: none;
}

.pc .gnav {
	position: fixed;
	width: 316px;
	left: 154px;
	top: 0;
	padding-bottom: 40px;
}

.pc .gnav .inner {
	position: relative;
	margin: 0 auto;
	padding-top: 200px;
}

.pc .gnav .gnav_ul {
	position: relative;
	width: 100%;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 29px auto 0;
}

.pc .gnav .gnav_item {
	display: block;
}

.pc .gnav .gnav_item.onlySP {
	display: none;
}

.pc .gnav .gnav_item:not(:first-child) {
	margin-top: 25px;
}

.pc .gnav .gnav_item a {
	position: relative;
	text-decoration: none;
	outline: none;
	display: inline-block;
	background-color: #000;
	font-size: 22px;
	color: #ce9740;
}

.pc .gnav .gnav_item a .spacing {
	letter-spacing: 0.25em;
}

.pc .gnav .gnav_item a .spacing-extra {
	letter-spacing: 0.5em;
}

.pc .gnav .gnav_item a:hover {
	background-color: #ce9740;
	color: #000;
}

.pc .gnav .gnav_item.gnav_item-bddvd a {
	width: 231px;
	height: 33px;
	background: url(/images/common/gnav-item-bddvd.png) 0 0 no-repeat;
}

.pc .gnav .gnav_item.gnav_item-bddvd a:hover {
	background-position: 0 -33px;
}

.pc .gnav .gnav_item.gnav_item-sns {
	margin-top: 63px;
}

.pc .gnav .gnav_item.gnav_item-sns a {
	background: url(/images/common/spr_navItem.png) 0 0 no-repeat;
	width: 25px;
	height: 25px;
	-webkit-transition: opacity 0.2s;
	-o-transition: opacity 0.2s;
	transition: opacity 0.2s;
}

.pc .gnav .gnav_item.gnav_item-sns a:not(:first-child) {
	margin-left: 20px;
}

.pc .gnav .gnav_item.gnav_item-sns a:after {
	display: none;
}

.pc .gnav .gnav_item.gnav_item-sns a:hover {
	opacity: 0.5;
	-webkit-transition: opacity 0.1s;
	-o-transition: opacity 0.1s;
	transition: opacity 0.1s;
}

.pc .gnav .gnav_item.gnav_item-sns .gnav_icon_sns-twitter {
	background-position: 0 0px;
}

.pc .gnav .gnav_item.gnav_item-sns .gnav_icon_sns-line {
	background-position: 0 -25px;
}

.pc .gnav .gnav_item.gnav_item-sns .gnav_icon_sns-hatebu {
	background-position: 0 -50px;
}

.pc .gnav .movie_conteiner {
	margin-top: 58px;
	width: 187px;
	position: relative;
}

.pc .gnav .movie_conteiner:after,
.pc .gnav .movie_conteiner .movie_item:before,
.pc .gnav .movie_conteiner .movie_item:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}

.pc .gnav .movie_conteiner:after {
	width: 100%;
	height: 100%;
	background: url(/images/common/movie_item.png) 0 0 no-repeat;
	pointer-events: none;
}

.pc .gnav .movie_conteiner .movie_item {
	display: block;
	position: relative;
	padding: 11px;
	height: 117px;
	cursor: pointer;
	background-size: 100%;
	background-position: 50% 50%;
}

.pc .gnav .movie_conteiner .movie_item:before {
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.4);
	-webkit-transition: opacity 0.2s;
	-o-transition: opacity 0.2s;
	transition: opacity 0.2s;
}

.pc .gnav .movie_conteiner .movie_item:after {
	width: 40px;
	height: 40px;
	background: url(/images/common/movie_item_icon.png) 0 0 no-repeat;
	-webkit-transition: opacity 0.2s;
	-o-transition: opacity 0.2s;
	transition: opacity 0.2s;
}

.pc .gnav .movie_conteiner .movie_item:hover:before, .pc .gnav .movie_conteiner .movie_item:hover:after {
	opacity: 0.5;
	-webkit-transition: opacity 0.1s;
	-o-transition: opacity 0.1s;
	transition: opacity 0.1s;
}

.pc .gnav .widget_twitter {
	margin-top: 20px;
	width: 187px;
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;
}

.pc .gnav .widget_twitter .widget_header,
.pc .gnav .widget_twitter .widget_footer {
	text-indent: -9999px;
	white-space: nowrap;
	overflow: hidden;
	vertical-align: bottom;
	width: 100%;
	display: block;
	height: 33px;
	background: url(/images/common/spr_widget_twitter.png) 0 0 no-repeat;
}

.pc .gnav .widget_twitter .widget_footer {
	background-position: 0 -33px;
}

.pc .gnav .widget_twitter .widget_content {
	background-color: #fff;
	max-height: 360px;
	height: 360px;
	overflow: scroll;
}

.sp .gnav {
	position: fixed;
	z-index: 8000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.8);
	-webkit-transform: translateY(-100%);
	    -ms-transform: translateY(-100%);
	        transform: translateY(-100%);
	overflow: hidden;
}

.sp .gnav.is-visible {
	-webkit-transform: none;
	    -ms-transform: none;
	        transform: none;
}

.sp .gnav.transition--show {
	-webkit-transition: -webkit-transform 0.3s cubic-bezier(0.6, 0.04, 0.98, 0.335);
	transition: -webkit-transform 0.3s cubic-bezier(0.6, 0.04, 0.98, 0.335);
	-o-transition: transform 0.3s cubic-bezier(0.6, 0.04, 0.98, 0.335);
	transition: transform 0.3s cubic-bezier(0.6, 0.04, 0.98, 0.335);
	transition: transform 0.3s cubic-bezier(0.6, 0.04, 0.98, 0.335), -webkit-transform 0.3s cubic-bezier(0.6, 0.04, 0.98, 0.335);
}

.sp .gnav.transition--hide {
	-webkit-transition: -webkit-transform 0.6s cubic-bezier(0.075, 0.82, 0.165, 1);
	transition: -webkit-transform 0.6s cubic-bezier(0.075, 0.82, 0.165, 1);
	-o-transition: transform 0.6s cubic-bezier(0.075, 0.82, 0.165, 1);
	transition: transform 0.6s cubic-bezier(0.075, 0.82, 0.165, 1);
	transition: transform 0.6s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-transform 0.6s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.sp .gnav .btn_navClose {
	position: absolute;
	right: 35px;
	top: 33px;
	width: 130px;
	height: 130px;
	background: url(/images/common/spr_navItem-sp.png) -420px 0 no-repeat;
	cursor: pointer;
}

.sp .gnav .inner {
	position: relative;
	padding-top: 250px;
	width: 100%;
	height: 100%;
	overflow: scroll;
}

.sp .gnav .gnav_ul {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	width: 634px;
	margin: 0 auto;
	padding-bottom: 150px;
}

.sp .gnav .gnav_item {
	display: block;
	text-align: center;
	margin-top: 38px;
}

.sp .gnav .gnav_item + .gnav_item {
	margin-top: 38px;
}

.sp .gnav .gnav_item a {
	position: relative;
	display: inline-block;
	height: 40px;
	color: #fff;
	font-size: 29px;
	font-weight: 400;
	text-decoration: none;
	letter-spacing: 0.15em;
}

.sp .gnav .gnav_item.gnav_item-top {
	margin-left: 0;
}

.sp .gnav .gnav_item.gnav_item-bddvd {
	margin-top: 34px;
}

.sp .gnav .gnav_item.gnav_item-bddvd a {
	width: 299px;
	height: 43px;
	background: url(/images/common/gnav-item-bddvd-sp.png) 0 0 no-repeat;
}

.sp .gnav .gnav_item.gnav_item-sns {
	position: relative;
	left: -10px;
	width: 490px;
	margin: 90px auto 0;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.sp .gnav .gnav_item.gnav_item-sns a {
	background: url(/images/common/spr_navItem-sp.png) 0 0 no-repeat;
	width: 138px;
	height: 138px;
}

.sp .gnav .gnav_item.gnav_item-sns a:after {
	display: none;
}

.sp .gnav .gnav_item.gnav_item-sns .gnav_icon_sns-twitter {
	background-position: 0 0;
}

.sp .gnav .gnav_item.gnav_item-sns .gnav_icon_sns-line {
	background-position: -140px 0;
}

.sp .gnav .gnav_item.gnav_item-sns .gnav_icon_sns-hatebu {
	background-position: -280px 0;
}

.sp .gnav .movie_conteiner,
.sp .gnav .widget_twitter {
	display: none;
}

.pc .hamburger {
	display: none;
}

.sp .hamburger {
	position: fixed;
	z-index: 5000;
	background: url(/images/common/spr_navItem-sp.png) -550px 0 no-repeat;
	width: 110px;
	height: 110px;
	top: 34px;
	right: 25px;
	cursor: pointer;
	-webkit-transition: opacity 0.6s cubic-bezier(0.075, 0.82, 0.165, 1);
	-o-transition: opacity 0.6s cubic-bezier(0.075, 0.82, 0.165, 1);
	transition: opacity 0.6s cubic-bezier(0.075, 0.82, 0.165, 1);
	opacity: 0;
}

.sp .hamburger.is-hidden {
	-webkit-transition: opacity 0.3s cubic-bezier(0.6, 0.04, 0.98, 0.335);
	-o-transition: opacity 0.3s cubic-bezier(0.6, 0.04, 0.98, 0.335);
	transition: opacity 0.3s cubic-bezier(0.6, 0.04, 0.98, 0.335);
	opacity: 1;
}

/* =======================================================================
content frame
========================================================================== */
.content {
	position: relative;
	margin: 0 auto;
	-webkit-transition: height 0 0.5s;
	-o-transition: height 0 0.5s;
	transition: height 0 0.5s;
}

.content .pageTitle {
	text-align: center;
	font-family: 'Cinzel Decorative', cursive;
	font-weight: 300;
}

.content .contentFrame {
	position: relative;
	color: #000;
}

.content .contentFrame:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	margin: auto;
	width: 100%;
}

.content .contentFrame .article_content {
	position: relative;
	z-index: 100;
	text-align: justify;
}

.content .contentFrame .article_content:before, .content .contentFrame .article_content:after {
	position: absolute;
	left: 0;
	content: '';
	width: 100%;
	z-index: -1;
}

.content h3 {
	font-family: 'Cinzel Decorative', cursive;
	font-weight: 300;
	color: #ce9740;
	text-align: center;
}

.pc .content {
	display: block;
	width: 750px;
	padding: 68px 0 322px 350px;
	background: url(/images/common/bg_content.png) 100% 0 repeat-y;
}

.pc .content:after {
	content: '';
	position: absolute;
	left: 1100px;
	top: 0;
	width: calc((100vw - 1096px) / 2);
	height: 100%;
	background-color: rgba(0, 0, 0, 0.7);
}

.pc .pageTitle {
	letter-spacing: 0.25em;
	font-size: 20px;
}

.pc .contentFrame {
	margin-top: 130px;
}

.pc .contentFrame + .contentFrame {
	margin-top: 53px;
}

.pc .contentFrame:after {
	height: calc(-170px - 170px + 100%);
	background: url(/images/common/bg_contentFrame_mid.png) 0 0 repeat-y;
}

.pc .contentFrame .article_content {
	padding: 105px 84px 120px;
}

.pc .contentFrame .article_content:before, .pc .contentFrame .article_content:after {
	height: 170px;
}

.pc .contentFrame .article_content:before {
	top: 0;
	background: url(/images/common/bg_contentFrame_top.png) 0 0 no-repeat;
}

.pc .contentFrame .article_content:after {
	bottom: 0;
	background: url(/images/common/bg_contentFrame_btm.png) 0 0 no-repeat;
}

.pc .contentFrame h3 {
	margin-bottom: 25px;
	font-size: 18px;
	letter-spacing: 0.31em;
}

.pc .contentFrame .content_item {
	padding: 38px 0 42px;
}

.pc .contentFrame .content_item:last-child {
	padding-bottom: 0;
}

.pc .contentFrame h3 + .content_item {
	padding-top: 10px;
}

.pc .contentFrame .center {
	text-align: center;
}

.pc .article_item .date {
	font-family: 'Cinzel Decorative', cursive;
	letter-spacing: 0.2em;
}

.pc .article_item .article_content {
	font-size: 13px;
	line-height: 1.8em;
}

.pc .article_item .article_content img {
	max-width: 100%;
	height: auto;
}

.pc .article_item a {
	text-decoration: none;
}

.pc .article_item a:hover {
	text-decoration: underline;
}

.sp .content {
	/* width: 750px; */
	padding-bottom: 270px;
}

.sp .pageTitle {
	margin: 0 auto 28px;
	letter-spacing: 0.1em;
	font-size: 49px;
	font-weight: 400;
	color: #ce9740;
}

.sp .contentFrame {
	width: 632px;
	margin: 31px auto 0;
}

.sp .contentFrame + .contentFrame {
	margin-top: 20px;
}

.sp .contentFrame:after {
	height: calc(-199px - 199px + 100%);
	background: url(/images/common/bg_contentFrame_rep-sp.png) 0 0 repeat-y;
}

.sp .contentFrame .article_content {
	font-size: 17px;
	line-height: 1.64em;
	padding: 130px 109px 146px;
}

.sp .contentFrame .article_content:before, .sp .contentFrame .article_content:after {
	height: 200px;
}

.sp .contentFrame .article_content:before {
	top: 0;
	background: url(/images/common/bg_contentFrame_top-sp.png) 0 0 no-repeat;
}

.sp .contentFrame .article_content:after {
	bottom: 1px;
	background: url(/images/common/bg_contentFrame_btm-sp.png) 0 0 no-repeat;
}

.sp .contentFrame h3 {
	margin-bottom: 25px;
	font-size: 20px;
	letter-spacing: 0.31em;
	font-weight: 600;
}

.sp .contentFrame .content_item {
	padding: 55px 0 70px;
}

.sp .contentFrame .content_item:last-child {
	padding-bottom: 0;
}

.sp .contentFrame h3 + .content_item {
	padding-top: 10px;
}

.sp .contentFrame .center {
	text-align: center;
}

/* =======================================================================
footer
========================================================================== */
.mainFooter {
	position: relative;
	z-index: 6000;
	display: block;
	text-align: center;
	font-family: YakuHanJP, "Noto Sans Japanese", sans-serif;
}

.mainFooter .footer_links {
	margin: 0 auto 0;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.mainFooter .footer_links li {
	display: block;
	background-color: #000;
	font-size: 0;
}

.mainFooter .footer_links li a {
	display: block;
	text-decoration: none;
}

.mainFooter .footer_links li:hover {
	background-color: #ce9740;
}

.mainFooter .footer_links li:hover a {
	color: #000;
}

.mainFooter .bnrWrapper a {
	-webkit-transition: opacity 0.2s;
	-o-transition: opacity 0.2s;
	transition: opacity 0.2s;
}

.mainFooter .bnrWrapper a:hover {
	opacity: 0.5;
	-webkit-transition: opacity 0.1s;
	-o-transition: opacity 0.1s;
	transition: opacity 0.1s;
}

.pc .mainFooter {
	min-width: 1200px;
	margin-top: -202px;
	padding-top: 202px;
	background-image: url(/images/common/bg_footer_top-1.png), url(/images/common/bg_footer_top-2.png);
	background-position: 50% 182px, 50% 0;
	background-repeat: repeat-x, no-repeat;
}

.pc .mainFooter .mainfooter_inner {
	background-color: #f00;
	padding-bottom: 50px;
}

.pc .mainFooter .footer_share {
	display: none;
}

.pc .mainFooter .footer_links.onlyPC {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding-top: 64px;
}

.pc .mainFooter .footer_links.onlyPC li:not(:last-child) {
	margin-right: 15px;
}

.pc .mainFooter .footer_links.onlyPC a {
	padding: 0 8px;
	height: 17px;
	line-height: 17px;
	font-size: 11px;
}

.pc .mainFooter .bnrWrapper {
	width: 910px;
	margin: 28px auto 0;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.pc .mainFooter .bnrWrapper li {
	width: 216px;
	height: 56px;
}

.pc .mainFooter .bnrWrapper li a,
.pc .mainFooter .bnrWrapper li img {
	width: 100%;
	height: auto;
}

.pc .mainFooter .copyright {
	color: #000;
	margin-top: 28px;
	font-size: 10px;
}

.pc .mainFooter .copyright .notice {
	letter-spacing: 0.57em;
}

.pc .mainFooter .copyright .copytext {
	margin-top: 13px;
	letter-spacing: 0.33em;
}

.sp.page--top .mainFooter {
	background-color: #000;
	background-image: url(/images/common/bg_footer-top-sp.png);
	padding-bottom: 134px;
}

.sp.page--top .mainFooter:before {
	background-image: url(/images/common/bg_footer_top-top-sp.png);
}

.sp.page--top .mainFooter .footer_links.onlySP li {
	background-color: #f00;
}

.sp.page--top .mainFooter .footer_links.onlySP a {
	color: #000;
}

.sp.page--top .mainFooter .copyright .copytext {
	color: #f00;
}

.sp .mainFooter {
	padding-top: 146px;
	padding-bottom: 62px;
	background-position: 0 0;
	background: url(/images/common/bg_footer-sp.png) repeat;
	min-height: 500px;
}

.sp .mainFooter:before {
	content: '';
	position: absolute;
	left: 0;
	top: -212px;
	width: 100%;
	height: 309px;
	background: url(/images/common/bg_footer_top-sp.png) 0 0 no-repeat;
}

.sp .mainFooter .footer_share {
	width: 480px;
	margin: 0 auto;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.sp .mainFooter .footer_share .share_item {
	background: url(/images/common/spr_navItem-sp.png) 0 0 no-repeat;
	width: 136px;
	height: 136px;
	-webkit-transition: opacity 0.2s;
	-o-transition: opacity 0.2s;
	transition: opacity 0.2s;
}

.sp .mainFooter .footer_share .share_item:not(:first-child) {
	margin-left: 20px;
}

.sp .mainFooter .footer_share .share_item:after {
	display: none;
}

.sp .mainFooter .footer_share .share_item:hover {
	opacity: 0.5;
	-webkit-transition: opacity 0.1s;
	-o-transition: opacity 0.1s;
	transition: opacity 0.1s;
}

.sp .mainFooter .footer_share a {
	text-indent: -9999px;
	white-space: nowrap;
	overflow: hidden;
	vertical-align: bottom;
	display: block;
	width: 100%;
	height: 100%;
}

.sp .mainFooter .footer_share .share_item-twtr {
	background-position: 0px 0;
}

.sp .mainFooter .footer_share .share_item-fb {
	background-position: -140px 0;
}

.sp .mainFooter .footer_share .share_item-hate {
	background-position: -280px 0;
}

.sp .mainFooter .bnrWrapper {
	width: 540px;
	margin: 80px auto 0;
}

.sp .mainFooter .bnrWrapper li + li {
	margin-top: 40px;
}

.sp .mainFooter .bnrWrapper img {
	width: 100%;
	height: auto;
}

.sp .mainFooter .bnrWrapper a {
	-webkit-transition: opacity 0.2s;
	-o-transition: opacity 0.2s;
	transition: opacity 0.2s;
}

.sp .mainFooter .bnrWrapper a:hover {
	opacity: 0.5;
	-webkit-transition: opacity 0.1s;
	-o-transition: opacity 0.1s;
	transition: opacity 0.1s;
}

.sp .mainFooter .footer_links.onlySP {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding-top: 88px;
}

.sp .mainFooter .footer_links.onlySP li {
	background-color: #000;
}

.sp .mainFooter .footer_links.onlySP li:not(:last-child) {
	margin-right: 12px;
}

.sp .mainFooter .footer_links.onlySP a {
	padding: 0 0.65em 0 1em;
	height: 26px;
	line-height: 26px;
	font-size: 18px;
	letter-spacing: 0.35em;
	color: #ce9740;
}

.sp .mainFooter .copyright {
	margin-top: 27px;
	font-size: 15px;
	line-height: 2.27em;
	color: #fff;
}

.sp .mainFooter .copyright .notice {
	letter-spacing: 0.43em;
}

.sp .mainFooter .copyright .copytext {
	margin-top: 15px;
	letter-spacing: 0.13em;
	color: #000;
}

.sp .mainFooter .footer_toTop {
	display: block;
	width: 106px;
	height: 54px;
	margin: 52px auto 0;
	background: url(/images/common/toTop-sp.png) 0 0 no-repeat;
}

/* =======================================================================
bottom news
========================================================================== */
.btmNews {
	position: fixed;
	z-index: 6000;
	left: 0;
	bottom: 0;
	width: 100%;
	background-color: #000;
	border-top: 1px solid #f00;
}

.btmNews .inner {
	position: relative;
	margin: 0 auto;
	color: #ce9740;
}

.btmNews .btmNews_category {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto;
}

.btmNews .btmNews_category .news_header {
	white-space: nowrap;
	position: relative;
	-o-text-overflow: ellipsis;
	   text-overflow: ellipsis;
}

.btmNews .btmNews_category .news_header:before {
	left: 0;
	content: '';
	position: absolute;
}

.btmNews .news_container {
	overflow: hidden;
	-webkit-transition: 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
	-o-transition: 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
	transition: 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.btmNews .news_header {
	margin-bottom: 1.25em;
	overflow: hidden;
	font-family: YakuHanJP, "Noto Sans Japanese", sans-serif;
}

.btmNews .news_header a {
	text-decoration: none;
}

.btmNews .news_header a:hover {
	text-decoration: underline;
}

.btmNews .btn_more {
	text-indent: -9999px;
	white-space: nowrap;
	overflow: hidden;
	vertical-align: bottom;
	cursor: pointer;
}

.pc .btmNews .inner {
	width: 1100px;
	padding: 23px 0 23px 58px;
}

.pc .btmNews .btmNews_category {
	width: 650px;
}

.pc .btmNews .btmNews_category a {
	height: 20px;
}

.pc .btmNews .btmNews_category h3 {
	text-indent: -9999px;
	white-space: nowrap;
	overflow: hidden;
	vertical-align: bottom;
	width: 75px;
	height: 20px;
	background: url(/images/top/news_header.png) 0 0 no-repeat;
}

.pc .btmNews .news_container {
	width: 546px;
	max-height: 1.5em;
}

.pc .btmNews.is-visible .news_container {
	max-height: 200px;
}

.pc .btmNews .news_header {
	padding-left: 40px;
	font-size: 15px;
	line-height: 1.7;
	height: 1.7em;
	max-width: 33em;
}

.pc .btmNews .news_header:before {
	width: 22px;
	height: 22px;
	background: url(/images/top/news_header.png) 0 -40px no-repeat;
}

.pc .btmNews .btn_more {
	position: absolute;
	right: 0;
	top: 25px;
	width: 34px;
	height: 20px;
	margin-left: 5px;
	background: url(/images/top/news_more.png) 0 0 no-repeat;
}

.pc .btmNews.is-visible .btn_more {
	background-position: -40px 0;
}

.sp .btmNews .inner {
	width: 670px;
	padding: 29px 0 25px 0;
	margin: 0 auto;
}

.sp .btmNews .btmNews_category {
	width: 670px;
}

.sp .btmNews .btmNews_category a {
	position: relative;
	top: 2px;
	height: 25px;
	text-decoration: none;
}

.sp .btmNews .btmNews_category h3 {
	width: 86px;
	height: 20px;
	font-size: 18px;
	line-height: 1em;
	letter-spacing: 0.1em;
	font-family: 'Cinzel Decorative', cursive;
	font-weight: 400;
}

.sp .btmNews .news_container {
	width: 584px;
	max-height: 1.5em;
}

.sp .btmNews.is-visible .news_container {
	max-height: 230px;
}

.sp .btmNews .news_header {
	padding-left: 46px;
	font-size: 18px;
	line-height: 20px;
	height: 25px;
	max-width: 28em;
}

.sp .btmNews .news_header:before {
	width: 25px;
	height: 25px;
	background: url(/images/top/news_header-sp.png) 0 0 no-repeat;
}

.sp .btmNews .btn_more {
	position: absolute;
	right: 0;
	top: 30px;
	width: 34px;
	height: 20px;
	margin-left: 5px;
	background: url(/images/top/news_more.png) 0 0 no-repeat;
}

.sp .btmNews.is-visible .btn_more {
	background-position: -40px 0;
}
