body {
  background: url(../img/bg_sp.jpg) center -310px no-repeat;
  background-attachment: fixed;
  background-size: 1200px auto;
}

.endcomment {
  margin: 30px 10px 30px;
  padding: 40px 20px 30px;
  border: solid 1px rgb(143, 143, 143);
  background: rgba(255, 255, 255, 0.7);
  text-align: center;
}
.endcomment > p {
  margin-bottom: 10px !important;
  font-size: 16px !important;
}

.accordion1 {
  margin: 30px 0;
  padding-left: 0;
}

.accordion1 .inner {
  display: none;
  padding: 0px 10px;
}
.accordion1 h4 {
  position: relative;
  display: block;
  margin: 0;
  cursor: pointer;
}
.accordion1 h4:after {
  content: "▼";
  position: absolute;
  top: 15px;
  right: 8px;
  display: block;
  color: #fff;
  font-size: 130%;
}

.accordion1 h4:hover {
  opacity: 0.7;
}

.Quest {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 20px;
  margin-left: 0;
  padding: 14px 5px 10px 5px;
  border: solid 5px #000;
  background: linear-gradient(
    -45deg,
    #fff 25%,
    #f4f7f8 25%,
    #f4f7f8 50%,
    #fff 50%,
    #fff 75%,
    #f4f7f8 75%,
    #f4f7f8
  );

  background-size: 80px 80px;
  font-size: 150%;
  text-align: center;
}

table.hosyutable {
  width: 100%;
  margin: 0 auto 0px auto;
  border: 2px solid #3c3606;
  background-color: #f9e2c4;
  font-size: 120%;
}
table.hosyutable th,
table.hosyutable td {
  padding: 6px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
}
table.hosyutable th {
  color: #fff;
  text-align: center;
}
table.hosyutable td {
  color: #000;
  text-align: center;
}
table.hosyutable .goldborder {
  border: solid 5px rgb(233, 114, 4);
  box-shadow: 0px 0px 15px rgba(239, 148, 17, 1),
    -1px -1px 15px rgba(239, 148, 17, 1);
}

table.yosoutable {
  width: 100%;
  margin: 0 auto 40px auto;
  border: 2px solid #3c3606;
  font-size: 110%;
}
table.yosoutable th,
table.yosoutable td {
  padding: 6px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
}
table.yosoutable th {
  background: #ffff99;
  color: #000;
  text-align: center;
}
table.yosoutable th.one {
  background: #0070c0;
  color: #ffffff;
}
table.yosoutable th.two {
  background: #ff0000;
  color: #ffffff;
}
table.yosoutable th.three {
  background: #00b050;
  color: #ffffff;
}
table.yosoutable th.other {
  background: #a6a6a6;
  color: #ffffff;
}
table.yosoutable td {
  color: #000;
  text-align: center;
}

h4.season5 {
  clear: left;
  margin-top: 10px;
  margin-right: 10px;
  margin-bottom: 10px;
  margin-left: 10px;
  padding: 2rem;
  border-radius: 4px;
  background-color: #000;
  color: #ffc800;
  font-size: 110%;
  font-weight: bold;
  text-align: center;
}

h4.season5.rewards {
  color: #000;
  margin-top: -14px;
  background-color: #ffc800;
}

h4.season5.ac1 {
  padding: 2rem 0 1.6rem;
  color: #fff;
  background-color: #1e94d9;
}

h5 {
  width: 100%;
  margin: 0 auto 10px auto;
  padding: 10px 8px 8px 8px;
  border: none;
  border-radius: 4px;
  background-color: #896d51;
  color: #fff;
  font-size: 130%;
  font-weight: bold;
  text-align: center;
  letter-spacing: 1px;
}

.content-main {
  margin-bottom: 0px !important;
}

.content-main p,
.content-main dl {
  font-size: 110%;
}
.content-main dl dt {
  margin-left: 1em;
  text-indent: -1em;
  line-height: 170%;
}
.content-main dl dd {
  padding-left: 1em;
  line-height: 170%;
}
.content-main dl dd.caution {
  margin-left: 1em;
  font-size: 90%;
  text-indent: -1em;
}

#hihin {
  display: none;
}

#lp #content {
  margin-bottom: 0px;
  /* background: none; */
}

.mainvisual_sp {
  width: 100%;
  margin: 0 auto auto;
  padding: 30px 0;
}

#content {
  width: 100%;
}
#sns_s_lp {
  display: block;
  width: 184px;
  margin: 0 auto;
  padding-bottom: 24px;
  overflow: hidden;
}

