@charset 'UTF-8';
/* ------------------------------
　　wakabato Version
------------------------------ */
/* ------------------------------
　　ベース
------------------------------ */
body {
  background: #FFF;
  color: #333;
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  font-size: 14px;
}
.wrap {
  overflow: hidden;
}
/* リンクの設定 */
a {
  border: none;
  color: #006DD9;
  text-decoration: none;
}
a:visited {
  color: #7F5AD7;
  text-decoration: none;
}
a:active {
  color: #006DD9;
  text-decoration: none;
}
a:hover {
  color: #006DD9;
  text-decoration: underline;
}
.oswald {
  font-family: 'Oswald', sans-serif;
}
/* コンテナー */
.acms-container {
  /*max-width: 1170px;*/
  max-width: 1100px;
}
.acms-container2 {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
}
@media (min-width: 1024px) {
  .module-section.top_bg {
    background-color: #eef5fc;
    background-image: url(../images/slide_bg.jpg);
    max-height: 501px;
    /*margin-bottom: 0;*/
  }
}
.acms-container .acms-container {
  padding: 0;
}
.narrow-container {
  margin: 0 auto;
  /*max-width: 960px;*/
  max-width: 940px;
  padding-left: 20px;
  padding-right: 20px;
  /*border: 1px solid #cccccc;*/
}
/*背景色2*/
.container_bg {
    background: #fff5cc url(../images/bg_contents02.png) center 0;
    padding-top: 5em;
    padding-bottom: 2em; 
}
.container_gr {
  background: #f4f3f3;
    padding-top: 3em;
    padding-bottom: 2em;   
}

@media (max-width: 767px) {
.container_bg {
    padding-top: 2em;
    padding-bottom: 1em; 
}
.container_gr {
    padding-top: 0.5em;
    padding-bottom: 0.5em;   
}   
}

