.wrap {position: relative;z-index: 998;}
.wrap #wrapBox >div {position: relative;padding: 50px 0;}
.wrap #wrapBox .bg { position: absolute; width: 100%; height: 100%; background: no-repeat 50% / cover; top: 0; left: 0; opacity: .4; }
.wrap .title{text-align: center;font-size: 32px;font-weight: 400;letter-spacing: 7px;color: #d7ac47;}
.wrap .stitle{font-family: 'Lato', sans-serif;font-size: 12px;letter-spacing: 1px;font-weight: 200;text-align: center;}

/* more */
p.more { padding: 20px 0; text-align: center; }
p.more a { position: relative; overflow: hidden; padding: 0 30px; display: inline-block; align-items: center; border: #d3d3d3 solid; border-width: 0 0 1px 1px; letter-spacing: .06em; line-height: 30px; transition: 1.2s ease 1.8s; transform: translateX(0%); }
p.more a:before { position: absolute; width: 100%; height: 100%; background: #000; top: 0; left: 0; transform: translateX(-140%) skewX(63deg); transition: .4s cubic-bezier(.23,1,.32,1); content: "" }
p.more a:after { position: absolute; width: 85%; height: 1px; background: #d3d3d3; display: block; top: 0; left: 0; content: ""; }
p.more a font { position: relative; padding: 7px 0; display: inline-block; color: #000; z-index: 2; }
p.more a span { position: relative; margin-left: 70px; width: 100px; height: 1px; background: #000; display: inline-block; transition: transform .4s cubic-bezier(.23,1,.32,1),background .4s ease; transform-origin: center left; }
p.more a span:after { position: absolute; width: 0; height: 0; border-style: solid; border-width: 3px 0 3px 6px; border-color: transparent transparent transparent #000; display: block; right: 0; top: -3px; content: ""; }

/* bgTxt */
.bgTxt { position: absolute; z-index: 1; }
.bgTxt.stitle { -webkit-writing-mode: vertical-lr; writing-mode: vertical-lr; font-size: 70px; }
.bgTxt.title { width: 100%; text-align: right; font-size: 140px; color: #edf1f3; }

/* gameBox */
#gameBox .imgs{display:flex;flex-wrap: wrap;justify-content: center;align-items: flex-end;}
#gameBox .info{margin: 20px;width: calc((100%/3) - 40px);position: relative;}
#gameBox .info a{position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
#gameBox .info h3{text-align: center;font-size: 17px;font-weight: 300;margin-top: 10px;letter-spacing: 3px;}

/* NewsBox */
#NewsBox , #productBox { padding-bottom: 5vw; }
#NewsBox ul , #productBox .wall { position: relative; margin-bottom: 0; padding: 7vw 0 0; display: block; font-size: 0; z-index: 2; }
#NewsBox ul li { position: relative; text-align: right; }
#NewsBox ul li .img {}
#NewsBox ul li .img a.photo { transform-origin: center top; transform: translate3d(0,0,-300px) rotateZ(-3deg) rotateY(30deg) rotateX(-15deg); transition-property: transform,opacity; transition-duration: 3s,.5s; transition-timing-function: cubic-bezier(.755,.05,.855,.06),ease; opacity: 0; }
#NewsBox ul li.slick-current .img a.photo { transform: translate3d(0,0,0) rotateZ(0deg) rotateY(0deg) rotateX(0deg); transition: transform 1s cubic-bezier(.23,1,.32,1) .2s,opacity .6s ease .2s; opacity: 1; }
#NewsBox ul li .info p a { padding: 2px 15px; background: #000; display: inline-block; color: #fff; vertical-align: middle; }
#NewsBox ul li .info p font { margin-left: 10px; display: inline-block; }
#NewsBox ul li .info h3 { margin: 10px 0; }
#NewsBox ul li .info h3 a {height: auto;font-size: 18px;color: #fff;-webkit-line-clamp: 1;font-weight: 400;letter-spacing: 3px;text-align: center;}
#NewsBox .btn { position: absolute; left: calc(35% - 80px); bottom: 10px; z-index: 10; }
#NewsBox .btn a { margin: 0 10px; color: #000; }
#NewsBox p.more { margin-top: 50px; }

/* productBox */
#productBox .bgTxt.stitle { top: -4vw; z-index: 3; }
#NewsBox ul , #productBox .wall {padding: 50px 0 0;}
#productBox .wall-column { width: calc(100% / 3); display: inline-block; box-sizing: border-box; }
#productBox .article { position: relative; margin: 15px 10px 40px; background: #fff; }
#productBox .article a { position: absolute; width: 100%; height: 100%; display: block; top: 0; left: 0; z-index: 10; }
#productBox .article .imgBox { position: relative; overflow: hidden; }
#productBox .article .imgBox article { position: absolute; padding: 20px 20px 30px; width: calc(100% - 40px); background: #fff; color: #777070; bottom: -99px; z-index: 2; }
#productBox .article .imgBox article p { height: 58px;  -webkit-line-clamp: 2; }
#productBox .article .imgBox:after { position: absolute; width: 60%; height: 20px; background: #fff; display: block; left: 0; bottom: 0; z-index: 1; content: ""; }
#productBox .article .info { position: relative; margin-top: -15px; padding: 0 20px 15px; z-index: 9; }
#productBox .article .info p span { display: inline-block; color: #d80707; }
#productBox .article .info p span.old { margin-right: 10px; color: #8f8f8f; }
#productBox .article .info h3 { margin: 20px 0; height: 30px; font-weight: 400; font-size: 18px; -webkit-line-clamp: 1; }

/* aboutBox */
#aboutBox {overflow: hidden;background: #272a2b;}
#aboutBox .workframe{display:flex;flex-wrap: wrap;justify-content: space-between;align-items: center;}
#aboutBox .imgs {width: 50%;}
#aboutBox .info {width: 45%;}
#aboutBox .info article {font-size: 16px;line-height: 200%;color: #dddddd;text-align: justify;letter-spacing: 2px;font-weight: 300;margin-top: 50px;}
#aboutBox #SeoStarRating { margin: 15px 0 30px; text-align: right; }
#aboutBox p.more { text-align: left; }

/* bookBox */
#bookBox { padding: 50px 0 50px calc((100% - 1100px) / 2); font-size: 0; }
#bookBox .row { position: relative; width: 50%; display: inline-block; z-index: 2; }
#bookBox #customBox .bgTxt.stitle { z-index: 2; }
#bookBox #customBox ul { position: relative; padding: 0 10% 0 20%; z-index: 3; }
#bookBox #customBox ul li h3 { font-size: 40px; }
#bookBox #customBox p.more a { border-color: #000; }
#bookBox #customBox p.more a:after { background: #000; }
#bookBox #BookList ul { overflow: hidden; }
#bookBox #BookList ul li { position: relative; margin-bottom: 1px; float: left; width: 25%; }
#bookBox #BookList ul li:nth-child(6n) { width: 50%; }
#bookBox #BookList ul li a.photo { margin-right: 1px; }
#bookBox #BookList ul li h3 { position: absolute; padding: 5px 20px; width: calc(100% - 41px); background: rgba(0, 0, 0, .7); left: 0; bottom: 0; }
#bookBox #BookList ul li h3 a { height: 30px; color: #fff; text-align: center; -webkit-line-clamp: 1; }

@keyframes newimg { 0% { background-position: 0; } to { background-position: -7px; } }
@-webkit-keyframes newimg { 0% { background-position: 0; } to { background-position: -7px; } }

@media screen and (min-width: 1281px) {
	p.more a:hover { border-color: #000; }
	p.more a:hover:before { transform: translateX(0) skewX(0); }
	p.more a:hover:after { background: #000; }
	p.more a:hover font { color: #fff; }
	p.more a:hover span { background: #fff; transform: scale(1.1); }
	p.more a:hover span:after { border-color: transparent transparent transparent #fff; }
	#productBox .wall-column .article:hover .imgBox article { bottom: 0; }
}
@media screen and (max-width: 1280px) {
	#bookBox { padding: 50px 5%; font-size: 0; }
	#bookBox #customBox ul { padding: 0 0 0 130px; }
	#bookBox #BookList { padding: 50px 0 20px; }
}
@media screen and (min-width: 981px) {
}
@media screen and (max-width: 980px) {
	.bgTxt.stitle { position: relative; font-size: 10vw; -webkit-writing-mode: inherit; writing-mode: inherit; }
	.bgTxt.title { display: none; }
	#NewsBox ul li { text-align: center; }
	#NewsBox ul li .info { margin-top: 20px; width: calc(80% - 10px); display: inline-block; }
	#NewsBox .btn { left: auto; right: 0; }
	#productBox .bgTxt.stitle { padding: 6vw 0 0; top: 0; }
	#productBox .wall-column { width: 50%; }
	#aboutBox .info .title { font-size: 8vw; }
	#aboutBox .info .stitle { font-size: 5vw; }
	#bookBox #customBox ul { padding: 0; }
	#bookBox #BookList ul li , #bookBox #BookList ul li:nth-child(6n) { width: calc(100% / 3); }
}
@media screen and (max-width: 680px) {
	#productBox .wall { margin: auto; width: 80%; }
	#productBox .wall-column, #aboutBox .info { width: 100%; }
	#gameBox .info{width: calc((100%/2) - 20px);margin: 10px;}
	#gameBox .imgs{margin-top:40px;}
	#aboutBox .imgs{width:100%;}
}