@charset "utf-8";


html { 
overflow:auto; -webkit-text-size-adjust:100%; 
}


body {
  margin:0; 
  padding:0;
  color:#7c4938; 
  -webkit-font-smoothing:antialiased;
  font-family: Zen Maru Gothic;
    }
    
h1, h2, h3, h4, dl, dd, ul, form, textarea, figure { 
margin:0; 
padding:0; 

}

article, aside, dialog, figure, footer, header, hgroup, nav, section { 
display:block; 
}

h1, h2, h3, h4, h5, h6 { 
font-weight:normal; 
}

.item_ttl { line-height:2.5em; }
.item_ttl .en_ttl { display:block; font-size:3em; }


a { 
color:#7c4938; 
text-decoration: none; 
}

a:not(.fade), .anime { -webkit-transition:all .3s; transition:all .3s; }
a:active, a:hover { 
color:#7c4938; 
}

a:focus { outline:none; }

strong { 
font-size:1.2em; 
}
em { 
font-style:normal; 
font-weight:bold; 
}




img { 
max-width:100%; 
height:auto; 
font-size:0; 
line-height:0; 
border-width:0px; 
vertical-align:bottom; 
}

img.middle { 
vertical-align:middle; 
}


ul.kome li { text-indent:-1em; margin-left:1em; }
ul.kome li::before { content:""; }

.allura { font-family: Zen Maru Gothic; }




.flex { display:-webkit-flex; display:flex; -webkit-flex-wrap:wrap; flex-wrap:wrap; }
.flex-between { justify-content:space-between; -webkit-justify-content:space-between; }
.flex-center  { justify-content:center; -webkit-justify-content:center; }
.flex-align-center { -webkit-box-align:center; -webkit-align-items:center; align-items:center; }




@media screen and (max-width: 959px) {
  .pc_only { display:none; }
	
}


@media screen and (max-width: 599px) {
  .sp_none { display:none; }
	

  input.t { width:30%; }
  input.s { width:60%; }
  input.m { width:98%; }
}

@media screen and (min-width: 600px) {
  .sp_none { display: block; }
  .sp_only { display:none; }
}

@media screen and (min-width: 960px) {
  .pc_none { display:none; }

  .txt_vertical {
   -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }



@charset "utf-8";


#wrapper {     position: relative;
    width: 100%;
    overflow: hidden;
    min-width: 1000px;
    min-height: 100%;
	background: #ebe7dc;
}
.inner { width: 1000px; max-width: 100%; margin: 0 auto; }


@media screen and (min-width: 960px) {
  .menu-button { display:none; }
	
	#gnav .submenu { position: absolute; left: 0; right:0; top: 100%; bottom: 0; z-index: 999; max-width: 0; height: 340px; overflow: hidden; }
	
	#gnav .submenu ul li { position: relative; }
	#gnav .submenu ul li a { display: block; padding: .6em .9em; font-size: .7em; color:#fff; background: #7c4938; line-height: 1.2; }
	#gnav .submenu ul li + li a { border-top: 1px #c9c9c9 solid; }	
	#gnav ul > li:hover .submenu { max-width: 100%; }
	
}



@media screen and (max-width: 959px) {
  body { font-size:15px; }
	#wrapper { min-width: auto; }
	.wide_inner,
  .inner, .narrow { width: auto; margin: 0 15px; }


	#gnav { display: none; }
  #gnav { position: absolute; top: 0; right: 0; height: auto; z-index: 1; width: 100%; background: #fff; }
	#gnav .gmenu { margin: 80px 15px 0; }
	#gnav .gmenu > li { width: 100%; }
	#gnav .gmenu > li:nth-child(1) a { border-top: 1px solid #eee; }
	#gnav .gmenu > li a { display: block; padding: 2%; text-align: left; border-bottom: 1px solid #eee; line-height: 1.5; }
	#gnav .gmenu > li.onlineshop a { padding: 2%; }
	#gnav .gmenu > li a::after { position: static; opacity: 1; color: #b69a91; }
	#gnav .gmenu > li.onlineshop a::after { font-size: initial; }
	
	#gnav .sub_nav { position: static; padding: 5%;}
	#gnav .sub_nav li { width: 32%; font-size: 1.3em; }
	#gnav .sub_nav li + li { padding-left: 0; }

}

@media screen and (max-width: 599px){
  body { font-size:14px; }

}