@charset "UTF-8";
/*-----------------------------------------------
 slider
-----------------------------------------------*/
#slider {
  margin-bottom: 20px;
}

#slider .left {
  position: absolute;
  top: 0;
  left: -980px;
  width: 960px;
  height: 400px;
  background-color: rgba(0, 26, 65, 0.8);
}

#slider .right {
  position: absolute;
  top: 0;
  right: -980px;
  width: 960px;
  height: 400px;
  background-color: rgba(0, 26, 65, 0.8);
}

#slider .slider {
  position: relative;
  width: 720px;
  margin: 0 auto;
  font-size: 0;
}

/* arrows */
#slider .slick-prev {
  overflow: hidden;
  z-index: 10;
  cursor: pointer;
  position: absolute;
  top: 116px;
  left: 0;
  width: 31px;
  height: 61px;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  background-image: url(/themes/fantasiabunko/images/global/control/left.png);
  background-size: 31px 61px;
  padding: 0;
  border: none;
  background-color: transparent;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-indent: 100%;
  white-space: nowrap;
}

#slider .slick-next {
  overflow: hidden;
  z-index: 10;
  cursor: pointer;
  position: absolute;
  top: 116px;
  right: 0;
  width: 31px;
  height: 61px;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  background-image: url(/themes/fantasiabunko/images/global/control/right.png);
  background-size: 31px 61px;
  padding: 0;
  border: none;
  background-color: transparent;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-indent: 100%;
  white-space: nowrap;
}

#slider .slick-prev:hover,
#slider .slick-next:hover {
  opacity: 0.8;
}

/* list */
#slider .slick-list {
  overflow: visible;
}

#slider .slick-slide {
  cursor: pointer;
  padding: 0;
  line-height: 0;
  outline: none;
}

#slider .slider img {
  margin: 0 auto;
}

/* dots */
#slider ul.slick-dots {
  width: 100%;
  height: 25px;
  line-height: 25px;
  letter-spacing: -0.4em;
  text-align: center;
}

#slider ul.slick-dots li {
  display: inline-block;
  position: relative;
  margin: 0 10px;
  letter-spacing: normal;
  vertical-align: middle;
}

#slider .slick-dots li button {
  width: 11px;
  height: 11px;
  font-size: 0;
  line-height: 0;
  display: block;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}

#slider .slick-dots li button:hover,
#slider .slick-dots li button:focus {
  outline: none;
}

#slider .slick-dots li button:hover:before,
#slider .slick-dots li button:focus:before {
  opacity: 1;
}

#slider .slick-dots li button:before {
  content: "";
  line-height: 25px;
  position: absolute;
  top: 0;
  left: 0;
  width: 11px;
  height: 11px;
  border-radius: 5.5px;
  text-align: center;
  color: #c8ccc2;
  background: #c8ccc2;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#slider .slick-dots li.slick-active button:before {
  color: #000;
  background: #000;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #slider .inner {
    width: auto;
  }
  #slider .slider {
    width: 100%;
  }
  #slider .slider img {
    width: 100%;
  }
  /* arrows */
  #slider .slick-prev {
    top: 50%;
    left: 0;
  }
  #slider .slick-next {
    top: 50%;
    right: 0;
  }
}
/*-----------------------------------------------
 topics (sp) pcは#magazineで表示
-----------------------------------------------*/
#topics {
  display: none;
  overflow: hidden;
  max-height: 200px;
  margin-bottom: 20px;
  padding: 8px 0;
  background-color: #f9f9f4;
}

#topics .slider {
  position: relative;
  width: 1200px;
  margin: 0 auto;
  font-size: 0;
}

/* arrows */
#topics .slick-prev {
  overflow: hidden;
  z-index: 10;
  cursor: pointer;
  position: absolute;
  top: 50%;
  left: 0;
  width: 31px;
  height: 61px;
  margin-top: -30px;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  background-image: url(/themes/fantasiabunko/images/global/control/left.png);
  background-size: 31px 61px;
  padding: 0;
  border: none;
  background-color: transparent;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-indent: 100%;
  white-space: nowrap;
}

