@charset "UTF-8";
/* CSS Document */

/*選ばれる理由*/
#reason #reason01 ul {
	padding: 75px 0 40px;
	width: 990px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#reason #reason01 ul li {
	width: 460px;
	padding-bottom: 100px;
}

#reason #reason01 ul li h3 {
	width: calc(100% - 2px);
	min-height: 52px;
	border: 1px solid #000000;
	margin-bottom: 15px;
	line-height: 1.3em;
	font-size: 20px;
	color: #161316;
	font-weight: 700;
	display: table;
}

#reason #reason01 ul li h3 > span {
	display: table-cell;
}

#reason #reason01 ul li h3 > span:first-child {
	width: 63px;
	background-color: #69b1ba;
	color: #eef4fb;
	font-size: 24px;
	font-weight: 500;
	text-align: center;
	border-right: 1px solid #000000;
	padding-top: 20px;
	position: relative;
}

#reason #reason01 ul li h3 > span:last-child {
	width: calc(100% - 104px);
	padding: 10px 20px;
	vertical-align: middle;
}

#reason #reason01 ul li h3 > span > span {
	font-size: 12px;
	line-height: normal;
	position: absolute;
	left: 50%;
	top: 2px;
	transform: translateX(-50%);
}

#reason #reason01 ul li div {
	padding-bottom: 25px;
}


/*クリニック案内*/
#clinic #clinic01 {
	width: 1140px;
	margin: 0 auto;
	padding: 75px 0 120px;
}

#clinic #clinic01 .box {
	width: 1096px;
	margin: 0 auto;
	padding: 75px 0 0;
	display: flex;
	align-items: flex-end;
}

#clinic #clinic01 .box div:nth-child(2) {
	width: 431px;
	padding: 0 0 0 45px;
}

#clinic #clinic01 .box div:nth-child(2) p.t01 {
	font-size: 18px;
	padding-bottom: 15px;
	line-height: 1em;
	font-weight: 500;
}

#clinic #clinic01 .box div:nth-child(2) p.t02 {
	font-size: 32px;
	padding-bottom: 20px;
	line-height: 1em;
	font-weight: 500;
}

#clinic #clinic01 .box div:nth-child(2) dl {
	padding-top: 20px;
	display: flex;
	flex-wrap: wrap;
}

#clinic #clinic01 .box div:nth-child(2) dl dt {
	width: 110px;
	line-height: 1.8em;
}

#clinic #clinic01 .box div:nth-child(2) dl dd {
	width: calc(100% - 110px);
	line-height: 1.8em;
}

#clinic #clinic02 {
	width: 1140px;
	margin: 0 auto;
	padding: 0 0 90px;
}

#clinic #clinic02 table {
	width: 100%;
	margin: 60px 0 0;
}

#clinic #clinic02 table td {
	background-color: #fcfcfc;
	padding: 20px 30px;
	line-height: 1.8em;
	border: 1px solid #414141;
}

#clinic #clinic02 table td:first-child {
	width: 310px;
}

#clinic #clinic02 table td a {
	color: #252525;
}


/*アクセス*/
#access #access01 {
	width: 1140px;
	margin: 0 auto;
	padding: 75px 0 110px;
	display: flex;
	justify-content: space-between;
}

#access #access01 table {
	width: 733px;
}

#access #access01 table td {
	background-color: #fcfcfc;
	padding: 20px 30px;
	line-height: 1.8em;
	border: 1px solid #414141;
}

#access #access01 table td:first-child {
	width: 120px;
}

#access #access01 table td a {
	color: #252525;
}

#access #access02 {
	width: 1140px;
	margin: 0 auto;
	padding-bottom: 120px;
}

#access #access02 h2 span {
	padding-left: 74px;
	position: relative;
}

#access #access02 h2 span::before {
	content: "";
	width: 50px;
	height: 50px;
	background-image: url("../../images/ico_train.webp");
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

