@charset "UTF-8";

/*	共通
-----------------------------*/
html{
	color:#2e2e2e;
	height:100%;
	font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
body{
	height:100%;
}
a{
	color:#343434;
	text-decoration:none;
}
a:hover{
	color:#41B842;
}
li{
	list-style:none;
}
.sp{
	display:none;
}
.pc{
	display:block;
}
.basewrap{
	width:1000px;
	margin:0 auto;
}
#jump{
    position: fixed;
	right: 0;
	bottom: 0;
    height: 140px;
}
#jump a{
	background:#222;
    width: 60px;
    height: 80px;
    display: block;
	position:relative;
}
#jump a img{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 30px;
	height: 23px;
}

.clearfix:after{
  content: "."; 
  display: block; 
  height: 0; 
  font-size:0;	
  clear: both; 
  visibility:hidden;
}
.clearfix{display: inline-block;} 

/* Hides from IE Mac \*/
* html .clearfix {height: 1%;}
.clearfix{display:block;}
/* End Hack */ 

a[href$=".pdf"]::after{
	content:"";
  	display: inline-block; 
	background: url(/common/img/pdf.png) no-repeat left center;
	background-size:100% 100%;
	width:16px;
	height:16px;
	vertical-align:-2px;
	margin-left:10px;
}
a[href^="http"]::after {
	content:"";
  	display: inline-block; 
	background: url(/common/img/blank.png) no-repeat left center;
	background-size:100% 100%;
	width:12px;
	height:11px;
	vertical-align:text-top;
	margin-left:5px;
}
a.noicon::after{
	background:none;
	display:none;
}
.mouse-over{
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.mouse-over:hover{
	opacity:0.7;
}
a.more{
	display:inline-block;
	padding: 0 20px 0 0;
	color:#FFFFFF;
	background:url(/common/img/more_bg.png) no-repeat right bottom;
}
a.more_on{
	display:inline-block;
	padding: 0 20px 0 0;
	color:#FFFFFF;
	background:url(/common/img/more_bg_on.png) no-repeat right bottom;
}
a.more2{
	display:inline-block;
	padding: 0 20px 0 0;
	color:#FFFFFF;
	background:url(/common/more_bg2.png) no-repeat right bottom;
}
a.more2_on{
	display:inline-block;
	padding: 0 20px 0 0;
	color:#FFFFFF;
	background:url(/common/img/more_bg2_on.png) no-repeat right bottom;
}
a.more3{
	display:inline-block;
	padding: 0 20px 0 0;
	color:#40b841;
	background:url(/common/more_bg2.png) no-repeat right bottom;
}
a.more3_on{
	display:inline-block;
	padding: 0 20px 0 0;
	color:#40b841;
	background:url(/common/img/more_bg2_on.png) no-repeat right bottom;
}

/* 共通パーツ */
h1.pagetitle{
	line-height:1.6;
	padding-bottom:7px;
	position:relative;
	font-size:1.8em;
	margin-top:10px;
	margin-bottom:40px;
}
h1.pagetitle::after{
	content:"";
	position:absolute;
	width:20px;
	height:2px;
	background:#40b841;
	bottom:0;
	left:0;
}
h2.section_title{
	font-size:1.2em;
	padding-bottom:4px;
	border-bottom:#2e2e2e solid 1px;
	font-weight:bold;
}
h3.subject{
	font-size:1.2em;
	line-height:1;
	padding-left:10px;
	border-left:#41B842 solid 2px;
}
.btn_type1{
	display:block;
	color:#FFF;
	background:#41B842;
	position:relative;
	text-align:center;
	line-height:1.6;
	padding:16px;
	border-radius:5px;
	
/*	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;*/
}
.btn_type1::after{
	position:absolute;
	content: "";
	width:7px;
	height:7px;
	top:50%;
	right:20px;
	margin-top:-4px;
	border-top:#FFF solid 2px;
	border-right:#FFF solid 2px;
	-moz-transform: rotate(135deg);
	-o-transform:rotate(135deg);
	-webkit-transform:rotate(135deg);
	transform:rotate(135deg);
}
.btn_type1:hover{
	color:#FFF;
	opacity:0.8;
}
.btn_type2{
	display:block;
	color:#FFF;
	background:#41B842;
	position:relative;
	text-align:center;
	line-height:1.6;
	padding:16px;
	border-radius:5px;
	
/*	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;*/
}
.btn_type2::after{
	position:absolute;
	content: "";
	width:7px;
	height:7px;
	top:50%;
	right:20px;
	margin-top:-4px;
	border-top:#FFF solid 2px;
	border-right:#FFF solid 2px;
	-moz-transform: rotate(45deg);
	-o-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
.btn_type2:hover{
	color:#FFF;
	opacity:0.8;
}
.table{
	display:table;
	border-collapse: collapse;
	border-spacing: 0;
	width:100%;
}
.table .tr{
	display:table-row;
}
.table .th{
	display:table-cell;
	vertical-align:middle;
	font-weight:normal;
	text-align:left;
	width:25%;
	line-height:1.6;
	padding:8px 5px 8px 16px;
	background:#f6f6f6;
	border:#CCC solid 1px;
}
.table .td{
	display:table-cell;
	line-height:1.6;
	padding:8px 16px;
	background:#FFF;
	border:#CCC solid 1px;
}
.table .td a{
	color:#40b841;
}



/*	ヘッダー
-----------------------------*/
#header .logo{
	float:left;
	width:89px;
	line-height:0;
	margin:40px 0 0 35px;
}
#header .links{
	float:right;
	text-align:right;
	padding:0 40px 0 0px;
}
#header .links .t{
	font-size:0.8em;
	padding:10px 0
}
#header .links .c{
	padding-top:21px;
	border-top: #E8E8E8 solid 1px;
}
#header .links li{
	vertical-align:top;
	display:inline-block;
	line-height:30px;
}
#header .links li.sp{
	display:none;
}
#header .links li.imgbtn{
	line-height:0;
}
#header .links .t li{
	padding-left:33px;
	position:relative;
}
#header .links .t li:before{
	content:"";
	position:absolute;
	width:1px;
	height:11px;
	background:#CCC;
	top:9px;
	left:16px;
}
#header .links .t li:first-child{
	padding-left:0;
}
#header .links .t li:first-child::before{
	display:none;
}
#header .links .c li{
	margin-right:31px;
	padding-bottom:19px;
}
#header .links .c li.imgbtn{
	margin-right:5px;
	padding-left:10px;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
