html, body, div, span, applet, object, iframe,
h1, h2, h3, fea, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video{
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{	display: block;}
body{ line-height: 1;}
ol, ul{ list-style: none;}
blockquote,q{ quotes: none;}
blockquote:before, blockquote:after,q:before,q:after{ content: ''; content: none;}
table{ border-collapse: collapse; border-spacing: 0;}

@import url('https://fonts.googleapis.com/earlyaccess/hannari.css');
/*==============================
  common
================================*/
html{ font-size: 62.5%;}
a{ text-decoration: none;}
a:hover img{ opacity: 0.7;}
img{ max-width: 100%; height: auto;}
body{
	width: 100%;
  line-height: 1.4;
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin: 0;
  font-size: 1.6rem;
  color: #430101;
	height: 100%;
}
h2{
	color: #430101;
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 20px;
}
.wrap{
  width: 100%;
	min-height: 100%;
	margin: 0 auto;
  background-size: cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: center center;
}
.inner{
  width: 96%;
  max-width: 100%;
  min-width: 380px;
  margin: 0 auto;
}
.clear{
	clear:both;
	display:block;
	overflow:hidden;
	visibility:hidden;
	width:0;
	height:0;
}
.clear:after{
	clear:both;
	content:' ';
	display:block;
	font-size:0;
	line-height:0;
	visibility:hidden;
	width:0;
	height:0;
}
.hide{ display: none !important;}
dt{float: left;}
.container{
	width: 100%;
	max-width: 1280px;
	margin: 0;
}
article.main{ width: 100%; margin: 0 auto;}
.twice{ text-align: left;}
h2,h3,.subtit,.tc_red{ text-align: center;}
.subtit{
	font-weight: bold;
	text-align: center;
	margin: 10px;
}
.block{
	position: relative;
	width: 100%;
	display: inline-block;
	background-color: #8157a1;
	color: #fff;
	padding: 10px 0;
	text-align: center;
	font-size: 18px;
	text-decoration: none;
	margin-top: 10px;
}
.block::after{
	position: absolute;
	top: 43%;
	right: 5px;
	content: '';
	margin-top: -5px;
	border: 10px solid transparent;
	border-top-width: 8px;
	border-bottom-width: 8px;
	border-left-color: #fff;
}
.tleft{ text-align: left !important;}
.tright{ text-align: right !important;}
.tcenter{ text-align: center !important;}

@media screen and (min-width: 768px){
/*==============================
  general
================================*/

.pc{display: inline;}
.moblie{display: none !important;}
.box{
	border: 1px solid #ccc;
	width: 293px;
	height: 455px;
	padding: 10px;
	margin-bottom: 30px;
}
.twice .box{ float: left;}
.fleft{ float: left !important;}
.fright{ float: right !important;}
.fnone{ float: none !important;}
.fwb{ font-weight: bold;}
.mt10{ margin-top: 10px;}
.mt20{ margin-top: 20px;}
.mt30{ margin-top: 30px;}
.mt40{ margin-top: 40px;}
.mt50{ margin-top: 50px;}
.mt60{ margin-top: 60px;}
.mt70{ margin-top: 70px;}
.mt80{ margin-top: 80px;}
.mt90{ margin-top: 90px;}
.mb10{ margin-bottom: 10px;}
.mb20{ margin-bottom: 20px;}
.mb30{ margin-bottom: 30px;}
.mb40{ margin-bottom: 40px;}
.mb50{ margin-bottom: 50px;}
.mb60{ margin-bottom: 60px;}
.mb70{ margin-bottom: 70px;}
.mb80{ margin-bottom: 80px;}
.mb90{ margin-bottom: 90px;}
.ml10{ margin-left: 10px;}
.ml20{ margin-left: 20px;}
.ml30{ margin-left: 30px;}
.ml40{ margin-left: 40px;}
.ml50{ margin-left: 50px;}
.ml60{ margin-left: 60px;}
.ml70{ margin-left: 70px;}
.ml80{ margin-left: 80px;}
.ml90{ margin-left: 90px;}
.mr10{ margin-right: 10px;}
.mr20{ margin-right: 20px;}
.mr30{ margin-right: 30px;}
.mr40{ margin-right: 40px;}
.mr50{ margin-right: 50px;}
.mr60{ margin-right: 60px;}
.mr70{ margin-right: 70px;}
.mr80{ margin-right: 80px;}
.mr90{ margin-right: 90px;}
.w10{ width:10% !important;}
.w20{ width:20% !important;}
.w30{ width:30% !important;}
.w40{ width:40% !important;}
.w50{ width:50% !important;}
.w60{ width:60% !important;}
.w70{ width:70% !important;}
.w80{ width:80% !important;}
.w90{ width:90% !important;}
.w100{ width:100% !important;}
.main{ font-size: 16px; margin-bottom: 30px;}
.main-content{ margin: 0 auto; max-width: 1000px; width: 100%;}
.main-area{ margin: 0 auto; max-width: 1000px; width: 100%;}
.flexbox_sb{display: flex; justify-content: space-between;}
.flexbox_fs{display: flex; justify-content: flex-start;}
.flexbox_fe{display: flex; justify-content: flex-end;}
.fb_reverse{flex-direction: row-reverse;}
.fb_is{align-items: flex-start;}
.fb_ie{align-items: flex-end;}
.fb_cn{align-items: center;}
.imgsdw{box-shadow:5px 5px 10px rgba(0,0,0,.1);}
/*==============================
  header
================================*/
#header_area{border-bottom: 1px solid #ff0000;}
.nav-button { display: none;}
.title{ float: left; margin: 1vw 3vw; }
.mainmenu{
	width: 40%;
	float: right;
	text-align: right;
	margin: 2vw 3vw;
}
.nav-button { display: none;}
#navi { display: block !important;}
#navi.open { display: block;}
#navi.close { display: none;}
#navi-child {
	display: block !important;
	text-align: left;
}
#navi-child ul{
	display: flex;
	justify-content: flex-start;
	-ms-align-items: flex-start;
	align-items: flex-start;
	margin: 0 3%;
}
#navi-child li{
	list-style-image : url("../images/menu.png");
	margin: 0 1% 0 3%;
}
#navi-child li a{
	font-family: “Hannari”, serif;
	display: block;
	padding: 0.5vw 0;
	font-size: 24px;
	text-align: center;
	color: #ff0000;
}
#navi-child li.active,
#navi-child li:hover{border-bottom: 1px solid #ff0000;}
.page-title{
	font-family: “Hannari”, serif;
	font-size: 30px;
	color: #ff0000;
	background-color: #ffe3e3;
	padding: 5px 0;
	letter-spacing: 0.3em;
	margin: 0;
}

