@charset "utf-8";
@font-face {
    font-family: CKTKingkong;
  src: url("//staticcdn.bandaihobbysite.cn/fonts/CKTKingkong.ttf");
}
@font-face {
  font-family: SHanSanR;
  src: url("//staticcdn.bandaihobbysite.cn/fonts/SourceHanSansCN-Regular.otf");
}
@font-face {
  font-family: SHanSanL;
  src: url("//staticcdn.bandaihobbysite.cn/fonts/SourceHanSansCN-Light.otf");
}
@font-face {
  font-family: SHanSanB;
  src: url("//staticcdn.bandaihobbysite.cn/fonts/SourceHanSansCN-Bold.otf");
}
@font-face {
  font-family: SHanSanM;
  src: url("//staticcdn.bandaihobbysite.cn/fonts/SourceHanSansCN-Medium.otf");
}
@font-face {
  font-family: SHanSerM;
  src: url("//staticcdn.bandaihobbysite.cn/fonts/SOURCEHANSERIFCN-MEDIUM.OTF");
}

/* Eric Meyer's Reset CSS v2.0 - http://cssreset.com */
/*html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,*/
/*del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,*/
/*label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,*/
/*footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;*/
/*vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,*/
/*section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,*/
/*blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}*/

img { vertical-align: bottom; }
em, strong { font-weight: bold; }


html {
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
}


/**
 * Basic Elements
 */

body {
  margin: 0;
  color: #fff;
  background: #fff url(../img/bg_honeycomb.png) center center repeat;
  /*background-size: cover;*/
  /*background-attachment: fixed;*/
  font-size: 14px;
  line-height: 1.5;
}
a {
  color: #0987c3;
}
a:hover,
a:focus {
  text-decoration: none;
}


/**
 * Layout
 */

.inner {
  max-width: 1200px;
  margin: 0 auto;
}
.inner:after {
  content: "";
  display: block;
  clear: both;
}

#wrapper {
  margin: 0 auto;
  color: #000;
  background: transparent;
}

#content {
  padding-bottom: 40px;
}
#content .inner {
  position: relative;
}


/**
 * Header
 */

#header {
  position: relative;
  height: 400px;
  background: url(../img/bg_line.png) repeat-x 50% 190px;
}
#header .inner {
  position: relative;
}
#header .siteTtl {
  position: absolute;
  top: 0;
  left: -12px;
}
#header .siteTtl a {
  display: block;
}
#header .siteTtl img {
  width: 400px;
  height: auto;
}


/**
 * Main
 */

#main {
  float: right;
  max-width: 1200px;
  -webkit-transition: opacity 0.2s ease-in-out;
          transition: opacity 0.2s ease-in-out;
}
body.pjaxing #main {
  opacity: 0;
  -webkit-transition: opacity 0.2s ease-in-out;
          transition: opacity 0.2s ease-in-out;
}

#pageTtl {
  position: absolute;
  top: -400px;
  right: 0;
  height: 400px;
}
#pageTtl .en {
  position: absolute;
  top: 56px;
  right: 0;
}
#pageTtl .ttl {
  position: absolute;
  top: 147px;
  right: 0;
}
#pageTtl .titlename {
  position: relative;
  top: 148px;
  right: 0;
  font-size: 68px;
  font-family: CKTKingkong;
  color: #000000;
}
#pageTtl .titlenameen {
  position: absolute;
  top: 215px;
  right: 0;
  font-size: 60px;
  font-family: CKTKingkong;
  color: rgba(1, 0, 0, 0.3);
}
#pageTtl .titlenameother {
  position: relative;
  top: 148px;
  right: 0;
  font-size: 68px;
  font-family: CKTKingkong;
  color: #000000;
}
#pageTtl .en,
#pageTtl .ttl {
  -webkit-transition: all 0.5s ease-in-out;
          transition: all 0.5s ease-in-out;
}
body.pjaxing #pageTtl .en,
body.pjaxing #pageTtl .ttl {
  -webkit-transition: all 0.5s ease-in-out;
          transition: all 0.5s ease-in-out;
}
body.pjaxing #pageTtl .en  { opacity: 0; right: 20px; }
body.pjaxing #pageTtl .ttl { opacity: 0; right: -40px; }

#pageTtl .en img,
#pageTtl .ttl img {
  margin-right: -1px;
}

#pageUpdate {
  position: absolute;
  top: -32px;
  right: 0;
  font-size: 11px;
  font-weight: bold;
}

.section {
  margin-bottom: 45px;
}
.section:after {
  content: "";
  display: block;
  clear: both;
}

