@charset "UTF-8";

@import url("https://www.nissan.co.jp/COMMON/WEBFONTS/ShinGoPro-Light/woff/ShinGoPro-Light.css");
@import url("https://www.nissan.co.jp/COMMON/WEBFONTS/ShinGoPro-Bold/woff/ShinGoPro-Bold.css");
@import url("https://www.nissan.co.jp/COMMON/WEBFONTS/ShinGoPro-Regular/woff/ShinGoPro-Regular.css");

#mainContents:after,
.clearfix:after{
	content : " ";
	display : block ;
	height : 0 ; 
	visibility : hidden ;
	clear : both ;
}
body #mainContents{
	font-family: ShinGoPro-Regular,sans-serif;
	font-size: 18px;
	letter-spacing: 0.02em;
}
body #mainContents br{
	font-size: 0;
}
body #mainContents ul,
body #mainContents ol,
body #mainContents figure{
	margin: 0;
	padding: 0;
}
body #mainContents ul li,
body #mainContents ol li{
	margin: 0;
	padding: 0;
	list-style-type: none;
}
body #mainContents p,
body #mainContents li,
body #mainContents dt,
body #mainContents dd,
body #mainContents th,
body #mainContents td{
	margin: 0;
	line-height : 140% ;
}
body #mainContents h1,
body #mainContents h2,
body #mainContents h3,
body #mainContents h4{
	margin: 0;
	line-height : 120% ;
}
body #mainContents img{
	vertical-align: bottom;
}
body #mainContents a{
	color: #c3092f;
	text-decoration: underline;
	transition-duration: 0.3s ;
}

body #mainContents a:focus,
body #mainContents input:focus{
	outline: none;
}

body #mainContents a,
body #mainContents button,
body #mainContents input[type=submit],
body #mainContents input[type=button]{
	text-decoration : none ;
	transition-duration : 0.3s ;
}
body #mainContents a:hover,
body #mainContents button:hover,
body #mainContents input[type=submit]:hover,
body #mainContents input[type=button]:hover{
	opacity: 0.5;
}

body #mainContents h1,
body #mainContents h2,
body #mainContents h3,
body #mainContents h4{
	line-height: 140%;
	font-weight: normal;
}
body #mainContents p,
body #mainContents li,
body #mainContents dt,
body #mainContents dd,
body #mainContents th,
body #mainContents td{
	line-height: 180%;
}
body #mainContents strong,
body #mainContents b{
	font-weight: normal;
}

