@charset "UTF-8";
/* -----------------------------------------------------------------------
## Font ##################################################
----------------------------------------------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@700&display=swap");
.lp-renewal-cp {
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Noto Sans Japanese", "Noto Sans CJK JP", sans-serif;
}

/* -----------------------------------------------------------------------
## Common ##################################################
----------------------------------------------------------------------- */
.sp-only {
    display: none;
}
.wintersale {
	margin: 0 auto;
	width: 100%;
	text-align: center;
	font-size: 1.2em;
	color: #444444;
	padding-bottom: 80px;
	letter-spacing: 0.02em;
	z-index: auto;
	background: #e4152c;
	overflow: hidden;
}
.wintersale ul {
	display: flex;
}
.wintersale h1,.wintersale h2,.wintersale h3 {
	border-bottom: none;
	background: none;
	text-align: center;
}
.wintersale h2 {
    padding: 0;
    margin: 0 auto 30px;
    font-size: 2.1rem;
    line-height: 1.4em;
    font-weight: 700;
    display: inline-block;
    position: relative;
}

.wintersale h3 {
    font-size: 1.4em;
    /* margin: 0 auto; */
    font-weight: 700;
    /* letter-spacing: 0.09em; */
    /* position: relative; */
}

.lp-nav ul li a,.lp-menu ul li a {
	display: block;
}
/*グンゼストアcss打消し*/
.st-Breadcrumbs_Item div {
	display: inline-block
	}

.st-Breadcrumbs {
	margin-top: 0;
	margin-bottom: 0;
	list-style: none;
	width: 100%;
	max-width: 1266px;
	padding-left: 30px;
	padding-right: 30px;
	box-sizing: border-box;
	margin: 11px auto 15px;
	font-size: 0;
}
.st-Breadcrumbs_Item {
	font-size: 11px;
	display: inline-block
}
.st-Breadcrumbs_Item:after {
	content: '＞';
	margin: 0 7px;
	color: #555
}
.st-Breadcrumbs_Item:last-child:after {
	display: none
}
.st-Breadcrumbs_Link {
	color: #7e7e7e;
	text-decoration: underline
}
.st-Breadcrumbs_Link:hover, .st-Breadcrumbs_Link:focus {
	text-decoration: none
}
.pane-contents > .container{
	width: auto;
}
/* -----------------------------------------------------------------------
## main ##################################################
----------------------------------------------------------------------- */
.wintersale .lp-main{
	background: url(/lp/wintersale/25/images/mv-bg.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 480px;
}
.wintersale .ttl_freeshipping{
    position: absolute;
    left: -165px;
    bottom: 0;
    width: 225px;
}
.wintersale .ttl_sub{
    position: absolute;
    right: -175px;
    top: 25px;
    width: 202px;
}


.wintersale .lp-promo {
    width: 100%;
    margin: -90px auto 90px;
    box-sizing: border-box;
    text-align: center;
    background: transparent;
}

.wintersale .lp-promo-inner {
  max-width: 980px;
  margin: 0 auto;
  color: #fff;
}

.wintersale .lp-promo .promo-title {
    margin: 0 0 8px;
    font-weight: 800;
    font-size: 25px;
    line-height: 1.2;
    letter-spacing: .02em;
    text-transform: none;
    color: #fff;
}

.wintersale .lp-promo .promo-desc {
    margin: 0;
    font-weight: 400;
    font-size: 20px;
    line-height: 2;
    color: #fff;
}


/* -----------------------------------------------------------------------
## lp-nav ##################################################
----------------------------------------------------------------------- */
.wintersale .lp-nav {
	margin: auto 0;
	padding: 0;
	position: relative;
	font-size: 1.2em;
	background: #fff;
}

.lp-nav ul{
	width: 760px;
	margin: 0 auto;
}
.lp-nav ul li{
	font-size: 2.1rem;
	font-weight: bold;
	width: 50%;
	position: relative;
	border-radius: 10px 10px 0 0;
	border: solid #ff4386 4px;
	margin: 0 auto;
	justify-content:space-between;
	background: #fff;
}

.lp-nav ul li:last-child {
	border: solid #5f94d0 4px;
}

.lp-nav ul li.active {
	color: #fff;
	background: #ff4386;
}
.lp-nav ul li.active::after {
	content: "";
	width: 0px;
	height: 0px;
	border-style: solid;
	border-color: #ff4386 transparent transparent transparent;
	border-width: 20px 12px 0 12px;
	position : absolute;
	bottom: -20px;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 100;
}
.mens .lp-nav ul li.active{
	background: #5f94d0;
}
.mens .lp-nav ul li.active::after{
	border-color: #5f94d0 transparent transparent transparent;
}
.lp-nav ul li a {
	padding: 2.1% 0;
}
.lp-nav ul li a:hover {
	background-color: #ff4386;
	color: #fff;
	opacity: 1;
}

.lp-nav ul li:last-child a:hover {
	background-color: #5f94d0;
}

/* -----------------------------------------------------------------------
## lp-contents ##################################################
----------------------------------------------------------------------- */
.wintersale .lp-contents{
	width: 1200px;
	margin: 0 auto;
}
/* -----------------------------------------------------------------------
## lp-menu ##################################################
----------------------------------------------------------------------- */
.wintersale .lp-menu {
    margin: -40px auto 0;
    padding: 0 5px;
    position: relative;
}
.lp-menu h2 {
	color: #ffffff;
	margin: 0;
}
.lp-menu h2:before {
	background: url(/lp/wintersale/25/images/h2_left_white.png);
	left: -20%;
}

.lp-menu h2:after {
	background: url(/lp/wintersale/25/images/h2_right_white.png);
	right: -20%;
}
.lp-menu h2:before,
.lp-menu h2:after {
	content: "";
	position: absolute;
	display: inline-block;
	background-size: contain;
	background-repeat: no-repeat;
	width: 2.7rem;
	height: 2.7rem;
	top: 0;
}

.lp-menu ul {
    margin: 10px 80px 0;
    justify-content: center;
    column-gap: 30px;
}
.lp-menu ul a {
    font-size: 1.7rem;
    font-weight: bold;
    width: 240px;
    position: relative;
    color: #790d19;
    line-height: 1.5em;
    display: flex;
    align-items: center;
    background: url(/lp/wintersale/25/images/btn01.png) no-repeat;
    background-size: 100% auto;
    background-position: center;
    justify-content: center;
}

.lp-menu ul a:after{
	content: '\EA03';
	font-family: iconfont,sans-serif;
	font-style: normal;
	font-variant: normal;
	font-size: 0.9em;
	font-weight: 400;
	text-decoration: none;
	text-transform: none;
	vertical-align: middle;
	line-height: 1;
	speak: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: inline-block;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -.5em;
	color: #790d19;
	transform:rotate(90deg);
}
.lp-menu ul a:hover{
	/*opacity: 0.8;*/
  opacity: 1;
  position: relative;
  transform: translate3d(0, 5px, 0);
  transition: .3s;
}
.lp-menu ul li {
    padding: 8% 5%;
    line-height: 1.3;
}

/* -----------------------------------------------------------------------
## lp-section ##################################################
----------------------------------------------------------------------- */
.wintersale .lp-section{
	margin: 0 auto;
	padding: 25px 0;
	position: relative;
}
/* -----------------------------------------------------------------------
## lp-section #check ##################################################
----------------------------------------------------------------------- */
/*.lp-section .check h3 {
	font-weight: bold;
	font-size: 1.8rem;
	margin-bottom: 0.8%;
	color: #441515;
}*/
.lp-section .check h3:before {
	background: url(/lp/wintersale/24/images/h3_left_check.png);
	left: -1.8rem;
}

.lp-section .check h3:after {
	background: url(/lp/wintersale/24/images/h3_right_check.png);
	right: -1.8rem;
}
.lp-section .check h3:before,
.lp-section .check h3:after {
	content: "";
	position: absolute;
	display: inline-block;
	background-size: contain;
	background-repeat: no-repeat;
	width: 2.5rem;
	height: 2.5rem;
	top: 0.8rem;
}

.lp-section .check ul{
	width: 980px;
	margin: 0 auto;
	flex-wrap: wrap;
	justify-content: space-between;
}

.lp-section .check ul a {
	width: 482px;
	padding: 2.5% 0 2.5% 2%;
	display: block;
	background: #fff;
	border-radius: 10px;
	border: solid #ab0823 4px;
	color: #ab0823;
	position: relative;
	font-weight: 700;
	font-size: 1.7rem;
}
.lp-section .check ul a:hover{
	background: #ab0823;
	color: #fff;
	opacity: 1;
}

.lp-section .check ul a:before {
	content: "";
	position: absolute;
	background: url(/lp/wintersale/24/images/icon_sale.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 65px;
	height: 65px;
	top: 12%;
	left: 5%;
}

.lp-section .check ul a:hover::before {
	background: url(/lp/wintersale/24/images/icon_sale_hover.png);
	background-size: contain;
	background-repeat: no-repeat;
}

.lp-section .check ul a:hover::after {
	color: #fff;
}

.lp-section .check ul a:after {
	content: '\EA03';
	font-family: iconfont,sans-serif;
	font-style: normal;
	font-variant: normal;
	font-weight: 400;
	text-decoration: none;
	text-transform: none;
	vertical-align: middle;
	line-height: 1;
	speak: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: inline-block;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -.5em;
}

/* -----------------------------------------------------------------------
## lp-section #category ##################################################
----------------------------------------------------------------------- */
.lp-section #category {
    padding: 40px 0 90px;
    background: #ffebc4;
    margin-top: 20px;
}
.lp-section #category h2{
	color: #e4152c;
	margin-top: 0;
}
.lp-section #category h2:before {
	background: url(/lp/wintersale/24/images/h2_left_red.png);
	left: -25%;
}

