/*==============================================================
トップページ
==============================================================*/
/*==============================================================
コンテンツ
==============================================================*/

.top-main-area {
	width:100%;
	max-width:1200px;
	margin-top:40px;
	margin-left:auto;
	margin-right:auto;
}

.top-main-area .pic{
}


.top-main-text {
	display:flex;
	justify-content:space-between;
	margin-top:60px;
	margin-bottom:60px;
}

.top-main-area h1{
	font-size:1em;
	font-weight:normal;
	line-height:1.8;
}

.read-more-position {
	align-self:flex-end;
}


/* read more ボタン */

a.read-more {
    display: inline-block;
    position: relative;
	color:#000;
	text-decoration:none;
}

a.read-more:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -3px;
    border-bottom: 2px solid #333;
	transition:all 0.3s;
}


a.read-more:hover {
	color:#666;
	transition:all 0.3s;
}

a.read-more:hover:after {
    border-bottom: 2px solid #666;	
}


/**/

.bgc {
/*	background:#F9FBFB; */
	padding-top:90px;
	padding-bottom:90px;
}

.top-area {
	display:flex;
	justify-content:space-between;
	width:100%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}

.top-direction-reverse {
	flex-direction:row-reverse;
}


.top-area .pic{
}

.top-area .menu{
	display:flex;
	align-items:flex-start;
}


.top-title {
	font-size:1.5em;
	letter-spacing:0.1em;
	font-weight:bold;
	color:#333;
	display:inline-block;
	position:relative;
	margin-bottom:20px;
}

.top-title:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0px;
    border-bottom: 6px solid rgba(0,0,0,0.08);
	transition:all 0.3s;
}

a.top-sub-title .top-title:hover {
	color: #000;
	transition:all 0.3s;
}

a.top-sub-title .top-title:hover:after {
    border-bottom: 6px solid rgba(0,0,0,0.3);
	transition:all 0.3s;
}


/**/

.top-area .menu ul{
	margin-top:20px;
	font-size:0.9em;
}

.top-area .menu ul li{
	margin-bottom:20px;
}

.top-area .menu ul li:last-child{margin-bottom:0px;}

.top-area .menu ul li a{
	display:inline-block;
	color:#000;
	position:relative;
	text-decoration:none;
}

.top-area .menu ul li a:after{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    border-bottom: 1px solid rgba(0,0,0,0.2);
	transition:all 0.3s;
}


.top-area .menu ul li a:hover{
	color:#000;
}


.top-area .menu ul li a:hover:after{
    border-bottom: 1px solid rgba(0,0,0,0.7);
	transition:all 0.3s;
}


/**/
.top-area .menu ul li .ex a:after{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    border-bottom:none;
	transition:all 0.3s;
}



/*SPのみリンク*/

.link-sp {
	pointer-events: none;
}


/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {

.top-main-area {
	width:100%;
	max-width:1200px;
	margin-top:20px;
	margin-left:auto;
	margin-right:auto;
}
	
	
.top-main-text {
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	width:90%;
	margin-left:auto;
	margin-right:auto;
	margin-top:30px;
	margin-bottom:30px;
}


.top-main-area h1{
	font-size:1em;
	font-weight:normal;
	line-height:1.8;
}

.read-more-position {
	align-self:flex-end;
	margin-top:10px;
}


/**/

.bgc {

	padding-top:30px;
	padding-bottom:30px;
}


.top-area {
	display:flex;
	flex-wrap:wrap;
	flex-direction: column-reverse;
	justify-content:space-between;
	width:90%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}

.top-direction-reverse {
	flex-direction:column-reverse;
}

.top-area .pic{
}

.top-area .menu{
	display:flex;
	align-items:flex-end;
	margin-top:20px;
}


.top-title {
	font-size:1.5em;
	letter-spacing:0.1em;
	font-weight:bold;
	color:#333;
	display:inline-block;
	position:relative;
	margin-bottom:20px;
}

.top-title:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0px;
    border-bottom: 6px solid rgba(0,0,0,0.08);
	transition:all 0.3s;
}

