@charset "UTF-8";

/*! destyle.css v2.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,:after,:before{box-sizing:border-box;border-style:solid;border-width:0}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0}main{display:block}h1,h2,h3,h4,h5,h6{font-size:inherit;line-height:inherit;font-weight:inherit;margin:0}address,blockquote,dl,figure,form,iframe,ol,p,pre,table,ul{margin:0}ol,ul{padding:0;list-style:none}dt{font-weight:700}dd{margin-left:0}hr{box-sizing:content-box;height:0;overflow:visible;border-top-width:1px;margin:0;clear:both;color:inherit}pre{font-family:monospace;font-size:inherit}address{font-style:inherit}a{background-color:transparent;text-decoration:none;color:inherit}abbr[title]{text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;font-size:inherit}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}embed,iframe,img,object{vertical-align:bottom}button,input,optgroup,select,textarea{-webkit-appearance:none;appearance:none;vertical-align:middle;color:inherit;font:inherit;background:transparent;padding:0;margin:0;outline:0;border-radius:0;text-align:inherit}[type=checkbox]{-webkit-appearance:checkbox;appearance:checkbox}[type=radio]{-webkit-appearance:radio;appearance:radio}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{cursor:pointer;-webkit-appearance:none;appearance:none}[type="button"][disabled],[type="reset"][disabled],[type="submit"][disabled],button[disabled]{cursor:default}[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}select::-ms-expand{display:none}fieldset,option{padding:0}fieldset{margin:0;min-width:0}legend{color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}label[for]{cursor:pointer}details{display:block}summary{display:list-item}[contenteditable]{outline:0}table{border-collapse:collapse;border-spacing:0}caption{text-align:left}td,th{vertical-align:top;padding:0}th{text-align:left;font-weight:700}[hidden],template{display:none}


html,body{
	padding:0;
	margin:0;
	font-family: 'Montserrat', 'Montserrat', "M PLUS 1p", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
	font-weight: 400;
	/*background: #fff;*/
	background: rgb(255,255,255);
	line-height: 1.8em;
	color: #000;
	position: relative;
}

/* Modaalガタつき対策 */
.privacypolicy {
    padding-right: 0px !important;
}

_:lang(x)::-ms-backdrop, body {
    font-family: "メイリオ", Meiryo, sans-serif;
}
.wf-notosansjapanese { font-family: "Noto Sans JP"; }


/* -------------------------------------
	Common
------------------------------------- */
.clear	{ clear: both;}
/* For modern browsers */
.clearfix:before, .clearfix:after {
	content:"";
	display:table;
}
.clearfix:after {
	clear:both;
}
/* For IE 6/7 (trigger hasLayout) */
.clearfix {
	zoom:1;
}
a {
	text-decoration: underline;
	color: #0d9ea1;
}
a:hover {
	text-decoration: underline;
	color: #ff8383;
}

a img:hover{
	opacity: .8;
	transition: 1s;
}


@media (min-width: 751px) {
	a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
	}
}

.pcnone {display: block!important;}
.spnone {display: none!important;}

@media print, screen and (min-width: 769px) {
	.pcnone {display: none!important;}
	.spnone {display: block!important;}
}


/* -------------------------------------
	index
------------------------------------- */

.btn.btn-outline-success {
	color: #27989a;
	border: 1px solid #27989a;
}
.btn.btn-outline-success:hover {
	background: #68c3c5;
	border-color: #27989a;
	color: #fff;
	text-decoration: none;
}
.btn.btn-outline-success:focus {
	box-shadow: 2px 2px 2px 1px rgb(39,152,154);
}
.btn.btn-outline-success:active {
	background: #27989a;
	border-color: #27989a;
	color: #fff;
}
.btn.btn-outline-success:disabled {
	color: #68c3c5;
	border-color: #68c3c5;
}


