/* ========================================================================== */
/* wrap */
/* ========================================================================== */
	#wrap {}

/* ========================================================================== */
/* flex */
/* ========================================================================== */
.flex{
	display: flex;
}
.flex > *{
	width: 100%;
}

.sp_nav > li > a{
  background:url(/commoncms/img/icon_arrow_nav2.png) 98% center no-repeat #fff;
	display:block!important;
	color: #333;
	text-decoration: none;
	padding:12px 10px 10px 10px;
	font-weight: bold;
	border-top: 1px solid #bbb;
}
	.sp_nav > li > a.toggleShow{
	  background:url(/commoncms/img/icon_arrow_nav.png) 98% center no-repeat #fff;
	}


.sp_nav > li > ul{
	display: none;
}

.sp_nav a{
	color: #333;
	font-weight: bold;
}

.sp_nav > li > ul > li > a{
	display:block!important;
	padding: 10px 10px 7px 12px;
	font-size: 95%;
	text-decoration: none;
	border-top: 1px solid #fff;
	margin: 0 0 0 10px;
	background: #f1f4f8;
}

.sp_nav > li > ul > li > a.slideToggleEvent{
  background:url(/commoncms/img/icon_arrow_nav2.png) 98% center no-repeat #f1f4f8;
}

	.sp_nav > li > ul > li > a.toggleShow{
	  background:url(/commoncms/img/icon_arrow_nav.png) 98% center no-repeat #f1f4f8;
	}

.sp_nav > li > ul > li:last-child{
	margin-bottom:10px!important;
}

.sp_nav > li > ul > li > ul{
	display: none;
	padding: 5px 0 6px 0;
}
.sp_nav > li > ul > li > ul > li > a{
	display:block!important;
	font-size: 90%;
	background: #e6ebf2!important;
	text-decoration: none;
	padding:8px 0 5px 14px!important;
	font-weight: 600;
}

.sp_nav > li > ul > li > ul{
	background: #e6ebf2!important;
	margin-left: 10px;
}

.sp_nav li.noac a{
	background: none;
}

ul li.cat_name{
	background: #e6ebf2!important;
	margin:8px 0 5px 15px!important;
	line-height:100%!important;
	padding: 1px 0 0 7px;
	font-weight: bold;
	font-size: 90%;
	border-left: 3px solid #555;
}



.sub_nav_sp{
	font-size: 90%;
	padding:10px;
	border-top: 1px solid #bbb;
}
.sub_nav_sp li{
	line-height: 200%;
}

.sub_nav_sp .sn_icon{
	display: inline-block;
	margin: 7px 5px 10px 0;
}

.sub_nav_sp .input_area{
	width: 75%!important;
}

.sub_nav_sp .input_btn{
	height:26px!important;
	margin:0 0 1px 5px;
}


/* faq用 */
.sp_nav.faq > li > a{
  background:url(/commoncms/img/icon_open.png) 98% center no-repeat #edeef4;
	padding:0 30px 0 0;
	border-top:none!important;
	font-weight: 500;
	opacity: 1;
}

	.sp_nav.faq > li > a.toggleShow{
	  background:url(/commoncms/img/icon_close.png) 98% center no-repeat #edeef4;
	}
	.sp_nav.faq > li > ul > li{
		margin-bottom:0!important;
	}

	.sp_nav.faq .faq_a a{
		color: #0060b1;
		font-weight: 500;
	}



/* foot_nav */
.foot_nav .sp_nav > li > a{
  background:url(/commoncms/img/icon_arrow_nav2.png) 98% center no-repeat #eee;
}
	.foot_nav .sp_nav > li > ul > li > a{
		display:block;
		padding: 10px 10px 0 15px;
		margin: 0 0 0 0;
		background: #fff;
	}
		.foot_nav .sp_nav > li > ul > li > a:first-child{
			padding-top:10px!important;
		}

		.foot_nav .sp_nav li.noac a{
			background-image: none!important;
		}


/* ========================================================================== */
/* header スマホ&タブレット用 */
/* ========================================================================== */

/* タブレット*/
@media only screen and (max-width: 1200px) {
	header.TAB{
	  height: 95px;
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100%;
	  z-index: 2;
		border-bottom: solid 1px #bbb;
	}
	.sb-toggle-right {
	  position: absolute;
	  top: 21px;
	  right:12px;
	  overflow: hidden;
	}
}

