/* ===========================================
	TBS di2 shopping
=========================================== */

@media all and (min-width: 768px) {
.shopping main div.contents{display: flex;}
div.con-lef {width:700px; margin:0 40px 0 0; background-color:#fff; padding:2em 0 0;}
div.con-rig {width:340px;}
section#regular,section#whatsnew{width:90%; margin:2em auto;}
section#regular h2,section#whatsnew h2{font-size:140%; border-bottom:3px solid #0050ff; padding:.5em 0; margin:1em 0 .8em; }
}

@media all and (max-width: 767px) {
section#regular,section#whatsnew{width:96%; margin:5% auto;}
section#regular h2,section#whatsnew h2{font-size:100%; padding:2.5% 1.5%;}
}

.lazy {
	display:block;
	position:relative;
	background-color:#ecedf0;
}

/* small button */
.smbtn a {
	display:block;
	font-size:90%;
	height:28px;
	line-height:28px;
	border-radius:14px;
	color:#fff;
	text-align:center;
	font-weight:bold;
	text-decoration:none;
	background:#0050ff url(../img/arrow_fw.svg) no-repeat right 5px center;
	background-size:12%;
}

/*	unit
============================== */

section.lineup article.unit:after,
section.lineup div.items:after,
section.lineup header:after {
	content:"";
	clear: both;
	display: block;
}


/*	what's new
============================== */
section#whatsnew {position:relative;}
div.con-lef p.update {
	position: absolute;
	right:.5%;
	top:7%;
	color:#81899d;
	text-align:right;
	font-size:75%;
}
section#whatsnew h3 {
	line-height:1.5;
	color:#0050ff;
	text-align:left;
	padding:.5em 0;
}
section#whatsnew article.unit div.thumb {
	width:120px;
	float:left;
}
section#whatsnew article.unit div.thumb span.lazy {
	width:120px;
	height:90px;
}
section#whatsnew article.unit div.rigcol {
	padding-left:135px;
}
section#whatsnew article.unit div.txt > p {
	font-size:83%;
	line-height:1.5;
	padding:.5em 0;
}
section#whatsnew article.unit p.smbtn {
	width:130px;
	margin:0 0 0 auto;
}

@media all and (max-width: 767px) {
section#whatsnew .inner{background-color:#fff; padding:2% 4%;}
section#whatsnew h2{font-size:100%; padding:2.5% 1.5%;}
section#whatsnew h3{font-size:90%;}
div.con-lef p.update {top:2.5%;}
section#whatsnew article.unit div.txt > p{font-size:80%;}
}


/*	shopping unit
============================== */

section.lineup article.unit {margin:0 0 3em; padding:0 0 1em;}

