@charset "utf-8";
/* -----------------------------------
   COMMON
----------------------------------- */
html body #container {
  font-family: 'YuGothic', 'Yu Gothic Medium', 'Hiragino Sans', 'Meiryo', sans-serif;
  font-feature-settings: "palt";
}

#container {
	padding-top: 0;
	width: auto;
}
#container:before,
#container #lNav {
	display: none;
}

#lightContent {
	position: relative;
	overflow: hidden;
}

#lightContent section,
#lightLead {
	border-top: 5px solid #669;
}

#lightContent section h2 {
	padding: 7px 16px 12px;
	background: #669;
	border-radius: 0 0 5px 5px;
	margin-bottom: 20px;
	display: inline-block;
	vertical-align: middle;
	color: #fff;
	font-weight: normal;
}

#lightContent section h2 img {
	vertical-align: middle;
}

#lightContent section > div {
	margin: 0 auto;
	width: 960px;
	position: relative;
}

a.footerLink {
	margin: 0 auto 40px;
	padding: 10px;
	border-radius: 10px;
	background: #669;
	color: #fff;
	display: block;
	text-align: center;
	width: 60%;
	opacity: 0;
}
a.footerLink:hover {
	background: #9393b7;
}

#lightContent .toHead {
	margin-top: 0;
	position: fixed;
	bottom: 20px;
	right: 20px;
	width: 100px;
	height: 100px;
	background: rgba(102, 230, 255, 0.7);
	text-align: center;
	border-radius: 50%;
	z-index: 1000;
}
#lightContent .toHead:before {
	display: none;
}
#lightContent .toHead a {
	display: block;
	width: 100%;
	height: 100%;
	font-size: 85%;
	vertical-align: middle;
	box-sizing: border-box;
}
#lightContent .toHead a:before {
	padding-top: 10px;
	content: '3';
	font-family: "icons";
	display: block;
	font-size: 200%;
}

#lightContent .spV { display: none !important; }
#lightContent .pcV { display: block !important; }
/* COMMON ------------------------- */

