@charset "utf-8";
/*
Theme Name: Dentrance Responsive
Description: 株式会社デントランス レスポンシブテーマ 2018
Author: ShinoB's Factory
Version: 1.0.0
*/


/*//////////// モバイルファースト ///////////////////////////////////////////////////////////////////////////*/
/*================================

body

=================================*/
/* 固定ページwrap */
#pageWrap {
  margin: 1em .5em;
}
#mainWrap {
  margin: 1em 0 0;
}
/* 画像を右側に配置 */
.flexImg {
  margin-bottom: .4em;
}
.flexImg img {
  width: 100%;
}
/* 画像を横２列に配置 */
.flexImg02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.flexImg02 figure, .flexImg02 p {
  width: 100%;
  padding: 0 0 0 0em;
}
.flexImg02 img {
  margin-bottom: .4em;
  width:100%;
}







/* 固定ページ見出し */
.entry-header {
  border: 0;
  margin-right: calc(50% - 50vw); /* breaking-out */
  margin-left: calc(50% - 50vw); /* breaking-out */
  margin-top: -1em;
  background:#0098a5;
 
  padding: 20px 15px;
box-sizing: border-box;
margin-bottom:20px;
}
/* シングルページ見出し */
.entry-header-single {
  border: 0;
  margin: 0 0 1em 0;
  background-color: #47402e !important;
  border-radius: 12px;
  padding: 16px;
	background-image: none;
	 color: #fff;
}
.entry-header-single h1.entry-title {
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.2;
font-weight:600;

	
}
/* 共通見出し */
h1.entry-title {
  font-size: 2.3rem;
  font-weight: normal;
  line-height: 1.2;
color: #fff;
font-weight:600;
	font-family: 'Zen Maru Gothic', serif !important;
}
.entry-header p {
  line-height: 1.2;
  font-size: 1.2rem;
  margin: 0;
  padding: 10px 0 0 0;
color: #fff;

}
#mainWrap main h2 {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.2;
  margin: .4em 0 .6em;
  position: relative;
	text-align: left !important;
	font-family: 'Zen Maru Gothic', serif !important;
}
#mainWrap main h2:after {
  content: "";
  display: block;
  height: 4px;
  background-image: linear-gradient(to right, #0098a5, #0098a5);
	
  margin-top: .2em;
}
#mainWrap main h2:first-of-type {
  margin: .4em 0 .6em;
}
#mainWrap main h3 {
  font-size: 1.6rem;
  line-height: 1.2;
  position: relative;
  color: #fff;
  padding: .5em .5em .5em 1em;
  margin: .6em 0;
  background-color: #0098a5;
  border-radius: 4px;
font-family: 'Zen Maru Gothic', serif !important;
font-weight: 600;
}
#mainWrap main h3::after {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: '';
  width: .6em;
  height: .2em;
  border-radius: 0 2px 2px 0;
  background-color: #fefefe;
}
#mainWrap main h4 {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.4;
  margin: .1em 0 .6em ;
  border-bottom: 3px dotted #0098a5;
padding-bottom:5px;
}
/* 背景MAX用 */
section {
  position: relative;
}
section::before, section::after {
  position: absolute;
  content: '';
  pointer-events: none;
}
/* 背景MAX下三角 */
.ss-style-triangles::after {
  left: 50%;
  width: 40px;
  height: 40px;
  -webkit-transform: translateX(-50%) rotate(45deg);
  transform: translateX(-50%) rotate(45deg);
}
.ss-style-triangles::after {
  bottom: -20px;
  z-index: 10;
  background: inherit;
}
/* 背景MAX上下半円 */
.ss-style-halfcircle::before, .ss-style-halfcircle::after {
  left: 50%;
  z-index: 10;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: inherit;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.ss-style-halfcircle::before {
  top: -30px;
}
.ss-style-halfcircle::after {
  bottom: -30px;
}
/* 背景MAX上半円 */
.ss-style-halfcircleTop::before {
  left: 50%;
  z-index: 10;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: inherit;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.ss-style-halfcircleTop::before {
  top: -30px;
}
.bgSec01 {
  padding: 2rem 0 3rem;
  margin: 0 0 4rem 0;
}
.bgSec02 {
  padding: 4rem 0;
  margin: 4rem 0;
}
/* 背景MAXカラーパターン */
.bgColor01 {
  background-color: #fec7d1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%23ffffff' fill-opacity='0.3' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");
}
.bgColor02 {
  background-color: #0098a5;
}
.bgColor03 {
  background-color: #0098a5;
}
/*================================

header

=================================*/
header {
 background-image: linear-gradient(180deg, rgba(220, 240, 240, 1), rgba(255, 255, 255, 1));
}

#headerWrap {
  max-width: 960px;
  margin: 0 auto;
  padding: 6px 5px 5px;
  display: flex;
  justify-content: space-between;
}
#header h1 {
  font-size: 10px !important;
	width: auto;
	padding: 0;
	margin: 0 auto 0 7px;
	padding-top:10px;
}
#headerWrap p {
  flex-basis: 49%;
  align-self: center;
	margin: 0;
	padding: 0;
}
#headerWrap .tel {
  flex-basis: 49%;
  align-self: center;
}
/* ヘッダーオファー */
#headerOffer {
  display: none;
}
/*================================

topSec04 選ばれる理由

=================================*/
.top-reasonttl {
  display: block;
  margin: 0 auto;
}
.top-reason {
  background: #fefefe;
  margin: 0 0 1em 0;
  padding: .5em;
  border-radius: 0 0 6px 6px;
}
.top-reason h3 {
  color: #0098a5;
  margin-bottom: .8em;
  padding-bottom: .2em;
  border-bottom: 2px #0098a5 dotted;
}
/* 選ばれる理由ページ*/
.reasonNum {
  background-color: #0098a5;
  border-radius: 0 12px 12px 0;
  color: #fefefe;
  display: inline-block;
  font-weight: 600;
  padding: 2px 20px 4px 12px;
  margin-top: .6em;
  border-left: .6em #0069a6 solid;
}
/*================================

topSec05 診療メニュー

=================================*/
.topMenuBg {
  display: block;
  width: 100%;
  background-color: #ed972e;
  border-radius: 20px;
  margin: 80px 0 20px;
  text-align: center;
  padding: 30px 20px 20px;
}
.topMenuBg img {
		width: 70%;
	}
.topMenu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
/* メニューボタン*/
.buttonTopMenu {
  background: #ed972e;
  border: 1px #fff solid;
  border-radius: 2px;
  color: #fff;
  display: inline-block;
  padding: 0.5em 1em;
  margin: 3px;
  text-decoration: none!important;
  text-align: center;
  position: relative;
  overflow: hidden;
  -moz-transition: 0.7s;
  -o-transition: 0.7s;
  -webkit-transition: 0.7s;
  transition: 0.7s;
  width: 100%;
 display: flex;
  justify-content: center;
  align-items: center;
}
.buttonTopMenu:before {
  content: "";
  position: absolute;
  bottom: -90px;
  right: -90px;
  width: 10px;
  height: 10px;
  background: #fff;
  border-radius: 50%;
  -moz-transition: 0.7s;
  -o-transition: 0.7s;
  -webkit-transition: 0.7s;
  transition: 0.7s;
}
.buttonTopMenu span {
  position: relative;
}
.topMenu a {
  color: #fff;
  
}
/*================================

topSec06 院長スタッフ紹介

=================================*/
.profile {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.career {
  flex-basis: 62%;
  font-size: 1.2rem;
}
.profileSub {
  font-size: 1rem;
}
.career dl dt {
  font-weight: 600;
}
.career dl dd {
  border-bottom: 1px #ccc dotted;
  padding-bottom: .4em;
  margin-bottom: .6em;
}
.doctor {
  flex-basis: 36%;
  text-align: right;
}
.massage {
  background-color: #fff;

  margin-top: 1em;
  padding: 1em;
}
.massage p:last-child {
  margin: 0;
  padding: 0;
}

/*================================

topSec07 医院案内アクセス

=================================*/
.google-iframeWrap {
  padding-bottom: 52.1%;
}
.access {
  background-color: #fefefe;
  border: 2px #0098a5 solid;
  border-radius: 12px;
  margin: 1em 0;
  padding: 1em;
}
.accessLogo {
  width: 84%;
  margin: 0 auto;
  text-align: center;
}
.topAccess {
  list-style: none;
  margin-top: .5em;
  font-size: 1.3rem;
}
.topAccess li {
  position: relative;
  padding: 0 0 .5em 1em;
  line-height: 1.3;
}
.topAccess .root01:before {
  content: "\e534";
  font-family: "icomoon";
  color: #0098a5;
  position: absolute;
  left: 0;
  top: 0;
}
.topAccess .root02:before {
  content: "\f288";
  font-family: "icomoon";
  color: #0098a5;
  position: absolute;
  left: 0;
  top: 0;
}
.topAccess .adress:before {
  content: "\e8b4";
  font-family: "icomoon";
  color: #0098a5;
  position: absolute;
  left: 0;
  top: 0;
}
/*================================

topSec08 よくある質問と答え

=================================*/
a.topFaq {
  display: block;
  width: 94%;
  margin: 2em auto;
  text-align: center;
  border-radius: 50px;
  background-color: #0ad19f;
  padding: .7em;
  color: #fefefe;
  text-decoration: none;
}
.topFaq:before {
  content: "\f086";
  font-family: "icomoon";
  color: #fefefe;
}
/* よくある質問ページ */
.faq {
  margin-top: 1.4em;
}
.faq dt {
  background-color: #0098a5;
  color: #fff;
  font-size: 1.1em;
  line-height: 1.3em;
  padding: .8em;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
}
.faq dd {
  border-width: 0 1px 1px;
  border-style: none solid solid;
  border-color: #0098a5;
  background-color: #fefefe;
  margin-bottom: 1em;
  padding: .8em;
	border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
}
.faq img {
  border-radius: 10px;
  margin: 0 0 .5em 0em;
}
.faq figure {
margin:0;
padding:0;
}
.faq img {
margin:0;
padding:0;
}
.faq p {
  margin-bottom: 1.6rem;
}
.faq dd p:last-child {
  margin-bottom: 0;
}
/*================================

response 診療スケジュール レスポンス

=================================*/
.topResponse {
  border-radius: 12px;
  margin-bottom: 1em;
  padding: 1em;
}
.responseFlex {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
/* スケジュール左 */
.schedTxt {
  flex-basis: 100%;
}
.responseTel {
  display: none;
}
.sched {
  width: 100%;
  background-color: #fff;
  margin: 0 auto;
  border-radius: 6px;
  display: flex;
  justify-content: space-between;
  font-size: 1.3rem;
  padding: 1em 1.6em .8em 1.6em;
  text-align: center;
}
.time {
  flex-basis: 30%;
  white-space: nowrap;
  border-right: 1px #ccc dashed;
  text-align: left;
}
.timeSub {
  font-size: 1.2rem;
  line-height: 1.4;
  text-align: right;
  margin: .4em;

}
/* スケジュール右イメージ */
.schedImage {
  flex-basis: 0%;
}
/* 問い合わせボタン */
a.responseMail {
  display: block;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  background-color: #f3ac02;
  padding: .7em;
  color: #fefefe;
  text-decoration: none;
}

/* 診療表オン・オフ */
.schedOn {
  color: #f3ac02;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.schedOff {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
/*================================

aside サイドナビゲーション

=================================*/
#menuWrap {
  display: none;
}
#bnrList {
  display: none;
  display: none;
  flex-wrap: wrap;
  justify-content: space-around;
  margin: 1em 0 0 0;
}
#bnrList li {
  width: calc(50% - 10px);
  align-items: center;
  justify-content: space-between;
}
/*================================

footer フッター

=================================*/
/* PCフッターメニュー非表示 */
footer {
  display: none;
}
#footerOffer {
  margin: 0;
  background-color: #d7eaf7;
}
/* スマホ下部固定メニューバー */
.bottomMENU {
	width: 100%;
	position: fixed;
  bottom: 0px;
  z-index: 99;
	width: 100%;
	background-color: #0098a5;
}

#fixSp {
  
  display: flex;
  justify-content: space-between;
  
  
}
#fixSp div {
  border-top: 1px #fff solid;
  border-right: 1px #fff solid;
  color: #fefefe;
  flex: 1 1 25%;
  font-size: 1.2rem;
  line-height: 1;
  padding: 3px 0 5px 0;
  text-align: center;
letter-spacing:0;
}
#fixSp div:last-child {
  border-right: none;
}
#fixSp a {
  color: #fefefe;
  text-decoration: none;
}
#fixSp i {
  font-size:2rem;
margin-bottom:5px;
margin-top:10px;
}

.bottomINFO {
	background: #0098a5;
	width: 100% !important;
	text-align: center;
	color:#fff;
font-size: 1.3rem;
}
.menu01 {
	background: #386c4e !important;
}
.menu02 {
	background: #388bc6 !important;
}

.menu03 {
	background: #ed972e !important;
}

.menu04 {
	background: #e77b92 !important;
}

/* コピーライト */
#copy {
  font-size: 1.2rem;
  text-align: center;
  padding: 14px 0 74px 0;
  background: #0098a5;
  color: #fff;

}
/*================================

ContactForm7カスタマイズ

=================================*/
/* 入力部分 */
.wpcf7 select, input[type="email"], input[type="text"], input[type="date"], input[type="tel"], textarea {
  width: 100%;
  font-size: 100%;
  padding: 0.5em;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.formTitle {
  display: flex;
  align-items: center;
  margin-bottom: .4em;
}
.formOption {
  width: 100%;
  display: flex;
  margin-bottom: 14px;
}
.formDay {
  white-space: nowrap;
  width: 22%;
  margin-right: 8%;
}
.formTime {
  white-space: nowrap;
  width: 28%;
}
.formRequired {
  margin-left: 10px;
  padding: 1px 6px 2px;
  font-size: 70%;
  vertical-align: middle;
  background: #DC3437;
  color: #fff;
  border-radius: 4px;
}
/* 送信ボタン */
.wpcf7 input[type="submit"] {
  width: 100%;
  font-size: 18px;
  margin: 0 auto;
  text-align: center;
  text-decoration: none;
  color: #ffffff;
  background: #ed972e;
  padding: .8em;
  border-radius: 4px;
  border: 0;
margin-top:20px;
}
.wpcf7 input[type="submit"]:hover {
  background: #ff9696;
}
.wpcf7-submit {
  cursor: pointer;
}
.wpcf7-mail-sent-ok {
  display: none !important;
}
/* CF7チェックボックスとラジオボタンを縦並びに */
span.wpcf7-list-item {
margin-top:5px;
display: block;
}
/*================================

投稿カテゴリー一覧ページ

=================================*/
.page-ymd {
  background-color: #bbb;
  border-radius: 4px;
  color: #fefefe;
  font-size: .7em;
  letter-spacing: .2em;
  padding: .1em .6em;
}
/*================================

スマホナビページ

=================================*/
.menusp {
  padding-bottom: 70px;
}
.menusp h3 {
  background-color: #0098a5;
  border-radius: 3px;
  color: #fff;
  padding: .6em .8em .4em;
}
.menusp ul {
  padding: .4em .8em 0;
}
.menusp ul li a {
  text-decoration: none;
  display: block;
color:#66584d;
}
/*================================

SNSシェアボタン

=================================*/
#twitter {
  background-color: #55acee;
}
#facebook {
  background-color: #3b5998;
}
#line {
  background-color: #00b900;
}
.sns-area {
  width: 100%;
  margin: 1em auto;
  display: block;
}
.sns-area a {
  text-decoration: none;
}
.sns-share {
  float: left;
  width: 32.3%;
  margin: 0 0.5% 1em 0.5%;
  display: inline-block;
}
.sns-link {
  display: block;
  text-align: center;
  color: #fff !important;
  font-size: 1.2rem;
  padding: 10px 0;
  box-sizing: border-box;
  border-radius: 4px;
}
/*================================

PCのみ<br class="pcBr">で改行

=================================*/
.pcBr {
  display: none;
}

