@charset "utf-8";

/* INITIALIZE ++++++++++++ */

.gnav,
ul#w3.gnav-menu{
	display: none;
}

.search-button{
	color: #909090;
	cursor: pointer;
	background: transparent;
	/* border: #dcdcdc dotted; */
	border-width: 0;
}

.search-button i{
	font-size: 1.4rem;      
}

.clearFix:after{
	content:" ";
	height: 0;
	display: block;
	clear: both;
}

/* INITIALIZE END ++++++++++++ */

.main-contents{
	margin-top: 108px;
	margin-left: auto;
	margin-right: auto;
}

#header{
	position: fixed;
    top: 0px;
    z-index: 1020;
    width: 100%;
	background: #fff;
	border-top: #3faee2 solid 4px;
	/* transition: all 0.4s cubic-bezier(0.42, 0, 0.52, 1);
    -webkit-transition: all 0.4s cubic-bezier(0.42, 0, 0.52, 1);
    -ms-transition: all 0.4s cubic-bezier(0.42, 0, 0.52, 1); */
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

#glnaviWrapper{
	display: table;
	/* padding: 8px 20px; */
	padding: 8px 0;
	width: 100%;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#header #glnaviWrapper div.logo{
	display: table-cell;
	padding: 0 20px 0 0;
	width: auto;
	height: 40px;
	min-width: 92px;
	vertical-align: middle;
	float: none;
}

#header #glnaviWrapper #essence a{
    padding-left: 0px !important;
}

#header #glnaviWrapper #community a{
    padding-left: 0px;
}

#essence a,
#community a,
#event a,
#teacher a
{
	position: relative;
	z-index: 999;
	display: block;
	text-decoration: none;
}

#header #bellBox{
	z-index: 10000;
	display: table-cell;
	padding-right: 0;
	width: 40px;
	vertical-align: middle;
	color: #3faee2;
	font-size: 3.6rem;
}



#essence,
#community,
#event,
#teacher,
#tbellBoxDrop,
#userBox
{
	display: table-cell;
    display: block;
	padding: 0 20px 0 0;
	vertical-align: middle;
	font-size: 14px;
	font-weight: bold;
    line-height: 40px;
	float: right;
}

#header .top-key-search{
    display: block;
	padding: 4px 8px 4px 0;
	width: 228px;
	height: 40px;
	vertical-align: middle;
	float: right;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#header #search-keyword .top-key-search{
	display: none;
}

#header .top-key-search h5{
	margin: 0 0 4px;
	font-size: 12px;
	font-weight: bold;
	color: #000;
}

#header .top-key-search  ul:after{
	content: " ";
	display: block;
	height: 0;
	clear: both;
}

#header .header-account{
	display: table-cell;
	margin-right: 0;
	width: 40px;
	max-width: 136px;
	vertical-align: middle;
	border-left: 0;
	float: right;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0;
}

#header #plusBox{
	display: table-cell;
	padding-right: 20px;
	width: 32px;
	vertical-align: middle;
	color: #3faee2;
	font-size: 3.6rem;
}

#header #bellBox em i.fa-bell{
	height: 40px;
	line-height: 40px;
}

.petname{
	margin-bottom: 8px;
	padding-bottom: 4px;
	color: #777;
}


#header #glnaviWrapper div.logo a{
	display: block;
	width: 210px;
	height: 40px;
	text-indent: -9999px;
	background: url("/images/logo-foresta_w192.png") left center no-repeat;
}

#search-keyword {
	padding-bottom: 8px;
}

form#search-form{
	height: 40px;
	border: #dcdcdc solid 1px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

input#keyword-search-box{
	font-size: 14px;
	background-color: transparent;
}

#header .header-account a.account{
	padding-top: 0;
	width: auto;
}

.account__name{
	padding-left: 4px;
	padding-right: 0px;
	width: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#header #bellBox div.counter{
	position: absolute;
	left: 0;
	top: 0;
	width: 18px;
	height: 18px;
	line-height: 18px;
	font-size: 8px;
	text-align: center;
	color: #fff;
	background: #f00;
	-webkit-border-radius: 18px;
	-moz-border-radius: 18px;
	border-radius: 18px;
}