/**/


.top-area .menu ul{
	display: none;
/*	display:flex;
	flex-wrap:wrap;
	margin-top:20px;
	font-size:1.1em;
*/
}

.top-area .menu ul li{
	flex-basis:50%;
	margin-bottom:20px;

}

.top-area .menu ul li:last-child{margin-bottom:0px;}

.top-area .menu ul li a{
	display:inline-block;
	color:#000;
	position:relative;
	text-decoration:none;

}

.top-area .menu ul li a:after{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    border-bottom: 1px solid rgba(0,0,0,0.2);
	transition:all 0.3s;
}


.top-area .menu ul li a:hover{
	color:#000;
}


.top-area .menu ul li a:hover:after{
    border-bottom: 1px solid rgba(0,0,0,0.7);
	transition:all 0.3s;
}


/*SPのみリンク*/

.link-sp {
	pointer-events:all;
}
	
	

}
	
/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

.top-main-text {
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	width:95%;
	margin-left:auto;
	margin-right:auto;
	margin-top:30px;
	margin-bottom:30px;
}
	
.top-area {
	display:flex;
	justify-content:space-between;
	width:95%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}

.top-area .pic{
	flex-basis:60%;
}

.top-area .menu{

	display:flex;
	align-items:flex-end;
}
	
 }

 /* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {


.top-main-text {
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	width:95%;
	margin-left:auto;
	margin-right:auto;
	margin-top:30px;
	margin-bottom:30px;
}

.bgc {

	padding-top:40px;
	padding-bottom:40px;
}

.top-area {
	display:flex;
	justify-content:space-between;
	width:95%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}

.top-area .pic{
	flex-basis:60%;
}

.top-area .menu{

	display:flex;
	align-items:flex-end;
}

}
/**/



/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}


/*==============================================================
休診情報　ニュース
==============================================================*/

.top-news-bgc {
	padding-top:90px;
	padding-bottom:90px;
	background: #F9FBFB;
}

.top-news-bgc:nth-of-type(3) {
	padding-top:0px;
}

.top-news-area {
	display:flex;
	justify-content:center;
	width:100%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}

.top-news-area .blog{
	flex-basis:75%;
	text-align:center;
}

.top-news-area .news{
	flex-basis:50%;
	text-align:center;
}


/**/

.top-news-area dl{
	margin-bottom:0px;
	margin-top:20px;
	width:90%;
	margin-left:auto;
	margin-right:auto;
}

.top-news-area dt{
	font-size:0.8em;
	color:rgba(0,0,0,0.6);
	margin-bottom:8px;
}
.top-news-area dd{
	font-size:1em;
	margin-bottom:20px;
	line-height:1.6;
	padding: 0 0 1em 0;
	border-bottom: rgba(0,0,0,0.2) solid 1px;
}

.top-news-area dd:last-of-type{
	margin-bottom:30px;
}

.top-news-area dd a{
	color:rgba(0,0,0,0.8);
	text-decoration:none;
}


.top-news-area dd a:hover{
	color:rgba(0,0,0,0.8);
	text-decoration: underline;
}

/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {

.top-news-bgc {
	padding-top:30px;
	padding-bottom:30px;
}

.top-news-bgc:nth-of-type(3) {
	padding-top:20px;
}

.top-news-area {
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	width:100%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	margin: 0 auto 0px auto;
}

.top-news-area .blog{
	flex-basis:100%;
	text-align:center;
	margin: 0 0 20px 0;
}

.top-news-area .news{
	flex-basis:100%;
	text-align:center;
	margin-top:50px;
}

.top-news-area dl{
	margin-bottom:0px;
	margin-top:0px;
	width:90%;
	margin-left:auto;
	margin-right:auto;
}

}
	
/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

