@charset "UTF-8";



/* bootstrap.cssを上書き
-------------------------------------------------------------------------------- */

a:link {
  color: #06f;
  text-decoration: none;
  font-weight: bold;
}
a:visited {
  color: #06f;
  text-decoration: none;
  font-weight: bold;
}
a:hover {
  color: #03f;
  text-decoration: underline;
  font-weight: bold;
}
a:active {
  color: #03f;
  text-decoration: underline;
  font-weight: bold;
}


body {
  font-family: "Meiryo", "Hiragino Sans", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  font-feature-settings: "palt";/*文字詰め*/
  /*font-feature-settings: "pkna";*//*文字詰め プロポーショナルかな*/
  /*font-feature-settings: "pwid";*//*文字詰め プロポーショナル字形*/
  color: #000;
  background-color: #a13;
  margin: 0px;
  padding: 0px;
}

body {
  background-image: url(../../images/background2024.jpg);
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-position: center top;
  background-size: 800px 600px;
}
/*
@media (min-width: 375px) {
  body {
    background-position: center top;
    background-size: 800px 600px;
  }
}
*/
@media (min-width: 414px) {
  body {
    background-size: 860px 645px;
  }
}
@media (min-width: 415px) {
  body {
    background-size: 900px 675px;
  }
}
@media (min-width: 768px) {
  body {
    background-size: 1200px 900px;
  }
}
@media (min-width: 992px) {
  body {
    background-size: 1400px 1050px;
  }
}

/*@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}*/
@media (min-width: 992px) {
  .container {
    /*width: 970px;*/
    width: 890px;
  }
}
@media (min-width: 1200px) {
  .container {
    /*width: 1170px;*/
    width: 890px;/*992px以上は幅を890pxに固定する*/
  }
}

img {
  border-width: 0px;
}
p {
  margin: 0px;
  padding: 0px;
  text-align: justify;
  text-justify: inter-ideograph;
}
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;
}
th {
  font-weight: normal;
  text-align: left;
  vertical-align: top;
}
td {
  vertical-align: top;
}



/* 
-------------------------------------------------------------------------------- */

.textLarge {
  font-size: 1.375em;
}
@media (max-width: 767px) {
  .textLarge {
    font-size: 1.125em;
  }
}
#otoiawaseInner .textLarge {
  font-size: 1.5em;
}
.textSmall {
  font-size: 0.875em;
}
.textXSmall {
  font-size: 0.75em;
}
.textNormal {
  font-weight: normal;
}
.textCancel {
  text-decoration: line-through;
}

/*INは Important Notice の意*/
.textIN {
  font-weight: bold;
  color: #f00;
}

.note {
  margin: 0.25em 0px 0px;
  padding: 0px 0px 0px 1em;
  text-indent: -1em;
}

@media (min-width: 768px) {
  br.brxs {
    display: none;
  }
}
@media (min-width: 992px) {
  br.brsm {
    display: none;
  }
}
@media (max-width: 767px) {
  span.noxs {
    display: none;
  }
}
@media (max-width: 991px) {
  span.nosm {
    display: none;
  }
}



/* header
-------------------------------------------------------------------------------- */

header {
  margin: 0px;
  /*padding: 20px 0px 10px;*/
  padding: 20px 15px 10px;/*headerからcontainerを外したため左右に15px追加*/
}
h1 {
  margin: 0px auto 20px;
  padding: 0px;
}
h1 img {
  width: 100%;
}
@media (min-width: 768px) {
  header {
    margin: 0px auto;
    padding: 35px 0px 20px;
    width: 750px;
  }
  h1 {
    width: 750px;
    margin: 0px auto 20px;
    padding: 0px;
  }
}
@media (min-width: 992px) {
  header {
    width: 890px;
  }
  h1 {
    width: 890px;
  }
}



/* リード
-------------------------------------------------------------------------------- */

#nagairelay {
  margin: 0px;
  padding: 20px 0px 5px;
}
@media (min-width: 768px) {
  #nagairelay {
    padding: 10px 0px 5px;
  }
}

