@charset "UTF-8";

/*-----------------------------------------------------	*/
/*	for all						*/
/*-----------------------------------------------------	*/


/* ------ General Settings ------ */

images {
max-width: 100%;
height: auto;
width: auto\9;
}

body {
text-align: center;
margin: 0;
padding: 0;
line-height: inherit;
background: #fff;
box-sizing: border-box;
overflow: hidden;
}

.wrapper {
width: 100%;
position: relative;
}

.sp {
display: none;
}

.clr {
clear: both;
}

.br_pc {
display: inherit;
}

.br_sp {
display: none;
}

@media screen and (max-width: 750px) {

a:hover {
opacity: 1;
text-decoration: none;
}

.wrapper {
position: relative;
overflow: hidden;
}

.pc {
display: none!important;
}

.sp {
display: inherit!important;
}

.br_pc {
display: none !important;
}

.br_sp {
display: inherit !important;
}
}

/* ------ Header ------ */

/*--特商法追記--*/
.infoBoxCom {
	width: 100%;
	text-align: left!important;
}
.infoBoxCom table {
	width: 100%;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
}
.infoBoxCom table td , .infoBoxCom table th {
	padding: 10px;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
/*------------*/


header {
width: 100%;
margin: 0 auto;
}

header .mainimg {
width: 100%;
height: 293px;
position: relative;
}

header .mainimg img {
width: auto;
height: 293px;
	float: right;
}

header .header {
	width: 100%;
	background: url(../images/bg_header.png) repeat-x;
	height: 72px;
	position: absolute;
	top: 0;
	left: 0;
}

header .header-inner {
width: 1228px;
position: absolute;
left: 50%;
top: 1px;
margin-left: -614px;
overflow: hidden;
}

header .header-inner {
width: 1228px;
position: absolute;
left: 50%;
top: 1px;
margin-left: -614px;
overflow: hidden;
}

header .header-inner h1 {
width: 190px;
height: 50px;
margin-top: 7px;
float: left;
}

header .header-inner h1 a {
width: 190px;
height: 50px;
background: url(../images/logo_second.jpg) no-repeat;
text-indent: -9999px;
	display: block;
}

header .header-inner ul.hnav {
overflow: hidden;
padding-top: 16px;
float: right;
padding-right: 45px;
}

header .header-inner ul.hnav li:nth-of-type(1) {
float: left;
padding: 10px 10px 0 0;
font-size: 125%;
line-height: 1;
}

header .header-inner ul.hnav li:nth-of-type(2) {
float: left;
line-height: 1;
}

header .header-inner ul.hnav li:nth-of-type(2) a {
padding: 8px 20px;
background: url(../images/btn_h_onlineshop.png) no-repeat;
width: 184px;
height: 36px;
display: block;
text-indent: -9999px;
overflow: hidden;
}

header h2 {
	width: 1024px;
	position: absolute;
	top: 157px;
left: 50%;
margin-left: -512px;
	text-align: left;
}


#logo {
width: 259px;
position: absolute;
top: 28px;
left: 0;
}

#logo a {
width: 259px;
height: 24px;
background: url(../images/common/logo.png) no-repeat;
text-indent: -9999px;
overflow: hidden;
display: block;
text-align: left;
}

#gnav {
background: url(../images/bg_gn.jpg) repeat-x;
height: 75px;
overflow: hidden;
}

#gnav ul {
position: relative;
height: 75px;
width: 1200px;
margin: 0 auto;
}

#gnav ul:after {
content: ".";
display: block;
clear: both;
height: 0;
visibility: hidden;
}

#gnav ul li {
position: absolute;
top: 0;
}

#gnav ul li a {
display: block;
height: 75px;
text-indent: -9999px;
overflow: hidden;
}

#gnav ul li.n1 {
width: 215px;
left: 0px;
}

#gnav ul li.n1 a {
width: 215px;
background: url(../images/gn.jpg) no-repeat 0 0;
}

#gnav ul li.n1 a:hover {
background: url(../images/gn.jpg) no-repeat 0 -75px;
}

#gnav ul li.n2 {
width: 179px;
left: 215px;
}

#gnav ul li.n2 a {
width: 179px;
background: url(../images/gn.jpg) no-repeat -215px 0;
}

#gnav ul li.n2 a:hover {
background: url(../images/gn.jpg) no-repeat -215px -75px;
}

#gnav ul li.n3 {
width: 220px;
left: 394px;
}

#gnav ul li.n3 a {
width: 220px;
background: url(../images/gn.jpg) no-repeat -394px 0;
}

