@charset "UTF-8";

/* 予約用アイテム */
.main .i_cart_icon.ver_coming {
  color: #fff;
  background-color: #0e6eb8;
  width: 100%;
}
.main .i_cart_icon.ver_soldout.i_yoyaku_elm {
  width: min(100%, 8em);
  padding: 0.25em 0.25em;
}
.main .i_cart_icon.ver_yoyaku {
  color: #7cc9e3;
  background-color: #fff;
  border-style: solid;
  border-color: #7cc9e3;
  border-width: 1px;
}

/* 予約用 */
.branch_icon_area {
  display: none;
}
body:has(.is_release_before) .branch_icon_area {
  display: flex;
  justify-content: center;
}
.branch_icon_coming {
  color: #fff;
  background-color: #0e6eb8;
  padding: 0 1em;
}
/* is_release_beforeの時だけ非表示 */
body:has(.is_release_before) .branch_main_area {
  display: none;
}
/* 

.main .i_cart_icon.ver_yoyaku {
  color: #e8458b;
  background-color: #fff;
  border-style: solid;
  border-color: #e8458b;
  border-width: 1px;
}
.main .i_cart_icon.ver_soldout.i_yoyaku_elm {
  width: min(100%, 8em);
  padding: 0.25em;
} */

/* 共通 */
.main img {
  /* vertical-align: top; */
}
.main .pdt1px {
  padding-top: 1px;
}
.main .pdt2px {
  padding-top: 2px;
}
.main .mgt005 {
  margin-top: 0.5%;
}

/* BG */
.main .bg01 {
  background-color: #fbeede;
}
.main .bg02 {
  background-color: #fff;
}
.main .bg03 {
  background-color: #cce8f8;
}
.main .bg04 {
  background-color: #d8f5d8;
}
.main .bg05 {
  background-color: #f0e6ff;
}
.main .bg06 {
  background-color: #f9fdfe;
}

.main .fc-pink {
  color: #df82ad;
}
.main .fc-navy {
  color: #0c4571;
}
.main .fc-blue {
  color: #237abc;
}
.main .fc-blue2 {
  color: #59a2d9;
}
.main .fc-purple {
  color: #947cbf;
}
.main .fc-ivory {
  color: #dfbc55;
}
.main .fc-white {
  color: #979797;
}
.main .fc-yellow {
  color: #f3b803;
}
.main .fc-Silver {
  color: #888d99;
}
.main .fc-gold {
  color: #d5b96d;
}
.main .fc-malt {
  background: linear-gradient(to right, #caacea 11%, #efa3ba 57%, #f8c876 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.main .gradation_bg01 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg02 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg03 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(216, 246, 239) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(216, 246, 239) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(216, 246, 239) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg04 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(250, 246, 220) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(250, 246, 220) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(250, 246, 220) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg05 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(252, 238, 222) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(252, 238, 222) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(252, 238, 222) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg06 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(253, 236, 248) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(253, 236, 248) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(253, 236, 248) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg07 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  padding-bottom: 8%;
}

.main .gradation_bg08 {
  background-image: -moz-linear-gradient(
    -90deg,
    rgb(253, 236, 248) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    -90deg,
    rgb(253, 236, 248) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    -90deg,
    rgb(253, 236, 248) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg09 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg10 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg11 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg12 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg13 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(216, 246, 239) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(216, 246, 239) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(216, 246, 239) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg14 {
  background-image: -moz-linear-gradient(
    -90deg,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    -90deg,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    -90deg,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg15 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(237, 235, 249) 52%,
    rgb(255, 255, 255) 100%
  );
}

.main .gradation_bg16 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(255, 255, 255) 0%,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg17 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(227, 244, 249) 52%,
    rgb(255, 255, 255) 100%
  );
}
.main .gradation_bg18 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(216, 246, 239) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(216, 246, 239) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(216, 246, 239) 52%,
    rgb(255, 255, 255) 100%
  );
  padding-bottom: 10%;
}

.main .gradation_bg19 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(227, 246, 241) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(227, 246, 241) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(227, 246, 241) 52%,
    rgb(255, 255, 255) 100%
  );
}

