@charset "UTF-8";

html{ font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro W3","ＭＳ Ｐゴシック","MS PGothic",Geneva,Arial,Verdana,sans-serif; }

body{
	font-size: 12px;
	color: #4E4E4E;
	font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro W3","ＭＳ Ｐゴシック","MS PGothic",Geneva,Arial,Verdana,sans-serif;
	letter-spacing: 1px;
}

html,body,
h1,h2,h3,h4,h5,h6,
ul,ul li,
dl,dl dd,
ol,ol li,
p{
	margin: 0;
	padding: 0;	
}

p{
	margin: 0 0 14px;
}

#container p{
	line-height: 180%;	
}

ul,ol,dl{
	margin: 0;	
}

ul,ul li,
dl,dl dd,
ol,ol li{
	list-style: none;
}

dl dt{
	display: block;
}

a:link,
a:visited{
	color: #1A6AAE;
}
a:hover,
a:active{
	color: #F9C62D;
}

img{
	vertical-align: top;

	border: 0;
}

/*icons*/

.ico_arrow{
	padding-left: 8px;
	background: url(../img/ico/ico_arrow.png) no-repeat 0 50%;
}

#infscr-loading{
		position: fixed;
		clear: both;
	  width: 100%;
	  height: auto;
	  display: block;
	  bottom: 30px;
	  text-align: center;
	  margin-left: -13%;
}

#header .header_inner {
  max-width: 969px;
}

.box-lid-menu{
	-webkit-transition:all 100ms ease-in;
	-moz-transition:all 100ms ease-in;
	-o-transition:all 100ms ease-in;
	transition:all 100ms ease-in;
	text-decoration:none;
	color:#fff;
}

/*SLIDER FIX*/

#main.nomargin,
aside.nomargin{
	margin-top: 0;
}



/* wrapper --------------------------------*/
#wrapper{
}

/* header --------------------------------*/
#header{
	  height: 80px;
	  background: #333;
	  color: #fff;
	  position: fixed;
	  width: 100%;
	  z-index: 1000;
}

#header a{
	color: #fff;

	text-decoration: none;
}

#header .header_inner{
	/*position: relative;*/
	margin: 0 auto;
	/*max-width: 1170px;*/
	width: 100%;
}

#header .header_inner h1,
#header .header_inner a.search_btn,
#header .header_inner ul.header_nav{
	position: absolute;	
}

#header .header_inner h1{top: 17px;left: 24px;}
#header .header_inner h1 a{
	display: block;
}


#main label,
.search_inner label{
	cursor:pointer;
}

#header .header_inner a.search_btn{
	padding: 6px 29px 6px 17px;

	top: 22px;
	right: 40px;

	font-size: 14px;
	color: #4c4c4c;
	
	background: #fff url(../img/ico/ico_btn_plus.png) no-repeat 92% 49%;
}

#header .header_inner a.search_btn:hover{
	background: #F9C62D url(../img/ico/ico_btn_plus.png) no-repeat 92% 49%;
}

#header .header_inner a.search_btn.active{
	background: #F9C62D url(../img/ico/ico_btn_minus.png) no-repeat 92% 49%;
}


#header .header_inner ul.header_nav{
	top: 30px;
	right: 202px;
	display:none;
}

#header .header_inner ul.header_nav li{
	display: inline;
	margin-right: 20px;
}

#header .header_inner ul.header_nav li a:hover{
	text-decoration: underline;
	font-weight: bold;
}
/*search_container*/

div.search_container{
	background: #fff;
	padding-top: 80px;
	display:none;
	/*position: fixed;
    width: 100%;
    top: 0px;
    left: 0px;
    z-index: 999;*/
}

div.search_inner{
	width: 1130px;
	margin: 0 auto;
	padding: 40px 20px;
}

div.search_inner:after,
div.search_container:after{
	clear: both;
	content: " ";
	height: 1px;
	display: block;
}

div.search_container div.column{ 
	width: 25%; 
	float: left;
}

