@charset "UTF-8";

/*
@font-face {
	font-family: 'Kiwi Maru';
	src: url('../font/KiwiMaru-Regular.ttf') format('truetype');
}
*/

html {
	overflow-y: scroll;	
	min-height: 100vh;
	height: -webkit-fill-available;
}

body {
	word-break: break-all;
	line-height: 1.5;
	font-size: 16px;
	-webkit-text-size-adjust: 100%;
	font-family: 'Kiwi Maru', sans-serif;
	font-weight: 400;
	position: relative;
	color: #828282;
	overflow: hidden;
}

@media screen and (max-width:1399px)  {
	body{
		padding-bottom: 120px;
	}	
}

@media screen and (max-width:1023px)  {
	body{
		padding-bottom: 70px;
	}
	body.lower {
		padding-top: 55px;
	}
}

img { 
	max-width: 100%;
	height: auto; 
}

a         { color: #828282; }
a:link    { text-decoration: none; }
a:visited { text-decoration: none; }
a:hover   { text-decoration: none; }
a:active  { text-decoration: none; }

@media screen and (min-width:1025px)  {
	.sp   { display: none; } 
	.tb   { display: none; }
	.sptb { display: none; }
}
@media screen and (min-width:768px) and (max-width:1024px) {
	.sp   { display: none; }
	.pc   { display: none; }
}
@media screen and (max-width:767px) {
	.pc   { display: none; }
	.tb   { display: none; }
	.pctb { display: none; }
}

/*=========================================================

00.共通設定

=========================================================*/

/*-----------------------------------------------------
固定モーダル
-----------------------------------------------------*/

.fixedBtn {
	position: fixed;
	top: 30px;
	right: -87px;
	transition: all 0.2s ease-in-out 0s;	
	width: 87px;
	height: 87px;
	display: flex;
	justify-content: center;
	text-align: center;
	align-items: center;
	z-index: 100;
}

.fixedBtn.fixed {
	position: fixed;
	top: 30px;
	right: 30px;
	transition: all 0.2s ease-in-out 0s;	
}

.mnuTrg {
	display: inline-block;
	width: 87px;
	height: 87px;
	vertical-align: middle;
	cursor: pointer;
	z-index: 3100;
	background: #38d5e2;
	border-radius: 20px;
}

.mnuTrg p {
	color: #fff;
	font-size: 15px;
	position: absolute;
	text-align: center;
	top: 22px;
	width: 100%;
	line-height: 1;
}
.mnuTrg span {
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	left: 0;
	width: 52px;
	height: 3px;
	background: #fff;
	transition: all .5s;
	z-index: 3101;
}

.mnuTrg:active {
	background: #cfdb00;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}

.mnuTrg.active {
	background: #cfdb00;
}

.mnuTrg.active span {
	background: #fff;
}

.mnuTrg span:nth-of-type(1) {
	top: 46px;
	left: calc(50% - 26px);
}

.mnuTrg.active span:nth-of-type(1) {
	transform: translateY(10px) rotate(-45deg);
}

.mnuTrg span:nth-of-type(2) {
	top: 53px;
	left: calc(50% - 26px);
}

.mnuTrg.active span:nth-of-type(2) {
	opacity: 0;
}

.mnuTrg span:nth-of-type(3) {
	top: 60px;
	left: calc(50% - 26px);
}

.mnuTrg.active span:nth-of-type(3) {
	  transform: translateY(-8px) rotate(45deg);
}

@media screen and (max-width:1023px) {

	.fixedBtn {
		position: fixed;
		top: 0px;
		right: 0px;
		transition: all 0.2s ease-in-out 0s;	
		width: 55px;
		height: 55px;
		display: flex;
		justify-content: center;
		text-align: center;
		align-items: center;
		z-index: 100;
	}

	.fixedBtn.fixed {
		position: fixed;
		top: 0px;
		right: 0px;
	}
	
	.spHeader .fixedBtn,
	.spHeader .fixedBtn.fixed {
		position: absolute;
	}

	.mnuTrg {
		width: 55px;
		height: 55px;
		border-radius: 0px;
		border-left: 1px solid #96e9f0;
	}

	.mnuTrg p {
		font-size: 10px;
		top: 10px;
		font-weight: 700;
	}
	.mnuTrg span {
		display: inline-block;
		box-sizing: border-box;
		position: absolute;
		left: 0;
		width: 34px;
		height: 2px;
		background: #fff;
		transition: all .5s;
		z-index: 3101;
	}

	.mnuTrg span:nth-of-type(1) {
		top: 26px;
		left: calc(50% - 17px);
	}

	.mnuTrg span:nth-of-type(2) {
		top: 33px;
		left: calc(50% - 17px);
	}

	.mnuTrg span:nth-of-type(3) {
		top: 40px;
		left: calc(50% - 17px);
	}
	
}

/*-----------------------------------------------------
ヘッダー
-----------------------------------------------------*/

#header {
	width: 90%;
	height: 110px;
	background: #38d5e2;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 30;
	border-radius: 0 0 1000px 0;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	padding: 0 200px 0 50px;
	justify-content: space-between;
	opacity: 1;
	transition: all 0.2s ease-in-out 0s;
}

#header.fixed {
	top: -100px;
	opacity: 0;
}

#header ul {
	display: flex;
	justify-content: flex-end;
	list-style: none;
	font-size: 22px;
	align-items: center;
	line-height: 1;
	font-weight: 600;
}

#header ul li {
	padding-left: 5%;
	white-space: nowrap;
}

#header ul a {
	color: #fff;
}

#header a:hover {
	opacity: 0.7;
}

@media screen and (max-width:1550px)  {
	
	#header {
		padding: 0 100px 0 50px;
	}
	
	#header ul {
		font-size: 22px;
	}

	#header ul li {
		padding-left: 4%;
	}
}

@media screen and (max-width:1400px)  {
	
	#header #logo img {
		width: 220px;
		height: auto
	}
	
	#header {
		padding: 0 50px 0 20px;
	}
	
	#header ul {
		font-size: 18px;
	}

	#header ul li {
		padding-left: 3.5%;
	}
}

@media screen and (max-width:1023px) {
	#header {
		width: 100%;
		height: 55px;
		border-radius: 0;
		padding: 0 15px;
		align-items: center;
	}
	
	#header.fixed {
		top: 0;
		opacity: 1;
	}

	#header #logo img {
		width: 190px;
		height: auto
	}
	
	#header #logo a {
		display: block;
		height: 16px;
	}

	#header ul {
		display: none;
	}
	
	.spHeader {
		position: fixed;
		width: 100%;
		top: -55px;
		left: 0;
		transition: all 0.2s ease-in-out 0s;
	}
	
	#index #header .fixed,
	#index #header {
		width: 100%;
		height: 55px;
		border-radius: 0;
		padding: 0 15px;
		position: absolute;
		top: 0;
		left: 0;
		transition: all 0.2s ease-in-out 0s;
	}
	
	.spHeader.fixed {
		top: 0!important;
		left: 0;
		z-index: 2000;
	}
}

/*-----------------------------------------------------
固定
-----------------------------------------------------*/

.fixedLogo {
	position: fixed;
	top: -20px;
	left: -350px;
	transition: all 0.2s ease-in-out 0s;
	z-index: 100;
}

.fixedLogo.fixed {
	left: -30px;
}

@media screen and (max-width:1023px) {
	.fixedLogo {
		display: none
	}

	.fixedLogo.fixed {
		display: none
	}	
}

/*-----------------------------------------------------
モーダル表示
-----------------------------------------------------*/

#hamburger {
	z-index: 2000;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: url("../images/common/hamburger_bg.png") center center no-repeat;
	background-size: cover;
}


#hamburger  .list {
	width: 100%;
}

#hamburger .nav {
	text-align: center;
	height: calc(100vh - 260px);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center
}

#hamburger .nav a:hover {
	opacity: 0.7;
}

#hamburger .nav .logo {
	margin-bottom: 20px;
	width: 100%;
	margin-top: 20px;
}

#hamburger .nav ul {

}

#hamburger .nav ul li {
	font-size: 23px;
	margin:  0 0 13px;
	font-weight: 600;
}

#hamburger .nav ul a {
	color: #fff;
}

#hamburger .nav .ig {
	text-align: center;
	margin: 0 auto;
}

#hamburger .reserve {
	width: 100%;
	height: 260px;
	position: absolute;
	bottom: 0;
	left: 0;
	background:  url("../images/common/hamburger_image.png") center top no-repeat;
	background-size: auto 500px;
	box-sizing: border-box;
	text-align: center;
	padding-top: 130px;
}

#hamburger .reserve p {
	margin:  0;
	font-size: 27px;
	font-weight: 700;
	color: #604c3f;
	letter-spacing: 3px;
	margin-bottom: 10px;
}
#hamburger .reserve ul {
	display: flex;
	justify-content: center;

}

#hamburger .reserve ul li {
	margin: 0 20px;
}

.hamburgerClose {
	position: absolute;
	top: 30px;
	right: 30px;
	color: #fff;
	font-size: 40px;
	line-height: 30px;
	font-weight: bold;
}

.hamburgerClose:hover {
	opacity: 0.7;
	cursor: pointer;
}

@media screen and (min-width:768px) and (max-height:700px) {
	
	#hamburger .list {

	}
	
	#hamburger .nav ul {
		display: inline-flex;
		margin: 0 auto;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	#hamburger .nav li {
		width: 32%;
	}
}

