body {
	color: #44403f;
	font-family: "Noto Sans JP", sans-serif;
}

.u-desktop {
	display: block;
}

.u-mobile {
	display: none;
}

/* 414px以下で改行（414未満を表示する想定に合わせ、414px以上は非表示） */

.br-414-less {
	display: none;
}

/* 500px以下で改行 */

.br-500-less {
	display: none;
}

/* 768px以下で改行 */

.br-768-less {
	display: none;
}

/* 768px以上で改行 */

.br-768-more {
	display: block;
}

/* 1000px以下で改行 */

.br-1000-less {
	display: none;
}

/* 1000px以上で改行 */

.br-1000-more {
	display: block;
}

/* 1480px以上で改行 */

.br-1480-more {
	display: block;
}

/* 1920px以上で改行 */

.br-1920-more {
	display: block;
}

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

html {
	font-size: 16px;
	scroll-padding-top: 4.375rem;
}

/* PC版Chromeで拡縮画像ぼやけ対策 */

/* iPhoneSafariで画像ジャギ対策 */

img {
	image-rendering: auto;
}

/* コンテンツ量が少なく短いページでもフッターを最下部に表示する ---- */

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

main {
	flex: 1;
}

/* WordPress管理バー対応（ログイン時のみ） */

.admin-bar .content-wrap {
	padding-top: 2rem;
}

/* WordPress管理バー表示時のアンカーリンク調整 */

.admin-bar html {
	scroll-padding-top: 7.5rem;
}

/* コンテンツ量が少なく短いページでもフッターを最下部に表示する ここまで ---- */

/* YouTubeのframeborder属性の変わり(HTML5の標準仕様で廃止されているため) */

iframe {
	border: none;
}

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

/* 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 */

html {
	scroll-behavior: smooth;
}

/* 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;
}

ol {
	list-style-type: 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;
	height: auto;
	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=checkbox],
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;
	text-decoration: none;
	transition: opacity 0.3s;
}

html.is-fixed {
	overflow: hidden;
}

.access__address {
	font-size: 1.125rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.75;
	margin-top: 2.5rem;
}

.access__tel-box {
	align-items: center;
	display: flex;
	gap: 0.875rem;
	margin-top: 1rem;
}

.access__tel {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	transition: opacity 0.3s;
}

.access__fax {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
}

.access__map {
	aspect-ratio: 1000/564;
	margin-top: 2rem;
	width: 100%;
}

.access__map iframe {
	border: none;
	height: 100%;
	width: 100%;
}

.access__print a {
	margin-left: auto;
	margin-right: auto;
	margin-top: 2.5rem;
}

.adoption-cards {
	background-color: #f5fbec;
	padding-bottom: 5.75rem;
	position: relative;
	z-index: 20;
}

.adoption-cards__inner {
	grid-row-gap: 1.25rem;
	grid-column-gap: 1rem;
	-moz-column-gap: 1rem;
	align-items: stretch;
	column-gap: 1rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	row-gap: 1.25rem;
}

/* ===============================================
   汎用カード
=============================================== */

.adoption-card {
	background-color: #fff;
	box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.1);
	overflow: hidden;
	transition: box-shadow 0.3s ease;
}

.adoption-card:hover {
	box-shadow: 0 0.375rem 0.75rem rgba(0, 0, 0, 0.15);
}

.adoption-card:nth-of-type(2),
.adoption-card:nth-of-type(3) {
	margin-top: -0.25rem;
}

.adoption-card__link {
	color: inherit;
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: space-between;
}

.adoption-card__body {
	padding-bottom: 1rem;
	padding-left: 2.8125rem;
	padding-right: 1.875rem;
	padding-top: 2.375rem;
}

.adoption-card__content {
	margin-top: 0.5625rem;
}

.section-title.adoption-card__title {
	margin-left: 0;
	margin-right: 0;
	position: relative;
	text-align: left;
	width: 100%;
}

.adoption-card__title > .section-title__ja {
	font-size: 1.5rem;
	letter-spacing: -0.01em;
	text-align: left;
}

.adoption-card__title > .section-title__en {
	font-size: 0.75rem;
}

.adoption-card__title > .section-title__ja::after {
	color: #036000;
	content: "\f054";
	font-family: "Font Awesome 6 Free";
	font-size: 1.25rem;
	font-weight: 900;
	position: absolute;
	right: 0;
	top: -19%;
	transform: translateY(50%);
}

.adoption-card__text {
	color: #44403f;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.75;
	margin-top: 1.875rem;
	padding-right: 1.5625rem;
}

.adoption-card__text--spaceWide {
	padding-right: 2.5rem;
}

.adoption-card__image {
	aspect-ratio: 542/230;
	margin-top: 1.875rem;
	overflow: hidden;
	width: 100%;
}

.adoption-card__image img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s ease;
	width: 100%;
}

.adoption-card:hover .adoption-card__image img {
	transform: scale(1.05);
}

/* ===============================================
   ワイドカード（社長メッセージ）
=============================================== */

.adoption-card--wide {
	align-items: flex-start;
	background-color: #fff;
	display: flex;
	flex-direction: row-reverse;
	grid-column: span 2;
	justify-content: space-between;
	margin-top: -8.375rem;
	padding: 3.3125rem 3.125rem 4.375rem 3.125rem;
	position: relative;
}

.adoption-card--wide .adoption-card__image {
	aspect-ratio: 446/389;
	flex-shrink: 0;
	margin-left: 2rem;
	margin-top: 0;
	width: 27.875rem;
}

.adoption-card--wide .adoption-card__image img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.adoption-card--wide .adoption-card__title {
	font-size: max(1rem, min(2.15vw, 1.625rem));
	font-weight: 700;
	line-height: 1.5769230769;
}

.adoption-card--wide .adoption-card__text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.97;
	margin-top: 0.875rem;
	padding-right: 0;
}

.adoption-card--wide .adoption-card__name {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.75;
	margin-top: 1.625rem;
}

.adoption-card--wide .adoption-card__name--strong {
	font-size: 1.25rem;
	line-height: 1.65;
}

.adoption-card--wide .adoption-card__btn {
	margin-top: 3.5625rem;
}

.adoption-entry {
	background-color: #f5fbec;
}

.adoption-entry__inner {
	display: flex;
	justify-content: center;
}

.adoption-entry__block {
	flex: 1;
}

.adoption-entry__block--left {
	align-items: center;
	background-color: #036000;
	display: flex;
	justify-content: center;
	position: relative;
}

.adoption-entry__link {
	align-items: center;
	align-items: center;
	color: #fff;
	display: flex;
	font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 4.375rem;
	font-weight: 900;
	justify-content: center;
	letter-spacing: 0.025em;
	line-height: 2.3142857143;
	margin-top: -0.3125rem;
	padding-bottom: 3.0625rem;
	padding-top: 2.75rem;
	position: relative;
	text-transform: uppercase;
	transition: opacity 0.3s ease;
	width: 100%;
}

.adoption-entry__link:hover {
	opacity: 0.8;
}

.adoption-entry__link i {
	bottom: 1.5625rem;
	color: #fff;
	font-size: 1.25rem;
	pointer-events: none;
	position: absolute;
	right: 2.1875rem;
}

/* 右側ブロック */

.adoption-entry__block--right {
	align-items: center;
	background-color: #f5fbec;
	display: flex;
	justify-content: center;
}

.adoption-entry__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.adoption-entry__text {
	color: #44403f;
	font-size: 1.0625rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.5;
}

.adoption-entry__tel {
	color: #036000;
	font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 3.125rem;
	font-weight: 900;
	line-height: 1.2;
	margin-top: 0.25rem;
}

.adoption-entry__tel,
.adoption-entry__mail {
	color: #036000;
	transition: color 0.3s ease;
}

.adoption-entry__tel:hover,
.adoption-entry__tel:focus-visible,
.adoption-entry__mail a:hover,
.adoption-entry__mail a:focus-visible {
	color: #012d00;
	outline: none;
}

.adoption-entry__mail a {
	align-items: center;
	color: #036000;
	display: flex;
	font-size: 1.375rem;
	font-weight: 700;
	gap: 1rem;
	transition: color 0.3s ease;
}

.adoption-entry__mail i {
	font-size: 1.75rem;
}

.adoption-fv {
	height: 49.398vw;
	margin-top: 4.25rem;
	max-height: 62.5rem;
	min-height: 41.1875rem;
	overflow: visible;
	position: relative;
	width: 100%;
}

.adoption-fv::after {
	background-image: url(../images/adoption/adoption-fv.webp?ver=1.0.0);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	bottom: 0;
	content: "";
	display: block;
	filter: brightness(0.8);
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: -1;
}

.inner .adoption-fv__inner {
	height: 100%;
	position: relative;
}

.adoption-fv__title {
	left: 49.7%;
	position: absolute;
	text-align: center;
	top: 42%;
	transform: translate(-50%, -50%);
	z-index: 80;
}

.logo-wrap {
	height: auto;
	width: 24.125rem;
}

.logo-wrap svg {
	-o-object-fit: contain;
	height: 100%;
	object-fit: contain;
	width: 100%;
}

.slogan {
	margin-left: auto;
	margin-right: auto;
	margin-top: -0.625rem;
	width: 18.9375rem;
}

.adoption-works {
	background-color: #fff;
	overflow-x: clip;
	padding-bottom: 7.75rem;
	padding-top: 4rem;
}

.section-title.adoption-works__section-title {
	margin-left: 0;
}

.adoption-works__section-title .section-title__ja,
.adoption-works__section-title .section-title__en {
	letter-spacing: 0.08em;
	text-align: left;
}

.adoption-works__section-title .section-title__en {
	margin-top: 0;
	text-transform: uppercase;
}

.adoption-works__items {
	margin-top: 2.5rem;
	position: relative;
}

.adoption-works__swiper {
	margin-right: calc(50% - 50vw);
	overflow: visible;
}

.works-button-prev.card-button-prev::after {
	font-size: 1.25rem;
}

.works-button-next.card-button-next::after {
	font-size: 1.25rem;
}

.adoption-works .card__title {
	line-height: 1.6;
	min-height: 3.2em;
}

.article__item {
	background-color: #fff;
	padding: 3.75rem 3.125rem;
}

.article__title-wrapper {
	border-bottom: 1px solid #a6a6a6;
	padding-bottom: 2.125rem;
}

.article__tag-flex {
	align-items: start;
	display: flex;
	gap: 0.875rem;
}

.article__date {
	color: #7c7a79;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.625;
}

.article__category {
	border: 1px solid #036000;
	color: #036000;
	font-size: 0.875rem;
	font-weight: 500;
	padding: 0.125rem 0.625rem;
}

.article__title {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 1.375rem;
}

.article__thumbnail {
	margin-left: auto;
	margin-right: auto;
	margin-top: 3.125rem;
}

.article__content {
	display: flex;
	flex-direction: column;
	font-size: 1rem;
	gap: 1.25rem;
	margin-top: 5.5rem;
}

.article__content a {
	-webkit-text-decoration: underline;
	color: #036000;
	text-decoration: underline;
	transition: color 0.3s;
}

.article__content a:hover {
	opacity: 0.7;
}

.article__content h2 {
	border-left: 5px solid #036000;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
	padding-left: 0.625rem;
}

.article__content .table-scroll {
	-webkit-overflow-scrolling: touch;
	overflow-x: auto;
	width: 100%;
}

.article__content table {
	min-width: 600px;
}

.article__content table {
	border-collapse: collapse;
	margin: 2rem auto;
}

.article__content th,
.article__content td {
	border: 1px solid #d3d3d3;
	padding: 0.75em 1em;
}

.article__content img {
	margin-left: auto;
	margin-right: auto;
	max-width: 28.125rem;
}

.page-bg {
	background-color: #f5fbec;
	margin-top: 2.8125rem;
	padding-bottom: 8.875rem;
	padding-top: 3.75rem;
}

.page-bg.page-bg--mt {
	margin-top: 0;
}

.page-bg.page-staff-bg {
	background-color: transparent;
	padding-bottom: 10.75rem;
}

.page-box {
	background-color: #fff;
	padding: 3.75rem 3.125rem;
}

.blog__list {
	grid-gap: 1.75rem 2.125rem;
	display: grid;
	gap: 1.75rem 2.125rem;
	grid-template-columns: repeat(3, 1fr);
}

.blog__item.card {
	min-width: 0;
	width: 100%;
}

.wp-block-table td,
.wp-block-table th {
	border: none;
	padding: 0;
}

.breadcrumb {
	color: #fff;
	font-size: 0.8125rem;
	line-height: 1.6923076923;
	padding-top: 1rem;
	text-align: right;
}

.breadcrumb a {
	-webkit-text-decoration: underline;
	text-decoration: underline;
	transition: -webkit-text-decoration 0.3s;
	transition: text-decoration 0.3s;
	transition: text-decoration 0.3s, -webkit-text-decoration 0.3s;
}

.breadcrumb a:hover {
	-webkit-text-decoration: none;
	text-decoration: none;
}

.btn a {
	background-color: #036000;
	border: 2px solid #036000;
	color: #fff;
	display: block;
	font-size: 1rem;
	font-weight: 700;
	padding: 1.125rem 1.25rem;
	position: relative;
	position: relative;
	text-align: center;
	transition: all 0.3s;
	width: 20.8125rem;
}

.btn a::after {
	color: #fff;
	content: "\f054";
	display: block;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	position: absolute;
	right: 1.4375rem;
	top: 50%;
	transform: translateY(-50%);
	transition: color 0.3s;
}

