@charset "utf-8";

/*============================================================
	HTML
*/
body {
	margin: 0;
	padding: 0;
	font-family: icon-Nissan-Global, Verdana, "Hiragino Kaku Gothic ProN", "Meiryo", "MS PGothic", sans-serif;
}
#gn_footer {
	overflow: hidden;
}
.rc,
.rc * {
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background-color: transparent;
	background-image: none;
	background-position: 0 0;
	background-repeat: no-repeat;
	text-decoration: none;
	text-indent: 0;
	text-transform: none;
	font-style: normal;
	font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
	line-height: inherit;

}
.rc {
	position: relative;
	font-size: 16px;
	line-height: 1.7;
	color: #343434;
}
.rc a {
	text-decoration: underline;
	color: #c3002f;
	cursor: pointer;
}
.os-pc .rc a,
.os-pc .rc button {
	transition: background-color 0.3s ease, color 0.3s ease, opacity 0.3s ease;
}
.rc h1,
.rc h2,
.rc h3,
.rc h4,
.rc h5,
.rc h6,
.rc strong {
	font-family: Verdana, Arial, sans-serif;
	font-weight: 700;
}
.rc ul {
	list-style-type: none;
}
.rc input,
.rc button {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background-color: transparent;
	background-image: none;
	border: 0;
	border-radius: 0;
	outline: 0;
	resize: none;
}
.rc button {
	cursor: pointer;
}
.rc-body {
	margin: 0 auto;
	padding: 20px 19px 120px 19px;
	max-width: 1278px;
}
.rc-data .rc-body {
	max-width: 998px;
}
@media screen and (max-width: 959px) {
	.rc-body {
		padding: 20px 15px 100px 15px;
	}
}
@media screen and (max-width: 580px) {
	.rc-small-sp {
		font-size: 14px;
	}
}

/*============================================================
	VISIBLE
*/
@media screen and (min-width: 581px) {
	.visible-sp {
		display: none !important;
	}
	.hidden-pc {
		display: none !important;
	}
}
@media screen and (max-width: 580px) {
	.visible-pc {
		display: none !important;
	}
	.hidden-sp {
		display: none !important;
	}
}

/*============================================================
	テキストレイアウト
*/
.center-pc {
	text-align: center;
}
@media screen and (max-width: 580px) {
	.center-pc {
		text-align: left;
	}
}

/*============================================================
	ヘッダー
*/
.rc-data #gn_header {
	position: relative;
}
.rc-data #gn_header::after {
	content: '';
	display: block;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 20px;
	right: 20px;
	background-color: #f2f2f2;
}
@media screen and (max-width: 959px) {
	.rc-data #gn_header {
		border-bottom: 1px solid #f2f2f2;
	}
	.rc-data #gn_header::after {
		content: none;
	}
}

/*============================================================
	ページの先頭へ
*/
.rc-pagetop {
	display: none;
	position: fixed;
	bottom: 25px;
	right: 50%;
	margin-right: -731px;
}
.rc-pagetop a {
	display: block;
	width: 48px;
	height: 48px;
	background-color: #c3002f;
}
.rc-pagetop-limit .rc-pagetop {
	position: absolute;
}
.rc-pagetop i {
	display: block;
	width: 100%;
	height: 100%;
	background-image: url('../IMAGES/arrow-white.svg');
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: 20px 20px;
	transform: rotate(-90deg);
}
.os-pc .rc-pagetop:hover {
	background-color: #920023;
}
@media screen and (max-width: 1500px) {
	.rc-pagetop {
		right: 19px;
		margin-right: 0;
	}
}
@media screen and (max-width: 580px) {
	.rc-pagetop {
		right: 15px;
		bottom: 15px;
	}
}

/*============================================================
	パン屑
*/
.rc-breadcrumbs {
	font-size: 14px;
	line-height: 1.3;
	color: #000;
}
.rc-breadcrumbs ul li {
	display: inline;
}
.rc-breadcrumbs ul li::before {
	content: '';
	display: inline-block;
	margin: 0 0.5em;
	width: 0.8em;
	height: 0.8em;
	background-image: url('../IMAGES/arrow-breadcrumbs.svg');
	background-size: contain;
}
.rc-breadcrumbs ul li:first-child::before {
	content: none;
}
.rc-breadcrumbs ul li a {
	text-decoration: none;
	color: #858585;
}
.os-pc .rc-breadcrumbs ul li a:hover {
	color: #000;
}
@media screen and (max-width: 580px) {
	.rc-breadcrumbs {
		display: none;
	}
}

