/*===============================================================================
links
================================================================================*/
.access__links{
	--count: 1;
	--gap: var(--g-sec--md);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--gap);
	max-width: 720px;
	margin-inline: auto;
	margin-bottom: var(--g-sec--md);
}
@media (min-width: 600px){
	.access__links{
		--count: 2;
	}
}
.access__link{
	--icon-c: var(--c-main);
	--icon-w: .8em;
	--icon-h: .8em;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .4em;
	width: calc( ( 100% - var(--gap) * (var(--count) - 1) ) / var(--count) );
	padding: 1.2em;
	text-align: center;
	border: 1px solid var(--c-dark);
	outline-color: transparent;
	background: var(--c-light);
	border-radius: var(--bd-r--sm);
	overflow: hidden;
	color: var(--c-dark);
	transition: var(--ani-t--normal) ease-out;
}
.access__link:is(:hover, :focus){
	border-color: var(--c-main);
	outline: 3px solid var(--c-main);
	outline-offset: -4px;
	color: var(--c-main);
}
.access__link::after{
	content: "";
	border-style: solid;
	border-width: var(--icon-h) var(--icon-w) 0 var(--icon-w);
	border-color: var(--icon-c) transparent transparent transparent;
	transition: var(--ani-t--normal) ease-out;
}
.access__link:is(:hover, :focus)::after{
	transform: translateY(1.2em);
}



/*===============================================================================
section
================================================================================*/
.access-section:not(:last-child){
	margin-bottom: var(--g-sec--lg);
}
.access-section{
	max-width: var(--width-sm);
	margin-inline: auto;
	scroll-margin-top: var(--scroll-position);
	padding: var(--g-sec--md) 1rem;
	background: var(--c-light);
	border: 1px solid var(--c-dark);
	border-radius: var(--bd-r--sm);
	overflow: hidden;
}
.access-section__inner{
	max-width: 840px;
	margin-inline: auto;
}
.access-section__title{
	margin-bottom: var(--g-sec--xs);
	text-align: center;
}

/*===============================
* images
* =================================*/
.access-section__images{
	--count: 1;
	--gap: var(--g-sec--xs);
	display: flex;
	flex-wrap: wrap;
	gap: var(--g-sec--md) var(--gap);
	margin-bottom: var(--g-sec--xs);
}
@media (min-width: 600px){
	.access-section__images{
		--count: 2;
	}
}

/*===============================
* swiper
* =================================*/
.access-section__swiper{
	flex-grow: 1;
	width: calc( ( 100% - var(--gap) * (var(--count) - 1) ) / var(--count) );
}
.access-section__swiper img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}
/* ＞の部分 */
.access-section__swiper :is(.swiper-button-next, .swiper-button-prev){
	--swiper-navigation-size: 1rem;
	color: var(--c-main);
}
.access-section__swiper .swiper-button-prev{
	left: 1rem;
}
.access-section__swiper .swiper-button-next{
	right: 1rem;
}
.access-section__swiper :is(.swiper-button-next, .swiper-button-prev)::before{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
	content: "";
	width: calc( 100% + 1rem );
	height: calc( 100% + 1rem );
	background: var(--c-light);
	border: 2px solid var(--c-main);
	border-radius: 50%;
	overflow: hidden;
}

/*===============================
* map
* =================================*/
.access-section__map{
	flex-grow: 1;
	width: calc( ( 100% - var(--gap) * (var(--count) - 1) ) / var(--count) );
}
.access-section__map iframe{
	display: block;
	width: 100%;
	height: 100%;
	aspect-ratio: 330 / 260;
}
@media (min-width: 600px){
	.access-section__map iframe{
		aspect-ratio: 400 / 420;
	}
}

/*===============================
* table
* =================================*/
.access-section__table{
	margin-bottom: var(--g-sec--xs);
}
.access-section__table table{
	margin-bottom: 0;
}
.access-section__table :is(th, td){
	padding: 1.5rem clamp(1rem, -0.071rem + 2.86vw, 2.5rem);
	border-color: var(--c-dark);
	font-size: 1rem;
}
.access-section__table th{
	width: 25%;
	min-width: fit-content;
	text-align: center;
	background: var(--c-blue--lightest);
	font-weight: var(--fw-md);
}

.access-section__table td{
	background: var(--c-light);
}

.access-section__table .c-autoWrap > span:first-of-type{
	margin-right: .5em;
}

/*===============================
* link(btn)
* =================================*/
.access-section__link{
	max-width: 640px;
	margin-inline: auto;
}
.access-section__btn{
	display: inline-flex;
	justify-content: center;
	align-items: baseline;
	gap: 0 .2em;
	flex-wrap: wrap;
	width: 100%;
	padding: 1.5rem .75rem;
	text-align: center;
	background: var(--c-light);
	border: 1px solid var(--c-dark);
	border-radius: var(--bd-r--sm);
	overflow: hidden;
	box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.3);
	font-weight: var(--fw-lg);
	font-size: 2.5rem;
	cursor: pointer;
	transition: var(--ani-t--normal) ease-out;
}
.access-section__btn:is(:hover, :focus){
	opacity: .7;
	transform: translateY(4px);
}
.access-section__btn svg{
	width: .8em;
	color: var(--c-dark);
}
.access-section__time{
	font-size: .5em;
	color: var(--c-dark);
}



/*===============================================================================
illust
================================================================================*/
.access__deco{
	margin-bottom: var(--g-sec--lg);
}

