@charset "UTF-8";
/***************************************
 *
 *base CSS
 *
 *2019/XX
 *
 ****************************************** */
/*****************************
 *
 *settings
 *
 ***************************** */
/***********************
 *
 *common
 *
 ********************** */
* {
  box-sizing: border-box; }

a {
  text-decoration: none;
  color: inherit; }
  a.tdu {
    text-decoration: underline; }

li {
  list-style: none; }

i, em {
  font-style: normal; }

body, html {
  margin: 0px;
  padding: 0px;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "Shippori Mincho B1", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
  font-feature-settings: "palt";
  color: #fff;
  font-weight: 500; }

body {
  overflow-x: hidden;
  background: url(../img/bgp1.png); }
  body.about {
    background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)) 0 100% fixed no-repeat, url(../img/2025/bg.jpg) fixed;
    background-size: 100% 100%, 150px; }

ul {
  margin: 0;
  padding: 0; }

h1, h2, h3, h4, h5 {
  font-weight: bold;
  letter-spacing: 0.1em; }

p {
  letter-spacing: 0.1em;
  line-height: 1.8;
  font-size: 16px;
  font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック"; }

.ib {
  width: 1240px;
  margin: 0 auto;
  position: relative;
  max-width: 100%; }

table {
  border-collapse: collapse; }

#wpadminbar {
  display: none; }

.pc_content {
  display: block !important; }

.sp_content {
  display: none !important; }

::-webkit-scrollbar {
  width: 10px; }

::-webkit-scrollbar-track {
  background: #fff;
  border: none;
  border-radius: 10px;
  box-shadow: inset 0 0 2px #777; }

::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 10px;
  box-shadow: none; }

.btn_border {
  text-align: center;
  display: block;
  margin: 20px auto;
  position: relative;
  max-width: 300px;
  background: #f1f1f1; }
  .btn_border::before {
    right: 0;
    top: 0; }
  .btn_border::after {
    left: 0;
    bottom: 0; }
  .btn_border::before, .btn_border::after {
    content: "";
    width: 0;
    height: 1px;
    position: absolute;
    transition: all 0.2s linear;
    background: #000;
    transition-delay: 0s; }
  .btn_border:hover::before, .btn_border:hover::after {
    width: 100%;
    transition-delay: 0.2s; }
  .btn_border:hover span::before, .btn_border:hover span::after {
    height: 100%;
    transition-delay: 0s; }
  .btn_border span {
    display: block;
    padding: 15px;
    font-size: 16px;
    color: #000;
    position: relative; }
    .btn_border span::before {
      left: 0;
      top: 0; }
    .btn_border span::after {
      right: 0;
      bottom: 0; }
    .btn_border span::before, .btn_border span::after {
      content: "";
      width: 1px;
      height: 0;
      position: absolute;
      transition: all 0.2s linear;
      background: #000;
      transition-delay: 0.2s; }

/*************************************
 *
 *404
 *
 ************************************* */
p.p404 {
  padding: 40px;
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  background: #f1f1f1;
  margin: 40px 0; }

/***************************************
 *
 *header
 *
 ************************************* */
header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  height: 80px;
  width: 100%; }
  header .ib {
    padding: 0;
    width: 100%; }
    header .ib h1 {
      margin: 0;
      width: 430px;
      padding: 20px 15px; }
      header .ib h1 img {
        display: inline-block;
        width: 100%;
        width: 260px; }
      header .ib h1 span {
        font-size: 12px;
        text-decoration: underline;
        font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
        display: inline-block;
        font-weight: normal;
        position: relative;
        top: -15px;
        line-height: 1.4; }
  header .menu_btn {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 70px;
    height: 70px;
    background: url(../img/gold2.png);
    background-size: cover;
    padding: 15px;
    cursor: pointer;
    z-index: 9999;
    border-radius: 4px; }
    header .menu_btn.open {
      background: #212121;
      color: #fff; }
      header .menu_btn.open:before {
        content: "";
        color: #fff; }
    header .menu_btn:before {
      content: "";
      font-size: 42px;
      position: absolute;
      color: #000;
      font-family: material icons; }

.main_nav {
  width: 100%;
  position: fixed;
  right: 0;
  height: 100vh;
  background: url(../img/navbg.jpg) 50% 50%, #be981f;
  background-size: cover;
  background-blend-mode: multiply;
  transition: 0.4s ease;
  top: 0;
  opacity: 0;
  z-index: -1;
  padding: 100px 0; }
  .main_nav .inner {
    width: 900px;
    margin: 0 auto;
    max-width: 100%;
    padding: 100px 0;
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap; }
    .main_nav .inner .s {
      margin-top: 20px;
      background: #8a7840;
      padding: 30px;
      width: 100%;
      display: flex;
      border-radius: 8px; }
      .main_nav .inner .s a {
        font-size: 14px;
        text-decoration: underline;
        width: auto;
        padding: 0;
        margin-right: 30px;
        background: none;
        margin-bottom: 0;
        color: #fff;
        font-weight: bold;
        font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック"; }
  .main_nav.open {
    right: 0;
    opacity: 1;
    z-index: 998; }
  .main_nav a {
    color: #212121;
    display: block;
    font-size: 30px;
    width: 49%;
    padding: 25px;
    font-family: "cinzel";
    position: relative;
    margin-bottom: 20px;
    background: #fff;
    border-radius: 6px;
    text-align: center; }
    .main_nav a span {
      font-size: 16px;
      text-align: center;
      display: block; }

#first_view {
  height: 100vh;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(../img/fvbg-min.jpg) no-repeat 50% 50%;
  background-size: cover, cover;
  background-blend-mode: multiply;
  position: relative;
  overflow: hidden;
  z-index: 3; }
  #first_view .scroll {
    position: fixed;
    right: 50px;
    top: calc(50% - 65px);
    display: block;
    z-index: 9999999;
    opacity: 0;
    animation: scroll_show 3s forwards; }
    #first_view .scroll span {
      font-size: 11px;
      writing-mode: vertical-rl;
      color: #fff;
      position: absolute;
      top: -60px;
      letter-spacing: 0.1em;
      left: -10px; }
    #first_view .scroll i {
      position: absolute;
      height: 120px;
      width: 1px;
      background: #fff;
      top: 0;
      right: 0;
      display: block; }
@keyframes scroll_show {
  0% {
    opacity: 0; }
  90% {
    opacity: 0; }
  100% {
    opacity: 1; } }
    #first_view .scroll:before {
      width: 8px;
      content: "";
      position: absolute;
      display: block;
      border-radius: 50%;
      background: #fff;
      top: 0;
      left: -4px;
      height: 8px;
      animation: 3s ease infinite forwards dot_move; }
@keyframes dot_move {
  0% {
    opacity: 0; }
  40% {
    opacity: 1; }
  80% {
    transform: translateY(110px); }
  100% {
    opacity: 0; } }
  #first_view .logo_w {
    opacity: 0;
    display: block;
    width: 400px;
    position: absolute;
    top: calc(50% - 240px);
    left: calc(50% - 200px);
    transition: 0.5s ease;
    z-index: 3; }
    #first_view .logo_w.active {
      opacity: 1; }
  #first_view .tit1 {
    position: absolute;
    top: calc(50% - 360px);
    z-index: 3;
    width: 560px;
    left: calc(50% - 280px);
    transition: 1s ease;
    opacity: 0; }
    #first_view .tit1.move {
      opacity: 1; }
  #first_view .tit2 {
    position: absolute;
    top: calc(50% + 200px);
    z-index: 3;
    width: 590px;
    left: calc(50% - 295px);
    transition: 1s ease;
    opacity: 0; }
    #first_view .tit2.move {
      opacity: 1; }
  #first_view .layer {
    height: 100%;
    opacity: 0;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8));
    transition: 0.75s ease;
    z-index: 2;
    display: block; }
    #first_view .layer:before {
      content: "";
      background: linear-gradient(rgba(0, 0, 0, 0), black);
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 30%; }
    #first_view .layer.active {
      height: 100%;
      z-index: 2;
      opacity: 1; }
  #first_view .fv_con {
    height: 100%;
    width: 100%;
    display: flex;
    flex-wrap: wrap; }
    #first_view .fv_con .col {
      width: calc(100% / 6);
      height: 100%;
      position: relative;
      transition: 0.8s ease;
      opacity: 0.2; }
      #first_view .fv_con .col:nth-of-type(odd) {
        transform: translateY(-100%); }
      #first_view .fv_con .col:nth-of-type(even) {
        transform: translateY(100%); }
      #first_view .fv_con .col.fadein {
        transform: translateY(0%) !important;
        opacity: 1; }
      #first_view .fv_con .col.active img:nth-of-type(1) {
        z-index: 1;
        opacity: 0; }
      #first_view .fv_con .col.active img:nth-of-type(2) {
        z-index: 2;
        opacity: 1; }
      #first_view .fv_con .col img {
        position: absolute;
        top: 0;
        left: 0;
        object-fit: cover;
        width: 100%;
        height: 100%;
        transition: 1s ease; }
        #first_view .fv_con .col img:nth-of-type(1) {
          z-index: 2;
          opacity: 1; }
        #first_view .fv_con .col img:nth-of-type(2) {
          opacity: 0; }

