@charset "utf-8";

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

body {
	font-size: 18px;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif" ;
	line-height: 180%;
	color: #333;
}

.wrap {
	width: 1200px;
	margin: 0 auto;
}

/*floatとclearfix==============================*/

.float_left {float: left;}
.float_right {float: right;}

.clearfix:after {
  display: block;
  clear: both;
  content: "";
}

/*marginとpadding==============================*/

.mb10 {margin-bottom: 10px;}
.mb20 {margin-bottom: 20px;}
.mb30 {margin-bottom: 30px;}
.mb40 {margin-bottom: 40px;}
.mb50 {margin-bottom: 50px;}
.mb60 {margin-bottom: 60px;}
.mb70 {margin-bottom: 70px;}
.mb80 {margin-bottom: 80px;}

.mt60 {margin-top: 60px;}

.pl30 {padding-left: 30px;}
.pl35 {padding-left: 35px;}
.pl45 {padding-left: 45px;}

/*書式==============================*/

.line_height_160 {line-height: 160%;}
.line_height_150 {line-height: 150%;}
.line_height_140 {line-height: 150%;}
.line_height_20px {line-height: 20px;}

.font_size_20 {font-size: 20px;}

.font_size_17 {font-size: 17px;}
.font_size_16 {font-size: 16px;}
.font_size_15 {font-size: 15px;}
.font_size_14 {font-size: 14px;}
.font_size_13 {font-size: 13px;}

.font_size_32 {font-size: 32px;}
.font_size_40 {font-size: 40px;}

.fw_normal {font-weight: normal;}
.fw_bold {font-weight: bold;}

.ta_center {text-align: center;}

.deco_none, .current, .sidebar_right a, .single .main a, .single .main .page_nav a:hover  {text-decoration: none;}
.deco_underline, .single .main a:hover {text-decoration: underline;}

/*色==============================*/

