@charset "utf-8";

a:focus, a:hover{ text-decoration: none; }

#main-view{
	z-index: 9999 !important;
}

@charset "utf-8";

/*
Theme Name: fwj
Template: twentyeleven
Version: 6.0
*/

html {
  font-size: 62.5%;
}
body {
  font-family: "Lato", "Noto Sans Japanese", "游ゴシック Medium", "游ゴシック体",
    "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN",
    "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック",
    "MS PGothic", sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  padding: 0;
  word-wrap: break-word;
  box-sizing: border-box;
  background: rgb(255, 255, 255);
  margin: 0;
}
a,
a img {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
a img:hover {
  opacity: 0.75;
}
strong {
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(70%, rgba(0, 0, 0, 0)),
    color-stop(0%, rgba(255, 235, 59, 0.45))
  );
  background: -webkit-linear-gradient(
    rgba(0, 0, 0, 0) 70%,
    rgba(255, 235, 59, 0.45) 0%
  );
  background: linear-gradient(
    rgba(0, 0, 0, 0) 70%,
    rgba(255, 235, 59, 0.45) 0%
  );
}
dl {
  margin: 0 0 2em;
}
dt {
  line-height: 2.3;
  margin: 0;
  padding: 0 10px;
  border: solid 1px rgb(153, 153, 153);
  background-color: rgb(251, 251, 251);
}
dd {
  line-height: 1.6;
  margin: 0;
  padding: 12px 10px;
}
em {
  color: rgb(255, 0, 0);
  font-style: initial;
}
.font-j {
  font-family: "Lato", "Noto Sans Japanese", "游ゴシック Medium", "游ゴシック体",
    "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN",
    "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック",
    "MS PGothic", sans-serif;
}
.font-fj {
  font-family: "Fjalla One", sans-serif;
}
.inner {
  max-width: 1000px;
  overflow: hidden;
  margin: 0 auto;
  padding: 0 5%;
}
#page {
  max-width: 100%;
  margin: 0 auto;
  background: none;
  position: relative;
  z-index:1111;
}
#main {
  padding: 0 0 60px;
  overflow: hidden;
}
.home #main {
  padding: 0;
}
#content {
  width: 100%;
  margin: 0;
}
#main-view {
  background: rgb(0, 0, 0);
  position: relative;
  z-index: 0;
  overflow: hidden;
}
a[href$=".pdf"]:before {
  font-family: "FontAwesome";
  content: "\f1c1";
  color: rgb(144, 27, 39);
  margin-right: 5px;
}
.ttf-up {
  text-transform: uppercase;
}
.ttf-none {
  text-transform: none !important;
}
.col-w {
  color: rgb(255, 255, 255);
}
.col-y {
  color: rgb(200, 190, 0);
}
.imp {
  font-weight: 900;
}
.box {
  margin-bottom: 2em;
  padding: 1.625em 1.625em 0;
  border: solid 1px rgb(221, 221, 221);
}
.imp-box {
  margin-bottom: 1em;
  padding: 15px 25px 0;
  background: rgb(255, 251, 244);
  border: solid 10px rgb(240, 186, 86);
}
.entry-content .imp-box h3 {
  margin: 10px 0;
}
.imp-box strong {
  color: rgb(255, 0, 0);
  font-size: 1.25em;
}
.box .base-list {
  display: flex;
  webkit-justify-content: space-between;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 2em;
}
.box .base-list a {
  display: block;
  width: 49%;
  margin: 0.5%;
  padding: 5px 20px;
  text-align: center;
  border: solid 1px rgb(221, 221, 221);
  box-sizing: border-box;
}
.box .base-list a:hover {
  text-decoration: none;
  color: rgb(51, 51, 51);
  background: rgb(221, 221, 221);
}
.box li {
  padding: 6px 0;
  border-top: dashed 1px rgb(221, 221, 221);
}
.box li:first-child {
  border: none;
}
a.btn {
  display: block;
  width: 45%;
  color: rgb(204, 204, 0);
  text-decoration: none;
  text-align: center;
  margin: 2em auto;
  padding: 2%;
  border-radius: 3px;
  border: solid 2px rgb(204, 204, 0);
}
a.btn:hover {
  color: rgb(255, 255, 255);
  background: rgb(204, 204, 0);
}
a.btn-y {
  text-decoration: none;
  padding: 2%;
  color: rgb(204, 204, 0);
  display: block;
  width: 45%;
  margin: 1em auto;
  border-radius: 3px;
  border: solid 2px rgb(204, 204, 0);
  opacity: 10;
}
a.btn-y:hover {
  color: rgb(255, 255, 255);
  background: rgb(204, 204, 0);
}
a.btn-r {
  color: rgb(255, 255, 255);
  margin-bottom: 0;
  background: rgb(204, 204, 0);
}
a.btn-r:hover {
  color: rgb(204, 204, 0);
  background: rgb(255, 255, 255);
}
.align-c {
  text-align: center;
}
.marb-0 {
  margin-bottom: 0 !important;
}
#bread-wrap {
  position: relative;
  padding: 5px 0;
  background: rgb(243, 243, 243);
}
#bread-wrap p {
  margin: 0;
  font-size: 13px;
  font-size: 1.3rem;
}
.fb-post {
  margin-bottom: 2em;
}
.iflame {
  margin: 0 auto;
}
blockquote {
  font-family: "Lato", "Noto Sans Japanese", "游ゴシック Medium", "游ゴシック体",
    "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN",
    "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック",
    "MS PGothic", sans-serif;
  font-style: inherit;
  margin: 0 0 2em;
  padding: 5%;
  background: rgb(245, 245, 245);
}
blockquote p,
.entry-content blockquote p {
  font-size: 0.85em;
  margin: 0;
}
blockquote footer {
  text-align: center;
}
.marb30 {
  margin-bottom: 30px;
}
.pc {
  display: block;
}
.sp {
  display: none;
}
img.size-full,
img.size-large {
  max-width: 100%;
}

/* header
--------------------------------*/
.main-st0,
.sub-st0 {
  fill: #9e9e9e;
}
.main-st1,
.sub-st1 {
  fill: #ffffff;
}
.main-st2,
.sub-st2 {
  fill: #fff000;
}
#main-view:before {
  content: "";
  background: inherit;
  -webkit-filter: grayscale(30%) blur(7px);
  -moz-filter: grayscale(30%) blur(7px);
  -o-filter: grayscale(30%) blur(7px);
  -ms-filter: grayscale(30%) blur(7px);
  filter: grayscale(30%) blur(7px);
  position: absolute;
  top: -5px;
  left: -5px;
  right: -5px;
  bottom: -5px;
  z-index: -1;
}
audio,
video {
  display: inline-block;
  max-width: initial;
}
.pattern {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border: 0px solid rgb(0, 0, 0);
  background-image: linear-gradient(
    -45deg,
    rgba(255, 255, 255, 0.1) 25%,
    rgba(0, 0, 0, 0.1) 25%,
    rgba(0, 0, 0, 0.1) 50%,
    rgba(255, 255, 255, 0.1) 50%,
    rgba(255, 255, 255, 0.1) 75%,
    rgba(0, 0, 0, 0.1) 75%,
    rgba(0, 0, 0, 0.1)
  );
  background-size: 4px 4px;
}
#head-wrap,
#schedule,
#colophon {
  //background-color: #f7f4f1;
  background: rgb(0, 0, 0);
  background-image: radial-gradient(rgb(15, 15, 15) 20%, rgba(0, 0, 0, 0) 0),
    radial-gradient(rgb(0, 0, 0) 20%, rgba(0, 0, 0, 0) 0);
  background-position: 0 0, 5px 5px;
  background-size: 5px 5px;
}
#head-wrap .inner {
  max-width: 100%;
  padding: 0 5%;
  background: none;
}
#branding {
  border: none;
  position: initial;
  padding: 0;
}
#site-title {
  position: relative;
  width: 70px;
  margin: 10px 0 4px;
  padding: 0;
  z-index: 9999;
}

/* menu
--------------------------------*/
#responsive-menu-title-image {
  display: none !important;
}
#responsive-menu-container li.responsive-menu-item {
  border-top: solid 1px;
}
#responsive-menu-container #responsive-menu li.responsive-menu-item a {
  text-transform: uppercase;
}

/* countdown
--------------------------------*/
#timer-wrap {
  font-family: "Fjalla One", sans-serif;
  text-align: center;
  text-transform: uppercase;
  color: rgb(255, 255, 255);
  text-shadow: 0px 0px 10px rgb(0, 0, 0), 0px 0px 10px rgb(250, 238, 0);
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
#timer-wrap .timer-logo {
  width: 220px;
  margin: 0 auto 1em;
}
#timer-wrap .timer-logo img {
  width: 100%;
  height: auto;
}
#timer-wrap h2 {
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 0;
  font-size: 40px;
  line-height: 1.25;
  padding-bottom: 5px;
}
#timer-wrap p {
  margin: 0;
  font-size: 20px;
}
#timer-wrap ul {
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  list-style: none;
  width: 450px;
  margin: 0 auto 20px;
  font-size: 22px;
}
#timer-wrap ul li {
  flex: 1;
  padding: 5px 10px;
  border-left: solid 1px rgba(255, 255, 255, 0.2);
}
#timer-wrap ul li:first-child {
  border: none;
}
#timer-wrap ul li span {
  font-size: 18px;
}
#timer-wrap ul li.font-m {
  font-size: 14px;
  line-height: 2.4;
}
.yycountdown-box {
  display: table;
  line-height: 1.3;
  color: rgb(255, 255, 255);
  text-transform: uppercase;
  border-top: solid 1px rgba(255, 255, 255, 0.5);
  border-bottom: solid 1px rgba(255, 255, 255, 0.2);
  margin: 0 auto;
  padding: 0 3% 5px;
}
.yycountdown-box span {
  margin: 0 2px;
}
.yycountdown-box .yyc-day,
.yycountdown-box .yyc-hou,
.yycountdown-box .yyc-min,
.yycountdown-box .yyc-sec {
  font-size: 3em;
  font-weight: 900;
  font-family: "Lato", "Noto Sans Japanese", "游ゴシック Medium", "游ゴシック体",
    "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN",
    "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック",
    "MS PGothic", sans-serif;
}
.yycountdown-box .yyc-day-text,
.yycountdown-box .yyc-hou-text,
.yycountdown-box .yyc-min-text,
.yycountdown-box .yyc-sec-text {
  font-size: 1em;
  font-family: "Fjalla One", sans-serif;
}
p.timer-btn a {
  text-decoration: none;
  font-size: 24px;
  color: rgb(255, 255, 255);
  padding: 5px 30px;
  border: solid 1px;
}
p.timer-btn a:hover {
  color: rgb(250, 238, 0);
  border-radius: 30px;
}
.swiper-count p {
  margin: 0;
}
.swiper-container .swiper-count {
}
.swiper-container .yycountdown-box {
  color: rgb(51, 51, 51);
}
.swiper-container .yycountdown-box span {
  margin: 0 1px;
}
.swiper-container .yycountdown-box .yyc-day,
.swiper-container .yycountdown-box .yyc-hou,
.swiper-container .yycountdown-box .yyc-min,
.swiper-container .yycountdown-box .yyc-sec {
  font-size: 2em;
}

/* =home
----------------------------------*/
.home section {
  padding: 60px 0 90px;
  background: rgb(255, 255, 255);
}
.home section .inner {
}
.home section h2 {
  font-family: "Fjalla One", sans-serif;
  text-align: center;
  font-size: 36px;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 1em;
}
.home section h2 span {
  border-bottom: solid rgb(204, 204, 0);
}
.sub-title {
  text-align: center;
}
.sub-title .fa {
  font-size: 12px;
}
.count-link {
  width: 40%;
  margin: 0 auto;
}
.count-link p {
  line-height: 0;
  margin: 0 0 2em;
  padding: 0;
  color: #fff;
  border: solid 3px rgb(200, 190, 0);
  background: rgb(0, 0, 0);
}
.count-link a {
  display: block;
  color: rgb(255, 255, 255);
  text-decoration: none;
  background: #fff;
}
.count-link img {
  width: 100%;
  height: auto;
  margin: 0;
  background: rgb(0, 0, 0);
}

/* =schedule
----------------------------------*/
#schedule {
  text-align: center;
  //border-top: solid rgb(204, 204, 0);
}
#schedule .inner {
}
.home section#schedule h2 {
  color: rgb(255, 255, 255);
}
.home section h2.widgettitle {
  text-transform: initial;
  font-size: 18px;
  font-weight: 400;
}
#schedule .bx-wrapper {
  background: none;
  border: none;
  box-shadow: none;
  margin: 0 0 3em;
}
.bx-wrapper ul {
  list-style: none;
  margin: 0;
}
#schedule li {
  background: rgb(255, 255, 255);
  padding: 20px;
}
#schedule h3,
#schedule li p.date,
#schedule li p.place-1 {
  font-family: "Fjalla One", sans-serif;
}
#schedule li h3 {
  display: table;
  width: 100%;
  height: 60px;
  margin-bottom: 0.5em;
  padding: 5px 20px;
  border-bottom: solid 1px rgb(221, 221, 221);
  box-sizing: border-box;
}
#schedule li h3 span {
  font-weight: 600;
  font-size: 17px;
  line-height: 1.3;
  text-align: center;
  display: table-cell;
  vertical-align: middle;
}
#schedule li h3 span span {
  display: block;
}
#schedule li p.date {
  text-align: center;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 600;
  margin-bottom: 0.5em;
  border-bottom: solid 1px #ddd;
}
#schedule li p.date span {
  margin: 0 1px;
  font-size: 13px;
  font-size: 1.3rem;
}
#schedule li p.place-1 {
  text-transform: uppercase;
  text-align: center;
  font-size: 15px;
  color: rgb(0, 0, 0);
  margin: 0 20px;
  background: rgb(200, 190, 0);
  border-radius: 60px;
}
#schedule li p.place-2 {
  line-height: 1.4;
  font-size: 13px;
  font-size: 1.3rem;
  text-align: left;
  margin: 0 5% 1em;
  display: table;
  width: 90%;
  height: 30px;
}
#schedule li p.place-2 span {
  line-height: 1.3;
  text-align: center;
  display: table-cell;
  vertical-align: middle;
}
#schedule ul ul {
  list-style: none;
  margin: 5px 0 0;
  width: 100%;
}
#schedule ul ul li {
  text-align: center;
  padding: 0 0 7px;
}
#schedule ul ul li a {
  color: rgb(68, 68, 68);
  width: 100%;
  display: block;
  box-sizing: border-box;
  margin: 0 auto;
  border-radius: 0px;
  text-decoration: none;
  padding: 5px 0;
  font-size: 14px;
  border: solid 1px;
  cursor: pointer;
}
.home #schedule ul ul li a {
  width: 69%;
}
#schedule ul ul li a:hover {
  color: rgb(255, 255, 255);
  background: rgb(200, 190, 0);
  border: solid 1px rgb(200, 190, 0);
}
#schedule ul ul li a.ticket {
  color: rgb(255, 255, 255);
  background: rgb(180, 0, 0);
  border: solid 1px rgb(180, 0, 0);
}
#schedule ul ul li a.entry {
  color: rgb(255, 255, 255);
  background: rgb(60, 125, 0);
  border: solid 1px rgb(60, 125, 0);
}
#schedule ul ul li a.none,
#schedule ul ul li a.none:hover {
  cursor: default;
  color: rgb(223, 223, 223);
  background: rgb(241, 241, 241);
  border: solid 1px rgb(223, 223, 223);
  box-shadow: none;
}
#schedule ul ul li a:hover,
#schedule ul ul li a.ticket:hover,
#schedule ul ul li a.entry:hover {
  border-radius: 0;
  box-shadow: 4px 4px 1px rgb(170, 170, 170);
}
.bx-wrapper .bx-prev {
  left: -50px;
}
.bx-wrapper .bx-next {
  right: -50px;
}
#schedule .bx-wrapper .bx-controls-direction a {
  -webkit-transition: 0s ease-in-out;
  -moz-transition: 0s ease-in-out;
  -o-transition: 0s ease-in-out;
  transition: 0s ease-in-out;
}
#schedule.s-page {
  background: none;
  border: none;
  margin-bottom: 2em;
}
#schedule.s-page ul.bxslider {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
}
#schedule.s-page ul.bxslider li.wrap-box {
  display: flex;
  flex-wrap: wrap;
  width: 32.333%;
  margin: 0.5%;
  box-sizing: border-box;
  border: solid 1px rgb(221, 221, 221);
}
#schedule.s-page ul.bxslider li.wrap-box img {
  width: 100%;
  background: rgb(255, 255, 255);
}
#schedule.s-page ul.bxslider li.wrap-box .image-wrap {
  flex: 1;
  margin-right: 10px;
}
#schedule.s-page ul.bxslider li.wrap-box .text-wrap {
  flex: 2;
}
#schedule.s-page ul.bxslider li.wrap-box.end,
#schedule.s-page ul.bxslider li.wrap-box.end li {
}
.competition-slider {
  max-width: 640px;
  margin: 0 auto;
}
.entry-content .competition-slider ul {
  margin: 0;
}
.competition-slider a {
  -webkit-transition: 0s ease-in-out;
  -moz-transition: 0s ease-in-out;
  -o-transition: 0s ease-in-out;
  transition: 0s ease-in-out;
}
#schedule a.btn {
  margin: 1em auto;
}

