@charset "UTF-8";

/* reset */

body, h1, h2, h3, h4, h5, h6, h7, div, p, dl, dt, dd, ol, ul, li, header, footer, table, th, td, fieldset, form, input[type="radio"], input[type="checkbox"] {
	margin: 0;
	padding: 0;
    box-sizing: border-box; 
}
h1, h2, h3, h4, h5, h6, h7, dt, dd, th, td, em, address, label {
	font-weight: normal;
	font-style: normal;
	font-size: inherit;
}
ol, ul {
	list-style-type: none;
}


.disp_pc { display: block; }
.disp_sp { display: none; }

.mb20 {margin-bottom: 20px;}
.mb40 {margin-bottom: 40px;}
.mb60 {margin-bottom: 60px;}
.mb80 {margin-bottom: 80px;}
.mb100 {margin-bottom: 100px;}
.mb120 {margin-bottom: 120px;}
.mb140 {margin-bottom: 140px;}
.mb160 {margin-bottom: 160px;}

body {
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    margin: 0 auto;
    padding: 0;
    background: #fff;
}

a img:hover {
    opacity: 0.7;
}

/* header */
header {
  background: #fff;
  margin: 0 auto;
  width: 100%;
  height: 180px;
  display: flex;
  justify-content: center;
  align-items: center;
}
header .logo {
  /*height: 150px;
  padding: 0;
  position: fixed;
  top: 0;
  z-index: 999;
  width: 100%;
  background: inherit;
  display: flex;
  justify-content: center;
  align-items: center;*/
}
header .logo h1 {
  line-height: 0;
  height: 100px;
  width: 560px;
  text-align: center;
  margin: 0 auto;
}
header .logo img {
  height: auto;
  width: 100%;
}
header .maker_nav_txt {
	display: flex;
	justify-content: center;
	align-items: center;
  text-align: center;
  height: 76px;
  width: 100%;
  position: fixed;
  top: 100px;
  z-index: 999;
  background: inherit;
}
body.top header .maker_nav_txt {
}
body.page-sec header .maker_nav_txt {
}
/*header .maker_nav_txt p {
  color: #fff;
  font-size: 24px;
  line-height: 1.4;
}
header .maker_nav {
  background: #ffffff;
  height: 106px;
  position: fixed;
  top: 130px;
  margin: auto;
	padding: 0;
  width: 100%;
  z-index: 999;
  overflow: hidden;
}
header .maker_nav ul {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
  margin: 0 auto;
  width: 900px;
}
header .maker_nav li {
  margin: 0 auto;
	width: calc(100%/8);
}
header .maker_nav li a {
	display: block;
}
header .maker_nav li a:hover {
}
header .maker_nav li img {
	margin: 0;
  height: auto;
	width: 100%;
}*/

/*header h1.mv {
  margin: 0 auto;
  width: 100%;
}
header h1.mv img {
  width: 100%;
}*/


/*下層ページ*/
/*header .maker_nav {
  background: #ffffff;
  border-bottom: 1px solid #000;
  box-sizing: border-box;
  height: 124px;
  position: fixed;
  top: 0;
  margin: auto;
	padding: 0 0 1px;
  width: 100%;
  z-index: 999;
}
header .maker_nav ul {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
  margin: 0 auto;
  width: 870px;
}
header .maker_nav li {
  margin: 0 auto;
	width: calc(100%/8);
}
header .maker_nav li a {
	display: block;
}
header .maker_nav li a:hover {
}
header .maker_nav li img {
	margin: 0;
	width: 100%;
}
body.page-sub.event header {
  padding-top: 124px;
}*/


/* foot_nav */
.foot_nav {
  border-top: 5px solid #231815;
  padding-top: 2em;
}
.foot_nav .maker_nav_txt {
  text-align: center;
  margin: 1em auto 2em;
}
.foot_nav .maker_nav_txt p {
  background: #E60012;
  color: #fff;
  display: inline-block;
  font-size: 24px;
  line-height: 1.2;
  padding: 0.5em 2em;
}
.foot_nav .maker_nav {
  background: #ffffff;
  height: 106px;
  /*position: fixed;*/
  top: 130px;
  margin: auto;
	padding: 0;
  width: 100%;
  z-index: 999;
  overflow: hidden;
}
.foot_nav .maker_nav ul {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
  margin: 0 auto;
  width: 900px;
}
.foot_nav .maker_nav li {
  margin: 0 auto;
	width: calc(100%/8);
}
.foot_nav .maker_nav li a {
	display: block;
}
.foot_nav .maker_nav li a:hover {
}
.foot_nav .maker_nav li img {
	margin: 0;
  height: auto;
	width: 100%;
}


