@charset "utf-8";

.sp{
	display: block;
}
.pc{
	display: none!important;
}



/* common
----------------------------------*/
body{
	width: 100%;
	min-width: 320px;
	position: relative;
}
header{
	position: relative;
	z-index: 2000;
	width: 100%;
	height: 60px;
	min-width: initial;
	background: none;
}
header>div{
width: auto;
margin: 0 auto;
position: relative;
}
header h1 {
	top: 12px;
	left: 8px;
	width: 140px;
  z-index: 20;
  z-index: 2000;
}
body#index header h1 {
  top: 12px;
}
header div.topMenuSp{
height: 50px;
width: 100%;
	padding: 5px 0;
	overflow: hidden;
  position: absolute;
  top: 0;
}
header div.topMenuSp ul{
	float: right;
	overflow: hidden;
	margin-right: 60px;
}
header div.topMenuSp li{
	float: left;
	margin-left: 5px;
}

body{
}
div#spMenu{
	position: fixed;
  top: 0;
	right: -260px;
  height: 100%;
	z-index: 2000;
}

p#btnMenu{
	position: absolute;
	top: 0;
	left: -60px;
	padding: 5px;
}
p#btnMenu.close{
	background: none;
}
div#ddMenu{
	float: right;
	width: 250px;
	overflow-y: scroll;
	padding: 0 5px;
	display: block;
}

header div.ddMenuBox{
	padding: 10px;
}

header ul.grobalMenu{
	clear: both;
	overflow: hidden;
	padding-top: 20px;
}
header ul.grobalMenu > li{
	float: none;
	text-align: center;
	border-bottom: 1px solid #fff;
	padding-bottom: 10px;
}
header ul.grobalMenu > li > a{
	display: block;
	text-align: center;
	background-image: url(../img/common/arr_rh_wh.png);
	background-repeat: no-repeat;
	background-size: 4px 8px;
	background-position: center right 7px !important;
}
header ul.grobalMenu > li > a.nw{
	padding-right: 0;
}
header ul.grobalMenu > li~li a{
	margin-left: 0;
	margin-top: 10px;
}

header ul.linkMenu{
	float: none;
	margin: 5px 10px;
}
header ul.linkMenu li{
	float: none;
	width: 100%;
	margin-left: 0;
	margin-bottom: 10px;
}
header ul.linkMenu li:last-child{margin-bottom: 0;}
header ul.linkMenu li a{
	display: block;
	border-radius: 5px;
	line-height: 40px;
	height: 40px;
	padding: 0 35px 0 15px;
	font-size: 12px;
}
header ul.linkMenu > li~li a { margin: 0; }
header ul.linkMenu li:first-child a{
background: #fff url(../img/sp/icon_book_s_gr_sp.png) right center no-repeat;
-webkit-background-size: 30px auto;
background-size: 30px auto;
}
header ul.linkMenu li:last-child a{
background: #fff url(../img/sp/icon_cart_s_gr_sp.png) right center no-repeat;
-webkit-background-size: 30px auto;
background-size: 30px auto;
}

header ul.topMenu{
	float: none;
    width: 100%;
	margin-top: 10px;
}
header ul.topMenu li{
	float: none;
	margin-left: 0;
	margin-bottom: 10px;
}
header ul.topMenu li a{
	display: inline-block;
}
header ul.topMenu li~li a:before{
	content: "";
	display: inline;
	padding-right: 0;
}




section{
  padding: 0 10px;
  overflow-y: hidden;
}
section>div{
	width: auto;
	padding: 30px 0;
}
section h2{
	width: 300px;
	margin-bottom: 25px;
}

.btnMore a{
	line-height: 40px;
	height: 40px;
	background: url(../img/common/arr_rh_wh_sp.png) right center no-repeat;
	-webkit-background-size: 14px auto;
	background-size: 14px auto;
}

