@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_after) .branch_price_before{
  display: none;
}
.branch_price_after{
  display: none;
}
body:has(.is_release_after) .branch_price_after{
  display: block;
}

/* 共通　*/
.main img{
  vertical-align: top;
}
.main .bg01{
  background-color: #67686a;
}
.main .bg11{ background-image: url(../img/item11_bg.webp); background-size: 100% auto; }
.main .bg12{ background-image: url(../img/item12_bg.webp); background-size: 100% auto; }
.main .bg13{ background-image: url(../img/item13_bg.webp); background-size: 100% auto; }
.main .bg14{ background-image: url(../img/item14_bg.webp); background-size: 100% auto; }


.main .color01{
  color: #224289;
}

.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 .page_indent01{
  display: grid; grid-template-columns: 1.25em 1fr;  
}
.main .page_indent01::before{
  content: ""; width: 0.75em; height: 0.75em; background-color: #dee5f4; border-radius: 50%; margin: 0.25em 0 0;
}
.main .page_indent01.ver12::before{
  background-color: #daeaf3;
}

.main .text_under{
  text-decoration-line: underline;
  text-decoration-color: #6bb0f5;
}


/* ヘッド */
.main .nav_wrap{
  position: relative; z-index: 0; width: calc(750/768*100%); margin: 0 auto;
}
.main .nav{
  position: absolute; z-index: 1; bottom: 0; width: calc(180/750*100%); cursor: pointer;
}
.main .nav01{ left: calc(0/750*100%); }
.main .nav02{ left: calc(190/750*100%); }
.main .nav03{ left: calc(380/750*100%); }
.main .nav04{ left: calc(570/750*100%); }

.main .nav{
  opacity: 0; transition: opacity .2s;
}
.main .nav.selected{
  opacity: 1;
}
/* タブ */
.main [data-pagearea]{
  display: none;
}
.main [data-pagearea].selected{
  display: block;
}
.main [data-pagearea2]{
  display: none;
}
.main [data-pagearea2].selected{
  display: block;
}


/* 商品名 */
.main .item_head{
  position: relative; z-index: 0;
}
.main .item_like{
  position: absolute; z-index: 1; top: 0; left: 0; 
}
.main .item_like.ver11{ margin: 13% 0 0 84%; }
.main .item_like.ver12{ margin: 23% 0 0 53%; }
.main .item_like.ver13{ margin: 13% 0 0 80%; }
.main .item_like.ver14{ margin: 13% 0 0 38%; }

.main .item_price{
  position: absolute; z-index: 1; top: 0; left: 0; 
}
.main .item_price.ver11{ margin: 27.5% 0 0 39%; }
.main .item_price.ver12{ margin: 27% 0 0 9%; }
.main .item_price.ver13{ margin: 27% 0 0 39%; }
.main .item_price.ver14{ margin: 27% 0 0 9%; }

/* スライド */
.main .item11_slide02_bnr{
  width: min( calc(614/768*100vw), 614px);
}
.main .item11_slide03_img{
  width: min( calc(477/768*100vw), 477px); margin: 0 auto;
}
.main .item11_check_a{
  width: min( calc(671/768*100vw), 671px); margin: 0 auto;
}
.main .item11_check_b{
  width: min( calc(671/768*100vw), 671px); margin: 0 auto;
}

