@charset "utf-8";

/*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/

body {
}

/* 共通スタイル */
.add_open_cont {
    position: relative;
    cursor: pointer;
    padding-right: 1.5em; /* アイコン用スペース */
    max-width: initial;
    width: 100%;
}

/* アイコン部分 */
.add_open_cont::after {
    content: "＋";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.2em;
    transition: transform 0.3s;
    text-indent: initial;
}

/* 開いているときは「－」に変更 */
.add_open_cont.open::after {
    content: "－";
}

/* PCのときはアイコン非表示 */
@media (min-width: 769px) {
    .add_open_cont::after {
        display: none;
    }
}


/* modal内topコンテンツ */

.top-register {
	padding: 16px min(2.6785714286vw, 40.5px);
	border-radius: 8px;
	background-image: url(/assets/shop/image/top/register-bg.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
  }

  @media screen and (max-width: 520px) {
	.top-register {
	  border-radius: 0;
	  margin-inline: calc((100vw - 100%) / 2 * -1);
	  overflow-x: hidden;
	  padding: 16px 4.2666666667vw;
	}
  }
  .top-register__title {
	text-align: center;
  }

  .top-register__title .text {
	color: #FFFFFF;
	margin-right: 0.2em;
	font-size: clamp(10px, 1.3227513228vw, 20px);
	line-height: 1.45;
	letter-spacing: 0.02em;
	font-weight: 900;
  }

  @media screen and (max-width: 520px) {
	.top-register__title .text {
	  font-size: 5.3333333333vw;
	  line-height: 1.45;
	  letter-spacing: 0.02em;
	  font-weight: 700;
	}
  }
  .top-register__content {
	margin-top: 16px;
  }

  .top-register__recommendList {
	background-color: rgba(255, 255, 255, 0.9);
	display: flex;
	justify-content: center;
	padding: 8px min(2.6455026455vw, 40px);
	border-radius: 8px;
  }

  @media screen and (max-width: 520px) {
	.top-register__recommendList {
	  flex-wrap: wrap;
	}
  }
  .top-register__recommendItem {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding-left: min(1.5873015873vw, 24px);
	padding-right: min(1.5873015873vw, 24px);
	padding-top: 7px;
	padding-bottom: 7px;
	position: relative;
  }

  @media screen and (max-width: 520px) {
	.top-register__recommendItem {
	  width: 50%;
	}
  }
  .top-register__recommendItem:not(:first-child)::before {
	content: "";
	display: block;
	width: 1px;
	height: 84px;
	background: linear-gradient(to bottom, #151532 0%, #151532 50%, transparent 50%, transparent 100%);
	background-size: 1px 4px;
	background-repeat: repeat-y;
	position: absolute;
	top: 12px;
	left: 0;
  }

  @media screen and (max-width: 520px) {
	.top-register__recommendItem:not(:first-child)::before {
	  top: 12%;
	}
  }
  .top-register__recommendItem:first-child {
	padding-left: 0;
  }

  @media screen and (max-width: 520px) {
	.top-register__recommendItem:nth-child(3)::before {
	  display: none;
	}
  }
  .top-register__recommendItem:last-child {
	padding-right: 0;
  }

  .top-register__recommendItem .image {
	display: block;
	height: 72px;
  }

  .top-register__recommendItem .image img {
	-o-object-fit: contain;
	   object-fit: contain;
	-o-object-position: center;
	   object-position: center;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }

  .top-register__recommendItem .text {
	color: #DC3545;
	font-size: clamp(10px, 1.1904761905vw, 18px);
	line-height: 1.1111111111;
	letter-spacing: 0.02em;
	font-weight: 700;
  }

  @media screen and (max-width: 520px) {
	.top-register__recommendItem .text {
	  font-size: 4.2666666667vw;
	  line-height: 1.45;
	  letter-spacing: 0.02em;
	  font-weight: 700;
	}
  }
  @media screen and (max-width: 520px) {
	.top-register__recommendItem .text {
	  text-align: center;
	}
  }



.navListWrap {
    margin-top: 16px;
}
.navList {
    display: flex;
    gap: 16px;
    justify-content: center;
    align-items: center;
    padding: 0;
}
@media screen and (max-width: 520px) {
    .navList {
        flex-wrap: wrap;
    }
}
@media screen and (max-width: 520px) {
    .navList__item {
        width: 100%;
        list-style: none;
    }
}

.navList__item a {
    display: block;
    color: #FFFFFF;
    border-radius: 8px;
    padding: 12px 24px;
    position: relative;
    display: flex
;
    align-items: center;
    justify-content: center;
    gap: min(0.7936507937vw, 12px);
    border: 2px solid #fff;
    font-size: clamp(10px, 1.1904761905vw, 18px);
    line-height: 1.4444444444;
    letter-spacing: 0.02em;
    font-weight: 700;
	text-decoration:none;
}

@media screen and (max-width: 520px) {
    .navList__item a {
        font-size: 4.2666666667vw;
        line-height: 1.45;
        letter-spacing: 0.02em;
        font-weight: 700;
    }
}

@media screen and (max-width: 520px) {
    .navList__item a {
        gap: 3.2vw;
    }
}


.navList__item.--register .navList__link {
    background: linear-gradient(to right, #136ACD, #22C4BC);
}

.navList__item.--register .navList__link::before {
    content: "";
    display: block;
    width: min(1.7195767196vw, 26px);
    height: min(1.9841269841vw, 30px);
    background-image: url(/assets/shop/image/top/register-ico.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    flex-shrink: 0;
}


@media screen and (max-width: 520px) {
    .navList__item.--register .navList__link::before {
        width: 8vw;
        height: 9.0666666667vw;
    }
}

.navList__item a::after {
    content: "";
    display: block;
    width: min(0.7936507937vw, 12px);
    height: min(1.5873015873vw, 24px);
    background-image: url(/assets/shop/image/common/ico-arrow.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    flex-shrink: 0;
}

@media screen and (max-width: 520px) {
    .navList__item a::after {
        width: 4.2666666667vw;
        height: 8.5333333333vw;
    }
}

.none-cont{
	display: none;
}
.pc_none {
	display: block;
}

.sp_none {
	display: none;
}

.pc_none2 {
	display: block;
}

.sp_none2 {
	display: none;
}

.open_modal_btn{
	margin: 0px auto;
	width: 100%;
	display:none;
}

.add_modal_cont1{

grid-area: register;
}

.sidebar-bnrListWrap__ttl.add_open_cont{
  position: relative;
  overflow: hidden;
  height: 33px;
  /* 元テキストを画面外へ移動 */
  text-indent: -9999px;
  white-space: nowrap;
}

.sidebar-bnrListWrap__ttl.add_open_cont:before{
	content:"メーカー/特集で選ぶ";
	position: absolute;
	left: 0;
	top: 0;
	text-indent: 0;
	right: 0;
	margin: auto;
}


/*-- 固定ここまで --*/


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width: 1921px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */



/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 1921px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1200px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */



/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1200px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */





/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1000px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1000px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 768px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.pc_none {
	display: none;
}

.sp_none {
	display: block;
}

.main__grid .l-sidebar--right{
	display: block!important;
	/* grid-area: maker-cat; */
    grid-area: right;
	padding: 16px min(1.5873015873vw, 24px);
	padding-top: 0;
	padding-bottom: 0;
}

 .main__grid .l-sidebar--right .top-side-list-wrap{
	background-color: #FFFDEE;
	padding: 10px min(1.5873015873vw, 24px);
	margin: 0 0 10px;
	border-radius: 8px;
}

.top-category__btn{
height: 40px;
}

.add_modal_cont1 {
	display: none; /* 最初は非表示 */
	position: fixed;        /* 画面に固定 */
	top: 0;
	left: 0;
	width: 100vw;           /* ビューポート幅 */
	height: 100vh;          /* ビューポート高さ */
	background: #fff; /* 背景白（必要に応じて変更） */
	z-index: 9999;
	overflow-y: auto;       /* 内容が長い場合スクロール可能 */
	-webkit-overflow-scrolling: touch; /* iOSでスムーズスクロール */
}

.add_modal_close_btn {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 80px;
	cursor: pointer;
}
    /* 背景スクロール禁止 */
    body.modal_open {
        /* overflow: hidden;
        height: 100%; */
    }

.open_modal_btn{
	background: #fff2c0;
	color: #000;
	font-size: 18px;
	height: 60px;
	display: flex;
	align-items: center;
	font-weight: 700;
	padding: 0 5%;
	position: relative;
	justify-content: center;
}

.open_modal_btn .small{
	font-size:12px;
	display:block;
}

.open_modal_btn img{
	width:20px;
	height: 22px;
	margin-right: 8px;
}


.open_modal_btn:before{
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 2px #000;
	border-right: solid 2px #000;
	position: absolute;
	right: 5%;
	top: 0;
	transform: rotate(45deg);
	bottom:0;
	margin:auto;
}


.add_modal_cont1_div1{
	max-width:500px;
	margin:0 auto;
	width:95%;
	padding: 60px 0;
}

.add_img1{
	margin:37px auto 28px;
}

.top-register{
	width:100%;
	margin:0 auto;
}

.add_title{
	text-align:center;
	color:#707070;
	font-size:27px;
}

.add_top_area .open_modal_btn{
display: flex;
}



.main__grid .l-register{
	display:none;
}

.sidebar__ranking{
	display: none;
}

.sidebar-bnrListWrap__ttl.add_open_cont{

}
.sidebar-bnrListWrap__ttl.add_open_cont:before{
	font-size:18px;
	right:auto;
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 520px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.pc_none2{
	display: none;
}

.sp_none2 {
	display: block;
}


.top-category__btn{
        font-size: 3.8vw;
height: 33px;
}

.add_modal_close_btn{
	width:60px
}

.sidebar-bnrListWrap__ttl{
	text-align:left;
	padding-left: 0;
}

	.top-section-title.add_open_cont,
	.sidebar-bnrListWrap__ttl{
		font-size:18px;
		margin-bottom: 0;
	}

.top-purpose{
	padding: 10px min(1.5873015873vw, 24px);
	margin: 10px 0;
}

.add_open_cont{
	padding-top:0;
	padding-bottom: 8px;
}

.main__grid .l-sidebar--right{
	padding:0;
}

#category .add_close_cont{
	    padding-top: 16px;
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 520px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