#topics .slick-next {
  overflow: hidden;
  z-index: 10;
  cursor: pointer;
  position: absolute;
  top: 50%;
  right: 0;
  width: 31px;
  height: 61px;
  margin-top: -30px;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  background-image: url(/themes/fantasiabunko/images/global/control/right.png);
  background-size: 31px 61px;
  padding: 0;
  border: none;
  background-color: transparent;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-indent: 100%;
  white-space: nowrap;
}

#topics .slick-prev:hover,
#topics .slick-next:hover {
  opacity: 0.8;
}

/* list */
#topics .slick-slide {
  cursor: pointer;
  padding: 0;
  line-height: 0;
  outline: none;
}

#topics .slider img {
  margin: 0 auto;
}

#topics .topic img {
  width: 390px;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #topics .slider {
    width: auto;
  }
}
#topics-heading {
  display: none;
}
#topics-heading h2 {
  height: 42px;
  padding-left: 60px;
  background-color: #fff;
  background-image: url(/themes/fantasiabunko/images/global/title/icon-topics.png);
  background-position: 17px center;
  background-repeat: no-repeat;
  background-size: 42px;
  font-size: 24px;
  font-weight: 300;
  line-height: 42px;
}

#topics-x {
  display: none;
  padding: 10px 5px 28px;
}
#topics-x img {
  max-width: 100%;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #topics,
  #topics-heading,
  #topics-x {
    display: block;
  }
}
/*-----------------------------------------------
 magazine  (pc版topics)
-----------------------------------------------*/
#magazine h2 {
  padding-left: 44px;
  background-image: url(/themes/fantasiabunko/images/global/title/icon-topics.png);
  background-size: 44px;
}
#magazine img {
  max-width: 100%;
  vertical-align: top;
}
#magazine .topic {
  margin-bottom: 10px;
}
#magazine .topic img {
  outline: 1px solid #efebe5;
}
#magazine .topic:first-of-type {
  margin-top: 10px;
}

/*-----------------------------------------------
 information
-----------------------------------------------*/
#information {
  width: 1200px;
  margin: 0 auto 40px;
}

#information .inner {
  position: relative;
  float: left;
  width: 686px;
  margin-right: 11px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #1c6ca7;
}

#information h2 {
  width: 244px;
  height: 26px;
  line-height: 26px;
  background-image: url(/themes/fantasiabunko/images/top/information-bg.png);
  text-align: center;
  color: #fff;
}

#information .nav {
  position: absolute;
  top: 0;
  right: 1px;
}

#information .nav li {
  display: inline-block;
  height: 26px;
  line-height: 26px;
  text-align: center;
}

#information .nav li:nth-child(1) {
  width: 195px;
  border-right: 1px solid #1c6ca7;
}

#information .nav li:nth-child(2) {
  width: 238px;
}

#information .nav li i {
  margin-left: 5px;
  color: #1c6ca7;
}

#information .nav li a {
  display: block;
}

#information .list {
  border-top: 1px solid #1c6ca7;
}

#information .list li {
  margin: 0 10px;
  padding: 6px 0;
  border-bottom: 1px dotted #bcbcbc;
  line-height: 1.2;
}

#information .list li:last-child {
  border-bottom: none;
}

#information .list li a {
  display: inline-block;
}

#information .list li .category {
  margin-right: 10px;
}

#information .list li a.line {
  overflow: hidden;
  width: 560px;
  white-space: nowrap;
  text-overflow: ellipsis;
  vertical-align: middle;
}

#information .pv {
  overflow: hidden;
  float: left;
  position: relative;
  width: 246px;
}

#information .pv1 {
  margin-right: 11px;
}

#information .pv img {
  width: 100%;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
}

#information .pv a:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

/*
#information .pv a::before{
	display: block;
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 134px;
	background-image: url(/themes/fantasiabunko/images/global/control/play.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 82px;
	-webkit-transition: all 0.35s;
	transition: all 0.35s;
}
#information .pv a:hover::before{
	opacity: 0;
	transform: scale(0.9);
}
*/
#information .pv figcaption {
  overflow: hidden;
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  font-size: 14px;
  line-height: 2;
  text-align: center;
  color: #fff;
  white-space: nowrap;
  text-overflow: ellipsis;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
}

