@charset "utf-8";


#contents .product{
	position: relative;
	margin: 0 auto 150px;
}
#contents .product.v2{
	margin: 100px auto 60px;
}
#contents .product .images{
	position: absolute;
	top: 0;
	left: 0;
	width: 550px;
	line-height: 0;
}
#contents .product .images img{
	max-width: 100%;
	height: auto;
}
#contents .product .images p.main{
	line-height: 0;
	margin: 0 auto 50px;
}
#contents .product .images .thumbs{
	width: 100%;
	height: 100px;
	overflow: hidden;
	line-height: 0;
	position: relative;
}
#contents .product .images .thumbs a{
	position: absolute;
	top: 0px;
	width: 30px;
	height: 100px;
	background: rgba(255,255,255,0.9);
	cursor: pointer;
	box-shadow: 0 0 2px #666;
}
#contents .product .images .thumbs a.prev{
	left: 0;
	transform: rotate(180deg);
	display: none;
}
#contents .product .images .thumbs a.next{
	right: 0;
}
#contents .product .images .thumbs.on_scroll a.prev{
	display: block;
}
#contents .product .images .thumbs.last_scroll a.next{
	display: none;
}
#contents .product .images .thumbs a::after{
	position: absolute;
	top: 50%;
	left: 9px;
	display: block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg);
}
#contents .product .images ul{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
	transition: 0.3s ease-in-out;
}
#contents .product .images ul>li{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 112.5px;
	padding: 0 12.5px 0 0;
	cursor: pointer;
	background: #fff;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#contents .product .images ul>li img{
	background: #f9f9f9;
}

#contents .product .info{
	width: 600px;
	margin: 0 0 0 auto;
	text-align: left;
	color: #333;
}
#contents .product .info p.icn{
	margin: 0 auto 10px;
}
#contents .product .info p.icn > span{
	display: inline-block;
	background: #fffcfb;
	padding: 5px 10px;
	line-height: 1.2;
	font-size: 1.45rem;
	border: 1px solid #e58970;
	vertical-align: middle;
}
#contents .product .info p.icn > span a{
	color: #cd380f;
	text-decoration: underline;
}
#contents .product .info p.caution{
    font-size: 1.2rem;
	color: #cd380f;
    margin: -15px 0 10px;
}


#contents .product .info h1,
#contents .product .info h2{
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 140%;
	margin: 0 auto 20px;
}
#contents .product .info h2 small{
	font-size: 1.8rem;
	color: #666;
}
#contents .product .info ul.cat{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 1.0;
	margin: 0 auto 10px;
}
#contents .product .info ul.cat>li{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	font-size: 1.3rem;
	text-align: center;
	background: #f2f2f2;
	border-radius: 15px;
	line-height: 100%;
	color: #5b6e71;
	padding: 6px 12px 8px;
	margin: 0 10px 0 0;
	min-width: 90px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#contents .product .info ul.cat>li:last-child{
	margin-right: 0;
}
#contents .product .info p.description{
	font-size: 1.5rem;
	line-height: 160%;
	color: #666;
	margin: 0 auto 20px;
}
#contents .product .info p.rate{
    display: none !important;
	font-size: 1.6rem;
	line-height: 120%;
	font-weight: bold;
	margin: 0 auto 10px;
}
#contents .product .info p.rate span{
	display: inline-block;
	line-height: 0;
	margin: 0 25px 0 15px;
	vertical-align: top;
	cursor: pointer;
}
#contents .product .info p.rate small{
	font-size: 1.2rem;
	line-height: 120%;
	font-weight: normal;
	cursor: pointer;
}
#contents .product .info p.teiki-link{
	text-align: right;
	font-size: 1.5rem;
	margin: 0 auto 10px;
}
#contents .product .info p.teiki-link>a{
	display: inline-block;
	color: #669999;
	text-decoration: underline;
	line-height: 14px;
	padding: 0 0 0 20px;
	background: url('../img/icn/hatena.svg') 0 0 no-repeat;
	background-size: 14px auto;
}

#contents .product .info #SCcard{
    margin: 0 0 20px;
}
#contents .product .info #SCcard b {
    font-size: 1.6rem;
}
#contents .product .info #SCcard b.red {
    color:#cd380f;
}
#contents .product .info #SCcard a {
    display: block;
    background: #eaf4fd;
    padding: 10px 20px;
    color: #336699;
}
#contents .product .info #SCcard a span {
    display: block;
}
#contents .product .info #SCcard a span.break {
    display: none;
}
#contents .product .info #SCcard a span.underline{
    display: inline;
    text-decoration: underline;
}
#contents .product .info #SCcard a span.underline:after{
    display: inline-block;
    content: "";
    background:url('/img/icn/_blank2.svg') no-repeat 0 0;
    width: 10px;
    height: 10px;
    margin-left: 5px;
    opacity: 0.8;
}
#contents #CPP {
    float: right;
    clear: right;
    background: #ffe465;
    color: #333;
    font-size: 1.3rem;
    line-height: 100%;
    text-align: right;
    margin-top: -7px;
    margin-bottom: 10px;
}
#contents .select[data=teiki] #CPP {
    margin-top: -27px;
    margin-bottom: 30px;
}

#contents .product .info #SCP{
	clear: right;
    background: #e5f3f3;
    padding: 0 50px 15px;
    margin: -25px 0 20px;
}
#contents .product .info #SCP a {
    display: block;
    background: #ffde3b;
    padding: 8px 0 8px 20px;
	text-align: center;
	color: #333;
    font-size: 1.4rem;
    font-weight: bold;
    transition: all 0.35s ease;
}
#contents .product .info #SCP a:hover {
    opacity: 0.85;
    text-decoration: none;
}
#contents .product .info #SCP a:after {
    display: inline-block;
    content: "詳しくはこちら";
    font-size: 1.1rem;
    background: #005bac;
    color: #FFF;
    font-weight: bold;
    margin: 0 0 0 20px;
    line-height: 2.2;
    padding: 0 15px 0 12px;
    clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 10px, 100% calc(100% - 12px), calc(100% - 10px) 100%, 0 100%);
}

#contents .product .info #SCcard2{
    margin: 0 0 20px;
	clear: right;
}
#contents .product .info #SCcard2 b {
    font-size: 1.6rem;
}
#contents .product .info #SCcard2 b:nth-of-type(2) {
    margin-right: 3px;
}
#contents .product .info #SCcard2 b.red {
    color:#cd380f;
	font-size: 2rem;
    margin-right: 3px;
}
#contents .product .info #SCcard2 a {
    display: block;
    background: #e5f3f3;
    padding: 10px 0;
	text-align: center;
	color: #333;
}
#contents .product .info #SCcard2 span {
    display: block;
    margin-top: -5px;
    font-size: 1.4rem;
}
#contents .product .info #SCcard2 span.break {
    display: none;
}
#contents .product .info #SCcard2 span.underline{
    display: inline;
    text-decoration: underline;
}

#contents .product .info #SCcard2 a:hover{
    text-decoration: underline;
}

#contents .product .info #SCcard2 img{
    vertical-align: middle;
    margin-right: 10px;
	width: 50px;
}

#contents .product .info #SCcard a:hover{
    text-decoration: underline;
}
#contents .product .info .select-area{
	margin: 0 auto 5px;
}
#contents .product .info .select-area .select{
	font-size: 1.8rem;
	line-height: 120%;
	padding: 15px 55px;
	font-weight: bold;
	position: relative;
	background: url('../img/icn/product-select.svg') 20px 35px no-repeat;
	background-size: 22px auto;
	cursor: pointer;
	clear: right;
	border: 1px solid #669999;
	border-radius: 10px;
	margin-bottom: 20px;
}
#contents .product .info .select-area .select:after {
	content: "";
	clear: right;
	display: block;
	visibility: hidden;
}
#contents .product .info .select-area .select.none{
	display: none;
}
#contents .product .info .select-area .select.active{
	background:  #f0f7f7 url('../img/icn/product-select_on.svg') 20px 35px no-repeat;
	background-size: 22px auto;
    border-width: 2px;
}
#contents .product .info .select-area .select span.k{
	padding: 0 10px 0 0;
}
#contents .product .info .select-area .select span.size{
	font-size: 1.4rem;
	margin-left: -10px;
	padding: 0 5px 0 0;
}
#contents .product .info .select-area .select span.p{
	font-size: 2.2rem;
	padding: 0 1px 0 0;
}
#contents .product .info .select-area .select small{
	font-size: 1.1rem;
}
#contents .product .info .select-area .select small:before{
	content: "(";
	display: inline-block;
}
#contents .product .info .select-area .select small:after{
	content: ")";
	display: inline-block;
}


#contents .product .info .select-area .select i{
	display: block;
	text-align: center;
	font-size: 1.35rem;
	font-weight: normal;
	color: #fff;
	line-height: 100%;
	padding: 5px 10px;
	background: #669999;
	font-style: normal;
	margin: 5px 0 0;
    border-radius: 30px;
}
#contents .product .info .select-area .select span.left{
	margin-top: 20px;
	display: inline-block;
}
#contents .product .info .select-area .select[data="teiki"] span.left{
	margin-top: 10px;
}

