/*-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/* もとの */
.required {
	padding: 4px;
	background: #DE8686;
	color: #fff;
	margin-left: 3px;
	border: none!important;
	border-radius: 4px;
}
.contact input, .contact textarea {
	width: 96%;
	margin: 0px 2% 10px 2%;
	height: 43px;
}
.contact select {
	width: 96%;
	margin: 0px 2% 10px 2%;
	-webkit-appearance: menulist-button;
	height: 43px;
	vertical-align: middle;
	color: inherit;
}
.contact textarea {
	width: 96%;
	height: 143px;
	margin: 0px 2% 10px 2%;
}
.submitbtn {
	text-align: center;
	margin: 0 auto;
}
.birth-flex {
	display: flex;
	flex-wrap: wrap;
}
.birth-flex > div {
	display: flex;
	width: calc( 100%/3);
	justify-content: flex-start;
	align-items: center;
}
.birth-flex > div > span {
	width: calc( 100% - 1.4em );
	margin-right: .1em;
}
.birth-flex > p {
	margin: 0;
}
.clinic-list {
	width: 100%;
}
.clinic-list li {
	margin-bottom: 5px;
	border: 1px solid #a37a52;
	display: inline-block;
	width: 47%;
	margin-left: 3px;
}
.clinic-list li i {
	margin-left: 6px;
}
.clinic-list li a {
	line-height: 3.6;
	display: block;
	text-align: center;
	color: #a37a52;
}
.clinic-list li a:hover {
	color: #fff;
	background: #a37a52;
}
@media screen and (min-width:1281px) {
	.clinic-list {
		width: 640px;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin: 0 auto;
	}
	.clinic-list li {
		vertical-align: middle;
		width: 150px;
	}
	.clinic-list li a {
		width: 140px;
	}
}


