@charset "UTF-8";



/* bootstrap.cssを上書き
-------------------------------------------------------------------------------- */

a:link {
  color: #0000ff;
  text-decoration: none;
}
a:visited {
  color: #006699;
  text-decoration: none;
}
a:hover {
  color: #0000ff;
  text-decoration: underline;
}
a:active {
  color: #006699;
  text-decoration: underline;
}
body {
  /*font-size: 14px;*/
  font-family: "Meiryo", "Hiragino Sans", "Hiragino Kaku Gothic ProN", sans-serif;
  line-height: 1.5;
  font-feature-settings: "palt";/*文字詰め*/
  /*font-feature-settings: "pkna";*//*文字詰め プロポーショナルかな*/
  /*font-feature-settings: "pwid";*//*文字詰め プロポーショナル字形*/
  color: #000000;
  background-color: #ffffff;
}
@media (min-width: 768px) {
  .container {
    /*width: 750px;*/
    width: 100%; /*768px以上991px以下で変動*/
    max-width: 970px; /*992px以上は幅を固定する*/
    margin-inline: auto;
  }
}
@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}
@media (min-width: 1200px) {
  .container {
    /*width: 1170px;*/
    width: 970px;/*992px以上は幅を固定する*/
    margin-inline: auto;
  }
}
.item{
  margin-bottom: 50px;
}
img {
  border-width: 0px;
}
p {
  margin: 0px;
  padding: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin: 0px;
  padding: 0px;
}
ul {
  margin: 0px;
  padding: 0px;
  list-style-type: none;
}
dl,dt,dd {
  margin: 0px;
  padding: 0px;
}

/*2022追加 一部のborderが太くなるChromeのバグ回避のため*/
table {
  border-collapse: separate;
  border-spacing: 0;
}
/**/

th {
  font-weight: normal;
  text-align: left;
  vertical-align: top;
}
td {
  vertical-align: top;
}


.ff21NoteXS {
  font-size: 0.8em;
  font-weight: normal;
}

.ff21Note {
  font-size: 14px;
  line-height: 1.5;
  text-indent: -1em;
  margin: 7px 0px 0px 1em;
  text-align: justify;
  text-justify: inter-ideograph;
}
@media (min-width: 768px) {
  .ff21Note {
    font-size: 12px;
    line-height: 1.5;
    margin: 12px 0px 0px 1em;
  }
}

.ff21NoteNoTopMargin {
  font-size: 14px;
  line-height: 1.5;
  text-indent: -1em;
  margin: 0px 0px 0px 1em;
  text-align: justify;
  text-justify: inter-ideograph;
}
@media (min-width: 768px) {
  .ff21NoteNoTopMargin {
    font-size: 12px;
    line-height: 1.5;
    margin: 0px 0px 0px 1em;
  }
}

.ff21NoteNoIndent {
  font-size: 14px;
  line-height: 1.5;
  text-indent: 0em;
  margin: 7px 0px 0px;
  text-align: justify;
  text-justify: inter-ideograph;
}
@media (min-width: 768px) {
  .ff21NoteNoIndent {
    font-size: 12px;
    line-height: 1.5;
    margin: 12px 0px 0px;
  }
}
.ff21NoteNoIndent h4 {
  font-size: 14px;
  line-height: 1.5;
  font-weight: bold;
}
@media (min-width: 768px) {
  .ff21NoteNoIndent h4 {
    font-size: 12px;
    line-height: 1.5;
    font-weight: bold;
  }
}

.ff21TableNote {
  font-size: 14px;
  line-height: 1.5;
  margin: 7px 0px;
  text-align: justify;
  text-justify: inter-ideograph;
}
@media (min-width: 768px) {
  .ff21TableNote {
    display: none;
  }
}

.ff21Attention {
  font-weight: bold;
  color: #ff0000;
}



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