div.search_container div.column ul li span.number{
	display:none;	
}

div.search_container div.column.last{

}

div.search_container div.column a{
	margin-top: 50px;
	display: block;
}

div.search_container div.column.last::after{
	clear: both;
	content: " ";
	height: 1px;
	display: block;
}

div.search_container div.column dl{ 
	margin-bottom: 40px;
}

div.search_container div.column dl dt{ 
	padding: 4px 0px 8px; 
	font-size: 14px; 
	font-weight: bold;
}

div.search_container div.column dl dd li{
	margin-bottom: 8px;
}

div.search_container div.column dl dd li.all_check{ 
	margin-bottom: 14px;
}

input[type="checkbox"]{ 
	display: none;
}

input[type="checkbox"] + label > span.checkbox{
	display: inline-block; 
	margin-right: 8px; 

    width:14px;
    height:14px;
    background:url(../img/ico/bg_uncheck.png) left top no-repeat;
    vertical-align:-2px;
}
input[type="checkbox"]:checked + label{
	font-weight: bold;
	letter-spacing:0.065em;
}
input[type="checkbox"]:checked + label span.checkbox{
	background: url(../img/ico/bg_checked.png) left top no-repeat;
}

/* container */
div#container{
	position: relative;
	margin: 0 auto;
	/*max-width: 1170px;*/
 	width: 100%;
 	background: #fff;
}

/*aside*/

aside{
	clear: both;
	float: left;
	width: 220px;
	margin-top: 80px;
	background: #fff;
}

aside a{
	color: #4d4d4d;

	text-decoration: none;
}

/*
aside dt.category{
	padding: 11px 26px 13px;

	font-size: 14px;
	font-weight: bold;
	color: #4d4d4d;

	background-color: #eee;
	margin-bottom: 8px;
}
*/
aside dt.category{

	font-size: 14px;
	font-weight: bold;
	color: #4d4d4d;

	background-color: #eee;
	margin-bottom: 8px;
}

aside dt.category a{
	display:block;
	width:166px;
	padding:11px 26px 13px;
	height:14px;
	color: #4d4d4d;
}

aside dt.category:active a,
aside dt.category:hover a{
	color:#FFF;
}

aside dl.cat01 dt.category:active,
aside dl.cat01 dt.category:hover{
	background:#64AED7;
}

aside dl.cat02 dt.category:active,
aside dl.cat02 dt.category:hover{
	background:#E66C94;
}

aside dl.cat03 dt.category:active,
aside dl.cat03 dt.category:hover{
	background:#8DC041;
}

aside dd{
	margin-bottom: 10px;
}

aside .subcategory a{
	width: 140px;
	display: block;

	padding: 7px 55px 6px 25px;

	background: #fff url(../img/ico/ico_btn_arrow01.png) no-repeat 89% 49%;
	color: #4E4E4E;
}

aside .cat01 .subcategory a{ background: #fff url(../img/ico/ico_btn_arrow01.png) no-repeat 89% 49%; }
aside .cat02 .subcategory a{ background: #fff url(../img/ico/ico_btn_arrow02.png) no-repeat 89% 49%; }
aside .cat03 .subcategory a{ background: #fff url(../img/ico/ico_btn_arrow03.png) no-repeat 89% 49%; }

aside .subcategory a:hover{
	background: url(../img/ico/ico_btn_arrow00.png) no-repeat 89% 49%;
	color: #fff;
}

aside .cat01 .subcategory a:hover{ background-color: #64AED7; }
aside .cat02 .subcategory a:hover{ background-color: #E66C94; }
aside .cat03 .subcategory a:hover{ background-color: #8DC041; }

aside div.contact{
	width: 171px;
	margin: 30px auto 20px;
	padding: 30px 0px;

	text-align: center;

	border-top: 1px dotted #aaa;
	border-bottom: 1px dotted #aaa;
}

aside div.contact a{ 
	margin-top: 12px;
	display: block;
}

aside div.contact a img:nth-child(2){　
	display: block;
	margin-top: 12px; 
} 

aside p.copyright{
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-size: 10px;
	color: #999;
	text-align: center;
	letter-spacing: 0.5px;
}

/*main*/

div#main{
	float: left;

	margin-top: 80px;

	/*width: 869px;*/
	width: 84%;
	display: block;
	min-height: 1073px;
	
	border-left: 1px solid #eee;

	padding: 26px 0 26px 39px;

	background-color: #f8f8f8;
}

#main .main_zone{
	margin-top: 8px;
}

#main .main_list:after{
	clear: both;
	content: " ";
	height: 1px;
	display: block;
}

#container:after{
	clear: both;
	content: " ";
	height: 1px;
	display: block;
}


#main .main_list li{
	float: left;
		
	margin: 0 30px 0 0;
	padding: 0 0 23px;
		
	overflow: hidden;

	/*min-height: 310px;*/
	height: 310px;
}


dl#no_data{
	display:block;
	padding:10px;
	margin:0 auto;
	text-align:center;
/*	width:700px;	*/
}

