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

.branch_icon_area {
  display: flex;
  justify-content: center;
  padding-block: 0.5rem;
}

.branch_main_area {
  display: none;
}

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;
}

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);
}

/* KVバナー */

/* メインビジュアル */

/* 商品情報エリア（名前・価格・お気に入り） */
.mj_head_info {
  /* background: #f5f5f5; */
}
.mj_head_info_row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mj_head_info_row .price {
  color: #202d2e;
}
.mj_head_info .wishlistSubmitButton {
  flex-shrink: 0;
}

/* カートエリア */

/* 商品特徴画像（全幅） */

/* セクション見出し（ピル形状） */
.mj_bg {
  background-image: url(../img/bg.png);
  background-size: cover;
  background-repeat: no-repeat;
}
.mj_full_img{
  text-align: center;
}
.mj_section_label {
  display: block;
}
.mj_feature_img {
  text-align: center;
}
.mj_feature_img img {
  user-select: none;
}

.mj_feature_detail .border {
  border: 1px solid #98cad9;
  border-top: none;
  margin-top: -0.5em;
  border-radius: 0 0 0.5em 0.5em;
}
/* 特徴カード（白ボックス、角丸、影） */
.mj_feature_card {
  background: #fff;
  border-radius: 2em;
  overflow: hidden;
}

/* 詳細セクション */
.mj_detail_section {
  background: #fdf1f3;
  position: relative;
  border-bottom: 0.8em solid #ed7690;
  padding-block: 2em;
}
.mj_detail_section > div {
  position: relative;
  z-index: 1;
}
.mj_detail_section::before {
  content: "";
  background-image: url(../img/mj_detail_section_top.png);
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  aspect-ratio: 12 / 1;
}
.mj_detail_section::after {
  content: "";
  background-image: url(../img/mj_detail_section_bottom.png);
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  aspect-ratio: 12 / 1;
}

/* ファッションアイテム（2カラムグリッド） */

.mj_fashion_items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 1em 3.5em;
  gap: 2em;
}

.mj_fashion_item_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  margin-bottom: 8px;
}
.mj_fashion_item_name {
  color: #fff;
  background-color: #ddd;
  font-weight: bold;
  width: 4em;
  text-align: center;
}
.mj_fashion_item_name.color-pink {
  background: #ef9fae;
}
.mj_fashion_item_name.color-red {
  background: #e02f40;
}
.mj_fashion_item_cart {
  padding-top: 4px;
}


/* YouTube Shorts モーダル */
.youtube_short {
  width: min(400px, 100%);
  margin: auto;
}
.youtube_short iframe {
  aspect-ratio: 9 / 16;
  width: 100%;
  height: 100%;
}

/* 底部バナー */

/* フッター画像 */

/* ファッション　モーダル */
.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% !important;
  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;
  }
}

.mj_detail_img .mj_detail_name {
  color: rgb(230, 94, 118);
  font-weight: bold;
  paint-order: stroke;
  padding-block: 1.5em;
  -webkit-text-stroke: 0.3em rgb(255, 255, 255);
}

/* アコーディオン */
.main .drw_target {
  display: none;
}
.main .drw_btn {
  position: relative;
  z-index: 1;
  color: #9dcddb;
  font-weight: bold;
  background-color: #fff;
  padding: 0.8em 2.75em 0.8em 1em;
  border-radius: 10px;
  margin: 5% 6% 0;
  cursor: pointer;
  border-style: solid;
  border-color: #9dcddb;
  border-width: 2px;
}
.main .drw_btn.ver02 {
  padding: 0.3em 2.75em 0.3em 1em;
}
.main .drw_btn_icon {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1em;
  width: 2em;
  height: 2em;
  background-color: #eaf4f6;
  margin: auto;
}
.main .drw_btn_icon::before,
.main .drw_btn_icon::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background: #9dcddb;
}
.main .drw_btn_icon::before {
  width: 1.5em;
  height: 0.15em;
}
.main .drw_btn_icon::after {
  width: 0.15em;
  height: 1.5em;
}
.main .active .drw_btn_icon::after {
  display: none;
}
.main .drw_target {
  display: none;
  position: relative;
  z-index: 0;
  top: -36px;
  margin: 0 6% -30px;
}
.main .drw_target.open {
  display: block;
}
.main .drw_target_in {
  background-color: #fffffc;
  padding-block: calc(25px + 4%) 1em;
  border-style: solid;
  border-color: #9dcddb;
  border-width: 0 1px 1px;
  border-radius: 0 0 10px 10px;
}
.main .drw_target_relative {
  position: relative;
}

