@charset "UTF-8";
.clear:after, .important dl:after, .l-body:after, .t-navi:after, .history dl:after, .tab__head__body:after, .newsList dl:after, .federation-info dl:after, .faq__item__body:after, .notes .notes__item:after, .f-link__item .column:after, .contact .field:after, .l-header:after, .sp-header-wrapper:after, .l-header__content:after, .l-header__content .content__wrapper:after, .l-header__gnavi ul a:after, .f-link__body:after, .f-banner ul:after {
  content: " ";
  display: block;
  clear: both;
}

/* *****************************************************
Contents ---------------
01: reset
02: common
03: LayerBase
04: LayerBody
05: LayerHeader
06: LayerFooter
------------------------
***************************************************** */
/* *****************************************************
reset
***************************************************** */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  font-style: normal;
  background: transparent;
}

html,
body {
  height: 100%;
}

body {
  min-width: 1160px;
  color: #222;
  background-color: #fff;
  font-size: 87.5%;
  /* 14px */
  line-height: 185.7%;
  /* 26px */
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
  -webkit-text-size-adjust: 100%;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
@media only screen and (max-width: 1160px) {
  body {
    min-width: 320px;
  }
}

article, aside, details, figcaption, figure, footer, header, menu, nav, section {
  display: block;
}

h1, h2, h3, h4, h5, h6, strong, em {
  font-weight: normal;
}

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  color: #222222;
  text-decoration: underline;
  background: transparent;
  outline: none;
  vertical-align: baseline;
}

a:hover {
  color: #18a1a1;
}

img {
  font-size: 0;
  line-height: 0;
  vertical-align: top;
}
@media only screen and (max-width: 720px) {
  img {
    max-width: 100%;
    height: auto;
  }
}

em {
  font-weight: bold;
}

sup {
  vertical-align: super;
  font-size: 10px;
}

sub {
  vertical-align: sub;
  font-size: 10px;
}

hr {
  color: #c9d4d4;
}

@media only screen and (max-width: 1160px) {
  map {
    position: relative;
    z-index: -1;
  }
}

@media only screen and (max-width: 1160px) {
  .maparea {
    display: none;
  }
}

/*
icon
***************************************************** */
.fileSize:after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 16px;
  vertical-align: middle;
  margin: -4px 0 0 5px;
  letter-spacing: normal;
  background: url(i/icon_list.png) 0 0 no-repeat;
  background-size: 74px 16px;
}

.iconPdf:after {
  background-position: 0 0;
}

.iconDoc:after {
  background-position: -12px 0;
}

.iconXls:after {
  background-position: -24px 0;
}

.iconPpt:after {
  background-position: -36px 0;
}

.iconZip:after {
  background-position: -48px 0;
}

.iconGaibu:after {
  width: 14px;
  height: 12px;
  background-position: -60px 0;
}

a[href^="http://www.aerobic.or.jp"]:after,
a[href^="https://www.aerobic.or.jp"]:after {
  display: none;
}

a[href$=".pdf"]:after,
a[href$=".PDF"]:after,
a[href$=".xls"]:after,
a[href$=".xlsx"]:after,
a[href$=".XLS"]:after,
a[href$=".XLSX"]:after,
a[href$=".doc"]:after,
a[href$=".docx"]:after,
a[href$=".DOC"]:after,
a[href$=".DOCX"]:after,
a[href$=".ppt"]:after,
a[href$=".pptx"]:after,
a[href$=".PPT"]:after,
a[href$=".PPTX"]:after {
  display: inline-block;
}

/* ***************************************************** {
  
}
common
***************************************************** */
/*
l-container
***************************************************** */
.l-container {
  position: relative;
  width: auto;
  height: auto;
}
@media only screen and (max-width: 1160px) {
  .l-container {
    margin-top: 0;
    overflow: hidden;
  }
}

/*
fade
***************************************************** */
.fade {
  width: 100%;
  margin: 0;
}

.fade__item {
  position: relative;
  margin: 0;
  z-index: 2;
}

.fade__item a{
  display: block;
}

