@charset "UTF-8";
@import url("./module.css");

/**
 * default.css
 * updatedAt : 2017.10.04
 * updatedAt : 2016.03.11
 * updatedAt : 2015.05.26
 * updatedAt : 2014.06.13
 */

/*--------------------------------------------------------------------------------
	Reset
--------------------------------------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;vertical-align:top;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}ul{zoom:1}li{list-style:none;}caption,th{text-align:left;}.eco-container h1,.eco-container h2,.eco-container h3,.eco-container h4,.eco-container h5,.eco-container h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;}del,ins{text-decoration:none;}a{text-decoration:none;}nav,article,section{display:block;}


/*--------------------------------------------------------------------------------
	body
--------------------------------------------------------------------------------*/
body {
	position: relative;
	margin: 0;
	padding: 0;
	min-width: 950px;
	min-height: 100%;
	font-family: "SST W55 Regular","\30D2\30E9\30AE\30CE\89D2\30B4\20\50\72\6F\20\57\33","Hiragino Kaku Gothic Pro","\30E1\30A4\30EA\30AA",Meiryo,"\FF2D\FF33\20\FF30\30B4\30B7\30C3\30AF",sans-serif !important;
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
}

@media(max-width:640px) {
	html { overflow-x: hidden; }
	body { overflow-x: hidden; min-width: 1px; }
}


/*--------------------------------------------------------------------------------
	#Content Menu
--------------------------------------------------------------------------------*/
#tmpl_contentMenu_bar_base h1 {
  font-weight: normal;
}

/*--------------------------------------------------------------------------------
	#tmpl_main
--------------------------------------------------------------------------------*/
#tmpl_main {
	position: relative;
	width: 100% !important;
	min-width: 950px;
	color: #000;
	font-size: 117.5%;
}

#tmpl_main a:hover {
	text-decoration: none;
}
@media(max-width:640px) {
	#tmpl_main { min-width: 320px; overflow: hidden; font-size: 100%;}
	#tmpl_main a { word-break:keep-all !important}
}

/*--------------------------------------------------------------------------------
	.head-menu
--------------------------------------------------------------------------------*/
.head-menu {
	position: absolute;
	z-index: 10;
	width: 100%;
	background: #0a8926;
}
.head-menu-inner {
	margin: 0 auto;
	width: 940px;
	height: 50px;
	overflow: hidden;
	zoom: 1;
}
.head-menu-inner:after {
	clear: both;
	display: block;
	content: "";
}
.head-menu-title {
	float: left;
	display: table;
	padding: 0 0 0 10px;
	height: 50px;
	font-size: 143.8%;
	line-height: 1.1;
	color: #fff;
}
.head-menu-title h1 {
	display: table-cell;
	padding-top: 3px;
	vertical-align: middle;
	*layout-grid-line: 100%;
}
.head-menu-title h1 a {
	color: #fff;
	text-decoration: none;
}

html.js .head-menu {
	position: absolute;
}

@media(max-width:640px) {
	.head-menu {
		position: static !important;
	}
	.head-menu-inner {
		width: auto;
		overflow: visible;
	}
	.head-menu-title {
		padding-left: 4.375%;
		font-size: 131.3%;
	}
	.head-menu-breadcrumbs {
		padding: 10px 15px 10px;
	}
}
@media(max-width:320px) {
	.head-menu-title {
		font-size: 118.8%;
	}
}

