@charset "utf-8";
.outline {
  font-size: 1.8em;
}

.mod-caption {
  font-size: 0.88889em;
  margin-top: 5px;
}

.outline > .o-header > .o-header-inner {
  width: 100%;
  margin: auto;
}
.outline > .o-body > .o-body-inner {
  width: 1000px;
  margin: auto;
}
.outline > .o-body > .o-body-inner > .o-main > .o-content {
  width: 100%;
}
.outline > .o-footer > .o-footer-inner {
  width: 1000px;
  margin: auto;
}

.outline > .o-header {
  background: url(/ex/pokemonryuoh2/common/images/bg2.png) top center;
  text-align: center;
}
.outline > .o-header > .o-header-inner {
  background: url(/ex/pokemonryuoh2/common/images/bg2add.png) bottom center no-repeat;
}
.outline > .o-header h1 {
  background: #222;
}
.outline > .o-header h1 p {
  width: 100%;
  height: 0;
  padding-top: 615px;
  overflow: hidden;
  background: url(/ex/pokemonryuoh2/common/images/main.jpg) top center no-repeat;
}
.outline > .o-header .ad {
  position: absolute;
  width: 100%;
  text-align: center;
}
.outline > .o-header .ad a {
  display: inline-block;
  width: 106px;
  height: 0;
  padding-top: 53px;
  overflow: hidden;
  background: url(/ex/pokemonryuoh2/common/images/open.png) top center no-repeat;
}
.outline > .o-header .ad a:hover {
  opacity: 0.8;
}
.outline > .o-header .lead {
  padding: 30px 0;
  font-weight: bold;
}

#subpage.outline > .o-header {
  text-align: left;
  border-bottom: 3px solid #bb880f;
}
#subpage.outline > .o-header > .o-header-inner {
  background: transparent;
  width: 1000px;
  margin: auto;
}
#subpage.outline > .o-header .ex-logo {
  position: relative;
  margin-left: -52px;
  width: 446px;
  z-index: 10;
}

.o-body .o-body-inner {
  padding: 80px 0;
}
.o-body.bg1 {
  background: url(/ex/pokemonryuoh2/common/images/bg1.png) top center;
}
.o-body.bg1 .o-body-inner.addBg {
  background: url(/ex/pokemonryuoh2/common/images/bg1add.png) center 50px no-repeat;
}
.o-body.bg1 .o-body-inner.addBg2 {
  background: url(/ex/pokemonryuoh2/common/images/bg1add2.png) center 50px no-repeat;
}
.o-body.bg2 {
  background: url(/ex/pokemonryuoh2/common/images/bg2.png) top center;
}
.o-body.bg2 .o-body-inner.addBg {
  background: url(/ex/pokemonryuoh2/common/images/bg2add2.png) center 50px no-repeat;
}

body, .o-footer {
  background: #000;
}

h2 {
  margin-bottom: 40px;
}
h2.ex-text {
  background: #7c5c95;
  color: #fff;
  padding: 0.3em 20px;
  margin-bottom: 10px;
  font-size: 1.22222em;
  font-weight: bold;
}

h3.ex-text {
  font-weight: bold;
}

.mod-list.-note {
  font-size: 0.77778em;
}
.mod-list .sub-indent {
  margin-left: 1em;
}

.mod-dl.-pcHorizontal {
  *zoom: 1;
}
.mod-dl.-pcHorizontal:after {
  content: '';
  display: table;
  clear: both;
}
.mod-dl.-pcHorizontal .sub-dt {
  float: left;
  margin-right: 10px;
}
.mod-dl.-pcHorizontal .sub-dd {
  overflow: hidden;
}

