@charset "utf-8";

ul {
    list-style: none;
}
a {
    transition: .3s;
    display: block;
}
a:hover {
    opacity: .7;
}
img {
    vertical-align: bottom;
	object-fit: cover;
}

.fs-l-main {
	margin: 0 auto;
	padding: 0;
	max-width: 1100px;
	width: 100%;
}
.fs-l-page {
	margin-top: 90px;
}


/*-------------------------------- PCここから --------------------------------*/

#lp_wrap {
	max-width: 600px;
	height: auto;
    margin: 0 auto;
/*    letter-spacing: 0.05em;*/
    padding-bottom: 100px;
/*    color: #2d2d2d;*/
    padding-top: 0px;
    line-height: 1.8;
/*	background-color: #ddd;*/
	position: relative;
	font-family: "pragmatica", sans-serif;
/*	  font-family: "Lora", serif;*/
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
}



.fixed_image{
	position:sticky;
	top: 14vh;
	left: calc(100vw - 2em);
	width: 43px;
	height: auto;
	z-index: 800;
}


.fv {
	width: 100%;
	height: auto;
	margin-bottom: 18%;
}

.fv_logo{
	width: 90%;
	margin: 0 auto;
	padding: 3em 2em;
}

.fv_kokuchi{
	width: 95%;
	margin: 0 auto;
	padding: 5em 1em 9em;
}

.fv_area{
    position: relative;
/*    width: 100%;*/
/*    height: 100%;*/
    background: url('../img/fv.jpg') no-repeat center center/cover;
/*    overflow: hidden;*/
}

.item_link,
.item_link_0131{
/*	padding-top: 20px;*/
/*	padding-left: 8px;*/
	max-width: 180px;
}

.item_link span ,
.item_link_0131 span{
	text-decoration: underline;
	float: right;
}

.item_link_0131{
	display: none;
}

.style{
	padding-bottom: 140px;
}

.style1{
	position: relative;
	z-index: 0;
	padding-bottom: 180px;
}

.style1_item1{
	width: 80%;
}

.style1_flex{
	display: flex;
	justify-content: space-around;
	margin-top: 5%;
}

.style1_flex ul{
	margin: 0 auto;
	width: 48%;
}

.style1_flexitem2{
	width: 48%;
}

.style1_item3{
	width: 40%;
	margin-top: -20%;
	margin-left: 17%;
	position: absolute;
	z-index: -1;
}

.style2{
	margin-top: 140px;	
}

.style2_item1{
	width: 80%;
	margin: 0 auto;
}

.style2_flex{
	display: flex;
	gap:2%;
	margin-top: 5%;
}

.style2 ul{
	margin: 0 auto;
	padding-top: 10%;
}

.style3{
	position: relative;
	z-index: 0;
}

.style3_item1{
	width: 80%;
}

.style3_flex{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: -10%;
}

.style3_flex ul{
	margin: 0 auto;
	width: 40%;
}

.style3_flexitem2{
	width: 40%;
}

.style3_item3{
	width: 40%;
	margin-top: -10%;
	margin-left: 30%;
	position: absolute;
	z-index: -1;
}

.style3_item4{
	text-align: center;
	margin: 430px 20% auto;
}

.style4_flex{
	display: flex;
	justify-content: center;
	gap: 3%;
}

.style4_flex img{
	width: 45%; 
}

.style4_area {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap:1em;
	padding: 10% 0 0;
}

.style4_area img{
	width: 70%;
}

.style4_area ul{
	width: 100%;
	margin-right: 2em;
}

.style5_flex{
	display: flex;
	gap:1em;
	justify-content: center;
	margin: auto 3%;
}

.style5_area1 ul{
	margin: 2em auto;
}

.style5_area2{
	margin-top: 20%;
}

.style5_area2item1{
	padding-bottom: 10px;
}

.style6{
	margin: 0 5%
}

.style6_flex{
	display: flex;
	justify-content: space-between;
	margin-top: 5%;
}

.style6_flex ul{
	width: 100%;
	margin: 0 auto;
}

.style6_flexitem2{
	width: 50%;
}

.style6_item3{
	width: 50%;
	margin-top: -10%;
	margin-left: 10%;
}

.style6_item4{
	text-align: center;
	margin: 140px 20% auto;
}

.style7{
	width: 90%;
	margin: 0 auto;
}

.style7_area{
	padding: 0 5%;
}

.style7_area_itemlink{
	padding: 5%; 
}

.style7_flex{
	display: flex;
	justify-content: center;
}

.style7_flex img{
	width: 50%;
}

.style8{
	position: relative;
	z-index: 0;
	margin-bottom: 280px;
}

.style8_item1{
	width: 85%;
	padding-left: 3em;
	position: absolute;
	z-index: 3;
}

.style8_flex{
	display: flex;
/*	align-items: center;*/
	justify-content: space-between;
	padding-top: 80%;
}