#nagairelay h2 {
  margin: 0px auto 15px;
  padding: 0px;
  line-height: 1.1;
  text-align: center;
}
#nagairelay h2 span {
  display: block;
  width: 14em;
  margin: 0px auto 15px;
  padding: 10px 0px;
  background-color: #ff0;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  border-radius: 140px;
}
@media (min-width: 768px) {
  #nagairelay h2 span {
    display: inline-block;
    width: 140px;
    margin: 0px 5px 10px;
    padding: 40px 0px;
    background-color: #ff0;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    border-radius: 140px;
  }
}
@media (max-width: 767px) {
  #nagairelay h2 span br {
    display: none;
  }
}

p#ngirlyLead {
  margin: 0px auto 15px;
  padding: 10px 15px;
  background-color: #ff0;
  background-color: rgba(255,255,0,0.8);
  font-size: 18px;
  font-weight: bold;
  text-align: justify;
  text-justify: inter-ideograph;
}
@media (min-width: 768px) {
  p#ngirlyLead {
    margin: 0px auto 30px;
    padding: 10px 15px;
    background-color: transparent;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
  }
  p#ngirlyLead span {
    background-color: #ff0;
  }
}
@media (max-width: 767px) {
  p#ngirlyLead br {
    display: none;
  }
}



/* 大会情報
-------------------------------------------------------------------------------- */

#kaisaigaiyo {
  clear: both;
  /*margin: 0px auto;*/
  margin: 15px auto 0px;
  padding: 20px 0px;
  color: #000;
  background-color: #fff;
}
#boshuyoko {
  clear: both;
  margin: 15px auto 0px;
  padding: 20px 0px;
  color: #000;
  background-color: #fff;
}
#omoushikomi {
  clear: both;
  margin: 15px auto 0px;
  padding: 20px 0px;
  color: #000;
  background-color: #fff;
}
#taikaikekka {
  clear: both;
  margin: 15px auto 0px;
  padding: 20px 0px;
  color: #000;
  background-color: #fff;
}
@media (min-width: 768px) {
  #kaisaigaiyo {
    margin: 0px auto;
    padding: 40px 0px;
    width: 750px;
    background-color: rgba(255,255,255,0.9);
  }
  #boshuyoko {
    margin: 45px auto 0px;
    padding: 40px 0px;
    width: 750px;
    background-color: rgba(255,255,255,0.9);
  }
  #omoushikomi {
    margin: 45px auto 0px;
    padding: 40px 0px;
    width: 750px;
    background-color: rgba(255,255,255,0.9);
  }
  #taikaikekka {
    margin: 45px auto 0px;
    padding: 40px 0px;
    width: 750px;
    background-color: rgba(255,255,255,0.9);
  }
}
@media (min-width: 992px) {
  #kaisaigaiyo,
  #boshuyoko,
  #omoushikomi,
  #taikaikekka {
    width: 890px;
  }
}

h3 {
  font-size: 30px;
  line-height: 1;
  font-weight: bold;
  margin: 0px;
  padding: 0px;
  text-align: center;
}
#kaisaigaiyo h3,
#boshuyoko h3,
#omoushikomi h3,
#taikaikekka h3 {
  margin: 0px auto 15px;
  padding: 0px;
  text-align: center;
}
@media (min-width: 768px) {
  #kaisaigaiyo h3,
  #boshuyoko h3,
  #omoushikomi h3,
  #taikaikekka h3 {
    margin: 0px auto 28px;
    padding: 0px;
    text-align: center;
  }
}
h3 img {
  margin: 0px auto;
  padding: 0px;
}
h4 {
  font-size: 24px;
  line-height: 1.5;
  font-weight: bold;
  margin: 12px 0px 0px;
  padding: 0px 0px 0px 1em;
  text-indent: -1em;
}
h4::before {
  content: "●";
}
@media (min-width: 768px) {
  #kaisaigaiyo h4 {
    width: 392px;
  }
}
@media (min-width: 992px) {
  #kaisaigaiyo h4 {
    width: 442px;
  }
}

