@charset "utf-8";

.content {
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-feature-settings: "palt";
}

div#fixed-cart,
div.none_nagumi{ display: none;}
.lh13{ line-height: 1.3;}

div#product-content.content section:not(#favo-voice) .btn a:not(.ghost),
div#product-content.content section:not(#favo-voice) .btn button { width:90%; padding: 11px 16px 10px; font-size: 1.5rem; background: #484848;}

section#special-price-section .btn a:not(.ghost) { min-width: 600px!important; padding: 15px 40px 14px;}

.btn *:disabled { min-width: 320px; padding: 11px 40px 10px; font-size: 1.5rem; background: #484848;}

div#product-content.content{ padding-bottom: 0;}
div#main_b{background: url("/campaign/fukubukuro2025/assets/images/main_back.gif"); background-size: 6%;}
div#main_b .row h1{ padding: 0; margin-bottom: 0;}
div#main_b .row h1 img{ max-width: 800px;}
section#main div#main_day{ background: #f1d923; color: #291c1c; padding: 12px 0 0;}
section#main div#main_day p span{ font-size: 150%;}

section#buy_top { 
	background: #f1d923;
	color: #291c1c;
	padding: 12px 24px;
	text-align: center;
}

section#buy_top .row { 
	border-top: solid 2px #C97F25;
	border-bottom: solid 2px #C97F25;
    display: inline-block;
    margin: 0 auto;
    padding: 16px 24px 4px;
	background: #fff;
	font-size: 1.2rem;
}

section#buy_top p.title {
	color: #c97f25 !important;
	font-weight: bold;
	margin-bottom: 8px;
	font-size: 1.6rem !important;
}

section#buy_top span.p_all{color: #bc862d; font-size: 250%; font-weight: bold; line-height: 0.9;}
section#buy_top p { line-height: 1.3; }
div#product-content.content p{color: #0b0606;}

.special-price-section { position: relative; width: 100%; height: auto; padding-top: 60px; padding-bottom: 60px; z-index: 1; }
.special-price-section .row { max-width: 960px; margin: auto;}
.special-price-section h2 { margin-bottom: 10px; line-height: 1.3; font-size: 2.625rem; color: #0b0606;}
.special-price-section h2 span{ font-size: 60%;}
.special-price-section h2 span.label-inline{ border-radius: 5px; padding: 3px 6px 8px;}
.special-price-section h3 { margin-bottom: 0; font-size: 2rem;}
.special-price-section h3::after { display: none;}
.special-price-section .label{color: #ffffff!important;}
.special-price-section .price { width: auto; padding: 0; color: #000000; font-size: 1.25rem;}
.special-price-section .price .num { padding-left: 0; padding-right: 0; color: #000000; font-weight: bold; font-size: 3rem; line-height: 1;}
.special-price-section .price .postage { color: #333; font-size: 1.125rem;}
.special-price-section .price .note { padding-bottom: 0; color: #f45c5c;}
.special-price-section .box{ border-radius: 5px; max-width: 650px; margin: auto; background:#f4f4f4;}

section#lineup{ background: #d80d23; padding: 40px;}
section#lineup h2 { color: #ffffff; line-height: 1.3; font-size: 1.8rem;}
section#lineup .row.text,
section#more .row.text{ max-width: 650px; margin: auto; padding: 30px 3vw; background: #ffffff; border-radius: 5px;}
section#lineup ul{ color: #a47424; font-size: 1.2rem !important;}

section#lineup p.white {
	color: #fff;
    line-height: 1.2;
    margin-top: 4px;
}

section#lineup .luckybag {
	display: flex;
	gap: 24px;	
	justify-content: center;	
}

section#lineup h3 { 
	position: relative;
    margin: 0;
    padding: 0 0 10px;
    color: #000;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.6;
}

section#lineup h3::after {
  content: "";
  position: absolute;
  display: none;
}

section#lineup .luckybag .inner .img {
	max-width: 160px;
	margin: 0 auto 24px;	
}

section#lineup .luckybag .inner .waribiki {
	background: #d80d23;
	padding: 4px 8px;
	color: #fff;
	border-radius: 4px;
	font-size: 1.2rem;
	line-height: 1.2rem;
	position: relative;
	top: -5px;
	display:inline-block;
	font-weight: normal;
}

section#lineup .luckybag .inner {
	max-width: 515px;
	padding: 24px;
	background: #fff;
	border-radius: 8px;
	flex: 1;
	display: flex;
	flex-direction: column;
}

section#lineup .luckybag .inner li {
	font-size: 1rem;
}

section#lineup .luckybag .inner lo {
	font-size: 1rem;
}

section#lineup .luckybag .inner p.motone {
	margin-bottom: 10px;
	text-align: center;
	font-size: 1.4em;
	line-height: 1.4rem;
}
section#lineup .luckybag .inner p.motone span {
	font-size: 1.0rem;
	line-height: 1.0rem;
}