.title{ float: left; margin: 1%; width: 30%;}
.descriptions{font-size: 12px;}
.h1-title{margin: 3% 2%;}
.main-title{font-size: 24px; color: #000; font-weight: bold;}
.mainmenu{
	float: right;
	text-align: right;
	margin: 1% 2%;
}
.mainmenu .button{
	margin: 0;
	display: flex;
	justify-content: flex-end;
	-ms-align-items: flex-end;
}
.mainmenu .button li{ margin-left: 30px;}
.sns{position: absolute; top: 0;right: 1vw;}
.banner{position: relative;}
#navi{
	text-align: center;
	position: absolute;
	top: 0;
	left: 1%;
	-webkit-transform: translate(0,5%);
	-moz-transform: translate(0,5%);
	-ms-transform: translate(0,5%);
	-o-transform: translate(0,5%);
	transform: translate(0,5%);
}
#navi ul{
	width: 20vw;
	display: flex;
	justify-content: flex-start;
	-ms-align-items: flex-start;
	align-items: flex-start;
}
nav#navi li{margin: 0 3%;}
nav#navi li a{
	display: block;
	padding: 0.5vw 0;
	font-size: 16px;
	color: #ff0000;
}
.bread{margin-top: 1%; margin-left: 1%;}
/*==============================
  toppage
================================*/
.product{
	width: 100%;
	margin: 3% auto;
	max-width: 1000px;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.h_product{align-self:flex-start; margin: 0.5vw;}
.read_more{align-self:flex-end;}
.product-list{margin: 0 0.5vw;}
.product_item{margin: 0.5vw; width: 35%;}
.product_title{color: #079b1d; text-align: left; font-size: 14px;}
.concept{ text-align: center; margin: 40px auto;}
.concept h3 span{	font-size: 32px;}
.pc_img{margin:1% auto;}
.linkimg{text-align: center;margin:3% auto;}
.instagram{
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	width: 90vw;
	max-width: 815px;
	border: 2px solid #f00;
	padding: 1vw;
	margin: 5% auto;
	box-sizing: border-box;
}
.instagram span,
.instagram span:visited{
	color: #f00;
	font-size: 30px;
	font-family: Georgia, serif;
}
.instagram img{
	width: 80px;
	margin-left: 2%;
}
/*==============================
  footer
================================*/
.f_bannar{margin: 5% auto 0; text-align: center;}
.footer{margin-top: 0;}
.privacy{	margin-bottom: 20px;}
.privacy p{ margin-right: 10px;	font-size: 16px !important;}
.descriptions, .zipaddr{ font-size:  1.2vw;}
.f_name{
	font-size: 36px;
	font-weight: bold;
	font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
}
#footer_in{
	font-size: 14px;
	padding: 1% 5% ;
	text-align: left;
	background: #ff0000;
	color: #fff;
}
#foot_contact{
	padding-bottom: 2%;
	width: 30vw;
}
.f_menu{width: 70vw;}
.nav li { margin: 1% 5% 1% 0;}
.nav a {
  text-decoration: none;
  font-size: 16px;
  color: #fff;
}
.copylight{ padding: 1%; text-align: center;}
p.time{ text-indent: -1.4em; font-size: 20px;}
a.pagetop{
	position: absolute;
	right: 10px;
	top: -4%;
}
p#copy{ margin-top: 30px;}

