@charset "utf-8";
/* fv */
#fv {
	width: 100%;
	height: calc(100vh - 100px);
}
	.fv__inner {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		width: 100%;
		height: 100%;
	}
		.fv__contents {
			display: flex;
			justify-content: center;
			align-items: center;
			width: 50%;
			height: 100%;
			background-color: var(--color--navy);
		}
			.fv__contents_wrap {
				width: 55.5555%;
				min-width: 400px;
				height: auto;
			}
				.fv__contents__txt {
					width: 100%;
					height: auto;
					padding: 0 0 24px;
					margin: 0 auto 24px;
					font-size: 24px;
					font-weight: 500;
					line-height: 1.8;
					color: var(--color--white);
					position: relative;
				}
					.fv__contents__txt::after {
						content: '';
						display: block;
						width: 40px;
						height: 1px;
						background-color: var(--color--white);
						position: absolute;
						bottom: 0;
						left: 0;
					}
				.fv__heading {
					width: 100%;
					height: auto;
					color: var(--color--white);
				}
					.fv__heading__sub {
						width: 100%;
						height: auto;
						margin: 0 auto 8px;
						font-size: 15px;
						font-weight: 500;
						line-height: 2;
					}
					.fv__heading__main {
						width: 100%;
						height: auto;
						font-size: 20px;
						font-weight: 500;
						line-height: 1.8;
					}
		.fv__map_image {
			width: 50%;
			height: 100%;
		}
			.fv__map_image img {
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center;
			}

#section_article {
	width: 100%;
	height: auto;
}
	.section__contents {
		width: 100%;
		height: auto;
		padding: 200px 0;
	}
		.section__contents__inner {
			display: flex;
			justify-content: space-between;
			align-items: stretch;
			width: 90%;
			max-width: 1120px;
			height: auto;
			margin: 0 auto;
		}
			.section__side_bar {
				width: 34.2857%;
				height: auto;
				position: relative;
			}
				.section__personal_info_wrap {
					width: 100%;
					height: auto;
					position: sticky;
					top: 150px;
					left: 0;
				}
					.section__personal_info_wrap::before {
						content: '';
						display: block;
						width: 40px;
						height: 1px;
						background-color: var(--color--navy);
					}
					.section__personal_info__name {
						width: 100%;
						height: auto;
						margin: 40px auto 16px;
						font-size: 24px;
						font-weight: 500;
						line-height: 1.8;
					}
					.section__personal_info__sub {
						width: 100%;
						height: auto;
						font-size: 15px;
						font-weight: 500;
						line-height: 2;
					}
			.section__article_body {
				width: 65.7142%;
				height: auto;
			}
				.article_body__date {
					width: 100%;
					height: auto;
					margin: 0 auto 24px;
					font-size: 15px;
					font-weight: 400;
					line-height: 1.2;
					text-align: right;
				}
				.article_body__contents {
					width: 100%;
					height: auto;
					margin: 0 auto 48px;
				}
					.article_body__contents h2,
					.article_body__contents h3,
					.article_body__contents h4 {
						width: 100%;
						height: auto;
						margin: 0 auto 24px;
						font-size: 24px;
						font-weight: 500;
						line-height: 1.8;
					}
					.article_body__contents img {
						width: 100%;
						height: auto;
						margin: 24px auto;
					}
					.article_body__contents img + h2,
					.article_body__contents img + h3,
					.article_body__contents img + h4 {
						margin: 48px auto 24px;
					}
					.article_body__contents p + h2,
					.article_body__contents p + h3,
					.article_body__contents p + h4 {
						margin: 48px auto 24px;
					}
				.article_body__shop {
					display: flex;
					justify-content: space-between;
					align-items: center;
					width: 100%;
					height: auto;
					padding: 16px;
					border: solid 1px var(--color--navy);
				}
					.article_body__shop__image {
						width: 38.3522%;
						height: auto;
						margin-right: 3.4092%;
					}
					.article_body__shop__details {
						flex: 1;
						height: auto;
					}
						.article_body__shop__details__name {
							width: 100%;
							height: auto;
							margin: 0 auto 8px;
							font-size: 20px;
							font-weight: 500;
							line-height: 1.8;
						}
						.article_body__shop__details__info {
							width: 100%;
							height: auto;
							margin: 0 auto 8px;
							font-size: 14px;
							font-weight: 500;
							line-height: 1.8;
						}
						.article_body__shop__details__btn_wrap {
							width: 100%;
							height: auto;
							padding: 8px 0;
						}
							.article_body__shop__details__btn {
								display: flex;
								justify-content: space-between;
								align-items: center;
								width: 109px;
								height: 24px;
								font-size: 13px;
								font-weight: 500;
								line-height: 1;
								color: var(--color--navy);
							}
								.article_body__shop__details__btn .arrow {
									pointer-events: none;
								}
						@media (any-hover: hover) {
							.article_body__shop__details__btn {
								-webkit-transition: 0.3s;
								transition: .3s;
							}
							.article_body__shop__details__btn:hover {
								color: var(--color--hover_navy);
							}
								.article_body__shop__details__btn .arrow {
									-webkit-transition: 0.3s;
									transition: .3s;
									position: relative;
									left: 0;
								}
								.article_body__shop__details__btn:hover .arrow {
									left: 16px;
								}
						}