.lp-section #category h2:after {
	background: url(/lp/wintersale/24/images/h2_right_red.png);
	right: -25%;
}
.lp-section #category h2:before,
.lp-section #category h2:after {
	content: "";
	position: absolute;
	display: inline-block;
	background-size: contain;
	background-repeat: no-repeat;
	width: 2.8rem;
	height: 2.8rem;
	top: 0;
}
.lp-section #category ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    row-gap: 1.15rem;
}

.lp-section #category ul li:nth-child(n+4) img {
	/*margin-bottom: 0.7rem;*/
}

.lp-section #category ul li a{
	display: inline-block;
	color: inherit;
	text-decoration: none;
	transition: opacity 0.3s;
}

.lp-section #category .category-menu {
    display: flex;
    gap: 35px;
    margin: 0px 80px 35px;
}

.lp-section #category .cat-mens li,
.lp-section #category .cat-ladies li{
    width: calc(100% / 2 - 10px);
    overflow: visible !important;
}

.lp-section #category ul li img{
    /*margin-bottom:0.5rem;*/ 
}
.lp-section #category .cat-mens .off-price{
    position: absolute;
    background: #e60f23;
    color: #fff;
    padding: 5px 8px;
    border-radius: 8px;
    top: -30px;
    right: 10px;
    font-size: 1.15rem;
    font-weight: 700;
    z-index: 1;
    line-height: 1.1;
    filter: drop-shadow(3px 3px 5px rgba(103,103,103, 0.25));
    animation: 1.2s bound-anim ease-in infinite alternate;
}
.lp-section #category .cat-mens .off-price span{
	font-size: 1.8rem;
}

.lp-section #category .cat-mens .off-price::after {
    content: "";
    width: 0px;
    height: 0px;
    border-style: solid;
    border-color: #e60f23 transparent transparent transparent;
    border-width: 10px 5px 0 5px;
    position: absolute;
    bottom: -9px;
    right: 25px;
}
.lp-section #category .cat-ladies .off-price{
    position: absolute;
    background: #e60f23;
    color: #fff;
    padding: 5px 8px;
    border-radius: 8px;
    top: -30px;
    right: 3px;
    font-size: 1rem;
    font-weight: 700;
    z-index: 1;
    line-height: 1.1;
    filter: drop-shadow(3px 3px 5px rgba(103,103,103, 0.25));
    animation: 1.2s bound-anim ease-in infinite alternate;	
}
.lp-section #category .cat-ladies .off-price span{
	font-size: 1.5rem;
}

.lp-section #category .cat-ladies .off-price::after {
    content: "";
    width: 0px;
    height: 0px;
    border-style: solid;
    border-color: #e60f23 transparent transparent transparent;
    border-width: 10px 5px 0 5px;
    position: absolute;
    bottom: -9px;
    right: 20px;
}

/* プルダウン */
/* ▼ プルダウンコンテナ */
.lp-section #category .category-item {
    position: relative;
}
.lp-section #category .category-item .dropdown-content {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #ffce92;
    display: none;
    z-index: 999;
    padding: 15px 10px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