@media screen and (max-width:767px) {
	
	#hamburger {
		z-index: 2000;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background: url("../images/common/sp_hamburger_bg.png") center center no-repeat;
		background-size: cover;
	}

	#hamburger .nav {
		text-align: center;
		height: calc(100vh - 350px);
		display: flex;
		flex-wrap: wrap;
	}

	#hamburger .nav .logo {
		margin-bottom: 5%;
		margin-top: 5%;
	}
	
	#hamburger .nav .logo img {
		width: 220px;
		height: auto;
	}

	#hamburger .nav ul li {
		font-size: 19px;
		margin:  0 0 15px;
	}

	#hamburger .reserve {
		width: 100%;
		height: 370px;
		position: absolute;
		bottom: 0;
		left: 0;
		background: url("../images/common/hamburger_image.png") center top no-repeat;
		background-size: auto 505px;
		box-sizing: border-box;
		text-align: center;
		display: block;
		padding-top: 140px;
	}
	
	@media screen and (max-width:550px) {
		#hamburger .reserve {
			height: 320px;
			background: url("../images/common/hamburger_image.png") center top no-repeat;
			background-size: auto 375px;
		padding-top: 90px;
		}	
	}

	#hamburger .reserve p {
		margin:  0 0 12px;
		font-size: 19px;
	}
	#hamburger .reserve ul {
		display: block;
	}

	#hamburger .reserve ul li {
		margin: 0 20px 13px;
	}
	#hamburger .reserve ul li img {
		width: 170px;
		height: auto;
	}

	.hamburgerClose {
		top: 20px;
		right: 20px;
		font-size: 34px;
	}
	
	@media screen and (max-width:767px) and (max-height:700px) {
		#hamburger .nav ul {
			display: flex;
			max-width: 700px;
			margin: 0 7px 20px 7px;
			flex-direction: column;
			justify-content: center;
			align-items: center;
		}

		#hamburger .nav li {
			width: 32%;
		}

		#hamburger .nav ul li {
			margin-bottom: 10px;
			font-size: 17px;
		}
		
		#hamburger .nav .ig img{
			width: 40%;
		}
		
	}
}


/*-----------------------------------------------------
サイドバナー
-----------------------------------------------------*/

.sideReserve {
	position: fixed;
	bottom: 100px;
	width: 296px;
	height: 410px;
	background: url("../images/common/side_reserve_bg.png") center top no-repeat;
	background-size: cover;
	text-align: center;
	box-sizing: border-box;
	padding-right: 7px;
	z-index: 100;
	transition: all 0.2s ease-in-out 0s;
	left: -326px;
}

.sideReserveInstagram {
	margin: 110px auto 40px;
}

.sideReserveHeading {
	margin:  0 0 25px;
}

.sideReserveBtns li {
	margin-bottom: 15px;
}

.sideReserve a:hover {
	opacity: 0.7;
}

.sideReserve.fixed {
	left: 0;
}

.sideApp {
	position: fixed;
	bottom: 150px;
	z-index: 100;
	right: -145px;	
	transition: all 0.2s ease-in-out 0s;
}

.sideApp.fixed {
	right: 0;
}

/*
@media screen and (max-width: 1400px) {
	.sideReserve,
	.sideApp {
		display: none!important;
	}
}
*/

/*-----------------------------------------------------
ページトップ
-----------------------------------------------------*/

#pageTop {
	position: fixed;
	right: -200px;
	bottom: 10px;
	z-index: 100;
		transition: all 0.2s ease-in-out 0s;
}

#pageTop.fixed {
	right: 10px;
}

/*-----------------------------------------------------
共通パーツ
-----------------------------------------------------*/

.heading {
	text-align: center;
	margin:  0 auto 90px;
}

.inner {
	max-width: 1250px;
	width: 100%;
	margin: 0 auto;
}


@media screen and (max-width:1023px) {
	.heading {
		margin:  0 auto 25px;
	}	
	.heading img {
		width: auto;
		height: 100px;
	}
}

/*-----------------------------------------------------
フッター
-----------------------------------------------------*/

.footerArea {
	border-bottom: 95px solid #e4d8bd;
}

.footerArea .inner {
	display: flex;
	margin-bottom: -100px;
}

.footerArea .info {
	padding-left: 150px;
	line-height: 1;
}

.footerAreaTitle {
	margin-bottom: 20px;
}

.footerAreaAddress {
	font-size: 19px;
	font-family: "Kiwi Maru";
	margin: 0 0 12px;
}

.footerAreaTel {
	margin-bottom: 20px;
	font-size: 25px;
}

.ride {
	display: flex;
	align-items: center;
	font-size: 21px;
	color: #b0985c;
	margin-bottom: 10px;
}

.ride:before {
	content: "";
	width: 41px;
	height: 25px;
	display: inline-block;
	margin-right: 10px;
}

.bus:before {
	background: url("../images/common/icon_bus.png");
	background-size: cover;
}

.car:before {
	background: url("../images/common/icon_car.png");
	background-size: cover;
}

.footerArea .image {
	width: 660px;
}

.footerMap {
	width: 100%;
	height: 440px;
}

.copyRight {
	text-align: center;
	padding: 70px 0;
	color: #9f8a5a;
	background: #e4d8bd;
}

.copyRight small {

	font-size: 19px;
	line-height: 1;
}

.fiexedFooterBanner {
	bottom: -120px;
	left: 0;
	display: flex;
	width: 100%;
	height: 120px;
	align-items: center;
	z-index: 400;
	position: fixed;
	background: rgba(215, 246, 249, 0.7);
	transition: all 0.2s ease-in-out 0s;	
}

.fiexedFooterBanner.fixed {
	bottom: 0;
}

.fiexedFooterBanner ul {
	width: calc(100% - 300px);	
	display: flex;
	box-sizing: border-box;
	padding-left: 4px;
	margin: 0 auto;
}

.fiexedFooterBanner ul li {
	width: 50%;
	box-sizing: border-box;
	padding-left: 10px;
	line-height: 1;
}
.fiexedFooterBanner ul li a {
	display: block;
	border-radius:1000px;
	text-align: center;
	padding: 20px 10px;
}
.fiexedFooterBanner a:hover {
	opacity: 0.5;
}
.fiexedFooterBanner ul li:nth-child(1) a {
	background: #38d5e2;
}
.fiexedFooterBanner ul li:nth-child(2) a {
	background: #ff7fb5;
}

.fiexedFooterBanner p {
	width: 70px;
	height: 70px;
	box-sizing: border-box;
	padding: 14px;
}

@media screen and (min-width:1024px) {
	.fiexedFooterBanner p {
		display: none;	
	}
	.fiexedFooterBanner ul li a img {
		height: 24px;
		width: auto;
	}
}

@media screen and (max-width:1023px) {
	
	#footer {
		overflow: hidden;
	}

	.footerArea {
		border-bottom: 60px solid #e4d8bd;
		padding: 0 15px;
	}

	.footerArea .inner {
		display: block;
		margin-bottom: -60px;
		text-align: center;
	}

	.footerArea .info {
		padding-left: 0;
		line-height: 1;
	}

	.footerAreaTitle {
		margin-bottom: 20px;
	}
	
	.footerAreaTitle img {
		width: 100%;
		max-width: 300px;
		height: auto;
	}

	.footerAreaAddress {
		font-size: 13px;
		text-align: left;
		width: 300px;
		margin: 0 auto 10px;
	}

	.footerAreaTel {
		margin-bottom: 20px;
		font-size: 25px;
		text-align: left;
		width: 300px;
		margin: 0 auto 15px;
	}

	.ride {
		display: flex;
		align-items: center;
		font-size: 13px;
		color: #b0985c;
		margin-bottom: 10px;
		font-weight: 500;
		width: 300px;
		margin: 0 auto 10px;
		text-align: left;
	}

	.ride:before {
		width: 30px;
		height: 18px;
	}


	.footerArea .image {
		width: 350px;
		margin: 0 auto;
	}

	.footerMap {
		height: 230px;
	}
	.footerMap iframe {
		height: 230px;
	}

	.copyRight {
		padding: 50px 0;
	}

	.copyRight small {
		font-size: 11px;
	}
	
	.fiexedFooterBanner {
		bottom: -70px;
		left: 0;
		display: flex;
		width: 100%;
		height: 70px;
		align-items: center;
		z-index: 400;
		position: fixed;
		background: rgba(215, 246, 249, 0.7);
		transition: all 0.2s ease-in-out 0s;	
	}
	
	.fiexedFooterBanner.fixed {
		bottom: 0;
	}
	
	.fiexedFooterBanner ul {
		width: calc(100% - 70px);	
		display: flex;
		box-sizing: border-box;
		padding-left: 4px;
	}
	
	.fiexedFooterBanner ul li {
		width: 50%;
		box-sizing: border-box;
		padding-left: 10px;
		line-height: 1;
	}
	.fiexedFooterBanner ul li a {
		display: block;
		border-radius:1000px;
		text-align: center;
		padding: 10px;
	}
	.fiexedFooterBanner a:hover {
		opacity: 0.5;
	}
	.fiexedFooterBanner ul li:nth-child(1) a {
		background: #38d5e2;
	}
	.fiexedFooterBanner ul li:nth-child(2) a {
		background: #ff7fb5;
	}
	
	.fiexedFooterBanner p {
		width: 70px;
		height: 70px;
		box-sizing: border-box;
		padding: 14px;
	}

}

/*=========================================================

01.TOP

=========================================================*/

/*-----------------------------------------------------
メインビジュアル
-----------------------------------------------------*/

#main {
	width: 100%;
	height: 100vh;
	/*background: url("../images/top/main_bg.png") center center no-repeat;*/
	background-size: cover;
	display: flex;
	align-items: flex-end;
	position: relative;
	z-index: 20;
}

#main .bg{
  position:absolute;
  inset:0;
  overflow:hidden;
}

.slide{
  position:absolute;
  inset:0;
  opacity:0;
  animation:slideAnime 20s infinite;
}

.slide:nth-child(1){animation-delay:0s;}
.slide:nth-child(2){animation-delay:5s;}
.slide:nth-child(3){animation-delay:10s;}
.slide:nth-child(4){animation-delay:15s;}

.slide img{
  width:100%;
  height:100%;
  object-fit:cover;
}

@keyframes slideAnime{

  0%   {opacity:0;}
  5%   {opacity:1;}
  25%  {opacity:1;}
  30%  {opacity:0;}
  100% {opacity:0;}

}

#main .inner {
	max-width: 1280px;
	width: 100%;
	margin: 0 auto;
	display: flex;
	align-items: center;
	position: relative;
	height: calc(100vh - 110px);
	justify-content: center;
	padding: 0 15px;
	box-sizing: border-box;
}

.mainLogo {
	position: absolute;
	z-index: 4;
	top: calc(50% - 30px);
	left: calc(50% - 339px);
}

.mainCloud2 {
	animation: floatCloud 10s ease-in-out infinite;
}

@keyframes floatCloud {
	0%   { transform: translate3d(0, 0, 0); }
	25%  { transform: translate3d(3px, -10px, 0); }
	50%  { transform: translate3d(0, -15px, 0); }
	75%  { transform: translate3d(-3px, -10px, 0); }
	100% { transform: translate3d(0, 0, 0); }
}

.mainCloud {
	animation: floating-y 2.5s ease-in-out infinite alternate-reverse;
	will-change: transform;
	backface-visibility: hidden;
	z-index:3;
}

