/*Copyright(c) 2017, All rights reserved.
* Stylesheet/Hoja de estilos: Estilos generales
* Project/Proyecto: Molas puzzle / Mottif - Abril 2017
* Author/Autor: Jesús Piedrahita, Mottif - jesus.piedrahita@mottif.com / www.mottif.com */

/*Fonts:
font-family: 'Quicksand', sans-serif;
font-family: 'NeutraTextBook';
font-family: 'NeutraTextBookItalic';
font-family: 'NeutraTextBold';
font-family: 'NeutraTextBoldItalic'; */

@import url(https://fonts.googleapis.com/css?family=Quicksand:400,700,300);
@font-face {
    font-family: 'NeutraTextBook';
    src: url('fonts/NeutraTextBook.eot');
    src: url('fonts/NeutraTextBook.eot') format('embedded-opentype'), url('fonts/NeutraTextBook.woff2') format('woff2'), url('fonts/NeutraTextBook.woff') format('woff'), url('fonts/NeutraTextBook.ttf') format('truetype'), url('fonts/NeutraTextBook.svg#NeutraTextBook') format('svg');
}
@font-face {
    font-family: 'NeutraTextBookItalic';
    src: url('fonts/NeutraTextBookItalic.eot');
    src: url('fonts/NeutraTextBookItalic.eot') format('embedded-opentype'), url('fonts/NeutraTextBookItalic.woff2') format('woff2'), url('fonts/NeutraTextBookItalic.woff') format('woff'), url('fonts/NeutraTextBookItalic.ttf') format('truetype'), url('fonts/NeutraTextBookItalic.svg#NeutraTextBookItalic') format('svg');
}
@font-face {
    font-family: 'NeutraTextBold';
    src: url('fonts/NeutraTextBold.eot');
    src: url('fonts/NeutraTextBold.eot') format('embedded-opentype'), url('fonts/NeutraTextBold.woff2') format('woff2'), url('fonts/NeutraTextBold.woff') format('woff'), url('fonts/NeutraTextBold.ttf') format('truetype'), url('fonts/NeutraTextBold.svg#NeutraTextBold') format('svg');
}
@font-face {
    font-family: 'NeutraTextBoldItalic';
    src: url('fonts/NeutraTextBoldItalic.eot');
    src: url('fonts/NeutraTextBoldItalic.eot') format('embedded-opentype'), url('fonts/NeutraTextBoldItalic.woff2') format('woff2'), url('fonts/NeutraTextBoldItalic.woff') format('woff'), url('fonts/NeutraTextBoldItalic.ttf') format('truetype'), url('fonts/NeutraTextBoldItalic.svg#NeutraTextBoldItalic') format('svg');
}

/*Generales*/
html, body, #mainWrapper {
	display: block;
	width: 100%;
	margin: 0px;
	padding: 0px;
	position: relative;
	box-sizing: border-box;
}
html, body {
	background: #f5f3f0 url(../images/site/bg.jpg) no-repeat center center / cover;
	background-attachment: fixed;
	height: 100%;
	font-family: 'NeutraTextBook';
	font-size: 1rem;
	line-height: 1.65rem;
	color: #333333;
}
#mainWrapper {
	z-index: 1;
	min-height: 100%;
}
#pageLoading {
	display: block;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background: #000 url(../images/site/pageLoading.gif) no-repeat center center / 50px auto;
	z-index: 100;
}
p {
	margin: 0px 0px 1.65rem;
}
strong, b {
	font-weight: 700;
}
.format2 strong, .format2 b {
	font-weight: 400;
	font-family: 'NeutraTextBold';
}
em, i {
	font-style: italic;
}
.gHidden {
	display: none !important;
}
.format2 em, .format2 i {
	font-weight: 400;
	font-family: 'NeutraTextBookItalic';
}
.format2 strong em, .format2 em strong {
	font-weight: 400;
	font-family: 'NeutraTextBoldItalic';
}
a {
	color: #333333;
}
.gBtn {
	display: inline-block;
	vertical-align: middle;
	max-width: 100%;
	position: relative;
	box-sizing: border-box;
	border: 2px solid #ff1744;
	background: none;
	outline: none;
	border-radius: 25px;
	padding: 16px 40px 15px;
	font-family: 'NeutraTextBold';
	font-size: 0.95rem;
	line-height: 1rem;
	letter-spacing: 0.15rem;
	color: #ff1744;
	text-transform: uppercase;
	transition: color 0.25s ease, background-color 0.25s ease;
}
.gBtn:hover {
	background: #ff1744;
	color: #FFF;
}
.gBtn:active {
	top: 2px;
}
.gBtn.icoNext {
	padding-right: 58px;
}
.gBtn.icoNext::after {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	box-sizing: border-box;
	border-top: 2px solid #ff1744;
	border-right: 2px solid #ff1744;
	position: absolute;
	top: 50%;
	right: 35px;
	transform: rotate(45deg) translate(0%, -50%);
	margin-top: -1px;
	transition: border-color 0.25s ease;
}
.gBtn.icoNext:hover::after {
	border-color: #FFF;
}

