/*----------------------------------------------

	#header

----------------------------------------------*/

#header{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem;
}

#logo{
    order: 2;
    width: calc(84% - 100px);
}
#logo img{
    width: 100%;
    height: auto;
}

#ris_logo {
    order: 1;
    width: 16%;
}
#ris_logo img{
    width: 100%;
    height: auto;
}

.call_nav{
    order: 3;
	display:block;
	top:16px;
	right:10px;
	display:block;
	background:#65E1E6;
	color: #ffffff;
	padding: 5px 10px;
	box-sizing:border-box;
	text-decoration:none;
	color: #ffffff;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	text-shadow:
	0px -1px 1px rgba(000,000,000,0.2),
	0px 1px 0px rgba(255,255,255,0.3);
}



/*----------------------------------------------

	#nav

----------------------------------------------*/

#nav{
	display:none;
}
#nav > ul{
	list-style: none;
	margin:0 auto .5em;
}

#nav > ul > li{
	width:100%;
    background: #65E0E5	;
}
#nav > ul > li > a{
	display:block;
	height:44px;
	width:100%;
	line-height:44px;
    background: #65E0E5	;
    border-bottom:dotted 1px #FFF;
    text-align:center;
    color:#FFF;
    text-decoration:none;
}
#nav > ul > li > a::before{
    content: "▼ ";
}
#nav a{
    color:#FFF;
    text-decoration:none;
}

#nav a:link,
#nav a:visited{
    background: #65E0E5;
}

#nav a:hover,
#nav a:active{
    background: #AEF4F4;
}

#nav > ul > li > ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: .5em 1em;
    gap:0 1em;
}
#nav > ul > li > ul li{
}

#main_img{
	clear:both;
	margin:0 auto 1em;
}

#main_img img{
	width:100%;
	height:auto;
}

#footer_sitemap{
	display:none;
}

.global_nav{
    display:none;
}

/*----------------------------------------------

	#footer

----------------------------------------------*/
#footer{
	padding-bottom: 60px;
}

#footer_logo {
	padding-left: 1em;
	width: 190px;
	height: 20px;
	overflow:hidden;
	float:left;
}

#footer_logo a{
	display:block;
	padding-top:40px;
	background:url(images/footer_logo.png) no-repeat scroll left top;
}


#footer_ris_logo {
	text-align:right;
	margin:0 0 1em;
}


#footer_nav{
	background: #e0cab0;
	padding:0.5em;
	margin:0 auto 0 0;
	font-size: 12px;
}

#footer_nav li{
	display:inline-block;
	text-align:left;
}

#footer_nav li a{
	display:block;
	padding:0 1em;
	color:#5f3300;
	text-decoration:none;
	border-right:solid 1px #5f3300;
}

#footer_sp_nav{
    display: block;
	background: #e0cab0;
	padding:0.5em;
	margin:0 auto 1em 0;
	font-size: 12px;
}
#footer_sp_nav li{
	display:inline-block;
	text-align:left;
}

#footer_sp_nav li a{
	display:block;
	padding:0 1em;
	color:#5f3300;
	text-decoration:none;
	border-right:solid 1px #5f3300;
}

#copy{
	font-size:12px;
}

/*----------------------------------------------

	layout

----------------------------------------------*/
#contents{}


/*----------------------------------------------

	article

----------------------------------------------*/
.article{
}

/*----------------------------------------------

	aside

----------------------------------------------*/
.aside{
}

/*-----------------------------------

	バナーリンク

-----------------------------------*/

.link_aside {
	background: url(images/link_aside_bg.png) repeat scroll left top;
	padding:1em 0;
}

.link_aside ul{
	width:100%;
	margin:0;
	font-size:0;
}
.link_aside li{
	display:inline-block;
	width:48%;
	margin:1%;
}
.link_aside li a{
	display:block;
	width:100%;
	margin:0 auto;
}
.link_aside li img{
	width:100%;
	height:auto
}


/*----------------------------------------------

	Topics

----------------------------------------------*/
#topics {
	position:relative;
	border: solid 2px #C7B299;
	box-sizing:border-box;
	margin-bottom:3em;
	background:#FFF;
}

#topics h2{
	display:inline-block;
	background:#F18599;
	color:#FFF;
	font-size:16px;
	padding:0 1em;
	margin:0 0 1em 1em;
}
#topics h2 span{
	font-size:12px;
}
#topics .view_list{
	position:absolute;
	top:.5em;
	right:1em;
}