.section.story {
  padding-bottom: 48px;
  background: url(../img/bg_sash.png) repeat-x 0 100%;
}

.section > * {
  margin-bottom: 1.25em;
}

.secTtl {
  margin-bottom: 30px;
  color: #fff;
  background: url(../img/bg_section.gif) no-repeat;
  font-size: 16px;
  line-height: 41px;
  text-indent: 18px;
}

.secTtl_SPECIAL {
  margin-bottom: 30px;
  color: #ff3;
  background: url(../img/bg_section_sp.gif) no-repeat;
  font-size: 16px;
  line-height: 41px;
  text-indent: 18px;
}

.secTtl_gunpla {
  margin-bottom: 30px;
}


.tabNav {
  margin-bottom: 40px;
  padding-bottom: 8px;
  background: url(../img/bg_sash.png) repeat-x 0 100%;
  letter-spacing: -0.4em;
}
.tabNav li {
  margin-right: -30px;
  display: inline-block;
  /*display: inline;*/
  /*zoom: 1;*/
  letter-spacing: normal;
  vertical-align: bottom;
}

.nameList {
  margin-top: 60px;
}
.nameList:after {
  content: "";
  display: block;
  clear: both;
}
.nameList li {
  float: left;
}

/**
 * Misc.
 */

.pctR {
  float: right;
  margin-left: 2em;
}

.alL { text-align: left; }
.alR { text-align: right; }
.alC { text-align: center; }

.note {
  font-size: 85%;
}
p.indent,
ol.indent li,
ul.indent li {
  position: relative;
  padding-left: 1.1em;
}
ol.indent li,
ul.indent li {
  margin-bottom: 0.25em;
}
p.indent span,
ol.indent li span,
ul.indent li span {
  position: absolute;
  left: 0;
  width: 1.1em;
  white-space: nowrap;
}

.nowrapBlock {
  overflow: hidden;
}

.toNextPrevPage {
  float: right;
  width: 265px;
  overflow: hidden;
  zoom: 1;
}
.toNextPrevPage li.prev {
  float: left;
}
.toNextPrevPage li.next {
  float: right;
}

.toCategoryTop {
  margin-top: 40px;
}

.nextStory {
  margin-top: 20px;
  margin-bottom: 60px;
  padding: 8px;
  background: #fff url(../img/bg_sash2.png);
  zoom: 1;
}
.nextStory dl {
  background: #fff;
}
.nextStory dt {
  font-size: 16px;
  font-weight: bold;
  line-height: 12px;
}
.nextStory dt strong {
  display: inline-block;
  display: inline;
  zoom: 1;
  vertical-align: bottom;
  /*line-height: normal;*/
}
.nextStory dd {
  padding: 15px 20px 5px;
  font-size: 12px;
  line-height: 1.67;
}
.nextStory dd p {
  margin-bottom: 1em;
}
.nextStory dd p.staff {
  font-size: 10px;
}

.section.story p.staff {
  font-size: 12px;
}

.toBch {
  margin-top: 30px;
  margin-bottom: 40px;
}

#toPageTop {
  position: absolute;
  top: -44px;
  right: 0;
  width: 225px;
  height: 0;
  padding-top: 44px;
  background: url(../img/btn_topagetop.png) no-repeat;
  overflow: hidden;
}
#toPageTop:hover {
  background-position: 0 -44px;
}

.panelList {
  clear: both;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 30px;
  margin:0 20px 40px;
}

.panelList li {
  flex: 0 0 calc(33.333% - 20px); /* PC端一行3个 */
  margin: 0;
}

.panelList li img {
  width: 100%;
  height: auto;
  max-width: 375px;
  transition: transform 0.3s ease-in-out;
  transform-origin: center;
}

.panelList li a {
  position: relative;
  display: block;
  overflow: hidden;
  -webkit-transition: background 0.1s ease-in-out;
          transition: background 0.1s ease-in-out;
}

.panelList li a:hover img {
  transform: scale(1.1);
}

.panelList li a:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  /*background: rgba(0,173,255,0.25);*/
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
          transition: opacity 0.3s ease-in-out;
}

.panelList li a:hover:after {
  opacity: 1;
}

/* 移动端响应式 */
@media screen and (max-width: 768px) {
  .panelList {
    gap: 15px;
    padding: 10px;
    margin: 0;
  }

  .panelList li {
    flex: 0 0 calc(50% - 10px); /* 移动端一行2个 */
  }
}


.characterBox {
  position: relative;
}

/* 角色图片容器样式 */
.pct {
  position: relative;
  display: block;
  min-height: auto;
  margin-bottom: 20px;
  overflow: hidden;
}

