@charset "UTF-8";
/* CSS Document */


/* ////////////////////////////////////////////////////////////////////////////////

	Common

//////////////////////////////////////////////////////////////////////////////// */


body {
	-webkit-text-size-adjust: 100%;
	font-family:     font-family: 'Spartan', -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif;;
}
.header {
    box-shadow: 0 -4px 40px rgb(0 0 0 / 10%);
}
.drawer .g-nav {
    width: 100%;
}
img {
	max-width: 100%;
	height: auto;
}

.anim {
	opacity: 0;
	transform: translateY(20px);
	transition: all 0.4s ease-out;
}
.anim.on {
	opacity: 1;
	transform: translateY(0);
}


@media screen and (min-width: 813px) {
	
	.sp { display: none;}
	
	a {
		-webkit-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
	}
	
}
@media screen and (max-width: 812px) {
	
	.pc { display: none;}
	
}

#container {
    max-width: 960px;
    margin: 0 auto;
    padding-top: 100px;
}
.detail #container {
	margin: 0 auto;
	line-height: 1.8;
	letter-spacing: 0.05em;
}
#container h1 {
    font-size: 80px;
    text-align: center;
    margin-bottom: 30px;
    color: #354a54;
    opacity: 0;
    transform: translateY(30px);
    animation: ttl 0.5s ease-out 1s forwards;
    font-family: ;
    line-height: 80px;
    letter-spacing: 0.02em;
}
@keyframes ttl {
	0% { opacity: 0; transform: translateY(30px);}
	100% { opacity: 1; transform: translateY(0);}
}

#container .leadTxt {
	font-size: 21px;
	font-weight: bold;
	text-align: center;
	line-height: 1.8;
	margin-bottom: 80px;
	
	opacity: 0;
	transform: translateY(30px);
	animation: ttl 0.5s ease-out 1.3s forwards;
}


#container .aboutApp {
	display: flex;
	justify-content: space-between;
	list-style: none;
	margin-bottom: 80px;
	/* opacity: 0;
	transform: translateY(30px);
	animation: ttl 0.5s ease-out 1.6s forwards; */
}
#container .aboutApp li {
	width: 32%;
    padding: 0 25px 40px;
	position: relative;
}
#container .aboutApp li.about01 {
	border: 1px solid;
    padding: 30px;
    border-radius: 8px;
}
#container .noteBox ul li.about02 {}
#container .aboutApp li.about03 {}



@keyframes mask {
	0% { height: 100%;}
	100% { height: 0%;}
}


#container .aboutApp li .pic {
	max-width: 70%;
	margin: 0 auto;
	position: relative;
	z-index: 10;
	opacity: 0;
}
@keyframes pic {
	0% { opacity: 0; transform: translateY(30px);}
	100% { opacity: 1; transform: translateY(0);}
}


#container .aboutApp li .num {
	text-align: center;
	font-family: Helvetica, "sans-serif";
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 15px;
}
#container .aboutApp li .num span {
    display: inline-block;
    padding: 0 10px;
    border: #84BF21 solid 2px;
    border-radius: 100px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    color: #84BF21;
}
#container .aboutApp li h3 {
    text-align: center;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.6;
    position: relative;
    z-index: 2;
    margin-bottom: 15px;
    color: #354a54;
}

#container .aboutApp li p {
	font-size: 14px;
}


#container .method {
    max-width: 340px;
    margin: 0 auto 80px;
}
#container .method a {
    display: block;
    text-align: center;
    background-color: #000;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    padding: 20px;
    border-radius: 100px;
}

#container h2 {
	text-align: center;
	font-size: 26px;
	margin-bottom: 50px;
}
#container h2 span {
    border-bottom: #354a54 solid 2px;
    color: #354a54;
    padding-bottom: 5px;
    font-weight: bold;
}


#container .appBtn {
	display: flex;
	justify-content: center;
	list-style: none;
	margin-bottom: 60px;
    width: 50%;
    margin: 0 auto;	
}
#container .appBtn li {
	margin: 0 20px;
	height: 70px;
}
#container .appBtn li img {
	height: 100%;
    width: 100%;
    object-fit: contain;
}


#container .noteBox {
    border: #354a54 solid 1px;
    padding: 20px 40px;
    margin-bottom: 120px;
    border-radius: 8px;
}