/* -----------------------------------
   KEYFRAMES -- General only
----------------------------------- */
/* blur */
@keyframes blur {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@-webkit-keyframes blur {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/* halfBlur */
@keyframes halfBlur {
	0% {
		opacity: 0;
	}
	0.5% {
		opacity: 1;
	}
	1% {
		opacity: 0.5;
	}
	1.5% {
		opacity: 1;
	}
	2% {
		opacity: 0.75;
	}
	2.5% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
@-webkit-keyframes halfBlur {
	0% {
		opacity: 0;
	}
	0.5% {
		opacity: 1;
	}
	1% {
		opacity: 0.5;
	}
	1.5% {
		opacity: 1;
	}
	2% {
		opacity: 0.75;
	}
	2.5% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
/* slideDown */
@keyframes slideDown {
	0% {
		transform: translateY(-100%);
		opacity: 0;
	}
	50%{
		transform: translateY(8%);
	}
	65%{
		transform: translateY(-4%);
	}
	80%{
		transform: translateY(4%);
	}
	95%{
		transform: translateY(-2%);
	}			
	100% {
		transform: translateY(0%);
		opacity: 1;
	}		
}
@-webkit-keyframes slideDown {
	0% {
		transform: translateY(-100%);
		opacity: 0;
	}
	50%{
		transform: translateY(8%);
	}
	65%{
		transform: translateY(-4%);
	}
	80%{
		transform: translateY(4%);
	}
	95%{
		transform: translateY(-2%);
	}			
	100% {
		transform: translateY(0%);
		opacity: 1;
	}		
}

/* slideUp */
@keyframes slideUp {
	0% {
		transform: translateY(100%);
		opacity: 0;
	}
	50%{
		transform: translateY(-8%);
	}
	65%{
		transform: translateY(4%);
	}
	80%{
		transform: translateY(-4%);
	}
	95%{
		transform: translateY(2%);
	}			
	100% {
		transform: translateY(0%);
		opacity: 1;
	}	
}
@-webkit-keyframes slideUp {
	0% {
		transform: translateY(100%);
		opacity: 0;
	}
	50%{
		transform: translateY(-8%);
	}
	65%{
		transform: translateY(4%);
	}
	80%{
		transform: translateY(-4%);
	}
	95%{
		transform: translateY(2%);
	}			
	100% {
		transform: translateY(0%);
		opacity: 1;
	}	
}

/* fadeIn */
@keyframes fadeIn {
	0% {
		transform: scale(0);
		opacity: 0;		
	}
	60% {
		transform: scale(1.1);	
		opacity: 1;	
	}
	80% {
		transform: scale(0.9);
		opacity: 1;	
	}	
	100% {
		transform: scale(1);
		opacity: 1;	
	}		
}
@-webkit-keyframes fadeIn {
	0% {
		transform: scale(0);
		opacity: 0;		
	}
	60% {
		transform: scale(1.1);	
		opacity: 1;	
	}
	80% {
		transform: scale(0.9);
		opacity: 1;	
	}	
	100% {
		transform: scale(1);
		opacity: 1;	
	}		
}

/* fadeInDouble */
@keyframes fadeInDouble {
	0% {
		transform: scale(0);
		opacity: 0.0;		
	}
	20% {
		transform: scale(1.2);	
		opacity: 1;	
	}
	40% {
		transform: scale(0.8);
		opacity: 1;	
	}	
	60% {
		transform: scale(1.1);	
		opacity: 1;	
	}
	80% {
		transform: scale(0.9);
		opacity: 1;	
	}	
	100% {
		transform: scale(1);
		opacity: 1;	
	}		
}
@-webkit-keyframes fadeInDouble {
	0% {
		transform: scale(0);
		opacity: 0.0;		
	}
	20% {
		transform: scale(1.2);	
		opacity: 1;	
	}
	40% {
		transform: scale(0.8);
		opacity: 1;	
	}	
	60% {
		transform: scale(1.1);	
		opacity: 1;	
	}
	80% {
		transform: scale(0.9);
		opacity: 1;	
	}	
	100% {
		transform: scale(1);
		opacity: 1;	
	}		
}

/* pull */
@keyframes pull {
	0% {
		transform: scaleY(0.1);
	}
	100% {
		transform: scaleY(1);
	}
}
@-webkit-keyframes pull {
	0% {
		transform: scaleY(0.1);
	}
	100% {
		transform: scaleY(1);
	}
}

/* stretch */
@keyframes stretch {
	0% {
		transform: scaleX(0.1);
	}
	100% {
		transform: scaleX(1);
	}
}
@-webkit-keyframes stretch {
	0% {
		transform: scaleX(0.1);
	}
	100% {
		transform: scaleX(1);
	}
}
/* CSS3 ANIMATION ----------------- */

/* -----------------------------------
   SCROLL
----------------------------------- */
.scrNav {
	position: fixed;
	top: 50%;
	right: 30px;
	z-index: 100;
	height: 156px;
	margin-top: -78px;
}

.scrNav li {
	width: 30px;
	height: 26px;
	line-height: 26px;
	position: relative;
	font-size: 13px;
	font-family: "ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	text-align: center;
	color: #669;
}
.scrNav li span {
	background: rgba(0, 0, 0, 0.5);
	position: absolute;
	right: 26px;
	top: 0;
	border-radius: 13px;
	line-height: 26px;
	font-size: 12px;
	font-family: Sans-Serif;
	white-space: nowrap;
	text-align: right;
	padding: 0 10px;
	color: #fff;
	display: none;
}
.scrNav li:hover span {
	display: block;
}
.scrNav li a {
	color: #669;
}
.scrNav li.active a:after {
	content: "●";
	display: block;
	cursor: pointer;
	position: absolute;
	left: 0;
	top: 0;
	width: 30px;
	height: 26px;
	line-height: 26px;
}

.scrNav.reverse li,
.scrNav.reverse li a {
	color: #ccf;
}

/* SCROLL ------------------------- */

/* -----------------------------------
   HEADER
----------------------------------- */
#lightContent header {
	width: 100%;
	height: 320px;
	background-image: linear-gradient(to bottom, #003366 0%, #dba376 50%, #ffffff 88%);
	background-size: 100% 500%;
	background-position: 0 100%;
	position: relative;
	animation: headerLightOn 4s forwards;
	-webkit-animation: headerLightOn 4s forwards;
}
@keyframes headerLightOn {
	0% {
		background-position: 0 100%;
	}
	100% {
		background-position: 0 0;
	}
}
@-webkit-keyframes headerLightOn {
	0% {
		background-position: 0 100%;
	}
	100% {
		background-position: 0 0;
	}
}

#headerAnimation {
	width: 100%;
	height: 320px;
	background: url(../images/light_header_bg2.png) no-repeat 50% 0;
	position: absolute;
	left: 0;
	top: 0;
	clip: rect(0,0,320px,0);
	transition: clip 16s ease-in-out;
	z-index: 1;
}
#headerAnimation.lightOn {
	clip: rect(0,3000px,320px,0);
}

#lightContent header:after {
	content:"";
	width: 100%;
	height: 320px;
	background: url(../images/light_header_bg.png) no-repeat 50% 0;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
}

#lightContent header h1 {
	margin: 0 auto;
	padding-top: 40px;
	width: 960px;
	position: relative;
	z-index: 10;
	opacity: 0;
	animation: blur 0.1s 6s 3 forwards;
	-webkit-animation: blur 0.1s 6s 3 forwards;
}