.characterBox .pct {
  background-size: contain;
}

/* 角色图片样式 */
.character-image {
  width: 100%;
  height: auto;
  display: block;
  max-width: 100%;
  position: relative;
  z-index: 1;
}

.mechanics-image {
  width: 100%;
  height: auto;
  display: block;
  max-width: 100%;
  position: relative;
  margin-top:-15% ;
  z-index: 1;
}

/* 文字覆盖层样式 */
.character-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

/* 文字覆盖层样式 */
.mechanics-overlay {
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}


.characterBox .characterName{
  font-size: 48px;
  margin-bottom: 20px;
  font-family: SHanSanL;
  color: #000000;
}
.mechanicsBox .mechanicsName{
  font-size: 48px;
  margin-bottom: 20px;
  font-family: SHanSanL;
  color: #000000;
}


#main_text p {
  margin: 0;
  line-height: 1.8;
  font-size: 16px;
  font-weight: 400;
}

.characterBox #main_text p {
  width: 65%;
  font-size: 24px;
  color: #000000;
  line-height: 2;
  font-family: SHanSanR;
}

.mechanicsBox #main_text p {
  font-size: 24px;
  color: #000000;
  line-height: 2;
  font-family: SHanSanR;
}

.characterBox .btnToGunpla {
  margin-top: 15px;
  text-align: right;
}

/* 相关角色样式 */
#reCharacters {
  padding: 0 0 60px;
}

#reCharacters .section-title {
  font-size: 28px;
  font-weight: bold;
  color: #333;
  margin-bottom: 30px;
  text-align: left;
  border-left: 4px solid #e74c3c;
  padding-left: 15px;
}

/* 相关机体样式 */
#reMecha {
  padding: 0 0 60px;
}

#reMecha .section-title {
  font-size: 28px;
  font-weight: bold;
  color: #333;
  margin-bottom: 30px;
  text-align: left;
  border-left: 4px solid #e74c3c;
  padding-left: 15px;
}

@media screen and (max-width: 768px) {
  /* 相关角色样式 */
  #reCharacters {
    padding: 0 0 30px;
  }
  /* 相关机体样式 */
  #reMecha {
    padding: 0 0 30px;
  }
}

/* 标题图片样式 */
.section-title .title-image {
  max-width: 200px;
  height: auto;
  display: block;
}

/* 相关角色标题图片 - 响应式显示 */
.section-title-image {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  text-align: center;
  overflow: hidden;
  margin-bottom: 40px;
}

/* PC端图片显示 */
.section-title-image .pc-image {
  height: 70px;
  width: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: all 0.3s ease;
}

/* 移动端图片隐藏 */
.section-title-image .mobile-image {
  display: none;
  /*height: 50px;*/
  width: 100%;
  object-fit: cover;
  object-position: center;
  transition: all 0.3s ease;
}

/* 移动端响应式 - 768px以下 */
@media screen and (max-width: 1200px) {
  .section-title-image {
    padding: 15px 0;
    margin-bottom: 0;
  }

  /* 隐藏PC端图片 */
  .section-title-image .pc-image {
    display: none;
  }

  /* 显示移动端图片 */
  .section-title-image .mobile-image {
    display: block;
  }
}

/* 响应式调整 */
@media screen and (max-width: 768px) {
  .character-overlay {
    position: relative;
    padding: 0;
  }
  .mechanics-overlay {
    position: relative;
    padding: 0;
  }

  .characterName {
    font-size: 24px;
    margin-bottom: 20px;
    padding: 0;
  }

  .mechanicsBox .mechanicsName {
    font-size: 24px;
    margin: 20px 0 0;
    padding: 0;
  }
  .mechanicsBox {
    margin: 20px;
  }
  .mechanicsBox .mechanics-image{
    margin-top: -5%;
  }
  #main_text {
    padding: 0;
    max-width: 100%;
  }

  #main_text p {
    font-size: 14px;
    line-height: 1.6;
  }

  .mechanicsBox #main_text p {
    font-size: 14px;
    margin: 20px 0;
  }

  .characterBox{
    margin: 20px;
  }
  .characterBox .characterName {
    font-size: 32px;
  }
  .characterBox #main_text p {
    width: 100%;
    font-size: 16px;
  }
}



.character-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.character-card {
  flex: 0 0 calc(25% - 15px);
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.character-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
}

.character-card a {
  display: block;
  text-decoration: none;
  color: inherit;
}

.character-grid .character-image {
  /*position: relative;*/
  width: 100%;
  overflow: hidden;
}
.character-grid .character-overlay{
  position: relative;
}
.character-grid .character-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.character-name {
  padding: 12px 15px;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  text-align: center;
}

