@charset "UTF-8";

.accmap__map iframe { display: block; width: 100%; height: 100%; border: 0; }
.accinfo__tel a { color: inherit; }
.acccard__ttl,
.acccard__text { text-align: center; }
.accroute__card { border: 1px solid var(--text); }
.accroute__ttl { display: flex; align-items: center; justify-content: center; border-bottom: 1px solid var(--text); color: #000; text-align: center; letter-spacing: 0; }
.accroute__steps li { display: flex; align-items: center; box-sizing: border-box; }
.accroute__steps li + li { border-top: 1px solid var(--text); }
.accroute__num { display: flex; align-items: center; justify-content: center; flex: none; border-radius: 50%; background: #909090; color: #fff; line-height: 1; letter-spacing: 0; }
.accroute__text { flex: 1; color: #000; text-align: center; letter-spacing: 0; }
.accroute-photo__img img { display: block; width: 100%; object-fit: cover; }

@media (min-width: 1001px) {
	main { padding-bottom: 160px; }

	.accmap .ch3, .accsec .ch3 { margin-bottom: 40px; }

	.accmap { padding-top: 160px; }
	.accmap__map { height: 450px; border-radius: 10px; overflow: hidden; }

	.accinfo { margin-top: 30px; }
	.accinfo__logo { display: flex; align-items: center; gap: 20px; }
	.accinfo__logo img { width: 320px; flex: none; }
	.accinfo__logo::after { content: ""; flex: 1; height: 1px; background: var(--text); }
	.accinfo__name { margin-top: 12px; font-size: 13px; letter-spacing: 0.2em; }
	.accinfo__row { display: flex; align-items: center; justify-content: space-between; margin-top: 8px; }
	.accinfo__addr { font-size: 14px; letter-spacing: 0; }
	.accinfo__tel { display: flex; gap: 30px; }
	.accinfo__tel li { font-size: 21.5px; letter-spacing: 0; line-height: 1; }
	.accinfo__tel a:hover { color: var(--head-hover); opacity: 1; }

	.accsec { padding-top: 150px; }
	.acccard-list { display: grid; grid-template-columns: repeat(2, 482px); justify-content: center; gap: 36px; }
	.acccard-list--single { grid-template-columns: 482px; }
	.acccard__img img { display: block; width: 100%; height: 270px; object-fit: cover; border-radius: 10px; }

	.acccard { display: flex; flex-direction: column; }
	.acccard__box { flex: 1; min-height: 160px; box-sizing: border-box; padding: 24px 20px 32px; }
	.acccard__ttl { font-size: 22px; line-height: 30px; letter-spacing: 0.1em; }
	.acccard__text { margin-top: 17px; font-size: 14px; line-height: 22px; letter-spacing: 0.08em; }
	.acccard__text + .acccard__text { margin-top: 12px; }
	.acccard__text--tight { margin-top: 18px; line-height: 22px; }

	.accroute { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
	.accroute__card { border-radius: 8px; overflow: hidden; }
	.accroute__ttl { height: 109px; font-size: 24px; line-height: 28px; }
	.accroute__steps li { min-height: 73px; padding: 0 18px; gap: 9px; }
	.accroute__num { width: 42px; height: 42px; font-size: 20px; }
	.accroute__text { font-size: 16px; line-height: 22px; }
	.accroute-photo { display: grid; grid-template-columns: repeat(2, 482px); justify-content: center; gap: 36px; margin-top: 40px; }
	.accroute-photo__img img { height: 270px; border-radius: 10px; }
}

@media (max-width: 1000px) {
	main { padding-bottom: 21vw; }

	.accmap .ch3, .accsec .ch3 { margin-bottom: 5vw; }

	.accmap { padding-top: 21vw; }
	.accmap__map { height: 48.8vw; border-radius: 1.33vw; overflow: hidden; }

	.accinfo { margin-top: 8.4vw; padding-top: 7.6vw; border-top: 1px solid var(--text); }
	.accinfo__logo img { display: block; width: 100%; }
	.accinfo__name { margin-top: 2vw; font-size: 3.467vw; letter-spacing: 0.2em; text-align: center; }
	.accinfo__addr { margin-top: 2vw; font-size: 3.467vw; letter-spacing: 0; text-align: center; }
	.accinfo__tel { margin-top: 3vw; }
	.accinfo__tel li { font-size: 6.6vw; letter-spacing: 0; line-height: 13.6vw; text-align: center; }

	.accsec { width: 86.667vw; margin: 0 auto; padding-top: 21.47vw; }
	.accmap + .accsec { padding-top: 17.33vw; }
	.acccard + .acccard { margin-top: 8vw; }
	.acccard__img img { display: block; width: 100%; height: 57.6vw; object-fit: cover; border-radius: 1.33vw; }

	.acccard__box { padding: 4.4vw 2vw 5.6vw; }
	.acccard__ttl { font-size: 5.33vw; line-height: 1.4; letter-spacing: 0.02em; }
	.acccard__text { margin-top: 3.4vw; font-size: 3.467vw; line-height: 1.6; letter-spacing: 0.12em; }
	.acccard__text + .acccard__text { margin-top: 2.4vw; }
	.acccard__text--tight { line-height: 1.5; letter-spacing: 0.04em; }

	.accroute__card { border-width: 0.267vw; border-radius: 1.067vw; overflow: hidden; }
	.accroute__card + .accroute__card { margin-top: 7.6vw; }
	.accroute__ttl { height: 15.73vw; border-bottom-width: 0.267vw; font-size: 5.333vw; line-height: 6.4vw; }
	.accroute__steps li { min-height: 13.33vw; padding: 0 4.93vw; gap: 2.4vw; }
	.accroute__steps li + li { border-top-width: 0.267vw; }
	.accroute__num { width: 8.4vw; height: 8.4vw; font-size: 4vw; }
	.accroute__text { padding: 3.73vw 0; font-size: 3.467vw; line-height: 5.6vw; }
	.accroute-photo { margin-top: 10.4vw; }
	.accroute-photo__img + .accroute-photo__img { margin-top: 4.93vw; }
	.accroute-photo__img img { height: 49.2vw; border-radius: 1.33vw; }
}
