@charset 'utf-8';
/***********************************
 reset
***********************************/
@font-face {
	font-family: YuGothicM;
	src: local("Yu Gothic Medium");
}
*, html, body, div, dl, dt, dd, ul, ol, li, header, footer, nav,section,
h1, h2, h3, h4, h5, h6, form, input, textarea, p{
	margin: 0;
	padding: 0;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
	font-size: 1em;
}
dl, ul, ol{
	list-style-type: none;
}
img{
	max-width: 100%;
}

html{
	overflow: unset;
	height: auto;
	min-height: 100%;
}

input[type="submit"],
input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}
/***********************************
 base
***********************************/
body{
	position: relative;
	background: none;
	min-width: 1200px;
	height: 100vh;
	min-height: 100%;
	line-height: 1.6em;
	letter-spacing: 0.07em;
	color: #0f0f0f;
	font-size: 15px;
	text-align: center;
}
@media screen and (max-width: 640px) {
	body{
		min-width: 100%;
		line-height: 1.3em;
	}
}
article,
section,
div.container{
	clear: both;
	position: relative;
	margin: auto;
	overflow: hidden;
}
article{
	margin: 0 0 40px;
	padding: 20px;
	background: #ffffff;
}
@media screen and (max-width: 640px) {
	article{
		margin: 0 0 20px;
		padding: 20px 10px;
	}
}

div.container{
//	width: calc(1200px - 20px);
	width: 1100px;
}
@media screen and (max-width: 640px) {
	div.container{
		width: calc(100% - 16px);
	}
}

section{
	overflow: visible;
}
section + section{
	margin: 30px auto 0;
}
section + section > h3{
	margin-top: 20px;
}

a:link , a:hover, a:active, a:visited{
	transition: all 1.0s;
	color: #0089ff;
	text-decoration: none;
	cursor: pointer;
}
a:hover{
	color: #55b4ff;
}

/***********************************
 #breadcrumb
***********************************/
nav#breadcrumbs{
	margin: 1px 0 30px;
	background: url(../images/bg_green.png);
	min-height: 34px;
}
nav#breadcrumbs ol{
	margin: 0 auto;
	padding: 5px 10px;
	width: calc(1100px - 20px);
	text-align: left;
}
nav#breadcrumbs ol li{
	position: relative;
	display: inline-block;
	padding-right: 40px;
}
nav#breadcrumbs ol li:after{
	position: absolute;
	top: 0;
	right: 10px;
	display: block;
	content: ">";
	color: #efefef;
}
nav#breadcrumbs ol li:last-child:after{
	display: none;
}
nav#breadcrumbs ol li a{
	color: #ffffff;
}
nav#breadcrumbs ol li a:hover{
	color: #ddcef6;
	text-decoration: underline;
}

@media screen and (max-width: 640px) {
	nav#breadcrumbs ol{
		padding: 5px 8px;
		width: calc(100% - 16px);
		font-size: 0.9em;
	}
	nav#breadcrumbs ol li{
		padding-right: 1em;
	}
	nav#breadcrumbs ol li:after{
		top: auto;
		bottom: 2px;
		right: 0px;
		font-size: 0.8em;
	}
}

/***********************************
 .ul4, .row, .column
***********************************/
.ul4 li{
	float: left;
	margin: 0 10px 8px 0;
	width: calc(100% /4 - 30px /4);
}
.ul4 li:nth-child(4n){
	margin: 0 0 8px;
}

.row{
	position: relative;
	display: -webkit-flex;
	display: flex;
	width: calc(100% + 15px);
	margin: 0 0 20px;
}
.row:after{
	clear: both;
	display: block;
	content: "";
}
.column1,
.row .column2,
.row .column3-1,
.row .column3-2,
.row .column4-1,
.row .column4-3,
.row .column5-1{
	display: block;
	float: left;
	overflow: hidden;
	margin: 0 15px 0 0;
}
.column1{ width: calc(100% - 15px); clear: both; }
.row .column2{ width: calc(50% - 15px); }
.row .column2.short{ width: calc(42% - 15px); }
.row .column2.long{ width: calc(58% - 15px); }
.row .column3-1{ width: calc((100% /3) - 15px); }
.row .column3-2{ width: calc((100% /3) * 2 - 15px); }
.row .column4-1{ width: calc(25% - 15px); }
.row .column4-3{ width: calc(75% - 15px); }
.row .column5-1{ width: calc((100% /5) - 15px); }

.column1 img,
.row .column2 img,
.row .column3-1 img,
.row .column3-2 img,
.row .column4-1 img,
.row .column4-3 img,
.row .column5-1 img{
	display: block;
	width: 100%;
}

.column1 img.fixity,
.row .column2 img.fixity,
.row .column3-1 img.fixity,
.row .column3-2 img.fixity,
.row .column4-1 img.fixity,
.row .column4-3 img.fixity,
.row .column5-1 img.fixity{
	display: block;
	margin: 0 auto;
	width: auto;
}
.column1 strong.inlineBlock,
.row .column2 strong.inlineBlock,
.row .column3-1 strong.inlineBlock,
.row .column3-2 strong.inlineBlock,
.row .column4-1 strong.inlineBlock,
.row .column4-3 strong.inlineBlock,
.row .column5-1 strong.inlineBlock{
	display: inline-block;
	padding: 5px 0;
	width: 100%;
	text-align: left;
	font-size: 1.1em;
}

.row .boxShadow{
	border: solid 1px #c4c4c4;
	background: #ffffff;
	width: calc(100% - 4px);
	height: calc(100% - 5px);
	box-shadow: 0px 0px 3px 0px #c4c4c4;
}

.row.boxRowBorder{
	padding: 15px 0 15px 15px;
	background: #ffffff;
	width:calc(100% - 17px);
	border: solid 1px #cfceac;
}
.row.boxRowBorder + .row.boxRowBorder{
	border-top: none;
	margin-top: -40px;
	padding-top: 0;
}
/***********************************
 header
***********************************/
header{
	clear: both;
	position: relative;
	padding: 10px 0 0;
	width: 100%;
	display: block;
	letter-spacing: normal;
	text-align: left;
	overflow: hidden;
}
header a:link , header a:hover, header a:active, header a:visited{
	color: #ffffff;
	text-decoration: none;
}
header a:hover{
	color: #55b4ff;
}
header h1{
	margin: 0 auto 20px;
	width: 160px;
	height: 60px;
	background: url(../images/logo.png) no-repeat center center;
	background-size: contain;
}
header h1 a{
	display: block;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
}
header p{
	margin: 0 0 10px;
	line-height: 1.2em;
	text-align: center;
	font-size: 0.85em;
}