/*
.category-item .dropdown-content {
    display: none !important;
    background: #ffce92;
    padding: 15px;
    width: 100%;
    box-sizing: border-box;
}
*/

/* ▼ 開いた状態 */
.category-item.open .dropdown-content {
	display: block !important;
}

/* ▼ 2カラムレイアウト */
.category-item .dropdown-mens,
.category-item .dropdown-ladies{
	display: flex;
	flex-wrap: wrap;
	gap: 20px 15px; /* 上下20px、左右15px */
}

/* ▼ 各リンクブロック */
.category-item .dropdown-mens a,
.category-item .dropdown-ladies a {
	width: calc(50% - 8px); /* 2カラム */
	text-align: center;
	text-decoration: none;
	color: #004b9b; /* 画像の例と似た青色 */
	font-size: 1.4rem;
	font-weight: bold;
	display: block;
}

/* ▼ 画像を確実に表示 */
.category-item .dropdown-mens a img,
.category-item .dropdown-ladies a img {
    width: 100%;
    height: auto;
    display: block;
}
/* ▼ テキスト（画像の下） */
.category-item .dropdown-mens a p {
    margin-top: 8px;
    font-size: 15px;
    color: #004b9b;
    line-height: 1.2;
}
.category-item .dropdown-ladies a p {
    margin-top: 8px;
    font-size: 15px;
    color: #a90422;
    line-height: 1.2;
}

/*プルダウンここまで*/

/* シーズンから探す */
.lp-section #category .season-menu {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    margin: 0px 80px 45px;
    justify-content: center;
}

/* 2カラム */
.lp-section #category .season-row {
    width: calc(50% - 20px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
}

/* 画像を中央に */
.lp-section #category .season-row img {
    max-width: 100%;
    height: auto;
}

/* ボタンを横並びにする */
.lp-section  .season-menu .btn-wrap {
    display: flex;
    gap: 20px;
    justify-content: center;
}

/* ボタン共通 */
.lp-section .season-menu .btn,
.lp-section .commitment-menu .btn {
    position: relative;
    display: inline-block;
    width: 230px;
    padding: 10px 0;
    font-size: 1.2rem;
    line-height: 2rem;
    font-weight: bold;
    color: #fff;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    border: none;
}

.lp-section .season-menu .btn::before,
.lp-section .commitment-menu .btn::before {
	content: '\EA03';
	font-family: iconfont, sans-serif;
	font-style: normal;
	font-variant: normal;
	font-weight: 400;
	text-decoration: none;
	text-transform: none;
	vertical-align: middle;
	line-height: 1;
	speak: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: inline-block;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -0.4em;
}

/* ボタン 色 */
.lp-section .season-menu .btn.mens,
.lp-section .commitment-menu .btn.mens {
    background: #003f7f;
}

.lp-section .season-menu .btn.ladies,
.lp-section .commitment-menu .btn.ladies {
    background: #a90422;
}


/* こだわりから探す */
.lp-section .commitment-menu {
    display: flex;
    margin: 0px 80px;
    flex-wrap: wrap;
    justify-content: space-between;
}

/* 4カラム */
.lp-section .commitment-menu .commitment-row {
    width: calc(25% - 15px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
}

/* 画像を中央に */
.lp-section .commitment-menu .commitment-row img {
    max-width: 100%;
    height: auto;
}

/* ボタンを縦積みにする */
.lp-section .commitment-menu .btn-wrap {
    display: flex;
    flex-direction: column;
    gap: 10px;
    justify-content: center;
    align-items: center;
}

/* -----------------------------------------------------------------------
## lp-section #event ##################################################
----------------------------------------------------------------------- */
.lp-section #event {
    background: repeating-linear-gradient(-45deg, #ffe8bf, #ffe8bf 10px, #ffd894 10px, #ffd894 20px);
    padding: 50px 0;
}

.lp-section #event h2{
	color: #c0131a;
	line-height: 1.7;
	background: url(/lp/wintersale/24/images/h2_event.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 480px;
	height: 95px;
	padding: 1.2% 0;
}

.lp-section #event ul {
    display: flex;
    width: 980px;
    margin: 0 auto;
    /* gap: 40px 0; */
    justify-content: center;
}

.lp-section #event ul li {
    width: 670px;
}

/* 2カラムの場合 */
.lp-section #event ul.column2 {
	width: 820px;
}
.lp-section #event ul.column2 li {
	width: 400px;
}
/* 3カラムの場合 */
.lp-section #event ul.column3 {
	width: 980px;
}
.lp-section #event ul.column3 li {
	width: 310px;
}

/* 5カラムの場合(3カラム-2カラム) */
.lp-section #event ul.column5 {
	width: 980px;
	justify-content: center;
	gap: 40px 25px;
}
.lp-section #event ul.column5 li {
	width: 310px;
}

.lp-section #event .event_btn {
    width: 400px;
    margin: 15px auto 0;
    background: #ff7200;
    padding: 10px 0;
    color: #fff;
    border-radius: 5px;
    position: relative;
    font-weight: bold;
    font-size: 1.5rem;
}

.lp-section #event .event_btn::before{
	content: '\EA03';
	font-family: iconfont,sans-serif;
	font-style: normal;
	font-variant: normal;
	font-weight: 400;
	text-decoration: none;
	text-transform: none;
	vertical-align: middle;
	line-height: 1;
	speak: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: inline-block;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -0.4em;
}

.lp-section #event ul li img {
	border: 2px solid #ab0823;
}

/* -----------------------------------------------------------------------
## lp-section #outlet ##################################################
----------------------------------------------------------------------- */
.lp-section #outlet {
    background: #ffd6be;
    padding: 50px 0;
}

.lp-section #outlet h2 {
    color: #c0131a;
    line-height: 1.7;
    background: url(/lp/wintersale/25/images/h2_outlet.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 540px;
    height: 95px;
    padding: 1.2% 0;
}
.lp-section #outlet ul {
    display: flex;
    gap: 40px;
    justify-content: center;
}

.lp-section #outlet ul li {
    width: 310px;
    font-size: 1.35rem;
}

/* 2カラムの場合 */
.lp-section #outlet ul.column2 {
}
.lp-section #outlet ul.column2 li {
}

/* ボタン共通 */
.lp-section #outlet .btn {
    position: relative;
    display: inline-block;
    width: 280px;
    padding: 10px 0;
    font-size: 1.35rem;
    line-height: 2rem;
    font-weight: bold;
    color: #fff;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    border: none;
}

