html {
	font-size: 16px;
	font-size: 100%;
	height: 100%;
	width:100%;
	overflow-y: scroll;
}
html,body{
    margin:0;
    padding:0;
    font-family:Arial,Meiryo,sans-serif;
}

html,body,div,ul,li,p,a,h1,h2,h3,h4,h5,h6 {
		margin : 0;
	  padding: 0;
}
a {
	text-decoration: none;
	color: black;
}
li{list-style: none}

input[type="submit"],
input[type="button"],
input[type="reset"],
button,
.button{
	box-sizing:border-box;
	padding:0 1em;
	border:1px solid #999;
	background-color: white;
	border-radius: .2em;
	line-height: 3em;
	color: #444;
	font-weight: 600;
	outline:0;
	-webkit-appearance:none;
	-webkit-tap-highlight-color: rgba( 0, 0, 0, 0 );
}
input[type="submit"].attention,
input[type="button"].attention,
button.attention,
.button.attention{
	border:1px solid #FFCC00;
	background-color: #FFCC00;
	color: white;
}
input[type="submit"].attention:hover,
input[type="button"].attention:hover,
button.attention:hover,
.button.attention:hover{
	border:1px solid #EBBC00;
	background-color: #EBBC00;
}

input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
button:hover,
.button:hover{
	border:1px solid #444;
	background-color: #DFDFDF;
}
.primary{
	background-color: #FFCC00;
	border:1px solid #FFCC00;
	color:white;
}
.primary:hover{
	background-color: #EBBC00;
}

.cart{width:100%;}

.header{
 		display: table;
  	padding:1em;
  	box-sizing:border-box;
    width:100%;
    background-color: #FFFFCB;
}

.logo{
    display: table-cell;
}


.contents_left{
	text-align: center;
	background-color: #FFFF66;
	width:312px;
}
.contents_left img{
  width:312px;
}
.contents_center {
		text-align: center;
    width:312px;
    background-color: #99FF99;

}
.contents_center img{
    width:312px;
}

.corner-wrap{
	display:block;
	width:100%;
}
.corner-wrap > * {
	display:table-cell;
	vertical-align: top;
}

.corner img{
	width:100%;
	box-sizing:border-box;
	-webkit-box-sizing: -webkit-border-box;
	min-width: 312px;
}
.shop-corner{
	border-top:solid 6px #FF9933 ;
	background-color: #FFFF66;
	width:312px;
		padding:5px;
}
.shop-campaign{
	border-top:solid 6px #00CC33;
	background-color: #99FF99;
	width:312px;
		padding:5px;
}
.shop-news{
	border-top:solid 6px #33CCFF;
	background-color: #CCFFFF;
	width:100%;
}
.shop-news li a{
	display: block;
	padding: .5em;
	font-weight:bold;
	color: #444;
}
.shop-news li a:hover{
	background-color:white;
}

.shop-news li:not(:first-child){
	border-top: solid 1px lightblue;
}

.content{
	width:90%;
	margin: 0 auto 2em auto;
}

/*幅を固定するときに使うレスポンシブテーブル*/
.flex-table{
	display: table;
	width:100%;
}
.flex-table > *{ display: table-cell; }

/*グリッドの親要素*/
.grid {
	letter-spacing: -.4rem;
}

/*すべての子要素を自動的にカラム化*/
.grid > * {
	display: inline-block;
	box-sizing: border-box;
	letter-spacing: normal;
	vertical-align: top;
}

.grid.two   > * {width:50%;}
.grid.three > * {width:33.3%;}
.grid.four  > * {width:25%;}
.grid.five  > * {width:20%;}

.card{
	box-sizing: border-box;
	padding: .5rem;
	position: relative;
}
.card-inner{
  padding: .5rem;
  box-shadow: .1rem .1rem .7rem -.2rem;
}

/*親要素に対して上下左右中央寄せ　＆　縦横比維持したまま伸縮*/
.card-img {
	margin-bottom: .5em;
}
.card-img img{
	position: absolute;
	top:0;
	bottom: 0;
	left:0;
	right:0;
	margin: auto;
	max-width:100%;
	max-height: 100%;
	width:auto;
	height:auto;
}
.card-info {
	font-size: .9em;
	word-break: break-all;
}
.card-info a:hover{
	text-decoration: underline;
}


.fixed-ratio{
	position: relative;
}
.fixed-ratio:before{
	content: "";
	display: block;
}
.fixed-ratio > *{
	position: absolute;
	top: 0;
	left:0;
	width:100%;
	height:100%;
}

.ratio1-1:before{padding-top: 100%;}
.ratio5-6:before{padding-top: 117%;}
.ratio3-7:before{padding-top: 156%;}