.fade__item img {
  width: 100%;
  height: auto;
}
.fade__item:nth-child(n+2) {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.bx-wrapper {
  position: relative;
  margin-top: 0;
  z-index: 1;
}

.bx-controls {
  position: relative;
  width: 760px;
  margin: 0;
  margin-left: 8.6%;
  z-index: 52;
}
@media only screen and (max-width: 1400px) {
  .bx-controls {
    width: 100%;
    margin-left: auto;
  }
}

.bx-pager {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  letter-spacing: -.35em;
  text-align: center;
}

.bx-pager-item {
  display: inline-block;
  letter-spacing: normal;
  margin: 0;
  padding: 0 3px;
  vertical-align: top;
  pointer-events: auto;
}

.bx-pager-link {
  display: inline-block;
  width: 12px;
  height: 0;
  padding-top: 12px;
  background: rgba(0, 0, 0, 0.3);
  border: 2px solid #fff;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -ms-border-radius: 8px;
  -o-border-radius: 8px;
  border-radius: 8px;
  overflow: hidden;
}
.bx-pager-link.active {
  background: #00a1a1;
}

.bx-controls {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  pointer-events: none;
}

.bx-controls-direction {
  margin: 0;
  pointer-events: auto;
}

.bx-prev,
.bx-next {
  position: absolute;
  top: 225px;
  display: block;
  width: 30px;
  height: 0;
  padding-top: 30px;
  background: rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  -ms-border-radius: 15px;
  -o-border-radius: 15px;
  border-radius: 15px;
  overflow: hidden;
  z-index: 53;
}
@media only screen and (max-width: 1400px) {
  .bx-prev,
  .bx-next {
    top: 0;
    bottom: 0;
    margin: auto 0;
  }
}
.bx-prev:before,
.bx-next:before {
  position: absolute;
  top: 9px;
  display: block;
  color: #fff;
  font-size: 86%;
  line-height: 200%;
}

.bx-prev {
  left: 25px;
}
.bx-prev:before {
  left: 8px;
}

.bx-next {
  right: 25px;
}
.bx-next:before {
  right: 8px;
}

.mypage {
  position: absolute;
  top: 85px;
  right: 50px;
  width: 420px;
  margin: 0;
  background: rgba(255, 255, 255, 0.95);
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -ms-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  z-index: 2;
}
@media only screen and (max-width: 1400px) {
  .mypage {
    top: 13%;
    right: 6%;
  }
}
@media only screen and (max-width: 1160px) {
  .mypage {
    position: relative;
    top: 0;
    right: 0;
    width: auto;
    margin: 10px 10px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}

.mypage__body {
  position: relative;
  padding: 40px 20px 13px;
}
.mypage__body:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 40px;
  height: 5px;
  background: #00a1a1;
}
.mypage__body ul {
  margin: 0;
  padding: 0;
}
.mypage__body ul li {
  margin: 0;
  padding: 0;
}
.mypage__body ul li:before {
  display: none;
}
.mypage__body ul li + li {
  margin-top: 15px;
}
.mypage__body .btn {
  width: 100%;
  min-width: 1px;
  padding: 15px 30px 13px;
  font-size: 108%;
  line-height: 180%;
  text-align: center;
}
.mypage__body .btn:hover {
  color: #222222;
  background: #dfe5e5;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
}
.mypage__body .text {
  margin-top: 15px;
  font-size: 93%;
  line-height: 193%;
  text-align: center;
}

.mypage__footer {
  margin: 0;
  padding: 10px 20px 20px;
  background: url(i/bg_people.png) 15px 15px no-repeat;
  border-top: 2px solid #e6e6e6;
}
.mypage__footer .sns {
  margin: 20px 0 0 0;
  padding: 0;
  letter-spacing: -.35em;
  text-align: right;
}
.mypage__footer .sns li {
  display: inline-block;
  letter-spacing: normal;
  margin: 0;
  padding: 0;
}
.mypage__footer .sns li:before {
  display: none;
}
.mypage__footer .sns li + li {
  margin-left: 20px;
}
.mypage__footer .sns a:after {
  display: none;
}
.mypage__footer .sns a:hover {
  opacity: 0.8;
}

.mypage__footer .sns li.new_sns {
  position: relative;
}


.mypage__footer .sns li.new_sns a:before {
  position: absolute;
  top: -20px;
  right: 3px;
  border: 1px solid #ff0000;
  padding: 2px 3px;
  content: "New!";
  font-size: 70%;
  line-height: 100%;
  color: #ff0000;
  font-weight: bold;
  text-shadow:
  1px 1px 0 #FFF, -1px -1px 0 #FFF,
  -1px 1px 0 #FFF, 1px -1px 0 #FFF,
  0px 1px 0 #FFF,  0-1px 0 #FFF,
  -1px 0 0 #FFF, 1px 0 0 #FFF;
}


/*
important
***************************************************** */
.important {
  width: 1160px;
  margin: 0 auto;
}
@media only screen and (max-width: 1160px) {
  .important {
    width: auto;
    margin: 0 10px;
  }
}
.important dt {
  float: left;
  width: 160px;
  color: #fff;
  font-size: 93%;
  line-height: 193%;
  text-align: center;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  background: #d93616;
}
@media only screen and (max-width: 720px) {
  .important dt {
    float: none;
  }
}
.important dd {
  margin-left: 180px;
}
@media only screen and (max-width: 720px) {
  .important dd {
    margin-top: 10px;
    margin-left: 0;
  }
}

/*
topics
***************************************************** */
.topics {
  width: 100%;
  padding: 40px 0;
  background: url(i/bg_top_topics.png) 0 0 repeat;
}
@media only screen and (max-width: 720px) {
  .topics {
    padding: 20px 0;
  }
}

.topics__body {
  display: flex;
  /* width: 1160px; ~2023.02.10 */
  max-width: 1400px;
  margin: 0 auto;
  letter-spacing: -.35em;
}
@media only screen and (max-width: 1160px) {
  .topics__body {
    width: auto;
    margin: 0 10px;
  }
}

.topics__body_item {
  position: relative;
  display: inline-block;
  letter-spacing: normal;
  vertical-align: top;
  /* width: 280px; */
  /* height: 180px; */
  margin-top: 0;
  /* margin-right: 40px; ~2023.02.10 */
  margin-right: 20px;
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -ms-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
}
.topics__body_item img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 1160px) {
  .topics__body_item {
    /* width: 26%; */
    height: auto;
    margin-right: 1%;
    overflow: hidden;
  }
  .topics__body_item img {
    /* width: 100%; */
    /* height: auto; */
  }
}
@media only screen and (max-width: 820px) {
  .topics__body {
    display: block;
  }
  .topics__body_item {
    display: block;
    width: 80%;
    height: auto;
    margin: 20px auto 0;
  }
  .topics__body_item:nth-child(1) {
    margin-top: 0;
  }
}
.topics__body_item a:hover img {
  opacity: 0.7;
}
.topics__body_item .text {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  width: 220px;
  height: 60px;
  margin: auto;
}
@media only screen and (max-width: 1160px) {
  .topics__body_item .text {
    width: 80%;
  }
}
@media only screen and (max-width: 1160px) and (max-width: 820px) {
  .topics__body_item .text {
    width: 220px;
  }
}
.topics__body_item .text span {
  display: table-cell;
  width: 220px;
  height: 70px;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  font-size: 108%;
  line-height: 134%;
  border: 1px solid #fff;
  background: rgba(0, 64, 76, 0.65);
}
@media only screen and (max-width: 1160px) {
  .topics__body_item .text span {
    padding: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.topics__body_item.calendar {
  width: 200px;
  margin-right: auto;
}
@media only screen and (max-width: 1160px) {
  .topics__body_item.calendar {
    /* width: 19%; */
  }
}
@media only screen and (max-width: 1160px) and (max-width: 820px) {
  .topics__body_item.calendar {
    display: block;
    width: 200px;
    margin: 20px auto 0;
  }
  .topics__body_item.calendar img {
    width: auto;
  }
}

/*
news
***************************************************** */
.news {
  width: 920px;
  margin: 50px auto 0;
}
@media only screen and (max-width: 920px) {
  .news {
    width: auto;
    margin: 50px 10px 0;
  }
}

.news__head {
  position: relative;
}
.news__head h2 {
  padding: 0 200px 0 0;
  font-size: 186%;
  line-height: 100%;
  font-weight: bold;
  border: none;
  background: none;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  -ms-border-radius: 0px;
  -o-border-radius: 0px;
  border-radius: 0px;
}
@media only screen and (max-width: 720px) {
  .news__head h2 {
    padding: 0;
  }
}
.news__head h2:before {
  height: 22px;
  margin-left: 0;
  margin-right: 20px;
}
.news__head .detailLink {
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
}

/*
related
***************************************************** */
.related {
  position: relative;
  display: table;
  width: 100%;
  margin-bottom: 35px;
  background: url(i/bg_related.png) 0 0 repeat;
}
@media only screen and (max-width: 720px) {
  .related {
    display: none;
  }
}
.related:before, .related:after {
  display: table-cell;
}
.related:before, .related:after {
  content: '';
  width: auto;
  height: auto;
}
@media only screen and (max-width: 1160px) {
  .related:before, .related:after {
    display: none;
  }
}
.related:after {
  background: url(i/bg_related_w.png) 0 0 repeat;
}

.related__Body {
  display: table-cell;
  width: 1160px;
  margin: 0 auto;
  letter-spacing: -.35em;
}
@media only screen and (max-width: 1160px) {
  .related__Body {
    display: table;
    width: auto;
    padding: 0 10px;
  }
}

.related__Body__item {
  display: inline-block;
  letter-spacing: normal;
  width: 780px;
  padding: 40px 40px 40px 0;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 1160px) {
  .related__Body__item {
    display: table-cell;
    width: auto;
    padding: 40px 10px;
  }
}
.related__Body__item iframe {
  vertical-align: top;
}
.related__Body__item h3 {
  padding-left: 23px;
  padding-bottom: 9px;
  font-size: 115%;
  line-height: 100%;
  font-weight: bold;
  border-bottom: none;
}
.related__Body__item h3:before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 18px;
  margin-top: -4px;
  margin-right: 13px;
  margin-left: -18px;
  background: #00a1a1;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  vertical-align: middle;
}
.related__Body__item .grid + h3 {
  margin-top: 43px;
}
.related__Body__item .width6:nth-child(-n+2) {
  margin-top: 15px;
}
.related__Body__item .width3:nth-child(-n+4) {
  margin-top: 15px;
}

.related__Body__item + .related__Body__item {
  width: 380px;
  margin: 0;
  padding: 40px 0 40px 40px;
  background: url(i/bg_related_w.png) 0 0 repeat;
}
@media only screen and (max-width: 1160px) {
  .related__Body__item + .related__Body__item {
    width: auto;
    padding: 40px 10px;
  }
}

.relatedBox a {
  display: inline-block;
  text-decoration: none;
  background: #fff;
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -ms-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
}
.relatedBox a:hover .relatedText {
  color: #222222;
  background: #dfe5e5;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
}
.relatedBox .relatedText {
  display: table-cell;
  width: 170px;
  height: 50px;
  padding-left: 30px;
  vertical-align: middle;
  background: #fff;
  text-decoration: none;
}
.relatedBox .relatedText:before {
  margin: -2px 8px 0 -18px;
  font-size: 72%;
  line-height: 221%;
  color: #e6b800;
  vertical-align: middle;
}
@media only screen and (max-width: 1000px) {
  .relatedBox.width3 {
    width: 50.0%;
  }
  .relatedBox a {
    display: block;
  }
  .relatedBox .image {
    display: block;
    width: 100%;
  }
  .relatedBox .image img {
    width: 100%;
    height: auto;
  }
  .relatedBox .relatedText {
    width: 100%;
  }
}

/*
l-body
***************************************************** */
.l-body {
  position: relative;
  margin: 0;
}
@media only screen and (max-width: 720px) {
  .l-body {
    width: auto;
  }
}

/*
l-contents
***************************************************** */
.l-contents {
  position: relative;
  width: 1160px;
  margin: 0 auto;
  background: #fff;
}
@media only screen and (max-width: 1160px) {
  .l-contents {
    width: 100%;
  }
}
@media only screen and (max-width: 720px) {
  .l-contents {
    padding-bottom: 0;
  }
}

.top .l-contents {
  width: auto;
}

.keyImg {
  position: relative;
  margin-top: 40px;
}
@media only screen and (max-width: 1160px) {
  .keyImg {
    margin-top: 20px;
    padding: 0 10px;
  }
  .keyImg img {
    width: 100%;
    height: auto;
  }
}
.keyImg .detailLink {
  position: absolute;
  top: 10px;
  right: 10px;
  margin: 0;
}
@media only screen and (max-width: 1160px) {
  .keyImg .detailLink {
    right: 20px;
  }
}
.keyImg .detailLink .btn {
  background: #fff;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
}

/*
l-contents__wrapper
***************************************************** */
.l-contents__wrapper {
  width: 1000px;
  margin: 0 auto;
  padding: 40px 0 60px;
}
@media only screen and (max-width: 1000px) {
  .l-contents__wrapper {
    width: auto;
    padding: 40px 20px 60px;
  }
}
@media only screen and (max-width: 720px) {
  .l-contents__wrapper {
    padding: 20px 10px 30px;
  }
}

.top .l-contents__wrapper {
  width: 100%;
  margin: 0 auto;
  padding: 20px 0 50px;
}

/*
l-contents__body
***************************************************** */
/*
content__wrap
***************************************************** */
.content__wrap {
  margin-top: 25px;
  padding: 0 10px;
}
@media only screen and (max-width: 720px) {
  .content__wrap {
    width: auto;
    margin-top: 18px;
    padding: 0;
  }
}

/*
***************************************************** */
.t-navi {
  position: relative;
  display: table;
  width: 100%;
  margin: 0;
  background: #f7f7f7;
  border-bottom: 1px solid #e6e6e6;
}
.t-navi:before, .t-navi:after {
  content: '';
  display: table-cell;
  width: auto;
  height: auto;
  background: #fdfefe;
}
.t-navi:after {
  background: #f7f7f7;
}
.t-navi ol {
  display: table-cell;
  width: 1160px;
  margin: 0 auto;
  padding: 0;
  list-style-type: none;
}
.t-navi li {
  position: relative;
  display: block;
  float: left;
  height: 32px;
  margin: 0;
  padding: 0;
  vertical-align: middle;
  font-size: 93%;
  line-height: 139%;
}
@media only screen and (max-width: 1160px) {
  .t-navi li {
    height: auto;
  }
}
.t-navi li + li {
  margin: 0;
  padding: 0;
}
.t-navi li:first-child a {
  padding: 3px 15px 0 20px;
}
@media only screen and (max-width: 720px) {
  .t-navi li:first-child a {
    padding: 3px 0 0 10px;
  }
}
.t-navi li + li a, .t-navi li + li span {
  padding: 3px 15px 0 30px;
}
@media only screen and (max-width: 720px) {
  .t-navi li + li a, .t-navi li + li span {
    padding: 3px 0 0 20px;
  }
}
.t-navi li:last-child span {
  display: inline-block;
  height: 32px;
  color: #125050;
  background: #f7f7f7;
  text-decoration: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.t-navi li:last-child span:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.t-navi li:after, .t-navi li a:after {
  content: '';
  position: absolute;
  top: 0;
  left: 100%;
  content: '';
  height: 0;
  width: 0;
  border: 16px solid transparent;
  border-right-width: 0;
  border-left-width: 13px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.t-navi li:after {
  display: inline-block;
  z-index: 1;
  -webkit-transform: translateX(1px);
  -moz-transform: translateX(1px);
  -ms-transform: translateX(1px);
  -o-transform: translateX(1px);
  transform: translateX(1px);
  border-left-color: #e6e6e6;
  margin: 0;
}
.t-navi li a:after {
  z-index: 2;
  border-left-color: #fdfefe;
}
.t-navi li:last-of-type:after, .t-navi li:last-of-type a:after {
  display: none;
}
.t-navi li a {
  display: inline-block;
  height: 32px;
  color: #777777;
  background: #fdfefe;
  text-decoration: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.t-navi li a:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.t-navi li a:hover {
  text-decoration: underline;
}

/*
history
***************************************************** */
.history {
  margin-top: 35px;
  border-bottom: 1px dotted #7f7f7f;
}
.history dl {
  padding: 14px 14px 12px;
  border-top: 1px dotted #7f7f7f;
}
.history dt {
  float: left;
  width: 65px;
  color: #1b3636;
  font-weight: bold;
}
@media only screen and (max-width: 720px) {
  .history dt {
    float: none;
    width: auto;
  }
}
.history dd {
  margin-left: 85px;
}
@media only screen and (max-width: 720px) {
  .history dd {
    margin: 0;
  }
}

/*
pagenation
***************************************************** */
.pagenation {
  display: table;
  height: auto;
  margin: 40px auto 0;
  padding: 0;
  text-align: center;
}
.pagenation li {
  display: table-cell;
  margin: 0;
  padding: 0 5px 0;
}
.pagenation li:before {
  display: none;
}
.pagenation .pagePrev .pagenation__link,
.pagenation .pageNext .pagenation__link {
  width: 80px;
  height: 37px;
}
.pagenation .pagePrev {
  padding-right: 15px;
}
@media only screen and (max-width: 720px) {
  .pagenation .pagePrev {
    padding: 5px;
  }
}
.pagenation .pageNext {
  padding-left: 15px;
}
@media only screen and (max-width: 720px) {
  .pagenation .pageNext {
    padding: 5px;
  }
}
.pagenation .pagenation__link {
  display: table-cell;
  width: 40px;
  height: 37px;
  padding-top: 3px;
  color: #222;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -ms-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
}
.pagenation .pagenation__link:hover, .pagenation .pagenation__link.active, .pagenation .pagenation__link.active:hover {
  color: #222222;
  background: #dfe5e5;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
}
.pagenation .pagenation__item {
  display: table-cell;
  padding: 0 5px;
  text-align: center;
  vertical-align: middle;
}
@media only screen and (max-width: 720px) {
  .pagenation .pagenation__item {
    padding: 0;
  }
}

/*
yearList
***************************************************** */
.yearList {
  display: table;
  width: 100%;
  border-right: 1px solid #ccc;
}
@media only screen and (max-width: 720px) {
  .yearList {
    letter-spacing: -.35em;
    display: block;
    border-right: none;
  }
}
.yearList .yearList__item {
  display: table-cell;
  margin: 0;
  padding: 0;
  text-align: center;
  vertical-align: middle;
  border-left: 1px solid #ccc;
}
@media only screen and (max-width: 720px) {
  .yearList .yearList__item {
    display: inline-block;
    letter-spacing: normal;
    width: 24.8%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 86%;
    line-height: 142%;
  }
  .yearList .yearList__item:nth-child(4n) {
    border-right: 1px solid #ccc;
  }
}
.yearList .yearList__item:before {
  display: none;
}
.yearList .yearList__item span {
  color: #1b3636;
  font-weight: bold;
}

/*
tab
***************************************************** */
.tab__head {
  padding: 0 5px;
  border-bottom: 2px solid #006666;
}
@media only screen and (max-width: 720px) {
  .tab__head {
    padding: 0;
    border-bottom: none;
  }
}

.tabTwo .tab__head__item {
  width: 49.5%;
}

.tab__head__item {
  float: left;
  display: table;
  width: 24.25%;
  margin-top: 0;
  background: #f6f6f6;
}
@media only screen and (max-width: 720px) {
  .tab__head__item {
    width: 50%;
    background: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .tab__head__item:nth-child(odd) {
    margin-left: 0;
    padding-right: 1px;
  }
  .tab__head__item:nth-child(even) {
    padding-left: 2px;
  }
  .tab__head__item:nth-child(n+3) {
    margin-top: 3px;
  }
}
.tab__head__item + .tab__head__item {
  margin-left: 1%;
}
@media only screen and (max-width: 720px) {
  .tab__head__item + .tab__head__item {
    margin-left: 0;
  }
}
.tab__head__item a {
  display: table-cell;
  min-width: 138px;
  padding: 5px 10px 2px;
  height: 40px;
  border-bottom: none;
  background: #e6e6e6;
  line-height: 100%;
  vertical-align: middle;
  text-align: center;
  color: #222;
  font-size: 108%;
  line-height: 180%;
  text-decoration: none;
  border-radius: 3px 3px 0 0;
  -webkit-border-radius: 3px 3px 0 0;
  -moz-border-radius: 3px 3px 0 0;
  -ms-border-radius: 3px 3px 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 920px) {
  .tab__head__item a {
    font-size: 100%;
    line-height: 186%;
  }
}
@media only screen and (max-width: 720px) {
  .tab__head__item a {
    min-width: 1px;
    width: 100%;
    height: 44px;
    font-size: 86%;
    line-height: 200%;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
  }
}
.tab__head__item.active a, .tab__head__item a:hover {
  color: #fff;
  background: #006666;
}
@media only screen and (max-width: 720px) {
  .tab__head__item.active a, .tab__head__item a:hover {
    height: 44px;
  }
}

.kyogi.active a, .kyogi a:hover {
  color: #222;
  background: #fff2bf;
}

.meeting.active a, .meeting a:hover {
  color: #222;
  background: #cae2ad;
}

.other.active a, .other a:hover {
  color: #222;
  background: #d6dcf0;
}

.tab__content {
  margin-top: 25px;
}
@media only screen and (max-width: 720px) {
  .tab__content {
    margin-top: 27px;
  }
}
.tab__content .tab__content__item {
  display: none;
}
.tab__content .tab__content__item.active {
  display: block;
}

.top .tab__head__item {
  width: 220px;
}
@media only screen and (max-width: 920px) {
  .top .tab__head__item {
    width: 25%;
    background: #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.top .tab__head__item + .tab__head__item {
  margin-left: 10px;
}
@media only screen and (max-width: 920px) {
  .top .tab__head__item + .tab__head__item {
    margin-left: 0;
    padding-left: 10px;
  }
}
@media only screen and (max-width: 720px) {
  .top .tab__head__item + .tab__head__item {
    margin-left: 0;
  }
}
@media only screen and (max-width: 720px) {
  .top .tab__head__item {
    width: 50%;
    background: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .top .tab__head__item:nth-child(odd) {
    margin-left: 0;
    padding-left: 0;
    padding-right: 1px;
  }
  .top .tab__head__item:nth-child(even) {
    padding-left: 2px;
  }
  .top .tab__head__item:nth-child(n+3) {
    margin-top: 3px;
  }
}

/*
newsList
***************************************************** */
.newsList {
  margin: 30px 15px 0;
}
@media only screen and (max-width: 720px) {
  .newsList {
    margin: 30px 0 0;
  }
}
.newsList dl + dl {
  margin-top: 14px;
}
@media only screen and (max-width: 720px) {
  .newsList dl + dl {
    margin-top: 20px;
  }
}
.newsList dt {
  float: left;
  width: 265px;
  letter-spacing: -.35em;
}
@media only screen and (max-width: 720px) {
  .newsList dt {
    float: none;
    width: auto;
  }
}
.newsList dt .date {
  display: inline-block;
  letter-spacing: normal;
  margin-right: 30px;
}
.newsList dt .label {
  vertical-align: middle;
}
.newsList dd {
  margin-left: 265px;
}
@media only screen and (max-width: 720px) {
  .newsList dd {
    margin: 5px 0 0 0;
  }
}

.news__header .date {
  margin-right: 30px;
}

/*
eventList
***************************************************** */
.eventList {
  margin-top: 20;
}

.eventList__item {
  position: relative;
  padding: 30px 40px 30px 35px;
  background: url(i/bg_event.png) 0 0 repeat;
  border-left: 5px solid #e6b800;
}
@media only screen and (max-width: 720px) {
  .eventList__item {
    padding: 15px 20px 15px 20px;
  }
}
.eventList__item + .eventList__item {
  margin-top: 20px;
}
.eventList__item .btn {
  background: #fff;
}
.eventList__item dl {
  display: table;
  width: 100%;
  padding-right: 300px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 720px) {
  .eventList__item dl {
    display: block;
    padding: 0;
  }
}
.eventList__item dl dt,
.eventList__item dl dd {
  display: table-cell;
  vertical-align: middle;
}
@media only screen and (max-width: 720px) {
  .eventList__item dl dt,
  .eventList__item dl dd {
    display: block;
  }
}
.eventList__item dl .date {
  width: 120px;
}
@media only screen and (max-width: 720px) {
  .eventList__item dl .date {
    width: auto;
    font-weight: bold;
  }
}
.eventList__item .detailLink {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 40px;
  height: 100%;
  margin: auto 0;
  padding-top: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.eventList__item .detailLink .news-icon + .btn {
  margin-left: 6px;
}
@media only screen and (max-width: 720px) {
  .eventList__item .detailLink .news-icon {
    width: 100px;
  }
}
.eventList__item .detailLink .btn {
  margin-top: -2px;
}
@media only screen and (max-width: 720px) {
  .eventList__item .detailLink {
    position: relative;
    right: 0;
    margin: 20px auto 0;
    text-align: center;
  }
}
.eventList__item .detailLink:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

/*
accordion
***************************************************** */
.accordion {
  border: 1px solid #cccccc;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
}
.accordion .accordion__content .field__title {
  width: 43%;
  padding-right: 10px;
}

* + .accordion {
  margin-top: 10px;
}

.accordion__head {
  position: relative;
  padding: 13px 30px 13px 15px;
  background: #f6f6f6;
  cursor: pointer;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
}
.accordion__head p {
  font-size: 108%;
  line-height: 180%;
  font-weight: bold;
}
.accordion__head:hover {
  opacity: 0.7;
}
.accordion__head:after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  width: 10px;
  height: 18px;
  color: #999999;
  margin: auto 0;
  font-size: 72%;
  line-height: 221%;
}

.accordion__content {
  display: none;
  padding: 20px;
  border-top: 1px solid #cccccc;
}

.open .accordion__head {
  -webkit-border-radius: 3px 3px 0 0;
  -moz-border-radius: 3px 3px 0 0;
  -ms-border-radius: 3px 3px 0 0;
}

/*
imageOver
***************************************************** */
@media only screen and (max-width: 720px) {
  .imageOver {
    text-align: center;
  }
}

.imageOver span {
  display: inline-block;
  width: 150px;
  height: 150px;
  margin: 0;
  padding: 0;
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: top;
}
@media only screen and (max-width: 1000px) {
  .imageOver span {
    width: 100%;
  }
}
@media only screen and (max-width: 720px) {
  .imageOver span {
    width: 150px;
  }
}

.imageOver .image-cover {
  background-size: cover;
}

.imageOver .image-contain {
  background-size: contain;
}

/*
border-box
***************************************************** */
.border-box {
  padding: 15px;
  border: 1px solid #d3dede;
}

/* 2023.06.09 add 縦に2カラム入れるとき用 */
.border-box-2row .border-box {
  height: 40%;
}

.federation-name {
  padding-left: 23px;
  padding-bottom: 9px;
  font-size: 143%;
  line-height: 130%;
  font-weight: bold;
  border-bottom: 2px solid #c9d4d4;
}
.federation-name:before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 18px;
  margin-top: -4px;
  margin-right: 13px;
  margin-left: -18px;
  background: #00a1a1;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  vertical-align: middle;
}

.federation-info {
  margin-top: 10px;
}
.federation-info dt {
  float: left;
  width: 100px;
}
.federation-info dd {
  margin-left: 100px;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.federation-info .col {
  margin-top: 5px;
}

/*
goods
***************************************************** */
.goods .col,
.goods .goods__image,
.goods .goods__title {
  margin-top: 0;
}
.goods + .goods {
  margin-top: 50px;
}
.goods .goods__title {
  font-size: 129%;
  line-height: 134%;
  font-weight: bold;
}
@media only screen and (max-width: 720px) {
  .goods .goods__title {
    margin-top: 10px;
  }
}
.goods .goods__price {
  margin-top: 5px;
}

/*
calendar
***************************************************** */
#calendar div {
  margin: 0;
}

/*
faq
***************************************************** */
.faq__item + .faq__item {
  margin-top: 40px;
}

.faq__item__body {
  position: relative;
  min-height: 30px;
  padding-left: 60px;
}
.faq__item__body + .faq__item__body {
  margin-top: 10px;
}
.faq__item__body:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 40px;
  height: 40px;
  margin-right: 20px;
  text-align: center;
  vertical-align: middle;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-indent: 0;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
}
.faq__item__body:after {
  position: absolute;
  left: 40px;
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 10px;
}

.question {
  padding-top: 9px;
  font-size: 129%;
  line-height: 134%;
  font-weight: bold;
}

.question:before {
  content: 'Q';
  padding-top: 9px;
  padding-top: 4px\9;
  color: #fff;
  font-size: 112%;
  line-height: 100%;
  font-weight: normal;
  background: #00a1a1;
}

.question:after {
  top: 17px;
  border-color: transparent transparent transparent #00a1a1;
}

.answer {
  padding-top: 10px;
}

.answer:before {
  content: 'A';
  padding-top: 11px;
  padding-top: 6px\9;
  font-size: 143%;
  line-height: 100%;
  font-weight: normal;
  background: #dfe6e6;
}

.answer:after {
  top: 19px;
  border-color: transparent transparent transparent #dfe6e6;
}

/*
search-box
***************************************************** */
.search-box div {
  margin-top: 0;
}
.search-box .gsc-control-cse,
.search-box .gsc-control-cse .gsc-table-result {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
  padding-top: 0;
}
@media only screen and (max-width: 720px) {
  .search-box .gsc-control-cse,
  .search-box .gsc-control-cse .gsc-table-result {
    padding: 0;
  }
}
@media only screen and (max-width: 720px) {
  .search-box .gsc-thumbnail-inside {
    padding: 0;
  }
}
.search-box .gsc-url-top {
  margin-top: 5px;
}
@media only screen and (max-width: 720px) {
  .search-box .gsc-url-top {
    padding: 0;
  }
}
.search-box .gs-webResult.gs-result .gs-title {
  height: auto;
  overflow: visible;
}
.search-box .gs-webResult.gs-result a.gs-title,
.search-box .gs-webResult.gs-result a.gs-title:link,
.search-box .gs-webResult.gs-result a.gs-title:visited {
  color: #222;
}
.search-box .gs-webResult.gs-result a.gs-title b,
.search-box .gs-webResult.gs-result a.gs-title:link b,
.search-box .gs-webResult.gs-result a.gs-title:visited b {
  color: #222;
}
.search-box .gs-webResult.gs-result a.gs-title:hover,
.search-box .gs-webResult.gs-result a.gs-title:active {
  color: #18a1a1;
}
.search-box .gs-webResult.gs-result a.gs-title:hover b,
.search-box .gs-webResult.gs-result a.gs-title:active b {
  color: #18a1a1;
}
.search-box table {
  border: none;
}
.search-box th,
.search-box td {
  padding: 0;
  border: none;
}
.search-box .gsc-table-result {
  margin-top: 0;
}
.search-box .gsc-results .gsc-cursor-box {
  text-align: center;
}
@media only screen and (max-width: 720px) {
  .search-box .gsc-results .gsc-cursor-box {
    margin: 15px 0 0 0;
  }
}
.search-box .gsc-results .gsc-cursor-box .gsc-cursor-page {
  display: inline-block;
  width: 40px;
  height: 32px;
  margin-right: 0;
  padding-top: 8px;
  color: #222;
  font-size: 14px;
  text-align: center;
  text-decoration: none;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -ms-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
}
@media only screen and (max-width: 720px) {
  .search-box .gsc-results .gsc-cursor-box .gsc-cursor-page {
    width: auto;
    height: auto;
    padding: 3px 5px;
  }
}
.search-box .gsc-results .gsc-cursor-box .gsc-cursor-page + .gsc-cursor-page {
  margin-left: 10px;
}
@media only screen and (max-width: 720px) {
  .search-box .gsc-results .gsc-cursor-box .gsc-cursor-page + .gsc-cursor-page {
    margin-left: 10px;
  }
}
.search-box .gsc-results .gsc-cursor-box .gsc-cursor-page:hover, .search-box .gsc-results .gsc-cursor-box .gsc-cursor-page.gsc-cursor-current-page, .search-box .gsc-results .gsc-cursor-box .gsc-cursor-page.gsc-cursor-current-page:hover {
  color: #222222;
  font-weight: normal;
  text-decoration: none;
  background: #dfe5e5;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
}
.search-box img.gcsc-branding-img-noclear {
  vertical-align: middle;
}

/*
alert
***************************************************** */
* + .alert {
  margin-top: 20px;
}

.alert {
  padding: 16px;
  border: 1px solid #d23b3b;
  background: #fff3f3;
}

.alert__head {
  color: #d23b3b;
  font-size: 115%;
  line-height: 175%;
  font-weight: bold;
}

.alert__content {
  margin-top: 5px;
  color: #d23b3b;
}
.alert__content .radioBtn:before {
  background-color: #d23b3b;
}
.alert__content .radioBtn:after {
  border-color: #d23b3b;
}
.alert__content li:before {
  color: #d23b3b;
}

.alert.is-orange {
  border: 1px solid #e06317;
  background: #fff9f5;
}

.is-orange .alert__head {
  color: #e06317;
}

.is-orange .alert__content {
  color: #e06317;
}
.is-orange .alert__content .radioBtn:before {
  background-color: #e06317;
}
.is-orange .alert__content .radioBtn:after {
  border-color: #e06317;
}
.is-orange .alert__content li:before {
  color: #e06317;
}

.alert.is-blue {
  border: 1px solid #166db6;
  background: #f9fdff;
}

.is-blue .alert__head {
  color: #166db6;
}

.is-blue .alert__content {
  color: #166db6;
}
.is-blue .alert__content .radioBtn:before {
  background-color: #166db6;
}
.is-blue .alert__content .radioBtn:after {
  border-color: #166db6;
}
.is-blue .alert__content li:before {
  color: #166db6;
}

.alert.is-normal {
  border: 1px solid #ccc;
  background: #f6f6f6;
}

.is-normal .alert__head {
  color: #222;
}

.is-normal .alert__content {
  color: #222;
}
.is-normal .alert__content .radioBtn:before {
  background-color: #f2f2f2;
}
.is-normal .alert__content .radioBtn:after {
  border-color: #bdbdbd;
}
.is-normal .alert__content li:before {
  color: #00a1a1;
}

.news-contents strong {
  color: #222;
  font-weight: bold;
}
.news-contents em {
  font-style: italic;
  font-weight: normal;
}

/*
heading
***************************************************** */
.heading {
  width: 100%;
  height: 245px;
  margin-top: -45px;
}
.heading .image {
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200% !important;
  height: 200%;
  text-align: center;
  z-index: 1;
}
.heading .image img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  min-width: 50%;
  min-height: 50%;
}
@media only screen and (max-width: 720px) {
  .heading .image img {
    max-width: none;
    left: -50%;
    right: -50%;
  }
}
@media only screen and (max-width: 720px) {
  .heading {
    margin-top: 0;
    height: auto;
  }
}
.heading .heading__body {
  position: relative;
  width: 100%;
  height: 245px;
  margin: 0 auto;
  padding-top: 45px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
}
@media only screen and (max-width: 720px) {
  .heading .heading__body {
    height: auto;
    padding: 15px 0;
  }
}

.top .heading {
  position: relative;
  width: 1400px;
  height: 435px;
  margin: -45px auto 0;
  z-index: 1;
  overflow: hidden;
}
.top .heading .heading__body {
  background: none;
}
@media only screen and (max-width: 1400px) {
  .top .heading {
    width: auto;
    height: auto;
    overflow: visible;
  }
}
@media only screen and (max-width: 1000px) {
  .top .heading {
    margin: 0 auto 0;
  }
}

/* h1 */
h1 {
  position: relative;
  display: table;
  width: 1160px;
  height: 100%;
  margin: 0 auto;
  z-index: 2;
}
h1 span {
  display: table-cell;
  height: 100%;
  color: #fff;
  font-size: 258%;
  line-height: 123%;
  text-align: center;
  vertical-align: middle;
  -webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
  -moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
  -ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
}
@media only screen and (max-width: 1160px) {
  h1 {
    width: 100%;
    vertical-align: middle;
  }
}

.top h1 {
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  height: auto;
  color: transparent;
  background: none;
  border: none;
  margin: 0;
  padding: 0;
  z-index: 1;
}

/* h2 */
h2 {
  padding: 16px 13px 10px 30px;
  font-size: 158%;
  line-height: 128%;
  font-weight: bold;
  border: 2px solid #d3dede;
  background: #f5f7f7;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
}
h2:before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 18px;
  margin-top: -5px;
  margin-right: 10px;
  margin-left: -15px;
  vertical-align: middle;
  background: #00a1a1;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
}

.fc h2 {
  padding: 0;
  border: none;
  background: none;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  -ms-border-radius: 0px;
  -o-border-radius: 0px;
  border-radius: 0px;
}
.fc h2:before {
  display: none;
}

* + h2 {
  margin-top: 40px;
}

/* h3 */
h3 {
  padding-left: 23px;
  padding-bottom: 9px;
  font-size: 143%;
  line-height: 130%;
  font-weight: bold;
  border-bottom: 2px solid #c9d4d4;
}
h3:before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 18px;
  margin-top: -4px;
  margin-right: 13px;
  margin-left: -18px;
  background: #00a1a1;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  vertical-align: middle;
}

* + h3 {
  margin-top: 30px;
}

/* h4*/
h4 {
  padding-left: 14px;
  font-size: 129%;
  line-height: 134%;
  font-weight: bold;
}
h4:before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 15px;
  margin-top: -4px;
  margin-right: 9px;
  margin-left: -14px;
  background: #00a1a1;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  vertical-align: middle;
}

* + h4 {
  margin-top: 30px;
}

h3 + h4 {
  margin-top: 19px;
}

/* h5*/
h5 {
  padding-left: 18px;
  font-size: 108%;
  line-height: 134%;
  font-weight: bold;
}
h5:before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  margin-right: 10px;
  margin-left: -18px;
  background: #a3cccc;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  vertical-align: middle;
}

