html,body {
    background-color: #DDDDD5;
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
    overflow-x: hidden;
}
body {
	padding-top:60px;
}


/*-----------------------
 lightbox
-------------------------*/
.lightbox_s {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
	opacity: 0;
	    animation: fadeIn 0.5s ease 0s 1 forwards;
    -webkit-animation: fadeIn 0.5s ease 0s 1 forwards;
}



.lightbox_s img {
    max-width: 90%;
    max-height: 90%;
    /* opacity: 0; */ /* 削除 */
    /* transition: opacity 0.5s ease; */ /* 削除 */
}

.close_s {
    position: absolute;
    top: 20px;
    right: 30px;
    color: white;
    font-size: 30px;
    cursor: pointer;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}




.pagination{
	display: flex;
  justify-content: center;
  align-items: center;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	clear: both;
	margin:1em 0;
}
.pagination span,
.pagination a{
display: flex;
  justify-content: center;
  align-items: center;
	margin:0 0.25em 0.5em 0.25em;
	padding: 0.25em 0.75em;
	font-size:14px;
	color: #333;
}
.pagination span{
background-color: #F3F3F3;
}
.pagination a:hover{
background-color: #F3F3F3;
}


@media only screen and (min-width: 768px) {
    .ec-productRole .ec-productRole__title .ec-headingTitle {
        font-size:20px;
    }
}
.modal{
	background-color: rgba(0,0,0,0.5);
}
/*---------------------------------------------*
* .ec-shelfGrid
*----------------------------------------------*/
.ec-shelfGrid .ec-shelfGrid__item {
        width:24%;
		min-width:24%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	line-height: 1.5;
	}
	.ec-shelfGrid .ec-shelfGrid__item a p{
		font-size: 13px;
    }
.ec-shelfGrid .ec-shelfGrid__item .price02-default,
.ec-shelfGrid .ec-shelfGrid__item a p.ec-shelfGrid__item-image + p {
	font-size: 14px;
    font-weight: bold;
}
.ec-shelfGrid .ec-shelfGrid__item a p.ec-shelfGrid__item-image + p {
margin:0 0 0.5em 0;
}
.ec-shelfGrid .ec-shelfGrid__item .price02-default{
	margin: 1em 0 0 0;
}
.ec-shelfGrid .ec-shelfGrid__item span,
.ec-shelfGrid .ec-shelfGrid__item .price02-default i{
	font-weight: normal;
	font-size: 11px;
	margin: 0 0.5em;
}

.ec-shelfGrid .ec-shelfGrid__item button{
	font-size: 14px;
    width: 100%;
    height:auto;
    line-height:2;
	}

	.ec-shelfGrid .ec-shelfGrid__item .ec-numberInput span{
		font-size: 12px;
	}
	.ec-shelfGrid .ec-shelfGrid__item .ec-numberInput input[type=number] {
padding:2px 0;
	line-height: 1;
	height: auto;
}

    .ec-cartNaviNull {
        min-width:300px;
        max-width:300px;
		padding: 10px;
    }
.ec-cartNaviNull .ec-cartNaviNull__message p{
    font-size: 14px;
	font-weight: normal;
}	
.ec-cartNaviIsset .ec-cartNaviIsset__cartContent,
.ec-cartNaviIsset .ec-cartNaviIsset__cartContentTitle {
font-size: 13px;
}

.ec-cartNaviIsset .ec-cartNaviIsset__cartImage {
    width: 35%;
}
.ec-cartNaviIsset .ec-cartNaviIsset__cartContent {
padding-left:1%;
	width: 64%;
}

    .ec-cartNaviIsset {
        min-width:320px;
        max-width:320px;
		padding: 7px;
    }
.ec-cartNaviIsset .ec-cartNaviIsset__cart {
    border-bottom: 1px solid #E8E8E8;
    margin-bottom:8px;
    padding-bottom:8px;
}
#page_product_detail .ec-cartNaviIsset__action a.ec-blockBtn--action{
	width:100%;
}


/*---------------------------------------------*
* ec-layoutRole__main
*----------------------------------------------*/

#page_product_detail main.ec-layoutRole__main{
display:-webkit-box;
display: -webkit-flex;
display:-ms-flexbox;
display: flex;
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
}
#page_product_detail main.ec-layoutRole__main > div:nth-of-type(1){
-webkit-box-ordinal-group:1;
-ms-flex-order:1;
-webkit-order:1;
order:1;
	margin-bottom:1em;
}

#page_product_detail main.ec-layoutRole__main .categories{
-webkit-box-ordinal-group:3;
-ms-flex-order:3;
-webkit-order:3;
order:3;
}
#page_product_detail main.ec-layoutRole__main > div:nth-of-type(3){
-webkit-box-ordinal-group:2;
-ms-flex-order:2;
-webkit-order:2;
order:2;
}
#page_product_detail .ec-grid2{
border-bottom:10px solid #EFEFEF;
}
#page_product_detail .ec-shelfGrid .ec-shelfGrid__item {
        width:19%;
		min-width:19%;
}
#page_product_detail .ec-blockBtn--action,
#page_product_detail .ec-blockBtn--cancel {
	padding:0.35em 0;
	line-height: 1;
	height: auto;
	width:50%;
	font-size:12px;
}
#page_product_detail .ec-numberInput span{
	font-size: 14px;
}
#page_product_detail .ec-numberInput input[type=number] {
    display: inline-block;
    width: auto;
	margin: 0;
	padding: 0 0.5em 0 0;
	line-height: 1;
	height:20px;
    max-width:80px;
    text-align: right;
}
#page_product_detail .ec-productRole .ec-productRole__btn {
        width: 60%;
        margin-bottom: 16px;
        min-width:350px;
    }

