@charset "UTF-8";
/**
 * Template: snow-monkey
 * Theme Name: 長澤内科医院
 */

/* フォント */
:root {
	--font-family: 'Noto Sans JP', sans-serif;
}
@media not all and (min-width: 640px) {
	:root {
		--_global--font-size-px: 14px;
	}
}

/* ボタン */
.smb-btn {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px;
	padding: 15px 30px;
}
@media (hover: hover) and (pointer: fine) {
	.smb-btn:active, .smb-btn:focus, .smb-btn:hover {
		-webkit-filter: brightness(110%);
		        filter: brightness(110%);
	}
}
.smb-btn::after {
	content: "";
	background: currentColor;
	display: inline-block;
	width: 6px;
	height: 9px;
	clip-path: polygon(0 0, 35% 0, 100% 50%, 35% 100%, 0 100%, 65% 50%);
}
.smb-btn .smb-btn__label {
	line-height: 1;
}

/* 改行 */
@media not all and (min-width: 640px) {
	br.sp-hidden {
		display: none;
	}
}
@media (min-width: 640px) {
	br.sp {
		display: none;
	}
}
@media (min-width: 1024px) {
	br.tb {
		display: none;
	}
}
@media (max-width: 1024px) {
	br.pc {
		display: none;
	}
}
/* コンテナの最大幅 */
@media not all and (min-width: 1024px) {
	:root {
		--_global--container-max-width: 800px;
	}
}

/* l-contents__inner */
body.page .l-contents__inner {
	padding-top: 0;
	padding-bottom: 0;
	margin-top: 0;
}

/* セクション */
.smb-section {
	--smb-section--padding: 80px;
}
@media not all and (min-width: 1024px) {
	.smb-section {
		--smb-section--padding: 60px;
	}
}
@media not all and (min-width: 640px) {
	.smb-section {
		--smb-section--padding: 40px;
	}
}

/* セクション見出し */
h2.section-heading {
	color: var(--accent-color);
	font-size: 36px;
	font-weight: 500;
	line-height: 1;
}
@media not all and (min-width: 1024px) {
	h2.section-heading {
		font-size: 28px;
	}
}
@media not all and (min-width: 640px) {
	h2.section-heading {
		font-size: 18px;
	}
}

/* ヘッダー */
@media not all and (min-width: 1024px) {
	.l-header {
		-webkit-box-shadow: unset;
		        box-shadow: unset;
	}
}
@media not all and (min-width: 1024px) {
	.l-header .l-header__content {
		padding-top: 0;
		padding-bottom: 0;
	}
}
.l-header .l-2row-header > .c-container {
	max-width: unset;
	padding: 0;
}
.l-header .l-2row-header__row:first-child {
	color: #fff;
	background-color: var(--accent-color);
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: var(--_container-margin-left);
	padding-right: var(--_container-margin-right);
}
@media not all and (min-width: 1024px) {
	.l-header .l-2row-header__row:first-child {
		padding-top: 13px;
		padding-bottom: 13px;
	}
}
.l-header .l-2row-header__row:last-child {
	max-width: calc(var(--_container-max-width) + var(--_container-margin-left) + var(--_container-margin-right));
	padding-left: var(--_container-margin-left);
	padding-right: var(--_container-margin-right);
	margin-inline: auto;
	margin-top: 20px;
	margin-bottom: 15px;
}
.l-header .header-cta {
	display: grid;
	grid-template-columns: -webkit-max-content 1fr;
	grid-template-columns: max-content 1fr;
	grid-template-rows: -webkit-min-content 1fr;
	grid-template-rows: min-content 1fr;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 7px 27px;
}
.l-header .header-cta > :not(:first-child) {
	margin-top: 0;
}
.l-header .header-cta-tel-icon {
	grid-column: 1/2;
	grid-row: 1/3;
	margin-inline: 0 !important;
}
.l-header .header-cta-tel-group {
	grid-column: 2/3;
	grid-row: 1/2;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 22px;
	margin-left: 0 !important;
}
.l-header .header-cta-tel-group > :not(:first-child) {
	margin-top: 0;
}
.l-header .header-cta-tel {
	font-family: "Roboto", sans-serif;
	font-size: 36px;
	font-weight: 500;
	line-height: 1;
	margin-inline: 0 !important;
}
@media not all and (min-width: 640px) {
	.l-header .header-cta-tel {
		font-size: 32px;
	}
}
.l-header .header-cta-tel a {
	color: inherit;
	text-decoration: none;
}
.l-header .header-cta-text {
	font-weight: 500;
	line-height: 1;
	margin-inline: 0 !important;
}
.l-header .header-cta-subtext {
	grid-column: 2/3;
	grid-row: 2/3;
	-webkit-font-feature-settings: "palt";
	        font-feature-settings: "palt";
	line-height: 1;
}

/* Gナビ */
.p-global-nav .c-navbar__item:not(:last-child) {
	border-right: 1px solid var(--accent-color);
}
.p-global-nav .c-navbar__item.medical > a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 12px;
}
.p-global-nav .c-navbar__item.medical > a::after {
	content: "";
	background: #229d8f;
	display: inline-block;
	width: 10px;
	height: 6px;
	clip-path: polygon(100% 0, 100% 35%, 50% 100%, 0 35%, 0 0, 50% 65%);
}
.p-global-nav .c-navbar__item > a {
	--_font-size-level: 0;
	line-height: 1;
	padding: 12.5px 30px !important;
}
.p-global-nav .c-navbar__item:first-child > a {
	padding-left: 0 !important;
}
.p-global-nav .c-navbar__item:last-child > a {
	padding-right: 0 !important;
}

/* ドロップナビ */
.p-drop-nav .p-global-nav {
	padding-top: 10px;
	padding-bottom: 10px;
}
.p-drop-nav .p-global-nav .c-navbar {
	width: 100%;
}
.p-drop-nav .p-global-nav .c-navbar__item {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 auto;
	        flex: 1 1 auto;
}

/* ハンバーガーメニュー */
.c-hamburger-btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
.c-hamburger-btn::after {
	content: "Menu";
	font-family: "Roboto", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-top: 7px;
}
.c-hamburger-btn .c-hamburger-btn__bars {
	width: 40px;
}
.c-hamburger-btn .c-hamburger-btn__bar {
	background-color: #fff;
	height: 2.5px;
	border-radius: 2px;
}
.c-hamburger-btn .c-hamburger-btn__bar:nth-of-type(2) {
	top: 8px;
}
.c-hamburger-btn .c-hamburger-btn__bar:nth-of-type(3) {
	top: 16px;
}
.c-hamburger-btn .c-hamburger-btn__label {
	display: none;
}

/* ドロワーナビ */
.c-drawer {
	--_font-size-level: 1;
}
.c-drawer .menu-item.medical > a {
	pointer-events: none;
}
.c-drawer .menu-item.medical .c-drawer__toggle {
	position: absolute;
	width: 100%;
	height: 30px;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	padding-right: 15px;
}

/* MV */
section.mv {
	min-height: 532px;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}