* + h5 {
  margin-top: 30px;
}

h4 + h5 {
  margin-top: 19px;
}

/*
h-line
***************************************************** */
.h-line {
  margin: 16px 0;
  padding: 0;
  border: none;
  border-bottom: 1px solid #cccccc;
}

/*
pre
***************************************************** */
pre {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
  white-space: pre-wrap;
}

/*
p
***************************************************** */
* + p {
  margin-top: 25px;
}

/*
em,storng
***************************************************** */
.em,
.font-b {
  font-weight: bold;
}

.movie-box + .font-b {
  margin-top: 5px;
}

strong {
  color: #006666;
}

.caution {
  color: #a60808;
}

/*
ul
***************************************************** */
* + ul {
  margin-top: 25px;
}

ul li {
  padding-left: 17px;
}
ul li + li {
  margin-top: 9px;
}
ul li:before {
  color: #e6b800;
  margin: -3px 7px 0 -18px;
  font-size: 72%;
  line-height: 221%;
  vertical-align: middle;
}
ul ul {
  margin-top: 9px;
}
ul ul > li:before {
  color: #c7c3b3;
}
ul ol {
  margin-top: 9px;
}
ul ol li {
  padding-left: 0;
}
ul ol li:before {
  display: none;
}

.link-list li {
  padding-left: 18px;
}
.link-list li + li {
  margin-top: 11px;
}
.link-list li a {
  text-decoration: none;
}
.link-list li a:hover {
  text-decoration: underline;
}
.link-list li:before {
  color: #e6b800;
  margin: -2px 8px 0 -18px;
  font-size: 10px;
  line-height: 180%;
  vertical-align: middle;
}

