@charset "utf-8";
@media screen and (min-width: 1201px) { html{font-size:16px; } }@media screen and (max-width: 1200px) { html{font-size:15px; } }@media screen and (max-width: 1024px) { html{font-size:14px; } }@media screen and (max-width: 768px) {  html{font-size:13px; } }@media screen and (max-width: 480px) {  html{font-size:12px; } }a,a:visited,a:active { color:rgba(33,33,33,1.00)}a:hover { color:rgba(102,102,102,1.00)}
/* css setting */
/*　==============================　HOME　==============================　*/
/*トップスライドバナー*/
.top_bunner_slide .slick-prev,
.top_bunner_slide .slick-next {
top: 40%;
}
/*トップお知らせ一覧*/
.top_news .tk_tags_time, .top_news .tk_title a , .top_news .tk_kiji a {
color: #ffffff;
line-height: 1.1rem;
}
.top_news .tk_tags_time a:hover, .top_news .tk_title a:hover , .top_news .tk_kiji a:hover {
color: #cccccc;
}
.top_news_link a, .top_news_link a:visited, .top_news_link a:active {
    color: #ffffff;
}
.top_news_link a:hover{
    opacity: 0.5;
    transition:0.3s;
}


/*　==============================　競技種目　==============================　*/
/*　———　共通トップイメージ　———　*/
@media screen and (max-width: 768px) {
#sprint_top_bg , #slalom_top_bg , #wildwater_top_bg , #polo_top_bg , #dragon_top_bg , #freestyle_top_bg , #others_top_bg
 {
    background-attachment: scroll; }
}

/*　———　ボタン　———　*/
.btn_disciplines .fs_btn_text_main {
      letter-spacing: 0.2rem;
      font-size:1.4rem;
}
.btn_disciplines .fs_btn_text_sub {
      font-size:0.9rem;
      font-weight: bold;
}
.btn_disciplines .fs_btn {
line-height: 1.6rem;
background-color: rgba(33,33,33,0.5);
}
.btn_disciplines .fs_btn:hover {
background-color: rgba(33,33,33,0.1);
}



/*　———　ルールテーブル　———　*/
.rule_item {
      font-size:0.8rem;
      border-bottom: #666666 1px solid;
      padding: 1rem 0.5rem;
      vertical-align: middle;
      text-align: center;
      background-color: #212121;
      width: 20%;
}
.rule_contents {
      border-bottom: #666666 1px solid;
      padding: 1rem 0 1rem 1rem ;
      vertical-align: top;
      width: 80%;
}

