@charset "UTF-8";


/* -----------------------------------------------
[Media Queries] smart phone
-------------------------------------------------- */

@media only screen and (min-width:1px) and (max-width:768px){

header{
    height: 90px;
}

#logo{
    width: 55%;
    padding: 1em 0;
    margin-left: 5%;
    float: none;
    text-align: left;
}

.header-nav ul {
    width: 100%;
    padding-top: 0;
    float: none;
}
.header-nav ul li {
  margin: 0 0 1em;
  display: block;
}

.header-nav ul li:nth-child(3){
    margin-right: 0;
    background: none;
}
.header-nav ul li ul {
    width: 100%;
    position: relative;
    visibility: visible;
    background: none;
    display: block;
    height: auto;
    margin: 0;
    padding: 3em 0 0;
    text-align: left;
      opacity: 1;
    top: inherit;
    }
.header-nav ul li ul li {
     font-size: 14px;
    margin: 0 0 1em;
    padding: 0;
  text-align: left;
}
.header-nav ul li ul li a {
  color: #000;
    font-size: 14px;
    font-weight: normal;
}

#gnav {
    width: 90%;
    margin: 0 auto;
    text-align: left;
    float: none;
}
#gnav li{
	margin: 0;
	padding: 0;
	text-align: left;
    font-weight: bold;
	border-bottom: 1px #eee solid;
	font-size: 15px;
}
#gnav > li:nth-child(3){
	padding: 0.7em 1.5em 0;
}
#gnav li a{
	padding: 0.6em 1.5em;
	display: block;
}
#gnav ul{
	padding: 0.3em 0 0;
}
#gnav ul li a{
	padding: 0.7em 2em;
}
	
#gnav ul li:last-child{
	border: none;
}
.header-nav ul li:hover ul li {
  height: inherit;
}

#language {
    width: 90%;
    margin: 0 auto;
	padding: 0 0 10%;
    float: none;
	text-align: center;
}
#language li a{
	padding: 0 20px;
}

    
  .burger-btn{
      display: block;
      width: 39px;
      height: 39px;
      position: absolute;
      right: 20px;
      top: 25px;
      z-index: 3;
  /*   codepenの挙動のため */
    background-color:transparent;
    border:none;
    }
    
@media only screen and (min-width:1px) and (max-width:600px){
  .burger-btn{
      top: 15px;
    }
    }
    
    
    
    .bar{
      width: 30px;
      height: 1px;
      display: block;
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      background-color: #000;
    }
    .bar_top{
      top: 10px;
    }
    .bar_mid{
      top: 50%;
      transform: translate(-50%,-50%);
    }
    .bar_bottom{
      bottom: 10px;
    }
    .burger-btn.close .bar_top{
      transform: translate(-50%,10px) rotate(45deg);
      transition: transform .3s;
    }
    .burger-btn.close .bar_mid{
      opacity: 0;
      transition: opacity .3s;
    }
    .burger-btn.close .bar_bottom{
      transform: translate(-50%,-8px) rotate(-45deg);
      transition: transform .3s;
    }
    .nav-wrapper{
      display: none;
      width: 100vw;
      height: 100vh;
      position: fixed;
      top: 0;
      left: 0;
      z-index: 2;/*キービジュアルと.btn_triggerとの重なりの前後関係を調整*/
		overflow-y: scroll;
     }
     .header-nav{
       background-color:#fff;
        z-index: 2;
           width: 100%;
  height: 100%;
  display: table;
  table-layout: fixed;

      }
     .header-nav .nav-list{
  display: table-cell;
  vertical-align: middle;
  margin: 0;
  padding: 0;
      }
      .header-nav .nav-item{
        margin-right: 0;
        margin-bottom: 40px;
      }
    
    
    
.top_bnr{
  margin: 0 auto;
  width: 90%;
  padding-bottom: 1em;
}

    
.top_info{
   padding: 1.5em 1em;
}
.top_info h2{
  font-size: 1.2em;
  line-height: 1.5;
}
  
.top_info h2 span{
  display: block;
  
}

.top_info h2 span{
  display: block;
}
.top_info h2 em{
  display: block;
  font-size: 0.9em;
}
.top_info h2 strong{
  font-size: 0.8em;
}

  
.top_info .top_info_txt{
  font-size: 1em;
  margin-bottom: 2em;
}

  
.top_info_in{
  display: block;
}

.top_info figure{
  width: 80%;
  margin: 0 auto 1em;
}
.top_info .top_info_txt{
  width: 100%;
}

.top_info .top_info_qr{
  width: 50%;
 margin: 0 auto;
}

.top_info.off .top_info_txt{
  width: 100%;
}