/* swiper
=================================================== */
#schedule .swiper-container {
  margin: 0 0 3em;
}
#schedule .swiper-wrapper {
  list-style: none;
}
#schedule li.swiper-slide {
  padding: 20px 0;
}
#schedule .swiper-button-next,
.swiper-container-rtl .swiper-button-prev,
#schedule .swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  color: rgb(0, 0, 0);
  font-size: 30px;
  background: none;
}
#schedule .swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 0px;
}
#schedule .swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 0px;
}
#schedule .swiper-button-next:before {
  font-family: "FontAwesome";
  content: "\f054";
}
#schedule .swiper-button-prev:before {
  font-family: "FontAwesome";
  content: "\f053";
}

/* =special
----------------------------------*/
section#ifbb-pro {
  border-top: solid rgb(204, 204, 0);
  border-bottom: solid rgb(204, 204, 0);
  background: rgb(0, 0, 0);
  background-image: url(images/bg-01.jpg);
  -webkit-background-size: cover;
  background-size: cover;
  background-position: 60% center;
  -webkit-background-attachment: fixed;
  background-attachment: fixed;
  background-size: cover;
}
section#ifbb-pro h2,
section#ifbb-pro p {
  color: rgb(255, 255, 255);
}
section#ifbb-pro ul.content-special {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  list-style: none;
  margin: 0;
}
section#ifbb-pro ul.content-special li {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative;
  text-align: center;
  width: 50%;
  line-height: 1.4;
  border: 1px solid rgb(56, 56, 56);
  box-sizing: border-box;
  font-size: 12px;
  font-size: 1.2rem;
  background: rgba(0, 0, 0, 0.86);
}
section#ifbb-pro ul.content-special li span {
  display: block;
  text-transform: uppercase;
  font-family: "Fjalla One", sans-serif;
  font-size: 17px;
  font-size: 1.7rem;
  font-weight: 600;
  margin-bottom: 5px;
}
section#ifbb-pro ul.content-special li span.thumb {
  flex: 5;
  line-height: 0;
  padding: 1%;
}
section#ifbb-pro ul.content-special li a {
  flex: 7;
  text-align: left;
  display: block;
  text-decoration: none;
  padding: 5%;
  color: rgb(227, 227, 227);
}
section#ifbb-pro ul.content-special li .fa {
  font-size: 20px;
  color: rgb(255, 255, 255);
  margin-right: 10px;
}

section#ifbb-pro ul.content-special li a {
}
section#ifbb-pro ul.content-special li img {
  width: 100%;
  height: auto;
  background: rgb(0, 0, 0);
}

section#rotation ul.content-special {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  list-style: none;
}
section#rotation ul.content-special li {
  width: 49%;
  margin: 0.5%;
  padding: 0;
  box-sizing: border-box;
  background: none;
}
section#rotation ul.content-special li a {
}
section#rotation ul.content-special li img {
  width: 100%;
  height: auto;
}

/* =same contents
----------------------------------*/
#rules ul,
section#rotation ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
}

/* =rules
----------------------------------*/
#rules {
  //color: rgb(255, 255, 255);
  //background-color: rgb(31, 31, 31);
  color:#333;
  background-color: #f7f4f1;/* added */
}
#rules ul li {
  position: relative;
  text-align: center;
  width: 50%;
  line-height: 1.4;
  border: 1px solid rgb(56, 56, 56);
  box-sizing: border-box;
  font-size: 12px;
  font-size: 1.2rem;
  background-color: #333;/* added */
}
.single-competition-list #rules ul li {
  width: 50%;
}
#rules ul li span {
  display: block;
  text-transform: uppercase;
  font-family: "Fjalla One", sans-serif;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 600;
}
#rules ul li span .furigana{
  font-size: 12px;
}
#rules ul li {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
#rules ul li span.thumb {
  flex: 2;
  line-height: 0;
}
#rules ul li span.thumb img {
  width: 100%;
  height: auto;
  background: rgb(31, 31, 31);
}
#rules ul li a {
  flex: 5;
  text-align: left;
  //display: block;
  text-decoration: none;
  padding: 5%;
  color: rgb(227, 227, 227);

  display:flex;
  justify-content:space-between;
}
#rules ul li a:hover {
  color: rgb(204, 204, 0);
}
#rules ul li .fa {
  font-size: 20px;
  margin-right: 10px;
}

/* =rotation
----------------------------------*/
section#rotation {
  background: rgb(240, 240, 240);
}
section#rotation ul li {
  width: 32.333%;
  margin: 0.5%;
}
section#rotation ul li a {
}
section#rotation ul li img {
  width: 100%;
  height: auto;
  background: rgb(0, 0, 0);
}

/* =item-post
----------------------------------*/
.item-wrap {
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  margin: 0 0 3em;
  border-top: solid 1px rgb(221, 221, 221);
  border-right: solid 1px rgb(221, 221, 221);
}
.item-post {
  position: relative;
  width: 33.33%;
  margin: 0;
  padding: 1.5%;
  background: rgb(255, 255, 255);
  border-left: solid 1px rgb(221, 221, 221);
  border-bottom: solid 1px rgb(221, 221, 221);
  box-sizing: border-box;
}
.item-post:nth-child(2n) {
  background: rgb(247, 247, 247);
}
.item-post .pro {
  position: absolute;
  left: 0;
  top: 0;
  max-width: 40px;
  margin: 0;
  z-index: 9999;
}
.item-post .pro img {
  margin: 0;
}
.item-post a {
  text-decoration: none;
  width: 100%;
}
.item-post a:hover,
.item-post a:focus,
.item-post a:hover > img,
.item-post a:focus > img {
  opacity: 0.8;
  color: rgb(25, 130, 209);
  text-decoration: underline;
  text-decoration-color: rgb(25, 130, 209);
}
.item-post img {
  width: 100%;
  height: auto;
  background: rgb(0, 0, 0);
}
.item-post .thumb img {
  height: auto;
}
.item-post-text {
  padding: 1%;
}
.item-post h3 {
  clear: none;
  text-transform: uppercase;
  font-size: 0.94em;
  margin-bottom: 1em;
}
.item-post p,
section#ifbb-pro .item-post p {
  font-size: 0.94em;
  margin: 0 10px 0 0;
  color: rgb(51, 51, 51);
}
.item-cat {
  font-size: 12px;
  font-size: 1.2rem;
  color: rgb(153, 153, 153);
  padding: 5px 0;
  border-top: solid 1px rgb(221, 221, 221);
}
.item-cat .fa {
  margin-right: 3px;
}
.item-cat a {
  color: rgb(153, 153, 153);
}
p.end-text {
  position: absolute;
  top: 5px;
  left: 5px;
  color: rgb(255, 255, 255);
  background: rgb(216, 0, 0);
  padding: 15px 15px;
  box-shadow: 2px 2px 0px rgba(0, 0, 0, 0.5);
}
#ifbb-pro .item-post p.end-text {
  color: rgb(255, 255, 255);
  z-index: 9999;
}

/* =page
----------------------------------*/
.page-header {
  margin: 0 0 1.625em;
}
.post-thmbnail {
  margin-bottom: 1em;
}
.post-thmbnail img {
  width: 100%;
  height: auto;
}
.singular #primary {
  width: 60.953%;
}
.singular #primary.event {
  width: 100%;
}
.singular #content,
.left-sidebar.singular #content {
  margin: 0;
}
.singular.page .hentry,
.singular .hentry {
  padding: 0;
}
.singular .entry-header,
.singular .entry-content,
.singular footer.entry-meta,
.singular #comments-title {
  width: 100%;
}
.entry-title,
.singular .entry-title {
  color: rgb(51, 51, 51);
  font-size: 26px;
  font-weight: bold;
  text-transform: uppercase;
  clear: both;
  line-height: 1.5em;
  border-bottom: solid 2px;
  padding: 0 0 0.3em;
}
.entry-title,
.singular .entry-title img{
  width: 61%;
  margin-left: 30px;
}
.entry-content h2 {
  position: relative;
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 30px;
  padding: 0 0 0.3em;
  border-bottom: solid 1px rgb(204, 204, 204);
}
.entry-content h2 .copy {
  position: absolute;
  right: 0;
  bottom: -20px;
  font-size: 12px;
  font-weight: normal;
}
.entry-content h3 {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1.4;
  margin-bottom: 30px;
  padding-left: 10px;
  border-left: solid 10px;
}
.entry-content h3 span {
  font-size: 14px;
  border-bottom: solid 1px;
}
.entry-content h4 {
  font-weight: bold;
  margin-bottom: 1em;
  border-bottom: dotted 1px;
}
.entry-content ul,
.entry-content ol {
  margin: 0 0 1.625em 20px;
}
.entry-content dd ul,
.entry-content dd ol {
  margin: 0 0 10px 20px;
}
.entry-meta {
  color: rgb(102, 102, 102);
  clear: both;
  font-size: 14px;
  line-height: 18px;
  padding-top: 5px;
}
.singular .entry-header .entry-meta {
  position: initial;
  margin-top: 10px;
  text-align: right;
}
.entry-meta a {
  font-weight: 400;
}
footer.entry-meta {
  padding-top: 10px;
  border-top: solid 1px rgb(221, 221, 221);
}
img[class*="align"],
img[class*="wp-image-"],
#content .gallery .gallery-icon img {
  max-width: 100%;
  border: none;
  margin: 0;
  padding: 0;
}
ul.part-list {
  list-style: none;
  margin: 0 0 2em;
  text-align: center;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
}
ul.part-list li {
  width: 100%;
}
ul.part-list li a {
  display: block;
  color: rgb(255, 255, 255);
  background: rgb(51, 51, 51);
  border: solid 1px;
  padding: 3px 0 2px;
  line-height: 2;
}
ul.part-list li a:hover,
ul.part-list li a.active {
  cursor: pointer;
  text-decoration: none;
  background: rgb(204, 204, 0);
}
.flex-col2 {
  display: flex;
  flex-wrap: wrap;
  margin: 2em 0;
  justify-content: center;
  align-items: center;
  border: solid 1px rgb(221, 221, 221);
}
.flex-col2 a:hover {
  text-decoration: none;
}
.flex-col2 h2 {
  flex: 5;
  margin-right: 10px;
  margin-top: 10px;
}
.flex-col2 h2 span {
  display: block;
  font-size: 14px;
}
.flex-col2 h3 {
  flex: 5;
}
.flex-col2 h3 span {
  display: block;
  font-size: 14px;
  text-transform: initial;
}
.flex-col2 p.img {
  flex: 3;
  margin: 0 20px 0 0;
  line-height: 0;
}
#content .gallery-columns-4 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto 1.625em;
}
#content .gallery-columns-4 .gallery-item {
  float: none;
  width: 24%;
  margin: 0.5%;
  padding: 0;
}
.gallery-item dt {
  line-height: 0;
  padding: 0;
}
.entry-content .wp-caption .wp-caption-text {
  font-family: initial;
  margin-bottom: 0;
  padding: 10px 0 0px 30px;
}
#content .c-npn .gallery-columns-3 .gallery-item .wp-caption-text a,
#content .c-npn .gallery-columns-4 .gallery-item .wp-caption-text a {
  display: none;
}
.va-social-buzz {
  padding-top: 1em;
  border-top: solid 1px rgb(221, 221, 221);
}
.entry-content .impact-l {
  text-align: center;
  font-weight: 900;
  font-size: 30px;
  margin-bottom: 10px;
}
.cat-wrap {
  display: -webkit-flex;
  display: flex;
}
.cat-wrap .text {
  flex: 2;
  margin-left: 20px;
}
.cat-wrap .image {
  flex: 1;
}
.cat-wrap .image img {
  margin: 0;
  width: 100%;
  height: auto;
}
table.comparison,
table.comparison tr,
table.comparison th,
table.comparison td {
  font-size: 14px;
  text-align: center;
  letter-spacing: 0;
  line-height: 1.6;
  margin-bottom: 2em;
  padding: 10px;
  box-sizing: border-box;
  border-collapse: collapse;
  border: solid 1px rgb(221, 221, 221);
}
table.comparison {
}
table.comparison tr {
}
table.comparison th {
  width: 40%;
  font-weight: normal;
  text-align: center;
  background-color: rgb(241, 241, 241);
}
table.comparison th:first-child {
  width: 20%;
}
table.comparison td {
}
.video-container {
  margin-bottom: 20px;
}
.entry-content .sarch-w #s {
  width: auto;
  padding: 0.375em;
  padding-left: 30px;
  height: auto;
  line-height: 1.625;
}

/* =contest-page
----------------------------------*/

/* fadetab */
.fade-tab,
.entry-content .fade-tab {
  list-style: none;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  text-align: center;
  width: 100%;
  margin: 0;
  box-sizing: border-box;
  border-left: solid 1px rgb(221, 221, 221);
  border-right: solid 1px rgb(221, 221, 221);
}
.fade-tab li {
  width: 100%;
}
.fade-tab li a {
  display: block;
  color: rgb(102, 102, 102);
  background: rgb(247, 247, 247);
  border-top: solid rgb(221, 221, 221);
  padding: 10px 0;
  line-height: 2;
}
.fade-tab li a:hover {
  text-decoration: none;
  color: rgb(51, 51, 51);
  border-top: solid rgb(204, 204, 0);
}
.fade-tab li.active a {
  cursor: pointer;
  text-decoration: none;
  color: rgb(51, 51, 51);
  border-top: solid rgb(204, 204, 0);
  background: rgb(255, 255, 255);
}
.tab-content {
  margin-bottom: 2em;
  padding: 4% 4% 0;
  border-left: solid 1px rgb(221, 221, 221);
  border-right: solid 1px rgb(221, 221, 221);
  border-bottom: solid 1px rgb(221, 221, 221);
}
.fade-content {
  clear: both;
  overflow: hidden;
  width: 300px;
  border: 1px solid #eee;
  height: 300px;
}
.fade-area {
  display: none;
  position: relative;
}
.fade-area h3 {
  margin: 30px 0;
}
.fade-area ul {
  list-style: none;
  margin: 0;
}
.fade-area ul li {
  line-height: 1.6;
  padding: 7px 10px;
  border-top: dotted 1px rgb(221, 221, 221);
}
.fade-area ul li:first-child {
  border: none;
}
.fade-area ul li:nth-child(2n) {
  background: rgb(245, 245, 245);
}
.fade-thmubnail img {
  display: block;
  max-width: 80%;
  margin: 0 auto 2em;
}
.entry-content .box ul {
  margin-bottom: 1.625em;
}

