/* CSS Document */
@charset "utf-8";

html {
  font-size: 10px;
  overflow-x: hidden;
}
body {
  font-family:YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"!important;
  color: #333333!important;
  margin: 0 auto!important;
	max-width: 100vw;
}

ul, ol {
    margin: 0!important;
}

a {
  text-decoration: none;
}
li {
  list-style: none;
}
img {
  max-width: 100%;
}
.flex {
	display: flex;
}
.row {
	flex-direction: row-reverse;
}
.wrap {
	flex-wrap: wrap;
}

.mini-title {
	border-top: double 5px #333;
	border-bottom: double 5px #333;
	padding: 1.6rem 0;
}
.mini-title p {
	font-size: 3.6rem;
	text-align: center;
}
.tab-only {display: none;
}
.sp-only {
	display: none;
}
/*ヘッダー*/
#header {
	position: absolute;
	top: 1rem;
	z-index: 3;
	width: 100%;
}
.head-top {
	width: 90%;
	margin: auto;
	justify-content: space-between;
}
.head-left {
	max-width: 40rem;
}
.head-right {
	margin-top: 2rem;
	max-width: 40rem;
}
.head-right a {
	display: block;
}

/*メインビジュアル*/
#mainvisual {
	position: relative;
	height: 100vh;
	z-index: 1;
	background-image: url("../img/mainvisual.png");
}
#mainvisual .catch-copy {
	width: 80%;
	position: absolute;
	top: 40%;
	left: 50%;
	transform: translate(-50%);
}
#mainvisual .catch-copy h2 {
	color: #fff;
	font-size: 4rem;
	text-align: center;
	line-height: 1.5;
}
.h2bg {
	font-size: 6rem;
	font-weight: 600;
}
#mainvisual .catch-copy p {
	color: #fff;
	text-align: center;
	font-size: 3.6rem;
	margin-top: 2rem;
}
.yellow {
	color: #E4EC12;
}

/*グローバルメニュー*/
.g-nav {
	background: url("../img/g-nav-bg.png") repeat center / auto;
	width: 100%;
	padding:1.6rem 0;
}
.g-nav.fixed{
	position: fixed;/*fixedを設定して固定*/
  z-index: 999;/*最前面へ*/
  top:0;/*位置指定*/
  left:0;/*位置指定*/
	padding: 0.8rem 0;
}
/*========= ナビゲーションドロップダウンのためのCSS ===============*/

/*==ナビゲーション全体の設定*/
nav{
	width: 70%;
	margin: auto;
}
/*ナビゲーションを横並びに*/
nav ul{
	justify-content: space-between;
}
/*2階層目以降は横並びにしない*/
nav ul ul{
	display: block;
}
/*下の階層のulや矢印の基点にするためliにrelativeを指定*/
nav ul li{
	position: relative;
}
/*ナビゲーションのリンク設定*/
nav ul li a{
	display: block;
	color: #fff;
	transition:all .3s;
	text-align: center;
	font-size: 2rem;
}
nav ul li a span{
	font-size: 1.4rem;
}
nav ul li a:hover{
	color:#fff;	
}

/*== 2・3階層目の共通設定 */

/*下の階層を持っているulの指定*/
nav li.has-child ul{
    /*絶対配置で位置を指定*/
	position: absolute;
	left:50%;
	top:7rem;
	transform: translate(-50%);
	z-index: 4;
    /*形状を指定*/
	background:#ACCF92;
	width:30rem;
    /*はじめは非表示*/
	visibility: hidden;
	opacity: 0;
    /*アニメーション設定*/
	transition: all .3s;
}
.has-child li a{
	padding: 1rem;
	font-size: 1.8rem;
}
/*hoverしたら表示*/
nav li.has-child:hover > ul,
nav li.has-child ul li:hover > ul,
nav li.has-child:active > ul,
nav li.has-child ul li:active > ul{
  visibility: visible;
  opacity: 1;
}

/*ナビゲーションaタグの形状*/
nav li.has-child ul li a{
	color: #fff;
	border-bottom:solid 1px rgba(255,255,255,0.6);
}

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

nav li.has-child ul li a:hover,
nav li.has-child ul li a:active{
	background:#3577CA;
}


