@charset "UTF-8";

/*================
文書系ページ（ご利用にあたって・プライバシーポリシー）
================*/
/* リード〜各項は mb-160、以降の項間は 80px（inner の gap と二重にならないよう調整） */
.page-legalnotice .section.sec-privacy > .inner-1000,
.page-privacy .section.sec-privacy > .inner-1000 {
    gap: 0;
}
.page-legalnotice .section.sec-privacy > .inner-1000 > .sec-wrap + .sec-wrap,
.page-privacy .section.sec-privacy > .inner-1000 > .sec-wrap + .sec-wrap {
    margin-top: 80px;
}
.page-legalnotice .section.sec-privacy > .inner-1000 > .sec-wrap.mb-160 + .sec-wrap,
.page-privacy .section.sec-privacy > .inner-1000 > .sec-wrap.mb-160 + .sec-wrap {
    margin-top: 0;
}

/*================
ご利用にあたって
================*/
.page-legalnotice .main > .sec-contact {
    margin-top: 160px;
}
.page-legalnotice .bc-wrap.sp-mode-01 + .sec-contact {
    margin-top: 160px;
}

/*================
404 Not Found
================*/
.page-notfound .page-head .ttl-01 {
    margin-bottom: 80px;
}
.sec-notfound > .inner-1320 {
    gap: 0;
}
.page-notfound .main > .sec-contact {
    margin-top: 160px;
}
.page-notfound .bc-wrap.sp-mode-01 + .sec-contact {
    margin-top: 160px;
}

.notfound-wrap {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    /* gap: 40px; */
    min-height: 454px;
    margin-top: 80px;
}
.notfound-en {
    position: relative;
    z-index: 2;
    flex: 0 0 100%;
    width: 100%;
    margin: 0;
    color: var(--color-main);
    font-family: "Josefin Slab", "Times New Roman", Times, serif;
    font-size: 65px;
    font-weight: 400;
    line-height: 1.4;
    text-align: center;
}
.notfound-txt {
    position: relative;
    z-index: 2;
    padding-top: 65px;
}
.notfound-visual {
    position: absolute;
    /* .inner-1320 基準から、ページ（wrapper）右端まで突き出す */
    right: calc((max(100vw, var(--site-min-width)) - 100%) / -2);
    top: 20px;
    z-index: 1;
    width: min(80%, 1052px);
    pointer-events: none;
}
.notfound-img {
    margin: 0;
}
.notfound-img img {
    display: block;
    width: 100%;
    height: auto;
}

/* SP
----------------------------------------------------------*/
@media only screen and (max-width: 768px) {
    .page-legalnotice .section.sec-privacy > .inner-1000 > .sec-wrap + .sec-wrap,
    .page-privacy .section.sec-privacy > .inner-1000 > .sec-wrap + .sec-wrap {
        margin-top: 19.532vw;
    }
    .page-legalnotice .section.sec-privacy > .inner-1000 > .sec-wrap.mb-160 + .sec-wrap,
    .page-privacy .section.sec-privacy > .inner-1000 > .sec-wrap.mb-160 + .sec-wrap {
        margin-top: 0;
    }
    /* SPパンくず余白は site_frame_sp の共通指定（上250 / 下20）に委譲 */
    .page-legalnotice .main > .sec-contact,
    .page-legalnotice .bc-wrap.sp-mode-01 + .sec-contact {
        margin-top: 0;
    }

    /* ヘッダー〜タイトル余白は site_frame_sp の共通指定（y=392）に委譲 */
    .page-notfound .page-head .ttl-01 {
        margin-bottom: 19.532vw; /* タイトル〜Not Found 150 */
    }
    .page-notfound .main > .sec-contact,
    .page-notfound .bc-wrap.sp-mode-01 + .sec-contact {
        margin-top: 0;
    }

    .notfound-wrap {
        display: block;
        min-height: 0;
        margin-top: 0;
    }
    .notfound-en {
        margin-bottom: 19.532vw; /* Not Found〜本文 150（758→1048） */
        font-size: 13.021vw;
    }
    .notfound-txt {
        padding-top: 0;
        margin-bottom: 19.532vw;
    }
    .notfound-txt .txt-02 {
        font-size: 4.688vw;
        line-height: 1.9;
    }
    .notfound-visual {
        position: relative;
        right: auto;
        top: auto;
        width: 100vw;
        margin-top: -53.385vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
    }
    .notfound-img img {
        width: 100%;
    }
}