.gray_1, .current p, .sidebar_left a:hover, #implant01 .sidebar_left .implant01, .sidebar_right a:hover, .bottom a:hover, .single .main .page_nav a {color: #333;}
.gray_2 {color: #555;}
.gray_3, .sidebar_left a, .sidebar_right a, .bottom a {color: #777;}
.white, .current .tagplate {color: #FFF;}

.emerald_1 {color: #009688;}
.emerald_2, .single .main a {color: #009688;}
.emerald_3, .single .main a:active {color: #39C4CE;}

.bg_gray_1, .single .main h2 {background-color: #F5F5F5;}
.tagplate.active, .tagplate, .tagplate_l, .current .tagplate {background-color: #333333;}
.bg_gray_2 {background-color: #555555;}
.bg_gray_3 {background-color: #777777;}

.bg_cream_1, .sidebar_left a:hover, .bottom ul li a:hover, .cat_main_loop:hover {background-color: #FFF9E1;}
.bg_cream_2, .current, .sidebar_left .current:hover, .page_nav a:hover, .cat_main_loop a:hover {background-color: #FFF3C4;}

.bg_emerald_1 {background-color: #009688;}
.bg_emerald_2 {background-color: #009688;}
.bg_emerald_3 {background-color: #39C4CE;}


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

.header {
	height: 120px;
	position: relative;
}

.group_logo {
	width: 190px;
	height: 120px;	
	float: left;
}

.group_logo img {
	margin: 30px 0;
}

.area {
	width: auto;
	float: right;
}

.area ul li {
	display: block;
	float: left;
	width: auto;
}

.area ul li a{
	display: block;
	width: auto;
	height: 50px;
	padding: 35px 30px;
	position: relative;
}

/*navホバー時に出る下線==============================*/

header nav p {
	position: absolute;
	bottom: 0;
	width: 100px;
	height: 3px;
}

header nav p.position01 {
	right: 408px;
	background-color: #009688;	
	transition: .1s;
}

header nav p.position02 {
	right: 295px;
	background-color: #009688;
	transition: .1s;
}

header nav p.position03 {
	right: 182px;
	background-color: #009688;
	transition: .1s;
}

header nav p.position04 {
	right: 15px;
	width: 145px;
	background-color: #009688;
	transition: .1s;
}

/*アイキャッチ==============================*/

.cat_eyecatch {
	width: 100%;
	height: 124px;
	background-position: center top;
	background-repeat: no-repeat;
	padding: 83px 0;
}

.cat_eyecatch {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/topics_eyecatch.jpg) ;}

.cat_eyecatch.topics_clinic {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/topics_eyecatch.jpg) ;}
.cat_eyecatch.implant {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/implant_eyecatch.jpg) ;}
.cat_eyecatch.breathcare {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/breathcare_eyecatch.jpg) ;}
.cat_eyecatch.whitening {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/whitening_eyecatch.jpg) ;}
.cat_eyecatch.general {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/general_eyecatch.jpg) ;}
.cat_eyecatch.prevent {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/prevent_eyecatch.jpg) ;}
.cat_eyecatch.dental_esthetic {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/dental_esthetic_eyecatch.jpg) ;}
.cat_eyecatch.pediatric {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/pediatric_eyecatch.jpg) ;}
.cat_eyecatch.periodontal {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/periodontal_eyecatch.jpg) ;}
.cat_eyecatch.dental {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/dental_eyecatch.jpg) ;}
.cat_eyecatch.orthodontic {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/orthodontic_eyecatch.jpg) ;}
.cat_eyecatch.prosthesis {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/prosthesis_eyecatch.jpg) ;}
.cat_eyecatch.clinic_list_eyecatch {background-image: url(../images/column/category_eyecatch_filter.png), url(../images/column/clinic_list_eyecatch.jpg) ;}

.cat_frame {
	height: 124px;
	margin: 2px;
	background-color: rgba(255,255,255,0.8);
}

.cat_outline {
	width: 400px;
	margin: 0 auto;
	border: 1px double rgba(255,255,255,0.8);
}

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

.categories span {
	text-transform: capitalize;
}

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

.sidebar {
	width: 290px;
	position: absolute;
	top: 0;
}

.sidebar_left {
	left: 0;
	min-height: 100%;
}

.sidebar_left ul li a {
	display: block;
	padding: 30px 35px;
}

.sidebar_left ul li {
	border-bottom: 1px solid #FFF;
}

.tagplate {
	padding: 0 15px;
	height: 20px;
	line-height: 20px;
	display: inline-block;
}

.sidebar_left ul li a:hover .tagplate {
    background-color: #333;
}

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

.sidebar_right {
	right: 0;
	background-color: #fff;
}

.sidebar_right ul {
	border-left: 1px dotted #CCC;
}

.sidebar_right ul li a {
	display: block;
	line-height: 1.5;
	padding: 15px 0 15px 25px;
    margin-left: -1px;
	border-left: 1px solid rgba(0,0,0,0);
}

.sidebar_right, .sidebar_right ul:last-child {
	height: 100%;
	z-index: 1;
}

.sidebar_right ul li a:hover {
    	border-left: 1px solid #555;
}

.sidebar_right .current-cat a, .sidebar_right .current-cat a:hover {
	border-left: 1px solid #009688;
	color: #009688;
}

/*アイキャッチより下、フッターより上==============================*/
.wlole_contents {position: relative;}

/*センター==============================*/

.center {
	width: 770px;
	margin: 0 auto;
	padding-bottom: 120px;
}

.tagplate_l {
	display: inline-block;
	padding: 0 30px;
	height: 30px;
	line-height: 30px;
}


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

.main {
	padding-top: 100px;
}

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


.clm_eyecatch img {
    width: 100%;
    height: auto;
}

.single .main ol {
	counter-reset: li;
}
 
.single .main ol li {
	list-style: none;
	position: relative;
	padding-left: 2.5em;
	line-height: 150%;
    margin-bottom: 10px;
    padding-top: 2px;
}


.single .main ol li:before {
	counter-increment: li;
	content: counter(li);
	margin-right: 1em;
	background: #333;
	color: #fff;
	text-align: center;
	width: 30px;
	height: 30px;
	position: absolute;
	left: 0em;
	top: 0px;
	line-height: 30px;
	font-size: 16px;
}

.single .main ul li {
	position: relative;
	padding-left: 1.2em;
	line-height: 150%;
    margin-bottom: 10px;
}

.single .main ul li:before {
    content: "";
	display: block;
    float: left;
    width: 7px;
    height: 7px;
    border: 3px solid #555;
    border-radius: 50%;
    position: absolute;
	left: 0em;
	top: 5px;
}

strong {font-weight: bold !important;}

.single .main h2 {
	height: 100%;
	line-height: 150%;
	padding: 20px 30px;
	margin-top: 60px;
	font-weight: bold;
	font-size: 25px;
	margin-bottom: 30px;
}

.single .main .column_contents h3 {
	padding: 10px 30px;
	margin-top: 45px;
	font-weight: bold;
	font-size: 20px;
	border-bottom: 7px solid #F5F5F5;
	margin-bottom: 30px;
}

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

/*ページナビゲーション==============================*/

.wp-pagenavi a, .wp-pagenavi span {
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
}

.wp-pagenavi a:first-child {
	margin-right: 10px;
}

.wp-pagenavi a:last-child {
	margin-left: 10px;
}

.wp-pagenavi a {
    text-decoration: none;
    color: #333;
}

.wp-pagenavi a:hover {
    background-color: #FFF9E1;
}

.wp-pagenavi a:first-child:hover, .wp-pagenavi a:last-child:hover {
    background-color: rgba(255,255,255,0);
}

.wp-pagenavi {
    text-align: center;
}

/*ページナビゲーション_20180516==============================*/

.pagenavi a, .pagenavi span {
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
}

.pagenavi a:first-child {
	margin-right: 10px;
}

.pagenavi a:last-child {
	margin-left: 10px;
}

.pagenavi a {
    text-decoration: none;
    color: #333;
}

.pagenavi a:hover {
    background-color: #FFF9E1;
}

.pagenavi a:first-child:hover, .pagenavi a:last-child:hover {
    background-color: rgba(255,255,255,0);
}

.pagenavi {
    text-align: center;
}

.pagenavi .next.page-numbers:after {
    content: "\f105";
    font-family: FontAwesome;
}

.pagenavi .prev.page-numbers:before {
    content: "\f104";
    font-family: FontAwesome;
}

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

.bottom ul {
	border-top: 1px solid #BBB;
	margin-top: 10px;
}

.bottom img {
	width: 150px;
	height: 100px;
	display: inline;
}

.bottom ul li {
	border-bottom: 1px dotted #CCC;
}

.bottom ul li .btm_li_link {
	display: block;
	padding: 25px 30px;
	width: 710px;
	height: 100px;
}

.bottom ul li:last-child {
	border: none;
}

.btm-li-inner {
	display: table-row;
}

.va_middle {
	display: table-cell;
	vertical-align: middle;
}

.bottom ul li .btm_li_link:hover .tagplate {
    background-color: #333;
}

/*フッター==============================*/

footer {
	width: 100%;
	height: 110px;
	padding-top: 50px;
	border-top: 1px solid #DDD;
	position: relative;
	z-index: 50;
	background-color: #FFF;
}

footer p {
	text-align: center;
}

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

.category .center {
    padding-top: 30px;
	min-height: 700px;
}

.category .center li {
    border-bottom: dotted 1px #DDD;
}

.category .center li:last-child {
    border-bottom: none;
}

.cat_main_loop {
    display: block;
    width: 710px;
    height: auto;
    padding: 30px;
}

.cat_main_loop img {
	width: 285px;
	height: 190px;
	float: left;
}

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

/* 追加=============================================*/

.column_sp_area {
	display: none;
}

.width_100 {
	width: 100%;
}

.clm_sp_link {
	display: none;
}

/*ハンバーガー==============================*/
.spmenubtn, .spmenu {
	display: none;
}

/*プルダウンメニュー==============================*/
.column_gnav_mega {
	display: block;
	width: 100%;
	overflow: hidden;
	position: absolute;
	left: 0;
	transition: .2s;
	z-index: 1000;
	height: 0px;
	top: 120px;
}

.column_gnav_mega_01.open, .column_gnav_mega_02.open, .column_gnav_mega_03.open, .column_gnav_mega_04.open {
	display: block;
	width: 100%;
	overflow: hidden;
	position: absolute;
	top: 120px;
	left: 0;
	transition: .2s;
	background: rgba(252,252,252,.9);
}

.column_gnav_mega .inner01 {
	width: 1200px;
	margin: 20px auto;
	opacity: 0;
	transition-duration: .2s;
	transition-delay: 0;
}
.column_gnav_mega .inner01.open {
	width: 1200px;
	margin: 20px auto;
	opacity: 1;
	transition-duration: .2s;
}

.column_gnav_mega .inner01 a {
	color: #333;
	text-decoration: none;
}
.column_gnav_mega .inner01 a:hover p:last-child {
	color: #009688;
}

.column_gnav_mega_01.open, .column_gnav_mega_02.open, .column_gnav_mega_03.open {
	height: 450px;
}

.column_gnav_mega_04.open {
	height: 225px;
}

.column_gnav_mega ul li {
	width: 180px;
	height: 200px;
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}

.column_gnav_mega ul li:nth-child(6n) {
	margin-right: 0;
}

.column_gnav_mega ul li p {
	text-align: center;
	font-size: 14px;
	line-height: 135%;
}

.column_gnav_mega ul li p:nth-child(2) span{
	padding: 2px 15px;
	background-color: #009688;
	color: #FFF;
	font-size: 12px;
}

.column_gnav_mega ul li p:nth-child(2) {
	margin-bottom: 7px !important;
}

/*医院一覧==============================*/

.main.clinic_list {
	padding-top: 60px;
}

.single .main h2:first-child {
	margin-top: 0;
}

.main.clinic_list .box01 {
	width: 365px;
	float: left;
	margin-right: 40px;
	margin-bottom: 20px;
}

.main.clinic_list .box01 .pc_link:hover {
	display: block;
	background-color: #FFF9E1;
	text-decoration: none;
	color: #333;
}

.main.clinic_list .box01 .inner01{
	padding: 10px 20px 20px;
}

.main.clinic_list .box01 img{
	width: 100%;
}

.main.clinic_list .box01:nth-child(2n) {
	margin-right: 0;
}

.sp_br {
	display: none;
}

/*404==============================*/
.error {
    padding: 25vh 0;
}

/*sns==============================*/

.single .main .sns_btn a {
    display: block;
    float: left;
    height: 30px;
    margin-right: 5px;
    margin-bottom: 5px;
    width: 100px;
    text-align: center;
    font-size: 13px;
    font-weight: bold;
    color: #FFF;
}

.single .main .sns_btn a i {
    letter-spacing: 5px;
}

.single .main .sns_btn a:hover {
    text-decoration: none;
}

a.fb_share {background-color: #4267B2;}
a.fb_share:hover {background-color: #365899;}

a.twitter {background-color: #1DA1F2;}
a.twitter:hover {background-color: #0C8AD2;}

a.pocket {background-color: #E7364A;}
a.pocket:hover {background-color: #CE223A;}

a.line {background-color: #00B900;}
a.line:hover {background-color: #00A500;}

a.line img {
    width: 20px;
    margin-right: 5px;
    vertical-align: middle;
}


/*子カテゴリー==============================*/

li.cat-item ul.children {display: none;}
