@charset "utf-8";
/* =====================================

	IcomartElements

======================================= */
/* ------------------------------------
	utility
------------------------------------ */
.btn_addCart {
	font-size: 1rem;
}
.icon_addCart::before {
	content: "\e907";
	display: inline-block;
	margin: 0 0.4rem;
	vertical-align: middle;
	font-family: icoi;
	font-size: 1.2rem;
	color: #727171;
}
.btn_subscription {
	font-size: 1.1rem;
}

/* ------------------------------------
	header
------------------------------------ */
.icomart header {
	background: #FFF;
	border-bottom: 1px solid #ECECEC;
}
.icomart header .header_logo {
	margin: 0 0 10px;
}
.icomart header h1.header_logo {
	padding: 15px 0 0 0;
}
.icomart header .header_logo:before {
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	bottom: 23px;
	left: 0;
	background: #727171;
}
.icomart header .header_logo img {
	width: 88px;
	margin: 2px 0 0 0;
	display: block;
}
.icomart_search {
	margin: 0 3% 10px;
	transition: all 0.3s ease-out;
}
.icomart_search .inner {
	width: 100%;
	position: relative;
}
.icomart_search .select_box {
	width: 30%;
	float: left;
	position: relative;
	height: 35px;
	line-height: 35px;
	padding: 0 24px 0 10px;
	font-size: 1.1rem;
	cursor: pointer;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	background: #ECECEC;
	border: none;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	transition: all 0.3s ease-out;
}
.icomart_search .select_box:after {
	font-family: icoi;
	content: "\e900";
	display: block;
	color: #BFB59A;
	position: absolute;
	top: 50%;
	right: 15px;
	-webkit-transform: translate(0, -50%) rotate(90deg);
	transform: translate(0, -50%) rotate(90deg);
	pointer-events: none;
	transition: all 0.3s ease-out;
}
.select_list {
	position: absolute;
	top: 35px;
	left: 0;
	z-index: 1;
}
.select_list {
	display: none;
	width: 100%;
	max-height: 55vh;
	overflow-y: auto;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	border-bottom: 1px solid #ECECEC;
	-webkit-overflow-scrolling: touch;
}
.select_list_inner {
	border-radius: 5px;
	border-top: 1px solid #ECECEC;
	border-right: 1px solid #ECECEC;
	border-left: 1px solid #ECECEC;
}
.select_list dt,
.select_list .search_all {
	padding: 10px 15px;
	font-size: 1.8rem;
	font-family: 'Lato', sans-serif;
	letter-spacing: 2px;
	cursor: pointer;
	background: #FFF;
	position: relative;
	border-bottom: 1px solid #ECECEC;
}
.select_list .search_all {
	padding: 15px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
.select_list a {
	display: block;
}

.select_list dt:before {
	font-family: icoi;
	content: "\e904";
	margin: 0 7px 0 0;
	font-size: 1.8rem;
	vertical-align: middle;
	display: inline-block;
	color: #444;
	line-height: 1.1;
	transition: all 0.3s ease-out;
	position: absolute;
	top: 50%;
	right: 5px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
.select_list dt.open:before {
	-webkit-transform: translate(0, -50%) rotateX(180deg);
	transform: translate(0, -50%) rotateX(180deg);
}

.select_list dt span,
.select_list .search_all span {
	color: #BFB59A;
}
.select_list dd {
	display: none;
	margin: -1px 0 0 0;
}
.select_list dd li {
	padding: 14px 25px;
	font-size: 1.6rem;
	line-height: 1.2;
	cursor: pointer;
	border-bottom: 1px solid #ECECEC;
	background: #fcfcfc;
}
.select_list dd li.main_category {
	padding: 14px 25px;
	font-size: 1.3rem;
	line-height: 1.2;
	cursor: pointer;
	border-bottom: 1px solid #ECECEC;
	background: #FFF;
}
.select_list dt.main_category {
	padding: 14px 25px;
	font-size: 1.3rem;
	line-height: 1.2;
	cursor: pointer;
	border-bottom: 1px solid #ECECEC;
	background: #FFF;
}
.select_list dd li.sub_category {
	padding: 14px 25px;
	font-size: 1.4rem;
	line-height: 1.2;
	cursor: pointer;
	border-bottom: 1px solid #ECECEC;
	background: #fcfcfc;
}
.select_list dt.sub_category {
	padding: 14px 25px;
	font-size: 1.3rem;
	line-height: 1.2;
	cursor: pointer;
	border-bottom: 1px solid #ECECEC;
	background: #FFF;
}
.select_list dt.main_category:before {
	font-family: icoi;
	content: "\e900";
	margin: 0 14px 0 0;
	font-size: 1.0rem;
	vertical-align: middle;
	display: inline-block;
	color: #444;
	line-height: 1.1;
	transition: all 0.3s ease-out;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(0, -50%) rotateZ(90deg);
	transform: translate(0, -50%) rotateZ(90deg);
}
.select_list dt.main_category.open:before {
	-webkit-transform: translate(0, -50%) rotateZ(270deg);
	transform: translate(0, -50%) rotateZ(270deg);
}
.select_list dt.sub_category:before {
	font-family: icoi;
	content: "\e900";
	margin: 0 14px 0 0;
	font-size: 1.0rem;
	vertical-align: middle;
	display: inline-block;
	color: #444;
	line-height: 1.1;
	transition: all 0.3s ease-out;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(0, -50%) rotateZ(90deg);
	transform: translate(0, -50%) rotateZ(90deg);
}
.select_list dt.sub_category.open:before {
	-webkit-transform: translate(0, -50%) rotateZ(270deg);
	transform: translate(0, -50%) rotateZ(270deg);
}
.select_list dl:last-of-type dt:not(.open),
.select_list dl:last-of-type dd li:last-child {
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	border-bottom: none;
}
.select_list dl:last-of-type dt.main_category:not(.open),
.select_list dl:last-of-type dd li.sub_category:last-of-type{
	border-bottom: 1px solid #ECECEC;
}
.select_list dl:last-of-type dt.sub_category:not(.open),
.select_list dl:last-of-type dd li.subsub_category:last-of-type{
	border-bottom: 1px solid #ECECEC;
}
.icomart_search .input_wrap {
	width: 70%;
	position: relative;
	float: left;
}
.icomart_search input {
	width: 100%;
	padding: 0 50px 0 10px;
	height: 35px;
	line-height: normal;
	font-size: 1.6rem;
	border: none;
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	border-bottom-left-radius: 0;
	border-top-left-radius: 0;
	background: #F7F7F7;
}
.icomart_search input::placeholder{
	padding-top: 3px;
	font-size: 1.4rem;
}
.icomart_search input[type="text"]:focus {
	outline: 0;
	border: 0;
	background: #F7F7F7;
}
.icomart_search button {
	padding: 0;
	border: none;
	background: none;
	position: absolute;
	top: 50%;
	right: 15px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
.icomart_search button:before {
	font-family: icoi;
	content: "\e919";
	display: block;
	font-size: 2.3rem;
	color: #AAAAAA;
}

@media only screen and (min-width: 768px) {
	.icomart header {
		width: 980px;
		border-bottom: none;
		background: transparent;
	}
	.icomart header h1.header_logo {
		padding: 20px 0;
		text-align: center;
	}
	.icomart header .header_logo:before {
		content: none;
	}
	.icomart header .header_logo img {
		width: 74px;
	}
	.icomart header .header_logo {
		margin: 0;
		padding: 20px 0;
		border-bottom: 1px solid #ECECEC;
	}
	.icomart_search {
		margin: 0 0 10px;
		position: absolute;
		top: 25px;
		left: 135px;
		width: 260px;
	}
	.icomart_search .select_box {
		height: 45px;
		line-height: 45px;
		font-size: 1.4rem;
	}
	.icomart_search input {
		height: 45px;
		line-height: 45px;
		font-size: 1.4rem;
	}
	.select_list {
		max-height: 84vh;
		top: 45px;
	}
	.select_list::-webkit-scrollbar {
		width: 5px;
	}
	.select_list::-webkit-scrollbar-track {
		border-radius: 5px;
		background: #eee;
	}
	.select_list::-webkit-scrollbar-thumb {
		border-radius: 5px;
		background: #666;
	}
	.icomart.mini_header header .header_logo {
		margin: 0;
		padding: 10px 0;
		border-bottom: 1px solid #ECECEC;
	}
	.icomart.mini_header .icomart_search {
		top: 13px;
	}
}

@media only screen and (min-width: 980px) {
	.icomart header {
		width: 100%;
	}
	.select_list dd li.main_category {
		font-size: 1.6rem;
	}
}

@media only screen and (min-width: 1100px) {
	.icomart_search {
		left: 150px;
		width: 300px;
	}
}

@media only screen and (min-width: 1250px) {
	.icomart_search {
		left: 150px;
		width: 380px;
	}
}

/* IE */
@media all and (-ms-high-contrast:none){
	.icomart_search .select_box {
		line-height: 50px;
	}
	.select_list dd li {
		padding: 17px 25px 11px;
	}
}

/* ------------------------------------
	layout
------------------------------------ */
body{
	padding: 128px 0 53px 0;
}
.icomart #wrapper {
	margin: 0 auto 10px;
}

@media only screen and (min-width: 768px) {
	body{
		padding: 175px 0 0 0;
	}
	.icomart #wrapper {
		width: 980px;
		margin: 0 auto 30px;
	}
	.icomart #wrapper.one_col {
		width: 680px;
		margin: 0 auto 30px;
	}
	.icomart main {
		width: 765px;
		float: right;
	}
	.icomart #wrapper.one_col main {
		width: 100%;
		float: none;
	}
	.icomart.full #wrapper {
		width: 980px;
		margin: 30px auto;
	}
	.icomart.full #wrapper main {
		width: 100%;
		margin: 0 auto 30px;
	}
}

/* ------------------------------------
	key_visual
------------------------------------ */
.icomart_key_visual {
	width: 100%;
	margin: 0;
	height: auto;
	visibility: hidden;
	opacity: 0;
	overflow: hidden;
}
.icomart_key_visual .item_main {
	width: 100%;
	margin: 0 auto 10px;
}
.icomart_key_visual .item_main img {
	width: 100%;
}
.icomart_key_visual .item_nav {
	width: 90%;
	margin: 0 auto;
	padding: 0;
}
.icomart_key_visual .item_nav img {
	width: 100%;
	margin: 0 auto;
}
.icomart_key_visual .slick-slider .slick-track {
	-webkit-transform: translate3d(0, 0, 0)!important;
	transform: translate3d(0, 0, 0)!important;
}
.icomart_key_visual .item_nav .slick-slide {
	margin: 0 2px;
}
.icomart_key_visual .item_nav .slick-slide li {
	cursor: pointer;
	background: #000;
	position: relative;
}
.icomart_key_visual .item_nav .slick-slide li img {
	width: 100%;
	position: static;
	transition: all 0.5s ease-out;
}
.icomart_key_visual .item_nav .slick-current li:before {
	content: "";
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	display: block;
	border: 2px solid #BFB59A;
	position: absolute;
	top: 0;
	right:0;
	bottom: 0;
	left: 0;
	z-index: 1;
}
.icomart_key_visual .item_nav .slick-slide:not(.slick-current) li img {
	opacity: 0.6;
}

@media only screen and (min-width: 768px) {
	.icomart_key_visual {
		width: 980px;
		margin: 0 auto 20px;
	}
	.icomart_key_visual .item_nav {
		margin: -40px auto 20px;
		padding: 20px;
		border-radius: 5px;
		background: rgba(255,255,255,0.7);
	}
	body:not(.tab_view) .icomart_key_visual .item_nav .slick-slide li img:hover {
		opacity: 1;
	}
}

