/*--- 共通css上書き ---*/
.desc {
  letter-spacing: .075em;
  margin-top: 3.5%;
}
.sub_lead {
  max-width: 670px;
  margin: 0 auto 1.25em;
}
.box_period {
  margin: 50px 0 0 0;
}
.box_period:first-child {
  margin: 0;
}
.box_period .desc_s {
  font-size: 1.8rem;
  letter-spacing: .075em;
  text-align: center;
  margin: 1em auto 0;
  max-width: 76%;
}
.outer_wrap {
  padding-bottom: 4%;
}

/*--- title_h2 , title_h3 ---*/
.cmn_h2_01 {
  background: url(/image_cmn/titleh2/bkg_ttyl.png);
  padding: 0 3em;
  font-feature-settings : "palt"1;
}
.cmn_h2_01 > span,
.title_h3cmn > span {
  background: none;
  display: inline-block;
  padding-left: 1.5em;
  padding-right: 1.5em;
  position: relative;
}
.cmn_h2_01 > span::before,
.cmn_h2_01 > span::after,
.title_h3cmn > span::before,
.title_h3cmn > span::after {
  background: url(../../../image/ico1.png) no-repeat 0 0 / contain;
  bottom: 0;
  content: "";
  height: .654em;
  margin: auto;
  position: absolute;
  top: 0;
  width: 1em;
}
.title_h3cmn > span::before,
.title_h3cmn > span::after {
  background: url(../image/ico2.png) no-repeat 0 0;
  background-size: 100%;
}
.cmn_h2_01 > span::before,
.title_h3cmn > span::before {
  left: 0;
}
.cmn_h2_01 > span::after,
.title_h3cmn > span::after {
  right: 0;
}
.title_h3cmn {
  display: block;
  font-size: 20px;
  font-weight: 600;
  margin: 0 auto .75em;
  text-align: center;
  vertical-align: middle;
}
.title_h3cmn > span {
  border-bottom: 1px #7F0B0E solid;
  padding: 0 30px 3px;
  min-width: 135px;
}

/*--- 改行変更 ---*/
span.br_show::before {
  content: "\A";
  white-space: pre;
}

/*--- display_game ---*/
.sec_box .display_game {
  max-width: 710px;
  margin: 2.5% auto 3em;
}
.sec_box .display_list {
  background: url(../image/img-gamedisplay-pc.png) no-repeat bottom 0 left 0;
  background-size: 500px auto;
  display: block;
  overflow: hidden;
}
.sec_box .display_content {
  background: url(../image/bg-content.png) repeat top 0 left 0;
  max-width: 350px;
  margin: 0 0 1em auto;
  padding: .9em;
}
.sec_box .display_content:first-child {
  float: left;
  max-width: 330px;
}
.sec_box .display_content:nth-child(2) {
  float: right;
}
.sec_box .display_content:nth-child(3) {
  clear: both;
}
.sec_box .display_content:nth-child(4) {
  margin: 0 0 0 auto;
}
.display_content.content_float_l {
  margin: 0 auto 1em 0;
  max-width: 340px;
  float: left;
}

.sec_box .content_box {
  max-width: 670px;
  margin: 0 auto;
}
/*--- step01_sentence5 ---*/
.sec_box .step01_sentence5 {
  max-width: 710px;
  margin: 1em auto 0;
}
.sec_box .step01_list {
  margin: 1.75em 0 0 0;
}
.sec_box .step01_list:first-child {
  margin: 0;
}
.sec_box .step01_list.stamina {
  margin: 1.75em 0 3em 0;
}
.sec_box .step01_content,
.sec_box .step01_content_wide {
  margin: 1.5em 0 0 0;
  overflow: hidden;
}
.sec_box .step01_content:first-child {
  margin: 0;
}
.sec_box .step01_content:after {
  border-bottom: 1px #B28E5F solid;
  content: "";
  display: block;
  margin: 0 20px;
  width: 310px;
}
.sec_box .step01_content.img_sample {
  max-width: 660px;
}
.sec_box .step01_content .img_sample {
  margin: 0 1px -.5em auto;
  max-width: 325px;
}
.sec_box .step01_content .step01_dtl {
  max-width: 310px;
  float: left;
}
.sec_box .step01_content .title_h3cmn img {
  font-size: 0;
  max-width: 710px;
  margin: 0 auto;
}
.sec_box .step01_content .title_h4cmn {
  display: block;
  font-size: 20px;
  font-weight: 600;
  margin: 0 auto .7em;
  text-align: center;
  vertical-align: middle;
}
.sec_box .step01_content .title_h4cmn img {
  display: block;
  margin: 0 auto;
  max-width: 195px;
}
.sec_box .step01_content .title_h4_w300 img {
  max-width: 300px;
}
.sec_box .img_minigame .step01_content .step01_dtl {
  max-width: 380px;
}
.sec_box .img_minigame .step01_content .img_sample {
  max-width: 250px;
}
.sec_box .img_minigame .step01_content:after {
  width: 380px;
}
.sec_box .stamina .step01_content .img_sample {
  max-width: 670px;
  margin: 0 auto;
}
.sec_box .stamina .step01_content:after {
  border-bottom: 0px;
}

/*--- box__links ---*/
.box__links {
  clear: both;
  margin-top: 4.5%;
  max-width: 84%;
}
.box__links ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.box__links li {
  font-size: 1em;
  padding: 2em .5em 0;
  width: 50%;
}
.box__links li:nth-child(-n + 2) {
  padding-top: 0;
}
.box__links li a {
  display: block;
  line-height: 0;
}
.box__links li a:hover {
  opacity: .8;
}
.box__links figcaption {
  margin-bottom: 0;
}