@charset "utf-8";

.birthjourney {
	font-size: 16px;
	line-height: 1;
	margin-bottom: 130px;
	overflow: clip;
	text-box: trim-both cap alphabetic;
}

.birthjourney *,
.birthjourney *:before,
.birthjourney *:after {
	box-sizing: border-box;
}



.birthHero {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: max(2.5%, calc(50% - 440px)) min(calc(435 / 880 * 100%), 435px) min(calc(46 / 880 * 100%), 46px) minmax(0, 1fr) max(2.5%, calc(50% - 440px));
	grid-template-rows: auto 110px auto;
	background: #e4f1f5;
}
	.birthHero__title {
		grid-column: 2;
		grid-row: 1;
		position: relative;
		z-index: 1;
		display: grid;
		place-content: center;
		place-items: center;
		min-height: calc(239 / 28 * 1em);
		box-sizing: border-box;
		padding: 1em .5em;
		font-size: 28px;
		line-height: 1;
		text-align:center;
		color: #6c5417;
	}
	.birthHero__title em {
		font-size: calc(36 / 28 * 100%);
		font-style: normal;
		margin-bottom: calc(24 / 36 * 1em);
	}
	.birthHero__title:after {
		content: "";
		position: absolute;
		z-index: -1;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="435.32" height="264.7" viewBox="0 0 435.32 264.7"><path d="M435.32,151.44c0-25.51-16.49-47.69-40.78-59.06,4.27-6.86,6.7-14.7,6.7-23.03,0-26.93-25.32-48.76-56.55-48.76-11.14,0-21.51-10.75-30.26-5.96-15.48-11.74-36.68-5.45-60.07-5.45-17.85,0-34.43,4.22-48.16,11.43C195.55,8.12,178.39,0,159.03,0c-20.87,0-39.17,9.43-49.52,23.61-3.62-.34-7.3-.54-11.04-.54-49.89,0-90.33,31.26-90.33,69.83,0,9.75,2.6,19.04,7.27,27.47-9.68,11.63-15.4,25.88-15.4,41.29,0,39.15,36.81,70.88,82.21,70.88,10.45,0,20.43-1.7,29.62-4.76,19.95,21.98,59.07,36.92,104.07,36.92s80.9-13.75,101.52-34.27c41.7,32.38,67.61,12.03,67.61,12.03-16.19-6.61-26.48-15.62-33-24.03,1.78.11,3.58.18,5.39.18,43.02,0,77.9-30.07,77.9-67.17Z" fill="%23fff"/></svg>') no-repeat bottom center/100% auto;
	}
	.birthHero__lead {
		grid-column: 2;
		grid-row: 3;
		font-size: 16px;
		line-height: calc(34 / 16);
	}
	.birthHero__image {
		grid-column: 4;
		grid-row: 1 / 4;
		align-self: end;
		width: calc(332 / 399 * 100%);
		margin-bottom: calc(38 / 399 * 100%);
	}
	.birthHero::before {
		content: "";
		grid-column: 1 / -1;
		grid-row: 2;
		align-self: end;
		position: relative;
		z-index: -1;
		height: 80px;
		background: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="1936" height="80.21" viewBox="0 0 1936 80.21"><path d="M1936,0c-322.67,44.82-605-20.69-988.17,17.24C574.75,51.72,352.92-20.69,0,13.79v66.42h1936V0Z" fill="%23fff"/></svg>') repeat-x center/max(1936px, 100%) auto;
	}
	.birthHero::after {
		content: "";
		grid-column: 1 / -1;
		grid-row: 3;
		position: relative;
		z-index: -1;
		background: #fff;
	}

.birthChoice {
	margin-top: 100px;
	padding-bottom: 130px;
}
	.birthChoice__eyebrow {
		max-width: 70px;
	}
	.birthChoice h3 {
		margin-top: 28px;
		font-size: 30px;
		line-height: calc(36 / 30);
		color: #6c5417;
	}
	.birthChoice__sub {
		margin-top: 40px;
		font-size: 16px;
	}
	.birthChoice__list {
		margin-top: 30px;
		display: flex;
		justify-content: center;
		gap: 18px;
	}
	.birthChoice__list li {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 120px;
		height: 120px;
		border-radius: 50%;
		background: url(../../img/birthjourney/pc/bg_birthchoiceitem.png) no-repeat center/100% auto;
		font-size: 18px;
		color: #fff;
	}
	.birthChoice__list li:nth-child(even) {
		margin-top: 20px;
	}
	.birthChoice__note {
		margin-top: 48px;
		font-size: 16px;
		line-height: 2;
	}