body#ff21Home header {
  /*background-image: url(../../images/2022_mainbg_h400.jpg);*//*2022*/
  /*background-image: url(../../images/2023_mainbg_h400.jpg);*//*2023*/
  background-image: url(../../images/2024_mainbg_h400.jpg);/*2024*/
  /*background-repeat: repeat;*/
  /*background-position: center;*//*2021*/
  /*background-position: 0 0;*//*2022*//*2023*//*2024*/
  background-size: auto 100%;
  margin: 0px;
  padding: 25px 0px;/*2022*//*2023*//*2024*/
  background-color: #e6e6e6;/*2022*//*2023*//*2024*/
  animation: bgmovesumaho 10s infinite linear;/*2022 動き用*//*2023*//*2024*/
}
@media (min-width: 768px) {
  body#ff21Home header {
    /*background-image: url(../../images/2022_mainbg_h560.jpg);*//*2022*/
    /*background-image: url(../../images/2023_mainbg_h560.jpg);*//*2023*/
    background-image: url(../../images/2024_mainbg_h560.jpg);/*2024*/
    padding: 55px 0px;/*2022*//*2023*//*2024*/
    animation: bgmovetablet 10s infinite linear;/*2022 動き用*//*2023*//*2024*/
  }
}
@media (min-width: 992px) {
  body#ff21Home header {
    /*background-image: url(../../images/2022_mainbg_h624.jpg);*//*2022*/
    /*background-image: url(../../images/2023_mainbg_h620.jpg);*//*2023*/
    background-image: url(../../images/2024_mainbg_h620.jpg);/*2024*/
    /*padding: 62px 0px;*//*2022*/
    padding: 60px 0px;/*2023*//*2024*/
    animation: bgmovepc 10s infinite linear;/*2022 動き用*//*2023*//*2024*/
  }
}

/*2022 動き用*/
@keyframes bgmovesumaho {
  0% {
    background-position: 0 0;
  }
  100% {
    /*background-position: -1050px 0;*//*2022*/
    background-position: -720px 0;/*2023*//*2024*/
  }
}
@keyframes bgmovetablet {
  0% {
    background-position: 0 0;
  }
  100% {
    /*background-position: -1470px 0;*//*2022*/
    background-position: -1008px 0;/*2023*//*2024*/
  }
}
@keyframes bgmovepc {
  0% {
    background-position: 0 0;
  }
  100% {
    /*background-position: -1638px 0;*//*2022*/
    background-position: -1116px 0;/*2023*//*2024*/
  }
}
/*2022 動き用 ここまで*/

body#ff21Home #headerInner {
  margin: 0px;
  padding: 0px;
  /*background-color: rgba(0, 0, 0, 0.1);*//*黒10％*//*2022*/
}

body#ff21Home header h1 {
  /*width: 90%;*//*2021*/
  margin: 0px auto;
  /*padding: 35px 0px 0px;*//*2021*/
  padding: 40px 0px 0px;/*2022*/
}

/*2022 imgを追加してそこに高さを設定する*/
body#ff21Home header h1 img {
  height: 310px;
  width: 288px;/*念のため*/
  margin: 0px auto;
  padding: 0px;
}
@media (min-width: 768px) {
  body#ff21Home header h1 {
    padding: 0px;
  }
  body#ff21Home header h1 img {
    height: 450px;
    width: 418px;/*念のため*/
  }
}
@media (min-width: 992px) {
  body#ff21Home header h1 img {
    height: 500px;
    width: 464px;/*念のため*/
  }
}

body#ff21Home #headerInnerCatch {
  margin: 0px;
  padding: 0px;
  position: relative;
}
body#ff21Home #headerInnerCatch h2 {
  position: absolute;
  height: 100px;
  width: 100%;
  top: 0px;
  left: 0px;
  transform: none;
  margin: 0px auto;
  padding: 0px;
  background-image: url(../../images/2021_headline_yoko.png);
  background-repeat: no-repeat;
  background-position: center top;
  /*background-size: 60% auto;*/
  background-size: 196px 30px;
}

/*2021*//*
@media (min-width: 375px) {
  body#ff21Home #headerInnerCatch h2 {
    background-size: 55% auto;
  }
}
@media (min-width: 414px) {
  body#ff21Home #headerInnerCatch h2 {
    background-size: 50% auto;
  }
}
@media (min-width: 640px) {
  body#ff21Home #headerInnerCatch h2 {
    background-size: 30% auto;
  }
}
*/