.link_btn {
  background: none;
  border: 4px solid #be981f;
  color: #be981f;
  font-size: 20px;
  font-weight: bold;
  width: 300px;
  max-width: 100%;
  padding: 20px;
  display: block;
  position: relative;
  transition: 0.4s ease;
  margin: 40px 0;
  font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック"; }
  .link_btn:before {
    content: "";
    position: absolute;
    height: 100%;
    width: 0;
    background: #be981f;
    top: 0;
    left: 0;
    transition: 0.4s ease; }
  .link_btn span {
    position: relative;
    z-index: 2; }
  .link_btn svg {
    position: relative;
    z-index: 2; }
    .link_btn svg path {
      fill: #be981f; }
  .link_btn:hover:before {
    width: 100%; }
  .link_btn:hover svg path {
    fill: #000; }
  .link_btn:hover span {
    color: #000; }

.back_mov {
  position: fixed;
  z-index: 1;
  width: 100vw;
  top: 0;
  left: 0;
  height: 100vh;
  display: block; }
  .back_mov .inner {
    position: absolute;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }
    .back_mov .inner:before {
      content: "";
      background: linear-gradient(rgba(0, 0, 0, 0), black);
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 400px; }
    .back_mov .inner:after {
      content: "";
      background: linear-gradient(rgba(0, 0, 0, 0), black);
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 400px; }
  .back_mov .layer {
    content: "";
    background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url(../img/pattern10.png);
    position: absolute;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 2; }
  .back_mov iframe {
    object-fit: cover;
    width: 100%;
    height: 100%;
    width: calc(100% + 400px);
    height: calc(100% + 400px);
    position: absolute;
    left: -200px;
    top: -200px; }

#content.single.news .ib h3 {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo;
  border: 3px solid #212121;
  padding: 20px;
  text-align: center;
  font-size: 22px; }

.media_repeat .box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 15px; }
  .media_repeat .box:nth-of-type(odd) {
    background: #f1f1f1; }
  .media_repeat .box .img {
    width: 80px;
    height: 80px; }
    .media_repeat .box .img img {
      object-fit: cover;
      width: 100%;
      height: 100%;
      object-fit: contain; }
  .media_repeat .box .txt {
    width: calc(100% - 100px); }
    .media_repeat .box .txt p {
      margin: 0 !important;
      font-weight: bold; }
    .media_repeat .box .txt a {
      display: block; }

.top_news {
  background: rgba(255, 255, 255, 0.18);
  position: relative;
  z-index: 2; }
  .top_news .ib {
    padding: 100px 0;
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap; }
    .top_news .ib h2 {
      width: 20%;
      font-size: 46px;
      font-family: "Cinzel";
      font-weight: normal;
      margin: 0; }
    .top_news .ib .news_box {
      font-size: 22px;
      width: 78%;
      padding-top: 10px;
      font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
      letter-spacing: 0.1em; }
      .top_news .ib .news_box span {
        color: #be981f;
        font-weight: bold;
        display: inline-block;
        margin-right: 10px; }
      .top_news .ib .news_box a {
        text-decoration: underline; }

#intro {
  background: #000;
  position: relative;
  padding: 100px 0 0; }
  #intro .mov {
    width: 800px;
    margin: 40px auto; }
    #intro .mov h3 {
      color: #be981f;
      font-size: 44px;
      text-align: center;
      margin-bottom: 30px; }
    #intro .mov a {
      display: block;
      text-align: center;
      text-decoration: underline;
      color: #fff;
      font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
      margin-top: 20px;
      margin-bottom: 30px; }
    #intro .mov iframe {
      width: 100%;
      border: 1px solid #fff;
      display: block;
      height: 500px; }
  #intro .slider {
    height: 340px;
    width: 100vw;
    left: 0;
    background: url(../img/slide1.jpg) 50% 50% repeat-x;
    animation: 40s slider linear infinite forwards;
    background-size: 1800px;
    z-index: 3;
    opacity: 0;
    transition: 0.4s ease;
    position: relative; }
@keyframes slider {
  0% {
    background-position: 0 50%; }
  100% {
    background-position: 1800px 50%; } }
    #intro .slider.slider2 {
      background: url(../img/slide2.jpg) 50% 50% repeat-x;
      animation: 40s slider2 linear infinite forwards;
      background-size: 1800px; }
@keyframes slider2 {
  0% {
    background-position: 0 50%; }
  100% {
    background-position: -1800px 50%; } }
    #intro .slider.animated {
      opacity: 1; }
  #intro .y_bar {
    position: absolute;
    content: "";
    display: block;
    left: 0;
    width: 0;
    transition: 0.4s ease;
    background: url(../img/belt1.png) 50% 50%, #be981f;
    background-blend-mode: multiply;
    background-size: 100%, cover;
    top: 190px;
    height: 170px;
    z-index: 3; }
    #intro .y_bar.animated {
      width: calc(50vw + 430px); }
  #intro .top_shadow {
    position: absolute;
    right: 0;
    top: 0;
    height: 400px;
    width: 100%;
    z-index: 2; }
    #intro .top_shadow:before {
      content: "";
      background: linear-gradient(black, rgba(0, 0, 0, 0));
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%; }
    #intro .top_shadow:after {
      content: "";
      background: linear-gradient(black, rgba(0, 0, 0, 0));
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%; }
  #intro .bottom_shadow {
    position: absolute;
    right: 0;
    bottom: 0;
    height: 400px;
    width: 100%;
    z-index: 2; }
  #intro .img {
    width: 3600px;
    position: absolute;
    top: calc(50% - 200px);
    right: -100%;
    opacity: 0.7; }
    #intro .img img {
      display: block;
      width: 100%; }
  #intro .ib {
    padding: 0px 0 100px;
    color: #fff;
    z-index: 4;
    width: 100%; }
    #intro .ib h2 {
      text-align: center;
      font-family: "Cinzel";
      font-size: 52px;
      color: #212121;
      position: relative;
      z-index: 2;
      margin-bottom: 0px;
      font-weight: 400;
      padding: 100px 0; }
    #intro .ib p {
      font-size: 23px;
      text-align: center;
      letter-spacing: 0.1em;
      margin-top: 60px; }
      #intro .ib p i {
        display: block;
        opacity: 0;
        transition: 1s ease; }
        #intro .ib p i.show {
          opacity: 1; }