/*Social share*/
.gShare {
	display: block;
	font-family: 'Quicksand', sans-serif;
	font-size: 0rem;
	line-height: 1rem;
	font-weight: 700;
	text-transform: uppercase;
	text-align: center;
	color: #FFF;
	pointer-events: none;
}
.gShare li {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 11px;
	font-size: 0.8rem;
	letter-spacing: 0.06rem;
}
.gShare li:last-child {
	margin-right: 0px;
}
.gShare li a {
	display: block;
	width: 20px;
	height: 20px;
	text-align: left;
	text-indent: -9999px;
	position: relative;
	background: url(../images/site/socialNetworks.png) no-repeat;
	background-size: auto 20px;
	transition: opacity 0.25s ease;
	pointer-events: all;
}
.gShare li a:hover {
	opacity: 0.75;
}
.gShare li a:active {
	top: 2px;
}
.gShare li a.facebook {
	background-position: 1px center;
	width: 11px;
}
.sTwo .gShare li a.facebook {
	background-position: -10px center;
}
.gShare li a.twitter {
	background-position: -20px center;
}
.sTwo .gShare li a.twitter {
	background-position: -40px center;
}

/*Header - footer*/
.pageHeader, .pageFooter {
	display: block;
	width: 100%;
	margin: 0px;
	position: absolute;
	z-index: 10;
	left: 0px;
	box-sizing: border-box;
}
.pageHeader {
	top: 0px;
	height: 0px;
}
.pageFooter {
	bottom: 0px;
}
.pageHeader .gShare {
	float: right;
	margin: 50px 30px 0px 0px;
}
.pageHeader.sTwo .gShare {
	color: #607d8b;
}
.pageHeader .titPag {
	display: block;
	position: relative;
	float: left;
	font-family: 'Quicksand', sans-serif;
	line-height: 1rem;
	font-weight: 700;
	color: #FFF;
	margin: 30px 0px 0px 30px;
}
.pageHeader .titPag > * {
	display: inline-block;
	vertical-align: middle;
	margin: 0px;
}
.pageHeader .titPag img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 60px;
	margin-right: 15px;
}
.pageHeader .titPag h1 {
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.2rem;
	letter-spacing: 0.06rem;
}
.pageHeader.sTwo .titPag h1 {
	color: #e6223c;
	font-size: 1.2rem;
	letter-spacing: 0rem;
	line-height: 1.3rem;
}
.pageHeader .titPag h1 a {
	color: inherit;
}
.pageHeader .titPag h1 span {
	display: block;
	font-size: 0.85rem;
	line-height: 0.9rem;
	letter-spacing: 0.02rem;
	margin: 5px 0px 0px;
}
.pageFooter {
	background: #212121;
	color: #FFF;
	font-family: 'NeutraTextBold';
	font-size: 0rem;
	line-height: 0.9rem;
	text-align: center;
	padding: 10px 20px;
	letter-spacing: 0.15rem;
}
.pageFooter p, .pageFooter .logoM {
	display: inline-block;
	vertical-align: middle;
	font-size: 0.7rem;
}
.pageFooter p {
	margin: 0px;
	text-transform: uppercase;
}
.pageFooter .logoM {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translate(0%, -50%);
	transition: opacity 0.25s ease;
}
.pageFooter .logoM:hover {
	opacity: 0.75;
}
.pageFooter .logoM img {
	display: block;
	width: auto;
	height: 20px;
}