/* スマホ*/
@media only screen and (max-width: 736px) {
	header.TAB{
	  position: fixed!important;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 65px!important;
	  z-index: 2;
		border-bottom: solid 1px #bbb;
	}
	.sb-toggle-right {
	  position: absolute;
	  top: 21px!important;
	  right: -10px!important;
	  overflow: hidden;
	}
}


header.TAB p{
  margin: 20px 0  0 17px;
}


/* ========================================================================== */
/* header PC用 */
/* ========================================================================== */
header{
	background: url(/commoncms/img/head_line.gif) no-repeat center top #ffffff!important;
	/*position: fixed;*/
	position: relative;
	width: 100%;
	top:0;
	left:0;
	z-index:500!important;
}

header p{float:left; padding-bottom:25px;}
header a{color:#333333!important;}

/* ############### head01 ############### */

header .head01 nav{float:right; text-align: right;margin-bottom: -5px;}
header .head01{width:1240px;margin: 0 auto 0 auto;padding:25px 20px  0 20px; box-sizing: border-box;line-height:100%;}

/* sub_nav */
header .head01 nav ul.sub_nav{font-size: 80%; margin: 5px 0 0 194px}
header .head01 nav ul.sub_nav li{float: left;	padding:0 15px 0 15px;}
header .head01 nav ul.sub_nav li:last-child{padding-right: 0;}
header .head01 nav ul.sub_nav li.sn_line{border-right:dotted 1px #333333;}
header .head01 nav ul.sub_nav li.sn_icon{margin-top: -5px; padding:0 5px 0 5px;}
header .head01 nav ul.sub_nav li form{margin-top: -4px;}

/* 検索 */
.input_area{width:140px;height:17px;border:solid 1px #636363;}
.input_btn{margin-top:1px;}

/* main_nav */
header .head01 nav ul.main_nav{
	border-left:dotted 1px #333333;
	font-weight: bold;
	margin: 30px 0 0 0;
	display: inline-block;
}
	header .head01 nav ul.main_nav li{
		float: left;
		border-right:dotted 1px #333333;
	}
		header .head01 nav ul.main_nav li a{
			padding: 0 20px 8px 20px;
		}
		@media all and (-ms-high-contrast:none){/* ie10 */
			header .head01 nav ul.main_nav li a{
				padding: 0 20px 5px 20px;
			}
		}
		@supports (-ms-ime-align:auto) {/* edge */
				header .head01 nav ul.main_nav li a{
					padding: 0 20px 5px 20px;
				}
		}
		header .head01 nav ul.main_nav li a:hover{
			text-decoration: none;
			border-bottom:solid 3px #85064d;
			opacity:1.0;
		}

		body#about header .head01 nav ul.main_nav li.m01 a{border-bottom:solid 3px #85064d;}
		body#chintai header .head01 nav ul.main_nav li.m02 a{border-bottom:solid 3px #85064d;}
		body#produce header .head01 nav ul.main_nav li.m03 a{border-bottom:solid 3px #85064d;}
		body#news header .head01 nav ul.main_nav li.m04 a{border-bottom:solid 3px #85064d;}
		body#order header .head01 nav ul.main_nav li.m05 a{border-bottom:solid 3px #85064d;}
		body#jinji header .head01 nav ul.main_nav li.m06 a{border-bottom:solid 3px #85064d;}





/* スマホ */
@media only screen and (max-width: 736px) {
	header{position:relative;}
	header img{width: 50%;}
	header .head01{width: 100%; padding:15px 0 10px 10px;}
	.menu-btn {
		position: absolute;
		right: 0;
		top:5px;
		height: 45px;
		width: 45px;
		display: block;
/*		background: url(/commoncms/img/btn_spmenu.gif) no-repeat left top;*/
		-webkit-background-size: 100%;
		background-size: 100%;
	}
}


/* ############### head02 ############### */

header .head02{
	border-top: 1px dotted #8d8d8d;
	font-size: 95%;
	font-weight: bold;
}

/* メガメニュー */
[data-menu-item^="item"]{display:none;}
#ly_globalNavi{position:relative;}
	#ly_globalNaviInner li[data-menu-item="event,true"] > a{background-color:#e3e6eb;opacity:1.0;}
	#ly_globalNaviInner li > div{
		position:absolute;
		left:0;
		width:100%;
		background-color:#e3e6eb;
	}
	#ly_globalNaviInner li > div > div{
		max-width: 1200px;
		box-sizing: border-box;
		margin:30px auto 30px auto;
		background: #fff;
		padding:27px 35px 20px 35px;
	}

nav#ly_globalNavi a{color:inherit;text-decoration:none;}
nav#ly_globalNavi div#ly_globalNaviInner {
	max-width: 1200px;
	margin:0 auto 0 auto;
}