@keyframes floating-y {
  0%   { transform: translateY(-3%); }
  100% { transform: translateY(1%); }
}

.mainCopy {
	position: absolute;
	top: 10%;
	right: -37px;
	z-index:3;
}

@media screen and (min-width:1024px) {
	#main {
		overflow: hidden 
	}
}
@media screen and (max-width:1023px) {

	#main {
		height: 450px;
		background-size: cover;
	}
	
	@media screen and (max-width:767px) {
		#main {
			background-size: auto 100%;
		}	
	}
	
	#main .inner {
		width: 100%;
		height: 450px;
	}	

	.mainLogo {
		position: absolute;
		z-index: 4;
		top: calc(50% - 11px);
		left: calc(50% - 130px);
	}
	.mainLogo img {
		width: 260px;
		height: auto;
	}

	.mainCloud {
		animation: floating-y 2.5s ease-in-out infinite alternate-reverse;
		will-change: transform;
	}
	
	.mainCloud img {
		width: 234px;
		height: auto;
	}
	
	.mainCopy {
		top: auto;
		right: auto;
		bottom: -48px;
		left: calc(50% - 148px);
	}
	
	.mainCopy img {
		width: 296px;
		height: 96px;
	}
	
}
/*-----------------------------------------------------
SPナビ
-----------------------------------------------------*/

#spNav {
	display: none;
	position: relative;
	z-index: 2;
}

@media screen and (max-width:1023px) {
	#spNav {
		background: #38d5e2;
		padding-top: 60px;
		display: block;
		margin:  0 0 40px;
	}
	
	#spNav ul {
		display: flex;
		flex-wrap: wrap;
		padding-bottom: 10px;
	}
	#spNav li {
		width: calc(100% /3);
	}
	#spNav li a {
		padding: 10px 5px 10px;
		box-sizing: border-box;
		color: #fff;
		font-size: 16px;
		text-align: center;
		display: block;
		white-space: nowrap;
	}
}

/*-----------------------------------------------------
ましろで安心
-----------------------------------------------------*/

#anshin {
	padding: 90px 30px;
	position: relative;
}

.anshinList {
	max-width: 1000px;
	margin: 0 auto;
	list-style: none;
	position: relative;
	z-index: 2;
}

.anshinList li {
	margin: 0 0 30px;
	width: 100%;
	display: flex;
}

.anshinList .num {
	width: 79px;
	margin-right: 20px;
}

.anshinList .info {
	width: calc(100% - 100px);
}

.anshinList .title {
	font-size: 30px;
	color: #50deea;
	font-weight: 600;
}

.anshinList .text {
	font-size: 15px;
	color: #828282;
}

@media screen and (max-width:1023px) {
	
	#anshin {
		padding: 0px 15px;
	}

	.anshinList {
		max-width: 970px;
		margin: 0 auto;
		list-style: none;
		position: relative;
		z-index: 2;
	}

	.anshinList li {
		margin: 0 0 15px;
		width: 100%;
		display: flex;
	}

	.anshinList .num {
		width: 56px;
		margin-right: 13px;
	}

	.anshinList .info {
		width: calc(100% - 69px);
	}

	.anshinList .title {
		font-size: 18px;
		margin:  0 0 5px;
	}

	.anshinList .text {
		font-size: 13px;
	}
	
}

/*-----------------------------------------------------
院長・スタッフ全員が明るく親しみやすい女性です。
-----------------------------------------------------*/

#doctor {
	padding: 0 30px;
	margin:  0 0 100px;
	position: relative;
}

#doctor .inner {
	display: flex;
	z-index: 2;
	position: relative;
}

#doctor .image {
	width: 420px;
	margin-right: 70px;
	text-align: center;
}

#doctor .image img {	
	border-radius: 10px;
	margin:  0 0 15px;
}

#doctor .profile {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
}

#doctor .post {
	font-size: 18px;
	color: #ffa0c8;
	padding: 15px 30px;
	background: #fff1fb;
	border-radius: 100px;
	line-height: 1;
	margin-right: 30px;
}

#doctor .name {
	font-size: 30px;
	letter-spacing: 2px;
}

#doctor .info {
	width: calc(100% - 490px);
}

#doctor .title {
	font-size: 30px;
	color: #38d5e2;
	margin: 0 0 30px;
	font-weight: 600;
}

#doctor .text {
	font-size: 22px;
	line-height: 2;
	margin: 0 0 60px;
}

#doctor .text span {
	background: #fff1fb;
	color: #fd69a8;
}

#doctor .btn {
	text-align: right;
}

@media screen and (max-width:1023px) {
	#doctor {
		padding: 0 15px;
		margin:  0 0 35px;
	}

	#doctor .inner {
		display: block;
	}

	#doctor .image {
		width: 100%;
		margin-right: 0;
		margin-bottom: 30px;
	}

	#doctor .image img {	
		border-radius: 10px;
		margin:  0 0 15px;
	}
	
	#doctor .post {
		font-size: 13px;
		padding: 7px 20px;
		margin-right: 20px;
	}

	#doctor .name {
		font-size: 18px;
		font-weight: 700;
		letter-spacing: 5px;
	}

	#doctor .info {
		width: 100%;
	}

	#doctor .title {
		font-size: 18px;
		margin: 0 0 20px;
	}

	#doctor .text {
		font-size: 15px;
		margin: 0 0 20px;
	}

	#doctor .btn {
		text-align: right;
	}	
	#doctor .btn img {
		width: 140px;
		height: auto;
	}
}

/*-----------------------------------------------------
院の紹介
-----------------------------------------------------*/

#about {
	padding: 0 30px 100px;
	position: relative;
}

#about .inner {
	z-index: 4;
}

.about01 {
	position: relative;
	left: -90px;
	z-index: 2;
}

.about02 {
	position: relative;
	margin-top: -160px;
	right: -40px;
	z-index: 3;
}

.aboutSp {
	display: none;
}

@media screen and (max-width:1023px) {
	
	#about { 
		padding: 0 0 60px;	

	}
	
	.aboutPc {
		display: none;
	}
	.aboutSp {
		display: block;
		text-align: center;
		position: relative;
		z-index: 3;
	}	
	.aboutSp img {
		width: 100%;
	}
}

/*-----------------------------------------------------
院の紹介
-----------------------------------------------------*/

#setsubi {
	padding: 0 0 140px;
	position: relative;
	z-index: 3;
}

.setsubiListWrap {
	display: flex;
	overflow: hidden;
	margin: 0 0 70px;
}

.setsubiList {
	position: relative;
	z-index: 3;
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
		animation: slideRight 65s infinite linear .1s both;
}

.setsubiList li {
	margin: 0 20px;
	border-radius: 10px;
	overflow: hidden;
	background: #50deea;
	text-align: center;
	width: calc(100vw/5);
	box-sizing: border-box;
}

.setsubiList li .title {
	padding: 10px;
	color: #fff;
	font-size: 20px;
	font-weight: 600;
}

.setsubiList li img {
  width: 100%;
  height: auto;
  display: block;
}

@keyframes slideRight {
	0% {
		transform: translateX(00%);
	}
	100% {
		transform: translateX(-50%);
	}
}

.setsubiBtn {
	text-align: center;
}

@media screen and (max-width:1023px) {
	
	#setsubi {
		padding: 0 0 30px;
		position: relative;
	}
	
	.setsubiListWrap {
		margin: 0 0 30px;
	}
	
	.setsubiBtn img {
		width: 110px;
	}
	
	.setsubiList {	
		animation: slideRight 25s infinite linear .1s both;
		display: flex;
		width: calc(100% * 1.8);
	}
	
	.setsubiList li {
		flex-grow   0;
		flex-shrink 0;	
		flex:0 0 30%;
		margin: 0 10px;
	}
	
	.setsubiList li .title {
		padding: 5px;
		font-size: 12px;
	}

}

.topII {
	position: relative;
	overflow: hidden;
}

/*-----------------------------------------------------
お知らせ
-----------------------------------------------------*/

#information {
	padding: 360px 30px 1470px;
	position: relative;
	z-index: 0;
	margin: 0 auto -800px;
	max-width: 2500px;
}

#information:before {
	z-index: -10000;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: url("../images/top/information_bg.png") center top no-repeat;
	background-size: 1920px auto;
}

@media screen and (min-width:1921px) {
	
	#information {
		max-width: 100%;
	}

	#information:before {
		background: url("../images/top/information_bg.png") center top no-repeat;
		background-size: cover!important;
	}
	
}

/*
#information {
	background: url("../images/top/information_bg.png") center top no-repeat;
	background-size: 1920px auto;
	padding: 360px 30px 1070px;
	position: relative;
	z-index: 0;
	margin: 0 auto -800px;
	max-width: 2500px;
}

#information:before {
	content: "";
	display: block;
	width: 100%;
	height: 1000px;
}
*/

@media screen and (min-width:1920px) {
	#information {
		background-size: 100% auto;
	}	
}

#information .inner {
	display: flex;
	position: relative;
	z-index: 300;
}

#information .info {
	width: 200px;
	margin-right: 110px;
	z-index: 2;
	position: relative;
}

#information .heading {
	margin: 0 0 50px;
	text-align: left;
}

#information .list {
	width: calc(100% - 310px);
}

.informationList li {
	margin: 0 0 40px;
	font-size: 25px;
}

.informationList li:last-child {
	margin: 0;
}

.informationList li a {
	display: flex;
}

.informationList li a time {
	color: #50deea;
	margin-right: 60px;
	white-space: nowrap;
	font-family: "Kiwi Maru";
}

.spBtn {
	display: none;
}

@media screen and (max-width:1023px) {

	#information {

		padding: 120px 15px 1650px;
		margin: 0 auto -1500px;			
	}
	
	#information:before {
		background: url("../images/top/information_bg.png") center top no-repeat;
		background-size: 1023px auto;
	}
	
	@media screen and (max-width:700px) {
		#information {
			background: url("../images/top/information_bg.png") center top no-repeat;
			background-size: 700px auto;
		}	
		#information:before {
			background: url("../images/top/information_bg.png") center top no-repeat;
			background-size: 700px auto;
		}
	}

	#information .inner {
		display: block;
		padding-bottom: 150px;
		padding-top: 50px;
	}

	#information .info {
		width: 100%;
		margin: 0;
	}

	#information .heading {
		margin: 0 0 30px;
	}
	#information .heading img {
		width: 86px;
		height: auto;
	}

	#information .list {
		width: 100%;
		margin:  0 0 30px;
	}

	.informationList li {
		margin: 0 0 20px;
		font-size: 20px;
		font-size: 15px;
	}

	.informationList li:last-child {
		margin: 0;
	}

	.informationList li a {
		display: block;
	}

	.informationList li a time {
		color: #50deea;
		margin-right: 0;
		display: block;
		font-size: 15px;
	}
	
	.info .informationBtn {
		display: none;
	}
	
	.spBtn {
		display: block!important;
		text-align: center;
		position: relative;
		z-index: 3;
	}
	
	.spBtn img {
		width: 110px;
	}
	
	#information .heading {
		text-align: center;	
	}

}


