@charset "UTF-8";

/*----------------------------
	fooddrive
------------------------------*/
main {
	background-color: #d2effb;
	padding: 0 0 3rem;
}
.inner {
	max-width: 86rem;
	margin: 0 auto;
}
@media (max-width: 768px) {
	.inner {
		max-width: 100%;
		padding: 0;
	}
}
.foodInner {
	max-width: 70.3rem;
	margin: 3rem auto 0;
	background-color: #fff;
	border: solid 3px #00a5e6;
	font-family: "UD Shin Maru Go DemiBold";	
}

/* mvArea */
.mvArea .lead {
	margin: 4rem auto 0;
	width: 60.9rem;
}
.mvArea .about {
	margin-top: 3.5rem;
}
.mvArea .about > dl {
	margin: 0 auto 1rem;
	width: 60.6rem;
	border: solid 2px #ff6700;
	border-radius: 2rem;
}
.mvArea .about > dl dt {
	padding: 1rem;
	background-color: #ff6700;
	border-radius: 1.5rem 1.5rem 0 0;
	font-size: 2.6rem;
	font-weight: 700;
	color: #fff;
	text-align: center;
}
.mvArea .about > dl dd {
	padding: 2rem 26rem 2rem 2rem;
	font-size: 2.2rem;
	font-weight: 700;
	text-align: justify;
	color: #ff6700;
	line-height: 3rem;
	position: relative;
}
.mvArea .about > dl dd::after {
	content: "";
	width: 15.9rem;
	height: 15.1rem;
	background: url(/base/pc/store/special/tsunaguaction/2025ss/img/fooddrive/img01.png) no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 0.3rem;
	right: 1rem;
}
.mvArea .txt {
	margin: 2.5rem 5rem 0;
	font-size: 2.3rem;
	font-weight: 700;
	line-height: 3.4rem;
	color: #646464;
}

/* flow */
.flow {
	margin: 5rem auto 0;
	max-width: 60.6rem;
}
.flow h2 {
	padding: 1rem;
	background-color: #ff6700;
	border-radius: 3rem;
	font-size: 2.6rem;
	font-weight: 700;
	color: #fff;
	text-align: center;
}
.flow h2 + p {
	margin-top: 4rem;
}
.flow .accept,
.flow .refuse {
	margin: 0 auto;
	border-radius: 3rem;
}
.flow .accept {
	margin-top: 5rem;
	background-color: #fceff5;
	border: solid 2px #ea6da4;
}
.flow .refuse {
	margin-top: 8rem;
	background-color: #ebf3fa;
	border: solid 2px #5b9ed6;
}
.flow h3 {
	font-size: 2.6rem;
	font-weight: 700;
	text-align: center;
	color: #fff;
	border-radius: 2.5rem 2.5rem 0 0;
	padding: 1rem;
}
.flow h3 span {
	position: relative;
}
.flow h3 span::before {
	display: block;
	content: '';
	background-size: contain;
	position: absolute;
}
.flow .list {
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 3.4rem;
	text-align: center;
}
.flow .list ul {
	margin-top: 3rem;
	display: inline-block;
	text-align: left;
}
.flow .list ul .note {
	font-size: 1.8rem;
}
.flow .accept h3 {
	background: #ea6da4;
}
.flow .accept h3 span {
	padding-left: 7.5rem;
}
.flow .accept .list {
	color: #ea6da4;
}
.flow .accept h3 span::before {
	background-image: url(/base/pc/store/special/tsunaguaction/2025ss/img/fooddrive/icn01.png);
	width: 7rem;
	height: 7rem;
	top: calc(50% - 3.5rem);
	left: 0;
}
.flow .accept .pic {
	margin: 1rem auto -4rem;
	width: 41.4rem;
}
.flow .accept .special {
	margin: 2.5rem auto 0;
	width: 54.8rem;
	padding: 1rem 2rem;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.6rem;
	border: solid 2px #ea6da4;
	background-color: #fff;
	display: flex;
	align-items: center;
	gap: 0 3rem;
}
.flow .accept .special ul {
	border-left: solid 2px #ea6da4;
	padding-left: 3rem;
}
.flow .refuse h3 {
	background: #5b9ed6;
}
.flow .refuse h3 span {
	padding-left: 6.5rem;
}
.flow .refuse .list {
	color: #5b9ed6;
}
.flow .refuse h3 span::before {
	background-image: url(/base/pc/store/special/tsunaguaction/2025ss/img/fooddrive/icn02.png);
	width: 5.7rem;
	height: 5.7rem;
	top: calc(50% - 2.85rem);
	left: 0;
}
.flow .refuse .pic {
	margin: 1rem auto -5rem;
	width: 37.4rem;
}