/*============================================================
	レイアウト
*/
.rc .layout-center {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.rc .layout-right {
	display: flex;
	justify-content: flex-end;
}

/*============================================================
	色
*/
.rc .color {
	color: #c3002f;
}

/*============================================================
	ボタン
*/
.rc .btn,
.rc .btn-red {
	position: relative;
	display: flex;
	align-items: center;
	padding: 0 25px;
	width: 286px;
	height: 58px;
	text-decoration: none;
	font-weight: 700;
}
.rc .btn-sm,
.rc .btn-sm-red {
	display: inline-block;
	padding: 6px 15px;
	text-decoration: none;
}
.rc .btn,
.rc .btn-sm {
	background-color: #eee;
	color: inherit;
}
.rc .btn-red,
.rc .btn-sm-red {
	background-color: #c3002f;
	color: #fff;
}
.rc .btn::after,
.rc .btn-red::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	margin-top: -9px;
	width: 18px;
	height: 18px;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
}
.rc .btn-sm::after,
.rc .btn-sm-red::after {
	content: '';
	display: inline-block;
	width: 30px;
	height: 14px;
	background-position: 100% 50%;
	background-repeat: no-repeat;
	background-size: 14px 14px;
}
.rc .btn::after,
.rc .btn-sm::after {
	background-image: url('../IMAGES/arrow-red.svg');
}
.rc .btn-red::after,
.rc .btn-sm-red::after {
	background-image: url('../IMAGES/arrow-white.svg');
}
.os-pc .rc .btn:hover,
.os-pc .rc .btn-sm:hover {
	color: #c3002f;
}
.os-pc .rc .btn-red:hover,
.os-pc .rc .btn-sm-red:hover {
	background-color: #920023;
}
@media screen and (max-width: 580px) {
	.rc .btn,
	.rc .btn-red {
		padding: 0 25px 0 20px;
		width: 100%;
	}
}

/*============================================================
	見出し
*/
.rc .h1 {
	margin: 40px 0 50px 0;
	text-align: center;
	font-size: 36px;
	line-height: 1.3;
}
.rc .h1 span {
	display: inline-block;
}
.rc .h1-data {
	padding: 30px 0 30px 0;
	text-align: center;
	font-size: 28px;
	line-height: 1.3;
}
.rc .h2 {
	margin: 0 0 15px 0;
	font-size: 24px;
	line-height: 1.4;
}
.rc .h2::before {
	content: '';
	display: block;
	margin: 0 0 10px 0;
	width: 50px;
	height: 4px;
	background-color: #c3002f;
}
.rc .h3 {
	margin: 0 0 10px 0;
	font-size: 18px;
	line-height: 1.5;
}
@media screen and (max-width: 580px) {
	.rc .h1 {
		margin: 20px 0 40px 0;
		font-size: 32px;
	}
	.rc .h1-data {
		padding: 12px 0 12px 0;
		border-bottom: 1px solid #f2f2f2;
		font-size: 24px;
	}
	.rc .h2 {
		margin: 0 0 10px 0;
	}
}

/*============================================================
	リスト
*/
.rc-list-indent li {
	padding-left: 1em;
	text-indent: -1em;
}

/*============================================================
	リストナビ
*/
.rc-list-nav ul {
	display: flex;
	flex-wrap: wrap;
	margin: 14px -6px;
	font-weight: 700;
	line-height: 1.5;
}
.rc-list-nav:last-child ul {
	margin-bottom: 0;
}
.rc-list-nav ul li {
	flex-basis: 50%;
	max-width: 50%;
	padding: 6px;
}
.rc-list-nav ul li a {
	position: relative;
	display: block;
	padding: 15px 40px 15px 15px;
	background-color: #eee;
	text-decoration: none;
	color: inherit;
}
.rc-list-nav ul li a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	margin-top: -10px;
	width: 20px;
	height: 20px;
	background-image: url('../IMAGES/arrow-red.svg');
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
}
.os-pc .rc-list-nav ul li a span {
	display: inline-block;
}
.os-pc .rc-list-nav ul li a:hover {
	color: #c3002f;
}
@media screen and (max-width: 959px) {
	.rc-list-nav ul {
		display: block;
		margin: 14px 0;
	}
	.rc-list-nav ul li {
		max-width: 100%;
		padding: 6px 0;
	}
}

/*============================================================
	基本セクション
*/
.rc-section {
	margin: 50px 0;
}
.rc-body > .rc-section:last-child {
	margin-bottom: 0;
}
.rc-section .detail {
	margin: 1.2em 0 0 0;
}
.rc-section .detail p {
	margin: 0 0 1.2em 0;
}
.rc-section .detail p:last-child {
	margin: 0;
}
@media screen and (min-width: 581px) {
	.rc-section-ac .ac {
		height: auto !important;
	}
}
@media screen and (max-width: 580px) {
	.rc-section {
		margin: 30px 0;
	}
	.rc-section-ac {
		margin: 30px 0;
	}
	.rc-section-ac .h2 {
		position: relative;
		padding-bottom: 5px;
		border-bottom: 1px solid #ccc;
		cursor: pointer;
	}
	.rc-section-ac .h2::after {
		content: '';
		display: block;
		position: absolute;
		top: 50%;
		right: 0;
		margin-top: -7px;
		width: 20px;
		height: 20px;
		background-image: url(../IMAGES/arrow-red.svg);
		background-size: contain;
		transform: rotate(90deg);
	}
	.rc-section-ac.opened .h2::after {
		transform: rotate(-90deg);
	}
	.rc-section-ac .ac {
		overflow: hidden;
		margin: 0;
		height: 0;
	}
}