header .oshirase.oshirase_holiday{
	display: block;
	margin: 10px auto;
	background: url(../images/oshirase_2022summer.png?date=20220802) no-repeat center center;
	width: 590px;
	height: 130px;
	text-indent: -9999px;
}
header a.oshirase.oshirase_bnr{
	display: block;
	margin: 10px auto;
	text-align: center;
}
header img.oshirase.oshirase_bnr{
	display: block;
	margin: 10px auto;
	max-width: calc(100% - 20px);
}

@media screen and (max-width: 640px) {
	header h1{
		display: inline-block;
		margin: 0 auto 10px;
	}
	header p{
		margin: 0 8px 10px 8px;
		text-align: left;
	}
	header .oshirase.oshirase_holiday{
		margin: 0 auto 10px;
		background: url(../images/oshirase_2022summer_sp.png?date=20220802) no-repeat center center;
		background-size: contain;
		width: 95%;
		height: 90px;
	}
}

/***********************************
 nav
***********************************/
.dwCheck,
.dwBtn,
.drawer-menu{
	display: none;
}
nav#globalNav ul{
	width: 1100px;
	margin: 20px auto 0;
	overflow: hidden;
}
nav#globalNav ul::after{
	clear: both;
	display: block;
	margin: auto;
	content: "";
}
nav#globalNav ul li{
	position: relative;
	float: left;
	padding: 0 1px;
	width: calc((100% - 8px) / 4);
	height: 50px;
}
nav#globalNav ul li:after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: block;
	content: "";
	background: url(../images/nav_on.png) no-repeat center 20px;
	opacity: 0;
	z-index: 1;
	transition: all 1.0s;
}
nav#globalNav ul li.on:after,
nav#globalNav ul li:hover:after{
	background: url(../images/nav_on.png) no-repeat center 20px;
	opacity: 0.7;
}

nav#globalNav ul li a:link , nav#globalNav ul li a:hover, nav#globalNav ul li a:active, nav#globalNav ul li a:visited{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: block;
	content: "";
	text-indent: -9999px;
	z-index: 2;
}
nav#globalNav ul li:nth-child(1) a:link , nav#globalNav ul li:nth-child(1) a:hover, nav#globalNav ul li:nth-child(1) a:active, nav#globalNav ul li:nth-child(1) a:visited{
	background: url(../images/nav01.png) no-repeat center 10px;
}
nav#globalNav ul li:nth-child(2) a:link , nav#globalNav ul li:nth-child(2) a:hover, nav#globalNav ul li:nth-child(2) a:active, nav#globalNav ul li:nth-child(2) a:visited{
	background: url(../images/nav02.png) no-repeat center 10px;
}
nav#globalNav ul li:nth-child(3) a:link , nav#globalNav ul li:nth-child(3) a:hover, nav#globalNav ul li:nth-child(3) a:active, nav#globalNav ul li:nth-child(3) a:visited{
	background: url(../images/nav03.png) no-repeat center 10px;
}
nav#globalNav ul li:nth-child(4) a:link , nav#globalNav ul li:nth-child(4) a:hover, nav#globalNav ul li:nth-child(4) a:active, nav#globalNav ul li:nth-child(4) a:visited{
	background: url(../images/nav04.png) no-repeat center 10px;
}
nav#globalNav ul li:nth-child(5) a:link , nav#globalNav ul li:nth-child(5) a:hover, nav#globalNav ul li:nth-child(5) a:active, nav#globalNav ul li:nth-child(5) a:visited{
	background: url(../images/nav05.png) no-repeat center 10px;
}

