@charset "utf-8";

/*
Theme Name: group_sites
Author: Tokushinkai
Version: 1.0
*/

@media (max-width: 1450px){

	.sidebar_left {
		display: none;
	}
	
	.center{
		margin: 0 0 0 5%;
	}
	
	.wrap {
		width: 90%
	}

}


@media (max-width: 1400px){

	.center{
		width: 680px;
	}
	
	.bottom ul li .btm_li_link, .cat_main_loop {
	width: 620px;
}

	.sidebar_right {
		width: 240px;
	}
	
	.column_gnav_mega, .column_gnav_mega .inner01, .column_gnav_mega .inner01.open,
	.column_gnav_mega_01.open, .column_gnav_mega_02.open,
	.column_gnav_mega_03.open, .column_gnav_mega_04.open {
	display: none;
}
	
	.main.clinic_list .box01 {
	width: 47%;
	float: left;
	margin-right: 6%;
}

.cat_main_loop img {
	width: 255px;
	height: auto;
}

.cat_main_loop .right {
    width: 320px;
	height: auto;
}
	
}


@media (max-width: 1060px){
    
.center{
		width: 90%;
		padding-bottom: 0;
	}

/*右サイドバー==============================*/

.sidebar_right {
	position: relative;
	width: 90%;
	margin: 0 auto;
}	

.sidebar_right ul {
	border-left: none;
	display: table;
	width: 100%;
	margin-bottom: 80px;
}

.sidebar_right ul li {
	display: inline-block;
	width: calc(25% - 2px);
	height: 50px;
	padding: 0;
	margin: 0;
	line-height: 50px;
	border-left: none;
	border-bottom: 1px solid #DDD;
	border-right: 1px solid #DDD;
	float: left;
	
}
	
.sidebar_right ul li:nth-child(4n-3) {
	border-left: 1px solid #DDD;
}
	
.sidebar_right ul li:nth-child(1),
.sidebar_right ul li:nth-child(2),
.sidebar_right ul li:nth-child(3),
.sidebar_right ul li:nth-child(4)
	{
	border-top: 1px solid #DDD;
}
	
.sidebar_right ul li a {
	display: block;
	padding-left: 0;
	text-align: center;
    margin-left: 0;
	border-left: none;
    text-decoration: underline;
}

.sidebar_right ul li a:hover {
    border-left: none;
	text-decoration: underline;
    background-color: #FFF9E1;
}

.sidebar_right .current-cat a, .sidebar_right .current-cat a:hover {
	border-left: none;
    color: #333;
	background-color: #FFF3C4;
}

/*header==============================*/

	.area {
		display: none;
	}

	.header {
		height: 80px;
	}
	
	.group_logo {
		height: 80px;
		margin: 0 auto;
	}

	.group_logo img {
		margin: 10px 0;
	}
	
/*中央下部のおすすめ記事==============================*/

.bottom ul li .btm_li_link {
	width: calc(100% - 60px);
}

/*カテゴリーページ==============================*/

.category .center {
	min-height: 0;
}

.cat_main_loop {
    width: calc(100% - 60px);
    height: auto;
    padding: 30px;
}

.cat_main_loop .right {
    width: calc(100% - 330px);
    height: auto;
	float: left;
}

/*ハンバーガー==============================*/

.spmenubtn {
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	width: 80px;
	height: 80px;
	margin: 0;
	border-left: 1px dotted #DDD;
	}
	
.spmenubtn a {
	display: block;
	width: 100%;
	height: calc(100% - 22px);
	padding-top: 22px;
	text-decoration: none;
	}

.menu-trigger p {
		display: block;
		width: 40px;
		margin: 0 auto;
		height: 3px;
		background-color: #777;
		margin-bottom: 8px;
	}
	
.menu-trigger p:last-child {
		background-color: rgba(255,255,255,0);
		font-size: 8px;
		line-height: 150%;
		letter-spacing: 4px;
		color: #777;
	}

.menu-trigger.active p {
	display: none;
	}

.spmenu {
		display: block;
		position: fixed;
		top: 0;
		right: -360px;
		width: 290px;
		background: rgba(255,255,255,.0);
		height: 100%;
		transition: .2s;
		z-index: 10000;
		padding: 100px 22px 0;
	}

.spmenu.open {
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		width: 290px;
		background: rgba(252,252,252,.9);
		height: 100%;
		transition: .2s;
		z-index: 10000;
	}
	
.menu-trigger.active {
		position: fixed;
		top: 22px;
		right: 22px;
		width: 50px;
		height: 50px;
		z-index: 15000;
	}
	
.spmenubtn.active {
		z-index: 12000;
		border: none;
	}
	
.spmenubtn p.closetxt{
		display: none;
		font-size: 10px;
		text-align: center;
	}
	
.spmenubtn.active p.closetxt{
		display: block;
		font-size: 50px;
		text-align: center;
		color: #777;
		position: fixed;
		top: 22px;
		right:22px;
		z-index: 12000;
	}
	
.spmenubtn.active p.closetxt span{
		font-size: 10px;
		position: fixed;
		top: 45px;
		right: 30px;
	}
	
.spmenu ul li a{
	display: block;
	width: calc(100% - 50px);
	line-height: 66px;
	background-color: #FFF;
	margin-bottom: 15px;
	color: #777;
	text-decoration: none;
	font-size: 15px;
	padding: 0 25px;
	}

.spmenu ul li a:hover{
	color: #009688;
	}

.close {
		transition: .5s;
	}
}


