@charset "utf-8";
/*=============================================================
 HOME Layout
=============================================================*/
#pageBody {
 width:100%;
	margin:0;
	padding:0;
	color:#4c4c4c;
}
#contents {
	float:none;
 width:100%;
}
#contents a {
	color:#4c4c4c;
	text-decoration:none;
}
#contents .section{
	width:auto;
	max-width:960px;
	margin:0 auto;
	padding:70px 0 100px;
}
#contents .sectionTtl{
	text-align:center;
}
#contents .sectionTtl h2{
	position:relative;
	padding:0 0 16px;
	font-family: 'Playfair Display', serif;
	font-size: 40px;
}
#contents .sectionTtl h2:after{
	content:"";
	display:block;
	width:120px;
	height:4px;
	background:#4c4c4c;
	border-radius:10px;
	position:absolute;
	bottom:0;
	left:50%;
	transform:translateX(-50%);
}
#contents .sectionTtl img{
	width:auto;
	height:40px;
}
#contents .sectionTtl p{
	padding:16px 0 50px;
	font-size:22px;
	font-weight:700;
}


/* home-slider
-------------------------------------------------------------*/
#home-slider img{
	width:100%;
	height:auto;
}
/* catchArea
-------------------------------------------------------------*/
#catchArea{
	width:100%;
	max-width:960px;
	margin:30px auto 0;
	text-align:center;
}
#catchArea>h2{
	padding:60px 0 35px;
}
#catchArea>p{
	font-size:26px;
	font-weight:700;
}
/* messageArea
-------------------------------------------------------------*/
#messageArea{
	width:100%;
	max-width:960px;
	margin:80px auto 0;
	text-align:center;
}
#messageAreaInner{
	padding:40px;
	border:1px solid #4c4c4c;
}
#messageArea p{
	font-size:20px;
}
/* recommended
-------------------------------------------------------------*/
#recommendedInner{
	position:relative;
}
#recommendedInner img{
  width: 100%
}
#recommendedInner a{
	text-decoration:none;
}
#recommendedInner a:hover img{
	opacity:0.5;
}
#recommendedLeft{
	width:650px;
}
#recommendedRight div{
	width:250px;
	position:absolute;
	right:0;
}
#recommendedRight div.boxLeft{
	top:0;
}
#recommendedRight div.boxRight{
	top:300px;
}
#recommendedInner #recommendedLeft figure{
  overflow: hidden;
  height: 450px;
  width: 650px;
  position: relative;
}
#recommendedInner #recommendedLeft img{
  height: 450px;
  width: auto;
  position: absolute;
  left:50%;
		top:0;
  transform: translateX(-50%);
}
#recommendedInner #recommendedRight figure{
  overflow: hidden;
  height: 150px;
  width: 250px;
  position: relative;
}
#recommendedInner #recommendedRight img{
  height: 150px;
  width: auto;
  position: absolute;
  left:50%;
		top:0;
  transform: translateX(-50%);
}
#recommendedInner p{
	padding:15px 0 0;
	line-height:1.45;
	text-align:center;
}
#recommendedInner #recommendedLeft p{
	font-size:22px;
}
#recommendedInner #recommendedLeft p span{
	font-size:18px;
}
#recommendedInner #recommendedRight p{
	font-size:18px;
}
#recommendedInner #recommendedRight p span{
	font-size:16px;
}
/* bestSellers
-------------------------------------------------------------*/
#bestSellers{
	background:#fcf3f0;
}
#bestSellers ol{
	font-size:0;
	letter-spacing:0;
	text-align:center;
}
#bestSellers ol li{
	display:inline-block;
	width:240px;
	padding:100px 40px 0;
	position:relative;
}
#bestSellers ol li:nth-child(4),
#bestSellers ol li:nth-child(5){
	width:200px;
	margin:80px 20px 0;
	padding:70px 20px 0;
}
#bestSellers ol li:before{
	content:"";
	display:block;
	width:58px;
	height:81px;
	position:absolute;
	top:0;
	left:0;
}
#bestSellers ol li:nth-child(4):before,
#bestSellers ol li:nth-child(5):before{
	width:42px;
	height:59px;
}
#bestSellers ol li:nth-child(1):before{
	background: url(../img/rank01.png) no-repeat left top;
	background-size:100% 100%;
}
#bestSellers ol li:nth-child(2):before{
	background: url(../img/rank02.png) no-repeat left top;
	background-size:100% 100%;
}
#bestSellers ol li:nth-child(3):before{
	background: url(../img/rank03.png) no-repeat left top;
	background-size:100% 100%;
}
#bestSellers ol li:nth-child(4):before{
	background: url(../img/rank04.png) no-repeat left top;
	background-size:100% 100%;
}
#bestSellers ol li:nth-child(5):before{
	background: url(../img/rank05.png) no-repeat left top;
	background-size:100% 100%;
}
#bestSellers ol li figure{
	width:240px;
	height:240px;
	display:table;
}
#bestSellers ol li figure span{
	display:table-cell;
	vertical-align:middle;
	height:240px;
}
#bestSellers ol li:nth-child(4) figure,
#bestSellers ol li:nth-child(5) figure{
	width:200px;
	height:200px;
}
#bestSellers ol li:nth-child(4) figure span,
#bestSellers ol li:nth-child(5) figure span{
	height:200px;
}
#bestSellers ol li figure img{
	width:100%;
}
#bestSellers ol li dl{
	line-height:1.45;
	font-size:20px;
}
#bestSellers ol li dt{
	width:100%;
	display:table;
	height:70px;
	position:relative;
}
#bestSellers ol li dt span{
	display:table-cell;
	vertical-align:middle;
	height:70px;
}
#bestSellers ol li dt:after{
	content:"";
	display:block;
	width:150px;
	height:1px;
	background:#4c4c4c;
	position:absolute;
	bottom:-1px;
	left:50%;
	transform:translateX(-50%);
}
#bestSellers ol li dd{
	padding:10px 0 0;
	font-size:20px;
}
#bestSellers ol li dd:last-child{
	padding:0;
	font-size:16px;
}
/*#bestSellers ol li:nth-child(4) dd:last-child,
#bestSellers ol li:nth-child(5) dd:last-child{
	font-size:16px;
}*/
/* blog
-------------------------------------------------------------*/
#blog{
	background:#e6e6e6;
}
#blog ul{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
#blog ul li{
	width:calc((100% - 60px) / 3);
}
#blog ul li a{
	display:block;
	height:100%;
	box-sizing:border-box;
	padding:25px;
	background-color:#fff;
	text-decoration:none;
	line-height: 1.5;
}
#blog ul li a:hover{
	background-color:#faede8;
}
#blog ul li a figure img{
	width:100%;
}
#blog ul li a p.ttl{
	padding:15px 0;
	font-size:18px;
	font-weight:700;
}
#blog ul li a p.lead{
	font-size:16px;
}
/* leaflet
-------------------------------------------------------------*/
#leaflet{
}
#leafletInner{
}
#leafletInner a{
	width:100%;
	display:table;
	padding:50px 50px 50px 0;
	box-sizing:border-box;
	text-decoration:none;
	background:#faede8;
}
#leafletInner a:hover{
	background:#f5d6cc;
}
#leafletInner a>div{
	display:table-cell;
	vertical-align:middle;
}
#leafletInner a>div.boxL{
	width:540px;
}
#leafletInner a>div.boxR{
	width:370px;
}
#leafletInner a>div.boxR img{
	width:100%;
}
#leafletInner .sectionTtl p {
 padding: 16px 0 0px;
}
/* ourStores
-------------------------------------------------------------*/
#ourStores{
}
#ourStoresInner{
}
#ourStoresInner>dl{
	margin:10px auto 0;
  max-width : 760px;
	border:2px solid #d47e82;
}
#ourStoresInner>dl>dt{
	padding:12px;
	position:relative;
	text-align:center;
	font-size:20px;
	color:#d47e82;
	font-weight:700;
	cursor:pointer;
	transition:all 0.3s ease-out;
}
#ourStoresInner>dl.open>dt{
	color:#fff;
	background-color:#d47e82;
}
#ourStoresInner>dl>dt>span.boxIcn{
	display:block;
	width:25px;
	height:25px;
	position:absolute;
	top:50%;
	right:20px;
	transform:translate(0,-50%);
}
#ourStoresInner>dl>dt>span.boxIcn:before,
#ourStoresInner>dl>dt>span.boxIcn:after{
	content:"";
	display:block;
	width:3px;
	height:25px;
	background-color:#d47e82;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	transition:all 0.3s ease-out;
}
#ourStoresInner>dl>dt>span.boxIcn:after{
	transform:translate(-50%,-50%) rotate(-90deg);
}
#ourStoresInner>dl.open>dt>span.boxIcn:before{
	background-color:#fff;
	transform:translate(-50%,-50%) rotate(-270deg);
}
#ourStoresInner>dl.open>dt>span.boxIcn:after{
	background-color:#fff;
	transform:translate(-50%,-50%) rotate(-270deg);
}