.main .gradation_bg20 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(250, 246, 220) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(250, 246, 220) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(250, 246, 220) 52%,
    rgb(255, 255, 255) 100%
  );
}

.main .gradation_bg21 {
  background-image: -moz-linear-gradient(
    90deg,
    rgb(252, 238, 222) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    90deg,
    rgb(252, 238, 222) 52%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    90deg,
    rgb(252, 238, 222) 52%,
    rgb(255, 255, 255) 100%
  );
  padding-bottom: 10%;
}
/* ヘッド */
.main .head {
  width: 100%;
}
.main .onsale {
  width: 100%;
}

/* 予約期間バナー */
.main .yoyaku_info {
  width: min(calc(720 / 768 * 100vw), 720px);
  margin: 0 auto;
}

/* 先行予約アコーディオン */
.main .drw_btn02 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 0.75em;
  cursor: pointer;
  padding: 0.6em 1em;
  margin: 0 4%;
  background-color: #fff;
  font-weight: bold;
  border-style: solid;
  border-color: #e8458b;
  border-width: 1px;
  border-radius: 2em;
  font-size: min(calc(22 / 768 * 100vw), 22px);
}
.main .drw_btn02::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent transparent #e8458b;
  border-width: 0.4em 0 0.4em 0.6em;
  flex-shrink: 0;
  transition: transform 0.2s;
}
.main .drw_btn02.active::before {
  transform: rotate(90deg);
}
.main .drw_target02 {
  display: none;
}
.main .drw_target_in02 {
  padding-bottom: 1.5em;
  line-height: 1.9;
  background-color: #fff;
  margin: 0 4%;
  color: #65b6cd;
  display: flex;
  align-items: end;
  justify-content: space-between;
}
.drw_target_in02 .inner {
}

.main .head_topic {
  display: flex;
  align-items: center;
  gap: 0 5px;
  width: fit-content;
  color: inherit;
  text-decoration: underline;
  margin-top: 0.5em;
  margin-left: auto;
}
.main .head_topic::before {
  content: "";
  width: 0.5em;
  height: 0.6em;
  background-color: #65b6cd;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

/* カテゴリナビ */
.main .cat_nav {
  display: flex;
  gap: 0;
  position: sticky;
  top: 0;
  z-index: 10;
}
.main .cat_nav_item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2% 1%;
  cursor: pointer;
  text-align: center;
  font-weight: bold;
  line-height: 1.2;
  font-size: min(calc(16 / 768 * 100vw), 16px);
  border-style: solid;
  border-color: transparent;
  border-width: 0 0 3px;
}
.main .cat_nav_item:nth-child(1) {
  background-color: #cce8f8;
  border-bottom-color: #5cb8e0;
}
.main .cat_nav_item:nth-child(2) {
  background-color: #fdd8e9;
  border-bottom-color: #e8458b;
}
.main .cat_nav_item:nth-child(3) {
  background-color: #d4f4d0;
  border-bottom-color: #5dba56;
}
.main .cat_nav_item:nth-child(4) {
  background-color: #e8d8f8;
  border-bottom-color: #9b72cf;
}
.main .cat_nav_en {
  display: block;
  font-size: min(calc(13 / 768 * 100vw), 13px);
  letter-spacing: 0;
}

/* セクション */
.main .sec_anchor {
  display: block;
  height: 0;
}
.main .sec_ttl {
  width: 100%;
}

/* 商品グリッド */
.main .item_col {
  display: flex;
  gap: 3%;
  padding-inline: 1%;
}
.item_col.two_row_two_colum {
  flex-wrap: wrap;
  gap: 6px;
}
.item_col.two_row_two_colum .item_box {
  flex: 1 1 calc(50% - 6px);
}
.main .item_box {
  width: 100%;
  /* padding: 0 0 4%; */
  /* display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: space-between; */
}
.main .item_name {
  font-weight: bold;
}
.main .item_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-inline: 7% 4%;
}