#gnav ul li.n3 a:hover {
background: url(../images/gn.jpg) no-repeat -394px -75px;
}

#gnav ul li.n4 {
width: 228px;
left: 614px;
}

#gnav ul li.n4 a {
background: url(../images/gn.jpg) no-repeat -614px 0;
}

#gnav ul li.n4 a:hover {
background: url(../images/gn.jpg) no-repeat -614px -75px;
}

#gnav ul li.n5 {
width:150px;
left: 841px;
}

#gnav ul li.n5 a {
width: 150px;
background: url(../images/gn.jpg) no-repeat -841px 0;
}

#gnav ul li.n5 a:hover {
background: url(../images/gn.jpg) no-repeat -841px -75px;
}

#gnav ul li.n6 {
width: 210px;
left: 991px;
}

#gnav ul li.n6 a {
width: 210px;
background: url(../images/gn.jpg) no-repeat -991px 0;
}

#gnav ul li.n6 a:hover {
background: url(../images/gn.jpg) no-repeat -991px -75px;
}


/*current*/

.about #gnav ul li.n1 a {
background: url(../images/gn.jpg) no-repeat 0 -75px;
}

.future #gnav ul li.n2 a {
background: url(../images/gn.jpg) no-repeat -215px -75px;
}

.story #gnav ul li.n3 a {
background: url(../images/gn.jpg) no-repeat -394px -75px;
}

.interview #gnav ul li.n4 a {
background: url(../images/gn.jpg) no-repeat -614px -75px;
}

.media #gnav ul li.n6 a {
background: url(../images/gn.jpg) no-repeat -991px -75px;
}

/**/

.bread{
	padding: 13px 0 0 0;
	width: 1080px;
	margin: 0 auto;
	text-align: right;
}

.bread a{
	font-size: 100%;
}

.bread a:hover{
	color: #888;
}

@media screen and (max-width: 750px) {


/*--------------*/
/* 通販追記 */
/*--------------*/
.whole{
	width:100%!important;
}

.spTopContents {
	width:100%!important;
}

.spTopContents img{
	width:100%!important;
	height: auto!important;
}
.spBox01 {
	width:100%!important;
}
.spBox01 img {
	width:100%!important;
	height: auto!important;
}

.infoBoxCom {
	width: 100%;
	text-align: left!important;
}
.infoBoxCom table {
	width: 100%;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
}
.infoBoxCom table td , .infoBoxCom table th {
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
}

/*--------------*/

	header{
		position: relative;
	}
header .mainimg {
width: 100%;
height: 138px;
position: relative;
	text-align: right;
	z-index: 100;
}

header .mainimg img {
width: auto;
height: 138px;
}

header .header {
	background:none;
width: 100%;
padding: 0;
position: fixed;
left: 0;
top: 0;
margin-left: auto;
overflow: hidden;
box-sizing: border-box;
z-index: 10000;
}

header .header-inner {
width: 100%;
position: inherit;
left: auto;
top: auto;
margin-left: auto;
overflow: hidden;
	padding: 8px 10px;
	box-sizing: border-box;
}

header .header-inner h1 {
width: 160px;
height: 65px;
margin-top: 0px;
float: left;
}

header .header-inner h1 a {
width: 160px;
height: 65px;
background: url(../images/logo_top.png) no-repeat;
text-indent: -9999px;
background-size: 160px auto;
	display: block;
}

header .header-inner ul.hnav {
overflow: hidden;
float: right;
padding-right: 0;
padding-top: 0;
}

header .header-inner ul.hnav li:nth-of-type(1) {
float: none;
display: none;
}

header .header-inner ul.hnav li:nth-of-type(2) {
float: left;
line-height: 1;
margin-right: 7px;
}

header .header-inner ul.hnav li:nth-of-type(2) a {
padding: 0;
background: url(../images/sp_h_shop.png) no-repeat;
width: 37px;
height: 37px;
display: block;
text-indent: -9999px;
overflow: hidden;
background-size: 37px auto;
}

header .header-inner ul.hnav li:nth-of-type(3) {
float: left;
line-height: 1;
}

header h2 {
	width: 200px;
	position: absolute;
	top: 80px;
left: 17px;
margin-left: auto;
	text-align: left;
	z-index: 10000;
}

	header h2 img{
		width: auto;
		height: 38px;
	}

#gnav {
display: none;
}

	.bread{
display: none;
}

}

/* ------ Contents ------ */


/* ------ Footer ------ */

footer {
width: 100%;
background:#59541f;
height: 337px;
color: #fff;
}

footer .inner {
width: 1600px;
height: 337px;
margin: 0 auto;
position: relative;
text-align: left;
}