#ourStoresInner>dl>dd{
	padding:0 50px;
	background-color:#fcf3f0;
	font-size:20px;
	line-height:1.25;
	display:none;
}
#ourStoresInner>dl>dd div.box{
	padding:20px 0;
	border-top:1px solid #9f9f9e;
	display:flex;
	flex-wrap:nowrap;
	vertical-align:top;
}
#ourStoresInner>dl>dd div.box:first-child{
	border-top:none;
}
#ourStoresInner>dl>dd div.box p{
	width:13%;
	padding:5px 0;
	font-weight:700;
}
#ourStoresInner>dl>dd div.box .boxList{
	width:87%;
	overflow:hidden;
}
#ourStoresInner>dl>dd div.box .boxList ul{
	margin:0 0 0 -30px;
	font-size:0;
	letter-spacing:0;
}
#ourStoresInner>dl>dd div.box .boxList ul li{
	display:inline-block;
	font-size:20px;
	margin:5px 0;
	padding:0px 30px;
	border-right:1px solid #9f9f9e;
}
#ourStoresInner>dl>dd div.box .boxList ul li a{
	/*position: relative;*/
	border-bottom: 1px solid #000;
}
/*#ourStoresInner>dl>dd div.box .boxList ul li a:after{
	content: '';
	position: absolute;
	width: 100%;
	bottom:0;
	left:0;
	border-bottom: 1px solid #000;
}*/
/* news
-------------------------------------------------------------*/
#news{
}
#newsInner{
}
#newsInner li{
	position:relative;
	padding:20px 0 20px 130px;
	font-size:18px;
	font-weight:700;
	border-bottom:1px solid #a6a6a6;
}
#newsInner li a{color:#d47e82; text-decoration:underline;}
#newsInner li a:hover{color:#e39598;}
#newsInner li span{
	position:absolute;
	width:125px;
	top:20px;
	left:0;
	font-size:18px;
	font-weight:400;
}
#newsInner li:last-child{
	border-bottom:none;
}
#newsInner .btn{
	width:100%;
	max-width:630px;
	margin:20px auto 0;
}
#newsInner .btn a{
	display:block;
	position:relative;
	padding:20px;
	font-size:20px;
	font-weight:700;
	color:#d47e82;
	background-color:#f4dfe0;
	text-align:center;
}
#newsInner .btn a:hover{
	background-color:#e9bec1;
}
#newsInner .btn a:after{
	content: "";
	display: block;
	width:60px;
	height:14px;
	background: url(../img/arw_line_left.png) no-repeat left top;
	background-size:100% 100%;
	position:absolute;
	right:20px;
	top:50%;
	transform:translateY(-10px);
}
/* recruit
-------------------------------------------------------------*/
#recruit{
}
#recruitInner{
}
#recruitInner a{
	width:100%;
	display:table;
	padding:50px 50px 50px 0;
	box-sizing:border-box;
	text-decoration:none;
	background:#faede8;
	position:relative;
}
#recruitInner a:hover{
	background:#f5d6cc;
}
#recruitInner a>div{
	display:table-cell;
	vertical-align:middle;
}
#recruitInner a>div.boxL{
	width:540px;
}
#recruitInner a>div.boxR{
	width:370px;
}
#recruitInner a>div.boxR img{
	width:100%;
}
#recruitInner .sectionTtl p {
 padding: 16px 0 0px;
}
#recruitInner a p.txt {
	position:absolute;
	right:50px;
	bottom:10px;
	color:#d47e82;
	font-size:20px;
}
#recruitInner a p.txt span {
	display:inline-block;
	padding:0 80px 0 0;
	position:relative;
}
#recruitInner a p.txt span:after {
	content: "";
	display: block;
	width:60px;
	height:14px;
	background: url(../img/arw_line_left.png) no-repeat left top;
	background-size:100% 100%;
	position:absolute;
	right:0px;
	bottom:15px;
}
/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:767px), only screen and (max-device-width:767px){
#contents .section{
	width:auto;
	max-width:960px;
	margin:0 auto;
	padding:40px 20px 50px;
	box-sizing:border-box;
}
#contents .sectionTtl h2{
	padding:0 0 12px;
	font-size: 26px;
	line-height: 1.4;
}
#contents .sectionTtl h2:after{
	width:80px;
	height:2px;
}
#contents .sectionTtl h2 img{
	width:auto;
	height:30px;
}
#contents .sectionTtl p{
	padding:10px 0 22px;
	font-size:22px;
	font-weight:700;
}
#contents .sectionTtl img{
	width:auto;
	height:32px;
}
/* catchArea
-------------------------------------------------------------*/
#catchArea>h2{
	padding:40px 0 20px;
}
#catchArea>h2 img{
	width:140px;
}
#catchArea>p{
	font-size:14px;
}
/* messageArea
-------------------------------------------------------------*/
#messageArea{
	margin:40px auto 0;
	padding:0 30px;
	box-sizing:border-box;
}
#messageAreaInner{
	padding:20px;
}
#messageArea p{
	font-size:12px;
}
/* recommended
-------------------------------------------------------------*/
#recommendedLeft{
	width:100%;
}
#recommendedRight{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
#recommendedRight div{
	width:calc(50% - 13px);
	position:static;
	padding:23px 0 0;
}