div#ly_globalNaviInner > ul{}
div#ly_globalNaviInner > ul:after {content:"";display:block;clear:both;/* clear */}
div#ly_globalNaviInner > ul >  li{
	box-sizing:border-box;
	float:left;
}
div#ly_globalNaviInner > ul > li > a{
	display:block;
	text-align:center;
	padding:20px 20px 17px 20px;
}


.head02 p{
	float: none!important;
	margin: 0;
	padding: 0 0 15px 0;
}


.head02 #ly_globalNaviInner .mega_title{
	font-size: 110%;
	margin-bottom: 10px;
}
.head02 #ly_globalNaviInner .mega_inner{
	display: flex;
}
	.head02 #ly_globalNaviInner .mega_inner dl{
		margin-right:65px;
	}
	.head02 #ly_globalNaviInner .mega_inner dl:last-child{
		margin-right:0;
	}

	.head02 #ly_globalNaviInner .mega_inner dl dt{
		margin:10px 0 10px 0;
	}

	.head02 #ly_globalNaviInner .mega_inner dl dd{
		font-weight: normal;
		margin-bottom: 7px;
	}

	.head02 #ly_globalNaviInner .mega_inner dl dd:first-child{
		margin-top: 38px;
	}


	.head02 #ly_globalNaviInner .mega_inner ul{
		display: flex;
		flex-wrap:wrap;
	}
	.head02 #ly_globalNaviInner .mega_inner ul.ul_column{
		display: block;
		margin-right: 65px;
	}

		.head02 #ly_globalNaviInner .mega_inner ul li{
			font-weight: normal;
			margin-bottom: 7px
		}



	.head02 #ly_globalNaviInner p{
		background: url(/commoncms/img/icon_arrow.png) no-repeat 10px center;
		display: block;
		padding:4px 15px 2px 20px;
		margin-left: -10px;
	}

	.head02 #ly_globalNaviInner .mega_inner dl dd a,
	.head02 #ly_globalNaviInner .mega_inner ul li a,
	.head02 #ly_globalNaviInner p{
		background: url(/commoncms/img/icon_arrow.png) no-repeat 10px center;
		display: block;
		padding:4px 15px 2px 20px;
	}

		.head02 #ly_globalNaviInner .mega_inner a:hover{
			background: url(/commoncms/img/icon_arrow.png) no-repeat 10px center #eef0f3;
			opacity: 1.0;
		}






/* ############### breadcrumb ############### */

.breadcrumb{background:#edeef4;font-size: 80%;/*margin-top:169px;*/}
.breadcrumb ul{width: 1240px;margin: auto; box-sizing: border-box; padding:7px 20px 5px 20px;}
.breadcrumb ul li{float: left;}
.breadcrumb ul li a{color: #333333;}
.breadcrumb ul li.bc_arrow{margin:0 7px 0 7px;}


/* ############### coantent ############### */
#content{
	width: 1240px;
	margin:0 auto 0 auto;
	padding: 0 20px 0 20px;
	box-sizing: border-box;
	line-height: 160%;
}

/* スマホ & タブレット*/
@media only screen and (max-width: 1200px) {
	#content{
		width: 100%;
		box-sizing: border-box;
		padding:57px 15px 15px 15px;
		/*margin-top: 57px;*/
	}

.breadcrumb{
	display: none;}
}

/* ========================================================================== */
/* footer */
/* ========================================================================== */

/* pagetop */
#pagetop{
    position: fixed;
    bottom: 20px;
    right: 20px;
		z-index:500;
}


