@charset "UTF-8";

.contents {
	max-width:820px;
}
.contents ul#smenu {
	width:100%;
	margin-bottom:45px;
}
.contents ul#smenu li {
	text-align:center;
	font-size:1.4rem;
	border:2px solid #ffffff;
	background:#efefef;
	width:calc(100%/3);
	box-sizing:border-box;
}
.contents ul#smenu li a {
	display:block;
	box-sizing:border-box;
	padding:.5em;
}
.contents ul#smenu li a:hover {
	color:#de1557;
}
.contents ul#smenu li.current-cat a {
	color:#de1557;
}


/****/
.contents .plist li {
	width:calc(100%/3 - 20px);
	margin-bottom:60px;
}
.contents .plist li img {
    display:block;
    margin-bottom:15px;
}
.contents .plist li h2 {
	font-size:1.6rem;
    font-family: 'Noto Serif JP', serif;
	font-weight:400;
	line-height:1.3;
	margin-bottom:.5em;
	color:#de1557;
}
.contents .plist li a.more {
    margin:0 auto;
}

.contents .productlist h3 {
	font-size:1.8rem;
    font-family: 'Noto Serif JP', serif;
	font-weight:400;
	border-bottom:1px solid #de1557;
	line-height:1.5;
	padding:0 .3em .2em;
	margin-bottom:1.5em;
	position:relative;
}
.contents .productlist h3 > span.cat {
	font-size:1.3rem;
    font-family: 'Noto Serif JP', serif;
	position:absolute;
	right:0;
	bottom:-2em;
	line-height:1.3;
	padding:.3em 1em;
	background:#efefef;
}
.contents .productlist > div.fbox {
	width:100%;
    margin-bottom:60px;
    text-align:center;
}
.contents .productlist > div.fbox > .img {
	width:calc(40% - 25px);
	position:relative;
	background-size:contain;
	background-repeat:no-repeat;
	background-position:center center;
}
.contents .productlist > div.fbox > .img::after {
	content:'';
	display:block;
	padding-top:100%;
}
.contents .productlist > div.fbox > div.detail {
	width:calc(60% - 25px);
}
#main .contents .productlist > div.fbox p {
    font-family: 'Noto Serif JP', serif;
}
.contents .productlist > div.fbox > a.more {
	margin:30px auto 0;
}


#main.single #detail .contents,
#main.single #freespace .contents {
	max-width:1100px;
}
#main.single #detail .contents > .fbox {
	width:100%;
}
#main.single #detail .slidewrap {
	width:50%;
}
#main.single #detail .slide-container,
#main.single #detail .thumb-container {
	overflow:hidden;
}
#main.single #detail .slide-container {
	margin-bottom:2px;
}
#main.single #detail .thumb-container li.swiper-slide-active {
	position:relative;
}
#main.single #detail .thumb-container li.swiper-slide-thumb-active::after {
    content:'';
    display:block;
    width:100%;
    height:100%;
    box-sizing:border-box;
    border:2px solid #de1557;
    position:absolute;
    top:0;
    left:0;
}
#main.single #detail .swiper-slide {
	background-size:contain;
	background-position:center center;
	background-repeat:no-repeat;
}
#main.single #detail .swiper-slide::before {
	content:'';
	display:block;
	padding-top:100%;
}
#main.single #detail .detail {
    width:calc(50% - 45px);
    box-sizing:border-box;
	border-top:1px solid #333333;
	border-bottom:1px solid #333333;
}
#main.single #detail .detail dl {
	width:100%;
	box-sizing:border-box;
	font-size:1.5rem;
	padding:1em;
	border-bottom:1px solid #333333;
}
#main.single #detail .detail dl dt {
    width:5em;
}
#main.single #detail .detail dl dd {
	width:calc(100% - 5.5em);
}
#main.single #detail .detail .text {
	box-sizing:border-box;
	padding:1em;
}