#recommendedInner #recommendedLeft figure{
  height:0;
  width:100%;
		padding:100% 0 0 0;
}
#recommendedInner #recommendedLeft img{
  height: 100%;
		max-width:none;
}
#recommendedInner #recommendedRight figure{
  height:0;
  width:100%;
		padding:100% 0 0 0;
}
#recommendedInner #recommendedRight img{
  height: 100%;
		max-width:none;
}

#recommendedInner #recommendedLeft p{
	font-size:13px;
}
#recommendedInner #recommendedLeft p span{
	font-size:10px;
}
#recommendedInner #recommendedRight p{
	font-size:13px;
}
#recommendedInner #recommendedRight p span{
	font-size:10px;
}



/* bestSellers
-------------------------------------------------------------*/
#bestSellers ol{
	padding:0 4px;
}
#bestSellers ol li{
	width:calc(50%);
	margin:40px 0px 0;
	padding:35px 8px 0;
	position:relative;
	box-sizing:border-box;
}
#bestSellers ol li:nth-child(4),
#bestSellers ol li:nth-child(5){
	width:calc(50%);
	margin:40px 0px 0;
	padding: 35px 8px 0;
}
#bestSellers ol li:first-child{
	width:calc(100%);
	margin:10px 0px 0;
	padding:40px 0px 0;
	position:relative;
}
#bestSellers ol li:before{
	width:28px;
	height:39px;
}
#bestSellers ol li:nth-child(4):before,
#bestSellers ol li:nth-child(5):before{
	width:28px;
	height:39px;
}
#bestSellers ol li:first-child:before{
	width:36px;
	height:50px;
}
#bestSellers ol li figure{
	width:100%;
	height:auto;
}
#bestSellers ol li figure span{
	height:auto;
}
#bestSellers ol li:nth-child(4) figure,
#bestSellers ol li:nth-child(5) figure{
	width:100%;
	height:auto;
}
#bestSellers ol li:nth-child(4) figure span,
#bestSellers ol li:nth-child(5) figure span{
	height:auto;
}
#bestSellers ol li dl,
#bestSellers ol li dd{
	font-size:13px;
}
/*#bestSellers ol li:nth-child(4) dl,
#bestSellers ol li:nth-child(5) dl{
	font-size:16px;
}
#bestSellers ol li:first-child dl{
	font-size:16px;
}*/
#bestSellers ol li dt{
	height:50px;
}
#bestSellers ol li dt span{
	height:50px;
}
#bestSellers ol li dt:after{
	width:100px;
}
#bestSellers ol li dd:last-child{
	font-size:12px;
}
/*#bestSellers ol li:nth-child(4) dd:last-child,
#bestSellers ol li:nth-child(5) dd:last-child{
	font-size:10px;
}
#bestSellers ol li:first-child dd:last-child{
	font-size:13px;
}*/
/* blog
-------------------------------------------------------------*/
#blog ul{
	display:block;
}
#blog ul li{
	width:calc(100%);
	margin:20px 0 0;
}
#blog ul li:first-child{
	margin:0;
}
#blog ul li a{
	padding:20px;
}
#blog ul li a p.ttl{
	padding:10px 0;
	font-size:14px;
}
#blog ul li a p.lead{
	font-size:11px;
}
/* leaflet
-------------------------------------------------------------*/
#leafletInner a{
	display:block;
	padding:24px;
}
#leafletInner a>div{
	display:block;
}
#leafletInner a>div.boxL{
	width:auto;
}
#leafletInner a>div.boxR{
	width:auto;
}
#leafletInner .sectionTtl p {
 padding: 5px 0 20px;
	font-size:14px;
}
/* ourStores
-------------------------------------------------------------*/
#ourStoresInner > dl{
	margin: 10px 0 0;
}
#ourStoresInner>dl>dt{
	font-size:13px;
	padding:10px;
}
#ourStoresInner>dl>dt>span.boxIcn{
	width:14px;
	height:14px;
}
#ourStoresInner>dl>dt>span.boxIcn:before,
#ourStoresInner>dl>dt>span.boxIcn:after{
	width:2px;
	height:14px;
}
#ourStoresInner>dl>dd{
	padding:0 20px;
	font-size:13px;
}
#ourStoresInner>dl>dd div.box{
	padding:10px 0;
}
#ourStoresInner>dl>dd div.box p{
	width:25%;
}
#ourStoresInner>dl>dd div.box .boxList{
	width:75%;
}
#ourStoresInner>dl>dd div.box .boxList ul{
	margin:0 0 0 -20px;
}
#ourStoresInner>dl>dd div.box .boxList ul li{
	font-size:13px;
	line-height: 1.4;
	padding:0px 20px;
}