footer{
	width: 100%!important;
	background: #f3f3f3;
	font-size: 90%;
	margin-top:60px;
	padding-top:1px;
}

	footer .foot_inner{
		width: 1240px;
		padding: 0 20px 0 20px;
		box-sizing: border-box;
		display:flex;
		justify-content: space-between;
		flex-wrap:wrap;
		margin: 60px auto 35px auto;
	}

	footer .foot_inner ul{
		margin-bottom: 25px;
	}
		footer .foot_inner ul li{
			margin-bottom: 10px;
		}
		footer .foot_inner ul li strong{
			font-size: 110%;
		}
		footer .foot_inner ul li a{
			background: url(/commoncms/img/icon_arrow.png) no-repeat left center;
			padding-left: 10px;
		}


		/* IE11 */
		@media all and (-ms-high-contrast:none){
		  *::-ms-backdrop, footer .foot_inner ul li a{
						background-position:left 5px;
					}
		  *::-ms-backdrop, .link_list li a{
						background-position:left 5px;
					}
		}


	/* foot_middle01 */
	footer .foot_middle01{
		background: #393160;
		color: #ffffff;
	}
		footer .foot_middle01 dl{
			display:flex;
			justify-content: center;
			flex-wrap:wrap;
		}
		footer .foot_middle01 dl dt{
			background: url(/commoncms/img/foot_bgarrow.png) no-repeat center right #575284;
			padding: 15px 35px 0 35px;
			line-height: 100%;
		}

			footer .foot_middle01 dl dd{
				border-right: dotted 1px #fff;
				line-height: 100%;
				padding: 0 25px 0 25px;
				margin: 15px 0 12px 0;
			}
				footer .foot_middle01 dl dd:last-child{
					border-right: none;
				}
				footer .foot_middle01 dl dd a{
					color: #ffffff!important;
				}


	/* foot_middle02 */
	footer .foot_middle02{
		width: 1240px;
		box-sizing: border-box;
		margin: 0 auto 0 auto;
		padding:25px 20px 25px 20px;
	}
		footer .foot_middle02 ul{
			display:flex;
			justify-content: center;
			flex-wrap:wrap;
		}
			footer .foot_middle02 ul li{
				border-right: dotted 1px #333;
				line-height: 100%;
				padding: 0 20px 0 20px;
			}
				footer .foot_middle02 ul li:last-child{
					border-right: none;
				}

				footer .foot_middle02 ul.sns li{
					border: none;
					padding:10px 10px 0 10px ;
					margin-top: 10px;
				}


	footer .foot_bottom{
		background: #ffffff;
		font-size: 80%;
	}

	footer .foot_bottom ul{
		width: 1240px;
		box-sizing: border-box;
		margin: 0 auto 0 auto;
		padding:30px 20px 30px 20px;
		display:flex;
		justify-content: space-between;
		flex-wrap:wrap;
		align-items: center;
	}

	footer a{
		color: #333!important;
	}

/* タブレット*/
@media only screen and (max-width: 1200px) {
	footer{
		margin-top:0;
	}
	footer .foot_inner{
		width: 100%;
		margin: 30px auto 0 auto;
	}
	footer .foot_middle02{
		width: 100%;
	}
	footer .foot_bottom ul{
		width: 100%;
	}
}

/* スマホ*/
@media only screen and (max-width: 736px) {
	footer .foot_inner{
		margin: 20px auto 10px auto;
	}
	footer .foot_inner ul{
		margin-bottom: 10px;
	}
		footer .foot_inner ul li{
			margin-bottom: 5px;
		}
		footer .foot_inner ul li strong{
			font-size: 90%;
		}

		/*foot_middle01*/
		footer .foot_middle01 dl{
			display:block;
			text-align: center;
			padding: 0 0 18px 0;
		}
		footer .foot_middle01 dl dt{
			background-image: none;
			padding: 12px 0 8px 0;
			margin:0 0 10px 0;
		}
			footer .foot_middle01 dl dd{
				padding: 10px 0 0 0;
				margin: 0;
				border: none;
			}

		/*foot_middle02*/
		footer .foot_middle02{
			padding:17px 0 10px 0;
		}
		footer .foot_middle02 ul{
			display:block;
			text-align: center;
		}
			footer .foot_middle02 ul li{
				border:none;
				margin-bottom: 7px;
			}
				footer .foot_middle02 ul li:last-child{
					border-right: none;
				}
				footer .foot_middle02 ul.sns{
					display: flex;
					margin-top: -15px;
				}


		/*foot_bottom*/
		footer .foot_bottom ul{
			margin: 0 auto 0 auto;
			display:block;
			text-align: center;
		}
		footer .foot_bottom ul li{
			margin-bottom: 15px;
		}
		footer .foot_bottom ul li:last-child{
			margin-bottom: 0;
		}

}

/******************************************************/
/* clear */
/******************************************************/
.clear:after,
header .head01:after,
header .head01 nav ul.sub_nav:after,
header .head01 nav ul.main_nav:after,
.breadcrumb ul:after,
header .head02 nav ul:after{
	 content: "."; display: block; height: 0; visibility: hidden; clear: both;
 }