.main .item_fig {
  margin: 0;
  text-align: center;
  display: block;
}
.main .item_more_wrap {
  display: flex;
  justify-content: center;
  margin: 4% 0;
}
.main .item_cart {
  margin: 2% 0 0;
}

/* デコ・説明 */
.main .deco {
  width: 100%;
  overflow: hidden;
  position: relative;
}
.main .deco.topspace {
  padding-top: 10%;
}
.main .deco_ttl {
  /* color: #87c2d3; */
  font-weight: bold;
  position: absolute;
  /* top: calc(50% - 12%); */
  /* top: calc(50%); */
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.main .novelty_sec {
  padding: 3% 3%;
  background-color: #fff0f5;
}
.main .novelty {
  width: min(calc(700 / 768 * 100vw), 700px);
  margin: 0 auto;
}
.main .point {
  width: 100%;
  text-align: center;
}
.main .desc {
  width: 100%;
}
.main .sep {
  height: 1px;
  background-color: #f9c4d8;
  margin: 2% 3%;
}

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

/* アコーディオン */
.main .drw_target {
  display: none;
}
.main .drw_btn {
  position: relative;
  z-index: 1;
  color: #4c423f;
  font-weight: bold;
  background-color: #fff;
  padding: 0.9em 2.75em 0.9em 1em;
  border-radius: 0.5em;
  margin: 5% 3% 0;
  cursor: pointer;
  border-style: solid;
  border-color: #4c423f;
  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;
  border: 2px solid #4c423f;
  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: #4c423f;
}
.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: -30px;
  margin: 0 3% -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: #d8d7d8;
  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_l {
  flex-shrink: 0;
  width: auto;
  min-width: 17vw;
  text-align: center;
  background-color: #fff;
  margin: -0.1em 0 0;
  border-style: solid;
  border-color: #d2d2d2;
  border-width: 1px 1px;
}
.main .item_note_r {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1em;
}
.main .item_box_sigle_type {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 4%;
}
.item_box_sigle_type .left {
  width: 60%;
  padding-top: 46%;
  position: relative;
}
.item_box_sigle_type .left .f_btn {
  position: absolute;
  top: 0;
  left: 0;
}
.item_box_sigle_type .left .item_fig {
  position: absolute;
  top: max(calc(-130 / 768 * 100vw), -130px);
  left: min(calc(50 / 768 * 100vw), 50px);
}
/* .main .single_item .thumb{
position: relative;
}
.main .single_item .favorite_btn{
  position: absolute;
  top: 0;
  left: 0;
} */

.item_box_sigle_type2_text {
  color: #b69dde;
  font-weight: bold;
  padding-block: 6% 5%;
}

.main .item_box_sigle_type2 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-inline: 3%;
  gap: 5%;
}
.item_box_sigle_type2 .right {
  flex: 1;
  /* width: 60%;
  padding-top: 46%;
  position: relative; */
}
.item_box_sigle_type2 .left {
  position: relative;
}
.item_box_sigle_type2 .left .f_btn {
  position: absolute;
  top: 0;
  left: 0;
}
.iphone_model_text_label {
  background-color: #f3b803;
  color: #fff;
  font-weight: bold;
  border-radius: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-inline: 3%;
  gap: 1%;
  margin-block: 4% 3%;
}

.banner_shopper_gift_bg {
  background-image: -moz-linear-gradient(
    -90deg,
    rgb(252, 238, 222) 43%,
    rgb(255, 255, 255) 100%
  );
  background-image: -webkit-linear-gradient(
    -90deg,
    rgb(252, 238, 222) 43%,
    rgb(255, 255, 255) 100%
  );
  background-image: -ms-linear-gradient(
    -90deg,
    rgb(252, 238, 222) 43%,
    rgb(255, 255, 255) 100%
  );
  text-align: center;
}
.item01_btn {
  display: block;
}
.item02_btn {
  display: none;
}
.item03_btn {
  display: none;
}
.item04_btn {
  display: none;
}
.btn_advance_order {
  position: relative;
  top: -0.6em;
  text-align: center;
  cursor: pointer;
}

.credit_block {
  background: #fff;
  padding-bottom: 1em;
}