@media (min-width: 768px) {
  body#ff21Home #headerInnerCatch h2 {
    height: 500px;
    width: 100%;
    top: 0px;
    left: auto;
    right: 0px;
    transform: none;
    background-image: url(../../images/2021_headline_tate.png);
    background-repeat: no-repeat;
    background-position: right top;
    background-size: auto 45%;
  }
}
@media (min-width: 992px) {
  body#ff21Home #headerInnerCatch h2 {
    background-size: auto 53%;
  }
}

body#ff21Home #headerInnerCatch h2 span {
  display: none;
}



/* #ff21Lead
-------------------------------------------------------------------------------- */

#ff21Lead {
  padding: 20px 0px 0px;
  margin: 0px;
  text-align: center;
  /*color: #b9a929;*//*2021*/
  /*color: #00bb00;*//*2022*/
  color: #00aaaa;/*2023*//*2024*/
  background-color: #ffffff;
}
@media (min-width: 768px) {
  #ff21Lead {
    padding: 30px 0px 0px;
    margin: 0px;
    text-align: center;
  }
}
/*2021*//*
#ff21Lead h2 {
  width: 90%;
  margin: 0px auto;
}
@media (min-width: 768px) {
  #ff21Lead h2 {
    width: 65%;
  }
}
@media (min-width: 992px) {
  #ff21Lead h2 {
    width: 60%;
  }
}
*/
#ff21Lead p {
  /*font-size: 16px;*//*2021*/
  font-size: 20px;/*2022*/
  line-height: 1.5;
  font-weight: bold;
  padding: 0px;
  /*margin: 15px 0px 0px;*//*2021*/
  margin: 0px;
}
@media (min-width: 360px) {
  #ff21Lead p {
    font-size: 24px;/*2022*/
  }
}
@media (min-width: 768px) {
  #ff21Lead p {
    font-size: 28px;
    /*margin: 20px 0px 0px;*//*2021*/
  }
}
@media (min-width: 768px) {
  #ff21Lead p br.ffspbr {
    display: none;
  }
}



/* #ffSankasho 参加賞
-------------------------------------------------------------------------------- */

#ff21Lead p#ffSankasho {
  padding: 0px;
  margin: 15px auto 0px;
  text-align: center;
  width: 196px;
}
#ff21Lead p#ffSankasho img#sankaSupercup {
  padding: 0px;
  margin: 0px auto;
  text-align: center;
  width: 196px;
}
@media (min-width: 768px) {
  #ff21Lead p#ffSankasho {
    float: right;
    padding: 0px;
    margin: -180px 15px 0px 0px;
    text-align: center;
    width: 100px;
    height: 175px;
    background-image: url(../../images/sankasho_tate.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 100px 175px;
  }
  #ff21Lead p#ffSankasho img#sankaSupercup {
    display: none;
  }
}
@media (min-width: 992px) {
  #ff21Lead p#ffSankasho {
    margin-right: 70px;
  }
}



/* h3
-------------------------------------------------------------------------------- */

.ff21 h3 {
  color: #215942;
  border-bottom: 4px solid #215942;
  padding-left: 0;
  font-size: 24px;
}
@media (min-width: 768px) {
  .ff21 h3 {
    margin: 30px 0px 12px;
  }
}
#ff21NavBox h3 {
  display: none;
}
#ff21InfoBox h3 {
  margin: 15px 0px 3px;
  background-color: #ffffff;
}
@media (min-width: 768px) {
  #ff21InfoBox h3 {
    margin: 30px 0px 2px;
  }
}
#ff21Outline h3,
#ff21Team h3 {
  background-color: #ffffff;
}



/* #ff21NavInfo
-------------------------------------------------------------------------------- */

#ff21NavInfo {
  padding: 0px 0px 15px;
  margin: 0px;
  background-color: #ffffff;
  overflow: hidden;
}
@media (min-width: 768px) {
  #ff21NavInfo {
    padding: 0px 0px 30px;
    margin: 0px;
    clear: both;/*2022 削除可*/
  }
}



/* #ff21NavInfo #ff21NavBox
-------------------------------------------------------------------------------- */