.mod-grid {
  margin-left: -20px;
}
.mod-grid > .sub-cell {
  margin-bottom: 20px;
}
.mod-grid > .sub-cell > .sub-inner {
  margin-left: 20px;
}
.mod-grid.-marginS {
  margin-left: -10px;
}
.mod-grid.-marginS > .sub-cell {
  margin-bottom: 10px;
}
.mod-grid.-marginS > .sub-cell > .sub-inner {
  margin-left: 10px;
}
.mod-grid.-marginL {
  margin-left: -50px;
}
.mod-grid.-marginL > .sub-cell {
  margin-bottom: 50px;
}
.mod-grid.-marginL > .sub-cell > .sub-inner {
  margin-left: 50px;
}
.mod-grid.-marginLpc {
  margin-left: -50px;
}
.mod-grid.-marginLpc > .sub-cell {
  margin-bottom: 50px;
}
.mod-grid.-marginLpc > .sub-cell > .sub-inner {
  margin-left: 50px;
}
.mod-grid.-step {
  margin-left: -40px;
}
.mod-grid.-step > .sub-cell {
  margin-bottom: 40px;
}
.mod-grid.-step > .sub-cell > .sub-inner {
  margin-left: 40px;
}
.mod-grid.-step > .sub-cell > .sub-inner {
  position: relative;
}
.mod-grid.-step > .sub-cell > .sub-inner:before {
  content: "→";
  display: inline-block;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -30px;
  margin: auto;
}
.mod-grid.-step > .sub-cell.noArrow > .sub-inner {
  position: static;
}
.mod-grid.-step > .sub-cell.noArrow > .sub-inner:before {
  content: "";
  display: none;
}
.mod-grid.-step > .sub-cell.tiltArrow {
  width: 100%;
  margin: -20px 0 20px;
}
.mod-grid.-step > .sub-cell.tiltArrow > .sub-inner:before {
  display: none;
}
.mod-grid.-step > .sub-cell.tiltArrow + .sub-cell > .sub-inner:before {
  display: none;
}
.mod-grid.-step.-adjustArrow > .sub-cell > .sub-inner:before {
  position: absolute;
  top: 80px;
  bottom: auto;
}

.sns {
  width: 100%;
  position: absolute;
  top: 575px;
}
.sns > ul {
  margin: auto;
  text-align: center;
}
.sns > ul li {
  display: inline-block;
  width: 120px;
  height: 21px;
  text-align: left;
}
.sns > ul li.tw {
  width: 75px;
}
.sns > ul li.gg {
  width: 100px;
  margin-right: -20px;
}
.sns > ul li.line {
  display: none;
}

#subpage .sns {
  top: 62px;
}
#subpage .sns > ul {
  width: 1000px;
  text-align: right;
}
#subpage .sns > ul > li {
  text-align: left;
}

.mod-narrowContent {
  width: 90%;
}

.mod-group.-whiteAddShadow {
  padding: 40px 75px;
}
.mod-group.-info {
  padding: 65px 0 40px;
}
.mod-group.-frame {
  width: 530px;
  margin: 0 auto;
  padding: 15px;
}
.mod-group.-frame .sub-inner {
  padding: 30px;
}
.mod-group.-frame.-addRibbon:before {
  content: "";
  -moz-background-size: auto;
  -o-background-size: auto;
  -webkit-background-size: auto;
  background-size: auto;
}
.mod-group.-frame.-addRibbon:after {
  content: "";
  -moz-background-size: auto;
  -o-background-size: auto;
  -webkit-background-size: auto;
  background-size: auto;
}

.mod-section {
  margin-bottom: 40px;
}
.mod-section:last-child {
  margin-bottom: 0;
}

.fs-L {
  font-size: 1.11111em;
}

.backtotop {
  position: fixed;
  bottom: 20px;
  right: 20px;
}
.backtotop a {
  display: inline-block;
  width: 129px;
  height: 0;
  padding-top: 128px;
  overflow: hidden;
  background: url(/ex/pokemonryuoh2/common/images/backtotop.png) 0 0 no-repeat;
}
.backtotop a:hover {
  opacity: 0.8;
}

#modalCont .wrap {
  position: relative;
  display: table;
  margin: 60px auto;
}
#modalCont .wrap .closeBtn a {
  position: absolute;
  top: -4px;
  right: -4px;
  width: 106px;
  height: 0;
  padding-top: 106px;
  overflow: hidden;
  display: block;
  background: url(/ex/pokemonryuoh2/common/images/close.png) 0 0 no-repeat;
}
#modalCont .wrap .closeBtn a:hover {
  opacity: 0.8;
}