/* ------------------------------------
	relatelist
------------------------------------ */
.icomart .toplist h2 {
	width: 100%;
	padding: 30px 0 20px;
	text-align: center;
	letter-spacing: 2px;
	color: #808181;
	font-size: 1.2rem;
	font-family: 'Lato', YuGothic, "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	border-top: 1px solid #ECECEC;
}
.icomart .toplist h2:first-of-type {
	border-top: none
}
.icomart .toplist h2 span {
	color: #444;
	display: block;
	font-size: 2rem;
	line-height: 1.5;
}
.relatelist {
	padding: 0 0 30px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch
}
.relatelist ul {
	margin: 0 0 20px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	overflow-x: visible;
}
.relatelist ul::-webkit-scrollbar {
	height: 5px;
}
.relatelist ul::-webkit-scrollbar-track {
	border-radius: 5px;
	background: #eee;
}
.relatelist ul::-webkit-scrollbar-thumb {
	border-radius: 5px;
	background: #666;
}
.relatelist li {
	width: 120px;
	margin: 0 0 0 15px;
	float: left;
	text-align: center;
}
.relatelist li:first-of-type {
	margin: 0;
}
.relatelist li a {
	display: block;
	position: relative;
}
.relatelist li figure {
	position: relative;
	overflow: hidden;
}
.relatelist .item_title {
	display: block;
	font-size: 1.3rem;
	line-height: 1.5;
}
.relatelist .supply {
	margin: 3px 0 0 0;
	display: block;
	font-size: 1rem;
	line-height: 1.5;
	color: #AAA;
}
.relatelist small {
	display: block;
	font-size: 1.3rem;
	color: #808181;
	font-family: 'Lato', sans-serif;
}
.relatelist .pricedown span {
	font-size: 1.1rem;
	font-weight: normal;
}
.relatelist .pricedown {
	line-height: 2;
	font-family: 'Lato', YuGothic, YuGothicM, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
.relatelist .pricedown small {
	margin: 3px 0 7px;
	display: inline-block;
	line-height: 1.1;
	font-size: 1.3rem;
	text-decoration: line-through;
}
.relatelist .pricedown span {
	padding: 0 0 0 5px;
	font-weight: bold;
	font-size: 1.3rem;
	color: #CB5E5E;
	position: relative;
}
.relatelist .pricedown span:before {
	font-family: icoi;
	content: "\e91d";
	margin: 0 5px 0 0;
	font-size: 1rem;
	line-height: 1;
	vertical-align: middle;
	color: #444;
	display: inline-block;
	-webkit-transform: scale(0.7);
	transform: scale(0.7);
}
.relatelist li img {
	width: 100%;
	display: block;
}
/*.relatelist li small {
	display: block;
	margin: 0 auto;
	color: #A8A8A8;
}*/

.relatelist .btnRow_purchase {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.relatelist .btn_addCart,
.relatelist .btn_subscription {
	width: 100%;
	margin-top: .5rem;
}
.relatelist .btn_subscription {
	font-size: 1.1rem;
}

.relatelist li.more {
	display: table;
}
.relatelist li.more a {
	height: 100%;
	display: table-cell;
	vertical-align: middle;
	font-size: 1.2rem;
	background: #F7F7F7;
	border-radius: 3px;
	position: relative;
}
.relatelist li.more a:before {
	font-family: icoi;
	content: "\e900";
	margin: 0 8px 0 0;
	font-size: 1rem;
	line-height: 1;
	display: inline-block;
	vertical-align: middle;
	color: #AAA;
	z-index: 1;
}
.ranklist {
	counter-reset: ranking;
}
.ranklist li {
	padding: 25px 0 0 0;
}
.ranklist li:not(.more) a {
	counter-increment: ranking;
	position: relative;
}
.ranklist li:not(.more) a:after {
	content: counter(ranking);
	font-family: 'Lato', sans-serif;
	font-size: 2.2rem;
	line-height: 1;
	position: absolute;
	top: -25px;
	left: 5px;
	z-index: 1;
}

@media only screen and (min-width: 768px) {
	.icomart .toplist h2 {
		width: 100%;
		margin: 0 0 20px;
		padding: 30px 0 0 0;
		text-align: left;
		font-size: 1.3rem;

	}
	.icomart .toplist h2:first-child {
		padding: 0;
	}
	.icomart .toplist h2 span {
		margin: 0 10px 0 0;
		display: inline-block;
		font-size: 2.4rem;
		line-height: 1.1;
	}
	.relatelist {
		overflow-x: visible;
	}
	.relatelist ul {
		width: auto !important;
		margin: 0 30px;
		overflow-x: visible;
	}
	.relatelist li {
		width: 180px;
	}
	.relatelist .slick-track {
		min-width: 765px !important;
	}
	.relatelist .slick-slide {
		margin: 0 10px;
	}
	.relatelist.ranking .slick-slide {
		padding: 11px 0 0 0;
	}
	.relatelist li small {
		line-height: 2;
	}
	.relatelist li.more {
		display: table !important;
	}
	.relatelist .slick-prev,
	.relatelist .slick-next {
		top: 50%;
		bottom: auto;
	}
	.relatelist .slick-prev {left: -5%;}
	.relatelist .slick-next {right: -5%;}
	.relatelist .slick-disabled {
		cursor: default;
	}
	.relatelist .slick-prev:before,
	.relatelist .slick-next:before {
		font-family: icoi;
		content: "\e900";
		color: #AAA;
		font-size: 1.6rem;
		display: block;
		transition: all 0.3s ease-out;
	}
	.relatelist .slick-prev:before {
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
	}
}

/*PC HOVER*/
@media only screen and (min-width: 768px) {
	body:not(.tab_view) .relatelist .slick-prev:not(.slick-disabled):hover:before,
	body:not(.tab_view) .relatelist .slick-next:not(.slick-disabled):hover:before {
		opacity: 0.6;
	}
}

@media only screen and (max-width: 768px) {
	.relatelist .slick-slider .slick-track,
	.relatelist .slick-slider .slick-list {
		-webkit-transform: translate3d(0, 0, 0) !important;
		transform: translate3d(0, 0, 0) !important;
	}
}

/* ------------------------------------
	column_list
------------------------------------ */
.column_list {
	margin: 0 0 20px;
	overflow: hidden;
}
.column_list li {
	width: 100%;
	margin: 0 0 10px;
}
.column_list li a {
	display: block;
}
.column_list li img {
	width: 100%;
	display: block;
	border-radius: 5px;
}
.thumb_list {
	margin: 0 0 15px;
	overflow: hidden;
}
.thumb_list li {
	width: 100%;
	margin: 0 0 15px;
	overflow: hidden;
}
.thumb_list li a {
	display: block;
}
.thumb_list li figure {
	width: 30%;
	float: left;
}
.thumb_list li figure img {
	width: 100%;
	border-radius: 5px;
}
.thumb_list li .txt_area {
	width: 67%;
	float: right;
}
.thumb_list li .txt_area span {
	font-size: 1rem;
	color: #AAA;
}
.thumb_list li .txt_area p {
	margin: 0;
	font-size: 1.3rem;
	line-height: 1.5;
}

@media only screen and (min-width: 768px) {
	.column_list {
		margin: 0 0 10px;
	}
	.column_list li {
		width: 375px;
		margin: 0 15px 20px 0;
		float: left;
	}
	.column_list li:nth-child(2n) {
		margin: 0 0 20px;
	}
	.thumb_list {
		margin: 0 0 10px;
	}
	.thumb_list li {
		width: 375px;
		margin: 0 15px 20px 0;
		float: left;
	}
	.thumb_list li:nth-child(2n) {
		margin: 0 0 20px;
	}
	.thumb_list li figure {
		width: 100px;
	}
	.thumb_list li .txt_area {
		width: 260px;
	}
	.thumb_list li .txt_area span {
		font-size: 1.2rem;
	}
	.thumb_list li .txt_area p {
		font-size: 1.4rem;
	}
}

/* ------------------------------------
brand_list
------------------------------------ */
.brand_list {
	overflow: hidden;
}
.brand_list li {
	width: 30%;
	margin: 0 5% 5% 0;
	float: left;
}
.brand_list li:nth-child(3n) {
	margin: 0 0 5% 0;
}
.brand_list li a {
	display: block;
}
.brand_list li img {
	max-width: 100%;
	display: block;
}
@media only screen and (min-width: 768px) {
	.brand_list li,
	.brand_list li:nth-child(3n) {
		width: 22%;
		margin: 0 4% 3% 0;
	}
	.brand_list li:nth-child(4n) {
		margin: 0 0 3% 0;
	}
}

/* ------------------------------------
	lowerlist
------------------------------------ */
.icomart .page_ttl {
	margin: 30px auto;
	font-size: 1.2rem;
	text-align: center;
	line-height: 1.4;
	color: #808181;
}
.icomart .page_ttl span {
	margin: 0 0 5px;
	display: block;
	line-height: 1.2;
	letter-spacing: 2px;
	font-size: 2rem;
	font-family: 'Lato', sans-serif;
	color: #444;
}
.lowerlist {
	width: 100%;
	overflow: hidden;
}
.lowerlist li {
	width: 49%;
	margin: 0 2% 2% 0;
	float: left;
	text-align: center;
}
.lowerlist li:nth-child(2n) {
	margin: 0 0 2%;
}
.lowerlist li a {
	display: block;
	position: relative;
}
.lowerlist li figure {
	position: relative;
	overflow: hidden;
}
.lowerlist .item_title {
	display: block;
	font-size: 1.3rem;
	line-height: 1.3;
}
.lowerlist .supply {
	margin: 3px 0 0 0;
	display: block;
	font-size: 1rem;
	line-height: 1.5;
	color: #AAA;
}
.lowerlist small {
	display: block;
	font-size: 1.4rem;
	color: #AAA;
	font-family: 'Lato', sans-serif;
}
.lowerlist .pricedown span {
	font-size: 1.1rem;
	font-weight: normal;
}
.lowerlist .pricedown {
	line-height: 2;
	font-family: 'Lato', YuGothic, YuGothicM, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
.lowerlist .pricedown small {
	margin: 3px 0 7px;
	display: inline-block;
	line-height: 1.1;
	font-size: 1.3rem;
	text-decoration: line-through;
}
.lowerlist .pricedown span {
	padding: 0 0 0 5px;
	font-weight: bold;
	font-size: 1.3rem;
	color: #CB5E5E;
	position: relative;
}
.lowerlist .pricedown span:before {
	font-family: icoi;
	content: "\e91d";
	margin: 0 5px 0 0;
	font-size: 1rem;
	line-height: 1;
	vertical-align: middle;
	color: #444;
	display: inline-block;
	-webkit-transform: scale(0.7);
	transform: scale(0.7);
}
.lowerlist .btn_addCart,
.lowerlist .btn_subscription {
	width: calc(100% - 3.6rem);
	margin: .5rem auto 0;
}

@media only screen and (min-width: 768px) {
	.icomart .page_ttl {
		margin: 30px auto 50px;
		font-size: 1.5rem;
		line-height: 1.4;
	}
	.icomart .page_ttl span {
		margin: 0 0 15px;
		display: block;
		font-size: 2.6rem;
		line-height: 1.2;
		letter-spacing: 3px;
	}
	.lowerlist li,
	.lowerlist li:nth-child(2n) {
		width: 168px;
		margin: 0 31px 31px 0;
	}
	.lowerlist li:nth-child(4n) {
		margin: 0 0 31px;
	}
}

/* ------------------------------------
	item list
------------------------------------ */
.search_word {
	margin: -10px 0 25px;
	padding: 10px;
	font-size: 1.4rem;
	font-family: 'Lato', YuGothic, "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	line-height: 1.5;
	text-align: center;
	background: #F7F7F7;
}
.search_word span {
	font-weight: bold;
}
.sort_area {
	margin: -10px 0 20px;
	overflow: hidden;
}
.favorite_sort {
	margin: -30px 0 20px;
}
.sort_area .regist_form {
	border-top: none;
	font-family: 'Lato', YuGothic, "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
.sort_area .amount {
	margin: 3px 0 0 0;
	float: left;
	font-size: 1.5rem;
	color: #808181;
}
.sort_area .amount span {
	margin: 0 3px;
}
.sort_area label {
	float: right;
}
.sort_area select {
	width: 140px;
	height: 30px;
	padding: 0 15px;
	line-height: 30px;
	font-size: 1.6rem;
	cursor: pointer;
	color: #808181;
	background: #FFF;
	border: 1px solid #E6E6E6;
	border-radius: 5px;
	transition: all 0.3s ease-out;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.sort_area .slct_label:after {
	font-family: icoi;
	content: "\e900";
	display: block;
	color: #BFB59A;
	position: absolute;
	top: 50%;
	right: 13px;
	-webkit-transform: translate(0, -50%) rotate(90deg) scale(0.8);
	transform: translate(0, -50%) rotate(90deg) scale(0.8);
	pointer-events: none;
}

@media only screen and (min-width: 768px) {
	.search_word {
		padding: 15px;
	}
	.sort_area {
		margin: 0 0 30px;
	}
	.favorite_sort {
	margin: -30px 0 20px;
}
}

/* ------------------------------------
	item_load pagination
------------------------------------ */
#item_load .pagination {
	visibility: hidden;
}

/* ------------------------------------
	item detail slider
------------------------------------ */
.icomart_item_detail {
	width: 100%;
	margin: 10px 0 0;
	height: auto;
	visibility: hidden;
	opacity: 0;
	overflow: hidden;
}
.icomart_item_detail .detail_main .slick-slide {
	overflow: hidden;
}
.icomart_item_detail .detail_main .slick-slide a:before {
	content: "";
	width: 25px;
	height: 25px;
	display: block;
	position: absolute;
	right: 10px;
	bottom: 10px;
	font-size: 2rem;
	background: url(/img/common/icon_expand.png) no-repeat center center;
	background-size: 100% auto;
}
.icomart_item_detail .detail_main {
	width: 80%;
	margin: 0 auto 10px;
}
.icomart_item_detail .detail_main a {
	display: block;
}
.icomart_item_detail .detail_main a .ribon {
	height: 30px;
	line-height: 33px;
	font-size: 1.4rem;
	-webkit-transform: rotate(45deg)translate(32px,-10px);
	transform: rotate(45deg)translate(32px,-10px);
}
.icomart_item_detail .detail_main img {
	width: 100%;
}
.icomart_item_detail .detail_nav {
	width: 90%;
	margin: 10px auto 0;
	background: transparent;
}
.icomart_item_detail .detail_nav img {
	width: 100%;
	margin: 0 auto;
}
.icomart_item_detail .slick-slider .slick-track {
	text-align: center;
	-webkit-transform: translate3d(0, 0, 0)!important;
	transform: translate3d(0, 0, 0)!important;
}
.icomart_item_detail .detail_nav .slick-slide {
	margin: 0 2% 15px;
	display: inline-block;
/*	float: none;*/
}
.icomart_item_detail .detail_nav .slick-slide li {
	cursor: pointer;
	position: relative;
}
.icomart_item_detail .detail_nav .slick-slide {width: 16%!important;}
.icomart_item_detail .detail_nav .slick-slide li img {
	width: 100%;
	position: static;
	border: 1px solid #ECECEC;
	transition: all 0.5s ease-out;
}
.icomart_item_detail .detail_nav .slick-current li:before {
	content: "";
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	display: block;
	border: 2px solid #BFB59A;
	position: absolute;
	top: 0;
	right:0;
	bottom: 0;
	left: 0;
	z-index: 1;
}
.icomart_item_detail .slick-prev,
.icomart_item_detail .slick-next {
	top: 50%;
	bottom: auto;
}
.icomart_item_detail .slick-prev {
	left: -10%;
}
.icomart_item_detail .slick-next {
	right: -10%;
}
.icomart_item_detail .slick-prev:before,
.icomart_item_detail .slick-next:before {
	font-family: icoi;
	content: "\e900";
	color: #AAA;
	font-size: 1.6rem;
	display: block;
}
.icomart_item_detail .slick-prev:before {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

@media only screen and (min-width: 768px) {
	.detail_outer {
		overflow: hidden;
		position: relative;
	}
	.icomart_item_detail {
		width: 415px;
		margin: 0;
		float: left;
	}
	body:not(.tab_view) .icomart_item_detail .detail_nav .slick-slide li img:hover {
		opacity: 1;
	}
	.detail_main_column {
		width: 515px;
		float: right;
	}
}

/* ------------------------------------
	modal item detail cont
------------------------------------ */
.detail_cont_wrap {
	padding: 0;
}
.item_detail_cont {
	margin: 0;
	padding: 0;
}
.item_detail_cont img {
	width: 100%;
	display: block;
}

@media only screen and (min-width: 768px) {
	.detail_cont_wrap {
		padding: 10px 10px 0;
	}
	.item_detail_cont {
		width: 500px;
		height: auto;
		position: relative;
		text-align: left;
		margin-bottom: 10px;
		padding: 10px;
	}
}

/* ------------------------------------
	item detail
------------------------------------ */
/*item_info*/
.item_info .brand_name {
	font-weight: bold;
	font-family: 'Lato', YuGothic, YuGothicM, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
.item_info .brand_name {
	color: #BFB59A;
}
.item_info .brand_name a:link {
	color: #BFB59A;
}
.item_info .brand_name a:visited {
	color: #BFB59A;
}
.item_info .fav_wrap {
	position: relative;
}
.item_info .fav_wrap h1 {
	width: 100%;
	margin: 0 0 3px;
	padding: 0 55px 0 0;
	color: #444;
	font-size: 1.5rem;
	line-height: 1.3;
	font-weight: bold;
	text-align: left;
}
.item_info .supply {
	margin: 5px 0;
	color: #808181;
	font-size: 1.3rem;
	line-height: 1.5;
}
.item_info .price_down {
	font-family: 'Lato', sans-serif;
}
.item_info .price_down span {
	margin: 0 5px 0 0;
	border: 1px solid #444;
	font-size: 1rem;
	line-height: 1;
	padding: 1px 5px;
	vertical-align: middle;
}
.item_info .price_down small {
	font-size: 1.3rem;
	line-height: 1;
	text-decoration: line-through;
	vertical-align: middle;
}
.item_info .price_down:after {
	font-family: icoi;
	content: "\e91d";
	margin: 0 0 0 3px;
	font-size: 1rem;
	line-height: 1;
	vertical-align: middle;
	color: #444;
	display: inline-block;
	-webkit-transform: scale(0.7);
	transform: scale(0.7);
}
.item_info .price.ec_view{
	margin: 5px 0;
	font-family: 'Lato', YuGothic, YuGothicM, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.1;
	color:#B53E3E;
}
.item_info .price small {
	color: #444;
	font-size: 1.4rem;
	font-weight: normal;
}
.item_info .fav_btn {
	width: 45px;
	height: 45px;
	text-align: center;
	border: none;
	outline: none;
	background: #FFF;
	border-radius: 50%;
	position: absolute;
	top: 0;
	right: 5px;
	box-shadow: 0 0 5px rgba(0,0,0,0.2);
	transition: all 0.3s ease-out;
}
.item_info .fav_btn:before,
.item_info .fav_btn:after {
	font-family: icoi;
	font-size: 2rem;
	line-height: 1;
	vertical-align: middle;
	color: #F59898;
	display: block;
	position: absolute;
	top: 51%;
	left: 50%;
	transition: all 0.3s ease-out;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.item_info .fav_btn:before {
	content: "\e91a";
}
.item_info .fav_btn:after {
	content: "\e91b";
	opacity: 0;
}
.item_info .fav_btn.active {
	-webkit-animation: favoShadow 1.5s ease-out;
	animation: favoShadow 1.5s ease-out;
}
@-webkit-keyframes favoShadow {
	0% {box-shadow: 0 0 5px rgba(0,0,0,0.2);}
	10% {box-shadow: 0 0 5px rgba(0,0,0,0);}
	70% {box-shadow: 0 0 5px rgba(0,0,0,0);}
	100% {box-shadow: 0 0 5px rgba(0,0,0,0.2);}
}
@keyframes favoShadow {
	0% {box-shadow: 0 0 5px rgba(0,0,0,0.2);}
	10% {box-shadow: 0 0 5px rgba(0,0,0,0);}
	70% {box-shadow: 0 0 5px rgba(0,0,0,0);}
	100% {box-shadow: 0 0 5px rgba(0,0,0,0.2);}
}
.item_info .fav_btn.active:before,
.item_info .fav_btn.active:after {
	-webkit-animation: favoAct 1s forwards;
	animation: favoAct 1s forwards;
}
@-webkit-keyframes favoAct {
	0% {-webkit-transform: translate(-50%, -50%) scale(1) rotateY(0deg); opacity: 1;}
	50% {-webkit-transform: translate(-50%, -50%) scale(1.3) rotateY(360deg); opacity: 0;}
	55% {-webkit-transform: translate(-50%, -50%) scale(0.1) rotateY(0deg); opacity: 1;}
	70% {-webkit-transform: translate(-50%, -50%) scale(1.1) rotateY(0deg); opacity: 1;}
	90% {-webkit-transform: translate(-50%, -50%) scale(0.1) rotateY(180deg); opacity: 1;}
	100% {-webkit-transform: translate(-50%, -50%) scale(1) rotateY(180deg); opacity: 1;}
}
@keyframes favoAct {
	0% {transform: translate(-50%, -50%) scale(1) rotateY(0deg); opacity: 1;}
	50% {transform: translate(-50%, -50%) scale(1.3) rotateY(360deg); opacity: 0;}
	55% {transform: translate(-50%, -50%) scale(0.1) rotateY(0deg); opacity: 1;}
	70% {transform: translate(-50%, -50%) scale(1.1) rotateY(0deg); opacity: 1;}
	90% {transform: translate(-50%, -50%) scale(0.1) rotateY(180deg); opacity: 1;}
	100% {transform: translate(-50%, -50%) scale(1) rotateY(180deg); opacity: 1;}
}
.item_info .point small {
	margin: 0 0 0 13px;
	font-size: 1.3rem;
	font-weight: bold;
	font-family: 'Lato', sans-serif;
	color: #CB5E5E;
}

@media only screen and (min-width: 768px) {
	body:not(.tab_view) .item_info .fav_btn:hover {
		box-shadow: 0 0 10px rgba(0,0,0,0.3);
	}
}

@media only screen and (min-width: 768px) {
	.item_info .brand_name {
		margin: 0 0 5px;
		font-size: 1.3rem;
	}
	.item_info .fav_wrap h1 {
		margin: 0;
		font-size: 2rem;
	}
}

/* tab_area */
.mod_switchPurchase {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100vw;
	margin-top: 2.5rem;
	margin-left: -5vw;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap    : wrap;
	flex-wrap        : wrap;
}

@media only screen and (min-width: 768px) {
	.mod_switchPurchase {
		width: auto;
		margin-left: auto;
	}
}

.mod_switchPurchase_btn {
	width: 50%;
}

.mod_switchPurchase_input {
	display: none;
}

.mod_switchPurchase_label {
	display: block;
	position: relative;
	padding: 1.2rem;
	text-align: center;
	border-top: 2px solid transparent;
	background-color: #ececec;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}

.mod_switchPurchase_label::before,
.mod_switchPurchase_label::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	margin-left: 10%;
	border-radius: 50%;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}

.mod_switchPurchase_label::before {
	left: 0;
	width: 1.6rem;
	height: 1.6rem;
	border: 1px solid transparent;
	background-color: #fff;
}

.mod_switchPurchase_label::after {
	left: 4px;
	width: 1rem;
	height: 1rem;
}

.mod_switchPurchase_input:checked + .mod_switchPurchase_label {
	border-color: #bfb59a;
	background: #fff;
}

.mod_switchPurchase_input:checked + .mod_switchPurchase_label::before {
	border-color: #bfb59a;
}

.mod_switchPurchase_input:checked + .mod_switchPurchase_label::after {
	background-color: #bfb59a;
}

.mod_switchPurchase_ttl {
	display: block;
	line-height: 1.3;
	font-size: 1.4rem;
}

.mod_switchPurchase_price {
	line-height: 1.3;
	font-size: 1.4rem;
	font-weight: bold;
}
.mod_switchPurchase_price::after {
	content:"（税抜）";
	line-height: 1.3;
	font-size: 1.4rem;
	font-weight: bold;
}

/* 吹き出し area */
.purchases_comment {
	position: relative;
    left: 60%;
}

.regular_purchases_comment {
	position: relative;
	float: right;
	bottom: -15px;
	left: 25%;
	margin: 0 0 -1.5em;
	padding: 5px 13px;
	min-width: 75px;
	max-width: 100%;
	color: #B43E3E;
	font-size: 1.1rem;
	background: #FFF;
	border: solid 1px #BFB59A;
	box-sizing: border-box;
}

div.regular_purchases_comment::after {
	content: "";
	display: block;
	position: absolute;
	top: -8px;
	left: 50%;
	transform: translateX(-50%);
	background-image: url(/img/icomart/triangle.png);
	background-size: cover;
	width: 15px;
	height: 8px;
}

.regular_purchases_comment p {
	margin: 0;
	padding: 0;
	font-weight: bold;
}

.purchases_comment img{
	position: absolute;
    width: 3%;
    z-index: 2;
    left: 10%;
    top: 18%;
}

.mod_switchPurchase_price_subscription {
	color: #b53e3e;
}

.mod_switchPurchaseContents {
	display: none;
}

.mod_switchPurchaseContents.is_visible {
	display: block;
}

.mod_switchPurchaseContents .list {
	margin-bottom: 2.5rem;
	padding-left: 1rem;
}

.mod_switchPurchaseContents .item {
	margin-bottom: 1rem;
	font-size: 1.3rem;
}

.mod_switchPurchaseContents .item::before {
	content: "";
	display: inline-block;
	width: .5rem;
	height: .5rem;
	margin-left: -1rem;
	margin-right: .5rem;
	background-color: #bfb59a;
	border-radius: 50%;
	vertical-align: middle;
	color: #bfb59a;
}

.mod_switchPurchaseContents .item_notes {
	display: block;
	line-height: 1;
	font-size: 1.1rem;
}

.mod_switchPurchaseContents .item_anchor {
	color: #bfb59a;
	text-decoration: underline;
}

@media only screen and (max-width: 400px) {
	.mod_switchPurchase_price {
		margin-left: 12px;
	}
}
/* numset_area */
.numset_area {
	margin: 0 auto 60px;
}
.numset {
	margin: 20px 0 20px;
	position: relative;
}
.numset span {
	font-size: 1.2rem;
	line-height: 28px;
	vertical-align: middle;
}
.numset .num_wrap {
	width: 95px;
	display: table;
	position: absolute;
	top: 0;
	left: 40px;
	border: 1px solid #ECECEC;
	border-radius: 5px;
}
.numset a {
	width: 30px;
	height: 28px;
	line-height: 28px;
	font-size: 1.3rem;
	text-align: center;
	vertical-align: middle;
	display: table-cell;
	background: #ECECEC;
	border: #ECECEC 1px solid;
}
.numset a:first-child {
	border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
}
.numset a:last-child {
	border-top-right-radius: 3px;
	border-bottom-right-radius: 3px;
}

.numset input[type=tel] {
	width: 30px;
	height: 28px;
	line-height: 28px;
	font-size: 1.3rem;
	text-align: center;
	vertical-align: middle;
	display: table-cell;
	border: none;
}
.regular_purchases {
	padding-top: 10px;
}
.regular_purchases.subscription_part {
	padding-top: 0px;
	font-size: 1.1rem;
}
.regular_purchases.about_regular_purchases {
	padding-top: 0px;
	font-size: 1.3rem;
	opacity: 0;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.regular_purchases.about_regular_purchases.check_subscription {
	opacity: 1;
}
/* IE */
@media all and (-ms-high-contrast:none){
	.numset span {
		line-height: 35px;
	}
	.numset a,
	.numset input[type=tel] {
		padding: 4px 0 0;
		line-height: auto;
	}
}
/* color_select */
.color_select {
	width: 100%;
	margin: 0 0 15px;
	display: table;
	border: 1px solid #E6E6E6;
	border-radius: 5px;
}
.color_select a {
	padding: 10px;
	display: block;
	position: relative;
}
.color_select a:before {
	font-family: icoi;
	content: "\e900";
	color: #AAA;
	font-size: 1rem;
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
.color_select figure {
	width: 50px;
	height: 50px;
	display: table-cell;
	vertical-align: middle;
}
.color_select figure img {
	width: 100%;
	display: block;
}
.color_select .color {
	padding: 0 0 0 15px;
	display: table-cell;
	vertical-align: middle;
}
.color_select.set {
	display: block;
	padding: 0;
	border: 0;
	border-radius: 0;
}
.color_select.set dl {
	margin: 0 0 10px;
	border: 1px solid #E6E6E6;
	border-radius: 5px;
}
.color_select.set dt {
	padding: 1px 10px;
	font-size: 1.2rem;
	font-weight: bold;
	background: #ECECEC;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
}

/*modal color select*/
.color_select_cont {
	padding: 30px 10px 30px 30px;
	border-radius: 20px;
}
.color_select_cont .outer {
	position: relative;
}
.color_select_cont .outer.over:before {
	content: "";
	width: 96%;
	height: 100px;
	margin: 0 -2.5%;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	transition: all 0.1s ease-out;
	background: rgba(255, 255, 255, 0.5);
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 75%, rgba(255, 255, 255, 1) 100%);
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 75%, rgba(255, 255, 255, 1) 100%);
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 75%, rgba(255, 255, 255, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='transparent', endColorstr='rgba(255, 255, 255, 1)',GradientType=0 );
}
.color_select_cont .outer.bottom:before {
	height: 0;
}
.color_select_cont .inner {
	max-height: 370px;
	overflow-y: auto;
	padding: 0 5% 0 0;
}
.color_select_cont .color_select {
	margin: 0;
	border: none;
	border-top: 1px solid #E6E6E6;
	border-radius: 0;
}
.color_select_cont .color_select li {
	border-bottom: 1px solid #E6E6E6;
}
.color_select_cont .color_select a {
	padding: 10px 0;
}
.color_select_cont .color_select a:before {
	top: 50%;
	right: 0;
}
.color_select_cont .color_select figure {
	width: 70px;
	height: 70px;
}
.color_select_cont .color_select .color {
	font-size: 1.5rem;
	vertical-align: top;
	text-align: left;
	line-height: 1.5;
}
.color_select_cont .color_select .color small {
	font-size: 1.2rem;
}

@media only screen and (min-width: 768px) {
	.color_select_cont {
		width: 500px;
		padding: 30px 10px 30px 30px;
		border-radius: 20px;
	}
	.color_select_cont .inner {
		max-height: 500px;
	}
}

/*.order_area*/
.order_area {
	margin: 0 0 10px;
	display: flex;
	flex-direction: column;
}
.order_area button {
	width: 100%;
	height: 45px;
	line-height: 45px;
	margin: 0 0 10px;
	padding: 0;
}
.order_area .cart {order: 1;}
.order_area .buy {order: 2;}

@media only screen and (min-width: 768px) {
	.order_area {
		display: block;
		overflow: hidden;
	}
	.order_area li {
		width: 250px;
		float: right;
	}
	.order_area li:first-child {
		margin: 0 0 0 15px;
	}
}

/*.modal cart_add_cont*/
.cart_add_cont {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 10;
	background: rgba(0, 0, 0, 0.4);
}
.cart_add_cont figure {
	width: 190px;
	padding: 30px;
	text-align: center;
	border-radius: 20px;
	background: #FFF;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 11;
}
.cart_add_cont figcaption {
	margin: 0 0 10px;
	font-size: 1.6rem;
	line-height: 1.5;
}
.cart_add_cont figure img {
	width: 55px;
}

/*item_note*/
.item_note {
	margin: 0 0 20px;
}
.item_note p {
	margin: 0 0 10px;
}
.item_note p > a {
	text-decoration: underline;
}
.postage_note {
	font-size: 1.1rem;
}
.exclude_free_ship {
	color: red;
}

@media only screen and (min-width: 768px) {
	.postage_note {
		font-size: 1.3rem;
	}
}

/*item_detail_area*/
.item_included_mineral {
	margin-bottom: 2.5rem;
}

.item_included_mineral .item_included_mineral_ttl {
	margin-bottom: 1.5rem;
	line-height: 1;
	font-size: 1.4rem;
	font-weight: bold;
}

.item_included_mineral_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
}

.item_included_mineral_list_item {
	flex-basis: 49%;
	padding: 0.7rem;
	border-bottom: 1px solid #ececec;
	line-height: 1;
	background-color: #ffffff;
	font-size: 1.1rem;
	color: #808181;
	box-sizing: border-box;
	display: flex;
}

.item_included_mineral_list_item span {
	margin-left: auto;
	padding-left: 5px;
}

.item_included_mineral p {
	font-size: 0.5rem;
	color: #808181;
}

.item_pdf {
	margin-bottom: 30px;
}
.item_pdf p {
	margin: 0 0 10px;
	font-size: 1.1rem;
}
.item_pdf li {
	margin: 0 0 10px;
}
.item_pdf li a {
	width: 100%;
	text-align: left;
	border:1px solid #D9D9D9;
}

.item_detail_area {
	padding: 30px 0 0;
	border-top: 1px solid #ECECEC;
}
.item_detail_area h2 {
	margin: 0 0 10px;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.5;
}
.item_bnr {
	margin: 0 0 30px;
}
.item_bnr img {
	width: 100%;
	display: block;
}
.item_youtube {
	width: 100%;
	margin: 0 auto 20px;
	position: relative;
	padding: 56.3% 0 0 0;
}
.item_youtube iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.item_spec dt {
	height: 40px;
	padding: 0 30px;
	display: block;
	vertical-align: bottom;
	color: #444;
	font-size: 1.3rem;
	line-height: 40px;
	text-decoration: none;
	border: 1px solid #D9D9D9;
	border-radius: 60px;
	transition: all 0.3s ease-out;
	position: relative;
	cursor: pointer;
}
.item_spec dt:before {
	font-family: icoi;
	content: "\e900";
	font-size: 1.3rem;
	text-decoration: none;
	vertical-align: middle;
	display: inline-block;
	color: #BFB59A;
	position: absolute;
	right: 20px;
	top: 50%;
	transition: all 0.3s ease-out;
	-webkit-transform: translate(0, -50%) rotate(90deg);
	transform: translate(0, -50%) rotate(90deg);
}
.item_spec dt.open {
	color: #FFF;
	border: 1px solid #BFB59A;
	background: #BFB59A;
}
.item_spec dt.open:before {
	color: #FFF;
	-webkit-transform: translate(0, -50%) rotate(90deg) rotateY(180deg);
	transform: translate(0, -50%) rotate(90deg) rotateY(180deg);
}
.item_spec dd {
	display: none;
}

.item_spec table {
    margin: 15px 0 0 0;
    font-size: 1.2rem;
}
.item_spec table tr {
    border-top: 1px solid #ECECEC;
}
.item_spec table th,
.item_spec table td {
    padding: 20px 5px;
    vertical-align: top;
}
.item_spec table th {
    width: 25%;
    font-weight: bold;
}

.item_spec dd table {
	margin: 15px 0 0 0;
	font-size: 1.2rem;
}
.item_spec dd table tr {
	border-top: 1px solid #ECECEC;
}
.item_spec dd table th,
.item_spec dd table td {
	padding: 20px 5px;
	vertical-align: top;
}
.item_spec dd table th {
	width: 25%;
	font-weight: bold;
}
/*  */

/*PC Hover*/
@media only screen and (min-width: 768px) {
	body:not(.tab_view) .item_spec dt:hover {
		color: #FFF;
		border: 1px solid #BFB59A;
		background: #BFB59A;
	}
	body:not(.tab_view) .item_spec dt:hover:before {
		color: #FFF;
		-webkit-transform: translate(0, -50%) rotate(90deg);
		transform: translate(0, -50%) rotate(90deg);
	}
	body:not(.tab_view) .item_spec dt.open:hover:before {
		color: #FFF;
		-webkit-transform: translate(0, -50%) rotate(90deg) rotateY(180deg);
		transform: translate(0, -50%) rotate(90deg) rotateY(180deg);
	}
}

@media only screen and (min-width: 768px) {
	.item_detail_area h2 {
		font-size: 1.6rem;
	}
	.item_youtube {
		width: 100%;
		margin: 0 auto 30px;
		padding: 0;
	}
	.item_youtube iframe {
		width: 100%;
		height: 290px;
		position: static;
	}
    .item_spec dt {
        font-size: 1.5rem;
    }
    .item_spec table {
        font-size: 1.4rem;
    }
}
/*regular_purchases_detail*/
.item_spec.regular_purchases_detail {
    margin: 30px 0;
}
.item_spec.regular_purchases_detail dt {
    padding: 0 15px;
}
.item_spec.regular_purchases_detail dd .list {
	margin: 15px 0 30px;
	padding-left: 1rem;
}
.item_spec.regular_purchases_detail .item {
	margin-bottom: 1rem;
    font-size: 1.3rem;
}
.item_spec.regular_purchases_detail .item::before {
content: "";
    display: inline-block;
    width: .5rem;
    height: .5rem;
    margin-left: -1rem;
    margin-right: .5rem;
    background-color: #bfb59a;
    border-radius: 50%;
    vertical-align: middle;
	color: #bfb59a;
}
.item_spec.regular_purchases_detail .item_anchor {
	color: #bfb59a;
    text-decoration: underline;
}

/*exception_ship*/
.item_spec.exception_ship {
    margin: 30px 0 15px;
}
.item_spec.exception_ship dt {
    padding: 0 15px;
}
.shipping_type {
    margin: 20px 0 25px 0;
}
.shipping_type li {
    margin: 0 0 10px;
    display: table;
}
.shipping_type li figure {
    width: 70px;
    padding: 0 15px 0 0;
    display: table-cell;
    vertical-align: middle;
}
.shipping_type li figure img {
    width: 100%;
    display: block;
}
.shipping_type li .item_type {
    display: table-cell;
    vertical-align: middle;
    line-height: 1.4;
}
.shipping_type li .item_type span {
    margin: 0 0 5px;
    display: block;
    font-size: 1.4rem;
    font-weight: bold;
}
.shipping_attention {
    padding: 20px 5% 15px;
    background: #F7F7F7;
}
.shipping_attention .ttl {
    margin: 0 0 10px;
    display: block;
    font-size: 1.4rem;
    font-weight: bold;
}
.shipping_attention figure {
    margin: 0 0 20px;
}
.shipping_attention figure img {
    width: 100%;
    display: block;
    -webkit-backface-visibility: hidden;
}

@media only screen and (min-width: 768px) {
    .shipping_type {
        margin: 30px 0 20px 0;
    }
    .shipping_type li figure {
        width: 140px;
        padding: 0 20px 0 0;
    }
    .item_spec.exception_ship {
        margin: 30px 0 20px;
    }
    .shipping_type li .item_type {
        margin: 30px 0 20px;
        font-size: 1.6rem;
    }
    .shipping_type li .item_type span {
        margin: 0 0 5px;
        font-size: 1.5rem;
    }
}

/*related_area*/
.related_area {
	margin: 30px 0 0 0;
	padding: 22px 0 0;
	border-top: 1px solid #ECECEC;
}
.related_area h2 {
	margin: 0 0 10px;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.5;
}
.related_area p.for_free {
	margin: -8px 0 10px;
	font-size: 1.2rem;
	line-height: 1.5;
}
.related_area .toplist_outer {
	margin: 0 0 10px;
}
.related_area .thumb_list {
	margin: 0 0 -20px;
}
.related_area .thumb_list li {
	width: 100%;
	margin: 0 0 20px 0;
}
.related_area .thumb_list li .txt_area {
	width: 67%;
}

@media only screen and (min-width: 768px) {
	.related_area .thumb_list li {
		width: 480px;
		margin: 0 20px 20px 0;
	}
	.related_area .thumb_list li:nth-child(2n) {
		margin: 0 0 20px 0;
	}
	.related_area .thumb_list li .txt_area {
		width: 350px;
	}
}

/* ------------------------------------
	cart
------------------------------------ */
.user_point {
	padding: 15px 0;
	line-height: 1.1;
	overflow: hidden;
	background: #FFF;
}
.user_point .name {
	float: left;
	font-size: 1.4rem;
}
.user_point .name span {
	margin: 0 0 0 3px;
	font-size: 1.2rem;
}
.user_point .point {
	float: right;
	font-size: 1.2rem;
}
.user_point .point span {
	margin: 0 3px 0 0;
	font-size: 1.6rem;
	font-family: 'Lato', YuGothic, YuGothicM, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
.bglayer {
	margin: 0 -5.5%;
	padding: 0 5.5%;
	background: #F9F8F5;
}
.bglayer_inner {
	overflow: hidden;
	padding: 15px 0 0 0;
}
h1.item_count {
	width: 100%;
	margin: 0 0 15px;
	padding: 0;
	color: #444;
	text-align: left;
	font-weight: bold;
	font-size: 1.4rem;
	line-height: 1.1;
	border-bottom: none;
}
.publisher_area {
	margin: 0 0 15px;
	border: 1px solid #E6E6E6;
}
.publisher_area > dt {
	padding: 10px 15px;
	line-height: 1.1;
	font-size: 1.1rem;
	background: #F7F7F7;
}
.publisher_area > dt a{
	text-decoration: underline;
}
.publisher_area > dd {
	padding: 0 0 5%;
	background: #FFF;
}
.publisher_area li {
	position: relative;
}
.publisher_area li:before {
	content: "";
	width: 90%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	border-bottom: 1px solid #ECECEC;
}
.publisher_area .item_inner {
	padding: 5%;
	position: relative;
}
.publisher_area .brand {
	margin: 0 0 10px;
	line-height: 1.1;
	font-size: 1.6rem;
	font-weight: bold;
	font-family: 'Lato', YuGothic, YuGothicM, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
.publisher_area .brand {
	color: #BFB59A;
}
.publisher_area .brand a:link {
	color: #BFB59A;
}
.publisher_area .brand a:visited {
	color: #BFB59A;
}
.publisher_area .item_wrap {
	overflow: hidden;
}
.publisher_area .item_wrap figure {
	position: relative;
/* 	min-width: 80px; */
	width: 25%;
	float: left;
}
.publisher_area .item_wrap figure img {
	width: 100%;
	display: block;
}
.publisher_area .item_info {
	width: 70%;
	float: right;
	position: relative;
}
.publisher_area .item_info .name a {
	color: #444;
	font-size: 1.4rem;
	line-height: 1.2;
	font-weight: bold;
	text-decoration: underline;
}
.publisher_area .item_info .supply {
	color: #808181;
	font-size: 1.3rem;
}
.publisher_area .item_info .subscriptionHelp {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-box-pack: center;
	font-size: 0;
}
.publisher_area .item_info .subscriptionHelp_ttl,
.publisher_area .item_info .subscriptionHelp_ttl_normal {
	padding: .3rem .8rem;
	border-radius: 2px;
	line-height: 1;
	font-size: 1.1rem;
}
.publisher_area .item_info .subscriptionHelp_ttl {
	background-color: #bfb59a;
	color: #fff;
}
.publisher_area .item_info .subscriptionHelp_ttl_normal {
	background-color: #ececec;
	color: #444;
}
.publisher_area .item_info .subscriptionHelp_anchor {
	margin-left: 1rem;
	line-height: 1.2;
	font-size: 1.1rem;
	color: #bfb59a;
	text-decoration: underline;
}
.publisher_area .item_info .subscriptionHelp_anchor::before {
	content: "\e90d";
	display: inline-block;
	margin-right: .3rem;
	vertical-align: middle;
	line-height: 1;
	font-family: icoi;
	font-size: 1.5rem;
}
@media only screen and (min-width: 768px) {
	.publisher_area .item_info .subscriptionHelp_anchor:hover {
		text-decoration: none !important;
	}
}

.publisher_area .item_info .price {
	font-size: 1.4rem;
	font-weight: bold;
	font-family: 'Lato', YuGothic, YuGothicM, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	position: relative;
}
.publisher_area .item_info .price span {
	font-size: 1.1rem;
	font-weight: normal;
}
.publisher_area .item_info .price small.amount {
	color: #808181;
	font-size: 1.1rem;
	position: absolute;
	top: 2px;
	right: 0;
}
.publisher_area .item_info .reward {
	color: #808181;
	font-size: 1.1rem;
}
.publisher_area .item_info .amount {
	color: #808181;
	font-size: 1.1rem;
	position: absolute;
	right: 0;
	bottom: 0;
}
.publisher_area .item_info .numset {
	margin: 7px 0 0;
	padding: 3px 0;
}
.publisher_area .item_info .delete {
	line-height: 1.1;
	color: #BFB59A;
	font-size: 1.1rem;
	text-decoration: underline;
	position: absolute;
	right: 0;
	bottom: 0;
}
.publisher_area .item_info .regular_purchases{
	padding-top: 10px;
	font-size: 1.2rem;
}
.publisher_area .post {
	margin: 0 5% 0;
	padding: 12px 0;
	line-height: 1.1;
	font-size: 1.2rem;
	border-bottom: 1px solid #ECECEC;
}
.publisher_area .regular_purchases_post {
	margin: 0 5% 20px;
	padding: 12px 0;
	line-height: 1.1;
	font-size: 1.2rem;
	border-bottom: 1px solid #ECECEC;
}
.publisher_area .amount_area {
	margin: 0 5%;
}
.publisher_area .amount_area dl {
	overflow: hidden;
}
.publisher_area .amount_area dl:last-child {
	margin: 6px 0 20px;
}
.publisher_area .amount_area dt {
	float: left;
}
.publisher_area .amount_area dd {
	text-align: right;
	float: right;
	font-size: 1.4rem;
	font-family: 'Lato', YuGothic, YuGothicM, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
.publisher_area .amount_area .subtotal {
	font-weight: bold;
	font-size: 2rem;
	line-height: 1.1;
}
.publisher_area .amount_area .reward {
	display: block;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.1;
}
.publisher_area .amount_area .reward small {
	margin: 0 0 0 3px;
	font-size: 1.2rem;
	font-weight: normal;
}
.publisher_area .free_ship {
	margin: 0 5%;
	padding: 15px;
	background: #FFF5F5;
	position: relative;
}
.publisher_area .free_ship:before {
	font-family: icoi;
	content: "\e901";
	font-size: 1rem;
	display: block;
	color: #444;
	position: absolute;
	top: 40px;
	right: 15px;
	-webkit-transform: scale(0.8);
	transform: scale(0.8);
}
.publisher_area .free_ship dt {
	margin: 0 0 3px;
	font-weight: bold;
	line-height: 1.5;
}
.publisher_area .free_ship dd {
	font-size: 1.1rem;
	line-height: 1.5;
}

.total_area {
	padding: 20px 0 0;
}
.total_area dl {
	width: 100%;
	display: table;
}
.total_area dl:last-child {
	margin: 6px 0 20px;
}
.total_area dt {
	display: table-cell;
	vertical-align: middle;
}
.total_area dd {
	text-align: right;
	display: table-cell;
	vertical-align: middle;
	line-height: 1.4;
	font-weight: bold;
	font-size: 2rem;
	font-family: 'Lato', YuGothic, YuGothicM, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}

.total_area dl:last-of-type dd {
	font-size: 1.5rem;
}

.amount_area .icon_help, .total_area .icon_help {
	margin: -2px 0 0 5px;
	display: inline-block;
	text-align: left;
	vertical-align: middle;
	font-size: 1.1rem;
	line-height: 1.5;
}
.amount_area .icon_help:after, .total_area .icon_help:after {
	font-family: icoi;
	content: "\e90d";
	font-size: 1.6rem;
	line-height: 1.5;
	text-decoration: none;
	vertical-align: middle;
	display: inline-block;
	color: #BFB59A;
	transition: all 0.3s ease-out;
}

.icon_caution:before {
    font-family: icoi;
    content: "\e928";
    margin: 0 7px 0 0;
    line-height: 1;
    font-size: 1.5rem;
    color: #F2AD2A;
    display: inline-block;
    animation: flash ease-in-out 1.5s infinite;
    /*	transition: all 0.3s ease-out;*/
}
/*animation*/
@keyframes flash {
    0% {opacity: 1;}
    20% {opacity: 1;}
    40% {opacity: 0;}
    60% {opacity: 0;}
    80% {opacity: 1;}
    100% {opacity: 1;}
}

.total_area .change_point {
	margin: 0 0 10px;
	text-align: right
}
.total_area .change_point a {
	font-size: 1.1rem;
}
.total_area .change_point a:before {
	-webkit-transform: scale(0.8);
	transform: scale(0.8);
}
.total_area dd input {
	width: 130px;
	height: 40px;
	padding: 18px 15px;
	padding: 10px 15px\9;
	text-align: right;
	font-size: 1.6rem;
	background: #F7F7F7;
	border: 2px solid #e6e6e6;
	border-radius: 5px;
	box-shadow: none;
	transition: all 0.3s ease-out;
}
.total_area .point_cap {
	display: block;
	font-size: small;
	font-weight: normal;
	padding-left: 20%;
	margin-top: 10px;
}
.total_area .amount {
	margin: 0 0 3px;
	color: #CB5E5E;
	display: block;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.1;
}
.total_area .reward {
	display: block;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.1;
}
.total_area .reward small {
	margin: 0 0 0 3px;
	font-size: 1.2rem;
	font-weight: normal;
}
.total_area hr {
	margin: 10px 0 15px;
	border: none;
	border-top: 1px solid #ECECEC;
}
.submit_area .basic_btn.bill_btn {
	width: 100%;
	height: 50px;
	line-height: 50px;
	color: #FFF;
	font-weight: bold;
	background: #BFB59A;
	border: 1px solid #BFB59A;
}
.submit_area .basic_btn.bill_btn:before {
	font-weight: normal;
	color: #FFF;
}
.submit_area .basic_btn.bill_btn.invalid {
	opacity: 0.3;
	cursor: default;
	background: #BFB59A;
}
.relatelist.list_cart {
	margin: 0 0 15px;
	padding: 10px 0 15px;
}
.deleted_area {
	opacity: 0;
	visibility: hidden;
	padding: 20px 5%;
	overflow: hidden;
	background: #EAF7F1;
	transition: all 0.3s ease-out;
}
.deleted_area .msg {
	padding: 0 0 0 20px;
	float: left;
	position: relative;
}
.deleted_area .msg:before {
	content: "";
	width: 15px;
	height: 15px;
	display: block;
	position: absolute;
	top: 4px;
	left: 0;
	background: #3CB47D;
	border-radius: 50%;
}
.deleted_area .msg:after {
	font-family: icoi;
	content: "\e90b";
	font-size: 1rem;
	line-height: 1;
	display: block;
	position: absolute;
	top: 52%;
	left: 0;
	color: #FFF;
	-webkit-transform: translate(0, -50%) scale(0.6);
	transform: translate(0, -50%) scale(0.6);
	border-radius: 50%;
	-webkit-transform-origin: center;
	transform-origin: center;
}
.deleted_area .restore {
	font-size: 1.1rem;
	float: right;
	text-decoration: underline;
}

/*PC HOVER*/
@media only screen and (min-width: 768px) {
	body:not(.tab_view) .submit_area .basic_btn.bill_btn:not(.invalid):hover {
		background: #BFB59A;
		border: 1px solid #BFB59A;
		opacity: 0.7;
	}
}

@media only screen and (min-width: 768px) {
	.bglayer {
		margin: 0 -500%;
		padding: 0 500%;
	}
	.tab_view .bglayer {
		margin: 0;
		padding: 0;
		position: relative;
	}
	.tab_view .bglayer:before {
		content: "";
		width: 100vw;
		height: 100%;
		display: block;
		position: absolute;
		top: 0;
		left: 50%;
		z-index: -1;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
		background: #F8F7F4;
	}
	.bglayer_inner {
		padding: 30px 0 0 0;
	}
	h1.item_count {
		margin: 0 0 20px;
		font-size: 1.8rem;
	}
	.publisher_area {
		margin: 0 0 30px;
	}
	.publisher_area li:before {
		width: calc(100% - 40px);
	}
	.publisher_area .item_inner {
		padding: 20px;
	}
	.publisher_area > dt {
		padding: 20px 20px;
		font-size: 1.3rem;
	}
	.publisher_area .post {
		margin: 0 20px 0;
	}
	.publisher_area .regular_purchases_post {
		margin: 0 20px 20px;
	}
	.publisher_area .free_ship {
		margin: 0 20px;
	}
	.publisher_area .item_info .regular_purchases{
		padding-top: 7px;
	}
	.submit_area .basic_btn.bill_btn {
		width: 300px;
	}
	.deleted_area .msg:before {
		top: 6px;
	}
}
/* ec_cart　削除ボタン */
@media only screen and (max-width: 360px) {
	.publisher_area .item_info .delete {
		line-height: 1.1;
		color: #BFB59A;
		font-size: 1.1rem;
		text-decoration: underline;
		position: absolute;
		right: 0;
		bottom: 0;
}
}

/* IE */
@media all and (-ms-high-contrast:none){
	.publisher_area > dt {
		padding: 22px 20px 18px;
	}
}

/*cart_noitem*/
.cart_noitem .bglayer_inner {
	padding: 30px 0;
}
.cart_noitem .noitem_area h1 {
	width: 100%;
	margin: 0 0 10px;
	color: #CB5E5E;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: left;
}
.cart_noitem .noitem_area .basic_btn {
	width: 90%;
	margin: 40px auto 30px;
	text-align: center;
	display: block;
}
.cart_noitem .noitem_area li {
	margin: 0 0 10px;
}
.cart_noitem .related_area {
	margin: 0;
	padding: 10px 0 0;
	border-top: none;
}

@media only screen and (min-width: 768px) {
	.cart_noitem .noitem_area {
		text-align: center;
	}
	.cart_noitem .noitem_area h1 {
		margin: 20px 0 10px;
		text-align: center;
		font-size: 2.4rem;
	}
	.cart_noitem .noitem_area .basic_btn {
		width: 300px;
	}
}

/* ------------------------------------
	first order
------------------------------------ */
/*step1*/
.bill_cont .regist_flow {
	margin: 30px 0;
}
.bill_cont .regist_flow li span {
	margin: 0 0 5px;
}
.alert_msg {
	margin: 30px 0;
	display: block;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.5;
	color: #CB5E5E;
	position: relative;
}
.alert_msg a {
	color: #CB5E5E;
	text-decoration: underline;
}
.alert_msg:before {
	font-family: icoi;
	content: "\e90a";
	margin: 0 5px 0 0;
	font-size: 1.6rem;
	line-height: 1;
	height: 19px;
	display: inline-block;
	vertical-align: middle;
	color: #CB5E5E;
}
.bill_cont .regist_form {
	border-top: none;
}
.bill_cont .bglayer_inner {
	padding: 20px 0 10px 0;
}
.icomart .bill_cont h1 {
	margin: 0;
	padding: 0;
	color: #444;
	font-size: 1.4rem;
	font-weight: bold;
	text-align: left;
	letter-spacing: 0;
	border-top: none;
}

.orderform_first {
	border-top: 1px solid #ECECEC;
	margin: 20px 0 0;
}

.bill_cont .regist_form dd input,
.bill_cont .regist_form dd select {
	background: #FFF;
}
.submit_area .error_msg {
	text-align: left;
}
.reflect_wrap {
	padding: 5% 0;
	text-align: left;
}
.reflect_wrap .reflectTxt {
	vertical-align: middle;
}
.reflect_wrap .reflect_check {
	cursor: pointer;
	display: inline-block;
	position: relative;
}
.reflect_wrap .reflect_check input {
	display: none;
}
.reflect_wrap .reflect_check span {
	display: inline-block;
	height: 18px;
	line-height: 18px;
	font-size: 1.4rem;
	position: relative;
}
.reflect_wrap .reflect_check span:before {
	font-family: icoi;
	content: "\e90b";
	font-size: 1.1rem;
	line-height: 1;
	display: block;
	position: absolute;
	top: 52%;
	left: 20px;
	color: #BFB59A;
	-webkit-transform: translate(0, -50%) scale(0);
	transform: translate(0, -50%) scale(0);
	border-radius: 50%;
	-webkit-transform-origin: center;
	transform-origin: center;
	transition: all 0.3s ease-out;
}
.reflect_wrap .reflect_check i {
	width: 18px;
	height: 18px;
	margin: 0 10px 0 0;
	display: inline-block;
	position: relative;
	vertical-align: middle;
	background: #fff;
	border: 1px solid #AAA;
	border-radius: 4px;
}
.reflect_wrap .reflect_check i:after {
	font-family: icoi;
	content: "\e90b";
	font-size: 1.1rem;
	line-height: 1;
	display: block;
	position: absolute;
	top: 52%;
	left: -2px;
	color: #BFB59A;
	-webkit-transform: translate(0, -50%) scale(0);
	transform: translate(0, -50%) scale(0);
	border-radius: 50%;
	-webkit-transform-origin: center;
	transform-origin: center;
	transition: all 0.3s ease-out;
}
.reflect_wrap .reflect_check input:checked + span i:after {
	-webkit-transform: translate(0, -50%) scale(0.6);
	transform: translate(0, -50%) scale(0.6);
}
.bill_cont .remarks {
	padding: 5% 0 0;
	border-bottom: none;
}
.bill_cont .remarks textarea {
	min-height: 100px;
	display: block;
}

@media only screen and (min-width: 768px) {
	.icomart .bill_cont h1 {
		font-size: 1.8rem;
	}
	.orderform_first {
		margin: 30px 0 0;
	}
	.bill_cont .regist_form dl.last {
		padding: 5% 20px 0;
	}
	.bill_cont .bglayer_inner {
		padding: 40px 0 10px 0;
	}
	.bill_cont .remarks {
		padding: 5% 20px 0;
	}
	.reflect_wrap {
		padding: 5% 20px;
		text-align: left;
	}
	.submit_area .error_msg {
		text-align: center;
	}
	.submit_area .error_msg:before {
		position: relative;
		top: 2px;
		left: -5px;
	}
}


/*step2*/
.bill_cont .total_area dl {
	padding: 0;
	border-bottom: none;
}
.bill_cont .total_area {
	padding: 0;
}
.bill_cont .total_area dt {
	font-size: 1.3rem;
}
.bill_cont .total_area dt,
.bill_cont .total_area dd {
	padding: 2px 0;
	font-weight: normal;
}
.regist_form .total_area dt span {
	margin: 0;
	display: inline-block;
	color: #CB5E5E;
	font-size: 1.3rem;
}
.bill_cont .total_area dd input {
	width: 130px;
	height: 40px;
	text-align: right;
	background: #F7F7F7;
}
.bill_cont .total_area dl:last-of-type {
	padding: 0;
}
.mmyy_wrap {
	padding: 0 0 5%;
	border-bottom: 1px solid #ECECEC;
}
.mmyy_wrap dl {
	padding: 5% 0 0;
	border-bottom: none;
}
.regist_form .bglayer_inner .mmyy_wrap dl:first-of-type {
	border-top: none;
}
.mmyy_wrap .select_mm,
.mmyy_wrap .select_yy {
	display: inline-block;
}
.mmyy_wrap .select_mm select {
	width: 80px;
}
.mmyy_wrap .select_yy select {
	width: 106px;
}
.mmyy_wrap .slct_label + span {
	margin: 0 7px;
}
.regist_form .security_code {
	padding: 15px 0 0;
	border-bottom: none;
}
.regist_form .security_code dt {
	margin: 0;
	font-weight: normal;
	cursor: pointer;
	position: relative;
}
.regist_form .security_code dt:after {
	font-family: icoi;
	content: "\e904";
	margin: 0 0 0 10px;
	font-size: 1.6rem;
	vertical-align: middle;
	display: inline-block;
	color: #BFB59A;
	line-height: 1.1;
	transition: all 0.3s ease-out;
}
.regist_form .security_code dt.open:after {
	-webkit-transform: rotateX(180deg);
	transform: rotateX(180deg);
}
.regist_form .security_code dd {
	display: none;
}
.regist_form .security_code dd figure {
	margin: 20px auto 0;
}
.regist_form .security_code img {
	width: 100%;
	display: block;
}
.regist_form .security_code_title dt {
	cursor: pointer;
	position: relative;
}
.regist_form .security_code_title dt:after {
	font-family: icoi;
	content: "\e904";
	margin: 0 0 0 10px;
	font-size: 1.6rem;
	vertical-align: middle;
	display: inline-block;
	color: #BFB59A;
	line-height: 1.1;
	transition: all 0.3s ease-out;
}
.regist_form .security_code_title dt.open:after {
	-webkit-transform: rotateX(180deg);
	transform: rotateX(180deg);
}
.regist_form .security_code_title dd {
	display: none;
}
.regist_form .security_code_title dd figure {
	margin: 20px auto 0;
}
.regist_form .security_code_title img {
	width: 100%;
	display: block;
}
.bill_cont .regist_form dl.num_pay {
	margin: 0 0 30px;
	padding: 5% 0;
	border-bottom: 1px solid #ECECEC;
}
.num_pay dd {
	font-size: 1.2rem;
}
.num_pay dd span {
	margin: 0 0 5px;
	display: block;
	font-size: 1.5rem;
}
.bill_cont .consent_link {
	margin: 0 auto -10px;
	padding: 30px 0 0;
	text-align: center;
	font-size: 1.2rem;
}
.bill_cont .consent_link a {
	text-decoration: underline;
}

/*PC HOVER*/
@media only screen and (min-width: 768px) {
	body:not(.tab_view) .bill_cont .consent_link a:hover {
		text-decoration: none;
	}
}

@media only screen and (min-width: 768px) {
	.mmyy_wrap {
		padding: 0 20px 5%;
	}
	.regist_form .security_code dt {
		font-size: 1.3rem;
	}
	.regist_form .security_code img {
		width: 400px;
		margin: 0 auto;
	}
	.regist_form .security_code_title dt {
		font-size: 1.3rem;
	}
	.regist_form .security_code_title img {
		width: 400px;
		margin: 0 auto;
	}
	.bill_cont .regist_form dl.num_pay {
		padding: 5% 20px;
	}
}

/*step3*/
.bill_cont .thanks_wrap {
	margin: 30px 0 0;
}
.bill_cont .thanks_wrap h1 {
	margin: 0 auto;
	color: #BFB59A;
	font-size: 2.4rem;
	font-weight: normal;
	text-align: center;
	letter-spacing: 2px;
	font-family: 'Lato', YuGothic, "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
.bill_cont .thanks_wrap h1 span {
	font-size: 1.2rem;
	color: #BFB59A;
	letter-spacing: 1px;
	display: block;
}
.sent_mail {
	width: 156px;
	margin: 25px auto;
	display: block;
}
.order_number {
	margin: 0 auto 20px;
	padding: 15px 0;
	line-height: 1.1;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	background: #F9F8F5;
}
.order_number dt {
	display: inline-block;
}
.order_number dd {
	display: inline-block;
	color: #CB5E5E;
}
.order_number dd a {
	color: #CB5E5E;
	text-decoration: none;
}
.thanks_wrap a {
	color: #BFB59A;
	text-decoration: underline;
}
.contacts_link {
	margin: 0 0 15px;
	text-align: center;
}
.contacts_link span a:link {
	color: #CB5E5E;
	text-decoration: underline;
}
.contacts_link span a:visited {
	color: #CB5E5E;
	text-decoration: underline;
}
.sheet_link {
	margin: 0 0 30px;
}
.sheet_link p {
	text-align: center;
	margin: 0 auto 15px;
}

/*PC HOVER*/
@media only screen and (min-width: 768px) {
	body:not(.tab_view) .thanks_wrap a:hover {
		text-decoration: none;
	}
}

@media only screen and (min-width: 768px) {
	.bill_cont .thanks_wrap h1 {
		font-size: 2.6rem;
		margin: 30px auto 0;
	}
	.bill_cont .thanks_wrap h1 span {
		margin: 5px 0 0 0;
	}
	.sent_mail {
		margin: 30px auto;
	}
	.order_number {
		width: 500px;
		padding: 30px 0;
	}
	.thanks_wrap p {
		text-align: center;
	}
}

/* ------------------------------------
	order frequent
------------------------------------ */
.bill_cont.frequent .total_area {
	margin: 20px 0 0;
}
.bill_cont.frequent .title {
	margin: 0 0 10px;
	font-size: 1.4rem;
	line-height: 1.1;
	font-weight: bold;
}
.consent_link.avobe {
	padding: 0;
}
.info_box {
	margin: 0 0 20px;
	padding: 15px;
	font-size: 1.4rem;
	position: relative;
	border: 1px solid #E6E6E6;
	background: #FFF;
}
.info_box.invalid {
	border: 2px solid #CB5E5E;
}
.bill_cont .regist_form .info_box + .error_msg {
	margin: -13px 0 20px;
}
.info_box .ttl {
	font-weight: bold;
}
.info_box .change {
	padding: 3px 10px;
	line-height: 1;
	color: #808181;
	font-size: 1.1rem;
	position: absolute;
	top: 17px;
	right: 15px;
	border: 1px solid #808181;
	border-radius: 60px;
	transition: all 0.3s ease-out;
}
.bill_cont.frequent .regist_form .publisher_area {
	padding: 0;
}
.bill_cont.frequent .regist_form .publisher_area > dt {
	margin: 0;
}
.bill_cont.frequent .regist_form .publisher_area > dd {
	padding: 0;
}
.bill_cont.frequent .regist_form .publisher_area li:last-of-type:before {
	content: none;
}

/*PC HOVER*/
@media only screen and (min-width: 768px) {
	body:not(.tab_view) .info_box .change:hover {
		color: #FFF;
		background: #808181;
	}
}

/* IE */
@media all and (-ms-high-contrast:none){
	.info_box .change {
		padding: 5px 10px 1px;
	}
}

.info_box .cards_change {
	padding: 3px 10px;
	line-height: 1;
	color: #808181;
	font-size: 1.1rem;
	border: 1px solid #808181;
	border-radius: 60px;
	transition: all 0.3s ease-out;
	font-weight: normal;
	text-decoration: none;
}

/*PC HOVER*/
@media only screen and (min-width: 768px) {
	body:not(.tab_view) .info_box .cards_change:hover {
		color: #FFF;
		background: #808181;
	}
}

/* ------------------------------------
	regist_info
------------------------------------ */
.regist_info h1 {
	margin: 30px 0 15px;
	text-align: left;
	color: #444;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.1;
}
.info_wrap {
	border-right: 1px solid #E6E6E6;
	border-bottom: 1px solid #E6E6E6;
	border-left: 1px solid #E6E6E6;
}
.info_wrap > li {
	padding: 15px;
	transition: all 0.3s ease-out;
	border-top: 1px solid #E6E6E6;
}
.info_wrap > li.active {
	background: #F9F8F5;
}
.info_wrap > li.invalid {
	border: 2px solid #CB5E5E;
}
.info_wrap .select_mark {
	margin: 0 0 10px;
	padding: 0 0 0 33px;
	position: relative;
	font-size: 1.2rem;
	line-height: 2.2;
	cursor: pointer;
	display: inline-block;
}
.info_wrap .select_mark:before {
	content: "";
	width: 25px;
	height: 25px;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	background: #fff;
	border-radius: 50%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	border: 1px solid #D9D9D9;
	transition: all 0.3s ease-out;
}
.info_wrap .select_mark:after {
	font-family: icoi;
	content: "\e90b";
	font-size: 1rem;
	line-height: 1;
	display: block;
	position: absolute;
	top: 55%;
	left: 6px;
	color: #BFB59A;
	-webkit-transform: translate(0, -50%) scale(0);
	transform: translate(0, -50%) scale(0);
	border-radius: 50%;
	-webkit-transform-origin: center;
	transform-origin: center;
	transition: all 0.3s ease-out;
}
.info_wrap > li.active .select_mark:after {
	-webkit-transform: translate(0, -50%) scale(1);
	transform: translate(0, -50%) scale(1);
}
.info_wrap > li .info_detail dt {
	margin: 0 0 5px;
	font-size: 1.4rem;
	line-height: 1.1;
	font-weight: bold;
}
.info_wrap > li .info_detail dd {
	font-size: 1.4rem;
	line-height: 1.5;
}
.del_confirm {
	position: relative;
}
.del_confirm_inner {
	display: none;
	overflow: hidden;
}
.del_confirm span,
.del_confirm .error_msg {
	font-size: 1.2rem;
}
.del_confirm .error_msg:before {
	top: 1px;
}
.del_confirm ul {
	margin: 10px 0;
	overflow: hidden;
}
.del_confirm ul li {
	width: 49%;
	margin: 0 2% 0 0;
	float: left;
	text-align: center;
}
.del_confirm ul li:last-child {
	margin: 0;
}
.del_confirm ul li a {
	height: 40px;
	line-height: 40px;
	display: block;
	border-radius: 5px;
	transition: all 0.3s ease-out;
}
.del_confirm ul li a.quit {
	color: #444;
	border: 1px solid #707070;
}
.del_confirm ul li a.delete_exe {
	color: #FFF;
	border: 1px solid #BFB59A;
	background: #BFB59A
}
a.delete_btn {
	font-size: 1.1rem;
	color: #BFB59A;
	text-decoration: underline;
	position: absolute;
	right: 0;
	top: -20px;
}
.new_info > dt {
	padding: 0 30px 0 0;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.5;
	cursor: pointer;
	position: relative;
}
.new_info > dt:after {
	font-family: icoi;
	content: "\e904";
	font-size: 1.6rem;
	font-weight: normal;
	display: block;
	color: #BFB59A;
	position: absolute;
	top: 0;
	right: 0;
	transition: all 0.3s ease-out;
}
.new_info > dt.open:after {
	-webkit-transform: rotateX(180deg);
	transform: rotateX(180deg);
}
.new_info > dd {
	display: none;
}
.new_info .regist_form {
	border: none;
}
.new_info .regist_form .reflect_wrap {
	padding: 5% 0 0;
}
.new_info .submit_area {
	margin: 30px 0 15px;
}
.alert_msg.type_top {
	margin: 30px 0 0;
	padding: 0;
}
.regist_info .valid_msg {
	margin: 30px 0 -10px;
}

/*PC HOVER*/
@media only screen and (min-width: 768px) {
	body:not(.tab_view) a.delete_btn:hover {
		text-decoration: none;
	}
	body:not(.tab_view) .del_confirm ul li a.quit:hover {
		color: #FFF;
		background: #444;
		border: 1px solid #444;
	}
	body:not(.tab_view) .del_confirm ul li a.delete_exe:hover {
		opacity: 0.7;
	}
}

@media only screen and (min-width: 768px) {
	.regist_info h1 {
		font-size: 1.8rem;
		margin: 30px 0 20px;
	}
	.alert_msg.type_top {
		margin: 30px 0;
	}
	.new_info .regist_form .reflect_wrap {
		padding: 5% 20px 0;
	}
	.del_confirm ul {
		text-align: center;
	}
	.del_confirm ul li {
		width: 230px;
		margin: 0 10px;
		float: none;
		display: inline-block;
	}
}

/* IE */
@media all and (-ms-high-contrast:none){
	.regist_info .valid_msg {
		line-height: 45px;
	}
	.del_confirm .error_msg:before {
		top: 0;
	}
}

/*modal regist_over_cont*/
.regist_over_btn a {
	display: block;
}
.regist_over_cont figure {
	width: 100%;
	margin: 0 auto 20px;
}
.regist_over_cont figure img {
	width: 100%;
}

@media only screen and (min-width: 768px) {
	.regist_over_cont figure {
		width: 350px;
	}
}

/* ------------------------------------
	brand
------------------------------------ */
.brand_catch {
	margin: 30px 0;
	font-size: 1.3rem;
	text-align: center;
}
.brand_catch figure {
	margin: 0 auto 20px;
}
.brand_catch img {
	width: 64px;
}

@media only screen and (min-width: 768px) {
}


/* ------------------------------------
	aside
------------------------------------ */
aside {
	display: none;
}

@media only screen and (min-width: 768px) {
	aside {
		display: block;
		width: 180px;
		float: left;
	}
	aside dl {
		margin: 40px 0 0;
	}
	aside dl:first-child {
		margin: 0;
	}
	aside dt:not(.main_category, .sub_category) {
		margin: 0 0 25px;
		padding: 0 0 12px;
		line-height: 1.1;
		letter-spacing: 2px;
		font-size: 2rem;
		font-family: 'Lato', sans-serif;
		border-bottom: 1px solid #ECECEC;
	}
	aside dt span {
		color: #BFB59A
	}
	aside dd li {
		margin: 0 0 20px;
		position: relative;
	}
	aside dd li:not(.sub_category, .subsub_category):before {
		font-family: icoi;
		content: "\e900";
		margin: 0 8px 0 0;
		font-size: 1rem;
		line-height: 1;
		display: inline-block;
		vertical-align: middle;
		color: #AAA;
		z-index: 1;
		-webkit-transform: scale(0.7);
		transform: scale(0.7);
		position: absolute;
		top: 3px;
		left: 0;
	}
	aside dl.leftmanu_category dl {
		margin: 0;
		cursor: pointer;
	}
	aside dt.main_category {
		margin: 0 0 20px;
		display: block;
		font-size: 1.5em;
		line-height: 1.1;
		transition: all 0.3s ease-out;
		position: relative;
	}
	aside dt.main_category:before {
		font-family: icoi;
		content: "\e900";
		margin: 5px 0 0 0;
		font-size: 1rem;
		line-height: 1;
		display: inline-block;
		vertical-align: middle;
		color: #AAA;
		z-index: 1;
		position: absolute;
		top: 3px;
		left: 0;
		-webkit-transform: translate(0, -50%) scale(0.7) rotateZ(0deg);
		transform: translate(0, -50%) scale(0.7) rotateZ(0deg);
	}
	aside dt.main_category.open:before {
		-webkit-transform: translate(0, -50%) scale(0.7) rotateZ(90deg);
		transform: translate(0, -50%) scale(0.7) rotateZ(90deg);
	}
	aside dt.main_category div {
		padding-left: 12px;
	}
	aside dt.sub_category {
		margin: 0 0 20px;
		display: block;
		font-size: 1.5em;
		line-height: 1.1;
		transition: all 0.3s ease-out;
		position: relative;
	}
	aside dt.sub_category:before {
		font-family: icoi;
		content: "\e900";
		margin: 5px 0 0 0;
		font-size: 1rem;
		line-height: 1;
		display: inline-block;
		vertical-align: middle;
		color: #AAA;
		z-index: 1;
		position: absolute;
		top: 3px;
		left: 0;
		-webkit-transform: translate(0, -50%) scale(0.7) rotateZ(0deg);
		transform: translate(0, -50%) scale(0.7) rotateZ(0deg);
	}
	aside dt.sub_category.open:before {
		-webkit-transform: translate(0, -50%) scale(0.7) rotateZ(90deg);
		transform: translate(0, -50%) scale(0.7) rotateZ(90deg);
	}
	aside dt.sub_category div {
		padding-left: 12px;
	}
	aside dd li a {
		padding: 0 0 0 12px;
		display: block;
		font-size: 1.5em;
		line-height: 1.1;
		transition: all 0.3s ease-out;
	}
	aside dd li a:hover {
		color: #BFB59A;
	}

	.leftmenu_paragraph {
		padding-left: 1.5rem;
	}
}

/* ------------------------------------
	float_menu
------------------------------------ */
.icomart_no_float .float_menu {
	width: 70px;
	height: 180px;
	position: absolute;
	right: 0;
	bottom: 5px;
	z-index: 1;
}

/* ------------------------------------
	footer
------------------------------------ */
.icomart footer {
	padding: 0 0 20px;
}
.help_link {
	margin: 0 0 20px;
	text-align: left;
	overflow: hidden;
	border-bottom: 1px solid #ECECEC;
}
.help_link li {
	width: 50%;
	padding: 7px 0;
	float: left;
	position: relative;
}
.help_link li:before {
	content: "";
	width: 95%;
	height: 1px;
	display: block;
	position: absolute;
	top: -1px;
	border-top: 1px solid #ECECEC;
}
.help_link li:nth-child(odd):before {
	left: 0;
}
.help_link li:nth-child(even):before {
	right: 0;
}
.help_link li a {
	display: block;
	font-size: 1.2rem;
}
.help_link li:nth-child(odd) a {
	padding: 2px 17px 2px 7px;
	border-right: 1px solid #ECECEC;
}
.help_link li:nth-child(even) a {
	padding: 2px 0 2px 12px;
}

@media only screen and (min-width: 768px) {
	.icomart footer {
		padding: 0 0 40px;
	}
	.help_link {
		width: 1200px;
		margin: 0 auto 30px;
		text-align: center;
	}
	.help_link li {
		width: 16%;
		padding: 20px 0;
		float: none;
		display: inline-block;
	}
	.help_link li:before {
		content: none;
	}
	.help_link li:nth-child(odd) a,
	.help_link li:nth-child(even) a {
		padding: 0;
		border-right: 1px solid #ECECEC;
	}
	.help_link li:last-child a {
		border-right: none;
	}
	.icomart footer .sns_link {
		top: 100px;
	}
}

/* ------------------------------------
	underine Hover
------------------------------------ */
@media only screen and (min-width: 768px) {
	body:not(.tab_view) .publisher_area .item_info .name a:hover,
	body:not(.tab_view) .publisher_area .item_info .delete:hover {
		text-decoration: none;
	}
}

/* ------------------------------------
	Opacity Hover
------------------------------------ */
.icomart_key_visual a,
.relatelist a,
.lowerlist a,
.column_list a,
.thumb_list a,
.color_select a,
.icomart_item_detail li,
.publisher_area .item_wrap figure img,
.publisher_area .free_ship,
.regist_form .security_code dt,
.regist_form .security_code_title dt,
.new_info > dt,
.info_wrap .select_mark span {
	transition: all 0.3s ease-out;
}

@media only screen and (min-width: 768px) {
	body:not(.tab_view) .icomart_key_visual a:hover,
	body:not(.tab_view) .relatelist a:hover,
	body:not(.tab_view) .lowerlist a:hover,
	body:not(.tab_view) .column_list a:hover,
	body:not(.tab_view) .thumb_list a:hover,
	body:not(.tab_view) .color_select a:hover,
	body:not(.tab_view) .icomart_item_detail li:hover,
	body:not(.tab_view) .publisher_area .item_wrap figure img:hover,
	body:not(.tab_view) .publisher_area .free_ship:hover,
	body:not(.tab_view) .regist_form .security_code dt:hover,
	body:not(.tab_view) .regist_form .security_code_title dt:hover,
	body:not(.tab_view) .new_info > dt:hover,
	body:not(.tab_view) .info_wrap .select_mark span:hover {
		opacity: 0.7;
	}
}

/* ------------------------------------
	ClearFixElements
------------------------------------ */
.cf:before,
.cf:after {
	content: " ";
	display: table;
}
.cf:after {
	clear: both;
}

/* ------------------------------------
	type_static
------------------------------------ */
.type_static h2 {
    margin: 0 0 17px;
    padding: 0 0 0 10px;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.5;
    border-left: 4px solid #BFB59A;
}
.type_static h3 {
    margin: 0 0 18px;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.5;
}
.type_static strong {
    color: #CB5E5E;
}
.type_static p a {
    color: #BFB59A;
    text-decoration: underline;
}
.type_static .img_c {
    margin: 0 0 20px;
    text-align: center;
}
.type_static .img_c img {
    max-width: 100%;
    margin: 0 auto 20px;
    display: block;
}
.type_static .text_link {
    margin: 0 0 30px;
}
.type_static .icon_arrow {
    font-size: 1.3rem;
}
.type_static .item_spec table {
    margin: 0 0 30px;
}

@media only screen and (min-width: 768px) {
    .type_static h2 {
        font-size: 2rem;
    }
    .type_static h3 {
        font-size: 1.6rem;
    }
}

@media all and (-ms-high-contrast: none){
	.total_area dd input {
		padding: 10px 15px;
}
}

/* ------------------------------------
	brand
------------------------------------ */
.brand_img {
	height: 145px;
}

/*bs_intro*/
.bs_intro {
	width: 90%;
	margin: -20px auto 15px;
	padding: 10px 0 0;
	font-size: 1.3rem;
	text-align: center;
	background: #FFF;
}
.bs_intro .brand_logo {
	text-align: center;
	margin: 0 auto;
}
.bs_intro .brand_logo img {
	width: 90px;
}
.desc_wrap.close .desc_cont {
	display: none;
}
.desc_wrap {
	padding: 0 0 15px;
}
.desc_wrap .desc_cont {
	line-height: 1.8;
}
.desc_wrap .submit_area {
	margin: 20px 0 15px;
}
.desc_wrap .submit_area a {
	font-family: 'Lato', sans-serif;
}
.desc_wrap .desc_btn {
	cursor: pointer;
}
.desc_wrap .desc_btn:after {
	font-family: icoi;
	content: "\e904";
	margin: -2px 0 0 5px;
	font-size: 1.3;
	text-decoration: none;
	vertical-align: middle;
	display: inline-block;
	color: #BFB59A;
	transition: all 0.3s ease-out;
	-webkit-transform: rotateX(180deg);
	transform: rotateX(180deg);
}
.desc_wrap .desc_btn.toggle:after {
	-webkit-transform: rotateX(0);
	transform: rotateX(0);
}
.desc_wrap.close .desc_btn:after {
	-webkit-transform: rotateX(0);
	transform: rotateX(0);
}
.desc_wrap.close .desc_btn.toggle:after {
	-webkit-transform: rotateX(180deg);
	transform: rotateX(180deg);
}

@media only screen and (min-width: 768px) {
	.brand_img {
		height: 300px;
	}
	.bs_intro {
		width: 980px;
		margin: -50px auto 30px;
		padding: 20px 0 0;
		font-size: 1.5rem;
	}
	.bs_intro .brand_logo img {
		width: 160px;
	}
	.desc_wrap {
		padding: 0 0 30px;
	}
}

/*brand_cat*/
.brand_cat {
	width: 100%;
	margin: 0 0 20px;
	font-size: 1.1rem;
	cursor: pointer;
	position: relative;
	z-index: 2;
}
.brand_cat span {
	display: block;
	padding: 9px 25px;
	position: relative;
	font-size: 1.6rem;
	background: #F7F7F7;
	border-radius: 5px;
	transition: all 0.3s ease-out;
}
.brand_cat span:after {
	font-family: icoi;
	content: "\e900";
	display: block;
	color: #BFB59A;
	position: absolute;
	top: 50%;
	right: 15px;
	-webkit-transform: translate(0, -50%) rotate(90deg);
	transform: translate(0, -50%) rotate(90deg);
	pointer-events: none;
	transition: all 0.3s ease-out;
}
/*.brand_cat span.open:after {
	-webkit-transform: translate(0, -50%) rotate(90deg)rotateY(180deg);
	transform: translate(0, -50%) rotate(90deg)rotateY(180deg);
}*/
.brand_cat > ul {
	display: none;
	width: 100%;
	position: absolute;
	border-radius: 5px;
	border-top: 1px solid #ECECEC;
	border-right: 1px solid #ECECEC;
	border-left: 1px solid #ECECEC;
}
.brand_cat > ul li a {
	display: block;
	padding: 14px 25px;
	font-size: 1.4rem;
	line-height: 1.2;
	border-bottom: 1px solid #ECECEC;
	background: #FFF;
}
.brand_cat ul li:first-child a {
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
}
.brand_cat > ul li:last-child a {
	border-bottom-right-radius: 5px;
	border-bottom-left-radius: 5px;
}
.brand_cat dt.main_category {
	padding: 14px 25px;
	font-size: 1.3rem;
	line-height: 1.2;
	cursor: pointer;
	border-bottom: 1px solid #ECECEC;
	background: #FFF;
	position: relative;
}
.brand_cat dt.sub_category {
	padding: 14px 25px;
	font-size: 1.3rem;
	line-height: 1.2;
	cursor: pointer;
	border-bottom: 1px solid #ECECEC;
	background: #FFF;
	position: relative;
}
.brand_cat dd li.sub_category {
	font-size: 1.4rem;
	line-height: 1.2;
	cursor: pointer;
}
.brand_cat dd li.sub_category a {
	padding-left: 39px;
	background: #fcfcfc;
}
.brand_cat li.subsub_category {
	font-size: 1.4rem;
	line-height: 1.2;
	cursor: pointer;
}
.brand_cat li.subsub_category a {
	padding-left: 39px;
	background: #fcfcfc;
}
.brand_cat dt.main_category:before {
	font-family: icoi;
	content: "\e900";
	font-size: 1.0rem;
	vertical-align: middle;
	display: inline-block;
	color: #444;
	line-height: 1.2;
	transition: all 0.3s ease-out;
	position: absolute;
	top: 50%;
	right: 14px;
	-webkit-transform: translate(0, -50%) rotateZ(90deg);
	transform: translate(0, -50%) rotateZ(90deg);
}
.brand_cat dt.main_category.open:before {
	-webkit-transform: translate(0, -50%) rotateZ(270deg);
	transform: translate(0, -50%) rotateZ(270deg);
}
.brand_cat dt.sub_category:before {
	font-family: icoi;
	content: "\e900";
	font-size: 1.0rem;
	vertical-align: middle;
	display: inline-block;
	color: #444;
	line-height: 1.2;
	transition: all 0.3s ease-out;
	position: absolute;
	top: 50%;
	right: 14px;
	-webkit-transform: translate(0, -50%) rotateZ(90deg);
	transform: translate(0, -50%) rotateZ(90deg);
}
.brand_cat dt.sub_category.open:before {
	-webkit-transform: translate(0, -50%) rotateZ(270deg);
	transform: translate(0, -50%) rotateZ(270deg);
}
.sort_area.type_brand {
	margin: 0 0 20px;
}

/* ------------------------------------
	series
------------------------------------ */
.series_img {
	width: 100%;
	margin: 0 auto 30px;
}
.series_img img {
	width: 100%;
	display: block;
}

/*bs_intro*/
.bs_intro.type_series {
	margin: 0 auto 30px;
	padding: 0;
}

@media only screen and (min-width: 768px) {
	.series_img {
		width: 980px;
		margin: 0 auto 30px;
	}
	.bs_intro.type_series {
		margin: 0 auto 30px;
		padding: 0;
	}
}


.mod_subscriptionPlanModal .ttl {
	padding-top: 4.5rem;
	background: url("/img/icomart/icon_subscription.svg") center 0 no-repeat;
	background-size: 4rem auto;
	font-weight: bold;
}

.mod_subscriptionPlanModal .ttl_ja {
	margin-bottom: 0;
	font-size: 1.4rem;
}

.mod_subscriptionPlanModal .ttl_en {
	font-size: 1.2rem;
	color: #bfb59a;
}

.mod_subscriptionPlanModal .list {
	margin-bottom: 2.5rem;
	padding-left: 1rem;
	text-align: left;
}

.mod_subscriptionPlanModal .item {
	position: relative;
	margin-bottom: 1rem;
	font-size: 1.3rem;
}

.mod_subscriptionPlanModal .item::before {
	content: "";
	display: inline-block;
	width: .5rem;
	height: .5rem;
	margin-left: -1rem;
	margin-right: .5rem;
	background-color: #bfb59a;
	border-radius: 50%;
	vertical-align: middle;
	color: #bfb59a;
}

.mod_subscriptionPlanModal .item_notes {
	display: block;
	line-height: 1;
	font-size: 1.1rem;
}

.mod_subscriptionPlanModal .item_anchor {
	color: #bfb59a;
	text-decoration: underline;
}

.mod_subscriptionPlanModal .buttons {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.mod_subscriptionPlanModal .basic_btn {
	width: 100%;
}

.mod_subscriptionPlanModal .basic_btn + .basic_btn {
	margin-top: 1rem;
}

@media only screen and (min-width: 768px) {
	.mod_subscriptionPlanModal .body {
		width: 528px;
		margin: auto;
	}
	.mod_subscriptionPlanModal .list {
		margin-left: 12px;
	}
	.mod_subscriptionPlanModal .item_notes {
		display: inline;
	}
	.mod_subscriptionPlanModal .basic_btn {
		width: 240px;
		margin: 0 12px;
	}
	.mod_subscriptionPlanModal .basic_btn + .basic_btn {
		margin-top: 0;
	}
}

/* 利用規約モーダル */
.mod_subscriptionTermsModal {
	padding: 30px 15px;
}

.mod_subscriptionTermsModal .ttl {
	font-size: 1.4rem;
	font-weight: bold;
}

.mod_subscriptionTermsModal .list {
	margin-bottom: 2.5rem;
	padding-left: 1rem;
	text-align: left;
}

.mod_subscriptionTermsModal .item {
	position: relative;
	margin-bottom: 1rem;
	font-size: 1.3rem;
}
.mod_subscriptionTermsModal .item::before {
	content: "";
	display: inline-block;
	width: .5rem;
	height: .5rem;
	margin-left: -1rem;
	margin-right: .5rem;
	background-color: #bfb59a;
	border-radius: 50%;
	vertical-align: middle;
	color: #bfb59a;
}
.mod_subscriptionTermsModal .item_notes {
	display: block;
	line-height: 1;
	font-size: 1.1rem;
}
.mod_subscriptionTermsModal .item_anchor {
	color: #bfb59a;
	text-decoration: underline;
}

.mod_subscriptionTermsModal .termsOfService {
	overflow-y: scroll;
	height: 16rem;
	padding: 3rem 1.5rem 0;
	border: 1px solid #d9d9d9;
	border-radius: .5rem;
}
.mod_subscriptionTermsModal .termsOfService_ttl {
	margin-bottom: 2.5rem;
	line-height: 1;
	font-size: 1.4rem;
	font-weight: bold;
}
.mod_subscriptionTermsModal .termsOfService_txt {
	margin-bottom: 2.5rem;
	text-align: left;
	font-size: 1.2rem;
}
.mod_subscriptionTermsModal .termsOfService_list {
	list-style: none;
	text-align: left;
}
.mod_subscriptionTermsModal .termsOfService_item_ttl {
	margin-bottom: 0;
	font-size: 1.3rem;
	font-weight: bold;
}
.mod_subscriptionTermsModal .termsOfService_item_txt {
	font-size: 1.2rem;
}

.mod_subscriptionTermsModal .label {
	cursor: pointer;
	display: inline-block;
	position: relative;
	margin: 2rem;
}
.mod_subscriptionTermsModal .label input {
	display: none;
}
.mod_subscriptionTermsModal .label span {
	display: inline-block;
	height: 18px;
	line-height: 18px;
	font-size: 1.4rem;
	position: relative;
}
.mod_subscriptionTermsModal .label span:before {
	font-family: icoi;
	content: "\e90b";
	font-size: 1.1rem;
	line-height: 1;
	display: block;
	position: absolute;
	top: 52%;
	left: 20px;
	color: #BFB59A;
	-webkit-transform: translate(0, -50%) scale(0);
	transform: translate(0, -50%) scale(0);
	border-radius: 50%;
	-webkit-transform-origin: center;
	transform-origin: center;
	transition: all 0.3s ease-out;
}
.mod_subscriptionTermsModal .label i {
	width: 18px;
	height: 18px;
	margin: 0 10px 0 0;
	display: inline-block;
	position: relative;
	vertical-align: middle;
	background: #fff;
	border: 1px solid #aaa;
	border-radius: 4px;
}
.mod_subscriptionTermsModal .label i:after {
	font-family: icoi;
	content: "\e90b";
	font-size: 1.1rem;
	line-height: 1;
	display: block;
	position: absolute;
	top: 52%;
	left: -2px;
	color: #fff;
	-webkit-transform: translate(0, -50%) scale(0);
	transform: translate(0, -50%) scale(0);
	border-radius: 50%;
	-webkit-transform-origin: center;
	transform-origin: center;
	transition: all 0.3s ease-out;
}
.mod_subscriptionTermsModal .label input:checked + span i {
	border-color: transparent;
	background-color: #bfb59a;
}
.mod_subscriptionTermsModal .label input:checked + span i:after {
	-webkit-transform: translate(0, -50%) scale(0.6);
	transform: translate(0, -50%) scale(0.6);
}
.mod_subscriptionTermsModal .basic_btn {
	width: 100%;
}
.mod_subscriptionTermsModal .basic_btn:disabled {
	opacity: .4;
	border-color: transparent;
	background-color: #e5e1d6;
	color: #444;
	pointer-events: none;
}

@media only screen and (max-width: 320px) {
	.mod_subscriptionTermsModal {
		padding: 15px;
	}
}

@media only screen and (min-width: 768px) {
	.mod_subscriptionTermsModal .ttl {
		font-size: 1.6rem;
	}
	.mod_subscriptionTermsModal .body {
		width: 528px;
		margin: auto;
	}
	.mod_subscriptionTermsModal .basic_btn {
		display: block;
		width: 300px;
		margin: auto;
	}
}

.mod_notFoundModal {
	max-width: 500px;
	padding: 30px;
}

.mod_notFoundModal .ttl {
	font-size: 1.4rem;
	font-weight: bold;
}

.mod_notFoundModal .basic_btn {
	width: 100%;
}

@media only screen and (min-width: 768px) {
	.mod_notFoundModal {
		width: 500px;
	}
	.mod_notFoundModal .ttl {
		font-size: 1.6rem;
	}
	.mod_notFoundModal .basic_btn {
		display: block;
		width: 300px;
		margin: auto;
	}
}

.purchase_list .item_image {
	position: relative;
	overflow: hidden;
}