/*-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.parts {
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto;
}
.parts ul {
	display: inline-block;
	vertical-align: middle;
	margin-bottom: 40px;
	width: 30%;
	text-align: center;
}
.parts ul li {
	color: #a37a52;
	border: 1px solid #a37a52;
	width: 100%;
	padding: 14px 0;
	display: block;
	margin-bottom: 18px;
	text-align: center;
}
.parts img {
	margin: 70px 0px;
	display: inline-block;
}
.imgt {
	display: inline-block;
	width: 36%;
}
.bl {
	background-color: #eceef0;
	display: block;
	text-align: left;
	padding: 20px;
}
.three-reason .inner {
	padding: 50px 0 20px 0;
}
.three-reason p {
	padding: 10px;
}
.three-reason h3 {
	background: linear-gradient(135deg, #ccb49d, #b29373);
	background-color: #D6DA84;
	font-weight: bold;
	width: 100px;
	padding: 1px 0;
	border-radius: 100px;
	color: #fff;
	line-height: 1.4;
	margin: 40px 0;
	text-align: center;
	display: inline-block;
	vertical-align: top;
}
.three-reason h3 .gr {
	border: 2px solid #fff;
	margin: 2px;
	border-radius: 100px;
	padding: 30px 0 22px 0;
}
.three-reason h3 span {
	font-family: 'Oswald', sans-serif;
	display: block;
}
.three-reason h4 {
	/*font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;*/
	font-weight: bold;
	color: #b39271;
	line-height: 1.4;
	margin-left: 0px;
	display: inline-block;
	width: 68%;
	margin-top: 50px;
	vertical-align: middle;
}
.three-reason h4 span {
	display: block;
	margin-bottom: 20px;
	margin-top: 6px;
}
.three-reason img {
	width: 100%;
}
.relatedlinks {
	background-color: #fff;
	color: #b39271;
	border: 1px solid #b39271;
	padding: 18px;
	margin-bottom: 10px;
}
.relatedlinks span {
	display: block;
	border-bottom: 1px solid #b39271;
	padding-bottom: 16px;
	margin-bottom: 16px;
	font-weight: bold;
}
.relatedlinks i {
	margin-right: 6px;
}
.relatedlinks a {
	padding: 0 18px;
	color: #319fd9;
	text-decoration: underline;
	display: block;
}
.why .inner {
	padding: 50px 0;
	text-align: center;
}
.why ul li {
	display: inline-block;
	width: 240px;
	vertical-align: top;
	text-align: left;
	margin: 20px 5px;
}
.why ul li span {
	display: block;
	text-align: center;
	padding: 6px 0;
	margin: 14px 0
}
.why ul li:first-child span {
	background: #edf0c3;
}
.why ul li:nth-child(2) span {
	background: #d9e9c6;
}
.why ul li:nth-child(3) span {
	background: #c5e1c6;
}
.why p {
	margin: 40px 0;
	text-align: left;
	padding: 0 28px;
}
.why p span {
	font-weight: bold;
	background: linear-gradient(transparent 0%, #fff300 0%);
	display: inline;
	padding: 0 6px;
}
table.candolist {
	border-collapse: separate;
	border-spacing: 0px 1px;
	margin: 40px 0
}
table.candolist th {
	padding: 14px;
	vertical-align: middle;
	border-bottom: #ccc 1px solid;
	color: #fff;
	font-size: 1.1rem;
}
table.candolist th i {
	margin-right: 8px;
}
table.candolist td {
	padding: 12px;
	vertical-align: middle;
	border-bottom: #ccc 1px solid;
}
table.candolist th.l1 {
	width: 240px;
	border-right: #fff 1px solid;
	color: #484645;
	padding-left: 10px;
}
table.candolist tr:first-child th.l2 {
	background: #8b6d62;
}
table.candolist tr:first-child th.l3 {
	background: #aaabaa;
}
table.candolist td.l2 {
	font-size: 1.1rem;
	font-weight: bold;
	color: #5c3f36;
}
table.candolist td.l3 {
	font-size: 0.9rem;
	font-weight: bold;
	color: #323232;
}
table.candolist td.l2 span {
	color: #a41d54;
	font-size: 1.2rem;
	margin: 0 10px;
}
table.candolist td.l3 span {
	margin: 0 10px;
}
table.candolist th.l2, table.candolist td.l2 {
	width: 378px;
	border-left: #fff 1px solid;
	border-right: #fff 1px solid;
	background: #efebe9;
}
table.candolist th.l2, table.candolist th.l3 {
	text-align: center;
}
table.candolist th.l3, table.candolist td.l3 {
	width: 280px;
	border-left: #fff 1px solid;
	border-right: #fff 1px solid;
	background: #f1f0f0;
}
.pre h2 {
	font-weight: bold;
	color: #b39271;
	font-size: 1.4rem;
	line-height: 1.4;
	margin-bottom: 40px;
	text-align: center;
}
table.prelist {
	border-collapse: separate;
	border-spacing: 0px 2px;
	margin: 40px 0
}
table.prelist th {
	width: 100%;
	display: block;
	border-left: #fff 1px solid;
	border-right: #fff 1px solid;
	background: #efebe9;
	padding: 14px 0;
	vertical-align: middle;
	text-align: center;
	border-bottom: #fff 1px solid;
	font-size: 0.9rem;
	margin-top: 10px;
}
table.prelist th span {
}
table.prelist th i {
	width: 16px;
}
table.prelist td {
	display: block;
	width: 92%;
	padding: 12px 4%;
	vertical-align: middle;
	border-bottom: #fff 1px solid;
	border-left: #fff 1px solid;
	border-right: #fff 1px solid;
	background: #f1f0f0;
	font-size: 1rem;
}
table.prelist td>span {
	margin: 0 10px;
}
.price h3 {
	border-style: double;
	border-color: #b1b1b1;
	width: 93%;
	margin-bottom: 10px;
	padding: 10px 3%;
	margin-top: 10px;
}
.price ul li p {
	width: 260px;
	line-height: 1.2;
	height: 20px;
	font-size: 0.8rem;
	text-align: left;
}
.price h3 i {
	margin-right: 6px;
}
.price ul li {
	border-bottom: 1px solid #cccbcc;
	padding: 1%;
}
.price ul li:last-child {
	border-bottom: none;
}
.price ul li img {
	width: 42%;
	display: inline-block;
	padding: 20px 0 0px 0;
	vertical-align: top;
}
.price .priceTop {
	display: inline-block;
	margin-left: 2%;
	font-size: 0.8rem;
	font-weight: bold;
	color: #e2608b;
	width: 54%;
}
.price ul li h4 {
	background: #fbe3e9;
	color: #ca235c;
	width: 100%;
	text-align: center;
	font-weight: bold;
	margin-top: 10px;
	padding: 6px 0;
}
.price h4>span {
	font-size: 0.8rem!important;
}
.price .priceTop .vertical span {
	font-family: 'Oswald', sans-serif;
	font-size: 2.4rem;
	color: #e2608b;
	font-weight: normal;
}
.price .priceBottom {
	display: inline-block;
	margin-left: 2%;
	font-size: 0.8rem;
	font-weight: bold;
	color: #e2608b;
	width: 54%;
	vertical-align: bottom;
}
.price .priceBottom span {
	font-family: 'Oswald', sans-serif;
	font-size: 2.4rem;
	color: #e2608b;
	font-weight: normal;
}
.price a {
	background: #fff;
	border-radius: 6px;
	text-align: center;
	padding: 8px 0;
	border: 1px solid #b59574;
	font-size: 0.8rem;
	width: 100%;
	margin: 10px 0 22px 0;
	display: inline-block;
}
.price a:hover {
	color: #fff;
	background: #a37a52;
}

table.tbl {
	width: 100%;
	max-width: 100%;
	margin: 2em 0;
}
table.tbl th,
table.tbl td {
	padding: .5em .6em;
	line-height: 1.42857143;
	vertical-align: top;
	border: 1px solid #000000;
	vertical-align: middle;
}
table.tbl thead th {
	background-color: #f2a50a;
}
table.tbl tbody th {
	background-color: #f5f1e6;
}
table.tbl tbody td {
}
table.tbl th.center,
table.tbl td.center {
	text-align: center;
}
table.tbl th.top,
table.tbl td.top {
	vertical-align: top;
}



.part-ranking {
	background: #f7f7f7;
	padding: 15px;
}
.part-ranking picture {
	display: block;
}
.part-ranking-ttl {
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
	margin-bottom: 15px;
}

.part-ranking-flex {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.part-ranking-box {
	padding: 15px;
	width: 100%;
	background-color: #FFF;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 15px;
}
.part-ranking-box:last-of-type {
	margin-bottom: 0;
}
.part-ranking-box > picture {
	width: 35%;
	position: relative;
}
.part-ranking-box:nth-of-type(1) > picture::after {
	content: '';
	background-repeat: no-repeat;
	background-position: top left;
	background-size: contain;
	background-image: url(../image/part/no1.png);
	padding: 20%;
	position: absolute;
	top: 0;
	left: 0;
}
.part-ranking-box:nth-of-type(2) > picture::after {
	content: '';
	background-repeat: no-repeat;
	background-position: top left;
	background-size: contain;
	background-image: url(../image/part/no2.png);
	padding: 20%;
	position: absolute;
	top: 0;
	left: 0;
}
.part-ranking-box > div:first-of-type {
	width: 65%;
	padding-left: 15px;
}
.part-ranking-box > div:last-of-type {
	width: 100%;
	margin-top: 10px;
}
.part-ranking-box > div p {
	padding: .5em 0;
	margin: 0;
	font-size: 3.8vw;
}
.part-ranking-box > div .label-title {
	background-color: #89d0c7;
	border-radius: 5px;
	color: #FFF;
	padding: .2em .5em;
	text-align: center;
	font-size: 4.2vw;
}
.part-ranking-box > div .part-ranking-ossm-ttl {
	border-top: 1px dashed #ff9b9e;
	position: relative;
	padding-bottom: 6vw;
	margin-top: 6vw;
	margin-bottom: .5em;
}
.part-ranking-box > div .part-ranking-ossm-ttl > img {
	width: 12vw;
	position: absolute;
	top: -6vw;
	left: -1vw;
}
.part-ranking-box > div ul {
	padding-left: .7em;
	position: relative;
}
.part-ranking-box > div li {
	font-size: 3.8vw;
}
.part-ranking-box > div li:before {
	display: block;
	position: absolute;
	left: 0;
	content: '・';
}


@media screen and (min-width: 768px) {
	.part-ranking {
		padding: 20px 25px;
	}
	.part-ranking-ttl {
		width: 300px;
		text-align: left;
		margin: 0 0 1em;
	}
	.part-ranking-box {
		width: calc( ( 100%/5 ) - 15px );
		padding: 0 5px 25px;
		display: block;
		margin: 0;
	}
	.part-ranking-box > picture {
		width: 100%;
		margin-bottom: 25px;
		padding-top: 50px;
	}
	.part-ranking-box > div:first-of-type,
	.part-ranking-box > div:last-of-type {
		width: 100%;
		padding-left: 0;
	}
	.part-ranking-box > div p {
		font-size: .65em;
		min-height: 6.3em;
	}
	.part-ranking-box > div .label-title {
		font-size: .65em;
		margin-bottom: 15px;
	}
	.part-ranking-box > div .part-ranking-ossm-ttl {
		padding-bottom: 22px;
		margin-top: 22px;
		margin-bottom: 1em;
	}
	.part-ranking-box > div .part-ranking-ossm-ttl > img {
		width: 44px;
		position: absolute;
		top: -22px;
		left: -10px;
	}

	.part-ranking-box > div li {
		font-size: .65em;
		margin-bottom: .5em;
	}
	.part-ranking-box > div li:last-of-type {
		margin-bottom: 0;
	}
}
@media screen and (min-width: 1024px) {
	.part-ranking-box > picture {
		padding-top: 70px;
	}
	.part-ranking-box > div p {
		font-size: .8em;
		min-height: 7em;
	}
	.part-ranking-box > div .label-title {
		font-size: .9em;
	}
	.part-ranking-box > div li {
		font-size: .85em;
	}
}

/*-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.news {
	background-color: #fffde1;
  margin: 0 10px;
	text-align: center;
	margin-top: 46px;
}
.news h2{
	font-size: 2rem!important;
	margin: 14px 0 0 0;;
	padding: 0;
	display: block;
	height: 40px;
}

.news ul {
	display: inline-block;
	padding: 0;
	margin: 0;
	width: 97%;
}
.news h2 {
	font-family: 'A-OTF-SoftGoStd-Light';
	color: #231305;
	font-size: 1.6rem;
	font-weight: normal;
	text-align: center;
}
.news h2 span {
	font-size: 0.8rem;
	display: block;
	margin-top: 8px;
}
.innerNews {
	display: inline-block;
	width: 100%;
	margin: 10px 0;
	vertical-align: top;
}
.category-title {
	font-size: 2.2rem;
  font-weight: normal;
  text-align: center;
  margin: 40px 0 20px 0;
  padding-top: 40px;
  padding-bottom: 20px;
  font-size: 30px;
  color: #5a4e42;
  width: 100%;
  text-align: center;
  font-weight: 800;
  position: relative;
}
.newsList_all {
	text-align: left;
	background-color: #fff;
	border: 1px solid #ad9375;
	padding: 10px 0;
	width: 96%;
	margin: 0 auto;
}
.newsList_all li {
	padding: 10px 10px 10px 10px;
  margin: 0 10px;
  border-bottom: 1px solid #776042;
  list-style: none;
}
.newsList_all li:last-child {
	border-bottom: none;
}
.newsList_all li a {
	color: #231305;
  text-align: left;
  font-size: 14px;
  padding: 0;
  padding-bottom: 2px;
  line-height: 1.2;
  display: block;
  text-decoration: none;
}
.newsList_all li span a {
	font-size: 0.8rem;
	display: inline-block;
	margin: 0 4px;
}
.newsList_all li span {
	display: block;
  margin-bottom: 8px;
  font-size: 14px;
  color: #F4BB13;
}
.newsList_all li a:hover {
	text-decoration: underline;
}

.page-numbers {
	display: inline-block;
	border-radius: 6px;
	padding: .6em .8em;
	min-width: 44px;
	line-height: 28px;
	text-align: center;
	list-style: none;
	border: 1px solid #ad9375;
	background-color: #fff;
}
.page-numbers.prev, .page-numbers.next {
	padding: .6em;
}
.page-numbers.current {
	background-color: #FF4765;
	border-color: #FF4765;
	color: #fff;
}

/*ニュース記事ページ*/
#singlearticle .post-heading {
	padding-top: 80px;
	padding-bottom: 10px;
	text-align: center;
}
#singlearticle .post-title {
	margin: 10px 0 20px 0;
  padding-bottom: 0px;
  font-size: 30px;
  color: #5a4e42;
  width: 100%;
  text-align: center;
  font-weight: 800;
  position: relative;
}
#singlearticle .post-date {
	display: block;
  margin-bottom: 8px;
  font-size: 1.6rem;
  color: #F4BB13;
}
.contribution {
	background-color: #f9f9f9;
	padding: 36px 16px;
	margin: 16px;
	font-size: 1.4rem;
	font-weight: normal;
	line-height: 2;
}
.contribution img {
	max-width: 100%;
	width: initial;
}
.contribution a:not(.btn) {
	text-decoration: underline;
}
.contribution h2 {
	margin: 2.5em 0 1em;
	color: #776042;
	font-size: 1.3em;
	font-weight: bold;
}
.contribution h3{
	margin: 1.5em 0 1em;
	color: #776042;
	font-size: 1.13em;
	font-weight: bold;
}
.contribution h4 {
	margin: 1em 0 1em;
	font-size: 1.13em;
	font-weight: bold;
}
.contribution strong, .contribution b {
	font-weight: bold;
}
.contribution .red {
	color: #e3275c;
}
.contribution .highlight {
	background: linear-gradient(transparent 60%, #ffff99 60%);
}
.contribution .annotation {
	font-size: .6em !important;
}
.contribution figure, .contribution picture {
	display: block;
	margin-bottom: 1em;
}
.contribution ul {
	margin-bottom: 1em;
}
.contribution li {
	position: relative;
	padding: .3em 0 .3em 1.3em;
	line-height: 1.5;
}
.contribution li:before{
	content: '';
	position: absolute;
	background-color: transparent;
	border: 1px solid #ad9375;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	left: 3px;
	top: calc(1em - 4px);
}
.contribution .box1, .contribution .box2, .contribution .box3 {
	margin-bottom: 1em;
	padding: .5em 1em;
	line-height: 2;
}
.contribution .box1 p:last-of-type, .contribution .box2 p:last-of-type, .contribution .box3 p:last-of-type {
	margin-bottom: 0;
}
.contribution .box1 {
	background-color: #fff;
	border-left: 3px solid #c6c2c1;
}
.contribution .box2 {
	background-color: #efefef;
}
.contribution .box3 {
	border: 1px solid #c6c2c1;
}
.contribution .profile img {
	display: block;
}
.contribution .profile img.alignleft {
	margin: auto;
}
.table-calendar {
	width: 100%;
	max-width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
	margin: 1em auto;
	background: #fff;
}
.table-calendar caption {
	padding: 10px;
	background: #c6c2c1;
	font-weight: bold;
}
.table-calendar tr.dates-row-pc {
	display: none;
}
.table-calendar tr.hours-row-pc {
	display: none;
}
.table-calendar tr.hours-row-sp th {
	padding: 7px 10px;
	font-size: .9em;
	background: #fff;
}
.table-calendar,
.table-calendar thead th,
.table-calendar tfoot th {
	text-align: center;
}
.table-calendar thead {
	border-top: 1px solid #ddd;
}
.table-calendar thead > tr > th {
	vertical-align: bottom;
	border-bottom: 2px solid #ddd
}
.table-calendar tr {
	display: flex;
	flex-flow: row wrap;
	width: 100%;
	justify-content: space-between;
}
.table-calendar tr:nth-child(odd) {
	background-color: transparent;
}
.table-calendar th,
.table-calendar td {
	padding: 8px;
	border-top: 1px solid #ddd;
	line-height: 1.42857143;
}
.table-calendar th {
	background: #efebe9;
	padding: 10px;
	display: block;
	width: 100%;
	border-left: none;
	border-right: none;
	border-bottom: none;
}
.table-calendar td {
	width: 100%;
	border: none;
}
.table-calendar td.closed {
	color: #666;
	background: #ddd;
}
.table-calendar.col-2 td {
	width: calc(100%/2);
}
.table-calendar.col-3 td {
	width: calc(100%/3);
}
.table-calendar.col-4 td {
	width: calc(100%/4);
}
.table-calendar.col-5 td {
	width: calc(100%/5);
}
.table-calendar.col-6 td {
	width: calc(100%/6);
}
.table-calendar td::before {
	content: attr(data-label);
	display: block;
	font-size: .7em;
	margin-bottom: 0.25rem;
}

@media (hover) {
	.table-calendar tbody tr:hover > td,
	.table-calendar tbody tr:hover > th {
		background-color: #f5f5f5;
	}
}

/*--------------デスクトップ------------*/
@media screen and (min-width:640px) {
	.news {
		background-color: #fffdf1;
		margin: 0 50px;
		text-align: center;
		margin-top: 46px;
		padding-top: 10px;
		padding-bottom: 30px;
	}
	.news ul {
		display: inline-block;
		width: 480px;
	}
	.news h2 {
		font-family: 'A-OTF-SoftGoStd-Light';
		color: #231305;
		font-size: 1.6rem;
		font-weight: normal;
		text-align: center;
	}
	.news h2 span {
		font-size: 0.8rem;
		display: block;
		margin-top: 8px;
	}
	.innerNews {
		display: inline-block;
		width: 478px;
		margin: 10px;
	}

	.btn-border {
		display: inline-block;
		text-align: left;
		color: #fff;
		text-decoration: none;
		font-weight: bold;
		background-color: #ad9375;
		transition: .4s;
		background-position: center right 20px;
		background-repeat: no-repeat;
		width: 480px;
		padding: 12px 0;
		text-align: center;
		border: 1px solid #ad9375;
	}
	.btn-border:hover {
		background-color: #fff;
		border: 1px solid #ad9375;
		color: #ad9375;
	}
	.category-title {
		font-size: 30px;
    color: #5a4e42;
    width: 100%;
    text-align: center;
    font-weight: 800;
    position: relative;
	}
	.newsList_all {
		text-align: left;
		background-color: #fff;
		border: none;
		padding: 0;
		width: 840px;
		margin: 0 auto;
	}
	.newsList_all li {
		padding: 10px 10px 10px 10px;
    margin: 0 10px;
    border-bottom: 1px solid #776042;
    list-style: none;
	}
	.newsList_all li:last-child {
		border-bottom: none;
	}
	.newsList_all li a {
		color: #231305;
    text-align: left;
    font-size: 14px;
    padding: 0;
    padding-bottom: 2px;
    line-height: 1.2;
    display: block;
    text-decoration: none;
	}
	.newsList_all li span a {
		font-size: 0.8rem;
		display: inline-block;
		margin: 0 4px;
	}
	.newsList_all li span {
		display: block;
    margin-bottom: 8px;
    font-size: 14px;
    color: #F4BB13;
	}
	.newsList_all li a:hover {
		text-decoration: underline;
	}

	/*ニュース記事ページ*/
	#singlearticle .post-heading {
		margin: 0px 0 20px 0;
		padding-top: 25px;
		padding-bottom: 30px;
	}
	#singlearticle .post-title {
		font-size: 30px;
    color: #5a4e42;
    width: 100%;
    text-align: center;
    font-weight: 800;
    position: relative;
  }
	#singlearticle .post-title,
	#singlearticle .post-date {
		display: inline-block;
	}
	#singlearticle .post-date {
		display: block;
    margin-bottom: 8px;
    font-size: 20px;
    color: #F4BB13;
	}
	.contribution {
		background-color: #f9f9f9;
		padding: 50px;
		max-width: 1080px;
		margin: 0 auto;
		font-size: 1.6rem;
	}
	.contribution img {
		/*width: 100%;*/
	}
	.contribution .profile img.alignleft {
		float: left;
		margin-right: 1em;
	}
	.contribution .profile::after {
		content: "";
		display: block;
		clear: both;
	}
	.table-calendar tr.dates-row-pc {
		display: table-row;
	}
	.table-calendar tr.hours-row-pc {
		display: table-row;
	}
	.table-calendar tr.hours-row-sp {
		display: none;
	}
	.table-calendar tr {
		display: table-row;
	}
	.table-calendar tr:nth-child(odd) {
		background-color: #f8f9fa;
	}
	.table-calendar th,
	.table-calendar td {
		border: 1px solid #ddd;
		display: table-cell;
		width: auto;
		line-height: 1.65;
		padding: 10px;
	}
	.table-calendar th {
		background: #efebe9;
	}
	.table-calendar td {
	}
	.table-calendar td::before {
		display: none;
	}
}

