@charset "utf-8";

.cf:after {
	content:'';
	display: block;
	clear: both;
}

body {
	min-width:1024px;
	background: #000;
	font-size:14px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

#wrapper {
	position:relative;
}
div#sqexFooter {
	position:relative;
	z-index:1;
}
img {
	vertical-align:top;
}
a.imghover:hover img {
	opacity: 0.7;
}
ul {
	margin:0;
	padding:0;
	list-style:none;
}
h1 {
	margin:0;
}
#pagetop {
	width:100px;
	height: 53px;
	display: block;
	overflow: hidden;
	margin:0 auto;
}
#pagetop:hover img {
	margin-top:-53px;
}
/* ▼背景　*/
#parallax_bg {
	position:fixed;
	top:0;
	width:110%;
	min-height:100%;
	z-index:0;
	min-width:1024px;
	margin-left:-5%;
}
#background {
	width:100%;
	position:absolute;
	top:0;
	left:0;
	background:url(../images/pc/common/bg.gif) center 35px;
	overflow:hidden;
}
#bg_marks {
    width: 168px;
	margin:0;
    position: absolute;
	top:35px;
    left: 50%;
    margin-left: -84px;
	z-index: 0;
}
#bg_marks .marks_wrap {
	position: relative;
	height: 1992px;
}
#bg_marks li {
	display:block;
	width:40px;
	height:40px;
	background-image:url(../images/pc/common/bg_icon.png);
	position:absolute;
	overflow:hidden;
}
	/*種類*/
	#bg_marks li.w1 {
		background-position:0 -40px;
	}
	#bg_marks li.w2 {
		background-position:-40px -40px;
	}
	#bg_marks li.w3 {
		background-position:-80px -40px;
	}
	#bg_marks li.w4 {
		background-position:-120px -40px;
	}
	#bg_marks li.w5 {
		background-position:-160px -40px;
	}
	#bg_marks li.w6 {
		background-position:-200px -40px;
	}
	
	#bg_marks li.g1 {
		background-position:0 0;
	}
	#bg_marks li.g2 {
		background-position:-40px 0;
	}
	#bg_marks li.g3 {
		background-position:-80px 0;
	}
	#bg_marks li.g4 {
		background-position:-120px 0;
	}
	#bg_marks li.g5 {
		background-position:-160px 0;
	}
	#bg_marks li.g6 {
		background-position:-200px 0;
	}
	#bg_marks li.g7 {
		background-position:-240px 0;
	}
	
	/*位置*/
	#bg_marks li.icon_a01 {
		top: 89px;
		left: -252px;
	}
	#bg_marks li.icon_a02 {
		top: 127px;
		left: 798px;
	}
	#bg_marks li.icon_a03 {
		top: 130px;
		left: -797px;
	}
	#bg_marks li.icon_a04 {
		top: 338px;
		left: -670px;
	}
	#bg_marks li.icon_a05 {
		top: 502px;
		left: -253px;
	}
	#bg_marks li.icon_a06 {
		top: 505px;
		left: 505px;
	}
	#bg_marks li.icon_a07 {
		top: 586px;
		left: -757px;
	}
	#bg_marks li.icon_a08 {
		top: 791px;
		left: -545px;
	}
	#bg_marks li.icon_a09 {
		top: 792px;
		left: 630px;
	}
	#bg_marks li.icon_a10 {
		top: 834px;
		left: 923px;
	}
	#bg_marks li.icon_a11 {
		top: 957px;
		left: -210px;
	}
	#bg_marks li.icon_a12 {
		top: 1001px;
		left: -589px;
	}
	#bg_marks li.icon_a13 {
		top: 1124px;
		left: 462px;
	}
	#bg_marks li.icon_a14 {
		top: 1208px;
		left: 883px;
	}
	#bg_marks li.icon_a15 {
		top: 1169px;
		left: -839px;
	}
	#bg_marks li.icon_a16 {
		top: 1251px;
		left: -253px;
	}
	#bg_marks li.icon_a17 {
		top: 1455px;
		left: -547px;
	}
	#bg_marks li.icon_a18 {
		top: 1540px;
		left: 713px;
	}
	#bg_marks li.icon_a19 {
		top: 1706px;
		left: 545px;
	}
	#bg_marks li.icon_a20 {
		top: 1749px;
		left: -420px;
	}
	
	#bg_marks li.icon_b00 {
		top: 48px;
		left: -377px;
	}
	#bg_marks li.icon_b01 {
		top: 89px;
		left: -839px;
	}
	#bg_marks li.icon_b02 {
		top: 128px;
		left: -546px;
	}
	#bg_marks li.icon_b03 {
		top: 212px;
		left: 546px;
	}
	#bg_marks li.icon_b04 {
		top: 422px;
		left: -504px;
	}
	#bg_marks li.icon_b05 {
		top: 462px;
		left: 716px;
	}
	#bg_marks li.icon_b06 {
		top: 588px;
		left: 841px;
	}
	#bg_marks li.icon_b07 {
		top: 625px;
		left: -378px;
	}
	#bg_marks li.icon_b08 {
		top: 791px;
		left: 293px;
	}
	#bg_marks li.icon_b09 {
		top: 876px;
		left: -798px;
	}
	#bg_marks li.icon_b10 {
		top: 918px;
		left: 420px;
	}
	#bg_marks li.icon_b11 {
		top: 1086px;
		left: 672px;
	}
	#bg_marks li.icon_b12 {
		top: 1335px;
		left: -166px;
	}
	#bg_marks li.icon_b13 {
		top: 1374px;
		left: -462px;
	}
	#bg_marks li.icon_b14 {
		top: 1416px;
		left: 420px;
	}
	#bg_marks li.icon_b15 {
		top: 1456px;
		left: 798px;
	}
	#bg_marks li.icon_b16 {
		top: 1621px;
		left: -715px;
	}
	#bg_marks li.icon_b17 {
		top: 1791px;
		left: 884px;
	}
	
	/* animation mask */
	span.shine:after {
		content:'';
		background-image:url(../images/pc/common/bg_icon_mask.png);
		background-repeat:no-repeat;
		width:40px;
		height:40px;
		display:block;
		position:absolute;
		top:-20px;
		left:-20px;
		border:20px solid #000;
	}
	#bg_marks li.w1 span.shine:after {
		background-position:0 -40px;
	}
	#bg_marks li.w2 span.shine:after {
		background-position:-40px -40px;
	}
	#bg_marks li.w3 span.shine:after {
		background-position:-80px -40px;
	}
	#bg_marks li.w4 span.shine:after {
		background-position:-120px -40px;
	}
	#bg_marks li.w5 span.shine:after {
		background-position:-160px -40px;
	}
	#bg_marks li.w6 span.shine:after {
		background-position:-200px -40px;
	}
	
	#bg_marks li.g1 span.shine:after {
		background-position:0 0;
	}
	#bg_marks li.g2 span.shine:after {
		background-position:-40px 0;
	}
	#bg_marks li.g3 span.shine:after {
		background-position:-80px 0;
	}
	#bg_marks li.g4 span.shine:after {
		background-position:-120px 0;
	}
	#bg_marks li.g5 span.shine:after {
		background-position:-160px 0;
	}
	#bg_marks li.g6 span.shine:after {
		background-position:-200px 0;
	}
	#bg_marks li.g7 span.shine:after {
		background-position:-240px 0;
	}
	
	/* animation */
	#bg_marks li span.shine:before { 
		content:'';
		position: absolute;
		top: 0;
		left: 0;
		width:40px;
		height:40px;
		display:block;
		transform: rotate3d(0,0,1,-75deg) translate3d(0,-90%,0);
	}
	#bg_marks li span.shine1:before {
		animation: shine 0.6s ease-in-out 0.2s;
	}
	#bg_marks li span.shine2:before {
		animation: shine 0.6s ease-in-out 0s;
	}
	 
	@keyframes shine {
		0% {transform: rotate3d(0,0,1,-75deg) translate3d(0,-90%,0);background: rgba(255,255,255,0.7);}
		100% {transform: rotate3d(0,0,1,-75deg) translate3d(0,90%,0);background: rgba(255,255,255,0.7);}
	}
	