div#main {
	background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%222503px%22%20height%3D%223203px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(104%2C%20195%2C%20197)%22%20d%3D%22M0.141%2C-0.011%20C0.141%2C272.696%200.141%2C2873.929%200.141%2C3146.636%20C834.429%2C3341.689%201668.716%2C2951.583%202503.004%2C3146.636%20C2503.004%2C2873.929%202503.004%2C272.696%202503.004%2C-0.011%20L0.141%2C-0.011%20Z%22%2F%3E%3C%2Fsvg%3E') no-repeat center bottom,#e4fdfe;
	background-size: cover;
}
div#main .container .row {
	min-height: 530px;
	background: url('../img/mainimage.png') no-repeat right 10px bottom 20px, url('../img/main-bg.png') no-repeat left center;
	background-size: 55%, 200%;
}


div#main .container h1 {
	font-size: 2rem;
	line-height: 3rem;
	color: #fff;
	font-weight: 700;
  text-shadow:2px 2px 0 #27989a, -2px -2px 0 #27989a,
              -2px 2px 0 #27989a, 2px -2px 0 #27989a,
              0px 2px 0 #27989a,  0 -2px 0 #27989a,
              -2px 0 0 #27989a, 2px 0 0 #27989a;
	margin-top:230px;
}


@media screen and (min-width: 768px) and (max-width: 917px){
	div#main {
		background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%223090px%22%20height%3D%221261px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(104%2C%20195%2C%20197)%22%20d%3D%22M-0.000%2C0.000%20C-0.000%2C336.720%20-0.000%2C854.441%20-0.000%2C1191.161%20C1029.1000%2C1431.1000%202060.000%2C950.323%203090.000%2C1191.161%20C3090.000%2C854.441%203090.000%2C336.720%203090.000%2C0.000%20L-0.000%2C0.000%20Z%22%2F%3E%3C%2Fsvg%3E') no-repeat center bottom,#e4fdfe;
		background-size: cover;
	}
	div#main .container .row {
		min-height: 430px;
		background: url('../img/mainimage.png') no-repeat right top, url('../img/main-bg.png') no-repeat right center;
		background-size: 60%, 75%;
	}
	div#main .container h1 {
		margin-top:0;
	}	
}

@media print, screen and (min-width: 918px) {
	div#main {
		background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%223090px%22%20height%3D%221261px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(104%2C%20195%2C%20197)%22%20d%3D%22M-0.000%2C0.000%20C-0.000%2C336.720%20-0.000%2C854.441%20-0.000%2C1191.161%20C1029.1000%2C1431.1000%202060.000%2C950.323%203090.000%2C1191.161%20C3090.000%2C854.441%203090.000%2C336.720%203090.000%2C0.000%20L-0.000%2C0.000%20Z%22%2F%3E%3C%2Fsvg%3E') no-repeat center bottom,#e4fdfe;
		background-size: cover;
	}
	div#main .container .row {
		min-height: 630px;
		background: url('../img/mainimage.png') no-repeat right top, url('../img/main-bg.png') no-repeat right center;
		background-size: 60%, 75%;
	}
	div#main .container h1 {
		margin-top:0;
	}
}
@media screen and (max-width: 320px) {
	div#main .container h1 {
		font-size: 1.5rem;
		line-height: 1.8rem;
		margin-top: 250px;
	}
	div#main .container .row {
		min-height: 430px;
	}
}
@media print, screen and (min-width: 1400px) {
	div#main .container .row {
		min-height: 630px;
		background: url('../img/mainimage.png') no-repeat right top, url('../img/main-bg.png') no-repeat right center;
		background-size: 50%, 75%;
	}
}
.index-about {
	background: #e4fdfe;
	padding: 30px 0 70px 0;
}
.index-about h2 {
	font-size: 2rem;
	padding: 2rem 0;
	font-weight: 700;
		line-height: 3rem
}
@media print, screen and (min-width: 769px) {
	.index-about h2 {
		font-size: 3rem;
		line-height: 3.5rem
	}
}
.index-about img.index-img01 {
	width: 174px;
}
.index-about img.index-img02 {
	width: 185px;
}

.index-about .text-usage {
	font-size: 1.2rem;
	font-weight: 700;
	color: #68c3c5;
	line-height: 2rem;
	padding-bottom: .5rem;
}