#ff21NavBox {
  margin: 15px 0px 0px;
  padding: 0px;
}
@media (min-width: 768px) {
  #ff21NavBox {
    margin: 30px 0px 0px;
    padding: 0px;
  }
}
ul#ff21Nav {
  margin: 0px 0px 6px;
  padding: 0px;
  list-style-type: none;
  overflow: hidden;
}
ul#ff21Nav li {
  margin: 0px 0px 12px;
  padding: 0px;
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
  text-align: center;
  line-height: 1;
}
@media (min-width: 768px) {
  ul#ff21Nav li {
    margin: 0px 0px 14px;
  }
}
@media (min-width: 992px) {
  ul#ff21Nav li {
    margin: 0px 0px 16px;
  }
}
@media (min-width: 768px) {
  ul#ff21Nav li.ff21InternalLink {
    display: none;
  }
}
ul#ff21Nav li a {
  display: block;
  margin: 0px;
  padding: 10px;
  border-radius: 9px;
  outline: none;
  position: relative;/*以下でtopを使うため*/
  text-decoration: none;
}
ul#ff21Nav li a:link {
  color: #ffffff;
  /*background-color: #b9a929;*//*2021*/
  /*background-color: #00bb00;*//*2022*/
  /*background-color: #619c9a;*//*2023*/
  background-color: #00aaaa;/*2023*//*2024*/
  box-shadow: 0px 6px #333333;
  top: 0px;
}
ul#ff21Nav li a:visited {
  color: #ffffff;
  /*background-color: #b9a929;*//*2021*/
  /*background-color: #00bb00;*//*2022*/
  background-color: #00aaaa;/*2023*//*2024*/
  box-shadow: 0px 6px #333333;
  top: 0px;
}
ul#ff21Nav li a:hover {
  color: #ffffff;
  /*background-color: #c7ba54;*//*2021*/
  /*background-color: #00cc00;*//*2022*/
  background-color: #00bbbb;/*2023*//*2024*/
  box-shadow: 0px 4px #333333;
  top: 2px;
}
ul#ff21Nav li a:active {
  color: #ffffff;
  /*background-color: #958111;*//*2021*/
  /*background-color: #009900;*//*2022*/
  background-color: #008888;/*2023*//*2024*/
  box-shadow: 0px 0px #333333;
  top: 6px;
}

ul#ff21Nav li#ff21EntryLink a:link {
  color: #ffffff;
  background-color: #f173b8;
  box-shadow: 0px 6px #333333;
  top: 0px;
}
ul#ff21Nav li#ff21EntryLink a:visited {
  color: #ffffff;
  background-color: #f173b8;
  box-shadow: 0px 6px #333333;
  top: 0px;
}
ul#ff21Nav li#ff21EntryLink a:hover {
  color: #ffffff;
  background-color: #f48fc6;
  box-shadow: 0px 4px #333333;
  top: 2px;
}
ul#ff21Nav li#ff21EntryLink a:active {
  color: #ffffff;
  background-color: #e84794;
  box-shadow: 0px 0px #333333;
  top: 6px;
}



/* 2021追加 準備中ボタン用
-------------------------------------------------------------------------------- */

ul#ff21Nav li span.ff21Suspended {
  display: block;
  margin: 0px;
  padding: 10px;
  border-radius: 9px;
  outline: none;
  position: relative;/*以下でtopを使うため*/
  text-decoration: none;
  /*background-color: #999999;*/
  background-color: #c3c3c3;/*2023 青緑と差をつけるため*/
  box-shadow: 0px 6px #333333;
  top: 0px;
}



/* 2021追加 日本ツアーサービス（全国大会オフィシャル宿泊プラン）
-------------------------------------------------------------------------------- */

p#ff21Jts {
  font-size: 14px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
}
@media (min-width: 768px) {
  p#ff21Jts {
    font-size: 12px;
  }
}



/* 2024追加 賀川サッカーライブラリー
-------------------------------------------------------------------------------- */

p#ff24Ksl {
  margin: 9px 0px 0px;
  padding: 0px;
}
@media (min-width: 768px) {
  p#ff24Ksl {
    margin: 8px 0px 0px;
  }
}
@media (min-width: 992px) {
  p#ff24Ksl {
    margin: 10px 0px 0px;
  }
}



/* #ff21NavInfo #ff21InfoBox
-------------------------------------------------------------------------------- */