.ec-headerNaviRole a[class*="ec-blockBtn"]{
width: 100%;
	min-width: 224px;
	padding: 0;
	height:auto;
	line-height: 1.5;
}



/*---------------------------------------------*
* product_page .modal
*----------------------------------------------*/

.product_page .modal {
    display: none; /* モーダルを初期非表示 */
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.8); /* 背景を暗くする */
}

.product_page .modal-content {
    margin:3em auto 0 auto;
	display: flex;
  justify-content: center;
  align-items: center;
	width:auto;
	height:90%;
    max-width: 90%;
    max-height: 90%;
	position: relative;
	background-color: transparent!important;
}
.product_page .modal-content img{
	display: block;
	width:auto;
	height:90%;
	max-height:90%;
}
.product_page .modal-content .close {
    color: white;
    font-size:40px; /* フォントサイズを大きくする */
    font-weight: bold;
    cursor: pointer;
    z-index: 1001; /* モーダルより前面に表示 */
	margin-left:80vh;
}

.slick-current .slide-item img{
width: 505px;
height: 505px;	
/*	height: auto;
	width: 100%;*/
	z-index: 1001;
}

.product_page .slide-item{
	z-index: 800;
}

.product_page .slide-item img{
	cursor: pointer;
  transition: 1s;
  -webkit-transition: 1s;
}



	
.wrap {
    width: 1000px;
    margin: 0 auto;
}
.other_page .ec-layoutRole,
.front_page .ec-layoutRole{
	background-color: #DDDDD5;
}
.front_page .ec-layoutRole .ec-layoutRole__contents{
	max-width: inherit;
}
.ec-blockBtn--cancel, .ec-input textarea, .ec-birth textarea, .ec-select textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea,.ec-blockBtn--action,.ec-input select, .ec-birth select, .ec-select select, .ec-halfInput select, .ec-numberInput select, .ec-zipInput select, .ec-telInput select,.ec-input input, .ec-birth input, .ec-select input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input {
        font-size:16px;
}
a.ec-blockBtn--cancel:link, a.ec-blockBtn--cancel:visited {
color: #fff;
}

main{
	padding-bottom: 3em;
}

.login .ec-headerNaviRole label{
	width:24px;
	height: auto;
	margin-left: 5px;
	cursor: pointer;
}
#src{
	display: none;
}
.src_box{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 800;
	display:none;
  justify-content: center;
  align-items: center;
	background-color: rgba(0,0,0,0.5);
}
.src_box .inner{
padding:0.25em 1em 1em 1em;
	background-color: #DDDDD5;
	border-radius: 1em;
}
.src_box .inner label{
	font-size: 20px;
	font-weight: bold;
	cursor: pointer;
}
#src:checked ~ .src_box{
	display: flex;
}
.src_box .inner p{
margin: 0;
}


.ec-topicpath .ec-topicpath__item, .ec-topicpath .ec-topicpath__divider, .ec-topicpath .ec-topicpath__item--active,
.ec-topicpath{
    color:#666666;;
     font-size: 14px;
}
.ec-topicpath [class*="ec-topicpath"] a {
    color:#666666;;
     font-size: 14px;
    text-decoration: none;
}
.ec-topicpath [class*="ec-topicpath"] a:hover {
text-decoration: underline;
}

.ec-inlineBtn--cancel,
.ec-inlineBtn--action {
    font-size:16px;
}

.other_page .ec-layoutRole{
	padding:0;
}

