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

body main.crm {
	color: #000000;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.5;
	overflow: clip;
}

main.crm {
	background: linear-gradient(to right, #0079A3 40%, #004485);
	padding-top: 0;
}

html {
	font-size: 16px;
}

/* pcの電話番号発信対応 */

/* ホバー */

a {
	-webkit-text-decoration: none;
	color: inherit;
	text-decoration: none;
	transition: all 0.3s;
}

.c-bg {
	position: relative;
}

.c-bg.--top::before {
	-webkit-mask: url(../images/bg_vector.webp) center center/100% 100% no-repeat;
	background-color: #fff;
	content: "";
	height: min(7.6041666667vw, 9.125rem);
	left: 0;
	mask: url(../images/bg_vector.webp) center center/100% 100% no-repeat;
	pointer-events: none;
	position: absolute;
	top: max(-7.4479166667vw, -8.9375rem);
	width: 100%;
	z-index: 1;
}

.c-bg.--bottom::after {
	-webkit-mask: url(../images/bg_vector.webp) center center/100% 100% no-repeat;
	background-color: #fff;
	bottom: max(-7.4479166667vw, -8.9375rem);
	content: "";
	height: min(7.6041666667vw, 9.125rem);
	left: 0;
	mask: url(../images/bg_vector.webp) center center/100% 100% no-repeat;
	pointer-events: none;
	position: absolute;
	transform: rotate(180deg);
	width: 100%;
	z-index: 1;
}

.c-card {
	border-radius: 0.8125rem;
	box-shadow: 0 0.25rem 0.875rem rgba(0, 0, 0, 0.25);
	height: 100%;
	transition: all 0.45s;
}

.c-card a {
	border-radius: 0.8125rem;
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	position: relative;
}

.c-card a::before {
	background: url(../images/common/icon-arrow.svg) center center/contain no-repeat;
	bottom: 1.125rem;
	content: "";
	height: 1.75rem;
	position: absolute;
	right: 1.125rem;
	width: 1.75rem;
}

.c-card__thumbnail img {
	-o-object-fit: cover;
	aspect-ratio: 351/171;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.c-card__body {
	background-color: #fff;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	padding: 1rem 1.125rem 1rem 1.4375rem;
}

.c-card__title {
	flex-grow: 1;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
}

.c-card__cats {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.1875rem;
	margin-top: 2.25rem;
	width: calc(100% - 2.5rem);
}

.c-card__cat {
	border: 1px solid #000000;
	border-radius: 0.75rem;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.7142857143;
	padding-left: 0.8125rem;
	padding-right: 0.8125rem;
}

.slider-dots {
	display: flex;
	gap: 1.875rem;
	justify-content: center;
	margin-top: 3rem;
}

.slider-dot {
	background-color: #E3E3E7;
	border-radius: 50%;
	height: 0.4375rem;
	width: 0.4375rem;
}

.slider-dot.active {
	background-color: #19C0EB;
}

.arrow {
	-webkit-mask: url(../images/common/slide-arrow.svg) center center/contain no-repeat;
	background-color: #19C0EB;
	bottom: 0.1875rem;
	height: 1.75rem;
	mask: url(../images/common/slide-arrow.svg) center center/contain no-repeat;
	position: absolute;
	width: 1.75rem;
}

.arrow--disabled {
	background-color: #E3E3E7;
}

.arrow--left {
	left: calc(50% - 5.625rem);
	transform: rotate(180deg);
}

.arrow--right {
	right: calc(50% - 5.625rem);
}

.c-crm-btn {
	align-items: center;
	background: #1086BC;
	border-radius: 3.125rem;
	box-shadow: 0 0.3125rem 0.5rem rgba(0, 0, 0, 0.25);
	display: inline-flex;
	font-size: 1rem;
	font-weight: 900;
	height: 3.9375rem;
	justify-content: center;
	letter-spacing: normal;
	letter-spacing: 0.05em;
	width: 16.5625rem;
}

.c-crm-title {
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
}

.c-crm-download {
	align-items: center;
	background-color: #fff;
	border-radius: 6.25rem;
	display: inline-flex;
	font-size: 1.5625rem;
	font-weight: bold;
	height: 6.25rem;
	justify-content: center;
	width: 29.8125rem;
}

.c-function {
	background-color: #EDF5F8;
	border-radius: 0.625rem;
	height: 100%;
	padding: 1.5625rem 0.9375rem;
}

.c-function__title {
	align-items: center;
	display: flex;
	flex-direction: column;
	font-size: 1.5625rem;
	font-weight: bold;
	justify-content: center;
	min-height: 4.125rem;
	text-align: center;
}

.c-function__title small {
	font-size: 1.25rem;
}

.c-function__text {
	font-size: 0.9375rem;
	line-height: 1.8;
}

.l-inner {
	height: inherit;
	margin: 0 auto;
	max-width: calc(62.5rem + 25px + 25px);
	padding-left: 25px;
	padding-right: 25px;
	width: 100%;
}

.p-crm-cv {
	background: url(../images/bg_cv.webp) center center/cover no-repeat;
	padding-bottom: 4.375rem;
	padding-top: 4.375rem;
}

.p-crm-cv__inner {
	grid-gap: 2.5rem;
	align-items: center;
	display: grid;
	gap: 2.5rem;
	grid-template-columns: 1fr 26.875rem;
}

.p-crm-cv__title {
	font-size: 2.0625rem;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
}

.p-crm-cv__btn {
	margin-top: 1.875rem;
	text-align: center;
}

.p-feature {
	background: url(../images/bg_feature.webp) center bottom/cover no-repeat;
	padding-bottom: 6.25rem;
	padding-top: 4.1875rem;
	position: relative;
}

.p-feature::before {
	-webkit-clip-path: polygon(50% 100%, 100% 0, 100% 100%, 0 100%, 0 0);
	background: #F1FAF8;
	clip-path: polygon(50% 100%, 100% 0, 100% 100%, 0 100%, 0 0);
	content: "";
	height: 6.25rem;
	left: 0;
	position: absolute;
	top: -6.125rem;
	width: 100%;
}

.p-feature__blocks {
	grid-gap: 2.1875rem;
	display: grid;
	gap: 2.1875rem;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 5.3125rem;
}

.p-feature__block {
	position: relative;
}

.p-feature__block::before {
	background: url(../images/check.webp) center center/contain no-repeat;
	content: "";
	height: 3.9375rem;
	left: 1.1875rem;
	position: absolute;
	top: -1.875rem;
	width: 5.8125rem;
}

.p-feature__block:nth-child(3n+2) {
	margin-top: 2.5rem;
}

.p-feature__subTitle {
	font-size: 1.5625rem;
	font-weight: bold;
	margin-top: 0.625rem;
	text-align: center;
}

.p-feature__text {
	font-size: 0.9375rem;
	line-height: 1.8;
	margin-top: 0.625rem;
}

.p-footer {
	padding-bottom: 0.9375rem;
	padding-top: 2.1875rem;
}

.p-footer__wrap {
	grid-gap: 2.5rem;
	align-items: center;
	display: grid;
	gap: 2.5rem;
	grid-template-columns: 1fr 16.875rem;
}

.p-footer__links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem 2.5rem;
}

.p-footer__link a {
	display: inline-block;
	font-size: 0.9375rem;
	line-height: 2;
}

.p-footer__logo {
	filter: brightness(0);
}

.p-footer__copy {
	font-size: 0.75rem;
	font-weight: 400;
	letter-spacing: 0.03em;
	margin-top: 1.25rem;
	text-align: center;
}

.p-function {
	background-color: #fff;
	padding-bottom: 4.8125rem;
	padding-top: 3.125rem;
}

.p-function__cards {
	grid-gap: 2.1875rem;
	display: grid;
	gap: 2.1875rem;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 3.125rem;
}

#header.p-header {
	-webkit-backdrop-filter: blur(1.25rem);
	backdrop-filter: blur(1.25rem);
	background: rgba(255, 255, 255, 0.17);
	border-radius: 1.25rem;
	height: 3.625rem;
	left: 50%;
	max-width: 81.6875rem;
	padding-left: 4.375rem;
	padding-right: 4.375rem;
	position: fixed;
	top: 2.625rem;
	transform: translateX(-50%);
	z-index: 100;
}