.rule_contents hr { border-top: 1px solid #666666!important; }

/*　==============================　大会情報　==============================　*/
.jcf-taikai-list:nth-child(2n){
background-color:#ededed!important;
}
.list-number{
background-color: rgba(0,0,0,0.5);
}
/*　———　大会情報検索フォーム　———　*/
/*---検索フォーム全体---*/
.ccm-search-block-form{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: column nowrap;
}
.ccm-search-block-form input.ccm-search-block-submit{
text-align: center;
background-color: #ffee00;
margin: 3rem auto;
padding: 0.5rem;
border-width: 0rem;
width: 10rem;
}
.ccm-search-block-form input.ccm-search-block-submit:hover{
opacity: 0.7;
cursor : pointer;
}
.ccm-search-block-form input[type="submit"]{
border-radius: 0;
-webkit-appearance: none;
}
/*---項目大枠---*/
div.po_page_search_game,div.po_page_search_games_category,div.po_page_search_fiscal_year{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
background: #454545;/*背景色*/
}
div.po_page_search_fiscal_year{
border: 1px solid #ffffff;/*線(太さ・線種類・色)*/
}
div.po_page_search_games_category,div.po_page_search_game{
border-right: 1px solid #ffffff;/*線(太さ・線種類・色)*/
border-bottom: 1px solid #ffffff;/*線(太さ・線種類・色)*/
border-left: 1px solid #ffffff;/*線(太さ・線種類・色)*/
}
/*---項目名中枠(左)---*/
div.po_page_search_game h4,div.po_page_search_games_category h4,div.po_page_search_fiscal_year h4{
background-color: #212121;/*背景色*/
color :#ffffff;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
padding: 1rem;/*パッディング*/
margin: 0rem;
width: 13%;/*横幅*/
}
/*---項目中枠(右)---*/
div.po_page_search_game span,div.po_page_search_games_category span,div.po_page_search_fiscal_year span{
padding: 0.5rem;/*パッディング*/
color: #ffffff;/*文字色*/
text-align: left;
width: 87%;/*横幅*/
}
/*---項目_各(右)---*/
div.po_page_search_game span label,div.po_page_search_games_category span label,div.po_page_search_fiscal_year span label{
display: inline-block;
text-align: left;
vertical-align: middle;
padding: 0.5rem;/*パッディング*/
width: 22%;/*横幅*/
}
/*---項目_各(右)_4つ目で落とす---*/
div.po_page_search_game span label:nth-child(4n)::after,div.po_page_search_games_category span label:nth-child(4n)::after,div.po_page_search_fiscal_year span label:nth-child(4n)::after{
content:"\A";
white-space: pre;
}
div.po_page_search_game span label input,div.po_page_search_games_category span label input,div.po_page_search_fiscal_year span label input{

}
@media screen and (max-width: 768px) {
div.po_page_search_game,div.po_page_search_games_category,div.po_page_search_fiscal_year{
flex-flow: column wrap;
}
div.po_page_search_game h4,div.po_page_search_games_category h4,div.po_page_search_fiscal_year h4{
width: 100%;/*横幅*/
padding: 1rem 0rem;
}
div.po_page_search_game span,div.po_page_search_games_category span,div.po_page_search_fiscal_year span{
width: 100%;/*横幅*/
}
div.po_page_search_game span label,div.po_page_search_games_category span label,div.po_page_search_fiscal_year span label{
padding: 1rem 0.5rem;/*パッディング*/
width: 22%;/*横幅*/
}
}
@media screen and (max-width: 468px) {
div.po_page_search_game span label,div.po_page_search_games_category span label,div.po_page_search_fiscal_year span label{
padding: 0.5rem 0;/*パッディング*/
width: 48%;/*横幅*/
}
}
/*　———　大会情報（オリンピック情報）更新用　———　*/

.events_item{
      font-size:0.9rem;
      border-top: #444444 1px solid;
      padding: 1rem 0.5rem;
      vertical-align: middle;
      text-align: center;
      color:#ffffff;
      background-color: #212121;
      width: 20%;
}

.events_contents{
      border-top: #444444 1px solid;
      padding: 1rem;
      vertical-align: top;
      width: 80%;
}

.events_contents a {
font-weight: bold;
font-size:0.9rem;
text-decoration: underline;
}

.events_contents a:hover {
    opacity: 0.5;
    transition:0.3s;
}


#pt103-2Parent .fs_breadcrumb a,
#pt103-2Parent .fs_breadcrumb a:active,
#pt103-2Parent .fs_breadcrumb a:visited {
      color:#ffef00;
}

#pt103-2Parent .fs_breadcrumb a:hover {
    opacity: 0.5;
    transition:0.5s;
}

#pt103-2Parent {
     margin:2rem 2rem 3rem 2rem;
}




/*　==============================　オリンピック情報　==============================　*/

/*　———　オリンピックニュース一覧ページ　———　*/

#fsInfoBlock .entryData {
     font-size: 0.9rem;
     font-weight: bold;
    margin-top: 0.15rem;
}

#fsInfoBlock .entryTitle {
    margin-bottom: 0.25rem;
}

#fsInfoBlock .entryTitle a {
     font-size: 1rem!important;
     font-weight: bold;
}

#fsInfoBlock dd {
    border-left: 0px solid #bbb;
    float: left;
    padding-left: 2%;
    width: 75%;
    line-height: 1.4;
}


/*　———　オリンピック詳細ページ　———　*/

/*　　共通　　*/

@media only screen and (min-width: 769px){
.olympic_contents br , .olympic_rekidai_contents br , .olympic_rekidai_item br , .olympic_name01 br , .sp_br br {
  display:none;
 }
}

/*　スライド　*/
.olympic_img .slick-slide {
  pointer-events: none ;
  cursor: default ;
}

/*　概要欄　*/

.olympic_item{
      font-size:0.9rem;
      border-top: #454545 1px solid;
      padding: 1rem 0.5rem;
      vertical-align: middle;
      text-align: center;
      color:#ffffff;
      background-color: #212121;
      width: 20%;
}

.olympic_contents{
      border-top: #454545 1px solid;
      padding: 1rem;
      vertical-align: top;
      width: 80%;
}

/*　team・staff　*/