/*================
HOME
================*/
#home .wrapper {
	padding-top: 0;
}

#home .u-visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

#home .about-btn-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 32px;
	margin: 0;
}
#home .about-btn-row .btn-01 {
	margin: 0;
}
/* について: リード〜ボタン 80px（sec-wrap gap 40 + 40） */
#home .sec-home-about .about-btn-row {
	margin-top: 40px;
}

/* MV
----------------------------------------------------------*/
#home .home-mv {
	position: relative;
}
#home .home-mv + .section {
	margin-top: 80px;
}
#home .home-mv-splide {
	position: relative;
}
#home .home-mv-visual {
	position: relative;
	width: 100%;
	height: 798px;
	overflow: hidden;
}
#home .home-mv-visual .splide__list {
	height: 100%;
}
#home .home-mv-visual .splide__slide {
	position: relative;
	height: 100%;
	overflow: hidden;
}
#home .home-mv-visual .splide__slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
}
#home .home-mv-inner {
	/* 1600超は中央寄せのアートボード基準（Figma 1600） */
	--mv-frame-inset: max(0px, calc((100% - 1600px) / 2));
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	z-index: 2;
	height: 798px;
	pointer-events: none;
}
#home .home-mv-copy-bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	pointer-events: none;
}
#home .home-mv-copy-bg img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: left center;
}
#home .home-mv-copy {
	position: absolute;
	left: calc(var(--mv-frame-inset) + 180px);
	top: 211px;
	z-index: 1;
	display: flex;
	align-items: flex-start;
	gap: 56px;
	max-width: calc(1600px - 180px);
	box-sizing: border-box;
}
#home .home-mv-sub {
	display: flex;
	flex-direction: row-reverse;
	gap: 16px;
	margin: 0 0 0 19px;
	padding-top: 5px;
	letter-spacing: 4px;
}
#home .home-mv-sub-col {
	display: block;
	color: #222;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.25;
	writing-mode: vertical-rl;
	text-orientation: upright;
	white-space: nowrap;
	letter-spacing: 4px;
}
#home .home-mv-catch {
	display: flex;
	flex-direction: row-reverse;
	gap: 18px;
	margin: 0;
}
#home .home-mv-catch-col {
	display: block;
	font-size: 50px;
	font-weight: 600;
	line-height: 1.25;
	writing-mode: vertical-rl;
	text-orientation: mixed;
	white-space: nowrap;
	letter-spacing: 13px;
}
#home .home-mv-catch-col .c {
	color: var(--color-main);
}
#home .home-mv-catch-col .a {
	color: #AFC400;
}
#home .home-mv-deco {
	position: absolute;
	left: calc(var(--mv-frame-inset) + 140px);
	top: 535px;
	width: 301px;
}
#home .home-mv-deco img {
	display: block;
	width: 100%;
	height: 82px;
}
#home .home-mv-pager {
	position: absolute;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	box-sizing: border-box;
	width: 330px;
	height: 100px;
	padding: 40px 80px;
	background: #fff;
	border-radius: 20px 20px 0 0;
	pointer-events: auto;
}
#home .home-mv-pager .splide__arrows {
	position: static;
	display: contents;
}
#home .home-mv-pager .splide__arrow {
	position: static;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--color-main);
	opacity: 1;
	transform: none;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}
#home .home-mv-pager .splide__arrow--prev {
	order: 1;
}
#home .home-mv-pager .splide__pagination {
	order: 2;
}
#home .home-mv-pager .splide__arrow--next {
	order: 3;
}
#home .home-mv-pager .splide__arrow svg {
	display: block;
	width: 20px;
	height: 20px;
}
#home .home-mv-pager .splide__arrow:disabled {
	opacity: 0.35;
	cursor: default;
}
#home .home-mv-pager .splide__arrow:focus-visible {
	outline: 2px solid var(--color-main);
	outline-offset: 2px;
}
#home .home-mv-pager .splide__pagination {
	position: static;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
	transform: none;
	pointer-events: auto;
}
#home .home-mv-pager .splide__pagination__page {
	display: block;
	width: 10px;
	height: 10px;
	margin: 0;
	padding: 0;
	border: 1px solid var(--color-main);
	border-radius: 50%;
	background: #fff;
	opacity: 1;
	transform: none;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}