#header .p-header__inner {
	align-items: center;
	display: flex;
	height: 100%;
	padding-left: 0;
	padding-right: 0;
	width: 100%;
}

#header .p-header__logo {
	width: 12.6875rem;
}

#header .p-header__nav {
	margin-left: auto;
}

#header .p-header__links {
	align-items: center;
	display: flex;
	gap: 2rem;
}

#header .p-header__link a {
	font-size: 0.8125rem;
	font-weight: 900;
}

#header .p-header__btn {
	margin-left: 6.6875rem;
}

#header .p-header__btn a {
	align-items: center;
	background-color: #fff;
	border-radius: 1.125rem;
	color: #005B84;
	display: flex;
	font-size: 0.875rem;
	font-weight: bold;
	height: 2.25rem;
	justify-content: center;
	width: 9rem;
}

.p-intro {
	background: url(../images/bg_noise.webp) center center/cover no-repeat;
	padding-bottom: 12rem;
	padding-top: 4.6875rem;
}

.p-intro__blocks {
	counter-reset: number 0;
	margin-top: 6.25rem;
}

.p-intro__block {
	display: flex;
	gap: 3.4375rem;
	position: relative;
}

.p-intro__block::before {
	color: #CBF1FB;
	content: "0" counter(number);
	counter-increment: number 1;
	font-family: "D-DIN Exp";
	font-size: 13.5rem;
	line-height: 1.8;
	opacity: 0.5;
	pointer-events: none;
	position: absolute;
	top: -7.375rem;
}