.service_list {
  display: flex;
  position: relative;
  z-index: 4; }
  .service_list .block_left {
    width: 50%;
    height: 100vh;
    position: relative; }
    .service_list .block_left .bnr {
      width: 50%;
      position: fixed;
      top: auto;
      left: 0;
      height: 100%;
      opacity: 0;
      z-index: 999;
      transition: 0.2s ease; }
      .service_list .block_left .bnr.active {
        z-index: 9999;
        opacity: 1; }
      .service_list .block_left .bnr.fixed {
        top: 0px !important; }
      .service_list .block_left .bnr img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
  .service_list .block_right {
    width: 50%; }
    .service_list .block_right .detail {
      height: calc(100vh + 400px);
      position: relative;
      font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック"; }
      .service_list .block_right .detail * {
        position: relative;
        z-index: 2; }
      .service_list .block_right .detail svg.sketch {
        position: absolute;
        width: 100px;
        display: none;
        z-index: 1;
        top: calc(50% + 250px);
        left: calc(50% + 100px); }
        .service_list .block_right .detail svg.sketch.animated path {
          animation: line_anime 2.5s forwards ease; }
@keyframes line_anime {
  0% {
    stroke-dashoffset: 1400px; }
  100% {
    stroke-dashoffset: 0px; } }
        .service_list .block_right .detail svg.sketch.sk3 {
          width: 170px;
          top: calc(50% - 40px); }
        .service_list .block_right .detail svg.sketch path {
          stroke: #be981f;
          stroke-dasharray: 1400px;
          stroke-dashoffset: 1400px;
          fill: #000; }
      .service_list .block_right .detail a.link_btn svg {
        position: relative;
        top: 0;
        left: 0; }
      .service_list .block_right .detail .txt {
        position: absolute;
        height: 400px;
        width: 500px;
        left: 100px;
        top: calc(50% - 200px); }
        .service_list .block_right .detail .txt .eye {
          object-fit: cover;
          width: 100%;
          height: 100%;
          height: 240px; }
        .service_list .block_right .detail .txt p {
          color: #fff; }
        .service_list .block_right .detail .txt h3 {
          font-size: 46px;
          color: #fff; }
          .service_list .block_right .detail .txt h3 span {
            display: block;
            font-size: 18px;
            color: #fff;
            position: relative;
            margin-bottom: 10px; }
            .service_list .block_right .detail .txt h3 span:before {
              content: "";
              position: relative;
              top: -2px;
              width: 20px;
              height: 8px;
              background: #be981f;
              display: inline-block;
              margin-right: 5px; }

.bottom_entry {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(../img/pattern10.png), url(../img/all.webp) 50% 50%;
  background-size: cover, auto, cover;
  position: relative;
  z-index: 2; }
  .bottom_entry .ib {
    padding: 130px 0 150px; }
    .bottom_entry .ib h2 {
      text-align: center;
      font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
      font-size: 46px; }
      .bottom_entry .ib h2 span {
        font-size: 20px;
        font-weight: normal;
        display: block; }
    .bottom_entry .ib p {
      text-align: center; }
      .bottom_entry .ib p a {
        font-size: 40px;
        text-align: center;
        display: block;
        margin-top: 20px;
        text-decoration: underline; }

/*************************************
 *
 *subpage
 *
 *************************************** */
.panlist {
  background: #212121;
  position: relative; }
  .panlist:before {
    content: "";
    height: 100%;
    width: calc(50% - 570px);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: #be981f; }
  .panlist:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 0 25px 25px;
    border-color: transparent transparent transparent #be981f;
    position: absolute;
    top: 0;
    left: calc(50% - 570px); }
  .panlist .ib {
    padding: 15px 0px;
    font-size: 13px;
    letter-spacing: 0.1em; }
    .panlist .ib br {
      display: none; }
    .panlist .ib a.home {
      color: #000;
      margin-right: 30px; }
    .panlist .ib a:nth-of-type(n+2) {
      color: #be981f;
      text-decoration: underline; }
    .panlist .ib span {
      position: relative;
      z-index: 2; }

.head_tit {
  height: 400px;
  overflow: hidden;
  position: relative;
  background-size: cover; }
  .head_tit.about {
    background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(../img/2025/2025_header.jpg) 50% 50%;
    background-size: cover; }
  .head_tit.news {
    background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(../img/news1.webp);
    background-size: cover; }
  .head_tit.contestant {
    background: #fff; }
    .head_tit.contestant h1 {
      color: #212121; }
  .head_tit h1 {
    position: absolute;
    width: 880px;
    left: calc( 50% - 440px);
    top: 160px;
    text-align: center;
    font-size: 42px;
    color: #fff;
    z-index: 99; }
  .head_tit:before {
    content: "";
    background: inherit;
    -webkit-filter: blur(1px);
    -moz-filter: blur(1px);
    -o-filter: blur(1px);
    -ms-filter: blur(1px);
    filter: blur(0px);
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    z-index: 9; }

/*************************************
 *
 *content
 *
 ************************************** */
#content {
  min-height: 500px; }
  #content.white h3 {
    border-color: #212121;
    color: #212121; }
    #content.white h3:before {
      border-color: transparent transparent transparent #212121; }
    #content.white h3:after {
      border-color: transparent #212121 transparent transparent; }
  #content .d_f {
    display: flex; }
  #content .ib {
    padding: 70px 0; }
    #content .ib h2:nth-of-type(1) {
      margin-top: 10px; }
  #content h2 {
    font-size: 52px;
    padding-bottom: 5px;
    position: relative;
    border-bottom: 1px solid #000;
    margin: 50px 0;
    font-weight: normal;
    font-family: "Cinzel";
    text-align: center;
    border-bottom: 1px solid #be981f;
    letter-spacing: 0.1em;
    color: #be981f;
    padding-bottom: 15px; }
    #content h2 span {
      font-size: 16px;
      display: block;
      margin-left: 5px; }
  #content h3 {
    font-size: 26px;
    letter-spacing: 0.1em;
    margin: 55px 0;
    color: #212121;
    border: none;
    padding: 20px 15px;
    text-align: center;
    border-left-width: 8px;
    position: relative;
    border-right-width: 8px; }
    #content h3:after {
      content: "";
      height: 60px;
      width: 60px;
      background: url(../img/nmk_symbol.svg) 50% 50% no-repeat;
      background-size: 50px;
      z-index: 9;
      position: absolute;
      right: 10px;
      top: 10px; }
    #content h3:before {
      content: "";
      height: 100%;
      position: absolute;
      top: 0;
      left: calc(0px - calc(50vw - 620px));
      width: calc(50vw + 620px);
      background: url(../img/belt1.png) 50% 50% fixed, #be981f;
      background-blend-mode: multiply;
      background-size: cover;
      display: block;
      border-radius: 0 50px 50px 0;
      z-index: -1; }
  #content h4 {
    margin: 30px 0;
    padding-bottom: 10px;
    border-bottom: 1px solid #fff;
    font-size: 22px;
    letter-spacing: 0.1em;
    padding-left: 0; }
  #content s {
    text-decoration: none;
    font-style: normal; }
  #content span + s {
    margin-top: 30px; }
  #content p {
    font-size: 16px;
    margin: 20px 0;
    line-height: 1.9;
    font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
    letter-spacing: 0.1em; }
    #content p.s {
      font-size: 13px; }
    #content p + .eye {
      margin-top: 10px !important; }
    #content p s {
      font-size: 130%;
      padding-bottom: 10px;
      color: #be981f;
      display: inline-block; }
    #content p a {
      color: #be981f;
      text-decoration: underline; }
    #content p a.link {
      text-decoration: underline;
      color: #B71906; }
    #content p.emp {
      font-weight: bold;
      font-size: 24px; }
    #content p.m {
      background: #212121;
      padding: 30px;
      font-size: 20px;
      font-weight: bold; }
    #content p.number span {
      counter-increment: mycounter;
      display: block; }
      #content p.number span:before {
        content: counter(mycounter);
        display: inline-block;
        margin-right: 5px;
        font-size: 120%;
        color: #be981f; }
  #content .tar {
    text-align-last: right !important; }
  #content .remark {
    padding: 30px;
    border: 2px solid #fff;
    line-height: 1.8;
    font-size: 18px;
    font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
    letter-spacing: 0.1em; }
    #content .remark b {
      display: block;
      font-size: 150%; }
  #content .guide .box {
    margin-bottom: 15px;
    background: #212121;
    padding: 15px;
    font-size: 22px;
    letter-spacing: 0.1em; }
    #content .guide .box i {
      font-size: 44px;
      font-style: italic; }
  #content table {
    border-collapse: collapse;
    width: 100%;
    font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック"; }
    #content table tr th {
      width: 15%;
      padding: 20px 30px 20px 0px;
      border-right: 1px solid #fff;
      text-align: left; }
      #content table tr th.req:before {
        content: "";
        width: 6px;
        height: 16px;
        display: inline-block;
        position: relative;
        top: 2px;
        background: #B71906;
        margin-right: 13px; }
    #content table tr td {
      width: 85%;
      padding: 20px 0 20px 35px; }
      #content table tr td b {
        font-size: 150%; }
      #content table tr td p {
        margin: 0; }
  #content input[type="text"] {
    display: block;
    width: 100%;
    padding: 15px;
    border: 1px solid #333;
    border-radius: 6px; }
  #content textarea {
    display: block;
    width: 100%;
    padding: 20px;
    border-radius: 6px;
    min-height: 220px; }
  #content button {
    width: 300px;
    display: block;
    padding: 20px;
    text-align: center;
    margin: 30px auto;
    background: #be981f;
    border: 3px solid #212121;
    font-weight: bold;
    cursor: pointer;
    font-size: 18px;
    border-radius: 10px; }
    #content button.back {
      background: #212121;
      color: #fff; }