.btn a:hover {
	background-color: #fff;
	color: #036000;
}

.btn a:hover::after {
	color: #036000;
}

.company__box:not(:first-child) {
	margin-top: 5rem;
}

.company__list {
	grid-gap: 1.25rem;
	display: grid;
	gap: 1.25rem;
	margin-top: 2rem;
}

.company__item {
	border-bottom: 1px solid #7c7a79;
	display: flex;
	flex-wrap: wrap;
	gap: 1.25rem;
	padding-bottom: 1.25rem;
}

.company__term {
	font-size: 1.25rem;
	font-weight: 700;
	text-align: center;
	width: 30%;
}

.company__desc {
	flex: 1;
	font-size: 1.125rem;
	font-weight: 400;
}

.company__img-wrap {
	grid-gap: 1.25rem;
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(2, 1fr);
	margin-top: 1.5rem;
	text-align: center;
}

.company__img {
	align-items: start;
	display: flex;
	flex-direction: column;
	height: auto;
	margin: 0 auto;
	max-width: 15rem;
	width: 100%;
}

.company__img img {
	aspect-ratio: 240/338;
}

.company__img-desc {
	color: #7c7a79;
	flex: 1;
	font-size: 0.875rem;
}

.company__link {
	-webkit-text-decoration: underline;
	display: inline-block;
	display: block;
	font-size: 1.125rem;
	font-weight: 500;
	margin-top: 1.75rem;
	text-align: center;
	text-decoration: underline;
	transition: all 0.3s;
}

.company__link:hover {
	color: #036000;
}

.company__history {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-top: 2.5rem;
}

.company__history-item {
	align-items: flex-start;
	border-bottom: 1px solid #7c7a79;
	display: flex;
	gap: 1.25rem;
	padding: 0.75rem 0;
}

.company__history-year {
	color: #44403f;
	font-size: 1.25rem;
	font-weight: 700;
	width: 27%;
}

.company__history-desc {
	color: #44403f;
	flex: 1 1 auto;
	font-size: 1.125rem;
	word-break: break-word;
}

.company__performance {
	margin-top: 2.5rem;
	overflow-x: auto;
}

.company__performance-table {
	border-collapse: collapse;
	width: 100%;
}

.company__performance-table th {
	font-size: 1.125rem;
	font-weight: 700;
	text-align: left;
}

.company__performance-table thead th {
	font-size: 1.125rem;
	font-weight: 700;
}

.company__performance-table th,
.company__performance-table td {
	padding: 0.75rem 0.5rem;
	text-align: center;
}

.company__performance-table th,
.company__performance-table td {
	border-bottom: 1px solid #7c7a79;
	border-left: none;
	border-right: none;
	border-top: none;
}

.footer {
	margin-top: 4.625rem;
}

.footer__fb {
	cursor: pointer;
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 31.25rem;
}

.footer__nav {
	margin-top: 4.4375rem;
}

.footer-nav__items {
	display: grid;
	font-size: 1rem;
	font-weight: 500;
	grid-template-columns: repeat(6, 1fr);
}

.footer-nav__item a {
	position: relative;
	transition: color 0.3s;
}

.footer-nav__sub-items li a[target=_blank] {
	padding-right: 1.25rem;
	position: relative;
}

.footer-nav__sub-items li a[target=_blank]::before {
	aspect-ratio: 1;
	background-image: url(../images/top/arrow-link.svg?ver=1.0.0);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	height: auto;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 0.9375rem;
}

.footer-nav__item a:hover {
	color: #036000;
}

.footer-nav__sub-items {
	margin-top: 0.9375rem;
}

.footer-nav__sub-items li:not(:first-child) {
	margin-top: 0.5rem;
}

.footer-nav__sub-items li a {
	padding-left: 0.75rem;
	position: relative;
	transition: color 0.3s;
}

.footer-nav__sub-items li a:hover {
	color: #036000;
}

.footer-nav__sub-items li a::after {
	background-color: #44403f;
	content: "";
	display: block;
	height: 1px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: background-color 0.3s;
	width: 0.3125rem;
}

.footer-nav__sub-items li a:hover::after {
	background-color: #036000;
}

.footer__bottom {
	background-color: #036000;
	color: #fff;
	margin-top: 4.375rem;
	overflow: hidden;
	padding-bottom: 2.25rem;
	padding-top: 1.5rem;
}

.footer__bottom-links {
	align-items: center;
	border-bottom: 1px solid #fff;
	display: flex;
	gap: 1.25rem;
	justify-content: center;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding-bottom: 1.75rem;
}

.footer__bottom-link {
	transition: opacity 0.3s;
}

.footer__bottom-link:hover {
	opacity: 0.7;
}

.footer__bottom-info {
	display: flex;
	font-size: 1rem;
	font-weight: 500;
	gap: 2.5rem;
	line-height: 1.75;
	margin-left: auto;
	margin-right: auto;
	margin-top: 1.875rem;
	max-width: 48.75rem;
}

.footer__bottom-img {
	width: 11.125rem;
}

.footer__copy {
	display: block;
	font-size: 0.875rem;
	font-weight: 500;
	margin-top: 4.25rem;
	text-align: center;
}

.fb_iframe_widget iframe {
	height: auto !important;
	width: 100% !important;
}

.form {
	background-color: #f5fbec;
	padding-bottom: 6.25rem;
	padding-top: 9.375rem;
}

.form__body {
	background-color: #fff;
	box-shadow: 0 0 6px #aaa;
	padding: 6.25rem 3.4375rem;
}

.form__title {
	border-bottom: 4px solid #036000;
	font-size: 2.5rem;
	padding-bottom: 1.25rem;
	text-align: center;
}

.form__wrap {
	padding: 0 4.6875rem;
}

.form__description {
	color: #44403f;
	font-size: 1rem;
	font-weight: 500;
}

.form__form-title {
	border-left: 4px solid #036000;
	font-size: 1.125rem;
	padding: 0.625rem 1.25rem;
}

.form__list {
	margin-top: 2.5rem;
}

.form__field,
.form__item {
	align-items: center;
	display: flex;
	padding: 1rem 0.625rem;
}

.form__field.form__field--textarea {
	align-items: start;
}

.form__field.form__field--textarea .form__label {
	padding-top: 0.625rem;
}

.form__field.form__field--noflex,
.form__item.form__item--noflex {
	border-top: none;
	display: block;
	text-align: center;
}

.form__label,
.form__term {
	font-weight: 700;
	width: 30%;
}

.form__label label {
	cursor: default;
}

.form__label.form__label--accept,
.form__term.form__term--accept {
	font-size: 1.1875rem;
	width: 100%;
}

.form__data,
.form__definition {
	color: #44403f;
	width: 65%;
}

.form__data.form__data--accept,
.form__acceptance {
	color: #036000;
	margin-top: 1.25rem;
	width: 100%;
}

.form__data.form__data--accept {
	background-color: #f5fbec;
	padding-bottom: 2rem;
	padding-top: 2rem;
}

.form__data.form__data--accept a {
	-webkit-text-decoration: underline;
	color: #036000;
	font-weight: 700;
	text-decoration: underline;
	transition: all 0.3s;
}

.form__data.form__data--accept a:hover {
	opacity: 0.7;
}

.form__required {
	background-color: #e63946;
	color: #fff;
	display: inline-block;
	font-size: 0.625rem;
	margin-left: 0.625rem;
	padding: 0.1875rem 0.625rem;
}

.form__textarea {
	height: 160px;
	resize: none;
}

.form__input,
.form__select,
.form__textarea,
.form__acceptance-text {
	border: 1px solid #7c7a79;
	color: #44403f;
	font-size: 0.875rem;
	padding: 1rem;
	width: 100%;
}

.wpcf7 input[type=text] {
	color: #44403f;
}

.form__acceptance-text {
	font-size: 1rem;
	height: 200px;
	line-height: 1.75rem;
	overflow-y: auto;
	padding: 1.875rem;
	text-align: left;
}

.form__select {
	padding-right: 35px;
}

.form__data-select {
	position: relative;
}

.form__data-select::after {
	border-right: solid 2px #036000;
	border-top: solid 2px #036000;
	content: "";
	height: 10px;
	position: absolute;
	right: 15px;
	top: 46%;
	transform: translateY(-50%) rotate(135deg);
	width: 10px;
}

.form__data,
.form__data-radio,
.form__data-select,
.form__data-check {
	margin-top: 0.25rem;
}

.wpcf7-list-item {
	display: block;
	margin: 0;
}

.wpcf7-form-control-wrap[data-name=privacy] .wpcf7-list-item-label {
	display: inline-block;
	padding-left: 2.5rem;
	position: relative;
}

.wpcf7-form-control-wrap[data-name=privacy] .wpcf7-list-item-label::before {
	border: 1px solid #7c7a79;
	content: "";
	height: 1.25rem;
	left: 0;
	position: absolute;
	top: 0.125rem;
	width: 1.25rem;
}

.wpcf7-form-control-wrap[data-name=privacy] .wpcf7-list-item-label::after {
	border-bottom: 2px solid #036000;
	border-left: 2px solid #036000;
	content: "";
	height: 0.5rem;
	left: 0.25rem;
	opacity: 0;
	position: absolute;
	top: 0.4375rem;
	transform: rotate(-45deg);
	width: 0.8125rem;
}

.form__checkbox:checked + .wpcf7-list-item-label::after {
	opacity: 1;
}

.form__submit-button {
	margin-top: 2.5rem;
	text-align: center;
}

.form__submit-input,
.form__confirm-input,
.form__returnbutton {
	background-color: #036000;
	border: 2px solid #036000;
	color: #fff;
	display: block;
	font-size: 1rem;
	font-weight: 700;
	margin-left: auto;
	margin-right: auto;
	padding: 1.125rem 1.25rem;
	position: relative;
	text-align: center;
	transition: all 0.3s;
	width: 20.8125rem;
}

.form__confirm-input {
	min-width: 300px;
}

.form__agree {
	color: #036000;
	display: inline-block;
	margin-top: 1.25rem;
	padding-left: 1.5rem;
	position: relative;
}

.form__agree::before {
	border: 1px solid #f5fbec;
	border-radius: 3px;
	content: "";
	height: 1.25rem;
	left: 0;
	position: absolute;
	top: 0.1875rem;
	width: 1.25rem;
}

.form__agree::after {
	border-bottom: 2px solid #f5fbec;
	border-left: 2px solid #f5fbec;
	content: "";
	height: 0.5rem;
	left: 0.25rem;
	position: absolute;
	top: 0.5rem;
	transform: rotate(-45deg);
	width: 0.8125rem;
}

.form__thanks {
	line-height: 2.5rem;
	margin-top: 3.125rem;
	text-align: center;
}

.wpcf7-spinner {
	display: none;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	border-color: #7c7a79;
}

.form__submit-input:hover,
.form__confirm-input:hover,
.form__returnbutton:hover {
	background-color: #fff;
	color: #036000;
	opacity: 1;
	transition: all 0.3s;
}

.wpcf7 form.sent .wpcf7-response-output {
	display: none;
}

.form.form--thanks {
	padding-bottom: 11.25rem;
	padding-top: 11.25rem;
}

.thanks__title {
	font-size: 3rem;
	font-weight: 700;
	text-align: center;
}

.thanks__text {
	font-size: 1.25rem;
	margin-top: 1.875rem;
	text-align: center;
}

.thanks__btn a {
	margin-left: auto;
	margin-right: auto;
	margin-top: 5rem;
}

.fv {
	margin-top: 4.25rem;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.fv__swiper {
	height: 100%;
	width: 100%;
}

.fv__swiper-wrapper {
	height: 100%;
	width: 100%;
}

.fv__swiper-slide {
	height: 100%;
	position: relative;
	width: 100%;
}

.fv__swiper-slide::before {
	background: #fff;
	content: "";
	display: block;
	height: 100%;
	left: 0;
	opacity: 0.22;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1;
}

.fv__inner {
	height: inherit;
	position: relative;
	width: 100%;
}

.fv__slide-img {
	aspect-ratio: 1300/647;
	height: 100%;
	position: relative;
	width: 100%;
}

.fv__slide-img img {
	-o-object-fit: cover;
	height: 100%;
	left: 0;
	object-fit: cover;
	position: absolute;
	top: 0;
	width: 100%;
}

.fv__copy {
	left: 16%;
	position: absolute;
	top: 13%;
	z-index: 2;
}

.fv__main-copy {
	width: 21.875rem;
}

.fv__sub-copy {
	margin-top: 1.75rem;
	width: 38.0625rem;
}

.swiper-pagination.fv__swiper-pagination.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet {
	background: #a6a6a6;
	height: 0.5625rem;
	width: 0.5625rem;
}

.swiper-pagination.fv__swiper-pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
	bottom: 1.75rem;
}

.swiper-pagination.fv__swiper-pagination.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet-active {
	background: #fff;
}

.swiper-button-next.fv__swiper-button-next,
.swiper-button-prev.fv__swiper-button-prev {
	bottom: 1.75rem;
	top: auto;
}

.swiper-button-next.fv__swiper-button-next {
	right: calc(50% - 6.25rem);
}

.swiper-button-prev.fv__swiper-button-prev {
	left: calc(50% - 6.25rem);
}

.swiper-button-next.fv__swiper-button-next::after,
.swiper-button-prev.fv__swiper-button-prev::after {
	color: #fff;
	content: "\f053";
	display: block;
	font-family: "Font Awesome 6 Free";
	font-size: 1.25rem;
	font-weight: 900;
	left: 0;
	position: absolute;
	top: 0;
}