.other_page section{
	 padding:3em 0;
    line-height: 1.5;
    transform:none;
    opacity:1;
}
.ec-layoutRole__contents{
	padding:0;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.front_page .ec-layoutRole__contents{
	padding: 0 0 3em 0;
}
    .ec-price .ec-price__tax {
        font-size:12px;
    }

.price02-default,
.ec-shelfGrid__item-image + p{
	font-weight: bold;
}
.ec-productRole__description{
padding-top: 1em;	
}
.ec-productRole__description .size{
font-size: 14px;
margin: 0;
}
.product_page .ec-layoutRole__contents{
	margin-top: 2em;
}

.ec-shelfGrid .ec-shelfGrid__item:nth-child(even),
.ec-shelfGrid .ec-shelfGrid__item {
     padding: 0 4px!important;
}

/*-----------------------
 category page
-------------------------*/
.category.wrap{
	display:flex;
	justify-content:space-between;
	align-items: center;
	max-width:800px;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	margin-bottom: 1em;
}
.category.wrap .pic{
max-width:180px;
margin-right:20px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.category.wrap .pic img{
width: 100%;
	height: auto;
}
.category.wrap .read{
	width:600px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	line-height: 1.8;
}
.category.wrap .read p{
	font-size: 14px;
}
.category.wrap .read strong{
font-size: 18px;
}

/*-----------------------
 page_homepage
-------------------------*/
ul.item{
		display:flex;
	justify-content:flex-start;
	align-items:stretch;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	margin: 2em 0 0 0;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
ul.item li{
display:flex;
	width: 230px;
	height: auto;
max-width:inherit;
background-color: #fff;
	margin:0 1% 2% 1%;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	box-shadow: 1px 1px 1px #666;
}

ul.item li a{
	color: #333;
	width: 230px;
	height:auto;
		display:flex;
	justify-content:flex-start;
	align-items: center;	
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
		font-size: 14px;
}
ul.item li  figure.pics img{
width:100%!important;
min-height:230px;
max-width: inherit!important;
height: auto!important;
max-height:230px!important;
object-fit:cover;
object-position:50% 50%;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
ul.item li figure.pics{
	width: 100%;
	min-height:230px;
	height:auto;
	max-height:230px;
	overflow: hidden;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
ul.item li .text{
	width: 100%;
	height:auto;
	padding:0.5em;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
		font-size: 13px;
}
ul.item li .text .time{
font-size: 1.2rem;	
}
ul.item li .text p{
margin: 0;
	text-indent: 0;
	overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
		font-size: 13px;
}
ul.item li .text p i{
font-size: 11px;
}
ul.item + .txtR{
	padding-top: 0.25em;
}
ul.item + .txtR a{
	font-size: 1.3rem;
	color: #333;
text-decoration: underline;	
}
ul.item + .txtR a:hover{
opacity: 0.7;
}
ul.item .btn a{
	width: auto;
background-color: #DE5D50;
	color: #fff;
	padding:1px 0.5em;
	font-size:11px;
}

#item .slis{
margin:2em 0 0 0;
}

.other_page .ec-layoutRole,
#page_shopping .ec-layoutRole{
	background-color: #fff;
	font-size: 15px;
}
.ec-inlineBtn {
    font-size:15px;
}
.product_page ul.item li,
.other_page ul.item li{
	background-color: #FEF5E8;
border: 1px solid #efefef;
	box-shadow: 1px 1px 2px #666;
}



.ec-searchnavRole .ec-searchnavRole__infos {
	padding: 3em 0;
}

.categories {
	padding: 3em 0;
    line-height: 1.5;
    transform:none;
    opacity:1;
}

.categories h2{
	font-weight: bold;
	padding: 0.5em 0;
border-bottom: 1px solid #ccc;
	color: #CCC;
}
.categories h2:before{
content: "Category";
	font-family: "Times New Roman", Times, "serif";
	color: #CCC;
	font-size:3rem;
	margin-right: 0.5em;
}
.categories ul li{
	margin-bottom: 1em;
}
.categories ul li a{
font-weight: bold;
}

    .ec-pageHeader h1, .ec-pageHeader .h1 {
        border-bottom: 1px solid #848484;
    }


.ec-productRole .ec-productRole__category a {
color: #337ab7;
	font-weight: bold;
	font-size: 13px;
}


/*-----------------------
 .single 
-------------------------*/
.single.wrap{
margin-top:0;
padding:0;
	line-height: 1.8;
}
.single .inner{
	margin: 3em 0;
}
.single strong{
font-weight: bold;
}

.single ul.cat{
	display:flex;
	justify-content:flex-start;
	align-items: center;
    list-style: none!important;
    padding-left: 0!important;
}
.single ul.cat a{
margin-right: 0.5em;
font-size: 1.2rem;
color: #fff;
background-color: #888;
padding:1px 0.5em;
}

.single h2.page-title {
    color: #848484;
    text-align: center;
    font-size:1.8rem;
    line-height: 1.5;
    font-weight: bold;
    padding:2em 0;
    position: relative;
    display: flex;
  justify-content: center;
  align-items: center;
}
.single h2.page-title:after{
content: "";
width: 55px;
height: 2px;
background-color: #848484;
position: absolute;
bottom:1em;
left:50%;
transform: translateX(-50%); 
}

.wp-block-gallery,
.is-layout-flex {
    display: flex;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.wp-block-gallery img{
padding:3px;	
}


.single h1.page-title {
  font-size:2.4rem;
  display: flex;
  font-weight: bold;
  justify-content:center;
  align-items: center;
  margin:3em auto;
  color: #333333;
	width: 100%;
}

.single h2:not(.page-title) {
  font-size:2rem;
  display: flex;
  font-weight: bold;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 1em;
  color: #848484;
  border-bottom: 1px solid #848484;
}

.single h3{
font-weight: bold;
padding: 0.25em 0 0.25em 1.5em;
margin-bottom: 1em;
border-left: 5px solid #848484;
background-color: #F2F2F2;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
font-size: 1.6rem;
}

.single h4{
font-size: 1.8rem;
font-weight: bold;
margin: 2em 0 0.5em 0;
}

.single h5 {
    margin:1em 0;
    font-size: 18px;
    font-weight: bold;
}
.single h5:before {
    content: "■";
    color: #848484;
    margin-right: 10px;
}
.single h6{
	font-size:16px;
    font-weight: bold;
    color: #333;
    background-color: #EFEFEF;
    padding: 0.25em 0.5em;
    margin:1em 0;
}
.single blockquote,
.single pre{
margin:1em;
padding:1em;
background-color: #f2f2f2;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
position: relative;
}
.single blockquote:before{
content: "❝";
font-size:20px;
font-weight: bold;
color: #999;
position: absolute;
top:-15px;
left: 0;
}
.single blockquote:after{
content: "”";
font-size:20px;
font-weight: bold;
color: #999;
position: absolute;
bottom:-20px;
right:0;
}


.single em,
.single i{
font-size:12px;
}
.single ol,
.single ul:not(.post-link-list){
list-style: inherit;
padding-left: 1.5em;
}
.single ol{
list-style:decimal;
}

.single section a:link,.single section a:visited {
  text-decoration:underline;
  color:#6278A7;
}
.single section a:hover,.single section a:active,.single section a:focus {
  text-decoration:underline;
  color:#333;  
}


.single table{
border-collapse:collapse;
border-spacing:0;
empty-cells:show;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.single table th{
border: #ccc solid 1px;
background-color: #f2f2f2;
padding: 0.25em;
}
.single table td{
border: #ccc solid 1px;
padding: 0.25em;
}


.single img{
max-width: 320px;
margin: 2px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
/* 画像配置 左 */
.single img.alignleft {
        text-align: left;
}

/* 画像配置 中央 */
.single img.aligncenter {
        display: block;
        margin: 1px auto;
}

/* 画像配置 右 */
.single img.alignright {
        display: block;
        margin: 1px 1px 1px auto;
}
.single.archive .blog-list a:hover{
text-decoration: none;
}
.single .wrap:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
.single .wp-caption .wp-caption-text{
font-size: 1.3rem;
}

.post-pager:before{
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.aligncenter {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
.alignright {
  float: right;
  margin-bottom: 20px;
  margin-left: 20px;
}
.alignleft {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px;
}
.wp-caption,
[class*='wp-image'] {
  display: block;
  max-width: 100% !important;
  margin-top: 1.5em;
  text-align: center;
}
.wp-caption-text {
  margin-top: 0;
}
p.txtR{
    text-indent:0;
    margin-bottom: 1em;
}

.single time{
	display: inline-block;
	background-color: #F3F3F3;
	color: #666;
	font-size: 12px;
	float: right;
	padding: 1px 0.5em; 
}

.entry-content p{
	text-indent: inherit;
	margin-bottom: 1.5em;
}

/*-----------------------
.post-pager
-------------------------*/
.post-pager .post-link-list {
	margin-top: 2vw;
    padding:2vw 0;
    display: flex;
    align-items: center;
    justify-content:space-around;
	border-top:1px solid #999;
}
.post-pager .post-link-list a{
color: #848484;
font-size: 1.5rem;
	padding: 1px 0.5em;
}
.post-pager .post-link-list a:hover{
background-color: #F3F3F3;
}


/*-----------------------
 header
-------------------------*/
header {
    width: 100%;
    background-color: #DDDDD5;
    z-index: 900;
    position: fixed;
    top: 0;
    left: 0;
}

header .logo {
    font-family: "Times New Roman", Times, "serif";
    font-size:1.3rem;
    line-height: 1;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

header .logo span {
    text-align: center;
}
header .logo .pics{
		display:flex;
	justify-content:flex-start;
	align-items:flex-start;	
}

header .logo img.logo{
    height:45px;
    width: auto;
    margin: 0 20px 0 30px;
}
header .logo img.ltxt {
    height:50px;
    width: auto;
}

header .logo:hover {
    opacity: 0.7;
}

header .wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding:5px 0;
}

header .wrap .sns {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
header .wrap .sns img{
width: 30px;
	height: 30px;
	margin: 0 3px;
}

header .wrap .mid {
    width:auto;
    font-family: "Times New Roman", Times, "serif";
    margin: 0 1em;
}

header .wrap .mid .login {
    display: flex;
    justify-content: flex-start;
    align-items: center;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	margin-bottom: 5px;
}

header .wrap .mid .login a {
    margin-right: 1.5em;
}

header .wrap .mid .login a:hover {
    text-decoration: underline;
    color: #D09FC3;
}

header .wrap .mid nav {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

header .wrap .mid nav a {
    padding: 5px 0.5em;
	margin: 0 0.25em;
    background-color: #FEF5E8;
}

header .wrap .mid nav a:hover {
    background-color: #D09FC3;
    color: #333;
}


.ec-headerNaviRole {
    margin: 0 auto;
    padding-left:0px;
    padding-right:0px;
	padding-bottom: 0px;
    width: 100%;
    max-width:inherit;
    padding-top:0px;
}
.ec-headerNaviRole .ec-headerNaviRole__left {
    width:100%;
}
.ec-headerNav .ec-headerNav__item {
    font-size:14px;
}
header .wrap .mid .login a {
 margin-right:0em;
	font-size: 14px;
}
.ec-headerNav .ec-headerNav__itemIcon {
        font-size:14px;
}
.ec-cartNavi {
        display: flex;
        justify-content: space-between;
        border-radius: 99999px;
        box-sizing: border-box;
        padding:5px 10px;
        width: auto;
        min-width: 140px;
        height:auto;
        white-space: nowrap;
        cursor: pointer;
        background: #F8F8F8;
	margin:0 5px; 
    }

footer a,
header a{
	color: #333333;
}

/*-----------------------
 mv
-------------------------*/
.mv {
    background-color: #060606;
    max-height: 90vh;
    overflow: hidden;
    width: 100%;
    text-align: center;
}

.mv img {
    max-width: 100%;
    width: auto;
    max-height: 90vh;
    box-sizing: border-box;
    object-fit: cover;
    object-position: 50% 50%;
    margin: 0 auto;
}

/*-----------------------
 section
-------------------------*/
section {
    padding: 3em 0;
    line-height: 1.5;
    transform: translateY(7%);
    opacity: 0.5;
}

section.fadein.scrollin {
    animation-name: upin;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-out;
    animation-iteration-count: 1;
}

section.kote {
    transform: translateY(0);
    opacity: 1;
}

section h2 {
    line-height: 1.1; /* 行の高さを少し増やす */
    margin-bottom:1.5em;
}

section h2 span {
    display: inline-block;
    padding: 0 0 0px 3em; /* 下部のパディングを増やす */
    min-width: 50%;
    background: linear-gradient(0deg,#FEF5E8 0%, #FEF5E8 30%, #DDDDD5 30%, #DDDDD5 100%);
    box-sizing: border-box;
    box-shadow: 0px 2px 0 #ccc;
}

section h2.fadein strong,
section h2.fadein span {
    transform: translateX(-50%);
    opacity: 0.5;
}

section h2.fadein.scrollin span {
    animation-name: leftin;
    animation-duration: 2s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-out;
    animation-iteration-count: 1;
}

section h2 strong {
    font-family: "Times New Roman", Times, "serif";
    font-size:36px;
    display: inline-block;
    background: linear-gradient(0deg,#848484 0%, #848484 30%, #333333 30%, #333333 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    padding-bottom: 0; /* paddingを0に変更 */
    line-height: 1.1; /* 行の高さを少し増やす */
}

section h2.fadein.scrollin strong {
    animation-name: leftin;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-out;
    animation-iteration-count: 1;
}

@keyframes leftin {
    0% {
        transform: translateX(-50%);
        opacity: 0.5;
    }
    100% {
        transform: translateX(0%);
        opacity: 1;
    }
}

@keyframes upin {
    0% {
        transform: translateY(7%);
        opacity: 0.5;
    }
    100% {
        transform: translateY(0%);
        opacity: 1;
    }
}



section p {
    text-indent: 1em;
    margin-bottom: 1em;
}

section figure {
    display: inline-block;
}

section figure.mini img {
    max-height: 200px;
}

section figure.right {
    float: right;
    margin: 0 0 1em 1em;
}

section figure.left {
    float: left;
    margin: 0 1em 1em 0;
}

section figure.center {
    width: 100%;
    display: block;
    margin: 1em 0;
    text-align: center;
}

section figure img {
    width: auto;
    height: auto;
    max-width: 100%;
}

p.clear.line {
    width: 100%;
    margin-bottom: 2em;
    border-bottom: dashed 1px #666;
}

/*-----------------------
 shop
-------------------------*/
#shop .maps {
    clear: both;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    padding-top: 1em;
}

#shop .maps .add {
    border: 1px solid #666;
    padding: 1.5em 2em;
    box-sizing: border-box;
    line-height: 2;
}

#shop .maps .add,
#shop .maps iframe {
    width: 48%;
}

/*-----------------------
 item
-------------------------*/
.slis {
    margin-top: 5em;
}

.slis li {
    width: 20%;
}

.slis li img {
    width: 100%;
    height: auto;
}

/*-----------------------
 contact
-------------------------*/
#contact table {
    width: 600px;
    margin: 2em auto;
    box-sizing: border-box;
}

#contact td,
#contact th {
    padding: 0.5em;
}

#contact table th {
    max-width: 20%;
}

#contact table td {
    min-width: 400px;
    position: relative;
}

#contact input[type="text"],
#contact input[type="email"],
#contact input[type="tel"] {
    font-size: 16px;
    width: 100%;
    padding: 0.5em;
    border: 1px solid #666;
    background-color: #fff;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

#contact textarea {
    font-size: 16px;
    width: 100%;
    min-width: 100%;
    height: auto;
    min-height: 10em;
    padding: 0.5em;
    border: 1px solid #666;
    background-color: #fff;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

#contact table i {
    font-size: 10px;
    color: #FD0004;
    margin: 0 0.5em;
}

#contact table i.ni {
    color: #666;
}

#contact p {
    text-align: center;
}

#contact button {
    font-size: 18px;
    padding: 0.125em 2em;
    border: 1px solid #333333;
    background-color: #FEF5E8;
    font-weight: bold;
    border-radius: 1em;
    color: #333;
    cursor: pointer;
}

#contact button:hover {
    background-color: #333;
    color: #FEF5E8;
}