#contents .product .info .select-area .select span.right{
	float: right;
    margin-top: 5px;
}
/*
#contents .product .info .select-area .select[data="normal"] span.right{
	padding-right: 60px;
}
*/
#contents .product .info .select-area .select span.get_point{
	float: right;
	clear: right;
	color: #cd380f;
	font-size: 1.3rem;
	line-height: 100%;
	text-align: right;
    margin-top: -7px;
}
#contents .product .info .select-area .select[data=teiki] span.get_point{
	margin-top:-27px;
}
#contents .product .info .select-area .select span.get_point span{
    display: inline-block;
    padding: 4px 0 0;
	font-size: 1.2rem;
	color: #333;
	font-weight: normal;
}
#contents .product .info .select-area .select span.get_point span:first-of-type{
    padding: 0;
	font-size: 1.8rem;
	color: #cd380f;
	font-weight: bold;
}
#contents .product .info .form{
	display: block;
}
#contents .product .info .form p.cart-btn{
	display: block;
	line-height: 0;
	margin: 0 auto 25px;
}
#contents .product .info .form p.cart-btn+p.cart-btn{
	display: none;
}
#contents .product .info .form p.cart-btn button,
#contents .product .info .form p.cart-btn a{
	display: block;
	width: 100%;
	background: #669999;
	font-size: 1.8rem;
	line-height: 70px;
	border: none;
	border-radius: 10px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	position: relative;
	cursor: pointer;
	transition: 0.3s ease-in-out;
	outline: none;
	padding: 0;
}
#contents .product .info .form p.cart-btn button::focus{
	outline: none;
}
#contents .product .info .form p.cart-btn button img,
#contents .product .info .form p.cart-btn a img{
	position: absolute;
	top: 21px;
	right: 120px;
	width: auto;
	height: 25px;
}
#contents .product .info .form p.cart-btn button:focus{
	outline: none;
}
#contents .product .info .form p.cart-btn button:hover,
#contents .product .info .form p.cart-btn a:hover{
	text-decoration: none;
	opacity: 0.7;
}
#contents .product .info .form ul.list{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
}
#contents .product .info .form ul.list>li{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 140px;
	margin: 0;
}
#contents .product .info .form ul.list>li:nth-of-type(n+2){
	margin-left: 13px;
}
#contents .product .info .form ul.list>li>label{
	display: block;
	border: 1px solid #BBB;
	border-radius: 5px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 20px 10px 15px;
	cursor: pointer;
}
#contents .product .info .form ul.list>li>label.active{
	border: 2px solid #9eccc3;
	padding: 19px 10px 14px;
	background: #f0f7f7;
}
#contents .product .info .form ul.list>li>label input{
	display: none;
}
#contents .product .info .form ul.list>li>label span{
	display: inline-block;
	font-size: 1.6rem;
	line-height: 120%;
}
#contents .product .info .form ul.list>li>label span.small{
	display: inline-block;
	font-size: 1.2rem;
}
#contents .product .info .form ul.list>li>label span.kakaku{
	display: block;
	font-size: 1.3rem;
	font-weight: bold;
	margin: 5px 0 0;
}

#contents .product .info .form ul.list>li>label span.k{
	display: block;
	margin: 0 auto 5px;
}
#contents .product .info .form ul.list>li>label span.p{
	margin: 0 auto 3px;
}
#contents .product .info .form ul.list>li>label span.p i{
	font-style: normal;
}
#contents .product .info .form ul.list>li>label small{
	font-size: 1.1rem;
	line-height: 120%;
}
#contents .product .info .form ul.list>li>label strong{
	font-size: 1.9rem;
	padding-right: 2px;
}

#contents .product .info .form ul.list.suna{
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
#contents .product .info .form ul.list.suna li{
	width: 191px;
	margin-bottom: 13px;
}
#contents .product .info .form ul.list.suna li:nth-of-type(4){
	margin-left: 0;
}

#contents .product .info .detail{
	margin: 20px auto 0px;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}
#contents .product .info .detail p.tit{
	font-size: 1.5rem;
	line-height: 120%;
	padding: 35px 20px 35px;
	position: relative;
	cursor: pointer;
	font-weight: bold;
}
#contents .product .info .detail p.tit::before{
	content: '';
	width: 10px;
	height: 1px;
	background: #303030;
	position: absolute;
	top: 43px;
	right: 20px;
	transform: rotate(90deg);
	transition: 0.3s ease-in-out;
}
#contents .product .info .detail.active p.tit::before{
	transform: rotate(180deg);
}
#contents .product .info .detail p.tit::after{
	content: '';
	width: 10px;
	height: 1px;
	background: #303030;
	position: absolute;
	top: 43px;
	right: 20px;
}
#contents .product .info .detail .in{
	display: none;
	position: relative;
	padding: 40px 20px 10px;
	border-top: 2px dotted #e3e5e5;
}
#contents .product .info .detail .in p.img{
	line-height: 0;
	position: absolute;
	top: 20px;
	right: 0;
	border-radius: 100%;
	overflow: hidden;
}
#contents .product .info .detail .in p{
	font-size: 1.4rem;
	line-height: 160%;
	margin: 0 auto 30px 0;
}
#contents .product .info .detail .in p.t{
	font-weight: bold;
	color: #3a7775;
	margin: 0 auto 10px 0;
}
#contents .product .info .detail .in p.t2{
	font-size: 1.8rem;
	font-weight: bold;
	margin: 0 auto 10px 0;
}
#contents .product .info .detail .in p.tx{
	margin: 0 auto 5px 0;
}
#contents .product .info .detail .in p.v2{
	max-width: 400px;
}
#contents .product .info p.tx{
	margin: 15px auto 0;
	font-size: 1.6rem;
	line-height: 220%;
	text-align: left;
}

#contents .delivery-day{
	display: none;
	position: fixed;
	top: 93px;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 99;
	overflow: auto;
}
body.v2 #contents .delivery-day{
	top: 138px;
}
#contents .delivery-day>span{
	background: rgba(102, 102, 102, 0.6);
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	text-indent: -9999px;
}
#contents .delivery-day>.in{
	display: block;
	width: 900px;
	position: absolute;
	top: 60px;
	left: 50%;
	margin-left: -500px;
	padding: 60px 175px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #fff;
	z-index: 9;
}
#contents .delivery-day>.in h3{
	font-size: 2rem;
	font-weight: bold;
	line-height: 160%;
	text-align: center;
	margin: 0 auto 30px;
}
#contents .delivery-day .body{
	display: block;
	line-height: 0;
	background: #f2f2f2;
	padding: 35px 50px;
}
#contents .delivery-day .body ul{
	display: block;
}
#contents .delivery-day .body ul>li{
	display: block;
	margin: 0 auto 40px;
}
#contents .delivery-day .body ul>li span{
	display: block;
	text-align: left;
	font-size: 1.8rem;
	line-height: 120%;
	position: relative;
}
#contents .delivery-day .body ul>li span.t{
	margin: 0 auto 20px;
	padding: 1px 20px 2px;
	font-weight: bold;
}
#contents .delivery-day .body ul>li span.t::before{
	content: '';
	width: 8px;
	height: 26px;
	background: #333;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 3px;
}
#contents .delivery-day .body ul>li span.form{
	margin: 0 auto 15px;
}
#contents .delivery-day .body ul>li span.form input,
#contents .delivery-day .body ul>li span.form select,
#contents .delivery-day .body ul>li span.form .box{
	display: block;
	width: 100%;
	border: 1px solid #ccc;
	border-radius: 6px;
	padding: 20px 30px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
	position: relative;
	font-weight: bold;
	background: #fff;
}
#contents .delivery-day .body ul>li span.form.select::after{
	position: absolute;
	top: 50%;
	right: 30px;
	display: block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	pointer-events: none;
}
#contents .delivery-day .body ul>li span.deliver{
	padding: 20px 30px;
	border: 1px solid #ccc;
	border-radius: 6px;
	background: #fff;
	margin: 0 auto 15px;
}
#contents .delivery-day .body ul>li span.deliver label{
	float: left;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 160%;
	margin-top: 13px;
	padding: 0 0 0 35px;
	background: url('../img/icn/check.svg') 0 0 no-repeat;
	background-size: 26px auto;
	position: relative;
	z-index: 2;
	cursor: pointer;
}
#contents .delivery-day .body ul>li span.deliver label.check{
	background: url('../img/icn/checked2.svg') 0 0 no-repeat;
	background-size: 26px auto;
}
#contents .delivery-day .body ul>li span.deliver label input{
	display: none;
}
#contents .delivery-day .body ul>li span.deliver span.days{
	text-align: right;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 160%;
	position: relative;
	z-index: 1;
}
#contents .delivery-day .body ul>li span.deliver span.days select{
	display: inline-block;
	width: 90px;
	border: 1px solid #ccc;
	border-radius: 6px;
	padding: 15px 20px;
	line-height: 120%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
	position: relative;
	font-weight: bold;
	margin: 0 10px 0 0;
	background: #fff;
}
#contents .delivery-day .body ul>li span.deliver span.second,
#contents .delivery-day .body ul>li span.deliver span.last{
	display: block;
	line-height: 160%;
	font-weight: bold;
}
#contents .delivery-day .body ul>li span.deliver i{
	font-style: normal;
}
#contents .delivery-day .body p.submit{
	line-height: 0;
	margin: 0 auto;
	text-align: right;
}
#contents .delivery-day .body p.submit button{
	display: inline-block;
	background: #333;
	font-size: 1.8rem;
	line-height: 100%;
	border: none;
	border-radius: 10px;
	padding: 23px 20px 21px 40px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	position: relative;
	cursor: pointer;
	transition: 0.3s ease-in-out;
}
#contents .delivery-day .body p.submit button::before{
	position: absolute;
	top: 50%;
	left: 22px;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	margin-top: -2px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
}
#contents .delivery-day .body p.submit button:focus{
	outline: none;
}
#contents .delivery-day .body p.submit button:hover{
	text-decoration: none;
	opacity: 0.7;
}

#contents .comparison{
	margin: 0 auto 160px;
}
#contents .comparison h3{
	font-size: 1.8rem;
	color: #333;
	line-height: 160%;
	text-align: left;
	margin: 0 auto 20px;
}
#contents .comparison table{
	max-width: 100%;
}
#contents .comparison table td{
	padding: 20px 30px;
	text-align: center;
	vertical-align: middle;
	position: relative;
}
#contents .comparison table tr:first-child>td{
	padding-top: 40px;
	padding-bottom: 0px;
	border-bottom: none;
}
#contents .comparison table td strong{
	font-size: 1.8rem;
}
#contents .comparison table td span{
	padding: 0 10px 0 0;
}
#contents .comparison table td small{
	font-size: 1.3rem;
}
#contents .comparison table td small.muryo{
	display: inline-block;
	background:#fffcfb;
	border: 1px solid #cd380f;
	margin: 5px 0 0;
	padding: 3px 5px;
	line-height: 1.2;
	font-size: 1.35rem;
	color: #cd380f;
}
#contents .comparison table.v-1 tr.select-area>td:nth-child(2),
#contents .comparison table.v-2 tr.select-area>td:nth-child(3),
#contents .comparison table.v-3 tr.select-area>td:nth-child(4),
#contents .comparison table.v-4 tr.select-area>td:nth-child(5),
#contents .comparison table.v-5 tr.select-area>td:nth-child(6){
	background: #f9f9f9;
}
#contents .comparison table.v-1 tr.select-area:first-child>td:nth-child(2)::after,
#contents .comparison table.v-2 tr.select-area:first-child>td:nth-child(3)::after,
#contents .comparison table.v-3 tr.select-area:first-child>td:nth-child(4)::after,
#contents .comparison table.v-4 tr.select-area:first-child>td:nth-child(5)::after,
#contents .comparison table.v-5 tr.select-area:first-child>td:nth-child(6)::after{
	content: '選択中の商品';
	font-size: 1.4rem;
	line-height: 100%;
	padding: 2px 10px 4px;
	background: #999;
	color: #fff;
	font-weight: bold;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -3.8em;
}
#contents .comparison table td a.link{
	display: block;
	line-height: 100%;
	color: #fff;
	background: #7e989b;
	padding: 8px 15px 10px;
	border-radius: 10px;
	transition: 0.3s ease-in-out;
}
#contents .comparison table td a.link:hover{
	text-decoration: none;
	background: #7e989b;
}



