@charset "utf-8";
/* =========================================================
   DISCOVER WEST mall の日（毎月20日 ポイント5倍）
   dwmday.css
   -------------------------------------------------------
   ・中央カラムは 430px 固定（SPデザインをそのまま流用）
   ・PC は 左パーツ / 中央430 / 右パーツ の3カラム。左右は position:fixed で追従
   ・数値は px 直書き。SP（430px以下）は calc(N / 430 * 100vw) で可変
   ========================================================= */

/* -------------------------------------------------- reset */
.pane-contents {
	padding-top: 0 !important;
}
.pane-contents .container {
	display: block !important;
	width: 100%;
}
.pane-left-menu {
	display: none !important;
}
.pane-right-menu {
	width: 1350px;
	margin: 60px auto 0;
}
.dwmday h2,
.dwmday h3,
.dwmday h4,
.dwmday p,
.dwmday dl,
.dwmday dt,
.dwmday dd {
	padding: 0;
	margin: 0;
	border: 0;
}
.dwmday ul,
.dwmday ol {
	list-style: none;
	padding: 0;
	margin: 0;
}
.dwmday img {
	width: auto;
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
}
.dwmday a {
	text-decoration: none;
}
.dwmday a:hover {
	text-decoration: none;
}
.dwmday a:active,
.dwmday a:focus {
	outline: unset;
	outline-offset: unset;
}
/* フリーページ既定の見出しを隠す */
.block-event-page--header {
	display: none;
}

/* -------------------------------------------------- base */
.dwmday {
	position: relative;
	background: #E8F4FB; /* main_bg.png 読み込み前／はみ出し部分の下地 */
	overflow: hidden;
}
.dwmday * {
	font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #333;
	box-sizing: border-box;
}
/* 背景（パステルのボケ）。画面に固定して敷く */
.dwmday::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image: url("../../../../img/usr/event/dwmday/main_bg.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	background-attachment: fixed;
	z-index: 0;
}
.dwmday .pc_only {
	display: block;
}
.dwmday .sp_only {
	display: none;
}
/* 見出し・数字まわりは明朝体 */
.dwmday .mincho,
.dwmday .sec_ttl .ja,
.dwmday .intro_ttl,
.dwmday .about_card_num,
.dwmday .cond_item_no .num,
.dwmday .faq_q .mark,
.dwmday .faq_a .mark,
.dwmday .notes_ttl {
	font-family: "Noto Serif JP", "Yu Mincho", YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "ＭＳ Ｐ明朝", serif;
}

/* ==========================================================
   PC 固定サイド（左ビジュアル / 右アンカーメニュー）
   ========================================================== */
/* 共通ヘッダー（position:fixed / 112px）の下を基準に上下中央 */
.dwmday .mv_pc {
	width: 100%;
	position: fixed;
	top: 112px;
	bottom: auto;
	left: 0;
	height: calc(100vh - 112px);
	display: flex;
	align-items: center;
	z-index: 5;
	pointer-events: none;
}
/* フッター手前で追従を止める（JSで付与）。
   フッターに左右パーツが重ならないようにするための切り替え。 */
.dwmday .mv_pc.is_bottom {
	position: absolute;
	top: auto;
	bottom: 60px;
	height: auto;
}
.dwmday .mv_pc_left,
.dwmday .mv_pc_right {
	width: calc((100% - 430px) / 2);
	display: flex;
	align-items: center;
	justify-content: center;
}
.dwmday .mc_pc_center {
	width: 430px;
	flex: 0 0 430px;
}
.dwmday .mv_pc_left img {
	width: 534px;
	max-width: 82%;
	max-height: calc(100vh - 200px);
	height: auto;
	object-fit: contain;
}
.dwmday .mv_pc_right__content {
	position: relative;
	width: 100%;
	display: flex;
	justify-content: center;
}
.dwmday .mv_menu {
	display: flex;
	flex-direction: column;
	gap: 20px;
	align-items: center;
	max-width: 340px;
	pointer-events: auto;
}
.dwmday .mv_menu a {
	position: relative;
	width: 340px;
	height: 65px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	background: linear-gradient(90deg, #304472 0%, #75ACE2 100%);
	border-radius: 8px;
	color: #fff;
	font-size: 18px;
	font-weight: 600;
	line-height: 1em;
	transition: opacity .2s ease;
	font-family: "Noto Serif JP", "Yu Mincho", YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "ＭＳ Ｐ明朝", serif;
}
.dwmday .mv_menu a .t,
.dwmday .mv_menu a .s {
	display: block;
	color: #fff;
	font-family: "Noto Serif JP", "Yu Mincho", YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "ＭＳ Ｐ明朝", serif;
}
.dwmday .mv_menu a .t {
	font-size: 18px;
	font-weight: 600;
	line-height: 22px;
}
.dwmday .mv_menu a .s {
	margin-top: 2px;
	font-size: 14px;
	font-weight: 600;
}
.dwmday .mv_menu a:hover {
	opacity: .82;
}

/* ==========================================================
   中央カラム（430px = SPデザイン共通）
   ========================================================== */
.dwmday .dwmday_inner {
	max-width: 430px;
	margin: 0 auto;
	background: #fff;
	position: relative;
	z-index: 8;
	overflow: hidden;
}

/* ---- 共通：セクション見出し ---- */
.dwmday .sec_ttl {
	text-align: center;
	margin-bottom: 30px;
}
.dwmday .sec_ttl .ja {
	display: block;
	font-size: 26px;
	line-height: 32px;
	font-weight: bold;
}
.dwmday .sec_ttl .en {
	display: block;
	font-size: 12px;
	line-height: 15px;
	font-weight: 500;
	color: #0068B7;
	margin-top: 12px;
	letter-spacing: 1px;
}
.dwmday #faq .sec_ttl .en {
	color: #333333;
}