#information .pv:hover figcaption {
  opacity: 0;
  bottom: -40px;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #information {
    width: auto;
    margin: 0 auto 30px;
  }
  #information .inner {
    float: none;
    width: auto;
    margin: 0 0 20px;
    border-left: none;
    border-right: none;
  }
  #information h2 {
    width: auto;
  }
  #information .nav {
    position: static;
  }
  #information .list li a.category {
    margin: 0 0 5px;
  }
  #information .list li a.line {
    width: 100%;
  }
  #information .nav {
    border-top: 1px solid #1c6ca7;
  }
  #information .nav li:nth-child(1) {
    width: 39%;
    height: 40px;
    line-height: 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  #information .nav li:nth-child(2) {
    width: 60%;
    height: 40px;
    line-height: 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  #information .pv {
    float: left;
    width: 47%;
  }
  #information .pv1 {
    margin: 0 1% 0 2%;
  }
  #information .pv2 {
    margin: 0 2% 0 1%;
  }
  #information .pv img {
    width: 100%;
  }
  #information .pv a::before {
    height: 80%;
    background-size: 40px;
  }
}
/*-----------------------------------------------
 newRelease
-----------------------------------------------*/
#newRelease {
  margin-bottom: 40px;
  background-image: url(/themes/fantasiabunko/images/top/now-bg.png);
  background-position: center top;
}

#newRelease .inner {
  width: 1200px;
  margin: 0 auto;
}

#now {
  float: left;
  width: 798px;
  min-height: 500px;
  background-image: url(/themes/fantasiabunko/images/top/now-bg2.png);
  background-position: right bottom;
  background-repeat: no-repeat;
}

#now h2 {
  display: inline-block;
  height: 50px;
  padding-left: 50px;
  background-color: #fff;
  background-image: url(/themes/fantasiabunko/images/global/title/icon-new.png);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 50px;
  font-size: 38px;
  font-weight: 300;
  line-height: 50px;
}

#newRelease .booksList {
  min-height: 900px;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #newRelease {
    display: none;
    margin-bottom: 30px;
    background: none;
  }
  #newRelease .inner {
    width: auto;
  }
  #now {
    float: none;
    width: auto;
    margin-bottom: 30px;
    padding-bottom: 10px;
    background-image: url(/themes/fantasiabunko/images/top/now-bg2.png), url(/themes/fantasiabunko/images/top/now-bg3.png);
    background-repeat: no-repeat, repeat;
    background-position: right bottom, center top;
    background-size: 290px, auto;
  }
  #now h2 {
    display: block;
    padding-left: 60px;
    background-position: 10px center;
    font-size: 24px;
  }
} /*-----------------------------------------------
 newRelease
-----------------------------------------------*/
#nowSP {
  display: none;
  width: auto;
  min-height: 500px;
  margin-bottom: 30px;
  padding-bottom: 10px;
  background-image: url(/themes/fantasiabunko/images/top/now-bg2.png), url(/themes/fantasiabunko/images/top/now-bg3.png);
  background-repeat: no-repeat, repeat;
  background-position: right bottom, center top;
  background-size: 290px, auto;
}

#nowSP h2 {
  display: block;
  height: 50px;
  padding-left: 60px;
  background-color: #fff;
  background-image: url(/themes/fantasiabunko/images/global/title/icon-new.png);
  background-position: 10px center;
  background-repeat: no-repeat;
  background-size: 50px;
  font-size: 24px;
  font-weight: 300;
  line-height: 50px;
}

#nowSP .booksList {
  min-height: 900px;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #nowSP {
    display: block;
  }
}
/*-----------------------------------------------
 magazine
-----------------------------------------------*/
#magazine {
  float: right;
  width: 368px;
}

#magazine h2 {
  height: 50px;
  padding-left: 44px;
  background-color: #fff;
  background-image: url(/themes/fantasiabunko/images/global/title/icon-topics.png);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 41px;
  font-size: 38px;
  font-weight: 300;
  line-height: 50px;
}

#magazine .cover {
  margin-bottom: 20px;
}

#magazine .cover img {
  width: 100%;
}

#magazine .detail {
  position: relative;
  margin-bottom: 20px;
}

#magazine .detail a {
  display: block;
  padding: 10px 0;
  border-radius: 40px;
  background-color: #50c7f2;
  font-size: 18px;
  line-height: 1.2;
  text-align: center;
  color: #fff;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
}

#magazine .detail a:hover {
  background-color: #13a4f7;
}