#section_other {
	width: 100%;
	height: auto;
	padding: 0 0 200px;
}
	.section_other__inner {
		width: 90%;
		max-width: 1120px;
		height: auto;
		margin: 0 auto;
	}
		.section_other__contents {
			width: 100%;
			height: auto;
			padding: 48px 0 0;
			margin: 0 auto;
			border-top: solid 1px var(--color--navy);
		}
			.section_other__heading {
				display: flex;
				justify-content: space-between;
				align-items: center;
				width: 100%;
				height: auto;
				margin: 0 auto 80px;
			}
				.section_other__heading__txt {
					width: auto;
					height: auto;
					font-size: 24px;
					font-weight: 500;
					line-height: 1.8;
				}
					.section_other__heading__txt br {
						display: none;
					}
				.section_other__heading__btn_wrap {
					width: 140px;
					height: 43px;
				}
					.section_other__heading__btn {
						display: flex;
						justify-content: flex-start;
						align-items: center;
						width: 100%;
						height: 100%;
						font-size: 15px;
						font-weight: 500;
						line-height: 1;
						color: var(--color--navy);
					}
						.section_other__heading__btn .arrow {
							margin-left: 16px;
						}
				@media (any-hover: hover) {
					.section_other__heading__btn {
						-webkit-transition: 0.3s;
						transition: .3s;
					}
					.section_other__heading__btn:hover {
						color: var(--color--hover_navy);
					}
						.section_other__heading__btn .arrow {
							-webkit-transition: 0.3s;
							transition: .3s;
							position: relative;
							left: 0;
						}
						.section_other__heading__btn:hover .arrow {
							left: 16px;
						}
				}
			.section_other__list_wrap {
				width: 100%;
				height: auto;
			}
				.section_other__list {
					display: flex;
					justify-content: space-between;
					align-items: flex-start;
					flex-wrap: wrap;
					width: 100%;
					height: auto;
				}
					.section_other__list__item {
						width: 48.5714%;
						height: auto;
						padding: 40px;
					}
						.section_other__list__item_wrap {
							display: flex;
							justify-content: space-between;
							align-items: stretch;
							width: 100%;
							height: auto;
						}
							.section_other__list__item__image {
								width: 34.4827%;
								height: auto;
								aspect-ratio: 1 / 1.38125;
								overflow: hidden;
							}
								.section_other__list__item__image img {
									width: 100%;
									height: 100%;
									object-fit: cover;
									object-position: center
								}
							.section_other__list__item__details {
								display: flex;
								flex-direction: column;
								justify-content: flex-start;
								width: 56.8965%;
								height: auto;
							}
								.section_other__list__item__details__icon {
									width: 64px;
									height: auto;
									margin: 0 auto 8px 0;
								}
								.section_other__list__item__details__shop {
									width: 100%;
									height: auto;
									margin: 0 auto 4px;
									font-size: 14px;
									font-weight: 500;
									line-height: 1.6;
									color: var(--color--navy);
								}
								.section_other__list__item__details__name {
									width: 100%;
									height: auto;
									margin: 0 auto 16px;
									font-size: 20px;
									font-weight: 500;
									line-height: 1.8;
									color: var(--color--navy);
								}
								.section_other__list__item__details__btn_wrap {
									width: 100%;
									height: auto;
									margin: auto 0 0;
								}
							@media (any-hover: hover) {
								.section_other__list__item:hover .line_btn.midgray {
									border-color: var(--color--navy);
								}
									.section_other__list__item:hover .line_btn .arrow {
										left: 16px;
									}
										.section_other__list__item:hover .line_btn.midgray .arrow::before {
											background-color: var(--color--navy);
										}
							}