#sns_twitter_s {
  float: right;
  margin-right: 16px;
}

#sns_twitter_s a {
  display: block;
  width: 50px;
  height: 50px;
  background: url("../../../assets/img/btn_twitter_s.png") no-repeat;
  text-indent: -9999px;
}

#sns_fb_s {
  float: right;
  margin-right: 16px;
}

#sns_fb_s a {
  display: block;
  width: 50px;
  height: 50px;
  background: url("../../../assets/img/btn_fb_s.png") no-repeat;
  text-indent: -9999px;
}

#sns_line_s {
  float: right;
}

#sns_line_s a {
  display: block;
  width: 50px;
  height: 50px;
  background: url("../../../assets/img/btn_line_s.png") no-repeat;
  text-indent: -9999px;
}

#sns_twitter_s a:hover,
#sns_fb_s a:hover,
#sns_line_s a:hover {
  background-position: 0 -50px;
}

.kabukenSerif {
  margin: 10px 0px 30px;
}

.breed .male {
  background-color: #1369b9;
  color: #fff;
}
.breed .female {
  background-color: #932536;
  color: #fff;
}

.choukyou {
  margin: 30px 0px 10px;
  padding: 10px 20px;
  background: rgba(247, 221, 206, 1);
}

.eventschdule img {
  margin: -20px auto 0px;
}

.flex .right {
  margin: -30px 0px 30px;
}

.defeat {
  border: 1px solid #000;
  font-weight: bold;
  line-height: 1.4;
}

.defeat p {
  margin: 1rem 0 0 1rem !important;
}

.defeat-title {
  display: block;
  padding: 0.5rem 0.5rem 0.5rem 1rem;
  background-color: #fbb100;
}

.defeat table {
  width: 96%;
  margin: 0 2% 2%;
  table-layout: fixed;
  text-align: center;
}

.defeat table th {
  padding: 1rem;
  text-align: center;
  background-color: #ffff00;
  font-size: 1.2rem;
}

.defeat table td {
  padding: 2rem 0;
  font-size: 12px;
}

.example {
  margin-bottom: 2rem;
  padding: 2rem 2rem 2.5rem;
  background-color: #e2f0d9;
  font-size: 110% !important;
}

.example span {
  display: inline-block;
  margin-top: 1rem;
}

.big {
  font-size: 130%;
}

.attention {
  margin-top: -2rem;
}
.attention li {
  list-style-type: disc;
}

