@charset "utf-8";
@media screen and (min-width: 1201px) { html{font-size:17px; } }@media screen and (max-width: 1200px) { html{font-size:16px; } }@media screen and (max-width: 1024px) { html{font-size:15px; } }@media screen and (max-width: 768px) {  html{font-size:14px; } }@media screen and (max-width: 480px) {  html{font-size:13px; } }a,a:visited,a:active { color:rgba(51,135,81,1.00)}a:hover { color:rgba(234,125,62,1.00)}
/* css setting */
/*　==============================　header　==============================　*/
@media screen and (max-width: 480px) { 
#top_logo img{
width:200px;
height:auto;
}
#top_logo{
padding:2rem 0 2rem 1rem!important;
}
}
@media screen and (min-width: 480px) { 
#top_logo img{
max-width:380px;
height:auto;
}
}

.header_sns_icon{
margin: 0 0 0 auto;
display:flex;
justify-content:center;
width:250px;
align-items:center;
background-color:#338751;
padding:0.3rem 1rem;
}
.header_sns_icon:hover{
margin: 0 0 0 auto;
display:flex;
justify-content:center;
width:250px;
align-items:center;
background-color:#EA7D3E;
padding:0.3rem 1rem;

transition:0.8s;
}
.sns_txt{
display:flex;
align-items: center;
color:#fff;
margin-right:0.5rem;

}
.header_sns_icon img{
height:20px;
width:auto;
display:flex;

}
@media screen 

.movie_wr{
position:relative;
}
.movie_wr p{
position:absolute;
top:10rem;
left:5rem;
z-index:100;
font-size:3rem;
font-weight:bold;
line-height:1;
}


.movie_wr .ytube {
position:absolute;
margin:0 0 1rem 2rem;
bottom:3rem;
left:0;
}

@media (min-width: 480px) and (max-width: 1025px){
.header_sns_icon{
display:none;
}
}

@media screen and (max-width: 480px) { 
.header_sns_icon{
margin: 0 0 0 auto;
display:flex;
justify-content:center;
width:100%;
align-items:center;
background-color:#338751;
padding:0.5rem 0rem;
}
.header_sns_icon:hover{
margin: 0 0 0 auto;
display:flex;
justify-content:center;
width:100%;
align-items:center;
background-color:#EA7D3E;
padding:0.5rem 0rem;

transition:0.8s;
}
.movie_wr{
position:relative;
}
.movie_wr .ytube {
position:absolute;
margin:0 0 1rem 1rem;
bottom:-3rem;
left:0;
}
}

.movie-small{display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-flow: row wrap; justify-content: flex-start; align-items: center; width:100%; box-sizing: border-box;}
.movie-small img{max-width: 100px;}
.movie-small iframe{width: 240px; height: 132px;}
.ytube{position: relative; width: 130px; box-sizing: border-box; padding: 0rem 0rem 2rem 3rem;}
.ytube iframe{position: absolute;right: 0; top: 0; width: 100%; height: 100%; opacity:0;}
.ytube a{position: absolute; right: 0rem; top: 0; width: 100px; height: 100%;}
@media screen and (max-height: 868px) {
    .movie-small{margin-top:-3rem;}
}
@media screen and (max-width: 498px) {
    .ytube{width: 70px; padding: 0rem 0rem 1.5rem 2rem;}
}

.main-movie {
  position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
}

.main-movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;

}

.main-title-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.buttons {
  display: flex;
  justify-content: center;
  margin: 10px auto 0;
  padding: 0;
  list-style: none;
}

.buttons > * {
  width: 240px;
  padding: 0 10px;
  box-sizing: border-box;
}

.buttons a {
  display: block;
  padding: 5px;
  background-color: #fff;
  border-radius: 6px;
  text-decoration: none;
  text-align: center;
}
@media screen and (max-width: 1366px) {
  .main-movie {
    padding-bottom: 56.25%;
  }
}




