/*--------------------------------------------------------------
	サイドバーのスタイル
--------------------------------------------------------------*/

#sidebar {
	float: left;
	width: 23%;
}

.page-template-page-a2 #sidebar {
	margin-top: -190px;
}

.widget {

}

.widget__conts,
.list-child {
	margin-bottom: 45px;
}

.pc h3.widget__title {
	position: relative;
	padding-left: 20px;
	font-size: 1.8rem;
	line-height: 1;
	margin-bottom: 10px;
}

.pc h3.widget__title::after {
	position: absolute;
	top: 1px;
	left: 0;
	z-index: 2;
	content: '';
	width: 10px;
	height: 10px;
	border: 3px solid #3cc8c3;
	border-radius: 100%
}


/* 1階層
------------------------- */

.widget__conts li,
.list-child li {
	line-height: 1.4;
	position: relative;
	font-size: 1.5rem;
	border-bottom: 1px solid #ddd;
}

.list-child li.page-item-183 {
	font-size: 1.3rem;
}

.widget__conts li a,
.list-child li a {
	display: flex;
	align-items: center;
	height: 52.5px;
	width: 100%;
	padding-left: 10px;
	padding-right: 20px;
	/*box-sizing: border-box;
	-ms-word-wrap: break-word;
	word-wrap: break-word;*/
}

.widget__conts li.current_page_item a,
.list-child li.current_page_item a,
.list-child li.current a,
#sidebar ul.list-child li ul.sub-menu li.current a {
	background-color: #effaf9;
}

.list-child li#menu-item-894 a,
.list-child li#menu-item-900 a,
.list-child li#menu-item-1539 a,
.list-child li#menu-item-1540 a,
.list-child li#menu-item-1541 a,
.list-child li#menu-item-1586 a,
.list-child li#menu-item-1587 a,
.list-child li#menu-item-1588 a,
.list-child li#menu-item-1589 a,
#sidebar ul.list-child li ul.sub-menu li a {
	background-color: #fff;
}

.list-child li#menu-item-894.current a,
.list-child li#menu-item-900.current a,
.list-child li#menu-item-1539.current a,
.list-child li#menu-item-1540.current a,
.list-child li#menu-item-1541.current a {
	background-color: #effaf9;
}

.widget__conts li a:hover,
.list-child li a:hover {
	color: #3cc8c3;
}

.widget__conts li:first-child,
.list-child li:first-child {
	border-top: solid 1px #ddd;
}

.widget__conts li.widget__layer a,
.list-child li.widget__layer a {
	padding-left: 10px;
}

.widget__conts__parent {
	position: relative;
}

.widget__conts li .triangle,
.widget__banner li .triangle,
.widget__conts li .widget__conts__parent .triangle,
.list-child li .triangle {
	position: absolute;
	top: 48%;
	right: 5%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 2px 0 2px 6px;
	border-color: transparent transparent transparent #3cc8c3;
}

.list-child li#menu-item-893 .triangle,
.list-child li#menu-item-899 .triangle {
	top: 23%;
}

.list-child ul.sub-menu li#menu-item-894 .triangle,
.list-child ul.sub-menu li#menu-item-900 .triangle {
	top: 48%;
}

.list-child li#menu-item-1538 .triangle,
.list-child li#menu-item-1585 .triangle,
.list-child li#menu-item-1600 .triangle,
.list-child li#menu-item-2703 .triangle {
	top: 26px;
}


/* 2階層
------------------------- */


.widget__conts__child,
.list-child li ul.sub-menu {
	margin: 0;
}

.widget__conts__child li,
.list-child li ul.sub-menu li {
	font-weight: normal;
	line-height: 1.4;
	font-size: 1.4rem;
	/*margin-bottom: 18px;*/
	text-align: left;
	position: relative;
	font-size: 1.6rem;
	border-bottom: 1px dashed #ddd;
	margin-left: 15px;
	padding-left: 0;
}

.widget__conts__child li a,
.list-child li ul.sub-menu li a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	height: 52.5px;
	width: 100%;
	/*padding-left: 13px;*/
	/*box-sizing: border-box;
	-ms-word-wrap: break-word;
	word-wrap: break-word;*/
}

.widget__conts__child li:first-child,
.list-child li ul.sub-menu li:first-child {
	border-top: 1px dashed #ddd;
}

