@charset "utf-8";

/* CSS Document */

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@font-face { font-family: 'FOT-SeuratPro-M'; src:url(FOT-SeuratPro-M.otf); }

/*------------------------------------------------------------------------------------------------------------------
　base style
-------------------------------------------------------------------------------------------------------------------*/

body {	
	color:#000000;
	font-size:16px;
	margin:0;
	height:100%;
	width:100%;
	position:relative;
	font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height:1.6;
	overflow-x:hidden;
}

@media screen and (max-width:640px){
	body{
		font-size:20px;
	}
}


a:link {color:#cf3434; text-decoration:underline;}
a:visited {color:#cf3434; text-decoration:underline;}
a:hover {color:#e59c0e; text-decoration:underline;}

img {
	border:0;
	vertical-align: bottom;
}

.wrap {
	overflow: hidden;
}

p {
	padding-bottom:20px;
}

/*------------------------------------------------------------------------------------------------------------------
　preparation
-------------------------------------------------------------------------------------------------------------------*/

#lineup-font-size-sampler { display:none; }

div:after, section:after, article:after, ul:after {
    content: "";
    display: block;
    clear: both;
}

.link a {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
}

.pc {
	display:block;
}

.sp {
	display:none;
}

@media screen and (max-width:640px){
	.pc {
		display:none;
	}
	.sp {
		display:block;
	}
}

/*------------------------------------------------------------------------------------------------------------------
　expression
-------------------------------------------------------------------------------------------------------------------*/

.clear { clear:both; }

.top { margin-top:30px !important; }
.under { margin-bottom:30px !important; }
.under-db { margin-bottom:60px !important; }
.under-harf { margin-bottom:15px !important; }

.subpage-contents .side-menu .under-db { margin-bottom:40px !important; }

.right_ { float:right; margin-left:30px; margin-bottom:30px; margin-top:5px;}
.left_ { float:left; margin-right:30px; margin-bottom:30px; margin-top:5px;}
.left_doctor { float:left; margin-right:30px; margin-bottom:30px; margin-top:5px;}

@media screen and (max-width:850px){
	.right_, .left_ {
		max-width:70%;
		margin-left:0;
		margin-right:0;
		margin-top:0;
		float:none;
	}
	.left_doctor {
		max-width:70%;
		margin-left:auto;
		margin-right:auto;
		margin-top:0;
		float:none;
		display: inherit;
	}
}

.text-center { text-align:center; }
.text-left { text-align:left; }
.text-right { text-align:right; }

.first { padding-top:0 !important; margin-top:0 !important; }
.last { padding-bottom:0 !important; margin-bottom:0 !important; }

.ro img:hover,.ro:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

.underline {
	border-bottom:1px dotted #377bbe;
	padding-bottom:30px;
	margin-bottom:30px;
}

.dropshadow {
	box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
    -moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
    -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
}

/*------------------------------------------------------------------------------------------------------------------
　img align
-------------------------------------------------------------------------------------------------------------------*/

.aligncenter {
    display: block;
    margin: 0 auto;
	padding-bottom:25px;
	max-width:100%;
}
.alignright { float: right; margin-left:30px; margin-bottom:25px; max-width:100%; }
.alignleft { float: left; margin-right:30px; margin-bottom:25px; max-width:100%; }

.aligncenter img, .alignright img, .alignleft img {
	max-width:100%;
	height:auto;
}

@media screen and (max-width: 1140px) {
	.aligncenter {
		display: block;
		margin: 0 auto;
		padding-bottom:25px;
		max-width:100%;
		text-align:center;
	}
	.alignright { float: none; margin: 0 auto; margin-bottom:0; padding-bottom:25px; max-width:100%; text-align:center; }
	.alignleft { float: none; margin: 0 auto; margin-bottom:0; padding-bottom:25px; max-width:100%; text-align:center; }
}

.photo-l {
	float:left;
	margin-right:30px;
	margin-bottom:20px;
}

.photo-r {
	float:right;
	margin-left:30px;
	margin-bottom:20px;
}

.photo-l img {
	width:100%;
	height:auto;
}

.photo-r img {
	width:100%;
	height:auto;
}

.photo-c {
	text-align:center;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:30px;
}

@media screen and (max-width:850px){
.mt-30{
	margin-top:30px!important;
}
}

/*------------------------------------------------------------------------------------------------------------------
　wp-pagenavi
-------------------------------------------------------------------------------------------------------------------*/

.wp-pagenavi {
	border-top:#00468c 3px double;
	margin-top:40px;
	padding-top:40px;
	padding-bottom:40px;
	display:block !important;
	clear:both !important;
	text-align:center;
	width:100%;
}

.wp-pagenavi a ,.wp-pagenavi span.pages, .wp-pagenavi span.extend {
		color:#00468c !important;
		padding:6px 12px 8px 12px !important;
		border:solid 1px #00468c !important;
		background:#ffffff !important;
		font-size:12px !important;
		margin-right:3px !important;
		text-decoration:none !important;
		display:inline-block;
		margin-bottom:3px;
}	
.wp-pagenavi a:hover {
		color:#ffffff !important;
		background:#00468c !important;

}
 .wp-pagenavi span.current{
		padding:4px 12px 8px 12px !important;
		border:solid 1px #00468c !important;
		color:#ffffff !important;
		font-size:14px;
		margin-right:3px !important;
		border-color:#00468c !important;
		background:#00468c !important;
}

/*------------------------------------------------------------------------------------------------------------------
　primary
-------------------------------------------------------------------------------------------------------------------*/

#primary {
	width:100%;
	height:100%;
	min-width:640px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}

@media screen and (max-width: 850px) {
	#primary {
		margin-top:0 !important;
	}
}

article {
	width:100%;
	max-width: 1200px;
	margin-left:auto;
	margin-right:auto;
	position:relative;
	transition:0.3s;
	box-sizing:border-box;
}

@media screen and (max-width: 1220px) {
	article {
		width:100%;
		padding-left:30px;
		padding-right:30px;
	}
}

/*------------------------------------------------------------------------------------------------------------------
　mainvisual
-------------------------------------------------------------------------------------------------------------------*/

#mainvisual .panel {
	width:100%;
	max-width:1100px;
	margin-top:5px;
	margin-left:5px;
	margin-right:5px;
	float: left;
	box-sizing: border-box;
}

@media screen and (max-width:1024px){
#mainvisual .panel {
	width:100%;
	max-width:auto;
	margin-top:5px;
	margin-left:auto;
	margin-right:auto;
	float: left;
	box-sizing: border-box;
}
}

@media screen and (max-width:640px){
#mainvisual .panel {
	width:100%;
	max-width:640px;
	margin-top:5px;
	margin-left:auto;
	margin-right:auto;
	float: left;
	box-sizing: border-box;
}
}

#mainvisual .panel img {
	width:auto;
}

@media screen and (max-width:1024px){
#mainvisual .panel img {
	width:100%;
}
}

.bx-viewport{
	max-width: 1100px;
	margin:0 auto;
	overflow:visible!important;	
}

@media screen and (max-width:1024px){
.bx-viewport{
	max-width:640px;
	margin:0 auto;
	overflow:visible!important;	
}
}

@media screen and (max-width:640px){
.bx-viewport{
	max-width:auto;
	margin:0 auto;
	overflow:hidden!important;	
}
}

.heart-pc{
	background-image: url(../image/contents/mainvisual/main-logo.png);
	background-repeat: no-repeat;
	background-position: center;
	width:100%;
	max-width: 1255px;
    height: 422px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    position: relative;
    z-index: 99;
	bottom: 390px;
	margin-bottom: -390px
}

.heart-tab{
	display: none;
}

.heart-sp{
	display: none;
}


@media screen and (max-width:1100px){
.heart-pc{
	display: none;
}
	
.heart-tab{
	background-image: url(../image/contents/mainvisual/main-logo.png);
	background-repeat: no-repeat;
	background-size: contain;
	width:100%;
	width: 100%;
    max-width: none;
    height: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    position: relative;
    z-index: 99;
    bottom: 310px;
    margin-bottom: -310px;
    padding-top: 35%;
}

.heart-sp{
	display: none;
}

.heart-tab .main-comment p{
	background:url(../image/contents/mainvisual/p-sp.png) top no-repeat;
	width: 100%;
    height: 85px;
    margin: 0 auto;
    white-space: nowrap;
    overflow: hidden;
    text-indent: 500%;
}
.heart-tab .catch{
	background: url(../image/contents/mainvisual/h1-sp.png) top no-repeat;
    white-space: nowrap;
    text-indent: 100%;
    width: 100%;
    height: 145px;
    margin-top: -285px;
}
}

