/* tablet */
/*@media screen and (min-width: 581px) and (max-width: 959px) {
html {
  font-size: 1.0427vw;
}
}*/

@media screen and (min-width: 581px) and (max-width: 1279px) {
	html {
		font-size: 0.7818608vw;
	}
}

.sp,
br.sp {
	display: none;
}

/* 20190404 Commons 追加 */
hr.border {
	border: none;
	border-top: 1px solid #C1C1C1;
	padding: 0;
	height: 1px;
	margin: calc(50/1500 * 100%) auto;
	line-height: 0;
	box-sizing: border-box;
}

hr.border.s {
	max-width: 1170px;
}

.r-mark {
	font-size: 60%;
	font-family: Verdana, sans-serif;
	margin-left: 1px;
	font-weight: inherit;
	top: -0.3em;
}

@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .r-mark { top: -1em; } /* IE11 */
}



h1 .notes_mark,
h2 .notes_mark,
.subtitle .notes_mark {
	font-size: 0.7em;
}

.option-label {
	font-size: 1.2rem !important;
	font-weight: normal;
	width: auto;
	border: 1px solid #000;
	padding: 0.3em 0.45em;
	line-height: 1;
	display: inline-block;
	position: static;
	vertical-align: middle;
	margin-top: -.35em;
}

h1 .option-label,
h2 .option-label {
	display: inline-block !important;
}




.header h1 .r-mark {
	top: -0.6em;
}


.icon-crown {
	width: 1.5em;
	height: .9em;
	margin-right: 0.2em;
	display: inline-block;
	background-image: url(../IMAGES/icon_crown.jpg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}



/** -------------------------------
 * main
 */

#main {
	max-width: 1500px;
	margin: 0 auto;
	opacity: 0;
}

#main.loaded {
	opacity: 1;
}





/** -------------------------------
 * header
 */

/* 20190404 Commons 修正 */
#header {
	clear: both;
	max-width: 1280px;
	margin: 0 auto 5%;
	padding: 0 3.667%;
	padding-top: 4%;
}

#header > .wrap {
	display: block;
}

#header h1 {
	font-size: 3.4em;
	line-height: 1.1;
	text-align: center;
}

#header ul {
	padding: 0;
	padding-top: 1.5%;
	text-align: center;
}

#header li {
	display: inline-block;
	margin-top: 1.2%;
	padding: 0 1.6%;
}

#header li a {
	position: relative;
	display: block;
	padding-bottom: 2px;
	border-bottom: 1px solid #c1c1c1;
}

#header li a:before {
	content: '';
	position: absolute;
	left: 50%;
	top: 100%;
	display: block;
	width: 0;
	height: 0;
	margin-left: -6px;
	border: 6px solid transparent;
	border-top: 6px solid #c1c1c1;
}

#header li span {
	font-size: 1.2em;
	color: #000;
	line-height: 1.1;
	letter-spacing: -0.04em;
}

#header li a:hover {
	border-bottom: 1px solid #c3002c;
}

#header li a:hover:before {
	border-top: 6px solid #c3002c;
}

#header li a:hover span {
	color: #c3002c;
}

#header .select {
	display: none;
}

/* tablet */
@media screen and (min-width: 581px) and (max-width: 1279px) {
	#header li a {
		padding-bottom: 0.15625vw;
		border-bottom: 1px solid #c1c1c1;
	}

	#header li a:before {
		margin-left: -0.46875vw;
		border: 0.46875vw solid transparent;
		border-top: 0.46875vw solid #c1c1c1;
	}
}





/** -------------------------------
 * section
 */

/* 20190404 Commons 修正 */
.section {
	clear: both;
	max-width: 1170px;
	box-sizing: content-box;
	margin: 0 auto;
	margin-top: 4%;
	padding: 0 3.667%;
}

.section > .wrap {
	display: block;
}

.section .header {
	position: relative;
	padding-top: calc(19/1170 * 100%);
}

.section .header:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: calc(50/1170 * 100%);
	height: 4px;
	background-color: #c3002c;
}

.section .header h1 {
	display: table;
	width: 100%;
}

.section .header span {
	display: table-cell;
	font-size: 2.0em;
	font-weight: bold;
	line-height: 1.1;
	vertical-align: middle;
	letter-spacing: 0.03em;
}

.section .header span em {
	font-size: 0.6em;
	font-style: normal;
	font-weight: normal;
}


.section .header.noBorder {
	position: relative;
	padding-top: 0;
	margin-bottom: calc(10/1170 * 100%);
}

.section .header.noBorder:before {
	content: none;
}

.section .header.noBorder h1 > span {
	font-size: 1.8em;
	font-weight: normal;
}

.section .content {

}
  /* tablet */

@media screen and (min-width: 581px) and (max-width: 1279px) {
	.section .header:before {
		height: 0.3125vw;
	}
}

/** -------------------------------
 * section | fileListModule
 */

.section.fileListModule {

}

.section.fileListModule > .wrap {

}

.section.fileListModule .content {
	margin-top: 2.4%;
}