#magazine .detail a::after {
  position: absolute;
  content: "\f105";
  top: 50%;
  right: 10px;
  margin-top: -10px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

#magazine .title {
  padding-bottom: 10px;
  border-bottom: 1px solid #000;
  font-size: 32px;
  font-weight: 700;
  text-align: right;
  line-height: 1;
}

#magazine .title span {
  font-size: 48px;
}

#magazine .schedule {
  font-size: 38px;
  text-align: right;
}

#magazine .schedule span {
  font-size: 46px;
  font-weight: 700;
}

#magazine .note {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #000;
  text-align: right;
}

#magazine .coverTitle {
  font-size: 20px;
  font-weight: 700;
  color: #50c7f2;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #magazine {
    float: none;
    width: auto;
    margin: 0 10px 30px;
  }
  #magazine h2 {
    font-size: 24px;
  }
}
/*-----------------------------------------------
 magazine
-----------------------------------------------*/
#magazineSP {
  display: none;
  width: auto;
  margin: 0 10px 30px;
}

#magazineSP h2 {
  height: 50px;
  padding-left: 44px;
  background-color: #fff;
  background-image: url(/themes/fantasiabunko/images/global/title/icon-magazine.png);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 41px;
  font-size: 24px;
  font-weight: 300;
  line-height: 50px;
}

#magazineSP .cover {
  margin-bottom: 20px;
}

#magazineSP .cover img {
  width: 100%;
}

#magazineSP .detail {
  position: relative;
  margin-bottom: 20px;
}

#magazineSP .detail a {
  display: block;
  padding: 10px 0;
  border-radius: 40px;
  background-color: #50c7f2;
  font-size: 18px;
  line-height: 1.2;
  text-align: center;
  color: #fff;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
}

#magazineSP .detail a:hover {
  background-color: #13a4f7;
}

#magazineSP .detail a::after {
  position: absolute;
  content: "\f105";
  top: 50%;
  right: 10px;
  margin-top: -10px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

#magazineSP .title {
  padding-bottom: 10px;
  border-bottom: 1px solid #000;
  font-size: 32px;
  font-weight: 700;
  text-align: right;
  line-height: 1;
}

#magazineSP .title span {
  font-size: 48px;
}

#magazineSP .schedule {
  font-size: 38px;
  text-align: right;
}

#magazineSP .schedule span {
  font-size: 46px;
  font-weight: 700;
}

#magazineSP .note {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #000;
  text-align: right;
}

#magazineSP .coverTitle {
  font-size: 20px;
  font-weight: 700;
  color: #50c7f2;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #magazineSP {
    display: block;
  }
}
/*-----------------------------------------------
 next
-----------------------------------------------*/
#next {
  width: 1200px;
  margin: 0 auto 50px;
}

#next h2 {
  display: inline-block;
  height: 50px;
  padding-left: 50px;
  background-color: #fff;
  background-image: url(/themes/fantasiabunko/images/global/title/icon-next.png);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 50px;
  font-size: 38px;
  font-weight: 300;
  line-height: 50px;
}

#next .nextLineup li:first-child,
#next .nextLineup li:nth-child(2) {
  border-top: 1px dotted #ccc;
}

#next .nextLineup li {
  float: left;
  width: 590px;
  padding: 10px 0 10px 10px;
  border-bottom: 1px dotted #ccc;
  border-left: 14px solid #50c7f2;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#next .nextLineup li:nth-child(odd) {
  margin-right: 20px;
}

#next .nextLineup .title {
  margin-bottom: 5px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
}

#next .nextLineup span.new {
  display: block;
  width: 50px;
  margin-bottom: 5px;
  padding: 2px 0;
  border-radius: 5px;
  background-color: #50c7f2;
  font-size: 14px;
  text-align: center;
  color: #ffff00;
}

#next .nextLineup .title span {
  font-size: 12px;
  font-weight: normal;
}

#next .nextLineup .name {
  font-weight: 300;
}

#next .nextLineup a {
  color: #000;
}

#next .calendar {
  position: absolute;
  top: 7px;
  right: 0;
}

#next .calendar a {
  display: inline-block;
  padding: 10px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  background-color: #3eb134;
  font-size: 20px;
  line-height: 1.2;
  color: #ffff00;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
}

