/* OLD STYLE CSS */

main {
  padding: 66px 0 0;
}
.mb {
  margin-bottom: 2em;
}

.clear {
  clear: both;
}
/* slider
   ========================================================================== */
.slider {
  margin: auto;
  width: 100%;
}
.slider img {
  height: auto;
  width: 100%;
}
/*slick setting*/
.slick-prev:before,
.slick-next:before {
  color: var(--black);
}
.slider li {
  margin: 1em 0em;
}

#slider,
#thumbnail_slider {
  width: 100%;
  margin: 0 auto 10px;
}
#thumbnail_slider img {
  width: 100%;
  margin: 0 auto 10px;
}
.slide-item img {
  width: 100%;
}
#slide-item img {
  width: 100%;
}
.thumbnail-item img {
  width: 100%;
  margin: 0 auto;
}
.slick-slide img {
  width: 100%;
  margin: 0 auto;
}

/* background
   ========================================================================== */

.bg_darkblue {
  background-image: url(../migrated-from-assets-images/bg_blue.gif);
}
.bg_white {
  background-color: var(--white);
}
.bg_player {
  background-image: url(../migrated-from-assets-images/player_bg2.jpg);
  width: 100%;
  height: auto;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.col_padding {
  padding: 1em 1em;
}
.col_margin {
  margin-bottom: 2em;
}
/* header
   ========================================================================== */

.header_sub_menu .logo {
  float: left;
  position: absolute;
  width: 60px;
  height: 60px;
}
.header_sub_menu h1 {
  float: left;
  color: inherit;
  font-size: var(--font-heading-jp-size);
  margin: 0.4em 0 0.4em 62px;
  padding: 0;
  line-height: 1;
  font-family: var(--font-body-en-family);
}
.header_sub_menu h1 span {
  font-size: var(--font-heading-jp-size);
  float: left;
}
.header_sub_menu ul {
  float: right;
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left;
}
.header_sub_menu ul li {
  display: inline-block;
  margin: 8px 0 0;
}

.sns_btn {
  display: none;
}

/* main
   ========================================================================== */

main h2 {
  font-family: var(--font-body-en-family);
  text-decoration: none;
  display: block;
  font-size: var(--font-heading-jp-size);
  font-weight: var(--font-heading-jp-weight);
  line-height: inherit;
  margin: 0 0 var(--gap-section-sm);
}
main h2 span {
  font-family: var(--font-body-jp-family);
  font-size: var(--font-heading-jp-size);
}
article.bg_player h2 {
  padding: 0.4em 1em;
}
.button {
  color: var(--white);
  display: block;
  font-size: var(--font-heading-jp-size);
  width: 100%;
  background-color: var(--blue-main);
  transition: all 0.5s;
  border: none;
  line-height: 2;
  height: auto;
}
.button:hover {
  color: var(--blue-mid);
  background-color: var(--blue-mid);
}

main.page {
  color: #555;
}
main.page h2 {
  color: inherit;
  text-align: center;
  font-size: var(--font-heading-en-size);
  padding: 0.6em 1em;
}
main.page h3 {
  text-align: center;
  font-size: var(--font-heading-en-size);
  padding: 0.6em 1em;
  /*border-top: 4px solid #b40126;*/
}
main.page h4 {
  font-size: var(--font-heading-jp-size);
  padding: 0.6em 1em;
}
main.page p {
  font-size: var(--font-heading-jp-size);
  padding: 0.6em 1em;
}

/* keyvisual
   ========================================================================== */
.top_info {
  margin-bottom: 2em;
}
.top_info p {
  font-size: var(--font-heading-jp-size);
  text-align: center;
}
.btn {
  width: 80%;
  margin: 0 auto;
  display: block;
  text-align: center;
}
.btn .button {
  font-size: var(--font-heading-jp-size);
  line-height: 2.8;
}

/* table
   ========================================================================== */
main table {
  width: 100%;
  background-color: #fff;
  border-top: 1px solid #bbb;
  border-left: 1px solid #bbb;
}
main table th,
main table td {
  font-size: var(--font-body-jp-size);
  color: var(--black);
  padding: var(--gap-section-sm);
  border-bottom: 1px solid #bbb;
  border-right: 1px solid #bbb;
}
main th:first-child,
main td:first-child {
  padding: var(--gap-section-sm);
}
main th:last-child,
main td:last-child {
  padding: var(--gap-section-sm);
}
main table th {
  background-color: #eee;
}
main table tr.bg_select td {
  background-color: #c2daff;
}

.home main table th,
.home main table td {
  font-size: var(--font-sub-jp-size);
  color: #777;
  padding: 0.6em 0.4em;
}

.bg_white table {
  margin: auto;
}
.bg_white th,
.bg_white td {
}
.bg_white th {
}
.bg_white img {
  margin: auto;
}
.alignnone {
  margin: 0 !important;
}
.bg_white a img {
  display: inline;
}
/* ul4-3 ul3-2 ul5-3
   ========================================================================== */
ul.ul4-3 {
  text-align: center;
}
.bg_white ul.ul4-3 {
  padding: 2em;
  overflow: hidden;
}
ul.ul4-3 li {
  list-style: none;
  float: left;
  width: 31%;
  margin: 0 2% 0.6em 0;
}
ul.ul4-3 li a img {
  width: 100%;
}

ul.ul3-2 {
  text-align: center;
}
.bg_white ul.ul3-2 {
  padding: 2em;
  overflow: hidden;
}
ul.ul3-2 li {
  list-style: none;
  float: left;
  width: 48%;
  margin: 0 2% 0.6em 0;
}
ul.ul3-2 li a img {
  width: 100%;
}

ul.ul5-3 {
  text-align: center;
}
.bg_white ul.ul5-3 {
  padding: 2em;
  overflow: hidden;
}
ul.ul5-3 li {
  list-style: none;
  float: left;
  width: 31%;
  margin: 0 2% 0.6em 0;
}
ul.ul5-3 li a img {
  width: 100%;
}

.tile_menu {
}
ul.tile_menu li {
  position: relative;
}
ul.tile_menu li a h3 {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  margin: 0;
  background-color: #161a4ca6;
  color: #fff;
  font-family: var(--font-body-en-family);
  text-decoration: none;
  font-size: var(--font-heading-jp-size);
  line-height: 1;
  padding: 1em 0;
}

ul.tile_menu li a h3 span {
  font-family: var(--font-body-en-family);
  font-size: var(--font-sub-jp-size);
}
ul.tile_menu li a:hover h3 {
  color: #111987;
  background: rgba(255, 255, 255, 0.5);
  transition: all 0.5s;
}

/* news　tab
   ========================================================================== */

ul.tab li {
  /*タブ部分*/
  color: #fff;
  list-style: none;
  float: left;
  margin-right: 10px;
  padding: 0.6em 1em;
  background-color: #161a4c;
}
ul.tab li a {
  /*タブ部分*/
  color: #fff;
  text-decoration: none;
}

ul.tab li.active {
  /*選択中のタブ*/
  background-color: #1237b3;
}
ul.tab li.active a {
  /*選択中のタブ*/
  color: #fff;
  font-weight: bold;
}
.tab_area {
  /*切り替え部分非表示*/
  display: none;
}
.tab_area ul {
  /*切り替え部分非表示*/
  padding: 0 1em;
}
.pu_area ul,
.tab_area ul {
  padding: 0 1em;
}
.pu_area dl,
.tab_area dl {
  padding: 0 1em 0.4em;
  margin: 0 0 0.4em;
  border-bottom: 2px #efefef dashed;
}
.pu_area dl span.cat-icon,
.tab_area dl span.cat-icon {
  color: #fff;
  font-size: var(--font-body-jp-size);
  padding: 0.2em 1em 0.3em;
  margin: 0 1em 0;
  background-color: #1e7adb;
}
.tab_content {
  /*内容*/
  color: #333;
  width: 100%; /*幅*/
  padding: 1em 0;
  background-color: #fff;
  clear: both;
  overflow: hidden;
}
.tab_content ul li {
  /*内容のリスト表示*/
  clear: both; /*画像有りの場合*/
  list-style: none;
}
.tab_content ul li img {
  /*リスト内画像*/
  float: left;
  margin: 0 10px 10px 0;
}
.tab_content dl dt {
  float: none;
}
.tab_content dl dd {
  margin-left: 0;
}

/* player-page
   ========================================================================== */

.player_imgbox {
  position: relative;
  display: block;
  overflow: hidden;
  background-image: url(../migrated-from-assets-images/player_bg.jpg);
  width: 100%;
  height: auto;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  padding: 20px 0 0;
}
.player_pict {
  width: 55%;
  float: right;
  display: block;
}
.player_pict img {
  width: 100%;
}

.player_name {
  width: 100%;
  position: absolute;
  float: left;
  bottom: 40px;
  left: 0;
  display: block;
}

.number {
}
.name {
}
main.page .number p {
  color: #fff;
  font-family: var(--font-body-en-family);
  font-size: var(--font-heading-en-size);
  padding: 40px 0 0 40px;
  line-height: 1;
}
main.page .number p span {
  font-size: var(--font-heading-en-size);
}
main.page .name p {
  color: #fff;
  font-size: var(--font-heading-jp-size);
  padding: 0 0 0 40px;
  line-height: 1;
}
main.page .name p span {
  font-size: var(--font-heading-en-size);
}

.player_imglist 


/* legacy migrated additions from style_old.css
   ========================================================================== */
.text-center {
  text-align: center !important;
}
ul.ul4-2 {
  text-align: center;
}
.bg_white ul.ul4-2 {
  overflow: hidden;
}
ul.ul4-2 li {
  list-style: none;
  float: left;
  width: 48%;
  margin: 0 2% 0.6em 0;
}
ul.ul4-2 li:nth-child(2n + 1) {
  clear: both;
}
ul.ul4-2 li a img {
  width: 100%;
}
ul.ul8-4 {
  text-align: center;
}
.bg_white ul.ul8-4 {
  padding: 2em 0;
  overflow: hidden;
}
ul.ul8-4 li {
  list-style: none;
  float: left;
  width: 14.6%;
  margin: 0 2% 0.6em 0;
}
ul.ul8-4 li a img {
  width: 100%;
}
ul.text-banner {
  margin: 0 auto 1em;
}
ul.text-banner li {
  display: inline-block;
  border-left: 1px solid #fff;
  list-style: none;
}
ul.text-banner li a {
  padding: 0.4em 1em;
  color: #555;
  text-decoration: none;
}
ul.text-banner li a:hover {
  color: #f39800;
}
.btn-orange {
  color: #fff;
  background-color: #f39800;
}
.btn-orange:hover {
  background-color: #f9c500;
}
nav.pagination {
  margin: 2em 0 0;
}
nav.pagination ul.page-numbers {
  text-align: center;
}
nav.pagination ul.page-numbers li {
  display: inline-block;
}
ul.page-numbers li span.current,
ul.page-numbers li a {
  display: block;
  color: #333;
  font-size: 28px;
  background-color: #efefef;
  border: 1px solid #ccc;
  padding: 0.4em;
}
ul.page-numbers li a:hover {
  background-color: #f39800;
}
ul.player-list li {
  overflow: hidden;
}
ul.player-list li a {
  display: block;
  color: #555;
  text-align: left;
}
ul.player-list li a:hover {
  background-color: #f9f9f9;
}
ul.player-list li a img {
  width: 100%;
}
.pl_banner a {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  height: auto;
}
.pl_img {
  width: 100%;
  display: block;
  float: right;
}
.pl_img img,
.pl_banner a .pl_img img,
.pl_banner .pl_img img {
  width: 100%;
  display: block;
  float: right;
  border: none;
  vertical-align: bottom;
}
dl.person_list {
  line-height: 1.4;
  text-align: left;
  margin: 0;
  padding: 0.6em 0;
  border-top: 4px solid var(--navy);
  min-height: 9em;
}
dl.person_list dt {
  font-weight: bold;
  font-size: 28px;
  margin: 0;
}
dl.person_list dd {
  font-size: var(--font-body-jp-size);
  margin: 0;
}
dl.person_list dd.small,
.small {
  font-size: var(--font-sub-jp-size);
  margin: 0;
}
.p-single-game-info .p-section-title {
  justify-content: center;
}
.member-box {
  float: left;
  width: 48%;
  margin: 0 2% 0 0;
}
.member-box table td {
  font-size: var(--font-sub-jp-size);
  padding: 0.8em 0.4em;
}
.member-box table td:first-child,
.member-box table td:nth-child(2) {
  width: 2em;
  text-align: center;
}
.VideoWrapper {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 25px;
  height: 0;
}
.VideoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
dl.comment-box {
  display: block;
  border: 4px solid var(--gray-bg);
  padding: 1em;
}
dl.comment-box dt {
  font-size: var(--font-heading-jp-size);
  font-weight: var(--font-heading-jp-weight);
  border-bottom: 4px solid var(--gray-bg);
  margin-bottom: 1em;
  overflow: hidden;
}
dl.comment-box dt img {
  float: left;
  width: 80px;
  margin: 0 14px 10px 0;
}
dl.comment-box dt span {
  display: block;
  padding-left: 94px;
}
dl.comment-box dd {
  margin: 0;
}
.sp-shop th:nth-child(1) {
  width: 20%;
}
.sp-shop th:nth-child(2) {
  width: 25%;
}
.sp-shop th:nth-child(3) {
  width: 20%;
}
.sp-shop th:nth-child(4) {
  width: 15%;
}

/* page single
   ========================================================================== */
article.bg_blue .bg_white h1 {
  color: #555;
  font-size: 50px;
}
article.bg_blue .bg_white h2 {
  color: #555;
  font-size: 20px;
  padding: 0.8em 0 0.8em;
  border-bottom: 4px solid #dedfe8;
  text-align: center;
}
article.bg_blue .bg_white h3 {
  color: #555;
  font-size: 22px;
  text-align: left;
  padding: 0.6em 0 0;
}
article.bg_blue .bg_white h4 {
  color: #555;
  font-size: 19px;
  padding: 0.6em 0.4em 0.6em;
  margin: 0 0 1em;
  background-color: #efefef;
  text-align: center;
}
article.bg_blue .bg_white h5 {
  color: #555;
  font-size: 18px;
  text-align: left;
  padding: 0.6em 0;
  border-bottom: 2px dashed #dedfe8;
  margin: 0 0 0.6em;
}

article.bg_blue .bg_white p {
  font-size: 16px;
  padding: 0.4em 0 0.6em;
  margin-bottom: 0.4em;
}
article.bg_blue .bg_white strong {
  font-weight: bold;
}
article.bg_blue .bg_white p strong {
  color: #b40126;
}
article.bg_blue .bg_white img {
  max-width: 100%;
}
article.bg_blue .bg_white a {
  word-break: break-all;
}

i {
  font-style: normal;
  font-weight: bold;
  color: #7c6bff;
}
.attention {
  background-color: #f1f4fb;
  padding: 1em 1em 0.6em;
}
ul {
  list-style: none inside;
}

article.bg_blue .bg_white div.btn-orange a,
article.bg_blue .bg_white div.btn-blue a,
article.bg_blue .bg_white div.btn-pdf a,
article.bg_blue .bg_white div.btn a {
  font-size: 1.6rem;
  padding: 0.6em 0;
  text-align: center;
  background-color: #fff;
  display: block;
  margin: 0 0 1em;
}
article.bg_blue .bg_white div.btn-orange a {
  color: #fff;
  background-color: #f39800;
}
article.bg_blue .bg_white div.btn-blue a {
  color: #fff;
  background-color: #161a4c;
}
article.bg_blue .bg_white div.btn-pdf a {
  color: #555;
  background-color: #ffefef;
  border: 2px solid #b40126;
}

article.bg_blue .bg_white div.btn a:hover {
  background-color: #1237b3;
}
article.bg_blue .bg_white div.btn-orange:hover a {
  background-color: #f9c500;
}
article.bg_blue .bg_white div.btn-blue:hover a {
  background-color: #1e7adb;
}
article.bg_blue .bg_white div.btn-pdf:hover a {
  background-color: #ffe0e0;
}

/* Media Queries
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Larger than mobile */
@media (min-width: 400px) {
  .bg_white {
    padding: 2em;
  }
}

/* Larger than phablet (also point when grid becomes active) */
@media (min-width: 550px) {
  .container {
    width: 90%;
  }
  .header_sub_menu h1 {
    font-size: var(--font-heading-en-size);
    margin: 0.2em 0 0.2em 80px;
  }
  .header_sub_menu h1 span {
    font-size: var(--font-heading-jp-size);
  }
}

/* Larger than tablet */
@media (min-width: 1024px) {
  /* 750px */

  header {
    position: relative;
  }
  main {
    padding: 0;
  }
  .header_sub_menu .logo {
    width: 120px;
    height: 120px;
  }
  .header_sub_menu h1 {
    margin: 0.2em 0 0.2em 120px;
  }
  .sns_btn {
    display: block;
  }
  #menu {
    display: none;
  }

  .btn {
    width: 50%;
  }
  .result div.score dl dt {
    font-size: var(--font-heading-en-size);
  }

  ul.ul4-3 li {
    width: 23%;
    margin: 0 2% 0.6em 0;
  }
  ul.ul3-2 li {
    width: 31%;
    margin: 0 2% 0.6em 0;
  }
  ul.ul5-3 li {
    width: 18%;
    margin: 0 2% 0.6em 0;
  }
  ul.ul4-2 li {
    width: 23%;
    margin: 0 2% 0.6em 0;
  }
  ul.ul4-2 li:nth-child(2n + 1) {
    clear: none;
  }
  ul.ul4-2 li:nth-child(4n + 1) {
    clear: both;
  }
  ul.ul8-4 li {
    width: 15.6%;
    margin: 0 1% 0.6em 0;
  }
  ul.tab li {
    width: 24%;
  }
  .bg_white th,
  .bg_white td {
    /* font-size は新テーマ側の変数指定を優先する */
  }
  .sp-shop th:nth-child(1) {
    width: 20%;
  }
  .sp-shop th:nth-child(2) {
    width: 25%;
  }
  .sp-shop th:nth-child(3) {
    width: 20%;
  }
  .sp-shop th:nth-child(4) {
    width: 15%;
  }
  .member-box table td {
    padding: 1em 1em;
  }
  ul.tile_menu li a h3 {
    font-size: var(--font-heading-jp-size);
    line-height: 0.7;
    padding: 2em 0;
  }
  .tab_content dl dt {
    float: left;
  }
  .tab_content dl dd {
    margin-left: 8em;
  }
}