#contact .policy a {
    font-size: 10px;
    text-decoration: underline;
}

/*-----------------------
 policy
-------------------------*/
.policy h2 {
    font-size: 2rem;
    font-weight: bold;
    color: #666;
    padding-bottom: 1em;
    margin-bottom: 1em;
    border-bottom: 1px solid #666;
}

.policy h3 {
    font-size: 1.6rem;
    font-weight: bold;
}

.policy .policy_item {
    padding-bottom: 1em;
    margin-bottom: 1em;
}

section.policy p:not(.indm) {
    text-indent:0;
    margin-bottom: 1em;
}
strong{
	font-weight: bold;
}
.policy table{
border-collapse:collapse;
border-spacing:0;
empty-cells:show;
}
.policy table td,
.policy table th{
padding:0.5em;
border: 1px solid #666;
}
.policy table th{
min-width: 17em;	
}

/*-----------------------
 page-top
-------------------------*/
#page-top {
    width: 40px;
    height: 40px;
    display: block;
    position: fixed;
    right: 5%;
    bottom: 5%;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 998;
}

#page-top img {
    width: 40px;
    height: 40px;
}

#page-top:hover {
    opacity: 0.8;
}

/*-----------------------
 footer
-------------------------*/
footer {
    width: 100%;
    background-color: #666666;
    padding: 2em 0;
}

