.c_brand * {
  box-sizing: border-box;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
}

.c_brand_head {
  display: flex;
  justify-content: space-between;
  padding: 30px 0 50px;
}

.c_brand_ttl {
  font-family: 'Noto Sans', sans-serif;
  letter-spacing: 0.1em;
  font-size: 28px;
  line-height: 1em;
  padding: 0px;
}

a.c_brand_fav_link {
  width: 300px;
  height: 43px;
  text-align: center;
  font-size: 13px;
  color: #fff;
  border-radius: 21.5px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #0b3080;
  text-decoration: none;
  position: relative;
}

a.c_brand_fav_link:hover {
  opacity: .6;
}

a.c_brand_fav_link::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  width: 6px;
  height: 6px;
  border: 1px solid #fff;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translateX(-25%) translateY(-50%) rotate(45deg);
}

.c_brand_txt {
  text-indent: 28px;
  line-height: 26px;
  margin-bottom: 30px;
  position: relative;
  font-size: 15px;
  font-weight: bold;
}

.c_brand_txt::before {
  content: '';
  width: 26px;
  height: 26px;
  position: absolute;
  top: 0;
  left: 0;
  background: url('/res/p/brand/img/brand_list.png') no-repeat 0 0;
}

.c_brand_tab {
  margin-bottom: 30px;
}

.c_brand_tab ul {
  display: flex;
  justify-content: center;
}

.c_brand_tab ul li {
  width: 180px;
  height: 45px;
  line-height: 40px;
  font-size: 14px;
  font-weight: normal;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 40px;
  color: #999;
  cursor: pointer;
  letter-spacing: 0.1em;
  border: 2px solid #ddd;
  margin: 0 7px;
}

.c_brand_tab ul li.is-active {
  background-color: #111;
  color: #fff;
  border: 2px solid #111;
}

.c_brand_tab ul li.is-active.women {
  background-color: #f98da6;
  color: #fff;
  border: 2px solid #f98da6;
}


.c_brand_tab ul li.is-active.men {
  background-color: #689be7;
  color: #fff;
  border: 2px solid #689be7;
}


.c_brand_tab ul li.is-active.kids {
  background-color: #5ce49f;
  color: #fff;
  border: 2px solid #5ce49f;
}

.c_brand_tab ul li.is-active.goods {
  background-color: #c5beaf;
  color: #fff;
  border: 2px solid #c5beaf;
}


.c_brand_downselect {
  margin-bottom: 30px;
  display: flex;
  justify-content: space-between;
}

/*お気に入りチェック*/
.c_brand_tab.is-passive,
.c_brand_sort.is-passive {
  display: none;
}

.c_brand_fav_check {
  /*display: flex;*/
  align-items: center;
  justify-content: center;
  display: none;
}

.c_brand_fav_check_toggle {
  width: 46px;
  height: 24px;
  position: relative;
  border: none;
  border-radius: 12px;
  background-color: #BCBDBD;
  cursor: pointer;
}

.c_brand_fav_check_toggle.is-active {
  background-color: #0b3080;
}

.c_brand_fav_check_toggle::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  left: 1px;
  top: 1px;
  background: #FFFFFF;
  border: 1px solid #BCBDBD;
}

.c_brand_fav_check_toggle.is-active::after {
  left: auto;
  right: 1px;
  top: 1px;
}

.c_brand_fav_check_toggle_label {
  font-size: 14px;
  margin-left: 10px;
}

.c_brand_sort {
  margin-left: auto;
  font-size: 14px;
  display: flex;
  align-items: start;
  display: none;
}

.c_brand_sort_list {
  position: relative;
}

.c_brand_sort_list_label {
  cursor: pointer;
}

.c_brand_sort_list_list {
  display: block;
  /*position: absolute;*/
}

.c_brand_sort_list_list.is-active {
  display: block;
}

.c_brand_sort_list_list li {
  cursor: pointer;
  white-space: nowrap;
  display: inline-block;
  margin: 0 5px;
  color: #003399;
}

.c_brand_sort_list_list li.is-active {
  color: #111;
  font-weight: bold;
}


.c_brand_list {
  display: none;
}

.c_brand_cnt_inr-all .c_brand_list-all.is-active,
.c_brand_cnt_inr-women .c_brand_list-women.is-active,
.c_brand_cnt_inr-men .c_brand_list-men.is-active,
.c_brand_cnt_inr-kids .c_brand_list-kids.is-active,
.c_brand_cnt_inr-goods .c_brand_list-goods.is-active,
.c_brand_cnt_inr-fav .c_brand_list-fav.is-active {
  display: block;
}

.c_brand_list_initial_label {
  margin-bottom: 25px;
  height: 34px;
  line-height: 34px;
  text-indent: 20px;
  font-weight: bold;
  background: #f0f0f0;
  font-size: 18px;
  color: #111;
  letter-spacing: normal;
}

.c_brand_list_block_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 20px;
}

.c_brand_list_block {
  width: 33.3%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: relative;
  margin-bottom: 50px;
  padding-left: 10px;
  padding-right: 25px;
}