header .snsBtn{
	/*margin: 20px 0 20px;*/
  margin: 10px 0 20px;
}
header .snsBtn>ul{
	text-align: center;
	font-size: 0;
}
header .snsBtn>ul>li{
	float: none;
	display: inline-block;
	margin: 0 8px;
}
header .snsBtn>ul>li:first-child{
	margin-left: 8px;
}
header .snsBtn img{
	width: 42px;
}

footer .snsBtn{
	padding: 10px 0 25px;
	border-bottom: 0;
}
footer .snsBtn>ul>li{
	margin: 0 8px;
}

footer>div{
	width: auto;
	padding: 10px;
}

#btobLink{
	overflow: hidden;
	padding-bottom: 10px;
	border-bottom:none;
}
#btobLink li{
	background: #fff;
	width: 100%;
	border-radius: 5px;
}
#btobLink li a{
	line-height: 44px;
  height: 44px;
  text-align: left;
	background: url(../img/sp/icon_nw_gr_sp.png) right center no-repeat;
	-webkit-background-size: 26px auto;
	background-size: 26px auto;
	margin-bottom: 10px;
  padding-left: 10px;
  box-sizing: border-box;
  -moz-transition: opacity .2s ease-in-out;
  -ms-transition: opacity .2s ease-in-out;
  -o-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
}
#btobLink li a:hover {
  text-decoration: none;
  -ms-filter: "alpha(opacity=70)";
  -moz-opacity: .7;
  opacity: .7;
}
#btobLink li:first-child,
#btobLink li:last-child{
	float: none;
}


#footerMenu{
	padding-top: 0;
}
#footerMenu>ul{
	float: none;
  padding-bottom: 10px;
}
#footerMenu>ul li{
	float: none;
	margin-left: 0;
	margin-bottom: 10px;
}
#footerMenu>ul li a{
	display: inline-block;
	padding-right: 20px;
	font-size: 12px;
	color: #fff;
}
#footerMenu>ul li~li a:before{
	content: "";
	display: inline;
	padding-right: 0;
}
#footerMenu #cp{
border-top: 1px solid #fff;
	float: none;
	padding-top: 10px;
}

#pageTop{
	width: 60px;
	position: fixed;
	right: 10px;
	bottom: 10px;
	z-index:4000;
}


#content {
  width: 100%;
  margin: 0 auto;
}

.column2 #main {
  width: 100%;
  float: none;
}

.column2 #side {
  width: 100%;
  float: none;
  padding: 0 10px;
  box-sizing: border-box;
}



#pageNav {
  display: none;
}





/* HOME
----------------------------------*/
#slideSp{
	width: 100%;
	overflow: hidden;
}
#slideSp ul{
	overflow: hidden;
	width:9999px;
}
#slideSp ul li{
	float: left;
}

ul.contentsList{
	overflow: hidden;
}
ul.contentsList li{
	float: none;
	width: 100%;
  margin:10px 0;
}
ul.contentsList li .btn{
  line-height:50px;
}

.btnShopSearch.sp p{
	margin: 35px 0 10px;
	padding: 3px;
	background: url(../img/sp/icon_search.png) 19px 12px no-repeat;
	-webkit-background-size: 49px auto;
	background-size: 49px auto;
}
.btnShopSearch.sp p a{
	display: block;
	height: 45px;
	line-height: 1;
	text-align: center;
	border: 1px solid #fff;
	padding-top: 27px;
	background: url(../img/common/arr_rh_wh_sp.png) right center no-repeat;
	-webkit-background-size: 14px auto;
	background-size: 14px auto;
}