footer nav {
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    padding:0.5em 0;
    width: 100%;
	background-color: #FEF5E8;
}
footer nav label,
footer nav a {
    margin: 0 1.5em;
	cursor: pointer;
	font-size: 12px;
}

footer nav a:hover {
    text-decoration: underline;
    color: #D09FC3;
}

footer .copy {
    padding: 2em 0;
    text-align: center;
    font-size: 1.1rem;color: #ffffff
}

/*-----------------------
 come
-------------------------*/
#com{display: none;}

.comebox{
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 9999;
	background-color: rgba(0,0,0,0.3);
	display:none;
  justify-content: center;
  align-items: center;
top: 0;
	left: 0;
}
.comebox .inner{
	background-color: #fff;
	padding:1em;
	display: inline-block;
	max-width:800px;
}
.comebox .inner label{
	text-align: right;
	font-weight: bold;
	cursor: pointer;
font-size:2rem;		
}
.comebox .inner table{
	display:table;
/*table-layout: fixed;*/
border-collapse: separate;
border-spacing:0;  /* 左右 上下 */
	line-height: 1.5;
	max-width: 100%;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.comebox .inner table td,
.comebox .inner table th{
	padding: 0.5em;
}
.comebox .inner .indb{
	display: flex;
  justify-content:space-between;
  align-items: center;
	margin: 0;
}
.comebox .inner table th{
max-width: 10em;	
}

#com:checked  ~ .comebox{
	display: flex;
}