footer .f_info {
position: absolute;
top: 24px;
left: 220px;
width: 590px;
height: 240px;
background: url(../images/logo_footer.png) no-repeat;
padding-left: 118px;
box-sizing: border-box;
}

footer .f_info .cname {
padding-top: 6px;
}

footer .f_info .cname dt {
font-size: 116%;
margin-bottom: 5px;
}

footer .f_info .cname dd {
font-size: 180%;
margin-bottom: 5px;
}

footer .copyright {
font-size: 93%;
margin-bottom: 20px;
}

footer .clink {
margin-bottom: 20px;
}

footer .clink li {
display: inline-block;
width: 154px;
margin-right: 8px;
}

footer .clink li a {
display: inline-block;
width: 154px;
height: 32px;
border: #acaa8f 1px solid;
box-sizing: border-box;
background: url(../images/ic_cursor_1.png) no-repeat 128px 13px;
color: #fff;
font-size: 116%;
padding: 8px 0 0 16px;
line-height: 1;
}

footer .clink li.fblog_link {
margin-top: 10px;
width: 320px;
}

footer .clink li.fblog_link a {
width: 320px;
background: url(../images/ic_cursor_1.png) no-repeat 293px 13px;
}


footer .f_info .original {
font-size: 93%;
}

footer .f_link {
position: absolute;
top: 36px;
left: 819px;
width: 580px;
overflow: hidden;
}

footer .f_link ul {
width: 190px;
float: left;
}

footer .f_link li {
margin-bottom: 18px;
}

footer .f_link li a {
color: #fff;
background: url(../images/ic_cursor_2.png) no-repeat 0 center;
padding-left: 20px;
font-size: 116%;
text-decoration: underline;
}

.pagetop {
position: absolute;
/*right: 214px;*/ right: 15px;
top: 0px;
cursor: pointer;
width: 71px;
height: 71px;
background: url(../images/pagetop.png) no-repeat;
text-indent: -9999px;
overflow: hidden;
background-size: 71px auto;
margin-top: -44px;
}


/*ページ固定*/

.pagefix{
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 60px;
	background: #690000;
	z-index: 1000;
}
.f_contact {
width: 1030px;
	margin: 0 auto;
overflow: hidden;
	padding-top: 10px;
	color: #fff;
}

.f_contact .f_tel {
float: left;
width: 772px;
overflow: hidden;
padding-top: 3px;
}

.f_contact .f_tel dt {
float: left;
width: 304px;
}

.f_contact .f_tel dt a {
background: url(../images/ic_tel.gif) no-repeat;
width: 284px;
height: 30px;
display: block;
text-indent: -9999px;
overflow: hidden;
}

.f_contact .f_tel dd {
float: left;
width: 460px;
font-size: 133%;
padding-top: 9px;
line-height: 1;
}

.f_contact .f_mail {
float: right;
width: 228px;
}

.f_contact .f_mail a {
width: 228px;
height: 41px;
background: url(../images/ic_mail.gif) no-repeat;
display: block;
text-indent: -9999px;
overflow: hidden;
}


@media screen and (max-width: 750px) {

footer {
width: 100%;
background: #59541f;
height: auto;
color: #fff;
	padding-bottom: 100px;
}

footer .inner {
width: auto;
height: auto;
margin: 0 auto;
position: relative;
text-align: left;
}

footer .f_info {
position: inherit;
top: auto;
left: auto;
width: auto;
height: auto;
background: none;
padding: 15px 15px 15px 15px;
box-sizing: border-box;
}

footer .f_info .cname {
padding-top: 6px;
}

footer .f_info .cname dt {
font-size: 93%;
margin-bottom: 0;
}

footer .f_info .cname dd {
font-size: 133%;
margin-bottom: 5px;
}

footer .copyright {
font-size: 93%;
margin-bottom: 5px;
}

footer .clink {
display: none;
}

footer .f_info .original {
font-size: 93%;
}

footer .f_link {
display: none;
}

.pagetop {
position: absolute;
right: 10px;
top: 10px;
cursor: pointer;
width: 44px;
height: 44px;
background: url(../images/pagetop_sp.png) no-repeat;
text-indent: -9999px;
overflow: hidden;
background-size: 44px auto;
margin-top: 0;
}

	/*ページ固定*/

.pagefix{
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	/* height: 105px; */ height: 90px;
	background: url(../images/bg_f_contact.jpg) repeat;
	/*padding: 5px 0px 8px 0;*/ padding: 0;
	box-sizing: border-box;
	z-index: 9000;
}

.f_contact {
position: relative;
top: auto;
left: auto;
width:100%;
overflow: hidden;
	text-align: left;
	margin: 0;
	box-sizing: border-box;
}

.f_contact .sp {
color: #d3e6a2;
text-align: center;
margin-bottom: 5px;
}

.f_contact .f_tel {
float: left;
width: 58%;
overflow: relative;
padding-top: 3px;
border-right: #330000 1px solid;
margin-right: 5%;
	padding-left: 10px;
}

.f_contact .f_tel dt {
float: none;
width: 174px;
}

.f_contact .f_tel dt a {
background: url(../images/ic_tel_sp.png) no-repeat;
width: 174px;
height: 21px;
display: block;
text-indent: -9999px;
overflow: hidden;
background-size: 174px auto;
}

.f_contact .f_tel dd {
float: none;
width: auto;
font-size: 83%;
padding-top: 5px;
line-height: 1.3;
}

.f_contact .f_mail {
float: right;
width: 28%;
	margin-right: 20px;
	padding-top: 11px;
}

.f_contact .f_mail a {
width: 98px;
height: 30px;
background: url(../images/ic_mail_sp.png) no-repeat;
display: block;
text-indent: -9999px;
overflow: hidden;
background-size: 98px auto;
float: right;
}

}