@media (max-width: 1170px) {
  .acms-container {
    padding-left: 20px;
    padding-right: 20px;
  }
  .sp-container {
    padding-right: 20px;
    padding-left: 20px;
  }
  .acms-grid .sp-container {
    padding-right: 20px;
    padding-left: 20px;
  }
  .sp-container .sp-container {
    padding: 0;
  }
  .sp-container .acms-container .sp-container {
    padding: 0;
  }
}
/* ------------------------------
　　各モジュール
------------------------------ */
.module-section {
  margin: 0 0 30px 0;
}
/* タイトル */
.module-header {
  position: relative;
  margin: 0;
  padding: 10px 0;
  color: #333;
  border-bottom: none;
}
/* ------------------------------
　　ヘッダーのページタイトル
------------------------------ */
.page-category-wrapper {
  background: #417705 url(../images/category_bg.png) no-repeat;
}
.page-title-wrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 100px;
  color: #FFF;
  background: url(../images/cate_image00.png) no-repeat right;
  background-position: right 20% bottom 0px;
}
.page-title-filter {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(0, 0, 0, 0);
}
.page-title-inner {
  display: table-cell;
  position: relative;
  padding: 15px 10px;
  vertical-align: middle;
}
.page-title-inner .page-title {
  margin: 0 0 10px 0;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.2;
  text-shadow: black 0 0 2px;
}
.page-title a {
  color: #FFF;
}
.page-description {
  font-family: 'Gugi', cursive;
  margin: 10px 0;
  font-size: 16px;
  line-height: 1.5;
  text-shadow: black 0 0 2px;
}
.module-heading {
  margin: 0;
  /*font-size: 22px;*/
  font-weight: normal;
}
@media (min-width: 768px) {
  .page-title-wrapper {
    /*height: 270px;*/
    height: 150px;
  }
  .entry {
    margin: 0 0 25px;
    border-bottom: 1px solid #e5e5e5;
  }
}
/* ------------------------------
　　グローバルメニュー
------------------------------ */
.nav-container {
  background: #ededed;
  border-bottom: 1px solid #cccccc;
}
.nav-container > .navbar > ul {
  float: none;
  display: table;
  width: 100%;
  table-layout: fixed;
  border-right: 2px solid #ffffff;
  margin: 0px auto;
}
@media screen and (min-width: 1100px) {
  .nav-container > .navbar > ul {
    width: 1100px;
  }
}
.nav-container .navbar li {
  float: none;
  display: table-cell;
  border-right: 1px solid #cccccc;
  border-left: 2px solid #ffffff;
}
.nav-container .navbar li:last-child {
  border-right: none;
}
.nav-container .navbar ul li a {
  display: block;
  padding: 10px;
  font-size: 16px;
  color: #666666;
  letter-spacing: normal;
}
.nav-container .navbar li a:hover {
  background-color: #1daf39;
  color: #fff;
}
.nav-container .navbar li.stay a {
  background-color: #1c7e30;
  color: #fff;
}
/* 下線削除 */
.navbar li a {
  border-top: 0;
}
.navbar li:hover a {
  border-bottom: 0;
}
.navbar li a {
  border-bottom: 0;
  transition: none;
}
.navbar li.stay a {
  background-color: #1c7e30;
  border-bottom: 0;
}
/* 二階層目 */
.nav-container .navbar li ul {
  min-width: 190px;
}
.nav-container .navbar li li {
  display: block;
  float: none;
  text-align: left;
  border-top: 1px solid #4bad68;
  border-right: 0;
  border-bottom: 0;
  border-left: 0;
}
.nav-container .navbar li li:first-child {
  border: 0;
}
.nav-container .navbar li li a {
  margin: 0;
  padding: 10px 15px;
  background: #1daf39;
  color: #FFF;
  border: 0;
}
.nav-container .navbar li li a:hover {
  color: #FFF;
  border: 0;
  background-color: #21CC42; /*background: #1daf39;*/
}
/*-------------------
トップリード　見出し
-------------------*/
/*背景ベースエリア*/
.top-container .container_bg h2, .top-container .container_gr h2, .top-container .narrow-container h2 {
  font-size: 20px;
  color: #3c1e00;
  text-align: center;
  padding-top: 25px;
}
@media screen and (min-width: 768px) {
  .top-container .container_bg h2, .top-container .container_gr h2, .top-container .narrow-container h2 {
    font-size: 30px;
    padding-bottom: 15px;
  }
}
.top-container .container_bg .page-header {
  border-bottom-style: none;
}
.top-container .container_bg p {
  font-size: 15px;
  color: #330000;
  padding-left: 0.8em;
}
/* エントリーのスタイル */
.entry-column {
  color: #454545;
}
.entry-column em {
  font-style: normal;
  background: linear-gradient(transparent 70%, #ffe391 70%);
}
.entry-column strong {
  /*color: #444444;*/
}
p.entryInfo {
  padding-left: 10px;
  margin: 5px 0 30px 0;
}
/*-------------------
お試しレッスン
-------------------*/
/* ------------------------------
　　ヘッダー
------------------------------ */
.head-wrapper {
  border-top: 5px solid #0F5F15;
  /*background: url(../images/headwrapper_brick.png) repeat-x top left;*/
}
/* ------------------------------
　　見出し
------------------------------ */
.entry-column h2 {
  position: relative;
  background: #ffd5ab;
  box-shadow: 0px 0px 0px 5px #ffd5ab;
  border: dashed 2px #f7bf87;
  padding: 0.6em 0.8em;
  /*color: #454545;*/
  color: #663300;
}
.entry-column h2:after {
  position: absolute;
  content: '';
  left: -7px;
  top: -7px;
  border-width: 0 0 15px 15px;
  border-style: solid;
  border-color: #fff #fff #ff9933;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}
.entry-column h3 {
  margin: 0 10px 20px 10px;
  padding: 8px 10px;
  font-size: 16px;
  color: #336600;
  background: #f2ffeb;
}
.entry-column h4 {
  margin: 0 10px 20px 10px;
  font-size: 16px;
  color: #0A6422;
}
.entry-column p.waku {
  border: 1px dashed #336600;
  padding: 10px;
}
.entry-column p.att_waku {
  border: 1px solid #ff0000;
  background-color: #ffebeb;
  padding: 10px 20px;
  font-size: 15px;
  color: #ff0000;
}
/* 本文 */
.entry-column p {
  margin-top: 0;
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 1.7;
}
/*
#taikai .entry-column p {
	margin-top: 0;
	margin-bottom: 10px;
	font-size: 16px;
	line-height: 1.7;
}
*/
/* ------------------------------
　　top 見出し
------------------------------ */
.container_bg .entry-column h3 {
  color: #fff; /*文字色*/
  font-size: 20px;
  padding: 0.4em 0.8em; /*文字周りの余白*/
  line-height: 1.4; /*行高*/
  background: #fe8331; /*背景色*/
  vertical-align: middle; /*上下中央*/
  border-radius: 25px 0px 0px 25px; /*左側の角を丸く*/
}
.container_bg .entry-column h3:before {
  content: '●';
  color: white;
  margin-right: 12px;
}
/*-------------------
見出し2色アンダーライン
-------------------*/
.acms-page-header.page-header {
  border-bottom: none;
}
.page-header .entry-title {
  color: #444;
  padding: 5px 10px 15px 10px;
  border-left: 0;
  border-bottom: solid 2px #ccc;
  position: relative;
  font-weight: normal;
  margin-bottom: 1.2em;
}
.page-header .entry-title:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: 6px solid #318B11;
  bottom: -4px;
  left: 0px;
  width: 40%;
}
.entry-column ol li {
  margin-bottom: 1em;
}
/*リストのマーク小さく*/
.entry-column ul li {
  list-style-type: none;
  margin-right: 10px;
}
.entry-column ul li:before {
  content: '';
  width: 6px;
  height: 6px;
  display: inline-block;
  border-radius: 100%;
  background-color: #336600;
  position: relative;
  left: -15px;
  top: -3px;
}
/* 色付きボタン */
.entry-column p.entry-btn-taikai a {
  background: #FF9A00;
  font-weight: bold;
  color: #FFF;
  line-height: 1.2;
  border: 0;
  display: inline-block;
  padding: 10px 20px;
  border-radius: 3px;
}
.entry-column p.entry-btn-taikai a:hover, .entry-column p.entry-btn-taikai a:visited {
  color: #FFF;
  text-decoration: none;
}
.entry-column p.entry-btn-taikai a:focus, .entry-column p.entry-btn-taikai a:active {
  color: #FFF;
  box-shadow: inset 0 1px 3px 0 rgba(0, 0, 0, .5);
}
.entry-column p.entry-btn-taikai a:hover {
  background-color: #FF9A00;
  background-image: linear-gradient(to bottom, #FDD87D, #FF9A00);
  color: #FFF;
}
.entry-column p.entry-btn-taikai a:active, .entry-column p.entry-btn-taikai a:focus {
  background: #EDA800;
}
/*エントリーボタン*/
.entry-column p.entry-btn-attention a {
  font-weight: 700;
  line-height: 1.2;
  display: inline-block;
  padding: 8px 15px;
  color: #fff;
  border: 0;
  border-radius: 3px;
  background: #ff650a;
}
.entry-column p.entry-btn-attention a:hover {
  color: #fff;
  background-color: #ff650a;
  background-image: linear-gradient(180deg, #ffa024, #ff650a);
}
/* 大会の詳細 */
#taikai h1.entry-title {
  font-size: 1.6em;
}
.taikai_box h2 {
  /* margin-top: 1em;*/
}
.taikai_box h3 {
  margin-top: 1.1em;
  margin-bottom: 0.5em;
  border: 1px solid #b0dcb0;
}
.taikai_box p {
  padding: 0 0.5em;
  margin-bottom: 1.5em;
}
.taikai_box p.mb0, .taikai_list p.mb0 {
  margin-bottom: 0px;
}
.taikai_box .font_big {
  font-size: 18px;
}
.taikai_box .att {
  font-size: 14px;
  color: #DD2604;
}
@media (min-width: 1024px) {
  .entry-column {
    margin: 0 20px 30px;
  }
  .taikai_box {
    /*border: 1px solid #e5e5e5;*/
    margin: 0 2%;
  }
  .result_box {
    margin: 0 2%;
    /*border: 1px solid #e5e5e5;*/
  }
  .event_box {
    margin: 0 2% 30px;
    padding-top: 15px;
    border: medium double #A7CFA7;
  }
  .event_box h4 {
    font-size: 16px;
    margin: 10px;
  }
}
/*文字の装飾*/
.color_red {
  color: #F31942; /*font-weight: bold; */
}
.color_green {
  color: #0F7427;
}
.entry-column .font_big {
  font-size: 20px;
}
.font_s {
  font-size: 15px;
}
/* ------------------------------
　　スライダー
------------------------------ */
/*スライダー固定キャッチコピー*/
.kotei {
  position: relative;
  width: 100%;
  display: block;
}
.slider-copy-img {
  position: absolute;
  display: block;
  right: 0px;
  bottom: -6px;
  margin-left: 5%;
}
.slider-copy-img img:hover {
  opacity: .85;
}
.img-banner img:hover {
  transition: opacity .25s linear;
  opacity: .8;
}
@media (min-width: 1024px) {
  #kekka .senior-title {
    margin-top: 80px;
  }
}
@media (max-width: 767px) {
  /* 767px（タブレット用）以下の記述 */
  .kotei_sp {
    margin: 0px;
    /*border: solid 1px #E83B3E;*/
  }
  .page-description {
    display: none;
  }
  .topicpath-item {
    display: none;
  }
  #result .acms-admin-table-bordered tbody td::before {
    content: attr(label);
    float: left;
    clear: both;
  }
}
/*マージン パディング調整　*/
@media (min-width: 1024px) {
  .mb0 {
    margin-bottom: 0px !important;
  }
  .mb5 {
    margin-bottom: 5px;
  }
  .mb10 {
    margin-bottom: 10px;
  }
  .mb80 {
    margin-bottom: 80px;
  }
  .form_inner {
    padding: 0 50px;
  }
  .pt10 {
    padding-top: 10px;
  }
  .pt40 {
    padding-top: 40px;
  }
  .pb20 {
    padding-bottom: 20px;
  }
  .pb60 {
    padding-bottom: 60px;
  }
}
/* フッター内会社情報 */
.company-name {
  margin: 0 0 5px 0;
  font-size: 18px;
}
.site-header {
  position: fixed;
  z-index: 100000;
  top: 0;
  right: 0;
  box-sizing: border-box;
  width: 100%;
  padding: 0 5px;
  /*border-top: 4px solid #2A6604;*/
  border-top: 4px solid #fff;
  border-bottom: 1px solid #ccc;
  background: #fff;
}
@media (max-width: 1023px) {
  .offcanvas-nav a {
    display: block;
    margin: -10px;
    padding: 10px;
    color: #e8ede3;
  }
}
/* テーブル */
.entry-column table {
  width: 100%;
  margin: 0 0 30px 0;
  border-collapse: collapse;
}
.entry-column th, .entry-column td {
  display: block;
  padding: 5px 10px;
  text-align: left;
  font-size: 16px;
  line-height: 1.5;
  color: #333;
  border-top: 1px solid #DFDFDF;
  vertical-align: top;
}
.entry-column .acms-table-responsive {
  margin-bottom: 30px;
}
.entry-column .acms-table-responsive th, .entry-column .acms-table-responsive td {
  display: table-cell;
  white-space: nowrap;
}
.entry-column .acms-table-responsive table {
  margin: 0;
}
.entry-column th {
  background: #F5F5F5;
}
.entry-column tr:last-child {
  border-bottom: #DFDFDF 1px solid;
}
.entry-column .tbl01 th {
  /*background: #fff;*/
}
.entry-column .tbl01 td {
  text-align: right;
}
/*ジュニアプレーヤーズ 横table */
.entry-column table.tbl02 {
  width: 80%;
}
.entry-column .tbl02 th {
  padding: 10px 20px;
  background-color: #E0DD85;
}
.entry-column .tbl02 td {
  padding: 10px 20px;
}
.entry-column .tbl02 th, .entry-column .tbl02 td {
  display: table-cell;
}
/* エントリーフッター */
.entry-footer {
  margin: 0 0 20px 0;
  padding: 0px;
  /*background: #F5F5F5;*/
  background: #fff;
}

