@charset "utf-8";
/* PC ================================================== */
@media all and (min-width:1025px){
#fc {
	width: 100%;
	height: auto;
	position: relative;
}
	.fc__inner {
		width: 90%;
		max-width: 1000px;
		height: auto;
		padding: 0 0 80px;
		margin: 0 auto;
	}
		.fc__heading {
			width: 100%;
			height: auto;
			margin-bottom: 80px;
		}
			.fc__heading__txt {
				width: 100%;
				height: auto;
				margin-bottom: 18px;
				font-size: 1.75rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.15em;
				text-align: center;
			}
			.fc__heading__large {
				width: 100%;
				height: auto;
				font-size: 2.375rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.15em;
				text-align: center;
			}
		.fc__list {
			width: 100%;
			height: auto;
			display: flex;
			justify-content: space-between;
			align-items: flex-start;
			flex-wrap: wrap;
			row-gap: 60px;
		}
			.fc__item {
				width: 48.2%;
				height: auto;
				background-color: #fff;
			}
				.fc__image {
					width: 100%;
					height: auto;
				}
					.fc__image img {
						width: 100%;
						height: auto;
					}
				.fc__details {
					width: 100%;
					height: auto;
					padding: 15px 25px 25px 25px;
					position: relative;
				}
					.fc__details__inner {
						width: 100%;
						height: auto;
					}
						.fc__ttl {
							width: 100%;
							height: auto;
							margin-bottom: 20px;
							font-size: 1.5rem;
							font-weight: 700;
							line-height: 1.5;
							letter-spacing: 0em;
							display: flex;
							justify-content: flex-start;
							align-items: center;
						}
							.fc__logo {
								width: 80px;
								height: auto;
								margin-right: 18px;
							}
								.fc__logo img {
									width: 100%;
									height: auto;
								}
						.fc__link {
							width: 100%;
							height: auto;
						}
							.fc__btn {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 100%;
								height: 56px;
								background-color: #fff;
								border: solid 1px var(--color--black);
								border-radius: 28px;
								font-size: 1rem;
								font-weight: 700;
								line-height: 1;
								letter-spacing: 0.05em;
								position: relative;
								color: var(--color--black);
								transition: .3s;
							}
							.fc__btn:hover {
								background-color: var(--color--black);
								color: #fff;
							}
								.fc__btn::before,
								.fc__btn::after {
									content: '';
									display: block;
									position: absolute;
									top: 50%;
									transition: .3s;
								}
								.fc__btn::before {
									width: 14px;
									height: 1px;
									background-color: var(--color--black);
									right: 21px;
									transform: translate(0%,-50%);
								}
								.fc__btn::after {
									width: 6px;
									height: 6px;
									border-top: solid 1px var(--color--black);
									border-right: solid 1px var(--color--black);
									right: 21px;
									transform: rotate(45deg) translate(0, -50%);
									transform-origin: 50% 0%;
								}
								.fc__btn:hover::before,
								.fc__btn:hover::after {
									right: 17px;
								}
								.fc__btn:hover::before {
									background-color: #fff;
								}
								.fc__btn:hover::after {
									border-top: solid 1px #fff;
									border-right: solid 1px #fff;
								}
}

/* Tablet ================================================== */
@media all and (min-width:600px) and (max-width:1024px){
#fc {
	width: 100%;
	height: auto;
	position: relative;
}
	.fc__inner {
		width: 90%;
		height: auto;
		padding: 0 0 100px;
		margin: 0 auto;
	}
		.fc__heading {
			width: 100%;
			height: auto;
			margin-bottom: 80px;
		}
			.fc__heading__txt {
				width: 100%;
				height: auto;
				margin-bottom: 18px;
				font-size: 1.5rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.15em;
				text-align: center;
			}
			.fc__heading__large {
				width: 100%;
				height: auto;
				font-size: 2rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.15em;
				text-align: center;
			}
		.fc__list {
			width: 100%;
			height: auto;
			display: flex;
			justify-content: space-between;
			align-items: flex-start;
			flex-wrap: wrap;
			row-gap: 60px;
		}
			.fc__item {
				width: 48.5%;
				height: auto;
				background-color: #fff;
			}
				.fc__image {
					width: 100%;
					height: auto;
				}
					.fc__image img {
						width: 100%;
						height: auto;
					}
				.fc__details {
					width: 93%;
					height: auto;
					padding: 15px 0px 25px;
					margin: 0 auto;
				}
					.fc__details__inner {
						width: 100%;
						height: auto;
					}
						.fc__ttl {
							width: 100%;
							height: auto;
							margin-bottom: 15px;
							font-size: 1.125rem;
							font-weight: 700;
							line-height: 1.5;
							letter-spacing: 0em;
							display: flex;
							justify-content: flex-start;
							align-items: center;
						}
							.fc__logo {
								width: 60px;
								height: auto;
								margin-right: 10px;
							}
								.fc__logo img {
									width: 100%;
									height: auto;
								}
						.fc__link {
							width: 100%;
							height: auto;
						}
							.fc__btn {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 100%;
								height: 56px;
								background-color: #fff;
								border: solid 1px var(--color--black);
								border-radius: 28px;
								font-size: 1rem;
								font-weight: 700;
								line-height: 1;
								letter-spacing: 0.05em;
								position: relative;
								color: var(--color--black);
								transition: .3s;
							}
							.fc__btn:hover {
								background-color: var(--color--black);
								color: #fff;
							}
								.fc__btn::before,
								.fc__btn::after {
									content: '';
									display: block;
									position: absolute;
									top: 50%;
									transition: .3s;
								}
								.fc__btn::before {
									width: 14px;
									height: 1px;
									background-color: var(--color--black);
									right: 21px;
									transform: translate(0%,-50%);
								}
								.fc__btn::after {
									width: 6px;
									height: 6px;
									border-top: solid 1px var(--color--black);
									border-right: solid 1px var(--color--black);
									right: 21px;
									transform: rotate(45deg) translate(0, -50%);
									transform-origin: 50% 0%;
								}
								.fc__btn:hover::before,
								.fc__btn:hover::after {
									right: 17px;
								}
								.fc__btn:hover::before {
									background-color: #fff;
								}
								.fc__btn:hover::after {
									border-top: solid 1px #fff;
									border-right: solid 1px #fff;
								}
}

