@charset "utf-8";

/*===============================================

 *	common

===============================================*/
/*-----------------------------------------------

 *	全体

-----------------------------------------------*/
html {
	font-size: 62.5%;
	overflow-y: scroll;
}

html body{
	background: #fff;
	color: #333;
	font-size: 1.6rem;
	line-height: 1.8;
}

@media screen and ( min-width:750px ){
	html body{
		font-size: 2.0rem;
	}
}


.minchou {
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}


h1 ,h2 ,h3 ,h4 ,h5{
	line-height: 1.2;
}

p em,
p strong{
	font-weight:bold;
}

a:link {
	color: #0d52a4;
}

a:visited {
	color: #0d52a4;
}

a:hover {
	color: #006ced;
}

.base-wrap img{
	height: auto;
	max-width: 100%;
}

h2 img{
	height: auto;
	max-width: 100%;
}

a img{
	-webkit-transition: opacity .3s;
	transition: opacity .3s;
}



/*-----------------------------------------------

 *	LP main

-----------------------------------------------*/

.lpArea{
	max-width: 750px;
	margin: 0 auto;
}

.firstCartTitle{
	margin: 0 0 30px;
	padding-top: 50px;
}

.KaiyakuBtn{
	text-align: center;
}

.KaiyakuBtn a{
	background-color: #6a6567;
	color: #fff;
	display: inline-block;
	font-weight: bold;
	padding: 10px 40px;
	text-align: center;
}

.KaiyakuBtn a:hover{
	background-color: #827d7f;
}

.ctaWrapButton{
	margin: 20px 0 40px;
	text-align: center;
}

.ctaButton{
	margin-top: 30px;
	margin-bottom: 20px;
}

.lpCtaWrap{
	margin-bottom: 2vw;
	padding: 0 5vw;
}

@media screen and ( max-width:500px ){
	.lpCtaWrap{
		margin-bottom: 8vw;
	}
	.ctaButton{
		margin-top: 8vw;
		margin-bottom: 5vw;
	}
}


/*-----------------------------------------------

 *	.lpMenu

-----------------------------------------------*/
.lpMenu{
	max-width: 750px;
	margin: 0 auto;
}

.lpMenu h2{
	margin-bottom: 40px;
	padding-top: 60px;
	text-align: center;
}

.lpMenuList{
}

.lpMenuList li{
	border-bottom: 1px solid #6a6567;
	margin-bottom: 40px;
	padding-bottom: 40px;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
}

.lpMenuList li div{
	flex: 1;
}

.lpMenuList li img:first-child{
	float: left;
}

@media screen and ( max-width:750px ){
	.lpMenu{
		padding: 0 5vw;
	}
	.lpMenu h2 img{
		height: auto;
		max-width: 50vw;
	}
	.lpMenuList li p{
		width: 39%;
	}
}

/*===============================================

 *	.resultPageWrap

===============================================*/
.resultPage{
	background-color: #fbfaf4;
}

.resultPageWrap{
	max-width: 800px;
	margin: 0 auto;
	padding-top: 40px;
}

.resultTitle{
	margin-bottom: 20px;
	text-align: center;
}

.resultTitle h1 img{
	margin: 0 auto;
}

.resultItemContainer{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 60px;
	padding: 0 0;
	justify-content: space-between;
}

.resultItemContainer::after{
	content: "";
	display: block;
	width: 32%;
}

.resultItemBox{
	background: url(../upload/img_lp/result_img_foryou.png) top 10px right 10px no-repeat;
	background-color: #fff;
	background-size: 70px;
	border: 1px solid #b5436d;
	margin-bottom: 30px;
	padding: 50px 20px 40px;
	text-align: center;
	width: 32%;
}

.resultItemPhoto{
	margin-bottom: 30px;
	position: relative;
}

.resultItemPhoto img{
	height: auto;
	max-width: 300px;
	width: 100%;
}

.resultItemNumber{
	background-color: #eee;
	mix-blend-mode: multiply;
	font-size: 2.0rem;
	position: absolute;
	bottom: 0;
	left: 50%;
    margin-left: 50px;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	line-height: 50px;
	text-align:center;
}

.resultItemName{
	font-size: 2.0rem;
	line-height: 1.4;
}

.resultItemTxt{
	color: #b5436d;
	font-size: 1.6rem;
	line-height: 1.4;
	margin-bottom: 14px;
}