section#homeNews{
	background: url(../img/common/bg_news.png) 0 0 repeat;
	margin-top: 0;
}
div.newsListWrap{
	float: none;
	width: 100%;
}
div.newsListWrap ul.newsList{
	margin-bottom: 10px;
}
div.newsListWrap ul.newsList li{
	float: none;
	width: 100%;
  height: auto;
  min-height: 0;
	margin-bottom: 1px;
	padding-left: 10px;
	background: #fff;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
div.newsListWrap ul.newsList li:nth-child(2n){
	margin-left:0;
}
div.newsListWrap ul.newsList li > a > p{
	float: left;
	width: 60px;
}
div.newsListWrap ul.newsList li dl{
	float: none;
	padding:0 0 0 70px;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
  margin-left: 0;
}
div.newsListWrap ul.newsList li dt{
	font-weight: bold;
	font-size: 12px;
}
div.newsListWrap ul.newsList li dd{
	line-height: 1.4;
}

div.scBoxWrap .scBox ul li a {
  box-sizing: border-box;
  display: inline-block;
  height: 100%;
  padding: 10px 0 10px;
  width: 100%;
}

div.scBoxWrap{
	float: none;
	width: 100%;
	margin-top: 30px;
}
div.scBoxWrap .scBox h3 img{
	width: 300px;
}


div.scBoxWrap .scBox ul  li dl{
	float: none;
	padding-left: 90px;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

div.scBoxWrap .mailmagBtn{
	background: url(../img/common/arr_rh_gr.png) right 10px center no-repeat;
	-webkit-background-size: 6px auto;
	background-size: 6px auto;
	background-color: #fff;
	padding: 10px;
}
div.scBoxWrap .mailmagBtn p:first-child{
	float: left;
	width: 56px;
	padding: 6px 8px 6px 0;
	border-right: 1px solid #ccc;
}
div.scBoxWrap .mailmagBtn p:last-child{
	float: none;
	width: 100%;
	padding:5px 10px 0 75px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

section#homePU{
	background: url(../img/sp/bg_pu.png) center bottom no-repeat ;
	-webkit-background-size: 100%;
	background-size: 100%;
	border-bottom: 5px solid #EBE9E0;
}
.topPickup{
  height:300px;
  width:100%;
  margin-bottom:10px;
}
.topPickup-sub{
  width:100%;
  margin-bottom:10px;
}
.topPickup-sub img{
  width:100%;
  height:auto;
}
.topPickup .text .ttl{
  line-height:44px;
  padding:0 15px;
  font-size:21px;
}
.topPickup .text .txt{
  font-size:14px;
  padding:10px 15px;
}
.topPickup .text .ttl.is-blnk::after{
  right:13px;
  margin-top: -7px;
  width: 18px;
  height: 15px;
}
.topPickup .text .ttl.is-pdf::after{
  right:15px;
}
.topPickup .text .ttl.is-hlc::after{
  right:10px;
  top:50%;
}

div.puBtnWrap div.puBtn{
	width: 49%;
	padding: 4px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

div.newsListWrap ul.newsList li a:hover,
div.scBoxWrap .mailmagBtn a:hover {
  text-decoration: none;
}

div.bottomContWrap{
	width: auto;
	padding: 15px 0 0;
}
div.bottomContWrap ul.otherLink{
	float: none;
}
div.bottomContWrap ul.otherLink li{
	margin-right: 0;
	width: 50%;
	padding: 0 5px 10px 10px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
div.bottomContWrap ul.otherLink li:nth-child(2n){
	padding: 0 10px 10px 5px;
}

div.bottomContWrap ul.otherLink li.nw_bw:after{
right: 17px;
}
div.bottomContWrap div.webLink{
	float: none;
	width: 100%;
	border-top: 1px solid #DAD6D1;
}

div.bottomContWrap div.webLink a{
	line-height: 1.3;
	font-size: 12px;
}
div.bottomContWrap div.webLink a span{
	display: block;
}

div.bottomContWrap div.webLink .cat{
	display: table;
	width: 100%;
	box-sizing: border-box;
	padding: 0;
}
div.bottomContWrap div.webLink .cat > div{
	display: table-cell;
	vertical-align: middle;
}
div.bottomContWrap div.webLink .cat span{
	font-size: 12px;
	padding-left: 20px;
	width: 125px;
	margin: 0 auto;
	background-position: left -4px center;
}
div.bottomContWrap div.webLink .cat >div> div{
	display: table;
	width: 100%;
	height: 50%;
	border-spacing: 5px 0;
}

div.bottomContWrap div.webLink .cat .btnMore{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 50%;
}
div.bottomContWrap div.webLink .cat .btnMore a{
	height: auto;
	padding: 2% 3% 2%;
	font-size: 11px;
	line-height: 1.4;
	background-position: right 3% center;
}
div.bottomContWrap div.webLink .book{
	display: table;
	width: 100%;
}
div.bottomContWrap div.webLink .book a{
	display: table-cell;
	vertical-align: middle;
	background: none;
	line-height: 1.4;
}
div.bottomContWrap div.webLink .book a span{
	width: 100px;
	padding: 0 20px;
	margin: 0 auto;
	background: url(../img/common/icon_book_s_gr.png) left 5px center no-repeat;
	-webkit-background-size: 19px auto;
	background-size: 19px auto;
}
.whBox img{
  width:100%;
  height:auto;
}

.topTitle img {
  width: 100%;
  height: auto;
}

.topTitle.pickup img {
  width: 100%;
  height: auto;
}


/* add
-----------------------------------------------------------------------------*/
#content {
  width: 100%;
  margin: 0 auto;
}

.column1 #main {
  width: 100%;
  margin: 0 auto;
}

.column2 #main {
  width: 100%;
  float: none;
}

.column2 #side {
  width: 100%;
  float: none;
}