@media screen and (max-width:850px){
.heart-tab{
	padding-top:41%;
	bottom: 255px;
}
.heart-tab .catch{
	margin-top: -300px;
}
}
	
@media screen and (max-width:750px){
.heart-tab .catch{
	margin-top: -250px;
}
}
	
@media screen and (max-width:640px){
.heart-pc{
    display: none;
}
.heart-tab{
	display: none;
}

.heart-sp{
	background-image: url(../image/contents/mainvisual/main-logo-sp.png);
	background-repeat: no-repeat;
	width: 100%;
    max-width: none;
    height: 275px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    position: relative;
    z-index: 99;
    bottom: 195px;
    margin-bottom: -457px;
    padding-top: 33%;
}
.heart-sp .main-comment p{
	background:url(../image/contents/mainvisual/p-sp.png) top no-repeat;
	width: 100%;
    height: 85px;
    margin: 0 auto;
    white-space: nowrap;
    overflow: hidden;
    text-indent: 500%;
}
.heart-sp .catch{
	background: url(../image/contents/mainvisual/h1-sp.png) top no-repeat;
    white-space: nowrap;
    text-indent: 100%;
    width: 100%;
    height: 145px;
    margin-top: -214px;
}
}

.heart-pc .catch{
	background: url(../image/contents/mainvisual/h1.png) top no-repeat;
    white-space: nowrap;
    text-indent: 100%;
	width:100%;
	height:76px;
	margin-top:65px;
}

@media screen and (max-width:850px){
.heart-pc .catch{
	background: url(../image/contents/mainvisual/h1-sp.png) top no-repeat;
    white-space: nowrap;
    text-indent: 100%;
	width:100%;
	height:145px;
}
}

.heart-pc .main-comment p{
	text-align: center;
	font-size:1.2em;
	color:#00468c;
	text-shadow: white 2px 0px, white -2px 0px, white 0px -2px, white 0px 2px, white 2px 2px, white -2px 2px, white 2px -2px, white -2px -2px, white 1px 2px, white -1px 2px, white 1px -2px, white -1px -2px, white 2px 1px, white -2px 1px, white 2px -1px, white -2px -1px;
	font-family: 'FOT-スーラ ProN', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 600;
}

/*------------------------------------------------------------------------------------------------------------------
　header
-------------------------------------------------------------------------------------------------------------------*/
header {
	padding-top:30px;
}

header .logo-primary {
	/* width:580px; */
	float:left;
}

header h1 {
	font-family: 'FOT-AnitoStd-M';
	font-size:1em;
	color:#333333;
	margin:0;
	padding:0;
	margin-bottom:5px;
	/*margin-bottom:20px;*/
	font-weight:normal;
	/* width:580px; */
}

@media screen and (max-width:1100px){
header h1 {
	margin-bottom: 5px;
}
}

header h1 br {
	display: none;
}

@media screen and (max-width:1180px){
header h1 br {
	display: block;
}
}

@media screen and (max-width: 980px) {
	header .logo-primary {
		/* width:380px; */
	}
	header h1 {
		width:380px;
	}
}

@media screen and (max-width: 880px) {
	header .logo-primary {
		/* width:280px; */
	}
	header h1 {
		width:280px;
	}
}

@media screen and (max-width: 1080px) {
	header .logo-primary {
		width:100%;
		float:none;
		text-align:center;
	}
	header h1 {
		width:100%;
		text-align:center;
		margin-bottom:30px;
	}
}

header .logo {
	background-image:url(../image/logo.png?v=2);
	/* width:300px; */
	width: 600px;
	height:97px;
	position:relative;
	display:block;
	background-size: contain;
	background-repeat: no-repeat;
}

@media screen and (max-width: 1280px) {
	header .logo {
		width: 500px;
	}
}

@media screen and (max-width: 1080px) {
	header .logo {
		margin-left:auto;
		margin-right:auto;
	}
}

header .logo a {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	overflow:hidden;
	white-space:nowrap;
	text-indent:100%;
}

header .option {
	float:right;
	width:490px;
	position:relative;
	box-sizing:border-box;
	padding-top:0px;
}

@media screen and (max-width:1100px){
header .option {
	float:right;
	width:390px;
	position:relative;
	box-sizing:border-box;
	padding-top:0px;
}
}

header .option .tel {
	width:350px;
	height:36px;
	margin: 0 auto;
    margin-right: 0;
}

header .option p {
	text-align:right;
	margin:0;
	padding-bottom: 0
}

header .option p br {
	display: none;
}

@media screen and (max-width:1100px){
header .option p {
	text-align:right;
	margin:0;
	margin-top:0px;
}
header .option p br {
	display: block;
}
}

header .option p.adress {
	text-align:right;
	margin:0;
	margin-top:25px;
	padding-bottom: 5px;
}

@media screen and (max-width: 1080px) {
header .option p.adress {
	text-align:center;
	margin:0;
	margin-top:15px;
	padding-bottom:0;
}
header .option .tel {
	width:350px;
	height:36px;
	margin: 0 auto;
    margin-right:auto;
    margin-top:30px;
}
}

header .option p.adress br {
	display: block;
}

@media screen and (max-width: 1080px) {
	header .option {
		float:none;
		width:100%;
		text-align:center;
	}
	header .option p {
		text-align:center;
		padding-top:15px;
		padding-bottom:30px;
	}
}

header .header-primary{
	margin-bottom:30px;
}

@media screen and (max-width:1080px){
header .header-primary{
	margin-bottom:0px;
}
}




/*------------------------------------------------------------------------------------------------------------------
　navi
-------------------------------------------------------------------------------------------------------------------*/

nav.pc{
	display:inline-block;
	background-color: #00468c;
	width:100%;
}

.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
}

@media screen and (max-width:1080px){
nav.pc{
	display:none;
}
}

nav.pc ul {
	list-style: none;
	padding:0;
	max-width: 1200px;
	margin:0 auto;	
	line-height: 60px;
}

nav.pc ul li {
	padding:0;
	display: inline-block;
	width:calc( 9% - 3.5px );;
	text-align: center;
	color: #fff;
	border-right: 1px solid #fff;
	line-height: 14px
}

@media screen and (max-width:1200px){
nav.pc ul li {
	padding:0;
	display: inline-block;
	width:calc( 20% - 4.3px );
	text-align: center;
	color: #fff;
	border-right: 1px solid #fff;
	line-height: 14px;
	margin-bottom: 20px;
}
nav.pc ul li:nth-child(5) {
	margin-bottom: 0px;
	border-right:none;
}
nav.pc ul li:nth-child(6) {
	margin-bottom: 0px;
}
nav.pc ul li:nth-child(7) {
	margin-bottom: 0px;
}
nav.pc ul li:nth-child(8) {
	margin-bottom: 0px;
}
nav.pc ul li:nth-child(9) {
	margin-bottom: 0px;
}
nav.pc ul li:nth-child(10) {
	margin-bottom: 0px;
}
}

nav.pc ul li:last-child {
	border-right:none;
}

@media screen and (max-width:640px){
nav ul {
	padding:0;
}
nav ul li {
	font-size: 18px;
	width:100%;
	line-height: 36px;
	list-style: none;
}
}

nav.pc ul li a {
	text-decoration: none;
	display: block;
	width: 100%;
}