/*大会結果 ボーダー*/
#result .acms-admin-table-bordered td, #result .acms-admin-table-bordered th {
  border: 1px solid #abd58c;
  padding: 10px 15px;
}
#result .acms-admin-table-bordered th {
  background-color: #ECF4BD;
  font-weight: normal;
}
#result .acms-admin-table-bordered th.text-center {
  text-align: center;
}
#result .acms-admin-table-bordered th .text-right {
  text-align: right;
  color: #24C811;
  border: 1px solid #FF0000;
  display: inline-block;
}

#result .entry-column h3 {
  background: none;
  margin: 0;
}
#result .entry-column h4 {
  text-align: center;
  margin: 0 10px 20px 10px;
  padding: 5px 10px;
  font-size: 16px;
  color: #336600;
  background: #f2ffeb;
}
@media screen and (min-width: 768px) {
  .entry-column th, .entry-column td {
    display: table-cell;
    padding: 15px 20px;
    text-align: left;
    font-size: 15px;
    border-top: 1px solid #DFDFDF;
  }
  .entry-column tr:nth-child(odd) {
    background-color: transparent;
  }
}
.foot-wrapper {
  padding: 20px 0 30px;
  background-color: #0F5F15;
}
/* オフキャンバス */
.close-btn {
  display: none;
  overflow: hidden;
  width: 100%;
  padding: 0;
  white-space: nowrap;
  text-indent: 100%;
  opacity: 1;
  border: 0;
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
.js-acms-offcanvas-open #offcanvas .close-btn {
  display: block;
  opacity: .7;
}
.js-acms-offcanvas-open #offcanvas .close-btn:focus {
  overflow: initial;
  white-space: initial;
  text-indent: initial;
  color: #fff;
}
@media (max-width: 1023px) {
  #nav {
    box-sizing: border-box;
    padding: 10px 15px 100px 15px;
  }
  .offcanvas-nav {
    /* グローバルナビゲーション */
    margin: 0 0 20px 0;
  }
  .offcanvas-nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .offcanvas-nav li {
    font-size: 16px;
    display: block;
    padding: 10px;
    border-top: 1px solid #ccc;
  }
  .offcanvas-nav li.navbarBtn {
    border: 0;
  }
  .offcanvas-nav li.stay {
    background: #555;
  }
  .no-js .offcanvas-nav li.stay {
    background: #e5e5e5;
  }
  .offcanvas-nav li:first-child {
    border: 0;
  }
  .offcanvas-nav li ul {
    /*display: none;*/
    display: block;
  }
  .offcanvas-nav a {
    display: block;
    margin: -10px;
    padding: 10px;
    color: #e8ede3;
  }
  .offcanvas-nav a:hover {
    text-decoration: none;
  }
  .offcanvas-nav a.btn-attention {
    font-weight: normal;
    border-top: 0;
    border-radius: 0;
  }
  .offcanvas-nav a.btn-attention:hover {
    background: #ff9a00;
  }
  .no-js .offcanvas-nav a {
    color: #333;
  }
  /* オフキャンバス内のパーツ */
  .offcanvas-bar {
    display: none;
    padding: 10px 15px 100px 15px;
  }
  .js-acms-offcanvas-active .offcanvas-bar {
    background: #333;
  }
  .offcanvas-bar .module-header {
    color: #fff;
    border-bottom: 2px solid #fff;
  }
  .no-js .offcanvas-bar .module-header {
    /* IE8対応 */
    color: #333;
    border-bottom: 2px solid #333;
  }
  .offcanvas-bar .side-list-link {
    color: #fff;
  }
  .no-js .offcanvas-bar .side-list-link {
    /* IE8対応 */
    color: #333;
  }
  .offcanvas-bar .side-list-link:hover, .offcanvas-bar .side-list-link:visited, .offcanvas-bar .side-list-link:focus, .offcanvas-bar .side-list-link:active {
    color: #fff;
    background: 0;
  }
  .no-js .offcanvas-bar .side-list-link:hover, .no-js .offcanvas-bar .side-list-link:visited, .no-js .offcanvas-bar .side-list-link:focus, .no-js .offcanvas-bar .side-list-link:active {
    /* IE8対応 */
    color: #333;
  }
  .offcanvas-bar .pickup-title {
    font-size: 16px;
    margin: 0;
    color: #fff;
  }
  .offcanvas-bar .pickup-title a {
    color: inherit;
  }
  .offcanvas-bar .btn-search {
    border: 1px solid #666;
    background: #999;
  }
  .offcanvas-bar .sns-list {
    margin: 0 -5px;
  }
}
/*ラベル*/
.acms-admin-label,
.acms-label {
  background-color: #999;
    color: #FFF;
    border-radius: 0px;
    padding: 3px 7px;
}