@media screen and ( min-width : 420px ) {
/*//////////// ４２０ｐｘ以上からのデザイン /////////////////////////////////////////////////////////////////*/

/*================================

body

=================================*/
/* 固定ページ画像配置調整 */
.flexImg {
  float: right;
  margin-left: .4em;
  width: 180px;
}
/* 画像を横２列に配置 */
.flexImg02 {
  flex-wrap: nowrap;
  justify-content: space-between;
}
.flexImg02 figure, .flexImg02 p {
  width: 100%;
  padding: 0 0 0 0em;
}
.flexImg02 figure img {
  width: 100%;
height:auto;
}
/* 固定ページ見出し */
.entry-header {
  margin: 0 0 1em 0;
  width: 100%;
  height: 150px;
  background-size: cover;
  padding: 20px;
  border-bottom: 1px #ccc solid;
 border-top: 1px #ccc solid;
}
/* 共通ページ見出し */
h1.entry-title {
  font-size: 3rem;
  font-weight: 500;
  color: #312819;
font-weight: 600;
	font-family: 'Zen Maru Gothic', serif !important;
}
.entry-header p {
  font-size: 1.4rem;
  color: #888;
  margin: 0;
  padding: 10px 0 0 0;
}










/*================================

header

=================================*/
header {
  width: 100%;
}
}

@media screen and ( min-width : 769px ) {
/*//////////// ７６８ｐｘ以上からのデザイン ///////////////////////////////////////////////////////////////////////////*/



/*================================

body

=================================*/
/* 固定ページwrap */
#pageWrap {
  margin: 1em .5em;
}
#mainWrap {
  margin: 1em auto;
}
/* 固定ページ画像配置調整 */
.flexImg {
  float: right;
  margin-left: .4em;
  width: 200px;
}
/* 画像を横２列に配置 */
.flexImg02 {
  justify-content: space-between;
}
/* シングルページ見出し */
.entry-header-single {
  margin: 0 0 1em 0;
  background-color: #fa9402;
  border-radius: 12px;
  padding: 16px;
}
.entry-header-single h1.entry-title {
  font-size: 3rem;
  font-weight: 500;
}
.entry-header p {
  font-size: 1.5rem;
  line-height: 1.4;
  color: #888;
  width: 400px;
}
#mainWrap main h2 {
  font-size: 2.6rem;
  font-weight: 600;
	line-height: 140%;
	text-align: center;
}
#mainWrap main h3 {
  font-size: 2.1rem;
  font-weight: 600;
  padding: .5em .5em .5em 1.2em;
}
#mainWrap main h4 {
  font-size: 1.9rem;
  font-weight: 600;
}
/* 背景MAX下三角 */
.ss-style-triangles::after {
  width: 100px;
  height: 100px;
}
.ss-style-triangles::after {
  bottom: -40px;
  background: inherit;
}
/* 背景MAX上下半円 */
.ss-style-halfcircle::before, .ss-style-halfcircle::after {
  width: 100px;
  height: 100px;
}
.ss-style-halfcircle::before {
  top: -40px;
}
.ss-style-halfcircle::after {
  bottom: -40px;
}
/* 背景MAX上半円 */
.ss-style-halfcircleTop::before {
  width: 100px;
  height: 100px;
}
.ss-style-halfcircleTop::before {
  top: -40px;
}
/* 背景MAXカラーパターン＆スペース */
.bgSec01 {
  padding: 5rem 0 8rem;
  margin: 0 0 9rem;
}
.bgSec02 {
  padding: 7rem 0 5rem;
  margin: 8rem 0;
}
.bgSec03 {
  padding: 8rem 0 2rem;
  margin: 8rem 0 0;
}
/*================================

header

=================================*/
#headerWrap {
  max-width: 960px;
  padding: 10px 5px;
}
#header h1 {
  font-size: 14px !important;
	width: auto;
	padding: 0;
	margin: 0 auto 0 10px;
	padding-top:10px;
	font-weight: normal;
}
#headerWrap p {
  width: 480px;
  flex-basis: 50%;
		margin: 0;
	padding: 0;
  height: 0;
  padding-bottom: 7.8125%; /* アスペクト比 元画像の高さ÷画像の幅×100 */
  background: url(../img/header/logo_pc.png) top 0px center no-repeat;
  background-size: contain;
	
}
#headerWrap p img {
  display: none;
}
#headerWrap .tel {
  width: 390px;
  flex-basis: 50%;
}
#headerWrap .tel img {
  display: none;
  
}

/* ヘッダーオファー */
#headerOffer {
  display: block;
}
/*================================

topSec04 選ばれる理由

=================================*/
.top-reason {
  margin: 0 0 2em 0;
  padding: 1em 3em 2em;
  border-radius: 0 0 20px 20px;
  ;
}
.top-reason h3 {
  font-size: 2.6rem;
  margin-bottom: .8em;
}
/*================================

topSec05 診療メニュー

=================================*/
.topMenuBg {
  display: block;
  width: 100%;
  background-color: #0098a5;
  border-radius: 20px;
  margin: 80px 0 60px;
  text-align: center;
  padding: 30px 40px 40px;
}
	.topMenuBg img {
		width: 30%;
	}
.topMenu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
/* メニューボタン*/
.buttonTopMenu {
  background: #0098a5;
  border: 2px #fff solid;
  border-radius: 2px;
  color: #47a8b6;
  display: inline-block;
  padding: 2em 1em;
  margin: 10px;
  text-decoration: none!important;
  text-align: center;
  position: relative;
  overflow: hidden;
  -moz-transition: 0.7s;
  -o-transition: 0.7s;
  -webkit-transition: 0.7s;
  transition: 0.7s;
  width: 30%;
 display: flex;
  justify-content: center;
  align-items: center;
}
.buttonTopMenu:before {
  content: "";
  position: absolute;
  bottom: -90px;
  right: -90px;
  width: 10px;
  height: 10px;
  background: #fff;
  border-radius: 50%;
  -moz-transition: 0.7s;
  -o-transition: 0.7s;
  -webkit-transition: 0.7s;
  transition: 0.7s;
}
.buttonTopMenu span {
  position: relative;
}


/*================================

topSec06 院長スタッフ紹介

=================================*/
.profile {
  max-width: 960px;
}
.profileSub {
  font-size: 1.4rem;
}
.career dl dt {
  clear: both;
  float: left;
  font-weight: 600;
}
.career dl dd {
  padding-left: 36%;
}
/*================================

topSec07 医院案内アクセス

=================================*/
.google-iframeWrap {
  padding-bottom: 36.46%;
}
.access {
  max-width: 960px;
  padding: 1.5em 1em;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.accessLogo {
  width: 50%;
  margin-right: auto;
}
.topAccess {
  width: 50%;
  margin-top: 0;
  font-size: 1.5rem;
}
.topAccess li {
  position: relative;
  padding: 0 0 .5em 1.4em;
  line-height: 1.4;
}
/*================================

topSec08 よくある質問と答え

=================================*/
a.topFaq {
  transition: .5s;
  width: 50%;
  padding: 1.4em;
  font-size: 1.8rem;
  font-weight: 600;
}
.topFaq:hover {
  background-color: #00e0a8;
}
/* よくある質問ページ */
.faq dt {
  padding: 1em;
}
.faq dd {
  padding: 1em;
}
.faq img {
  border-radius: 12px;
  margin: 0 0 1em 0em;
}
/*================================

response レスポンス

=================================*/
.topResponseBg {
  background: url(../img/common/bg03.webp) no-repeat;
	background-attachment: fixed;
	background-size: cover;
	background-position: center top;
	padding: 30px 0 30px 0;
}
.topResponse {
  margin: 1em 0;
  padding: 0;
}
	

	
	
	
	
	
	
	
/* スケジュール左表 */
.schedTxt {
  flex-basis: 60%;
}
.responseTel {
  display: block;
}
.sched {
  justify-content: space-around;
  font-size: 1.6rem;
  padding: 1em 1.6em;
}
.timeSub {
  color: #555;
  font-size: 1.5rem;
  line-height: 1.5;
  margin: .6em;
}
/* スケジュール右イメージ */
.schedImage {
  display: block;
  flex-basis: 38%;
  background-size: contain;
}
/* 問い合わせボタン */
a.responseMail {
  transition: .5s;
  padding: 1.4em;
  font-size: 1.7rem;
  font-weight: 600;

	padding: 1em;
	border-radius: 5px;
}
.responseMail:hover {
  background-color: #0098a5;
}
/*================================

aside サイドナビゲーション

=================================*/
#asideNavi {
  display: block;
}
#asideNavi ul a {
   color: #555;
  text-decoration: none;
}
#asideNavi ul a:hover {
   color: #baac9e;
}
#menuWrap {
  display: block;
  background-image: linear-gradient(180deg, rgba(220, 240, 240, 1), rgba(255, 255, 255, 1));
border-radius: 5px;
}
.menuList {
  display: block;
  padding: 15px 10px;
  list-style-position: inside;
}
.menuList li {
  line-height: 1.2;
  padding: .6em 0 .6em .6em;
border-bottom:1px dotted #978d83;
	font-size: 1.5rem;
}
.menuList li:first-child {
  padding: 0;
	border-bottom:2px solid #0098a5;
	margin-bottom: 10px;
	
}
.menuList li h3 {
  font-size: 1.8rem;
  font-weight: 600;
  padding: 0px;
margin-bottom:0px;
color:#0098a5;
	
}
.menuList li span {
  color: #626262;
  display: block;
  font-size: 1.2rem;
  line-height: 1;
  padding-top: .2em;
}
#bnrList {
  display: block;

}
#bnrList li {
  width: 100%;
  margin-bottom:5px;
}
.menuList li a {
 color: #312819 !important;
}
/*================================

footer フッター

=================================*/ 
/* スマホ問い合わせフローティング非表示 */
.bottomMENU {
display: none;
}

#fixSp {
  display: none;
}
footer {
  display: block;
  max-width: 960px;
  margin: 0 auto;
  padding: 2em 0;

}
#footerOffer {
  display: none;
}
.footerMenu {
  margin-top: 1em;
  display: flex;
  justify-content: space-between;
}
.footerMenu01 {
  flex-basis: 35%;
}
	.footerMenu01 img {
margin-bottom:10px;
}
.footerMenu02 {
  flex-basis: 64%;
  display: flex;
  justify-content: space-between;
}
.footerMenu02 ul {
  flex: 1 1 31%;
  padding: 0 2% 0
}
.footerMenu a {
  color: #fff;
  font-size: 1.4rem;
  text-decoration: none;
}
.footerMenu a:hover {
  text-decoration:underline;
}
/* フッターリストアロー */
.arrow {
  list-style-type: none;
}
.arrow li {
  position: relative;
  padding: 0 0 0 14px;
  margin: 10px 0;
  line-height: 1.2;
}
.arrow li:before {
  counter-increment: list;
  content: "";
  display: block;
  position: absolute;
  left: 0;
  height: 0;
  width: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 7px solid #f3ac02;
  top: .7em;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
/* コピーライト */
#copy {
  width: 100%;
  font-size: 1.4rem;
  padding: 1em 0;
}
/*================================

SNSシェアボタン

=================================*/
.sns-share {
  margin: .5em 0.5% 1em 0.5%;
}
.sns-link:hover {
  text-decoration: none;
  filter: alpha(opacity=70);
  -moz-opacity: 0.70;
  opacity: 0.70;
}
.sns-link {
  font-size: 1.5rem;
}
/*================================

PCのみ<br class="pcBr">で改行

=================================*/
.pcBr {
  display: inline;
}
}

@media screen and ( min-width : 960px ) {
/*//////////// ９６０ｐｘ以上からのデザイン ///////////////////////////////////////////////////////////////////////////*/

/*================================

body

=================================*/
/* 固定ページ画像配置調整 */
.flexImg {
  width: 238px;
}
/* 固定ページ見出し */
#mainWrap main h1 {
  font-size: 3.2rem;
}
/*================================

header

=================================*/
#pageWrap {
  margin: 1em auto;
}
header {
  
}
#headerWrap {
  max-width: 960px;
  padding: 0px 0 0px 0;
}
#header h1 {
  font-size: 14px !important;
	width: 960px;
	padding: 0;
	margin: 0 auto;
	padding-top:10px;
}
#headerWrap p {
  max-width: 480px;
  height: 75px;
  margin: 0px auto 0px;
  padding: 0;
}
#headerWrap .tel {
  max-width: 480px;
  height: 75px;
  margin: 10px auto 10px;
  padding-top: 0;
}

/*================================

topSec01 医院動画

=================================*/
.top-iframeWrap {
  background: url(https://globaldentalx.com/client/moriya/wp-content/themes/dentrance_rwd/common/img/top/sec01/movie_pc.png) no-repeat;
  width: 960px;
  height: 640px;
}
.top-iframeWrap img , .top-iframeWrap iframe {
  max-width: 800px;
  max-height: 450px;
  position: absolute;
  top: 100px;
  left: 80px;
}
/*================================

topSec06 院長スタッフ紹介

=================================*/
.career {
  font-size: 1.6rem;
}
.profileSub {
  font-size: 1.6rem;
}
.massage {
  padding: 2em 2em ;
}
/*================================

topSec08 よくある質問と答え

=================================*/
a.topFaq {
  margin: 4em auto;
}
/*================================

aside サイドナビゲーション

=================================*/
.menuList li {
  padding: .6em 0 .6em .8em;
}
.menuList li h3 {
  padding: .4em .8em;
}
}