/* nav
--------------------------------------------------------------------------------*/
.head-menu nav {
	float: right;
	position: relative;
	margin-right: 20px;
}
.head-menu p {
	display: none;
}
.head-menu nav ul {
	margin-top: -10px;
	zoom: 1;
}
.head-menu nav ul:after {
	clear: both;
	display: block;
	content: "";
}
.head-menu nav li {
	float: left;
	position: relative;
	margin-right: -25px;
	padding: 20px 0 20px 25px;
	width: 105px;
	font-size: 75%;
	line-height: 1.1;
	background-repeat: no-repeat;
	background-position: 0 0;
	vertical-align: middle;
}
.head-menu nav li img.blink {
	position: absolute;
	z-index: 0;
	margin: -20px 0 0 -26px;
}
.head-menu nav li a {
	position: relative;
	z-index: 1;
	display: block;
	padding: 8px 0 8px 23px;
	color: #fff;
	text-decoration: none;
	transition: opacity 0.1s ease-in;
	-o-transition: opacity 0.1s ease-in;
	-ms-transition: opacity 0.1s ease-in;
	-moz-transition: opacity 0.1s ease-in;
	-webkit-transition: opacity 0.1s ease-in;
}
.head-menu nav li a:hover {
	opacity: 0.7;
}
.head-menu nav li.ourvision {
	background-image: url("../img/tmpl_nav_ourvision.png");
}
.head-menu nav li.spotlight {
	background-image: url("../img/tmpl_nav_spotlight.png");
}
.head-menu nav li.products {
	background-image: url("../img/tmpl_nav_products.png");
}
.head-menu nav li.initiatives {
	background-image: url("../img/tmpl_nav_initiatives.png");
}
.head-menu nav li.movies {
	background-image: url("../img/tmpl_nav_movies.png");
}
.head-menu nav .close {
	display: none;
	width: 30px;
	height: 28px;
	background: url("../img/tmpl_nav_close.png") no-repeat center center;
	background-size: 15px 14px;
}

html.ielegacy .head-menu nav li.current {
	background-position: 0 -70px;
}
html.ielegacy .head-menu nav li a {
	background: url("../img/blank.gif");
}
html.ielegacy .head-menu nav li a:hover {
	filter: alpha(opacity=70);
}

@media(max-width:640px) {
	.head-menu p {
		float: right;
		display: inline-block;
		margin: 12px 15px 0 0;
		padding: 5px 25px 5px;
		font-size: 87.5%;
		line-height: 1.1;
		color: #fff;
		border-radius: 4px;
		background: #749763;
		cursor: pointer;
	}
	.head-menu nav {
		position: absolute;
		right: 2.031%;
		top: 38px;
		z-index: 200;
		display: none;
		margin-right: 0;
		padding-top: 17px;
		background: url("../img/tmpl_nav_arrow.png") no-repeat 90% 0;
		background-size: 26px 23px;
	}
	.head-menu nav ul {
		margin-top: 0;
		padding: 0 0 50px;
		width: 200px;
		border-radius: 6px;
		background: #749763;
	}
	.head-menu nav li {
		float: none;
		display: block;
		margin: 0;
		padding: 0;
		width: auto;
		height: auto;
		font-size: 100%;
		border-bottom: 1px solid #a1b498;
		background-position: -10px -11px;
	}
	.head-menu nav li img.blink {
		display: none;
	}
	.head-menu nav li a {
		padding: 15px 0 14px 40px;
		transition: none;
		-o-transition: none;
		-ms-transition: none;
		-moz-transition: none;
		-webkit-transition: none;
	}
	.head-menu nav li a:hover {
		opacity: 1.0;
	}
	.head-menu nav .close {
		display: block;
		position: absolute;
		left: 50%;
		bottom: 11px;
		margin-left: -15px;
	}
}
@media(max-width:320px) {
	.head-menu nav ul {
		width: 190px;
	}
	.head-menu nav li {
		font-size: 87.5%;
		background-position: -10px -13px;
	}
	.head-menu nav li a {
		padding: 13px 0 12px 40px;
	}
}

/*--------------------------------------------------------------------------------
	.breadcrumbs
--------------------------------------------------------------------------------*/
.breadcrumbs {
	position: absolute;
	z-index: 5;
	width: 100%;
	color: #000;
}
.breadcrumbs.white {
	color: #fff;
}
.breadcrumbs a {
	color: #000;
}
.breadcrumbs a:hover {
	color: #444;
}
.breadcrumbs.white a {
	color: #fff;
}
.breadcrumbs.white a:hover {
	color: #ccc;
}
.breadcrumbs-inner {
	margin: 0 auto;
	padding: 10px 15px 10px;
	width: 920px;
	font-size: 75%;
}