/*インフォ＆ニュース*/
.info-news {
	width: 100%;
}
/*インフォメーション*/
.info {
	width: 50%;
	height: 53rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	position: relative;
}
.info-title {
	position: absolute;
	top: 5rem;
	left: 1rem;
}
.info-title img {
	width: 70%;
}
.info-main {
	margin-top: 8rem;
	width: 100%;
}
.info-wrap {
	width: 80%;
	margin: auto;
}
.info-table {
	width: 83%;
	margin: 5rem auto 2rem auto;	
}
.addres {
	text-align: center;
	font-size: 2rem;
	margin-top: 8rem;
}
.addres i {
	color: #317CAF;
	margin-right: 1.6rem;
}
.table-memo {
	font-size: 1.8rem;
	text-align: center;
}


/*お知らせ*/
.news {
	width: 50%;
	height: auto;
	position: relative;
	background-color: #F4F0D9;
}
.news-title {
	position: absolute;
	top: 5rem;
	left: 1rem;
}
.news-title img {
	width: 70%;
}
.news-main {
	margin-top: 8rem;
	width: 100%;
}
.news-wrap {
	width: 80%;
	margin: auto;
}
.news-sec-title {
	font-size: 3.2rem;
	font-weight: 600;
	text-align: center;
}
.news-inner {
	width: 85%;
	margin: 3rem auto;
	height: 300px;
    overflow-y: scroll;
}
.news-box {
	margin: 3rem auto;
}
.news-box span {
	font-size: 1.8rem;
}
.news-box p {
	font-size: 1.8rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

/*感染症対策*/

#covid19 {
	padding: 5rem 0;
	ackground-image: url("../img/gray-bg.png");
	background-size: cover;
	background-repeat: no-repeat;
}
.accordion-001 {
  max-width: 900px;
	margin: 0 auto;	
}
.accordion-001 summary {
  display: flex;
	flex-direction: column;
  align-items: center;
  position: relative;
  padding: 6.5rem 0 ;
	text-align: center;
	box-sizing: border-box;
	background-image: url("../img/corona-bnr-br.png");
	background-size: cover;
	margin: 0 auto;
  color: #317CAF;
  font-weight: 600;
	font-size: 5rem;
  cursor: pointer;
}

.accordion-001 summary::-webkit-details-marker {
    display: none;
}

.accordion-001 summary::after {
	transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
    content: '';
    transition: transform .3s;
}

.accordion-001[open] summary::after {
	transform: rotate(225deg);
}

.accordion-open {
    transform: translateY(-10px);
    opacity: 1;
    margin: 0;
    padding: 1em 2em 2em 2em;
	background: #fff;
    transition: transform .5s, opacity .5s;
}

.accordion-open[open] {
    transform: none;
    opacity: 1;
}
.covid19-flex {
	display: flex;
	justify-content: space-between;
	align-content: center;
	flex-wrap: wrap;
}
.covid19-list {
	width: 30%;
	margin: 0 auto;
	padding: 30px 0;
	text-align: center;
}
.covid19-list img {
	width: 70%;
	margin: 0 auto;
}
.covid19-list span {
	display: inline-block;
	text-align: center;
	padding: 5px 0;
	font-size: 2rem;
}


/*特徴*/
#features {
	margin-top: 10rem;
	width: 100%;
	background-image: url("../img/features-bg.png");
	padding: 10rem 0 5rem 0;
}
.features-title {
	width: 30%;
	margin:  3rem auto;
}
.features-title img {
	width: 100%;
}
.w60 {
	width: 60%;
	margin: auto;
}
.feature {
	width: 100%;
	margin: 10rem auto;
}
.feature-inner {
	width: 100%;
}
.feature-img {
	width: 60%;
	z-index: 1;
}
.feature-inner .mgl {
	margin-left: 5rem;
}
.feature-inner .mgr {
	margin-right: 5rem;
}

.feature-txt {
	width: 50%;
	background-color: rgba(255,255,255,0.8);
	outline: 1px solid #03391C;
	outline-offset: -2.4rem;
	padding-top: 14rem;
	padding-bottom: 5rem;
	margin-top: 16rem;
	z-index: 1;
	position: relative;
}
.ftxt-icon {
	position: absolute;
	top: -8rem;
	left: 50%;
	transform: translate(-50%);
	width: 24%;
}
.f-txt-inner {
	width: 80%;
	margin: auto;
}
.f-bgtxt {
	font-size: 4rem;
	text-align: center;
}
.f-txtbox {
	width: 85%;
	margin: 3rem auto;
}
.f-txtbox p {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 2.4rem;
}

