/* ------------------------------
 base
------------------------------ */
#CbHeader .Inner,
#Contents{
  width: 96%;
}


/* ------------------------------
 Header
------------------------------ */
#CbHeader{
  background-color: rgba(33,33,33,.85);
}
#CbHeaderLogo{
  display: none;
}
#CbHeaderLogoSp{
  display: block;
  width: 22px;
  margin: 0 auto;
  padding-top: 8px;
}
#CbHeaderLeft{
  width: 100%;
  margin: 0;
}
#CbHeaderRight{
  position: absolute;
  right: 10px;
}
#CbHeader .Inner{
  width: 100%;
}


/* ------------------------------
 Nav
------------------------------ */
#NavSp{
  position: absolute;
  z-index: 200;
  top: 0;
  left: 0;
  display: block;
}
#NavMain{
  display: none;
}
#NavSpTrigger{
  position: absolute;
  top: -2px;
  left: 0;
  width: 40px;
  height: 40px;
  transition: .3s;

  -webkit-tap-highlight-color: rgba(0,0,0,0);
}
#NavSpTrigger span{
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 14px;
  height: 2px;
  margin: -1px 0 0 -7px;
  transition: .2s;
  background: #fff;
}
#NavSpTrigger span:before,
#NavSpTrigger span:after{
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 14px;
  height: 2px;
  content: '';
  transition: .3s;
  background: #fff;
}
#NavSpTrigger span:before{
  margin-top: -6px;
}
#NavSpTrigger span:after{
  margin-top: 4px;
}
#NavSpTrigger.close{
  top: -2px;
}
#NavSpTrigger.close span{
  background: transparent;
}
#NavSpTrigger.close span:before,
#NavSpTrigger.close span:after{
  margin-top: -1px;
}
#NavSpTrigger.close span:before{
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
#NavSpTrigger.close span:after{
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}
#NavSpContentCover{
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  cursor: pointer;

  -webkit-tap-highlight-color: rgba(0,0,0,0);
}
#NavSpContent{
  position: fixed;
  top: 45px;
  left: -250px;
  overflow-x: hidden;
  overflow-y: scroll;
  box-sizing: border-box;
  width: 250px;
  height: 100%;
  padding: 0 0 45px 0;
  -webkit-transition: left .3s ease;
       -o-transition: left .3s ease;
          transition: left .3s ease;
  background-color: rgba(33,33,33,.9);
}
#NavSpContent.open{
  left: 0;
}
#NavSpContent a{
  color: #fff;
}
#NavSpMaincontent{
  margin: 0 0 10px 0;
  background: rgba(0,0,0,.3);
}
#NavSpMaincontent ul{
  clear: both;
}
#NavSpMaincontent li{
  float: none;
}
#NavSpMaincontent li a{
  font-weight: bold;
  line-height: 45px;
  display: block;
  height: 45px;
  padding: 0 0 0 10px;
  border-bottom: 1px solid #333;
}
#Creators #NavSpCreators,
#Works #NavSpWorks,
#Download #NavSpDownload,
#Event #NavSpEvent{
  background-color: rgba(0,0,0,.9);
}
#NavSpRelationsite{
  margin: 0 0 10px 0;
}
#NavSpRelationsite li{
  float: none;
  margin: 0 0 10px 10px;
}
#NavSpRelationsite li a{
  font-size: 10px;
  display: block;
  height: 30px;
  padding-left: 40px;
}
#NavSpRelationsite li.Compedia a{
  background: url(/images/format/FooterCompedia.png) no-repeat;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5) {
	#NavSpRelationsite li.Compedia a{
        background-image: url(/images/format/FooterCompedia@2x.png);
        background-size: 30px 30px;
        }
}
#NavSpRelationsite li.Mg a{
  background: url(/images/format/FooterMg.png) no-repeat;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5) {
	#NavSpRelationsite li.Mg a{
        background-image: url(/images/format/FooterMg@2x.png);
        background-size: 30px 30px;
        }
}
#NavSpOthercontent{
  border-top: 1px solid #444;
  border-bottom: 1px solid #444;
  padding: 10px 0;
  margin: 0 0 10px 0;
}
#NavSpOthercontent li{
  float: none;
  margin: 0 0 3px 10px;
}
#NavSpOthercontent li a{
  font-size: 10px;
}
#NavSpOfficialSNSWrapper{
  padding: 0 0 10px 0;
  border-bottom: 1px solid #444;
}
#NavSpOfficialSNSLabel{
  float: left;
  clear: both;
  color: #CCC;
  margin: 6px 10px 0 10px;
}
#NavSpOfficialSNS{
  float: right;
  width: 120px;
  padding: 0 0 0 5px;
}
#NavSpOfficialSNS li{
  float: left;
  margin-left: 5px;
}
#NavSpOfficialSNS li a{
  display: block;
  overflow: hidden;
  width: 22px;
  height: 22px;
  background: url(/images/format/BtnSns@2x.png) no-repeat;
  -webkit-background-size: 88px 22px;
          background-size: 88px 22px;
}
#NavSpOfficialSNS li.Twitter a{
  background-position: -22px 0;
}
#NavSpOfficialSNS li.Pinterest a{
  background-position: -44px 0;
}
#NavSpOfficialSNS li.Tumblr a{
  background-position: -66px 0;
}

#CbHeader #BtnSignup,
#CbHeader #BtnLogin{
  font-size: 11px;
  padding: 0 10px;
  letter-spacing: 0;
}
#NavSetDesign{
  display: none;
}

/* ------------------------------
 Pager
 pearライブラリを使用したページャーのスタイル
------------------------------ */
#Pager.contentsUi {
  background: none;
  padding: 5px 0 15px;
}
#Pager.contentsUi > a,
#Pager.contentsUi > b {
  display: none !important;
}
#Pager.contentsUi a,
#Pager.contentsUi b {
  box-shadow: 0 0 0 1px rgba(150,150,150,.25);
}
#Pager.contentsUi .pageController{
  float: none;
  text-align: center;
}
#Pager .pageData {
  text-align: center;
  height: auto;
  margin: 15px 0 0;
  width: 100%;
  text-align: center;
}
#Pager .pageData br {
  display: none;
}
#Pager.contentsUi a[title="next page"] {
  width: 100%;
  max-width: 350px;
  box-sizing: border-box;
  height: 50px;
  margin: 0;
}
#Pager.contentsUi a[title="previous page"]{
  margin: 0 5px 0 0;
}
#Pager.contentsUi a[title="previous page"] + a[title="next page"] {
  width: calc(100% - 75px);
  margin: 0 0 0 5px;
}


/* ------------------------------
 Footer
------------------------------ */
#Footer,
#FooterSmall{
  display: none;
}
#FooterMobile{
  display: block;
}