.section.fileListModule .content .spec {

}

.section.fileListModule .content .spec li {
	display: block;
	width: 31.9467%;
	margin-left: 1.68%;
	float: left;
}

.section.fileListModule .content .spec li:first-child,
.section.fileListModule .content .spec li:last-child {
	margin-left: 0;
}

.section.fileListModule .content .spec li:last-child {
	margin: 1.7094% 0 0 0;
}

.section.fileListModule .content .spec a {
	position: relative;
	display: table;
	width: 100%;
	height: 65px;
	background-color: #eee;
}

.section.fileListModule .content .spec a:after {
	content: '';
	position: absolute;
	right: 5%;
	top: 50%;
	display: block;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	background-image: url(../IMAGES/icon_pdf.png);
	background-repeat: no-repeat;
	background-position: right;
	background-size: contain;
}

#manual.section.fileListModule .content .spec a:after {
	background-image: url(../IMAGES/arrow_red.png);
	background-size: 30%;
}

.section.fileListModule .content .spec span {
	display: table-cell;
	padding: 0 5%;
	padding-right: 16px;
	font-size: 1.4em;
	color: #333;
	line-height: 1.1;
	letter-spacing: -0.04em;
	vertical-align: middle;
}

.section.fileListModule .content .spec a:hover span {
	color: #c3002f;
}
/* tablet */

@media screen and (min-width: 581px) and (max-width: 1279px) {
	.section.fileListModule .content .spec a {
		height: 5.078vw;
	}

	.section.fileListModule .content .spec a:after {
		width: 3.125vw;
		height: 3.125vw;
		margin-top: -1.5625vw;
	}

	.section.fileListModule .content .spec span {
		padding-right: 4.8vw;
	}
}


/** -------------------------------
 * section | customModule
 */

.section.customModule {

}

.section.customModule > .wrap {

}

.section.customModule .content {
	margin-top: calc(25/1170 * 100%);
}

.section.customModule .content > .subtitle {
  font-weight: normal;
  font-size: 2.6em;
}

.section.customModule .button {
	width: 100%;
	margin-top: calc(20/1170 * 100%);}

.section.customModule .label + .button {
	width: 100%;
	margin-top: calc(8/1170 * 100%);
}

.section.customModule .button .copy {
	font-size: 1.6em;
	font-weight: bold;
	color: #333;
	line-height: 1.5;
	word-break: break-all;
	margin-bottom: .5em;
}

.section.customModule .button a {

}

.section.customModule .button a > span {
	padding-right: 18px;
	background-image: url(../IMAGES/arrow_red.png);
	background-repeat: no-repeat;
	background-position: right;
	background-size: auto 15px;
	font-size: 1.6em;
	font-weight: bold;
	color: #333;
	line-height: 1.5;
	word-break: break-all;
}

.section.customModule .button a:hover span {
	color: #c3002f;
}

.section.customModule .movie {
	margin-top: calc(25/1170 * 100%);
	/*padding-top: calc(9/16 * 100%);*/
	padding-top: calc(480/1170 * 100%);
	position: relative;
}

.section.customModule .movie iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.section.customModule .image {
	margin-top: calc(25/1170 * 100%);
	position: relative;
}

.section.customModule .movie > .image {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	background-color: #fff;
	cursor: pointer;
}

.section.customModule .image img {
	width: 100%;
}

.section.customModule .movie .image img:hover {
	opacity: 0.7;
}


/* tablet */

@media screen and (min-width: 581px) and (max-width: 1279px) {
	.customModule .button span {
		padding-right: 1.875vw;
		background-size: auto 1.171875vw;
	}
}

/** -------------------------------
 * section | articleBlockModule
 */

.section.articleBlockModule {
	margin-top: 0;
	padding-top: 0;
}

.section.articleBlockModule.noBorder{
	border-top: none;
	margin-top: 0;
	padding-top: 0;
}

.section.articleBlockModule > .wrap {

}

.section.articleBlockModule .header {
  /*padding-bottom: 1.2%;*/ /* 20190403 dede 修正 */
	/*background-image: url(../IMAGES/line01.png);*/ /* 20190403 dede 修正 */
	/*background-repeat: repeat-x;*/ /* 20190403 dede 修正 */
	/*background-position: left bottom;*/ /* 20190403 dede 修正 */
	/*background-size: auto 1px;*/ /* 20190403 dede 修正 */
}

.section.articleBlockModule .header span {
	/*font-size: 2.2em;*/ /* 20190403 dede 修正 */
}

.section.articleBlockModule .header span em {
	font-size: 0.857em;
	font-weight: bold;
}

.section.articleBlockModule .content {
	margin-top: 2.4%;
}

.section.articleBlockModule .content > .wrap {

}

.section.articleBlockModule .subtitle {
	font-size: 2.4em;
	font-weight: bold;
}

.section.articleBlockModule .overview {
	margin-top: -1%;
	padding-bottom: 1.2%;
	font-size: 1.6em;
	line-height: 1.75;
}

.section.articleBlockModule .swiper-container {

}