#header .links .c li.imgbtn:hover{
	opacity:0.8;
}
#header .links .c li:last-child{
	margin-right:0;
	padding-left:0;
}
#header .links .c li a{
	display:block;
}
#header .links .c li.active{
	padding-bottom:15px;
	border-bottom:#41B842 solid 4px;
}
#header .links .c li.active a{
	color:#41B842;
}
#header .links .c li > .submenu{
	z-index:8000;
}
#header .links .c li#brandsmenu > .submenu{
	overflow:hidden;
	top:0;
	left:0;
	background:#e8e8e8;
	position:absolute;
	width:100%;
	border-top:#e8e8e8 solid 1px;
	border-bottom:#e8e8e8 solid 1px;
}
#header .links .c li#brandsmenu > .submenu > ul{
	padding:12px 0 20px 0;
}
#header .links .c li#brandsmenu > .submenu > ul > li{
	display:block;
	float:left;
	margin:10px 8px 0 0;
	width:118px;
	padding-bottom:0;
}
#header .links .c li#brandsmenu > .submenu > ul > li img{
	width:100%;
	height:auto;
}
#header .links .c li#brandsmenu > .submenu > ul > li:nth-child(8n){
	margin: 10px 0 0 0;
}
#header .links .c li#brandsmenu > .submenu > ul > li > a{
	line-height:0;
	display:block;
	position:relative;
	border:#e8e8e8 solid 1px;
	padding:0;
	margin:0;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
