@charset "utf-8";
/* ---------------------------------------
　基本設定
	=1 ベース設定
	=2 ヘッダー
	=3 フッター
	=4 コンテンツ 共通設定
	=5 サイドバー
	=6 トップページ設定
	=7 下層ページ設定
---------------------------------------- */

/* --------------------------------------------------------------
	=1 ベース設定
------------------------------------------------------------------ */
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
body {position: relative;
	font-family: 'Noto Sans Japanese', sans-serif;
	font-size: 100%;
	font-weight:200;
	font-size: 15px;
	-webkit-text-size-adjust: 100%;
}

html,body {
	height: 100%;
}

/* tab-pc */
@media screen and (min-width: 768px) {
#contents{
	margin-left: 200px;
	position: relative;
}
}

/* --------------------------------------------------------------
	=2 ヘッダー
------------------------------------------------------------------ */
/* sp */
@media screen and (max-width: 767px) {
	#global-head{
		display: flex;
	}	
}
/* ----------------------------------
　　　　　　　スライダー
----------------------------------- */
#slider-box,#slider{
	position: relative;}
#slider li {
  height: 100vh;
  background: center/cover no-repeat;
}
.slider-text{
position: absolute;
top: 30%;
	padding: 0.5em;
background-color: rgba( 0, 0,0, 0.4);
left: 50%;
font-size: 1.8em;
text-align: center;
color: #fff;
-webkit-transform: translate(-50%,-50%);
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
.slider-text span{
	font-size: 0.5em;
}
.slider-textW{
	position: absolute;
top: 30%;
	padding: 1em;
background-color: rgba( 255, 255,255, 0.4);
left: 50%;
text-align: center;
color: #fff;
-webkit-transform: translate(-50%,-50%);
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}


/* ------------スクロールバー */
.scroll{
	color: #fff;
	font-size: 2em;
	font-weight: 500;
  position: absolute;
  top:60%;
  left: 50%;
  z-index: 299;
  margin-left: -45px;
  display: inline-block;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-decoration: none;
  padding-top: 60px;
}

.scroll span {
  position: absolute;
  top: 0;
  left: 25%;
  width: 46px;
  height: 46px;
  border: 2px solid #fff;
  border-radius: 100%;
  box-sizing: border-box;
}
.scroll span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  width: 16px;
  height: 16px;
  margin: -12px 0 0 -8px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  box-sizing: border-box;
}

/* sp-tab */
@media screen and (max-width: 1019px) {
.slider-text{
top: 20%;
    white-space: nowrap;
	}	
}

/* sp-tab */
@media screen and (max-width: 640px) {
.scroll{
		bottom: 4.5em;
	}
	
}
/* --------------ページャー */
.bx-default-pager {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  z-index: 100;
  bottom: 300px;
  right: 0;
  left: 0;
  margin: auto;
}
.bx-pager-item a {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  overflow: hidden;
  background-color: #fff;
  border-radius: 50%;
  text-indent: 100%;
  cursor: pointer;
}
/* active時の色 */
.bx-pager-item .active {
  background-color: #2a82c5;
}
/* sp */
@media screen and (max-width: 767px) {
.bx-pager-item a{
		display: none;
	}
}