.top_info.off figure{
  width: 40%;
}

#day_info .top_info li span{
  display: block;
}

.top_info_img{
  width: 100%;
}
.top_info_img p span{
  display: block;
}

.top_info_img2{
  width: 100%;
}

  
  
.topics .col{
  display: block;
}
.topics .col figure{
  width: 100%;
  margin-bottom: 1em;
  text-align: center;
}
.topics .col .txt{
  width: 100%;
}

.topics h2 span{
  display: block;
}

  
  
  
.campaign{
  margin: 3em 0 0;
  padding: 3em 0;
  background: #fafaf5;
}
.campaign h2{
  font-size: 1.7em;
}
.campaign h2 span{
  display: block;
}
.campaign .column1{
  width: 100%;
  margin: 0 auto;
}
.campaign p{
  font-size: 1.2em;
  margin-bottom: 1em;
}

  
.campaign .column2{
  display: block;
}
.campaign .column2 .col{
  width: 100%;
  margin-bottom: 3em;
}

  
  
.campaign2 h2{
 font-size: 1.2em;
}
.campaign2 h2 span{
  display: block;
}

.campaign2 h3{
  font-size: 1.1em;
}


  
.campaign2 .campaign_in{
	display: block;
}
.campaign2 .photo{
	width: 100%;
}
.campaign2 .txt{
	width: 100%;
  margin-bottom: 2em;
}

  
#th20_contents h2{
  font-size: 1.2em;
}
#th20_contents h2 span{
  display: block;
  line-height: 1.4;
}
#th20_contents h2 strong{
  font-size: 0.75em;
}
#th20_contents h2 em{
  display: block;
}

  
.headline.th20{
    font-size: 1.5em;
  line-height: 1.4;
}
  
.symposium{
  display: block;
  padding: 1em;
}

.symposium .txt{
  width: 100%;
}
  
.symposium figure{
  width: calc(50% - 10px);
  margin: 0 auto;
}

/*.symposium h2{
  margin-top: 0;
  text-align: center;
  line-height: 1.4;

}
.symposium h2 strong{
  font-size: 0.75em;
}
*/  
  
.symposium dl{
  font-size: 1em;
}
.symposium dd span{
 display: block;
}
  
.btn_list{
  margin-top: 1em;
  display: block;
  align-items: center;
  justify-content: space-between;
}
.btn_list .btn{
  width: 100%;
  margin-bottom:  1em;
}


@media only screen and (min-width:1px) and (max-width:600px){

.symposium h2{
  font-size: 1.15em;
}


}
  
  
  
#talkshow{
  padding: 1em;
  display: block;
}

#talkshow .photo{
  width: calc(50% - 10px);
  margin: 0 auto;
  text-align: center;
}


#talkshow .txt{
  width: 100%;
  margin-bottom: 2em;
}
  
/*#talkshow h2{
  font-size: 1.2em;
}
#talkshow h2 strong{
  display: block;
  line-height: 1.3;
  margin-top: 10px;
}
*/
  
#talkshow p{
  margin: 1em 0 2em;
}

#talkshow dl{
  display: block;
}
#talkshow dt{
  width: 100%;
}
#talkshow dd{
  width: 100%;
  margin-bottom: 1em;
}
  
#talkshow .linkBtn{
  margin: 1em 0 3em;
}

  
.walkingTour{
  display: block;
  padding: 1em;
}

.walkingTour .txt{
  width: 100%;
  margin-bottom: 3em;
}

.walkingTour figure{
  width: calc(50% - 10px);
  margin: 0 auto;
}

.walkingTour dl{
  display: block;
  margin-top: 1em;
}

.walkingTour .linkBtn span{
  display: block;
}

  
  
.apply dd{
  width: 50%;
  margin: 0 auto 10px;
}

  
  

#news h2,
#bear_news h2{
  font-size: 1.5em;
  padding: 1.5em 0 0;
}
#news dl,
#bear_news dl{
	display: block;
}
  
.topics h2{
  font-size: 1.2em;
}


.news_title{
  display: block;
}
.news_title ul{
  justify-content: space-between;
  margin-right: 0;
  margin-top: -1em;
  margin-bottom: 2em;
}
.news_title li a{
  margin: 0;
  padding: 0.5em 1em;
  display: inline-block;
  color: #7ec9c1;
  border: 2px #7ec9c1 solid;
  font-weight: bold;
  border-radius: 10px;
}

  
  

 #top_contents{
	padding-bottom: 5em;
}   

#top_contents section{
    padding-top: 5em;
}
    
#top_contents h2{
    font-size: 1.6em;
}
#top_contents section#about{
    padding-top: 8em;
}
    