@media(max-width:640px) {
	.breadcrumbs {
		position: static !important;
		background: #fff;
	}
	.breadcrumbs-inner {
		width: auto;
	}
	.breadcrumbs.white,
	.breadcrumbs.white a,
	.breadcrumbs.white a:hover {
		color: #000;
	}
}

/*--------------------------------------------------------------------------------
	.eco-container
--------------------------------------------------------------------------------*/
.eco-container {
	position: relative;
	background-repeat: no-repeat;
	background-position: center bottom;
	overflow: hidden;
}
.eco-container.gray {
	background-color: #ececec;
}

@media(max-width:640px) {
	.eco-container {
		padding-top: 0;
		background-color: #fff;
	}
}

/*--------------------------------------------------------------------------------
	.mainvisual
--------------------------------------------------------------------------------*/
.mainvisual {
	position: relative;
	z-index: 1;
	width: 100%;
	background-repeat: no-repeat;
	background-position: center bottom;
}
.mainvisual-container {
	display: table;
	margin: 0 auto;
	width: 940px;
	height: 400px;
}
.mainvisual-container.gradient {
	height: 214px;
}
.mainvisual-inner {
	display: table-cell;
	width: 100%;
	height: 100% !important;
	text-align: center;
	vertical-align: middle;
	*display: inline;
	*zoom: 1;
}
.mainvisual-inner h2 {
	display: inline-block;
	vertical-align: middle;
	font-size: 156.3%;
	*display: inline;
	*padding-top: 182px;
	*zoom: 1;
}
.mainvisual-inner p {
	font-size: 100%;
}
.mainvisual-blank {
	position: absolute;
	z-index: 0;
	top: 0;
	left: 50%;
	margin-left: -470px;
	width: 940px;
	height: 450px;
	background: #fff;
}

@media(max-width:640px) {
	.mainvisual-container {
		width: 100%;
		height: 440px;
	}
	.mainvisual-inner {
		padding: 0 6.25% 0 7.031%;
	}
	.mainvisual-inner h2 {
		font-size: 150%;
	}
	.mainvisual-inner p {
		font-size: 93.8%;
		line-height: 1.5;
	}
	.mainvisual-blank {
		display: none;
	}
}
@media(max-width:320px) {
	.mainvisual-inner h2 {
		font-size: 143.8%;
		line-height: 1.4;
	}
	.mainvisual-inner p {
		font-size: 87.5%;
	}
}

/*--------------------------------------------------------------------------------
	.inner-contents
--------------------------------------------------------------------------------*/
.inner-contents {
	position: relative;
	z-index: 1;
	margin: 0 auto 0;
	padding: 1px 0 80px;
	width: 940px;
	background: #fff;
}
html.js .inner-contents {
	padding-bottom: 160px;
  padding-bottom: 80px;
}
html.js .inner-contents.has-related {
	padding-bottom: 40px;
}

@media(max-width:640px) {
	.inner-contents {
		width: auto;
		padding-bottom: 12.5% !important;
	}
}

/*--------------------------------------------------------------------------------
	.foot
--------------------------------------------------------------------------------*/
.foot {
	width: 100%;
	background: url("../img/tmpl_foot_bg.png");
}
.foot .foot-inner {
	position: relative;
	margin: 0 auto;
	width: 940px;
	text-align: right;
	zoom: 1;
}
.foot .foot-inner:after {
	clear: both;
	display: block;
	content: "";
}
html.js .foot {
	position: fixed;
	z-index: 10;
}

@media(max-width:640px) {
	.foot {
		position: static !important;
	}
	.foot .foot-inner {
		width: auto;
	}
}

