/* YAMAHA BIKE [ RENTAL & TOURING ] : line.css */


/* [ 汎用見出し ] - 色 */
.cmnTtl.blue   { color: #0a2d81; }
.cmnTtl.orange { color: #FF6D00; }

/* [ arrow ] */
.arrow:not(.flex) {
	position: relative;
	margin-top: 30px;
	padding-top: 60px;
}
.arrow:not(.flex)::before {
	position: absolute;
	top: 0;
	left: 50%;
	border: 24px solid transparent;
	border-top: 32px solid #0a2d81;
	border-bottom: none;
	transform: translate(-50%, 0);
	content: "";
}
@media screen and (max-width: 767px) { /* Smartphone */
	.arrow:not(.flex) {
		margin-top: 20px;
		padding-top: 50px;
	}
} /* */

/* [ flex ] */
.flex.arrow { position: relative; }
.flex.arrow > * { width: 46%; }
.flex.arrow > * + *::before {
	position: absolute;
	top: 50%;
	left: 50%;
	border: 24px solid transparent;
	border-right: none;
	border-left: 32px solid #0a2d81;
	transform: translate(-50%, -50%);
	content: "";
}

@media screen and (max-width: 767px) { /* Smartphone */
	.flex.arrow.spbk > * { width: 100%; }
	.flex.arrow.spbk > * + * {
		position: relative;
		margin-top: 20px !important;
		padding-top: 50px;
	}
	.flex.arrow.spbk > * + *::before {
		top: 0;
		border: 24px solid transparent;
		border-top: 32px solid #0a2d81;
		border-bottom: none;
		transform: translate(-50%, 0);
	}
} /* */


/*======================================================================*
 *  [ テーブル ] 
 *======================================================================*/

.prcTbl { margin: 0 !important; }
.prcTbl caption b {
	margin-bottom: 5px;
	font-size: 1.8rem;
}
.prcTbl caption span {
	margin: 5px 0 -5px;
}
.prcTbl thead th {
	font-size: calc(1em - 0.2rem);
	font-weight: normal !important;
}
.prcTbl thead tr:first-child th:first-child { background: #f4f4f4; }
.prcTbl thead th[colspan],
.prcTbl thead th[rowspan] {
	font-size: 1em;
	font-weight: bold !important;
}
.prcTbl tbody th {
	color: #000;
	font-weight: bold;
	text-align: center;
}
.prcTbl tbody td.txtlt { text-align: left; }


/* [ オレンジ ] */
.prcTbl.orange caption b { color: #FF6D00; }
.prcTbl.orange tbody th { background: #FDEEE4; }

/* [ レンタル料金 ] */
.prcTbl.rental thead th[rowspan] { background: #eef1f8 !important; }
.prcTbl.rental tbody th {
	position: relative;
	color: #322D81;
	font-weight: normal;
	text-align: left;
}
.prcTbl.rental tbody th b { font-weight: normal; }
.prcTbl.rental tbody th > div { display: flex; }
.prcTbl.rental tbody th > div::before {
	position: absolute;
	top: 0;
	right: 50%;
	bottom: 0;
	width: 1px;
	height: 100%;
	background: #c0c0c0;
	content: "";
}
.prcTbl.rental tbody th > div > * { width: 50%; }
.prcTbl.rental tbody th > div > b { padding-right: 10px; }
.prcTbl.rental tbody th > div > span { padding-left: 10px; }
.prcTbl.rental.orange thead th[rowspan] { background: #FDEEE4 !important; }
.prcTbl.rental.orange tbody th { color: #D5640F; }
.prcTbl.rental.orange tbody th > div > span { color: #000; }

/* [ 免責オプション ] */
.prcTbl.mensekiop thead tr:first-child th {
	width: 22%;
	min-width: 90px;
}
.prcTbl.mensekiop thead tr:first-child th:first-child { width:56%; }
.prcTbl.mensekiop tbody th > * { text-align: left; }
.prcTbl.mensekiop tbody th > b { width: 4.5em; }
.prcTbl.mensekiop tbody th > span { width: 10.5em; }
.prcTbl.mensekiop.orange tbody th > b { width: 8.5em; }



@media screen and (max-width: 767px) { /* Smartphone */
	.prcTbl caption b { font-size: 1.6rem; }
	.prcTbl .txtsm { font-size: calc(1em - 0.1rem); }

	/* [ レンタル料金 ] */
	.prcTbl.rental tbody th > div { display: block; }
	.prcTbl.rental tbody th > div::before { display: none; }
	.prcTbl.rental tbody th > div > * { width: 100%; }
	.prcTbl.rental tbody th > div > b { padding-right: 0; }
	.prcTbl.rental tbody th > div > span {
		margin-top: 3px;
		padding-left: 0;
		font-size: calc(1em - 0.1rem);
	}

	/* [ 免責オプション ] */
	.prcTbl.mensekiop tbody th > * {
		display: block;
		width: 100% !important;
		text-align: center; 
	}
	.prcTbl.mensekiop tbody th > span { margin-top: 3px; }
} /* */


/*======================================================================*
 *  [  ] 
 *======================================================================*/

.chgTxt.flex > b {
	width: 12em;
	text-align: left;
}
.chgTxt.flex > div { width: calc(100% - 12em); }
.chgTxt.flex ~ .arrow { margin: 0 0 0 12em; }
.chgTxt.flex ~ .arrow::before {
	left: 0;
	transform: translate(0);
}

.chgTxt .disc {
	list-style-type: disc;
	margin-left: 1.5em;
}
.chgTxt .disc > li { margin-top: 5px; }

@media screen and (max-width: 767px) { /* Smartphone */
	.chgTxt.flex > * { width: 100% !important; }
	.chgTxt.flex > div {
		width: 100%;
		margin-top: 10px;
	}
	.chgTxt.flex ~ .arrow { margin: 0; }
	.chgTxt.flex ~ .arrow::before {
		left: 50%;
		transform: translateX(-50%);
	}

	.chgTxt > div { font-size: calc(1em - 0.2rem); }
} /* */


/*======================================================================*
 *  [ 補足 ] 
 *======================================================================*/

.prcSup {
	margin-top: 40px;
	padding: 40px 30px;
	border-radius: 10px;
	background: #F4F4F4;
}
.prcSup .flex { border-top: 1px solid #C6C6C6; }
.prcSup .flex:last-child { border-bottom: 1px solid #C6C6C6; }
.prcSup .flex > * {
	width: 50%;
	padding: 20px;
}
.prcSup .flex > div { padding-right: 0; }

@media screen and (max-width: 767px) { /* Smartphone */
	.prcSup { padding: 20px 10px; }
	.prcSup .flex > * {
		width: 100%;
		padding: 0 10px !important;
	}
} /* */

