.wrap { position: relative; background: #fff; z-index: 998; }
.wrap #wrapBox >div { position: relative; }
.wrap #wrapBox .bg {position: absolute;width: 100%;height: 100%;background: no-repeat 50% / cover;top: 0;left: 0;}

/* more */
p.more { padding: 20px 0; text-align: center; }
p.more a {position: relative;overflow: hidden;padding: 8px 30px;display: inline-block;align-items: center;background: #b11111;border-width: 0 0 1px 1px;letter-spacing: .06em;line-height: 30px;transition: 1.2s ease 1.8s;transform: translateX(0%);border-radius: 5px;color: #fff;}
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 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; }

/* NewsBox */
#NewsBox , #productBox {}

#NewsBox ul { 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 { position: relative; padding: 0 10px 10px 0; width: calc(60% - 10px); display: inline-block; }
#NewsBox ul li .img:before { position: absolute; width: calc(100% - 10px); height: calc(100% - 10px); background: url(/images/34/img-bgline.png); top: 10px; left: 10px; -webkit-animation: newimg 1s linear infinite; animation: newimg 1s linear infinite; content: ""; }
#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: 60px;font-size: 25px;color: #000;-webkit-line-clamp: 2;line-height: 130%;}
#NewsBox .btn {position: absolute;left: calc(35% - 50px);bottom: 3vw;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 {padding: 2.5vw 0;}
#productBox .wall {display:flex;flex-wrap: wrap;padding: 40px;}
#productBox .article {position: relative;width: calc(100%/4);}
#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;margin: 15px;border-radius: 25px;}
#productBox .article .imgBox img{width:100%;}
#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 .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;position: relative;background: #090223;}
#aboutBox:before {position: absolute;width: 20vw;height: 100%;background: #f2f8fa;background: -moz-linear-gradient(left, rgba(0,0,0,0) 0%, rgb(242, 248, 250) 75%);background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%,rgb(242, 248, 250) 75%);background: linear-gradient(to right, rgba(0,0,0,0) 0%,rgb(9 2 35) 75%);filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#f2f8fa',GradientType=1 );display: block;top: 0;left: calc(30vw + 1px);z-index: 2;content: "";}
#aboutBox .imgs { position: absolute; width: 50vw; height: 100%; top: 0; left: 0; z-index: 1; }
#aboutBox .imgs .list {height: 100%;background: no-repeat 50% / cover;}
#aboutBox .info {position: relative;padding: 70px 0 70px 50vw;width: 750px;z-index: 3;}
#aboutBox .info .title {font-size: 40px;text-transform: uppercase;color: #fff;font-weight: bold;}
#aboutBox .info .stitle {margin-bottom: 25px;padding: 5px 0 15px;font-size: 20px;color: #fff;}
#aboutBox .info article {font-size: 16px;line-height: 200%;color: #f3f3f3;text-align: justify;margin-bottom: 20px;}
#aboutBox #SeoStarRating { margin: 15px 0 30px; text-align: right; }
#aboutBox p.more { text-align: left; }

/* bookBox */
#bookBox {width: 80%;margin: 30px auto;}
#bookBox .row {position: relative;z-index: 2;}
#bookBox #customBox .bgTxt.stitle { z-index: 2; }
#BookList{margin-top: 30px;}
#customBox h3 {text-align:center;font-size: 40px;letter-spacing: 5px;}
#customBox article {text-align:center;width: 50%;margin: 0 auto;}
#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 {}
#bookBox #BookList ul {overflow: hidden;display: flex;flex-wrap: wrap;}
#bookBox #BookList ul li {position: relative;width: calc((100%/5) - 40px);margin: 20px;}
#bookBox #BookList ul li a img { width:100%;}
#bookBox #BookList ul li h3 {padding: 5px 20px;width: calc(100% - 40px);background: rgb(177 17 17);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 (max-width: 1440px) {
    #aboutBox .info{width: 45%;}
}
@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) {
	#aboutBox .imgs , #bookBox .row { width: 100%; }
	#aboutBox .imgs .list {}
	#aboutBox .info {padding: 70px 15%;width: 70%;background: rgb(0 0 0 / 70%);}
	#aboutBox:before { opacity: 0; }
	#aboutBox p.more a:after { background: #000; }
	#aboutBox p.more a { border-color: #000; }
	#bookBox {font-size: 0;}
	#bookBox #customBox ul { padding: 0 0 0 130px; }
    #bookBox #BookList ul li {width: calc((100%/5) - 20px);margin: 10px;}
}
@media screen and (min-width: 981px) {
	#NewsBox ul li .info { position: absolute; width: 39%; left: 0; bottom: 20%; }
}
@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 .img {width: calc(90% - 10px);}
	#NewsBox ul li .info {margin-top: 20px;width: calc(90% - 10px);display: inline-block;}
    #customBox article {width: 100%;}
    #bookBox {width: 90%;}
	#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 {width: calc((100%/3) - 20px);}
}
@media screen and (max-width: 680px) {
	#productBox .wall {}
	#productBox .wall-column { width: 100%; }
	#aboutBox .imgs .list { height: 180vw; }
}
@media screen and (max-width: 500px) {
	#NewsBox .btn {bottom: -10px;display: none;}
	#bookBox #BookList ul li , #bookBox #BookList ul li:nth-child(6n) {width: calc((100%/2) - 20px);}
	#bookBox #BookList ul li:nth-child(3n) {}
}
@media screen and (max-width: 450px) {
	#productBox .wall {
    padding: 20px;
}
	#aboutBox .info { padding: 10vw 5vw; width: 90vw; }
	#productBox .article{width:50%;}
	#NewsBox ul{padding:50px 0;}
}