#header .links .c li#brandsmenu > .submenu > ul > li > a:hover{
	opacity:0.6;
}
#header .links .c li#brandsmenu > .submenu > ul > li > a > img{
	display:block;
}
#header .links .c li#brandsmenu > .submenu > ul > li.on > a:after{
	content:"";
	width:100%;
	height:3px;
	background:#41B842;
	position:absolute;
	bottom:0;
	left:0;
}
#header .links .c li#irmenu > .submenu{
	overflow:hidden;
	top:0;
	left:0;
	background:#e8e8e8;
	position:absolute;
	width:100%;
	border-top:#e8e8e8 solid 1px;
	border-bottom:#e8e8e8 solid 1px;
}
#header .links .c li#irmenu > .submenu > ul{
	padding:10px 0 20px;
	text-align:left;
}
#header .links .c li#irmenu > .submenu > ul > li{
	height:auto;
	width:auto;
	display:block;
	float:left;
	position:relative;
	font-size:0.9em;
	line-height:1.6;
	padding:0 5px 0 15px;
	margin: 10px 5px 0;
}
#header .links .c li#irmenu > .submenu > ul > li::before{
	position:absolute;
	content: "";
	width:1px;
	height:20px;
	top:2px;
	left:0px;
	margin-top:-1px;
	background:#CCC;
}
#header .links .c li#irmenu > .submenu > ul > li.on > a{
	color: #41B842;
}

#header .links .c li#companymenu > .submenu{
	overflow:hidden;
	top:0;
	left:0;
	background:#e8e8e8;
	position:absolute;
	width:100%;
	border-top:#e8e8e8 solid 1px;
	border-bottom:#e8e8e8 solid 1px;
}
#header .links .c li#companymenu > .submenu > ul{
	padding:10px 0 20px;
	text-align:left;
}
#header .links .c li#companymenu > .submenu > ul > li{
	height:auto;
	width:auto;
	display:block;
	float:left;
	position:relative;
	font-size:0.9em;
	line-height:1.6;
	padding:0 5px 0 15px;
	margin: 10px 5px 0;
}
#header .links .c li#companymenu > .submenu > ul > li::before{
	position:absolute;
	content: "";
	width:1px;
	height:20px;
	top:2px;
	left:0px;
	margin-top:-1px;
	background:#CCC;
}
#header .links .c li#companymenu > .submenu > ul > li.on > a{
	color: #41B842;
}

/*	コンテンツ
-----------------------------*/
main.contents{
	border-top:#e8e8e8 solid 1px;
}
main.contents#top{
	border-top:none;
}


/*	パンくず
-----------------------------*/
#pnkz{
	font-size:0.8em;
	text-align:left;
}
#pnkz ul{
	padding:7px 0;
}
#pnkz ul li{
	display:inline-block;
	color:#999999;
}
#pnkz ul li a{
	color:#666666;
	position:relative;
	padding-right:23px;
	text-decoration:underline;
}
#pnkz ul li a::after{
	position:absolute;
	content: "";
	width:4px;
	height:4px;
	top:7px;
	right:8px;
	border-top:#333 solid 1px;
	border-right:#333 solid 1px;
	-moz-transform: rotate(45deg);
	-o-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}


/*	フッター
-----------------------------*/
#footer{
	background:#222222;
	margin-top:120px;
}
#footer .sitemap{
	padding-top:55px;
	padding-bottom:80px;
    width: 1080px;
}
#footer .sitemap nav{
	display:table;
	width:100%;
}
#footer .sitemap nav a:hover{
	text-decoration:underline;
}
#footer .sitemap nav > ul{
	display:table-cell;
}
#footer .sitemap nav > ul li{
	padding-right:23px;
	color:#FFF;
}
#footer .sitemap nav > ul:last-child li{
	padding-right:0px;
}
#footer .sitemap nav > ul li a{
	color:#FFF;
}
#footer .sitemap nav > ul > li{
	padding-left:24px;
	font-size:0.8em;
}
#footer .sitemap nav > ul > li .sub{
	font-size:1.2em;
	position:relative;
	margin-top:15px;
}
#footer .sitemap nav > ul > li .sub:before{
	content:"－";
	color:#FFF;
	position:absolute;
	top:0;
	left: -24px;
}
#footer .sitemap nav > ul > li > ul > li{
	margin-top:7px;
}
#footer .foot{
	background: #000000; /* Old browsers */
	background: -moz-linear-gradient(top, #000000 0%, #232323 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #000000 0%,#232323 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #000000 0%,#232323 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#232323',GradientType=0 ); /* IE6-9 */
	
	font-size:0.8em;
}
#footer .foot{
	padding:10px 0;
}
#footer .foot ul{
	float:left;
}
#footer .foot ul li{
	display:inline-block;
	padding:0 10px;
	border-left:#333 solid 1px;
}
#footer .foot ul li a{
	color:#FFF;
}
#footer .foot .copyright{
	text-align:right;
	color:#FFF;
}