.birthNav {
	position: sticky;
	z-index: 9;
	top: 60px;
	background: #f0f7f9;
	padding-block: 30px;
}
	.birthNav ul {
		display: flex;
		justify-content: center;
		gap: 20px;
	}
	.birthNav li {
		flex: 1;
	}
	.birthNav a {
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		align-items: center;
		gap: calc(12 / 18 * 1em) 0;
		min-height: 80px;
		padding: calc(14 / 18 * 1em) .5em;
		border-radius: 10px;
		font-size: clamp(12px, calc(18 / 1200 * 100vw), 18px);
		line-height: 1.25;
		color: #fff;
		background: rgb(120, 183, 204, .5);
	}
	.birthNav a.is-current {
		background: rgb(120, 183, 204);
	}
	@media (any-hover: hover) {
		.birthNav a {
			transition: background .3s;
		}
		.birthNav a:hover {
			background: rgb(120, 183, 204);
		}
	}
	.birthNav a::after {
		content: "";
		display: block;
		width: calc(15 / 18 * 1em);
		height: calc(8 / 18 * 1em);
		background: currentColor;
		-webkit-mask: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="15.13" height="7.56" viewBox="0 0 15.13 7.56"><polygon points="7.57 7.56 0 .65 .59 0 7.57 6.38 14.54 0 15.13 .65 7.57 7.56"/></svg>') no-repeat center/100% auto;
		mask: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="15.13" height="7.56" viewBox="0 0 15.13 7.56"><polygon points="7.57 7.56 0 .65 .59 0 7.57 6.38 14.54 0 15.13 .65 7.57 7.56"/></svg>') no-repeat center/100% auto;
	}

.birthKnowledge {
	margin-top: calc(-200px + 130px);
	padding-top: 200px;
}
	.birthKnowledge__normal {
		max-width: 1100px;
		padding: 70px min(calc(100 / 1100 * 100%), 100px) 80px;
		border: 1px solid #aec25d;
		border-radius: 20px;
	}
	.birthKnowledge__normal h3{
		font-size: 30px;
		color: #6c5417;
	}
	.birthKnowledge__intro {
		margin-top: 50px;
		font-size: 16px;
		line-height: calc(36 / 16);
		text-align: center;
	}
	.birthStages {
		margin-top: 50px;
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 40px 52px;
	}
	.birthStages li {
		position: relative;
		z-index: 1;
	}
	.birthStages h4 {
		padding: 10px 5px 12px;
		font-size: 18px;
		font-weight: bold;
		color: #483826;
		background: #f0eee8;
	}
	.birthStages figure {
		position: relative;
		z-index: 1;
		display: block;
		width: calc(100% - 36px);
		margin-top: 16px;
		margin-inline: auto;
	}
	.birthStages li:not(:last-child) figure::after {
		content: "";
		position: absolute;
		z-index: 1;
		top: 50%;
		left: calc(100% + 18px + 18px);
		translate: 0 -50%;
		width: 15px;
		height: 18px;
		background: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="15.43" height="17.82" viewBox="0 0 15.43 17.82"><polygon points="15.43 8.91 0 0 0 17.82 15.43 8.91" fill="%23aec25d"/></svg>') no-repeat center/100% auto;
	}
	.birthStages figure img {
		border: 1px solid #cbc2b9;
		border-radius: 50%;
		padding: 4.5px;
	}
	.birthStages p {
		margin-top: 18px;
		font-size: 14px;
		line-height: calc(24 / 14);
	}
	.birthKnowledge__painfree {
		margin-top: 130px;
	}
	.birthKnowledge__painfree h3 {
		font-size: 30px;
		color: #6c5417;
	}
	.birthKnowledge__painfree > p {
		margin-top: 34px;
		font-size: 16px;
		line-height: calc(36 / 16);
	}
	.birthTableWrap {
		max-width: 1100px;
		margin-top: 50px;
		overflow-x: auto;
	}
	.birthTable {
		border-collapse: separate;
		border: 1px solid #cfd8a5;
		border-radius: 10px;
		overflow: hidden;
		font-size: 16px;
		line-height: calc(22 / 16);
	}
	.birthTable th,
	.birthTable td {
		border-right: 1px solid #dde5b8;
		border-bottom: 1px solid #dde5b8;
		vertical-align: middle;
	}
	.birthTable thead th {
		padding: 25px 30px;
		font-size: 14px;
		text-align: center;
		background: #edf2d3;
	}
	.birthTable thead th strong {
		font-size: calc(18 / 14 * 100%);
		font-weight: bold;
		color: #483826;
	}
	.birthTable tbody th {
		width: 17%;
		white-space: nowrap;
		padding: 20px 30px;
		font-weight: bold;
		text-align: left;
		color: #483826;
	}
	.birthTable tbody td {
		padding: 25px 35px;
	}
	.birthTable tr > :last-child {
		border-right: 0;
	}
	.birthTable tbody tr:last-child > * {
		border-bottom: 0;
	}