#home .home-mv-pager .splide__pagination__page.is-active {
	width: 10px;
	height: 10px;
	border-color: var(--color-main);
	background: var(--color-main);
	transform: none;
}
#home .home-mv-ctrl {
	position: absolute;
	right: 370px; /* pager 330 + gap 40 */
	bottom: 20px;
	z-index: 3;
	display: block;
	width: 60px;
	height: 60px;
	padding: 0;
	border: 0;
	background: transparent;
	pointer-events: auto;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}
#home .home-mv-ctrl:focus-visible {
	outline: 2px solid var(--color-main);
	outline-offset: 2px;
	border-radius: 50%;
}
#home .home-mv-ctrl-icon {
	display: block;
	width: 100%;
	height: 100%;
}
#home .home-mv-ctrl-icon svg {
	display: block;
	width: 100%;
	height: 100%;
}
#home .home-mv-ctrl-icon--play {
	display: none;
}
#home .home-mv-ctrl[aria-pressed="true"] .home-mv-ctrl-icon--pause {
	display: none;
}
#home .home-mv-ctrl[aria-pressed="true"] .home-mv-ctrl-icon--play {
	display: block;
}
#home .home-mv-cta {
	position: relative;
	z-index: 2;
	margin-top: 40px;
	pointer-events: none;
}
#home .home-mv-cta .inner-1320 {
	gap: 0;
}
#home .home-mv-cta-inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 32px;
	box-sizing: border-box;
	min-height: 136px;
	padding: 40px 60px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
	pointer-events: auto;
}
#home .home-mv-cta-inner .btn-01 {
	margin: 0;
}
#home .home-mv-cta-inner .btn-01.lg a {
	min-width: 350px;
}

/* お知らせ
----------------------------------------------------------*/
#home .sec-home-news > .inner-1320 {
	gap: 0;
}
#home .sec-home-news .sec-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
}
#home .sec-home-news .ttl-01 {
	margin: 0;
}
#home .home-news-list {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 40px;
	margin: 0;
	padding: 37px 0 0;
	list-style: none;
	border-top: 1px solid var(--color-border);
}
#home .home-news-list > li {
	display: flex;
	flex-direction: column;
	gap: 40px;
}
#home .home-news-list > li::after {
	content: "";
	display: block;
	width: 100%;
	border-bottom: 1px solid var(--color-border);
}
#home .home-news-list > li > a {
	display: flex;
	align-items: center;
	gap: 40px;
	padding: 0 40px;
	color: #222;
	text-decoration: none;
}
#home .home-news-list .news-meta {
	display: flex;
	align-items: center;
	gap: 40px;
	flex-shrink: 0;
}
#home .home-news-list .news-date {
	width: 150px;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.5;
}
#home .home-news-list .news-label {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 150px;
	padding: 2px 0;
	border: 1px solid var(--color-main);
	border-radius: 8px;
	color: var(--color-main);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
	white-space: nowrap;
}
#home .home-news-list .news-label.type-important {
	border-color: #D96B6B;
	color: #D96B6B;
}
#home .home-news-list .news-body {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 80px;
	flex: 1;
	min-width: 0;
}
#home .home-news-list .news-ttl {
	flex: 1;
	min-width: 0;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
}
#home .home-news-list .arrow2 {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	color: var(--color-main);
}
#home .home-news-list .arrow2 > svg {
	width: 20px;
	height: 20px;
}
#home .home-news-list > li > a:hover .news-ttl {
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* 施設検索
----------------------------------------------------------*/
#home .sec-home-facility {
	background-color: #F7F9F4;
	padding-top: 80px;
	padding-bottom: 80px;
}
#home .sec-home-facility + .sec-home-professional {
	margin-top: 0;
}
#home .sec-home-facility > .inner-1320 {
	gap: 0;
}
#home .home-facility-wrap {
	display: grid;
	grid-template-columns: 1fr 568px;
	grid-template-areas:
		"txt map"
		"btns map";
	column-gap: 40px;
	align-items: start;
}
#home .home-facility-txt {
	grid-area: txt;
	min-width: 0;
}
#home .home-facility-txt .ttl-02 {
	margin: 0 0 20px;
}
#home .home-facility-txt .txt-01 {
	margin: 0 0 40px;
}
#home .home-facility-btns {
	grid-area: btns;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 350px));
	gap: 20px 20px;
}
#home .home-facility-btns .btn-01 {
	margin: 0;
}
#home .home-facility-btns .btn-01 a {
	width: 100%;
	max-width: 350px;
}
#home .home-btn-pref.type-osaka a {
	border-color: #D96B6B;
	color: #D96B6B;
}
#home .home-btn-pref.type-osaka a .arrow2 {
	color: #D96B6B;
}
#home .home-btn-pref.type-kyoto a {
	border-color: var(--color-main);
	color: var(--color-main);
}
#home .home-btn-pref.type-hyogo a {
	border-color: #5FA8D3;
	color: #5FA8D3;
}
#home .home-btn-pref.type-hyogo a .arrow2 {
	color: #5FA8D3;
}
#home .home-btn-pref.type-nara a {
	border-color: var(--color-accent);
	color: var(--color-accent);
}
#home .home-btn-pref.type-nara a .arrow2 {
	color: var(--color-accent);
}
#home .home-facility-map {
	grid-area: map;
	width: 568px;
	margin: 0;
}
#home .home-facility-map img {
	display: block;
	width: 100%;
	height: auto;
}

