@charset "utf-8";

/* =======================================================================================
	COMMON
======================================================================================= */
/* accTimeWrap
---------------------------------------------------- */
	.accTimeWrap .station {
		margin-bottom:0.5em;
		--M-fluidFontSize-max-fontsize: 20;
		--M-fluidFontSize-min-fontsize: 16;
		--M-fluidFontSize-max-viewport: 1200;
		--M-fluidFontSize-min-viewport: 900;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */

		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		line-height: 1;
	}
	.accTimeWrap .route {
		display: block;
		margin-bottom:0.3em;
		font-size:0.9em;
	}
	.accTimeWrap .time {
		display: block;
	}
	.accTimeWrap .time {
		display: block;
		--M-fluidFontSize-max-fontsize: 20;
		--M-fluidFontSize-min-fontsize: 16;
		--M-fluidFontSize-max-viewport: 1200;
		--M-fluidFontSize-min-viewport: 900;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */

		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		line-height: 1;
	}
	.accTimeWrap .time .num {
		font-size:1.8em;
		font-family: var(--site-font_family-en_3);
		font-weight:300;
	}
	.accTimeWrap .time .daytime {
		font-size:0.7em;
	}
	
	



/* =======================================================================================
	PAGE 
======================================================================================= */
/* ------------------------------------------------------------------------
 haijimaLineWrap
------------------------------------------------------------------------ */
	.haijimaLineWrap.generalColBox {
		--base-generalColBox-margin-row:	clamp(30px, (30 / 600 * 100vw), 50px);
		--base-generalColBox-margin-column:	3.33%;
	}
	
/* ------------------------------------------------------------------------
 chuoLineWrap
------------------------------------------------------------------------ */
	.chuoLineWrap.generalColBox {
		--base-generalColBox-margin-row:	clamp(30px, (30 / 600 * 100vw), 50px);
		--base-generalColBox-margin-column:	3.33%;
	}
	
	
	
/* ------------------------------------------------------------------------
 haijimalinerWrap
------------------------------------------------------------------------ */
	.haijimalinerWrap .haijimalinerImageBox {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-content: space-between;
	}
	.haijimalinerWrap .haijimalinerImageBox li {
		width: 31.66%;
		border-bottom: 1px solid #3c1e0a;
	}
	.haijimalinerWrap .haijimalinerImageBox li .txt {
		text-align: center;
		padding-bottom:0.8em;
		--M-fluidFontSize-max-fontsize: 24;
		--M-fluidFontSize-min-fontsize: 14;
		--M-fluidFontSize-max-viewport: 1920;
		--M-fluidFontSize-min-viewport: 601;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */

		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		line-height: 1.5;
	}
	.haijimalinerWrap .haijimalinerImageBox .imgcapkeep {
		bottom:9.84%;
	}
	
@media screen and (max-width: 600px) {
	.haijimalinerWrap .haijimalinerImageBox li {
		width: 100%;
	}
	.haijimalinerWrap .haijimalinerImageBox li:not(:first-of-type) {
		margin-top:40px;
	}
	.haijimalinerWrap .haijimalinerImageBox li .txt {
		padding-bottom:1.2em;
		--M-fluidFontSize-max-fontsize: 18;
		--M-fluidFontSize-min-fontsize: 15;
		--M-fluidFontSize-max-viewport: 600;
		--M-fluidFontSize-min-viewport: 480;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */

		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
	}
}	
	
	
/* ------------------------------------------------------------------------
 picUpWrap
------------------------------------------------------------------------ */
	.picUpWrap.generalColBox {
		/*--base-generalColBox-margin-row:	clamp(30px, (30 / 600 * 100vw), 50px);
		--base-generalColBox-margin-column:	5%;*/
	}
	
	.picUpWrap {
		display: grid;
		grid-template-areas:
		"AAA BBB"
		"CCC BBB";
		grid-template-rows: auto 1fr;/*縦の高さ（制限なしなら両方auto。上に詰めるなら、Aの高さはautoのまま、Cの高さを1frにする。）*/
		grid-template-columns: 40% 52%;	/* 横の幅（A,C:40% , B:60%） */
		column-gap: 8%;
	}
	.picUpWrap .txtBox {
		grid-area: AAA;
	}
	.picUpWrap .imageBox {
		grid-area: CCC;
		margin-top:30px;
		display: flex;
		flex-wrap: wrap;
		align-items:flex-end;
	}
	.picUpWrap .picBox {
		grid-area: BBB;
	}
	.picUpWrap .sectionHeader .enttl {
		padding-bottom:1em;
		--M-fluidFontSize-max-fontsize: 40;
		--M-fluidFontSize-min-fontsize: 35;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 1200;
	}
	.picUpWrap .picBox .ttl {
		text-align: center;
		padding:0.3em 0;
		margin-bottom:0.5em;
		border:0 solid #ccc;
		border-width:1px 0;
	}
	.picUpWrap .icon {
		display: inline-block;
		margin-right:5px;
	}
	.picUpWrap .icon img {
		height: 2em;
		vertical-align: middle;
	}
	
	