dl#point-list {
  overflow: hidden;
}
dl#point-list dt,
dl#point-list dd {
  float: left;
  line-height: 1.6;
  width: 16.666%;
  text-align: center;
  font-weight: normal;
  margin: 0;
  padding: 5px 0;
  border: solid 1px rgb(221, 221, 221);
  box-sizing: border-box;
}
dl#point-list dt,
.bk-d {
  background-color: rgb(241, 241, 241);
}
table.tour-point {
  border-collapse: collapse;
}
table.tour-point tr {
}
table.tour-point th {
  font-size: 13px;
  text-align: center;
  background-color: rgb(241, 241, 241);
}
table.tour-point th,
table.tour-point td {
  text-align: center;
  padding: 3px 0;
  border: solid 1px rgb(221, 221, 221);
}
.pnone p {
  margin: 0;
}
.regi-wrap {
  display: table;
  width: 100%;
  margin-bottom: 2em;
  border-collapse: separate;
  border-spacing: 5px 0;
}
.regi-wrap a {
  width: 30%;
  margin: 0.5em auto;
  display: table-cell;
  vertical-align: middle;
  box-sizing: border-box;
}
.regi-wrap a.btn {
  border-radius: 0;
}
.regi-wrap .ticket,
.regi-wrap .ticket:hover {
  color: rgb(255, 255, 255);
  background: rgb(180, 0, 0);
  border: double 4px rgb(255, 255, 255);
  transition: 0.4s;
}
.regi-wrap .regi,
.regi-wrap .regi:hover {
  color: rgb(255, 255, 255);
  background: rgb(60, 125, 0);
  border: double 4px rgb(255, 255, 255);
  transition: 0.4s;
}
.regi-wrap .card,
.regi-wrap .card:hover {
  color: rgb(255, 255, 255);
  background: rgb(204, 204, 0);
  border: double 4px rgb(255, 255, 255);
  transition: 0.4s;
}
.regi-wrap .judge,
.regi-wrap .judge:hover {
  color: rgb(255, 255, 255);
  background: rgb(144, 27, 39);
  border: double 4px rgb(255, 255, 255);
  transition: 0.4s;
}
.regi-wrap .ticket:hover,
.regi-wrap .regi:hover,
.regi-wrap .card:hover {
  border-radius: 0;
  box-shadow: 4px 4px 1px rgb(170, 170, 170);
}
.regi-wrap a.judge[href$=".pdf"]:before {
  color: rgb(255, 255, 255);
}
.free-space {
  padding: 10px 15px;
}
.home .fade-tab {
  text-transform: initial;
  max-width: 580px;
  margin: 4em auto 3em;
  border: none;
  box-sizing: border-box;
}
.home .fade-tab li a {
  line-height: 1.2;
  font-size: 14px;
  font-size: 1.4rem;
}
.home .fade-tab li.active a {
  color: rgb(255, 255, 255);
  background: rgb(218, 177, 0);
}
.home .fade-tab li:first-child a {
  border-radius: 30px 0 0 30px;
}
.home .fade-tab li:last-child a {
  border-radius: 0 30px 30px 0;
}
.home .fade-tab li a:hover {
  border-top: solid rgb(218, 177, 0);
}
.home .fade-tab li a.notes:hover {
  border-top: solid rgb(200, 0, 0);
}
.home .fade-tab li.active a.notes {
  background: rgb(200, 0, 0);
}
.home .tab-content {
  margin: 0;
  padding: 0;
  border: none;
}
.home .fade-area h3 {
  margin-top: 0;
}

/* =acMenu
----------------------------------*/
#acMenu {
  margin: 0 0 2em;
}
#acMenu dt {
  position: relative;
  cursor: pointer;
  font-weight: normal;
  line-height: 1.6;
  padding: 10px 40px 10px 20px;
}
#acMenu dt:hover,
#acMenu dt.active {
  background: rgb(204, 204, 0);
  color: rgb(51, 51, 51);
}
#acMenu dt:after {
  font-family: "FontAwesome";
  content: "\f0fe";
  position: absolute;
  right: 2%;
  top: 10px;
}
#acMenu dt.active:after {
  font-family: "FontAwesome";
  content: "\f147";
  float: right;
}
#acMenu dd {
  display: none;
}

/* =contact
----------------------------------*/
dl.contact {
}
dl.contact dt {
  line-height: 1;
  padding: 20px 0 0;
  border: none;
  border-top: solid 1px rgb(221, 221, 221);
  background: none;
}
dl.contact dd {
  padding: 10px 0 20px;
}
dl.contact .must:before {
  font-family: "FontAwesome";
  content: "\f069";
  color: rgb(216, 0, 0);
  padding-right: 5px;
}
dl.contact .cover .wpcf7-list-item {
  display: block;
}
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
  background: rgb(250, 250, 250);
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
  border: 1px solid rgb(221, 221, 221);
  color: rgb(136, 136, 136);
  padding: 0.375em;
}
input[type="file"] {
  border: none;
}
input,
textarea {
  font-size: 16px;
  max-width: 100%;
  box-sizing: border-box;
  background-image: -webkit-linear-gradient(
    rgba(255, 255, 255, 0),
    rgba(255, 255, 255, 0)
  );
  border: 1px solid rgb(234, 234, 234);
  border: 1px solid rgba(51, 51, 51, 0.1);
  color: rgb(112, 112, 112);
  color: rgba(51, 51, 51, 0.7);
}
input::-webkit-input-placeholder {
  color: #ccc;
}
input:-ms-input-placeholder {
  color: #ccc;
}
input::-moz-placeholder {
  color: #ccc;
}
.subsc {
  display: inline-block;
  margin-bottom: 10px;
}
dl.contact dd.cont .wpcf7-select {
  height: 30px;
}

/* =sidebar
----------------------------------*/
#secondary {
  width: 30%;
  margin: 0;
  padding: 20px 15px 20px;
  border: solid rgb(228, 228, 228) 4px;
}
.widget_search #s {
  width: 100%;
  box-sizing: border-box;
  height: 36px;
}
.widget ul {
  list-style: none;
}
.widget-title {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.6em;
  color: rgb(255, 255, 255);
  margin-bottom: 25px;
  padding: 5px 15px;
  background: rgb(51, 51, 51);
}
#npcatch img {
  padding: 0 1em 0 0;
}
#npcatch li {
  border-top: solid 1px rgb(221, 221, 221);
  padding: 5px 0;
}
#npcatch li:first-child {
  border: none;
}
#npcatch li a {
  display: table;
  padding: 0.5rem 0;
  width: 100%;
  font-weight: normal;
}
#npcatch span.date {
  overflow: hidden;
  display: block;
}
.wp-tag-cloud a {
  display: inline-block;
  font-size: 14px !important;
  font-weight: 400;
  color: rgb(51, 51, 51);
  margin: 0 3px 5px;
  padding: 0 10px;
  border-radius: 2px;
  border: solid 1px rgb(51, 51, 51);
}
.wp-tag-cloud a:hover {
  text-decoration: none;
  color: rgb(255, 255, 255);
  background: rgb(204, 204, 0);
  border: solid 1px rgb(204, 204, 0);
}
.widget_sp_image {
  line-height: 0;
}
.widget_sp_image img {
  background: rgb(0, 0, 0);
  border: solid 1px rgb(221, 221, 221);
  box-sizing: border-box;
}

/* =scroll btn
----------------------------------*/
a.scroll {
}
a.scroll span {
  position: absolute;
  bottom: 25px;
  left: 50%;
  width: 50px;
  height: 50px;
  margin-left: -23px;
  border: 2px solid #fff;
  border-radius: 100%;
  box-sizing: border-box;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
a.scroll span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  width: 16px;
  height: 16px;
  margin: -12px 0 0 -8px;
  border-left: 2px solid rgb(255, 255, 255);
  border-bottom: 2px solid rgb(255, 255, 255);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  box-sizing: border-box;
}
a.scroll span::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  content: "";
  width: 46px;
  height: 46px;
  box-shadow: 0 0 0 0 rgba(204, 204, 0, 0.2);
  border-radius: 100%;
  opacity: 0;
  -webkit-animation: sdb 3s infinite;
  animation: sdb 3s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 60px rgba(145, 144, 144, 0.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 60px rgba(145, 144, 144, 0.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

/* =sponsors
----------------------------------------------- */
section#sponsors {
}
.sponsors-wrap {
}
.sponsors-area-footer {
  display: flex;
  flex-wrap: wrap;
}
.sponsors-no2 {
  margin: 1em 0;
  padding: 1em 0;
  border-top: solid 1px rgb(221, 221, 221);
  border-bottom: solid 1px rgb(221, 221, 221);
}
.sponsors-area-footer aside img {
  width: 100%;
  height: auto;
  background: rgb(255, 255, 255);
  border: solid 1px rgb(221, 221, 221);
}
.sponsors-area-footer aside {
  line-height: 0;
  margin: 0.5%;
}
.wp-pagenavi {
  clear: both;
  margin-bottom: 1em;
}
.wp-pagenavi a,
.wp-pagenavi span {
  display: inline-block;
}

/* =footer
----------------------------------------------- */
#colophon {
  color: rgb(255, 255, 255);
}
#supplementary {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-transform: uppercase;
  padding: 0;
  border: none;
}
#supplementary.three .widget-area {
  flex: 1;
  margin: 0;
  padding: 4em 1%;
}
#supplementary.three #first {
}
#supplementary.three #second {
}
#supplementary.three #third {
}
#supplementary .footer-logo {
  width: 200px;
  margin: 0;
}
#supplementary .footer-logo img {
  height: auto;
  background: rgb(0, 0, 0);
  background-image: radial-gradient(rgb(15, 15, 15) 20%, rgba(0, 0, 0, 0) 0),
    radial-gradient(rgb(0, 0, 0) 20%, rgba(0, 0, 0, 0) 0);
  background-position: 0 0, 5px 5px;
  background-size: 5px 5px;
}
#supplementary ul.social {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
}
#supplementary ul.social li {
  font-size: 30px;
  margin-right: 10px;
}
#supplementary.three .widget-area .widget-title {
  font-size: 14px;
  margin: 0 0 10px;
  padding: 0 0 5px;
  background: none;
  border-bottom: solid 1px rgb(51, 51, 51);
}
#supplementary.three .widget-area a {
  font-weight: normal;
  color: rgb(153, 153, 153);
}
#archives-dropdown-2 {
  width: 60%;
  height: 30px;
}
#site-generator {
  color: rgb(255, 255, 255);
  padding: 45px 0;
  border: none;
  background: none;
  background: rgb(15, 15, 15);
  text-align: center;
}
.totop {
  display: block;
  color: rgb(255, 255, 255);
  font-size: 0.88em;
  text-align: center;
  text-transform: uppercase;
  padding: 15px 0;
  background: rgb(102, 102, 102);
}
.totop:hover {
  color: rgb(51, 51, 51);
  text-decoration: none;
  background: rgb(204, 204, 0);
}
.totop:focus {
  text-decoration: none;
}

/* other
----------------------------------------------- */
.image-attachment div.attachment {
  margin: 0 0 1.625em;
}

/* =Responsive Structure
----------------------------------------------- */
@-ms-viewport {
  width: device-width;
}
@viewport {
  width: device-width;
}
@media (max-width: 800px) {
  video {
    display: none;
  }
  #main-view {
    background: url(images/home-image.jpg) no-repeat center;
    background-size: cover;
    position: relative;
    z-index: 0;
    overflow: hidden;
  }
  #primary {
    float: none;
  }
  .page-kids-family #main {
    padding-top: 0;
  }
  #main #content {
    margin: 0 auto;
  }
  .singular #primary,
  .singular #primary.contest-wrap {
    width: 100%;
  }
  #main #secondary {
    clear: both;
    margin: 0 0 2em;
  }
  .bx-wrapper .bx-prev {
    left: 10px;
  }
  .bx-wrapper .bx-next {
    right: 10px;
  }
  #rules ul {
    border-bottom: 1px solid rgb(56, 56, 56);
  }
  #rules ul li,
  .single-competition-list #rules ul li {
    text-align: left;
    width: 100%;
    border-bottom: none;
  }
  #rules ul li a {
    padding: 5%;
  }
  #rules ul li .fa {
  }
  #schedule.s-page ul.bxslider li.wrap-box {
    width: 49%;
  }
  .footer-logo {
    margin: 0;
  }
  .footer-logo img {
    width: 20%;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  ul.social {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    -webkit-justify-content: center;
    justify-content: center;
  }
  ul.social li {
    font-size: 30px;
    margin-right: 10px;
  }
  ul.social li a {
    font-weight: normal;
    color: rgb(153, 153, 153);
  }
  #menu-sp-footer {
  }
  #menu-sp-footer li {
    border-bottom: solid 1px rgb(47, 47, 47);
  }
  #menu-sp-footer li:last-child {
    border: none;
  }
  #menu-sp-footer a {
    text-transform: uppercase;
    font-weight: 400;
    display: block;
    color: rgb(255, 255, 255);
    color: rgb(153, 153, 153);
    line-height: 3;
  }
}
@media (max-width: 650px) {
  .inner {
    padding: 0 4%;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  .count-link {
    width: 100%;
  }
  #responsive-menu-title-image {
    display: block;
  }
  #responsive-menu-title-image {
    margin: 0 !important;
  }
  #responsive-menu-title-image img {
    width: 100%;
    height: auto;
  }
  #site-title {
    width: 55px;
    height: auto;
  }
  .swiper-container .yycountdown-box .yyc-sec,
  .swiper-container .yycountdown-box .yyc-sec-text {
    display: inline-block;
  }
  .home section {
    padding: 40px 0 50px;
  }
  .home section h2 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 2;
  }
  .home #schedule li h3 span {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .mov-wrap ul {
    display: block;
  }
  .mov-wrap ul li.list-space {
    margin: 0;
    border: solid 1px #ddd;
    padding: 4%;
  }
  .mov-wrap ul li:not(:last-child) {
    padding-bottom: 1em;
  }
  .mov-wrap ul li {
    width: 100%;
  }
  .weekend-item {
    width: 100%;
  }
  #schedule li h3 span {
    font-size: 18px;
    font-size: 1.8rem;
  }
  #schedule li p.date {
    font-size: 20px;
    font-size: 2rem;
  }
  #schedule li p.place-1 {
    font-size: 12px;
    font-size: 1.2rem;
  }
  #schedule li p.place-2 {
    font-size: 13px;
    font-size: 1.3rem;
  }
  #schedule ul ul li a.entry span {
    font-size: 13px;
  }
  .timer-flex {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    width: 100%;
    height: 70%;
    left: 0;
    right: 0;
    padding: 0;
  }
  #timer-wrap {
    position: initial;
    left: 0;
    right: 0;
    top: 0;
    margin: 0 auto;
    width: 100%;
    height: auto;
    padding: 0 5%;
  }
  #timer-wrap .timer-logo {
    width: 140px;
    margin: 0 auto;
  }
  #timer-wrap h2 {
    font-size: 28px;
    letter-spacing: 0;
  }
  p.timer-btn a {
    font-size: 16px;
  }
  .yycountdown-box {
    display: block;
    font-size: 11px;
    padding: 0;
  }
  #timer-wrap ul li:first-child {
    font-size: 15px;
  }
  #timer-wrap ul,
  #timer-wrap ul li span {
    max-width: 360px;
    width: auto;
    font-size: 10px;
  }
  #timer-wrap ul li.font-m {
    font-size: 12px;
    line-height: 2.2;
  }
  #schedule .swiper-container {
    padding: 0 10%;
  }
  #schedule .swiper-button-next,
  .swiper-container-rtl .swiper-button-prev,
  #schedule .swiper-button-prev,
  .swiper-container-rtl .swiper-button-next {
    color: rgb(255, 255, 255);
  }
  .item-wrap {
    display: block;
    border: solid 1px rgb(221, 221, 221);
  }
  .item-post {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0;
    padding: 2%;
    border: none;
    border-bottom: solid 1px rgb(221, 221, 221);
  }
  .item-post:last-child {
    border: none;
  }
  .item-post .pro {
    max-width: 30px;
  }
  .item-post-text {
    flex: 6;
    font-size: 15px;
    font-size: 1.5rem;
    padding: 5px 5px 0;
  }
  .item-post h3 {
    margin-bottom: 5px;
  }
  .item-cat {
    font-size: 10px;
    font-size: 1rem;
  }
  .home #tab2 .item-post-image,
  .home #tab3 .item-post-image,
  .item-post:nth-child(n + 6) .item-post-image {
    width: 100px;
    height: 100px;
    margin-right: 10px;
  }
  .home #tab2 .item-post-image .thumb img,
  .home #tab3 .item-post-image .thumb img,
  .item-post:nth-child(n + 6) .thumb img {
    justify-content: center;
    align-items: center;
    overflow: hidden;
    object-fit: cover;
    width: 100px;
    height: 100px;
  }
  .home .fade-tab {
    margin: 2em auto 3em;
  }
  .content-major {
    display: block;
  }
  .content-major li {
    width: 100%;
    margin: 3% 0;
  }
  section#rotation ul.content-special {
    display: block;
  }
  section#ifbb-pro ul.content-special li,
  section#rotation ul.content-special li {
    width: 98%;
    margin: 0.5% 1%;
  }
  section#rotation ul li {
    width: 48%;
    margin: 0.5% 1%;
  }
  #contest-title {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .singular .entry-header .entry-meta {
    font-size: 12px;
    margin: 0;
  }
  .entry-title,
  .singular .entry-title {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .singular .entry-title img{
    width: 100%;
    padding: 0px 0;
    margin-left: 0;
  }
  .entry-content h2,
  .entry-content h3 {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .entry-content p,
  .entry-content dt,
  .entry-content dd,
  .entry-content li {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .entry-content ul {
  }
  .entry-content .box ul {
  }
  .entry-content .box ol {
    margin: 0px 10px 20px 10px;
  }
  .entry-content .box ol ul {
    margin: 0;
  }
  .entry-content .box ol ul li {
    padding: 0;
  }
  .entry-content dd ul {
    margin: 0 0 20px 20px;
  }
  .entry-content .fade-area dd {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .entry-content .fade-area dd ul {
    list-style-type: none;
    margin: 0 -10px;
  }
  .fade-thmubnail img {
    max-width: 100%;
    margin: 0 auto 1em;
  }
  .tab-content {
    padding: 8% 3% 0;
  }
  .video-container {
    position: relative;
    margin-bottom: 30px;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
  }
  .video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  ul.part-list {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .imp-box {
    padding: 15px 15px 0;
  }
  .contest-wrap .box {
    padding: 1em 1em 0;
  }
  .contest-wrap .box ul {
    list-style: none;
    margin: 0 5px 1.625em;
  }
  #schedule.s-page ul.bxslider li.wrap-box {
    width: 99%;
    margin-bottom: 20px;
    border: solid 10px rgb(221, 221, 221);
  }
  .box .base-list a {
    display: block;
    width: 100%;
    margin: 0 0 0.5em;
    padding: 5px;
  }
  a.btn {
    width: 75%;
  }
  a.scroll span {
    width: 35px;
    height: 35px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  a.scroll span::before {
    width: 30px;
    height: 30px;
  }
  .entry-content .impact-l {
    font-size: 24px;
  }
  .cat-wrap {
    display: block;
  }
  .cat-wrap .image {
    line-height: 0;
    margin-bottom: 10px;
  }
  .cat-wrap .text {
    margin-left: 0;
  }
  .regi-wrap {
    display: block;
  }
  .regi-wrap a {
    display: block;
    width: 100%;
  }
  .totop {
    padding: 10px 0;
  }
  #colophon .widget {
    margin: 20px 0;
  }
  .footer-logo img {
    width: 40%;
    display: block;
    margin: 0 auto;
  }
}
@media screen and (max-device-width: 650px) {
  #contest-title,
  #timer-wrap h2,
  #schedule li h3 span,
  #schedule li p.date,
  .home section h2 {
    letter-spacing: -1px;
  }
  #contest-title {
    line-height: 1.3;
  }
  #timer-wrap h2 {
    font-size: 40px;
  }
}

@media (max-width: 450px) {
}
@media (max-width: 320px) {
  #timer-wrap .timer-logo {
    width: 40px;
    margin: 0 auto;
  }
  #timer-wrap {
    padding: 0;
  }
  #timer-wrap ul {
    margin: 0 auto 10px;
  }
  #timer-wrap ul li.font-m {
    line-height: 1.6;
  }
  #timer-wrap h2 {
    font-size: 36px;
  }
  #timer-wrap p {
    font-size: 16px;
  }
}