#contents .tab{
	display: block;
	letter-spacing: -0.4em;
	text-align: center;
	line-height: 0;
}
#contents .tab a{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 396px;
	font-size: 1.6rem;
	line-height: 70px;
	text-align: center;
	color: #333;
	font-weight: bold;
	border: 1px solid #ccc;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 6px 0 0;
	cursor: pointer;
	transition: 0.3s ease-in-out;
}
#contents .tab a:last-child{
	margin-right: 0;
}
#contents .tab a.active,
#contents .tab a:hover{
	background: #333;
	color: #fff;
	text-decoration: none;
}
#contents .tab-area{
	display: none;
	padding: 60px 0;
}
#contents .tab-area[data="product"]{
	padding: 0;
}
#contents .tab-area .product-info{
	padding: 60px 0;
	background: #f9f9f9;
}
#contents .tab-area h3{
	font-size: 2.5rem;
	text-align: left;
	line-height: 160%;
	color: #333;
	font-weight: bold;
	padding: 0 30px;
	margin: 0 auto 30px;
}
#contents .tab-area[data="product"] h3{
	text-align: center;
}
#contents .tab-area h3 small{
	display: inline-block;
	vertical-align: top;
	padding: 0 0 0 20px;
	font-size: 1.45rem;
	font-weight: normal;
	margin-top: 2px;
}
#contents .tab-area h3 span{
	display: inline-block;
	vertical-align: top;
	padding: 0 15px 0 35px;
}
#contents .tab-area h3 img{
	display: inline-block;
	vertical-align: top;
	margin-top: 2px;
}
#contents .tab-area ul.col{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
	margin: 0 auto 20px;
}
#contents .tab-area ul.col>li{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 360px;
	margin: 0 60px 0 0;
	position: relative;
}
#contents .tab-area ul.col>li:last-child{
	margin-right: 0;
}
#contents .tab-area ul.col>li span{
	display: block;
	color: #303030;
}
#contents .tab-area ul.col>li span.img{
	margin: 0 auto 40px;
}
#contents .tab-area ul.col>li span.hikaku{
	font-size: 1.4rem;
	line-height: 160%;
	position: absolute;
	top: 375px;
	right: 0;
}
#contents .tab-area ul.col>li span.hikaku > a{
	display: inline-block;
	background: #7e989b;
	padding: 3px 12px 3px 20px;
	color: #FFF;
	border-radius: 30px;
	cursor: pointer;
    vertical-align: text-bottom;
	position: relative;
}
#contents .tab-area ul.col>li span.hikaku > a:hover{
	text-decoration: none;
	color: #a8cdd1;
}
#contents .tab-area ul.col>li span.hikaku > a::before{
	position: absolute;
	top: 12px;
	left: 8px;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
	transform: rotate(45deg);
}
#contents .tab-area ul.col>li span.tit{
	font-size: 1.8rem;
	line-height: 160%;
	font-weight: bold;
	margin: 0 auto 20px;
}
#contents .tab-area ul.col>li span.tit strong{
	color: #3a7775;
    font-weight: 600;
}
#contents .tab-area ul.col>li span.tit2{
	font-size: 1.65rem;
	line-height: 180%;
	font-weight: bold;
	margin: 0 auto 10px;
	color: #3a7775;
}
#contents .tab-area ul.col>li span.tx{
	font-size: 1.5rem;
	line-height: 180%;
	margin: 0 auto;
}
#contents .tab-area ul.col>li span.tx strong{
	color: #3a7775;
}
#contents .tab-area ul.col>li span.tx span{
	display: inline;
	color: #3a7775;
}
#contents .tab-area ul.col>li span.tx+span.bt{
	padding-top: 20px;
}
#contents .bt{
	display: block;
	text-align: left;
	line-height: 0;
	margin: 0 auto;
}
#contents .bt>a{
	display: inline-block;
	font-size: 1.6rem;
	line-height: 100%;
	color: #5b888d;
	font-weight: bold;
	background: #fff;
	border: 2px solid #7e989b;
	padding: 16px 30px 18px 50px;
	border-radius: 30px;
	transition: 0.3s ease-in-out;
	position: relative;
}
#contents .bt>a:hover{
	background: #7e989b;
	color: #fff;
	text-decoration: none;
}
#contents .bt>a:hover>span{
	color: #fff !important;
}
#contents .bt>a::after{
	position: absolute;
	top: 50%;
	left: 30px;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	margin-top: -2px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg);
	transition: 0.3s ease-in-out;
}
#contents .bt>a:hover::after{
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
#contents .tab-area ul.col>li span.links{
	padding: 20px 0 0;
	font-size: 1.4rem;
	line-height: 160%;
}
#contents .tab-area ul.col>li span.links>a{
	padding: 0 0 0 15px;
	color: #333;
	cursor: pointer;
	position: relative;
}
#contents .tab-area ul.col>li span.links>a::before{
	position: absolute;
	top: 11px;
	left: 0px;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	margin-top: -2px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg);
}

#contents .tab-area p.table_name{
	padding: 0 30px;
	margin: 0 auto 10px;
}
#contents .tab-area .hikaku-area{
	display: none;
	text-align: center;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(48, 48, 48, 0.8);
	z-index: 999;
}
#contents .tab-area .hikaku-area .inner{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
}
#contents .tab-area .hikaku-area .in{
	display: inline-block;
	margin: 0 auto;
	position: relative;
}
#contents .tab-area .hikaku-area .in>span.close{
	position: absolute;
	top: -30px;
	right: -40px;
	width: 52px;
	height: 52px;
	background: #fff;
	border-radius: 100%;
	cursor: pointer;
	transition: 0.3s ease-in-out;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.8);
}
#contents .tab-area .hikaku-area .in>span.close::before{
	content: '';
	position: absolute;
	top: 25px;
	right: 15px;
	width: 20px;
	height: 2px;
	background: #333;
	transform: rotate(-45deg);
	transition: 0.3s ease-in-out;
}
#contents .tab-area .hikaku-area .in>span.close::after{
	content: '';
	position: absolute;
	top: 25px;
	right: 15px;
	width: 20px;
	height: 2px;
	background: #333;
	transform: rotate(45deg);
	transition: 0.3s ease-in-out;
}
#contents .tab-area .hikaku-area .in>span.close:hover{
	background: #333;
}
#contents .tab-area .hikaku-area .in>span.close:hover::before,
#contents .tab-area .hikaku-area .in>span.close:hover::after{
	background: #fff;
}
#contents .tab-area .hikaku-area .in p{
	font-size: 1.4rem;
	line-height: 200%;
	color: #fff;
	text-align: center;
}
#contents .tab-area .hikaku-area .in p.img{
	line-height: 0;
	margin: 0 auto 20px;
}
#contents .tab-area p.table-name{
	padding: 0 30px;
	margin: 0 auto 10px;
}
#contents .tab-area table+p.table-name{
	margin-top: 40px;
}
#contents .tab-area table{
	max-width: 100%;
	width: auto !important;
	border: none;
}
#contents .tab-area table tr{
}
#contents .tab-area table tr + tr{
	border-top: none;
}
#contents .tab-area table th,
#contents .tab-area table td{
	width: 200px;
	padding: 15px;
	font-size: 1.6rem;
	font-weight: normal;
	line-height: 140%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	vertical-align: middle;
	border: none;
}
#contents .tab-area table th{
	background: #f9f9f9;
	border: 1px solid #CCC;
    border-right: none;
}
#contents .tab-area table td{
	background: #fff;
	border: 1px solid #CCC;
    border-left: none;
}
/*
#contents .tab-area table th.v2,
#contents .tab-area table td.v2{
	padding-top: 5px;
	padding-bottom: 0;
}*/
#contents .tab-area .sort{
	display: block;
	letter-spacing: -0.4em;
	text-align: right;
	line-height: 0;
	margin: -90px auto 20px;
}
#contents .tab-area .sort a{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	font-size: 1.4rem;
	color: #666;
	line-height: 40px;
	padding: 0 20px;
	margin: 0 0 0 10px;
	background: #ededed;
	position: relative;
	cursor: pointer;
}
#contents .tab-area .sort a:hover{
	background: #333;
	color: #fff;
	text-decoration: none;
}
#contents .tab-area .sort a.active{
	background: #333;
	color: #fff;
	padding-left: 35px;
}
#contents .tab-area .sort a.active::after{
	position: absolute;
	top: 50%;
	left: 20px;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	margin-top: -2px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(135deg);
}
#contents .tab-area ul.review{
	display: block;
	margin: 0 auto;
	border-top: 2px solid #ccc;
}
#contents .tab-area .review-more{
	display: none;
}
#contents .tab-area .review-more ul.review{
	border-top: none;
}
#contents .tab-area ul.review>li{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
	padding: 50px 40px;
	border-bottom: 2px solid #ccc;
	background: #fff;
}
#contents .tab-area ul.review>li p.img{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 150px;
	margin: 0 30px 0 0;
	line-height: 0;
	background: #f9f9f9;
}
#contents .tab-area ul.review>li .text{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 940px;
	position: relative;
}
#contents .tab-area ul.review>li .text h4{
	font-size: 1.5rem;
	line-height: 160%;
	margin: 0 auto 20px;
	color: #333;
}
#contents .tab-area ul.review>li .text p.date{
	font-size: 1.4rem;
	line-height: 160%;
	text-align: right;
	margin: 0 auto;
	color: #333;
	position: absolute;
	top: 0;
	right: 0;
}
#contents .tab-area ul.review>li .text p.rate{
	font-size: 1.4rem;
	line-height: 160%;
	margin: 0 auto 10px;
	color: #333;
}
#contents .tab-area ul.review>li .text p.rate img{
	display: inline-block;
	vertical-align: top;
}
#contents .tab-area ul.review>li .text p.rate span{
	display: inline-block;
	vertical-align: top;
	margin: -1px 10px 0 30px;
}
#contents .tab-area ul.review>li .text p.rate span.nickname {
	display: none;
}
#contents .tab-area ul.review>li .text p.tx{
	font-size: 1.4rem;
	line-height: 220%;
	margin: 0 auto 0 0;
	color: #666;
	max-width: 780px;
}
#contents .tab-area ul.review>li .text .more{
	display: none;
	margin: 20px auto 10px;
}
#contents .tab-area ul.review>li .text .more p.tx{
	margin: 0 auto 20px 0;
}
#contents .tab-area ul.review>li .text .more p.tx:last-child{
	margin-bottom: 0;
}
#contents .tab-area ul.review>li .text p.toggle{
	max-width: 780px;
	text-align: right;
}
#contents .tab-area ul.review>li .text p.toggle a{
	display: inline-block;
	font-size: 1.4rem;
	line-height: 140%;
	color: #666;
	padding: 0 0 0 15px;
	position: relative;
	cursor: pointer;
	transition: 0.3s ease-in-out;
}
#contents .tab-area ul.review>li .text p.toggle a:hover{
	text-decoration: none;
	opacity: 0.7;
}
#contents .tab-area ul.review>li .text p.toggle a:last-child{
	display: none;
}
#contents .tab-area ul.review>li .text p.toggle.active a:first-child{
	display: none;
}
#contents .tab-area ul.review>li .text p.toggle.active a:last-child{
	display: inline-block;
}
#contents .tab-area ul.review>li .text p.toggle a::before{
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	margin-top: -4px;
	border-top: 1px solid #666;
	border-right: 1px solid #666;
	transform: rotate(135deg);
}
#contents .tab-area ul.review>li .text p.toggle a:last-child::before{
	margin-top: -2px;
	transform: rotate(-45deg);
}
#contents .tab-area p.cap{
	font-size: 1.5rem;
	line-height: 140%;
	text-align: left;
	color: #666;
	margin: 15px auto 0;
}
#contents .tab-area p.more-review{
	margin: 0 20px 20px auto;
	text-align: right;
	line-height: 0;
}
#contents .tab-area p.more-review>a{
	position: relative;
	display: inline-block;
	margin: 0;
	padding: 0 25px 0 0;
	font-size: 1.4rem;
	line-height: 160%;
	color: #666;
	cursor: pointer;
	transition: 0.3s ease-in-out;
}
#contents .tab-area p.more-review>a:hover{
	text-decoration: none;
	opacity: 0.7;
}
#contents .tab-area p.more-review>a::before{
	content: '';
	width: 10px;
	height: 1px;
	background: #303030;
	position: absolute;
	top: 11px;
	right: 0px;
	transform: rotate(90deg);
	transition: 0.3s ease-in-out;
}
#contents .tab-area p.more-review>a::after{
	content: '';
	width: 10px;
	height: 1px;
	background: #303030;
	position: absolute;
	top: 11px;
	right: 0px;
}
#contents .tab-area p.more-review>a.active::before{
	transform: rotate(180deg);
}
#contents .tab-area p.more-review>a i{
	font-style: normal;
}
#contents .tab-area p.more-review>a:not(.active) i{
	display: none;
}
#contents .tab-area p.more-review>a.active span{
	display: none;
}
#contents .tab-area p.review-wright{
	margin: 0 20px 0 auto;
	text-align: right;
	line-height: 0;
}
#contents .tab-area p.review-wright>a{
	display: inline-block;
	font-size: 1.4rem;
	line-height: 100%;
	border-radius: 10px;
	background: #666;
	color: #fff;
	font-weight: bold;
	padding: 17px 60px 19px;
	transition: 0.3s ease-in-out;
	position: relative;
}
#contents .tab-area p.review-wright>a:hover{
	text-decoration: none;
	opacity: 0.7;
}
#contents .tab-area p.review-wright>a::before{
	content: '';
	width: 29px;
	height: 29px;
	background: url('../img/icn/review-wright.svg') 0 0 no-repeat;
	position: absolute;
	top: 10px;
	left: 26px;
}
#contents .tab-area .pagenavi{
	margin: 20px auto 0;
}
#contents .tab-area .link{
	display: none;
	text-align: center;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(48, 48, 48, 0.8);
	z-index: 999;
}
#contents .tab-area .link .inner{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
}
#contents .tab-area .link .in{
	display: inline-block;
	margin: 0 auto;
	position: relative;
}
#contents .tab-area .link .in>span.close{
	position: absolute;
	top: -30px;
	right: -40px;
	width: 52px;
	height: 52px;
	background: #fff;
	border-radius: 100%;
	cursor: pointer;
	transition: 0.3s ease-in-out;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.8);
}
#contents .tab-area .link .in>span.close::before{
	content: '';
	position: absolute;
	top: 25px;
	right: 15px;
	width: 20px;
	height: 2px;
	background: #333;
	transform: rotate(-45deg);
	transition: 0.3s ease-in-out;
}
#contents .tab-area .link .in>span.close::after{
	content: '';
	position: absolute;
	top: 25px;
	right: 15px;
	width: 20px;
	height: 2px;
	background: #333;
	transform: rotate(45deg);
	transition: 0.3s ease-in-out;
}
#contents .tab-area .link .in>span.close:hover{
	background: #333;
}
#contents .tab-area .link .in>span.close:hover::before,
#contents .tab-area .link .in>span.close:hover::after{
	background: #fff;
}
#contents .tab-area .link .in p{
	font-size: 1.4rem;
	line-height: 200%;
	color: #fff;
	text-align: center;
}
#contents .tab-area .link .in p.img{
	line-height: 0;
	margin: 0 auto 20px;
}