/* ------------prev , nextボタン */
.bx-prev,
.bx-next {
  position: absolute;
  z-index: 50;
  top: 0;
  bottom: 0;
  width: 40px;
  height: 40px;
  margin: auto;
  border: 1px solid #fff;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.bx-prev:before,
.bx-next:before {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 7px;
  height: 7px;
  margin: auto;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  -webkit-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: left;
  -webkit-transform-origin: bottom;
  transform-origin: bottom;
  -webkit-transition: all 0.5s;
  -webkit-transition: all 0.5s;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  content: "";
}
.bx-prev:after,
.bx-next:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 16px;
  height: 1px;
  margin: auto;
  background-color: #fff;
  -webkit-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  content: "";
}
.bx-prev:hover:before,
.bx-next:hover:before {
  opacity: 1;
  filter: alpha(opacity=100);
  -ms-filter: none;
  -webkit-filter: none;
          filter: none;
}
.bx-prev:hover:after,
.bx-next:hover:after {
  width: 0;
  color: #fff;
  -webkit-transform: scaleX(0);
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: left;
  -webkit-transform-origin: left;
  transform-origin: left;
  -webkit-transition: all 0.2s;
  -webkit-transition: all 0.2s;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.bx-prev {
  left: 20px;
}
.bx-prev:before {
  border-right: 0;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  -webkit-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.bx-prev:after {
  left: -10px;
}
.bx-next {
  right: 20px;
}
.bx-next:after {
  right: -10px;
}
.bx-next:hover {
  -webkit-transform-origin: right;
  transform-origin: right;
}



/* --------------------------------------------------------------
	=3 フッター
------------------------------------------------------------------ */

#footerFloatingMenu {
        border-top: 1px solid #2a82c5;
    overflow-y: auto;
    display: block;
    width: 100%;
    position: fixed;
    left: 0px;
    bottom: 0px;
    z-index: 9999;
    text-align: center;

}
.floating-tel a{
        background: #57a5e0;
    display: block;
		height: 50px;
		line-height: 50px;
		font-size: 1.5em;
		font-weight: bold;
}
#footerFloatingMenu a{
            text-decoration: none;
            display: block;
            color: #fff;
            font-weight: 500;}

.floating-tel a span{
    font-size: 0.9rem;
    background:rgba(255,255,255,0.8);
    color:  #2a82c5;
    padding: 0.1rem 1rem;
    border-radius: 25px;
    margin-right: 0.6rem;
}

#footerFloatingMenu ul{
        display: flex;
    background-color:#2a82c5;
}



#footerFloatingMenu li{
        height: 70px;
        width:50%;
        font-size: 0.8em;
        border-left: 1px solid #fff;
        }

#footerFloatingMenu li a{
        padding-top: 1rem;}
#footerFloatingMenu li:first-child{border-left:none;}
            .typcn{
                font-size: 2em;
            }
            .ttl-floating{
                display: block;
            }


    
    @media screen and (min-width: 1024px) {
        #footerFloatingMenu {display: none !important;}
    }

footer{border-top: 1px solid #cecece;
}

.foot-logo{
	padding: 1em;}

.foot-logo span a{
	color: #2a82c5;
	font-size: 1.2em;
	font-weight: bold;
}

.foot-logo dl{
	margin-bottom: 0.8em;
	}

.foot-logo p{
	font-size:0.9em;
	line-height: 1.2em;
}
.foot-logo a{
	color: #237cc7;
	text-decoration: none;
}
.foot-text{
font-size: 0.9em;
	padding: 1em;
}


#copyright {
	background: #2a82c5;
	color: #fff;
	padding: 1em;
	text-align: center;
	text-decoration: none;
}
@media screen and (max-width: 1023px) {
    #copyright{margin-bottom: 120px;}
}

.foot-nav{
	color: #2a82c5;
	background: #e4f0f9;}

.foot-nav a{
	text-decoration: none;
	color: #2a82c5;
}

/* pc */
@media only screen and (min-width: 1020px) {
.foot-info{
	padding: 1em;
	width: 100%;
	display: flex;
	}
.foot-logo{
		width: 60%;
	}
.foot-text{
	margin-left: auto;
	width: 50%;
	}
}
/* tab-pc */
@media screen and (min-width: 768px) {
#footerArea{
	margin-left: 200px;
	position: relative;
}
.foot-nav{
	width: 100%;
	padding: 1em 1.5em;
	text-align: center;
}
.foot-nav ul{
    transform: skew(-20deg);}
.foot-nav ul li{
	display: inline-block;
}
.foot-nav ul a{
	border-left: 1px solid #2a82c5;
	padding: 0 0.5em;
	transform: skew(20deg);
}
.foot-nav ul :first-child a{
	border-left: none;
}
}

