@charset "utf-8";

/* ----------------------------------------
   Christmas page SP
---------------------------------------- */
#tokudai-panel.xmas-page,
#tokudai-panel.xmas-page *,
#tokudai-panel.xmas-page *:before,
#tokudai-panel.xmas-page *:after {
	box-sizing: border-box;
}

#tokudai-panel.xmas-page {
	color: #333;
	width: 100%;
}

#tokudai-panel.xmas-page img {
	max-width: 100%;
	height: auto;
}

#tokudai-panel.xmas-page .breadcrumb {
	margin-bottom: 12px;
}

#tokudai-panel.xmas-page .breadcrumb ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#tokudai-panel.xmas-page .breadcrumb li {
	float: left;
	font-size: 11px;
	line-height: 1.6;
}

#tokudai-panel.xmas-page h2 {
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 12px 14px 12px 10px;
	border-radius: 16px;
	min-height: 94px;
	background: linear-gradient(135deg, #b5162f 0%, #d9363e 55%, #f0b437 100%);
	box-shadow: 0 8px 18px rgba(129, 13, 31, 0.16);
}

#tokudai-panel.xmas-page h2 img {
	position: static;
	flex: 0 0 56px;
	width: 56px;
	max-width: 56px;
	height: auto;
	margin-top: 10px;
	align-self: flex-end;
}

#tokudai-panel.xmas-page h2 span {
	display: block;
	flex: 1 1 auto;
	padding: 0;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.01em;
}

#tokudai-panel.xmas-page .xmas-hero,
#tokudai-panel.xmas-page .xmas-section {
	margin-bottom: 18px;
}

#tokudai-panel.xmas-page .xmas-hero {
	padding: 18px 14px 20px;
	border: 1px solid #eed7d7;
	border-radius: 18px;
	background: linear-gradient(180deg, #fffdf8 0%, #fff 100%);
}

#tokudai-panel.xmas-page .xmas-hero__eyebrow,
#tokudai-panel.xmas-page .xmas-section__en {
	margin: 0 0 8px;
	font-size: 10px;
	font-weight: bold;
	letter-spacing: 0.14em;
	color: #b5162f;
}

#tokudai-panel.xmas-page .xmas-hero__lead,
#tokudai-panel.xmas-page .xmas-section__heading p,
#tokudai-panel.xmas-page .xmas-choice-card p,
#tokudai-panel.xmas-page .xmas-scene-card p,
#tokudai-panel.xmas-page .xmas-tip-card p,
#tokudai-panel.xmas-page .xmas-checklist p,
#tokudai-panel.xmas-page .xmas-ranking-note p {
	margin: 0;
	font-size: 13px;
	line-height: 1.85;
}

#tokudai-panel.xmas-page .xmas-hero__lead {
	margin-top: 14px;
}

#tokudai-panel.xmas-page .xmas-hero__points,
#tokudai-panel.xmas-page .xmas-anchor-nav ul,
#tokudai-panel.xmas-page .xmas-choice-grid,
#tokudai-panel.xmas-page .xmas-scene-list,
#tokudai-panel.xmas-page .xmas-tips-grid,
#tokudai-panel.xmas-page .xmas-checklist,
#tokudai-panel.xmas-page .xmas-bottom-links,
#tokudai-panel.xmas-page .ranking-list ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#tokudai-panel.xmas-page .xmas-hero__points {
	margin-top: 14px;
}

#tokudai-panel.xmas-page .xmas-hero__points li {
	position: relative;
	margin-bottom: 10px;
	padding: 11px 12px 11px 32px;
	border-radius: 12px;
	background: #f8f3ee;
	font-size: 13px;
	font-weight: bold;
	line-height: 1.7;
}

#tokudai-panel.xmas-page .xmas-hero__points li:last-child {
	margin-bottom: 0;
}

#tokudai-panel.xmas-page .xmas-hero__points li:before {
	content: "✓";
	position: absolute;
	left: 12px;
	top: 10px;
	color: #b5162f;
	font-weight: bold;
}

#tokudai-panel.xmas-page .xmas-hero__cta {
	margin-top: 16px;
}

#tokudai-panel.xmas-page .xmas-hero__cta a,
#tokudai-panel.xmas-page .xmas-bottom-links a,
#tokudai-panel.xmas-page .xmas-btn {
	display: block;
	width: 100%;
	padding: 12px 14px;
	border-radius: 999px;
	text-decoration: none;
	text-align: center;
	font-size: 13px;
	font-weight: bold;
	transition: opacity .2s ease;
}