@media screen and (max-width: 400px) {

footer {
	padding-bottom: 100px;
}

	.f_contact .f_tel {
width:54%;
padding-right: 3%;
	padding-left: 10px;
}

.f_contact .f_mail {
float: right;
width: 27%;
	margin-right: 20px;
}


}


/*-----------------------------------------------------	*/
/*	directstore	*/
/*-----------------------------------------------------	*/


#directstore {
width: 100%;
background: url(../images/bg_page.jpg) repeat;
}

#directstore .inner {
width: 100%;
background: url(../images/bg_info.png) no-repeat center bottom;
background-size: cover;
}

#directstore .storeinfo {
width: 1600px;
height: 677px;
margin: 0 auto;
position: relative;
}

#directstore h1 {
width: 290px;
height: 90px;
position: absolute;
top: 43px;
left: 219px;
background: url(../images/access_img_1.png) no-repeat;
text-indent: -9999px;
}

#directstore dl.store_address {
width: 300px;
position: absolute;
top: 167px;
left: 219px;
text-align: left;
}

#directstore dl.store_address dt {
font-size: 180%;
margin-bottom: 10px;
}

#directstore dl.store_address dd {
font-size: 133%;
padding-bottom: 8px;
line-height: 1.5;
}

#directstore .storeinfo a {
	text-decoration: underline;
}
#directstore .storeinfo a:hover {
	color: #690000;
}

#directstore .map {
width: 492px;
height: 303px;
position: absolute;
top: 125px;
left: 554px;
}

#directstore .map img {
width: 492px;
height: auto;
}

#directstore figure {
width: 392px;
height: 395px;
position: absolute;
top: 88px;
right: 113px;
}

#directstore .onlineshop {
width: 1093px;
position: absolute;
top: 500px;
left: 222px;
text-align: left;
overflow: hidden;
border-top: #59542b 1px solid;
padding-top: 8px;
}

#directstore dl.onlineshop dt {
width: 300px;
height: 55px;
float: left;
margin-right: 20px;
}

#directstore dl.onlineshop dt a {
width: 300px;
height: 55px;
background: url(../images/btn_onlineshop.png) no-repeat center;
display: block;
text-indent: -9999px;
}

#directstore dl.onlineshop dd {
font-size: 133%;
float: left;
padding-top: 18px;
}

@media screen and (max-width: 750px) {

#directstore .inner {
width: 100%;
background: none;
padding: 25px 0 20px 0;
}

#directstore .storeinfo {
width: auto;
height: auto;
margin: 0 auto;
position: inherit;
}


#directstore h1 {
width: 293px;
height: 57px;
position: inherit;
top: auto;
left: auto;
background: url(../images/top_sec2_img_1_sp.png) no-repeat;
text-indent: inherit;
background-size: 293px auto;
margin: 0 auto 20px auto;
font-size: 150%;
text-align: center;
color: #4f5823;
padding: 15px 0 0 0;
	box-sizing: border-box;
font-weight: bold;
}

#directstore dl.store_address {
width: auto;
position: inherit;
top: auto;
left: auto;
text-align: left;
margin: 0 20px 15px 20px;
}

#directstore dl.store_address dt {
font-size: 150%;
margin-bottom: 5px;
}

#directstore dl.store_address dd {
font-size: 116%;
}