span.red {
  color: #d70045; }

.pager {
  margin: 30px 0; }

.wp-pagenavi a, .wp-pagenavi span {
  text-decoration: none;
  border: 1px solid #BFBFBF;
  padding: 5px 11px !important;
  margin: 2px; }
.wp-pagenavi a:hover, .wp-pagenavi span.current {
  border-color: #fc0 !important;
  background: #fc0; }

body.scrolled .bottom_entry_button {
  opacity: 1; }

.bottom_entry_button {
  opacity: 0;
  transition: 0.4s ease;
  z-index: 9999;
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  bottom: 0;
  left: 0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  padding: 15px;
  align-items: center;
  justify-content: center;
  width: 100%; }
  .bottom_entry_button a {
    width: 600px;
    max-width: 100%;
    background: #B71906;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    color: #fff;
    font-size: 24px;
    padding: 15px;
    font-weight: bold; }

#content.about .ib {
  padding: 100px 0; }
  #content.about .ib .large_bnr {
    width: 100%;
    margin: -40px 0 60px; }
    #content.about .ib .large_bnr a {
      display: block;
      width: 100%;
      height: 200px;
      background: url(../img/fv2_2.webp) 100% calc(0% - 60px) no-repeat, #060309;
      background-size: 350px, cover;
      padding: 70px;
      text-align: center;
      color: #fff;
      font-size: 32px;
      letter-spacing: 0.07em;
      border: 2px solid #fff;
      border-radius: 8px; }
  #content.about .ib h3:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #be981f;
    position: absolute;
    top: calc(50% - 6px);
    left: 0px; }
  #content.about .ib h3:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 12px 6px 0px;
    border-color: transparent #be981f transparent transparent;
    position: absolute;
    top: calc(50% - 6px);
    right: 0px; }
  #content.about .ib .past_mov {
    background: #212121;
    padding: 30px;
    display: flex;
    margin: 50px 0;
    flex-wrap: wrap;
    position: relative; }
    #content.about .ib .past_mov:before {
      content: "";
      position: absolute;
      width: 100%;
      top: 0;
      left: 0;
      height: 100%;
      background: url(../img/about/2023/pic2.jpg) fixed;
      background-size: cover;
      opacity: 0.5;
      mix-blend-mode: multiply; }
    #content.about .ib .past_mov p {
      width: 100%;
      text-align: center;
      line-height: 1.5;
      font-weight: bold;
      color: #fff;
      position: relative;
      z-index: 2; }
    #content.about .ib .past_mov .box {
      margin-right: 20px;
      position: relative;
      z-index: 2; }
      #content.about .ib .past_mov .box:last-child {
        margin-right: 0; }
      #content.about .ib .past_mov .box img {
        display: block;
        width: 100px;
        height: 100px; }
  #content.about .ib .sw_slide .swiper-slide {
    width: 250px;
    height: 180px; }
    #content.about .ib .sw_slide .swiper-slide img {
      object-fit: cover;
      width: 100%;
      height: 100%; }
  #content.about .ib table {
    font-size: 18px; }
  #content.about .ib .remarks {
    padding: 25px;
    background: #fff;
    margin-bottom: 50px; }
    #content.about .ib .remarks h4, #content.about .ib .remarks p, #content.about .ib .remarks a {
      color: #212121;
      text-align: center; }
    #content.about .ib .remarks h4 {
      font-size: 32px;
      color: #B71906;
      margin-top: 0;
      border-bottom: 1px solid #212121; }
    #content.about .ib .remarks a.btn {
      background: #B71906;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 50px;
      padding: 15px;
      font-size: 22px;
      color: #fff;
      margin: 0 auto;
      font-family: "游明朝体", "Yu Mincho", YuMincho, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo;
      width: 300px;
      max-width: 100%; }
      #content.about .ib .remarks a.btn.green {
        background: #00B900; }
        #content.about .ib .remarks a.btn.green img {
          width: 40px;
          margin-right: 10px; }
  #content.about .ib .sche .row2 {
    display: flex;
    align-items: top;
    margin-top: 15px;
    flex-wrap: wrap; }
    #content.about .ib .sche .row2 .box {
      width: 349px;
      background: #be981f;
      text-align: center;
      font-size: 18px;
      padding: 5px 15px;
      color: #000;
      margin-right: 3px;
      position: relative; }
      #content.about .ib .sche .row2 .box.w {
        background: #fff; }
      #content.about .ib .sche .row2 .box.f {
        color: #fff;
        background: #d63031;
        width: 176px;
        margin-right: 0; }
      #content.about .ib .sche .row2 .box:nth-of-type(n+4) {
        width: 168px;
        margin-right: 0; }
        #content.about .ib .sche .row2 .box:nth-of-type(n+4):before {
          display: none; }
  #content.about .ib .sche .row {
    display: flex;
    justify-content: space-between;
    align-items: top; }
    #content.about .ib .sche .row .box {
      padding: 20px 5px;
      width: 13%;
      background: #fff;
      text-align: center;
      border-radius: 6px;
      color: #000;
      font-size: 20px;
      padding-top: 25px;
      position: relative; }
      #content.about .ib .sche .row .box.v2, #content.about .ib .sche .row .box .v3 {
        background: #e2d6ae; }
      #content.about .ib .sche .row .box.v4 {
        background: #dcc578; }
      #content.about .ib .sche .row .box i {
        display: block;
        font-size: 11px;
        padding: 4px 2px;
        text-align: center;
        background: #fff;
        border: 1px solid #000; }
      #content.about .ib .sche .row .box:last-child {
        padding-top: 20px;
        width: 20%;
        border: 5px solid #be981f;
        background: #e2d6ae; }
        #content.about .ib .sche .row .box:last-child:before {
          display: none; }
  #content.about .ib .cont_row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 80px; }
    #content.about .ib .cont_row:nth-of-type(1) .side:before {
      background: linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85)), url(../img/bg1.webp) 50% 50% fixed;
      background-size: cover; }
    #content.about .ib .cont_row:nth-of-type(2) .side:before {
      background: linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85)), url(../img/bg2.webp) 50% 50% fixed;
      background-size: cover; }
    #content.about .ib .cont_row:nth-of-type(3) .side:before {
      background: linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85)), url(../img/judge.webp) 50% 50% fixed;
      background-size: cover; }
    #content.about .ib .cont_row:nth-of-type(4) .side:before {
      background: linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85)), url(../img/access.webp) 50% 50% fixed;
      background-size: cover; }
    #content.about .ib .cont_row:nth-of-type(5) .side:before {
      background: linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85)), url(../img/stage.webp) 50% 50% fixed;
      background-size: cover; }
    #content.about .ib .cont_row.sponsor .side:before {
      background: linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85)), url(../img/about/sponsor.jpg) 50% 50% fixed;
      background-size: cover; }
    #content.about .ib .cont_row .side {
      width: 290px;
      position: relative;
      padding-right: 30px; }
      #content.about .ib .cont_row .side:before {
        content: "";
        background: linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85)), url(../img/bg1.webp) 50% 50% fixed;
        background-size: cover;
        position: absolute;
        height: 100%;
        top: 0;
        width: calc(50vw - 310px);
        left: calc(0px - calc(50vw - 600px));
        display: block; }
      #content.about .ib .cont_row .side .inner {
        position: sticky;
        top: 100px;
        padding-bottom: 100px; }
        #content.about .ib .cont_row .side .inner p {
          color: #be981f;
          margin-bottom: 0;
          font-weight: bold;
          text-align: right; }
          #content.about .ib .cont_row .side .inner p:before {
            content: "-";
            display: inline-block;
            margin-right: 10px; }
        #content.about .ib .cont_row .side .inner h3 {
          padding: 0;
          border: none;
          margin-top: 40px;
          font-size: 24px;
          line-height: 1;
          text-align: right;
          color: #fff; }
          #content.about .ib .cont_row .side .inner h3:before, #content.about .ib .cont_row .side .inner h3:after {
            display: none; }
          #content.about .ib .cont_row .side .inner h3 i {
            font-size: 48px;
            font-style: italic; }
    #content.about .ib .cont_row .main {
      width: calc(100% - 360px); }
      #content.about .ib .cont_row .main p.emp.center {
        font-size: 32px;
        text-align: center;
        color: #fff;
        font-weight: bold; }
      #content.about .ib .cont_row .main table.fixed {
        border: 1px solid #fff;
        background: #fff;
        color: #212121;
        table-layout: fixed;
        font-size: 20px; }
        #content.about .ib .cont_row .main table.fixed tr {
          border-bottom: 1px solid #fff; }
          #content.about .ib .cont_row .main table.fixed tr th {
            text-align: center;
            background: #be981f; }
          #content.about .ib .cont_row .main table.fixed tr td {
            border-right: 1px solid #ddd; }
      #content.about .ib .cont_row .main iframe {
        display: block;
        margin: 50px 0;
        height: 450px;
        width: 100%; }
      #content.about .ib .cont_row .main h1 {
        padding: 20px;
        background: radial-gradient(ellipse farthest-corner at right bottom, #5d4a1f 0%, #FDB931 8%, #9f7928 30%, #8A6E2F 40%, transparent 80%), radial-gradient(ellipse farthest-corner at left top, #FFFFFF 0%, #FFFFAC 8%, #D1B464 25%, #5d4a1f 62.5%, #5d4a1f 100%);
        width: 100%;
        align-items: center;
        justify-content: center;
        color: #fff;
        display: flex; }
      #content.about .ib .cont_row .main h3 {
        background: #be981f;
        color: #212121;
        padding: 15px 0;
        position: relative;
        overflow: hidden; }
        #content.about .ib .cont_row .main h3:before {
          content: "";
          position: absolute;
          z-index: 2;
          width: 20px;
          top: 0;
          left: 0;
          width: 0;
          height: 0;
          border-style: solid;
          background: none;
          border-width: 80px 15px 0 0;
          border-color: rgba(0, 0, 0, 0.2) transparent transparent transparent;
          border-radius: 0; }
      #content.about .ib .cont_row .main .sponsor .rank {
        display: flex;
        flex-wrap: wrap; }
        #content.about .ib .cont_row .main .sponsor .rank h3 {
          width: 100%; }
        #content.about .ib .cont_row .main .sponsor .rank.dia {
          justify-content: center; }
          #content.about .ib .cont_row .main .sponsor .rank.dia .box {
            width: 30%; }
            #content.about .ib .cont_row .main .sponsor .rank.dia .box h5 {
              font-size: 20px; }
            #content.about .ib .cont_row .main .sponsor .rank.dia .box .img {
              height: 180px;
              background: #fff;
              padding: 20px; }
              #content.about .ib .cont_row .main .sponsor .rank.dia .box .img img {
                object-fit: contain;
                width: 100%;
                height: 100%; }
        #content.about .ib .cont_row .main .sponsor .rank .box {
          width: 23.6%;
          margin-bottom: 20px;
          margin-right: 1.5%; }
          #content.about .ib .cont_row .main .sponsor .rank .box:nth-of-type(4n) {
            margin-right: 0; }
          #content.about .ib .cont_row .main .sponsor .rank .box h5 {
            font-size: 15px;
            color: #be981f;
            margin: 10px 0;
            padding: 5px 0; }
          #content.about .ib .cont_row .main .sponsor .rank .box .img {
            width: 100%;
            height: 165px;
            background: #fff;
            padding: 10px; }
            #content.about .ib .cont_row .main .sponsor .rank .box .img.pd0 {
              padding: 0;
              aspect-ratio: 1/1;
              height: auto;
              overflow: hidden; }
            #content.about .ib .cont_row .main .sponsor .rank .box .img.ofc {
              padding: 0;
              background: #000;
              padding: 20px 10px; }
              #content.about .ib .cont_row .main .sponsor .rank .box .img.ofc img {
                object-fit: cover;
                width: 100%;
                height: 100%; }
            #content.about .ib .cont_row .main .sponsor .rank .box .img img {
              object-fit: contain;
              width: 100%;
              height: 100%; }
      #content.about .ib .cont_row .main img {
        max-width: 100%; }
      #content.about .ib .cont_row .main .zaseki_bnr {
        padding: 40px;
        text-align: center;
        color: #fff;
        font-size: 32px;
        display: block;
        margin: 40px 0;
        border: 3px solid #ccc;
        background: linear-gradient(rgba(0, 0, 0, 0.66), rgba(0, 0, 0, 0.66)), url(../img/about/hallb7.jpg) 50% 50% fixed;
        position: relative; }
        #content.about .ib .cont_row .main .zaseki_bnr .line {
          width: 60px;
          position: absolute;
          bottom: 20px;
          right: 20px; }
      #content.about .ib .cont_row .main .seki {
        margin: 30px 0; }
        #content.about .ib .cont_row .main .seki span {
          display: block;
          padding: 20px;
          text-align: center;
          font-size: 22px;
          font-weight: bold; }
          #content.about .ib .cont_row .main .seki span:nth-child(1) {
            background: #ec768b; }
          #content.about .ib .cont_row .main .seki span:nth-child(2) {
            background: #ccc734; }
          #content.about .ib .cont_row .main .seki span:nth-child(3) {
            background: #00579f; }
      #content.about .ib .cont_row .main .shin_box {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        #content.about .ib .cont_row .main .shin_box .box {
          width: 32%;
          margin-bottom: 20px; }
          #content.about .ib .cont_row .main .shin_box .box h4 {
            font-size: 18px; }
          #content.about .ib .cont_row .main .shin_box .box p {
            font-size: 14px; }
          #content.about .ib .cont_row .main .shin_box .box .img {
            height: 220px; }
            #content.about .ib .cont_row .main .shin_box .box .img img {
              object-fit: cover;
              width: 100%;
              height: 100%; }
  #content.about .ib .d_f {
    justify-content: space-between; }
    #content.about .ib .d_f .box {
      width: 48%; }
  #content.about .ib .tit {
    background: #212121;
    padding: 40px;
    font-size: 44px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.1em;
    line-height: 1.7;
    margin: 40px 0;
    position: relative; }
    #content.about .ib .tit .motto {
      font-size: 40px;
      color: #be981f;
      width: 100%;
      position: absolute;
      left: 0;
      top: -30px;
      z-index: 2; }
  #content.about .ib .eye {
    height: 500px;
    margin: 50px 0; }
    #content.about .ib .eye.top img {
      object-position: top; }
    #content.about .ib .eye img {
      object-fit: cover;
      width: 100%;
      height: 100%; }