.section.articleBlockModule .swiper-wrapper {
	flex-wrap: wrap;
}


.section.articleBlockModule .swiper-content_col2 .swiper-slide {
	width: 50%;
	box-sizing: border-box;
}

.section.articleBlockModule .swiper-content_col2 .swiper-slide:nth-of-type(even) {
	padding-left: calc(15/1170 * 100%);
}

.section.articleBlockModule .swiper-content_col2 .swiper-slide:nth-of-type(odd) {
	padding-right: calc(15/1170 * 100%);
}

.section.articleBlockModule .swiper-content_col2 .swiper-slide:nth-of-type(n + 3) {
	margin-top: 2%;
}




.section.articleBlockModule .swiper-content_col3 .swiper-slide {
	width: 31.624%;
	margin-left: 2.564%;
}

.section.articleBlockModule .swiper-content_col3 .swiper-slide:nth-of-type(3n + 1) {
	margin-left: 0;
}

.section.articleBlockModule .swiper-content_col3 .swiper-slide:nth-of-type(n + 4) {
	margin-top: 2%;
}




.section.articleBlockModule .swiper-content_col4 .swiper-slide {
	width: 23%;
	margin-left: 2.564%;
}

.section.articleBlockModule .swiper-content_col4 .swiper-slide:nth-of-type(4n + 1) {
	margin-left: 0;
}

.section.articleBlockModule .swiper-content_col4 .swiper-slide:nth-of-type(n + 5) {
	margin-top: 2%;
}





.section.articleBlockModule .swiper-slide > .wrap {

}

.section.articleBlockModule .swiper-slide .image {
	margin-bottom: 3%;
	/*padding-top: 56.25%;*/
	background-repeat: no-repeat;
	background-position: left;
	background-size: cover;
}

.section.articleBlockModule .swiper-slide .image  img {
	width: 100%;
	height: auto;
}

.section.articleBlockModule .swiper-slide .lead {
	font-size: 1.6em;
}

.section.articleBlockModule .swiper-slide .lead em {
  font-size: 0.8em;
  font-weight: normal;
}

.section.articleBlockModule .description { /* 20190403 dede 新規追加 */
  /*font-size: 1.2em;*/
  font-size: 1.6em;
  line-height: 1.66;
  margin-top: 1%;
}

.section.articleBlockModule .swiper-slide .description {
	font-size: 1.6em;
	line-height: 1.75;
}

.section.articleBlockModule .swiper-button-prev {
	display: none;
}

.section.articleBlockModule .swiper-button-next {
	display: none;
}

.section.articleBlockModule .swiper-pagination {
	display: none;
}
/* tablet */

@media screen and (min-width: 581px) and (max-width: 1279px) {

}


/** -------------------------------
 * section | articleBasicModule
 */

.section.articleBasicModule {
	padding-top: 0; /* 20190403 dede 修正 */
	max-width: 1280px; /* 20190403 dede 修正 */
	margin-top: 0; /* 20190403 dede 修正 */
}

.section.articleBasicModule.noBorder {
	border-top: none;
	margin-top: 0;
	padding-top: 0;
}

.section.articleBasicModule > .wrap {
  max-width: 1170px; /* 20190403 dede 修正 */
  margin-right: auto; /* 20190403 dede 修正 */
  margin-left: auto; /* 20190403 dede 修正 */
}

.section.articleBasicModule .logo_img {
	margin: calc(50/1170 * 100%) 0;
}

.section.articleBasicModule .logo_img img {
	width: 100%;
}


.section.articleBasicModule .header {

}

.section.articleBasicModule .header h1 > span {
	/*font-size: 2.2em;*/ /* 20190403 dede 修正 */
	vertical-align: top; /* 20190403 dede 修正 */
}

.section.articleBasicModule .header span em {
	font-size: 0.857em;
	font-weight: bold;
}

.section.articleBasicModule .content {
	margin-top: 0;
}

.section.articleBasicModule .inner + .content {
	margin-top: calc(28/1170 * 100%);
}


.articleGroup.col2 .section.articleBasicModule .content {
	margin-top: 0;
}

.articleGroup.col2 .section.articleBasicModule .inner + .content {
	margin-top: calc(28/570 * 100%);
}

.articleGroup.col3 .section.articleBasicModule .content {
	margin-top: 0;
}

.articleGroup.col3 .section.articleBasicModule .inner + .content {
	margin-top: calc(28/370 * 100%);
}



.section.articleBasicModule .content > .wrap {

}

.section.articleBasicModule .content > .wrap > .image + .inner,
.section.articleBasicModule .content > .wrap > .inner + .inner {
	margin-top: calc(45/1170 * 100%);
}

.section.articleBasicModule .content > .wrap > .image + .inner > .caption:first-child {
	margin-top: calc(-36/1170 * 100%) !important;
}

.articleGroup.col2 .section.articleBasicModule .content > .wrap > .image + .inner > .caption:first-child {
	margin-top: calc(-14/570 * 100%);
}

.section.articleBasicModule .description {
	margin-top: 1.5%;
	font-size: 1.6em;
	line-height: 1.75;
}

