@charset "UTF-8";

:root {
  /* font */
  --font-ja: "Roboto", "Zen Kaku Gothic New", serif;
  --font-en: "Roboto", serif;
  
  --color-primary: #0099E0;
  
  --headerHight: 7rem;
}

body{
  line-height: 1.4;
  letter-spacing: 0.075em;
  color: #2C2C2C;
}

/**************************
RefinedSearch
**************************/
.s-headerModalBox__outer{
  border-radius: 5px;
  box-shadow: 0 0 1rem rgba(0,0,0,.16);
}

.s-headerModalBoxHeding{
  background-color: inherit;
  border-bottom: 1px solid #DEDEDE;
}

.s-headerModalBoxHeding__closeBtn{
  color: #B9B9B9;
}
.s-headerModalBoxHeding__closeBtn::before{order: 2; font-size: 1.8rem;}
.s-headerModalBoxHeding__closeBtn > span{order: 1; font-size: 1.3rem;}

.s-headerModalBoxHeding__title {
  font-size: 1.4rem;
  color: #888888;
  letter-spacing: 0.1em;
}

.s-headerRefinedSearchBox-item__title{
  color: #888888;
}

.s-headerRefinedSearchBox-item{
  color: #888888;
}

.s-headerRefinedSearchBox-item input[type=text],
.s-headerRefinedSearchBox-item input[type=password],
.s-headerRefinedSearchBox-item input[type=tel],
.s-headerRefinedSearchBox-item input[type=email],
.s-headerRefinedSearchBox-item input[type=text],
.s-headerRefinedSearchBox-item input[type=number] {
  width: 100%;
  height: 5rem;
  padding: 0 1.5rem 0 1.5rem; 
  border: solid 1px #B9B9B9;
  background-color: inherit;
  border-radius: 0.4rem;
  outline: none;
  line-height: 5rem;
  color: #888888;
}

.s-headerRefinedSearchBox-item select{
  height: 5rem;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 1.5rem;
  line-height: 5rem;
  border: solid 1px #B9B9B9;
  border-radius: 0.4rem;
  color: #888888;
}

.s-headerRefinedSearchBox-item label{
  font-size: 1.4rem;
}

.s-headerRefinedSearchBox-item input[type=radio]{
  border: 1px solid #B9B9B9;
}

.s-headerRefinedSearchBox-item input[type=radio]:checked {
  border-color: #888888;
}

.s-headerRefinedSearchBox-item input[type=radio]:checked::after{
  background-color: #888888;
}

.s-headerRefinedSearchBox-item input[type=checkbox] {
  border: 1px solid #8D857C;
}

.s-headerRefinedSearchBox-item input[type=checkbox]:checked{
  background-color: #8D857C;
}


.s-headerRefinedSearchBox-item__checkList{
  border: none;
  background: #FAFAFA;
}



.headerRefinedSearchBoxBtn .c-btn{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 5rem;
  padding-top: 0;
  padding-bottom: 0;
  border-radius: 2.5rem;
  background: #888888;
  border: 1px solid #888888;
  color: #FFFFFF!important;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.428571428571429;
}

.headerRefinedSearchBoxBtn .c-btn--white{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 5rem;
  padding-top: 0;
  padding-bottom: 0;
  border-radius: 2.5rem;
  background: #FFFFFF;
  color: #888888!important;
}



@media screen and (min-width: 768px) {
  .s-headerModalBoxHeding__title {
    font-size: 1.5rem;
  }
  
  .s-headerModalBoxFooterBtn__close,
  .s-headerModalBoxFooterBtn__next{
    max-width: 24rem;
  }
}


@media screen and (min-width: 992px) {
  .s-headerModalBox__outer{
    border-radius: 10px;
  }
}



/**************************
prodcutList
**************************/
@media screen and (min-width: 576px) {
  .m-productLine__item {
    width: calc(25% - 1.515rem);
  }
}

.c-product-head .rankIcon{
  display: block;
  width: 3.5rem;
  position: absolute;
  top: 0.4rem;
  right: 0.4rem;
  z-index: 1;
}
.c-product-head .rankIcon img{
  display: block;
  width: 100%;
  height: auto;
}

.c-product-head__favorite{
  top: 0.4rem;
  right: 0.4rem;
}

@media screen and (min-width: 768px) {
  .c-product-head .rankIcon{
    width: 4.4rem;
    top: 0.8rem;
    right: 0.8rem;
  }
  
  
  .c-product-head__favorite{
    top: 0.8rem;
    right: 0.8rem;
  }
}

.c-product-head__picture::before,
.c-productUser-head__picture::before{
  padding-top: 100%;
}

.c-product-head__status,
.c-productUser-head__status{
  margin-top: 1rem;
  position: static;
}

.c-product-sIcon,
.c-productUser-sIcon{
  gap: 0.3rem 0.3rem;
}

.c-product-sIcon > li,
.c-productUser-sIcon > li{
  height: 1.8rem;
}

.c-product-head__image--soldout,
.c-productUser-head__image--soldout{
  height: 1.8rem;
}

.c-sIcon{
  display: inline-flex;
  justify-content: center;
  align-items: center;
  height: 1.8rem;
  padding: 0.2rem 0.8rem 0;
  border-radius: 0.9rem;
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #FFFFFF;
  background: #656565;
}

.c-product-sIcon > li:not(:has(*)),
.c-productUser-sIcon > li:not(:has(*)){
  display: none;
}

.c-product-sIcon > li > img,
.c-productUser-sIcon > li > img{
  display: block;
  width: auto;
  height: 100%;
}

.c-product-body{
  margin-top: 1rem;
}

.c-product-body__title-name{
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.075em;
  line-height: 1.4;
}


.c-product-body__price{
  margin-top: 0.5rem;
  font-size: 1.5rem;
  font-weight: 400;
  color: #2C2C2C;
}


.c-product-body__price--normal{
  
}

.c-product-body__price--discount{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  color: var(--color-red);
  gap: 0 0.5rem;
}

.c-product-body__price--discount .c-product-body__price--normal{
  color: #656565;
  font-size: 1.3rem;
}


.c-product-body__price-subsc + .c-product-body__price-subsc{
  margin-top: 0.5rem;
}

.c-product-body__price-subsc-icon{
  border-radius: 0;
  font-size: 1.3rem;
  font-weight: 400;
  color: #2C2C2C;
  border-color: #D8D8D8;
}

.c-product-body__price-subsc-price--discount,
.c-product-body__price-subsc-price{
  color: #2C2C2C;
}

.c-product-body__price-subscPromotion{
  font-size: 1.4rem;
  padding-left: 0;
  padding-right: 0;
}

.c-product-body__price-subscPromotion-caption{
  font-size: 1.1rem;
  font-weight: 400;
}

.c-product-body__price-subscPromotion-price{
  font-weight: 400;
}

@media screen and (min-width: 768px) {  
  .c-product-body__title-name{
    font-size: 1.7rem;
  }
  .c-product-body__price-subscPromotion-caption{
    font-size: 1.4rem;
  }
}


.m-productLine-col3-md6 .c-product-body__title-name{
  font-size: 1.2rem;
}

.c-typeListProduct-pictureBox__picture::before{
  padding-top: 100%;
}

.c-formInput-item__alert.c-formInput-item__alert--active {
  font-weight: bold;
}