#directstore .map {
width: auto;
height: auto;
position: inherit;
top: auto;
left: auto;
margin: 0 20px 25px 20px;
text-align: center;
	background: url(../images/access_img_2_sp.png) no-repeat center top;
	background-size: 100% auto;
	text-indent: -9999px;
}

#directstore .map img {
width: 100%;
height: auto;
}

#directstore figure {
width: 194px;
height: auto;
position: inherit;
top: auto;
right: auto;
margin: 0 auto 15px auto;
}

#directstore figure img {
width: 194px;
height: auto;
position: inherit;
top: auto;
right: auto;
}

#directstore .onlineshop {
width: 265px;
position: inherit;
top: auto;
left: auto;
text-align: left;
overflow: hidden;
border-top: none;
padding-top: 8px;
margin: 0 auto;
}

#directstore dl.onlineshop dt {
width: 262px;
height: 55px;
float: none;
margin-right: 0px;
}

#directstore dl.onlineshop dt a {
width: 262px;
height: 55px;
background: url(../images/btn_onlineshop_sp.png) no-repeat center #000;
display: block;
background-size: 169px auto;
}

#directstore dl.onlineshop dd {
font-size: 75%;
float: none;
padding-top: 10px;
}
#directstore .spFooterMap {
margin: 0 auto 2px auto;
padding: 10px 0;
width: 70%;
background: #111;
}
#directstore .spFooterMap a {
display: block;
color: #fff;
font-size: 120%;
text-decoration: none;
}
#directstore .spFooterMap a:hover {
text-decoration: underline;
color: #fff;
}
#directstore .spFooterMap a:active {
color: #fff;
}
}

/*-----------------------------------------------------	*/
/*	sp nav	*/
/*-----------------------------------------------------	*/

#spnav {
display: none;
position: fixed;
top: 51px;
right: 0;
background: url(../images/spnav_bg.jpg) repeat;
padding: 12px 0px 12px 12px;
border-radius: 5px 0 0 5px;
text-align: left;
background-size: 187px auto;
z-index: 100000;
}

#spnav p a {
background: #fff;
padding: 8px 6px 8px 10px;
border-radius: 5px 0 0 5px;
font-size: 116%;
display: block;
}

#spnav li {
border-bottom: #939393 1px dotted;
}

#spnav li a {
padding: 8px 6px 8px 10px;
font-size: 116%;
display: block;
color: #fff;
}

#spnav li:last-child {
border: none;
}

#spnav .mb {
margin-bottom: 7px;
}

/* JS実装用追加 */
.spnavi_wrap .close {
display: none;
}
.pagetop {
-webkit-transition: .6s;
-o-transition: .6s;
transition: .6s;
opacity: 0;
}
@media screen and (max-width: 750px) {
.pagetop {
position: absolute;
top: 10px;
right: 10px;
overflow: hidden;
width: 44px;
height: 44px;
margin-top: 0;
cursor: pointer;
-webkit-transition: .6s;
-o-transition: .6s;
transition: .6s;
text-indent: -9999px;
opacity: 0;
background: url(../images/pagetop_sp.png) no-repeat;
-webkit-background-size: 44px auto;
background-size: 44px auto;
}
.spnavi_wrap {
position: fixed;
z-index: 100000;
top: 51px;
right: -100%;
-webkit-box-sizing: border-box;
box-sizing: border-box;
width: 212px;
padding-left: 30px;
height: 100%;
}
.spnavi_wrap .close {
position: absolute;
top: 6px;
left: 0;
display: block;
overflow: hidden;
width: 30px;
height: 31px;
padding: 0;
text-indent: -9999px;
background: url(../images/btn_close.png) no-repeat;
-webkit-background-size: 30px auto;
background-size: 30px auto;
}
#spnav {
position: relative;
top: 0;
right: 0;
display: block;
-webkit-box-sizing: border-box;
box-sizing: border-box;
width: 182px;
padding: 12px 0 12px 12px;
text-align: left;
-webkit-border-radius: 5px 0 0 5px;
border-radius: 5px 0 0 5px;
background: url(../images/spnav_bg.jpg) repeat;
-webkit-background-size: 187px auto;
background-size: 187px auto;
overflow: auto;
height: 100%;
padding-bottom: 80px;
-webkit-overflow-scrolling: touch;
}
.layer {
position: fixed;
z-index: 9999;
top: 0;
display: none;
width: 100%;
height: 100%;
background-color: transparent;
}
}
@media screen and (max-width: 750px) and (orientation: landscape) {
.spnavi_wrap {
height: 100%;
}
#spnav {
overflow: auto;
height: 100%;
padding-bottom: 80px;
-webkit-overflow-scrolling: touch;
}
}