/*--------------------------------
PREV NEXT
---------------------------------*/
#prev_next {
  width: 100%;
  margin: 36px 0 24px;
  padding: 0;
  display: table;
}
#prev_next #prev,
#prev_next #next {
  width: 50%;
  padding: 30px 10px 10px;
  border-top: #ccc 1px solid;
  border-bottom: #ccc 1px solid;
  display: table-cell;
  position: relative;
  text-decoration: none;
}
#prev_next #prev p,
#prev_next #next p {
  font-size: 90%;
  line-height: 1.5;
}
#prev_next #prev:hover,
#prev_next #next:hover {
  background-color: rgba(238, 238, 238, 0.7);
}
#prev_next #prev {
  border-right: #ccc 1px solid;
}
#prev_next #prev_title,
#prev_next #next_title {
  font-size: 90%;
  top: -1em;
  position: absolute;
  border: 1px #ccc solid;
  background: #fff;
  text-align: center;
  padding: 3px;
  color: #666;
}
#prev_next #next_title {
  right: 10px;
}
#prev_next #prev img,
#prev_next #next img {
  margin: 0 auto;
}
#prev_next #prev_no,
#prev_next #next_no {
  width: 50%;
  height: 140px;
  padding: 0 10px;
  display: table-cell;
}
#prev_next #prev_no {
  border-right: #ccc 1px solid;
}
#prev_next_home {
  margin: 0 auto;
  background-color: #39f;
  border: solid 9px #fff;
  width: 100px;
  height: 100px;
  -moz-border-radius: 100px;
  -webkit-border-radius: 100px;
  border-radius: 100px;
  box-shadow: 0 0 0 3px #39f;
  -webkit-box-shadow: 0 0 0 3px #39f;
  -moz-box-shadow: 0 0 0 3px #39f;
  text-align: center;
}
#prev_next_home:hover {
  background-color: rgba(0, 0, 255, 0.7);
}
#prev_next_home i {
  color: #fff;
  margin: 10px auto;
  font-size: 60px;
}
@media only screen and (min-width: 780px) {
  #prev_next #prev,
  #prev_next #prev::before,
  #prev_next #prev::after,
  #prev_next #next,
  #prev_next #next::before,
  #prev_next #next::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  #prev_next #prev_title,
  #prev_next #next_title {
    padding: 3px 10px;
  }
  #prev_next #next_title {
    right: 10px;
  }
  #prev_next #prev img {
    float: left;
    margin-right: 10px;
  }
  #prev_next #next img {
    float: right;
    margin-left: 10px;
  }
}

/**
* SPONSOR
*/

ul.home_sponsors {
  margin: 0.5%;
  padding: 5vh 0;
}
ul.home_sponsors .btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  margin-top: 20px;
}
@media screen and (max-device-width: 650px) {
  ul.home_sponsors .btns {
    justify-content: space-around;
  }
}
ul.home_sponsors .btns a {
  display: block;
  margin-right: 10px;
  border: solid 3px #fff;
  padding: 8px 20px;
  color: #fff;
  line-height: 1;
  text-align: center;
  font-size: 14px;
  width: calc(32% - 40px);
  transition: 0.3s all;
}
ul.home_sponsors .btns a.detail:hover {
  border-color: green;
  background-color: green;
  color: #fff;
}
ul.home_sponsors .btns a.outer:hover {
  border-color: red;
  background-color: red;
  color: #fff;
}
@media screen and (max-device-width: 650px) {
  ul.home_sponsors .btns a {
    width: 42%;
    padding: 8px 0;
    margin: 0;
  }
}
ul.home_sponsors li {
  list-style: none;
  padding: 45px 6vw;
  margin-bottom: 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #000;
}
ul.home_sponsors li figure {
  width: 30%;
  margin: 0;
  padding: 0;
}
ul.home_sponsors li figure img {
  width: 100%;
}
@media screen and (max-device-width: 650px) {
  ul.home_sponsors li figure {
    width: 100%;
  }
}
ul.home_sponsors li .txt {
  width: 60%;
}
ul.home_sponsors li .txt p {
  color: #efefef;
  margin: 0;
  padding: 0;
}
ul.home_sponsors li .txt p.title {
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1;
}
ul.home_sponsors li .txt p.copy {
  padding-top: 1em;
  font-size: 1.3rem;
  line-height: 1.7;
}
@media screen and (max-device-width: 650px) {
  ul.home_sponsors li .txt {
    width: 100%;
  }
  ul.home_sponsors li .txt p.title {
    font-size: 1.9rem;
    padding-top: 15px;
  }
}
ul.home_sponsors li.black {
  background-color: #000;
}
ul.home_sponsors li.white {
  background-color: #fff;
}
ul.home_sponsors li.white .btns a {
  border: solid 3px #000;
  color: #000;
}
ul.home_sponsors li.white p {
  color: #333;
}

