@charset "utf-8";

@import url("reset.css");

/* -------------------------------
   BASE
------------------------------- */


/* margin */
.mt-60 {margin-top:-60px!important;}
.mt-50 {margin-top:-50px!important;}
.mt-40 {margin-top:-40px!important;}
.mt-30 {margin-top:-30px!important;}
.mt-20 {margin-top:-20px!important;}
.mt-10 {margin-top:-10px!important;}
.mt0 {margin-top:0!important;}
.mt5 {margin-top:5px!important;}
.mt10 {margin-top:10px!important;}
.mt15 {margin-top:15px!important;}
.mt20 {margin-top:20px!important;}
.mt25 {margin-top:25px!important;}
.mt30 {margin-top:30px!important;}
.mt40 {margin-top:40px!important;}
.mt50 {margin-top:50px!important;}
.mt60 {margin-top:60px!important;}
.mt70 {margin-top:70px!important;}
.mb0 {margin-bottom:0!important;}
.mb5 {margin-bottom:5px!important;}
.mb10 {margin-bottom:10px!important;}
.mb15 {margin-bottom:15px!important;}
.mb20 {margin-bottom:20px!important;}
.mb25 {margin-bottom:25px!important;}
.mb30 {margin-bottom:30px!important;}
.mb40 {margin-bottom:40px!important;}
.mb50 {margin-bottom:50px!important;}
.mb60 {margin-bottom:60px!important;}
.mb70 {margin-bottom:70px!important;}
.mlra{
    margin-left: auto;
    margin-right: auto;
}
.ml0{margin-left: 0 !important;}
.ml10{margin-left: 10px !important;}
.ml20{margin-left: 20px !important;}
.ml30{margin-left: 30px !important;}
.mr0{margin-right: 0 !important;}
.mr10{margin-right: 10px !important;}
.mr20{margin-right: 20px !important;}
.mr30{margin-right: 30px !important;}


/* align */
.tLeft { text-align:left!important;}
.tCenter { text-align:center!important;}
.tRight { text-align:right!important;}
.vTop { vertical-align:top!important;}
.vMiddle { vertical-align:middle!important;}
.vBottom { vertical-align:bottom!important;}

.hide{
	display: none !important;
}
/* color */
:root {
  --kks-green: #3DA03A;
  --kks-lightgreen: #F5FAF5;
  --kks-red: #DA2200;
}