/* sp */
@media screen and (max-width: 767px) {
.foot-logo{
text-align: center;
	}
.foot-nav ul{
		display: flex;
	flex-wrap: wrap;
	padding: 1em;
	}
.foot-nav li{
	width: 48%;
	height: 40px;
	line-height: 40px;
		margin: 1%;
	border-bottom: 1px solid #2a82c5;
	}
	.foot-nav li a{
		display: block;
	}
}

/* ----------------------------------
　　　　　　　ページ上部へ
----------------------------------- */
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 1.2em;
	z-index: 999;
}
#page-top a {
    background: #2a82c5;
    text-decoration: none;
    color: #fff;
    width: 70px;
    padding: 16px 0;
    text-align: center;
    display: block;
    border-radius: 5px;
}
#page-top a:hover {
    text-decoration: none;
    background: #3f9de4;
}
/* --------------------------------------------------------------
	=4 コンテンツ 共通設定
------------------------------------------------------------------ */
/* ----------------------------------
　　　　　　　パンくず
----------------------------------- */
#pankuzu{
	background-color: #e4f0f9;
	padding: 0.5em 2em;
}
#pankuzu a{
	color: #2a82c5;
}

/* ----------------------------------
　　　　　　　ボックス
----------------------------------- */
.contents-in{
	width: 90%;
	margin: 0 auto;
}
.inner{
		width: 90%;
		margin: 0 auto;
	}
/* pc */
@media only screen and (min-width: 1020px) {
.inner,.contents-in{
		max-width: 1000px;
	}
}
/* tab-pc */
@media screen and (min-width: 768px) {
.contents-in{
	width: 80%;
	padding: 2em 0;
	}
.sec1{
	margin: 3em 0 5em 0;
}
.sec2{
	margin: 2em 0 4em 0;
}
.sec3{
	margin: 2em 0 3em 0;
}

}
.sec1 a img:hover{
    opacity: 0.6;
}
/* sp */
@media screen and (max-width: 767px) {
.sec1{
	margin: 2em 0;
}
}

/* --------------------------------------------------------------
	=5 サイドバー
------------------------------------------------------------------ */
#global-head {
	color: #333;
	width: 200px;
	background: #fff;
	text-align: center;
	font-size: 1.1em;
	font-weight: 400;
}

/* tab-pc */
@media screen and (min-width: 768px) {
#global-head{
	border-left: 4px solid #2a82c5;	}
}

#sidebar {
	width: 196px;
	height: 100%;
	position: fixed;
	color: #333;
	background: #fff;
	text-align: center;
}

#global-nav ul {
	list-style: none;
	margin-left: 0;
}
#global-nav > ul > li {
	position: relative;
	border-bottom: 1px solid #2a82c5;
}
#global-nav > ul{
	margin:1em;
	border-top: 1px solid #2a82c5;}

#global-nav a {
	color: #333;
	text-decoration: none;
	display: block;
	padding: 8px 0;
	-moz-transition: background-color .3s linear;
	-webkit-transition: background-color .3s linear;
	transition: background-color .3s linear;
}
#global-nav a i{
	font-size: 1em;
}

#global-nav .sub-menu.is-active > a,
#global-nav a:hover {
	color: #fff;
	background: #2a82c5;
}

/* nav-toggle */
#nav-toggle {
	display: none;
	position: absolute;
	top: 20px;
	right: 15px;
	height: 32px;cursor: pointer;
}

#nav-toggle > div {
	position: relative;
	width: 32px;
}
#nav-toggle span {
	width: 100%;
	height: 2px;
	left: 0;
	display: block;
	background: #2a82c5;
	position: absolute;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}

#nav-toggle span:nth-child(1) {
	top: 0;
}
#nav-toggle span:nth-child(2) {
	top: 11px;
}
#nav-toggle span:nth-child(3) {
	top: 22px;
}