#ff21InfoBox {
  margin: 15px 0px 0px;
  padding: 0px;
}
@media (min-width: 768px) {
  #ff21InfoBox {
    margin: 30px 0px 0px;
    padding: 0px;
  }
}
#ff21InfoBox ul#ff21Info {
  font-size: 14px;
  line-height: 1.5;
  margin: 0px;
  padding: 0px;
  list-style-type: none;
  /*text-align: justify;
  text-justify: inter-ideograph;*/
  height: 360px;
  overflow: auto;
}
@media (min-width: 768px) {
  #ff21InfoBox ul#ff21Info {
    /*height: 220px;*/
    /*height: 309px;*//*左バナー 日本ツアーサービスのみ*/
    height: 355px;/*左バナー 日本ツアーサービスと賀川サッカーライブラリー*/
    overflow: auto;
  }
}
@media (min-width: 992px) {
  #ff21InfoBox ul#ff21Info {
    /*height: 319px;*//*左バナー 日本ツアーサービスのみ*/
    height: 400px;/*左バナー 日本ツアーサービスと賀川サッカーライブラリー*/
  }
}
#ff21InfoBox ul#ff21Info li {
  margin: 0px;
  padding: 4px 0px;
  border-bottom: 2px solid #000000;
}
@media (min-width: 768px) {
  #ff21InfoBox ul#ff21Info li {
    padding: 10px 0px;
  }
}



/* #ff21Outline
-------------------------------------------------------------------------------- */

#ff21Outline {
  padding: 0px;
  margin: 0px;
  /*background-color: #efe4b8;*//*2021*/
  /*background-color: #99ee99;*//*2022*/
  background-color: #99dddd;/*2023*//*2024*/
  clear: both;
  overflow: hidden;
}
@media (min-width: 768px) {
  #ff21Outline {
    padding: 0px;
    margin: 0px;
  }
}
@media (max-width: 767px) {
  #ff21Outline .table-responsive {
    margin-bottom: 0px;/*bootstrap.cssを上書き*/
  }
}
#ff21Outline table {
  margin: 0px;
  padding: 0px;
  border-bottom: 1px solid #666666;
  border-left: 1px solid #666666;
  font-size: 14px;
  line-height: 1.5;
}
#ff21Outline table th {
  white-space: nowrap;
  font-weight: bold;
  background-color: #ffffff;
  padding: 8px;
  border-top: 1px solid #666666;
  border-right: 1px solid #666666;
}
#ff21Outline table td {
  text-align: left;
  background-color: #ffffff;
  padding: 8px;
  border-top: 1px solid #666666;
  border-right: 1px solid #666666;
}
#ff21Outline table a {
  outline: none;
}
@media (min-width: 768px) {
  #ff21Outline table th,
  #ff21Outline table td {
    padding: 8px;
  }
}
@media (min-width: 768px) {
  #ff21Outline table td {
    text-align: justify;
    text-justify: inter-ideograph;
  }
}
/*
#ff21Outline table #logoPuma {
  vertical-align: middle;
  margin: 5px 0px 6px;
  padding: 0px;
}
#ff21Outline table #logoMilo {
  vertical-align: middle;
  margin: 4px 0px;
  padding: 0px;
}
*/
#ff21Outline table #logoAcecook {
  vertical-align: middle;
  /*margin: 7px 0px 20px 8px;*/
  margin: 0px 0px 20px 8px;
  padding: 0px;
}
#ff21Outline table #logoKonan {
  vertical-align: middle;
  /*margin: 15px 0px 20px 15px;*//*1番めに配置の場合*/
  margin: 0px 0px 20px 15px;
  padding: 0px;
}
#ff21Outline table #logoAcuore {
  vertical-align: middle;
  margin: 0px 0px 20px 5px;
  /*margin: 5px 0px 20px 5px;*/
  padding: 0px;
}
#ff21Outline table #logoZoneenergy {
  vertical-align: middle;
  margin: 1px 0px 20px 12px;
  padding: 0px;
}
/*#ff21Outline table #logoMizuno {
  vertical-align: middle;
  margin: 0px 0px 15px 50px;
  padding: 0px;
}*/
/*#ff21Outline table #logoMizuno2 {
  vertical-align: middle;
  margin: -5px 0px 15px 48px;
  padding: 0px;
}*/
#ff21Outline table #logoMolten {
  vertical-align: middle;
  margin: 0px 0px 20px 45px;
  padding: 0px;
}
#ff21Outline table #logoGreencard {
  vertical-align: middle;
  margin: -15px 0px 20px 0px;
  padding: 0px;
}
@media (min-width: 768px) {
  #ff21Outline table #logoAcecook {
    vertical-align: top;
    margin: 0px 25px 10px 0px;
    padding: 0px;
  }
  #ff21Outline table #logoKonan {
    vertical-align: top;
    /*margin: 28px 25px 15px 0px;*/
    margin: 30px 25px 15px 0px;
    padding: 0px;
  }
  #ff21Outline table #logoAcuore {
    vertical-align: top;
    margin: 30px 20px 15px 0px;
    padding: 0px;
  }
  #ff21Outline table #logoZoneenergy {
    vertical-align: top;
    margin: 15px 20px 10px 0px;
    padding: 0px;
  }
  /*#ff21Outline table #logoMizuno {
    vertical-align: top;
    margin: 0px 20px 0px 0px;
    padding: 0px;
  }*/
  /*#ff21Outline table #logoMizuno2 {
    vertical-align: top;
    margin: 16px 20px 0px 0px;
    padding: 0px;
  }*/
  #ff21Outline table #logoMolten {
    vertical-align: top;
    margin: 23px 20px 0px 0px;
    padding: 0px;
  }
  #ff21Outline table #logoGreencard {
    vertical-align: top;
    margin: 0px 20px 10px 0px;
    padding: 0px;
  }
}
@media (min-width: 768px) {
  #ff21Outline table br {
    display: none;
  }
}
@media (min-width: 768px) {
  #ff21Outline table br.ff21br {
    display: inline;
  }
}