#content.white {
  background: #fff;
  color: #212121; }
  #content.white .ib .contact_hide.dnone {
    display: none; }
  #content.white .ib table {
    margin-top: 60px; }
    #content.white .ib table tr th {
      border-color: #212121; }
    #content.white .ib table tr td {
      padding-left: 40px; }
  #content.white .ib h2 {
    color: #212121;
    border-color: #212121; }
  #content.white .ib .term_box {
    padding: 30px;
    border: 1px solid #ddd;
    height: 500px;
    overflow-y: scroll;
    margin: 60px 0; }
    #content.white .ib .term_box h2 {
      font-size: 24px; }
    #content.white .ib .term_box h3 {
      font-size: 22px; }

#content.single .ib {
  overflow: hidden; }
  #content.single .ib #scwatbwsr_map_panzoom {
    width: max-content; }
  #content.single .ib .scwatbwsr_content.post {
    max-width: 100% !important; }
  #content.single .ib .scwatbwsr_map_bg img {
    display: block;
    width: 100%; }

#content.sponsored .ib .eye {
  height: 500px;
  margin: 50px 0; }
  #content.sponsored .ib .eye img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: top; }
#content.sponsored .ib table.sponsored {
  background: #fff;
  color: #212121;
  margin: 50px 0; }
  #content.sponsored .ib table.sponsored thead tr th {
    padding: 20px;
    background: #212121;
    color: #fff; }
    #content.sponsored .ib table.sponsored thead tr th:last-child {
      border: none; }
    #content.sponsored .ib table.sponsored thead tr th:first-child {
      width: 10%; }
  #content.sponsored .ib table.sponsored tbody tr:last-child th {
    border: none; }
  #content.sponsored .ib table.sponsored tbody tr:last-child td {
    border-bottom: none; }
  #content.sponsored .ib table.sponsored tbody tr.strong td {
    font-size: 120%;
    font-weight: bold; }
  #content.sponsored .ib table.sponsored tbody tr th {
    padding: 20px;
    width: 10%;
    background: #be981f;
    border-bottom: 1px solid #fff; }
  #content.sponsored .ib table.sponsored tbody tr td {
    padding: 20px;
    width: 18%;
    border-bottom: 1px solid #ddd;
    border-right: 1px solid #ddd;
    vertical-align: top; }
#content.sponsored .ib a.link_btn {
  width: 400px;
  padding: 25px;
  max-width: 100%;
  text-align: center;
  font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
  display: block;
  margin: 40px auto; }

#content .bottom_sponsored {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(../img/pattern10.png), url(../img/all.webp) 50% 50%;
  background-size: cover, auto, cover; }
  #content .bottom_sponsored .ib {
    padding: 130px 0 150px; }
    #content .bottom_sponsored .ib h2 {
      text-align: center;
      font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
      font-size: 46px;
      color: #fff !important;
      border: none !important; }
      #content .bottom_sponsored .ib h2 span {
        font-size: 20px;
        font-weight: normal;
        display: block; }
    #content .bottom_sponsored .ib p {
      text-align: center; }
    #content .bottom_sponsored .ib a.link_btn {
      width: 360px;
      display: block;
      text-align: center;
      margin: 50px auto 30px; }

#content .ib .event_list {
  margin: 80px 0; }
  #content .ib .event_list .box {
    justify-content: space-between;
    display: flex;
    margin-bottom: 50px;
    flex-wrap: wrap;
    background: #212121;
    padding: 0px;
    position: relative;
    border: 1px solid #be981f;
    letter-spacing: 0.1em; }
    #content .ib .event_list .box a.link {
      display: inline-block;
      padding: 15px 30px;
      text-align: center;
      background: #000;
      position: absolute;
      right: 0;
      bottom: 0;
      font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
      font-weight: bold;
      color: #be981f;
      transition: 0.4s ease; }
      #content .ib .event_list .box a.link:hover {
        background: #be981f;
        color: #000; }
      #content .ib .event_list .box a.link:before {
        content: "";
        font-family: material icons;
        position: relative;
        top: 2px;
        display: inline-block;
        margin-right: 7px; }
    #content .ib .event_list .box .img {
      width: 355px;
      height: 355px;
      position: relative; }
      #content .ib .event_list .box .img .num {
        padding: 10px 30px;
        font-size: 20px;
        font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
        background: #be981f;
        position: absolute;
        left: -1px;
        color: #000;
        font-weight: bold;
        top: -20px; }
      #content .ib .event_list .box .img img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
    #content .ib .event_list .box .txt {
      width: calc(100% - 355px);
      padding: 30px 40px;
      position: relative; }
      #content .ib .event_list .box .txt .date {
        font-size: 28px;
        margin-bottom: 20px; }
        #content .ib .event_list .box .txt .date i {
          display: block;
          font-size: 20px; }
      #content .ib .event_list .box .txt h3 {
        border: none;
        padding: 0;
        text-align: left;
        margin-top: 0;
        margin-bottom: 10px;
        font-size: 36px;
        color: #be981f; }
        #content .ib .event_list .box .txt h3:before {
          display: none; }
        #content .ib .event_list .box .txt h3:after {
          top: 0;
          right: 0; }
      #content .ib .event_list .box .txt table tr:last-child th {
        padding-bottom: 0; }
      #content .ib .event_list .box .txt table tr:last-child td {
        padding-bottom: 0; }
      #content .ib .event_list .box .txt table tr th {
        width: 20%;
        padding: 10px; }
      #content .ib .event_list .box .txt table tr td {
        width: 80%;
        padding: 10px;
        padding-left: 30px; }