.red{color:var(--kks-red) !important;}
.white {color: #fff !important}
.d-red { color:#A30035;}
.blue { color:#144398;}
.green { color:var(--kks-green);}
.pink { color:#EA609E;}
.orange{ color: #F18101;}

.txt-red{color: #d00 !important;}
.bg-red{background-color: #d00 !important;}

/* text */
.normal { font-weight:normal!important;}
.bold { font-weight:bold!important;}
.f10 { font-size:10px!important;}
.f11 { font-size:11px!important;}
.f12 { font-size:12px!important;}
.f13 { font-size:13px!important;}
.f14 { font-size:14px!important;}
.f15 { font-size:15px!important;}
.f16 { font-size:16px!important;}
.f18 { font-size:18px!important;}
.f20 { font-size:20px!important;}
.f22 { font-size:22px!important;}
.f24 { font-size:24px!important;}
.f26 { font-size:26px!important;}
.lh10 { line-height:1!important;}
.lh12 { line-height:1.2!important;}
.lh15 { line-height:1.5!important;}
.lh18 { line-height:1.8!important;}
.lh20 { line-height:2!important;}
.gothic { font-family:Arial,Verdana,Helvetica,Roboto,'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro','Hiragino Kaku Gothic Pro','Meiryo UI','メイリオ',Meiryo,'游ゴシック','Yu Gothic',sans-serif;}
.serif { font-family:Georgia,'Times New Roman','ヒラギノ明朝 ProN W3','Hiragino Mincho ProN','ヒラギノ明朝 Pro','Hiragino Mincho Pro','游明朝','Yu Mincho',HG明朝B,'ＭＳ Ｐ明朝','ＭＳ 明朝',serif;}
.underline{text-decoration: underline;}

/* color */
.block { display:block!important;}
.inline { display:inline!important;}
.inlineBlock { display:inline-block!important;}

/* link */
a {color: #333;text-decoration:underline;}
a:hover {color: var(--kks-green);text-decoration:none;}


@media screen and (min-width:640px){
  .sp-view{
    display: none;
  }
}
@media screen and (max-width:639px){
.pc-view{
  display: none;
}
}
@media screen and (max-width:639px){
.br-pc{
    display: none;
}
}

.protect{
pointer-events: none;
-webkit-user-select: none;
user-select: none;
-webkit-touch-callout: none;
}

/* transition */
/*.transition05 {
    -moz-transition-duration:0.5s;
    -o-transition-duration:0.5s;
    -ms-transition-duration:0.5s;
    transition-duration:0.5s;
}*/

/* iframe */
.iframeWrapper {
    position: relative;
    height: 0;
    padding: 30px 0 56.25%;
    overflow: hidden;
}
.iframeWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* box */
.inner {
    padding: 15px 10px;  
}
.box.round {
    border-radius: 10px;
}
[class*="bdrBox"] {
    border: 2px solid;
}
.bdrBox__black {
    border-color: #111;
}
.bdrBox__green {
    border-color: var(--kks-green);
}
.bdrBox__orange {
    border-color: #F88700;
}
.bdrBox__red {
    border-color: var(--kks-red);
}
.bgdcBox__white {
    background-color: #fff;
}
.bgdcBox__green {
    background-color: var(--kks-green);
}
.bgdcBox__yellowgreen {
    background-color: #6EB92B;
}
.bgdcBox__yellow {
    background-color: #F8B500;
}
.bgdcBox__orange {
    background-color: #F88700;
}
.bgdcBox__red {
    background-color: var(--kks-red);
}
.bglcBox__green {
    background-color: var(--kks-lightgreen);
}
.bglcBox__yellowgreen {
    background-color: #f0fbdf;
}
.bglcBox__yellow {
    background-color: #fffcd4;
}
.bglcBox__orange {
    background-color: #fff2e2;
}
.bglcBox__red {
    background-color: #FDF5F2;
}

/*Btn*/
.btn.noLink.coverTxtBtn {
  position: relative;
}
.btn a {
  position: relative;
  width: 85%;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  display: block;
  padding: 20px 10px;
  text-align: center;
  vertical-align: middle;
  font-size: 20px;
  font-weight: bold;
  text-decoration: none;
  box-shadow: 2px 2px rgba(0,0,0,0.8);
}
.btn a:hover{
    opacity: 0.5;
}
.btn.round a,
.btn.round.noLink a:before {
    border-radius: 50px;
}
.btn.tinyround a,
.btn.tinyround.noLink a:before {
    border-radius: 5px;
}
.btn.small a {
    width: 50%;
    max-width: 360px;
}
.btn.large a {
    width: 100%;
  max-width: 100%;
}
.btn.noLink a {
  pointer-events: none;
}
.btn.noLink a:before,
.btn.noLink a:after,
.btn.noLink span.coverTxt {
  content: '';
  position: absolute;
  width: 100%;
}
.btn.noLink span.coverTxt {
  width: 85%;
}
.btn.noLink a:before {
  background: #000;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  opacity: 0.65;
  z-index: 5;
}
.btn.noLink a:after {
  font-size: 1.5rem;
  color: #fff;
  opacity: 1;
  text-align: center;
  z-index: 10;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  left: 50%;
  top: 50%;
  margin: 0;
}
.btn.noLink a.comingSoon:after {
  content: '準備中';
}
.btn.noLink a.endApply:after {
  content: '受付終了';
}
.btn.noLink.coverTxtBtn span.coverTxt {
  color: #fff;
  opacity: 1;
  text-align: center;
  z-index: 10;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  left: 50%;
  top: 50%;
}
[class*="arrBtn"] a:after {
    display: inline-block;
    content: '';
    width: 12px;
    height: 12px;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -6px;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    -o-background-size: cover;
    -ms-background-size: cover;
    background-size: cover;
}
.btn-cs > *{
  position: relative;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.btn-cs > *::before{
  content: '準備中';
  position: absolute;
  left: 0;
  top:0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.7);
  color:#fff;
  font-size: 16px;
  font-weight: bold;
}
.btn-end > *{
  position: relative;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.btn-end > *::before{
  content: '受付終了しました';
  position: absolute;
  left: 0;
  top:0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.7);
  color:#fff;
  font-size: 16px;
  font-weight: bold;
}
.btn-cs.round > *::before{
  border-radius: 2rem;
}
.arrBtn__white a:after {
    background: url(../img/common/arr_white.png) center center no-repeat;
}
.arrBtn__green a:after {
    background: url(../img/common/arr_green.png) center center no-repeat;
}
.arrBtn__orange a:after {
    background: url(../img/common/arr_orange.png) center center no-repeat;
}
[class*="bgdcBtn"] a {
    color: #fff;
}
.bgdcBtn__green a {
    background: var(--kks-green);
}
.bgdcBtn__red a {
    background: var(--kks-red);
}
.bgdcBtn__orange a {
    background: #FD7800;
}
.bgdcBtn__blue a {
    background: #1349af;
}
.bgdcBtn__mizuno a {
    background: #0C308E;
}
.bgdcBtn__runpassport a {
    background: #6B0E17;
}
.bgdcBtn__mizuno{
  display: flex;
  @media screen and (max-width: 767px) {
    flex-flow: column;
  }
  & > a{
    width: 30%;
    font-size: 18px;
    @media screen and (max-width: 767px) {
      width: 100%;
    }
  }
}

a.pdf {
    display: inline-block;
    min-height: 32px;
    padding-left: 35px;
    background: url(../img/common/icon_pdf.png) left top no-repeat;
    -moz-background-size: 27px 32px!important;
    -webkit-background-size: 27px 32px!important;
    -o-background-size: 27px 32px!important;
    -ms-background-size: 27px 32px!important;
    background-size: 27px 32px!important;
}


/*トップページバナー*/
.btn_t-contest a:hover,
.btn_lodging a:hover{
    opacity:0.7 !important;
}

h2.stdTit {
  position: relative;
  font-size: 26px;
  text-align: center;
  color: var(--kks-green);
  font-weight: bold;
  padding-bottom: 15px;
  line-height: 1.2;
  border-bottom: 1px solid #CCCCCC;
}
h2.stdTit:before {
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  display: block;
  content: '';
  width: 70%;
  margin: auto;
  height: 1px;
  background: var(--kks-green);
}
h3.stdTit,
dt.bgdcTit {
  position: relative;
  background: var(--kks-green);
  color: #FFF;
  padding: 8px;
  margin-bottom: 20px;
  font-size: 16px;
}
h4.stdTit,
dt.bglcTit {
  position: relative;
  background: var(--kks-lightgreen);
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  color: #111;
  padding: 10px;
  margin-bottom: 20px;
  font-size: 16px;
}
h5.stdTit,
dt.bdrTit {
  position: relative;
  text-align: left;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
  border-bottom: 1px solid #EEE;
  padding: 0 0 10px 15px;
  margin-bottom: 20px;
}
h5.stdTit:before,
dt.bdrTit:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  content: '';
  width: 5px !important;
  height: calc(100% - 10px);
  background: var(--kks-green);
}
h6.stdTit,
dt.clrTit {
  font-size: 14px;
  border-bottom: 1px solid #EEE;
  font-weight: bold;
  color: var(--kks-green);
  padding-bottom: 5px;
}

.attentionTitle {
  position: relative;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}
.attentionTitle:before,
.attentionTitle:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2rem;
  height: 2rem;
  background: url('/2025/wp-content/uploads/2023/01/exclaimation.svg') no-repeat;
  background-size: contain;
}
.attentionTitle:before {
  left: 0.5rem;
}
.attentionTitle:after {
  right: 0.5rem;
}

ul.stdList {
  list-style-type: none;
  text-indent: -1rem;
}
ul.stdList > li {
  padding-left: 1rem;
}
ul.stdList > li:not(:first-child) {
    margin-top: 5px;
}
ul.stdList > li:before {
  padding-left: 1rem;
  display: inline-block;
  content: "\0030FB";
  font-weight: bold;
}

ol.stdList {
    counter-reset: num;
}
ol.stdList > li {
    list-style: none;
    padding: 5px 0 0 15px;
}
ol.stdList > li:before {
    counter-increment: num;
    display: inline-block;
    content: counter(num) '.';
    margin-left: -15px;
    min-width: 15px;
}
ol.stdList > li:first-child {
    padding-top: 0;
}


ul.komeList {
  list-style-type: none;
  text-indent: -1rem;
  font-size: 13px;
}
ul.komeList > li {
  padding-left: 1rem;
  list-style-type: none;
}
ul.komeList > li:not(:first-child) {
    margin-top: 5px;
}
ul.komeList > li:before {
  padding-left: 1rem;
  display: inline-block;
  content: "\00203B";
}

ol.komeList {
    counter-reset: num;
    font-size: 13px;
}
ol.komeList > li {
    list-style: none;
    padding-left: 40px;
}
ol.komeList > li:not(:first-child) {
    margin-top: 5px;
}
ol.komeList > li:before {
    counter-increment: num;
    display: inline-block;
    content: '\00203B' counter(num);
    margin-left: -40px;
    min-width: 40px;
}

ul.hishiList {
  list-style-type: none;
  text-indent: -1rem;
}
ul.hishiList > li {
  padding-left: 1rem;
  list-style-type: none;
}
ul.hishiList > li:not(:first-child) {
    margin-top: 5px;
}
ul.hishiList > li:before {
  padding-left: 1rem;
  display: inline-block;
  content: "\0025C6";
}


ul.hoshiList {
  list-style-type: none;
  text-indent: -1rem;
}
ul.hoshiList > li {
  padding-left: 1rem;
  list-style-type: none;
}
ul.hoshiList > li:not(:first-child) {
    margin-top: 5px;
}
ul.hoshiList > li:before {
  padding-left: 1rem;
  display: inline-block;
  content: "\002606";
}


ul.yajiList {
  list-style-type: none;
  text-indent: -1rem;
}
ul.yajiList > li {
  padding-left: 1rem;
  list-style-type: none;
}
ul.yajiList > li:not(:first-child) {
    margin-top: 5px;
}
ul.yajiList > li:before {
  padding-left: 1rem;
  display: inline-block;
  content: "\0021C0";
}


ol.maruList {
  list-style-type: none;
  text-indent: -1rem;
}
ol.maruList > li {
    list-style: none;
    padding-left: 1rem;
}
ol.maruList > li:not(:first-child) {
    margin-top: 5px;
}
ol.maruList > li:before {
  padding-left: 1rem;
  display: inline-block;
}
ol.maruList > li:nth-of-type(1):before {
  content: "\002460";
}
ol.maruList > li:nth-of-type(2):before {
  content: "\002461";
}
ol.maruList > li:nth-of-type(3):before {
  content: "\002462";
}
ol.maruList > li:nth-of-type(4):before {
  content: "\002463";
}
ol.maruList > li:nth-of-type(5):before {
  content: "\002464";
}
ol.maruList > li:nth-of-type(6):before {
  content: "\002465";
}
ol.maruList > li:nth-of-type(7):before {
  content: "\002466";
}
ol.maruList > li:nth-of-type(8):before {
  content: "\002467";
}
ol.maruList > li:nth-of-type(9):before {
  content: "\002468";
}
ol.maruList > li:nth-of-type(10):before {
  content: "\002469";
}


dl.styleList > dt, dl.styleList> dd {
  position: relative;
  padding-left: 1.25rem;
  word-break: break-all;
}
dl.styleList > dd + dt {
  margin-top:10px;
}
dl.styleList> dt:before,
dl.styleList> dd:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 1rem;
  text-align: center;
}
dl.styleList > dt.square:before {
  content: "\0025A0";
}
dl.styleList > dt.circle:before {
  content: "\0025CB";
}
dl.styleList > dt.bullet:before {
  content: "\0025CF";
}
dl.styleList > dt.diamond:before {
  content: "\0025C6";
}
dl.styleList > dt.kome:before {
  content: "\00203B";
}
dl.styleList > dd.dot:before {
  content: "\0030FB";
  font-weight: bold;
}
dl.styleList > dd.arrowR:before {
  content: "\002192";
}

dl.maruList > dt, dl.maruList> dd {
  position: relative;
  padding-left: 1.5rem;
}
dl.maruList > dd + dt {
  margin-top: 10px;
}
dl.maruList> dt:before,dl.maruList > dd:before {
  position: absolute;
  left: 0.25rem;
  margin-right: 5px;
}
dl.maruList > dt:nth-of-type(1):before {
  content: "\002460";
}
dl.maruList > dt:nth-of-type(2):before {
  content: "\002461";
}
dl.maruList > dt:nth-of-type(3):before {
  content: "\002462";
}
dl.maruList > dt:nth-of-type(4):before {
  content: "\002463";
}
dl.maruList > dt:nth-of-type(5):before {
  content: "\002464";
}
dl.maruList > dt:nth-of-type(6):before {
  content: "\002465";
}
dl.maruList > dt:nth-of-type(7):before {
  content: "\002466";
}
dl.maruList > dt:nth-of-type(8):before {
  content: "\002467";
}
dl.maruList > dt:nth-of-type(9):before {
  content: "\002468";
}
dl.maruList > dt:nth-of-type(10):before {
  content: "\002469";
}



dl.numberingDl {
  counter-reset: numbering;
}
dl.numberingDl > dt {
  font-weight: normal;
  position: relative;
}
dl.numberingDl > dt:before {
  counter-increment: numbering;
  content: "（" counter(numbering) "）";
  position: absolute;
  left: 0;
  letter-spacing: -1px;
  padding-right: 0.5rem;
  display: inline-block;
  width: 2rem;
}
dl.numberingDl > dt,
dl.numberingDl > dd {
  padding-left: 2rem;
}


table[class*="stdTable"] {
    width: 100%;
    border-top: 1px solid #EEE;
}
table[class*="stdTable"] th {
    background: var(--kks-lightgreen);
    border-bottom: 1px solid #EEE;
    vertical-align: top;
}
table[class*="stdTable"] td {
    border-bottom: 1px solid #EEE;
}


/*bdrlessTable*/
table[class*="bdrlessTable"] > tbody > tr > th,
table[class*="bdrlessTable"] > tbody > tr > td {
    padding: 8px 5px;
    vertical-align: top;
  border: none;
  background: transparent;
}
table[class*="bdrlessTable"] > tbody > tr >  th {
    white-space: nowrap;
}


/*flexwrap*/
[class*="flexWrap"] {
  display: flex;
  flex-wrap: wrap;
  /*margin: 0;*/
  box-sizing: border-box;
  gap: 1%;
}
[class*="flexWrap"].fsStart {
  justify-content: flex-start;
}
[class*="flexWrap"].around {
  justify-content: space-around;
}
[class*="flexWrap"].between {
  justify-content: space-between;
}
[class*="flexWrap"].jcCenter {
  justify-content: center;
}
[class*="flexWrap"].aiCenter {
  align-items: center;
}
[class*="flexWrap"] [class*="flexBlock"] {
  display: block;
  /*margin: 0;*/
  list-style-type: none !important;
  box-sizing: border-box; 
}
[class*="flexWrap"] [class*="flexBlock"] img {
 width: 100%;
}

.acrobatReaderBox a {
  display: block;
  background: url(../img/common/pdf.jpg) left center no-repeat;
  padding-left: 130px;
  text-decoration: none;
}


.coverAreaWrap {
    position: relative;
}
.coverAreaWrap:before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #000000;
    opacity: 0.75;
}
.coverAreaWrap .coverTxt {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    color: #fff;
    z-index: 50;
}

/* -------------------------------
   common
------------------------------- */

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
html {
    background:#FFF;
}
body {
    font-size:14px;
    line-height:1.5;
    background:#FFF;
    font-family:  Arial,Verdana,Helvetica,Roboto,'IBM Plex Sans JP','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro','Hiragino Kaku Gothic Pro','Meiryo UI','メイリオ',Meiryo,'游ゴシック','Yu Gothic',sans-serif;
}


/* -------------------------------
   header
------------------------------- */

/* ------ Gメニュー coming soon---------- */

#header nav #gNav li.noLink {
    position: relative;
}
#header nav #gNav li.noLink a {
    pointer-events: none;
}
#header nav #gNav li.noLink:before {
    content: " ";
    background: #000;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0.6;
}
#header nav #gNav li.noLink:after {
    color: #fff;
    font-weight: bold;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 10;
    width: 100%;
    text-align: center;
}
#header nav #gNav li.noLink.comingsoon:after{
    content: "coming soon";
    letter-spacing: -0.01em;
}
#header nav #gNav li.noLink.end:after{
    content: "締切";
    letter-spacing: 0.1em;
}
#header nav #gNav li.noLink  ul {
	display: none;
}



#hDate {
  display: flex;
  align-items: flex-end;
}



/*  timer */
.timerArea{
  text-align:center;
}
#timer .yycountdown-box * {
  line-height: 1;
}
#timer .yycountdown-box .yyc-day,
#timer .yycountdown-box .yyc-hou,
#timer .yycountdown-box .yyc-min,
#timer .yycountdown-box .yyc-sec {
  font-family: 'Atomic Age', cursive;
}
.timerArea .timerAreaTit,
#timer .yycountdown-box .yyc-day-text,
#timer .yycountdown-box .yyc-hou-text,
#timer .yycountdown-box .yyc-min-text,
#timer .yycountdown-box .yyc-sec-text {
  font-family: 'Share Tech Mono', monospace;
}
.timerArea .timerAreaTit {
  color: var(--kks-green);
  font-weight: bold;
  line-height: 1;
  margin-bottom: 2px;
}
#timer .yycountdown-box {
  display: flex;
  gap: 10px;
  align-items: center;
}
#timer .yycountdown-box .yycountdown-box-child {
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--kks-green);
  color: #fff;
  padding: 4px;
}
#timer .yycountdown-box .yycountdown-box-child:nth-of-type(n+3):before {
  content: "：";
    position: absolute;
    left: -12px;
    color: green;
    top: 10px;
    font-weight: bold;
}
#timer .yycountdown-box .yyc-day-text,
#timer .yycountdown-box .yyc-hou-text,
#timer .yycountdown-box .yyc-min-text,
#timer .yycountdown-box .yyc-sec-text{
  font-weight: bold;
}