@media screen and (max-width: 640px) {
	nav#globalNav{
		display: none;
	}
	
	.dwBtn,
	.drawer-menu{
		display: block;
	}
	/* dwWrap */
	#dwWrap{
		display: table;
		width: 100%;
		height: 100vh;
		box-shadow: 0 0 50px 0 rgba(0,0,0,.8);
		-webkit-transition-property: all;
		transition-property: all;
		-webkit-transition-delay: .3s;
		transition-delay: .3s;
		-webkit-transition-duration: .5s;
		transition-duration: .5s;
	}
	#dwWrap__inner{
		display: table-cell;
	}
	/* drawer menu */
	.drawer-menu{
		box-sizing: border-box;
		position: fixed;
		top: 0;
		right: 0;
		width: 300px;
		height: 100%;
		padding: 40px 0;
		background: #222;
		-webkit-transition-property: all;
		transition-property: all;
		-webkit-transition-duration: .5s;
		transition-duration: .5s;
		-webkit-transition-delay: 0s;
		transition-delay: 0s;
		-webkit-transform-origin: right center;
		-ms-transform-origin: right center;
		transform-origin: right center;
		-webkit-transform: perspective(500px) rotateY(-90deg);
		transform: perspective(500px) rotateY(-90deg);
		opacity: 0;
	}
	.drawer-menu li{
		text-align: center;
	}
	.drawer-menu li a{
		display: block;
		height: 50px;
		line-height: 50px;
		font-size: 14px;
		color: #fff;
		-webkit-transition: all .8s;
		transition: all .8s;
	}
	.drawer-menu li a:hover{
		color: #1a1e24;
		background: #fff;
	}
	
	/* checkbox */
	.dwCheck{
		display: none;
	}
	
	/* menu button - label tag */
	.menu-btn{
		position: fixed;
		display: block;
		top: 20px;
		right: 8px;
		display: block;
		width: 40px;
		height: 40px;
		font-size: 10px;
		text-align: center;
		cursor: pointer;
		z-index: 3;
	}
	.bar{
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 40px;
		height: 3px;
		background: #999999;
		-webkit-transition: all .5s;
		transition: all .5s;
		-webkit-transform-origin: left top;
		-ms-transform-origin: left top;
		transform-origin: left top;
	}
	.bar.middle{
		top: 13px;
		opacity: 1;
	}
	.bar.bottom{
		top: 26px;
		-webkit-transform-origin: left bottom;
		-ms-transform-origin: left bottom;
		transform-origin: left bottom;
	}
	.menu-btn__text{
		position: absolute;
		bottom: -13px;
		left: 0;
		right: 0;
		margin: auto;
		color: #666666;
		-webkit-transition: all .5s;
		transition: all .5s;
		display: block;
		visibility: visible;
		opacity: 1;
	}
	.menu-btn:hover .bar{
		background: #cccccc;
	}
	.menu-btn:hover .menu-btn__text{
		color: #cccccc;
	}
	.close-menu{
		position: fixed;
		top: 0;
		right: 300px;
		width: 100%;
		height: 100vh;
		background: rgba(0,0,0,0);
		-webkit-transition-property: all;
		transition-property: all;
		-webkit-transition-duration: .3s;
		transition-duration: .3s;
		-webkit-transition-delay: 0s;
		transition-delay: 0s;
		visibility: hidden;
		opacity: 0;
	}
	
	/* checked */
	.dwCheck:checked ~ .drawer-menu{
		-webkit-transition-delay: .3s;
		transition-delay: .3s;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
		opacity: 1;
		z-index: 2;
	}
	.dwCheck:checked ~ #dwWrap{
		-webkit-transition-delay: 0s;
		transition-delay: 0s;
		-webkit-transform: translateX(-300px);
		-ms-transform: translateX(-300px);
		transform: translateX(-300px);
	}
	.dwCheck:checked ~ .menu-btn .menu-btn__text{
		visibility: hidden;
		opacity: 0;
	}
	.dwCheck:checked ~ .menu-btn .bar.top{
		width: 56px;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.dwCheck:checked ~ .menu-btn .bar.middle{
		opacity: 0;
	}
	.dwCheck:checked ~ .menu-btn .bar.bottom{
		width: 56px;
		top: 40px;
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.dwCheck:checked ~ .close-menu{
		-webkit-transition-duration: 1s;
		transition-duration: 1s;
		-webkit-transition-delay: .3s;
		transition-delay: .3s;
		background: rgba(0,0,0,.5);
		visibility: visible;
		opacity: 1;
		z-index: 3;
	}
}

/***********************************
 footer
***********************************/
footer{
	clear: both;
	position: relative;
	display: block;
	margin: 100px 0 0;
	padding: 30px 0 0;
	background: #272727;
	width: 100%;
	height: 200px;
	letter-spacing: normal;
	color: #ffffff;
	font-size: 0.85em;
}
footer a:link , footer a:hover, footer a:active, footer a:visited{
	color: #ffffff;
	text-decoration: underline;
}
footer a:hover{
	color: #ddcef6;
}

/*
footer #copyright{
	position: absolute;
	bottom: 50px;
	left: 10px;
	right: 10px;
	text-align: center;
}
*/

/***********************************
 table
***********************************/
table{
	width: 100%;
	border-collapse: collapse;
	line-height: 1.3em;
}
table th,
table td{
	padding: 10px 15px;
	border: solid 1px #bbbbbb;
	text-align: left;
}
table th{
	background: #f3f0e3;
	width: 160px;
	font-weight: normal;
}
table td{
	background: #ffffff;
}
table tr:nth-child(2n) td{
//	background: #f5f5f5;
}

table.noBorder{
}
table.noBorder th,
table.noBorder td{
	padding: 5px 10px;
	background: none;
	border: none;
}
table.noBorder th img,
table.noBorder td img{
	display: block;
	margin: auto;
}

table.rowTbl{
	letter-spacing: 0;
}
table.rowTbl th{
	width: 110px;
}

table.formTbl{
	margin-bottom: 20px;
}
table.formTbl span{
	color: #fb0854;
}
table.formTbl label > input[type="checkbox"] + span{
	color: #0f0f0f;
}

@media screen and (max-width: 640px) {
	table.rowTbl th,
	table.rowTbl td,
	table.formTbl th,
	table.formTbl td{
		display: block;
		width: calc(100% - 32px);
	}
	table.rowTbl td{
		border-top: none;
	}
	
	table.formTbl th,
	table.formTbl td{
		border-top: none;
		border-bottom: none;
	}
	table.formTbl th{
		font-weight: bold;
		font-size: 0.85em;
	}
	table.formTbl td{
		padding-bottom: 20px;
	}
	table.formTbl tr:first-child th{
		border-top: solid 1px #bbbbbb;
	}
	table.formTbl tr:last-child td{
		border-bottom: solid 1px #bbbbbb;
	}
}

/***********************************
 h2, h3, h4
***********************************/
h2, h3, h4{
	line-height: 1.4em;
	text-align: left;
	font-weight: normal;
}

h2 a:link , h2 a:hover, h2 a:active, h2 a:visited,
h3 a:link , h3 a:hover, h3 a:active, h3 a:visited,
h4 a:link , h4 a:hover, h4 a:active, h4 a:visited{
	color: #0f0f0f;
	text-decoration: none;
	cursor: unset;
}

h2{
	padding: 10px 0 30px;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	font-size: 2.4em;
}
h3,
h2.down{
	position: relative;
	margin: 30px 0 20px;
	padding: 0 20px 8px 10px;
	font-size: 1.4em;
}
h2.down{
	text-align: left;
	font-size: 1.8em;
}
h3:before,
h2.down:before{
	position: absolute;
	content: '';
	bottom: -3px;
	right: 0;
	width: 0;
	height: 0;
	border: none;
	border-right: solid 12px transparent;
	border-bottom: solid 12px #c19839;
}
h3:after,
h2.down:after{
	position: absolute;
	content: '';
	bottom: -3px;
	left: 0;
	right: 10px;
	border-bottom: solid 2px #c19839;
}

h4{
	margin: 30px 0 20px;
	padding: 0 0 0 15px;
	border-left: solid 5px #cccccc;
	font-size: 1.4em;
}
h3 + h4{
	margin: 20px 0 ;
}

@media screen and (max-width: 640px) {
	h2{
		padding: 10px 0;
		font-size: 2em;
	}
	h2.down{
		margin-top: 0;
		font-size: 1.6em;
	}
}

/***********************************
 aside
***********************************/
aside{
	float: left;
	padding: 0 50px 0 0;
	background: #ffffff;
	width: 280px;
	height: 100%;
	text-align: left;
	overflow: hidden;
}
@media screen and (max-width: 640px) {
	aside{
		display: none;
	}
}
aside ul li{
	margin: 0 0 10px;
	line-height: 1.2em;
}
aside ul li a{
	display: block;
	padding-left: 10px;
}
aside ul li a:link , aside ul li a:hover, aside ul li a:active, aside ul li a:visited{
	color: #0f0f0f;
}

@media screen and (max-width: 640px) {
	aside{
		float: none;
		margin: 0;
		padding: 20px 8px;
		width: calc(100% - 16px);
		background: none;
	}
	
	aside h3:after{
		background: -webkit-repeating-linear-gradient(-45deg, #ccc, #ccc 2px, #878787 2px, #878787 4px);
		background: repeating-linear-gradient(-45deg, #ccc, #ccc 2px, #878787 2px, #878787 4px);
	}
	aside ul li a:hover{
			background: #ffffff;
	}
}

aside #subNavTtl{
	position: relative;
	display: block;
	margin: 0 0 10px;
	padding: 0 15px 0 50px;
	background: url(../images/logo_point.png) no-repeat 10px; center
	width: calc(100% - 30px);
	border-bottom: solid 5px #86345F;
	line-height: 2em;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	font-size: 1.5em;
}
aside #subNavTtl:after{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	display: block;
	content: "";
	border-bottom: solid 4px #c19839;
}
aside ul#subNav li{
	margin: 0;
	border: none;
	border-bottom: solid 1px #cccccc;
}
aside ul#subNav li:last-child{
	border-bottom: solid 2px #cccccc;
}
aside ul#subNav li a{
	position: relative;
	display: block;
	padding: 20px 15px 15px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	font-size: 1.2em;
}
aside ul#subNav li.on a,
aside ul#subNav li a:hover{
	background: #f7e9ff;
}
aside ul#subNav li.on a:after,
aside ul#subNav li a:hover:after{
	position: absolute;
	top: 10px;
	bottom: 10px;
	left: 1px;
	display: block;
	content: "";
	border-left: solid 5px #86345F;
}
aside ul#subNav li a span{
	display: block;
	margin-top: 5px;
	font-size: 0.7em;
	font-weight: normal;
}