.youtube-variable{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.youtube-variable iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.ytp-watermark yt-uix-sessionlink{
display:none!important;
}
*/




/*　--------------------　Fatナビに関する設定　--------------------　*/
.fat-nav li {
list-style-type: none;
text-align: left;
padding: 1.5rem 0 1.5rem 2rem;
font-size: 1.2rem;
border-bottom: 1px solid #969696;
}
.fat-nav{
background: rgba(0, 0, 0, 0.9);
}
.hamburger .hamburger__icon, .hamburger .hamburger__icon:before, .hamburger .hamburger__icon:after {
background-color: #338751;
}

/*　Fatnaviフィックス　*/
#topfix-A {
position: absolute;
z-index: 50;
top: 0;
right: 0;
}
#topfix-B {
position: absolute;
z-index: 10;
top: 0;
right: 0;
}
/*　==============================　文字に関する設定　==============================　*/
.bold {
font-weight: bold;
}
.italic {
font-style: italic;
}
.eiji {
font-family: "Lato", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
}
.space{
letter-spacing: 0.2rem;
}
.space-1{
letter-spacing: 0.1rem;
}
.space-2{
letter-spacing: 0.4rem;
}
.br-sp{
display:none;
}
.br-sp-r{
display:inline;
}
@media screen and (max-width: 900px) { 
}
@media screen and (max-width: 480px) { 
.tx-center{
text-align: center!important;
}
.tx-left{
text-align: left!important;
}
.tx-right{
text-align: right!important;
}
.br-sp{
display:block;
line-height:0rem;
}
.br-sp-r{
display:none;
}
}
/*　==============================　色に関する設定　==============================　*/
.rgba-white{
background-color:rgba(255,255,255,0.8);
}
.rgba-black{
background-color:rgba(0,0,0,0.2);
}
/*　==============================　デフォルト　==============================　*/
a {
text-decoration:none;
}
h1 , h2 , h3 {
margin: 0px 0px 0px 0px;
padding: 0px 0px;
margin-top: 0px;
font-weight: normal;
}
.hover-opacity:hover{
opacity: 0.8;
transition:0.6s;
}
/*　==============================　outline　==============================　*/
.outline-subttl{
color: #ffffff;
background-color: #000000;
}
.outline-border-t{
border-top: 1px solid #338751;
}
.outline-border-l{
border-left: 1px solid #338751;
}
.outline-border-none{
border: none!important;
}
/*----------------------- 要項テーブル -----------------------*/ 
.outline-table-entry-c {
width: 100%;
padding: 0.5rem 0.5rem 1rem 0rem;
border: none;
font-weight: normal;
text-align: left;
}
.outline-table-l {
width: 24%;
padding: 0rem 0.5rem 1rem 0rem;
border-bottom: 1px solid #cccccc;
font-weight: normal;
text-align: left;
}
.outline-table-l-inner {
width: 24%;
padding: 0rem 0.5rem 1rem 0rem;
font-weight: normal;
text-align: left;
}
.outline-table-entry-l {
width: 38%;
padding: 0.5rem 0.5rem 1rem 0rem;
border-bottom: 1px solid #cccccc;
font-weight: normal;
text-align: left;
}
.outline-table-r {
width: 66%;
padding: 1rem 0rem;
border-bottom: 1px solid #cccccc;
text-align: left;
}
.outline-table-r-inner {
width: 66%;
padding: 0rem 0.5rem 1rem 0rem;
font-weight: normal;
text-align: left;
}
.outline-table-entry-r {
width: 62%;
padding: 0.5rem 0.5rem 1rem 0rem;
border-bottom: 1px solid #cccccc;
font-weight: normal;
text-align: left;
}
.outline-table-entry-c {
width: 100%;
padding: 0.5rem 0.5rem 1rem 0rem;
border: none;
font-weight: normal;
text-align: left;
}
.outline-table-nb{
border: none;
}
/*　--------------------　マルチイメージのポインター無　--------------------　*/
.cuosor {
pointer-events: none ;
cursor: default ;
}
/*　--------------------　telリンク - スマホ版のみ　--------------------　*/
@media screen and (min-width: 768px) {
a[href^="tel:"] {
pointer-events: none;
}
}
@media screen and (min-width: 480px) {
.tel_splink {
pointer-events: none;
}
}
/*　--------------------　Google font　--------------------　*/
.googlefont {
font-family: 'Outfit', 游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,sans-serif;
}

