@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 {
    line-height: 1.8;
    letter-spacing: 0.05em;
    width: 81vw;
    max-width: 1100px;
    margin: 6em auto 9em;
}

#container h1 {
	font-family: "Noto Sans JP", sans-serif;
    font-size: 64px;
    text-align: center;
    margin-bottom: 44px;
    color: #02E0D4;
    opacity: 0;
    transform: translateY(30px);
    animation: ttl 0.5s ease-out 1s forwards;
    letter-spacing: 0.05em;
    border: none;
    line-height: 1;
    font-weight: bold;
}

@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: 90px;
	opacity: 0;
	transform: translateY(30px);
	animation: ttl 0.5s ease-out 1.3s forwards;
	color: #EFA2CC;
}

#container .aboutApp {
	display: flex;
	justify-content: space-between;
	list-style: none;
	margin-bottom: 50px;
	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 #02E0D4;
    top: 15%;
    height: 85%;
    border-radius: 8px;
}

#container .aboutApp li::after{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 101%;
    height: 100%;
    background-color: #02E0D4;
    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 .attTxt { 
	font-size: 13px;
    text-indent: -1em;
    padding: 5px 0 0 1em;
    display: block;
	line-height: 1.5;
}

#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;
    color: #010101;
}

#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: 30px;
}

#container h2 span {
    border-bottom: #f1fa96 solid 2px;
    padding-bottom: 5px;
    font-weight: bold;
    background: linear-gradient(45deg, #6fede3, #ff98d0);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.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: #ed94e4 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: 15px!important;
}

.appDetail ul {
    margin-bottom: 20px;
}

.main {
    color: #fff;
    border: none;
    border-radius: 0;
    text-shadow: none;
    display: block;
    width: 350px;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.5em;
    text-align: center;
    text-decoration: none;
    padding: 1em;
    margin: 0 auto 20px;
}


.main1 {
	background: -webkit-gradient(45deg, #6fede3, #ff98d0);
    background: linear-gradient(45deg, #6fede3, #ff98d0);
    color: #fff;
}

.main2 {
	background: #000;
    color: #fff;
}

.main3 {
	background: #B6CBD7;
    color: #000;
}

.main4 {
	background:#E1CAC4;
    color: #000;
}

.main5 {
	background: #FBF4D8;
    color: #000;
}

.main6 {
	background: #f2c09a;
    color: #000;
}

.appDetail1, .appDetail2, .appDetail3, .appDetail4, .appDetail5{
border-bottom: dotted 2px #000;
}

.appDetail1{
padding-bottom: 20px;
display: flex;
align-items: center;
justify-content: center;
}

.appDetail2{
padding-top: 20px;
padding-bottom: 20px;
display: flex;
align-items: center;
justify-content: center;
}

.appDetail3{
padding-top: 20px;
padding-bottom: 20px;
display: flex;
align-items: center;
justify-content: center;
}

.appDetail4{
padding-top: 20px;
padding-bottom: 20px;
display: flex;
align-items: center;
justify-content: center;
}

.appDetail5{
padding-top: 20px;
padding-bottom: 20px;
display: flex;
align-items: center;
justify-content: center;
}

.appDetail6{
padding-top: 20px;
display: flex;
align-items: center;
justify-content: center;
}

.appDetail1Pic{
    max-width: 175px;
    height: auto;
    margin-left: 80px;
}



.btnPC .main {
    margin: 0 auto;
}

#container .noteBox p {
	font-size: 15px;
	font-weight: bold;
	line-height: 1.6;
	margin-bottom: 10px;
}

#container .noteBox .note {
    font-size: 13px;
    font-weight: normal;
    text-indent: -1em;
    padding: 0 0 0 1em;
	line-height: 1.5;
}


#container .noteBox .note li {
	margin: 0 0 5px;
}


#container .noteBox .note li:last-child {
	margin: 0;
}

#container .noteBox .fcNote {
	font-weight: normal;
}

#container .noteBox .fcNote .attTxt {
	padding: 0 0 0 1em;
}

.h5Underpic {
    margin-bottom: 30px!important;
}

.method_list {
    margin-bottom: 40px!important;
}

.appOpen::before {
    top: 40%!important;
    height: 60%!important;
    border: none!important;
    background: #FFDEFC !important;
    left: 8px!important;
    width: 94%!important;
}

.appOpenYelllow::before {
    background: #FAFEB1 !important;
}

.appOpen::after {
    display: none!important;
}

.appOpen .pic {
	margin: 0px auto 30px!important;
}

.appOpenTxt {
    font-size: 14px!important;
    margin-bottom: 0!important;
    text-indent: -1em;
    padding: 0 0 0 1em;
    text-align: left!important;
}

.about04::before,
.about04::after{
    display: none!important;
}

.note_desc {
    text-align: left!important;
    font-size: 11px!important;
    margin-bottom: 20px!important;
    text-indent: -1em;
    padding: 0 0 0 1em;
}

.desc_pic {
    max-width: 175px;
    margin: 0 auto 20px;
}

#container .copyright {
	text-align: center;
	font-size: 12px;
}

@media screen and (min-width: 961px) {
	
	#container .appBtn li a,
	.main {
		-webkit-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
	}
	
	#container .appBtn li a:hover,
	.main:hover {
		opacity: 0.7;
	}
}

@media screen and (max-width: 960px) {
	
	#container {
	    width: 81vw;
    	margin: 4em auto 6em;
	}
	
	#container h1 {
	    font-size: 8vw;
	    margin-bottom: 20px;
	    padding: 0;
	}
	
	#container .leadTxt {
		font-size: 4vw;
	    line-height: 1.8;
	    margin-bottom: 10vw;
	}
	
	#container .aboutApp {
		display: block;
		margin-bottom: 10vw;
	}
	
	#container .aboutApp li {
		width: 100%;
		padding: 0 6vw 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.5vw;
		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 .attTxt {
		font-size: 12px;
	}
	
	#container .method {
		max-width: 72vw;
		margin: 0 auto 10vw;
	}
	#container .method a {
		font-size: 4.6vw;
		padding: 3vw;
	}
	
	#container h2 {
	    font-size: 5.2vw;
	    margin-bottom: 5.2vw;
	    line-height: 1.5;
	}
	
	#container h2 span {
		border: none;
	}
	
	#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;
	    line-height: 1.5;
	}
	#container .noteBox p {
		font-size: 3.4vw;
		margin-bottom: 3vw;
	}
	
	#container .noteBox .note {
		font-size: 3vw;
		font-weight: normal;
		color: #000;
		margin: 0;
	}
	
	.noteUnder {
	    margin-bottom: 10px!important;
	}
	
	.appDetail ul {
	    margin-bottom: 4px;
	}
	
	.main {
	    width: 100%;
	    margin: 0 auto 20px;
	}
	
	.note_mb {
		margin: 0 0 15px!important;
	}
	
	.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;
	}
	
	#container .noteBox .fcNote .attTxt {
		padding: 5px 0 0 1em;
	}
	
	.note_desc {
	    font-size: 12px!important;
	    text-align: left;
	    margin-bottom: 25px!important;
	}
	
	#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%;
	}

.appDetail1{
display: block;
}

.appDetail2{
display: block;
}

.appDetail3{
display: block;
}

.appDetail4{
display: block;
}
.appDetail5{
display: block;
}
.appDetail6{
display: block;
}

.appDetail1Pic{
max-width: 175px;
margin: 0 auto; 
}

}