/* ---- 共通：もっと見るボタン ---- */
.dwmday .more_btn {
	text-align: center;
	margin-top: 26px;
}
.dwmday .more_btn a {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	width: 280px;
	height: 60px;
	border: 2px solid #0068B7;
	border-radius: 8px;
	background: #fff;
	color: #0068B7;
	font-size: 16px;
	font-weight: bold;
	line-height: 1em;
	transition: background-color .2s ease, color .2s ease;
}
.dwmday .more_btn a:hover {
	background: #0068B7;
	color: #fff;
}

/* ---- 強調文字 ---- */
.dwmday .txt-orange {
	color: #F55A00;
	font-weight: bold;
	font-family: "Noto Serif JP", "Yu Mincho", YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "ＭＳ Ｐ明朝", serif;
}
.dwmday .txt_blue {
	color: #0068B7;
	font-weight: bold;
}

/* ==========================================================
   MV
   ========================================================== */
.dwmday .mv img {
	width: 100%;
	display: block;
}

/* ==========================================================
   イントロ（紙吹雪背景）
   ========================================================== */
.dwmday .intro {
	position: relative;
	padding: 63px 29px 49px;
	text-align: center;
	background: url("../../../../img/usr/event/dwmday/bg_parts.png") no-repeat center top;
	background-size: 100% auto;
}
.dwmday .intro_ttl {
	margin-bottom: 30px;
}
.dwmday .intro_ttl .t01 {
	display: block;
	font-size: 24px;
	line-height: 1.5em;
	font-weight: 700;
	font-family: inherit;
}
.dwmday .intro_ttl .t01 .size-up {
	font-size: 40px;
}
.dwmday .intro_ttl .t02 {
	display: block;
	font-size: 24px;
	line-height: 1.5em;
	font-weight: 700;
	font-family: inherit;
	color: #0068B7;
}
.dwmday .intro_txt {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5em;
}
.dwmday .intro_txt + .intro_txt {
	margin-top: 18px;
}
.dwmday .intro_txt .txt-blue {
	color: #0068B7;
	font-weight: bold;
}

/* ==========================================================
   ABOUT
   ========================================================== */
