@charset "UTF-8";
/* CSS Document */









/*top*/
.top_slider {
  height: 280px;
  background: url(../img/top/slider_bg.jpg) repeat center center;
}
.top_slider .slide_box .slide p {
  max-width: 1600px !important;
  width: auto !important;
}
.top_news {
  padding: 80px 20px;
}
.top_news h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.2em;
  font-size: 2.8rem;
  letter-spacing: .2em;
  line-height: 1.1;
}
.top_news h3 span {
  position: relative;
  display: block;
}
.top_news h3 span::before ,
.top_news h3 span::after {
  position: absolute;
	top: 50%;
	transform: translateY(-50%);
  width: 40px;
  height: 1px;
  background: #FFF;
  content: '';
}
.top_news h3 span::before {
  left: -90px;
}
.top_news h3 span::after {
  right: -90px;
}
.top_news .box {
  max-width: 1160px;
  border: solid 1px #ffffff;
  padding: 40px;
  margin: 0 auto;
  margin-bottom: 50px;
}
.top_news .box section {
  display: flex;
  font-size: 1.5rem;
  letter-spacing: .2em;
}
.top_news .box section:not(:last-of-type) {
  margin-bottom: 10px;
}
.top_news .box section time {
  display: block;
  margin-right: 2em;
  white-space: nowrap;
}
.top_news .more_btn {
  display: flex;
  align-items: center;
  justify-content: center;
}
.top_news .more_btn a {
  position: relative;
  display: block;
  font-size: 2.0rem;
  letter-spacing: .05em;
  padding: .3em 3.5em;
  border: solid 1px #FFF;
  border-radius: 1.5em;
}
.top_news .more_btn a::after {
  position: absolute;
	top: 50%;
	transform: translateY(-50%);
  right: 1em;
  width: .5em;
  height: .8em;
  background: url(../img/top/more_arrow.svg) no-repeat center center;
  background-size: cover;
  content: '';
}
.top_item {
  background: #1c1818;
  padding: 80px 0;
  padding-top: 0;
}
.top_item h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.2em;
  font-size: 2.8rem;
  letter-spacing: .2em;
  line-height: 1.1;
}
.top_item h3 span {
  position: relative;
  display: block;
}
.top_item h3 span::before ,
.top_item h3 span::after {
  position: absolute;
	top: 50%;
	transform: translateY(-50%);
  width: 40px;
  height: 1px;
  background: #FFF;
  content: '';
}
.top_item h3 span::before {
  left: -90px;
}
.top_item h3 span::after {
  right: -90px;
}
.top_item .list {
  margin-bottom: 50px;
}
.top_item .list p {
  width: 255px !important;
  margin: 0 5px !important;
}
.top_item .more_btn {
  display: flex;
  align-items: center;
  justify-content: center;
}
.top_item .more_btn a {
  position: relative;
  display: block;
  font-size: 2.0rem;
  letter-spacing: .05em;
  padding: .3em 3.5em;
  border: solid 1px #FFF;
  border-radius: 1.5em;
}
.top_item .more_btn a::after {
  position: absolute;
	top: 50%;
	transform: translateY(-50%);
  right: 1em;
  width: .5em;
  height: .8em;
  background: url(../img/top/more_arrow.svg) no-repeat center center;
  background-size: cover;
  content: '';
}
.top_recommend {
  background: #1c1818;
  padding: 80px 0;
}
.top_recommend h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.2em;
  font-size: 2.8rem;
  letter-spacing: .2em;
  line-height: 1.1;
}
.top_recommend h3 span {
  position: relative;
  display: block;
}
.top_recommend h3 span::before ,
.top_recommend h3 span::after {
  position: absolute;
	top: 50%;
	transform: translateY(-50%);
  width: 40px;
  height: 1px;
  background: #FFF;
  content: '';
}
.top_recommend h3 span::before {
  left: -90px;
}
.top_recommend h3 span::after {
  right: -90px;
}
.top_recommend .recommend-list {
  margin-bottom: 50px;
}
.top_recommend .recommend-list p {
  width: 255px !important;
  height: 255px !important;
  margin: 0 5px !important;
  overflow: hidden;
}
.top_recommend .recommend-list p a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.top_recommend .recommend-list p a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top_recommend .more_btn {
  display: flex;
  align-items: center;
  justify-content: center;
}
.top_recommend .more_btn a {
  position: relative;
  display: block;
  font-size: 2.0rem;
  letter-spacing: .05em;
  padding: .3em 3.5em;
  border: solid 1px #FFF;
  border-radius: 1.5em;
}
.top_recommend .more_btn a::after {
  position: absolute;
	top: 50%;
	transform: translateY(-50%);
  right: 1em;
  width: .5em;
  height: .8em;
  background: url(../img/top/more_arrow.svg) no-repeat center center;
  background-size: cover;
  content: '';
}
.top_category {
  padding: 80px 20px;
}
.top_category h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.2em;
  font-size: 2.8rem;
  letter-spacing: .2em;
  line-height: 1.1;
}
.top_category h3 span {
  position: relative;
  display: block;
}
.top_category h3 span::before ,
.top_category h3 span::after {
  position: absolute;
	top: 50%;
	transform: translateY(-50%);
  width: 40px;
  height: 1px;
  background: #FFF;
  content: '';
}
.top_category h3 span::before {
  left: -90px;
}
.top_category h3 span::after {
  right: -90px;
}
.top_category .box {
  max-width: 1160px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -40px;
}
.top_category .box section {
  width: calc((100% - 40px) / 2);
  margin-bottom: 40px;
}
.top_category .box section:nth-of-type(odd) {
  margin-right: 40px;
}
.top_category .box section a {
  position: relative;
  display: block;
}
.top_category .box section a h4 {
  position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
  z-index: 1;
  text-align: center;
  font-size: 2.0rem;
  font-weight: 500;
  letter-spacing: .1em;
  color: #FFF;
  text-shadow: 0 0 5px rgba(0, 0, 0, .4) , 0 0 5px rgba(0, 0, 0, .4) , 0 0 5px rgba(0, 0, 0, .4);
}
.top_brand {
  background: #1c1818;
  padding: 80px 20px;
}
.top_brand h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.2em;
  font-size: 2.8rem;
  letter-spacing: .2em;
  line-height: 1.1;
}
.top_brand h3 span {
  position: relative;
  display: block;
}
.top_brand h3 span::before ,
.top_brand h3 span::after {
  position: absolute;
	top: 50%;
	transform: translateY(-50%);
  width: 40px;
  height: 1px;
  background: #FFF;
  content: '';
}
.top_brand h3 span::before {
  left: -90px;
}
.top_brand h3 span::after {
  right: -90px;
}
.top_brand .box {
  max-width: 1160px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -40px;
}
.top_brand .box p {
  width: calc((100% - (100px * 2)) / 3);
  margin-bottom: 40px;
}
.top_brand .box p:not(:nth-of-type(3n)) {
  margin-right: 100px;
}





