@charset "utf-8";
/* ================================================================
ふきとりケアキャンペーン
=================================================================== */

/*Base */
* {
	margin: 0;
	padding: 0;
}

img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align: top;
}

em {
	font-style: normal;
}

ol, ul {
	list-style-type: none;
}

* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
input {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a {
	text-decoration: underline;
	border: none;
	outline: none;
}

a:hover {
	text-decoration: none;
}

*:focus {
	outline: none;
}


/* contents-wrapper
*****************************************/
.contents-wrapper {
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
	color: #221815;
	font-size: 20px;
}


/* anchorlink
*****************************************/
.anchorlink {
	margin-top: -50px;
	padding-top: 50px;
}


/* section
*****************************************/
.contents-wrapper .sec01 .anc_link {
	position: absolute;
	bottom: 7.333%;
	left: 50%;
	transform: translateX(-50%);
	width: 77.6%; /* 582px */
}

.contents-wrapper .sec04 {
	padding: 39px 34px;
	box-sizing: border-box;
	color: #3E3A39;
	font-size: 25px;
	line-height: 1.2;
	letter-spacing: .02em;
	font-feature-settings: "palt";
	text-align: justify;
}

.contents-wrapper .sec04 p:not(:first-of-type) {
	margin-top: 30px;
}

/* sp */
@media screen and (max-width:736px) {
	.contents-wrapper .sec04 {
		padding: 20px 17px;
		font-size: 13px;
	}
	
	.contents-wrapper .sec04 p:not(:first-of-type) {
		margin-top: 15px;
	}
}


/* cart
*****************************************/
.cart_bg_img {
	position: relative;
}
.cart_bg_img .cartWrap {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
max-width: 520px;
    width: 90%;
}
.cart_bg_img .cartWrap input {
	width: 100%;
	transition: 0.2s ease opacity;
}
.cart_bg_img .cartWrap input:hover {
	opacity: .8;
}


.cart_bg01 .cartWrap {
	bottom: 48%; /* 385px */
}

.cart_bg02 .cartWrap {
	bottom: 34%;
}


/* cart
*****************************************/
.contents-wrapper .cart_bg01 .cart_bg_img_item {
	bottom: 50.698%; /* 363px */
}
.contents-wrapper .cart_bg02 .cart_bg_img_item {
	bottom: 40.172%; /* 186px */
}
.contents-wrapper .cart_bg03 .cart_bg_img_item {
	bottom: 40.086%; /* 186px */
}
.contents-wrapper .cart_bg04 .cart_bg_img_item {
	bottom: 40.259%; /* 186px */
}

.contents-wrapper .cart_bg_img {
	position: relative;
}
.contents-wrapper .cart_bg_img .cart_bg_img_item {
	position: absolute;
    left: 53%;
    top: 50%;
	transform: translateX(calc(-50% + 7px));
	width: 55%; /* 556px */
}
.contents-wrapper .cart_bg_img .cart_bg_img_item.teiki {
    left: 53%;
    top: 50%;
}

.contents-wrapper .cartWrap .wrap01 {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-left: 0px;
}
.contents-wrapper .cartWrap .numWrap {
	width: 20.683%; /* 115px */
	padding-bottom: 3px;
}
.contents-wrapper .cartWrap .numWrap .num {
    font-size: 100%;
    text-align: right;
    padding-right: 6.086%;
    padding-bottom: 3%;
}
.contents-wrapper .cartWrap .numWrap .selectBox {
	/* margin-top: 8%; */
	background: #f0f0f0;
	border-left: 4px solid #858585;
	border-right: 4px solid #e2e2e2;
	border-top: 4px solid #858585;
	border-bottom: 4px solid #e2e2e2;
	position: relative;
}
.contents-wrapper .cartWrap .numWrap .selectBox:after {
	position: absolute;
	content: "";
	top: 50%;
	right: 21.052%; /* 24px */
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-left: 9px solid transparent;
	border-right: 9px solid transparent;
	border-top: 10px solid #787878;
	z-index: 1;
}
.contents-wrapper .cartWrap select {
	display: block;
	width: 100%;
	font-size: 160%;
	padding: 13% 0 10% 15%;
	-webkit-appearance: none;
	appearance: none;
	border: none;
	color: #000;
	outline: 0;
	background-color: transparent;
	background-image: none;
	box-shadow: none;
	position: relative;
	z-index: 2;
}
.contents-wrapper .cartWrap select::-ms-expand {
	display: none;
}

.contents-wrapper .buttonWrap {
	width: 75%; /* 404px */
	max-width: 404px;
}
.contents-wrapper .buttonWrap button {
	border: none;
	background: none;
	overflow: hidden;
	transition: 0.2s ease transform;
	position: relative;
}
.contents-wrapper .buttonWrap button:hover {
	transform: translateY(4px);
}
.contents-wrapper .buttonWrap button:before {
	position: absolute;
	content: "";
	display: inline-block;
	top: -180px;
	left: 0;
	width: 30px;
	height: 100%;
	background-color: #fff;
	pointer-events: none;
	animation: btnAnimation 2.5s ease-in-out infinite;
	z-index: 10;
}
.contents-wrapper .buttonWrap button img {
	cursor: pointer;
	opacity: 1;
	transition: 0.2s ease opacity;
}
.contents-wrapper .buttonWrap button img:hover {
	opacity: 0.8;
}



@keyframes btnAnimation {
	0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
	80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
	81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
	100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

/* sp */
@media screen and (max-width:736px) {
	.contents-wrapper .cartWrap .numWrap {
		padding-bottom: 5px;
	}
	.contents-wrapper .cartWrap .numWrap .num {
		font-size: 70%;
        padding-bottom: 5%;
	}
	.contents-wrapper .cartWrap .numWrap .selectBox {
		border-width: 2px;
	}
	.contents-wrapper .cartWrap .numWrap .selectBox:after {
		border-left-width: 4px;
		border-right-width: 4px;
		border-top-width: 5px;
	}
	.contents-wrapper .cartWrap select {
		font-size: 90%;
		padding: 8% 0 8% 13%;
	}
}

/* sp */
@media screen and (max-width:736px) {
	.contents-wrapper .cart_bg_img .cart_bg_img_item {
		left: 48%;
		width: 63%;
		top: 49%;
	}
	.contents-wrapper .cart_bg_img .cart_bg_img_item.teiki {
		left: 48%;
		width: 63%;
		top: 50%;
	}
	.cart_bg_img .cartWrap {
    width: 82%;
}
	.cart_bg01 .cartWrap {
	bottom: 46%; /* 385px */
}

.cart_bg02 .cartWrap {
	bottom: 32%;
}

}