#column{
	padding: 90px 0 80px;
	line-height: 0;
	margin: 0 auto;
	overflow: hidden;
	background: #fff;
}
#column h3{
	font-size: 1.8rem;
	line-height: 160%;
	color: #303030;
	text-align: center;
	margin: 0 auto 60px;
}
#column ul{
	display: block;
}
#column ul>li{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
	margin: 0 auto 60px;
	background: #e2eded;
}
#column ul>li:last-child{
	margin-bottom: 0;
}
#column ul>li>span{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: middle;
}
#column ul>li span.img{
	width: 550px;
	margin: 0;
}
#column ul>li span.img img{
	width: 100%;
	height: auto;
}
#column ul>li span.text{
	width: 650px;
	padding: 0 20px 0 60px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#column ul>li span.text span{
	display: block;
}
#column ul>li span.text span.title{
	font-size: 3rem;
	line-height: 140%;
	color: #fff;
	margin: 0 auto 25px;
	font-weight: bold;
	font-family: 'Roboto', sans-serif;
}
#column ul>li span.text span.tit{
	font-size: 2rem;
	line-height: 140%;
	color: #303030;
	margin: 0 auto 20px;
	font-weight: bold;
}
#column ul>li span.text span.tx{
	font-size: 1.6rem;
	line-height: 200%;
	color: #303030;
}
#column ul>li span.text span.tx strong{
	color: #3a7775;
}

#recommend{
	padding: 80px 0 30px;
	line-height: 0;
	margin: 0 auto;
	overflow: hidden;
	background: #f9f9f9;
}
#recommend h3{
	font-size: 1.8rem;
	line-height: 160%;
	color: #303030;
	text-align: center;
	margin: 0 auto 50px;
}
#recommend ul{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
	margin: 0 auto 20px;
}
#recommend ul>li{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 360px;
	margin: 0 60px 0 0;
}
#recommend ul>li:nth-child(3n){
	margin-right: 0;
}
#recommend ul>li span{
	display: block;
}
#recommend ul>li span.img{
	margin: 0 auto 30px;
	border-radius: 20px;
	overflow: hidden;
}
#recommend ul>li span.tit{
	font-size: 1.6rem;
	color: #303030;
	line-height: 140%;
	font-weight: bold;
	margin: 0 auto 15px;
}
#recommend ul>li span.tit2{
	font-size: 1.7rem;
	line-height: 220%;
	font-weight: bold;
	margin: 0 auto 10px;
	color: #3a7775;
}
#recommend ul>li span.tx{
	font-size: 1.5rem;
	line-height: 180%;
	margin: 0 auto;
}
#recommend ul>li span.tx strong{
	color: #3a7775;
}
#recommend ul>li span.tx small{
	font-size: 1.2rem;
	color: #666;
}
#recommend ul>li span.tx+span.tit2{
	margin-top: 20px;
}
#recommend ul>li span.bt{
	margin-top: 20px;
}
#recommend ul>li span.links{
	font-size: 1.4rem;
	line-height: 200%;
	margin: 0 auto;
	padding: 15px 0 0;
}
#recommend ul>li span.links a{
	display: inline-block;
	background:#7e989b;
	padding: 3px 20px 3px 25px;
	color: #FFF;
	border-radius: 30px;
	cursor: pointer;
	vertical-align: text-bottom;
	position: relative;
}
#recommend ul>li span.links a::before{
	position: absolute;
	top: 50%;
	left: 10px;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	margin-top: -2px;
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
	transform: rotate(45deg);
}


#column2{
	padding: 120px 0;
	line-height: 0;
	margin: 0 auto;
	overflow: hidden;
	background: #fff;
}
#column2 ul{
	display: block;
}
#column2 ul>li{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
	margin: 0 auto 55px;
}
#column2 ul>li:last-child{
	margin-bottom: 0;
}
#column2 ul>li>span{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
}
#column2 ul>li span.img{
	width: 360px;
	margin: 0 60px 0 0;
}
#column2 ul>li span.img img{
	width: 100%;
	height: auto;
}
#column2 ul>li span.text{
	width: 780px;
	padding: 5px 0 0;
}
#column2 ul>li span.text span{
	display: block;
}
#column2 ul>li span.text span.tit{
	font-size: 1.6rem;
	line-height: 140%;
	color: #303030;
	margin: 0 auto 15px;
	font-weight: bold;
}
#column2 ul>li span.text span.tx{
	font-size: 1.4rem;
	line-height: 220%;
	color: #303030;
}

#column3{
	padding: 80px 0 0;
	line-height: 0;
	margin: 0 auto;
	overflow: hidden;
	background: #fff;
}
#column3 ul{
	display: block;
}
#column3 ul>li{
	display: block;
	text-align: left;
	line-height: 0;
	margin: 0 auto 55px;
	position: relative;
	padding: 55px;
	border: 2px dotted #cacaca;
	min-height: 350px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#column3 ul>li:last-child{
	margin-bottom: 0;
}
#column3 ul>li .text{
	max-width: 670px;
	margin: 0 auto 0 0;
}
#contents #column3 ul>li h3{
	font-size: 1.8rem;
	font-weight: bold;
	color: #cacaca;
	line-height: 160%;
	margin: 0 auto 20px;
	text-align: left;
	padding: 0;
}
#contents #column3 ul>li p{
	font-size: 1.6rem;
	line-height: 200%;
	color: #303030;
}
#contents #column3 ul>li p.t{
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 160%;
	margin: 0 auto 20px;
}
#contents #column3 ul>li p.img{
	position: absolute;
	top: 55px;
	right: 55px;
	line-height: 0;
}

#contents .list-circle {
	margin: 30px 0 60px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