@media not all and (min-width: 640px) {
	section.mv {
		--smb-section--padding: 0;
		min-height: 300px;
		-webkit-box-align: inherit;
		    -ms-flex-align: inherit;
		        align-items: inherit;
	}
}
@media not all and (min-width: 640px) {
	section.mv .smb-section-with-bgimage__bgimage img {
		-o-object-position: 65% 50%;
		   object-position: 65% 50%;
	}
}
@media not all and (min-width: 640px) {
	section.mv .c-container {
		height: 100%;
	}
}
@media not all and (min-width: 640px) {
	section.mv .smb-section__contents-wrapper {
		height: 100%;
	}
}
@media not all and (min-width: 640px) {
	section.mv .smb-section__body {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-pack: end;
		    -ms-flex-pack: end;
		        justify-content: flex-end;
		height: 100%;
		padding-bottom: 64px;
	}
}
section.mv .mv-catch {
	color: var(--accent-color);
	font-size: 40px;
	font-weight: 500;
	line-height: 1.4;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-top: 0;
	margin-left: 0 !important;
}
@media not all and (min-width: 1024px) {
	section.mv .mv-catch {
		font-size: 32px;
	}
}
@media not all and (min-width: 640px) {
	section.mv .mv-catch {
		font-size: 20px;
	}
}
section.mv .mv-catch .sme-bg-color {
	padding-inline: 10px;
}
section.mv .mv-text {
	color: var(--accent-color);
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 13px;
	margin-top: 20px;
	margin-left: 0 !important;
}
@media not all and (min-width: 1024px) {
	section.mv .mv-text {
		font-size: 16px;
	}
}
@media not all and (min-width: 640px) {
	section.mv .mv-text {
		font-size: 14px;
		gap: 10px;
		margin-top: 15px;
	}
}
section.mv .mv-text .sme-bg-color {
	display: inline-block;
	padding: 10px;
}
@media not all and (min-width: 640px) {
	section.mv .mv-text .sme-bg-color {
		padding: 6px 10px;
	}
}
section.mv .mv-tel-sp {
	color: #229d8f;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 1;
	position: absolute;
	top: 0;
	right: 0;
	padding-block: 7px;
}
section.mv .mv-tel-sp .sme-bg-color {
	border-radius: 0 0 0 25px;
	padding: 6px 20px 5px 38px;
}
section.mv .mv-tel-sp a {
	text-decoration: none;
}