/*-----------------------------------------------------
インスタグラム
-----------------------------------------------------*/

/*e3f9fa*/
#instagram {
	/*
	background: url("../images/top/instagram_bg.png") center top no-repeat;
	background-size: 1920px auto;
	*/
	padding-top: 350px;
	position: relative;
	margin: 0 auto;
}

.instagrambg {
	background: url("../images/top/instagram_bg.png") center top no-repeat;
	background-size: 1920px auto;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media screen and (min-width:1920px) {
	#instagram {
		background-size: 100% auto;
	}	
	
	.instagrambg {
		background-size: 100% auto;
	}
	
}

@media screen and (min-width:2561px) {
	#instagram {
		padding-top: 15%;
	}	

}

.instagramInner {
	background: #fff;
	padding: 0 15px;
	position: relative;
}

#instagram .heading {
	margin: 0 0 55px;
	position: relative;
	z-index: 3;
}

.blank {
	background: #eee;
	width: 100%;
	height: 400px;
	margin: 0 auto 140px;
}

.sb_instagram_header {
	display: none!important
}


.instagramFeed {
	margin: 0 0 140px;
	position:relative;
	z-index: 30;
}

@media screen and (max-width:1023px) {
	
	#instagram {

		padding: 180px 0 0;
	}
	
	.instagrambg {
		background:  url("../images/top/instagram_bg.png") center top no-repeat;
		background-size: 1023px auto;	
	}
	
	.instagramFeed {
		margin: 0 0 0px;
	}	
		
	@media screen and (max-width:750px) {
		
		
		#instagram {
			padding: 150px 0 0;
		}
		.instagrambg {
			
			background:  url("../images/top/instagram_bg.png") center top no-repeat;
			background-size: 750px auto;
		}
	}
	
	@media screen and (max-width:520px) {
		#instagram {
			padding: 120px 0 0;
		}
		.instagrambg {
			background:  url("../images/top/instagram_bg.png") center top no-repeat;
			background-size: 520px auto;
		}

		.instagramFeed {
			margin: 0 0 50px;
		}
		
	}

	.instagramInner {
		background: #fff;
		padding: 0 15px;
	}

	#instagram .heading {
		margin: 0 0 25px;
		position: relative;
		z-index: 2;
	}
	
	#instagram .heading img {
		width: 120px;
		height: auto;
	}

	.blank {
		background: #fff;
		padding: 0 15px;
		margin: 0 auto 50px;
		display: flex;
		z-index: 3;
		position: relative;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
	}
	
}

/*-----------------------------------------------------
バナー
-----------------------------------------------------*/

#banners {
	padding:  0 15px 110px;
	position: relative;
	z-index: 4;
}

#banners ul {
	display: flex;
	max-width: 1090px;
	margin: 0 auto;
	justify-content: center;
}

#banners li {
	width: calc(100% / 3 - 14px);
	margin: 0 7px;
}


@media screen and (max-width:1023px) {
	#banners {
		padding:  50px 15px 50px;
	}	
}

@media screen and (max-width:767px) {
	
	#banners {
		padding:  0 15px 50px;
	}

	#banners ul {
		display: block;
		text-align: center;
	}

	#banners li {
		width: 100%;
		margin:  0 0 15px;
	}
	
	#banners li:last-child {
		margin-bottom: 0;
	}
	
}

/*-----------------------------------------------------
診療時間
-----------------------------------------------------*/

#hours {
	padding: 0 30px;
	position: relative;
}


#hours .inner {
	border-top: 4px dotted #e2e2e2;
	padding: 110px 0 60px;
}

.hoursTable  {
	/*border-bottom: 1px solid #c3c3c3;*/
	width: 100%;
	max-width: 930px;
	margin: 0 auto 70px;
}

.hoursTable th {
	border-bottom: 1px solid #c3c3c3;
	color: #b0985c;
	text-align: center;
	padding: 0px 16px 17px 16px;
	box-sizing: border-box;
	width: 100px;
}

.hoursTable th span {
	background: #b0985c;
	color: #fff;
	border-radius: 100px;
	padding: 0;
	font-size: 24px;
	display: block;
	white-space: nowrap;
	width: 86px;
	box-sizing: border-box;
	font-weight: 600;
}

.hoursTable td {
	border-bottom: 1px solid #c3c3c3;
	text-align: center;
	padding: 40px 0;
	vertical-align: middle;
	font-size: 30px;
	line-height: 1;
}

.hoursTable td span {
	font-size: 14px;
	display: block;
	padding: 5px 0 0;
}

.hoursTable td.time {
	font-size: 18px;
	white-space: nowrap;
}

.cards {
	text-align: center;
	margin:  0 0 60px;
}

.holidayTableSp {
	display: none;
}

@media screen and (max-width:1023px) {
	#hours {
		padding: 0 15px;
	}


	#hours .inner {
		border-top: 3px dotted #e2e2e2;
		padding: 30px 0 30px;
		position: relative;
		z-index: 3;
	}

	.hoursTable  {
		margin: 0 auto 15px;
		border-bottom: none;
	}

	.hoursTable th {
		padding: 15px 0px;
		width: auto;
		font-size: 10px;
	}

	.hoursTable th span {
		font-size: 10px;
		display: inline-block;
		width: 34px;
		font-weight: normal;
	}

	.hoursTable td {
		padding: 10px 0;
		font-size: 15px;
		font-weight: normal;
	}

	.hoursTable td span {
		font-size: 10px;
		padding: 5px 0 0;
	}

	.hoursTable td.time {
		font-size: 10px;
		font-weight: normal;
	}

	.cards {
		margin:  0 0 45px;
	}	
	
	.holidayTableSp {
		display: block;
	}
	
	.holidayTable {
		margin: 0 auto 45px;
		font-size: 13px;
	}
	
	.holidayTable th {
		color: #b0985c;
		padding-right: 30px;
		padding-bottom: 5px;
	}
	
	.holidayTable td {
		padding-bottom: 5px;
	}
	
}

/*=========================================================

02.下層共通

=========================================================*/

#contents {
	position: relative;
	z-index: 4;
}

.pageTitle {
	width: 100%;
	height: 400px;
	padding-top: 255px;
	box-sizing: border-box;
	margin: 0 0 150px;
	background-position: center top;
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-size: auto 400px;
}

.pageTitle p,
.pageTitle h1 {
	background: url("../images/common/page-title_bg.png") top center no-repeat;
	background-size: 100% auto;
	width: 448px;
	margin: 0 auto;
	font-size: 35px;
	font-weight: 600;
	text-align: center;
	padding-top: 130px;
	line-height: 1;
}

.lower .heading {
	color: #38d5e2;
	font-size: 30px;
	margin: 0 auto 80px;
	text-align: center;
	font-weight: 600;
	letter-spacing: 5px;
}

.lower .heading .small {
	font-size: 16px;
}

.lower .heading span {
	display: inline-block;
	padding-left: 5px;
}

.lower .heading img {
	width: 80px;
	height: 80px;
	margin: 0 auto 10px;
	display: block;
}

@media screen and (min-width:1920px) {
	.pageTitle {
		background-size: 100% auto;
	}	
}

@media screen and (max-width:1023px) {
	
	.pageTitle {
		width: 100%;
		height: 165px;
		padding-top: 70px;
		box-sizing: border-box;
		margin: 0 0 40px;
		background-size: auto 250px;
	}

	@media screen and (max-width:767px) {
		/*
		.pageTitle {
			background-size: auto 165px;
		}
		*/
	}	

	.pageTitle p,
	.pageTitle h1 {
		background: url("../images/common/page-title_bg.png") top center no-repeat;
		background-size: 100% auto;
		width: 300px;
		margin: 0 auto;
		font-size: 22px;
		padding-top: 80px;
	}

	.lower .heading {
		margin: 0 auto 30px;
		font-size: 20px;
	}

	.lower .heading img {
		width: 32px;
		height: 32px;
		margin: 0 auto 5px;
	}
	
	.lower .heading .small {
		font-size: 14px;
	}
}

/*=========================================================

03.スタッフ紹介

=========================================================*/

#pageStaff .pageTitle {
	background-image: url("../images/page_title/staff.jpg");
}

#staffDoctor {
	margin:  0 0 100px;
}

#staffDoctor .inner {
	display: flex;
}

#staffDoctor .image {
	width: 420px;
	margin-right: 70px;
}

#staffDoctor .image img {	
	border-radius: 10px;
	margin:  0 0 15px;
}

#staffDoctor .profile {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
}

#staffDoctor .post {
	font-size: 18px;
	color: #ffa0c8;
	padding: 15px 30px;
	background: #fff1fb;
	border-radius: 100px;
	line-height: 1;
	margin-right: 30px;
}

#staffDoctor .name {
	font-size: 30px;
}

#staffDoctor .info {
	width: calc(100% - 490px);
}

#staffDoctor .info h3 {
	font-size: 25px;
	font-weight: 600;
	border-bottom: 4px dotted #e2e2e2;
	line-height: 1;
	margin: 0 0 30px;
	padding:  0 0 30px;
	color: #ffa0c8;
}

#staffDoctor .info p {
	font-size: 22px;
	margin:  0 0 50px;
	line-height: 2;
}

#staffDoctor .info ul {
	line-height: 2;
	font-size: 22px;
}

#staffDoctor .info li span {
	color: #ffa0c8;
	font-weight: 500;
}