/* ケアマネ・医療従事者
----------------------------------------------------------*/
#home .sec-home-professional {
	background-color: #FEFAF1;
	padding-top: 80px;
	padding-bottom: 80px;
}
#home .sec-home-professional > .inner-1320 {
	gap: 0;
}
#home .home-professional-wrap {
	display: grid;
	grid-template-columns: 1fr 568px;
	grid-template-areas:
		"txt img"
		"btns img";
	column-gap: 32px;
	align-items: start;
}
#home .home-professional-txt {
	grid-area: txt;
	min-width: 0;
}
#home .home-professional-txt .ttl-02 {
	margin: 0 0 20px;
}
#home .home-professional-txt .txt-01 {
	margin: 0 0 40px;
}
#home .home-professional-btns {
	grid-area: btns;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 350px));
	gap: 20px 20px;
}
#home .home-professional-btns .btn-01 {
	margin: 0;
}
#home .home-professional-btns .btn-01 a {
	width: 100%;
	max-width: 350px;
}
#home .home-professional-img {
	grid-area: img;
	width: 568px;
	margin: 0;
	border-radius: 10px;
	overflow: hidden;
}
#home .home-professional-img img {
	display: block;
	width: 100%;
	height: 400px;
	object-fit: cover;
}

/* 日々のできごと
----------------------------------------------------------*/
#home .sec-home-blog > .inner-1320 {
	gap: 0;
}
#home .sec-home-blog .sec-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
}
#home .sec-home-blog .ttl-01 {
	margin: 0;
}
#home .home-blog-list {
	width: 100%;
}
#home .home-blog-card {
	display: block;
	color: inherit;
	text-decoration: none;
	overflow: hidden;
	border-radius: 10px;
	background: #F7F9F4;
}
#home .home-blog-img {
	margin: 0;
	overflow: hidden;
	aspect-ratio: 419 / 250;
}
#home .home-blog-img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#home .home-blog-body {
	padding: 42px 40px 42px;
}
#home .home-blog-meta {
	margin: 0 0 8px;
	color: #555;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.8;
}
#home .home-blog-ttl {
	margin: 0;
	color: #222;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.8;
}
#home .home-blog-card:hover .home-blog-ttl {
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* 選ばれる理由
----------------------------------------------------------*/
#home .sec-home-reason > .inner-1320 {
	gap: 0;
}
#home .sec-home-reason .sec-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 80px;
}
#home .home-reason-ttl {
	margin: 0;
	text-align: center;
}
#home .home-reason-em {
	color: var(--color-main);
}
#home .home-reason-list {
	display: grid;
	grid-template-columns: 644px 644px;
	gap: 32px;
	width: 100%;
}
#home .home-reason-item {
	display: flex;
	align-items: stretch;
	width: 644px;
	height: 284px;
	overflow: hidden;
	border-radius: 10px;
	background: #fff;
}
#home .home-reason-img {
	flex: 0 0 322px;
	width: 322px;
	height: 284px;
	margin: 0;
	overflow: hidden;
}
#home .home-reason-img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
#home .home-reason-body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 20px;
	box-sizing: border-box;
	flex: 1;
	min-width: 0;
	width: 322px;
	padding: 40px;
}
#home .home-reason-body .ttl-02 {
	margin: 0;
	font-size: 28px;
	line-height: 1.5;
}
#home .home-reason-body .txt-01 {
	margin: 0;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.8;
}