.dwmday .about {
	background: #fff;
	margin: 0 15px;
}
.dwmday .about_inner {
	background: url("../../../../img/usr/event/dwmday/bg_about.png") no-repeat;
	background-position: 20px 0;
	background-size: calc(100% - 40px) 100%;
	padding-bottom: 41px;
}
.dwmday .about_head {
	padding: 32px 45px 45px;
	text-align: center;
}
.dwmday .about_head .sec_ttl {
	margin-bottom: 0;
}
.dwmday .about_head .sec_ttl .ja {
	font-size: 23px;
	line-height: 32px;
	font-weight: bold;
}
.dwmday .about_head .sec_ttl .en {
	margin-top: 9px;
}
.dwmday .about_list {
	display: flex;
	flex-direction: column;
	gap: 36px;
}
.dwmday .about_item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.dwmday .about_item_label {
	position: absolute;
	top: -15px;
	left: 50%;
	transform: translateX(-50%);
	background: linear-gradient(90deg, #0068B7 0%, #00B3CE 100%);
	width: 130px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #FFF3A4;
	font-size: 16px;
	font-weight: bold;
	line-height: 1em;
	text-align: center;
}
.dwmday .about_card {
	width: 100%;
	display: flex;
	align-items: center;
	padding: 25px 10px 17px 20px;
	background: #fff;
	border: 1px solid #707070;
	border-radius: 20px;
}
.dwmday .about_card_num {
	width: 126.3px;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 4.2px;
}
.dwmday .about_card_num .acn_1 {
	width: 20px;
	font-size: 20px;
	line-height: 26px;
	font-weight: bold;
	font-family: "Noto Serif JP", "Yu Mincho", YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "ＭＳ Ｐ明朝", serif;
}
.dwmday .about_card_num .acn_2 {
	color: #F55A00;
	font-size: 60px;
	line-height: 1em;
	letter-spacing: -2.5px;
	font-weight: bold;
	font-family: "Noto Serif JP", "Yu Mincho", YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "ＭＳ Ｐ明朝", serif;
}
.dwmday .about_card_num .acn_3 {
	color: #F55A00;
	font-size: 20px;
	line-height: 1em;
	font-weight: bold;
	font-family: "Noto Serif JP", "Yu Mincho", YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "ＭＳ Ｐ明朝", serif;
	margin-bottom: 2px;
}
.dwmday .about_card_num .acn_3 span {
	font-family: "Noto Serif JP", "Yu Mincho", YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "ＭＳ Ｐ明朝", serif;
	font-weight: bold;
}
.dwmday .about_item:nth-child(1) .about_card_num .acn_3 {
	margin-left: -5px;
}
.dwmday .about_card_line {
	width: 1px;
	height: 70px;
	background-color: #333333;
	margin-right: 19.7px;
}
.dwmday .about_card_txt {
	font-size: 16px;
	line-height: 25px;
}

/* ==========================================================
   RANKING
   ========================================================== */
.dwmday .ranking {
	margin: 50px 0;
	background: #fff;
}
.dwmday .ranking .sec_ttl {
	padding: 0 24px;
}
/* awoo レコメンドの体裁調整（横スクロール） */
.dwmday .ranking_list {
	padding: 0;
}
.dwmday .ranking_list .block-ranking-r,
.dwmday .ranking_list l-recommend {
	display: block;
}
.dwmday .ranking .more_btn {
	padding: 0 24px;
}
.dwmday .ranking .slick-track {
	padding-left: 20px;
}

/* ==========================================================
   CAMPAIGN（特集・キャンペーン）
   ========================================================== */
.dwmday .campaign {
	padding: 50px 15px 52px;
	background: #FBF9F3;
}
.dwmday .campaign_list {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.dwmday .campaign_item a {
	display: block;
}
.dwmday .campaign_item a:hover {
	opacity: .85;
}
.dwmday .campaign_item .img img {
	width: 100%;
	display: block;
	border-radius: 2px;
}
.dwmday .campaign_item .ttl {
	margin-top: 10px;
	font-size: 14px;
	line-height: 22px;
}

/* ==========================================================
   CONDITIONS（ご利用条件）
   ========================================================== */
.dwmday .conditions {
	padding: 50px 15px;
	background: #fff;
}
.dwmday .cond_list {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.dwmday .cond_item {
	position: relative;
	display: flex;
	border-radius: 4px;
}
.dwmday .cond_item_no {
	position: relative;
	z-index: 2;
	width: 110px;
	height: 105.5px;
	padding-bottom: 10.5px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: url("../../../../img/usr/event/dwmday/bg_conditions_item.png") no-repeat center center;
	background-size: 100% 100%;
	color: #fff;
	text-align: center;
}
.dwmday .cond_item_no .label {
	display: block;
	font-size: 16px;
	line-height: 23px;
	color: #fff;
}
.dwmday .cond_item_no .num {
	display: block;
	font-size: 40px;
	font-weight: bold;
	line-height: 48px;
	margin-top: -5px;
	color: #fff;
}
.dwmday .cond_item_txt {
	position: absolute;
	top: 10px;
	right: 0;
	width: 330px;
	height: 95px;
	display: flex;
	align-items: center;
	padding: 0 17px 0 60px;
	background: #F2F9FE;
	font-size: 16px;
	line-height: 25px;
}
.dwmday .cond_item_txt .in {
	display: block;
}

/* ==========================================================
   FAQ
   ========================================================== */
.dwmday .faq {
	padding: 48px 0 51px;
	background: #F8F5EE;
}
.dwmday .faq .sec_ttl {
	padding: 0 24px;
}
.dwmday .faq_list {
	border-top: 1px solid #DCDCDC;
	margin: 0 15px;
}
.dwmday .faq_item {
	border-bottom: 1px solid #DCDCDC;
}
.dwmday .faq_q {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 16.5px 39px 12px 0;
	font-size: 13px;
	font-weight: bold;
	line-height: 1.6;
	cursor: pointer;
}
.dwmday .faq_q .mark {
	font-size: 22px;
	line-height: 31px;
	font-weight: bold;
	color: #333333;
}
.dwmday .faq_q .txt {
	font-size: 16px;
	line-height: 23px;
	font-weight: bold;
	padding-top: 4px;
}
.dwmday .faq_a .mark {
	font-size: 22px;
	line-height: 31px;
	font-weight: bold;
	color: #0068B7;
}
.dwmday .accordion_icon {
	position: absolute;
	right: 0px;
	top: 26px;
	width: 14px;
	height: 14px;
}
.dwmday .accordion_icon::before,
.dwmday .accordion_icon::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	background: #555;
	transition: transform .25s ease, opacity .25s ease;
}
.dwmday .accordion_icon::before {
	width: 14px;
	height: 1px;
	transform: translate(-50%, -50%);
}
.dwmday .accordion_icon::after {
	width: 1px;
	height: 14px;
	transform: translate(-50%, -50%) rotate(90deg);
	opacity: 0;
}
.dwmday .faq_item:not(.is_open) .accordion_icon::after {
	transform: translate(-50%, -50%) rotate(0deg);
	opacity: 1;
}
.dwmday .faq_a {
	display: none;
	gap: 14px;
	padding: 0 39px 15px 0;
}
.dwmday .faq_item.is_open .faq_a {
	display: flex;
	align-items: flex-start;
}
.dwmday .faq_a p {
	font-size: 14px;
	line-height: 22px;
	font-weight: 400;
	padding-top: 4px;
	color: #333;
}

/* ==========================================================
   注意事項
   ========================================================== */
.dwmday .notes {
	padding: 50px 15px 100px;
	background: #fff;
}
.dwmday .notes_ttl {
	font-size: 18px;
	line-height: 32px;
	text-align: center;
}
.dwmday .notes_sub {
	margin: 30px 0 10px;
	font-size: 16px;
	font-weight: bold;
	line-height: 23px;
}
.dwmday .notes_sub:first-child {
	margin-top: 0;
}
.dwmday .notes_list li {
	position: relative;
	font-size: 14px;
	line-height: 22px;
}
.dwmday .notes_link {
	margin-top: 22px;
	font-size: 14px;
	line-height: 22px;
}
.dwmday .notes_link a {
	color: #000;
	text-decoration: underline;
}
.dwmday .notes_link a:hover {
	text-decoration: none;
}

/* ==========================================================
   SP 追従メニュー（sec_fixed）
   ========================================================== */
.dwmday .sec_fixed {
	display: none;
}

/* ==========================================================
   ブレークポイント
   ========================================================== */
/* 右メニューの文字サイズ調整 */
@media screen and (max-width: 1320px) {
	.dwmday .mv_menu {
		max-width: 300px;
		gap: 18px;
	}
	.dwmday .mv_menu a {
		min-height: 70px;
		font-size: 15px;
		padding: 10px 36px 10px 20px;
	}
	.dwmday .mv_menu a span {
		font-size: 11px;
	}
}
@media screen and (max-width: 1100px) {
	.dwmday .mv_menu {
		max-width: 250px;
		gap: 14px;
	}
	.dwmday .mv_menu a {
		min-height: 60px;
		font-size: 13px;
		padding: 8px 28px 8px 14px;
	}
}
/* 画面が低いノートPCでもヘッダー／フッターに被らないよう縮小 */
@media screen and (max-height: 860px) {
	.dwmday .mv_menu {
		gap: 14px;
	}
	.dwmday .mv_menu a {
		min-height: 64px;
		font-size: 15px;
	}
	.dwmday .mv_menu a .s {
		font-size: 11px;
	}
}
@media screen and (max-height: 720px) {
	.dwmday .mv_menu {
		gap: 9px;
	}
	.dwmday .mv_menu a {
		min-height: 52px;
		font-size: 13px;
		padding: 8px 30px 8px 16px;
	}
	.dwmday .mv_menu a .s {
		font-size: 10px;
	}
}
/* 左右パーツを出せる幅を下回ったら非表示（中央カラムのみ） */
@media screen and (max-width: 950px) {
	.dwmday .mv_pc {
		display: none !important;
	}
}
/* SP 追従メニューは 430px 以下のみ */
@media screen and (min-width: 431px) {
	.dwmday .sec_fixed.sp_only {
		display: none !important;
	}
}

/* -------------------------------------------------- SP */
@media screen and (max-width: 430px) {
	.dwmday .pc_only {
		display: none;
	}
	.dwmday .sp_only {
		display: block;
	}
	.dwmday .dwmday_inner {
		max-width: 100%;
	}

	/* 追従メニュー */
	.dwmday .sec_fixed {
		display: block;
		position: fixed;
		z-index: 10;
		right: 0;
		bottom: calc(70 / 430 * 100vw);
	}
	.dwmday .sec_fixed .label_list_block {
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		gap: calc(8 / 430 * 100vw);
		margin-left: auto;
		overflow: hidden;
		height: 0;
		transition: height .35s ease;
	}
	.dwmday .sec_fixed .label_list_block li {
		width: calc(285 / 430 * 100vw);
	}
	.dwmday .sec_fixed .label_list_block li a {
		position: relative;
		width: 100%;
		min-height: calc(48 / 430 * 100vw);
		display: inline-flex;
		align-items: center;
		padding: calc(6 / 430 * 100vw) calc(28 / 430 * 100vw) calc(6 / 430 * 100vw) calc(16 / 430 * 100vw);
		background: linear-gradient(90deg, #3D6EA8 0%, #66A0CE 100%);
		border-radius: calc(10 / 430 * 100vw) 0 0 calc(10 / 430 * 100vw);
		color: #fff;
		font-size: calc(14 / 430 * 100vw);
		font-weight: bold;
		line-height: 1.3;
	}
	.dwmday .sec_fixed .label_list_block li a::after {
		content: "";
		position: absolute;
		right: calc(14 / 430 * 100vw);
		top: 50%;
		width: calc(6 / 430 * 100vw);
		height: calc(6 / 430 * 100vw);
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		transform: translateY(-50%) rotate(45deg);
	}
	.dwmday .sec_fixed .label_ttl_block .label_firstview {
		position: relative;
		width: calc(96 / 430 * 100vw);
		height: calc(48 / 430 * 100vw);
		margin-left: auto;
		display: flex;
		align-items: center;
		justify-content: center;
		background: #16234A;
		border-radius: calc(10 / 430 * 100vw) 0 0 calc(10 / 430 * 100vw);
		color: #fff;
		font-size: calc(14 / 430 * 100vw);
		font-weight: bold;
		cursor: pointer;
	}
	.dwmday .sec_fixed .label_ttl_block .label_firstview span {
		color: #fff;
	}
	.dwmday .sec_fixed .label_ttl_block .label_open {
		display: none;
		width: calc(150 / 430 * 100vw);
		height: calc(48 / 430 * 100vw);
		margin-left: auto;
		margin-top: calc(8 / 430 * 100vw);
		background: #000;
		border-radius: calc(40 / 430 * 100vw);
		align-items: center;
		justify-content: center;
		color: #fff;
		font-size: calc(14 / 430 * 100vw);
		font-weight: bold;
		cursor: pointer;
	}
	.dwmday .sec_fixed .label_ttl_block .label_open span {
		color: #fff;
	}
	.dwmday .sec_fixed.is_open .label_ttl_block .label_firstview {
		display: none;
	}
	.dwmday .sec_fixed.is_open .label_ttl_block .label_open {
		display: flex;
	}
}

/* ==========================================================
   人気の商品ランキング（awoo レコメンド）を slick カルーセル化
   ・表示は最大10件（11件目以降は JS 側で remove）
   ・awoo が出力する ul.block-ranking-r--items を slick 化
   ・awoo / サイト共通CSS が出す体裁をこのセクション内だけ上書き
   ========================================================== */
/* 初期化前：縦積みで一瞬長く表示されるのを抑える */
.dwmday .ranking_list .block-ranking-r--items:not(.slick-initialized) {
	max-height: 420px;
	overflow: hidden;
}
.dwmday .ranking_list .block-ranking-r--items:not(.slick-initialized) > li:nth-child(n+3) {
	display: none;
}

/* ---- スライド（li がそのままスライドになる） ---- */
.dwmday .ranking_list .slick-list {
	overflow: hidden;
}
/* カードの高さを揃える */
.dwmday .ranking_list .slick-track {
	display: flex;
	align-items: stretch;
}
.dwmday .ranking_list .block-ranking-r--item {
	display: block;
	height: auto;
	padding: 0 6px;
	box-sizing: border-box;
}
.dwmday .ranking_list .block-ranking-r--item > a {
	display: block;
}

/* ---- 商品画像（サイト既定が 225px 固定でスライド幅を超えるため） ---- */
.dwmday .ranking_list .block-ranking-r--goods-image,
.dwmday .ranking_list figure.block-ranking-r--goods-image {
	width: 100%;
}
.dwmday .ranking_list div.block-ranking-r--goods-image,
.dwmday .ranking_list figure.block-ranking-r--goods-image,
.dwmday .ranking_list .block-ranking-r--goods-image img {
	width: 160px;
	height: 160px;
}

/* ---- 商品情報（カード幅が狭いので詰める） ---- */
/* 商品名は2行で固定（3行になると下の要素と重なるため）
   ・height は line-height の2倍ぴったり。半端な値にすると3行目が覗く
   ・サイト共通の jquery.tile が inline で height を付けてくるため !important が必要 */
.dwmday .ranking_list .block-ranking-r--goods-name {
	display: block;
	height: 40px !important;
	overflow: hidden;
	margin-bottom: 6px;
	font-size: 12px;
	line-height: 20px;
}
/* 都道府県ラベル＋ショップ名は1行に収める（カード幅156pxで折り返すため） */
.dwmday .ranking_list .block-ranking-r--supplier {
	flex-wrap: nowrap;
	overflow: hidden;
}
.dwmday .ranking_list .block-ranking-r--supplier-prefectures {
	flex: 0 0 auto;
}
.dwmday .ranking_list .block-ranking-r--supplier-prefectures span {
	white-space: nowrap;
	font-size: 10px;
}
.dwmday .ranking_list .block-ranking-r--supplier-place {
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 11px;
	line-height: 1.5;
}
/* バリエーション名はデザインに無いので非表示 */
.dwmday .ranking_list .variation-name {
	display: none;
}
.dwmday .ranking_list .block-ranking-r--price-infos {
	margin-top: 6px;
}
.dwmday .ranking_list .block-ranking-r--price {
	font-size: 13px;
	font-weight: bold;
}

/* ---- 前後の矢印（トップページ「新着商品 NEW ITEM」と同じ体裁） ---- */
/* サイト共通の .slick-arrow（33×72 / 黒背景 / ::after で矢羽根）を土台に、
   色と枠だけトップページの新着商品スライダーに合わせて上書きする。
   width / height / ::after の形は共通CSSのものをそのまま使う。 */
.dwmday .ranking_list .slick-arrow {
	top: 112px;             /* 商品画像の中央 */
	margin-top: -36px;      /* 矢印の高さ 72px の半分 */
	background-color: #fff;
	border: 1px solid #CBD1D6;
	border-radius: 3px;
	box-shadow: none;
}
.dwmday .ranking_list .slick-arrow::after {
	border-top: 1px solid #7E8184;
	border-right: 1px solid #7E8184;
}
/* 中央カラム（430px）の左右の壁にぴったり付ける。
   -20px は .ranking_list の左右 padding 20px を打ち消すための値 */
.dwmday .ranking_list .slick-prev {
	left: 0px;
}
.dwmday .ranking_list .slick-next {
	right: 0px;
}
/* 端まで来たら矢印を隠す
   slick が矢印に inline style（display:inline-block）を付けるため !important が必要 */
.dwmday .ranking_list .slick-prev.slick-disabled,
.dwmday .ranking_list .slick-next.slick-disabled {
	display: none !important;
}

/* ---- ドット ---- */
.dwmday .ranking_list .slick-dots {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	margin: 10px 0 0;
	padding: 0;
	list-style: none;
}
.dwmday .ranking_list .slick-dots li {
	width: auto;
	height: auto;
	margin: 0;
}
@media screen and (max-width:768px) {
	.dwmday .ranking_list .slick-dots li {
		padding-left: 0;
		padding-bottom: 0;
	}
}
.dwmday .ranking_list .slick-dots li button {
	width: 10px;
	height: 10px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #D9D1BC;
	font-size: 0;
	cursor: pointer;
}
.dwmday .ranking_list .slick-dots li.slick-active button {
	background: #333;
}

.dwmday .ranking_list .block-ranking-r .block-ranking-r--rank {
	position: absolute;
	top: 0;
	left: 0;
	width: 25px;
	height: 25px;
	background: none;
	border: 0;
	font-size: 13px;
	font-family: "Noto Serif JP", YuMincho, "Yu Mincho", "Hiragino Mincho ProN", serif;
	color: #fff;
}
.dwmday .ranking_list .block-ranking-r .block-ranking-r--rank::after {
	display: none;
}
.dwmday .ranking_list .block-ranking-r .block-ranking-r--rank span {
	position: relative;
	z-index: 1;
	color: #FFF;
}
.dwmday .ranking_list .block-ranking-r .block-ranking-r--rank span::before {
	content: "";
	position: absolute;
	top: -11px;
	left: -28px;
	display: inline-block;
	width: 0;
	height: 0;
	margin-right: 4px;
	border-style: solid;
	border-width: 0 30px 30px;
	border-color: transparent transparent #AAAAAA;   /* 4位以降 */
	transform: rotate(-45deg);
	z-index: -1;
	color: #FFF;
}
.dwmday .ranking_list .block-ranking-r--rank.block-ranking-r--rank-1 span::before {
	border-color: transparent transparent #ADA142;
}
.dwmday .ranking_list .block-ranking-r--rank.block-ranking-r--rank-2 span::before {
	border-color: transparent transparent #898989;
}
.dwmday .ranking_list .block-ranking-r--rank.block-ranking-r--rank-3 span::before {
	border-color: transparent transparent #C66047;
}

/* ==========================================================
   SP（430px以下）調整
   ・左右パーツは既存の .mv_pc { display:none } で非表示済み
   ・中央カラムは 430px 幅のデザインなので、PC 側で px 指定している値を
     すべて calc(N / 430 * 100vw) に置き換えて画面幅に比例させる
     （font-size / line-height / margin / padding / width / height /
       top・left / border-radius / letter-spacing など。N は PC の値そのまま）
   ・1px の罫線・ヘアラインだけは 1px のまま
   ・SP は別テンプレート（sb_*.css）で共通CSSが PC と異なるため、
     競合する箇所もここで上書きする
   ========================================================== */
@media screen and (max-width: 430px) {

	/* ---- 430px基準の値を画面幅に比例させる ---- */
	.dwmday .sec_ttl {
		margin-bottom: calc(30 / 430 * 100vw);
	}
	.dwmday .sec_ttl .ja {
		font-size: calc(26 / 430 * 100vw);
		line-height: calc(32 / 430 * 100vw);
	}
	.dwmday .sec_ttl .en {
		font-size: calc(12 / 430 * 100vw);
		line-height: calc(15 / 430 * 100vw);
		margin-top: calc(12 / 430 * 100vw);
	}
	.dwmday .more_btn {
		margin-top: calc(26 / 430 * 100vw);
	}
	.dwmday .more_btn a {
		font-size: calc(16 / 430 * 100vw);
		width: calc(280 / 430 * 100vw);
		height: calc(60 / 430 * 100vw);
		border-radius: calc(8 / 430 * 100vw);
	}
	.dwmday .intro {
		padding: calc(63 / 430 * 100vw) calc(29 / 430 * 100vw) calc(49 / 430 * 100vw);
	}
	.dwmday .intro_ttl {
		margin-bottom: calc(30 / 430 * 100vw);
	}
	.dwmday .intro_ttl .t01 {
		font-size: calc(24 / 430 * 100vw);
	}
	.dwmday .intro_ttl .t01 .size-up {
		font-size: calc(40 / 430 * 100vw);
	}
	.dwmday .intro_ttl .t02 {
		font-size: calc(24 / 430 * 100vw);
	}
	.dwmday .intro_txt {
		font-size: calc(16 / 430 * 100vw);
	}
	.dwmday .intro_txt + .intro_txt {
		margin-top: calc(18 / 430 * 100vw);
	}
	.dwmday .about {
		margin: 0 calc(15 / 430 * 100vw);
	}
	.dwmday .about_inner {
		padding-bottom: calc(41 / 430 * 100vw);
		background-position: calc(20 / 430 * 100vw) 0;
		background-size: calc(100% - calc(40 / 430 * 100vw)) 100%;
	}
	.dwmday .about_head {
		padding: calc(32 / 430 * 100vw) calc(45 / 430 * 100vw) calc(45 / 430 * 100vw);
	}
	.dwmday .about_head .sec_ttl .ja {
		font-size: calc(23 / 430 * 100vw);
		line-height: calc(32 / 430 * 100vw);
	}
	.dwmday .about_head .sec_ttl .en {
		margin-top: calc(9 / 430 * 100vw);
	}
	.dwmday .about_list {
		gap: calc(36 / 430 * 100vw);
	}
	.dwmday .about_item_label {
		font-size: calc(16 / 430 * 100vw);
		width: calc(130 / 430 * 100vw);
		height: calc(30 / 430 * 100vw);
		top: calc(-15 / 430 * 100vw);
	}
	.dwmday .about_card {
		padding: calc(25 / 430 * 100vw) calc(10 / 430 * 100vw) calc(17 / 430 * 100vw) calc(20 / 430 * 100vw);
		border-radius: calc(20 / 430 * 100vw);
	}
	.dwmday .about_card_num {
		gap: calc(4.2 / 430 * 100vw);
		width: calc(126.3 / 430 * 100vw);
	}
	.dwmday .about_card_num .acn_1 {
		font-size: calc(20 / 430 * 100vw);
		line-height: calc(26 / 430 * 100vw);
		width: calc(20 / 430 * 100vw);
	}
	.dwmday .about_card_num .acn_2 {
		font-size: calc(60 / 430 * 100vw);
		letter-spacing: calc(-2.5 / 430 * 100vw);
	}
	.dwmday .about_card_num .acn_3 {
		font-size: calc(20 / 430 * 100vw);
		margin-bottom: calc(2 / 430 * 100vw);
	}
	.dwmday .about_item:nth-child(1) .about_card_num .acn_3 {
		margin-left: calc(-5 / 430 * 100vw);
	}
	.dwmday .about_card_line {
		margin-right: calc(19.7 / 430 * 100vw);
		height: calc(70 / 430 * 100vw);
	}
	.dwmday .about_card_txt {
		font-size: calc(16 / 430 * 100vw);
		line-height: calc(25 / 430 * 100vw);
	}
	.dwmday .ranking {
		margin: calc(50 / 430 * 100vw) 0;
	}
	.dwmday .ranking .sec_ttl {
		padding: 0 calc(24 / 430 * 100vw);
	}
	.dwmday .ranking .more_btn {
		padding: 0 calc(24 / 430 * 100vw);
	}
	.dwmday .ranking .slick-track {
		padding-left: calc(20 / 430 * 100vw);
	}
	.dwmday .campaign {
		padding: calc(50 / 430 * 100vw) calc(15 / 430 * 100vw) calc(52 / 430 * 100vw);
	}
	.dwmday .campaign_list {
		gap: calc(20 / 430 * 100vw);
	}
	.dwmday .campaign_item .img img {
		border-radius: calc(2 / 430 * 100vw);
	}
	.dwmday .campaign_item .ttl {
		font-size: calc(14 / 430 * 100vw);
		line-height: calc(22 / 430 * 100vw);
		margin-top: calc(10 / 430 * 100vw);
	}
	.dwmday .conditions {
		padding: calc(50 / 430 * 100vw) calc(15 / 430 * 100vw);
	}
	.dwmday .cond_list {
		gap: calc(16 / 430 * 100vw);
	}
	.dwmday .cond_item {
		border-radius: calc(4 / 430 * 100vw);
	}
	.dwmday .cond_item_no {
		padding-bottom: calc(10.5 / 430 * 100vw);
		width: calc(110 / 430 * 100vw);
		height: calc(105.5 / 430 * 100vw);
	}
	.dwmday .cond_item_no .label {
		font-size: calc(16 / 430 * 100vw);
		line-height: calc(23 / 430 * 100vw);
	}
	.dwmday .cond_item_no .num {
		font-size: calc(40 / 430 * 100vw);
		line-height: calc(48 / 430 * 100vw);
		margin-top: calc(-5 / 430 * 100vw);
	}
	.dwmday .cond_item_txt {
		font-size: calc(16 / 430 * 100vw);
		line-height: calc(25 / 430 * 100vw);
		padding: 0 calc(17 / 430 * 100vw) 0 calc(60 / 430 * 100vw);
		top: calc(10 / 430 * 100vw);
	}
	.dwmday .faq {
		padding: calc(48 / 430 * 100vw) 0 calc(51 / 430 * 100vw);
	}
	.dwmday .faq .sec_ttl {
		padding: 0 calc(24 / 430 * 100vw);
	}
	.dwmday .faq_list {
		margin: 0 calc(15 / 430 * 100vw);
	}
	.dwmday .faq_q {
		font-size: calc(13 / 430 * 100vw);
		padding: calc(16.5 / 430 * 100vw) calc(39 / 430 * 100vw) calc(12 / 430 * 100vw) 0;
		gap: calc(14 / 430 * 100vw);
	}
	.dwmday .faq_q .mark {
		font-size: calc(22 / 430 * 100vw);
		line-height: calc(31 / 430 * 100vw);
	}
	.dwmday .faq_q .txt {
		font-size: calc(16 / 430 * 100vw);
		line-height: calc(23 / 430 * 100vw);
		padding-top: calc(4 / 430 * 100vw);
	}
	.dwmday .faq_a .mark {
		font-size: calc(22 / 430 * 100vw);
		line-height: calc(31 / 430 * 100vw);
	}
	.dwmday .accordion_icon {
		width: calc(14 / 430 * 100vw);
		height: calc(14 / 430 * 100vw);
		top: calc(26 / 430 * 100vw);
		right: calc(0 / 430 * 100vw);
	}
	.dwmday .accordion_icon::before {
		width: calc(14 / 430 * 100vw);
	}
	.dwmday .accordion_icon::after {
		height: calc(14 / 430 * 100vw);
	}
	.dwmday .faq_a {
		padding: 0 calc(39 / 430 * 100vw) calc(15 / 430 * 100vw) 0;
		gap: calc(14 / 430 * 100vw);
	}
	.dwmday .faq_a p {
		font-size: calc(14 / 430 * 100vw);
		line-height: calc(22 / 430 * 100vw);
		padding-top: calc(4 / 430 * 100vw);
	}
	.dwmday .notes {
		padding: calc(50 / 430 * 100vw) calc(15 / 430 * 100vw) calc(100 / 430 * 100vw);
	}
	.dwmday .notes_ttl {
		font-size: calc(18 / 430 * 100vw);
		line-height: calc(32 / 430 * 100vw);
		font-weight: bold;
	}
	.dwmday .notes_sub {
		font-size: calc(16 / 430 * 100vw);
		line-height: calc(23 / 430 * 100vw);
		margin: calc(30 / 430 * 100vw) 0 calc(10 / 430 * 100vw);
	}
	.dwmday .notes_list li {
		font-size: calc(14 / 430 * 100vw);
		line-height: calc(22 / 430 * 100vw);
	}
	.dwmday .notes_link {
		font-size: calc(14 / 430 * 100vw);
		line-height: calc(22 / 430 * 100vw);
		margin-top: calc(22 / 430 * 100vw);
	}
	.dwmday .ranking_list .block-ranking-r--item {
		padding: 0 calc(6 / 430 * 100vw);
	}
	.dwmday .ranking_list div.block-ranking-r--goods-image, .dwmday .ranking_list figure.block-ranking-r--goods-image, .dwmday .ranking_list .block-ranking-r--goods-image img {
		width: calc(160 / 430 * 100vw);
		height: calc(160 / 430 * 100vw);
	}
	.dwmday .ranking_list .block-ranking-r--goods-name {
		font-size: calc(12 / 430 * 100vw);
		line-height: calc(20 / 430 * 100vw);
		margin-bottom: calc(6 / 430 * 100vw);
		height: calc(40 / 430 * 100vw) !important;
	}
	.dwmday .ranking_list .block-ranking-r--supplier-prefectures span {
		font-size: calc(10 / 430 * 100vw);
	}
	.dwmday .ranking_list .block-ranking-r--supplier-place {
		font-size: calc(11 / 430 * 100vw);
	}
	.dwmday .ranking_list .block-ranking-r--price-infos {
		margin-top: calc(6 / 430 * 100vw);
	}
	.dwmday .ranking_list .block-ranking-r--price {
		font-size: calc(13 / 430 * 100vw);
	}
	.dwmday .ranking_list .slick-dots {
		margin: calc(10 / 430 * 100vw) 0 0;
		gap: calc(20 / 430 * 100vw);
	}
	.dwmday .ranking_list .slick-dots li button {
		width: calc(10 / 430 * 100vw);
		height: calc(10 / 430 * 100vw);
	}
	.dwmday .ranking_list .block-ranking-r .block-ranking-r--rank {
		font-size: calc(13 / 430 * 100vw);
		width: calc(25 / 430 * 100vw);
		height: calc(25 / 430 * 100vw);
	}
	.dwmday .ranking_list .block-ranking-r .block-ranking-r--rank span::before {
		margin-right: calc(4 / 430 * 100vw);
		top: calc(-11 / 430 * 100vw);
		left: calc(-28 / 430 * 100vw);
		border-width: 0 calc(30 / 430 * 100vw) calc(30 / 430 * 100vw);
	}
	.dwmday .ranking_list div.block-ranking-r--goods-image {
		height: calc(160 / 430 * 100vw) !important;
	}

	/* ---- ABOUT見出しだけ 23px→21px 相当に。
	       23px のままだと「DISCOVER WEST mall の日」が折り返して3行になる。
	       機種差を考えて少し余裕を持たせている ---- */
	.dwmday .about_head .sec_ttl .ja {
		font-size: calc(21 / 430 * 100vw);
	}

	/* ---- 商品名の2行固定も同じ比率で（font/line-height に追従させる） ---- */
	.dwmday .ranking_list .block-ranking-r--goods-name {
		height: calc(40 / 430 * 100vw) !important;
		max-height: none !important;
	}

	/* ---- ご利用条件 ----
	   PC はテキスト枠 width:330px 固定（= 390 - 60）。
	   SP はカードが狭くなるぶん、固定のままだと本文が番号タブの下に潜り込む。 */
	.dwmday .cond_item_txt {
		width: calc(100% - (60 / 430 * 100vw));
		height: auto;
		min-height: calc(95 / 430 * 100vw);
	}

	/* ---- ランキング：SP共通CSS（sb_*.css）との競合を解消 ---- */
	/* 都道府県・ショップ名が display:none にされるので戻す */
	.dwmday .ranking_list .block-ranking-r--supplier {
		display: flex;
	}
	/* 商品画像がカード幅を超えるので、画像枠（高さ 160/430vw）に収める */
	.dwmday .ranking_list .block-ranking-r--goods-image,
	.dwmday .ranking_list figure.block-ranking-r--goods-image,
	.dwmday .ranking_list .block-ranking-r--goods-image img {
		width: 100% !important;
		max-width: 100% !important;
	}
	.dwmday .ranking_list div.block-ranking-r--goods-image {
		overflow: hidden;
	}
	.dwmday .ranking_list figure.block-ranking-r--goods-image {
		height: 100% !important;
		margin: 0;
	}
	.dwmday .ranking_list .block-ranking-r--goods-image img {
		height: 100% !important;
		object-fit: contain;
	}

	/* ---- 矢印：SPテンプレートには共通の .slick-arrow（33×72）が無いので自前で定義 ---- */
	.dwmday .ranking_list .slick-arrow {
		position: absolute;
		width: 33px;
		height: 72px;
		top: calc(80 / 430 * 100vw);   /* 商品画像（高さ 160/430vw）の中央 */
		margin-top: -36px;
		padding: 0;
		background-color: #fff;
		border: 1px solid #CBD1D6;
		border-radius: 3px;
		box-shadow: none;
		font-size: 0;
		cursor: pointer;
		z-index: 3;
	}
	.dwmday .ranking_list .slick-arrow::after {
		content: "";
		position: absolute;
		left: 50%;
		top: 50%;
		width: 11px;
		height: 11px;
		margin-top: -3px;
		border-top: 1px solid #7E8184;
		border-right: 1px solid #7E8184;
	}
	.dwmday .ranking_list .slick-prev {
		left: 0;
	}
	.dwmday .ranking_list .slick-prev::after {
		transform: rotate(-135deg);
		margin-left: -2px;
	}
	.dwmday .ranking_list .slick-next {
		right: 0;
	}
	.dwmday .ranking_list .slick-next::after {
		transform: rotate(45deg);
		margin-left: -7px;
	}
}
