@charset "UTF-8";

.fgo {font-family:"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Osaka, "平成ゴシック", "メイリオ", "Meiryo", Helvetica, Arial, Verdana, "ＭＳ Ｐゴシック", "MS UI Gothic", sans-serif;	}
.fmin {	font-family: "Hiragino Mincho Pro", "ヒラギノ明朝 Pro W3", "平成明朝", "細明朝", "ＭＳ Ｐ明朝", Times, serif;}

body {
	color:#333;
	font-family:"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Osaka, "平成ゴシック", "メイリオ", "Meiryo", Helvetica, Arial, Verdana, "ＭＳ Ｐゴシック", "MS UI Gothic", sans-serif;
	font-size:13px;
	line-height:1.4;
}
body p {
	line-height:1.8;
}


/* -------------------------------------
header
------------------------------------- */
header {
	margin-bottom:15px;
	border-bottom:1px solid #ccc;
}
header #hdrtop #hdrsearch {
	display:inline-block;
	float:right;
	padding:8px 10px 8px 10px;
	margin-left:5px;
	background-color:#000;
	box-sizing:border-box;
	-webkit-transition:background-color 0.7s;
	-ms-transition:background-color 0.7s;
	-moz-transition:background-color 0.7s;
}
header #hdrtop #hdrsearch:hover {
	background-color:#2795c7; /*5da049*/
}


header #hdrbody {
	position:relative;
}
header #hdrwrap {
	position:relative;
}

header #hdrbody #logo {
	width:27%;
	height:100px;
	float:left;
	position:relative;
}
header #hdrbody #logo a {
	width:95%;
	display:block;
	position:absolute;
	top:50%;
	left:0;
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);
}
header #hdrbody #logo a img {
	width:100%;
	height:auto;
	display:block;
}
header #hdrbody #hdrbody_in {
	width:72.9%;
	float:right;
}
header #hdrbody nav ul {
	width:100%;
	display:table;
	border-left:1px solid #ccc;
	box-sizing:border-box;
}
header #hdrbody nav li.mainnavi {
	width:14.28%;
	display:table-cell;
	vertical-align:middle;
	border-right:1px solid #ccc;
	box-sizing:border-box;
}

header #hdrbody nav li.mainnavi img {
	display:block;
	margin:0 auto 5px auto;
}
header #hdrbody nav li.mainnavi:hover {
	background-color:#ede6de;
}
header #hdrbody nav li.mainnavi dt a {
	font-size:17px;
	font-weight:bold;
	line-height:1.5;
	text-align:center;
	display:block;
	padding:21px 6px;
	box-sizing:border-box;
}
header #hdrbody nav li.mainnavi dt a.linknone {
	pointer-events:none;
}
header #hdrbody nav li.mainnavi dt a br {
	display:none;
}
header #hdrbody nav li.mainnavi dt a:hover {
	opacity:1.0;
}
header #hdrbody nav li.mainnavi:nth-child(1) {
	width:12.5%;
}
header #hdrbody nav li.mainnavi:nth-child(2) {
	width:17%;
}
header #hdrbody nav li.mainnavi:nth-child(3) {
	width:17.9%;
}
header #hdrbody nav li.mainnavi:nth-child(4) {
	width:12.1%;
}
header #hdrbody nav li.mainnavi:nth-child(5) {
	width:12.1%;
}
header #hdrbody nav li.mainnavi:nth-child(6) {
	width:12.4%;
}
header #hdrbody nav li.mainnavi:nth-child(7) {
	width:16%;
}
header #hdrbody nav li.mainnavi:nth-child(1) dt a {
	color:#edb43c;
}
header #hdrbody nav li.mainnavi:nth-child(2) dt a {
	color:#dc4e55;
}
header #hdrbody nav li.mainnavi:nth-child(3) dt a {
	color:#00849f;
}
header #hdrbody nav li.mainnavi:nth-child(4) dt a {
	color:#5da049;
}
header #hdrbody nav li.mainnavi:nth-child(5) dt a {
	color:#009fe8;
}
header #hdrbody nav li.mainnavi:nth-child(6) dt a {
	color:#f7931e;
}
header #hdrbody nav li.mainnavi:nth-child(7) dt a {
	color:#a5449b;
}
header #hdrbody nav li.mainnavi a span {
	display:table-cell;
	vertical-align:middle;
	padding:10px 0;
	box-sizing:border-box;
}