nav ul li a:hover {
	text-decoration: underline;
}
nav ul li a:link {color:#fff; text-decoration:none;}
nav ul li a:visited {color:#fff; text-decoration:underline;}
nav ul li a:hover {color:#fff; text-decoration:underline;}


/*------------------------------------------------------------------------------------------------------------------
　nav-sp
-------------------------------------------------------------------------------------------------------------------*/
.under_fix_menu{
/*background: #00468c;*/
background: #fe9923;
width:100vw;
padding: 10px 0 10px;
display: flex;
justify-content: space-around;
align-items:center;
}

.under_fix_menu_item{
    position: relative;
    width: calc(100vw/5);
    color: #231815;
    text-align: center;
    margin: 0 5px;
    background-color: #fff;
    padding: 15px 0 10px;
    box-sizing: border-box;
    height: 110px;
    border-radius: 5px;
}
.under_fix_menu_item:first-child{
    margin-left: 10px;
}
.under_fix_menu_item .fs-small{
   font-size: 17px;
   line-height: 1.2;
}
.under_fix_menu_item:last-child{
    margin-right: 10px;
}

.under_fix_menu_item img{
    padding-bottom: 3px;
}


.under_fix_menu_item a{
text-align: center;
color: #231815;
text-decoration: none!important;
}

nav.sp{
	display:none;
}

/*ヘッダーまわりはご自由に*/
@media screen and (max-width:1080px){
nav.sp{
	display:block;
}

header {
  background: #fff;
}

#nav-drawer {
    position: fixed;
    /*top:30px;
    right:30px;*/
    right: 0px;
    bottom:0px;
    z-index: 9999;
}

/*チェックボックス等は非表示に*/
.nav-unshown {
  display:none;
}

/*アイコンのスペース*/
#nav-open {
    display: inline-block;
    /*width: 30px;*/
    /*height: 22px;*/
    height: 50px;
    width: 50px;
    vertical-align: middle;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span {
	background: url("../image/sp-nav_black.png");
    /*position: absolute;*/
    height: 50px;
    width: 50px;
    display: block;
    content: '';
    cursor: pointer;
    right: 0;
    z-index: 1000;
    transition: 0.2s;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span.batu {
	background: url("../image/sp-nav-on_black.png");
    /*position: absolute;*/
    height: 50px;/*線の太さ*/
    width: 50px;/*長さ*/
    display: block;
    content: '';
    cursor: pointer;
    right: 0;
    z-index: 1000;
    transition: 0.2s;
}



/*ハンバーガーアイ*閉じる用の薄黒カバー*//*はじめは隠しておく*//*全体に広がるように*/
/*#nav-close {
    display: none;
    position: fixed;
    z-index: 99;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0;
    transition: .3s ease-in-out;
}*/

/*中身*/
#nav-content {
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;/*最前面に*/
    /*width: 90%;右側に隙間を作る*/
    /*max-width: 250px;/*最大幅*/
    width: 100%;
    height: 100%;
    text-align: center;
    background: url(../image/contents/top/guide-img.jpg) repeat ;
    /*background: #929292;/*背景色*/
    transition: .5s ease-in-out;/*滑らかに表示*/
    webkit-transform: translateY(105%);
    transform: translateY(105%);
    /*-webkit-transform: translateX(-105%);
    transform: translateX(-105%);左に隠しておく*/

}
    
    #nav-input:checked ~ #nav-content {
    -webkit-transform: translateY(0%);
    transform: translateY(0%)!important;/*中身を表示*/
    box-shadow: 6px 0 25px rgba(0,0,0,.15);
}

/*チェックが入ったらもろもろ表示*//*カバーを表示*/
/*#nav-input:checked ~ #nav-close {
    display: block;
    opacity: .5;
}*/

}

@media screen and (max-width:1080px){
	nav.sp ul{
		list-style: none;
		margin:0;
		padding:0;
	}
	nav.sp ul li{
		line-height: 30px;
	    /*border-bottom: 1px #91C7FF solid;*/
        border-bottom: 1px #D0D0D0 solid;
	}
	nav.sp ul li a{
        padding: 1.2em 0;
        display: block;
        color: #434343;
        
	}
}


/*------------------------------------------------------------------------------------------------------------------
　sidebar
-------------------------------------------------------------------------------------------------------------------*/

#top-main-slider ul {
	list-style:none;
	margin:0;
	padding:0;
}

#top-main-slider ul li {
	width:100%;
}

#top-main-slider ul li img {
	width:100%;
	height:auto;
}

/*------------------------------------------------------------------------------------------------------------------
　youtube
-------------------------------------------------------------------------------------------------------------------*/

#youtube{
    padding: 30px 0 60px;
    background-color: #e0f0ff;
}

#youtube h2 span {
	color:#000000;
	font-size:18px;
	display:block;
}

.youtube_list {
display: flex;
justify-content: space-between;
list-style: none;
    padding: 0;
    margin: 0;
}

.youtube_list li {
    width: 33%;
    margin-right: 30px;
}

.youtube_list li:nth-child(3n){
    margin-right: 0px;
}

.youtube_list li a{
    background-color: #fff;
}

.youtube_list li a img:hover{
    opacity: 0.8;
}

@media screen and (max-width:800px){
    #youtube{
    padding: 30px 0;
    background-color: #e0f0ff;
}
    .youtube_list {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        list-style: none;
    }
    .youtube_list li {
        width: 100%;
        height: 100%;
        margin-right: 0px;
        margin-bottom: 30px;
    }
    .youtube_list li:last-child {
        margin-bottom: 0px;
        margin-right: 0px;
        margin-bottom: 30px;
    }
    
    .youtube_list li iframe{
        height: 405px;
    }
}

/*------------------------------------------------------------------------------------------------------------------
　footer
-------------------------------------------------------------------------------------------------------------------*/

#footer {
	width:100%;
	background: url(../image/contents/footer/back-img.jpg) no-repeat center bottom;
	height: 384px;
    /*height:800px;*/
	box-sizing: border-box;
	padding: 100px 0 ;
}

#footer nav ul li{
    padding: 0;
    display: inline-block;
    width: calc( 10% - 4.3px );
    text-align: center;
    color: #fff;
    border-right: 1px solid #fff;
    line-height: 14px;
}

#footer nav ul li:last-child{
    border-right:none;
}

@media screen and (max-width:1200px){
#footer nav ul li {
	padding:0;
	display: inline-block;
	width:calc( 20% - 4.3px );
	text-align: center;
	color: #fff;
	border-right: 1px solid #fff;
	line-height: 18px;
	margin-bottom: 20px;
}
#footer nav ul li:nth-child(5) {
	margin-bottom: 0px;
	border-right:none;
}
#footer nav ul li:nth-child(6) {
	margin-bottom: 0px;
}
#footer nav ul li:nth-child(7) {
	margin-bottom: 0px;
}
#footer nav ul li:nth-child(8) {
	margin-bottom: 0px;
}
#footer nav ul li:nth-child(9) {
	margin-bottom: 0px;
}
#footer nav ul li:nth-child(10) {
	margin-bottom: 0px;
}
}



@media screen and (max-width:1080px){
#footer {
	background:none;
	height: 100%;
	background-color:#00468c;
	padding: 50px 0 ;
}
#footer nav ul li{
	background-color: unset;
	font-size:1em;
	width:calc( 50% - 1px );
	float: left;
	text-align: center;
	margin:1em 0;
	border-right: none;
}
#footer nav ul li:nth-child(5) {
	margin-bottom: 1em;
}
#footer nav ul li:nth-child(6) {
	margin-bottom: 1em;
}
#footer nav ul li:nth-child(7) {
	margin-bottom: 1em;
}
#footer nav ul li:nth-child(8) {
	margin-bottom: 1em;
}
#footer nav ul li:nth-child(9) {
	margin-bottom: 1em;
}
#footer nav ul li:nth-child(10) {
	margin-bottom: 1em;
}
#footer nav ul li:nth-child(2n) {
	border-right:none;
}
}

#footer nav {
	background-color: unset;
}

#footer nav ul {
	padding: 0;
}

#footer .logo {
	background:url(../image/logo.png?v=2) top center;
	/* width: 300px; */
	width:500px;
	height:97px;
	margin:0 auto 30px;
	position:relative;
	display:block;
	background-repeat:no-repeat;
	background-size: contain;
}

#footer p {
	text-align: center;
	color: #fff;
	margin: 0 auto 25px;
}

#footer p br {
	display: none;
}

@media screen and (max-width:640px){
#footer p br {
	display: block;
}
}

#footer .logo a {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	overflow:hidden;
	white-space:nowrap;
	text-indent:100%;
}

.topback {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 100px;
    height: 100px;
    text-indent: -500px;
    transition: 0.5s;
	z-index: 99;
}

@media screen and (max-width:640px){
	.topback{
		right:0px;
		bottom:0;
	}
    /* #footer{
        padding-bottom: 130px;
    } */
}

@media screen and (max-width:1180px){
    #footer{
        padding-bottom: 130px;
    }
}

.topback a{
	position: absolute;
    background: url(../image/footer/topback.png) no-repeat right bottom;
    width: 100%;
    float: right;
    margin-bottom: 0;
	height:100px;
	display:block;
	white-space: nowrap;
	text-indent: 500%;
}

.insta-icon{
	background:url(../image/insta-icon.png) no-repeat top right;
	width: 70px;
	height:70px;
	float: right;
	right: 50px;
	display: block;
	background-position-x: 0px;
}

