@charset "UTF-8";

/* common */
@media all {
	.bg-webp {
		position: relative;
		overflow: hidden;
	}
	.main-section-header {text-align: center;}
	.base-list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	/* sp */
	@media only screen and (max-width: 767px) {}

	/* pc & tab */
	@media print,
	(min-width: 768px) {
		.base-list {
			margin: 60rem auto 0;
			width: 600rem;
		}
	}
}

/* japan-section */
@media all {
	.map-item {
		overflow: hidden;
		background-color: #fff;
		line-height: 1.733;
	}
	.overseas-section .map-item {background-color: var(--light-green);}

	.map-detail {font-weight: normal;}
	.map-badge {
		display: inline-block;
		padding: 4rem .5em 2rem;
		line-height: 1;
		background-color: var(--light-blue);
		border-radius: 1em;
		font-size: 14rem;
		color: #fff;
	}

	.map-area {
		border-bottom: var(--max1px) solid var(--light-blue);
	}
	.map-area span {color: var(--main-color);}
	.map-area small {color: var(--gray);}
	.map-area small::before {
		content: '/';
		display: inline-block;
		padding: 0 .5em;
	}
	.map-gmap {line-height: 0;}
	.map-gmap iframe {
		width: 100%;
		height: 100%;
	}

	/* sp */
	@media only screen and (max-width: 767px) {
		.japan-section {padding-bottom: 60rem;}
		.overseas-section {padding-bottom: 200rem;}
		.map-item {
			border-radius: 15rem;
		}
		.map-item + .map-item {margin-top: 20rem;}
		.map-text {padding: 15rem;}
		.map-area span {font-size: 20rem;}
		.map-detail {margin-top: 10rem;}
		.map-address {margin-top: 5rem;}

		.map-gmap {
			width: 100%;
			height: 220rem;
		}
	}

	/* pc & tab */
	@media print,
	(min-width: 768px) {
		.japan-section {
			margin-top: 75rem;
			padding-bottom: 95rem;
		}
		.overseas-section {
			margin-top: 100rem;
			padding-bottom: 200rem;
		}
		.section-content {margin-top: 50rem;}
		.map-list {
			margin: 0 auto;
			width: 760rem;
		}
		.map-item {
			display: flex;
			height: 250rem;
			border-radius: 30rem;
		}
		.map-item + .map-item {margin-top: 40rem;}

		.map-text {
			padding: 30rem;
			width: calc(100% - 400rem);
		}
		.map-area span {font-size: 20rem;}
		.map-detail {margin-top: 20rem;}
		.map-address {margin-top: 5rem;}

		.map-gmap {width: 400rem;}

	}

	/* sp & small tab */
	@media (max-width: 950px) {
		.base-list {
			margin: 20rem auto 0;
			width: 300rem;
			row-gap: 20rem;
		}
	}
}

/* activity-section */
@media all {
	.activity-list {counter-reset: cnt;}
	.activity-item {
		counter-increment: cnt;
		position: relative;
	}
	.activity-item::before {
		content: counter(cnt, decimal-leading-zero);
		position: absolute;
		top: 0;
		left: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		padding-top: 2px;
		width: 2.25em;
		height: 2.25em;
		border-radius: 50%;
		background-color: var(--main-color);
		color: #fff;
		line-height: 1;
	}
	.activity-dl dt {font-weight: 900;}

	/* sp */
	@media only screen and (max-width: 767px) {}

	/* pc & tab */
	@media print,
	(min-width: 768px) {
		.activity-section {margin-top: 70rem;}
		.activity-section-inner {
			margin-left: auto;
			margin-right: max(20rem, 10%);
			width: 622rem;
			margin-right: max(20rem, 8%);
			width: 610rem;
		}

		.activity-list {margin-top: 40rem;}
		.activity-item {padding-left: 45rem;}
		.activity-item + .activity-item {margin-top: 40rem;}
		.activity-item::before {font-size: 14rem;}
		.activity-dl dt {font-size: 18rem;}

	}
}

/* deco */
@media all {
	
	/* sp */
	@media only screen and (max-width: 767px) {
		.deco-c-2 {
			bottom: 10rem;
			left: -20rem;
			transform: scale(-1, -1);
		}
		.deco-1,.deco-2 {display: none;}
	}

	/* tab */
	@media (min-width: 768px) and (max-width: 1024px) {
		.deco-c-2 {
			top: -20rem;
			left: calc(50% - 550rem);
			transform: scale(-1, -1);
		}
		.deco-1 {
			top: 0;
			left: -30rem;
			width: 256rem;
		}
		.deco-2 {
			top: -50rem;
			right: -10rem;
			width: 256rem;
		}
	}

	/* pc */
	@media print,
	(min-width: 1025px) {
		.deco-c-2 {
			top: 80rem;
			left: calc(50% - 780rem);
			transform: scale(-1, -1);
		}
		.deco-1 {
			top: 0;
			left: -10rem;
			width: 320rem;
		}
		.deco-2 {
			top: -50rem;
			right: -10rem;
			width: 320rem;
		}
	}
}



/* template-section */
@media all {

	/* sp */
	@media only screen and (max-width: 767px) {}

	/* pc & tab */
	@media print,
	(min-width: 768px) {}
}