.f02-wrap {
	width: 70%;
	margin: 5rem auto 3rem auto;
	justify-content: space-between;
}
.f02-wrap-item {
	background-color: #fff;
	padding: 4rem 3rem;
}
.f02-wrap-title {
	background-color: #317CAF;
	border-radius: 1rem;
	padding: 1rem 0;
	margin: 3rem auto 0 auto;
	width: 70%;
}
.f02-wrap-title p {
	color: #fff;
	text-align: center;
	font-size: 2rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.f02-wrap-img img {
	width: 35rem;	
	margin: auto;
	border-radius: 1rem;
}
.box{
	opacity: 0;
}
.fadeUp {
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity: 0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}


.feature-txt-bg {
	width: 85%;
	padding: 10rem 0 5rem 0;
	margin: 20rem auto 10rem auto;
	background-color: rgba(255,255,255,0.8);
	outline: 1px solid #03391C;
	outline-offset: -2.4rem;
	padding-top: 14rem;
	z-index: 5;
	position: relative;
}
.ftxt-icon-bg {
	position: absolute;
	top: -12rem;
	left: 50%;
	transform: translate(-50%);
	width: 16%;
}
.fbg-img-wrap {
	width: 80%;
	margin: 5rem auto;
	justify-content: space-between;
}
.fbg-img-wrap img {
	width: 50%;
}
.detail-btn {
	width: 36rem;
	margin: 5rem auto;
	border: 3px solid #333;
	padding: 1.6rem 0;
	border-radius: 1rem;
}
.detail-btn:hover {
	background-color: rgba(127,255,212,0.8);
}
.detail-btn a {
	display: block;
	text-align: center;
	font-size: 3.2rem;
	color: #333;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

.fadeUpTrigger,
.fadeLeftTrigger,
.fadeRightTrigger {
	opacity: 0;
}
.fadeUp {
    animation-name: fadeUpAnime;
    animation-duration:2s;
    animation-fill-mode:forwards;
    opacity: 0;
}
@keyframes fadeUpAnime{
from {
    opacity: 0;
    transform: translateY(100px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}

/* 左から */

.fadeLeft{
animation-name:fadeLeftAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeLeftAnime{
  from {
    opacity: 0;
  transform: translateX(-100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}

/* 右から */

.fadeRight{
animation-name:fadeRightAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeRightAnime{
  from {
    opacity: 0;
  transform: translateX(100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}




/*医院紹介へのリンク*/
#clinic-link {
	width: 100%;
	background-image: url("../img/gray-bg.png");
	padding: 5rem 0;
}
.clinic-link-bnr {
	width: 40%;
	margin: auto;
}
.clinic-link-bnr a {
	display: block;
}
.clinic-link-bnr a img {
	width: 100%;
}


/*ご挨拶*/
#greeting {
	width: 100%;
	padding: 10rem 0;
}

.doc-greeting-left {
	width: 50%;
	position: relative;
}
.doc-img-bg {
	background-color: #0D8672;
	width: 56rem;;
	height: 72rem;
}
.doc-img {
	position: absolute;
	top: 8rem;
	left: 5rem;
	z-index: 5;
}
.doc-img img {
	width: 56rem;
	height: auto;
}
.doc-name {
	background-color: rgba(13,134,114,0.8);
	padding: 1.6rem 0;
	width: 30rem;
	z-index: 7;
	position: absolute;
	bottom: 1rem;
	right: 16rem;
}

.doc-name p {
	text-align: center;
	color: #fff;
	font-size: 3.2rem;
	line-height: 0.8;
}
.doc-title {
	font-size: 2.4rem;
	margin-right: 2rem;
}
.en {
	color: #fff;
	font-size: 1.8rem;
}
.docpage-link {
	width: 80%;
	margin: 2rem auto 0 auto;
}

.doc-greeting-right {
	width: 50%;
}

.greeting-title {
	width: 60%;
	margin-top: 5rem;
	margin-bottom: 3rem;
}
.greeting-title-ja {
	font-size: 3.6rem;
	font-weight: 600;
	align-items: center;
}
.greeting-title-ja:after {
  border-bottom: 3px dotted #333;
  content: "";
  width: 56rem;
	 margin-left: 2rem; 
}

.greeting-txt-bg {
	width: 80%;
	font-size: 4rem;
	margin: 3rem 0;
}
@media screen and (max-width:1280px){
	.doc-greeting-left {
		width: 45%;
		position: relative;
	}
	.doc-img-bg {
		background-color: #0D8672;
		width: 50rem;;
		height: 65rem;
	}
	.doc-img {
		position: absolute;
		top: 8rem;
		left: 5rem;
		z-index: 5;
	}
	.doc-img img {
		width: 50rem;
		height: auto;
	}
	.doc-name {
		position: absolute;
		bottom: 5rem;
		right: 5rem;
	}
	.doc-greeting-right {
		width: 55%;
	}
	.greeting-title-ja:after {
		width: 45rem;
		 margin-left: 2rem; 
	}
	
	.greeting-txt-bg {
		width: 95%;
	}
}
.greeting-txt {
	width: 75%;
	font-size: 1.8rem;
	margin: 2rem 0;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	line-height: 2;
}
.clinic-img-wrap {
	width: 90%;
	margin-top: 10rem;
	margin-left: auto;
	margin-right: auto;
	justify-content: center;
	gap: 3rem;
}

/*診療案内*/

#medical {
	padding: 10rem 0 0 0;
}
.medical-title {
	width: 45%;
	margin: auto;
}
.medical-title-ja {
	margin-top: 3rem;
	text-align: center;
	font-size: 4.8rem;
}
.medical-inner {
	width: 80%;
	margin: 10rem auto;
	gap: 5rem;
	justify-content: center;
}
.medical-item {
	width: 32rem;
}
.medical-item a {
	display: block;
} 
.medical-item a img {
	width: 100%;
}
.medical-txt {
	width: 100%;
	border-bottom: 1px solid #ccc;
	padding: 1rem 0;
}
.medical-txt p {
	font-size: 1.6rem;
	margin-left: 2rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

.medical-bgindex {
	width: 100%;
}
.medical-bgindex-txt {
	width: 60%;
	padding-top: 3rem;
}
.medical-bgindex-img {
	width: 40%;
}
.medical-bgindex-img img {
	width: 100%;
}
.greenbg {
	background-color: rgba(88,181,165,0.5);
}
.bluebg {
	background-color: rgba(118,167,201,0.5);
}
.yellowbg {
	background-color: rgba(223,225,158,0.5);
}

.bgindex-title {
	text-align: center;
	font-size: 5.6rem;
	letter-spacing: 1rem;
	font-weight: 600;
}
.bgindex-title-en {
	font-size: 8rem;
	color: rgba(252, 252, 252,0.4);
	text-align: center;
	letter-spacing: 1.6rem;
}
.bgindex-title-ja {
	text-align: center;
	font-size: 5.6rem;
	letter-spacing: 1rem;
	font-weight: 600;
	margin-top: -8rem;
}
.bgindex-txtbox {
	width: 70%;
	margin: 3rem auto;
}
.bgindex-txtbox p {
	font-size: 2.4rem;
	text-align: center;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.medical-bgindex-txt .detail-btn {
	border-radius: 0;
}
.medical-bgindex-txt .detail-btn:hover {
	background-color: #333;
}
.medical-bgindex-txt .detail-btn:hover a {
	color: #fff;
}

/*お気軽にご相談ください。*/
#consultation {
	width: 100%;
	padding: 5rem 0;
	border-top: 2rem solid #64A55D;
	border-bottom: 2rem solid #64A55D;
}
.consultation-inner {
	width: 85%;
	margin: auto;
	background-image: url("../img/consul-bg.png");
	padding: 3rem 0;
}
.consul-title {
	position: relative;
}
.consul-title p{
	text-align: center;
	font-size: 5rem;
	color: #fff;
}
.consul-title::after {
	content: "Consultation";
	font-family: "Brush Script MT";
	color: #fff;
	font-size: 4.8rem;
	position: absolute;
	top : 6rem;
	left: 50%;
	transform: translate(-50%);
}
.consul-box {
	width: 85%;
	padding: 5rem 0;
	margin: 6rem auto 0 auto;
	background-color: rgba(255,255,255,0.8);
	outline: 1px solid #03391C;
	outline-offset: -2.4rem;
}
.consul-box p {
	text-align: center;
	font-size: 2.4rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	line-height: 2;
}
.contact-link {
	width: 60%;
	margin: 3rem auto;
	justify-content: space-between;
}
.consul-telbnr,
.consul-webbnr {
	width: 46%;
}

/*採用情報*/
#recruit {
	width: 100%;
	padding: 5rem 0;
}
.recruit-inner {
	width: 90%;
	margin: auto;
}
.recruit-img {
	width: 50%;
	height: 40rem;
	position: relative;
}
.recruit-img img {
	width: 60%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.recruit-txt {
	width: 50%;
}
.recruit-title-en {
	width: 50%;
}
.recruit-title-ja {
	font-size: 4.8rem;
	margin-top: 1rem;
}
.recruit-txt-sm {
	width: 85%;
}
.recruit-txt-sm p {
	font-size: 2rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.recruit-txt .detail-btn {
	width: 24rem;
	margin: 3rem 0;
	border: 3px solid #333;
	padding: 1rem 0;
	border-radius: 0;
}
.recruit-txt .detail-btn a {
	font-size: 2.4rem;
}

/*フッター*/
.footer-index {
	width: 100%;
	background-color: #77B04C;
	padding: 5rem 0;
}
.footer-index-inner {
	width: 100%;
	background-color: rgba(252,252,252,0.1);
	padding: 5rem 0;
}
.footer-index-inside {
	width: 70%;
	margin: auto;
	align-items: center;
}
.footer-index-inside p {
	color: #fff;
	text-align: center;
}
.footer-index-left {
	width: 50%;
}
.footer-logo {
	width: 50%;
	margin: auto;
}
.footer-logo img {
	width: 100%;
}
.footer-adress {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 2.4rem;
	margin-top: 2rem;
}
.footer-tel {
	font-size: 4rem;
	margin-top: 2rem;
}
.footer-webbnr {
	width: 40%;
	margin: 3rem auto 0 auto;
}
.footer-index-right {
	width: 50%;
}
.footer-timetabel-memo {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 1.8rem;
	margin-top: 2rem;
}

/*googlemap*/
.footer-map {
	padding: 5rem 0 1rem 0;
}
.footer-map-box {
	width: 80%;
	margin: auto;
}
.footer-map-box iframe {
	width: 100%;
}

/*コピーライト*/
.copy {
	text-align: center;
	margin-bottom: 1rem;
	font-size: 1.8rem;
}

/*トップリンク*/
/*リンクの形状*/
#page-top a{
	display: flex;
	justify-content:center;
	align-items:center;
	background:#fff;
	border: 1px solid #333;
	border-radius: 50%;
	width: 8rem;
	height: 8rem;
	color: #333;
	text-align: center;
	text-transform: uppercase; 
	text-decoration: none;
	font-size:1.4rem;
	transition:all 0.3s;
}
#page-top a:hover{
	background: #777;
}
/*リンクを右下に固定*/
#page-top {
	position: fixed;
	right: 10px;
	bottom:10px;
	z-index: 2;
    /*はじめは非表示*/
	opacity: 0;
	transform: translateY(100px);
}

/*　上に上がる動き　*/

#page-top.UpMove{
	animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }
  to {
    opacity: 1;
	transform: translateY(0);
  }
}
/*　下に下がる動き　*/

#page-top.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 1;
	transform: translateY(0);
  }
  to {
  	opacity: 1;
	transform: translateY(100px);
  }
}

/*=================下層ページ==================*/

/*～～～～～～医院紹介～～～～～～*/
/*メインビジュアル*/
#s-mainvisual {
	position: relative;
	height: 70vh;
	z-index: 1;
	background-image: url("../img/s-mainvisual.png");
	background-position: top center;
	background-size: cover;
}
#s-mainvisual .catch-copy {
	position: absolute;
	top: 40%;
	left: 50%;
	transform: translate(-50%);
}
#s-mainvisual .catch-copy h2 {
	color: #fff;
	font-size: 8rem;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.8rem;
}
#s-mainvisual .catch-copy p {
	font-size: 3rem;
	text-align: center;
	color: #fff;
	margin-top: 1rem;
	letter-spacing: 0.6rem;
}