/*Pagina intro*/
.pageIntro {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0px;
	padding: 150px 140px 100px;
	position: relative;
	box-sizing: border-box;
	z-index: 1;
	font-size: 0rem;
	text-align: center;
}

/*Slider intro*/
.contSImages, .sliderImg {
	display: block;
	width: 100%;
	height: 100%;
}
.contSImages {
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 1;
}
.sliderImg .slick-list, .sliderImg .slick-track, .sliderImg .slick-slide {
	height: 100%;
}
.sliderImg figure {
	display: block;
	position: relative;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.sliderImg figure::before {
	content: '';
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 280px;
	background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
	background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
	filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#80000000', endColorstr='#00000000', GradientType=0);
}
.sliderImg figure img {
	display: none;
	max-width: 100%;
}

/*Contenido intro*/
.pageIntro .textIntro {
	display: block;
	width: 100%;
	max-width: 600px;
	background: rgba(0, 0, 0, 0.75);
	color: #FFF;
	font-size: 1rem;
	position: relative;
	z-index: 3;
	border-radius: 1.3rem;
	padding: 70px;
	margin: 0px auto;
	box-sizing: border-box;
}
.pageIntro .textIntro h2, .pageIntro .textIntro h3 {
	font-family: 'Quicksand', sans-serif;
	font-weight: 700;
	color: #FFC107;
}
.pageIntro .textIntro .titInt {
	display: inline-block;
	vertical-align: top;
	margin: 0px 0px 80px;
	text-align: right;
}
.pageIntro .textIntro .titInt img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0px auto;
}
.pageIntro .textIntro h2 {
	font-size: 4.9rem;
	line-height: 4rem;
	letter-spacing: -0.1rem;
	text-align: left;
}
.pageIntro .textIntro .subtitle {
	display: inline-block;
	vertical-align: top;
	margin: 12px 0px 0px;
	font-size: 1.2rem;
	line-height: 1.5rem;
	letter-spacing: 0.08rem;
	text-align: left;
}
.pageIntro .textIntro h3 {
	text-transform: uppercase;
	font-size: 1.1rem;
	line-height: 1.2rem;
	margin: 0px 0px 30px;
	letter-spacing: 0.3rem;
}
.pageIntro .textIntro .gText {
	font-size: 1.3rem;
	line-height: 2rem;
	color: #eeeeee;
	margin: 0px 0px 80px;
}
.pageIntro .textIntro .gText p:last-child {
	margin-bottom: 0px;
}
.pageIntro .textIntro .contBtn {
	display: block;
	font-family: 'NeutraTextBook';
	font-size: 0rem;
	line-height: 1rem;
	text-align: center;
}
.pageIntro .textIntro .contBtn .btn {
	display: inline-block;
	width: 33.3333333333%;
	margin: 0px;
	padding: 15px 0px;
	box-sizing: border-box;
	font-size: 0.95rem;
	color: #FFF;
	letter-spacing: 0.15rem;
	text-transform: uppercase;
	border-width: 2px 1px;
	border-color: #FFC107;
	border-style: solid;
	transition: background-color 0.25s ease;
}
.pageIntro .textIntro .contBtn .btn:hover {
	background: #ff1744;
}
.pageIntro .textIntro .contBtn .btn:first-child {
	border-left-width: 2px;
	border-top-left-radius: 25px;
	border-bottom-left-radius: 25px;
}
.pageIntro .textIntro .contBtn .btn:last-child {
	border-right-width: 2px;
	border-top-right-radius: 25px;
	border-bottom-right-radius: 25px;
}