body #mainContents .effect{
	transition-duration : 1s ;
	-webkit-transition : all 1s ease 0s ;
	-moz-transition : all 1s ease 0s ;
	-o-transition : all 1s ease 0s ;
	opacity: 0;
}
body #mainContents .effect.effectout{
	opacity: 1;
}
/*
sup{
	height: 0;
	line-height: 1;
	vertical-align: baseline;
	_vertical-align: bottom;
	position: relative;
}
sup{
	bottom: 1ex;
}
*/
/******************************************************************************
	common
******************************************************************************/
body #mainContents section{
	box-sizing: border-box;
	position: relative;
	max-width: 1280px;
	margin: 0 auto;
}
body #mainContents section ul.attention{
	margin: 15px 0 0;
}
body #mainContents section ul.attention li{
	font-size: 16px;
	color: #666;
}
body #mainContents .regist{
	margin: 0;
}
body #mainContents .regist ul{
	display: flex;
	justify-content: center;
	margin: 0 auto 15px;
}
body #mainContents .regist ul li{
	position: relative;
	width: 400px;
}
body #mainContents .regist ul li p.btn{
	width: 400px;
	margin: 0 auto;
}
body #mainContents .regist ul li p.btn a{
	padding: 18px 0;
	display: block;
	background: #c3092f url("../img/ico_arrow_white_12x18.png") right 30px center no-repeat;
	border-radius: 15px;
	text-align: center;
	font-size: 22px;
	line-height: 140%;
	color: #fff;
}
body #mainContents .regist ul li p.btn a.disable{
	background: #666;
}
body #mainContents .regist ul li p.btn a.disable:hover{
	opacity: 1;
}
body #mainContents .regist ul li p.before{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	text-align: center;
	line-height: 160%;
}
body #mainContents .regist ul li p.before strong{
	color: #c3092f;
	font-size: 22px;
}
body #mainContents .regist ul li p.after{
	margin: 5px 0 0;
	font-size: 14px;
	text-align: center;
}
body #mainContents .regist p.period{
	margin-bottom: 20px;
	text-align: center;
}
body #mainContents .regist p.period span{
	padding-bottom: 5px;
	border-bottom: #ccc 1px solid;
}
body #mainContents .regist p.attention{
	margin: 0 0 30px;
	text-align: center;
	font-size: 20px;
}
body #mainContents .regist p.kiyaku{
	margin: 5px 0 0;
	text-align: center;
}
body #mainContents .regist p.before{
	margin: 0 0 5px;
	text-align: center;
	font-size: 16px;
}
body #mainContents .regist p.kiyaku a{
	text-decoration: underline;
}
body #mainContents div.error{
	margin: 30px;
	padding: 30px;
	background: #fff;
	border: #c3092f 2px solid;
	text-align: center;
	color: #c3092f;
}
/******************************************************************************
	.header
******************************************************************************/
body #mainContents section.header{
	position: relative;
	margin-bottom: 30px;
}
body #mainContents section.header .inner{
	position: relative;
	height: min(780px,60.94vw);
	margin: 0 0 30px;
}
body #mainContents section.header .inner .bg{
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: 1;
}
body #mainContents section.header .inner h1{
	position: absolute;
	max-width: min(1072px,83.76vw);
	left: calc(50% - min(536px,41.88vw));
	top: 0;
	z-index: 2;
}
body #mainContents section.header .inner img{
	max-width: 100%;
}
body #mainContents section.header p.attention{
	padding: 15px 0;
	margin: 0 0 30px;
	background: #fff4f4;
	text-align: center;
}
body #mainContents section.header .regist{
	margin-top: 0;
}
/******************************************************************************
	.content
******************************************************************************/
body #mainContents .content{
	margin-bottom: 60px;
}
body #mainContents .content h2{
	margin: 0 auto 30px;
	padding: 20px 0;
	background: #2f556e;
	border-radius: 10px;
	font-size: 28px;
	color: #fff;
	text-align: center;
	letter-spacing: 0.1em;
}
body #mainContents .content .inner{
	width: 940px;
	max-width: calc(100% - 30px);
	margin: 0 auto 30px;
	font-size: 20px;
}
body #mainContents .content .inner:last-of-type{
	margin-bottom: 0;
}
body #mainContents .content .inner ul li{
	list-style-type: disc;
	margin: 0 0 5px 1.5em;
	line-height: 160%;
	font-size: 18px;
}
body #mainContents .content .inner ul li:last-child{
	margin-bottom: 0;
}
body #mainContents .content .inner hr{
	margin: 30px 0;
	background: none;
	border: none;
	border-top: #333 2px dotted;
}
body #mainContents .content .inner h3{
	font-size: 20px;
	font-family: ShinGoPro-Bold,sans-serif;
}
body #mainContents .content .inner h3.attention{
	color: #c3092f;
	font-size: 18px;
	font-family: ShinGoPro-Regular,sans-serif;
}
body #mainContents .content .inner h3.shop{
	margin: 60px 0 30px;
	color: #14405c;
	font-size: 32px;
	letter-spacing: 0.1em;
	text-align: center;
}
body #mainContents .content .inner h3.shop span{
	position: relative;
	display: inline-block;
}
body #mainContents .content .inner h3.shop span:before,
body #mainContents .content .inner h3.shop span:after{
	content: " ";
	position: absolute;
	left: -100px;
	top: calc(50% - 1px);
	width: 80px;
	height: 2px;
	background: #d8d8d8;
}
body #mainContents .content .inner h3.shop span:after{
	left: auto;
	right: -100px;
}
body #mainContents .content .inner p + h3{
	margin-top: 15px;
}
body #mainContents .content .inner p.period{
	font-size: 28px;
	font-family: ShinGoPro-Bold,sans-serif;
	text-align: center;
}
body #mainContents .content .inner p.contact{
	text-align: center;
}
body #mainContents .content .inner div.target{
	width: 520px;
	margin: 15px auto 15px 0;
	padding: 15px 0;
	border: #000 1px solid;
}
body #mainContents .content .inner div.target p{
	text-align: center;
	font-size: 18px;
}
body #mainContents .content .inner div.target p.link a{
	position: relative;
	padding: 0 0 2px 1em;
	border-bottom: #c3092f 2px solid;
}
body #mainContents .content .inner div.target p.link a:before{
	content: " ";
	position: absolute;
	display: inline-block;
	left: 3px;
	top: calc(50% - 7px);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 0px 8px 10px;
	border-color: transparent transparent transparent #c3092f;
}
body #mainContents .content .inner ul.bnr{
	display: flex;
	justify-content: space-between;
	max-width: 960px;
	margin: 0 auto;
}
body #mainContents .content .inner ul.bnr li{
	max-width: calc(50% - 10px);
	padding: 0;
	margin: 0;
	list-style-type: none;
}
body #mainContents .content .inner ul.bnr li img{
	max-width: 100%;
}
/******************************************************************************
	.regist.last
******************************************************************************/
body #mainContents .regist.last{
	position: relative;
	max-width: 1280px;
	height: 660px;
	margin: 0 auto 45px;
	background: #f7f7f7;
	border: #e6e6e6 2px solid;
	border-radius: 20px;
}
body #mainContents .regist.last .bg{
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	opacity: 0.15;
	z-index: 1;
}
body #mainContents .regist.last .inner{
	position: relative;
	padding-top: 30px;
	z-index: 2;
	text-align: center;
}
body #mainContents .regist.last img{
	max-width: 100%;
}
/******************************************************************************
	.attention
******************************************************************************/
body #mainContents > div.attention{
	max-width: 1280px;
	margin: 0 auto 45px;
}
body #mainContents > div.attention ul{
	line-height: 120%;
}
body #mainContents > div.attention ul li{
	display: inline;
	font-size: 13px;
}
/******************************************************************************
	.kiyaku
******************************************************************************/
body section.kiyaku{
	max-width: 720px;
}
body section.kiyaku h2{
	margin: 0 0 20px;
	font-size: 18px;
	text-align: center;
}
body section.kiyaku h3{
	margin: 20px 0 5px;
	font-size: 14px;
	font-weight: bold;
}
body section.kiyaku p{
	margin: 0 0 20px;
	font-size: 12px;
	line-height: 160%;
}
body section.kiyaku p.hasBottom{
	margin: 0;
}
body section.kiyaku ul{
	margin: 0 0 20px;
	padding: 0;
	list-style-type: none;
}
body section.kiyaku p + ul{
	margin-top: -20px;
}
body section.kiyaku ul li{
	position: relative;
	margin: 0 0 0 2em;
	line-height: 160%;
	font-size: 12px;
	list-style-type: disc;
}
body section.kiyaku ul li ol{
	margin: 0;
	padding: 0;
	list-style-type: none;
}
body section.kiyaku ul li ol li{
	padding: 0 0 0 2em;
	margin: 0;
	list-style-type: none;
}
body section.kiyaku ul li ul{
	margin: 0;
}
body section.kiyaku ul li ul li{
	padding: 0;
	list-style-type: disc;
}
body section.kiyaku ol.maru{
	margin: 0 0 20px;
	padding: 0;
}
body section.kiyaku ol.maru li{
	position: relative;
	padding: 0 0 0 2em;
	list-style-type: none;
	line-height: 160%;
	font-size: 12px;
}
body section.kiyaku ol.maru li span{
	position: absolute;
	left: 0;
}
body section.kiyaku ol.maru li ol,
body section.kiyaku ol.maru li ol li ul{
	margin: 0;
	padding: 0;
}
body section.kiyaku ol.maru li ol li{
	margin: 0 0 0 1.2em;
	padding: 0;
	list-style-type: decimal;
}
body section.kiyaku ol.maru li ol li ul li{
	margin: 0 0 0 1.7em;
	padding: 0;
	list-style-type: disc;
}
body section.kiyaku ul.attention{
	margin-top: -15px;
}
body section.kiyaku ul li ul.attention{
	margin-top: 0;
	margin-bottom: 0;
}
body section.kiyaku ul.attention li{
	padding: 0 0 0 1em;
	margin: 0;
	list-style-type: none;
	color: #c3092f;
}
body section.kiyaku ul.attention li ul li{
	padding: 0;
	margin: 0 0 0 2em;
	list-style-type: disc;
}
body section.kiyaku ul li span{
	position: absolute;
	left: 0;
}
body section.kiyaku table{
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 20px;
	font-size: 12px;
	border-top: #ccc 1px solid;
	border-left: #ccc 1px solid;
}
body section.kiyaku table th,
body section.kiyaku table td{
	padding: 5px 10px;
	border-bottom: #ccc 1px solid;
	border-right: #ccc 1px solid;
	text-align: center;
}
body section.kiyaku table th{
	background: #fafafa;
}
body section.kiyaku a{
	color : #1897e0;
	text-decoration : underline ;
}
body section.kiyaku a:hover{
	color: #c3002f
}
/******************************************************************************
	#addLink
******************************************************************************/
body #addLink{
	max-width: 1500px;
	margin: 0 auto;
	padding-top: 30px;
	background: #1a1a1a;
	text-align: center;
	font-size: 16px;
}
body #addLink p{
	margin: 0;
}
body #addLink a{
	padding: 0 24px 0 0;
	background: url("../img/ico_addlink.png") right center no-repeat;
	color: #fff;
	text-decoration: none;
}