.overlay {
display: none;
position: fixed;
background: rgba(0,0,0,.6);
width: 100%;
height: 100%;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
#global-nav i{
	padding-top: 0.2em;
	color: #2a82c5;
	font-size: 2em;
}
#global-nav a:hover i{
color: #fff;
}
#contact-us {
	padding:0.5em 1em;
}
#contact-us dl{
	border: 2px solid #2a82c5;
	border-radius:5px;
}
#contact-us dl dt{
	background: #2a82c5;
	color: #fff;
}
#contact-us dl dd{
	width: 100%;
	color: #2a82c5;
	font-weight: 500;
	padding: 0.5em;
}

#bnr-fb{
	width: 84%;
	margin:  0 auto;
	background: #3c5a99;
}
#bnr-fb a{
	padding:0.2em;
	display: block;
}
#bnr-fb i,#bnr-fb a{
	color: #fff;
	text-decoration: none;
}
#bnr-fb:hover{
	opacity: 0.6;
}

/* tab-pc */
@media screen and (min-width: 768px) {
#global-head {
width: 200px;
min-height: 100%;
xoverflow: auto;
height: auto;
z-index: 900;
height: 100%;
position: fixed;}
#logo img{
	max-width: 150px;}
#logo{
	padding-top:2em;
}
.R-shadow{
-webkit-box-shadow: 8px 0px 8px -1px rgba(0,0,0,0.31);
-moz-box-shadow: 8px 0px 8px -1px rgba(0,0,0,0.31);
box-shadow: 8px 0px 8px -1px rgba(0,0,0,0.31);
}

}
/* sp */
@media screen and (max-width: 767px) {
#logo{
		padding-top: 0.3em;
	}
#main-in {
		padding-left: 0;
	}
#global-head {
		width: 100%;
		padding: 10px;
		display: -webkit-flex;
		display: flex;
	}
#sidebar {
		/*display: none;*/
		position: fixed;
		right: -300px;
		top: 0;
		height: 100%;
		width: 300px;
		color: #333;
		background: #fff;
		-webkit-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
	}


	#nav-toggle {
		display: block;
	}

	/* nav open */
	.open {
		overflow: hidden;
	}
	.open .overlay {
		display: block;
	}
	.open #sidebar  {
		-webkit-transform: translate3d(-300px,0,0);
		transform: translate3d(-300px,0,0);
	}

	/* #nav-toggle close */
	.open #nav-toggle span:nth-child(1) {
		top: 11px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.open #nav-toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	.open #nav-toggle span:nth-child(3) {
		top: 11px;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	/* z-index */
	.overlay {
		z-index: 200;}
	#sidebar {
		z-index: 300;
	}
	#nav-toggle {
		z-index: 400;
	}
}
@media screen and (max-width: 400px) {
	#sidebar {
		right: -200px;
		width: 200px;
		padding-top: 60px;
	}
	.open #sidebar  {
		-webkit-transform: translate3d(-200px,0,0);
		transform: translate3d(-200px,0,0);
	}
	
}
/* --------------------------------------------------------------
	=6 トップページ設定
------------------------------------------------------------------ */
.top-box{
	padding: 3em 0;
}

/* sp */
@media screen and (max-width:767px) {
.top-box{
	padding: 2em 0;
}	
}
/* ---------------お知らせ */
#TopNews{
	background-color:#e4f0f9; 
}

@media only screen and (min-width: 1020px) {
.TopNews-in{
    width: 1020px;
    margin: 0 auto;
    display: flex;
    flex-wrap:wrap;

    } 
#News,#Blog{
    width: 48%;
}
 
}
#News,#Blog{
    margin: 1%;
}
#News{
    margin-bottom: 1em;
}
.blog-more a{
    background: #e4f0f9;
    color:#2a82c5;
    font-size: 0.8em;
    padding: 0 1em;
    float: right;
    text-decoration: none;
}
.blog-more a:hover{
    opacity: 0.6;
}


