@charset "utf-8";
/* newTop */

/*-- メインビジュアル --*/
#mainvisual {
  /*background: #009fe8;*/
	width:100%;
	position: relative;
	text-align: center;
	margin-bottom: 0;
}

#mainvisual .fade div img {
	width:100%;
	object-fit: cover;
}

#mainvisual .fade .slick-list .slick-slide img,
#mainvisual .fade .slick-list .slick-slide img.first-slide {
	transform: scale(1.0);
	transition: 8s linear;
}

/*
#mainvisual .fade .slick-list .slick-slide.slick-current:nth-child(1) img {
	transform: scale(1.0125);
}
*/

#mainvisual .fade .slick-list .slick-slide.slick-current img {
	transform: scale(1.0375);
}

#mainvisual .mvthumwrap {
	width: 100%;
	background:#EFEFEF;
	opacity: 0.7;
	text-align: center !important;
}

#mainvisual .mvthum {
	position:relative;
	width:100%;
	/*max-width: 1000px;*/
	z-index: 1000;
	margin:0 auto !important;
	background:#EFEFEF;
}

#mainvisual .mvthum img { margin:5px auto ;}

/*-- メインビジュアル下コンテンツ --*/
.content {
  /*max-width: 1200px;*/
  margin: 0 auto;
  text-align: center;
  /*background: #faed00;*/
  padding-bottom: 20px;
}


section {
  /*background: #f29600;*/
  clear: both;
  text-align: center;
}

/*-- アナウンス（システムメンテ等） --*/
.top-anno {
	/*margin: 80px auto;*/
	margin: 40px auto;
	max-width: 1200px;
	padding:0 2.5em;
}

.alart,
.announce {
	clear: both;
	display: block;
	line-height: 200%;
	margin-bottom:20px;
	padding: 1em;
}

