/* CSS Document */

#main{
	margin-bottom: clamp(64px, calc(112 / 1200 * 100vw), 112px);
}

#detailHeader{
	display: grid;
	grid-template-columns: var(--wrap);
	justify-content: center;
	padding-top: clamp(16px, calc(32 / 1200 * 100vw), 32px);
	background: #f6f5ef;
	& h2{
		display: grid;
		grid-template-columns: auto 1fr;
		grid-column-gap: 0.5em;
		/*color: var(--color-theme);*/
		font-weight: 700;
		font-size: clamp(20px, calc(28 / 768 * 100vw), 28px);
		letter-spacing: 0.05em;
		&:before{
			content: "";
			aspect-ratio: 1;
			width: clamp(32px, calc(40 / 768 * 100vw), 40px);
			background: var(--color-theme);
			transform: translateY(calc(0.875em - 50%));
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M4.48.96c-.48,0-.87.39-.87.87,0,.32.18.59.43.74v15.39h.88V2.57c.25-.15.43-.42.43-.74,0-.48-.39-.87-.88-.87ZM5.74,2.41v11.46l11.52-5.74L5.74,2.41Z"/></svg>') no-repeat center / contain;
		}
	}
	& h2+div{
		display: grid;
		margin-top: clamp(24px, calc(40 / 1200 * 100vw), 40px);
		background: #fff;
		border-radius: 20px;
		overflow: hidden;
	}
	#detailPhoto{
		order: -1;
	}
	@media (min-width: 992px) {
		& h2+div{
			grid-template-columns: clamp(600px, calc(720 / 1200 * 100vw), 720px) 1fr;
			grid-template-rows: 1fr auto;
			#detailPhoto{
				grid-column: 1;
				grid-row: 1 / 3;
			}
		}
	}
}

#detailText{
	padding: clamp(16px, calc(32 / 1200 * 100vw), 32px);
	font-weight: 500;
	font-size: clamp(16px, calc(18 / 768 * 100vw), 18px);
	letter-spacing: 0.03em;
}

#detailTag{
	padding: 0 clamp(16px, calc(32 / 1200 * 100vw), 32px) clamp(16px, calc(32 / 1200 * 100vw), 32px) clamp(16px, calc(32 / 1200 * 100vw), 32px);
	& ul{
		display: flex;
		grid-gap: 8px;
	}
	& li{
		display: grid;
		align-items: center;
		min-height: 32px;
		padding: 0 16px;
		border: 1px solid var(--color-theme);
		border-radius: 16px;
	}
}