/* added 240528 */
a.splp_banner{display:block;max-width:800px;width:95%;margin:0 auto}a.splp_banner img{width:100%;border-radius:10px}a.splp_banner span{display:block;text-align:center;color:#333;font-weight:bold}



/* added 250311 for humberger_nav */
.nav-open{display:none}@media screen and (max-width: 1024px){.nav-open{display:inline-block;width:70px;height:70px;position:fixed;top:12px;right:14px;padding:0;z-index:8889}.nav-open img{width:100%}}@media screen and (max-width: 767px){.nav-open{width:50px;height:50px;top:12px;right:14px}}.nav-area{visibility:hidden;opacity:0;position:fixed;z-index:8999;top:0;left:0;width:100%;height:100%;transition:.4s;background-color:#333;display:flex;flex-wrap:wrap}.nav-area .nav-close{display:block;position:fixed;width:50px;height:50px;top:12px;right:14px;z-index:9099;cursor:pointer}.nav-area .nav-close svg{width:100%;fill:#fff}.is-show{visibility:visible;opacity:1}.nav-area{display:flex;justify-content:center;align-items:center}.nav-area nav ul{margin:0}.nav-area nav ul li{padding:1.5vw 0}.nav-area nav ul li a{font-weight:600;font-size:2.2vw;color:#fff}@media screen and (max-width: 767px){.nav-area nav ul li a{font-size:4.4vw}}.nav-area nav ul li a.inquiry{display:inline-block;background-color:#ff0;color:#000;padding:10px 16px;border-radius:8px}.nav-area nav ul li.dropdown span{color:#fff}.nav-area nav ul li.dropdown ul.dropdown-content{margin-top:1em;margin-left:1em}.nav-area nav ul li.dropdown ul.dropdown-content li{padding:.6vw 0}.nav-area nav ul li.dropdown ul.dropdown-content li a{font-size:85%}



/* added 241101 for media form */
a.mediaForm{display: block;width: 45%;background-color: rgb(204, 0, 0);color: #fff;border-radius: 6px;text-decoration: none;text-align: center;margin: 2em auto;padding: 2%;border-radius: 3px;border: solid 2px rgb(204, 0, 0);}
a.mediaForm:hover{background-color: #fff;color: rgb(204, 0, 0);}
@media screen and (max-width: 767px){a.mediaForm{width: 70%}}

/* added 241107 for 2025 schedules */
.no-schedule-message{max-width: 640px;width: 90%;margin: 5vh auto 10vh; }
.no-schedule-message h2{font-size: 130%;font-weight: bold; line-height: 1.3;padding-bottom: 6vh;}
.no-schedule-message p{text-align: left; font-size: 1em; line-height: 1.9;}

/* added 250126 for Regidtration Modal */
a.anc-contact.dark{
  border: solid 1px rgb(46, 136, 30);
  background-color: #176717;
}
.inner a.dope-list{
  margin-top: 20px;
}

.modal__content{top:56%;height:80%}h3.registration{font-size:16px;color:#333;font-weight:bold;line-height:1;padding-bottom:12px;margin:25px 0 0}h3.open-natural{font-size:1.6rem;font-weight:700;padding-left:10px;border-left:solid 10px;margin-bottom:12px}h3.open-natural.bottom{margin-top:1.4em}ul.resister{display:flex;flex-wrap:wrap;justify-content:center}ul.resister li{border-top:none}ul.resister li:nth-child(2n){background:#fff}@media screen and (max-width: 767px){ul.resister li{width:100%}ul.resister li a{display:block;max-width:100%}}ul.resister a.anc-contact{max-width:200px}


/* added 250311 dropdown menu */
.global ul .dropdown{position:relative;display:inline-block}.global ul .dropdown span{font-size:1.4rem;font-weight:bold;color:#fff;cursor:pointer}.global ul .dropdown span::after{content:"▼";font-size:.7em;margin-left:5px;display:inline-block;transition:transform .3s}.global ul .dropdown:hover .dropdown-content{max-height:500px;opacity:1;transform:translateY(0)}.global ul .dropdown:hover .dropdown-content li{opacity:1}.global ul .dropdown-content{position:absolute;top:100%;left:0;background-color:#fff;min-width:200px;box-shadow:0 8px 16px rgba(0,0,0,.2);z-index:1000;border-radius:4px;text-align:left;flex-direction:column;max-height:0;overflow:hidden;opacity:0;transform:translateY(-10px);transition:all .3s ease-in-out}.global ul .dropdown-content li{display:block;padding:0;margin:0;width:100%;opacity:0;transition:all .3s ease-in-out}.global ul .dropdown-content li a{display:block;padding:10px 15px;text-decoration:none;transition:background-color .2s;color:#222;white-space:nowrap}.global ul .dropdown-content li a:hover{color:#222;background-color:#ff0}.global ul .dropdown-content:hover span::after{transform:rotate(180deg)}

@media screen and (min-width: 767px){#main-view{margin-top:80px}}


/* added 25031２ fv */
#branding .logo-container{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);z-index:10;text-align:center}#branding .logo-container img{max-width:140px;width:100%;height:auto;margin:0 auto 12px;-o-object-fit:contain;object-fit:contain}#branding .logo-container span{display:block;font-family:"Fjalla One",sans-serif;font-size:5.4rem;line-height:1.4;text-align:center;text-transform:uppercase;color:#fff;text-shadow:0px 0px 10px #000,0px 0px 10px #faee00}@media screen and (max-width: 767px){#branding .logo-container span{font-size:3.6rem}}@media screen and (max-width: 767px){#branding{height:80vh}#branding .swiper-slide img{width:auto;height:80vh;-o-object-fit:contain;object-fit:contain;-o-object-position:-320px 50%;object-position:-375px 50%}}

/* added 25031２ event card */
#schedule li.swiper-slide{padding:0 0 12px}#schedule li.swiper-slide img{width:auto;height:100%;-o-object-fit:cover;object-fit:cover}@media screen and (max-width: 767px){#schedule li.swiper-slide img{height:100vh}}#schedule li.swiper-slide img.poster-image{width:100%;height:auto}#schedule li.swiper-slide p.place-2{height:40px}#schedule li.swiper-slide ul.btns{min-height:125px}



/* added 25031２ timetable PDF link */
a.anc-timetable{position:relative;display:block;max-width:150px;text-decoration:none;color:#fff;z-index:2;overflow:hidden;margin:5px auto;padding:10px 20px;background:#54a546;border:solid 1px #58da42;box-shadow:1px 2px 1px rgba(0,0,0,.3);border-radius:3px}a.anc-timetable:before{color:#fff}


/* added 250326 出場規約 */
.participation-terms{border:solid red;margin:1em 0 0}.participation-terms h2{font-size:16px;font-weight:600;text-align:center;color:#fff;padding:10px;margin:0;background:red}.participation-terms .participation-terms-container{height:20vh;overflow-y:scroll;padding:0 2vw 2vw}.participation-terms .participation-terms-container h3{margin:2.5em 0 0;font-size:16px;font-weight:bold}@media screen and (max-width: 767px){.participation-terms .participation-terms-container h3{margin:1.5em 0 0}}.participation-terms .participation-terms-container ul{display:block;list-style-type:disc;-webkit-margin-before:1em;margin-block-start:1em;-webkit-margin-after:1em;margin-block-end:1em;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px;-webkit-padding-start:40px;padding-inline-start:40px;unicode-bidi:-webkit-isolate;unicode-bidi:-moz-isolate;unicode-bidi:isolate}.participation-terms .participation-terms-container ul ul{list-style-type:circle;-webkit-margin-before:0px;margin-block-start:0px;-webkit-margin-after:0px;margin-block-end:0px}.participation-terms .participation-terms-container li{font-size:14px;line-height:1.6;padding:5px 0;background-color:#fff !important;border:none}

/* added 250408 MOTJ-banner */
.motBarnner {background-color: #000;text-align: center;padding: 10px 10px 0;}
.motBarnner picture {max-width: 960px;width: 100%;margin: 0 auto;}
.motBarnner picture source {max-width: 960px;width: 100%;margin: 0 auto;}
.motBarnner picture img {max-width: 960px;width: 100%;margin: 0 auto;transition: transform 0.3s ease;}
.motBarnner a {display: inline-block; margin-bottom:50px;}

tr.checkin{border:2px solid red}

/* added 250421 photo gallery */
.photo-gallery{background-color:#fbfaf7 !important;padding:70px 0}.photo-gallery .gallery_wrapper{max-width:1240px;width:88%;margin:0 auto}.photo-gallery .gallery_wrapper h2{font-family:"Fjalla One",sans-serif;font-optical-sizing:auto;font-weight:800;font-size:5rem;line-height:1;text-align:left;text-transform:none;margin-bottom:0;padding-bottom:15px}@media screen and (max-width: 767px){.photo-gallery .gallery_wrapper h2{font-size:4rem}}.photo-gallery .gallery_wrapper p{font-family:"Fjalla One",sans-serif;font-optical-sizing:auto;font-weight:700;font-style:normal;font-size:1.6rem;line-height:1}.photo-gallery .gallery_wrapper p a{color:#333}.photo-gallery .gallery_wrapper p a:hover{text-decoration:underline}.photo-gallery .gallery_wrapper .ig_feed .sbi_item{transform:rotate(-3deg);border-radius:10px}.video-gallery{display:grid;grid-template-columns:repeat(3, 1fr);gap:20px}@media screen and (max-width: 767px){.video-gallery{grid-template-columns:repeat(1, 1fr)}}.video-gallery .video-thumbnail{position:relative;cursor:pointer;width:100%;aspect-ratio:16/9;overflow:hidden}.video-gallery .video-thumbnail img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:10px}.video-gallery .video-thumbnail .play-button{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);font-size:30px;color:#fff;background:rgba(0,0,0,.5);border-radius:50%;padding:10px 20px}#video-modal{position:fixed;z-index:9999;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);display:none;align-items:center;justify-content:center}#video-modal.show{display:flex}#video-modal .modal-content{position:relative;width:90%;max-width:800px}#video-modal #video-container iframe{width:100%;height:450px}#video-modal #modal-close{position:absolute;top:-30px;right:-10px;background:none;border:none;color:#fff;font-size:32px;cursor:pointer}

/* added 250621  */
article.checkin .box{padding:1.625em}article.checkin p{margin-bottom:1.625em}

/* added 250709 */
.home_category{padding:10vh 4vw}.home_category a{display:block;max-width:840px;width:100%;margin:0 auto}.home_category a img{width:100%}.category-introduction{border:3px solid red;margin-bottom:20px;max-height:150px;overflow-y:auto}.category-introduction h2{background-color:red;display:block;text-align:center;font-size:1.75rem;font-weight:bold;padding:15px;line-height:1;color:#fff}.category-introduction .category-introduction-inner{padding:30px;margin-bottom:15px}.category-introduction p{padding:0;margin-bottom:0}

/* added 25031２ ヘッダ上のマージン調整 */
#page{margin: 60px auto 0;}
#page.splp{margin: 0px auto 0;}
@media screen and (max-width: 767px){#page{margin:0 auto;}}
@media screen and (min-width: 767px){#main-view{margin-top:80px}}

/* added 251003 for JapanProWeekend_banner */
a.tpss_banner{ display:block;background-color:#000;padding-top: 80px; }
a.tpss_banner img{ display:block;width:100%;height:auto; }
a.tpss_banner img:hover{ opacity:1; }
@media screen and (max-width: 767px){a.tpss_banner{padding-top: 0;}}
#main-view{margin-top:0px} /*JPW終わったら消す*/
//#page{margin: 0px auto 0;} /*JPW終わったら消す*/

/* added 251008 for JPW gym info */
.gymInfo tr,.gymInfo th,.gymInfo td{box-sizing:border-box}.gymInfo tr th a,.gymInfo th th a,.gymInfo td th a{font-weight:bold}.gymInfo tr td,.gymInfo th td,.gymInfo td td{font-size:1.4rem;line-height:1.5}

/* added 260219 for CHECK POINT block */
.checkpoint{
	position:relative;
	margin:80px 0 50px 0;
	padding:30px 30px 30px;
	border:3px solid #000;
	border-radius:0 15px 0 15px;
	background-color:#fff
}

.checkpoint .label{position:absolute;top:-36px;left:-3px;background-color:#056fee;color:#fff;font-size:14px;font-weight:900;font-family:sans-serif;padding:8px 35px;border:3px solid #000;border-radius:15px 15px 0 0;white-space:nowrap;line-height:1}.checkpoint p{margin:0 0 1.5em;line-height:1.8;font-size:16px;color:#333}.checkpoint p:last-child{margin-bottom:0}

/* added 240530 */
#scrollTopBtn { position: fixed; width: 100px; bottom: 20px; right: 20px; border: none; outline: none; cursor: pointer; background-color: transparent; z-index: 6666; opacity: 0; visibility: hidden;transition: opacity 0.5s ease-in-out;@media screen and (max-width: 1024px){width:65px;bottom:10px;right:14px;}}
#scrollTopBtn img{width: 100%;}

/* added 260220 for fwj-app sticky — 2026.04.12 より #stickyDock へ移行（下記ブロック参照） */

@media screen and (max-width: 767px) {
  #branding .swiper-slide img {
    width: 100%;
    height: auto;
    object-position:0;
  }
}
@media screen and (max-width: 767px) {
  #branding {
      height: auto;
  }
}

/* added 2026.04.12 sticky dock（promo + stickyBtns、added.scss と同期） */
#stickyDock{position:fixed;z-index:6667;display:flex;flex-direction:column;align-items:stretch;gap:4px;opacity:0;visibility:hidden;transition:opacity .5s ease-in-out}#stickyPromoBtns{display:flex;flex-direction:column;gap:4px}#stickyPromoBtns a{text-decoration:none;display:block;border:none;outline:none;cursor:pointer;background-color:rgba(0,0,0,0)}#stickyPromoBtns a img{width:100%;height:auto;display:block;vertical-align:bottom}#stickyBtns{display:flex}#stickyBtns a{text-decoration:none;display:block}#stickyBtns a img{width:100%;height:auto;display:block}@media screen and (max-width: 767px){#stickyDock{bottom:0;left:0;right:0;gap:1px;padding-bottom:env(safe-area-inset-bottom)}#stickyPromoBtns{flex-direction:row;width:100%;gap:1px}#stickyPromoBtns a{flex:1;min-width:0}#stickyBtns{flex-direction:row;width:100%}#stickyBtns a{flex:1;min-width:0}}@media screen and (min-width: 768px){#stickyDock{bottom:20px;right:12px;align-items:flex-end}#stickyPromoBtns{width:140px}#stickyBtns{flex-direction:column;gap:4px;width:180px}}

/* added 2026.04.19 大会終了アナウンス */
.contest-ended-message{display: block;margin: 0 auto;max-width:190px;padding-top:20px;font-size:13px;line-height:1.6}

/* 2026.04.24 投稿内.box要素のpadding調整 */
.entry-content .box{padding-bottom:1.625em}
.entry-content .box a img{margin-top:20px;}

/* 2026.04.28 FWJアプリLPに使い方へのリンクボタン追加 */
a.howtoapp{display: block;max-width:400px;width:80%;margin:0vh auto 10vh}a.howtoapp img{width:100%}

/* added 260503 for contest media box */
.contest-media-box{background:#111;padding:36px 0}.contest-media-box .inner{max-width:900px;margin:0 auto;padding:0 20px}.contest-media-box .contest-media-ttl{text-align:center;font-family:"Fjalla One",sans-serif;font-size:20px;font-weight:bold;color:#fff;letter-spacing:.12em;margin-bottom:24px}.contest-media-box .contest-media-btns{display:flex;gap:16px;justify-content:center}@media(max-width: 767px){.contest-media-box .contest-media-btns{flex-direction:column;align-items:center}}.contest-media-box .contest-media-btn{display:block;flex:1;max-width:420px}.contest-media-box .contest-media-btn img{width:100%;height:auto;display:block}@media(max-width: 767px){.contest-media-box .contest-media-btn{width:100%;max-width:420px}}


/* 2026.05.17 REWARD PROGRAM案内をsingle-content-2026に追加 */
.reward-program-block{background:#111;padding:40px 0;border-radius:15px;margin-top:30px;margin-bottom:15px}.reward-program-block .reward-program-inner{display:flex;align-items:stretch;max-width:960px;margin:0 auto;padding:0 20px;gap:0}.reward-program-block .reward-program-text{flex:1;display:flex;flex-direction:column;justify-content:center;padding-right:32px}.reward-program-block .reward-program-ttl{font-family:"Fjalla One",sans-serif;font-size:clamp(16px,2.2vw,22px);color:#4caf50;letter-spacing:.06em;line-height:1.3;margin-bottom:16px}.reward-program-block .reward-program-desc{font-size:13px;color:#eee;line-height:1.9;margin-bottom:24px}.reward-program-block .reward-program-desc strong{font-size:120%;font-weight:bold;background:none;color:#ff0}.reward-program-block .reward-program-btns{display:flex;gap:12px;flex-wrap:wrap}.reward-program-block .reward-program-btn{display:inline-block;padding:12px 20px;background:#4caf50;color:#fff;font-size:13px;font-weight:bold;text-decoration:none;border-radius:4px;text-align:center;min-width:120px;transition:background .2s}.reward-program-block .reward-program-btn:hover{background:#388e3c}.reward-program-block .reward-program-img{flex:0 0 50%;max-width:50%}.reward-program-block .reward-program-img picture,.reward-program-block .reward-program-img img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}@media(max-width: 767px){.reward-program-block{padding:0}.reward-program-block .reward-program-inner{flex-direction:column;padding:0;gap:0}.reward-program-block .reward-program-img{flex:none;max-width:100%;order:-1}.reward-program-block .reward-program-img picture,.reward-program-block .reward-program-img img{height:auto;-o-object-fit:unset;object-fit:unset}.reward-program-block .reward-program-text{padding:28px 20px 32px}.reward-program-block .reward-program-ttl{font-size:16px}.reward-program-block .reward-program-desc{font-size:13px}.reward-program-block .reward-program-btn{flex:1;min-width:0}}

.btn-red {
  display: block;
  width: 45%;
  color: #fff;
  text-decoration: none;
  text-align: center;
  margin: 0 auto 1em;
  padding: 2%;
  background: rgb(171, 4, 0);
  background: linear-gradient(to bottom, rgb(218, 15, 0), #b30400);
  box-shadow: 0 3px 0 #c62828;
  border-radius: 3px;
}
.btn-red:focus,
.btn-red:hover{
  opacity: 0.7;
}
.fixed-wh {
	display: block;
	overflow-x: scroll;
	overflow-y: scroll;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
}
.fixed-wh th,
.fixed-wh td {
	vertical-align: middle;
	padding: 0 5px;
	border: 1px solid #ccc;
}
.fixed-wh .fixed01,
.fixed-wh .fixed02 {
	position: sticky;
	top: 0;
	left: 0;
	color: #fff;
	background: #333;
}
.fixed-wh .fixed01:before,
.fixed-wh .fixed02:before {
	content: "";
	position: absolute;
	top: -1px;
	left: -1px;
	width: 100%;
	height: 100%;
	border: 1px solid #ccc;
}
.fixed-wh .fixed01 {
	z-index: 2;
}
.fixed-wh .fixed02 {
	z-index: 1;
}
ol {
	list-style-type: decimal-leading-zero;
}
.mob-menu-header-holder{
	width: auto !important;
	position: absolute !important;
}
.mobmenu-right-panel{
	background: #000 !important;
}
#mobmenuright li a{
	font-size: 15px !important;
}
#mobmenuright li{
	padding: 0 !important;
	border-bottom: solid 1px #222;
}



@media screen and (max-width: 8000px){
	#responsive-menu-container #responsive-menu li.responsive-menu-item a {
		height:  auto !important;
		padding: 0.5% 5% !important;
	}
}
#cookie-law-info-bar{
	font-size: 10px;
	background-color: rgba(255, 255, 255, 0.95) !important;
}
.home section.gray {
	background: rgb(240, 240, 240);
}
.home.singular #primary{
	width: 100%;
}
#timer-wrap .timer-logo {
	width: 160px !important;
}
.home #bread-wrap{
	display: none;
}
#timer-wrap .timer-logo.oajp{
	width: 200px;
}
.widget img{
	max-width: none;
}
.top-imp {
	display: block;
	font: 16px "Helvetica Neue", Helvetica, Arial, sans-serif;
	text-shadow: none;
	font-weight: bold;
	max-width: 270px;
	color: #fff;
	margin: 30px auto;
	padding: 15px;
	background: rgb(171, 4, 0);
	background: linear-gradient(to bottom, rgb(218, 15, 0), #b30400);
	border-color: #e57373;
	border-width: 1px;
	border-radius: 5px;
	box-shadow: 0 3px 0 #c62828;
}
.top-imp:hover,
.top-imp:focus{
	text-decoration: none;
	background: rgb(255, 67, 63);
	background: linear-gradient(to bottom, rgb(255, 64, 49), #de3430);
}
.top-imp .fa-clipboard-list{
	margin-right: 6px;
}

.category_area{
  margin-bottom: 50px;
}

.category_area ul {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 20px;
  padding: 0;
  margin: 0;
  list-style: none;
  background: none;
}

/* 1〜4枚目：4カラム */
.category_area li:nth-child(1) {
  grid-column: 1 / span 3;
}

.category_area li:nth-child(2) {
  grid-column: 4 / span 3;
}

.category_area li:nth-child(3) {
  grid-column: 7 / span 3;
}

.category_area li:nth-child(4) {
  grid-column: 10 / span 3;
}

/* 5〜7枚目：3カラム・左寄せ */
.category_area li:nth-child(5) {
  grid-column: 1 / span 3;
}

.category_area li:nth-child(6) {
  grid-column: 4 / span 3;
}

.category_area li:nth-child(7) {
  grid-column: 7 / span 3;
}

/* 8〜10枚目：3カラム・左寄せ */
.category_area li:nth-child(8) {
  grid-column: 1 / span 3;
}

.category_area li:nth-child(9) {
  grid-column: 4 / span 3;
}

.category_area li:nth-child(10) {
  grid-column: 7 / span 3;
}

.category_area ul li{
  background: none;
  border-top: none;
  padding: 0;
  overflow: hidden;
}

.category_area ul li img {
  transition: transform 0.3s ease;
  display: block;
  width: 100%;
  height: auto;
}

.category_area ul li:hover img {
  transform: scale(1.05);
}

p.category_title {
  font-size: 18px;
  font-weight: 900;
  font-family: sans-serif;
  border-bottom: 2px solid #000;
  padding-bottom: 7px;
}

.category_area ul li:nth-child(2n){
  background: none;
}

.category_area li img {
  display: block;
  width: 100%;
  height: auto;
}

.category_area ul.backstagepass{
  grid-template-columns: repeat(2, 1fr);
}

.category_area ul a{
  text-decoration: none;
}

.category_area ul li.backstagepass_btn{
  width: 100%;
  font-weight: 600;
  text-align: center;
  margin: 5px auto;
  padding: 15px 0;
  color: #fff;
  background: rgb(84, 165, 70);
  border: solid 1px rgb(88, 218, 66);
  box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.3);
  border-radius: 3px;
}

.category_area ul li.backstagepass_btn:hover{
  background: rgb(97 182 83);
}

.imp-red {
	display: inline-block;
	color: rgb(255, 255, 255);
	margin-bottom: 5px;
	padding: 0 7px;
	background: #f00;
}
.head-imp {
	position: relative;
	z-index: 9999;
	background: rgb(202, 0, 0);
	border-top: solid rgb(140, 0, 0);
	border-bottom: solid rgb(140, 0, 0);
}
.head-imp dl{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	font-size: 14px;
	line-height: 1;
	margin: 0;
	padding: 10px 0;
}
.head-imp dl dt {
	flex: 1;
	max-width: 70px;
	text-align: center;
	line-height: 1.6;
	padding: 0;
	color: rgb(255, 255, 255);
	border: none;
	background: none;
}
.head-imp dl dd{
	position: relative;
	flex: 7;
	line-height: 1.5;
	padding: 0 20px 0 0;
}
.head-imp dl a {
	color: rgb(255, 255, 255);
	line-height: 1.4;
	display: block;
}
.head-imp dl a:hover{
	text-decoration: none;
}
.head-imp dl a:after {
	font-family: 'FontAwesome';
	content: "\f054";
	font-size: 1.6em;
	position: absolute;
	right: 0;
	top: 50%;
	bottom: 50%;
	line-height: 0;
}
@media (max-width: 650px) {
	#timer-wrap .timer-logo.oajp{
		width: 130px;
	}
}
.Fjalla{
	font-family: 'Fjalla One', sans-serif;
}
.pattern{
	z-index: 9;
}
#timer-wrap{
	z-index: 10;
}
#branding audio,
#branding video {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	left: 0;
	right: 0;
	padding: 0;
	width: 100%;
}
.entry-content th, .comment-content th{
	color: #373737;
	font-size: 1em;
	letter-spacing: 0;
	line-height: 1.6em;
	text-transform: none;
}
.fontm{
	font-size: 14px;
}
.entry-content h3.semi-sub-title{
	line-height: 2.3;
	margin: 20px 0;
	padding: 0 10px;
	border: solid 1px rgb(153, 153, 153);
	background-color: rgb(251, 251, 251);
	font-size: 16px;
}
#rules ul li span.new-b {
	background: #c30000;
	width: 40px;
	text-align: center;
	font-size: 12px;
	padding: 1px 0 0px;
	font-weight: 400;
}
#npcatch li figure{
	margin: 0;
}
#npcatch img{
	max-width: 100px !important;
}

.sp-banner{
	max-width: 860px;
	margin: 2em auto 0;
}
.sp-banner img{
	width: 100%;
	height: auto;
}
.fa-external-link{ margin: 0 5px; }


/* =single-contest.php
----------------------------------*/
.flex {
	display: -webkit-flex;
	display: flex;
}
.single-contest #main,
.tax-schedule #main,
.post-type-archive-contest #main{
	padding: 0;
}
.singular .entry-header{
	position: relative;
	margin-bottom: 30px;
}
#contest-header{
	margin: 0;
}
.contest-title-wrap{
	position: relative;
	height:100%;
	padding: 38px 0;
	background-size: cover;
  background-image: url(img/top_bg.jpg);
}
.contest-title-wrap:before{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
	background-color: none;
}
.contest-archive-wrap {
	margin-bottom: 30px;
	padding: 50px 0;
	/* background: rgb(51, 51, 51); */
}
.contest-archive-wrap #contest-title{
	text-align: center;
	color: rgb(255, 255, 255);
}
.single-competition #main{
	padding: 0 0 60px;
}
.contest-title-wrap.Competition-wrap{
	margin-bottom: 40px;
	padding: 60px 0;
	background: rgb(0, 0, 0);
}
.single-competition #contest-header #contest-title{
	text-align: center;
}
.c-sub-title{
	font-size: 40px;
	line-height: 1.2;
}
.details-table .c-sub-title{
	font-size: 1em;
	line-height: 1;
}
.table-osaka{
	margin-bottom: 15px;
}
.table-tokyo{
	margin-top: 15px;
}
.Classification,
#contest-title{
	position: relative;
	font-weight: 400;
	font-family: 'Fjalla One', sans-serif;
}
.Classification {
	position: relative;
	display: inline-block;
	font-size: 18px;
	line-height: 1.4;
	color: #000;
	margin: 0;
	padding: 3px 10px;
	background: rgb(255, 255, 255);
}
.Classification:before{
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: 2px;
	left: calc(-100% - 0px);
	top: 50%;
	margin-top: -2px;
	background: rgb(255, 255, 255);
}
.Classification span{
	color: #fff;
	background: #000;
	margin-left: 5px;
	padding: 0 10px;
}
#contest-title {
	font-size: 60px;
	font-size: 6.0rem;
	line-height: 1.1;
	text-align: left;
	text-transform: uppercase;
	padding: 0;
	border: none;
}
#contest-header #contest-title {
	color: rgb(255, 255, 255);
}
#contest-title span.year-title {
	border-bottom: solid 1px;
	font-size: 28px;
	font-weight: 400;
  letter-spacing: 0.2rem;
	line-height: 2;
  text-transform: none;
}
.Classification-logo{
	flex: 1;
	list-style: none;
	margin: 10px;
}
.Classification-logo p{
	line-height: 0;
	margin: 0 0 7px 0;
}
.Classification-logo p:last-child{
	margin-bottom: 0;
}
.Classification-logo img{
	width: 100%;
	height: auto;
	margin: 0;
	border: solid 1px #333;
}
.home .Classification-logo,
.home #schedule .Classification-logo{
	display: flex;
	max-width: 520px;
	margin: 0 auto .5em;
}
.home #schedule .Classification-logo li{
	padding: 0;
	background: none;
	line-height: 0;
}
.home #schedule .Classification-logo img{
	background: rgb(0, 0, 0);
	border: solid 1px rgb(76, 76, 76);
}
.imp-mov {
	max-width: 520px;
	margin: 0 auto;
}
.imp-mov img{
	width: 100%;
	height: auto;
}
.previous_post,
.next_post{
	position: absolute;
	top: 50%;
	font-size: 22px;
	margin: 0;
}
.previous_post{
	left: 2%;
}
.next_post{
	right: 2%;
}
.previous_post a,
.next_post a{
	color: rgba(255, 255, 255, 0.5);
	padding: 9px 3px;
	border: solid 1px;
}
.fade-tab.lang-tab {
	position: fixed;
	right: 3%;
	top: 85px;
	width: 55px;
	margin: 0 auto;
	border-bottom: solid 1px rgb(221, 221, 221);
	display: block;
	z-index: 9999;
	box-sizing: border-box;
}
.fade-tab.lang-tab li a {
	font-size: 12px;
	padding: 5px 0;
}
.tab-content.lang-content{
	margin: 0;
	padding: 0;
	border: none;
}
.contest-sec{
	color: rgb(255, 255, 255);
	padding: 35px 0;
	background: rgb(34, 34, 34);
	border-top: solid #056fee;
}
.details{}
.details dl {
	flex: 1;
	text-align: center;
	border: none;
	margin: 0;
	border-left: solid 1px rgb(51, 51, 51);
}
.details dl:last-child{
	border-right: solid 1px rgb(51, 51, 51);
}
.contest-sec.black .details dt{
	letter-spacing: 1px;
	padding: 0;
	background: none;
	border: none;
}
.contest-sec.black .details dt.center-title{
	position: relative;
	top: 45%;
}
.details dd .button{ margin: 0 auto 0em; }
.details dd p{ margin: 0; }
.details dt .fa,
.details dt .far,
.details dt .fas{
	line-height: 1.2;
	font-size: 42px;
}
.dow{
	font-size: smaller;
}
.dow-en{
	margin: 0 3px;
}
a.dope-list {
	position: relative;
	display: block;
	text-decoration: none;
	color: rgb(255, 255, 255);
	z-index: 2;
	overflow: hidden;
	margin: 5px auto;
	padding: 20px 24px;
	background: rgb(165, 54, 30);
	border: solid 1px rgb(218, 88, 66);
	box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.3);
	border-radius: 3px;	
	text-align: center;
	font-size: 2rem;
}
a.dope-list:before {
	display: block;
	position: absolute;
	z-index: -1;
	left: -30%;
	top: -50%;
	content: "";
	width: 20px;
	height: 130px;/* edit 250127 */
	transform: rotate(30deg);
	-webkit-transform: rotate(30deg);
	-moz-transform: rotate(30deg);
	background-image: linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%,rgba(255,255,255,0) 100%);
	background-image: -webkit-gradient(linear, left bottom, right bottom, color-stop(0%,rgba(255,255,255,0)), color-stop(50%,rgba(255, 255, 255, 0.1)),color-stop(100%,rgba(255,255,255,0)));
	background-image: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgb(255, 255, 255) rgba(255,255,255,1),rgba(255,255,255,0) 100%);
	animation: shiny 4s infinite linear;
	-webkit-animation: shiny 4s infinite linear;
	-moz-animation: shiny 4s infinite linear;
	background-color: rgba(255, 255, 255, 0.3);
}
a.anc-contact,
a.anc-contact-non {
	position: relative;
	display: block;
  font-size: 15px;
	text-decoration: none;
	color: rgb(255, 255, 255);
	z-index: 2;
	overflow: hidden;
	margin: 5px auto;
	padding: 7px;
	background: rgb(84, 165, 70);
	border: solid 1px rgb(88, 218, 66);
	box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.3);
	border-radius: 3px;
}