/*種目ラベル*/
/*.taikai .acms-label{
	width: 90px;
	display: table-cell;
	text-align: center;
}*/
.label-r_mix, .label-kmixd {
  background-color: #3b8d27;
}
.label-r_wd, .label-kwd {
  background-color: #ff3333;
}
.label-r_ws, .label-kws {
  background-color: #ED4460;
}
.label-r_md, .label-kmd {
  background-color: #339cff;
}
.label-r_ms, .label-kms {
  background-color: #336cff;
}
.label-r_team, .label-kteam {
  background-color: #6f00b4;
}
.label-r_jr, .label-kjr {
  background-color: #75bd33;
}

.label-kevent {
  background-color: #FF6E00;
}
.label-campaign {
  background-color: #FF6E00;
}

.acms-label.label-important {
  background-color: #fb5656;
  font-size: 12px;
  padding: 3px 15px;
  vertical-align: baseline;
  border-radius: 3px;
}
.acms-label.label-info {
  background-color: #8c8989;
  border-radius: 3px;
  vertical-align: baseline;
}
.acms-label-warning {
  background: #D0A700;
  border-radius: 3px;
}
.acms-label.label-campaign {
  background-color: #FF6E00;
  border-radius: 3px;
}

.label-campaign.entry-category a {
    color: #fff;
}