.notes .notes__item {
  padding: 0;
  font-size: 86%;
  line-height: 200%;
}
.notes .notes__item + .notes__item {
  margin-top: 5px;
}
.notes .notes__item span {
  display: block;
  margin-left: 45px;
}
.notes .notes__item:before {
  float: left;
  display: block;
  width: 45px;
  margin: 0;
  color: #222;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
  font-size: 93%;
  line-height: 193%;
}

.item__01:before {
  content: '（注1）';
}

.item__02:before {
  content: '（注2）';
}

.item__03:before {
  content: '（注3）';
}

.item__04:before {
  content: '（注4）';
}

.item__05:before {
  content: '（注5）';
}

.item__06:before {
  content: '（注6）';
}

.item__07:before {
  content: '（注7）';
}

.item__08:before {
  content: '（注8）';
}

.item__09:before {
  content: '（注9）';
}

/*
ol
***************************************************** */
* + ol {
  margin-top: 25px;
}

ol {
  margin-left: 18px;
}
ol li + li {
  margin-top: 9px;
}
ol ol,
ol ul {
  margin-top: 9px;
}

/*
table
***************************************************** */
table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-top: 1px dotted #979d91;
  border-left: 1px dotted #979d91;
}

th,
td {
  padding: 7px 12px 6px;
  border-bottom: 1px dotted #979d91;
  border-right: 1px dotted #979d91;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

th {
  color: #1b3636;
  background: #ebf7f7;
}

th.th-second {
  font-weight: normal;
  background: #f7f7f7;
}

th.th-second--white {
  font-weight: normal;
  background: #fff;
}

.winList th,
.winList td {
  vertical-align: middle;
}

.rt-tableCaption {
  display: none;
}

@media only screen and (max-width: 720px) {
  .rt-tableWrapper {
    margin-top: 0;
    position: relative;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
  }
  .rt-tableWrapper table {
    margin-top: 0;
  }

  .rt-tableCaption {
    display: block;
    margin-bottom: 10px;
    padding: 4px;
    color: #fff;
    background: #00a1a1;
  }

  .rt-tableWrapper table {
    min-width: 1000px;
  }
}
/*
parts
***************************************************** */
.loading-img {
  display: block;
  width: 126px;
  height: 126px;
  margin: 0 auto;
  padding: 0;
}
.loading-img span {
  display: table-cell;
  width: 126px;
  height: 126px;
  margin: 0 auto;
  padding: 0;
  text-align: center;
  vertical-align: middle;
}

.is-b_bottom {
  border-bottom: 1px solid #ccc;
}

.is-smp {
  display: none;
}
@media only screen and (max-width: 720px) {
  .is-smp {
    display: block;
  }
}

.dotted {
  height: 0;
  margin: 15px 0 0 0;
  padding: 0;
  border: none;
  border-top: 1px dotted #cfcfcf;
}

@media only screen and (max-width: 720px) {
  .iframeBox {
    position: relative;
    padding-bottom: 75%;
    /* 16:9 の場合 56.25%，4:3 の場合 75% */
    width: 100%;
    height: 0;
    overflow: hidden;
  }
  .iframeBox iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
  }
}

