@charset "UTF-8";
.archive, #recommend, .pickupBook ul, .banner .line--one, .banner .line--two, .ftr .inner, .ftr__charactor {
  margin-left: auto;
  margin-right: auto;
}

.pageBute ul, .backnumber__container, .nav--social, .list--container, .nav--extra ul {
  letter-spacing: -0.4em;
}
.pageBute ul > *, .backnumber__container > *, .nav--social > *, .list--container > *, .nav--extra ul > * {
  display: inline-block;
  letter-spacing: normal;
  vertical-align: top;
}

.contents__main, .contents__sub {
  margin-right: 8px;
  margin-left: 8px;
}

/** ----------------------------------------
 *	01.	OVERRIDE
 *	02.	PARTS
 *	03.	LAYOUT
 ---------------------------------------- */
/** ----------------------------------------
 *	OVERRIDE
 ---------------------------------------- */
body {
  font-family: Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-size: 14px;
  line-height: 1.7;
  word-wrap: break-word;
  outline: none;
  color: #707070;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

img {
  max-width: 100%;
  max-height: 100%;
  vertical-align: top;
}

a {
  color: #000;
  text-decoration: none;
  -webkit-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
a:hover {
  color: #ffa7bf;
  text-decoration: underline;
}
a:hover * {
  -webkit-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}

/** ----------------------------------------
 *	PARTS
 ---------------------------------------- */
.archive, #recommend, .pickupBook ul, .banner .line--one, .banner .line--two, .ftr .inner, .ftr__charactor {
  margin-left: auto;
  margin-right: auto;
}

.pageBute ul, .backnumber__container, .nav--social, .list--container, .nav--extra ul {
  letter-spacing: -0.4em;
}
.pageBute ul > *, .backnumber__container > *, .nav--social > *, .list--container > *, .nav--extra ul > * {
  display: inline-block;
  letter-spacing: normal;
  vertical-align: top;
}

.contents__main, .contents__sub {
  margin-right: 8px;
  margin-left: 8px;
}

/** ----------------------------------------
 *	01.	PARTS
 ---------------------------------------- */
/** ----------------------------------------
 *	PARTS
 ---------------------------------------- */
.view--pc {
  display: none;
}
@media screen and (min-width: 628px) {
  .view--pc {
    display: block;
  }
}

@media screen and (min-width: 628px) {
  .view--sp {
    display: none;
  }
}

.thumbnail img {
  max-width: 100%;
}

.list--container {
  margin-bottom: 4px;
}
@media screen and (min-width: 480px) {
  .list--container {
    margin-left: -8px;
    margin-right: -8px;
  }
}

.list--type--grid .list__elm {
  width: 50%;
  margin-bottom: 20px;
}
@media screen and (min-width: 480px) {
  .list--type--grid .list__elm {
    width: 33.333%;
  }
}
@media screen and (min-width: 768px) {
  .list--type--grid .list__elm {
    width: 50%;
  }
  .col--one .list--type--grid .list__elm {
    width: 33.333%;
  }
}
@media screen and (min-width: 896px) {
  .list--type--grid .list__elm {
    width: 33.333%;
  }
}
.list--type--grid .list__elm .list__inner {
  display: block;
  padding-right: 8px;
  padding-left: 8px;
}
.list--type--grid .list__elm .summary {
  min-height: 51px;
}
@media screen and (min-width: 628px) {
  .list--type--grid .list__elm .summary {
    min-height: 66px;
  }
}
.list--type--grid .list__elm:nth-child(2n + 1) .list__inner {
  padding-left: 0;
}
@media screen and (min-width: 480px) {
  .list--type--grid .list__elm:nth-child(2n + 1) .list__inner {
    padding-left: 8px;
  }
}
.list--type--grid .list__elm:nth-child(2n + 2) .list__inner {
  padding-right: 0;
}
@media screen and (min-width: 480px) {
  .list--type--grid .list__elm:nth-child(2n + 2) .list__inner {
    padding-right: 8px;
  }
}
.list--type--grid .list__elm a {
  display: block;
  position: relative;
}
.list--type--grid .list__elm a:hover {
  text-decoration: none;
}
.list--type--grid .list__elm a:hover h3 {
  color: #ffa7bf;
}
.list--type--grid .list__elm a:hover p {
  color: #000;
}
.list--type--grid .list__elm a:hover p.finishedTag {
  color: #ffa7bf;
}
.list--type--grid .list__elm .finishedTag {
  background-color: #FFF;
  width: 32px;
  height: 28px;
  padding-top: 4px;
  text-align: center;
  line-height: 1.2;
  font-size: 0.71429em;
  color: #ffa7bf;
  border: 1px solid #ffa7bf;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border-radius: 50%;
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 100;
}
.ua-ie .list--type--grid .list__elm .finishedTag {
  height: 26px;
  padding-top: 6px;
}
@media screen and (min-width: 628px) {
  .list--type--grid .list__elm .finishedTag {
    width: 37px;
    height: 32px;
    padding-top: 5px;
    font-size: 0.85714em;
  }
  .ua-ie .list--type--grid .list__elm .finishedTag {
    height: 32px;
    padding-top: 5px;
  }
}

.list__elm .thumbnail {
  overflow: hidden;
}
.list__elm .thumbnail img {
  -webkit-transition: all 1s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: all 1s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: all 1s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 1s cubic-bezier(0.19, 1, 0.22, 1);
}
.list__elm h3, .list__elm .name {
  font-weight: bold;
  color: #313131;
}
.list__elm h3 {
  margin-bottom: 1px;
}
@media screen and (min-width: 628px) {
  .list__elm h3 {
    font-size: 1.14286em;
  }
}
.archive--finished .list__elm h3 {
  padding-top: 4px;
}
.list__elm .name {
  margin-bottom: 4px;
  font-size: 0.85714em;
}
@media screen and (min-width: 628px) {
  .list__elm .name {
    margin-bottom: 2px;
    font-size: 1em;
  }
}
.list__elm .summary {
  margin-bottom: 5px;
  font-size: 0.78571em;
  line-height: 1.6;
  color: #707070;
}
@media screen and (min-width: 628px) {
  .list__elm .summary {
    font-size: 1em;
  }
}
.list__elm a {
  display: block;
}
.list__elm a:hover {
  text-decoration: none;
}
.list__elm a:hover h3 {
  color: #ffa7bf;
}
.list__elm a:hover .thumbnail img {
  -webkit-transform: scale(1.03);
  -moz-transform: scale(1.03);
  -ms-transform: scale(1.03);
  -o-transform: scale(1.03);
  transform: scale(1.03);
}

.publish {
  background-color: #bebef2;
  padding-bottom: 2px;
  margin-bottom: 6px;
  overflow: hidden;
}

.publish__date {
  float: left;
  padding-top: 5px;
  padding-left: 3px;
  color: #fff;
  font-size: 0.71429em;
  font-family: "Merriweather", serif;
}
@media screen and (min-width: 628px) {
  .publish__date {
    padding-top: 4px;
    padding-left: 4px;
    font-size: 1em;
  }
}

.publish__latest {
  padding-right: 4px;
  text-align: right;
}
.publish__latest a:after {
  background-image: url(../img/ico_arrow-01.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 10px auto;
  display: inline-block;
  width: 10px;
  height: 8px;
  margin-left: 2px;
  content: '';
}

.btn a, .btn span, .btn input, .btn button {
  display: inline-block;
  text-align: center;
  border-width: 1px;
  border-style: solid;
  border-color: #660c0e;
  font-weight: bold;
  color: #535353;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.btn a.icon:after, .btn span.icon:after, .btn input.icon:after, .btn button.icon:after {
  background-image: url(../img/ico_arrow-01.png);
  background-repeat: no-repeat;
  background-position: left top;
  display: inline-block;
  content: '';
}
.btn a.fb, .btn a.tw, .btn span.fb, .btn span.tw, .btn input.fb, .btn input.tw, .btn button.fb, .btn button.tw {
  height: 27px;
  line-height: 27px;
  -webkit-border-radius: 14px;
  -moz-border-radius: 14px;
  -ms-border-radius: 14px;
  -o-border-radius: 14px;
  border-radius: 14px;
}
.btn a.fb:before, .btn a.tw:before, .btn span.fb:before, .btn span.tw:before, .btn input.fb:before, .btn input.tw:before, .btn button.fb:before, .btn button.tw:before {
  background-repeat: no-repeat;
  background-position: left top;
  display: inline-block;
  vertical-align: text-bottom;
  content: '';
}
.ua-ie .btn a.fb:before, .ua-ie .btn a.tw:before, .ua-ie .btn span.fb:before, .ua-ie .btn span.tw:before, .ua-ie .btn input.fb:before, .ua-ie .btn input.tw:before, .ua-ie .btn button.fb:before, .ua-ie .btn button.tw:before {
  position: relative;
}
.btn a.fb, .btn span.fb, .btn input.fb, .btn button.fb {
  background-color: transparent;
  color: #3b5998;
  border-color: #3b5998;
  -webkit-box-shadow: 0 3px 0 0 #3b5998;
  -moz-box-shadow: 0 3px 0 0 #3b5998;
  box-shadow: 0 3px 0 0 #3b5998;
}
.btn a.fb:before, .btn span.fb:before, .btn input.fb:before, .btn button.fb:before {
  background-image: url(../img/ico_facebook.png);
  background-size: 8px auto;
  width: 8px;
  height: 16px;
  margin-right: 6px;
}
.ua-ie .btn a.fb:before, .ua-ie .btn span.fb:before, .ua-ie .btn input.fb:before, .ua-ie .btn button.fb:before {
  top: -2px;
}
.btn a.tw, .btn span.tw, .btn input.tw, .btn button.tw {
  background-color: transparent;
  color: #55acee;
  border-color: #55acee;
  -webkit-box-shadow: 0 3px 0 0 #55acee;
  -moz-box-shadow: 0 3px 0 0 #55acee;
  box-shadow: 0 3px 0 0 #55acee;
}
.btn a.tw:before, .btn span.tw:before, .btn input.tw:before, .btn button.tw:before {
  background-image: url(../img/ico_twitter.png);
  background-size: 15px auto;
  width: 15px;
  height: 12px;
  margin-right: 3px;
}
.ua-ie .btn a.tw:before, .ua-ie .btn span.tw:before, .ua-ie .btn input.tw:before, .ua-ie .btn button.tw:before {
  top: -4px;
}
.btn a:not(.active):not(span), .btn span:not(.active):not(span), .btn input:not(.active):not(span), .btn button:not(.active):not(span) {
  position: relative;
  top: 0;
  -webkit-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.btn a:not(.active):not(span):hover, .btn span:not(.active):not(span):hover, .btn input:not(.active):not(span):hover, .btn button:not(.active):not(span):hover {
  background-color: #ffeded;
  text-decoration: none;
}
.btn a:not(.active):not(span):hover.fb, .btn span:not(.active):not(span):hover.fb, .btn input:not(.active):not(span):hover.fb, .btn button:not(.active):not(span):hover.fb {
  background-color: #edf3ff;
}
.btn a:not(.active):not(span):hover.tw, .btn span:not(.active):not(span):hover.tw, .btn input:not(.active):not(span):hover.tw, .btn button:not(.active):not(span):hover.tw {
  background-color: #edf7ff;
}
.btn a:not(.active):not(span):active, .btn span:not(.active):not(span):active, .btn input:not(.active):not(span):active, .btn button:not(.active):not(span):active {
  top: 3px;
  -webkit-box-shadow: 0 1px 0 0;
  -moz-box-shadow: 0 1px 0 0;
  box-shadow: 0 1px 0 0;
}
.btn .latest {
  margin-bottom: 15px;
}
.btn .order {
  margin-bottom: 21px;
}
@media screen and (min-width: 628px) {
  .btn .order {
    margin-bottom: 36px;
  }
}
.btn .order a.active {
  background-color: #660c0e;
  color: #fff;
  text-decoration: none;
}

.btn--round a, .btn--round span, .btn--round input, .btn--round button {
  background-color: transparent;
  width: 100%;
  height: 24px;
  line-height: 24px;
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  -ms-border-radius: 12px;
  -o-border-radius: 12px;
  border-radius: 12px;
  -webkit-box-shadow: 0 3px 0 0 #660c0e;
  -moz-box-shadow: 0 3px 0 0 #660c0e;
  box-shadow: 0 3px 0 0 #660c0e;
}
.btn--round a.icon:after, .btn--round span.icon:after, .btn--round input.icon:after, .btn--round button.icon:after {
  background-size: 12px auto;
  width: 12px;
  height: 9px;
  margin-left: 2px;
  position: relative;
  top: -1px;
}

.btn--round--max a, .btn--round--max span, .btn--round--max input, .btn--round--max button {
  background-color: transparent;
  width: 100%;
  height: 44px;
  font-size: 1.14286em;
  line-height: 44px;
  -webkit-border-radius: 22px;
  -moz-border-radius: 22px;
  -ms-border-radius: 22px;
  -o-border-radius: 22px;
  border-radius: 22px;
  -webkit-box-shadow: 0 3px 0 0 #660c0e;
  -moz-box-shadow: 0 3px 0 0 #660c0e;
  box-shadow: 0 3px 0 0 #660c0e;
}
.btn--round--max a.icon:after, .btn--round--max span.icon:after, .btn--round--max input.icon:after, .btn--round--max button.icon:after {
  background-size: 12px auto;
  width: 12px;
  height: 9px;
  margin-left: 5px;
  position: relative;
  top: -2px;
}
.asta .btn--round--max {
  margin-bottom: 15px;
}
.asta .btn--round--max:last-child {
  margin-bottom: 0;
}

.btn--round--latest {
  padding-top: 1px;
}
@media screen and (min-width: 628px) {
  .btn--round--latest {
    padding-top: 4px;
  }
}
.btn--round--latest a, .btn--round--latest span, .btn--round--latest input, .btn--round--latest button {
  background-color: #FFF;
  width: 54px;
  height: 16px;
  font-size: 0.71429em;
  line-height: 15px;
  color: #660c0e;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  -ms-border-radius: 16px;
  -o-border-radius: 16px;
  border-radius: 16px;
}
@media screen and (min-width: 628px) {
  .btn--round--latest a, .btn--round--latest span, .btn--round--latest input, .btn--round--latest button {
    width: 70px;
    height: 18px;
    line-height: 17px;
    font-size: 0.85714em;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
    -ms-border-radius: 18px;
    -o-border-radius: 18px;
    border-radius: 18px;
  }
}
.btn--round--latest a.icon:after, .btn--round--latest span.icon:after, .btn--round--latest input.icon:after, .btn--round--latest button.icon:after {
  background-size: 10px auto;
  width: 10px;
  height: 8px;
  margin-left: 2px;
}
.btn--round--latest.archive__latest {
  line-height: 1;
  position: absolute;
  top: 4px;
  right: 12px;
}
@media screen and (min-width: 628px) {
  .btn--round--latest.archive__latest {
    padding-top: 0;
  }
}
.btn--round--latest.archive__latest a {
  width: 41px;
}

.btn--2col {
  padding-bottom: 4px;
  margin-left: -8px;
  margin-right: -8px;
  overflow: hidden;
}
.btn--2col li {
  float: left;
  width: 50%;
  letter-spacing: normal;
}
.btn--2col li.pageEjection--next {
  float: right;
}
.btn--2col a, .btn--2col span {
  display: block;
  width: auto;
  margin-left: 8px;
  margin-right: 8px;
}
.btn--2col.share {
  margin-bottom: 27px;
}

.pageEjection {
  margin-bottom: 11px;
}
.pageEjection a {
  height: 44px;
  line-height: 44px;
  -webkit-border-radius: 22px;
  -moz-border-radius: 22px;
  -ms-border-radius: 22px;
  -o-border-radius: 22px;
  border-radius: 22px;
}
.pageEjection a.icon:after {
  margin-left: 5px;
}
.pageEjection .pageEjection--prev a {
  height: 44px;
  line-height: 44px;
  -webkit-border-radius: 22px;
  -moz-border-radius: 22px;
  -ms-border-radius: 22px;
  -o-border-radius: 22px;
  border-radius: 22px;
}
.pageEjection .pageEjection--prev a.icon:after {
  display: none;
}
.pageEjection .pageEjection--prev a.icon:before {
  background-image: url(../img/ico_arrow-01.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 12px auto;
  display: inline-block;
  width: 12px;
  height: 9px;
  margin-right: 5px;
  position: relative;
  content: '';
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}

.return a:after {
  display: none;
}
.return a:before {
  background-image: url(../img/ico_arrow-01.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 12px auto;
  display: inline-block;
  width: 12px;
  height: 9px;
  margin-right: 5px;
  position: relative;
  content: '';
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}

.index {
  margin-bottom: 27px;
}

@media screen and (min-width: 480px) {
  .row--center {
    width: 304px;
    margin-left: auto;
    margin-right: auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media screen and (min-width: 480px) {
  .row--center.max {
    width: 100%;
    max-width: 628px;
  }
}

.contents__header {
  padding-top: 12px;
  margin-bottom: 12px;
  text-align: center;
}
@media screen and (min-width: 628px) {
  .contents__header {
    background-image: url(../img/bg_header-material.png);
    background-repeat: repeat;
    background-position: left top;
    height: 127px;
    margin-bottom: 33px;
    position: relative;
  }
}
@media screen and (min-width: 628px) {
  .contents__header:after {
    background-color: #fff;
    display: block;
    width: 100%;
    height: 5px;
    -webkit-box-shadow: 0 3px 5px rgba(1, 1, 1, 0.1);
    -moz-box-shadow: 0 3px 5px rgba(1, 1, 1, 0.1);
    box-shadow: 0 3px 5px rgba(1, 1, 1, 0.1);
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
  }
}
@media screen and (min-width: 628px) {
  .contents__header .inner {
    background-color: rgba(255, 255, 255, 0.9);
    width: 100%;
    height: 70px;
    padding-top: 5px;
    position: absolute;
    left: 0;
    bottom: 0;
  }
}
@media screen and (min-width: 628px) {
  .contents__list .contents__header .inner {
    display: table;
  }
}

.contents__title, .contents__name {
  font-weight: bold;
  color: #313131;
}

.contents__title {
  font-size: 1.71429em;
}
@media screen and (min-width: 628px) {
  .contents__title {
    font-size: 1.85714em;
  }
}
@media screen and (min-width: 628px) {
  .contents__list .contents__title {
    display: table-cell;
    vertical-align: middle;
  }
}

.contents__name {
  font-size: 1.42857em;
}

.mainImage {
  margin-left: 8px;
  margin-right: 8px;
  margin-bottom: 12px;
  text-align: center;
}
@media screen and (min-width: 628px) {
  .mainImage {
    max-width: 628px;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 24px;
  }
}
.mainImage.single {
  margin-bottom: 20px;
}
.mainImage.review {
  background-image: url(../img/bg_wood.png);
  background-repeat: repeat;
  background-position: left top;
  overflow: hidden;
}

.archive {
  max-width: 628px;
}

.archive__elm .number span, .entry__number span {
  background-color: #FFF;
  display: inline-block;
  font-family: "Merriweather", serif;
  text-align: center;
  color: #bebef2;
  border: 1px solid #bebef2;
}

.archive__elm {
  margin-bottom: 18px;
  position: relative;
}
.archive__elm a {
  display: block;
  padding-bottom: 12px;
  text-align: center;
  border: 1px solid #bebef2;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  position: relative;
}
.archive__elm a:hover {
  text-decoration: none;
}
.archive__elm .number {
  background-color: #bebef2;
  height: 23px;
  padding-top: 1px;
  margin-bottom: 13px;
  font-size: 1em;
  font-weight: bold;
  color: #fff;
}
.archive__elm .number span {
  width: 36px;
  height: 36px;
  margin-top: -8px;
  margin-left: 7px;
  margin-right: 7px;
  line-height: 36px;
  font-size: 1.28571em;
  -webkit-border-radius: 36px;
  -moz-border-radius: 36px;
  -ms-border-radius: 36px;
  -o-border-radius: 36px;
  border-radius: 36px;
}
.archive__elm h3 {
  margin-bottom: 2px;
  font-size: 1.14286em;
  font-weight: bold;
  line-height: 1.2;
}
.archive__elm .archive__date {
  font-size: 0.92857em;
  font-weight: bold;
  font-family: "Merriweather", serif;
}

.entry__header {
  display: table;
  background-color: #bebef2;
  width: 100%;
  max-width: 628px;
  min-height: 22px;
  margin-bottom: 25px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  -webkit-border-radius: 26px;
  -moz-border-radius: 26px;
  -ms-border-radius: 26px;
  -o-border-radius: 26px;
  border-radius: 26px;
}
.entry__header h3 {
  display: table-cell;
  color: #fff;
  font-size: 1.28571em;
}
@media screen and (min-width: 628px) {
  .entry__header h3 {
    display: block;
    font-size: 1.57143em;
    text-align: center;
    line-height: 1.2;
  }
}

.entry__number {
  display: table-cell;
  width: 100px;
  padding-left: 10px;
  margin-right: 24px;
  font-size: 1.07143em;
  color: #fff;
  vertical-align: middle;
}
@media screen and (min-width: 628px) {
  .entry__number {
    position: absolute;
    top: 2px;
    left: 10px;
  }
}
.entry__number span {
  width: 38px;
  height: 38px;
  margin-top: -9px;
  margin-bottom: -9px;
  margin-left: 4px;
  margin-right: 4px;
  line-height: 38px;
  font-size: 1.42857em;
  -webkit-border-radius: 19px;
  -moz-border-radius: 19px;
  -ms-border-radius: 19px;
  -o-border-radius: 19px;
  border-radius: 19px;
}

.entry__date {
  font-size: 0.85714em;
  font-family: "Merriweather", serif;
  position: absolute;
  bottom: -20px;
  right: 3px;
}

.entry__body {
  margin: 0 8px 32px;
  color: #313131;
}
@media screen and (min-width: 628px) {
  .entry__body {
    max-width: 628px;
    margin-left: auto;
    margin-right: auto;
  }
}
.entry__body.entry__body--illust {
  position: relative;
}
.entry__body h3 {
  background-image: url(../img/bg_line-04.png);
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: auto 1px;
  padding-bottom: 9px;
  margin-bottom: 10px;
  font-size: 1.28571em;
  font-weight: bold;
  color: #ffa7bf;
}
@media screen and (min-width: 628px) {
  .entry__body h3 {
    padding-bottom: 7px;
    font-size: 1.42857em;
  }
}
.entry__body p {
  margin-bottom: 1.5em;
  font-size: 1.14286em;
  line-height: 2;
}
.entry__body p:last-child {
  margin-bottom: 0;
}
.entry__body img {
  margin-bottom: 1.5em;
}
.entry__body a {
  color: #fd7f82;
  text-decoration: underline;
}
.entry__body strong {
  font-weight: bold;
}
.entry__body ol, .entry__body ul {
  padding-left: 1.5em;
}
.entry__body ol {
  list-style: decimal;
}
.entry__body ul {
  list-style: disc;
}
.entry__body li {
  margin-bottom: 0.5em;
}
.entry__body em {
  font-style: italic;
}
.entry__body blockquote {
  margin: 0 0 0 1.618em;
  padding: 0 1.618em;
  border-left: 3px solid #c0c6c9;
}
.entry__body hr {
  margin: 1.5em 0;
}

.comment {
  background-color: #bebef2;
  padding: 15px;
  margin-bottom: 24px;
  font-size: 1.07143em;
  line-height: 1.86;
  color: #313131;
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  -ms-border-radius: 12px;
  -o-border-radius: 12px;
  border-radius: 12px;
}
@media screen and (min-width: 480px) {
  .comment {
    max-width: 628px;
    margin-left: auto;
    margin-right: auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}

.illustEssay {
  padding-top: 10px;
  margin-bottom: 30px;
  color: #313131;
  position: relative;
}
@media screen and (min-width: 628px) {
  .illustEssay {
    max-width: 628px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 480px) {
  .illustEssay .readLink {
    display: none;
  }
}

.profile {
  max-width: 628px;
  margin-bottom: 32px;
  margin-left: auto;
  margin-right: auto;
}
.profile h3 {
  background-image: url(../img/bg_line-03.png);
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: auto 7px;
  height: 12px;
  padding-bottom: 19px;
  padding-left: 3px;
  margin-bottom: 12px;
}
.profile dl {
  background-image: url(../img/bg_line-03.png);
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: auto 7px;
  padding-bottom: 19px;
}
.profile dt {
  padding-left: 3px;
  margin-bottom: 3px;
  font-size: 1.07143em;
  font-weight: bold;
  color: #313131;
}
.profile dd {
  margin-bottom: 23px;
  font-size: 0.92857em;
  color: #000;
}
.profile dd:last-child {
  margin-bottom: 0;
}
.profile dd p {
  line-height: 1.5;
}

.chiefeditor {
  padding-top: 6px;
}

.titleImage {
  margin-bottom: 16px;
  text-align: center;
}

.chiefeditor__header {
  margin-bottom: 10px;
  text-align: center;
}
@media screen and (min-width: 628px) {
  .chiefeditor__header .inner {
    max-width: 628px;
    margin-left: auto;
    margin-right: auto;
  }
}
.chiefeditor__header .chiefeditor__title, .chiefeditor__header .chiefeditor__name {
  background-image: url(../img/bg_line-05.png);
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: auto 5px;
}
.chiefeditor__header .chiefeditor__title {
  padding-bottom: 14px;
  margin-bottom: 9px;
  font-size: 1.57143em;
  font-weight: bold;
  color: #313131;
}
@media screen and (min-width: 628px) {
  .chiefeditor__header .chiefeditor__title {
    font-size: 1.85714em;
  }
}
.chiefeditor__header .chiefeditor__name {
  padding-bottom: 14px;
  margin-bottom: 9px;
  font-size: 1.14286em;
  color: #313131;
}
.chiefeditor__header .chiefeditor__date {
  margin-bottom: 7px;
  font-size: 0.92857em;
  font-family: "Merriweather", serif;
  color: #313131;
}
@media screen and (min-width: 628px) {
  .chiefeditor__header .chiefeditor__date {
    font-size: 1em;
  }
}

@media screen and (min-width: 628px) {
  .chiefeditor__archive {
    max-width: 628px;
    margin-left: auto;
    margin-right: auto;
  }
}

.chiefeditor__elm {
  background-image: url(../img/bg_line-05.png);
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: auto 5px;
  text-align: center;
}
.chiefeditor__elm a {
  display: block;
  padding-bottom: 20px;
  padding-top: 20px;
}
.chiefeditor__elm a:hover {
  text-decoration: none;
}
.chiefeditor__elm a:hover .chiefeditor__title {
  color: #ffa7bf;
}
.chiefeditor__elm .chiefeditor__title, .chiefeditor__elm .chiefeditor__name {
  margin-bottom: 8px;
}
.chiefeditor__elm .chiefeditor__title {
  font-size: 1.57143em;
  font-weight: bold;
  color: #313131;
  -webkit-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
@media screen and (min-width: 628px) {
  .chiefeditor__elm .chiefeditor__title {
    font-size: 1.85714em;
  }
}
.chiefeditor__elm .chiefeditor__name {
  font-size: 1.14286em;
  color: #313131;
}
.chiefeditor__elm .chiefeditor__date {
  font-size: 1em;
  font-family: "Merriweather", serif;
  color: #313131;
}
@media screen and (min-width: 628px) {
  .chiefeditor__elm .chiefeditor__date {
    font-size: 1em;
  }
}

.pageBute {
  padding-top: 39px;
  text-align: center;
}
.pageBute li {
  width: 31px;
  height: 33px;
  text-align: center;
}
.pageBute li:first-child {
  width: 32px;
}
.pageBute li:first-child a, .pageBute li:first-child span {
  border-width: 1px;
  -webkit-border-radius: 4px 0 0 4px;
  -moz-border-radius: 4px 0 0 4px;
  -ms-border-radius: 4px 0 0 4px;
  -o-border-radius: 4px 0 0 4px;
  border-radius: 4px 0 0 4px;
}
.pageBute li:first-child .current_page {
  border-color: #bebef2 #a0a0a0 #bebef2 #bebef2;
}
.pageBute li:last-child a, .pageBute li:last-child span {
  -webkit-border-radius: 0 4px 4px 0;
  -moz-border-radius: 0 4px 4px 0;
  -ms-border-radius: 0 4px 4px 0;
  -o-border-radius: 0 4px 4px 0;
  border-radius: 0 4px 4px 0;
}
.pageBute li:last-child .current_page {
  border-color: #bebef2 #bebef2 #bebef2 #a0a0a0;
}
.pageBute a, .pageBute span {
  display: block;
  width: 30px;
  height: 31px;
  border-width: 1px 1px 1px 0;
  border-style: solid;
  border-color: #a0a0a0;
  line-height: 30px;
  font-style: 1em;
  font-weight: bold;
}
.pageBute .current_page {
  background-color: #bebef2;
  color: #fff;
  border-color: #bebef2 #a0a0a0 #bebef2 #a0a0a0;
}
.pageBute a {
  color: #a0a0a0;
}
.pageBute a:hover {
  background-color: #bebef2;
  color: #fff;
  text-decoration: none;
}

.asta {
  max-width: 628px;
  padding-bottom: 4px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.cover {
  margin-bottom: 24px;
  text-align: center;
}
@media screen and (min-width: 628px) {
  .cover {
    float: left;
    width: 304px;
  }
}
.cover .row--center {
  padding-bottom: 15px;
}
@media screen and (min-width: 628px) {
  .cover img {
    margin-bottom: 12px;
  }
}

.outline {
  padding-bottom: 12px;
}
@media screen and (min-width: 628px) {
  .outline {
    float: right;
    width: 304px;
  }
}
.outline dl {
  margin-bottom: 12px;
}
.outline dt {
  background-color: #bebef2;
  padding-top: 3px;
  padding-bottom: 1px;
  font-size: 1.28571em;
  font-weight: bold;
  color: #fff;
  text-align: center;
  letter-spacing: 0.15px;
  -webkit-border-radius: 8px 8px 0 0;
  -moz-border-radius: 8px 8px 0 0;
  -ms-border-radius: 8px 8px 0 0;
  -o-border-radius: 8px 8px 0 0;
  border-radius: 8px 8px 0 0;
}
.outline dd {
  padding-top: 7px;
  padding-right: 8px;
  padding-left: 8px;
  padding-bottom: 5px;
  font-size: 1.07143em;
  color: #313131;
  border: 1px solid #bebef2;
  -webkit-border-radius: 0 0 8px 8px;
  -moz-border-radius: 0 0 8px 8px;
  -ms-border-radius: 0 0 8px 8px;
  -o-border-radius: 0 0 8px 8px;
  border-radius: 0 0 8px 8px;
}

.backnumber {
  margin-left: -7px;
  margin-right: -7px;
}
@media screen and (min-width: 628px) {
  .backnumber {
    max-width: 642px;
    margin-left: auto;
    margin-right: auto;
  }
}

.backnumber__list {
  display: inline-block;
  width: 33.333%;
  margin-bottom: 25px;
}
@media screen and (min-width: 480px) {
  .backnumber__list {
    width: 25%;
  }
}
@media screen and (min-width: 768px) {
  .backnumber__list {
    width: 16.666%;
  }
}
.backnumber__list a {
  display: block;
}
.backnumber__list a:hover {
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.backnumber__list figure {
  background-repeat: repeat-x;
  background-position: left bottom;
  display: block;
  padding-right: 7px;
  padding-left: 7px;
  padding-bottom: 25px;
}
.backnumber__list:nth-last-child(n + 4) figure {
  background-image: url(../img/bg_line-02.png);
}
@media screen and (min-width: 480px) {
  .backnumber__list:nth-last-child(n + 4) figure {
    background-image: none;
  }
}
@media screen and (min-width: 768px) {
  .backnumber__list:nth-last-child(n + 4) figure {
    background-image: none;
  }
}
@media screen and (min-width: 480px) {
  .backnumber__list:nth-last-child(n + 5) figure {
    background-image: url(../img/bg_line-02.png);
  }
}
@media screen and (min-width: 768px) {
  .backnumber__list:nth-last-child(n + 5) figure {
    background-image: none;
  }
}
@media screen and (min-width: 768px) {
  .backnumber__list:nth-last-child(n + 7) figure {
    background-image: url(../img/bg_line-02.png);
  }
}
.backnumber__list:nth-child(3n + 1) figure {
  padding-left: 0;
  margin-left: 7px;
}
@media screen and (min-width: 480px) {
  .backnumber__list:nth-child(3n + 1) figure {
    padding-left: 7px;
    margin-left: 0;
  }
}
@media screen and (min-width: 480px) {
  .backnumber__list:nth-child(4n + 1) figure {
    padding-left: 0;
    margin-left: 7px;
  }
}
@media screen and (min-width: 768px) {
  .backnumber__list:nth-child(4n + 1) figure {
    padding-left: 7px;
    margin-left: 0;
  }
}
@media screen and (min-width: 768px) {
  .backnumber__list:nth-child(6n + 1) figure {
    padding-left: 0;
    margin-left: 7px;
  }
}
.backnumber__list:nth-child(3n + 3) figure {
  padding-right: 0;
  margin-right: 7px;
}
@media screen and (min-width: 480px) {
  .backnumber__list:nth-child(3n + 3) figure {
    padding-right: 7px;
    margin-right: 0;
  }
}
@media screen and (min-width: 480px) {
  .backnumber__list:nth-child(4n + 4) figure {
    padding-right: 0;
    margin-right: 7px;
  }
}
@media screen and (min-width: 768px) {
  .backnumber__list:nth-child(4n + 4) figure {
    padding-right: 7px;
    margin-right: 0;
  }
}
@media screen and (min-width: 768px) {
  .backnumber__list:nth-child(6n + 6) figure {
    padding-right: 0;
    margin-right: 7px;
  }
}
.backnumber__list figcaption {
  padding-top: 7px;
  font-size: 0.85714em;
  text-align: center;
  color: #313131;
}

#recommend {
  max-width: 628px;
  padding-top: 35px;
}

#comic--single .contents {
  padding-top: 40px;
}
#comic--single .nav--header {
  background-color: #bebef2;
  height: 44px;
}
#comic--single .comic--pageEjection {
  position: relative;
}
#comic--single .comic--pageEjection li {
  width: 25%;
  position: absolute;
  top: 0;
}
#comic--single .comic--pageEjection a {
  display: block;
  width: 100%;
  height: 100%;
  line-height: 44px;
  text-align: center;
  font-weight: bold;
  font-size: 1.14286em;
  color: #fff;
}
#comic--single .comic--pageEjection--prev {
  left: 0;
}
#comic--single .comic--pageEjection--prev a:before {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 5px;
  border-width: 0 0 3px 3px;
  border-style: solid;
  border-color: #fff;
  content: '';
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
#comic--single .comic--pageEjection--next {
  right: 0;
}
#comic--single .comic--pageEjection--next a:after {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-left: 5px;
  border-width: 3px 3px 0 0;
  border-style: solid;
  border-color: #fff;
  content: '';
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
#comic--single #btn--close {
  text-align: center;
}
#comic--single #btn--close span {
  display: inline-block;
  width: 25%;
  height: 44px;
  line-height: 44px;
  font-weight: bold;
  font-size: 1.14286em;
  color: #fff;
}

.archive, #recommend, .pickupBook ul, .banner .line--one, .banner .line--two, .ftr .inner, .ftr__charactor {
  margin-left: auto;
  margin-right: auto;
}

.pageBute ul, .backnumber__container, .nav--social, .list--container, .nav--extra ul {
  letter-spacing: -0.4em;
}
.pageBute ul > *, .backnumber__container > *, .nav--social > *, .list--container > *, .nav--extra ul > * {
  display: inline-block;
  letter-spacing: normal;
  vertical-align: top;
}

.contents__main, .contents__sub {
  margin-right: 8px;
  margin-left: 8px;
}

.contentsTitle {
  height: 15px;
  padding-top: 12px;
  margin-bottom: 13px;
  text-align: center;
  position: relative;
}
.contentsTitle span {
  display: block;
  width: 100%;
  height: 33px;
  text-align: center;
  position: absolute;
  left: 0;
  bottom: -5px;
  z-index: 20;
}
.contentsTitle:before, .contentsTitle:after {
  display: block;
  width: 100%;
  position: absolute;
  left: 0;
  z-index: 10;
  content: '';
}
.contentsTitle:before {
  background-color: #ffa7bf;
  height: 15px;
  top: 12px;
}
.contentsTitle:after {
  background-image: url(../img/img_title.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 100% 12px;
  height: 12px;
  top: 0;
}

@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?95a0hw");
  src: url("../fonts/icomoon.eot?#iefix95a0hw") format("embedded-opentype"), url("../fonts/icomoon.woff?95a0hw") format("woff"), url("../fonts/icomoon.ttf?95a0hw") format("truetype"), url("../fonts/icomoon.svg?95a0hw#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-asterisk:before {
  content: "\e600";
}

.icon-logo .path1:before {
  content: "\e601";
  color: #231815;
}
.icon-logo .path2:before {
  content: "\e602";
  margin-left: -2.9873046875em;
  color: #231815;
}
.icon-logo .path3:before {
  content: "\e603";
  margin-left: -2.9873046875em;
  color: #231815;
}
.icon-logo .path4:before {
  content: "\e604";
  margin-left: -2.9873046875em;
  color: black;
}
.icon-logo .path5:before {
  content: "\e605";
  margin-left: -2.9873046875em;
  color: black;
}
.icon-logo .path6:before {
  content: "\e606";
  margin-left: -2.9873046875em;
  color: black;
}
.icon-logo .path7:before {
  content: "\e607";
  margin-left: -2.9873046875em;
  color: black;
}
.icon-logo .path8:before {
  content: "\e608";
  margin-left: -2.9873046875em;
  color: black;
}

.icon-logo span[class*="path"]:before {
  color: #dd5d0d;
}

.icon-asterisk:before {
  color: #dd5d0d;
}

/** ----------------------------------------
 *	LAYOUT
 ---------------------------------------- */
.hdr {
  background-image: url(../img/bg_line-01.png);
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: 40px auto;
  background-color: white;
  width: 100%;
  height: 53px;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1000;
}
@media screen and (min-width: 768px) {
  .hdr {
    height: 70px;
  }
}

.hdr__inner {
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .hdr__inner {
    max-width: 960px;
    margin: 0 auto;
    position: relative;
  }
}
.hdr__inner > .character {
  display: none;
}
@media screen and (min-width: 768px) {
  .hdr__inner > .character {
    display: block;
    position: absolute;
    top: 3px;
    right: 0;
  }
}

.hdr__logo {
  float: left;
  height: 37px;
  padding-top: 6px;
  padding-left: 8px;
}
@media screen and (min-width: 768px) {
  .hdr__logo {
    height: 58px;
    padding-left: 0;
    left: 71px;
    top: 22px;
  }
}
.hdr__logo a {
    display: block;
    padding-left: 75px;
    background: url(../img/logo2016.png) no-repeat 0 0;
    background-size: 60px;
    height: 49px;
}
@media screen and (min-width: 768px) {
  .hdr__logo a {
    display: block;
    padding-left: 100px;
    padding-left: 125px;
    background: url(../img/logo2016.png) no-repeat 0 0;
    background-size: 80px;
    height: 49px;
  }
}
.hdr__logo a:hover .icon-asterisk {
  -webkit-transform: rotate(360deg);
  -moz-transform: rotate(360deg);
  -ms-transform: rotate(360deg);
  -o-transform: rotate(360deg);
  transform: rotate(360deg);
}
.hdr__logo .icon-logo {
  font-size: 30px;
  position: absolute;
  top: 5px;
  left: 8px;
}
@media screen and (min-width: 768px) {
  .hdr__logo .icon-logo {
    font-size: 36px;
    top: 8px;
  }
}
.hdr__logo .icon-asterisk {
  font-size: 19px;
  position: absolute;
    top: 15px;
    left: 70px;
  -webkit-transition: all 2s ease;
  -moz-transition: all 2s ease;
  -o-transition: all 2s ease;
  transition: all 2s ease;
}
@media screen and (min-width: 768px) {
  .hdr__logo .icon-asterisk {
    font-size: 23px;
    top: 22px;
  }
}
.hdr__logo .character {
  width: 41px;
}
@media screen and (min-width: 768px) {
  .hdr__logo .character {
    width: 49px;
  }
}

.nav--social {
  position: absolute;
  top: 9px;
  right: 56px;
}
.ua-firefox .nav--social {
  letter-spacing: normal;
}
@media screen and (min-width: 768px) {
  .nav--social {
    top: 18px;
    right: 72px;
  }
}
.nav--social li {
  height: 31px;
  margin: 0 4px;
}
@media screen and (min-width: 768px) {
  .nav--social li {
    margin-left: 6px;
    margin-right: 6px;
  }
}
.nav--social a {
  position: relative;
  top: 0;
  -webkit-transition: top 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: top 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: top 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  transition: top 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.nav--social a:hover {
  top: -3px;
}

#menu {
  background-color: #fff;
  width: 40px;
  height: 30px;
  padding: 0;
  border: 1px solid #660c0e;
  text-indent: 100%;
  white-space: nowrap;
  position: fixed;
  top: 10px;
  right: 8px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  -webkit-box-shadow: 0 1px 0 0 #660c0e;
  -moz-box-shadow: 0 1px 0 0 #660c0e;
  box-shadow: 0 1px 0 0 #660c0e;
}
@media screen and (min-width: 768px) {
  #menu {
    display: none;
  }
}

.archive, #recommend, .pickupBook ul, .banner .line--one, .banner .line--two, .ftr .inner, .ftr__charactor {
  margin-left: auto;
  margin-right: auto;
}