.section.articleBasicModule .wrap > .inner > .description:first-child {
	margin-top: 0 !important;
}

.section.articleBasicModule .image +  .description {
	margin-top: calc(25/1170 * 100%);
}

.section.articleBasicModule .description.large {
	font-size: 2em;
}

.description em {
	font-size: 0.875em;
	display: block;
	margin-top: 1.5%;
}


.description .note {
	font-size: 1.2rem;
	display: block;
	margin-top: 1.5%;
}

.section.articleBasicModule .notes {
  font-size: 1.4em;
  margin-top: 1.5%;
}

.section.articleBasicModule .subtitle {
  font-size: 2.4em;
  font-weight: bold;
}

.section.articleBasicModule .subtitle.blank {
	height: 1.4em;
}

.section.articleBasicModule .button {
	width: 100%;
	margin-top: calc(20/1170 * 100%);
}

.col2 .section.articleBasicModule .button {
	width: 100%;
	margin-top: calc(20/570 * 100%);
}


.section.articleBasicModule .label + .button {
	width: 100%;
	margin-top: calc(8/1170 * 100%);
}

.section.articleBasicModule .button a {

}

.section.articleBasicModule .button span {
	padding-right: 18px;
	background-image: url(../IMAGES/arrow_red.png);
	background-repeat: no-repeat;
	background-position: right;
	background-size: auto 15px;
	font-size: 1.6em;
	font-weight: bold;
	color: #333;
	line-height: 1.5;
	word-break: break-all;
}

.section.customModule .button a:hover span {
	color: #c3002f;
}

.section.articleBasicModule .image {
	width: 100%;
	margin-top: calc(25/1170 * 100%);
}

.section.articleBasicModule .wrap .image:first-child {
	margin-top: 0 !important;
}

.section.articleBasicModule .image > span {
	display: block;
	padding-top: 56.25%;
	background-repeat: no-repeat;
	background-position: left;
	background-size: cover;
}

.articleGroup.col2 .section.articleBasicModule .image {
	margin-top: calc(25/570 * 100%);
}

.articleGroup.col3 .section.articleBasicModule .image {
	margin-top: calc(25/370 * 100%);
}

.articleGroup.col2 .section.articleBasicModule .image > span {
	padding-top: calc(280/570 * 100%);
}

.section.articleBasicModule .image img {
	width: 100%;
}

.section.articleBasicModule .caption {
	font-size: 1.4em;
	margin-top: calc(5/1170 * 100% * -1);
}

.section.articleBasicModule .image .image-title {
	font-size: 1.8em;
	font-weight: bold;
	margin-bottom: calc(10/1170 * 100%);
}

.articleGroup.col2 .section.articleBasicModule .image .image-title {
	margin-bottom: calc(10/570 * 100%);
}


.section.articleBasicModule.columnExtension {

}

.section.articleBasicModule.columnExtension .content > .wrap {
	display: table;
	width: 100%;
}

.section.articleBasicModule.columnExtension .description {
	display: table-cell;
	margin-top: 0;
	padding-right: 2.5%;
	vertical-align: top;
}

.section.articleBasicModule.columnExtension .image {
	display: table-cell;
	width: 50%;
	margin-top: 0;
	vertical-align: top;
}

.section.articleBasicModule.columnExtension .image span {
	display: block;
	padding-top: calc(280/570 * 100%);
	background-repeat: no-repeat;
	background-position: left;
	background-size: cover;
}

.section.articleBasicModule .itemsWrap.col2 { /* 20190403 dede 新規追加 */
  margin-top: 1%;
}

.section.articleBasicModule .itemsWrap.col2 .items { /* 20190403 dede 新規追加 */
  display: flex;
}

.section.articleBasicModule .itemsWrap.col2 .item { /* 20190403 dede 新規追加 */
  width: 50%;
}

.section.articleBasicModule .itemsWrap.col2 .item:first-child { /* 20190403 dede 新規追加 */
  padding-right: 15px;
}

.section.articleBasicModule .itemsWrap.col2 .item:last-child { /* 20190403 dede 新規追加 */
  padding-left: 15px;
}

.section.articleBasicModule .itemsWrap.col2 .image span { /* 20190403 dede 新規追加 */
  padding-top: 36%;
}

.section.articleBasicModule .itemsWrap.col2 .content { /* 20190403 dede 新規追加 */
  margin-top: 3.5%;
}

.section.articleBasicModule .itemsWrap.col2 .description { /* 20190403 dede 新規追加 */
  margin-top: 2%;
}


.section.articleBasicModule .itemsWrap.col3 { /* 20190403 dede 新規追加 */
  margin-top: 1%;
}

.section.articleBasicModule .itemsWrap.col3 .items { /* 20190403 dede 新規追加 */
  display: flex;
}

.section.articleBasicModule .itemsWrap.col3 .item { /* 20190403 dede 新規追加 */
  width: 31.624%;
  margin-left: 2.564%;
}