#detailPhoto{
	position: relative;
	padding-top: 66.66%;
	& img{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

#detailTable{
	display: grid;
	grid-template-columns: var(--wrap);
	justify-content: center;
	padding-top: clamp(48px, calc(64 / 1200 * 100vw), 64px);
	background: #f6f5ef;
	overflow: hidden;
	&:before{
		content: "";
		grid-column: 1;
		grid-row: 1 / 4;
		border: 2px solid var(--color-theme);
		border-radius: 16px;
	}
	&:after{
		content: "";
		grid-column: 1;
		grid-row: 1;
		align-self: center;
		border-top: 2px dotted var(--color-theme);
	}
	& h3{
		grid-column: 1;
		grid-row: 1;
		justify-self: center;
		display: grid;
		grid-template-columns: auto 1fr;
		column-gap: 8px;
		margin: clamp(16px, calc(32 / 1200 * 100vw), 32px) 1em;
		padding: 0 clamp(16px, calc(24 / 1200 * 100vw), 24px);
		background: #f6f5ef;
		font-weight: 700;
		font-size: clamp(16px, calc(20 / 768 * 100vw), 20px);
		letter-spacing: 0.1em;
		z-index: 1;
		&:before{
			content: "";
			aspect-ratio: 1;
			width: 24px;
			background: var(--color-theme);
			transform: translateY(calc(0.875em - 50%));
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M4.48.96c-.48,0-.87.39-.87.87,0,.32.18.59.43.74v15.39h.88V2.57c.25-.15.43-.42.43-.74,0-.48-.39-.87-.88-.87ZM5.74,2.41v11.46l11.52-5.74L5.74,2.41Z"/></svg>') no-repeat center / contain;
		}
	}
	& h3+div{
		grid-column: 1;
		grid-row: 2;
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(min(calc(50% - 10px), 192px), 1fr));
		grid-gap: 20px;
		margin-bottom: clamp(4px, calc(12 / 1200 * 100vw), 12px);
		padding: 0 20px;
	}
	& dl{
		position: relative;
		display: grid;
		&:not(:has(img)):before{
			content: "";
			grid-column: 1;
			grid-row: 1;
			aspect-ratio: 1;
			background: var(--dummy);
			border-radius: 100%;
		}
	}
	& dt{
		order: 1;
		display: grid;
		grid-row-gap: 4px;
		margin-top: -16px;
		font-weight: 500;
		font-size: clamp(14px, calc(16 / 768 * 100vw), 16px);
		letter-spacing: 0.05em;
		text-align: center;
		&:before{
			content: counter(count);
			grid-column: 1;
			grid-row: 1;
			justify-self: center;
			display: grid;
			align-items: center;
			aspect-ratio: 1;
			width: 32px;
			background: var(--color-theme);
			border-radius: 100%;
			color: #fff;
			font-weight: 700;
			line-height: 1;
			text-align: center;
		}
	}
	& dd{
		&:has(img){
			grid-column: 1;
			grid-row: 1;
		}
		& img{
			aspect-ratio: 1;
			object-fit: cover;
			border-radius: 100%;
		}
		&:has(a){
			display: contents;
		}
		& a{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			font-size: 0;
		}
	}
	.slick-slider{
		grid-template-columns: 24px 1fr 24px;
		grid-gap: unset;
		margin-bottom: clamp(16px, calc(32 / 1200 * 100vw), 32px);
		padding: 0 clamp(16px, calc(32 / 1200 * 100vw), 32px);
		&:before{
			content: "";
			grid-column: 2;
			grid-row: 1;
			aspect-ratio: 1;
			background: red;
			width: calc(50% - 24px);
			opacity: 0.5;
			z-index: 1;
			visibility: hidden;
		}
		@media (min-width: 768px) {
			&:before{
				width: calc((100% - 96px) / 3);
			}
		}
		@media (min-width: 992px) {
			&:before{
				width: calc((100% - 144px) / 4);
			}
		}
		@media (min-width: 1200px) {
			&:before{
				width: calc((100% - 192px) / 5);
			}
		}
	}
	.slick-list{
		grid-column: 2;
		grid-row: 1 / 3;
		margin: 0 -24px;
		&:only-child{
			.slick-track{
				margin: 0;
			}
		}
	}
	.slick-slide{
		counter-increment: count;
		display: grid;
		margin: 0 24px;
		&:before{
			content: "";
			grid-column: 1;
			grid-row: 1;
			aspect-ratio: 1;
		}
		&:after{
			content: "";
			grid-column: 1;
			grid-row: 1;
			align-self: center;
			margin-left: 100%;
			aspect-ratio: 1;
			width: 48px;
			background: var(--color-theme);
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 40" style="fill: none; stroke: black; stroke-linecap: round; stroke-linejoin: round; stroke-width: 3px;"><polyline points="24.03 27.57 31.53 20.07 24.03 12.57"/><line x1="31.53" y1="20.07" x2="9.61" y2="20.07"/></svg>') no-repeat center / 40px;
		}
		&:last-child:after{
			content: none;
		}
		& dl{
			grid-column: 1;
			grid-row: 1 / 3;
		}
	}
	.slick-arrow{
		align-self: center;
		justify-self: center;
		background: var(--color-theme-sub);
		z-index: 1;
	}
	.slick-disabled{
		visibility: hidden;
	}
}

