@charset "utf-8";

/*==================================================================================================================
リセット
==================================================================================================================*/
/*リセット*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, div, dfn, em, img, ins, kbd, q, s, samp, small, strike, 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, hgroup, menu, nav, output, ruby, summary, time, mark, audio, video {
	margin:0;
	padding:0;
	text-align:inherit;
	font-weight:inherit;
  	font-style:inherit;
	background-repeat:no-repeat;
	border:0 none;
}


/*==================================================================================================================
再定義
==================================================================================================================*/
/*基本リンク
------------------------------------------------------------------------------------------------------------------*/

/*
a:hover img, a:focus img {
	opacity:0.75;
	filter:alpha(opacity=75);
}
*/

/*リスト
------------------------------------------------------------------------------------------------------------------*/
ol, ul, li {
	list-style-image:none;
	list-style-position:outside;
	list-style-type:none;
}

/* paddingやborderも widthに含める形式に統一
------------------------------------------------------------------------------------------------------------------*/
* { box-sizing:border-box; outline:none; }

/*==================================================================================================================
クリア
==================================================================================================================*/
.clear {
	clear:both;
	size:0;
}
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	clear: both;
	height: 0;
	content:"";
	zoom:1;
}

/*==================================================================================================================
フォントに関する基本スタイル
==================================================================================================================*/
/*基本文字サイズ&文字色
------------------------------------------------------------------------------------------------------------------*/
body {
	font-size:62.5%;/*10px相当にリセット*/
	font-family: "Noto Sans Japanese","Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
	line-height:1.9;
	color:#232323;
}

/*段落*/
p {
	margin:0px 0px 15px 0px;/*下部に余白*/
	font-size: 16px;
}

/*文字サイズ*/
ul, dl{font-size: 16px;}

@media (max-width:499px) {
	body{line-height: 1.7;}
	p, ul, dl{font-size: 15px;}
}