.showSp {
  display: none;
}

a.modallyMov {
  display: inline-block;
  position: relative;
}
a.modallyMov:after {
  content: "";
  display: block;
  width: 128px;
  height: 128px;
  background: url(/ex/pokemonryuoh2/common/images/play.png) 0 0 no-repeat;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
a.modallyMov.-red:after {
  content: "";
  display: block;
  width: 151px;
  height: 151px;
  background: url(/ex/pokemonryuoh2/common/images/play2.png) 0 0 no-repeat;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
a.modallyMov:hover:after {
  opacity: 0.8;
}

.mod-image.img01 {
  margin: -60px auto;
  position: relative;
}
.mod-image.img01:before {
  content: "";
  display: block;
  width: 1322px;
  height: 785px;
  position: absolute;
  top: -30px;
  left: -150px;
  background: url(/ex/pokemonryuoh2/common/images/img01add.png) 0 0 no-repeat;
}

.mod-image.img05 {
  margin: 50px auto 35px;
}

.mod-image.movie {
  margin-top: 45px;
}

.miniSection {
  width: 810px;
  margin: auto;
}

.table.-addPadding {
  padding: 3px;
}
.table .mod-dl.-pcHorizontal .sub-dt {
  margin-right: 1px;
  width: 110px;
}
.table .mod-dl.-lightColor {
  margin-top: 0;
  border-top: 1px solid #aea1b9;
}
.table .mod-dl.-lightColor:first-child {
  border-top: none;
}
.table .mod-dl.-lightColor .sub-dt {
  background: url(/ex/pokemonryuoh2/common/images/bg_table.png);
}
.table .mod-dl.-lightColor .sub-dd {
  background: #fff;
  color: #1d1d1d;
}
.table .mod-dl.-lightColor a {
  color: #1d1d1d;
  text-decoration: underline;
}
.table .mod-dl.-lightColor a:hover {
  text-decoration: none;
}
.table .mod-dl.-lightColor hr {
  border-color: #aea1b9;
}
.table .mod-dl.-lightColor .mod-list.-dot > li.sub {
  position: relative;
}
.table .mod-dl.-lightColor .mod-list.-dot > li.sub:after {
  content: '';
  display: block;
  overflow: hidden;
  margin: 15px -27px 15px -50px;
  height: 1px;
  border-bottom: 1px dashed #aea1b9;
}
.table .mod-dl.-lightColor .mod-list.-dot > li.sub:last-child:after {
  margin: 0;
  border: none;
  height: 0;
}

.ex-w940Pc {
  width: 940px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
}

.o-footer-inner {
  text-align: center;
}
.o-footer-inner .links {
  margin: 20px auto;
}
.o-footer-inner .links li {
  font-size: 0.72222em;
  display: inline-block;
  margin: 0 5px;
  vertical-align: middle;
}
.o-footer-inner .links li a[target="_blank"]:after {
  content: "";
  background: url(/ex/pokemonryuoh2/common/images/icon_blankWindow.png) 50% 50% no-repeat;
  -moz-background-size: 10px auto;
  -o-background-size: 10px auto;
  -webkit-background-size: 10px auto;
  background-size: 10px auto;
}
.o-footer-inner .links li a span {
  text-decoration: none;
  display: inline-block;
}
.o-footer-inner .logo_pokemon img {
  width: 155px;
}
.o-footer-inner .copyright {
  font-size: 0.55556em;
  padding-bottom: 100px;
}

.bottomText {
  background: url(/ex/pokemonryuoh2/common/images/bgBottomText.png);
  text-align: center;
  height: 70px;
  line-height: 70px;
}
.bottomText span {
  display: inline-block;
  width: 584px;
  height: 0;
  padding-top: 33px;
  overflow: hidden;
  background: url(/ex/pokemonryuoh2/common/images/txtBottomText.png);
  vertical-align: middle;
}

.back-toppage {
  background: url(/ex/pokemonryuoh2/common/images/bgBottomText.png);
  text-align: center;
  height: 70px;
  line-height: 70px;
}
.back-toppage a {
  display: inline-block;
  width: 194px;
  height: 0;
  padding-top: 35px;
  overflow: hidden;
  margin-right: 19px;
  background: url(/ex/pokemonryuoh2/common/images/back-toppage.png);
  vertical-align: middle;
}
.back-toppage a:hover {
  opacity: 0.8;
}

.bar {
  background: url(/ex/pokemonryuoh2/common/images/bar_bg.png);
}

.ex-info {
  width: 940px;
  margin: 0 auto;
  padding: 55px 30px 20px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
.ex-info .mod-image.-title {
  position: absolute;
  top: -33px;
  left: 0;
}
.ex-info .mod-image.-title img {
  height: auto;
}
.ex-info .mod-dl.-link {
  color: #000;
  font-size: 18px;
  padding-bottom: 20px;
  padding-right: 20px;
  margin-bottom: 20px;
  background: url(/ex/pokemonryuoh2/common/images/line.png) left bottom repeat-x;
  -moz-background-size: auto 2px;
  -o-background-size: auto 2px;
  -webkit-background-size: auto 2px;
  background-size: auto 2px;
  position: relative;
}
.ex-info .mod-dl.-link .sub-dt {
  width: 160px;
}
.ex-info .mod-dl.-link .sub-dd {
  overflow: visible;
}
.ex-info .mod-dl.-link .sub-dd:after {
  content: "";
  background: url(/ex/pokemonryuoh2/common/images/icon-linkArrow.png) no-repeat;
  width: 11px;
  height: 16px;
  -moz-background-size: auto 16px;
  -o-background-size: auto 16px;
  -webkit-background-size: auto 16px;
  background-size: auto 16px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -20px;
  margin: auto;
}
.ex-info .mod-dl.-link .sub-dd a {
  color: #000;
}
.ex-info .ex-goIndex a {
  font-size: 18px;
}
.ex-info .ex-goIndex a:after {
  content: "";
  width: 11px;
  height: 16px;
  -moz-background-size: auto 16px;
  -o-background-size: auto 16px;
  -webkit-background-size: auto 16px;
  background-size: auto 16px;
}

#subpage .ex-info {
  margin-top: 35px;
  padding: 55px 30px 37px;
  background: rgba(255, 255, 255, 0.7);
  -moz-box-shadow: 1px 1px 2px -1px rgba(109, 110, 104, 0.3);
  -webkit-box-shadow: 1px 1px 2px -1px rgba(109, 110, 104, 0.3);
  box-shadow: 1px 1px 2px -1px rgba(109, 110, 104, 0.3);
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}

.ex-iconNew:after {
  content: "NEW";
  font-size: 10px;
  color: #fff;
  padding: 5px 7px;
}

.ex-headline {
  font-size: 24px;
  line-height: 1.58em;
}

.ex-prof {
  padding: 30px 40px;
  border: 2px solid #c88e05;
  width: 640px;
  margin: auto;
}
.ex-prof > .sub-name {
  font-size: 22px;
}

.youtubeLive {
  padding: 50px;
  background: url(/ex/pokemonryuoh2/common/images/bg_youtubeLive.png) 50% 50% no-repeat, url(/ex/pokemonryuoh2/common/images/bg1.png) top center;
  text-align: center;
}
.youtubeLive h2 {
  margin: 0;
}
.youtubeLive .mod-list {
  color: #1d1d1d;
}

#news .o-body-inner {
  width: 940px;
  padding-top: 60px;
}
#news .o-body-inner .o-content {
  color: #000;
  background: #fff;
  -moz-box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.2);
  padding: 50px 30px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#news .o-body-inner .o-content .newsHeadline {
  padding-bottom: 10px;
  margin-bottom: 50px;
  background: url(/ex/pokemonryuoh2/common/images/line.png) left bottom repeat-x;
}
#news .o-body-inner .o-content .newsHeadline .date {
  font-size: 18px;
}
#news .o-body-inner .o-content .newsHeadline h1 {
  font-size: 28px;
  font-weight: bold;
}
#news .mod-narrowContent.-grid {
  width: 760px;
}