#contents .list-circle p {
	width: 33.33%;
	font-weight: bold;
	font-size: 1.8rem;
	color: #666;
    text-indent: -25px;
    padding-left: 20px;
    margin: 0 -50px 20px 5px;

}
#contents .list-circle p:before {
	display: inline-block;
	content: "";
	background: url(/img/icn/checked.svg) no-repeat 0 0;
	width: 18px;
	height: 18px;
	margin-right: 10px;
}
#contents .list-circle p span{
	font-size:2.2rem;
	color: #577d6d;
	padding: 0 3px;
    border-bottom: 4px double #a5bfb7;
}

#visuals,
.visuals{
	line-height: 0;
	padding: 50px 0;
	overflow: hidden;
	background: #e2eded;
}
.visuals{
	background: #cee0e0;
}
#visuals .flexslider,
.visuals .flexslider{
	margin: 0 auto;
	border: 0;
	box-shadow: none;
	border-radius: 0;
	height: 740px;
	background: none;
}
#visuals.v2{
	background: #333;
}
#visuals .flexslider .slides,
.visuals .flexslider .slides span.img{
	border-radius: 20px;
	overflow: hidden;
}
.visuals .flexslider .slides span.img{
	display: block;
	line-height: 0;
}
#visuals .flexslider .flex-control-nav,
.visuals .flexslider .flex-control-nav{
	text-align: left;
	padding: 0 20px;
	z-index: 9;
}
#visuals .flexslider .flex-control-nav.flex-control-paging li a,
.visuals .flexslider .flex-control-nav.flex-control-paging li a{
	background: #E2DDD6;
	box-shadow: none;
}
#visuals .flexslider .flex-control-nav.flex-control-paging li a.flex-active,
.visuals .flexslider .flex-control-nav.flex-control-paging li a.flex-active{
	background: #C7BDAF;
}
#visuals .box,
.visuals .box{
	text-align: right;
	line-height: 0;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
#visuals .box>.boxin,
.visuals .box>.boxin{
	width: 700px;
	margin: -80px -50px 0 auto;
	background: rgba(255, 255, 255, 0.95);
	padding: 45px 40px 55px;
	text-align: left;
	line-height: 0;
	display: inline-block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 15px;
}
#contents #visuals .box h3,
#contents .visuals .box .box h3{
	line-height: 160%;
	margin: 0 auto 30px;
	padding: 0;
	text-align: left;
}
#visuals .box p,
.visuals .box p{
	font-size: 1.6rem;
	line-height: 200% !important;
	margin: 0 auto 20px;
	padding: 0;
}

#visuals .box p b,
.visuals .box p b{
	font-size: 1.6rem;
}
#visuals .box p strong,
.visuals .box p strong{
	font-size: 1.8rem;
}
#visuals .box p:last-child,
.visuals .box p:last-child{
	margin-bottom: 0;
}

#recommend-product{
	padding: 100px 0 140px;
	line-height: 0;
	margin: 0 auto;
	overflow: hidden;
	background: #fff;
}
#recommend-product h3{
	font-size: 2.5rem;
	line-height: 160%;
	color: #303030;
	text-align: center;
	margin: 0 auto 30px;
}
#recommend-product .swiper-wrapper{
	margin: 0 auto 70px;
}
#recommend-product .swiper-slide{
	width: 285px;
	margin: 0;
}
#recommend-product .swiper-slide>a{
	display: block;
	line-height: 0;
}
#recommend-product .swiper-slide>a:hover{
	text-decoration: none;
}
#recommend-product .swiper-slide span{
	display: block;
	text-align: left;
}
#recommend-product .swiper-slide span.img{
	margin: 0 auto 20px;
	overflow: hidden;
}
#recommend-product .swiper-slide span.img img{
	width: 100%;
	height: auto;
	transition: 0.3s ease-in-out;
}
#recommend-product .swiper-slide a:hover span.img img{
	transform: scale(1.1);
}
#recommend-product .swiper-slide span.t{
	color: #333;
	font-size: 1.5rem;
	line-height: 140%;
	margin: 0 auto 10px;
	transition: 0.3s ease-in-out;
}
#recommend-product .swiper-slide a:hover span.t{
	color: #666;
}
#recommend-product .swiper-slide span.p{
	color: #333;
	font-size: 1.5rem;
	line-height: 140%;
	margin: 0 auto;
	transition: 0.3s ease-in-out;
}
#recommend-product .swiper-slide span.p small{
	font-size: 1.2rem;
	padding: 0 0 0 10px;
}
#recommend-product .swiper-slide a:hover span.p{
	color: #666;
}
#recommend-product .swiper-btn{
	display: block;
	max-width: 975px;
	margin: 0 auto;
	line-height: 0;
	position: relative;
}
#recommend-product .swiper-btn .swiper-button-prev,
#recommend-product .swiper-btn .swiper-button-next{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 59px;
	height: 59px;
	background: #fff;
	border: 1px solid #ccc;
	position: absolute;
	top: -300px;
	margin: 0;
	transition: 0.3s ease-in-out;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 100%;
}
#recommend-product .swiper-btn .swiper-button-prev{
	left: 0;
}
#recommend-product .swiper-btn .swiper-button-next{
	right: 0;
}
#recommend-product .swiper-btn .swiper-button-prev::after,
#recommend-product .swiper-btn .swiper-button-next::after{
	position: absolute;
	top: 50%;
	display: block;
	content: '';
	width: 12px;
	height: 12px;
	margin-top: -6px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
}
#recommend-product .swiper-btn .swiper-button-prev::after{
	left: 25px;
	transform: rotate(-135deg);
}
#recommend-product .swiper-btn .swiper-button-next::after{
	right: 25px;
	transform: rotate(45deg);
}
#recommend-product .swiper-btn .swiper-button-prev:hover,
#recommend-product .swiper-btn .swiper-button-next:hover{
	background: #333;
}
#recommend-product .swiper-btn .swiper-button-prev:hover::after,
#recommend-product .swiper-btn .swiper-button-next:hover::after{
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
#recommend-product p.bt{
	text-align: center;
}
#recommend-product p.bt a{
	padding: 16px 60px 18px 80px;
}
#recommend-product p.bt a::after{
	left: 60px;
}

#comment{
	padding: 100px 0 140px;
	line-height: 0;
	margin: 0 auto;
	overflow: hidden;
	background: #fff;
}
#comment h3{
	font-size: 1.8rem;
	line-height: 160%;
	color: #303030;
	text-align: center;
	margin: 0 auto 40px;
}
#comment p.tex{
	font-size: 1.4rem;
	line-height: 200%;
	color: #303030;
	text-align: center;
	margin: 0 auto 50px;
	max-width: 810px;
}
#comment p.tex strong{
	font-size: 1.6rem;
}
#comment ul{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
}
#comment ul>li{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 570px;
	padding: 0 20px;
	margin: 0 60px 60px 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#comment ul>li:nth-child(2n){
	margin-right: 0;
}
#comment ul>li h5{
	font-size: 1.6rem;
	line-height: 140%;
	color: #303030;
	text-align: left;
	margin: 0 auto 15px;
	padding: 40px 0 0;
}
#comment ul>li p{
	font-size: 1.4rem;
	line-height: 200%;
	color: #303030;
	text-align: left;
	margin: 0 auto 100px;
}
#comment ul>li .box{
	background: #f5f7f7;
	padding: 50px 35px 30px;
	margin: 0 -20px;
}
#comment ul>li .box p.img{
	float: left;
	line-height: 0;
	width: 130px;
	border-radius: 100%;
	overflow: hidden;
	margin: -10px 30px 10px 0;
}
#comment ul>li .box p.img img{
	width: 100%;
	height: auto;
}
#comment ul>li .box h4{
	font-size: 1.6rem;
	line-height: 140%;
	color: #303030;
	text-align: left;
	margin: 0 auto 15px;
}
#comment ul>li .box p{
	margin: 0 auto;
}
#comment ul>li .box .oldsex{
	text-align: right;
	line-height: 0;
	margin: 20px 0 0;
}
#comment ul>li .box .oldsex p{
	display: inline-block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
	border: 1px solid #666;
	border-radius: 10px;
	padding: 15px 30px;
	margin: 0 auto;
	background: #fff;
}
#comment ul>li .box .oldsex p span{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	font-size: 1.4rem;
	padding: 0 50px 0 0;
	position: relative;
	line-height: 120%;
}
#comment ul>li .box .oldsex p span::after{
	content: '';
	width: 1px;
	height: 100%;
	background: #666;
	position: absolute;
	top: 0;
	right: 25px;
}
#comment ul>li .box .oldsex p span:last-child{
	padding: 0;
}
#comment ul>li .box .oldsex p span:last-child::after{
	content: none;
}

#contents #certification,
#contents .certification{
	padding: 80px 0 30px;
	line-height: 0;
	margin: 0 auto;
	overflow: hidden;
	background: #fff;
}
#contents #certification h3,
#contents .certification h3{
    display: inline-block;
    background: #577d6d;
	line-height: 130%;
	text-align: center;
	margin: 0 auto 20px;
    padding: 10px 50px 13px;
    color: #FFF;
    font-weight: 500;
    font-size: 2.2rem;
    border-radius: 60px;
}
#contents #certification p.tex,
#contents .certification p.tex{
	font-size: 1.5rem;
	line-height: 180%;
	color: #303030;
	text-align: center;
	margin: 0 auto 40px;
}
#contents #certification p.tex strong,
#contents .certification p.tex strong{
	font-size: 1.6rem;
	color: #3a7775;
}
#contents #certification ul,
#contents .certification ul{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
}
#contents #certification ul>li,
#contents .certification ul>li{
	display: inline-block;
	vertical-align: top;
	width: 570px;
	background: #f5f7f7;
	padding: 40px 25px 25px;
	margin: 0 60px 60px 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#contents .certification ul>li{
	padding-bottom: 0;
}
#contents #certification ul>li:nth-child(2n),
#contents .certification ul>li:nth-child(2n){
	margin-right: 0;
}
#contents #certification ul>li p.img,
#contents .certification ul>li p.img{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: middle;
	width: 140px;
	margin: 0 20px 0 0;
	text-align: center;
}
#contents #certification ul>li .text,
#contents .certification ul>li .text{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: middle;
	width: 360px;
}
#contents #certification ul>li .text h4,
#contents .certification ul>li .text h4{
	font-size: 1.8rem;
	line-height: 140%;
	color: #303030;
	text-align: left;
	margin: 0 auto 15px;
}
#contents #certification ul>li .text p,
#contents .certification ul>li .text p{
	font-size: 1.5rem;
	line-height: 180%;
	color: #303030;
	text-align: left;
	margin: 0 auto;
}
#contents #certification ul>li .box,
#contents .certification ul>li .box{
	background: #fff;
	padding: 20px;
	border-radius: 12px;
	margin: 20px auto 0;
	letter-spacing: normal;
}
#contents #certification ul>li .box ul,
#contents .certification ul>li .box ul{
	margin: 0;
	letter-spacing: normal;
	padding: 5px 0 0;
}
#contents #certification ul>li .box ul>li,
#contents .certification ul>li .box ul>li{
	display: block;
	margin: 0 auto;
	position: relative;
	padding: 0 0 0 1.5em;
	font-size: 1.5rem;
	line-height: 180%;
	background: none;
	width: auto;
}
#contents #certification ul>li .box ul>li::before,
#contents .certification ul>li .box ul>li::before{
	content: '●';
	position: absolute;
	top: 0;
	left: 0;
}
#contents .certification ul>li .box2{
	background: #fff;
	padding: 20px 0 0;
	margin: 25px -25px 0;
	letter-spacing: normal;
}
#contents .certification ul>li .box2 h5{
	font-size: 1.8rem;
	line-height: 160%;
	margin: 0 auto 10px;
}
#contents .certification ul>li .box2 p{
	font-size: 1.5rem;
	line-height: 180%;
}
#contents #certification ul>li.solo {
    width: 100%;
}
#contents #certification ul>li.solo .img {
    width: 20%;
    margin: 0;
}
#contents #certification ul>li.solo .text {
    width: 80%;
}