#access #access02 p.t01 {
	padding: 45px 0 40px;
	font-size: 20px;
	font-weight: 700;
	color: #161316;
}

#access #access02 ul {
	padding: 0 0 50px;
}

#access #access02 ul li {
	line-height: 1.8em;
	display: table;
}

#access #access02 ul li span {
	display: table-cell;
}

#access #access02 ul li span:first-child {
	width: 1.2em;
}

#access #access02 div {
	width: 990px;
	height: 330px;
	margin: 0 auto;
	padding-bottom: 25px;
}

#access #access03 {
	width: 1140px;
	margin: 0 auto;
	padding-bottom: 120px;
}

#access #access03 h2 span {
	padding-left: 74px;
	position: relative;
}

#access #access03 h2 span::before {
	content: "";
	width: 50px;
	height: 50px;
	background-image: url("../../images/ico_car.webp");
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-40%);
}

#access #access03 p.t01 {
	padding: 45px 0 35px;
}

#access #access03 h3 {
	font-size: 20px;
	font-weight: 700;
	color: #161316;
	padding-left: 45px;
	position: relative;
}

#access #access03 h3::before {
	content: "";
	width: 31px;
	height: 31px;
	background-image: url("../../images/ico_parking.webp");
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

#access #access03 p.t02 {
	padding: 25px 0 0;
}

#access #access04 {
	width: 1140px;
	margin: 0 auto;
	padding-bottom: 120px;
}

#access #access04 h2 span {
	padding-left: 74px;
	position: relative;
}

#access #access04 h2 span::before {
	content: "";
	width: 50px;
	height: 50px;
	background-image: url("../../images/ico_bike.webp");
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-25%);
}

#access #access04 p {
	padding: 45px 0 0;
}

#access #access05 {
	width: 990px;
	margin: 0 auto 120px;
	padding: 60px 75px 50px;
	background-color: #eef4fb;
}

#access #access05 h2 {
	text-align: center;
	font-size: 32px;
	color: #161316;
	font-weight: 700;
	position: relative;
}

#access #access05 h2::before {
	content: "";
	width: 100%;
	height: 1px;
	border-bottom: 4px solid #69b1ba;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

#access #access05 h2 span {
	display: inline-block;
	background-color: #eef4fb;
	padding: 0 30px;
	position: relative;
	z-index: 1;
}

#access #access05 p {
	padding: 50px 0 0;
}


/*治療の流れ*/
#flow section {
	width: 1140px;
	margin: 0 auto;
	padding-bottom: 120px;
}

#flow section:first-of-type {
	padding-top: 75px;
}

#flow section:last-of-type {
	padding-bottom: 170px;
}

#flow section .box {
	display: flex;
	justify-content: space-between;
	padding: 50px 0 0;
}

#flow section .box > p {
	width: 570px;
}

#flow section .box > p span {
	color: #b04444;
}

#flow section .box > div:nth-of-type(2) {
	width: 570px;
}

#flow section .box > div:nth-of-type(2) p.btn01 {
	padding-top: 30px;
}

#flow section .box > div:nth-of-type(2) h3 {
	font-weight: 500;
	line-height: 1.8em;
}

#flow section .box > div:nth-of-type(2) h3:nth-of-type(2) {
	padding-top: 30px;
}

#flow ul.btn {
	width: 956px;
	margin: 0 auto;
	padding-bottom: 45px;
	padding-top: 60px;
	display: flex;
	justify-content: space-between;
}

#flow ul.btn li {
	box-shadow: 0px 0px 8px 0px rgba(39, 39, 39, 0.3);
}

#flow ul.tel_t {
	display: flex;
	justify-content: center;
	align-items: center;
}

#flow ul.tel_t li:first-child {
	padding-right: 20px;
}

#flow ul.tel_t li:nth-child(2) a {
	font-size: 34px;
	color: #69b1ba;
	text-decoration: none;
	padding-left: 50px;
	position: relative;
}

