@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600&display=swap');
:root {
	--text-color: #333333;
	--white: #ffffff;
	--black: #000000;
	--pink: #e4004f;
	--pink-medium: #eb407b;
	--pink-light: #f59cbb;
	--pink-pale: #fdf7fa;
	--calendar-pink: #eb407b;
	--gray-light: #f5f5f5;
	--beige: #fcfaef;
	--pink-button: #F09B9E;
	--font-serif: "Shippori Mincho", serif;
	--font-sans-serif: "Hiragino Sans", YuGothic, "Yu Gothic medium", Meiryo, "sans-serif";
	--font-normal: 400;
	--font-medium: 500;
	--font-bold: 600;
	--font-spacing: 0.06em;
	--border-gray: 1px solid #cacaca;
	--base-inline-margin: max(calc(calc(100% - 1008px) / 2), 4vw);
	--block-margin-40: 30px;
	--block-margin-50: 35px;
	--block-margin-60: 42px;
	--block-margin-70: 50px;
	--block-margin-80: 55px;
	--block-margin-90: 60px;
	--block-margin-100: 70px;
	--base-font-size: 15px;
	--global-header-height: 75px;
	--site-id-size: min(calc(100% - var(--global-header-height)), 260px);
	--gap-m: 15px;
	--text-padding-m: 18px 16px;
	--text-padding-l: 24px 20px;
	--padding-th: 0.4em 0.6em;
	--padding-td: 0.6em 0.6em;
	scroll-padding-block-start: var(--global-header-height);
}
@media (768px <=width), print {
	:root {
		--base-font-size: 16px;
		--text-padding-m: 30px 26px;
		--text-padding-l: 40px 32px;
		--padding-th: 0.5em 1em;
		--padding-td: 0.6em 1em;
	}
}
@media (1132px <=width), print {
	:root {
		--block-margin-40: 40px;
		--block-margin-50: 50px;
		--block-margin-60: 60px;
		--block-margin-70: 70px;
		--block-margin-80: 80px;
		--block-margin-90: 90px;
		--block-margin-100: 100px;
		--global-header-height: 110px;
		--site-id-size: 288px;
		--gap-m: 20px;
		--text-padding-m: 36px 32px;
		--text-padding-l: 50px 40px;
	}
}
/* ============================== */
/*  BASE */
/* ============================== */
body {
	font-size: var(--base-font-size);
	line-height: 1.75;
	color: var(--text-color);
	line-break: normal;
	font-family: var(--font-serif);
	font-weight: var(--font-normal);
}
* {
	letter-spacing: var(--font-spacing);
}
::-moz-selection {
	background-color: #b3d4fc;
	color: #000000;
	text-shadow: none;
}
::selection {
	background-color: #b3d4fc;
	color: #000000;
	text-shadow: none;
}
h1, h2, h3, h4, h5, h6, dt {
	font-feature-settings: 'palt';
	font-weight: var(--font-bold);
}
a {
	color: var(--pink);
	text-decoration: underline;
}
@media(any-hover:hover) {
	a, button {
		transition: color 200ms ease-out, background-color 200ms ease-out, opacity 200ms ease-out;
	}
}
img {
	inline-size: 100%;
	block-size: auto;
}
:focus:not(:focus-visible) {
	outline: 0;
}
iframe {
	inline-size: 100%;
	block-size: auto;
}
summary::-webkit-details-marker {
	display: none;
}
[type="text"], [type="email"], [type="search"], [type="tel"], [type="url"], [type="password"], textarea {
	border: var(--border-gray);
	padding: 0.65em 0.75em;
	transition: 150ms;
	inline-size: 100%;
	font-size: max(1em, 16px);
}
[type="text"]:focus, [type="email"]:focus, [type="search"]:focus, [type="tel"]:focus, [type="url"]:focus, [type="password"]:focus, textarea:focus {
	outline: none;
	background-color: var(--blue-light);
}
textarea {
	field-sizing: content;
	@supports (field-sizing: content) {
		resize: none;
	}
}
/* ============================== */
/*  LAYOUT,UTILITY */
/* ============================== */
#page {
	inline-size: 100%;
}
@media (width < 768px) {
	.only-lg {
		display: none;
	}
}
@media (768px <=width), print {
	.only-sm {
		display: none;
	}
}
#go-pagetop {
	display: contents;
	& a {
		position: fixed;
		z-index: 90;
		text-indent: -9999px;
		overflow: hidden;
		inline-size: min(calc(50 / 375 * 100vw), calc(60 / 16 * 1rem));
		aspect-ratio: 1;
		transition: 300ms ease;
		inset-inline-end: calc(var(--base-inline-margin) / 2);
		inset-block-end: calc(var(--base-inline-margin) / 2);
		background-color: rgb(0 0 0 /0.3);
		display: none;
		@media (768px <=width), print {
			inline-size: calc(60 / 18 * 1em);
			inset-inline-end: calc(40 / 18 * 1em);
			inset-block-end: calc(40 / 18 * 1em);
		}
	}
	& a::before {
		content: "";
		inline-size: 25%;
		aspect-ratio: 1;
		position: absolute;
		inset-inline-start: 37.5%;
		inset-block-start: 41%;
		display: block;
		border-block-start: 2px solid var(--white);
		border-inline-end: 2px solid var(--white);
		transform: rotate(-45deg);
	}
	@media(any-hover:hover) {
		& a:hover {
			background-color: rgb(0 0 0 /0.5);
		}
	}
}
.visually-hidden {
	clip: rect(0 0 0 0) !important;
	clip-path: inset(50%) !important;
	inline-size: 1px !important;
	block-size: 1px !important;
	overflow: hidden !important;
	position: absolute !important;
	white-space: nowrap !important;
}
/* ============================== */
/*  GLOBAL-HEADER */
/* ============================== */
.global-header {
	font-size: calc(14 / 16 * 1rem);
	position: fixed;
	z-index: 120;
	inline-size: 100%;
	block-size: var(--global-header-height);
	inset-block-start: 0;
	inset-inline-start: 0;
	padding: 0 0 0 var(--base-inline-margin);
	display: flex;
	justify-content: space-between;
	background-color: var(--white);
	gap: 1px;
	& a {
		text-decoration: none;
	}
	& + * {
		margin-block-start: var(--global-header-height);
	}
}
@media (1132px <=width), print {
	.global-header {
		padding: 0 4vw;
		display: flex;
		justify-content: space-between;
		align-items: center;
		& .menu-toggle {
			display: none;
		}
		& .header-nav {
			display: flex !important;
		}
	}
}
.site-id {
	inline-size: var(--site-id-size);
	line-height: 1;
	display: flex;
	align-items: center;
}
#menu-toggle {
	grid-area: toggle;
	--_bar-shift: 9px;
	--_bar-width: 2px;
	--_bar-color: #555555;
	block-size: var(--global-header-height);
	aspect-ratio: 1;
	position: fixed;
	z-index: 140;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	inset-block-start: 0;
	inset-inline-end: 0;
	transition: border-color 200ms;
	&.is-clicked {
		border-color: var(--_bar-color);
	}
	& .menu-icon {
		display: block;
		inline-size: 32%;
		block-size: var(--_bar-width);
		position: absolute;
		transform-origin: center;
		transition: background-color 200ms;
		background-color: var(--_bar-color);
		position: relative;
		&::before, &::after {
			content: '';
			inline-size: 100%;
			block-size: 100%;
			position: absolute;
			transition: rotate 200ms, inset-block-start 200ms 100ms;
			inset-inline-start: 0;
			transform-origin: center;
			background-color: var(--_bar-color);
		}
		&::before {
			inset-block-start: calc(var(--_bar-shift) * -1);
		}
		&::after {
			inset-block-start: var(--_bar-shift);
		}
		&:is(.is-clicked *) {
			background-color: transparent;
		}
		&:is(.is-clicked *)::before, &:is(.is-clicked *)::after {
			transition: rotate 200ms 100ms, inset-block-start 200ms;
			inset-block-start: 0;
		}
		&:is(.is-clicked *)::before {
			rotate: 45deg;
		}
		&:is(.is-clicked *)::after {
			rotate: -45deg;
		}
	}
}
@media (1132px <=width), print {
	#menu-toggle {
		display: none;
	}
}
@media (1132px >width) {
	.header-nav {
		display: none;
		background-color: var(--white);
		inline-size: 80%;
		block-size: 100vh;
		position: absolute;
		top: 0;
		right: 0;
		overflow-y: scroll;
		padding: calc(20px + var(--global-header-height)) 4vw 120px;
	}
	#js-overLayer {
		content: "";
		position: fixed;
		top: 0;
		left: 0;
		inline-size: 20%;
		block-size: 100vh;
		background-color: rgb(0 0 0 / 0.3);
	}
}
@media (1132px <=width), print {
	.header-nav {
		font-size: 16px;
		display: flex;
		flex-direction: column-reverse;
		gap: 19px;
		& #js-focus-trap {
			display: none;
		}
	}
	#js-overLayer {
		display: none;
	}
}
header .contact-menu {
	display: flex;
	align-items: center;
	font-size: 15px;
	font-weight: var(--font-medium);
	& .tel {
		font-size: 24px;
		text-align: center;
		line-height: 1;
		& a {
			color: inherit;
		}
		& .tel-num {
			display: flex;
			justify-content: center;
			align-items: center;
			gap: 0.25em;
			&::before {
				content: "";
				inline-size: calc(22 / 26 * 1em);
				aspect-ratio: 1;
				background: url("../images/ico_tel.svg") no-repeat center;
				position: relative;
				top: 0.1em;
			}
		}
		& .note {
			font-size: 10px;
			display: block;
			padding-block-start: 0.5em;
			padding-inline-start: 1em;
		}
	}
	& .online-appointment a, & .insta a {
		inline-size: calc(190 / 15 * 1em);
		padding: 0.45em 1em;
		color: var(--white);
		border-radius: 0.4em;
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 0.25em;
		letter-spacing: 0;
		font-feature-settings: "palt";
	}
	& .online-appointment a {
		background-color: var(--pink);
		text-transform: uppercase;
		&::before {
			content: "";
			inline-size: 1.6em;
			aspect-ratio: 1;
			background: url("../images/ico_web.svg") no-repeat;
		}
	}
	& .insta a {
		background-color: var(--pink-button);
		&::before {
			content: "";
			inline-size: 1.6em;
			aspect-ratio: 1;
			background: url("../images/ico_instagram.svg") no-repeat;
		}
	}
}
@media (1132px >width) {
	header .contact-menu {
		flex-direction: column;
		gap: 15px;
		margin-block-start: 25px;
		padding-block-start: 25px;
		border-block-start: 1px solid var(--pink);
	}
}
@media (1132px <=width), print {
	header .contact-menu {
		flex-direction: row;
		justify-content: flex-end;
		gap: 14px;
		& .tel {
			padding-inline-end: 0.75em;
		}
	}
}
.primary-menu {
	font-size: 16px;
	font-weight: var(--font-medium);
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.7em;
}
@media (1132px <=width), print {
	.primary-menu {
		font-size: 16px;
		display: flex;
		flex-direction: row;
		justify-content: flex-end;
		block-size: 100%;
		line-height: calc(20 / 15);
		gap: 2.75em;
		& > li {
			position: relative;
			& > a {
				inline-size: 100%;
				block-size: 100%;
				align-items: center;
				justify-content: center;
				color: inherit;
				padding: 0.3em 0 0.3em var(--font-spacing);
				border-block-end: 2px solid transparent;
				transition: border-color 400ms;
				@media(any-hover: hover) {
					&:hover {
						border-color: var(--pink);
					}
				}
			}
		}
	}
}
/* ============================== */
/*  CLINIC */
/* ============================== */
.clinic {
	background-color: var(--gray-light);
	padding: 56px var(--base-inline-margin);
	margin-block-end: var(--block-margin-40);
	.clinic-list {
		display: flex;
		flex-direction: column;
		gap: 15px;
	}
}
@media (768px <=width), print {
	.clinic {
		background-color: var(--gray-light);
		padding: 56px var(--base-inline-margin);
		.clinic-list {
			display: flex;
			flex-direction: row;
			align-items: center;
			gap: calc(24 / 1008 * 100%);
		}
	}
}
.clinic-map {
	& iframe {
		block-size: 250px;
	}
}
@media (1132px <=width), print {
	.clinic-map {
		& iframe {
			block-size: 412px;
		}
	}
}
/* ============================== */
/*  FOOTER */
/* ============================== */
.global-footer {
	a {
		text-decoration: none;
	}
}
.contact-nav-only-sm {
	position: fixed;
	z-index: 100;
	bottom: 0;
	inline-size: 100%;
	font-size: min(3.6vw, 15px);
	font-weight: var(--font-medium);
	& menu {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		text-align: center;
		& a {
			padding: 3em 0.25em 0.5em;
			display: block;
			background-repeat: no-repeat;
			background-position: top 0.75em center;
			background-size: 2em;
			letter-spacing: 0;
		}
		& .online-appointment a {
			background-color: var(--pink);
			background-image: url("../images/ico_web.svg");
			color: var(--white);
			text-transform: uppercase;
		}
		& .insta a {
			background-color: var(--pink-button);
			background-image: url("../images/ico_instagram.svg");
			color: var(--white);
		}
		& .tel a {
			background-color: var(--white);
			background-image: url("../images/ico_tel.svg");
			color: var(--text-color);
		}
	}
}
@media (768px <=width), print {
	.contact-nav-only-sm {
		display: none;
	}
}
.footer-main {
	position: relative;
	background: var(--pink-pale);
	padding: 50px var(--base-inline-margin) 0;
	&::after {
		content: "";
		inline-size: min(390px, 85%);
		aspect-ratio: 822 / 198;
		background: url("../images/ill_footer.png") no-repeat center;
		background-size: 100%;
		/*
		position: absolute;
		bottom: -3px;
		right:max(calc(calc(100% - 411px) / 2), 10%) ;*/
		position: relative;
		z-index: 1;
		display: block;
		top: 5px;
		margin: 70px auto 0;
	}
}
@media (768px <=width), print {
	.footer-main {
		display: flex;
		flex-direction: column;
		padding-block: 60px 0;
		&::after {
			inline-size: 320px;
		}
	}
}
@media (1132px <=width), print {
	.footer-main {
		--_inline-margin: max(4vw, calc(calc(100% - 1200px) / 2));
		flex-direction: row;
		justify-content: space-between;
		padding: 60px var(--_inline-margin) 120px;
		&::after {
			inline-size: 411px;
			position: absolute;
			top: auto;
			bottom: -5px;
			right: calc(var(--_inline-margin) + 109px);
		}
	}
}
.footer-clinic-info {
	font-size: 15px;
	text-align: center;
	margin-block-end: 50px;
	& h1 {
		inline-size: min(calc(326px + 32px), 100%);
		padding-inline-end: 32px;
		margin-inline: auto;
	}
	& .address {
		margin: 0.75em 0 0;
	}
}
.footer-clinic-info .contact-menu {
	display: flex;
	align-items: center;
	font-size: 15px;
	font-weight: var(--font-medium);
	flex-direction: column;
	gap: 12px;
	margin-block-start: 25px;
	& .tel {
		font-size: 26px;
		text-align: center;
		line-height: 1;
		padding-block-end: 0.25em;
		& a {
			color: inherit;
		}
		& .tel-num {
			display: flex;
			justify-content: center;
			align-items: center;
			gap: 0.25em;
			&::before {
				content: "";
				inline-size: calc(22 / 26 * 1em);
				aspect-ratio: 1;
				background: url("../images/ico_tel.svg") no-repeat center;
				position: relative;
				top: 0.1em;
			}
		}
		& .note {
			font-size: 11px;
			display: block;
			padding-block-start: 0.5em;
			padding-inline-start: 1em;
		}
	}
	& .online-appointment a, & .insta a {
		inline-size: calc(238 / 15 * 1em);
		padding: 0.45em 1em;
		color: var(--white);
		border-radius: 0.4em;
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 0.25em;
		letter-spacing: 0;
		font-feature-settings: "palt";
	}
	& .online-appointment a {
		text-transform: uppercase;
		background-color: var(--pink);
		&::before {
			content: "";
			inline-size: 1.6em;
			aspect-ratio: 1;
			background: url("../images/ico_web.svg") no-repeat;
		}
	}
	& .insta a {
		background-color: var(--pink-button);
		&::before {
			content: "";
			inline-size: 1.6em;
			aspect-ratio: 1;
			background: url("../images/ico_instagram.svg") no-repeat;
		}
	}
}
@media (1132px >width) {
	footer .contact-menu {}
}
@media (1132px <=width), print {
	footer .contact-menu {}
}
.footer-surgery-info {
	display: flex;
	flex-direction: column;
	gap: 50px;
	& h2 {
		font-size: 17px;
		margin-block-end: 0.25em;
		text-align: center;
	}
}
@media (768px <=width), print {
	.footer-surgery-info {
		gap: 20px 50px;
		display: grid;
		grid-template-columns: auto auto;
		grid-template-rows: auto 1fr;
		grid-template-areas:
			"hours calendar"
			"link calendar";
		& h2 {
			text-align: left;
		}
		& .surgery-hours {
			grid-area: hours;
		}
		& .surgery-days {
			grid-area: calendar;
		}
		& .additional-link {
			grid-area: link;
		}
	}
}
.surgery-hours {
	inline-size: min(100%, 382px);
	margin: 0 auto;
	font-size: 14.5px;
	& .surgery-hours-table {
		background-color: var(--white);
		inline-size: 100%;
		border-block-end: var(--border-gray);
		text-align: center;
		vertical-align: middle;
		& tr:first-child th {
			border-block-start: var(--border-gray);
			border-block-end: var(--border-gray);
			background-color: #f8f8f8;
		}
		& td, & th {
			text-align: inherit;
			vertical-align: inherit;
			padding: 0.25em 0.4em;
			font-weight: var(--font-normal);
			border: none;
		}
		& tr:not(:first-child) th {
			text-align: left;
			padding-inline-start: 1em;
			background: var(--white);
		}
	}
	& .table-footnote {
		margin-block-start: 0.5em;
		font-size: 14.5px;
	}
	& .notice {
		display: flex;
		align-items: flex-start;
		font-size: 14px;
		margin-block-start: 1em;
		& dt {
			background-color: var(--pink);
			color: var(--white);
			padding: 0 0.25em;
			margin-inline-end: 0.5em;
			white-space: nowrap;
		}
	}
}
@media (768px <=width), print {
	.surgery-hours {
		font-size: 15px;
	}
}
.surgery-days {
	margin: 0 auto;
	& .flatpickr-calendar {
		inline-size: 240px;
	}
	& .calendar-note {
		inline-size: 240px;
		font-size: 14px;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-block-start: 0.75em;
		& .box-holiday {
			inline-size: 1.5em;
			block-size: 1em;
			background-color: var(--calendar-pink);
			display: block;
			margin-inline-end: 0.5em;
		}
	}
}
@media (768px <=width), print {
	.surgery-days {
		margin: 0;
		& .calendar-note {
			justify-content: flex-start;
		}
	}
}
footer .additional-link {
	font-size: 14px;
	text-align: center;
	& a {
		color: var(--pink);
		background: url("../images/arr_1r.svg") no-repeat center left;
		background-size: calc(18 / 14 * 1em);
		padding-inline-start: 1.75em;
		padding-block-end: 0.07em;
		@media(any-hover: hover) {
			&:hover {
				text-decoration: underline;
			}
		}
	}
}
@media (768px <=width), print {
	footer .additional-link {
		text-align: left;
		inline-size: 382px;
		margin-inline: auto;
	}
}
.footer-bottom {
	background-color: var(--pink);
	padding: 15px var(--base-inline-margin) calc(15px + 80px);
	text-align: center;
	& .footer-link {
		display: none;
	}
	& .copyright {
		font-size: max(calc(12 / 18 * 1em), 10px);
		line-height: 1.25;
		color: var(--white);
	}
}
@media (768px <=width), print {
	.footer-bottom {
		padding: 35px var(--base-inline-margin);
		& .footer-link {
			display: flex;
			justify-content: center;
			gap: 2em;
			margin-block-end: 3em;
			& a {
				color: var(--white);
				padding-inline-start: var(--font-spacing);
				@media(any-hover: hover) {
					&:hover {
						border-block-end: 1px solid;
					}
				}
			}
		}
		& .copyright {
			font-size: max(calc(12 / 18 * 1em), 10px);
		}
	}
}
/* Calendar */
#page .flatpickr-calendar {
	inline-size: 240px;
	font-size: 14px;
	line-height: 1;
	box-shadow: none;
	border-radius: 0;
	border: var(--border-gray);
	& .flatpickr-current-month {
		padding-block-start: 0.25em;
		pointer-events: none;
	}
	& .flatpickr-current-month span.cur-month {
		font-size: 17px;
		font-weight: var(--font-medium);
	}
	& .flatpickr-current-month input.cur-year {
		font-size: 17px;
		font-weight: var(--font-medium);
	}
	& .flatpickr-day {
		border-radius: 0;
	}
	& .dayContainer {
		inline-size: 100%;
		min-inline-size: 100%;
		max-inline-size: 100%;
	}
	& .flatpickr-days {
		inline-size: 100%;
		min-inline-size: 100%;
		max-inline-size: 100%;
	}
	& .flatpickr-weekdays {
		background-color: #f4f4f4;
	}
	& .flatpickr-day {
		block-size: 27px;
		line-height: 27px;
	}
	& .holiday {
		background-color: var(--calendar-pink);
		color: white;
	}
	& .business-day {
		background-color: var(--white);
	}
	& .today {
		background-color: #f2f2f2;
		border: 0;
	}
	& .holiday.today {
		background-color: color-mix(in srgb, var(--pink), black 15%);
	}
	& .holiday.prevMonthDay, & .holiday.nextMonthDay {
		color: rgb(255 255 255 / 0.6);
	}
	& .flatpickr-day {
		pointer-events: none;
	}
	&.arrowTop::before, &.arrowTop::after {
		display: none;
	}
}
/* ============================== */
/*  REPEATABLE */
/* ============================== */
.view-more > a, a .view-more {
	text-decoration: none;
	color: var(--pink);
	font-size: 12px;
	padding: 0 0 0 1.6em;
	background: url("../images/arr_2r.svg") no-repeat center left;
	background-size: calc(14 / 12 * 1em);
	margin-block-start: 0.5em;
}
.section-heading {
	font-size: 25px;
	text-align: center;
	padding-inline-start: var(--font-spacing);
	letter-spacing: var(--font-spacing);
	font-weight: var(--font-medium);
	margin-block-end: var(--block-margin-50);
	;
	line-height: 1;
	& .ja {
		display: block;
	}
	& .en {
		font-size: 10px;
		letter-spacing: 0.2em;
		padding-inline-start: 0.2em;
		margin-block-start: 1.25em;
		display: block;
		text-transform: uppercase;
	}
}
@media (768px <=width), print {
	.section-heading {
		font-size: 30px;
		& .en {
			font-size: 11px;
		}
	}
}
.ex-link {
	inline-size: 1em;
	aspect-ratio: 1;
	display: inline-block;
	position: relative;
	top: -0.28em;
	margin-inline-start: 0.25em;
}
.link-1 {
	margin-block-start: 1em;
	& a {
		color: var(--pink);
		background: url("../images/arr_1r.svg") no-repeat center left;
		background-size: calc(18 / 16 * 1em);
		padding-inline-start: 1.75em;
		padding-block-end: 0.07em;
	}
}
.link-2 {
	margin-block-start: var(--block-margin-70);
	font-size: 0.95em;
	& a {
		color: var(--pink);
		border: 1px solid var(--pink);
		padding: 0.5em 2.5em;
		text-decoration: none;
		position: relative;
		&::before {
			content: "";
			display: block;
			inline-size: 0.5em;
			aspect-ratio: 1;
			border-block-start: 1px solid;
			border-inline-start: 1px solid;
			rotate: -45deg;
			position: absolute;
			top: calc(calc(100% - 0.5em) / 2);
			left: 0.75em;
		}
		@media(any-hover: hover) {
			&:hover {
				color: var(--white);
				background-color: var(--pink);
			}
		}
	}
}
/* パンくずリスト */
.breadcrumb {
	font-size: 13px;
	line-height: 1.5;
	margin: 25px var(--base-inline-margin) 35px;
	& ol {
		margin: 0;
		list-style-type: none;
		display: flex;
		flex-wrap: wrap;
		gap: 0.5em;
	}
	& li {
		padding: 0;
		margin: 0;
		display: inline-block;
		display: flex;
		align-items: center;
		gap: 0.8em;
	}
	& li + li::before {
		content: "";
		inline-size: 0.6em;
		aspect-ratio: 1;
		border-block-start: 1px solid #999999;
		border-inline-end: 1px solid #999999;
		transform: scaleY(0.8) rotate(45deg);
		display: block;
	}
	& a {
		color: inherit;
		@media(any-hover: hover) {
			&:hover {
				color: var(--pink);
			}
		}
	}
}
@media screen and (min-width: 768px), print {
	.breadcrumb {
		font-size: 14px;
	}
}
@media screen and (min-width: 1132px), print {
	.breadcrumb {
		margin-block: 35px 50px;
	}
}
.js-invalid{
	pointer-events:none;
}
/* ============================== */
/*  PRINT */
/* ============================== */
@media print {
	:root {
		--distance: 0;
	}
	.site-id{
		inline-size:220px;
	}
	.header-nav {
  	  font-size: 15px;
	}
	#menu-toggle, #go-pagetop {
		display: none !important;
	}
	#global-header {
		position: relative;
		& + * {
			margin-block-start: 0;
		}
	}
	.header-nav {
		block-size: auto;
		padding: 0;
		position: relative;
		overflow: auto;
		inline-size: auto;
	}
	.js-inview {
		opacity: 1 !important;
		transform: translateY(0) !important;
	}
	.top-worries-list li.js-inview {
		scale:1 !important;
	}
}