/* header */
section.lineup article.unit header div.title {padding:.5em 1em;}
section.lineup article.unit header div.title h3 {padding:.5em 0; font-size:120%;}
section.lineup article.unit header div.title p.oa {color:#81899d; font-size:85%;}

section.lineup article.unit header div.picmain {width:100%;}
section.lineup article.unit header div.picmain a span {
	background-size:cover;
	position: relative;
	height: 0;
	padding-top: 28%;
}
section.lineup article.unit header div.picmain a span img {
	position: absolute;
	left: 0;
	top: 0;
	width:100%;
	height: 100%;
}
section.lineup article.unit header div.thumb span.lazy,
section.lineup article.unit ul li div.thumb span.lazy {
	background-size:cover;
}
section.lineup article.unit header p.smbtn {width:130px; margin:1em 0 0; font-size:90%;}

section.lineup article.unit ul {margin:0 auto;}
section.lineup article.unit ul li {background-color:#fff;}
section.lineup article.unit ul li div.items h4 {
	font-size:87.5%;
	line-height:1.5;
	word-break:break-all;
	margin-bottom:0.5em;
}
section.lineup article.unit ul li div.items p.price {
	font-weight:bold;
	color:#e7150b;
	text-align:right;
	font-size:100%;
	line-height:1.5;
	margin-bottom:.5em;
}
section.lineup article.unit ul li div.items p.txt {
	font-size:85%;
	line-height:1.5;
	padding:.5em 0 1em;
}

div.btns {width:100%; padding:1em 0;}
div.btns p.smbtn {font-size:90%; width:120px; margin:0 0 0 auto;}

section.lineup article.unit ul li div.items p.smbtn {width:130px;}
section.lineup article.unit ul li div.thumb img {display:block;}


@media all and (min-width: 768px) {
section.lineup article.unit header {margin:0 0 1em;}
section.lineup article.unit {background-color:#f6f7fa;}
section.lineup article.unit ul {margin:0 auto;
	display:flex;
	width:96%;
}
section.lineup article.unit ul li { padding:1em; width:47%; position:relative;}
div.btns p.smbtn{position:absolute; right:1em; bottom:1em;}

section.lineup article.unit ul li:nth-child(odd){margin:0 2% 0 0;}
section.lineup article.unit ul li div.thumb {
	margin:0 auto 1em;
}
section.lineup article.unit ul li div.thumb span.lazy {
	width:140px;
	height:140px;
	margin:0 auto;
}
section.lineup article.unit ul li div.thumb img {
	width:140px;
	height:140px;
}
}

@media all and (max-width: 767px) {
section.lineup article.unit {background-color:#fff; padding:0; margin:0 0 8%;}
section.lineup article.unit header div.title {padding:1em; border-bottom:1px solid #ecedf0;}
section.lineup article.unit header div.title h3 {font-size:100%; padding:0 0 .5em;}
section.lineup article.unit header div.title p.oa {font-size:80%; line-height:140%;}
section.lineup article.unit header p.smbtn {width:120px; margin:.5em 0 0; font-size:85%;}

section.lineup article.unit ul li div.items h4{font-size:85%;}
section.lineup article.unit ul li div.items p.price{font-size:95%;}
section.lineup article.unit header div.thumb span.lazy,
section.lineup article.unit header div.thumb img {
	width:106px;
	height:68px;
}

section.lineup article.unit ul li {border-bottom:1px solid #ecedf0; padding:1em;}
section.lineup article.unit ul li:last-child{border:none;}
section.lineup article.unit ul li div.thumb {float:left;}
section.lineup article.unit ul li div.thumb span.lazy {
	width:112px;
	height:112px;
}
section.lineup article.unit ul li div.thumb img {
	width:110px;
	height:110px;
}
section.lineup article.unit ul li div.items {padding:0 0 0 130px;}
section.lineup article.unit ul li div.items p.txt {	font-size:80%; padding:0 0 1em;}
div.btns {width:100%; padding:0;}
}


/*	carousel
============================== */
div.slideshow {
	border:1px solid #ecedf0;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
div.slideshow ul, div.slideshow ul li a, div.slideshow ul li a img {
	display:block;
}
div.slideshow ul {
	position:relative;
	overflow:hidden;
	background-color:#a0c8fa;
}
div.slideshow ul li a {
	background-size:cover;
}
div.slideshow ul li.loading {
	text-indent:110%;white-space:nowrap;overflow:hidden;
	width:50px;
	height:50px;
	background-image:url(/um/img/lazyloading_wht.png);
	background-repeat:no-repeat;
	position:absolute;
	left:50%;
	top:50%;
	margin-left:-25px;
	margin-top:-25px;
}
@media all and (min-width: 768px) {
div.slideshow {
	width:512px;
	padding:5px;
	margin:0 auto 15px;
}
div.slideshow ul, div.slideshow ul li a img {
	width:500px;
	height:246px;
}
}
@media all and (max-width: 767px) {
#mainbnr{background-color:#fff; padding:5% 0;}
div.slideshow {
	background-color:#fff;
	width:280px;
	padding:4px;
	margin:0 auto 10px;
}
div.slideshow ul, div.slideshow ul li a img {
	width:270px;
	height:133px;
}
/*div.slideshow ul li a{position:relative; width:100%; height:0; padding:49.2% 0 0;}
div.slideshow ul li a img {
	position: absolute;
	left: 0;
	top: 0;
	width:100%;
	height: 100%;
}*/
}


/*	banners
============================== */
ul.bnrs li:nth-child(odd) {
	float:left;
}
ul.bnrs li:nth-child(even) {
	float:right;
}
ul.bnrs li span, ul.bnrs li span a, ul.bnrs li span a img {
	display:block;
}
ul.bnrs li span {
	background-repeat:no-repeat;
	background-size:cover;
}
@media all and (min-width: 768px) {
ul.bnrs {
	width:512px;
	margin:0 auto 20px;
}
ul.bnrs li span a img {
	width:248px;
	height:70px;
}
}
@media all and (max-width: 767px) {
ul.bnrs {
	width:280px;
	margin:0 auto;
}
ul.bnrs li span a img {
	width:134px;
	height:38px;
}
}

/*	di2 right column
============================== */

/* layout */
div.con-rig ul {
	list-style-type:none;
}
div.con-rig img {
	display:block;
}
span.lazy b {
	background-repeat:no-repeat;
}

/* pickup */
div.con-rig section.pickup h2 {
	padding:0 1em 1em;
}

div.con-rig section.pickup p.p-footer {
	background-color:#4e4e4e;
	color:#fff;
	font-size:67.5%;
	padding:0.75em 1em 0.5em;
	line-height:1.5;
}

/* ranking */
div.con-rig section.ranking div.inner ol li {
background-image: linear-gradient(#3b3f4a, #3b3f4a);
background-repeat:no-repeat;
background-size:30px 100%;
background-position:0 0;
border-bottom:1px solid #ecedf0;
position:relative;
}
div.con-rig section.ranking div.inner ol li:last-child {
	border-bottom:none;
}
div.con-rig section.ranking div.inner ol li:before {
position: absolute; top:45%; left:10px;
	color:#fff;
	content:"1";
}
div.con-rig section.ranking div.inner ol li.s2:before {
	content:"2";
}
div.con-rig section.ranking div.inner ol li.s3:before {
	content:"3";
}
div.con-rig section.ranking div.inner ol li.s4:before {
	content:"4";
}
div.con-rig section.ranking div.inner ol li.s5:before {
	content:"5";
}

div.con-rig section.ranking div.inner ol li div.rank {
	padding:1em 1em 1em 3em;
}
div.con-rig section.ranking div.inner ol li div.rank > a {
	float:left;
	margin-right:15px;
}
div.con-rig section.ranking div.inner ol li div.rank div.text {
	padding-left:135px;
}
div.con-rig section.ranking div.inner ol li div.rank p {
	line-height:1.5;
	font-size:83%;
	margin-bottom:0.5em;
}
div.con-rig section.ranking div.inner ol li > a {
	display:block;
	line-height:1.5;
	font-size:75%;
	text-decoration:none;
	color:#2a2b2e;
	padding-right:15px;
	margin-bottom:10px;
}
div.con-rig section.ranking div.inner ol li div.rank p.price {
	font-size:95%;
	text-align:right;
	font-weight:bold;
	color:#e7150b;
	padding-right:5px;
}

/* Yellow button */
div.con-rig p.smbtn {
	float:right;
	width:120px;
	margin-bottom:0 !important;
}

@media all and (min-width: 768px) {
/* pickup */
div.con-rig section.pickup {
	padding:1.5em 0 0;
	background-color:#fff;
	margin-bottom:3em;
}
div.con-rig section.pickup h2 {
	border-radius: 10px 10px 0 0;
}
}


/* aside banner */
div.con-rig aside.bnrs ul{width:300px; margin:0 auto;}

div.con-rig aside.bnrs ul li {
	margin-bottom:1em;
}
div.con-rig aside.bnrs ul li a {
	display:block;
	text-decoration:none;
}
div.con-rig aside.bnrs ul li span {
	display:block;
	background-color:#3b3f4a;
}
div.con-rig aside.bnrs ul li span.lazy {
	position:relative;
	width:100%;
	height:169px;
	background-size:cover;
}
div.con-rig aside.bnrs ul li span.lazy img {
	position:absolute;
	border:0;
	width:100%;
	height:100%;
}
div.con-rig aside.bnrs ul li span.txt {
	color:#f6f7fa;
	line-height:1.5;
	font-size:75%;
	padding:8px;
}

@media all and (max-width: 767px) {
div.con-rig section.pickup {margin-bottom:2em;}

/* aside banner */
div.con-rig aside.bnrs ul {
	width:60%;
	margin:0 auto;
}
div.con-rig aside.bnrs ul li span.lazy{height:0; padding:56% 0 0;}

/* pickup */
div.con-rig section.pickup div.inner {
	background-color:#fff;
}
}
/* =================================
	TBS Modal CSS
================================= */

.md-box {
	position:absolute;
	z-index:5200;
	left:50%;
	top:50%;
}
.md-close {
	padding-right:4px;
}
.md-close a, .md-close a span {
	display:block;
}
.md-box .md-close a {
	width:100%;
/*	cursor:-webkit-zoom-out;
	cursor:zoom-out; */
}
.md-close a:after {
	display:block;
	content:"";
	clear:both;
}
.md-close a span {
	float:right;
	background-repeat:no-repeat;
	font-size:2px;text-indent:110%;white-space:nowrap;overflow:hidden;
	cursor:pointer;
}
.md-inner {
	position:relative;
	background-color:#000;
	overflow:hidden;
}
.md-inner video {
	width:100%;
	max-width:100%;
	height:auto;
}
.md-inner div.md-pics {
	background-repeat:no-repeat;
	background-position:center center;
}
.md-caption {
	text-align:left;
	line-height:1.25;
	padding:0.5em 0;
}

/*	case narrow
============================== */
.md-nrw {
	width:100%;
	position:absolute;
	z-index:5200;
}
.md-nrw .md-caption {
	background-color:#000;
	bottom:0;
	width:100%;
}


@media all and (min-width: 640px), (min-height: 640px) {
.md-close a {
	height:46px;
}
.md-close a span {
	width:40px;
	height:40px;
}
.md-close a span {
	background-position:left top;
}
.md-inner {
	margin-bottom:6px;
}
.md-caption {
	font-size:75%;
}
}
@media all and (max-width: 639px), (max-height: 639px) {
.md-close a {
	height:28px;
}
.md-close a span {
	width:24px;
	height:24px;
}
.md-close a span {
	background-position:0 -200px;
}
.md-inner {
	margin-bottom:4px;
}
.md-caption {
	font-size:67.5%;
}
}

/*	customize
============================== */
.md-close a span {
	background-image:url(/um/img/btn_modal.svg);
	background-color:#000;
}
.md-inner {
	/*background-color: rgba(0,0,0,0.5);*/
	-webkit-box-shadow: rgba(0,0,0,0.5) 0px 0px 5px 2px;
	box-shadow: rgba(0,0,0,0.5) 0px 0px 5px 2px;
}
.md-caption {
	color:#fff;
	word-break:break-all;
}
@media all and (min-width: 640px), (min-height: 640px) {
.md-close a span {
	border-radius:20px;
}
}
@media all and (max-width: 639px), (max-height: 639px) {
.md-close a span {
	border-radius:12px;
}
}