/* について
----------------------------------------------------------*/
#home .sec-home-about > .inner-1320 {
	gap: 0;
}
#home .sec-home-about .sec-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
}
#home .home-about-ttl {
	margin: 0;
}
#home .home-about-em {
	color: var(--color-main);
}
#home .home-about-lead {
	margin: 0;
	font-weight: 600;
}

/* ギャラリー
----------------------------------------------------------*/
#home .home-gallery {
	position: relative;
	overflow: hidden;
	margin-top: 80px;
}
#home .sec-home-about + .home-gallery {
	margin-top: 80px;
}
#home .home-gallery + .section {
	margin-top: 110px;
}
#home .home-gallery-splide {
	padding-bottom: 51px;
}
#home .home-gallery-list {
	display: flex;
	align-items: flex-start;
	margin: 0;
	padding: 0;
	list-style: none;
}
#home .home-gallery-list .splide__slide {
	flex: 0 0 375px;
	width: 375px;
	height: 368px;
	overflow: hidden;
	border-radius: 10px;
}
#home .home-gallery-list .splide__slide.is-offset {
	margin-top: 85px;
}
#home .home-gallery-list .splide__slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#home .home-gallery-ctrl {
	position: absolute;
	right: 40px;
	bottom: 25px;
	z-index: 2;
	display: block;
	width: 60px;
	height: 60px;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}
#home .home-gallery-ctrl:focus-visible {
	outline: 2px solid var(--color-main);
	outline-offset: 2px;
	border-radius: 50%;
}
#home .home-gallery-ctrl-icon {
	display: block;
	width: 100%;
	height: 100%;
}
#home .home-gallery-ctrl-icon svg {
	display: block;
	width: 100%;
	height: 100%;
}
#home .home-gallery-ctrl-icon--play {
	display: none;
}
#home .home-gallery-ctrl[aria-pressed="true"] .home-gallery-ctrl-icon--pause {
	display: none;
}
#home .home-gallery-ctrl[aria-pressed="true"] .home-gallery-ctrl-icon--play {
	display: block;
}

/* 採用
----------------------------------------------------------*/
#home .sec-home-recruit{
	padding-bottom: 160px;
}
#home .sec-home-recruit > .inner-1320 {
	gap: 0;
}
#home .sec-home-recruit .sec-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0;
}
#home .sec-home-recruit .ttl-01 {
	margin: 0 0 62px; /* Figma: タイトル〜吹き出し帯 */
}
#home .recruit-visual {
	position: relative;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto 40px; /* Figma: イラスト下端〜ボタン 40 */
	padding-top: 120px;
}
#home .recruit-illust {
	position: relative;
	z-index: 1;
	margin: 0 auto;
	width: min(100%, 743px);
}
#home .recruit-illust img {
	display: block;
	width: 100%;
	height: auto;
}
#home .recruit-bubbles {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	z-index: 2;
	margin: 0;
	padding: 0;
	list-style: none;
	height: 120px;
	pointer-events: none;
}
#home .recruit-bubble {
	position: absolute;
	width: 200px;
}
#home .recruit-bubble img {
	display: block;
	width: 100%;
	height: auto;
}
#home .recruit-bubble span {
	position: absolute;
	inset: 0 12px 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #222;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.8;
	text-align: center;
}
/* Figma: イラスト中心基準（743px / artboard上 x=429） */
#home .recruit-bubble.bubble-01 {
	/* 第二のキャリア 348,6087 */
	left: calc(50% - 452.5px);
	top: 21px;
}
#home .recruit-bubble.bubble-02 {
	/* 子育て 674,6066 */
	left: calc(50% - 126.5px);
	top: 0;
}
#home .recruit-bubble.bubble-03 {
	/* 新卒 513,6144 */
	left: calc(50% - 287.5px);
	top: 78px;
}
#home .recruit-bubble.bubble-04 {
	/* 未経験 891,6081 */
	left: calc(50% + 90.5px);
	top: 15px;
}
#home .recruit-bubble.bubble-05 {
	/* 親の介護 1049,6129 */
	left: calc(50% + 248.5px);
	top: 63px;
}
#home .recruit-catch {
	position: absolute;
	left: 50%;
	/* padding-top 120 + イラスト内 220（Figma y差） */
	top: 340px;
	z-index: 3;
	width: min(90%, 460px);
	transform: translateX(-50%);
	text-align: center;
	pointer-events: none;
}
#home .recruit-catch-ttl {
	margin: 0 0 20px;
	color: #222;
	font-size: 28px;
	font-weight: 600;
	line-height: 1.5;
}
#home .recruit-catch-em {
	color: #E8893A;
}
#home .recruit-catch-txt {
	margin: 0;
	color: #222;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.8;
}

