@charset "UTF-8";
/* CSS Document */


/* ////////////////////////////////////////////////////////////////////////////////

	Common

//////////////////////////////////////////////////////////////////////////////// */

body {
	-webkit-text-size-adjust: 100%;
    color: #000;
}

.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);
}

#container {
	max-width: 850px;
    margin: 0 auto;
    line-height: 1.8;
    letter-spacing: 0.05em;
}

#container h1 {
    font-size: 60px;
    text-align: center;
    margin-bottom: 45px;
    opacity: 0;
    transform: translateY(30px);
    animation: ttl 0.5s ease-out 1s forwards;
    line-height: 1;
    letter-spacing: 0.05em;
    border: none;
}

@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: 45px;
	opacity: 0;
	transform: translateY(30px);
	animation: ttl 0.5s ease-out 1.6s forwards;
}

#container .aboutApp li {
	width: 32%;
    padding: 0 25px 25px;
	position: relative;
}

#container .aboutApp li::before{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 1;
    border: 1px solid #140772;
    top: 15%;
    height: 85%;
    border-radius: 8px;
}

#container .aboutApp li::after{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 101%;
    height: 100%;
    background-color: #140772;
    z-index: 5;
    top: 15%;
    height: 85%;
    border-radius: 8px;
}

#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::after {
	animation: mask 0.8s ease-out 2s forwards;
}

#container .aboutApp li.about02 .pic {
	animation: pic 1s ease-out 1.6s forwards;	
}

#container .aboutApp li.about03::after {
	animation: mask 0.8s ease-out 2s forwards;
}

#container .aboutApp li.about03 .pic {
	animation: pic 1s ease-out 1.6s forwards;
}

#container .aboutApp li.about04::after {
	animation: mask 0.8s ease-out 2s forwards;
}

#container .aboutApp li.about04 .pic {
	animation: pic 1s ease-out 1.6s forwards;
}

@keyframes mask {
	0% { height: 100%;}
	100% { height: 0%;}
}

#container .aboutApp li .pic {
	max-width: 70%;
	margin: 0 auto 20px;
	position: relative;
	z-index: 10;
	opacity: 0;
	line-height: 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: bold;
    line-height: 1.6;
    position: relative;
    z-index: 2;
    margin-bottom:15px;
}

#container .aboutApp li p {
	font-size: 14px;
	font-weight: 600;
}

#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: 30px;
}

#container h2 span {
    border-bottom: #140772 solid 2px;
    color: #140772;
    padding-bottom: 5px;
    font-weight: bold;
}

.appBtnPc {
    display: flex;
}

.appBtnPc li {
    margin: 0 12px!important;
}

#container .appBtn {
	display: flex;
	justify-content: center;
	list-style: none;
	margin-bottom: 60px;
}

#container .appBtn li {
	margin: 0 20px;
	height: 70px;
}

#container .appBtn li img {
	height: 100%;
	width: auto;
}

#container .noteBox {
    border: #140772 solid 1px;
    padding: 20px 40px;
    margin-bottom: 60px;
    border-radius: 8px;
}

#container .noteBox h5 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 15px;
}

.noteTop {
    margin-bottom: 0!important;
}

.noteUnder {
	margin-bottom: 10px;
}

.appDetail ul {
    margin-bottom: 25px;
}

.main {
    background: #140772;
    color: #fff;
    border: none;
    border-radius: 0;
    text-shadow: none;
    display: block;
    width: 50%;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.5em;
    text-align: center;
    text-decoration: none;
    padding: 10px 0;
    margin: 0 auto 10px;
}

#container .noteBox p {
	font-size: 15px;
	font-weight: bold;
	line-height: 1.6;
	margin-bottom: 10px;
}

#container .noteBox .note {
	font-size: 14px;
	font-weight: normal;
}

.h5Underpic {
    margin-bottom: 30px!important;
}

.method_list {
    margin-bottom: 40px!important;
}

.appOpen::before {
    top: 40%!important;
    height: 60%!important;
    border: none!important;
    background: #2a2a2a;
    left: 8px!important;
    width: 94%!important;
}