.history{
	border: 2px solid #2a82c5;
	background-color: #fff;
	border-radius: 4px;
}
.history h3{
    clear: both;
    background:#2a82c5;
    padding: 0.8em;
    color: #fff;
}
.history dl{
    padding: 1em;}
.day{
    color: #777;
    padding-right: 1.5em;
}
.cate-hol,.cate-hist,.cate-info,.cate-caution{
    display: inline-block;
    padding:0 1em;
    color: #fff;
    font-size: 0.8em;
}
.cate-info{
    background: #4E9714;
}
.cate-hist{
    background:#2D5DAD;
}
.cate-caution{
    background: #DC272A;
}
.news-box{
}
.news-box dd a{
    color:#2D5DAD;
}
.news-box dd{
	width: 100%;
        border-bottom: 1px solid #ccc;
    padding-bottom: 1em;
    } 
    .news-box dt{
        padding-top: 1em;
    }

/* ---------------------------------診療情報 */
.gide-box{
}
.gide-box h3{
    font-size: 1.2em;
    font-weight: 500;
    border-left: 6px solid #2a82c5;
    padding-left: 0.6em;
    margin-bottom: 1em;
}


/* ---------------診療案内  */

.treat-root{
	border: 3px solid #ccc;
	border-radius: 10px;
	padding: 1em;
	margin-bottom: 1.5em;
}

.treat-root dt{
font-weight: 500;
font-size:1.6em;
	margin-bottom: 0.6em;
}
.treat-root dt:first-letter{
padding: 2px 8px;
color:#FFF;
background:#e29c40;
border-radius:50%;
}
.treat-root dt span{
	margin-right: 0.4em;
}
#charge table td{text-align: center;}
/* pc */
@media only screen and (min-width: 1020px) {
.treat-root{
		display: flex;
	}	
.treat-root dt{
		width: 25%;
	}
.treat-root dd{
		width: 75%;
	}

}
/* ---------------当院について */
#TopAbout{
	border-bottom: 1px solid #cecece;
}
.time{
	width: 100%;
	margin-bottom: 1em;
}
.time,.time tr,.time th,.time td{
	text-align: center;
	border: 1px solid #ccc;
	border-collapse: collapse;
}
.time th,.time td{
	padding: 0.35em;
}
.time thead th,
.time thead td{background-color: #2a82c5;
	color: #fff;
	font-weight: 400;
}
.time tbody th,.time tbody td{
	color: #0e6eb8;
	font-size: 1.1em;
}
.time th{
	font-weight: 300;
}
#top-clinic dt{
	color: #2a82c5;
	font-size: 1.4em;
	font-weight:700;
    margin-bottom: 0.3rem;
}
#top-clinic .tel{display: block;
	font-weight:500;
color: #222;}
#top-clinic .tel a{
	color: #2a82c5;
	font-size: 1.2em;
	font-weight:700;
    text-decoration: none;
}

.btn-about{
	display: flex;
	flex-wrap: wrap;
}
.btn-about li{
	text-align: center;
	width: 96%;
	margin: 2%;
	}

.btn-about li a{
	width: 100%;
}
@media screen and (min-width: 1020px) {
.btn-about li{
	width: 46%;
	}}
/* sp-tab */
@media screen and (min-width: 1020px) {
#top-info{
	width: 100%;
	display: flex;
}
#top-clinic{
	width:40%;
}
#top-time{
	width: 56%;
	margin-left: 4%;
}
   
}
/* sp-tab */
@media screen and (max-width: 1019px) {
#top-clinic{
		text-align: center;
	}
	
#top-time{
		width: 90%;
		margin: 0 auto;
	margin-top: 1em;
	margin-bottom: 1em;
	}


}


