@charset "UTF-8";
/* common class
--------------------------------------------------*/
.clearfix {zoom:1;}
.clearfix:after{content: "";display: block;clear: both; overflow:hidden;}


img {
	width: 100%;
	height: auto;
	vertical-align: top;
}
#root {
	width: 100%;
	/*font-family: 'GUJPCorporate', 'Avenir Next', Roboto, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'メイリオ', Meiryo, sans-serif;*/
	font-weight: 400;
	letter-spacing: 0.05rem;
	position: relative;
	z-index: 0;
}
#root header {
	width: 100%;
	background-color: #FFF!important;
}
#root .header {
	width: 100%;
	background-color: #000;
	color: #FFF;
}
#root .header .header_inner {
	width: 100%;
	min-width: none;
	margin: 0 auto;
}
#root .header .header_inner .subject {
	font-size: 16px;
	font-weight: 700;
	color: #F00E3B;
	text-shadow: 0px 0px 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35);
	padding: 15px 0 10px 0;
	text-align: center;
}
#root .header .header_inner .banner {
	width: 85%;
	max-width: none;
	margin: 0 auto 15px auto;
}
#root .header .header_inner > p {
	width: 85%;
	max-width: none;
	margin: 0 auto;
	font-size: 12px;
	font-weight: 700;
	line-height: 24px;
	text-align: center;
}
#root main {
	width: 100%;
	background-color: #000;
	color: #FFF;
}
#root main .main_inner {
	width: 100%;
	padding: 120px 0 70px 0;
}
#root main .main_inner .anchor_layout {
	width: 100%;
	max-width: none;
	margin: 0 auto;
}
#root main .main_inner .anchor_layout h2 {
	font-size: 16px;
	font-weight: 700;
	color: #F00E3B;
	text-shadow: 0px 0px 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35);
	text-align: center;
}
#root main .main_inner .anchor_layout ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	padding: 30px 4% 0 4%;
}
#root main .main_inner .anchor_layout ul li {
	width: 46%;
	height: 150px;
	margin: 0 1% 4px 1%;
}
#root main .main_inner .anchor_layout ul li a {
	display: block;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center top;
}
#root main .main_inner .anchor_layout ul li a:hover {
	background-position: center bottom;
}
#root main .main_inner .anchor_layout ul li:last-child {
	width: 94%;
	height: 110px;
	margin: 0;
}
#root main .main_inner .anchor_layout ul li a.season01 {
	background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_s1.png);
}
#root main .main_inner .anchor_layout ul li a.season02 {
	background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_s2.png);
}
#root main .main_inner .anchor_layout ul li a.season03 {
	background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_s3.png);
}
#root main .main_inner .anchor_layout ul li a.season04 {
	background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_s4.png);
}
#root main .main_inner .anchor_layout ul li a.upsidedown {
	background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_upside.png);
}
#root main .main_inner .season_layout {
	width: 94%;
	max-width: none;
	margin: 0 auto 40px auto;
	padding: 90px 0 0 0;
}
#root main .main_inner .season_layout h2 {
	width: 100%;
	text-align: center;
	padding: 0 0 16px 0;
}
#root main .main_inner .season_layout h2 img {
	width: 100%;
}
#root main .main_inner .season_layout > p {
	width: 100%;
	text-align: center;
	font-size: 14px;
	line-height: 22px;
	padding: 0 0 30px 0;
}
#root main .main_inner .season_layout .image_layout {
	width: 72%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}