/*============================================================
	基本ブロック
*/
.rc-block {
	margin: 15px 0;
}

/*============================================================
	アラート
*/
.rc-alert {
	margin: 30px 0;
	padding: 15px 25px;
	background-color: #fcf5f7;
}
.rc-body > .rc-alert:last-child {
	margin-bottom: 0;
}
@media screen and (max-width: 580px) {
	.rc-alert {
		margin: 20px 0;
		padding: 10px 15px;
	}
}

/*============================================================
	ご注意
*/
.rc-alert-lg {
	margin: 50px 0;
	padding: 15px 25px;
	background-color: #fcf5f7;
}
.rc-body > .rc-alert-lg:last-child {
	margin-bottom: 0;
}
.rc-alert-lg .row {
	display: flex;
	padding: 20px 0;
}
.rc-alert-lg .row .head {
	width: 110px;
	text-align: center;
}
.rc-alert-lg .row .head h3 {
	font-weight: inherit;
	color: #c3002f;
}
.rc-alert-lg .row .detail {
	flex: 1;
	padding-left: 10px;
	font-size: 14px;
}
.rc-alert-lg .row .detail ul li {
	padding: 0.1em 0 0.1em 1em;
	text-indent: -1em;
}
.page-en .rc-alert-lg .row {
	display: block;
}
.page-en .rc-alert-lg .row .head {
	margin: 0 0 5px 0;
	width: auto;
	text-align: left;
}
.page-en .rc-alert-lg .row .detail {
	padding-left: 0;
}
.page-en .rc-alert-lg .row .detail ul li {
	position: relative;
	text-indent: 0;
}
.page-en .rc-alert-lg .row .detail ul li i {
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width: 580px) {
	.rc-alert-lg {
		margin: 30px 0;
		padding: 10px 15px;
	}
	.rc-alert-lg .row {
		display: block;
		padding: 10px 0;
	}
	.rc-alert-lg .row .head {
		margin: 0 0 5px 0;
		width: auto;
		text-align: left;
	}
	.rc-alert-lg .row .detail {
		padding-left: 0;
		font-size: 12px;
	}
}

/*============================================================
	重要なお知らせ
*/
.rc-news {
	margin: 50px 0;
}
.rc-news .list {
	margin: -5px 0 0 0;	
}
.rc-news .list li > a {
	position: relative;
	display: block;
	padding: 10px 40px 10px 0;
	border-bottom: 1px solid #ccc;
	text-decoration: none;
	font-weight: 700;
	color: inherit;
}
.rc-news .list li > a:hover {
	text-decoration: underline;
}
.rc-news .list li > a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	margin-top: -10px;
	width: 20px;
	height: 20px;
	background-image: url('../IMAGES/arrow-red.svg');
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
}
.rc-news .list li > .root::after {
	transform: rotate(90deg);
}
.rc-news .list li.opened > .root::after {
	transform: rotate(-90deg);
}
.rc-news .list .detail {
	overflow: hidden;
	height: 0;
}
.rc-news .list .inner {
	padding: 10px 0 20px 0;
}
.rc-news .layout-center {
	margin: 50px 0 0 0;
}

@media screen and (max-width: 580px) {
	.rc-news .list li > a {
		display: block;
		padding: 10px 40px 10px 0;
	}
	.rc-news .list li > a::after {
		right: 0;
	}
	.rc-news .layout-center {
		margin: 30px 0 0 0;
	}
}

/*============================================================
	リコール等対象車両の検索
*/
.rc-search {
	margin: 30px 0;
	padding: 30px 50px;
	background-color: #eee;
}
.rc-search .row {
	display: flex;
	align-items: center;
}
.rc-search .detail {
	flex: 1;
	padding-right: 30px;
}
.rc-search .detail .h {
	margin: 0 0 10px 0;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.4;
}
.rc-search .btn-red {
	padding: 14px 30px 14px 15px;
	width: 192px;
	height: auto;
	font-size: 15px;
}
.rc-search .btn-red::after {
	margin-top: -8px;
	width: 16px;
	height: 16px;
}
@media screen and (max-width: 767px) {
	.rc-search {
		margin: 30px 0;
		padding: 20px 15px 30px 15px;
	}
	.rc-search .row {
		display: block;
	}
	.rc-search .detail .h {
		margin: 0 0 5px 0;
	}
	.rc-search .btn-wrap {
		margin: 20px 0 0 0;
		display: flex;
		justify-content: center;
	}
	.rc-search .btn-red {
		padding: 10px 30px 10px 15px;
	}
}