/*========= モーダル表示のためのCSS ===============*/
.oldinfo{
	display: flex;
	background:#F3F3F3;
	padding: 1rem;
}
.oldinfo dt,.oldinfo dd{
	width: 48%;
	margin: 1%;
}
/*全て共通：hideエリアをはじめは非表示*/
.hide-area{
  display: none;
}

/*全て共通：モーダルのボタンの色を変更したい場合*/
.modaal-close:after, 
.modaal-close:before{
  background:#ccc;  
}

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
  background:#666;
}

/*確認を促すモーダル：タイトルの色を変更したい場合*/
#modaal-title{
  font-size:1.2rem;
  text-align: center;
  margin: 0 0 20px 0;
}

/*動画表示のモーダル：余白を変更したい場合*/
.modaal-video .modaal-inner-wrapper{
  padding:0;
}

/*以下はコンテンツ内のレイアウト*/
.info-list dl,
.gallery-list{
  display: flex;
}

.info-list dt{
  margin:0 10px 0 0;
}

.gallery-list li{
  margin:0 10px 0 0;
}

.info-list a{
	color: #2a82c5;
}


/* ---------------診療ピックアップ  */

.ope-flow ul{
	display: flex;
}

.ope-flow ul li:hover{
	opacity: 0.6;
}
.ope-root{
	border: 3px solid #ccc;
	border-radius: 10px;
	margin-bottom: 1.5em;
background-color:#FFFAF4;
}

.ope-root dt{
font-weight: 500;
font-size:1.4em;
	padding: 0.5em;
	border-bottom: 2px solid #ccc;
	margin-bottom: 0.6em;
}
.rootcol01:first-letter{
background:#54aad1;
}
.rootcol02:first-letter{
background:#e29c40;
}

.rootcol03:first-letter{
background:#57b560;
}


.ope-root dd{
	padding: 0 1em 0.5em 1em;}
.ope-root dt:first-letter{
padding: 2px 8px;
color:#FFF;
border-radius:50%;
}
.ope-root dt span{
	margin-right: 0.4em;
}

.ope-root ul li{
border-bottom: 1px dashed #ccc;
	padding: 0.5em;
}

#orth .ope-root{
    background: #fff;
}

/* pc */
@media only screen and (min-width: 1020px) {
.ope-flow ul li{
	margin: 0.6em;
}
}
/* tab-pc */
@media screen and (min-width: 768px) {
.pickup{
		width: 33.3%;
	padding: 1%;
	}
}
/* sp */
@media screen and (max-width: 767px) {
.pickup{
	text-align: center;
margin: 0 auto;
		width: 98%;
		padding:1%;
	margin-bottom: 2em;
	}	

.ope-flow {
	display: none;
}
}
/* ---------------アクセス  */
#TopAccess{
	font-size: 0;
	padding: 0;
	margin: 0;
}
/* ---------------アクセス  */
.banner{
    gap:5%;
    width: 80%;
    margin-inline: auto; 
}
/* --------------------------------------------------------------
	=7 下層ページ設定
------------------------------------------------------------------ */
/* -------ページ内リンク */
#PageLink{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	}
#PageLink li{
	font-size: 0.9em;
	text-align: center;
}
#PageLink a{text-decoration: none;}

/* sp-tab */
@media screen and (max-width: 1019px) {
#PageLink li{
		width: 50%;}
#PageLink a{
	display: block;
	color: #000;
	padding: 0.5em;
	position: relative;
	border-top: 1px solid #cecece;
}
#PageLink a:nth-child(odd){ 
	border-right: 1px solid #cecece; }
	
	
#PageLink a:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right:0px;
	width: 6px;
	height: 6px;
	margin: -4px 10px 0 0;
	border-top: solid 2px #2a82c5;
	border-right: solid 2px #2a82c5;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);}

}

/* pc */
@media only screen and (min-width: 1020px) {
#PageLink{ 
	border-top: #cecece 1px solid;
	justify-content: center;
  align-items: center;
	margin: 0 auto;
	margin-top: 2em;
	padding: 1em 0;
	}
	