section#lineup .luckybag .inner p.nedan {
	font-weight: bold;
	text-align: center;
	margin-bottom: 0;
	font-size: 2rem;
	line-height: 2rem;
}

section#lineup .luckybag .inner p.nedan .ss {
	font-weight: normal;
	font-size: 1rem;
	line-height: 1rem;
}

section#lineup .luckybag .inner .btn {
	margin-top: auto;
}

section#lineup .luckybag .inner .btn a:link,
section#lineup .luckybag .inner .btn button {
	margin: 0;
	min-width: auto;
	font-size: 1.4rem !important;
}

form {
	text-align: center;
	font-family: sans-serif;
}

/* アコーディオン */

.accordion .toggle {
	display: none;
}
.accordion .option {
	position: relative;
	margin-bottom: 1em;
}
.accordion .title,
.accordion .accordioninner {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.accordion .title {
	border: solid 1px #c97f25;
    padding: 8px;
    display: block;
    color: #fff;
    font-weight: bold;
    background: #c97f25;
	margin-top: 8px;
	font-size: 1.4rem;
}
.accordion .title::after,
.accordion .title::before {
	content: "";
	position: absolute;
	right: 24px;
	top: 16px;
	width: 2px;
	height: 0.75em;
	background-color: #fff;
	transition: all 0.3s;
}
.accordion .title::after {
	transform: rotate(90deg);
}
.accordion .accordioninner {
	max-height: 0;
	overflow: hidden;
}
.accordion .accordioninner p {
	margin: 0;
	padding: 12px 0 8px;
	font-size: 1.0em;
	line-height: 1.5;
}

.accordion .accordioninner p span {
    font-size: .9em;
    line-height: 1.5;
    border-top: 1px dotted #c97f25;
    display: block;
    padding-top: 8px;
}

.accordion .toggle:checked + .title + .accordioninner {
	max-height: 500px;
	transition: all 1.5s;
}
.accordion .toggle:checked + .title::before {
	transform: rotate(90deg) !important;
}





section#more{ background:url(/campaign/fukubukuro2025/assets/images/omikuji_back.png); padding: 40px 0;}
section#more p.title { color: #ffffff; line-height: 1.3; font-size: 2.625rem; text-shadow: 3px -1px 0px #a37e32;}
section#more h4 { color: #bc862d; line-height: 1.3; font-size: 3.8rem;}

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

	div#main_b .row h1 img {
		max-width: 50%;
	}

	section#lineup .luckybag {
		display: flex;
		gap: 24px;
		flex-direction: column;
		align-items: center;
	}
	div#product-content.content section:not(#favo-voice) .btn a:not(.ghost),
	div#product-content.content section:not(#favo-voice) .btn button {
		width: auto;
	}
	section#lineup .luckybag .inner .img {
		max-width: 240px;
		margin: 0 auto 24px;	
	}
	section#lineup .luckybag .inner {
		width: 100%;
	}

	#buy_top .show-sp {
		display: block !important;
	}
}

@media screen and (max-width: 767px) {
	div#main_b .row h1 img{ max-width: 100%;}
	div#product-content.content section:not(#favo-voice) .btn a:not(.ghost),
	div#product-content.content section:not(#favo-voice) .btn button { min-width: 100%; margin: 0; font-size: 1rem; -webkit-box-shadow: 0 2px 20px 0 rgba(185, 58, 44, 0.5); box-shadow: 0 2px 20px 0 rgba(185, 58, 44, 0.5);}

	section#special-price-section .btn a:not(.ghost){ min-width: 90%!important;}

	.btn *:disabled { min-width: 100%; padding: 11px 40px 10px; font-size: 1rem;}

	.special-price-section h2 { font-size: 2rem;}
	.special-price-section h3 { font-size: 1.25rem;}
	.special-price-section .price { font-size: 1.125rem;}
	.special-price-section .price .num { font-size: 2rem;}
	.special-price-section .price .postage { font-size: 1rem;}
	section#lineup h2 { font-size: 1.4rem;}
	section#more p.title{ font-size: 2.6rem;}
	section#more h4{ font-size: 3rem;}
	section#lineup .row.text,
	section#more .row.text{ margin: 0 3vw;}
	section#more p.img img{ width: 80%;}

	section#lineup .luckybag .inner .img {
		max-width: 160px;
		margin: 0 auto 24px;	
	}
	section#lineup .luckybag .inner {
		width: 100%;

	}
	div#product-content.content section:not(#favo-voice) .btn a:not(.ghost),
	div#product-content.content section:not(#favo-voice) .btn button {
		width: auto;
	}

	section#lineup {
		background: #d80d23;
		padding: 20px 10px 40px;
	}

	section#buy_top .row { 
		font-size: 1.1rem;
	}

	.accordion .title {
		font-size: 1.0rem;
	}

}

/* ----- 表示／非表示 ----- */

.show-pc {
	display: block;
  }
  .show-sp {
	display: none;
  }
  
  @media screen and (max-width: 520px) {
	.show-pc {
	  display: none;
	}
	.show-sp {
	  display: block;
	}
  }