/* ------------------------------
　　文字の装飾
------------------------------ */
.entry-column p.font_s {
  font-size: 15px;
}
.entry-column .notes {
  font-size: 14px;
  /*color: #F30757;*/
}
.photo-title {
  margin: 5px 0 0;
  font-size: 15px;
}

.photo-title-date {
  margin: 0; 
  font-size: 14px;
}

/* ------------------------------
　　お問い合わせ
------------------------------ */
.contact-box p.message {
  margin: 0 0 35px 0;
  padding: 0 10px;
  font-weight: bold;
  color: #C41134;
}
.contact-box p.contact-no {
  margin: 0;
  font-size: 30px;
  font-weight: bold;
  color: #333;
}
.contact-box p.contact-no a {
  color: inherit;
}
.contact-box p.error-text {
  /* エラー文 */
  margin: 5px 0 0 0;
  color: #C41134;
}
.contact-box table.contact-form {
  border-right: 1px solid #E5E5E5;
  border-bottom: 1px solid #E5E5E5;
  border-left: 1px solid #E5E5E5;
}
.contact-box table.contact-form tr {
  background-color: #fff;
}
@media screen and (min-width: 480px) {
  .contact-box th, .contact-box td {
    display: table-cell;
  }
}
@media screen and (min-width: 768px) {
  .contact-box th {
    width: 260px;
  }
}
.label-required {
  font-weight: normal;
}
/* CKEditor */
.marker {
  background-color: Yellow;
}
/*.tbl_style2 */
table.tbl_style2 {
  /*border: 1px solid #ccc;*/
  border: 1px solid #cfddc3;
  border-collapse: collapse;
  margin-bottom: 30px;
  padding: 0;
  width: 100%;
  table-layout: fixed;
}
table.tbl_style2 tr {
  background-color: #f9fff4;;
  border: 1px solid #cfddc3;
  padding: .35em;
}
table.tbl_style2 th, table.tbl_style2 td {
  padding: 0.5em;
  text-align: center;
}
table.tbl_style2 th {
  text-transform: uppercase;
  background-color: #f9fff4;;
}
@media screen and (max-width: 767px) {
  table.tbl_style2 {
    border: 0;
  }
  table.tbl_style2 thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  table.tbl_style2 tr {
    border-bottom: 3px solid #cfddc3;
    display: block;
    margin-bottom: 0.5em;
  }
  table.tbl_style2 td {
    border-bottom: 1px solid #cfddc3;
    display: block;
    text-align: right;
  }
  table.tbl_style2 td::before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
  }
  table.tbl_style2 td:last-child {
    border-bottom: 0;
  }
}
/*.tbl_style3 */
table.tbl_style3 {
  width: 100%;
  border-right: #cfddc3 solid 1px;
  border-collapse: collapse;
  margin: 0 0 30px 0;
}
table.tbl_style3 thead th {
  background: #f9fff4;;
  text-align: center;
  padding: 10px 15px;
  border-left: #cfddc3 solid 1px;
  border-right: #cfddc3 solid 1px;
  border-bottom: #cfddc3 solid 1px;
}
table.tbl_style3 thead th:last-child {
  border-right: #cfddc3 solid 1px;
}
table.tbl_style3 tbody th {
  background: #f9fff4;;
  padding: 10px 15px;
  border-left: #cfddc3 solid 1px;
  border-bottom: #cfddc3 solid 1px;
  vertical-align: top;
}
table.tbl_style3 tbody tr:last-child th {
  border-bottom: #cfddc3 solid 1px;
}
table.tbl_style3 tbody td {
  background: #FFF;
  padding: 10px 15px;
  text-align: center;
  border-left: #cfddc3 solid 1px;
  border-bottom: #cfddc3 solid 1px;
  vertical-align: top;
}
table.tbl_style3 tbody td p {
  margin-bottom: 0px;
}
@media screen and (max-width: 767px) {
  table.tbl_style3 thead {
    display: none;
  }
  table.tbl_style3 tbody th {
    display: block;
  }
  table.tbl_style3 tbody td {
    display: block;
  }
  table.tbl_style3 tbody td::before {
    content: attr(label);
    float: left;
    clear: both;
    font-weight: bold;
  }
  table.tbl_style3 tbody td p {
    padding-left: 6em;
  }
}
/*.tbl_style4 */
/*table.tbl_style4 {
  border: 1px solid #cfddc3;
  border-collapse: collapse;
  margin-bottom: 30px;
  padding: 0;
  width: 100%;
}*/
table.tbl_style4 tr {
  background-color: #f9fff4;;
  border: 2px solid #cfddc3;
}