.topics_list{
	padding:1em 0;
	border-top:dotted 1px #666;
}
.topics_list dt{
	position:relative;
	margin: 0 0 .5em 0;
	padding-left:.6em;
	color:#F28C9F;
}
.topics_list dt:before{
	display:block;
	position:absolute;
	top:7px;
	left:0;
	content:"";
	border-left:solid 4px #65E0E5;
	border-top:solid 4px transparent;
	border-bottom:solid 4px transparent;
	height:0;
	width:0;
	line-height:1;
	
}
.topics_list dd{
	border-bottom:dotted 1px #666;
	padding-bottom: 0.4em;
	margin-bottom: .4em;

}
.topics_list dd a{
	display:block;
	text-decoration:none;
}
.topics_list dt .topi_ico{
	color:#FFF;
	display:inline-block;
	padding: 0 .5em;
	font-size: 12px;
	font-weight:normal;
	margin:0 0 0 1em;
}


/*-----------------------------------

	今月の写真トップ

-----------------------------------*/
#top_photo_gallery{
	background: #FFF url(images/photo_gallery_frame.png) repeat scroll left top;
	padding: 6px;
}
#top_photo_gallery_wrap{
	background: #E2FFF0 url(images/photo_gallery_bg.png) repeat scroll left top;
	position: relative;
	padding-bottom:1em;
}

#top_photo_gallery h2{
	display:inline-block;
	background:#65E0E5;
	color:#FFF;
	font-size:16px;
	padding:0 1em;
	margin:0 0 1.5em ;
}
#top_photo_gallery h2 span{
	font-size:12px;
}
#top_photo_gallery .view_list{
	position:absolute;
	top:.5em;
	right:1em;
}

#top_photo_new{
	margin:0 0 1em;
}

#top_photo_new img{
	display:block;
	width:90%;
	height:auto;
	border:solid 6px #FFF;
	margin:0 auto;
	box-shadow:rgba(0, 0, 0, 0.2) 4px 4px 5px 0px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.2) 4px 4px 5px 0px;
	-moz-box-shadow:rgba(0, 0, 0, 0.2) 4px 4px 5px 0px;
	transform: rotate(3deg);
	-moz-transform: rotate(3deg);
	-webkit-transform: rotate(3deg);
	-o-transform: rotate(3deg);
	-ms-transform: rotate(3deg);
}

#top_photo_detail{
	position:relative;
	width:90%;
	margin:0 auto;
}

#top_photo_detail dt{
	display:block;
	border-bottom:dotted 1px #998675;
	padding-left:.6em;
	font-weight:bold;
}


#top_photo_detail dt:before{
	display:block;
	position:absolute;
	top:7px;
	left:0;
	content:"";
	border-left:solid 4px #F28C9F;
	border-top:solid 4px transparent;
	border-bottom:solid 4px transparent;
	height:0;
	width:0;
	line-height:1;
}

#top_photo_detail dd{

}

#top_photo_detail dd a{
	display:block;

}

/*-----------------------------------

	ページレイアウト

-----------------------------------*/
.aside{
	display:none;
}

#contents_page {
	width:98%;
}

#chiri .page_title:after{
	position:absolute;
	content:"";
	background:url(images/page_ico_chiri_sp.png) no-repeat;
	width:80px;
	height:76px;
	left:0px;
	top:-8px;
}



/*-----------------------------------

	汎用クラス

-----------------------------------*/

.page_title{
	padding:4px 0 0 76px;
	margin-bottom:1em;
}
.article .article_photo_list{
	list-style:none;
	margin:0 auto 1em;
}
.article .article_photo_list li{
	margin:0 auto 1em;
	padding:0;
	background-image:none;
}

.article .article_photo_list img{
	width:100%;
	height:auto;

}

.article .article_photo img{
	width:100%;
	height:auto;
}

img.fl_right,
img.fl_right{
	display:block;
	width:100%;
	height:auto;
	margin-bottom:1em;
}

/*-----------------------------------

	分野

-----------------------------------*/

.bunya_photo{
	margin:0 auto 1em;
}

.bunya_photo img{
	width:100%;
	height:auto;
	margin:0 auto 1em;
}

/*-----------------------------------

	興味

-----------------------------------*/
#keyword_list{
	margin:0;
}

#keyword_list li{
	background:none;
	padding:0;
	margin:0 0 1em;
	width:50%;
	height: auto;
	float:left;
	box-sizing:border-box;
	padding:0 .5em;
}
#keyword_list li img{
	display:block;
	width:100%;
	height: auto;
}

