@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Kosugi+Maru&display=swap&subset=japanese');

/* 全ての要素に対する余白初期値設定 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, main, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video{
	margin:0;
	padding:0;
	border: 0;
	font-size: 100%;
}

/*全要素*/

body{
	background:url(../images/common/body.jpg);
	font-family:sans-serif;
	font-size:87.5%;
	line-height:1.5;
	color:#262626;
	letter-spacing:0.15em;
	font-family:'Kosugi Maru', meiryo, helvetica, arial, 'hiragino kaku gothic pro', 'ms pgothic', sans-serif;
}

	
li{
	list-style:none;
}

a{
	text-decoration:none;
}

a,
img{
	max-width:100%;
	height:auto;
}

/*全体枠*/

#wrap{
	max-width:960px;
	margin:0 auto;
}

/*ヘッダー*/
header{
	position:relative;
	background:url(../images/common/header_1.jpg);
	width:960px;
	height:200px;
	font-size:150%;
	color:#fff;
}

header h1,
header p{
	text-shadow: 1px 1px 0 #262626
}

header h1{
	margin-left:30px;
	padding-top:10px;
}

header h1 #logo{
	background:url(../images/common/logo.png) no-repeat;
	display:block;
	width:281px;
	line-height:150px;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	position:absolute;
	z-index:1;
}

header p{
	position:absolute;
	right:15px;
	top:125px;
	font-size:125%;
}


/*メインコンテンツ*/
#main{
	width:960px;
	margin:0 auto;
	background:#EEDFCC;
	overflow:hidden;	
}

#main p{
	text-indent:1em;
}

/*フッター*/

footer{
	background:#0A330B;
	width:960px;
	height:50px;
	margin:0 auto;
	color:#fff;
	position:relative;
}

footer a{
	text-decoration:none;
	color:#fff;
}

#policy{
	position:absolute;
	bottom:5px;
	left:150px;
}

#access:hover,
#policy:hover{
	color:#e0dc62;
}

#access{
	position:absolute;
	bottom:5px;
	left:60px;
}

footer p{
	position:absolute;
	bottom:5px;
	right:80px;
}

/*ドロップダウンリスト*/

#menus{
	list-style-type: none;
	width: 960px;
	height: 40px;
	margin: 0 auto;
	padding: 0;
	background-image:url(../images/common/menu_bar1.jpg);
	background-repeat:repeat;
}
#menus li{
	position: relative;
	width: 320px;
	float: left;
	margin: 0;
	padding: 0;
	text-align: center;
	z-index:1500;
}
#menus > li:first-child{
	position: relative;
	width: 320px;
	float: left;
	margin: 0;
	padding: 0;
	text-align: center;
	z-index:1500;
}
#menus li a{
	display: block;
	margin: 0;
	padding: 13px 0;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
}
#menus li ul{
	list-style: none;
	position: absolute;
	top: 100%;
	left: 0;
	margin: 0;
	padding: 0;
	z-index:1500;
}
#menus li:last-child ul{
	left: 0;
	width: 100%
}
#menus li ul li{
	overflow: hidden;
	width: 100%;
	height: 0;
	color: #fff;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
}
#menus li ul li a{
	padding: 13px 25px;
	background-image:url(../images/common/menu_bar1.jpg);
	text-align: left;
	font-size: 12px;
	font-weight: normal;
}
#menus li:hover > a{
	background-image:url(../images/common/menu_bar1.jpg);
	color: #e0dc62;
}
#menus li:hover ul li{
	overflow: visible;
	height: 38px;
	border-bottom: 1px solid #fff;
}
#menus li:hover ul li:first-child{
	border-top: 0;
}
#menus li:hover ul li:last-child{
	border-bottom: 0;
}

/*ドロップリスト*/

.drawer-nav{
	text-align:left;
}

/*表示・非表示*/

.up780_none{
	display:none
}
.up480_none{
	display:none;
}

/*ウィンドウ幅が780px以下の場合に適用*/
@media screen and (max-width: 780px) {
	#wrap{
		overflow-x:hidden;
	}
	
	/*ヘッダー*/
	
	header{
		width:100%;
	}
	
	header h1 #logo{
		top:35px;
		left:25px;
	}

	header {
		font-size:100%;
		height:150px;
		}
		
	header h1 #logo{
	background:url(../images/common/logo_s.png) no-repeat;
	width:187px;
	height:100px;
	}
	
	header p{
	right:1.5%;
	top:65%;
}
	/*メインコンテンツ*/
	
	#main{
		width:100%;
	}
	
	/*フッター*/
	
	footer{
	width:100%;
	height:40px;
	}

	footer p{
		text-align:center;
		width:480px;
		top: 50%;
		left: 50%;
		transform: translateX(-50%);
		}
		
	/*表示・非表示*/
	
	.up780_none{
		display:block;
		margin:-auto;
	}
	
	.down780_none{
		display:none
	}
}

/*ウィンドウ幅が480px以下の場合に適用*/
@media screen and (max-width: 480px) { 

	/*ヘッダー*/

	header{
		font-size:85%;
		text-align:center;
	}
	
	header p{
		display:none;
	}
	
	header h1,
	header h1 #logo{
		top:40px;
		left:0;
		right:0;
		margin:auto;
	}
	
	/*フッター*/
	
	footer{
		height:40px;
		font-size:85%;
	}
	footer small{
		font-size:60%;
	}
	
	footer p{
		top:45%;
	}
	
	/*表示・非表示*/
	
	.down480_none{
		display:none;
	}
	.up480_none{
		display:block;
		margin:0 auto;
	}
}