/*診療方針*/
#policy {
	padding: 10rem 0;
}
.w90 {
	width: 90%;
	margin: auto;
}
.w90 p {
	letter-spacing: 0.6rem;
}
.policy-index {
	width: 100%;
	background-color: rgba(212,216,218,0.5);
	margin-top: 24rem; 
	padding-top: 10rem;
	position: relative;
}
.policy-deco {
	width: 30%;
}
.policy-img {
	width: 40%;
	position: absolute;
	top: -16rem;
	left: 50%;
	transform: translate(-50%);
}
.policy-box {
	background-color: #0D8672;
	padding: 1rem 2rem;
	z-index: 6;
	position: absolute;
	bottom: 5rem;
	right: -30rem;
}
.policy-box p,
.policy-tabbox p{
	font-size: 3rem;
	color: #fff;
	text-align: center;
}
.policy-box p .bold,
.policy-tabbox p .bold{
	font-weight: 600;
	font-size: 3.6rem;
}
.policy-txt {
	width: 75%;
	align-items: center;
	position: absolute;
	bottom: 5rem;
	left: 50%;
	transform: translate(-50%);
	justify-content: space-between;
}
.policy-title {
	width: 20%;
}
.policy-txtbox {
	width: 75%;
}
.policy-txtbox p {
	font-size: 2rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

/*院内紹介*/
#intro {
	margin-top: 10rem;
}
.intro-inner {
	padding: 5rem 0;
}
.intro-main {
	width: 60%;
	margin: auto;
	margin-bottom:50px;
}
.intro-main img {
	width: 100%;
}
.slider {
	margin-top: 5rem;
}
/*==================================================
スライダーのためのcss
===================================*/
.slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
    margin:0 10px;/*スライド左右の余白調整*/
}