.resultComment{
	margin-top: 40px;
	margin-bottom: 40px;
	padding: 0 5vw;
}

.resultCommentCatch{
	font-size: 2.2rem;
	font-weight: bold;
	margin-bottom: 20px;
	text-align: center;
}

.resultCommentTxt{
	margin-bottom: 20px;
}

@media screen and ( max-width:600px ){
	.resultItemContainer{
		display: block;
		padding: 0 5vw;
	}
	.resultItemBox{
		background-size: 22%;
		padding: 40px 20px;
		width: 100%;
	}
	.resultItemNumber{
		font-size: 2.2rem;
		left: 50%;
		margin-left: 52px;
		width: 60px;
		height: 60px;
		line-height: 60px;
	}
	.resultItemPhoto{
		margin-bottom: 20px;
	}
	.resultItemPhoto img{
		max-width: 70%;
	}
	.resultItemName{
		font-size: 2.4rem;
	}
	.resultCommentCatch{
		font-size: 1.8rem;
	}

}


/*		ボタン
----------------------------------------*/

.resultBtnOrder{	
	margin-bottom: 60px;
}

.resultBtnOrder a{
	background-color: #df6e54;
	border-radius: 6px;
	color: #fff;
	display: block;
	font-size: 2.4rem;
	max-width: 340px;
	margin: 0 auto;
	padding: 10px;
	text-align: center;
}

.resultBtnOrder span{
	position: relative;
	padding-right: 1.4em;
}

.resultBtnOrder span:before,
.resultBtnOrder span:after{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}

.resultBtnOrder span:before{
	width: 22px;
	height: 22px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #fff;
}

.resultBtnOrder span:after{
	right: 8px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #df6e54;
	border-right: 2px solid #df6e54;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.resultBtnBack{
	margin-bottom: 60px;
	text-align: center;
}

.resultBtnBack a{
	color: #333;
	font-size: 2.4rem;
	text-decoration: underline;
}

/*===============================================

 *	cart

===============================================*/

.cartTxtWrap{
	background-color: #fff;
	margin: 0 auto;
	max-width: 750px;
	padding: 40px 5vw 0;
}

/*-----------------------------------------------

 *	定期購入の解約について

-----------------------------------------------*/
.kaiyakunituite{
	margin-bottom: 60px;
}

.kaiyakunituite h2{
	text-align: center;
}

.kaiyakunituite h2 span{
	background-color: #6a6567;
	color: #fff;
	font-size: 3.0rem;
	display: inline-block;
	margin-bottom: 20px;
	padding: 14px 40px;
}

.kaiyakunituite h3{
	font-size: 2.6rem;
	margin-bottom: 40px;
	padding: 0 5vw;
	text-align: center;
}

.kaiyakunituite ul li{
	text-indent: -1em;
	padding-left: 1em;
	margin-bottom: 1.5em;
}

@media screen and ( max-width:750px ){
	.kaiyakunituite h2 span{
		font-size: 2.6rem;
		padding: 12px 30px;
	}
	.kaiyakunituite h3{
		font-size: 2.2rem;
	}
}
@media screen and ( max-width:500px ){
	.kaiyakunituite h2 span{
		font-size: 2.2rem;
		padding: 12px 24px;
	}
	.kaiyakunituite h3{
		font-size: 2.0rem;
	}
}

/*-----------------------------------------------

 *	解約方法

-----------------------------------------------*/

.kaiyakuhouhou{
	margin-bottom: 60px;
}

.kaiyakuhouhou h2{
	font-size: 3.0rem;
	margin-bottom: 30px;
	text-align: center;
}

.kaiyakuhouhou h2 span{
	border-bottom: 1px solid #343434;
}

.kaiyakuhouhou .imageBox{
	margin-bottom: 30px;
	 text-align: center;
}

.kaiyakuhouhou .imageBox img{
	height: auto;
	max-width: 100%;
}

.kaiyakuTxt{
}

.kaiyakuTxt h3{
	color: #b5436d;
	font-weight: bold;
	margin-bottom: 20px;
}

.kaiyakuTxt h4{
	font-weight: bold;
	margin-bottom: 20px;
}

/*-----------------------------------------------

 *	cartItem

-----------------------------------------------*/
.cartItemWrap{
	background-color: #eaeaea;
	padding: 0 5vw 50px;
}