@media screen and (max-width:1023px) {

	#staffDoctor {
		margin:  0 0 50px;
	}

	#staffDoctor .inner {
		display: block;
	}

	#staffDoctor .image {
		width: 100%;
		margin: 0 0 20px;
		box-sizing: border-box;
		padding: 0 15px;
	}

	#staffDoctor .image img {	
		margin:  0 0 20px;
	}
	
	#staffDoctor .post {
		font-size: 13px;
		padding: 10px 30px;
		margin-right: 25px;
	}

	#staffDoctor .name {
		font-size: 18px;
		letter-spacing: 3px;
	}

	#staffDoctor .info {
		width: 100%;
		box-sizing: border-box;
		padding: 0 15px;
	}

	#staffDoctor .info h3 {
		font-size: 16px;
		border-bottom: 3px dotted #e2e2e2;
		margin: 0 0 25px;
		padding:  0 0 25px;
		color: #ffa0c8;
	}

	#staffDoctor .info p {
		font-size: 13px;
		margin:  0 0 40px;
	}

	#staffDoctor .info ul {
		font-size: 13px;
	}
}

#staffMember {
	overflow: hidden;
}

.staffMember01 {
	position: relative;
	right: -80px;
}

.staffMember02 {
	position: relative;
	left: -20px;
	top: -140px;
	z-index: 2;
}

.staffSp {
	display: none;
}

@media screen and (max-width:1023px) {
	.staffPc {
		display: none;
	}
	.staffSp {
		display: block;
	}
	.staffMember {
		margin:  0 0 50px;
	}
	.staffMember img {
		width: 100%;
		height: auto;
	}
}

/*=========================================================

04.FAQ

=========================================================*/

#pageFaq .pageTitle {
	background-image: url("../images/page_title/faq.jpg");
}

#pageFaq #contents .inner {
	padding: 0 15px;
}

.faqText {
	text-align: center;
	font-size: 20px;
	margin:  0 0 75px;
	line-height: 2;
}

.faqArticle {
	padding-top: 35px;
}

.faqArticle:last-child {
	margin-bottom: 100px;
}

.faqArticle h3 {
	font-size: 29px;
	color: #38d5e2;
	font-weight: 500;
	display:  flex;
	align-items: center;
}

.faqArticle h3:hover {
	opacity: 0.7;
	cursor: pointer;
}

.faqArticle h3:before {
	content: "";
	display: block;
	width: 91px;
	height: 89px;
	background: url("../images/faq/q.png");
	background-size: cover;
	margin-right: 30px;
}

.faqArticle h3 strong {
	width: calc(100% - 121px);
	display: block;
	font-weight: 600;
}

.faqArticle h3 span {
	background: linear-gradient(transparent 50%, #fff4dc 50%);
}

.faqArticleInner {
	border: 7px solid #ebfcfd;
	padding: 80px 115px;
	border-radius: 20px;
	background: #fff;
	margin-top: 35px;
}

.faqArticleInnerT {
	display: flex;
	align-items: center;
	width: 100%;
	justify-content: space-between;
	margin: 0 0 55px;
}

.faqArticleInnerT:after {
	content: "";
	display: block;
	border-top: 4px dotted #38d5e2;
	height: 1px;
	width: calc(100% - 100px);
}

.faqArticleInnerB {
	display: flex;
	align-items: center;
	width: 100%;
	justify-content: space-between;
	margin: 0 0 55px;
}

.faqArticleInnerB img {
	transform: rotate(180deg);
}

.faqArticleInnerB:before {
	content: "";
	display: block;
	border-top: 4px dotted #38d5e2;
	height: 1px;
	width: calc(100% - 100px);
}

.dots {
	font-size: 22px;
	color: #38d5e2;
	margin:  0 0 35px;
	font-weight: 500;	
}

.faqArticle h4 {
	font-size: 22px;
	color: #38d5e2;
	margin:  0 0 5px;
	font-weight: 500;
}

.faqArticle p {
	font-size: 20px;
	margin:  0 0 35px;
	line-height: 1.8;
}
.faqArticle p span {
	color: #fca241;
}

.faqArticle .flex {
	display: flex;
	justify-content: space-between;
}
.faqArticle .flex .l {
	width: 50%;
	order: 1;
}

.faqArticle .flex .r {
	width: 47%;
	order: 2;
}

.faqArticle .flex img {
	border-radius: 10px;
	margin-bottom: 35px;
}

.faqArticle .mdlImg {
	max-width: 700px;
	width: 100%;
	margin: 0 auto 30px;
}

.faqArticle .mdlImg img {
	border-radius: 10px;	
}

.faqArticle ol {
	list-style: none;
	margin-top: 20px;
	margin-bottom: 30px;
}
.faqArticle ol h5 {
	display: flex;
	margin-bottom: 10px;
	line-height: 1.8;
}

.faqArticle ol h5 .num {
	display: flex;
	justify-content: center;
	text-align: center;
	align-items: center;
	background: #ebfcfd;
	border-radius: 100px;
	width: 35px;
	height: 35px;
	line-height: 1;
	color: #38d5e2;
	font-weight: 500;
	margin-right: 10px;
}

.faqArticle ol h5 .title {
	font-size:  20px;
	width: calc(100% - 45px);
}

@media screen and (max-width:1023px) {
	
	#pageFaq #contents .inner {
		padding: 0 15px;
		box-sizing: border-box;
		
	}

	.faqText {
		font-size: 13px;
		margin:  0;
		text-align: left;
	}

	.faqArticle {
		padding-top: 20px;
	}

	.faqArticle:last-child {
		margin-bottom: 50px;
	}

	.faqArticle h3 {
		font-size: 16px;
	}

	.faqArticle h3:before {
		width: 50px;
		height: 49px;
		background: url("../images/faq/q.png");
		background-size: cover;
		margin-right: 20px;
	}

	.faqArticle h3 strong {
		width: calc(100% - 60px);
	}

	.faqArticle h3 span {
		background: linear-gradient(transparent 50%, #fff4dc 50%);
	}

	.faqArticleInner {
		border: 3px solid #ebfcfd;
		padding: 20px 15px;
		margin-top: 20px;
		background: #fff;
	}

	.faqArticleInnerT {
		margin: 0 0 25px;
	}

	.faqArticleInnerT:after {
		border-top: 3px dotted #38d5e2;
		width: calc(100% - 45px);
	}

	.faqArticleInnerB {
		margin: 0 0 25px;
	}

	.faqArticleInnerB img {
		transform: rotate(180deg);
	}

	.faqArticleInnerB:before {
		border-top: 3px dotted #38d5e2;
		width: calc(100% - 45px);
	}
	
	.faqArticleInnerT img ,
	.faqArticleInnerB img {
		width: 35px;
		height: auto;
	}

	.dots {
		font-size: 22px;
		color: #38d5e2;
		margin:  0 0 35px;
		font-weight: 500;	
	}

	.faqArticle h4 {
		font-size: 14px;
	}

	.faqArticle p {
		font-size: 13px;
		margin:  0 0 30px;
	}

	.faqArticle .flex {
		display: block;
	}
	.faqArticle .flex .l {
		width: 100%;
	}

	.faqArticle .flex .r {
		width: 100%;
	}

	.faqArticle .flex img {
		border-radius: 10px;
		margin-bottom: 35px;
	}

	.faqArticle .mdlImg {
		max-width: 700px;
		width: 100%;
		margin: 0 auto 30px;
	}

	.faqArticle .mdlImg img {
		border-radius: 10px;	
	}

	.faqArticle ol {
		list-style: none;
		margin-top: 20px;
		margin-bottom: 30px;
	}
	.faqArticle ol h5 {
		display: flex;
	}
	
	.faqArticle ol li {
		margin-bottom: 10px;
	}

	.faqArticle ol h5 .num {
		width: 24px;
		height: 24px;
		margin-right: 5px;
	}

	.faqArticle ol h5 .title {
		font-size:  13px;
		width: calc(100% - 29px);
	}
	
}

.basicTable {
	width: 100%;
	margin:  0 0 85px;
	font-size: 20px;
}

.basicTable th {
	border-top: 18px solid #fff;
	background: #ebfcfd;
	color: #38d5e2;
	text-align: center;
	color: #38d5e2;
	border-bottom: 1px solid #38d5e2;
	width: 360px;
	padding: 15px 0;
}

.basicTable td {
	border-top: 18px solid #fff;
	text-align: left;
	padding: 15px 20px;
	border-bottom: 1px solid #38d5e2;
}

@media screen and (max-width:1023px) {
	.basicTable {
		width: 100%;
		margin:  0 0 30px;
		font-size: 13px;
	}

	.basicTable th {
		border-top: 9px solid #fff;
		display: block;
		width: 100%;
		padding: 10px 0;
	}

	.basicTable td {
		border-top: 9px solid #fff;
		display: block;
		width: 100%;
		padding: 10px 0 20px 0;
		text-align: center;
	}	
}

.faqArticle .highLight {
	display: block;
	font-weight: 500;
	font-size: 22px;
}

.faqArticle .highLight span {
	background: linear-gradient(transparent 50%, #fff4dc 50%);
	color: #38d5e2!important;
}

@media screen and (max-width:1023px) {
	.faqArticle .highLight {
		font-size: 16px;
	}	
}

.caution {
	position: relative;
	border: 13px solid #fff4dc;
	border-radius: 5px;
	padding: 35px 65px;
	margin: 50px 0 50px;
}

.caution:before {
	content: "";
	background: url("../images/common/icon_check.png");
	background-size: contain;
	width: 44px;
	height: 44px;
	display: block;
	position: absolute;
	top: -20px;
	left: 20px;
}

.caution .title {
	color: #fca241;
	font-size: 22px;
	margin:  0 0 20px;
	font-weight: 500;
}

.caution .text {
	margin: 0;
	font-size: 20px;
}

@media screen and (max-width:1023px) {
	.caution {
		position: relative;
		border: 6px solid #fff4dc;
		border-radius: 5px;
		padding: 25px 15px;
		margin: 50px 0 30px;
	}

	.caution:before {
		width: 32px;
		height: 32px;
		top: -19px;
		left: 19px;
	}

	.caution .title {
		color: #fca241;
		font-size: 15px;
		margin:  0 0 20px;
		font-weight: 500;
	}

	.caution .text {
		margin: 0;
		font-size: 13px;
	}	
}

.faqArticle .closeBtn {
	display: block;
	width: 330px;
	color: #fff;
	text-align: center;
	padding: 10px;
	font-size: 20px;
	font-weight: 500;
	border-radius: 1000px;
	background: #38d5e2;
	margin: 0 auto;
}

.faqArticle .closeBtn:hover {
	opacity: 0.7;
	cursor: pointer;
}

@media screen and (max-width:1023px) {

	.faqArticle .closeBtn {
		display: inline-block;
		color: #fff;
		font-size: 12px;
		background: #38d5e2;
		font-weight: 500;
		text-align: center;
		border-radius: 100px;
		padding: 7px 50px;
		margin: 0 auto 15px;
		width: auto;
	}

	.faqArticle .closeBtn:hover {
		opacity: 0.7;
		cursor: pointer;
	}
	
}

/*=========================================================

05.お知らせ

=========================================================*/

#pageInformation .pageTitle {
	background-image: url("../images/page_title/information.jpg");
}

#pageInformation #contents .inner {
	padding: 0 15px;
	box-sizing: border-box;
}