.red-bg {
  background: #e74c3c;
}

.blue-bg {
  background: #3498db;
}

.orange-bg {
  background: #f39c12;
}

.pink-bg {
  background: #e91e63;
}

/* 响应式设计 */
@media screen and (max-width: 768px) {
  .character-grid {
    gap: 15px;
  }

  .character-card {
    flex: 0 0 calc(50% - 7.5px);
  }
}


/* ガンプラ */
.gunplaList li {
  position: relative;
  margin-bottom: 20px;
  padding: 10px;
  background: #efefef;
  -webkit-transition: background 0.1s ease-in-out;
          transition: background 0.1s ease-in-out;
  background: url(../img/bg_cnr_tl.png) no-repeat 0 0,
              url(../img/bg_cnr_tr.png) no-repeat 100% 0,
              url(../img/bg_cnr_br.png) no-repeat 100% 100%,
              url(../img/bg_cnr_bl.png) no-repeat 0 100%,
              rgba(0,0,0,0.05);
  /*zoom: 1;*/
}
.gunplaList li:after {
  content: "";
  display: block;
  clear: both;
}
.gunplaList li.new {
  background-color: #fcfbde;
  background-color: rgba(255,240,75,0.14);
}
.gunplaList li.old {
  background-color: #fcfbde;
  background-color: rgba(255,240,75,0.14);
}
.gunplaList li.new:before {
  content: "NEW";
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 0;
  padding-top: 40px;
  background: url(../img/icon_new.png) no-repeat;
  overflow: hidden;
}

.gunplaList li .pct {
  float: left;
  width: 202px;
  padding: 10px;
  background: url(../img/bg_mesh.png);
}
.gunplaList li dl {
  margin-left: 254px;
  /*zoom: 1;*/
}
.gunplaList li .name {
  margin-bottom: 3px;
  font-size: 16px;
  font-weight: bold;
}
.gunplaList li .tag,
.gunplaList li .date,
.gunplaList li .price {
  margin-right: 0.6em;
  font-size: 12px;
  display: inline;
}
.gunplaList li .tag img {
  vertical-align: text-bottom;
}
.gunplaList li .txt {
  margin-top: 6px;
}
.gunplaList li .btn {
  margin-top: 6px;
  margin-left: 18px;
}
.gunplaList li .btn .hobby,
.gunplaList li .btn .mecha {
  margin-left: -20px;
}

/* 最新情報 */
.topicBox {
  margin-bottom: 30px;
  padding-top: 25px;
  background: url(../img/bg_sash.png) repeat-x;
  /*zoom: 1;*/
}
.topicBox:after {
  content: "";
  display: block;
  clear: both;
}
.topicBox > * {
  margin-bottom: 1.5em;
}
.topicBox .date {
  margin-bottom: 0;
  font-size: 12px;
}
.topicBox .ttl {
  font-size: 16px;
  font-weight: bold;
}
.topicBox .pct {
  float: right;
  margin: 0 0 1.5em 1.5em;
  padding: 2px;
  background: url(../img/bg_cnr_tl.png) no-repeat 0 0,
              url(../img/bg_cnr_tr.png) no-repeat 100% 0,
              url(../img/bg_cnr_br.png) no-repeat 100% 100%,
              url(../img/bg_cnr_bl.png) no-repeat 0 100%;
}
.topicBox .pct img {
  padding: 10px;
  background: url(../img/bg_mesh.png);
}

/* 映像配信 */
.pctBox,
.pctBoxS,
.movieBox {
  margin-bottom: 30px;
}
.movieBox dt,
.movieList li dt {
  margin-bottom: 10px;
}
.pctBox,
.movieBox dt a,
.movieList li dt a,
.movieList_middle li dt a,
.storyBox {
  position: relative;
  display: block;
  padding: 11px;
  background: url(../img/bg_mesh.png); /* IE8 */
  background: url(../img/bg_cnr_l_tl.png) no-repeat 0 0,
              url(../img/bg_cnr_l_tr.png) no-repeat 100% 0,
              url(../img/bg_cnr_l_br.png) no-repeat 100% 100%,
              url(../img/bg_cnr_l_bl.png) no-repeat 0 100%,
              url(../img/bg_mesh.png);
  outline: none;
  -webkit-transition: opacity 0.1s ease-in-out;
          transition: opacity 0.1s ease-in-out;
}
.pctBoxS {
  position: relative;
  display: block;
  padding: 8px;
  background: url(../img/bg_mesh.png); /* IE8 */
  background: url(../img/bg_cnr_tl.png) no-repeat 0 0,
              url(../img/bg_cnr_tr.png) no-repeat 100% 0,
              url(../img/bg_cnr_br.png) no-repeat 100% 100%,
              url(../img/bg_cnr_bl.png) no-repeat 0 100%,
              url(../img/bg_mesh.png);
  outline: none;
}
.movieBox dt a:hover,
.movieList li dt a:hover {
  opacity: 0.9;
  filter: alpha(opacity=90);
  -ms-filter: "alpha(opacity=90)";
}
.movieList_middle li dt a:hover {
  opacity: 0.9;
  filter: alpha(opacity=90);
  -ms-filter: "alpha(opacity=90)";
}