#kaisaigaiyo h4#ngirlyKaijo br {
  display: none;
}
@media (min-width: 768px) {
  #kaisaigaiyo h4#ngirlyKaijo br {
    display: none;
  }
}
@media (min-width: 992px) {
  #kaisaigaiyo h4#ngirlyKaijo br {
    display: inline;
  }
}
#kaisaigaiyo h4#ngirlyKaijo .hNote {
  font-size: 18px;
  margin-top: 0.2em;
  margin-left: 1em;
  display: block;
}
@media (min-width: 992px) {
  #kaisaigaiyo h4#ngirlyKaijo .hNote {
    margin-left: 0px;
    display: inline;
  }
}
#boshuyoko h4 .hNote {
  font-size: 18px;
  margin-top: 0.2em;
  margin-left: 1em;
  display: block;
}
@media (min-width: 768px) {
  #boshuyoko h4 .hNote {
    margin-left: 0px;
    display: inline;
  }
}
/*
#taikaikekka h4 .hNote {
  font-size: 18px;
  margin-top: 0.2em;
  margin-left: 1em;
  display: block;
}
@media (min-width: 768px) {
  #taikaikekka h4 .hNote {
    margin-left: 0px;
    display: inline;
  }
}
*/
#taikaikekka h5 .hNote {
  font-size: 18px;
  margin-top: 0.2em;
  margin-left: 1em;
  display: block;
}
@media (min-width: 768px) {
  #taikaikekka h5 .hNote {
    margin-left: 0px;
    display: inline;
  }
}

#kaisaigaiyo p,
#boshuyoko p,
#omoushikomi p,
#taikaikekka p {
  margin: 0.25em 0px 0px 24px;
  padding: 0px;
}
#boshuyoko p {
  font-size: 16px;
}
#boshuyoko p span.boshuyokoNote {
  display: inline-block;
  font-size: 14px;
  padding: 0px 0px 0px 1em;
  text-indent: -1em;
}
@media (min-width: 768px) {
  #boshuyoko p {
    font-size: 18px;
  }
}

ul.ngirlySubNav {
  margin: -0.5em 0px 0.5em 24px;
  padding: 0px;
}
ul.ngirlySubNav li {
  margin: 1em auto 0px;
  padding: 0px;
  text-align: center;
}
ul.ngirlySubNav li a {
  display: block;
  margin: 0px auto;
  padding: 0.5em 1em;
  width: 100%;
  text-decoration: none;
  text-align: center;
  border: 2px solid #06f;
  background-color: #fff;
  border-radius: 5px;
}
ul.ngirlySubNav li a:link {
  color: #06f;
  text-decoration: none;
  border-color: #06f;
}
ul.ngirlySubNav li a:hover,
ul.ngirlySubNav li a:active,
ul.ngirlySubNav li a:focus {
  color: #03f;
  text-decoration: none;
  border-color: #03f;
}
@media (min-width: 768px) {
  /*右横のコース図で隠れてしまう場合は有効にする
  ul.ngirlySubNav {
    width: 392px;
  }*/
  ul.ngirlySubNav li {
    display: inline-block;
    margin: 1em 0.5em 0px 0px;
  }
  ul.ngirlySubNav li a {
    margin: 0px;
    white-space: nowrap;
    width: auto;
  }
}
@media (min-width: 992px) {
  ul.ngirlySubNav {
    width: 442px;
  }
}

p#ngirlyMap {
  margin: 16px 0px 24px 0px;
  padding: 0px;
}
@media (min-width: 768px) {
  #kaisaigaiyoInner {
    position: relative;
    min-height: 394px;
  }
  p#ngirlyMap {
    position: absolute;
    top: 6px;
    right: 0px;
    margin: 0px;
  }
}
@media (min-width: 992px) {
  #kaisaigaiyoInner {
    min-height: 465px;
  }
}
p#ngirlyMap img {
  margin: 0px auto;
  padding: 0px;
  vertical-align: bottom;/*imgの下のすき間を消すためbaseline以外に*/
}
@media (min-width: 768px) {
  p#ngirlyMap img {
    width: 328px;
    margin: 0px;
  }
}
@media (min-width: 992px) {
  p#ngirlyMap img {
    width: 387px;
    margin: 0px;
  }
}

#gaiyoBox {
  margin: 18px 0px 0px 4px;
  padding: 0px;
}
#gaiyoBox h4 {
  display: none;
}
#gaiyoBox p {
  margin: 0.25em 0px 0px 0px;
  padding: 0px;
}

#boshuyokoBox {
  margin: 18px 0px 0px 4px;
  padding: 0px;
}
#boshuyokoBox h4 {
  display: none;
}
#boshuyokoBox p {
  margin: 0.25em 0px 0px 0px;
  padding: 0px 0px 0px 1em;
  text-indent: -1em;
  font-size: 14px;
}