/* ▲背景　*/
#wrapper {
	min-width: 1024px;
	overflow: hidden;
}
#contents {
	position:relative;
	z-index:1;
	text-align:center;
	padding-bottom:60px;
}

/*-- mordal --*/
.mordal_wrap {
	position: fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background: url(../images/pc/common/bg_alpha.png);
	z-index: 9999;
	display: none;
	overflow: auto;
}
.sp-scrollbar {
	width: 10px;
	margin: 0 0 0 15px;
	background-color: #2c2c2c;
	cursor: pointer;
}
.sp-scrollbar .sp-thumb {
		background-color: #5d5d5d;
}

/*-- index --*/
#index #links {
	position:absolute;
	top:10px;
	left:0;
	width:100%;
}
#index #links ul {
	width:100%;
	max-width:1280px;
	text-align:right;
	margin:0 auto;
}
#index #links li {
	margin:0 8px;
	display:inline-block;
}
#index #logo {
	margin:0 auto;
	padding:0;
	width:680px;
	height:510px;
}
#index .store-links {
	font-size: 0;
}
#index .store-links-bnr {
	display:inline-block;
	padding: 40px 0 10px;
}
#index .store-links-bnr:first-child {
	margin-right: 20px;
}
#index .store-links-bnr:hover {
	opacity: 0.6;
}
#index .store-links-btn {
	display:inline-block;
	padding: 40px 10px 10px;
}
#index .store-links-btn:hover {
	opacity: 0.6;
}
#index #line {
	width:100%;
	height:400px;
	height:450px;
	background:url(../images/pc/index/line_bg01.png) center 76px no-repeat;
	padding-top:40px;
	margin-top:250px;
	box-sizing:border-box;
}
#index #line .inner {
	width:100%;
	height:275px;
	background:url(../images/pc/index/line_bg02.png) top center;
}
#index #line .inner_inner {
	margin-top: 100px;
	width:100%;
	height:275px;
	background:url(../images/pc/index/line_bg03.png) top center no-repeat;
}
#index #line .cnt {
	position:relative;
	top:-230px;
	top:-362px;
}
#index #line #bnr {
	width:816px;
	margin:0 auto;
}
#index #line .movie {
	margin:0 auto;
	width:500px;
	/* float: left; */
}
#index #line .movie a {
	display:block;
	width:500px;
	height:310px;
	overflow:hidden;
	margin:0 auto;
}
#index #line .movie a:hover img {
	margin-top:-330px;
}
#index #line .bnr {
	width:316px;
	/* float: right; */
	text-align: center;
	/* margin-top:80px; */
	margin: 0 auto 20px;
}
#index #line .bnr li {
	/* margin-left:-30px; */
	margin-top: 12px;
    display: block;
}
#index #line .bnr li a {
	display: inline-block;
	overflow: hidden;
}
#index #line .bnr li.bnr1 a {
	width:315px;
	height: 102px;
}
#index #line .bnr li.bnr2 a {
	width:316px;
	height: 80px;
}
#index #line .bnr li.bnr1 a:hover img {
	margin-top:-102px;
}
#index #line .bnr li.bnr2 a:hover img {
	margin-top:-80px;
}
#index #line .link {
	width:990px;
	margin:10px auto 0 auto;
	overflow: hidden;
}
#index #line .link li {
	width:165px;
	height: 165px;
	float: left;
	position: relative;
	display: block;
}
#index #line .link li a {
	display: block;
	width:190px;
	height: 180px;
	background-repeat: no-repeat;
	background-position: -5px -10px;
	position: absolute;
	top:0;
	left:-12px;
	text-indent: 200%;
	white-space: nowrap;
	overflow: hidden;
}
#index #line .link li a:hover {
	background-position: -5px -210px;
}
#index #line .link .link1 a {
	background-image: url(../images/pc/index/logo1.png);
}
#index #line .link .link2 a {
	background-image: url(../images/pc/index/logo2.png);
}
#index #line .link .link3 a {
	background-image: url(../images/pc/index/logo3.png);
}
#index #line .link .link4 a {
	background-image: url(../images/pc/index/logo4.png);
}
#index #line .link .link5 a {
	background-image: url(../images/pc/index/logo5.png);
}
#index #line .link .link6 a {
	background-image: url(../images/pc/index/logo6.png);
}
#bottom {
	width:980px;
	margin:0 auto;
}
#bottom .spec {
	width:710px;
	float: left;
}
#bottom ul {
	width:260px;
	float: left;
	margin-top:20px;
}
#bottom ul li {
	margin-bottom:10px;
}
#bottom ul li a.blog {
	margin-left:4px;
}
#guide {
	overflow: auto;	
}
#guide .inner {
	width:780px;
	margin:0 auto;
	line-height: 190%;
	font-size: 13px;
	padding:180px 0 50px;
	position: relative;
	color: #fff;
}
#guide .inner p {
	margin-bottom:2em;
}
#guide .inner strong {
	font-weight: bold;
}
#guide .inner ol,
#guide .inner ul {
	margin-bottom:1em;
}
#guide .inner ol {
	padding:0 0 0 1.5em;
}
#guide .inner ol li {
	margin-bottom:2em;
}
#guide .inner ul {
	padding:0;
}
#guide .inner ul li {
	margin-bottom:2em;
	text-indent: -1em;
	padding-left:1em;
}
#guide .inner ul li:before {
	content:'●';
	font-weight: bold;
}
#guide .inner .title {
	font-weight: bold;
	text-align: center;
	font-size: 23px;
	margin-bottom:70px;
}
#guide .inner .close {
	background: url(../images/pc/index/close.png) 0 0 no-repeat;
	width:48px;
	height: 48px;
	display: block;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	position: absolute;
	top:155px;
	right:0;
}
/*-- introduction --*/
#backtotop {
	width:100%;
	position: fixed;
	z-index: 2;
	top:38px;
}
#backtotop h1 {
	width:980px;
	margin:0 auto;
	text-align: left;
	position: relative;
}
#backtotop a {
	display: inline-block;
	width:180px;
	height: 140px;
	overflow: hidden;
	position: absolute;
	top:0;
	left:0;
}
#backtotop a:hover img {
	margin-top:-140px;
}
#introduction .section {
	margin-bottom:40px;
	padding-top:300px;
}
#introduction .section:last-child {
	margin-bottom:20px;
}
#introduction .section .btn {
	text-align: center;
}
#introduction .section .btn a {
	display: inline-block;
	width:360px;
	height: 100px;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