/*基本リンク
------------------------------------------------------------------------------------------------------------------*/
/*リンク文字色*/
a{text-decoration: none;color:#0099cc;}

/*マーカー＆強調文字色
------------------------------------------------------------------------------------------------------------------*/
/*ラインマーカー*/
.c_mrk {
	background-color:#e5d89b;/*Marker*/
	padding:0 3px;
}
/*強調文字色*/
.c_ptv {color:#d64a5a;}/*positive*/
.c_pit {color:#900000;}/*point up*/
.c_ngt {color:#5488a2;}/*negative)*/
.c_off {color:#cac5ba;}/*off*/

.att{color:#cc6666;}

.txt_bold{
	font-weight: bold;
	font-size: 17px;
}

/*右寄せ*/
.txt_right, .txt_right p {
	text-align:right;
}
/*中央寄せ*/
.txt_center, .txt_center p {
	text-align:center;
}
/*明朝*/
.f_mn {
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}

@media (max-width: 499px) {
	.txt_bold{font-size: 15px;}
}


/*==================================================================================================================
テーブルに関する設定
==================================================================================================================*/
table {
	border-collapse: collapse;
	border-spacing:0;
}
/*テーブルタイトル*/
caption {
	text-align:left;
	font-weight:bold;
	color:#993300;
}
/*枠線*/
th,td{
	border: #ccc 1px solid;
	padding:8px 15px;
  font-size: 1rem;
}
thead th,tfoot th {
	vertical-align:top;
	background-color:#EFEFEF;
	color:#FFFFFF;
}
thead td,tfoot td {
	vertical-align:top;
	background-color:#999;
	color:#FFFFFF;
}
tbody th {
	vertical-align:top;
	background-color:#F5F5F5;;
}
tbody td {
	vertical-align:top;
	background-color:#fdfcfb;
}

/*その他
-------------------------------------------------------------------------------------------------------------------*/
hr{clear:both;border:0px solid #fff;padding:15px 0;width:0;}
img         {border:0 none;vertical-align:top;max-width:100%;width:auto;height:auto;}

@media (max-width: 599px) {
	.noTab, .noTab caption, .noTab thead, .noTab tfoot, .noTab tbody, .noTab tr, .noTab th, .noTab td { display:block; width:100%; }
	.noTab tr { margin-top:10px; }
}

/*横並びの配置（flexbox）*/
.flex{ display: flex; flex-wrap:wrap; }
.f_between{ justify-content: space-between; }
.f_around{ justify-content: space-around; }
.f_center{ justify-content: center; }
.img_right{float: right;}
.img_left{float: left;}
.img_center{text-align: center; margin-bottom: 30px;}


/*==================================================================================================================
レイアウト設定
==================================================================================================================*/

/*共通
-------------------------------------------------------------------------------------------------------------------*/

body{}
#container  { width: 100%; position: relative; }
.inner{ width:100%; max-width: 1000px; margin:0 auto; }
.inner:after{ content: ""; display: block; clear: both; }
#wrappar{ padding-top:100px; padding-bottom:90px; }
#wrappar .inner{}
@media (max-width:1100px) {
  .inner{padding: 0 1%;}
}

/*ヘッダー*/
#header{ position:fixed; left:0;right:0;top:0; z-index:99;
  height:100px; background: #fff; border-bottom:1px #eee solid; overflow:hidden; }
#header .inner{padding:0;position: relative;height:100%;}
#hdr_logo{ height:100%; width: calc( 100% - 320px ); padding-left: 2vw;}
#hdr_logo a { display: flex; height: 100%; align-items: center;}
#hdr_logo img{ max-height:100%; width: 360px; max-width: 100%; }
#hdr_btn{position: absolute;right:10px;top:50%; transform:translateY(-50%);
  text-align:right; line-height:1.3; font-size: 18px; }
#hdr_btn a { display:inline-block; border-radius: 5px; color:#fff;
  width: 6.5em; padding:3px; text-align:center; }
#hdr_btn .hLnk { margin-bottom:10px; }
#hdr_btn .hLnk a { font-size:90%; vertical-align:middle; }
#hdr_btn .hLnk a.thUser { color:#09c; margin-right:5px; width:auto; max-width:50vw;
  overflow:hidden; max-height:2.6em; text-align:right; padding-bottom:0; }
#hdr_btn .hLnk a.thLgin { width: 10em; background:#413d3d; }
#hdr_btn .hLnk a.thLout { width:auto; background:#09c; }
#hdr_btn .thProd{background:#a64e4c; margin-right: clamp( .2em, 2vw, 1em ); }
#hdr_btn .thCart{background: #413d3d;}
@media (max-width:499px) {
  #header{ height:60px; }
  #hdr_logo { width: calc(100% - 230px);}
  #hdr_btn { font-size:14px; }
  #hdr_btn .hLnk { margin-bottom:5px; }
}
.jTarget:target { height: 100px; margin: -100px 0 0; content:""; display:block; }

/*フッター*/
#footer{ background: #fff; border-top:1px #eee solid; }
#footer > .inner{ padding: 50px 0 30px; }
#ftr_logo { width:350px; max-width: 80%; margin:0 auto; }
#ftr_logo, #ftr_logo p{ text-align:center; }
#ftr_logo p{ margin-top: 20px; }
.ftr_nav{ margin-top: 40px; }
.ftr_nav li{ display: inline-block; font-size:13px; margin:10px 4%; }
.ftr_nav a{ color: #232323; }
#ftr_end{ background: #413d3d; }
#ftr_end .inner{ padding-top:5px; }
.ftr_right_nav{ float: right; }
.ftr_right_nav li{ display: inline-block; font-size:12px; vertical-align: top; }
.ftr_right_nav a, #copyright{ color: #fff; }
.ftr_right_nav li:last-of-type{ margin-left:20px; }
#copyright{ float: left; font-size:12px; }
@media (max-width:599px) {
  #copyright, .ftr_right_nav{float: none;text-align: center;}
  .ftr_right_nav{margin-top:0;margin: 0 4% 5px;}
  .ftr_nav{margin-top: 0;}
  .ftr_nav li{margin: 0 4% 5px;}
  #footer > .inner{padding:20px 0;}
}

/*基本のボタン*/
.btn{
	background: #413d3d;
	width:100%;
	max-width:310px;
    height: 40px;
    line-height: 40px;
}
.btn a{
	color:#fff;
	display:block;
    text-align: center;
    font-size: 17px;
}




/*トップページ
-------------------------------------------------------------------------------------------------------------------*/

#visual{ width:100%; text-align:center; }
#visual > li img{ width:100%; display:inline-block; max-width:800px; }
#visual .wslick > li{display:none;}
#visual .wslick > li:first-of-type{display:block;}
#visual ul li{ text-align:center; }

.lform { margin:0 auto; max-width:500px; }
.lform div { text-align:center; }
.lform .mess { font-size:.85rem; margin-bottom:20px; }
.lform .inw { margin:0 auto 15px; max-width:300px; }
.lform .inw span{ display:block; font-size:.9rem; margin-bottom:2px; background:#eee; }
.lform input { font-size:16px; padding:5px 3px; line-height:1.5; border:1px solid #ccc; border-radius:5px; width:100%; }
.lform .sub { border:1px solid #666; box-shadow:none; cursor:pointer; width:80%; }

.box_ttl{
	font-family: 'Lato', sans-serif;
	margin:50px auto 30px;
    text-align: center;
    font-size: 3em;
    color: #413d3d;
	position: relative;
	letter-spacing: 3px;
	padding-bottom:5px;
}
.box_ttl::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width:100px;
    height: 3px;
    margin: 0 auto;
    text-align: center;
    background: #a64e4c;
}

#concept h1, #concept p{
    text-align: center;
}
#concept h1{
	font-size: 3.3em;
    font-weight: bold;
    margin-bottom: 10px;
}
#concept .txt_bold{
    font-size: 2em;
}
#concept p{
    font-size: 1.8em;
}
#concept p span{
	display:inline-block;
}

#topInfo p { border:1px solid #999; padding:1em; margin:0 auto 15px; display:table; min-width:300px; line-height:1.5; }

#topProduct .box_ttl{
	margin-bottom:50px;
}
#topProduct ul li{
	width:310px;
}
#topProduct .box_attention { display:table; padding:10px 5px; margin:20px auto; border:3px double #aaa; }
#topProduct .box_attention p{ margin:0; line-height:1.5; font-size:14px; color:#666; }
#topProduct ul li{
	margin-bottom:35px;
}
#topProduct ul li h2{
	font-size: 1.2em;
    font-weight: bold;
    margin: 2px 0 10px;
    letter-spacing: -0.5px;
    line-height: 1.5;
}
#topProduct ul li p{
	margin-bottom:0;
	line-height: 1.4;
}
#topProduct .item_img{
    margin-bottom:10px;
}
#topProduct .btn .notSale{
	color:#FFEFEF;
	letter-spacing: 5px;
}