#omoushikomiTable {
  margin: 18px 0px 24px 24px;
  padding: 0px;
  width: calc(100% - 24px);
}
#omoushikomiTable th,
#omoushikomiTable td {
  display: block;
  width: 100%;
  text-align: center;
}
#omoushikomiTable th {
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  margin: 15px 0px 0px 0px;
  padding: 10px 0px 0px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  border-bottom: none;
  border-left: 2px solid #000;
}
#omoushikomiTable tr:first-of-type th {
  margin: 0px;
}
#omoushikomiTable td {
  font-size: 20px;
  line-height: 2.2;
  margin: 0px;
  padding: 8px 0px 15px;
  border-top: none;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  border-left: 2px solid #000;
}
.omoushikomiLink a {
  display: block;
  margin: 0px auto;
  padding: 10px 0px;
  width: 6em;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
  text-decoration: none;
  color: #fff;
  background-color: #06f;
  border-radius: 5px;
}
.omoushikomiLink a:hover,
.omoushikomiLink a:active,
.omoushikomiLink a:focus {
  color: #fff;
  background-color: #03f;
}
@media (min-width: 768px) {
  #omoushikomiTable tr {
    display: table;
    width: 100%;
    margin: 0px 0px 15px 0px;
    padding: 0px;
    border: 2px solid #000;
  }
  #omoushikomiTable tr:last-child {
    margin-bottom: 0px;
  }
  #omoushikomiTable th,
  #omoushikomiTable td {
    display: table-cell;
    vertical-align: middle;
  }
  #omoushikomiTable th {
    font-size: 16px;
    text-align: left;
    padding: 15px;
    width: 50%;
    border-top: 1px solid #000;
    border-right: none;
    border-bottom: 1px solid #000;
    border-left: 1px solid #000;
  }
  #omoushikomiTable td {
    line-height: 2;
    text-align: left;
    padding: 15px 0px 15px 1em;
    width: 50%;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    border-left: none;
  }
  #omoushikomiTable td a {
    text-align: center;
    margin: 0px 0px 0px -1em;
  }
  .omoushikomiLink a {
    font-size: 20px;
  }
}
@media (min-width: 992px) {
  #omoushikomiTable {
    overflow: hidden;
  }
  #omoushikomiTable tr {
    width: calc(50% - 7px);
    margin: 0px 14px 15px 0px;
    float: left;
  }
  #omoushikomiTable tr:nth-child(even) {
    margin: 0px 0px 15px 0px;
  }
  #omoushikomiTable tr:last-child {
    margin-bottom: 0px;
  }
  #omoushikomiTable tr:nth-last-child(2) {
    margin-bottom: 0px;
  }
  #omoushikomiTable th {
    text-align: left;
    padding: 15px;
    width: 65%;
  }
  #omoushikomiTable td {
    line-height: 2;
    text-align: left;
    width: 35%;
  }
}

#taikaikekka h4 {
  font-size: 24px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  margin: 36px 0px 6px;
  padding: 0.5em;
  text-indent: 0px;
  background-color: #0de;
}
#taikaikekka h4::before {
  content: none;
}
#taikaikekka section:first-of-type h4 {
  margin: 20px 0px 6px;
}
@media (min-width: 768px) {
  #taikaikekka section:first-of-type h4 {
    margin: 36px 0px 6px;
  }
}
#taikaikekka h5 {
  font-size: 24px;
  line-height: 1.5;
  font-weight: bold;
  margin: 18px 0px 6px;
  padding: 0px 0px 0px 24px;
  text-indent: -24px;
}
#taikaikekka h5::before {
  content: "●";
}

ul#kakoKekkaList {
  margin-top: 12px;
}
ul#kakoKekkaList li {
  line-height: 1.5;
  margin: 0.5em 0px 0px;
  padding: 0px 0px 0px 1em;
  text-indent: -1em;
}
@media (min-width: 768px) {
  ul#kakoKekkaList li {
    margin: 0.25em 0px 0px;
    padding: 0px 0px 0px 1em;
    text-indent: -1em;
  }
}
ul#kakoKekkaList li::before {
  content: "●";
  color: #06f;
}
ul#kakoKekkaList li.kakoKekkaListNoLink {
  color: #999;
  font-weight: bold;
}
ul#kakoKekkaList li.kakoKekkaListNoLink::before {
  content: "●";
  color: #999;
}