.section.articleBasicModule .itemsWrap.col3 .item:first-child { /* 20190403 dede 新規追加 */
  margin-left: 0;
}

.section.articleBasicModule .itemsWrap.col3 .content { /* 20190403 dede 新規追加 */
  margin-top: 5.5%;
}

.section.articleBasicModule .itemsWrap.col3 .description { /* 20190403 dede 新規追加 */
  margin-top: 3%;
}

/* tablet */

@media screen and (min-width: 581px) and (max-width: 1279px) {
	.section.articleBasicModule .itemsWrap.col2 .item:first-child { /* 20190403 dede 新規追加 */
		padding-right: 1.171875vw;
	}

	.section.articleBasicModule .itemsWrap.col2 .item:last-child { /* 20190403 dede 新規追加 */
		padding-left: 1.171875vw;
	}

}

/** -------------------------------
 * section | articleCustomModule
 */

.section.articleCustomModule {
	padding-top: 4.6875%;
	border-top: 1px solid #c1c1c1;
}

.section.articleCustomModule > .wrap {

}

.section.articleCustomModule .header {
	padding-bottom: 1.2%;
	background-image: url(../IMAGES/line01.png);
	background-repeat: repeat-x;
	background-position: left bottom;
	background-size: auto 1px;
}

.section.articleCustomModule .header span {
	/*font-size: 2.2em;*/
}

.section.articleCustomModule .header span em {
	font-size: 0.857em;
	font-weight: bold;
}

.section.articleCustomModule .content {
	margin-top: 2.4%;
}

.section.articleCustomModule .content > .wrap {

}
/* tablet */

@media screen and (min-width: 581px) and (max-width: 1279px) {

}





/** -------------------------------
 * articleGroup
 */

.articleGroup {
	clear: both;
	max-width: 1280px;
	margin: 0 auto;
	margin-top: ;
	padding: 0 3.667%;
}

.articleGroup + .articleGroup,
.articleBasicModule + .articleGroup,
.articleGroup + .articleBasicModule,
.articleBasicModule + .articleBasicModule,
.articleBasicModule + .articleBlockModule,
.articleBlockModule + .articleBasicModule,
.articleBlockModule + .articleGroup,
.customModule + .articleBasicModule {
	margin-top: calc(40/1170 * 100%);
}

.articleGroup.noBorder{
  border-top: none;
  margin-top: 0;
  padding-top: 0;
}

.articleGroup > .wrap {
	display: flex; /* 20190403 dede 新規追加 */
	width: 100%;
	max-width: 1170px; /* 20190403 dede 新規追加 */
	margin-right: auto; /* 20190403 dede 新規追加 */
	margin-left: auto; /* 20190403 dede 新規追加 */
}

.articleGroup .articleGroupColumn {
	display: block;
	width: 50%;
	vertical-align: top;
}

.articleGroup .articleGroupColumn:first-child {
	padding-right: calc(15/1170 * 100%);
}

.articleGroup .articleGroupColumn:last-child {
	padding-left: calc(15/1170 * 100%);
}


.articleGroup.col3 .articleGroupColumn { /* 20190403 dede 新規追加 */
	display: block;
	width: 31.624%;
	vertical-align: top;
	padding-right: 0;
	margin-left: 2.564%;
}

.articleGroup.col3 .articleGroupColumn:first-child{ /* 20190403 dede 新規追加 */
  margin-left: 0;
  padding-right: 0;
}

.articleGroup.col3 .articleGroupColumn:last-child{ /* 20190403 dede 新規追加 */
  padding-left: 0;
}