#detailCourse{
	position: relative;
	display: grid;
	grid-row-gap: 24px;
	grid-template-columns: var(--wrap);
	justify-content: center;
	padding: clamp(64px, calc(104 / 1200 * 100vw), 104px) 0 clamp(48px, calc(64 / 1200 * 100vw), 64px);
	background: #f6f5ef;
	overflow: hidden;
	&:before{
		content: "";
		position: absolute;
		top: clamp(64px, calc(104 / 1200 * 100vw), 104px);
		left: 50%;
		width: var(--wrap);
		height: calc(100% - clamp(112px, calc(168 / 1200 * 100vw), 168px));
		margin-left: clamp(24px, calc(53 / 768 * 100vw), 53px);
		border-left: 14px solid #ccc;
		transform: translateX(-50%);
		pointer-events: none;
	}
	#detailCourseStart,
	#detailCourseGoal{
		justify-self: start;
	}
	.date,
	.move,
	.spot{
		margin-left: calc(clamp(24px, calc(53 / 768 * 100vw), 53px) + 14px);
	}
	@media (min-width: 768px) {
		#detailCourseStart{
			grid-column: 1;
			grid-row: 1;
		}
		.date:nth-of-type(2){
			grid-column: 1;
			grid-row: 1;
		}
	}
}

#detailCourseStart,
#detailCourseGoal{
	position: relative;
	display: grid;
	align-items: center;
	width: 120px;
	min-height: 40px;
	background: #333;
	border-radius: 20px;
	color: #fff;
	font-weight: 700;
	font-size: clamp(16px, calc(18 / 768 * 100vw), 18px);
	letter-spacing: 0.2em;
	text-align: center;
	z-index: 2;
	&:before{
		content: "";
		position: absolute;
		left: clamp(24px, calc(53 / 768 * 100vw), 53px);
		aspect-ratio: 10 / 12;
		width: 10px;
		background: #333;
		transform: translateX(2px);
	}
}

#detailCourseStart{
	&:before{
		top: 100%;
		-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 12"><polygon points="0 0 4.97 12 10 0 0 0"/></svg>') no-repeat center / contain;
	}
}

#detailCourseGoal{
	&:before{
		bottom: 100%;
		-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 12"><polygon points="10 12 5.03 0 0 12 10 12"/></svg>') no-repeat center / contain;
	}
}

#detailMap{
	display: grid;
	grid-template-columns: 1fr var(--wrap) 1fr;
	margin-top: clamp(48px, calc(64 / 1200 * 100vw), 64px);
	#detailMapApi{
		grid-column: 1 / 4;
		grid-row: 2;
	}
	#detailMapToggle{
		grid-column: 2;
		grid-row: 1;
		margin-top: clamp(32px, calc(56 / 1200 * 100vw), 56px);
	}
}

#detailMapToggle{
	justify-self: center;
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	min-width: min(100%, 360px);
	min-height: clamp(56px, calc(64 / 768 * 100vw), 64px);
	padding: 8px 24px;
	border: 1px solid currentColor;
	border-radius: 12px;
	color: var(--color-theme);
	font-weight: 700;
	font-size: clamp(16px, calc(18 / 768 * 100vw), 18px);
	letter-spacing: 0.05em;
	text-align: center;
	cursor: pointer;
	&:before{
		content: "";
		content: "";
		aspect-ratio: 1;
		width: 28px;
		background: currentColor;
		-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28"><path d="M22.65,9.96c0-4.78-3.87-8.65-8.65-8.65S5.35,5.18,5.35,9.96s8.65,15.96,8.65,15.96c0,0,8.65-11.18,8.65-15.96ZM10.11,9.45c0-2.15,1.74-3.89,3.89-3.89s3.89,1.74,3.89,3.89-1.74,3.89-3.89,3.89-3.89-1.74-3.89-3.89Z"/></svg>') no-repeat center / contain;
	}
	&:after{
		content: "＋";
		font-size: 1.5em;
		line-height: 1;
	}
	&.open{
		background: #fff;
		border: 1px solid currentColor;
		color: var(--color-theme);
		&:after{
			content: "－";
		}
	}
}

#detailMapApi{
	position: relative;
	display: grid;
	grid-template-columns: 1fr var(--wrap) 1fr;
	margin-top: clamp(24px, calc(48 / 1200 * 100vw), 48px);
	&>*{
		grid-column: 2;
	}
	#gMap{
		grid-column: 1 / 4;
		grid-row: 1;
		height: min(100dvw, 552px);
		background: #ccc;
	}
	#detailMapList{
		grid-column: 1 / 4;
		grid-row: 2;
		max-height: 200px;
		overflow-y: auto;
	}
	&>.infoWin{
		grid-column: 1 / 4;
		grid-row: 1;
		justify-self: start;
		align-self: start;
		margin: 24px;
		background: #fff;
		padding: 24px;
		border-radius: 8px;
	}
	@media (min-width: 992px) {
		#gMap{
			grid-row: 1;
			margin-right: 360px;
		}
		#detailMapList{
			grid-row: 1;
			align-self: center;
			justify-self: end;
			width: 360px;
			height: min(100dvw, 552px);
			max-height: unset;
		}
		#detailMapNote{
			margin-top: 16px;
		}
	}
}

