@charset "utf-8";

/* 共通
------------------------------------------------------------------*/
.content_low {
	padding: calc(100 / var(--break) * 100vw) 0 calc(200 / var(--break) * 100vw);
}
.main_page {
	background: url("images/page/bg_ttl_page.jpg")no-repeat center / cover;
	height: calc(500 / var(--break) * 100vw);
}
.page_main section:not(:last-child) {
	margin-bottom: calc(100 / var(--break) * 100vw);
}
.hdg2 .ja {
	color: #fff;
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: calc(50 / var(--break) * 100vw);
	letter-spacing: 0.1em;
}
.hdg2 .en {
	margin-top: 1.3em;
	margin-bottom: -5.6em;
	color: var(--color13);
	font-family: "azo-sans-web", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: calc(20 / var(--break) * 100vw);
	letter-spacing: 0.2em;
}
.hdg3 {
	position: relative;
	padding: 0.65em 0 0.85em;
	background-image: linear-gradient(to left, var(--color04), var(--color15));
	color: #fff;
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: calc(40 / var(--break) * 100vw);
	letter-spacing: 0.1em;
	line-height: 1.5;
}
.hdg3:after {
	display: block;
	position: absolute;
	bottom: calc(5 / var(--break) * 100vw);
	left: 0;
	z-index: 0;
	width: 100%;
	height: calc(2 / var(--break) * 100vw);
	background: #fff;
	content: '';
}
.hdg3 span {
	position: relative;
	z-index: 1;
}
.hdg4 {
	padding: 0.8em 0 0.9em;
	border-top: calc(2 / var(--break) * 100vw) solid var(--color07);
	border-bottom: calc(2 / var(--break) * 100vw) solid var(--color07);
	background: var(--color06);
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: calc(30 / var(--break) * 100vw);
	letter-spacing: 0.1em;
	line-height: 1.5;
}
.hdg5 {
	position: relative;
	padding: 0 0 0.3em 1.5em;
	border-bottom: calc(2 / var(--break) * 100vw) solid transparent;
	border-image-source: linear-gradient(to right, var(--color13), var(--color09));
	border-image-slice: 1;
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: calc(26 / var(--break) * 100vw);
	letter-spacing: 0.1em;
	line-height: 1.6;
}
.hdg5:before {
	display: block;
	position: absolute;
	top: 0.65em;
	left: 0;
	width: calc(16 / var(--break) * 100vw);
	height: calc(16 / var(--break) * 100vw);
	border-radius: 100%;
	background-image: linear-gradient(to top, var(--color13), var(--color09));
	content: '';
}
.ttl_common01 {
	padding: 0.5em 0 0.6em;
	border-radius: 100px;
}
.txt_common01 span {
	display: inline-block;
	margin: 0 -1em;
}
.name .ttl {
	width: calc(80 / var(--break) * 100vw);
	height: calc(40 / var(--break) * 100vw);
	border: 1px solid #333;
}
.name .ttl span {
	margin-bottom: 0.1em;
}
.name .ja {
	margin: 0 0.6em 0 0.8em;
	line-height: 1.4;
}
.bnr_common01 {
	max-width: 100%;
	width: calc(600 / var(--break) * 100vw);
}
.btn_common01 {
	max-width: 100%;
	width: calc(600 / var(--break) * 100vw);
	height: calc(100 / var(--break) * 100vw);
}
.btn_common01 a {
	position: relative;
	width: 100%;
	height: 100%;
	outline-width: 1px;
	outline-style: solid;
	outline-offset: calc(-11 / var(--break) * 100vw);
}
.btn_common01.btn_col01 a {
	outline-color: var(--color15);
}
.btn_common01 a:after {
	display: block;
	position: absolute;
	bottom: calc(10 / var(--break) * 100vw);
	right: calc(10 / var(--break) * 100vw);
	width: calc(30 / var(--break) * 100vw);
	height: calc(30 / var(--break) * 100vw);
	content: '';
	clip-path: polygon(100% 100%, 100% 0, 0 100%);
}
.btn_common01.btn_col01 a:after {
	background: var(--color15);
}
.btn_common01 a .ja01 {
	font-weight: 500;
}
.btn_tel01 {
	max-width: 350px;
	height: calc(110 / var(--break) * 100vw);
}
.btn_tel01 a {
	width: 100%;
	height: 100%;
	outline: 1px solid var(--color03);
	outline-offset: calc(-6 / var(--break) * 100vw);
}
.btn_tel01 a .icn {
	width: calc(50 / var(--break) * 100vw);
}
.btn_tel01 a .txt {
	width: calc(250 / var(--break) * 100vw);
	margin-left: calc(10 / var(--break) * 100vw);
}
.btn_tel01 a .txt01 {
	margin: calc(-7 / var(--break) * 100vw) 0 calc(7 / var(--break) * 100vw);
	padding-bottom: calc(11 / var(--break) * 100vw);
	border-bottom: 1px solid var(--color03);
	font-size: calc(20 / var(--break) * 100vw);
	letter-spacing: 0.1em;
}
.btn_tel01 a .tel {
	font-size: calc(30 / var(--break) * 100vw);
	letter-spacing: 0.1em;
}
.btn_web01 {
	max-width: 200px;
	height: calc(110 / var(--break) * 100vw);
}
.btn_web01 a {
	position: relative;
	width: 100%;
	height: 100%;
	outline: 1px solid #fff;
	outline-offset: calc(-6 / var(--break) * 100vw);
}
.btn_web01 a:after {
	display: block;
	position: absolute;
	bottom: calc(5 / var(--break) * 100vw);
	right: calc(5 / var(--break) * 100vw);
	width: calc(15 / var(--break) * 100vw);
	height: calc(15 / var(--break) * 100vw);
	background: #fff;
	content: '';
	clip-path: polygon(100% 100%, 100% 0, 0 100%);
}
.btn_web01 a .icn {
	width: calc(40 / var(--break) * 100vw);
}
.btn_web01 a .web {
	margin: calc(4 / var(--break) * 100vw) 0 calc(6 / var(--break) * 100vw);
	font-size: calc(30 / var(--break) * 100vw);
	letter-spacing: 0.1em;
}
.tbl_time01 table {
	border-color: var(--color03);
	background: #fff;
}
.tbl_time01 thead th {
	background: var(--color03);
}
.tbl_time01 tbody td {
	color: var(--color05);
}
.tbl_time01 tbody tr:not(:last-child) th,
.tbl_time01 tbody tr:not(:last-child) td {
	border-bottom-color: var(--color03);
}
.tbl_time01 .tbl_caption {
	margin-top: 0.8em;
	line-height: 1.56;
}
.tbl_default th {
	background: transparent;
}
.tbl_default.tbl_col01 table {
	table-layout: auto;
	border-color: var(--color07);
	background: #fff;
}
.tbl_default.tbl_col01 th {
	background-image: linear-gradient(to right, var(--color07), var(--color11));
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-weight: 300;
	font-style: normal;
}
.tbl_default.tbl_col01:not(.tbl_case) th {
	padding: calc(26 / var(--break) * 100vw) calc(20 / var(--break) * 100vw);
}
.tbl_default.tbl_col01:not(.tbl_case) td {
	padding: calc(26 / var(--break) * 100vw) calc(20 / var(--break) * 100vw);
}
.tbl_default.tbl_col01 tr:not(:last-child) td {
	border-bottom-color: var(--color07);
}
.tbl_default.tbl_col01 thead th,
.tbl_default.tbl_col01:not(.tbl_divide03) tbody th[colspan="2"] {
	border-bottom: 1px solid var(--color07);
	background: var(--color10);
	color: #333;
	font-size: calc(20 / var(--break) * 100vw);
	letter-spacing: 0.1em;
	text-align: center;
}
.tbl_default.tbl_col01.tbl_divide03 th {
	width: 33%;
}
.tbl_default.tbl_col01.tbl_divide03 td {
	width: 33%;
}
.tbl_default.tbl_col01.tbl_divide03 td:not(:last-child) {
	background: var(--color10);
}
.box_pay .ttl {
	padding: 0.6em 0 0.65em;
}
.bg_pay .ttl span {
	display: inline-block;
	margin: 0 -1em;
}
.row_pay {
	gap: 0 1.25%;
}
.row_pay .col {
	width: 19%;
	margin-right: 0 !important;
}
.row_pay .col .copy {
	max-width: 100%;
}
.row_pay .col .copy span {
	display: inline-block;
	margin: 0 -1em;
}
.row_pay .col .txt {
	line-height: 1.67;
}
.row_common01 .col_img {
	max-width: 700px;
	width: 47%;
}
.row_common01 .col_txt {
	width: 49%;
}
.row_common01 .col_txt .copy {
	font-size: calc(34 / var(--break) * 100vw);
	letter-spacing: 0.1em;
	line-height: 1.59;
}
.row_common01 .col_txt .copy span {
	display: inline-block;
	margin-right: -1em;
}
.row_common02 .col_img {
	max-width: 570px;
	width: 38%;
}
.row_common02 .col_txt {
	width: 58%;
}
.row_common02 .col_txt .copy {
	font-size: calc(30 / var(--break) * 100vw);
	letter-spacing: 0.1em;
}
.row_common02 .col_txt .copy span {
	display: inline-block;
	margin-right: -1em;
}
.row_common03 .col_img {
	max-width: 290px;
	width: 20%;
}
.row_common03 .col_txt {
	width: 77%;
}
.row_common04 {}
.bg_common01 {
	position: relative;
	background-image: linear-gradient(to right, var(--color07), var(--color11));
}
.bg_common01 .ttl_en {
	letter-spacing: 0.23em;
	line-height: 0.65;
}
.bg_common01 .ttl_en:before,
.bg_common01 .ttl_en:after {
	display: block;
	flex-grow: 1;
	width: auto;
	height: calc(2 / var(--break) * 100vw);
	background: #fff;
	content: '';
}
.bg_common01 .ttl_en span {
	display: block;
	margin: 0 2.1em;
}
.box_common01 {
	position: relative;
}
.box_common01:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: #fff;
	content: '';
}
.box_common01:after {
	display: block;
	position: absolute;
	top: calc(10 / var(--break) * 100vw);
	left: calc(10 / var(--break) * 100vw);
	z-index: 0;
	width: 100%;
	height: 100%;
	background: #333;
	content: '';
	opacity: 0.1;
}
.box_common01 > * {
	position: relative;
	z-index: 2;
}
.box_common01 .ttl_ja {
	margin-bottom: calc(25 / var(--break) * 100vw);
	padding: 0.3em 0 0.35em;
	border-radius: 100px;
}
.box_common02 .row_default02 {
	max-width: 1000px;
	width: 90%;
}
.box_common02 .row_default02 .col {
	outline-width: 1px;
	outline-style: solid;
	outline-offset: -1px;
	background: #fff;
}
.box_common02 .row_default02 .col:nth-child(odd) {
	outline-color: var(--color03);
}
.box_common02 .row_default02 .col:nth-child(even) {
	outline-color: var(--color01);
}
.box_common02 .row_default02 .col img {
	display: block;
	position: relative;
	z-index: 1;
	width: 100%;
}
.box_common02 .row_default02 .col:nth-child(odd) .ttl {
	background: var(--color03);
}
.box_common02 .row_default02 .col:nth-child(even) .ttl {
	background: var(--color01);
}
.box_common03 .col_img {
	max-width: 345px;
	width: 31%;
}
.box_common03 .col_txt {
	width: 64%;
}
.box_common03 .col_txt .copy {
	padding-bottom: 0.7em;
	border-bottom: 1px solid var(--color03);
	line-height: 1.64;
}
.box_common03 .col_txt .copy span {
	display: inline-block;
	margin-right: -1em;
}
.box_flow {
	border-top: calc(10 / var(--break) * 100vw) solid var(--color11);
	background: var(--color10);
}
.box_flow.arw_flow:before {
	border-top-color: var(--color11);
}
.box_flow .col_txt .ttl {
	margin-bottom: calc(15 / var(--break) * 100vw);
}
.box_flow .col_txt .ttl .num {
	width: auto;
	height: auto;
	background: transparent;
	line-height: 0.65;
}
.box_flow .col_txt .ttl .txt {
	width: calc(100% - (64 / var(--break) * 100vw));
	margin-top: -0.4em;
}
.list_default.list_col01 li:before {
	background: var(--color09);
}
.list_default.list_col02 li:before {
	background: var(--color07);
}
.list_default.list_check01 li {
	padding-left: 1.7em;
}
.list_default.list_check01 li:before {
	top: 0.3em;
	width: calc(20 / var(--break) * 100vw);
	height: calc(20 / var(--break) * 100vw);
	border-radius: 0;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
}
.list_default.list_check01 li:nth-child(odd):before {
	background-image: url(images/page/icn_check01.svg);
}
.list_default.list_check01 li:nth-child(even):before {
	background-image: url(images/page/icn_check02.svg);
}
@media only screen and (min-width: 768px) and (max-width: 1599px) {
}
@media only screen and (min-width: 768px) and (max-width: 1299px) {
	.row_pay .col .copy {
		letter-spacing: 0;
	}
	.row_common01 .col_txt .copy {
		letter-spacing: 0;
	}
	.row_common02 .col_txt .copy {
		letter-spacing: 0;
	}

}
@media only screen and (max-width: 767px) {
	.content_low {
		padding: 13vw 0 25vw;
	}
	.content_low .inner, .main_page .inner {
		max-width: calc(702 / var(--break) * 100vw);
	}
	.page_main section:not(:last-child) {
		margin-bottom: 20vw;
	}
	.main_page {
		background-image: url("images/page/bg_ttl_page_sp.jpg");
		height: calc(480 / var(--break) * 100vw);
	}
	.hdg2 .ja {
		font-size: 1.5625rem;
		letter-spacing: 0;
	}
	.hdg2 .en {
		margin: 4.4vw 0 -10.8vw;
		font-size: .9375rem;
		letter-spacing: 0;
	}
	.hdg4 {
		font-size: calc(36 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.hdg5 {
		font-size: calc(34 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.ttl_common01 {
		font-size: calc(34 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.txt_common01 dt {
		font-size: calc(36 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.col_img {
		text-align: center;
	}
	.name {
		-webkit-justify-content: center !important;
		justify-content: center !important;
		-webkit-align-items: center !important;
		align-items: center !important;
	}
	.name .ttl {
		width: calc(100 / var(--break) * 100vw);
		height: calc(50 / var(--break) * 100vw);
		border-width: calc(2 / var(--break) * 100vw);
		font-size: calc(26 / var(--break) * 100vw);
	}
	.name .ttl span {
		margin-bottom: 0.8vw;
	}
	.name .ja {
		margin: -0.8vw 0 0 5vw;
		font-size: calc(44 / var(--break) * 100vw);
		line-height: 1;
	}
	.name .en {
		width: 100%;
		margin-top: 2.1vw;
		font-size: calc(30 / var(--break) * 100vw);
		letter-spacing: 0;
		text-align: center;
	}
	.btn_common01 {
		height: calc(150 / var(--break) * 100vw);
	}
	.btn_common01 a {
		outline-width: calc(2 / var(--break) * 100vw);
		outline-offset: calc(-12 / var(--break) * 100vw);
	}
	.btn_common01 a .ja01 {
		font-size: calc(32 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.btn_tel01 {
		max-width: calc(600 / var(--break) * 100vw);
		height: calc(150 / var(--break) * 100vw);
	}
	.btn_tel01 a {
		outline-width: calc(2 / var(--break) * 100vw);
		outline-offset: calc(-12 / var(--break) * 100vw);
	}
	.btn_tel01 a .icn {
		width: calc(60 / var(--break) * 100vw);
	}
	.btn_tel01 a .txt {
		width: calc(400 / var(--break) * 100vw);
		margin-left: calc(20 / var(--break) * 100vw);
	}
	.btn_tel01 a .txt01 {
		margin: -0.4vw 0 0.6vw;
		padding-bottom: 1.9vw;
		border-bottom-width: calc(2 / var(--break) * 100vw);
		font-size: calc(30 / var(--break) * 100vw);
	}
	.btn_tel01 a .tel {
		font-size: calc(44 / var(--break) * 100vw);
	}
	.btn_web01 {
		max-width: calc(600 / var(--break) * 100vw);
		height: calc(150 / var(--break) * 100vw);
	}
	.btn_web01 a {
		outline-width: calc(2 / var(--break) * 100vw);
		outline-offset: calc(-12 / var(--break) * 100vw);
	}
	.btn_web01 a:after {
		bottom: calc(10 / var(--break) * 100vw);
		right: calc(10 / var(--break) * 100vw);
		width: calc(23 / var(--break) * 100vw);
		height: calc(23 / var(--break) * 100vw);
	}
	.btn_web01 a > div {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
	}
	.btn_web01 a .icn {
		width: calc(50 / var(--break) * 100vw);
		margin: 0;
	}
	.btn_web01 a .web {
		margin: 0 -0.5vw 1.4vw 4vw;
		font-size: calc(44 / var(--break) * 100vw);
	}
	.tbl_time01 .tbl_caption {
		margin-top: 3.4vw;
		font-size: calc(27.5 / var(--break) * 100vw);
		letter-spacing: 0;
		line-height: 1.44;
	}
	.tbl_default.tbl_col01 thead th,
	.tbl_default.tbl_col01:not(.tbl_divide03) tbody th[colspan="2"] {
		font-size: calc(34 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.box_pay {
		padding: 6vw 5% 6vw;
	}
	.box_pay .ttl {
		font-size: calc(36 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.bg_pay .ttl {
		font-size: calc(36 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.row_pay {
		gap: 5vw 4%;
	}
	.row_pay .col {
		width: 48%;
		margin: 0 !important;
	}
	.row_common01 .col_txt .copy {
		font-size: calc(38 / var(--break) * 100vw);
		letter-spacing: 0;
		line-height: 1.58;
	}
	.row_common01 .col_txt .copy span {
		margin-left: -1em;
	}
	.row_common02 .col_txt .copy {
		font-size: calc(38 / var(--break) * 100vw);
		letter-spacing: 0;
		line-height: 1.58;
	}
	.row_common02 .col_txt .copy span {
		margin-left: -1em;
	}
	.row_common03 .col_txt .txt {
		width: calc(646 / var(--break) * 100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.bg_common01 .ttl_en {
		margin-bottom: 5vw;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.bg_common01 .ttl_en span {
		margin: 0 3vw;
	}
	.box_common01 {
		padding: 6vw 5% 8vw;
	}
	.box_common01 .ttl_ja {
		padding: 2.5vw 0 3vw;
		font-size: calc(36 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.box_common02 {
		padding: 8vw 5%;
	}
	.box_common02 .row_default02 {
		max-width: 100%;
		width: 100%;
	}
	.box_common02 .row_default02 .col {
		outline-width: calc(2 / var(--break) * 100vw);
		outline-offset: calc(-2 / var(--break) * 100vw);
	}
	.box_common03 {
		padding: 6vw 5% 8vw;
	}
	.box_common03 .col_txt .copy {
		border-bottom-width: calc(2 / var(--break) * 100vw);
		font-size: calc(36 / var(--break) * 100vw);
		letter-spacing: 0;
		text-align: center;
	}
	.box_common03 .col_txt .copy span {
		margin-left: -1em;
	}
	.box_flow {
		padding: 6vw 5% 8vw;
	}
	.box_flow .col_txt .ttl .num {
		font-size: calc(40 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.box_flow .col_txt .ttl .txt {
		margin-top: -2.8vw;
		font-size: calc(38 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.list_default.list_check01 li {
		padding-left: 7vw;
	}
	.list_default.list_check01 li:before {
		top: 1.6vw;
		width: calc(30 / var(--break) * 100vw);
		height: calc(30 / var(--break) * 100vw);
	}

}


/* クリニック紹介 clinic
------------------------------------------------------------------*/
.bg_clinic01 {
	position: relative;
	background-image: url(images/clinic/bg_clinic01.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
.bg_clinic01:before {
	display: block;
	position: absolute;
	top: -1px;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 60px;
	background-image: url(images/clinic/shape_clinic01.svg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: contain;
	content: '';
}
.bg_clinic01 .ttl {
	line-height: 1.88;
}
.bg_clinic01 .ttl em {
	line-height: 1.4;
}
.txt_clinic01 dt p span {
	display: inline-block;
	margin: 0 -1em;
}
.row_clinic01 {
	padding-top: calc(50 / var(--break) * 100vw);
}
.row_clinic01 .col_img {
	position: relative;
	width: 49.5%;
	margin-top: calc(-50 / var(--break) * 100vw);
}
.row_clinic01 .col_img .box {
	bottom: calc(15 / var(--break) * 100vw);
	left: calc(15 / var(--break) * 100vw);
	width: calc(250 / var(--break) * 100vw);
	height: calc(250 / var(--break) * 100vw);
	outline: calc(10 / var(--break) * 100vw) solid rgb(233 149 206 / 0.3);
	outline-offset: calc(-10 / var(--break) * 100vw);
	background-image: linear-gradient(to top, var(--color09), var(--color13));
	font-weight: 500;
}
.row_clinic01 .col_txt {
	width: 50.5%;
}
.row_clinic01 .col_txt .txt_clinic01 {
	max-width: 800px;
	width: 90%;
}
.row_clinic01 .col_txt .row_box {
	margin-bottom: calc(-115 / var(--break) * 100vw);
}
.row_clinic01 .col_txt .row_box .col {
	width: 31.25%;
	outline: calc(10 / var(--break) * 100vw) solid rgb(142 176 231 / 0.3);
	outline-offset: calc(-10 / var(--break) * 100vw);
	background-image: linear-gradient(to top, var(--color07), var(--color11));
	font-weight: 500;
}
.row_clinic01 .col_txt .row_box .col:before {
	display: block;
	padding-top: 100%;
	content: '';
}
.row_clinic02 {
	gap: calc(40 / var(--break) * 100vw) 2.213%;
}
.row_clinic02 .col {
	max-width: 350px;
	width: 23.34%;
	outline: 1px solid var(--color07);
	outline-offset: -1px;
}
.row_clinic02 .col img {
	position: relative;
	z-index: 1;
}
.row_clinic03 {
	gap: 0 2.495%;
}
.row_clinic03 .col {
	max-width: 475px;
	width: 31.67%;
}
.row_clinic03 .col:nth-child(odd) .ttl {
	background: var(--color15);
}
.row_clinic03 .col:nth-child(even) .ttl {
	background: var(--color04);
}
.row_clinic04.col4 {
	gap: calc(40 / var(--break) * 100vw) 1.33%;
}
.row_clinic04.col5 {
	gap: calc(40 / var(--break) * 100vw) 1.25%;
}
.row_clinic04.col4 .col {
	max-width: 360px;
	width: 24%;
}
.row_clinic04.col5 .col {
	max-width: 285px;
	width: 19%;
}
.row_clinic04 .col:nth-child(odd) .ttl {
	background: var(--color03);
}
.row_clinic04 .col:nth-child(even) .ttl {
	background: var(--color01);
}
.box_clinic01 {
	max-width: 1720px;
	width: 90%;
}
.box_clinic02 .col_img {
	max-width: 430px;
	width: 37.72%;
}
.box_clinic02 .col_box {
	width: 62.28%;
}
.box_clinic02 .col_box .row_txt:not(:last-child) {
	margin-bottom: calc(15 / var(--break) * 100vw);
}
.box_clinic02 .col_box dt {
	width: calc(140 / var(--break) * 100vw);
}
.box_clinic02 .col_box dd {
	width: calc(100% - (140 / var(--break) * 100vw));
	padding-top: 0.2em;
}
.slide_clinic01 .slick-prev,
.slide_clinic01 .slick-next {
	background: url(images/page/arw_slide01.svg) no-repeat center / contain;
	width: calc(30 / var(--break) * 100vw);
	height: calc(54 / var(--break) * 100vw);
	top: 0;
	bottom: 0;
	z-index: 1;
	margin: auto;
}
.slide_clinic01 .slick-prev {
	left: -9%;
	transform: translate(0);
}
.slide_clinic01 .slick-next {
	right: -9%;
	transform: translate(0) scaleX(-1);
}
.slide_clinic01 .slick-prev:before, .slide_clinic01 .slick-next:before {
	display: none;
}
.slide_clinic01 .slide_thumbnail {
	gap: calc(20 / var(--break) * 100vw) 2.5%;
}
.slide_clinic01 .slide_thumbnail li {
	width: 18%;
	opacity: .5;
	transition: .3s;
}
.slide_clinic01 .slide_thumbnail li.thumbnail-current {
	opacity: 1;
}
.slide_clinic01 .slide_thumbnail li:hover {
	opacity: 1;
	transition: .3s;
	cursor: pointer;
}
@media(min-width: 768px) and (max-width:1599px) {
	.row_clinic01 {
		padding-top: calc(41 / var(--break) * 100vw);
	}
	.row_clinic01 .col_img {
		margin-top: calc(-41 / var(--break) * 100vw);
	}
	.row_clinic01 .col_txt:has(.row_box) {
		margin-bottom: calc(30 / var(--break) * 100vw);
	}
	.row_clinic01 .col_txt .row_box {
		margin-bottom: calc(-60 / var(--break) * 100vw);
	}
	
}
@media(min-width: 768px) and (max-width:1299px) {
	.txt_clinic01 dt p {
		font-size: calc(32 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.row_clinic01 {
		padding-top: calc(33 / var(--break) * 100vw);
	}
	.row_clinic01 .col_img {
		margin-top: calc(-33 / var(--break) * 100vw);
	}
	.row_clinic01 .col_img .box {
		width: calc(200 / var(--break) * 100vw);
		height: calc(200 / var(--break) * 100vw);
		font-size: calc(19 / var(--break) * 100vw);
	}
	.row_clinic01 .col_txt .row_box .col {
		width: 32.5%;
		font-size: calc(19 / var(--break) * 100vw);
	}
	.row_clinic01 .col_txt:has(.row_box) {
		margin-bottom: calc(80 / var(--break) * 100vw);
	}
	.row_clinic01 .col_txt .row_box {
		margin-bottom: calc(-120 / var(--break) * 100vw);
	}
	.slide_clinic01 .slick-prev {
		left: -4%;
	}
	.slide_clinic01 .slick-next {
		right: -4%;
	}
	
}
@media(max-width: 767px) {
	.bg_clinic01 {
		background-image: url(images/clinic/bg_clinic01_sp.jpg);
		padding: 12.7vw 0 14.3vw;
	}
	.bg_clinic01:before {
		height: calc(60 / var(--break) * 100vw);
		background-image: url(images/clinic/shape_clinic01_sp.svg);
		background-size: cover;
	}
	.bg_clinic01 .ttl {
		margin-bottom: 3.4vw;
		font-size: calc(40 / var(--break) * 100vw);
		letter-spacing: 0;
		line-height: 1.85;
	}
	.bg_clinic01 .ttl em {
		font-size: calc(46 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.txt_clinic01 dt p {
		font-size: calc(38 / var(--break) * 100vw);
		letter-spacing: 0;
		line-height: 1.58;
	}
	.row_clinic01 {
		padding-top: 0;
	}
	.row_clinic01 .col_img {
		width: 100%;
		margin-top: 0;
	}
	.row_clinic01 .col_img .box {
		font-size: 1rem;
		letter-spacing: 0;
	}
	.row_clinic01 .col_txt {
		width: 100%;
		padding: 6vw 3.2vw 8vw;
	}
	.row_clinic01 .col_txt .txt_clinic01 {
		max-width: 100%;
		width: 100%;
	}
	.row_clinic01 .col_txt .row_box {
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		gap: 0 5%;
		margin-bottom: 0;
	}
	.row_clinic01 .col_txt .row_box .col {
		width: 46%;
		font-size: 1rem;
		letter-spacing: 0;
	}
	.row_clinic02 {
		gap: calc(50 / var(--break) * 100vw) 0;
		width: calc(600 / var(--break) * 100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.row_clinic02 .col {
		max-width: 100%;
		width: 100%;
	}
	.row_clinic02 .col .ttl {
		font-size: calc(36 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.row_clinic03 {
		gap: calc(50 / var(--break) * 100vw) 2%;
	}
	.row_clinic03 .col {
		max-width: none;
		width: 49%;
	}
	.row_clinic03 .col .ttl {
		font-size: calc(28 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.row_clinic04 {
		gap: calc(50 / var(--break) * 100vw) 2% !important;
	}
	.row_clinic04 .col {
		max-width: none !important;
		width: 49% !important;
	}
	.row_clinic04 .col .ttl {
		font-size: calc(28 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.box_clinic01 {
		max-width: 100%;
		width: 100%;
	}
	.box_clinic02 {
		padding: 6vw 5% 8vw;
	}
	.box_clinic02 .col_img {
		max-width: calc(430 / var(--break) * 100vw);
		width: 100%;
		margin: 0 auto 5vw;
	}
	.box_clinic02 .col_box {
		width: 100%;
	}
	.box_clinic02 .col_box .row_txt:not(:last-child) {
		margin-bottom: 4vw;
	}
	.box_clinic02 .col_box dt {
		width: calc(180 / var(--break) * 100vw);
		font-size: calc(32 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.box_clinic02 .col_box dd {
		width: calc(100% - (180 / var(--break) * 100vw));
		padding-top: 0;
	}
	.slide_clinic01 .slick-prev {
		left: 3vw;
	}
	.slide_clinic01 .slick-next {
		right: 3vw;
	}
	
}


/* 院長・スタッフ紹介 staff
------------------------------------------------------------------*/
.row_staff01 .col_img {
	max-width: 460px;
	width: 38%;
}
.row_staff01 .col_txt {
	width: 59%;
}
.row_staff01 .col_txt .name {
	margin-bottom: calc(18 / var(--break) * 100vw);
	padding-bottom: calc(16 / var(--break) * 100vw);
	border-bottom: 1px solid #333;
}
.bg_staff01 .box_prof {
	outline: calc(2 / var(--break) * 100vw) solid var(--color06);
	outline-offset: calc(-12 / var(--break) * 100vw);
}
.bg_staff01 .box_prof .ttl {
	padding: 0.2em 0 0.3em;
	border-radius: 100px;
	background-image: linear-gradient(to right, var(--color07), var(--color11));
}
.bg_staff01 .box_prof ol li .year {
	width: calc(100 / var(--break) * 100vw);
	font-weight: 300;
}
.bg_staff01 .box_prof ol li .txt {
	width: calc(100% - (100 / var(--break) * 100vw));
}
.box_staff01 {
	position: relative;
}
.box_staff01:after {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: calc(340 / var(--break) * 100vw);
	background: rgb(185 200 41 / 0.2);
	content: '';
}
.box_staff01 .img01 {
	max-width: calc(460 / var(--break) * 100vw);
	width: 100%;
	margin-bottom: calc(-90 / var(--break) * 100vw);
}
.box_staff01 .area {
	background: rgb(185 200 41 / 0.2);
}
.box_staff01 .area .unit {
	max-width: 1000px;
	width: 90%;
}
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	.row_staff01 .col_txt .name {
		margin-bottom: 4vw;
		padding-bottom: 4vw;
	}
	.bg_staff01 .box_prof ol li .year {
		width: calc(140 / var(--break) * 100vw);
	}
	.bg_staff01 .box_prof ol li .txt {
		width: calc(100% - (140 / var(--break) * 100vw));
	}
	.box_staff01 {
		padding: 8vw 5%;
	}
	.box_staff01 .area .unit {
		max-width: none;
	}
	
}


/* 診療時間・アクセス access
------------------------------------------------------------------*/
.row_access01 .col_img {
	max-width: 650px;
	width: 53%;
}
.row_access01 .col_box {
	max-width: 530px;
	width: 43%;
}
.logo_access {
	width: calc(334 / var(--break) * 100vw);
}
.address_access {
	padding-top: calc(43 / var(--break) * 100vw);
	background: url(images/page/icn_address01.svg) no-repeat center top / calc(30 / var(--break) * 100vw) auto;
}
.address_access p {
	font-size: calc(17.5 / var(--break) * 100vw);
	letter-spacing: 0.1em;
	line-height: 1.63;
}
.tel_access {
	width: calc(350 / var(--break) * 100vw);
}
.tel_access a {
	border: 1px solid var(--color03);
}
.tbl_access {
	max-width: 100%;
	width: calc(530 / var(--break) * 100vw);
}
.tbl_access .tbl_caption {
	display: none;
}
.box_access01 .unit {
	max-width: 770px;
	width: 90%;
}
.box_access01 .unit .txt_bottom {
	margin-top: calc(13 / var(--break) * 100vw);
	line-height: 1.56;
}
.box_access01 .box {
	max-width: 1000px;
	width: 90%;
}
.area_access01 {
	position: relative;
}
.area_access01:after {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: calc(100% - (274 / var(--break) * 100vw));
	background: var(--color16);
	content: '';
}
.area_access01 .unit {
	max-width: 1000px;
	width: 90%;
}
.area_access01 .map_access .map {
	padding-top: calc(460 / var(--break) * 100vw);
}
.area_access01 dt {
	margin-bottom: 1.1em;
	padding: 0.4em 0 0.6em;
	border-radius: 100px;
}
.area_access01 dd {
	max-width: 880px;
	width: 100%;
}
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	.row_access01 .col_img {
		max-width: calc(650 / var(--break) * 100vw);
		width: 100%;
		margin: 0 auto 5vw;
	}
	.row_access01 .col_box {
		max-width: 100%;
		width: 100%;
	}
	.logo_access {
		width: calc(434 / var(--break) * 100vw);
	}
	.address_access {
		padding-top: 4vw;
	}
	.address_access p {
		font-size: calc(32 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.tel_access {
		width: calc(600 / var(--break) * 100vw);
	}
	.tel_access a {
		border-width: calc(2 / var(--break) * 100vw);
	}
	.tbl_access {
		width: 100%;
	}
	.box_access01 {
		padding: 8vw 5%;
	}
	.box_access01 .unit {
		max-width: 100%;
		width: 100%;
	}
	.box_access01 .unit .txt_bottom {
		margin-top: 4vw;
	}
	.box_access01 .box {
		max-width: 100%;
		width: 100%;
		padding: 6vw 5%;
	}
	.area_access01 {
		padding: 0 5% 8vw;
	}
	.area_access01:after {
		height: calc(100% - (400 / var(--break) * 100vw));
	}
	.area_access01 .unit {
		max-width: 100%;
		width: 100%;
	}
	.area_access01 .map_access .map {
		padding-top: calc(500 / var(--break) * 100vw);
	}
	.area_access01 dt {
		font-size: calc(34 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.area_access01 dd {
		max-width: 100%;
	}
	
}


/* 初めてのかたへ first
------------------------------------------------------------------*/
.row_first01 .col {
	max-width: 730px;
	width: 49%;
}
.row_first01 .col_l {
	background: rgb(248 245 230 / 0.6);
}
.row_first01 .col_r {
	background: rgb(255 243 234 / 0.6);
}
.row_first01 .col .ttl {
	padding: 0.2em 0 0.3em;
	border-radius: 100px;
}
.row_first01 .col .txt {
	line-height: 1.67;
}
.row_first01 .col .web_first {
	max-width: 100%;
	width: calc(500 / var(--break) * 100vw);
	height: calc(100 / var(--break) * 100vw);
}
.row_first01 .col .web_first a {
	outline-offset: calc(-11 / var(--break) * 100vw);
}
.row_first01 .col .web_first a:after {
	bottom: calc(10 / var(--break) * 100vw);
	right: calc(10 / var(--break) * 100vw);
}
.row_first01 .col .web_first a .web {
	margin: calc(-6 / var(--break) * 100vw) calc(-6 / var(--break) * 100vw) 0 calc(30 / var(--break) * 100vw);
}
.box_first01 .txt_common01 {
	max-width: 800px;
	width: 90%;
}
.box_first01 .box {
	padding: calc(22 / var(--break) * 100vw) 10% calc(24 / var(--break) * 100vw);
}
.box_first01 .box .list_default li {
	padding-left: 1.5em;
	font-size: calc(22 / var(--break) * 100vw);
	letter-spacing: 0.1em;
}
.box_first01 .box .list_default li:before {
	top: 0.7em;
}
.box_first01 .box .list_default li:not(:first-child) {
	margin-top: calc(21 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	.row_first01 {
		gap: 5vw 0;
	}
	.row_first01 .col {
		max-width: 100%;
		width: 100%;
		padding: 6vw 5% 8vw;
	}
	.row_first01 .col .ttl {
		font-size: calc(34 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.row_first01 .col .web_first {
		width: calc(600 / var(--break) * 100vw);
		height: calc(150 / var(--break) * 100vw);
	}
	.box_first01 {
		padding: 6vw 5% 8vw;
	}
	.box_first01 .txt_common01 {
		max-width: 100%;
		width: 100%;
	}
	.box_first01 .box {
		padding: 5vw 5%;
	}
	.box_first01 .box .list_default li {
		padding-left: 5vw;
		font-size: calc(34 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.box_first01 .box .list_default li:before {
		top: 3vw;
	}
	.box_first01 .box .list_default li:not(:first-child) {
		margin-top: calc(21 / var(--break) * 100vw);
	}
	
}


/* 一般歯科 general
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}


/* 歯周病治療 perio
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}


/* 予防・メンテナンス prevention
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}


/* 小児歯科 pediatric
------------------------------------------------------------------*/
.row_pediatric01 .col {
	max-width: 394px;
	width: 32%;
}
.row_pediatric01 .col .icn {
	max-width: 100%;
	width: calc(160 / var(--break) * 100vw);
}
.row_pediatric01 .col .ttl {
	font-weight: 500;
}
.row_pediatric02 .col {
	position: relative;
	max-width: 400px;
	width: 32.3%;
}
.row_pediatric02 .col:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: calc(70 / var(--break) * 100vw);
	height: calc(70 / var(--break) * 100vw);
	background: var(--color09);
	content: '';
	opacity: 0.2;
	clip-path: polygon(0 0, 100% 0, 0 100%);
}
.row_pediatric02 .col .ttl span {
	display: inline-block;
	margin: 0 -1em;
}
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	.row_pediatric01 {
		gap: 5vw 0;
		width: calc(600 / var(--break) * 100vw);
	}
	.row_pediatric01 .col {
		max-width: 100%;
		width: 100%;
	}
	.row_pediatric01 .col .ttl {
		font-size: calc(32 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.row_pediatric02 {
		gap: 5vw 0;
		width: calc(600 / var(--break) * 100vw);
	}
	.row_pediatric02 .col {
		max-width: 100%;
		width: 100%;
		padding: 8vw 5%;
	}
	.row_pediatric02 .col .ttl {
		font-size: calc(38 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	
}


/* 小児矯正 pediatric_ortho
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}


/* セラミック・審美治療 cosmetic
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}


/* ホワイトニング whitening
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}


/* 入れ歯 false_teeth
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}


/* 栄養相談 nutrition
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}


/* 症例紹介 case
------------------------------------------------------------------*/
.area_case_common01:not(:last-of-type) {
	margin-bottom: calc(60 / var(--break) * 100vw);
}
.box_case01 {
	position: relative;
	padding: calc(47 / var(--break) * 100vw) calc(50 / var(--break) * 100vw) calc(60 / var(--break) * 100vw);
	background: var(--color02);
}
.box_case01 > .ttl {
	font-size: calc(40 / var(--break) * 100vw);
	letter-spacing: 0.1em;
	line-height: 1.4;
}
.row_case01 {
	max-width: calc(1000 / var(--break) * 100vw);
	width: 100%
}
.row_case01 .ttl {
	height: calc(50 / var(--break) * 100vw);
	text-transform: uppercase;
}
.row_case01:after {
	border-left: calc(15 / var(--break) * 100vw) solid var(--color11);
	border-top: calc(23 / var(--break) * 100vw) solid transparent;
	border-bottom: calc(23 / var(--break) * 100vw) solid transparent;
	top: calc(55 / var(--break) * 100vw);
}
.slide_case01 .slick-prev:before,.slide_case01 .slick-next:before {
	display: none;
}
.slide_case01 .slick-prev, .slide_case01 .slick-next {
	width: calc(30 / var(--break) * 100vw);
	height: calc(54 / var(--break) * 100vw);
	background: url(images/page/arw_slide02.svg)no-repeat center / cover;
	z-index: 9;
	top: 0;
	bottom: 0;
	margin: auto;
	transform: none;
}
.slide_case01 .slick-prev {
	left: 2.4%;
}
.slide_case01 .slick-next {
	right: 2.4%;
	transform: scaleX(-1);
}
.slide_case01 .slick-dots {
	margin-top: var(--size30px);
	position: relative !important;
	bottom: auto;
	line-height: 1;
}
.slide_case01 .slick-dots li {
	width: calc( 11 / var(--break) * 100vw);
	height: calc( 11 / var(--break) * 100vw);
	margin: 0 calc( 8 / var(--break) * 100vw);
}
.slide_case01 .slick-dots li button {
	width: calc( 11 / var(--break) * 100vw);
	height: calc( 11 / var(--break) * 100vw);
	padding: 0;
}
.slide_case01 .slick-dots li button:before {
	content: "";
	background: var(--color02);
	width: calc( 11 / var(--break) * 100vw);
	height: calc( 11 / var(--break) * 100vw);
	border-radius: 50%;
	opacity: 1;
}
.slide_case01 .slick-dots li.slick-active button:before {
	background: var(--color03);
	opacity: 1;
}
.slide_case01 .slick-dots li:only-child {
	display: none;
}
.row_case_common01 .col .case_img{
	height: calc(300 / var(--break) * 100vw);
}
.slide_case01 .tbl_case {
	max-width: calc(1000 / var(--break) * 100vw);
}
.tbl_case table {
	width: calc(100% - 1px);/*ボーダー右切れる対策*/
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
	.slide_case01 .slick-prev {
		left: calc(30 / var(--break) * 100vw);
	}
	.slide_case01 .slick-next {
		right: calc(30 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.box_case01 {
		padding: 6vw 5vw 8vw;
	}
	.box_case01 > .ttl {
		letter-spacing: 0;
	}
	.row_case01 {
		margin-bottom: 7.5vw;
		max-width: calc(646 / var(--break) * 100vw);
		/*opacity: .5;
		transition: .3s;*/
	}
	.row_case01.slick-active {
		opacity: 1;
	}
	.row_case01 .col {
		max-width: calc(480 / var(--break) * 100vw);
		width: 100%;
		margin-right: auto;
		margin-left: auto;
	}
	.row_case01 .col:first-child {
		margin-bottom: 12vw;
	}
	.row_case01:after {
		border-left: calc(40 / var(--break) * 100vw) solid transparent;
		border-right: calc(40 / var(--break) * 100vw) solid transparent;
		border-top: calc(30 / var(--break) * 100vw) solid var(--color11);
		border-bottom: 0;
		top: 0;
	}
	.row_case01 > .flex{
		display: block;
	}
	.row_case01 .ttl {
		height: calc(60 / var(--break) * 100vw);
		font-size: .75rem;
	}
	.slide_case01 {
		margin-bottom: 8vw;
	}
	.slide_case01 .slick-slide {
		/*max-width: calc(480 / var(--break) * 100vw);*/
	}
	.slide_case01 .slick-slide.slick-center {
		opacity: 1;
		transition: .5s;
	}
	.slide_case01 .slick-slide.slick-active {
		opacity: 1;
		transition: .5s;
	}
	.slide_case01 .slick-prev, .slide_case01 .slick-next {
		width: calc(50 / var(--break) * 100vw);
		height: calc(90 / var(--break) * 100vw);
		bottom: auto;
		top: 64vw;
	}
	.slide_case01 .slick-prev {
		left: 6vw;
	}
	.slide_case01 .slick-next {
		right: 6vw;
	}
	.slide_case01.slick-dotted.slick-slider {
		margin-bottom: 15vw;
	}
	.slide_case01 .slick-dots li {
		width: calc( 16 / var(--break) * 100vw);
		height: calc( 16 / var(--break) * 100vw);
		margin: 0 calc( 14 / var(--break) * 100vw);
	}
	.slide_case01 .slick-dots li button {
		width: calc( 16 / var(--break) * 100vw);
		height: calc( 16 / var(--break) * 100vw);
	}
	.slide_case01 .slick-dots li button:before {
		width: calc( 16 / var(--break) * 100vw);
		height: calc( 16 / var(--break) * 100vw);
	}
}


/* リスク・副作用
------------------------------------------------------------------*/
.box_risk01 {
	border: 1px solid var(--color03);
	background: #fff;
}
.box_risk01 .box {
	overflow: hidden;
	max-height: 160px;
	height: auto;
	touch-action: auto !important;
	position: relative;
	padding-right: calc(50 / var(--break) * 100vw);
}
.box_risk01 .ttl {
	font-size: calc(20 / var(--break) * 100vw);
	letter-spacing: 0.1em;
}
.box_risk01 .txt {
	font-size: calc(16 / var(--break) * 100vw);
	letter-spacing: 0.1em;
}
.box_invisalign {
	max-width: 1000px;
	border: ;
}
.box_invisalign .box {
	overflow: hidden;
	max-height: 180px;
	height: auto;
	touch-action: auto !important;
	position: relative;
	padding-right: calc(50 / var(--break) * 100vw);
}
/* パーフェクトスクロールバー */
.risk .ps__thumb-y, .box_invisalign .ps__thumb-y {
	background: var(--color03) !important;
	right: 0px !important;
	width: 4px !important;
}
.risk .ps--active-x > .ps__rail-x,
.risk .ps--active-y > .ps__rail-y, .box_invisalign .ps--active-x > .ps__rail-x,
.box_invisalign .ps--active-y > .ps__rail-y {
	background: none !important;
	right: 0px !important;
	width: 4px !important;
	opacity: 1!important;
}
.risk .ps .ps__rail-x.ps--clicking, .risk .ps .ps__rail-x:focus, .risk .ps .ps__rail-x:hover, .risk .ps .ps__rail-y.ps--clicking, .risk .ps .ps__rail-y:focus, .risk .ps .ps__rail-y:hover, .box_invisalign .ps .ps__rail-x.ps--clicking, .box_invisalign .ps .ps__rail-x:focus, .box_invisalign .ps .ps__rail-x:hover, .box_invisalign .ps .ps__rail-y.ps--clicking, .box_invisalign .ps .ps__rail-y:focus, .box_invisalign .ps .ps__rail-y:hoverr {
	opacity: 1!important;
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 751px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.box_risk01 .box {
		padding-right: 4vw;
		max-height: calc(420 / var(--break) * 100vw);
	}
	.box_risk01 .ttl, .box_invisalign .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.box_risk01 .txt {
		font-size: 1rem;
		letter-spacing: 0;
	}
	.sp.risk .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y, .sp.risk .ps-container > .ps-scrollbar-y-rail, .box_invisalign .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y, .box_invisalign .ps-container > .ps-scrollbar-y-rail {
		right: 0!important;
		width: 2px!important;
	}
}


/* 採用情報 recruit
------------------------------------------------------------------*/
.row_recruit01 {
	gap: calc(40 / var(--break) * 100vw) 2.495%;
}
.row_recruit01 .col {
	width: 31.67%;
	min-height: calc(100 / var(--break) * 100vw);
	line-height: 1.2;
}
.row_recruit01 .col p span {
	display: inline-block;
	line-height: 1;
}
.tbl_guideline01:not(:last-child) {
	margin-bottom: calc(100 / var(--break) * 100vw);
}
.tbl_guideline01 table {
	border-color: var(--color07);
	background: #fff;
}
.tbl_guideline01 th {
	width: 33.5%;
	padding: calc(26 / var(--break) * 100vw) calc(20 / var(--break) * 100vw);
	background-image: linear-gradient(to right, var(--color07), var(--color11));
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-weight: 300;
	font-style: normal;
}
.tbl_guideline01 td {
	width: 66.5%;
	padding: calc(26 / var(--break) * 100vw) calc(20 / var(--break) * 100vw);
}
.tbl_guideline01 tr:not(:last-child) td {
	border-bottom-color: var(--color07);
}
.tbl_form01 th {
	color: #333333;
}
.tbl_form01 td input,
.tbl_form01 td textarea {
	border-radius: calc(4 / var(--break) * 100vw);
	background-color: #eee;
}
.tbl_form01 .require span:after {
	color: #fff;
	background-color: var(--color03);
}
.box_form {
	margin-bottom: calc(60 / var(--break) * 100vw);
	line-height: 1.78;
}
.btn_submit:before {
	top: 0;
	right: calc(30 / var(--break) * 100vw );
	transform: rotate(0);
	width: calc(8 / var(--break) * 100vw );
	height: calc(12 / var(--break) * 100vw );
	border: none;
	background: #fff;
	clip-path: polygon(100% 50%, 0% 100%, 0 0);
}
.btn_submit input {
	border: none;
	background: var(--color05);
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.row_recruit01 {
		gap: 4vw 0;
	}
	.row_recruit01 .col {
		width: 100%;
		min-height: calc(120 / var(--break) * 100vw);
		font-size: calc(36 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.row_recruit01 .col p span {
		font-size: calc(28 / var(--break) * 100vw);
		letter-spacing: 0;
	}
	.tbl_guideline01 td a {
		text-decoration: underline;
		color: var(--guideline-color);
	}
	.btn_submit {
		max-width: calc(600 / var(--break) * 100vw);
	}
	.btn_submit:before {
		width: calc(16 / var(--break) * 100vw );
		height: calc(24 / var(--break) * 100vw );
		border: none;
	}

}

/* お問い合わせ contact
------------------------------------------------------------------*/
.grecaptcha-badge { visibility: hidden; }
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}

/* ブログ blog
------------------------------------------------------------------*/
#sidebar {
	width: 24%;
}
#sidebar h4 {
	background: var(--color04);
	color: #fff;
	font-weight: 500;
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: 1.25rem;
	letter-spacing: 0.1em;
	line-height: calc(40 / var(--break) * 100vw);
	margin-bottom: calc(4 / var(--break) * 100vw);
	text-align: center;
}
#sidebar caption {
	margin-bottom: calc(5 / var(--break) * 100vw);
}
#wp-calendar {
	width: 100%;
	margin-bottom: calc(10 / var(--break) * 100vw);
}
#wp-calendar thead th {
	background: var(--color14);
	border: 1px solid var(--color14);
	border-right-color: var(--color14);
	color: var(--color05);
	font-size: .8125rem;
	font-weight: normal;
}
#wp-calendar tbody td {
	border: 1px solid var(--color14);
	text-align: center;
	font-size: .875rem;
	line-height: 1.8;
}
#wp-calendar tbody td a {
	color: var(--color03);
	text-decoration: underline;
}
.wp-calendar-nav{
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	margin-bottom: calc(60 / var(--break) * 100vw);
	line-height: 1.5;
}
.wp-calendar-nav-prev{padding-left: calc(10 / var(--break) * 100vw);}
.wp-calendar-nav-next{padding-right: calc(10 / var(--break) * 100vw);}
.wp-calendar-nav a{
	padding-bottom: calc(3 / var(--break) * 100vw);
	border-bottom: 1px solid #333;
	display:-webkit-box;/*--- Androidブラウザ用 ---*/
	display:-ms-flexbox;/*--- IE10 ---*/
	display: -webkit-flex;/*--- safari（PC）用 ---*/
	display:flex;
	-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack:justify;/*--- IE10 ---*/
	-webkit-justify-content:space-between;/*--- safari（PC）用 ---*/
	justify-content:space-between;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
}
#sidebar ul li {
	width: 100%;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}
#sidebar ul li a {
	border-bottom: 1px solid #333;
	padding-bottom: calc(4 / var(--break) * 100vw);
	line-height: 2.1;
}
.post_main {
	width: 71%;
}
.navigation {
	display:-webkit-box;/*--- Androidブラウザ用 ---*/
	display:-ms-flexbox;/*--- IE10 ---*/
	display: -webkit-flex;/*--- safari（PC）用 ---*/
	display:flex;
	-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack:justify;/*--- IE10 ---*/
	-webkit-justify-content:space-between;/*--- safari（PC）用 ---*/
	justify-content:space-between;
	margin-bottom: calc(60 / var(--break) * 100vw);
}
.navigation li {
	width: calc(170 / var(--break) * 100vw);
}
.navigation .navitop {
	text-align: center;
}
.navigation .naviright {
	text-align: right;
}
.navigation li a {
	padding-bottom: calc(4 / var(--break) * 100vw);
	border-bottom: 1px solid var(--color03);
	color: var(--color03);
}
.post_content img {
	max-width: 100%;
	height: auto;
}
.date_single {
	display: block;
	text-align: right;
	font-size: .8125rem;
	margin-top: calc(-30 / var(--break) * 100vw);
	margin-bottom: calc(40 / var(--break) * 100vw);
}
.post_content {
	line-height: 1.75;
}
.thmb {
	width: calc(120 / var(--break) * 100vw);
}
.thmb img {
	height: calc(120 / var(--break) * 100vw);
	object-fit: cover;
}
.thmb a:hover .img_thmb {
	opacity: .75;
}
.txt_post {
	width: calc(100% - calc(140 / var(--break) * 100vw));
}
.page_main section.blog_archive {
	padding-bottom: calc(35 / var(--break) * 100vw);
	border-bottom: 1px solid var(--color14);
}
.post_main section.blog_archive:not(:last-child) {
	margin-bottom: calc(40 / var(--break) * 100vw);
}
.txt_post a {
	color: inherit;
}
.txt_post a:hover {
	text-decoration: underline;
}
.txt_post h4 {
	width: 100%;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	line-height: 1.7;
	font-weight: 500;
	font-size: 1.25rem;
	letter-spacing: .1em;
}
.blog_archive .txt_post .date {
	color: var(--color15);
	line-height: 1.5;
}
.txt_post .txt_excerpt {
	line-height: 1.75;
	margin-top: calc(10 / var(--break) * 100vw);
}
.txt_post .txt_excerpt .more {
	color: #e17c2b;
	text-decoration: underline;
}
.page_main .wp-pagenavi {
	margin-top: calc(60 / var(--break) * 100vw);
	text-align: center;
	font-size: .875rem;
}
.page_main .wp-pagenavi a, .page_main .wp-pagenavi span {
	text-decoration: none;
	border: 1px solid var(--color03);
	color: var(--color03);
	padding: 0 calc(10 / var(--break) * 100vw);
	margin: calc(2 / var(--break) * 100vw);
	display: inline-block;
}
.page_main .wp-pagenavi span.pages {
	padding: 0 calc(11 / var(--break) * 100vw);
}
.page_main .wp-pagenavi a:hover, .page_main .wp-pagenavi span.current {
	border-color: var(--color03);
	background: var(--color03);
	color: #fff;
}
.page_main .wp-pagenavi span.current {
	font-weight: normal;
}
.post_content li {
	list-style: inherit;
	margin-left: 1.5em;
}
.single_post > h3 {
	padding: 0.8em;
	background-image: linear-gradient(to right, var(--color04), var(--color15));
	color: #fff;
	font-weight: bold;
	font-size: calc(26 / var(--break) * 100vw);
	letter-spacing: 0.1em;
	line-height: 1.5;
}
.post_content > h4 {
	padding: 0.7em 1.1em;
	border-left: calc(10 / var(--break) * 100vw) solid var(--color07);
	background: var(--color06);
}
.post_content > h5 {
	position: relative;
	padding: 0 1.4em 0.7em;
	border-bottom: 1px dashed var(--color09);
}
.post_content > h5:before {
	display: block;
	position: absolute;
	top: 0.4em;
	left: 0;
	width: calc(20 / var(--break) * 100vw);
	height: calc(20 / var(--break) * 100vw);
	border-radius: 100%;
	background: var(--color09);
	content: '';
}
.post_content > h4,.post_content > h5{
	line-height: 1.6;
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: 1.25rem;
	letter-spacing: 0.1em;
	margin-bottom: calc(35 / var(--break) * 100vw );
}
#sidebar .category h4{
	margin-bottom: calc(20 / var(--break) * 100vw );
}
#sidebar .category ul{
	gap:calc(10 / var(--break) * 100vw ) 3%;
}
#sidebar .category ul li{
	font-size: calc(16 / var(--break) * 100vw);
	letter-spacing: 0.1em;
	width: auto;
	overflow: visible;
	white-space: normal;
}
#sidebar .category ul li a{
	border-radius: 100px;
	border: 1px solid var(--color03);
	background: var(--color03);
	color: #fff;
	padding: calc(4 / var(--break) * 100vw ) calc(8 / var(--break) * 100vw );
	line-height: 1.6;
}
#sidebar .category ul li a.is-active{
	background: #fff;
	color: var(--color03);
}

@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.page_main {
		display: block!important;
	}
	#sidebar {
		width: 100%;
	}
	#sidebar h4 {
		line-height: calc(80 / var(--break) * 100vw);
	}
	.post_main {
		width: 100%;
		margin-bottom: 20vw;
	}
	.thmb {
		width: calc(210 / var(--break) * 100vw);
	}
	.thmb img {
		height: calc(210 / var(--break) * 100vw);
	}
	.txt_post {
		width: calc(100% - calc(240 / var(--break) * 100vw));
	}
	.txt_post h4 {
		font-size: 1rem;
		letter-spacing: 0;
	}
	.navigation li {
		width: calc(200 / 750 * 100vw);
	}
	.page_main .wp-pagenavi span.pages,.page_main .wp-pagenavi a, .page_main .wp-pagenavi span {
		padding: .5vw 2vw;
		margin: calc(4 / 750 * 100vw);
	}
	.page_main section.blog_archive {
		padding-bottom: 6vw;
	}
	.post_main section.blog_archive:not(:last-child) {
		margin-bottom: 6vw;
	}
	.post_main .wp-pagenavi {
		margin-top: 12vw;
		display:-webkit-box;/*--- Androidブラウザ用 ---*/
		display:-ms-flexbox;/*--- IE10 ---*/
		display: -webkit-flex;/*--- safari（PC）用 ---*/
		display:flex;
		-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
		-ms-flex-pack:justify;/*--- IE10 ---*/
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
		-webkit-flex-wrap: wrap; /* Safari */
		flex-wrap: wrap;
	}
	.single_post > h3 {
		letter-spacing: 0;
		font-size: 1.1875rem;
	}
	.post_content > h4 {
		padding: 3vw 3vw;
	}
	.post_content > h5 {
		padding: 0 4vw 2vw;
	}
	.post_content > h5:before {
		top: 3vw;
	}
	.post_content > h4,.post_content > h5{
		letter-spacing: 0;
		font-size: 1.125rem;
	}
	#sidebar .category ul li{
		font-size: 1rem;
	}
	#sidebar .category ul li a{
		padding: calc(4 / var(--break)* 100vw) calc(14 / var(--break)* 100vw);
	}
}


/* フォーマット format
------------------------------------------------------------------*/
.wrap_format01:not(:last-of-type) {
	margin-bottom: calc(100 / var(--break) * 100vw);
}
.img_format01 {
	max-width: 1000px;
}
.row_format01 .col_img {
	width: 46%;
	max-width: 570px;
}
.row_format01 .col_txt {
	width: 50%;
}
.list_format01 li {
	max-width: 425px;
}
.row_format03 .col_img {
	width: 29%;
	max-width: 350px;
}
.row_format03 .col_txt {
	width: 67%;
}
.row_format03 .copy {
	border-bottom: 1px solid #333;
}
.row_format03 .copy:before {
	content: "";
	position: absolute;
	width: calc(20 / var(--break) * 100vw);
	height: calc(20 / var(--break) * 100vw);
	left: 0;
	top: .4em;
	background: #333;
}
.txt_format01 {
	max-width: 1000px;
}
.tbl_fee {
	max-width: 1000px;
}
.tbl_fee table {
	border-color: #;
}
.tbl_fee th {
	background: #;
}
.tbl_fee thead th {
	background: #;
	text-align: center;
}
.tbl_fee thead tr th:not(:last-of-type) {
	border-right: 1px solid #fff;
}
.tbl_fee tr:not(:last-child) td {
	border-bottom-color: #;
}
.tbl_fee tbody tr td:not(:last-of-type) {
	border-right: 1px solid #;
}
.tbl_fee01 tbody th {
	text-align: center;
}
.wrap_format01 .box_flow:last-of-type:before {
	display: none;
}
.box_format03 .col_img {
	width: 31%;
	max-width: 345px;
}
.box_format03 .col_txt {
	width: 65%;
}
.row_format04 .col {
	width: 31.8%;
	max-width: 394px;
	margin-right: 2.3%;
}
.row_format04 .col:nth-child(3n), .row_format04 .col:last-child {
	margin-right: 0;
}
.row_format04 .col:not(:nth-child(-n+3)) {
	margin-top: calc(60 / var(--break) * 100vw);
}
.wrap_format01 .box_qa03 {
	border: none;
	margin-bottom: calc(60 / var(--break) * 100vw);
}
.wrap_format01 .box_qa03 .box_a .box {
	width: calc(60 / var(--break) * 100vw);
	height: calc(60 / var(--break) * 100vw);
	left: 0;
	top: 0;
}
.wrap_format01 .box_qa03 .box_a {
	padding-top: calc(30 / var(--break) * 100vw);
	padding-left: calc(100 / var(--break) * 100vw);
}
.box_format04 .ttl {
	font-weight: 300;
	height: calc(50 / var(--break) * 100vw);
}
.list_format02 li:not(:first-child) {
	margin-top: calc(14 / var(--break) * 100vw);
}
.list_format02 .year {
	width: calc(140 / var(--break) * 100vw);
}
.list_format02 .txt {
	width: calc(100% - calc(140 / var(--break) * 100vw));
}
.risk_format {
	border: 1px solid #333;
}
.risk_format .box{
	overflow-y: scroll;
	max-height: 280px;
	scrollbar-color: #333 #fff;
	scrollbar-width: thin;
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.format {
		padding-bottom: 17vw;
	}
	.wrap_format01:not(:last-of-type) {
		margin-bottom: 20vw;
	}
	.img_format01 {
		max-width: 100%;
	}
	.box_format01 .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.list_format01 li {
		max-width: 100%;
	}
	.row_format03 .copy {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.row_format03 .copy:before {
		top: .55em;
	}
	.txt_format01 {
		max-width: calc(646 / var(--break) * 100vw);
	}
	.tbl_fee {
		max-width: 100%;
	}
	.tbl_fee01 tbody th {
		text-align: left;
	}
	.box_format03 {
		display: block;
	}
	.box_format03 .copy {
		font-size: 1.125rem;
	}
	.row_format04 {
		display: block;
	}
	.row_format04 .col {
		width: 100%;
		max-width: calc(600 / var(--break) * 100vw);
		margin: 0 auto!important;
	}
	.row_format04 .col:not(:first-child) {
		margin-top: calc(60 / var(--break) * 100vw);!important;
	}
	.row_format04 .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.wrap_format01 .box_qa03 .box_a .box {
		width: calc(80 / var(--break) * 100vw);
		height: calc(80 / var(--break) * 100vw);
		font-size: 1.5625rem;
	}
	.tbl_format01.js-scrollable table {
		width: calc(1200 / var(--break) * 100vw);
		font-size: .875rem;
	}
	.img_format02 {
		max-width: calc(500 / var(--break) * 100vw);
	}
	.name_format .job {
		font-size: .875rem;
		letter-spacing: 0;
	}
	.name_format .ja {
		font-size: 1.25rem;
		letter-spacing: 0;
	}
	.box_format04 .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
		height: calc(80 / var(--break) * 100vw);
	}
	.list_format02 li:not(:first-child) {
		margin-top: 2vw;
	}
	.list_format02 .year {
		width: calc(200 / var(--break) * 100vw);
	}
	.list_format02 .txt {
		width: calc(100% - calc(200 / var(--break) * 100vw));
	}
}