/*================================

ブログ表示

=================================*/
.flexinfo {
display:flex;
justify-content: space-between;
}
.flexinfo figure {
width: 49%;
}

#newslist ul {
	margin: 0px;
	padding: 0px;
	margin-bottom: 40px;
	
	
}

#newslist li {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	width: auto;
	margin:auto;
}


#newslist a {
	display: block;
	position: relative;

	text-decoration: none;
	margin-bottom: 5px;
	padding-top: 10px;
	padding-right: 25px;
	padding-bottom: 10px;
	padding-left: 0px;
	line-height: 140%;
	font-size: 100%;
	width: auto;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	border-bottom: 1px solid #D9D9D9;
}

#newslist a:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	width: 7px;
	height: 7px;
	margin-top: -4px;
	border-top: solid 2px #baac9e;
	border-right: solid 2px #baac9e;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content: "";
}
.top_info {
margin-bottom: 60px;
}
.c-both {
    clear:both; display:block; visibility:hidden;
}


h3.widget-title {
background:#00abdc;
margin-top:20px;
color:#fff;
font-size:16px;
font-weight:nomal;
padding:15px 15px;
border-top-left-radius: 8px;
border-top-right-radius: 8px;
}
#recent-posts-2 ul {
background:#fff;

}

#recent-posts-2 ul {
background:#fff;
padding:10px;
border-bottom-right-radius: 8px;
border-bottom-left-radius: 8px;

}
#recent-posts-2 li {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
        color:#00abdc;
}


#recent-posts-2 a {
	display: block;
	position: relative;
	color: #0e17a7;
	text-decoration: none;
	margin-bottom: 5px;
	padding-top: 10px;
	padding-right: 25px;
	padding-bottom: 10px;
	padding-left: 0px;
	line-height: 140%;
	font-size: 100%;
	width: auto;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	border-bottom: 1px solid #D9D9D9;
        color:#00abdc !important;
}

#recent-posts-2 a:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	width: 7px;
	height: 7px;
	margin-top: -4px;
	border-top: solid 2px #02a6f3;
	border-right: solid 2px #02a6f3;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content: "";
        
}

.flexImg02 figure, .flexImg02 p {
  width: 49%;
  padding: 0 0 0 0;
}

section.container {
margin-bottom:60px;
}

.yoyaku01 {
float:left;
margin-bottom:20px;
width:49%;

}
.yoyaku02 {
float:right;
margin-bottom:20px;
width:49%;
}

.side_banner {
margin-top:20px;
}

@media screen and ( max-width : 960px ) {
.yoyaku01 {
float:left;
margin-bottom:10px;
width:49%;
text-align:center;
}
.yoyaku02 {
float:right;
margin-bottom:10px;
width:49%;
text-align:center;
}
}

@media screen and ( max-width : 750px ) {
.yoyaku01 {
float:none;
margin-bottom:10px;
width:100%;
text-align:center;
}
.yoyaku02 {
float:none;
margin-bottom:20px;
width:100%;
text-align:center;
}
}


.topcall {
	text-align: center;
}
.topcall img {
	width: 800px;
	height: auto;
}

@media screen and ( max-width : 750px ) {
	.topcall {
	text-align: center;
}
.topcall img {
	width: 90%;
	height: auto;
}
}


.header_yoyaku {
float:right;
margin-left:10px;
margin-top:5px;
display:block;
}
.header_yoyaku img {
 width:120px;
}

.yoyaku_bn {
text-align:center;
width:500px;
margin:auto;
margin-bottom:40px;
}
.yoyaku_bn img {
width:100%;
}



@media screen and ( max-width : 750px ) {
.header_yoyaku {
float:right;
margin-left:10px;
margin-top:10px;
display:none;
}
.header_yoyaku img {
 width:90px;
}


.yoyaku_bn {
text-align:center;
width:80%;
margin:auto;
margin-bottom:40px;
display:block;
}
.yoyaku_bn img {
width:100%;
}

}


@media screen and ( max-width : 750px ) {
.flexinfo {
display:block;
justify-content: space-between;
}
.flexinfo figure {
width: auto;
margin-bottom:20px;
}


}

.title {
	margin-bottom: 80px !important;

}

.top01box {
		display: flex;
		justify-content:space-between;
		margin-bottom:30px;
}
	.top01_l {
		width: 48%;
		 display: flex;
  justify-content: center;
font-size: 18px !important;
		flex-direction: column;
	}
	.top01_r {
		width: 48%;
	}
	.top01_r img {
		width: 100%;
		height: auto;
	}

.top01 h2 {
		color: #fb687d !important;
	font-size: 34px !important;
	padding: 0;
	margin: 0;
	text-align: center !important;
	margin-bottom: 40px;
	margin-bottom: 30px;
	
}
.top01box h3 {
	font-size: 24px;
	padding: 0;
	margin: 0;
	margin-bottom: 20px;
	line-height: 1.6;
	
}
.title h2 {
	
	font-size: 48px !important;
	padding: 0;
	margin: 0;
	color:#47402e;
	text-align: center !important;
	margin-bottom: 40px;
	border-bottom: 5px solid #47402e;
	padding-bottom: 15px;
}

.nayamibox {
	border-top: 10px solid #0098a5;
	background: #17a065;
	padding: 40px;
	margin-bottom: 40px;
}
.title02 {
	font-size: 48px;
	text-align: center;
	font-weight: 600;
	margin-bottom: 20px;
}

.housin li {
	font-size: 24px;
	font-weight: 600;
	padding-bottom: 7px;
	margin-bottom: 7px;
		border-bottom: 1px dotted #d2d2d2;
		
}
.num {
	font-family: 'Great Vibes', cursive;
	font-size: 42px;
		color:#51a9c0;
		margin-right:20px;
}

.housin {
	margin-bottom: 60px;
}

.top_menu {
	display: flex;
	justify-content:flex-start;
	flex-wrap: wrap;
}
.top_menu li {
	width: 32.2%;
	border: 1px solid #47402e;
	margin: 0 5px 10px 5px;
	padding: 20px;
	color:#47402e;
	text-align: center;
}

@media screen and ( max-width : 750px ) {
.title {
	margin-bottom: 40px !important;
}

.top01box {
		display: flex;
		justify-content:space-between;
	flex-direction:column;
}
	.top01_l {
		width: auto;
		 display: flex;
  justify-content: center;
font-size: 4.5vw !important;
		flex-direction: column;
	}
	.top01_r {
		width: auto;
	}
	.top01_r img {
		width: 100%;
		height: auto;
	}

.top01 h2 {
		color: #fb687d !important;
	font-size: 6vw !important;
	padding: 0;
	margin: 0;
	text-align: center !important;
	margin-bottom: 40px;
	margin-bottom: 30px;
	
}
.top01box h3 {
	font-size: 5vw;
	padding: 0;
	margin: 0;
	margin-bottom: 20px;
	line-height: 1.6;
	
}
.title h2 {
	
	font-size: 6.5vw !important;
	padding: 0;
	margin: 0;
	color:#47402e;
	text-align: center !important;
	margin-bottom: 20px;
	border-bottom: 3px solid #47402e;
	padding-bottom: 10px;
}

		.nayamibox {
			border-top: 10px solid #0098a5;
	background: #17a065;
	
	padding: 15px;
	margin-bottom: 40px;
}
.title02 {
	font-size: 6vw;
	text-align: center;
	font-weight: 600;
	margin-bottom: 20px;
}
.main_free {
	background: url(http://yobonohaishasan.daa.jp/new_site/wp-content/themes/dentrance_rwd/common/img/top/free.jpg) no-repeat;
	background-size: 40px 26px;
	background-position: top 5px left;
	font-size: 8vw;
	padding-left:50px;
	font-weight: 600;
}
a.main_free {
	color:#51a9c0;
	text-align: center;
	text-decoration: none;
}
.housin li {
	font-size: 5vw;
	font-weight: 600;
	padding-bottom: 12px;
	margin-bottom: 12px;
	border-bottom: 1px dotted #d2d2d2;
	line-height: 1;
}
.num {
	font-family: 'Great Vibes', cursive;
	font-size: 8vw;
	color:#47402e;
}

.housin {
	margin-bottom: 60px;
}

.top_menu {
	display: flex;
	justify-content:flex-start;
	flex-wrap: wrap;
}
.top_menu li {
	width: 46.5%;
	border: 1px solid #47402e;
	margin: 0 5px 10px 5px;
	padding: 20px;
	color:#47402e;
	text-align: center;
	font-size: 4vw;
}	
}

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

.cta_mail {
	position: static;
	display: block;
	padding: 0;
	color: #f3ac02;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	margin-top:0px;
	margin-bottom:20px;
	font-size:48px;
	font-weight: 600;
       pointer-events: none;
	cursor: default;
        text-decoration:none;
font-family: 'Barlow', sans-serif;
}
.cta_mail:link {
	    color:#f3ac02;
        text-decoration:none;
        
}
.cta_mail:visited {
	 text-decoration:none;
}
.cta_mail:hover {
	
	color: #b63c01;
	text-decoration:none;
}

.cta_mail i {
	font-size:3rem;
	position: relative;
margin-right:10px;
top:-5px;
}

#gaiyou {
	background: #f8f8f7;
	border: 1px solid #E3E3E3;
	border-top: none;
	width: 100%;
	font-size: 16px;
	line-height: 180%;
	
	margin-bottom: 20px;	
}

dl#gaiyou dl,dl#gaiyou dt,dl#gaiyou dd {
	margin: 0;
	padding: 0;
}

dl#gaiyou dt,dl#gaiyou dd {
	padding: 15px;
}

dl#gaiyou dt {
	border-top: 1px solid #E3E3E3;
	clear: left;
	float: none;
	width: auto;
	font-weight: 600;
}

dl#gaiyou dd {
	background: #fff;
	border-left: 0px solid #E3E3E3;
	border-top: 1px solid #E3E3E3;
	margin-left: auto;
	
}

/* 必須マーク */
.must{
	color: #fff;
	margin-right: 10px;
	padding: 6px 10px;
	background: #F92931;
	border-radius: 20px;
        font-size:12px;
}

/* 任意マーク */
.free {
	color: #fff;
	margin-right: 10px;
	padding: 6px 10px;
	background: #424242;
	border-radius: 20px;
}


@media screen and ( max-width : 750px ) {

.cta_mail {
	position: relative;
	display: inline-block;
	padding: .5em 2em;
	background-color: #f3ac02;
	border: 2px solid #f3ac02;
	color: #fff;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	margin-top:10px;
	margin-bottom:20px;
	width:85%;
	font-size:5vw;
	border-radius: 4px;
	font-weight: 600;
	pointer-events: initial;
}
.cta_mail::after {
	position: absolute;
	top: 50%;
	right: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	border-left-color: #fff;
	transition: all .3s;
}
.cta_mail:link {
	color: #fff;
        text-decoration:none;
        
}
.cta_mail:visited {
	color: #fff;
}
.cta_mail:hover {
	background-color: #fff;
	color: #f3ac02;
	text-decoration:none;
}
.cta_mail:hover::after {
	border-left-color: #f3ac02;
}

.cta_mail i {
	font-size:3vw;
	position: relative;
margin-right:10px;
top:-2px;
}

	
	}
	
	.yoyakubn {
		width:100%;
display:flex;
		justify-content: space-between;
		margin:auto;
	}
	.yoyakubn a {
		width:48.5%;
	}
		.yoyakubn img {
		width:100%;
		margin:auto;
	}
.resbn {
	margin: 60px auto 30px auto;
width:500px;
}
.resbn img {
	width:100%;
		margin:auto;
}
.rinenh3 {
background:#51a9c0;
color:#fff;
text-align:center;
font-size:36px;
padding:20px;
margin-bottom:30px;
}
.rinentitle {
color:#0098a5;
text-align:center;
font-size:30px;
font-weight: 600;
margin-bottom:20px;
}
	
	@media screen and ( max-width : 750px ) {
		
.rinenh3 {
background:#51a9c0;
color:#fff;
text-align:center;
font-size:20px;
padding:10px;
margin-bottom:15px;
}
.rinentitle {
color:#0098a5;
text-align:center;
font-size:18px;
font-weight: 600;
margin-bottom:10px;
}
		.yoyakubn {
		width:auto;
			margin:auto;
			margin-bottom:20px;
	}
		.yoyakubn img {
		width:100%;
		margin:auto;
		}

.resbn {
	margin: 20px auto 20px auto;
width:90%;
}
.resbn img {
	width:100%;
		margin:auto;
}
	
	}
	

.rinentitle {
	font-size: 30px;
	font-weight: 600;
	text-align: center;
	margin-bottom: 20px;
	color:#47a8b6;
line-height:1.5;
}
.rinentext {
	font-size: 18px;
	text-align: center;
	margin-bottom: 40px;
	font-weight: 600;
}


@media screen and (max-width: 768px) {
.rinentitle {
	font-size: 20px;
	font-weight: 600;
	text-align: center;
	margin-bottom: 10px;
}	
.rinentext {
	font-size: 16px;
	text-align: center;
	margin-bottom: 40px;
	font-weight: 600;
}
}

.headbn {
	display: flex;
	justify-content: center;
margin-top:30px;
	flex-wrap: wrap;
}

.headbn div {
	width: 47%;
margin:0 10px 10px 10px;
}
.headbn div img {
	width: 100%;
	height: auto;
}
.rinentop {
	margin-bottom: 40px;
}