aside ul.catalogLnk{
	margin: 50px 0 0;
	padding: 10px 0;
	background: -webkit-radial-gradient(closest-side, #f2f6ee 98%, #ffffff 99%), 
		 -webkit-radial-gradient(closest-side, #f2f6ee 98%, #ffffff 99%), rgba(90,90,90,0.7);
	background: radial-gradient(closest-side, #f2f6ee 98%, #ffffff 99%), 
		radial-gradient(closest-side, #f2f6ee 98%, #ffffff 99%), rgba(90,90,90,0.7);
	background-position: 0 0, 5px 5px;
	-webkit-background-size: 10px 10px;
	background-size: 10px 10px;
}
aside ul.catalogLnk a{
	padding: 10px;
}
aside ul.catalogLnk a span{
	display: inline-block;
	padding: 0 10px 5px;
	font-weight: bold;
	font-size: 1.05em;
}
aside ul.catalogLnk a img{
	display: block;
	margin: 2px auto;
	width: 90%;
	border: solid 1px #cccccc;
	transition: all 0.4s;
}
aside ul.catalogLnk a:hover img{
	margin: 1px auto;
	border: solid 2px #accc8d;
}

/***********************************
 main
***********************************/
main{
	display: block;
	margin: 0 auto;
	background: none;
	width: 80%;
	text-align: left;
	overflow: hidden;
}
aside + main{
	margin: 0;
	float: left;
	width: calc(100% - 330px);
}

@media screen and (max-width: 640px) {
	main{
		padding: 0;
		width: 100%;
	}
	aside + main{
		float: none;
		width: 100%;
	}
}

/***********************************
 others
***********************************/
.txtSS{
	font-size: 0.88em;
	letter-spacing: -0.1em;
}
.txtS{
	font-size: 0.9em;
	letter-spacing: -0.06em;
}
.txtM{
	font-size: 1.05em;
	letter-spacing: -0.06em;
}
.txtL{
	font-size: 1.2em;
	letter-spacing: 0;
}
.txtAL{
	text-align: left;
}
.txtAC{
	text-align: center;
}
.txtAR{
	text-align: right;
}

.fltL{
	float: left;
}
.fltR{
	float: right;
}

.marker{
	background: linear-gradient(transparent 40%, #e6ffde 40%);
}
.marker.txtL{
	padding: 0 10px;
}

ul.disc{
	list-style-type: disc;
	margin-left: 20px;
}
ul.la{
	list-style-type: lower-alpha;
	margin-left: 35px;
}
ul.square{
	list-style-type: square;
	margin-left: 20px;
}
ul.caution{
	margin: 0 10px 10px;
	width: 95%;
}
ul.caution > li{
	position: relative;
	padding-left: 1.2em;
}
ul.caution > li:before{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content:"※";
	color: #0f0f0f;
}
ul li ul.caution{
	margin: 0 10px;
	width: auto;
}

img + cite{
	display: block;
	text-align: right;
	font-style: normal;
}

p{
	margin: 0 0 15px;
}

dl dt{
	margin-bottom: 10px;
	font-weight: bold;
}
dl dd{
	margin: 0 0 20px;
}
dl dd table{
	margin: 5px 10px;
	width: 80%;
}
@media screen and (max-width: 640px) {
	dl dd table{
		width: calc(100% - 22px);
	}
	dl dd table th{
		width: 100px;
	}
}

/***********************************
 .btn, .btnBox, .btnBoxRow
***********************************/
a.btn{
	display: block;
	text-indent: -9999px;
	background-repeat: no-repeat;
	background-position: left top;
}
a.btn:hover{
	background-position: left bottom;
}

a.btnTxt{
	display: inline-block;
	margin: 10px; 
	padding: 0 1em 0 1.05em;
	background: #423837;
	min-width: 180px;
	height: 33px;
	line-height: 33px;
	letter-spacing: 0.05em;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	font-size: 1em;
	border-radius: 3px;
}
a.btnTxt:hover,
a.btnTxt:active{
	background: #736968;
}

a.btnTxtBlue{
	position: relative;
	display: inline-block;
	margin: 10px; 
	padding: 0 1em 0 1.05em;
	background: #27a0e0;
	min-width: 170px;
	height: 33px;
	overflow: hidden;
	z-index: 1;
	line-height: 33px;
	letter-spacing: 0.05em;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	font-size: 1em;
	border-radius: 3px;
}
a.btnTxtBlue:before{
	position: absolute;
	content: '';
	right: 0px;
	bottom: 0px;
	width: 0;
	height: 0;
	border: none;
	border-left: solid 80px transparent;
	border-bottom: solid 33px #2094db;
	z-index: -1;
}
a.btnTxtBlue:hover{
	background: #228dc7;
}
a.btnTxtBlue:hover:before{
	border-bottom: solid 30px #1d83c2;
}

a.bgChenge{
	position: relative;
	display: inline-block;
	color: #242424;
	text-decoration: none;
	transition: all 0.5s;
}
a.bgChenge:hover{
	color: #242424;
	background: #ffffff;
	box-shadow: inset 0 0 10px 10px #f4d6e5;
}
a.imgChenge{
//	transition: all 0.5s;
}
a.imgChenge img{
	display: unset !important;
}
a.imgChenge:hover{
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}

.btnBox{
	display: table;
	border-collapse: separate;
	border-spacing: 15px;
	width: 100%;
	table-layout: fixed;
}
.btnBox a.btnTxt,
.btnBox a.btnTxt2{
	display: table-cell;
	width: auto;
	border-radius: unset;
}

.btnBoxLine{
	clear: both;
	margin: 10px 0;
}
.btnBoxLine:after{
	clear: both;
	display: block;
	content: "";
}
.btnBoxLine a.btn{
	float: left;
	margin-right: 4px;
}

.btnBoxCover{
	clear: both;
	margin: 10px auto 20px;
	padding: 20px 0;
	width: 80%;
	background: #eef0d9;
	border: solid #ffffff 3px;
	outline: solid #dde4ce 1px;
	text-align: center;

}
.btnBoxCover:after{
	clear: both;
	display: block;
	content: "";
}
.btnBoxCover p{
	display: inline-block;
	margin: 0 auto;
	text-align: center;
	font-size: 1.1em;
}
.btnBoxCover .btnBoxLine a.btnTxt{
	margin: 5px 10px 0; 
}

.btnBoxRow{
	margin: 15px;
}
.btnBoxRow a.btn{
	display: block;
	margin: 0 auto;
}
.btnBoxRow a.btn + a.btn{
	margin-top: 15px;
}

/***********************************
 form
***********************************/
form{
	text-align: center;
}

form th span,
form .error,
form .caution{
	color: #fb0854;
}
form label{
	position: relative;
	display: inline-block;
	margin: 3px 30px 3px 0;
	min-width: 200px;
	cursor: pointer;
}
form label span{
	position: relative;
	top: -3px;
}
form label.policy{
	margin: 20px auto 10px;
	font-size: 1.05em;
}
form input[type="checkbox"]{
	margin-right: 5px;
	width: 18px;
	height: 18px;
	font-weight: bold;
}
form input[type="text"],
form input[type="email"],
form input[type="number"],
form textarea{
	margin: 1px 0;
	padding: 5px 5px;
	line-height: 1.3em;
	color: #000000;
	width: 95%;
}
form input[type="text"],
form input[type="email"],
form input[type="number"]{
	line-height: 2em;
}
form input[type="text"].mini,
form input[type="number"].mini{
	width: 100px;
}
form select{
	padding: 8px 15px;
}

form input[type="button"].btn,
form input[type="submit"].btn{
	padding: 5px 20px;
	min-width: 260px;
	background: #e1e1e1;
	border: solid 1px #adadad;
	transition: all 1.0s;
}
form input[type="button"].btn:hover,
form input[type="submit"].btn:hover{
	background: #e5f1fb;
	border: solid 1px #0078d7;
}
form input[type="submit"].btn2{
	display: inline-block;
	margin: 10px;
	padding: 0 1em 0 1.05em;
	background: #423837;
	min-width: 260px;
	height: 33px;
	line-height: 33px;
	letter-spacing: 0.05em;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	font-size: 1em;
	border-radius: 3px;
}
form input[type="submit"].btn2:hover{
	background: #736968;
}
/* placeholder */
form textarea[name="detail"]::placeholder,
form input[type="text"]::placeholder,
form input[type="email"]::placeholder,
form input[type="number"]::placeholder{
	color: #b3b3b3;
	line-height: 2em;
}
/* placeholder IE */
form textarea[name="detail"]:-ms-input-placeholder,
form input[type="text"]:-ms-input-placeholder,
form input[type="email"]:-ms-input-placeholder,
form input[type="number"]:-ms-input-placeholder{
	color: #b3b3b3;
	line-height: 2em;
}
/* placeholder Edge */
@supports (-ms-ime-align: auto){
	form textarea[name="detail"]::-ms-input-placeholder,
	form input[type="text"]::-ms-input-placeholder,
	form input[type="email"]::-ms-input-placeholder,
	form input[type="number"]::-ms-input-placeholder{
		color: #b3b3b3;
		line-height: 2em;
		opacity: 1;
	}
}

/**********************************************************************

	for EC

**********************************************************************/
/***********************************
  header
***********************************/
header{
	background: url(../images/body_bg.gif);
	border-top: solid 1px #c1be37;
	border-bottom: solid 1px #c1be37;
}

header a.btn.cart{
	position: absolute;
	top: 5px;
	right: 0;
	width: 80px;
	height: 80px;
	display: block;
	background: url(../images/btn_cart.png) no-repeat center center;
	background-size: 60%;
}
header a.btn.cart:hover{
	background-color: #ffffff;
	border-radius: 100px;
}

@media screen and (max-width: 640px) {
	header a.btn.cart{
		top: 0;
		right: 50px;
		width: 60px;
		height: 60px;
		background-size: 70%;
	}
	header a.btn.cart:hover{
		background-color: unset;
		opacity: 0.7;
	}
}

/***********************************
  footer
***********************************/
footer{
	padding: 0;
	height: auto;
	border-top: solid 1px #c9c9c9;
	text-align: left;
}

footer #footInfo{
	padding: 30px 0;
	margin: 0 0 30px;
	background: #e8e8e8;
	color: #000000;
}
footer #footInfo div.container{
	width: 1000px;
}

footer #footInfo a{
	color: #000000;
}
footer #footInfo a:hover{
	text-decoration: underline;
	color: #84276f;
}

footer #footInfo dl{
	width: 700px;
}
footer #footInfo dl dt{
	margin-bottom: 10px;
	font-weight: bold;
}
footer #footInfo dl dd + dt{
	margin-top: 20px;
}
footer #footInfo dl dd{
	display: list-item;
	margin: 0 0 10px 20px;
	width: auto;
	list-style: disc;
}
footer #footInfo dl dd img{
	border: solid 1px #cccccc;
}