/* PC ================================================== */
@media all and (max-width:1110px){
#fv {
	height: auto;
}
}

/* Tablet ================================================== */
@media all and (max-width:991px){
/* section_article */
			.section__side_bar {
				width: 28%;
			}
				.article_body__shop {
					display: block;
					padding: 32px 32px 24px;
				}
					.article_body__shop__image {
						width: 100%;
						margin: 0 auto 24px;
					}
					.article_body__shop__details {
						width: 100%;
					}
}

/* SP ================================================== */
@media all and (max-width:768px){
	.fv__inner {
		flex-direction: column;
		justify-content: flex-start;
		align-items: center;
		width: 100%;
		height: auto;
	}
		.fv__contents {
			width: 100%;
			height: auto;
			padding: 52px 0;
		}
			.fv__contents_wrap {
				width: 83vw;
				min-width: initial;
			}
				.fv__contents__txt {
					padding: 0 0 16px;
					margin: 0 auto 16px;
					font-size: 18px;
					line-height: 1.7;
				}
		.fv__map_image {
			width: 100%;
			height: auto;
			margin: 0;
		}

/* section_article */
	.section__contents {
		padding: 65px 0 160px;
	}
		.section__contents__inner {
			display: block;
			width: 83%;
		}
			.section__side_bar {
				width: 100%;
			}
					.section__personal_info__name {
						margin: 16px auto 0;
					}
			.section__article_body {
				width: 100%;
				padding: 48px 0 0;
			}
				.article_body__contents {
					margin: 0 auto 48px;
				}
					.article_body__contents h2,
					.article_body__contents h3,
					.article_body__contents h4 {
						font-size: 20px;
					}
				.article_body__shop {
					display: block;
					padding: 16px 16px 8px;
				}

#section_other {
	padding: 0 0 160px;
}
	.section_other__inner {
		width: 83%;
	}
		.section_other__contents {
			padding: 24px 0 0;
		}
			.section_other__heading {
				margin: 0 auto 50px;
			}
				.section_other__heading__txt {
					font-size: 20px;
				}
				.section_other__heading__btn_wrap {
					width: auto;
					height: 40px;
				}
					.section_other__heading__btn {
						font-size: 13px;
					}
				.section_other__list {
					row-gap: 48px;
				}
					.section_other__list__item {
						width: 46.30225%;
						padding: 0;
					}
						.section_other__list__item_wrap {
							display: block;
						}
							.section_other__list__item__image {
								width: 100%;
								margin: 0 auto 8px;
								aspect-ratio: 1 / 1;
							}
							.section_other__list__item__details {
								display: block;
								width: 100%;
							}
								.section_other__list__item__details__icon {
									display: none;
								}
								.section_other__list__item__details__shop {
									height: 52px;
									line-height: 1.8;
									overflow: hidden;
								}
								.section_other__list__item__details__name {
									margin: 0 auto 8px;
									font-size: 18px;
									font-weight: 500;
									line-height: 1.7;
								}
									.section_other__list__item__details__btn_wrap .line_btn {
										padding: 8px 0;
										font-size: 13px;
									}
}

@media all and (max-width:575px){
				.section_other__heading__txt br {
					display: inline-block;
				}
}