@charset "utf-8";
/*
##########################################################################
web font
##########################################################################*/
.wf-notosansjapanese { font-family: "Noto Sans JP"; }

/*
##########################################################################
タグ初期設定
##########################################################################*/
*{
	margin:0;
	padding:0;
}
html{
	height: 100%;
}
body {
	position: relative;
	text-align:left;
	padding:0;
	margin:0;
	font-family: "Noto Sans JP";
  	font-weight: 100;
	font-size:0.8rem;
	color:#202020;	
	background:#fbfbfb;
	overflow-x:hidden;
}
p,ul,li{
	margin:0; 
	padding:0;
}
li{
	list-style:none;
}
img{
	border:0;
}
/*リンクカラー*/
body a{
	text-decoration:none;
}
body a:hover{
	text-decoration:underline;
}
/*タイトルタグ*/

h1,h2,h3{
	margin:0;
	padding:0;
}
h1{
}
h2{
	margin:0 0 5px;
	padding:3px 0 0 ;
}
.contents > h2{
	text-align: center;
	font-size: 37px;
}
.contents > h2 strong{
  display: inline-block;/*忘れずに！*/
	margin:  0 0 15px;
	font-size: 28px;
}
.contents > h2::before{
  content: '';/*何も入れない*/
  display: inline-block;/*忘れずに！*/
	width: 50px;/*画像の幅*/
	height: 50px;/*画像の高さ*/
	margin-right: 20px;
	background-image: url(../images/common/h2_left.png);
	background-size: contain;
	vertical-align: middle;
}
.contents > h2::after{
  content: '';/*何も入れない*/
  display: inline-block;/*忘れずに！*/
	width: 50px;/*画像の幅*/
	height: 50px;/*画像の高さ*/
	margin-left: 20px;
	background-image: url(../images/common/h2_right.png);
	background-size: contain;
	vertical-align: middle;
}
p.title_summary{
	font-size:11px;
	margin:0 0 35px;
	text-align:center;
}
h3{
	font-size:14px;
	color:#303;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif"
}
*{}
/*
##########################################################################
ユーティリティタグ設定
##########################################################################*/

/*【clearfix決定版】*/
.clearfix:after,
.section:after,
ul:after,
#container:after,
#navi:after,
#pageNavi:after,
#subNavi:after,
.inner:after,
.section:after,
.wrap:after{
	content:url(../images/spacer.gif);/* 1x1の透過gif */
	display:block;
	clear:both;
	height:0;
}
.clearfix_for_ie7{
	zoom: 1;}	

.section{width:auto;}    /*囲み*/
.box{float:left;}　     /*float用小枠*/
.left{float:left;}　　 /*左寄せ*/
.right{float:right;}　/*右寄せ*/
.clear{clear:both;}　/*解除*/

.img{
	posision:relative !important;
}
.img > a.new_icon{
	display: block;
	position: absolute !important;
	top:-2px;
	left:-2px;
}
/* flex */
.flexSection{
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}



/*
##########################################################################
レイアウト
##########################################################################*/

#wrapper{
	width:100%;
	min-width: 1200px;
	height: 100%;
	/*background:url(../images/common/wrapper_bg.png) repeat-y top center !important;*/
}
#container{
	width:100%;
	margin:100px auto 15px;
}
#side{
	float: left;
	width:200px ;
}
.contents{
	width:1200px;
	margin:160px auto 15px;
}
.contents > #inner{ 
	padding:15px;
	background:rgba(255,255,255,0.92);
}


/*
##########################################################################
ヘッダー
##########################################################################*/

/* upperArea 
===================================================*/
header#header{
	position: fixed;
	top:0;
	width:100%;
	margin: auto;
	padding-top:0.8rem;
	background:url("../images/common/header/upper_line.png") repeat-x top left #FFF;
	box-sizing: border-box;
	z-index: 5;
	box-shadow: 1px 1px 2px 2px rgba(0,0,0,0.05);
}
header#header .inner{
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	width:98%;
	margin:auto;
}

/* logo */
header#header h1#logo{
	min-width:300px;
	width:20%;
	padding:10px 0 0;
	
}
header#header #logo a{
}




/* login area
=========================================*/
header#header #loginArea{
	width:20%;
	min-width:160px;
}
header#header  #loginArea .forUser{
	margin: 0 0 ;
	color:#dfdfdf;
}
header#header  #loginArea .forUser a.user_log{
	display: inline-block;
	margin:0  0 0;	
	padding: 0.5rem;
	background:#ba9217;
	color: #fff;
	font-size: 0.72rem;
	border-radius:8px;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.08);
}
header#header  #loginArea .forUser a.user_log i{
	display: inline-block;
	margin-right: 0.4rem;
	font-size: 0.85rem;
	color: #fff;
}
header#header  #loginArea .forUser a.logout{
	display: inline-block;
	margin: 0 0 ;
	text-align: center;
	font-size: 13px;
	color: #333;
}