/*～～～～～～院長紹介～～～～～～*/
#doctor {
	padding: 10rem 0;
}
.doctor-inner {
	width: 85%;
	margin: 5rem auto;
	padding: 10rem 0;
	justify-content: space-between;
	align-items: center;
}
.doctor-inner-txt {
	width: 48%;
}
.doctor-inner-txt h2 {
	font-size: 4rem;
	line-height: 1.4;
	margin-top: 3rem;
}
.doctor-inner-txt p {
	font-size: 2rem;
	margin-top: 3rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	line-height: 2;
}
.name-box {
	width: 50%;
	margin: 3rem auto;
	background-color: #0D8672;
}
.name-box p {
	color: #fff;
	text-align: center;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-size: 3.6rem;
	line-height: 1.3;
}
.name-box p span {
	font-size: 2rem;
}
.doctor-inner-img {
	width: 50%;
	position: relative;
	z-index: 1;
}
.doctor-inner-img img {
	width: 64rem;
	height: 72rem;
}
.doctor-inner-img .doc-img-bg {
	position: absolute;
	top:3rem;
	left: 12rem;
	z-index: -1;
}
.career {
	width: 80%;
	margin: 5rem auto;
	background-color: rgba(198,226,221,0.3);
	padding: 5rem 0;
}
.career-inner {
	width: 80%;
	margin: auto;
}
.career-title {
	font-size: 3rem;
	margin-bottom: 2rem;
}
.career-inner dl {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 1.6rem;
}
.career-inner dl dt {
	width: 15%;
	margin-bottom: 1rem;
	border-bottom: 1px solid #ccc;
	padding: 1rem 0;
}
.career-inner dl dd {
	width: 85%;
	margin-bottom: 1rem;
	border-bottom: 1px solid #ccc;
	padding: 1rem 0;
}