.detail .column2 #main {
  width: 100%;
  float: none;
}

.column1 #titleArea {
  height: 200px;
  width: 100%;
  padding: 0 0 0;
  margin-bottom: 10px;
  border-bottom: none;
  display: table;
  overflow: hidden;
}

.column1 #titleArea .title_01 {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  height: 200px;
  /*padding-top: 30px;*/
  box-sizing: border-box;
}

#workshop .column1 #titleArea { background: url(../img/workshop/workshop_bg.jpg) center 0 no-repeat; background-size: cover; }
#workshop .column2 #titleArea .title_01 img { width: 114px; height: auto; }


body#school.index .column1 #titleArea {
  border-bottom: medium none;
  display: table;
  height: 200px !important;
  margin-bottom: 0;
  padding: 0;
  width: 100%;
}


#titleArea {
  border-bottom: 4px solid #ebe9e0;
  margin-bottom: 0;
  /*padding: 10px 0 22px;*/
}

/*#titleArea .title_01 img {
  width: 205px;
  height: auto;
  padding-left: 10px;
}*/



#err #titleArea,
#faq #titleArea,
#mailmagazine #titleArea {
  height: auto;
  padding: 0;
  margin-bottom: 30px;
  border-bottom: solid 4px #ebe9e0;
}

#err #titleArea,
#mailmagazine #titleArea {
  margin-bottom: 0;
}

#err .column1 #titleArea .title_01,
#faq .column1 #titleArea .title_01,
#news .column2 #titleArea .title_01,
#mailmagazine .column1 #titleArea .title_01,
#pointcard .column1 #titleArea .title_01,
#shop.shop .column1 #titleArea .title_01,
#shop.list .column2 #titleArea .title_01,
#shop.detail .column1 #titleArea .title_01,
#ayurveda.japa .column1 #titleArea .title_01,
#ayurveda.detail .column1 #titleArea .title_01,
#school.news .column2 #titleArea .title_01,
#school.school .column1 #titleArea .title_01,
#garden.index .column2 #titleArea .title_01,
#garden.detail .column2 #titleArea .title_01,
#garden.restaurant .column1 #titleArea .title_01,
#workshop.list .column2 #titleArea .title_01 {
  display: block;
  text-align: left;
  height: 50px !important;
  padding-top: 15px;
  padding-left: 10px;
  box-sizing: border-box;
  width: 100%;
  margin: 0 auto;
  line-height: 1;
}