#flow ul.tel_t li:nth-child(2) a::before {
	content: "";
	width: 42px;
	height: 28px;
	background-image: url("../../images/ico_tel.webp");
	position: absolute;
	left: 0;
	top: 13px;
}

#flow ul.tel_t li:nth-child(3) {
	padding-left: 20px;
}

#flow ul.tel_t li:nth-child(3) span {
	border: 1px solid #0b1216;
	padding: 0 5px;
	margin-left: 8px;
	line-height: 1em;
}


/*料金表*/
#price #price01 {
	width: 1140px;
	margin: 0 auto;
	padding: 75px 0 0;
}

#price #price01 .box01 {
	padding: 30px 0 200px;
	width: 1140px;
	margin: 0 auto;
}

#price #price01 .box01 h3 {
	border: 2px solid #c7b47c;
	text-align: center;
	line-height: 90px;
	font-size: 36px;
	color: #161316;
	font-weight: 700;
}

#price #price01 .box01 h3 span {
	padding-left: 70px;
	position: relative;
}

#price #price01 .box01 h3 span::before {
	content: "";
	width: 70px;
	height: 70px;
	background-image: url("../../images/ico_wakaba.webp");
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

#price #price01 .box01 dl {
	display: flex;
	justify-content: center;
	align-items: baseline;
	padding: 30px 0 35px;
}

#price #price01 .box01 dl dt {
	width: 170px;
	line-height: 53px;
	font-size: 32px;
	color: #fff;
	font-weight: 500;
	text-align: center;
	background-color: #c7b47c;
	margin-right: 30px;
	position: relative;
	bottom: 10px;
}

#price #price01 .box01 dl dd {
	font-size: 86px;
	color: #161316;
	font-weight: 700;
}

#price #price01 .box01 dl dd span.bl {
	position: relative;
}

#price #price01 .box01 dl dd span.bl::after {
	content: "";
	width: 100%;
	height: 15px;
	background: #ffd900;
	position: absolute;
	left: 0;
	bottom: 20px;
	z-index: -1;
}

#price #price01 .box01 dl dd span.txt01 {
	font-size: 48px;
	font-weight: 500;
}

#price #price01 .box01 dl dd span.txt02 {
	font-size: 24px;
	font-weight: 500;
}

#price #price01 .box01 p {
	text-align: center;
	font-size: 32px;
	color: #161316;
}

#price #price01 .box02 {
	padding: 0 0 130px;
}

#price #price01 .box02 > h3 {
	text-align: center;
	font-size: 36px;
	color: #161316;
	font-weight: 700;
}

#price #price01 .box02 > h3 span {
	padding: 0 75px;
	position: relative;
}

#price #price01 .box02 > h3 span::before {
	content: "";
	width: 50px;
	height: 1px;
	border-bottom: 6px solid #000000;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

#price #price01 .box02 > h3 span::after {
	content: "";
	width: 50px;
	height: 1px;
	border-bottom: 6px solid #000000;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

#price #price01 .box02 > ul {
	padding-top: 90px;
	width: 1140px;
	margin: 0 auto;
}

#price #price01 .box02 > ul li {
	padding-bottom: 140px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#price #price01 .box02 > ul li:last-child {
	padding-bottom: 0;
}

#price #price01 .box02 > ul li dl {
	width: calc(100% - 4px);
	height: 90px;
	border: 2px solid #c7b47c;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#price #price01 .box02 > ul li dl dt {
	width: 385px;
	font-size: 36px;
	color: #fff;
	line-height: 90px;
	font-weight: 500;
	padding-left: 75px;
	background-color: #c7b47c;
	position: relative;
}

#price #price01 .box02 > ul li dl dt::before {
	content: "";
	width: 69px;
	height: 69px;
	background-image: url("../../images/ico_hair.webp");
	position: absolute;
	left: 14px;
	top: 50%;
	transform: translateY(-50%);
}