/* -------------------------------
   footer
------------------------------- */

#footer {
    background: url(../img/common/oblique_gray.png) center top repeat;
    margin-top: 60px;
}
#fNav dt {
    color: var(--kks-green);
    font-weight: bold;
    font-size: 16px;
}
#fNav dt a {
    color: var(--kks-green);
}
#fNav dt:nth-child(n+2) {
    margin-top: 10px;
}
#fNav dd {
    margin-top: 5px;
    padding-left: 10px;
}
#fNav dd a:before {
    display: inline-block;
    content: '';
    width: 0;
    height: 0;
    border: 4px solid transparent;
    border-left: 4px solid var(--kks-green);
}
#fInfo {
    background: #FFF;
    padding: 20px;
}
#fInfo > * {
    padding: 5px 0;
}
#footer .logo {
    text-align: center;
    background: #FFF;
}
#pagetop {
    position: relative;
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    height: 0;
}
#pagetop p {
    position: absolute;
    top: -45px;
    right: 0;
    width: 90px;
    height: 90px;
    padding: 5px;
    background: url(../img/common/pagetop_bg_x2.png) center top no-repeat;
    -moz-background-size:100% auto;
    -webkit-background-size:100% auto;
    -o-background-size:100% auto;
    -ms-background-size:100% auto;
    background-size:100% auto;
}
#pagetop a {
    display: block;
    overflow: hidden;
    background: #FFF;
    padding: 14px;
    width: 80px;
    height: 80px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}
#copyright {
    background: url(../img/common/oblique_green.png) center top repeat;
    text-align: center;
    color: #FFF;
    line-height: 1.2;
}


/* -------------------------------
   side
------------------------------- */

#sns {
    width: 220px;
    margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
  text-align: center;
}
#sns li {
    width: 45%;
  margin: 0 auto 15px;
}
#sns a {
    display: block;
}
#snsFb iframe {
    margin: 0 auto;
}


/*#sns2 {
    width: 220px;
    margin:15px auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items:center;
}
#sns2 li{
    width: 28%;
    text-align: center;
    margin: 0 2%;
}*/

#sideL .sBnr a {
    display: block;
    position: relative;
    background: var(--kks-green);
    color: #FFF;
    padding: 15px 20px 15px 60px;
    line-height: 50px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    font-size: 16px;
  max-width: 280px;
    margin-left: auto;
    margin-right: auto;
}

#sideL .sBnr a:before {
    display: inline-block;
    content: '';
    width: 50px;
    height: 50px;
    position: absolute;
    top: 50%;
    left: 10px;
    margin-top: -25px;
    -moz-background-size:cover!important;
    -webkit-background-size:cover!important;
    -o-background-size:cover!important;
    -ms-background-size:cover!important;
    background-size:cover!important;
}
#sideL .sBnr a:after {
    display: inline-block;
    content: '';
    width: 12px;
    height: 12px;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -6px;
    background: url(../img/common/arr_white.png) center center no-repeat;
    -moz-background-size:cover;
    -webkit-background-size:cover;
    -o-background-size:cover;
    -ms-background-size:cover;
    background-size:cover;
}
#sideL .sBnr a:hover {
  opacity: 0.6;
}
#sideL .sBnr.noLink {
  position: relative;
}
#sideL .sBnr.noLink span.coverTxt {
  content: '';
  position: absolute;
  width: 100%;
}
#sideL .sBnr.noLink a {
  pointer-events: none;
}
#sideL .sBnr.noLink:before,
#sideL .sBnr.noLink:after,
#sideL .sBnr.noLink span.coverTxt {
  content: '';
  position: absolute;
  width: 100%;
}
#sideL .sBnr.noLink span.coverTxt {
  width: 85%;
}
#sideL .sBnr.noLink:before {
  background: #000;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  opacity: 0.65;
  z-index: 5;
  border-radius: 5px;
}
#sideL .sBnr.noLink:after {
font-size: 16px;
  color: #fff;
  opacity: 1;
  text-align: center;
  z-index: 10;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  left: 50%;
  top: 50%;
  margin: 0;
}
#sideL .sBnr.noLink.comingSoon:after {
  content: '準備中';
}
#sideL .sBnr.noLink.endApply:after {
  content: '受付終了';
}
#sideL .sBnr.noLink.coverTxtsBnr span.coverTxt {
  color: #fff;
  opacity: 1;
  text-align: center;
  z-index: 10;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  left: 50%;
  top: 50%; 
}

#mypageBnr a:before {
    background: url(../img/common/icon_mypage_2x.png) center center no-repeat;
}
#recordBnr a:before {
    background: url(../img/common/icon_note_2x.png) center center no-repeat;
}


#sideL dt,
#sideR dt {
    text-align: center;
    color: var(--kks-green);
    font-weight: bold;
    font-size: 16px;
    padding-bottom: 10px;
    border-bottom: 1px solid #DDD;
    margin: 0 5px 10px 5px;
}
#sideL dd,
#sideR dd {
    margin-bottom: 10px;
}

#sideL dd:after,
#sideR dd:after {
    content: "";
    display: block;
    clear: both;
}

#sideL .bnrs,
#sideR .bnrs {
    text-align: center;
    margin: 0 auto;
}
#sideL .bnrs li a,
#sideR .bnrs li a {
    display: inline-block;
}

#sideL .aid-wanted-Bnr a {
    background: #f88700;
    line-height: 1.5;
}

#sideL .sponsor-wanted-Bnr a,
#sideL .sponsor-list-Bnr a {
    display: block;
    position: relative;
    color: #FFF;
    line-height: 1.5;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
}
#sideL .sponsor-wanted-Bnr a,
#sideL .sponsor-list-Bnr a {
    font-size: 18px;
    padding: 16px 20px 16px 10px;
}


#sideL .sponsor-wanted-Bnr a {
    background: var(--kks-green);
}
#sideL .sponsor-list-Bnr a {
    background: #A5CB10;
}
#sideL .aid-wanted-Bnr a:before {
    background: url(../img/common/sidebnr/aid_icon.jpg) center center no-repeat;
}
#sideL .pre-registration-Bnr a {
    background: #1349af;
}


#sideR .official dt {
    text-align: center;
    color: #000;
    font-weight: bold;
    font-size: 13px;
    border-bottom: none;
    margin: 0 5px 5px 5px;
    padding: 0;
}

#pamphletList dd {
    background: #E5E5E5;
    /*padding: 5px;*/
    text-align: center;
    /*margin: 10px 5px 5px;*/
    margin: 0 auto 15px;
    border-radius: 5px;
}

#pamphletList dd a{
    display:block;
    text-decoration: none;
    padding: 15px 5px;
    font-weight: bold;
    color: #555;
}
#pamphletList dd a:hover{
    opacity: 0.6;
}

#pamphletList dd img {
    margin-bottom: 5px;
}



/* -------------------------------
   contents
------------------------------- */

#pagetit {
    border-top: 5px solid #ECF5EB;
    background: var(--kks-lightgreen);
    text-align: center;
    line-height: 1.2;
}
#path strong {
    font-weight: normal;
    color: var(--kks-green);
}

.anchorList {
    display: table;
    width: 100%;
    table-layout: fixed;
    border-left: 1px solid #EEE;
}
.anchorList li {
    display: table-cell;
    text-align: center;
    border-right: 1px solid #EEE;
}
.anchorList li a {
    display: block;
    padding: 10px;
}
.anchorList li a:before {
    display: inline-block;
    content: '>';
    width: 14px;
    height: 14px;
    background: var(--kks-green);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    margin-right: 5px;
    -moz-background-size:8px auto!important;
    -webkit-background-size:8px auto!important;
    -o-background-size:8px auto!important;
    -ms-background-size:8px auto!important;
    background-size:8px auto!important;
    vertical-align: middle;
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    color: #FFF;
    text-align: center;
    line-height: 14px;
}

.newsList time {
    color: var(--kks-green);
}
#newsSec .btn,
#sponsorsSec .btn {
    text-align: center;
  margin-top: 20px;
}
#newsSec h2 .rss {
  position: absolute;
  right: 10px;
  font-size: 14px;
  font-weight: normal;
  top: 35%;
  transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  line-height: 1;
}
#newsSec h2 .rss a {
  text-decoration: none;
  padding: 2px 6px;
  border: 1px solid #666;
  border-radius: 30px;
}
#newsSec h2 .rss a:hover {
  border-color: var(--kks-green);
}

#sponsorsSec .sponsorAnnouncementBox {
  position: relative;
    width: 75%;
    max-width: 540px;
}
#sponsorsSec .sponsorAnnouncementBox:before {
  content: 'Check';
  position: absolute;
  font-weight: bold;
  background: #F88700;
  color: #fff;
  left: 0px;
  bottom: 100%;
  border-radius: 5px 5px 0 0;
  padding: 2px 10px 2px 25px;
  font-size: 14px
}
#sponsorsSec .sponsorAnnouncementBox:after {
  content: '';
  display: block;
  position: absolute;
  left: 5px;
  bottom: calc(100% + 0.5em + 2.5px);
  width: 10px;
  height: 5px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
}
#sponsorsSec .sponsorAnnouncementBtn a {
  width: 100%;
    box-shadow:none;
  padding: 3% 5px;
}


/*.box {
    background: var(--kks-lightgreen);
    padding: 10px;
}
.box.pdf a {
    display: block;
    background: url(../img/common/pdf.jpg) 10px center no-repeat var(--kks-lightgreen);
    margin: -10px;
    padding: 10px 10px 10px 130px;
    text-decoration: none;
}
.box.word a {
    display: block;
    background: url(../img/common/word.jpg) 10px center no-repeat var(--kks-lightgreen);
    margin: -10px;
    padding: 10px 10px 10px 130px;
    text-decoration: none;
}
.box.redLine {
    border: 1px solid #A30035;
}*/
/*excelボタンも作ったらいつかまとめてください*/
/*a.pdf {
    display: inline-block;
    min-height: 32px;
    padding-left: 35px;
    background: url(../img/common/icon_pdf.png) left top no-repeat;
    -moz-background-size:27px 32px!important;
    -webkit-background-size:27px 32px!important;
    -o-background-size:27px 32px!important;
    -ms-background-size:27px 32px!important;
    background-size:27px 32px!important;
}
a.word {
    display: inline-block;
    min-height: 32px;
    padding-left: 35px;
    background: url(../img/common/icon_word.jpg) left top no-repeat;
    -moz-background-size:27px 32px!important;
    -webkit-background-size:27px 32px!important;
    -o-background-size:27px 32px!important;
    -ms-background-size:27px 32px!important;
    background-size:27px 32px!important;
}
#contents .btns a.word,
#contents .btns a.pdf {
    line-height: 32px;
}
#contents .btns {
    border-top: 1px solid #EEE;
}
#contents .btns li {
    border-bottom: 1px solid #EEE;
    padding: 10px;
}
#contents .btn {
    text-align: center;
}
#contents .btn a {
    position: relative;
    display: inline-block;
    background: var(--kks-green);
  color: #FFF;
  padding: 20px 20px 20px 20px;
    text-decoration: none;
    min-width: 280px;
    font-size: 120%;
    line-height: 1.2;
}
#contents .btn a:after {
    display: inline-block;
    content: '';
    width: 12px;
    height: 12px;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -6px;
    background: url(../img/common/arr_white.png) center center no-repeat;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    -o-background-size: cover;
    -ms-background-size: cover;
    background-size: cover;
}
#contents .btn a:hover {
    opacity: 0.5;
}*/