/* #ff21Team
-------------------------------------------------------------------------------- */

#ff21Team {
  padding: 0px 0px 15px;
  margin: 0px;
  /*background-color: #efe4b8;*//*2021*/
  /*background-color: #99ee99;*//*2022*/
  background-color: #99dddd;/*2023*//*2024*/
}
@media (min-width: 768px) {
  #ff21Team {
    padding: 0px 0px 30px;
    margin: 0px;
  }
}
@media (max-width: 767px) {
  #ff21Team .table-responsive {
    margin-bottom: 0px;/*bootstrap.cssを上書き*/
  }
}
#ff21Team table {
  padding: 0px;
  margin: 0px;
  border-bottom: 1px solid #666666;
  border-left: 1px solid #666666;
  font-size: 14px;
  line-height: 1.5;
}
#ff21Team table thead th {
  font-weight: bold;
  background-color: #eeeeee;
  text-align: center;
  padding: 8px;
  border-top: 1px solid #666666;
  border-right: 1px solid #666666;
  /*border-bottom: 1px solid #666666;*//*2021*/
  border-bottom: none;/*2022*/
  vertical-align: middle;
}
#ff21Team table th {
  white-space: nowrap;
  font-weight: bold;
  background-color: #ffffff;
  text-align: left;
  padding: 8px;
  border-top: 1px solid #666666;
  border-right: 1px solid #666666;
}
#ff21Team table td {
  background-color: #ffffff;
  text-align: left;
  padding: 8px;
  border-top: 1px solid #666666;
  border-right: 1px solid #666666;
}
@media (min-width: 768px) {
  #ff21Team table thead th,
  #ff21Team table th,
  #ff21Team table td {
    padding: 10px 14px;
    padding: 8px;
  }
}
#ff21Team table td.ff21Fee {
  text-align: right;
  vertical-align: middle;
}

/* for table.js _ .even .hover 自動追加 */
#ff21Team table tbody tr.even th {
  background-color: #f5f5f5;
}
#ff21Team table tbody tr.even td {
  background-color: #f5f5f5;
}
#ff21Team table tbody tr.even td.ff21Fee {
  background-color: #ffffff;
}
/* End */



/* #ff21SNS
-------------------------------------------------------------------------------- */