.lp-section #outlet .btn::before {
	content: '\EA03';
	font-family: iconfont, sans-serif;
	font-style: normal;
	font-variant: normal;
	font-weight: 400;
	text-decoration: none;
	text-transform: none;
	vertical-align: middle;
	line-height: 1;
	speak: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: inline-block;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -0.4em;
}

/* ボタン 色 */
.lp-section #outlet .btn.mens {
    background: #003f7f;
}

.lp-section #outlet .btn.ladies {
    background: #a90422;
}

/* 画像を中央に */
.lp-section #outlet img {
    max-width: 100%;
    height: auto;
}

/* ボタンを縦積みにする */
.lp-section #outlet .btn-wrap {
    display: flex;
    margin-top: 15px;
    flex-direction: column;
    gap: 10px;
    justify-content: center;
    align-items: center;
}


/*.lp-section #outlet ul li img {
	border: 2px solid #ab0823;
}*/
/* -----------------------------------------------------------------------
## lp-section #brand ##################################################
----------------------------------------------------------------------- */
.lp-section #brand {
    padding: 40px 0 90px;
    background: #fffbdb;
}

.lp-section #brand h2 {
	color: #441515;
}

.lp-section #brand h2:before {
	background: url(/lp/wintersale/25/images/h2_left.png);
	left: -15%;
}

.lp-section #brand h2:after {
	background: url(/lp/wintersale/25/images/h2_right.png);
	right: -15%;
}
.lp-section #brand h2:before,
.lp-section #brand h2:after {
	content: "";
	position: absolute;
	display: inline-block;
	background-size: contain;
	background-repeat: no-repeat;
	width: 2.8rem;
	height: 2.8rem;
	top: 0;
}

.lp-section #brand .brand-menu {
    display: flex;
    gap: 10px;
    margin: 0px 50px 10px;
    justify-content: center;
}
.lp-section #brand ul {
    display: flex;
    gap: 7px;
    justify-content: center;
    max-width: 1100px;
    margin: 0;
    flex-wrap: nowrap;
    flex-direction: row;
}

.lp-section #brand ul li {
   width: calc(100% / 2 - 20px);
    position: relative;
}

.lp-section #brand .discount {
	position: absolute;
	background: #e60f23;
	color: #fff;
	padding: 8px 13px;
	border-radius: 8px;
	top: -32px;
	right: 8px;
	font-size: 1.1rem;
	font-weight: 700;
	z-index: 2;
	line-height: 1.1;
	filter: drop-shadow(3px 3px 5px rgba(103,103,103, 0.25));
	animation: 1.2s bound-anim ease-in infinite alternate;
}

.lp-section #brand .discount span{
	font-size: 1.5rem;
}
.lp-section #brand .discount::after{
	content: "";
	width: 0px;
	height: 0px;
	border-style: solid;
	border-color: #e60f23 transparent transparent transparent;
	border-width: 10px 5px 0 5px;
	position: absolute;
	bottom: -8px;
	right: 8%;
}

/*無縫製 注釈テキスト*/
.lp-section #brand .brand-text {
    font-size: 12px;
    line-height: 1.4;
    color: #444444;
    margin-top: 12px;
    margin-left: 415px;
    margin-right: 0;
    margin-bottom: 20px;
    padding: 0 0;
    box-sizing: border-box;
    max-width: none;
}

/*下部メニューボタン*/
.lp-section #brand .menu-area ul {
    width: 1100px;
    margin: 0 auto 0;
    gap: 10px;
    display: flex;
    font-size: 1.35rem;
    flex-direction: row;
    padding: 0;
}

.lp-section #brand .menu-area ul li {
    width: 360px;
    color: #fff;
    position: relative;
    font-weight: bold;
    border-radius: 5px;
    overflow: hidden;
}

.lp-section #brand .menu-area ul li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 5% 0;
    background: #5f94d0;
    color: #fff;
}

.lp-section #brand .menu-area ul li a::after{
	content: '\EA03';
	font-family: iconfont,sans-serif;
	font-style: normal;
	font-variant: normal;
	font-weight: 400;
	text-decoration: none;
	text-transform: none;
	vertical-align: middle;
	line-height: 1;
	speak: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: inline-block;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -.4em;
}
.lp-section #brand .menu-area ul li:nth-child(2) a{
    background: #ff4386;
}
.lp-section #brand .menu-area ul li:nth-child(3) a{
    background: #ebaa0c;
}
/* -----------------------------------------------------------------------
## lp-ranking ##################################################
----------------------------------------------------------------------- */
.lp-ranking {
    background: #fff3b1;
    padding: 0 0 90px;
}

.lp-ranking .ranking-slide {
    display: flex;
    max-width: 1150px;
    gap: 30px;
    margin: 0 80px;
}

.lp-ranking .check h3:before {
    background: url(/lp/wintersale/25/images/h3_left_ranking.png);
    left: -13%;
}

.lp-ranking .check h3:after {
    background: url(/lp/wintersale/25/images/h3_right_ranking.png);
    right: -20%;
}

.lp-ranking .check h3:before, .lp-ranking .check h3:after {
    content: "";
    position: absolute;
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    width: 3rem;
    height: 3rem;
    top: 0rem;
}

.lp-ranking h3 img {
    font-size: 1.4em;
    margin: 10px auto 15px;
    font-weight: 700;
    width: 340px;
}

.lp-ranking .check .section-title_m {
    font-weight: bold;
    font-size: 26px;
    color: #003f7f;
    position: relative;
    display: inline-block;
    margin-bottom: 10px;
    padding: 0;
}

.lp-ranking .check .section-title_l {
    font-weight: bold;
    font-size: 26px;
    color: #a90422;
    position: relative;
    display: inline-block;
    margin-bottom: 10px;
    padding: 0;
}

.lp-ranking .check .section-title_m span {
    font-weight: 900;
    font-size: 26px;
    color: #003f7f;
    display: inline-block;
    padding-bottom: 0%;
    margin: 0 auto 3%;
}

.lp-ranking .check .section-title_l span {
    font-weight: 900;
    font-size: 26px;
    color: #a90422;
    display: inline-block;
    margin: 0 auto 3%;
    margin-bottom: 8px;
}

.lp-ranking h2 {
    width: 100vw;
    max-width: 100%;
    margin: 25px auto 20px;
    position: relative;
    color: #fff;
    z-index: 1;
}

.lp-ranking h2::after {
    content: "";
    width: 0px;
    height: 0px;
    border-style: solid;
    border-color: #cea637 transparent transparent transparent;
    border-width: 15px 10px 0 10px;
    position: absolute;
    bottom: -35px;
    left: 0;
    right: 0;
    margin: auto;
}

