body,header,article,aside,footer,div,ul,li,p,a,img,section,ol,dd,dt,h1,h2,h3,h4{
	margin: 0px;
	padding: 0px;
	border: 0px;
}

body{
	background: url(../img/common/body_bg.png) repeat-x;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

header,article,aside,footer{
	display: block;
}

img{
	border: none;
}

a img{
	border: none;
}

section{
	clear: both;
}

a {
	color: #000;
	text-decoration: none;
}

a img:hover{
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;	
}

h1{
	clear: both;
	padding-top: 10px;
	width: 100%;
	margin-bottom: 10px;
}

h2{
	font-family: "小塚明朝 Pr6N","ＭＳ 明朝","ヒラギノ明朝 Pro W3","HG明朝E","ＭＳ Ｐ明朝",serif;
	color: #445897;
	font-size: 32px;
	font-weight: normal;
	margin-bottom: 10px;
}

.clear{
	clear: both;
}

.bold{
	font-weight: bold;
}

#container{
	margin: 0 auto 10px auto;
	width: 1022px;
	border: #231815 solid 1px;
	background: #FFF;
}

#wrapper{
	padding: 30px 27px;
}

@media screen and (max-width: 1024px){
	#container{
		margin: 0 auto;
		width: 100%;
		border: none;
	}

	#wrapper{
		width: 100%;
		padding: 0px;
	}

	h1 img{
		max-width: 100%;
		margin-bottom: 30px;
	}

	header img{
		max-width: 100%;
	}

	img {
		max-width: 100%;
	}

	p{
		margin: 0px 1px;
		font-size: 16px;
	}

	h2{
		font-size: 21px;
	}
}

@media screen and (max-width: 768px){
	#container{
		margin: 0 auto;
		width: 100%;
		border: none;
	}

	#wrapper{
		width: 100%;
		padding: 0px;
	}

	h1 img{
		max-width: 100%;
		margin-bottom: 30px;
	}

	header img{
		max-width: 100%;
	}

	img {
		display: block;
		margin: 0 auto;
	}
}

/*header
---------------------------*/
nav{
	clear: both;
}

nav ul{
	list-style: none;
	width: 100%;
}

nav ul li a{
	padding:5px 0px;
	height: 22px;
	width: 40%;
	border-left: 2px solid #666;
	float: left;
	text-align: center;
	border-bottom: dotted 1px #666;
	font-size: 17px;
}

nav ul li.last{
	border-right: 2px solid #666;	
}

nav ul li.current{
	background: #445897;
	color: #FFF;
}

nav ul li:hover{
	background: #445897;
	color: #FFF;
}

nav ul .current a{
	background: #445897;
	color: #FFF;
}

nav ul a:hover{
	background: #445897;
	color: #FFF;
}

/*responsive*/
nav a.pull {
  display: none;
}
    .clearfix:before,  
    .clearfix:after {  
        content: " ";  
        display: table;  
    }  
    .clearfix:after {  
        clear: both;  
    }  
    .clearfix {  
        *zoom: 1;  
    }  

@media screen and (max-width : 767px) {
  nav {
    border-bottom: 0;
    width: 100%;
  }
  nav ul {
    display: none;
    height: auto;
    width: 100%;
  }

	nav ul li.last{
		border: none;
	}

	nav ul li.current{
		background: #445897;
		color: #FFF;
	}

  nav ul li{
	text-align: center;
	border: none;
	border-bottom: 1px dotted #999;
  	float: none;
  	width: 100%;
  	clear: both;
  }

  nav a.pull {
    display: block;
    background-color: #283744;
    color: #FFF;
    width: 100%;
    text-align: center;
    position: relative;
    padding: 10px 0px;
  }
  nav a.pull:after {
    content:"";
    background: url('img/nav-icon.png') no-repeat;
    width: 30px;
    height: 30px;
    display: inline-block;
    position: absolute;
    right: 15px;
    top: 10px;
  }
}

/*footer
---------------------------*/
footer{
	clear: both;
	border-top: dotted 1px #999;
	margin-top: 30px;
	padding: 5px 0px;
	width: 100%;
}

#toTop{
	z-index: 100;
	float: right;
	margin-top: -40px;
}

#f_link{
	float: left;
	width: 60%;
	border-right: 1px dotted #999;
}

#f_link img{
	padding-left: 11px;
}

.f_hline{
	border-bottom: 1px dotted #999;	
	padding: 10px 0px;
	width: 95%;
}

.f_hline .facebook{
	padding-top: 13px;
	float: right;
}

#f_link .bn{
	clear: both;
	padding: 10px 0px;
}

.bn div.box{
	width: 100%;
	clear: both;
}

.bn img{
	padding-left: 10px;
	margin-bottom: 10px;
	display: block;
	float: left;
}

.bn span{
	padding-left: 20px;
	float: left;
	padding-top: 20px;
	font-size: 18px;
}

#address{
	float: right;
	width: 39%;
}

#address img{
	padding: 0px 0px 30px 0px;
}

#address p{
	text-align: center;
	line-height: 2em;
}

#address address{
	text-align: center;
	font-size: 17px;
	font-style: normal;
}

#address span.bold{
	font-weight: bold;
}

#address span.blue{
	color: #6A9CC6;
}

#address a{
	color: #6A9CC6;	
}

.copy_right{
	clear: both;
	background: #445897;
	text-align: center;
	color: #FFF;
	margin-top: 5px;
}
@media screen and (max-width: 768px){
	footer{
		clear: both;
		margin-top: 10px;
	}
	#toTop{
		z-index: 100;
		float: right;
		margin-top: 0px;
	}

	#f_link{
		float: none;
		width: 99%;
		border-right: 1px dotted #999;
	}

	#f_link img{
		padding: 0px;
	}

	.f_hline{
		border-bottom: 1px dotted #999;	
		padding: 10px 5px;
		width: 95%;
	}

	.f_hline .facebook{
		float: none;
		clear: both;
	}

	#f_link .bn{
		clear: both;
		padding: 10px 0px;
	}

	.bn div.box{
		width: 100%;
		clear: both;
		text-align: center;
	}

	.bn img{
		padding: 0px;
		margin: 10px auto;
		display: block;
		float: none;
		width: 80%;
	}

	.bn span{
		display: none;
	}

	#address{
		float: none;
		width: 100%;
	}

	#address img{
		padding: 0px 0px 30px 0px;
	}

	#address p{
		text-align: center;
		line-height: 2em;
	}

	#address address{
		text-align: center;
		font-size: 17px;
		font-style: normal;
	}

	#address span.bold{
		font-weight: bold;
	}

	#address span.blue{
		color: #6A9CC6;
	}

	.copy_right{
		clear: both;
		background: #445897;
		text-align: center;
		color: #FFF;
		margin-top: 5px;
	}
}