@charset "utf-8";

.access-intro {
	border-bottom: none;
}

.access-intro__contents__list {
	max-width: 1105px;
	margin-inline: auto;
	margin-bottom: 8.0rem;
}

.access-intro__contents__list__item {
	width: calc(545 / 1100 * 100%);
	font-size: 2.7rem;
	line-height: 1.45;
	letter-spacing: 0;
	color: var(--white);
	text-align: center;
	padding-block: 1.8rem 1.8rem;
	background: url('../../roomplan/img/bg_intro_list.webp') no-repeat center center/cover;
}

.access-intro__contents__list__item span {
	font-size: calc(20 / 27 * 1.0em);
	line-height: 1;
}

.access-intro__contents__list__item i {
	font-weight: 600;
	color: #ddd59d;
	font-size: calc(60 / 27 * 1.0em);
	line-height: 1cap;
	letter-spacing: 0;
}

.access-intro__contents__list__item em {
	font-size: calc(36 / 27 * 1.0em);
	line-height: 1;
	letter-spacing: 0;
}

.access-intro__contents__list__item sup {
	vertical-align: baseline;
}

.access-intro__contents__photo {
	width: min(100%, 900px);
	margin-inline: auto;
}

.access-intro__contents__photo__note {
	font-size: max(10px, 1.1rem);
	line-height: 1.81818182;
	letter-spacing: 0;
	margin-top: 4.5rem;
}

@media screen and (max-width:768px) {
	.access-intro__contents__list {
		margin-bottom: 4.5rem;
	}

	.access-intro__contents__list__item {
		width: 100%;
		font-size: 1.8rem;
		padding-block: 1.2rem 1.2rem;
	}

	.access-intro__contents__list__item+.access-intro__contents__list__item {
		margin-top: .5rem;
	}

	.access-intro__contents__photo__note {
		font-size: 1.0rem;
		margin-top: 2.5rem;
	}
}



/*  l-distance
--------------------------------------------------*/
.l-distance {
	position: relative;
	margin-top: 16.0rem;
}

.distance-contents {
	position: relative;
}

.distance-contents+.distance-contents {
	margin-top: 11.0rem;
}

.distance-heading {
	position: relative;
	font-size: 2.4rem;
	line-height: 1.75;
	letter-spacing: 0;
	padding-left: 2.0rem;
	margin-bottom: 4.0rem;
}

.distance-heading::before {
	content: '';
	position: absolute;
	left: 0;
	top: .3em;
	width: .6rem;
	height: calc(100% - .4em);
	background: #666666;
}

.distance-list {
	gap: 4.0rem 2.0rem;
}

.distance-list__item {
	width: calc((100% - 6.0rem) / 4);
}

.distance-list__item__detail {
	margin-top: 3.5rem;
}

.distance-list__item__detail__place {
	font-size: 2.4rem;
	margin-bottom: 1.5rem;
}

.distance-list__item__detail__desc {
	font-size: 2.5rem;
	line-height: 1.25;
	letter-spacing: 0;
}

.distance-list__item__detail__desc em {
	font-size: calc(40 / 25 * 1.0em);
	line-height: 1;
}

.distance-list__item__detail__desc i {
	font-size: calc(48 / 25 * 1.0em);
	line-height: 1;
	vertical-align: -.04em;
}

@media screen and (max-width:768px) {
	.l-distance {
		margin-top: 7.0rem;
	}

	.distance-contents+.distance-contents {
		margin-top: 6.5rem;
	}

	.distance-heading {
		font-size: 1.4rem;
		padding-left: 1.0rem;
		margin-bottom: 1.2rem;
	}

	.distance-heading::before {
		top: .2em;
		width: .4rem;
		height: calc(100% - .2em);
	}

	.distance-list {
		gap: 2.0rem .8rem;
	}

	.distance-list__item {
		width: calc((100% - .8rem) / 2);
	}

	.distance-list__item__detail {
		margin-top: 1.5rem;
	}

	.distance-list__item__detail__place {
		font-size: 1.3rem;
		margin-bottom: .7rem;
	}

	.distance-list__item__detail__desc {
		font-size: 1.2rem;
	}

	.distance-list__item__detail__desc em {
		font-size: calc(19 / 12 * 1.0em);
	}

	.distance-list__item__detail__desc i {
		font-size: calc(22 / 12 * 1.0em);
	}
}