/* 託児所-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------＊*/
.container.container-nursery {
	padding: 0;
}
.page-nursery .mky {
	background:linear-gradient(transparent 75%, #FFF73B 75%);
}
.page-nursery .tcr {
	color: #F45B5B;
	font-size: .85em;
	margin-left: .5em;
}
.page-nursery h2 {
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-size: 26px;
	text-align: center;
}
.page-nursery h2.h2 {
	color:#F45B5B;
	padding-bottom: 25px;
	background-repeat: no-repeat;
	background-position: bottom center;
	background-image: url(../image/nursery/line_380.svg);
}
.page-nursery h2.hana {
	color:#685A98;
}
.page-nursery picture {
	display: block;
	text-align: center;
}
.page-nursery .flex-box h3 {
	font-family: "M PLUS Rounded 1c", sans-serif;
	color:#DD761E;
	font-size: 21px;
	padding-bottom: 10px;
	margin-bottom: 15px;
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: contain;
	background-image: url(../image/nursery/line_290.svg);
	text-align: center;
}
.page-nursery .flex-box {
	margin: 3rem -10px 0;
}
.page-nursery .flex-box > div {
	width: calc( (100% / 3) );
	padding: 0 10px;
}
.page-nursery .flex-box picture {
	margin: 0 0 10px;
	display: block;
}
.page-nursery .nursery-service li {
	background-color: rgba(255, 231, 198, .2);
	padding: 1.5rem;
	font-size: 1.6rem;
	margin-bottom: 6px;
}
.page-nursery .notice{
	font-size:1.2rem;
	padding:20px;
}
.page-nursery img.normal {
	width: auto;
}
.page-nursery .howto dt {
	border-bottom: #FFE7C6 solid 3px;
	padding-bottom: 15px;
	margin-bottom: 25px;
}
.page-nursery .howto dt h3 {
	font-family: "M PLUS Rounded 1c", sans-serif;
	color: #F45B5B;
	font-size: 22px;
	margin: 0;
	padding-left: .8em;
}
.page-nursery .howto dt picture {
	display: inline-block;
	width: 38px;
}
.page-nursery .howto dd {
	font-size: 16px;
	margin-bottom: 25px;
}
.page-nursery .howto dd:last-child {
	margin-bottom: 0;
}
.page-nursery .bg-th {
	background-color: rgba(230, 230, 230, .2);
}
@media screen and (max-width: 767px) {
	.page-nursery .container:not(.container-nursery) {
		margin-right: 10px;
		margin-left: 10px;
		padding-bottom: 10px!important;
	}
	.page-nursery h2 {
		font-size: 18px;
		font-weight: bold;
		margin: 2em auto 1em!important;
	}
	.page-nursery h2.h2 {
		max-width: 300px;
		background-size: contain;
		background-image: url(../image/nursery/line_sp.svg);
	}
	.page-nursery .flex-box {
		margin-top: 0;
	}
	.page-nursery .flex-box>div {
		width: 100%;
	}
	.page-nursery .flex-box h3,
	.page-nursery .howto dt h3 {
		font-size: 15px;
		font-weight: bold;
		line-height: 1.26!important;
	}
	.page-nursery .flex-box h3 {
		padding-bottom: 20px;
		margin: 2em auto 1em!important;
		max-width: 300px;
		background-size: contain;
		background-image: url(../image/nursery/line_sp.svg);
	}
	.page-nursery img.normal {
		max-width: 100%;
	}
	.page-nursery p,
	.page-nursery .nursery-service li,
	.page-nursery .howto dd {
		font-size: 1.2rem;
		line-height: 1.86;
		letter-spacing: .12em;
	}
	.page-nursery .notice {
		font-size: 1.2rem;
		padding: 1em 0 0;
		font-size: 1rem;
	}
	img.hana {
		width :140px!important;
	}
	.page-nursery .howto dt picture {
		width: 25px;
	}
	.page-nursery .howto dt {
		padding-bottom: 1rem;
		margin-bottom: 1rem;
	}
	.page-nursery .howto dt h3 {
		width: calc( 100% - 25px );
	}
	.page-nursery .text-center {
		text-align: left!important;
	}
	.page-nursery #gmap {
		height: 195px;
	}
	.page-nursery .bg-th {
		background-color: #F6F6F6!important;
		padding: 1rem!important;
		font-size: 1.2rem;
	}
	.page-nursery .bg-gray0 {
		background-color: #FFF!important;
		font-size: 1.2rem;
	}
}