/*============================================================
	検索入力
*/
.rc-search-input {
	margin: 50px 0;
}
.rc-search-input .frame {
	display: flex;
	align-items: center;
	margin: 20px 0;
	padding: 40px 7%;
	background-color: #eee;
}
.rc-search-input .frame h2 {
	padding: 0 30px 0 0;
}
.rc-search-input .frame .form {
	flex: 1;
	display: flex;
	align-items: center;
}
.rc-search-input .frame .form .input {
	flex: 1;
	position: relative;
}
.rc-search-input .frame .form .input .base {
	display: flex;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 0 22px;
	background-color: #fff;
	line-height: 1.3;
}
.rc-search-input .frame .form .input .base br {
	display: none;
}
.rc-search-input .frame .form .input.hidden-base .base span {
	display: none;
}
.rc-search-input .frame .form .input input {
	display: block;
	position: relative;
	overflow: hidden;
	padding: 0.9em 16px;
	height: 62px;
	width: 100%;
	border: 3px solid #ccc;
}
.rc-search-input .frame .form .hyphen {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 36px;
	height: 62px;
}
.rc-search-input .frame .form .hyphen::before {
	content: '';
	display: block;
	width: 20px;
	height: 2px;
	background-color: #343434;
}
.rc-search-input .frame .submit {
	padding: 0 0 0 10px;
}
.rc-search-input .frame .submit button {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 90px;
	height: 62px;
	background-color: #c3002f;
	font-weight: 700;
	font-size: 18px;
	color: #fff;
}
.os-pc .rc-search-input .frame .submit button:hover {
	background-color: #920023;
}
.rc-search-input .frame .submit button i {
	display: none;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -7px;
	width: 14px;
	height: 14px;
	background-image: url('../IMAGES/arrow-white.svg');
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
}
.rc-search-input .text {
	font-size: 14px;
}

@media screen and (max-width: 959px) {
	.rc-search-input .frame {
		padding: 20px 20px;
	}
}
@media screen and (max-width: 580px) {
	.rc-search-input {
		margin: 30px 0;
	}
	.rc-search-input .frame {
		display: block;
		padding: 20px 15px;
	}
	.rc-search-input .frame h2 {
		padding: 0;
	}
	.rc-search-input .frame .form {
		margin: 10px 0 0 0;
	}
	.rc-search-input .frame .form .input .base {
		padding: 0 8px;
	}
	.rc-search-input .frame .form .input .base br {
		display: block;
	}
	.rc-search-input .frame .form .input input {
		padding: 0.9em 6px;
		height: 57px;
		border-width: 2px;
	}
	.rc-search-input .frame .form .hyphen {
		width: 32px;
		height: 61px;
	}
	.rc-search-input .frame .form .hyphen::before {
		width: 18px;
	}
	.rc-search-input .frame .submit {
		margin: 20px 0 0 0;
		padding: 0;
	}
	.rc-search-input .frame .submit button {
		width: 100%;
		height: 46px;
		font-size: 14px;
	}
	.rc-search-input .frame .submit button i {
		display: block;
	}
}

/*============================================================
	車台番号説明
*/
.rc-search-certificate {
	margin: 50px 0 70px 0;
}
.rc-search-certificate img {
	width: 100%;
}
.rc-search-certificate .btn-wrap {
	margin: 15px 0 0 0;
}
.rc-search-certificate .row {
	display: flex;
	text-align: center;
	margin: 0 -10px;
}
.rc-search-certificate .col {
	flex-basis: 50%;
	margin: 30px 0 0 0;
	padding: 0 10px;
}
.rc-search-certificate .col h2 {
	margin: 0 0 10px 0;
	font-size: 18px;
}

@media screen and (max-width: 959px) {
	.rc-search-certificate img {
		max-width: 650px;
	}
	.rc-search-certificate .row {
		display: block;
		margin: 0;
		padding: 40px 0 0 0;
	}
	.rc-search-certificate .col {
		margin: 0;
		padding: 0;
	}
}
@media screen and (max-width: 580px) {
	.rc-search-certificate {
		margin: 30px 0 40px 0;
	}
}

/*============================================================
	車検証拡大ページ
*/
.rc-certificate-lg {
	text-align: center;
}
.rc-certificate-lg img {
	max-width: 100%;
}