.lp-menu .check h3:before {
	background: url(/lp/wintersale/25/images/h3_left_check.png);
	left: -1.3rem;
}

.lp-menu .check h3:after {
	background: url(/lp/wintersale/25/images/h3_right_check.png);
	right: -1.3rem;
}
.lp-menu .check h3:before,
.lp-menu .check h3:after {
	content: "";
	position: absolute;
	display: inline-block;
	background-size: contain;
	background-repeat: no-repeat;
	width: 2.2rem;
	height: 2.2rem;
	top: 0.8rem;
}

.lp-contents .lp-menu h3 img {
    font-size: 1.4em;
    margin: 10px auto 15px;
    font-weight: 700;
    width: 340px;
}

.lp-ranking .ranking-title {
    background-image: url(/lp/wintersale/25/images/ranking-bg_pc.jpg);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: cover;
}

.lp-ranking h4 {
    text-align: center;
    color: #444444;
    font-size: 14px;
    padding-bottom: 25px;
    margin: 30px auto 0px;
    width: auto;
    font-weight: 500;
}

/*ランキングスライダー*/
.lp-ranking .slider {
  position: relative;
  overflow: hidden;
}

.lp-ranking .slider-track {
  display: flex;
  transition: transform 0.4s ease;
}

.lp-ranking .slide {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.lp-ranking .slide {
    flex: 0 0 33.333%;
    position: relative;
    padding: 5px;
}
.lp-ranking .slide img {
    width: 100%;
    display: block;
}

.lp-ranking .arrow.right {
    position: absolute;
    top: 90px;
    transform: translateY(-50%);
    -webkit-text-stroke: 1px #867a7a;
    color: rgba(0, 0, 0, 0.5);
    background: rgba(255, 255, 255, 0.5);
    padding: 3px 0px 3px 8px;
    cursor: pointer;
    font-size: 14px;
    z-index: 2;
}

.lp-ranking .arrow.left {
    position: absolute;
    top: 90px;
    transform: translateY(-50%);
    -webkit-text-stroke: 1px #867a7a;
    color: rgba(0, 0, 0, 0.5);
    background: rgba(255, 255, 255, 0.5);
    padding: 3px 8px 3px 0px;
    cursor: pointer;
    font-size: 14px;
    z-index: 2;
}

.lp-ranking .arrow.left { left: 5px; }
.lp-ranking .arrow.right { right: 5px; }

/* スライド内の要素が完全に表示されるようにする */
.lp-ranking .slide {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
}

/* 商品ブロックの親要素が高さを持てるようにする */
.lp-ranking .block-ranking-r--goods-image {
    display: flex;
    flex-direction: column;
    height: auto;
    overflow: visible;
    position: relative;
    width: 100%;
    padding: 0;
}

.lp-ranking .item-name {
    margin: 10px auto 7px;
    font-size: 16px;
    text-align: center;
    line-height: 1.4;
}

.lp-ranking .page-Campaign_PriceNormal {
    margin: -20px;
    padding: 0;
    line-height: 1.2;
}
.lp-ranking .page-Campaign_Price {
  margin: 2px 0 0 0;
  padding: 0;
}

/* 余白防止の追加リセット */
.lp-ranking .page-Campaign_Price p,
.lp-ranking .page-Campaign_Price span {
  margin: 0;
  padding: 0;
  display: inline;
}

/* インジケーター */
/*.lp-ranking .slider-indicator {
  text-align: center;
  margin-top: 10px;
}
.lp-ranking .slider-indicator span {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ccc;
  margin: 0 3px;
}
.lp-ranking .slider-indicator span.active {
  background: #333;
}*/

.block-ranking-r--goods-image .block-ranking-r--rank {
    position: absolute;
    z-index: 1;
    left: auto;
    right: 0;
    top: 0;
    width: 18%;
    height: 35px;
    border-radius: 0;
    font-size: 1.5rem;
    font-weight: bold;
    color: #717171;
    background: #ffffff;
    /*border: solid 1px #ebeaeb;*/
}

.block-ranking-r--goods-image .block-ranking-r--rank-1 {
    background: #a58429;
    color: #ffffff;
}
.block-ranking-r--goods-image .block-ranking-r--rank-2 {
    background: #9b949a;
    color: #ffffff;
}
.block-ranking-r--goods-image .block-ranking-r--rank-3 {
    background: #8a7164;
    color: #ffffff;
}
/*.block-ranking-r--goods-image .block-ranking-r--rank-3:before {
    border-color: #8a7164 transparent transparent transparent;
}
.block-ranking-r--goods-image .block-ranking-r--rank-3:after {
    border-color: transparent #8a7164 transparent transparent;
}*/


.block-ranking-r--goods-image .block-ranking-r--rank-1, .block-ranking-r--goods-image .block-ranking-r--rank-2, .block-ranking-r--goods-image .block-ranking-r--rank-3 {
    right: 0;
    top: 0;
    padding-top: 4px;
    border: none;
}

.block-ranking-r--goods-image .block-ranking-r--rank-1:before, .block-ranking-r--goods-image .block-ranking-r--rank-2:before, .block-ranking-r--goods-image .block-ranking-r--rank-3:before {
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 28px 0 0;
}

.block-ranking-r--goods-image .block-ranking-r--rank-1:after, .block-ranking-r--goods-image .block-ranking-r--rank-2:after, .block-ranking-r--goods-image .block-ranking-r--rank-3:after {
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0px 28px 10px 0;
}

/*注意書き*/
.lp-section .attention{
	width:  900px;
	margin: 50px auto;
	text-align: left;
	font-size: 0.9em;
	background: #fff;
	padding: 20px 50px 30px;
}
.lp-section .attention h3 {
    font-size: 1.2em;
    text-align: center;
    margin-bottom: 1%;
}

.pc{
	display: inline !important;
}
.sp{
	display: none !important;
}
/* -----------------------------------------------------------------------
## SP ##################################################
----------------------------------------------------------------------- */
@media(max-width:767px){
/* -----------------------------------------------------------------------
## Common ##################################################
----------------------------------------------------------------------- */
.sp-only {
    display: inline;
 }

.wintersale {
	width: 100%;
	font-size: 1.1em;
	padding-bottom: 8%;
	z-index: auto;
}
.wintersale h2{
	font-size: 2.2rem;
	margin: 0 0 0.5em;
}

/* -----------------------------------------------------------------------
## lp-main ##################################################
----------------------------------------------------------------------- */
.wintersale .lp-main{
	width: 100%;
	background-size: auto;
	background-position: center;
	background-image: none;
	padding: 0;
	height: 100%;
}
.wintersale h1{
	margin: 0 auto;
	padding: 0;
	text-align: center;
}
/* -----------------------------------------------------------------------
## lp-nav ##################################################
----------------------------------------------------------------------- */
.wintersale .lp-promo {
    width: 100%;
    margin: 0% auto 3.5rem;
    box-sizing: border-box;
    text-align: center;
    background: transparent;
}

.wintersale .lp-promo-inner {
  max-width: 980px;
  margin: 0 auto;
  color: #fff;                  /* テキスト全て白 */
}

.wintersale .lp-promo .promo-title {
    margin: 0;
    font-weight: 800;
    font-size: 1.15em;
    line-height: 1.5;
    letter-spacing: .02em;
    text-transform: none;
    color: #fff;
}
.wintersale .lp-promo .promo-desc {
    margin: 0;
    font-weight: 400;
    font-size: 1em;
    line-height: 2;
    color: #fff;
}
	

.wintersale .lp-nav {
	margin: 0 auto;
}
.lp-nav ul {
	width: 100%;
	margin: 0 auto;
}
.lp-nav ul li {
	width : calc(100% / 2) ;
	border-radius: 14px 14px 0 0;
	font-size: 1.0em;
	border-width: 3px;
}
.lp-nav ul li:last-child {
	border-width: 3px;
}
.lp-nav ul li.active::after {
	border-width: 26px 18px 0 18px;
	bottom: -16px;
}

/* -----------------------------------------------------------------------
## lp-contents ##################################################
----------------------------------------------------------------------- */
.wintersale .lp-contents{
	width: 100%;
}
/* -----------------------------------------------------------------------
## lp-menu ##################################################
----------------------------------------------------------------------- */
.wintersale .lp-menu {
    padding: 7% 0 1%;
}

.lp-menu ul {
    width: 96%;
    margin: 0 auto;
    flex-wrap: wrap;
    padding: 0;
    list-style: none;
    gap: 1rem;
    justify-content: center;
}

.lp-menu ul a {
    font-size: 1.7rem;
    font-weight: bold;
    width: 47%;
    position: relative;
    color: #790d19;
    line-height: 1.5em;
    display: flex;
    align-items: center;
    background: url(/lp/wintersale/25/images/btn01.png) no-repeat;
    background-size: 100% auto;
    background-position: center;
    justify-content: center;
}

.wintersale .lp-menu {
    padding: 0;
    margin: 0;
}

/* ★ 全ボタン共通設定 */
.lp-menu ul li a {
    display: block;
    width: 100%;
    padding: 12px 5px;
    text-align: center;
    text-decoration: none;
    color: #333;

    /* ボタン画像を全て共通に */
    background: url(/lp/wintersale/25/images/btn01.png) no-repeat center;
    background-size: 100% auto;

    line-height: 1.45;
}

/* hover */
.lp-menu ul li a:hover {
    opacity: 0.7;
}

.lp-menu ul a:after {
	right: 7px;
}

.lp-menu ul a:hover{
	/*opacity: 0.8;*/
  opacity: 1;
  position: relative;
  transform: none !important;   /* 沈まない */
  transition: none !important;  /* 動かさない */
}

/* -----------------------------------------------------------------------
## lp-section ##################################################
----------------------------------------------------------------------- */
.wintersale .lp-section{
	margin: 0 auto;
	padding: 2% 0;
}
.lp-section .check ul {
	width: 96%;
	row-gap: 18px;
	justify-content: space-between;
}
.lp-section .check ul a {
	width: 49%;
	line-height: 1.3;
	font-size: 1.6rem;
	padding-left: 10%;
	border: solid #ab0823 2px;
	border-radius: 5px;
}
.lp-section .check ul a:before {
	top: 11%;
	width: 5rem;
	height: 5rem;
}
.lp-section .check ul a:after {
	right: 2%;
}
.lp-section .check ul li {
	width: 100%;
}
.lp-section .check ul li img {
	padding-right:10px;
}
.lp-section #category {
    padding: 8% 2% 14%;
    margin: 8% 0 0;
}
.lp-section #category h2 {
	margin: 0 0 0.8em
}
.lp-section #category ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: flex-start;
    row-gap: 1.15rem;
}
.lp-section #category ul li {
	width: 100%;
	font-size: 1.6rem;
}