#header nav.gnav h2.gnav-btn{
	top: 8px;
}

#header nav.gnav h2.gnav-btn a{
	display: block;
	width: 40px;
	height: 40px;
}

/* POP PALETTE START ++++++++++++ */

#header #glnaviWrapper .bell.popPalette h3{
	padding-bottom: 4px;
	margin-bottom: 8px;
	font-size: 12px;
	font-weight: bold;
	color: #000;
	border-bottom: #dcdcdc solid 1px;
}

#header #glnaviWrapper .bell.popPalette a.previewAll{
	display: block;
	padding-top: 4px;
	font-size: 12px;
	text-align: right;
	text-decoration: none;
	color: #36aae1;
}

#header #glnaviWrapper .bell.popPalette a.previewAll:hover{
	color: #81d3ec;
}

#header #glnaviWrapper .user.popPalette,
#header #glnaviWrapper .plus.popPalette,
#header #glnaviWrapper .bell.popPalette{
    position: absolute;
    top: -9999px ;
}

#header #glnaviWrapper .user.popPalette.on,
#header #glnaviWrapper .plus.popPalette.on,
#header #glnaviWrapper .bell.popPalette.on{
	position: absolute;
	right: 8px;
	top: 54px;
	z-index: 9999;
	display: block;
	padding: 16px;
	width: 94%;
	max-width: 400px;
	font-size: 14px;
	font-weight: normal;
	background: #fafafa;
	border: #dcdcdc solid 1px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#header #glnaviWrapper .user.popPalette.on{
	width: 260px;
}

#header #glnaviWrapper .plus.popPalette.on{
	width: 218px;
}

#header #glnaviWrapper .user.popPalette .line,
#header #glnaviWrapper .plus.popPalette .line,
#header #glnaviWrapper .bell.popPalette .line{
	display: table;
	padding-bottom: 4px;
	width: 100%;
	color: #333;
	text-decoration: none;
	cursor: pointer;
}

#header #glnaviWrapper .bell.popPalette .line{
	margin-bottom: 4px;
	border-bottom: #dcdcdc solid 1px;
}

#header #glnaviWrapper .user.popPalette .line,
#header #glnaviWrapper .plus.popPalette .line{
	display: table;
	margin-bottom: 8px;
}

#header #glnaviWrapper .user.popPalette .line:last-child,
#header #glnaviWrapper .plus.popPalette .line:last-child{
	margin-bottom: 0;
	padding-bottom: 0;
}

#header #glnaviWrapper .popPalette .line:hover{
	color: #3faee2;
}

#header #glnaviWrapper .popPalette .line span.non-image.menu-user-icon,
#header #glnaviWrapper .popPalette .line span{
	display: table-cell;
	vertical-align: middle;
}

#header #glnaviWrapper .bell.popPalette .line span{
	padding-left: 4px;
}

#header #glnaviWrapper .popPalette .line span.non-image.menu-user-icon{
	padding-left: 0;
}

#header #glnaviWrapper .user.popPalette .line span,
#header #glnaviWrapper .plus.popPalette .line span{
	padding-left: 4px;
	/* color: #333; */
}

#header #glnaviWrapper .user.popPalette .line i,
#header #glnaviWrapper .plus.popPalette .line i{
	display: table-cell;
	width: 12px;
	color: #3faee2;
	text-align: center;
}

#header #glnaviWrapper .bell.popPalette .line span.non-image.menu-user-icon i{
	display: inline-block;
	margin-right: 0;
	padding-left: 0;
	padding-right: 0;
	width: 36px;
	height: 36px;
	color: #fff;
	line-height: 36px;
	text-align: center;
	border-radius: 36px;
}

#header #glnaviWrapper .bell.popPalette .line span i.fa{
	display: inline-block;
	margin-right: 4px;
	width: 16px;
	height: 16px;
	line-height: 16px;
	font-size: 1.2rem;
	text-align: center;
	vertical-align: middle;
	color: #fff;
	background: #3faee2;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

#header #glnaviWrapper .bell.popPalette .line span .date{
	font-size: 10px;
	color: #999;
}