#home .sec-home-recruit + .sec-contact {
	margin-top: 0;
}

/* HOME SP
----------------------------------------------------------*/
@media only screen and (max-width: 768px) {
	#home .about-btn-row {
		flex-direction: column;
		align-items: center;
		gap: 5.208vw; /* 40: ボタン間 */
		width: 100%;
	}
	/* について: リード〜ボタン 150px（sec-wrap gap 7.813 + 11.719） */
	#home .sec-home-about .about-btn-row {
		margin-top: 11.719vw;
	}
	#home .about-btn-row .btn-01 {
		width: 100%;
	}
	#home .about-btn-row .btn-01 a {
		width: 100%;
	}

	#home .home-mv-visual {
		height: 195.313vw; /* 1500 / 768 */
	}
	#home .home-mv-inner {
		height: 195.313vw;
	}
	#home .home-mv-copy {
		left: 13.542vw; /* 108 / 768 */
		top: 43.23vw; /* 322 / 768 */
		gap: 8.724vw; /* 80 */
	}
	#home .home-mv-sub {
		gap: 1.954vw;
		padding-top: 1.693vw; /* 20: 342 - 322 */
		margin: 0;
	}
	#home .home-mv-sub-col {
		font-size: 3.646vw;
		letter-spacing: 0.912vw;
	}
	#home .home-mv-catch {
		gap: 2.084vw;
	}
	#home .home-mv-catch-col {
		font-size: 9.766vw;
		letter-spacing: 2.474vw;
	}
	#home .home-mv-deco {
		display: none;
	}
	#home .home-mv-pager {
		left: 50%;
		right: auto;
		bottom: auto;
		top: 100%;
		gap: 3.906vw;
		width: 48.177vw;
		height: 5.208vw;
		margin-top: 5.078vw;
		padding: 0;
		background: transparent;
		border-radius: 0;
		transform: translateX(-50%);
	}
	#home .home-mv-pager .splide__arrow {
		width: 5.208vw;
		height: 5.208vw;
	}
	#home .home-mv-pager .splide__arrow svg {
		width: 5.208vw;
		height: 5.208vw;
	}
	#home .home-mv-pager .splide__pagination {
		gap: 2.604vw; /* 20: ドット間 */
	}
	#home .home-mv-pager .splide__pagination__page,
	#home .home-mv-pager .splide__pagination__page.is-active {
		box-sizing: border-box;
		width: 3.906vw; /* 30 */
		height: 3.906vw;
	}
	#home .home-mv-ctrl {
		right: 5.208vw; /* 40 / 768 */
		bottom: 2.604vw; /* 20 / 768 */
		width: 15.625vw; /* 120 / 768 */
		height: 15.625vw;
	}
	#home .home-mv-cta {
		margin-top: 23.438vw; /* 1680 - 1500 */
		padding: 0 5.208vw;
	}
	#home .home-mv-cta .inner-1320{
		padding: 0;
	}
	#home .home-mv-cta-inner {
		flex-direction: column;
		gap: 5.208vw;
		min-height: 0;
		padding: 7.813vw 7.813vw;
		border-radius: 2.604vw;
	}
	#home .home-mv-cta-inner .btn-01 {
		width: 100%;
	}
	#home .home-mv-cta-inner .btn-01.lg a {
		width: 100%;
		min-width: 0;
		font-size: 4.688vw;
		padding: 2.865vw 5.339vw;
		border-width: 0.521vw;
	}
	#home .home-mv + .section {
		margin-top: 32.553vw; /* 250: CTA下端〜お知らせ */
	}

	#home .sec-home-news .sec-wrap {
		gap: 7.813vw;
	}
	#home .home-news-list {
		gap: 7.813vw;
		padding-top: 7.422vw;
		margin-bottom: 2.214vw;
	}
	#home .home-news-list > li {
		gap: 7.813vw;
	}
	#home .home-news-list > li > a {
		flex-direction: column;
		align-items: stretch;
		gap: 5.208vw;
		padding: 0;
	}
	#home .home-news-list .news-meta {
		gap: 2.604vw;
		width: 100%;
	}
	#home .home-news-list .news-date {
		width: auto;
		min-width: 36.458vw;
		font-size: 4.167vw;
	}
	#home .home-news-list .news-label {
		width: auto;
		padding: 0.651vw 2.604vw;
		border-width: 0.26vw;
		border-radius: 2.083vw;
		font-size: 3.646vw;
	}
	#home .home-news-list .news-body {
		width: 100%;
		gap: 5.208vw;
	}
	#home .home-news-list .news-ttl {
		font-size: 4.167vw;
	}
	#home .home-news-list .arrow2 {
		width: 5.208vw;
		height: 5.208vw;
	}
	#home .home-news-list .arrow2 > svg {
		width: 5.208vw;
		height: 5.208vw;
	}

	#home .sec-home-facility,
	#home .sec-home-professional {
		padding-top: 19.532vw; /* 150 */
		padding-bottom: 19.532vw;
	}
	#home .sec-home-facility + .sec-home-professional {
		margin-top: 0;
	}
	#home .home-facility-wrap {
		display: flex;
		flex-direction: column;
		gap: 0;
	}
	#home .home-facility-txt .ttl-02 {
		font-size: 6.25vw; /* 48 */
		margin-bottom: 5.208vw; /* 40: タイトル〜リード */
	}
	#home .home-facility-txt .txt-01 {
		margin-bottom: 10.417vw; /* 80: リード〜マップ */
		font-size: 4.167vw; /* 32 */
		font-weight: 600;
		line-height: 1.9;
	}
	#home .home-facility-map {
		width: 100%;
		margin: 0 0 10.157vw; /* 80: マップ〜ボタン */
	}
	#home .home-facility-btns {
		grid-template-columns: 1fr;
		gap: 5.208vw; /* 40 */
		width: 100%;
	}
	#home .home-facility-btns .btn-01 a {
		max-width: none;
		width: 100%;
	}

	#home .home-professional-wrap {
		display: flex;
		flex-direction: column;
		gap: 0;
	}
	#home .home-professional-txt .ttl-02 {
		font-size: 6.25vw; /* 48 */
		margin-bottom: 5.339vw; /* 40: タイトル〜リード */
		line-height: 1.5;
	}
	#home .home-professional-txt .txt-01 {
		margin-bottom: 10.417vw; /* 80: リード〜画像 */
		font-size: 4.167vw; /* 32 */
		font-weight: 600;
		line-height: 1.9;
	}
	#home .home-professional-img {
		width: 100%;
		margin: 0 0 10.417vw; /* 80: 画像〜ボタン */
		order: 0;
		border-radius: 2.604vw; /* 20 */
	}
	#home .home-professional-img img {
		height: auto;
		aspect-ratio: 688 / 400;
	}
	#home .home-professional-btns {
		grid-template-columns: 1fr;
		gap: 5.208vw; /* 40 */
		width: 100%;
	}
	#home .home-professional-btns .btn-01 a {
		max-width: none;
		width: 100%;
	}

	#home .sec-home-blog .sec-wrap {
		gap: 7.813vw;
	}
	#home .home-blog-list {
		gap: 8.334vw;
	}
	#home .home-blog-card {
		border-radius: 2.605vw;
	}
	#home .home-blog-img {
		aspect-ratio: 688 / 400;
	}
	#home .home-blog-body {
		padding: 7.553vw 7.813vw 8.073vw;
	}
	#home .home-blog-meta {
		font-size: 3.646vw;
		margin-bottom: 2.344vw;
	}
	#home .home-blog-ttl {
		font-size: 4.688vw;
	}

	#home .sec-home-reason .sec-wrap {
		gap: 19.532vw;
	}
	#home .home-reason-list {
		display: flex;
		flex-direction: column;
		grid-template-columns: none;
		gap: 8.464vw;
	}
	#home .home-reason-item {
		flex-direction: column;
		width: 100%;
		height: auto;
		border-radius: 2.604vw; /* 20 */
	}
	/* SP表示順: トータル → 一人一人 → 関西 → チャレンジ */
	#home .home-reason-item:nth-child(1) {
		order: 1;
	}
	#home .home-reason-item:nth-child(3) {
		order: 2;
	}
	#home .home-reason-item:nth-child(2) {
		order: 3;
	}
	#home .home-reason-item:nth-child(4) {
		order: 4;
	}
	#home .home-reason-img {
		flex: none;
		width: 100%;
		height: auto;
		aspect-ratio: 688 / 400;
	}
	#home .home-reason-img img {
		min-height: 0;
	}
	#home .home-reason-body {
		gap: 5.208vw;
		width: 100%;
		padding: 7.813vw; /* 60 */
	}
	#home .home-reason-body .ttl-02 {
		font-size: 6.25vw; /* 48 */
	}
	#home .home-reason-body .txt-01 {
		font-size: 4.167vw; /* 32 */
		line-height: 1.9;
	}

	#home .sec-home-about .sec-wrap {
		gap: 7.813vw;
	}
	#home .home-about-lead {
		font-size: 4.167vw;
		text-align: left;
		line-height: 1.9;
	}

	#home .home-gallery {
		margin-top: 19.532vw;
	}
	#home .sec-home-about + .home-gallery {
		margin-top: 19.532vw;
	}
	#home .home-gallery + .section {
		margin-top: 24.74vw;
	}
	#home .home-gallery-splide {
		padding-bottom: 7.813vw;
	}
	#home .home-gallery-list .splide__slide {
		flex: 0 0 65.104vw;
		width: 65.104vw;
		height: 63.802vw;
		border-radius: 2.605vw;
	}
	#home .home-gallery-list .splide__slide.is-offset {
		margin-top: 13.021vw;
	}
	#home .home-gallery-ctrl {
		right: 2.604vw;
		bottom: 7.553vw;
		width: 15.625vw;
		height: 15.625vw;
	}

	#home .sec-home-recruit {
		padding-top: 19.532vw; /* 150 */
		padding-bottom: 19.532vw; /* 150 */
	}
	#home .sec-home-recruit .ttl-01 {
		margin-bottom: 10.417vw; /* 80: タイトル〜吹き出し */
	}
	#home .recruit-visual {
		padding-top: 55.208vw; /* 424: 吹き出し帯 */
		margin-bottom: 7.813vw; /* 60: イラスト〜ボタン */
		max-width: none;
	}
	#home .recruit-illust {
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		width: 100vw;
		height: 170.573vw; /* 1310 / 768 */
		overflow: hidden;
	}
	#home .recruit-illust img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center top;
	}
	#home .recruit-bubbles {
		left: calc(50% - 50vw);
		right: calc(50% - 50vw);
		width: 100vw;
		height: 55.208vw; /* 424 */
	}
	#home .recruit-bubble span {
		inset: 0 3.906vw 3.008vw;
		font-size: 3.906vw; /* 30 */
		line-height: 1.5;
	}
	#home .recruit-bubble.bubble-01 {
		/* 第二のキャリア 93,16662 / 290x153 */
		left: 12.109vw;
		top: 9.115vw;
		width: 37.76vw;
		z-index: 2;
	}
	#home .recruit-bubble.bubble-02 {
		/* 子育て 354,16592 / 318x153 */
		left: 46.094vw;
		top: 0;
		width: 41.406vw;
		z-index: 1;
	}
	#home .recruit-bubble.bubble-03 {
		/* 新卒 40,16819 / 378x108 */
		left: 5.208vw;
		top: 29.557vw;
		width: 49.219vw;
	}
	#home .recruit-bubble.bubble-03 span {
		inset: 0 4.167vw 3.106vw;
	}
	#home .recruit-bubble.bubble-04 {
		/* 未経験 438,16733 / 290x153 */
		left: 57.031vw;
		top: 18.359vw;
		right: auto;
		width: 37.76vw;
	}
	#home .recruit-bubble.bubble-05 {
		/* 親の介護 310,16890 / 289x153 */
		left: 40.365vw;
		top: 38.802vw;
		right: auto;
		width: 37.63vw;
	}
	#home .recruit-catch {
		/* 吹き出し帯 424 + イラスト内 504 */
		top: calc(55.208vw + 65.625vw);
		width: 72.917vw;
	}
	#home .recruit-catch-ttl {
		margin-bottom: 5.208vw; /* 40 */
		font-size: 6.25vw; /* 48 */
		line-height: 1.5;
	}
	#home .recruit-catch-txt {
		font-size: 4.688vw; /* 36 */
		line-height: 1.9;
	}

	#home .main > .sec-contact {
		margin-top: 0;
	}
}