/*-----------------------
 Responsive Styles
-------------------------*/
@media (max-width: 1200px) {


    #shop .maps .add,
    #shop .maps iframe {
        width: 100%;
    }

    .slis li {
        width: 45%;
        margin-bottom: 1em;
    }
}

#chk,
#humbt{
display: none;
}
.ec-drawerRole ul.menyu_sp li{
	margin:1px 0;
	width: 100%;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.ec-drawerRole ul.menyu_sp a{
	padding: 0.5em 0;
	display: block;
	width: 100%;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	background-color: #FEF5E8;
	text-align: center;
	color: #000;
	font-size: 16px;
}
.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li a {
    border-bottom: 1px solid #ccc;
    padding: 0.5em 0 0.5em 1em;
    color: black;
    font-weight: normal;
    background: #f8f8f8;
	font-size: 16px;
}
.ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {
    display: block;
    border-bottom: 1px solid #ccc;
    padding:0.5em 0 0.5em 20px;
    font-size: 16px;
    font-weight: bold;
    color: white;
}
.ec-drawerRole .ec-headerSearch {
    padding:0.5em 8px;
    background: #EBEBEB;
    color: #636378;
	font-size: 16px;
}
.ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading {
    padding:0.5em 10px;
    font-size: 16px;
}
.product_page .slide-item {
	width:505px!important;	
	height:505px!important;
}

/*---------------------------------------------*
* width 1200px
*----------------------------------------------*/
@media screen and (max-width:1200px) {
.product_page .slide-item {
	width: 100%!important;	
	height:100%!important;
}
.slick-current .slide-item img{
	width: 100%;	
	height:100%;
	z-index: 1001;
}
	
}

/*---------------------------------------------*
* width 1000px
*----------------------------------------------*/
@media screen and (max-width:1000px) {
	

    #shop .maps .add,
    #shop .maps iframe {
        width: 100%;
    }

    .slis li {
        width: 45%;
        margin-bottom: 1em;
    }
    .slis li {
        width: 100%;
    }

    #contact {
        padding: 0 1em;
    }

.wrap {
    width:100%;
    margin: 0 auto;
}
header .wrap .mid {
    margin: 0;
	min-width: 505px;
}
	
header .logo {
    font-size:1.1rem;
    line-height: 1;
}
header .logo span {
font-size: 12px;
}
header .logo img.logo{
    height:28px;
    margin: 0 8px 0 16px;
}
header .logo img.ltxt {
    height:28px;
}

	
#chk:checked ~header  nav{
	height: 100%;
	}
	
section figure.right,
section figure.left,
	section figure.mini,
section figure.right.mini{
		width: 100%;
		height: auto;
		max-height:none;
		max-width: inherit;
		margin: 1em 0;
		float: none;
	text-align: center;
	}
section figure.right img,
section figure.left img,
section figure.mini img{
	width: auto;
		max-width:70%;
		height: auto;
	max-height: none;
		object-fit:cover;
object-position: 50% 50%;
	}
	
	