.insta-icon a{
	width: 70px;
	height:70px;
	display:block;
	white-space: nowrap;
	text-indent: 500px;
	position: absolute;
	right: 25px;
}

@media screen and (max-width:700px){
	.insta-icon{
		float: none;
		margin: 0 auto 20px;
	}
	.insta-icon a{
		position:static;
	}
}


/*------------------------------------------------------------------------------------------------------------------
　sidebar
-------------------------------------------------------------------------------------------------------------------*/

.subpage-contents .side-menu{
	width:292px;
	float:right;
}

@media screen and (max-width:1220px){
	.subpage-contents .side-menu{
		position:absolute;
		top:50px;
		right:0;
	}
}

@media screen and (max-width:850px){
.subpage-contents .side-menu{
	width:100%;
	float:none;
	position:relative;
	top:inherit;
	right:inherit;
}
}

.subpage-contents .side-menu ul{
	list-style:none;
	padding:0;
}

.subpage-contents .side-menu ul li{
	padding:0;
	border-bottom: 2px solid #d9d9d9;
	text-align: center;
}

@media screen and (max-width:850px){
.subpage-contents .side-menu ul li{
	width:50%;
	float:left;
	padding:0;
	border-bottom: 2px solid #d9d9d9;
	text-align: center;
}
.subpage-contents .side-menu ul li:nth-child(1){
	border-top: 2px solid #d9d9d9;
}
.subpage-contents .side-menu ul li:nth-child(2){
	border-top: 2px solid #d9d9d9;
}
}

@media screen and (max-width:640px){
	.subpage-contents .side-menu ul li {
		width:100%;
		float:none;
		border-top:none !important;
		border-bottom: 1px solid #d9d9d9;
	}
}

.subpage-contents .side-menu ul li a{
	display: block;
	width:100%;
	padding:16px;
	box-sizing: border-box;
	color:#00468c;
	text-decoration: none;
}

.subpage-contents .side-menu ul li a:after{
	content: url(../image/menu-icon.png);
	float:right;
}

.subpage-contents .side-menu ul li a:hover:after{
	content: url(../image/menu-icon-hover.png);
	float:right;
}

.subpage-contents .side-menu ul li a:hover{
	background-color:#00468c;
	color:#fff;
	transition: 0.2s;
}

.subpage-contents .consultation a{
	background: url(../image/consultation.png?v=2) top no-repeat;
	display: block;
	width:292px;
	height:292px;
}


.subpage-contents .consultation{
	/*background: url(../image/consultation-sp.png) top no-repeat;
	background-size:cover;
	width:100%;
	height:0;
	padding-top: 34.82352941176471%;*/
}
@media screen and (max-width:850px){
.subpage-contents .consultation a{
	display: block;
	background: url(../image/consultation-sp.png?v=2) top no-repeat;
	background-size:contain;
	width:100%;
	height:0;
	padding-top: 34.82352941176471%;
}
}

.subpage-contents .consultation:hover{
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	transition: 0.7s;
}

.subpage-contents .side-menu table{
	width:100%;
	border:1px #00468c solid;
	border-collapse: collapse;
	text-align: center;
	background-color:#fff;
	margin:30px 0;
}

@media screen and (max-width:850px){
	.subpage-contents .side-menu table{
	}
}

.subpage-contents .side-menu table thead{
	background-color:#00468c;
	color:#fff;
}

.subpage-contents .side-menu table tbody{
	border-bottom:1px solid #e3e3e3;
	border-left:1px #00468c solid;
	border-right:1px #00468c solid;
}

.subpage-contents .side-menu table tbody td , .subpage-contents .side-menu table thead th{
	border-left:1px #e3e3e3 solid;
	padding: 0;
}

.subpage-contents .side-menu table tbody td:first-child , .subpage-contents .side-menu table thead th:first-child{
	border-left:none;
}

.subpage-contents .side-menu table tbody:nth-child(3){
	border-bottom:1px #00468c solid;
}

.subpage-contents .side-menu table tbody tr td:first-child{
	color:#00468c;
}

.subpage-contents .side-menu .insta-banner , .insta-banner{
	width:100%;
	text-align:center;
	margin-bottom:30px;
	border: 1px solid #f5a81a;
}

.subpage-contents .side-menu .insta-banner a , .insta-banner a , .subpage-contents .side-menu .line-banner a , .line-banner a ,.subpage-contents .side-menu .youtube-banner a{
	width:100%;
	height:100%;
	display:block;
}

.subpage-contents .side-menu .insta-banner a:hover , .insta-banner a:hover , .subpage-contents .side-menu .line-banner a:hover , .line-banner a:hover, .subpage-contents .side-menu .youtube-banner a:hover{
	opacity:0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
	transition: 0.4s;
}

@media screen and (max-width:850px){
.subpage-contents .side-menu .insta-banner{
	width:calc( 50% - 17px );
	text-align:center;
	float:left;
	margin-bottom:0px;
	margin-right:30px;
}
	
}

.subpage-contents .side-menu .line-banner, .line-banner{
	width:100%;
	text-align:center;
	border: 1px solid #00b900;
}

.subpage-contents .side-menu .tiktok-banner, .tiktok-banner{
	width:100%;
	text-align:center;
	border: 1px solid #000;
	background-color: #000;
}

.subpage-contents .side-menu .youtube-banner, .youtube-banner{
	width:100%;
	text-align:center;
	border: 1px solid #da1d1a;
}

.subpage-contents .side-menu .tiktok-banner{
	margin-top: 30px;
}

.subpage-contents .side-menu .youtube-banner{
	margin-top: 30px;
}

@media screen and (max-width:850px){
.subpage-contents .side-menu .tiktok-banner{
	width:calc( 50% - 17px );
	text-align:center;
	float:left;
	margin-bottom:30px;
	margin-right:30px;
}
	
}

@media screen and (max-width:850px){
.subpage-contents .side-menu .line-banner{
	width:calc( 50% - 17px );
	text-align:center;
	float:right;
}
	
.subpage-contents .side-menu .youtube-banner{
	width:calc( 50% - 17px );
	text-align:center;
	float:right;
	margin-bottom:30px;
}
}

.subpage-contents .side-menu select {
	width:100%;
	margin-top:30px;
	margin-bottom:10px;
}

.latest-posts ul li {
	position:relative;
	clear:both;
}

.latest-posts ul li:after {
	content: "";
    display: block;
    clear: both;
}

.latest-posts ul li .thumb {
	float:left;
	width:100px;
	height:auto;
	margin-right:15px;
}

.latest-posts ul li .thumb img {
	width:100%;
	height:auto;
	float:none;
}

.latest-posts ul li p {
	margin:0;
	padding:0;
	text-align:left;
	overflow:hidden;
}

.subpage-contents .side-menu .latest-posts ul li {
	padding-top:15px;
	padding-bottom:15px;
}

@media screen and (max-width:850px){
	.subpage-contents .side-menu .latest-posts ul li {
		width:100%;
		border-top: none !important;
		border-bottom: 1px solid #d9d9d9 !important;
	}
}

.subpage-contents .side-menu .latest-posts ul li a {
	padding:0 !important;
}

.subpage-contents .side-menu .latest-posts ul li a:after {
	display:none;
}

.subpage-contents .side-menu .latest-posts ul li a:hover {
	background-color:inherit !important;
	color: #00468c !important;
	text-decoration:underline !important;
}


/*------------------------------------------------------------------------------------------------------------------
　additional
-------------------------------------------------------------------------------------------------------------------*/

#contents-primary {
	position:relative;
}

#contents {
	position:relative;
}

#subpage h2 {
	background-image:url(../image/layout/h2-icon.png);
	background-position:left 0px top 10px;
	background-repeat:no-repeat;
	min-height:58px;
	display:block;
	padding:0;
	margin:0;
	padding-left:72px;
	margin-bottom:30px;
	box-sizing:border-box;
	font-family: 'FOT-SeuratPro-M';
	font-weight:normal;
	font-size:30px;
	color:#00468c;
}

#subpage h2 span {
	color:#000000;
	font-size:18px;
	display:block;
}

#subpage h3 {
	background-image:url(../image/layout/h3-back.gif);
	border:1px solid #5d9fe0;
	margin:0;
	padding:15px;
	margin-bottom:30px;
	position:relative;
	font-size:22px;
	color:#ffffff;
	font-family: 'FOT-SeuratPro-M';
	text-align:center;
	text-shadow: 0 2px 2px #4e7eae;
}

