@charset "utf-8";

/* =====================================================================
 * main
 * =================================================================== */
h3 {
	margin-bottom: 30px;
	padding-bottom: 12px;
	width: 678px;
	border-bottom: 1px solid #bbbbbb;
}
#main h4 {
	margin-bottom: 10px;
}
#mainImage {
	padding-bottom: 33px;
	background: url(images/topimage_new.png) no-repeat;
	background-size: 100%;
}
.lead {
	height: 267px;
	background: url(images/subtxt_customer.svg) no-repeat center bottom;
	background-size: 100% auto;
	text-indent: 200%;
	white-space: nowrap;
	overflow: hidden;
}
.content {
	margin-bottom: 15px;
	padding: 20px;
	background-color: #ffffe3;
	border: solid 2px #d1c58f;
	border-radius: 5px;        /* CSS3草案 */  
	-webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 5px;   /* Firefox用 */
}
.circle {
	text-indent: 200%;
	white-space: nowrap;
	overflow: hidden;
}
.content h3 {
	margin-bottom: 10px;
	padding: 0;
	border: none;
}
h3#ttl_faq      { background: url(images/ttl_faq.png) no-repeat; }
h3#ttl_products { background: url(images/ttl_products.png) no-repeat; }
h3#ttl_mail     { background: url(images/ttl_mail.png) no-repeat; }
h3#ttl_safty    { background: url(images/ttl_safty.png) no-repeat; }
h3#ttl_site     { background: url(images/ttl_site.png) no-repeat; }
h3#ttl_privacy  { background: url(images/ttl_privacy.png) no-repeat; }

.short {
	padding-bottom: 20px;
	width: 288px;
}
#question dt {
	float: right;
	margin-top: -15px;
}
#question dd {
	width: 288px;
}
#question dd img {
	margin-top: 10px;
}
.boxL {
	float: left;
	width: 298px;
	padding-right: 15px;
	border-right: 1px solid #cccccc;
}
#products h3 {
	margin-bottom: 15px;
}
#products p, #products dl {
	float: left;
}
#products dl {
	overflow: hidden;
	width: 230px;
}
#products p {
	overflow: hidden;
	padding-right: 15px;
}
#products dt {
	margin-bottom: 3px;
}
.boxR {
	float: right;
	width: 302px;
}
#products p.endsale-btn {
	float: none;
	clear: both;
	padding-right: 0!important;
	text-align: center;
}
.endsale-btn a {
	display: block;
	margin-top: 20px; 
}
.sp-btn {
	display: none;
}
/* お問い合わせ */
#byTel {
	margin-bottom: 30px;
	background: url(../images/dotline.gif) repeat-x bottom;
}
#byTel p {
	float: left;
	margin: 0 30px 30px 0;
}
#byTel p img {
	margin-top: 3px;
}
p.attention {
	margin-top: 15px;
	padding: 15px;
	border: 1px solid #cccccc;
	background-color: #ffffff;
}
ul.attention {
	margin-bottom: 25px;
}
ul.attention li {
	margin: 0 0 10px 25px;
	list-style: decimal;
}
.required {
	color: #436bce;
}
.ssl {
	float: right;
	margin: 20px 0 0 40px;
}

/* よくあるご質問 */
h3#faq {
	margin-bottom: 30px;
	padding-bottom: 12px;
	width: 678px;
	border-bottom: 1px solid #bbbbbb;
}
h4#ttl_faqrecently {
	background: url(images/faq/faq_recently.png) no-repeat;
}
p.faq_illust {
	position: absolute;
	top: 24px;
	right: 50px;
}
#faq-recently {
	margin-bottom: 0;
}
#faq-recently h4 {
	margin-bottom: 10px;
	padding: 0;
}
#faq-recently li {
	margin-bottom: 4px;
	padding-left: 13px;
	background: url(images/arrow_blue.svg) no-repeat left center;
}
#faq-recently li a {
	color: #444444;
}
.faq {
	padding-top: 25px;
}
.faq h4 {
	margin-bottom: 8px;
	padding: 0 0 0 32px;
	width: 646px;
	background: url(images/faq/q.svg) no-repeat left 3px;
	border: none;
	line-height: 1.6;
	font-size: 116%;
	color: #2a79d1;
}
.faq p {
	padding: 18px 20px 18px 52px;
	border: solid 1px #cccccc;
	background: url(images/faq/a.svg) no-repeat 20px 20px;
}

/* =====================================================================
 * mediaqueries
 * =================================================================== */