.orange i{
	background: #ef9a4f;
}
.green i{
	background: #3cc705;
}

.red i{
	background: #f45131;
}

/* PALETTE ARROW +++++ */

#userBox em,
#plusBox em,
#bellBox em{
	position: relative;
	display: block;
}

#userBox.on em:before,
#plusBox.on em:before,
#bellBox.on em:before{
	content: " ";
	position: absolute;
	bottom: -7px;
	left: 50%;
	z-index: 10000;
	margin-left: -8px;
	border-top: transparent solid 8px;
	border-right: transparent solid 8px;
	border-bottom: #dcdcdc solid 8px;
	border-left: transparent solid 8px;
}

#userBox.on em:before{
	bottom: -7px;
}

#userBox.on em:after,
#plusBox.on em:after,
#bellBox.on em:after{
	content: " ";
	position: absolute;
	bottom: -8px;
	left: 50%;
	z-index: 10001;
	margin-left: -8px;
	border-top: transparent solid 8px;
	border-right: transparent solid 8px;
	border-bottom: #fafafa solid 8px;
	border-left: transparent solid 8px;
}

#userBox.on em:after{
	bottom: -8px;
}

/* POP PALETTE END ++++++++++++ */

.dropShadow
{
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
	-moz-box-shadow:  0 0 5px rgba(0, 0, 0, 0.2);
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}

@media print, screen and (max-width: 1139px){

	#header #glnaviWrapper{
        padding: 8px;
	}
	
	#search-keyword{
		padding-left: 8px;
		padding-right: 8px;
	}

}

@media print, screen and (max-width: 920px){

	#glnaviWrapper .top-key-search{
		display: none;
	}

	#header #search-keyword .top-key-search{
		display: block;
	}
	
	#header #search-keyword
	{
		display: -webkit-flex;
		display: flex;
		-webkit-flex-flow: row nowrap;
		flex-flow: row nowrap;
		-webkit-justify-content: space-between;
		justify-content: fspace-between;
	}

	#header #search-keyword #search-form{
		margin-right: 8px;
		width: auto;
		-webkit-flex: 2 2 0;
		flex: 2 2 0;
	}
	
	#header #search-keyword .top-key-search{
		width: 220px;
	}
	
	
}

@media print, screen and (max-width: 1080px) and (min-width: 768px){

/* 	#header #search-keyword{
		display: block;
	}
 */}

@media print, screen and (max-width: 767px){

	#essense,
	#community,
	#event,
	#teacher
	{
		display: none;
	}
}


@media print, screen and (max-width: 767px) {

	#header #glnaviWrapper #essence,
	#header #glnaviWrapper #community{
		display: none;
	}

	#header .header-account{
		width: 40px;
	}

	.gnav
	{
		display: block;
	}

	#glnaviWrapper{
		padding: 8px 50px 8px 16px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
		
	#header.fixed{
		/* transition-property: height; */
/* 		transform: translate(0,-52px);
		-webkit-transform: translate(0,-52px);
		-ms-transform: translate(0,-52px);
 */	}
 		
	#header.fixed{
		border-top-color: #fff;
		border-top-width: 8px;
	}
	#header.fixed #glnaviWrapper{
		display: none;
	}


}

@media print, screen and (max-width: 479px) {

	.main-contents{
		margin-top: 156px;
	}
	
	#header #glnaviWrapper div.logo a{
		width: auto;
		min-width: 90px;
		background: url("/images/logo-foresta_sp.png") left center no-repeat;
	}

	#header #glnaviWrapper div.logo,
	#header #plusBox,
	#header #bellBox{
		padding: 0 8px 0 0;
	}
	
		#header #search-keyword
	{
		display: -webkit-flex;
		display: flex;
		-webkit-flex-flow: column nowrap;
		flex-flow: column nowrap;
		-webkit-justify-content: space-between;
		justify-content: fspace-between;
	}

	#header #search-keyword #search-form{
		margin-right: 0;
		margin-bottom: 4px;
		width: auto;
		-webkit-flex: 2 2 0;
		flex: 2 2 0;
	}
	
	#header #search-keyword .top-key-search{
		width: 220px;
	}

}