@media (max-width:699px) {
	#concept h1{font-size: 2.5em;}
}
@media (max-width:599px) {
	#concept h1{font-size: 2em;}
	#concept .txt_bold{font-size: 1.6em;}
	#concept p{font-size: 1.5em;}
	.box_ttl{font-size: 2em;}
	#topProduct .box_ttl, #instagram .box_ttl, #column .box_ttl{margin: 20px auto;}
}
@media (max-width:399px) {
	#concept h1{font-size: 1.8em;}
}
@media (max-width:320px) {
	#concept h1{letter-spacing: -1px;}
}


/*サブページ
-------------------------------------------------------------------------------------------------------------------*/

/*共通*/
.main{
	padding: 50px 0 80px;
	margin: 0 auto;
}

.sub_box{padding:10px 0 50px;}


.ah1, .sh1{
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-weight: bold;
	text-align: center;
	clear: both;
}
.ah1{
}
.sh1{
}
.sh2{
	font-size: 2.7em;
	position: relative;
    margin-bottom: 50px;
}
.sh2:after{
	content:"";
	position: absolute;
	left: 0;
	bottom:8px;
	width: 100%;
	height: 5px;
	background-image: repeating-linear-gradient(-45deg, #fff, #fff 5px, #ddd 0, #ddd 6px);
	z-index: -1;
}
.sh2, .sh3, .sh4{
    text-align: center;
}
.sh3{
    margin-bottom: 30px;
}
.sh3{
	font-size: 2em;
	font-weight: bold;
}
.sh3 span{
	font-weight: bold;
	display:inline-block;
}
.sh4{
	font-size: 1.7em;
	font-weight: bold;
    margin-top: 20px;
    color:#874746;
}
.main .box_ttl{
	margin: 0 auto 50px;
	font-family: "Noto Sans Japanese","Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
	font-weight: bold;
	padding-top: 40px;
}


.mt{margin-top: 50px;}


@media (max-width:799px) {
	#main{padding: 30px 2%;}
}
@media (max-width:599px) {
	.ah1{font-size: 20px; height: 60px; line-height: 60px;}
	.mt{margin-top: 30px;}
	.sh1{font-size: 18px;margin-bottom: 20px;}
	.sh2{font-size: 2.3em; margin-bottom: 30px;}
	.sh3{font-size: 1.7em;}
	.sh4{font-size: 1.5em;}
	.main .box_ttl{padding-top: 20px;margin-bottom: 20px;}
	.sub_box{padding-bottom: 20px;}
}



/*会社概要*/
#shop_info ul, dl.profile{
	width: 100%;
	max-width: 800px;
    margin: 0 auto;
}
#shop_info ul li{
    border: 1px #ccc solid;
    padding: 25px;
    background: #F5F5F5;
    margin-bottom: 20px;
}
#shop_info ul li dl dt{
	font-size: 120%;
    border-left: 5px solid #a64e4c;
    padding-left: 10px;
    line-height: 1;
    margin-bottom: 10px;
}
dl.profile{
    margin-top: 30px;
}
dl.profile dt, dl.profile dd{
	display:inline-block;
    margin-bottom: 25px;
}
dl.profile dt{
	width:80px;
	text-align:center;
    background: #565656;
    color:#fff;
	vertical-align: top;
}
dl.profile dd{
	width:calc(100% - 80px - 5px);
	text-align:left;
	padding-left:15px;
    border-bottom:1px dotted #ccc;
    padding-bottom:10px;
}