/*-----------------------
 shop
-------------------------*/
#shop .maps {
    clear: both;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    padding-top: 1em;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#shop .maps .add {
    border: 1px solid #666;
    padding: 1.5em 2em;
    box-sizing: border-box;
    line-height: 2;
}

#shop .maps .add,
#shop .maps iframe {
    width:100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	}
#shop .maps iframe {
	min-height: 400px;
}

	
    #contact table {
        width:90%;
		margin: 2em auto;
		-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
    }
	
	#contact table td,
	#contact table th{
		width: 100%;
		max-width:inherit;
		display: block;
		min-width:inherit;
		-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	}

	footer nav{
			display:flex;
	justify-content:flex-start;
	align-items: center;
		  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	}
	footer nav label,
	footer nav a{
	display: block;
		text-align: center;
		padding: 0.5em 0;
		width:50%;
		-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
		margin: 0;
		font-size: 1.3rem;
	}

	table td,table th{
		width: 100%;
		display: block;
		-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;		
	}
	.comebox .inner table th,
	table th{
	padding-top: 1em;	
	padding-bottom: 0;	
	}
.comebox .inner table th {
    max-width:inherit;
	border-bottom: none;
	font-size: 13px;
}
	
	.policy table th{
		border-top: none;
		border-bottom: none;
	}
	.policy table tr:nth-of-type(1) th{
		border-top:1px solid #666;
	}
	
/*
	.login .ec-headerRole__cart,
	.login .ec-headerNav .ec-headerNav__item{
		display: none;
	}
*/
	

ul.item{
		display:flex;
	justify-content:center;
	align-items:stretch;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	margin:2em 0 1em 0;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
ul.item li{
display:flex;
	width:160px;
	height: auto;
max-width:inherit;
background-color: #fff;
	margin:0 8px 16px 8px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

ul.item li a{
	color: #333;
	width:160px;
	height:auto;
		display:flex;
	justify-content:flex-start;
	align-items: center;	
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
ul.item li  figure.pics img{
width:100%!important;
min-height:160px;
max-width: inherit!important;
height: auto!important;
max-height:160px!important;
object-fit:cover;
object-position:50% 50%;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
ul.item li figure.pics{
	width: 100%;
	min-height:160px;
	height:auto;
	max-height:160px;
	overflow: hidden;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
ul.item li .text{
	width: 100%;
	height:auto;
	padding:0.5em;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}	
	

.single h1.page-title {
   margin:1em auto 2em auto; 	
}
	

/*-----------------------
 category page
-------------------------*/
.category.wrap{
	display:flex;
	justify-content:center;
	align-items: center;
	max-width:800px;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	margin-bottom:2em;
}
.category.wrap .pic{
max-width:180px;
margin:0 0 1em 0;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.category.wrap .pic img{
width: 100%;
	height: auto;
}
.category.wrap .read{
	width:auto;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	line-height: 1.8;
}
.category.wrap .read p{
	font-size: 14px;
}
.category.wrap .read strong{
font-size: 18px;
}	
.ec-searchnavRole .ec-searchnavRole__infos {
    padding:2em 0 0 0;
}
.ec-searchnavRole .ec-searchnavRole__infos .ec-searchnavRole__counter span{
padding: 0 1em;
}
.categories {
    padding:2em 0;
}

.ec-shelfGrid .ec-shelfGrid__item {
    margin-bottom: 36px;
    width:100%;
	min-width: inherit;
	max-width: 400px;
    display: flex;
    flex-direction: column;
}	
	.product_page .modal-content img{
	width:auto;
	height:auto;
	max-width: 100%;
	max-height:inherit;
}

.product_page .modal-content .close {
    z-index: 1001; /* モーダルより前面に表示 */
	margin-left:inherit;
}
	
.front_page section h2 span {
    padding: 0 0.5em;
 }

#page_product_detail .ec-shelfGrid .ec-shelfGrid__item {
        width:25%;
		min-width:25%;
}	
	
}
/* width 1000px end --------------------------------------------*/


/*---------------------------------------------*
* width 768px
*----------------------------------------------*/
@media screen and (max-width:768px) {
header .wrap .mid {
    margin: 0;
	min-width:inherit;
}
	

#chk,
#humbt{
display: none;
}

	
	html,body {
		width:100%;
		max-width:100%;
		overflow-x: hidden;
		margin: 0 auto;
	}
body {
	padding-top: 41px;
	}
	.wrap{
		width:92%;
		margin: 0 auto;
	}

    header .logo {
        font-size: 1.5rem;
    }

section {
    padding:1.5em 0;
}

    #page-top {
        width: 30px;
        height: 30px;
    }

    #page-top img {
        width: 30px;
        height: 30px;
    }
	
	.front_page h2 strong{
		font-size:28px;
	}
	
	header .wrap{
			display:flex;
	justify-content:space-between;
	align-items: center;border-bottom: 1px solid #999;
		
	}
	header .mid{
		width: auto;
		position: fixed;
	}
	
		#humbt{
		display:inline-block;
		float:right;
    width:30px;
    height:30px;
    cursor: pointer;
	position:relative;
			-webkit-box-ordinal-group:5;
-ms-flex-order:5;
-webkit-order:5;
order:5;
	}

#humbt span {
    display: block;
    position: absolute;
    height:4px;
    width: 100%;
    background:#333;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}	
#humbt span:nth-child(2) {
    top:13px;
}
#humbt span:nth-child(3) {
    top:26px;
}	