/*
##########################################################################
ナビゲーション
##########################################################################*/

/*メインナビ*/
#navi{
	position: relative;
	width:70%;
	margin: 0 auto ;
	padding:8px 0 0;
	text-align: center;
}

#navi  ul{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	width:100%;
}
#navi li{
	margin:0 2.5% 0;
	padding:0;
}
#navi li a{
	display: block;
	padding:3px 3px 3px 18px;
	color: #666;
	font-size: 0.86rem;
	font-weight: bold;
	white-space: nowrap;
	background:url("../images/common/header/navi_icon.png") no-repeat 3px center;
}
#navi li a:hover{
	background:url("../images/common/header/navi_icon.png") no-repeat  3px center rgba(10,10,10,0.08);
	text-decoration: none;
}


/*プルダウンナビ用*/
#navi ul li ul {
	  display: none;
	  position: absolute;
	  top: 37px;
	  left: -1px;
	  width: 156px;
	  border-top: solid 1px #555;
}
#navi ul li ul li {
	  display: block;
	  z-index:9999;
	  margin: 0;
	  padding: 3px;
	  width: 150px;
	  background:url(../images/common/navi/main_pull_bg.png) repeat-x;
	  border-right:none;
	  border-left:none;
	  border-bottom:1px dotted #555;
	  text-align:left;
}
#navi ul li ul li a {
	  display: inline-block;
	  width: 100%;
	  height: 20px;
	  color:#EFEFEF;
	  border-right:none;
	  border-left:none;
	  text-align:center;
}
#navi ul li ul li a:hover {
	  color: #fff;
}

/*
##########################################################################
side
##########################################################################*/
#side{
}
#side section{
	margin: 0 0 12px;
	padding:5px;
	background:rgba(253,180,180,0.46);
}
#side section > .inner{
	padding:10px;
	background:rgba(255,255,255,0.63);
}

#side #sidebannerArea{}
#side #sidebannerArea ul{}
#side #sidebannerArea li{
	margin: 0 0 12px;
	box-shadow: 1px 1px 1px 1px rgba(0,0,0,0.1);
}
#side #sidebannerArea li img{
	display: block;
}

/*
##########################################################################
ギャラリー
##########################################################################
*/
#side #toGallery{
	margin:  0 0 20px;
}
#side #toGallery .inner{
}
#side #toGallery img{
	display: block;
	width:100%;
}
/*
##########################################################################
フッター
##########################################################################*/
#footer{
	clear:both;
	width:100%;
	padding:2.8% 0;
	background:#2e2e2e;
	color:#FFF;
}
#footer #footMenu{
	display: flex;
	flex-wrap: nowrap;
	justify-content:space-between;
	width:1160px;
	margin:0 auto 25px;
	text-align:center;
}
#footer #footMenu ul{
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
	width:34%;
	text-align:left;
}
#footer #footMenu li{
	display: block;
	width:48%;
	padding:10px 0 ;
	line-height:1.8;
	font-size:0.75rem;
}
#footer #footMenu a{
	color:#ccc;
}
#footer #footMenu a:visited{
	text-decoration:none;
}
#footer #footMenu a:link{
	text-decoration:none;
}
#footer #footMenu a:hover{
	text-decoration:underline;
}

#footer .wrap{
	width:60%;
	margin:0 0 ;
}

/* shopinfoArea
=================================================*/
#footer #shopinfoArea{
	display: block;
	width:400px;
	margin: 0 0 2.5rem;
	padding:15px 15px 5px 15px;
	box-sizing: border-box;
	border: 1px dotted #727272;
}
#footer #shopinfoArea dl{
	margin: 0 0 10px;
}
#footer #shopinfoArea dl dt{
	display: inline-block;
}
#footer #shopinfoArea dl dd{
	display: inline-block;
	margin: 0 15px 0;
}
#footer #shopinfoArea dl dd.tel{
	font-size: 2rem;
}
#footer #shopinfoArea dl dd.open{
}


/* lineContactArea
=================================================*/
#footer #lineContactArea{
	width:400px;
	margin:0 0 2rem;
}
#footer #lineContactArea a{
	display:block;
	margin:auto;
	padding:0.4rem;
	background:#00d01d;
	border-radius:8px;
	color:#fff;
	text-align:center;
	font-size:0.9rem;
	font-weight:bold;
	line-height:2.2rem;
}
#footer #lineContactArea a i{
	display: inline-block;
	margin-right: 0.6rem;
	font-size: 1.2rem;
}

/* bannerSrea
=================================================*/
#footer #bannerArea{
	float: right;
	width:60%;
}
#footer #bannerArea .box{
	margin: 0 5px 10px;
}

/* copyright
=================================================*/

#footer .copyright{
	background:#3b3b3b;
	padding:8px;
	text-align:center;
}

/*
##########################################################################
その他
##########################################################################*/
.shinobi{
	position:absolute;
	top:-200px;
}