#about .inner{
    padding: 2em 0 1em;
    background: linear-gradient(90deg,#fff 5%, #fafaf5 0, #fafaf5 95%, #fff 0);
}

#about h2{
    padding: 0;
    top: 4em;
}

#about h3{
    padding-top: 1em;
    font-size: 1.3em;
    text-align: center;
}
#about ul{
    width: 100%;
}
#about .columnL{
  display: block;
}
#about .columnR{
    display: block;
}
#about .about_txt{
    float: none;
    width: 100%;
    margin-bottom: 5%;
}
#about .columnL ul{
    float: none;
    margin-left: 0;
}
#about .columnR ul{
    float: none;
    margin-right: 0;
}

    
 #course_in{
    min-height: inherit;
    padding-bottom: 3em;
}
.course_map{
    position: relative;
    width: 100%;
}
#course_list{
    max-width: inherit;
    width: 100%;
    margin-top: 0;
    float: none;
}
   
#walk{
    margin-bottom: 3em;
    padding-bottom: 3em;
}
   
    
    
/* .movie dl {
	 bottom: 0;
    padding: 0.2em 1em;
}   
 .movie dt{
    font-size: 0.9em;
}
 .movie dd{
    font-size: 0.6em;
}
*/   
#video .btn_more{
    margin: 1em auto 0;
}


#season{
    margin-bottom: 5em;
}
    
    
  
    
footer{
    padding: 3em 0 0;
	background: #fafaf5;
}
    
    
#ft_info{
    width: 100%;
	max-width: 330px;
	margin: 0 auto 1em;
	float: none;
}

#ft_info p{
    font-size: 0.9em;
    margin-bottom: 2em;
}

#ft_nav{
    width: 100%;
    float: none;
    justify-content: space-between;
	}
	
#ft_nav ul{
	width: 45%;
    margin-left: 0;
    margin-right: 0;
	}
#ft_nav li{
	margin: 0;
}
#ft_nav li a{
	display: block;
	padding: 0.7em 1em;
}
   
	
	
	
	
	
#course_contents h1{
	font-size: 2em;
}
#course_contents h1 rt{
	font-size: 12px;
}
#course_contents h1 span{
	top: 0.7em;
}
#course_contents h1 strong{
  display: block;
}

	
	
#course_contents.inner{
	padding: 8em 0 2em;
}

#course_info{
    display: block;
}
#course_contents .map{
    position: relative;
	top: inherit;
	width: 100%;
	float: none;
}
#course_contents .map_inner {
    width: 100%;
    display: block;
}
#course_contents .map_inner img{
	max-width: inherit;
}
#course_contents .summary{
    width: 100%;
    display: block;
	padding-top: 2em;
	margin-left: 0;
}

@media all and (-ms-high-contrast:none) {
    *::-ms-backdrop, #course_contents .summary{
	padding-top: 2;
}
}

#course_contents .summary_in{
	margin: 0;
	padding: 2em 1.5em;
}
#course_contents p{
	font-size: 0.9em;
	padding: 0;
}
#course_contents th{
	width: 37%;
	font-size: 0.9em;
	padding: 0.7em;
}
#course_contents td{
	padding: 0.7em 0;
	font-size: 0.9em;
	}
#course_contents dt{
	font-size: 1.2em;
}
#course_contents dd{
	font-size: 0.9em;
}

	
	
	
	
	
#contents .column2{
	display: block;
}
#contents .column2 .col{
	margin-bottom: 1em;
	width: 100%;
}

	

#contents h1{
	font-size: 2em;
}
#contents h2{
	font-size: 1.6em;
}
#contents h3{
	font-size: 1em;
}

#contents section{
	margin-bottom: 5em;
}
	
	
	
	
	
#sub ul {
	padding-left: 2em;
}
#main .member dl{
	padding: 1em;
}
#main .member dt{
	font-size: 1em;
}
#main .member dd{
	padding-left: 1em;
	font-size: 0.8em;
}

	
	
	
	
	
	
    

    




  
#event_list .column2-1{
  display: block;
}
#event_list .column2-1 .main{
  width: 100%;
}
#event_list .column2-1 .sub{
  width: 100%;
}



#event_list h3{
  font-size: 1.3em;
}
 
#event_list dl{
  display: block;
  margin-bottom: 10px;
}

  
#event_list .col{
  display: block;
}

#event_list .txt{
  width: 100%;
  margin-bottom: 1em;
}

#event_list figure{
  width: 100%;
}

  
.event{
  padding: 2em 1em;
}
  
  
  
  
#event_list th{
  display: block;
  width: 100%;
	padding: 1em 0 0;
	border-bottom: none;
}
#event_list td{
  display: block;
  width: 100%;
	padding: 0 0 1em;
}



}