#reason{
	padding: 80px 0 50px;
	margin: 0 auto;
	line-height: 0;
	background: #f7f7f7;
}
#contents #reason h3{
	font-size: 2.4rem;
	line-height: 160%;
	color: #303030;
	text-align: center;
	margin: 0 auto 30px;
}
#contents #reason h3 strong{
	font-weight: bold;
}
#reason ul{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
}
#reason ul>li{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 280px;
	margin: 0 25px 0 0;
}
#reason ul>li:nth-child(4n){
	margin-right: 0;
}
#reason ul>li span{
	display: block;
}
#reason ul>li .img{
	margin: 0 auto 30px;
}
#reason ul>li .img img{
	width: 100%;
	height: auto;
}
#reason ul>li .tit{
	font-size: 1.7rem;
	line-height: 160%;
	margin: 0 auto 10px;
	font-weight: bold;
}
#reason ul>li .tx{
	font-size: 1.5rem;
	line-height: 180%;
	margin: 0 auto;
}
#reason ul>li .tx strong{
	color: #3a7775;
}
#reason ul>li .links{
	font-size: 1.4rem;
	line-height: 200%;
	margin: 0 auto;
	padding: 15px 0 0;
}
#reason ul>li .links a{
	display: inline-block;
	position: relative;
	padding: 0 0 0 20px;
	color: #333;
	cursor: pointer;
}
#reason ul>li .links a::before{
	position: absolute;
	top: 50%;
	left: 0px;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	margin-top: -2px;
	border-top: 1px solid #303030;
	border-right: 1px solid #303030;
	transform: rotate(45deg);
}
#reason .link{
	display: none;
	text-align: center;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(48, 48, 48, 0.8);
	z-index: 999;
}
#reason .link .inner{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
}
#reason .link .in{
	display: inline-block;
	margin: 0 auto;
	position: relative;
}
#reason .link .in>span.close{
	position: absolute;
	top: -30px;
	right: -40px;
	width: 52px;
	height: 52px;
	background: #fff;
	border-radius: 100%;
	cursor: pointer;
	transition: 0.3s ease-in-out;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.8);
}
#reason .link .in>span.close::before{
	content: '';
	position: absolute;
	top: 25px;
	right: 15px;
	width: 20px;
	height: 2px;
	background: #333;
	transform: rotate(-45deg);
	transition: 0.3s ease-in-out;
}
#reason .link .in>span.close::after{
	content: '';
	position: absolute;
	top: 25px;
	right: 15px;
	width: 20px;
	height: 2px;
	background: #333;
	transform: rotate(45deg);
	transition: 0.3s ease-in-out;
}
#reason .link .in>span.close:hover{
	background: #333;
}
#reason .link .in>span.close:hover::before,
#reason .link .in>span.close:hover::after{
	background: #fff;
}
#reason .link .in p{
	font-size: 1.4rem;
	line-height: 200%;
	color: #fff;
	text-align: center;
}
#reason .link .in p.img{
	line-height: 0;
	margin: 0 auto 20px;
}

#point{
	padding: 80px 0;
}
#contents #point h3{
	font-size: 1.8rem;
	line-height: 160%;
	color: #303030;
	text-align: center;
	margin: 0 auto 30px;
}
#point ul{
	display: block;
	letter-spacing: -0.4em;
	text-align: left;
	line-height: 0;
    overflow: hidden;
}
#point ul>li{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 380px;
	background: #f3f5f5;
	padding: 55px 30px 30px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 30px 0 0;
	position: relative;
	list-style-type:none;
	list-style-position:inside;
	counter-increment: cnt;
    padding-bottom: 100px;
    margin-bottom: -100px;
}
#point ul>li:nth-child(3n){
	margin-right: 0;
}
#point ul>li::before{
	content: "0" counter(cnt);
	font-size: 1.6rem;
	line-height: 36px;
	width: 36px;
	background: #000;
	color: #fff;
	font-weight: bold;
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
}
#point ul>li span{
	display: block;
}
#point ul>li .img{
	margin: 0 auto 20px;
}
#point ul>li .img img{
	width: 100%;
	height: auto;
}
#point ul>li .tit{
	font-size: 1.8rem;
	line-height: 160%;
	margin: 0 auto 10px;
	font-weight: bold;
}
#point ul>li .tx{
	font-size: 1.5rem;
	line-height: 180%;
    padding-bottom: 30px;
}
#point ul>li .tx small{
	font-size: 1.3rem;
}
#point ul>li .bt{
	margin: 0 auto 30px;
}
#point ul>li .bt>a{
	background: #fff;
}

#banner-area{
	background: #333;
	padding: 80px 0;
	margin: 0 auto;
	line-height: 0;
	color: #fff;
}
#contents #banner-area h3{
	color: #fff;
}
#banner-area ul{
	display: block;
	text-align: center;
	margin: 0 auto 20px;
}
#banner-area ul>li{
	display: block;
	margin: 0 auto 40px;
}
#banner-area ul>li:last-child{
	margin-bottom: 0;
}
#contents #banner-area p.cap{
	display: inline-block;
	margin: 0 auto;
	color: #fff;
	line-height: 200%;
	padding-right: 80px;
}
#contents #banner-area p.cap a{
	color: #fff;
}
#contents #banner-area p.cap a[target="_blank"]{
	background: url('../img/icn/_blank.svg') right top no-repeat;
	background-size: 16px auto;
	padding: 0 25px 0 0;
}

#recipe{
	background: #fcf8f5;
	padding: 120px 0 30px;
	line-height: 0;
}
#recipe h3{
	font-size: 1.8rem;
	line-height: 160%;
	color: #303030;
	text-align: center;
	margin: 0 auto 30px;
}
#recipe .swiper-wrapper{
	margin: 0 auto 70px;
}
#recipe .swiper-slide{
	width: 285px;
	margin: 0;
}
#recipe .swiper-slide>a{
	display: block;
	line-height: 0;
}
#recipe .swiper-slide>a:hover{
	text-decoration: none;
}
#recipe .swiper-slide span{
	display: block;
	text-align: left;
}
#recipe .swiper-slide span.img{
	margin: 0 auto 20px;
	overflow: hidden;
	background: #f9f9f9;
}
#recipe .swiper-slide span.img img{
	width: 100%;
	height: auto;
	transition: 0.3s ease-in-out;
}
#recipe .swiper-slide a:hover span.img img{
	transform: scale(1.1);
}
#recipe .swiper-slide span.t{
	color: #333;
	font-size: 1.4rem;
	line-height: 140%;
	margin: 0 auto 5px;
	transition: 0.3s ease-in-out;
}
#recipe .swiper-slide a:hover span.t{
	color: #666;
}
#recipe .swiper-slide span.p{
	color: #3a7775;
	font-size: 1.4rem;
	line-height: 140%;
	margin: 0 auto;
	transition: 0.3s ease-in-out;
}
#recipe .swiper-slide span.p small{
	font-size: 1.2rem;
	padding: 0 0 0 10px;
}
#recipe .swiper-slide a:hover span.p{
	color: #666;
}
#recipe .swiper-btn{
	display: block;
	max-width: 975px;
	margin: 0 auto;
	line-height: 0;
	position: relative;
}
#recipe .swiper-btn .swiper-button-prev,
#recipe .swiper-btn .swiper-button-next{
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 59px;
	height: 59px;
	background: #fff;
	border: 1px solid #ccc;
	position: absolute;
	top: -325px;
	margin: 0;
	transition: 0.3s ease-in-out;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 100%;
}
#recipe .swiper-btn .swiper-button-prev{
	left: 0;
}
#recipe .swiper-btn .swiper-button-next{
	right: 0;
}
#recipe .swiper-btn .swiper-button-prev::after,
#recipe .swiper-btn .swiper-button-next::after{
	position: absolute;
	top: 50%;
	display: block;
	content: '';
	width: 12px;
	height: 12px;
	margin-top: -6px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
}
#recipe .swiper-btn .swiper-button-prev::after{
	left: 25px;
	transform: rotate(-135deg);
}
#recipe .swiper-btn .swiper-button-next::after{
	right: 25px;
	transform: rotate(45deg);
}
#recipe .swiper-btn .swiper-button-prev:hover,
#recipe .swiper-btn .swiper-button-next:hover{
	background: #333;
}
#recipe .swiper-btn .swiper-button-prev:hover::after,
#recipe .swiper-btn .swiper-button-next:hover::after{
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
#recipe p.bt{
	text-align: center;
}
#recipe p.bt a{
	padding: 16px 60px 18px 80px;
}
#recipe p.bt a::after{
	left: 60px;
}

#contents .movie{
	padding: 0 0 60px;
	line-height: 0;
}
#contents .movie iframe{
	width: 900px;
	height: 505px;
}

#comparison{
	padding: 80px 0 30px;
	line-height: 0;
	margin: 0 auto;
	text-align: center;
}
#contents #comparison h3{
	text-align: left;
	margin-bottom: 20px;
}
#contents #comparison table{
	width: 100% !important;
	text-align: center;
}
#contents #comparison table td{
	text-align: center;
	line-height: 180%;
	border-left: none;
	border-right: none;
	position: relative;
}
#contents #comparison table tr:first-child td{
	padding-top: 70px;
}

