/* ----------------------------------------------------------
BrandList
---------------------------------------------------------- */
.brandbody {
 width: 100%;
 height: auto;
 display: block;
}

/* Brandtitle */
.brand_sectitle {
 width: 100%;
 height: auto;
 display: flex;
 flex-direction: column;
 text-align: center;
 margin-bottom: 40px;
}
.brand_sectitle h2 {
 order: 2;
 font-size:12px;
 font-weight: 400;
 line-height: 1em;
 color:var(--color-666);
 margin-bottom: 0em;
}
.brand_sectitle p {
 order: 1;
 font-size:24px;
 font-weight: 400;
 line-height: 1em;
 font-family: var(--font-en);
 color:var(--color-black);
 margin-bottom: 0.3em;
}


/* brand list */
.brandlist {
 width: 100%;
 height: auto;
 display: flex;
 justify-content: center;
 flex-wrap: wrap;
 gap:2%;
 margin-bottom: 100px;
}
.brandlist li {
 height: auto;
 display: block;
 text-align: center;
 margin-bottom: 20px;
}
.brandlist li a {
 width: 100%;
 height: 100%;
 display: block;
 text-decoration: none;
 padding:2em 0em;
 background-color: var(--color-white);
 border-radius: 10px;
 box-shadow:0px 0px 0px rgba(0,0,0,0);
 transition: .4s all;
}
.brandlist li a:hover {
 box-shadow:0px 5px 15px rgba(0,0,0,0.15);
}
.brandlist li a .brl_logo {
 width:30%;
 height: auto;
 display: block;
 margin:0 auto 10px;
}
.brandlist li a p.brl_title {
 font-size: clamp(10px, 0.8vw, 14px);
 line-height: 1.25em;
 margin:0;
}

.brandlist.list-flagship li {
 flex:0 0 calc((100% - 2% * 2) / 3);
}

.brandlist.list-professional li {
 flex:0 0 calc((100% - 2% * 5) / 6);
}

.brandlist.list-yumenoshima li {
 flex:0 0 calc((100% - 2% * 4) / 5);
}


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

.brandlist li {
 margin-bottom: 15px;
}

.brandlist.list-flagship li {
 flex:0 0 calc((100% - 2% * 2) / 3);
}

.brandlist.list-professional li {
 flex:0 0 calc((100% - 2% * 3) / 4);
}

.brandlist.list-yumenoshima li {
 flex:0 0 calc((100% - 2% * 2) / 3);
}

}


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

.brandlist li {
 margin-bottom: 5px;
}

 .brandlist.list-flagship li {
 flex:0 0 calc((100% - 2% * 1) / 2);
}

.brandlist.list-professional li {
 flex:0 0 calc((100% - 2% * 2) / 3);
}

.brandlist.list-yumenoshima li {
 flex:0 0 calc((100% - 2% * 1) / 2);
}

}



/* ----------------------------------------------------------
BrandDetail
---------------------------------------------------------- */

/* Pankuzu */
.ptbc_pro ul {
 width: 97%;
 height: auto;
 display: flex;
 justify-content: flex-end;
 flex-wrap: wrap;
 margin:100px 3% 10px 0;
}
.ptbc_pro ul li {
 font-size:12px;
 font-weight: 400;
 line-height: 1.5em;
 color:var(--color-666);
 margin:0;
}
.ptbc_pro ul li:after {
 content:" > ";
 margin-right:0.5em;
}
.ptbc_pro ul li:last-child:after {
 content:"";
 margin-right:0em;
}
.ptbc_pro ul li a {
color:var(--color-666);
text-decoration: none;
}
.ptbc_pro ul li a:hover {
color:var(--color-2nd);
text-decoration: underline;
}


/* Toppimage */
.topimagemm {
 width: 100%;
 height: auto;
 display: block;
}


/* Products List */
.productlist {
 width: 100%;
 height: auto;
 display: block;
}