dl.price-table {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	border-left: 1px solid #68c3c5;
	border-bottom: 1px solid #68c3c5;
}
dl.price-table dt {
	width: 40%;
	background: #c9eeef;
	font-weight: 400;
	border-top: 1px solid #68c3c5;
	line-height: 1rem;
	font-size: 1rem;
	padding:30px 5px;
	margin:0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
dl.price-table dd {
	width: 60%;
	background: #fff;
	border-right: 1px solid #68c3c5;
	border-top: 1px solid #68c3c5;
	line-height: 1rem;
	font-size: 1rem;
	padding:20px 5px;
	margin:0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
@media print, screen and (min-width: 769px) {
	dl.price-table dt {
		width: 20%;
	}
	dl.price-table dd {
		width: 30%;
	}
}
.index-love .container {
	margin-top: 50px;
}

.index-love img.index-img07 {
	width: 281px;
}
.index-love img.index-img08 {
	width: 350px;
}

.index-love h2 {
  position: relative;
  display: inline-block;
  padding: 0 2.5rem;
  text-align: center;
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
}

.index-love h2:before,
.index-love h2:after {
  line-height: 1;
  position: absolute;
  top: calc(50% - 1.6rem);
}

.index-love h2:before {
  left: 0;
  content: '';
  width:3rem;
  height:2rem;
  background:url('../img/midashi01-01s.png') no-repeat center right;
  background-size: contain;
}

.index-love h2:after {
  right: 0;
  content:'';
  width:3rem;
  height:2rem;
  background:url('../img/midashi01-02s.png') no-repeat center left;
  background-size: contain;
}

@media print, screen and (min-width: 768px) {
	.index-love h2 {
	position: relative;
	display: inline-block;
	padding: 0 1rem;
	text-align: center;
	width: 100%;
	font-size: 1.8rem;
	font-weight: 700;
	}
	.index-love h2:before,
	.index-love h2:after {
	line-height: 1;
	position: absolute;
	top: calc(50% - 1.8rem);
	}
	.index-love h2:before {
	left: 0;
	content: '';
	width:calc(50% - 13rem);
	height:50px;
	background:url('../img/midashi01-01.png') no-repeat center right;
	background-size: contain;
	}
	
	.index-love h2:after {
	right: 0;
	content:'';
	width:calc(50% - 13rem);
	height:50px;
	background:url('../img/midashi01-02.png') no-repeat center left;
	background-size: contain;
	}

}

.index-flow .container {
	background: url('../img/midashi02.png') no-repeat center top;
	background-size: contain;
	margin-top: 70px;
}
.index-flow .container h2 {
  padding: 6rem 0 1rem;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
}

.index-flow ol {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
}
 
.index-flow ol li {
  margin-bottom: 50px;
  padding-left: 38px;
  position: relative;
}
.index-flow ol li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #68c3c5;
  color: #fff;
  display: block;
  float: left;
  line-height: 30px;
  margin-left: -38px;
  text-align: center;
  height: 30px;
  width: 30px;
  border-radius: 50%;
  font-weight: 700;
}
.dental-clinic {
	background: #fef8e4;
	border-radius: 15px;
	padding:30px 30px;
}
@media print, screen and (min-width: 769px) {
	.dental-clinic {
		padding:30px 100px;
	}
}
.dental-clinic .btn-danger {
	padding: 15px 0;
	border-radius: 15px;
}

footer {
	background: #000;
	color: #fff;
  z-index: 2;
}
footer a {
	color: #fff;
	text-decoration: none;
}
.img-contact {
	width: 113px;
}

#page-top a{
  display: flex;
  justify-content:center;
  align-items:center;
  width: 76px;
  height: 177px;
  transition:all 0.3s;
}
@media print, screen and (min-width: 769px) {
	#page-top a{
	width: 113px;
	height: 265px;
	}
}
/*リンクを右下に固定*/
#page-top {
  position: fixed;
  right: 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);
  }
}


