@charset "UTF-8";

/* .main .head{
  padding-top: 2%;
  background-color: #77a1c8;
} */

.main .item{
  background-color: #f1f6fa;
  background-image: url(../img/bg.png);
  background-size: 100%;
  background-repeat: repeat-y;
  background-position: center -30px;
}

.main img{
  display: block;
  margin: 0 auto;
}

.main .img11 img,
.main .img12 img,
.main .img13 img,
.main .img21 img{
  width: min(calc(709/768*100%), 709px);
}

.main .img12,.main .img13{position: relative;}

.main .set01_like{position: absolute; top: 4%; right: 6.5%;}
.main .set01_price{position: absolute; left: 7.5%; top: 7.2%;}
.main .set01_curt{position: absolute; left: 7.5%; top: 20.5%; width: 30%;}
.main .set02_like{position: absolute;top: 3%;right: 6.5%;}
.main .set02_price{position: absolute; left: 7.5%; top: 5.6%;}
.main .set02_curt{position: absolute; left: 7.5%; top: 18.5%; width: 30%;}
.main .i_cart101{width: min(100%, 112px);}
.main .special_label{
  color: #fff;
  font-family: var(--font-family);
  background-color: #44a9cb;
  border: 1px solid #fff;
  padding: 0 0.2em;
}
.main .price{
  color: #44a9cb;
  font-weight: bold;
  text-shadow: 0 0 4px rgba(255, 255, 255, 1), 0 0 4px rgba(255, 255, 255, 1), 0 0 4px rgba(255, 255, 255, 1), 0 0 4px rgba(255, 255, 255, 1), 0 0 4px rgba(255, 255, 255, 1), 0 0 4px rgba(255, 255, 255, 1), 0 0 4px rgba(255, 255, 255, 1), 0 0 4px rgba(255, 255, 255, 1), 0 0 4px rgba(255, 255, 255, 1), 0 0 4px rgba(255, 255, 255, 1);
}
.main .img_bnr img{
  width: min(calc(670/768*100%), 670px);
}

.main .add_text{
  color: #3f3b3a;
}

/* ========== 公開日時制御 ========== */
/* デフォルト: coming soon 表示 / カートエリア非表示 */
.branch_icon_area {
  display: flex;
  padding-block:1rem ;
}

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

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


/* タブ */
.main [data-pagearea]{
  display: none;
}
.main [data-pagearea].selected{
  display: block;
}

/* ナビ*/
.main .nav_wrap{
  position: relative; z-index: 0;
}
.main .nav{
  position: absolute; z-index: 1; bottom: 0;
  opacity: 0; width: calc(360/768*100%);
  cursor: pointer; transition: opacity .2s;
}
.main .nav01{ left: calc( 15/768*100%); }
.main .nav02{ right: calc( 15/768*100%); }

.main .nav.selected{
  opacity: 1; 
}

/* 動画モーダル */
.main .zoom_movie_video{
  object-fit: cover;
  width: 100%; max-width: 450px; aspect-ratio: 1 / 1.77;
}

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

#zoom_set01 .modal_modmicro_close,
#zoom_set02 .modal_modmicro_close{
  bottom: 0;
  margin: 10px 10px 10px auto;
}

/* トップへ戻る */
.main .totop_wrap{
  display: flex; justify-content: flex-end; margin: 0 4% 0 0;
}
.main .totop{
  display: flex; align-items: center; gap: 0 0.3em;
  color: #C4007F; cursor: pointer;
  border-style: solid; border-color: #C4007F; border-width: 0 0 1px;
}
.main .totop::before{
  content: ""; width: 1em; height: 0.75em; background-color: #C4007F;
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