.c_brand_list_block .c_brand_list_block_icon-new {
  z-index: 1;
  position: absolute;
  width: 35px;
  height: 35px;
  color: #fff;
  background-color: #ff0000;
  border-radius: 50%;
  text-align: center;
  top: -8px;
  left: -2px;
  font-size: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.c_brand_list_block img {
  width: 100%;
  height: auto;
}

.c_brand_list_block_logo_img img {
  margin: -18px 0 -5px;
  position: relative;
}

.c_brand_list_block_wrap::before {
  content: "";
  display: block;
  width: 33.3%;
  order: 1;
}

.c_brand_list_block_wrap::after {
  content: "";
  display: block;
  width: 33.3%;
}

.c_brand_list_block_img {
  width: 160px;
}

.c_brand_list_block_logo {
  width: 190px;
}

.c_brand_list_block_logo_name {
  text-align: center;
}

.c_brand_list_block_sex {
  padding-top: 15px;
  display: flex;
  justify-content: center;
}

.c_brand_list_block_sex p {
  padding-top: 2px;
  padding-bottom: 2px;
  margin-left: 3px;
  margin-right: 3px;
  padding-left: 8px;
  padding-right: 8px;
  font-size: 11px;
  text-align: center;
  border-radius: 12px;
  font-weight: bold;
  letter-spacing: 0.05em;
}

.c_brand_list_block_sex p.c_brand_list_block_sex-women {
  border: 1px solid #f98da6;
  color: #f98da6;
}

.c_brand_list_block_sex p.c_brand_list_block_sex-men {
  border: 1px solid #689be7;
  color: #689be7;
}

.c_brand_list_block_sex p.c_brand_list_block_sex-kids {
  border: 1px solid #5ce49f;
  color: #5ce49f;
}

.c_brand_list_block_sex p.c_brand_list_block_sex-goods {
  border: 1px solid #c5beaf;
  color: #c5beaf;
}


.c_brand_list_block_info {
  width: 190px;
  margin-top: 15px;
  margin-left: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

.c_brand_list_block_info>p {
  margin-left: 5px;
  margin-right: 5px;
}

.c_brand_list_block_info_line {
  order: 3;
}

.c_brand_list_block_info_line a {
  display: block;
  background: url('/res/s/common/img/ft_sns_05.png') no-repeat center center;
  background-size: contain;
  width: 30px;
  height: 30px;
  text-indent: -9999px;
}

.c_brand_list_block_info_fav .ON {
  cursor: pointer;
  display: block;
  width: 26px;
  height: 26px;
  cursor: pointer;
  background: url('/res/p/brand/img/brand_list.png') no-repeat 0 -50px;
}

.c_brand_list_block_info_fav .OFF {
  cursor: pointer;
  display: block;
  width: 26px;
  height: 26px;
  cursor: pointer;
  background: url('/res/p/brand/img/brand_list.png') no-repeat 0 0;
}

.c_brand_list_block_info_fav_reset {
  line-height: 1;
}

.c_brand_list_block_info_fav_reset a {
  white-space: nowrap;
  color: #888;
  font-size: 11px;
  font-weight: normal;
  display: inline-block;
  border: 1px solid #ccc;
  padding: 6px 6px;
  border-radius: 6px;
  text-decoration: none;
}



ul.c_brand_initial {
  margin: 0 0 45px;
  clear: both;
}

ul.c_brand_initial {
  overflow: hidden;
}

ul.c_brand_initial li {
  min-width: 22px;
  margin: 0 8px 0 0;
  line-height: 26px;
  float: left;
}


ul.c_brand_initial li a {
  height: 35px;
  padding: 0 15px;
  text-align: center;
  border: 1px solid #aaa;
  background-color: #fff;
  background-image: gradient(linear, left top, left bottom, color-stop(0%, #fefefe), color-stop(100%, #f1f1f1));
  border-radius: 5px;
  display: block;
  line-height: 35px;
}

ul.c_brand_initial li a:hover {
  text-decoration: none;
}


#new_brand {
  margin-bottom: 60px;
  font-size: 0;
  background: #f3f3f3;
  border-radius: 10px;
  padding: 20px;
}

#new_brand h2 {
  font-size: 15px;
  font-weight: bold;
  margin: 10px 5px;
  letter-spacing: 0.05em
}

#new_brand h2 em {
  background: #ff0000;
  color: #fff;
  font-size: 9px;
  margin: -10px 7px 0 0;
  padding: 1px 5px;
  border-radius: 5px;
  position: relative;
  vertical-align: middle;
}

#new_brand h3 {
  display: none;
}

#new_brand .brand_new {
  clear: both;
  display: inline-block;
  width: 550px;
  margin: 5px 10px 0px 10px;
  vertical-align: top;
}

#new_brand .brand_new a {
  display: block;
  display: table;
  margin: 20px 0 10px
}

#new_brand .brand_new img {
  width: 100%;
  height: auto;
}

#new_brand .brand_new .brand_new_l {
  width: 27%;
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}

#new_brand .brand_new .brand_new_l em {
  display: block;
  color: #666;
  font-size: 10px;
  margin-top: -5px;
}

#new_brand .brand_new .brand_new_r {
  width: 30%;
  display: table-cell;
  vertical-align: top;
}

#new_brand .brand_new p {
  display: table-cell;
  font-size: 12px;
  line-height: 1.8em;
  text-align: left;
  width: 43%;
  padding-left: 15px;
  vertical-align: top;
  letter-spacing: 0.05em;
}

#new_brand a:link {
  color: #333;
  text-decoration: none;
}

#new_brand a:visited {
  color: #333;
  text-decoration: none;
}

#new_brand a:hover {
  color: #999;
  text-decoration: none;
}

#new_brand a:active {
  color: #999;
  text-decoration: none;
}

/* アラート */
.popup_alert {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, .7);
}

.popup_alert .txt {
  color: #fff;
  font-size: 14px;
  padding: 20px;
  line-height: 1.5;
  text-align: left;
}