/*  l-transfer
--------------------------------------------------*/
.l-transfer {
	position: relative;
	padding-block: 12.0rem;
}

.transfer-heading {
	/*font-size: 3.0rem;*/
	font-size: 3.4rem;
	line-height: 1.66666667;
	letter-spacing: .05em;
	text-align: center;
	margin-bottom: 9.5rem;
}

.transfer-contents {
	position: relative;
	width: 100%;
}

.transfer-line {
	width: min(100%, 1100px);
	margin-inline: auto;
}

.transfer-line+.transfer-line {
	margin-top: 9.5rem;
}

.transfer-line__heading {
	position: relative;
	font-size: 2.4rem;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	overflow: clip;
	margin-bottom: 5.0rem;
}

.transfer-line--tokyo .transfer-line__heading {
	color: #00736d;
}

.transfer-line--mita .transfer-line__heading {
	color: #1e2973;
}

.transfer-line__heading span {
	position: relative;
	display: block;
	width: fit-content;
	margin-inline: auto;
	padding-inline: 3.5rem;
}

.transfer-line__heading span::before,
.transfer-line__heading span::after {
	content: '';
	position: absolute;
	top: 50%;
	width: 50vw;
	height: 1px;
}

.transfer-line--tokyo .transfer-line__heading span::before,
.transfer-line--tokyo .transfer-line__heading span::after {
	background: #00736d;
}

.transfer-line--mita .transfer-line__heading span::before,
.transfer-line--mita .transfer-line__heading span::after {
	background: #1e2973;
}

.transfer-line__heading span::before {
	left: 100%;
}

.transfer-line__heading span::after {
	right: 100%;
}

.transfer-line__figure {
	width: 100%;
}

.transfer-shinagawa {
	position: relative;
	padding-block: 10.0rem 9.5rem;
	padding-inline: calc(100 / 1500 * 100%);
	margin-top: 10.0rem;
}

.transfer-shinagawa__detail {
	/*width: calc(600 / 1300 * 100%);*/
	width: calc(615 / 1300 * 100%);
}

.transfer-shinagawa__detail__heading {
	/*font-size: 3.0rem;*/
	font-size: 3.2rem;
	line-height: 1.66666667;
	letter-spacing: .05em;
	color: #70674e;
	margin-bottom: 2.5rem;
}

.transfer-shinagawa__detail__desc {
	/*font-size: 1.6rem;*/
	font-size: 2.1rem;
	line-height: 2;
	letter-spacing: 0;
	color: #70674e;
}

.transfer-shinagawa__photo {
	width: calc(600 / 1300 * 100%);
}

.transfer-shinagawa__photo__note {
	font-size: max(10px, 1.1rem);
	line-height: 1.81818182;
	letter-spacing: 0;
	margin-top: 1.5rem;
}

@media screen and (max-width:768px) {
	.l-transfer {
		padding-block: 5.0rem;
	}

	.transfer-inner {
		width: calc(350 / 380 * 100%);
	}

	.transfer-heading {
		font-size: 1.9rem;
		margin-bottom: 3.5rem;
	}

	.transfer-line {
		width: calc(320 / 350 * 100%);
		margin-inline: auto;
	}

	.transfer-line+.transfer-line {
		margin-top: 3.5rem;
	}

	.transfer-line__heading {
		font-size: 1.4rem;
		margin-bottom: 1.5rem;
	}

	.transfer-line__heading span {
		padding-inline: 1.4rem;
	}

	.transfer-shinagawa {
		padding-block: 3.3rem 3.0rem;
		padding-inline: calc(15 / 350 * 100%);
		margin-top: 4.0rem;
	}

	.transfer-shinagawa__detail {
		width: 100%;
		margin-bottom: 1.5rem;
	}

	.transfer-shinagawa__detail__heading {
		font-size: 1.9rem;
		text-align: center;
		margin-bottom: 1.5rem;
	}

	.transfer-shinagawa__detail__desc {
		font-size: 1.4rem;
		line-height: 1.85714286;
	}

	.transfer-shinagawa__photo {
		width: 100%;
	}

	.transfer-shinagawa__photo__note {
		font-size: 1.0rem;
		margin-top: 1.5rem;
	}
}