#root main .main_inner .season_layout .image_layout img {
	width: 100%;
	height: auto;
	margin: 0 0 4px 0;
}
#root main .main_inner .eventnews {
	width: 100%;
	max-width: none;
	margin: 65px auto 40px auto;
}
#root main .main_inner .eventnews h2 {
	width: 70%;
	text-align: center;
	margin: 0 auto 24px auto;
}
#root main .main_inner .eventnews h2 img {
	width: 100%;
}
#root main .main_inner .eventnews > p {
	font-size: 12px;
	font-weight: 700;
	line-height: 26px;
	text-align: center;
	padding: 0 4%;
}
#root main .main_inner .eventnews > p.subject {
	font-size: 18px;
	margin-bottom: 4px;
}
#root main .main_inner .eventnews .links {
	width: 86%;
	max-width: none;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	padding: 20px 0 0 0;
}
#root main .main_inner .eventnews .links a {
	display: block;
	width: 100%;
	height: 108px;
	margin: 0;
	background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/button_shibuya.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;
}
#root main .main_inner .eventnews .links a:hover {
	background-position: center bottom;
}
#root aside {
	width: 100%;
}
#root aside .aside_inner {
	width: 100%;
	max-width: none;
	margin: 0 auto;
	padding: 0 0 18vw 0;
}
#root aside .text_links {
	width: 100%;
	padding: 40px 0;
}
#root aside .text_links h2 {
	text-align: center;
	font-size: 18px;
	font-weight: 400;
	margin-bottom: 2vw;
}
#root aside .text_links > p {
	text-align: center;
	font-size: 18px;
	padding: 20px 0;
	display: none;
}
#root aside .text_links ul {
	width: 100%;
	padding: 0 4%;
}
#root aside .text_links ul li {
	margin-bottom: 4px;
	text-align: center;
}
#root aside .text_links ul li a {
	font-size: 13px;
	text-decoration: underline;
}
#root aside .text_links ul li a:hover {
	text-decoration: none;
}
#root aside .banner_links {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	padding: 0 4%;
}
#root aside .banner_links a {
	display: block;
	width: 776px;
	margin-bottom: 5vw;
}
#root aside .aside_inner > h3 {
	font-size: 22px;
	font-weight: 400;
	text-align: center;
	padding: 0 4%;
}
#root aside .aside_inner > p {
	font-size: 15px;
	text-align: center;
	line-height: 22px;
	padding: 0 4%;
}
#root aside .aside_inner > p.subject {
	font-size: 22px;
	padding: 5vw 0;
}
#root aside .button_links {
	width: 376px;
	margin: 0 auto;
	padding: 2vw 4%;
}
#root aside .button_links .text {
	width: 100%;
	text-align: center;
}
#root aside .button_links .text a {
	display: inline-block;
	font-size: 14px;
	text-decoration: underline;
	margin: 5vw 0 8vw 0;
}
#root aside .button_links .text a:hover {
	text-decoration: none;
}
#root aside .button_links .button {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}
#root aside .button_links .button a {
	width: 100%;
	height: 52px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #1b1b1b;
	transition-duration: .18s;
	transition-property: border-color;
	transition-timing-function: cubic-bezier(.4,0,.2,1);
	border-radius: 13px;
	margin: 0 0 5vw 0;
}