.policylist {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
margin-top:40px;
}
.policyitem {
	width: 32%;
	position: relative;
margin-bottom:40px;
}
.policyitem img {
	width: 100%;
	height: auto;
margin-bottom:10px;
border-radius: 10px;
}
.policyitem .num {
	display: inline-block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #47a8b6;
  text-align:center;
  line-height: 50px;
  color:#fff;
	font-size: 20px;
	position: absolute;
    top: 0%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.policytitle {
	font-size: 16px;
line-height:1.3;
}
.topnews_title {
text-align:center;
font-size:22px;
color:#47a8b6;
font-weight:600;
border-bottom:2px dotted #47a8b6;
padding-bottom:5px;
margin:10px 0;
}
.topnews_content {
padding:10px 10px 10px 10px;
}

@media screen and (max-width: 768px) {
	.headbn {
	display: flex;
	justify-content: space-between;
		flex-direction: column;
margin-top:0px;
}

.headbn div {
	width: auto;
	margin-bottom: 10px;
}
.headbn div img {
	width: 100%;
	height: auto;
}
.rinentop {
	margin-bottom: 20px;
}
	
.policylist {
	display: flex;
	justify-content: space-between;
	flex-direction: column;
	flex-wrap: wrap;
margin-top:20px;
margin:20px 10px 0 10px;
}
.policyitem {
	width: auto;
	position: relative;
margin-bottom:30px;
}
.policyitem img {
	width: 100%;
	height: auto;
}
.policyitem .num {
	display: inline-block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #47a8b6;
  text-align:center;
  line-height: 40px;
  color:#fff;
	font-size: 16px;
	position: absolute;
}
.policytitle {
	font-size: 14px;
}

.topnews_title {
text-align:center;
font-size:16px;
color:#47a8b6;
font-weight:600;
border-bottom:2px dotted #47a8b6;
padding-bottom:5px;
margin:10px 0;
}
.topnews_content {
padding:10px 10px 10px 10px;
}


}


.pcimg {
			display:block;
		}
.spimg {
			display:none;
		}

.meritbox {
	display: flex;
	justify-content: space-between;
margin-bottom:15px;
}
.meritbox .merit {
	width: 50%;
	background: #feeef1;
}
.meritbox .demerit {
	width: 50%;
	background: #f6f5f5;
}
.meritbox .merit .title {
	background: #f89bae;
	color:#fff;
	padding: 10px;
	text-align: center;
	font-size: 18px;
margin:0 !important;
}
.meritbox .demerit .title {
	background: #aaaaaa;
	color:#fff;
	padding: 10px;
	text-align: center;
	font-size: 18px;
margin:0 !important;
}
.meritbox ul {
	padding: 15px;
margin:0;
}


table#table-01 {
    width: 100%;
    border: 1px #E3E3E3 solid;
    border-collapse: collapse;
    border-spacing: 0;
	box-sizing: border-box;
	font-size: 16px;
margin-bottom:10px;
}

table#table-01 th {
    padding: 10px;
    border: #E3E3E3 solid;
    border-width: 0 0 1px 1px;
    background: #a5be4e;
    font-weight: 600;
    line-height: 120%;
    text-align: center;
	color: #fff;
	vertical-align: middle;
}
table#table-01 td {
    padding: 10px;
    border: 1px #E3E3E3 solid;
    border-width: 0 0 1px 1px;
    text-align: center;
	vertical-align: middle;
	background: #fff;
}
table#table-01 td span {
   font-size: 24px;
}
.gbg {
	background: #434343;
}

.buttonbox {
	display: flex;
	justify-content: center;
}

/* 001 */
.buttonbox a {
    background: #f3ac02;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 20px 10px;
    padding: 15px 20px;
    color: #fff !important;
    transition: 0.3s ease-in-out;
    font-weight: 500;
width: 300px;
	box-sizing: border-box;
	text-decoration: none;
	font-size: 1.7rem;
}
.buttonbox a:hover {
    background: #0098a5;
    color: #FFF;
}
.buttonbox a:after {
    content: '';
    width: 5px;
    height: 5px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.buttonbox a:hover:after {
    border-color: #FFF;
}
.telbox {
	text-align: center;
	font-size: 4rem;
	font-weight: 600;
	color:#f3ac02;
line-height: 1.2;
margin-bottom:20px;
font-family: 'Barlow', sans-serif;
}
.telbox a {
	color:#f3ac02;
	text-decoration: none;
}
.telbox_title {
	text-align: center;
	font-size: 24px;
	font-weight: 600;
	color:#423321;
margin-bottom:10px;
}

.mstitle {
	font-size: 2.8rem;
	text-align: center;
	color:#5b9a5d;
	margin-bottom: 20px;
font-weight: 600;
}

@media screen and (max-width: 768px) {
.pcimg {
			display:none;
		}
.spimg {
			display:block;
		}

.meritbox {
	display: flex;
	justify-content: space-between;
margin-bottom:15px;
}
.meritbox .merit {
	width: 50%;
	background: #feeef1;
}
.meritbox .demerit {
	width: 50%;
	background: #f6f5f5;
}
.meritbox .merit .title {
	background: #f89bae;
	color:#fff;
	padding: 5px;
	text-align: center;
	font-size: 16px;
margin:0 !important;
}
.meritbox .demerit .title {
	background: #aaaaaa;
	color:#fff;
	padding: 5px;
	text-align: center;
	font-size: 16px;
margin:0 !important;
}
.meritbox ul {
	padding: 10px;
margin:0;
}
.meritbox ul li {
	font-size: 1.4rem;
}

table#table-01 {
    width: 100%;
    border: 1px #E3E3E3 solid;
    border-collapse: collapse;
    border-spacing: 0;
	box-sizing: border-box;
	font-size: 14px;
margin-bottom:10px;
}

table#table-01 th {
    padding: 5px;
    border: #E3E3E3 solid;
    border-width: 0 0 1px 1px;
    background: #a5be4e;
    font-weight: 600;
    line-height: 120%;
    text-align: center;
	color: #fff;
	vertical-align: middle;
}
table#table-01 td {
    padding: 5px;
    border: 1px #E3E3E3 solid;
    border-width: 0 0 1px 1px;
    text-align: center;
	vertical-align: middle;
	background: #fff;
	font-size: 12px;
}
table#table-01 td span {
   font-size: 18px;
}
.gbg {
	background: #434343;
}

.buttonbox {
	display: flex;
	justify-content: space-between;
flex-direction: column;
margin:10px 0;
}

/* 001 */
.buttonbox a {
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 5px auto;
    padding: 15px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
	width: 90%;
	box-sizing: border-box;
	text-decoration: none;
	font-size: 16px;

}
.buttonbox a:hover {
    color: #FFF;
}
.buttonbox a:after {
    content: '';
    width: 5px;
    height: 5px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.buttonbox a:hover:after {
    border-color: #FFF;
}
.telbox {
	text-align: center;
	font-size: 28px;
	font-weight: 600;
	color:#f56801;
line-height: 1.2;
margin-top:10px;
margin-bottom:20px;
}
.telbox a {
	color:#f56801;
	text-decoration: none;
}
.telbox_title {
	text-align: center;
	font-size: 20px;
	font-weight: 600;
	color:#423321;
margin-bottom:10px;
}

.topResponseBg .headbn {
margin-bottom:40px;
}

.mstitle {
	font-size: 1.6rem;
	text-align: center;
	color:#5b9a5d;
	margin-bottom: 10px;
}


}

.upimg {
position:relative;
z-index:2;
}


.kyu_cate {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.kyu_cate_item {
	width: 48.5%;
	 display: flex;
  flex-direction: column;
	margin-bottom: 15px;
}
.kyu_cate_item img {
	margin-bottom: 10px;
}
.kyu_cate_item p {
	line-height: 1.6;
	margin-bottom: 10px;
}
.more {
	position: relative;
	display: inline-block;
	padding: 10px;
	background-color: #baac9e;
	border: 2px solid #baac9e;
	color: #fff;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	margin-bottom:0px;
	width:100%;
	font-size:18px;
	margin-top: auto;
		text-decoration:none !important;
	
}
.more::after {
	position: absolute;
	top: 50%;
	right: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	border-left-color: #fff;
	transition: all .3s;
}
.more:link {
	color: #fff;
}
.more:visited {
	color: #fff;
}
.more:hover {
	background-color: #fff;
	color: #baac9e;
	text-decoration:none;
}
.more:hover::after {
	border-left-color: #baac9e;
}

.tokucyo {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.tokucyo_item {
	width: 32.5%;
	padding: 15px;
	background:rgba(255,255,255,0.8);
	border-radius: 10px;
	font-size: 1.5rem !important;
	line-height: 1.6;
	box-shadow: 0 0 15px rgba(0,0,0,.1);
	margin-bottom: 10px;
box-sizing: border-box;
}
.tokucyo_item h4 {
	font-size: 1.8rem !important;
	margin: 0;
	padding: 0;
	margin-bottom: 5px;
	padding-bottom: 5px;
	line-height: 1.4;
	text-align: left;
	line-height: 1.6 !important;
}
.tokucyo_item img {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}

#mouthpiece-invisalign_contents h5 {
font-size: 2rem;
margin-bottom:20px;
	text-align: center;
line-height:1.5 !important;
}
#mouthpiece-invisalign_contents h5 span {
color:#df4444;
font-size: 3rem;
}


@media screen and (max-width: 768px) {
	
.kyu_cate {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.kyu_cate_item {
	width: 48.5%;
	 display: flex;
  flex-direction: column;
	margin-bottom: 15px;
}
.kyu_cate_item img {
	margin-bottom: 10px;
}
.kyu_cate_item p {
	line-height: 1.6;
	margin-bottom: 10px;
}
.more {
	position: relative;
	display: inline-block;
	padding: 10px;
	background-color: #baac9e;
	border: 2px solid #baac9e;
	color: #fff;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	margin-bottom:0px;
	width:100%;
	font-size:1.5rem;
	margin-top: auto;
	text-decoration:none !important;
	
}
.more::after {
	position: absolute;
	top: 50%;
	right: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	border-left-color: #fff;
	transition: all .3s;
}
.more:link {
	color: #fff;
}
.more:visited {
	color: #fff;
}
.more:hover {
	background-color: #fff;
	color: #baac9e;
	text-decoration:none;
}
.more:hover::after {
	border-left-color: #baac9e;
}


.tokucyo {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex-wrap: wrap;
}
.tokucyo_item {
	width: auto;
	padding: 15px;
	background:rgba(255,255,255,0.8);
	border-radius: 10px;
	font-size: 1.5rem !important;
	line-height: 1.6;
	box-shadow: 0 0 15px rgba(0,0,0,.1);
	margin-bottom: 10px;
box-sizing: border-box;
}
.tokucyo_item h4 {
	font-size: 1.6rem !important;
	margin: 0;
	padding: 0;
	margin-bottom: 5px;
	padding-bottom: 5px;
	line-height: 1.4;
	text-align: left;
	line-height: 1.6 !important;
}
.tokucyo_item img {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}
	
.subdr img {
		width: 60%;
	margin: auto;
	text-align: center;
	display: flex;
  justify-content: center;
  align-items: center;
	margin-bottom: 10px
}

#mouthpiece-invisalign_contents h5 {
font-size: 2rem;
margin-top:20px;
margin-bottom:15px;
	text-align: center;
line-height:1.5 !important;
}
#mouthpiece-invisalign_contents h5 span {
color:#df4444;
font-size: 3rem;
}
	
}


.onayami {
	margin-bottom: 20px;
	}
.onayami h2 {
	text-align: center;
	color:#312819;
	font-size: 4rem;
	font-family: 'Zen Maru Gothic', serif !important;
	letter-spacing: 0.2rem;
	margin-bottom: 30px;
}
.onayamiblock {
	margin-bottom: 0px;
}
.onayamibox {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.onayamiitem {
	width: 32%;
	box-sizing: border-box;
	 display: flex;
  flex-direction: column;
	margin:0 6px 20px 6px;
	text-align: center;
	line-height: 1.5;
	font-size: 1.6rem;
	background: #fff;
	border-radius: 10px;
	
}
.onayamiitem img {
	width: 100%;
	height: auto;
	border-radius: 6px;
	margin-bottom: 10px;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
.onayamiitem a {
	position: relative;
}
.onayamiitem h3 {
	position: absolute;
	bottom:10px;
	 background:#0098a5;
	color:#fff;
	font-size: 1.9rem;
	text-align: center;
	margin: 0;
	padding: 5px;
	line-height: 1.5;
	font-family: 'Zen Maru Gothic', serif !important;
	width: 100%;
	box-sizing: border-box;
}
.onayamiitem h3 span {
	font-size: 1.4rem;
}

.onayamiitem .topbitton a {
    background: #ed972e;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 10px auto 15px;
    padding: 10px 20px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
	max-width:90% !important;
	box-sizing: border-box;
	text-decoration: none;
	font-size: 1.7rem;
	 
}

.topbitton {
	margin-top: auto;
}

/* 001 */
.topbitton a {
    background: #ed972e;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 20px auto 30px auto;
    padding: 10px 20px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
	max-width:50%;
	box-sizing: border-box;
	text-decoration: none;
	font-size: 1.7rem;
	 
}
.topbitton a:hover {
    background: #ed972e;
    color: #FFF;
}
.topbitton a:after {
    content: '';
    width: 5px;
    height: 5px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.topbitton a:hover:after {
    border-color: #FFF;
}


@media screen and (max-width: 768px) {
	.onayami {
	margin-bottom: 30px;
		margin-bottom: 0px;
	}
	
.onayami h2 {
	text-align: center;
	color:#312819;
	font-size: 2rem;
	font-family: 'Zen Maru Gothic', serif !important;
	letter-spacing: 0rem;
	margin-bottom: 10px;
}
.onayamiblock {
	
}
.onayamibox {
	display: flex;
	flex-direction: column;
	justify-content:space-between;
	flex-wrap: wrap;
	margin: 0 5px;
	margin-bottom: 25px;
}
.onayamiitem {
	width: auto;
	box-sizing: border-box;
	 display: flex;
  flex-direction: column;
	margin:0 0 8px 0;
	font-size: 1.2rem;
}
.onayamiitem img {
	width: 100%;
	height: 150px;
	object-fit: cover;
	border-radius: 6px;
	margin-bottom: 5px;
}
.onayamiitem h3 {
	font-size: 1.3rem;
	text-align: center;
	margin: 0;
	padding: 2px;
	line-height: 1.4;
	bottom:0;
}
.onayamiitem h3 span {
	font-size: 1.2rem;
}

.topbitton {
	margin-top: auto;
}

/* 001 */
.topbitton a {
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 20px auto;
    padding: 8px 10px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
	max-width:80%;
	width:100% !important;
	box-sizing: border-box;
	text-decoration: none;
	font-size: 1.3rem !important;
	 
}
.topbitton a:hover {
    background: #fab235;
    color: #FFF;
}
.topbitton a:after {
    content: '';
    width: 5px;
    height: 5px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 48%;
    right: 10px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.topbitton a:hover:after {
    border-color: #FFF;
}
	
}

#dental-menu_contents .buttonbox a {
width:50% !important;

}

@media screen and (max-width: 768px) {
#dental-menu_contents .buttonbox a {
width:80% !important;
margin-bottom:30px;
}
}

#faq_contents a {
color:#0160c1;
}

#qa01,
#qa02,
#qa03,
#qa04,
#qa05,
#qa06,
#qa07,
#qa08,
#qa09,
#qa10,
#qa11,
#qa12,
#qa13,
#qa14,
#qa15,
#qa16,
#qa17,
#qa18,
#qa19,
#qa20,
#qa21,
#qa22,
#qa23,
#qa24,
#qa25,
#qa26,
#qa27	{
    display: block;
    padding-top: 70px;
    margin-top: -70px;
}