.lp-section #category .category-menu {
    display: flex;
    gap: 0;
    margin: 0 auto 4.5rem;
}

.lp-category ul li{
    width: 47%;
    margin: 0 auto;
}
.lp-category ul li img{
    margin-bottom:0.6rem; 
}

.lp-category .cat-mens li:first-child .off-price{
	font-size: 1.8rem;
	padding: 8px 15px;
    top: -45px;
}
.lp-category .cat-mens li:first-child .off-price span{
	font-size: 2.8rem;
}
.lp-category .cat-mens{
	margin: 10% auto;
}
.lp-category .cat-mens li:first-child{
	width: 96%;
	margin-bottom: 5%;
}
.lp-category .cat-mens .off-b{
	font-size: 1.8rem;
	top: -40px;
}
.lp-category .cat-mens .off-b span{
	font-size: 2.5rem;
}
.lp-category .cat-ladies {
    row-gap: 2.5rem;
    display: flex;
}
.lp-category .cat-ladies .off-price span {
    font-size: 1.7rem;
}
.lp-section #category .cat-mens li,
.lp-section #category .cat-ladies li{
    width: calc(100% / 1 - 1.4rem);
}

.lp-category .cat-ladies .off-price {
    position: absolute;
    background: #e60f23;
    color: #fff;
    padding: 5px 8px;
    border-radius: 8px;
    top: -20px;
    right: 3px;
    font-size: 1.4rem;
    font-weight: 700;
    z-index: 1;
    line-height: 1.1;
    filter: drop-shadow(3px 3px 5px rgba(103,103,103, 0.25));
    animation: 1.2s bound-anim ease-in infinite alternate;
}


/* カテゴリ プルダウン */
/* ▼ プルダウン全体 */
.lp-section #category .category-item {
    position: relative;
}

.category-item .dropdown-mens a p {
    margin-top: 8px;
    font-size: 1.25rem;
    color: #004b9b;
    line-height: 1.2;
}
.category-item .dropdown-ladies a p {
    margin-top: 8px;
    font-size: 1.25rem;
    color: #a90422;
    line-height: 1.2;
}
/* ▼ 非表示状態（初期で必ず消す） */
.lp-section #category .category-item .dropdown-content {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #ffce92;
    display: none;
    z-index: 999;
    padding: 15px 10px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