/*～～～～～～診療時間・アクセス～～～～～～*/
#time {
	padding: 10rem 0;
}
.time-inner {
	padding: 5rem 0;
}
.time-main-img {
	width: 60%; 
	margin: 3rem  auto;
}
.time-main-img img {
	width: 100%;
}
.time-logo {
	width: 25%;
	margin: auto;
}
.time-logo img {
	width: 100%;
}
.time-adress {
	font-size: 2.6rem;
	text-align: center;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	margin-top: 3rem;
	margin-bottom: 6rem;
}
.main-timetabel {
	width: 50%;
	margin: 5rem auto;
}
.main-timetabel-memo {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 2rem;
	text-align: center;
}

#access {
	padding: 10rem 0;
}
.access-memo-title {
	width: 35%;
	margin: 3rem auto 0 auto;
	background-color: #0D8672;
	padding: 1rem 0;
}
.access-memo-title p {
	text-align: center;
	color: #fff;
	font-size: 2.4rem;
}
.access-memo-txt {
	width: 35%;
	background-color: #D4E9E5;
	margin: 0 auto ;
	padding: 1.6rem 0;
}
.access-memo-txt p {
	text-align: center;
	font-size: 1.8rem;
}


/*～～～～～～採用情報～～～～～～*/
.comingsoon {
	padding: 16rem 0;
	width: 50%;
	margin:auto; 
}
.comingsoon img {
	width: 100%;
	display: inline-block;
}


/*～～～～～～診療案内～～～～～～*/