/*---------------------------------
アコーディオンボックス
--------------------------------*/
.acbox{
  width: auto;
  font-size:0px; /* ラベルと開く部分を分離する時は数値を入れる */
}

.acbox label{
  width: auto;
  font-size: 1.7rem;
  position: relative;
  display: block;
  cursor: pointer;
  color: #fff;
}

.acbox label:hover{
  
}

.acbox input{
  display: none;
}

.acbox label:after{
  color: #fff;
  content:"▼"; /* ラベルのアイコン */
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -9px;
}

.acbox input:checked ~ label::after {
  content:"▲"; /* ラベルをクリックした後のアイコン */
}

.acbox div{
  height: 0px;
  overflow: hidden;
  opacity: 0;
  transition: 0.15s; /* 開閉スピードの設定 */
}

.acbox input:checked ~ div{
  height: auto;
  border-radius: 0px;
  opacity: 1;
}

.acbox input:checked ~ label {
 
}

.acbox-under{
  font-size: 15px; /* 開いた部分の文字サイズ */
  color: #fff; /* 開いた部分の文字色 */
}

.acbox-under p {
  padding:10px 0 0 0;
  margin:0;
}


@media screen and (max-width: 768px) {
/*---------------------------------
アコーディオンボックス
--------------------------------*/
.acbox02 {
  width: auto;
  font-size:0px; /* ラベルと開く部分を分離する時は数値を入れる */
margin:15px 0;
}

.acbox02 label{
  width: auto;
  font-size: 1.7rem;
  position: relative;
  display: block;
  cursor: pointer;
  color: #fff;
background:#0098a5;
border-radius: 5px;
padding:10px 10px;
margin:0 0 10px 0;
}

.acbox02 label:hover{
  
}

.acbox02 input{
  display: none;
}

.acbox02 label:after{
  color: #fff;
  content:"▼"; /* ラベルのアイコン */
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -12px;
}

.acbox02 input:checked ~ label::after {
  content:"▲"; /* ラベルをクリックした後のアイコン */
}

.acbox02 div{
  height: 0px;
  overflow: hidden;
  opacity: 0;
  transition: 0.15s; /* 開閉スピードの設定 */
}

.acbox02 input:checked ~ div{
  height: auto;
  border-radius: 0px;
  opacity: 1;
}

.acbox02 input:checked ~ label {
 
}

.acbox-under02 {
  font-size: 15px; /* 開いた部分の文字サイズ */
  color: #fff; /* 開いた部分の文字色 */
}

.acbox-under02 p {
  padding:5px 0 5px 0;
  margin:0;
border-bottom:1px dashed #c9c9c9 !important;
margin-bottom:5px;
}
.acbox-under02 p a {
  text-decoration:none;
}
}


.footerMenu h2 {
	font-size: 2.4rem;
	font-weight: 600;
	margin-top: 15px;
	color:#fff;
}
.footerMenu .ft-add {
	font-size: 1.4rem;
	font-weight: 600;
	color:#fff;
}
.footerMenu .ft-tel {
	font-size: 4rem;
	font-weight: 600;
	color:#fff;
	font-family: 'Barlow', sans-serif;

}
.inv-intro {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right center;
	padding: 20px 20px;
margin: 30px 0 40px 0;
}
.inv-intro .inner {
	padding: 30px;
	background:rgba(255,255,255,0.9);
	border-radius: 10px;
}

.title-01 {
	background: #0098a5;
	text-align: center;
	color:#fff;
	font-size: 2rem;
	padding: 10px;
	margin-bottom: 15px;
	font-weight: 600;
}
.title-02 {
	text-align: center;
	color:#df4444;
	font-size: 3rem;
	margin-bottom: 15px;
	font-weight: 600;
}
.inv-intro .inner p {
	text-align: center;
	
}

.title-03 {
	background: #423321;
	text-align: center;
	color:#fff;
	font-size: 2rem;
	padding: 10px;
	margin-bottom: 15px;
	font-weight: 600;
	width: 60%;
	margin: auto;
}
.inv-intro .price {
	text-align: center;
	color:#df4444;
	font-size: 5rem;
	margin-bottom: 0px;
	font-weight: 600;
}
.inv-intro .price span {
	color:#df4444;
	font-size: 2.4rem;

}
.sub-price {
	display: flex;
	justify-content: space-between;
}
.sub-price div {
	border: 1px solid #423321;
	text-align: center;
	color:#423321;
	padding: 10px;
	font-weight: 600;
	width: 49%;
	box-sizing: border-box;
}



@media screen and (max-width: 768px) {
	
	
.inv-intro {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right center;
	padding: 15px 15px;
	margin: 20px 0 30px 0;
}
.inv-intro .inner {
	padding: 15px;
	background:rgba(255,255,255,0.9);
	border-radius: 10px;
}

.title-01 {
	background: #0098a5;
	text-align: center;
	color:#fff;
	font-size: 1.6rem;
	padding: 10px;
	margin-bottom: 10px;
	font-weight: 600;
}
.title-02 {
	text-align: center;
	color:#df4444;
	font-size: 1.8rem;
	margin-bottom: 10px;
	font-weight: 600;
}
.inv-intro .inner p {
	text-align: center;
	
}

.title-03 {
	background: #423321;
	text-align: center;
	color:#fff;
	font-size: 1.6rem;
	padding: 10px;
	margin-bottom: 10px;
	font-weight: 600;
	width: 100%;
	margin: auto;
	box-sizing: border-box;
}
.inv-intro .price {
	text-align: center;
	color:#df4444;
	font-size: 3rem;
	margin-bottom: 5px;
	font-weight: 600;
}
.inv-intro .price span {
	color:#df4444;
	font-size: 1.8rem;

}
.sub-price {
	display: flex;
	justify-content: space-between;
}
.sub-price div {
	border: 1px solid #423321;
	text-align: center;
	color:#423321;
	padding: 5px;
	font-weight: 600;
	width: 49%;
	box-sizing: border-box;
}

	
}

.headtel {
	font-size: 4rem;
	font-weight: 600;
	margin: 0;
	padding: 0;
	line-height: 1.2;
	color:#f3ac02;
	margin-top: 0px;
	text-align: right;
	font-family: 'Barlow', sans-serif;
}
.headadd {
	font-size: 1.6rem;
	line-height: 1.2;
	margin-bottom: 5px;
	text-align: right;
}
.headaccess {
	background: #d2c742;
	padding: 2px;
	font-size: 1.6rem;
	color:#fff;
	text-align: center;
}

@media screen and (max-width: 960px) {
.headtel {
	font-size: 3.2rem;
	margin: 0;
	padding: 0;
	line-height: 1.2;
	margin-top:-10px;
	
}
.headadd {
	font-size: 1.4rem;
	line-height: 1.2;
	margin-bottom: 5px;
}
.headaccess {
	background: #d2c742;
	padding: 2px;
	font-size: 1.4rem;
	color:#fff;
	text-align: center;
}	
}
@media screen and (max-width: 768px) {
.headtel {
	font-size: 2.8rem;
	font-weight: 600;
	margin: 0;
	padding: 0;
	line-height: 1.2;
	display: none;
}
.headadd {
	font-size: 1.4rem;
	line-height: 1.2;
	margin-bottom: 5px;
	display: none;
}
.headaccess {
	background: #d2c742;
	padding: 2px;
	font-size: 1.4rem;
	color:#fff;
	text-align: center;
	display: none;
}	
}






.top-new-01 {
	background: #fce8ec;
	padding: 40px 0 50px 0;
}
.top-new-02 {
	background: #fff;
	padding: 40px 0 60px 0;
}
.top-new-01 h2,
.top-new-02 h2 {
	color:#0098a5;
	text-align: center;
	line-height: 1.6;
	font-size: 3.2rem;
	padding: 0;
	margin: 0;
	margin-bottom: 30px;
}


.topdoctor {
	display: flex;
	justify-content: center;
}
.topdoctor div {
	width: 280px;
	margin: 0 20px 0 20px;
}
.topdoctor div img {
	width:280px;
	height:280px;
	object-fit:cover;
	border-radius:50%;
	margin-bottom: 20px;
}

.topdoctor h3 {
	background: #0098a5;
	padding: 10px;
	font-size: 1.8rem;
	color:#fff;
	text-align: center;
}


.topbn-box {
	display: flex;
	justify-content:space-between;
}
.topbn-box  div {
	width: 32%;
}
.topbn-box  div img {
	width: 100%;
	height: auto;
	border-radius: 10px;
}


.top-content02 {
	padding: 60px 0 0px 0;
}
.topincho {
	display: flex;
	justify-content:space-between;
	margin-bottom: 40px;
}
.topincho_l {
	width: 60%;
}

.topincho_l img {
	width: 300px;
	height: auto;
}

.topincho_l h2 {
	font-size: 2.4rem;

}
.topincho_l h3 {
font-size: clamp(2rem, 3.7vw, 3.6rem);
font-family: 'Zen Maru Gothic', serif !important;
	letter-spacing: 0.2rem;

}
.topincho_l h3 span {
font-size: clamp(1.5rem, 2vw, 2rem);
}

.topincho_keireki {
	border-bottom: 1px solid #b2ada3;
	border-top: 1px solid #b2ada3;
	padding: 20px 0 5px 0;
	margin: 10px 0 10px 0;
}


.topincho_r {
	width: 35%;
}
.topincho_r img {
	width: 100%;
	height: auto;
}



.top-content03 {
	background: url(../img/common/bg03.webp) no-repeat;
	background-attachment: fixed;
	background-size: cover;
	background-position: center top;
	padding: 50px 0 30px 0;
}


.	 {
	background: url(../img/common/bg03.webp) no-repeat;
	background-attachment: fixed;
	background-size: cover;
	background-position: center top;
	padding: 50px 0 50px 0;
}

.top-content02 h2 {
font-size: clamp(2.2rem, 4.3vw, 4.2rem);
	text-align: center;
	padding: 0;
	margin: 0;
	margin-top: 0px;
	margin-bottom: 40px;
	letter-spacing: 0.1rem;
font-family: 'Zen Maru Gothic', serif !important;
	font-weight: 600;
}

.top-content04 .head h2 {
font-size: clamp(2rem, 3.7vw, 3.6rem);
	text-align: center;
	margin-bottom: 0px;
font-family: 'Zen Maru Gothic', serif !important;
}
.top-content04 .head h2 span {
	font-size: clamp(2rem, 3.1vw, 3rem);
	text-align: center;
}
.top-content04 .head h3 {
font-size: clamp(3rem, 6.2vw, 6rem);
	box-sizing: border-box;
	text-align: center;
	letter-spacing: 0.5rem;
	margin-bottom: 30px;
	line-height: 1;
font-family: 'Zen Maru Gothic', serif !important;
}
.top-content04 .head h3 span {
	color:#0098a5;
	font-size: 7rem;
}

.reasonblock {
	
}

.reasonblock h2 {
	font-family: 'Zen Maru Gothic', serif !important;
	text-align: center;
	color:#0098a5;
font-size: clamp(1.8rem, 2.5vw, 2.4rem);
	letter-spacing: 0.2rem;
	border-radius: 5px;
	margin-bottom: 5px;
}

.reasonbg {
	 background:rgba(255,255,255,1);
	padding: 30px;
	margin-bottom: 20px;
	border-radius: 8px;
box-shadow: 0 0 30px rgba(220,195,160,0.2);
}
.reasonbg h3 {
font-size: clamp(2rem, 3.1vw, 3rem);
	border-bottom: 2px dotted #66584d;
	padding-bottom: 10px;
	margin-bottom: 10px;
	font-family: 'Zen Maru Gothic', serif !important;
	text-align: center;

}
.reasonbg p {
	font-size: 1.8rem !important;
}
.reasonph {
	display: flex;
	justify-content: space-between;
}
.reasonph div {
	width: 49%;
}
.reasonph div img {
	width: 100%;
	height: auto;
}


.top-content05 {
	padding: 60px 0 80px 0;
}
.top-content05  h2 {
	color: #0098a5;
	font-size: 5rem;
	text-align: center;
	margin-bottom: 40px;
}

.top-content05 h3 {
	background: #0098a5;
	text-align: center;
	color:#fff;
	font-size: 3rem;
	padding: 15px;
	margin-bottom: 20px;
}
.top-content05 .block {
	margin-bottom: 40px;
}



/*==================================================
スライダーのためのcss
===================================*/

.sliderbox {
	padding: 0px 0 0px 0;
	position: relative!important;
	bottom:0;
	max-width:100%;
	margin: auto;
}
.slider,
.slider02 {/*横幅94%で左右に余白を持たせて中央寄せ*/
   max-width:100%;
   margin:0 auto;
}

.slider04 {/*横幅94%で左右に余白を持たせて中央寄せ*/
   max-width:50%;
   margin:0 auto;
}

.slider img,
.slider02 img,
.slider04 img{
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
	box-sizing: border-box;
	margin-bottom: 10px;
	
}

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

.slider .slick-slide,
.slider02 .slick-slide {
    margin:0 0.5vw;
}

/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #666;/*矢印の色*/
    border-right: 2px solid #666;/*矢印の色*/
    height: 15px;
    width: 15px;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left: -1.5%;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right: -1.5%;
    transform: rotate(45deg);
}


@media screen and (max-width: 768px) {
	

.sliderbox {
	padding: 0px 10px 0px 10px ;
	position: relative!important;
	bottom:0;
	width:auto;
}
.slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
   max-width:100%;
    margin:0 auto;
	
}

.slider img,
.slider02 img,
.slider03 img,
.slider04 img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
	border: 0px solid #fff;
	box-sizing: border-box;
}

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

.slider .slick-slide,
.slider02 .slick-slide {
    margin:0 10px;
}

/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #666;/*矢印の色*/
    border-right: 2px solid #666;/*矢印の色*/
    height: 15px;
    width: 15px;
	z-index: 2 !important;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left: -1.5%;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right: -1.5%;
    transform: rotate(45deg);
}


}

.slick-arrow:before{
	content:""!important;
}

.slick-arrow:before{
    content:""!important;
    width: 50px !important;
	height: 60px !important;
    position: absolute;
    top: -5px;
    left: 0;
	
  }