/* footer */
footer {
  background: #231815;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  height: auto;
  margin: 0 auto;
  padding: 40px 0;
  width: 100%;
}
footer .foot_wrap {
  text-align: center;
  margin-bottom: 10px;
  width: 100%;
}
footer .copyright {
  font-size: 0.8em;
  text-align: center;
  margin-top: 5px;
  padding: 10px 0;
  width: 100%;
}


/* pagetop btn */
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 20px;
  bottom: 20px;
  background: #ccc;
  border-radius: 10px;
}
#page_top:hover{
	opacity: 0.6;
	transition: all ease-in-out .3s;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
	position: absolute;
	top: 3px;
	bottom: 0;
	right: 0;
	left: 0px;
    margin: auto;
    vertical-align: middle;
    content: "";
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}


header {
	margin-top: 0;
	/*background: none;*/
}
/*.page.top header h1.mv {
	width: 100%;
}*/
.page.top .sec {
	margin: 60px 0;
}
.page.top .sec.bnr {
	margin: 40px 0;
}
.page.top .sec img {
	width: 100%;
	max-width: 1280px;
	height: auto;
}
.page.top ul.shop {
	margin: 30px 0 120px;
}
.page.top ul.shop.last {
	margin-bottom: 30px
}


#ftr_btn {
  position: fixed;
  bottom: 80px;
  right: 10px;
  width: 270px;
  z-index: 999;
}
#ftr_btn .inner {
  position: relative;
  height: 150px;
  padding: 0;
  width: 100%;
  margin: 0 auto;
}
#ftr_btn .bnr {
  width: 260px;
}
#ftr_btn .bnr img {
  width: 100%;
  height: auto;
}
#ftr_btn .ftr_btn1-close,
#ftr_btn .ftr_btn2-close {
  position: absolute;
  right: 10px;
  top: 0px;
  cursor: pointer;
  z-index: 999;
  width: 48px;
}
#ftr_btn .ftr_btn1-close img,
#ftr_btn .ftr_btn2-close img {
  width: 100%;
}
#ftr_btn .ftr_btn1-close:hover,
#ftr_btn .ftr_btn2-close:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}
#ftr_btn.visible {
  bottom: 0;
}
#ftr_btn .wrap > a {
  display: block;
}
.ftr_btn-close {
  opacity: 0;
  visibility: hidden;
}


.loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  z-index: 9999999;
  opacity: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.loading p {
  color: #fff;
  font-size: 18px;
  text-align: center;
}


/* ----------------------------------------
contents
---------------------------------------- */
/* contents */
#contents {
  /*background: url("../images/bg.jpg") no-repeat top center;
  background-size: cover;*/
  margin: 0 auto;
  width: 100%;
}
#contents {
  /*margin-top: 106px;*/
}
/*#conts_mv #mv {
  position: relative;
}
#conts_mv #mv h2 img {
  width: 100%;
}*/
main {
  color: #000;
  display: block;
  padding: 0;
  margin: 0 auto;
  /*max-width: 1100px;*/
}
main .sec_wrap {
  text-align: center;
  width: 100%;
}
main .sec_inner {
  margin: 0 auto;
  max-width: 1372px; /*1100px*/
}

/* ----------------------------------------
top
---------------------------------------- */
body.top {
  background: #000;
}
/*body.top #contents {
  margin-top: 280px;
}
body.top #conts_01 #mv {
  position: relative;
}
body.top #conts_01 #mv h2 img {
  width: 100%;
}*/

body.top #top_main1 .top_main1_special {
	display: flex;
  flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
  text-align: center;
  width: 100%;
}
body.top #top_main1 .top_main1_special li {
  margin-bottom: 60px;
  width: 616px;
}
body.top #top_main1 .top_main1_fin {
  text-align: center;
  width: 100%;
}

body.top #conts_mv {}
body.top #conts_mv #mv {
  line-height: 0;
  position: relative;
}
body.top #conts_mv .conts_01_btn {
  position: absolute;
  bottom: 80px;
  left: 100px;
}
/*body.top #conts_02 {
  background: url("../images/top/top_bg2.jpg") no-repeat center top;
  background-size: cover;
  padding: 60px 0;
}*/
body.top #bnr1_wrap {
  padding: 60px 0;
}
body.top #bnr1_wrap .slider {
  margin: 0 auto;
  /*max-width: 500px;*/
  width: 100%;
}
body.top #bnr1_wrap .slider-img {
  margin: 0 10px;
}
body.top #bnr1_wrap .slider-img a {
}
body.top #bnr1_wrap .slider-img img {
  height: auto;
  width: 100%;
}

body.top #bnr2 {
  background: #fff;
  padding: 60px 0;
}
body.top #bnr2 ul {
	display: flex;
  flex-wrap: wrap;
	justify-content: space-between;
  margin: 0 auto;
  width: 900px;
}
body.top #bnr2 ul li {
  margin:  10px 0;
}



/* ----------------------------------------
下層
---------------------------------------- */