.swiper-button-next.fv__swiper-button-next::after {
	transform: rotate(180deg);
}

.swiper-button-next,
.swiper-button-prev {
	height: 1.25rem;
	width: 0.78125rem;
}

.swiper-button-next.fv__swiper-button-next::after,
.swiper-button-prev.fv__swiper-button-prev::after,
.swiper-pagination.fv__swiper-pagination .swiper-pagination-bullet::after {
	text-shadow: 0px 0px 4px rgba(124, 122, 121, 0.9), 0px 0px 15px rgba(124, 122, 121, 0.9);
}

.greeting__img {
	aspect-ratio: 1000/553;
}

.greeting__img img {
	-o-object-fit: cover;
	-o-object-position: center;
	height: 100%;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.greeting__text {
	display: flex;
	flex-direction: column;
	font-size: 1.125rem;
	font-weight: 500;
	gap: 1.25rem;
	line-height: 1.75;
	margin-top: 4rem;
}

.greeting__name {
	font-size: 1.375rem;
	font-weight: 700;
	margin-top: 3rem;
	text-align: right;
}

.hamburger {
	height: 1rem;
	position: relative;
	width: 1.125rem;
	z-index: 101;
}

.hamburger span {
	background-color: #44403f;
	height: 2px;
	position: absolute;
	transition: 0.3s;
	width: inherit;
}

.hamburger span:nth-child(1) {
	top: 0rem;
}

.hamburger span:nth-child(2) {
	top: 0.4375rem;
}

.hamburger span:nth-child(3) {
	bottom: 0rem;
}

.hamburger.is-active span:nth-child(1) {
	background-color: #fff;
	transform: translateY(0.25rem) rotate(-45deg);
}

.hamburger.is-active span:nth-child(2) {
	opacity: 0;
}

.hamburger.is-active span:nth-child(3) {
	background-color: #fff;
	transform: translateY(-0.625rem) rotate(45deg);
}

body.is-active {
	height: 100%;
	overflow: hidden;
}

.header {
	background: #fff;
	height: 4.25rem;
	position: fixed;
	top: 0;
	transition: 0.3s;
	width: 100%;
	z-index: 1000;
}

/* WordPress管理バー対応 */

.admin-bar .header {
	top: 2rem;
}

.header__inner {
	align-items: center;
	display: flex;
	height: inherit;
	justify-content: space-between;
	padding-right: 3.125rem;
}

.header__logo {
	height: inherit;
	position: relative;
	z-index: 100;
}

.header__logoLink {
	align-items: center;
	display: flex;
	height: inherit;
	transition: opacity 0.3s;
}

.header__logoLink:hover {
	opacity: 0.7;
}

.header__logoLink img {
	aspect-ratio: 254/84;
	height: auto;
	width: 15.875rem;
}

.header__pc-nav {
	display: flex;
	height: inherit;
}

.header__sp-nav {
	display: none;
}

.header__drawer {
	display: none;
}

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

.interview__visual {
	aspect-ratio: 862/520;
	display: block;
	margin-left: calc(50% - 50vw);
	max-height: 32.8125rem;
	position: relative;
	width: 100%;
}

.interview__visual--reverse {
	display: block;
	margin-left: auto;
	margin-right: calc(50% - 50vw);
}

.interview__image {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.interview__info {
	background-color: rgba(214, 201, 0, 0.6);
	bottom: -0.375rem;
	color: #000;
	max-width: 15.625rem;
	padding: 0.5rem;
	position: absolute;
	right: 3.5625rem;
	transform: translateY(-20%);
	width: 100%;
	z-index: 20;
}

.interview__visual--reverse .interview__info {
	bottom: 0.25rem;
	left: 4.25rem;
	max-width: 14.6875rem;
	padding-bottom: 0.4375rem;
	padding-left: 1.125rem;
	padding-top: 0.5625rem;
	right: auto;
}

.interview__position {
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1.3;
}

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

.interview__name.interview__name--reverse {
	gap: 1.875rem;
}

.interview__name-text {
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.2083333333;
}

.interview__join {
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.2222222222;
}

.interview__body:nth-of-type(1) {
	margin-top: 7.375rem;
}

.interview__body:nth-of-type(2) {
	margin-top: 3.75rem;
}

.interview__body:nth-of-type(3) {
	margin-top: 4rem;
}

.interview__body:nth-of-type(3).interview__body--reverse {
	margin-top: 5.375rem;
}

.interview__flex {
	align-items: start;
	display: flex;
	justify-content: center;
}

.interview__flex--reverse {
	flex-direction: row-reverse;
}

.interview__image-block {
	flex-shrink: 0;
	max-width: 33.625rem;
	width: 100%;
}

.interview__flex--reverse .interview__image-block {
	margin-left: 2.375rem;
}

.interview__image-block img {
	-o-object-fit: cover;
	aspect-ratio: 538/476;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.interview__text-block {
	flex: 1;
	margin-left: 2.375rem;
	min-width: 18.75rem;
}

.interview__flex--reverse .interview__text-block {
	margin-left: 0;
}

.interview__title {
	color: #036000;
	font-size: 1.5rem;
	font-weight: 700;
}

.interview__text {
	font-size: clamp(16px, 16px + (100vw - 1024px) * 0.007246, 18px);
	font-weight: 400;
	line-height: 1.6666666667;
	margin-top: 1.3125rem;
}

.page-adoption-fv {
	align-items: flex-end;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	max-height: 35rem;
	position: relative;
	width: 100%;
	z-index: 1;
}

.page-adoption-fv::after {
	background-color: rgba(0, 0, 0, 0.1);
	bottom: 0;
	content: "";
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: -1;
}

.page-adoption-fv--point {
	aspect-ratio: 1300/560;
	background-image: url("../images/adoption/point-fv.webp?ver=1.0.0");
}

.page-adoption-fv--training {
	aspect-ratio: 1300/568;
	background-image: url("../images/adoption/training-fv.webp?ver=1.0.0");
}

.page-adoption-fv--interview {
	aspect-ratio: 1300/632;
	background-image: url("../images/adoption/interview-fv.webp?ver=1.0.0");
}

.page-adoption-fv__inner {
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: space-between;
	margin-left: auto;
	margin-right: auto;
	max-width: 81.25rem;
	padding-bottom: 2.5rem;
	padding-left: 1.875rem;
	padding-right: 1.875rem;
	width: 100%;
}

.page-adoption-fv__title {
	color: #036000;
	text-shadow: 0 4px 4px #fff;
	width: -moz-fit-content;
	width: fit-content;
}

.page-adoption-fv__title--white {
	color: #fff;
	text-shadow: none;
}

.page-adoption-fv__title--space-wide {
	padding-bottom: max(0.625rem, min(2.923vw, 1.0625rem));
	width: -moz-fit-content;
	width: fit-content;
}

.page-adoption-fv__en {
	display: block;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.2083333333;
	text-align: center;
}

.page-adoption-fv__title--white .page-adoption-fv__en {
	font-weight: 400;
}

.page-adoption-fv__ja {
	font-size: 4rem;
	font-weight: 700;
	line-height: 1.203125;
}

.page-adoption-interview {
	background-color: #f5fbec;
	overflow-x: clip;
	padding-bottom: 12.3125rem;
	padding-top: 8.1875rem;
}

.page-adoption-interview__wrapper {
	margin-left: auto;
	margin-right: auto;
	max-width: 81.25rem;
	width: 100%;
}

.page-adoption-interview__list:not(:first-child) {
	margin-top: 14.875rem;
}

.page-adoption-interview__section-heading {
	color: #036000;
	font-weight: 700;
	left: 11.137%;
	position: absolute;
	top: 0;
	transform: translateY(-56%);
	z-index: 10;
}

.page-adoption-interview__heading-text {
	align-items: baseline;
	display: flex;
	font-size: 2.5rem;
	gap: 1.1875rem;
}

.section-heading--reverse .page-adoption-interview__heading-text {
	gap: 0.75rem;
}

.page-adoption-interview__heading-number {
	font-size: 3.5rem;
}

.page-adoption-message {
	background-color: #f5fbec;
	padding-bottom: 6.25rem;
	padding-top: 2.5rem;
}

.page-adoption-message__inner.inner {
	padding-left: 2.3125rem;
	padding-right: 1.625rem;
}

.page-adoption-message__inner.inner .breadcrumb {
	color: #036000;
	margin-bottom: 1.875rem;
}

.page-adoption-message__bg {
	background-image: url("../images/adoption/message-bg01.webp?ver=1.0.0"), url("../images/adoption/message-bg02.webp?ver=1.0.0");
	background-position: center top, center bottom;
	background-repeat: no-repeat, no-repeat;
	background-size: 100% 70%, 100% 30%;
	padding-bottom: 2.5625rem;
	padding-left: 1.25rem;
	padding-right: 1.625rem;
	padding-top: 2.8125rem;
}

.page-adoption-message__wrapper {
	background-color: rgba(255, 255, 255, 0.8);
	padding-bottom: 8.875rem;
	padding-left: 2.375rem;
	padding-right: 2.125rem;
	padding-top: 0.5rem;
}

.page-adoption-message__header {
	align-items: flex-end;
	display: flex;
	justify-content: space-between;
	padding-left: 4.0625rem;
	padding-right: 1.375rem;
}

.page-adoption-message__logo {
	margin-top: 1.875rem;
}

.page-adoption-message__logo img {
	aspect-ratio: 333/289;
	height: auto;
	max-width: 20.8125rem;
	width: 100%;
}

.page-adoption-message .page-adoption-fv__title {
	text-shadow: none;
}

.page-adoption-message__body {
	margin-top: 5.25rem;
}

.page-adoption-message__text,
.page-adoption-message__name {
	color: #000;
	font-size: 1.125rem;
	line-height: 1.9444444444;
}

.page-adoption-message__text {
	font-weight: 400;
}

.page-adoption-message__text + .page-adoption-message__text {
	margin-top: 3.375rem;
}

.page-adoption-message__name {
	font-weight: 500;
	margin-top: 1.75rem;
	padding-right: 0.875rem;
	text-align: right;
}

.page-adoption-message__name--strong {
	font-size: 1.5rem;
	line-height: 1.4583333333;
	margin-left: 1.125rem;
}

.page-adoption-point {
	background-color: #f5fbec;
	padding-bottom: 9.625rem;
	padding-top: 6.25rem;
}

.page-adoption-point__contents {
	align-items: flex-start;
	background-color: #fff;
	display: flex;
	flex-direction: column;
}

.page-adoption-point__contents:not(:first-of-type) {
	margin-top: 8.125rem;
}

.page-adoption-point__content {
	max-width: 68.75rem;
	width: 100%;
}

.page-adoption-point__content--medium {
	padding-bottom: 2.5625rem;
	padding-left: 4.9375rem;
	padding-right: 1.375rem;
	padding-top: 2.1875rem;
}

.page-adoption-point__content--large {
	padding-bottom: 2.5rem;
	padding-left: 1.9375rem;
	padding-right: 1.375rem;
	padding-top: 2.5625rem;
}

.page-adoption-point__content--culture {
	padding-bottom: 3.4375rem;
	padding-left: 1.9375rem;
	padding-right: 1.375rem;
	padding-top: 2.125rem;
}

.page-adoption-point__heading {
	color: #036000;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.6666666667;
	padding-left: 2.0625rem;
	text-align: center;
}

.page-adoption-point__heading--balance {
	padding-left: 5rem;
}

.page-adoption-point__heading--culture {
	padding-left: 0;
}

.page-adoption-point__flex {
	align-items: center;
	display: flex;
	justify-content: center;
	margin-top: 2.125rem;
}

.page-adoption-point__flex--even {
	flex-direction: row-reverse;
}

.page-adoption-point__flex--culture {
	flex-direction: column;
}

.page-adoption-point__text {
	color: #000;
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.6666666667;
}

.page-adoption-point__text--culture {
	margin-top: 0.375rem;
}

.page-adoption-point__image {
	flex-shrink: 0;
	height: auto;
	width: 100%;
}

.page-adoption-point__image--medium {
	aspect-ratio: 470/252;
	margin-left: 0.875rem;
	max-width: 29.375rem;
}

.page-adoption-point__image--large {
	aspect-ratio: 502/265;
	margin-right: 1.125rem;
	max-width: 31.375rem;
}

.page-adoption-point__image img {
	-o-object-fit: cover;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.page-adoption-point__video {
	aspect-ratio: 800/450;
	flex-shrink: 0;
	margin-top: 1.625rem;
	max-width: 50.5rem;
	overflow: hidden;
	width: 100%;
}

.page-adoption-point__video iframe {
	-o-object-fit: cover;
	border: none;
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.page-adoption-training {
	background-color: #f5fbec;
	padding-bottom: 11.875rem;
	padding-top: 4.375rem;
}

.page-adoption-training__contents {
	align-items: flex-start;
	background-color: #fff;
	display: flex;
	flex-direction: column;
	padding-bottom: 4.125rem;
	padding-left: 3.125rem;
	padding-right: 3.125rem;
	padding-top: 2.0625rem;
}

.page-adoption-training__section-heading {
	margin: 0 auto;
}

.page-adoption-training__description {
	margin-top: 1.5625rem;
}

.page-adoption-training__heading {
	color: #036000;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.6666666667;
	padding-left: 0.5625rem;
	text-align: center;
}

.page-adoption-training__text {
	color: #000;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.6666666667;
	margin-top: 1.3125rem;
}

.page-adoption-training__cards {
	margin-top: 3.125rem;
}

.page-adoption-training__card:not(:first-of-type) {
	margin-top: 2.8125rem;
}

.page-adoption {
	-webkit-font-smoothing: antialiased; /* Chrome／Safari用 */
	-moz-osx-font-smoothing: grayscale; /* Firefox（macOS）用 */
	color: #000;
	font-family: "Inter", "Noto Sans JP", "Roboto", "Helvetica Neue", Arial, sans-serif;
	margin-top: 4.25rem;
	text-rendering: optimizeLegibility;
}

.page-certification__text {
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.8;
	margin-top: 3.75rem;
}

.page-certification__list {
	display: flex;
	flex-direction: column;
	gap: 1.125rem;
	margin-top: 2.5rem;
}

.page-certification__link {
	-webkit-text-decoration: underline;
	display: block;
	font-size: 1rem;
	font-weight: 700;
	padding-left: 1.875rem;
	position: relative;
	text-decoration: underline;
	transition: all 0.3s;
}

.page-certification__link:hover {
	color: #036000;
}

.page-certification__link::after {
	background: url("../images/common/icon_pdf.png?ver=1.0.0");
	content: "";
	display: block;
	height: 0.75rem;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	width: 1.4375rem;
}

.page-error {
	background-color: #f5fbec;
	padding-bottom: 7.5rem;
	padding-top: 11.25rem;
	text-align: center;
}

.page-error__title {
	font-size: 2.5rem;
	font-weight: 700;
}

.page-error__text {
	font-size: 1rem;
	font-weight: 500;
	margin-top: 2rem;
}

.page-fv {
	aspect-ratio: 130/27;
	height: auto;
	margin-top: 4.25rem;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.page-fv.page-fv--short {
	aspect-ratio: 130/20;
	background-color: #036000;
}

.inner.page-fv__inner {
	height: 100%;
	position: relative;
	z-index: 2;
}

.page-fv::after {
	background-image: url(../images/blog/bg.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	bottom: 0;
	content: "";
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: -1;
}

.page-fv.archive-works-fv::after {
	background-image: url(../images/common/works-fv.jpg);
	filter: blur(0.125rem);
}

.page-fv.topics-fv::after {
	background-image: url(../images/common/topics-fv.jpg);
	filter: blur(0.125rem);
	height: 110%;
	top: -15px;
	transform: rotate(1deg);
}

.blog-fv.page-fv::after {
	background-image: url(../images/common/blog-fv.jpg);
	background-position-y: 40%;
	filter: blur(0.125rem);
}

.page-fv.contact-fv::after {
	background-image: url(../images/common/contact-fv.jpg);
	background-position-y: 9%;
	filter: blur(0.125rem);
}

.page-fv.company-fv::after {
	background-image: url(../images/common/policy-fv.jpg);
	filter: blur(0.125rem);
}

.page-fv.access-fv::after {
	background-image: url(../images/common/access-fv.jpg);
	filter: blur(0.125rem);
}

.page-fv.company-outline-fv::after {
	background-image: url(../images/common/company-fv.jpg);
	background-position-y: 43%;
	filter: blur(0.125rem);
}

.page-fv.partners-fv::after {
	background-image: url(../images/common/partners-fv.jpg);
	filter: blur(0.125rem);
}

.page-fv.staff-fv::after {
	background-image: url(../images/common/staff-fv.jpg);
	background-position-y: 40%;
	filter: blur(0.125rem);
}

.page-fv.policy-fv::after {
	background-image: url(../images/staff/staff-bg.jpg);
	background-position-y: 45%;
	filter: blur(0.125rem);
}

.page-fv.support-fv::after {
	background-image: url(../images/common/support-fv.jpg);
	filter: blur(0.125rem);
}

.page-fv__title {
	color: #fff;
	font-size: 3.1875rem;
	font-weight: 700;
	left: 50%;
	letter-spacing: 8px;
	line-height: 1.3725490196;
	position: absolute;
	text-align: center;
	text-shadow: 0px 0px 4px rgba(124, 122, 121, 0.8), 0px 0px 15px rgba(124, 122, 121, 0.8);
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.page-fv.service-fv::after {
	background-image: url(../images/service/bg.jpg);
	filter: blur(0.125rem);
}

.page-service {
	margin-bottom: 12.25rem;
	margin-top: 3.875rem;
}

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

.page-service__text {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.59375;
}

.page-service__sub-text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 2.125rem;
}

.page-service__management {
	margin-top: 4.75rem;
}

.page-service__axis-list {
	grid-gap: 0.625rem;
	display: grid;
	gap: 0.625rem;
	grid-template-columns: repeat(4, 1fr);
	margin-top: 2.5rem;
}

.page-service__axis-item {
	align-items: center;
	aspect-ratio: 1;
	background-color: #f5fbec;
	border-radius: 50%;
	display: flex;
	flex-direction: column-reverse;
	gap: 1.5rem;
	justify-content: start;
	min-width: 0;
	padding: 3.4375rem 1.5rem;
}

.page-service__axis-icon {
	height: 5.9375rem;
}

.page-service__axis-svg {
	-o-object-fit: contain;
	height: 100%;
	object-fit: contain;
	width: 100%;
}

.page-service__axis-title {
	color: #036000;
	font-size: 1.375rem;
	font-weight: 700;
	text-align: center;
}

.page-service__main {
	margin-top: 5.75rem;
}

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

.page-service__nav-list {
	grid-gap: 0.75rem;
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(3, 1fr);
}

.page-service__nav-link {
	border: 1px solid #036000;
	color: #036000;
	display: block;
	font-size: 1rem;
	font-weight: 700;
	padding: 1.125rem 0rem;
	position: relative;
	text-align: center;
	transition: all 0.3s;
}

.page-service__nav-link::after {
	color: #036000;
	content: "\f078";
	display: block;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	position: absolute;
	right: 1.4375rem;
	top: 50%;
	transform: translateY(-50%);
	transition: color 0.3s;
}

.page-service__nav-link:hover {
	background-color: #036000;
	color: #fff;
}

.page-service__nav-link:hover::after {
	color: #fff;
}

.page-service__section {
	margin-top: 4.0625rem;
}

.page-service__section-title {
	background-color: #036000;
	color: #fff;
	font-size: 1.75rem;
	font-weight: 700;
	padding: 0.8125rem 2.3125rem;
}

.page-service__section-box {
	align-items: start;
	display: flex;
	gap: 1.875rem;
	margin-top: 2rem;
}

.page-service__section-content {
	flex: 1;
}

.page-service__section-message {
	font-size: 1.625rem;
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 1.6153846154;
}

.page-service__section-text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1.75rem;
}

.page-service__section-image {
	aspect-ratio: 400/288;
	width: 25rem;
}

.page-service__section-image img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.page-service__section-wrap {
	margin-top: 3.9375rem;
}

.page-service__section-wrap-title {
	border-bottom: 2px solid #036000;
	color: #036000;
	font-size: 1.4375rem;
	font-weight: 700;
	line-height: 1.3913043478;
	padding-bottom: 0.625rem;
}

.page-service__section-wrap-text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1rem;
}

.page-service__section-wrap-img-list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin-top: 2.25rem;
}

.page-service__section-wrap-img-item {
	aspect-ratio: 275/188;
}

.page-service__section-wrap-img-item img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.page-service__section-wrap-list {
	grid-column-gap: 2.5rem;
	-moz-column-gap: 2.5rem;
	column-gap: 2.5rem;
	display: grid;
	grid-auto-flow: column;
	grid-template-rows: repeat(3, auto);
	margin-top: 1.25rem;
}

.page-service__section-wrap-list.page-service__section-wrap-list--private {
	grid-template-rows: repeat(2, auto);
}

.page-service__section-wrap-list.page-service__section-wrap-list--partners {
	grid-template-rows: repeat(1, auto);
	max-width: 31.25rem;
}

.page-service__section-wrap-item {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
}

.page-service__section-wrap-item span {
	color: #036000;
	font-size: 0.75rem;
	margin-right: 0.25rem;
}

.page-service__section-process-message {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.7727272727;
	margin-top: 1.875rem;
}

.page-service__section-process-text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 0.875rem;
}

.page-service__process-list {
	display: flex;
	flex-direction: column;
	gap: 2.5625rem;
	margin-top: 2.875rem;
}

.page-service__process-content {
	display: flex;
}

.page-service__process-number {
	align-items: center;
	aspect-ratio: 1;
	background-color: #036000;
	color: #fff;
	display: flex;
	flex-shrink: 0;
	font-size: 1.4375rem;
	font-weight: 700;
	justify-content: center;
	width: 3.1875rem;
}

.page-service__process-title {
	background-color: #f5fbec;
	color: #036000;
	flex: 1;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.6;
	padding: 0.625rem 1.25rem;
}

.page-service__process-text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 0.8125rem;
}

.page-service__section-partners-text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 2rem;
}

.page-staff__list {
	grid-row-gap: 1.5625rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	row-gap: 1.5625rem;
}

.page-staff__link {
	color: #036000;
	display: block;
	font-size: 1rem;
	font-weight: 700;
	position: relative;
	transition: opacity 0.3s;
}

.page-staff__link-icon {
	display: inline-block;
	font-size: 1.3125rem;
	margin-right: 1.25rem;
}

.page-staff__link:hover {
	opacity: 0.7;
}

.page-staff__articles {
	display: flex;
	flex-direction: column;
	gap: 1.875rem;
	margin-top: 4.375rem;
}

.page-staff__article {
	background-color: #fff;
	padding: 3.125rem 3.125rem;
}

.page-staff__article:nth-child(2n) .page-staff__top {
	flex-direction: row-reverse;
}

.page-staff__top {
	display: flex;
	gap: 1rem;
}

.page-staff__top-content {
	align-items: start;
	display: flex;
	flex: 1;
	flex-direction: column;
	height: inherit;
	margin-left: 1.25rem;
}

.page-staff__head {
	padding-left: 1.5rem;
	position: relative;
}

.page-staff__head::after {
	background-color: #036000;
	content: "";
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 0.4375rem;
}

.page-staff__title {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.4375;
}

.page-staff__subtitle {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.4375;
}

.page-staff__message-title {
	font-size: 1.875rem;
	font-weight: 700;
	line-height: 1.5666666667;
	margin-top: 1.5625rem;
}

.page-staff__toggle {
	cursor: pointer;
	margin-top: auto;
	padding-left: 1.5625rem;
	position: relative;
	transition: all 0.3s;
	width: 100%;
}

.page-staff__toggle:hover {
	opacity: 0.7;
}

.page-staff__toggle::after,
.page-staff__toggle::before {
	background-color: #036000;
	content: "";
	display: block;
	height: 0.0625rem;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.2s;
	width: 1rem;
}

.page-staff__toggle::before {
	transform: translateY(-50%) rotate(90deg);
}

.page-staff__toggle.is-active::before {
	transform: translateY(-50%);
}

.page-staff__toggle-text {
	color: #036000;
	display: block;
	font-size: 1rem;
	font-weight: 700;
	line-height: 2.0625;
	text-align: left;
}

.page-staff__image {
	aspect-ratio: 486/300;
	width: 30.375rem;
}

.page-staff__image img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.page-staff__content {
	display: none;
	margin-top: 2.6875rem;
}

.page-staff__text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
}