/*Interna juego*/
.contGame, .descPiece {
	display: block;
	width: 100%;
	height: 100vh;
	margin: 0px;
	padding: 0px;
	box-sizing: border-box;
	text-align: center;
	position: relative;
	z-index: 1;
}
.descPiece {
	font-size: 0rem;
}
.fullGame .contGame, .descPiece {
	display: none;
}
.fullGame .descPiece {
	display: block;
}
.contGame .titleSec, .descPiece .titleSec {
	display: block;
	font-family: 'Quicksand', sans-serif;
	font-weight: 700;
	color: #e6223c;
	font-size: 1.8rem;
	line-height: 2rem;
	letter-spacing: 0.65rem;
	text-transform: uppercase;
	position: absolute;
	left: 0px;
	top: 9.25%;
	left: 50%;
	transform: translate(-50%, 0%);
	z-index: 7;
}
.contGame .titleSec {
	pointer-events: none;
}

/*Puzzle*/
.contPuzzle {
	display: block;
	width: 100%;
	height: 100%;
	position: static;
	text-align: center;
	box-sizing: border-box;
	padding: 0px 10px;
	font-size: 0rem;
}
.contPuzzle::before, .puzzle {
	display: inline-block;
	vertical-align: middle;
}
.contPuzzle::before {
	content: '';
	width: 0px;
	height: 100%;
}
.puzzle {
	margin: 0px;
	text-align: left;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
	pointer-events: none;
	overflow: hidden;
}
.puzzle * {
	user-select: none;
}
.puzzle::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	border: 3px solid #d6243a;
	box-sizing: border-box;
}
.puzzle img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 62vh;
	margin: 0px;
	position: relative;
	opacity: 0;
	transition: opacity 0.25s ease;
}
.showBG .puzzle img {
	opacity: 0.25;
}
.itemGrid {
	display: block;
	box-sizing: border-box;
	padding: 0px;
	margin: 0px;
	border: none;
	position: absolute;
	z-index: 2;
}

/*Fichas*/
.itemPuzzle {
	display: block;
	box-sizing: border-box;
	position: fixed !important;
	z-index: 5;
	transition: opacity 0.25s ease, visibility 0.25s ease;
}
.itemPuzzle span {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 6;
	overflow: hidden;
	pointer-events: none;
}
.itemPuzzle span svg {
	display: block;
}
.itemPuzzle span svg image {
	cursor: pointer;
	pointer-events: all;
	opacity: 1 !important;
}
.itemPuzzle.pep-active {
	z-index: 10;
}
.itemPuzzle.pep-active span {
	z-index: 11;
}
.itemPuzzle.disabled {
	z-index: 1;
	position: absolute !important;
}
.itemPuzzle.disabled span {
	z-index: 2;
}
.itemPuzzle.disabled span svg image {
	cursor: inherit;
	pointer-events: none;
}