.birthSupport {
	margin-top: calc(-200px + 130px);
	padding-top: 200px;
}
	.birthSupport > h3 {
		padding: 21px 10px;
		background: #e9e5dc;
		color: #483826;
		font-size: 18px;
		font-weight: bold;
	}
	.birthSupport__body {
		margin-top: 65px;
		display: flex;
		align-items: center;
		gap: 30px;
		padding-right: calc(48 / 1000 * 100%);
	}
	.birthSupport__body > div {
		flex: 1;
	}
	.birthSupport__body h4 {
		display: inline-block;
		margin-bottom: 48px;
		padding-bottom: 11px;
		border-bottom: 1px solid #aec25d;
		font-size: 20px;
		color: #6c5417;
	}
	.birthSupport__body p {
		font-size: 16px;
		line-height: calc(36 / 16);
	}
	.birthSupport__body p em {
		font-style: normal;
		background: #e6ebb8;
	}
	.birthSupport__body img {
		width: calc(161 / 952 * 100%);
	}

#birthPoint {
	margin-top: -200px;
	padding-top: 200px;
}

.birthClinic {
	margin-top: 178px;
	padding-bottom: 150px;
	background: #f8faef;
}
	/* .birthClinic__inner {
	} */
	.birthClinic__badge {
		display: block;
		width: 100px;
		margin: 0 auto -50px;
		translate: 0 -50%;
	}
	.birthClinic__eyebrow {
		margin-top: 120px;
		color: #483826;
		font-size: 22px;
	}
	.birthClinic h3 {
		margin-top: 35px;
		font-size: 30px;
		color: #483826;
	}
	.birthClinic__lead {
		margin-top: 75px;
		color: #6c5417;
		font-size: 44px;
	}
	.birthClinic__lead em {
		position: relative;
		z-index: 1;
		font-style: normal;
	}
	.birthClinic__lead em::before {
		content: "";
		position: absolute;
		z-index: 1;
		bottom: 100%;
		left: 0;
		width: 100%;
		height: calc(6 / 44 * 1em);
		background: currentColor;
		-webkit-mask: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="5.99" height="5.99" viewBox="0 0 5.99 5.99"><circle cx="2.99" cy="2.99" r="2.99"/></svg>') repeat-x top left/1em 100%;
		mask: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="5.99" height="5.99" viewBox="0 0 5.99 5.99"><circle cx="2.99" cy="2.99" r="2.99"/></svg>') repeat-x top left/1em 100%;
	}
	.birthFeatureList {
		max-width: 1100px;
		margin-top: 100px;
		display: flex;
		flex-direction: column;
		gap: 80px 0;
	}
	.birthFeature {
		display: grid;
		grid-template-columns: calc(601 / 1100 * 100%) minmax(0, 1fr);
		align-items: center;
		gap: 60px calc(90 / 1100 * 100%);
	}
	.birthFeature img {
		display: block;
		width: 100%;
		align-self: start;
	}
	.birthFeature h4 {
		color: #6c5417;
		font-size: 23px;
		line-height: calc(42 / 23);
	}
	.birthFeature p {
		margin-top: 15px;
		font-size: 16px;
		line-height: calc(36 / 16);
		text-align: justify;
	}
	.birthFeature p em {
		font-style: normal;
		background: #e6ebb8;
	}
	.birthFeature a {
		margin-top: 20px;
		display: inline-block;
		color: #483826;
		font-size: 18px;
		font-weight: bold;
	}
	.birthFeature a span {
		text-decoration: underline;
	}
	.birthClinic__message {
		margin-top: 120px;
		color: #fff;
		font-size: 26px;
		line-height: calc(56 / 26);
	}
	.birthClinic__message span {
		padding: 0 2px;
		background: #aec25d;
	}

.birthQuestions {
	position: relative;
	z-index: 1;
	max-width: 1150px;
	margin-top: -90px;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: end;
}
	.birthQuestion {
		position: relative;
		z-index: 1;
	}
	.birthQuestion:first-child {
		grid-column: 2;
		grid-row: 1;
		width: calc(509 / 575 * 100%);
		margin-left: calc(8 / 575 * -100%);
		z-index: 2;
	}
	.birthQuestion:nth-child(2) {
		grid-column: 1;
		width: calc(409 / 575 * 100%);
		margin-left: calc(80 / 575 * 100%);
	}
	.birthQuestion:nth-child(3) {
		grid-column: span 2;
		width: calc(422 / 1150 * 100%);
		margin-top: calc(34 / 1150 * 100%);
		margin-left: calc(356 / 1150 * 100%);
	}
	.birthQuestion:nth-child(2)::before {
		content: "";
		position: absolute;
		z-index: -1;
		top: 100%;
		left: 0;
		margin-top: calc(46 / 409 * 100%);
		margin-left: calc(68 / 409 * -100%);
		width: calc(243 / 409 * 100%);
		padding-top: calc(243 / 409 * 100%);
		background: url(../../img/birthjourney/pc/img_baby.png) no-repeat center/100% auto;
	}
	.birthQuestion:nth-child(3)::before {
		content: "";
		position: absolute;
		z-index: -1;
		top: 0;
		left: 100%;
		margin-top: calc(75 / 422 * -100%);
		margin-left: calc(49 / 422 * 100%);
		width: calc(323 / 422 * 100%);
		padding-top: calc(323 / 422 * 100%);
		background: url(../../img/birthjourney/pc/img_hand.png) no-repeat center/100% auto;
	}