#PageLink li{
	text-align: center;
	border-right: 1px solid #2a82c5;
	padding: 0 0.5em;
	}
	#PageLink li:first-child{
	border-left: 1px solid #2a82c5;
		
	}
	#PageLink a{
		color: #2a82c5;
	}

}

/* ----------------------------------
　　　　　　　医院紹介
----------------------------------- */
/* -------------医師紹介-- */
#message01,.message-img{
	text-align: center;
}
#message01 p{
	padding-top: 1.5em;
}
#message02,#message03,#message04{
	margin-top: 2.5em;
}
.doc-text dt{
	border-left:6px solid #2a82c5;
	padding-left: 0.6em;
	font-size: 1.2em;
	font-weight: 500;
	margin-bottom: 0.6em;
}
.doc-text dd{
	margin-bottom: 1.5em;}
/* pc */
@media only screen and (min-width: 1020px) {
#message01,#message02,#message03,#message04{
	display: flex;
}

#message01 p{
	width: 45%;
	padding-left: 5%;
}
#message01 div{
	width: 50%;}

#message01 div img{
		width: 100%;
	}
#message02 .message-text{
	width: 55%;
}

#message02 .message-img{
	padding-left: 5%;
	width: 40%;
}
#message03 .message-text{
	padding-left: 6%;
	width: 60%;
}
#message04 .message-img{
	padding-left: 5%;
	width: 54%;
}
#message04 .message-text{
	width: 50%;
	padding-left: 5%;
}

}

/* -------------実績--- */
#Achievement .table_basic01 tbody th{
    background:#E9F6FF;
}
#Achievement .table_basic01 thead td{
    text-align: center;
}
#Achievement .table_basic01 tbody td{
    text-align: right;
}


.sticky_table{
    width: 100%;
}
.sticky_table,.sticky_table tr,.sticky_table th,.sticky_table td{
    border: 1px solid #aaa;
    border-collapse: collapse;
}
.sticky_table th,.sticky_table td{
    padding: 0.5em;
}

.sticky_table thead th,.sticky_table thead td{
    background:#2a82c5;;
    color: #fff;
}
.sticky_table tbody th{
    background: #F6F6F6;
}
.sticky_table tbody td{
    text-align: right;
}
.sticky_table thead th {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1;
}
sticky_table th:first-child {
  /* 横スクロール時に固定する */
  position: -webkit-sticky;
  position: sticky;
  left: 0;
}
.sticky_table thead th:first-child {
  /* ヘッダー行内の他のセルより手前に表示する */
  z-index: 2;
}
.sticky_table_wrapper {
    width: 100%;
  overflow: scroll;
}
/* -------------医院写真--- */
#photo ul{
	display: flex;
	flex-wrap: wrap;
}
#photo ul li{
	width: 33.3%;
	padding: 2% 1%;
	text-align: center;
}
#photo ul li span{
	background: linear-gradient(transparent 60%, #fff7af 60%);}

/* sp-tab */
@media screen and (max-width: 1019px) {

#photo ul li{
	width: 48%}	
}

/* sp */
@media screen and (max-width: 767px) {
#photo ul li{
	margin: 0 auto;
	width: 90%}	
}

/* ----------------------------------
　　　　　眼の病気と治療
----------------------------------- */
/* ------------リンクページ--- */
.LinkSt li{
	font-size: 1.2em;
		margin: 2% ;}