.page-staff__project {
	border: 1px solid #036000;
	margin-top: 2.6875rem;
}

.page-staff__project-title {
	border-bottom: 1px solid #036000;
	color: #036000;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.6;
	padding: 0.75rem 2.25rem;
}

.page-staff__project-content {
	align-items: start;
	display: flex;
	gap: 1.875rem;
	padding: 1.5rem 2.25rem 2.1875rem;
	position: relative;
}

.page-staff__project-info {
	flex: 1;
}

.page-staff__project-name {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.7777777778;
}

.page-staff__project-client {
	font-size: 1rem;
	font-weight: 700;
	line-height: 2;
}

.page-staff__project-client span {
	color: #036000;
}

.page-staff__project-link-btn {
	margin-top: 3rem;
	width: 100%;
}

.page-staff__project-image {
	aspect-ratio: 330/231;
	overflow: hidden;
	position: absolute;
	right: 2.0625rem;
	top: -1.6875rem;
	width: 20.625rem;
}

.page-staff__project-image img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.pagenavi {
	margin-top: 6.25rem;
}

.wp-pagenavi {
	display: flex;
	gap: 0.4375rem;
	justify-content: center;
	margin-top: 6.25rem;
}

.wp-pagenavi a,
.wp-pagenavi span {
	border: 1px solid #036000 !important;
	margin: 0 !important;
}

.wp-pagenavi a,
.wp-pagenavi span {
	align-items: center;
	background-color: #fff;
	color: #036000;
	display: inline-flex;
	font-size: 0.75rem;
	font-weight: 500;
	height: 1.8125rem;
	justify-content: center;
	transition: ease 0.3s;
	width: 1.8125rem;
}

.wp-pagenavi a:hover {
	background-color: #036000;
	color: #fff;
}

.wp-pagenavi span.current {
	background-color: #036000;
	color: #fff;
}

.previouspostslink,
.nextpostslink {
	position: relative;
}

.previouspostslink::before,
.nextpostslink::before {
	color: #036000;
	content: "\f053";
	display: block;
	font-family: "Font Awesome 6 Free";
	font-size: 0.625rem;
	font-weight: 900;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: color 0.3s;
}

.nextpostslink::before {
	content: "\f054";
}

.previouspostslink:hover::before,
.nextpostslink:hover::before {
	color: #fff;
}

.pagenavi__wrap {
	display: flex;
	gap: 2rem;
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
}