/* -------------------------------
   home
------------------------------- */
#fb-content {
    max-width: 700px;
    width: auto;
    margin: 0 auto;
    /*padding: 10px;*/
}

#main {
    position: relative;
    overflow: hidden;
    width: 100%;
	border-top: 6px solid var(--kks-green);
	border-bottom: 6px solid var(--kks-green);
}
#main .mainInner:before,
#main .mainInner:after {
    position: absolute;
    top: 0;
    width: 10000%;
    height: 100%;
    display: block;
    content: '';
	background: #eefbed;
    /*background: url(../img/common/oblique_permeation.png);*/
}
#main .mainInner:before {
    right: 100%;
}
#main .mainInner:after {
    left: 100%;
}
#main .mainImgs li {
    /* float: left; */
	/*padding-left: 1px;*/
    background: #FFF;
}
#main .mainBtns li {
    position: absolute;
    width: 60px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    background: #FFF;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    cursor: pointer;
}
#main .mainBtns li img {
    vertical-align: middle;
}
#main .mainBtns li:first-child {
    left: 0;
}
#main .mainBtns li:last-child {
    right: 0;
}

#main .mainImgs a:hover{
    opacity: 0.7;
}


/*top movie*/
#topMovieContent{
  position: relative;
  text-align: center;
  color: #fff;
}
#loading {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 600px;
  width: 90%;
}
#loading.disappear{
  display: none;   
}
#topMovieArea{
  position: absolute;
  z-index: 1;
  top: 0;
  right:0;
  left:0;
  bottom:0;
  overflow: hidden;
  opacity: 0;    
}
/*jQueryで付与されたappearクラスがついたらYoutubeエリアを遅延表示*/
#topMovieArea.appear {
  animation-name:PageAnimeAppear;
  animation-duration:.5s;
  animation-fill-mode:forwards;
}
@keyframes PageAnimeAppear {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

#topMovie {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 177.77vw; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
  height: 56.25vh; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
  min-height: 100%;
  min-width: 100%;
}

/*youtubeがクリックされないためのマスク*/
#topMovieCover{
  position: absolute;
  z-index: 2;/*下から2番目に表示*/
  top:0;
  width:100%;
  height: 100%;
}


#topImgContent {
  /*display: none;*/
  text-align: center;
  margin: 0 auto;
}


#skipMovie {
  position: absolute;
  cursor: pointer;
    z-index: 10;
    right: 0;
    top: 0;
    background: rgba(0,0,0,0.5);
    font-size: 18px;
    padding: 5px 15px;
}



/* -------------------------------
   topContent
------------------------------- */



#homeVolunteerSec h2.tit {
    position: relative;
    background: var(--kks-red);
    color: #FFF;
    padding: 30px 20px 20px 20px;
    text-align: center;
    line-height: 1.2;
}
#homeVolunteerSec h2.tit span {
    position: relative;
    z-index: 1;
}
#homeVolunteerSec h2.tit:before {
    content: '';
    position: absolute;
  top: -30px;
    left: 50%;
    margin-left: -30px;
    background: url(../img/common/icon_volunteer_x2.png) center center no-repeat var(--kks-red);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
  width: 60px;
    height: 60px;
}
#homeVolunteerSec .inner {
    background: url(../img/common/oblique_pink.png) center top repeat;
}
#homeVolunteerSec .catch {
    color: #EB832C;
    text-align: center;
}


/*#featureSec dt {
    color: var(--kks-green);
    line-height: 1.2;
    margin-bottom: 20px;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
}
#featureSec dd img.fl-img {
    float: left;
    width: 50%;
    height: auto;
    margin: 0 10px 10px 0;
}
#featureSec dd :nth-child(n+2) {
    margin-top: 10px;
}*/

/*.detail dt{
    float: left;
    margin-bottom:5px;
}
.detail dd{
    margin-bottom:5px;
    overflow: hidden;   
}*/



/* -------------------------------
   news
------------------------------- */

#news #contents p,
#news #contents ul,
#news #contents ol,
#news #contents table,
#sponsors #contents p{
  margin: 0 0 10px;
}
#news #contents{
  line-height: 1.8;
}
#news #contents ul:not([class]) {
  list-style-type: none;
  text-indent: -1rem;
}
#news #contents ul:not([class]) > li {
  padding-left: 1rem;
}
#news #contents ul:not([class]) > li:nth-child(n+2) {
    margin-top: 10px;
}
#news #contents ul:not([class]) > li:before {
  padding-left: 1rem;
  display: inline-block;
  content: "\0030FB";
  font-weight: bold;
}

#news #contents ol:not([class]) {
    counter-reset: num;
}
#news #contents ol:not([class]) > li {
    list-style: none;
  margin-top: 10px;
    padding: 5px 0 0 15px;
}
#news #contents ol:not([class]) > li:before {
    counter-increment: num;
    display: inline-block;
    content: counter(num) '.';
    margin-left: -15px;
    min-width: 15px;
}
#news #contents ol:not([class]) > li:first-child {
  margin-top: 0;
    padding-top: 0;
}


/* -------------------------------
   outline
------------------------------- */

table.eventTable {
  width: 100%;
}
table.eventTable th,
table.eventTable td {
    border: 1px solid #23891e;
    padding: 15px 10px;
    text-align: center;
    vertical-align: middle;
}
table.eventTable thead th {
  background-color: #23891e;
  color: #fff;
  border-right-color: #fff;
}
table.eventTable thead th:last-of-type {
  border-right-color: #23891e;
}
table.eventTable tbody th.bgdc {
    color: #fff;
    background-color: #65BF60;
  text-align: left;
}
table.eventTable tbody th.bglc {
    background-color: var(--kks-lightgreen);
    color: var(--kks-green);
}

table.awardTable th,
table.awardTable td {
    border: 1px solid #ddd;
    padding: 15px 10px;
    text-align: center;
    vertical-align: middle;
}
table.awardTable thead th {
    background: var(--kks-lightgreen);
    font-weight: bold;
}


dl.maruListForOutline01 > dt,
dl.maruListForOutline01> dd,
dl.maruListForOutline02 > dt,
dl.maruListForOutline02 > dd {
  position: relative;
  padding-left: 1.5rem;
}
dl.maruListForOutline01 > dd + dt,
dl.maruListForOutline02 > dd + dt {
  margin-top: 10px;
}
dl.maruListForOutline01 > dt:before,
dl.maruListForOutline01 > dd:before,
dl.maruListForOutline02 > dt:before,
dl.maruListForOutline02 > dd:before {
  position: absolute;
  left: 0.25rem;
  margin-right: 5px;
}
dl.maruListForOutline01 > dt:nth-of-type(1):before {
  content: "\002460";
}
dl.maruListForOutline01 > dt:nth-of-type(2):before {
  content: "\002461";
}
dl.maruListForOutline01 > dt:nth-of-type(3):before {
  content: "\002462";
}

dl.maruListForOutline02 > dt:nth-of-type(1):before {
  content: "\002463";
}
dl.maruListForOutline02 > dt:nth-of-type(2):before {
  content: "\002464";
}
dl.maruListForOutline02 > dt:nth-of-type(3):before {
  content: "\002465";
}
dl.maruListForOutline02 > dt:nth-of-type(4):before {
  content: "\002466";
}



/* -------------------------------
   step
------------------------------- */

#stepList {
    background: url(../img/common/oblique_gray.png);
    padding: 10px;
}
#stepList:not(:first-child) {
    margin-top: 40px;
}
#stepList > dt {
    position: relative;
  font-size: 21px;
    padding: 10px;
    text-align: center;
  font-weight: bold;
    color: #FFF;
    background: #333;
}
#stepList.greenLabel > dt {
    background: var(--kks-green);
}
#stepList.redLabel > dt {
    background: var(--kks-red);
}
#stepList > dt:not(:first-child) {
    margin-top: 20px;
}
#stepList > dt:not(:first-child):before {
    display: inline-block;
    content: '';
    width: 40px;
    height: 40px;
    position: absolute;
    top: -30px;
    left: 50%;
    margin-left: -20px;
    background: url(../img/common/arr_flow.png) center center no-repeat var(--kks-green);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    z-index: 1;
}
#stepList.greenLabel > dt:not(:first-child):before {
    background-color: #9FCB3A;
}
#stepList > dt:not(:first-child):after {
    position: absolute;
    left: -10px;
    top: -10px;
    display: block;
    content: '';
    width: calc(100% + 20px);
    height: 1px;
    background: #FFF;
}
#stepList > dd {
    padding: 20px;
    background: #FFF;
    font-size: 16px;
}



#entrySec h2.tit {
    position: relative;
    background: var(--kks-green);
    color: #FFF;
    padding: 20px;
    text-align: center;
    line-height: 1.2;
}
#entrySec h2.tit span {
    position: relative;
    z-index: 1;
}
#entrySec h2.tit:before {
    content: '';
    position: absolute;
    left: 50%;
    background: url(../img/common/icon_entry_x2.png) center center no-repeat var(--kks-green);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}

#entrySec .inner.standard {
    background: var(--kks-lightgreen);
}
#entrySec .catch {
    color: #EB832C;
    text-align: center;
}


#entrySec h3.FCFSEntry {
  background:#A5CB10;
}
#entrySec h3.FCFSEntry.ex {
  background:#f30065;
}
#entrySec .FCFSEntry.inner {
  background: #F8FAF5;
}
#entrySec h3.secondEntry {
  background:#F8B500;
}
#entrySec .secondEntry.inner {
  background: #FFFAEC;
}
#entryBnrs li.comingsoon,
#entryBnrs li.end {
    position: relative;
}
#entryBnrs li.comingsoon:after,
#entryBnrs li.end:after{
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translate(-75%,-50%);
    -moz-transform: translate(-75%,-50%);
    -ms-transform: translate(-75%,-50%);
    -o-transform: translate(-75%,-50%);
    transform: translate(-75%,-50%);
    font-size: 16px;
    font-weight:bold;
    margin: auto;
}
#entryBnrs li.comingsoon:after {
  content: "準備中";
  color:#fff;
  z-index: 10;
}
#entryBnrs li.end:after {
    content: "受付終了しました";
    /*color:#e70000;*/
    color: #fff;
    z-index:10;
}
#entryBnrs.FCFSEntry li.end:after {
  display: flex;
  background: rgba(0,0,0,.7);
  position: absolute;
  top: 0;
  left: 0;
  right: unset;
  width: 100%;
  height: 100%;
  transform: none;
  align-items: center;
  justify-content: center;
}
#entryBnrs li a,
#entryBnrs li p {
    position: relative;
    display: block;
    /* background: url(../img/common/arr_green.png) right 10px center no-repeat #FFF; */
    background: #FFF;
    border: 1px solid #F2F2F2;
    padding: 40px 19px 40px 44px;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    text-decoration: none;
}
/* #entryBnrs.secondEntry li a,
#entryBnrs.secondEntry li p {
    background: url(../img/common/arr_orange.png) right 10px center no-repeat #FFF;
} */
#entryBnrs.FCFSEntry li a:before,
#entryBnrs.FCFSEntry li p:before {
  border-right-color:#A5CB10;
}
#entryBnrs.secondEntry li a:before,
#entryBnrs.secondEntry li p:before {
  border-right-color:#F8B500;
}
#entryBnrs.FCFSEntry.ex li a:before,
#entryBnrs.FCFSEntry.ex li p:before {
  border-right-color:#f30065;
}
#entryBnrs.FCFSEntry.ex li a {
  border: solid 2px #f30065;
  background-color: #f30065 !important;
  color: #fff;
  font-size: 15px;
  line-height: 1.8;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .5rem;
  padding-left: 2.5rem;
}
#entryBnrs.FCFSEntry.ex li a:hover{
  background-color:#fff !important;
  color: #f30065;
}
#entryBnrs.FCFSEntry.ex li a span{
  font-size: 20px;
}
#entryBnrs.FCFSEntry.ex li a img{
  width: 25%;
}
#entryBnrs li a:hover{
  color:var(--kks-green);
    opacity:1;
}
#entryBnrs.FCFSEntry li a:hover{
    color:#A5CB10;
}
#entryBnrs.secondEntry li a:hover{
    color:#F8B500;
}
#entryBnrs.FCFSEntry.ex li a:hover{
  color:#f30065;
}
.txt-activate {
  text-align: center;
  font-weight: bold;
  font-size: 200%;
  color: #990040;
}
#entryBnrs li a.unclickable {
    /*background: #FFF;*/
    pointer-events: none !important;
    cursor: text !important;
    background: rgba(0,0,0,0.6) !important;
}