/*--------------------------------------------------------------------------------
	footer : override
--------------------------------------------------------------------------------*/
/*html.js footer {
	position: fixed;
	z-index: 10;
	bottom: -60px;
	left: 0;
	width: 100%;
}

@media(max-width:640px) {
	footer {
		position: static !important;
	}
}*/

/*--------------------------------------------------------------------------------
	#LanguageSelector
--------------------------------------------------------------------------------*/
#LanguageSelector {
	float: right;
}
#LanguageSelector .lang {
	padding: 5px 0 5px;
	width: 120px;
	font-size: 68.8%;
	color: #fff;
	text-align: left;
	background: url("../img/tmpl_foot_lang_arrow.png") no-repeat right bottom #2e2e2e;
	cursor: pointer;
}
#LanguageSelector .lang.true {
	background-position: right top;
}
#LanguageSelector .lang span {
	display: block;
	padding: 0 15px;
	font-family: "SST W55 Regular","\30D2\30E9\30AE\30CE\89D2\30B4\20\50\72\6F\20\57\33","Hiragino Kaku Gothic Pro","\30E1\30A4\30EA\30AA",Meiryo,"\FF2D\FF33\20\FF30\30B4\30B7\30C3\30AF",sans-serif !important;
}
#LanguageSelector .lang-list {
	display: none;
	position: absolute;
	z-index: 10;
	right: 0;
	bottom: 27px;
	min-width: 120px;
	text-align: left;
	background: #2e2e2e;
}
#LanguageSelector .lang-list li {
	font-size: 75%;
	line-height: 1.2;
}
#LanguageSelector .lang-list li a {
	display: block;
	padding: 10px 15px;
	color: #fff;
	text-decoration: none;
	transition: background 0.1s ease-in;
	-o-transition: background 0.1s ease-in;
	-ms-transition: background 0.1s ease-in;
	-moz-transition: background 0.1s ease-in;
	-webkit-transition: background 0.1s ease-in;
}
#LanguageSelector .lang-list li a:hover {
	background: #444;
}
#LanguageSelector .lang-list li.current a {
	color: #0a8926;
}

@media(max-width:640px) {
	#LanguageSelector {
		float: right;
		position: static;
		margin-right: 15px;
	}
	#LanguageSelector .lang-list {
		right: 15px;
	}
}

/*--------------------------------------------------------------------------------
	#include-share-button
--------------------------------------------------------------------------------*/
#include-share-button {
	margin: 80px 0 0;
	height: 21px;
	text-align: center;
}
#include-share-button ul {
	display: inline-block;
	height: 21px;
	*display: inline;
	zoom: 1;
}
#include-share-button ul:after {
	clear: both;
	display: block;
	content: "";
}
#include-share-button li {
	display: inline-block;
	float: left;
	margin: 0 5px;
	height: 21px;
	overflow: hidden;
}
#include-share-button li.facebook {
	width: 110px;
}
#include-share-button li.twitter {
	width: 97px;
}
#include-share-button li.google {
	width: 69px;
}
#include-share-button li.line.false {
	display: none;
}

@media(max-width:640px) {
	#include-share-button {
		margin: 15.625% 20px 0;
		height: auto;
	}
	#include-share-button ul {
		height: auto;
	}
	#include-share-button li {
		margin-top: 5%;
	}
}

/*--------------------------------------------------------------------------------
	.go-to-top
--------------------------------------------------------------------------------*/
.go-to-top {
	margin-top: 50px;
	text-align: center;
}
.go-to-top a {
	padding: 0 0 0 28px;
	font-size: 100%;
	color: #000;
	text-decoration: none;
	background: url("../img/icon_left_darrow.gif") no-repeat 0 center;
}
.go-to-top a:hover {
	color: #666;
}

@media(max-width:640px) {
	.go-to-top {
		margin: 14.285% 6.25% 0;
	}
}

