@charset "utf-8";
@media screen and (max-width : 768px){
	
	br { display: none;}
	br.sp {display: block;}
	
	img { width: 100%;}
	
	
	.section {
		margin-bottom: 50px;
	}
	#contents_area .section:first-child {
		margin-top: 50px;
	}
	.section.gray {
		padding: 50px 0;
		background: #f0f0f0;
	}
	
	/* section */
	.section h3 {
		margin: 0 25px 30px;
		text-align: center;
		font-size: 23px;
	}
	
	.section h3 span {
		display: inline-block;
		padding: 0 10px 10px;
		border-bottom: 3px solid #444;
		white-space: nowrap;
	}
	
	.block {
		margin: 0 0 38px;
	}
	
	.block .block_copy {
		font-size: 23px;
		line-height: 32px;
		margin: 0 20px 20px;
	}
	
	.link {
		margin: 0 20px 20px;
		font-size: 16px;
		line-height: 24px;
		text-align: center;
	}

	.link a {
		color: #0064a1;
	}
	
	.link a:after{
		content: '';
		width: 20px;
		height: 20px;
		display: inline-block;
		background-image:url(../../common/img/parts_ico_btn_detail_arrow.png);
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 20px 20px;
		position: relative;
		top: 4px;
		right: -5px;
	}
	
	.block .box_flex {
		margin: 0 0 15px;
		background-color: #f4f4f4;
	}
	
	.block_inner .box_flex,
	.block_inner>.img {
		margin-left: 15px;
		margin-right: 15px;
	}
	
	#contents_area .block_inner a {
		color: #444;
	}

	#contents_area .block_inner img {
		display: block;
	}
	
	.block_inner .link span {
		color: #0064a1;
	}
	
	.block_inner .link span:after{
		content: '';
		width: 20px;
		height: 20px;
		display: inline-block;
		background-image:url(../../common/img/parts_ico_btn_detail_arrow.png);
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 20px 20px;
		position: relative;
		top: 4px;
		right: -5px;
	}
	
	.box_flex .box {
		padding: 15px;
	}
	
	.box_flex .box h4 {
		margin: 0 0 15px;
		font-size: 18px;
		line-height: 24px;
		font-weight: bold;
	}
	
	.box_flex .box .copy {
		min-height: 4em;
		margin: 0 0 15px;
		font-size: 18px;
		line-height: 25px;
	}
	
	.box_flex .box > *:last-child {
		margin-bottom: 0;
	}

	.block:last-child {
		margin-bottom: 75px;
	}
	
	.block .caution,
	.block_caution {
		margin: 15px 15px 0;
		line-height: 1.5;
	}


/* ----------------------------------------
	section_tailgatespoiler
---------------------------------------- */

	#section_tailgatespoiler {
		margin-top: 0 !important;
		padding: calc(17 / 375 * 100vw) calc(10 / 375 * 100vw) 0;
		color: #fff;
		font-weight: bold;
		font-size: calc(16 / 375 * 100vw);
		line-height: calc(20 / 16);
	}

	#section_tailgatespoiler .block {
		margin-bottom: 0;
	}

	#section_tailgatespoiler .block_inner {
		box-sizing: border-box;
		padding: calc(40 / 375 * 100vw) calc(20 / 375 * 100vw) calc(28 / 375 * 100vw);
		background: #000;
	}

	#section_tailgatespoiler .note {
		margin-top: calc(45 / 375 * 100vw);
		font-weight: normal;
		font-size: calc(14 / 375 * 100vw);
		line-height: calc(18 / 14);
	}

	#section_tailgatespoiler .title {
		text-align: center;
		font-weight: bold;
		font-size: calc(26 / 375 * 100vw);
		line-height: 1;
	}
	#section_tailgatespoiler .title span {
		display: block;
		margin-top: calc(9 / 375 * 100vw);
		font-size: calc(16 / 375 * 100vw);
	}
	#section_tailgatespoiler .title span:last-child {
		letter-spacing: -.05em;
	}

	#section_tailgatespoiler figure {
		position: relative;
		margin: calc(33 / 375 * 100vw) calc(-20 / 375 * 100vw) 0;
	}
	#section_tailgatespoiler figcaption {
		position: absolute;
		left: calc(200 / 375 * 100vw);
		top: calc(120 / 375 * 100vw);
		font-weight: normal;
		font-size: calc(10 / 375 * 100vw);
		line-height: 1;
	}

	#section_tailgatespoiler .heading {
		font-weight: normal;
		margin-top: calc(20 / 375 * 100vw);
		line-height: calc(24 / 16);
	}

	#section_tailgatespoiler .info {
		margin-top: calc(52 / 375 * 100vw);
		padding-top: calc(16 / 375 * 100vw);
		border-top: 1px solid;
	}
	#section_tailgatespoiler .info dl {
		display: grid;
		grid-template-columns: auto 1fr;
	}
	#section_tailgatespoiler .info .note {
		margin-top: calc(18 / 375 * 100vw);
	}

	#section_tailgatespoiler .detail {
		margin-top: calc(16 / 375 * 100vw);
		border-top: 1px solid;
		padding-top: calc(34 / 375 * 100vw);
	}
	#section_tailgatespoiler .detail dt {
		font-size: calc(20 / 375 * 100vw);
		margin-bottom: calc(2 / 375 * 100vw);
	}


/* ----------------------------------------
	movie_modal
---------------------------------------- */

	#movie_modal {
		position: fixed;
		text-align: center;
		white-space: nowrap;
	}
	#movie_modal::after,
	#movie_modal_inner {
		display: inline-block;
		vertical-align: middle;
	}
	#movie_modal::after {
		content: '';
		width: 0;
		height: 100%;
	}
	#movie_modal_inner {
		position: relative;
		width: 90%;
		max-width: 800px;
	}
	#movie_modal_data {
		position: relative;
		padding-top: 56.25%;
	}
	#movie_modal_data iframe {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
	}
}