.category-item .dropdown-mens, .category-item .dropdown-ladies {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem 0rem;
    justify-content: space-between;
}

.lp-section #category ul li a {
    display: inline-block;
    color: inherit;
    text-decoration: none;
    transition: opacity 0.3s;
}

.category-item .dropdown-mens a,
.category-item .dropdown-ladies a {
    width: calc(50% - 8px);
    text-align: center;
    text-decoration: none;
    color: #004b9b;
    font-size: 1.4rem;
    font-weight: bold;
    display: block;
}
/* ▲ プルダウンここまで */


/* シーズンから探す */
.lp-section #category .season-menu {
    display: flex;
    gap: 3.2rem;
    flex-direction: column;
    align-items: center;
    margin: 0 2% 4.5rem;
}
.lp-section #category .season-row {
    width: 100%;
    row-gap: 1.5rem;
}

/* 画像を中央に */
.lp-section #category .season-row img {
    max-width: 100%;
    height: auto;
}

/* ボタンを横並びにする */
.lp-section  .season-menu .btn-wrap {
    display: flex;
    column-gap: 1.2rem;
    width: 100%;
    justify-content: center;
}
/* ボタン共通 */
.lp-section .season-menu .btn,
.lp-section .commitment-menu .btn {
    position: relative;
    display: inline-block;
    width: 100%;
    height: auto;
    min-width: auto;
    padding: 1rem 0;
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: bold;
    color: #fff;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    border: none;
}

.lp-section .season-menu .btn::before,
.lp-section .commitment-menu .btn::before {
	content: '\EA03';
	font-family: iconfont, sans-serif;
	font-style: normal;
	font-variant: normal;
	font-weight: 400;
	text-decoration: none;
	text-transform: none;
	vertical-align: middle;
	line-height: 1;
	speak: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: inline-block;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -0.4em;
}

/* こだわりから探す */
.lp-section .commitment-menu {
    display: flex;
    margin: 0 2% 0;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 3.5rem;
}
/* 2カラム */
.lp-section .commitment-menu .commitment-row {
    width: calc(50% - 5px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
}

/* 画像を中央に */
.lp-section .commitment-menu .commitment-row img {
    max-width: 100%;
    height: auto;
}

/* ボタンを縦積みにする */
.lp-section .commitment-menu .btn-wrap {
    display: flex;
    gap: 1rem;
    width: 100%;
    flex-direction: column;
    align-content: space-between;
}


/* ブランドから探す */

.lp-section #brand .brand-menu {
    display: flex;
    gap: 0;
    margin: auto 2%;
}

.lp-section #brand {
    padding: 8% 0 2%;
}

.lp-section #brand h2 {
    margin-bottom: 5%;
}

.lp-section #brand  ul li {
    position: relative;
    width: calc(100% / 2 - 1.4rem);
}

.lp-section #brand  ul li .brand-series {
    align-items: center;
    display: flex;
    justify-content: center;
    width: 100%;
}

.lp-section #brand  ul li .brand-series img {
    height: auto;
    width: 100%;
}

.lp-section #brand  .cat02 {
    row-gap: 1.5rem;
    margin: 0;
    column-gap: 1rem;
    width: 100%;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
}
.lp-section #brand  .cat02 li {
    width: calc(100% / 1 - 1.4rem);
}

.lp-section #brand  .off-price {
    font-size: 1.15rem;
    padding: 5px 8px;
    top: -50px;
}

.lp-section #brand  .off-price span {
    font-size: 2rem;
}


.lp-section #brand .menu-area ul {
    width: 93%;
    margin: 5% auto 4rem;
    row-gap: 1rem;
    display: flex;
    flex-direction: column;
}

.lp-section #brand .menu-area ul li {
    width: 100%;
}

.lp-section #brand .menu-area ul li a {
    display: block;
    font-size: 1.5rem;
    padding: 1rem 0;
}


.lp-section #brand .brand-text {
    text-align: left;
    font-size: 1.25rem;
    max-width: none;
    margin: 3% 4% 0;
}

/*　人気ランキングTOP5　*/
.lp-ranking {
    padding: 0 0 10%;
    flex-direction: column;
}
.lp-ranking .pc {
    display: none; 
}

.lp-ranking .ranking-title{
    background: none;
}
.lp-ranking h2 {
    padding: 0px;
    width: 100%;
    margin: 0 auto 0%;
    position: relative;
}
.lp-ranking h2::after {
    content: "";
    width: 0px;
    height: 0px;
    border-style: solid;
    border-color: #cea637 transparent transparent transparent;
    border-width: 12px 7px 0 7px;
    position: absolute;
    bottom: -9%;
    left: 0;
    right: 0;
    margin: auto;
}

.lp-ranking .check .section-title_m span {
    font-weight: 900;
    font-size: 2.3rem;
    color: #003f7f;
    display: inline-block;
    padding-bottom: 0%;
    margin: 0 auto 3%;
}

.lp-ranking .check .section-title_l span {
    font-weight: 900;
    font-size: 2.3rem;
    color: #a90422;
    display: inline-block;
    padding-bottom: 0;
    margin: 0 auto 3%;
}

.lp-ranking .check h3:before, .lp-ranking .check h3:after {
    content: "";
    position: absolute;
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    width: 4rem;
    height: 4rem;
    top: 0.4rem;
}

.lp-ranking .main-ttl {
    text-align: center;
    font-weight: 700;
}

.lp-ranking h4 {
    text-align: center;
    color: #444444;
    font-size: 1.5rem;
    padding: 1rem 2rem 2rem;
    margin: auto;
    width: auto;
    font-weight: 400;
}

/* ===================== 基本スライダー構造 ===================== */
.lp-ranking .slide {
    padding: 1%;
}

/* ランキング全体 */
.lp-ranking .ranking-box {
  position: relative; /* ここで位置を固定 */
  width: 100%;
  overflow: hidden;   /* スライド外は隠す */
}

/* track（スライドが動く部分） */
.slider-track {
  display: flex;
  flex-wrap: nowrap;
  position: relative; /* track はレイアウトから外す */
  left: 0;
  top: 0;
  will-change: transform;
  scroll-snap-type: x mandatory; /* スナップは維持 */
}

/* 各スライド */
.slider-track > * {
  flex: 0 0 auto;
  scroll-snap-align: start;
}