#subpage h3:before {
	width:100%;
	height:1px;
	background-color:#ffffff;
	position:absolute;
	top:0;
	left:0;
	content:"";
}

#subpage .blog h3.title {
	background-image:none;
	border:2px solid #00468c;
	padding-top:15px;
	padding-bottom:15px;
	padding-left:18px;
	padding-right:18px;
	color:#00468c;
	font-size:18px;
	text-align:left;
	text-shadow:none;
}

#subpage .blog h3.title span {
	display:block;
	font-size:14px;
	color:#000000;
}

#subpage .blog .line180 {
	padding-bottom:30px;
}

#subpage h4 {
	background-image:url(../image/layout/h4-icon.png);
	background-position:left top;
	background-repeat:no-repeat;
	border-bottom:2px solid #00468c;
	min-height:32px;
	margin:0;
	padding:0;
	margin-bottom:30px;
	padding-left:47px;
	padding-bottom:10px;
	font-weight:normal;
	font-size:22px;
	color:#00468c;
	font-family: 'FOT-SeuratPro-M';
}

#subpage .side-menu h4 {
	margin-bottom:10px;
}

@media screen and (max-width:850px){
	#subpage .side-menu h4 {
		margin-bottom:30px;
	}
}

#subpage h5 {
	background-color:#d6ebff;
	padding-top:6px;
	padding-bottom:6px;
	padding-left:15px;
	padding-right:15px;
	font-size:18px;
	color:#004283;
	display:inline-block;
	font-weight:normal;
	font-family: 'FOT-SeuratPro-M';
	margin:0;
}


/*-----subpage-----*/

.subpage-contents {
	padding-top:50px;
	padding-bottom:50px;
	position:relative;
}

.subpage-contents .main-contents{
	max-width:858px;
	min-height:1550px;
	width:100%;
	float:left;
}

@media screen and (max-width:1220px){
	.subpage-contents .main-contents{
		width:calc(100% - 342px);
		min-height:2200px;
	}
}

@media screen and (max-width:850px){
	.subpage-contents .main-contents{
		width:100%;
		float:none;
		min-height:unset;
	}
}


/*----------------------------------------------------------------------------
   home
------------------------------------------------------------------------------*/

.point {
	margin:50px 0;
}

.point .point-contents {
	width:calc( 33.33333333% - 20px );
	float: left;
	margin-right:30px;
}

@media screen and (max-width:900px){
.point .point-contents {
	width:100%;
	float: none;
	margin-right:0px;
}
}

.point .point-contents:nth-child(1)  {
	background: url(../image/contents/top/point1.png) top center no-repeat;
	height:547px;
	padding-top: 340px;
    padding-left: 30px;
    padding-right: 30px;
    box-sizing: border-box;
	
}

.point .point-contents:nth-child(2)  {
	background: url(../image/contents/top/point2.png) top center no-repeat;
	height:547px;
	padding-top: 340px;
    padding-left: 30px;
    padding-right: 30px;
    box-sizing: border-box;
}

.point .point-contents:nth-child(3)  {
	background: url(../image/contents/top/point3.png) top center no-repeat;
	height:547px;
	padding-top: 340px;
    padding-left: 30px;
    padding-right: 30px;
    box-sizing: border-box;
}

.point .point-contents:last-child {
	margin-right:0px;
}

.point #p1 , .point #p2 , .point #p3 {
	width:100%;
}

.top-about {
	padding-top:50px;
	padding-bottom:50px;
}

@media screen and (max-width:1200px){
.top-about {
	padding-top:50px;
	padding-bottom:50px;
	padding-left:0px;
	padding-right:0px;
	box-sizing: border-box
}
}

.top-about ul {
	list-style:none;
	margin:0;
	padding:0;
	width:calc(100% + 30px);
}

@media screen and (max-width:1200px){
.top-about ul {
	list-style:none;
	margin:0;
	padding:0;
	width:100% ;
}
}

.top-about ul li {
	width:calc(33.333% - 30px);
	max-width:380px;
	height:547px;
	margin-right:30px;
	float:left;
	background-color: #fff;
	background-position:center top;
	background-repeat:no-repeat;
	text-align:center;
	position:relative;
	box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.20);
    -moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.20);
    -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.20);
}

@media screen and (max-width:1200px){
.top-about ul li {
	width:calc(33.333% - 20px);
	float:left;
}
}

@media screen and (max-width:1000px){
.top-about ul li {
	width:100% ;
	max-width: none;
	float:none;
	margin:0 auto 30px;
}
}

.top-about ul li:nth-child(1) { background:url(../image/contents/top/point1.png) no-repeat top center ; }
.top-about ul li:nth-child(2) { background:url(../image/contents/top/point2.png) no-repeat top center ; }
.top-about ul li:nth-child(3) { background:url(../image/contents/top/point3.png) no-repeat top center ; }

@media screen and (max-width:1200px){
.top-about ul li:nth-child(3) { margin-right: 0 }
 }

@media screen and (max-width:1000px){
.top-about ul li {
	background-position:  top 30px center!important;
}
.top-about ul li:nth-child(3) {
	margin-right:auto;
}
}

.top-about ul li p {
	text-align:center;
	position:absolute;
	bottom:43px;
	left:0;
	right:0;
	margin:0 auto !important;
	transition:0.3s;
	padding: 0 30px;
}

@media screen and (max-width:1100px){
.top-about ul li p {
	text-align:center;
	position:absolute;
	bottom:40px;
	left:0;
	right:0;
	margin:0 auto !important;
	transition:0.3s;
	padding: 0 18px;
}
}

@media screen and (max-width:1010px){
.top-about ul li p {
	text-align:center;
	position:absolute;
	bottom:10px;
	left:0;
	right:0;
	margin:0 auto !important;
	transition:0.3s;
	padding: 0 18px;
}
}

@media screen and (max-width:1000px){
.top-about ul li p {
	text-align:center;
	position:absolute;
	bottom:80px;
	left:0;
	right:0;
	margin:0 auto !important;
	transition:0.3s;
	padding: 0 18px;
}
}

@media screen and (max-width:640px){
.top-about ul li p {
	padding: 0 30px;
}
}

@media screen and (max-width:640px){
.top-about ul li:nth-child(1) p {
	bottom:40px;
}
.top-about ul li:nth-child(2) p {
	bottom:65px;
}
.top-about ul li:nth-child(3) p {
	bottom:65px;
}
}

video{
	margin-bottom:30px; 
}

#info {
	width:100%;
	padding:60px 0;
	background-color: #e0f0ff;
}

@media screen and (max-width:1200px){
#info {
	width:100%;
	margin:0 auto;
	padding:100px 30px;
	box-sizing:border-box;
}
}

#info .info-contents{
	width:100%;
	max-width: 1200px;
	margin:0 auto;
}

#info .info-contents-left{
	float:left;
	width:calc( 50% + 10px );
}

@media screen and (max-width:900px){
#info .info-contents-left{
	float:none;
	width:100%;
}
}

#info .info-contents-left h2{
	margin: 0;
    padding: 0;
    font-weight: bold;
    background-image: url(../image/contents/top/heart.png);
    background-position: left;
    background-repeat: no-repeat;
    width: 100%;
    height: 51px;
    line-height: 30px;
    padding-left: 85px;
    box-sizing: border-box;
    margin-bottom: 40px;
    font-size: 1.875em;
	font-weight: normal;
	font-family: "FOT-スーラ ProN" ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	color:#00468c;
}

#info .info-contents-left h2 span{
	margin: 0;
    padding: 0;
    font-weight: normal;
    width: 100%;
    box-sizing: border-box;
	font-size:14px;
	font-family: "FOT-スーラ ProN" ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	color:#000;
	position: absolute;
}

@media screen and (max-width:900px){
#info .info-contents-left h2{
	margin: 0;
    padding: 0;
    font-weight: bold;
    background-image: url(../image/contents/top/heart.png);
    background-position: left;
    background-repeat: no-repeat;
    width: 100%;
    height: 51px;
    padding-left: 61px;
    box-sizing: border-box;
    margin-bottom: 40px;
	font-size:24px;
}
}

#info .info-contents-left ul{
	list-style: none;
	margin: 0;
	padding: 0;
	height: 150px;
	margin-bottom: 30px;
}

@media screen and (max-width:900px){
#info .info-contents-left ul{
	list-style: none;
    margin: 0;
    padding: 0;
	/*height: 300px;*/
	height:auto;
    margin-bottom: 45px;
}
}