#entryBnrs li a:before,
#entryBnrs li p:before {
    position: absolute;
    content: '';
    top: -42px;
    left: -42px;
    width: 0;
    height: 0;
    border: 42px solid transparent;
    border-right: 42px solid var(--kks-green);
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
#entryBnrs li a:after,
#entryBnrs li p:after {
    position: absolute;
    content: '';
    top: 5px;
    left: 10px;
    width: 18px;
    height: 26px;
    -moz-background-size:cover!important;
    -webkit-background-size:cover!important;
    -o-background-size:cover!important;
    -ms-background-size:cover!important;
    background-size:cover!important;
    background-position: center center;
    background-repeat: no-repeat;
}
#entryBnrs li span.entryBnrsTxt {
  position: absolute;
  width: 100%;
  margin: auto;
  vertical-align: middle;
  z-index: 1;
    top: 50%;
    transform: translateY(-50%);
}
#entryBnrs li.suspended {
  position: relative;
}
#entryBnrs li.suspended:after {
  content: "";
  position: absolute;
  background: rgba(0,0,0,0.5);
  width: 100%;
  height: 100%;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
#entryBnrs li.suspended a {
  pointer-events: none;
  cursor: default;
}
#entryBnrs li span.entryBnrs--coverTxt {
  position: absolute;
    z-index: 5;
  width: 100%;
  height: 100%;
  margin: auto;
  text-align: center;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
  color: #fff;
}
#entryBnrs li.entryBnrs--01 a:after,
#entryBnrs li.entryBnrs--01 p:after {
    background-image: url(../img/common/1.png);
}
#entryBnrs li.entryBnrs--02 a:after,
#entryBnrs li.entryBnrs--02 p:after {
  background-image: url(../img/common/2.png);
}
#entryBnrs li.entryBnrs--03 a:after,
#entryBnrs li.entryBnrs--03 p:after {
  background-image: url(../img/common/3.png);
}
#entryBnrs li.entryBnrs--04 a:after,
#entryBnrs li.entryBnrs--04 p:after {
  background-image: url(../img/common/4.png);
}
#entryBnrs li.entryBnrs--05 a:after,
#entryBnrs li.entryBnrs--05 p:after {
  background-image: url(../img/common/5.png);
}
#entryBnrs li.entryBnrs--06 a:after,
#entryBnrs li.entryBnrs--06 p:after {
  background-image: url(../img/common/6.png);
}
#entryBnrs li.entryBnrs--07 a:after,
#entryBnrs li.entryBnrs--07 p:after {
  background-image: url(../img/common/7.png);
}
#entryBnrs li.entryBnrs--08 a:after,
#entryBnrs li.entryBnrs--08 p:after {
  background-image: url(../img/common/8.png);
}
#entryBnrs li.entryBnrs--09 a:after,
#entryBnrs li.entryBnrs--09 p:after {
  background-image: url(../img/common/9.png);
}
#entryBnrs.ex li:not(.not-entryBnrs) a{
  background: #FFF;
  background-image: none;
}
#entryBnrs.ex li a:after{
  background-image: url(../img/common/dg-arrow.png) !important;
}
#entryBnrs.secondEntry li a:after{
  background-image: url(../img/common/dg-arrow.png) !important;
}
#entryBnrs li a.noArrow,
#entryBnrs li p.noArrow {
  background: #FFF;
}
#entryBnrs li.not-entryBnrs a:before,
#entryBnrs li.not-entryBnrs a:after{
  display: none;
}


@media screen and (max-width: 767px) {
  #entryBnrs.FCFSEntry.ex li a {
    flex-flow:column ;
  }
  #entryBnrs.FCFSEntry.ex li a img {
    width: 100%;
    margin-top: 1rem;
    margin-left: -1.5rem;
  }
}

table.feeTable {
  width: 100%;
}
table.feeTable th,
table.feeTable td {
  text-align: center;
  vertical-align: middle;
  padding: 15px 10px;
  border: 1px solid #23891e;
}
table.feeTable thead th.bgdc {
  background-color: #23891e;
  color: #fff;
  border-right-color: #fff;
}
table.feeTable thead th.bgdc:last-of-type {
  border-right-color: #23891e;
}
table.feeTable thead th.bglc {
  background-color: var(--kks-lightgreen);
  color: var(--kks-green);
  border-color: #23891e;
}

table.feeTable tbody th.bgdc {
  color: #fff;
  background-color: #65BF60;
}
table.feeTable tbody th.bglc {
  background-color: var(--kks-lightgreen);
  color: var(--kks-green);
}

table.feeTable02 th,
table.feeTable02 td {
    border: 1px solid #DDDDDD;
  padding: 15px;
  text-align: center;
  vertical-align: middle;
}
table.feeTable02 th {
  background: #F2F2F2;
  font-weight: bold;
}

/* -------------------------------
   about_entry
------------------------------- */

.aboutentryList > li{
  position: relative;
    padding: 15px 10px 15px 2rem;
}
.aboutentryList > li:before {
 content: "\0025B6";
  position: absolute;
  left: 0.5rem;
  top: 10px;
}
.aboutentryList > li:nth-child(odd){
  background:#efefef;
}


.inner.standard.thanks_fin{
position: relative;
pointer-events: none;
cursor: default;
}
.inner.standard.thanks_fin:before{
position: absolute;
content:"受付終了しました\Aたくさんのお申込みありがとうございました";
white-space: pre;
text-align: center;
font-size:150%;
font-weight:bold;
color:#fff;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) rotate(-10deg);
-ms-transform: translate(-50%, -50%) rotate(-10deg);
-webkit-transform: translate(-50%, -50%) rotate(-10deg);
-moz-transform: translate(-50%, -50%) rotate(-10deg);
z-index:2;
}

.inner.standard.thanks_fin:after{
position: absolute;
content:"";
background:#000;
top:20px;
left:15px;
right:15px;
bottom:20px;
opacity:0.65;
z-index:1;
}
@media screen and (max-width:767px){
    .inner.standard.thanks_fin:before{
        content:"受付終了しました\Aたくさんのお申込み\Aありがとうございました";        
    }
.inner.standard.thanks_fin:after{
top:0;
left:0;
right:0;
bottom:0;
}    
}



/* -------------------------------
   volunteer
------------------------------- */

#volunteerSec {
    background: url(../img/common/oblique_pink.png) center top repeat;
    text-align: center;
}
#volunteerSec h2.volunteerTit {
    position: relative;
    color: var(--kks-red);
    padding: 50px 20px 10px 20px;
    text-align: center;
}
#volunteerSec h2.volunteerTit:before {
    position: absolute;
    top: -30px;
    left: 50%;
    margin-left: -30px;
    content: '';
    width: 60px;
    height: 60px;
    background: url(../img/common/icon_volunteer_x2.png) center center no-repeat var(--kks-red);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}
#volunteerSec > .inner {
    padding: 0 20px 30px 20px;
    text-align: center;
}
#volunteerSec .btn a {
    display: inline-block;
    padding: 15px;
    line-height: 20px;
    width: 100%;
    max-width: 360px;
    color: var(--kks-red);
    font-size: 16px;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    border-radius: 25px;
    text-decoration: none;
    background-color: #d76653;
    color: #fff;
}
#volunteerSec .volunteerTitleBox > dt {
    background: var(--kks-red);
    color: #FFF;
    padding: 10px;
    font-size: 16px;
    font-weight: bold;
}
#volunteerSec .volunteerTitleBox > dd {
    background: #FFF;
    padding: 20px;
    font-size: 16px;
}
#volunteerSec .volunteerTitleBox > dd p.flows:before {
    display: block;
    content: '';
    width: 40px;
    height: 40px;
    background: url(../img/common/arr_flow.png) center center no-repeat var(--kks-green);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    margin: 10px auto;
}
#volunteerSec .volunteerTitleBox > dd p.flows.first:before {
    display: none;
    background: none;
}

.volunteerblockTable {
  table-layout: fixed;
  width: 100%;
}
.volunteerblockTable th,
.volunteerblockTable td {
  vertical-align: middle;
  text-align: center;
  border: 1px solid #EEE;
  padding: 10px;
}
.blockA {
    background: #FC0694;
    color: #FFF;
}
.blockB {
    background: #0054AF;
    color: #FFF;
}
.blockC {
    background: #FD7800;
    color: #FFF;
}
.blockD {
    background: #009644;
    color: #FFF;
}
.blockE {
    background: #A10082;
    color: #FFF;
}
.blockF {
    background: #009FED;
    color: #FFF;
}
.blockG {
    background: #F90000;
    color: #FFF;
}
.blockH {
    background: #7BCD0D;
    color: #FFF;
}

#entrySec .volunteerEntry.inner {
  background: #FEF4EB;
}
#entryBnrs.volunteerEntry li a:before,
#entryBnrs.volunteerEntry li p:before {
  border-right-color:#F58220;
}
#entryBnrs.volunteerEntry li a,
#entryBnrs.volunteerEntry li p {
    background: url(/2025/wp-content/uploads/2022/07/arr_volunteer.png) right 10px center no-repeat #FFF;
}
#entryBnrs.volunteerEntry li a:hover{
    color:#F58220;
}
#entryBnrs.volunteerEntry li:nth-child(1) a:after,
#entryBnrs.volunteerEntry li:nth-child(1) p:after {
    background-image: url(/2025/wp-content/uploads/2022/07/num01volunteer_x2.png);
}
#entryBnrs.volunteerEntry li:nth-child(2) a:after,
#entryBnrs.volunteerEntry li:nth-child(2) p:after {
    background-image: url(/2025/wp-content/uploads/2022/07/num02volunteer_x2.png);
}
#entryBnrs.volunteerEntry li:nth-child(3) a:after,
#entryBnrs.volunteerEntry li:nth-child(3) p:after {
    background-image: url(/2025/wp-content/uploads/2022/07/num03volunteer_x2.png);
}
#entryBnrs.volunteerEntry li:nth-child(4) a:after,
#entryBnrs.volunteerEntry li:nth-child(4) p:after {
    background-image: url(/2025/wp-content/uploads/2022/07/num04volunteer_x2.png);
}