/* schedule */
.schedule {
	margin: 7rem auto 0;
	max-width: 59.8rem;
	font-family: "UD Shin Go DemiBold";
}
.schedule h2 {
	padding: 1rem;
	background-color: #ff6700;
	border-radius: 3rem;
	font-size: 2.6rem;
	font-family: "UD Shin Maru Go DemiBold";
	font-weight: 700;
	color: #fff;
	text-align: center;
}
.schedule .event {
	margin: 2.5rem auto 0;
	width: 60.4rem;
	border: solid 2px #ff650d;
	border-radius: 3rem;
	font-family: "UD Shin Maru Go DemiBold";
	text-align: center;
	padding-bottom: 1.5rem;
}
.schedule .event h4 {
	font-size: 2.6rem;
	text-align: center;
	color: #fff;
	background: #ff9b4a;
	border-radius: 2.8rem 2.8rem 0 0;
	padding: 1rem;
}
.schedule .event .eventTxt {
	margin-top: 1.5rem;
	font-size: 2.6rem;
	font-family: "UD新丸ゴ H", "UD Shin Maru Go Heavy";
	line-height: 3.6rem;
	letter-spacing: 0.1em;
	text-align: center;
	color: #ff6700;
}
.schedule .event ul {
	display: inline-block;
	margin-top: 1rem;
	font-size: 1.9rem;
	font-family: "UD Shin Go DemiBold";
	line-height: 2.6rem;
	text-align: left;
}
.schedule .list {
	margin: 2.5rem auto 0;
	width: 60.4rem;
	border: solid 2px #ff650d;
	border-radius: 3rem;
}
.schedule .list dl {
	display: flex;
}
.schedule .list dl dt {
	width: 14.5rem;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.3;
	color: #fff;
	text-align: center;
	background-color: #ff9b4a;
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-bottom: 2px solid #fff;
}
.schedule .list dl dd {
	width: calc(100% - 14.5rem);
	padding: 2rem 1.5rem 2rem 2rem;
	font-size: 1.9rem;
	font-weight: 700;
	line-height: 2.6rem;
	border-bottom: 2px solid #ff650d;
	position: relative;
}
/* .schedule .list dl dd.end::after {
	content: "終了いたしました。\A皆様のご協力ありがとうございました。";
	padding: 0.3rem 1.5rem;
	background-color: #E0EBF6;
	border: solid 2px #6A99D0;
	font-size: 1.5rem;
	text-align: center;
	white-space: pre;
	position: absolute;
	top: 59%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.schedule .list dl dd.end.center::after {
	top: 50%;
} */
.schedule .list dl dd.end {
	color: #969696;
}
.schedule .list dl dd.end::after {
	content: "終了";
	background-color: #ff6702;
	color: #fff;
	font-size: 2.4rem;
	text-align: center;
	white-space: pre;
	position: absolute;
	top: calc(50% - 3.25rem);
	right: 1.5rem;
	width: 7.5rem;
	height: 7.5rem;
	border-radius: 4rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.schedule .list dl dd p {
	padding-left: 1em;
	text-indent: -1em;
}
.schedule .list dl:first-child dt {
	border-radius: 2.8rem 0 0 0;
}
.schedule .list dl:first-child dd {
	border-radius: 0 2.8rem 0 0;
}
.schedule .list dl:last-child dt {
	border-radius: 0 0 0 2.8rem;
	border-bottom: none;
}
.schedule .list dl:last-child dd {
	border-radius: 0 0 2.8rem 0;
	border-bottom: none;
}
.schedule .list dl dd .border {
	display: inline-block;
	border: solid 1px #646464;
	border-radius: 1.5rem;
	padding: 0.5rem 1rem;
}
.schedule .list dl dd .border p {
	padding-left: 0;
	text-indent: 0;
}
.schedule .list dl dd p + .border {
	margin-top: 1rem;
}

.schedule h3 {
	margin-top: 9rem;
	padding: 1.3rem;
	background-color: #00a5e6;
	border-radius: 3rem;
	font-size: 2.2rem;
	font-family: "UD Shin Maru Go DemiBold";
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #fff;
	text-align: center;
}
.schedule h3 + p {
	margin-top: 2rem;
	font-size: 2.2rem;
	font-family: "UD Shin Maru Go DemiBold";
	font-weight: 700;
	color: #646464;
	text-align: center;
}

.schedule .list02 {
	margin: 2.5rem auto 0;
	width: 60.4rem;
	border-top: solid 2px #00a5e6;
	border-left: solid 2px #00a5e6;
	border-radius: 3rem;
}
.schedule .list02 dl {
	display: flex;
}
.schedule .list02 dl dt {
	width: 14.5rem;
	font-size: 2rem;
	font-weight: 700;
	color: #00a5e6;
	text-align: center;
	background-color: #d2effb;
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-right: 2px solid #00a5e6;
	border-bottom: 2px solid #00a5e6;
	padding: 3rem 0.5rem;
}
.schedule .list02 dl dd {
	padding: 0 0.5rem;
	font-size: 1.9rem;
	font-weight: 700;
	text-align: center;
	line-height: 2.6rem;
	border-right: 2px solid #00a5e6;
	border-bottom: 2px solid #00a5e6;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.schedule .list02 dl dd:nth-of-type(1) {
	width: 28.2rem;
	letter-spacing: -0.04em;
}
.schedule .list02 dl dd:nth-of-type(2) {
	width: 17.7rem;
}
.schedule .list02 dl.listHeader {
	background-color: #00a5e6;
	border-radius: 2.8rem 2.8rem 0 0;
}
.schedule .list02 dl.listHeader dt {
	background-color: #00a5e6;
	border-radius: 2.8rem 0 0 0;
	border-right: 2px solid #fff;
	color: #fff;
}
.schedule .list02 dl.listHeader dd {
	padding: 2rem 0.5rem;
	color: #fff;
	font-size: 2rem;
	display: flex;
	justify-content: center;
	align-items: center;
}
.schedule .list02 dl.listHeader dd:nth-of-type(1) {
	border-right: 2px solid #fff;
}
.schedule .list02 dl.listHeader dd:nth-of-type(2) {
	border-radius: 0 2.8rem 0 0;
}
.schedule .list02 dl:last-child {
	background-color: #ff6700;
	border-radius: 0 0 2.8rem 2.8rem;
	color: #fff;
}
.schedule .list02 dl:last-child dt {
	color: #fff;
	background-color: #ff6700;
	border-radius: 0 0 0 2.8rem;
	border-right: 2px solid #fff;
}
.schedule .list02 dl:last-child dd:nth-of-type(1) {
	border-right: 2px solid #fff;
}
.schedule .list02 dl:last-child dd:nth-of-type(2) {
	border-radius: 0 0 2.8rem 0;
}
.schedule .note {
	margin-top: 2rem;
	padding-left: 1em;
	text-indent: -1em;
	font-size: 1.9rem;
	font-weight: 700;
	line-height: 2.6rem;
}

/* thanks */
.thanks {
	margin-top: 5rem;
	padding-bottom: 3rem;
}
.thanks h2 {
	font-size: 3.1rem;
	font-weight: 700;
	line-height: 4.2rem;
	text-align: center;
}
.thanks h2 mark {
	background: linear-gradient(transparent 40%, transparent 60%, #ffd9c0 61%, #ffd9c0 85%, transparent 95%, transparent 100%);
}
.thanks .pic {
	margin: 3.5rem auto 0;
	width: 64.7rem;
}
.thanks .txt {
	margin-top: 5rem;
	font-size: 2.2rem;
	font-weight: 600;
	text-align: center;
	line-height: 3.4rem;
	color: #646464;
}

/* weeksBtn */
.weeksBtn {
	width: 15rem;
	position: fixed;
	right: 3rem;
	bottom: 3rem;
	z-index: 1000;
}
.weeksBtn .closeBtn {
	width: 2.7rem;
	position: absolute;
	top: -1.3rem;
	right: -0.5rem;
	cursor: pointer;
}
@media (max-width: 768px) {
	.weeksBtn {
		z-index: 900;
	}
}