.cartTitle{
	margin-bottom: 30px;
	text-align: center;
}

.campaignTitle{
	transform: translate(0 , -20px);
}

/*-----------------------------------------------

 *	itemWrap

-----------------------------------------------*/
.itemWrap{
	background-color: #fff;
	border: 6px solid #5f595b;
	outline: 5px solid #fff;
	outline-offset: -5px;
	margin: 0 auto 50px;
	max-width: 740px;
	padding: 30px;
}

.itemWrap:last-child{
	margin-bottom: 0;
}

.itemImages{
	text-align: center;
}

.itemCaution{
	border-radius: 6px;
	border: 1px solid #ccc;
	height: 160px;
	margin-top: 10px;
	padding: 20px;
	overflow-y: scroll;
}

.itemCautionTxt{
	margin-top: 40px;
	text-align: center;
}

.itemCaution li{
	font-size: 1.8rem;
	line-height: 1.2;
	margin-bottom: 0.4em;
}

@media screen and ( max-width:751px ){
	.itemCaution{
		margin-top: 20px;
	}
	.itemCaution li{
		font-size: 1.6rem;
	}
}

/*-----------------------------------------------

 *	cartFaqWrap

-----------------------------------------------*/
.cartFaqWrap{
	margin: 0 auto;
	max-width: 750px;
	padding: 50px 0;
}

.faqTitle{
	margin-bottom: 50px;
	text-align: center;
}

.faqTitle span{
	display: block;
	font-size: 2.8rem;
	padding-top: 14px;
}

.faqBox{
	border-top: 1px solid #6a6567;
}

.faqList{
	border-bottom: 1px solid #6a6567;
	padding: 30px 20px;
	position: relative;
}


.faqList dt{
	cursor: pointer;
}

.faqList dd{
	display: none;
}

/*	acordion
------------------------------------------*/

.faqBox .faqList .acd-check{
    display: none;
}
.acd-label{
	display: block;
	margin-bottom: 1px;
	position: relative;
}

.acd-label:before , .acd-label:after{
	position: absolute;
	top: 50%;
	right: 20px;
	content: "";
	display: inline-block;
	width: 2px;
	height: 40px;
	background-color: #b5436d;
	margin-top: -20px;
}

.acd-label:after {
	transform: rotate(90deg);
}


.acd-content{
	display: block;
	height: 0;
	opacity: 0;
	transition: .5s;
	visibility: hidden;
}

.acd-check:checked + .acd-label:before{
	display: none;
}

.acd-check:checked + .acd-label + .acd-content{
/*	height: 50px;*/
	opacity: 1;
	height: auto;
	padding-top: 20px;
	visibility: visible;
}



@media screen and ( max-width:751px ){
	.cartFaqWrap{
		padding-left: 5vw;
		padding-right: 5vw;
	}
	.faqList{
		padding: 30px 0;
	}
	.acd-label{
		padding-right: 50px;
	}
	.acd-label:before , .acd-label:after{
		height: 30px;
		right: 20px;
		margin-top: -15px;
	}
	.faqTitle img{
		max-width: 40vw;
	}
}


/*-----------------------------------------------

 *	footNav

-----------------------------------------------*/
.footNav{
	background-color: #191919;
	padding: 4vw 5vw
}

.footNav ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.footNav li{
	line-height: 1.2;
	margin-right: 1em;
	padding-right: 1em;
	position: relative;
}

.footNav li:after{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	background-color: #fff;
	height: 100%;
	width: 1px;
}

.footNav li:last-child:after{
	display: none;
}

.footNav a{
	color: #fff;
}

@media screen and ( max-width:500px ){
	.footNav{
		padding-top: 1.5em;
		padding-bottom: 1.5em;
	}
	.footNav ul{
		display: block;
	}
	.footNav li{
		margin-right: 0;
		margin-bottom: 1em;
	}
	.footNav li:after{
		display: none;
	}
	.footNav li:last-child{
		margin-bottom: 0;
	}
}


/*-----------------------------------------------

 *	footer

-----------------------------------------------*/
.footEnd{
}

.lpFoot{
	padding: 0 0 132px;
}

.copyright{
	padding: 2vw 5vw;
	text-align: center;
}


@media screen and ( max-width:500px ){
	.footEnd{
		padding-bottom: 110px;
	}
	.copyright{
		padding: 4vw 0 0;
	}
}





