body {
	font-family: "Noto Sans JP", sans-serif;
}

.u-desktop {
	display: block;
}

.u-mobile {
	display: none;
}

/* リキッドレイアウト対応 */

html {
	font-size: 16px;
}

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

* {
	min-height: 0vw;
}

/* Remove default padding */

ul,
ol {
	padding: 0;
}

/* Remove default margin */

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
	margin: 0;
}

/* Set core root defaults */

/* Set core body defaults */

body {
	line-height: 1.5;
	min-height: 100vh;
	text-rendering: optimizeLegibility;
}

/* Remove list styles on ul, ol elements with a class attribute */

ul,
ol {
	list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

img {
	display: block;
	max-width: 100%;
	width: 100%;
}

/* Natural flow and rhythm in articles by default */

article > * + * {
	margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
	font: inherit;
}

/* Blur images when they have no alt attribute */

img:not([alt]) {
	filter: blur(10px);
}

/* フォームリセット */

input,
button,
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}

textarea {
	resize: vertical;
}

input[type=radio] {
	display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
	cursor: pointer;
}

select::-ms-expand {
	display: none;
}

/* ホバー */

a {
	-webkit-text-decoration: none;
	color: inherit;
	cursor: pointer;
	text-decoration: none;
	transition: opacity 0.2s ease-in;
}

a:hover {
	opacity: 0.7;
}

a[href^="tel:"] {
	pointer-events: none;
}

.page-about__top-img {
	margin: -8.875rem auto 0;
	max-width: 50.5625rem;
	width: 100%;
}

.about-feature {
	margin-top: 5.4375rem;
}

.about-feature__list {
	display: flex;
	flex-direction: column;
	gap: 3.75rem;
}

.about-feature__item {
	align-items: center;
	display: flex;
	gap: 3.75rem;
}

.about-feature__image {
	max-width: 34.375rem;
	width: 100%;
}