/*item-list*/
.item-list main .category_name {
  max-width: 1500px;
  margin: 0 auto;
  margin-bottom: 40px;
  padding: 0 20px;
  font-size: 3.5rem;
  font-weight: 500;
  letter-spacing: .05em;
}
.item-list main .wrap {
  max-width: 1500px;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  align-items: flex-start;
}
.item-list main .wrap article {
  order: 2;
  width: calc(100% - (260px + 70px));
  margin-left: auto;
}
.item-list main .wrap article .count_sort {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1em;
}
.item-list main .wrap article .count_sort p {
  font-size: 1.3rem;
  letter-spacing: .2em;
  margin-right: 2em;
}
.item-list main .wrap article .count_sort dl {
  display: flex;
  margin-left: auto;
  font-size: 1.3rem;
}
.item-list main .wrap article .count_sort dl dt {
  margin-right: 1em;
}
.item-list main .wrap article .count_sort dl dd:not(:last-of-type) {
  margin-right: 1em;
}
.item-list main .wrap article .list {
  margin-bottom: -60px;
  display: flex;
  flex-wrap: wrap;
}
.item-list main .wrap article .list section {
  margin-bottom: 60px;
  width: calc((100% - (45px * 2)) / 3);
}
.item-list main .wrap article .list section:not(:nth-of-type(3n)) {
  margin-right: 45px;
}
.item-list main .wrap article .list section a {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.item-list main .wrap article .list section a .img {
  width: 100%;
  height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}
.item-list main .wrap article .list section a .img img {
  width: 100%;
  height: 100%;
  object-fit: scale-down;
}
.item-list main .wrap article .list section a h3 {
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: .2em;
  margin-bottom: .6em;
}
.item-list main .wrap article .list section a .price {
  font-size: 2.5rem;
  letter-spacing: .05em;
  color: #ff0000;
  text-align: right;
  margin-top: auto;
}
.item-list main .wrap article .list section a .price em {
  font-size: 2.0rem;
  color: #FFF;
}
.item-list main .wrap article .list section a .price em i {
  font-size: 1.5rem;
}
.item-list main .wrap aside {
  order: 1;
  width: 260px;
  margin-right: 70px;
}
.item-list main .wrap aside section:not(:last-of-type) {
  margin-bottom: 50px;
}
.item-list main .wrap aside section ul li a {
  display: block;
  border-bottom: solid 1px #FFF;
  font-size: 1.8rem;
  letter-spacing: .05em;
  padding: .8em .5em;
}
.item-list main .wrap aside section ol li:not(:last-of-type) {
  margin-bottom: 20px;
}



/*item-detail*/
.item-detail main .wrap {
  max-width: 1500px;
  margin: 0 auto;
  margin-bottom: 50px;
  padding: 0 20px;
  display: flex;
  align-items: flex-start;
}
.item-detail main .wrap article {
  order: 2;
  width: calc(100% - (260px + 70px));
  margin-left: auto;
  display: flex;
}
.item-detail main .wrap article .img {
  width: 48%;
  margin-right: 2%;
}
.item-detail main .wrap article .img .large_img {
  position: relative;
  margin: 0 auto;
  padding: 0;
}
.item-detail main .wrap article .img .large_img li {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
}
.item-detail main .wrap article .img .large_img li img {
  width: auto;
  max-width: 100%;
  height: auto;
}
.item-detail main .wrap article .img .small_img {
  position: relative;
  margin: 0 auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin-bottom: -10px;
}
.item-detail main .wrap article .img .small_img li {
  position: relative;
  width: calc((100% - (10px * 3)) / 4);
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.item-detail main .wrap article .img .small_img li:not(:nth-of-type(4n)) {
  margin-right: 10px;
}
.item-detail main .wrap article .img .small_img li img {
  width: auto;
  max-width: 100%;
  height: auto;
}
.item-detail main .wrap article .box_r {
  width: 50%;
  margin-left: auto;
}
.item-detail main .wrap article .box_r h3 {
  font-size: 3.0rem;
  font-weight: 500;
  margin-bottom: .4em;
}
.item-detail main .wrap article .box_r .price {
  margin-bottom: 1.2em;
  display: flex;
  justify-content: flex-end;
  align-items: baseline;
}
.item-detail main .wrap article .box_r .price span ,
.item-detail main .wrap article .box_r .price em {
  display: block;
}
.item-detail main .wrap article .box_r .price span {
  font-size: 3.5rem;
  color: #ff0000;
  letter-spacing: .05em;
}
.item-detail main .wrap article .box_r .price em {
  font-size: 2.5rem;
  letter-spacing: .2em;
}
.item-detail main .wrap article .box_r .price em i {
  font-size: 1.5rem;
}
.item-detail main .wrap article .box_r .comment {
  font-size: 1.7rem;
  letter-spacing: .2em;
  margin-bottom: 1.2em;
}
.item-detail main .wrap article .box_r .comment p:not(:last-of-type) {
  margin-bottom: 1.2em;
}
.item-detail main .wrap article .box_r .order_info {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
}
.item-detail main .wrap article .box_r .order_info .option {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-bottom: .8em;
}
.item-detail main .wrap article .box_r .order_info .option .makeshop-option-wrap {
  margin: 0;
  margin-bottom: .8em;
}
.item-detail main .wrap article .box_r .order_info .option .makeshop-option-wrap .makeshop-option-label {
  margin-right: 1em;
}
.item-detail main .wrap article .box_r .order_info .option .makeshop-option-wrap label.makeshop-option-select-wrap {
  display: inline-flex;
  align-items: center;
  position: relative;
  margin: 0;
}
.item-detail main .wrap article .box_r .order_info .option .makeshop-option-wrap label::after {
  position: absolute;
  right: 15px;
  width: 10px;
  height: 7px;
  background-color: #535353;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: '';
  pointer-events: none;
}
.item-detail main .wrap article .box_r .order_info .option .makeshop-option-wrap label select {
  appearance: none;
  min-width: 150px;
  height: 2.8em;
  padding: .4em calc(.8em + 30px) .4em .8em;
  border: 1px solid #fff;
  border-radius: 3px;
  background-color: #fff;
  font-size: 1.6rem;
  cursor: pointer;
}
.item-detail main .wrap article .box_r .order_info .back_stock a {
  display: block;
  background: #FFF;
  border: solid 1px #ccc;
  color: #000;
  padding: .4em 1.5em;
}
.item-detail main .wrap article .box_r .order_info .soldout span {
  display: block;
  background: #ff0000;
  border: solid 1px #ff0000;
  color: #FFF;
  padding: .4em 1.5em;
}
.item-detail main .wrap article .box_r .order_info dl {
  display: flex;
  align-items: center;
  margin-right: 1em;
}
.item-detail main .wrap article .box_r .order_info dl dt {
  margin-right: .5em;
}
.item-detail main .wrap article .box_r .order_info dl dd input {
  width: 3em;
	padding:.4em .8em;
	font-size:1.6rem;
  background: #FFF;
  border: solid 1px #FFF;
  box-sizing: border-box;
  appearance: none;
	border-radius: 0;
	outline: 0;
  text-align: center;
}
.item-detail main .wrap article .box_r .order_info dl dd input::-webkit-inner-spin-button,
.item-detail main .wrap article .box_r .order_info dl dd input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
    -moz-appearance:textfield;
}
.item-detail main .wrap article .box_r .order_info .cart_btn {
  margin-right: 1em;
}
.item-detail main .wrap article .box_r .order_info .back_stock + .cart_btn {
  margin-left: 1em;
}
.item-detail main .wrap article .box_r .order_info .cart_btn a {
  display: block;
  background: #78B840;
  border: solid 1px #4f8321;
  color: #FFF;
  padding: .4em 1.5em;
}
.item-detail main .wrap article .box_r .order_info .icon_favorite a i {
  font-weight: 900;
}
.item-detail main .wrap article .box_r .order_info .no_sell {
  text-align: center;
}
.item-detail main .wrap aside {
  order: 1;
  width: 260px;
  margin-right: 70px;
}
.item-detail main .wrap aside section:not(:last-of-type) {
  margin-bottom: 50px;
}
.item-detail main .wrap aside section ul li a {
  display: block;
  border-bottom: solid 1px #FFF;
  font-size: 1.8rem;
  letter-spacing: .05em;
  padding: .8em .5em;
}
.item-detail main .wrap aside section ol li:not(:last-of-type) {
  margin-bottom: 20px;
}
.item-detail main .item_list {
  background: #1c1818;
  padding: 50px 0;
}
.item-detail main .item_list h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.2em;
  font-size: 2.8rem;
  letter-spacing: .2em;
  line-height: 1.1;
}
.item-detail main .item_list h3 span {
  position: relative;
  display: block;
}
.item-detail main .item_list h3 span::before ,
.item-detail main .item_list h3 span::after {
  position: absolute;
	top: 50%;
	transform: translateY(-50%);
  width: 40px;
  height: 1px;
  background: #FFF;
  content: '';
}
.item-detail main .item_list h3 span::before {
  left: -90px;
}
.item-detail main .item_list h3 span::after {
  right: -90px;
}
.item-detail main .item_list .list {
  max-width: 1500px;
  margin: 0 auto;
  padding: 0 20px;
  margin-bottom: -60px;
  display: flex;
  flex-wrap: wrap;
}
.item-detail main .item_list .list section {
  margin-bottom: 60px;
  width: calc((100% - (45px * 3)) / 4);
}
.item-detail main .item_list .list section:not(:nth-of-type(4n)) {
  margin-right: 45px;
}
.item-detail main .item_list .list section a {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.item-detail main .item_list .list section a .img {
  width: 100%;
  height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}
.item-detail main .item_list .list section a .img img {
  width: 100%;
  height: 100%;
  object-fit: scale-down;
}
.item-detail main .item_list .list section a h4 {
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: .2em;
  margin-bottom: .6em;
}
.item-detail main .item_list .list section a .price {
  font-size: 2.5rem;
  letter-spacing: .05em;
  color: #ff0000;
  text-align: right;
  margin-top: auto;
}
.item-detail main .item_list .list section a .price em {
  font-size: 2.0rem;
  color: #FFF;
}
.item-detail main .item_list .list section a .price em i {
  font-size: 1.5rem;
}


/*news-list*/
.news-list main .news_list_box {
  max-width: 940px;
  margin: 0 auto;
  padding: 0 20px;
}
.news-list main .news_list_box section:not(:last-of-type) {
  margin-bottom: 15px;
}
.news-list main .news_list_box section a {
  display: flex;
  background: #1c1818;
  padding: 1em 0;
}
.news-list main .news_list_box section a time {
  width: 180px;
  padding-left: 2em;
}
.news-list main .news_list_box section a p {
  width: calc(100% - 180px);
  padding-right: 2em;
}

/*news-detail*/
.news-detail main {
  padding-bottom: 20px;
}
.news-detail main .title_time {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 20px;
}
.news-detail main .title_time .box_in {
  padding: 20px;
  border-top: solid 1px #FFF;
  border-bottom: solid 1px #FFF;
}
.news-detail main .title_time .box_in time {
  display: block;
  font-size: 1.8rem;
  margin-bottom: .6em;
}
.news-detail main .title_time .box_in h3 {
  display: flex;
  align-items: center;
  justify-content: center;
}
.news-detail main .title_time .box_in h3 span {
  display: block;
  font-size: 2.8rem;
  font-weight: 500;
  letter-spacing: .2em;
}
.news-detail main .contents {
  max-width: 940px;
  margin: 0 auto;
  padding: 0 20px;
  padding-top: 40px;
  padding-bottom: 60px;
  font-size: 2.0rem;
  letter-spacing: .2em;
}
.news-detail main .contents p:not(:last-of-type) {
  margin-bottom: 1.2em;
}
.news-detail main .back {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 20px;
  font-size: 1.8rem;
}





@media screen and (max-width: 1600px) { 
  .top_slider {
    height: auto;
  }
  .top_slider .slide_box .slide p {
    max-width: inherit !important;
    width: 100% !important;
  }

}





@media screen and (max-width: 1500px) { 
  /*item-detail*/
  .item-detail main .item_list .list section a .img {
    height: 25vw;
  }


}





@media screen and (max-width: 1240px) { 
  /*item-list*/
  .item-list main .wrap article .list section {
    margin-bottom: 60px;
    width: calc((100% - (30px * 1)) / 2);
  }
  .item-list main .wrap article .list section:not(:nth-of-type(3n)) {
    margin-right: 0;
  }
  .item-list main .wrap article .list section:not(:nth-of-type(2n)) {
    margin-right: 30px;
  }
  .item-list main .wrap article .list section a .img {
    width: 100%;
    height: 30vw;
  }


}





@media screen and (max-width: 1200px) { 
  .top_brand .box p {
    width: calc((100% - (20px * 2)) / 3);
  }
  .top_brand .box p:not(:nth-of-type(3n)) {
    margin-right: 20px;
  }

}





@media screen and (max-width: 940px) { 
  /*item-detail*/
  .item-detail main .wrap article {
    flex-direction: column;
  }  
  .item-detail main .wrap article .img {
    order: 2;
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
  .item-detail main .wrap article .img .large_img li {
    margin-bottom: 5vw;
  }
  .item-detail main .wrap article .img .small_img {
    margin-bottom: -5vw;
  }
  .item-detail main .wrap article .img .small_img li {
    width: calc((100% - (3vw * 2)) / 3);
    margin-bottom: 5vw;
  }
  .item-detail main .wrap article .img .small_img li:not(:nth-of-type(4n)) {
    margin-right: 0;
  }
  .item-detail main .wrap article .img .small_img li:not(:nth-of-type(3n)) {
    margin-right: 3vw;
  }
  .item-detail main .wrap article .box_r {
    width: 100%;
    margin-left: 0;
    display: contents;
  }
  .item-detail main .wrap article .box_r h3 {
    order: 1;
  }
  .item-detail main .wrap article .box_r .price {
    order: 3;
  }
  .item-detail main .wrap article .box_r .comment {
    order: 4;
  }
  .item-detail main .wrap article .box_r .order_info {
    order: 5;
  }
  .item-detail main .item_list .list section {
    width: calc((100% - (45px * 1)) / 2);
  }
  .item-detail main .item_list .list section:not(:nth-of-type(4n)) {
    margin-right: 0;
  }
  .item-detail main .item_list .list section:not(:nth-of-type(2n)) {
    margin-right: 45px;
  }
  .item-detail main .item_list .list section a .img {
    height: 45vw;
  }


}





@media screen and (max-width: 767px) { 
  /*top*/
  body.top {
    display: flex;
    flex-direction: column;
  }
  body.top nav {
    order: 2 !important;
  }
  .top_slider {
    order: 1 !important;
  }
  body.top :not(nav) ,
  body.top :not(.top_slider) {
    order: 3;
  }
  .top_news {
    padding: 10vw 4%;
  }
  .top_news h3 {
    font-size: 2.0rem;
  }
  .top_news h3 span::before ,
  .top_news h3 span::after {
    width: 6vw;
  }
  .top_news h3 span::before {
    left: -10vw;
  }
  .top_news h3 span::after {
    right: -10vw;
  }
  .top_news .box {
    max-width: 100%;
    padding: 4vw;
    margin-bottom: 8vw;
  }
  .top_news .box section {
    display: flex;
    flex-direction: column;
    font-size: 1.4rem;
    letter-spacing: .1em;
  }
  .top_news .box section:not(:last-of-type) {
    margin-bottom: 4vw;
  }
  .top_news .box section time {
    margin-right: 0;
    font-size: 1.2rem;
  }
  .top_news .more_btn a {
    font-size: 1.6rem;
    padding: .3em 3.5em;
  }
  .top_item {
    padding: 10vw 0;
    padding-top: 0;
  }
  .top_item h3 {
    font-size: 2.0rem;
  }
  .top_item h3 span::before ,
  .top_item h3 span::after {
    width: 6vw;
  }
  .top_item h3 span::before {
    left: -10vw;
  }
  .top_item h3 span::after {
    right: -10vw;
  }
  .top_item .list {
    margin-bottom: 8vw;
  }
  .top_item .list p {
    width: 40vw !important;
    margin: 0 2vw !important;
  }
  .top_item .more_btn a {
    font-size: 1.6rem;
    padding: .3em 3.5em;
  }

  .top_recommend {
    padding: 10vw 0;
  }
  .top_recommend h3 {
    font-size: 2.0rem;
  }
  .top_recommend h3 span::before {
    left: -10vw;
  }
  .top_recommend h3 span::after {
    right: -10vw;
  }
  .top_recommend .recommend-list {
    margin-bottom: 8vw;
  }
  .top_recommend .recommend-list p {
    width: 40vw !important;
    height: 40vw !important;
    margin: 0 2vw !important;
  }
  .top_recommend .more_btn {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .top_recommend .more_btn a {
    font-size: 1.6rem;
    padding: .3em 3.5em;
  }

  .top_category {
    padding: 10vw 4%;
  }
  .top_category h3 {
    font-size: 2.0rem;
  }
  .top_category h3 span::before ,
  .top_category h3 span::after {
    width: 6vw;
  }
  .top_category h3 span::before {
    left: -10vw;
  }
  .top_category h3 span::after {
    right: -10vw;
  }
  .top_category .box {
    max-width: 100%;
    margin-bottom: -6vw;
  }
  .top_category .box section {
    width: 100%;
    margin-bottom: 6vw;
  }
  .top_category .box section:nth-of-type(odd) {
    margin-right: 0;
  }
  .top_category .box section a h4 {
    font-size: 1.8rem;
    width: 100%;
    padding: 0 1.5em;
  }
  .top_brand {
    padding: 10vw 4%;
  }
  .top_brand h3 {
    font-size: 2.0rem;
  }
  .top_brand h3 span::before ,
  .top_brand h3 span::after {
    width: 6vw;
  }
  .top_brand h3 span::before {
    left: -10vw;
  }
  .top_brand h3 span::after {
    right: -10vw;
  }
  .top_brand .box {
    max-width: 100%;
    margin-bottom: -8vw;
  }
  .top_brand .box p {
    width: calc((100% - (4vw * 1)) / 2);
    margin-bottom: 8vw;
  }
  .top_brand .box p:not(:nth-of-type(3n)) {
    margin-right: 0;
  }
  .top_brand .box p:not(:nth-of-type(2n)) {
    margin-right: 4vw;
  }





  /*item-list*/
  .item-list main .category_name {
    max-width: 100%;
    margin-bottom: 10vw;
    padding: 0 4%;
    font-size: 2.0rem;
  }
  .item-list main .wrap {
    max-width: 100%;
    padding: 0 4%;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }
  .item-list main .wrap article {
    order: 1;
    width: 100%;
    margin-left: 0;
    margin-bottom: 10vw;
  }
  .item-list main .wrap article .count_sort {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    margin-bottom: 1em;
  }
  .item-list main .wrap article .count_sort p {
    font-size: 1.3rem;
    letter-spacing: .2em;
    margin-right: 0;
    margin-bottom: 1em;
  }
  .item-list main .wrap article .count_sort dl {
    display: flex;
    margin-left: auto;
    font-size: 1.3rem;
  }
  .item-list main .wrap article .count_sort dl dt {
    margin-right: 1em;
  }
  .item-list main .wrap article .count_sort dl dd:not(:last-of-type) {
    margin-right: 1em;
  }
  .item-list main .wrap article .list {
    margin-bottom: -10vw;
    display: flex;
    flex-wrap: wrap;
  }
  .item-list main .wrap article .list section {
    margin-bottom: 10vw;
    width: 100%;
    margin-right: 0 !important;
  }
  .item-list main .wrap article .list section a {
    width: 100%;
  }
  .item-list main .wrap article .list section a .img {
    width: 100%;
    height: auto;
    margin-bottom: 5vw;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .item-list main .wrap article .list section a .img img {
    width: auto;
    max-width: 100%;
    height: auto;
    object-fit: inherit;
  }
  .item-list main .wrap article .list section a h3 {
    font-size: 1.6rem;
    letter-spacing: .1em;
    margin-bottom: .6em;
  }
  .item-list main .wrap article .list section a .price {
    font-size: 2.0rem;
  }
  .item-list main .wrap article .list section a .price em {
    font-size: 1.4rem;
  }
  .item-list main .wrap article .list section a .price em i {
    font-size: 1.2rem;
  }
  .item-list main .wrap aside {
    order: 2;
    width: 100%;
    margin-right: 0;
  }
  .item-list main .wrap aside section:not(:last-of-type) {
    margin-bottom: 6vw;
  }
  .item-list main .wrap aside section ul li a {
    font-size: 1.4rem;
    letter-spacing: .05em;
    padding: .8em .5em;
  }
  .item-list main .wrap aside section ol li:not(:last-of-type) {
    margin-bottom: 5vw;
  }



  /*item-detail*/
  .item-detail main .wrap {
    max-width: 100%;
    padding: 0 4%;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }
  .item-detail main .wrap article {
    order: 1;
    width: 100%;
    margin-left: 0;
    margin-bottom: 10vw;
  }
  .item-detail main .wrap article .box_r h3 {
    font-size: 2.0rem;
  }
  .item-detail main .wrap article .box_r .price span {
    font-size: 2.0rem;
    letter-spacing: .05em;
  }
  .item-detail main .wrap article .box_r .price em {
    font-size: 1.4rem;
    letter-spacing: .2em;
  }
  .item-detail main .wrap article .box_r .price em i {
    font-size: 1.2rem;
  }
  .item-detail main .wrap article .box_r .comment {
    font-size: 1.4rem;
    letter-spacing: .1em;
  }
  .item-detail main .wrap article .box_r .order_info {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .item-detail main .wrap article .box_r .order_info .back_stock {
    width: 100%;
  }
  .item-detail main .wrap article .box_r .order_info .back_stock a {
    width: 100%;
    text-align: center;
  }
  .item-detail main .wrap article .box_r .order_info .soldout {
    width: 100%;
  }
  .item-detail main .wrap article .box_r .order_info .soldout span {
    width: 100%;
    text-align: center;
  }
  .item-detail main .wrap article .box_r .order_info dl {
    width: 100%;
    margin-right: 0;
    margin-bottom: .8em;
  }
  .item-detail main .wrap article .box_r .order_info dl dt {
    margin-right: .5em;
  }
  .item-detail main .wrap article .box_r .order_info dl dd input {
    width: 5em;
    padding:.4em .8em;
    font-size: 1.6rem;
  }
  .item-detail main .wrap article .box_r .order_info .cart_btn {
    width: 100%;
    margin-right: 0;
    margin-bottom: .8em;
  }
  .item-detail main .wrap article .box_r .order_info .back_stock + .cart_btn {
    margin-left: 0;
    padding-top: 1em;
  }
  .item-detail main .wrap article .box_r .order_info .cart_btn a {
    width: 100%;
    text-align: center;
  }
  .item-detail main .wrap article .box_r .order_info .icon_favorite a i {
    font-weight: 900;
  }
  .item-detail main .wrap article .box_r .order_info .favorite_sp a {
    display: block;
    background: #;
    border: solid 1px #;
    color: #FFF;
    padding: .4em 1.5em;
  }
  .item-detail main .wrap article .box_r .order_info .no_sell {
    text-align: left;
  }
  .item-detail main .wrap aside {
    order: 2;
    width: 100%;
    margin-right: 0;
  }
  .item-detail main .wrap aside section:not(:last-of-type) {
    margin-bottom: 6vw;
  }
  .item-detail main .wrap aside section ul li a {
    font-size: 1.4rem;
    letter-spacing: .05em;
    padding: .8em .5em;
  }
  .item-detail main .wrap aside section ol li:not(:last-of-type) {
    margin-bottom: 5vw;
  }
  .item-detail main .item_list {
    padding: 10vw 0;
  }
  .item-detail main .item_list h3 {
    font-size: 2.0rem;
  }
  .item-detail main .item_list h3 span::before ,
  .item-detail main .item_list h3 span::after {
    width: 6vw;
  }
  .item-detail main .item_list h3 span::before {
    left: -10vw;
  }
  .item-detail main .item_list h3 span::after {
    right: -10vw;
  }
  .item-detail main .item_list .list {
    max-width: 100%;
    padding: 0 4%;
    margin-bottom: -8vw;
    display: flex;
    flex-wrap: wrap;
  }
  .item-detail main .item_list .list section {
    margin-bottom: 8vw;
    width: calc((100% - (4vw * 1)) / 2);
  }
  .item-detail main .item_list .list section:not(:nth-of-type(4n)) {
    margin-right: 0;
  }
  .item-detail main .item_list .list section:not(:nth-of-type(2n)) {
    margin-right: 4vw;
  }
  .item-detail main .item_list .list section a .img {
    height: 48vw;
    margin-bottom: 5vw;
  }
  .item-detail main .item_list .list section a h4 {
    font-size: 1.4rem;
    letter-spacing: .1em;
  }
  .item-detail main .item_list .list section a .price {
    font-size: 1.4rem;
  }
  .item-detail main .item_list .list section a .price em {
    font-size: 1.4rem;
  }
  .item-detail main .item_list .list section a .price em i {
    font-size: 1.2rem;
  }


  /*news-list*/
  .news-list main .news_list_box {
    max-width: 100%;
    padding: 0 4%;
  }
  .news-list main .news_list_box section:not(:last-of-type) {
    margin-bottom: 6vw;
  }
  .news-list main .news_list_box section a {
    flex-direction: column;
    padding: 1em 1em;
  }
  .news-list main .news_list_box section a time {
    width: 100%;
    padding-left: 0;
    font-size: 1.4rem;
  }
  .news-list main .news_list_box section a p {
    width: 100%;
    padding-right: 0;
  }

  /*news-detail*/
  .news-detail main {
    padding-bottom: 10vw;
  }
  .news-detail main .title_time {
    max-width: 100%;
    padding: 0 4%;
  }
  .news-detail main .title_time .box_in {
    padding: 3vw 2vw;
    border-top: solid 1px #FFF;
    border-bottom: solid 1px #FFF;
  }
  .news-detail main .title_time .box_in time {
    font-size: 1.4rem;
    margin-bottom: .6em;
  }
  .news-detail main .title_time .box_in h3 {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .news-detail main .title_time .box_in h3 span {
    font-size: 2.0rem;
    letter-spacing: .1em;
  }
  .news-detail main .contents {
    max-width: 100%;
    padding: 0 4%;
    padding-top: 6vw;
    padding-bottom: 6vw;
    font-size: 1.6rem;
    letter-spacing: .1em;
  }
  .news-detail main .back {
    max-width: 100%;
    padding: 0 4%;
    font-size: 1.6rem;
  }
  

}