.movieBox dd,
.movieList li dd {
  font-size: 16px;
  font-weight: bold;
}
.movieList li dd {
  text-align: center;
}

.movieList {
  margin: 0 0 30px -22px;
  letter-spacing: -0.4em;
}
.movieList li {
  display: inline-block;
  /*display: inline;*/
  /*zoom: 1;*/
  margin: 0 0 22px 22px;
  width: 232px;
  letter-spacing: normal;
  vertical-align: top;
}
.movieList li dd {
  font-size: 14px;
}
.movieList li dt a {
  background: url(../img/bg_cnr_tl.png) no-repeat 0 0,
              url(../img/bg_cnr_tr.png) no-repeat 100% 0,
              url(../img/bg_cnr_br.png) no-repeat 100% 100%,
              url(../img/bg_cnr_bl.png) no-repeat 0 100%,
              url(../img/bg_mesh.png);
}
.movieList li dt a:after {
  background: url(../img/bg_play_s.png) no-repeat 50% 50%; /* IE8 */
  background: url(../img/bg_play_s.png) no-repeat 50% 50%, rgba(0,0,0,0.5);
}




.movieList_middle li dd {
  font-size: 16px;
  font-weight: bold;
}
.movieList_middle li dd {
  text-align: center;
}

.movieList_middle {
  margin: 0 0 30px -22px;
  letter-spacing: -0.4em;
}
.movieList_middle li {
  display: inline-block;
  /*display: inline;*/
  /*zoom: 1;*/
  margin: 0 0 22px 22px;
  width: 359px;
  letter-spacing: normal;
  vertical-align: top;
}
.movieList_middle li dd {
  font-size: 14px;
}
.movieList_middle li dt a {
  background: url(../img/bg_cnr_tl.png) no-repeat 0 0,
              url(../img/bg_cnr_tr.png) no-repeat 100% 0,
              url(../img/bg_cnr_br.png) no-repeat 100% 100%,
              url(../img/bg_cnr_bl.png) no-repeat 0 100%,
              url(../img/bg_mesh.png);
}
.movieList_middle li dt a:after {
  background: url(../img/bg_play_s.png) no-repeat 50% 50%; /* IE8 */
  background: url(../img/bg_play_s.png) no-repeat 50% 50%, rgba(0,0,0,0.5);
}








/* ストーリー */
.storyList {
  display: inline-block;
  /*display: inline;*/
  /*zoom: 1;*/
  margin-left: -20px;
  padding-top: 40px;
  letter-spacing: -0.4em;
  background: url(../img/bg_sash_4col.png) no-repeat 20px 0;
}
.storyList:after {
  content: "";
  display: block;
  clear: both;
}
.storyList li {
  display: inline-block;
  /*display: inline;*/
  /*zoom: 1;*/
  width: 170px;
  margin-left: 20px;
  margin-bottom: 20px;
  letter-spacing: normal;
  vertical-align: top;
}
.storyList li a {
  position: relative;
  display: block;
  color: #000;
  text-decoration: none;
}
.storyList li a dl dt {
  position: relative;
  padding: 2px;
  background: url(../img/bg_cnr_tl.png) no-repeat 0 0,
              url(../img/bg_cnr_tr.png) no-repeat 100% 0,
              url(../img/bg_cnr_br.png) no-repeat 100% 100%,
              url(../img/bg_cnr_bl.png) no-repeat 0 100%;
}
.storyList li a dl dt:after {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  right: 2px;
  bottom: 2px;
  display: block;
  background: rgba(0,173,255,0.25);
  opacity: 0;
  -webkit-transition: opacity 0.1s ease-in-out;
          transition: opacity 0.1s ease-in-out;
}
.storyList li a:hover dl dt:after {
  opacity: 1;
}
.storyList li a dl dt strong {
  display: block;
  background: #efefef;
  background: rgba(0,0,0,0.05);
  text-decoration: none;
}
.storyList li a dl dt strong img {
  -webkit-transition: opacity 0.1s ease-in-out;
          transition: opacity 0.1s ease-in-out;
}
.storyList li a:hover dl dt strong img {
  opacity: 0.9;
}
.storyList li a dl dt strong span {
  display: block;
  position: absolute;
  left: 2px;
  bottom: 2px;
  padding: 2px 25px 0 10px;
  color: #fff;
  background: url(../img/bg_ep.png) no-repeat 100% 0;
  font-size: 13px;
  line-height: 18px;
  z-index: 999;
}
.storyList li a dl dd {
  margin-top: 0.5em;
  font-weight: bold;
}