.slider .slick-next:before{
	width: 50px;
	height: 60px;
	  background: url("../img/top/arrow_right.png")!important;
	background-repeat: no-repeat;
    background-size: 50px 60px !important;
	  top:-40px;
  }

  .slick-prev:before{
	  width: 50px;
	height: 60px;
    background: url("../img/top/arrow_left.png")!important;
	  background-repeat: no-repeat;
    background-size: 50px 60px !important;
	   top:-40px;
	left: -30px;
  }





@media screen and (max-width: 980px) {
	
.slick-arrow:before{
	content:""!important;
}

.slick-arrow:before{
    content:""!important;
    width: 50px !important;
	height: 60px !important;
    position: absolute;
    top: -5px;
    left: 0;
	
  }

.slider .slick-next:before{
	width: 35px;
	height: 42px;
	  background: url("../img/top/arrow_right.png") no-repeat !important;
	background-repeat: no-repeat;
    background-size: 35px 42px !important;
	   top:-50% !important;
	 left: -25px;
  }

.slider .slick-prev:before{
	  width: 35px;
	height: 42px;
    background: url("../img/top/arrow_left.png")no-repeat !important;
	  background-repeat: no-repeat;
    background-size: 35px 42px !important;
	top:-50% !important;
	left: 15px;
  }




.swiper-container {
  width: 100%;
  padding-top: 50px;
  padding-bottom: 50px;
}

.swiper-slide {
  background-position: center;
  background-size: cover;
  width: 320px;
  background-color: #fff;
  overflow: hidden;
  border-radius: 8px;
}

.picture {
  width: 320px;
  height: 320px;
  overflow: hidden;
}
.picture img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.detail {
  padding: 25px 20px;
  font-weight: 600;
  text-align: center;
}
.detail h3 {
  margin: 0;
  font-size: 20px;
}
.detail span {
  display: block;
  font-size: 16px;
  color: #f44336;
}
	
}



@media screen and (max-width: 768px) {
	
	
.top-new-01 {
	padding: 20px 5px 20px 5px;
}
.top-new-02 {
	background: #fff;
	padding: 20px 5px 30px 5px;
}
.top-new-01 h2,
.top-new-02 h2 {
	color:#0098a5;
	text-align: center;
	line-height: 1.6;
	font-size: 1.8rem;
	padding: 0;
	margin: 0;
	margin-bottom: 15px;
}


.topdoctor {
	display: flex;
	justify-content: center;
}
.topdoctor div {
	width: 30%;
	margin: 0 5px 0 5px;
}
.topdoctor div img {
	width:100%;
	height:auto;
	object-fit:fill;
	border-radius:0%;
	margin-bottom: 10px;
}

.topdoctor h3 {
	background: #0098a5;
	padding: 5px;
	font-size: 1.3rem;
	color:#fff;
	text-align: center;
}


.topbn-box {
	display: flex;
	flex-direction: column;
	justify-content:space-between;
}
.topbn-box  div {
	width: auto;
	margin-bottom: 10px;
}
.topbn-box  div img {
	width: 100%;
	height: auto;
	border-radius: 0px;
}

.top-content02 {
	padding: 40px 0 10px 0;
}
	.container.top-content02 {
		padding: 30px 15px 20px 15px;
		margin: 0;
	}
	
.top-content02 h2 {
	font-size: 2rem;
	text-align: center;
	 font-family: 'Zen Maru Gothic', serif !important;
	margin-bottom: 20px;
	padding: 0;
	margin: 0;
	margin-top: 0px;
	margin-bottom: 15px;
	letter-spacing: 0.1rem;
}
	
	
.topincho {
	display: flex;
	flex-direction: column-reverse;
	justify-content:space-between;
	margin-bottom: 10px;
}
.topincho_l {
	width: auto;
}
	
.topincho_l img {
	width: 180px;
	height: auto;
margin:auto;
	margin-bottom: 5px;
}

.topincho_l h2 {
	font-size: 1.4rem;
}
.topincho_l h3 {
	font-size: 2rem;
text-align:center;
}
.topincho_l h3 span {
	font-size: 1.6rem;
}

.topincho_keireki {
	border-bottom: 1px solid #737373;
	border-top: 1px solid #737373;
	padding: 10px 0;
	margin: 10px 0 20px 0;
}


.topincho_r {
	width: auto;
	text-align: center;
	margin-bottom: 20px;
}
.topincho_r img {
	width: 50%;
	height: auto;
}



.top-content03 {
	padding: 30px 5px 0px 5px;
}


.top-content04 {
	padding: 20px 0 20px 0;
}

.top-content04 .head h2 {
	font-size: 2rem;
	text-align: center;
	margin-bottom: 0px;
line-height:1.7;
}
.top-content04 .head h2 span {
	font-size: 1.5rem;
	text-align: center;
}
.top-content04 .head h3 {
	font-size: 2.6rem;
	box-sizing: border-box;
	text-align: center;
	letter-spacing: 0.2rem;
	margin-bottom: 15px;
	line-height: 1;
}
.top-content04 .head h3 span {
	font-size: 3.8rem;
}

.top-content04 .head h3 span.no {
	color:#ffff00;
	font-size: 2.2rem;
}

.reasonblock {
	
}

.reasonblock h2 {

	text-align: center;
	font-size: 1.6rem;
	padding: 0px 5px;
	letter-spacing: 0;
}
.reasonblock h2 span {
	
}
.reasonbg {
	padding: 10px;
	margin-bottom: 20px;
}
.reasonbg h3 {
	font-size: 1.8rem;
	
	padding-bottom: 10px;
	margin-bottom: 10px;
	line-height: 1.6;
}
.reasonbg p {
	font-size: 1.4rem !important;
}
.reasonph {
	display: flex;
	justify-content: space-between;
}
.reasonph div {
	width: 49%;
}
.reasonph div img {
	width: 100%;
	height: auto;
}


.top-content05 {
	padding: 30px 0 30px 0;
}
.top-content05  h2 {
	color: #0098a5;
	font-size: 2.4rem;
	text-align: center;
	margin-bottom: 10px;
}

.top-content05 h3 {
	background: #0098a5;
	text-align: center;
	color:#fff;
	font-size: 1.8rem;
	padding: 10px 10px;
	margin-bottom: 15px;
}
.top-content05 .block {
	margin-bottom: 20px;
}
.sliderbox {
	width: auto;
	overflow: hidden;
}
.sliderbox img {
	width: 100%;
	height: auto;
}
.sliderbox ul li {
	margin: 0 10px;
}
	
}

.topResponseBg h2 {
	text-align: center;
font-size: clamp(2rem, 3.7vw, 3.6rem);
	padding: 0;
	margin-bottom: 30px;
	border-bottom: 1px solid  #312819;
	padding-bottom: 15px;
font-family: 'Zen Maru Gothic', serif !important;
}
.responseTel {
	font-size: 5rem;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	margin: 0;
	margin-top: -20px;
	padding: 0;
	color:#0098a5;
	font-family: 'Barlow', sans-serif;
	margin-bottom: 10px;
}
.responseTel span {
	font-size: 2rem;
	font-weight: 600;
	color:#555;
}


@media screen and (max-width: 768px) {
	
.topResponseBg {
  background: url(../img/common/bg03.webp) no-repeat;
  padding: 1em 0;
}
	
.topResponseBg h2 {
	text-align: center;
	font-size: 1.8rem;
	padding: 0;
	margin-bottom: 10px;
	padding-bottom: 5px;
}
.responseTel {
	font-size: 5rem;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	margin: 0;
	margin-top: -20px;
	padding: 0;
	color:#0098a5;
}
.responseTel span {
	font-size: 2rem;
	font-weight: 600;
	color:#555;
}
}


#hero {
	background: url(../img/top/hero_bg_pc.png) ;
	width: 100%;
	height: 760px;
	background-position: center top;
}

@media screen and (max-width: 768px) {
#hero {
	background: none ;
	width: 100%;
	height: auto;
	background-position: center top;
}
}


.bottomtitle {
font-size:2.4rem;
font-weight: 600;
text-align:center;
padding:15px 0;
border-top:3px solid #949393;
border-bottom:3px solid #949393;
}

@media screen and (max-width: 768px) {

.bottomtitle {
font-size:1.7rem;
font-weight: 600;
text-align:center;
padding:10px 0;
border-top:2px solid #949393;
border-bottom:2px solid #949393;
}

}


.btn_page_top {
	background: #f3ac02;
	display: block;
	position: fixed;
	right: 30px;
	bottom: 220px;
	z-index: 50;
	width: 60px;
	height: 60px;
}
.btn_page_top:hover {
	opacity: 0.5;
}
.btn_page_top:before {
    display: block;
    position: absolute;
    top: 25px;
    left: 24px;
    width: 12px;
    height: 12px;
    border-top: solid 2px #fff;
    border-left: solid 2px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
}


@media screen and (max-width: 768px) {
.btn_page_top {
	display: block;
	position: fixed;
	right: 10px;
	bottom: 140px;
	z-index: 20;
	width: 60px;
	height: 60px;
}
.btn_page_top:hover {
	opacity: 0.5;
}
.btn_page_top:before {
    display: block;
    position: absolute;
    top: 25px;
    left: 24px;
    width: 12px;
    height: 12px;
    border-top: solid 2px #fff;
    border-left: solid 2px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
}
	
	
}


.nlist {
	margin-left:20px;
}
.nlist li {
	list-style-type: disc;
margin-bottom:10px;
}

.box01 img {
position: relative;
	z-index: 1;
}
.box01 i{
font-size:3rem;
}


.sign {
	width: 250px;
 margin-right: 0;
 margin-left: auto;
 display: block;
}
.sign img {
	width: 100%;
	height: auto;
}


.topmenu {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 50px 0;
	padding: 0;
}
.topmenu li {
	width: 32%;
	padding: 5px;
	box-sizing: border-box;
	 background:#0098a5;
	list-style-type: none;
transition: 0.3s;
margin:0 5px 15px 5px;
}
.topmenu li a {
	color: #fff;
	text-decoration: none;
}
.topmenu li:hover {
	opacity:0.8 !important;
}
.topmenu li .inner {
	border: 1px solid #fff;
	padding: 10px;
	box-sizing: border-box;
	display: flex;
	text-align: center;
}

.topmenu li .inner figure {
	padding: 0;
	margin: 0;
	width: 20%;
}
.topmenu li .inner img {
	width: 100%;
	height: auto;
}
.topmenu li .inner p {
	display: flex;
	flex-direction: column;
  justify-content: center;
  align-items: center;
	margin: 0;
	padding: 0;
	width: 70%;
	font-size: 2rem;
}

.topkeireki {
	background:rgba(255,255,255,0.5);
	padding: 30px;
}


#kereki {
	border-top: none;
	width: 100%;
	border-bottom: 1px dotted #b2ada3;
	padding: 0;
	margin: 0;
	font-weight: normal;
		margin-bottom: 20px;
}

dl#kereki dl,dl#kereki dt,dl#kereki dd {
	margin: 0;
	padding: 0;
}

dl#kereki dt,dl#kereki dd {
	padding: 15px;
	text-align: left;
}

dl#kereki dt {
	border-top: 1px dotted #b2ada3;
	clear: left;
	float: left;
	width: 25%;
	font-weight: normal;
}
dl#kereki dd {
	border-top: 1px dotted #b2ada3;
	margin-left:25%;
	font-weight: normal;
}

.topstaff {
	background: url("../img/top/staff.jpg") no-repeat;
	background-position: top center;
	width: 100%;
	height: 400px;
	margin: 50px 0 40px 0;
	background-size: cover;
}
.topstaff img {
	border: 8px solid #fff;
}


.topMAP {
	margin-bottom: 20px;
}

.accesslogo {
	max-width: 700px;
	margin: auto;
	margin-bottom: 20px;
}
.accesslogo img{
	width: 100%;
	height: auto;
}



@media screen and (max-width: 768px) {
	
.sign {
	width: 80%;
	margin: auto;
 margin-right: 0;
 margin-left: auto;
 display: block;
}
.sign img {
	width: 100%;
	height: auto;
}


.topmenu {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	margin-bottom: 5px;
}
.topmenu li {
	width: 49%;
	padding: 3px;
	box-sizing: border-box;
	list-style-type: none;
	margin-bottom: 5px;
margin:0 0 5px 0;
}
.topmenu li a {
	color: #fff;
	text-decoration: none;
	font-size: 1.2rem !important;
}
.topmenu li .inner {
	border: 1px solid #fff;
	padding: 5px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	text-align: center;
}

.topmenu li .inner figure {
	padding: 0;
	margin: 0;
	width: 15%;
	margin: auto;
}
.topmenu li .inner img {
	width: 100%;
	height: auto;
}
.topmenu li .inner p {
	display: flex;
	flex-direction: column;
  justify-content: center;
  align-items: center;
	margin: 0;
	padding: 0;
	width: auto;
	font-size: 1.2rem;
}
.topkeireki {
	background:rgba(255,255,255,0.5);
	padding: 30px;
}


#kereki {
	border-top: none;
	width: 100%;
	border-bottom: 1px solid #E3E3E3;
	padding: 0;
	margin: 0;
	font-weight: normal;
	margin-bottom: 15px;
	font-size: 1.4rem;
}

dl#kereki dl,dl#kereki dt,dl#kereki dd {
	margin: 0;
	padding: 0;
}

dl#kereki dt,dl#kereki dd {
	padding: 10px;
	text-align: left;
}

dl#kereki dt {
	border-top: 1px solid #f3ebe3;
	clear: left;
	float: none;
	width: auto;
	font-weight: normal;
	background: #f4f3f3;
}
dl#kereki dd {
	border-top: 1px solid #f3ebe3;
	margin-left:auto;
	font-weight: normal;
}

.topstaff {
	background: url("../img/top/staffsp.jpg") no-repeat;
	background-position: top center;
	background-size: cover;
	width: 100%;
	height: 200px;
	margin: 15px 0 20px 0;
}
.topstaff img {
	border: 8px solid #fff;
}


.topMAP {
	margin-bottom: 20px;
}

.accesslogo {
	max-width: 700px;
	margin: auto;
	margin-bottom: 20px;
}
.accesslogo img{
	width: 100%;
	height: auto;
}
	
}



/*================================

トップバナー

=================================*/


.top-banner01 {
	background: #312819;
	padding: 30px 0 30px 0;
}
.topBANNERbox {
	display: flex;
	justify-content:space-between;
	margin: 0;
	padding: 0;
}
.topBANNERbox li {
	width: 49%;
	margin: 0;
}

.topBANNERbox li img {
	width: 100%;
	height: auto;
}


/*================================

トップお知らせ

=================================*/