#detailMapList{
	& ul{
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr));
		grid-gap: 16px 24px;
		padding: 16px;
		background: #fff;
	}
	& li{
		counter-increment: count;
		display: grid;
		grid-template-columns: auto 1fr;
		column-gap: 8px;
		font-weight: 500;
		&:before{
			content: counter(count);
			grid-column: 1;
			grid-row: 1;
			justify-self: center;
			display: grid;
			align-items: center;
			aspect-ratio: 1;
			width: 32px;
			background: var(--color-theme);
			border-radius: 100%;
			color: #fff;
			font-weight: 700;
			line-height: 1;
			text-align: center;
		}
	}
	@media (min-width: 992px) {
		& ul{
			grid-template-columns: 1fr;
			grid-gap: unset;
			padding: 8px 16px;
		}
		& li{
			padding: 16px;
			&:nth-of-type(n+2){
				border-top: 1px solid var(--color-theme);
			}
		}
	}
}

#recommend{
	display: grid;
	grid-template-columns: var(--wrap);
	justify-content: center;
	margin-top: clamp(64px, calc(88 / 1200 * 100vw), 88px);
	overflow: hidden;
	& h2{
		display: grid;
		grid-template-columns: auto auto 1fr;
		align-items: center;
		column-gap: 8px;
		color: var(--color-theme);
		font-weight: 700;
		font-size: clamp(16px, calc(18 / 768 * 100vw), 18px);
		word-break: keep-all;
		overflow-wrap: anywhere;
		&:before{
			content: "";
			aspect-ratio: 1;
			width: 28px;
			background: currentColor;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M16.91,5.32s-1.56-.68-2.94-.68c-2.1,0-3.58.89-3.58.89-.06.02-.09.07-.09.13v9.56s.02.08.05.11c.03.03.08.03.12.02,0,0,1.53-.86,3.5-.86,1.38,0,2.8.63,2.8.63.2.07.43.03.6-.09.17-.13.28-.33.28-.54V6.34c0-.46-.3-.78-.74-1.02ZM6.03,4.64c-1.38,0-2.94.68-2.94.68-.43.24-.74.55-.74,1.02v8.15c0,.21.1.42.28.54.17.13.4.16.6.09,0,0,1.43-.63,2.8-.63,1.98,0,3.5.86,3.5.86.04.01.08,0,.12-.02.03-.02.05-.07.05-.11V5.66c0-.06-.04-.11-.09-.13,0,0-1.49-.89-3.58-.89Z"/></svg>') no-repeat center / contain;
		}
		&:after{
			content: "";
			min-width: 5em;
			border-top: 2px dotted currentColor;
		}
	}
	& h2+div{
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr));
		grid-gap: 20px;
		margin-top: clamp(16px, calc(32 / 1200 * 100vw), 32px);
	}
	& section{
		position: relative;
		display: grid;
		align-content: start;
		grid-row-gap: 8px;
		&:not(:has(img)):before{
			content: "";
			aspect-ratio: 3 / 2;
			background: var(--dummy);
			border-radius: 12px;
		}
	}
	& h3{
		order: 1;
		font-weight: 500;
		font-size: clamp(16px, calc(18 / 768 * 100vw), 18px);
		letter-spacing: 0.03em;
	}
	& h3+div{
		display: contents;
		& p{
			display: none;
		}
		& a{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			font-size: 0;
		}
	}
	& figure{
		& img{
			aspect-ratio: 3 / 2;
			object-fit: cover;
			border-radius: 12px;
		}
	}
	.slick-slider{
		grid-template-columns: 0 1fr 0;
		grid-gap: unset;
		&:before{
			content: "";
			grid-column: 2;
			grid-row: 1;
			aspect-ratio: 3 / 2;
			background: red;
			width: 100%;
			opacity: 0.5;
			z-index: 1;
			visibility: hidden;
		}
		@media (min-width: 576px) {
			&:before{
				width: calc((100% - 20px) / 2);
			}
		}
		@media (min-width: 768px) {
			&:before{
				width: calc((100% - 40px) / 3);
			}
		}
		@media (min-width: 992px) {
			&:before{
				width: calc((100% - 60px) / 4);
			}
		}
	}
	.slick-list{
		grid-column: 2;
		grid-row: 1 / 3;
		margin: 0 -10px;
		&:only-child{
			.slick-track{
				margin: 0;
			}
		}
		@media (max-width: 1199.98px) {
			overflow: visible;
		}
	}
	.slick-slide{
		margin: 0 10px;
	}
	.slick-arrow{
		align-self: center;
		justify-self: center;
		z-index: 1;
	}
}