/* 横スクロールバーを非表示 */
.slider-track {
  -ms-overflow-style: none; /* IE / Edge */
  scrollbar-width: none;    /* Firefox */
}
.slider-track::-webkit-scrollbar {
  display: none;            /* Chrome / Safari */
}

.lp-ranking .slide {
  flex: 0 0 50%;
  box-sizing: border-box;
  padding: 0 0.75rem; /* 余白は内側で調整 */
}

.lp-ranking .slider-track {
    gap: 0;
}


/* ===================== インジケーター ===================== */
/*.slider-indicator {
  display: flex;
  justify-content: center;
  gap: 6px;
  margin-top: 12px;
}

.slider-indicator span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ccc;
  transition: background .3s;
}

.slider-indicator span.active {
  background: #a90422;
}*/

/* ===================== その他の既存スタイル ===================== */

/* ランキングアイテム配置 */
.lp-ranking .ranking-section {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0 1.5%;
}

.lp-ranking .ranking-slide {
  max-width: 100%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  row-gap: 2rem;
  margin: 0 3% 0;
}

.lp-ranking .item-name {
  margin: 10px auto 2px;
  font-size: 15px;
  text-align: center;
  line-height: 1.4;
}

/* ランク表示 */
.block-ranking-r--goods-image .block-ranking-r--rank {
  position: absolute;
  z-index: 1;
  right: 0;
  top: 0;
  width: 20%;
  height: 35px;
  font-size: 2rem;
  font-weight: bold;
  color: #717171;
  background: #ffffff;
}

.block-ranking-r--goods-image .block-ranking-r--rank-1 {
  background: #a58429;
  color: #ffffff;
}

.block-ranking-r--goods-image .block-ranking-r--rank-2 {
  background: #9b949a;
  color: #ffffff;
}

.block-ranking-r--goods-image .block-ranking-r--rank-3 {
  background: #8a7164;
  color: #ffffff;
}

/* 矢印 */
.lp-ranking .arrow.right,
.lp-ranking .arrow.left {
    position: absolute;
    top: 35%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.5);
    color: rgba(0, 0, 0, 0.5);
    padding: 0 2%;
    cursor: pointer;
    font-size: 2rem;
    z-index: 2;
}
.lp-ranking .arrow.right {
    right: 1.9%;
}

.lp-ranking .arrow.left {
    left: 1.3%;
}

/* ===================== 開催中のキャンペーン ===================== */
.lp-section #event {
	padding: 8% 0;
}
.lp-section #event h2 {
    line-height: 1.8em;
    width: 90%;
    padding: 2.5% 0 0;
    height: 80px;
    margin: 0;
}

.lp-section #event ul{
	width: 96%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.lp-section #event ul li {
	width: 100%;
}

.lp-section #event ul li:first-child {
	padding-bottom: 6%;
}
.lp-section #event ul li:nth-child(n+2) {
	width: 48%;
}

.lp-section #event .event_btn {
    margin: 1.5rem auto 0;
    width: 93%;
    padding: 1rem 0;
}

.lp-section #event ul li:nth-child(n+2) .event_btn {
	font-size: 1.4rem;
}

.lp-section #event .event_btn::before {
	right: 2%;
	margin-top: -0.45em;
}

/* 1カラムの場合 */
.lp-section #event ul.column1 {
    width: 90%;
    gap: 0;
}

.lp-section #event ul.column1 li {
    width: 100%;
}

.lp-section #event ul.column1 .event_btn {
    font-size: 1.6rem;
}

/* 2カラムの場合 */
.lp-section #event ul.column2 {
	width: 96%;
	gap: 0;
}
.lp-section #event ul.column2 li {
	width: 48%;
}
.lp-section #event ul.column2 .event_btn {
	font-size: 1.4rem;
}

/* 3カラムの場合 */
.lp-section #event ul.column3 {
	width: 96%;
	gap: 0;
}
.lp-section #event ul.column3 li {
	width: 100%;
}
.lp-section #event ul.column3 li:first-child {
	padding-bottom: 6%;
}
.lp-section #event ul.column3 li:nth-child(n+2) {
	width: 48%;
}
.lp-section #event ul.column3 .event_btn {
	font-size: 1.8rem;
}
.lp-section #event ul.column3 li:nth-child(n+2) .event_btn {
	font-size: 1.4rem;
}

/* 5カラムの場合(3カラム-2カラム) */
.lp-section #event ul.column5 {
	width: 96%;
	gap: 0 2%;
}
.lp-section #event ul.column5 li {
	width: 100%;
}
.lp-section #event ul.column5 li:nth-of-type(-n+3) {
	padding-bottom: 6%;
}
.lp-section #event ul.column5 li:nth-child(n+2) {
	width: 48%;
}
.lp-section #event ul.column5 .event_btn {
	font-size: 1.8rem;
}
.lp-section #event ul.column5 li:nth-child(n+2) .event_btn {
	font-size: 1.4rem;
}

/* ===================== アウトレットセール ===================== */
.lp-section #outlet {
    background: #ffd6be;
    padding: 8% 3% 10%;
}

.lp-section #outlet ul.column2 {
    display: flex;
    flex-wrap: wrap;
}

.lp-section #outlet h2 {
    color: #c0131a;
    line-height: 1.7;
    background: url(/lp/wintersale/25/images/h2_outlet.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 100%;
    height: 80px;
    padding: 4.4% 0 0;
    background-position: center;
}
.lp-section #outlet ul {
     display: flex;
     flex-wrap: wrap; /* ← 必須 */
     gap: 3%; /* 余白を%にしてはみ出し抑制 */
     padding: 0; /* paddingが効かない原因対策 */
     width: 100%;
     box-sizing: border-box;
}

    .lp-section #outlet ul li {
        width: 48%; /* ← 2カラム化の決め手 */
        list-style: none;
    }

    .lp-section #outlet ul li img {
        width: 100%; /* 画像がはみ出さないように */
        height: auto;
        display: block;
    }

.lp-section #outlet .btn-wrap {
    margin-top: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-content: center;
}

.lp-section #outlet .btn {
    font-size: 1.5rem;
    padding: 1rem 0;
    width: 100%;
    min-width: 0;
    position: relative;
}

/* ===================== 注意事項 ===================== */
.lp-section .attention {
	width:  100%;
	margin: 8% auto;
	font-size: 0.9em;
	padding: 20px 7% 7%;
}

.pc{
	display: none !important;
}
.sp{
	display: block !important;
}
}