/**
 * Side
 */

#side {
  float: left;
  width: 180px;
}

#globalNav {
  position: relative;
  z-index: 8999;
}
#globalNav li a,
#globalNav li span {
  display: block;
  height: 40px;
  padding-bottom: 5px;
  background: url(../img/spr_globalnav.png) no-repeat;
  text-indent: -999px;
}
#globalNav li span {
  opacity: 0.3;
  filter: alpha(opacity=30);
  -ms-filter: "alpha(opacity=30)";
}

#globalNav li.nav01 a { background-position: 0    0px; }
#globalNav li.nav02 a { background-position: 0  -40px; }
#globalNav li.nav03 a { background-position: 0  -80px; }
#globalNav li.nav04 a { background-position: 0 -120px; }
#globalNav li.nav05 a { background-position: 0 -160px; }
#globalNav li.nav06 a { background-position: 0 -200px; }
#globalNav li.nav07 a { background-position: 0 -240px; }
#globalNav li.nav08 a { background-position: 0 -280px; }
#globalNav li.nav09 a { background-position: 0 -320px; }

#globalNav li.nav01 span { background-position: 0    0px; }
#globalNav li.nav02 span { background-position: 0  -40px; }
#globalNav li.nav03 span { background-position: 0  -80px; }
#globalNav li.nav04 span { background-position: 0 -120px; }
#globalNav li.nav05 span { background-position: 0 -160px; }
#globalNav li.nav06 span { background-position: 0 -200px; }
#globalNav li.nav07 span { background-position: 0 -240px; }
#globalNav li.nav08 span { background-position: 0 -280px; }
#globalNav li.nav09 span { background-position: 0 -320px; }

#globalNav li.nav01 a:hover { background-position: -180px    0px; }
#globalNav li.nav02 a:hover { background-position: -180px  -40px; }
#globalNav li.nav03 a:hover { background-position: -180px  -80px; }
#globalNav li.nav04 a:hover { background-position: -180px -120px; }
#globalNav li.nav05 a:hover { background-position: -180px -160px; }
#globalNav li.nav06 a:hover { background-position: -180px -200px; }
#globalNav li.nav07 a:hover { background-position: -180px -240px; }
#globalNav li.nav08 a:hover { background-position: -180px -280px; }
#globalNav li.nav09 a:hover { background-position: -180px -320px; }

#globalNav li.nav01.current a { background-position: -360px    0px; }
#globalNav li.nav02.current a { background-position: -360px  -40px; }
#globalNav li.nav03.current a { background-position: -360px  -80px; }
#globalNav li.nav04.current a { background-position: -360px -120px; }
#globalNav li.nav05.current a { background-position: -360px -160px; }
#globalNav li.nav06.current a { background-position: -360px -200px; }
#globalNav li.nav07.current a { background-position: -360px -240px; }
#globalNav li.nav08.current a { background-position: -360px -280px; }
#globalNav li.nav09.current a { background-position: -360px -320px; }

body.home #globalNav li.nav01 a { background-position: -540px    0px; }
body.home #globalNav li.nav02 a { background-position: -540px  -40px; }
body.home #globalNav li.nav03 a { background-position: -540px  -80px; }
body.home #globalNav li.nav04 a { background-position: -540px -120px; }
body.home #globalNav li.nav05 a { background-position: -540px -160px; }
body.home #globalNav li.nav06 a { background-position: -540px -200px; }
body.home #globalNav li.nav07 a { background-position: -540px -240px; }
body.home #globalNav li.nav08 a { background-position: -540px -280px; }
body.home #globalNav li.nav09 a { background-position: -540px -320px; }

body.home #globalNav li.nav01 span { background-position: -540px    0px; }
body.home #globalNav li.nav02 span { background-position: -540px  -40px; }
body.home #globalNav li.nav03 span { background-position: -540px  -80px; }
body.home #globalNav li.nav04 span { background-position: -540px -120px; }
body.home #globalNav li.nav05 span { background-position: -540px -160px; }
body.home #globalNav li.nav06 span { background-position: -540px -200px; }
body.home #globalNav li.nav07 span { background-position: -540px -240px; }
body.home #globalNav li.nav08 span { background-position: -540px -280px; }
body.home #globalNav li.nav09 span { background-position: -540px -320px; }