.p-intro__block:nth-child(odd)::before {
	left: -2.1875rem;
}

.p-intro__block:nth-child(even)::before {
	right: 0rem;
}

.p-intro__block:nth-child(3)::before {
	bottom: -10.0625rem;
	top: auto;
	top: initial;
}

.p-intro__block + .p-intro__block {
	margin-top: 7.6875rem;
}

.p-intro__content {
	padding-top: 3.75rem;
}

.p-intro__content.mt0 {
	padding-top: 0rem;
}

.p-intro__block:nth-child(odd) .p-intro__content {
	padding-left: 2.1875rem;
}

.p-intro__block:nth-child(even) .p-intro__content {
	padding-right: 2.1875rem;
}

.p-intro__block:nth-child(even) {
	flex-direction: row-reverse;
}

.p-intro__subTitle {
	font-size: 1.875rem;
}

.p-intro__text {
	font-size: 1.125rem;
	line-height: 1.8;
	margin-top: 1.625rem;
}

.p-intro__img {
	aspect-ratio: 440/292;
	background: rgba(255, 255, 255, 0.8);
	border-radius: 1.375rem;
	display: block;
	flex-shrink: 0;
	position: relative;
	width: 27.5rem;
}

.p-intro__img img {
	bottom: 0;
	left: 50%;
	max-height: none;
	max-height: initial;
	max-width: none;
	max-width: initial;
	position: absolute;
	transform: translate(-50%, 0);
}

.p-intro__img[data-img=intro01] img {
	width: 31.1875rem;
}

.p-intro__img[data-img=intro02] img {
	width: 34.5625rem;
}

.p-intro__img[data-img=intro03] img {
	width: 38.5625rem;
}

.p-logo {
	background-color: #fff;
	padding-bottom: 3.75rem;
	padding-top: 1.875rem;
}

.p-logo__inner {
	max-width: calc(58rem + 25px + 25px);
}

.p-logo__lists {
	grid-gap: 3.125rem 3.625rem;
	display: grid;
	gap: 3.125rem 3.625rem;
	grid-template-columns: repeat(4, 1fr);
}

.p-logo__list {
	height: 3.6875rem;
}

.p-logo__list img {
	-o-object-fit: contain;
	height: 100%;
	object-fit: contain;
}

.p-mv {
	background: url(../images/bg_mv.webp) center center/cover no-repeat;
	padding-bottom: 7.0625rem;
	padding-top: 8.75rem;
	position: relative;
}

.p-mv__inner {
	max-width: calc(min(82.0833333333vw, 98.5rem) + 25px + 25px);
	position: relative;
}

.p-mv__title {
	font-size: min(2.7083333333vw, 3.25rem);
	font-weight: bold;
	line-height: 1.5;
}

.p-mv__lead {
	align-items: center;
	display: flex;
	font-size: min(3.8020833333vw, 4.5625rem);
	font-weight: 900;
	gap: 1.5625rem;
}

.p-mv__arrow {
	align-items: center;
	display: flex;
	gap: min(1.0416666667vw, 1.25rem);
	margin-top: 0.125rem;
}

.p-mv__arrow span {
	-webkit-clip-path: polygon(0 0, 0% 100%, 100% 50%);
	background-color: #fff;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	display: inline-block;
	height: min(1.71875vw, 2.0625rem);
	width: min(1.5104166667vw, 1.8125rem);
}