@media screen and (max-width:640px){
#info .info-contents-left ul{
	list-style: none;
    margin: 0;
    padding: 0;
	/*height: 350px;*/
	height: auto;
    margin-bottom: 45px;
}
}


#info .info-contents-left ul li{
	position: relative;
	padding-bottom: 20px;
	padding-top: 20px;
	font-family: "FOT-スーラ ProN" ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

@media screen and (max-width:640px){
#info .info-contents-left ul li{
	position: relative;
	padding-bottom: 20px;
	padding-top: 0px;
	font-family: "FOT-スーラ ProN" ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
#info .info-contents-left ul li:first-child{
	padding-top: 20px;
}
}

#info .info-contents-left ul li p{
	position: relative;
    padding-bottom: 20px;
    padding-top: 20px;
	border-bottom:1px solid #d8d8d8;
	
}

#info .info-contents-left ul li:last-child{
	/* border-bottom: 1px solid #00468c; */
}

#info .info-contents-left ul li span{
	position: absolute;
    /* top: 20px; */
    left: 0;
    font-size: 1em;
	color:#6d6d6d;
}

@media screen and (max-width:900px){
#info .info-contents-left ul li span{
	position: absolute;
	top: 0;
	left: 0;
	color:#6d6d6d;
}
}

@media screen and (max-width:640px){
#info .info-contents-left ul li span{
	position: absolute;
	color:#6d6d6d;
}
}

#info .info-contents-left ul li p{
	margin: 0;
	margin-bottom: 10px;
	padding-top: 0px;
	padding-left: 150px;
	padding-right: 20px;
	padding-bottom: 10px;
	color: #00468c;
}

@media screen and (max-width:900px){
#info .info-contents-left ul li p{
	margin: 0;
	padding: 0;
	padding-left: 150px;
	padding-right:0px;
	margin-left: 0;
	box-sizing: border-box;
	margin-bottom: 10px;
    padding-bottom: 10px;
}
}

#info .info-contents-left .tel {
    width: 100%;
}

#info .info-contents-left .tel img {
	width:100%;
}

@media screen and (max-width:900px){
#info .info-contents-left .tel img {
	margin-bottom:45px;
}
}

#info .info-contents-left .tel a {
	width:100%;
	white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
	height:100%;
}

#info .info-contents-right{
	float:right;
	width:calc( 50% - 50px );
	background-color: #fff;
	height: 570px;
}

@media screen and (max-width:900px){
#info .info-contents-right{
	float:none;
	width:100%;
}
}

#top-galery {
	padding-top:60px;
	padding-bottom:60px;
	background-position:center top;
	background-repeat:no-repeat;
}

#top-galery #top-slider-primary ul {
	list-style:none;
	margin:0;
	padding:0;
}

#top-galery #top-slider-primary li img {
	width:100%;
	height:auto;
}

.greeting {
	margin-top:45px;
}

.greeting .insta-banner,
.greeting .line-banner,
.greeting .tiktok-banner,
.greeting .youtube-banner{
	width:auto;
	float:left;
	margin-top:30px; 
}

.greeting .line-banner,
.greeting .tiktok-banner{
   margin-left: 30px;
}

.greeting .insta-banner img, 
.greeting .line-banner img, 
.greeting .tiktok-banner img{
	width:auto;
	float:left; 
	margin:auto; 
}

@media screen and (max-width:1200px){
.greeting .tiktok-banner{
clear: both;
margin-left:0;
margin-top: 0;
}
	
}

.greeting h2 {
	float:left;
	width:60%;
	margin-left:0;
	margin-right:0;
	margin-top:0;
	margin-bottom:45px;
	color:#00468c;
	border-bottom:2px dotted;
}

@media screen and (max-width:640px){
.greeting .insta-banner,
.greeting .line-banner,
.greeting .tiktok-banner{
	width:calc( 50% - 17px );
	text-align:center;
	float:left;
}
.greeting .insta-banner img, 
.greeting .line-banner img, 
.greeting .tiktok-banner img{
	width:auto;
	float:none; 
	margin:auto; 
}
}

@media screen and (max-width:640px){
.greeting h2 {
	float:none;
	width:100%;
	margin-left:0;
	margin-right:0;
	margin-top:0;
	margin-bottom:45px;
	color:#00468c;
	border-bottom:2px dotted;
}
}

.greeting p {
	/*float:left;*/
	width:60%;
	line-height:45px; 
	padding:0;
	margin:0;
}

@media screen and (max-width:640px){
.greeting p {
	float:none;
	width:100%;
	line-height:50px; 
	padding:0;
	margin:0;
}
}

.greeting .doctor{
	float:right;
	width:25%; 
	text-align: center;
}

.greeting .doctor img{
	/* float:right;
	width:25%; */
	display: block;
	width:100%;
	margin-bottom: 8px;
}


@media screen and (max-width:640px){
/* .greeting img{
	float:none;
	width:85%;
	margin:20px auto 45px;
	display:inherit;
} */
.greeting .doctor{
	float:none;
	width:85%;
	margin:20px auto 45px;
	display:inherit;
}
}

.top-guide{
	background: url(../image/contents/top/guide-img.jpg) repeat ;
	width: 100%;
	padding: 60px 0 30px;
	margin-top:60px;
	margin-bottom: 60px;
}

.top-guide h3{
	color: #00468c;
	font-weight: normal;
	font-size:36px;
	text-align: center;
	margin:0;
	margin-bottom:60px;
	line-height: 40px;
}

.top-guide h3 span{
	color: #434343;
	font-weight: normal;
	font-size:24px;
}

.top-guide ul{
	list-style: none;
	padding: 0;
	margin:0;
}

.top-guide ul li{
	width:calc( 33.3333333% - 20px );
	margin-right: 30px;
	margin-bottom: 30px;
	float: left;
}

.top-guide ul li img{
	width:100%;
}

.top-guide ul li a img:hover {
	opacity:0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
}

.top-guide ul li:nth-child(3n){
	margin-right: 0;
}

@media screen and (max-width:900px){
.top-guide ul li:nth-child(3n){
	margin-right:30px;
}
}

@media screen and (max-width:900px){
.top-guide ul li{
	width:calc( 50% - 15px );
	margin-right: 30px;
	margin-bottom: 30px;
	float: left;
}
.top-guide ul li:nth-child(2n){
	width:calc( 50% - 15px );
	margin-right:0px;
	margin-bottom: 30px;
	float: left;
}
.top-guide ul li:nth-child(3){
	margin-right:30px;
}
}

@media screen and (max-width:1200px){
.top-guide ul li img{
	width:100%;
}
}

#access {
	margin-top:50px;
	margin-bottom:50px;
}

@media screen and (max-width:1200px){
#access {
	background-color: #fff9f1;
	height:auto;
	padding-bottom: 70px;
}
}

#access .access-contents {
	max-width:1200px;
	width:100%;
	margin:0 auto;
}

@media screen and (max-width:1200px){
#access .access-contents {
	width:100%;
	margin:0 auto;
	padding:0 30px;
	box-sizing: border-box;
}
}

#access .access-contents .access-right {
	float: right;
    width: calc(50% - 25px);
	margin:0px 0;
	box-sizing: border-box;
}

#access .access-contents .access-right .time-right {
    width:100% ;
	margin:0px 0;
}

#access .access-contents .access-import {
	float: left;
    width: calc(50% - 25px);
	margin:0px 0;
	box-sizing: border-box;
}

@media screen and (max-width:1200px){
#access .access-contents .access-import {
	float: none;
    width: 100%;
	margin:70px 0 0;
	box-sizing: border-box;
	padding-top:70px;
}
#access .access-contents .access-right {
	float: none;
    width: 100%;
	margin:35px 250px 0 ;
	box-sizing: border-box;
}
}

@media screen and (max-width:800px){
#access .access-contents .access-right {
	float: none;
    width: 100%;
	margin:35px 100px 0 ;
	box-sizing: border-box;
}
}

#access .access-contents .access-import h3{
	margin: 0;
    padding: 0;
    font-weight: bold;
    background-image: url(../image/contents/top/clinic-info-icon.png);
    background-position: left;
    background-repeat: no-repeat;
    width: 100%;
    height: 32px;
    line-height: 32px;
    padding-left: 45px;
    box-sizing: border-box;
    margin-bottom: 30px;
	font-size:20px;
}