dl#no_data dt{
	margin-bottom:12px;
	font-size:22px;
	font-weight:700;
}
dl#no_data dd{
	margin-bottom:22px;
}
dl#no_data dd p{
	text-align:center;
}

dl#no_data dd a{
	color:#4A2585;
	margin-bottom:20px;
	text-decoration:none;
}

dl#no_data dd a:active,
dl#no_data dd a:hover{
	text-decoration:underline;
}
	
/*
#main .main_list li:nth-of-type(3n){
	margin: 0;
}*/

/*RESPONSIVE*/

@media screen and (max-width:2400px){
div#main{width: 84%;}
/*.filtering.main_zone{width: 1387px;}*/
#main .main_list li:nth-of-type(5n){margin-right: 0;}
}
@media screen and (max-width:1728px){
div#main{width: 82%;}
/*.filtering.main_zone{width: 1095px;}*/
#main .main_list li:nth-of-type(5n){margin-right: 30px;}
#main .main_list li:nth-of-type(4n){margin-right: ;0}
}
@media screen and (max-width:1433px){
div#main{width: 77%;}
/*.filtering.main_zone{width: 802px;}*/
#main .main_list li:nth-of-type(4n){margin-right: 30px;}
#main .main_list li:nth-of-type(3n){margin-right: 0;}
}
@media screen and (max-width:1143px){
div#main{width: 71%;}
/*.filtering.main_zone{width: 509px;}*/
#main .main_list li:nth-of-type(3n){margin-right: 30px;}
#main .main_list li:nth-of-type(2n){margin-right: 0;}
}
@media screen and (max-width:834px){
div#main{width: 56%;}
/*.filtering.main_zone{width: 217px;}*/
#main .main_list li:nth-of-type(2n){margin-right: 30px;}
#main .main_list li:nth-of-type(1n){margin-right: 0;}
}

.filtering.main_zone{ padding-right:40px; max-width: 1463px;}


/*RESPONSIVE*/

#main .main_list li a{
	text-decoration: none;
}

#main .main_list li a span.cat_box{ 
	display: block;
	position: relative;
	overflow: hidden;
}

#main .main_list li.cat01 a span.cat_box{ border: 1px solid #64AED7; }
#main .main_list li.cat02 a span.cat_box{ border: 1px solid #E66C94; }
#main .main_list li.cat03 a span.cat_box{ border: 1px solid #8DC041; }

#main .main_list li a span.cat_trans{
	width: 280px;
	height: 200px;
	z-index: 200;
	display: block;
	position: absolute;
	-ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
	background-color: #64AED7;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}

#main .main_list li a:hover img{
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	-ms-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

#main .main_list li a:hover img{
	-webkit-transform: scale(1.1,1.1);
    -moz-transform: scale(1.1,1.1);
    -o-transform: scale(1.1,1.1);
    -ms-transform: scale(1.1,1.1);
    transform: scale(1.1,1.1);
}