#subtitle {
}


div#subtitle {
	background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%223090px%22%20height%3D%221261px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(104%2C%20195%2C%20197)%22%20d%3D%22M-0.000%2C0.000%20C-0.000%2C336.720%20-0.000%2C854.441%20-0.000%2C1191.161%20C1029.1000%2C1431.1000%202060.000%2C950.323%203090.000%2C1191.161%20C3090.000%2C854.441%203090.000%2C336.720%203090.000%2C0.000%20L-0.000%2C0.000%20Z%22%2F%3E%3C%2Fsvg%3E') no-repeat center bottom,#fff;
	background-size: cover;
}
div#subtitle .container .row {
	min-height: 200px;

}
div#subtitle .container h1 {
	font-size: 2rem;
	line-height: 3rem;
	color: #fff;
	font-weight: 700;
  text-shadow:2px 2px 0 #68c3c5, -2px -2px 0 #68c3c5,
              -2px 2px 0 #68c3c5, 2px -2px 0 #68c3c5,
              0px 2px 0 #68c3c5,  0 -2px 0 #68c3c5,
              -2px 0 0 #68c3c5, 2px 0 0 #68c3c5;
}

.gmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
}
.gmap iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

.main-title {
	display:flex;
	align-items:center;
	justify-content:start;
}
.main-title .p-name {
	font-size:2.5rem;
	line-height:2.5rem;
	font-weight:700;
	color:#fff;
	display:block;
	width:50%;
	  text-shadow:2px 2px 0 #27989a, -2px -2px 0 #27989a,
              -2px 2px 0 #27989a, 2px -2px 0 #27989a,
              0px 2px 0 #27989a,  0 -2px 0 #27989a,
              -2px 0 0 #27989a, 2px 0 0 #27989a;
}
@media print, screen and (min-width: 769px) {
	.main-title .p-name {
		font-size:3.3rem;
		line-height:3.3rem;

	}
}
#main p {
	color: #fff;
	  text-shadow:2px 2px 0 #27989a, -2px -2px 0 #27989a,
              -2px 2px 0 #27989a, 2px -2px 0 #27989a,
              0px 2px 0 #27989a,  0 -2px 0 #27989a,
              -2px 0 0 #27989a, 2px 0 0 #27989a;
			  margin-top: 1rem;
			  font-size: 1.2rem;
}

.arrow_box {
	position: relative;
	background: #fffac2;
	border: 2px solid #27989a;
	color: #c00;
	text-align: center;
	font-weight: bold;
	padding: 7px 0;
	font-size: 1.1rem;
	border-radius: 7px;
	width: 8rem;
	margin-left: 10px;
}
.arrow_box:after, .arrow_box:before {
	right: 100%;
	top: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.arrow_box:after {
	border-color: rgba(255, 250, 194, 0);
	border-right-color: #fffac2;
	border-width: 10px;
	margin-top: -10px;
}
.arrow_box:before {
	border-color: rgba(39, 152, 154, 0);
	border-right-color: #27989a;
	border-width: 13px;
	margin-top: -13px;
}

.marker {
	background:linear-gradient(transparent 50%, #ff6 50%);
}

dl.form-table dt {
	margin: 1rem 0 .5rem;
}
dl.form-table dd {
	margin: 0 0 1rem;
}
dl.form-table dd select {
	margin: 0 0 .5rem;
}
@media print, screen and (min-width: 769px) {
	dl.form-table dt,
	dl.form-table dd {
		margin: 1rem 0;
	}
}

.image_circle {
  width: 180px;
  height:180px;
  border-radius:50%;
  background: url("../img/img-jh.jpg") center center no-repeat;
  background-size: cover;
  margin: auto;
}
.clinic-list table th,
.clinic-list table td {
	display:block;
	width: 100%;
}

@media print, screen and (min-width: 769px) {
	.clinic-list table th {
		display:table-cell;
		width: 8rem;
	}
	.clinic-list table td {
		display:table-cell;
		width: calc(100% - 8rem);
	}
}