/*==============================
  contact
================================*/
.h_bb_b{
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 30px;
	border-bottom: 1px solid #000;
	margin-bottom: 3%;
}
.contact{
	background: #eceded;
	padding: 3% 0;
}
.contact-area {
    margin: 0 auto;
    max-width: 800px;
    width: 100%;
}
/*==============================
  company
================================*/

.company{
	margin: 5% auto;
	width: 60vw;
	max-width: 1000px;
}
.h_bbdual{
	width: 65vw;
	font-size: 30px;
	font-weight: bold;
	padding: 1% 0;
	border-bottom:5px solid #eedb85;
	position: relative;
	margin:3% auto;
}
.h_bbdual:before{
	content:"";
	display:block;
	width:15%;
	border-bottom:5px solid #d1d1d0;
	position:absolute;
	bottom:0;
	margin-bottom:-5px;
}
.company-table,
.pr-table{ width: 100%; border: none;}
.company-table{
	border-top: 1px dotted #000;
	font-size: 18px;
	margin-bottom: 15%;
}
.table-head,
.table-contents{
	padding: 1% 5%;
	white-space: nowrap;
	vertical-align: middle;
	text-align: left;
}
.company-head,
.company-contents{
	padding: 3% 5%;
	white-space: nowrap;
	vertical-align: top;
	text-align: left;
	line-height: 2 ;
}
.company-name{ font-size: 24px;}
.dat-line{ border-bottom: 1px dotted #000;}
.table-head{text-align: left;}

/*==============================
  product
================================*/
.product{
	margin: 5% auto;
	width: 80vw;
	max-width: 1280px;
	text-align: center;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}
.product-item{width: 25%;}
.shopping-item{width: 20%; margin: 5% 2.5%;}
.shopping-item > h3{
	font-weight: bold;
	text-align: center;
	line-height: 1.8;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid #000;
}
.shopping-item > h3 span{
	font-weight: normal;
}
.shopping-item > p{
	text-align: left;
	min-height: 70px;
}
.star {
	margin: 10px 0;
	text-align: left;
	min-height: 70px;
}
.star span{
	display: inline-block;
	min-width: 80px;
}
.star i{
	color: #ffd700;
}
.detail_link{
	display: block;
	color: #ff0000;
	padding: 10px;
	text-align: center;
	border: 1px solid #ff0000;
}
.product-item > div{
	margin: auto;
	text-align: center;
	margin-bottom: 30px;
}
.item-title{
	font-size: 18px;
	margin: 5% auto 15%;
}

/*==============================
  detail
================================*/
.detail{
	margin: 5% auto;
	width: 80vw;
	max-width: 1280px;
	text-align: center;
}
.detail_banner{
	margin: 0% auto 5%;
	width: 80vw;
	max-width: 1280px;
	text-align: center;
}

/*==============================
  introduction
================================*/
.introduction{
	margin: 5% auto;
	width: 60vw;
	max-width: 1000px;
	text-align: center;
}
.intro-title{
	font-size: 36px;
	color: #db0101;
	width: 70%;
	margin: 0 auto;
	border-bottom: 3px dotted #ff0000;
}
.intro-img{
	display: inline-block;
	margin: 5% auto;
}

/*==============================
  etc_page
================================*/
.privacy,
.transactions{
	margin: 5% auto;
	width: 60vw;
	max-width: 1000px;
}
.policy h3{
	text-align: left;
	font-size: 20px;
	font-weight: bold;
	margin-top: 20px;
}
.policy p{
	margin: 10px 0;
	line-height: 1.5;
}

/*==============================
  googlemap
================================*/
.ggmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}
.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*==============================
	craft