.pageBute ul, .backnumber__container, .nav--social, .list--container, .nav--extra ul {
  letter-spacing: -0.4em;
}
.pageBute ul > *, .backnumber__container > *, .nav--social > *, .list--container > *, .nav--extra ul > * {
  display: inline-block;
  letter-spacing: normal;
  vertical-align: top;
}

.contents__main, .contents__sub {
  margin-right: 8px;
  margin-left: 8px;
}

/* -------------------------------------------------------------------------
Variable
------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------
ThreeLinesIcon & CrossLinesIcon
------------------------------------------------------------------------- */
.pureCssThreeLinesIcon.open, .pureCssCrossLinesIcon {
  border: 3px solid #660c0e;
  position: relative;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.pureCssThreeLinesIcon.open::before, .pureCssCrossLinesIcon::before, .pureCssThreeLinesIcon.open::after, .pureCssCrossLinesIcon::after {
  width: 18px;
  height: 2px;
  position: absolute;
  top: 13px;
  left: 10px;
  content: "";
}
.pureCssThreeLinesIcon.open::before, .pureCssCrossLinesIcon::before {
  background-color: #660c0e;
  border-width: 0em;
  border-style: solid;
  border-color: rgba(44, 44, 44, 0);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.pureCssThreeLinesIcon.open::after, .pureCssCrossLinesIcon::after {
  background-color: #660c0e;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.pureCssThreeLinesIcon {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.pureCssThreeLinesIcon::before, .pureCssThreeLinesIcon::after {
  width: 28px;
  position: absolute;
  left: 5px;
  content: "";
}
.pureCssThreeLinesIcon::before {
  height: 17px;
  border-width: 3px 0;
  border-style: solid;
  border-color: #660c0e;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  top: 6px;
}
.pureCssThreeLinesIcon::after {
  background-color: #660c0e;
  height: 3px;
  top: 13px;
}

/* -------------------------------------------------------------
ThreeLinesIcon transition
------------------------------------------------------------- */
.pureCssThreeLinesIcon {
  -webkit-transition: border-radius 0.6s ease-out;
  -webkit-transition-delay: 0.1s;
  -moz-transition: border-radius 0.6s ease-out 0.1s;
  -o-transition: border-radius 0.6s ease-out 0.1s;
  transition: border-radius 0.6s ease-out 0.1s;
}
.pureCssThreeLinesIcon::before {
  -webkit-transition: top 0.2s ease-out, height 0.2s ease-out, border-width 0.2s ease-out, border-color 0.2s ease-out, background 0.2s ease-out, -webkit-transform 0.2s ease-out;
  -webkit-transition-delay: 0.3s, 0.3s, 0.3s, 0.3s, 0.3s, 0s;
  -moz-transition: top 0.2s ease-out 0.3s, height 0.2s ease-out 0.3s, border-width 0.2s ease-out 0.3s, border-color 0.2s ease-out 0.3s, background 0.2s ease-out 0.3s, -moz-transform 0.2s ease-out 0s;
  -o-transition: top 0.2s ease-out 0.3s, height 0.2s ease-out 0.3s, border-width 0.2s ease-out 0.3s, border-color 0.2s ease-out 0.3s, background 0.2s ease-out 0.3s, -o-transform 0.2s ease-out 0s;
  transition: top 0.2s ease-out 0.3s, height 0.2s ease-out 0.3s, border-width 0.2s ease-out 0.3s, border-color 0.2s ease-out 0.3s, background 0.2s ease-out 0.3s, transform 0.2s ease-out 0s;
}
.pureCssThreeLinesIcon::after {
  -webkit-transition: -webkit-transform 0.2s ease-out;
  -webkit-transition-delay: 0s;
  -moz-transition: -moz-transform 0.2s ease-out 0s;
  -o-transition: -o-transform 0.2s ease-out 0s;
  transition: transform 0.2s ease-out 0s;
}
.pureCssThreeLinesIcon:hover {
  -webkit-transition: border-radius 0.6s ease-out;
  -webkit-transition-delay: 0.1s;
  -moz-transition: border-radius 0.6s ease-out 0.1s;
  -o-transition: border-radius 0.6s ease-out 0.1s;
  transition: border-radius 0.6s ease-out 0.1s;
}
.pureCssThreeLinesIcon:hover::before {
  -webkit-transition: top 0.2s ease-out, height 0.2s ease-out, border-width 0.2s ease-out, border-color 0.2s ease-out, background 0.2s ease-out, -webkit-transform 0.2s ease-out;
  -webkit-transition-delay: 0s, 0s, 0s, 0s, 0s, 0.3s;
  -moz-transition: top 0.2s ease-out 0s, height 0.2s ease-out 0s, border-width 0.2s ease-out 0s, border-color 0.2s ease-out 0s, background 0.2s ease-out 0s, -moz-transform 0.2s ease-out 0.3s;
  -o-transition: top 0.2s ease-out 0s, height 0.2s ease-out 0s, border-width 0.2s ease-out 0s, border-color 0.2s ease-out 0s, background 0.2s ease-out 0s, -o-transform 0.2s ease-out 0.3s;
  transition: top 0.2s ease-out 0s, height 0.2s ease-out 0s, border-width 0.2s ease-out 0s, border-color 0.2s ease-out 0s, background 0.2s ease-out 0s, transform 0.2s ease-out 0.3s;
}
.pureCssThreeLinesIcon:hover::after {
  -webkit-transition: -webkit-transform 0.2s ease-out;
  -webkit-transition-delay: 0.3s;
  -moz-transition: -moz-transform 0.2s ease-out 0.3s;
  -o-transition: -o-transform 0.2s ease-out 0.3s;
  transition: transform 0.2s ease-out 0.3s;
}

/* -------------------------------------------------------------
css hacks for IE
------------------------------------------------------------- */
.pureCssThreeLinesIcon,
.pureCssCrossLinesIcon {
  text-indent: 0;
  white-space: normal;
  overflow: visible;
}
:root .pureCssThreeLinesIcon, :root
.pureCssCrossLinesIcon {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

.nav--global {
  display: none;
  position: fixed;
  top: 52px;
  right: 8px;
  z-index: 100;
}
@media screen and (min-width: 768px) {
  .nav--global {
    display: block;
    width: auto;
    text-align: center;
    position: absolute;
    top: 25px;
    right: 178px;
  }
}
.nav--global:before {
  background: #fff;
  display: block;
  width: 13px;
  height: 13px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #660c0e #660c0e transparent transparent;
  position: absolute;
  top: 0;
  right: 13px;
  z-index: 10;
  content: '';
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1), 0.3s;
  -moz-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1), 0.3s;
  -o-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1), 0.3s;
  transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1), 0.3s;
}
.nav--global.open {
  display: block;
}
.nav--global.open:before {
  top: -7px;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}