.about-feature__image img {
	-o-object-fit: cover;
	aspect-ratio: 550/270;
	border-radius: 1.25rem;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.about-feature__content {
	width: 100%;
}

.page-history {
	margin-top: 5.4375rem;
}

.page-history__item {
	background-color: #fefcf9;
	border-top: 1px solid #f0f0f0;
	padding: 1.4375rem 5rem;
}

.page-history__item:last-child {
	border-bottom: 1px solid #f0f0f0;
}

.page-history__item:nth-child(even) {
	background-color: #fff;
}

.page-history__body {
	align-items: flex-start;
	display: flex;
	gap: 3.75rem;
}

.page-history__year {
	color: #333333;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0.05em;
}

.page-history__text {
	color: #333333;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
}

.clinic-panels {
	display: flex;
	flex-direction: column;
	gap: 6.25rem;
	margin-top: 5rem;
}

.clinic-panel__mv {
	position: relative;
	width: 100%;
}

.clinic-panel__mv::before {
	background-color: rgba(42, 101, 65, 0.2);
	bottom: 0;
	content: "";
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.clinic-panel__mv::after {
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #ffffff);
	bottom: 0;
	content: "";
	height: 9.1875rem;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: 2;
}

.clinic-panel__mv-img img {
	-o-object-fit: cover;
	aspect-ratio: 1440/294;
	height: auto;
	object-fit: cover;
	opacity: 0.2;
	width: 100%;
}

.clinic-panel__label {
	align-items: center;
	display: flex;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.clinic-panel__label-number {
	color: #2a6541;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0.1em;
}

.clinic-panel__label-body {
	align-items: center;
	display: flex;
	gap: 0.5rem;
	margin-left: 1.25rem;
}

.clinic-panel__label-heading {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 0.9642857143;
}

.clinic-panel__label-category {
	color: #2a6541;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.2em;
}

.clinic-panel__body {
	margin-top: -1.875rem;
	position: relative;
	z-index: 4;
}

.page-section-title.clinic-panel__title {
	font-weight: 700;
}

.clinic-panel__cards {
	margin-top: 3.75rem;
}

.clinic-panel__card-list {
	grid-gap: 2.5rem;
	display: grid;
	gap: 2.5rem;
	grid-template-columns: repeat(3, 1fr);
}

.clinic-panel__card--wide {
	margin-top: 0;
	max-width: 28.75rem;
	width: 100%;
}

.clinic-panel__card-link {
	border-radius: 1.25rem;
	display: block;
	overflow: hidden;
}

.clinic-panel__card-link:hover {
	opacity: 1;
}

.clinic-panel__card-link:hover .clinic-panel__card-footer {
	background-color: #fff;
	border: 1px solid #2a6541;
}

.clinic-panel__card-link:hover .clinic-panel__card-footer .clinic-panel__card-title {
	color: #2a6541;
}

.clinic-panel__card-link:hover .clinic-panel__card-footer::after {
	background: url(../images/common/arrow-green.svg) no-repeat center center/contain;
}

.clinic-panel__card-img img {
	-o-object-fit: cover;
	aspect-ratio: 270/180;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.clinic-panel__card--wide .clinic-panel__card-img img {
	aspect-ratio: 460/180;
}

.clinic-panel__card-footer {
	align-items: center;
	background-color: #2a6541;
	border: 1px solid transparent;
	border-radius: 0 0 1.25rem 1.25rem;
	display: flex;
	justify-content: center;
	padding: 0.9375rem 0;
	position: relative;
	transition: border 0.3s ease, background-color 0.3s ease;
}

.clinic-panel__card-footer::after {
	background: url(../images/common/arrow-white.svg) no-repeat center center/contain;
	content: "";
	height: 0.868125rem;
	position: absolute;
	right: 1.25rem;
	top: 50%;
	transform: translateY(-50%);
	transition: background 0.3s ease;
	width: 0.98rem;
}

.clinic-panel__card-title {
	color: #ffffff;
	font-family: "Shippori Mincho", serif;
	font-size: 0.8125rem;
	font-weight: 700;
	text-align: center;
	transition: color 0.3s ease;
}

.clinic-panel__layout {
	align-items: center;
	display: flex;
	gap: 1.5625rem;
}

.clinic-panel__content {
	max-width: 45rem;
	width: 100%;
}

body.is-scroll {
	overflow: hidden;
}

.wrap {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

main {
	flex: 1;
}

.text-center {
	text-align: center;
}

.section-head {
	display: flex;
	flex-direction: column;
	gap: 0.3125rem;
}

.section-title {
	color: #fff;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}

.section-title--green {
	color: #2a6541;
}

.section-title--center {
	text-align: center;
}

.section-subtitle {
	color: #fff;
	font-family: "GFS Didot", serif;
	font-size: 1.875rem;
	font-weight: 400;
	letter-spacing: 0.1em;
}

.section-subtitle--green {
	color: #2a6541;
}

.section-subtitle--center {
	text-align: center;
}

.section-lead {
	color: #fff;
	font-family: "Shippori Mincho", serif;
	font-size: 1.875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.5;
}

.section-lead--green {
	color: #2a6541;
}

.section-text {
	color: #fff;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 2;
}

.section-text--green {
	color: #2a6541;
}

.page-section-title {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.5rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}

.page-section-text {
	color: #333;
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
	margin-top: 0.9375rem;
}

.section-btn {
	max-width: 10rem;
	width: 100%;
}

.section-btn a {
	background-color: #2a6541;
	border: 1px solid #fff;
	border-radius: 56.25rem;
	color: #fff;
	display: block;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	padding: 0.875rem 0 0.875rem 2.1875rem;
	position: relative;
	transition: border 0.3s ease, background-color 0.3s ease, color 0.3s ease;
}

.section-btn a:hover {
	background-color: #fff;
	border: 1px solid #2a6541;
	color: #2a6541;
	opacity: 1;
}

.section-btn a:hover::before {
	background: url(../images/common/arrow-green.svg) no-repeat center center/cover;
}

.section-btn--green a {
	background-color: #2a6541;
	border: 1px solid #2a6541;
	color: #fff;
}

.section-btn--green a:hover {
	background-color: #fff;
	color: #2a6541;
}

.section-btn--green a:hover::before {
	background: url(../images/common/arrow-green.svg) no-repeat center center/cover;
}

.section-btn--green a::before {
	background: url(../images/common/arrow-green.svg) no-repeat center center/cover;
}

.section-btn a::before {
	background: url(../images/common/arrow-white.svg) no-repeat center center/cover;
	content: "";
	height: 0.4375rem;
	position: absolute;
	right: 1.75rem;
	top: 50%;
	transform: translateY(-50%);
	transition: background 0.3s ease;
	width: 0.494375rem;
}

.contact {
	padding-top: 5.3125rem;
}

.contact__inner {
	margin: 0 auto;
	max-width: 58.75rem;
	padding: 0 1.25rem;
	width: 100%;
}

.contact__main-lead {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.5rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.5;
}

.contact__lead {
	font-family: "Shippori Mincho", serif;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 2.25;
}

.contact__form {
	border-top: 1px solid rgba(42, 101, 65, 0.3);
	margin-top: 3.1875rem;
}

.contact__row {
	align-items: center;
	border-bottom: 1px solid rgba(42, 101, 65, 0.3);
	display: flex;
	gap: 2.5rem;
	justify-content: space-between;
	padding: 2rem 0;
}

.contact__row-head {
	align-items: center;
	display: flex;
	justify-content: space-between;
	max-width: 11.5rem;
	width: 100%;
}

.contact__label {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 0.9375rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1;
}

.contact__required {
	align-items: center;
	background-color: rgba(255, 27, 27, 0.1);
	border-radius: 0.25rem;
	color: #f87171;
	display: inline-flex;
	font-size: 0.75rem;
	font-weight: 400;
	justify-content: center;
	letter-spacing: 0;
	line-height: 1;
	padding: 0.375rem 0.5rem;
	width: 2.5rem;
}

.contact__row-body {
	max-width: 43.75rem;
	width: 100%;
}

.contact__input {
	background-color: #fefcf9;
	border: 1px solid #f0f0f0;
	color: #333333;
	font-size: 0.9375rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	min-height: 3.4375rem;
	padding: 1rem 1.0625rem;
	width: 100%;
}

.contact__input::-moz-placeholder {
	color: #c6c6c6;
}

.contact__input::placeholder {
	color: #c6c6c6;
}

.contact__textarea {
	background-color: #fefcf9;
	border: 1px solid #f0f0f0;
	color: #333333;
	font-size: 0.9375rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	min-height: 12.1875rem;
	padding: 1rem 1.0625rem;
	resize: none;
	width: 100%;
}

.contact__textarea::-moz-placeholder {
	color: #c6c6c6;
}

.contact__textarea::placeholder {
	color: #c6c6c6;
}

.contact__agree {
	display: flex;
	justify-content: center;
	margin-top: 3rem;
}

.contact__agree-label {
	align-items: center;
	cursor: pointer;
	display: inline-flex;
}

.contact__agree input + span::before {
	background: transparent;
	border: 1px solid #707070;
	content: "";
	display: block;
	height: 1rem;
	left: 0;
	position: absolute;
	top: 0.4375rem;
	width: 1rem;
}

.contact__agree input + span::after {
	opacity: 0;
}

.contact__agree input:checked + span::after {
	border-bottom: 0.1875rem solid #2a6541;
	border-left: 0.1875rem solid #2a6541;
	content: "";
	display: block;
	height: 0.5rem;
	left: 0.125rem;
	margin-top: -0.125rem;
	opacity: 1;
	position: absolute;
	top: 0.6875rem;
	transform: rotate(-45deg);
	transition: 0.3s;
	width: 0.8125rem;
}

.contact__agree-text {
	color: #707070;
	font-size: 0.9375rem;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.4;
	position: relative;
}

.contact__agree-link {
	-webkit-text-decoration: underline;
	color: #2a6541;
	text-decoration: underline;
}

.contact__actions {
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 3rem auto 0;
	position: relative;
	transition: opacity 0.3s ease;
	width: -moz-fit-content;
	width: fit-content;
}

.contact__actions:hover {
	opacity: 0.7;
}

.contact__actions::before {
	background: url(../images/common/arrow-white.svg) no-repeat center center/cover;
	content: "";
	height: 0.4375rem;
	position: absolute;
	right: 1.75rem;
	top: 35%;
	transform: translateY(-50%);
	width: 0.494375rem;
	z-index: 1;
}

.contact__submit {
	background-color: #2a6541;
	border-radius: 56.25rem;
	color: #fff;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	padding: 0.9375rem 0.625rem 0.9375rem 0;
	position: relative;
	width: 10rem;
}

.wpcf7-submit:disabled {
	background-color: #c6c6c6;
	color: #fff;
}

.contact__back-btn {
	margin-top: 2.6875rem;
	max-width: 10rem;
	width: 100%;
}

.contact__back-btn a {
	background-color: #2a6541;
	border-radius: 56.25rem;
	color: #fff;
	display: block;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	padding: 0.9375rem 0 0.9375rem 1.25rem;
	position: relative;
	text-align: center;
}

.contact__back-btn a::before {
	background: url(../images/common/arrow-white.svg) no-repeat center center/cover;
	content: "";
	height: 0.4375rem;
	left: 2.0625rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotate(180deg);
	width: 0.494375rem;
}

.layout-cta {
	margin-top: 12.5rem;
	padding-bottom: 7.1875rem;
	position: relative;
}

.layout-cta::before {
	background: url(../images/top/circle-green.png) no-repeat center center/cover;
	bottom: -82%;
	content: "";
	height: 50rem;
	position: absolute;
	right: calc(50% + 20.125rem);
	width: 50rem;
}

.cta__inner {
	display: flex;
	gap: 0.625rem;
	position: relative;
}

.cta__contact {
	background-color: #2a6541;
	border-radius: 1.25rem;
	flex: 1;
	padding: 3.375rem 2.125rem 3.75rem;
}

.cta__tel {
	align-items: baseline;
	display: flex;
	gap: 0.5rem;
	margin: 1.25rem auto 0;
	width: -moz-fit-content;
	width: fit-content;
}

.cta__tel-icon img {
	width: 1.875rem;
}

.cta__tel-number {
	color: #fff;
	font-size: 2.875rem;
	font-weight: 400;
	line-height: 1.4347826087;
}

.cta__time {
	color: #fff;
	font-family: "Noto Serif JP", serif;
	font-size: 0.9375rem;
	font-weight: 500;
	margin-top: 0.1875rem;
	text-align: center;
}

.cta__btn {
	margin: 2.1875rem auto 0;
	max-width: 17.6875rem;
	width: 100%;
}

.cta__btn a {
	border: 1px solid #fff;
	border-radius: 56.25rem;
	color: #fff;
	display: block;
	font-family: "Noto Serif JP", serif;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 0.875rem 0 0.875rem 1.4375rem;
	position: relative;
	text-align: center;
	transition: border 0.3s ease, background-color 0.3s ease, color 0.3s ease;
}

.cta__btn a:hover {
	background-color: #fff;
	border: 1px solid #2a6541;
	color: #2a6541;
	opacity: 1;
}

.cta__btn a:hover::before {
	background: url(../images/common/arrow-green.svg) no-repeat center center/cover;
}

.cta__btn a:hover::after {
	background: url(../images/common/icon-mail-green.svg) no-repeat center center/cover;
}

.cta__btn a::before {
	background: url(../images/common/arrow-white.svg) no-repeat center center/cover;
	content: "";
	height: 0.4375rem;
	position: absolute;
	right: 1.25rem;
	top: 50%;
	transform: translateY(-50%);
	transition: background 0.3s ease;
	width: 0.494375rem;
}

.cta__btn a::after {
	background: url(../images/common/icon-mail.svg) no-repeat center center/cover;
	content: "";
	height: 0.8425rem;
	left: 3.5rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: background 0.3s ease;
	width: 1.053125rem;
}

.cta__list {
	margin-top: 2.5rem;
}

.cta__list li a {
	-webkit-text-decoration: underline;
	color: #fff;
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	line-height: 1.8571428571;
	position: relative;
	text-decoration: underline;
}

.cta__list li a::after {
	background: url(../images/common/icon-tab.svg) no-repeat center center/cover;
	content: "";
	height: 0.76875rem;
	position: absolute;
	right: -1.25rem;
	top: 50%;
	transform: translateY(-50%);
	width: 0.77rem;
}

.cta__list li a.cta__link--no {
	-webkit-text-decoration: none;
	pointer-events: none;
	text-decoration: none;
}

.cta__list li a.cta__link--no::after {
	display: none;
}

/* doctor-chairman */

.doctor-chairman {
	background-color: #efefef;
	margin-top: -2.5rem;
	padding: 7.375rem 0 6.25rem;
}

.inner.doctor-chairman__inner {
	max-width: 71.25rem;
}

.doctor-chairman__top {
	align-items: flex-start;
	display: flex;
	gap: 2.5rem;
	justify-content: space-between;
}

.doctor-chairman__content {
	max-width: 34.375rem;
	width: 100%;
}

.doctor-chairman__position {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-align: center;
}

.doctor-chairman__name {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	margin-top: 0.75rem;
	text-align: center;
}

.doctor-chairman__name-en {
	color: #2a6541;
	font-family: "Noto Serif JP", serif;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	text-align: center;
}

.doctor-chairman__texts {
	margin-top: 4.0625rem;
}

.doctor-chairman__text {
	color: #2a6541;
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 2.1428571429;
}

.doctor-chairman__image {
	border-radius: 1.25rem;
	max-width: 31.875rem;
	overflow: hidden;
	width: 100%;
}

.doctor-chairman__image img {
	-o-object-fit: cover;
	aspect-ratio: 510/756;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.doctor-chairman__award {
	margin-top: 3.75rem;
}

.doctor-award {
	background-color: #fefcf9;
	border-radius: 1.25rem;
	box-shadow: 0 0 1.5rem rgba(0, 0, 0, 0.05);
	margin-left: auto;
	margin-right: auto;
	max-width: 43.125rem;
	padding: 2.5rem 3.75rem;
	width: 100%;
}

.doctor-award__inner {
	align-items: center;
	display: flex;
	gap: 2.5rem;
}

.doctor-award__image {
	border: 1px solid #f0f0f0;
	flex-shrink: 0;
	max-width: 9.375rem;
	width: 100%;
}

.doctor-award__content {
	width: 100%;
}

.doctor-award__date {
	color: #333333;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0.05em;
}

.doctor-award__text {
	border-top: 1px solid #f0f0f0;
	color: #333333;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.6923076923;
	margin-top: 0.625rem;
	padding-top: 0.625rem;
}

.doctor-cards {
	background: url(../images/doctor/doctor-bg.webp) no-repeat center center/cover;
	padding: 7.8125rem 0 7.875rem;
	position: relative;
}

.doctor-cards::before {
	background-color: rgba(42, 101, 65, 0.2);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.doctor-cards__inner {
	position: relative;
	z-index: 1;
}

.doctor-cards__title {
	color: #fff;
	font-family: "Shippori Mincho", serif;
	font-size: 1.75rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}

.doctor-cards__list {
	grid-gap: 2.5rem;
	display: grid;
	gap: 2.5rem;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 3.9375rem;
}

.doctor-cards__item {
	width: 100%;
}

.doctor-cards__card {
	background-color: #fff;
	border-radius: 1.25rem;
	display: block;
	padding: 2.5rem;
	transition: background-color 0.3s ease;
}

.doctor-cards__card:hover {
	background-color: #2a6541;
	opacity: 1;
}

.doctor-cards__card:hover .doctor-cards__name {
	color: #fff;
}

.doctor-cards__card:hover .doctor-cards__name-en {
	color: #fff;
}

.doctor-cards__card {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	cursor: pointer;
	text-align: left;
	width: 100%;
}

.doctor-cards__card:focus-visible {
	outline: 0.125rem solid #fff;
	outline-offset: 0.25rem;
}

.doctor-cards__photo img {
	-o-object-fit: cover;
	aspect-ratio: 293/237;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.doctor-cards__body {
	text-align: center;
}

.doctor-cards__name {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	transition: color 0.3s ease;
}

.doctor-cards__name-en {
	color: #b4b4b4;
	font-family: "Noto Serif JP", serif;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	transition: color 0.3s ease;
}

/* doctor-modal */

body.is-modal-open {
	overflow: hidden;
}

.doctor-modal {
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1000;
}

.doctor-modal.is-open {
	display: block;
}

.doctor-modal__overlay {
	background-color: rgba(0, 0, 0, 0.7);
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.doctor-modal__close {
	background-color: transparent;
	border: none;
	cursor: pointer;
	height: 2.5rem;
	position: absolute;
	right: 0.625rem;
	top: -3.125rem;
	width: 2.5rem;
	z-index: 2;
}

.doctor-modal__close::before {
	background-color: #fff;
	content: "";
	height: 0.125rem;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
	width: 2.5rem;
}

.doctor-modal__close::after {
	background-color: #fff;
	content: "";
	height: 0.125rem;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%) rotate(-45deg);
	width: 2.5rem;
}

.doctor-modal__container {
	left: 50%;
	max-width: 56.25rem;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	z-index: 1;
}

.doctor-modal__panel {
	-webkit-overflow-scrolling: touch;
	background-color: #fff;
	border-radius: 1.25rem;
	display: flex;
	flex-direction: column;
	gap: 1.8125rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 54.5rem;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	padding: 2.9375rem 5rem 2.5rem;
	width: 100%;
}

.doctor-modal__nav {
	background-color: #2a6541;
	border: 0.125rem solid #fff;
	border-radius: 50%;
	cursor: pointer;
	height: 4rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: background-color 0.3s ease, border 0.3s ease;
	width: 4rem;
	z-index: 1;
}

.doctor-modal__nav:hover {
	background-color: #fff;
	border: 0.125rem solid #2a6541;
}

.doctor-modal__nav:hover::before {
	background: url(../images/common/arrow-green.svg) no-repeat center center/contain;
}

.doctor-modal__nav--prev {
	left: -0.875rem;
	transform: translateY(-50%) rotate(180deg);
}

.doctor-modal__nav--next {
	right: -0.875rem;
}

.doctor-modal__nav--prev::before,
.doctor-modal__nav--next::before {
	background: url(../images/common/arrow-white.svg) no-repeat center center/contain;
	content: "";
	height: 0.868125rem;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: background 0.3s ease;
	width: 0.98rem;
}

.doctor-modal__head {
	align-items: center;
	display: flex;
	gap: 1rem;
}

.doctor-modal__name {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.doctor-modal__name-en {
	color: #b4b4b4;
	font-family: "Noto Serif JP", serif;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.05em;
}

.doctor-modal__grid {
	display: flex;
	gap: 2.5rem;
}

.doctor-modal__image {
	flex-shrink: 0;
	max-width: 18.75rem;
	overflow: hidden;
	width: 100%;
}

.doctor-modal__image img {
	-o-object-fit: cover;
	aspect-ratio: 300/260;
	border-radius: 1.25rem;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.doctor-modal__affiliation {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.5rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}

.doctor-modal__text li {
	color: #333333;
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
}

.doctor-modal__text li span {
	display: block;
	font-weight: 700;
}

.layout-footer {
	background-color: #2a6541;
	color: #fff;
	padding: 7.5rem 0 3.125rem;
	position: relative;
}

.footer__bg {
	background-color: #2a6541;
	height: 100%;
	left: 0;
	overflow: hidden;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 0;
}

.footer__bg video {
	-o-object-fit: cover;
	background-color: #2a6541;
	display: block;
	height: auto;
	left: -20%;
	mix-blend-mode: multiply;
	object-fit: cover;
	position: absolute;
	top: -68%;
	width: 194vw;
}

.footer__inner {
	display: flex;
	gap: 2.5rem;
	justify-content: space-between;
	position: relative;
	z-index: 1;
}

.footer__logo img {
	max-width: 11.75rem;
}

.footer__address {
	font-family: "Noto Serif JP", serif;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	line-height: 1.4;
	margin-top: 2.8125rem;
}

.footer__tel {
	margin-top: 4.8125rem;
}

.footer__tel-number {
	align-items: baseline;
	display: flex;
	font-size: 1.75rem;
	font-weight: 400;
	gap: 0.25rem;
}

.footer__tel-number img {
	width: 1.125rem;
}

.footer__tel-time {
	font-family: "Noto Serif JP", serif;
	font-size: 0.75rem;
	font-weight: 400;
}

.footer__nav {
	grid-gap: 3.75rem;
	display: grid;
	gap: 3.75rem;
	grid-template-columns: repeat(3, 1fr);
	margin-top: -0.625rem;
}

.footer__nav li a {
	display: block;
	font-family: "Noto Serif JP", serif;
	font-size: 0.8125rem;
	font-weight: 700;
	padding: 0.625rem 0;
	text-transform: uppercase;
}

.footer__nav-translation {
	align-items: center;
	display: flex;
	margin-top: -0.1875rem;
	position: absolute;
	width: 3.4375rem;
}

.footer__nav-translation.u-mobile {
	display: none;
}

.footer__nav-item .gt_float_switcher .gt-selected .gt-current-lang {
	color: #fff !important;
}

.footer__nav-item .gt_float_switcher .gt-selected .gt-current-lang {
	margin-left: 0.625rem;
}

.footer__nav-translation::after {
	background: url(../images/common/triangle-white.svg) no-repeat center center/cover;
	content: "";
	height: 0.343125rem;
	position: absolute;
	right: -0.3125rem;
	top: 1.25rem;
	width: 0.523125rem;
}

.footer__nav-translation img {
	height: 0.94625rem;
	left: 0;
	position: absolute;
	top: 0.9375rem;
	width: 0.94625rem;
}

.inner.footer__copyright {
	border-top: 1px solid #fff;
	font-size: 0.625rem;
	font-weight: 400;
	margin-top: 5rem;
	padding-top: 3.125rem;
	position: relative;
	text-align: center;
}

.gt_float_switcher {
	background: transparent !important;
	box-shadow: none !important;
	font-size: 0.875rem !important;
}

.gt_float_switcher .gt-selected .gt-current-lang {
	color: #2a6541 !important;
	font-weight: 500 !important;
}

.gt_float_switcher .gt-selected {
	background-color: transparent !important;
	font-family: "Noto Serif JP", serif !important;
}

.gt_float_switcher img {
	display: none !important;
}

.gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow {
	display: none !important;
}

.gt_float_switcher .gt_options.gt-open {
	box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16) !important;
	padding: 0.3125rem !important;
}

.gt_float_switcher .gt_options.gt-open {
	background-color: #fff;
	border-radius: 0.625rem;
	position: absolute;
	top: 3.4375rem;
}

.gt_float_switcher .gt_options a {
	color: #2a6541 !important;
	font-family: "Noto Serif JP", serif !important;
	font-size: 0.875rem !important;
}

.gt_float_switcher .gt_options a:hover {
	background-color: transparent !important;
	color: #2a6541 !important;
}

.gt_float_switcher .gt_options a:not(:first-child) {
	border-top: 0.03125rem solid #d0d0d0 !important;
}

.header {
	background-color: transparent;
	height: 3.125rem;
	left: 0;
	position: fixed;
	right: 0;
	top: 1.25rem;
	width: 100%;
	z-index: 900;
}

.header__inner {
	display: flex;
	font-family: "Noto Serif JP", serif;
	height: inherit;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 90rem;
	padding: 0 1.25rem 0 clamp(1.25rem, -36.25rem + 50vw, 7.5rem);
	width: 100%;
}

.header__logo {
	height: inherit;
	max-width: 15.375rem;
	width: 100%;
}

.header__logo a {
	display: block;
	height: inherit;
	position: relative;
	width: 100%;
}

.header__logo-white,
.header__logo-green {
	-o-object-fit: contain;
	display: block;
	height: 100%;
	object-fit: contain;
	transition: opacity 0.6s ease;
	width: 100%;
}

.header__logo-white {
	opacity: 1;
	position: relative;
}

.header__logo-green {
	left: -0.25rem;
	opacity: 0;
	position: absolute;
	top: -0.125rem;
}

.header.is-scrolled .header__logo-white {
	opacity: 0;
}

.header.is-scrolled .header__logo-green {
	opacity: 1;
}

.body-mv-no-image .header__logo-white {
	opacity: 0;
}

.body-mv-no-image .header__logo-green {
	opacity: 1;
}

.header__nav {
	align-items: center;
	display: flex;
	height: inherit;
}

.header__nav-list {
	align-items: center;
	background-color: #fff;
	border-radius: 0.625rem;
	box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
	display: flex;
	height: inherit;
	padding: 0.3125rem 1.25rem 0.3125rem 0.3125rem;
}

.header__nav-item {
	height: 2.5rem;
}

.header__nav-item a.is-current {
	background-color: #2a6541;
	border-radius: 0.625rem;
	color: #fff;
	padding: 0.625rem;
}

.header__nav-item.header__nav-translation {
	align-items: center;
	color: #2a6541;
	cursor: pointer;
	display: flex;
	font-family: "Noto Serif JP", serif;
	font-size: 0.875rem;
	font-weight: 500;
	position: relative;
	width: 3.125rem;
}

.header__nav-item.header__nav-translation::after {
	background: url(../images/common/triangle.svg) no-repeat center center/cover;
	content: "";
	height: 0.343125rem;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 0.523125rem;
}

.header__nav-item.header__nav-item--entry {
	align-items: center;
	display: flex;
	margin-left: 0.5rem;
}

.header__nav-item a,
.header__nav-item.header__nav-translation p {
	align-items: center;
	color: #2a6541;
	display: flex;
	font-family: "Noto Serif JP", serif;
	font-size: 0.8125rem;
	font-weight: 600;
	height: inherit;
}

.header__nav-item a {
	padding: 0 0.625rem;
}

.header__nav-item.header__nav-item--entry {
	width: 7.375rem;
}

.header__nav-item.header__nav-item--entry a {
	border-radius: 0.625rem;
	box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
	color: #fff;
	display: block;
	font-family: "Noto Serif JP", serif;
	font-size: 0.8125rem;
	font-weight: 600;
	height: auto;
	height: initial;
	padding: 0.9375rem 0;
	text-align: center;
	text-transform: uppercase;
	width: 100%;
}

.header__nav-item.header__nav-item--entry a {
	background-color: #2a6541;
}

.header__hamburger {
	display: none;
}

.header__drawer {
	display: none;
}

.header__drawer::before,
.header__drawer::after {
	background: url(../images/common/circle-green.png) no-repeat center center/cover;
	content: "";
	height: 25rem;
	position: absolute;
	width: 25rem;
}

.header__drawer::before {
	left: 50%;
	top: -12.5rem;
}

.header__drawer::after {
	bottom: -12.5rem;
	right: 50%;
}

.header__drawer-nav {
	margin: 0 auto;
	max-width: 37.5rem;
	padding: 0 2.1875rem;
	width: 100%;
}

.header__drawer__address {
	color: #fff;
	font-family: "Noto Serif JP", serif;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	line-height: 1.4;
	margin-left: 2.1875rem;
	margin-top: 7.125rem;
	position: relative;
	z-index: 1;
}

.header__drawer__tel {
	margin-left: 2.1875rem;
	position: relative;
	z-index: 1;
}

.header__drawer__tel-number {
	align-items: baseline;
	display: flex;
	gap: 0.25rem;
	margin-top: 1.25rem;
}

.header__drawer__tel-number img {
	height: 1.125rem;
	width: 1.125rem;
}

.header__drawer__tel-number a {
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.75rem;
	font-weight: 400;
}

.header__drawer__tel-time {
	color: #fff;
	font-size: 0.75rem;
	font-weight: 400;
}

.medicine-annotation-wrap {
	position: relative;
}

.medicine-annotation-wrap__inner {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	padding: 4.375rem 0 5.9375rem;
}

.medicine-annotation {
	color: #333;
	font-family: "Shippori Mincho", serif;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 2.25;
}

.medicine-annotation span {
	color: #2a6541;
}

.page-medicine {
	display: flex;
	flex-direction: column;
	gap: 6.25rem;
}

.page-common-mv {
	position: relative;
}

.page-common-mv::before {
	background-color: rgba(42, 101, 65, 0.2);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.page-common-mv-title {
	color: #fff;
	font-family: "Shippori Mincho", serif;
	font-size: 1.75rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}

.page-common-mv-text {
	color: #fff;
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 2;
	margin-top: 2.1875rem;
}

.page-common-mv__inner {
	color: #fff;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.page-medicine__content {
	margin-top: 5rem;
}

.page-medicine__cards {
	grid-gap: 1.25rem;
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 3.75rem;
}

.page-medicine__card {
	border: 1px solid #f0f0f0;
	border-radius: 1.25rem;
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
}

.page-medicine__card-img img {
	-o-object-fit: cover;
	aspect-ratio: 387/218;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.page-medicine__card-body {
	color: #333;
	padding: 1.375rem 1.25rem 1.25rem;
}

.page-medicine__card-title {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.6875;
}

.page-medicine__card-text {
	border-top: 1px solid #f0f0f0;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.5076923077;
	margin-top: 0.625rem;
	padding-top: 0.625rem;
}

.page-medicine__list {
	background-color: #fefcf9;
	border: 1px solid #f0f0f0;
	display: flex;
	gap: 5.625rem;
	margin-top: 3.75rem;
	padding: 3.625rem 3.75rem 3.75rem;
}

.page-medicine__list-item {
	display: flex;
	flex-direction: column;
	max-width: 18.75rem;
	width: 100%;
}

.page-medicine__list-title {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 2.125rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-align: center;
}

.page-medicine__list-sub {
	border-bottom: 1px solid #2a6541;
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	margin-top: 0.125rem;
	padding-bottom: 0.9375rem;
	text-align: center;
}

.page-medicine__list-img-wrap-inner {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.page-medicine__list-img-wrap {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin: 1.125rem auto 0;
	padding-bottom: 0.9375rem;
	width: -moz-fit-content;
	width: fit-content;
}

.page-medicine__list-img-wrap.page-medicine__list-img-wrap--wide {
	margin: 2.25rem auto 0;
}

.page-medicine__list-img-wrap--wide {
	position: relative;
}

.page-medicine__list-img-wrap--wide::before,
.page-medicine__list-img-wrap--wide::after {
	background: url(../images/medicine/arrow-green-pc.svg) no-repeat center center/cover;
	content: "";
	height: 0.5625rem;
	position: absolute;
	top: 60%;
	transform: translateY(-50%);
	width: 4.25rem;
}

.page-medicine__list-img-wrap--wide::before {
	left: -4.5625rem;
}

.page-medicine__list-img-wrap--wide::after {
	right: -4.5625rem;
	transform: translateY(-50%) rotate(180deg);
}

.page-medicine__list-img-item {
	align-items: center;
	display: flex;
	gap: 1.25rem;
}

.page-medicine__list-img-item img {
	max-width: 6.25rem;
}

.page-medicine__list-img-item-wide img {
	max-width: 18.75rem;
}

.page-medicine__list-img-text {
	color: #333;
	font-family: "Shippori Mincho", serif;
	font-size: 0.9375rem;
	font-weight: 400;
	letter-spacing: 0.05em;
}

.page-medicine__list-btn {
	background-color: #fff;
	border: 1px solid #2a6541;
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.125rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	margin-top: auto;
	max-width: 18.75rem;
	padding: 1.25rem 0;
	text-align: center;
	width: 100%;
}

.page-medicine__list-caption {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.5rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	text-align: center;
}

.page-medicine__img {
	margin-top: 3.75rem;
	max-width: 75rem;
	width: 100%;
}

.page-medicine__img img {
	-o-object-fit: cover;
	aspect-ratio: 1200/300;
	border-radius: 1.25rem;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.page-medicine__flex {
	align-items: center;
	background-color: #fefcf9;
	border: 1px solid #f0f0f0;
	display: flex;
	gap: 7.1875rem;
	margin-top: 2.5rem;
	padding: 3.125rem 3.75rem;
}

.page-medicine__flex-img {
	max-width: 26.5625rem;
	width: 100%;
}

.page-medicine__flex-img img {
	-o-object-fit: cover;
	aspect-ratio: 425/243;
	border-radius: 1.25rem;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.page-medicine__flex-text {
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
}

.page-mv {
	overflow-x: clip;
	position: relative;
}

.page-mv--no-image {
	background-color: #fff;
	min-height: 21.875rem;
}

.page-mv-circle::after {
	background: url(../images/top/circle-green.png) no-repeat center center/cover;
	bottom: -17.875rem;
	content: "";
	height: 35.75rem;
	position: absolute;
	right: -17.875rem;
	width: 35.75rem;
	z-index: -1;
}

.page-mv::before {
	background-color: rgba(42, 101, 65, 0.4);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.page-mv.page-mv--no-image::before {
	background-color: rgba(42, 101, 65, 0.1);
}

.page-mv__img img {
	-o-object-fit: cover;
	aspect-ratio: 1440/350;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.page-mv__inner {
	bottom: 1.75rem;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 100%;
}

.page-mv__title-hidden {
	color: rgba(0, 0, 0, 0);
	font-size: 10px;
	position: absolute;
	z-index: -10;
}

.page-mv__title {
	color: #fff;
	font-family: "GFS Didot", serif;
	font-size: 1.125rem;
	font-weight: 400;
	letter-spacing: 0.1em;
}

.page-mv__title--green {
	color: #2a6541;
	font-size: 1.125rem;
	font-weight: 400;
	letter-spacing: 0.1em;
}

.page-mv__subtitle {
	color: #fff;
	font-family: "Shippori Mincho", serif;
	font-size: 2.125rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	margin-top: 0;
}

.page-mv__subtitle--green {
	color: #2a6541;
	font-size: 2.125rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	margin-top: 0.5625rem;
}

.breadcrumb__list {
	display: flex;
	flex-wrap: wrap;
	font-size: 0.75rem;
	font-weight: 400;
	gap: 0.625rem;
	padding: 0.5rem 0;
}

.breadcrumb__list span {
	-webkit-text-decoration: underline;
	text-decoration: underline;
}

.breadcrumb__list span[property=name] {
	display: inline-block;
	max-width: 12.5rem;
	overflow: hidden;
	padding: 0;
	text-overflow: ellipsis;
	vertical-align: middle;
	white-space: nowrap;
}

/* news-archive */

.news-archive {
	padding-top: 5rem;
}

.news-archive__inner {
	align-items: flex-start;
	display: flex;
	justify-content: space-between;
}

.news-archive__sidebar {
	max-width: 7.5rem;
	width: 100%;
}

.news-archive__heading {
	color: #2a6541;
	font-family: "GFS Didot", serif;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.news-archive__heading--archive {
	margin-top: 6.0625rem;
}

.news-archive__category-list {
	display: flex;
	flex-direction: column;
	gap: 1.625rem;
	margin-top: 1.5rem;
}

.news-archive__category-link {
	color: #2a6541;
	display: block;
	font-size: 0.8125rem;
	font-weight: 400;
	text-align: center;
}

.news-archive__category-link.is-current {
	align-items: center;
	background-color: #2a6541;
	border-radius: 0.625rem;
	color: #fff;
	display: inline-flex;
	justify-content: center;
	min-width: 7.5rem;
	padding: 0.375rem 0;
}

.news-archive__archive {
	margin-top: 1.5rem;
}

.news-archive__archive-summary {
	border-bottom: 1px solid rgba(42, 101, 65, 0.3);
	color: #2a6541;
	cursor: pointer;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 0.8125rem;
	font-weight: 400;
	padding-bottom: 0.25rem;
	position: relative;
}

.news-archive__archive-summary::after {
	background: url(../images/common/triangle-green.svg) no-repeat center center/cover;
	content: "";
	height: 0.343125rem;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: transform 0.3s ease;
	width: 0.523125rem;
}

.news-archive__archive.is-open .news-archive__archive-summary::after {
	top: 0.625rem;
	transform: rotate(-180deg);
}

.news-archive__archive-list {
	border: 1px solid rgba(42, 101, 65, 0.3);
	margin-top: 1rem;
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	pointer-events: none;
	transform: translateY(-0.5rem);
	transition: opacity 0.3s ease, transform 0.3s ease, max-height 0.3s ease;
}

.news-archive__archive.is-open .news-archive__archive-list {
	max-height: 50rem;
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

.news-archive__archive-item a {
	color: #2a6541;
	display: block;
	font-size: 0.8125rem;
	font-weight: 400;
	padding: 1rem 0;
	position: relative;
	text-align: center;
}

.news-archive__archive-item:not(:first-child) a::before {
	background-color: rgba(42, 101, 65, 0.3);
	content: "";
	height: 0.0625rem;
	left: 50%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: 80%;
}

.news-archive__content {
	max-width: 56.25rem;
	width: 100%;
}

.news-archive__list {
	border-top: 1px solid rgba(42, 101, 65, 0.3);
}

.news-archive__item {
	border-bottom: 1px solid rgba(42, 101, 65, 0.3);
}

.news-archive__link {
	align-items: center;
	display: flex;
	gap: 2.5rem;
	padding: 2.0625rem 2.25rem 2.0625rem 0.4375rem;
	position: relative;
}

.news-archive__link:hover::after {
	right: -0.3125rem;
}

.news-archive__link::after {
	background: url(../images/common/arrow-green.svg) no-repeat center center/contain;
	content: "";
	height: 0.868125rem;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: right 0.3s ease;
	width: 0.9375rem;
}

.news-archive__meta {
	align-items: center;
	display: flex;
	flex-shrink: 0;
	gap: 2.5rem;
	width: 16.25rem;
}

.news-archive__date {
	color: #2a6541;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 0.8125rem;
	font-weight: 400;
}

.news-archive__tag {
	align-items: center;
	background-color: #fff;
	border: 1px solid #2a6541;
	border-radius: 0.625rem;
	color: #2a6541;
	display: inline-flex;
	font-size: 0.8125rem;
	font-weight: 400;
	justify-content: center;
	min-width: 7.5rem;
	padding: 0.4375rem 0;
}

.news-archive__text {
	color: #2a6541;
	flex: 1 1 0%;
	font-family: "Shippori Mincho", serif;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.no-article {
	color: #2a6541;
	font-size: 1rem;
	font-weight: 400;
	width: 100%;
}

.lower-news {
	margin-top: 5rem;
	padding-bottom: 8.375rem;
}

.lower-news__list {
	margin: 0 auto;
	max-width: 57.5625rem;
	width: 100%;
}

.lower-news__list .news__item a {
	border-bottom: 1px solid rgba(0, 0, 0, 0.2);
	display: block;
	padding-bottom: 3.75rem;
	padding-right: 7.25rem;
	position: relative;
	width: 100%;
}

.lower-news__list .news__item a:hover::after {
	right: -0.3125rem;
}

.lower-news__list .news__text {
	font-size: 1.125rem;
	font-weight: 400;
	letter-spacing: -0.01em;
	line-height: 2;
	margin-top: 1.25rem;
}

.new-detail {
	padding-top: 5rem;
}

.new-detail__inner {
	margin: 0 auto;
	max-width: 58.75rem;
	padding: 0 1.25rem;
	width: 100%;
}

.news-detail__meta {
	align-items: baseline;
	display: flex;
	gap: 1rem;
}

.news-detail__date {
	color: rgba(42, 101, 65, 0.5);
	font-size: 0.8125rem;
	font-weight: 400;
}

.news-detail__category {
	align-items: center;
	border: 1px solid #2a6541;
	border-radius: 0.625rem;
	color: #2a6541;
	display: inline-flex;
	font-size: 0.8125rem;
	font-weight: 400;
	justify-content: center;
	min-width: 7.5rem;
	padding: 0.375rem;
}

.news-detail__title {
	border-bottom: 1px solid rgba(42, 101, 65, 0.3);
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 1.9375rem;
	padding-bottom: 2.5rem;
}

.news-detail__content p {
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
	margin-top: 2.5rem;
}

.news-detail__content img {
	-o-object-fit: cover;
	aspect-ratio: 440/280;
	margin-top: 2.5rem;
	max-width: 27.5rem;
	object-fit: cover;
	width: 100%;
}

.news-detail__back {
	margin-top: 2.5rem;
	max-width: 10rem;
	width: 100%;
}

.news-detail__back-link {
	background-color: #2a6541;
	border-radius: 56.25rem;
	color: #fff;
	display: block;
	font-size: 0.8125rem;
	font-weight: 400;
	padding: 0.875rem 0 0.875rem 1.625rem;
	position: relative;
	text-align: center;
}

.news-detail__back-link::before {
	background: url(../images/common/arrow-white.svg) no-repeat center center/cover;
	content: "";
	height: 0.4375rem;
	left: 2.0625rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotate(180deg);
	width: 0.494375rem;
}

.not-found {
	margin-top: 8.125rem;
	padding-bottom: 5rem;
}

.not-found__content {
	background-color: #2a6541;
	border-radius: 0.75rem;
	padding: 1.875rem;
}

.not-found__title {
	color: #fff;
	font-family: "Shippori Mincho", serif;
	font-size: 4.5rem;
	text-align: center;
	text-transform: uppercase;
}

.not-found__subtitle {
	color: #fff;
	font-size: 1.125rem;
	font-weight: 500;
	text-align: center;
}

.not-found__text {
	color: #fff;
	font-size: 0.875rem;
	margin-top: 1.25rem;
	text-align: center;
}

.not-found__btn {
	margin: 4.6875rem auto 0;
	max-width: 18.75rem;
	width: 100%;
}

.lower-news__pagination {
	align-items: center;
	display: flex;
	gap: 0.9375rem;
	justify-content: center;
	margin-top: 5rem;
}

.lower-news__pagination .page-numbers {
	align-items: center;
	background-color: #fff;
	border: 1px solid #2a6541;
	border-radius: 50%;
	color: #2a6541;
	display: flex;
	font-weight: bold;
	gap: 1.25rem;
	height: 3.5rem;
	justify-content: center;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 3.5rem;
}

.lower-news__pagination .page-numbers:hover {
	background-color: #2a6541;
	color: #fff;
	opacity: 1;
}

.lower-news__pagination .page-numbers:hover.prev.page-numbers::after {
	background: url(../images/common/arrow-white.svg) no-repeat center center/contain;
}

.lower-news__pagination .page-numbers:hover.next.page-numbers::after {
	background: url(../images/common/arrow-white.svg) no-repeat center center/contain;
}

.lower-news__pagination .current {
	background-color: #2a6541;
	color: #fff;
}

.lower-news__pagination .prev.page-numbers,
.lower-news__pagination .next.page-numbers {
	align-items: center;
	display: flex;
	height: 3.5rem;
	justify-content: center;
	opacity: 1;
	pointer-events: auto;
	position: relative;
	transition: all 0.3s ease;
	width: 3.5rem;
}

.lower-news__pagination .prev.page-numbers.disabled,
.lower-news__pagination .next.page-numbers.disabled {
	opacity: 0.5;
	pointer-events: none;
}

.lower-news__pagination .prev.page-numbers::after,
.lower-news__pagination .next.page-numbers::after {
	content: "";
	height: 0.75rem;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: background 0.3s ease-in;
	width: 0.75rem;
}

.lower-news__pagination .next.page-numbers::after {
	background: url(../images/common/arrow-green.svg) no-repeat center center/contain;
	left: 50%;
}

.lower-news__pagination .prev.page-numbers::after {
	background: url(../images/common/arrow-green.svg) no-repeat center center/contain;
	left: 52%;
	transform: translate(-50%, -50%) rotate(180deg);
}

.privacy-policy {
	padding-top: 2.5rem;
}

.privacy-policy__inner {
	margin: 0 auto;
	max-width: 58.75rem;
	padding: 0 1.25rem;
	width: 100%;
}

.privacy-policy__text {
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
}

.privacy-policy__body {
	margin-top: 3rem;
}

.privacy-policy__item {
	border-top: 1px solid rgba(42, 101, 65, 0.3);
	margin-top: 3rem;
	padding-top: 3rem;
}

.privacy-policy__heading {
	font-size: 1.75rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1;
}

.privacy-policy__heading + .privacy-policy__text {
	margin-top: 1.5rem;
}

.privacy-policy__list {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-top: 1rem;
}

.privacy-policy__list-item {
	align-items: flex-start;
	display: flex;
}

.privacy-policy__list-item {
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
	margin-left: 1.875rem;
	position: relative;
}

.privacy-policy__list-item::before {
	background-color: #2a6541;
	border-radius: 50%;
	content: "";
	height: 0.375rem;
	left: -0.75rem;
	position: absolute;
	top: 0.75rem;
	width: 0.375rem;
}

.privacy-policy__note {
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
	margin-top: 1rem;
}

.privacy-policy__address {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-top: 1rem;
}

.privacy-policy__address-text {
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
}

.recruit {
	margin-top: 5.5625rem;
}

.recruit__title {
	font-family: "Shippori Mincho", serif;
	font-size: 2.125rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}

h1 {
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
}

.mv {
	height: 100dvh;
	min-height: 37.5rem;
	overflow-x: clip;
	position: relative;
}

.mv::before {
	background: linear-gradient(to bottom, transparent 0%, rgba(42, 101, 65, 0.6) 100%);
	bottom: 0;
	content: "";
	height: 17.125rem;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: 2;
}

.mv::after {
	background: linear-gradient(to top, transparent 0%, rgba(42, 101, 65, 0.6) 100%);
	content: "";
	height: 6.6875rem;
	left: 0;
	margin-left: calc(50% - 50vw);
	position: absolute;
	top: -1.25rem;
	width: 100vw;
	z-index: 0;
}

.mv__inner {
	height: inherit;
	margin: 0 auto;
	max-width: 90rem;
	padding: 0 1.25rem;
	position: relative;
	width: 100%;
}

.mv video {
	-o-object-fit: cover;
	display: block;
	height: 100%;
	object-fit: cover;
	position: absolute;
	width: 100%;
}

.mv__title {
	color: #fff;
	font-family: "GFS Didot", serif;
	font-size: 3.75rem;
	font-weight: 400;
	left: 50%;
	letter-spacing: 0.2em;
	position: absolute;
	text-align: center;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 10;
}

.mv__title-wrap {
	bottom: 0.875rem;
	left: 50%;
	max-width: 77.5rem;
	padding: 0 1.25rem;
	position: absolute;
	transform: translateX(-50%);
	width: 100%;
	z-index: 2;
}

.mv__title-ja {
	color: #fff;
	font-family: "Shippori Mincho", serif;
	font-size: 3.125rem;
	font-weight: 500;
	letter-spacing: 0.2em;
}

.mv__title-ja.is-english {
	letter-spacing: 0.01em;
}

.mv__title-en {
	color: #fff;
	font-family: "GFS Didot", serif;
	font-size: 1.6875rem;
	font-weight: 400;
	letter-spacing: 0.08em;
}

.mv__news {
	bottom: 1.25rem;
	max-width: 20.625rem;
	position: absolute;
	right: 1.25rem;
	z-index: 10;
}

.mv__news a {
	background-color: #2a6541;
	border-radius: 0.625rem;
	color: #fff;
	display: block;
	padding: 1.25rem 3.6875rem 1.8125rem 1.25rem;
	position: relative;
}

.mv__news a:hover {
	opacity: 1;
}

.mv__news a:hover::before {
	right: 0.75rem;
}

.mv__news a::before {
	background: url(../images/common/arrow-white-l.svg) no-repeat center center/cover;
	content: "";
	height: 0.868125rem;
	position: absolute;
	right: 1.375rem;
	top: 50%;
	transform: translateY(-50%);
	transition: right 0.3s ease;
	width: 0.98rem;
}

.mv__news-meta {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.mv__news-date {
	font-family: "Noto Serif JP", serif;
	font-size: 1.25rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	padding-right: 1.3125rem;
	position: relative;
}

.mv__news-date::before {
	background-color: #fff;
	content: "";
	height: 100%;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 0.03125rem;
}

.mv__news-date span {
	font-size: 0.8125rem;
}

.mv__news-category {
	-webkit-text-decoration: underline;
	font-family: "Noto Serif JP", serif;
	font-size: 0.75rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	text-decoration: underline;
}

.mv__news-title {
	-webkit-text-decoration: underline;
	font-family: "Noto Serif JP", serif;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	line-height: 1.6153846154;
	margin-top: 0.5rem;
	text-decoration: underline;
}

.layout-about {
	background-color: #2a6541;
	overflow-x: clip;
	padding: 14.6875rem 0 10.25rem;
	position: relative;
	z-index: 1;
}

.about__bg {
	background-color: #2a6541;
	height: 100%;
	left: 0;
	overflow: hidden;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 0;
}

.about__bg video {
	-o-object-fit: cover;
	display: block;
	height: auto;
	mix-blend-mode: multiply;
	object-fit: cover;
	width: 149vw;
}

.about__inner {
	align-items: flex-start;
	display: flex;
	gap: 5rem;
	justify-content: space-between;
	position: relative;
	z-index: 1;
}

.about__content {
	width: 121%;
}

.about__lead {
	margin-top: 2.625rem;
}

.about__text {
	display: flex;
	flex-direction: column;
	gap: 0.3125rem;
	margin-top: 0.9375rem;
}

.about__btn {
	margin-top: 2.5rem;
}

.about__academic {
	margin-top: 3.75rem;
}

.about__academic a {
	-webkit-text-decoration: underline;
	color: #fff;
	display: block;
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	padding-left: 1.375rem;
	padding-right: 1.1875rem;
	position: relative;
	text-decoration: underline;
	width: -moz-fit-content;
	width: fit-content;
}

.about__academic a::before {
	background: url(../images/common/report.svg) no-repeat center center/cover;
	content: "";
	height: 0.9175rem;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 0.9175rem;
}

.about__academic a::after {
	background: url(../images/common/arrow-white.svg) no-repeat center center/cover;
	content: "";
	height: 0.438125rem;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 0.494375rem;
}

.about__slider {
	margin-right: calc(50% - 50vw) !important;
	padding-bottom: 2.8125rem !important;
}

.about__slider {
	margin-top: 4.4375rem;
	width: 100vw;
}

.about__slider-item img {
	-o-object-fit: cover;
	aspect-ratio: 253/337;
	border-radius: 0.625rem;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.about__pagination {
	width: inherit !important;
}

.about__pagination {
	display: flex;
	gap: 0.625rem;
}

.about__slider .swiper-pagination-bullet {
	background-color: rgb(255, 255, 255);
	border-radius: 0;
	cursor: pointer;
	height: 0.1875rem;
	opacity: 1;
	transition: all 0.3s ease;
	width: 4.375rem;
}

.about__slider .swiper-pagination-bullet-active {
	background-color: #88be71;
}

.about__slider.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0;
}

.layout-medicine {
	overflow-x: clip;
	padding: 12.875rem 0 13.1875rem;
	position: relative;
}

.layout-medicine::before {
	background: url(../images/top/circle-green.png) no-repeat center center/cover;
	content: "";
	height: 50rem;
	left: calc(50% + 20.125rem);
	position: absolute;
	top: -35%;
	width: 50rem;
}

.layout-medicine::after {
	background: url(../images/top/bg-green.svg) no-repeat center center/cover;
	content: "";
	height: 8%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.medicine__inner {
	display: flex;
	gap: 3.6875rem;
	justify-content: space-between;
}

.medicine__video {
	width: 55.5%;
}

.medicine__video video {
	-o-object-fit: cover;
	aspect-ratio: 600/463;
	border-radius: 1.25rem;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.medicine__content {
	width: 50%;
}

.medicine__lead {
	margin-top: 2.625rem;
}

.medicine__text {
	margin-top: 1rem;
}

.medicine__btn {
	margin-top: 2.5625rem;
}

.facility__header {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.facility__list-wrap {
	margin: 2.625rem auto 0;
	padding: 5rem 1.25rem;
	position: relative;
	width: 100%;
}

.facility__list-wrap::before {
	background: url(../images/top/clinic-bg00.jpg) no-repeat center center/cover;
	border-radius: 2.5rem;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	transition: opacity 0.3s ease, transform 0.3s ease;
	width: 100%;
	z-index: 0;
}

.facility__list-wrap::after {
	background: url(../images/top/clinic-bg01.jpg) no-repeat center center/cover;
	border-radius: 2.5rem;
	content: "";
	height: 100%;
	left: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	top: 0;
	transition: opacity 0.3s ease;
	width: 100%;
	z-index: 0;
}

.facility__list-wrap__bg02,
.facility__list-wrap__bg03 {
	border-radius: 2.5rem;
	content: "";
	height: 100%;
	left: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	top: 0;
	transition: opacity 0.3s ease;
	width: 100%;
	z-index: 0;
}

.facility__list-wrap__bg02 {
	background: url(../images/top/clinic-bg02.jpg) no-repeat center center/cover;
}

.facility__list-wrap__bg03 {
	background: url(../images/top/clinic-bg03.jpg) no-repeat center center/cover;
}

.facility__list {
	grid-gap: 0.3125rem;
	display: grid;
	gap: 0.3125rem;
	grid-template-columns: repeat(3, 1fr);
	margin: 0 auto;
	max-width: 64.375rem;
	position: relative;
	width: 100%;
	z-index: 1;
}

.facility__item::before {
	border-radius: 0.625rem;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	transition: opacity 0.3s ease, background 0.3s ease;
	width: 100%;
	z-index: -1;
}

.facility__item:nth-child(1)::before {
	background: url(../images/top/clinic-bg-sp01.jpg) no-repeat center center/cover;
	opacity: 0;
}

.facility__item:nth-child(2)::before {
	background: url(../images/top/clinic-bg-sp02.jpg) no-repeat center center/cover;
	opacity: 0;
}

.facility__item:nth-child(3)::before {
	background: url(../images/top/clinic-bg-sp03.jpg) no-repeat center center/cover;
	opacity: 0;
}

.facility__item a {
	background-color: #fff;
	border-radius: 0.625rem;
	display: block;
	padding: 2.5rem 1.25rem;
	transition: background-color 0.3s ease, opacity 0.3s ease;
}

.facility__item a:hover {
	background-color: #2a6541;
	opacity: 1;
}

.facility__item a:hover .facility__number {
	color: #fff;
}

.facility__item a:hover .facility__heading {
	color: #fff;
}

.facility__item a:hover .facility__category {
	color: #fff;
}

.facility__item a:hover .facility__detail-text {
	color: #fff;
}

.facility__item a:hover .facility__detail-btn {
	color: #fff;
}

.facility__item a:hover .facility__detail-btn::after {
	background: url(../images/common/arrow-white.svg) no-repeat center center/cover;
}

.facility__list-wrap:has(.facility__item:nth-child(1) a:hover)::after {
	opacity: 1;
}

.facility__list-wrap:has(.facility__item:nth-child(2) a:hover) .facility__list-wrap__bg02 {
	opacity: 1;
}

.facility__list-wrap:has(.facility__item:nth-child(3) a:hover) .facility__list-wrap__bg03 {
	opacity: 1;
}

.facility__number {
	color: #2a6541;
	font-size: 1.125rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	text-align: center;
	transition: color 0.3s ease;
}

.facility__heading {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.875rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-align: center;
	transition: color 0.3s ease;
}

.facility__img {
	margin: 2.8125rem auto 0;
	max-width: 14.375rem;
	width: 100%;
}

.facility__img img {
	-o-object-fit: cover;
	aspect-ratio: 230/200;
	border-radius: 0.625rem;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.facility__category {
	color: #2a6541;
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.2em;
	margin-top: 4.8125rem;
	text-align: center;
	transition: color 0.3s ease;
}

.facility__detail-text {
	color: #2a6541;
	font-size: 0.8125rem;
	font-weight: 400;
	line-height: 1.7307692308;
}

.facility__detail-btn {
	color: #2a6541;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	margin-top: auto;
	padding-right: 1rem;
	position: relative;
}

.facility__detail-btn::after {
	background: url(../images/common/arrow-green.svg) no-repeat center center/cover;
	content: "";
	height: 0.4375rem;
	position: absolute;
	right: 4.0625rem;
	top: 50%;
	transform: translateY(-50%);
	transition: background 0.3s ease;
	width: 0.494375rem;
}

.layout-news {
	margin-top: 12.5rem;
}

.news__inner {
	display: flex;
	justify-content: space-between;
}

.news__head {
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	justify-content: space-between;
	width: 10rem;
}

.news__list {
	margin-top: -2.5625rem;
	width: 74.75%;
}

.news__item-link {
	border-bottom: 0.03125rem solid #2a6541;
	display: flex;
	gap: 3.625rem;
	padding: 2.5625rem 1.25rem 2.5625rem 0;
	position: relative;
}

.news__item-link:hover::after {
	right: -0.625rem;
}

.news__item-link::after {
	background: url(../images/common/arrow-green-l.svg) no-repeat center center/cover;
	content: "";
	height: 0.868125rem;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: right 0.3s ease;
	width: 0.98rem;
}

.news__item-link .news__item-meta {
	align-items: center;
	display: flex;
	flex-shrink: 0;
	gap: 3.125rem;
	width: 10.625rem;
}

.news__item-date {
	color: #2a6541;
	font-size: 0.8125rem;
	font-weight: 400;
	opacity: 0.5;
}

.news__item-category {
	color: #2a6541;
	font-size: 0.8125rem;
	font-weight: 400;
}

.news__item-title {
	color: #2a6541;
	flex: 1;
	font-family: "Noto Serif JP", serif;
	font-size: 0.875rem;
	font-weight: 500;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.news__btn {
	margin-top: 2.5rem;
}

.layout-greeting {
	margin-top: 12.5rem;
}

.greeting__wrap {
	display: flex;
	gap: 3.75rem;
	justify-content: space-between;
	margin-top: 3.125rem;
}

.greeting__image {
	width: 55.5%;
}

.greeting__image img {
	-o-object-fit: cover;
	aspect-ratio: 600/463;
	border-radius: 1.25rem;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.greeting__content {
	width: 50%;
}

.greeting__position {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.5;
}

.greeting__name {
	align-items: baseline;
	display: flex;
	gap: 0.625rem;
	margin-top: 0.9375rem;
}

.greeting__name-ja {
	color: #2a6541;
	font-family: "Shippori Mincho", serif;
	font-size: 1.875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
}

.greeting__name-en {
	color: #2a6541;
	font-family: "Noto Serif JP", serif;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.06em;
}

.greeting__text {
	margin-top: 1.5625rem;
}

.greeting__btn {
	margin-top: 2.5rem;
}

.inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 1240px;
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

@media (max-width: 1200px) {

html {
	font-size: 1.3333333333vw;
}

}

@media (max-width: 768px) {

a[href^="tel:"] {
	pointer-events: auto;
}

}

@media screen and (max-width: 767px) {

.u-desktop {
	display: none;
}

.u-mobile {
	display: block;
}

html {
	font-size: 16px;
}

.page-about__top-img {
	margin: 2.375rem auto 0;
}

.about-feature {
	margin-top: 2.5rem;
}

.about-feature__list {
	gap: 2.5rem;
}

.about-feature__item {
	flex-direction: column;
	gap: 1.875rem;
}

.about-feature__image img {
	aspect-ratio: 323/184;
	border-radius: 0.625rem;
}

.page-history {
	margin-top: 2.5rem;
}

.page-history__item {
	padding: 1.25rem;
}

.page-history__body {
	flex-direction: column;
	gap: 0.9375rem;
}

.page-history__year {
	font-size: 0.8125rem;
	line-height: 1.5;
}

.page-history__text {
	font-size: 0.8125rem;
	line-height: 1.5;
}

.clinic-panels {
	gap: 3.75rem;
	margin-top: 2.5rem;
}

.clinic-panel__mv-img img {
	aspect-ratio: 390/300;
}

.clinic-panel__cards {
	margin-top: 2.5rem;
}

.clinic-panel__card-list {
	gap: 1.25rem;
	grid-template-columns: repeat(1, 1fr);
}

.clinic-panel__card--wide {
	margin-top: 0;
	max-width: 100%;
}

.clinic-panel__card-link {
	border-radius: 0.625rem;
}

.clinic-panel__card-footer {
	border-radius: 0 0 0.625rem 0.625rem;
}

.clinic-panel__layout {
	flex-direction: column;
	gap: 1.25rem;
}

.inner {
	max-width: 37.5rem;
}

.section-title {
	font-size: 0.8125rem;
}

.section-subtitle {
	font-size: 1.25rem;
}

.section-lead {
	font-size: 1.5rem;
}

.section-text {
	line-height: 1.5;
}

.page-section-title {
	font-size: 1.25rem;
	letter-spacing: 0.05em;
}

.page-section-text {
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
	line-height: 1.4;
}

.contact {
	padding-top: 1.875rem;
}

.contact__main-lead {
	font-size: 1.25rem;
	line-height: 1.5;
}

.contact__lead {
	font-size: 0.875rem;
	line-height: 2;
}

.contact__form {
	margin-top: 2rem;
}

.contact__row {
	align-items: flex-start;
	flex-direction: column;
	gap: 1rem;
	padding: 1.5rem 0;
}

.contact__row-head {
	justify-content: normal;
	max-width: 100%;
}

.contact__required {
	margin-left: 0.625rem;
}

.contact__row-body {
	max-width: 100%;
}

.contact__input {
	min-height: 3.25rem;
}

.layout-cta {
	margin-top: 6.25rem;
	padding-bottom: 6.25rem;
}

.layout-cta::before {
	background: url(../images/top/circle-green-sp.png) no-repeat center center/cover;
	bottom: -31%;
	height: 25rem;
	right: 50%;
	width: 25rem;
}

.cta__inner {
	flex-direction: column;
	gap: 0.5rem;
}

.cta__contact {
	border-radius: 0.625rem;
	padding: 1.875rem;
}

.cta__tel {
	margin: 0.125rem auto 0;
}

.cta__tel-icon img {
	height: 1.53375rem;
	width: 1.53375rem;
}

.cta__tel-number {
	font-size: 2.25rem;
}

.cta__time {
	font-size: 0.75rem;
	margin-top: 0;
}

.cta__btn {
	margin: 1.75rem auto 0;
	max-width: 13.875rem;
}

.cta__btn a {
	font-weight: 440;
	padding: 0.4375rem 0;
}

.cta__btn a::after {
	height: 0.51rem;
	left: 1.25rem;
	width: 0.6375rem;
}

.cta__list {
	line-height: 1.1;
	margin-top: 0;
}

.cta__list li a {
	font-size: 0.75rem;
	line-height: 1.6;
}

.cta__list li a::after {
	height: 0.465625rem;
	right: -1rem;
	width: 0.465625rem;
}

.cta__list li a.cta__link--tab::after {
	top: 78%;
}

.cta__list-top-margin {
	margin-top: 0.75rem;
}

.doctor-chairman {
	margin-top: -2.125rem;
	padding: 3.75rem 0;
}

.doctor-chairman__top {
	flex-direction: column;
	gap: 1.875rem;
}

.doctor-chairman__content {
	max-width: 100%;
}

.doctor-chairman__position {
	font-size: 1rem;
}

.doctor-chairman__name {
	font-size: 1.5rem;
	margin-top: 1rem;
}

.doctor-chairman__name-en {
	font-size: 0.8125rem;
}

.doctor-chairman__texts {
	margin-top: 2.5rem;
}

.doctor-chairman__image {
	border-radius: 0.625rem;
	margin: 0 auto;
}

.doctor-chairman__image img {
	aspect-ratio: 510/600;
}

.doctor-chairman__award {
	margin-top: 2.5rem;
}

.doctor-award {
	border-radius: 0.625rem;
	padding: 2.5rem 1.25rem;
}

.doctor-award__inner {
	flex-direction: column;
	gap: 1.25rem;
}

.doctor-cards {
	padding: 5rem 0;
}

.doctor-cards__list {
	gap: 1.875rem;
	grid-template-columns: repeat(1, 1fr);
	margin-top: 2.5rem;
}

.doctor-cards__item {
	max-width: 100%;
}

.doctor-modal__panel {
	border-radius: 0.625rem;
	gap: 1.25rem;
	max-height: calc(80vh - 2rem);
	max-height: calc(80dvh - 2rem);
	max-width: 100%;
	padding: 2.5rem 1.25rem;
	width: 90%;
}

.doctor-modal__nav {
	height: 2.5rem;
	width: 2.5rem;
}

.doctor-modal__nav--prev {
	left: 0;
}

.doctor-modal__nav--next {
	right: 0;
}

.doctor-modal__name {
	font-size: 1.5rem;
}

.doctor-modal__name-en {
	font-size: 0.8125rem;
}

.doctor-modal__grid {
	flex-direction: column;
	gap: 1.25rem;
}

.doctor-modal__image {
	max-width: 100%;
}

.doctor-modal__image img {
	border-radius: 0.625rem;
}

.doctor-modal__affiliation {
	font-size: 1.25rem;
}

.doctor-modal__text li {
	font-size: 0.8125rem;
}

.layout-footer {
	padding: 3.75rem 0 1.25rem;
}

.footer__inner {
	flex-direction: column;
	gap: 2rem;
}

.footer__address {
	font-size: 0.875rem;
	margin-top: 1rem;
}

.footer__tel {
	margin-top: 1.1875rem;
}

.footer__tel-number {
	font-size: 2.25rem;
}

.footer__tel-number img {
	height: 1.469375rem;
	width: 1.469375rem;
}

.footer__tel-time {
	font-size: 0.8125rem;
}

.footer__nav {
	gap: 0 4.6875rem;
	grid-template-columns: repeat(2, 1fr);
}

.footer__nav-list--top-margin {
	margin-top: 2.25rem;
}

.footer__nav-list--bottom-margin {
	margin-top: -2.25rem;
}

.footer__nav li a {
	font-weight: 500;
}

.footer__nav-translation.u-mobile {
	display: flex;
}

.inner.footer__copyright {
	margin: 3.125rem auto 0;
	padding-top: 1.25rem;
	width: 92%;
}

.header__drawer-wrap {
	position: absolute;
	right: 5.3125rem;
	top: 0.9375rem;
	width: 3.25rem;
}

.header__drawer-translation {
	position: relative;
}

.header__drawer-translation::before {
	background: url(../images/common/triangle-white.svg) no-repeat center center/cover;
	content: "";
	height: 0.343125rem;
	position: absolute;
	right: 0;
	top: 1.25rem;
	width: 0.523125rem;
}

.header__drawer-translation .gt_float_switcher .gt-selected .gt-current-lang {
	color: #fff !important;
}

.header__drawer-translation .gt_float_switcher .gt-selected .gt-current-lang {
	width: 3.25rem;
}

.header__drawer-translation .gt_float_switcher {
	font-size: 1.25rem !important;
}

.header {
	height: 2.5rem;
}

.header__inner {
	padding: 0 0.9375rem;
}

.header__logo {
	max-width: 11.25rem;
}

.header__nav {
	display: none;
}

.header__hamburger {
	background-color: #fff;
	border: none;
	border-radius: 0.625rem;
	box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
	cursor: pointer;
	display: block;
	height: inherit;
	margin: 0;
	outline: none;
	padding: 0;
	position: relative;
	transition: 0.3s;
	width: 3.125rem;
	z-index: 999;
}

.header__hamburger span {
	background-color: #2a6541;
	display: block;
	height: 1px;
	left: 50%;
	position: relative;
	transform: translateX(-50%);
	transition: 0.5s;
	width: 1.25rem;
}

.header__hamburger span:nth-of-type(1) {
	top: -0.25rem;
}

.header__hamburger span:nth-of-type(2) {
	top: 0;
}

.header__hamburger span:nth-of-type(3) {
	top: 0.25rem;
}

.header__hamburger.is-open span:nth-of-type(1) {
	top: 0;
	transform: translateX(-50%) rotate(45deg);
}

.header__hamburger.is-open span:nth-of-type(2) {
	opacity: 0;
}

.header__hamburger.is-open span:nth-of-type(3) {
	top: -0.125rem;
	transform: translateX(-50%) rotate(-45deg);
}

.header__drawer {
	background-color: #2a6541;
	display: block;
	height: 100dvh;
	overflow-x: clip;
	padding: 8.125rem 0 2.5rem;
	position: relative;
	position: absolute;
	right: -120%;
	scrollbar-width: none;
	top: -1.25rem;
	transition: 0.6s;
	width: 100%;
	z-index: 900;
}

.header__drawer.is-open {
	right: 0;
}

.header__drawer-item a {
	color: #fff;
	display: block;
	font-size: 1.25rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	padding: 0.3125rem 0;
	position: relative;
}

.medicine-annotation-wrap__inner {
	gap: 0;
	padding: 1.25rem 0 3.625rem;
}

.medicine-annotation {
	font-size: 0.9375rem;
	letter-spacing: 0.04em;
	line-height: 2;
}

.page-medicine {
	gap: 3.75rem;
}

.page-common-mv-title {
	font-size: 1.5rem;
}

.page-common-mv-text {
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
	line-height: 1.4;
	margin-top: 1.5rem;
}

.page-medicine__content {
	margin-top: 2.8125rem;
}

.page-medicine__cards {
	gap: 1.25rem 0.625rem;
	grid-template-columns: repeat(2, 1fr);
	margin-top: 1.875rem;
}

.page-medicine__card {
	border-radius: 0.625rem;
}

.page-medicine__card-img img {
	aspect-ratio: 175/99;
}

.page-medicine__card-body {
	padding: 0.625rem 0.5rem 1.25rem;
}

.page-medicine__card-title {
	font-size: 0.9375rem;
}

.page-medicine__card-text {
	letter-spacing: 0.04em;
	line-height: 1.4;
	margin-top: 0;
}

.page-medicine__list {
	grid-gap: 3.75rem 0;
	display: grid;
	gap: 3.75rem 0;
	grid-template-columns: 1fr 1fr;
	margin-top: 2.5rem;
	padding: 1.875rem 0.9375rem 4.1875rem;
}

.page-medicine__list-item {
	margin: 0 auto;
}

.page-medicine__list-item:nth-child(1) {
	grid-column: 1/2;
	grid-row: 2;
}

.page-medicine__list-item:nth-child(2) {
	grid-column: 1/-1;
	grid-row: 1;
}

.page-medicine__list-item:nth-child(3) {
	grid-column: 2/3;
	grid-row: 2;
}

.page-medicine__list-title {
	font-size: 1.5rem;
}

.page-medicine__list-sub {
	font-size: 0.875rem;
	letter-spacing: 0.04em;
	line-height: 1.2;
	margin-top: 0.125rem;
	padding-bottom: 0.75rem;
	position: relative;
}

.page-medicine__list-item:nth-child(1) .page-medicine__list-sub,
.page-medicine__list-item:nth-child(3) .page-medicine__list-sub {
	border-bottom: none;
}

.page-medicine__list-item:nth-child(1) .page-medicine__list-sub::after,
.page-medicine__list-item:nth-child(3) .page-medicine__list-sub::after {
	background-color: #2a6541;
	bottom: 0;
	content: "";
	height: 0.0625rem;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 8.75rem;
}

.page-medicine__list-img-wrap {
	gap: 1.25rem;
	margin: auto;
	padding: 1.25rem 0 1.875rem;
}

.page-medicine__list-item:nth-child(3) .page-medicine__list-img-wrap {
	padding: 2.8125rem 0 1.875rem;
}

.page-medicine__list-img-wrap.page-medicine__list-img-wrap--wide {
	margin: 1.25rem auto 0;
	padding: 0;
}

.page-medicine__list-img-wrap--wide::before,
.page-medicine__list-img-wrap--wide::after {
	background: url(../images/medicine/arrow-green-sp.svg) no-repeat center center/cover;
	height: 2.5rem;
	top: 170%;
	width: 0.5625rem;
}

.page-medicine__list-img-wrap--wide::before {
	left: 10%;
}

.page-medicine__list-img-wrap--wide::after {
	right: 10%;
	transform: translateY(-50%) rotate(0);
}

.page-medicine__list-img-item {
	flex-direction: column;
	gap: 0;
}

.page-medicine__list-img-item img {
	max-width: 4.375rem;
}

.page-medicine__list-img-item-wide img {
	max-width: 12.1875rem;
}

.page-medicine__list-img-text {
	font-size: 0.75rem;
	letter-spacing: 0.04em;
	line-height: 1.4;
	text-align: center;
}

.page-medicine__list-btn {
	font-size: 1rem;
	line-height: 1.25;
	margin-left: auto;
	margin-right: auto;
	max-width: 9.375rem;
	padding: 0.625rem 0;
}

.page-medicine__list-caption {
	font-size: 1.25rem;
}

.page-medicine__img {
	margin-top: 1.875rem;
}

.page-medicine__img img {
	aspect-ratio: 360/160;
	border-radius: 0.625rem;
}

.page-medicine__flex {
	flex-direction: column;
	gap: 1.875rem;
	margin-top: 1.875rem;
	padding: 2.5rem 1.25rem 3.125rem;
}

.page-medicine__flex-img {
	max-width: 100%;
}

.page-medicine__flex-img img {
	aspect-ratio: 323/184;
}

.page-medicine__flex-text {
	line-height: 1.5;
}

.page-mv--no-image {
	min-height: 18.75rem;
}

.page-mv-circle::after {
	bottom: -10.5625rem;
	height: 21.125rem;
	right: -10.5625rem;
	width: 21.125rem;
}

.page-mv__img img {
	aspect-ratio: 390/300;
}

.page-mv__inner {
	bottom: 3.4375rem;
}

.page-mv__title {
	font-size: 1rem;
	letter-spacing: 0.08em;
}

.page-mv__subtitle {
	font-size: 1.75rem;
}

.breadcrumb__list span {
	font-size: 0.625rem;
}

.news-archive {
	padding-top: 1.875rem;
}

.news-archive__inner {
	flex-direction: column;
	gap: 5rem;
}

.news-archive__heading--archive {
	margin-top: 3.125rem;
}

.news-archive__category-list {
	gap: 0.9375rem;
}

.news-archive__link {
	align-items: flex-start;
	flex-direction: column;
	gap: 1.25rem;
	padding: 1.25rem 1.25rem 1.25rem 0;
	width: 100%;
}

.news-archive__meta {
	flex-shrink: 1;
	flex-wrap: wrap;
	gap: 0.75rem;
	width: 100%;
}

.news-archive__tag {
	min-width: 6.25rem;
	padding: 0.3125rem 0;
}

.news-archive__text {
	width: 100%;
}

.no-article {
	font-size: 0.875rem;
	font-weight: 400;
}

.lower-news {
	margin-top: 3.75rem;
	padding-bottom: 3.75rem;
}

.lower-news__list .news__item a {
	padding-bottom: 1.25rem;
	padding-right: 3.125rem;
}

.lower-news__list .news__text {
	font-size: 0.875rem;
	line-height: 1.6;
	margin-top: 1rem;
}

.new-detail {
	padding-top: 1.875rem;
}

.new-detail__inner {
	max-width: 37.5rem;
}

.news-detail__meta {
	flex-direction: column-reverse;
}

.news-detail__title {
	margin-top: 1.25rem;
	padding-bottom: 1.25rem;
}

.news-detail__content p {
	font-size: 0.875rem;
	line-height: 1.6;
	margin-top: 1.25rem;
}

.news-detail__content img {
	margin-top: 1.25rem;
	max-width: none;
	max-width: initial;
}

.lower-news__pagination {
	gap: 0.625rem;
	margin-top: 1.875rem;
}

.lower-news__pagination .page-numbers {
	font-size: 0.875rem;
	height: 2.5rem;
	width: 2.5rem;
}

.lower-news__pagination .prev.page-numbers,
.lower-news__pagination .next.page-numbers {
	height: 2.5rem;
	width: 2.5rem;
}

.lower-news__pagination .next.page-numbers::after {
	left: 45%;
}

.lower-news__pagination .prev.page-numbers::after {
	left: 55%;
}

.privacy-policy__item {
	margin-top: 2rem;
	padding-top: 2rem;
}

.privacy-policy__heading {
	font-size: 1.5rem;
	line-height: 1.2;
}

.privacy-policy__heading + .privacy-policy__text {
	margin-top: 1rem;
}

.privacy-policy__list {
	gap: 0.625rem;
	margin-top: 0.75rem;
}

.privacy-policy__list-item {
	margin-left: 0.875rem;
}

.privacy-policy__address {
	gap: 0.625rem;
	margin-top: 0.75rem;
}

.recruit__title {
	font-size: 1.5rem;
}

.mv::before {
	height: 18.5625rem;
}

.mv__inner {
	padding: 0 0.9375rem;
}

.mv__title {
	bottom: 15.1875rem;
	font-size: 2.5rem;
	left: 0.9375rem;
	letter-spacing: 0.23em;
	text-align: left;
	top: auto;
	transform: none;
	transform: initial;
}

.mv__title-wrap {
	bottom: 10.875rem;
	padding: 0 0.9375rem;
}

.mv__title-ja {
	font-size: 1.8125rem;
	letter-spacing: 0.12em;
}

.mv__title-ja.is-english {
	font-size: 1.5rem;
	letter-spacing: 0.1em;
	line-height: 1.2;
}

.mv__title-en {
	font-size: 0.9375rem;
}

.mv__news {
	bottom: 1.875rem;
	left: 50%;
	max-width: 22.5rem;
	right: auto;
	transform: translateX(-50%);
	width: 100%;
}

.mv__news-date {
	padding-right: 2rem;
}

.mv__news-date::before {
	height: 70%;
}

.layout-about {
	padding: 6.3125rem 0 3.4375rem;
}

.about__bg video {
	left: -32%;
	position: absolute;
	width: 237vw;
}

.about__inner {
	flex-direction: column;
}

.about__content {
	width: 100%;
}

.about__text {
	gap: 0.9375rem;
	margin-top: 1.375rem;
}

.about__academic {
	margin-top: 2.5rem;
}

.about__academic a {
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
}

.about__slider {
	margin-top: 0;
}

.about__slider .swiper-pagination-bullet {
	width: 5.125rem;
}

.layout-medicine {
	padding: 9.375rem 0 6.25rem;
}

.layout-medicine::before {
	background: url(../images/top/circle-green-sp.png) no-repeat center center/cover;
	height: 25rem;
	left: 50%;
	top: -14.5%;
	width: 25rem;
}

.layout-medicine::after {
	background: url(../images/top/bg-green-sp.svg) no-repeat center center/cover;
}

.medicine__inner {
	flex-direction: column-reverse;
}

.medicine__video {
	margin-top: 2rem;
	width: 100%;
}

.medicine__video video {
	border-radius: 0.625rem;
}

.medicine__content {
	position: relative;
	width: 100%;
}

.medicine__lead {
	margin-top: 2.1875rem;
}

.medicine__text {
	margin-top: 1.5rem;
}

.facility__list-wrap {
	margin: 2.1875rem auto 0;
	padding: 0;
}

.facility__list-wrap::before {
	display: none;
}

.facility__list-wrap::after {
	display: none;
}

.facility__list-wrap__bg02,
.facility__list-wrap__bg03 {
	display: none;
}

.facility__list {
	gap: 0.625rem;
	grid-template-columns: 1fr;
}

.facility__item {
	padding: 4.375rem 2.5rem;
	position: relative;
}

.facility__item::after {
	content: "";
	height: 5.25rem;
	position: absolute;
	right: 0.4375rem;
	top: 4.375rem;
	width: 0.875rem;
}

.facility__item:nth-child(1)::after {
	background: url(../images/top/step01.png) no-repeat center center/cover;
}

.facility__item:nth-child(2)::after {
	background: url(../images/top/step02.png) no-repeat center center/cover;
}

.facility__item:nth-child(3)::after {
	background: url(../images/top/step03.png) no-repeat center center/cover;
}

.facility__item:nth-child(1)::before {
	opacity: 1;
}

.facility__item:nth-child(2)::before {
	opacity: 1;
}

.facility__item:nth-child(3)::before {
	opacity: 1;
}

.facility__item a {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 32.5625rem;
	padding: 3.125rem 1.5625rem;
}

.facility__heading {
	font-size: 1.5rem;
}

.facility__img {
	margin: 1.375rem auto 0;
}

.facility__img img {
	aspect-ratio: 230/120;
}

.facility__detail-wrap {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-top: 1.25rem;
}

.facility__btn {
	margin-top: 2.5rem;
}

.layout-news {
	margin-top: 6.25rem;
}

.news__inner {
	flex-direction: column;
}

.news__list {
	margin-top: 0;
	width: 100%;
}

.news__item-link {
	flex-direction: column;
	gap: 0.625rem;
	padding: 1.25rem 0.625rem 0.9375rem 0;
	width: 100%;
}

.news__item-link .news__item-meta {
	gap: 1.25rem;
}

.news__item-date {
	font-size: 0.75rem;
}

.news__item-category {
	font-size: 0.625rem;
	font-weight: 500;
}

.news__item-title {
	font-size: 0.8125rem;
}

.layout-greeting {
	margin-top: 6.25rem;
}

.greeting__wrap {
	flex-direction: column;
	gap: 2.5rem;
	margin-top: 2.5rem;
}

.greeting__image {
	width: 100%;
}

.greeting__image img {
	border-radius: 0.625rem;
}

.greeting__content {
	width: 100%;
}

.greeting__position {
	font-size: 1.5rem;
}

.greeting__name {
	margin-top: 0;
}

.greeting__name-ja {
	font-size: 1.5rem;
	gap: 1rem;
}

.greeting__name-en {
	letter-spacing: 0;
}

.inner {
	padding-left: 15px;
	padding-right: 15px;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}


/*# sourceMappingURL=style.css.map */