.s-bold01{text-decoration: line-through 3px solid #993d3d !important;}
.s-bold02{text-decoration: line-through 4px solid #6b0000 !important;}
.s-bold03{text-decoration: line-through 3px solid #c00 !important;}


/* -------------------------------
   volunteeer information sessions
------------------------------- */
table.volunteerGuidanceTable {
  table-layout: fixed;
}
table.volunteerGuidanceTable td {
  border: 1px solid #ddd;
}
table.volunteerGuidanceTable thead th {
  background: var(--kks-green);
  border: 1px solid var(--kks-green);
  border-right-color: #fff;
  color: #fff;
  text-align: center;
  padding: 10px;
}
table.volunteerGuidanceTable thead th:last-of-type {
  border-right-color: var(--kks-green);
}
[class*="volunteerGuidanceTit"] {
  font-size: 14px;
  font-weight: bold;
  padding: 5px;
}
.volunteerGuidanceTit__reception {
    background-color: #eaf6ff;
}
.volunteerGuidanceTit__course {
    background-color: #e6f5ca;
}
.volunteerGuidanceTit__start {
    background-color: #fff7c0;
}
.volunteerGuidanceTit__goal {
    background-color: #ffecd2;
}
.volunteerGuidanceTit__rescue {
    background-color: #ffeaf2;
}

/* -------------------------------
   volunteeer orientation
------------------------------- */

.volunteer-movie .volunteer-movie-thumbnail a {
  position: relative;
  display: block;
}
.volunteer-movie .volunteer-movie-thumbnail a:before {
  content: "";
  position: absolute;
  background: rgba(0,0,0,0.5);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: block;
  width: 100%;
}
.volunteer-movie .volunteer-movie-thumbnail a:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 80px;
  height: 60px;
  background: url('/2025/wp-content/themes/kks/img/common/sidebnr/youtube.png') no-repeat center center;
  background-size: contain;
  
}

/* -------------------------------
   qa
------------------------------- */

.qaSec:not(:first-child) {
    margin-top: 40px;
}
.qaSec h2.qaTit {
    position: relative;
    background: var(--kks-green);
    color: #FFF;
    padding: 10px;
}
.qaSec .qaBox {
    margin-top: 30px;
}
.qaSec .qaAnswer {
    margin-top: 20px;
}
.qaSec h3.qaTit {
    position: relative;
    color: var(--kks-green);
    padding: 10px 50px 10px 1.5em;
    margin-top: -10px;
    border-bottom: 1px solid #EEE;
    cursor: pointer;
}
.qaSec h3.qaTit:before {
    display: inline-block;
    content: 'Q.';
    width: 1.5em;
    margin-left: -1.5em;
}
.qaSec h3.qaTit:after {
    display: inline-block;
    content: '';
    width: 40px;
    height: 40px;
    position: absolute;
    top: 0;
    right: 0;
    background: url(../img/common/arr_flow.png) center center no-repeat var(--kks-green);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    z-index: 1;
    -moz-transition-duration:0.25s;
    -o-transition-duration:0.25s;
    -ms-transition-duration:0.25s;
    transition-duration:0.25s;
}
.qaSec section.open h3.qaTit:after {
    -moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
.qaSec section .inner {
    padding: 20px 0 0 20px;
}

.contactBox dt {
  font-size: 18px;
    font-weight: bold;
    padding-bottom: 10px;
    border-bottom: 1px solid #EEE;
    margin-bottom: 20px;
/*    text-align: center;*/
}
.contactBox dd {
    margin-top: 10px;
}
.contactBox dd .tel {
    font-weight: bold;
    color: var(--kks-red);
}

.qaList li a:before{
    display: inline-block;
    content: '>';
    width: 14px;
    height: 14px;
    background: var(--kks-green);
    border-radius: 50%;
    margin-right: 5px;
    background-size: 8px auto!important;
    vertical-align: middle;
    transform: rotate(90deg);
    color: #FFF;
    text-align: center;
    line-height: 14px;
}

#contents ul.qaList li{
    margin-bottom: 10px;
}


/* -------------------------------
   gallery
------------------------------- */

#group02,
#group03,
#group04,
#group05,
#group06,
#fanrun{
    display: none;
}
.photogallery > li {
  margin-bottom: 1%;
}


/* ------------------------------
    sponsor
------------------------------- */

section.sponsorSection,
.sponsorSection .sponsor-sec {
    margin-bottom: 30px;
}
.sponsorSection [class*=sponsor-tit] {
  text-align: center;
    font-weight: bold;
    padding-bottom: 15px;
    line-height: 1.2;
}
.sponsorSection .sponsor-tit-gold {
    border-bottom: 1px solid #e6b422;
    color: #e6b422;
}
.sponsorSection .sponsor-tit-silver {
    border-bottom: 1px solid #C0C0C0;
    color: #C0C0C0;
}
.sponsorSection .sponsor-tit-bronze {
    border-bottom: 1px solid #C47222;
    color: #C47222;
}
.sponsorSection .sponsor-tit-supporting {
    border-bottom: 1px solid var(--kks-green);
    color: var(--kks-green);
}
.sponsorSection .sponsor-tit-drink {
    border-bottom: 1px solid #13a6d7;
  border-top: none;
    color: #13a6d7;
}
.sponsorSection [class*=sponsor-list] {
    text-align: center;
    padding-top: 20px;
    padding-bottom: 20px;
}
.sponsorSection [class*=sponsor-list] ul:after {
    content: "";
    display: block;
    clear: both;
}
.sponsorSection [class*=sponsor-list] ul li {
    float: left;
    line-height: 100%;
    font-size: 0;
}
.sponsorSection [class*=sponsor-list] ul li img {
    width: 100%;
}


.sponsorSection .sponsor-list-supporting {
    padding-top:7.5px;
    padding-bottom:7.5px;
}
.sponsorSection .sponsor-list-supporting ul li {
  font-size: 16px;
    display: inline-block;
    color: #666;
    line-height: 140%;
    word-break: keep-all!important;
}
.sponsorSection .sponsor-list-supporting ul li a {
    color: #666;
}
.sponsorSection .sponsor-list-supporting ul li a:hover {
    color: #333;
}

/* -------------------------------
   協賛社チラシ
------------------------------- */
.sponsorAnnouncementSec {
  gap: 2%;
}
.sponsorAnnouncementSec.flexBlockPsuedoCol_before:before {
  content: "";
  display: block;
  width:32%;
  order: 1;
}
.sponsorAnnouncementSec.flexBlockPsuedoCol_after:after {
  content: "";
  display: block;
  width:32%;
}
.sponsor-announcement .sponsor-announcement-ttl a {
  color: var(--kks-green);
  position: relative;
}
.sponsor-announcement .sponsor-announcement-ttl a:after {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  background: url('/2025/wp-content/themes/kks/img/common/up-right-from-square-solid.svg') no-repeat center center;
  background-size: contain;
  top: 0;
  bottom: 0;
  margin: auto;
  margin-left: 10px;
}
.sponsorAnnouncementSec .flexBlock--SponsorAnnouncementCol_V,
.sponsorAnnouncementSec .flexBlock--SponsorAnnouncementCol_H {
display:grid;
grid-template-rows: 3em auto;
align-items: center;
}
.sponsor-announcement {
display:contents;
}


/* ------------------------------
    guest
------------------------------- */

/* 大会ゲスト */
.imgBox--guest .imgBox--guestPic img {
  border: solid var(--kks-green) 1px;
  box-sizing: border-box;
}
.imgBox--guest {
  padding-bottom: 20px;
    border-bottom: 1px dotted #CCC;
}
.imgBox--guest.last {
    border-bottom: none;
}

table.bdrlessTable--guest > tbody > tr > th,
table.bdrlessTable--guest > tbody > tr > td {
  padding: 2px;
}

.mokuji_guest{
background-color:#ECF5EB;
border:2px solid #d3e9d0;
padding:14px 14px 8px;
border-radius:5px;
box-sizing: border-box;
}
.mokuji_guest ul li{
display: block;
margin-bottom:7px;
}
.mokuji_guest ul li:before{
content: "▼";
font-size:0.8em;
margin-right:3px;
}
.mokuji_guest ul li a{
    text-decoration: none;
}

.guestsec .guestRunnerEvent .guestRunnerEvent--term {
    color: #FFF;
    padding: 3px 3px 3px 10px;
    font-size: 14px;
    font-weight: bold;
}
.guestsec .guestRunnerEvent .guestRunnerEvent--term.marathon {
  background: #6EB929;
}
.guestsec .guestRunnerEvent .guestRunnerEvent--term.funrun {
  background: #EF7D00;
}


/* ------------------------------
    platinum runner
------------------------------- */
/*#contents .platinum-runner {
    border-top: 1px dotted #CCC;
}

#contents .platinum-runner > dt {
    color: #6eb92b;
    font-weight: bold;
    text-align: center;
}*/

/* ------------------------------
    lunch-aid
------------------------------- */
.imgBox--lunchAid {
    border-bottom: 1px dotted #ccc;
    margin: 15px 0;
    padding: 0 0 15px;
}

/* ------------------------------
    raceday-services
------------------------------- */
/*#contents .serivice-info-box:after {
    content: "";
    display: block;
    clear: both;
}
#contents .serivice-info-box .logo {
    float: right;
}
#contents .serivice-info-box .logo img {
    width: 100%;
}
#contents .serivice-info-box .txt {
    display: block;
}*/

/* ------------------------------
    オフィシャルグッズ
------------------------------- */
/*.official-goods-sec .official-goods-ttl{
    text-align:center;
    font-weight:bold;
    font-size:14px;
    background:#41993a;
    color:#fff;
    padding:15px 10px;
}
.official-goods-sec .official-goods {
    border: 1px solid #ccc;
}
.official-goods-info-ttl {
    text-align:center;
    font-weight:bold;
    font-size:14px;
    background: #6eb92b;
    color:#fff;
    padding:15px 10px;
}

.official-goods-sec .col2 .item{
    width: 300px;
    float: left;
    margin: 10px auto 0 !important;
    padding: 15px 0;
    text-align: center;
}

.official-goods-sec .col2 .item .item_inner p,
.official-goods-sec .col1 .item .item_inner p{
    color: #333 !important;
    font-weight: normal !important;
    padding-top: 5px;
}
*/

/* ------------------------------
    コースマップ
------------------------------- */
#contents .courseAnchorLink > p {
  margin: 15px auto;
  padding: 0 15px;
  text-align: center;
}
.courseAnchorLink > p:before {
  content: '\0025BC';
}

.cousedetailBlock {
  vertical-align: top;
  margin: 0 auto 10px;
}
.cousedetailPhoto {
  margin: 10px auto;
  text-align: center;
}