/* 被リンク-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------＊*/
#link-list {
	display: flex;
	flex-wrap: wrap;
}
#link-list > div {
	margin-bottom: 60px;
}
#link-list > div > a {
	min-height: 162px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	border: #666666 solid 1px;
	overflow: hidden;
}
#link-list > div > a img {
	width: 100%;
	
}
#link-list > div > p.txt {
	font-size: 12px;
	min-height: 7em;
}
#link-list > div > p.title {
	font-size: 16px;
	margin: 1.2rem 0;
	color: #a37a52 !important;
}
#link-list > div > p.title > a {
	text-decoration: underline;
}
@media screen and (max-width: 767px) {
	#link-list > div {
		margin-bottom: 3rem;
	}
	#link-list > div > a {
		min-height: 175px;
	}
	#link-list > div > p.txt {
		min-height: 0;
	}
}

/* よくある質問-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------＊*/
#qa {}
#qa .qa-body {

}
#qa .qa-body > div {
	counter-increment:questions;
}
#qa .qa-body > div .panel-title.questions::before {
	content: 'Q'counter(questions);
	background-color: #f0ad4e;
	display: inline;
	padding: .2em .6em .3em;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	border-radius: .25em;
	height: 21px;
	margin-right: .3em;
}

/* part -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------＊*/
.part-title-info {
	font-size: 14px;
	color: #323232;
	display: block;
}
.part-row-eq-height {

}
.part-row-eq-height > div p:not(.reimg) {
	min-height: 8.5em;
	font-size: 14px;
	letter-spacing: .095em;
}