/*Opciones puzzle*/
.contBFP {
	display: block;
	width: 100%;
	text-align: center;
	margin: 0px;
	font-family: 'NeutraTextBold';
	font-size: 0rem;
	line-height: 1rem;
	position: absolute;
	left: 0px;
	bottom: 9.25%;
}
.contBFP .btnFP {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 2.99%;
	box-sizing: border-box;
	padding: 17px 0px 17px 60px;
	border: none;
	outline: none;
	background: none;
	cursor: pointer;
	position: relative;
	font-size: 0.94rem;
	line-height: 1rem;
	letter-spacing: 0.17rem;
	text-transform: uppercase;
	color: #263238;
}
.contBFP .btnFP strong {
	font-weight: 400;
}
.contBFP .btnFP span, .contBFP .btnFP span::before, .contBFP .btnFP span::after {
	display: block;
	position: absolute;
	top: 50%;
}
.contBFP .btnFP span {
	width: 50px;
	height: 50px;
	box-sizing: border-box;
	border: 2px solid #ff1744;
	border-radius: 50%;
	left: 0px;
	margin: -25px 0px 0px 0px;
	transition: background-color 0.25s ease, border-color 0.25s ease;
}
.contBFP .btnFP:hover span, .contBFP .btnFP.hover span {
	background: #ff1744;
	border-color: #ff1744;
}
.contBFP .btnFP.active span {
	background: #ff8a80;
	border-color: #ff8a80;
}
.contBFP .btnFP span::before, .contBFP .btnFP span::after {
	content: '';
	left: 50%;
	width: 25px;
	height: 25px;
	background: url(../images/site/icoFP.png) no-repeat;
	background-size: auto 25px;
	transform: translate(-50%, -50%);
	transition: opacity 0.25s ease;
}
.contBFP .btnFP:hover span::before, .contBFP .btnFP.active span::before, .contBFP .btnFP span::after {
	opacity: 0;
}
.contBFP .btnFP span::before, .contBFP .btnFP:hover span::after, .contBFP .btnFP.active span::after, .contBFP .btnFP.hover span::after {
	opacity: 1;
}
.contBFP .btnFP.ico1 span::before {
	background-position: 0px center;
}
.contBFP .btnFP.ico1 span::after {
	background-position: -25px center;
}
.contBFP .btnFP.ico2 span::before {
	background-position: -50px center;
}
.contBFP .btnFP.ico2 span::after {
	background-position: -75px center;
}
.contBFP .btnFP.ico3 span::before, .contBFP .btnFP.ico3 span::after {
	width: 19px;
}
.contBFP .btnFP.ico3 span::before {
	background-position: -99px center;
}
.contBFP .btnFP.ico3 span::after {
	background-position: -117px center;
}

/*Descripcion puzzle*/
.descPiece::before, .descPiece .cCenter, .descPiece .cRight::before, .gNoti {
	display: inline-block;
	vertical-align: middle;
}
.descPiece::before, .descPiece .cRight::before {
	content: '';
	width: 0px;
	height: 100%;
}
.descPiece .cCenter {
	width: 100%;
	position: relative;
}
.descPiece .cLeft, .descPiece .cRight {
	display: block;
	width: 25%;
	height: 100%;
	margin: 0px;
	padding: 0px 4%;
	box-sizing: border-box;
	position: absolute;
	top: 0px;
}
.descPiece .cLeft {
	left: 0px;
	text-align: left;
	/*padding-bottom:80px;*/
}
.descPiece .cRight {
	right: 0px;
	font-size: 0rem;
}
.descPiece .mainImage {
	display: block;
	margin: 0px auto;
	width: 50%;
	max-width: 960px;
}
.descPiece .mainImage img {
	display: block;
	margin: 0px auto;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 62vh;
}
.descPiece .gDesc {
	display: block;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	padding: 0px;
	/*margin:0px 0px 30px;*/
	margin: 0px;
	overflow: auto;
	font-family: 'NeutraTextBook';
	font-weight: 400;
	font-size: 1.3rem;
	line-height: 1.9rem;
	color: #263238;
}
.descPiece .gDesc img {
	display: block;
	width: 100%;
	max-width: 350px;
	height: auto;
	margin: 0px auto 1.9rem;
}
.descPiece .gDesc p {
	margin: 0px 0px 1.9rem;
}
.descPiece .gDesc p:last-child {
	margin-bottom: 0px;
}
.gNoti {
	width: 100%;
	margin: 0px;
	font-family: 'Quicksand', sans-serif;
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 1.4rem;
	text-align: center;
	color: #0e0e0e;
}
.gNoti .title {
	display: block;
	margin: 0px 0px 25px;
	font-size: 2.8rem;
	line-height: 3rem;
	font-weight: 700;
	letter-spacing: -0.04rem;
}
.gNoti p {
	margin: 0px 0px 30px;
}

