
html,
body {

margin: 0;
padding: 0;
line-height: 0;
 }

figure {
  padding: 0;
  margin: 0;
  max-width: 100%;
  width: 100%; }

img {    vertical-align: bottom;
  max-width: 100%;
 display: block; /* 画像の下に隙間ができるのを防ぐ */
  margin: 0; /* 余白をゼロに設定 */
  padding: 0; /* パディングをゼロに設定 */
}

a {
	text-decoration: none;
  display: inline-block; }

h1 {
	margin: 0;
}

p,dd,small {
    font-size: 16px;
    line-height: 155%;;
}
video {
    vertical-align: bottom;
  max-width: 100%;
    filter: drop-shadow(0px 0px rgba(0, 0, 0, 0));
    outline: none;
    border: none;
 display: block; /* 画像の下に隙間ができるのを防ぐ */
  margin: 0; /* 余白をゼロに設定 */
  padding: 0; /* パディングをゼロに設定 */
	background: #fece10; 
}
main,.fv_area {
	max-width: 750px;
	display: block;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}

#js-slider-2 {
	background: #fece10;
}


.pos {
	position: relative;
}
.ab {
	position: absolute;
	top:0;
	left: 0;
}

.fv_area a {
display: block;
    width: 90%;
	text-align: center;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 21%;
}
.fv_area .cover {
mix-blend-mode:screen;
}



.h_auto {
	height: auto;
}

.gold .ab {
bottom: 0;
	top: auto;
}
.slider-1 img {
	height: 254px !important;
}

.z2 {
	position: relative;
	z-index: 2;
	background: #fed010;
}

#bg_video1 {
	position: relative;
z-index: 0;
}

.brown {
	background: #1c0706;
}

.jump .txt {
	top: 19.5%;
}
.cta {
	background: #fed010;
}
.cta a {
	display: block;
	margin: 3% auto;
	width: 90%;
}

.voice {
	background: #fed010;
}
.voice li {
	margin: 0 30px;
}

.voice .slick-dots li {
	margin: 0 5px;
}
.slick-next {
	background: url("../images/next.png") no-repeat;
	background-position: center;
	background-size: contain;
	right: 10px;
	width: 30px;
	height: 52px;
	z-index: 4;
}

.slick-prev {
	background: url("../images/prev.png") no-repeat;
		background-position: center;
	background-size: contain;
	left: 10px;
	width: 30px;
	height: 52px;
	z-index: 4;
}
.slick-prev:hover,.slick-next:hover {
	opacity: 0.5;
}
.yellow {
	background: #fed010;
}

/*************************
▼footer
************************/

#footer {
  margin:0 auto;
  text-align:center;
  background-color: #FFF;
	background: #40220c;
	line-height: normal;
	padding: 20px 0;
}
#footer li {
	display: inline-block;
	padding-right: 10px;
	border-right: 1px solid white;
	
}
#footer li:last-of-type {
	border: none;
}

#footer li a {
	color: white;
}
#footer small{
text-align: center;
	display: block;
	color: white;
	margin-top: 10px;
}
.lazyload {
  background: none !important;
}

body {
	background:url("../images/main_bk.png") no-repeat top center !important;
    background-size: 100% auto !important;
    background-attachment: fixed !important;;
}


#sample_form_area,#footer {
	z-index: 99;
	position: relative;
}


@media screen and (min-width:1441px) {
.nav_left {
    z-index: 10;
    position: fixed;
    width: 1300px;
    margin: auto;
    top: 7vh;
}

.nav_left > img {
margin: 0 0 0% 1%;
/* height: max-content; */
max-height: 88vh;
width: 18%;
object-fit: contain;
}
.nav_right {
    z-index: 10;
    position: fixed;
    width: 1400px;
    margin: auto;
	    top: 7vh;
    text-align: right;
}

.scrollnav {
    position: relative;
    top: 5vh;

    margin-left: 80.5%;


}
.nav_right a.to_top {
    position: relative;
margin: 0 14.5% 0 auto;
}
.nav_right a img {
    position: relative;
    margin: 0;
width: 80%;
}

#navi {
	overflow: hidden;
	z-index: 19999;
        padding-left: 10px;
}
#navi li {
text-align: left;
	padding-bottom: 15px;
    padding-left: 10px;
    border-left: 2px solid #000;
	position: relative;
}
#navi li a {
	font-weight: bold;
	display: block;
color: black;
font-size:clamp(0.875rem, 0.625rem + 0.5vw, 1rem);
	font-size: 15px;
	line-height: normal;
	position: relative;
}
#navi li.current a,#navi li a:hover {
color: red;}
	#navi li.current a::before {
        position: absolute;
        content: "●";
        color: black;
        left: -15px;
        top: 0;
        right: 0;
        bottom: 0;
        margin: auto;
	}

	#navi li#nav02.current a::before {
        position: absolute;
        content: "●";
        color: black;
        left: -15px;
        top: 30px;
        right: 0;
        bottom: 0;
        margin: auto;
	}


}
@media screen and (min-width:1442px) {
.nav_right a.to_top {
    position: relative;
margin: 0 13% 0 auto;
}
}