.olympic_position {
      font-size:1rem;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      color:#ffffff;
      background-color: #454545;
      border-left: #454545 1px solid;
      border-right: #454545 1px solid;
}

.olympic_event {
      font-size:1rem;
      border-top: #cccccc 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      color:#ffffff;
      background-color: #cccccc;
      border-left: #454545 1px solid;
      border-right: #454545 1px solid;
}

.olympic_name01 {
      font-size:1rem;
      border-top: #cccccc 1px solid;
      border-left: #454545 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      line-height: 1.1rem;
      width: 38%;
}

.olympic_name02 {
      font-size:0.8rem;
      border-top: #cccccc 1px solid;
      border-left: #cccccc 1px solid;
      border-right: #454545 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      width: 62%;
}

/*　———　歴代日本選手団　———　*/

.olympic_rekidai_item {
      font-size:0.8rem;
      border-top: #cccccc 1px solid;
      border-left: #cccccc 1px solid;
      padding: 1rem 0.5rem;
      vertical-align: middle;
      text-align: center;
      background-color: #ededed;
      width: 26%;
}

.olympic_rekidai_contents {
      border-top: #cccccc 1px solid;
      border-right: #cccccc 1px solid;
      padding: 1rem;
      vertical-align: top;
      width: 74%;
}


/*　———　OLYMPIC GAMES　———　*/

.slick-slide a h3 {
    color:#ffffff;
    margin: 0;
    padding: 1rem 0;
    font-weight: normal;
    font-size: 1.2rem;
    line-height: 0;
    letter-spacing: 0.1rem;
   border-bottom:0px;
}

.slick-slide {
    margin: 0.5rem;
    background-color: #212121;
}

.slick-slide:hover {
     opacity:0.6;
     transition:0.5s;
}

.slick-slide div.contentsslider_footer div.time_ymd {
    display:none;
}

.slick-slide div.contentsslider_footer div.contentsslider_btn {
    display: none;
}




/*　==============================　連盟について　==============================　*/

/*　———　沿革ページ　———　*/
.history-table{
line-height: 1.5rem;
margin: 0 auto;
text-align: left;
width: 100%;
}
.history-list{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
margin-bottom: 2rem;
width: 100%;
}
.li-item-left{
vertical-align: top;
flex: 0 0 10%;
}
.history-year{
border-left: 5px solid #000000;
padding-left: 0.5rem;
}
.li-detail-right{
vertical-align: top;
flex: 0 0 90%;
}
.li-detail-inner{
display: -webkit-inline-flex;
display: -moz-inline-flex;
display: -ms-inline-flex;
display: -o-inline-flex;
display: inline-flex;
flex-flow: row wrap;
width: 100%;
}
.history-month{
margin-right: 1.5rem;
flex: 1 1 4%;
}
.history-event{
flex: 1 1 91%;
}
@media screen and (max-width: 768px) {
.li-item-left{
flex: 0 0 15%;
}
.li-item-right{
flex: 0 0 85%;
}
.history-month{
margin-right: 0.7rem;
flex: 0 0 8%;
}
.history-event{
flex: 0 0 85%;
}
}
@media screen and (max-width: 468px) {
.history-list{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: column nowrap;
width: 100%;
}
.li-item-left{
flex: 0 0 10%;
padding-bottom: 0.5rem;
margin-bottom: 0.7rem;
border-bottom: 1px solid #cfcfcf;
}
.history-month{
flex: 0 0 9%;
}
.history-event{
flex: 0 0 88%;
}
}
/*　———　役員名簿ページ　———　*/
.officer-table{
margin: 0 auto;
text-align: left;
width: 100%;
}
.officer-list{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
margin-bottom: 2rem;
border-bottom: 1px solid #cccccc;
padding-bottom: 2rem;
width: 100%;
}
.officer-ttl-left{
vertical-align: top;
flex: 0 0 20%;
}
.ttl-position{
border-left: 5px solid #000000;
padding-left: 0.5rem;
}
.officer-ttl-right{
vertical-align: top;
flex: 0 0 80%;
}
@media screen and (max-width: 768px) {
.officer-ttl-left{
flex: 0 0 30%;
}
.li-item-right{
flex: 0 0 70%;
}
}
@media screen and (max-width: 468px) {
.officer-list{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: column nowrap;
width: 100%;
}
.officer-ttl-left{
flex: 0 0 10%;
padding-bottom: 0.5rem;
margin-bottom: 0.7rem;
/*border-bottom: 1px solid #cfcfcf;*/
}
}
/*　———　加盟団体ページ　———　*/
.Kamei-dantai{
width: 100%;
margin: 0 auto;
line-height: 1.3rem;
}
.dantai-list{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
border-bottom: 1px solid #cfcfcf;
width: 100%;
}
.dantai-list:first-child{
border-top: 1px solid #cfcfcf;
}
.dantai-list:nth-child(2n){
background-color: #eeeeee;
}
.dantai-number{
color: #ffffff;
border-bottom: 1px solid #ffffff;
background-color: rgba(0,0,0,0.8);
text-align: center;
padding: 1rem;
width: 10%;
}
.dantai-number div{
align-items: center;
display: flex;
justify-content: center;
height: 100%;
}
.dantai-detail{
text-align: left;
padding: 0.4rem 0rem 0rem 0rem;
vertical-align: top;
width: 90%;
}
.dantai-item{
display: -webkit-inline-flex;
display: -moz-inline-flex;
display: -ms-inline-flex;
display: -o-inline-flex;
display: inline-flex;
flex-flow: row wrap;
border-bottom: 1px solid #cfcfcf;
/*padding: 0rem 1rem 0.4rem 1rem;*/
margin-bottom: 0.4rem;
width: 100%;
}
.dantai-item:last-child{
border: none;
margin-bottom: 0rem;
}
.ttl-dantai{
flex: 0 1 13%;
padding: 0.3rem 1rem;
}
.dantai-data{
flex: 1 2 76%;
padding: 0.3rem 1rem;
}
.dantai-data a{
text-decoration: underline;
}
@media screen and (max-width: 768px) {
.dantai-number{
width: 15%;
}
.dantai-detail{
width: 100%;
}
}
@media screen and (max-width: 468px) {
.dantai-list{
flex-flow: column nowrap;
}
.dantai-number{
padding: 0.4rem 0rem;
width: 100%;
}
.dantai-detail{
padding: 0.4rem 0rem;
}
.dantai-item{
padding: 0rem 0rem 0.4rem 0rem;
}
.ttl-dantai{
flex: 0 1 27%;
}
.dantai-data{
flex: 1 2 73%;
}
}


