/*------------------------------------------------------------------------------
 shopStampcardBox
 ------------------------------------------------------------------------------*/
.shopStampcardBox {
	overflow: hidden;
}

/* stampTitle */
.shopStampcardBox .stampTitle {
	line-height: 1.4;
	padding: 10px;
	font-size: 116%;
	color: #F06;
	text-shadow: 1px 1px 0px #EEE;
	background: #80CEDD;
	border-top: 3px solid #029EBC;
}

/* stampBody */
.shopStampcardBox .stampBody {
	overflow: hidden;
	background: #DEF5F9;
	padding: 0px 8px;
	border-top: none;
}

/* stampCatch */
.shopStampcardBox .stampCatch {
	line-height: 1.5;
	margin: 15px 0 0;
	padding: 0 5px;
	font-size: 108%;
}

/* stampImage */
.shopStampcardBox .stampImage {
	overflow: hidden;
	display: flex;
	flex-wrap: wrap;
	margin: 15px 0 0;
	background: #FFF;
	border-top: 1px solid #CCC;
	border-left: 1px solid #CCC;
}
.shopStampcardBox .stampImage li {
	text-align: center;
	width: 20%;
	padding: 5px;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
}
#PC .shopStampcardBox .stampImage {
	width: 600px;
}
#PC .shopStampcardBox .stampImage li {
	width: 10%;
}
.shopStampcardBox .stampImage li img {
	display: block;
	width: 100%;
}

/* stampGroup */
.shopStampcardBox .stampGroup {
	margin: 20px 0;
}
.shopStampcardBox .stampGroup strong {
	font-weight: bold;
	color: #096;
}
.shopStampcardBox .stampGroup ul {
	padding: 0 5px 5px;
}
.shopStampcardBox .stampGroup li {
	margin: 8px 0 0;
}

/* stampContent */
.shopStampcardBox .stampContent {
	margin: 20px 0;
}
.shopStampcardBox .stampContent dt {
	font-size: 92%;
	font-weight: bold;
	border-bottom: 1px solid #555;
}
.shopStampcardBox .stampContent dd {
	line-height: 1.4;
	margin: 10px 5px 0;
}

/* stampList */
.shopStampcardBox .stampList {
	margin: 20px 0;
}
.shopStampcardBox .stampList strong {
	display: block;
	font-size: 92%;
	font-weight: bold;
	border-bottom: 1px solid #555;
}
.shopStampcardBox .stampList dl {
	margin: 5px 0px 0;
}
.shopStampcardBox .stampList dt {
	padding: 5px 0 0;
	font-weight: normal;
}
.shopStampcardBox .stampList dd {
	line-height: 1.4;
	padding: 5px 0 0 5px;
}

/* stampNotes */
.shopStampcardBox .stampNotes {
	margin: 20px 0;
}
.shopStampcardBox .stampNotes dt {
	font-size: 92%;
	font-weight: bold;
	border-bottom: 1px solid #555;
}
.shopStampcardBox .stampNotes dd {
	line-height: 1.4;
	margin: 10px 0px 0;
}

/*------------------------------------------------------------------------------
 shopStampcardRule
 ------------------------------------------------------------------------------*/
.shopStampcardRule {
	margin: 15px 8px;
}
.shopStampcardRule span {
	text-align: center;
	display: block;
	font-weight: bold;
}
.shopStampcardRule p {
	overflow: auto;
	height: 100px;
	line-height: 1.4;
	margin: 5px 0 0;
	padding: 10px;
	border: 1px solid #999;
}

/*------------------------------------------------------------------------------
 shopStampcardForm
 ------------------------------------------------------------------------------*/
.shopStampcardForm {
	margin: 15px 8px;
}
.shopStampcardForm .agree {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	font-weight: bold;
	color: maroon;
	cursor: pointer;
}
.shopStampcardForm .agree input[type=checkbox]:checked + span {
	color: #096;
}
.shopStampcardForm .fav_info {
	text-align: center;
	line-height: 1.2;
	margin: 15px 0 0;
	color: deeppink;
}
.shopStampcardForm .submit {
	text-align: center;
	margin: 15px 0 25px;
}
.shopStampcardForm .submit input {
	display: grid;
	place-items: center;
	width: 300px;
	height: 40px;
	margin: 0 auto;
	font-size: 124%;
	color: #FFF;
	background: #00ABAD;
	border-radius: 5px;
	border: none;
	text-decoration: none;
}
.shopStampcardForm .submit input:disabled {
	background: #AAA;
}

/*------------------------------------------------------------------------------
 shopStampcardResult
 ------------------------------------------------------------------------------*/
.shopStampcardResult {
	margin: 12px 8px;
}
.shopStampcardResult strong {
	font-size: 108%;
	color: #096;
}