body.home #globalNav li.nav01 a:hover { background-position: -180px    0px; }
body.home #globalNav li.nav02 a:hover { background-position: -180px  -40px; }
body.home #globalNav li.nav03 a:hover { background-position: -180px  -80px; }
body.home #globalNav li.nav04 a:hover { background-position: -180px -120px; }
body.home #globalNav li.nav05 a:hover { background-position: -180px -160px; }
body.home #globalNav li.nav06 a:hover { background-position: -180px -200px; }
body.home #globalNav li.nav07 a:hover { background-position: -180px -240px; }
body.home #globalNav li.nav08 a:hover { background-position: -180px -280px; }
body.home #globalNav li.nav09 a:hover { background-position: -180px -320px; }


/**
 * Footer
 */

#footer {
  color: #fff;
  background: #000;
  background: -webkit-linear-gradient(top, #303030, #000) #000;
  background:         linear-gradient(top, #303030, #000) #000;
}
#footer .inner {
  position: relative;
  padding: 10px 0 20px;
  display: flex;
  align-items: center;
}

#footer .copyright {
  float: left;
  margin-top: 15px;
  margin-left: 20px;
  font-size: 14px;
  line-height: 20px;
  font-family: SHanSanR ;
}
#footer .copyright a {
  text-decoration: none;
  color: #fff;
}
#footer .logo {
  float: left;
  text-align: center;
}

#footer .relatedInfo {
  margin-bottom: 14px;
  /*zoom: 1;*/
}
#footer .relatedInfo { display: none; }
body.home #footer .relatedInfo { display: block; }

#footer .relatedInfo:after {
  content: "";
  display: block;
  clear: both;
}
#footer .relatedInfo .bnrBox {
  position: relative;
  float: left;
  width: 670px;
  height: 76px;
  padding: 5px 25px 5px 23px;
  background: url(../img/bg_bnrbox.png) no-repeat;
}
#footer .relatedInfo .bnrBox ul.nav li a {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 22px;
  opacity: 1;
  text-indent: -999px;
  overflow: hidden;
}
#footer .relatedInfo .bnrBox ul.nav li a:hover {
  opacity: 0.8;
}
#footer .relatedInfo .bnrBox ul.nav li.prev a {
  left: 0;
  background: url(../img/bg_bnrbox_prev.png) no-repeat;
}
#footer .relatedInfo .bnrBox ul.nav li.next a {
  right: 0;
  background: url(../img/bg_bnrbox_next.png) no-repeat;
}

#footer .relatedInfo .bnrBox ul.bnr {
  /* margin-left: -5px; */
  position: relative;
  width: 670px;
  height: 76px;
  overflow: hidden;
}
#footer .relatedInfo .bnrBox ul.bnr li {
  position: absolute;
  /* float: left; */
  /* margin-left: 5px; */
}
#footer .relatedInfo .bnrBox ul.bnr li a {
  position: relative;
  display: block;
  border: 1px solid #ccc;
  -webkit-transition: opacity 0.1s ease-in-out;
          transition: opacity 0.1s ease-in-out;
}
#footer .relatedInfo .bnrBox ul.bnr li a:hover {
  opacity: 0.9;
}

#footer .relatedInfo .bnrBox.no-js ul.nav {
  display: none;
}
#footer .relatedInfo .bnrBox.no-js ul.bnr {
  margin-left: -5px;
  width: auto;
}
#footer .relatedInfo .bnrBox.no-js ul.bnr li {
  position: static;
  float: left;
  margin-left: 5px;
}