.p-mv__text {
	font-size: min(1.3541666667vw, 1.625rem);
	line-height: 2;
	margin-top: min(1.09375vw, 1.3125rem);
}

.p-mv__img {
	display: block;
	position: absolute;
	right: 0;
	top: min(0.8333333333vw, 1rem);
	width: min(50.8333333333vw, 61rem);
}

.p-mv__img::before {
	background: url(../images/shadow_pc.webp) center center/contain no-repeat;
	bottom: 0;
	content: "";
	height: min(13.75vw, 16.5rem);
	left: 0;
	mix-blend-mode: multiply;
	position: absolute;
	width: 100%;
}

.p-mv__btn {
	margin-top: min(2.4479166667vw, 2.9375rem);
}

.p-mv__btn a {
	color: #005B84;
	font-size: min(1.6666666667vw, 2rem);
	height: min(6.1458333333vw, 7.375rem);
	width: min(27.0833333333vw, 32.5rem);
}

.p-relation {
	background: rgba(221, 252, 255, 0.1);
	padding-bottom: 10.3125rem;
	padding-top: 10.3125rem;
	position: relative;
}

.p-relation::before {
	background: url(../images/bg_relation.webp) center center/cover no-repeat;
	content: "";
	height: 100%;
	left: 0;
	opacity: 0.4;
	pointer-events: none;
	position: absolute;
	top: 0;
	width: 100%;
}

.p-relation__inner.l-inner {
	max-width: calc(88.75rem + 25px + 25px);
	position: relative;
	z-index: 1;
}

.p-relation__main {
	margin-top: 1.25rem;
}

.p-relation__blocks {
	display: flex;
	justify-content: center;
}

.p-relation__block {
	background: rgba(255, 255, 255, 0.22);
	border-radius: 50%;
	height: 50rem;
	padding: 3.125rem;
	width: 50rem;
}

.p-relation__block-inner {
	-webkit-backdrop-filter: blur(0.5rem);
	backdrop-filter: blur(0.5rem);
	background: rgba(255, 255, 255, 0.58);
	border-radius: 50%;
	height: 100%;
	padding-top: 4.0625rem;
	width: 100%;
}

.p-relation__block:nth-child(2) {
	margin-left: -11.25rem;
}

.p-relation__logo {
	margin-left: auto;
	margin-right: auto;
}

.p-relation__logo.crm {
	filter: brightness(0);
	margin-bottom: 0.875rem;
	width: 18.1875rem;
}

.p-relation__logo.commune {
	margin-bottom: 1.5625rem;
	width: 12.6875rem;
}

.p-relation__lead {
	font-size: 1rem;
	font-weight: bold;
	line-height: 1.8;
	text-align: center;
}

.p-relation__btn {
	margin-top: 0.75rem;
	text-align: center;
}

.p-relation__btn a {
	align-items: center;
	background-color: #fff;
	background-color: #fff;
	border-radius: 1.25rem;
	box-shadow: 0 0.25rem 0.25rem rgba(84, 169, 207, 0.19);
	display: inline-flex;
	font-size: 0.875rem;
	height: 2.125rem;
	justify-content: center;
	width: 8rem;
}

.p-relation__img {
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 19.75rem;
}

.p-relation__img.crm {
	margin-top: 2.4375rem;
}

.p-relation__img.commune {
	margin-top: 1.25rem;
}

.p-relation__lists {
	margin-left: auto;
	margin-right: auto;
	margin-top: 1.25rem;
	width: -moz-fit-content;
	width: fit-content;
}

.p-relation__list {
	font-size: 0.8125rem;
	line-height: 1.8;
	padding-left: 1.125rem;
	position: relative;
}

.p-relation__list::before {
	background-color: #1086BC;
	border-radius: 50%;
	content: "";
	height: 0.375rem;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 0.375rem;
}

.p-relation__arrows {
	bottom: 0;
	height: -moz-fit-content;
	height: fit-content;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: 0;
	width: 16.375rem;
}

.p-relation__arrow {
	align-items: center;
	color: #fff;
	display: flex;
	font-size: 1.125rem;
	font-weight: bold;
	height: 6.125rem;
	justify-content: center;
	position: relative;
	text-align: center;
	z-index: 1;
}