.style8_flex ul{
	width: 100%;
	margin: 12% auto;
}

.style8_flexitem3{
	width: 40%;
	padding-right: 10%;
}

.style8_item4{
	width: 40%;
	margin-top: -2.75em;
	margin-left: 11em;
	position: absolute;
	z-index: -1;
}

.style9_item1{
	width: 80%;
	margin: 0 auto;
}

.style9 ul{
	margin: 1.7em auto 1.7em 7em ;
}

.style9_flex{
	display: flex;
	justify-content: space-between;
}

.style9_flex img{
	width: 32.5%;
}

.style10{
	position: relative;
	z-index: 0;
	margin: 0 5%;
	padding-bottom: 105%;
}

.style10_area1{
	width: 70%;
	padding: 10%;
}

.style10_area1 img{
	padding-bottom: 7%;
}

.style10_bg{
	margin: 5%;
	padding-top: 35%; 
	position: absolute;

}

.style10_area2{
	max-width: 600px;
	margin-top: -130%;
	margin-left: 55%;;
}

.logo2{
	width: 55%;
	margin: 0 auto;
	padding-top: 90px;
}

.link_bn {
	padding-top : 90px;
	width: 85%;
	margin: 0 auto;
/*	display: none;*/
}


/*　Anime
-----------------------------*/

.fadeInTrigger{
opacity: 0;
}

.fadeIn {
    animation-name: fadeInAnime;
    animation-duration:2s;
    animation-fill-mode:forwards;
    opacity: 0;
}
@keyframes fadeInAnime{
from {
    opacity: 0;
    /*transform: translateY(100px);*/
}
to {
    opacity: 1;
    /*transform: translateY(0);*/
}
}

/* fadeUp */
/*
.fadeUp{
animation-name: fadeUpAnime;
animation-duration:2s;
animation-fill-mode:forwards;
opacity: 0;
animation-delay: 0s;
}

@keyframes fadeUpAnime{
  0% {
    opacity: 0;
  	transform: translateY(5px);
  }

  100% {
    opacity: 1;
  	transform: translateY(0);
  }
}
*/

.delay-time02{
animation-delay: 0.2s;
}
.delay-time04{
animation-delay: 0.4s;
}

.delay-time06{
animation-delay: 0.6s;
}
.delay-time08{
animation-delay: 0.8s;
}

.delay-time10{
animation-delay: 1s;
}

	
/***************▼タブレット▼*****************/
@media (max-width: 1025px) {
	 #lp_wrap {
        padding-top: 0px;
    }

}

@media (max-width: 768px) {
}

/***************▼スマホ大▼*****************/
@media screen and (max-width: 640px) {
	
	#lp_wrap {
		padding-top: 0px;
    }

	.style2_flexitem3 ul{
			margin: auto 1em;
	}

	.style3_item4{
		margin: 73% 20% auto;
	}
	
	.style8_flex ul{
		width: 100%;
		margin: 11% auto;
	}
	
}


/***************▼スマホ小▼*****************/
@media screen and (max-width: 479px) {

	.fs-l-main {
		margin: 0 auto;
		padding: 0;
		max-width: 1100px;
		width: 100%;
	}
	.fs-l-page {
		margin-top: 80px;
	}
	
	.style{
		padding-bottom: 110px;		
	}

	.item_link{
		max-width: 160px;
	}
	
	.fv_kokuchi {
    	padding: 2em 1em 5.5em;
	}
	
	.style1_flex ul{
		margin: 0 1em;
	}	
	
	.style2 {
    	margin-top: 110px;
	}	
	
	.style2_flexitem3 {
		padding-right: 0.3em;
	}
	
	.style2_flexitem3 ul {
		margin: auto 0.7em;
	}

	.style3_item4{
		margin: 75% 20% auto;
	}	

	.style6_flex{
		gap: 2%;
	}
	
	.style6_flex ul {
    width: 40%;
    margin: 0 auto;
	}
	
	.style6_item4 {
    margin: 100px 20% auto;
	}
		
	.style8 {
    margin-bottom: 200px;	
	}
	
	.style8_item1 {
	padding-left: 1em;
	}
	
	.style8_flex{
		padding-top: 82%;
	}
	
	.style8_flex ul {
        padding: 2em 0;
	}
	
	.style8_flexitem3 {
    padding-right: 0;
	}
	
	.style8_item4 {
    width: 50%;
    margin-top: -2em;
    margin-left: 4.5em;
	}
	
	.style9 ul {
    margin: 1.7em auto 1.7em 4em;
	}
	
	.style10{
	padding-bottom: 105%;
}
	
	.style10_area2 {
    margin-top: -135%;
}
	
	.logo2 {
    padding-top: 45px;
	}
		
	.link_bn {
	padding-top : 50px;
	}
	
	
}