/*  l-taxi
--------------------------------------------------*/
.l-taxi {
	position: relative;
}

.taxi-photo {
	width: 100%;
	aspect-ratio: 1920 / 630;
	overflow: clip;
}

.taxi-photo img {
	object-fit: cover;
	object-position: center bottom;
	width: 100%;
	height: 100%;
}

.taxi-contents {
	padding-block: 11.0rem;
}

.taxi-heading {
	/*font-size: 3.0rem;*/
	font-size: 3.4rem;
	line-height: 1.66666667;
	letter-spacing: .05em;
	text-align: center;
	margin-bottom: 10.0rem;
}

.taxi-simulation {
	width: min(100%, 1260px);
	margin-inline: auto;
}

.taxi-simulation__heading {
	font-size: 2.4rem;
	line-height: 1.71428571;
	letter-spacing: .05em;
	color: #231815;
	text-align: center;
	margin-bottom: 5.0rem;
}

.taxi-simulation__list {
	width: 100%;
}

.taxi-simulation__list__item {
	width: calc(420 / 1260 * 100%);
}

.taxi-simulation__list__item+.taxi-simulation__list__item {
	border-left: solid 1px #231815;
}

.taxi-simulation__list__item__photo {
	width: calc(300 / 420 * 100%);
	margin: 0 auto 2.0rem;
	aspect-ratio: 300 / 220;
}

.taxi-simulation__list__item__photo img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
}

.taxi-simulation__list__item__station {
	font-size: 3.0rem;
	line-height: 1.45;
	letter-spacing: .1em;
	color: #231815;
	text-align: center;
	margin-bottom: 1.5rem;
}

.taxi-simulation__list__item__detail {
	width: fit-content;
	margin-inline: auto;
}

.taxi-simulation__list__item__detail__price {
	font-size: 2.4rem;
	line-height: 1.45;
	letter-spacing: .1em;
	color: #231815;
}

.taxi-simulation__list__item__detail__price+.taxi-simulation__list__item__detail__price {
	margin-top: 1.0rem;
}

.taxi-simulation__list__item__detail__price i {
	font-size: calc(36 / 24 * 1.0em);
	line-height: 1;
}

.taxi-simulation__note {
	font-size: max(10px, 1.1rem);
	line-height: 1.81818182;
	letter-spacing: 0;
	margin-top: 3.0rem;
}

@media screen and (max-width:768px) {
	.taxi-photo {
		aspect-ratio: 380 / 165;
	}

	.taxi-contents {
		padding-block: 4.5rem 4.0rem;
	}

	.taxi-heading {
		font-size: 1.9rem;
		margin-bottom: 3.8rem;
	}

	.taxi-simulation__heading {
		font-size: 1.4rem;
		margin-bottom: 1.5rem;
	}

	.taxi-simulation__list {
		border-bottom: solid 1px #231815;
	}

	.taxi-simulation__list__item {
		width: 100%;
		border-top: solid 1px #231815;
		padding-block: 1.2rem;
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	.taxi-simulation__list__item+.taxi-simulation__list__item {
		border-left: none;
	}

	.taxi-simulation__list__item__photo {
		width: calc(120 / 320 * 100%);
		margin: 0;
		aspect-ratio: 1 / 1;
	}

	.taxi-simulation__list__item__box {
		width: calc(190 / 320 * 100%);
	}

	.taxi-simulation__list__item__station {
		font-size: 1.9rem;
		margin-bottom: .5rem;
	}

	.taxi-simulation__list__item__detail__price {
		font-size: 1.5rem;
	}

	.taxi-simulation__list__item__detail__price+.taxi-simulation__list__item__detail__price {
		margin-top: .5rem;
	}

	.taxi-simulation__note {
		font-size: 1.0rem;
		margin-top: 1.0rem;
	}
}