.date{
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	column-gap: 16px;
	&:before,
	&:after{
		content: "";
		border-top: 2px dotted #333;
		min-width: 3em;
	}
	& span{
		display: grid;
		align-items: center;
		min-height: 40px;
		padding: 0 24px;
		background: var(--color-theme-sub);
		border-radius: 24px;
		color: #fff;
		font-weight: 700;
		font-size: clamp(18px, calc(20 / 768 * 100vw), 20px);
		letter-spacing: 0.05em;
		z-index: 1;
	}
}

.move{
	position: relative;
	padding-left: 24px;
	font-weight: 500;
	letter-spacing: 0.05em;
	&:before{
		content: "";
		position: absolute;
		top: 50%;
		left: -7px;
		aspect-ratio: 1;
		width: 24px;
		background: #fff;
		border: 3px solid var(--color-theme);
		border-radius: 100%;
		transform: translate(-50%, -50%);
	}
}

.spot{
	counter-increment: count;
	display: grid;
	background: #fff;
	padding: clamp(24px, calc(32 / 1200 * 100vw), 32px) clamp(32px, calc(40 / 1200 * 100vw), 40px) clamp(32px, calc(40 / 1200 * 100vw), 40px) clamp(32px, calc(40 / 1200 * 100vw), 40px);
	.spotCatch{
		margin-top: 8px;
	}
	.spotText{
		order: 1;
		margin-top: 16px;
	}
	.spotInfo{
		order: 1;
		margin-top: clamp(24px, calc(32 / 1200 * 100vw), 32px);
	}
	.spotPhoto{
		margin-top: 16px;
	}
}

.spotName{
	position: relative;
	padding-bottom: 8px;
	border-bottom: 1px solid #999;
	font-weight: 700;
	font-size: clamp(20px, calc(28 / 768 * 100vw), 28px);
	letter-spacing: 0.1em;
	&:before{
		content: counter(count);
		position: absolute;
		top: 0;
		left: calc(0px - clamp(32px, calc(40 / 1200 * 100vw), 40px) - 7px);
		display: grid;
		align-items: center;
		aspect-ratio: 1;
		width: 40px;
		background: var(--color-theme);
		border-radius: 100%;
		color: #fff;
		font-weight: 700;
		font-size: 20px;
		text-align: center;
		transform: translateX(-50%);
	}
	@media (min-width: 768px) {
		&:before{
			top: 0.3em;
		}
	}
}

.spotCatch{
	color: var(--color-theme);
	font-weight: 700;
	font-size: clamp(18px, calc(20 / 768 * 100vw), 20px);
	letter-spacing: 0.05em;
}

.spotText{
	font-weight: 500;
}

