@charset "UTF-8";

/*　 Flexでスライダー使用する場合に設定が必要　*/
*{
  min-width: 0;
  min-height: 0;
}

/*　 スライダーボタン調整　*/
.slick-dotted.slick-slider {
  margin-bottom: 0px;
}

.slick-dots {
  bottom: -20px;
}

@media print, screen and (min-width: 768px) {
  .slick-dots {
    bottom: -10px;
  } 
}
/*　 スライダーボタン調整　*/


main {
  background: #000;
  color: #fff;
  text-align: justify;
}

@media print, screen and (min-width: 768px) {
  main {
    padding-top: 117px;
  } 
}

h2 {
  font-size: 3.5rem;
  line-height: 1.10;
  font-weight: bold;
  text-align: center;
  font-style: oblique;
  letter-spacing: -2px;
  margin-top:-80px;
}

@media print, screen and (min-width: 580px) {
  h2 {
    font-size: 6.0rem;
    margin-bottom: 40px;
  } 
}
@media print, screen and (min-width: 768px) {
  h2 {
    font-size: 7.2rem;
  } 
}
@media print, screen and (min-width: 1280px) {
  h2 {
    font-size: 8.4rem;
  } 
}

@media print, screen and (min-width: 1440px) {
  h2 {
    font-size: 9.2rem;
  } 
}


h3 {
  font-size: 28px
}

@media print, screen and (min-width: 768px) {
  h3 {
    font-size: 34px
  } 
}

.bold {
  font-weight: bold;
}

.area1 {
  background-image: url(../jpg/fzd_kv_sp.jpg);
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  padding-top: 360px;
}

@media print, screen and (min-width: 768px) {
  .area1 {
    background-image: url(../jpg/fzd_kv_sp.jpg);
    background-size: 100% auto;
    padding-top: 780px;
  }
}