#productlist .wrap {
	padding-bottom:90px;
}
#productlist .contents h1 {
	font-family: 'Oswald', sans-serif;
	font-size:3.6rem;
	font-weight:500;
	line-height:1;
	text-align:center;
	padding:45px 0;
}
#productlist .contents h1 span {
    display:block;
	font-family: "Noto Sans JP",sans-serif;
    font-size:1.4rem;
    font-weight:600;
	color:#de1557;
	line-height:1;
	padding-top:1em;
}
#productlist .contents ul {
    margin-bottom:15px;
}
#productlist a.more {
	margin:0 auto;
}

#main.single.lp .wrap {
	padding:0;
}
#main.single.lp .contents {
	max-width:100%;
	width:100%;
}

.brandslist {
	width:100%;
}
.brandslist li {
	width:calc(100%/3 - 20px);
	margin: 0 10px 20px;
	text-align:center;
	box-sizing:border-box;
	border:1px solid #cccccc;
	background:#EFEFEF;
}
.brandslist li a {
	display:block;
	transition:.3s;
}
.brandslist li a:hover {
	opacity:.66;
}
.brandslist li h3 {
	box-sizing:border-box;
	padding:1em 0;
	margin:0;
	font-size:1.4rem;
	border:none;
	line-height:1.3;
}

.register {
	text-align:center;
	box-sizing:border-box;
	padding-bottom:30px;
}
.register.bottom {
	padding-bottom:60px;
	padding-top:30px;
}
#main .register p {
	text-align:center;
}
#main .register p br {
	display:none;
}
.register a {
	display:inline-block;
	line-height:3;
	background:#de1557;
	color:#FFFFFF;
	box-sizing:border-box;
	padding:0 2em;
	letter-spacing:.2em;
	transition:.3s;
	position:relative;
	box-sizing:border-box;
    border:1px solid #de1557;
}
.register a:hover {
	color:#de1557;
	background:#FFFFFF;
}
.register a .svg-inline--fa {
	margin-left:.5em;
}
.register a::after {
    content:'';
    display:block;
    width:100%;
    height:100%;
    border:1px solid #de1557;
    box-sizing:border-box;
    position:absolute;
    left:5px;
    top:5px;
    z-index:-1;
}

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

}

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

}

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

}

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

/**products**/

.contents ul#smenu {
    margin-bottom:5vw
}
.contents ul#smenu li {
    font-size:3.2vw;
	width:calc(100%/2);
}
.contents ul#smenu li.cat-item-56,
.contents ul#smenu li.cat-item-59 {
    width: calc(100%/2);
}
.contents ul#smenu li.cat-item-53 {
    width: calc(100%/1.5);
}
.contents ul#smenu li.cat-item-62 {
	width:calc(100%/3);
}

.contents .productlist h3 {
	font-size:4.5vw;
}
.contents .productlist h3 > span.cat {
	font-size:3vw;
	bottom:-2.5em;
}
.contents .productlist > div.fbox {
    margin-bottom:10vw;
}
.contents .productlist > div.fbox > .img {
	width:100%;
	margin-bottom:3vw;
}
.contents .productlist > div.fbox > div.detail {
	width:100%;
}
.contents .productlist > div.fbox > a.more {
	margin:3vw auto 0;
}

#main.single #detail .slidewrap {
	width:100%;
}
#main.single #detail .detail {
	width:100%;
	border-top:0;
}
#main.single #detail .detail dl {
	font-size:4vw;
}

#productlist .wrap {
	padding-bottom:60px;
}
#productlist .contents h1 {
	font-size:8vw;
	padding:0 0 10vw;
}
#productlist .contents h1 span {
    font-size:4vw;
}
#productlist .contents ul {
    margin-bottom:3vw;
}


.brandslist li {
	width:calc(100%/2 - 10px);
	margin: 0 5px 10px;
}
.brandslist li h3 {
	box-sizing:border-box;
	padding:1em 0;
	margin:0;
	font-size:1.2rem;
	border:none;
}

.register {
	padding-bottom:15px;
}
.register.bottom {
	padding-bottom:30px;
	padding-top:15px;
}
#main .register p br {
	display:inline;
}


}

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