/*============================================================
	リコール / 改善対策一覧
*/
.rc-recall {
	margin: 50px 0;
}
.rc-recall:last-child {
	margin-bottom: 0;
}
.rc-recall .list {
	margin: -5px 0 0 0;
}
.rc-recall .list table {
	width: 100%;
	border-collapse: collapse;
}
.rc-recall .list table td {
	padding: 10px 0;
	border-bottom: 1px dotted #ccc;
	vertical-align: top;
}
.rc-recall .list table td:first-child {
	width: 140px;
}
.rc-recall .list table tr:last-child td {
	border-bottom: 0;
}
.rc-recall .list table br {
	display: none;
}
.rc-recall-index .list table tr,
.rc-recall-full .list table tr {
	display: none;
}
.rc-recall-index .list table tr:nth-child(1),
.rc-recall-index .list table tr:nth-child(2),
.rc-recall-index .list table tr:nth-child(3),
.rc-recall-index .list table tr:nth-child(4) {
	display: table-row;
}
.rc-recall-index .list table tr.show {
	display: table-row;
}
.rc-recall-full .list table tr:nth-child(1),
.rc-recall-full .list table tr:nth-child(2),
.rc-recall-full .list table tr:nth-child(3),
.rc-recall-full .list table tr:nth-child(4),
.rc-recall-full .list table tr:nth-child(5) {
	display: table-row;
}
.rc-recall-full .list.opened table tr {
	display: table-row;
}
.rc-recall .list-full table tr:last-child td {
	border-bottom: 0;
}
.rc-recall .list-airbag table br {
	display: block;
}
.rc-recall .list-airbag table font {
	color: #c3002f;
}
.rc-recall .list table a {
	text-decoration: none;
	color: inherit;
}
.os-pc .rc-recall .list table a:hover {
	text-decoration: underline;
}
.rc-recall .list .ctr {
	display: flex;
	margin: 10px 0 0 0;
	user-select: none;
}
.rc-recall .list .ctr a {
	display: block;
	margin: 0 40px 0 0;
	text-decoration: none;
}
.rc-recall .list .ctr a:last-child {
	margin: 0;
}
.rc-recall .list .ctr a::after {
	content: '';
	display: inline-block;
	width: 20px;
	height: 14px;
	background-image: url('../IMAGES/arrow-red.svg');
	background-position: 100% 50%;
	background-repeat: no-repeat;
	background-size: 14px 14px;
}
.rc-recall .list .ctr .reset {
	display: none;
}
.os-pc .rc-recall .list .ctr a:hover span {
	text-decoration: underline;
}
.rc-recall .list .more-btn {
	display: flex;
	margin: 30px 0 0 0;
	font-weight: 700;
	font-size: 15px;
}
.rc-recall-full .list.opened .more-btn {
	display: none;
}

@media screen and (max-width: 580px) {
	.rc-recall {
		margin: 40px 0;
	}
	.rc-recall .list table,
	.rc-recall .list table > tbody,
	.rc-recall .list table > tbody > tr,
	.rc-recall .list table > tbody > tr > td {
		display: block;
	}
	.rc-recall .list table tr {
		padding: 10px 0;
		border-bottom: 1px dotted #ccc;
	}
	.rc-recall .list table td {
		padding: 0;
		border-bottom: 0;
	}
	.rc-recall .list table td:first-child {
		width: 100%;
		font-size: 13px;
	}
	.rc-recall-index .list table > tbody > tr {
		display: none;
	}
	.rc-recall-index .list table > tbody > tr:nth-child(1),
	.rc-recall-index .list table > tbody > tr:nth-child(2),
	.rc-recall-index .list table > tbody > tr:nth-child(3),
	.rc-recall-index .list table > tbody > tr:nth-child(4) {
		display: block;
	}
	.rc-recall-index .list table tr.show {
		display: block;
	}
	.rc-recall-full .list table > tbody > tr {
		display: none;
	}
	.rc-recall-full .list table > tbody > tr:nth-child(1),
	.rc-recall-full .list table > tbody > tr:nth-child(2),
	.rc-recall-full .list table > tbody > tr:nth-child(3),
	.rc-recall-full .list table > tbody > tr:nth-child(4),
	.rc-recall-full .list table > tbody > tr:nth-child(5) {
		display: block;
	}
	.rc-recall-full .list.opened table tr {
		display: block;
	}
}

/*============================================================
	英語/日本語切り替えリンク
*/
.lang-link {
	position: relative;
	top: -75px;
	display: flex;
	justify-content: flex-end;
	margin-bottom: -20px;
	font-size: 15px;
	line-height: 20px;
}
.lang-link a {
	display: block;
	position: relative;
	padding-right: 20px;
	text-decoration: none;
}
.lang-link a:hover {
	text-decoration: underline;
}
.lang-link a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	margin-top: -8px;
	width: 16px;
	height: 16px;
	background-image: url('../IMAGES/arrow-red.svg');
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
}
@media screen and (max-width: 740px) {
	.lang-link {
		top: -30px;
	}
}
@media screen and (max-width: 580px) {
	.lang-link {
		top: -5px;
		margin-bottom: 0;
	}
}