#content.operator .ib table tr:nth-of-type(odd) {
  background: #f5f5f5; }
#content.operator .ib table tr th {
  padding-left: 25px; }
#content.operator .ib table tr td {
  padding-right: 30px; }
#content.operator .ib .telbox {
  margin: 40px 0 30px;
  justify-content: space-between;
  display: flex; }
  #content.operator .ib .telbox a {
    width: 32%;
    margin-bottom: 20px;
    display: inline-block;
    padding: 10px 15px;
    border: 3px solid #212121;
    font-weight: bold;
    font-size: 18px;
    background: #fff;
    text-align: center; }
#content.operator .ib .map {
  margin: 30px 0; }
#content.operator .ib iframe {
  width: 100%;
  display: block;
  height: 450px; }

#content.data .data_con .d_box {
  margin-bottom: 20px; }
  #content.data .data_con .d_box p {
    margin: 10px 0; }
  #content.data .data_con .d_box .y {
    display: block;
    padding: 20px;
    background: #f5f5f5;
    font-size: 32px;
    cursor: pointer;
    position: relative; }
    #content.data .data_con .d_box .y.open {
      background: #B71906;
      color: #fff; }
      #content.data .data_con .d_box .y.open:before {
        content: ""; }
    #content.data .data_con .d_box .y:before {
      content: "";
      position: absolute;
      font-size: 30px;
      top: 33px;
      right: 20px;
      font-family: material icons; }
    #content.data .data_con .d_box .y i {
      font-style: italic; }
  #content.data .data_con .d_box .data {
    padding: 30px 0;
    display: none; }
    #content.data .data_con .d_box .data h4 {
      margin-bottom: 20px;
      border-bottom: 1px solid #212121; }
    #content.data .data_con .d_box .data .d_f {
      width: 100%;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between; }
      #content.data .data_con .d_box .data .d_f .box {
        width: 49%; }
        #content.data .data_con .d_box .data .d_f .box table {
          margin-top: 20px; }
          #content.data .data_con .d_box .data .d_f .box table tr:nth-of-type(odd) {
            background: #f5f5f5; }
          #content.data .data_con .d_box .data .d_f .box table tr th {
            width: 33%; }
          #content.data .data_con .d_box .data .d_f .box table tr td {
            width: 67%; }

#content .ticket_con {
  margin: 80px 0; }
  #content .ticket_con .box {
    margin: 0 auto 40px;
    display: flex;
    position: relative;
    max-width: 100%;
    width: 80%;
    flex-wrap: wrap; }
    #content .ticket_con .box .l {
      width: 68%;
      padding: 30px;
      background: url(../img/gold2.jpg);
      background-size: cover; }
      #content .ticket_con .box .l .inner {
        display: block;
        background: #fff;
        width: 100%;
        height: 100%;
        padding: 30px;
        flex-wrap: wrap;
        display: flex;
        align-items: center; }
        #content .ticket_con .box .l .inner span {
          display: block;
          font-size: 22px;
          color: #212121; }
        #content .ticket_con .box .l .inner h3 {
          width: 100%;
          background: none;
          text-align: left;
          font-size: 36px;
          padding: 0 0 15px;
          margin: 20px 0;
          border-bottom: 1px solid #212121; }
          #content .ticket_con .box .l .inner h3:before, #content .ticket_con .box .l .inner h3:after {
            display: none; }
        #content .ticket_con .box .l .inner p {
          color: #212121;
          width: 100%;
          font-size: 22px; }
    #content .ticket_con .box .r {
      width: 32%;
      padding: 30px;
      background: #fff;
      border-left: 3px dotted #212121; }
      #content .ticket_con .box .r p {
        font-size: 18px;
        color: #212121; }
      #content .ticket_con .box .r a.tel {
        display: block;
        color: #212121;
        font-size: 30px; }
        #content .ticket_con .box .r a.tel:before {
          content: "";
          font-family: material icons;
          position: relative;
          top: 3px; }
      #content .ticket_con .box .r a.gmap {
        display: block;
        text-decoration: underline;
        font-size: 22px;
        margin-top: 30px;
        color: blue; }
    #content .ticket_con .box .cr {
      width: 40px;
      height: 40px;
      position: absolute;
      z-index: 2;
      left: -20px;
      top: calc(50% - 20px);
      background: url(../img/bgp1.png);
      border-radius: 50%; }
      #content .ticket_con .box .cr:nth-of-type(2) {
        left: auto;
        right: -20px; }

#content.single.news, #content.news.archive {
  background: #fff; }
  #content.single.news .ib h2, #content.news.archive .ib h2 {
    font-size: 36px;
    border-bottom: 1px solid #212121;
    color: #212121; }
  #content.single.news .ib p, #content.news.archive .ib p {
    color: #212121; }
  #content.single.news .ib a, #content.news.archive .ib a {
    text-decoration: underline;
    color: #B71906; }
  #content.single.news .ib .news_box, #content.news.archive .ib .news_box {
    font-size: 18px;
    width: 78%;
    padding: 25px 20px;
    width: 100%;
    font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
    letter-spacing: 0.1em; }
    #content.single.news .ib .news_box span, #content.news.archive .ib .news_box span {
      color: #be981f;
      font-weight: bold;
      display: inline-block;
      margin-right: 10px; }
    #content.single.news .ib .news_box i a, #content.news.archive .ib .news_box i a {
      display: inline-block;
      border-radius: 20px;
      padding: 2px 12px;
      font-size: 14px;
      text-decoration: none;
      border: 1px solid #212121;
      margin: 0 10px;
      background: #fff; }
    #content.single.news .ib .news_box a, #content.news.archive .ib .news_box a {
      text-decoration: underline;
      color: #212121; }
    #content.single.news .ib .news_box:nth-of-type(odd), #content.news.archive .ib .news_box:nth-of-type(odd) {
      background: #f1f1f1; }

#content.movie .mov_list, #content.single .mov_list {
  justify-content: space-between;
  display: flex;
  flex-wrap: wrap;
  margin: 80px 0 100px; }
  #content.movie .mov_list.single, #content.single .mov_list.single {
    margin-bottom: 50px; }
  #content.movie .mov_list .m_box, #content.single .mov_list .m_box {
    width: 46.6%;
    position: relative;
    margin-bottom: 40px; }
    #content.movie .mov_list .m_box a, #content.single .mov_list .m_box a {
      position: absolute;
      width: 100%;
      height: 100%;
      display: block;
      z-index: 2;
      top: 0;
      left: 0; }
    #content.movie .mov_list .m_box iframe, #content.single .mov_list .m_box iframe {
      z-index: 2;
      position: relative;
      display: block;
      width: 100%;
      height: 400px;
      top: 0;
      left: 0; }

.single_tit {
  height: 500px;
  display: flex;
  flex-wrap: wrap; }
  .single_tit .img {
    width: 50%;
    height: 100%; }
    .single_tit .img img {
      object-fit: cover;
      width: 100%;
      height: 100%; }
  .single_tit .txt {
    width: 50%;
    padding: 50px;
    background: #212121; }
    .single_tit .txt h2 {
      font-size: 42px;
      color: #be981f; }
    .single_tit .txt .date {
      font-size: 36px;
      margin-bottom: 30px; }
      .single_tit .txt .date i {
        display: block;
        font-size: 20px; }
    .single_tit .txt table {
      font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック"; }
      .single_tit .txt table tr:last-child th {
        padding-bottom: 0; }
      .single_tit .txt table tr:last-child td {
        padding-bottom: 0; }
      .single_tit .txt table tr th {
        width: 20%;
        padding: 10px;
        text-align: left;
        border-right: 1px solid #fff; }
      .single_tit .txt table tr td {
        width: 80%;
        padding: 10px;
        padding-left: 30px; }

#content.single a.back_link {
  position: fixed;
  bottom: 0;
  left: 0;
  padding: 13px 30px 13px 20px;
  font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
  font-size: 18px;
  color: #be981f;
  font-weight: bold;
  z-index: 999999;
  background: #212121;
  border: 3px solid #be981f;
  border-bottom: none;
  border-left: none;
  display: inline-block; }
  #content.single a.back_link:before {
    font-family: material icons;
    content: "";
    position: relative;
    top: 6px;
    font-size: 130%;
    display: inline-block;
    margin-right: 6px; }
#content.single .ib h3 {
  border: none;
  font-size: 34px;
  text-align: left;
  padding: 0;
  padding: 10px 0; }
  #content.single .ib h3 i {
    font-size: 21px;
    color: #333;
    font-family: "Cinzel"; }
#content.single .ib .shin_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  #content.single .ib .shin_box .box {
    width: 24%;
    margin-bottom: 20px; }
    #content.single .ib .shin_box .box h4 {
      font-size: 18px; }
    #content.single .ib .shin_box .box p {
      font-size: 14px; }
    #content.single .ib .shin_box .box .img {
      height: 220px; }
      #content.single .ib .shin_box .box .img img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