.anc-contact-grayout{
  position: relative;
	display: block;
  font-size: 15px;
	text-decoration: none;
	color: rgb(255, 255, 255);
	z-index: 2;
	overflow: hidden;
	margin: 5px auto;
	padding: 7px;
  background: #999;
  border-radius: 3px;
  opacity: 0.5;
}

a.anc-contact-non {
	background: rgb(214, 214, 214);
	border: solid 1px rgb(255, 255, 255);
	border-radius: 3px;
	cursor: default;
}
a.anc-contact:before {
	display: block;
	position: absolute;
	z-index: -1;
	left: -30%;
	top: -50%;
	content: "";
	width: 20px;
	height: 80px;
	transform: rotate(30deg);
	-webkit-transform: rotate(30deg);
	-moz-transform: rotate(30deg);
	background-image: linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%,rgba(255,255,255,0) 100%);
	background-image: -webkit-gradient(linear, left bottom, right bottom, color-stop(0%,rgba(255,255,255,0)), color-stop(50%,rgba(255, 255, 255, 0.1)),color-stop(100%,rgba(255,255,255,0)));
	background-image: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgb(255, 255, 255) rgba(255,255,255,1),rgba(255,255,255,0) 100%);
	animation: shiny 4s infinite linear;
	-webkit-animation: shiny 4s infinite linear;
	-moz-animation: shiny 4s infinite linear;
	background-color: rgba(255, 255, 255, 0.3);
}
@keyframes shiny {
	0% { left: -30%; }
	20% { left: 250%; }
	100% { left: 250%; }
}
@-webkit-keyframes shiny {
	0% { left: -30%; }
	20% { left: 250%; }
	100% { left: 250%; }
}
@-moz-keyframes shiny {
	0% { left: -30%; }
	20% { left: 250%; }
	100% { left: 250%; }
}
.contest-sec.black .details dd .button span{
	font-size: 13px;
}
.singular #primary.contest-wrap{
	float: none;
	width: 100%;
	margin: 0 auto;
}
#contest-title span.rule{
	font-size: 16px;
	line-height: 1;
}
h2.catchcopy {
	text-align: center;
	background: rgb(185, 37, 61);
	color: rgb(255, 255, 255);
	padding: 10px 0;
	border: solid;
	margin-bottom: 30px;
	text-transform: uppercase;
	font-family: 'Fjalla One', sans-serif;
	font-weight: 400;
	position: relative;
	padding: 0.5em;
}
h2.catchcopy:before {
	position: absolute;
	content: '';
	top: 100%;
	left: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-right: solid 20px rgb(127, 26, 43);
}
h2.catchcopy:after {
	position: absolute;
	content: '';
	top: 100%;
	right: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-left: solid 20px rgb(127, 26, 43);
}
p.catchcopy{
	font-size: 13px;
	font-size: 1.3rem;
	text-align: center;
	margin: 15px 5px;
}
p.catch-copy{
	text-transform: uppercase;
	text-align: center;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: 600;
	width: 100%;
	color: rgb(255, 255, 255);
	margin: 0 0 20px;
	padding: 5px 0;
	background: rgb(0, 0, 0);
}
.map-title{
	max-width: 640px;
	margin: 0 auto 1.625em;
}
.map-title img{
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}
#register dl{ margin: 0; }
#register dd{ padding: 10px 0; }
#register ul {
	max-height: 300px;
	overflow: auto;
	margin: 0 0 10px;
	padding: 15px 10px;
	border: solid 1px rgb(221, 221, 221);
}
#register ul li{
	line-height: 1.6;
	font-size: 14px;
	font-size: 1.4rem;
	padding: 10px 15px;
	border-top: dotted 1px rgb(221, 221, 221);
}
#register ul li:first-child { border: none; }
#register ul li:nth-child(2n) { background: rgb(245, 245, 245); }
#register .regi-wrap a.btn{ padding: 20px 0; }
.entry-content h2.reji-title {
	position: relative;
	padding: .75em 1em .75em 1.5em;
	border: 1px solid #ccc;
}
.entry-content h2.reji-title:before {
	position: absolute;
	top: .5em;
	left: .5em;
	content: '';
	width: 6px;
	height: -webkit-calc(100% - 1em);
	height: calc(100% - 1em);
	background-color: rgb(204, 204, 0);
	border-radius: 4px;
}
.details-box {
	display: flex;
	width: 100%;
	margin: 2em 0;
	padding: 0;
	border: solid rgb(204, 204, 0);
	box-sizing: border-box;
}
.details-image{
	flex: 1;
	line-height: 0;
	margin: 10px 0 10px 10px;
}
.details-image img{
	background: rgb(255, 255, 255);
	width: 100%;
	border: solid 1px rgb(221, 221, 221);
}
.details-box ul{
	flex: 5;
}
.fade-area .details-box ul li{
	padding: 12px 20px;
}
.details-notes{
	border: solid #f00;
	margin: 1em 0 0;
}
.details-notes:first-child{ margin-top: 2em; }
.details-notes p.notes-p{
	font-weight: 600;
	text-align: center;
	color: rgb(255, 255, 255);
	margin: 0 0 10px;
	padding: 5px;
	background: #f00;
}
.details-notes p{
	margin: 0 15px 1em;
}
.details-notes p.notes-title{
	margin: 0;
}
.details-notes .box{
	margin: 0;
	padding: 0;
}
.details-table{
	border-collapse: collapse;
	width: 100%;
	margin-bottom: 2em;
}
.details-table tr{}
.details-table th,
.details-table td{
	padding: 10px 15px;
	border: solid 1px rgb(221, 221, 221);
}
.details-table th{
	vertical-align: top;
	width: 22%;
	padding: 10px;
	background: rgb(249, 249, 249);
}
.details-table td{}
.details-table td ul {
	margin: -10px -15px;
	padding: 0;
}
.details-table td ul li{
	padding: 10px 15px;
}
.details-table td ul li:nth-child(2n) {
	background: rgb(249, 249, 249);
}
.details-table td ul li.m-color{ color: rgb(0, 143, 199); }
.details-table td ul li.w-color{ color: rgb(222, 0, 203); }
.details-table td .map-icon{
	font-size: 14px;
	margin-left: -5px;
}
.map-icon a{
  color: #e82626;
}
.details-table td ul.col-ban {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}
.details-table td ul.col-ban li {
	width: 25%;
	line-height: 0;
	background: rgb(255, 255, 255);
	border: none;
	padding: 5px;
	box-sizing: border-box;
}
.details-table td ul.col-ban li img {
	width: 100%;
	height: auto;
	border: solid 1px #ddd;
}
.details-table td .divisions h2 {
	font-weight: 900;
	margin-bottom: 10px;
}
.details-table td .divisions h3{
	font-weight: 600;
	margin: 0 0 1em;
	border-bottom: solid 2px;
}
.details-table td .divisions h3.ao {
	background: #168ac3;
	color: rgb(255, 255, 255);
	border: none;
	padding: 10px 15px;
}
.details-table td .divisions h4{
	border-left: solid 5px;
	line-height: 1.4;
	margin-bottom: 10px;
	padding-left: 5px;
}
.details-table td .divisions dl{
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	font-size: 14px;
	margin-bottom: 1em;
}
.details-table td .divisions dt,
.details-table td .divisions dd{
	line-height: 1.4;
	font-weight: 400;
	padding: 1px 0;
}
.details-table td .divisions dt{
	width: 100px;
	text-align: center;
	margin-bottom: 5px;
}
.details-table td .divisions dd{
	width: 80%;
	margin: 0 0 5px 10px;
}
.details-table td .divisions dt span{}
.details-table td .divisions dd small{
	margin: 0 3px;
}
.details-table td .divisions dd small.zero{
	margin: 0;
}
.details-table td .divisions dd .red{
	color: #f00;
}
.details-table td .divisions ul{}
.details-table td .divisions ul li{}
.details-table td .divisions ul span{}
.details-table td .divisions ol{
	margin: 0;
	list-style: none;
}
.details-table td .divisions ol li{
	padding: 5px 0;
	border-bottom: dotted 1px #ddd;
}
.details-table td .divisions ol li:nth-child(even){}
.details-table td .divisions ol li:last-child{
	border: none;
}
.details-table td .button{
	margin: 0;
}
.details-table td .button a {
    display: inline-block;
    max-width: 200px;
}
.details-table h3.cl-title {
	font-weight: 600;
	margin: 0 0 5px;
}
.details-table ul.cl-list {
	margin-bottom: 1.625em;
	border: solid #ddd 5px;
	margin: 0 0 10px;
}
.details-table td ul.list-none{
	list-style: none;
}
.details-table td ul.list-none li{
	padding: 4px 15px;
}