#next .calendar a:hover {
  background-color: #29cf54;
  text-decoration: none;
}

#next .calendar a::before {
  content: "\f073";
  margin-right: 10px;
  font-family: "Font Awesome 5 Free";
  font-weight: 400;
}

#next .calendar a::after {
  content: "\f105";
  margin-left: 10px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #next {
    width: auto;
    margin: 0 10px 30px;
  }
  #next h2 {
    font-size: 24px;
  }
  #next .nextLineup {
    margin-bottom: 20px;
  }
  #next .nextLineup li {
    float: none;
    width: auto;
  }
  #next .nextLineup li:nth-child(2) {
    border-top: none;
  }
  #next .nextLineup li:nth-child(odd) {
    margin-right: 0;
  }
  #next .calendar {
    position: static;
    text-align: center;
  }
  #next .calendar a {
    display: block;
    border-radius: 10px;
  }
}
/*-----------------------------------------------
 blog
-----------------------------------------------*/
#sns {
  width: 1200px;
  margin: 0 auto 40px;
}

#blog {
  float: left;
  width: auto;
}

#blog h2 {
  height: 50px;
  padding-left: 50px;
  background-color: #fff;
  background-image: url(/themes/fantasiabunko/images/global/title/icon-blog.png);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 50px;
  font-size: 38px;
  font-weight: 300;
  line-height: 50px;
}

#blog .inner {
  padding: 15px;
  background-color: #f3f3e9;
}

#blog .blogList li {
  float: left;
  width: 276px;
  margin-right: 15px;
  padding: 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
}

#blog .blogList li img {
  width: 100%;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
}

#blog .blogList li .image {
  overflow: hidden;
  margin-bottom: 10px;
  background-color: #fff;
  border: 1px solid #f3f3e9;
}

#blog .blogList li a:hover img {
  opacity: 0.8;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

#blog .blogList li figcaption {
  overflow: hidden;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #f3f3e9;
  line-height: 1.2;
  white-space: nowrap;
  text-overflow: ellipsis;
}

#blog .blogList li:last-child {
  margin-right: 0;
}

#blog .blogList li time {
  float: right;
  font-size: 12px;
  text-align: right;
  line-height: 20px;
  color: #666;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #sns {
    width: auto;
    margin-bottom: 30px;
  }
  #blog {
    float: none;
    width: auto;
    margin-bottom: 30px;
  }
  #blog h2 {
    font-size: 24px;
    padding-left: 60px;
    background-position: 10px center;
  }
  #blog .blogList li {
    width: 100%;
    margin-bottom: 15px;
  }
  #blog .blogList li:last-child {
    margin-bottom: 0;
  }
  #blog .blogList li figcaption {
    font-size: 18px;
  }
  #blog .blogList li .image {
    float: left;
    width: 38%;
    margin: 0;
  }
  #blog .blogList li .image img {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  #blog .blogList li .detail {
    float: right;
    width: 60%;
  }
}
/*-----------------------------------------------
 twitter
-----------------------------------------------*/
#twitter {
  float: right;
  width: 268px;
}

#twitter h2 {
  height: 50px;
  padding-left: 50px;
  background-color: #fff;
  background-image: url(/themes/fantasiabunko/images/global/title/icon-twitter.png);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 50px;
  font-size: 33px;
  /*	font-size: 38px;*/
  font-weight: 300;
  line-height: 50px;
}

#twitter .timeline {
  overflow-y: scroll;
  height: 360px;
  border: 1px solid #f3f3e9;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #twitter {
    float: none;
    width: auto;
    margin: 0 10px;
  }
  #twitter h2 {
    font-size: 24px;
  }
  #twitter .timeline {
    -webkit-overflow-scrolling: touch;
  }
}
/*-----------------------------------------------
 series
-----------------------------------------------*/
#series {
  margin-bottom: 40px;
}

#series .all {
  top: 0;
  right: auto;
  bottom: auto;
  left: 50%;
  width: 1200px;
  margin-left: -600px;
}

#series .title {
  position: relative;
  width: 1200px;
  margin: 0 auto;
}

#series h2 {
  height: 50px;
  padding-left: 50px;
  background-color: #fff;
  background-image: url(/themes/fantasiabunko/images/global/title/icon-series.png);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 50px;
  font-size: 38px;
  font-weight: 300;
  line-height: 50px;
}