/*ギャラリーのスタイル*/
.gallery-wrap{
	max-width:550px;
	margin: 0 auto;
}
.gallery{ position:relative;margin-bottom:.5em;}
.gallery .flickity-viewport{
	position: absolute;
	width:100%;
}
.gallery-cell{
	height:100%;
	width:100%;
	box-sizing:border-box;
}
.gallery-cell img,video{
	position:absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	max-width:100%;
	max-height:100%;
}
.gallery.main{padding-bottom: 116%;}
.gallery.main .gallery-cell{
	margin-right:10px;
}
.gallery.carousel{padding-bottom: 16.67%;}
.gallery.carousel .gallery-cell{
	width: 22.333%;
	margin-right: 3.333%;
}
/*ここまで　ギャラリーのスタイル*/

.desc-product{
	border-top :1px solid lightgray;
}

.desc-product-images{
		width:550px;
		padding-bottom: 2em;
}
.desc-product-info{
	vertical-align: top;
	padding: 2em;
	width:20em;
}
.desc-product-info-comment{
	font-size: .9em;
	color: #444;
	margin-top: 1.5em;
}
.desc-product-description{
	padding-top: 1em;
	line-height: 1.5em;
	border-top: 1px solid lightgray;
}
.valuations{
	margin-top: 1.5em;
}
.valuation {
    padding-top: 1em;
    padding-bottom: 1em;
    background-color: #F1F1F1;
    border-radius: .2em;
    padding: 1em;
    margin-bottom: .5em;
}
.valuation h4{
	font-size:1.2em;
}
.valuation-info{
	margin-bottom: .5em;
}
.valuation-button{
}

.delivery-info{
	margin-top:1em;
	margin-bottom: 1em;
	color: red;
	font-family: Arial,MSP gothic;
	border: red solid 1px;
	padding: 8px;
	background: #FFE5E5;
	text-align: center;
	line-height: 2em;
	display:block;
}


.footer{
    padding: 2em 5%;
    background-color: #2B2B2B;
    color: #E0E0E0;
    text-shadow: 1px 1px black;
    font-size:.95em;
    box-sizing: border-box;
}
.footer p{
	white-space: nowrap;
	font-weight:600;
	font-size: 1.3em;
	margin-bottom: .5em;
}
.footer li{
	list-style:none;
	padding-left: .5em;
	line-height: 1.5em;
	font-size: .9em;
}
.footer a{
	color:#E0E0E0;
	text-decoration: none;
}
.footer a:hover{
	text-decoration: underline;
}
.footer-column{
	padding-left: 7.5%;
	padding-top: 1.5em;
	vertical-align: top;
}



/*ブレークポイント*/
@media screen and (max-width: 780px){

	.contents_center img{
		  width:100%;
	    max-width:312px;
	}
	.contents_left img{
			width:100%;
	    max-width:312px;
	}

	.corner { width:auto}
	.corner img { width:100%;}


	.grid > * {width:33%;}

	.grid.two   > * {width:50%;}
	.grid.three > * {width:33.3%;}
	.grid.four  > * {width:50%;}
	.grid.five  > * {width:33.3%;}

	.flex-table{
	position:relative;
	width:100%;
	display: block;
	letter-spacing: -1em;
	}
	.flex-table > * {
	display: inline-block;
	letter-spacing: normal;
	width:100%;
	}

  .corner_img{
  	display: none;
  }

	.desc-product-images{
		width:100%;
		padding-bottom: 1.5em;
	}
	.desc-product-info{
		padding: 0;
	}
	.desc-product-description{
	    border-top: 1px solid lightgray;
	}
	.valuation {
		  padding-top: 1em;
	    padding-bottom: 1em;
	    margin:auto;
	    background-color: white;
	    border-top: 1px solid lightgray;
	    display: -webkit-flex;
	    display: flex;

	    -webkit-justify-content: space-between;
	    justify-content: space-between;

	    -webkit-align-items: flex-end;
	    align-items: flex-end;

	    border-radius: 0px;
	}
	.valuation * {
		-webkit-box-sizing: border-box;
		box-sizing:border-box;
	}
	.valuation-info{
		margin-bottom: 0px
	}

	.cart{
		width:auto;
	}

} /*  */

@media screen and (max-width: 414px){
	html{font-size:75%;}
	
	.grid > * {width: 50%;}
	.grid.two   > * {width:50%;}
	.grid.three > * {width:50%;}
	.grid.four  > * {width:50%;}
	.grid.five  > * {width:50%;}

	.flickity-prev-next-button {
		display: none;
  }

	.corner-wrap{
		display:-webkit-flex;
		display:flex;

		-webkit-flex-direction: row;
		flex-direction: row;

		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;

	}
	.corner-wrap > * {
		display: block;
		flex-grow:1;
	}
	.shop-corner{
		-webkit-order: 2;
		order: 2;
	}
	.shop-campaign{
		-webkit-order: 1;
		order:1;
	}
	.shop-news{
		-webkit-order: 3;
		order:3;
	}
	.footer{
		font-size:1.3em;
	}
}