/* latin */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/outfit/v2/QGYyz_MVcBeNP4NjuGObqx1XmO1I4QK1O4a0Ew.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/*　==============================　home　==============================　*/
.txtcl-A{  color: #ffffff ;}
.txtcl-B{  color: #f1f8f9 ;}
.txtcl-C{  color: #338751 ;}
.txtcl-D{  color: #1f2c5c ;}

.bgcl-A {background-color:#ffffff;}
.bgcl-B {background-color:#ffffff;}
.bgcl-C {background-color:#74bbc3;}
.bgcl-D {background-color:#338751;}

.bgclA_box{background-color:#ffffff; margin:0rem 2rem; padding:2rem 3rem 2.5rem 3rem; -webkit-box-shadow: 0px 0px 10px rgb(0,0,0,0.2); -moz-box-shadow: 0px 0px 10px rgb(0,0,0,0.2); box-shadow: 0px 0px 10px rgb(0,0,0,0.2); border-radius: 20px;}

.ccm-layout-vertical-stretch .ccm-layout-row{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}

.ccm-layout-vertical-stretch .ccm-layout-row > .ccm-layout-cell{
float: none;
display: -webkit-box;
display: -ms-flexbox;
display: grid;
-ms-flex-item-align: stretch;
-ms-grid-row-align: stretch;
align-self: stretch;
-webkit-box-align: stretch;
-ms-flex-align: stretch;
align-items: stretch;
}



@media screen and (max-width: 498px){
.ccm-layout-vertical-stretch .ccm-layout-row {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
}
}
@media screen and (max-width: 498px){
.grid_ud{
margin-bottom:1rem;
}
}

.bx-wrapper .bx-viewport{
border:none;
background:transparent;
box-shadow:none!important;
}
/*　ボタン　*/
.bgclolr-btnA .fs_btn{
background-color:#338751;
letter-spacing: 0.2rem;
 border-radius: 5rem;
padding:1rem 2rem 1rem 2rem;
width:98%;
}
.bgclolr-btnA .fs_btn:hover{
background-color:#EA7D3E;
}
.rd_box{
border-radius:1rem;
}
.rd-top{
border-radius:1rem 1rem 0 0;
}
.rd-under{
border-radius:0 0 1rem 1rem;
}
.ttl_line{
border-bottom:2px dotted #338751;


}
/*　----------　観光ボタン　----------　*/
.kanko_img_btn .fs_btn_text_main {
    font-size: 1.2rem;
    letter-spacing: 0.2rem;
}
.kanko_img_btn .fs_btn_text_sub {
    font-size: 0.8rem;
    letter-spacing: 0.1rem;
    opacity:0;
}
.kanko_img_btn .fs_btn {
    background-color: rgba(0, 91, 171,0);
}
.kanko_img_btn .fs_btn:hover {
    background-color: rgba(0, 91, 171,0.5);
}
.kanko_img_btn .fs_btn:hover .fs_btn_text_sub {
    opacity:1;
}
.kanko_img_btn .fs_btn_text {
padding:5rem 0 5rem 2rem; }

@media screen and (max-width: 480px) {
.kanko_img_btn .fs_btn_text {
padding:6rem 0 3rem 2rem; }}

.kankoimg_bg{border-radius: 20px 20px 0 0 ;padding:50vh 0 0 0;}
.rgba-kanko{background-color:rgba(0,0,0,0.2);}


.tk_title {
    font-size: 1rem;}

/*　--------------------　telリンク - スマホ版のみ　--------------------　*/
@media screen and (min-width: 768px) {
a[href^="tel:"] {pointer-events: none;}
}
@media screen and (min-width: 480px) {
.tel_splink {pointer-events: none;}
}
/*　———　スマホ時改行なし　———　*/
@media screen and (max-width: 480px){
.sp-br-none br {display:none;}
}
/*　———　スマホ時改行あり　———　*/
@media only screen and (min-width: 769px){
.sp-br br {display:none;}
}
/*　--------------------　タブレット横時スクロール　--------------------　*/
@media screen and (max-width: 1024px) {
.tb-bg-scroll{background-attachment: scroll!important; }
}

/*　--------------------　about横幅　--------------------　*/
.home_about_wid{
width: 60%;
height: auto;}

@media screen and (max-width: 1024px) {
.home_about_wid{width: 100%!important;
height: auto;}}
/*　==============================　大会要項　==============================　*/
.join_detail {
margin-top:-1rem;
  border-collapse: collapse;
  width: 100%;

}
.join_detail th {
  border: 1px solid #cccccc;

}
.join_detail td {
  padding: 10px;
text-align:left;
}
.join_detail td {
  border: 1px solid #cccccc;
}
.join_detail td:last-child{
text-align:right;
}


.award_detail {

  border-collapse: collapse;
  width: 100%;

}
.award_detail th {
  border: 1px solid #cccccc;

}
.award_detail td {
  padding: 10px;
text-align:left;
}
.award_detail td {
  border: 1px solid #cccccc;
}

/*　==============================　お知らせ　==============================　*/
.ccm-pagination{
margin-top:1rem;
}
#fsInfoBpager .ccm-page-left a, #fsInfoBpager .ccm-page-right a, #fsInfoBpager .numbers{
background-color:#338751;
}
#fsInfoBpager .ccm-page-left a:hover, #fsInfoBpager .ccm-page-right a:hover,  #fsInfoBpager .numbers:hover{
background-color:#EA7D3E;
}
#fsInfoBpager .ccm-page-left span, #fsInfoBpager .ccm-page-right span, #fsInfoBpager .currentPage{
background-color:#F5F4EA;
color:#338751;
}
#fsInfoBpager .currentPage:hover{
background-color:#F5F4EA!important;
color:#338751!important;
}
/*　==============================　コース紹介　==============================　*/


/*　==============================　大会の魅力　==============================　*/


/*　==============================　エントリー　==============================　*/


/*　==============================　アクセス　==============================　*/

.tbl_access {
width: 100%;
margin: 0;
padding: 0;
vertical-align: middle;
font-size: 1rem;
border-collapse: collapse;
border: 1px solid #4B4B4B;
}
.tbl_access.none thead {
display: none;
}

.tbl_access tr td:nth-child(1){
	text-align:center;
}

.tbl_access tr td:nth-child(2){
	text-align:center;
}

.tbl_access tr td:nth-child(3){
	text-align:center;
}

.tbl_access tr td:nth-child(4){
	text-align:center;
}

.tbl_access tr td:nth-child(5){
	text-align:center;
}



.tbl_access th {
padding: 0.8rem 0.5rem;
text-align: center;
vertical-align: middle;
font-weight: normal;
border: 1px solid #4B4B4B;
background-color: #D8DBE3;
}
.tbl_access th:first-child,
.tbl_access td:first-child {
width: 36%;
}
.tbl_access th:nth-child(2),
.tbl_access td:nth-child(2) {
width: 21%;
}
.tbl_access th:nth-child(3),
.tbl_access td:nth-child(3) {
width: 12%;
}
.tbl_access th:nth-child(4),
.tbl_access td:nth-child(4) {
width: 12%;
}
.tbl_access th:nth-child(5),
.tbl_access td:nth-child(5) {
width: 19%;
}


.tbl_access td {
padding: 0.8rem 0.4rem;
text-align: left;
vertical-align: middle;
border: 1px solid #4B4B4B;
background-color: #FFFFFF;
}

@media screen and (max-width: 480px) {
.tbl_access {
font-size: 0.8rem;
}
.tbl_access th:first-child,
.tbl_access td:first-child {
width: 35%;
}
.tbl_access th:nth-child(2),
.tbl_access td:nth-child(2) {
width: 20%;
}
.tbl_access th:nth-child(3),
.tbl_access td:nth-child(3) {
width: 12%;
}
.tbl_access th:nth-child(4),
.tbl_access td:nth-child(4) {
width: 13%;
}
.tbl_access th:nth-child(5),
.tbl_access td:nth-child(5) {
width: 20%;
}
}


/*　==============================　観光宿泊案内　==============================　*/


/*　==============================　よくある質問　==============================　*/




.qa-item:not(:last-child){
margin-bottom:2.5rem;
}
.qa-item .question{
border-bottom:1px solid #F5F4EA;
font-size:1.2rem;
font-weight:bold;
color:#338751;
display:flex;
padding-bottom:0.5rem;
margin-bottom:0.5rem;
}
.qa-item .question li:first-child{
margin-right:1.2rem;
}
.qa-item .answer{
display:flex;

}
.qa-item .answer li:first-child{
margin-right:1.2rem;
font-size:1.2rem;
font-weight:bold;
color:#EA7D3E;
}
.answer .answer_chart div{
display:flex;
}
.answer .answer_chart div p:first-child{
width:12%;
}
@media screen and (max-width: 480px) {
.answer .answer_chart div p:first-child{
width:40%;
}
}
/*　==============================　大会結果　==============================　*/


/*　==============================　お問い合わせ　==============================　*/


/*　==============================　サイトの閲覧について　==============================　*/

/*　==============================　フッダー　==============================　*/

/*　ボタン　*/
.bgclolr-btnB .fs_btn{
margin:5px;
background-color:#338751;
letter-spacing: 0.2rem;
 border-radius: 2rem!important;
padding:1rem 2rem 1rem 2rem;
width:95%;
}
.bgclolr-btnB .fs_btn:hover{
background-color:#EA7D3E;

}
.fa-angle-right:before{
font-weight:bold;
}
/*　==============================　ページタイトル共通設定　==============================　*/

.page-ttl-ja{padding: 3rem 2rem 0rem 2rem; font-size:2.4rem;}
.page-ttl-en{padding: 0rem 2rem 3rem 2rem; font-weight: bold;}
@media screen and (max-width: 480px) {
.page-ttl-ja{padding: 3rem 2rem 0rem 2rem;}
.page-ttl-en{padding: 1rem 2rem 3rem 2rem;}
}


/* ==============================　ヘッダー　============================== */

/*　———　PC - ナビ　———　*/
.h_pc_navi .fsNavMenuList li a{
padding: 2rem 0 !important;
margin-right:2rem;
}
@media screen and (max-width: 1400px){
.h_pc_navi .fsNavMenuList li {
margin-right:-0.5rem!important;
font-size: 0.8rem!important;
}
}
@media screen and (max-width: 1200px){
.h_pc_navi .fsNavMenuList li a {
margin-right:1.5rem!important;

}
}
.h_pc_navi a{
position: relative;
display: inline-block;
transition: .3s;
}
.h_pc_navi a::after{
position: absolute;
bottom: 0;
left: 0;
content: '';
width: 0;
height: 2px;
transition: .3s;
}
.h_pc_navi a:hover::after{
width: 100%;}

/*　へッダー　*/
.lineA-nav a::after{background:#EA7D3E;}

/*　ページトップボタン　*/
.pagetop_btm{
position: fixed;
z-index: 20;
bottom: 0;
right: 0;
}
.pagetop_btm .fs_btn{
line-height: 1.6;
}
.pagetop_btm_sp {
background-color: rgba(0, 70, 150, 0.7);
}
@media screen and (max-width: 480px){
.pagetop_btm img{
max-width:50px!important;
}
}
エリア2非表示（大会公開時にコメントアウト）



.read{word-break: break-all;}


.tx_kage {text-shadow: 0px 0px 10px #EA7D3E; }