/*============================================================
	タブ
*/
.rc-tabs {
	margin: 0 0 30px 0;
}
.rc-tabs ul {
	position: relative;
	overflow: hidden;
	display: flex;
	text-align: center;
	line-height: 1.5;
}
.rc-tabs ul::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #c3002f;
}
.rc-tabs ul li {
	position: relative;
	margin-bottom: -1px;
	padding-right: 4px;
}
.rc-tabs ul li:last-child {
	padding-right: 0;
}
.rc-tabs ul li span,
.rc-tabs ul li a {
	display: block;
	padding: 11px 15px 0 15px;
	min-width: 192px;
}
.rc-tabs ul li span {
	height: 51px;
	border: 1px solid #c3002f;
	border-bottom-color: #fff;
	background-color: #fff;
	color: #c3002f;
}
.rc-tabs ul li a {
	height: 45px;
	border: 1px solid #eee;
	background-color: #eee;
	text-decoration: none;
	color: inherit;
}
.os-pc .rc-tabs ul li a:hover {
	color: #c3002f;
}
@media screen and (max-width: 580px) {
	.rc-tabs {
		margin: 0 0 30px 0;
		font-size: 14px;
	}
	.rc-tabs ul li {
		padding-right: 2px;
	}
	.rc-tabs ul li span,
	.rc-tabs ul li a {
		padding: 13px 10px 0 10px;
		min-width: 100px;
	}
	.rc-tabs ul li span {
		height: 51px;
	}
	.rc-tabs ul li a {
		height: 47px;
	}
}

/*============================================================
	表組
*/
.rc-table table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	line-height: 1.5;
}
.rc-table table th,
.rc-table table td {
	padding: 15px 20px;
	border: 1px solid #ccc;
	vertical-align: middle;
}
.rc-table table th {
	background-color: #343434;
	text-align: left;
	color: #fff;
}
.rc-table table td.right {
	text-align: right;
}
.rc-body > .rc-table:last-child {
	margin-bottom: 0 !important;
}
/* 届出番号 */
.rc-table-code {
	margin: 10px 0;
}
.rc-table-code table th {
	width: 18%;
	white-space: nowrap;
}
.rc-table-code table td {
	width: 32%;
}
/* 詳細 */
.rc-table-detail {
	margin: 10px 0;
}
.rc-table-detail table th {
	width: 30%;
}
/* 型式 */
.rc-table-list {
	margin: 10px 0;
}
.rc-table-list table th,
.rc-table-list table td {
	padding: 12px 20px;
}
.rc-table-list table th {
	text-align: center;
}
.rc-table-list table th.col-type {
	width: 15%;
}
.rc-table-list table th.col-name {
	width: 17%;
}
.rc-table-list table th.col-vin {
	width: 21%;
}
.rc-table-list table th.col-model-year {
	width: 19%;
}
.rc-table-list table th.col-number {
	width: 16%;
}
.rc-table-list table th.col-remarks {
	width: 12%;
}
.lang-en .rc-table-list table th.col-type {
	width: 16%;
}
.lang-en .rc-table-list table th.col-name {
	width: 16%;
}
.lang-en .rc-table-list table th.col-vin {
	width: 20%;
}
.lang-en .rc-table-list table th.col-model-year {
	width: 24%;
}
.lang-en .rc-table-list table th.col-number {
	width: 16%;
}
.lang-en .rc-table-list table th.col-remarks {
	width: 8%;
}
/* 検索結果 */
.rc-table-result {
	margin: 0 0 30px 0;
}
.rc-table-result table a {
	text-decoration: none;
	color: inherit;
}
.rc-table-result table th,
.rc-table-result table td {
	vertical-align: top;
}
.rc-table-result table th {
	text-align: center;
}
.rc-table-result table th span {
	display: inline-block;
}
.rc-table-result table tr:nth-child(even) td {
	background-color: #eee;
}
.rc-table-result table th:first-child,
.rc-table-result table td:first-child {
	width: 10px;
	text-align: center;
	white-space: nowrap;
}
.os-pc .rc-table-result table a:hover {
	text-decoration: underline;
}