.appOpen::after {
    display: none!important;
}

.appOpen .pic {
	margin: 0px auto 30px!important;
}

.appOpenTxt {
    font-size: 14px!important;
    color: #fff!important;
    margin-bottom: 5px!important;
}

.about04::before,
.about04::after{
    display: none!important;
}

.note_desc {
	text-align: center;
    font-size: 11px!important;
    margin-bottom: 20px!important;
}

.desc_pic {
    max-width: 175px;
    margin: 0 auto 20px;
}

#container .copyright {
	text-align: center;
	font-size: 12px;
}

@media screen and (max-width: 960px) {
	
	#container {
	    padding: 0 6vw;
	}
	
	#container h1 {
	    font-size: 45px;
	    margin-bottom: 40px;
	    padding: 0;
	}
	
	#container .leadTxt {
		font-size: 4vw;
		line-height: 1.8;
		margin-bottom: 8vw;
	}
	
	#container .aboutApp {
		display: block;
		margin-bottom: 10vw;
	}
	
	#container .aboutApp li {
		width: 100%;
		padding: 0 7vw 6vw;
		margin-bottom: 25vw;
	}
	
	#container .aboutApp li:last-child {
	    margin-bottom: 14vw;
	}
	
	#container .aboutApp li .pic {
	    margin: 0 auto 7vw;
	}
	
	#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: 20px;
	}
	
	#container .aboutApp li.about02::after {
		animation: none;
	}

	#container .aboutApp li.about02 .pic {
		animation: none;	
	}

	#container .aboutApp li.about03::after {
		animation: none;
	}

	#container .aboutApp li.about03 .pic {
		animation: none;
	}
	
	#container .aboutApp li.about04::after {
		animation: none;
	}

	#container .aboutApp li.about04 .pic {
		animation: none;
	}
	
	#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.about04.on::after {
		animation: mask 0.8s ease-out forwards;
	}

	#container .aboutApp li.about04.on .pic {
		animation: pic 1s ease-out forwards;
	}

	
	#container .method {
		max-width: 72vw;
		margin: 0 auto 10vw;
	}
	#container .method a {
		font-size: 4.6vw;
		padding: 3vw;
	}
	
	#container h2 {
		font-size: 4vw;
		margin-bottom: 6vw;
	}
	
	#container .appBtn {
		margin-bottom: 10vw;
	}
	
	#container .appBtn li {
		margin: 0 2vw;
		height: 15vw;
	}

	#container .noteBox {
		padding: 4vw 6vw;
		margin-bottom: 10vw;
		background: none;
	}
	
	#container .noteBox h5 {
		font-size: 4.2vw;
		margin-bottom: 3vw;
	}
	#container .noteBox p {
		font-size: 3.4vw;
		margin-bottom: 3vw;
	}
	
	#container .noteBox .note {
		font-size: 3vw;
		font-weight: normal;
		margin: 0;
	}
	
	.noteUnder {
	    margin-bottom: 10px!important;
	}
	
	.appDetail ul {
	    margin-bottom: 4px;
	}
	
	.main {
	    width: 90%;
	    margin: 0 auto 15px;
	}
	
	.btnPC {
	    display: none;
	}
	
	.brPc {
	    display: none;
	}
	
	.h5Underpic {
	    margin-bottom: 8vw!important;
	}
	
	.appOpen {
		margin: 0 0 12vw!important;
	}
	
	.appOpen .pic {
	    margin: 0px auto 6vw!important;
	}
	
	.appOpenTxt {
	    margin-bottom: 0!important;
	}
	
	.desc_pic {
	    margin: 0 auto 8vw;
	}
	
	.note_desc {
	    font-size: 12px!important;
	    text-align: left;
	}
	
	#container .copyright {
		font-size: 2.8vw;
	}

	#container .aboutApp li p {
	    font-size: 13px;
	}
		
	#container .aboutApp li::before, #container .aboutApp li::after {
	    top: 43%;
	    height: 60%;
	}

}