footer #footInfo #siteMap{
	position: absolute;
	top: 0;
	right: 0;
	width: 250px;
}
footer #footInfo #siteMap strong{
	display: block;
	margin-bottom: 10px;
}
footer #footInfo #siteMap ul li{
	margin: 0 0 10px 20px;
	list-style: square;
}
footer #footInfo #siteMap ul li li{
	margin: 0 0 0 30px;
	list-style: circle;
}
footer #siteInfo{
	background: url(../images/logo_footer.png) no-repeat 800px 160px;
}
footer #siteInfo p{
	margin-bottom: 10px;
	width: 690px;
}
footer #siteInfo a#GoToHP{
	display: inline-block;
	margin: 5px 30px;
}
footer #siteInfo a#GoToHP:hover{
	text-decoration: underline;
}

footer #copyright{
	margin: 50px auto;
	text-align: center;
}

@media screen and (max-width: 640px) {
	footer #footInfo div.container{
		width: calc(100% - 16px);
	}
	footer #footInfo dl{
		width: calc(100% - 16px);
	}
	footer #footInfo #siteMap{
		position: relative;
		width: calc(100% - 16px);
	}
	footer #siteInfo{
		background: url(../images/logo_footer.png) no-repeat center bottom 50px;;
	}
	footer #siteInfo p{
		margin: 0;
		width: auto;
	}
	footer p#copyright{
		margin: 100px auto 0;
	}
}