#main .main_list li a span.cat_tag{
	display: block;
	position: absolute;
	left: 0px;
	bottom: 0px;
	
	width: 66px;
	height: 24px;
}

#main .main_list li.cat01 a:hover span.cat_trans{ background-color: #64AED7; }
#main .main_list li.cat02 a:hover span.cat_trans{ background-color: #E66C94; }
#main .main_list li.cat03 a:hover span.cat_trans{ background-color: #8DC041; }

#main .main_list li a:hover span.cat_trans{
	-ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=40)";
    filter: alpha(opacity=40);
    opacity: 0.4;
    background-color: #64AED7;
}

#main .main_list li.cat01 a span.cat_tag{ background: url(../img/ico/cat_tag01.jpg) no-repeat bottom left; }
#main .main_list li.cat02 a span.cat_tag{ background: url(../img/ico/cat_tag02.jpg) no-repeat bottom left; }
#main .main_list li.cat03 a span.cat_tag{ background: url(../img/ico/cat_tag03.jpg) no-repeat bottom left; }

#main .main_list li a dl{
	margin: 12px auto 20px;
	width: 280px;
	
}

#main .main_list li a dl dt{
	display: block;

	margin: 0 0 10px;
	width: 93%;

	font-weight: bold;
	color: #4c4c4c;
}

#main .main_list li a dl dd{
	line-height: 160%;
	color: #4e4e4e;
	width: 93%;
}

#main .main_list.mini li a dl{
	margin: 12px auto 20px;
	width: 235px;;
}

#main .main_list.mini li a span.cat_trans{
	width: 235px;
	height: 167px;
}

a.up_btn {
	position: fixed;
	right: 120px;
	bottom: 30px;
	z-index: 0;
	-webkit-opacity: 0;
	-moz-opacity: 0;
	-ms-opacity: 0;
	-o-opacity: 0;
	opacity: 0;
}

a.up_btn.none{
	display: none;
}

/*@media screen and (max-width:1170px){

	div.search_container{
		background: #fff;
		padding-top: 80px;
	}

	div.search_inner{
		width: 100%;
	}

	div.search_container div.column {
	  width: 90%;
	  float: left;
	}

	div#container{
		width: 100%;
		background: #F8F8F8;
	}
	div#main{
		float: left;
		width: 588px;
  		margin: 80px auto;
	}
	aside{
		background: #fff;
	}

	#main .main_list li:nth-of-type(3n){
		margin-right: 11px;
	}

	#main .main_list li:nth-of-type(2n){
		margin-right: 0;
	}
}

@media screen and (max-width:905px){
	div#main{
		width: 290px;
	}
}

@media screen and (max-width:640px){
	#header{
		height: 110px;
	}
	div#container{
  		padding: 110px 0 10px;
	}

	#header .header_inner h1 {
		top: 9px;
		left: -4px; 
		width: 100%;
		text-align: center;
	}

	#header .header_inner h1 img{
		max-width: 277px;
		width: 100%;
		height: auto;
	}

	#header .header_inner a.search_btn {
  		padding: 6px 29px 6px 17px;
  		top: 65px;
  		right: 22px;
 	}

	#header .header_inner ul.header_nav {
		top: 70px;
		left: 32px;
	}

	#header .header_inner ul.header_nav li {
		display: inline;
		margin-right: 0;
	}

	div#main{
		width: 80%;
		float: none;
  		margin: 0 auto;
  		padding: 26px 0;
	}

	#main .main_list li{
		width: 100%;
	}

	#main .main_list li img{
		width: 100%;
		height: auto;
	}

	aside{
		width: 100%;
		background: #fff;
		float: none;
  		margin: 0 auto;
	}
	aside .subcategory a {
		  width: 80%;
		 	height: auto;
	}

	aside div.contact{
		width: 80%;
		display: none;
	}
	aside img{
		width: 100%;
	}
	a.up_btn {
		position: fixed;
		right: 23px;
		bottom: 34px;
		z-index: 2000;
	  
	}
	a.up_btn img{
		width: 50px;
		height: auto;
	}


}