/* ------------------------------
    交通アクセス
------------------------------- */
table.accessTable > tbody > tr > th {
    padding-left: 1rem;
    position: relative;
}
table.accessTable > tbody > tr > th:before {
    left: 0;
    position: absolute;
  content: "\0030FB";
  font-weight: bold;
}

/* ------------------------------
    ペースチャート
------------------------------- */
/*h3.chart_tit {
    background: var(--kks-green);
    color: #FFF;
    padding: 10px;
    margin: 5% 0;
}
.chart_box{
    width:98%;
}
.chart_box p{
    margin-bottom:5%;
}
*/


/* ------------------------------
    マナーアップ
------------------------------- */
h3.safetyTit{ width: 100%; padding: 15px 0px; text-indent: 20px; font-weight: bold; color:#fff; background: #6eb92b; font-size: 16px; margin-bottom: 25px; }
dl.safetyDl{ margin-bottom:30px; }
dl.safetyDl > dt{ 
    margin-left: 10px;
    font-weight:bold;
    margin-bottom: 10px;
    font-size: 14px;
    background:url(/2025/wp-content/themes/kks/img/safety/arrow.jpg) left top 2px no-repeat;
    text-indent: 15px;
}
dl.safetyDl > dd{ margin-left: 25px; margin-bottom: 20px; }


/* ------------------------------
    キッズマラソン
------------------------------- */
.kidsmarathon_table th{
white-space:nowrap;
}


/* ------------------------------
    ランナーへの手紙
------------------------------- */
/*.clearfix {
    display: block;
}
.letter p.about {
    margin: 25px 0px;
}
.letter ul.anchor_link {
    margin-bottom: 25px;
}
.letter ul.anchor_link li {
    margin-bottom: 15px;
}
.letter h3 {
    width: 100%;
    padding: 15px 0px;
    text-indent: 20px;
    font-weight: bold;
    color: #fff;
    background: #6eb92b;
    font-size: 16px;
    margin-bottom: 25px;
}
.letter table.letter-table--01 {
    margin-bottom: 35px;
    display: table;
    border-collapse: separate;
    border-spacing: 2px;
    border-color: grey;
}
.letter table.letter-table--01 tbody {
    display: table-row-group;
    vertical-align: middle;
    border-color: inherit;
}
.letter table.letter-table--01 tr {
    display: table-row;
    vertical-align: inherit;
    border-color: inherit;
}
.letter table.letter-table--01 th {
    background: #f85f0d;
    color: #fff;
    width: 170px;
    border-radius: 3px;
    font-weight: bold;
    text-align: center;
}
.letter table.letter-table--01 td {
    width: 530px;
    background: #fffde4;
    padding: 10px;
    box-sizing: border-box;
    border-radius: 3px;
}
.letter table.letter-table--02 tbody {
    display: table-row-group;
    vertical-align: middle;
    border-color: inherit;
}
.letter table.letter-table--02 tr {
    display: table-row;
    vertical-align: inherit;
    border-color: inherit;
}
.letter table.letter-table--02 th {
    background: #f85f0d;
    color: #fff;
    width: 600px;
    border-radius: 3px;
    font-weight: bold;
    text-align: center;
    padding: 5px;
}
.letter table.letter-table--02 td {
    width: 600px;
    background: #fffde4;
    padding: 10px;
    box-sizing: border-box;
    border-radius: 3px;
}
.letter .goods-box {
    width: 600px;
    text-align: center;
}
.letter h4 {
    display: inline-block;
    color: var(--kks-green);
    font-weight: bold;
    padding-bottom: 15px;
    line-height: 1.2;
    border-bottom: 1px solid var(--kks-green);
    font-size:21px;
}
.letter ul.goods,
.letter ul.goods-no-pic {
    border-top: 1px solid #CCC;
    margin-top: -1px;
    padding-top: 20px;
    margin-bottom: 50px;
}
.letter ul.goods,
.letter ul.goods-no-pic {
    margin-bottom: 30px;
}
.letter ul.goods-no-pic li {
    margin-bottom: 5px;
}
.letter .teacher {
    width: auto;
    margin: 30px auto 25px;
    text-align: center;
}
.letter .teacher li {
    width: 185px;
    display: inline-block;
}
.letter .teacher li img {
    width: 185px;
    margin-bottom: 5px;
}
.letter .teacher li dt {
    font-weight: bold;
    margin-bottom: 3px;
    color: #399f32;
    font-size: 14px;
}
.letter .teacher li dd {
    color: #399f32;
}
*/

/* ------------------------------
    交通規制情報
------------------------------- */

/* ------------------------------
        副賞
------------------------------- */
/*p.award_lead{
    font-weight:bold;
    margin-bottom:5%;
}
    h3.award_tit {
    position: relative;
    background: var(--kks-green);
    color: #FFF;
    padding: 10px;
    margin-bottom: 20px;
    }
.company_Box{
    margin-bottom:10%;
}
.meiji_Box{
    display: flex;
    flex-flow: row wrap;
}
.award_meiji_img{
    margin-top:3%;
}
.company_Box p.details{
    margin-top:6%;
}
.company_Box p.item_name{
    font-weight:bold;
    font-size:110%;
}
.company_Box p.item_name2{
    font-weight:bold;
    font-size:110%;
    margin-top:6%;
}*/
/* ------------------------------
    北九州マラソン応援団
------------------------------- */
/*.small_sponcer p{
   line-height:1.8em;
}
*/
/* ------------------------------
    大型手荷物預かり
------------------------------- */
/*#contents .text-box {
margin-bottom: 10px;
width: 65%;
float: left;
}
#contents .bg-ser-img {
float: right;
margin-bottom: 40px;
display: block;
}
.br-sp { display: none; }
.landmark{
    color:#FF0000;
    border:solid 4px #FF0000;
    padding:2%;
    font-weight:bold;
    font-size:103%;
    margin-top:3%;
    text-align:center;
}*/
/* ------------------------------
    特別招待選手等来場イベント
------------------------------- */
/*    .special_visit p.text_box1{
        margin:4% 0;
    }
    .special_visit p.text_box2{
        margin-top:4%;
        background: #ecffb9;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
        padding:3%;
        overflow: auto;
    }
    .mizuno, .manners_up{
        margin-bottom:10%;
    }
    .special_visit .mizuno p.midasi,
    .special_visit .manners_up p.midasi{
        font-weight:bold;
        font-size: 146%;
    }
    .special_visit .mizuno img {
        vertical-align: top;
        float: left;
        margin: 0px 2px 15px 2px;
        width: 49%;
    }*/

/* ------------------------------
    スペシャルゲスト
------------------------------- */
  .specialGuestArea .specialGuestBox {
    border: solid 2px #e5f2ff;
    border-radius: 1rem;
    margin-bottom: 1.5rem;
    background-image: linear-gradient(120deg, #fff 35%, #e5f2ff);
  }
  .specialGuestArea .specialGuestBox.app {
    background: #fff462;
    border-color: #ffed00;
  }
  .specialGuestArea .specialGuestBox.event {
    background: #98fb98;
    border-color: #00ed00;
  }
  .specialGuestArea .specialGuestBox > .inner {
    padding: .5rem;
    /* border-top: 5px dotted #ffcf77;
    padding-top: 25px;
    padding-bottom: 0; */
  }
  .specialGuestArea .specialGuestBox > .inner p{
    line-height: 2.0;
  }
  .specialGuestArea .specialGuestBox > .inner h4 {
    background: #fff;
    padding:  1rem 1rem .5rem;
    border-radius: 8px 8px 0 0;
  }
  .specialGuestArea .specialGuestBox > .inner .head {
    background: #fff;
    padding: 0 1rem 1rem;
    margin-bottom: 10px;
    border-radius: 0 0 8px 8px;
  }
  .specialGuestArea .specialGuestBox > .inner .info-image img{
    width: 100%;
  }
  /* .specialGuestArea .specialGuestBox:first-of-type > .inner {
    border-top: none;
  } */
  .specialGuestTit {
    position: relative;
    font-size: 16px;
    font-weight: bold;
    color: #0052a5;
    padding: 0.5em 0 0.5em 1.5em;
    border-bottom: 2px solid #0052a5;
    border-image: linear-gradient(to right, #fff 0%,#aaedf7 10%,#aacaf7 50%, #aaedf7 90%, #e5f2ff 100%);
    border-image-slice: 1;
  }
  .specialGuestTit:before {
    content: "";
    position: absolute;
    background: #aacaf7;
    top: 0;
    left: 10px;
    height: 12px;
    width: 12px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .specialGuestTit:after {
    content: "";
    position: absolute;
    background: #aaedf7;
    top: 15px;
    left: 3px;
    height: 8px;
    width: 8px;
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
  }
  .bgdcBtn__specialGuest a.specialGuestTitBgc {
    background-color: #ff8e8e;
    border-radius: 3px;
    padding: 10px 8px;
  }
  .specialGuestArea .specialGuestBox.app .specialGuestTit{
    color: #079d00;
    border-bottom: 2px solid #079d00;
    border-image:none;
    font-size: 20px;
    line-height: 1.0;
  }
  .specialGuestArea .specialGuestBox.app .specialGuestTit:before{
    background:#6eb92b;
  }
  .specialGuestArea .specialGuestBox.app .specialGuestTit:after{
    background:#a5cb10;
  }
  .specialGuestArea .specialGuestBox.event .specialGuestTit{
    color: #6f51a1;
    border-bottom: 2px solid #6f51a1;
    border-image:none;
    font-size: 20px;
    line-height: 1.0;
  }
  .specialGuestArea .specialGuestBox.event .specialGuestTit:before{
    background:#a77bf1;
  }
  .specialGuestArea .specialGuestBox.event .specialGuestTit:after{
    background:#d6c7ef;
  }
  @media screen and (max-width: 767px) {
    .specialGuestArea .specialGuestBox {
      padding: 1rem 5px;
    }
    .specialGuestArea .specialGuestBox > .inner {
      padding: 0;
    }
    .specialGuestArea .specialGuestBox > .inner h4 {
      padding:  1rem .5rem .5rem;
    }
    .specialGuestArea .specialGuestBox > .inner .head {
      padding: 0 .5rem 1rem;
    }
  }
/* ------------------------------
    走行時の注意
------------------------------- */
/*.safety{}
.safety p{ font-size: 14px; }
.safety p.lead{ margin-bottom: 4%; }
.safety h3{ width: 100%; padding: 15px 0px; text-indent: 20px; font-weight: bold; color:#fff; background: #6eb92b; font-size: 16px; margin-bottom: 25px; }
.safety dl{ margin-bottom:30px; }
.safety dt{ 
    margin-left:10px;
    font-weight:bold;
    margin-bottom:10px;
    font-size:14px;
    background:url(https://kitakyushu-marathon.jp/wp-content/themes/kks/img/safety/arrow.jpg) left top 2px no-repeat;
    text-indent:14px;
}
.safety dd{ margin-left: 20px; margin-bottom: 20px; }
.safety ul{}
.safety li{ margin-left: 0px; font-weight:bold; margin-bottom: 10px; font-size: 14px; background:url(https://kitakyushu-marathon.jp/wp-content/themes/kks/img/safety/arrow.jpg) left top 4px no-repeat; line-height: 180%; text-indent: 0px; padding-left: 20px; }
*/
/* -------------------------------
   ambassador
------------------------------- */
/*#ambassador .ambassador-profile:after {
    clear: both;
    display: block;
    content: '';
}
#ambassador .ambassador-profile .ambassador-img  {
    float: left;
}
#ambassador .ambassador-profile .ambassador-img img {
    width: 144px;
    border: 1px solid #eee;
}
#ambassador .ambassador-profile .ambassador-txt {
    float: right;
    width: calc(100% - 154px);
    margin: 10px 0 0 10px;
    text-align: left;
}
#ambassador.ambassador-waku {
    border: solid 1px var(--kks-green);
    padding: 10px 0;
}
#ambassador.special-ambassador {
    overflow: hidden;
}
#ambassador.special-ambassador figure img {
    border: solid var(--kks-green) 1px;
    float: left;
    margin-right: 15px;
}*/

/* -------------------------------
   fun_lottery
------------------------------- */
/*.lottery_img{
width: 300px;
}

.lottery_table th,.lottery_table td{
    border:1px solid #eee !important;
    padding:6px 10px;
}
.lottery_table th{
    background:var(--kks-lightgreen);
    text-align:center;
}

.lottery_table td:last-child{
    text-align:right;
}

.lottery_table td:nth-last-child(1){
    border-left:none !important;
}

.lottery_table td:nth-last-child(2){
    border-right:none !important;
}

.lottery_table td{
    vertical-align:middle;
}

.lottery_table td span{
    font-size:0.8em !important;
}*/

/*
.fun_lottery_col2 li{
    border:1px solid #ccc !important;
    padding:10px;
    box-sizing:border-box;
}

.fun_lottery_col2 li .co{
    height:65px;
}

.fun_lottery_col2 li img{
    width:100% !important;
    margin-bottom:10px;
}

.fun_lottery_col2 p{
    font-weight:bold;
}

.fun_lottery_col2 p span{
    font-weight:normal;
}
*/

/* -------------------------------
   SDGsページ
------------------------------- */
.sdgs_sponsor{
margin-top:10px;
}
.sdgs_sponsor li{
display: inline-block;
font-weight:bold;
font-size:0.95em;
margin-right:0.5em;
position: relative;
}
.sdgs_sponsor li:before{
content: "▶";
color: #c00;
margin-right: 0.5em;
}
.sdgs_sponsor_img{
position: relative;
top:-10px;
}
.h2_sponsor_sdgs{
background-color: #002060;
color: #fff;
padding:10px 5px;
text-align: center;
margin-bottom:10px;
}

.sdgs_contents{
margin-bottom:60px;
}
.flexwrap_sdgs_tit{
display: flex;
align-items: center;
margin:0 auto 15px;
}
.flexwrap_sdgs_tit .topic{
font-size:1.35em;
font-weight:bold;
margin-left:14px;
}
.sdgs_sponsor_list{
background-color:#edf9ff;
border:1px solid #002060;
padding:15px;
}
.flexwrap_sdgs{
display:flex;
justify-content: center;
}
.flexwrap_sdgs div:nth-child(odd){
margin-right:0.5%;
margin-bottom:1%;
}
.flexwrap_sdgs div:nth-child(even){
margin-left:0.5%;
margin-bottom:1%;
}
.flexwrap_sdgs div img {
max-width: 340px;
width:100%;
}



/* -------------------------------
  countermeasure against coronavirus
------------------------------- */
.measuresAgainstCoronavirusImagesEachContent {
  padding: 20px 0;
}
.measuresAgainstCoronavirusImagesEachContent:nth-of-type(n+2) {
  margin-top: 20px;
  border-top: 1px dotted #ccc;
}
.mhlwLinkBtn a {
  margin-left: auto;
  margin-right: auto;
  display: block;
  position: relative;
  color: #105743;
  border: double 6px #00815E;
  text-align: center;
  text-decoration: none;
}
.mhlwLinkBtn a:after {
  content: "\00BB";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.entry_thanks{
padding: 15px 10px;
background: #F8FAF5;
font-size: 1.15rem;
font-weight: bold;
color: #2c7b28;
}
.entry_thanks ul {
font-size: 0.9rem;
color: #222;
}
.entry_thanks ul li {
text-indent: -1em;
padding-left: 1em;
margin-bottom: 7px;
}

dd.slider-wrap{
	display: flex;
	position: relative;
  overflow: hidden;
}
dd ul.slider{
	display: flex;
	padding: 0;
	margin: 0;
	position: relative;
	transition: all 0.5s 0s ease;
}
dd ul.slider li{
    list-style-type: none;
    position: relative;
    text-align: center;
    width: 220px;
}
dd ul.slider li .sponsor-announcement-ttl a{
  color: #333;
  text-decoration: none;
}
dd ul.slider li img{
  max-width: 180px;
	margin: 0 20px;
}
dd ul.slider li dl dt{
  color: #333 !important;
}
dd ul.slider.moveon li{
	animation: Animation 1000ms linear;
}
dd ul.slider.fadein li::before{
	content: '';
	opacity:1;
	width: 100%;
	height: 100%;
  background: rgba(255,255,255,.85);
	display: block;
	position: absolute;
	animation: FadeIn 300ms linear;
}
dd ul.slider.fadeout li::before{
	opacity:0;
	animation: FadeOut 300ms linear;
}
@media screen and (max-width: 767px) {

  dd ul.slider li{
    width: calc(100vw - 10px);
  }
  dd ul.slider li img{
    max-width: 100%;
    margin: 0 5px;
  }
}

@keyframes Animation {
	0%{
		transform: translateX(0%);
	}
	100%{
		transform: translateX(-100%);
	}
}
@keyframes AnimationReverse {
	0%{
		transform: translateX(0%);
	}
	100%{
		transform: translateX(100%);
	}
}
@keyframes FadeIn {
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
@keyframes FadeOut {
	0%{
		opacity: 1;
	}
	100%{
		opacity: 0;
	}
}
.no-link{
	pointer-events: none;
}
.bnr-hotel a{
	/* background-image: url(/2025/wp-content/themes/kks/img/home/bnr-hotel-reservation.jpg); */
	background-image: url(/2025/wp-content/themes/kks/img/home/bnr_hotel_reservation2025_pre.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	width: 100%;
	max-width: 680px;
	height: auto;
	aspect-ratio: 680 / 180;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	padding-bottom: 18px;
	text-decoration: none;
}
.bnr-hotel a .text{
	text-align: center;
	font-size: 22px;
	color: #fff;
}
@media screen and (max-width: 767px) {
	.bnr-hotel a{
		padding-bottom: 9px;
	}
	.bnr-hotel a .text{
		font-size: 13px;
	}
}
.slide-outerwrap{
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.slider-wrap{
	display: flex;
	position: relative;
  overflow: hidden;
  margin: auto;
}
@media screen and (min-width: 641px) {
  .slide-inner li,
  .slider-wrap{
    width: 1200px;
  }
}
@media screen and (max-width: 640px) {
  .slide-inner li,
  .slider-wrap{
    width: 100vw;
  }
}
.slide-inner{
	display: flex;
	padding: 0;
	margin: 0;
	position: relative;
	transition: all 0.5s 0s ease;
}
.slide-inner li{
	list-style-type: none;
	position: relative;
}
.slide-inner.moveon li{
	animation: Animation 1000ms linear;
}
.slide-inner.reverse li{
	animation: AnimationReverse 1000ms linear;
}
.slide-inner li a{
	position: relative;
  z-index: 1;
}
.slide-inner li img{
  width:100%;
  max-width: 1200px;
}
.slide-inner li:not(.current)::before{
	content: '';
	opacity:0;
	width: 100%;
	height: 100%;
  background: rgba(255,255,255,.85);
	display: block;
	position: absolute;
  z-index: 1;
}
.slide-inner.fadein li::before{
	content: '';
	opacity:1;
	width: 100%;
	height: 100%;
  background: rgba(255,255,255,.85);
	display: block;
	position: absolute;
	animation: FadeIn 300ms linear;
  z-index: 1;
}
.slide-inner.fadeout li::before{
	opacity:0;
	animation: FadeOut 300ms linear;
  z-index: 1;
}
.slide-nav {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.slide-nav > div {
  z-index: 999;
}
.slide-nav .btn-arrow{
  width: 70px;
  height: 70px;
  cursor: pointer;
  opacity: 0.7;
}
.slide-nav .btn-arrow.rev{
  transform: scale(-1, 1);
}
.slide-nav .btn-arrow:hover{
  opacity: 0.9;
}
.pointer-none{
	pointer-events: none;
}
@media screen and (max-width: 767px) {
  .slide-nav .btn-arrow{
    width: 40px;
    height: 40px;
  }
}

.d-flex{
  display: flex;
}
.d-flex .right-box{
  display: block;
  text-align: left;
  padding-left: 1rem;
}
@media screen and (max-width: 767px) {
  .d-flex{
    flex-flow: column;
    align-items: center;
    justify-content: center;
  }
  .d-flex > *{
    width: 100%;
  }
}

/* .sponsor-announcement-slide{
  display: none !important;
} */
/* #sponsor-announcement-test{
  & dt.sponsor-announcement-slide{
      display: block !important;
  }
  & dd.sponsor-announcement-slide{
    display: flex !important;
  }
} */
dt.sponsor-announcement-slide{
    display: block;
}
dt.sponsor-announcement-slide a{
  color: var(--kks-green);
  text-decoration: none;
  display: block;
}
dt.sponsor-announcement-slide a:hover{
  opacity: .7;
}
dd.sponsor-announcement-slide{
	display: flex !important;
}
.info-end-entry .box {
	margin-bottom: 20px;
	border: solid 3px #c00;
	border-radius: .3rem;
	background: #fff2f2;
	padding: 1rem;
	text-align: center;
	font-size: 120%;
	font-weight: bold;
	color: #c00;
	line-height: 1.8;
}
@media screen and (max-width: 375px) {
  .info-end-entry .box {
		font-size: 100%;
		padding: 1rem .5rem;
	}
}
.sponsor-txt {
	text-align: center!important;
	font-size: 12px;
	line-height: 1.8;
}
.movie.youtube iframe{
  width: 100%;
  height: auto;
  aspect-ratio: 560 / 315;
}
table.pacerTable{
	border-collapse:collapse;
	width: auto;
}
table.pacerTable thead tr th{
	border: solid 1px #cfcfcf;
	text-align: center;
	padding: .5rem 1rem;
}
table.pacerTable tbody tr th,
table.pacerTable tbody tr td{
	border: solid 1px #cfcfcf;
	padding: .5rem 1rem;
}
table.pacerTable thead tr th:first-of-type,
table.pacerTable tbody tr th{
	background: #f5faf5;
}
table.pacerTable tbody tr td:nth-of-type(2){
	min-width: 15rem;
}
@media screen and (max-width: 767px) {
	table.pacerTable tbody tr th,
	table.pacerTable tbody tr td{
		border: solid 1px #cfcfcf;
		padding: .5rem;
	}
	table.pacerTable tbody tr td:nth-of-type(2){
		min-width: unset;
	}
}
.block-cs {
    height: 10rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    background: #f5f5f5;
    margin-bottom: 30px;
    color: #999;
}