.articleGroup .section {
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.articleGroup .section .header {
	padding-top: 3.284%;
}

.articleGroup .section .header:before {
	width: calc(50/570 * 100%);
	height: 4px;
}


.articleGroup.col2_1-2 .articleGroupColumn:first-child {
	width: calc(385/1170 * 100%)
}

.articleGroup.col2_1-2 .articleGroupColumn:last-child {
	width: calc(785/1170 * 100%)
}

.articleGroup.col2_1-2 .articleGroupColumn:first-child .section .header {
	padding-top: calc(19/385 * 100%);
}

.articleGroup.col2_1-2 .articleGroupColumn:last-child .section .header {
	padding-top: calc(19/757 * 100%);
}

.articleGroup.col2_1-2 .articleGroupColumn:first-child .section .header:before {
	width: calc(50/383 * 100%);
	height: 4px;
}

.articleGroup.col2_1-2 .articleGroupColumn:last-child .section .header:before {
	width: calc(50/757 * 100%);
	height: 4px;
}

.articleGroup.col2_1-2 .articleGroupColumn:first-child .content {
	margin-top: calc(28/370 * 100%);
}

.articleGroup.col2_1-2 .articleGroupColumn:last-child .content {
	margin-top: calc(28/757 * 100%);
}

.articleGroup.col2_1-2 .section.articleBlockModule .swiper-content_col2 .swiper-slide:nth-of-type(even) {
	padding-left: calc(15/770 * 100%);
}

.articleGroup.col2_1-2 .section.articleBlockModule .swiper-content_col2 .swiper-slide:nth-of-type(odd) {
	padding-right: calc(15/770 * 100%);
}


.articleGroup.col3 .section .header:before {
	width: calc(50/370 * 100%);
	height: 4px;
}


/* articleBasicModule */
.articleGroup .section.articleBasicModule {
	border-top: none;
}

.articleGroup .section.articleBasicModule .header {
	padding-top: calc(19/570 * 100%);
}

.articleGroup.col3 .section.articleBasicModule .header {
	padding-top: calc(19/370 * 100%);
}

.articleGroup .section.articleBasicModule .description { /* 20190403 dede 新規追加 */
  margin-top: 5%;
}

.articleGroup.col2 .section.articleBasicModule .description {
  margin-top: 3.5%;
}

.section-img-right.articleGroup .articleGroupColumn:first-of-type {
	width: 75%;
}

.section-img-right.articleGroup .articleGroupColumn:last-of-type {
	width: 25%;
}

.section-img-right.articleGroup .articleGroupColumn:last-of-type {

}




.articleGroup .button {
	width: 100%;
	margin-top: calc(20/550 * 100%); /* 20190404 Commons 修正 */
}

/* 20190404 Commons 追加 */
.articleGroup .label + .button {
	width: 100%;
	margin-top: calc(8/550 * 100%);
}

.articleGroup .button a {

}

.articleGroup .button span {
	padding-right: 18px;
	background-image: url(../IMAGES/arrow_red.png);
	background-repeat: no-repeat;
	background-position: right;
	background-size: auto 15px;
	font-size: 1.6em;
	font-weight: bold;
	color: #333;
	line-height: 1.5;
	word-break: break-all;
}

.articleGroup .button a:hover span {
	color: #c3002f;
}

/* tablet */

@media screen and (min-width: 581px) and (max-width: 1279px) {
	.articleGroup .articleGroupColumn:first-child {
		padding-right: 1.171875vw;
	}

	.articleGroup .articleGroupColumn:last-child {
		padding-left: 1.171875vw;
	}

	.articleGroup .section .header:before {
		height: 0.3125vw;
	}

	.articleGroup .button span {
		padding-right: 1.875vw;
		background-size: auto 1.171875vw;
	}
}




/** -------------------------------
 * bodyColor
 */

#bodyColor {

}

#bodyColor .content {
	position: relative;
}
    /* overview */

#bodyColor .overview {
	margin-top: 1.2%;
	font-size: 1.6em;
	line-height: 1.75;
}
    /* main */

#bodyColor .main {
	position: relative;
	width: 76.923%;
	margin-top: 2%;
}

#bodyColor .main > .wrap {
	position: relative;
	padding-top: 56.25%;
}

#bodyColor .main .item {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	display: none;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
        /* visible */

#bodyColor .main.image001 .item01 { display: block; }
#bodyColor .main.image002 .item02 { display: block; }
#bodyColor .main.image003 .item03 { display: block; }
#bodyColor .main.image004 .item04 { display: block; }
#bodyColor .main.image005 .item05 { display: block; }
#bodyColor .main.image006 .item06 { display: block; }
#bodyColor .main.image007 .item07 { display: block; }
#bodyColor .main.image008 .item08 { display: block; }
#bodyColor .main.image009 .item09 { display: block; }
#bodyColor .main.image010 .item10 { display: block; }
#bodyColor .main.image011 .item11 { display: block; }
#bodyColor .main.image012 .item12 { display: block; }
#bodyColor .main.image013 .item13 { display: block; }
#bodyColor .main.image014 .item14 { display: block; }
#bodyColor .main.image015 .item15 { display: block; }
#bodyColor .main.image016 .item16 { display: block; }
#bodyColor .main.image017 .item17 { display: block; }
#bodyColor .main.image018 .item18 { display: block; }
#bodyColor .main.image019 .item19 { display: block; }
#bodyColor .main.image020 .item20 { display: block; }
#bodyColor .main.image021 .item21 { display: block; }
#bodyColor .main.image022 .item22 { display: block; }
#bodyColor .main.image023 .item23 { display: block; }
#bodyColor .main.image024 .item24 { display: block; }
#bodyColor .main.image025 .item25 { display: block; }
#bodyColor .main.image026 .item26 { display: block; }
#bodyColor .main.image027 .item27 { display: block; }
#bodyColor .main.image028 .item28 { display: block; }
#bodyColor .main.image029 .item29 { display: block; }
#bodyColor .main.image030 .item30 { display: block; }
#bodyColor .main.image031 .item31 { display: block; }
#bodyColor .main.image032 .item32 { display: block; }
#bodyColor .main.image033 .item33 { display: block; }
#bodyColor .main.image034 .item34 { display: block; }
#bodyColor .main.image035 .item35 { display: block; }
#bodyColor .main.image036 .item36 { display: block; }

#bodyColor .main .swipeIcon {
	position: absolute;
	left: 2%;
	top: 10%;
	display: none;
	width: 64px;
	height: 64px;
	background-color: #fff;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
}