@media (min-width: 1200px) and (max-width: 1440px) {
.nav_left {
    z-index: 10;
    position: fixed;
    width: 1180px;
    margin: auto;
    top: 7vh;
}

.nav_left > img {
    margin: 0 0 5% 1%;
	    height: 85vh;
    width: auto;
}
.nav_right {
    z-index: 10;
    position: fixed;
    width: 96%;
    margin: auto;
	    top: 7vh;
    text-align: right;
}

.scrollnav {
    position: relative;
    top: 5vh;
    height: 35vh;
    margin-left: 82.5%;

}
.nav_right a.to_top {
    position: relative;
margin: 0 7% 0 auto;
}
.nav_left > img {
    margin: 0 0 5% 1%;
	    height: 70vh;
    width: auto;
}
.nav_right a img {
    position: relative;
    margin: 0;
width: 80%;
}

#navi {
	overflow: hidden;
	z-index: 19999;
        padding-left: 10px;
}
#navi li {
text-align: left;
	padding-bottom:15px;
    padding-left: 10px;
    border-left: 2px solid #000;
}
#navi li a {
	font-weight: bold;
	display: block;
color: black;
	position: relative;
font-size:clamp(0.75rem, 0.438rem + 0.5vw, 0.813rem);
	font-size: 15px;
	line-height: normal;
}
#navi li.current a,#navi li a:hover {
color: red;}
	#navi li.current a::before {
        position: absolute;
        content: "●";
        color: black;
        left: -15px;
        top: 0;
        right: 0;
        bottom: 0;
        margin: auto;
	}

	#navi li#nav02.current a::before {
        position: absolute;
        content: "●";
        color: black;
        left: -15px;
        top: 30px;
        right: 0;
        bottom: 0;
        margin: auto;
	}


}

@media screen and (max-width:1199px) {
.nav_left,.nav_right {
display: none;
}
}



@media screen and (min-width:769px) {
.sp {
display: none !important;
}

#all {
width: 750px;
margin: auto;
position: relative;
display: flex;
justify-content: center;
border-left: 2px solid black;
border-right:  2px solid black;
}

.lp_content {
width: 750px;
        position: relative;
        z-index: 11;
        margin:0 auto;
    }














}



/*--------------sp--------------*/
@media screen and (max-width:768px) {
	.pc {
		display: none !important;
	}
main img {
width: 100%;
max-width: 100%;

}
.fv_area img {
height: auto;
}
img.lazyload {
height: auto;
}

	#js-slider-2 {
	padding: 0 10px;
	}

#footer li {
	display:block;
	padding-right: 0px;
	border:none;
	
}
#footer small {
font-size: 10px;
}

.slick-next {
	background: url("../images/next.png") no-repeat;
	background-position: center;
	background-size: contain;
	right: 10px;
	width: 20px;
	height: 42px;
	z-index: 4;
}

.slick-prev {
	background: url("../images/prev.png") no-repeat;
		background-position: center;
	background-size: contain;
	left: 10px;
	width: 20px;
	height: 42px;
	z-index: 4;
}
.slider-1 img {
	height:auto !important;
}
	#sample_form_area {
		background: white;
	}


}

/*--------------animation--------------*/

/*リンクを右下に固定*/
#page-top {
    position: fixed;
    right: 0px;
    left: 0;
    bottom: 15px;
    z-index: 99;
    opacity: 0;
    transform: translateY(300px);
    width: 1250px;
    text-align: right;
    height: 210px;
    margin: auto;
}


#page-top a{
width: 230px;
}
@media screen and (max-width:768px) {
#page-top {
	position: fixed;
	right: 0;
	bottom:0px;
	left: 0;
	margin: auto;
	z-index: 2;
    /*はじめは非表示*/
	opacity: 0;
	transform: translateY(300px);
	width: 90%;
	height: auto;
} 

#page-top a{
	width: 100%;
}

}


/*　上に上がる動き　*/

#page-top.UpMove{
	animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
	transform: translateY(300px);
  }
  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#page-top.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 1;
	transform: translateY(0);
  }
  to {
  	opacity: 1;
	transform: translateY(300px);
  }
}



.boyo_btn {
  animation: squash 1.2s ease-in-out infinite; /* .boyoboyo側で1.2秒おきにアニメーションを呼び出し実行する */
}
@keyframes squash {
  0% {transform: scale(1);}
  50% {transform: scale(1.1);}/*大きさを変えたいため、scaleを、1→1.1→1と変化*/
  100% {transform: scale(1);}
}


/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeUpTrigger,.faderightTrigger,.fadeleftTrigger{
    opacity: 0;
}


/* fadeUp */

.fadeUp{
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}
.faderight{
animation-name:faderightAnime;
animation-duration:0.8s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes faderightAnime{
  from {
    opacity: 0;
  transform: translateX(100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}


.fadeleft{
animation-name:fadeleftAnime;
animation-duration:0.8s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeleftAnime{
  from {
    opacity: 0;
  transform: translateX(-100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}




/*-fade control-*/


.fadein_animation_start{
  /* キーフレームアニメーションを指定*/
  animation-name: fadein_animation;
  /* アニメーションの開始時間の遅延*/
  animation-delay: 0.3s;
  /* アニメーションの時間を指定*/
  animation-duration: 1s;
  /*アニメーション再生後のスタイルを指定*/
  animation-fill-mode: both;
}
@keyframes fadein_animation{
  0% {
    opacity: 0;
  }
  100%{
    opacity: 1;
    transform: translate(0);
  }
}

.slidedown{
  transform: translateY(-50px);
transition-delay: 1.2s;
}
.fuwa {
  animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
	opacity: 0.8;
}
@keyframes floating-y {
  0% {
    transform: translateY(-1.3%);
  }
  100% {
    transform: translateY(1.3%);
  }
}