#lightContent header p {
	margin: 0 auto;
	padding-top: 60px;
	width: 950px;
	position: relative;
	z-index: 10;
	opacity: 0;
	animation: blur 0.5s 7s 1 forwards;
	-webkit-animation: blur 0.5s 7s 1 forwards;
	color: #fff;
	font-size: 140%;
}
/* HEADER ------------------------- */

/* -----------------------------------
   LEAD
----------------------------------- */
#lightLead p {
	margin: 0 auto;
	padding: 20px 0;
	text-align: center;
	font-size: 120%;
	position: relative;
}
#lightLead p a {
	margin: 20px auto 0;
	display: block;
	animation: blur 0.5s alternate 3;
	-webkit-animation: blur 0.5s alternate 3;
}
#lightLead ul {
	margin: 0 auto;
	width: 840px;
	display: table;
	table-layout: fixed;
}
#lightLead ul li {
	display: table-cell;
	text-align: center;
	padding: 0 5px;
}
#lightLead ul li a {
	padding: 10px;
	border-radius: 10px;
	background: #669;
	color: #fff;
	display: block;
}
#lightLead ul li a:hover {
	opacity: 0.7;
}
/* LEAD --------------------------- */

/* -----------------------------------
   PROFILE
----------------------------------- */
#corporateProfile ul {
	margin: 0 auto;
	width: 900px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#corporateProfile ul li {
	padding: 25px 16px;
	text-align: center;
	font-size: 80%;
	color: #333;
	position: relative;
	opacity: 0;
}
#corporateProfile ul li p {
	margin-top: -28px;
}
/*
#corporateProfile li:nth-child(1) p {
	margin-top: -35px;
}
*/

#corporateProfile li:after {
	display: block;
	position: absolute;
	z-index: 10;
	opacity: 0;
}
/*
#corporateProfile li:nth-child(1):after {
	content: url(../images/corporate1_figure.png);
	width: 138px;
	height: 45px;
	left: 105px;
	top: 43px;
}
*/
#corporateProfile li:nth-child(1):after {
	content: url(../images/corporate2_figure.png);
	width: 100px;
	height: 39px;
	left: 29px;
	top: 94px;
}
#corporateProfile li:nth-child(2):after {
	content: url(../images/corporate3_figure.png);
	width: 109px;
	height: 39px;
	left: 16px;
	top: 86px;
}
#corporateProfile li:nth-child(3):after {
	content: url(../images/corporate4_figure.png);
	width: 128px;
	height: 43px;
	left: 26px;
	top: 98px;
}
#corporateProfile li:nth-child(4):after {
	content: url(../images/corporate5_figure.png);
	width: 57px;
	height: 39px;
	left: 77px;
	top: 97px;
}
#corporateProfile li:nth-child(5):after {
	content: url(../images/corporate6_figure.png);
	width: 47px;
	height: 38px;
	left: 72px;
	top: 99px;
}
#corporateProfile li:nth-child(6):after {
	content: url(../images/corporate7_figure.png);
	width: 52px;
	height: 39px;
	left: 30px;
	top: 103px;
}
#corporateProfile li:nth-child(7):after {
	content: url(../images/corporate8_figure.png);
	width: 47px;
	height: 38px;
	left: 39px;
	top: 103px;
}

/* animate */
#corporateProfile.areaActive li:after {
	animation: fadeInDouble 0.5s 1s forwards;
	-webkit-animation: fadeInDouble 0.5s 1s forwards;
}

#corporateProfile.areaActive li {
	animation: blur 2s forwards;
	-webkit-animation: blur 2s forwards;
}

/* #corporateProfile.areaActive li:nth-child(1) { animation-delay: 0.07s; -webkit-animation-delay: 0.07s; } */
#corporateProfile.areaActive li:nth-child(1) { animation-delay: 0.14s; -webkit-animation-delay: 0.14s; }
#corporateProfile.areaActive li:nth-child(2) { animation-delay: 0.28s; -webkit-animation-delay: 0.28s; }
#corporateProfile.areaActive li:nth-child(3) { animation-delay: 0.35s; -webkit-animation-delay: 0.35s; }
#corporateProfile.areaActive li:nth-child(4) { animation-delay: 0.42s; -webkit-animation-delay: 0.42s; }
#corporateProfile.areaActive li:nth-child(5) { animation-delay: 0.49s; -webkit-animation-delay: 0.49s; }
#corporateProfile.areaActive li:nth-child(6) { animation-delay: 0.56s; -webkit-animation-delay: 0.56s; }
#corporateProfile.areaActive li:nth-child(7) { animation-delay: 0.63s; -webkit-animation-delay: 0.63s; }