#products .column1, .column2 {
  /*margin-top: 60px;*/
}

/*#products .column1, #products .column2 {
  padding-top: 60px;
}*/


section#topContents>div{
	padding-bottom: 10px;
}
a.button-all{
	box-sizing: border-box;
	display: block;
	width: 100%;
	margin: 10px auto;
}

.horizontalTitle{margin: 35px 0 15px;}
.libraryArea section{
	overflow: hidden;
	padding: 0;
}
.libraryAreaList .libraryAreaListBlock{
	float: none;
	width: 100%;
	margin-top: 5px;
	margin-right: 0;
}
.libraryAreaList .libraryAreaListBlock:nth-child(2),
.libraryAreaList .libraryAreaListBlock:nth-child(3){margin-top: 5px;}

.lifewarebookBox{
	width: 100%;
	height: 100px;
}
.lifewarebookBox+.lifewarebookBox{margin-top: 5px;}
.lifewarebookBox .imgArea{width: 100px;}
.lifewarebookBox .txtArea{
	padding: 5px 5px 25px;
	font-weight: normal;
}
.lifewarebookBox .txtArea p{
	padding: 2px 5px 0;
	line-height: 1.6;
}
.lifewarebookBox .txtArea .label{
	bottom: 5px;
	left: 5px; right: 5px;
	line-height: 14px;
}

.libraryBox{
	height: 80px;
}
.libraryBox .imgArea{width: 80px;}
.libraryBox .txtArea{
	padding: 5px 10px 25px;
	font-weight: normal;
}
.libraryBox .txtArea .label{
	right: 5px; bottom: 5px;
}

.libraryAreaMoreContents{
	padding-top: 5px;
}
.libraryAreaMore{
	width: auto;
}

/* library導線 */
.libraryArea{}
.libraryArea .libraryEntry{
	float: none;
	width: 100%;
	margin-right: 0;
	padding: 15px 0 14px 10px;
}
.libraryArea .libraryEntry:nth-child(2n+1){}
.libraryArea .libraryEntry a{}
.libraryArea .libraryEntry a:hover{}
.libraryArea .libraryEntry .libraryEntryImgArea{
	width: 90px;
	height: 90px;
	margin-right: 0;
	margin-bottom: 16px;
}
.libraryArea .libraryEntry .libraryEntryBlogName{
	margin: 0 0 -7px;
	margin-left: 102px;
	padding-top: 0;
}
.libraryArea .libraryEntry .libraryEntryBlogName br{display: none;}
.libraryArea .libraryEntry .libraryEntryBlogName span{
	padding-right: 5px;
	margin-top: -2px;
	margin-bottom: 4px;
	word-wrap: break-word;
}
.libraryArea .libraryEntry .libraryEntryBlogName span::after{content: none;}
.libraryArea .libraryEntry .libraryEntryBlogName small{
	line-height: 1.4;
}
.libraryArea .libraryEntryText{
	clear: both;
	display: block;
	margin: 16px 0 0;
}
.libraryArea .libraryEntry time{
	box-sizing: border-box;
	width: 85px;
	padding-left: 1px;
	text-align: center;
	padding-top: 2px;
}
.libraryArea .libraryEntry .libraryEntryTitle{
	padding-left: 12px;
	padding-right: 1em;
	margin-left: 85px;
}
.libraryArea .libraryEntry .libraryEntryTitle span{
	margin-bottom: -6px;
}
.libraryArea .libraryEntry.freeArea{
	padding: 0;
	border: none;
	margin: 10px 0 0;
}
.bnArea {
  margin:10px auto;
}
.libraryArea .bnArea li {
  width: 100%;
  float:none
}
.libraryArea .bnArea li:nth-child(even) {
  margin-left:0;
  margin-top:10px;
}

/* end library導線 */