.p-relation__arrow::before {
	background: url(../images/bg_relation_vector.webp) center center/contain no-repeat;
	bottom: 0;
	content: "";
	height: 100%;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: -1;
}

.p-relation__arrow:nth-child(even)::before {
	transform: rotate(180deg);
}

.p-relation__arrow + .p-relation__arrow {
	margin-top: 1.4375rem;
}

.p-support {
	background-color: #EFF6FB;
	padding-bottom: 4.5625rem;
	padding-top: 4.5625rem;
	position: relative;
}

.p-support.c-bg::before {
	background: #EFF6FB;
}

.p-support__inner.l-inner {
	max-width: calc(72.5rem + 25px + 25px);
}

.p-support__cards {
	grid-gap: 3.375rem;
	display: grid;
	gap: 3.375rem;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 3.125rem;
}

.p-support__btn {
	margin-top: 4rem;
	text-align: center;
}

.slider__wrapper {
	position: relative;
}

.none {
	margin-bottom: 3.125rem;
	margin-top: 3.125rem;
	text-align: center;
}

.slick-track {
	display: flex;
}

.slick-slide {
	height: auto !important;
}

.slick-dotted.slick-slider {
	margin-bottom: 0;
}

.u-white {
	color: #fff;
}

.u-blue {
	color: #1086BC;
}

@media (hover: hover) {

.c-card:hover {
	box-shadow: 0 0 0.875rem rgba(0, 0, 0, 0.25);
	transform: translateY(0.5rem);
}

.c-crm-btn:hover {
	box-shadow: 0 0rem 0 rgba(0, 0, 0, 0.25);
	color: #fff;
	transform: translateY(0.5rem);
}

.c-crm-download:hover {
	opacity: 0.8;
}

.p-footer__link a:hover {
	opacity: 0.6;
}

#header .p-header__link a:hover {
	color: #fff;
	opacity: 0.8;
}

#header .p-header__btn a:hover {
	color: #005B84;
	opacity: 0.8;
}

.p-relation__btn a:hover {
	opacity: 0.8;
}

}

@media screen and (min-width: 961px) {

.keen-slider:not([data-keen-slider-disabled]).only-sp {
	display: none !important;
}

}

@media (max-width: 1490px) {

html {
	font-size: 1.0738255034vw;
}

}

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

html {
	font-size: 4.0609137056vw;
}

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

.c-bg.--top::before {
	-webkit-mask-image: url(../images/bg_vector_sp.webp);
	height: 3.625rem;
	mask-image: url(../images/bg_vector_sp.webp);
	top: -3.5rem;
}

.c-bg.--bottom::after {
	bottom: -3.5rem;
	height: 3.625rem;
}

.c-card a::before {
	right: 0.625rem;
}

.c-card__thumbnail img {
	aspect-ratio: 274/133;
}

.c-card__body {
	padding: 0.75rem 1.25rem 1.3125rem;
}

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

.c-card__cats {
	gap: 0.4375rem 0.4375rem;
	margin-top: 0.8125rem;
	width: calc(100% - 1.5625rem);
}

.c-card__cat {
	font-size: 0.625rem;
	line-height: 2;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}

.keen-slider:not([data-keen-slider-disabled]).only-pc {
	display: none !important;
}

.c-crm-btn {
	border-radius: 2.1875rem;
	box-shadow: none;
	height: 4.375rem;
	max-width: 100%;
	width: 22.1875rem;
}

.c-crm-title {
	font-size: 1.5rem;
}

.c-crm-download {
	font-size: 1.25rem;
	height: 4.375rem;
	max-width: 22.1875rem;
	width: 100%;
}

.l-inner {
	max-width: 33.75rem;
	padding-left: 2.0625rem;
	padding-right: 2.0625rem;
}

.p-crm-cv {
	padding-bottom: 3.125rem;
	padding-top: 3.125rem;
}

.p-crm-cv__inner {
	gap: 1.25rem;
	grid-template-columns: 100%;
}

.p-crm-cv__content {
	display: contents;
}

.p-crm-cv__title {
	font-size: 1.5625rem;
}

.p-crm-cv__btn {
	margin-top: 0.9375rem;
	order: 1;
}

.p-crm-cv__img {
	margin-left: auto;
	margin-right: auto;
	width: 17.125rem;
}

.p-feature {
	background-image: url(../images/bg_feature_sp.webp);
}