@media print, screen and (min-width: 900.02px) {
	.picUpWrap .sectionHeader .enttl,
	.picUpWrap .sectionHeader [class*="hTxtStyh"] {
		text-align: left;
	}
}
@media screen and (max-width: 900px) {
	.picUpWrap {
		display: block;
		grid-template-columns: 30% 62%;	/* 横の幅（A,C:40% , B:60%） */
		column-gap: 8%;
	}
	.picUpWrap .picBox{
		max-width:570px;
		margin:30px auto 0;
	}
	.picUpWrap .imageBox {
		max-width:570px;
		margin:20px auto 0;
	}
}	
	
/* ------------------------------------------------------------------------
 simulationWrap
------------------------------------------------------------------------ */
	.simulationWrap .ttl {
		padding:0.3em;
		color: #f0e6c8;
		background: #3e1c00;
	}	
	
	
	
	
/* ------------------------------------------------------------------------
 carAccessSection
------------------------------------------------------------------------ */
/* carAccessKunitachiFuchuWrap
---------------------------------------------------- */
	.carAccessKunitachiFuchuWrap {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items:flex-end;
		margin-bottom: clamp(30px, (30 / 600 * 100vw), 50px);
	}
	.carAccessKunitachiFuchuWrap .picBox {
		width: 48.335%;
	}
	.carAccessKunitachiFuchuWrap .txtBox {
		width: 48.335%;
	}
	
	.carAccessKunitachiFuchuBox {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-end;
		border-bottom:1px solid #000;
	}
	.carAccessKunitachiFuchuBox:not(:first-of-type) {
		margin-top:1.5em;
	}
	.carAccessKunitachiFuchuBox .station {
		line-height: 1.4;
	}
	.carAccessKunitachiFuchuBox .subTxt {
		display: block;
		font-size:0.65em;
	}
	
	
	
	
@media screen and (max-width: 900px) {
	.carAccessKunitachiFuchuWrap .picBox,
	.carAccessKunitachiFuchuWrap .txtBox {
		width: 100%;
	}
}
/* carAccessWrap
---------------------------------------------------- */
	.carAccessWrap.generalColBox {
		--base-generalColBox-margin-row:	clamp(30px, (30 / 600 * 100vw), 50px);
		--base-generalColBox-margin-column:	3.33%;
	}
	.carAccessWrap .accTimeWrap .station {
		line-height: 1.4;
	}
/* ------------------------------------------------------------------------
 airPortAccessSection
------------------------------------------------------------------------ */
/* airPortAccessWrap
---------------------------------------------------- */
	.airPortAccessWrap.generalColBox {
		--base-generalColBox-margin-row:	clamp(30px, (30 / 600 * 100vw), 50px);
		--base-generalColBox-margin-column:	2%;
	}
	.airPortAccessWrap dl{
		padding: clamp(15px, (15 / 900 * 100vw), 30px) 0;
		border:0 solid #333;
		border-width:1px 0 0;
	}
	.airPortAccessWrap dl:last-of-type{
		border-width:1px 0 1px;
	}
	.airPortAccessWrap dt{
		padding-top: 0.2em;
		font-size: 1.2em;
	}
	.airPortAccessWrap dd .num{
		margin-left: 0.2em;
		font-family: var(--site-font_family-en_3);
		font-size: 1.8em;
		line-height: 1;
	}
@media screen and (max-width: 900px) {
	.airPortAccessWrap {
		max-width:500px;
		margin-left:auto;
		margin-right:auto;
	}

}
	
/* taxiBox
---------------------------------------------------- */
	/*.taxiBox {
		padding:0.5em 1.5em;
		border:1px solid #4f1815;
	}*/
	
	.taxiBox .txt {
		margin-inline: auto;
		max-inline-size: max-content;
		color: #4e1714;
	}
	
	.taxiBox .icon {
		margin-right:0.5em;
	}
	.taxiBox .icon img {
		height:1.6em;
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
