@charset "utf-8";

.mTit,.mTit2{
	margin: 10px 0;
	padding: .25em 0 .25em .75em;
	font-size: 24px;
	border-bottom: 1px solid #ccc;
	font-weight: normal;
	letter-spacing: 0.1em;
}
.mTit2{
	margin-top:-55px;
}
.sTit,.conts .sTit{
	margin: 15px auto ;
	padding:.25em 0 .25em .75em;
	font-size: 25px;
	font-weight: normal;
	letter-spacing: 0.1em;
	border-bottom: 1px solid var(--ReD);
	border-left: 6px solid var(--ReD);
}
.pTit{
	margin: auto;
	padding: 20px 0 0 0;
	font-size: 25px;
	font-weight: bold;
	border-bottom: 1px solid #ccc;
	width: 90%;
}
.msg{
	padding:10px 20px;
}
.msg0{
	padding:10px 20px 10px 0;
}
.w80p{width: 80%;
}

/*snavS*/
.snav{
	font-size:14px;
}
.snav ul{
	margin-bottom:20px;
	text-align:center;
}
.snav li{
	display:inline-block;
	border-right:1px solid #ccc;
	padding:5px 20px;
	font-weight:bold;
	color: var(--ReD);
}
.snav li:last-of-type{
	border:none;
}
.snav a{
	text-decoration:none;
	font-weight:normal;
	color:#333;
}
.snav a:hover{
	text-decoration:underline;
}
.fsnav{
	padding:20px 0;
}
/*enavE*/
/*pankuzuS*/
#pankuzu{
	display:block;
	height:36px;
}
#pankuzu li{
	display:inline;
	font-size:11px;
	line-height:34px;
	color:#333;
	padding:0 2px 0 16px;
	background-image: url(/images/common/pankuzu.jpg);
	background-repeat: no-repeat;
	background-position: 0px -2px;
}
#pankuzu li:first-of-type{
	background-image:none;
	padding:0 2px 0 0;
}
#pankuzu li a{
	color:#333;
	text-decoration:none;
}
/*pankuzuE*/

/*conteintS*/
#conteiner{
	margin: 0 auto;
	padding: 0;
	clear:both;
	width:960px;
}
#conteiner2{
	margin: 0 auto;
	padding: 0;
}
.cnBoxoff{
	margin:0 auto;
	width:800px;
}
.cnBoxon{
	width:740px;
	margin:0 auto 30px;
	padding:30px;
}
.cnBox9{
	padding-bottom:30px;
	width:900px;
	margin:0 auto;
}
/*conteintE*/

/*footerS*/
footer * {
	box-sizing: border-box;
}
footer{
	padding-top: 30px;
	font-family: var(--Fyg);
	font-size: 12px;
	background: #eee;
	clear: both
}
footer .flinks .fle {
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
}
footer dt {
	width: 100%;
	font-weight: bold;
	font-size: 1.3em;
	margin-bottom: 5px;
}
footer .flinks{
	width: 1000px;
	margin: auto;
}
footer .flinks dd {
	margin-left: 5px;
	padding-left: 10px;
	border-left: 1px solid #ccc;
}
footer .flinks li{
	padding: 5px 0;
	width: 100%;
}
.allItem .new,.allItem .renew,.allItem .limited{
	position: relative;
}
.allItem .new::before,.allItem .renew::before,.allItem .limited::before,.flinks .new a:before,.flinks .renew a:before{
	font-size: 10px;
	color: var(--ReD);
	border: 1px solid var(--ReD);
	padding: 0px 5px;
}
.allItem .new::before,.allItem .renew::before,.allItem .limited::before{
	position: absolute;
	left: 0;
}
.flinks .new a:before,.flinks .renew a:before{
	display: inline-block;
	margin-right: 5px;
}
.allItem .new::before,.flinks .new a:before{
	content: "NEW";
}
.allItem .renew::before,.flinks .renew a:before{
	content: "RENEW";
}
.allItem .limited::before{
	content: "数量限定";
	background: #fff;
}
footer .fitem dd, footer .othreLinks dl {
	width: calc((100% - 47px) / 3);
}
footer .othreLinks dl{
	margin-right: 5px;
}
footer .sideLinks li{
	width: auto;
	padding-right: 20px;
}
footer .sideLinks li:after{
	content: "／";
	padding-left: 20px;
}
footer .sideLinks li:last-of-type:after{
	content: none;
}
footer .infoBg{
	background: #ddd;
}
footer .info{
	width: 1000px;
	margin: 10px auto;
}
footer .fcont{
	padding: 20px 0 0;
}
footer #tel li{
	margin-right: 30px;
}
footer .fcont .mail{
	padding: 10px 20px;
	font-size: 15px;
}
footer .sns{
	width: calc((29px * 4) + (29px / 2 * 4));
}
footer .infosite{
	padding: 10px 0 0;
}
.totop {
	font-size: .8em;
}
.totop a {
	position: fixed;
	right: 0;
	bottom: 50px;
	width: 60px;
	height: 60px;
	color: #fff;
	text-align: center;
	line-height: 1.2;
	letter-spacing: 1px;
	background: #a7a7a7;
	opacity: .9;
}
.totop a:hover {
	text-decoration: none;
}
.totop span {
	display: flex;
	justify-content: center;
	padding-top: 27px;
}
.totop a:before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 10px;
	display: block;
	width: 10px;
	height: 10px;
	margin: auto;
	border-left: 2px solid #fff;
	border-top: 2px solid #fff;
	transform: rotate(45deg);
}
.flogo{
	margin: auto;
	padding: 30px 0;
	width: 1000px;
	text-align: center;
	letter-spacing: 0.5px;
}
.flogo img{
	padding-right: 5px;
}
footer .outpark{
	right: 0;
	bottom: 13px;
}