#content.single .ib .g_list .box h4 {
  background: #212121;
  padding: 10px;
  border: none;
  color: #fff;
  font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
  border-left: 10px solid #be981f;
  padding-left: 16px; }
#content.single .ib .g_list .box .p_lists {
  display: flex;
  flex-wrap: wrap;
  margin: 50px 0;
  justify-content: center; }
  #content.single .ib .g_list .box .p_lists .p_box {
    width: 17%;
    margin-right: 40px; }
    #content.single .ib .g_list .box .p_lists .p_box.none {
      display: none; }
    #content.single .ib .g_list .box .p_lists .p_box.grandprix .g {
      background: #be981f;
      color: #000; }
    #content.single .ib .g_list .box .p_lists .p_box.grandprix .img {
      border: 5px solid #be981f; }
    #content.single .ib .g_list .box .p_lists .p_box.semi_g .img {
      border: 5px solid #bbb; }
    #content.single .ib .g_list .box .p_lists .p_box:nth-of-type(4n) {
      margin-right: 0; }
    #content.single .ib .g_list .box .p_lists .p_box .img {
      height: 210px;
      width: 100%;
      border-radius: 50%;
      overflow: hidden;
      margin-bottom: 20px; }
      #content.single .ib .g_list .box .p_lists .p_box .img img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
    #content.single .ib .g_list .box .p_lists .p_box p {
      font-size: 18px;
      font-weight: bold;
      text-align: center;
      margin-top: 10px;
      margin-bottom: 0; }
    #content.single .ib .g_list .box .p_lists .p_box .g {
      text-align: center;
      color: #be981f;
      font-size: 20px;
      padding: 7px 0;
      border-top: 1px solid #be981f;
      border-bottom: solid 1px #be981f; }
#content.single .ib .images {
  display: flex;
  flex-wrap: wrap; }
  #content.single .ib .images a {
    width: 32%;
    height: 180px;
    margin-right: 20px;
    margin-bottom: 15px; }
    #content.single .ib .images a:nth-of-type(3n) {
      margin-right: 0; }
    #content.single .ib .images a img {
      object-fit: cover;
      width: 100%;
      height: 100%; }

#content .ib .pre_entry {
  text-align: center; }
  #content .ib .pre_entry .line {
    display: flex;
    justify-content: space-between;
    width: 830px;
    margin: 60px auto;
    max-width: 100%; }
    #content .ib .pre_entry .line div {
      width: 48%;
      padding: 40px;
      background: #ff6b81; }
      #content .ib .pre_entry .line div p {
        font-weight: bold;
        font-size: 24px;
        text-align: center;
        color: #fff; }
      #content .ib .pre_entry .line div a {
        text-decoration: underline; }
      #content .ib .pre_entry .line div img {
        width: 240px;
        display: block;
        margin: 0 auto;
        height: auto; }
      #content .ib .pre_entry .line div:nth-of-type(2) {
        background: #1dd1a1; }

#content.c2022 h3 {
  position: sticky;
  top: 0px;
  z-index: 9; }
  #content.c2022 h3:before {
    background: #fff; }
  #content.c2022 h3:after {
    background: url(../img/nmk_symbol2.svg) 50% 50% no-repeat;
    background-size: 50px; }
#content a.vote_btn {
  display: block;
  width: 400px;
  max-width: 100%;
  margin: 30px auto;
  border-radius: 50px;
  padding: 20px;
  text-align: center;
  font-size: 22px;
  background: linear-gradient(to right, #ff5858, #f857a6);
  color: #fff; }
#content.single_cont h2 {
  font-size: 40px;
  border-bottom: double 4px #be981f; }
#content.single_cont .cont_list .box {
  width: 100%;
  background: none; }
  #content.single_cont .cont_list .box .img {
    width: 50%;
    height: 900px;
    position: relative; }
    #content.single_cont .cont_list .box .img:before {
      content: "";
      width: 100%;
      height: 200px;
      background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.7));
      position: absolute;
      left: 0;
      bottom: 0;
      display: block; }
    #content.single_cont .cont_list .box .img .main {
      height: 100%; }
    #content.single_cont .cont_list .box .img .sub {
      z-index: 3;
      position: absolute;
      display: flex;
      height: 80px;
      bottom: 30px;
      left: 30px; }
      #content.single_cont .cont_list .box .img .sub img {
        cursor: pointer;
        width: 80px;
        height: 80px; }
        #content.single_cont .cont_list .box .img .sub img.active {
          border: 3px solid #fff; }
  #content.single_cont .cont_list .box .detail {
    width: 50%;
    background: url(../img/logo_g.png) calc(100% - 30px) calc(100% - 30px) no-repeat, #fff;
    background-size: 120px, cover;
    padding: 35px; }
    #content.single_cont .cont_list .box .detail .mov iframe {
      height: 300px;
      width: 100%;
      display: block; }
    #content.single_cont .cont_list .box .detail .sns {
      top: 40px; }
      #content.single_cont .cont_list .box .detail .sns a ion-icon {
        font-size: 32px; }
    #content.single_cont .cont_list .box .detail .class a {
      border-radius: 8px;
      padding: 15px;
      background: #be981f;
      color: #fff;
      border: none; }
    #content.single_cont .cont_list .box .detail table {
      font-size: 14px;
      margin-bottom: 40px; }
      #content.single_cont .cont_list .box .detail table tr:nth-last-of-type(1) th, #content.single_cont .cont_list .box .detail table tr:nth-last-of-type(1) td {
        padding-bottom: 0; }
      #content.single_cont .cont_list .box .detail table tr:nth-of-type(1) th, #content.single_cont .cont_list .box .detail table tr:nth-of-type(1) td {
        padding-top: 0; }
      #content.single_cont .cont_list .box .detail table tr td {
        padding: 15px; }
      #content.single_cont .cont_list .box .detail table tr th {
        padding: 15px;
        border-right: 1px solid #212121; }
    #content.single_cont .cont_list .box .detail h5 {
      background: url(../img/bgp1.png);
      color: #fff;
      padding: 20px;
      text-align: left;
      font-size: 16px;
      margin: 40px 0;
      width: calc(100& + 35px);
      margin-right: -35px;
      border-radius: 50px 0 0 50px; }
    #content.single_cont .cont_list .box .detail .ikigomi {
      font-size: 16px;
      padding: 30px; }
#content .cont_list {
  justify-content: space-between;
  display: flex;
  flex-wrap: wrap;
  margin: 60px 0; }
  #content .cont_list .box {
    width: 48.2%;
    justify-content: space-between;
    flex-wrap: wrap;
    display: flex;
    background: #fff;
    color: #212121;
    margin-bottom: 50px;
    position: relative; }
    #content .cont_list .box.cosmos .img a.area {
      left: 55px; }
    #content .cont_list .box .sing {
      height: 45px;
      width: 45px;
      border-radius: 50px;
      padding: 5px;
      text-align: center;
      background: linear-gradient(to right, #ff5858, #f857a6);
      color: #fff;
      position: absolute;
      top: -20px;
      left: 0;
      font-size: 26px;
      z-index: 2; }
    #content .cont_list .box:hover a.link {
      display: block;
      z-index: 3;
      opacity: 1; }
    #content .cont_list .box a.link {
      display: none;
      transition: 0.4s ease;
      background: rgba(0, 0, 0, 0.7);
      z-index: -1;
      position: absolute;
      height: 100%;
      color: #fff;
      width: 100%;
      top: 0;
      opacity: 0;
      left: 0;
      text-align: center; }
      #content .cont_list .box a.link span {
        display: block;
        color: #fff;
        padding-top: 130px;
        font-size: 24px; }
    #content .cont_list .box .img {
      width: 50%;
      position: relative; }
      #content .cont_list .box .img .area {
        position: absolute;
        background: #be981f;
        color: #fff;
        padding: 10px 20px;
        top: -20px;
        left: 0;
        border-radius: 50px; }
        #content .cont_list .box .img .area:before {
          content: "";
          font-family: material icons;
          display: inline-block;
          margin-right: 5px;
          font-size: 120%;
          line-height: 1;
          position: relative;
          top: 3px; }
      #content .cont_list .box .img img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
    #content .cont_list .box .detail {
      width: 50%;
      padding: 25px;
      position: relative; }
      #content .cont_list .box .detail .sns {
        position: absolute;
        top: 29px;
        right: 20px; }
        #content .cont_list .box .detail .sns a {
          display: inline-block;
          margin-right: 7px;
          opacity: 0.2;
          pointer-events: none;
          color: #ED4C67; }
          #content .cont_list .box .detail .sns a.active {
            pointer-events: inherit;
            opacity: 1; }
          #content .cont_list .box .detail .sns a ion-icon {
            font-size: 22px; }
      #content .cont_list .box .detail h4 {
        margin: 0 0 20px;
        font-size: 20px;
        border: none;
        padding: 0;
        padding: 25px 20px 25px 40px;
        background: #fff;
        border-radius: 50px;
        margin-top: -25px;
        margin-left: -70px;
        color: #212121; }
      #content .cont_list .box .detail .class a {
        display: inline-block;
        padding: 5px 10px;
        border: 1px solid #212121; }
      #content .cont_list .box .detail .ikigomi {
        font-size: 14px;
        line-height: 1.55;
        padding: 20px;
        border-radius: 12px;
        margin: 20px 0;
        background: rgba(0, 0, 0, 0.05);
        font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
        position: relative; }
        #content .cont_list .box .detail .ikigomi:before {
          content: "";
          position: absolute;
          top: 40px;
          left: -13px;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 6.5px 13px 6.5px 0;
          border-color: transparent #f1f1f1 transparent transparent; }