.grid .iframeBox {
  position: relative;
  padding-bottom: 75%;
  /* 16:9 の場合 56.25%，4:3 の場合 75% */
  width: 100%;
  height: 0;
  overflow: hidden;
}
.grid .iframeBox iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

h3 + * {
  margin-top: 16px;
}

h4 + * {
  margin-top: 10px;
}

h5 + * {
  margin-top: 10px;
}

* + div {
  margin-top: 25px;
}

* + table {
  margin-top: 25px;
}

h2 + div {
  margin-top: 25px;
}

h3 + div,
h3 + table {
  margin-top: 20px;
}

h4 + div,
h5 + div,
h4 + table,
h5 + table {
  margin-top: 15px;
}

h3 + .rt-tableCaption + .rt-tableWrapper {
  margin-top: 20px;
}
@media only screen and (max-width: 720px) {
  h3 + .rt-tableCaption + .rt-tableWrapper {
    margin-top: 0;
  }
}

h4 + .rt-tableCaption + .rt-tableWrapper,
h5 + .rt-tableCaption + .rt-tableWrapper {
  margin-top: 15px;
}
@media only screen and (max-width: 720px) {
  h4 + .rt-tableCaption + .rt-tableWrapper,
  h5 + .rt-tableCaption + .rt-tableWrapper {
    margin-top: 0;
  }
}

/*
grid
***************************************************** */
.grid {
  letter-spacing: -.35em;
  margin: 0 -10px 0;
}
@media only screen and (max-width: 720px) {
  .grid {
    margin: 0;
  }
}

.col {
  display: inline-block;
  letter-spacing: normal;
  margin-top: 25px;
  padding: 0 10px;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.col img {
  max-width: 100%;
  height: auto;
}
@media only screen and (max-width: 720px) {
  .col {
    padding: 0;
  }
  .col.sp-img-100p img {
    width: 100%;
    height: auto;
  }
}
.col.img-100p img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 720px) {
  .col {
    width: 100%;
  }
}

.width1 {
  width: 8.33333333333%;
}
@media only screen and (max-width: 720px) {
  .width1 {
    width: 100%;
  }
}

.width2 {
  width: 16.6666666667%;
}
@media only screen and (max-width: 720px) {
  .width2 {
    width: 100%;
  }
}

.width2_4 {
  width: 20%;
}
@media only screen and (max-width: 720px) {
  .width2_4 {
    width: 100%;
  }
}

.width3 {
  width: 25.0%;
}
@media only screen and (max-width: 720px) {
  .width3 {
    width: 100%;
  }
}

.width4 {
  width: 33.3333333333%;
}
@media only screen and (max-width: 720px) {
  .width4 {
    width: 100%;
  }
}

.width5 {
  width: 41.6666666667%;
}
@media only screen and (max-width: 720px) {
  .width5 {
    width: 100%;
  }
}

.width6 {
  width: 50.0%;
}
@media only screen and (max-width: 720px) {
  .width6 {
    width: 100%;
  }
}

.width7 {
  width: 58.3333333333%;
}
@media only screen and (max-width: 720px) {
  .width7 {
    width: 100%;
  }
}

.width8 {
  width: 66.6666666667%;
}
@media only screen and (max-width: 720px) {
  .width8 {
    width: 100%;
  }
}

.width9 {
  width: 75.0%;
}
@media only screen and (max-width: 720px) {
  .width9 {
    width: 100%;
  }
}

.width10 {
  width: 83.3333333333%;
}
@media only screen and (max-width: 720px) {
  .width10 {
    width: 100%;
  }
}

.width11 {
  width: 91.6666666667%;
}
@media only screen and (max-width: 720px) {
  .width11 {
    width: 100%;
  }
}

.width12 {
  width: 100%;
}

.topics .grid {
  margin: 0 -20px 0;
}
.topics .col {
  margin-top: 0;
  padding: 0 20px;
}
@media only screen and (max-width: 720px) {
  .topics .col {
    width: 100%;
  }
}

/*
column
***************************************************** */
.f-link__item .column {
  margin-top: 10px;
}
.f-link__item .col2 {
  float: left;
  width: 210px;
  margin-top: 0;
}
@media only screen and (max-width: 1160px) {
  .f-link__item .col2 {
    width: 50%;
  }
}
.f-link__item .col2 + .col2 {
  width: 190px;
}
@media only screen and (max-width: 1160px) {
  .f-link__item .col2 + .col2 {
    width: 50%;
  }
}

/*
column3
***************************************************** */
.column3 {
  letter-spacing: -.35em;
}
.column3 .colItem {
  display: inline-block;
  letter-spacing: normal;
  width: 33.3333333333%;
  margin-top: 15px;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.column3 .colItem:nth-child(-n+3) {
  margin-top: 0;
}
@media only screen and (max-width: 720px) {
  .column3 .colItem:nth-child(-n+3) {
    margin-top: 15px;
  }
}
@media only screen and (max-width: 720px) {
  .column3 .colItem {
    display: block;
    width: 100%;
  }
  .column3 .colItem:nth-child(1) {
    margin-top: 0;
  }
}

.multiple-items span {
  display: block;
}
@media only screen and (max-width: 720px) {
  .multiple-items span {
    margin-top: 8px;
  }
}
.multiple-items .item__title {
  display: inline-block;
}
@media only screen and (max-width: 720px) {
  .multiple-items .item__title {
    margin-top: 0;
  }
}

/*
form
***************************************************** */
input,
textarea,
select {
  vertical-align: middle;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
  box-sizing: border-box;
  font-size: 100%;
  line-height: 186%;
}

input[type="text"],
input[type="password"],
input[type="button"],
input[type="submit"],
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff;
  border: 1px solid #ccc;
}

select::-ms-expand {
  display: none;
}

.errBlock {
  margin-bottom: 20px;
  padding: 11px 14px 9px;
  color: #a60808;
  border: 2px solid #fccaca;
  background: #fcf4f2;
}

.contact {
  margin-top: 0;
  padding: 40px;
  background: url(i/bg_event.png) 0 0 repeat;
}
@media only screen and (max-width: 720px) {
  .contact {
    padding: 20px 10px;
  }
}
.contact .field {
  margin-top: 0;
}
.contact .field + .field {
  margin-top: 20px;
}
.contact .field__title {
  float: left;
  width: 150px;
  margin-top: 12px;
  padding-right: 10px;
  font-size: 108%;
  line-height: 180%;
  font-weight: bold;
}
@media only screen and (max-width: 720px) {
  .contact .field__title {
    float: none;
    width: auto;
    margin-top: 0;
    padding-right: 0;
  }
}
.contact .field__input {
  margin-top: 0;
  margin-left: 160px;
}
@media only screen and (max-width: 720px) {
  .contact .field__input {
    display: table;
    width: 100%;
    margin: 0;
  }
}
.contact .field__input input,
.contact .field__input select {
  display: table-cell;
  width: 400px;
  height: 50px;
  padding: 0 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 720px) {
  .contact .field__input input,
  .contact .field__input select {
    width: 100%;
  }
}
.contact .field__input textarea {
  width: 100%;
  height: 250px;
  padding: 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.confirm .field + .field {
  margin-top: 13px;
  padding-top: 16px;
  border-top: 1px solid #ccc;
}
.confirm .field__title {
  margin-top: 0;
}
.confirm .field__input {
  padding-top: 2px;
}

select option {
  color: #222;
}
select .select__other {
  color: #777777;
}

/*
selectArea
***************************************************** */
.selectArea {
  display: block;
  width: 400px;
  height: 50px;
  position: relative;
  box-sizing: border-box;
}
@media only screen and (max-width: 720px) {
  .selectArea {
    display: table;
    width: 100%;
  }
}
.selectArea select {
  position: absolute;
  zoom: 1;
  opacity: 0;
  filter: alpha(opacity=0);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px none;
  cursor: pointer;
}
.selectArea.disabled {
  background: #ebebe4;
}
.selectArea.disabled .selectArea__icon {
  background: #ebebe4;
}

.selectArea__text {
  display: table-cell;
  width: 400px;
  height: 50px;
  padding: 0 15px;
  color: #777777;
  vertical-align: middle;
  border: 1px solid #ccc;
  background: #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.selectArea__text.textColor {
  color: #222;
}
@media only screen and (max-width: 720px) {
  .selectArea__text {
    width: 100%;
  }
}

.selectArea__icon {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 13px;
  width: 13px;
  height: 24px;
  margin: auto 0;
  padding: 0;
  text-align: center;
}
.selectArea__icon i:before {
  color: #777777;
  font-size: 72%;
  line-height: 221%;
}

.textColor + .selectArea__icon i:before {
  color: #222;
}

/*
errorMessage
***************************************************** */
.errorMessage {
  position: relative;
  padding-bottom: 26px;
}
.errorMessage input,
.errorMessage .selectArea__text,
.errorMessage textarea {
  background: #fff3f3;
  border-color: #d23b3b;
}

.input__block {
  display: inline-block;
}

.errorMessage__content {
  position: absolute;
  display: block;
  height: 19px;
  z-index: 10;
  margin: 7px auto 0;
  padding: 1px 6px 0;
  white-space: nowrap;
  color: #fff;
  font-size: 79%;
  line-height: 155%;
  background-color: #d23b3b;
  border-radius: 3px;
}
.errorMessage__content:before {
  content: '';
  display: block;
  position: absolute;
  top: -6px;
  width: 0;
  height: 0;
  border-bottom: 6px solid #d23b3b;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: none;
}

.ui-dialog {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  margin: 0 auto;
  background: #fff;
  z-index: 50;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  border-radius: 5px;
  overflow-y: auto;
}
@media only screen and (max-width: 1200px) {
  .ui-dialog {
    width: 90% !important;
  }
}
@media only screen and (max-width: 720px) {
  .ui-dialog {
    top: 0 !important;
  }
}

.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0 !important;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 40;
  cursor: default;
}

