@charset "utf-8";


/* 幅644px以下から ヘッダー等微調節
--------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 481px){
	img {
		max-width: 100%;
	}

.white {
	width:90%;
	margin:30px auto;
}
	
.spDisp {
	display:block;
}

.spHide {
	display:none;
}

.box {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

.img100 img{
	width:100%;
	height:auto;
}

/*　見出し・画像　*/

.pic-left {
	float: none;
	width:94%;
	height:auto;
}



/*　見出し・画像　*/

.midashi1_g {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 30px;
	margin-bottom: 40px;
	text-align: center;
	color: #747472;
}

.midashi1_g span{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 30px;
	text-align: center;
	color: #888985;
}

.midashi1_w {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 40px;
	margin-bottom: 6%;
	text-align: center;
	color: #E1E1D8;
}

.midashi2 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 24px;
	margin-bottom: 30px;
	color: #646561;
}

.midashi3 {
	display: flex;
	align-items: center;
	gap: 18px;           /* 見出しと線の間隔 */
	font-size: 18px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	margin-bottom: 20px;
}

.midashi3::after{
	content: "";
	flex: 1;             /* ここで右側を伸ばす */
	height: 1px;    /* 線の色 */
	border-radius: 1px;
	background-color: #D2D2D2;
}

.midashi4 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 20px;
	border-left-width: 4px;
	border-left-style: solid;
	border-left-color: #888985;
	padding-left: 18px;
}





/*　ヘッダー　*/


header {
	overflow: hidden;
}

.header_cont {
	width: 100%;
	background-repeat: repeat;
	overflow: hidden;
	background-image: url(../img/main_imgb.webp);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size:cover;
}

.header_logo {
	float: none;
	padding-top: 20px;
	padding-bottom: 35px;
	width: 100%;
	text-align: center;
}

.header_logo img{
	width: 65%;
	height: auto;
	margin-right: auto;
	margin-left: auto;
}


/*　メインイメージ　*/

.main_img {
	width: 40%;
        padding: 10% 0 11% 7%;
}

.main_img img{
	width:100%;
	height:auto;
}

.main_img h2 img{
	width:100%;
	height:auto;
}