#ff21SNS {
  padding: 0px;
  margin: 0px;
  text-align: center;
}
#ff21SNS p {
  padding: 0px;
  margin: 15px auto 0px;
  width: 60%;
}
#ff21SNS p a {
  outline: none;
}
#ff21SNS p img {
  border-radius: 9px;
}
@media (min-width: 768px) {
  #ff21SNS p {
    padding: 0px;
    margin: 30px 0px 0px;
    width: 80px;
    height: 80px;
    border-radius: 40px;
    float: left;
  }
  #ff21SNS p a {
    display: block;
    padding: 0px;
    margin: 0px;
    width: 80px;
    height: 80px;
    border-radius: 40px;
    outline: none;
  }
  #ff21SNS p a img {
    display: none;
  }
  #ff21SNS p#ff21Fb {
    background-image: url(../../images/linkbutton_facebook_w330_2021.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 240px 80px;
    margin: 30px 30px 0px 0px;
  }
  #ff21SNS p#ff21Tw {
    /*background-image: url(../../images/linkbutton_twitter_w330_2021.png);*/
    background-image: url(../../images/linkbutton_x_w330_2023.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 240px 80px;
    /*margin: 30px 0px 0px;*//*2019 FbとTwの2つなので*/
    margin: 30px 30px 0px 0px;/*2021 Igが追加になったので*/
  }
  #ff21SNS p#ff21Ig {
    background-image: url(../../images/linkbutton_instagram_w330_2021.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 240px 80px;
    /*margin: 30px 0px 0px;*//*2021 Ytが追加になる前*/
    margin: 30px 30px 0px 0px;/*2021 Ytが追加になったので*/
  }
  #ff21SNS p#ff21Yt {
    background-image: url(../../images/linkbutton_youtube_w330_2021.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 240px 80px;
    margin: 30px 0px 0px;
  }
}
@media (min-width: 768px) {
  #ff21SNS .container {
    padding: 0px;
    margin: 0px auto 0px;
    /*width: 190px;*//*2019 FbとTwの2つなので*/
    /*width: 300px;*//*2021 Igが追加になったので*/
    width: 410px;/*2021 Ytが追加になったので*/
    overflow: hidden;
  }
}
@media (min-width: 992px) {
  #ff21SNS .container {
    /*width: 190px;*//*2019 FbとTwの2つなので*/
    /*width: 300px;*//*2021 Igが追加になったので*/
    width: 410px;/*2021 Ytが追加になったので*/
  }
}
@media (min-width: 1200px) {
  #ff21SNS .container {
    /*width: 190px;*//*2019 FbとTwの2つなので*/
    /*width: 300px;*//*2021 Igが追加になったので*/
    width: 410px;/*2021 Ytが追加になったので*/
  }
}



/* #ff21Banner
-------------------------------------------------------------------------------- */

#ff21Banner {
  padding: 0px;
  margin: 15px 0px 0px;
  border-top: 4px solid #e6e6e6;
}
.ff21BnrBox1 {
  padding: 0px;
  margin: 0px;
}
.ff21BnrBox2 {
  padding: 0px;
  margin: 0px;
}
#ff21Banner p {
  padding: 0px;
  margin: 15px auto 0px;
  width: 70%;
}
#ff21Banner p#ff21Puma {
  padding: 0px;
  margin: 15px auto 0px;
  width: 30%;
}
#ff21Banner p#ff21Milo {
  padding: 0px;
  margin: 15px auto 0px;
  width: 30%;
}
#ff21Banner p a {
  outline: none;
}
@media (min-width: 768px) {
  #ff21Banner {
    padding: 0px;
    margin: 30px auto 0px;
    clear: both;
  }
  .ff21BnrBox1 {
    padding: 0px;
    margin: 0px auto;
    /*width: 390px;*/
    width: 600px;
    clear: both;
  }
  .ff21BnrBox2 {
    padding: 0px;
    margin: 0px auto;
    /*width: 510px;*/
    width: 204px;
    clear: both;
  }
  #ff21Banner p {
    padding: 0px;
    margin: 30px 0px 0px;
  }
  /*#ff21Banner p#ff21JF {
    padding: 0px;
    margin: 31px 30px 0px 0px;
    width: 180px;
    float: left;
  }*/
  #ff21Banner p#ff21PumaIg {
    padding: 0px;
    /*margin: 30px 0px 0px;*/
    margin: 30px 30px 0px 0px;
    width: 180px;
    float: left;
  }
  #ff21Banner p#ff21PumaFb {
    padding: 0px;
    margin: 30px 30px 0px 0px;
    width: 180px;
    float: left;
  }
  #ff21Banner p#ff21PumaTw {
    padding: 0px;
    margin: 30px 0px 0px;
    width: 180px;
    float: left;
  }
  #ff21Banner p#ff21Puma {
    padding: 0px;
    /*margin: 24px 0px 0px;*/
    margin: 36px 24px 0px 0px;
    width: 90px;
    float: left;
  }
  #ff21Banner p#ff21Milo {
    padding: 0px;
    margin: 30px 0px 0px;
    width: 90px;
    float: left;
  }
}
@media (min-width: 768px) {
  #ff21Banner .container {
    width: 750px;
    overflow: hidden;
  }
}
@media (min-width: 992px) {
  #ff21Banner .container {
    width: 750px;
  }
}
@media (min-width: 1200px) {
  #ff21Banner .container {
    width: 750px;
  }
}



