@charset "UTF-8";



#index{
  background-color: #fff;
  counter-reset: section2;
}
#index div{
  height:600px;
	overflow-y:scroll;
}
#index dt{
	background-color: #7db4e6;
	padding: 15px;
	font-weight: bold;
	color: #fff;
	height:60px;
}
#index dd{
	font-size:14px;
	text-indent:calc(-1.6em - 6px);
	padding-left:calc(1.6em + 6px);
}
#index dd::before {
  counter-increment: section2;
  content: counter(section2) "."; 
	display:inline-block;
	/*background-color: #7db4e6;*/
	text-indent:0;
	text-align:center;
	margin-right:5px;
	margin-left:10px;
	height:100%;
}
#index a {
	margin: 0 ;
	padding:10px 10px 10px 0;
	color: #333;
	display:block;
	text-decoration: none;
}
#index a:hover{
	background-color:#E5F1FF;
}
#index a:not(:first-child){
	border-bottom: 1px dotted #ccc;
}



#index > div::-webkit-scrollbar{
  width: 3px;
}
#index > div::-webkit-scrollbar-thumb{
	background: linear-gradient(0deg,#43e2c6,#51a3d0,#43e2c6);
	border-radius: 2px;
}
#index > div::-webkit-scrollbar-track{
	background: #f5f5f5;
	background-color:transparent;
}









#index2{
	z-index:99999;
	background-color: #fff;
	width:100%;
	max-height:calc(100vh - 60px);
	/*overflow-y:scroll;*/
	margin-bottom:40px;
}


#index2::-webkit-scrollbar{
  width: 3px;
}
#index2::-webkit-scrollbar-thumb{
	background: linear-gradient(0deg,#43e2c6,#51a3d0,#43e2c6);
	border-radius: 2px;
}
#index2::-webkit-scrollbar-track{
	background: #f5f5f5;
}


@media only screen and (max-width: 1024px) {
#index2{
	position: static;
	top:0;
	margin-top:40px;
}
}
#index2 dt{
	background-color: #319dd0;
	padding: 10px 16px;
	font-weight: bold;
	color: #fff;
}
#index2 dd{
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-size:14px;
	line-height:1.6;
	position: relative;
	vertical-align:middle;
	display:flex;
	justify-content: space-between;
	align-items: center;
}
#index2 dd .image{
	width:50px;
}
#index2 dd .detail{
	width:calc(100% - 60px);
}
#index2 a.children dd .detail{
	font-size:12px;
	width:100%;
}
#index2 a.children dd .detail::before{
	content: "練習問題";
    background: #666;
    color: #FFF;
	display:inline-block;
	font-size: 11px;
	padding: 10px 8px;
	border-radius:20px;
    background: #319dd0;
	margin-right:0.6em;
    color: #FFF;
    line-height: 0;
    letter-spacing: 0;
}
#index2 a{
	margin-top:-1px;
	padding:8px;
	color: #333;
	display:block;
	text-decoration: none;
	border:solid 1px #e6e6e6;
}

#index2 a.children{
	background-color:#e5f8ff;
	width:calc(100% - 20px);
	margin-left:20px;
}
#index2 a:hover{
	background-color:#e5f8ff;
}
/*#index2 a:not(:first-child){
	border-bottom: 1px dotted #ccc;
}*/
#index2 a:last-child{
	/*border-bottom: none;*/
}