.main1_wrap {
	background: linear-gradient(1deg, #fdfefe, #e9e0d8);
	padding-top:60px;
}

.main1 {
	background-image: url(../img/main1_back.webp);
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: 80%;
}

.main1 h2 {
	font-family: quiche-sans, sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: 60px;
	text-align: center;
	color: #9BA7AA;
	margin-bottom: 50px;
	line-height: 1.1em;
}

.main1_1 {
	margin-bottom: 80px;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

.main1_1t {
	width:100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom:40px;
}

.main1_1t h3{
	font-size: 20px;
	color: #76776C;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	width: 100%;
	margin-bottom: 60px;
	text-align: center;
}

.main1_1t p{
	color: #76776C;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	width:100%;
	line-height:2.5em;
}

.main1_1p {
	width:100%;
}

.main1_1p img{
	width:100%;
	height:auto;
}

.main1_2 {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	padding-bottom:100px;
}

.main1_2 h3{
	font-family: "Noto Serif JP", serif;
	font-weight: 400;
	font-size: 50px;
	color: #8F8F92;
	text-align: center;
	margin-bottom:15px;
}

.main1_2 h4{
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	font-size: 16px;
	color: #8F8F92;
	text-align: center;
	margin-bottom:80px;
}

.main1_2 ul {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	margin-bottom:30px;
}

.main1_2 ul li {
	border-top-width: 2px;
	border-top-style: solid;
	border-top-color: #CFCEC1;
	width:100%;
	padding-top:30px;
	padding-bottom:30px;
}

.main1_2 ul li h3 {
	color: #B8BEC1;
	font-size: 15px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	text-align: center;
	margin-bottom:30px;
}

.main1_2 ul li h3 span{
	color: #B8BEC1;
	font-size: 21px;
	margin-right:15px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
}

.main1_2 ul li div {
	display: flex;
	justify-content: center;
	align-items: center;
	height:80px;
}

.main1_2 ul li p{
	color: #8F8F92;
	font-size: 20px;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	line-height:1.6em;
}

.main1_btn {
	display: flex;
	justify-content: center;
	width: 80%;
	text-align: center;
	text-decoration: none;
	margin-right: auto;
	margin-left: auto;
	padding-top: 20px;
	padding-bottom: 25px;
	border: 1px solid #8F8F92;
}

.main1_btn p{
	font-size: 20px;
	color: #7D7D80;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
}

.main1_btn:hover {
	background-color: #F1F1EF;
	border: 1px solid #F1F1EF;
}

.main2 {
	background-color: #EFEFEF;
	background-image: url(../img/main2_back.webp);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size:100%;
}

.main2_c {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	padding:5% 0 15% 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.main2_pic {
	width: 70%;
	padding: 5%;
	margin-right: auto;
	margin-left: auto;
}

.main2_pic img {
	width:100%;
	height:auto;
	transition: opacity 0.4s ease;
}

.main2_pic img.fade {
  opacity:0.3;
}

.main2_list {
	width:100%;
}

.main2_list ul {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}

.main2_list ul li{
	width:100%;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #BABEB6;
}

.main2_list ul li a{
	display: block;
	padding: 15px 0px 15px 10px;
	text-decoration: none;
	color: #8F8F92;
	font-family: "Noto Serif JP", serif;
	font-weight: 400;
	font-size: 18px;
	background-image: url(../img/main2_arr.svg);
	background-repeat: no-repeat;
	background-position: right center;
	background-size:35px;
}

.main2_list ul li a:hover{
	 opacity:0.3;
}

.main3 {
	background-image: linear-gradient(2deg, #c9d2d7, #94acb6 48%, #aabac3);
	padding-top: 70px;
}

.main3_1 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 70px;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

.main3_1 div:nth-child(1){
	width:100%;
}

.main3_1 div:nth-child(1) h4{
	font-family: quiche-sans, sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: 60px;
	color: #FCFBEF;
	line-height:1.1em;
	margin-bottom:30px;
}

.main3_1 div:nth-child(2){
	width:100%;
}

.main3_1 div:nth-child(2) ul{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin-right:0.5%;
}

.main3_1 div:nth-child(2) ul li{
	width:33%;
}

.main3_1 div:nth-child(2) ul li img{
	width:100%;
	height:auto;
}

.main3_back {
	background-image: url(../img/main3_back.webp);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size:100%;
}

.main3_2 {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 80px;
}

.main3_2 h4{
	font-family: "Noto Serif JP", serif;
	font-weight: 400;
	font-size: 40px;
	color: #EFEFEF;
	margin-bottom:40px;
}

.main3_2 ul {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.main3_2 ul li{
	width:31%;
	margin-bottom:3%;
}

.main3_2 ul li img{
	width:100%;
	height:auto;
	margin-bottom:20px;
}

.main3_2 ul li p{
	font-size:14px;
	line-height:1.4em;
}

.main3_3 {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	padding-bottom:80px;
}

.main3_3 div{
	width:100%;
	margin-bottom:40px;
}

.main3_3 div h4{
	font-family: quiche-sans, sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: 50px;
	color: #FCFBEF;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFFFFC;
	padding-bottom:20px;
}

.main3_3 div h4 span{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 16px;
	color: #FCFBEF;
	margin-left:20px;
}

.main3_3 div p{
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFFFFC;
	padding:20px 10px;
	color: #FCFBEF;
}

footer {
	background-color: #B1BFC8;
	color: #FFF;
	padding-top: 70px;
}

.footer_c {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

.foot1_1 {
	width: 100%;
	margin-bottom: 10px;
	text-align: center;
}

.foot1_1 img{
	width:100%;
	height:auto;
}

.foot1_2 {
	width:100%;
}

.foot_logo {
	width: 70%;
	margin-bottom: 40px;
	margin-right: auto;
	margin-left: auto;
}

.foot_logo img{
	width:100%;
	height:auto;
}

.foot_map {
	margin-bottom:30px;
}

.foot_map a {
	font-size: 18px;
	color: #FFF;
	text-decoration: none;
	padding-bottom: 10px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
	background-image: url(../img/foot_gm.svg);
	background-repeat: no-repeat;
	background-position: right center;
	background-size:20px;
	padding-right:30px;
	letter-spacing:0.1em;
}

.foot_map a:hover {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #D9D9D9;
	color: #D9D9D9;
	background-image: url(../img/foot_gm-h.svg);
}

.foot_phone {
	width: 80%;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #FFF;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 15px;
	padding-right: 0;
	padding-bottom: 15px;
	padding-left: 0;
}

.foot_phone p{
	background-image: url(../img/foot_phone.svg);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 13px;
	padding-left: 25px;
	font-size: 18px;
	letter-spacing: 0.05em;
}

.foot_phone p a{
	color: #FFF;
	text-decoration: none;
}

.foot_hour {
	margin-bottom: 40px;
	border-collapse: collapse;
	width: 100%;
}

.foot_hour th{
	vertical-align: middle;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
	text-align: center;
	font-size: 16px;
	padding-left: 5px;
	line-height: 1.4em;
}

.foot_hour td{
	text-align: center;
	vertical-align: middle;
	width: 35px;
	padding-right: 3px;
	padding-left: 3px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
	font-size: 15px;
	line-height: 1em;
	height: 70px;
}

.foot_hour td span{
	font-size: 12px;
}

.footn_2 {
	width: 100%;
	margin-bottom:30px;
}

.foot_btn {
	display: flex;
	justify-content: center;
	width: 70%;
	text-align: center;
	text-decoration: none;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	padding-top: 10px;
	padding-bottom: 15px;
	border: 1px solid #FFF;
	margin-right: auto;
	margin-left: auto;
}

.foot_btn p{
	font-size: 18px;
	color: #FFFFFF;
	letter-spacing:0.05em;
}

.foot_btn p span{
	font-size: 16px;
	color: #FFFFFF;
	margin-right:20px;
	letter-spacing:0.1em;
}

.foot_btn:hover {
	background-color: #E5E5E5;
}

.copyright {
	padding-bottom: 20px;
	color: #FFF;
	font-size: 12px;
	text-align: center;
}



/*　中ページ　*/


.page_wrap {
	background: url(../img/page_back1.webp),url(../img/page_back2.webp),linear-gradient(1deg, #d7dee3, #c3d1d9 36%, #fefefd 74%, #dad1ca);
	background-position:top right,bottom left;
	background-size: 50%,100%,cover;
	background-repeat:no-repeat, no-repeat;
	padding-bottom:120px;
	padding-top: 70px;
}

.page_title {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-wrap: wrap;
	padding-top: 40px;
	padding-bottom: 40px;
}

.page_title div:nth-child(1){
	width:100%;
}

.page_title div:nth-child(2){
	width:100%;
}

.page_title h3 {
	font-size: 50px;
	font-family: "quiche-sans", sans-serif;
	font-weight: 300;
	font-style: normal;
	color: #AAA99E;
	letter-spacing:-0.05em;
	line-height:0.8em;
	margin-bottom:20px;
}

.page_title h4 {
	font-size: 20px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	color: #8C8C87;
}

.page_title h5 {
	font-size: 15px;
	color: #8c8c7a;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	text-align: right;
	line-height: 1.6em;
}

.page_area {
	width: 86%;
	margin-right: auto;
	margin-left: auto;
}

.page_cont {
}

.page_main {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 50px;
}

.page_main div:nth-child(1){
	order: 1;
	width:100%;
	margin-bottom:30px;
}

.page_main div:nth-child(1) img{
	width:100%;
	height:auto;
}

.page_main div:nth-child(2){
	order: 2;
	width:100%;
}

.page_main div:nth-child(2) p{
	margin:0 7%;
}

.cont_jmp {
	margin-bottom: 8%;
}

.cont_jmp ul{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.cont_jmp li{
	padding: 10px 0 25px 0;
	text-align: center;
	display: block;
	background-image: url(../img/jump_arr.svg);
	background-repeat: no-repeat;
	background-position: center 45px;
	background-size: 25px;
	border: 1px solid #93938E;
	width:100%;
	margin-bottom:10px;
}

.cont_jmp li a{
	color: #93938E;
	font-size: 19px;	
	padding-bottom: 10px;
	text-decoration: none;
}

.cont_jmp li a:hover{
	opacity: 0.6;
    filter: alpha(opacity=60);
    -moz-opacity: 0.6;
}

.page_section {
	margin-bottom: 60px;
}

.page_nunber {
	width: 85%;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	margin-bottom:100px
}

.page_nunber img{
	width:100%;
	height:auto:
}

.page_nb {
	width: 100%;
	margin-bottom: 40px;
}

.nb_midashi {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 40px;
}

.nb_midashi p:nth-child(1){
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 65px;
	line-height:1.0em;
	margin-right: 10px;
}

.nb_midashi p:nth-child(2){
	font-family: "Noto Serif JP", serif;
	font-weight: 400;
	font-size: 20px;
	line-height: 1.5em;
	letter-spacing:0.05em;
	padding-top:5px;
}

.nb_txt {
	line-height: 1.8em;	
}

.page_flow {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}


.page_flow ul {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.page_flow ul li{
	background-color: #F8F7F5;
	padding: 5%;
	width: 90%;
	margin-bottom:2%;
}

.page_flow ul li h4{
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #9E9F99;
	font-size: 20px;
	text-align: center;
	margin-bottom: 20px;
	padding-bottom: 20px;
	padding-top:10px;
}

.page_price {
	background-color: #FAFCFB;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	padding: 5% 5% 10% 5%;
}

.page_price dl{
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #D3D3D2;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.page_price dl dt{
	font-size: 19px;
	color: #878672;
	padding:20px 10px 10px 10px;
	width:100%;
}

.page_price dl dd{
	font-size: 19px;
	color: #878672;
	text-align: right;
	padding:0 10px 20px 10px; 
	width:100%;
}

.page_price p {
	font-size: 19px;
	color: #7B8A93;
	padding-top: 40px;
	padding-bottom: 40px;
	text-align: left;
	line-height: 1.8em;
}



/*　要素　*/

.page_cl1 {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom:40px;
}

.page_cl1 div:nth-child(1){
	width:100%;
	margin-bottom:20px;
}

.page_cl1 div:nth-child(2){
	width:100%;
}

.page_cl1 div:nth-child(2) img{
	width:100%;
	height:auto;
}

.page_cl2 {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom:40px;
}

.page_cl2 div:nth-child(1){
	width:100%;
	order: 1;
	margin-bottom:20px;
}

.page_cl2 div:nth-child(2){
	width:100%;
	order: 2;
}

.page_cl2 div:nth-child(2) img{
	width:100%;
	height:auto;
}

.page_cl3 {
	width: 80%;
	margin-right: auto;
	margin-left: auto;
}

.page_cl3 ul{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.page_cl3 ul li{
	width: 29%;
	margin-bottom: 30px;
}

.page_cl3 ul li img{
	width:100%;
	height:auto;
	margin-bottom:30px;
}

.page_cl3 ul li h3 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 28px;
	margin-bottom: 30px;
	color: #888985;
	text-align: center;
}

.page_cls {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	margin-bottom:40px;
}

.page_cls div:nth-child(1){
	width: 100%;
	margin-bottom:30px;
}

.page_cls div:nth-child(1) img{
	width:100%;
	height:auto;
}

.page_cls div:nth-child(2){
	width: 100%;
}


/* 中ページ　*/

.guide_y {
	background-color: #F4F4F4;
	padding: 6%;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	width: 88%;
	margin-right: auto;
	margin-left: auto;
}

.guide_y ul {
	margin-bottom:20px;
}

.guide_y ul li {
	font-size: 17px;
	font-weight: bold;
	text-align: left;
	margin-bottom:10px;
	text-indent:-1em;
	padding-left:1em;
}

.guide_li {
	margin-bottom: 150px;
}

.guide_li ul li{
	text-indent: -1em;
	padding-left: 1em;
	list-style-type: none;
	margin-bottom:10px;
}

.guide_y p {
	width:100%;
	text-align:center;
}

.doctor_c1 {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	margin-bottom:40px;
	width: 86%;
	margin-right: auto;
	margin-left: auto;
}

.doctor_c1 div:nth-child(1){
	width:80%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom:30px;
}

.doctor_c1 div:nth-child(1) img{
	width:100%;
	height:auto;
}

.doctor_c1 div:nth-child(2){
	width:100%;
}

.doctor_c1 div:nth-child(2) h4{
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size: 32px;
	margin-bottom: 20px;
	letter-spacing: 0.1em;
	text-align: center;
}

.doctor_c1 div:nth-child(2) h4 span{
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size:20px;
	margin-right:20px;
	text-align: center;
}

.doctor_c1 div:nth-child(2) h5{
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size:20px;
	margin-bottom:15px;
	letter-spacing:0.1em;
	text-align: center;
}

.doctor_c1 table {
	border-collapse:collapse;
}

.doctor_c1 table th{
	font-size: 16px;
	width: 120px;
	text-align: left;
}

.doctor_c1 table td{
	font-size:16px;
}

.doctor_c2 {
	background-color: #f3f2f2;
	padding: 5%;
	width: 80%;
	margin-right: auto;
	margin-left: auto;
	border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}

.doctor_c2 ul{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.doctor_c2 ul li{
	width:100%;
	text-indent:-1em;
	padding-left:1em;
	font-size:15px;
}

.doctor_c2 ul li a{
	color: #575755;
	text-decoration: underline;
}

.doctor_c3 {
	width: 85%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom:8%;
}

.book_wrap {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.book {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 30px;
}

.book div:nth-child(1){
	width:100px;
	margin-right:20px;
}

.book div:nth-child(1) img{
	width:100%;
	height:auto;
	margin-bottom:10px;
}

.book div:nth-child(2){
	flex: 1;
}

.book_btn {
	display: flex;
	justify-content: center;
	width: 100%;
	text-align: center;
	text-decoration: none;
	margin-right: auto;
	margin-left: auto;
	border: 1px solid #575755;
}

.book_btn p{
	font-size: 16px;
	color: #575755;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
}

.book_btn:hover {
	background-color: #F1F1EF;
	border: 1px solid #F1F1EF;
}

.book h6{
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	margin-bottom: 19px;
}

.book p{
	font-size: 14px;
	line-height:1.5em;
}

.acc_1 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 8%;
}

.acc_1 div:nth-child(1){
	order: 1;
	width:100%;
	margin-bottom:20px;
}

.acc_1 div:nth-child(1) img{
	width:100%;
	height:auto;
}

.acc_1 div:nth-child(2){
	order: 2;
	width:100%;
}

.acc_1 div:nth-child(2) h3{
	margin-bottom:30px;
	margin-right: 10%;
	margin-left: 10%;
	font-size:30px;
	letter-spacing:0.05em;
}

.acc_1 div:nth-child(2) dl{
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-wrap: wrap;
	margin-right: 10%;
	margin-bottom: 25px;
	margin-left: 10%;
}

.acc_1 div:nth-child(2) dl dt{
	width: 100%;
	font-size: 19px;
	margin-bottom: 10px;
	padding-bottom:10px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}

.acc_1 div:nth-child(2) dl dt dd{
	width:100%;
	font-size:19px;
}

.acc_hour {
	border-collapse: collapse;
	width: 100%;
	margin-bottom:20px;
}

.acc_hour th{
	vertical-align: middle;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #AAA99E;
	text-align: center;
	font-size: 16px;
	line-height:1.4em;
}

.acc_hour td{
	text-align: center;
	vertical-align: middle;
	width: 11.5%;
	padding-right: 5px;
	padding-left: 5px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #AAA99E;
	font-size: 18px;
	line-height: 1em;
	height: 90px;
}

.acc_hour td span{
	font-size: 12px;
}

.acc_hourt {
	text-align: right;
}

.acc_2 {
	display: flex;
	justify-content:center;
	align-items: stretch;
	flex-wrap: wrap;
}

.acc_2in {
	width:100%;
	margin-bottom:40px;
}

.acc_2in h4{
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size: 20px;
	margin-bottom: 20px;
	padding-bottom: 15px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
}

.acc_2in p{
	padding-top:10px;
}

.map iframe {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
}

.acc_3 {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.acc_3in{
	width:100%;
	margin-bottom:40px;
}

.acc_3in img{
	width: 100%;
	height: auto;
	margin-bottom: 40px;
}

.acc_3in h4{
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size: 20px;
	margin-bottom: 30px;
	padding-bottom: 20px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
}


.acc_4 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;
}

.acc_4l {
	width: 100%;
	margin-bottom:20px;
}

.acc_4r {
	width: 100%;
}

.acc_4r p{
	padding-top:10px;
	text-align:center;
}

.acc_btn {
	display: flex;
	justify-content: center;
	width: 80%;
	text-align: center;
	text-decoration: none;
	padding-top: 5px;
	padding-bottom: 10px;
	border: 1px solid #575755;
	margin-right: auto;
	margin-left: auto;
}

.acc_btn p{
	font-size: 17px;
	color: #575755;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
}

.acc_btn:hover {
	background-color: #F1F1EF;
	border: 1px solid #F1F1EF;
}

.infe_cl1 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 60px;
}

.infe_cl1 div:nth-child(1){
	width:100%;
	margin-bottom:30px;
}

.infe_cl1 div:nth-child(2){
	width:100%;
}

.infe_cl1 div:nth-child(2) img{
	width:100%;
	height:auto;
}

.infe_cl2 {
	margin-bottom: 30px;
}

.infe_cl2 ul{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.infe_cl2 ul li{
	width:100%;
	margin-bottom: 30px;
}

.infe_cl2 ul li img{
	width:100%;
	height:auto;
	margin-bottom:30px;
}

.infe_cl2 ul li h3 {
	font-family: "Noto Serif JP", serif;
	font-weight: 400;
	font-size: 23px;
	margin-bottom: 30px;
	color: #6C6D69;
	text-align: center;
}

.infe_c3 {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.infe_c3 div{
	width:100%;
	margin-bottom:30px;
}

.infe_c3 div h4{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 24px;
	border-left-width: 4px;
	border-left-style: solid;
	border-left-color: #888985;
	padding-left:20px;
	margin-bottom:30px; 
}

.gummy_c1 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 50px;
}

.gummy_c1 div{
	width:100%;
	margin-bottom:20px;
}

.gummy_c1 div img{
	width:100%;
	height:auto;
}

.gummy_c2 {
	background-color: #F0EDEE;
	padding: 7% 5%;
}

.gummy_c2 h3{
	font-size: 28px;
	color: #7F7564;
	margin-bottom: 40px;
	text-align: center;
}

.gummy_c2 ul {
	display: flex;
	justify-content:center;
	align-items: stretch;
	flex-wrap: wrap;
}

.gummy_c2 ul li{
	width: 100%;
	font-size: 18px;
	color: #7F7564;
	margin-bottom:15px;
	text-indent:-1em;
	padding-left:1em;
	line-height:1.6em;
}

.gummy_c3 {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	margin-bottom: 30px;
}

.gummy_c3 ul{
	list-style: none;
	padding: 0;
}

.gummy_c3 ul li{
	margin-bottom: 20px;
	font-size: 18px;
	text-indent:-1em;
	padding-left:1em;
}

.gummy_c4 {
	background-color: #FFF;
	margin-bottom: 8%;
	padding: 5%;
}

.gummy_c4 h4{
	font-size: 28px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	margin-bottom: 30px;
}

.gummy_4in {
	background-color: #F0EDEE;
	padding: 7%;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	margin-bottom: 50px;
}

.gummy_4in div:nth-child(1){
	width: 100%;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #898989;
	padding-bottom:20px;
}

.gummy_4in div:nth-child(2){
	width: 100%;
	padding-top:20px;
}

.gummy_4in h5 {
	color: #575652;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	margin-bottom: 30px;
}

.gummy_4p {
}

.gummy_4in3 {
	background-color: #F0EDEE;
	padding: 0 7%;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	margin-bottom: 50px;
}

.gummy_4in3 div:nth-child(2){
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #898989;
	padding-top:20px;
	padding-bottom: 20px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #898989;
}

.gummy_4in3 div:not(:nth-child(2)){
	width: 100%;
	padding-top:20px;
	padding-bottom:20px;
}

.gummy_4in3 h5 {
	color: #575652;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	margin-bottom: 30px;
}

.gummy_c5 {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
	margin-bottom: 30px;
	padding-bottom: 30px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}

.gummy_c5 div:nth-child(1){
	width: 100%;
	text-align: left;
}

.gummy_c5 div:nth-child(1) h3{
	font-size: 23px;
	margin-bottom:20px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
}

.gummy_c5 div:nth-child(1) h3 span{
	font-size: 16px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
}

.gummy_c5 div:nth-child(2){
	width: 100%;
}

.gummy_c5 div:nth-child(2) p{
	font-size: 16px;
	line-height: 1.9em;
}

.gummy_c6 {
	border: 1px solid #898989;
	padding: 10% 8% 0 8%;
}

.gummy_6in {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom:20px;
}

.g6_border {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #898989;
}

.gummy_6in div:nth-child(1){
	width:100%;
	margin-bottom:20px;
}

.gummy_6in div:nth-child(2){
	width:100%;
	margin-bottom:30px;
}

.gummy_6in div:nth-child(2) img{
	width:100%;
	height:auto;
}

.gummy_6in div:nth-child(1) h4{
	font-size: 28px;
	margin-bottom:30px;
}

.gummy_6in div:nth-child(1) p{
	font-size: 18px;
	line-height: 1.8em;
}

.cav_c1 {
	background-color: #F0EDEE;
	padding: 7% 5%;
}

.cav_c1 h3{
	font-size: 28px;
	color: #7F7564;
	margin-bottom: 40px;
	text-align: center;
}

.cav_c1 ul {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.cav_c1 ul li{
	width: 100%;
	font-size: 18px;
	color: #7F7564;
	margin-bottom:15px;
	text-indent:-1em;
	padding-left:1em;
	line-height:1.6em;
}

.bre_c1 {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
	margin-bottom: 50px;
	padding-bottom: 50px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.bre_c1 div:nth-child(1){
	width: 100%;
	text-align: center;
	margin-bottom:30px;
}

.bre_c1 div:nth-child(1) h3{
	font-size: 23px;
}

.bre_c1 div:nth-child(1) h3 span{
	font-size: 16px;
}

.bre_c1 div:nth-child(2){
	width: 100%;
}

.bre_c1 div:nth-child(2) p{
	font-size: 16px;
	line-height: 1.9em;
}

.qa_c {
    padding: 8% 6%;
    background: #FAFCFB;
    border: 1px solid #e7e3df;
    border-radius: 10px;
	margin-bottom:10px;
}

.qa_q {
	font-size: 19px;
	font-weight: 600;
	margin-bottom:30px;
	text-indent:-1.5em;
	padding-left:1.5em;
}

.qa_q span{
	font-size: 23px;
	font-weight: 600;
	color: #c2a26a;
	margin-right:5px;
}

.qa_a {
}

.qa_a ul li{
	text-indent:-1em;
	padding-left:1em;
}

.ortho_c1 {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
	margin-bottom: 50px;
	padding-bottom: 50px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.ortho_c1 div:nth-child(1){
	width: 100%;
	text-align: center;
	margin-bottom:30px;
}

.ortho_c1 div:nth-child(1) h3{
	font-size: 23px;
	line-height:1.6em;
}

.ortho_c1 div:nth-child(2){
	width: 100%;
}

.ortho_c1 div:nth-child(2) p{
	font-size: 16px;
	line-height: 1.9em;
}

.perio_1 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #898989;
	padding-top: 50px;
	padding-bottom: 50px;
}

.perio1_1 {
	width: 70%;
	order: 2;
	margin-right: auto;
	margin-left: auto;
	margin-bottom:10px;
}

.perio1_1 img{
	width:100%;
	height:auto;
}

.perio1_2 {
	width:100%;
	text-align: center;
	order: 1;
}

.perio1_2 p {
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	font-size: 27px;
	color: #333;
	line-height:1.6em;
	margin-bottom:10px;
}

.perio1_2 p span{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size:20px;
	color: #333;
}

.perio1_3 {
	width:100%;
	order: 3;
}

.perio1_3 ul {
	display: flex;
	justify-content:center;
	align-items: center;
	margin-bottom:40px;
	flex-wrap: wrap;
}

.perio1_3 ul li{
	margin:0 5px 0 5px;
}

.perio1_3 ul li span{
	color: #333;
	border: 1px solid #7A7A7C;
	padding:10px 15px;
	border-radius: 9999px;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	letter-spacing:0.2em;
	font-size:16px;
}

.cera1 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.cera1_pic {
	width: 80%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom:20px;
}

.cera1_pic img {
	width:100%;
	height:auto;
}

.cera1_txt {
	background-color: #F0EDEE;
	padding:5%;
	width: 100%;
	display: flex;
	align-items: center;
}

.cera1_txt h4{
	font-size: 30px;
	margin-bottom: 30px;
	text-align: center;
}

.cera1_txt ul li {
	margin-bottom:10px;
}

.cera2 ul{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.cera2 ul li{
	width:100%;
	margin-bottom:40px;
}

.cera2 ul li img{
	width: 60%;
	height: auto;
	margin-bottom: 20px;
	margin-right: 20%;
	margin-left: 20%;
}

.cera2 ul li h3 {
	font-size: 21px;
	text-align: center;
	margin-bottom: 20px;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #333;
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
}

.cera2 ul li p {
	font-size:16px;
}

.cera2 ul li p span {
	font-size:11px;
	line-height:1.3em;
	display:block;
	padding-top:10px;
}

.cera3 {
}

.cera3 table,
  .cera3 thead,
  .cera3 tbody,
  .cera3 th,
  .cera3 td,
  .cera3 tr {
    display: block;
    width: 100%;
	table-layout: fixed;
  }

  .cera3 thead {
    display: none;
  }

  .cera3 tr {
    border-bottom: 1px solid #C6C1C2;
	
  }

  .cera3 td:first-child {
	border-right: none;
	border-bottom: 1px solid #C6C1C2;
	background-color: #EBE7E8; /* 見出しと同色 */
	font-weight: 600;
  }

  .cera3 td:nth-child(2) {
    border: none;
    background-color: #F0EDEE;
  }

  .cera3 tr:last-child {
    border-bottom: none;
  }
  .cera3 th,
  .cera3 td {
    padding: 5%;
	box-sizing: border-box;
  }

.imp1 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 30px;
}

.imp1 div{
	width:100%;
	margin-bottom:40px;
}

.imp1 div img{
	width:100%;
	margin-bottom:30px;
}

.imp1 div h4 {
	font-size: 23px;
	text-align: center;
	margin-bottom: 20px;
}

.imp2 {
	background-color: #F0EDEE;
	padding: 8%;
}

.imp2 div {
	display: flex;
	justify-content: center;
	align-items: center;
}

.dock_1 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #898989;
	padding-top: 50px;
	padding-bottom: 50px;
}

.dock1_1 {
	width: 70%;
	order: 2;
	margin-right: auto;
	margin-left: auto;
	margin-bottom:30px;
}

.dock1_1 img{
	width:100%;
	height:auto;
}

.dock1_2 {
	width:100%;
	text-align: center;
	order: 1;
	margin-bottom:20px;
}

.dock1_2 p {
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	font-size: 25px;
	color: #333;
	line-height:1.6em;
}

.dock1_2 p span{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size:20px;
	color: #333;
}

.dock1_3 {
	width:100%;
	order: 3;
}

.dock1_3 ul {
	display: flex;
	justify-content:center;
	align-items: center;
	margin-bottom:40px;
}

.dock1_3 ul li{
	margin:0 10px;
}

.dock1_3 ul li span{
	border: 1px solid #7A7A7C;
	padding:5px 10px;
	border-radius: 9999px;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	letter-spacing:0.2em;
	font-size:16px;
}

.brux_1 {
	width: 90%;
    margin: 40px auto;
    padding: 5%;
    background: #f3f0eb;
    border: 1px solid #c9c6be;
	display: flex;
	align-items:center;
	flex-wrap: wrap;
}

.brux1_m {
	width:100%;
	margin-bottom:30px;
}

.brux1_m h4{
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size:23px;
}

.brux1_t{
	width:100%;
}

.brux1_t ul li:not(:nth-child(3)){
	margin-bottom:10px;
	font-size:19px;
	text-indent:-1em;
	padding-left:1em;
}

.brux1_t ul li:last-child {
	font-size:19px;
	text-indent:-1em;
	padding-left:1em;
}

.white_1 {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	margin-bottom:40px;
}

.white_1in {
	width: 100%;
	border: 1px solid #FFFFFF;
	margin-bottom:10px;
}

.white_1in h4{
	background-color: #FFFFFF;
	padding: 3% 4%;
	color: #666;
	text-align: center;
}

.white_1in p {
	padding:4%;
}
	
.white2 {
	padding: 8%;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	background-color: #F9F8F4;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.white2 div:nth-child(1){
	width:100%;
	margin-bottom:20px;
}

.white2 div:nth-child(2){
	width:100%;
}

.white2 div img{
	width:100%;
	height:auto;
}

.white2 h3{
	text-align:center;
	font-size:30px;
	margin-bottom:30px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	line-height:1.4em;
}

.white2 h4{
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	text-align:center;
	margin-bottom:20px;
	line-height:1.4em;
}

.white2 h5{
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	text-align:center;
	padding:30px 0;
	font-size:20px;
	line-height:1.4em;
}

.painless1 {
	margin: 40px auto;
	border: 1px solid #FFF;
	padding: 20px;
}

.painless1_in {
	display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  padding: 30px 0;
  border-top: 1px solid #FFF;
}

.painless1_in:first-child {
  border-top: none;
}

.painless1_in div:nth-child(1){
	width: 100%;
	margin-bottom:20px;
}

.painless1_in div:nth-child(2){
	width: 100%;
}

.painless1_in div:nth-child(2) img{
	width:100%;
	height:auto;
}

.painless1_in div:nth-child(1) h3{
	font-size: 20px;
	margin-bottom: 20px;
	color: #333;
}

.painless1_in div:nth-child(1) p{
	font-size: 16px;
}
	
.dock1 {
	margin: 40px auto;
	border: 1px solid #FFF;
	padding: 20px;
}

.dock1_in {
  padding: 30px 0;
  border-top: 1px solid #FFF;
}

.dock1_in:first-child {
  border-top: none;
}

.dock1_in div h3{
	font-size: 20px;
	margin-bottom: 20px;
	color: #333;
}

.dock1_in div p{
	font-size: 16px;
}
	
.acc_pic {
	margin-bottom:60px;
}

.acc_pic ul{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

.acc_pic ul li{
	width:100%;
	margin-bottom:5px;
}

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

/* === 治療方法ボックス === */

.infobox,
.infobox * {
    box-sizing: border-box;
}

.infobox {
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	gap: 12px;
	padding: 5%;
}

.infobox_label {
    width: 100%;
	margin-bottom:20px;
    text-align: center;
    font-size: 18px;       
    line-height: 1.2;
}
  
  .infobox_body {
	width: 100%;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #FFFFFF;
	padding: 0;
}

.dotCols {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;                  
    width: 100%;
    margin: 0 0 12px 0;
    padding: 0;
  }

.dotCols li {
    padding-left: 28px;
    line-height: 1.8;
    font-size: 16px;
    word-break: break-word;
  }

.dotCols li::before {
    left: 6px;
    top: 0.85em;
    width: 8px;
    height: 8px;
  }

.infobox_note {
    margin-top: 6px;
    color: #666;
    font-size: 15px;
    line-height: 1.8;
  }


/* === 流れ === */
.timeline {
  }

  .circle {
    width: 48px;
    height: 48px;
    left: -70px;
    font-size: 16px;
  }

  .timeline::before {
    left: 25px;      /* 縦線位置 */
    top: 24px;       /* 円の半分下から始める */
    height: calc(100% - 24px);
  }

  .content h3 {
    font-size: 18px;
  }

  .content p {
    font-size: 14px;
  }
.step {
  position: relative;
  margin-bottom: 40px;
}

.table-hikaku {
    display: block;
    width: 100%;
    overflow-x: auto;
  }

  .table-hikaku thead,
  .table-hikaku tbody,
  .table-hikaku th,
  .table-hikaku td,
  .table-hikaku tr {
    display: block;
    width: 100%;
  }

  .table-hikaku thead tr {
    display: none; /* 見出しは不要にして各行の中に表示させる */
  }

  .table-hikaku tbody tr {
    margin-bottom: 20px;
    border-bottom: 2px solid #eee;
    padding-bottom: 10px;
  }

  .table-hikaku tbody th {
    text-align: left;
    background: #fafafa;
    padding: 10px;
    font-size: 15px;
    width: 100%; /* 横幅いっぱい */
    box-sizing: border-box; /* パディング含めて100％に */
  }

  .table-hikaku tbody td {
    text-align: left;
    padding: 10px;
    font-size: 14px;
    border: none;
    border-top: 1px solid #f0f0f0;
    width: 100%; /* 横幅いっぱい */
    box-sizing: border-box;
  }

  .table-hikaku tbody td::before {
    content: attr(data-label); /* 各セルに見出しを表示 */
    font-weight: 600;
    display: block;
    margin-bottom: 5px;
    color: #333;
  }


/* 予約タブ追加 */

.tab{
	margin: 0px auto;
	width: 100vw;
}

.tab-3 {
	width: 100%;
	justify-content:center;
	flex-direction: row;
	flex-wrap: wrap;
	padding: 0 0 280px 0;
	min-height: initial;
	box-shadow: none;
	flex: 0 0 auto;
}
.tab-3 > label {
	flex: 0 0 47.2vw;
	width: auto;
}
.tab-3 > .tab-content {
	width: 100%;
	bottom: 0;
	height: 280px;
	transition: unset;
}

.fixed-nav{
	position: fixed;
	bottom: 0px;
	z-index: 10;
	max-width: 100vw;
	display: flex;
	flex-direction: row;
	gap: 5px;
	padding: 5px;
	box-sizing: border-box;
	width: 100%;
}

.fixed-nav>li{
	flex: 1;
}
.fixed-nav>li a{
	display: block;
}


}


.jmp_txt {
	color: #3088a1;
}


/* 画面幅が狭いときは文字サイズだけ少し下げる */
@media (max-width: 640px){
  .chip{ font-size: 14px; padding: 10px 22px; }

@media (max-width: 768px) {
  .timeline {
    padding-left: 70px;
  }
  .circle {
    width: 56px;
    height: 56px;
    font-size: 16px;
  }
  .content h3 {
    font-size: 18px;
  }
}

/* スマホ調整 */
@media (max-width:768px){
  .period{ padding:24px 20px 28px; }
  .period__title{ font-size:22px; }
  .period__text{ font-size:15px; }
  .period__note{
    flex-direction:column;
    gap:8px;
    font-size:16px;
    text-align:center;
  }
  .period__note i{ display:none; }
}


/* ── スマホ対応 ───────────────────────── */
@media (max-width: 900px){
  .svc-lips{ padding: 22px 16px 28px; }
  .svc-lips__title{ font-size: 26px; }
  .svc-lips__row{
    grid-template-columns: 1fr;  /* 縦積み */
    gap: 16px;
    padding: 22px 4px 28px;
  }
  .svc-lips__media{ aspect-ratio: 16 / 9; }
  .svc-lips__heading{ font-size: 19px; }
  .svc-lips__text p{ font-size: 15px; }
}

/* ビフォーアフタースマホ対応：縦並びに */
@media (max-width: 480px){
  .ba-handle{ width: 52px; height: 52px; }
  .ba-arrow{ font-size: 18px; }
  .ba-label{ font-size: 12px; padding: 6px 10px; }
}


@media (max-width: 900px) {
  .ba-gallery {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}


/* ===== 診療紹介２ ===== */
@media (max-width: 900px){
  .shinryo2-hero{ padding: 72px 0; min-height: 70vh; }
  .shinryo2-hero__card{
    margin: -28px auto 0;
    width: min(92vw, 560px);
    padding: 28px 24px;
  }
  .shinryo2-hero__title{ font-size:28px; }
}

/* 動きを抑制したい環境 */
@media (prefers-reduced-motion: reduce){
  .shinryo2-fixed-bg{ transition: none; }
}

/* モバイル調整 */
@media (max-width: 768px) {
  .shinryo2-hero__card {
    padding: 25px 20px;
  }
  .shinryo2-hero__title {
    font-size: 20px;
  }
  .shinryo2-hero__lead {
    font-size: 14px;
  }
      .header_back {
        background-image: url(../img/main_imgb.webp);
        background-repeat: no-repeat;
        background-position: center bottom;
        background-size: cover;
		  padding-top: 130px;
    }
}

	.tab {
    height: auto;
}
	.spue {
		padding-top:140px;
	}