.p-feature::before {
	background: url(../images/feature_vector_sp.webp) center center/100% 100% no-repeat;
	height: 2.625rem;
	top: -2.5rem;
}

.p-feature__blocks {
	gap: 5rem;
	grid-template-columns: 100%;
}

.p-footer__wrap {
	gap: 1.875rem;
	grid-template-columns: 100%;
}

.p-footer__links {
	flex-direction: column;
	gap: 1.25rem;
}

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

.p-footer__logo {
	margin-left: auto;
	margin-right: auto;
	order: -1;
	width: 16.875rem;
}

.p-footer__copy {
	font-size: 0.9375rem;
	margin-top: 2.8125rem;
}

.p-function {
	padding-bottom: 3.125rem;
}

.p-function__cards {
	display: block;
}

.p-function__card {
	margin-left: 0.375rem;
	margin-right: 0.375rem;
}

#header.p-header {
	-webkit-backdrop-filter: initial;
	backdrop-filter: initial;
	background: none;
	height: 2.9375rem;
	padding-left: 1.875rem;
	padding-right: 1.25rem;
	top: 0;
}

#header .p-header__inner {
	padding-left: 0;
	padding-right: 0;
}

#header .p-header__logo {
	width: 8.625rem;
}

#header .p-header__btn {
	margin-left: auto;
}

#header .p-header__btn a {
	font-size: 0.625rem;
	height: 1.4375rem;
	width: 6.4375rem;
}

#header .header-menu-sp .hamburger {
	margin-left: 1.0625rem;
}

#header .header-menu-sp .hamburger span {
	background-color: #fff;
}

#header.p-header .drawer__btn {
	text-align: center;
}

