/* ========== 公開日時制御 ========== */

/* デフォルト: coming soon 表示 / カートエリア非表示 */
.branch_icon_area {
  display: flex;
  justify-content: center;
  padding-block: 0.5rem;
}

.branch_main_area {
  display: none;
}

/* 5/5 0:00〜5/8 0:00: プラチナ会員のみカートエリア表示 */
body:has(.is_release_before):has(.is_platinum) .branch_icon_area {
  display: none;
}

body:has(.is_release_before):has(.is_platinum) .branch_main_area {
  display: block;
}

/* 合わせ買い商品は is_platinum 関係なし（5/8以降のみ切り替え） */
body:has(.is_release_before):has(.is_platinum) .buy_dec .branch_icon_area {
  display: block;
}

body:has(.is_release_before):has(.is_platinum) .buy_dec .branch_main_area {
  display: none;
}

/* 5/8 0:00〜: 全員カートエリア表示 */
body:has(.is_release_after) .branch_icon_area {
  display: none;
}

body:has(.is_release_after) .branch_main_area {
  display: block;
}

.branch_icon_coming {
  color: #fff;
  line-height: 1.1;
  background-color: #0e6eb8;
  text-align: center;
  padding: 0.3em 1em;
  font-size: min(calc(24 / 768 * 100vw), 16px);
}
/* ========== 価格エリア ========== */

html {
  scroll-behavior: smooth;
}

.head_price {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2% 3%;
}

.item_main_price {
  color: #333;
}

/* .fav_btn {
  background: none;
  border: none;
  padding: 4px;
  line-height: 0;
  flex-shrink: 0;
}

.fav_btn svg {
  width: 28px;
  height: 28px;
  stroke: #aaa;
  fill: none;
  display: block;
} */

/* ========== カートエリア ========== */
.head_cart {
  padding: 0 3% 2%;
}

.cart_row {
  display: flex;
  align-items: stretch;
  gap: 6px;
}

/* .qty_wrap {
  flex-shrink: 0;
} */

/* .qty_select {
  height: 46px;
  padding: 0 6px;
  border: 1px solid #bbb;
  border-radius: 4px;
  font-size: 15px;
  background: #fff;
  appearance: auto;
} */

/* .cart_btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 46px;
  background: #1a1a1a;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-weight: bold;
  letter-spacing: 0.02em;
}

.cart_btn_a {
  font-size: min(calc(26 / 768 * 100vw), 14px);
}

.cart_btn_b {
  font-size: min(calc(22 / 768 * 100vw), 12px);
} */

/* ========== ページ内ナビ ========== */
.page_link {
  display: block;
  width: calc(440 / 768 * 100%);
  padding: 2% 0;
  margin: 0 auto;
}

/* ========== 区切り ========== */
.bg_divider {
  height: 4px;
}