@media print, screen and (min-width: 1024px) {
  .area1 {
    background-image: url(../jpg/fzd_kv_pc.jpg);
    background-size: auto auto;
    padding-top: 209px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-section_inner_mv {
    max-width: 1024px;
    margin-left: auto;
  }
}

.area1_title {
  text-align: center;
  margin-bottom: 15px;
  margin-top: -15px;
}

@media print, screen and (min-width: 1024px) {  
  .area1_title {
    margin-bottom: 45px;
  }
}

@media print, screen and (min-width: 1024px) and (max-width: 1399px) {  
  .area1_title {
    margin-bottom: 45px;
    margin-left: 32%;
	margin-right: 20px;  
  }
}

.area1_img {
  text-align: center;
}

@media print, screen and (min-width: 1024px) and (max-width: 1399px) {  
  .area1_img {
    text-align: center;
    margin-left: 32%;
	margin-right: 20px; 
  }
}

.area1_img img {
  width: 20%;
  margin-top: -10px;
}
@media print, screen and (min-width: 1025px) {
  .area1_img img {
    width: 30%;
  }
}
@media print, screen and (min-width: 1400px) {
  .area1_img img {
    width: 24%;
  }
}


.area2 {
  background-image: url(../png/fzd_bg1_sp.png);
  background-size: 100% auto;
  background-position: center top;
  padding-bottom: 50px;
  background-color: #3B3B3B;
}

@media print, screen and (min-width: 1024px) {
  .area2 {
    background-image: url(../jpg/fzd_bg1_pc.jpg);
    background-size: auto auto;
    background-repeat: no-repeat;
    padding-bottom: 70px;
  }
}


.area2 h3 {
  font-size: 20px
}

@media print, screen and (min-width: 768px) {
 .area2 h3 {
    font-size: 30px
  } 
}

.area2 picture {
  position: relative;
  top: 70px;
}

@media print, screen and (min-width: 768px) {
 .area2 h3 {
    position: relative;
    top: 0px;
  } 
}

@media screen and (min-width: 768px) {
  .lead {
    font-size: 18px;
  }
}

.l-section_inner_area2 {
  padding-left: 30px;
}

@media screen and (min-width: 768px) {
  .l-section_inner_area2 {
    padding-left: 50px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-section_inner_area2 {
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
  }
}

.relative2 {  
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .relative2 {  
    position: relative;
    left: 300px;
  }
}

.absolute2 {
  position: absolute;
  top: 50px;
  left: 10px;
  margin-right: 10px;
}

@media print, screen and (min-width: 1024px) {
  .absolute2 {
    position: absolute;
    top: 90px;
    left: -320px;
    line-height: 2.0;
    width: 470px;
  }
}

.l-section_inner {
  padding-left: 10%;
  padding-right: 5%;
}

@media print, screen and (min-width: 768px) {
  .l-section_inner {
    padding-left: 60px;
    padding-right: 20px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-section_inner {
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.area3_sp {
  position: relative;
  background-image: url(../png/fzd_bg_area3.png);
  background-size: 100% auto;
}

@media print, screen and (min-width: 1024px) {
  .area3_pc {
    position: relative;
    min-height: 950px;
  }
}

td {
  vertical-align: bottom;
  padding: 34px;
  width: 50%;
}

.dots {
    position: absolute;
    z-index: 1;
    background-image: radial-gradient(#000000 10%, transparent 1%);
    background-size: 5px 5px;
    width: 95%;
    right: 0;
    padding-top: 380px;
}

@media print, screen and (min-width: 768px) {
  .dots {
    position: absolute;
    z-index: 1;
    background-image: radial-gradient(#000000 15%, transparent 1%);
    padding-top: 530px;
  }
}

@media print, screen and (min-width: 1024px) {
  .dots {
    position: absolute;
    z-index: 1;
    background-image: radial-gradient(#000000 1%, transparent 1%);
    width: 100%;
    height: 100%;
    padding-top: 0;
  }
}

.area3_text {
  position: absolute;
  z-index: 1;
  padding-right: 20px;
  margin-top: -10px;
}

@media print, screen and (min-width: 1024px) {
  .area3_text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 2;
    width: 1024px;
    line-height: 2.0;
  }
}

@media print, screen and (min-width: 1024px) {
  .vertical_bar {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 3;
    opacity: 0.5
  }
}

.video {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  overflow: hidden;
}

video {
  height: 56.25vw;
  padding-left: 40px;
  margin-top: 170px;
}

@media print, screen and (min-width: 768px) {
  video {
    padding-left: 55px;
    margin-top: 85px;
  }
}

@media print, screen and (min-width: 1024px) {
  video {
    position: absolute;
	  top: 50%;
	  left: 50%;
	  transform: translate(-50%, -50%);
    margin-top: 0;
  }
}

.area4 {
  background: url(../jpg/fzd_bg3_sp.jpg);
  background-size: 100% auto;
  background-position: center;
}

@media print, screen and (min-width: 1024px) {
  .area4 {
    background: url(../jpg/fzd_bg3_pc.jpg),linear-gradient(to right, #AD8933, #AD8933 50%, #1A160A 50%, #1A160A);
    background-size: auto auto;
    background-repeat: no-repeat;
    background-position: center;
  }
}

.annotation {
  font-size: 1.2rem;
  line-height: 2.0;
}

@media print, screen and (min-width: 768px) {
  .annotation {
    font-size: 1.3rem;
    line-height: 1.8;
  }
}

.center {
  text-align: center;
}


@media print, screen and (min-width: 768px) {
  .center {
    text-align: left;
  }
}

.button{
  position: relative;
  display: inline-block;
  padding: 10px 5px;
  background-color: #beb193;
  margin: 5px;
  width: 200px;
  text-align: center;
}

.button span {
	position: relative;
	z-index: 2;
	color:#fff;
}

.button:hover span{
	color:#fff;
}

.bgleft:before {
 	content: '';
 	position: absolute;
 	top: 0;
 	left: 0;
 	z-index: 1;
 	background:#000;
 	width: 100%;
	height: 100%;
  transition: ease .2s;
 	transform: scale(0, 1);
	transform-origin: left top;
}

.bgleft:hover:before{
	transform:scale(1, 1);
  transform-origin: left top;
}

.area5 {
  padding: 20px 0 40px;
}

@media print, screen and (min-width: 1024px) {
  .area5 {
    padding: 20px 0;
  }
}

.area5_alc {
  background-image: url(../png/fzd_bg_alc_sp.png);
  background-size: 100% auto;
  background-position: center top;
}

@media print, screen and (min-width: 1024px) {
  .area5_alc {
    background-image: url(../png/fzd_bg_alc_pc.png);
    background-size: auto auto;
  }
}

.area5_spalc {
  background-image: url(../png/fzd_bg_spalc_sp.png);
  background-size: 100% auto;
  background-position: center top;
}

@media print, screen and (min-width: 1024px) {
  .area5_spalc {
    background-image: url(../png/fzd_bg_spalc_pc.png);
    background-size: auto auto;
  }
}

.area5_zlc {
  background-image: url(../png/fzd_bg_zlc_sp.png);
  background-size: 100% auto;
  background-position: center top;
}

@media print, screen and (min-width: 1024px) {
  .area5_zlc {
    background-image: url(../png/fzd_bg_zlc_pc.png);
    background-size: auto auto;
  }
}

.area5_spzlc {
  background-image: url(../png/fzd_bg_spzlc_sp.png);
  background-size: 100% auto;
  background-position: center top;
}

@media print, screen and (min-width: 1024px) {
  .area5_spzlc {
    background-image: url(../png/fzd_bg_spzlc_pc.png);
    background-size: auto auto;
  }
}

.area5_cnf {
  background-image: url(../png/fzd_bg_cnf_sp.png);
  background-size: 100% auto;
  background-position: center top;
}

@media print, screen and (min-width: 1024px) {
  .area5_cnf {
    background-image: url(../png/fzd_bg_cnf_pc.png);
    background-size: auto auto;
  }
}

h3.name {
  font-style: oblique;
  letter-spacing: -2px;
  text-align: left;
  line-height: 1.2;
}

.area5_alc h3.name {
  color: #0073FF; 
}

.area5_spalc h3.name {
  color: #00A1FF; 
}

.area5_zlc h3.name {
  color: #C5C5C5; 
}

.area5_spzlc h3.name {
  color: #ECBF00; 
}

.area5_cnf h3.name {
  color: #A76B24; 
}

@media print, screen and (min-width: 1024px) {
  .flex {
    display: flex;
  }

  .reverse {
    flex-direction: row-reverse;
  }
}


.area5_alc .contents_img {
  background-image: url(../png/material_alc.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
}

.area5_spalc .contents_img {
  background-image: url(../png/material_spalc.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
}

.area5_zlc .contents_img {
  background-image: url(../png/material_zlc.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
}

.area5_spzlc .contents_img {
  background-image: url(../png/material_spzlc.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
}

.area5_cnf .contents_img {
  background-image: url(../png/material_cnf.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
}

@media print, screen and (min-width: 1024px) {
  .contents_desc {
    flex: 1 1 500px;
    padding: 20px 70px 20px 0;
  }
  .contents_img {
    flex: 1 1 430px;
  }
  
  .reverse .contents_desc {
    flex: 1 1 500px;
    padding: 20px 0 20px 70px;
  }
  .reverse .contents_img {
    flex: 1 1 430px;
  }
}

.area6 {
  background-image: url(../jpg/fzd_p4_sp.jpg);
  background-size: 100% auto;
  background-position: center;
  background-repeat: no-repeat;
  height: 300px;
}

@media print, screen and (min-width: 768px) {
  .area6 {
    background-image: url(../jpg/fzd_p4_tb.jpg);
    height: 614px;
  }
}

@media print, screen and (min-width: 1024px) {
  .area6 {
    background-image: url(../jpg/fzd_p4_pc.jpg);
    background-size: auto auto;
    height: 640px;
  }
}


.l-section_inner_area6 {
  padding: 20px 10px;
}

@media print, screen and (min-width: 767px) {
  .l-section_inner_area6 {
    margin-right: auto;
    padding-top: 140px;
    padding-left: 10px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-section_inner_area6 {
    max-width: 1024px;
    margin-right: auto;
    margin-left: auto;
    padding-left: 20px;
  }
}

.area6 .title {
  font-size: 2.5rem;
  font-weight: bold;
  font-family: 'Noto Sans SC', sans-serif;
  margin-left: -5px;
}

.area6 .sub_title {
    font-size: 1.4rem;
    font-weight: bold;
    width: 250px;
    padding-left: 15px;
}

.area6 .sub_name {
  font-size: 1.5rem;
  width: 240px;
  padding-left: 15px;
}

@media print, screen and (min-width: 767px) {
  .area6 .title {
    font-size: 5.0rem;
    argin-left: -5px;
  }
  .area6 .sub_title {
    font-size: 2.0rem;
    margin-left: 1.0rem;
	  width: auto;
    padding-left: 20px;
    width: 545px;
  }
  .area6 .sub_name {
    font-size: 2.0rem;
	margin-top: 6px;
    margin-left: 1.0rem;
	 width: auto;
    padding-left: 20px;
  } 
}

@media print, screen and (min-width: 1024px) {
  .area6 .title {
    font-size: 6.0rem;
    margin-left: -10px;
  }
  .area6 .sub_title {
    font-size: 2.5rem;
    margin-left: 1.0rem;
	width: auto;
    padding-left: 20px;
  }
  .area6 .sub_name {
    font-size: 2.0rem;
    margin-left: 1.0rem;
	width: auto;
    padding-left: 20px;
  } 
}

.area6 .title_img {
  width: 120px;
}

@media print, screen and (min-width: 767px) {
  .area6 .title_img {
	margin-top: -10px;  
    width: 200px; 
  }
}

@media print, screen and (min-width: 1024px) {
  .area6 .title_img {
    width: 250px; 
	margin-top: -20px;  
  }
}

.area7 {
  background-color: #777777;
  padding: 20px 0px;
}

/*全て共通：hideエリアをはじめは非表示*/
.hide-area{
	display: none;
}

/*全て共通：モーダルのボタンの色を変更したい場合*/
.modaal-close:after, 
.modaal-close:before{
	background-color:#FF4291 !important;	
}

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
	background-color:#000000 !important;
}

.mv-slideLeft {
  opacity: 0;
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%);
  -webkit-transition-property: opacity transform;
  -o-transition-property: opacity transform;
  transition-property: opacity transform;
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  -webkit-transition-duration: .2s;
  -o-transition-duration: .2s;
  transition-duration: .2s; }
  .mv-slideLeft.is-active {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }

.mv-slideRight {
  opacity: 0;
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition-property: opacity transform;
  -o-transition-property: opacity transform;
  transition-property: opacity transform;
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  -webkit-transition-duration: .2s;
  -o-transition-duration: .2s;
  transition-duration: .2s;
  -webkit-transition-delay: .2s;
  -o-transition-delay: .2s;
  transition-delay: .2s; }
  .mv-slideRight.is-active {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }

.mv-fadeIn {
  opacity: 0;
  -webkit-transform: translateY(15%);
  -ms-transform: translateY(15%);
  transform: translateY(15%);
  -webkit-transition-property: opacity transform;
  -o-transition-property: opacity transform;
  transition-property: opacity transform;
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  -webkit-transition-duration: .2s;
  -o-transition-duration: .2s;
  transition-duration: .2s;
  -webkit-transition-delay: .4s;
  -o-transition-delay: .4s;
  transition-delay: .4s; }
  .mv-fadeIn.is-active {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }

.is-slideLeft {
  opacity: 0;
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%);
  -webkit-transition-property: opacity transform;
  -o-transition-property: opacity transform;
  transition-property: opacity transform;
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  -webkit-transition-duration: .2s;
  -o-transition-duration: .2s;
  transition-duration: .2s; }
  .is-slideLeft.is-active {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }

.is-slideRight {
  opacity: 0;
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition-property: opacity transform;
  -o-transition-property: opacity transform;
  transition-property: opacity transform;
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  -webkit-transition-duration: .2s;
  -o-transition-duration: .2s;
  transition-duration: .2s; }
  .is-slideRight.is-active {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }

.is-fadeIn {
  opacity: 0;
  -webkit-transform: translateY(15%);
  -ms-transform: translateY(15%);
  transform: translateY(15%);
  -webkit-transition-property: opacity transform;
  -o-transition-property: opacity transform;
  transition-property: opacity transform;
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  -webkit-transition-duration: .2s;
  -o-transition-duration: .2s;
  transition-duration: .2s; }
  .is-fadeIn.is-active {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }
