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

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

/*	update
============================== */

div.con-lef p.update {
	color:#7b7b7b;
	text-align:right;
	font-size:75%;
	line-height:1.25;
	float:right;
}
@media all and (min-width: 768px) {
div.con-lef p.update {
	margin-top:-46px;
}
}
@media all and (max-width: 767px) {
div.con-lef p.update {
	margin-top:-36px;
}
}


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

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


/*	what's new
============================== */

section#whatsnew article.unit h3 {
	color:#0073cf;
	text-shadow:none;
	font-size:87.5%;
	letter-spacing:0;
	text-align:left;
	background-color:#e6f1fa;
	background-image:none;
	padding:6px 12px;
	margin:0 0 10px;
	line-height:1.25;
	height:auto;
	border-radius: 0;
	border-top:solid #bfdcf3 2px;
	border-bottom:solid #bfdcf3 2px;
}
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;
	margin-bottom:0.75em;
}
section#whatsnew article.unit p.smbtn {
	float:right;
	width:140px;
	margin-bottom:0 !important;
}
section#whatsnew article.unit p.smbtn a {
	font-size:100%;
}






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

/* header */
section.programs article.unit header {
	border:1px solid #ccc;
	/* background-color:#e6f1fa; */
}
section.programs article.unit header div.title {
	padding:0 15px;
	border-bottom:1px solid #ccc;
	background-color:#e6f1fa;
}
section.programs article.unit header div.title h3 {
	color:#0073cf;
	text-shadow:none;
	font-size:87.5%;
	letter-spacing:0;
	text-align:left;
	background-color:transparent;
	background-image:none;
	padding:0;
	margin:0;
	line-height:1.5;
	height:auto;
	border-radius: 0;
}
section.programs article.unit header div.title p.oa {
	font-size:83%;
	line-height:1.5;
}

section.programs article.unit header div.picmain {
/*
	border:2px solid #ccc;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	margin:0 auto;
*/
	border-bottom:1px solid #ccc;
}
section.programs article.unit header div.picmain a span {
	background-size:cover;
	position: relative;
	height: 0;
	padding-top: 28%;
}
section.programs article.unit header div.picmain a span img {
	position: absolute;
	left: 0;
	top: 0;
	width:100%;
	height: 100%;
}
section.programs article.unit header p.txt {
	font-size:83%;
	line-height:1.5;
}
section.programs article.unit header p.smbtn {
	width:140px;
	float:right;
}

div.btns {
	width:100%;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	padding:0 10px 10px;
}
div.btns p.smbtn {
	width:125px;
}
div.btns p.bmov {
	float:left;
}
div.btns p.bishp {
	float:right;
}