/*Ayuda*/
.contHelp {
	display: none;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: 50;
	background: rgba(0, 0, 0, 0.85);
	color: #FFF;
}
.contHelp .titH, .contHelp .btnCH {
	display: block;
	position: absolute;
	top: 50px;
	z-index: 5;
	user-select: none;
}
.contHelp .titH {
	left: 50px;
	font-family: 'Quicksand', sans-serif;
	font-size: 1.4rem;
	line-height: 1.4rem;
	font-weight: 700;
	letter-spacing: 0.2rem;
	text-transform: uppercase;
	color: #ff1744;
}
.contHelp .btnCH {
	width: 25px;
	height: 25px;
	right: 50px;
	text-align: left;
	text-indent: -9999px;
	cursor: pointer;
	transition: opacity 0.25s ease;
}
.contHelp .btnCH:hover {
	opacity: 0.75;
}
.contHelp .btnCH:active {
	top: 52px;
}
.contHelp .btnCH::before, .contHelp .btnCH::after {
	content: '';
	display: block;
	background: #ff1744;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
}
.contHelp .btnCH::before {
	width: 100%;
	height: 3px;
}
.contHelp .btnCH::after {
	width: 3px;
	height: 100%;
}
.contHelp .gNote, .contHelp .note3, .contHelp .gNote::after {
	display: block;
	position: absolute;
	box-sizing: border-box;
}
.contHelp .gNote, .contHelp .note3 {
	font-family: 'NeutraTextBookItalic';
	font-size: 1.3rem;
	line-height: 1.6rem;
	text-transform: none;
	text-align: center;
	font-weight: 400;
	letter-spacing: 0rem;
}
.contHelp .gNote {
	width: 110%;
	margin: 0px;
	bottom: 100%;
	left: 25px;
	transform: translate(-50%, 0%);
	margin-bottom: 100px;
	padding: 0px 0px 10px;
}
.contHelp .gNote::after {
	content: '';
	width: 0px;
	height: 80px;
	border-left: 2px dashed #ff1744;
	top: 100%;
	left: 50%;
	margin-left: -1px;
	margin-top: 4px;
}
.contHelp .note3 {
	width: 100%;
	height: 100%;
	right: 0px;
	top: 0px;
	margin: 0px;
}
.contHelp .note3 .text {
	display: block;
	width: 250px;
	position: absolute;
	top: 37%;
	left: 100%;
	transform: translate(0%, -50%);
	margin-left: 40px;
	text-align: left;
}
.contHelp .note3 .hIco {
	display: block;
	width: 230px;
	height: 100%;
	margin: 0px 0px 0px auto;
	background: url(../images/site/help1.png) no-repeat top right / auto 84%;
}
.contHelp .note3 .hIco::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: -20px;
	left: -20px;
	background: url(../images/site/help2.png) no-repeat top right / auto 84%;
	animation: ficha 2s linear 0s infinite;
}
@keyframes ficha {
	0% {
		top: -20px;
		left: -20px;
	}
	50% {
		top: 0px;
		left: 0px;
	}
	95% {
		top: 0px;
		left: 0px;
	}
	100% {
		top: -20px;
		left: -20px;
	}
}
.contHelp .simulateDiv {
	display: block;
	width: 100%;
	height: 100vh;
	margin: 0px;
	padding: 0px;
	box-sizing: border-box;
	text-align: center;
	position: relative;
	z-index: 1;
}
.contHelp .simulateDiv .puzzle {
	overflow: initial;
}
.contHelp .simulateDiv .puzzle::before {
	content: normal;
}
.contHelp .simulateDiv .puzzle img {
	visibility: hidden;
}
.contHelp .contBFP .btnFP {
	color: #FFF;
	cursor: inherit;
}
.contHelp .contBFP .btnFP.hidden {
	visibility: hidden;
}

