@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Montserrat');
/* CSS Document */
/*--------------------------------------*/
/*ヘッダー部分*/
/*--------------------------------------*/
header{
	position: relative;
}
header .contArea{
	position: relative;
	z-index: 2;
	padding: 2em 0 1em;
}

.catch{
	background-color: var(--catch);
	color: #fff;
	text-align: center;
	padding:1.2em 1em;
	font-weight: bold;
	position: absolute;
	top:1em;
	left: 0;
	width: 100%;
}
.topBox{
	position: relative;
	display: block;
	justify-content: center;
	align-items: center;
}
.topBox:before{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 80%;
	top:10%;
	left: 0;
	background-color: #fff;
	transform: skewY(-2deg);
	z-index: -1;
}
h1{
	width:100%;
	display: inline-grid;
	vertical-align: middle;
	padding: 3em 0;
	align-items: center;
	text-align: center;
}

/*--------------------------------------*/
/*タイトル一覧*/
/*--------------------------------------*/
#mainContents{
	/*background-image: url("../img/gray_stripe.png");*/
	padding: 1em 0 3em;
}
.listWrap{
	display: grid;
	grid-template-columns:repeat(2, 1fr);
	column-gap: 1em;
	row-gap: 1em;
	padding: 1em 0 2em;
}
.listWrap .itemBox{
	background-color: #fff;
	box-shadow: 0 0 5px #666;
	padding: 1em;
	position: relative;
	display: none;
	border: var(--red) 1px solid;
	/*transition: transform 0.5s 0s ease-out,opacity 0.5s 0s ease;
	transform: translateY(1em);
	opacity: 0;*/
}
.listWrap .itemBox.show{
	display: block;
	/*opacity: 1;
	transform: translateY(0);*/
}
.listWrap .itemBox .img{
	width: 40%;
	display: inline-block;
	vertical-align: middle;
}
.listWrap .itemBox .img img{
	border: #ccc 2px solid;
	border-radius: 6px;
}
.listWrap .itemBox img.icon{
	position: absolute;
	display: block;
	width: 33%;
	height: auto;
	top:0;
	left:0;
}
/*.listWrap .itemBox img.icon2{
	position: absolute;
	display: block;
	width: 4em;
	height: 4em;
	top:-0.5em;
	left: 3.5em;
}*/
.listWrap .itemBox img.icon2.noticon1{left: -0.5em;}

.listWrap .itemBox .txtArea{
	width: calc(60% - 1em);
	margin-left: 1em;
	display: inline-block;
		vertical-align: middle;

}
.gameTitle{
	padding: 0.5em;
	border-left: var(--titleLine) 0.5em solid;
	border-bottom: var(--titleLine) 2px solid;
	color: #000;

}
.priceArea{
	padding: 0.5em;
}
.basePrice{
	color: #aaa;
	display: inline-block;
	vertical-align: middle;
}
.percent{
	display: inline-block;
	vertical-align: middle;
	padding: 0.2em 0.5em;
	background-color: var(--red);
	color: #fff;
	border-radius: 6px;
	margin-left: 0.5em;
}
.salePrice{
	color: var(--red);
	font-size: 2em;
	font-weight: bold;
	line-height: 1.5em;
}
.seleEnd{
	color: var(--red);
	font-size: max(0.8em,13px);
}

.gridArea{
	display: grid;
	column-gap: 0.25em;
	row-gap:  0.25em;
	grid-template-columns:repeat(2, 1fr);
	padding: 0.5em 0 0 ;
}
.webBt{
	background-color: var(--titleLine);
	color: #fff;
	padding:1em  0.5em;
	display: grid;
	position: relative;
	border-radius: 50px;
	align-items: center;
	justify-content: center;
	font-size: max(0.9em, 11px);
}

.buyBt{
	background-color: var(--red);
	color: #fff;
	padding:1em 0.5em;
	display: block;
	position: relative;
}
.buyBt span,.webBt span{
	position: relative;
	z-index: 1;
	padding-left: 1em;
}
.buyBt span:before,.buyBt span:after,.webBt span:before,.webBt span:after{
	content: "";
	position: absolute;
	width: 0.3em;
	height: 0.3em;
	border-top: 0.2em solid #fff;
	border-right: 0.2em solid #fff;
	transform: rotate(45deg);
	left: -0.2em;
	top:0.54em;
}
.webBt span:before,.webBt span:after{

	top:0.65em;
}

.buyBt span:after,.webBt span:after{
	left: 0.25em;
	
}

.webBt:before,.buyBt:before{
	content: "";
	top:0;
	bottom: 0;
	position: absolute;
	width: 0%;
	transition: all 0.2s 0s ease-out;
	left:0;
	box-sizing: border-box;
	/*background-color:#fba099;*/
	background-color:#fff;
	opacity: 0.2;
}
.buyBt:hover:before,.webBt:hover:before{
	width: 100%;
}