@media only screen and (min-width:1px) and (max-width:699px){


#course_contents .pager{
	margin: 5em 0;
	display: block;
	justify-content: space-between; 
}
	
#course_contents .pager a{
	display: block;
}
	
#course_contents .pager .before a{
	border-top: 1px #d6d6d6 solid;
	float: none;
	}

#course_contents .pager .back a{
	text-align: center;
	border-top: 1px #d6d6d6 solid;
	border-bottom: 1px #d6d6d6 solid;
	}
	
#course_contents .pager .next a{
	text-align: right;
	border-top: 1px #d6d6d6 solid;
	float: none;
	}
	
#course_contents .toNavi a{
	padding: 1.7em 2em 1.7em 0;
	background: #7ec9c1 url("../images/i_more.png") no-repeat 95% center;
	font-size: 1em;
	}
	

	
	
	
#club_main{
	padding: 8em 0 2em;
}
#club_main h1{
	margin-bottom: 2em;
}

#club_news{
	display: block;
	padding: 3em 0 0;
} 
#club_news h2{
	width: 100%;
	font-size: 1.6em;
	font-weight: bold;
}
#club_news .col{
	width: 100%;
}
#club_news h4{
	margin-top: 2em;
}
	
#club_news p em{
  margin-top: 1em;
  display: block;
  min-width: inherit;
}

  
  
	
#club_contents{
	display: block;
}
#club_contents.inner{
    width: 100%;
}
#sub{
    width: 100%;
	margin: 0;
	padding-top: 4.5em;

}
#sub ul,
.club_top  #sub ul{
	border-bottom: 1px #eee solid;
	text-align: center;
	padding: 2em 0 1em;
	background: rgba(235,235,235,0.9)
}
#sub li{
	margin: 0 1em 1em;
 display: inline-block;
}

	
	
#main{
    width: 100%;
	padding: 0;
}
.club_top #main {
	padding-top: 0;
}

#main h2{
	padding-top: 1.5em;
	font-size: 2em;
}
#main h3{
	padding-top: 1em;
	font-size: 1.2em;
}
#main h3 span{
	font-size: 0.7em;
}

#main .column{
	margin-top: 0%;
	padding: 1% 5% 5%;
}
#main .sec{
	margin-top: -10em;
	padding-top: 10em;
}
	
	
#sec4 p{
	font-size: 0.8em;
}

.is-fixed {
  position: fixed!important;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
}

#main .member dl{
	display: block;
}
#main .member dt{
	width: 100%;
}
#main .member dd{
	margin-top: 1em;
	width: 100%;
}

#main .benefits dl{
	display: block;
}
#main .benefits dt{
	width: 100%;
	margin-bottom: 1em;
	text-align: center;
}
#main .benefits dd{
	width: 100%;
	margin: 0;
}

#terms_inner{
	padding: 0 1em;
	height: 300px;
}
	
#terms h2{
	font-size: 1em;
}
#terms p{
	margin-bottom: 1em;
}
#terms ol{
	margin-bottom: 1em;
}
	
	
#main table{
	width: 100%;
}
#main th{
	display: block;
	width: 90%;
	padding: 1em 5% 0;
	border-bottom: none;
}
#main td{
	display: block;
	width: 90%;
	padding: 1em 5%;
	border-bottom: 1px #ccc solid;
}

#main h3.year{
	margin-top: 1em;
}

#main .year:after {
  width: 20px;
  height: 20px;
  right: 10px;
  top: 12px;
}
	
	
#supporter_list h3{
	padding: 0;
}
	
#supporter_list .column1-2{
	display: block;
}
#supporter_list .column1-2 .sub{
	width: 100%;
	margin-bottom: 1em;
}
#supporter_list .column1-2 .main{
	width: 100%;

}

	
	

.attention_txt01{
  font-size: 1em;

}
  
.attention_txt01 i,
.attention_txt02 i{
  font-size: 30px;
}
  
.attention_txt02{
  font-size: 1em;
}
.attention_txt02 p{
  font-size: 0.8em;

}

.symposium_title .lead{
  max-width: 800px;
  margin: 0 auto;
  font-size: 1em;
}

.symposium_title .lead span{
  display: inline;
}
  
  .symposium_title h1 span{
    display: block;
  }
	
	
	
	}	
	