.pagenavi__previous,
.pagenavi__next {
	align-items: center;
	color: #036000;
	display: flex;
	font-size: 1rem;
	font-weight: 500;
	height: 100%;
	justify-items: center;
	place-items: center;
	transition: opacity 0.3s;
}

.pagenavi__previous:hover,
.pagenavi__next:hover {
	opacity: 0.7;
}

.pagenavi__previous.is-none,
.pagenavi__next.is-none {
	color: #7c7a79;
	pointer-events: none;
}

.pagenavi__all.btn a {
	padding: 0.75rem 1.5rem;
	width: 13.75rem;
}

.pagenavi__all.btn a::after {
	display: none;
}

.partners__list {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	margin-top: 3rem;
}

.partners__item {
	border-bottom: 1px solid #7c7a79;
	display: flex;
	flex-wrap: wrap;
	gap: 1.25rem;
	padding-bottom: 1rem;
}

.partners__item dt {
	font-size: 1.375rem;
	font-weight: 700;
	text-align: center;
	width: 30%;
}

.partners__item dd {
	flex: 1;
	font-size: 1rem;
	font-weight: 400;
	padding-top: 0.25rem;
}

.pc-nav__items {
	align-items: center;
	display: flex;
	flex: 1;
	gap: 0.75rem;
	height: inherit;
}

.pc-nav__item {
	align-items: center;
	display: flex;
	flex-direction: column;
	font-family: "Noto Sans JP";
	font-weight: 700;
	height: inherit;
	justify-content: center;
	position: relative;
	text-align: center;
}

.pc-nav__item a,
.pc-nav__item p {
	align-items: center;
	cursor: pointer;
	display: flex;
	font-size: 1rem;
	height: inherit;
	justify-content: center;
	letter-spacing: 0.05em;
	line-height: 1.1875;
	position: relative;
	transition: all 0.3s;
}

.pc-nav__feature-item a[target=_blank] {
	position: relative;
}

.pc-nav__feature-item a[target=_blank]::before {
	aspect-ratio: 1;
	background-image: url(../images/top/arrow-link.svg);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	height: auto;
	position: absolute;
	right: 2.875rem;
	top: 50%;
	transform: translateY(-50%);
	width: 0.9375rem;
}

.pc-nav__link {
	transition: color 0.3s;
}

.pc-nav__link i {
	font-size: 0.625rem;
	margin-left: 0.25rem;
}

.pc-nav__link:hover {
	color: #036000;
}

.pc-nav__feature-items {
	background-color: #f5fbec;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	left: 40%;
	opacity: 0; /*不透明度0*/
	position: absolute;
	top: 4.25rem;
	transform: translateX(-50%);
	transition: all 0.3s; /*表示の変化を0.3秒に指定*/
	visibility: hidden; /*デフォルトでは非表示の状態にしておく*/
}

.pc-nav__feature-item a {
	display: block;
	font-size: 0.9375rem;
	padding-bottom: 0.625rem;
	padding-top: 0.625rem;
	transition: all 0.3s;
	width: 13.75rem;
}

.pc-nav__feature-item a:hover {
	color: #036000;
}

.pc-nav__item:hover .pc-nav__feature-items {
	opacity: 1; /*不透明度1*/
	visibility: visible; /*Gナビメニューにホバーしたら表示*/
}

.pc-nav__link-divider {
	color: #a19f9f;
	margin-left: 0.3125rem;
}

.pc-nav__item:last-child .pc-nav__link-divider {
	display: none;
}

.policy__box {
	align-items: center;
	display: flex;
	flex-direction: row-reverse;
	gap: 2.5rem;
	margin-top: 1.25rem;
}

.policy__main-img {
	width: 26.875rem;
}

.policy__copy {
	border-bottom: 3px solid #036000;
	border-top: 3px solid #036000;
	display: flex;
	flex: 1;
	flex-direction: column;
	font-size: 1.25rem;
	line-height: 2.6;
	padding-bottom: 1.25rem;
	padding-top: 1.25rem;
}

.policy__list {
	display: flex;
	flex-direction: column;
}

.policy__item {
	align-items: center;
	display: flex;
	font-size: 1.25rem;
	font-weight: 700;
	gap: 2.5rem;
	margin-left: auto;
	margin-right: auto;
}

.policy__item:nth-child(even) {
	flex-direction: row-reverse;
	justify-content: start;
}

.policy__desc {
	flex: 1;
	font-size: 1.125rem;
	font-weight: 500;
}

.policy__title {
	font-family: "Noto Serif JP", serif;
	font-size: 2.25rem;
	font-weight: 700;
	margin-top: 3.75rem;
	text-align: center;
}

.policy__message {
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.85;
	margin-top: 1.25rem;
}

.policy__message--first {
	margin-top: 3.125rem;
}