.LinkSt a{
	text-decoration: none;
	display: block;
	color: #000;
	padding: 1.3em;
	position: relative;
	border: 1px solid #2a82c5;
}
.LinkSt li:hover{
	background: #e4f0f9;}
.LinkSt a:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 10px;
	height: 10px;
	margin: -4px 15px 0 0;
	border-top: solid 2px #2a82c5;
	border-right: solid 2px #2a82c5;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);}

/* tab-pc */
@media only screen and (min-width: 768px) {
.LinkSt{
	display: flex;
	flex-wrap: wrap;
}
.LinkSt li{
		width: 46%;
		margin-bottom: 1em;
	}
}


/* ------------アレルギーページ--- */
/* tab-pc */
@media only screen and (min-width: 768px) {
.ale-test li{
    width: 33.333%;
    padding: 1%;
    }
    .alergen li{
        text-align: center;
        width: 50%;
        padding: 1%;
    }
    .ale-box p{
        width: 30%;
    }
    
    .ale-box table{
        width: 65%;
        margin-right: 5%;
    }
}

/* ------------小児眼科 */
#ped-ophthalmology01 dd{
    display: flex;
    flex-wrap: wrap;
}

@media only screen and (max-width: 767px) {
#ped-ophthalmology01 dd figure{
    margin: 0 auto;
    }}
@media only screen and (min-width: 768px) {
#ped-ophthalmology01 dd ul{
    width: 60%;
    margin-left: 5%;
}
#ped-ophthalmology01 dd figure{
    width:25%;
    margin-left: auto;
    }}
/* ----------------------------------
　　　　　コンタクトレンズ
----------------------------------- */
.cl-cont{
	width: 100%;
}
.clbox{
	border:#CECECE 1px solid;
	margin: 1%;
	padding: 1em;
}
.clbox h4,.clbox div{
	text-align: center;
}

/* tab-pc */
@media screen and (min-width: 768px) {
.cl-cont{
	display: flex;
	flex-wrap:wrap;
}
	.clbox{
	width: 48%;}
}

/* ----------------------------------
　　　　　バナー
----------------------------------- */
.bnr-box{
    display: flex;
	flex-wrap:wrap;
    width: 100%;
}
.bnr-box li{
    margin: 1%;
    width: 98%;}
@media screen and (min-width: 768px) {
.bnr-box li{
    width: 48%;
    }}
/* ----------------------------------
　　　　　　　予約について
----------------------------------- */
.yoyaku-telbox p{
	margin-bottom: 0;
}
.yoyaku-tel{
	width: 80%;
	font-size: 1.3em;
	font-weight: bold;
	text-align: center;
	margin: 0 auto;
	color: #2a82c5;
    padding: 0.5rem;
	margin-top: 1rem;
}
.yoyaku-tel span{
    display: block;
}
.yoyaku-tel a{
	font-size: 1.5em;
	color: #2a82c5;
text-decoration: none;}
/* ----------------------------------
　　　　　　　サイトマップ
----------------------------------- */

#sitemap-sec a{
color: #333;
text-decoration:none;}

#sitemap-sec a:hover{
	text-decoration:underline;}
	
#sitemap-sec ul li {
	font-weight:500;
	position: relative;
	text-indent:1.4em;
	margin-top:2em;
}
#sitemap-sec ul li::after,
#sitemap-sec ul li::before {
	display: block;
	content: '';
	position: absolute;
}
#sitemap-sec ul li::after {
	top: .35em;
	left: 0em;
	width: 17px;
	height: 17px;
	background-color: #2a82c5;
}
#sitemap-sec ul li::before {
	z-index: 2;
	top:11px;
	left:5px;
	width: 6px;
	height: 6px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#sitemap-sec ul li .sitemap-ul-in{
	border-top:1px solid #ccc;
	padding-left:2em;
}

#sitemap-sec ul li .sitemap-ul-in li{
	list-style:disc;
	font-weight:200;
	text-indent:0;
	margin:0;
	padding:0;
	border:none;
	margin-top:0.2em;}
#sitemap-sec ul li .sitemap-ul-in li::after,#sitemap-sec ul li .sitemap-ul-in li::before {
	background:none;
	border:none;}

/* tab-pc */
@media screen and (min-width: 768px) {
#sitemap-sec{
	margin-top:3em;}
}