.top-topics {
	background: #acd9dd;
	background-size: cover;
	background-position: center top;
	padding: 60px 0 30px 0;
}

.top-topics h2 {
	font-size: 3.6rem;
	text-align: center;
	padding: 0;
	margin: 0;
	margin-top: -20px;
	margin-bottom: 20px;
	letter-spacing: 0.3rem;
	font-family: 'Noto Sans JP', sans-serif !important;
	font-weight: 600;
	color:#fff;
}

.topics {
	background: #fff;
	box-sizing: border-box;
	padding: 40px;
	border: 4px solid #0098a5;
	border-radius: 20px;
}
.topics h4 {
	box-sizing: border-box;
	color:#0098a5;
	border-bottom: 2px dotted #0098a5;
	padding: 0;
	margin: 0;
	margin-bottom: 10px;
	padding-bottom: 10px;
	font-size: 2.4rem;
}


.top-rinen {
	padding-bottom: 40px;
}

.top-rinen-head {
	padding-top: 60px;
}
.top-rinen-head h2 {
	padding: 0;
	margin: 0;
	font-size: 3.6rem;
	line-height: 1.5;
	letter-spacing: 0.2rem;
	margin-bottom: 30px;
	text-align: center;
font-family: 'Zen Maru Gothic', serif !important;
}
.top-rinen-head p {
	font-size: 2.2rem;
	line-height: 1.7;
	letter-spacing: 0.2rem;
	margin-bottom: 30px;
	text-align: center;

}

.top-rinen-head h3 {
	padding: 0;
	margin: 0;
	font-size: 2.8rem;
	line-height: 1.5;
	letter-spacing: 0.4rem;
	text-align: center;
	margin-bottom: 20px;
}

.topRINEN {
	border-top: 1px dashed #a28f65;
	margin-top: 20px;
	padding-top: 30px;
}
.topRINEN h2 {
	color: #ef8337;
	text-align: center;
	font-size: 4rem;
}
.topRINEN h3 {
	padding: 0;
	margin: 0;
	font-size: 3.2rem;
	line-height: 1.5;
	letter-spacing: 0.4rem;
	text-align: center;
	margin-bottom: 30px;
}

.topRINEN-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.topRINEN-list li {
	width: 32%;
	list-style-type: none;
	position: relative;
}
.topRINEN-list li img {
	width: 100%;
	height: auto;
	border-radius: 10px;
	margin-bottom: 10px;
}

.topRINEN-list li p {
	font-size: 1.5rem;
	line-height: 1.6;
}
.topRINEN-list li .no {
	position: absolute;
	background: #0098a5;
	text-align: center;
	width: 50px;
	height: 50px;
	font-size: 2rem;
	color:#fff;
	line-height: 50px;
	font-weight: 600;
	border-top-left-radius: 10px;
	border-bottom-right-radius: 10px;
	
}

.top-content02 .block {
	margin-bottom: 60px;
}





@media screen and (max-width: 768px) {
	

/*================================

トップバナー

=================================*/


.top-banner01 {
	background: #312819;
	padding: 20px 0 15px 0;
}
.topBANNERbox {
	display: flex;
	flex-direction: column;
	justify-content:space-between;
	margin: 0 10px;
	padding: 0;
}
.topBANNERbox li {
	width: auto;
	margin: 0;
margin-bottom:10px;
}
.topBANNERbox li img {
	width: 100%;
	height: auto;
}


/*================================

トップお知らせ

=================================*/

.top-topics {
	background-size: cover;
	background-position: center top;
	padding: 20px 0 10px 0;
}

.top-topics h2 {
	font-size: 2rem;
	text-align: center;
	padding: 0;
	margin: 0;
	margin-top: 0px;
	margin-bottom: 15px;
	letter-spacing: 0.3rem;
	font-family: 'Noto Sans JP', sans-serif !important;
	font-weight: 600;
	color:#fff;
}

.topics {
	background: #fff;
	box-sizing: border-box;
	padding: 15px;
	border-radius: 10px;
}
.topics h4 {
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	margin-bottom: 10px;
	padding-bottom: 10px;
	font-size: 1.6rem;
}

.top-rinen {
	padding-bottom: 20px;
}

.top-rinen-head {
	padding-top: 30px;
}
.top-rinen-head h2 {
	padding: 0;
	margin: 0;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0rem;
	margin-bottom: 10px;
	text-align: center;
}
.top-rinen-head h3 {
	padding: 0;
	margin: 0;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: 0.1rem;
	text-align: center;
	margin-bottom: 20px;
}
.top-rinen-head p {
	font-size: 1.5rem;
	line-height: 1.7;
	letter-spacing: 0.2rem;
	margin-bottom: 30px;
	text-align: center;

}

.topRINEN {
	border-top: 1px dashed #a28f65;
	margin-top: 5px;
	padding-top: 10px;
}
.topRINEN h2 {
	color: #ef8337;
	text-align: center;
	font-size: 2rem;
}
.topRINEN h3 {
	padding: 0;
	margin: 0;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0.4rem;
	text-align: center;
	margin-bottom: 15px;
}

.topRINEN-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.topRINEN-list li {
	width: 49%;
	list-style-type: none;
	position: relative;
}
.topRINEN-list li img {
	width: 100%;
	height: auto;
	border-radius: 10px;
	margin-bottom: 10px;
}

.topRINEN-list li p {
	font-size: 1.2rem;
	line-height: 1.4;
}
.topRINEN-list li .no {
	position: absolute;
	background: #0098a5;
	text-align: center;
	width: 30px;
	height: 30px;
	font-size: 1.5rem;
	color:#fff;
	line-height: 30px;
	font-weight: 600;
	border-top-left-radius: 10px;
	border-bottom-right-radius: 10px;
	
}

.top-content02 .block {
	margin-bottom: 60px;
}
	
}








.rinen-title{
	text-align: center;
	font-size: 3rem;
	font-weight: 600;
	color:#b63c01;
	margin-bottom: 20px;
}


#gaiyou02 {
	border-top: none;
	width: auto;
	font-size: 1.6rem;
	line-height: 180%;
	border-bottom: 1px solid #c4c4c4;
	padding: 0;
	margin: 0;
	font-weight: normal;
	
}

dl#gaiyou02 dl,dl#gaiyou02 dt,dl#gaiyou02 dd {
	margin: 0;
	padding: 0;
}

dl#gaiyou02 dt,dl#gaiyou02 dd {
	padding: 15px;
	text-align: left;
}

dl#gaiyou02 dt {
	border-top: 1px solid #c4c4c4;
	clear: left;
	float: left;
	width: 150px;
	font-weight: normal;
}
dl#gaiyou02 dd {
	border-top: 1px solid #c4c4c4;
	margin-left:150px;
	font-weight: normal;
}

.cation {
font-size:1.2rem;
margin-top:5px;
line-height:1.5;
}
.invbn {
width:97%;
margin:60px auto 20px auto;
}
.invbn img {
width:100%;
height:auto;
border-radius: 20px;
}
@media screen and (max-width: 768px) {
.rinen-title{
	text-align: center;
	font-size: 1.8rem;
	font-weight: 600;
	color:#b63c01;
	margin-bottom: 15px;
}


#gaiyou02 {
	border-top: none;
	width: 100%;
	font-size: 1.4rem;
	line-height: 180%;
	border-bottom: 1px solid #c4c4c4;
	padding: 0;
	margin: 0;
	font-weight: normal;
	
}

dl#gaiyou02 dl,dl#gaiyou02 dt,dl#gaiyou02 dd {
	margin: 0;
	padding: 0;
}

dl#gaiyou02 dt,dl#gaiyou02 dd {
	padding: 10px;
	text-align: left;
}

dl#gaiyou02 dt {
	border-top: 1px solid #c4c4c4;
	clear: left;
	float: none;
	width: auto;
	font-weight: normal;
}
dl#gaiyou02 dd {
	border-top: 1px solid #c4c4c4;
	margin-left:auto;
	font-weight: normal;
}
.drPH {
width:58%;
margin:auto;
text-align:center;
display:block;
margin-bottom:15px;
}
.cation {
font-size:1rem;
line-height:1.4;
margin-top:5px;
}
}



.floating-banner {
  position: fixed; /* バナーを追従させる */
  z-index: 99999; /* 他の要素の下に隠れないように */
  bottom: 20px; /* バナーの上下の位置 */
right:20px;
display:block;
width:180px;
margin:10px;
}
.floating-banner image {
  width: 100%; /* 画像の最大幅 */
}

@media screen and (max-width: 768px) {
.pcimg {
			display:none;
		}
.spimg {
			display:block;
		}
.floating-banner {
  position: fixed; /* バナーを追従させる */
  z-index: 99999; /* 他の要素の下に隠れないように */
  bottom: 60px; /* バナーの上下の位置 */
right:0px;
display:block;
width:auto;
margin:10px;
}
.floating-banner image {
  width: 100%; /* 画像の最大幅 */
}
}

.responce_bnr {
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}
.responce_bnr li {
	width: 49%;
margin:0 10px;
	list-style-type: none;
}
.responce_bnr li img {
	width: 100%;
	height: auto
}

@media screen and (max-width: 834px) {
	
.responce_bnr {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin-bottom: 30px;
}
.responce_bnr li {
	width: auto;
margin:0 0px;
	margin-bottom: 10px;
}
.responce_bnr li img {
	width: 100%;
	height: auto
}
	
}


.userBOX {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.userBOX li {
	width: 32%;
	margin-bottom: 10px;
	list-style-type: none;
}
.userBOX li img {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 834px) {
.userBOX {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.userBOX li {
	width: 49%;
	margin-bottom: 10px;
}
.userBOX li img {
	width: 100%;
	height: auto;
}	
}



.swiper{
  width: 100%;
  position: relative;
  overflow: hidden;
}
 
.swiper-wrapper{
  transition-timing-function: linear;
}
 
.swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0px 0;
  background-color: #fcf8df;
}
 
.swiper-slide img{
  display: block;
  width: 100%;
  height: auto;
border-radius: 0px !important;
}
 
/*↓↓↓プログレスバー用のスタイル↓↓↓*/
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{
  transition-timing-function: linear;
  background-color: #333;
}
 
.swiper-pagination-progressbar{
  position: relative;
}


.calling  {
	width: 400px;
	margin: 40px auto 40px;
}
.calling img {
	width: 100%;
	height: auto;
	
}
.calling a {
	pointer-events: none;
}

@media screen and (max-width: 834px) {
.calling  {
	width: 80%;
	margin: 20px auto;
}
.calling img {
	width: 100%;
	height: auto;
	
}
.calling a {
	pointer-events: auto;
}	
}

.visitSCH {
background:#fcf6f5;
padding:20px;
	box-sizing: border-box;
}
.visitSCH .sched {
background:#fcf6f5 !important;
margin-bottom:10px;
padding:0px;
}
.visitSCH .timeSub {
padding:0px;
margin:0;
}
.headBOX {
	 background: url(../img/common/bg03.webp) no-repeat;
	background-attachment: fixed;
	background-size: cover;
	background-position: center top;
}
.head-sch {
	padding: 0px 0;
	max-width: 960px;
	margin: auto;

background:#fcf6f5;
}


@media screen and (max-width: 834px) {
.visitSCH {
background:#fcf6f5;
padding:15px;
	box-sizing: border-box;
}
.visitSCH .sched {
background:#fcf6f5 !important;
margin-bottom:10px;
padding:0px;
}
.visitSCH .timeSub {
padding:0px;
margin:0;
}
.headBOX {
	 background: url(../img/common/bg03.webp) no-repeat;
	background-attachment: fixed;
	background-size: cover;
	background-position: center top;
}
.head-sch {
	padding: 0px 0;
	max-width: 960px;
	margin: auto;

background:#fcf6f5;
}

}


.top-nayami  {
	padding: 40px 0;
}

.nayamiBOX {
	background: #fff;
	border-radius: 20px;
	border: 5px solid #0098a5;
	padding: 30px 40px;
	box-sizing: border-box;
	 position: relative;
  
	margin-bottom: 50px
}
.nayamiBOX:before {
	 content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -60px;
  border: 60px solid transparent;
  border-top: 40px solid #0098a5;
}


.top-nayami h2 {
font-size: clamp(2rem, 4.3vw, 4.2rem);
	text-align: center;
	margin-bottom: 0px;
font-family: 'Zen Maru Gothic', serif !important;
	border-bottom: 5px dotted #2e2118;
	padding-bottom: 10px;
	margin-bottom: 15px;
}
.top-nayami h2 span {
	color:#0098a5;
	text-align: center;
}
.top-nayami ul {
	
}
.nayamiBOX ul li {
    list-style: none;
	text-align: left;
	font-size: 2.4rem;
	line-height: 160%;
	text-indent:0px; 
    margin-left:0px;
	border-bottom: 1px dashed #313131;
	padding-bottom: 10px;
	margin-bottom: 10px;
	font-weight: 600;
	padding-left: 1.5em;
  text-indent: -1.7em;
	font-family: 'Zen Maru Gothic', serif !important;
}
 
.nayamiBOX ul li:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;/*←ココ*/
  content: "\f5c9";
  position: relative;
  left : 0em; 
  margin-right: 10px;
	color:#0098a5;
}
.top-nayami h3 {
font-size: clamp(1.8rem, 3.7vw, 3.6rem);
	text-align: center;
	margin-bottom: 0px;
font-family: 'Zen Maru Gothic', serif !important;
	margin-bottom: 15px;
}


@media screen and (max-width: 834px) {
	
.top-nayami  {
	padding: 20px 0 0;
}

.nayamiBOX {
	background: #fff;
	border-radius: 20px;
	border: 4px solid #0098a5;
	padding: 15px 15px;
	box-sizing: border-box;
	 position: relative;
	margin-bottom: 50px
}
.nayamiBOX:before {
	 content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -60px;
  border: 60px solid transparent;
  border-top: 40px solid #0098a5;
}


.top-nayami h2 {
font-size: clamp(2rem, 4.3vw, 4.2rem);
	text-align: center;
	margin-bottom: 0px;
font-family: 'Zen Maru Gothic', serif !important;
	border-bottom: 3px dotted #2e2118;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.top-nayami h2 span {
	text-align: center;
}
.top-nayami ul {
	
}
.nayamiBOX ul li {
    list-style: none;
	text-align: left;
	font-size: 1.6rem;
	line-height: 140%;
	text-indent:0px; 
    margin-left:0px;
	border-bottom: 1px dashed #313131;
	padding-bottom: 10px;
	margin-bottom: 10px;
	font-weight: 600;
	padding-left: 1.5em;
  text-indent: -1.5em;
	font-family: 'Zen Maru Gothic', serif !important;
	letter-spacing: 0;
}
 
.nayamiBOX ul li:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;/*←ココ*/
  content: "\f5c9";
  position: relative;
  left : 0em; 
  margin-right: 10px;
	color:#0098a5;
}
.top-nayami h3 {
font-size: clamp(1.7rem, 3.7vw, 3.6rem);
	text-align: center;
	margin-bottom: 0px;
font-family: 'Zen Maru Gothic', serif !important;
	margin-bottom: 10px;
	letter-spacing: 0;
}
	
}