#introduction .section .btn a:hover img {
	margin-top:-100px;
}
#introduction .section .section_wrap {
	background-repeat: repeat;
	background-position: top center;
	position: relative;
}
#introduction .section .section_inner {
	background-repeat: repeat-y;
	background-position: top center;
	min-width: 1280px;
	overflow: hidden;
}
#introduction .section .section_logo {
	position: absolute;
	top:-230px;
	width:100%;
	text-align: center;
}
#introduction .section .section_image {
	position: absolute;
	top:0;
	left:50%;
	width: 1400px;
	margin-left:-700px;
}
#introduction .section .section_image .review {
	position: absolute;
    left: 50%;
	width: 120px;
	height: 100px;
	display: block;
	background: url(../images/pc/introduction/btn_review.png) 0 0 no-repeat;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
}
#introduction .section .section_image .review:hover {
	background-position: 0 -100px;
}
/*s1*/
#introduction .s1 .section_wrap {
	background-image: url(../images/pc/introduction/s1_bg.png);
}
#introduction .s1 .section_inner {
	height: 727px;
	background-image: url(../images/pc/introduction/s1_bg_alpha.png);
}
#introduction .s1 .review {
	top:90px;
    margin-left: 350px;
}
/*s2*/
#introduction .s2 .section_wrap {
	background-image: url(../images/pc/introduction/s2_bg.png);
}
#introduction .s2 .section_inner {
	height: 494px;
	background-image: url(../images/pc/introduction/s2_bg_alpha.png);
}
#introduction .s2 .review {
	top:50px;
    margin-left: 370px;
}
/*s3*/
#introduction .s3 .section_wrap {
	background-image: url(../images/pc/introduction/s3_bg.png);
}
#introduction .s3 .section_inner {
	height: 651px;
	background-image: url(../images/pc/introduction/s3_bg_alpha.png);
}
/*s4*/
#introduction .s4 .section_wrap {
	background-image: url(../images/pc/introduction/s4_bg.png);
}
#introduction .s4 .section_inner {
	height: 719px;
	background-image: url(../images/pc/introduction/s4_bg_alpha.png);
}
#introduction .s4 .review {
	top:60px;
    margin-left: 300px;
}
/*s5*/
#introduction .s5 .section_wrap {
	background-image: url(../images/pc/introduction/s5_bg.png);
}
#introduction .s5 .section_inner {
	height: 714px;
	background-image: url(../images/pc/introduction/s5_bg_alpha.png);
}
#introduction .s5 .review {
	top:60px;
    margin-left: 360px;
}
/*s6*/
#introduction .s6 .section_wrap {
	background-image: url(../images/pc/introduction/s6_bg.png);
}
#introduction .s6 .section_inner {
	height: 494px;
	background-image: url(../images/pc/introduction/s6_bg_alpha.png);
}