/*　==============================　連盟からのお知らせ　==============================　*/

/*　———　お知らせ更新用　———　*/

#pt101-2-1 .fs_c_title,
#pt102-2-1 .fs_c_title  {
  margin: 2rem;
  padding-top:2rem;
  border-top:1px solid #cccccc;
  font-size: 1.4rem;
  text-align: left;
  font-weight: bold;
  padding-bottom:2rem;
  border-bottom:1px solid #cccccc;
}

#pt101-2-1 .fs_content,
#pt102-2-1 .fs_content {
  padding: 1rem 0 4rem 0;
  margin: 0 2rem;
  font-size: 1rem;
}

#pt101-2-1 .fs_content a,
#pt102-2-1 .fs_content a {
    background-color: #ffef00;
font-weight: bold;
    vertical-align: middle;
  padding: 0.2rem;
    font-size: 0.8rem;
}

#pt101-2-1 .fs_content a:hover {
    opacity: 0.5;
    transition:0.3s;
}


#pt101-4Parent .tk_kiji , #pt102-4Parent .tk_kiji {
   display:none;
}

#pt101-4Parent .tk_title , #pt102-4Parent .tk_title {
    font-size: 1rem;
    vertical-align: middle;
    margin-bottom: 0!important;
}


/*　———　お知らせ一覧　———　*/

.tk_flex {
     padding: 1.5rem 0;
     border-bottom: 1px solid #cccccc;
}

.tk_tags_time {
    vertical-align: middle;
}

.tk_tags {
     font-size: 0.8rem;
     background-color: #ffef00;
    vertical-align: middle;
    color:#212121;
}

.tk_title {
    font-weight: bold;
    font-size: 1rem;
    vertical-align: middle;
}

.tk_kiji {
    font-size: 0.9rem;
    line-height: 0.9rem;
}

@media screen and (max-width: 480px) {
.tk_tags { display:none;
}
}

/*　ページャー　*/
#fsInfoBpager .numbers {
    font-family: Century Gothic , Futura-Medium , メイリオ , Meiryo ,sans-serif;
    background: #454545 ;
}