.informationBox {
	border: 7px solid #ebfcfd;
	border-radius: 25px;
	padding: 110px;
	background :#fff;
}

@media screen and (max-width:1023px) {
	#pageInformation #contents .inner {
		padding: 0 15px;
		box-sizing: border-box;
	}

	.informationBox {
		border: 3px solid #ebfcfd;
		border-radius: 25px;
		padding: 20px;
		box-sizing: border-box;
	}	
}

/*-----------------------------------------------------
ページナビ
-----------------------------------------------------*/

.wpPagenaviWrap{
	margin:  0 0 100px;
}

.wp-pagenavi {
	clear: both;
	text-align:center;
	display: flex;
	justify-content: center;
	margin-top: 50px;

}
.wp-pagenavi a, .wp-pagenavi span {
	color: #fff;
	background-color: #38d5e2;
	padding: 8px;
	margin: 0 2px;
	white-space: nowrap;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
	text-align: center;
	text-decoration: none;
	border: thin dotted #4DD0D5;
	border-radius: 1000px;
	border: 2px solid #38d5e2;
	font-family: 'Kiwi Maru';
	font-size: 18px;
	width: 30px;
	height: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.wp-pagenavi a:hover{
	color: #fff;
	background-color: #4DD0D5;
}
.wp-pagenavi span.current{
	color: #38d5e2;
	background-color: #ebfcfd;
}

@media screen and (max-width:1023px) {
	
	.wpPagenaviWrap{
		margin:  0 0 50px;
	}
	
	.wp-pagenavi {
		margin: 40px 0 0
	}
	
	.wp-pagenavi a, .wp-pagenavi span {
		margin: 0 2px;
		font-size: 14px;
		width: 20px;
		height: 20px;
	}
	
}
	
/*-----------------------------------------------------
詳細ページ
-----------------------------------------------------*/

.informationDetailTime {
	font-family: 'Kiwi Maru';
	color: #50deea;
	font-size: 20px;
	padding:  0 0 10px;
	display: block;
}

.informationDetailTitle {
	font-size: 22px;
	font-weight: 500;
	margin:  0 0 45px;
	padding:  0 0 45px;
	border-bottom: 4px dotted #e2e2e2;
}

.informationDetail h2 {
	font-size: 24px;
	margin:  0 0 30px;
	font-weight: 500;
}

.informationDetail p {
	line-height: 2;
	margin:  0 0 45px;
	font-size: 20px;
}

.informationDetail *:last-child {
	margin: 0;
}

.informationNav {
	padding: 75px 0 160px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.informationNav a {
	display: inline-block;
	padding: 10px 30px;
	font-weight: 500;
	color: #fff;
	background: #38d5e2;
	border-radius: 1000px;
	font-size: 20px;
	margin: 0 auto;
}

@media screen and (max-width:1023px) {
	.informationDetailTime {
		font-size: 15px;
		padding:  0 0 10px;
	}

	.informationDetailTitle {
		font-size: 18px;
		margin:  0 0 25px;
		padding:  0 0 25px;
		border-bottom: 3px dotted #e2e2e2;
	}

	.informationDetail h2 {
		font-size: 16px;
		margin:  0 0 20px;
	}

	.informationDetail p {
		margin:  0 0 30px;
		font-size: 13px;
	}

	.informationDetail *:last-child {
		margin: 0;
	}

	.informationNav {
		padding: 35px 0 50px;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.informationNav a {
		padding: 7px 10px;
		font-size: 13px;
	}	
}

/*=========================================================

06.アクセス

=========================================================*/

#pageAccess .pageTitle {
	background-image: url("../images/page_title/access.jpg");
}

#pageAccess #contents .inner {
	padding: 0 15px;
	box-sizing: border-box
}

.accessBox01 {
	text-align: center;
	margin:  0 0 75px;
}

.accessLogo {
	margin:  0 0 25px;
}

.accessAddress {
	font-size: 19px;
	margin: 0 0 15px;
}

.accessTel {
	font-size: 25px;
	
	font-family: 'Kiwi Maru';
}

.accessBox02 {
	margin:  0 0 90px;
}

.accessBox03 {
	border: 7px solid #ebfcfd;
	border-radius: 25px;
	padding: 50px 90px;
	margin:  0 0 90px;
	background: #fff;
}

.accessTitle {
	font-size: 25px;
	font-weight: 600;
	margin:  0 0 45px;
	padding:  0 0 25px;
	border-bottom: 4px dotted #e2e2e2;
	text-align: center;
}

.accessTitle .b {
	color: #38d5e2;
}

.accessTitle .o {
	color: #fca94f;
}

.accessImage {
	margin:  0 0 30px;
}

.accessNumber {
	padding:  10px 45px;
	border: 1px solid #38d5e2;
	border-radius: 1000px;
	display: inline-block;
	color: #38d5e2;
	text-align: center;
	font-weight: 500;
	font-size: 25px;
	margin: 0 auto 70px;
}

.accessHeading {
	font-size: 22px;
	font-weight: 500;
	margin: 0 0 30px;
	color: #38d5e2;
}

.accessHeading2 {
	font-size: 22px;
	font-weight: 500;
	margin: 0 0 30px;
	color: #fca94f;
}

.accessText {
	margin:  0 0 45px;
}

@media screen and (max-width:1023px) {
	#pageAccess #contents .inner {
		padding: 0 15px;
		box-sizing: border-box
	}

	.accessBox01 {
		margin:  0 0 35px;
	}

	.accessLogo {
		margin:  0 0 25px;
		text-align: center;
	}
	.accessLogo img {
		width: 100%;
		max-width: 300px;
		height: auto;
	}

	.accessAddress {
		font-size: 13px;
		margin: 0 0 10px;
	}

	.accessTel {
		font-size: 18px;
	}

	.accessBox02 {
		margin:  0 0 50px;
	}
	.accessBox02 iframe {
		height: 300px;
	}

	.accessBox03 {
		border: 3px solid #ebfcfd;
		padding: 20px 10px;
		margin:  0 0 40px;
	}

	.accessTitle {
		font-size: 18px;
		font-weight: 500;
		margin:  0 0 20px;
		padding:  0 0 20px;
		border-bottom: 3px dotted #e2e2e2;
	}

	.accessImage {
		margin:  0 0 20px;
	}

	.accessNumber {
		padding:  10px;
		font-size: 15px;
		margin: 0 auto 35px;
	}

	.accessHeading, .accessHeading2 {
		font-size: 15px;
		margin: 0 0 20px;
	}

	.accessText {
		margin:  0 0 25px;
	}	
}

/*=========================================================

07.WEB予約

=========================================================*/

#pageReserve .pageTitle {
	background-image: url("../images/page_title/reserve.jpg");
}

#pageReserve .heading {
	margin:  0 0 40px;	
}

.reserveText {
	text-align: center;
	margin: 0 0 60px;
}

.reserveBtn {
	text-align: center;
	margin:  0 0 70px;
}

.reserveBtn a {
	font-size: 31px;
	letter-spacing: 3px;
	color: #fff;
	font-weight: 600;
	padding: 30px 90px;
	background: #ff7fb5;
	border-radius: 1000px;
	line-height: 1;
	display: inline-block;
}

@media screen and (max-width:1023px) {

	#pageReserve .heading {
		margin:  0 0 30px;	
	}

	.reserveText {
		text-align: center;
		margin: 0 0 30px;
		font-size: 13px;
	}

	.reserveBtn {
		margin:  0 0 35px;
	}

	.reserveBtn a {
		font-size: 17px;
		padding: 15px 55px;
	}
	
}

#pageReserve .innerBox {
	border: 7px solid #ebfcfd;
	border-radius: 25px;
	padding: 50px 90px;
	margin:  0 auto 90px;
	max-width: 1000px;
	box-sizing: border-box;
	background: #fff;
	position: relative;
	z-index: 4;
}

.reserveHeading {
	font-size: 22px;
	font-weight: 600;
	margin:  0 0 55px;
	padding:  0 0 25px;
	border-bottom: 4px dotted #e2e2e2;
	text-align: center;	
}

.reserveLogo {
	text-align: center;
	margin:  0 auto 40px;
}

.reserveText {
	text-align: center;
	font-size: 18px;
}

.reserveFlex {
	display: flex;
	margin:  0 0 150px;
}

.reserveFlex .image {
	width: 470px;
	margin-right: 55px;
	box-sizing: border-box;
}

.reserveFlex .image img {
	border-radius: 25px;
}

.reserveFlex .info {
	width: calc(100% - 525px);
	box-sizing: border-box;
}

.reserveFlex .info h3 {
	font-size: 22px;
	font-weight: 600;
	margin: 0 0 20px;
	line-height: 2;
}

.reserveFlex .info h3 span {
	background: linear-gradient(transparent 50%, #fff4dc 50%);
}

.reserveFlex .info  p {
	font-size: 20px;
	line-height: 2;
}


@media screen and (max-width:1023px) {
	
	.reserveHowto {
		padding: 0 15px;
	}
	
	#pageReserve .innerBox {
		border: 3px solid #ebfcfd;
		padding: 35px 15px;
		margin:  0 0 45px;
	}

	.reserveHeading {
		font-size: 18px;
		font-weight: 500;
		margin:  0 0 40px;
		padding:  0 0 25px;
		border-bottom: 4px dotted #e2e2e2;
		text-align: center;	
	}

	.reserveLogo {
		text-align: center;
		margin:  0 auto 40px;
	}
	
	.reserveLogo img {
		max-width: 340px;
		width: 100%;
		height: auto;
	}

	.reserveText {
		text-align: center;
		font-size: 13px;
		text-align: left;
	}
	
	.reserveApp {
		padding:  0 15px;
	}

	.reserveFlex {
		display: block;
		margin:  0 0 50px;
	}

	.reserveFlex .image {
		width: 100%;
		margin: 0 0 25px;
	}

	.reserveFlex .image img {
		border-radius: 25px;
	}

	.reserveFlex .info {
		width: 100%;
	}

	.reserveFlex .info h3 {
		font-size: 17px;
		margin: 0 0 20px;
	}

	.reserveFlex .info  p {
		font-size: 13px;
	}
	
}