@media (max-width: 768px){

/*右サイドバー==============================*/
	
.sidebar_right ul li {
	width: calc(50% - 2px);
}
	
.sidebar_right ul li:nth-child(2n-1) {
	border-left: 1px solid #DDD;
}
	
.sidebar_right ul li:nth-child(3),
.sidebar_right ul li:nth-child(4)
	{
	border-top: none;
}
	
/*アイキャッチ==============================*/

.cat_eyecatch {
	padding: 40px 0;
}
    
.cat_eyecatch.topics {background-image: url(../images/column/topics_eyecatch.jpg) ;}
.cat_eyecatch.implant {background-image: url(../images/column/implant_eyecatch.jpg) ;}
.cat_eyecatch.whitening {background-image: url(../images/column/whitening_eyecatch.jpg) ;}
.cat_eyecatch.general {background-image: url(../images/column/general_eyecatch.jpg) ;}
.cat_eyecatch.prevent {background-image: url(../images/column/prevent_eyecatch.jpg) ;}
.cat_eyecatch.dental_esthetic {background-image: url(../images/column/dental_esthetic_eyecatch.jpg) ;}
.cat_eyecatch.pediatric {background-image: url(../images/column/pediatric_eyecatch.jpg) ;}
.cat_eyecatch.dental {background-image: url(../images/column/dental_eyecatch.jpg) ;}
.cat_eyecatch.orthodontic {background-image: url(../images/column/orthodontic_eyecatch.jpg) ;}
.cat_eyecatch.prosthesis {background-image: url(../images/column/prosthesis_eyecatch.jpg) ;}
.cat_eyecatch.clinic_list_eyecatch {background-image: url(../images/column/clinic_list_eyecatch.jpg) ;}

.cat_outline {
	width: 80%;
}

.categories {
	padding-top: 40px;
	line-height: 80%;
}

/*中央下部のおすすめ記事==============================*/

.bottom img {
	width: 100%;
	height: auto;
	display: block;
	margin: 0 auto 15px;
}

.bottom ul li .btm_li_link {
	display: block;
	padding: 25px 0 0;
	width: 100%;
	height: auto;
	pointer-events: none;
	text-decoration: none;
}

.btm-li-inner {
	display: block;
}

.va_middle {
	display: block;
	padding: 0;
}

.clm_sp_link {
	display: block;
	text-align: right;
	padding: 0 0 20px;
	}

.clm_sp_link a, .main.clinic_list .clm_sp_link a {
	color: #009688;
	text-decoration: underline;
	}
	
.clm_sp_link a:hover {
	color: #009688;
	text-decoration: underline;
	background-color: rgba(255,255,255,0) !important;
	}


/*メイン(記事部分)==============================*/

.main {
	padding-top: 50px;
}

/*.main time {
	margin-left: 10px;
}*/

.single .main .column_contents h3 {
	padding: 10px 0px;
}

.single .main  h1 {
	font-size: 28px;
	font-weight: bold;
}

.main .column_contents p, .single .main .column_contents ul, .single .main .column_contents ol {
	padding-left: 0px;
}


/*カテゴリーページ==============================*/

.cat_main_loop {
    width: 100% ;
    height: auto;
    padding: 30px 0;
	pointer-events: none;
	text-decoration: none;
}

.cat_main_loop .right {
    width: 100%;
    height: auto;
	float: none;
	padding: 20px 0 0;
}	


.cat_main_loop img {
	width: 100%;
	height: 100%;
	float: none;
}

.cat_main_loop .emerald_2 {
	color: #555;
	}

.cat_main_loop .bg_emerald_2 {
	background-color: #555;
	}

/*ハンバーガー==============================*/

.header, .group_logo  {
		height: 50px;
	}

.group_logo img {
		height: 40px;
		width: auto;
		margin: 5px 0;
	}

.menu-trigger p {
		width: 30px;
		height: 2px;
		margin-bottom: 5px;
	}
	
.menu-trigger p:last-child {
		font-size: 10px
	}

.spmenubtn {
	float: right;
	width: 50px;
	height: 50px;
	margin: 0;
	z-index: 3000;
	}
	
.spmenubtn a {
	height: calc(100% - 11px);
	padding-top: 11px;
	}

.menu-trigger p:last-child {
		background-color: rgba(255,255,255,0);
		margin-top: 5px;
		font-size: 8px;
		letter-spacing: 0;
        text-align: center;
        margin: 5px auto 0;
	}

.spmenu {
		visibility: hidden;
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		width: 90%;
		height: 100%;
		transition: .2s;
		z-index: -10000;
		padding: 100px 5%;
		opacity: 0;
	}
	
.spmenu a span {
		display: none;
	}

.spmenu.open {
		visibility: visible;
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		width: 90%;
		height: 100%;
		padding: 100px 5%;
		transition: .2s;
		z-index: 10000;
		opacity: 1;
	}
	
.menu-trigger.active {
		position: fixed;
		top: 0px;
		right: 0px;
		width: 50px;
		height: 50px;
		z-index: 15000;
	}

.spmenubtn p.closetxt{
		display: none;
		font-size: 10px;
		text-align: center;
	}
	
.spmenubtn.active p.closetxt{
		display: block;
		font-size: 44px;
		text-align: center;
		color: #777;
		position: fixed;
		top: 11px;
		right: 5px;
		z-index: 12000;
	}
	
.spmenubtn.active p.closetxt span{
		font-size: 10px;
		position: fixed;
		top: 35px;
		right: 11px;
	}

/*医院一覧==============================*/
    
.main.clinic_list .box01 {
	width: 100%;
	float: none;
	margin-right: 0;
}

.main.clinic_list .box01 .inner01{
	padding-bottom: 0;
}

.pc_link {
	pointer-events: none;
	}

.pc_link .inner01 {
	color: #333;
	}
	
.single .main h2 span {
	display: none;
}

.sp_br {
	display: inline;
} 
    
    
}
  

	