#corporateProfile.areaActive a.footerLink {
	animation: blur 1.5s 1.5s forwards;
	-webkit-animation: animation: blur 1.5s 1.5s forwards;
}
/* PROFILE ------------------------ */

/* -----------------------------------
   HIGHLIGHT
----------------------------------- */
#highlight dl {
	letter-spacing: -.4em;
	opacity: 0;
}
#highlight dl dt {
	margin-bottom: 40px;
	display: inline-block;
	vertical-align: bottom;
	width: 200px;
	letter-spacing: normal;
}
#highlight dl dd {
	margin-bottom: 40px;
	display: inline-block;
	vertical-align: bottom;
	width: 760px;
	letter-spacing: normal;
	position: relative;
}
#highlight dl .vaMid {
	vertical-align: middle;
}
#highlight dl dd p {
	display: inline-block;
}

#salesRatioCanvas {
	width: 200px;
	height: 100px;
	position: absolute;
	right: 200px;
	top: -20px;
}

#salesRatioCanvas + div {
	width: 200px;
	height: 100px;
	position: absolute;
	right: 200px;
	top: -20px;
	text-align: center;
	font-family: Arial;
	color: #666;
	font-size: 150%;
	line-height: 100px;
}

/* animate */
#highlight.areaActive dl {
	opacity: 1;
}

#highlight.areaActive .salesTtl,
#highlight.areaActive .ratioTtl,
#highlight.areaActive .overseasTtl,
/* #highlight.areaActive .trendTtl, */
#highlight.areaActive .lightingRatioTtl,
#highlight.areaActive .opticsRatioTtl {
	opacity: 0;
	animation: blur 0.3s forwards;
	-webkit-animation: animation: blur 0.3s forwards;
}

#highlight.areaActive .salesCon,
#highlight.areaActive .ratioCon1,
#highlight.areaActive .overseasCon {
	opacity: 0;
	animation: slideDown 0.4s forwards;
	-webkit-animation: slideDown 0.4s forwards;
}

#highlight.areaActive .ratioCon2,
#highlight.areaActive .overseasCount {
	opacity: 0;
	animation: fadeIn 0.3s forwards;
	-webkit-animation: fadeIn 0.3s forwards;
}
	
#highlight.areaActive #salesRatioCanvas {
	opacity: 0;
	animation: blur 0.3s forwards;
	-webkit-animation: blur 0.3s forwards;
}
#highlight.areaActive #salesTrendCanvas,
#highlight.areaActive #lightingRatioCanvas,
#highlight.areaActive #opticsRatioCanvas {
	opacity: 0;
	animation: slideUp 0.5s forwards;
	-webkit-animation: slideUp 0.5s forwards;
}

#highlight.areaActive .salesTtl         { animation-delay: 0s; -webkit-animation-delay: 0s; }
#highlight.areaActive .ratioTtl         { animation-delay: 1s; -webkit-animation-delay: 1s; }
#highlight.areaActive .overseasTtl      { animation-delay: 2s; -webkit-animation-delay: 2s; }
/* #highlight.areaActive .trendTtl         { animation-delay: 3s; -webkit-animation-delay: 3s; } */
#highlight.areaActive .lightingRatioTtl { animation-delay: 3s; -webkit-animation-delay: 3s; }
#highlight.areaActive .opticsRatioTtl   { animation-delay: 4s; -webkit-animation-delay: 4s; }

#highlight.areaActive .salesCon            { animation-delay: 0.2s; -webkit-animation-delay: 0.2s; }
#highlight.areaActive .ratioCon1           { animation-delay: 1.2s; -webkit-animation-delay: 1.2s; }
#highlight.areaActive .ratioCon2           { animation-delay: 1.5s; -webkit-animation-delay: 1.5s; }
#highlight.areaActive .overseasCon         { animation-delay: 2.2s; -webkit-animation-delay: 2.2s; }
#highlight.areaActive #salesRatioCanvas    { animation-delay: 2.5s; -webkit-animation-delay: 2.5s; }
#highlight.areaActive .overseasCount       { animation-delay: 2.5s; -webkit-animation-delay: 2.5s; }
/* #highlight.areaActive #salesTrendCanvas    { animation-delay: 3.2s; -webkit-animation-delay: 3.2s; } */
#highlight.areaActive #lightingRatioCanvas { animation-delay: 3.2s; -webkit-animation-delay: 3.2s; }
#highlight.areaActive #opticsRatioCanvas   { animation-delay: 4.2s; -webkit-animation-delay: 4.2s; }