#bodyColor .main .swipeIcon.show {
	display: table;
}

#bodyColor .main .swipeIcon span {
	display: table-cell;
	background-image: url(../IMAGES/icon_360.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

#bodyColor .main .loader {
	position: absolute;
	left: 0;
	top: 0;
}

/* sub */
#bodyColor .sub {
	position: absolute;
	right: 0;
	top: 0;
	margin-top: 10%;
}

#bodyColor .sub > .wrap {

}

#bodyColor .sub .label {
	width: 244px;
	margin-left: 12px;
	margin-top: 8%;
	padding-top: 8%;
	border-top: 1px solid #ccc;
}

#bodyColor .sub .label.sp {
	display: none;
}

#bodyColor .sub .label dt {
	font-size: 1.6em;
}

#bodyColor .sub .label dd {
	font-size: 1.2em;
}

#bodyColor .sub .navi {
	width: 256px;
}

#bodyColor .sub .navi .item {
	width: 52px;
	height: 52px;
	margin-left: 12px;
	margin-top: 12px;
	float: left;
}

#bodyColor .sub .navi .item > .wrap {

}

#bodyColor .sub .navi .item span {
	position: relative;
	display: block;
	padding-top: 100%;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
}

#bodyColor .sub .navi .item span.half {
	overflow: hidden;
}

#bodyColor .sub .navi .item span.half:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 50%;
	bottom: 0;
	display: block;
	width: 100%;
	height: 100%;
	margin-top: 50%;
}

#bodyColor .sub .navi .item.focus {
	padding: 4px;
	border: 2px solid #000;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
}
    /* caption */

#bodyColor .caption {
	margin-top: 1.2%;
	font-size: 1.2em;
}
/* tablet */

@media screen and (min-width: 581px) and (max-width: 1279px) {
	#bodyColor .main .swipeIcon {
		width: 4.6875vw;
		height: 4.6875vw;
	}

	#bodyColor .sub .label {
		width: 19.0625vw;
		margin-left: 0.9375vw;
	}

	#bodyColor .sub .navi {
		width: 20vw;
	}

	#bodyColor .sub .navi .item {
		width: 4.0625vw;
		height: 4.0625vw;
		margin-left: 0.9375vw;
		margin-top: 0.9375vw;
	}

	#bodyColor .sub .navi .item.focus {
		padding: 0.3125vw;
	}
}




/** -------------------------------
 * caution
 */
/* @smartphone */

.caution-box {
	clear: both;
}

#support + .caution-box {
/*	margin-top: -7%;*/
	margin-bottom: 10%;
}

.caution-box > .wrap {
	clear: both;
	max-width: 1170px;
	box-sizing: content-box;
	margin: 0 auto;
	margin-top: 4%;
	padding: 0 3.667%;
}

#co2 .caution-box > .wrap {
	margin-top: 2%;
	margin-bottom: 4%;
}

.caution-box dl {
	position: relative;
	border-bottom: 1px solid #c2c2c2;
}

.caution-box dt {
	display: table;
	width: 100%;
	height: 48px;
	background-image: url(../IMAGES/icon_open.png);
	background-repeat: no-repeat;
	background-position: right;
	background-size: auto 40px;
	border-top: 1px solid #c2c2c2;
	cursor: pointer;
}

.caution-box dt.open {
	background-image: url(../IMAGES/icon_close.png);
}

.caution-box dt span {
	display: table-cell;
	padding-left: 5px;
	font-size: 1.3em;
	vertical-align: middle;
}

.caution-box dd {
	display: none;
	padding-bottom: 20px;
	font-size: 1.2em;
	line-height: 1.5;
}

#facilities .caution-box > .wrap {
	padding: 0;
	margin: calc(50/1170 * 100%) 0;
}

.articleBasicModule .caution-box > .wrap {
	padding: 0;
	margin-top: calc(30/1170 * 100%);
}

/* tablet */
@media screen and (min-width: 581px) and (max-width: 1279px) {
	.caution-box dt {
		height: 3.75vw;
		background-size: auto 3.125vw;
	}

	.caution-box dt span {
		padding-left: 0.3906vw;
	}

	.caution-box dd {
		padding-bottom: 1.5625vw;
	}
}


/** -------------------------------
 * relation-link
 */


.relation-link {
	overflow: hidden;
}

.relation-link h2 {
	font-size: 1.8em;
	font-weight: bold;
}

.relation-link ul {
	margin-top: calc(20/1170 * 100%);
}

.relation-link li {
	float: left;
	padding: 0 2.5em;
	border-left: 1px solid #c2c2c2;
}

.relation-link a {
	position: relative;
	display: inline-table;
	width: auto;
	/*height: 4.5em;*/
	padding-top: 1.4em;
	padding-bottom: 1.4em;
}

.relation-link a:after {
	content: '';
	position: absolute;
	right: 0px;
	top: 50%;
	display: block;
	width: 1em;
	height: 1.4em;
	margin-top: -0.75em;
	background-image: url(../IMAGES/arrow_red.png);
	background-repeat: no-repeat;
	background-position: right;
	background-size: auto 13px;
}