#series .inner {
  overflow: hidden;
  position: relative;
  padding: 15px;
  background-color: #f3f3e9;
}

#series .seriesList {
  width: 1200px;
  margin: 0 auto;
}

#series .seriesList .list {
  overflow: hidden;
  position: relative;
  width: 288px;
  height: 226px;
  margin-right: 13px;
  background-color: #fff;
  border: 1px solid #efebe5;
}

#series .seriesList .list img {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
}

#series .seriesList .list a:hover img {
  opacity: 0.8;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

#series .seriesList figcaption {
  position: absolute;
  bottom: 0;
  padding: 10px;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: rgba(0, 0, 0, 0.8);
  font-size: 14px;
  line-height: 1.2;
  color: #fff;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
}

#series .seriesList figcaption span {
  font-size: 12px;
}

#series .seriesList .list:hover figcaption {
  opacity: 0;
  bottom: -40px;
}

/* arrows */
#series .slick-prev {
  overflow: hidden;
  z-index: 10;
  cursor: pointer;
  position: absolute;
  top: 99px;
  left: 0;
  width: 31px;
  height: 61px;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  background-image: url(/themes/fantasiabunko/images/global/control/left.png);
  background-size: 31px 61px;
  padding: 0;
  border: none;
  background-color: transparent;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-indent: 100%;
  white-space: nowrap;
}

#series .slick-next {
  overflow: hidden;
  z-index: 10;
  cursor: pointer;
  position: absolute;
  top: 98px;
  right: 0;
  width: 31px;
  height: 61px;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  background-image: url(/themes/fantasiabunko/images/global/control/right.png);
  background-size: 31px 61px;
  padding: 0;
  border: none;
  background-color: transparent;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-indent: 100%;
  white-space: nowrap;
}

#series .slick-prev:hover,
#series .slick-next:hover {
  opacity: 0.8;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #series {
    margin-bottom: 30px;
  }
  #series h2 {
    margin: 0 10px;
    font-size: 24px;
  }
  #series .all {
    width: auto;
    margin: 10px 10px 0 10px;
  }
  #series .seriesList {
    width: auto;
  }
  #series .seriesList .list {
    width: 200px;
    height: auto;
  }
  #series .seriesList figcaption {
    font-size: 12px;
  }
  #series .slick-prev,
  #series .slick-next {
    top: 64px;
  }
}
/*-----------------------------------------------
 specialSite
-----------------------------------------------*/
#specialSite {
  width: 1200px;
  margin: 0 auto 40px;
}

#specialSite h2 {
  height: 50px;
  margin-bottom: 10px;
  padding-left: 50px;
  background-color: #fff;
  background-image: url(/themes/fantasiabunko/images/global/title/icon-specialsite.png);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 50px;
  font-size: 38px;
  font-weight: 300;
  line-height: 50px;
}

#specialSite .bnrList {
  margin-right: -36px;
  font-size: 0;
}

#specialSite .bnrList li {
  display: inline-block;
  margin: 0 37px 40px 0;
  width: 272px;
  vertical-align: top;
}

#specialSite .bnrList li.top {
  width: 579px;
}

#specialSite .bnrList li .image {
  margin-bottom: 5px;
  border: 1px solid #efebe5;
}

#specialSite .bnrList li figcaption {
  font-size: 14px;
  line-height: 1.2;
}

#specialSite .bnrList li .catch {
  padding-top: 5px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.2;
  color: #666;
}

#specialSite .bnrList li img {
  max-width: 100%;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
  #specialSite {
    width: auto;
    margin: 0 0 30px;
  }
  #specialSite h2 {
    margin: 0 10px 10px;
    font-size: 24px;
  }
  #specialSite .bnrList {
    margin: 0 10px 0;
  }
  #specialSite .bnrList li {
    width: 50%;
    margin: 0 0 30px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  #specialSite .bnrList li:nth-child(even) {
    padding-right: 5px;
  }
  #specialSite .bnrList li:nth-child(odd) {
    padding-left: 5px;
  }
  #specialSite .bnrList li.top {
    width: 100%;
    padding: 0;
  }
  #specialSite .bnrList li img {
    width: 100%;
  }
}