#highlight.areaActive a.footerLink {
	animation: blur 1.5s 5.5s forwards;
	-webkit-animation: blur 1.5s 5.5s forwards;
}
/* HIGHLIGHT ---------------------- */

/* -----------------------------------
   LIGHTING
----------------------------------- */
#lighting {
	position: relative;
	overflow: hidden;
}
#lighting:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 289px;
	background: url(../images/lighting_bg.png) no-repeat 50% 0 #000136;
	left: 0;
	top: 0;
}
#lightContent #lighting h2 {
	margin-bottom: 252px;
}
#lighting div div {
	display: table;
	width: 60%;
	margin: 1em auto;
}
#lighting div div h3,
#lighting div div p {
	display: table-cell;
	width: 50%;
}
#lighting div div h3 {
	overflow: hidden;
	position: relative;
}
#lighting div div h3:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 150px;
	background: #f6f6f6;
	display: block;
}
#lighting div div p {
	text-align: right;
	opacity: 0;
}
#lighting div strong {
	padding-right: 0.2em;
	color: #f33;
	font-size: 280%;
	font-family: Arial;
	font-weight: normal;
}

#lighting div:before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	opacity: 0;
}

#lighting #lightingRoad:before {
	background: url(../images/lighting_road.png) no-repeat 0 0;
	width: 146px;
	height: 14px;
	margin-left: -330px;
	top: 257px;
}
#lighting #lightingHb:before {
	background: url(../images/lighting_hb.png) no-repeat 0 0;
	width: 104px;
	height: 16px;
	margin-left: -168px;
	top: 261px;
}
#lighting #lightingSports:before {
	background: url(../images/lighting_sports.png) no-repeat 0 0;
	width: 93px;
	height: 20px;
	margin-left: -22px;
	top: 246px;
}
#lighting #lightingCommerce:before {
	background: url(../images/lighting_commerce.png) no-repeat 0 0;
	width: 95px;
	height: 34px;
	margin-left: 130px;
	top: 243px;
}
#lighting #lightingStreet:before {
	background: url(../images/lighting_street.png) no-repeat 0 0;
	width: 519px;
	height: 14px;
	margin-left: -46px;
	top: 271px;
}
#lighting #lightingSign:before {
	background: url(../images/lighting_sign.png) no-repeat 0 0;
	width: 64px;
	height: 49px;
	margin-left: 322px;
	top: 222px;
}

#lighting div > p {
	margin-bottom: 1em;
	padding: 0 10px;
	text-align: center;
	opacity: 0;
}

/* animate */
#lighting.areaActive div h3:before {
	animation: clipItem2 0.4s forwards;
	-webkit-animation: clipItem2 0.4s forwards;
}
@keyframes clipItem2 {
	0% {
		left: 0;
		top: 0;
	}
	100% {
		left: 300px;
		top: 0;
	}
}
@-webkit-keyframes clipItem2 {
	0% {
		left: 0;
		top: 0;
	}
	100% {
		left: 300px;
		top: 0;
	}
}

#lighting.areaActive div p {
	animation: fadeIn 0.3s forwards;
	-webkit-animation: fadeIn 0.3s forwards;
}

#lighting.areaActive div:before {
	animation: halfBlur 4s infinite alternate-reverse;
	-webkit-animation: halfBlur 4s infinite alternate-reverse;
}

#lighting.areaActive #lightingRoad h3:before     { animation-delay: 0.2s; -webkit-animation-delay: 0.2s; }
#lighting.areaActive #lightingStreet h3:before   { animation-delay: 0.7s; -webkit-animation-delay: 0.7s; }
#lighting.areaActive #lightingSports h3:before   { animation-delay: 1.2s; -webkit-animation-delay: 1.2s; }
#lighting.areaActive #lightingHb h3:before       { animation-delay: 1.7s; -webkit-animation-delay: 1.7s; }
#lighting.areaActive #lightingCommerce h3:before { animation-delay: 2.2s; -webkit-animation-delay: 2.2s; }
#lighting.areaActive #lightingSign h3:before     { animation-delay: 2.7s; -webkit-animation-delay: 2.7s; }
#lighting.areaActive #lightingSource h3:before   { animation-delay: 3.2s; -webkit-animation-delay: 3.2s; }