/* news
-------------------------------------------------------------*/
#news{
}
#newsInner{
}
#newsInner li{
	padding:15px 0;
	font-size:14px;
}
#newsInner li span{
	position:static;
	display:block;
	width:auto;
	font-size:14px;
}
#newsInner .btn{
	width:100%;
	max-width:630px;
	margin:20px auto 0;
}
#newsInner .btn a{
	padding:10px;
	font-size:13px;
}
#newsInner .btn a:after{
	width:30px;
	height:7px;
	right:10px;
	transform:translateY(-5px);
}
/* recruit
-------------------------------------------------------------*/
#recruitInner a{
	display:block;
	padding:24px;
}
#recruitInner a>div{
	display:block;
}
#recruitInner a>div.boxL{
	width:auto;
}
#recruitInner a>div.boxR{
	width:auto;
}
#recruitInner .sectionTtl p {
 padding: 5px 0 20px;
	font-size:14px;
}
#recruitInner a p.txt {
	position:static;
	font-size:13px;
	text-align:center;
}
#recruitInner a p.txt span {
	padding:20px 40px 0px 0;
}
#recruitInner a p.txt span:after {
	width:30px;
	height:7px;
	bottom:10px;
}
}


/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 background
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (-webkit-min-device-pixel-ratio:1.5),
only screen and (min-device-pixel-ratio:1.5),
only screen and (max-width:767px), only screen and (max-device-width:767px){
}