.birthStories {
	margin-top: 130px;
	padding-block: 130px;
	background: #e4f1f5;
}
	.birthStories__eyebrow {
		display: block;
		max-width: 80px;
	}
	.birthStories h3 {
		margin-top: 25px;
		font-size: 40px;
		color: #6c5417;
	}
	.birthStoryList {
		margin-top: 85px;
	}
	.birthStoryList li {
		flex: 0 0 calc(352 / 1920 * 100%);
		height: auto;
		margin-inline: calc(16 / 1920 * 100%);
		border-radius: 12px;
		border: 2px dashed #78b7cc;
		padding: calc(46 / 1920 * 100%) calc(27 / 1920 * 100%) calc(70 / 1920 * 100%);
		background: #fff;
	}
	.birthStoryList li img {
		display: block;
		max-width: 75px;
		margin-inline: auto;
	}
	.birthStoryList li p {
		margin-top: 48px;
		font-size: 14px;
		line-height: calc(34 / 14);
		text-align: justify;
	}
	.birthStories__link {
		max-width: 420px;
		min-height: calc(80 / 18 * 1em);
		margin-top: 84px;
		display: grid;
		grid-template-columns: minmax(0, auto) auto;
		justify-content: center;
		align-items: center;
		gap: 0 calc(25 / 18 * 1em);
		border-radius: 9999px;
		border: 1px solid #78b7cc;
		font-size: 18px;
		text-indent: calc(6 / 18 * -1em);
		color: #483826;
		background: #fff;
	}
	.birthStories__link img {
		width: 25px;
	}
	@media (any-hover: hover) {
		.birthStories__link:active,
		.birthStories__link:hover {
			color: #483826;
		}
	}

.birthFaq {
	padding-block: 110px 160px;
	background: #f7f7f5;
}
	.birthFaq__head {
		max-width: 662px;
		display: grid;
		grid-template-columns: minmax(0, 1fr) 140px;
		align-items: start;
		gap: 30px;
		padding-right: 30px;
	}
	.birthFaq__head h3 {
		font-size: 36px;
		color: #6c5417;
	}
	.birthFaq__head p {
		font-size: 16px;
		line-height: calc(36 / 16);
		padding-bottom: 30px;
	}
	.birthFaq__head img {
		grid-column: 2;
		grid-row: 1 / 3;
		align-self: end;
		display: block;
	}
	.birthFaq__faq {
		max-width: 662px;
	}
	.birthFaq__faq li {
		border-radius: 8px;
		background: #fff;
	}
	.birthFaq__faq li + li {
		margin-top: 13px;
	}
	.birthFaq__faq details::details-content {
    content-visibility: unset;
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows .5s;
	}
	.birthFaq__faq details[open]::details-content {
		grid-template-rows: 1fr;
		padding-bottom: 21px;
	}
	.birthFaq__faq summary {
		list-style: none;
		cursor: pointer;
		position: relative;
		z-index: 1;
		padding: 22px 30px 21px;
		font-size: 20px;
		color: #483826;
	}
	.birthFaq__faq summary::-webkit-details-marker {
		display: none;
	}
	.birthFaq__faq summary::after {
		content: "＋";
		position: absolute;
		z-index: 1;
		top: 50%;
		right: 30px;
		translate: 0 -50%;
		font-size: calc(21 / 20 * 100%);
	}
	.birthFaq__faq details[open] summary::after {
		content: "−";
	}
	.birthFaq__faq summary + * {
		overflow: hidden;
	}
	.birthFaq__answer {
		padding-inline: 30px;
	}
	.birthFaq__answer p {
		font-size: 16px;
		line-height: calc(36 / 16);
	}