.policy__message span {
	background: linear-gradient(to bottom, transparent 85%, #036000 85%);
	font-weight: 700;
}

.policy__name {
	font-size: 1.25rem;
	font-weight: 700;
	margin-top: 2.5rem;
	text-align: right;
}

.privacy-policy {
	font-size: 1rem;
	line-height: 1.75;
}

.privacy-policy__intro {
	margin-top: 2.5rem;
}

.privacy-policy__title {
	font-size: 1.375rem;
	font-weight: 700;
	margin-top: 2rem;
}

.privacy-policy__text {
	margin-top: 0.375rem;
}

.privacy-policy__year {
	margin-top: 3.75rem;
	text-align: right;
}

.section-heading {
	color: #44403f;
	display: block;
	font-size: 3rem;
	font-weight: 600;
	line-height: 1.2083333333;
}

.section-heading.page-adoption-point__section-heading {
	color: #000;
	margin-left: 2rem;
	margin-top: -1.75rem;
}

.section-heading--even.page-adoption-appeal__section-heading {
	margin-left: auto;
	margin-right: 1.375rem;
}

.section-heading--even.page-adoption-point__section-heading {
	margin-left: auto;
	margin-right: 1.25rem;
}

.section-heading__text {
	-webkit-text-decoration-skip-ink: none;
	display: block;
	letter-spacing: 0.109375rem;
	text-decoration-color: #e6d63a;
	text-decoration-line: underline;
	text-decoration-skip-ink: none;
	text-decoration-thickness: 0.2em;
	text-underline-offset: -0.17em;
}

.section-heading__text--benefit {
	letter-spacing: 0.04375rem;
}

.section-heading__text--culture {
	text-underline-offset: 0;
}

.section-heading--reverse {
	left: auto;
	right: 11.137%;
}

.section-title {
	margin-left: auto;
	margin-right: auto;
	width: -moz-fit-content;
	width: fit-content;
}

.section-title__ja {
	font-size: 2.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-align: center;
}

.section-title__en {
	color: #036000;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	margin-top: 0.3125rem;
	text-align: center;
}

.page-section-title {
	border-left: 10px solid #036000;
	font-size: 1.75rem;
	font-weight: 700;
	padding-left: 1rem;
}

.sp-nav {
	display: none;
}

.sp-nav.is-active {
	transform: translate(0);
}

.sp-nav__logo {
	display: block;
	left: 1.25rem;
	position: sticky;
	top: 0rem;
	width: 8.75rem;
}

.sp-nav__item a {
	position: relative;
	transition: color 0.3s;
}

.sp-nav__item a[target=_blank] {
	padding-right: 1.25rem;
	position: relative;
}

.sp-nav__item a[target=_blank]::before {
	-webkit-mask-image: url(../images/top/arrow-link.svg?ver=1.0.0);
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	aspect-ratio: 1;
	background-color: #fff;
	content: "";
	display: block;
	height: auto;
	mask-image: url(../images/top/arrow-link.svg?ver=1.0.0);
	mask-repeat: no-repeat;
	mask-size: contain;
	position: absolute;
	right: 0rem;
	top: 50%;
	transform: translateY(-50%);
	width: 0.75rem;
}

.sp-nav__item a:hover {
	color: #036000;
}

.sp-nav__sub-items {
	display: none;
	padding-bottom: 0.625rem;
	padding-left: 1.25rem;
}

.sp-nav__sub-items li a {
	display: block;
	padding-left: 0.625rem;
	position: relative;
	transition: color 0.3s;
	width: 100%;
}

.sp-nav__sub-items li a:hover {
	color: #036000;
}

.sp-nav__sub-items li a::after {
	background-color: #fff;
	content: "";
	display: block;
	height: 1px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: background-color 0.3s;
	width: 0.5rem;
}

.sp-nav__sub-items li a:hover::after {
	background-color: #036000;
}

.sp-nav__title {
	display: block;
	font-size: 1.125rem;
	font-weight: 500;
	padding-bottom: 0.625rem;
	padding-left: 1.25rem;
	padding-top: 0.625rem;
	position: relative;
}

.sp-nav__title--contact::after {
	color: #fff;
	content: "\f053";
	display: block;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	position: absolute;
	right: 1.25rem;
	top: 50%;
	transform: translateY(-50%) rotate(180deg);
	transition: color 0.3s;
}

.sp-nav__item {
	border-top: 1px solid #fff;
	font-size: 1rem;
	font-weight: 500;
	padding-right: 4.375rem;
	position: relative;
}

.sp-nav__item:last-child {
	border-bottom: 1px solid #fff;
}

.js-sp-accordion {
	height: 0.9375rem;
	position: absolute;
	right: 1.25rem;
	top: 1.875rem;
	width: 0.9375rem;
}

.js-sp-accordion::before {
	background-color: #fff;
	content: "";
	display: block;
	height: 0.125rem;
	position: absolute;
	right: 0;
	top: 0;
	width: 0.9375rem;
}

.js-sp-accordion::after {
	background-color: #fff;
	content: "";
	display: block;
	height: 0.125rem;
	position: absolute;
	right: 0;
	top: 0;
	transform: rotate(90deg);
	transition: transform 0.3s;
	width: 0.9375rem;
}

.js-sp-accordion.is-active::after {
	transform: rotate(180deg);
}

.support {
	margin-left: auto;
	margin-right: auto;
	max-width: 65rem;
}

.support__lead {
	font-size: 1.125rem;
	line-height: 2;
	text-align: center;
}

.support__cards {
	display: flex;
	flex-direction: column;
	gap: 3.25rem;
	margin-top: 3.5rem;
}

.support__title span {
	font-size: 1.375rem;
	font-weight: 500;
}

.support__heading {
	align-items: center;
	display: flex;
	gap: 1.5rem;
}

.support__content {
	grid-gap: 2.375rem;
	align-items: start;
	display: grid;
	gap: 2.375rem;
	grid-template-columns: 16.25rem 1fr;
	margin-top: 1.25rem;
}

.support__detail {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.support__logo {
	aspect-ratio: 1/1;
}

.support__text {
	font-size: 1rem;
	line-height: 2.125;
}

.support__official {
	flex-shrink: 0;
	margin-top: 0;
}

.support__official-link {
	align-items: center;
	border: 1px solid #036000;
	color: #036000;
	display: inline-flex;
	font-size: 0.875rem;
	font-weight: 500;
	gap: 0.625rem;
	line-height: 1;
	padding: 0.625rem 1.125rem;
	transition: background-color 0.3s ease, color 0.3s ease;
}

.support__official-icon {
	font-size: 0.75rem;
}

.support__official-link:hover {
	background-color: #036000;
	color: #fff;
}

.tab {
	margin-top: 2.75rem;
}

.tab__list {
	display: flex;
	gap: 0.5rem;
}

.tab__item {
	width: 100%;
}

.tab__link {
	border: 1px solid #036000;
	color: #036000;
	display: block;
	font-size: 1rem;
	font-weight: 500;
	line-height: 2.0625;
	padding: 0.8125rem 0.1875rem;
	position: relative;
	text-align: center;
	transition: all 0.3s;
	width: 100%;
}

.tab__link-icon {
	font-size: 1.25rem;
	position: absolute;
	right: 2.1875rem;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.3s;
}

.tab__link:hover {
	background-color: #036000;
	color: #fff;
}

.tab__link:hover .tab__link-icon {
	color: #fff;
}

.tab__link.is-active {
	background-color: #036000;
	color: #fff;
	pointer-events: none;
}

.tab__list.tab__list--company {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

.top-blog {
	background-color: #f5fbec;
	overflow: hidden;
	padding-bottom: 6.625rem;
	padding-top: 3.25rem;
}

.top-blog__section-title {
	margin-left: 0;
}

.top-blog__section-title .section-title__ja,
.top-blog__section-title .section-title__en {
	-moz-text-align-last: left;
	text-align-last: left;
}

.top-blog__items {
	margin-top: 2.125rem;
	position: relative;
}

.top-blog__swiper {
	margin-right: calc(50% - 50vw);
	overflow: visible;
}

.top-blog__btn.btn {
	margin-top: 4.5rem;
}

.top-blog__btn.btn a {
	margin-left: auto;
	margin-right: auto;
}

.top-message {
	overflow-x: clip;
	position: relative;
}

.top-message::after {
	aspect-ratio: 762/622;
	background: url("../images/top/message.jpg");
	background-position: center;
	background-size: cover;
	content: "";
	display: block;
	height: auto;
	max-height: 38.875rem;
	position: absolute;
	right: 0;
	top: 0;
	width: 58%;
	z-index: -1;
}

.inner.top-message__inner {
	display: flex;
}

.top-message__content {
	margin-top: 5.625rem;
	max-width: 40.625rem;
}

.top-message__title {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.59375;
}

.top-message__description {
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1.875rem;
}

.top-message__company {
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.7777777778;
	margin-top: 3.875rem;
}

.top-message__location {
	font-size: 1.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.1428571429;
}

.top-message__location span {
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.7777777778;
	margin-right: 2.25rem;
}

.top-message__btn.btn {
	margin-top: 4.8125rem;
}

.top-recruit {
	overflow: hidden;
}

.inner.top-recruit__inner {
	display: flex;
	gap: 5.625rem;
}

.top-recruit__content {
	flex: 1;
	padding-top: 6.6875rem;
}

.section-title.top-recruit__section-title {
	margin-left: 0;
}

.section-title.top-recruit__section-title .section-title__ja,
.section-title.top-recruit__section-title .section-title__en {
	-moz-text-align-last: left;
	text-align-last: left;
}

.top-recruit__text {
	font-size: 1rem;
	font-weight: 700;
	line-height: 2;
	margin-top: 2.375rem;
}

.top-recruit__btn.btn {
	margin-top: 4.125rem;
}

.top-recruit__img-container {
	margin-right: calc(50% - 50vw);
	width: 62.182%;
}

.top-service {
	margin-top: 5.5rem;
	position: relative;
}

.top-service::after {
	aspect-ratio: 1366/361;
	background-image: url(../images/top/service-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	display: block;
	height: auto;
	left: 0;
	max-height: 22.5625rem;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}

.inner.top-service__inner {
	padding-top: 4.8125rem;
}

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

.top-service__item-title {
	font-size: 1.375rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.7272727273;
	margin-top: 1.25rem;
	text-align: center;
}

.top-service__item-img {
	aspect-ratio: 360/281;
}

.top-service__item-img img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.top-service__btn.btn {
	margin-left: auto;
	margin-right: auto;
	margin-top: 4.6875rem;
}

.top-service__btn.btn a {
	margin-left: auto;
	margin-right: auto;
}

.top-topics {
	background-color: #f5fbec;
	overflow: hidden;
	padding-bottom: 5.375rem;
	padding-top: 4.75rem;
}

.top-topics__section-title {
	margin-left: 0;
}

.top-topics__section-title .section-title__ja,
.top-topics__section-title .section-title__en {
	-moz-text-align-last: left;
	text-align-last: left;
}

.top-topics__items {
	margin-top: 2.125rem;
	position: relative;
}

.top-topics__swiper {
	margin-right: calc(50% - 50vw);
	overflow: visible;
}

.card-button-prev {
	cursor: pointer;
	display: block;
	position: absolute;
	right: 4.25rem;
	top: -6.5625rem;
}

.card-button-prev::after {
	color: #44403f;
	content: "\f053";
	display: block;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	transition: color 0.3s;
	width: 100%;
}

.card-button-next {
	cursor: pointer;
	display: block;
	position: absolute;
	right: 0;
	top: -6.5625rem;
}

.card-button-next::after {
	color: #44403f;
	content: "\f054";
	display: block;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	transition: color 0.3s;
	width: 100%;
}

.card-button-next:hover::after,
.card-button-prev:hover::after {
	color: #036000;
}

.card {
	border-bottom: 3px solid #44403f;
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	height: auto;
	padding-bottom: 2.375rem;
	padding-top: 0.3125rem;
	transition: all 0.3s;
}

.card__link {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.card:hover {
	border-bottom: 3px solid #036000;
	opacity: 0.7;
}

.card__img {
	aspect-ratio: 343/221;
	overflow: hidden;
	position: relative;
}

.card__img img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.card__content {
	display: flex;
	flex: 1;
	flex-direction: column;
	line-height: 1.625;
	margin-left: auto;
	margin-right: auto;
	margin-top: 1.25rem;
	width: 83%;
}

.card__wrapper {
	display: flex;
	flex: 1;
	flex-direction: column;
	height: 100%;
	position: relative;
}

.card__tag-wrapper {
	aspect-ratio: 145/38;
	position: absolute;
	right: -0.625rem;
	top: -0.25rem;
	width: 10.5625rem;
	z-index: 2;
}

.card__tag-wrapper::after {
	background: url("../images/top/tag-bg.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1;
}

.card__tag {
	color: #036000;
	font-size: 0.875rem;
	font-weight: 500;
	margin-top: 0.375rem;
	position: relative;
	text-align: center;
	z-index: 2;
}

.card__title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	font-size: 1rem;
	font-weight: 700;
	overflow: hidden;
	text-overflow: ellipsis;
}

.card__date {
	color: #7c7a79;
	font-size: 0.9375rem;
	font-weight: 500;
}

.card__text {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	display: -webkit-box;
	font-size: 1rem;
	font-weight: 500;
	margin-top: 0.5625rem;
	overflow: hidden;
	text-overflow: ellipsis;
}

.top-topics__btn.btn {
	margin-top: 4.5rem;
}

.top-topics__btn.btn a {
	margin-left: auto;
	margin-right: auto;
}

.swiper-wrapper {
	align-items: stretch;
}

.top-works {
	background-color: #f5fbec;
	margin-top: 5.75rem;
	padding-bottom: 6.25rem;
	padding-top: 5.5rem;
}

.top-works__list {
	grid-gap: 2.125rem;
	display: grid;
	gap: 2.125rem;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 4.375rem;
}

.top-works__item.card {
	min-width: 0;
	width: 100%;
}

.top-works__btn.btn {
	margin-top: 4.875rem;
}

.top-works__btn.btn a {
	margin-left: auto;
	margin-right: auto;
}

.top-works__item {
	margin-left: auto;
	margin-right: auto;
}

.training-card {
	background-color: #036000;
	color: #fff;
	width: 100%;
}

.training-card__inner {
	align-items: center;
	display: flex;
	justify-content: center;
	padding: 1.8125rem 4.9375rem;
}

.training-card__title {
	font-size: 2rem;
	font-weight: 600;
	line-height: 1;
}

.training-card__text {
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.6666666667;
	margin-top: 1.3125rem;
}

.training-card__number {
	font-size: 6rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-left: max(3.75rem, min(5.33vw, 4rem));
}

.training-card__number--large {
	margin-top: -2.0625rem;
}

.training-card__number--short {
	padding-right: 1.1875rem;
}

.u-font14 {
	font-size: 0.875rem;
}

.u-font16 {
	font-size: 1rem;
}

.u-font18 {
	font-size: 1.125rem;
}

.u-font20 {
	font-size: 1.25rem;
}

.u-font22 {
	font-size: 1.375rem;
}

.u-font24 {
	font-size: 1.5rem;
}

.u-font28 {
	font-size: 1.75rem;
}

.u-font32 {
	font-size: 2rem;
}

.u-font38 {
	font-size: 2.375rem;
}

.u-font40 {
	font-size: 2.5rem;
}

.u-hover {
	transition: opacity 0.5s;
}

.u-hover:hover {
	opacity: 0.7;
	transition: opacity 0.5s;
}

.u-lh10 {
	line-height: 1;
}

.u-lh13 {
	line-height: 1.3;
}

.u-lh15 {
	line-height: 1.5;
}

.u-lh16 {
	line-height: 1.6;
}

.u-lh20 {
	line-height: 2;
}

.u-ls05 {
	letter-spacing: 0.05em;
}

.u-ls10 {
	letter-spacing: 0.1em;
}

.u-ls15 {
	letter-spacing: 0.15em;
}

.u-ls20 {
	letter-spacing: 0.2em;
}

.u-mt10 {
	margin-top: 10px !important;
	margin-top: 0.625rem !important;
}

.u-mt20 {
	margin-top: 20px !important;
	margin-top: 1.25rem !important;
}

.u-mt30 {
	margin-top: 30px !important;
	margin-top: 1.875rem !important;
}

.u-mt40 {
	margin-top: 40px !important;
	margin-top: 2.5rem !important;
}

.u-mt50 {
	margin-top: 50px !important;
	margin-top: 3.125rem !important;
}

.u-mt60 {
	margin-top: 60px !important;
	margin-top: 3.75rem !important;
}

.u-mt70 {
	margin-top: 70px !important;
	margin-top: 4.375rem !important;
}

.u-mt80 {
	margin-top: 80px !important;
	margin-top: 5rem !important;
}

.u-mt90 {
	margin-top: 90px !important;
	margin-top: 5.625rem !important;
}

.u-mt100 {
	margin-top: 100px !important;
	margin-top: 6.25rem !important;
}

.u-mt110 {
	margin-top: 110px !important;
	margin-top: 6.875rem !important;
}

.u-mt120 {
	margin-top: 120px !important;
	margin-top: 7.5rem !important;
}

.u-mt130 {
	margin-top: 130px !important;
	margin-top: 8.125rem !important;
}

.u-mt140 {
	margin-top: 140px !important;
	margin-top: 8.75rem !important;
}

.u-mt150 {
	margin-top: 150px !important;
	margin-top: 9.375rem !important;
}

.u-mt160 {
	margin-top: 160px !important;
	margin-top: 10rem !important;
}

.u-mt170 {
	margin-top: 170px !important;
	margin-top: 10.625rem !important;
}

.u-mt180 {
	margin-top: 180px !important;
	margin-top: 11.25rem !important;
}

.u-mt190 {
	margin-top: 190px !important;
	margin-top: 11.875rem !important;
}

.u-mt200 {
	margin-top: 200px !important;
	margin-top: 12.5rem !important;
}

.u-w300 {
	font-weight: 300;
}

.u-w400 {
	font-weight: 400;
}

.u-w500 {
	font-weight: 500;
}

.u-w600 {
	font-weight: 600;
}

.u-w700 {
	font-weight: 700;
}

.u-w900 {
	font-weight: 900;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) and (-webkit-min-device-pixel-ratio: 0), screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: 0.001dpcm) {

img {
	image-rendering: -webkit-optimize-contrast;
}

}

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

.br-1920-more {
	display: none;
}

}

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

.br-1480-more {
	display: none;
}

}

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

.pc-nav {
	zoom: 0.85;
}

}

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

.adoption-card__text .u-desktop {
	display: none;
}

}

@media (max-width: 1100px) {

html {
	font-size: 1.4545454545vw;
}

}

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

.interview__text {
	font-size: clamp(12px, 12px + (100vw - 768px) * 0.015686, 16px);
}

}

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

.br-1000-less {
	display: block;
}

.br-1000-more {
	display: none;
}

}

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

.u-desktop {
	display: none;
}

.u-mobile {
	display: block;
}

.br-768-less {
	display: block;
}

.br-768-more {
	display: none;
}

html {
	font-size: 16px;
}

.admin-bar .content-wrap {
	padding-top: 2.875rem;
}

.admin-bar html {
	scroll-padding-top: 7.875rem;
}

.access__address {
	font-size: 1rem;
	line-height: 1.7142857143;
	margin-top: 1.5rem;
}

.access__tel-box {
	margin-top: 0.5rem;
}

.access__tel {
	font-size: 1rem;
	line-height: 1.6111111111;
}

.access__fax {
	font-size: 1rem;
	line-height: 1.6111111111;
}

.access__map {
	aspect-ratio: 375/211;
	margin-top: 1.5rem;
}

.adoption-cards {
	padding-bottom: 3.75rem;
}