@media screen and (min-width: 641px) {
  body {
    background: url(../img/bg_pc.jpg) center -420px no-repeat;
    background-attachment: fixed;
  }

  .endcomment {
    margin: 30px 0px 30px;
  }
  .endcomment > p {
    margin-bottom: 10px !important;
    font-size: 20px !important;
  }

  .accordion1 h4:after {
    top: 16px;
    right: 12px;
  }

  .RaceReport {
    margin: 0;
    padding: 0;
  }

  .RaceReport li {
    display: inline-block;
    width: 100%;
    margin-bottom: 1%;
    padding: 2% 2% 2% 2%;
    font-size: 110%;
    text-align: center;
    vertical-align: top;
  }

  .flex {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .flex .left {
    width: 140%;
    margin-right: 20px;
  }
  .flex .right {
    margin: -10px 0px 0px;
  }

  .eventschdule {
    width: 100%;

    margin: 0px auto 0px;
  }
  .eventschdule img {
    margin: -20px auto 0px;
  }

  .eventschdule02 {
    margin-bottom: 30px;
  }

  .kabukenSerif {
    display: flex;

    width: 100%;
  }
  .kabukenSerif img {
    width: 50%;
  }

  .photo {
    width: 600px;

    margin: 0 auto 30px;
  }

  h1 {
    width: 1020px;
    height: 570px;
  }

  h4.season5 {
    clear: left;
    margin: 2rem;
    padding: 2rem 0 2.5rem;
    border-radius: 4px;
    background-color: #000;
    font-size: 140%;
    font-weight: bold;
  }
  h4.season5.rewards {
    color: #000;
    margin-top: -0;
    background-color: #ffc800;
  }
  h4.season5.ac1 {
    padding: 2rem 0 1.8rem;
    color: #fff;
    background-color: #1e94d9;
  }
  #lp #content {
    width: 100%;
    margin: 0 auto;
  }

  #content {
    padding-top: 30px;
    padding-bottom: 0px !important;
  }

  .bg_l {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    transform: translate(-50%, -50%);
    width: 618px;
    height: 277px;
    margin: 150px 0 0 -640px;
    background: url(../img/bg_l.png) center no-repeat;
  }

  .bg_r {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    transform: translate(-50%, -50%);
    width: 559px;
    height: 306px;
    margin: -100px 0 0 540px;
    background: url(../img/bg_r.png) center no-repeat;
  }

  #sns_s_lp {
    display: none;
  }

  #sns {
    position: relative;
    display: block;
    width: 140px;
    margin: 0 auto;
    padding: 0 0 30px 0;
  }

  #sns_twitter {
    float: right;
    margin-right: 12px;
  }

  #sns_twitter a {
    display: block;
    width: 38px;
    height: 38px;
    background: url("../../../assets/img/btn_twitter.png") no-repeat;
    text-indent: -9999px;
  }

  #sns_fb {
    float: right;

    margin-right: 12px;
  }

  #sns_fb a {
    display: block;

    width: 38px;

    height: 38px;

    background: url("../../../assets/img/btn_fb.png") no-repeat;

    text-indent: -9999px;
  }

  #sns_line {
    float: right;
  }

  #sns_line a {
    display: block;

    width: 38px;

    height: 38px;

    background: url("../../../assets/img/btn_line.png") no-repeat;

    text-indent: -9999px;
  }

  #sns_twitter a:hover,
  #sns_fb a:hover,
  #sns_line a:hover {
    background-position: 0 -38px;
  }

  /*回り込みクリア*/
  .clear {
    clear: both;
  }
  /*div調整*/
  div {
    height: auto;

    overflow: hidden;
  }
  /*文字*/
  .red {
    color: #e10019;
  }
  .blue {
    color: #4056ff;
  }
  .yellow {
    color: #fbb100;
  }
  .big {
    font-size: 150%;
  }
  .bold {
    font-weight: bold;
  }
  /*区切り線*/
  hr.dotted {
    border: none;

    border-bottom: dotted 1px #333333;
  }
  /*リンクボタン*/
  a.result_1term {
    float: right;

    position: inherit;

    display: block;

    width: 320px;

    height: 54px;

    margin: -70px 20px 0px 0px;

    background: url(../img/about/dreamcs/btn_dcs_page.png) left top no-repeat;

    background-size: cover;

    text-indent: -99999px;

    overflow: hidden;
  }
  a.result_1term:hover {
    background: url(../img/about/dreamcs/btn_dcs_page-on.png) left top no-repeat;
  }
  /*マージン*/
  .bottom25 {
    position: relative;

    margin-bottom: 25px;
  }
  .left300 {
    margin-left: 300px;
  }
  /*第11回*/
  .defeat {
    border: 1px solid #000;
    font-weight: bold;
    line-height: 1.4;
  }

  .defeat p {
    margin: 1rem 0 0 1rem !important;
  }

  .defeat-title {
    display: block;
    padding: 0.5rem 0.5rem 0.5rem 1rem;
    background-color: #fbb100;
  }

  .defeat table {
    width: 96%;
    margin: 0 2% 2%;
    table-layout: fixed;
    text-align: center;
  }

  .defeat table th {
    padding: 1rem;
    text-align: center;
    background-color: #ffff00;
    font-size: 120%;
  }

  .defeat table td {
    padding: 2rem 0;
    font-size: 110%;
  }

  .example {
    margin-bottom: 2rem;
    padding: 2rem 2rem 2.5rem;
    background-color: #e2f0d9;
  }

  .example span {
    display: inline-block;
    margin-top: 1rem;
  }
  .attention {
    margin-top: -2rem;
  }
  .attention li {
    list-style-type: disc;
  }
}

@media only screen and (min-width: 641px) {
  .img-list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .img-list > div {
    width: 45%;
    margin: 0 10px;
  }
  .img-list-center {
    margin-top: 3rem !important;
  }
}
@media only screen and (max-width: 640px) {
  .img-list {
    text-align: center;
  }
  .img-list div + div {
    margin-top: 2rem;
  }
}

.commentback {
  padding: 1rem;
  background-color: rgba(255, 214, 149, 0.6);
}
.greenback {
  padding: 1rem;
  background-color: rgba(88, 255, 133, 0.6);
}

.new-article {
  position: relative;
}
.new-article::before {
  content: "NEW!";
  position: absolute;
  left: 0;
  height: 100%;
  top: 0%;
  background-color: red;
  padding: 1.5%;
}
@media only screen and (max-width: 640px) {
  .new-article::before {
    height: 60%;
  }
}