/*--------------------------------------------------------------------------------
	CLASSES
--------------------------------------------------------------------------------*/
/* anchor
--------------------------------------------------------------------------------*/
a img.hover {
	transition: opacity 0.2s ease-in;
	-o-transition: opacity 0.2s ease-in;
	-ms-transition: opacity 0.2s ease-in;
	-moz-transition: opacity 0.2s ease-in;
	-webkit-transition: opacity 0.2s ease-in;
}
a:hover img.hover {
	opacity: 0.7;
}
html.ielegacy a:hover img.hover {
	filter: alpha(opacity=70);
}

@media(max-width:640px) {
	a img.hover {
		transition: none;
		-o-transition: none;
		-ms-transition: none;
		-moz-transition: none;
		-webkit-transition: none;
	}
	a:hover img.hover {
		opacity: 1.0;
	}
}

/* icon
--------------------------------------------------------------------------------*/
.ablank {
	padding: 0 15px 0 0;
	background: url("../img/icon_ablank.gif") no-repeat right center;
}
.ablankw {
	padding: 0 17px;
	background: url("../img/icon_ablankw.gif") no-repeat right center;
}

@media(max-width:640px) {
	.ablank {
		background: url("../img/icon_ablank2.gif") no-repeat right center;
		background-size: 11px 9px;
	}
	.ablankw {
		background: url("../img/icon_ablankw2.gif") no-repeat right center;
		background-size: 11px 9px;
	}
}

/* break
--------------------------------------------------------------------------------*/
.b64 { display: none; }
.b54 { display: none; }
.b48 { display: none; }
.b40 { display: none; }
.b36 { display: none; }
.b32 { display: none; }

@media(max-width:640px) {
	.b64 { display: block; }
	.nb64 { display: none; }
}
@media(max-width:540px) {
	.b54 { display: block; }
	.nb54 { display: none; }
}
@media(max-width:480px) {
	.b48 { display: block; }
	.nb48 { display: none; }
}
@media(max-width:400px) {
	.b40 { display: block; }
	.nb40 { display: none; }
}
@media(max-width:360px) {
	.b36 { display: block; }
	.nb36 { display: none; }
}
@media(max-width:320px) {
	.b32 { display: block; }
	.nb32 { display: none; }
}

/* margin
--------------------------------------------------------------------------------*/
.mrg-t05 { margin-top: 5px; }
.mrg-t10 { margin-top: 10px; }
.mrg-t15 { margin-top: 15px; }
.mrg-t20 { margin-top: 20px; }
.mrg-t25 { margin-top: 25px; }
.mrg-t30 { margin-top: 30px; }
.mrg-t35 { margin-top: 35px; }
.mrg-t40 { margin-top: 40px; }
.mrg-t45 { margin-top: 45px; }
.mrg-t50 { margin-top: 50px; }

@media(max-width:640px) {
	.mrg-t05 { margin-top: 0.781%; }
	.mrg-t10 { margin-top: 1.562%; }
	.mrg-t15 { margin-top: 2.343%; }
	.mrg-t20 { margin-top: 3.125%; }
	.mrg-t25 { margin-top: 3.906%; }
	.mrg-t30 { margin-top: 4.687%; }
	.mrg-t35 { margin-top: 5.468%; }
	.mrg-t40 { margin-top: 6.25%; }
	.mrg-t45 { margin-top: 7.031%; }
	.mrg-t50 { margin-top: 7.812%; }
}

/* others
--------------------------------------------------------------------------------*/
img.radius {
	border-radius: 12px;
}
.disable {
	display: none;
}
.clearfix {
	*zoom: 1;
}
.clearfix:after {
	clear: both;
	display: block;
	content: "";
}

sup {
	position: relative;
	top: 0.3em;
	font-size: xx-small;
	vertical-align: top;
}
sub {
	vertical-align: baseline;
	font-size: xx-small;
}

@media(max-width:640px) {
	.disable {
		display: block;
	}
}
