@charset "UTF-8";
/* CSS Document */


body {
	padding:0;
	margin:0;
}

#gradient{
	background: #f8f8f8;
    background-attachment: fixed;	
}

.st_wrap {
	clear: both;
	width: 95%;
    text-align: center;
	margin: 0 auto;
	font-family: "Noto Sans JP", sans-serif;
	color: #000000;
	padding: 5% 0;
}

.st_wrap2 {
	clear: both;
	width: 100%;
    text-align: center;
	margin: 0 auto;
	font-family: "Noto Sans JP", sans-serif;
	color: #000000;
	padding: 5% 0;
}

.st_wrap img{
	width: 100%;
	vertical-align: bottom;
}

.st_wrap2 img{
	width: 95%;
}

.se_inner{
	max-width: 650px;
	margin: 0 auto;
	background: #ffffff;
}

.se_inner.footer{
	padding-bottom: 5%;
}

.se_inner2{
	max-width: 650px;
	margin: 0 auto;
	background: #ffffff;
}

.se_inner3{
	max-width: 650px;
	margin: 0 auto;
	background: #ffffff;
}

.se_inner4{
	max-width: 650px;
	margin: 0 auto;
	background: #ffffff;
}

.se_inner img{
	width: 100%;
}

.st_wrap p {
	margin: 10px auto;
    text-align: center;
    font-size: 13px;    
    line-height: 1.8em;
}

.logo {
	width: 18%;
	margin: 5% auto;
}

.Main {
	width: 85%;
	margin: 5% auto 0;
	position: relative;
    display: flex;
}

.Main img{
    width: 90%;
	margin: 0 auto;
} 

.sp {
	display:none;
}

.clear {
	clear:both;
}

.btn-1{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70%;
    max-width: 300px;
    margin: 3% auto;
    padding: 12px 35px 12px 20px;
	text-decoration: none;
    border-radius: 100vh;
    cursor: pointer;
    box-sizing: border-box;
    font-size: 16px;
    color: #ffffff;
    background-color: #000000;
    border: 1px solid #000000;
	font-family: "Lato", sans-serif;
	letter-spacing: 1.4px;
}

.btn-1::after {
    content: '';
    position: absolute;
    right: 20px;
    top: 50%;
    width: 7px;
    height: 7px;
    border-top: 1px solid #ffffff;
    border-right: 1px solid #ffffff;
    transform: translateY(-50%) rotate(45deg);
    transition: right 0.3s ease;
}

.btn-1:hover{
    opacity: 0.85;
}

.btn-1:hover{
	background: #ffffff;
	color: #000000;
	border: 1px solid #000000;
}

.btn-1:hover::after{
	right: 15px;
    border-top: 1px solid #000000;
    border-right: 1px solid #000000;
}

.btn-2{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70%;
    max-width: 300px;
    margin: 3% auto;
    padding: 12px 35px 12px 20px;
	text-decoration: none;
    border-radius: 100vh;
    cursor: pointer;
    box-sizing: border-box;
    font-size: 14px;
    color: #000000;
    background-color: #ffffff;
    border: 1px solid #000000!important;
	font-family: "Lato", sans-serif;
	letter-spacing: 1.4px;
}

.btn-2::after {
    content: '';
    position: absolute;
    right: 20px;
    top: 50%;
    width: 7px;
    height: 7px;
    border-top: 1px solid #000000;
    border-right: 1px solid #000000;
    transform: translateY(-50%) rotate(45deg);
    transition: right 0.3s ease;
}

.btn-2:hover{
    opacity: 0.85;
}

.btn-2:hover{
	background: #ffffff;
	color: #000000;
	border: 1px solid #000000;
}

.btn-2:hover::after{
	right: 15px;
    border-top: 1px solid #000000;
    border-right: 1px solid #000000;
}

#ターゲット要素 {
    padding-top: 110px;
    margin-top: -50px;
}



@media only screen and (max-width: 750px) {
	#Main {
	margin:0 auto 2%;
	}
	.pc {
		display:none;
	}
	.sp {
		display:block;
	}
	.st_wrap {
		width: 95%;
		margin: 0 auto;
	}
	
	.se_inner.footer {
        padding-bottom: 15%;
    }
	
	.logo {
		margin: 5% auto 0;
	}
	
	.Main {
        margin: 10% auto 0;
    }
	
	.Main_s {
		width: 90%;
		margin: 15% auto 3%;
	}
	
    .btn-1{
		width: 80%;
        font-size: 13px;
        margin: 4% auto 5%;
    }
	.btn-2{
		width: 80%;
        font-size: 13px;
	}
	
	.scroll_area {
        height: 60px!important;
    }
	
	.scroll_area .scroll::before {
        height: 65px!important;
    }
}

.scroll_area {
	position: relative;
	width: 100%;
	height: 120px;
	margin: 30px auto 30px;
}

.scroll_area .scroll {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	margin: 0 auto;
}

.scroll_area .scroll::before {
	animation: scroll 2s infinite;
	background-color: #000;
	top: 0;
	content: "";
	height: 100px;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	width: 1px;
}

/* 線のアニメーション */
@keyframes scroll {
	0% {
		transform: scale(1, 0);
		transform-origin: 0 0;
	}
	50% {
		transform: scale(1, 1);
		transform-origin: 0 0;
	}
	51% {
		transform: scale(1, 1);
		transform-origin: 0 100%;
	}
	100% {
		transform: scale(1, 0);
		transform-origin: 0 100%;
	}
}