@media screen and (max-width: 960px) {
	h3, h3#faq {
		margin-bottom: 4.4%;
		width: 100%;
	}
	#mainImage {
		padding-bottom: 4.8%;
	}
	.lead {
		padding-top: 40%;
		width: 100%;
		height: 0;
	}
	.content {
		margin-bottom: 2.2%;
		padding: 3%;
	}
	h3#ttl_faq, h3#ttl_products, h3#ttl_mail, h3#ttl_safty,
	h3#ttl_site, h3#ttl_privacy, h4#ttl_faqrecently {
		background: none;
	}
	.circle {
		margin-bottom: 10px;
		text-indent: inherit;
		white-space: inherit;
		font-size: 153.9%;
		font-weight: bold;
		text-align: left;
		line-height: 1.4;
		color: #45c1b4;
	}
	h3.circle {
		padding-left: 18px;
		text-indent: -18px;
	}
	.circle span {
		padding-left: 18px;
		text-indent: -18px;
		display: block;
		font-weight: bold;
	}
	.circle:before {
		content: "";
		display: inline-block;
		border-radius: 50%;
		-webkit-border-radius: 50%;
		-moz-border-radius: 50%;
		vertical-align: middle;
		margin-right: 5px;
		height: 8px;
		width: 8px;
		border: 3px solid #66c7bd;
		position: relative;
		top: -3px;	
	}
	.short {
		width: 48.9%;
	}
	#question dt {
		width: 50.4%;
	}
	#question dd {
		width: 45.4%;
	}
	#products .boxL p, #products .boxR p {
		width: 22%;
	}
	#products dl {
		width: 78%;
	}
	.boxL {
		width: 49.4%;
		padding-right: 3%;
	}
	.boxR {
		width: 47.6%;
	}
	/* よくあるご質問 */
	.faq h4 {
		width: 100%;
		text-align: left;
	}
}
@media screen and (max-width: 480px) {
	.lv15 {
		margin-bottom: 10px;
	}
	h3, h3#faq {
		margin-bottom: 20px;
		padding-top: 5px;
	}
	h3 img, h3#faq img {
		width: auto;
		height: 25px;
	}
	#mainImage {
		padding-bottom: 20px;
	}
	.lead {
		padding-top: 61%;
		background: url(images/subtxt_customer2.svg) no-repeat center bottom;
		background-size: 95% auto;
	}
	.content {
		margin-bottom: 15px;
		padding: 15px;
	}
	.content h3 {
		margin-bottom: 7px;
	}
	.circle {
		margin-bottom: 7px;
		font-size: 138.5%;
	}
	.circle span {
		display: inline-block;
	}
	.short {
		width: 100%;
	}
	.short p, .short dd {
		text-align: center;
	}
	#question dt {
		margin: 0 auto 10px;
		float: none;
		width: 70%;
	}
	#question dd {
		width: 100%;
	}
	#question dd a {
		display: block;
		margin: 0 auto;
		width: 288px;
		text-align: center;
	}
	.boxL, .boxR {
		float: none;
		width: 100%;
	}
	.boxL {
		margin-bottom: 15px;
		padding: 0 0 10px 0;
		border-right: none;
		border-bottom: 1px solid #cccccc;
	}
	section.fr, section.fl {
		float: none;
	}
	#site {
		margin-bottom: 15px!important;
	}
	#products p.endsale-btn a {
		margin: 15px auto 0;
		max-width: 288px;
		width: 100%;
	}
	.pc-btn {
		display: none;
	}
	.sp-btn {
		display: block;
	}
	/* よくあるご質問 */
	#faq-recently li {
		margin-bottom: 10px;
	}
	#faq-recently li:last-child {
		margin-bottom: 0;
	}
	.faq h4 {
		font-size: 108%;
	}
	.faq p {
		padding: 13px 15px 13px 47px;
		background-position: 15px 15px;
	}
}
@media screen and (max-width: 414px) {
	h3, h3#faq {
		margin-bottom: 15px;
		padding-bottom: 9px;
	}
	h3 img, h3#faq img {
		height: 24px;
	}
}
@media screen and (max-width: 375px) {
	.lead {
		padding-top: 63%;
		background-size: 100% auto;
	}
	.circle {
		font-size: 123.1%;
	}
	.content {
		padding: 14px 12px 12px;
	}
	#question dt {
		width: 85%;
	}
	#question dd a {
		width: 100%;
	}
	/* よくあるご質問 */
	.faq p {
		padding: 11px 13px 11px 40px;
		background-position: 10px 14px;
	}
}
@media screen and (max-width: 320px) {
	h3 img, h3#faq img {
		height: 21px;
	}
}