.ui-dialog-titlebar {
  position: relative;
  display: block;
  width: auto;
  padding: 12px 0 8px 0;
  border-bottom: 1px solid #cccccc;
  text-align: center;
  cursor: default;
}
@media only screen and (max-width: 720px) {
  .ui-dialog-titlebar {
    display: table;
    width: 100%;
    padding: 0;
  }
  .ui-dialog-titlebar .ui-dialog-title {
    display: table-cell;
    width: 95%;
    height: 45px;
    padding: 8px 5px;
    border-right: 1px solid #ccc;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.ui-dialog-titlebar button {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 45px;
  height: 45px;
  background: none;
  border: none;
  border-left: 1px solid #ccc;
  cursor: pointer;
  outline: none;
}
@media only screen and (max-width: 720px) {
  .ui-dialog-titlebar button {
    position: relative;
    display: table-cell;
    width: 45px;
    height: 100%;
    border-left: none;
  }
}

.ui-dialog-title {
  font-size: 122%;
  line-height: 171%;
  font-weight: bold;
}

.ui-button {
  -webkit-border-radius: 0 5px 0 0;
  -moz-border-radius: 0 5px 0 0;
  -ms-border-radius: 0 5px 0 0;
  -o-border-radius: 0 5px 0 0;
  border-radius: 0 5px 0 0;
}
.ui-button:hover {
  background-color: #e1e1e1;
}
.ui-button:before {
  font-size: 108%;
  line-height: 180%;
}

.ui-button-text {
  display: none;
}

.modalWrap {
  display: none;
}

.modalContents__body {
  padding: 20px;
}
@media only screen and (max-width: 720px) {
  .modalContents__body {
    padding: 15px;
  }
}
.modalContents__body .field__title {
  width: 30%;
}
.modalContents__body .col2 {
  width: 50%;
}
@media only screen and (max-width: 1000px) {
  .modalContents__body .col2 {
    width: 100%;
  }
}
.modalContents__body .indent {
  text-indent: -1em;
  padding-left: 1em;
}

.modalContents__footer {
  padding: 16px 0;
  border-top: 1px solid #ccc;
}
@media only screen and (max-width: 720px) {
  .modalContents__footer {
    padding: 6px 0 16px;
  }
  .modalContents__footer .btn {
    margin: 10px 0 0;
  }
  .modalContents__footer .btn + .btn {
    margin: 10px 0 0;
  }
}

#loading_dialog_area h2 {
  padding: 0;
  border: none;
  background: none;
}
#loading_dialog_area h2:before {
  display: none;
}

/*
l-header
***************************************************** */
.l-header {
  position: relative;
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 1000px) {
  .l-header {
    position: relative;
    z-index: 20;
    width: 100%;
    padding: 0;
    background: #fff;
    border-bottom: 1px solid #ccc;
  }
}

.l-header__logo {
  position: relative;
  width: 100%;
  height: 35px;
  margin: 0 auto;
}
@media only screen and (max-width: 1000px) {
  .l-header__logo {
    height: 41px;
    border-bottom: none;
    background: #fff;
  }
}
.l-header__logo .logo__wrapper {
  width: 1160px;
  height: 35px;
  margin: 0 auto;
}
@media only screen and (max-width: 1160px) {
  .l-header__logo .logo__wrapper {
    width: 100%;
  }
}
.l-header__logo .logo {
  position: absolute;
  width: 280px;
  height: 82px;
  z-index: 3;
}
@media only screen and (max-width: 1000px) {
  .l-header__logo .logo {
    position: relative;
    width: 130px;
    height: 41px;
    margin-left: 13px;
    background: url(i/sp_logo.png) 0 0 no-repeat;
    background-size: 130px 41px;
  }
  .l-header__logo .logo a {
    display: block;
    width: 130px;
    height: 41px;
  }
  .l-header__logo .logo img {
    display: none;
  }
}

.sp-header-wrapper {
  display: none;
}
@media only screen and (max-width: 1000px) {
  .sp-header-wrapper {
    position: absolute;
    top: 0;
    right: 13px;
    display: block;
    width: 41px;
    margin-top: 0;
  }
  .sp-header-wrapper .sp-menu {
    float: left;
    width: 41px;
    height: 41px;
    background: #fff;
  }
  .sp-header-wrapper .sp-menu a {
    display: block;
    width: 41px;
    height: 41px;
    text-indent: -9999px;
    overflow: hidden;
  }
  .sp-header-wrapper .sp-menu a {
    background: url(i/bg_header_img.png) -41px 0 no-repeat #00a1a1;
    background-size: 82px 41px;
  }
}

.overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 10;
  cursor: pointer;
}

.sp-wrapper {
  margin-top: 0;
}
@media only screen and (max-width: 1000px) {
  .sp-wrapper {
    display: none;
    position: absolute;
    top: 41px;
    left: 0;
    z-index: 20;
  }
  .sp-wrapper.dis-table {
    display: table;
    width: 100%;
  }
}

.l-header__content {
  width: 100%;
  height: 35px;
  margin-top: -35px;
  background: #00a1a1;
  border-bottom: 2px solid #1b3636;
}
@media only screen and (max-width: 1000px) {
  .l-header__content {
    display: table-row-group;
    box-shadow: none;
    background: #00a1a1;
  }
}
.l-header__content .content__wrapper {
  position: relative;
  width: 880px;
  margin: 0 auto;
  padding-left: 280px;
  text-align: right;
  letter-spacing: -.35em;
}
@media only screen and (max-width: 1160px) {
  .l-header__content .content__wrapper {
    width: auto;
  }
}
@media only screen and (max-width: 1000px) {
  .l-header__content .content__wrapper {
    margin: 15px;
    padding: 0;
    text-align: center;
  }
}

.access,
.h-fsList,
.search {
  display: inline-block;
  letter-spacing: normal;
  margin: 0;
  vertical-align: top;
}

.search {
  width: 220px;
  height: 35px;
  margin: 0;
}
.search form.gsc-search-box {
  height: 35px;
  margin: 0 !important;
}
.search table.gsc-search-box {
  margin: 0 !important;
}
.search div {
  margin: 0;
}
.search table {
  border: none;
}
.search td {
  padding: 0;
  border: none;
}
.search .gsc-input {
  width: 185px;
  padding-right: 0 !important;
  vertical-align: baseline;
}
.search .gsc-input-box {
  height: auto;
  background: #fff;
  border: none;
}
.search .gsib_a {
  padding: 0;
}
.search .gsib_b {
  display: none;
}
.search .gsst_b {
  padding: 0 !important;
}
.search input.gsc-input {
  width: 185px !important;
  height: 35px !important;
  padding: 0 5px !important;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
  background-position: 5px center !important;
}
.search .gsc-input-box-hover {
  border: none;
}
.search .gsc-search-button {
  width: 35px;
  height: 35px;
}
.search .gsc-search-button input.gsc-search-button {
  width: 35px;
  height: 0 !important;
  min-width: 1px;
  margin: 0;
  padding: 35px 0 0 0 !important;
  border: 0;
  background: url(i/btn_search.png) 0 0 no-repeat;
  background-size: 35px 35px;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  -ms-border-radius: 0px;
  -o-border-radius: 0px;
  border-radius: 0px;
  overflow: hidden;
}

.access {
  border-left: 1px dotted #99d9d9;
  border-right: 1px dotted #99d9d9;
}
@media only screen and (max-width: 1000px) {
  .access {
    border: none;
  }
}
.access a {
  display: table-cell;
  width: auto;
  height: 35px;
  padding: 0 20px;
  vertical-align: middle;
  color: #fff;
}
.access a:before {
  color: #e6b800;
  font-size: 72%;
  line-height: 221%;
}

.h-fsList {
  letter-spacing: -.35em;
  height: 35px;
  margin-right: 15px;
}
@media only screen and (max-width: 720px) {
  .h-fsList {
    display: none;
  }
}
.h-fsList dt,
.h-fsList dd {
  display: inline-block;
  letter-spacing: normal;
}
.h-fsList dt {
  color: #fff;
  padding: 6px 10px 0 20px;
  vertical-align: top;
  font-size: 93%;
  line-height: 193%;
}
.h-fsList dd a {
  display: table-cell;
  width: 59px;
  height: 35px;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
}
.h-fsList dd a:hover {
  opacity: 0.7;
}
.h-fsList dd + dd {
  margin-left: 2px;
}
.h-fsList .h-fsList__item {
  color: #1b3636;
  background: #fff;
}
.h-fsList .h-fsList__item a {
  color: #1b3636;
  background: #fff;
}
.h-fsList .h-fsList__item + .h-fsList__item {
  color: #fff;
  background: #1b3636;
}
.h-fsList .h-fsList__item + .h-fsList__item a {
  color: #fff;
  background: #1b3636;
}