#tokudai-panel.xmas-page .xmas-hero__cta a {
	margin-bottom: 10px;
	background: #b5162f;
	color: #fff;
}

#tokudai-panel.xmas-page .xmas-hero__cta a:last-child {
	margin-bottom: 0;
}

#tokudai-panel.xmas-page .xmas-hero__cta a:hover,
#tokudai-panel.xmas-page .xmas-bottom-links a:hover,
#tokudai-panel.xmas-page .xmas-btn:hover,
#tokudai-panel.xmas-page .xmas-anchor-nav a:hover,
#tokudai-panel.xmas-page .ranking-list a:hover {
	opacity: .85;
}

#tokudai-panel.xmas-page .xmas-anchor-nav {
	margin: 0 0 18px;
	padding: 12px;
	border-radius: 16px;
	background: #f7f7f7;
}

#tokudai-panel.xmas-page .xmas-anchor-nav li {
	width: 48.5%;
	float: left;
	margin: 0 3% 8px 0;
}

#tokudai-panel.xmas-page .xmas-anchor-nav li:nth-child(2n) {
	margin-right: 0;
}

#tokudai-panel.xmas-page .xmas-anchor-nav li:last-child {
	width: 100%;
	margin-right: 0;
	margin-bottom: 0;
}

#tokudai-panel.xmas-page .xmas-anchor-nav a {
	display: block;
	min-height: 44px;
	padding: 11px 10px;
	border-radius: 12px;
	background: #fff;
	border: 1px solid #e5dede;
	text-decoration: none;
	text-align: center;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.45;
	color: #7b2030;
}

#tokudai-panel.xmas-page .xmas-section {
	padding: 18px 14px;
	border: 1px solid #ebebeb;
	border-radius: 18px;
	background: #fff;
}

#tokudai-panel.xmas-page .xmas-section__heading h3 {
	margin: 0 0 10px;
	font-size: 22px;
	line-height: 1.45;
	color: #7d1f2d;
}

#tokudai-panel.xmas-page .xmas-choice-grid,
#tokudai-panel.xmas-page .xmas-scene-list,
#tokudai-panel.xmas-page .xmas-tips-grid {
	margin-top: 16px;
}

#tokudai-panel.xmas-page .xmas-choice-card,
#tokudai-panel.xmas-page .xmas-scene-card,
#tokudai-panel.xmas-page .xmas-tip-card,
#tokudai-panel.xmas-page .xmas-checklist li {
	width: 100%;
	margin: 0 0 12px;
	padding: 16px 14px;
	border-radius: 16px;
}

#tokudai-panel.xmas-page .xmas-choice-card {
	background: #fffaf6;
	border: 1px solid #f0dfd5;
}

#tokudai-panel.xmas-page #xmas-scenes {
	border: 1px solid #d8e7d8;
	background:
		radial-gradient(circle at 8% 10%, rgba(255, 255, 255, .75) 0 14px, transparent 15px),
		radial-gradient(circle at 92% 16%, rgba(255, 255, 255, .5) 0 10px, transparent 11px),
		linear-gradient(180deg, #fffdf7 0%, #f7fbf5 100%);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .45);
}

#tokudai-panel.xmas-page #xmas-scenes .xmas-section__heading h3 {
	color: #9c162d;
}

#tokudai-panel.xmas-page .xmas-scene-card {
	position: relative;
	border: 1px solid #dce7da;
	background: linear-gradient(180deg, #ffffff 0%, #fcfffb 100%);
	box-shadow: 0 6px 14px rgba(25, 72, 34, 0.05);
}

#tokudai-panel.xmas-page .xmas-scene-card:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 5px;
	border-radius: 16px 16px 0 0;
	background: linear-gradient(90deg, #b5162f 0%, #cf3142 50%, #2c7a4b 50%, #1f6a3e 100%);
}

#tokudai-panel.xmas-page .xmas-tip-card {
	background: #fffaf6;
	border: 1px solid #f0dfd5;
}

#tokudai-panel.xmas-page .xmas-choice-card h4,
#tokudai-panel.xmas-page .xmas-scene-card h4,
#tokudai-panel.xmas-page .xmas-tip-card h4,
#tokudai-panel.xmas-page .xmas-memo-box h4,
#tokudai-panel.xmas-page .xmas-checklist h4 {
	margin: 0 0 10px;
	font-size: 18px;
	line-height: 1.45;
	color: #333;
}

#tokudai-panel.xmas-page .xmas-choice-card h4:before,
#tokudai-panel.xmas-page .xmas-tip-card h4:before {
	content: "";
	display: block;
	width: 44px;
	height: 4px;
	margin-bottom: 12px;
	border-radius: 999px;
	background: linear-gradient(90deg, #b5162f 0%, #f0b437 100%);
}