#contents #comparison table.v-1 tr>td:nth-child(1),
#contents #comparison table.v-2 tr>td:nth-child(2){
	background: #f7f7f7;
	border-left: 10px solid #89acaf;
	border-right: 10px solid #89acaf;
}
#contents #comparison table.v-1 tr:last-child td:nth-child(1),
#contents #comparison table.v-2 tr:last-child td:nth-child(2){
	border-bottom: 10px solid #89acaf;
}

#contents #comparison table .this-page {
	display: block;
    background: #89acaf;
	width: 100%;
	padding: 10px 0;
	margin: 0 0 20px;
    color: #FFF;
	text-align: center;
    font-weight: bold;
    font-size: 1.8rem;
	position: absolute;
	top: 0;
	left: 0;
}
#contents #comparison table .this-page:before {
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
	border-bottom: 10px solid #89acaf;
	border-top: 0;
	transform: rotate(180deg);
	position: absolute;
	bottom: -9px;
	left: 50%;
	margin-left: -10px;
}

/*
#contents #comparison table.v-1 tr:first-child>td:nth-child(1)::before,
#contents #comparison table.v-2 tr:first-child>td:nth-child(2)::before{
	content: 'このページの商品';
	font-size: 1.4rem;
	line-height: 100%;
	padding: 2px 10px 4px;
	background: #999;
	color: #fff;
	font-weight: bold;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -3.8em;
}
*/
#contents #comparison table td strong{
	display: block;
	font-size: 2.0rem;
	margin: 20px auto 10px;
}
#contents #comparison table td span{
	color: #3a7775;
	font-weight: bold;
	font-size: 1.6rem;
}
#contents #comparison table td p.bt{
	text-align: center;
	padding: 20px 0 0;
}

#free-area{
	padding: 40px 0 80px;
	line-height: 0;
	margin: 0 auto;
	overflow: hidden;
	background: #fff;
}
#free-area h3{
	font-size: 1.8rem;
	line-height: 160%;
	color: #303030;
	text-align: center;
	margin: 0 auto 60px;
}
#free-area p.img{
	line-height: 0;
	text-align: center;
}

@media screen and (min-width:768px){
	#contents .product .info{min-height: 700px;}
	#comment ul>li .box{min-height: 140px;}
	#comment ul>li .box h4+p{margin-left: 160px;}
}
#floating{
	background: #fff;
	padding: 20px 0;
	position: fixed;
	bottom: -200px;
	left: 0;
	right: 0;
	display: block;
	letter-spacing: -0.4em;
	text-align: center;
	line-height: 0;
	transition: 0.3s ease-in-out;
	z-index: 3;
	box-shadow: 0 0 13px 3px rgb(20 29 29 / 10%);
}
body.floatings #floating{
	bottom: 0;
	display: none;
}
#floating a{
	display: inline-block;
	letter-spacing: normal;
	line-height: 50px;
	text-align: center;
	font-size: 1.6rem;
	font-weight: bold;
	color: #7e989b;
	border: 2px solid #7e989b;
	padding: 0 80px;
	margin: 0 20px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	border-radius: 40px;
	transition: 0.3s ease-in-out;
	background: #fff;
	cursor: pointer;
}
#floating a:hover{
	text-decoration: none;
	opacity: 0.7;
	transition: 0.3s ease-in-out;
}
#floating a::after{
	position: absolute;
	top: 50%;
	right: 20px;
	display: block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-top: 2px solid #7e989b;
	border-right: 2px solid #7e989b;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: 0.3s ease-in-out;
}
#floating a:hover{
	opacity: 1;
	text-decoration: none;
	background: #7e989b;
	color: #fff;
}
#floating a:hover::after{
	right: 18px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
#floating a.v2{
	color: #fff;
	background: #ff6c29;
	border: 2px solid #ff6c29;
}
#floating a.v2::after{
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
#floating a.v2:hover{
	background: #fff;
	color: #ff6c29;
}
#floating a.v2:hover::after{
	border-top: 2px solid #ff6c29;
	border-right: 2px solid #ff6c29;
}