================================*/
.menu_pc, .craft_pc{display: inline;}
.menu_moblie, .craft_moblie{display: none !important;}
/*==============================
  company
================================*/
/* contact form7 */
.wpcf7{ margin: 96px 0;}
.asterisk{ margin: 0 0 0 0.2em; color: #f5637a;}
input[type="text"],
input[type="email"],
select,
input[type="url"],
textarea{
	background-color: #fff;
	color: #000;
	width: 95%;
	border: 1px solid #ddd;
	font-size: 100%;
	padding: 0.5em;
	border-radius: 4px;
	box-shadow: 1px 1px 3px rgba(0,0,0,.1) inset;
}
/* 送信ボタン */
input[type="submit"], input[type="reset"], input[type="button"]{
	width: 300px;
	height: 60px;
	background: #cacaca;
	color: #000;
	font-size: 1.1em;
	font-weight: bold;
	letter-spacing: 0.2em;
	border: 1px solid #fff;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
}
/* 送信ボタンホバー */
input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover{ background: #FFF;	color: #000;}
input[type="password"]{
	background-color: #fff;
	color: #000;
	border: 1px solid #ddd;
	font-size: 100%;
	padding: 0.5em;
	border-radius: 4px;
	box-shadow: 1px 1px 3px rgba(0,0,0,.1) inset;
}
input.subon{
	width: 150px;
	height: 40px;
	background: #cacaca;
	color: #FFF;
	font-size: 1.1em;
	font-weight: bold;
	letter-spacing: 0.2em;
	border: 1px solid #fff;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
}
/* 送信ボタンホバー */
input.subon:hover{ background: #FFF;	color: #cacaca;}
/*==============================
  member
================================*/
.member h4{
	color:  #8ea121;
	font-size: 22px;
	font-weight: bold;
	text-align: left;
	margin: 30px 0 10px;
}
.member table{ border-spacing: 0; font-size:14px;}
.member table th{
  color: #000;
  padding: 8px 15px;
  background: #eee;
  background:-moz-linear-gradient(#eee, #ddd 50%);
  background:-webkit-gradient(linear, 100% 0%, 100% 50%, from(#eee), to(#ddd));
  font-weight: bold;
  border-top:1px solid #aaa;
  border-bottom:1px solid #aaa;
  line-height: 120%;
  text-align: center;
  text-shadow:0 -1px 0 rgba(255,255,255,0.9);
  box-shadow: 0px 1px 1px rgba(255,255,255,0.3) inset;
}
.member table th:first-child{ border-left:1px solid #aaa; border-radius: 5px 0 0 0;}
.member table th:last-child{ border-radius:0 5px 0 0; border-right:1px solid #aaa;}
.member table tr td{ padding: 8px 15px; text-align: center;}
.member table tr td:first-child{ border-left: 1px solid #aaa;}
.member table tr td:last-child{ border-right: 1px solid #aaa;}
.member table tr{ background: #fff;}
.member table tr:nth-child(2n+1){ background: #f5f5f5;}
.member table tr:last-child td{ border-bottom:1px solid #aaa;}
.member table tr:last-child td:first-child{ border-radius: 0 0 0 5px;}
.member table tr:last-child td:last-child{ border-radius: 0 0 5px 0;}
.member table tr:hover{ background: #eee; cursor:pointer;}
}
