@charset "UTF-8";

/* 時限切換え　*/
.branch_icon_area{
  display: flex; justify-content: center;
}
body:has(.is_release_before):has(.is_platinum) .branch_icon_area{
  display: none;
}
body:has(.is_release_after) .branch_icon_area{
  display: none;
}

.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)
}
.branch_main_area{
  display: none;
}
body:has(.is_release_before):has(.is_platinum) .branch_main_area{
  display: block;
}
body:has(.is_release_after) .branch_main_area{
  display: block;
}

/* priceの表示、非表示 */
/* 今回例外あり */
body:has(.is_release_before) .branch_price_before{
  display: none;
}
body:has(.is_release_after) .branch_price_before{
  display: none;
}
.branch_price_after{
  display: none;
}
body:has(.is_release_before) .branch_price_after{
  display: block;
}
body:has(.is_release_after) .branch_price_after{
  display: block;
}

/* 共通　*/
.main img{
  vertical-align: top;
}
.main .bg01{
  background-color: #8bacd3;
}
.main .color01{
  color: #5b666d;
}
.main .color02{
  color: #3a444a;
}

.main .pdt1px{
  padding-top: 1px;
}
.main .pdt005{
  padding-top: 0.5%;
}
.main .mgt005{
  margin-top: 0.5%;
}
.main .shrink0{
  flex-shrink: 0;
}
.main .relative{
  position: relative; z-index: 0;
}
.main .lh18{
  line-height: 1.8;
}

.main .text_stroke{
  -webkit-text-stroke: 0.2em #fff;
  text-stroke: 0.2em #fff;
  paint-order: stroke;
}

/* ヘッド */
.main .head{
  position: relative; z-index: 0;
}
.main .head_item{
  position: absolute; z-index: 1; top: 0; left: 0; width: calc(174/768*100%); margin: 37% 0 0 50%;
}
.main .head_price{
  position: absolute; z-index: 1; right: 0; bottom: 0; left: 0; margin: 0 0 3%;
}
.main .head_gift{
  width: calc(718/768*100%); margin: 0 auto;
}


/* 説明 */
.main .care{
  width: calc(720/768*100%); margin: 0 auto;
}

/* 使い方 */
.main .how{
  background-color: #e7f1f8; padding: 3% 0;
}
.main .how_ttl{
  font-family: var(--font-family); font-size: min(calc(36/768*100vw), 36px); color: #79a2d2; line-height: 1; margin: 0 0 0.5em;
}
.main .how_text_maru{
  width: 0.9em; height: 0.9em; background-color: #3a444a; border-radius: 1em; margin: 0.3em 0.3em 0 0;
}

/* セット */
.main .set_wrap{
  background-color: #b5ceeb; padding: min(calc(10/768*100vw), 10px);
  border-radius: min(calc(15/768*100vw), 15px);
}
.main .set_row{
  display: grid; grid-template-columns: min(calc(282/768*100vw), 282px) 1fr; justify-content: end; align-items: center; gap: 0 4%;
  background-color: #fff; border-radius: min(calc(10/768*100vw), 10px);
}
.main .set_right{
  margin: 0 4% 0 0;
}

/* 限定 */
.main .limited_row{
  display: grid; grid-template-columns: 1fr min(calc(432/768*100vw), 432px); gap: 0 2%;
  padding: 3% 2% 3% 3%;
  background-image: url(../img/limited_bg.webp);
  background-size: cover;
}
.main .limited_left{
  flex-shrink: 0;
  width: min( calc(295/768*100vw), 295px);
}
.main .limited_right{
  flex-grow: 1;
  margin: 0 3%;
}
.main .limited_desc{
  grid-column-end: span 2;
  width: min( calc(708/768*100vw), 708px); margin: 0 auto;
}

/* カート調整 */
.main .i_cart_icon{
  font-size: min(calc(24/768*100vw), 16px)
}

/* @media screen and ( max-width : 767px) {
  .main .item_cart .i_cart101_btn.ver_cq,
  .main .item_cart .i_cart101_btn.ver_cq_seibun{
    width: 40px;
  }
  .main .item_cart .i_cart101_btn{
    height: 40px;
  }
  .main .item_cart select{
    padding-left: 10px;
  }
} */


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


/* .main .drw_target{
  display: none;
}
.main .drw_btn{
  position: relative; z-index: 1; color: #6e5e4d; font-weight: bold; background-color: #f2f3eb; padding: 0.8em 2.75em 0.8em 1em; border-radius: 10px; margin: 5% 6% 0; cursor: pointer;
  border-style: solid; border-color: #c8c4b4; 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: 1.5em; height: 1.5em; border: 2px solid #6e5e4d; background-color: #fff;  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: #6e5e4d;
}
.main .drw_btn_icon::before{
  width: 1em; height: 0.2em;
}
.main .drw_btn_icon::after{
  width: 0.2em; height: 1em;
}
.main .active .drw_btn_icon::after{
  display: none;
}
.main .drw_target{
  display: none;
  position: relative; z-index: 0; top: -30px; margin: 0 6% -30px;
}
.main .drw_target.open{
  display: block;
}
.main .drw_target_in{
  background-color: #fffffc; padding: calc(30px + 4%) 0 4%;
  border-style: solid; border-color: #c8c4b4; border-width: 0 1px 1px; border-radius: 0 0 10px 10px;
}
.main .drw_target_relative{
  position: relative;
} */

/* サイズ等 */
/* .main .item_note{
  display: flex; flex-direction: column; gap: 1em 0;
  position: relative; z-index: 1;
  line-height: 1.8; margin: 0 3%;
  border-radius: 1em 1em;
}
.main .item_note_row{
  display: flex; align-items: flex-start; gap: 0.5em 1em;
}
.main .item_note_row02{
  display: flex; align-items: flex-start;
}
.main .item_note_l{
  flex-shrink: 0;
  width: 5em; text-align: center; background-color: #fff; margin: -0.1em 0 0;
  border-style: solid; border-color: #d2d2d2; border-width: 1px 1px;
}
.main .item_note_l02{
  flex-shrink: 0;
}
.main .item_note_r{
  display: flex; flex-wrap: wrap; gap: 0 1em;
} */