.birthContact {
	position: relative;
	z-index: 1;
	padding-bottom: 77px;
	background: #aec25d;
}
	.birthContact:before {
		content: "";
		position: absolute;
		z-index: -1;
		left: 50%;
		top: -65px;
		translate: -50%;
		width: min(95%, 450px);
		height: 270px;
		background: #aec25d;
		-webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="450" height="270" viewBox="0 0 450 270"><ellipse cx="225" cy="135" rx="225" ry="135"/></svg>') no-repeat center/100% 100%;
		mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="450" height="270" viewBox="0 0 450 270"><ellipse cx="225" cy="135" rx="225" ry="135"/></svg>') no-repeat center/100% 100%;
	}
	.birthContact__eyebrow {
		max-width: 57px;
	}
	.birthContact__copy {
		margin-top: 28px;
		font-size: 18px;
		color: #6c5417;
	}
	.birthContact h3 {
		margin-top: 20px;
		font-size: 30px;
		color: #6c5417;
	}
	.birthContact__reserve {
		margin-top: 75px;
		font-size: 18px;
	}
	.birthContact__tel {
		max-width: 600px;
		min-height: calc(110 / 49 * 1em);
		display: grid;
		grid-template-columns: auto minmax(0, auto);
		justify-content: center;
		align-items: center;
		gap: 0 calc(12 / 49 * 1em);
		margin-top: 20px;
		padding: .25em;
		border-radius: 9999px;
		background: #fff;
		color: #483826;
		font-size: 49px;
	}
	.birthContact__tel::before {
		content: "";
		display: block;
		width: calc(26 / 49 * 1em);
		height: calc(34 / 49 * 1em);
		background: currentColor;
		-webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="25.76" height="33.6" viewBox="0 0 25.76 33.6"><path d="M2.3,1.42C0,2.92-.46,7.6.41,11.42c.68,2.97,2.12,6.96,4.56,10.71,2.29,3.53,5.48,6.7,7.92,8.53,3.13,2.35,7.59,3.85,9.89,2.35,1.17-.76,2.9-2.83,2.98-3.2,0,0-1.02-1.57-1.24-1.91l-3.41-5.26c-.25-.39-1.84-.03-2.65.42-1.09.62-2.09,2.27-2.09,2.27-.75.43-1.37,0-2.68-.6-1.61-.74-3.41-3.04-4.85-5.12-1.31-2.16-2.67-4.75-2.69-6.51-.02-1.44-.15-2.19.54-2.69,0,0,1.92-.24,2.93-.98.75-.55,1.72-1.86,1.47-2.25L7.68,1.92C7.46,1.57,6.44,0,6.44,0c-.37-.08-2.97.66-4.13,1.42Z"/></svg>') no-repeat center/100% auto;
		mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="25.76" height="33.6" viewBox="0 0 25.76 33.6"><path d="M2.3,1.42C0,2.92-.46,7.6.41,11.42c.68,2.97,2.12,6.96,4.56,10.71,2.29,3.53,5.48,6.7,7.92,8.53,3.13,2.35,7.59,3.85,9.89,2.35,1.17-.76,2.9-2.83,2.98-3.2,0,0-1.02-1.57-1.24-1.91l-3.41-5.26c-.25-.39-1.84-.03-2.65.42-1.09.62-2.09,2.27-2.09,2.27-.75.43-1.37,0-2.68-.6-1.61-.74-3.41-3.04-4.85-5.12-1.31-2.16-2.67-4.75-2.69-6.51-.02-1.44-.15-2.19.54-2.69,0,0,1.92-.24,2.93-.98.75-.55,1.72-1.86,1.47-2.25L7.68,1.92C7.46,1.57,6.44,0,6.44,0c-.37-.08-2.97.66-4.13,1.42Z"/></svg>') no-repeat center/100% auto;
	}
	@media (any-hover: hover) {
		.birthContact__tel:active,
		.birthContact__tel:hover {
			color: #483826;
		}
	}
	.birthContact__hours {
		margin-top: 20px;
		font-size: 18px;
		line-height: calc(28 / 18);
	}
	.birthContact__mail {
		max-width: 420px;
		min-height: calc(80 / 18 * 1em);
		display: grid;
		grid-template-columns: auto minmax(0, auto);
		justify-content: center;
		align-items: center;
		gap: 0 calc(17 / 18 * 1em);
		margin-top: 85px;
		padding: .25em;
		border-radius: 9999px;
		background: #483826;
		color: #fff;
		font-size: 18px;
	}
	.birthContact__mail::before {
		content: "";
		display: block;
		width: calc(20 / 18 * 1em);
		height: calc(15 / 18 * 1em);
		background: currentColor;
		-webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="15.04" viewBox="0 0 20 15.04"><polygon points="20 9.05 17.42 6.37 20 4.14 20 9.05"/><polygon points="2.58 6.37 0 9.05 0 4.14 2.58 6.37"/><path d="M20,11.49v2.47c0,.6-.48,1.08-1.08,1.08H1.08c-.6,0-1.08-.48-1.08-1.08v-2.47l3.87-4.01,4.42,3.8c.46.39,1.07.61,1.72.61s1.26-.22,1.72-.61l4.41-3.8,3.87,4.01Z"/><path d="M20,1.08v1.08l-9.43,8.13c-.3.26-.83.26-1.14,0L0,2.16v-1.08C0,.48.48,0,1.08,0h17.84c.6,0,1.08.48,1.08,1.08Z"/></svg>') no-repeat center/100% auto;
		mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="15.04" viewBox="0 0 20 15.04"><polygon points="20 9.05 17.42 6.37 20 4.14 20 9.05"/><polygon points="2.58 6.37 0 9.05 0 4.14 2.58 6.37"/><path d="M20,11.49v2.47c0,.6-.48,1.08-1.08,1.08H1.08c-.6,0-1.08-.48-1.08-1.08v-2.47l3.87-4.01,4.42,3.8c.46.39,1.07.61,1.72.61s1.26-.22,1.72-.61l4.41-3.8,3.87,4.01Z"/><path d="M20,1.08v1.08l-9.43,8.13c-.3.26-.83.26-1.14,0L0,2.16v-1.08C0,.48.48,0,1.08,0h17.84c.6,0,1.08.48,1.08,1.08Z"/></svg>') no-repeat center/100% auto;
	}
	@media (any-hover: hover) {
		.birthContact__mail:active,
		.birthContact__mail:hover {
			color: #fff;
		}
	}