#price #price01 .box02 > ul li dl dd {
	padding: 0 20px 0 0;
	font-size: 60px;
	color: #161316;
	font-weight: 500;
}

#price #price01 .box02 > ul li dl dd span.txt01 {
	display: inline-block;
	font-size: 30px;
	background-color: #f7f4eb;
	text-align: center;
	line-height: 53px;
	width: 170px;
	margin-right: 20px;
	position: relative;
	bottom: 10px;
}

#price #price01 .box02 > ul li dl dd span.txt02 {
	font-size: 36px;
}

#price #price01 .box02 > ul li dl dd span.txt03 {
	font-size: 18px;
	font-weight: 400;
}

#price #price01 .box02 > ul li p {
	font-size: 30px;
	color: #161316;
}

#price #price01 .box02 > ul li p span {
	font-weight: 500;
}

#price #price01 > ul {
	padding-bottom: 55px;
}

#price #price02 {
	width: 1140px;
	margin: 0 auto;
	padding: 0 0 170px;
}

#price #price03 {
	width: 1140px;
	margin: 0 auto;
	padding: 0 0 110px;
}

#price #price02 div,#price #price03 div {
	padding: 50px 0 0;
}

#price #price03 > p {
	padding: 20px 0 0 1.2em;
	font-size: 18px;
	position: relative;
}

#price #price03 > p::before {
	content: "※";
	position: absolute;
	left: 0;
	top: 20px;
}

#price #price04 {
	padding-bottom: 100px;
}


/*プライバシーポリシー*/
#privacy01 {
	padding: 75px 0 120px;
	width: 1140px;
	margin: 0 auto;
}

#privacy01 p.t01 {
	padding-bottom: 80px;
}

#privacy01 p.t02 {
	padding: 45px 0 90px;
}

#privacy01 p.t03 {
	padding: 45px 0 0;
}

#privacy01 ul {
	padding: 0 0 90px;
	counter-reset: number 0;
}

#privacy01 li {
	line-height: 1.8em;
	position: relative;
	padding-left: 1.3em;
}

#privacy01 li::before {
	counter-increment: number 1;
    content: counter(number)".";
    position: absolute;
    left: 0;
    top: 0;
}


/*サイトマップ*/
#sitemap01 {
	padding: 75px 0 120px;
	width: 1140px;
	margin: 0 auto;
}

#sitemap01 ul {
	display: flex;
	flex-wrap: wrap;
}

#sitemap01 ul li {
	width: 364px;
	padding-right: 24px;
	padding-bottom: 30px;
}

#sitemap01 ul li:nth-child(3n) {
	padding-right: 0;
}

#sitemap01 ul li a {
	display: flex;
	align-items: center;
	height: calc(100% - 30px);
	border: 2px solid #c4dde3;
	color: #161316;
	padding: 15px 20px;
	text-decoration: none;
	position: relative;
}

#sitemap01 ul li a::after {
	content: ">";
	position: absolute;
	right: 17px;
	top: 50%;
	transform: translateY(-50%) scale(0.6,1);
}

#sitemap01 ul li a:hover {
	background: linear-gradient(#eef4fb,#fff);
}


/*エクソソームメソセラピー*/
#exosome #exosome01 {
	padding: 75px 0 160px;
	width: 1140px;
	margin: 0 auto;
}

#exosome #exosome01 .box01 {
	padding: 75px 0 40px;
	display: flex;
	justify-content: space-between;
}

#exosome #exosome01 .box01 p {
	width: 720px;
}

#exosome #exosome01 > p {
	padding: 0 0 150px;
}

#exosome #exosome01 .box02 {
	width: 990px;
	margin: 0 auto;
}

#exosome #exosome01 .box02 h2 {
	text-align: center;
	font-size: 36px;
	font-weight: 500;
	line-height: 1em;
	position: relative;
}