header #hdrbody nav dd {
	width:100%;
	display:none;
	background-color:#ede6de;
	box-sizing:border-box;
	position:absolute;
	top:100%;
	right:0;
	left:0;
	z-index:2000;
}
header #hdrbody nav dd ul {
	max-width:1140px;
	padding:30px 0;
	border-left:none;
}
header #hdrbody nav dd li {
	width:30.8%;
	float:left;
	margin-right:3.8%;
	border-bottom:1px solid #d9cab9;
}
header #hdrbody nav dd li:nth-child(1), header #hdrbody nav dd li:nth-child(2), header #hdrbody nav dd li:nth-child(3) {
	border-top:1px solid #d9cab9;
}
header #hdrbody nav dd li:nth-child(3n) {
	margin-right:0;
}
header #hdrbody nav dd li a {
	font-size:16px;
	font-weight:bold;
	color:#666;
	width:100%;
	display:table;
	padding:0 0 0 40px;
	background:url(../imgs/common/arrow_rgt_pk.png) no-repeat 14px center;
	background-size:13px auto;
	box-sizing:border-box;
}
header #spheader_btm {
	display:none;
}
header #sp_subnavi {
	padding:15px 15px;
	margin-bottom:20px;
	border-bottom:1px solid #c7b299;
	box-sizing:border-box;
}
header #sp_subnavi li {
	font-weight:bold;
	display:inline-block;
	margin-right:10px;
}
header #sp_subnavi li a {
	display:inline-block;
	padding:3px 0 3px 25px;
	background:url(../imgs/common/arrow_rgt_or.png) no-repeat 10px 47%;
	background-size:10px auto;
	box-sizing:border-box;
}
header #sp_language {
	padding:0 20px;
	margin-bottom:25px;
	box-sizing:border-box;
}
header #sp_language dt {
	font-weight:bold;
	text-align:center;
	display:block;
	margin-bottom:8px;
}
header #sp_language dd li {
	width:23.5%;
	float:left;
	margin-right:2%;
}
header #sp_language dd li:last-child {
	margin-right:0;
}
header #sp_language dd li a {
	font-size:14px;
	line-height:1.0;
	color:#fff;
	font-weight:bold;
	text-align:center;
	display:block;
	padding:8px;
	background-color:#333;
	box-sizing:border-box;
}


header #spheader_btm form {
	padding:0 20px;
	margin-bottom:20px;
	box-sizing:border-box;
}
header #spheader_btm form input#s {
	font-size:18px;
	line-height:30px;
	width:-webkit-calc(100% - 100px);
	width:calc(100% - 100px);
	float:left;
	height:50px;
	padding:10px;
	display:block;
	background-color:#fff;
	border:1px solid #ccc;
	border-radius:0px;
	box-sizing:border-box;
	-webkit-appearance:none;
}
header #spheader_btm form #searchsubmit {
	font-size:18px;
	line-height:30px;
	font-weight:bold;
	color:#fff;
	text-align:center;
	width:80px;
	height:50px;
	float:right;
	display:block;
	padding:10px;
	background-color:#57a33d;
	border-radius:0px;
	box-sizing:border-box;
	-webkit-appearance:none;
}

header #spheader_btm p {
	text-align:center;
	margin-bottom:8px;
}
header #spsns {
	font-size:0;
	text-align:center;
	margin-bottom:10px;
}
header #spsns li {
	display:inline-block;
	margin-right:10px;
}
header #spsns li:last-child {
	margin-right:0px;
}
header #spsns li a {
	font-size:14px;
	display:block;
}


#hdrwrap.fixed {
	width:100%;
	background-color:#fff;
	border-bottom:1px solid #ccc;
	position:fixed;
	top:0;
	z-index:5000;
}
header #hdrbody #hdrwrap.fixed #logo a {
	width:90%;
	transition:width 0.3s;
	-webkit-transition:width 0.3s;
	-ms-transition:width 0.3s;
	-moz-transition:width 0.3s;
}
header #hdrbody #hdrwrap.fixed nav li.mainnavi dt a {
	padding:12px 8px;

}


/* -------------------------------------
common
------------------------------------- */



	
/* -------------------------------------
footer
------------------------------------- */



@media screen and (max-width:1180px) {
	.page {
		width:100%;
		padding:0 20px;
		box-sizing:border-box;
	}
	
	header #hdrbody .page, div.page.clearfix {
		padding:0;
	}
	header #hdrbody #logo a {
		width:90%;
		margin:0 auto;
		right:0;
	}
	header #hdrbody nav li:last-child {
		border-right:none;
	}
	header #hdrbody nav li.mainnavi img {
		width:25px;
		height:auto;
	}
	header #hdrbody nav li.mainnavi dt a {
		font-size:16px;
		padding:21px 8px;
	}
	header #hdrbody nav li.mainnavi a span {
		/*font-size:9px;*/
	}
	header #hdrbody nav dd ul.page {
		padding:30px 20px;
	}
	header #hdrbody nav dd li a {
		font-size:15px;
		padding:0 0 0 36px;
		background-size:11px auto;
	}
	header #hdrbody nav li.mainnavi a span {
		padding:10px 0 10px 0;
	}
}
@media screen and (max-width:1000px) {
	header #hdrbody nav li.mainnavi dt a {
		font-size:15px;
		line-height:1.2;
	}
	header #hdrbody nav dd li {
		width:30.8%;
	}
	header #hdrbody nav dd li:nth-child(4n) {
		margin-right:3.8%;
	}
	header #hdrbody nav dd li:nth-child(3n) {
		margin-right:0%;
	}
	header #hdrbody nav dd li:nth-child(4) {
		border-top:none;
	}
}