@media screen and (min-width: 769px) and (max-width: 1400px) {
	.birthStoryList li {
		flex: 0 0 32%;
	}
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
	.birthjourney {
		margin-top: 80px;
	}
	.birthNav {
		top: 80px;
	}
	.birthNav a {
		justify-content: center;
	}
}

@media screen and (max-width: 768px) {
	.birthjourney {
		font-size: 14px;
		margin-top: 80px;
		margin-bottom: 80px;
	}
	.birthHero {
		grid-template-columns: 100%;
		grid-template-rows: auto;
	}
	.birthHero__title {
		grid-column: 1;
		min-height: calc(193 / 380 * 100vw);
		padding-top: 2em;
		font-size: 20px;
		width: calc(318 / 380 * 100%);
		margin-top: -39px;
		margin-inline: auto;
	}
	.birthHero__title em {
		font-size: calc(26 / 20 * 100%);
		margin-bottom: calc(18 / 26 * 1em);
	}
	.birthHero__lead {
		grid-column: 1;
		font-size: 14px;
		line-height: calc(32 / 14);
		text-align: center;
	}
	.birthHero__image {
		grid-column: 1;
		grid-row: 2;
		align-self: start;
		width: calc(197 / 380 * 100%);
		margin: calc(28 / 380 * -100%) auto calc(36 / 380 * 100%);
		position: relative;
		z-index: 1;
	}
	.birthHero::before {
		grid-column: 1;
		grid-row: 2;
		height: 104px;
		background: url('data:image/svg+xml;utf8,<svg width="380" height="104" viewBox="0 0 380 104" fill="none" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none"><defs><linearGradient id="paint0_linear_12_3" x1="190" y1="-0.00434713" x2="190" y2="103.846" gradientUnits="userSpaceOnUse"><stop stop-color="white"/><stop offset="1" stop-color="white"/></linearGradient></defs><path d="M99.31 12.3857C62.58 22.7057 30.31 23.4457 0 20.3457V103.846H380V8.14565C291.29 23.5257 207.53 -20.1743 99.31 12.3957V12.3857Z" fill="url(%23paint0_linear_12_3)"/></svg>') repeat-x center/max(380px, 100%) 100%;
	}
	.birthHero::after {
		grid-column: 1;
	}
	.birthChoice {
		margin-top: 80px;
		padding-bottom: 80px;
	}
	.birthChoice__eyebrow {
		max-width: calc(70px * .75);
	}
	.birthChoice h3 {
		margin-top: 20px;
		font-size: min(calc(20 / 380 * 100vw), 20px);
		letter-spacing: -.05em;
	}
	.birthChoice__sub {
		margin-top: 30px;
		font-size: 14px;
	}
	.birthChoice__list {
		max-width: 400px;
		flex-wrap: wrap;
		gap: 8px;
	}
	.birthChoice__list li {
		width: calc((100% - 16px) / 3);
		height: auto;
		aspect-ratio: 1 / 1;
		font-size: 14px;
	}
	.birthChoice__list li:nth-child(even) {
		margin-top: 0;
	}
	.birthChoice__note {
		margin-top: 30px;
		font-size: 14px;
		line-height: calc(32 / 14);
	}
	.birthNav {
		top: 80px;
		padding-block: 0;
	}
	.birthNav ul {
		width: 100%;
		max-width: none;
		justify-content: flex-start;
		gap: 0;
		overflow: auto;
	}
	.birthNav li {
		flex: 1 0 auto;
	}
	.birthNav li + li {
		border-left: 1px solid #fff;
	}
	.birthNav a {
		flex-direction: row;
		justify-content: center;
		gap: 0 .5em;
		min-height: 50px;
		padding: .5em 1.5em;
		border-radius: 0;
		font-size: 14px;
	}
	.birthKnowledge {
		margin-top: calc(-130px + 80px);
		padding-top: 130px;
	}
	.birthKnowledge__normal {
		max-width: 560px;
		padding: 30px 20px 25px;
	}
	.birthKnowledge__normal h3 {
		font-size: 18px;
	}
	.birthKnowledge__intro {
		margin-top: 30px;
		font-size: 14px;
		line-height: calc(32 / 14);
		text-align: left;
	}
	.birthStages {
		margin-top: 30px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 24px 14px;
	}
	.birthStages h4 {
		padding: 8px 5px;
		font-size: 14px;
	}
	.birthStages figure {
		width: calc(100% - 24px);
		margin-top: 10px;
	}
	.birthStages li:not(:last-child) figure::after {
		left: calc(100% + 12px + 3px);
		width: 10px;
		height: 14px;
	}
	.birthStages li:nth-child(2) figure::after {
		content: none;
	}
	.birthStages figure img {
		padding: 3px;
	}
	.birthStages p {
		margin-top: 10px;
		font-size: 12px;
		letter-spacing: 0;
	}
	.birthKnowledge__painfree {
		margin-top: 80px;
	}
	.birthKnowledge__painfree h3 {
		font-size: 18px;
	}
	.birthKnowledge__painfree > p {
		margin-top: 30px;
		font-size: 14px;
		line-height: calc(32 / 14);
		text-align: justify;
		padding-inline: 20px;
	}
	.birthTableWrap {
		width: 100%;
		max-width: none;
		margin-top: 30px;
		display: grid;
		grid-template-columns: 6.25vw 140vw 6.25vw;
	}
	.birthTableWrap::before,
	.birthTableWrap::after {
		content: "";
		display: block;
	}
	.birthTable {
		font-size: 14px;
		line-height: 1.75;
	}
	.birthTable thead th {
		padding: 10px;
	}
	.birthTable thead th strong {
		font-size: calc(16 / 14 * 100%);
	}
	.birthTable tbody th {
		padding: 10px 15px;
	}
	.birthTable tbody td {
		padding: 10px 15px;
	}
	.birthSupport {
		margin-top: calc(-130px + 80px);
		padding-top: 130px;
	}
	.birthSupport > h3 {
		padding: 14px 5px;
		font-size: 16px;
	}
	.birthSupport__body {
		margin-top: 30px;
		display: grid;
		grid-template-columns: minmax(0, 1fr) 16%;
		align-items: end;
		gap: 0;
		padding-right: 0;
	}
	.birthSupport__body > div {
		display: grid;
		grid-template-columns: subgrid;
		grid-template-rows: subgrid;
		grid-column: 1 / span 2;
		grid-row: 1 / span 2;
	}
	.birthSupport__body h4 {
		display: block;
		margin-bottom: 0;
		padding-bottom: 15px;
		font-size: 18px;
		line-height: 1.75;
		grid-column: 1 / 3;
		letter-spacing: 0;
	}
	.birthSupport__body p {
		font-size: 14px;
		line-height: calc(32 / 14);
		grid-column: 1 / 3;
		margin-top: 12px;
	}
	.birthSupport__body p em {
		font-style: normal;
		background: #e6ebb8;
	}
	.birthSupport__body img {
		width: min(54px, 100%);
		grid-column: 2;
		grid-row: 1;
	}
	#birthPoint {
		margin-top: -130px;
		padding-top: 130px;
	}
	.birthClinic {
		margin-top: 100px;
		padding-bottom: 180px;
	}
	.birthClinic__badge {
		width: 60px;
		margin: 0 auto -60px;
	}
	.birthClinic__eyebrow {
		margin-top: 60px;
		font-size: 14px;
		line-height: 1.5;
	}
	.birthClinic h3 {
		margin-top: 15px;
		font-size: 18px;
	}
	.birthClinic__lead {
		margin-top: 45px;
		font-size: 28px;
		line-height: 2;
	}
	.birthFeatureList {
		max-width: 560px;
		margin-top: 40px;
		gap: 45px 0;
	}
	.birthFeature {
		grid-template-columns: 100%;
		gap: 20px 0;
	}
	.birthFeature h4 {
		font-size: 18px;
	}
	.birthFeature p {
		margin-top: 10px;
		font-size: 14px;
		line-height: calc(32 / 14);
	}
	.birthFeature a {
		font-size: 16px;
	}
	.birthClinic__message {
		margin-top: 60px;
		font-size: 22px;
	}
	.birthQuestions {
		max-width: 400px;
		margin-top: -110px;
		grid-template-columns: 100%;
		align-items: start;
		gap: 30px 0;
	}
	.birthQuestion:first-child {
		grid-column: 1;
		width: 100%;
		margin-left: 0;
		z-index: 1;
	}
	.birthQuestion:nth-child(2) {
		grid-column: 1;
		width: 100%;
		margin-left: 0;
	}
	.birthQuestion:nth-child(3) {
		grid-column: span 2;
		width: 100%;
		margin-top: 0;
		margin-left: 0;
	}
	.birthQuestion:nth-child(2)::before {
		top: 0;
		left: 0;
		margin-top: calc(89 / 320 * -100%);
		margin-left: calc(249 / 320 * 100%);
		width: calc(121 / 320 * 100%);
		padding-top: calc(121 / 320 * 100%);
		z-index: 1;
	}
	.birthQuestion:nth-child(3)::before {
		left: 0;
		margin-top: calc(63 / 320 * -100%);
		margin-left: calc(56 / 320 * -100%);
		width: calc(117 / 320 * 100%);
		padding-top: calc(117 / 320 * 100%);
		z-index: 1;
	}
	.birthStories {
		margin-top: 30px;
		padding-block: 80px;
	}
	.birthStories__eyebrow {
		max-width: calc(80px * .75);
	}
	.birthStories h3 {
		margin-top: 30px;
		font-size: 18px;
	}
	.birthStoryList {
		margin-top: 30px;
	}
	.birthStoryList li {
		flex: 0 0 calc(80% - 20px);
		margin-inline: 10px;
		border: 1px dashed #78b7cc;
		padding: 20px;
	}
	.birthStoryList li img {
		max-width: 60px;
	}
	.birthStoryList li p {
		margin-top: 20px;
		font-size: 12px;
		line-height: calc(24 / 12);
	}
	.birthStories__link {
		max-width: 280px;
		min-height: calc(60 / 14 * 1em);
		margin-top: 30px;
		gap: 0 calc(14 / 14 * 1em);
		font-size: 14px;
		text-indent: calc(6 / 14 * -1em);
	}
	.birthStories__link img {
		width: 20px;
	}
	.birthFaq {
		padding-block: 80px 100px;
	}
	.birthFaq__head {
		max-width: 560px;
		display: grid;
		grid-template-columns: minmax(0, 1fr) 60px;
		align-items: end;
		gap: 10px;
		padding-right: 10px;
	}
	.birthFaq__head h3 {
		font-size: 18px;
		align-self: center;
	}
	.birthFaq__head p {
		font-size: 14px;
		line-height: calc(32 / 14);
		padding-bottom: 25px;
		grid-column: span 2;
		margin-right: -10px;
	}
	.birthFaq__head img {
		grid-column: 2;
		grid-row: 1;
	}
	.birthFaq__faq {
		max-width: 560px;
	}
	.birthFaq__faq details[open]::details-content {
		padding-bottom: 15px;
	}
	.birthFaq__faq summary {
		padding: 15px calc(2em + 20px) 15px calc(20px + 1.75em);
		font-size: 14px;
		line-height: 1.75;
		text-indent: -1.75em;
	}
	.birthFaq__faq summary::after {
		right: 20px;
		translate: 0 -50%;
		font-size: 1.5em;
	}
	.birthFaq__answer {
		padding-inline: 20px;
	}
	.birthFaq__answer p {
		font-size: 12px;
		line-height: calc(24 / 12);
	}
	.birthContact {
		padding-bottom: 50px;
	}
	.birthContact:before {
		top: -25px;
		width: 210px;
		height: 100px;
	}
	.birthContact__eyebrow {
		max-width: calc(57px * .75);
	}
	.birthContact__copy {
		margin-top: 20px;
		font-size: 14px;
	}
	.birthContact h3 {
		margin-top: 15px;
		font-size: 24px;
	}
	.birthContact__reserve {
		margin-top: 30px;
		font-size: 14px;
		line-height: calc(32 / 14);
	}
	.birthContact__tel {
		max-width: 300px;
		min-height: calc(60 / 32 * 1em);
		gap: 0 calc(8 / 32 * 1em);
		margin-top: 10px;
		font-size: 32px;
	}
	.birthContact__hours {
		margin-top: 15px;
		font-size: 14px;
		line-height: calc(32 / 14);
	}
	.birthContact__mail {
		max-width: 280px;
		min-height: calc(50 / 16 * 1em);
		gap: 0 calc(14 / 16 * 1em);
		margin-top: 20px;
		font-size: 16px;
	}
}