/***********************************
 others
***********************************/
.guideInfo{
	margin: auto;
	width: 90%;
}
.thanksTxt{
	margin: 30px auto 50px;
	width: 90%;
}

/***********************************
 /home
***********************************/
.swiper-container{
	margin-bottom: 30px;
}
.swiper-slide {
	text-align: center;
	font-size: 18px;
	background: #fff;
	/* Center slide text vertically */
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}
@media screen and (max-width: 640px) {
	.swiper-container{
		width: 100vw;
	}
}

ul#home_info li{
	float: left;
	margin: 0 10px 8px 0;
	width: calc((100% - 30px) / 4);
}
ul#home_info li:nth-child(4n){
	margin-right: 0;
}
ul#home_info li a{
	position: relative;
	display: block;
	width: 100%;
	height: 202px;
	line-height: 30px;
	text-align: center;
	text-decoration: none;
	color: #ffffff;
}
ul#home_info li:nth-child(1) a{ background: url("/images/infoLink01.png") no-repeat #000000; }
ul#home_info li:nth-child(2) a{ background: url("/images/infoLink02.png") no-repeat #cccccc; }
ul#home_info li:nth-child(3) a{ background: url("/images/infoLink09.png") no-repeat #000000; background-size: 100%; }
ul#home_info li:nth-child(4) a{ background: url("/images/infoLink04.png") no-repeat #cccccc; }
ul#home_info li:nth-child(5) a{ background: url("/images/infoLink05.png") no-repeat #000000; }
ul#home_info li:nth-child(6) a{ background: url("/images/infoLink06.png") no-repeat #000000; }
ul#home_info li:nth-child(7) a{ background: url("/images/infoLink07.png") no-repeat #cccccc; }
ul#home_info li:nth-child(8) a{ background: url("/images/infoLink08.png") no-repeat #000000; }
ul#home_info li a span{
	position: absolute;
	bottom: 0;
	display: block;
	background-color: rgba(0,0,0,0.9);
	width: 100%;
	height: 30px;
	letter-spacing: 2px;
	font-family: 'Noto Serif JP', serif;
	transition: all 0.5s;
}
ul#home_info li a:hover span{
	background-color: rgba(80,80,80,0.9);
}
ul#home_info li a span:after{
	position: absolute;
	top: 10px;
	right: 25px;
	content: "";
	width: 0px;
	height: 0px;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 8px solid #ffffff;
	border-right: 0px solid transparent;
}
@media screen and (max-width: 640px) {
	ul#home_info li{
		margin: 0 5px 8px 0;
		width: calc((100% - 5px) / 2);
	}
	ul#home_info li:nth-child(2n){
		margin-right: 0;
	}
	ul#home_info li:nth-child(n) a{
		background-size: cover;
		background-position: center top;
		background-color: #ffffff;
	}
	ul#home_info li a span:after{
		display: none;
	}
}
@media screen and (max-width: 500px) {
	ul#home_info li:nth-child(n) a{
		height: 180px;
	}
}
@media screen and (max-width: 390px) {
	ul#home_info li:nth-child(n) a{
		height: 140px;
	}
}

/***********************************
 /item/
***********************************/
ul#itemCategoryTab{
	position: relative;
	margin: 0 0 30px;
}
ul#itemCategoryTab:before{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: block;
	content: "";
	border: double 6px #e6dbe4;
	border-bottom: none;
}
ul#itemCategoryTab:after{
	position: absolute;
	bottom: -9px;
	left: 0;
	right: 0;
	display: block;
	content: "";
	background: #84276f;
	border-bottom: solid 1px #0f0f0f;
	height: 8px;
	z-index: -1;
}
ul#itemCategoryTab li{
	position: relative;
	display: inline-block;
	margin: 0 1px 0 0;
	padding: 8px 11px 0;
	width: calc((100% - 114px) / 5);
	border-bottom: none;
}
ul#itemCategoryTab li.tabL{
	width: 180px;
}
ul#itemCategoryTab li:last-child{
	margin: 0;
}
ul#itemCategoryTab li a{
	position: relative;
	display: block;
	padding: 10px 10px;
	background: #ffffff;
	width: calc(100% - 22px);
	border: solid 1px #ffffff;
	border-bottom: none;
	color: #0f0f0f;
	letter-spacing: 0;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	font-size: 1.1em;
}
ul#itemCategoryTab li.on{
	background: #84276f;
	transition: all 1.0s;
}
ul#itemCategoryTab li.on a{
	box-shadow: 0px 0px 3px 0px #000000;
}
ul#itemCategoryTab li a:after{
	box-shadow: none;
	position: absolute;
	top: 14px;
	bottom: 16px;
	left: 0px;
//	right: 3px;
	display: block;
	content: "";
	border-left: solid 4px #dddddd;
	transition: all 1.0s;
}
ul#itemCategoryTab li a:hover:after{
	box-shadow: none;
	position: absolute;
	top: 13px;
	bottom: 15px;
	left: 0px;