#exosome #exosome01 .box02 h2 span {
	background-color: #fff;
	padding: 0 15px;
}

#exosome #exosome01 .box02 h2::before {
	content: "";
	width: 100%;
	height: 1px;
	border-bottom: 4px solid #8dbac0;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: -1;
}

#exosome #exosome01 .box02 ul {
	padding: 80px 0 0;
	display: flex;
	flex-wrap: wrap;
}

#exosome #exosome01 .box02 ul li {
	width: calc(50% - 50px);
	padding-left: 50px;
	margin-bottom: 20px;
	color: #5c5442;
	font-size: 20px;
	font-weight: 500;
	position: relative;
}

#exosome #exosome01 .box02 ul li:before {
	content: "";
	width: 31px;
	height: 31px;
	background-image: url("../../images/ico_check.webp");
	position: absolute;
	left: 0;
	top: 0;
}

#exosome #exosome02 {
	width: 1140px;
	margin: 0 auto;
}

#exosome #exosome02 .box01 {
	padding: 75px 0 70px;
	display: flex;
	justify-content: space-between;
}

#exosome #exosome02 .box01 p {
	width: 570px;
}

#exosome #exosome02 > p.t01 {
	padding: 0 0 100px;
}

#exosome #exosome02 > div.i01 {
	text-align: center;
	padding: 0 0 100px;
}

#exosome #exosome02 > p.t02 {
	padding: 0 0 90px;
}

#exosome #exosome02 > div.i02 {
	text-align: center;
	padding: 0 0 126px;
}

#exosome #exosome02 .box02 {
	padding: 40px 0 170px 90px;
	display: flex;
	justify-content: space-between;
}

#exosome #exosome02 .box02 ul {
	width: 800px;
	padding-top: 20px;
}

#exosome #exosome02 .box02 ul li {
	padding-left: 1.2em;
	line-height: 1.8em;
	position: relative;
}

#exosome #exosome02 .box02 ul li::before {
	content: "⚫︎";
	position: absolute;
	left: 0;
	top: 0;
}

#exosome #exosome03 {
	width: 1140px;
	margin: 0 auto;
	padding-bottom: 170px;
}

#exosome #exosome03 > p {
	padding: 70px 0 65px;
}

#exosome #exosome03 .box01 {
	width: 990px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

#exosome #exosome03 .box01 div:nth-of-type(2) {
	width: 242px;
	border: 1px solid #9a9a9a;
	padding-left: 50px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#exosome #exosome03 .box01 div:nth-of-type(2) p {
	font-size: 20px;
	font-weight: 500;
	padding-bottom: 20px;
}

#exosome #exosome03 .box01 div:nth-of-type(2) ul li {
	padding-left: 1.2em;
	margin-bottom: 5px;
	font-weight: 500;
	position: relative;
}

#exosome #exosome03 .box01 div:nth-of-type(2) ul li::before {
	content: "⚫︎";
	position: absolute;
	left: 0;
	top: 0;
}

#exosome #exosome04 {
	width: 1140px;
	margin: 0 auto;
}

#exosome #exosome04 .box01 {
	padding: 80px 0 55px;
}

#exosome #exosome04 .box01 .box {
	padding: 60px 0 105px;
	display: flex;
	justify-content: space-between;
}

#exosome #exosome04 .box01 .box p {
	width: 650px;
}

#exosome #exosome04 .box01 .box p span {
	font-size: 20px;
	font-weight: 500;
	display: block;
	padding-bottom: 25px;
}

#exosome #exosome04 > ul {
	display: flex;
	justify-content: space-between;
}

#exosome #exosome04 .box02 {
	width: 990px;
	margin: 0 auto;
	padding-top: 100px;
	padding-bottom: 80px;
}

#exosome #exosome04 .box02 p {
	padding: 30px 0 80px;
}

#exosome #exosome05 {
	width: 1140px;
	margin: 0 auto;
}