#lighting.areaActive #lightingRoad p     { animation-delay: 0.4s; -webkit-animation-delay: 0.4s; }
#lighting.areaActive #lightingStreet p   { animation-delay: 0.9s; -webkit-animation-delay: 0.9s; }
#lighting.areaActive #lightingSports p   { animation-delay: 1.4s; -webkit-animation-delay: 1.4s; }
#lighting.areaActive #lightingHb p       { animation-delay: 1.9s; -webkit-animation-delay: 1.9s; }
#lighting.areaActive #lightingCommerce p { animation-delay: 2.4s; -webkit-animation-delay: 2.4s; }
#lighting.areaActive #lightingSign p     { animation-delay: 2.9s; -webkit-animation-delay: 2.9s; }
#lighting.areaActive #lightingSource p   { animation-delay: 3.4s; -webkit-animation-delay: 3.4s; }

#lighting #lightingRoad:before     { animation-delay: 0.5s; -webkit-animation-delay: 0.5s; }
#lighting #lightingHb:before       { animation-delay: 1.1s; -webkit-animation-delay: 1.1s; }
#lighting #lightingSports:before   { animation-delay: 1.5s; -webkit-animation-delay: 1.5s; }
#lighting #lightingCommerce:before { animation-delay: 2.3s; -webkit-animation-delay: 2.3s; }
#lighting #lightingStreet:before   { animation-delay: 2.5s; -webkit-animation-delay: 2.5s; }
#lighting #lightingSign:before     { animation-delay: 3.0s; -webkit-animation-delay: 3.0s; }

#lighting.areaActive div > p,
#lighting.areaActive a.footerLink {
	animation: blur 1.5s 4s forwards;
	-webkit-animation: blur 1.5s 4s forwards;
}
/* LIGHTING ------------------------ */

/* -----------------------------------
   OPTICS
----------------------------------- */
#optics {
	background: #000136;
	color: #fff;
	min-height: 640px;
	position: relative;
}

#lightContent #optics > div {
	position: static;
}

#optics h2 {
	position: relative;
	z-index: 100;
}

#optics ul {
	margin-bottom: 1em;
	padding: 0 0 0 2px;
	min-height: 480px;
	display: flex;
	flex-wrap: wrap;
	z-index: 0;
}

#optics ul li {
	width: 239px;
	height: 239px;
	box-sizing: border-box;
}

#optics ul li div {
	width: 239px;
	height: 239px;
	position: relative;
	overflow: hidden;
}

#optics ul li div:before {
	content: "";
	display: block;
	width: 360px;
	height: 360px;
	transform: rotate(-45deg);
	position: absolute;
	left: -60px;
	top: -60px;
	background: #000136;
	transform-origin: 50% 50%;
	-ms-transform-origin: 50% 50%;
	z-index: 1;
}

#optics ul li a {
	color: #fff;
}
#optics ul li a:hover {
	opacity: 0.7;
}

#optics ul li h3 {
	padding: 100px 0 1em;
	box-sizing: border-box;
	text-align: center;
}
#optics ul li:first-child  h3 { background: url(../images/optics_sterilize_bg.jpg) no-repeat; }
#optics ul li:nth-child(2) h3 { background: url(../images/optics_water_treatment_bg.jpg) no-repeat; }
#optics ul li:nth-child(3) h3 { background: url(../images/optics_simulation_bg.jpg) no-repeat; }
#optics ul li:nth-child(4) h3 { background: url(../images/optics_halogen_heating_bg.jpg) no-repeat; }
#optics ul li:nth-child(5) h3 { background: url(../images/optics_curing_bg.jpg) no-repeat; }
#optics ul li:nth-child(6) h3 { background: url(../images/optics_washing_bg.jpg) no-repeat; }
#optics ul li:last-child   h3 { background: url(../images/optics_info_display_bg.jpg) no-repeat; }

#optics ul li p {
	padding: 0 10px 0 20px;
	line-height: 1.4;
	font-size: 85%;
	width: 209px;
}

#optics ul li:nth-child(-n+5):before {
	content: "";
	display: block;
	background: #fff;
	width: 2px;
	height: 640px;
	position: absolute;
	top: 0;
	left: 50%;
	transform: scaleX(0.1);
	z-index: 10;
}

#optics ul li:first-child:before { margin-left: -479px; }
#optics ul li:nth-child(2):before { margin-left: -240px; }
#optics ul li:nth-child(3):before { margin-left: -1px; }
#optics ul li:nth-child(4):before { margin-left: 238px; }
#optics ul li:nth-child(5):before { margin-left: 477px; }