@media screen and (max-width:890px) {
	header #hdrbody nav li.mainnavi dt a br {
		display:block;
	}
}
@media screen and (max-width:768px) {
	header #hdrbody {
		background-color:#ede6de;
	}
	#hdrwrap.fixed {
		position:static;
	}
	header #hdrbody #logo {
		width:100%;
		height:auto!important;
		float:none;
		padding:20px 0;
		background-color:#fff;
	}
	header #hdrbody #logo a {
		width:250px;
		margin:0 auto;
		position:static;
		-webkit-transform:translateY(0);
		-ms-transform:translateY(0);
		transform:translateY(0);
	}
	header #hdrbody #hdrbody_in {
		width:100%;
		height:auto;
		display:none;
		padding:0 0 20px 0;
		box-sizing:border-box;
	}
	header #hdrbody nav ul {
		display:block;
		border-left:none;
	}
	header #hdrbody nav li.mainnavi {
		width:100%!important;
		height:auto!important;
		display:block;
		border-right:none;
		border-bottom:1px solid #c7b299;
	}
	header #hdrbody nav li.mainnavi:last-child {
		margin-bottom:0;
	}
	

	header #hdrbody nav li.mainnavi img {
		display:inline-block;
		margin:0 10px 0 0;
	}
	header #hdrbody nav li.mainnavi dt a br {
		display:none;
	}
	header #hdrbody nav li.mainnavi a span {
		/*display:none;*/
	}
	header #hdrbody nav li.mainnavi dt  {
		padding:0 20px;
		cursor:pointer;
	}
	header #hdrbody nav li.mainnavi dt a {
		text-align:left;
		padding:17px 0;
		pointer-events:none;
		position:relative;
	}
	header #hdrbody nav li.mainnavi dt a:after {
		content:"";
		width:15px;
		height:15px;
		display:block;
		background:url(../imgs/common/icon_open.png) no-repeat center center;
		background-size:cover;
		position:absolute;
		top:50%;
		right:0;
		-webkit-transform:translateY(-50%);
		-ms-transform:translateY(-50%);
		transform:translateY(-50%);
		z-index:100;
	}
	header #hdrbody nav li.mainnavi dt.on a:after {
		background:url(../imgs/common/icon_close.png) no-repeat center center;
		background-size:cover;
	}
	header #hdrbody nav dd {
		background-color:#f7f4f2;
		position:static;
	}
	header #hdrbody nav dd .categorytop {
		font-size:15px;
		font-weight:bold;
		display:block;
		padding:15px 10px 15px 55px;
		background-color:#f1ebe8;
		border-bottom: 1px solid #d9cab9;
		border-top: 1px solid #d9cab9;
		box-sizing:border-box;
	}
	header #hdrbody nav dd ul {
		display:block;
	}
	header #hdrbody nav dd ul.page {
		padding:0;
	}
	header #hdrbody nav dd li {
		width:100%!important;
		margin-right:0;
	}
	header #hdrbody nav dd li:nth-child(1), header #hdrbody nav dd li:nth-child(2), header #hdrbody nav dd li:nth-child(3), header #hdrbody nav dd li:nth-child(4) {
		border-top:none;
	}
	header #hdrbody nav dd li a {
		font-size:14px;
		height:auto!important;
		padding:0 10px 0 55px;
		background-position:26px center;
	}
	header #hdrbody nav li.mainnavi a span {
		padding:15px 0 15px 0;
	}
	
	header #spheader_btm {
		display:block;
	}
	
}
@media screen and (max-width:640px) {
	header #hdrbody #logo a {
		width:220px;
	}
}
@media screen and (max-width:480px) {
	header #hdrbody #logo a {
		float:right;
		margin-right:20px;
	}
	header #sp_language dd li a {
		font-size:13px;
		padding:7px 5px;
	}
}
@media screen and (max-width:320px) {
	header #hdrbody #logo {
		padding:15px 0;
	}
	header #hdrbody nav li.mainnavi dt a {
		font-size:15px;
	}
	header #hdrbody nav li.mainnavi dt a {
		padding:14px 0;
	}
	header #hdrbody nav li.mainnavi img {
		width:20px;
	}
	header #hdrbody nav li.mainnavi dt a:after {
		width:12px;
		height:12px;
	}
	header #hdrbody nav dd .categorytop {
		font-size:14px;
		padding:12px 10px 12px 50px;
	}
	header #hdrbody nav dd li a {
		font-size:14px;
		padding:0 10px 0 50px;
		background-position:24px center;
	}
	header #hdrbody nav li.mainnavi a span {
		padding:12px 0 12px 0;
	}
	header #sp_subnavi li a {
		font-size:13px;
	}
	header #sp_language dd li {
		width:48.5%;
		margin-right:0;
		margin-bottom:10px;
	}
	header #sp_language dd li:nth-child(even) {
		float:right;
	}
	
}

@media screen and (min-width:769px) {
	header #hdrbody #hdrbody_in {
		display:block!important;
	}
}