body.page-sec #mv {
  background: #231815;
}
body.page-sec #mv h2 {
  line-height: 0;
}
body.page-sec #mv h2 img {
  width: 100%;
}
body.page-sec #contents .sale1 {
  background: #fff;
  padding: 100px 0;
  position: relative;
}
body.page-sec #contents .sale2 {
  background: #fff;
  padding: 100px 0;
  position: relative;
}


/* ---------- サンクスページ ---------- */
body.thanks header {
  /*background: #231815;*/
}


/* ---------- イベント詳細 ---------- */
/* 店舗 */
.shop_box_wrap {
  background: #ffffff;
  padding: 20px 0;
}
.shop_box_wrap.shop_box_wrap-even {
  background: #efefef
}
.shop_box {
  padding: 60px 0;
}
.brand_logo {
  text-align: center;
}
.brand_logo img {
  text-align: center;
  width: 550px;;
}
ul.shop {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: flex-start;
  color: #231815;
  margin: 10px auto 0;
  max-width: 1280px;
}
ul.shop li {
  text-align: center;
  margin: 0 10px 60px;
  padding: 0;
  width: 40%;
}
ul.shop li:last-child {
  margin-bottom: 0;
}
ul.shop.shop_wide li {
  width: 40%;
}

ul.shop li .store {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: baseline;
  margin-bottom: 20px;
}
ul.shop li .store .name {
	font-size: 24px;
	font-weight: bold;
  line-height: 1.2;
  margin-right: 1em;
}
ul.shop li .store .address {
	font-size: 21px;
	font-weight: bold;
  line-height: 1.2;
  margin-right: 1em;
}
ul.shop li .store .tel_no {
	font-size: 21px;
	font-weight: bold;
  line-height: 1.2;
}
ul.shop li .store .tel_no span {
	font-size: 26px;
}
ul.shop li .tel {
	padding: 40px 0;
}
ul.shop li .tel img {
}
ul.shop li .tel img:hover {
	opacity: 0.8;
}
ul.shop li .gmap {
  margin: auto;
  max-width: 510px;
  width: 100%;
}
ul.shop li .link {
  margin: 2em auto;
  width: 280px;
}



/* ---------- ポルシェ ---------- */
body.porsche #contents #conts_01 .btn_01 {
  margin-top: -101px;
  text-align: left;
}
body.porsche #contents #conts_02 .btn_02 {
  margin-top: 40px;
}
body.porsche #contents #conts_04 .line_qr {
  margin-top: 70px;
}

/* ---------- アウディ ---------- */
body.audi #contents #conts_01 {}
body.audi #contents #conts_02 {
}
body.audi #contents #conts_03 {
  background: #231815;
  padding: 120px 0;
}

/* ---------- フォルクスワーゲン ---------- */
body.volkswagen #contents #conts_01 {
  padding-top: 40px;
}
body.volkswagen #contents #conts_02 {
  background: url("../images/vw/conts_02_bg.png") repeat-x center top;
  padding: 0 0 100px;
}
body.volkswagen #contents #conts_03 {
  background: url("../images/vw/conts_03_bg.png") repeat-x center top;
  padding: 0 0 100px;
}
body.volkswagen #contents #conts_04 {
  background: url("../images/vw/conts_04_bg.png") repeat-x center top;
  padding: 0 0 100px;
}
body.volkswagen #contents #conts_05 {
}
body.volkswagen #contents #conts_05 .btn_01 {
  margin-top: 80px;
}
body.volkswagen #contents #conts_05 .btn_02 {
  margin-top: 60px;
}
body.volkswagen #contents #conts_06 {
  background: #00A0E2;
  padding: 120px 0;
}
body.volkswagen #contents #conts_07 .bnr_01 {
  margin-top: 80px;
}
body.volkswagen #contents #conts_07 .bnr_02 {
  margin-top: 160px;
}

/* ---------- プジョー ---------- */
/*body.peugeot #contents #conts_01 {}*/

/* ---------- アルファ ロメオ ---------- */
body.alfaromeo #contents #conts_01 .bnr_01 {
  margin-top: 60px;
}
body.alfaromeo #contents #conts_04 {
  background: #231815;
  padding: 120px 0;
}

/* ---------- フィアット/アバルト ---------- */
body.fiatabarth #contents #conts_01 .bnr_01 {
  margin-top: 60px;
}
body.fiatabarth #contents #conts_05 {
  background: #231815;
  padding: 120px 0;
}

/* ---------- ジープ ---------- */
body.jeep #contents #conts_01 {
  background: url("../images/jp/conts_01_bg.jpg") no-repeat center top;
  background-size: cover;
  padding: 120px 0;
}
body.jeep #contents #conts_02 {}
body.jeep #contents #conts_03 {
  background: #231815;
  padding: 120px 0;
}