#tokudai-panel.xmas-page .xmas-scene-card h4:before {
	content: "🎄";
	display: inline-block;
	margin: 0 6px 6px 0;
	font-size: 16px;
}

#tokudai-panel.xmas-page .xmas-choice-card__note {
	margin-top: 10px !important;
	color: #7a5555;
	font-weight: bold;
}

#tokudai-panel.xmas-page .xmas-btn-wrap {
	margin-top: 14px !important;
}

#tokudai-panel.xmas-page .xmas-btn {
	background: #ffffff;
	border: 1px solid #d9b8bf;
	color: #8f1f31;
}

#tokudai-panel.xmas-page .xmas-memo-box {
	margin-top: 4px;
	padding: 16px 14px;
	border-radius: 16px;
	background: #f6fbf7;
	border: 1px solid #dcecdc;
}

#tokudai-panel.xmas-page .xmas-memo-box ul {
	margin: 0;
	padding-left: 18px;
}

#tokudai-panel.xmas-page .xmas-memo-box li {
	margin-bottom: 6px;
	font-size: 13px;
	line-height: 1.8;
}

#tokudai-panel.xmas-page .xmas-ranking-note {
	margin: 16px 0 18px;
	padding: 14px 14px 14px 16px;
	border-left: 4px solid #d9363e;
	background: #fff8f1;
}

#tokudai-panel.xmas-page .ranking-list li {
	margin-bottom: 12px;
}

#tokudai-panel.xmas-page .ranking-list li:last-child {
	margin-bottom: 0;
}

#tokudai-panel.xmas-page .ranking-list a {
	display: block;
	padding: 14px 12px;
	border: 1px solid #eadfd8;
	border-radius: 16px;
	background: linear-gradient(180deg, #fffdfa 0%, #fff8f2 100%);
	text-decoration: none;
	color: #333;
	box-shadow: 0 6px 14px rgba(120, 52, 29, 0.05);
}

#tokudai-panel.xmas-page .ranking-list .item-no {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: linear-gradient(135deg, #b5162f 0%, #e04344 70%, #f0b437 100%);
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	vertical-align: top;
}

#tokudai-panel.xmas-page .ranking-list .thumb {
	display: inline-block;
	width: 84px;
	margin-left: 10px;
	vertical-align: top;
}

#tokudai-panel.xmas-page .ranking-list .thumb img {
	display: block;
	width: 84px;
	height: 84px;
	object-fit: cover;
	border-radius: 12px;
	border: 1px solid #eee1d8;
	background: #fff;
}

#tokudai-panel.xmas-page .ranking-list .txt {
	display: block;
	margin-top: 10px;
}

#tokudai-panel.xmas-page .ranking-list .item-name {
	display: block;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.6;
	color: #5d1926;
}

#tokudai-panel.xmas-page .xmas-checklist {
	margin-top: 16px;
}

#tokudai-panel.xmas-page .xmas-checklist li {
	min-height: 0;
	background: #fcfcfc;
	border: 1px solid #ececec;
}

#tokudai-panel.xmas-page .xmas-checklist__step {
	display: inline-block;
	margin-bottom: 12px;
	padding: 5px 10px;
	border-radius: 999px;
	background: #b5162f;
	color: #fff;
	font-size: 10px;
	font-weight: bold;
	letter-spacing: .08em;
}

#tokudai-panel.xmas-page .xmas-bottom-links {
	margin-top: 6px;
}

#tokudai-panel.xmas-page .xmas-bottom-links a {
	margin-top: 10px;
	background: #0f6b43;
	color: #fff;
}

#tokudai-panel.xmas-page:after,
#tokudai-panel.xmas-page .breadcrumb ul:after,
#tokudai-panel.xmas-page .xmas-anchor-nav ul:after {
	content: "";
	display: block;
	clear: both;
}

@media only screen and (max-width: 374px) {
	#tokudai-panel.xmas-page h2 img {
		width: 56px;
	}

	#tokudai-panel.xmas-page h2 span {
		padding-left: 70px;
		font-size: 21px;
	}

	#tokudai-panel.xmas-page .xmas-anchor-nav li,
	#tokudai-panel.xmas-page .xmas-anchor-nav li:last-child {
		float: none;
		width: 100%;
		margin-right: 0;
	}

	#tokudai-panel.xmas-page .ranking-list .thumb {
		width: 74px;
	}

	#tokudai-panel.xmas-page .ranking-list .thumb img {
		width: 74px;
		height: 74px;
	}
}