/* ========== パシャセクション ========== */
.pasha_section {
  background-image: url(../img/pasha_bg.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
  padding-block: 2rem;
}

.pasha_inner {
  width: calc(735 / 768 * 100%);
  margin-left: 1%;
}

.pasha_bnr img {
  width: 100%;
}

.pasha_bnr {
  padding-block: 2rem;
  display: block;
}

/* ========== 一緒に買うセクション ========== */

.buy_inner {
  display: grid;
  grid-template-columns: min(calc(280 / 768 * 100vw), 280px) 1fr;
  align-items: center;
  border: min(calc(8 / 768 * 100vw), 8px) solid #b3d7f1;
  border-radius: min(calc(20 / 768 * 100vw), 20px);
  gap: 0.75rem;
  overflow: hidden;
}

.buy_item_img {
  width: min(calc(280 / 768 * 100vw), 280px);
  height: 100%;
  max-height: 453px;
  aspect-ratio: 280 / 453;
  overflow: hidden;
}

.buy_item_img img {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  object-fit: cover;
}

.buy_dec {
  display: flex;
  flex-direction: column;
  gap: 3px;
  justify-content: center;
  padding-block: 0.5rem;
  padding-right: 0.5rem;
}
.buy_item_name,
.buy_item_name2,
.buy_item_name3,
.buy_or,
.buy_plus {
  text-align: center;
}
.buy_item_name {
  display: flex;
  align-items: center;
  gap: 0 0.5em;
  font-weight: bold;
  text-align: left;
  line-height: 1.2;
  color: #0e6eb8;
  word-break: keep-all;
}
.badge_limited {
  background: #6dacd7;
  color: #fff;
  padding: 1px 0.3em;
  border-radius: 2px;
  vertical-align: middle;
  margin-right: 3px;
  font-weight: normal;
}

.badge_limited_outline {
  border: 1px solid #335063;
  color: #335063;
  padding: 1px 5px;
  border-radius: 2px;
  vertical-align: middle;
  margin-right: 3px;
  font-weight: normal;
}
.buy_or {
  color: #a1b1bb;
  font-weight: bold;
  line-height: 1;
}

.buy_item_name2 {
  font-weight: bold;
  color: #f2aa3c;
}
.buy_item_name3 {
  color: #335063;
  font-weight: bold;
  word-break: keep-all;
}
.buy_plus {
  font-weight: bold;
  color: #a1b1bb;
  text-align: center;
  line-height: 1;
}

.buy_select {
  width: 100%;
  height: 36px;

  padding: 0 6px;
}

.buy_price {
  font-weight: bold;
  color: #335063;
}

.buy_cart_row {
}

.buy_cart_row .qty_select {
  height: 38px;
  font-size: 13px;
}

.buy_cart_row .cart_btn {
  height: 38px;
  font-size: min(calc(22 / 768 * 100vw), 13px);
  background: #0e6eb8;
}
.buy_bnr {
  display: block;
}
/* ========== MIZUIRO COLLECTION ========== */
.mizuiro_set {
  background: #b8d5e9;
  color: #fff;
  padding-bottom: 20px;
  border-bottom: 8px solid #88c1e8;
}

.mizuiro_ttl {
  position: relative;
  z-index: 1;
}

.mizuiro_ttl img {
}

.mizuiro_list {
  list-style: none;
  display: flex;
  flex-direction: column;
  background: #eaf8ff;
  border-radius: min(calc(30 / 768 * 100vw), 30px);
  position: relative;
  top: -18px;
}
@media (max-width: 480px) {
  .mizuiro_list {
    top: -10px;
  }
}
.mizuiro_item {
}

.mi_row {
  display: grid;
  grid-template-columns: min(calc(310 / 768 * 100vw), 310px) 1fr;
  gap: 4%;
  align-items: flex-start;
}
.mi_row.ver02 {
  display: grid;
  grid-template-columns: 1fr min(calc(310 / 768 * 100vw), 310px);
  gap: 4%;
  align-items: flex-start;
}

.mi_img {
  /* width: 36%; */
  /* flex-shrink: 0; */
}

.mi_info {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.mi_ttl_row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}

.mi_ttl {
  font-weight: bold;
  line-height: 1.4;
  color: #3a444a;
  -webkit-text-stroke: 4px #fff;
  text-stroke: 2px black;
  paint-order: stroke;
}

.fav_btn.fav_sm svg {
  width: 22px;
  height: 22px;
  stroke: #999;
}

.mi_price_row {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.special_label {
  background: #44a9cb;
  color: #fff;
  font-family: var(--font-family);
  padding-inline: 3px;
}

.mi_price {
  color: #3a444a;
  font-weight: bold;
  line-height: 1;
  -webkit-text-stroke: 2px #fff;
  text-stroke: 1px black;
  paint-order: stroke;
}

.mi_more {
  cursor: pointer;
  width: min(calc(158 / 768 * 100vw), 158px);
}

.mi_cart_row {
}

/* .mi_cart_row .qty_select {
  height: 36px;
  font-size: 13px;
  padding: 0 6px;
} */

/* .mi_cart_row .cart_btn {
  height: 36px;
  font-size: min(calc(20 / 768 * 100vw), 12px);
  background: #0e6eb8;
  padding: 0 10px;
  flex: 1;
} */

.mi_set {
  width: min(calc(607 / 768 * 100vw), 607px);
  margin: 0 auto;
}
.base_color_guide {
  width: calc(717 / 768 * 100%);
  margin: 0 auto;
}

/* ========== L-01ノベルティ情報 ========== */
.mi_novelty {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.mi_novelty_note {
  color: #666;
  text-align: right;
}

.mi_collection_link {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #3188c3;
  color: #fff;
  border-radius: 999px;
  font-weight: bold;
  letter-spacing: 0.02em;
  text-decoration: none;
  width: fit-content;
  padding: 0.25rem 1.5rem;
  margin-left: auto;
  gap: 0.5em;
  white-space: nowrap;
}
.mi_collection_link::before {
  content: "";
  width: 10px;
  height: 10px;
  clip-path: polygon(100% 50%, 0 0, 0 100%);
  background-color: #fff;
}

/* .main .i_cart101_btn.ver_cq_seibun.circle_icon{
  font-size: inherit!important;
    flex-grow: 0!important;
    width: 50px!important;
} */

[data-selectarea01] {
  display: none;
}

[data-selectarea01].selected {
  display: block;
}

body:has(.buy_price.selected) .buy_price_not_selected {
  display: none;
}
.main .selectColor {
  width: 100%;
  max-width: 100%;
  background-color: #fff;
  padding: 10px 30px 10px 10px;
  margin: 0 0 5%;
}



/* ファッション　モーダル */
.main .js_fashion_modal .modal_modmicro_overlay {
  padding: 20px 0;
}
@media screen and (768px <= width) {
  .main .js_fashion_modal .modal_modmicro_overlay {
    padding: 20px 20px;
  }
}
.main .js_fashion_modal .swiper {
  --swiper-pagination-bullet-inactive-color: #b4b4b4;
  --swiper-pagination-color: #000;
  padding: 0 0 10px;
}
.main .js_fashion_modal .modal_modmicro_container {
  max-width: 800px;
}
.main .js_fashion_modal .swiper-slide {
  text-align: center;
}
.main .js_fashion_modal .swiper-slide img {
  width: 100%;
  max-width: none;
}
.main .js_fashion_modal .swiper-pagination {
  position: static;
  margin: 10px 0 0;
}
.main .js_fashion_modal .swiper-button-next,
.main .js_fashion_modal .swiper-button-prev {
  display: none;
}
@media screen and (992px <= width) {
  .main .js_fashion_modal .swiper-button-next,
  .main .js_fashion_modal .swiper-button-prev {
    display: block;
    color: #000;
  }
}
/* ファッション　モーダル */