@media (max-width:599px) {
	dl.profile dt, dl.profile dd{margin-bottom: 15px;}
	.txt_center, .txt_center p{text-align: left;}
}

/*商品紹介*/

.sub_box ul.product_list li{
	width:310px;
}
.sub_box ul.product_list li{
	margin-bottom:35px;
}
.sub_box ul.product_list li h2{
	font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 8px;
}
.sub_box ul.product_list li p{
	margin-bottom:0;
	line-height: 1.4;
}
.sub_box ul.product_list .item_img{
    margin-bottom:10px;
}



/*個人情報*/

dl#privacy dt{
    font-weight: bold;
}
dl#privacy dd{
    padding-left:1em;
    margin-bottom:15px;
}

.item_wrap {/*border-bottom:1px dotted #aaa;*/ padding-bottom:10px; margin-bottom:10px; }
.item_wrap::after { content:""; display:block; clear:both; }
#productDetail .box_left{width:235px;float:left;}
#productDetail .box_left img{width:auto;max-width:235px;height:auto;max-height:235px;object-fit:contain;}
#productDetail .box_right{width:100%; max-width:calc(100% - 300px); float:right;}
#productDetail .box_right h3{font-size:1.6rem;line-height:1.3;padding:5px 0;}
#productDetail .box_right .item_price{background-color:#efefef;margin-bottom:10px;padding:0 10px; font-size:1rem;}
#productDetail .box_right h4{font-size:1.4rem;color:#7e693e;font-weight: bold;line-height:1.3;padding:5px 0;}

#productDetail .item_info h3{margin-top:10px;}
#productDetail .item_info .item_zcountStr{padding-left:2em;color:#a00;}
#productDetail .item_info .item_zcountStr span{padding-left:5px;color:#333;}
#productDetail .item_img p{margin:0;text-align: center;}

#productDetail dl {border:1px solid #7e693e;margin:20px 0;}
#productDetail dl dt {background: #ede7de;padding:5px 15px;}
#productDetail dl dd {padding:15px;}

#productDetail .itemCnt{font-size:1rem; margin:30px 10px;}
#productDetail .ttl{display:inline-block; min-width:10em;}
#productDetail .inBTN{background-color:#000;padding:2px 5px;color:#FFF;line-height:1;cursor:pointer;border-radius:10px;margin:0 5px; user-select:none; }
#productDetail input[type="text"] {width:50px;border:1px solid #CCC;margin:0 5px;font-size:1.2rem;text-align:center;}
#productDetail .btn {display:inline-block;vertical-align:middle;margin:10px; width:auto; max-width:none; padding:0 20px; }
#productDetail .btn:hover {background:#555;}
#productDetail .btn > * {color:#fff; font-size:17px; line-height:40px; padding:0; font-weight:normal; cursor:pointer; }
#productDetail input[type="submit"] { background-color:transparent; border:none; text-align: center; width:100%; }

@media only screen and (max-width:799px) {
	#productDetail .box_left{width:auto;float:none;text-align:center;}
	#productDetail .box_right{width:100%; max-width:none; float:none;}
}
@media only screen and (max-width:399px) {
	#productDetail .box_right h3{font-size:1.4rem;}
	#productDetail .box_right h4{font-size:1.2rem;}
}

.sformID_zbyr, .sformID_ziar { display:inline-block; }
.payDetail dt { display:inline-block; width:6.5em; }
.payDetail dd { display:inline-block; }