@media only screen and (min-width:1px) and (max-width:599px){
    
header{
    height: 75px;
}
 
.header-nav ul li {
  padding: 0;
}
.header-nav ul li ul {
    padding: 1em 0 0
    }
.header-nav ul li ul li {
  padding: 0;
}
    
    
#news{
    margin-bottom: 2em;
    float: none;
    display: block;
    padding-top: 0;
}
#news h2{
    margin-bottom: 0;
    font-size: 1.5em;
}
#day_info{
    margin-bottom: 2em!important;
}
#day_info ul{
    width: 100%;
    margin-bottom: 2em;
    float: none;
    text-align: center;
}
.topics h2{
  font-size: 1.3em;
}

  
.topics{
  padding: 1.5em 5% 0;
}

.information{
  padding: 0 5% 2em;
}


#course_contents.inner{
	padding: 6em 0 2em;
}
    
#course_list ol li{
    font-size: 0.7em;
    line-height: 2;
    }
#course_list ol li span{
    font-size: 12px;
  line-height: 1.9;
}

#course_list p{
    font-size: 0.65em;
}

 .btn_more a{
    font-size: 1em;
}

 #walk li{
    width: 49%;
}
    
	
#ft_nav{
	display: block;
	}
#ft_nav ul{
	width: 100%;
	border-top: 1px #eee solid;
	}
#ft_nav ul:last-child{
	border-top: none;
	}
#ft_nav li{
	border-bottom: 1px #eee solid;
}

	
#copyright{
	padding: 4em 3em 0;
	font-size: 0.8em;
}
 
#copy{
	font-size: 0.85em;
}

#pagetop{
    right: 15px;
    bottom: 15px;
}
#pagetop img{
	width: 50px;
}

	
	
.download figure{
	width: 100%;
	float: none;
	margin: 0 auto 1em;
	text-align: center;
}
.download .txt{
	width: 100%;
	float: none;
}
#contents.download .txt h3{
	text-align: center;
	font-size: 1.2em;
}
.downloadBtn a{
    font-size: 1em;
}
.downloadBtnList li a{
    font-size: 1em;
}


#faq dt{
	padding: 1em 2.5em 1em 3em;
	font-size: 1em;
	background: #7ec9c1 url("../images/icon_q.png") no-repeat 10px 17px;
	background-size: 25px;
	}
#faq dt:after {
  width: 20px;
  height: 20px;
	right: 10px;
	top: 18px;
}

#faq dd{
	font-size: 0.9em;
	padding: 4em 1em 2em 3em;
	background: #fafaf5 url("../images/icon_a.png") no-repeat 10px 60px;
	background-size: 25px;
	}


	
	
	
.tab li {
	width: 49%;
	margin-right: 2%;
}
.tab li:nth-child(2n){
	margin-right: 0;
}
.tab li a {
 padding: 0.5em 0;
}

.tabContents {
	padding: 2em;
}

	
.tabContents th{
	display: block;
	width: calc(100% - 2em);
	padding-bottom: 0;
	border: none;
}
.tabContents td{
	display: block;
}

	
	
	

.tab_item{
  width: calc(15.6% - 2px);
  margin-bottom: 0.5em;

}

	
	
	
#form_layout .column3{
  display: block;
}
#form_layout .column3 .col{
	width: 100%;
  margin-bottom: 3em;
}

#form_layout th{
  display: block;
	width: 100%;
	padding: 1em 0 0;
	border-bottom: none;
  font-size: 0.7em;
}
#form_layout td{
  display: block;
	padding: 0.5em 0 1em;
	border-bottom: 1px #ccc solid;
   font-size: 0.9em;
}
#form_layout td input,
#form_layout td textarea{
	padding: 5px;
  width: calc(100% - 12px);
  box-sizing: border-box;
}


.formBtn input{
   padding: 0.7em 1em;
}

  
  
.topics .column3{
  display: block;
  padding-bottom: 0.1em;
}
.topics .column3 p{
  width: 100%;
  margin-bottom: 2em;
  padding: 0!important;
}

  
  
#walkingtour_list h2{
  font-size: 16px;
}

  
  
#walkingtour_list h3 {
  padding: 1em;
  }
  
#walkingtour_list h3 span {
    display: block;
  margin-bottom: 10px;
  margin-left: -1em;
  }

#walkingtour_list .column1-2{
	display: block;
}
  
#walkingtour_list .column1-2 .sub{
	width: 100%;
}

#walkingtour_list .column1-2 .sub ul{
	display: block;
}

#walkingtour_list .column1-2 .sub li{
  width: 100%;
  margin-bottom: 1em;
}
#walkingtour_list .column1-2 .sub li a{
	display: block;
}
#walkingtour_list .column1-2 .main{
	width: 100%;
  margin-bottom: 2em;

}

  
  
  

  

}
    
   

    