/* part body -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------＊*/
.range-list {
	display:flex;
	width: 100%;
	margin-bottom: 1rem;
}
.range-title {
	width: 10%;
	text-align: left;
	font-size: 16px;
	border: 3px double #aaa;
	padding: 1.2rem 1rem;
	color: #666;
	font-weight: bold;
}
.range-table {
	width: 90%;
}
.range-list table {
	width: 100%;
}
.range-list table tr {
	border-bottom: 1px #FFF solid;
}
.range-list table th,
.range-list table td {
	padding: 1.2rem 1rem;
	color: #495057;
	font-size: 14px;
}
.range-list table th {
	background-color: #efebe9;
	width: 12em;
}
.range-list table td {
	background-color: #f8f9fa;
}
@media screen and (max-width: 767px) {

	.range-list {
		display:block;
	}
	.range-title {
		width: 100%;
		text-align: center;
	}
	.range-table {
		width: 100%;
	}
	.range-list table th {
		width: 7em;
	}
}

/* price -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------＊*/
ul.price-list {
	padding-left: 1.2em;
}
ul.price-list li {
	list-style: disc;
}
table.price-tbl {
	width: 100%;
	max-width: 100%;
	margin: 2em 0;
	table-layout:fixed
}
table.price-tbl th,
table.price-tbl td {
	padding: .5em .6em;
	line-height: 1.42857143;
	border: 1px solid #ddd;
	vertical-align: middle;
	text-align: center;
}
table.price-tbl th {
	background-color: #efebe9;
}
table.price-tbl td {
	background-color: #f8f9fa;
}