/* LinkUp
-------------------------------------------------------------------------------- */

.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: #fff;
  background-color: #000;
  /*background-color: #06f;*/
  opacity: 0.4;
  outline: none;
}
.linkUpButton p a:hover {
  opacity: 0.8;
}



/* footer （お問合せ）
-------------------------------------------------------------------------------- */

#otoiawase {
  clear: both;
  color: #000;
  background-color: #fff;
  margin: 15px auto 0px;
  padding: 20px 0px 66px;
  border-top-style: none;
  border-bottom-style: none;
  border-right-style: none;
  border-left-style: none;
}
@media (min-width: 768px) {
  #otoiawase {
    margin: 45px auto 66px;
    padding: 40px 0px;
    width: 750px;
    background-color: rgba(255,255,255,0.9);
  }
}
@media (min-width: 992px) {
  #otoiawase {
    width: 890px;
  }
}
#otoiawase h2 {
  display: none;
}
#otoiawase h3 {
  margin: 0px auto 15px;
  padding: 0px;
  text-align: center;
}
@media (min-width: 768px) {
  #otoiawase h3 {
    margin: 0px auto 28px;
    padding: 0px;
    text-align: center;
  }
}
#otoiawaseInner {
  margin: 0px auto 30px;
  padding: 0px;
}
#otoiawaseInner h4 {
  font-size: 24px;
  line-height: 1.5;
  font-weight: bold;
  margin: 12px 0px;
  padding: 0px;
  text-indent: 0px;
  text-align: center;
}
#otoiawaseInner h4::before {
  content: none;
}
#otoiawaseInner p {
  margin: 0.25em 0px 0px 0px;
  padding: 0px;
  text-align: center;
}
@media (max-width: 767px) {
  #otoiawaseInner p {
    margin: 0.25em 0px 0px 0px;
  }
}
p#ngirlyFb2 {
  margin: 12px 0px 0px;
  padding: 0px 48px;
  text-align: center;
}
p#ngirlyFb2 img {
  width: 52px;
}

#sportskujiBox {
  margin: 20px auto 0px;
  padding: 20px 0px 0px;
  border-top: 2px solid #000;
}
#sportskujiBox h3 {
  display: none;
}
#sportskujiBox p {
  margin: 0px;
  padding: 0px;
  text-align: center;
  /*line-height: 1.4;*/
  line-height: 1;
  font-size: 14px;
}
#sportskujiBox p img {
  /*margin: 0px auto 7px;*//*バナー下にテキストがはいる場合*/
  margin: 0px auto;
  padding: 0px;
  width: 280px;
  vertical-align: bottom;/*imgの下のすき間を消すためbaseline以外に*/
}

#relayBox {
  margin-top: 20px;
  padding-top: 5px;
  border-top: 2px solid #000;
}
#relayBox h3 {
  display: none;
}
#relayBox p {
  margin: 0px;
  padding: 0px;
  text-align: center;
  font-size: 14px;
}
#relayBox p a {
  display: block;
  margin: 15px auto 0px;
  padding: 0.5em 1em;
  width: 100%;
  font-weight: normal;
  text-decoration: none;
  text-align: center;
  border: 2px solid #06f;
  background-color: #fff;
  border-radius: 5px;
}
#relayBox p a:link {
  color: #06f;
  text-decoration: none;
  border-color: #06f;
}
#relayBox p a:hover,
#relayBox p a:active,
#relayBox p a:focus {
  color: #03f;
  text-decoration: none;
  border-color: #03f;
}
@media (min-width: 768px) {
  #relayBox p a {
    display: inline-block;
    margin: 15px 7px 0px;
    white-space: nowrap;
    width: auto;
  }
}

#nagaiparkBox {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 2px solid #000;
}
#nagaiparkBox h3 {
  display: none;
  /*font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
  margin: 0px;
  margin: 0px auto 0.5em;
  padding: 0px;
  text-indent: 0px;
  text-align: center;
  color: #f30;*/
}
#nagaiparkBox p {
  /*margin: 0.5em 0px 0px 0px;*/
  margin: 0px;
  padding: 0px;
  text-align: center;
}
#nagaiparkBox p img {
  margin: 0px auto;
  padding: 0px;
  width: 160px;
  vertical-align: bottom;/*imgの下のすき間を消すためbaseline以外に*/
}