#optics ul li:nth-child(-n+3):after {
	content: "";
	display: block;
	background: #fff;
	width: 100%;
	height: 2px;
	position: absolute;
	left: 0;
	transform: scaleY(0.1);
	z-index: 10;
}
#optics ul li:first-child:after { top: 70px;}
#optics ul li:nth-child(2):after { top: 309px; }
#optics ul li:nth-child(3):after { top: 548px; }


/* animate */
#optics.areaActive li div:before {
	animation: clipItem 1s forwards;
	-webkit-animation: clipItem 1s forwards;
}
@keyframes clipItem {
	0% {
		left: -60px;
		top: -60px;
	}
	100% {
		left: 200px;
		top: 200px;
	}
}
@-webkit-keyframes clipItem {
	0% {
		left: -60px;
		top: -60px;
	}
	100% {
		left: 200px;
		top: 200px;
	}
}
/* 縦線 */
#optics.areaActive li:before {
	transform-origin: 0% 0%;
	-ms-transform-origin: 0% 0%;
	animation: pull .75s forwards ease-in;
	-webkit-animation: pull .75s forwards ease-in;
}
/* 横線 */
#optics.areaActive li:after {
	transform-origin: 0% 0%;
	-ms-transform-origin: 0% 0%;
	animation: stretch 1s forwards ease-out;
	-webkit-animation: stretch 1s forwards ease-out;
}

#optics.areaActive li:first-child:before  { animation-delay: 0s;    -webkit-animation-delay: 0s; }
#optics.areaActive li:nth-child(2):before { animation-delay: 0s;    -webkit-animation-delay: 0s; }
#optics.areaActive li:nth-child(3):before { animation-delay: 0.25s; -webkit-animation-delay: 0.25s; }
#optics.areaActive li:nth-child(4):before { animation-delay: 0.5s;  -webkit-animation-delay: 0.5s; }
#optics.areaActive li:nth-child(5):before { animation-delay: 0.75s; -webkit-animation-delay: 0.75s; }
#optics.areaActive li:nth-child(6):before { animation-delay: 1s;    -webkit-animation-delay: 1s; }
#optics.areaActive li:nth-child(7):before { animation-delay: 1s;    -webkit-animation-delay: 1s; }
#optics.areaActive li:first-child:after   { animation-delay: 0s;    -webkit-animation-delay: 0s; }
#optics.areaActive li:nth-child(2):after  { animation-delay: 0.25s; -webkit-animation-delay: 0.25s; }
#optics.areaActive li:nth-child(3):after  { animation-delay: 0.5s;  -webkit-animation-delay: 0.5s; }

#optics.areaActive li:first-child div:before  { animation-delay: 1.0s; -webkit-animation-delay: 1.0s; }
#optics.areaActive li:nth-child(2) div:before { animation-delay: 1.1s; -webkit-animation-delay: 1.1s; }
#optics.areaActive li:nth-child(3) div:before { animation-delay: 1.2s; -webkit-animation-delay: 1.2s; }
#optics.areaActive li:nth-child(4) div:before { animation-delay: 1.3s; -webkit-animation-delay: 1.3s; }
#optics.areaActive li:nth-child(5) div:before { animation-delay: 1.4s; -webkit-animation-delay: 1.4s; }
#optics.areaActive li:nth-child(6) div:before { animation-delay: 1.5s; -webkit-animation-delay: 1.5s; }
#optics.areaActive li:nth-child(7) div:before { animation-delay: 1.6s; -webkit-animation-delay: 1.6s; }

#optics.areaActive a.footerLink {
	animation: blur 1.5s 2s forwards;
	-webkit-animation: blur 1.5s 2s forwards;
	z-index: 100;
	position: relative;
}
/* OPTICS -------------------------- */

/* -----------------------------------
   EXAMPLES
----------------------------------- */
#examples ul {
	margin: 0 auto 2em;
	width: 960px;
	min-height: 480px;
	position: relative;
}
#examples ul li {
	position: absolute;
	left: 200px;
	top: 25px;
	box-sizing: border-box;
	background: #ebebeb;
	text-align: center;
	width: 560px;
	height: 420px;
	padding: 12px;
	z-index: 1;
	font-size: 120%;
	opacity: 0;
}
#examples ul li img {
	height: auto;
}
#examples ul li a {
	color: #000;
}
#examples ul li p {
	padding: 6px;
	background: #fff;
}
#examples ul li h3 {
	margin-top: 0.5em;
	font-size: 90%;
	font-weight: normal;
}
#examples ul li span {
	padding: 9px;
	position: absolute;
	left: 0;
	top: 0;
	background: rgba(0, 0, 0, 0.7);
	z-index: 100;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	font-size: 70%;
	text-align: left;
	color: #fff;
	display: none;
	width: 100%;
	height: 100%;
}
#examples ul li span a {
	color: #fff;
	display: block;
	width: 100%;
	height: 100%;
}
#examples ul:after {
	content: '';
	position: absolute;
	left: 200px;
	top: 25px;
	width: 560px;
	height: 420px;
	z-index: 100;
	opacity: 0;
	background: #fff;
}