#review .review_wrap {
	width:640px;
	height: 436px;
	position: absolute;
	top:50%;
	left:50%;
	margin:-218px 0 0 -320px;
}
#review .review_wrap .close {
	position: absolute;
	top:-50px;
	right:0;
}
#review .review_wrap .caption {
	position: absolute;
	bottom:-90px;
	left:0;
}
#review .review_inner {
	width:600px;
	height: 436px;
	margin:0 auto;
	color: #fff;
	box-sizing: border-box;
	overflow: hidden;
}
#review .review_inner p {
	margin:0 0 2em 0;
	line-height: 180%;
}
#review.tablet .review_wrap {
	width:640px;
	margin:10% auto 0;
	box-sizing: border-box;
	position: relative;
	top:0;
	left:0;
}
#review.tablet .review_inner {
	overflow: auto;
	padding-right:0.5em;
	height:auto;
}
#review.tablet .review_wrap .caption {
	top:auto;
	bottom:auto;
}
#review.tablet .review_inner::-webkit-scrollbar {
  	background:#2c2c2c;
 	width:10px;
	height: 10px;
}
#review.tablet .review_inner::-webkit-scrollbar-thumb {
  	background:#5d5d5d;
}
/*-- special --*/
#special {
	padding:180px 0 130px;
}
#special #pagettl {
	margin-bottom:60px;
}
#special .section .section_ttl {
	margin-bottom:10px;
}
#special .section .section_wrap {
	background: url(../images/pc/special/sec1_inner_bg.png);
	position: relative;
}
#special .section .section_wrap:before {
	content: url(../images/pc/special/sec1_inner_bg_before.png);
	display: block;
	position: absolute;
	top:-60px;
	left: 50%;
	margin-left: -900px;
}
#special .section .section_wrap:after {
	content: url(../images/pc/special/sec1_inner_bg_after.png);
	display: block;
	position: absolute;
	bottom:-50px;
	left: 50%;
	margin-left: -900px;
}
#special .section .section_inner {
	background: url(../images/pc/special/sec1_inner_bg_alpha.png) top center repeat-y;
	padding:30px 0 35px;
}
#special .section .section_inner h1 {
	background: url(../images/pc/special/sec1_inner_ttl.png) top center no-repeat;
	height: 66px;
	margin:0;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
#special .section .section_inner .cnt {
	width:940px;
	margin:25px auto 0 auto;
}
#special .section .section_inner .cnt .left {
	float: left;
	width:400px;
	text-align: right;
}
#special .section .section_inner .cnt a {
	display: inline-block;
	margin:20px -20px 0 0;
	width:320px;
	height: 90px;
	overflow: hidden;
}
#special .section .section_inner .cnt a:hover img {
	margin-top:-90px;
}
#special .section .section_inner .cnt .right {
	float: right;
	width:512px;
}