/*.tagList{
	padding: 0.5em 0 0;
	border-top: var(--line) 1px dashed;
	margin-top: 0.5em;
}
.tagBt{
	display: inline-block;
	vertical-align: middle;
	padding:0 1em;
	border: var(--line) 1px solid;
	border-radius: 6px;
	font-size: max(0.9em,14px);
	line-height: 1.8em;
	margin: 0.2em;
	cursor: pointer;
}
.tagBt:hover{

	background-color: #eee;
}
.allShow{
	padding: 1em 4em;
	text-align: center;
	cursor: pointer;
	border: var(--line) 2px solid;
	display: none;
	margin: 2em auto;
	border-radius: 50px;
	background-color: #fff;

}
.allShow:hover{
	background-color: #eee;
}
.allShow.show{
	display: block;
}
.sarchTxtArea{
	padding-top: 2em;
	text-align: center;
}
.sarchTxt{ font-size: 1.5em; line-height: 2em; font-weight: bold;background-color: var(--titleLine); border-radius: 50px;}
.sarchNum{ margin-left: 1em;padding-top: 0.5em;}*/


/*見出し*/
h2{ font-size: 1.5em; line-height: 2em; background-color: var(--titleLine); border-radius: 50px; padding: 0.5em 1em; color: #fff; line-height: 1.2em;}
/*絞り込みボタン*/
.switchBtArea{
	display: grid;
	column-gap: 0.5em;
	row-gap: 0.5em;
	grid-template-columns:repeat(4, 1fr);
	margin-bottom: 1em;
	padding: 1em 0;
}
.switchBtArea a{
	padding: 2em 0.5em;
	text-align: center;
	background:#ffe6ea;
	color: #784450;
	
	border-radius: 10px;
	/*border: var(--line) 2px solid;*/

	display: grid;
	align-items: center;
	box-shadow: 1px 1px 2px var(--line);
	position: relative;
	
}
.switchBtArea a .box{
	font-weight: bold;
	line-height: 1.3em;
}
.switchBtArea a:not(.selected):hover{
	background:linear-gradient(#ffe6ea,#fcc4d1);
}
.switchBtArea a.selected{
	background: #fa90a7;
	color: #fff;
}
.switchBtArea a.selected:after{
	content: "▼";
	width: 100%;
	height: 1em;
	line-height: 1em;
	text-align: center;
	color: #fff;
	position: absolute;
	display: block;
	left: 0;
	bottom: 0.5em;
	font-size: 0.6em;
}
/*---------------------------------------------------------
@media
------------------------------------------------------------*/
@media (max-width: 1024px) {

}

@media (max-width: 912px) {
/*--------------------------------------*/
/*スライダー*/
/*--------------------------------------*/


	.listWrap{
		grid-template-columns:repeat(1, 1fr);
	}

}
@media (max-width: 1100px) {
  .pt5_thum {
   
    height: 28em;

  }

}
@media (max-width: 800px) {
	h1{

	padding: 1em 0;
		text-align: center;
		width: 100%;
}
header{

}
header:before{
	background-size: 20% auto;

}

header .contArea{

	padding: 1em 0 0;
}
.catch{

	padding:1em;
}

	.topBox{
	display: block;
		padding-top: 1em;

}
	.slideArea {
		width: calc(100vw - 4em);
		margin: 0 auto;
		grid-row-gap: 0;
		max-width: none;
		flex-flow: column nowrap;
		display: flex;
	}
	.pt5_thum {
		width: 100%;
	  height: 20vw;
		margin-top: 0.5em;
	}
  .pt5_thum .swiper-wrapper {
    flex-direction:row;
  }
  .pt5_thum .swiper-slide {
    flex-flow: row nowrap;
  }
.topBox:before{

	width: 100%;
	top:calc(15% + 2em);
	height: 70%;
}
.listWrap .itemBox img.icon{
	width: 40%;
}

/*.listWrap .itemBox img.icon{
	position: absolute;
	display: block;
	width: 4.5em;
	height: 4.5em;
	top:-0.5em;
	left: -0.5em;
}
.listWrap .itemBox img.icon2{
	position: absolute;
	display: block;
	width: 4.5em;
	height: 4.5em;
	top:-0.5em;
	left: 4.3em;
}*/
	
}
@media (max-width: 480px) {
	.webBt{
		font-size: max(0.8em, 11px);
	}
	/*絞り込みボタン*/
.switchBtArea{
	grid-template-columns:repeat(2, 1fr);
}

}
@media (max-width: 380px) {
	.listWrap .itemBox{padding: 0.5em;}
	.listWrap .itemBox .txtArea{
		width: calc(60% - 0.5em);
		margin-left: 0.5em;

	}
	.webBt{
		font-size: max(2.8vw, 10px);
	}
}