#footer .relatedInfo .twtrBox {
  float: right;
}
#footer .relatedInfo .twtrBox a:hover {
  -webkit-transition: opacity 0.1s ease-in-out;
          transition: opacity 0.1s ease-in-out;
}
#footer .relatedInfo .twtrBox a:hover {
  opacity: 0.95;
}
@media screen and (max-width:1200px) {
  #pageTtl {
    position: absolute;
    top: -300px;
    right: 0;
    height: 300px;
  }
  #header {
    position: relative;
    height: 300px;
    background: url(../img/bg_line.png) repeat-x 50% 140px;
  }
  #header .siteTtl img{
    margin-left: 30px;
    width: 300px;
  }
  #pageTtl .titlename {
    position: relative;
    top: 98px;
    right: 10px;
  }
  #pageTtl .titlenameother {
    position: relative;
    top: 98px;
    right: 10px;
  }
  #pageTtl .titlenameen {
    position: absolute;
    top: 165PX;
    right: 10px;

  }
  #footer .inner{
    margin-left: 30px;
  }
  .characterBox{
    margin: 20px;
  }

}
@media screen and (max-width:767px) {
  #pageTtl {
    position: absolute;
    top: -210px;
    right: 0;
    height: 210px;
  }
  #header {
    position: relative;
    height: 210px;
    background: url(../img/bg_line_sp.png) repeat-x 50% 70px;
  }
  #header .siteTtl img {
    width: 180px;
    height: auto;
  }
  #pageTtl .menusp {
    position: relative;
    right: 10px;
    top: -10PX;
  }
  #pageTtl .titlenameother {
    position: relative;
    right: 5px;
    font-size: 30px;
    top: 93px;
    white-space: normal;
    word-break: break-all;
    max-width: 130px;
    overflow-wrap: break-word;
    text-align: right;
  }
  #pageTtl .titlename {
    position: relative;
    right: 5px;
    font-size: 30px;
    top: 123px;
    white-space: normal;
    word-break: break-all;
    max-width: 130px;
    overflow-wrap: break-word;
    text-align: right;
  }
  #pageTtl .titlenameen {
    position: absolute;
    right: 5px;
    font-size: 28pX;
    top:154PX;
  }
  .panelList li img {
    width: 100%;
    height: auto;
  }
  #footer .inner {
    position: relative;
    padding: 20px;
    display: grid;
    align-items: center;
    margin: 0;
    gap: 10px;
  }
  #footer .copyright {
    float: left;
    margin: 0;
    font-size: 13px;
    line-height: 20px;
  }
  #footer .copyright a {
    text-decoration: none;
    color: #fff;
  }
  #footer .logo {
    float: left;
    text-align: center;
  }
}

/* 移动端菜单样式 */
.menu-btn {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 1000;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .btn-trigger {
    transition: all 0.3s ease;
  }
  .btn-trigger img {
    width: 35px;
    height: 35px;
  }
  .btn-trigger:hover {
    transform: scale(1.05);
  }
  .btn-trigger.active {
    background: rgba(255, 255, 255, 0.9);
  }
  .btn-trigger.active img {
    filter: invert(0);
  }
}

/* 移动端按钮 - 只在768px以下显示 */
@media screen and (max-width: 768px) {
  .btn-trigger {
    display: block;
  }
  .btn-trigger-pc {
    display: none;
  }
}

/* PC端按钮 - 只在768px以上显示 */
@media screen and (min-width: 769px) {
  .btn-trigger {
    display: none;
  }
  .btn-trigger-pc {
    display: block;
  }
}

.btn-trigger-pc {
  transition: all 0.3s ease;
}
.btn-trigger-pc img {
  height: 50px;
  width: 100%;
}

.btn-trigger-pc:hover {
  transform: scale(1.05);
}

.btn-trigger-pc.active {
  background: rgba(255, 255, 255, 0.9);
}

.btn-trigger-pc.active img {
  filter: invert(0);
}

#menu_sp {
  position: fixed;
  top: 80px;
  right: 20px;
  z-index: 999;
  background: rgba(0, 0, 0, 0.95);
  border-radius: 8px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
  overflow: hidden;
}

.spmenu {
  display: none;
  list-style: none;
  margin: 0;
  padding: 10px 0;
  min-width: 200px;
}

.spmenu li {
  margin: 0;
}

.spmenu li a {
  display: block;
  padding: 12px 20px;
  color: #fff;
  text-decoration: none;
  transition: background-color 0.3s ease;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.spmenu li:last-child a {
  border-bottom: none;
}

.spmenu li a:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

.spmenu li a img {
  width: 20px;
  height: 20px;
  margin-right: 10px;
  vertical-align: middle;
}

/* gotoban容器样式 */
.gotoban {
  margin: 20px;
  text-align: center;
  position: relative;
}

/* PC端图片显示 */
.gotoban img:first-child {
  display: block;
  width: 100%;
  max-width: 1100px;
  height: auto;
  margin: 100px auto 0;
}

/* 移动端图片隐藏 */
.gotoban img:last-child {
  display: none;
}

/* 移动端响应式 - 768px以下 */
@media screen and (max-width: 768px) {
  .gotoban {
    margin: 30px 15px;
  }

  /* 隐藏PC端图片 */
  .gotoban img:first-child {
    display: none;
  }

  /* 显示移动端图片 */
  .gotoban img:last-child {
    display: block;
    width: 100%;
    max-width: 300px;
    height: auto;
    margin: 0 auto;
  }
}