.reserveAppTitle {
	padding: 20px 110px;
	color: #fff;
	background: #38d5e2;
	font-size: 22px;
	font-weight: 500;
	display: inline-block;
	margin:  0 0 50px;
	border-radius: 1000px;
}

.reserveAppList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
}

.reserveAppList li {
	width: calc(50% - 25px);
	margin-bottom: 50px;
	text-align: center;
	box-sizing: border-box;
	border: 10px solid #38d5e2;
	border-top: 70px solid #38d5e2;
	background: #fff;
	border-radius: 25px;
}
.reserveAppList li .title {
	text-align: center;
	background: #fff;
	border-radius: 25px;
	margin-top: -25px;
}

.reserveAppList li .title img {
	margin-top: -40px;
	margin-bottom: 25px;
}

.reserveAppList li .title span {
	display: block;
	font-size: 22px;
	color: #38d5e2;
	font-weight: 600;
	margin-bottom: 15px;
}

.reserveAppList li .text {
	font-size: 20px;
	line-height: 2;
	padding:  0 55px 40px;
	margin: 0!important;
	text-align: left;
}
.reserveAppList li .text span {
	color: #fca94f;
}

@media screen and (max-width:1023px) {
	
	.reserveTicket {
		padding:  0 15px;
	}
	
	.reserveLogo {
		width: 210px;
	}
	
	.reserveAppTitle {
		padding: 20px;
		font-size: 16px;
		margin:  0 15px 35px;
		display: block;
		box-sizing: border-box;
		width: calc(100% - 30px);
	}

	.reserveAppList {
		display: block;
		padding: 0 15px;
	}

	.reserveAppList li {
		width: 100%;
		margin-bottom: 20px;
		border: 5px solid #38d5e2;
		border-top: 50px solid #38d5e2;
	}
	.reserveAppList li .title {
		text-align: center;
		background: #fff;
		border-radius: 25px;
		margin-top: -20px;
	}

	.reserveAppList li .title img {
		margin-top: -25px;
		margin-bottom: 15px;
		width: 72px;
	}

	.reserveAppList li .title span {
		display: block;
		font-size: 15px;
		color: #38d5e2;
		font-weight: 500;
	}

	.reserveAppList li .text {
		font-size: 13px;
		padding:  0 15px 30px;
	}
}

/*=========================================================

07.診療内容

=========================================================*/

#pageService .pageTitle {
	background-image: url("../images/page_title/service.jpg");
}

#pageReserve .heading {
	margin:  0 0 40px;	
}

.serviceNav {
	margin: 0 auto 75px;
	max-width: 1050px;
	padding: 0 15px;
}

.serviceNav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.serviceNav ul li {
	width: calc(100%/3 - 20px);
	text-align: center;
	margin-bottom: 20px;
}

.serviceNav ul li span {
	display: block;
	border-radius: 1000px;
	padding: 20px;
	font-weight: 500;
	font-size: 20px;
	background: #38d5e2;
	color: #fff;
	border: 1px solid #38d5e2;
}

.serviceNav ul li span:hover,
.serviceNav ul li span.current {
	display: block;
	border-radius: 1000px;
	padding: 20px;
	font-weight: 500;
	font-size: 20px;
	background: #fff;
	color: #38d5e2;
	border: 1px solid #38d5e2;
	cursor: pointer
}

.serviceBox {
	border: 7px solid #ebfcfd;
	border-radius: 25px;
	margin:  0 0 90px;
	background: #fff;
}

.serviceBoxInner {
	padding: 0 120px 30px 120px;
}

/*
	padding: 50px 90px;
*/

.serviceBox h2 {
	background:  url("../images/service/service_heading.png") center bottom no-repeat;
	background-size: 1250px auto;
	height: 160px;
	padding-bottom: 30px;
	box-sizing: border-box;
	display: flex;
	margin: -7px -7px 40px;
	justify-content: center;
	align-items: center;
	text-align: center;
	border-radius: 25px 25px 0 0;
	color: #fff;
	font-size: 29px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 10px;
}

.serviceMainImage {
	text-align: center;
	margin-bottom: 70px;
}

.serviceMainImage:after {
	content: "";
	width: 80px;
	height: 13px;
	display: inline-block;
	background: url("../images/common/dots.png") center center no-repeat;
	background-size: 80px 13px;
}

.serviceMainImage img {
	border-radius: 25px;
	margin-bottom: 40px;
}

.serviceHeading {
	display: flex;
	align-items: flex-start;
}

.serviceHeading {
	color: #38d5e2;
	font-size: 25px;
	font-weight: 500;
	margin-bottom: 40px;
}

.serviceHeading p {
	margin-left: 5px;
	line-height: 2.0;
	width: calc(100% - 65px);
}

.serviceHeading span {

	border-bottom: 4px dotted #38d5e2;
}

.serviceHeading:before {
	content: "";
	display: block;
	width: 60px;
	height: 60px;
	background: url("../images/service/service_mark.png");
	background-size: 60px 60px;
	margin-right: 5px;
}

.serviceSubheading {
	font-size: 22px;
	font-weight: 500;
	margin: 0 0 15px;
	color: #38d5e2;
	display: flex;
	align-items: flex-start;
}

.serviceSubheading:before {
	content: "●";
	font-size: 16px;
	margin: 3px 10px 3px 0;
}

.serviceMaker {
	font-size: 25px;
	color: #38d5e2;
	font-weight: 500;
	margin-bottom: 50px;
}

.serviceMaker span {	
	background: linear-gradient(transparent 50%, #fff4dc 50%);
}

.serviceBar {
	margin:  0 0 30px;
	color: #38d5e2;
	font-weight: 500;
	background: #ebfcfd;
	padding: 10px 30px;
	font-size: 25px;
	display: inline-block;
	border-radius: 100px;
}

.serviceText {
	margin-bottom: 50px;
	font-size: 20px;
}

.serviceFlex01 {
	max-width: 860px;
	margin: 0 auto 60px;
	display: flex;
	justify-content: space-between;
}

.serviceFlex01 img {
	border-radius: 25px;
	width: calc(50% - 35px);
}

.serviceBox .basicTable {
	margin-bottom: 30px;
}

.serviceFlex02 {
	display: flex;	
	margin: 0 0 50px;
}

.serviceFlex02 .image {
	width: 45%;
	margin-right: 5%;
}

.serviceFlex02 .image img {
	border-radius: 25px;
}

.serviceFlex02 .info {
	width: 50%;
}

.serviceFlex02 .info h5 {
	color: #38d5e2;
	font-weight: 500;
	font-size: 22px;
	margin-bottom: 10px;
}

.serviceFlex02 .info p {
	font-size: 20px;
	margin: 0 0 30px;
}

.serviceFlex02 .info *:last-child {
	margin: 0;
}

.spServiceBtn {
	display: none;
}

@media screen and (max-width:1023px) {

	#pageReserve .heading {
		margin:  0 0 40px;	
	}

	.serviceNav {
		display: none;
	}

	.serviceBox {
		border: 3px solid #ebfcfd;
		margin:  0 0 15px;
	}

	.serviceBoxInner {
		padding: 0 15px;
	}

	.serviceBox h2 {
		background:  url("../images/service/service_heading.png") right bottom no-repeat;
		background-size: 100% auto;
		height: auto;
		box-sizing: border-box;
		margin: -3px -3px 20px;
		font-size: 17px;
		padding: 30px 15px 60px;
	}
	
	@media screen and (max-width:767px) {
		.serviceBox h2 {
			background:  url("../images/service/service_heading.png") right bottom no-repeat;
			background-size: 150% auto;
			height: auto;
			box-sizing: border-box;
			margin: -3px -3px 20px;
			font-size: 17px;
			padding: 20px 15px 50px;
		}		
	}

	.serviceMainImage {
		text-align: center;
		margin-bottom: 25px;
	}

	.serviceMainImage:after {
		content: "";
		width: 80px;
		height: 13px;
		display: inline-block;
		background: url("../images/common/dots.png") center center no-repeat;
		background-size: 80px 13px;
	}

	.serviceMainImage img {
		margin-bottom: 30px;
	}

	.serviceHeading {
		display: flex;

	align-items: flex-start;
	}

	.serviceHeading {
		font-size: 17px;
		margin-bottom: 25px;
	}

	.serviceHeading p {
		width: calc(100% - 45px);
	}
	
	.serviceHeading span {
		border-bottom: 3px dotted #38d5e2;
		width: calc(100% - 45px);
	}

	.serviceHeading:before {
		width: 40px;
		height: 40px;
		background: url("../images/service/service_mark.png");
		background-size: 40px 40px;
		margin-right: 5px;
	}

	.serviceSubheading {
		font-size: 16px;
		font-weight: 500;
		margin: 0 0 10px;
	}

	.serviceSubheading:before {
		content: "●";
		font-size: 12px;
		margin: 2px 7px 2px 0;
	}

	.serviceMaker {
		font-size: 18px;
		margin-bottom: 20px;
	}

	.serviceMaker span {	
		background: linear-gradient(transparent 50%, #fff4dc 50%);
	}

	.serviceBar {
		margin:  0 0 20px;
		padding: 5px 10px;
		font-size: 18px;
	}

	.serviceText {
		margin-bottom: 30px;
		font-size:13px;
	}

	.serviceFlex01 {
		max-width: 860px;
		margin: 0 auto 30px;
		display: block;
		justify-content: space-between;
	}

	.serviceFlex01 img {
		border-radius: 25px;
		width: calc(50% - 5px);
	}

	.serviceBox .basicTable {
		margin-bottom: 30px;
	}

	.serviceFlex02 {
		display: block;	
		margin: 0 0 20px;
	}

	.serviceFlex02 .image {
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
	}

	.serviceFlex02 .info {
		width: 100%;
	}

	.serviceFlex02 .info h5 {
		color: #38d5e2;
		font-weight: 500;
		font-size: 15px;
	}

	.serviceFlex02 .info p {
		font-size: 13px;
		margin: 0 0 20px;
	}

	.serviceFlex02 .info *:last-child {
		margin: 0;
	}
	
	
	#pageService #contents .inner {
		padding: 0 15px;
		width: 100%;
		box-sizing: border-box;
	}

	.spServiceBtn {
		display: block;
	}
	
	.pcServiceBtn {
		display: none;
	}
	
	.serviceBtn {
		color: #fff;
		font-size: 18px;
		background: #38d5e2;
		display: block;
		text-align: center;
		padding: 10px;
		border-radius: 1000px;
		margin-bottom: 15px;
		position: relative;
		text-align: center;
		font-weight: 500;
	}
	
	.serviceBtn:hover {
		opacity: 0.7;
		cursor: pointer;
	}
	
	.serviceBtn:after {
		content: "＋";
		line-height: 18px;
		position: absolute;
		top: calc(50% - 9px);
		right: 10px;
	}
	
	.spServiceBtn .serviceBtn.current {
		display: none;
	}
	
	
	.spServiceBtn {
		text-align: center;
	}
	
	.serviceCloseBtn {
		display: inline-block;
		color: #fff;
		font-size: 12px;
		background: #38d5e2;
		font-weight: 500;
		text-align: center;
		border-radius: 100px;
		padding: 7px 50px;
		margin:  0 0 30px;
	}
	
	.serviceCloseBtn:hover {
		cursor: pointer;
		opacity: 0.7;
	}
	
}