/* =flex-col2
----------------------------------*/
.present-wrap{}
.present-mask {
	border: solid 5px #ddd;
	margin-bottom: 20px;
	padding-bottom: 15px;
}
.present-mask .flex-col2{
	margin: 10px;
	border: none;
}
.present-mask .flex-col2 .flex-col2-text{
	flex: 5;
}
.entry-content .present-wrap h4,
.entry-content .present-wrap p {
	font-size: 14px;
	margin: 0 20px;
	border: none;
}

/* =modal
----------------------------------*/
.modal {
	display: none;
	height: 100vh;
	position: fixed;
	top: 0;
	width: 100%;
	left: 0;
	z-index: 9999;
}
.modal__bg{
	background: rgba(0,0,0,0.8);
	height: 100vh;
	position: absolute;
	width: 100%;
}
.modal__content {
	color: #333;
	background: #fff;
	left: 50%;
	padding: 30px 20px;
	position: absolute;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 80%;
	max-width: 600px;
	height:90%;/* added 240613 */
	overflow-y: auto;/* added 240613 */
}
.modal__content span {
	display: inline-block;
	border: solid 1px #999;
	padding: 0 4px;
	margin: 0 3px 3px 0;
	font-size: 14px;
}
.modal__content hr{}
.details dd .modal__content p{
	font-size: 15px;
	margin-bottom: 1.625em;
	text-align: left;
}
.resist .anc-contact{
	max-width: 160px;
	margin: 0 auto;
}
.details dd .modal__content p.modal-close{
	text-align: center;
	margin: 0;
}
.js-modal-close{ color: #333; }


/* =divisions acMenu
----------------------------------*/
.details-table td .divisions .acMenu{
	margin: 0;
	display: block;
}
.details-table td .divisions .acMenu dt,
.details-table td .divisions .acMenu dd{
	width: auto;
	margin: 0;
	text-align: left;
}
.details-table td .divisions .acMenu dt {
	position: relative;
	cursor: pointer;
	font-weight: normal;
	line-height: 1.6;
	padding: 10px 25px 10px 15px;
}
.details-table td .divisions .acMenu dt:hover,
.details-table td .divisions .acMenu dt.active{
	background: rgb(204, 204, 0);
	color: rgb(51, 51, 51);
}
.details-table td .divisions .acMenu dt:after {
	font-family: 'FontAwesome';
	content: "\f0fe";
	position: absolute;
	right: 2%;
	top: 10px;
}
.details-table td .divisions .acMenu dt.active:after{
	font-family: 'FontAwesome';
	content: "\f147";
	float: right;
}
.details-table td .divisions .acMenu dd{
	display: none;
}
.details-table td .divisions .acMenu.last{
	margin-bottom: 2em;
}
.details-table td .divisions .acMenu table{
	width: 100%;
	margin: 10px 0;
}
.lang-content .details-table{
	margin-bottom: 50px;
}
.sp-cat{ display: none; }
.c-cat-list span {
	display: inline-block;
	font-size: 12px;
	color: #666;
	margin: 5px 5px 5px 0px;
	padding: 2px 5px;
	border: solid 1px rgb(221, 221, 221);
}
.time-details {
	display: inline-block;
	text-align: center;
	width: 90px;
	font-size: 12px;
	margin-right: 5px;
	border: solid 1px rgb(153, 153, 153);
}
.video-wrap aside{
	margin: 0;
}
.video {
	position: relative;
	width: 100%;
	padding-top: 56%;
}
.video iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/* flex
----------------------------------*/
.flex{
	display: flex;
  flex-wrap: wrap;
}
.flex-items{
	flex: 1;
}
.col-image{}
.col-txt{
	flex: 1;
	padding: 2%;
}
.col-2{}
.col-3{}
.col-4{}

.col-txt h2 {
	font-size: 24px;
	font-weight: 600;
	border-bottom: solid 1px;
	margin-bottom: 10px;
	padding-bottom: 10px;
}

.col-txt span {
	display: block;
	font-size: 16px;
	font-weight: 400;
}
span.rejion-icon {
	display: inline-block;
	margin: 0 10px 0 0;
}
.record{
	margin: 0 0px 1em;
}
.record th, .record td {
	padding: 5px;
	border-bottom: solid 1px #ddd;
}
.record th span {
	color: #ff5252;
	width: 70px;
	text-align: center;
	background: #ffeeef;
	padding: 0 10px;
}
.record th span.rev{
	color: #fff;
	background: #ff5252;
}
.record td{
	width: 100%;
}
.record ul {
	margin: 0;
	padding-left: 15px;
}

.sns-apply-wrap {
	margin-bottom: 3em;
	padding: 2em;
	border: solid 1px #ddd;
	background: #ffeeee;
}
.sns-apply-wrap h3 {
	text-align: center;
	color: #ff5252;
	margin-bottom: 2em;
	padding-bottom: 10px;
	font-size: 18px;
	font-weight: 600;
	border-bottom: solid;
}
ul.sns-apply {
	list-style: none;
	margin: 0 auto;
}
ul.sns-apply li {
	text-align: center;
	max-width: 300px;
	margin: 0 auto 15px;
}
ul.sns-apply li a {
  position: relative;
	color: #fff;
	background: #ff5252;
	display: block;
	padding: 15px;
	border-radius: 5px;
}
ul.sns-apply li a::before {
	position: absolute;
	font-family: 'FontAwesome';
	font-size: 36px;
	top: 0;
	bottom: 0;
	left: 20px;
}
ul.sns-apply li.insta a::before{ content: "\e055"; }
ul.sns-apply li.line a::before{ content: "\f3c0"; }
ul.sns-apply li.facebook a::before{ content: "\f082"; }
ul.sns-apply li.web a::before{ content: "\f0ac"; }
ul.sns-apply li.mail a::before{ content: "\f0e0"; }
ul.sns-apply li:last-child a{
	background: rgb(84, 165, 70);
}


.arc-region {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	font-size: 14px;
}
.fade-area .arc-region p{}
.fade-area .arc-region ul{
	display: flex;
	flex-wrap: wrap;
	border: solid 1px #ddd;
}
.fade-area .arc-region li,
.fade-area .arc-region ul li:first-child{
	border: solid 1px #ddd;
}



/* =weekend
----------------------------------*/
.btn-hg {
	color: rgb(255, 255, 255);
	border: solid;
	font-size: 30px;
	margin: 10px 0;
	padding: 15px 30px;
	display: inline-block;
	background: rgba(255, 255, 255, 0.33);
	border-radius: 5px;
	margin-bottom: 20px;
	line-height: .9;
}
.btn-hg:hover {
	text-decoration: none;
	background: rgb(230, 181, 88);
	border: solid rgb(230, 181, 88);
	text-shadow: none;
	color: rgb(0, 0, 0);
}
.hg-min{
	font-weight: 900;
	font-size: 16px;
}
#timer-wrap p.wendp{
	font-size: 16px;
	font-weight: 900;
}
ol li{padding:0 0 5px 5px;}
.link-y{
	color: rgb(230, 181, 88);
	text-decoration: underline;
}
section#ifbb-pro .item-wrap{
	border: none;
}
section#ifbb-pro ul.content-special li{
	font-size: 14px !important;
	font-size: 1.4rem !important;
}
.home section#ifbb-pro ul.content-special li a{
	padding: 3% 4% 3% 2%;
}
.home section#ifbb-pro ul.content-special li h3{
	display: block;
	text-transform: uppercase;
	font-family: 'Fjalla One', sans-serif;
	font-size: 17px;
	font-size: 1.7rem;
	font-weight: 600;
	margin-bottom: 5px;
}
.home section#ifbb-pro ul.content-special li a strong{
	color: rgb(200, 190, 0);
	background: none;
}
section#ifbb-pro ul.content-special li img{
	box-sizing: border-box;
}
h2.image-title{
	max-width: 610px;
	margin: 0 auto;
}
h2.image-title img {
	display: block;
	width: 85%;
	height: auto;
	margin: 0 auto;
}
h2.sp-h2,
.entry-content h2.sp-h2 {
	position: relative;
	color: rgb(255, 255, 255);
	padding: 20px 25px;
	background: rgb(200, 130, 0);
	margin: 35px 0;
	border-radius: 3px;
}

.item-post .name {
	text-align: center;
	font-weight: 600;
	margin-bottom: 0.5em;
}

.item-weekend {
	border: solid 1px rgb(221, 221, 221);
}
.item-weekend .item-post {
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	padding: 2%;
	border: none;
	border-bottom: solid 1px rgb(221, 221, 221);
}
.item-weekend .item-post-text {
	flex: 6;
	font-size: 15px;
	font-size: 1.5rem;
	padding: 5px 5px 0;
}
.item-weekend .item-post-image{
	width: 100px;
	height: 100px;
	margin-right: 10px;
}
.item-weekend .item-post .thumb img{
	justify-content: center;
	align-items: center;
	overflow: hidden;
	object-fit: cover;
	width: 100px;
	height: 100px;
}
.vc-container .item-cat{
	display: none;
}
.entry-content ul.co-list {
	list-style: none;
	margin: 0 0 1.625em;
	display: flex;
	flex-wrap: wrap;
}
.entry-content ul.co-list li {
	width: 49%;
	margin: .5%;
	line-height: 0;
}
.entry-content ul.co-list li img{
	background: #000;
}
.align-r-s {
	text-align: right;
	margin: 0 0 .5em;
}
.meel table{
	margin: 0;
	border: none;
}
.meel tr{
	border-top: 1px solid rgb(221, 221, 221);
}
.meel th, .meel td {
	color: rgb(51, 51, 51);
	font-size: 15px;
	text-transform: none;
	border: none;
	padding: 0 10px 0 0;
}
.meel th:first-child < th,
.meel th:first-child < td{ border: none; }
.meel th{}
.meel td{}
.meel td input[type=number]{
	width: 100px;
	font-size: 16px;
	transform: scale(0.8);
}
table.meet-table{}
table.meet-table caption{
	border-left: solid 5px;
	padding-left: 7px;
	line-height: 1.4;
	margin-bottom: 10px;
}
table.meet-table tr:first-child{
	background: rgb(224, 224, 224);
}
table.meet-table th, table.meet-table td {
	color: rgb(51, 51, 51);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.6;
	text-transform: none;
	padding: 6px 10px 6px 10px;
	border-top: 1px solid rgb(221, 221, 221);
}
table.meet-table th{
	width: 30%;
}
table.meet-table td{}
table.meet-table td small.date{
	background: rgb(221, 221, 221);
	padding: 1px 10px;
}

#schedule li .text-wrap p.date{
	margin: 0;
}
#schedule li .text-wrap h3{
	padding: 5px 0;
}
#schedule li h3 span span.c-sub-title {
	font-size: 14px;
	display: inline-block;
	font-weight: 600;
}
.class-place-1 {
	font-family: 'Fjalla One', sans-serif;
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	margin: 0 0 3px;
	border: solid 1px #ddd;
}
span.class-col {
	display: block;
	margin: 0;
	border-bottom: solid 1px rgb(221, 221, 221);
}
.regional {
	background: #1fff1f;
	color: #000000;
}
.natural {
	background: #ffff00;
	color: #000000;
}
.pro-qualifier {
	background: #0000ff;
	color: #ffffff;
}
.pro-show {
	background: #ff1f1f;
	color: #ffffff;
}
.regional-and-natural {
	color: #000000;
	background: linear-gradient(
		to right,
		#1fff1f 0%,
		#1fff1f 22%,
		#ffff00 42%, 
		#ffff00 100% 
	);
}
.regional-and-natural {
	color: #000000;
	background: linear-gradient(
		to right,
		#1fff1f 0%,
		#1fff1f 30%,
		#ffff00 40%, 
		#ffff00 100% 
	);
}
.natural-pro-qualifier {
	background: #a5361e;
	color: #ffffff;
}


.select-check span.wpcf7-list-item{
	margin: 5px 0 0;
	display: block;
}