//	right: 3px;
	display: block;
	content: "";
	border-left: solid 4px #84276f;
	transition: all 1.0s;
}
ul#itemCategoryTab li.on a:after{
	display: none;
}

ul.itemList li{
	position: relative;
	float: left;
	margin: 10px 0;
	width: calc((100% - 16px) / 3);
	height: 250px;
	line-height: 1.2em;
	letter-spacing: 0;
	overflow: hidden;
}
ul.itemList li:nth-child(3n - 1){
	margin: 10px 8px;
}
ul.itemList li.backOrder a:after{
	position: absolute;
	top: 0;
	bottom: 70px;
	left: 0;
	right: 0;
	display: block;
	margin: auto;
	width: 160px;
	height: 50px;
	content: "";
	background: url("/images/label_backorder.png") no-repeat;
}
ul.itemList li a{
	position: relative;
	display: block;
	width: 100%;
	height: 100%
}
ul.itemList li a:hover{
	background: #f7e9ff;
	border-radius: 200px;
}
ul.itemList li a img{
	position: absolute;
	top: 0;
	bottom: 70px;
	left: 0;
	right: 0;
	display: block;
	margin: auto;
	max-width: 90%;
	max-height: 180px;
}
ul.itemList li a:hover img{
	top: 3px;
}
ul.itemList li a span{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	width: 80%;
	color: #0f0f0f;
}
ul.itemList li a span.price{
	top: 190px;
	text-align: right;
	font-weight: bold;
}
ul.itemList li a span.name{
	top: 212px;
}

.spSubNav{
	display: none;
}
@media screen and (max-width: 640px) {
	#itemCategoryTab{
		display: none;
	}
	.spSubNav{
		display: block;
		margin: 0 0 20px;
	}
	.spSubNav h3{
		margin: 0 0 20px;
		font-family: 'Noto Serif JP', serif;
		font-weight: bold;
	}
	.spSubNav .balloonoya{
		position: relative;
		margin: auto;
		padding: 5px 10px;
		background: #f7e9ff;
		width: 90%;
		max-width: 300px;
		border: solid 2px #86345F;
		cursor: pointer;
		text-align: center;
		font-family: 'Noto Serif JP', serif;
		font-weight: bold;
	}
	.spSubNav .balloonOff{
		display: none;
	}
	.spSubNav .balloonoya .balloon{
		position: absolute;
		top: 50px;
		left: 5px;
		display: inline-block;
		padding: 10px;
		background: #86345f;
		z-index: 1;
		animation: balloonAnime 0.5s linear;
	}
	.spSubNav .balloonoya .balloon > li{
		clear: both;
		margin: 0 0 10px;
		text-align: left;
	}
	.spSubNav .balloonoya .balloon > li ul{
		margin-left: 30px;
	}
	.spSubNav .balloonoya .balloon > li ul:after{
		clear: both;
		display: block;
		content: "";
	}
	.spSubNav .balloonoya .balloon > li ul li{
		position: relative;
		float: left;
		display: inline-block;
		width: 130px;
		font-weight: normal;
	}
	.spSubNav .balloonoya .balloon > li ul li:before{
		position: absolute;
		left: -5px;
		display: block;
		content: "-";
		color: #ffffff;
		font-weight: normal;
	}
	.spSubNav .balloonoya .balloon li a{
		display: block;
		padding: 5px 10px;
		line-height: 1em;
		color: #ffffff;
		font-size: 0.95em
	}
	.spSubNav .balloonoya .balloon:after{
		position: absolute;
		top: -10px;
		left : 10%;
		border-bottom: 10px solid #86345f;
		border-left: 8px solid transparent;
		border-right: 8px solid transparent;
		content: "";
		animation: balloonAnime2 0.5s linear;
	}
	@keyframes balloonAnime{
		100%{ color : black; background:rgba(134, 52, 95, 0.75) }
		50%{ color : black; background:rgba(134, 52, 95, 0.25) }
		0%{ color : white; background:white}
	}
	@keyframes balloonAnime2{
		100%{ border-color:rgba(255, 255, 255, 0.95) }
		50%{ border-color:rgba(255, 255, 255, 0.25) }
		0%{ border-color:rgba(255, 255, 255, 0)}
	}
}
/***********************************
 /item/detail
***********************************/
@media screen and (max-width: 640px) {
	#itemDetails.row .column2:first-child{
		width: calc(40% - 15px);
	}
	#itemDetails.row .column2:last-child{
		width: calc(60% - 15px);
	}li
}
p.backorderTxt{
	margin: 10px auto;
	padding: 5px 20px;
	background: #c13764;
	width: 80%;
	border: double 3px #ffffff;
	color: #ffffff;
	text-align: center;
	font-weight: bold;
}
#itemDetails .imgMBox{
	position: relative;
	height: 470px;
}
#itemDetails .imgMBox a img.imgM{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: auto;
	max-width: 95%;
	height: auto;
	max-height: 95%;
}
#itemDetails .imgMBox a:hover img.imgM{
	max-width: 98%;
	max-height: 98%;
	transition: all 1.0s;
}

#itemDetails ul.imgLst{
	margin: 4px 0 0;
}
#itemDetails ul.imgLst li{
	position: relative;
	float: left;
	width: calc((100% - 8px) / 2);
	height: 180px;
}
#itemDetails ul.imgLst li:nth-child(2n){
	float: right;
}
#itemDetails ul.imgLst li a img{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 95%;
	width: auto;
	max-height: 95%;
	height: auto;
}
#itemDetails ul.imgLst li a:hover img{
	max-width: 98%;
	max-height: 98%;
	transition: all 1.0s;
}

#itemDetails ul.words{
	margin: 20px 0 0;
}
#itemDetails ul.words li{
	display: inline-block;
	margin: 0 10px 5px 0;
	padding: 5px 8px;
	line-height: 1em;
	background: #86345F;
	color: #ffffff;
	font-size: 0.95em;
}

#itemDetails p.price{
	margin: 20px 0 15px;
	font-weight: bold;
	font-size: 1.2em;
}
#itemDetails ul.priceMemo{
	margin: 0 1em 2em 2em;
	font-size: 0.9em
}
#itemDetails ul.priceMemo li{
	text-indent: -1em;
}