.alart {border: 1px solid #E52424;}
.announce {border: 1px solid #000;}

.alart a,
.announce a { color:#000; text-decoration: underline; }

/*-- キャンペーン／ピックアップ --*/

.pickup {
	background: url("/assets/images/top/bg_pickup.jpg") repeat;
	padding:60px 2em 30px 2em;
	border-bottom: 1px solid #472219;
	margin-bottom: 0;
}

h2 {
	font-size:30px;
	font-weight: normal;
	margin-bottom:1.8em;
}

.pubnrarea {
	margin: 0 auto 50px auto;
  	text-align: center;
	max-width:1200px;
	display: flex;
	justify-content:space-between;
	flex-wrap:wrap;
}

.topbnr {
	display: block;
	color: #4D4D4D;
	width:33%;
	max-width: 370px;
	margin-bottom: 2em;
}

.topbnr img {
	width: 100%;
	margin: 0 !important;
	border-radius: 12px;
	transition-duration: 0.5s;
}

.topbnr img:hover {
	border-radius: 12px;
  box-shadow: 5px 5px 8px rgba(0,0,0,0.2);
  transform: translateY(-5px);
	opacity: 0.7;
}

.topbnr .pucomm {
	font-size: 14px;
	letter-spacing: 0.14px;
	text-align: left;
}

.topbnr h3 {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0;
	margin: 0.3em auto;
}

.moving-more {
	display:block;
	cursor:pointer;
  transition: all 0.5s ease-in;
}

.more {
	color:#35318F;
	display: block;
}

/*
.arrow-bottom {
  display: inline-block;
  width: 26px;
  height: 26px;
  margin: -2px 10px 0 10px;
  border-bottom: 4px solid #35318F;
  border-right: 4px solid #35318F;
  transform: rotate(45deg);
}
*/
.arrow-bottom {
  display: block;
  position: relative;
  width: 26px;
  height: 26px;
  margin: -10px auto 40px auto;
  cursor:pointer;
	}
	
.arrow-bottom::after {
  display: block;
  content:" ";
  width: 26px;
  height: 26px;
  border-bottom: 4px solid #35318F;
  border-right: 4px solid #35318F;
  transform: rotate(45deg);
  /*transition: all 0.5s ease-in;*/
  right:1px;
  top:4px;
  bottom:4px;
  position:absolute;
  transition: all 0.5s ease-in;
}
	
.topbnr-more {
	display: none;
	/*margin-top:-70px;*/
	margin-top:-50px;
}

.topbnr-more.sec {
	display: none;
	margin-top:-50px;
}

.active-more {
	display: none;

}

/*.active-more .arrow-bottom:after {
  transform: rotate(225deg);
  top:20px;
  bottom:10px;
}
*/	

/*-- 図書カードNEXTについて --*/

.aboutnext {
	background: url("/assets/images/top/bgb_about.jpg") repeat;
	margin-top:0;
	position: relative;
	overflow: hidden;
	/*padding-bottom:50px;*/
	padding-bottom:150px;
	padding-top:50px;
	z-index: 500;
}

h2.about {
	/*border:2px solid #90422E;*/
	background: url("/assets/images/top/bg_about.png") repeat;
	border-radius: 50px;
	padding:0.3em 1.5em;
	display: inline-block;
	/*box-shadow: 5px 5px 5px 0 rgba(87, 35, 22, .3); 外側にブラウンのシャドウ*/
	box-shadow: inset 0 3px 5px 0 rgba(0, 0, 0, .3);
}

.aboutnext .bg01 {
	position: absolute;
	top:50px;
	left:-40px;
	z-index: 1000;
	width:26.5vw;
	max-width: 400px;
}

.aboutnext .bg02 {
	position: absolute;
	/*bottom:300px;*/
	bottom:50px;
	right:0;
	z-index: 1000;
	width:14.9vw;
	max-width: 285px;
}

.aboutnext .bg01 img,
.aboutnext .bg02 img {
	max-width: 100%;
	height: auto;
	-ms-interpolation-mode: bicubic;
}

.abninner {
	position: relative;
	background: url("/assets/images/top/bg_about.png") repeat;
	border-radius: 10px;
	box-shadow: inset 0 5px 5px 0 rgba(0, 0, 0, .3);
	width:100%;
	/*max-width: 1740px;
	position: absolute;
	top:200px;
	left:15%;*/
	margin-left:12%;
	padding-left:10%;
	padding-right:10%;
	padding-top:30px;
	padding-bottom:30px;
	overflow: hidden;
	z-index: 200;
}

/* 1600px以上 */
@media screen and (min-width: 1600px) {
	.abninner {
	margin-left:180px;
	padding-left:190px;
	padding-right:19%;
	}
}
/* 1600px以上 */


.menu_next {
	text-align: center;
	display: flex;
	justify-content: space-between;
	flex-wrap:wrap;
	max-width: 1200px;
}

a.menuN {
	display: inline-block;
	color: #4D4D4D;
	width:33%;
	max-width: 356px;
	overflow: hidden;
	text-decoration: none;
	padding:2em 1em;
	border-radius: 16px;
	background:none;
	position: relative;
	z-index:1;

}

a.menuN::before {
	position:absolute;
    top:0;
    left:0;
    z-index:-1;
    width:100%;
	height:100%;
	padding:2em 1em;
	border-radius: 16px;
    content:"";
	background:linear-gradient(180deg, #4CC1E6 0%, #99DBF2 39%, #99DBF2 62%, #4CC1E6 100%);
	color: #35318F !important;
    opacity:0;
	transition: all 0.5s ease-in;
}

a.menuN:hover::before {
	opacity:1;
}

a.menuN img {
	display:table-cell;
	float:left;
	vertical-align: middle;
	margin-right:1em;
	transition: all 0.5s ease;
}

a.menuN:hover img { transform: scale(1.1) ; }

a.menuN .cnt {
	display:table-cell;
	float:left;
	vertical-align: middle;
	text-align: left;
	max-width:220px;
	font-size: 16px;
}

.martop { margin-top:0.8em; }
.martopup { margin-top:-0.8em; }

a.menuN h3 {
	font-size: 22px;
	font-weight: bold;
	margin-bottom:0.3em;
	letter-spacing: -0.22px;
}

/* PCレスポンシブ調整 */
@media screen and (max-width: 1579px) {

	.abninner {
	/*padding-right:30%;*/
	width: 77%;
	}
	
	.menu_next {
	max-width: none;
	}
	
	a.menuN {
	width:30%;
	}
	
	a.menuN .cnt {
	max-width:210px;
	font-size: 16px;
	}
	
	a.menuN h3 {
	font-size: 21px;
	letter-spacing: -0.25px;
	}
	
	.aboutnext .bg02 {
	/*bottom:400px;*/
	bottom:0;
	right:0;
	width:14.9vw;
	max-width: 285px;
	}

}

@media screen and (max-width: 1439px) {

	.abninner {
	padding-right:9%;
	width: 75vw;
	}
	
	a.menuN {
	width:50%;
	max-width: 360px;

	}
	
	a.menuN .cnt {
	max-width:250px;
	}
}

@media screen and (max-width: 1055px) {

	.abninner {
	width: 77.5vw;
	padding-left: 8%;
	}
	
	a.menuN {
	width:45%;
	max-width: none;
	}
	
	a.menuN .cnt {
	max-width:210px;
	}
	
}

@media screen and (min-width: 890px) and (max-width: 959px) {

	.abninner {
	width: 77.8vw;
	padding-left:8%;
	}
	
	a.menuN {
	width:44.5%;
	}
	
	a.menuN .cnt {
	max-width:190px;
	font-size: 14px;
	}
	
	a.menuN h3 {
	font-size: 19px;
	letter-spacing: -0.4px;
	}
	
}

@media screen and (max-width: 889px) {

	.abninner {
	width: 78.5vw;
	padding-left:7%;
	}
	
	a.menuN {
	width:44%;
	}
	
	a.menuN .cnt {
	max-width:170px;
	font-size: 14px;
	}
	
	a.menuN h3 {
	font-size: 18px;
	letter-spacing: -0.08em;
	}
	
	a.menuN img {
	width:30%;
	}
	
	.aboutnext .bg02 {
	/*bottom:350px;*/
	bottom:120px;
	}

}

@media screen and (max-width: 777px) {

	.abninner {
	width: 82.6vw;
	padding-left:2.7%;
	}
	
	a.menuN {
	width:43%;
	}
	
	a.menuN .cnt {
	max-width:158px;
	font-size: 13px;
	}
	
	a.menuN h3 {
	font-size: 17px;
	margin-top:10px;
	}
	
	a.menuN img {
	width:27%;
	margin-right: 0.7em;
	}
}

@media screen and (min-width: 640px) and (max-width: 640px) {
	a.menuN img {
	width:24%;
	}
}

@media screen and (min-width: 641px) and (max-width: 659px) {

	.abninner {
	width: 84vw;
	padding-left:1.5%;
	}
	
	a.menuN .cnt {
	max-width:155px;
	}
	
	a.menuN h3 {
	font-size: 16px;
	}
}

.martop { margin-top:0.8em; }
.martopup { margin-top:-0.8em; }

.arrow-right-large {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: -2px 10px 0 0;
  border-bottom: 3px solid #000;
  border-right: 3px solid #000;
  transform: rotate(-45deg);
}

.abnmovie {
	position: relative;
	background: url("/assets/images/top/bg_about.png") repeat;
	border-radius: 10px;
	box-shadow: inset 0 5px 5px 0 rgba(0, 0, 0, .3);
	margin:1.5em auto 0 auto;
	padding-left:20px;
	padding-right:20px;
	padding-top:0;
	padding-bottom:5px;
	overflow: hidden;
	z-index: 200;
	display:flex;
	justify-content: space-around;
	width:65%;
}

.thumicon {
  display: inline-block;
  margin: 5px 0 0 0;
　vertical-align: middle;
}

.thumicon a.linknoline { border-bottom: none;}
.thumicon a.linknoline img.halfline { margin-top: 1em;}

.movieLink {
	line-height: 150%;
	margin:2em auto;
	font-weight:bold;
	font-size:17px;
	width:40%;
}

span.moviettl {	background:rgba(0, 0, 0, 0) linear-gradient(transparent 50%, #ffde42 0%) repeat scroll 0 0; }
span.moviecmttl { background:rgba(0, 0, 0, 0) linear-gradient(transparent 50%, #fed7f0 0%) repeat scroll 0 0; }
.mttlsecline { padding-top:0.5em; }

@media screen and (max-width: 1359px) {
	
	.mttlsecline { padding-top:0; }
	.thumicon a.linknoline img.halfline { margin-top: 0;}
}

.movieLink p.commovie {
	font-size:14px;
	text-align: left;
	font-weight:normal;
}

a.btnMVlink {
	display: block;
	background:#F07AA2;
	border-radius: 25px;
	text-align: center;
	color:#FFF;
	text-decoration: none;
	padding:0.5em;
	margin: 0 auto;
	font-size: 15px;
	width:90%;
}

a.btnMVlink:hover { opacity: 0.7; }

.arrow-MVlink {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin: -2px 0 0 10px;
  border-bottom: 3px solid #FFF;
  border-right: 3px solid #FFF;
  transform: rotate(-45deg);
}

.beforecard,
.beforecard-b {
	line-height: 150%;
	margin:2em auto;
	font-weight:bold;
	/*font-size: 24px;*/
}

.beforecard a,
.beforecard-b a {
	text-decoration: none;
	padding-bottom:0.2em;
}

.beforecard a { color:#FFF; border-bottom: 2px solid #FFF; }
.beforecard-b a { border-bottom: 1px solid #000; }

.beforecard a:hover,
.beforecard-b a:hover { border-bottom:none; }

.tx16 { font-size:16px; font-weight:normal; }
.marlef { text-align: left; margin-left: 10%; margin-left: calc(10% + 2em);margin-right: 18%;text-indent: -2em;}

/*-- お楽しみコンテンツ --*/

.fun {
	padding:70px 0 0 0;
	margin-bottom: 0;
	overflow: hidden;
}

.funinner {
	position:relative;
	background: url("/assets/images/top/bg_fun.png") repeat;
	width:100%;
	padding-top: 90px;
	padding-bottom: 90px;
	text-align: center;
	display: flex;
	/*flex-wrap:nowrap;*/
	overflow: hidden;
}

.fun-cnts {
	width:280px;
	height: 100%;
	padding:20px 20px 15px 20px;
	background:#FFF;
	box-shadow: 3px 5px 6px #00000029;
	font-size: 16px;
	margin-right:10px;
	margin-bottom:10px;
	overflow: visible;
	line-height: 160%;
}

.fun-cnts a {
	text-decoration: none !important;
}

.fun-cnts .ph {
	display: block;
	margin:0 auto;
	border: 1px solid #EEEEEE;
	overflow: hidden;
	position:relative;
	width:100%;
}

.fun-cnts .ph .obinavy,
.fun-cnts .ph .obiyellow {
	position: absolute;
	width:130%;
	top:10px;
	left:-32%;
	color:#FFF;
	padding:2px 5px;
	text-align:center;
	transform: rotate(-11.5deg);
	z-index: 10;
}

.fun-cnts .ph .obinavy { background: #35318F; }
.fun-cnts .ph .obiyellow { background: #D9A820; }

.fun-cnts .ph img{
	 transition:1s all;
	width: 100%;
}
.fun-cnts .ph img:hover{
	  transform:scale(1.2,1.2);
	  transition:1s all;
	z-index: 1;
}

.fun-cnts .categ-read,
.fun-cnts .categ-poster,
.fun-cnts .categ-package,
.fun-cnts .categ-nurie {
	display: block;
	height: 27px;
	text-align: center;
	color: #FFFFFF;
	font-size: 14px;
	margin-bottom:0.8em;
	padding-top: 0.05em;
}


.fun-cnts .categ-read { background: #8C5715; }
.fun-cnts .categ-poster { background: #43A328; }
.fun-cnts .categ-package { background: #EC805C; }
.fun-cnts .categ-nurie { background: #087CD5; }

.fun-cnts .categ-read .update { font-size: 80%; padding-left:0.5em; display:inline-block; color:#FDF62E; }
.fun-cnts .update02 { font-size: 80%; padding-left:0.5em; color:#8C5715; font-style:normal;}

.linedouble { display: inline-block; padding:0.805em 0 0.805em 0 ; }
.linedouble02 { display: inline-block; padding:0.85em 0 0.85em 0 ; }
.linedouble03 { display: inline-block; padding:0.08em 0 0.08em 0 ; }
.linetriple { display: inline-block; padding:1.65em 0 1.65em 0 ; }

/*-- ニュース --*/

.news {
	padding:80px 2em 100px 2em;
	max-width: 1200px;
	margin: 0 auto;
	overflow: hidden;
}

h2.newss {
	font-size:30px;
	font-weight: normal;
	margin-bottom: 0 auto 2.2em auto;
	border-bottom: 1px solid #4D4D4D;
	text-align: center;
	display: inline-block;
}

.newstopic {
	display: flex;
	flex-wrap: wrap;
	border-bottom: 1px solid #CCC;
	margin-bottom: 2.2em;
}

.newstopic .day {
	width:10%;
	text-align: left;
	min-width: 106px;
}

.newstopic .newsttl {
	width:90%;
	text-align: left;
        max-width: calc(100% - 116px);
}

.newstopic .newsttl a {
	text-decoration: none;
}

.newstopic .newsttl a:hover {
	color:#0096E9;
}

@media screen and (max-width: 1140px) {
.newstopic .newsttl {
	margin-left: 10px;
}
}

.n-indent { text-indent: 0.5em; }

.link-bnrnews {
	clear:both;
	display:flex;
	justify-content: center;
	margin-top:2em;
	vertical-align: middle;
}

.link-bnrnews a {
	margin-right:1em;
	margin-left:1em;
}

.link-bnrnews a img.martobnr {
	margin-top:25%;
}

/*
a.link-bnrnews {
	clear:both;
	display: block;
	margin-top:2em;
}

a.link-bnrnews {
	float:left;
	display: block;
	margin-top: -0.5em;
}*/
/*
a.btn-newslist {
	float:right;
	display: block;
	background: #FFF;
	border: 3px solid #35318F;
	border-radius: 27px;
	text-align: center;
	text-decoration: none;
	color:#35318F;
	padding:0.3em 2em;
	font-size:16px;
	transition: all 0.5s ease-in;
}

a.btn-newslist:hover { background: #35318F; color:#FFF; }
a.btn-newslist:after { content: ""; clear:both; }

a.btn-newslist:hover .arrow-right {
  border-bottom: 3px solid #FFF;
  border-right: 3px solid #FFF;	
}
*/


a.btn-newslist {
	float:right;
	display: block;
	margin:0 auto 2em auto;
	font-size: 16px;
	/*transition: all 0.5s ease-in;*/
	text-decoration: none;
	padding-bottom:0.2em;
	border-bottom: 1px solid #000;
}

a.btn-newslist:hover { border-bottom:none; }

.arrow-rightb {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin: -2px 15px 0 0;
  border-bottom: 3px solid #000;
  border-right: 3px solid #000;
  transform: rotate(-45deg);
}

.arrow-right {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin: -2px 15px 0 0;
  border-bottom: 3px solid #35318F;
  border-right: 3px solid #35318F;
  transform: rotate(-45deg);
  transition: all 0.5s ease-in;
}


/*-- リンクエリア --*/

.link-area {
	clear: both;
	padding:3em;
	margin: 0 auto;
	border-top: 1px solid #333;
	border-bottom: 1px solid #333;
	display: flex;
	justify-content: center;
	align-items: center;
}

.link-bnr {
	display: block;
	padding:0 2em;

}

/*----------------------
	レスポンシブ
----------------------*/

@media screen and (min-width: 640px) {
	
	.SP,
	nav.sp-nav,
	.fade-sp { display: none !important; }
}

@media screen and (max-width: 639px) {
	
	.PC,
	.fade,
	.mvthumwrap { display: none !important; }
	


/*-- アナウンス（システムメンテ等） --*/
.top-anno {
	margin: 15px auto 50px auto;
	max-width: 640px;
	/*text-align: left;*/
}
	
/*-- キャンペーン／ピックアップ --*/

.pickup {
	padding:35px 2em 30px 2em;
}

h2,
h2.newss {
	font-size:22px;
}

h2 img {width:80px;}

.pubnrarea {
	margin: 0 auto 0 auto;
	max-width:90%;
}

.topbnr {
	display: block;
	color: #4D4D4D;
	width:100%;
	max-width: 370px;
	margin:0 auto 4em auto;
}

.topbnr h3 {
	font-size: 19px;
}
	
.topbnr-more {
	margin-top:0;
}

.topbnr-more.sec {
	margin-top:0;
}

/*-- 図書カードNEXTについて --*/

h2.about {
	font-size:22px;
	padding:0.3em 0.9em;
}

.aboutnext .bg02 {
	top:50px;
	right:-25px;
	width:25%;
	max-width: 100px;
}
	
.aboutnext .bg01 {
	top:95px;
	left:-20px;
	width:30vw;
	/*transform: rotate(-10deg);*/
}

.abninner {
	box-shadow: inset 0 5px 5px 0 rgba(0, 0, 0, .3);
	width:94%;
	margin-left:3%;
	margin-right:3%;
	margin-top:30px;
	padding-left:0;
	padding-right:0;
	padding-top:33px;
	padding-bottom:33px;
}

.abnmovie {
	margin:1.5em 3% 0 3%;
	padding-left:20px;
	padding-right:20px;
	padding-top:0;
	padding-bottom:5px;
	overflow: hidden;
	z-index: 200;
	width:84.7%;
	display:block;
}
	
.menu_next {
	text-align: center;
	display: flex;
	justify-content: space-between;
	flex-wrap:wrap;
	max-width: 100%;
}

a.menuN {
	display: inline-block;
	color: #4D4D4D;
	width:100%;
	max-width: 350px;
	text-decoration: none;
	padding:2em 1em 2em 1.5em;
	border-radius: 16px;
	background:none;
	position: relative;
	z-index:1;
	margin:0 auto;
}
	
a.menuN img {
	margin-right:1em;
	transition: all 0.5s ease;
}

a.menuN .cnt {
	max-width:190px;
	font-size: 14px;
}

a.menuN h3 {
	font-size: 19px;
}

.beforecard {
	font-size: 14px;
	line-height: 200%;
}

.arrow-right-large {
  width: 7px;
  height: 7px;
  margin: -2px 10px 0 0;
  border-bottom: 2px solid #000;
  border-right: 2px solid #000;
  transform: rotate(-45deg);
}

.tx16 {font-size:13px;}
	
.movieLink { width:100%; }
.thumicon a.linknoline img.halfline { margin-top: 0;}

/*-- お楽しみコンテンツ --*/

.fun {
	padding:35px 0 0 0;
}
	
.funinner {
	padding-top: 35px;
	padding-bottom: 35px;
}

.fun-cnts {
	width:240px;
	}
	
.fun-cnts .ph img{
	 transition:1s all;
	width: 100%;
}
	
.fun-cnts .ph .obinavy,
.fun-cnts .ph .obiyellow {
	position: absolute;
	width:130%;
	top:10px;
	left:-30%;
	color:#FFF;
	padding:2px 5px;
	text-align:center;
	transform: rotate(-13deg);
}

/*-- ニュース --*/

	.news {
	padding:80px 2em 50px 2em;
	}
	
	.newstopic { padding-bottom:0.5em; }
	
	.newstopic .day {
	width:100%;
	font-size:14px;
	}

	.newstopic .newsttl {
	width:100%;
	max-width:100%;
	margin-top:10px;
	font-size:14px;
	margin-left: 0;
	}

	a.btn-newslist {
	margin:0 auto 1em auto;
	font-size: 12px;
	}

	.n-indent { text-indent: 0; }

	.arrow-right {
  margin: -3px 15px 0 0;
	}
	
	.link-bnrnews {
	display:block;
	margin-top:0;
	padding-top:3em;
	}
	
	.link-bnrnews a {
	margin-right:0.75em;
	margin-left:0.75em;
	}
	
	.link-bnrnews a img.martobnr {
	margin-top:1em;
	}
	
	}


#mainvisual .mvthum-area{
    position: absolute;
    background: rgba(255,255,255,0.5);
    width: 100%;
    bottom: 0;
}

#mainvisual .mvthum {
    background: transparent;
    max-width: 54%;
}

#mainvisual .mvthum .slick-prev {
	left:-8%;
}

#mainvisual .mvthum .slick-next {
	right:-8%;
}

#mainvisual .mvthum .slick-prev ,
#mainvisual .mvthum .slick-next {
    width: 3vw;
    height: 3vw;
}

#mainvisual .mvthum .slick-prev:before {
    background-image: url(/assets/images/top/mvthum_prevL.png);
    background-size: contain;
}

#mainvisual .mvthum .slick-next:before {
    background-image: url(/assets/images/top/mvthum_nextL.png);
    background-size: contain;
}

#mainvisual .mvthum .slick-prev:before ,
#mainvisual .mvthum .slick-next:before {
    content:'';
    font-size: 12px;
    width: 3vw;
    height: 3vw;
    display: block;
}

.funinner .slick-prev, .funinner .slick-next {
top: calc(50% - 3px);
}

@media screen and (min-width: 640px) {
#mainvisual {
    max-width: 1920px;
    margin: 0 auto;
    overflow: hidden;
}
}

@media screen and (max-width: 639px) {
#mainvisual .mvthum-area{
    display: none;
}

.beforecard-b.marlef {
    text-align: center;
    margin-right: 10%;
    text-indent: 0;
    margin-left: 10%;
}

}

/* MV　PCレスポンシブ */
@media screen and (min-width: 640px) and (max-width: 1200px) {
#mainvisual .fade {margin-left:-9.1%;margin-right:-9.1%;}
#mainvisual .mvthum {max-width: 63%!important;}

#mainvisual .mvthum .slick-prev {
	left:-9.5%;
}

#mainvisual .mvthum .slick-next {
	right:-9.5%;
}

#mainvisual .mvthum .slick-prev ,
#mainvisual .mvthum .slick-next {
    width: 4.5vw;
    height: 4.5vw;
}

#mainvisual .mvthum .slick-prev:before ,
#mainvisual .mvthum .slick-next:before {
    content:'';
    font-size: 12px;
    width: 4.5vw;
    height: 4.5vw;
    display: block;
}
	}