.l-header__gnavi {
  position: relative;
  height: 45px;
  margin: 0;
  background: rgba(255, 255, 255, 0.8);
  -webkit-box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.5);
  box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.5);
  z-index: 2;
}
@media only screen and (max-width: 1000px) {
  .l-header__gnavi {
    display: table-header-group;
    height: auto;
    box-shadow: none;
    border-bottom: none;
  }
}
@media only screen and (max-width: 1000px) {
  .l-header__gnavi .gnavi {
    background: #00a1a1;
  }
}
.l-header__gnavi ul {
  width: 1160px;
  height: 45px;
  margin: 0 auto;
  letter-spacing: -.35em;
  text-align: right;
}
@media only screen and (max-width: 1160px) {
  .l-header__gnavi ul {
    width: 100%;
    height: auto;
  }
}
.l-header__gnavi ul li {
  display: inline-block;
  letter-spacing: normal;
  margin: 0;
  padding: 0;
}
@media only screen and (max-width: 1000px) {
  .l-header__gnavi ul li {
    float: none;
    display: table;
    width: 100%;
    border-bottom: 1px solid #008d8d;
    background: #00a1a1;
  }
}
.l-header__gnavi ul li:before {
  display: none;
}
.l-header__gnavi ul a {
  position: relative;
  display: table-cell;
  padding: 0 15px 0;
  height: 45px;
  color: #222;
  text-decoration: none;
  font-weight: bold;
  vertical-align: middle;
  cursor: pointer;
}
@media only screen and (max-width: 1000px) {
  .l-header__gnavi ul a {
    width: 100%;
    height: 42px;
    padding: 13px 13px 12px;
    color: #fff;
    text-align: left;
    box-sizing: border-box;
  }
  .l-header__gnavi ul a:after {
    display: block;
    float: right;
    margin-top: 7px;
    font-size: 86%;
    line-height: 200%;
    vertical-align: middle;
  }
}

/*
lnavi
***************************************************** */
.l-contents__wrapper + .lnavi {
  margin: 0 auto 60px auto;
}
@media only screen and (max-width: 720px) {
  .l-contents__wrapper + .lnavi {
    margin: 0 auto 30px auto;
  }
}