.p-intro {
	background: linear-gradient(125deg, #0079A3, #004485);
	padding-bottom: 6.375rem;
	padding-top: 2.5rem;
}

.p-intro__blocks {
	margin-top: 3.75rem;
}

.p-intro__block {
	display: block;
}

.p-intro__block::before {
	font-size: 6.25rem;
	top: -5.625rem;
}

.p-intro__block:nth-child(odd)::before {
	left: -1.25rem;
}

.p-intro__block:nth-child(even)::before {
	left: -1.25rem;
	right: auto;
	right: initial;
}

.p-intro__block:nth-child(3)::before {
	bottom: auto;
	bottom: initial;
	top: -5.625rem;
}

.p-intro__block + .p-intro__block {
	margin-top: 5rem;
}

.p-intro__content {
	padding-top: 0;
}

.p-intro__block:nth-child(odd) .p-intro__content {
	padding: 0;
}

.p-intro__block:nth-child(even) .p-intro__content {
	padding: 0;
}

.p-intro__subTitle {
	font-size: 1.375rem;
}

.p-intro__text {
	font-size: 0.875rem;
}

.p-intro__img {
	aspect-ratio: 310/205;
	margin-left: auto;
	margin-right: auto;
	margin-top: 1.875rem;
	width: 19.375rem;
}

.p-intro__img[data-img=intro01] img {
	width: 21.5625rem;
}

.p-intro__img[data-img=intro02] img {
	width: 23.25rem;
}

.p-intro__img[data-img=intro03] img {
	width: 24.375rem;
}

.p-logo {
	padding-bottom: 1.375rem;
	padding-top: 1.375rem;
}

.p-logo__inner {
	padding: 0;
}

.p-logo__lists {
	display: block;
}

.p-logo__list {
	height: 2.5rem;
	margin-left: 1.25rem;
	margin-right: 1.25rem;
	width: 7.625rem;
}

.p-logo__list img {
	margin: auto;
}

.p-mv {
	background-image: url(../images/bg_mv_sp.webp);
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.p-mv__inner {
	max-width: 33.75rem;
}

.p-mv__title {
	font-size: 1.5rem;
}

.p-mv__lead {
	font-size: 2.125rem;
	gap: 0.6875rem;
	margin-top: 0.0625rem;
}

.p-mv__arrow {
	gap: 0.5625rem;
}

.p-mv__arrow span {
	height: 0.9375rem;
	width: 0.875rem;
}

.p-mv__text {
	font-size: 0.8125rem;
	line-height: 1.6;
	margin-top: 0.5rem;
}

.p-mv__img {
	margin-left: auto;
	margin-right: auto;
	margin-top: 0.5rem;
	position: relative;
	width: 18.125rem;
}

.p-mv__img::before {
	height: 5rem;
}

.p-mv__btn {
	margin-top: 0.5rem;
	text-align: center;
}

.p-mv__btn a {
	box-shadow: 0 0.25rem 1.25rem rgba(0, 0, 0, 0.25);
	font-size: 1.1875rem;
	height: 4.375rem;
	width: 19.0625rem;
}

.p-relation {
	padding-bottom: 4.25rem;
	padding-top: 4.25rem;
}

.p-relation__main {
	margin-top: 0.625rem;
}

.p-relation__blocks {
	display: block;
}

.p-relation__block {
	display: block;
	height: 45.125rem;
	margin-left: 50%;
	padding: 2.8125rem;
	transform: translateX(-50%);
	width: 45.125rem;
}

.p-relation__block.crm .p-relation__block-inner {
	padding-top: 2.8125rem;
}

.p-relation__block.commune .p-relation__block-inner {
	padding-top: 9.5rem;
}

.p-relation__block:nth-child(2) {
	height: 54.5rem;
	margin-left: 50%;
	margin-top: -8.5rem;
	transform: translateX(-50%);
	width: 54.5rem;
}

.p-relation__logo.crm {
	width: 16.375rem;
}

.p-relation__logo.commune {
	margin-bottom: 0.9375rem;
}

.p-relation__btn {
	margin-top: 0.9375rem;
}

.p-relation__img.crm {
	margin-top: 0.9375rem;
}

.p-relation__img.commune {
	margin-top: 0.9375rem;
}

.p-relation__lists {
	margin-top: 0.9375rem;
}

.p-relation__list {
	line-height: 1.3;
}

.p-relation__list + .p-relation__list {
	margin-top: 0.5em;
}

.p-relation__arrows {
	align-items: center;
	display: flex;
	flex-direction: row-reverse;
	gap: 1.5625rem;
	justify-content: center;
	top: -3rem;
	width: 100%;
}

.p-relation__arrow {
	-webkit-text-stroke: 0.125rem #1086BC;
	color: inherit;
	font-size: 0.9375rem;
	font-weight: bold;
}

.p-relation__arrow span {
	-webkit-text-stroke: 0px;
	color: #fff;
	font-size: 0.9375rem;
	font-weight: bold;
	left: 50%;
	line-height: 1.475;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	z-index: 2;
}

.p-relation__arrow::before {
	height: 4.6875rem;
	width: 12.625rem;
}

.p-relation__arrow.--commune::before {
	transform: translateX(-25%) rotate(-90deg);
}

.p-relation__arrow.--crm::before {
	transform: translateX(-25%) rotate(90deg);
}

.p-relation__arrow + .p-relation__arrow {
	margin-top: 0;
}

.p-support {
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.p-support__inner.l-inner {
	max-width: 33.75rem;
}

.p-support__cards {
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 3.125rem;
	max-width: 20.375rem;
}

.p-support__cards.js-sp-slider .slider-dots {
	margin-top: 2rem;
}

.p-support__card {
	margin-left: 0.40625rem;
	margin-right: 0.40625rem;
}

.p-support__btn {
	margin-top: 3.125rem;
}

.js-sp-slider .slick-list {
	overflow: visible;
	overflow: initial;
}

.js-sp-slider .slide-arrow {
	background: url(../images/slide-arrow.webp) center center/0.625rem no-repeat;
	background-color: #fff;
	border-radius: 50%;
	box-shadow: 0 0 0.9375rem rgba(101, 159, 185, 0.55);
	height: 2.375rem;
	position: absolute;
	top: calc(50% - 1.5625rem);
	transform: translateY(-50%);
	width: 2.375rem;
	z-index: 1;
}

.js-sp-slider .prev-arrow {
	left: -0.875rem;
	transform: translateY(-50%) rotate(180deg);
}

.js-sp-slider .next-arrow {
	right: -0.875rem;
}

.js-sp-slider .slider-dots {
	display: flex;
	gap: 0.4375rem;
	justify-content: center;
	margin-top: 3.125rem;
}

.js-sp-slider .slider-dots li {
	background-color: #fff;
	border: 1px solid #1086BC;
	border-radius: 50%;
	height: 0.5625rem;
	list-style: none;
	width: 0.5625rem;
}

.js-sp-slider .slider-dots li.slick-active {
	background-color: #1086BC;
}

.js-sp-slider .slider-dots button {
	display: none;
}

}