#root .page_top {
	width: 68px;
	position: fixed;
	bottom: 40px;
	right: 15px;
	opacity: 0;
}
.pc_view {
	display: none;
}
.sp_view {
	display: block;
}
@media screen and (min-width: 813px) {/* PC */
	#root {
		width: 100%;
		/*font-family: 'GUJPCorporate', 'Avenir Next', Roboto, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'メイリオ', Meiryo, sans-serif;*/
		font-weight: 400;
		letter-spacing: 0.05rem;
		position: relative;
		z-index: 0;
	}
	#root .header {
		width: 100%;
		background-color: #000;
		color: #FFF;
	}
	#root .header .header_inner {
		width: 100%;
		min-width: 869px;
		margin: 0 auto;
	}
	#root .header .header_inner .subject {
		font-size: 30px;
		font-weight: 700;
		color: #F00E3B;
		text-shadow: 0px 0px 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35);
		padding: 48px 0 30px 0;
		text-align: center;
	}
	#root .header .header_inner .banner {
		width: 100%;
		max-width: 869px;
		margin: 0 auto 40px auto;
	}
	#root .header .header_inner > p {
		width: 100%;
		max-width: 869px;
		margin: 0 auto;
		font-size: 18px;
		font-weight: 700;
		line-height: 45px;
		text-align: center;
	}
	#root main {
		width: 100%;
		background-color: #000;
		color: #FFF;
	}
	#root main .main_inner {
		width: 100%;
		padding: 120px 0 70px 0;
	}
	#root main .main_inner .anchor_layout {
		width: 100%;
		max-width: 880px;
		margin: 0 auto;
	}
	#root main .main_inner .anchor_layout h2 {
		font-size: 30px;
		font-weight: 700;
		color: #F00E3B;
		text-shadow: 0px 0px 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35), 0 0 5px rgba(240,14,59,0.35);
		text-align: center;
	}
	#root main .main_inner .anchor_layout ul {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		padding: 56px 0 0 0;
	}
	#root main .main_inner .anchor_layout ul li {
		width: 204px;
		height: 190px;
		margin: 0 8px 16px 8px;
	}
	#root main .main_inner .anchor_layout ul li a {
		display: block;
		width: 100%;
		height: 100%;
		background-position: center top;
		background-repeat: no-repeat;
		background-size: 100% auto;
	}
	#root main .main_inner .anchor_layout ul li a:hover {
		background-position: center bottom;
	}
	#root main .main_inner .anchor_layout ul li:last-child {
		width: 422px;
		height: 138px;
		margin: 0;
	}
	#root main .main_inner .anchor_layout ul li a.season01 {
		background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_s1.png);
	}
	#root main .main_inner .anchor_layout ul li a.season01:hover {
		background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_hover_s1.png);
	}
	#root main .main_inner .anchor_layout ul li a.season02 {
		background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_s2.png);
	}
	#root main .main_inner .anchor_layout ul li a.season02:hover {
		background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_hover_s2.png);
	}
	#root main .main_inner .anchor_layout ul li a.season03 {
		background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_s3.png);
	}
	#root main .main_inner .anchor_layout ul li a.season03:hover {
		background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_hover_s3.png);
	}
	#root main .main_inner .anchor_layout ul li a.season04 {
		background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_s4.png);
	}
	#root main .main_inner .anchor_layout ul li a.season04:hover {
		background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_hover_s4.png);
	}
	#root main .main_inner .anchor_layout ul li a.upsidedown {
		background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_upside.png);
	}
	#root main .main_inner .anchor_layout ul li a.upsidedown:hover {
		background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/anchor_upside_hover.png);
	}
	#root main .main_inner .season_layout {
		width: 100%;
		max-width: 869px;
		margin: 0 auto 40px auto;
		padding: 145px 0 0 0;
	}
	#root main .main_inner .season_layout h2 {
		width: 100%;
		text-align: center;
		padding: 0 0 26px 0;
	}
	#root main .main_inner .season_layout h2 img {
		width: 455px;
	}
	#root main .main_inner .season_layout > p {
		width: 100%;
		text-align: center;
		font-size: 18px;
		line-height: 27px;
		padding: 0 0 50px 0;
	}
	#root main .main_inner .season_layout .image_layout {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
	}
	#root main .main_inner .season_layout .image_layout img {
		width: 392px;
		height: auto;
		margin: 0 7.5px 15px 7.5px;
	}
	#root main .main_inner .eventnews {
		width: 100%;
		max-width: 869px;
		margin: 145px auto 40px auto;
	}
	#root main .main_inner .eventnews h2 {
		text-align: center;
		margin: 0 auto 24px auto;
	}
	#root main .main_inner .eventnews h2 img {
		width: 330px;
	}
	#root main .main_inner .eventnews > p {
		font-size: 18px;
		font-weight: 700;
		line-height: 45px;
		text-align: center;
		padding: 0;
	}
	#root main .main_inner .eventnews > p.subject {
		font-size: 24px;
		margin-bottom: 10px;
	}
	#root main .main_inner .eventnews .links {
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		padding: 50px 0 0 0;
	}
	#root main .main_inner .eventnews .links a {
		display: block;
		width: 422px;
		height: 138px;
		margin: 0;
		background-image: url(/jp/ja/special-feature/contents/collaboration/stranger-things/images/button_shibuya.png);
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 100% auto;
	}
	#root main .main_inner .eventnews .links a:hover {
		background-position: center bottom;
	}
	#root aside {
		width: 100%;
	}
	#root aside .aside_inner {
		width: 100%;
		max-width: 725px;
		margin: 0 auto;
		padding: 0 0 8vw 0;
	}
	#root aside .text_links {
		width: 100%;
		padding: 40px 0;
	}
	#root aside .text_links h2 {
		text-align: center;
		font-size: 32px;
		font-weight: 400;
		margin-bottom: 2vw;
	}
	#root aside .text_links > p {
		text-align: center;
		font-size: 18px;
		padding: 20px 0;
		display: none;
	}
	#root aside .text_links ul {
		width: 100%;
		padding: 0;
	}
	#root aside .text_links ul li {
		margin-bottom: 4px;
		text-align: center;
	}
	#root aside .text_links ul li a {
		font-size: 15px;
		text-decoration: underline;
	}
	#root aside .text_links ul li a:hover {
		text-decoration: none;
	}
	#root aside .banner_links {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		padding: 0;
	}
	#root aside .banner_links a {
		display: block;
		width: 776px;
		margin-bottom: 1.5vw;
	}
	#root aside .aside_inner > h3 {
		font-size: 32px;
		font-weight: 400;
		text-align: center;
		padding: 0;
	}
	#root aside .aside_inner > p {
		font-size: 15px;
		text-align: center;
		line-height: 22px;
		padding: 0;
	}
	#root aside .aside_inner > p.subject {
		font-size: 32px;
		padding: 2vw 0;
	}
	#root aside .button_links {
		width: 376px;
		margin: 0 auto;
		padding: 2vw 0;
	}
	#root aside .button_links .text {
		width: 100%;
		text-align: center;
	}
	#root aside .button_links .text a {
		display: inline-block;
		font-size: 15px;
		text-decoration: underline;
		margin: 0 0 2vw 0;
	}
	#root aside .button_links .text a:hover {
		text-decoration: none;
	}
	#root aside .button_links .button {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
	}
	#root aside .button_links .button a {
		width: 100%;
		height: 52px;
		display: flex;
		justify-content: center;
		align-items: center;
		border: 1px solid #1b1b1b;
		transition-duration: .18s;
		transition-property: border-color;
		transition-timing-function: cubic-bezier(.4,0,.2,1);
		border-radius: 13px;
		margin: 0 0 1.5vw 0;
	}
	#root .page_top {
		width: 136px;
		position: fixed;
		bottom: 40px;
		right: 30px;
		opacity: 0;
	}
	.pc_view {
		display: block;
	}
	.sp_view {
		display: none;
	}
}