/*=========================================================

08.医院紹介

=========================================================*/

#pageIntroduction .pageTitle {
	background-image: url("../images/page_title/introduction.jpg");
}

#pageIntroduction #contents .inner {
	padding: 0 15px;
	box-sizing: border-box;
}

/*-----------------------------------------------------
当院について
-----------------------------------------------------*/

#introductionAbout {
	margin:  0 0 100px;
}

.introductionAboutTitle {
	font-size: 30px;
	margin:  0 0 35px;
	text-align: center;
	font-weight: 600;
}

.introductionAboutTitle span {	
	background: linear-gradient(transparent 50%, #fff1fb 50%);
}

.introductionAboutTitle b {
	font-weight: 500;
}

.introductionAboutTitle .blue {
	color: #50deea;
}

.introductionAboutTitle .pink {
	color: #ffa0c8;
}

.introductionAboutText {
	text-align: center;
	margin:  0 0 100px;
	font-size: 20px;
}

@media screen and (max-width:1023px) {
	
	#introductionAbout {
		margin:  0 0 50px;
	}

	.introductionAboutTitle {
		font-size: 16px;
		margin:  0 0 25px;
	}


	.introductionAboutText {
		text-align: left;
		margin:  0 0 50px;
		font-size: 13px;
	}	
}

.introductionAboutFlex {
	display: flex;
	justify-content: space-between;
	margin: 0 0 50px;
}

.introductionAboutFlex .image {
	width: 45%;
}

.introductionAboutFlex .image img {
	border-radius: 25px;
}

.introductionAboutFlex .info {
	width: 50%;
}

.introductionAboutFlex .info .box {
	display: flex;
}

.introductionAboutFlex .info .number {
	width: 60px;
	margin-right: 20px;
}

.introductionAboutFlex .info .title {
	width: calc(100% - 80px);
}

.introductionAboutFlex .info .title h4 {
	color: #50deea;
	font-weight: 600;
	font-size: 27px;
	margin-bottom: 5px;
	padding-top: 30px;
}

.introductionAboutFlex .info .title p {
	margin-bottom: 30px;
}

.introductionAboutFlex:nth-child(even) .info{
	order: 1;
}

.introductionAboutFlex:nth-child(even) .image{
	order: 2;
}

@media screen and (max-width:1023px) {
	.introductionAboutFlex {
		display: block;
		margin: 0 0 50px;
	}

	.introductionAboutFlex .image {
		width: 100%;
		box-sizing: border-box;
		padding: 0 15px;
		margin-bottom: 30px;
	}

	.introductionAboutFlex .info .number {
		margin-right: 10px;
	}
	
	.introductionAboutFlex .info .box {	
		margin-bottom: 20px;
	}

	.introductionAboutFlex .info .title {
		width: calc(100% - 70px);
	}

	.introductionAboutFlex .info .title h4 {
		font-size: 17px;
		padding-top: 0;
		margin-bottom: 0;
	}
	
	.introductionAboutFlex .info {
		width: 100%;
	}

	.introductionAboutFlex .info .title p {
		margin-bottom: 0;
		font-size: 13px;
	}

	.introductionAboutFlex:nth-child(even) .info{
		order: 1;
	}

	.introductionAboutFlex:nth-child(even) .image{
		order: 2;
	}	
}

/*-----------------------------------------------------
院内のご案内
-----------------------------------------------------*/

.introductionFloorMap {
	padding: 0 80px 100px;
}

.introductionFloorList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 30px;
}

.introductionFloorList li {
	width: calc(100% / 3 - 30px);
	margin-bottom: 60px;
}

.introductionFloorList li .image {
	margin: 0 0 15px;
}

.introductionFloorList li .image img {
	border-radius: 25px;
}

.introductionFloorList li .title {
	color: #38d5e2;
	font-weight: 600;
	padding:  0 0 15px;
	margin:  0 0 20px;
	border-bottom: 4px dotted #e2e2e2;
	text-align: center;
	font-size: 25px;
}

.introductionFloorList li .text {
	font-size: 20px;
	line-height: 2;
}

@media screen and (max-width:1023px) {

	.introductionFloorMap {
		padding: 0 0 30px;
	}

	.introductionFloorList {
		display: block;
		margin-bottom: 30px;
	}

	.introductionFloorList li {
		width: 100%;
		margin-bottom: 35px;
	}

	.introductionFloorList li .image img {
		border-radius: 25px;
	}

	.introductionFloorList li .title {
		padding:  0 0 15px;
		margin:  0 0 20px;
		border-bottom: 3px dotted #e2e2e2;
		font-size: 17px;
	}

	.introductionFloorList li .text {
		font-size: 13px;
	}
	
}

/*-----------------------------------------------------
当院の設備
-----------------------------------------------------*/

.introductionFacilityList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
	margin-bottom: 30px;
}

.introductionFacilityList li {
	width: calc(50% - 25px);
	margin-bottom: 50px;
	text-align: center;
	box-sizing: border-box;
	border: 10px solid #38d5e2;
	border-radius: 25px;
	background: #fff
}
.introductionFacilityList li .title {
	text-align: center;
	background: #38d5e2;
	color: #fff;
	font-size: 22px;
	padding: 0px 10px 35px;
	font-weight: 500;
}
.introductionFacilityList li .image {
	font-size: 20px;
	line-height: 2;
	padding:  40px 55px 20px;
	text-align: left;
	background: #fff;
	border-radius: 25px;
	margin: -25px 0 0;
}

.introductionFacilityList li .name {
	font-size: 25px;
	color: #38d5e2;
	font-weight: 600;
	margin:  0 0 10px;
}

.introductionFacilityList li .text {
	font-size: 20px;
	line-height: 2;
	padding:  0 55px 40px;
	margin: 0!important;
	text-align: left;
}

@media screen and (max-width:1023px) {
	.introductionFacilityList {
		display: block;
	}

	.introductionFacilityList li {
		width: 100%;
		margin-bottom: 20px;
	}
	.introductionFacilityList li .title {
		font-size: 17px;
		padding: 0px 10px 35px;
	}
	.introductionFacilityList li .image {
		font-size: 20px;
		line-height: 2;
		padding:  30px 15px 20px;
		margin: -25px 0 0;
	}

	.introductionFacilityList li .name {
		font-size: 16px;
	}

	.introductionFacilityList li .text {
		font-size: 14px;
		padding:  0 15px 20px;
	}	
}

/*-----------------------------------------------------
患者様へのご案内
-----------------------------------------------------*/

.informationText {
	text-align: center;
	font-size: 18px;
	margin: 0 0 60px;
}

.introductionInformation {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
	margin-bottom: 30px;
}

.introductionInformation li {
	width: calc(50% - 25px);
	padding: 20px 0 20px 0;
	color: #fff;
	background: #38d5e2;
	font-size: 22px;
	font-weight: 500;
	display: inline-block;
	margin: 0 10px 20px 10px;
	border-radius: 1000px;
	text-align: center;
}

#introductionInformation .innerBox {
	font-size: 18px;
	border: 7px solid #ebfcfd;
	border-radius: 25px;
	padding: 50px 90px;
	margin:  0 auto 90px;
	max-width: 1000px;
	box-sizing: border-box;
	background: #fff;
	position: relative;
	z-index: 4;
}

@media screen and (max-width:1023px) {

	.informationText {
		text-align: center;
		margin: 0 0 30px;
		font-size: 13px;
	}

	.introductionInformation {
		display: block;
	}

	.introductionInformation li {
        padding: 20px;
        font-size: 16px;
        margin: 0 15px 20px;
        display: block;
        box-sizing: border-box;
        width: calc(100% - 30px);
	}
	
	#introductionInformation .innerBox {
		border: 3px solid #ebfcfd;
		padding: 20px 20px;
		margin:  0 0 45px;
		font-size: 13px;
	}
}


#hamburger .reserve a:hover,
.reserveBtn a:hover,
.informationBtn a:hover,
.setsubiBtn a:hover,
.btn a:hover {
	opacity: 0.7;
}

.informationList a:hover span {
	text-decoration: underline;
}

#hamburger .nav a,
#globalNav a,
.informationNav a,
.informationDetailTitle,
.informationDetail h2,
.reserveHeading,
.reserveAppList li .title span,
.reserveAppTitle,
.reserveBtn a,
.accessHeading,
.accessHeading2,
.accessTitle,
.faqArticle .highLight span,
.faqArticle .closeBtn,
.faqArticle h4,
.faqArticle h3 span,
#staffDoctor .info li span,
#staffDoctor .name,
#staffDoctor .post,
#staffDoctor .info h3,
.introductionFacilityList li .name,
.introductionFacilityList li .title,
.introductionFloorList li .title,
.introductionAboutFlex .info .title h4,
.introductionAboutTitle,
.introductionAboutTitle b,
.serviceBar,
.serviceMaker,
.serviceSubheading,
.serviceHeading span,
.serviceBox h2,
.serviceNav ul li span,
.serviceNav ul li span:hover, 
.serviceNav ul li span.current,
.lower .heading,
.pageTitle h1,
.pageTitle p,
.setsubiList li .title,
#doctor .profile,
#doctor .title,
.anshinList .title,
#spNav li a {
	font-family: 'Zen Maru Gothic', sans-serif!important;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 600!important;
}