/*************************************
 *
 *footer
 *
 ************************************** */
.oubo_bnr {
  position: fixed;
  height: 100px;
  padding: 10px;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 99999; }
  .oubo_bnr a {
    width: 800px;
    font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
    max-width: 100%;
    display: block;
    margin: 0 auto;
    background: #fff;
    text-align: center;
    padding: 10px;
    transition: 0.4s ease;
    border-radius: 10px;
    overflow: hidden;
    color: #212121;
    position: relative;
    font-size: 18px;
    border: 4px solid #be981f; }
    .oubo_bnr a img {
      object-fit: cover;
      width: 100%;
      height: 100%;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0; }
    .oubo_bnr a i {
      position: relative;
      z-index: 3;
      font-size: 22px; }
    .oubo_bnr a:hover {
      background: #be981f;
      color: #fff; }
      .oubo_bnr a:hover img {
        display: none; }
    .oubo_bnr a span {
      display: block;
      font-size: 14px;
      position: relative;
      z-index: 2; }

#pagetop {
  width: 52px;
  height: 52px;
  background: #fff;
  position: fixed;
  z-index: 999999;
  bottom: 20px;
  cursor: pointer;
  right: 0px; }
  #pagetop:before {
    content: "";
    font-size: 29px;
    position: absolute;
    top: 7px;
    left: 12px;
    font-family: material icons;
    color: #212121; }
  #pagetop i {
    font-size: 10px;
    position: absolute;
    bottom: 7px;
    left: 0;
    text-align: center;
    width: 100%;
    display: block;
    color: #212121; }

.contestant_bnr {
  height: 120px;
  background: linear-gradient(rgba(0, 0, 0, 0), white);
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 10px;
  z-index: 99; }
  .contestant_bnr .close_btn {
    position: absolute;
    width: 40px;
    height: 40px;
    background: #212121;
    color: #fff;
    padding: 8px;
    border: 1px solid #fff;
    text-align: center;
    font-size: 15px;
    border-radius: 50%;
    display: block;
    top: 30px;
    z-index: 9;
    left: calc(50% + 450px);
    cursor: pointer; }
  .contestant_bnr a {
    display: block;
    margin: 0 auto;
    height: 100%;
    width: 1000px;
    max-width: 100%;
    background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url("../img/bnr/bnr1.png") 50% calc(50% + 30px);
    background-size: cover;
    border-radius: 8px;
    padding: 20px;
    text-align: center;
    font-size: 28px;
    border: 2px solid #be981f;
    letter-spacing: 0.1em;
    position: relative; }
    .contestant_bnr a:before {
      content: "NOTICE";
      color: #212121;
      text-align: center;
      width: 100%;
      display: block;
      position: absolute;
      left: calc(50% - 120px);
      font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
      top: -16px;
      font-weight: bold;
      width: 240px;
      padding: 4px;
      border-radius: 20px;
      background: #be981f;
      font-size: 15px; }

.map_outer {
  position: relative;
  width: 100%;
  height: 1000px; }
  .map_outer #map {
    width: 100%;
    height: 100%; }

#visit_count {
  float: right;
  background: #be981f;
  color: #fff;
  font-weight: bold;
  padding: 15px 20px;
  border-radius: 8px 8px 0 0;
  position: absolute;
  top: -50px;
  height: 50px;
  right: 0; }
  #visit_count * {
    color: #fff; }

#content.common2 .ib {
  border: none;
  box-shadow: none; }
  #content.common2 .ib .gm-style-iw:has(.visited):before {
    content: "訪問済み";
    padding: 3px 7px;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    background: #333;
    border-radius: 0 3px 3px 0;
    position: absolute;
    top: 12px;
    left: 0; }
  #content.common2 .ib .gm-style-iw:has(.visited) button.visited {
    background: #333 !important;
    color: #fff !important; }
  #content.common2 .ib .gm-style-iw:has(.visited) p {
    color: #212121; }
  #content.common2 .ib #map {
    height: 1000px !important;
    aspect-ratio: 1/0.75; }
    #content.common2 .ib #map button {
      background: #be981f;
      width: 100%;
      border: none;
      display: block;
      cursor: pointer;
      color: #fff;
      padding: 3px;
      margin: 10px 0 0; }
    #content.common2 .ib #map p {
      margin: 10px 0;
      font-size: 14px;
      padding: 0;
      color: #212121;
      line-height: 1.5; }
      #content.common2 .ib #map p + p {
        margin-top: -4px !important; }
      #content.common2 .ib #map p a {
        text-decoration: underline; }
    #content.common2 .ib #map h3 {
      border: none;
      padding: 0;
      background: none;
      font-size: 20px;
      margin-top: -30px; }
      #content.common2 .ib #map h3:before, #content.common2 .ib #map h3:after {
        display: none; }
  #content.common2 .ib .shop_img {
    width: 100px;
    height: 130px;
    display: block;
    margin: 10px auto;
    border-radius: 50%;
    object-fit: cover; }
#content .mg0 {
  margin: 0 !important; }
#content .cast_list {
  display: flex;
  flex-wrap: wrap;
  width: 100%; }
  #content .cast_list li {
    width: 32%;
    margin-right: 2%;
    margin-bottom: 24px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    #content .cast_list li.active {
      background: #ffedc1; }
      #content .cast_list li.active p, #content .cast_list li.active h4 {
        color: #212121; }
    #content .cast_list li:nth-of-type(3n) {
      margin-right: 0; }
    #content .cast_list li .img {
      width: 100px;
      display: block;
      overflow: hidden;
      border-radius: 6px; }
      #content .cast_list li .img img {
        display: block;
        height: 100px;
        object-fit: cover;
        width: 100%; }
    #content .cast_list li .txt {
      width: calc(100% - 124px); }
      #content .cast_list li .txt p {
        padding: 0;
        font-size: 13px;
        margin: 10px 0 5px; }
      #content .cast_list li .txt h4 {
        margin-bottom: 10px;
        margin-top: 0;
        border: none;
        padding-bottom: 0; }
        #content .cast_list li .txt h4 span {
          display: inline-block;
          font-size: 12px;
          padding-left: 4px; }
        #content .cast_list li .txt h4:before {
          display: none; }
      #content .cast_list li .txt button {
        border: none;
        background: none;
        text-decoration: underline;
        color: red;
        padding: 0;
        margin: 0;
        font-size: 14px;
        text-align: left;
        cursor: pointer; }
#content .foot_book .ib h3 {
  color: #fff; }
  #content .foot_book .ib h3:before {
    display: none; }
  #content .foot_book .ib h3:after {
    display: none; }

.foot_book {
  background: linear-gradient(rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)), url(../img/prism.png);
  z-index: 2;
  position: relative; }
  .foot_book .ib {
    width: 820px;
    padding: 60px 0;
    justify-content: space-between;
    display: flex; }
    .foot_book .ib .img {
      width: 200px;
      height: 330px; }
      .foot_book .ib .img img {
        object-fit: cover;
        width: 100%;
        height: 100%;
        height: 100%;
        width: 100%; }
    .foot_book .ib .txt {
      width: calc(100% - 250px); }
      .foot_book .ib .txt h3 {
        margin-top: 0; }
      .foot_book .ib .txt a {
        border: 2px solid #fff;
        padding: 15px 30px;
        text-align: center;
        font-weight: bold;
        border-radius: 8px;
        margin-top: 20px;
        display: inline-block; }

footer {
  background: #212121;
  font-family: "Yu gothic", "Hiragino Kaku Gothic ProN", "游ゴシック";
  position: relative;
  z-index: 2;
  padding-bottom: 100px; }
  footer .ib {
    padding: 50px 0 20px; }
    footer .ib .logo {
      width: 260px;
      margin: 55px auto;
      display: block; }
    footer .ib .logo_df {
      justify-content: space-between;
      display: flex;
      width: 500px;
      margin: 60px auto; }
      footer .ib .logo_df .box {
        width: 46%; }
        footer .ib .logo_df .box img {
          max-width: 100%;
          display: block;
          margin: 0 auto;
          max-height: 60px; }
    footer .ib nav {
      justify-content: center;
      display: flex;
      margin: 0px 0 40px; }
      footer .ib nav a {
        padding: 0 15px;
        font-size: 14px; }
    footer .ib p.copy {
      font-size: 12px;
      text-align: center; }

/*# sourceMappingURL=style.css.map */