@media screen and (max-width: 767px) {

	table.price-tbl,
	table.price-tbl tbody,
	table.price-tbl tr {
		display : block;
		width: 100%;
	}
	table.price-tbl {
		border-bottom: 1px solid #ddd;
	}
	table.price-tbl thead {
		display: none;
	}
	table.price-tbl th,
	table.price-tbl td {
		display : block;
		width: 100%;
		border-bottom: 0;
	}
	table.price-tbl td {
		display: flex;
		flex-wrap: wrap;
		text-align: left;
		padding: 0;
	}
	table.price-tbl td:before {
		content: attr(data-label);
		display: block;
		font-weight: bold;
		width: 10em;
		padding: .5em .6em;
		background-color: #efebe9;
	}
	table.price-tbl td > span {
		display: block;
		width: calc( 100% - 10em );
		padding: .5em .6em;
	}
}

/* clinic -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------＊*/

#clinic-swiper > * {
	box-sizing: border-box;
}
#clinic-swiper h2,
#clinic-swiper h3 {
	word-wrap: break-word;
}
#clinic-swiper p {
	word-wrap: break-word;
}
#clinic-swiper .swiper-pagination-bullets {
	bottom: 0;
}
#clinic-swiper .swiper-pagination-bullet {
	width: 1em;
	height: 1em;
}
#clinic-swiper .swiper-pagination-bullet-active {
	background: #23282D;
}
#clinic-swiper .swiper-slide {
	padding: 0 0 4vh;
}
#clinic-swiper .swiper-slide picture {
	display: block;
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	object-fit: cover;
	overflow: hidden;
}
#clinic-swiper .swiper-slide picture img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#clinic-swiper .swiper-slide > div {
	padding: 0 1em;
}
#clinic-swiper .swiper-slide h3 {
	color: #a37a52;
	display: block;
	text-align: center;
	margin: .5em 0;
	line-height: 1.26;
	font-size: 16px;
}
#clinic-swiper .swiper-slide p {
	margin: 0;
}

