input[type=checkbox]:checked + .checkbox_area:before {
 	opacity: 1;
}

input[type=checkbox]:checked + .checkbox_jyoken:before {
 	opacity: 1;
}

input[type=checkbox]:checked + .checkbox_cond:before {
 	opacity: 1;
}

@keyframes anime-image {
	0% { opacity:0; }
	5% { opacity:1; }
	25% { opacity:1; }
	30% { opacity:0; }
	100% { opacity:0; }
}

@media only screen and (max-width: 768px) {
	#pickup {
		background:#fcf3f5;
	}
	
	#pickup .outline {
		padding:5%;background:#fcf3f5;
	}
	
	#pickup .title {
		color:#e871a1;font-weight:700;font-size:1.3rem;text-align:center;
	}
	
	#pickup .main {
		margin-top:1%;
	}
	
	#pickup .card {
		width:49%;height:300px;background:#fff;border-radius:8px;box-shadow:0 0 4px #ffe0ff, 0 4px 8px #ffe0ff;overflow:hidden;
	}
	
	#pickup .image_block {
		width:100%;height:40%;overflow:hidden;position:relative;
	}
	
	#pickup .image_block .image_background {
		width:150%;height:20px;overflow:hidden;
	}
	
	#pickup .image_block .image_background .gray {
		width:20px;height:20px;background:#eee;float:left;
	}
	
	#pickup .image_block .image_background .white {
		width:20px;height:20px;background:#fff;float:left;
	}
	
	#pickup .shop_info {
		padding:3% 6%;text-align:justify;position:relative;height:56%;word-break:break-all;
	}
	
	#pickup .shop_info .upper {
		height:75%;overflow:hidden;
	}
	
	#pickup .shop_info .shop_name {
		color:#a58c5e;font-size:0.9rem;font-weight:700;height:20px;overflow:hidden;
	}
	
	#pickup .shop_info .shop_name_kana {
		color:#a58c5e;font-size:0.7rem;line-height:8px;height:8px;font-weight:700;overflow:hidden;
	}
	
	#pickup .shop_info .shop_place {
		color:#a58c5e;padding-top:2px;font-size:0.9rem;font-weight:700;height:20px;overflow:hidden;
	}
	
	#pickup .shop_info .shop_title {
		padding-top:4%;font-size:0.9rem;color:#214c95;line-height:16px;text-align:justify;
	}
	
	#pickup .shop_info .lower {
		height:25%;overflow:hidden;
	}
	
	#pickup .shop_info .price_space {
		padding-top:3%;
	}
	
	#pickup .shop_info .price_title {
		font-size:0.9rem;padding-right:5px;
	}
	
	#pickup .shop_info .price {
		color:#e871a1;font-size:1.3rem;font-weight:900;
	}
	
	#pickup .shop_info .price_yen {
		font-size:0.9rem;padding-left:2px;
	}
	
	#area {
		background:#fff;padding:5%;margin:5% 0 0 0;
	}
	
	#area .title {
		background:#e871a1;height:60px;border-radius:8px;position:relative;
	}
	
	#area .title .image {
		height:30px;margin:15px 10px;
	}
	
	#area .title span {
		line-height:60px;color:#fff;font-size:1.5rem;font-weight:500;
	}
	
	#area .title .arrow {
		position:absolute;top:20px;right:12px;
	}
	
	#area .title .arrow img {
		height:20px;
	}
	
	#area .waku {
		padding:3% 5% 5% 5%;border:1px solid #e871a1;border-radius:8px;overflow:hidden;margin-top:5%;
	}
	
	#area .caption {
		font-size:1.2rem;font-weight:700;margin:3% 0 1% 0;
	}
	
	#area .left {
		width:48%;float:left;border:1px solid #ddd;border-radius:4px;text-align:center;padding:2% 0 5% 0;
	}
	
	#area .right {
		width:48%;float:right;border:1px solid #ddd;border-radius:4px;text-align:center;padding:2% 0 5% 0;
	}
	
	#area .space {
		clear:both;padding-top:3%;
	}
	
	#area .bt {
		margin:6% 0 3% 0;height:56px;border-radius:28px;text-align:center;font-size:1.3rem;color:#fff;background:#0a2653;line-height:56px;
	}
	
	#jyoken {
		background:#fff;padding:5% 5% 3% 5%;
	}
	
	#jyoken .title {
		background:#e871a1;height:60px;border-radius:8px;position:relative;
	}
	
	#jyoken .image {
		height:30px;margin:15px 10px;
	}
	
	#jyoken .title span {
		line-height:60px;color:#fff;font-size:1.5rem;font-weight:500;
	}
	
	#jyoken .title .arrow {
		position:absolute;top:20px;right:12px;
	}
	
	#jyoken .title .arrow img {
		height:20px;
	}
	
	#banner {
		background:#fff;padding-bottom:2%;
	}
	
	#banner img {
		width:100%;
	}
	
	#list {
		background:#fff;padding:3% 5%;
	}
	
	#list #title_list {
		font-size:1.5rem;font-weight:700;
	}
	
	#list .list_header {
		padding-top:10px;height:40px;
	}
	
	#list .list_header .left {
		line-height:30px;float:left;
	}
	
	#list .list_header .right {
		float:right;
	}
	
	#list .list_header .result_title {
		font-size:1.2rem;
	}
	
	#list .list_header .result_count {
		padding:5px;font-size:1.5rem;color:#e871a1;font-weight:700;
	}
	
	#list .list_header select {
		height:30px;border:1px solid #ccc;font-size:1.2rem;border-radius:5px;
	}
	
	#list .list_header .page {
		margin:2% 0 3% 0;height:30px;background:#f6f3ee;padding:1%;border-radius:2px;
	}
	
	#list .block {
		margin-bottom:8%;
	}
	
	#list .id {
		text-align:right;font-size:0.9rem;color:#a58c5e;
	}
	
	#list .card {
		width:100%;overflow:hidden;box-shadow:0 0 4px #ccc, 0 4px 8px #ccc;border-bottom-right-radius:6px;border-bottom-left-radius:6px;
	}
	
	#list .card .line {
		height:4px;background:#e871a1;
	}
	
	#list .card .main {
		padding:3% 5% 4% 5%;
	}
	
	#list .card .main .title {
		color:#214c95;font-weight:700;text-align:justify;
	}
	
	#list .card .main .list_image {
		height:200px;position:relative;overflow:hidden;border-radius:10px;border:1px solid #eee;margin-top:2%;
	}
	
	#list .card .main .list_background {
		width:150%;height:30px;overflow:hidden;
	}
	
	#list .card .main .list_background .gray {
		width:30px;height:30px;background:#eee;float:left;
	}
	
	#list .card .main .list_background .white {
		width:30px;height:30px;background:#fff;float:left;
	}
	
	#list .card .main .upper {
		padding-top:10px;
	}
	
	#list .card .main .upper .shop_name {
		color:#a58c5e;font-weight:700;
	}
	
	#list .card .main .upper .shop_name_kana {
		color:#a58c5e;font-size:0.8rem;font-weight:700;line-height:8px;height:8px;
	}
	
	#list .card .main .upper .shop_place {
		color:#a58c5e;font-weight:700;padding-top:4px;
	}
	
	#list .card .main .middle {
		padding-top:10px;
	}
	
	#list .card .main .middle .record_upper {
		display:flex;
	}
	
	#list .card .main .middle .record_upper .price_caption {
		width:55px;line-height:26px;font-size:0.9rem;
	}
	
	#list .card .main .middle .record_upper .price_value {
		line-height:20px;
	}
	
	#list .card .main .middle .record_upper .price {
		font-size:1.2rem;color:#e871a1;font-weight:700;
	}
	
	#list .card .main .middle .record_upper .yen {
		padding-left:1px;font-size:0.9rem;
	}
	
	#list .card .main .middle .record_lower {
		display:flex;
	}
	
	#list .card .main .middle .record_lower .place_caption {
		width:55px;line-height:20px;font-size:0.9rem;
	}
	
	#list .card .main .middle .record_lower .place {
		line-height:20px;
	}
	
	#list .card .main .lower {
		padding-top:15px;
	}
	
	#list .card .main .lower .point {
		float:left;margin-right:6px;margin-bottom:6px;background:#f6f3ee;border:1px solid #ccc;line-height:24px;padding:1px 4px;font-size:0.85rem;
	}
	
	#list .card .main .lower .end {
		clear:both;
	}
	
	#list .paging_upper {
		margin:2% 0 3% 0;height:30px;background:#f6f3ee;padding:1%;border-radius:2px;
	}
	
	#list .page_bottom {
		margin:2% 0 3% 0;height:30px;background:#f6f3ee;padding:1%;border-radius:2px;
	}
	
	#title_list:before {
		content:'';
		width:8px;
		height:100%;
		margin-right:10px;
		border:3px solid #e871a1;
	}
	
	.checkbox_jyoken {
		box-sizing: border-box;
		-webkit-transition: background-color 0.2s linear;
		transition: background-color 0.2s linear;
		position: relative;
		display: inline-block;
		border-radius: 10px;
		vertical-align: middle;
		cursor: pointer;
		width:100%;
		font-weight:700;
		font-size:1rem;
		text-align:center;
		margin-top:20px;
	}
	
	.checkbox_jyoken:before {
		-webkit-transition: opacity 0.2s linear;
		transition: opacity 0.2s linear;
		position: absolute;
		top: -120%;
		right: 3%;
		display: block;
		width: 20px;
		height: 20px;
		content: '';
		opacity: 0;
		z-index:801;
		background:url('../image/ph2/icon_check.svg') no-repeat;
		background-size:20px auto;
	}
	
	.checkbox_area {
		box-sizing: border-box;
		-webkit-transition: background-color 0.2s linear;
		transition: background-color 0.2s linear;
		position: relative;
		display: inline-block;
		border-radius: 10px;
		vertical-align: middle;
		cursor: pointer;
		width:100%;
		font-weight:700;
		font-size:1.2rem;
		text-align:center;
		margin-top:20px;
	}
	
	.checkbox_area:before {
		-webkit-transition: opacity 0.2s linear;
		transition: opacity 0.2s linear;
		position: absolute;
		top: -90%;
		right: 3%;
		display: block;
		width: 20px;
		height: 20px;
		content: '';
		opacity: 0;
		z-index:801;
		background:url('../image/ph2/icon_check.svg') no-repeat;
		background-size:20px auto;
	}
}