#itemDetails p.details{
	margin-bottom: 15px;
}

#itemDetails form{
	margin: 40px 50px;
	text-align: left;
}
#itemDetails form input[type="submit"].btn{
	margin: 10px 0;
	min-width: 90%;
}
#itemDetails ul.formMemo{
	margin: -20px 50px 20px 80px;
	list-style: disc;
	font-size: 0.9em
}

@media screen and (max-width: 640px) {
	#itemDetails .imgMBox{
		height: 220px;
	}
	
	#itemDetails ul.imgLst li{
		position: relative;
		float: left;
		margin: 0 0 5px;
		width: calc((100% - 10px) / 2);
		height: 80px;
	}
	#itemDetails form{
		margin: 40px 10px;
	}
	#itemDetails ul.formMemo{
		margin: -30px 10px 20px 30px;
	}
}

/***********************************
 /guide/flow
***********************************/
ul#flow > li{
	margin: 10px 0 30px;
}
ul#flow > li:after{
	clear: both;
	display: block;
	content: "";
	margin: 0 auto;
	width: 0;
	height: 0;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	border-top: 15px solid #d0dec3;
}
ul#flow > li:last-child:after{
	display: none;
}

ul#flow > li div.step{
	float: left;
	display: block;
	margin: 0 20px 0 0;
	padding: 20px 20px;
	background: #bbbbbb;
	width: 50px;
	height: 60px;
	text-align: center;
	color: #ffffff;
	overflow: hidden;
}
ul#flow > li div.step > span{
	font-size:2em
}

ul#flow > li div.cont{
	float: left;
	margin: 0 0 10px;
	width: calc(100% - 110px);
}

ul#flow > li div.cont h3{
	margin: 0 0 20px;
}
ul#flow > li div.cont h3:after{
	left: 0;
}

@media screen and (max-width: 640px) {
	ul#flow > li div.step{
		margin-right: 10px;
		padding: 20px 5px 40px;
		width: 40px;
	}
	ul#flow > li div.cont{
		width: calc(100% - 60px);
	}
}

/***********************************
 /guide/returns
***********************************/
.returns.caution,
.returns.caution li:before{
	color: #fb0854;
}
.returns.caution{
	margin: 0 auto 20px;
	padding: 10px 15px;
	background: #ffe9e9;
	width: 80%;
	letter-spacing: 0.05em;
}

.returns.disc{
	margin: 0 10px 0 30px;
}

dl.returnsNote{
	margin: 40px 0 0;
	padding: 10px 15px;
	border: solid 3px #c19839;
}
dl.returnsNote dd{
	margin: 0;
}

/***********************************
 /guide/privacy
***********************************/
dl dd.pContact{
	margin: 0 15px 20px;
	line-height: 1.3em;
}

/***********************************
 /cart/
***********************************/
#cartForm form table.shoppingList tr th,
#cartForm form table.shoppingList tr td{
	border: none;
	border-bottom: #bbbbbb 1px solid;
}
#cartForm form table.shoppingList tr th{
	padding: 10px 25px;
	background: none;
	font-weight: bold;
}
#cartForm form table.shoppingList tr th:first-child{
	width: 500px;
}
#cartForm form table.shoppingList tr.calculation th,
#cartForm form table.shoppingList tr.calculation td{
	border: none;
}
#cartForm form table.shoppingList tr.calculation input[type="submit"].btn{
	margin: 15px 0 10px;
}
#cartForm form table.shoppingList tr.calculation td:last-child span{
	display: block;
	text-align: right;
	font-size:1.2em
}

#cartForm form table.shoppingList .imgBox{
	position: relative;
	width: 150px;
	height: 150px;
}
#cartForm form table.shoppingList .imgBox img{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: block;
	margin: auto;
	max-width: 150px;
	max-height: 150px;
}
#cartForm form table.shoppingList .imgBox + a{
	float: left;
	display: block;
	margin: 30px 0 10px;
	width: 350px;
}

#cartForm form table.shoppingList a.deleatLink{
	display: inline-block;
	margin: 10px 10px 0;
	padding: 5px 3px;
}

#cartForm form table.shoppingList input[type="text"]{
	width: 70px;
}

#cartForm .total{
	margin: 10px auto;
	padding: 10px;
	background: #f3f0e3;
	width: 70%;
}
.total .cost{
	display: inline-block;
	text-align: left;
}
#cartForm .total b{
	display: block;
	padding: 5px;
	font-size: 1.2em
}
#cartForm .total a.btnTxt{
	display: block;
	margin: 10px auto;
	min-width: 200px;
	max-width: 300px;
}
@media screen and (max-width: 640px) {
	#cartForm form table.shoppingList tr{
		position: relative;
		display: block;
		min-height: 170px;
		border-bottom: #bbbbbb 1px solid;
	}
	#cartForm form table.shoppingList tr:first-child{
		display: none;
	}
	#cartForm form table.shoppingList tr:nth-child(2){
		border-top: #bbbbbb 1px solid;
	}
	#cartForm form table.shoppingList tr td{
		position: relative;
		left: 165px;
		display: block;
		padding: 10px 5px 10px 0;
		width: calc(100% - 170px);
		border: none;
	}
	#cartForm form table.shoppingList tr td:first-child{
		position: absolute;
		left: 0;
		padding: 10px 5px;
		width: 150px;
	}
	#cartForm form table.shoppingList tr.calculation td{
		position: relative;
		left: 0;
		width: 100%;
	}
	#cartForm form table.shoppingList tr.calculation td:last-child{
		padding-top: 0;
		margin: auto;
		width: 60%;
	}

	#cartForm form table.shoppingList tr td:nth-child(2) p{
		display: none;
		
	}
	#cartForm form table.shoppingList tr.calculation td:last-child span{
		margin-bottom: 10px;
		border-bottom: solid 5px #f3f0e3;
		font-weight: bold;
		font-size: 1em;
	}
	
	#cartForm .total{
		width: 90%;
	}
}
/***********************************
ColorBox
***********************************/
.cbWindow h3{
	margin: 15px 0 25px;
}
.cbWindow form select{
	display: block;
	margin: 20px auto 10px;
	min-width: 200px;
}
.cbWindow form input[type="submit"].btn{
	margin-top: 20px;
	min-width: 200px;
}
.cbWindow form ul.caution{
	line-height: 1.4em;
	color: #0f0f0f;
	text-align: left;
	font-size: 0.95em;
}