#clinic-detail a:not(.btn):not(.a-btn) {
	text-decoration: underline;
}
#clinic-detail .section {
	margin: 0 0 6vh;
	padding: 0;
}
#clinic-detail .section p {
	margin-bottom: 2em;
	line-height: 1.8 !important;
}
#clinic-detail h2,
#clinic-detail h3 {
	margin-top: 0;
	margin-bottom: 3vh;
	font-weight: 700;
}
#clinic-detail h2.title {
	font-size: 16px;
	padding: 1.5rem 1em;
	text-align: center;
	background-color: #FFF3C3;
	margin: 0 -15px 3vh;
}

#most-infomation {
	padding: 3.2vw;
	border: #ff839d 2px solid;
}
#most-infomation h2 {
	margin: 0;
	margin-bottom: 0.6em;
	color: #e3275c;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
}
#most-infomation p {
	font-size: 1.5rem;
}
#most-infomation p.title {
	margin-bottom: 0.6em;
	color: #e3275c;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
}
#most-infomation li.important a {
	font-size: 1.6rem;
	font-weight: bold;
	color: #D2134D;
}
#clinic-detail .googlemap {
	margin-bottom: 1rem;
}
#clinic-detail .googlemap iframe {
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}
#clinic-detail dl.clinic-table {
	display: block;
	margin-bottom: 1rem;
}
#clinic-detail dl.clinic-table dt {
	background: #efebe9;
	padding: 1.5rem;
	font-weight: normal;
}
#clinic-detail dl.clinic-table dd {
	background: #f8f9fa;
	padding: 1.5rem;
	word-wrap: break-word;
}
#clinic-detail dl.clinic-table:last-of-type {
	margin-bottom: 3vh;
}
#clinic-detail dl.clinic-table dd span.small {
	color:#fa5252;
}


#clinic-detail .root {
	display: none;
}
#clinic-detail .root .row {
	display: block;
	margin: 0 0 1rem;
}
#clinic-detail .root .row > div {
	width: 100%;
}
#clinic-detail .root .row > div.rootimg {
	margin-bottom: 1rem;
}
#clinic-detail .root .row .rootimg picture {
	display: block;
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	object-fit: cover;
	overflow: hidden;
}
#clinic-detail .root .row .rootimg picture img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#clinic-detail h2.root-title {
	background-color: #776042;
	color: #FFF;
	position: relative;
	padding: 1.5rem 2em;
	cursor: pointer;
}
#clinic-detail h2.root-title::after {
	content: '\f13a';
	font-family: 'FontAwesome';
	position: absolute;
	right: 1em;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
#clinic-detail h2.root-title.active::after {
	content: '\f139';
}