/*footerE*/

.aarw a:after,.aarw .acoA:after {
	right: 20px;
	width: 20px;
	height: 20px;
}
.aarw .acoA.active::after{
	top: 20px;
}

/*privacyS*/
.privaBox * {
	box-sizing: border-box;
}
.privaBox h3 {
	margin-top: 40px;
	font-weight: bold;
	font-size: 1.3em;
}
.privaBox a {
	color: #00f;
	text-decoration: underline;
}
.privaBox .Ti {
	text-indent: -2em;
	padding-left: 2em !important;
	padding-bottom: 5px;
}
.privaBox .Ti2 {
	text-indent: -2.7em;
	padding-left: 4em !important;
}
.privaBox .Ti3 {
	text-indent: -1.6em;
	padding-left: 3em !important;
}
.privaBox dt {
	margin-top: 5px;
	margin-bottom: 5px;
	padding: 7px 0 3px 10px;
	font-size: 1.1em;
	font-weight: bold;
	background: #efefef;
}
.privaBox .box {
	width: 600px;
	margin: 10px auto 15px;
	background: #f9f9f9;
	padding: 20px 50px;
	margin-top: 10px;
}
.privaBox .inquiry img{
	margin-right: 20px;
}
.privaBox .known dt{
	margin-top: 30px;
	margin-bottom: 10px;
}
.privaBox .known dd{
	margin-left: 43px;
}
.privaBox .known dd dt {
	margin-top: 10px;
	margin-bottom: 0;
	padding: 0;
	background: none;
}
.privaBox .known dd dd{
	margin-left: 25px;
}
.privaBox .known .Ti {
	padding-left: 1.4em !important;
	text-indent: -1.3em;
}
.privaBox dl.fle {
	flex-wrap: wrap;
	text-indent: 0;
}
.privaBox dl.fle dt {
	font-weight: normal;
	font-size: 1em;
	margin: 0;
}
.privaBox dl.fle dt.TfwB{
	font-weight: bold;
}
.privaBox dl.fle.storage {
	width: 462px;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
.privaBox dl.fle.url {
	width: 500px;
	margin: auto;
}
.privaBox dl.fle.pur {
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
.privaBox .fle dt,.privaBox .fle dd {
	display: flex;
	align-items: center;
	align-self: stretch;
	padding-top: 5px;
	background: #fff;
}
.privaBox .fle.storage dt,.privaBox .fle.storage dd {
	padding: 5px 20px 0;
	height: 46px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.privaBox .fle.url dt,.privaBox .fle.url dd {
	background: #f9f9f9;
	padding: 10px 0;
	height: 40px;
}
.privaBox .fle.pur dt,.privaBox .fle.pur dd {
	padding: 10px 20px 5px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.privaBox .fle.storage dt {
	width: 190px;
}
.privaBox .fle.storage dd {
	width: 271px;
}
.privaBox .fle.url dt {
	width: 120px;
}
.privaBox .fle.url dd {
	width: 365px;
}
.privaBox .fle.pur dt {
	width: 200px;
}
.privaBox .fle.pur dd {
	width: 620px;
	margin-left: 0;
}
.privaBox .known .Ti {
	text-indent: -1.2em;
	padding-left: 1em !important;
}

.ppbox dt{
	margin: 20px 0 5px;
	font-weight: bold;
	font-size: 15px;
}
.ppbox dd{
	margin-left: 1em;
}
.ppbox ul{
	margin-bottom: 5px;
}
.ppbox li{
	margin-left: 1em;
	padding-top: 0.5em;
}
.ppbox .cookie .box{
	background: #f1f1f1;
	padding: 10px 15px;
	margin: 10px 0;
}
.ppbox .cookie .box li:before {
	content: "・";
}
	.ppbox .cookie .box li {
	text-indent: -1em;
}
.ppbox .cookie .box a{
	color: #00f;
}
/*privacyE*/

/*pointstageS*/
.postGBox *{
	box-sizing: border-box;
}
.postGBox {
	margin: 50px auto;
	font-family: var(--Fyg);
}
.postGBox a:hover{
	color: #fff;
	text-decoration: none;
}
.postGBox section:nth-of-type(n+2){
	padding-bottom: 80px;
}
.postGBox h2 {
	position: relative;
	margin-bottom: 30px;
	font-size: 34px;
	text-align: center;
	font-family: var(--FtagM);
}
.postGBox h2:after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 70%;
	height: 7px;
	background: -webkit-repeating-linear-gradient(-45deg, #eee, #eee 2px, #fff 2px, #fff 4px);
	background: repeating-linear-gradient(-45deg, #eee, #eee 2px, #fff 2px, #fff 4px);
}
.postGBox h3{
	margin-top: 10px;
	padding: 3px 5px;
	margin-left: 46px;
	font-size: 27px;
	position: relative;
	display: inline-block;
	line-height: 1;
	border-bottom: 2px dashed rgba(249,131,47,1);
	/* background: linear-gradient(transparent 70%, var(--RYelloW) 50%); */
}
.postGBox h3:before,.postGBox h3:after {
	content: "";
	position: absolute;
	border: 2px solid rgba(249,131,47,.8);
}
.postGBox h3:before{
	font-size: 0.8em;
	top: 7px;
	left: -42px;
	transform: rotate(35deg);
	width: 15px;
	height: 15px;
}
.postGBox h3:after {
	background: rgba(249,131,47,.8);
	font-size: 0.6em;
	top: 18px;
	left: -24px;
	transform: rotate(0deg);
	width: 10px;
	height: 10px;
}
.postGBox .txt{
	margin: 10px 0 20px 50px;
	font-size: 18px;
}
.postGBox .fle {
	align-items: flex-start;
}
.postGBox img {
	display: block;
	margin: 15px auto 10px;
}
.postGBox p.note {
	width: 860px;
	font-size: .8em;
	text-align: right;
}
.postGBox dt {
	font-size: 18px;
	text-align: center;
	font-weight: bold;
}
.postGBox ul,.postGBox li{
	margin: 20px auto;
}
.postGBox .pointget li {
	width: 90%;
	padding: 0 30px;
}
.postGBox .pointget li {
	position: relative;
	height: 300px;
}
.postGBox .pointget li:after {
	border-radius: 50%;
	background: rgba(227,2,0,.05);
	position: absolute;
	width: 200px;
	height: 200px;
	content: "";
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	z-index: -1;
}
.postGBox .pointstep li,.postGBox .pointuse li {
	position: relative;
	font-size: 18px;
	text-align: center;
}
.postGBox .pointstep li {
	height: 180px;
}
.postGBox .pointuse li {
	margin: 40px 30px;
	padding: 5px;
	width: 400px;
}
.postGBox .pointstep li:before {
	content: "";
	position: absolute;
	top: 0;
	right: -80px;
	bottom: 0;
	margin: auto;
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-right: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid var(--ReD);
}
.pointstep li:last-of-type:before{
	content: none;
}
.postGBox .pointstep,.postGBox .pointuse{
	counter-reset: number 0;
}
.postGBox .pointuse ol{
	flex-wrap: wrap;
	justify-content: flex-start;
}
.pointuse p.pore,.pointstep p.pore{
	padding-left: 40px;
	text-align: left;
}
.postGBox .pointstep li p:before, .postGBox .pointuse li p:before {
  content: counter(number) "";
	position: absolute;
	top: -5px;
	left: 0;
	margin: auto;
	margin-right: 5px;
	padding: 0 11px;
	display: inline-block;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.5;
	background: rgba(227,2,0,.7);
	border-radius: 50%;
	counter-increment: number 1;
}
.postGBox .mylog {
	justify-content: space-between;
	align-items: center;
	background: #efefef;
	width: 630px;
	padding: 20px;
	margin: 40px auto 80px;
}
.postGBox .stage .fle{
	align-items: center;
	width: 800px;
	margin: auto;
}
.postGBox .stage h4.poab{
	left: 125px;
	top: 15px;
	color: var(--ReD);
	font-size: 25px;
	font-weight: bold;
	text-align: center;
	font-style: italic;
	border-bottom: 5px double var(--ReD);
}
.postGBox .stage .att li,.postGBox .pointsum .att li{
	position: relative;
	margin: 5px auto;
	padding-left: 16px;
}
.postGBox .stage .att li:before,.postGBox .pointsum .att li:before{
	content: "◆";
	position: absolute;
	left: 0;
	color: var(--ReD);
}
.postGBox .pointsum .fle {
	width: 810px;
	margin: auto;
}
.postGBox .qa a,.postGBox .qa a:hover{
	color: var(--BluE);
	text-decoration: underline;
}
.postGBox .qa dl{
	margin: auto;
	width: 820px;
}
.postGBox .qa dt, .postGBox .qa dd{
	position: relative;
	padding: 20px 0 6px 35px;
	font-weight: normal;
}
.postGBox .qa .cirarrD:after{
	color: #ccc;
}
.postGBox .qa dt:before, .postGBox .qa dd:before{
	position: absolute;
	top: 8px;
	left: 3px;
	font-size: 30px;
	color: var(--ReD);
	font-weight: normal;
}
.postGBox .qa dt:before{
	content: "Q";
}
.postGBox .qa dd:before{
	content: "A";
}
.postGBox .qa dt{
	text-align: left;
	border-bottom: 1px solid #ccc;
}
.postGBox .qa dd{
	margin-bottom: 20px;
	padding-top: 16px;
}
.postGBox .qa p{
	padding-bottom: 10px;
	font-weight: normal;
}
.postGBox .qa .BtN {
	margin: 20px 24px 0 auto;
	width: 310px;
}
/*pointstageE*/


/*faqS*/
.faq {
	width: 700px;
	margin: auto;
	margin-bottom: 100px;
}
.faq h3 {
	font-size: 25px;
	text-align: center;
	font-weight: bold;
	letter-spacing: 1px;
	margin-top: 15px;
	margin-bottom: 5px;
	position: relative;
}
.faq h3::before,.faq h3::after{
	content: "ー";
	padding: 0 5px; 
	color: var(--ReD);
	font-weight: normal;
}
.faq li {
	padding: 25px 0 15px 10px;
	border-bottom: 1px dashed #ccc;
}
.faq li a {
	width: 100%;
	display: inline-block;
	font-size: 16px;
	letter-spacing: 1px;
  color: #333;
  text-decoration: none;
}
.faq li a::before {
	content: "◇";
	color: var(--ReD);
	padding-right: 5px;
	font-weight: bold;
}

.notfound{
	padding: 100px 0;
	main{
		font-size: 1.2rem;
	}
	h2 {
		font-size: 2rem;
		font-weight: bold;
		margin-bottom: 4rem;
		text-align: center;
	}
	h2 span {
		display: inline-block;
		border-bottom: 3px double var(--ReD);
		padding: 0 1rem; 
	}
	p.lead{
		margin: 20px auto;
		font-size: 18px;
		text-align: center;
	}
	ul{
		width: fit-content;
		margin: 50px auto;
		padding: 0;
		text-align: left;
	}
	li{
		margin: 0 0 20px;
		padding: 0;
	}
	a{
		color:var(--BluE);
		text-decoration: underline;
	}
	a::after {
		content: '＞';
		display: inline-block;
		margin-left: .4em;
		color: #888;
		transition: transform .15s ease;
	}
	a:hover::after {
		transform: translateX(2px);
	}
}
.notfound::after{
	content: "";
	position: absolute;
	right: 10px;
	bottom: 10px;
	width: 400px;
	height: 400px;
	background: url(/images/common/logo/vitabrid_red.svg) no-repeat right bottom;
	background-size: contain;
	opacity: .1;
	pointer-events: none;
}