/* #ff21Josei
-------------------------------------------------------------------------------- */

#ff21Josei {
  padding: 5px 0px 0px;
  margin: 15px 0px 0px;
  text-align: center;
  border-top: 4px solid #e6e6e6;
}
#ff21Josei p {
  padding: 0px;
  margin: 10px auto 0px;
  /*width: 90%;*//*2022*/
}
#ff21Josei p#ffJsJpnsport {
  width: 90%;
}
#ff21Josei p#ffJsNoevir {
  width: 64.8%;/*上記ffJsJpnsportの72%*/
}
#ff21Josei p a {
  outline: none;
}
@media (min-width: 768px) {
  #ff21Josei {
    clear: both;
    padding: 10px 0px 0px;
    margin: 30px 0px 0px;
    border-top: 4px solid #e6e6e6;
  }
  #ff21Josei p {
    padding: 0px;
    margin: 20px auto 0px;
    /*width: 50%;*//*2022*/
    display: inline-block;/*2023 助成バナーが2つになったため*/
  }
  #ff21Josei p#ffJsJpnsport {
    /*width: 50%;*/
    /*width: 40%;*/
    width: 45%;
  }
  #ff21Josei p#ffJsNoevir {
    /*width: 36%;*//*上記ffJsJpnsportの72%*/
    /*width: 28.8%;*//*上記ffJsJpnsportの72%*/
    width: 32.4%;/*上記ffJsJpnsportの72%*/
  }
}



/* .ff21LinkUp
-------------------------------------------------------------------------------- */

.linkUpButton {
  clear: both;
  margin: 0px;
  padding: 0px;
  /*display: none;*//*消しておく設定は link-up.js 内に記載*/
}
.linkUpButton p {
  margin: 0px;
  padding: 0px;
  position: fixed;
  right: 15px;
  bottom: 15px;
}
.linkUpButton p a {
  display: block;
  height: 36px;
  width: 36px;
  line-height: 36px;
  text-decoration: none;
  text-align: center;
  border-radius: 9px;
  color: #ffffff;
  background-color: #000000;
  opacity: 0.4;
  outline: none;
}
.linkUpButton p a:hover {
  opacity: 0.8;
}



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

footer {
  text-align: center;
  margin: 15px 0px 0px;
  padding: 0px 0px 20px;
  background-color: #e6e6e6;
  clear: both;
}
@media (min-width: 768px) {
  footer {
    margin: 30px 0px 0px;
    padding: 0px 0px 30px;
  }
}
footer .container {
  padding: 0px;
}
footer address {
  font-size: 14px;
  line-height: 1.5;
  padding: 15px 0px 0px;
  margin: 0px;
}
footer p {
  font-size: 14px;
  line-height: 1.5;
  padding: 10px 0px 0px;
  margin: 0px;
}
footer small {
  display: block;
  font-size: 12px;
  line-height: 1.5;
  font-family: Verdana, sans-serif;
  padding: 10px 0px 0px;
  margin: 0px;
}
@media (min-width: 768px) {
  footer .container {
    padding: 0px 15px;
  }
  footer address {
    font-size: 12px;
    line-height: 1.5;
    padding: 0px;
    margin: 30px 0px 0px;
  }
  footer p {
    font-size: 12px;
    line-height: 1.5;
    padding: 0px;
    margin: 10px 0px 0px;
  }
  footer small {
    font-size: 10px;
    line-height: 1.5;
    padding: 10px 0px 0px;
    margin: 0px;
  }
}
@media (min-width: 768px) {
  br.nobr {
    display: none;
  }
}