#container .noteBox .note_desc {

}

#container .noteBox h5 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 15px;
}
#container .noteBox p {
	font-size: 15px;
	font-weight: bold;
	line-height: 1.6;
}
#container .noteBox .note {
	font-size: 14px;
	font-weight: normal;
}

#container .copyright {
	text-align: center;
	font-size: 12px;
}

#container .appBtn li .iphone {
    display: block;
    line-height: 0;
    aspect-ratio: 381 / 140;
}

#container .appBtn li .android {
    display: block;
    line-height: 0;
    aspect-ratio: 473 / 140;
}
#container .noteBox .btn a {
	background: #354a54;
    color: #fff;
    font-size: 16px;
    padding: 20px 30px;
}







@media screen and (min-width: 813px) {
	
#container .method a:hover {
    background: #000;
    box-shadow: 0 15px 40px rgb(0 0 0 / 30%);
}
#container .appBtn li a:hover{
    transition: 0.4s;
    opacity: 0.8;
}
	
	#container .aboutApp li .pic {
		animation: pic 1s ease-out 1.6s forwards;
	}
	
}
@media screen and (max-width: 812px) {
	
	#container {
		padding: 28vw 6vw 0;
	}
	#container h1 {
    position: static;
    text-align: center;
    font-size: 45px;
    letter-spacing: 0.05em;
    margin-bottom: 10px;
    color: #354a54;
    border: none;
    padding: 0;
    font-weight: bold;
	line-height: 1.2;
    letter-spacing: 0;
    font-size: clamp(1vw, 45px, 12vw);		
	}
	#container .leadTxt {
		font-size: 4vw;
		line-height: 1.8;
		margin-bottom: 8vw;
	}
	
	#container .aboutApp {
		display: block;
		margin-bottom: 32px;
	}
	#container .aboutApp li {
		width: 100%;
		padding: 0 7vw 6vw;
	}

	
	#container .aboutApp li.about01::after {
		animation: mask 0.8s ease-out 2s forwards;
	}
	#container .aboutApp li.about01 .pic {
		animation: pic 1s ease-out 1.6s forwards;
	}
	#container .aboutApp li.about02.on::after {
		/* animation: mask 0.8s ease-out forwards; */
	}
	#container .aboutApp li.about02.on .pic {
		/* animation: pic 1s ease-out forwards; */
	}
	#container .aboutApp li.about03.on::after {
		animation: mask 0.8s ease-out forwards;
	}
	#container .aboutApp li.about03.on .pic {
		animation: pic 1s ease-out forwards;
	}
	
	#container .aboutApp li .pic {
	    margin: 0 auto 20px;
	}
	
	#container .aboutApp li .num {
		font-size: 6vw;
		margin-bottom: 4vw;
	}
	#container .aboutApp li .num span {
		padding: 0 2vw;
    line-height: 48px;
	}
	#container .aboutApp li h3 {
		font-size: 4.6vw;
		line-height: 1.6;
		margin-bottom: 6vw;
	}
	
	#container .method {
		max-width: 72vw;
		margin: 0 auto 10vw;
	}
	#container .method a {
		font-size: 4.6vw;
		padding: 3vw;
	}
	
	#container h2 {
		font-size: 3.4vw;
		margin-bottom: 8vw;
	}
	
	#container .appBtn {
		margin-bottom: 10vw;
	}
	#container .appBtn li {
		margin: 0 2vw;
		height: 15vw;
	}
	
	#container .noteBox h5 {
		font-size: 4vw;
		margin-bottom: 3vw;
	}
	#container .noteBox p {
		font-size: 3.4vw;
	}
	#container .noteBox .note {
		font-size: 3vw;
		font-weight: normal;
		color: #354a54;
		margin: 0;
	}
	
	#container .copyright {
		font-size: 2.8vw;
	}

	#container .aboutApp li p {
	    font-size: 13px;
	}
		

#container .appBtn {
    width: 50%;
}
#container .noteBox .btn a {
    padding: 15px 20px;
}

#container .noteBox .note_desc {
	margin-bottom: 0;
}

#container .aboutApp li.about01 {
	margin-bottom: 16px;
	border: 1px solid #354a54;
	border-radius: 8px;
	padding: 4vw 6vw;		
}

#container .aboutApp li.about01:last-child {
	margin-bottom: 0;
}

}