/* animate */
#examples ul li:hover span {
	display: block;
	animation: fadeIn 0.5s forwards;
}

#examples.areaActive ul li:first-child {
	animation: examples1 .5s 0.5s forwards;
}
#examples.areaActive ul li:nth-child(2) {
	animation: examples2 .5s 1s forwards;
}
#examples.areaActive ul li:nth-child(3) {
	animation: examples3 .5s 1.5s forwards;
}
#examples.areaActive ul li:nth-child(4) {
	animation: examples4 .5s 2s forwards;
}
#examples.areaActive ul li:nth-child(5) {
	animation: examples5 .5s 2.5s forwards;
}
#examples.areaActive ul li:nth-child(6) {
	animation: examples6 .5s 3s forwards;
}
#examples.areaActive ul li:nth-child(7) {
	animation: examples7 .5s 3.5s forwards;
}
#examples.areaActive ul li:nth-child(8) {
	animation: examples8 .5s 4s forwards;
}
#examples.areaActive ul:after {
	animation: delete 0.1s 4.5s forwards;
}

@keyframes examples1 {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	70% {
		opacity: 1;
		width: 560px;
		height: 420px;
		left: 200px;
		top: 25px;
	}
	100% {
		width: 230px;
		height: 230px;
		top: 0;
		left: 0;
		z-index: 0;
		opacity: 1;
	}
}
@keyframes examples2 {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	70% {
		opacity: 1;
		width: 560px;
		height: 420px;
		left: 200px;
		top: 25px;
	}
	100% {
		width: 230px;
		height: 230px;
		top: 0;
		left: 243px;
		z-index: 0;
		opacity: 1;
	}
}
@keyframes examples3 {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	70% {
		opacity: 1;
		width: 560px;
		height: 420px;
		left: 200px;
		top: 25px;
	}
	100% {
		width: 230px;
		height: 230px;
		top: 0;
		left: 486px;
		z-index: 0;
		opacity: 1;
	}
}
@keyframes examples4 {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	70% {
		opacity: 1;
		width: 560px;
		height: 420px;
		left: 200px;
		top: 25px;
	}
	100% {
		width: 230px;
		height: 230px;
		top: 0;
		left: 729px;
		z-index: 0;
		opacity: 1;
	}
}
@keyframes examples5 {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	70% {
		opacity: 1;
		width: 560px;
		height: 420px;
		left: 200px;
		top: 25px;
	}
	100% {
		width: 230px;
		height: 230px;
		left: 0;
		top: 240px;
		z-index: 0;
		opacity: 1;
	}
}
@keyframes examples6 {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	70% {
		opacity: 1;
		width: 560px;
		height: 420px;
		left: 200px;
		top: 25px;
	}
	100% {
		width: 230px;
		height: 230px;
		left: 243px;
		top: 240px;
		z-index: 0;
		opacity: 1;
	}
}
@keyframes examples7 {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	70% {
		opacity: 1;
		width: 560px;
		height: 420px;
		left: 200px;
		top: 25px;
	}
	100% {
		width: 230px;
		height: 230px;
		left: 486px;
		top: 240px;
		z-index: 0;
		opacity: 1;
	}
}
@keyframes examples8 {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	70% {
		opacity: 1;
		width: 560px;
		height: 420px;
		left: 200px;
		top: 25px;
	}
	100% {
		width: 230px;
		height: 230px;
		left: 729px;
		top: 240px;
		z-index: 0;
		opacity: 1;
	}
}
@keyframes delete {
	0% {
		z-index: 100;
	}
	99% {
		z-index: 100;
	}
	100% {
		z-index: -1;
	}
}

/* for tablet and smart phone */
@keyframes examplesSP {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
@-webkit-keyframes examplesSP {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
/* // */

#examples.areaActive a.footerLink {
	animation: blur 1.5s 5s forwards;
	-webkit-animation: blur 1.5s 5s forwards;
}

/* EXAMPLES ------------------------ */

.to_page_top a {
    display: none;
}

/* a link */

#lightLead p a:link,
.toHead a:link {
  color: #069;
}

#lightLead p a:visited,
.toHead a:visited {
  color: #036;
}

#lightLead p a:hover,
.toHead a:hover {
  color: #09c;
}

