@charset "UTF-8";
:root {
	--scrollbar: 0rem;
	--c_white: #ffffff;
	--c_primary: #0d53b4;
	--c_primary_dark: #073277;
	--c_accent: #cc4141;
	--bg_gray: #707070;
	--bg_primary: #0d53b4;
	--bg_accent: #cc4141;
	--c_txt: #333333;
	--c_txt_pale: #666666;
	--bdr_gray: #bdbdbd;
	--bdr_head_btm: #e0e0e0;
	--bg_base: #f5f5f5;
	--bg_primary_pale: #EAF4FB;
	--bg_before: #068478;
	--bg_after: #073277;
	--f_notoSans: Noto Sans JP, sans-serif;
	--f_rubik: Rubik, sans-serif;
}

* {
	max-width: 100%;
	height: auto;
	font-family: var(--f_notoSans);
	line-height: 1.5;
	letter-spacing: 0;
	font-weight: 400;
	word-break: break-all;
	color: var(--c_txt);
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
*::before, *::after {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	font-weight: inherit;
	color: inherit;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
* > a, * > span, * > label, * > mark, * > em, * > strong, * > var, * > sup {
	font-family: inherit;
	font-style: inherit;
	font-size: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	font-weight: inherit;
	text-align: inherit;
	color: inherit;
}
*:focus {
	outline: auto;
	outline-color: var(--c_txt);
}
.btn.btn-form input:focus,
.btn.btn-form input:active {
	outline: none;
	box-shadow: none;
}
html, body {
	min-width: calc(136.6rem - var(--scrollbar));
	scrollbar-gutter: stable;
}
@media only screen and (max-width: 1023px) {
	html, body {
		min-width: auto;
	}
}

html {
	height: 100%;
	font-size: 62.5%;
}
@media only screen and (max-width: 1365px) {
	html {
		font-size: .7vw;
	}
}
@media only screen and (max-width: 1023px) {
	html {
		font-size: 62.5%;
	}
}
@media only screen and (max-width: 374px) {
	html {
		font-size: 2.6vw;
	}
}

body {
	font-size: 1.6rem;
	position: relative;
}
@media only screen and (max-width: 1023px) {
	body {
		font-size: 1.4rem;
	}
}

p {
	text-align: justify;
}

li {
	list-style-type: none;
}

img {
	width: auto;
	border: none;
	display: block;
}

a {
	text-decoration: none;
	display: block;
	outline: none;
}
.cfix:after {
	content: "";
	display: block;
	clear: both;
}

.hidden {
	overflow-y: hidden !important;
}

var {
	font-size: 1em;
}
var sup {
	font-size: .75em;
}

picture {
	display: block;
}

/* base style**************************************************************************************/
.section-ttl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding-bottom: 1.6rem;
	position: relative;
}
@media only screen and (max-width: 1023px) {
	.section-ttl {
		padding-bottom: 1em;
	}
}
.section-ttl::before {
	content: none;
	width: 4rem;
	height: .6rem;
	background: var(--bg_accent);
	border-radius: .2rem;
	position: absolute;
	bottom: 0;
	left: 50%;
	translate: -50% 0;
}
.section-ttl .ttl {
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 1.6;
	color: var(--c_primary_dark);
	text-align: center;
}
@media only screen and (max-width: 1023px) {
	.section-ttl .ttl {
		font-size: 2rem;
	}
}
.section-ttl .ttl .sml {
	font-size: 2.2rem;
	display: block;
}
@media only screen and (max-width: 1023px) {
	.section-ttl .ttl .sml {
		font-size: 1.6rem;
	}
}
.bg-primary-dark .section-ttl .ttl {
	color: var(--c_white);
}
.section-ttl .reception-obj {
	width: 16.4rem;
	height: 16rem;
	position: absolute;
}
@media only screen and (max-width: 1023px) {
	.section-ttl .reception-obj {
		display: none;
	}
}
.section-ttl .reception-obj.top {
	top: 0;
}
.section-ttl .reception-obj.right {
	right: 0;
}
.section-ttl .reception-obj.bottom {
	bottom: 0;
}
.section-ttl .reception-obj.left {
	left: 0;
}
.section-ttl .reception-obj.center {
	left: auto;
	right: auto;
}

.lead-grad-line-ttl {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.375;
	color: var(--c_primary_dark);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	gap: 1.6rem;
}
@media only screen and (max-width: 1023px) {
	.lead-grad-line-ttl {
		font-size: 1.6rem;
	}
}
.bg-primary-dark .lead-grad-line-ttl {
	color: var(--c_white);
}
.lead-grad-line-ttl::before {
	content: "";
	width: .4rem;
	background-image: -webkit-gradient(linear, left bottom, left top, from(rgb(255, 255, 255)), to(rgb(39, 162, 227)));
	background-image: linear-gradient(0deg, rgb(255, 255, 255), rgb(39, 162, 227));
	border-radius: .4rem;
	display: block;
}
.lead-grad-line-ttl.line-dark::before {
	width: .6rem;
	background-image: -webkit-gradient(linear, left bottom, left top, from(rgb(15, 92, 156)), to(rgb(39, 162, 227)));
	background-image: linear-gradient(0deg, rgb(15, 92, 156), rgb(39, 162, 227));
}
.lead-grad-line-ttl span {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

.description-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-top: 4rem;
}
.description-wrap p {
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 2;
	text-align: center;
}
@media only screen and (max-width: 1023px) {
	.description-wrap p {
		font-size: 1.6rem;
	}
}

.txt-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.txt-wrap p {
	font-size: 1.6rem;
}
@media only screen and (max-width: 1023px) {
	.txt-wrap p {
		font-size: 1.4rem;
	}
}
.bg-primary-dark .txt-wrap p {
	color: var(--c_white);
}

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

.flex-box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.flex-box .col {
	width: 100%;
}

.btn-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.btn-wrap.cta-btn-wrap {
	-ms-flex-flow: wrap;
	flex-flow: wrap;
	gap: 1rem 3.5rem;
}
.btn-wrap.cta-btn-wrap .btn {
	width: 100%;
	max-width: 38rem;
	font-size: 1.8rem;
	padding: 1.195em 1em;
}
@media only screen and (max-width: 1023px) {
	.btn-wrap.cta-btn-wrap .btn {
		font-size: 1.6rem;
		padding: .688em 1em;
	}
}

.btn.btn-arrow {
	font-weight: 700;
	border-radius: 100vw;
	padding: .25em calc(2em + 1rem);
	position: relative;
	overflow: hidden;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.btn.btn-arrow span {
	position: relative;
	z-index: 1;
}
.btn.btn-arrow::before {
	content: "";
	width: 2em;
	height: 2em;
	background: var(--bg_accent);
	border-radius: 100vw;
	display: block;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.btn.btn-arrow .icon-arrow {
	width: 2em;
	height: 2em;
	text-indent: 100%;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	overflow: hidden;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.btn.btn-arrow .icon-arrow::before {
	content: "";
	width: 1rem;
	height: 1rem;
	border-right: .2rem solid var(--c_white);
	border-bottom: .2rem solid var(--c_white);
	display: block;
	position: absolute;
	top: 50%;
	translate: -50% -50%;
	rotate: -45deg;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.btn.btn-arrow .icon-arrow::after {
	content: "";
	width: 0;
	height: 0;
	border-top: .2rem solid var(--c_white);
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.btn.btn-arrow.arrow-right .icon-arrow::before {
	rotate: -45deg;
	left: calc(50% - .25rem);
}
.btn.btn-arrow.arrow-right.icon-right .icon-arrow::after {
	left: .5rem;
}
.btn.btn-arrow.arrow-right.icon-left .icon-arrow::after {
	left: 1rem;
}
.btn.btn-arrow.arrow-left .icon-arrow::before {
	rotate: 135deg;
	left: calc(50% + .25rem);
}
.btn.btn-arrow.arrow-left.icon-right .icon-arrow::after {
	right: 1rem;
}
.btn.btn-arrow.arrow-left.icon-left .icon-arrow::after {
	right: .5rem;
}
.btn.btn-arrow.icon-right .icon-arrow {
	right: 0;
}
.btn.btn-arrow.icon-right::before {
	right: 0;
}
.btn.btn-arrow.icon-left .icon-arrow {
	left: 0;
}
.btn.btn-arrow.icon-left::before {
	left: 0;
}
@media only screen and (min-width: 1024px) {
	.btn.btn-arrow.hov-action:hover, .btn.btn-arrow.hov-action:focus-within {
		color: var(--c_white);
	}
	.btn.btn-arrow.hov-action:hover::before, .btn.btn-arrow.hov-action:focus-within::before {
		width: 100%;
	}
	.btn.btn-arrow.hov-action:hover .icon-arrow::after, .btn.btn-arrow.hov-action:focus-within .icon-arrow::after {
		width: 1.5rem;
	}
	.btn.btn-arrow.hov-action:hover.arrow-left.icon-right .icon-arrow::before, .btn.btn-arrow.hov-action:focus-within.arrow-left.icon-right .icon-arrow::before {
		left: 1.25rem;
	}
	.btn.btn-arrow.hov-action:hover.arrow-left.icon-left .icon-arrow::before, .btn.btn-arrow.hov-action:focus-within.arrow-left.icon-left .icon-arrow::before {
		left: 1.75rem;
	}
	.btn.btn-arrow.hov-action:hover.arrow-right.icon-right .icon-arrow::before, .btn.btn-arrow.hov-action:focus-within.arrow-right.icon-right .icon-arrow::before {
		left: 1.5rem;
	}
	.btn.btn-arrow.hov-action:hover.arrow-right.icon-left .icon-arrow::before, .btn.btn-arrow.hov-action:focus-within.arrow-right.icon-left .icon-arrow::before {
		left: 2rem;
	}
}

.img-blank-set:empty {
	height: 100%;
	position: relative;
}
.img-blank-set:empty::before {
	content: "";
	width: 100%;
	height: 100%;
	background: url(../img/header_logo@2x.png) no-repeat center/50%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	scale: 1;
	opacity: .7;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.bg-primary, .bg-contact {
	background: var(--bg_primary);
}

.bg-accent, .bg-request {
	background: var(--bg_accent);
}

.bg-primary-dark {
	background: var(--c_primary_dark);
}

.bg-primary-pale {
	background: var(--bg_primary_pale);
}

.bg-base {
	background: var(--bg_base);
}

.bg-white {
	background: var(--c_white);
}

.bdr-gray {
	border: .1rem solid var(--bdr_gray);
}

@media only screen and (min-width: 1024px) {
	.pc-hide {
		display: none;
	}
}

@media only screen and (max-width: 1023px) {
	.sp-hide {
		display: none;
	}
}

.word-break span {
	display: inline-block;
}

/**/
aside.cta-request {
	padding: 4rem 1rem;
	background-image: -webkit-gradient(linear, left top, right top, from(rgb(15, 92, 196)), to(rgb(39, 162, 227)));
	background-image: linear-gradient(90deg, rgb(15, 92, 196), rgb(39, 162, 227));
}
aside.cta-request > .wrapper {
	max-width: 96rem;
	margin: auto;
}
aside.cta-request > .wrapper > .flex-box {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 2rem 10rem;
}
@media only screen and (max-width: 1023px) {
	aside.cta-request > .wrapper > .flex-box {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-flow: column;
		flex-flow: column;
	}
}
aside.cta-request > .wrapper > .flex-box .cta-ttl-wrap .cta-ttl {
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 1.5;
	color: var(--c_white);
}
@media only screen and (max-width: 1023px) {
	aside.cta-request > .wrapper > .flex-box .cta-ttl-wrap .cta-ttl {
		font-size: 2rem;
	}
}
aside.cta-request > .wrapper > .flex-box .flex-box {
	background: var(--c_white);
	border-radius: 2rem;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-flow: row-reverse;
	flex-flow: row-reverse;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 2rem 4rem;
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	padding: 3rem 4rem;
	position: relative;
}
@media only screen and (max-width: 1023px) {
	aside.cta-request > .wrapper > .flex-box .flex-box {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-flow: column-reverse;
		flex-flow: column-reverse;
		padding: 2rem 1rem;
	}
}
aside.cta-request > .wrapper > .flex-box .flex-box .content-wrap {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	position: relative;
}
aside.cta-request > .wrapper > .flex-box .flex-box .content-wrap .txt-wrap p {
	font-size: 1.6rem;
	line-height: 1.6;
}
@media only screen and (max-width: 1023px) {
	aside.cta-request > .wrapper > .flex-box .flex-box .content-wrap .txt-wrap p {
		font-size: 1.4rem;
	}
}
aside.cta-request > .wrapper > .flex-box .flex-box .content-wrap .btn-wrap {
	margin-top: 3rem;
}
@media only screen and (max-width: 1023px) {
	aside.cta-request > .wrapper > .flex-box .flex-box .content-wrap .btn-wrap {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
}
aside.cta-request > .wrapper > .flex-box .flex-box .content-wrap .btn-wrap .btn {
	min-width: 32rem;
	font-size: 1.8rem;
	padding: 1.195em 1em;
}
@media only screen and (max-width: 1023px) {
	aside.cta-request > .wrapper > .flex-box .flex-box .content-wrap .btn-wrap .btn {
		font-size: 1.6rem;
	}
}
aside.cta-request > .wrapper > .flex-box .flex-box .img-wrap {
	max-width: 13.2rem;
	position: relative;
}
aside.cta-contact {
	background: var(--c_white);
	padding: 6rem 1rem;
}
aside.cta-contact > .wrapper {
	max-width: 116rem;
	margin: auto;
}
aside.cta-contact > .wrapper > .flex-box {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 2rem 4rem;
}
@media only screen and (max-width: 1023px) {
	aside.cta-contact > .wrapper > .flex-box {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-flow: column;
		flex-flow: column;
	}
}
aside.cta-contact > .wrapper > .flex-box .cta-ttl-wrap .cta-ttl {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
}
@media only screen and (max-width: 1023px) {
	aside.cta-contact > .wrapper > .flex-box .cta-ttl-wrap .cta-ttl {
		font-size: 1.6rem;
	}
}
aside.cta-contact > .wrapper > .flex-box .btn-wrap .btn {
	min-width: 32rem;
	font-size: 1.8rem;
	padding: 1.195em 1em;
}
@media only screen and (max-width: 1023px) {
	aside.cta-contact > .wrapper > .flex-box .btn-wrap .btn {
		font-size: 1.6rem;
	}
}
aside.cta-fixed {
	position: fixed;
	top: 50%;
	right: 0;
	z-index: 1;
	translate: 0 -50%;
	display: none;
}
@media only screen and (max-width: 1023px) {
	aside.cta-fixed {
		display: none;
	}
}
aside.cta-fixed > .wrapper + .wrapper {
	margin-top: 1rem;
}
aside.cta-fixed > .wrapper.request {
	width: 18.4rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-flow: column-reverse;
	flex-flow: column-reverse;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}
aside.cta-fixed > .wrapper.request .content-wrap {
	background: var(--bg_accent);
	border: .1rem solid var(--bg_accent);
	border-radius: 1rem 0 0 1rem;
	-webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
	box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
	padding: 4rem 1rem 1rem;
	-webkit-transition: all .3s;
	transition: all .3s;
}
aside.cta-fixed > .wrapper.request .content-wrap .cta-ttl {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	color: var(--c_white);
	-webkit-transition: all .3s;
	transition: all .3s;
}
aside.cta-fixed > .wrapper.request > .img-wrap {
	max-width: 12.8rem;
	margin: auto auto -3.5rem;
	position: relative;
	overflow: hidden;
}
aside.cta-fixed > .wrapper.request > .img-wrap img {
	scale: 1;
	-webkit-transition: all .3s;
	transition: all .3s;
}
@media only screen and (min-width: 1024px) {
	aside.cta-fixed > .wrapper.request:hover .content-wrap {
		background: var(--c_white);
		-webkit-box-shadow: 0 0 2rem 0 rgba(0, 0, 0, .15);
		box-shadow: 0 0 2rem 0 rgba(0, 0, 0, .15);
	}
	aside.cta-fixed > .wrapper.request:hover .content-wrap .cta-ttl {
		color: var(--c_accent);
	}
	aside.cta-fixed > .wrapper.request:hover > .img-wrap img {
		scale: 1.1;
	}
}
/* base style end */
.js-anime-parent .js-anime-obj {
	-webkit-transform-origin: 50% 100%;
	transform-origin: 50% 100%;
	translate: 0 100%;
	scale: 0;
	opacity: 0;
	-webkit-transition: all .4s ease-out;
	transition: all .4s ease-out;
}
.js-anime-parent .js-anime-obj.action {
	translate: 0 0;
	scale: 1;
	opacity: 1;
}

.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .6rem;
	padding: 1.2rem 2.6rem;
	font-size: 1.6rem;
	font-weight: 700;
	border-radius: 12px;
	line-height: 1;
	white-space: nowrap;
	transition: all .25s ease;
}
.btn-request {
	background: #e96a2c;
	color: #fff;
	border: 2px solid #e96a2c;
}

.btn-request:hover {
	background: #fff;
	color: #e96a2c;
}

.btn-contact {
	background: #fff;
	color: var(--c_primary);
	border: 2px solid var(--c_primary);
}

.btn-contact:hover {
	background: var(--c_primary);
	color: #fff;
	border-color: #ffffff;
}

.btn-free {
	display: inline-block;
	font-size: 1.4rem;
	font-weight: 700;
	padding: .3em .6em;
	border-radius: inherit;
	line-height: 1;
}
.btn-request .btn-free {
	background: #fff;
	color: #e96a2c;
}

.btn-contact .btn-free {
	background: var(--c_primary);
	color: #fff;
}
@media (max-width: 768px) {
	.kv-cta {
		display: flex;
		flex-direction: column;
		gap: 1.2rem;
	}

	.btn {
		width: 100%;
		justify-content: center;
	}
}
section#front-feature {
  padding: 13rem 1rem 0;
}

@media (max-width: 1023px) {
	section#front-feature {
		padding: 7rem 1rem 0;
	}
}
.form-btn-wrap {
	gap: 2rem;
}
.btn.btn-form {
	line-height: 1.5;
	padding: .5em 1em;
	border-radius: 12px;
	font-size: 1.8rem;
}
.btn-back {
	min-width: 20rem;
	font-size: 1.7rem;
	opacity: .9;
}
.btn-submit {
	min-width: 26rem;
	font-size: 1.7rem;
}
@media (max-width: 1023px) {
	.form-btn-wrap {
		flex-direction: column-reverse;
	}
	.btn-back,
	.btn-submit {
		width: 100%;
	}
}
.btn.btn-form.btn-primary {
	background: var(--bg_primary);
	color: #fff;
	border: 2px solid var(--bg_primary);
}
.btn.btn-form.btn-accent {
	background: var(--bg_accent);
	color: #fff;
	border: 2px solid var(--bg_accent);
}
@media (min-width: 1024px) {
	.btn.btn-form.btn-primary:hover {
	background: #fff;
	color: var(--bg_primary);
	}
	.btn.btn-form.btn-accent:hover {
		background: #fff;
		color: var(--bg_accent);
	}
}
.btn.btn-form input {
	background: none;
	border: none;
	color: inherit;
	font: inherit;
	padding: 0;
	cursor: pointer;
}
.form-wrap .btn.btn-def {
	border-radius: 12px;
	background: var(--bg_accent);
	border-color: var(--bg_accent);
	color: #fff;
	border: 2px solid var(--bg_accent);
}
@media (min-width: 1024px) {
	.form-wrap .btn.btn-def:hover,
	.form-wrap .btn.btn-def:focus-within {
		background: #fff;
		color: var(--bg_accent);
		border-color: var(--bg_accent);
	}
}
.form-wrap .btn.btn-form {
	font-size: 1.8rem;
	padding: 1.2em 1em;
}
aside.cta-contact.fc-series {
	background: #EAF4FB;
}
.fc-series-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 3rem;
	margin-top: 4rem;
}
.fc-card {
	background: #fff;
	color: #333;
	border-radius: 16px;
	padding: 3rem 2rem;
	text-align: center;
	box-shadow: 0 6px 18px rgba(0,0,0,0.08);
	transition: .25s;
}
.fc-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 12px 24px rgba(0,0,0,0.15);
}
.fc-card img {
	height: 60px;
	margin: 0 auto 1.5rem;
}
.fc-desc {
	color: var(--c_txt);
	font-size: 1.6rem;
	font-weight: 500;
	margin: 1rem 0 2rem;
	text-align: center;
}
.fc-btn {
	display: inline-block;
	padding: 1rem 2.5rem;
	border-radius: 999px;
	color: #fff;
	font-weight: bold;
}
.fc-kintai .fc-btn { background:#002a80; }
.fc-hr .fc-btn     { background:#00a77a; }
.fc-haken .fc-btn  { background:#9e2568; }
.fc-pack .fc-btn   { background:#0e63c4; }
.fc-pack {
	grid-column: 2;
}
@media (max-width:768px){
	.fc-series-grid {
		grid-template-columns: 1fr;
	}
	.fc-pack {
		grid-column: auto;
	}
}
.fc-link {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	color: inherit;
	text-decoration: none;
}