.relation-link span {
	display: table-cell;
	padding-left: 0;
	padding-right: 1.5em;
	font-size: 1.4em;
	color: #333;
	line-height: 1.1;
	vertical-align: middle;
}

.relation-link a:hover span {
	color: #c3002f;
}




/** -------------------------------
 * support
 */

#support {
	clear: both;
	/*background-color: #eee;*/
}

#support > .wrap {
	max-width: 1140px;
	margin: 0 auto;
	margin-top: 4.68%;
	padding: 0 3.667%;
	box-sizing: content-box;
}

#support .header {
	padding-top: 4.68%;
}

#support .header h1 {
	display: block;
}

#support .header span {
	font-size: 2.0em;
	font-weight: bold;
	line-height: 1.1;
	vertical-align: middle;
}

#support .content {
	margin-top: 2%;
	padding-bottom: 6%;
}

#support .main {

}

#support .main li {
	display: block;
	width: 23.077%;
	margin-left: 2.564%;
	float: left;
}

#support .main li:first-child {
	margin-left: 0;
}

#support .main a {
	display: block;
	background-color: #c3002c;
}

#support .main span {
	display: table;
	height: 80px;
	margin: 0 auto;
}

#support .main em {
	display: table-cell;
	padding-left: 46px;
	background-repeat: no-repeat;
	background-position: left;
	background-size: auto 40px;
	font-size: 1.5em;
	color: #fff;
	line-height: 1.1;
	letter-spacing: -0.02em;
	vertical-align: middle;
}

#support .main .storeSearch em {
	background-image: url(../IMAGES/support_storeSearch.png);
	line-height: 1.5;
}

#support .main .quotation em {
	background-image: url(../IMAGES/support_quotation.png);
}

#support .main .catalog em {
	background-image: url(../IMAGES/support_catalog.png);
}

#support .main .carSearch em {
	background-image: url(../IMAGES/support_carSearch.png);
}

#support .sub {
	clear: both;
	margin-top: 2%;
}

#support .sub li {
	display: block;
	width: 23.077%;
	margin-left: 2.564%;
	float: left;
}

#support .sub li:first-child {
	margin-left: 0;
}

#support .sub a {
	display: block;
	padding: 0 6%;
	background-color: #fff;
	border: 1px solid #c2c2c2;
}

#support .sub span {
	display: table;
	height: 60px;
}

#support .sub em {
	display: table-cell;
	padding-left: 46px;
	background-repeat: no-repeat;
	background-position: left;
	background-size: auto 40px;
	font-size: 1.4em;
	color: #333;
	line-height: 1.1;
	letter-spacing: -0.02em;
	vertical-align: middle;
}

#support .sub .consultation em {
	background-image: url(../IMAGES/support_consultation.png);
}

#support .sub .comparison em {
	background-image: url(../IMAGES/support_comparison.png);
}

#support .sub .tradeIn em {
	background-image: url(../IMAGES/support_tradeIn.png);
}

#support .sub .voice em {
	background-image: url(../IMAGES/support_voice.png);
}

/* tablet */
@media screen and (min-width: 581px) and (max-width: 1279px) {
	#support .main span {
		height: 6.25vw;
	}

	#support .main em {
		padding-left: 3.5937vw;
		background-size: auto 3.125vw;
	}

	#support .sub span {
		height: 4.6875vw;
	}

	#support .sub em {
		padding-left: 3.5937vw;
		background-size: auto 3.125vw;
	}
}






/* --------------------
 * animation
 */
/* fade */

.fadeobj {
	transition: 0.75s ease-in-out;
	-o-transition: 0.75s ease-in-out;
	-moz-transition: 0.75s ease-in-out;
	-webkit-transition: 0.75s ease-in-out;
	opacity: 0;
}

.fadeobj.show {
	opacity: 1;
}



.bottom_banner {
	clear: both;
	max-width: 1170px;
	box-sizing: content-box;
	margin: 0 auto;
	margin-top: 4%;
	padding: 0 3.667%;
}


.bottom_banner img {
	width: 100%;
}



/* @group .specifications-link */

.specifications-link {
	margin: calc(50/1170 * 100%) 0;
}

.specifications-link .link_box {
	position: relative;
	display: table;
	font-size: 1.4em;
	margin: 2em auto;
	padding: .75em 3.3em .65em 1.5em;
	background-image: none;
	background-color: #c3002f;
	border: 1px solid #c3002f;
	color: #fff;
}

.specifications-link .link_box:after {
	font-family: icon-Nissan-Global;
	content: "";
	position: absolute;
	right: 1em;
	top: 50%;
	display: block;
	width: 1.4em;
	height: 1.4em;
	margin-top: -0.65em;
	color: #fff;
	font-size: 1em;
}

.specifications-link .link_box:hover {
	color: #fff;
	background-color: #920023;
	border-color: #920023;
	text-decoration: none;
}

.specifications-link .link_box:hover span {
	color: #fff;
}

/* @end .specifications-link */