.top-news-area .blog{
	flex-basis:90%;
	text-align:center;
}
	
 }

 /* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {
}


/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}



/*==============================================================
背景画像　ボタン
==============================================================*/

.top-bnr-bg {
	padding-top:180px;
	padding-bottom:180px;
	background:url(../img/top2/bnr_bg.jpg) no-repeat;
	background-size:cover;
}



.top-bnr-area {
	width:100%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}


.top-bnr-area ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}

.top-bnr-area ul li{
	flex-basis:32.5%;
	margin-bottom:1.5%;
    margin-left: .83%;
}
.top-bnr-area ul li:nth-child(3n-2){
    margin-left: 0;
}

/* Firefox */
@-moz-document url-prefix() {
	.top-bnr-area ul li{
	margin-bottom:15px;
	}
}

/* IE,Edge */
.top-bnr-area ul li:not(:target) {
margin-bottom: 15px; /* IE9, IE10, \9を消せばIE11も適応 */
}

.top-bnr-area ul li a{
  position: relative;
  display:block;
	font-size:1.2em;
	background:rgba(255,255,255,0.85);
	text-decoration:none;
	color:#333;
	text-align:center;
	padding-top:60px;
	padding-bottom:60px;
	transition:all 0.3s;
}

.top-bnr-area ul li a:hover{
	background:rgba(255,255,255,0.95);
	transition:all 0.3s;
}

.top-bnr-area ul li a::before,
.top-bnr-area ul li a:after {
  position: absolute;
  left: 50%;
  content: '';
  width: 0;
  height: 2px;
  background-color: rgba(0,0,0,0.5);
  transition: .3s;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.top-bnr-area ul li a:before {
  top: 0;
}
.top-bnr-area ul li a:after {
  bottom: 0;
}
.top-bnr-area ul li a:hover:before,
.top-bnr-area ul li a:hover::after {
  width: 100%;
}



/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {

.top-bnr-bg {
	padding-top:45px;
	padding-bottom:30px;
	background:url(../img/top2/bnr_bg.jpg) no-repeat;
	background-size:cover;
}

.top-bnr-area ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	width:90%;
	margin-left:auto;
	margin-right:auto;
}

.top-bnr-area ul li{
	flex-basis:48%;
	margin-bottom:2%;
}

.top-bnr-area ul li a{
  position: relative;
  display:block;
	font-size:1.0em;
	background:rgba(255,255,255,0.85);
	text-decoration:none;
	color:#333;
	text-align:center;
	padding-top:20px;
	padding-bottom:20px;
	transition:all 0.3s;
}



}
	
/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

.top-bnr-bg {
	padding-top:90px;
	padding-bottom:90px;
	background:url(../img/top2/bnr_bg.jpg) no-repeat;
	background-size:cover;
}


.top-bnr-area ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	width:95%;
	margin-left:auto;
	margin-right:auto;
}


.top-bnr-area ul li a{
  position: relative;
  display:block;
	font-size:1.0em;
	background:rgba(255,255,255,0.85);
	text-decoration:none;
	color:#333;
	text-align:center;
	padding-top:30px;
	padding-bottom:30px;
	transition:all 0.3s;
}


 }

 /* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {

.top-bnr-bg {
	padding-top:120px;
	padding-bottom:120px;
	background:url(../img/top2/bnr_bg.jpg) no-repeat;
	background-size:cover;
}


.top-bnr-area ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	width:95%;
	margin-left:auto;
	margin-right:auto;
}


.top-bnr-area ul li a{
  position: relative;
  display:block;
	font-size:1.2em;
	background:rgba(255,255,255,0.85);
	text-decoration:none;
	color:#333;
	text-align:center;
	padding-top:40px;
	padding-bottom:40px;
	transition:all 0.3s;
}


}


/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}




/*==============================================================

==============================================================*/


/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {


}
	
/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

 }

 /* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {
}


/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}