@media screen and (max-width:640px){
#access .access-contents .access-import h3{
	margin: 0;
    padding: 0;
    font-weight: bold;
    background-image: url(../image/contents/top/clinic-info-icon.png);
    background-position: left;
    background-repeat: no-repeat;
    width: 100%;
    height: 32px;
    line-height: 32px;
    padding-left: 45px;
    box-sizing: border-box;
    margin-bottom: 30px;
	font-size:24px;
}
#access .access-contents .access-right {
	margin-left:0;
	margin-right:0;
}
}

#access .access-contents .access-import p{
	margin:0;
	font-size:18px;
	margin-top:10px;
	padding-bottom: 0
}

@media screen and (max-width:640px){
#access .access-contents .access-import p{
	margin:0;
	font-size:20px;
	margin-top:10px;
}
}

#access .access-contents .access-import table{
	width:100%;
	border:1px #00468c solid;
	border-collapse: collapse;
	text-align: center;
	background-color:#fff;
}

@media screen and (max-width:1200px){
#access .access-contents .access-import table{
	float:left;
	width:50%;
	border:1px #00468c solid;
	border-collapse: collapse;
	text-align: center;
	background-color:#fff;
}
}

@media screen and (max-width:950px){
#access .access-contents .access-import table{
	float:left;
	width:100%;
	border:1px #00468c solid;
	border-collapse: collapse;
	text-align: center;
	background-color:#fff;
}
}

#access .access-contents .access-import table thead{
	background-color:#00468c;
	color:#fff;
}

#access .access-contents .access-import table tbody{
	border-bottom:1px solid #e3e3e3;
	border-left:1px #00468c solid;
	border-right:1px #00468c solid;
}

#access .access-contents .access-import table tbody td , #access .access-contents .access-import table thead th{
	border-left:1px #e3e3e3 solid;
}

#access .access-contents .access-import table tbody td:first-child , #access .access-contents .access-import table thead th:first-child{
	border-left:none;
}

#access .access-contents .access-import table tbody:nth-child(3){
	border-bottom:1px #00468c solid;
}

#access .access-contents .access-import table tbody tr td:first-child{
	color:#00468c;
}

#access .access-contents .access-import td{
	/*border:1px #000 solid;*/
	padding:12px;
	font-weight:normal;
}

#access .access-contents .access-import th{
	/*border:1px #000 solid;*/
	padding:12px;
	font-weight:normal;
}

#access .access-contents .time-contents {
	
}

#access .access-contents .banner-box {
	
}

@media screen and (max-width:1200px){
#access .access-contents .time-contents {
	float:left;
	margin-left:30px;
}
#access .access-contents .banner-box {
	float:left;
	margin-left:30px;
	display: inherit;
    margin-top: 22px;
    text-align: center;
    color: #fff;
    margin: 20px auto;
}
}

@media screen and (max-width:950px){
#access .access-contents .time-contents {
	display: inline-block;
	width:100%;
	float:none;
	margin-left:0px;
	margin-top:20px;
}
}

@media screen and (max-width:640px){
#access .access-contents .time-contents {
	float:left;
	margin-left:0px;
}
#access .access-contents .banner-box {
	float:left;
	margin-left:0px;
}
}

@media screen and (max-width:950px){
#access .access-contents .time-contents .time-left {
	float:left;
	width:calc( 55% - 30px );
}
}

@media screen and (max-width:640px){
#access .access-contents .time-contents .time-left {
	width:100% ;
}
}

#gmap {
	float: none;
    width:100%;
	height:450px;
}

.banner-box{
	width:100%;
	display: inline-block;
	float: right;
	margin-top:22px;
	text-align: center;
	color:#fff;
}

.banner-box img{
	width:100%;
}

@media screen and (max-width:1200px){
.banner-box img{
	width:auto;
	margin-top: 30px;
}
}

.info-corona{
	border:2px solid #00468c;
	margin-top: 45px;
	padding:45px 45px 20px;
	box-sizing:border-box; 
}

.info-corona h2{
	margin-top:0;
	margin-bottom:0.5em;
	color:#f00;
}

.info-corona b{
	text-decoration:underline;
	color:#00468c; 
}

.info-corona ul {
	padding:0;
}

.info-corona ul li{
    text-indent: -1em;
	list-style:none;
	padding:0 0 1em 1em;
}

.time-modif {
	background-color: #00468c;
	padding: 30px;
	margin-top: 15px;
	margin-bottom: 30px;
	text-align: center;
}

.time-modif strong {
	display: block;
	font-size: 28px;
	color: #ffffff;
}

.time-modif p {
	color: #ffffff;
	font-weight: bold;
	font-size: 18px;
	margin: 0;
	padding: 0;
}

.top-reserve {
	background-color: #ffffff;
	padding: 30px;
	margin-top: 15px;
	margin-bottom: 30px;
	text-align: center;
	display: block;
	text-decoration: none!important;
	border: 6px solid  #00468c;
}

.top-reserve strong {
	display: block;
	font-size: 28px;
	color: #00468c;
}

.top-reserve span {
	color: #00468c;
	font-weight: bold;
	font-size: 18px;
	margin: 0;
	padding: 0;
}

.top-reserve span.button{
	display: inline-block;
	background-color: #f0a34b;
	color: #ffffff;
	padding: 10px 20px;
	border-radius: 4px;
	margin-top: 10px;

}

.online-system h2{
	color: #00468c;
}

.online-system p{
	padding-bottom: 0;
	margin-bottom: 0;
}


/*----------------------------------------------------------------------------
   doctor
------------------------------------------------------------------------------*/

.ryakureki {
	list-style:none;
	margin:0;
	padding:0;
	float:left;
}

.ryakureki li {
	position:relative;
	padding-left:153px;
	padding-bottom:30px;
}

.ryakureki h5 {
	position:absolute;
	top:0;
	left:0;
	width:120px;
	text-align:center;
	box-sizing:border-box;
	display:block;
}

.ryakureki li p {
	margin:0;
	padding:0;
}


/*----------------------------------------------------------------------------
   staff
------------------------------------------------------------------------------*/

.doctor-photo img {
	width:400px;
	display:block;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:30px;
}

.staff-option {
}

.staff-option li {
	padding-left:70px;
	position:relative;
}

.staff-option li span {
	position:absolute;
	top:0;
	left:0;
}

.staff-doctor-comment {
	border:1px solid #00468c;
	padding:20px;
	margin-bottom:60px;
}

.staff-list-primary {
	width:100% ;
}

.staff-list-primary .list {
	width:100%;
	float:left;
	margin-bottom:30px;
	margin-right:30px;
	box-sizing:border-box;
	padding:30px;
	border:1px solid #cccccc;
}

.staff-list-primary .list img {
	display:block; 
	width:40%;
	height:auto;
	margin-bottom:15px;
	margin:0 auto;
}


/*----------------------------------------------------------------------------
   concept
------------------------------------------------------------------------------*/

.concept-big-comment {
	font-size:20px;
	color:#00468c;
	font-weight:bold;
}

.concept-catch-comment {
	font-family: 'FOT-SeuratPro-M';
	font-size:26px;
	color:#00468c;
}

.concept-catch-comment span {
	background-color:#00468c;
	display:inline-block;
	color:#ffffff;
	width:100px;
	padding-top:10px;
	padding-bottom:10px;
	margin-right:15px;
	border-radius:5px;
	text-align:center;
	font-size:20px;
}


/*----------------------------------------------------------------------------
   treatment
------------------------------------------------------------------------------*/

.dental-mamchishiki-bana {
	padding-top:30px;
}

.dental-mamchishiki-bana img {
	width:100%;
	height:auto;
}

.treatment .link-button {
	width:100%;
	max-width:580px;
}

/*----------------------------------------------------------------------------
   recruit
------------------------------------------------------------------------------*/

.recruit-list-primary {
	width:100%;
}

.recruit-list-primary ul {
	list-style:none;
	margin:0;
	padding:0;
}

.recruit-list-primary ul li a {
	width:100%;
	box-sizing:border-box;
	padding:15px;
	border:1px solid #00468c;
	text-decoration:none;
	color:#00468c;
	text-align:center;
	display:block;
	margin-bottom:15px;
	position:relative;
}

.recruit-list-primary ul li a:hover {
	text-decoration:underline;
}

.recruit-list-primary ul li a:after {
	position:absolute;
	right:10px;
	content:"〉";
	color:#00468c;
}

.recruit-list-primary ul li .link-off {
    pointer-events: none;
}