#exosome #exosome05 .box {
	padding: 75px 0 150px;
	display: flex;
	justify-content: space-between;
}

#exosome #exosome05 .box p {
	width: 570px;
}

#exosome #exosome06 {
	width: 1140px;
	margin: 0 auto;
	padding-bottom: 120px;
}

#exosome #exosome06 p.t01 {
	padding: 70px 0 1.8em;
}

#exosome #exosome06 ul li {
	line-height: 1.8em;
	padding-left: 1.2em;
	position: relative;
}

#exosome #exosome06 ul li::before {
	content: "⚫︎";
	position: absolute;
	left: 0;
	top: 0;
}

#exosome #case {
	width: 990px;
	margin: 0 auto;
}

#exosome #case ul.case_i {
	padding: 80px 0 40px;
	display: flex;
	justify-content: space-between;
}

#exosome #case ul.case_t {
	padding-bottom: 100px;
}

#exosome #case ul.case_t li {
	font-size: 14px;
	line-height: 1.8em;
}

#exosome #case h2.h04.w_case {
	border-bottom: 6px solid #5c5542;
	border-top: 6px solid #5c5542;
	color: #5c5542;
}

#exosome #case h2.h04.w_case span:nth-child(2)::before {
	background-image: url("../../images/ico_logo_w.webp");
}

#exosome #m_price,#exosome #w_price {
	width: 1140px;
	margin: 0 auto;
}

#exosome #m_price {
	padding: 0 0 160px;
}

#exosome #m_price > p {
	text-align: center;
	padding: 50px 0 0;
}

#exosome #m_price > p a {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 26px;
	width: 520px;
	height: 72px;
	margin: 0 auto;
	border-radius: 15px;
	text-decoration: none;
	line-height: 1.3em;
	background-color: #fde4ea;
	color: #f17190;
	position: relative;
}

#exosome #m_price > p a a:hover {
	opacity: .8;
}

#exosome #m_price > p a::after {
	content: ">";
	font-size: 24px;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%) scale(0.6,1);
}

#exosome #m_price > p a > span {
	padding: 0 60px;
	position: relative;
}

#exosome #m_price > p a > span::before {
	content: "";
	width: 39px;
	height: 39px;
	background-image: url("../../images/ico_women.webp");
	background-size: cover;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

#exosome #w_price {
	padding: 0 0 180px;
}

#exosome #m_price div,#exosome #w_price div {
	padding: 50px 0 0;
}

#exosome #price_how {
	padding-bottom: 90px;
}


/*よくあるご質問*/
#faq ul.m_w_btn {
	padding: 75px 0;
}

#faq #faq01 {
	padding: 0 0 30px;
	background-color: #f1f1f1;
}

#faq #faq02 {
	padding: 0 0 30px;
	background-color: #f1f1f1;
}


/*発毛症例集*/
#case_collection ul.m_w_btn {
	padding: 75px 0;
}

#case_collection #case01,#case_collection #case02 {
	width: 990px;
	margin: 0 auto;
	padding: 0 0 120px;
}

#case_collection ul.case_i {
	padding: 80px 0 40px;
	display: flex;
	justify-content: space-between;
}

#case_collection ul.case_t {
	padding-bottom: 50px;
}

#case_collection ul.case_t li {
	font-size: 14px;
	line-height: 1.8em;
}

#case_collection #case02 h2.h04 {
	border-bottom: 6px solid #5c5542;
	border-top: 6px solid #5c5542;
	color: #5c5542;
}

#case_collection #case02 h2.h04 span:nth-child(2)::before {
	background-image: url("../../images/ico_logo_w.webp");
}


/*フォーム　サンクス*/
#reserve_thx #reserve_thx01 {
	padding: 75px 0 120px;
	width: 1140px;
	margin: 0 auto;
}

#reserve_thx #reserve_thx01 .t01 {
	padding: 80px 0 120px;
}