/*Responsive*/
@media (max-height:800px) {
	.pageHeader .titPag {
		margin: 20px 0px 0px 20px;
	}
	.pageHeader .gShare {
		margin: 40px 20px 0px 0px;
	}
	.pageIntro {
		padding: 100px 140px 100px;
	}
	.contGame, .contHelp .simulateDiv {
		padding-bottom: 3%;
	}
	.puzzle img {
		max-height: 65vh;
	}
	.contGame .titleSec, .descPiece .titleSec {
		top: 37px;
	}
}

@media (max-width:1460px) {
	.descPiece .gDesc {
		font-size: 1.1rem;
		line-height: 1.7rem;
	}
	.descPiece .cLeft {
		padding-right: 2%;
	}
	.descPiece .cRight {
		padding-left: 2%;
	}
	.gNoti .title {
		margin: 0px 0px 20px;
		font-size: 2.4rem;
		line-height: 2.6rem;
	}
	.gBtn {
		letter-spacing: 0.1rem;
	}
	.contHelp .note3 .text {
		margin-left: 20px;
	}
}

@media (max-width:1279px) {
	.pageHeader .titPag {
		margin: 20px 0px 0px 20px;
	}
	.pageHeader .gShare {
		margin: 40px 20px 0px 0px;
	}
	.descPiece .cLeft, .descPiece .cRight {
		padding-left: 20px;
		padding-right: 20px;
	}
	.gNoti {
		font-size: 1.1rem;
		line-height: 1.3rem;
	}
	.gNoti .title {
		font-size: 2rem;
		line-height: 2.2rem;
	}
	.contHelp .note3 .text {
		left: auto;
		right: 28%;
		text-align: right;
		margin-left: 0px;
	}
}

@media (max-width:1023px) {
	.descPiece {
		height: auto;
		padding: 120px 30px 100px;
	}
	.descPiece .cLeft, .descPiece .cRight {
		position: relative;
		top: auto;
		left: auto;
		right: auto;
	}
	.descPiece .cLeft, .descPiece .cRight, .descPiece .mainImage {
		width: 100%;
		max-width: 960px;
		height: auto;
		margin: 0px auto;
		padding: 0px;
	}
	.descPiece .cRight {
		margin: 30px auto 60px;
	}
	.descPiece .mainImage {
		margin-bottom: 30px;
	}
	.descPiece .mainImage img {
		max-height: none;
	}
}

@media (max-width:959px) {
	.slick-prev {
		left: 30px;
	}
	.slick-next {
		right: 30px;
	}
	.pageIntro .textIntro {
		padding: 50px;
	}
	.pageIntro .textIntro h2 {
		font-size: 4rem;
		line-height: 3.7rem;
	}
	.contGame .titleSec, .descPiece .titleSec {
		letter-spacing: 0.45rem;
	}
	.contHelp .gNote {
		left: 50%;
	}
}