.spotInfo{
	display: grid;
	grid-gap: 8px 24px;
	& details{
		box-sizing: border-box;
		&::details-content{
			box-sizing: border-box;
		}
	}
	& summary{
		all: unset;
		box-sizing: border-box;
		cursor: pointer;
		display: grid;
		grid-template-columns: 1fr auto;
		align-items: center;
		column-gap: 16px;
		min-width: min(100%, 240px);
		min-height: 48px;
		padding: 4px 16px;
		border: 1px solid currentColor;
		border-radius: 24px;
		color: var(--color-theme);
		font-weight: 500;
		font-size: 15px;
		text-align: center;
		text-decoration: none;
		&:after{
			content: "";
			aspect-ratio: 1;
			width: 16px;
			background: currentColor;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><polygon points="4 4.5 8 11.5 12 4.5 4 4.5"/></svg>') no-repeat center / contain;
		}
		[open] &:after{
			transform: scale( 1, -1);
		}
	}
	& dl{
		display: grid;
		margin-top: 16px;
		@media (min-width: 576px) {
			grid-template-columns: auto 1fr;
			& dt:nth-of-type(n+2){
				border-top: 1px solid #fff;
			}
			& dd:nth-of-type(n+2){
				border-top: 1px solid #80cba9;
			}
		}
	}
	& dt{
		display: grid;
		align-items: center;
		padding: 8px clamp(16px, calc(24 / 1200 * 100vw), 24px);
		background: var(--color-theme);
		color: #fff;
		text-align: center;
		letter-spacing: 0.05em;
	}
	& dd{
		padding: 8px clamp(16px, calc(24 / 1200 * 100vw), 24px);
		background: #fff;
		letter-spacing: 0.05em;
	}
	& a{
		display: grid;
		grid-template-columns: 1fr auto;
		align-items: center;
		column-gap: 16px;
		min-width: min(100%, 240px);
		min-height: 48px;
		padding: 4px 16px;
		border: 1px solid currentColor;
		border-radius: 24px;
		color: var(--color-theme);
		font-weight: 500;
		font-size: 15px;
		text-align: center;
		text-decoration: none;
		&:before,
		&:after{
			content: "";
			grid-column: 2;
			grid-row: 1;
			aspect-ratio: 1;
			width: 16px;
			background: currentColor;
			border-radius: 100%;
		}
		&:after{
			background: #fff;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" style="fill: none; stroke: black;"><polyline points="7 5 10 8 7 11"/></svg>') no-repeat center / contain;
		}
	}
	@media (min-width: 768px) {
		display: flex;
		flex-wrap: wrap;
		& details{
			display: contents;
			&::details-content{
				order: 1;
				width: 100%;
			}
			&:only-child{
				& summary{
					margin: 0 auto;
				}
			}
		}
		& summary{
			margin-left: auto;
		}
		& a{
			margin-right: auto;
			&:only-child{
				margin: 0 auto;
			}
		}
	}
}

.spotPhoto{
	display: grid;
	grid-gap: clamp(8px, calc(16 / 1200 * 100vw), 16px);
	border-radius: clamp(16px, calc(20 / 1200 * 100vw), 20px);
	overflow: hidden;
	& img{
		aspect-ratio: 3 / 2;
		object-fit: cover;
	}
	@media (max-width: 767.98px) {
		grid-template-columns: 1fr 1fr;
		& img:first-child{
			grid-column: 1 / 3;
		}
	}
	@media (min-width: 768px) {
		grid-template-columns: 2.07fr 1fr;
		& img:first-child{
			grid-row: 1 / 3;
		}
		& img:only-child{
			grid-column: 1 / 4;
		}
	}

}

.slick-arrow{
	all: unset;
	box-sizing: border-box;
	cursor: pointer;
	position: relative;
	aspect-ratio: 1;
	width: 40px;
	background: var(--color-theme);
	border-radius: 100%;
	color: #fff;
	font-size: 0;
	&:before{
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: currentColor;
		-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 40" style="fill: none; stroke: black; stroke-linecap: round; stroke-linejoin: round; stroke-width: 3px;"><polyline points="17.5 12.5 25 20 17.5 27.5"/></svg>') no-repeat center / cover;
	}
	&.slick-prev:before{
		transform: scale(-1, 1);
	}
}　

.slick-arrow{
	all: unset;
	box-sizing: border-box;
	cursor: pointer;
	position: relative;
	aspect-ratio: 1;
	width: 40px;
	background: var(--color-theme);
	border-radius: 100%;
	color: #fff;
	font-size: 0;
	&:before{
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: currentColor;
		-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 40" style="fill: none; stroke: black; stroke-linecap: round; stroke-linejoin: round; stroke-width: 3px;"><polyline points="17.5 12.5 25 20 17.5 27.5"/></svg>') no-repeat center / cover;
	}
	&.slick-prev:before{
		transform: scale(-1, 1);
	}
}