@media only screen and (min-width: 769px) {
	#pickup {
		background:#fcf3f5;
	}
	
	#pickup .outline {
		padding:5%;
	}
	
	#pickup .title {
		color:#e871a1;font-weight:700;font-size:1.3rem;text-align:center;
	}
	
	#pickup .main {
		margin-top:1%;
	}
	
	#pickup .card {
		width:49%;height:300px;background:#fff;border-radius:8px;box-shadow:0 0 4px #ffe0ff, 0 4px 8px #ffe0ff;overflow:hidden;
	}
	
	#pickup .image_block {
		width:100%;height:45%;overflow:hidden;position:relative;
	}
	
	#pickup .image_block .image_background {
		width:150%;height:30px;overflow:hidden;
	}
	
	#pickup .image_block .image_background .gray {
		width:30px;height:30px;background:#eee;float:left;
	}
	
	#pickup .image_block .image_background .white {
		width:30px;height:30px;background:#fff;float:left;
	}
	
	#pickup .shop_info {
		padding:3% 6%;text-align:justify;position:relative;height:56%;word-break:break-all;
	}
	
	#pickup .shop_info .upper {
		height:70%;padding-top:3%;overflow:hidden;
	}
	
	#pickup .shop_info .shop_name {
		color:#a58c5e;font-size:1.1rem;font-weight:700;
	}
	
	#pickup .shop_info .shop_name_kana {
		color:#a58c5e;font-size:0.8rem;line-height:10px;height:8px;font-weight:700;
	}
	
	#pickup .shop_info .shop_place {
		color:#a58c5e;padding-top:7px;font-size:1.1rem;font-weight:700;
	}
	
	#pickup .shop_info .shop_title {
		padding-top:2%;font-size:1rem;color:#214c95;line-height:28px;text-align:justify;
	}
	
	#pickup .shop_info .lower {
		height:20%;overflow:hidden;
	}
	
	#pickup .shop_info .price_space {
		padding-top:1%;
	}
	
	#pickup .shop_info .price_title {
		font-size:1rem;padding-right:5px;
	}
	
	#pickup .shop_info .price {
		color:#e871a1;font-size:1.8rem;font-weight:900;
	}
	
	#pickup .shop_info .price_yen {
		font-size:1rem;padding-left:4px;
	}
	
	#area {
		background:#fff;padding:5%;margin:5% 0 0 0;
	}
	
	#area .title {
		background:#e871a1;height:60px;border-radius:8px;position:relative;
	}
	
	#area .title .image {
		height:30px;margin:15px 10px;
	}
	
	#area .title span {
		line-height:60px;color:#fff;font-size:1.5rem;font-weight:500;
	}
	
	#area .title .arrow {
		position:absolute;top:18px;right:12px;
	}
	
	#area .title .arrow img {
		height:20px;
	}
	
	#area .waku {
		padding:3% 5% 5% 5%;border:1px solid #e871a1;border-radius:8px;overflow:hidden;margin-top:5%;
	}
	
	#area .caption {
		font-size:1.2rem;font-weight:700;margin:3% 0 1% 0;
	}
	
	#area .right {
		width:48%;float:right;border:1px solid #ddd;border-radius:4px;text-align:center;padding:2% 0 5% 0;
	}
	
	#area .left {
		width:48%;float:left;border:1px solid #ddd;border-radius:4px;text-align:center;padding:2% 0 5% 0;
	}
	
	#area .space {
		clear:both;padding-top:3%;
	}
	
	#area .bt {
		margin:6% auto 3% auto;height:56px;border-radius:28px;text-align:center;font-size:1.3rem;color:#fff;background:#0a2653;line-height:56px;width:60%;
	}
	
	#banner {
		background:#fff;padding-bottom:2%;
	}
	
	#banner img {
		width:100%;
	}
	
	#list {
		background:#fff;padding:3% 5%;
	}
	
	#list #title_list {
		font-size:1.5rem;font-weight:700;
	}
	
	#list .list_header {
		padding-top:10px;height:40px;
	}
	
	#list .list_header .left {
		line-height:30px;float:left;
	}
	
	#list .list_header .right {
		float:right;
	}
	
	#list .list_header .result_title {
		font-size:1.2rem;
	}
	
	#list .list_header .result_count {
		padding:5px;font-size:1.5rem;color:#e871a1;font-weight:700;
	}
	
	#list .list_header .result_caption {
		font-size:0.9rem;
	}
	
	#list .list_header select {
		height:30px;border:1px solid #ccc;font-size:1.2rem;border-radius:5px;
	}
	
	#list .list_main .paging_upper {
		margin:2% 0 3% 0;height:30px;background:#f6f3ee;padding:1%;border-radius:2px;
	}
	
	#list .block {
		margin-bottom:8%;
	}
	
	#list .id {
		text-align:right;font-size:0.9rem;color:#a58c5e;
	}
	
	#list .card {
		width:100%;overflow:hidden;box-shadow:0 0 4px #ccc, 0 4px 8px #ccc;border-bottom-right-radius:6px;border-bottom-left-radius:6px;
	}
	
	#list .card .line {
		height:6px;background:#e871a1;
	}
	
	#list .card .main {
		padding:3% 5% 4% 5%;
	}
	
	#list .card .main .title {
		color:#214c95;font-weight:700;text-align:justify;font-size:1.1rem;line-height:30px;
	}
	
	#list .card .main .list_image {
		position:relative;overflow:hidden;border-radius:10px;border:1px solid #eee;margin-top:2%;
	}
	
	#list .card .main .list_background {
		width:150%;height:50px;overflow:hidden;
	}
	
	#list .card .main .list_background .gray {
		width:50px;height:50px;background:#eee;float:left;
	}
	
	#list .card .main .list_background .white {
		width:50px;height:50px;background:#fff;float:left;
	}
	
	#list .card .main .upper {
		padding-top:15px;
	}
	
	#list .card .main .upper .shop_name {
		color:#a58c5e;font-weight:700;font-size:1.1rem;
	}
	
	#list .card .main .upper .shop_name_kana {
		color:#a58c5e;font-size:0.8rem;font-weight:700;line-height:10px;height:10px;
	}
	
	#list .card .main .upper .shop_place {
		color:#a58c5e;font-weight:700;padding-top:7px;font-size:1.1rem;
	}
	
	#list .card .main .middle {
		padding-top:15px;
	}
	
	#list .card .main .middle .record_upper {
		display:flex;
	}
	
	#list .card .main .middle .record_upper .price_caption {
		width:70px;line-height:26px;font-size:0.9rem;
	}
	
	#list .card .main .middle .record_upper .price_value {
		line-height:20px;
	}
	
	#list .card .main .middle .record_upper .price {
		font-size:1.3rem;color:#e871a1;font-weight:700;
	}
	
	#list .card .main .middle .record_upper .yen {
		padding-left:1px;font-size:0.9rem;
	}
	
	#list .card .main .middle .record_lower {
		display:flex;padding-top:5px;
	}
	
	#list .card .main .middle .record_lower .place_caption {
		width:70px;line-height:20px;font-size:0.9rem;
	}
	
	#list .card .main .middle .record_lower .place {
		line-height:20px;
	}
	
	#list .card .main .lower {
		padding-top:25px;
	}
	
	#list .card .main .lower .point {
		float:left;margin-right:10px;margin-bottom:10px;background:#f6f3ee;border:1px solid #ccc;line-height:28px;padding:2px 7px;font-size:1rem;
	}
	
	#list .card .main .lower .end {
		clear:both;
	}
	
	#list .page_bottom {
		margin:2% 0 3% 0;height:30px;background:#f6f3ee;padding:1%;border-radius:2px;
	}
	
	.checkbox_cond {
		box-sizing: border-box;
		-webkit-transition: background-color 0.2s linear;
		transition: background-color 0.2s linear;
		position: relative;
		display: inline-block;
		margin: 4px 0 4px 4px;
		padding: 6px 13px 6px 20px;
		border-radius: 4px;
		vertical-align: middle;
		cursor: pointer;
		border:1px solid #ddd;
		background:linear-gradient(#fff, #f5f5f5);
		background:#fff;
	}

	.checkbox_cond:after {
		-webkit-transition: border-color 0.2s linear;
		transition: border-color 0.2s linear;
		position: absolute;
		top: 50%;
		left: 5px;
		display: block;
		margin-top: -10px;
		width: 16px;
		height: 16px;
		border: none;
		border-radius: 6px;
		content: '';
	}
	
	.checkbox_cond:before {
		-webkit-transition: opacity 0.2s linear;
		transition: opacity 0.2s linear;
		position: absolute;
		top: 50%;
		left: 7px;
		display: block;
		margin-top: -8px;
		width: 5px;
		height: 9px;
		border-right: 3px solid #53b300;
		border-bottom: 3px solid #53b300;
		content: '';
		opacity: 0;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	
	.checkbox_area {
		box-sizing: border-box;
		-webkit-transition: background-color 0.2s linear;
		transition: background-color 0.2s linear;
		position: relative;
		display: inline-block;
		border-radius: 10px;
		vertical-align: middle;
		cursor: pointer;
		width:100%;
		font-weight:700;
		font-size:1.4rem;
		text-align:center;
		margin-top:10%;
	}
	
	.checkbox_area:before {
		-webkit-transition: opacity 0.2s linear;
		transition: opacity 0.2s linear;
		position: absolute;
		top: -120%;
		right: 3%;
		display: block;
		width: 40px;
		height: 40px;
		content: '';
		opacity: 0;
		z-index:801;
		background:url('../image/ph2/icon_check.svg') no-repeat;
		background-size:40px auto;
	}
}