#fsInfoBpager .active {
    font-family: Century Gothic , Futura-Medium , メイリオ , Meiryo ,sans-serif;
    background: #fff ;
}

#fsInfoBpager .ccm-page-left a,
#fsInfoBpager .ccm-page-right a {
    background: #454545 ;
}

#fsInfoBpager .ccm-page-left span,
#fsInfoBpager .ccm-page-right span{
    background: #ccc ;
}

/*　==============================　強化選手　==============================　*/

.n_team_strengthening {
      font-size:1rem;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      color:#ffffff;
      background-color: #454545;
      border-left: #454545 1px solid;
      border-right: #454545 1px solid;
}

.n_team_s_name01 {
      font-size:1rem;
      border-bottom: #454545 1px solid;
      border-left: #454545 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      line-height: 1.1rem;
      width: 22%;
}

.n_team_s_name02 {
      font-size:0.8rem;
      border-bottom: #454545 1px solid;
      border-left: #cccccc 1px solid;
      border-right: #cccccc 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      width: 10%;
}

.n_team_s_name03 {
      font-size:0.8rem;
      border-bottom: #454545 1px solid;
      border-right: #454545 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      width: 68%;
}

/*　==============================　代表選手　==============================　*/

.n_team_position {
      font-size:1rem;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      color:#ffffff;
      background-color: #454545;
      border-left: #454545 1px solid;
      border-right: #454545 1px solid;
}

.n_team_name01 {
      font-size:1rem;
      border-bottom: #454545 1px solid;
      border-left: #454545 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      line-height: 1.1rem;
      width: 32%;
}

.n_team_name02 {
      font-size:0.8rem;
      border-bottom: #454545 1px solid;
      border-left: #cccccc 1px solid;
      border-right: #cccccc 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      width: 48%;
}