/*===============================================

 *	商品詳細ページ

===============================================*/

#shohinContainer{
	max-width: 750px;
	margin: 0 auto;
}

.shohinHead{
	margin-bottom: 40px;
	text-align: center;
}

.shohinPhoto{
	background: url(../upload/img_lp/shouhin_bg.gif) center center repeat;
	margin-bottom: 60px;
	padding: 50px 20%;
}

.shohinWrap{
}

.shohinWrap dl{
	border-bottom: 1px solid #6a6567;
	margin-bottom: 40px;
	padding-bottom: 40px;
}

.shohinWrap dl:last-child{
	border-bottom: none;
	margin-bottom: 0;
}


.shohinWrap dt{
	color: #b5436d;
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 10px;
}

.shohinWrap dd{
	font-size: 2.0rem;
}

.btnBackTop{
	margin-bottom: 50px;
	text-align: center;
}

.btnBackTop a{
	color: #343434;
	text-decoration: underline;
}

@media screen and ( max-width:750px ){
	.shohinWrap{
		padding: 0 5vw;
	}
}


/*		テーブル
----------------------------------------*/

.allergyTable{
	font-size: 1.8rem;
	width: 100%;
}

.allergyTable th,
.allergyTable td{
	border: 1px solid #e8e6dd;
	line-height: 1.4;
	padding: 8px 14px;
	text-align: center;
}

.allergyTable th{
	background-color: #fbfaf4;
	color: #b5436d;
	font-weight: bold;
}

.allergyTable td{
	color: #aaa9a5;
}

.allergyTable .allergyYes{
	background-color: #59574d;
	color: #fff;
}

/*===============================================

 *	templates用

===============================================*/
#wrapper #container{
	padding: 0;
	width: auto;
}


/*-----------------------------------------------

 *	株固定ボタン

-----------------------------------------------*/

.overlayBlock{
	display: none;
	visibility: visible;
	opacity: 1;
	z-index: 100;
}
.overlayBlock {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	margin: auto;
	overflow: hidden;
	background-color: rgba(0,0,0,.24);

}

.overlayBlockInner{
	max-width: 750px;
	margin: 0 auto;
	text-align: center;
	padding: 16px;
}


/*-----------------------------------------------

 *	CTAボタンのエフェクト

-----------------------------------------------*/

.zoomImage{
	animation: poyoyon3 2s infinite;
	opacity: 1;
}

@keyframes poyoyon3 {
  0%, 40% {
    transform: skew(0deg, 0deg);
  }
  5% {
    transform: skew(3deg, 3deg);
  }
  10% {
    transform: skew(-2deg, -2deg);
  }
  15% {
    transform: skew(1deg, 1deg);
  }
  20% {
    transform: skew(-1deg, -1deg);
  }
  25% {
    transform: skew(0.5deg, 0.5deg);
  }
  30% {
    transform: skew(-0.3deg, -0.3deg);
  }
  35% {
    transform: skew(0.15deg, 0.15deg);
  }
}

/*-----------------------------------------------

 *	追記　2022/10/16

-----------------------------------------------*/

.kounyuBtn{
	text-align: center;
}

.kounyuBtn:not(:last-child){
	margin-bottom: 20px;
}

.kounyuBtn a{
	background-color: #df6e54;
	color: #fff;
	display: inline-block;
	font-weight: bold;
	padding: 10px 0;
	text-align: center;
	width: 100%;
	max-width: 440px;
}

.kounyuBtn a:hover{
	opacity: 0.85;
}

.buyBtn{
	text-align: center;
}

.buyBtn:not(:last-child){
	margin-bottom: 20px;
}

.buyBtn a{
	background-color: #df6e54;
	border-radius: 8px;
	color: #fff;
	display: inline-block;
	font-size: 140%;
	font-weight: bold;
	padding: 8px 60px;
	text-align: center;
}

.buyBtn a:hover{
	opacity: 0.85;
}

/*-----------------------------------------------

 *	追記　2022/11/01

-----------------------------------------------*/
.payAttention{
	color: #df6e54;
	line-height: 1.4;
}

@media screen and ( max-width:750px ){
	.payAttention{
		font-size: 1.4rem;
	}
}

.payAttentBox{
	margin-top: 10px;
}

/**/