@media screen and (max-width:767px){

	#contents .product{
		margin: 0 auto 80px;
	}
	#contents .product.v2{
		margin: 40px auto 0;
	}
	#contents .product .images{
		position: static;
		width: auto;
		margin: 0 auto 20px;
	}
	#contents .product .images p.main{
		margin-bottom: 10px;
	}
	/*#contents .product .images .thumbs{
		height: auto;
	}*/
	#contents .product .images .thumbs a{
		width: 30px;
		height: 100%;
		box-shadow: none;
		background: rgba(126,152,155,0.9);
	}
	#contents .product .images .thumbs a::after{
		left: 10px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
	}
	#contents .product .images ul>li{
		margin: 0;
		padding: 0;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	#contents .product .info{
		width: auto;
	}
    
    #contents .product .info p.description{
        font-size: 1.45rem;
    }
    #contents .product .info p.teiki-link {
		font-size: 1.35rem;
    }
	#contents .product .info p.icn span {
		font-size: 1.35rem;
	}

	#contents .product .info ul.cat>li{
		margin: 0 5px 5px 0;
		padding: 6px 7px 8px;
		font-size: 1.1rem;
		min-width: 40px;
	}
    
    #contents #CPP {
        margin-bottom: 0;
        margin-top: 5px;
        font-size: 1.1rem;
    }
    #contents .select[data=teiki] #CPP {
        margin-top: 7px;
        margin-bottom: 0;
    }
    
    #contents .product .info #SCP {
        padding: 0 15px 15px;
    }
    #contents .product .info #SCP a {
        margin: 0;
        padding: 15px 0 10px;
        font-size: 3.2vw;
        border-radius: 5px;
    }
    #contents .product .info #SCP a:after {
        margin: 10px 0 0;
    }

    #contents .product .info #SCcard{
        margin: 15px 0;
    }
    #contents .product .info #SCcard b{
        font-size: 1.5rem;
    }
    #contents .product .info #SCcard span{
        display: inline !important;
    }
    #contents .product .info #SCcard span.break{
        display: inline !important;
    }
    #contents .product .info #SCcard2 img {
        margin-left: -55px;
    }
    #contents .product .info #SCcard2 b:nth-of-type(2):before {
        content: "";
        display: block;
        margin: -5px 0 0;
    }
	#contents .product .info #SCcard2 b.red {
        display: inline-block;
	}
    #contents .product .info #SCcard2 span {
        margin-top: 0;
    }
	#contents .product .info .select-area .select span.left {
		margin-top: 0;
        font-size: 1.7rem;
        line-height: 1.3;
        font-weight: normal;
        float: left;
	}

    #contents .product .info .select-area .select[data="teiki"] span.left {
		margin-top: 0;
    }
	#contents .product .info .select-area .select span.get_point{
        font-size: 1.3rem;
        margin-top: 5px;
	}
    #contents .product .info .select-area .select[data="teiki"] span.get_point{
        margin-top: 5px;
    }
    #contents .product .info .select-area .select span.get_point span {
        font-size: 1.1rem;
    }
	#contents .product .info .select-area .select{
		padding: 15px 20px 15px 50px;
		border-radius: 10px;
		margin: 0 auto 10px;
		background-position: 15px 33px;
		font-size: 1.6rem;
		overflow: hidden;
	}
    #contents .product .info .select-area .select span.k{
        display: block;
        padding: 10px 0 0;
    }
	#contents .product .info .select-area .select span.size {
		margin: 0;
		padding: 0;
		color: #666;
		font-size: 1.2rem;
		position: absolute;
		left: 105px;
        top: 30px;
	}
	#contents .product .info .select-area .select.active{
		background-position: 15px 33px;
	}
	#contents .product .info .select-area .select span.right{
		display: block;
		text-align: right;
        float: inherit;
	}
	#contents .product .info .select-area .select[data="teiki"]{
        padding-top: 30px;
	}
	#contents .product .info .select-area .select[data="teiki"] span.k{
        padding-top: 0px;
	}
    
	#contents .product .info .select-area .select[data="normal"] span.right{
		padding: 0;
	}
	#contents .product .info .select-area .select span.p{
		margin-left: 0;
        font-size: 2.4rem;
	}
	#contents .product .info .select-area .select i{
		position: absolute;
		top: 0;
		right: 0;
		margin: 0;
		padding: 6px 25px;
		border-radius: 0 0 0 12px;
	}
	#contents .product .info .form p.cart-btn button img,
	#contents .product .info .form p.cart-btn a img{
		top: 22px;
		right: 50px;
	}
	#contents .product .info .form ul.list>li{
		width: 49% !important;
		margin: 0 0 8px !important;
	}
	#contents .product .info .form ul.list>li:nth-child(2n){
		margin-left: 2% !important;
	}
	#contents .product .info .form ul.list>li:nth-of-type(n+2) {
		margin-left: 0;
	}
	#contents .product .info .form ul.list>li>label{
		padding: 15px;
	}
	#contents .product .info .form ul.list>li>label.active{
		padding: 14px 16px;
		border: 2px solid #9eccc3;
	}
	#contents .product .info .form ul.list>li>label span,
	#contents .product .info .form ul.list>li>label small{
		display: inline-block;
	}
	#contents .product .info .form ul.list>li>label span.k{
		display: block;
		margin: 0 auto 10px;
	}
	#contents .product .info .form ul.list>li>label small{
		font-size: 1rem;
		margin-left: 5px;
	}
	#contents .product .info .detail .in p.img{
		width: 120px;
		float: right;
		position: static;
		margin: 0 -10px 10px 10px;
	}
	#contents .product .info .detail .in p.v2{
		max-width: 100%;
	}

	#contents p.bt{
		text-align: center;
	}

	#contents .comparison{
		margin-bottom: 80px;
	}
	#contents .comparison .table{
		overflow: auto;
	}
	#contents .comparison .table table{
		width: 1020px !important;
		max-width: 1020px;
	}
	#contents .comparison table td{
		padding: 20px 10px;
	}

	#contents .tab a{
		width: 32%;
		font-size: 1.4rem;
		margin-right: 1%;
		line-height: 60px;
	}
	#contents .tab-area{
		padding: 60px 0;
	}
	#contents .tab-area h3{
		padding: 0;
		margin-bottom: 30px;
	}
    
	#contents .tab-area ul.col>li{
		display: block;
		width: auto;
		margin: 0 auto 40px;
	}
	#contents .tab-area ul.col>li:last-child{
		margin-bottom: 0;
	}
	#contents .tab-area ul.col>li span.img{
		margin: 0 20px 20px;
	}
	#contents .tab-area ul.col>li span.img img{
		width: 100%;
	}
	#contents .tab-area ul.col>li span.tit {
		font-size: 1.8rem;
	}
	#contents .tab-area ul.col>li span.tit2 {
		font-size: 1.6rem;
        line-height: 180%;
        margin: 20px auto 10px;
	}
    #contents .tab-area ul.col>li span.tx{
        font-size: 1.45rem;
    }

	#contents .tab-area ul.col>li span.hikaku{
		position: static;
		text-align: right;
	}
	#contents .tab-area ul.col>li span.hikaku a{
		display: inline-block;
	}
	#contents .tab-area .hikaku-area .in>span.close{
		top: -60px;
		right: 10px;
	}

	#contents .tab-area p.table-name{
		padding: 0;
		font-size: 1.6rem;
		font-weight: bold;
	}
	#contents .tab-area table+p.table-name{
		margin-top: 50px;
	}
	#contents .tab-area table,
	#contents .tab-area table tbody,
	#contents .tab-area table tr,
	#contents .tab-area table th,
	#contents .tab-area table td{
		display: block;
		width: auto;
	}
	#contents .tab-area table{
		display: block;
		letter-spacing: -0.4em;
		text-align: left;
	}
	#contents .tab-area table tr{
	border: 1px solid #ccc;
	border-left: none;
	border-right: none;

	}
	#contents .tab-area table th,
	#contents .tab-area table td{
		display: inline-block;
		letter-spacing: normal;
		width: 50%;
		padding: 15px 30px;
		border: none;
		border-bottom: 1px solid #ccc;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	#contents .tab-area table th.v2,
	#contents .tab-area table td.v2{
		padding:25px 30px 24px;
	}

	#contents .tab-area table th:last-of-type,
	#contents .tab-area table td:last-of-type{
		border-bottom: none;
	}

	#contents .tab-area .product-info{
		padding-top: 50px;
	}

	#contents .tab-area .sort{
		margin-top: 0;
		text-align: center;
	}
	#contents .tab-area .sort a{
		padding: 0 10px;
		margin: 0 2px;
	}
	#contents .tab-area .sort a.active{
		padding-left: 25px;
	}
	#contents .tab-area .sort a.active::after{
		left: 12px;
	}
	#contents .tab-area ul.review>li{
		padding: 20px 10px;
	}
	#contents .tab-area ul.review>li p.img{
		width: 18%;
		margin-right: 4%;
	}
	#contents .tab-area ul.review>li .text{
		width: 78%;
	}
	#contents .tab-area ul.review>li .text h4{
		margin: 0 auto 10px;
	}
	#contents .tab-area ul.review>li .text p.date{
		position: static;
		text-align: left;
		margin: 0 auto 10px;
		font-size: 1.2rem;
	}
	#contents .tab-area ul.review>li .text p.rate img{
		width: 80px;
		margin-top: 3px;
	}
	#contents .tab-area ul.review>li .text p.rate span{
		margin-left: 10px;
	}
	#contents .tab-area ul.review>li .text p.tx{
		font-size: 1.3rem;
		line-height: 180%;
	}
	#contents .tab-area p.cap{
		margin-bottom: 10px;
	}
	#contents .tab-area p.more-review{
		text-align: center;
		margin: 0 auto 20px;
	}
	#contents .tab-area p.review-wright{
		text-align: center;
		margin: 0 auto;
	}
    #contents .list-circle {
        margin:10px 0;
    }
	#contents .list-circle p{
		width: 100%;
		padding-left: 1.5em;
        font-size: 4.25vw;
	}
    #contents .list-circle p span {
        font-size: 4.5vw;
    }
	#column{
		padding: 60px 0;
	}
	#column ul>li{
		margin: 0 auto 30px;
	}
	#column ul>li>span{
		display: block;
	}
	#column ul>li span.img{
		width: auto;
	}
	#column ul>li span.text{
		width: auto;
		padding: 30px 20px;
	}
	#column ul>li span.text span.title{
		font-size: 2.4rem;
		margin-bottom: 20px;
	}
	#column ul>li span.text span.tit{
		font-size: 1.6rem;
		margin-bottom: 15px;
	}

	#recommend{
		padding: 60px 0 30px;
	}
	#recommend h3{
		margin-bottom: 40px;
	}
	#recommend ul>li{
		display: block;
		margin: 0 auto 30px;
		width: 100%;
	}
	#recommend ul>li:last-child{
		margin-bottom: 0;
	}
	#recommend ul>li span.img{
		margin: 0 20px 20px;
	}
	#recommend ul>li span.img img{
		width: 100%;
	}
	#recommend ul>li span.tit{
		text-align: center;
	}
	#recommend p.bt{
		text-align: center;
	}

	#column2{
		padding: 60px 0;
	}
	#column2 ul>li{
		display: block;
		margin: 0 auto 40px;
	}
	#column2 ul>li span{
		display: block;
	}
	#column2 ul>li span.img{
		width: auto;
		margin: 0 auto 20px;
	}
	#column2 ul>li span.text{
		width: auto;
	}

	#column3{
		padding: 60px 0 0;
	}
	#column3 ul>li{
		padding: 25px;
		min-height: 1px;
	}
    #contents #column3 ul>li p {
        font-size: 1.5rem;
        line-height: 180%;
    }
	#contents #column3 ul>li p.img{
		position: static;
		margin: 0 auto 20px;
	}
	#contents #column3 ul>li p.t{
		font-size: 1.7rem;
	}

	#recommend-product{
		padding: 60px 0;
	}
	#recommend-product .swiper-slide{
		text-align: center;
		margin: 0 0;
	}
	#recommend-product .swiper-btn{
		width: 85%;
	}
	#recommend-product .swiper-btn .swiper-button-prev,
	#recommend-product .swiper-btn .swiper-button-next{
		top: -250px;
		width: 50px;
		height: 50px;
	}
	#recommend-product .swiper-btn .swiper-button-prev::after{
		left: 20px;
	}
	#recommend-product .swiper-btn .swiper-button-next::after{
		right: 20px;
	}

	#visuals,
	.visuals{
		padding-bottom: 40px;
	}
	#visuals .flexslider,
	.visuals .flexslider{
		height: auto;
		margin: 0 auto 50px;
	}
	#visuals .flexslider .flex-control-nav,
	.visuals .flexslider .flex-control-nav{
		bottom: -30px;
	}
    
    #visuals .box p,
    .visuals .box p {
        font-size: 1.5rem !important;
        line-height: 180% !important;
    }
	#visuals .box>.boxin,
	.visuals .box>.boxin{
		display: block;
		margin: 0 auto;
		width: auto;
		padding: 40px 20px 30px;
	}
	.visuals .box{
		margin: 20px 0 0;
	}

	#comment{
		padding: 60px 0 40px;
	}
	#contents #comment h3{
		text-align: left;
	}
	#comment p.tex{
		text-align: left;
	}
	#comment ul>li{
		display: block;
		width: auto;
		margin: 0 auto 40px;
	}
	#comment ul>li:last-child{
		margin-bottom: 0;
	}
	#comment ul>li .box p.img{
		width: 100px;
	}

	#contents #certification,
	#contents .certification{
		padding: 60px 0 40px;
	}
	#contents #certification h3,
	#contents .certification h3{
		padding: 10px 30px;
        font-size: 4.8vw;
	}

	#contents #certification p.tex,
	#contents .certification p.tex{
		text-align: left;
	}
	#contents #certification ul>li,
	#contents .certification ul>li{
		display: block;
		width: auto;
		margin: 0 auto 40px;
	}
	#contents #certification ul>li p.img,
	#contents .certification ul>li p.img{
		display: block;
		width: 200px;
		margin: 0 auto 20px;
	}
	#contents #certification ul>li .text,
	#contents .certification ul>li .text{
		display: block;
		width: auto;
	}
	#contents #certification ul>li .text h4,
	#contents .certification ul>li .text h4{
		text-align: center;
        margin-top: 10px;
	}
    #contents #certification ul>li.solo .img {
        margin: 0 auto;
    }
    #contents #certification ul>li.solo .text {
        width: 100%;
    }

	#reason{
		padding: 80px 0;
	}
	#reason ul>li{
		display: block;
		width: auto;
		margin: 0 auto 40px;
	}
	#reason ul>li:last-child{
		margin-bottom: 0;
	}
	#reason ul>li .img{
		margin: 0 15px 20px;
	}
	#reason ul>li .tit {
		font-size: 1.8rem;
	}

	#point{
		padding: 60px 0;
	}
	#point ul>li{
		display: block;
		width: auto;
		margin: 0 auto 40px;
        padding-bottom: 0;
	}
	#point ul>li:last-child{
		margin-bottom: 0;
	}
    #point ul>li .bt {
        padding-bottom: 40px;
    }
	#contents .movie{
		padding: 0;
	}
	#contents .movie iframe{
		width: 100%;
		height: 51vw;
	}

	#recipe{
		padding: 60px 0;
	}
	#recipe .swiper-slide{
		text-align: center;
		margin: 0 0;
	}
	#recipe .swiper-btn{
		width: 85%;
	}
	#recipe .swiper-btn .swiper-button-prev,
	#recipe .swiper-btn .swiper-button-next{
		top: -290px;
		width: 50px;
		height: 50px;
	}
	#recipe .swiper-btn .swiper-button-prev::after{
		left: 20px;
	}
	#recipe .swiper-btn .swiper-button-next::after{
		right: 20px;
	}

	#comparison .table{
		overflow: auto;
	}
	#contents #comparison table{
		width: 600px !important;
		max-width: 600px;
		display: table;
	}
	#contents #comparison table tbody{
		display: table-row-group;
	}
	#contents #comparison table tr{
		display: table-row;
	}
	#contents #comparison table td{
		display: table-cell;
		padding: 25px 20px;
		width: auto;
        font-size: 1.5rem;
	}
    #contents #comparison table td strong{
        font-size: 1.8rem;
    }
    #contents #comparison table td span {
        font-size: 1.5rem;
    }

	#free-area{
		padding: 60px 0;
	}
	#floating{
		display: none;
		padding: 10px;
	}
	#floating a{
		font-size: 1.4rem;
		width: 49%;
		padding: 0;
		margin: 0 2% 0 0;
	}
	#floating a:last-child{
		margin-right: 0;
	}

	body.floatings {
		padding-bottom: 0;
	}
	#contents .delivery-day>.in {
		width: 90%;
		top: 0;
		left: 5%;
		margin-left: 0;
		padding: 5% 2.5% 20% 2.5%;
	}
	#contents .delivery-day {
		top: 93px !important;
	}
	#contents .delivery-day .body {
		padding: 5%;
	}
	#contents .delivery-day .body p.submit {
		text-align: center;
	}
	#contents .delivery-day .body ul>li span.deliver span.days {
		text-align: left;
		margin-top: 60px;
		clear: left;
	}
}