/*-----------------------------------

	カリキュラム一覧

-----------------------------------*/

.clc_data{
	width:100%;
	border-collapse:collapse;
}

.clc_data th,
.clc_data td{
	font-size:12px;
}
.clc_data tbody{
}

.clc_data td{
}

.clc_credit{
	text-align:center;
}

/*-----------------------------------

	今月の地理写真

-----------------------------------*/

#month_view_list{
	border-top:solid 1px #CCC;
}
#month_view_list li{
	border-bottom: solid 1px #CCC;
}
#month_view_list .mv_list_img{
	width:120px;
	height:auto;
	float:left;
	padding-right:1em;
}
#month_view_list h2{
	line-height:1.2;
	padding-right:1em;

}
#month_view_list p{
	margin:0 auto .5em;
}


#wall_map iframe{
	width:100%;
	height:250px;
}


/*-----------------------------------

	more_link

-----------------------------------*/
.more_link{}
.more_link_title img{
	width:100%;
	height:auto;
}

.more_link ul{
		border:solid 1px #65e0e5;
		margin:0;
		padding:.5em 1em;
		overflow:hidden
}
.more_link li{
	position:relative;
	line-height:44px;
	border-bottom:dotted 1px #CCC;
}
.more_link li:last-child{
	border-bottom:none;
}

.more_link li a{
	display:block;
	padding:0 3em;
	text-decoration:none;
}

.more_link li a:before{
	position:absolute;
	top:4px;
	left:0;
	content:"";
	width:27px;
	height:30px;
	background:url(images/ico_hirameki.png) no-repeat;
}

.more_link li a:after{
	position:absolute;
	top:12px;
	right:0;
	content:"";
	width:32px;
	height:22px;
	background:url(images/ico_arrow_right.png) no-repeat;
}


/*-----------------------------------

	nav_list

-----------------------------------*/

.article .nav_list{
	list-style: none;
	margin: 0;
}
.article .nav_list li {
	border-bottom: 1px dotted #CCC;
	line-height:3;
	background-image:none;
	padding:0;
}
.article .nav_list li a{
	position:relative;
	display:block;
	padding-left: 1em;
	text-decoration:none;
}

.article .nav_list li a:link,
.article .nav_list li a:visited{
	background:#FFF;
}

.article .nav_list li a:hover,
.article .nav_list li a:active{
	color:#FFF;
	background-color:#65E0E5;
}

.article .nav_list li a:before{
	display:block;
	position:absolute;
	top:16px;
	right:10px;
	content:"";
	border-right:solid 1px #999;
	border-bottom:solid 1px #999;
	height:10px;
	width:10px;
	line-height:1;
	transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
}

.article .nav_list li a[href*="http"]:after{
	display:inline-block;
	content:" ";
	background: url(images/ico_outlink.gif) no-repeat left top;
	width:17px;
	height:15px;
	margin-left:1em;
}


/*------------------------

     必要な能力

------------------------*/

.skill_row{
    flex-direction: column;
}

.skill_row figure{
    margin: 0 auto;
}


.staff_info{
	flex-direction: column;
	padding: .5em;
}
.staff_name{
	font-size:20px;
}
.article .staff_info_field{
	margin-top:.25em;
	padding:.25em 0 0 0;
	border-left:none;
	border-top:dashed 1px #CCC;
	font-size: 12px;
}


/*-----------------------------------

	書籍紹介

-----------------------------------*/
.article ul.book_list{
    margin: 0;
}
.article ul.book_list li{
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-align: right;
}
.article ul.book_list li + li{
    margin-top: 2em;
}
.article ul.book_list li::after{
    content:"";
    clear: both;
}
.article ul.book_list li figure{
    float: left;
    margin: 0 1em 1em 0;
}
.article ul.book_list li figure img{
    width: 80px;
    height: autop;
}
.article ul.book_list li .btn{
    display: inline-block;
    margin: 0 0 0 auto;
}

.article ul.book_list li h3,
.article ul.book_list li table{
    margin-left: 100px;
    text-align: left;
}
.article ul.book_list li table td{
    max-width: 100%;
}
.article ul.book_list li .btn{
    padding: 6px 12px;
}

/*=============== sticky_nav ===============*/
.sticky_nav {
  position: fixed;
  bottom: 0;
  left: 0;
  text-align: center;
}
.sticky_nav a {
  font-size: 12px;
  letter-spacing: 0;
  padding: 1em 2em;
}
.sticky_nav a:before,
.sticky_nav a+ a:before {
  margin-right: .5em;
}