@media screen and (min-width: 581px) {
	.rc-table-scale {
		height: auto !important;
	}
}
@media screen and (max-width: 580px) {
	.rc-table table {
		font-size: 12px;
	}
	.rc-table table th,
	.rc-table table td {
		padding: 10px 10px;
	}
	/* 届出番号 */
	.rc-table-code table,
	.rc-table-code table > tbody,
	.rc-table-code table > tbody > tr,
	.rc-table-code table > tbody > tr > th,
	.rc-table-code table > tbody > tr > td {
		display: block;
	}
	.rc-table-code table {
		border-bottom: 1px solid #ccc;
	}
	.rc-table-code table > tbody > tr {
		display: flex;
		flex-wrap: wrap;
	}
	.rc-table-code table > tbody > tr > th,
	.rc-table-code table > tbody > tr > td {
		border-bottom: 0;
	}
	.rc-table-code table > tbody > tr > th {
		flex-basis: 37%;
		white-space: normal;
	}
	.rc-table-code table > tbody > tr > td {
		flex-basis: 63%;
		border-left: 0;
	}
	/* 詳細 */
	.rc-table-detail table th,
	.rc-table-detail table td {
		vertical-align: top;
	}
	.rc-table-detail table th {
		width: 37%;
	}
	/* 検索結果 */
	.rc-table-result {
		margin: 0 0 20px 0;
	}
	/**/
	.rc-table-scale {
		overflow: hidden;
	}
	.rc-table-scale table {
		width: 200%;
		transform: scale(0.5);
		transform-origin: 0 0;
		font-size: 2.7vw;
	}
}

/*============================================================
	CAUTION（英語版）
*/
.rc-caution {
	color: #c3002f;
}
@media screen and (max-width: 580px) {
	.rc-caution {
		font-size: 14px;
	}
}

/*============================================================
	タブ下アナウンス
*/
.rc-announce {
	margin: 30px 0;
}
@media screen and (max-width: 580px) {
	.rc-announce {
		font-size: 14px;
	}
}

/*============================================================
	表組下備考
*/
.rc-remarks {
	margin: 20px 0 0 0;
}
@media screen and (max-width: 580px) {
	.rc-remarks {
		font-size: 14px;
	}
}

/*============================================================
	リコール改善箇所の図
*/
.rc-figure {
	text-align: center;
}
.rc-figure img {
	max-width: 100%;
}

/*============================================================
	リコールデータ見出し
*/
.rc-date {
	margin: 0 0 30px 0;
}
.rc-date div {
	margin: 0 0 5px 0;
	font-size: 20px;
	line-height: 1.5;
}
.rc-date h2 {
	font-size: 24px;
	line-height: 1.3;
}
@media screen and (max-width: 580px) {
	.rc-date {
		margin: 0 0 25px 0;
		padding: 10px 0 0 0;
	}
	.rc-date div {
		font-size: 16px;
	}
	.rc-date h2 {
		font-size: 20px;
	}
}

/*============================================================
	お客さまへのお願い
*/
.rc-blocks {
	margin: 30px 0;
}
.rc-blocks .block {
	padding: 30px 0;
	border-bottom: 1px solid #ccc;
}
.rc-blocks .block:first-child {
	padding-top: 10px;
}
.rc-blocks .block .h {
	margin: 0 0 15px 0;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.5;
}
.rc-blocks .block .detail {
	line-height: 1.9;
}
@media screen and (min-width: 581px) {
	.rc-blocks .block .detail {
		height: auto !important;
	}
}
@media screen and (max-width: 580px) {
	.rc-blocks .block {
		padding: 0;
		border-bottom: 0;
	}
	.rc-blocks .block .h {
		position: relative;
		margin: 0;
		padding: 10px 30px 10px 0;
		border-bottom: 1px solid #ccc;
		cursor: pointer;
	}
	.rc-blocks .block .h::after {
		content: '';
		position: absolute;
		top: 50%;
		right: 0;
		display: block;
		margin-top: -10px;
		width: 20px;
		height: 20px;
		background-image: url('../IMAGES/arrow-red.svg');
		background-position: 50% 50%;
		background-repeat: no-repeat;
		background-size: cover;
		transform: rotate(90deg);
	}
	.rc-blocks .block.opened .h::after {
		transform: rotate(-90deg);
	}
	.rc-blocks .block .detail {
		overflow: hidden;
		height: 0;
		line-height: 1.7;
	}
	.rc-blocks .block .detail .inner {
		padding: 15px 0 25px 0;
	}
	.rc-blocks .block .detail .note {
		padding-left: 1em;
		text-indent: -1em;
	}
}