#clinic-plan h3 {
	text-align: center;
	font-size: 18px;
}
#clinic-plan > div {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#clinic-plan .clinic-plan-flex {
	display: flex;
	flex-direction: column;
	width: 100%;
	margin-bottom: 4vh;
}
#clinic-plan .clinic-plan-flex h3 {
	font-size: 16px;
	margin-bottom: 1rem;
	padding-left: 1em;
	text-align: left;
}
#clinic-plan .clinic-plan-table {
	display: flex;
	width: 100%;
}
#clinic-plan .clinic-plan-table > dt {
	width: 5em;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 18px;
	background: #efebe9;
}
#clinic-plan .clinic-plan-table > dd {
	width: calc( 100% - 5em );
	padding: 1em 1.5em;
	font-size: 12px;
	background: #f8f9fa;
}
#clinic-plan .clinic-plan-table > dd > p {
	line-height: 1;
	margin-bottom: .3em;
}

#clinic-plan a.a-btn,
#clinic-nursery a.a-btn {
	border-radius: 0;
}

#clinic-intro h3 {
	color: #a37a52;
	font-size: 5.6vw;
}
#clinic-intro p.center {
	color: #e64980;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
}
#clinic-intro picture {
	display: block;
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	object-fit: cover;
	overflow: hidden;
	margin-bottom: 4vh;
}
#clinic-intro picture img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#clinic-promise .clinic-promise-box {
	padding: 0;
}
#clinic-promise .clinic-promise-box h3 {
	border: 0;
	padding: 0;
	color: #D81B60;
	font-size: 18px;
	text-indent: -1.5em;
	padding-left: 1.5em;
	margin-bottom: .5em;
}
#clinic-promise .clinic-promise-box h3:before {
	font-family: FontAwesome;
	padding-right: 8px;
	content: "\f00c";
}
#clinic-promise .clinic-promise-box dd {
	padding-left: 1.8em;
}

#clinic-detail dl.career-table {
	display: flex;
	margin-bottom: 1rem;
}
#clinic-detail dl.career-table dt {
	background: #a3daff;
	padding: 1.5rem 1rem;
	font-weight: normal;
	width: 8em;
	display: flex;
	align-items: center;
}
#clinic-detail dl.career-table dd {
	background: #e8f7ff;
	padding: 1.5rem;
	word-wrap: break-word;
	width: calc( 100% - 8em );
	display: flex;
	align-items: center;
}
#clinic-detail dl.career-table:last-of-type {
	margin-bottom: 0;
}

.head-doctor {
    display: flex;
    justify-content: center;
    align-items: center;
	flex-wrap: wrap;
	margin-bottom: 1rem;
}
.head-doctor > span {
    display: block;
	width: 100%;
	text-align: center;
}
.head-doctor > picture {
	display: inline!important;
}
.head-doctor > picture img {
	width: auto;
	height: 1.1em;
}

@media screen and (min-width: 768px) {

	#most-infomation {
		padding: 1.5vw;
	}
	#most-infomation p {
		text-align: center;
	}
	#clinic-swiper .swiper-slide h3 {
		font-size: 24px;
	}
	#clinic-detail a.a-btn {
		max-width: 350px;
		margin: 0 auto;
	}
	#clinic-detail h2.title {
		font-size: 18px;
		margin: 0 0 3vh;
	}
	#clinic-detail dl.clinic-table {
		display: flex;
	}
	#clinic-detail dl.clinic-table dt {
		width: 240px;
	}
	#clinic-detail dl.clinic-table dd {
		width: 710px;
	}
	#clinic-detail .root {
		display: block;
	}
	#clinic-detail .root .row {
		display: flex;
		margin: 0 0 1em;
	}
	#clinic-detail .root .row > div.rootimg {
		width: 30%;
		margin: 0;
	}
	#clinic-detail .root .row > div.roottxt {
		width: 70%;
		display: flex;
		align-items: center;
		padding-left: 2em;
	}
	#clinic-plan .clinic-plan-flex {
		width: calc( (100%/3) - 1rem );
	}
	#clinic-plan .clinic-plan-flex h3 {
		text-align: center;
		line-height: 1.2666;
		padding: 0;
	}
	#clinic-intro h3 {
		font-size: 24px;
		text-align: center;
	}
	#clinic-intro h4 {
		text-align: center;
		font-size: 16px;
		line-height: 1.6;
	}
	#clinic-promise .clinic-promise-box dd {
		padding-left: 0;
	}
	#clinic-career .name {
		height: 38px;
		margin-bottom: 1em;
	}
}


#clinic-neighborhood > div {
	display: block;
}
#clinic-neighborhood > div a {
	display: block;
	margin-bottom: 2rem;
	text-decoration: none!important;
}
#clinic-neighborhood > div a span {
	display: block;
	padding: .5rem 1rem;
	background: #efebe9;
	font-size: 16px;
}
#clinic-neighborhood > div dl.clinic-table {
	display: flex!important;
	margin-bottom: 0!important;
}
#clinic-neighborhood > div dl.clinic-table dt,
#clinic-neighborhood > div dl.clinic-table dd {
	padding: 1rem;
	font-size: 12px;
}
#clinic-neighborhood > div dl.clinic-table dt {
	width: 30%;
}
#clinic-neighborhood > div dl.clinic-table dd {
	width: 70%;
}
@media screen and (min-width: 768px) {
	#clinic-neighborhood > div {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-wrap: wrap;
	}
	#clinic-neighborhood > div a {
		width: calc( 50% - 10px );
	}
}