.recruit-list-primary ul li .link-off:after {
	content: none;
}

#recruit .alart {
	background-color:#ffffff;
	border:1px solid #FF5053;
	padding:20px;
	color:#FF5053;
	text-align:center;
	font-weight:bold;
	margin-bottom:30px;
}

#recruit .comment {
	font-size:20px;
	color:#00468c;
	font-family: 'FOT-SeuratPro-M';
	font-weight:normal;
}

td.p-none .selectRequired {
	float: left;
}

td.p-none .selectRequired p{
	display: none;
}


.w-100{
	width:100%;
	height:100%;
	min-height: 500px;
}

.link_box{
    margin-top: 30px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 30px;
    grid-row-gap: 30px
        
}

.link_box a{
    width: 100%;
   padding: 10px 0;
    text-align: center;
    font-family: "FOT-スーラ ProN" ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    text-decoration: none;
   
}

.link_box a:first-child{
  grid-column-start: 1;
  grid-column-end: 3;
  grid-row-start: 1;
  grid-row-end: 2;
  border: 2px solid #00468c;
    background: url(../image/contents/top/guide-img.jpg) repeat;
     color: #00468c;
    font-size: 24px;
}



.link_box a:first-child::before{
   content: "";
    width:50px;
    height: 59px;
    display: inline-block;
    background: url("../image/contents/top/tooth.png") no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 1em;
}

.link_box a:nth-child(2){
  border: 2px solid #e3e3e3;
    background-color: #e0f0ff;
     color: #00468c;
    font-size: 24px;
}

.link_box a:nth-child(2)::before{
   content: "";
    width:50px;
    height: 50px;
    display: inline-block;
    background: url("../image/contents/top/tel_blue.png") no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 1em;
}

.link_box a:nth-child(3){
      border: 2px solid #e3e3e3;
      /*background-color: #FFF2E1;
      color: #00468c;*/
      background-color: #f0a34b;
      color: #231815;
      font-size: 24px;
}

.link_box a:nth-child(3)::before{
   content: "";
    width:50px;
    height: 50px;
    display: inline-block;
    background: url("../image/contents/top/yoyaku_black.png") no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 1em;
}

.link_box2{
    margin: 30px auto 0;
    text-align: center;
    display: grid;
    width: 418px;
        
}

.link_box2 a{
    width: 100%;
   padding: 10px 0;
    text-align: center;
    font-family: "FOT-スーラ ProN" ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    text-decoration: none;
   
}

.link_box2 a:first-child{
      border: 2px solid #e3e3e3;
      /*background-color: #FFF2E1;
      color: #00468c;*/
      background-color: #f0a34b;
      color: #231815;
      font-size: 24px;
}

.link_box2 a:first-child::before{
   content: "";
    width:50px;
    height: 50px;
    display: inline-block;
    background: url("../image/contents/top/yoyaku_black.png") no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 1em;
}
@media screen and (max-width:800px){
.link_box{
    margin-top: 30px;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 30px;
    grid-row-gap: 30px
        
}
    
    .link_box a:first-child{
  grid-column-start: 1;
  grid-column-end: 2;
  grid-row-start: 1;
  grid-row-end: 2;
  border: 2px solid #00468c;
    background: url(../image/contents/top/guide-img.jpg) repeat;
     color: #00468c;
    font-size: 24px;
}

}

#youtube h2 {
	background-image:url(../image/layout/h2-icon.png);
	background-position:left 0px top 10px;
	background-repeat:no-repeat;
	min-height:58px;
	display:block;
	padding:0;
	margin:0;
	padding-left:72px;
	margin-bottom:30px;
	box-sizing:border-box;
	font-family: 'FOT-SeuratPro-M';
	font-weight:normal;
	font-size:30px;
	color:#00468c;
}

.sub-ttl{
    color: #004283;
    background-color: #d6ebff;
    font-weight: bold;
    display: inline-block;
    margin-bottom: 15px;
    padding: 10px 30px 10px 10px;
    font-size:20px;
    font-family: 'FOT-SeuratPro-M';
}

.sub-ttl::before{
    content: "●";
    margin-right: 10px;
}

.access-link{
    color: #fff!important;
    text-decoration: none!important;
    background-color: #22578C;
    font-weight: bold;
    margin-bottom: 15px;
    padding: 24px;
    font-size:20px;
    /*width:50%;*/
    width:430px;
    display: block;
    font-family: 'FOT-SeuratPro-M'; 
    position: relative;
    vertical-align: 4px;
    box-sizing: border-box;
    letter-spacing: 2px;
}

.access-link::after{
    content: "";
    display: inline-block;
    width: 140px;
    height: 20px;
    background: url("../image/contents/access/arrow.png") no-repeat right;
    background-size: contain;
    position: absolute;
    right: 30px;
    bottom:12px;
    
}

@media screen and (max-width:800px){
.access-link{
    color: #fff!important;
    text-decoration: none!important;
    background-color: #22578C;
    font-weight: bold;
    margin:0 auto 30px;
    padding: 24px;
    font-size:20px;
    /*width:50%;*/
    width:430px;
    display: block;
    font-family: 'FOT-SeuratPro-M'; 
    position: relative;
    vertical-align: 4px;
    box-sizing: border-box;
    letter-spacing: 2px;
}
}

.case-to-link{
border: 2px solid #00468c;
    background: url(../image/contents/top/guide-img.jpg) repeat;
    color: #00468c!important;
	text-decoration: none!important;
    font-size: 20px;
	/*width: 48%;*/
	display: block;
	text-align: center;
	padding: 10px;
}

.case-to-link-box{
	text-align: center;
	margin: 40px auto;
}

.case-to-link-box .case-to-link:not(:last-child){
	margin-bottom: 20px;
}

.kyosei-banner {
	width: calc(100% + 30px);
	box-sizing: border-box;
	padding-left: 30px;
	padding-right: 30px;
	margin: 30px auto;
	text-align: center;
}

.kyosei-banner img {
	width: calc(50% - 30px);
	margin-right: 30px;
	margin-bottom: 30px;
	float: left;
}

@media screen and (max-width:1000px){
	.kyosei-banner {
		width: 100%;
	}
	.kyosei-banner img {
		float: none;
		width: auto;
		max-width: 100%;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
}

.marker_yellow {
	background:linear-gradient(transparent 60%, #ffff00 0%); 
}


/*----------------------------------------------------------------------------
   self-implantation
------------------------------------------------------------------------------*/
.self-implantation .list{
	list-style: none;
}

.self-implantation .list li{
	position: relative;
}

.self-implantation .list strong{
	font-size: 18px;
}

.self-implantation .list li::before{
	position: absolute;
	top: 4px;
	left: -1.75em;
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	background-color:#00468c;
	border-radius: 50%;
}

@media screen and (max-width:1000px){
	.self-implantation .list li::before{
		top: 6px;
		left: -1.5em;
	}
}

.self-implantation .img01{
max-width: 600px;
}

@media screen and (max-width:1000px){
	.self-implantation .img01{
		max-width: 1000px;
		}
}

.difference > div img{
	width: 100%;
}

.difference > div > span{
	text-align: center;
	display: block;
	font-weight: bold;
	margin-bottom: 5px;
}

.col2_gr {
	display: grid;
	gap: 30px;
	grid-template-columns: repeat(2,1fr);
}


@media screen and (max-width:640px){
	.col2_gr {
		grid-template-columns: repeat(1,1fr);
	}
}

.difference-table{
	width: 100%;
	text-align: center;
	border: 1px solid #ededed;
}

.difference-table thead th{
	background-color: #ededed;
	padding: 10px 0;

}

.difference-table tbody td{
	border-bottom: 1px solid #ededed;
}

.difference-table tbody th+td{
	border-right: 1px solid #ededed;
}

/* .difference-table thead th:nth-child(1){
	background-color: #fff;
	border: 1px solid #ededed;
} */

.difference-table tbody th{
	width: 20%;
	background-color: #ededed;
	padding: 10px 0;
}

.merit{
	list-style: none;
	padding-left: 0;
}

.merit li:not(:last-child){
	margin-bottom: 30px;
} 

.merit li strong{
	font-size: 20px;
	color: #00468c;
}

.merit li img{
	width: 100%;
}


.link-button.facility{

}

.link-button.facility{
	max-width: 292px;
}

@media screen and (max-width:850px){
	.link-button.facility{
		max-width: 850px;
		width: 100%;
	}
}