/* Larger than desktop */
@media (min-width: 1024px) {
}

@media (min-width: 1024px) {
  ul.tab li {
    width: auto;
  }
}

/* Larger than Desktop HD */
@media (min-width: 1024px) {
}

:root {
  --container: 1040px;
}

.l-container {
  width: min(100%, var(--container));
}

/* Larger than mobile */
@media (min-width: 400px) {
  .bg_white {
    padding: 2em;
  }
}

/* Larger than phablet (also point when grid becomes active) */
@media (min-width: 550px) {
  .container {
    width: 90%;
  }
  .header_sub_menu h1 {
    font-size: 2.8rem;
    margin: 0.2em 0 0.2em 80px;
  }
  .header_sub_menu h1 span {
    font-size: 2.2rem;
  }
  .number p {
    font-size: 4rem;
    padding: 40px 0 0 40px;
  }

  article.bg_blue .bg_white .player_imgbox .player_name .number p {
    font-size: 6rem;
    padding: 0;
    margin: 0;
  }
  .number p span {
    font-size: 12rem;
  }
  .name p {
    font-size: 1.6rem;
    padding: 0 0 0 40px;
  }
  .name p span {
    font-size: 4rem;
  }
}

/* Larger than tablet */
@media (min-width: 768px) {
  /* 750px */
  body {
    font-size: 1.6rem;
  }
  ul.tab li a {
    /*タブ部分*/
    font-size: 1.4rem;
  }
  .tab_content dl dt {
    float: left;
  }
  .tab_content dl dd {
    margin-left: 8em;
  }
  article.bg_blue .bg_white h2 {
    font-size: 24px;
  }
  article.bg_blue .bg_white p {
    font-size: 18px;
    line-height: 1.7;
  }
  .number p {
    font-size: 6rem;
    padding: 40px 0 0 40px;
  }
  .number p span {
    font-size: 18rem;
    line-height: 1;
  }
  .name p {
    font-size: 2rem;
    padding: 0 0 0 40px;
  }
  .name p span {
    font-size: 6rem;
    line-height: 1;
  }
  ul.ul4-2 li {
    width: 23%;
    margin: 0 2% 0.6em 0;
  }
  ul.ul4-2 li:nth-child(2n + 1) {
    clear: none;
  }
  ul.ul4-2 li:nth-child(4n + 1) {
    clear: both;
  }

  .sp-shop th:nth-child(1) {
    width: 20%;
  }
  .sp-shop th:nth-child(2) {
    width: 25%;
  }
  .sp-shop th:nth-child(3) {
    width: 20%;
  }
  .sp-shop th:nth-child(4) {
    width: 10%;
  }
  .sp-shop th:nth-child(4) {
    width: 15%;
  }
  .member-box table td {
    font-size: 1.4rem;
    padding: 1em 1em;
  }
  .bg_white th,
  .bg_white td,
  table.player th,
  table.player td {
    font-size: 1.4rem;
  }

  ul.tab li {
    width: 24%;
  }
}
/* Larger than tablet */
@media (min-width: 1100px) {
  /* 750px */

  header {
    position: relative;
  }
  main {
    padding: 0;
  }
  .header_sub_menu .logo {
    width: 120px;
    height: 120px;
  }
  .header_sub_menu h1 {
    margin: 0.2em 0 0.2em 120px;
  }
  .sns_btn {
    display: block;
  }
  #menu {
    display: none;
  }
}

@media only screen and (max-width: 1024px) {
  head + iframe {
    display: none;
  }
}

/* Elementorのフォントサイズ設定
 * -----------------------------------------------------*/
/* サイト全体の基準を 10px にする */
html {
  font-size: 10px !important;
}

/* Elementorの表示が崩れないよう、Elementor内だけ 16px 基準に強制的に戻す */
.elementor {
  /* 1.6rem = 16px (ルートが10pxなので 1.6倍) */
  font-size: 1.6rem !important;
}