.nav--global ul {
  background-color: #FFF;
  border: 1px solid #660c0e;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
}
@media screen and (min-width: 768px) {
  .nav--global ul {
    display: inline-block;
    letter-spacing: -0.4em;
    border: none;
  }
  .ua-firefox .nav--global ul {
    letter-spacing: normal;
  }
}
.nav--global li {
  border-bottom: 1px solid #660c0e;
}
@media screen and (min-width: 768px) {
  .nav--global li {
    background-image: url(../img/ico_gnav.png);
    background-repeat: no-repeat;
    background-position: left center;
    display: inline-block;
    padding-left: 17px;
    margin: 0 8px;
    letter-spacing: normal;
    vertical-align: top;
    border-bottom: none;
  }
}
@media screen and (min-width: 768px) {
  .nav--global li:first-child {
    display: none;
  }
}
.nav--global li:last-child {
  border: none;
}
.nav--global a {
  background-image: url(../img/ico_arrow-01.png);
  background-repeat: no-repeat;
  background-position: 16px center;
  background-size: auto 10px;
  display: block;
  padding: 10px 42px 10px 35px;
  color: #535353;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .nav--global a {
    background-image: none;
    padding: 0;
  }
}
.nav--global a:hover {
  color: #ffa7bf;
  text-decoration: none;
}