/*================================

訪問歯科追加

=================================*/

table#table-02 {
    width: 100%;
    border: 1px #E3E3E3 solid;
    border-collapse: collapse;
    border-spacing: 0;
	box-sizing: border-box;
	font-size: 1.5rem;
margin-bottom:10px;
table-layout: fixed; /* 列幅を固定する */
}

table#table-02 th {
    padding: 10px;
    border: #E3E3E3 solid;
    border-width: 0 0 1px 1px;
    background: #fcf6f5;
    font-weight: 600;
    line-height: 120%;
    text-align: left;
	vertical-align: middle;
	width: 25%;
}
table#table-02 td {
    padding: 10px;
    border: 1px #E3E3E3 solid;
    border-width: 0 0 1px 1px;
    text-align: left;
	vertical-align: middle;
	background: #fff;
}
table#table-02 td span {
   font-size: 24px;
}

/*==================================================
アコーディオンのためのcss
===================================*/

/*アコーディオン全体*/
.accordion-area{
    list-style: none;
    margin:0 auto;
}

.accordion-area li{
    margin: 10px 0;
}

/*アコーディオンタイトル*/
.acdtitle {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-weight: normal;
	background: #f3ac02;
	padding: 12px 15px 12px 25px;
	color:#fff;
	font-size: 2rem;
border-radius: 4px;
font-weight:600;
line-height:1.6;
	

}

/*アイコンの＋と×*/
.acdtitle::before,
.acdtitle::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #fff;
    
}
.acdtitle::before{
    top:48%;
    right: 15px;
    transform: rotate(0deg);
    
}
.acdtitle::after{    
    top:48%;
    right: 15px;
    transform: rotate(90deg);

}
/*　closeというクラスがついたら形状変化　*/
.acdtitle.close::before{
  transform: rotate(45deg);
}

.acdtitle.close::after{
  transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.accordion-area .box {
    display: none;/*はじめは非表示*/
    background: #fff;
  margin:20px 0;
    padding: 3%;
	border-radius: 10px;
}

.waku {
	background: #f5f5f4;
	border: 1px solid #e3e3e2;
	padding: 20px;
	box-sizing: border-box;
	margin-bottom: 20px;
}
.waku p {
	margin-bottom: 0px;
}

.td03 {
	width: 25%;
}
.td04 {
	width: 25%;
}


/* 019 */
.button019 a {
    background: #f3ac02;
    border-radius: 5px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    width: 100%;
    padding: 10px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 600;
	text-decoration: none;
	font-size: 1.8rem;
	
	
}
.button019 a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: translateY(-50%) rotate(45deg);
}
.button019 a:hover {
  background: #88c6d9;
  color: #FFF;
}
.button019 a:hover:after {
  right: 1.4rem;
}
.selectBOX {
	display: flex;
	justify-content: center;
	margin: 20px 0 20px;
}
.selectBOX li {
	list-style-type: none;
	width: 49%;
	margin: 0 5px;
}



@media screen and (max-width: 834px) {

table#table-02 {
    width: 100%;
    border: 1px #E3E3E3 solid;
    border-collapse: collapse;
    border-spacing: 0;
	box-sizing: border-box;
	font-size: 1.3rem;
margin-bottom:10px;
table-layout: fixed; /* 列幅を固定する */
}

table#table-02 th {
display:block;
    padding: 10px;
    border: #E3E3E3 solid;
    border-width: 0 0 1px 0px;
    background: #fcf6f5;
    font-weight: 600;
 line-height: 1.4;
    text-align: left;
	vertical-align: middle;
	width: 100%;
box-sizing: border-box;
}
table#table-02 td {
display:block;
    padding: 10px;
    border: 0px #E3E3E3 solid;
    border-width: 1px 0 1px 0px;
    text-align: left;
	vertical-align: middle;
	background: #fff;
 line-height: 1.4;
box-sizing: border-box;
}
table#table-02 td:last-child {
 border-width: 0 0 0px 0px;
}
table#table-02 td span {
   font-size: 1.2rem !important;
}

/*アコーディオン全体*/
.accordion-area{
    list-style: none;
    margin:0 auto;
}

.accordion-area li{
    margin: 10px 0;
}

/*アコーディオンタイトル*/
.acdtitle {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-weight: normal;
	background: #f3ac02;
	padding: 8px 10px 8px 15px;
	color:#fff;
	font-size: 1.6rem;
border-radius: 4px;
font-weight:600;
line-height:1.6;
	

}

/*アイコンの＋と×*/
.acdtitle::before,
.acdtitle::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #fff;
    
}
.acdtitle::before{
    top:48%;
    right: 15px;
    transform: rotate(0deg);
    
}
.acdtitle::after{    
    top:48%;
    right: 15px;
    transform: rotate(90deg);

}
/*　closeというクラスがついたら形状変化　*/
.acdtitle.close::before{
  transform: rotate(45deg);
}

.acdtitle.close::after{
  transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.accordion-area .box {
    display: none;/*はじめは非表示*/
    background: #fff;
  margin:20px 0;
    padding: 3%;
	border-radius: 10px;
}

.waku {
	background: #f5f5f4;
	border: 1px solid #e3e3e2;
	padding: 20px;
	box-sizing: border-box;
	margin-bottom: 20px;
}
.waku p {
	margin-bottom: 0px;
}

.td03 {
	width: auto;
}
.td04 {
	width: auto;
}

.illIMG img {
width:60% !important;
margin: auto;
  display: block;
margin:auto;
}


/* 019 */
.button019 a {
    background: #f3a600;
    border-radius: 5px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    width: 100%;
    padding: 10px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 600;
	text-decoration: none;
	font-size: 1.8rem;
	
	
}
.button019 a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: translateY(-50%) rotate(45deg);
}
.button019 a:hover {
  color: #FFF;
}
.button019 a:hover:after {
  right: 1.4rem;
}
.selectBOX {
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 20px auto;
	width: 80%;
}
.selectBOX li {
	list-style-type: none;
	width: 100%;
	margin: 0 auto 5px;
}
}

.fvPC {
	position: relative;
	display: block;
}


.fvSP {
	position: relative;
	display: none;
}


.slider-wrap {
  height: 600px;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
	padding: 0;
	position: relative;
}

.slide-item >img {
  width: 100%;
  height: 600px;
  object-fit: cover;
	
}

.fvH2 {
	background: #0098a5;
	text-align: center;
	padding: 10px;
	font-size: clamp(1.8rem, 2.9vw, 3rem);
	color:#fff;
	font-family: 'Zen Maru Gothic', serif !important;
	box-sizing: border-box;
}

.fvTITLE {
	position: absolute;
  right: 0;
  left: 0;
	bottom:20px;;
  margin: 0 auto;
	z-index: 1;
	text-align: center;
	max-width: 1000px;
	margin-top: 30px;
}

@media screen and (max-width: 1000px) {
	
.slider-wrap {
  height: 400px;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
	padding: 0;
	position: relative;
}
	
.slide-item >img {
  width: 100%;
  height: 400px;
  object-fit: cover;
	
}
.fvTITLE {
	position: absolute;
  right: 0;
  left: 0;
	bottom:20px;;
  margin: 0 auto;
	z-index: 1;
	text-align: center;
	max-width: 80%;
	margin-top: 30px;
}
	
}

@media screen and (max-width: 640px) {
	
.fvPC {
	position: relative;
	display: none;
}
	
.fvSP {
	position: relative;
	display: block;
}
	.fvSP:after {
	content: "";
  position: absolute;
  bottom: 0;          /* 下端に配置 */
  left: 0;
  width: 100%;
  height: 30%;      /* 画像の高さに合わせて調整 */
  background: none;
		background-position: center top;
	background-repeat: no-repeat;
  background-size: cover; /* coverかcontainかは用途次第 */
  pointer-events: none;   /* クリックを透過させたい場合 */

}


.slider-wrap {
  height: 500px;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
	padding: 0;
	position: relative;
}

.slide-item >img {
  width: 100%;
  height: 500px;
  object-fit: cover;
	
}

.fvTITLE {
	position: absolute;
  right: 0;
  left: 0;
  margin: 0 auto;
	z-index: 1;
	text-align: center;
	max-width: 98%;
	margin-top: 100px;
}
	
.fvH2 {
	background: #0098a5;
	text-align: center;
	padding: 5px;
	font-size: clamp(1.8rem, 2.9vw, 3rem);
	color:#fff;
	font-family: 'Zen Maru Gothic', serif !important;
	box-sizing: border-box;
}
	
}


@keyframes fadezoom {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.1);
  }
}

.slick-animation {
  animation: fadezoom 10s 0s forwards;
}


.pcimg {
			display:block;
		}
.spimg {
			display:none;
		}

.floating-banner {
  position: fixed;
  z-index: 99999;
  bottom: 20px;
  right: 20px;
  display: none; /* ← 追加：初期状態は非表示 */
  width: 180px;
  margin: 10px;
}
.floating-banner image {
  width: 100%; /* 画像の最大幅 */
}

@media screen and (max-width: 768px) {
.pcimg {
			display:none;
		}
.spimg {
			display:block;
		}
.floating-banner {
  position: fixed; /* バナーを追従させる */
  z-index: 99999; /* 他の要素の下に隠れないように */
  bottom: 50px; /* バナーの上下の位置 */
right: 0;
  left: 0;
width:auto;
margin:10px auto;
max-width:350px;
}
.floating-banner image {
  width: 100%; /* 画像の最大幅 */
}
}

.responce_bnr {
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}
.responce_bnr li {
	width: 49%;
margin:0 10px;
	list-style-type: none;
}
.responce_bnr li img {
	width: 100%;
	height: auto
}
.hoikuBOX {
	display: flex;
	justify-content: space-between;
}
.hoikuBOX .ph {
	width: 38%;
}
.hoikuBOX .txt {
	width: 60%;
}
@media screen and (max-width: 834px) {
	
.responce_bnr {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin-bottom: 30px;
}
.responce_bnr li {
	width: auto;
margin:0 0px;
	margin-bottom: 10px;
}
.responce_bnr li img {
	width: 100%;
	height: auto
}
.reasonbg h4 {
font-size: clamp(1.6rem, 2.4vw,2.4rem);
	background: #dfeff0;
	padding: 10px;
	margin-bottom: 10px;
	font-family: 'Zen Maru Gothic', serif !important;
	text-align: center;
	box-sizing: border-box;

}
.hoikuBOX {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.hoikuBOX .ph {
	width: 80%;
	margin: auto;
	margin-bottom: 15px;
}
.hoikuBOX .txt {
	width: auto;
}	
}



.top-prPOINT {
	background-size: cover;
	background-position: center top;
	padding: 30px 0 30px 0;
}

.top-prPOINT h2 {
  font-size: clamp(2rem, 3.3vw, 3.6rem);
	text-align: center;
	font-family: 'Zen Maru Gothic', serif !important;
	line-height: 1.6;
	margin-bottom: 15px;
}
.top-prPOINT .img {
	width: 100%;
}
.top-prPOINT .img img {
	box-sizing: border-box;
	margin-bottom: 15px;
}

.top-prPOINT p {
  font-size: clamp(1.5rem, 1.8vw, 1.8rem);
}


@media screen and (max-width: 834px) {
.top-prPOINT {
	background-size: cover;
	background-position: center top;
	padding: 30px 0 30px 0;
	
}

.top-prPOINT h2 {
  font-size: clamp(2rem, 3.23vw, 3.2rem);
	text-align: center;
	line-height: 1.6;
	margin-bottom: 15px;

	
}
.top-prPOINT .img {
	width: 100%;
}
.top-prPOINT .img img {
	box-sizing: border-box;
	margin-bottom: 10px;
}	
}


/* 初期状態（透明＋上に少しずらす） */
.scroll-fade {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}

/* フェードイン後 */
.scroll-fade.show {
  opacity: 1;
  transform: translateY(0);
}

/* 初期状態（透明 & 下に少しずらす） */
.fadein {
  opacity: 0;
  transform: translateY(20px); /* 浮き上がり感を強くする */
  transition: opacity 1s ease-out, transform 1s ease-out;
}
/* フェードイン状態 */
.fadein.in-view {
  opacity: 1;
  transform: translateY(0);
}


/* 初期状態：透明＋右にズレている */
.slide-right {
  opacity: 0;
  transform: translateX(40px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}

/* スライドイン後 */
.slide-right.show {
  opacity: 1;
  transform: translateX(0);
}

/* 初期状態：透明＋左にズレている */
.slide-left {
  opacity: 0;
  transform: translateX(-40px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}

/* スライドイン後（表示状態） */
.slide-left.show {
  opacity: 1;
  transform: translateX(0);
}

.tel a {
text-decoration:none;
}

.responce_bnr {
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}
.responce_bnr li {
	width: 49%;
margin:0 10px;
	list-style-type: none;
}
.responce_bnr li img {
	width: 100%;
	height: auto
}
.reasonbg h4 {
font-size: clamp(1.7rem, 2.4vw,2.4rem);
	background: #dfeff0;
	padding: 10px;
	margin-bottom: 10px;
	font-family: 'Zen Maru Gothic', serif !important;
	text-align: center;
	box-sizing: border-box;

}
.hoikuBOX {
	display: flex;
	justify-content: space-between;
}
.hoikuBOX .ph {
	width: 38%;
}
.hoikuBOX .txt {
	width: 60%;
}
@media screen and (max-width: 834px) {
	
.responce_bnr {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin-bottom: 30px;
}
.responce_bnr li {
	width: auto;
margin:0 0px;
	margin-bottom: 10px;
}
.responce_bnr li img {
	width: 100%;
	height: auto
}
.reasonbg h4 {
font-size: clamp(1.6rem, 2.4vw,2.4rem);
	background: #dfeff0;
	padding: 10px;
	margin-bottom: 10px;
	font-family: 'Zen Maru Gothic', serif !important;
	text-align: center;
	box-sizing: border-box;

}
.hoikuBOX {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.hoikuBOX .ph {
	width: 80%;
	margin: auto;
	margin-bottom: 15px;
}
.hoikuBOX .txt {
	width: auto;
}	
}