#chk:checked ~header #humbt span:nth-child(1) {
    top:13px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
}
#chk:checked ~header #humbt span:nth-child(2) {
    width: 0;
    left: 50%;
}
#chk:checked ~header #humbt span:nth-child(3) {
    top:13px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
}
header .wrap .mid nav {
		display:block;
		position:fixed;
		width:100%;
		height:0%;
		overflow:hidden;
		background-color:#FFF;
		left:0;
		top:41px;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
	}
header .wrap .mid nav a{
	width: 100%;
	display: block;
	text-align: center;
	padding:2em 0;
	background-color:#FFF;
	font-size:2rem;
	font-weight: bold;
	}
	

.ec-cartNavi {
    padding:0;
    width: auto;
    min-width:inherit;
    margin: 0;
}
.ec-headerNaviRole a[class*="ec-blockBtn"] {
    width:auto;
    min-width:inherit;
    padding: 0 0.5em;
}
	.ec-cartNaviIsset {
    width: 100%;
	}
.ec-cartNaviIsset .ec-cartNaviIsset__cart {
		display:flex;
	justify-content:flex-start;
	align-items: center;
	  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	padding-bottom: 5px;
}
	.ec-cartNaviIsset .ec-cartNaviIsset__cartImage {
    float: left;
    width:100%;
}
	.ec-cartNaviIsset .ec-cartNaviIsset__cartContent {
    float: right;
    width:100%;
    padding-left:0px;
    text-align: left;
    box-sizing: border-box;
		font-size: 12px;
}
	.ec-cartNaviIsset .ec-cartNaviIsset__cartContentNumber,
	.ec-cartNaviIsset__cartContentTitle{
	font-size: 12px;	
	}
.ec-cartNaviIsset {
    width: 100%;
    padding:10px;
}
.ec-cartNaviIsset .ec-cartNaviIsset__cartImage img {
    width: 100%;
	max-width:100px;
	margin-bottom: 10px;
}
#page_product_detail .ec-blockBtn--action, #page_product_detail .ec-blockBtn--cancel {
    width:100%;
    font-size: 12px;
}	
.ec-headerNav .ec-headerNav__itemIcon {
    display: inline-block;
    margin-right:0;
    margin-left:0;
    font-size: 18px;
    color: black;
}
.ec-cartNavi {
    background:transparent;
    margin: 0 10px 0 0;
}
.ec-headerNaviRole .ec-headerNaviRole__nav {
	display: none;
	}
.ec-cartNaviNull.is-active,	
.ec-cartNaviIsset.is-active {
	width:300px;
min-width:300px;
	margin-top: 16px;
}	
	
	header .wrap {
			display:flex;
	justify-content:space-between;
	align-items: center;	
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
		width: 98%;
		
	}

	header .wrap .sns{
-webkit-box-ordinal-group:2;
-ms-flex-order:2;
-webkit-order:2;
order:2;
	}
	header .wrap .mid{
		width:auto;
	display:flex;
	justify-content:flex-end;
	align-items: center;			
-webkit-box-ordinal-group:3;
-ms-flex-order:3;
-webkit-order:3;
order:3;
		position: relative;
		margin: 0;
	}
	
	.have_curtain .ec-headerNavSP{
		display: none;
	}
	
	.ec-headerRole__navSP{
		position: relative;
		width:auto;
			display:flex;
	justify-content:flex-end;
	align-items: center;	
	}
	
	.ec-headerNavSP {
    display: block;
    cursor: pointer;
    border-radius: 50%;
    box-sizing: border-box;
    padding:5px;
    width:30px;
    height:30px;
    font-size:20px;
    text-align: center;
    position:relative;
    top:inherit;
    right:inherit;
		left: inherit;
    z-index: 1000;
        background:#848484;
		color: #DDDDD5;		
	}

.ec-drawerRoleClose {
        display:none;
        cursor: pointer;
        border-radius: 50%;
        padding:1px 5px 5px 5px;
        width: 30px;
        height: 30px;
        font-size:20px;
        text-align: center;
        background:#848484;
		color: #DDDDD5;	
        position: relative;
        top:inherit;
	left: inherit;
        z-index: 1000;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	margin-left: 5px;
    }
.have_curtain .ec-overlayRole {
    background: rgba(0, 0, 0, 0.8);
}

.login .ec-headerNaviRole label {
 display: none;
}	
	
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search,	
.ec-drawerRole .ec-headerLinkArea,	
.ec-drawerRole {
    background:#848484;
}
header .wrap .mid .login {
   margin-bottom:0;
}
	
}

/*---------------------------------------------*
* width 480px
*----------------------------------------------*/
@media screen and (max-width:480px) {
#page_product_detail .ec-shelfGrid .ec-shelfGrid__item {
        width:50%;
		min-width:50%;
}	
header .wrap .sns img{
width:24px;
	height:24px;
	margin: 0 2px;
}
#page_product_detail .ec-blockBtn--action, #page_product_detail .ec-blockBtn--cancel {
    padding: 0.75em 0;
}


}
/* width 480px end --------------------------------------------*/