div.btns p.bmov a {
	background-color:#fcc;
	background-image:-moz-linear-gradient(transparent 50%, #ffb2b2 50%);
	background-image:-webkit-gradient(linear, left top, left bottom, from(transparent),color-stop(0.5,transparent),color-stop(0.5,#ffb2b2),to(#ffb2b2));
	background-image:-ms-linear-gradient(transparent 50%, #ffb2b2 50%);
	background-image:linear-gradient(transparent 50%, #ffb2b2 50%);
}

@media all and (min-width: 768px) {
section.programs article.unit header div.title {
	/* margin-bottom:15px; */
}
section.programs article.unit header div.picmain {
	/* width:504px; */
	margin-bottom:15px;
}
section.programs article.unit header div.picmain img {
/*
	width:500px;
	height:140px;
*/
}
section.programs article.unit header p.txt {
	padding:10px 34px;
}
section.programs article.unit header p.smbtn {
	/* padding-right:20px; */
	padding-bottom:20px;
}
section.programs article.unit ul li {
	position:relative;
	padding-bottom:38px;
}
div.btns {
	position:absolute;
	bottom:0;
}

}


@media all and (max-width: 767px) {

section.programs article.unit header div.title {
	/* margin-bottom:10px; */
}
section.programs article.unit header div.picmain {
	/* width:260px; */
	margin-bottom:10px;
}
section.programs article.unit header div.picmain img {
/*
	width:256px;
	height:72px;
*/
}
section.programs article.unit header p.txt {
	padding:10px;
}
section.programs article.unit header p.smbtn {
	padding-bottom:10px;
}
}













section.programs article.unit ul {
	border-left:1px solid #ccc;
}
section.programs article.unit ul li {
	border-right:1px solid #ccc;
	border-bottom:1px solid #ccc;
}
section.programs article.unit ul li div.items {
	padding:0 15px 15px;
}
section.programs article.unit ul li div.items h4 {
	font-size:87.5%;
	line-height:1.5;
	word-break:break-all;
	margin-bottom:0.5em;
}
section.programs article.unit ul li div.items p.price {
	font-weight:bold;
	color:#c00;
	text-align:right;
	font-size:87.5%;
	line-height:1.5;
	margin-bottom:0.5em;
}
section.programs article.unit ul li div.items p.txt {
	font-size:83%;
	line-height:1.5;
	margin-bottom:1em;
}
section.programs article.unit ul li div.items p.smbtn {
	width:140px;
	float:right;
}

section.programs article.unit header div.thumb span.lazy,
section.programs article.unit ul li div.thumb span.lazy {
	background-size:cover;
}

section.programs article.unit ul li div.thumb span.lazy {
	border:1px solid #ccc;
}
section.programs article.unit ul li div.thumb img {
	border:1px solid #ccc;
	display:block;
}


@media all and (min-width: 768px) {

section.programs article.unit {
	border-left:8px solid #0073cf;
	padding-left:10px;
	margin:0 9px 20px;
}

section.programs article.unit header div.rigcol {
	border-left:1px solid #ccc;
}

section.programs article.unit header p.smbtn {
	margin-right:15px;
}

section.programs article.unit ul {
	display:table;
	width:100%;
	box-sizing:border-box;
}
section.programs article.unit ul li {
	display:table-cell;
	width:50%;
	box-sizing:border-box;
}
section.programs article.unit ul li div.thumb {
	padding:15px 0;
	/* background-color:#e6f1fa; */
	border-bottom:solid 1px #ccc;
	margin-bottom:15px;
}
section.programs article.unit ul li div.thumb span.lazy {
	width:140px;
	height:140px;
	margin:0 auto;
}
section.programs article.unit ul li div.thumb img {
	width:140px;
	height:140px;
}

}

@media all and (max-width: 767px) {

section.programs article.unit header p.smbtn {
	margin-right:10px;
}

section.programs article.unit {
	border-left:6px solid #0073cf;
	padding-left:8px;
	margin-bottom:15px;
}



section.programs article.unit header div.title {
	padding:0 10px;
}
section.programs article.unit header div.title:after {
	content: "";clear:both;display:block;
}
section.programs article.unit header div.thumb span.lazy,
section.programs article.unit header div.thumb img {
	width:106px;
	height:68px;
}

section.programs article.unit header {
	margin-bottom:0;
}

section.programs article.unit ul li div.thumb {
	float:left;
	padding-left:10px;
	padding-top:10px;
}
section.programs article.unit ul li div.thumb span.lazy {
	width:112px;
	height:112px;
}
section.programs article.unit ul li div.thumb img {
	width:110px;
	height:110px;
}

section.programs article.unit ul li div.items {
	padding:10px 10px 10px 135px;
}

}



/*	carousel
============================== */
div.slideshow {
	border:1px solid #ccc;
	background-color:#fff;
	-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:#bedcf4;
/*
	-webkit-box-shadow: hsla(0,0%,0%,0.5) 0px 0px 3px 1px;
	-moz-box-shadow: hsla(0,0%,0%,0.5) 0px 0px 3px 1px;
	-ms-box-shadow: hsla(0,0%,0%,0.5) 0px 0px 3px 1px;
	box-shadow: hsla(0,0%,0%,0.5) 0px 0px 3px 1px;
*/
}
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) {
div.slideshow {
	width:280px;
	padding:4px;
	margin:0 auto 10px;
}
div.slideshow ul, div.slideshow ul li a img {
	width:270px;
	height:133px;
}
}


/*	banners
============================== */
ul.bnrs li {
	border:1px solid #ccc;
}
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 10px;
}
ul.bnrs li span a img {
	width:134px;
	height:38px;
}
}


/* =================================
	TBS Modal CSS
================================= */

.md-box {
	position:absolute;
	z-index:10001;
	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;
}
}


div.modal-overlay {
z-index:10000;position:absolute;background-color:#000;width:100%;height:100%;left:0;top:0;right:0;bottom:0;opacity:0.9;
}

/*	印刷禁止対応
============================== */
@media print {
div.modal-overlay {
	display:none;
}
.md-box, .md-close {
	display:none;
}
}