.main .check_btn_wrap{
  display: flex;
}
.main .check_btn{
  display: flex; align-items: center; gap: 0 0.5em;
  color: #fff; line-height: 1.4; background-color: #000; padding: 0.3em 1em; border-radius: 1em;
}
.main .check_btn::before{
  content: ""; width: 0.4em; height: 0.5em; background-color: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
.main .check_btn_wrap.ver11{
  margin: 3% 3% 0 7%;
}
.main .check_btn.ver11{
  background-color: #86b7e6;
}
.main .check_btn_wrap.ver13{
  gap: 0 1em; margin: 3% 3% 0;
}
.main .check_btn.ver13{
  background-color: #94d3cd;
}

/* こだわり */
.main .kodawari{
  display: grid; grid-template-columns: auto 1fr;
  color: #474b44; font-weight: bold;
}
.main .kodawari_left{
  display: flex; align-items: center; justify-content: center; padding: 1em 1em;
}
.main .kodawari_right{
  padding: 1em 1em;
}
.main .kodawari_left.ver11{ background-color: #dee5f4; }
.main .kodawari_right.ver11{ background-color: #eef2f9; }
.main .kodawari_left.ver12{ background-color: #daeaf3; }
.main .kodawari_right.ver12{ background-color: #ebf4f9; }
.main .kodawari_left.ver13{ background-color: #daeaf3; }
.main .kodawari_right.ver13{ background-color: #ebf4f9; }
.main .kodawari_left.ver14{ background-color: #daeaf3; }
.main .kodawari_right.ver14{ background-color: #ebf4f9; }

/* 使い方 */
.main .how{
  color: #474b44; padding: 4% 0;
}
.main .how.ver11{ background-image: linear-gradient(to bottom, rgba(229, 235, 246,0) 0%, rgba(229, 235, 246,1) 50%); }
.main .how.ver12{ background-image: linear-gradient(to bottom, rgba(218, 234, 243,0) 0%, rgba(218, 234, 243,1) 50%); }
.main .how.ver13{ background-image: linear-gradient(to bottom, rgba(218, 234, 243,0) 0%, rgba(218, 234, 243,1) 50%); }
.main .how.ver14{ background-image: linear-gradient(to bottom, rgba(218, 234, 243,0) 0%, rgba(216, 233, 242,1) 50%); }

.main .how_ttl{
  font-family: var(--font-family); font-size: min(calc(36/768*100vw), 36px); line-height: 1; padding: 0 0 0.2em; margin: 0 0 0.5em;
  border-style: solid; border-color: #333; border-width: 0 0 2px;
}


/* ギフトセット */
.main .bodycare_info{
  display: flex; align-items: center; justify-content: space-between; margin: 2% 3% 0;
}
.main .bodycare_name{
  color: #474b44; font-weight: bold;
}
.main .bodycare_price{
  display: flex; align-items: center; gap: 0 0.5em;
  color: #474b44; margin: 0.3em 0 0;
}
.main .bodycare_price_icon{
  font-family: var(--font-family); font-size: min(calc(36/768*100vw), 36px); color: #fff; line-height: 1; background-color: #b6a2e8; padding: 0 0.5em; border-radius: 5px;
}
.main .bodycare_body{
  display: grid; grid-template-columns: min(calc(380/768*100vw),380px) 1fr; gap: 0 5%; align-items:start;
  margin: 3% 3% 0;
}
.main .bodycare_body_right{
  display: grid; grid-template-columns: 100%; gap: 0.5em 0;
}
.main .bodycare_body_nav{
  color: #b7b7b7; font-weight: bold; text-align: center; padding: 0.65em 0;
  cursor: pointer;
  border-style: solid; border-color: #b7b7b7; border-width: 0.15em; border-radius: 0.5em;
}
.main .bodycare_body_nav.selected{
  color: #474b44; border-color: #224289;
}
.main .bodycare_add{
  position: relative; z-index: 1;
}
.main .bodycare_foot{
  margin: -11% 0 0;
}
/* カート調整 */
.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 .drw_target{
  display: none;
}
.main .drw_btn{
  position: relative; z-index: 1; color: #474b44; font-weight: bold; background-color: #dee5f4; padding: 0.8em 2.75em 0.8em 1em; border-radius: 10px; margin: 5% 3% 0; cursor: pointer;
  border-style: solid; border-color: #dee5f4; border-width: 2px;
}
.main .drw_btn.ver12{ background-color: #daeaf3; border-color: #daeaf3; }
.main .drw_btn.ver13{ background-color: #daeaf3; border-color: #daeaf3; }
.main .drw_btn.ver14{ background-color: #daeaf3; border-color: #daeaf3; }


.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 #fff; 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: #333;
}
.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 3% -30px;
}
.main .drw_target.open{
  display: block;
}
.main .drw_target_in{
  background-color: #fff; padding: calc(30px + 4%) 0 4%;
  border-style: solid; border-color: #eaeae9; border-width: 0 1px 1px; border-radius: 0 0 10px 10px;
}
.main .drw_target_relative{
  position: relative;
}

.main .drw_btn_text.ver02{
  display: flex; align-items: center; gap: 0 0.2em;
}

.main .drw_btn_circle{
  display: flex; align-items: center; justify-content: center;
  width: 2em; line-height: 2; border-radius: 50%; color: #fff; background-color: #75adcd;
}
.main .drw_btn_circle.ver02{ background-color: #5cc6bd; }




/* サイズ等 */
/* .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;
} */

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