/* =weekend
----------------------------------*/
.flex-col2.bs10{
	border: solid 15px rgb(247, 245, 246);
	box-shadow: 2px 2px 7px rgba(0, 0, 0, 0.25);
}
.flex-col2 h3.Fjalla {
	line-height: 1.8;
	font-size: 26px;
	margin: 0;
}
.col-regional,
.col-pq,
.col-ao,
.col-pro,
.cat-col{
	font-weight: 600;
}
.col-regional{ color: rgb(125, 178, 185); }
.col-pq{ color: rgb(233, 55, 54); }
.col-ao{ color: rgb(69, 140, 202); }
.col-pro{ color: rgb(216, 140, 61); }
dl.schedule{
	margin: 0 0 10px;
}
dl.schedule dt{}
dl.schedule dd{}
dl.schedule table{
	margin: 0 0 20px;
	border: none;
	border-collapse: collapse;
	border-bottom: solid 1px rgb(221, 221, 221);
}
dl.schedule tr{
	border-top: solid 1px rgb(221, 221, 221);
}
dl.schedule tr:first-child{ border: none; }
dl.schedule th, dl.schedule td{
	font-size: 14px;
	color: rgb(51, 51, 51);
	text-transform: none;
	letter-spacing: 0;
	padding: 5px 5px;
	border: none;
	line-height: 1.8;
}
dl.schedule th{
	width: 25%;
	font-size: 14px;
}
dl.schedule td{}
dl.schedule td p{
	font-size: 14px;
}
dl.schedule td span.font-m{
	display: block;
	font-size: 13px;
	margin: 10px 0;
}
dl.schedule strong{}
.entry-content dl.schedule ul {
	list-style: none;
	margin: 0 0 5px;
	padding: 7px 10px 7px 10px;
	border: solid 1px rgb(221, 221, 221);
}
.entry-content dl.schedule ul li{}
dl.schedule p{
	margin: 0 0 5px;
}
dl.schedule .subhead {
	font-size: smaller;
	padding: 2px 10px;
	background: rgb(251, 251, 251);
	border: solid 1px rgb(153, 153, 153);
}
.box.smaler,
.box.smaler h3{
	font-size: 14px;
	margin: 0 0 10px;
}
.entry-content table.co-list{
	border-collapse: collapse;
}
.entry-content table.co-list tr{
	border: solid 1px rgb(221, 221, 221);
}
.entry-content table.co-list tr:first-child{
	background: rgb(236, 236, 236);
}
.entry-content table.co-list th,
.entry-content table.co-list td{
	font-size: 15px;
	color: rgb(51, 51, 51);
	text-transform: none;
	letter-spacing: 0;
	padding: 5px 5px;
	border: none;
	line-height: 1.6;
}
.entry-content table.co-list th{
	width: 40px;
	font-size: 14px;
	text-align: center;
	border-right: solid 1px rgb(221, 221, 221);
}
.entry-content table.co-list td{
	padding: 0px 10px;
}
.entry-content dl.schedule ul.wekul {
	margin: 30px 0;
	padding: 30px 30px;
	list-style: square;
}
.entry-content dl.schedule ul.wekul li{
	padding: 5px 0px;
	border-top: solid 1px rgb(221, 221, 221);
}
.entry-content dl.schedule ul.wekul li:first-child{
	border: none;
}
#sb_instagram .sb_instagram_header{
	border: solid 1px;
	padding: 5px 0px !important;
}
#sb_instagram .sb_instagram_header h3.sbi_no_bio{
	font-weight: 400;
	color: rgb(51, 51, 51);
	border: none;
}
#sb_instagram .sbi_header_img{
	padding-left: 5px;
}
.schedule-table{}
.schedule-table tr{}
.schedule-table th,
.schedule-table td{
	font-size: 15px;
	line-height: 1.4;
	padding: 10px 10px;
	border-top: 1px solid rgb(221, 221, 221);
}
.schedule-table th{
	letter-spacing: 0;
	text-transform: none;
}
.schedule-table td{}
.schedule-table th span,
.schedule-table td span{
	color: rgb(255, 255, 255);
	background: rgb(220, 145, 0);
	font-size: 13px;
	padding: 2px 5px;
}
.schedule-table td span.spcol{
	background: rgb(33, 150, 243);
}
.schedule-table th small{
	font-size: 11px;
	margin: 0 3px;
}
.single-competition-title{
	color: rgb(51, 51, 51);
	font-size: 18px;
	font-weight: bold;
	text-transform: uppercase;
	clear: both;
	line-height: 1.5em;
	border-bottom: solid 2px;
	margin: 1em 0;
	padding: 0 0 .3em;
}
#timer-wrap h2{
	font-size: 50px !important;
}

/* form */

.your-sei .seimei,
.your-mei .seimei,
.furigana-sei .seimei,
.furigana-mei .seimei{
	width: 110px;
}
.your-zip1,
.zip,
.your-zip2,
.w-min{
	width: 60px !important;
	margin-bottom: 10px !important;
}
input, select{ font-size:16px !important; }
select{
	width: 100% !important;
	height: 40px;
	min-height: 30px;
}
.single dl.contact {
	overflow: hidden;
	background-color: #f9f9f9;
	border-bottom: solid rgb(221, 221, 221) 3px;
	border-left: solid rgb(221, 221, 221) 3px;
	border-right: solid rgb(221, 221, 221) 3px;
}
.single dl.contact dt, .single dl.contact dd {
	padding: 20px 1.5%;
	border: none;
	box-sizing: border-box;
	border-top: solid rgb(221, 221, 221) 3px;
}
.single dl.contact dt {
	clear: both;
	width: 33%;
	float: left;
}
.single dl.contact dt span.must {
	float: right;
	line-height: 1.8em;
	display: block;
	font-size: 12px;
	color: rgb(255, 255, 255);
	padding: 0 .5em;
	border-radius: 2px;
	background-color: rgb(203, 105, 112);
}
.single dl.contact dd {
	width: 67%;
	float: right;
	clear: none;
	background: rgb(255, 255, 255);
	line-height: 1;
}
table.form-table{
	border-collapse: collapse;
	font-size: 15px;
}
table.form-table tbody{ border: solid rgb(221, 221, 221) 3px; }
table.form-table caption{}
table.form-table tr{}
table.form-table th,
table.form-table td{
	padding: 15px 1.5%;
	border: solid rgb(221, 221, 221) 1px;
}
table.form-table td ol{
	margin-left: 30px;
}
table.form-table th{
	width: 36%;
	vertical-align: top;
	background: #f9f9f9;
}
table.form-table td{}
table.form-table th span.must {
	float: right;
	line-height: 1.8em;
	display: block;
	font-size: 12px;
	color: rgb(255, 255, 255);
	padding: 0 .5em;
	border-radius: 2px;
	background-color: rgb(203, 105, 112);
}
table.form-table td #color-check .wpcf7-list-item,
.wpcf7-form-control.wpcf7-radio.cover .wpcf7-list-item{
	display: block;
}
.wpcf7-radio .wpcf7-list-item{
	margin: 0 1em 0 0px;
}

table.form-table td .check-con .wpcf7-list-item{
	display: block;
}


p#link3 {
	font-weight: 600;
	text-align: center;
	border: solid 1px #666;
}
p#link3 a {
	color: #fff;
	background: rgb(84, 165, 70);
	display: block;
	padding: 10px 0;
}
p#link3 a:hover{
	text-decoration: none;
}
.sponsors-wrap{
	margin-bottom: 2em;
}
.sponsors-area-footer {
	display: flex;
	flex-wrap: wrap;
}
.sponsors-area-footer.sponsors-diamond,
.sponsors-area-footer.sponsors-gold{
	border-bottom: solid 5px #ddd;
	margin-bottom: 1em;
}
.sponsors-area-footer.sponsors-diamond aside {
	width: 49%;
	margin: 0 auto 1em;
}
.sponsors-area-footer.sponsors-diamond{
	display: block;
}

.sponsors-area-footer.sponsors-gold{}
.sponsors-area-footer.sponsors-gold aside{
	width: 49%;
	margin: 0 auto 1em;
}
.sponsors-no1 aside,
.color-no1 aside { width: 24%; }
.sponsors-no2 aside { width: 19%; }
.sponsors-no3	aside { width: 11.5%; }
.color-no2 aside { width: 19%; }
.color-no3 aside { width: 13.25%; }

#supplementary.three .widget-area a .c-sub-title {
	font-size: 1em;
	display: inline-block;
	margin-right: 6px;
	font-weight: 400;
	font-family: 'Lato', 'Noto Sans Japanese', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
#foot-cta{
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 2;
	background: rgb(31, 31, 31);
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	text-align: center;
	margin: 0;
	font-size: 12px;
	border-top: solid rgb(204, 204, 0);
}
#foot-cta li{
	flex: 1;
}
#foot-cta li:not( :first-child ) {
	border-left: solid 1px;
}
#foot-cta a {
	display: block;
	line-height: 1.7;
	color: rgb(255, 255, 255);
	padding: 11px 0 7px;
}
#foot-cta a:hover,
#foot-cta a:focus{
	text-decoration: none;
}
#foot-cta .fas{
	font-size: 18px;
}
.faq-dl p:last-child{
	margin-bottom: 0;
}
#cookie-law-info-bar{
	font-size: 12px !important;
}
#supplementary .footer-logo img{
	width: 100%;
}

@media (max-width: 800px) {
	.btn-red{
		width: 75%;
	}
	#branding audio, #branding video {
		display: none;
	}




	#Search-class .item-wrap{
		display: flex;
	}
	#Search-class .item-post{
		width: 50%;
	}
	#Search-class .item-post .item-post-image,
	#Search-class .item-post .thumb img{
		width: 100%;
		height: auto;
		margin: 0;
	}











	table.form-table{}
	table.form-table th,
	table.form-table td{
		width: 100%;
		display: block;
		padding: 20px 15px;
		box-sizing: border-box;
	}
	table.form-table th span.must{
		margin-right: 5px;
		display: inline-block;
		float: none;
		width: 30px;
		text-align: center;
	}
	input[type="text"], input[type="email"], input[type="tel"], input[type="url"], input[type="password"], input[type="search"], textarea{
		width: 100%;
	}
	div.wpcf7 input[type="file"]{
		font-size: 14px !important;
	}
}
@media (max-width: 650px) {
	#main-view {
		background: url(images/home-image-2019.jpg) no-repeat center !important;
	}
	#main-view:before {
		content: '';
		background: inherit;
		-webkit-filter: grayscale(30%) blur(7px);
		-moz-filter: grayscale(30%) blur(7px);
		-o-filter: grayscale(30%) blur(7px);
		-ms-filter: grayscale(30%) blur(7px);
		filter: grayscale(0%) blur(6px);
		position: absolute;
		top: 0px !important;
		left: -30px !important;
		right: -30px !important;
		bottom: -20px !important;
		z-index: -1;
	}

	.timer-flex {
		display: flex;
		justify-content: center;
		align-items: center;
		position: absolute;
		width: 100%;
		height: 70%;
		right: 0;
		top: 50%;
		left: 50% !important;
		transform: translate(-50%,-50%);
		margin: 0;
		padding: 0;
	}

	#timer-wrap{
		text-shadow: 0px 0px 10px rgb(0, 0, 0), 0px 0px 2px rgb(250, 238, 0) !important;
	}
	header #timer-wrap .timer-logo {
		width: 90px !important;
	}
	.home #schedule .Classification-logo {
		max-width: 270px;
	}
	.live-post .item-post:nth-child(n+6) .item-post-image{
		width: auto;
		height: auto;
		margin-right: 0;
	}
	.live-post .item-post:nth-child(n+6) .thumb img{
		width: 100%;
		height: auto;
	}

	/* =single-contest.php
	----------------------------------*/
  #contest-header #contest-title{
    text-align: center;
    font-size: 4rem;
    margin: 0 auto;
    padding-top: 28px;
    width: 80%;
  }

	.contest-title-wrap{
		margin-top: 50px;
    padding: 0px 0 317px;
    background-image: url(img/top_bg_sp.jpg);
	}
	.contest-title-wrap .inner{
		/* padding: 0 12%; */
	}
	.contest-title-wrap #contest-title{
		font-size: 32px;
		font-weight: 600;
		letter-spacing: -1px;
	}
	.c-sub-title{
		font-size: 24px;
		font-weight: 400;
	}
	.Classification{
		font-size: 14px;
	}
	.details-image{
		margin: 10px 10px 0;
	}
	.Classification-logo {
		max-width: 100%;
		margin: 0 10px;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.Classification-logo p{
		margin: 5px 0;
	}
	#contest-title span.year-title{
		font-size: 18px;
		font-weight: 600;
	}
	.contest-sec {
		padding: 30px 0;
	}
	.details.flex{
		display: block;
	}
	.details dl{
		display: -webkit-flex;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 5px 0;
		border-left: none;
		border-right: none;
		border-top: solid 1px rgb(51, 51, 51);
	}
	.details dl:first-child{
		border: none;
	}
	.details dl:last-child{
		border-right: none;
	}
	.contest-sec.black .details dt{
		flex: 1;
		line-height: 1.6;
		font-size: 14px;
		letter-spacing: 0;
	}
	.contest-sec.black .details dt.center-title{
		margin-bottom: 14px;
	}
	.contest-sec.black .details dd{
		flex: 3;
		line-height: 1.4;
		text-align: left;
	}
	.details dt .fa, .details dt .far, .details dt .fas{
		font-size: 34px;
	}
	.contest-sec.black .details dd .button span{
		display: block;
		font-size: 13px;
		margin-top: 5px;
	}
	a.anc-contact, a.anc-contact-non{
		text-align: center;
		margin-bottom: 10px;
	}
	.pc-br{
		display: none;
	}
	.details-notes{
		font-size: 15px;
	}
	.details-box {
		font-size: 15px;
		display: block;
	}
	.details-table th, .details-table td {
		display: block;
		width: 100%;
		padding: 15px;
		box-sizing: border-box;
	}
	.details-table th {
		padding: 5px 15px;
		background: rgb(238, 238, 238);
		font-weight: 600;
	}
	.details-table td{
		font-size: 15px;
	}
	.contest-wrap .fade-area ul,
	.details-table td ul{
		margin: 0;
	}
	.details-table td ul li,
	.details-table td ul.list-none li{
		padding: 7px 0;
	}
	.details-table td ul li:nth-child(2n),
	.details-table td ul.list-none li:nth-child(2n) {
		background: none;
	}
	.details-table ul.cl-list li {
		padding: 5px 10px;
	}
	.details-table td ul.col-ban li {
		width: 50%;
	}
	.details-table td .divisions dd {
		width: 100%;
		margin: 0 0 5px 0px;
	}
	.flex-col2 h3.Fjalla {
		flex: 6;
		letter-spacing: -1px;
		line-height: 1.4;
		font-size: 18px;
	}
	.flex-col2 h3 span{
		font-size: 12px;
	}
	.sp-cat,
	.record-wrap{ display: block; }

	/*
	----------------------------------*/
	.home section#ifbb-pro{
		background-position: top;
		background-attachment: initial;
		background-size: auto;
	}
	.entry-content ul.co-list{
		display: block;
	}
	.entry-content ul.co-list li{
		width: 100%;
		margin: 0 0 0.5em;
	}
	#ifbb-pro .item-post:nth-child(n+6) .item-post-image {
		width: 100%;
		height: auto;
		margin-right: 0;
	}
	#ifbb-pro .item-post:nth-child(n+6) .thumb img {
		width: 100%;
		height: auto;
	}
	#ifbb-pro .item-post:nth-child(n+8) .item-post-image {
		width: 100px;
		height: 100px;
		margin-right: 10px;
	}
	#ifbb-pro .item-post:nth-child(n+8) .thumb img {
		justify-content: center;
		align-items: center;
		overflow: hidden;
		object-fit: cover;
		width: 100px;
		height: 100px;
	}

  .category_area ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }

  .category_area li {
    grid-column: auto !important;
  }

  .category_area ul.backstagepass{
    display: block;
  }
  .category_area ul li.backstagepass_btn{
    margin: 0px 0 15px 0;
  }
}

	.sponsors-area-footer{
		justify-content: start;
	}
	.sponsors-area-footer.sponsors-diamond aside{ width: 100%; }
	.sponsors-no1 aside { width: 32%; }
	.sponsors-no2 aside { width: 32% !important; }
	.sponsors-no3 aside { width: 24%; }

	.color-no1 aside { width: 49%; }
	.color-no2 aside { width: 32%; }
	.color-no3 aside { width: 24%; }

	#colophon {
		//margin-bottom: 62px;
	}
}
@media screen and (max-device-width: 650px) {
	#timer-wrap h2{
		font-size: 32px !important;
		font-weight: 900 !important;
		letter-spacing: -1px;
	}
}
@media screen and (max-device-width: 320px) {
	#timer-wrap h2{
		font-size: 30px !important;
	}
}