.adoption-cards__inner {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.adoption-card:nth-of-type(2),
.adoption-card:nth-of-type(3) {
	margin-top: 0;
}

.adoption-card__body {
	padding-bottom: 0.625rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	padding-top: 1.25rem;
}

.adoption-card__text {
	margin-top: 1.5rem;
}

.adoption-card--wide {
	align-items: center;
	flex-direction: column;
	margin-top: 1.75rem;
	padding: 2.5rem 1.25rem;
}

.adoption-card--wide .adoption-card__image {
	aspect-ratio: 4/3;
	margin: 0 auto 1.5rem;
	width: max(17.5rem, min(70vw, 22.5rem));
}

.adoption-card--wide .adoption-card__title {
	font-size: 1.375rem;
}

.adoption-card--wide .adoption-card__name,
.adoption-card--wide .adoption-card__name--strong {
	font-size: 1.125rem;
}

.adoption-entry__inner {
	flex-direction: column;
}

.adoption-entry__link {
	font-size: 2.3125rem;
	min-height: 10.375rem;
	padding-bottom: 1.5rem;
	padding-top: 1.5rem;
}

.adoption-entry__link i {
	bottom: 0.9375rem;
	font-size: 0.875rem;
	right: 1.25rem;
}

.adoption-entry__block--right {
	padding: 1.5rem;
}

.adoption-entry__tel {
	font-size: 1.75rem;
}

.adoption-entry__mail a {
	font-size: 1.25rem;
	gap: 0.75rem;
}

.adoption-fv {
	aspect-ratio: 683/1200;
	height: auto;
	margin-top: 3.75rem;
	max-height: none;
	min-height: auto;
}

.adoption-fv::after {
	background-image: url(../images/adoption/adoption-fv-sp.webp?ver=1.0.0);
	background-position: center top;
	background-size: 100% auto;
}

.inner .adoption-fv__inner {
	max-width: 34.375rem;
}

.adoption-fv__title {
	left: 50%;
	top: 41%;
}

.logo-wrap {
	width: 18.75rem;
}

.slogan {
	margin-top: -1.25rem;
	width: 14.6875rem;
}

.adoption-works {
	padding-bottom: 3.75rem;
	padding-top: 2.5rem;
}

.adoption-works__items {
	margin-top: 1.875rem;
}

.works-button-next.card-button-next::after {
	left: -0.9375rem;
}

.article__item {
	padding: 2.5rem 0.625rem;
}

.article__title-wrapper {
	padding-bottom: 1.25rem;
}

.article__date {
	font-size: 0.875rem;
	line-height: 1.7142857143;
}

.article__category {
	font-size: 0.75rem;
	padding: 0.0625rem 0.5rem;
}

.article__title {
	font-size: 1.125rem;
	line-height: 1.6111111111;
	margin-top: 0.75rem;
}

.article__thumbnail {
	margin-top: 1.875rem;
}

.article__content {
	font-size: 0.875rem;
	margin-top: 2.5rem;
}

.article__content h2 {
	font-size: 1.125rem;
	line-height: 1.5;
}

.page-bg {
	margin-top: 1.75rem;
	padding-bottom: 5rem;
	padding-top: 2.5rem;
}

.page-bg.page-staff-bg {
	padding-bottom: 6.25rem;
}

.page-box {
	margin-left: auto;
	margin-right: auto;
	max-width: 37.5rem;
	padding: 2.5rem 0.625rem;
}

.blog__list {
	gap: 1.25rem;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.breadcrumb {
	font-size: 0.75rem;
	padding-top: 0.75rem;
}

.btn a {
	font-size: 0.875rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 34.375rem;
	padding: 0.9375rem 1.25rem;
	width: 100%;
}

.company__box:not(:first-child) {
	margin-top: 3.75rem;
}

.company__list {
	margin-top: 1.5rem;
}

.company__item {
	gap: 0.75rem;
	padding-bottom: 1rem;
}

.company__item.company__item--gap {
	gap: 0rem;
}

.company__term {
	font-size: 1.125rem;
	text-align: left;
	width: 100%;
}

.company__desc {
	font-size: 1rem;
}

.company__img-wrap {
	grid-template-columns: 1fr;
	margin-top: 2rem;
}

.company__history {
	gap: 0.75rem;
	margin-top: 1.5rem;
}

.company__history-item {
	flex-direction: column;
	gap: 0.5rem;
	padding: 0 0 0.75rem 0;
}

.company__history-year {
	font-size: 1.125rem;
	width: 100%;
}

.company__history-desc {
	font-size: 1rem;
}

.company__performance {
	margin-top: 1.5rem;
}

.company__performance-table thead th {
	font-size: 0.9375rem;
	min-width: 6.25rem;
}

.company__performance-table {
	font-size: 0.9375rem;
	min-width: 25rem;
}

.company__performance-table th,
.company__performance-table td {
	padding: 0.5rem 0.25rem;
}

.footer {
	margin-top: 3rem;
}

.footer__fb {
	max-width: 100%;
	width: 100%;
}

.footer__nav {
	margin-top: 2.5rem;
}

.footer-nav__items {
	font-size: 0.875rem;
	gap: 1.25rem;
	grid-template-columns: repeat(2, 1fr);
}

.footer-nav__sub-items li a[target=_blank]::before {
	width: 0.75rem;
}

.footer-nav__sub-items {
	margin-top: 0.5rem;
}

.footer-nav__sub-items li:not(:first-child) {
	margin-top: 0.3125rem;
}

.footer-nav__sub-items li a {
	padding-left: 0.5rem;
}

.footer__bottom {
	margin-top: 2.5rem;
	padding-bottom: 1.75rem;
	padding-top: 1.25rem;
}

.footer__bottom-links {
	padding-bottom: 1.25rem;
}

.footer__bottom-info {
	flex-direction: column;
	font-size: 0.875rem;
	gap: 0.625rem;
	margin-top: 1.25rem;
}

.footer__copy {
	font-size: 0.75rem;
	margin-top: 2.5rem;
}

.form {
	padding-bottom: 5rem;
	padding-top: 3.75rem;
}

.form__body {
	padding: 1.875rem 0.9375rem;
}

.form__title {
	font-size: 1.125rem;
}

.form__buttons-wrap {
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	width: 100%;
}

.form__wrap {
	padding: 0 0.9375rem;
}

.form__description {
	font-size: 0.9375rem;
}

.form__form-title {
	font-size: 1rem;
}

.form__field,
.form__item {
	flex-direction: column;
	padding: 0.625rem 0 0.9375rem;
}

.form__label,
.form__term {
	font-size: 0.875rem;
	width: 100%;
}

.form__label.form__label--accept,
.form__term.form__term--accept {
	font-size: 1rem;
}

.form__data,
.form__definition {
	width: 100%;
}

.form__definition {
	margin-top: 0.625rem;
}

.form__input,
.form__select,
.form__textarea,
.form__acceptance-text {
	padding: 0.4375rem;
}

.form__acceptance-text {
	font-size: 0.875rem;
	padding: 1.5625rem;
}

.form__data,
.form__data-radio,
.form__data-select,
.form__data-check {
	margin-top: 0.5rem;
}

.wpcf7-form-control-wrap[data-name=privacy] .wpcf7-list-item-label {
	padding-left: 1.875rem;
}

.wpcf7-form-control-wrap[data-name=privacy] .wpcf7-list-item-label::before {
	height: 0.9375rem;
	top: 0.375rem;
	width: 0.9375rem;
}

.wpcf7-form-control-wrap[data-name=privacy] .wpcf7-list-item-label::after {
	top: 0.4375rem;
}

.form__submit-button {
	margin-top: 1.25rem;
}

.form__submit-input,
.form__confirm-input,
.form__returnbutton {
	font-size: 0.875rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 34.375rem;
	padding: 0.9375rem 1.25rem;
	width: 100%;
}

.form__confirm-input {
	min-width: 250px;
}

.form__agree::before {
	top: 0.1875rem;
}

.form__agree::after {
	top: 0.4375rem;
}

.fv {
	margin-top: 3.75rem;
}

.fv__slide-img {
	aspect-ratio: 375/607;
}

.fv__slide-img img {
	-o-object-position: top left;
	object-position: top left;
}

.fv__copy {
	left: 5%;
	right: 5%;
	top: 22%;
}

.fv__main-copy {
	width: 15rem;
}

.fv__sub-copy {
	margin-top: 1.25rem;
	width: 100%;
}

.greeting__img {
	aspect-ratio: 375/275;
}

.greeting__text {
	font-size: 0.9375rem;
	line-height: 1.5714285714;
	margin-top: 2rem;
}

.greeting__name {
	font-size: 1.125rem;
	margin-top: 1.5rem;
}

.header {
	height: 3.75rem;
}

.admin-bar .header {
	top: 2.875rem;
}

.header__inner {
	padding-left: 0rem;
	padding-right: 1.25rem;
}

.header__logo {
	z-index: 50;
}

.header__logoLink img {
	height: 3.75rem;
	width: auto;
}

.header__pc-nav {
	display: none;
}

.header__sp-nav {
	display: block;
}

.header__drawer {
	display: block;
}

.inner {
	max-width: 37.5rem;
	padding-left: 20px;
	padding-right: 20px;
}

.interview__info {
	bottom: -0.625rem;
	max-width: 11.5625rem;
	right: 1rem;
}

.interview__visual--reverse .interview__info {
	bottom: 1rem;
	left: 1rem;
	transform: translateY(0);
}

.interview__position {
	font-size: 0.875rem;
}

.interview__name {
	flex-direction: column;
	gap: 0.3125rem;
	margin-top: 0.40625rem;
}

.interview__name.interview__name--reverse {
	gap: 0;
}

.interview__name-text {
	font-size: 1.15rem;
}

.interview__join {
	font-size: 0.85rem;
}

.interview__body:nth-of-type(1) {
	margin-top: 3.75rem;
}

.interview__body:nth-of-type(2) {
	margin-top: 2.5rem;
}

.interview__body:nth-of-type(3) {
	margin-top: 2.5rem;
}

.interview__flex {
	flex-direction: column;
}

.interview__flex--reverse .interview__image-block {
	margin-left: 0;
}

.interview__text-block {
	margin-left: 0;
	min-width: 12.5rem;
}

.interview__title {
	font-size: 1.25rem;
	margin-top: 1.875rem;
	text-align: center;
}

.interview__text {
	font-size: 1rem;
}

.page-adoption-fv__inner {
	padding: max(1rem, min(4.267vw, 2rem));
	padding-top: 0;
}

.page-adoption-fv__en {
	font-size: max(0.75rem, min(3.2vw, 1rem));
}

.page-adoption-fv__ja {
	font-size: max(1.375rem, min(6.933vw, 2.5rem));
}

.page-adoption-interview {
	padding-bottom: 5rem;
	padding-top: 5rem;
}

.page-adoption-interview__list:not(:first-child) {
	margin-top: 6.25rem;
}

.page-adoption-interview__section-heading {
	left: 6.6%;
}

.page-adoption-interview__heading-text {
	font-size: 1.25rem;
}

.page-adoption-interview__heading-number {
	font-size: 1.75rem;
}

.page-adoption-message {
	padding-bottom: 0rem;
	padding-top: 0rem;
}

.page-adoption-message__inner.inner {
	padding-left: 0;
	padding-right: 0;
}

.page-adoption-message__inner.inner .breadcrumb {
	margin-bottom: 1.25rem;
	margin-right: 1.25rem;
}

.page-adoption-message__bg {
	background-image: url("../images/adoption/message-bg02.webp?ver=1.0.0");
	background-position: center top;
	background-repeat: repeat-y;
	background-size: auto;
	padding-bottom: 1.875rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	padding-top: 1.875rem;
}

.page-adoption-message__wrapper {
	padding-bottom: 1.875rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	padding-top: 1.875rem;
}

.page-adoption-message__header {
	align-items: center;
	flex-direction: column-reverse;
	justify-content: center;
	padding: 0;
}

.page-adoption-message__logo img {
	max-width: 10.4375rem;
}

.page-adoption-message__body {
	margin-top: 1.875rem;
}

.page-adoption-message__text,
.page-adoption-message__name {
	font-size: 0.875rem;
}

.page-adoption-message__text + .page-adoption-message__text {
	margin-top: 1.875rem;
}

.page-adoption-message__name {
	margin-top: 1.5rem;
}

.page-adoption-message__name--strong {
	font-size: 1.25rem;
}

.page-adoption-point {
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.page-adoption-point__contents:not(:first-of-type) {
	margin-top: 3.75rem;
}

.page-adoption-point__content {
	align-items: flex-start;
	flex-direction: column;
}

.page-adoption-point__content--medium {
	padding: 0.875rem;
}

.page-adoption-point__content--large {
	padding: 0.9375rem;
}

.page-adoption-point__content--culture {
	padding: 0.9375rem;
}

.page-adoption-point__heading {
	font-size: 1.125rem;
	padding-left: 0;
}

.page-adoption-point__heading--balance {
	padding-left: 0;
}

.page-adoption-point__flex {
	flex-direction: column;
	margin-top: 0.875rem;
}

.page-adoption-point__text {
	font-size: 0.875rem;
}

.page-adoption-point__text--culture {
	margin-top: 0;
}

.page-adoption-point__image--medium {
	margin-left: 0;
	margin-top: 0.875rem;
}

.page-adoption-point__image--large {
	margin-right: 0;
	margin-top: 0.875rem;
}

.page-adoption-point__video {
	margin-top: 0.875rem;
}

.page-adoption-training {
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.page-adoption-training__contents {
	padding: 1.875rem 1.25rem;
}

.page-adoption-training__description {
	margin-top: 1.25rem;
}

.page-adoption-training__heading {
	font-size: 1.125rem;
}

.page-adoption-training__text {
	font-size: 0.875rem;
}

.page-adoption-training__cards {
	margin-top: 1.875rem;
}

.page-adoption-training__card:not(:first-of-type) {
	margin-top: 1.5625rem;
}

.page-adoption {
	margin-top: 3.75rem;
}

.page-certification__text {
	font-size: 1rem;
	margin-top: 2.5rem;
}

.page-certification__list {
	gap: 0.75rem;
	margin-top: 1.5rem;
}

.page-certification__link {
	font-size: 0.9375rem;
}

.page-error {
	padding-bottom: 5rem;
	padding-top: 6.25rem;
}

.page-error__title {
	font-size: 1.375rem;
}

.page-error__text {
	font-size: 0.9375rem;
	margin-top: 1.5rem;
}

.page-fv {
	aspect-ratio: 375/170;
	margin-top: 3.75rem;
}

.page-fv.page-fv--short {
	aspect-ratio: 375/100;
}

.inner.page-fv__inner {
	max-width: 34.375rem;
}

.page-fv.support-fv::after {
	background-image: url(../images/common/support-fv-sp.jpg);
}

.page-fv__title {
	font-size: 1.5rem;
	line-height: 1.3636363636;
}

.page-service {
	margin-bottom: 6.25rem;
	margin-top: 2.5rem;
}

.page-service__text {
	font-size: 1.375rem;
	line-height: 1.5909090909;
}

.page-service__sub-text {
	font-size: 0.875rem;
	margin-top: 1.5rem;
}

.page-service__management {
	margin-top: 3.5rem;
}

.page-service__axis-list {
	grid-template-columns: repeat(2, 1fr);
}

.page-service__axis-item {
	gap: 1rem;
	justify-content: center;
	padding: 1rem;
}

.page-service__axis-icon {
	height: 4.375rem;
}

.page-service__axis-title {
	font-size: 1.125rem;
}

.page-service__main {
	margin-top: 3.875rem;
}

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

.page-service__nav-list {
	grid-template-columns: repeat(1, 1fr);
}

.page-service__nav-link {
	font-size: 0.875rem;
	padding: 0.75rem 0rem;
}

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

.page-service__section-title {
	font-size: 1.375rem;
	padding: 0.625rem 1.25rem;
}

.page-service__section-box {
	flex-direction: column;
	margin-top: 1.25rem;
}

.page-service__section-message {
	font-size: 1.25rem;
	line-height: 1.6;
}

.page-service__section-text {
	font-size: 0.875rem;
	line-height: 2;
	margin-top: 1.25rem;
}

.page-service__section-image {
	width: 100%;
}

.page-service__section-wrap {
	margin-top: 2.5rem;
}

.page-service__section-wrap-title {
	font-size: 1.25rem;
	line-height: 1.4;
}

.page-service__section-wrap-text {
	font-size: 0.875rem;
	line-height: 2;
}

.page-service__section-wrap-img-list {
	grid-template-columns: repeat(2, 1fr);
	margin-top: 1.5rem;
}

.page-service__section-wrap-list {
	gap: 0rem;
	grid-auto-flow: row;
	grid-template-columns: repeat(2, 1fr);
	margin-top: 0.875rem;
}

.page-service__section-wrap-list.page-service__section-wrap-list--private {
	grid-auto-flow: row;
	grid-template-columns: repeat(2, 1fr);
}

.page-service__section-wrap-list.page-service__section-wrap-list--partners {
	grid-auto-flow: row;
	grid-template-columns: repeat(2, 1fr);
}

.page-service__section-wrap-item {
	font-size: 0.875rem;
	line-height: 2;
}

.page-service__section-wrap-item span {
	font-size: 0.625rem;
}

.page-service__section-process-message {
	font-size: 1.125rem;
	line-height: 1.6111111111;
	margin-top: 1.25rem;
}

.page-service__section-process-text {
	font-size: 0.875rem;
	line-height: 2;
	margin-top: 0.625rem;
}

.page-service__process-list {
	gap: 1.875rem;
	margin-top: 2rem;
}

.page-service__process-number {
	font-size: 1.25rem;
	width: 2.5rem;
}

.page-service__process-title {
	font-size: 1.125rem;
	line-height: 1.6111111111;
	padding: 0.5rem 1rem;
}

.page-service__process-text {
	font-size: 0.875rem;
	margin-top: 0.625rem;
	padding: 0.5rem 1rem;
}

.page-service__section-partners-text {
	font-size: 0.875rem;
	line-height: 2;
	margin-top: 1.25rem;
}

.page-staff__list {
	grid-template-columns: repeat(1, 1fr);
	row-gap: 0.75rem;
}

.page-staff__link {
	font-size: 0.875rem;
}

.page-staff__link-icon {
	font-size: 1rem;
	margin-right: 0.75rem;
}

.page-staff__articles {
	gap: 0.625rem;
	margin-top: 2.5rem;
}

.page-staff__article {
	padding: 2rem 0rem;
}

.page-staff__article:nth-child(2n) .page-staff__top {
	flex-direction: column;
}

.page-staff__top {
	flex-direction: column;
	gap: 0;
}

.page-staff__top-content {
	display: contents;
	margin-left: 0;
}

.page-staff__head {
	order: 1;
	padding-left: 1rem;
}

.page-staff__title {
	font-size: 0.875rem;
	line-height: 1.4285714286;
}

.page-staff__subtitle {
	font-size: 0.875rem;
	line-height: 1.4285714286;
}

.page-staff__message-title {
	font-size: 1.1875rem;
	line-height: 1.6;
	margin-top: 1rem;
	order: 2;
}

.page-staff__toggle {
	margin-top: 1.5rem;
	order: 4;
}

.page-staff__image {
	margin-top: 1.5rem;
	order: 3;
	width: 100%;
}

.page-staff__content {
	margin-top: 2rem;
}

.page-staff__text {
	font-size: 0.875rem;
}

.page-staff__project {
	margin-top: 2rem;
}

.page-staff__project-title {
	font-size: 1.125rem;
	line-height: 1.7777777778;
	padding: 0.75rem 1.5rem;
}

.page-staff__project-content {
	flex-direction: column;
	gap: 0;
	padding: 1.5rem 1.5rem;
}

.page-staff__project-info {
	display: contents;
}

.page-staff__project-name {
	font-size: 1rem;
	order: 1;
}

.page-staff__project-client {
	font-size: 0.875rem;
	order: 2;
}

.page-staff__project-link-btn {
	margin-top: 1.5rem;
	order: 4;
}

.page-staff__project-image {
	margin-top: 1.125rem;
	order: 3;
	position: static;
	width: 100%;
}

.pagenavi {
	margin-top: 3.75rem;
}

.wp-pagenavi {
	margin-top: 3.75rem;
}

.pagenavi__wrap {
	gap: 1rem;
}

.pagenavi__previous,
.pagenavi__next {
	font-size: 0.8125rem;
}

.pagenavi__all.btn a {
	width: 9.375rem;
}

.partners__list {
	gap: 1rem;
	margin-top: 2rem;
}

.partners__item {
	gap: 0.75rem;
	padding-bottom: 1rem;
}

.partners__item dt {
	font-size: 1.125rem;
	text-align: left;
	width: 100%;
}

.partners__item dd {
	font-size: 0.875rem;
	padding-top: 0rem;
}

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

.policy__main-img {
	max-width: 28.125rem;
	width: 100%;
}

.policy__copy {
	font-size: 1rem;
	gap: 0.625rem;
	line-height: 1.8;
	padding-bottom: 0.625rem;
	padding-top: 0.625rem;
}

.policy__list {
	gap: 1.75rem;
	margin-top: 1.875rem;
}

.policy__item {
	flex-direction: column;
	gap: 0rem;
}

.policy__item:nth-child(even) {
	flex-direction: column;
	gap: 1.25rem;
	justify-content: center;
}

.policy__circle {
	margin-left: auto;
	margin-right: auto;
	max-width: 18.75rem;
	width: 70%;
}

.policy__desc {
	font-size: 1rem;
	text-align: center;
}

.policy__title {
	font-size: 1.625rem;
	margin-top: 2.5rem;
}

.policy__message {
	font-size: 1rem;
	margin-top: 0.625rem;
}

.policy__message--first {
	margin-top: 1.875rem;
}

.policy__name {
	font-size: 1.125rem;
	margin-top: 1.25rem;
}

.privacy-policy {
	font-size: 0.9375rem;
}

.privacy-policy__intro {
	margin-top: 2rem;
}

.privacy-policy__title {
	font-size: 1.125rem;
	margin-top: 1.75rem;
}

.privacy-policy__year {
	margin-top: 2.5rem;
}

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

.section-heading.page-adoption-point__section-heading {
	margin-left: 0.875rem;
	margin-top: -0.875rem;
}

.section-heading--reverse {
	right: 6.6%;
}

.section-title__ja {
	font-size: 2rem;
}

.section-title__en {
	font-size: 0.875rem;
}

.page-section-title {
	border-left: 5px solid #036000;
	font-size: 1.375rem;
	padding-left: 0.5rem;
}

.sp-nav {
	background-color: #036000;
	color: #fff;
	height: 100svh;
	overflow-y: auto;
	padding-bottom: 2.1875rem;
	padding-top: 0.625rem;
	position: fixed;
	right: 0;
	top: 0;
	transform: translate(100%);
	transition: all 0.3s;
	width: 100%;
	z-index: 100;
}

.sp-nav__items {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 2.375;
	margin-top: 1rem;
}

.sp-nav__sub-items li a {
	padding-left: 0.9375rem;
}

.sp-nav__sub-items li a::after {
	width: 0.375rem;
}

.support__lead {
	font-size: 0.9375rem;
	line-height: 1.8666666667;
	text-align: left;
}

.support__cards {
	gap: 2.25rem;
	margin-top: 2.25rem;
}

.support__title span {
	font-size: 1rem;
}

.support__heading {
	align-items: start;
	flex-direction: column;
	gap: 0.75rem;
}

.support__content {
	gap: 1.25rem;
	grid-template-columns: 1fr;
	margin-top: 1rem;
}

.support__detail {
	gap: 1rem;
}

.support__logo {
	margin-left: auto;
	margin-right: auto;
	width: 80%;
}

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

.support__official-link {
	justify-content: center;
	width: 100%;
}

.tab {
	margin-top: 1.75rem;
}

.tab__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.tab__link {
	font-size: 0.875rem;
	line-height: 2.0714285714;
	padding: 0.625rem 0.1875rem;
}

.tab__link-icon {
	font-size: 1rem;
	right: 0.625rem;
}

.tab__list.tab__list--company {
	gap: 0.5rem;
	grid-template-columns: repeat(2, 1fr);
}

.top-blog {
	margin-top: 3.75rem;
	padding-bottom: 3.75rem;
	padding-top: 2.5rem;
}

.inner.top-blog__inner {
	max-width: 34.375rem;
}

.top-blog__items {
	margin-top: 2.5rem;
}

.top-blog__btn.btn {
	margin-top: 2.5rem;
}

.top-message::after {
	aspect-ratio: 762/495;
	left: 0;
	max-height: 15.1875rem;
	width: 100%;
}

.inner.top-message__inner {
	max-width: 34.375rem;
}

.top-message__content {
	margin-top: 17.5rem;
	max-width: none;
	width: 100%;
}

.top-message__title {
	font-size: 1.1875rem;
}

.top-message__description {
	font-size: 0.875rem;
	margin-top: 1.25rem;
}

.top-message__company {
	font-size: 1rem;
	margin-top: 1.875rem;
}

.top-message__location span {
	font-size: 1rem;
	margin-right: 1.25rem;
}

.top-message__btn.btn {
	margin-top: 2.5rem;
}

.inner.top-recruit__inner {
	flex-direction: column-reverse;
	gap: 2.5rem;
	max-width: 34.375rem;
}

.top-recruit__content {
	padding-top: 0rem;
	width: 100%;
}

.top-recruit__text {
	font-size: 0.875rem;
	margin-top: 1.25rem;
}

.top-recruit__btn.btn {
	margin-top: 2.5rem;
}

.top-recruit__img-container {
	margin-left: calc(50% - 50vw);
	width: 100vw;
}

.top-service {
	margin-top: 3.75rem;
}

.top-service::after {
	aspect-ratio: 762/259;
}

.inner.top-service__inner {
	max-width: 34.375rem;
	padding-top: 5rem;
}

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

.top-service__item-title {
	font-size: 1.125rem;
	margin-top: 0.75rem;
}

.top-topics {
	padding-bottom: 3.75rem;
	padding-top: 2.5rem;
}

.inner.top-topics__inner {
	max-width: 34.375rem;
}

.top-topics__items {
	margin-top: 2.5rem;
}

.card__content {
	width: 90%;
}

.card__title {
	font-size: 0.9375rem;
}

.card__date {
	font-size: 0.875rem;
}

.card__text {
	font-size: 0.875rem;
}

.top-topics__btn.btn {
	margin-top: 2.5rem;
}

.top-works {
	margin-top: 3.4375rem;
	padding-bottom: 6.25rem;
	padding-top: 2.8125rem;
}

.inner.top-works__inner {
	max-width: 34.375rem;
}

.top-works__list {
	gap: 1.25rem;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	margin-top: 2.5rem;
}

.top-works__btn.btn {
	margin-top: 2.5rem;
}

.training-card__inner {
	align-items: flex-start;
	flex-direction: column;
	padding: 1.5rem;
}

.training-card__title {
	font-size: 1.25rem;
	text-align: center;
}

.training-card__text {
	font-size: 0.875rem;
}

.training-card__number {
	font-size: 2.5rem;
	margin-left: 0;
	margin-top: 0.625rem;
	text-align: right;
	width: 100%;
}

.training-card__number--short {
	padding-right: 0.5rem;
}

.u-mtSp10 {
	margin-top: 10px !important;
	margin-top: 0.625rem !important;
}

.u-mtSp20 {
	margin-top: 20px !important;
	margin-top: 1.25rem !important;
}

.u-mtSp30 {
	margin-top: 30px !important;
	margin-top: 1.875rem !important;
}

.u-mtSp40 {
	margin-top: 40px !important;
	margin-top: 2.5rem !important;
}

.u-mtSp50 {
	margin-top: 50px !important;
	margin-top: 3.125rem !important;
}

.u-mtSp60 {
	margin-top: 60px !important;
	margin-top: 3.75rem !important;
}

.u-mtSp70 {
	margin-top: 70px !important;
	margin-top: 4.375rem !important;
}

.u-mtSp80 {
	margin-top: 80px !important;
	margin-top: 5rem !important;
}

.u-mtSp90 {
	margin-top: 90px !important;
	margin-top: 5.625rem !important;
}

.u-mtSp100 {
	margin-top: 100px !important;
	margin-top: 6.25rem !important;
}

.u-mtSp110 {
	margin-top: 110px !important;
	margin-top: 6.875rem !important;
}

.u-mtSp120 {
	margin-top: 120px !important;
	margin-top: 7.5rem !important;
}

.u-mtSp130 {
	margin-top: 130px !important;
	margin-top: 8.125rem !important;
}

.u-mtSp140 {
	margin-top: 140px !important;
	margin-top: 8.75rem !important;
}

.u-mtSp150 {
	margin-top: 150px !important;
	margin-top: 9.375rem !important;
}

.u-mtSp160 {
	margin-top: 160px !important;
	margin-top: 10rem !important;
}

.u-mtSp170 {
	margin-top: 170px !important;
	margin-top: 10.625rem !important;
}

.u-mtSp180 {
	margin-top: 180px !important;
	margin-top: 11.25rem !important;
}

.u-mtSp190 {
	margin-top: 190px !important;
	margin-top: 11.875rem !important;
}

.u-mtSp200 {
	margin-top: 200px !important;
	margin-top: 12.5rem !important;
}

}

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

.br-500-less {
	display: block;
}

}

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

.br-414-less {
	display: block;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}


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