.n_team_name03 {
      font-size:0.8rem;
      border-bottom: #454545 1px solid;
      border-right: #454545 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      width: 20%;
}
/*　==============================　代表チーム　==============================　*/
.n_team_information {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.n_team_information dt{
padding: 1rem 0;
width: 110px;
position: relative;
font-weight: bold;
font-size:0.9rem;
}
.n_team_information dd{
text-align: left;
padding: 1rem 0  ;
width: calc(100% - 1rem);
}
.n_team_table th {
width:15%;
font-weight:normal;
text-align:left;

}
.n_team_table td {
width:85%;
text-align:left;
}

@media screen and (max-width: 768px){
.n_team_information {
flex-flow: column wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.n_team_information dt{
font-size: 95%;
font-weight: bold;
padding: 0.5rem 0 0.3rem 0;
width: calc(100% - 1rem);
}
.n_team_information dt:after{
content: "";
display: block;
line-height: 0;
overflow: hidden;
position: absolute;
left: 0;
top: -1px;
width: 25px;
}
.n_team_information dd{
font-size: 1rem;
padding: 0rem 0 0.5rem 0;
width: calc(100% - 1rem);
border: none;
}
}

@media screen and (max-width: 480px){
.n_team_table th {
width:25%;
text-align:left;
}
.n_team_table td {
width:75%;
}
}

/*　==============================　日程一覧　==============================　*/

.n_schedule_position {
      font-size:1rem;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      color:#ffffff;
      background-color: #454545;
      border-left: #454545 1px solid;
      border-right: #454545 1px solid;
}

.n_schedule_name01 {
      font-size:1rem;
      border-bottom: #454545 1px solid;
      border-left: #454545 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      line-height: 1.1rem;
      width: 60%;
}

.n_schedule_name02 {
      font-size:0.8rem;
      border-bottom: #454545 1px solid;
      border-left: #cccccc 1px solid;
      border-right: #cccccc 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      width: 20%;
}
.n_schedule_name03{
      font-size:0.8rem;
      border-bottom: #454545 1px solid;
      border-right: #454545 1px solid;
      padding: 0.5rem 1rem;
      vertical-align: middle;
      text-align: justify;
      width: 20%;
}

/*　==============================　連盟からのご案内　==============================　*/
/*　———　オフィシャルグッズ　———　*/
.og_01{
      font-size:0.9rem;
      border-top: #ccc 1px solid;
      padding: 1rem 0;
      vertical-align: middle;
      text-align: center;
      background-color: #ededed;
      width: 10%;
}
.og_02{
      border-top: #ccc 1px solid;
      padding: 1rem;
      vertical-align: top;
      width: 67%;
}
.og_03{
      border-top: #ccc 1px solid;
      text-align: right;
      padding-right: 1rem;
      vertical-align: middle;
      width: 23%;
}




/*　==============================　相談窓口　==============================　*/
.formBlockSurveyTable dl dt {
    text-align: left;
    width:100%
}
.formBlockSurveyTable dl dd {
    width: 100%;
}
.formBlockSurveyTable dl {
    padding: 0 0 1.5rem 0;
}
.formBlockSurveyTable dl dd input, .formBlockSurveyTable dl dd textarea {
    resize: none;
    border-radius: 0;
    padding: 0.75rem;
}
.formBlockSurveyTable dl dd input,
.formBlockSurveyTable dl dd textarea {
    width: 97%;
}
.formBlockSubmitButton {
    width:240px!important;
    text-align:center!important;
    background-color: #666666!important;
    color:#fff;
}
.formBlockSubmitButton:hover {
    background-color: #333333!important;
    color:#fff;
    transition:0.6s;
}
.on-pointer input {
    cursor: pointer;
}



/*　==============================　ヘッダー　==============================　*/
/*　———　ヘッダーロゴ　———　*/

.h_logo_z {
    position: relative;
    z-index: 102;
}


/*　———　PC用オートナビ　———　*/

/*.h_navi_pc .fsNavMenuList li {
     vertical-align: middle;
}*/

.h_navi_pc .fsNavMenuList li ul li a {
     text-align: left;
     padding:1rem 1rem !important;
     font-size:0.8rem;
     width: 180px;
    border-left:2px solid #ffef00;
}

/*

.fsNavMenuList .active_page > a {
    border-bottom: 2px solid #ffee00;
}

*/

/*　———　スマホ用Fatナビ　———　*/

.h_navi_mobile {
    position: absolute;
    z-index: 101;
    top: 0;
    right: 0;
}

.menu-mobile:after {
    font-family: "Ionicons";
    font-size: 2.6rem;
    float: right;
    position: relative;
}

.h_navi_mobile .menu-mobile {
    padding: 1.4rem 2rem;
}

.menu-dropdown-icon:before {
    color: #212121;
    background: #ffef00!important;
    font-weight: bold;
}

.menu > ul:before,.menu > ul:after {
    display: none;
}

.menu > ul > li > ul.normal-sub {
    padding: 0 ;
}

.menu > ul > li > ul.normal-sub > li a {
    padding: 1.5em ;
}

.menu > ul > li > ul.normal-sub > li {
    border-top: 1px solid #888888;
}

.menu > ul > li {
    background: #212121;
    border-bottom: 1px solid #444444;
}

.menu > ul > li > ul > li {
    float: none;
    width: 100%;
    margin-top: 0;
}


/*　==============================　フッター　==============================　*/
/*　———　トップへもどるボタン　———　*/
.pagetpp_btn .fs_btn_text {
     font-size: 2.5em;
}
.pagetpp_btn .fs_btn {
     line-height: 1rem;
}
.pagetpp_btn .fs_btn_text_main {
     font-size: 0.9rem;
}

/*　———　サイトマップ　———　*/
.sitemap_table {
      padding: 0 1rem ;
      vertical-align: top;
      width: 50%;
      line-height: 1.5rem;
}

.sitemap_table a, .sitemap_table a:visited, .sitemap_table a:active {
    color: #ffffff;
}

.sitemap_table a:hover{
    opacity: 0.5;
    transition:0.3s;
}

.sitemap_table_eng {
      color: #ffef00;
      letter-spacing: 0.2rem;
      font-size:1.1rem;
      padding: 1.5rem 1rem 0.5rem 1rem;
      vertical-align: top;
      width: 50%;
}


/*　==============================　ボタンに関する設定　==============================　*/

/*　———　ボタンS　———　*/
.btn_s .fs_btn_text_main { letter-spacing: 0.2rem; font-size:1.2rem; }
.btn_s .fs_btn_text_sub { font-size:0.9rem; font-weight: bold; }
.btn_s .fs_btn { line-height: 1.5rem; }

/*　———　ボタンXS　———　*/
.btn_xs .fs_btn_text_main { letter-spacing: 0.3rem; font-size:1rem; }
.btn_xs_02 .fs_btn_text_main { letter-spacing: 0.15rem; font-size:1rem; }
.btn_xs .fs_btn_text_sub , .btn_xs_02 .fs_btn_text_sub { letter-spacing: 0.2rem; font-size:0.8rem; font-weight: bold;}
.btn_xs .fs_btn , .btn_xs_02 .fs_btn { line-height: 1.3rem; }

/*　———　ボタンlaws　———　*/
.btn_laws .fs_btn_text_main { letter-spacing: 0rem; font-size:1rem; font-weight: bold; }
.btn_laws .fs_btn_text_sub { font-size:0.9rem; font-weight: bold; }
.btn_laws .fs_btn { line-height:1.8rem; }

/*　==============================　文字に関する設定　==============================　*/

.bold {
    font-weight: bold;
}

.space_1{
    letter-spacing: 0.1rem;
}

.space{
    letter-spacing: 0.2rem;
}

.space_2{
    letter-spacing: 0.4rem;
}

.space_3{
    letter-spacing: -0.1rem;
}


.eiji {
      font-family: Impact,Arial, Gill Sans, 'Helvetica Neue', Helvetica, 游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,sans-serif;
}

.url_text {word-break: break-all;}


/*　———　Google font　———　*/

/* cyrillic */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  src: local('Oswald Medium'), local('Oswald-Medium'), url(https://fonts.gstatic.com/s/oswald/v14/K-jdLkejCoClkDPYLXieFBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  src: local('Oswald Medium'), local('Oswald-Medium'), url(https://fonts.gstatic.com/s/oswald/v14/qEUKF1uIhQL23ybN9ZhoxBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  src: local('Oswald Medium'), local('Oswald-Medium'), url(https://fonts.gstatic.com/s/oswald/v14/cgaIrkaP9Empe8_PwXbajBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  src: local('Oswald Medium'), local('Oswald-Medium'), url(https://fonts.gstatic.com/s/oswald/v14/KuTkTNzljLi-9-e4QiI83ltXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}

.googlefont {
font-family: 'Oswald', 游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,sans-serif;
}





/*　==============================　デフォルト　==============================　*/

a   {
      text-decoration:none;
      }


h1 , h2 , h3 {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px;
    margin-top: 0px;
}

.hover_opacity:hover{
    opacity: 0.8;
    transition:0.6s;
}


.hover_opacity_img img:hover {
opacity:0.7;
transition:0.6s;
}

.br_radius{
border-radius:7px;
}


.box-shadow {
    box-shadow: 0.1rem 0.1rem #cccccc;
    -webkit-box-shadow: 0.1rem 0.1rem #cccccc;
    -moz-box-shadow: 0.1rem 0.1rem #cccccc;
}

.box-shadow_img img {
    box-shadow: 0.1rem 0.1rem #cccccc;
    -webkit-box-shadow: 0.1rem 0.1rem #cccccc;
    -moz-box-shadow: 0.1rem 0.1rem #cccccc;
}

.formBlockSurveyTable dl dd input, .formBlockSurveyTable dl dd textarea {
    font-family:  游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,sans-serif;
}


/*　———　telリンク - スマホ版のみ　———　*/

@media screen and (min-width: 480px) {
     .tel_splink {
         pointer-events: none;
     }
 }


/*　———　マルチイメージ、スリックスライドのポインター無　———　*/

.cuosor {
  pointer-events: none ;
  cursor: default ;
}


/*　———　シェアボタン　———　*/

.fs-snsbutton-color1 .twitter-btn-icon,
.fs-snsbutton-color1 .facebook-btn-icon {
    background-color: #999999;
}

.fs-snsbutton-color1 .twitter-btn-icon:hover ,
.fs-snsbutton-color1 .facebook-btn-icon:hover {
    background-color: #666666;
        transition:0.5s;
}


/*　==============================　全体　==============================　*/

body {
    font-weight: 500;
}

.contents_tittle_01 {
   font-size:2rem;
   padding-top:2.5rem;
    letter-spacing: 0.4rem;
}

.contents_tittle_02 {
    font-size:1rem;
    letter-spacing: 0.1rem;
    font-weight: bold;
    padding-bottom:5rem;
}

.br-sp {
    display: none;
}

@media screen and (max-width: 480px) {
     .sp_center {
         text-align: center!important;
     }
     .br-sp {
        display: block;
     }
 }

/*-----画像リンクのpaddingを消去-----*/
#pt101-2-1 .fs_content a.pdNone,
#pt102-2-1 .fs_content a.pdNone  {
padding:0;
}