@media screen and (max-width:1120px) {

/*	共通
-----------------------------*/
.sp{
	display:block;
}
.pc{
	display:none;
}
.contents{
	padding-top:90px;
}
.basewrap{
	width:auto;
	padding:0 20px;
	margin:0;
}
#jump{
    position: fixed;
	right: 0;
	bottom: 0;
    height: 60px;
}
#jump a{
	background:#222;
    width: 60px;
    height: 60px;
    display: block;
	position:relative;
}

/* 共通パーツ */
h1.pagetitle{
	font-size:1.4em;
	margin-bottom:30px;
}
.btn_type1{
	padding:13px 16px;
}
.btn_type1::after{
	-moz-transform: rotate(45deg);
	-o-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
.table{
	display:block;
	width:100%;
	border-bottom:#CCC solid 1px;
}
.table .tr{
	display:block;
}
.table .th{
	display:block;
	width:auto;
}
.table .td{
	display:block;
	border-top:none;
	border-bottom:none;
}


/*	ヘッダー
-----------------------------*/	
#header{
	position:fixed;
	width:100%;
	height:90px;
	background:#FFF;
	z-index:9999;
	border-bottom:#e8e8e8 solid 1px;
}
#header .logo {
    margin: 20px 0 0 25px;
}
#header .links{
	padding:0;
	right:0;
}
#header .links .c li.active{
	padding-bottom:0;
}
#header .sub{
	width:120px;
	position:absolute;
	top:20px;
	right:0;
	z-index:9999;
}
#header .sub a{
	text-align:left;
	display:block;
	background:#40b841;
	color:#FFF;
	padding:12px 5px 12px 40px;
	position:relative;
	border-radius:5px 0 0 5px;
}
#header .sub a.off{
	display:none;
}
#header .sub a:before{
	position:absolute;
	z-index:1;
	content: "≡";
	font-size:1.6em;
	line-height:1;
	top: 12px;
	left: 10px;
}
#header .navwrap{
	position:absolute;
	top:0;
	right:0;
	background:#FFFFFF;
	z-index:9000;
}
#header .navwrap .inner{
	position:relative;
}
#header .navwrap .inner #close{
	position:absolute;
	font-size:3em;
	line-height:1;
	top:10px;
	right:10px;
	color:#666666;
}
#header .navwrap .inner ul li{
	display:block;
	margin:0;
	padding:0;
	line-height:1.4;
	text-align:center;
}
#header .navwrap .inner ul li.imgbtn{
	line-height:0;
}
#header .navwrap .inner ul li.active{
	border:none;
}
#header .navwrap .inner ul li a{
	font-weight:bold;
	color:#666666;
	padding:10px 0;
}
#header .navwrap .inner ul.c{
	border:none;
	padding-top:50px;
}
#header .navwrap .inner ul.b{
	display:flex;
	justify-content: center;
	margin-top:20px;
}
#header .navwrap .inner ul.b li{
	font-size:0.8em;
	padding:0 10px;
	border-left: #CCC solid 1px;
}
#header .navwrap .inner ul.b li:first-child{
	border:none;
}
#header .navwrap .inner ul.b li a{
	font-weight:normal;
}
#header .menubg{
	z-index:1;
	background:rgba(0,0,0,0.6);
	position:absolute;
	top:0;
	left:0;
	opacity:0;
}


/*	コンテンツ
-----------------------------*/
main.contents{
	border-top:none;
}


/*	パンくず
-----------------------------*/
#pnkz{
	padding:0 20px;
}


/*	フッター
-----------------------------*/
#footer{
	background:none;
	margin-top:160px;
}
#footer .sitemap{
	display:none;
}
#footer .foot{
	padding:0;
}
#footer .foot .basewrap{
	padding:0;
}
#footer .foot ul{
	float:none;
	background:#222222;
	padding:20px 20px;
}
#footer .foot ul li{
	display:block;
	font-size:1.2em;
	border:none;
	border-bottom:#666666 solid 1px;
}
#footer .foot ul li a{
	display:block;
	padding:16px 0;
	position:relative;
}
#footer .foot ul li a:before{
	position:absolute;
	content:"";
	right: 14px;
	top:24px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #FFF;
	border-right: 2px solid #FFF;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#footer .foot .copyright{
	text-align:center;
	padding:20px 0;
}

}


.spContactView{
	display: none;
}