/* SP ================================================== */
@media all and (max-width:599px){
#fc {
	width: 100%;
	height: auto;
	padding: 0 0 80px;
	position: relative;
}
	.fc__inner {
		width: 90%;
		height: auto;
		margin: 0 auto;
	}
		.fc__heading {
			width: 100%;
			height: auto;
			margin-bottom: 50px;
		}
			.fc__heading__txt {
				width: 100%;
				height: auto;
				margin-bottom: 15px;
				font-size: 1rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.15em;
				text-align: center;
			}
			.fc__heading__large {
				width: 100%;
				height: auto;
				font-size: 1.5rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.15em;
				text-align: center;
			}
		.fc__list {
			width: 100%;
			height: auto;
		}
			.fc__item {
				width: 100%;
				height: auto;
				margin-bottom: 60px;
				background-color: #fff;
			}
			.fc__item:last-of-type {
				margin-bottom: 0;
			}
			.fc__image {
				width: 100%;
				height: auto;
			}
				.fc__image img {
					width: 100%;
					height: auto;
				}
			.fc__details {
				width: 93%;
				height: auto;
				padding: 15px 0px 25px;
				margin: 0 auto;
			}
				.fc__details__inner {
					width: 100%;
					height: auto;
				}
					.fc__ttl {
						width: 100%;
						height: auto;
						margin-bottom: 15px;
						font-size: 1.125rem;
						font-weight: 700;
						line-height: 1.5;
						letter-spacing: 0em;
						display: flex;
						justify-content: flex-start;
						align-items: center;
						white-space: nowrap;
					}
						.fc__logo {
							width: 60px;
							height: auto;
							margin-right: 12px;
						}
							.fc__logo img {
								width: 100%;
								height: auto;
							}
					.fc__link {
						width: 100%;
						height: auto;
					}
						.fc__btn {
							display: flex;
							justify-content: center;
							align-items: center;
							width: 100%;
							height: 56px;
							background-color: #fff;
							border: solid 1px var(--color--black);
							border-radius: 28px;
							font-size: 1rem;
							font-weight: 700;
							line-height: 1;
							letter-spacing: 0.05em;
							position: relative;
							color: var(--color--black);
							transition: .3s;
						}
						.fc__btn:hover {
							background-color: var(--color--black);
							color: #fff;
						}
							.fc__btn::before,
							.fc__btn::after {
								content: '';
								display: block;
								position: absolute;
								top: 50%;
								transition: .3s;
							}
							.fc__btn::before {
								width: 14px;
								height: 1px;
								background-color: var(--color--black);
								right: 21px;
								transform: translate(0%,-50%);
							}
							.fc__btn::after {
								width: 6px;
								height: 6px;
								border-top: solid 1px var(--color--black);
								border-right: solid 1px var(--color--black);
								right: 21px;
								transform: rotate(45deg) translate(0, -50%);
								transform-origin: 50% 0%;
							}
							.fc__btn:hover::before,
							.fc__btn:hover::after {
								right: 17px;
							}
							.fc__btn:hover::before {
								background-color: #fff;
							}
							.fc__btn:hover::after {
								border-top: solid 1px #fff;
								border-right: solid 1px #fff;
							}
}