.med-inner {
	width: 80%;
	margin: 5rem auto;
	padding: 5rem 0;
	justify-content: space-between;
	align-items: center;
}
.med-inner-txt {
	width: 48%;
}
.med-inner-txt h2 {
	font-size: 4rem;
	line-height: 1.4;
	margin-top: 3rem;
	padding-bottom: 1rem;
	border-bottom: dashed 5px #64A55D;
}
.med-inner-txt p {
	font-size: 2rem;
	margin-top: 3rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	line-height: 2;
}
.med-inner-img {
	width: 40%;
	height: 40rem;
	background-color: #0D8672;
	position: relative;
}
.med-img {
	width: 100%;
	position: absolute;
	bottom: 3rem;
	right: 3rem;
}
.mg10 {
	margin: 10rem auto;
}
.mini-index {
	width: 70%;
	margin: 10rem auto;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.inner-title {
	width: 100%;
	padding: 1rem 0;
	background-color: #0D8672;
	margin-bottom: 5rem;
}
.inner-title p {
	font-size: 3.2rem;
	text-align: center;
	color: #fff;
}
.meritdemerit {
	justify-content: space-between;
	padding: 0 2rem;
}
.merit,
.demerit {
	width: 45%;
}
.dm-icon {
	width: 60%;
	margin: auto;
}
.merit img,
.demerit img {
	width: 100%;
}
.merit ul,
.demerit ul {
	width: 80%;
	margin: 3rem auto;
}
.merit ul li,
.demerit ul li {
	font-size: 1.8rem;
	list-style: disc;
	list-style-position: inside;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.implant-flow dl {
	width: 90%;
	margin: 3rem auto 0 auto;
}
.implant-flow dl dt {
	width: 15%;
	margin-bottom: 5rem;
	padding-bottom: 3rem;
	border-bottom: 1px solid #ccc;
}
.implant-flow dl dt img {
	width: 60%;
}
.implant-flow dl dd {
	width: 85%;
	margin-bottom: 5rem;
	padding-bottom: 3rem;
	border-bottom: 1px solid #ccc;
}
.flow-title {
	font-size: 2.8rem;
	font-weight: 600;
	margin-bottom: 1rem;
}
.flow-txt {
	font-size: 1.8rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.implant-note {
	width: 80%;
	margin: 5rem auto;
	background-color: #E9E5E5;
	padding: 2rem 0;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.implant-note p {
	text-align: center;
	font-weight: 600;
	font-size: 2.4rem;
}
.implant-note ul {
	width: 80%;
	margin: 1rem auto 0 auto;
}
.implant-note ul li {
	font-size: 1.6rem;
	margin-bottom: 0.8rem;
}
.topic-title {
	width: 100%;
	margin: 3rem auto;
	padding-bottom: 1rem;
	border-bottom: 1px solid #ccc;
}
.topic-title p {
	font-size: 3rem;
}
.topic-inner {
	justify-content: space-between;
	align-items: center;
}
.topic-txt {
	width: 65%;
}
.topic-txt p {
	font-size: 2rem;
}


.topic-img {
	width: 30%;
}

.partnership-link {
	width: 80%;
	margin: 3rem auto;
	border: 2px solid #333;
	padding: 2rem 0;
}
.partnership-link:hover {
	background: rgba(75,172,159,0.8);
}
.partnership-link a {

	display: block;
	text-align: center;
	font-size: 2.4rem;
	color: #333;
}

/*お問い合わせフォーム*/
#contact-form {
	margin: 10rem auto;
}
.contact-form {
	width: 60%;
  margin: 0 auto;/*中央寄せ*/
  padding: 6rem 0;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.contact-form th {
	font-size: 2rem;
}
.contact-form td {
	font-size: 1.6rem;
}

.contact-table {
  width: 100%;
  margin-bottom: 2rem;
}
.contact-item,
.contact-body {
  padding: 1rem;
	border: 1px solid #ccc;
}

.contact-item {
  text-align: left; /* テキスト左寄せ */
  width: 30%; /* 横幅30%指定（グレーの背景色部分） */
  background-color:rgba(119,176,76,0.7); /* グレーの背景色 */
	font-weight: normal;
}

.contact-body {
  width: 70%; /* 横幅70%指定（白背景色部分） */
	background-color: #ffffff;
}
.form-text {
  width: 100%;
  padding: 1rem;
  border-radius: 0.5rem;
  border: 1px solid #ccc;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  max-width: 40rem;
}
.contact-use + .contact-use {
  margin-left: 1rem;
}

.contact-use-txt {
  margin-left: 0.5rem;
}
.form-select {
    width: 18rem;
    height: 4rem;
    padding: 0.5rem;
    border: 1px solid #ccc;
    border-radius: 0.5rem;
}
.form-textarea {
  width: 90%;
  padding: 1rem;
  height: 20rem;
  border-radius: 0.5rem;
  border: 1px solid #ccc;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.contact-submit {
  width: 25rem; /* 横幅指定 */
  background-color: #77B04C; /* 背景色 */
	border-radius: 1rem;
  color: #fff; /* 文字色 */
  font-weight: bold; /* 文字の太さ */
  display: block; /* インライン要素をブロック要素に変更 */
  margin: 0 auto; /* 中央寄せ */
  font-size: 2rem; /* 文字の大きさ */
  padding: 1.5rem; /* 内側の余白 */
  border-radius: 3rem; /* 角丸指定 */
  border: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
}
.contact-submit:hover {
	background-color: #A0D8EF;
}




/* 外枠 */
.wpcf7 .cf7-green { max-width: 1120px; margin: 0 auto; }

/* 表レイアウト */
.wpcf7 .cf7-green-table{
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  background: #fff;
  border: 1px solid #dcdcdc;
  margin-top:100px;
}
.wpcf7 .cf7-green-table p{
	font-size:20px;
}

.wpcf7 .cf7-green-table th,
.wpcf7 .cf7-green-table td{
  border-top: 1px solid #dcdcdc;
  padding: 14px 16px;
  vertical-align: middle;
}
.wpcf7 .cf7-green-table tr:first-child th,
.wpcf7 .cf7-green-table tr:first-child td{ border-top: none; }

/* 左の見出しセル（緑） */
.wpcf7 .cf7-green-table th{
  width: 28%;
  background: #98c06a;   /* 見出しのグリーン（調整可） */
  color: #fff;
  font-weight: 600;
  text-align: left;
}

/* 右の入力セル */
.wpcf7 .cf7-green-table td{ width: 72%; }

/* 入力パーツ */
.wpcf7 .cf7-green .w100{ width: 100%; }
.wpcf7 .cf7-green input[type="text"],
.wpcf7 .cf7-green input[type="email"],
.wpcf7 .cf7-green input[type="tel"],
.wpcf7 .cf7-green select,
.wpcf7 .cf7-green textarea{
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  border: 1px solid #cfcfcf;
  border-radius: 4px;
  font-size: 16px;
  line-height: 1.6;
  background: #fff;
}
.wpcf7 .cf7-green textarea{ min-height: 210px; }

/* 送信ボタン */
.wpcf7 .cf7-green .submit-wrap{ 
	text-align: center;
	margin: 36px 0 0; 
    display: grid;
    place-items: center;
}


.wpcf7 .cf7-green .btn-green{
  display: inline-block;
  min-width: 240px;
  padding: 16px 24px;
  background: #7aae4f;
  color: #fff;
  font-weight: 700;
  border: none;
  border-radius: 3px;
  cursor: pointer;
  font-size:20px;
}
.wpcf7 .cf7-green .btn-green:hover{ opacity: .9; }

/* スマホ対応（縦並び） */
@media (max-width: 768px){
  .wpcf7 .cf7-green-table,
  .wpcf7 .cf7-green-table tbody,
  .wpcf7 .cf7-green-table tr,
  .wpcf7 .cf7-green-table th,
  .wpcf7 .cf7-green-table td{
    display: block;
    width: 100%;
  }
  .wpcf7 .cf7-green-table th{
    border-right: none;
    border-bottom: none;
    border-top: 1px solid #dcdcdc;
    padding: 12px 14px;
  }
  .wpcf7 .cf7-green-table tr:first-child th{ border-top: none; }
  .wpcf7 .cf7-green-table td{
    padding: 12px 14px 18px;
    border-top: none;
    border-bottom: 1px solid #dcdcdc;
  }
  .wpcf7 .cf7-green textarea{ min-height: 160px; }
  .wpcf7 .cf7-green .btn-green{ min-width: 60%; }
}



.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #ffb900;
    max-width: 600px;
    margin: 0 auto;
    font-size: 20px;
}


/**
.slick-slide {
  width: 300px !important;
}
**/


p {
	margin-bottom:0px!important;
}