table.tbl_style4 tr:last-child {
  border-bottom: 2px solid #cfddc3;
}

table.tbl_style4 th, table.tbl_style4 td {
  padding: 0.5em;
}
table.tbl_style4 th {
  text-align: center;
  background-color: #f9fff4;;
  font-weight: normal;
}
@media screen and (max-width: 767px) {
  table.tbl_style4 {
    border: none;
  }
  table.tbl_style4 thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  table.tbl_style4 tr {
    border: 4px solid #cfddc3;
    display: block;
    margin-bottom: 2em;
  }
  table.tbl_style4 td {
    border-bottom: 1px solid #cfddc3;
    display: block;
    text-align: left;
  }
  table.tbl_style4 td::before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
  }
  table.tbl_style4 td:last-child {
    border-bottom: 0;
  }
}
/* 色付きボタン */
.entry-column p.entry-btn-taikai {
  margin: 0px;
}
.entry-column p.entry-btn-taikai a {
  font-weight: bold;
  line-height: 1.2;
  padding: 20px 15px;
  color: #fff;
  border: 0;
  border-radius: 5px;
  background-color: #336600;
}
.entry-column p.entry-btn-taikai a:hover,
.entry-column p.entry-btn-taikai a:visited {
  text-decoration: none;
  color: #fff;
}
.entry-column p.entry-btn-taikai a:focus,
.entry-column p.entry-btn-taikai a:active {
  color: #fff;
  box-shadow: inset 0 1px 3px 0 rgba(0, 0, 0, .5);
}
.entry-column p.entry-btn-taikai a:hover {
  color: #fff;
  background: #336600;
  background-image: linear-gradient(to bottom, #339900, #336600);
}
.entry-column p.entry-btn-taikai a:active, .entry-column p.entry-btn-taikai a:focus {
  background: #339900;
}
.btn-taikai {
  box-sizing: border-box;
  width: 100%;
  text-align: center;
}
/*中央ボタン大*/
.entry-column p.entry-btn-form {
  text-align: center;
}
.entry-column p.entry-btn-form a {
  font-weight: bold;
  line-height: 1.2;
  font-size: 18px;
  display: inline-block;
  padding: 20px 30px;
  color: #fff;
  border: 0;
  border-radius: 5px;
  background-color: #4A8312;
  box-sizing: border-box;
}
.entry-column p.entry-btn-form a:hover, .entry-column p.entry-btn-form a:visited {
  text-decoration: none;
  color: #fff;
}
.entry-column p.entry-btn-form a:focus, .entry-column p.entry-btn-form a:active {
  color: #fff;
  box-shadow: inset 0 1px 3px 0 rgba(0, 0, 0, .5);
}
.entry-column p.entry-btn-form a:hover {
  color: #fff;
  background: #4A8312;
  background-image: linear-gradient(to bottom, #28A614, #4A8312);
}
.entry-column p.entry-btn-form a:active, .entry-column p.entry-btn-form a:focus {
  background-color: #28A614;
}
.nav-menu-action-item {
  font-size: 20px;
  display: table-cell;
  width: 40px;
  height: 40px;
  text-align: center;
  vertical-align: middle;
}
/*アコーディオン型のメニュー*/
.ui-accordion .ui-accordion-header {
  cursor: pointer;
  margin-top: 1px;
  position: relative;
}
.ui-corner-all {
  -moz-border-radius: 4px 4px 4px 4px;
}
.contact-box .ui-accordion .ui-accordion-content {
  padding: 1em 0px 0px 0px;
}
.notice-box {
  border: solid #008080;
  background-color: #ffffcc;
  margin: 0 1em 2em;
  padding: 1em 1em 0 1em;
}
.headline-dat {
  padding-right: 10px;
}
@media screen and (max-width: 767px) {
  .footer_map {
    display: none;
  }
  .copyright {
    border-top: solid 1px #0b4f10;
    padding-top: 10px;
    margin: 0 2%;
  }
  .copyright-text {
    font-size: 10px;
  }
}
/*重要なお知らせ*/
.top-container .narrow-container .hot_news h2 {
  font-size: 24px;
  color: #E46567;
  padding-top: 2em;
}
.hot_news .acms-list-group-item {
  background-color: #ffebeb;
  padding-left: 15px;
  padding-right: 5px;
}
.hot_news .acms-list-group-item a {
  color: #dc3838;
}

/*banner*/
.bnr_box .module-section {
  margin: 0 0 10px 0;
  padding-top: 20px;
}
.news ul.headline {
  margin-bottom: 80px;
}

/*taikai_faq*/
.t_faq .entry-column h2 {
    position: relative;
      box-shadow: none;
    border: solid 2px #88ceb8;
    padding: 0.8em 0.8em 0.8em 2.4em;
    color: #663300;
	border-radius: 7px;
	background: url(../images/ico_question.png) no-repeat left top #fcfff3;
	background-size: 45px 45px;
    margin-bottom: 10px;
    line-height: 1.4;
}

.t_faq .entry-column h2:after {
    content: none;
}

.t_faq .entry-column p {
    margin-bottom: 40px;

}
.t_faq .entry-column p:first-letter {
    font-size: 1.6em;
    color: #e11111;
    font-weight: bold;
    margin-right: 10px; 
}

/*insta*/
.sns-list {
  margin: 0 -5px 30px 0px;
  padding: 0;
  list-style: none;
}

.icon-insta{
  display: flex;
    width: 30px;
    height: 30px; 
  background-image: url("../images/insta_icon.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-insta2{
  display: flex;
    width: 30px;
    height: 30px; 
  background-image: url("../images/insta_icon2.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.company-about {
  margin-bottom: 20px;
    line-height: 1.5;
}

.lesp {
    letter-spacing: .08em;
    }

.copyright-text {
    font-size: 12px;
    letter-spacing: .06em;
}

@media (max-width: 767px) {
.company-detail {
 font-size: 13px;
    }
}

/* ------------------------------
　　space
------------------------------ */

.section-space {
  padding: 80px 0;
}
.section-space2 {
  padding: 40px 0;
}
.section-space3 {
  padding: 20px 0;
}

.banner-img-center {
  margin: 0 auto;
}

/* ------------------------------
　　キャンペーン見出し
------------------------------ */
.campaign-box {
  border: solid 1px #eee;
    padding: 1em 0 0.5em;
    margin-bottom: 2em;
}

.entry-column h3.special {
  position: relative;
  padding: 0.3em 1em;
  border-top: solid 2px #5a8530;
  border-bottom: solid 2px #5a8530;
  font-size: 24px;
}

.entry-column h3.special span {
  font-size: 20px;
}

.entry-column h3.special:before,
.entry-column h3.special:after{
  content: '';
  position: absolute;
  top: -7px;
  width: 2px;
  height: -webkit-calc(100% + 14px);
  height: calc(100% + 14px);
  background-color: #5a8530;
}
.entry-column h3.special:before {
  left: 7px;
}
.entry-column h3.special:after {
right: 7px;
}

.campaign-box p {
    margin-left: 3em;
}
.campaign-box p.special-text {
  font-size: 18px;
    margin-left: 3em;
    margin-bottom: 0.5em;
    font-weight: bold;
}
.campaign-box p span{
    font-size: 24px;
    color: #f04705;
}

.entry-column p.text-catchcopy {
     position: relative;
        font-weight: bold;
    font-size: 28px;
    color: #0A6422;
    text-align: center;
    padding-bottom: 8px;
}

.entry-column p.text-catchcopy:after {
    content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 7px;
  background: -webkit-repeating-linear-gradient(-45deg, #6ad1c8, #6ad1c8 2px, #fff 2px, #fff 4px);
  background: repeating-linear-gradient(-45deg, #6ad1c8, #6ad1c8 2px, #fff 2px, #fff 4px);
}


@media (max-width: 767px) {
    .campaign-box p,   
    .campaign-box p.special-text {
        margin-left: 1em;
    }
.entry-column p.text-catchcopy {
    font-size: 20px;
    }
}

/*大会のエントリー終了ボタン*/
.entry-column p.entry-btn-end {
  font-weight: bold;
  line-height: 1.2;
  padding: 20px 15px;
  color: #333;
    font-size: 20px;
  border-radius: 5px;
  background-color: #ccc;
    max-width: 360px;
    margin: 0 auto;
    text-align: center;
}
.entry-column p.btn-end {
  font-weight: bold;
  line-height: 1.2;
  padding: 18px 15px;
  color: #333;
    /*font-size: 20px;*/
  border-radius: 5px;
  background-color: #ccc;
    margin: 0 auto;
    text-align: center;
}

/* ------------------------------
　　ページャー
------------------------------ */
.pager li.cur {
  background: #0f5f15;
}
.pager-link:hover {
  background: #45b972;
}

