@charset "utf-8";

/**
 *
 * common: 共通
 *
 */
#Page {
	min-width:980px;
}
/*----------------------------
	Header
-----------------------------*/
#Header {
	width:100%;
	height:200px;
	padding:0 40px;
}
#HeaderInner {
	width:100%;
	height:200px;
	max-width:1100px;
	margin:0 auto;
	position:relative;
}
#Header #Title {
	position:absolute;
	top:45px;
	left:0;
}
#Header #Title img {
	width:176px;
	height:auto;
	vertical-align:middle;
	margin:0 20px 0 0;
}
#Header #Title a {
	color:#666;
}
#Header #Title a:hover {
	color:#2b9041;
	text-decoration:none;
}
#GlobalNav {
	width:100%;
	height:80px;
	position:absolute;
	bottom:0;
	left:0;
}
#GlobalNav { overflow:hidden; background:#2a873e;}
#GlobalNav li {
	width:20%;
	float:left;
}
#GlobalNav li:nth-child(odd) a{
	background:#2a873e;
	border:2px solid #2a873e;
}
#GlobalNav li:nth-child(even) a{
	background:#2b9041;
	border:2px solid #2b9041;
}
#GlobalNav li a {
	display:block;
	font-weight:bold;
	width:100%;
	font-size:15px;
	line-height:76px;
	color:#fff;
	text-align:center;
	
}
#GlobalNav li a:hover {
	border:2px solid #2b9041;
	background:#fff;
	color:#2b9041;
	text-decoration:none;
}
#SupportNav {
	position:absolute;
	top:52px;
	right:0;
}
#SupportNav li {
	display:inline-block;
}
#SupportNav li:first-child:after {
	content:"｜";
}

/*----------------------------
	Contents
-----------------------------*/
#Contents p {
	line-height:1.6;
}
#Contents section {
	padding:50px 40px 60px 40px;
}
div.section-inner {
	width:100%;
	max-width:1100px;
	margin:0 auto;
}
#Contents section h2,
#Contact h2 {
	text-align:center;
	font-size:15px;
	line-height:1.5;
	letter-spacing:4px;
	margin:0 0 40px;
}
#Contents section h2 span,
#Contact h2 span {
	font-size:32px;
	color:#2b9041;
}

/*----------------------------
	Footer
-----------------------------*/
#Contact {
	padding:80px 0;
	color:#fff !important;
	background:url(../images/contact-bg.jpg) no-repeat center center;
	background-size:cover;
}
#Contact h2 span {
	color:#fff;
}
#Contact .btn a {
	padding:20px 30px;
	font-size:16px;
	min-width:300px;
	font-weight:bold;
	border:2px solid #fff;
}
#Contact .btn a:hover {
	border:2px solid #2b9041;
}
#FooterNav {
	padding:50px 40px 100px 40px;
}
#Footer {
	background:#fff;
	line-height:1.5;
	position:relative;
}
#Footer h4{
	margin:0 0 10px 0;
}
#Footer li a {
	color:#666;
	text-decoration:none;
}
#Footer li a:hover {
	color:#2b9041;
}
#Footer .partner{
	color:#2b9041
}
#Footer .partner a{
	color:#2b9041
}
#Footer li {
	margin:0 0 5px 0;
}
#Footer #FooterNav {
	overflow:hidden;
}
#Footer .category {
	width:20%;
	float:left;
}
#FooterInner {
	max-width:1180px;
	margin:0 auto;
}
#Footer small {
	display:block;
	width:100%;
	position:absolute;
	bottom:0;
	left:0;
	background:#2b9041;
	color:#fff;
	padding:15px;
}
#Footer small span {
	display:block;
	max-width:1100px;
	margin:0 auto;
}

/****************************
 Animation
****************************/
@keyframes navMove {
	0% {right:-320px;}
	100% {right:0;}
}
@keyframes fadeIn {
	0% {opacity:0;}
	100% {opacity:1;}
}
/*--------------------------------------------------------------------------
	Tablet
---------------------------------------------------------------------------*/

@media all and (max-width: 1024px) {


}

/*--------------------------------------------------------------------------
	Smart Phone
---------------------------------------------------------------------------*/