/*============================================================
	お問い合わせ
*/
.rc-contact {
	margin: 70px 0 0 0;
}
.rc-contact .contact-box {
	display: flex;
	margin: 20px 0;
	padding: 25px 30px;
	background-color: #eee;
	line-height: 1.4;
}
.rc-contact .contact-box h3 {
	flex-basis: 320px;
	max-width: 320px;
	font-weight: 700;
	font-size: 20px;
}
.rc-contact .contact-box .detail {
	flex: 1;
	padding: 0 0 0 40px;
	border-left: 1px solid #ccc;
}
/**/
.rc-contact .contact-tel {
	align-items: center;
}
.rc-contact .contact-tel h3 span {
	display: block;
}
.rc-contact .contact-tel .detail {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.rc-contact .contact-tel .detail .number {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.rc-contact .contact-tel .detail .number .freedial {
	margin: 0 20px 0 0;
	font-weight: 700;
	font-size: 36px;
}
.rc-contact .contact-tel .detail .number .freedial a {
	display: none;
	text-decoration: none;
}
.rc-contact .contact-tel .detail .number .time span {
	display: block;
	padding: 6px 10px;
	border: 1px solid #707070;
	font-size: 14px;
}
/**/
.rc-contact .text br {
	display: none;
}
/**/
.rc-contact .contact-madoguchi {
	margin: 50px 0 0 0;
}
.rc-contact .contact-madoguchi h3 {
	padding: 5px 0;
}
.rc-contact .contact-madoguchi .detail {
	display: flex;
	align-items: center;
	font-size: 15px;
}
.rc-contact .contact-madoguchi .detail ul li {
	margin: 5px 0;
}
.rc-contact .contact-madoguchi .detail ul li a {
	display: inline-block;
	text-decoration: none;
	color: inherit;
}
.rc-contact .contact-madoguchi .detail ul li a::after {
	content: '';
	display: inline-block;
	width: 30px;
	height: 14px;
	background-image: url('../IMAGES/arrow-red.svg');
	background-position: 100% 50%;
	background-repeat: no-repeat;
	background-size: 14px 14px;
}
.os-pc .rc-contact .contact-madoguchi .detail ul li a:hover span {
	text-decoration: underline;
}
@media screen and (max-width: 1220px) {
	.rc-contact .contact-tel .detail {
		display: block;
	}
	.rc-contact .contact-tel .detail .number {
		margin: 0;
	}
}
@media screen and (max-width: 959px) {
	.rc-contact .contact-box {
		display: block;
		padding: 25px 30px;
	}
	.rc-contact .contact-box .detail {
		padding: 15px 0 0 0;
		border-left: 0;
		border-top: 1px solid #ccc;
	}
	.rc-contact .contact-box h3 {
		max-width: 100%;
		padding: 0 0 10px 0 !important;
		font-size: 19px;
	}
	.rc-contact .contact-tel h3 span {
		display: inline-block;
	}
	.rc-contact .contact-tel .detail .number {
		display: block;
		margin: 10px 0 0 0;
		text-align: center;
	}
	.rc-contact .contact-tel .detail .number .freedial {
		margin: 0;
	}
	.rc-contact .contact-tel .detail .number .freedial span {
		display: none;
	}
	.rc-contact .contact-tel .detail .number .freedial a {
		display: block;
		border: 1px solid #c3002f;
		border-radius: 30px;
		line-height: 58px;
		color: #c3002f;
	}
	.rc-contact .contact-tel .detail .number .time {
		display: flex;
		justify-content: center;
		margin: 15px 0 0 0;
	}
	.rc-contact .contact-madoguchi .detail {
		display: block;
	}
}
@media screen and (max-width: 580px) {
	.rc-contact {
		margin: 40px 0 0 0;
	}
	.rc-contact .contact-box {
		display: block;
		margin: 6px 0 12px 0;
		padding: 20px 15px;
	}
	.rc-contact .text {
		font-size: 13px;
	}
	.rc-contact .text br {
		display: block;
	}
	.rc-contact .contact-tel .detail .number .freedial {
		font-size: 28px;
	}
	.rc-contact .contact-tel .detail .number .freedial a {
		border-radius: 26px;
		line-height: 50px;
	}
	.rc-contact .contact-madoguchi {
		margin: 30px 0 0 0;
		padding-bottom: 5px;
	}
	.rc-contact .contact-madoguchi .detail {
		padding: 0;
	}
	.rc-contact .contact-madoguchi .detail ul li {
		margin: 0;
		border-bottom: 1px dashed #ccc;
	}
	.rc-contact .contact-madoguchi .detail ul li:last-child {
		border: 0;
	}
	.rc-contact .contact-madoguchi .detail ul li a {
		display: block;
		position: relative;
		padding: 15px 0;
	}
	.rc-contact .contact-madoguchi .detail ul li a::after {
		display: block;
		position: absolute;
		top: 50%;
		right: 0;
		margin-top: -7px;
		width: 14px;
	}
	.rc-contact .contact-madoguchi .detail ul li a span {
		display: block;
	}
}

/*============================================================
	メッセージ
*/
.rc-message {
	text-align: center;
}
@media screen and (max-width: 580px) {
	.rc-message {
		text-align: left;
	}
	.rc-message br {
		display: none;
	}
}

/*============================================================
	マージン
*/
.rc .margin-sm {
	margin: 30px 0;
}
.rc .margin-sm-top {
	margin-top: 30px;
}
.rc .margin-sm-bottom {
	margin-bottom: 30px;
}