/* 診療時間・アクセス */
@media (min-width: 1024px) {
	section.access {
		--smb-section--padding: 100px;
	}
}
section.access .access-columns {
	margin-top: 60px;
}
@media not all and (min-width: 1024px) {
	section.access .access-columns {
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	section.access .access-columns {
		margin-top: 20px;
	}
}
section.access .access-columns .c-row--margin {
	--_gap: 60px;
}
@media not all and (min-width: 1024px) {
	section.access .access-columns .c-row--margin {
		--_gap: 30px;
	}
}
@media not all and (min-width: 640px) {
	section.access .access-columns .c-row--margin {
		--_gap: 20px;
	}
}
@media (min-width: 1024px) {
	section.access .access-columns .left-col {
		--_item-width: 52%;
	}
}
@media (min-width: 1024px) {
	section.access .access-columns .right-col {
		--_item-width: 48%;
	}
}
section.access .schedule-table thead {
	background-color: #d9dee8;
	border: 2px solid #d9dee8;
}
@media not all and (min-width: 640px) {
	section.access .schedule-table thead tr {
		height: 46px;
	}
}
section.access .schedule-table thead th {
	color: #333;
	font-weight: 500;
	border: none;
}
@media not all and (min-width: 640px) {
	section.access .schedule-table thead th {
		font-size: 12px;
	}
}
section.access .schedule-table thead th:first-child {
	width: 9.125em;
}
@media not all and (min-width: 640px) {
	section.access .schedule-table thead th:first-child {
		width: 7.5em;
	}
}
@media not all and (min-width: 640px) {
	section.access .schedule-table tr {
		height: 55px;
	}
}
section.access .schedule-table td,
section.access .schedule-table th {
	border: 2px solid #d9dee8;
	padding: 15px 10px;
}
@media not all and (min-width: 640px) {
	section.access .schedule-table td,
	section.access .schedule-table th {
		padding: 6px;
	}
}
section.access .schedule-table td:first-child {
	font-family: "Roboto", "Noto Sans JP", sans-serif;
	font-size: 1.125em;
}
@media not all and (min-width: 640px) {
	section.access .schedule-table td:first-child {
		font-size: 13px;
	}
}
section.access .gmap {
	aspect-ratio: 534/300;
	margin-top: 80px;
}
@media not all and (min-width: 1024px) {
	section.access .gmap {
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	section.access .gmap {
		margin-top: 20px;
	}
}
section.access .info-table td {
	line-height: 1.4;
	border: none;
	vertical-align: top;
	padding: 15px;
}
@media not all and (min-width: 640px) {
	section.access .info-table td {
		padding: 10px 15px;
	}
}
section.access .info-table td:first-child {
	font-size: 1.125em;
	font-weight: 500;
	line-height: 1.3;
	width: calc(4em + 30px);
}
@media not all and (min-width: 640px) {
	section.access .info-table td:first-child {
		width: 4em;
		padding-inline: 0;
	}
}
section.access .info-table td .has-sm-s-font-size {
	display: inline-block;
	line-height: 1.5;
	max-width: 318px;
	margin-top: 4px;
}
section.access .info-table tr:nth-child(1) td {
	padding: 20px 15px 30px;
}
@media not all and (min-width: 640px) {
	section.access .info-table tr:nth-child(1) td {
		padding: 0 15px 10px 15px;
	}
}
@media not all and (min-width: 640px) {
	section.access .info-table tr:nth-child(1) td:first-child {
		padding-inline: 0;
	}
}
section.access .info-table tr:nth-child(2) td {
	padding: 30px 15px 20px;
}
@media not all and (min-width: 640px) {
	section.access .info-table tr:nth-child(2) td {
		padding: 10px 15px 10px 15px;
	}
}
@media not all and (min-width: 640px) {
	section.access .info-table tr:nth-child(2) td:first-child {
		padding-inline: 0;
	}
}
section.access .info-table dl + * {
	margin-top: 15px;
}
@media not all and (min-width: 640px) {
	section.access .info-table dl + * {
		margin-top: 10px;
	}
}
section.access .info-table .dl-row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	max-width: 254px;
}
@media not all and (min-width: 640px) {
	section.access .info-table .dl-row {
		max-width: 210px;
	}
}
section.access .info-table .dl-row + .dl-row {
	margin-top: 15px;
}
@media not all and (min-width: 640px) {
	section.access .info-table .dl-row + .dl-row {
		margin-top: 10px;
	}
}
section.access .info-table dt {
	font-size: 1.125em;
	font-weight: 500;
	line-height: 1;
}
section.access .info-table dd {
	font-size: 1.5em;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1;
}
section.access .info-table .letter-spacing-10 {
	letter-spacing: 0.1em;
}
section.access .access-buttons {
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	margin-top: 5px;
}
@media (min-width: 1024px) {
	section.access .access-buttons {
		margin-right: 20px !important;
	}
}
@media not all and (min-width: 1024px) {
	section.access .access-buttons {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		margin-top: 20px;
	}
}
section.access .access-buttons .smb-btn {
	padding: 12px 40px;
}

/* お知らせ */
section.news {
	--smb-section--padding: 0;
}
@media (min-width: 1024px) {
	section.news .c-container {
		max-width: 1166px;
	}
}
section.news .news-box {
	-webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
	        box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
	padding: 100px 55px;
}
@media not all and (min-width: 1024px) {
	section.news .news-box {
		padding: 60px 30px;
	}
}
@media not all and (min-width: 640px) {
	section.news .news-box {
		padding: 40px 20px;
	}
}
@media (min-width: 1024px) {
	section.news .news-box .smb-box__body {
		display: grid;
		grid-template-columns: -webkit-min-content 1fr;
		grid-template-columns: min-content 1fr;
		grid-template-rows: -webkit-min-content 1fr;
		grid-template-rows: min-content 1fr;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: start;
		gap: 40px 115px;
	}
	section.news .news-box .smb-box__body > :not(:first-child) {
		margin-top: 0;
	}
}
@media (min-width: 1024px) {
	section.news .section-heading {
		grid-column: 1/2;
		grid-row: 1/2;
		margin-left: 0 !important;
	}
}
@media (min-width: 1024px) {
	section.news .section-heading {
		grid-column: 1/2;
		grid-row: 1/2;
	}
}
@media (min-width: 1024px) {
	section.news .news-posts {
		grid-column: 2/3;
		grid-row: 1/3;
		width: 100%;
	}
}
section.news .news-posts .c-entries--text2 {
	border-top: none;
}
section.news .news-posts .c-entry-summary__body {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px 20px;
	padding-right: 20px;
}
@media not all and (min-width: 640px) {
	section.news .news-posts .c-entry-summary__body {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
}
section.news .news-posts .c-entry-summary__body::before {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	content: "";
	background: var(--sub-accent-color);
	width: 11px;
	height: 20px;
	clip-path: polygon(0 0, 35% 0, 100% 50%, 35% 100%, 0 100%, 65% 50%);
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}
@media not all and (min-width: 640px) {
	section.news .news-posts .c-entry-summary__body::before {
		width: 6px;
		height: 12px;
	}
}
section.news .news-posts .c-entries__item {
	border-bottom: 1px dashed #c4c4c4;
}
section.news .news-posts .c-entries__item > a {
	padding-top: 20px;
	padding-bottom: 20px;
	padding-right: 58px;
}
@media not all and (min-width: 1024px) {
	section.news .news-posts .c-entries__item > a {
		padding-right: 0;
	}
}
section.news .news-posts .c-entries__item:first-child > a {
	padding-top: 0;
}
section.news .news-posts .c-entries__item:first-child .c-meta__item--published {
	position: relative;
}
section.news .news-posts .c-entries__item:first-child .c-meta__item--published::after {
	content: "NEW";
	color: var(--sub-accent-color);
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	position: absolute;
	right: -50px;
}
@media not all and (min-width: 640px) {
	section.news .news-posts .c-entries__item:first-child .c-meta__item--published::after {
		right: -40px;
	}
}
section.news .news-posts .c-entry-summary__meta {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	margin-top: 0;
}
section.news .news-posts .c-meta__item:not(:last-child) {
	margin-right: 115px;
}
@media not all and (min-width: 1024px) {
	section.news .news-posts .c-meta__item:not(:last-child) {
		margin-right: 70px;
	}
}
section.news .news-posts .c-meta__item--published {
	font-family: "Roboto", sans-serif;
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.2;
}
section.news .news-posts .c-entry-summary__term {
	color: var(--sub-accent-color);
	background-color: #fff;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1;
	border: 1px solid var(--sub-accent-color);
	border-radius: 9999px;
	padding: 6px 20px;
}
@media not all and (min-width: 640px) {
	section.news .news-posts .c-entry-summary__term {
		padding: 6px 12px;
	}
}
@media (min-width: 1024px) {
	section.news .news-buttons {
		grid-column: 1/2;
		grid-row: 2/3;
	}
}
@media not all and (min-width: 1024px) {
	section.news .news-buttons {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
}
section.news .news-buttons .smb-btn__label {
	font-size: 0.875rem;
}

/* 診療案内 */
section.medical .medical-text {
	line-height: 1.7;
	margin-top: 40px;
}
@media not all and (min-width: 1024px) {
	section.medical .medical-text {
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	section.medical .medical-text {
		-webkit-font-feature-settings: "palt";
		        font-feature-settings: "palt";
		letter-spacing: 0.02em;
		margin-top: 20px;
	}
}
section.medical .medical-columns {
	margin-top: 60px;
}
@media not all and (min-width: 1024px) {
	section.medical .medical-columns {
		margin-top: 40px;
	}
}
@media not all and (min-width: 640px) {
	section.medical .medical-columns {
		margin-top: 20px;
	}
}
section.medical .medical-columns .c-row--margin {
	--_gap: 60px;
}
@media not all and (min-width: 1024px) {
	section.medical .medical-columns .c-row--margin {
		--_gap: 40px;
	}
}
@media not all and (min-width: 640px) {
	section.medical .medical-columns .c-row--margin {
		--_gap: 20px;
	}
}
@media (min-width: 1024px) {
	section.medical .medical-columns .left-col {
		--_item-width: 55%;
	}
}
@media (min-width: 1024px) {
	section.medical .medical-columns .right-col {
		--_item-width: 41%;
	}
}
section.medical .medical-title {
	color: #575757;
	font-size: 24px;
	font-weight: 500;
	line-height: 1;
}
@media not all and (min-width: 1024px) {
	section.medical .medical-title {
		font-size: 20px;
	}
}
@media not all and (min-width: 640px) {
	section.medical .medical-title {
		font-size: 16px;
	}
}
section.medical .medical-buttons {
	margin-top: 30px;
	gap: 20px;
}
@media not all and (min-width: 640px) {
	section.medical .medical-buttons {
		margin-top: 20px;
		gap: 10px;
	}
}
section.medical .medical-buttons > .smb-btn-wrapper.lg {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 calc(50% - 10px);
	        flex: 1 1 calc(50% - 10px);
}
section.medical .medical-buttons > .smb-btn-wrapper.lg .smb-btn__label {
	font-size: 24px;
	font-weight: 500;
}
@media not all and (min-width: 640px) {
	section.medical .medical-buttons > .smb-btn-wrapper.lg .smb-btn__label {
		font-size: 16px;
	}
}
section.medical .medical-buttons > .smb-btn-wrapper.md {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 calc(33.33% - 13.3333333333px);
	        flex: 1 1 calc(33.33% - 13.3333333333px);
}
section.medical .medical-buttons > .smb-btn-wrapper.md .smb-btn__label {
	font-size: 20px;
	font-weight: 500;
}
@media not all and (min-width: 640px) {
	section.medical .medical-buttons > .smb-btn-wrapper.md .smb-btn__label {
		font-size: 14px;
	}
}
section.medical .medical-buttons .smb-btn {
	width: 100%;
	border: 3px solid var(--sub-accent-color);
	padding: 15px 10px;
}
section.medical .medical-buttons + .medical-title {
	margin-top: 30px;
}
@media not all and (min-width: 640px) {
	section.medical .medical-buttons + .medical-title {
		margin-top: 20px;
	}
}

/* ご挨拶 */
section.greeting {
	--smb-section--padding: 0 0 100px;
}
@media not all and (min-width: 1024px) {
	section.greeting {
		--smb-section--padding: 0 0 60px;
	}
}
@media not all and (min-width: 640px) {
	section.greeting {
		--smb-section--padding: 0 0 40px;
	}
}
section.greeting .greeting-columns {
	margin-top: 40px;
}
@media not all and (min-width: 1024px) {
	section.greeting .greeting-columns {
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	section.greeting .greeting-columns {
		margin-top: 20px;
	}
}
section.greeting .greeting-columns .c-row--margin {
	--_gap: 60px;
}
@media not all and (min-width: 1024px) {
	section.greeting .greeting-columns .c-row--margin {
		--_gap: 40px;
	}
}
@media not all and (min-width: 640px) {
	section.greeting .greeting-columns .c-row--margin {
		--_gap: 20px;
	}
}
@media (min-width: 1024px) {
	section.greeting .greeting-columns .left-col {
		--_item-width: 47%;
	}
}
@media (min-width: 1024px) {
	section.greeting .greeting-columns .right-col {
		--_item-width: 41%;
	}
}

/* ページヘッダー */
.c-page-header[data-has-image=true] {
	color: #fff;
	height: 250px;
}
@media not all and (min-width: 640px) {
	.c-page-header[data-has-image=true] {
		height: 100px;
	}
}
.c-page-header .c-page-header__title {
	font-size: 40px;
	font-weight: 500;
	line-height: 1.4;
}
@media not all and (min-width: 1024px) {
	.c-page-header .c-page-header__title {
		font-size: 32px;
	}
}
@media not all and (min-width: 640px) {
	.c-page-header .c-page-header__title {
		font-size: 20px;
	}
}

/* パンくずリスト */
.p-breadcrumbs-wrapper {
	padding-block: 25px !important;
}

.c-breadcrumbs {
	color: #575757;
	font-size: 0.875rem;
}

.c-breadcrumbs__item:nth-child(n+2):before {
	width: 0.6em;
	height: 0.6em;
	margin: 0.45em 0.45em 0 0.15em;
}
.c-breadcrumbs__item a[aria-current=page] {
	color: var(--accent-color);
}

/* ページリード */
section.page-lead {
	--smb-section--padding: 0 0 60px;
}
@media not all and (min-width: 640px) {
	section.page-lead {
		--smb-section--padding: 0;
	}
}
@media (min-width: 1024px) {
	section.page-lead .c-container {
		max-width: 1130px;
	}
}
@media (min-width: 1024px) {
	section.page-lead .page-lead-columns .c-row--margin {
		--_gap: 0;
	}
}
@media (min-width: 1024px) {
	section.page-lead .page-lead-columns .text-col {
		z-index: 1;
	}
	section.page-lead .page-lead-columns .text-col .smb-items__item {
		margin-right: -243px;
	}
	section.page-lead .page-lead-columns .image-col .smb-items__item {
		margin-top: 85px;
		margin-left: -260px;
	}
}
section.page-lead .page-lead-box {
	padding: 40px 80px 40px 40px;
}
@media not all and (min-width: 1024px) {
	section.page-lead .page-lead-box {
		padding: 0;
	}
}
section.page-lead h2.page-lead-title {
	color: var(--accent-color);
	font-size: 36px;
	font-weight: 500;
	line-height: 1.5;
}
@media not all and (min-width: 1024px) {
	section.page-lead h2.page-lead-title {
		font-size: 30px;
	}
}
@media not all and (min-width: 640px) {
	section.page-lead h2.page-lead-title {
		font-size: 18px;
	}
}
section.page-lead .page-lead-text {
	margin-top: 20px;
}

/* 内科 */
@media (min-width: 1024px) {
	body.slug-internal-medicine section.general-care {
		--smb-section--padding: 100px;
	}
}
@media (min-width: 1024px) {
	body.slug-internal-medicine section.general-care .c-container {
		max-width: 980px;
	}
}
body.slug-internal-medicine .general-care-columns .c-row--margin {
	--_gap: 50px;
}
@media not all and (min-width: 640px) {
	body.slug-internal-medicine .general-care-columns .c-row--margin {
		--_gap: 20px;
	}
}
body.slug-internal-medicine .general-care-title {
	color: var(--accent-color);
	font-size: 28px;
	font-weight: 500;
	line-height: 1.6;
}
@media not all and (min-width: 1024px) {
	body.slug-internal-medicine .general-care-title {
		font-size: 24px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-internal-medicine .general-care-title {
		font-size: 18px;
	}
}
body.slug-internal-medicine .general-care-text {
	margin-top: 40px;
}
@media not all and (min-width: 1024px) {
	body.slug-internal-medicine .general-care-text {
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-internal-medicine .general-care-text {
		margin-top: 20px;
	}
}
@media (min-width: 1024px) {
	body.slug-internal-medicine section.medical-services {
		--smb-section--padding: 70px;
	}
}
@media (min-width: 1024px) {
	body.slug-internal-medicine section.medical-services .c-container {
		max-width: 1000px;
	}
}
body.slug-internal-medicine .medical-services-box {
	-webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.2);
	        box-shadow: 0 4px 4px rgba(0, 0, 0, 0.2);
	padding: 50px;
}
@media not all and (min-width: 640px) {
	body.slug-internal-medicine .medical-services-box {
		padding: 25px;
	}
}
body.slug-internal-medicine .medical-services-title {
	color: var(--accent-color);
	font-size: 36px;
	font-weight: 500;
	line-height: 1;
}
@media not all and (min-width: 1024px) {
	body.slug-internal-medicine .medical-services-title {
		font-size: 30px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-internal-medicine .medical-services-title {
		font-size: 18px;
	}
}
body.slug-internal-medicine .medical-services-list {
	list-style: none;
	padding-left: 0;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}
@media (min-width: 1024px) {
	body.slug-internal-medicine .medical-services-list {
		margin-top: 35px;
	}
}
body.slug-internal-medicine .medical-services-list li {
	font-size: 24px;
	font-weight: 500;
	line-height: 1.5;
	margin-top: 0.5em;
}
@media not all and (min-width: 1024px) {
	body.slug-internal-medicine .medical-services-list li {
		font-size: 20px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-internal-medicine .medical-services-list li {
		font-size: 16px;
	}
}
body.slug-internal-medicine .medical-services-list li .has-sm-s-font-size {
	font-size: 0.75em !important;
	font-weight: 400;
}
@media (min-width: 1024px) {
	body.slug-internal-medicine section.visit-guide {
		--smb-section--padding: 108px;
	}
}
@media (min-width: 1024px) {
	body.slug-internal-medicine section.visit-guide .c-container {
		max-width: 1000px;
	}
}
body.slug-internal-medicine .visit-guide-columns .c-row--margin {
	--_gap: 60px;
}
@media not all and (min-width: 1024px) {
	body.slug-internal-medicine .visit-guide-columns .c-row--margin {
		--_gap: 30px;
	}
}
@media (min-width: 1024px) {
	body.slug-internal-medicine .visit-guide-columns .text-col {
		--_item-width: 62%;
	}
	body.slug-internal-medicine .visit-guide-columns .image-col {
		--_item-width: 38%;
	}
}
body.slug-internal-medicine .visit-guide-subtitle {
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
	position: relative;
}
@media not all and (min-width: 640px) {
	body.slug-internal-medicine .visit-guide-subtitle {
		font-size: 14px;
	}
}
body.slug-internal-medicine .visit-guide-subtitle::after {
	content: "";
	background-color: #45e3de;
	width: 40px;
	height: 2px;
	position: absolute;
	left: 0;
	bottom: -16px;
}
body.slug-internal-medicine .visit-guide-title {
	color: var(--accent-color);
	font-size: 28px;
	font-weight: 500;
	line-height: 1.6;
	margin-top: 2rem;
}
@media not all and (min-width: 640px) {
	body.slug-internal-medicine .visit-guide-title {
		font-size: 18px;
	}
}
body.slug-internal-medicine .visit-guide-text {
	max-width: 470px;
	margin-top: 40px;
	margin-left: 0 !important;
}
@media not all and (min-width: 1024px) {
	body.slug-internal-medicine .visit-guide-text {
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-internal-medicine .visit-guide-text {
		margin-top: 20px;
	}
}
@media (min-width: 1024px) {
	body.slug-internal-medicine .visit-guide-img {
		margin-top: -20px;
	}
}
@media not all and (min-width: 1024px) {
	body.slug-internal-medicine .visit-guide-img {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
	}
}
@media not all and (min-width: 640px) {
	body.slug-internal-medicine .visit-guide-img img {
		width: 112px;
	}
}

/* 呼吸器内科 */
@media (min-width: 1024px) {
	body.slug-respiratory section.respiratory-care {
		--smb-section--padding: 100px;
	}
}
@media (min-width: 1024px) {
	body.slug-respiratory section.respiratory-care .c-container {
		max-width: 980px;
	}
}
body.slug-respiratory .respiratory-care-columns .c-row--margin {
	--_gap: 50px;
}
@media not all and (min-width: 640px) {
	body.slug-respiratory .respiratory-care-columns .c-row--margin {
		--_gap: 20px;
	}
}
body.slug-respiratory .respiratory-care-title {
	color: var(--accent-color);
	font-size: 28px;
	font-weight: 500;
	line-height: 1.6;
}
@media not all and (min-width: 1024px) {
	body.slug-respiratory .respiratory-care-title {
		font-size: 24px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-respiratory .respiratory-care-title {
		font-size: 18px;
	}
}
body.slug-respiratory .respiratory-care-text {
	margin-top: 40px;
}
@media not all and (min-width: 1024px) {
	body.slug-respiratory .respiratory-care-text {
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-respiratory .respiratory-care-text {
		margin-top: 20px;
	}
}
@media (min-width: 1024px) {
	body.slug-respiratory section.detailed-exam {
		--smb-section--padding: 100px;
	}
}
@media (min-width: 1024px) {
	body.slug-respiratory section.detailed-exam .c-container {
		max-width: 980px;
	}
}
body.slug-respiratory .detailed-exam-title {
	color: var(--accent-color);
	font-size: 28px;
	font-weight: 500;
	line-height: 1.6;
}
@media not all and (min-width: 1024px) {
	body.slug-respiratory .detailed-exam-title {
		font-size: 24px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-respiratory .detailed-exam-title {
		font-size: 18px;
	}
}
body.slug-respiratory .detailed-exam-text {
	margin-top: 40px;
}
@media not all and (min-width: 1024px) {
	body.slug-respiratory .detailed-exam-text {
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-respiratory .detailed-exam-text {
		margin-top: 20px;
	}
}
@media (min-width: 1024px) {
	body.slug-respiratory section.visit-guide {
		--smb-section--padding: 85px;
	}
}
@media (min-width: 1024px) {
	body.slug-respiratory section.visit-guide .c-container {
		max-width: 980px;
	}
}
body.slug-respiratory .visit-guide-columns .c-row--margin {
	--_gap: 50px;
}
@media not all and (min-width: 640px) {
	body.slug-respiratory .visit-guide-columns .c-row--margin {
		--_gap: 0;
	}
}
body.slug-respiratory .visit-guide-subtitle {
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
	position: relative;
}
@media not all and (min-width: 640px) {
	body.slug-respiratory .visit-guide-subtitle {
		font-size: 14px;
	}
}
body.slug-respiratory .visit-guide-subtitle::after {
	content: "";
	background-color: #45e3de;
	width: 40px;
	height: 2px;
	position: absolute;
	left: 0;
	bottom: -16px;
}
body.slug-respiratory .visit-guide-title {
	color: var(--accent-color);
	font-size: 28px;
	font-weight: 500;
	line-height: 1.6;
	margin-top: 2rem;
}
@media not all and (min-width: 640px) {
	body.slug-respiratory .visit-guide-title {
		font-size: 18px;
	}
}
body.slug-respiratory .visit-guide-text {
	max-width: 470px;
	margin-top: 40px;
	margin-left: 0 !important;
}
@media not all and (min-width: 640px) {
	body.slug-respiratory .visit-guide-text {
		margin-top: 20px;
	}
}
@media (min-width: 1024px) {
	body.slug-respiratory .visit-guide-img {
		margin-top: 20px;
	}
}
@media not all and (min-width: 1024px) {
	body.slug-respiratory .visit-guide-img {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
	}
}
@media not all and (min-width: 640px) {
	body.slug-respiratory .visit-guide-img img {
		width: 240px;
	}
}

/* 健診・予防接種 */
@media (min-width: 1024px) {
	body.slug-checkup-vaccine :where(.is-layout-constrained) > * {
		-webkit-margin-before: 40px;
		        margin-block-start: 40px;
	}
}
body.slug-checkup-vaccine section.checkup-content {
	--smb-section--padding: 60px 0 0;
}
@media not all and (min-width: 640px) {
	body.slug-checkup-vaccine section.checkup-content {
		--smb-section--padding: 40px 0 0;
	}
}
@media (min-width: 1024px) and (min-width: 1024px) {
	body.slug-checkup-vaccine section.checkup-content .c-container {
		max-width: 1000px;
	}
}
@media (min-width: 1024px) {
	body.slug-checkup-vaccine section.checkup-content .smb-section__body {
		padding-right: 80px;
	}
}
body.slug-checkup-vaccine section.vaccine-content {
	--smb-section--padding: 60px;
}
@media not all and (min-width: 640px) {
	body.slug-checkup-vaccine section.vaccine-content {
		--smb-section--padding: 30px 0 40px;
	}
}
@media (min-width: 1024px) {
	body.slug-checkup-vaccine section.vaccine-content .c-container {
		max-width: 1000px;
	}
}
@media (min-width: 1024px) {
	body.slug-checkup-vaccine section.vaccine-content .smb-section__body {
		padding-right: 80px;
	}
}
body.slug-checkup-vaccine .checkup-title,
body.slug-checkup-vaccine .vaccine-title {
	color: var(--accent-color);
	font-size: 26px;
	font-weight: 500;
	line-height: 1;
	border: 2px solid var(--accent-color);
	border-radius: 10px;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	padding: 8px 30px 8px 20px;
	margin-left: 0 !important;
}
@media not all and (min-width: 640px) {
	body.slug-checkup-vaccine .checkup-title,
	body.slug-checkup-vaccine .vaccine-title {
		font-size: 18px;
		padding: 8px 16px;
	}
}
body.slug-checkup-vaccine .checkup-title:not(:first-child),
body.slug-checkup-vaccine .vaccine-title:not(:first-child) {
	margin-top: 40px;
}
@media not all and (min-width: 640px) {
	body.slug-checkup-vaccine .checkup-title:not(:first-child),
	body.slug-checkup-vaccine .vaccine-title:not(:first-child) {
		margin-top: 20px;
	}
}
@media (min-width: 1024px) {
	body.slug-checkup-vaccine .checkup-title + *,
	body.slug-checkup-vaccine .vaccine-title + * {
		margin-top: 30px;
	}
}
body.slug-checkup-vaccine .checkup-subtitle {
	font-size: 22px;
	font-weight: 400;
	line-height: 1.8;
	margin-top: 40px;
}
@media not all and (min-width: 640px) {
	body.slug-checkup-vaccine .checkup-subtitle {
		font-size: 16px;
		margin-top: 20px;
	}
}
body.slug-checkup-vaccine .checkup-subtitle + * {
	margin-top: 40px;
}
@media not all and (min-width: 640px) {
	body.slug-checkup-vaccine .checkup-subtitle + * {
		margin-top: 20px;
	}
}
body.slug-checkup-vaccine .vaccine-subtitle {
	color: var(--accent-color);
	background-color: #f5feff;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.5;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-top: 56px;
	margin-left: 0 !important;
}
@media not all and (min-width: 640px) {
	body.slug-checkup-vaccine .vaccine-subtitle {
		font-size: 16px;
		margin-top: 30px;
	}
}
body.slug-checkup-vaccine .vaccine-subtitle + * {
	margin-top: 12px;
}
body.slug-checkup-vaccine .checkup-text,
body.slug-checkup-vaccine .vaccine-text {
	font-size: 22px;
}
@media not all and (min-width: 640px) {
	body.slug-checkup-vaccine .checkup-text,
	body.slug-checkup-vaccine .vaccine-text {
		font-size: 14px;
	}
}
body.slug-checkup-vaccine .checkup-text strong,
body.slug-checkup-vaccine .vaccine-text strong {
	font-weight: 500 !important;
}
body.slug-checkup-vaccine .wp-block-separator {
	border-top: 1px dashed #14b8a6;
}
body.slug-checkup-vaccine .wp-block-separator.mt-60 {
	margin-top: 60px;
}
@media not all and (min-width: 1024px) {
	body.slug-checkup-vaccine .wp-block-separator.mt-60 {
		margin-top: 40px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-checkup-vaccine .wp-block-separator.mt-60 {
		margin-top: 30px;
	}
}
body.slug-checkup-vaccine .wp-block-separator.mb-60 {
	margin-bottom: 60px;
}
@media not all and (min-width: 1024px) {
	body.slug-checkup-vaccine .wp-block-separator.mb-60 {
		margin-bottom: 40px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-checkup-vaccine .wp-block-separator.mb-60 {
		margin-bottom: 30px;
	}
}

/* 検査一覧 */
@media (min-width: 1024px) {
	body.slug-examination section.examination-content {
		--smb-section--padding: 60px 0 80px;
	}
}
@media (min-width: 1024px) {
	body.slug-examination section.examination-content .c-container {
		max-width: 1034px;
	}
}
@media (min-width: 1024px) {
	body.slug-examination .exam-group {
		padding-right: 80px;
	}
}
body.slug-examination .exam-title-group {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 20px;
}
@media not all and (min-width: 640px) {
	body.slug-examination .exam-title-group {
		gap: 15px;
	}
}
body.slug-examination .exam-icon {
	margin-inline: 0 !important;
}
@media not all and (min-width: 640px) {
	body.slug-examination .exam-icon {
		width: 48px;
	}
}
body.slug-examination .exam-title {
	color: var(--accent-color);
	font-size: 26px;
	font-weight: 500;
	line-height: 1;
	margin-top: 0;
	margin-inline: 0 !important;
}
@media not all and (min-width: 640px) {
	body.slug-examination .exam-title {
		font-size: 18px;
	}
}
body.slug-examination .exam-text {
	font-size: 22px;
	margin-top: 20px;
}
@media not all and (min-width: 640px) {
	body.slug-examination .exam-text {
		font-size: 14px;
	}
}
body.slug-examination .exam-text strong {
	font-weight: 500 !important;
}
body.slug-examination .exam-guide-box {
	padding: 30px 120px;
	margin-top: 120px;
}
@media not all and (min-width: 1024px) {
	body.slug-examination .exam-guide-box {
		padding: 30px;
		margin-top: 60px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-examination .exam-guide-box {
		padding: 25px;
		margin-top: 40px;
	}
}
body.slug-examination .exam-guide-columns .c-row--margin {
	--_gap: 40px;
}
@media not all and (min-width: 640px) {
	body.slug-examination .exam-guide-columns .c-row--margin {
		--_gap: 20px;
	}
}
@media (min-width: 1024px) {
	body.slug-examination .exam-guide-columns .left-col {
		--_item-width: 328px;
	}
	body.slug-examination .exam-guide-columns .right-col {
		--_item-width: calc(100% - 328px);
	}
}
body.slug-examination .exam-guide-subtitle {
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
	position: relative;
}
@media not all and (min-width: 640px) {
	body.slug-examination .exam-guide-subtitle {
		font-size: 14px;
	}
}
body.slug-examination .exam-guide-subtitle::after {
	content: "";
	background-color: #45e3de;
	width: 40px;
	height: 2px;
	position: absolute;
	left: 0;
	bottom: -16px;
}
body.slug-examination .exam-guide-title {
	color: var(--accent-color);
	font-size: 24px;
	font-weight: 500;
	line-height: 1.6;
	margin-top: 2rem;
}
@media not all and (min-width: 640px) {
	body.slug-examination .exam-guide-title {
		font-size: 18px;
	}
}
body.slug-examination .wp-block-separator {
	border-top: 1px dashed #14b8a6;
}
body.slug-examination .wp-block-separator.mt-60 {
	margin-top: 60px;
}
@media not all and (min-width: 1024px) {
	body.slug-examination .wp-block-separator.mt-60 {
		margin-top: 40px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-examination .wp-block-separator.mt-60 {
		margin-top: 30px;
	}
}
body.slug-examination .wp-block-separator.mb-60 {
	margin-bottom: 60px;
}
@media not all and (min-width: 1024px) {
	body.slug-examination .wp-block-separator.mb-60 {
		margin-bottom: 40px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-examination .wp-block-separator.mb-60 {
		margin-bottom: 30px;
	}
}

/* 当院について */
@media not all and (min-width: 640px) {
	body.slug-about section.page-lead {
		--smb-section--padding: 0 0 40px;
	}
}
@media (min-width: 1024px) {
	body.slug-about section.about {
		--smb-section--padding: 100px;
	}
}
@media not all and (min-width: 1024px) {
	body.slug-about section.about + section.about {
		padding-top: 0;
	}
}
@media (min-width: 1024px) {
	body.slug-about section.about .c-container {
		max-width: 1062px;
	}
}
body.slug-about .about-columns .c-row--margin {
	--_gap: 130px;
}
@media not all and (min-width: 1024px) {
	body.slug-about .about-columns .c-row--margin {
		--_gap: 40px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-about .about-columns .c-row--margin {
		--_gap: 20px;
	}
}
@media (min-width: 1024px) {
	body.slug-about .about-columns .left-col {
		--_item-width: 328px;
	}
	body.slug-about .about-columns .right-col {
		--_item-width: calc(100% - 328px);
	}
}
body.slug-about .about-subtitle {
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
	position: relative;
}
@media not all and (min-width: 640px) {
	body.slug-about .about-subtitle {
		font-size: 14px;
	}
}
body.slug-about .about-subtitle::after {
	content: "";
	background-color: #45e3de;
	width: 40px;
	height: 2px;
	position: absolute;
	left: 0;
	bottom: -16px;
}
body.slug-about .about-title {
	color: var(--accent-color);
	font-size: 28px;
	font-weight: 500;
	line-height: 1.6;
	margin-top: 2rem;
}
@media not all and (min-width: 640px) {
	body.slug-about .about-title {
		font-size: 18px;
	}
}
body.slug-about .about-text {
	margin-top: 40px;
}
@media not all and (min-width: 640px) {
	body.slug-about .about-text {
		margin-top: 20px;
	}
}
@media (min-width: 1024px) {
	body.slug-about section.message {
		--smb-section--padding: 60px;
	}
}
body.slug-about .message-title-group {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}
body.slug-about .message-title {
	color: var(--accent-color);
	font-size: 48px;
	font-weight: 500;
}
@media not all and (min-width: 1024px) {
	body.slug-about .message-title {
		font-size: 36px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-about .message-title {
		font-size: 24px;
	}
}
body.slug-about .message-img {
	position: absolute;
	top: 75%;
	left: -245px;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	margin-top: 0;
}
@media not all and (min-width: 1024px) {
	body.slug-about .message-img {
		left: -170px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-about .message-img {
		width: 60px;
		left: -100px;
	}
}
body.slug-about .message-catch {
	color: #575757;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
	margin-top: 40px;
}
@media not all and (min-width: 1024px) {
	body.slug-about .message-catch {
		font-size: 20px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-about .message-catch {
		font-size: 18px;
		margin-top: 30px;
	}
}
body.slug-about .message-text {
	font-size: 18px;
	text-align: center;
	margin-top: 30px;
}
@media not all and (min-width: 640px) {
	body.slug-about .message-text {
		font-size: 14px;
		margin-top: 20px;
	}
}

/* アクセス・診療時間 */
@media (min-width: 1024px) {
	body.slug-access section.access-content {
		--smb-section--padding: 50px 0 40px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access section.access-content {
		padding-top: 0;
	}
}
body.slug-access .access-box {
	padding: 80px 40px;
	margin-top: 60px;
}
@media not all and (min-width: 1024px) {
	body.slug-access .access-box {
		padding: 30px;
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .access-box {
		padding: 20px;
		margin-top: 20px;
	}
}
body.slug-access .access-columns .c-row--margin {
	--_gap: 60px;
}
@media not all and (min-width: 1024px) {
	body.slug-access .access-columns .c-row--margin {
		--_gap: 30px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .access-columns .c-row--margin {
		--_gap: 20px;
	}
}
@media (min-width: 1024px) {
	body.slug-access .access-columns .left-col {
		--_item-width: 535px;
	}
	body.slug-access .access-columns .right-col {
		--_item-width: calc(100% - 535px);
	}
	body.slug-access .access-columns .right-col .smb-items__item {
		height: 100%;
	}
	body.slug-access .access-columns .right-col .smb-items__item__body {
		height: 100%;
	}
}
body.slug-access .access-table {
	overflow: hidden;
}
body.slug-access .access-table td {
	line-height: 1.4;
	border: none;
	vertical-align: top;
	padding: 28px 20px;
}
@media not all and (min-width: 640px) {
	body.slug-access .access-table td {
		padding: 15px;
	}
}
body.slug-access .access-table td:first-child {
	color: var(--accent-color);
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
	width: 4em;
	padding-inline: 0;
}
@media not all and (min-width: 640px) {
	body.slug-access .access-table td:first-child {
		font-size: 16px;
	}
}
body.slug-access .access-table td:last-child {
	font-size: 18px;
}
@media not all and (min-width: 640px) {
	body.slug-access .access-table td:last-child {
		font-size: 14px;
	}
}
@media (min-width: 1024px) {
	body.slug-access .access-table tr:nth-child(1) td {
		padding-top: 0;
	}
}
body.slug-access .access-table tr:not(:last-child) td {
	border-bottom: 1px dashed var(--sub-accent-color);
}
@media (min-width: 1024px) {
	body.slug-access .access-table tr:last-child td {
		padding-bottom: 0;
	}
}
body.slug-access .gmap {
	height: 100%;
}
@media not all and (min-width: 1024px) {
	body.slug-access .gmap {
		height: 400px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .gmap {
		height: 250px;
	}
}
body.slug-access .access-text-group {
	padding-right: 230px;
}
@media not all and (min-width: 1024px) {
	body.slug-access .access-text-group {
		padding-right: 100px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .access-text-group {
		padding-right: 80px;
	}
}
body.slug-access .access-text {
	color: var(--accent-color);
	font-size: 20px;
	font-weight: 500;
	text-indent: -36px;
	padding-left: 36px;
	margin-top: 30px;
}
@media (min-width: 1024px) {
	body.slug-access .access-text {
		margin-left: 50px !important;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .access-text {
		font-size: 14px;
		text-indent: -22px;
		padding-left: 22px;
	}
}
body.slug-access .access-text::before {
	content: "";
	display: inline-block;
	background-color: var(--accent-color);
	border-radius: 9999px;
	width: 16px;
	height: 16px;
	margin-right: 20px;
}
@media not all and (min-width: 640px) {
	body.slug-access .access-text::before {
		width: 12px;
		height: 12px;
		margin-right: 10px;
	}
}
body.slug-access .access-img {
	position: absolute;
	top: 40%;
	right: 110px;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	margin-top: 0;
}
@media not all and (min-width: 1024px) {
	body.slug-access .access-img {
		top: 50%;
		right: 0;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .access-img {
		width: 65px;
	}
}
@media (min-width: 1024px) {
	body.slug-access section.hours {
		--smb-section--padding: 80px 0 40px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access section.hours {
		--smb-section--padding: 20px 0 40px;
	}
}
body.slug-access section.hours .section-heading + .hours-box {
	margin-top: 60px;
}
@media not all and (min-width: 1024px) {
	body.slug-access section.hours .section-heading + .hours-box {
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access section.hours .section-heading + .hours-box {
		margin-top: 20px;
	}
}
body.slug-access .hours-box {
	padding: 20px;
}
body.slug-access .hours-box .smb-box__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 15px 30px;
}
body.slug-access .hours-box .smb-box__body > :not(:first-child) {
	margin-top: 0;
}
body.slug-access .hours-group {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 20px;
	margin-inline: 0 !important;
}
@media not all and (min-width: 640px) {
	body.slug-access .hours-group {
		width: 190px;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		gap: 10px;
	}
}
body.slug-access .hours-group > :not(:first-child) {
	margin-top: 0;
}
body.slug-access .hours-label {
	font-size: 24px;
	font-weight: 500;
	line-height: 1;
	margin-inline: 0 !important;
}
@media not all and (min-width: 1024px) {
	body.slug-access .hours-label {
		font-size: 20px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .hours-label {
		font-size: 15px;
	}
}
body.slug-access .hours-time {
	font-size: 24px;
	font-weight: 500;
	line-height: 1;
	margin-inline: 0 !important;
}
@media not all and (min-width: 1024px) {
	body.slug-access .hours-time {
		font-size: 20px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .hours-time {
		font-size: 18px;
	}
}
body.slug-access .hours-note {
	font-size: 24px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1;
	margin-inline: 0 !important;
}
@media not all and (min-width: 1024px) {
	body.slug-access .hours-note {
		font-size: 20px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .hours-note {
		font-size: 14px;
	}
}
body.slug-access .hours-columns {
	margin-top: 40px;
}
@media not all and (min-width: 640px) {
	body.slug-access .hours-columns {
		margin-top: 20px;
	}
}
body.slug-access .hours-columns .c-row {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
body.slug-access .hours-columns .c-row--margin {
	--_gap: 60px;
}
@media not all and (min-width: 640px) {
	body.slug-access .hours-columns .c-row--margin {
		--_gap: 20px;
	}
}
@media (min-width: 1024px) {
	body.slug-access .hours-columns .left-col {
		--_item-width: 52%;
	}
	body.slug-access .hours-columns .right-col {
		--_item-width: 48%;
	}
}
body.slug-access .schedule-table thead {
	background-color: #d9dee8;
	border: 2px solid #d9dee8;
}
@media not all and (min-width: 640px) {
	body.slug-access .schedule-table thead tr {
		height: 46px;
	}
}
body.slug-access .schedule-table thead th {
	color: #333;
	font-weight: 500;
	border: none;
}
@media not all and (min-width: 640px) {
	body.slug-access .schedule-table thead th {
		font-size: 12px;
	}
}
body.slug-access .schedule-table thead th:first-child {
	width: 9.125em;
}
@media not all and (min-width: 640px) {
	body.slug-access .schedule-table thead th:first-child {
		width: 7.5em;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .schedule-table tr {
		height: 55px;
	}
}
body.slug-access .schedule-table td,
body.slug-access .schedule-table th {
	border: 2px solid #d9dee8;
	padding: 15px 10px;
}
@media not all and (min-width: 640px) {
	body.slug-access .schedule-table td,
	body.slug-access .schedule-table th {
		padding: 6px;
	}
}
body.slug-access .schedule-table td:first-child {
	font-family: "Roboto", "Noto Sans JP", sans-serif;
	font-size: 1.125em;
}
@media not all and (min-width: 640px) {
	body.slug-access .schedule-table td:first-child {
		font-size: 13px;
	}
}
body.slug-access .closed-group {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 40px;
	margin-inline: 0 !important;
}
body.slug-access .closed-group > :not(:first-child) {
	margin-top: 0;
}
body.slug-access .closed-label {
	color: var(--accent-color);
	font-size: 24px;
	font-weight: 500;
	line-height: 1;
	margin-inline: 0 !important;
}
@media not all and (min-width: 1024px) {
	body.slug-access .closed-label {
		font-size: 20px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .closed-label {
		font-size: 15px;
	}
}
body.slug-access .closed-days {
	font-size: 24px;
	font-weight: 500;
	line-height: 1;
	margin-inline: 0 !important;
}
@media not all and (min-width: 1024px) {
	body.slug-access .closed-days {
		font-size: 20px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .closed-days {
		font-size: 18px;
	}
}
body.slug-access .closed-text {
	font-size: 1.125rem;
	margin-top: 30px;
}
@media not all and (min-width: 640px) {
	body.slug-access .closed-text {
		font-size: 1rem;
	}
}
@media (min-width: 1024px) {
	body.slug-access section.visit-request {
		--smb-section--padding: 50px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access section.visit-request {
		--smb-section--padding: 20px 0 40px;
	}
}
body.slug-access section.visit-request .section-heading + .visit-request-box {
	margin-top: 60px;
}
@media not all and (min-width: 1024px) {
	body.slug-access section.visit-request .section-heading + .visit-request-box {
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access section.visit-request .section-heading + .visit-request-box {
		margin-top: 20px;
	}
}
body.slug-access .visit-request-box {
	-webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
	        box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
	padding: 80px 40px;
	margin-top: 40px;
}
@media not all and (min-width: 640px) {
	body.slug-access .visit-request-box {
		padding: 25px;
		margin-top: 20px;
	}
}
body.slug-access .visit-request-subtitle {
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
	position: relative;
}
@media not all and (min-width: 640px) {
	body.slug-access .visit-request-subtitle {
		font-size: 14px;
	}
}
body.slug-access .visit-request-subtitle::after {
	content: "";
	background-color: #45e3de;
	width: 40px;
	height: 2px;
	position: absolute;
	left: 0;
	bottom: -16px;
}
body.slug-access .visit-request-title {
	color: var(--accent-color);
	font-size: 28px;
	font-weight: 500;
	line-height: 1.6;
	margin-top: 2rem;
}
@media not all and (min-width: 640px) {
	body.slug-access .visit-request-title {
		font-size: 18px;
	}
}
body.slug-access .visit-request-text {
	font-size: 20px;
	max-width: 910px;
	margin-inline: 0 !important;
	margin-top: 40px;
}
@media not all and (min-width: 1024px) {
	body.slug-access .visit-request-text {
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .visit-request-text {
		font-size: 14px;
		margin-top: 20px;
	}
}
body.slug-access .visit-request-text strong {
	font-weight: 500 !important;
}
@media (min-width: 1024px) {
	body.slug-access section.visit-support {
		--smb-section--padding: 50px 0 40px;
	}
}
body.slug-access .visit-support-title-group {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}
body.slug-access .visit-support-title {
	color: var(--accent-color);
	font-size: 36px;
	font-weight: 500;
	line-height: 1;
}
@media not all and (min-width: 1024px) {
	body.slug-access .visit-support-title {
		font-size: 26px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .visit-support-title {
		font-size: 18px;
		padding-left: 30px;
	}
}
body.slug-access .visit-support-img {
	position: absolute;
	top: 50%;
	left: -225px;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	margin-top: 0;
}
@media not all and (min-width: 1024px) {
	body.slug-access .visit-support-img {
		left: -120px;
	}
}
@media not all and (min-width: 640px) {
	body.slug-access .visit-support-img {
		width: 60px;
		left: -40px;
	}
}
body.slug-access .visit-support-text {
	font-size: 20px;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-top: 60px;
}
@media not all and (min-width: 640px) {
	body.slug-access .visit-support-text {
		font-size: 14px;
		margin-top: 30px;
	}
}

/* アーカイブページ */
body:is(.blog, .archive) .l-contents {
	border-top: 1px solid #ddd;
}
body:is(.blog, .archive) .l-contents__inner {
	margin-top: 0;
}
body:is(.blog, .archive) .c-entry__title {
	color: var(--accent-color);
	font-size: 36px;
	font-weight: 500;
}
@media not all and (min-width: 1024px) {
	body:is(.blog, .archive) .c-entry__title {
		font-size: 28px;
	}
}
@media not all and (min-width: 640px) {
	body:is(.blog, .archive) .c-entry__title {
		font-size: 20px;
	}
}
body:is(.blog, .archive) .c-entries--text2 {
	border-top: 1px dashed #c4c4c4;
}
body:is(.blog, .archive) .c-entries__item {
	border-bottom: 1px dashed #c4c4c4;
}
body:is(.blog, .archive) .c-entries__item > a {
	padding-top: 20px;
	padding-bottom: 20px;
}
@media not all and (min-width: 640px) {
	body:is(.blog, .archive) .c-entries__item > a {
		padding-top: 15px;
		padding-bottom: 15px;
	}
}
body:is(.blog, .archive) .c-entry-summary__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px 20px;
}
@media not all and (min-width: 640px) {
	body:is(.blog, .archive) .c-entry-summary__body {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
}
body:is(.blog, .archive) .c-entry-summary__meta {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	margin-top: 0;
}
body:is(.blog, .archive) .c-meta__item--published {
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.2;
}
body:is(.blog, .archive) .c-entry-summary__term {
	color: var(--sub-accent-color);
	background-color: #fff;
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	border: 1px solid var(--sub-accent-color);
	border-radius: 9999px;
	padding: 6px 20px;
}

/* 投稿ページ */
body.single-post .l-contents {
	border-top: 1px solid #ddd;
}
body.single-post .l-contents__inner {
	margin-top: 0;
}
body.single-post .c-entry__title {
	font-size: 36px;
	font-weight: 500;
}
@media not all and (min-width: 1024px) {
	body.single-post .c-entry__title {
		font-size: 28px;
	}
}
@media not all and (min-width: 640px) {
	body.single-post .c-entry__title {
		font-size: 20px;
	}
}
body.single-post .c-meta__item--author {
	display: none;
}

/* フッター */
.l-footer {
	border-top: none;
}
.l-footer .l-footer-widget-area {
	padding-top: 0;
	padding-bottom: 0;
}
.l-footer .l-footer-widget-area > .c-container {
	max-width: unset;
	padding-left: 0;
	padding-right: 0;
}
.l-footer .l-footer-widget-area > .c-container .c-row--lg-margin-l {
	--_gap: 0;
}
.l-footer .c-widget {
	--_font-size-level: 0;
}
.l-footer section.footer-cta {
	--smb-section--padding: 46px;
}
@media not all and (min-width: 640px) {
	.l-footer section.footer-cta {
		--smb-section--padding: 30px;
	}
}
.l-footer section.footer-cta .c-container {
	max-width: 682px;
}
.l-footer .section-heading {
	color: #fff;
}
.l-footer .footer-cta-box {
	padding: 40px 80px;
	margin-top: 40px;
}
@media not all and (min-width: 1024px) {
	.l-footer .footer-cta-box {
		max-width: 600px;
		padding: 40px;
		margin-top: 30px;
	}
}
@media not all and (min-width: 640px) {
	.l-footer .footer-cta-box {
		max-width: 450px;
		padding: 20px;
		margin-top: 20px;
	}
}
.l-footer .footer-cta-box .smb-box__body {
	display: grid;
	grid-template-columns: -webkit-max-content 1fr;
	grid-template-columns: max-content 1fr;
	grid-template-rows: -webkit-min-content 1fr;
	grid-template-rows: min-content 1fr;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 7px 16px;
}
.l-footer .footer-cta-box .smb-box__body > :not(:first-child) {
	margin-top: 0;
}
.l-footer .footer-cta-tel-icon {
	grid-column: 1/2;
	grid-row: 1/3;
	-webkit-filter: invert(1);
	        filter: invert(1);
	margin-inline: 0 !important;
}
@media not all and (min-width: 640px) {
	.l-footer .footer-cta-tel-icon {
		grid-row: 1/2;
		width: 30px;
	}
}
.l-footer .footer-cta-tel-group {
	grid-column: 2/3;
	grid-row: 1/2;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 22px;
	margin-left: 0 !important;
}
.l-footer .footer-cta-tel-group > :not(:first-child) {
	margin-top: 0;
}
.l-footer .footer-cta-tel {
	color: var(--accent-color);
	font-family: "Roboto", sans-serif;
	font-size: 36px;
	font-weight: 500;
	line-height: 1;
	margin-inline: 0 !important;
}
@media not all and (min-width: 640px) {
	.l-footer .footer-cta-tel {
		font-size: 32px;
	}
}
.l-footer .footer-cta-tel a {
	color: inherit;
	text-decoration: none;
	-webkit-transition: color 0.2s ease-out;
	transition: color 0.2s ease-out;
}
.l-footer .footer-cta-tel a:hover {
	color: var(--sub-accent-color);
}
.l-footer .footer-cta-text {
	color: var(--accent-color);
	font-weight: 500;
	line-height: 1;
	margin-inline: 0 !important;
}
.l-footer .footer-cta-subtext {
	grid-column: 2/3;
	grid-row: 2/3;
	line-height: 1;
}
@media not all and (min-width: 640px) {
	.l-footer .footer-cta-subtext {
		grid-column: 1/3;
		font-size: 11px;
	}
}
.l-footer section.footer {
	--smb-section--padding: 40px 0 0;
}
@media not all and (min-width: 640px) {
	.l-footer section.footer {
		--smb-section--padding: 30px 0 0;
	}
}
@media not all and (min-width: 1024px) {
	.l-footer .footer-logo img {
		width: 150px !important;
	}
}
.l-footer .footer-address {
	line-height: 1.4;
	margin-top: 15px;
}
.l-footer .footer-tel {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px;
	margin-top: 5px;
}
.l-footer .footer-tel > :not(:first-child) {
	margin-top: 0;
}
.l-footer .footer-tel-label {
	font-size: 13px;
	line-height: 1;
	margin-inline: 0 !important;
}
.l-footer .footer-tel-number {
	font-size: 2rem;
	line-height: 1;
	margin-inline: 0 !important;
}
.l-footer .footer-tel-number a {
	color: inherit;
	text-decoration: none;
	-webkit-transition: color 0.2s ease-out;
	transition: color 0.2s ease-out;
}
.l-footer .footer-tel-number a:hover {
	color: var(--sub-accent-color);
}
.l-footer .footer-hours-box {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	padding: 10px;
	margin-top: 30px;
	margin-left: 0 !important;
}
.l-footer .footer-hours-box .smb-box__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	gap: 23px;
}
.l-footer .footer-hours-box .smb-box__body > :not(:first-child) {
	margin-top: 0;
}
.l-footer .footer-hours-title {
	line-height: 1.75;
	margin-inline: 0 !important;
}
.l-footer .footer-hours {
	line-height: 1.75;
	margin-inline: 0 !important;
}
.l-footer .footer-hours .has-sm-s-font-size {
	font-size: 0.875rem !important;
}
.l-footer .footer-nav {
	list-style: none;
	padding-left: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 30px;
}
@media not all and (min-width: 640px) {
	.l-footer .footer-nav {
		gap: 15px 20px;
	}
}
@media (min-width: 1024px) {
	.l-footer .footer-nav {
		margin-top: 78px;
	}
}
.l-footer .footer-nav li {
	line-height: 1.1875;
	margin-top: 0;
}
.l-footer .footer-nav li a {
	color: inherit;
	text-decoration: none;
	-webkit-transition: color 0.2s ease-out;
	transition: color 0.2s ease-out;
}
.l-footer .footer-nav li a:hover {
	color: var(--sub-accent-color);
}
.l-footer .c-copyright {
	color: #457376;
	background-color: #fff;
	font-size: 10px;
	padding-block: 20px;
}