ul.productlist {
 width: 100%;
 height: auto;
 display: flex;
 justify-content: center;
 flex-wrap: wrap;
 margin-bottom: 100px;
 gap:5%;
}
ul.productlist li {
flex:0 0 calc((100% - 5% * 3) / 4);
height: auto;
display: block;
}
ul.productlist li a {
 width: 100%;
 height: auto;
 display: block;
 text-decoration: none;
 padding:5px;
 transition: .4s all;
}
ul.productlist li a:hover {
 background-color: var(--color-white);
 box-shadow: 0px 1px 15px rgba(0,0,0,0.2);
}
ul.productlist li a .proli_img {
 width: 100%;
 height: auto;
 display: block;
}
ul.productlist li a .proli_cc {
 width: 100%;
 height: auto;
 display: block;
 padding:1em 0.25em;
}
ul.productlist li a .proli_cc h3 {
 font-size:12px;
 font-weight: 400;
 font-family: var(--font-min);
 line-height: 1.5em;
 color:var(--color-black);
 margin-bottom: 0.25em;
}
ul.productlist li a .proli_cc h4 {
 font-size:16px;
 font-weight: 500;
 font-family: var(--font-min);
 line-height: 1.5em;
 color:var(--color-black);
 margin-bottom: 0.75em;
}
ul.productlist li a .proli_cc p {
 text-align: right;
 font-weight: 500;
 line-height: 1em;
 color:var(--color-black);
 margin:0;
}
ul.productlist li a .proli_cc p strong {
 font-size:16px;
 font-weight: 500;
}
ul.productlist li a .proli_cc p span {
 font-size:10px;
 font-weight:500;
}

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

ul.productlist {
 width: 100%;
 height: auto;
 display: flex;
 justify-content: flex-start;
 flex-direction: column;
 flex-wrap: wrap;
 margin-bottom: 100px;
 gap:0;
}
ul.productlist li {
flex:0 0 calc((100% - 0 * 0) / 1);
height: auto;
display: block;
margin-bottom: 20px;
}


}


/* Shop info */
.shopinfomm {
 width:70%;
 height: auto;
 display: block;
 margin:0 auto 100px;
 border:1px solid var(--color-999);
 border-radius: 10px;
 padding:3em;
}
.shopinfo_sectitle {
 width: 100%;
 height: auto;
 display: flex;
 flex-direction: column;
 text-align: center;
 margin-bottom: 20px;
}
.shopinfo_sectitle h2 {
 order: 2;
 font-size:12px!important;
 font-weight: 400;
 line-height: 1em;
 color:var(--color-666);
 margin-bottom: 0em;
}
.shopinfo_sectitle p {
 order: 1;
 font-size:24px!important;
 font-weight: 400;
 line-height: 1em;
 font-family: var(--font-en);
 color:var(--color-black);
 margin-bottom: 0.3em;
}
.shopinfomm h3 {
 font-size:20px;
 font-weight: 500;
 font-family: var(--font-min);
 color: var(--color-black);
 line-height: 1.5em;
 text-align: center;
 margin-bottom: 0.5em;
}
.shopinfomm p {
 font-size:14px;
 line-height: 1.5em;
 text-align: center;
 color:var(--color-black);
 margin:0;
}
.shopinfomm .shopsns {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
  margin:0 auto;
}
.shopinfomm .shopsns li {
  width:25px;
  height: 25px;
  display: block;
  margin:0 1%;
}
.shopinfomm .shopsns li a {
  width:25px;
  height: 25px;
  display: block;
  text-indent: -9999px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 22px 22px;
  transition: .4s all;
}
.shopinfomm .shopsns li a:hover {
  opacity: 0.2;
}


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

.shopinfomm {
 width:100%;
 border-top:1px solid var(--color-999);
 border-right:none;
 border-top:1px solid var(--color-999);
 border-left:none;
 border-radius: 0px;
 padding:2.5em 0em;
}
.shopinfo_sectitle h2 {
 text-align: center!important;
}
.shopinfo_sectitle p {
 font-size:18px!important;
 text-align: center!important;
}
.shopinfomm h3 {
 font-size:16px;
 font-weight: 600;
 text-align: left;
}
.shopinfomm p {
 text-align: left;
}

}



/* Inquiry Button */
p.brands_bn {
width:fit-content;
height: auto;
display: block;
margin:0 auto;
}
p.brands_bn a {
 width: 100%;
 height: auto;
 display: block;
 padding:1em 3em 1.5em;
 text-align: center;
 font-size:16px;
 font-weight: 500;
 font-family: var(--font-min);
 color:var(--color-white);
 text-decoration: none;
 background-color: var(--color-1st);
 border-radius: 10px;
 transition: .4s all;
}
p.brands_bn a span {
 display: block;
 padding:0.5em 0 0 0;
 font-size: 10px!important;
 line-height: 1em;
}
p.brands_bn a:hover {
 background-color: var(--color-2nd);
}

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

 p.brands_bn {
  width: 100%;
 }
 p.brands_bn a {
  padding:0.5em 1em 1em;
 font-size:14px;
 }
 p.brands_bn a span {
 font-size: 8px!important;
 }

}