.product_list { display: flex; flex-flow: row wrap; justify-content: center; align-items: flex-start; margin:30px 0; }
.product_list li { width:32%; margin:10px .5%; padding:10px; background:#f8f8f8; text-align:center; }
.product_list a, .product_list a:link { text-decoration:none; color:inherit; }
.product_list .product_img { text-align:center; margin:0 auto; }
.product_list .product_img img{width:100%;height:200px;object-fit: contain;}
.cartCntSet span.inBTN { background: #000; padding: 2px 5px; color: #FFF; border-radius:3px; cursor:pointer; user-select:none; }
.cartCntSet .iVal { width: 50px; margin:0 10px; text-align:center; }

@media only screen and (max-width:699px) {
  .product_list li { width:49%; }
}
@media only screen and (max-width:399px) {
  .product_list li { width:98%; }
}

.product_lead { margin-bottom: 30px; width:100%; }
.product_lead h2 { display:table; font-size:120%; background:#7195bc; color:#fff; line-height:1.3; padding:5px; }
.product_box { margin:0 auto; display: flex; justify-content: space-between; }

.product_box .product_img{width: 48%;max-width: 480px;}
.product_box .product_text{width: 48%;}
.product_text ul{display: flex;justify-content: space-between;}
.product_text li{width: 48%;}
.product_text dt{font-weight: bold;}
.product_price {color: #981200;}
.product_btn a{
  display: block;
  color: #fff;
  background: #000;
  border: 1px solid #000;
  padding: 2px 10px;
  width: 100%;
  max-width: 250px;
  margin: auto;
  text-align: center;
  text-decoration: none;
  font-size:16px;
  line-height:2;
}
.toCart a{margin-bottom: 20px;background: #980000;}
.product_btn a:hover {color: #000;background: #fff;transition: 0.6s;}

@media only screen and (max-width:599px) {
  .product_box{ display: block; }
  .product_img{margin-bottom: 30px;margin:0 auto;}
  .product_box .product_img, .product_box .product_text{ width: 100%; }
  .product_text {text-align:center;}
  .product_text ul {display: block;}
  .product_text li { width: 100%; border-bottom: 1px solid #ccc; }
  .product_btn a {max-width: 80%;}
}

.cart_list {width:100%;}
.cart_list td{vertical-align: middle;}
.cartImg{width:25%;}
.cartImg img{width:100%;height:120px;object-fit: contain;}
.dlbtn {
    display: inline-block;
    background: #787878;
    color: #fff;
    text-align: center;
    margin-top: 10px;
    border-radius: 5px;
    padding:3px;
    font-size: 13px;
}
.dlbtn, .dlbtn:link, .dlbtn:visited { text-decoration:none; }

.guidePage h2, .guidePage h3, .guidePage h4 { margin-top:10px; }
.guidePage h2,.guidePage h3{font-weight: bold;margin-bottom: 15px;padding-bottom: 5px;border-bottom: 1px solid #999;font-size: 120%;}
.guidePage h4{font-weight: bold;}
.guidePage .cap{display: block;margin-top: 10px;font-size: 90%;}
.guidePage table{width: 100%;}
.guidePage thead th,.guidePage tr th,.guidePage tr td{border: 1px solid #ccc;padding: 10px;}
.guide thead{background: #e4dcc3;}
.tokusyoPage table th, .cart_list th {background-color: rgba(0,0,0,0.2);width: 20%;}
.tokusyoPage table td, .cart_list td{background-color: #fff;}
.tokusyoPage table th, .tokusyoPage table td, .cart_list td, .cart_list th{border: 1px solid #333;}

img[src$="pinfo_name.png"] { width:160px; display:inline-block; vertical-align:middle; }
img[src$="pinfo_tel.png"] { width:120px; display:inline-block; vertical-align:middle; margin-left:3px; }

@media (max-width: 499px){
	.tokusyoPage table th,.tokusyoPage table td, .cart_list tr, .cart_list th, .cart_list td{display: block;width: 100%;}
	.cart_list .payDetail { display:table; margin:0 auto; text-align:left; }
	.cartImg{width:100%;display: block;}
	.cart_list th, .cart_list td{border: none;text-align:center;}
	.cart_list tr{ border-top:1px solid #666; }
}

.lnavi { text-align:right; margin-right:10px; margin-bottom:30px; }
.lnavi a{ font-size:120%; }