.contents {
  padding-top: 57px;
}
@media screen and (min-width: 768px) {
  .contents {
    padding-top: 80px;
  }
}

@media screen and (min-width: 480px) {
  .contents__container {
    width: 100%;
    max-width: 976px;
    margin-left: auto;
    margin-right: auto;
    table-layout: fixed;
  }
}
@media screen and (min-width: 768px) {
  .contents__container {
    display: table;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .ua-desktop-windows.ua-safari .contents__container {
    display: block;
  }
}
@media screen and (min-width: 768px) {
  #top .contents__container {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media screen and (min-width: 480px) {
  .contents__container.col--one {
    display: block;
    max-width: 1080px;
  }
}

@media screen and (min-width: 628px) {
  .col--one .contents__sub {
    display: block;
    width: 628px;
    max-width: 1080px;
    padding-left: 0;
    padding-right: 0;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (min-width: 768px) {
  .contents__main {
    display: table-cell;
    padding-right: 37px;
    margin-left: 0;
    table-layout: fixed;
  }
}
.col--one .contents__main {
  display: block;
}
@media screen and (min-width: 768px) {
  .col--one .contents__main {
    max-width: 1080px;
    padding-right: 0;
    margin-right: 0;
  }
}
.contents__main h2 {
  margin-bottom: 15px;
}

.contents__sub {
  vertical-align: top;
}
@media screen and (min-width: 768px) {
  .contents__sub {
    display: table-cell;
    width: 296px;
    max-width: 296px;
    table-layout: fixed;
  }
}
.col--one .contents__sub {
  padding-top: 35px;
}
.contents__sub > .row {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.contents__sub dt {
  padding-top: 8px;
  margin-bottom: 5px;
  font-size: 0.85714em;
  font-weight: bold;
  font-family: "Merriweather", serif;
  color: #bebef2;
}
@media screen and (min-width: 768px) {
  .contents__sub dt {
    font-size: 0.92857em;
  }
}
.contents__sub dd {
  background-image: url(../img/bg_line-02.png);
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: 8px auto;
  padding-bottom: 9px;
  font-size: 0.85714em;
}
@media screen and (min-width: 768px) {
  .contents__sub dd {
    font-size: 0.92857em;
  }
}
.contents__sub dd:last-child {
  background-image: none;
}

@media screen and (min-width: 768px) {
  .col--one .row {
    display: table;
    table-layout: fixed;
  }
}

.information h2, .updated h2 {
  margin-bottom: 5px;
}
@media screen and (min-width: 628px) {
  .col--one .information, .col--one .updated {
    display: table-cell;
    width: 50%;
  }
}

.information {
  margin-bottom: 15px;
}
@media screen and (min-width: 628px) {
  .col--one .information .inner {
    margin-right: 18px;
  }
}

.updated {
  margin-bottom: 15px;
}
@media screen and (min-width: 628px) {
  .col--one .updated .inner {
    margin-left: 18px;
  }
}

.twitterTimeline {
  margin-bottom: 10px;
}
@media screen and (min-width: 480px) {
  .twitterTimeline {
    margin-bottom: 24px;
  }
}
@media screen and (min-width: 480px) {
  .col--one .twitterTimeline {
    padding-top: 35px;
  }
}
.twitterTimeline iframe {
  vertical-align: top;
}

#twitter-widget-0 {
  width: 100% !important;
}

.pickupBook {
  padding-bottom: 17px;
}
.pickupBook ul {
  max-width: 320px;
}
@media screen and (min-width: 768px) {
  .pickupBook ul {
    max-width: inherit;
  }
}
@media screen and (min-width: 768px) {
  .col--one .pickupBook ul {
    margin-left: -8px;
    margin-right: -8px;
    overflow: hidden;
  }
}
.pickupBook li {
  margin-bottom: 8px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .col--one .pickupBook li {
    float: left;
    width: 50%;
  }
}
.pickupBook a {
  border: 1px solid #eee;
}
.pickupBook a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
@media screen and (min-width: 768px) {
  .col--one .pickupBook a {
    display: block;
    margin: 0 8px;
  }
}

.banner {
  padding-bottom: 14px;
  margin-left: -4px;
  margin-right: -4px;
}
@media screen and (min-width: 768px) {
  .col--one .banner {
    padding-bottom: 30px;
    margin-left: -8px;
    margin-right: -8px;
  }
}
.banner .line--one {
  max-width: 328px;
}
@media screen and (min-width: 768px) {
  .banner .line--one {
    max-width: inherit;
  }
}
@media screen and (min-width: 768px) {
  .col--one .banner .line--one li {
    float: left;
    width: 50%;
  }
}
.col--one .banner .line--one li a {
  display: block;
}
@media screen and (min-width: 768px) {
  .col--one .banner .line--one li a {
    margin-left: 8px;
    margin-right: 8px;
  }
}
.banner .line--two {
  max-width: 328px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .banner .line--two {
    width: 296px;
    margin-left: auto;
    margin-right: auto;
  }
}
.banner .line--two li {
  float: left;
  width: 50%;
}
@media screen and (min-width: 768px) {
  .banner .line--two li:nth-child(odd) a {
    margin-left: 0;
    margin-right: 8px;
  }
}
@media screen and (min-width: 768px) {
  .banner .line--two li:nth-child(even) a {
    margin-right: 0;
    margin-left: 8px;
  }
}
.banner li {
  margin-bottom: 10px;
  text-align: center;
}
.banner a {
  display: block;
  margin-left: 4px;
  margin-right: 4px;
}
.banner a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.banner .subscription {
  margin-bottom: 12px;
}
@media screen and (min-width: 768px) {
  .banner .subscription {
    margin-bottom: 24px;
  }
}
.banner .subscription a {
  display: block;
  color: #fff;
  font-weight: bold;
}

@media screen and (min-width: 628px) {
  .ftr {
    overflow: hidden;
  }
}
.ftr .block {
  background-color: #ffa7bf;
  padding-top: 8px;
  padding-bottom: 6px;
}
@media screen and (min-width: 628px) {
  .ftr .block {
    padding-top: 12px;
    padding-bottom: 9px;
  }
}
.ftr .inner {
  max-width: 960px;
  overflow: hidden;
}

@-webkit-keyframes animationJump {
  0% {
    top: 0;
  }

  45% {
    top: -8px;
  }

  50% {
    top: -10px;
  }

  55% {
    top: -8px;
  }

  100% {
    top: 0;
  }
}

@-moz-keyframes animationJump {
  0% {
    top: 0;
  }

  45% {
    top: -8px;
  }

  50% {
    top: -10px;
  }

  55% {
    top: -8px;
  }

  100% {
    top: 0;
  }
}

@keyframes animationJump {
  0% {
    top: 0;
  }

  45% {
    top: -8px;
  }

  50% {
    top: -10px;
  }

  55% {
    top: -8px;
  }

  100% {
    top: 0;
  }
}

.ftr__charactor {
  width: 134px;
  margin-bottom: 6px;
  text-align: center;
  position: relative;
  -webkit-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.ftr__charactor:hover img {
  position: relative;
  -webkit-animation: animationJump 0.4s ease 0.15s;
  -moz-animation: animationJump 0.4s ease 0.15s;
  animation: animationJump 0.4s ease 0.15s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}
@media screen and (min-width: 628px) {
  .ftr__charactor {
    position: fixed;
    right: 30px;
    bottom: -145px;
    z-index: 1000;
  }
  .ftr__charactor.show {
    bottom: 5px;
  }
}

.nav--extra {
  margin-bottom: 5px;
  text-align: center;
  line-height: 1;
}
@media screen and (min-width: 628px) {
  .nav--extra {
    float: left;
  }
}
.ua-firefox .nav--extra ul {
  letter-spacing: normal;
}
.nav--extra li {
  padding: 0 5px;
  border-right: 1px solid #fff;
  line-height: 1;
}
.nav--extra li:last-child {
  border-right: none;
}
.nav--extra a {
  font-size: 0.71429em;
  font-weight: bold;
  color: #fff;
}
@media screen and (min-width: 628px) {
  .nav--extra a {
    font-size: 0.85714em;
  }
}

.copyright {
  font-size: 0.71429em;
  text-align: center;
  color: #fff;
}
@media screen and (min-width: 628px) {
  .copyright {
    float: right;
    padding-top: 3px;
  }
}