.lnavi {
  width: 1160px;
  margin: 40px auto 0;
}
@media only screen and (max-width: 1160px) {
  .lnavi {
    width: 100%;
  }
}
@media only screen and (max-width: 720px) {
  .lnavi {
    margin: 20px auto 0;
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.lnavi ul {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin: 0;
  padding: 0;
  background: #f2f2f2;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
}
@media only screen and (max-width: 720px) {
  .lnavi ul {
    table-layout: auto;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    -ms-border-radius: 0px;
    -o-border-radius: 0px;
    border-radius: 0px;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: none;
  }
  .lnavi ul:after {
    content: " ";
    display: block;
    clear: both;
  }
}
.lnavi li {
  display: table-cell;
  margin: 0;
  padding: 0;
  vertical-align: top;
}
@media only screen and (max-width: 720px) {
  .lnavi li {
    float: left;
    display: table;
    width: 50%;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.lnavi li:before {
  display: none;
}
.lnavi li a {
  display: table;
  width: 100%;
  height: auto;
  font-size: 108%;
  line-height: 134%;
  text-decoration: none;
  background: #f2f2f2;
}
@media only screen and (max-width: 1160px) {
  .lnavi li a {
    font-size: 108%;
    line-height: 134%;
  }
}
@media only screen and (max-width: 720px) {
  .lnavi li a {
    font-size: 86%;
    line-height: 142%;
  }
}
.lnavi li a.is-active, .lnavi li a:hover {
  color: #fff;
  background: #00a1a1;
}
.lnavi li a span {
  display: table-cell;
  width: 100%;
  padding: 13px 5px 12px;
  text-align: center;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.lnavi li:first-child a {
  -webkit-border-radius: 3px 0 0 3px;
  -moz-border-radius: 3px 0 0 3px;
  -ms-border-radius: 3px 0 0 3px;
  border-radius: 3px 0 0 3px;
}
@media only screen and (max-width: 720px) {
  .lnavi li:first-child a {
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    -ms-border-radius: 0px;
    -o-border-radius: 0px;
    border-radius: 0px;
  }
}
.lnavi li:last-child a {
  -webkit-border-radius: 0 3px 3px 0;
  -moz-border-radius: 0 3px 3px 0;
  -ms-border-radius: 0 3px 3px 0;
  border-radius: 0 3px 3px 0;
}
@media only screen and (max-width: 720px) {
  .lnavi li:last-child a {
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    -ms-border-radius: 0px;
    -o-border-radius: 0px;
    border-radius: 0px;
  }
}

/*
l-footer
***************************************************** */
.l-footer {
  width: 100%;
}
@media only screen and (max-width: 1160px) {
  .l-footer {
    width: auto;
  }
}

.copy {
  margin: 0;
  padding: 5px 0 4px;
  font-size: 86%;
  line-height: 200%;
  text-align: center;
  background: #d9d9d9;
}
@media only screen and (max-width: 720px) {
  .copy {
    padding: 5px 13px 4px;
  }
}

/*
sponsor
***************************************************** */
.sponsor a[href^="http"]:after {
  display: none;
}

.sponsor__head {
  position: relative;
  width: 100%;
  text-align: center;
}
.sponsor__head .title {
  position: relative;
  display: inline-block;
  padding: 0 30px;
  font-size: 143%;
  line-height: 160%;
  color: #18a1a1;
  background: #fff;
  z-index: 2;
}
.sponsor__head .h-line {
  position: absolute;
  top: 14px;
  left: 0;
  display: block;
  width: 100%;
  height: 0;
  margin: 0;
  padding: 0;
  border: none;
  border-top: 1px solid #cccccc;
  z-index: 1;
}

.sponsor__body {
  letter-spacing: -.35em;
  margin-top: 0;
  text-align: center;
}
.sponsor__body .sponsor__body__imte {
  display: inline-block;
  letter-spacing: normal;
}
@media only screen and (max-width: 720px) {
  .sponsor__body .sponsor__body__imte {
    width: 100%;
  }
}
.sponsor__body .sponsor__body__imte ul {
  letter-spacing: -.35em;
  margin: 0;
  padding: 0;
}
@media only screen and (max-width: 720px) {
  .sponsor__body .sponsor__body__imte ul {
    width: 100%;
    text-align: left;
  }
}
.sponsor__body .sponsor__body__imte li {
  display: inline-block;
  letter-spacing: normal;
  margin: 0;
  padding: 0;
}
.sponsor__body .sponsor__body__imte li:before {
  display: none;
}
.sponsor__body .sponsor__body__imte li + li {
  margin-left: 40px;
}
@media only screen and (max-width: 720px) {
  .sponsor__body .sponsor__body__imte li + li {
    margin-left: 0;
  }
}
@media only screen and (max-width: 720px) {
  .sponsor__body .sponsor__body__imte li {
    width: 40%;
    padding: 0 5%;
    vertical-align: middle;
  }
  .sponsor__body .sponsor__body__imte li a {
    width: 100%;
  }
  .sponsor__body .sponsor__body__imte li img {
    width: auto;
    max-width: 100%;
    height: auto;
  }
}
.sponsor__body .sponsor__body__imte a:hover {
  opacity: 0.7;
}
.sponsor__body .sponsor__body__imte + .sponsor__body__imte {
  margin-left: 40px;
  padding-left: 40px;
  border-left: 1px dashed #cccccc;
}
@media only screen and (max-width: 1000px) {
  .sponsor__body .sponsor__body__imte + .sponsor__body__imte {
    display: block;
    margin: 20px 0 0 0;
    padding: 20px 0 0 0;
    border: none;
    border-top: 1px dashed #ccc;
  }
}

/*
f-link
***************************************************** */
.f-link {
  margin-top: 20px;
  background: #1b3636;
}

.f-link__body {
  width: 1160px;
  margin: 0 auto;
  padding: 40px 0;
}
@media only screen and (max-width: 1160px) {
  .f-link__body {
    width: auto;
    padding: 40px 20px;
  }
}

.f-link__item {
  float: left;
  width: 400px;
  margin: 0;
}
@media only screen and (max-width: 1160px) {
  .f-link__item {
    width: 48%;
  }
  .f-link__item.f-banner + .f-link__item {
    margin-left: 0;
  }
}
@media only screen and (max-width: 720px) {
  .f-link__item {
    display: none;
  }
}
.f-link__item + .f-link__item {
  margin-left: 40px;
}
@media only screen and (max-width: 1160px) {
  .f-link__item + .f-link__item {
    margin-top: 40px;
    margin-left: 4%;
  }
}
.f-link__item .heading {
  width: auto;
  height: auto;
  margin: 0;
  padding: 0 0 5px 0;
  color: #fff;
  border-bottom: 1px dotted #768686;
  font-size: 108%;
  line-height: 107%;
}
.f-link__item .heading:before {
  content: '';
  display: inline-block;
  width: 3px;
  height: 13px;
  margin-top: -2px;
  margin-right: 10px;
  background: #00a1a1;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  vertical-align: middle;
}
.f-link__item .link-list li + li {
  margin-top: 4px;
}
.f-link__item .link-list a {
  color: #fff;
}
.f-link__item .link-list li:before {
  color: #999999;
}

.f-link__body .f-link__bottom {
 width: 100% !important;
 text-align: right !important;
}

.f-link__body .f-link__bottom li {
  display: inline !important;
  float: none !important;
  margin: 10px 10px 0 10px !important;
}

.f-link__body .f-link__bottom li a {
}

.f-link__body .f-link__bottom li a img {
  width: 200px;
  height: auto;
}

.f-banner {
  width: 280px;
}
@media only screen and (max-width: 1160px) {
  .f-banner {
    display: block;
    width: 100%;
  }
}
@media only screen and (max-width: 720px) {
  .f-banner {
    display: block;
  }

  .f-link__body .f-link__bottom {
    text-align: center !important;
   }
   
  .f-link__body .f-link__bottom li {
    display: block !important;
    margin: 10px 0 !important;
  }
}

.f-banner ul {
  margin: 0;
  padding: 0;
}
@media only screen and (max-width: 1160px) {
  .f-banner ul {
    text-align: center;
  }
}
.f-banner li {
  margin: 0;
  padding: 0;
}
@media only screen and (max-width: 1160px) {
  .f-banner li {
    float: left;
    width: 32%;
  }
}
@media only screen and (max-width: 720px) {
  .f-banner li {
    float: none;
    width: 100%;
  }
}
.f-banner li:before {
  display: none;
}
.f-banner li + li {
  margin-top: 10px;
}
@media only screen and (max-width: 1160px) {
  .f-banner li + li {
    margin: 0 0 0 2%;
  }
}
@media only screen and (max-width: 720px) {
  .f-banner li + li {
    margin: 10px 0 0 0;
  }
}
.f-banner li:last-child {
  margin-top: 20px;
}
.f-banner li:last-child a:hover img {
  opacity: 0.7;
}
@media only screen and (max-width: 1160px) {
  .f-banner li:last-child {
    margin: 0 0 0 2%;
  }
  .f-banner li:last-child img {
    width: auto;
    height: auto;
  }
}
@media only screen and (max-width: 720px) {
  .f-banner li:last-child {
    margin: 20px 0 0 0;
  }
  .f-banner li:last-child img {
    width: auto;
    height: auto;
  }
}
.f-banner .btn {
  width: 100%;
  min-width: 1px;
  text-align: center;
}
.f-banner .btn:hover {
  background: #008787;
}

/*
l-footer__contents
***************************************************** */
.l-footer__contents {
  display: table;
  width: 1160px;
  margin: 0 auto;
}
@media only screen and (max-width: 1160px) {
  .l-footer__contents {
    width: 100%;
  }
}
@media only screen and (max-width: 720px) {
  .l-footer__contents {
    padding: 8px 0 6px;
  }
}

.l-footer__logo,
.l-footer__adress {
  display: table-cell;
}

.l-footer__logo {
  padding-left: 20px;
}
@media only screen and (max-width: 720px) {
  .l-footer__logo {
    display: none;
  }
}

.l-footer__adress {
  text-align: right;
  font-size: 86%;
  line-height: 167%;
  vertical-align: middle;
}
@media only screen and (max-width: 1160px) {
  .l-footer__adress {
    padding-right: 20px;
  }
}
@media only screen and (max-width: 720px) {
  .l-footer__adress {
    float: none;
    text-align: center;
  }
}
@media only screen and (max-width: 720px) {
  .l-footer__adress p {
    margin-top: 0;
  }
}

/*
btn
***************************************************** */
.btn {
  position: relative;
  display: inline-block;
  letter-spacing: normal;
  min-width: 280px;
  padding: 13px 30px 10px;
  font-size: 108%;
  line-height: 180%;
  text-align: left;
  vertical-align: middle;
  border-radius: 3px;
  text-align: center;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  text-decoration: none;
  box-sizing: border-box;
}

.btn-shadow {
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -ms-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
}

.btnLogin:before {
  content: '';
  display: inline-block;
  margin-top: -4px;
  margin-right: 9px;
  vertical-align: middle;
  width: 14px;
  height: 18px;
  background: url(i/icon_lock.png) 0 0 no-repeat;
}

.btnMail:before {
  content: '';
  display: inline-block;
  margin-top: -2px;
  margin-right: 9px;
  vertical-align: middle;
  width: 18px;
  height: 12px;
  background: url(i/icon_mail.png) 0 0 no-repeat;
}

.btnNoentory:before {
  content: '';
  display: inline-block;
  margin-top: -4px;
  margin-right: 9px;
  vertical-align: middle;
  width: 14px;
  height: 16px;
  background: url(i/icon_man.png) 0 0 no-repeat;
  background-size: 14px 16px;
}

/*
label
***************************************************** */
.label {
  display: inline-block;
  letter-spacing: normal;
  width: 140px;
  padding: 4px 0 2px;
  font-size: 86%;
  line-height: 100%;
  text-align: center;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
}

/*
btnList
***************************************************** */
.btnList {
  margin-left: -20px;
  margin-right: -20px;
  letter-spacing: -.35em;
}
@media only screen and (max-width: 720px) {
  .btnList {
    margin-left: -10px;
    margin-right: -10px;
  }
}
.btnList li {
  display: inline-block;
  letter-spacing: normal;
  margin: 0;
  padding: 0 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 720px) {
  .btnList li {
    width: 50%;
    padding: 0 10px;
  }
  .btnList li .btn {
    width: 100%;
    min-width: 1px;
  }
}
.btnList li:before {
  display: none;
}

/*
btn-link
***************************************************** */
.btn-link a,
.btn-link span {
  display: block;
  padding: 11px 15px 9px 30px;
  background: #fff;
  text-decoration: none;
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -ms-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  border-radius: 5px;
}
.btn-link a:before,
.btn-link span:before {
  color: #e6b800;
  margin: -2px 8px 0 -18px;
  font-size: 10px;
  line-height: 180%;
  vertical-align: middle;
}
.btn-link a:hover,
.btn-link span:hover {
  color: #222222;
  background: #dfe5e5;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
}

/*
btn-link
***************************************************** */
.addLink a {
  width: 100%;
  text-align: center;
  font-size: 100%;
  line-height: 186%;
  border: 2px solid #e6e6e6;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  -ms-border-radius: 0px;
  -o-border-radius: 0px;
  border-radius: 0px;
}
.addLink a:hover {
  color: #222222;
  background: #dfe5e5;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
}
.addLink a:before {
  margin-right: 10px;
  color: #00a1a1;
  font-size: 72%;
  line-height: 100%;
}

/*
detailLink
***************************************************** */
.detailLink .btn {
  min-width: auto;
  min-height: 1px;
  padding: 9px 15px 7px;
  font-size: 100%;
  line-height: 100%;
}
.detailLink .btn:after {
  display: none;
}
.detailLink .btn:hover {
  color: #222222;
  background: #dfe5e5;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
}
.detailLink .btn-arrow:before {
  margin-right: 10px;
  color: #e6b800;
  font-size: 86%;
  line-height: 100%;
}

/*
news-icon
***************************************************** */
.news-icon {
  display: inline-block;
  width: 125px;
  padding: 9px 0 7px;
  font-size: 100%;
  line-height: 100%;
  text-align: center;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.is-period {
  background: #cae2ad;
}

.is-end {
  padding: 8px 0 6px;
  color: #a60808;
  background: #fff;
  border: 1px solid #e6e6e6;
}

.is-up {
  background: #f5f0b8;
}

/*
btnLinkList
***************************************************** */
.btnLinkList {
  width: 1000px;
  margin: 0 auto;
}
@media only screen and (max-width: 1000px) {
  .btnLinkList {
    width: auto;
    padding: 0 10px;
  }
}
@media only screen and (max-width: 720px) {
  .btnLinkList .col + .col {
    margin-top: 10px;
  }
}
.btnLinkList .btnLinkList__item {
  display: table;
  width: 100%;
}
.btnLinkList .btn {
  display: table-cell;
  width: 100%;
  height: 45px;
  min-width: 1px;
  padding: 0;
  font-size: 115%;
  line-height: 125%;
}
.btnLinkList .btn:hover {
  color: #fff;
  background: #00a1a1;
}

/* icomoon
 * -------------------------- */
@font-face {
  font-family: 'icomoon';
  src: url("fonts/icomoon.eot?lacoze");
  src: url("fonts/icomoon.eot?lacoze#iefix") format("embedded-opentype"), url("fonts/icomoon.ttf?lacoze") format("truetype"), url("fonts/icomoon.woff?lacoze") format("woff"), url("fonts/icomoon.svg?lacoze#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}

.icon__00,
a[class^="icon__"]:before,
a[class*=" icon__"]:before,
[class^="icon__"]:before,
[class*=" icon__"]:before,
.icon-arrow-top:before,
.icon-arrow-bottom:before,
.icon-arrow-right:before,
.icon-arrow-left:before,
.icon-square:before,
.icon-circle:before,
.icon-check-mark:before,
.icon-close:before,
ul li:before,
.pagination__item.prev:before,
.pagination__item.next:after,
.l-navi__content > li > span:after,
.l-navi__content > li > .open:after,
.accordion__head:after,
.ui-button:before,
.l-footer__link li:before,
.gnavi li a:after,
.btn-link a:before,
.btn-arrow:before,
.addLink a:before,
.relatedText:before,
.bx-prev:before,
.bx-next:before {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  display: inline-block;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon__00:before {
  content: "\e905";
}

.icon__01:before {
  content: "\e906";
}

.icon__02:before {
  content: "\e907";
}

.icon__03:before {
  content: "\e908";
}

.icon__04:before {
  content: "\e909";
}

.icon__05:before {
  content: "\e90a";
}

.icon__06:before {
  content: "\e90b";
}

.icon__07:before {
  content: "\e90c";
}

.icon__08:before {
  content: "\e90d";
}

.icon-arrow-top:before,
.l-navi__content > li > .open:after {
  content: "\e900";
}

.icon-arrow-bottom:before,
.l-navi__content > li > span:after,
.accordion__head:after,
.addLink a:before {
  content: "\e901";
}

.icon-arrow-right:before,
.link-list li:before,
.pagination__item.next:after,
.l-footer__link li:before,
.btn-link a:before,
.btn-arrow:before,
.relatedText:before,
.bx-next:before {
  content: "\e902";
}

.icon-arrow-left:before,
.pagination__item.prev:before,
.bx-prev:before {
  content: "\e903";
}

.icon-square:before {
  content: "\e904";
}

.icon-circle:before,
ul li:before {
  content: "\e615";
}

.icon-check-mark:before {
  content: "\e90e";
}

.icon-close:before,
.ui-button:before {
  content: "\e917";
}

@media only screen and (max-width: 1000px) {
  .gnavi li a.active:after,
  .gnavi li a:after {
    content: "\e902";
  }
}

/*
TopYoutube
***************************************************** */
.top #top-movie {
  width: 100%;
  background-color: #000000;
}

.top #top-movie #movie-frame {
  margin: 0 auto;
}

.top #top-movie #movie-frame,
.top #top-movie iframe {
  width: 560px;
  height: 315px;
}

@media only screen and (max-width: 720px) {
  .top #top-movie #movie-frame,
  .top #top-movie iframe {
    width: 100%;
    height: 180px;
  }
}

/* padding
----------------------------------------------------- */

/* top */
body .p-t0 {
  padding-top: 0;
}

.new_mark {
  margin-left: 20px;
  padding: 4px 5px 2px;
  color: #fff;
  background: #d93616;
  width: 40px;
  font-size: 86%;
  line-height: 100%;
  text-align: center;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
}

/* athlete_lists */
.athlete_list {
  text-align: center;
}

.athlete_list p {
  border-bottom: 1px solid #999999;
}

.athlete_list p:first-child {
  border: none;
}

.athlete_list .athlete_name {
  line-height: 100% !important;
}

.athlete_list2 {
  text-align: center;
}

.athlete_list2 p {
  border-bottom: 1px solid #999999;
}

.athlete_list2 p:first-child {
  border: none;
}

.athlete_list2 .athlete_name {
  line-height: 100% !important;
  border-bottom: 1px solid #999999 !important;
}

.athlete_list2 .cate01 {
  background-color: #1b3636;
  color: #ffffff;
}

.athlete_list2 .cate02 {
  background-color: #00a1a1;
  color: #ffffff;
}


/* accordion */
.accordion-hidden {
  display: none;
}

.accordion-open {
  position: relative;
  padding-right: 50px;
}

.accordion-open label {
  cursor: pointer;
}

.accordion-open label::before,
.accordion-open label::after {
  content: '';
  width: 20px;
  height: 3px;
  background: #000;
  position: absolute;
  top: 35%;
  right: 20px;
  transform: translateY(-50%);
}

.accordion-open label::after {
  transform: translateY(-50%) rotate(90deg);
}

.accordion-hidden:checked+.accordion-open label:after {
  transform: translateY(-50%) rotate(0);
}

.accordion-hidden:checked+.accordion-open label+.accordion-inner {
  height: auto;
  opacity: 1;
  padding: 10px;
}

.accordion-box {
  display: block;
  height: 0;
  overflow: hidden;
  margin-top: 0;
  padding: 0;
  opacity: 0;
  transition: 1s ease-out;
}

.accordion-hidden:checked+.accordion-open+.accordion-box {
  height: auto;
  opacity: 1;
  margin-top: 20px;
  padding: 10px 0;
}