@media (max-width:767px) {
	.pageFooter .logoM {
		position: relative;
		right: auto;
		top: auto;
		transform: none;
		margin: 0px 10px;
	}
	.pageIntro {
		padding: 110px 70px 100px;
	}
	.pageIntro .textIntro .titInt {
		margin: 0px 0px 50px;
	}
	.pageIntro .textIntro h2 {
		font-size: 3.8rem;
		line-height: 3.2rem;
	}
	.pageIntro .textIntro .subtitle {
		font-size: 1rem;
		line-height: 1.2rem;
		letter-spacing: 0.04rem;
	}
	.pageIntro .textIntro .gText {
		font-size: 1.1rem;
		line-height: 1.8rem;
		margin: 0px 0px 50px;
	}
	.slick-arrow {
		width: 50px;
		height: 50px;
		margin-top: -25px;
	}
	.slick-arrow:active {
		margin-top: -23px;
	}
	.slick-arrow::before {
		width: 16px;
		height: 16px;
	}
	.slick-arrow:hover::before {
		width: 20px;
		height: 20px;
	}
	.slick-prev {
		left: 10px;
	}
	.slick-next {
		right: 10px;
	}
	.contGame, .contHelp .simulateDiv {
		padding: 140px 0px;
		height: auto;
	}
	.contGame .titleSec, .descPiece .titleSec {
		font-size: 1.5rem;
		line-height: 1.5rem;
		letter-spacing: 0.3rem;
		top: 95px;
	}
	.contBFP {
		bottom: 80px;
	}
	.contBFP .btnFP {
		padding: 0px;
	}
	.contBFP .btnFP strong {
		display: none;
	}
	.contBFP .btnFP span {
		position: relative;
		margin: 0px;
		top: auto;
		left: auto;
	}
	.contHelp .titH, .contHelp .btnCH {
		top: 25px;
	}
	.contHelp .titH {
		left: 25px;
	}
	.contHelp .btnCH {
		right: 25px;
	}
	.contHelp .btnCH:active {
		top: 27px;
	}
	.contHelp .gNote, .contHelp .note3 {
		font-size: 1rem;
		line-height: 1.1rem;
	}
	.contHelp .gNote {
		width: 160px;
		left: 0px;
		transform: none;
		padding: 0px;
	}
	.contHelp .gNote::after {
		left: 25px;
	}
	.contHelp .gNote.note1 {
		margin-bottom: 80px;
	}
	.contHelp .gNote.note1::after {
		height: 65px;
	}
	.contHelp .gNote.note2 {
		margin-bottom: 15px;
	}
	.contHelp .gNote.note2::after {
		height: 10px;
		margin-top: 0px;
	}
	.contHelp .note3 .text {
		width: 100%;
		top: 0px;
		right: 0px;
		transform: none;
		text-align: center;
	}
}

@media (max-width:567px) {
	.pageHeader .titPag {
		margin: 15px 0px 0px 10px;
	}
	.pageHeader .titPag img {
		max-height: 40px;
		margin-right: 5px;
	}
	.pageHeader .titPag h1 {
		letter-spacing: 0rem;
		font-size: 0.85rem;
		line-height: 1rem;
	}
	.pageHeader.sTwo .titPag h1 {
		font-size: 1.025rem;
		line-height: 1.15rem;
	}
	.pageHeader .titPag h1 span {
		font-size: 0.75rem;
		line-height: 0.85rem;
		letter-spacing: 0.01rem;
		margin: 0px;
	}
	.pageHeader .gShare {
		margin: 20px 10px 0px 0px;
	}
	.gShare li {
		letter-spacing: 0rem;
		font-size: 0.7rem;
		margin: 0px 20px 0px 0px;
	}
	.gShare li:first-child {
		display: block;
		margin: 0px;
	}
	.pageIntro {
		padding: 80px 30px 100px;
	}
	.pageIntro .textIntro {
		padding: 30px 10px;
	}
	.pageIntro .textIntro .titInt {
		margin: 0px 0px 40px;
	}
	.pageIntro .textIntro h2 {
		font-size: 2.8rem;
		line-height: 2.4rem;
	}
	.pageIntro .textIntro .subtitle {
		font-size: 0.95rem;
		line-height: 1.1rem;
		letter-spacing: 0.02rem;
	}
	.pageIntro .textIntro .gText, .pageIntro .textIntro .contBtn {
		padding: 0px 10px;
	}
	.pageIntro .textIntro .contBtn .btn {
		font-size: 0.85rem;
		letter-spacing: 0.1rem;
		line-height: 0.9rem;
	}
	.slick-prev {
		left: 0px;
	}
	.slick-next {
		right: 0px;
	}
	.contGame, .contHelp .simulateDiv {
		padding: 120px 0px 140px;
	}
	.contGame .titleSec, .descPiece .titleSec {
		top: 75px;
	}
}