@media all and (max-width: 767px){
#Page {
	min-width:auto;
}
#Header {
	width:100%;
	height:60px;
	padding:0;
}
#HeaderInner {
	height:60px;
}
#Header #Title {
	position:absolute;
	top:20px;
	left:15px;
	font-size:12px;
}
#Header #Title img {
	width:130px;
	height:auto;
	vertical-align:middle;
	margin:0 10px 0 0;
}
#Nav.active {
	animation: fadeIn 0.25s alternate ease-out;
	-ms-animation: fadeIn 0.25s alternate ease-out;
	-webkit-animation: fadeIn 0.25s alternate ease-out;
	-moz-animation: fadeIn 0.25s alternate ease-out;
}
#Nav.active #NavInner {
	animation: navMove 0.25s alternate ease-out;
	-ms-animation: navMove 0.25s alternate ease-out;
	-webkit-animation: navMove 0.25s alternate ease-out;
	-moz-animation: navMove 0.25s alternate ease-out;
}
#Nav {
	width:100%;
	height:100%;
	background:rgba(32,32,32,0.5);
	position:fixed;
	top:0;
	right:0;
	z-index:10000;
}
#NavInner {
	width:320px;
	height:100%;
	position:absolute;
	top:0;
	right:0;
	background:#ddd;
}
#GlobalNav {
	width:100%;
	height:auto;
	position:static;
	bottom:auto;
	left:auto;
	background:#ddd;
}
#GlobalNav li {
	display:block;
	width:100%;
	float:none;
	border-bottom:1px solid rgba(255,255,255,0.2) !important;
}
#GlobalNav li a {
	height:auto;
	line-height:2 !important;
	text-align:left;
	padding:20px;
	background:#fff !important;
	border:none !important;
	color:#2b9041;
}
#SupportNav {
	position:static;
	top:auto;
	right:auto;
}
#SupportNav li {
	display:block;
	width:100%;
}
#SupportNav li {
	background:#fff;
	border-bottom:1px solid rgba(34,34,34,0.2);
}
#SupportNav li a {
	display:block;
	padding:20px;
}
#SupportNav li:first-child:after {
	display:none;
}
/****************************
 MENU
****************************/
#MenuButton {
	position:fixed;
	top:30px;
	right:30px;
	z-index:1002;
	cursor:pointer;
}
#Menu {
	width: 24px;
	height: 24px;
	margin: 0 auto;
	position: relative;
	cursor: pointer;
}
#Menu .bar {
	display: inline-block;
	width: 24px;
	height: 1px;
	background-color: #2a873e;
	position: absolute;
	left: 0;
	transition: .15s ease-in-out;
}
#bar01 {
	top: 0;
}
#bar02 {
	top: 8px;
}
#bar03 {
	top: 16px;
}
#Menu.active .bar {
	background-color: #bd102e;
}
#Menu.active #bar01 {
	top: 8px;
	transform: rotate(45deg);
}
#Menu.active #bar02 {
	width: 0;
}
#Menu.active #bar03 {
	top: 8px;
	transform: rotate(-45deg);
}
/****************************
 Header
****************************/
#MenuButton {
	top:20px;
	right:20px;
	z-index:1002;
	cursor:pointer;
}
/****************************
 Contents
****************************/
#Contents section {
	padding:40px 10px 50px 10px;
}
#Contents h2 {
	margin:0 0 30px 0;
}
/*----------------------------
	Footer
-----------------------------*/
#Footer .category {
	width:100%;
	float:none;
	padding:10px 0;
}
#Footer .category  a {
	display:block;
	border-bottom:1px solid #ddd;
	padding:5px 0 15px 0;
}
#Contact {
	padding:50px 0;
}
#Contact .btn a {
	padding:10px 20px;
	font-size:15px;
	min-width:280px;
}

#FooterNav {
	padding:40px 20px 80px 20px;
}
#FooterInner {
	max-width:1180px;
	margin:0 auto;
}
#Footer small {
	display:block;
	width:100%;
	position:absolute;
	bottom:0;
	left:0;
	background:#2b9041;
	color:#fff;
	padding:15px;
}
#Footer small span {
	display:block;
	max-width:1100px;
	margin:0 auto;
}

}