.widget__conts__child li:last-child,
.list-child li ul.sub-menu li:last-child {
	border-bottom: none;
}

.widget__banner li {
	position: relative;
	font-size: 1.5rem;
	border-radius: 3px;
	margin-bottom: 15px;
}

.widget__banner li a {
	padding: 20px 15px;
	display: block;
	background-color: #effaf9;
}

.widget__banner li a:hover {
	background-color: #e2f6f4;
}

.fa-file-text-o,
.widget__banner .fa-calendar-check-o,
.fa-book {
	color: #3cc8c3;
}


@media (max-width: 1000px) and (min-width: 768px){
	#sidebar .sp {
		display: block;
	}
}


@media screen and (max-width: 1000px) {
	#sidebar {
		float: none;
		width: 100%;
		padding: 0 20px;
	}
	#sidebar .pc {
		display: none;
	}
	.blog #sidebar,
	.page-template-page-a2 #sidebar {
		display: block;
		float: none;
		width: 100%;
		padding: 0 15px;
		margin-top: 0px;
	}
	#sidebar .widget {
		margin: 0 0 40px;
	}

	#sidebar ul.list-child,
	.page ul.linkInPage__sp	{
		display: none;
	}
	#sidebar ul.list-child li,
	.temp__wrap .sp ul.linkInPage__sp li	{
		line-height: 1.4;
		position: relative;
		font-size: 1.6rem;
		width: 100%;
		border-bottom: solid 1px #ddd;
		margin: 0;
	}

	#sidebar ul.list-child li a,
	.temp__wrap .sp ul.linkInPage__sp li a {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		/*border-bottom: solid 1px #3cc8c3;*/
		height: 52.5px;
		width: 100%;
		box-sizing: border-box;
		-ms-word-wrap: break-word;
		word-wrap: break-word;
		padding-left: 10px;
	}

	#sidebar ul.list-child li ul.sub-menu {
		margin-left: 15px;
	}

	#sidebar ul.list-child li ul.sub-menu li a {
		background-color: #fff;
	}

	#sidebar ul.list-child li ul.sub-menu li:last-child {
		border-bottom: none;
	}

	#sidebar .widget h3.page__menu,
	.temp__wrap .sp .page__menu {
		background-color: #daf5f8;
		height: 48.5px;
		border-radius: 3px;
		text-align: center;
		padding-top: 20px;
		position: relative;
		margin: 0;
		font-size: 1.7rem;
		font-weight: 400;
		line-height: 1.7;
	}

	.temp__wrap .sp .page__menu {
		padding-top: 13px;
	}

	/*メニュー右の＋ボタン*/

	#sidebar .widget h3 span,
	.temp__wrap .sp .page__menu span {
		position: absolute;
		top: 0;
		right: 0;
		display: block;
		height: 62.5px;
		width: 35.5px;
	}

	.temp__wrap .sp .page__menu span {
		height: 48.5px;
	}

	#sidebar .widget h3 span::before,
	#sidebar .widget h3 span::after,
	.temp__wrap .sp .page__menu span::before,
	.temp__wrap .sp .page__menu span::after {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		display: block;
		background-color: #3cc8c3;
		content: '';
		margin: auto;
		-webkit-transition: all 0.4s;
		transition: all 0.4s;
	}

	#sidebar .widget h3 span::before,
	.temp__wrap .sp .page__menu span::before {
		height: 2px;
		width: 13.5px;
	}

	#sidebar .widget h3 span::after,
	.temp__wrap .sp .page__menu span::after {
		height: 13.5px;
		width: 2px;
	}

	#sidebar .widget span.open::after,
	.temp__wrap .sp .page__menu span.open::after {
		opacity: 0;
	}

	/*メニュー右の＋ボタン　ここまで*/

	#sidebar ul.list-child li .triangle,
	.temp__wrap .sp ul.linkInPage__sp li .triangle {
		position: absolute;
		top: 26px;
		right: 3%;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 2px 0 2px 6px;
		border-color: transparent transparent transparent #3cc8c3;
	}
}


@media screen and (max-width: 767px) {
	#sidebar .widget h3 span {
		height: 52.5px;
	}
	#sidebar .widget h3.page__menu {
		height: 38.5px;
		padding-top: 14px;
	}
}
