@charset "utf-8";
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* 81-LXH */
/* clearfix */	
.clearfix:after {content: "";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
.en {
	font-family: "Poppins", sans-serif;
}
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
.content {
	margin: 0 auto;
	max-width: 120rem;
}
@media all and (max-width: 896px) {
    .content {
        margin: 0 2rem;
        max-width: inherit;
    }
}

/* comBg */
.comBgBox {
    padding: 10.7rem 0 7.5rem;
    background: linear-gradient(to top, #FFF 0%, #F0F3FF 100%) no-repeat center top / 100% 58.6rem;
}
@media all and (max-width: 896px) {
    .comBgBox {
        padding: 5.7rem 0 9.1rem;
    }
}

/* comBtn */
ul.comBtn {
	display: flex;
	gap: 1.2rem
}
ul.comBtn.center {
	justify-content: center;
}
.comBtn a {
	padding-bottom: 0.2rem;
	width: 20rem;
	height: 4.6rem;
	display: flex;
	border: 0.2rem solid #5F5BFF;
	border-radius: 5rem;
	background: #5F5BFF;
	box-shadow: 0.3rem 0.3rem 1rem 0 rgba(0, 0, 0, 0.15);
	color: #fff;
	font-weight: 700;
	font-size: 1.5rem;
	align-items: center;
	text-align: center;
	justify-content: center;
	box-sizing: border-box;
	position: relative;
}
.comBtn img {
	width: 1.8rem;
	display: inline-block;
	vertical-align: middle;
	margin: -0.4rem 1.2rem 0 0;
}
.comBtn .inner {
	width: 100%;
}
.comBtn .white {
	color: #5F5BFF;
	background-color: #fff;
}
.comBtn.big {
	gap: 1.5rem;
}
.comBtn.big a {
	width: 25rem;
	height: 7.2rem;
	font-size: 1.9rem;
}
.comBtn.big img {
	width: 1.9rem;
	margin: -0.5rem 1.2rem 0 0;
}
.comBtn .txt {
	display: inline-block;
	vertical-align: top;
	color: #0C0C0C;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	border-radius: 5rem;
	background: #06C755;
	box-shadow: 0.3rem 0.3rem 1rem 0 rgba(0, 0, 0, 0.15);
	position: absolute;
	top: -1.7rem;
	left: 50%;
	transform: translateX(-50%);
	white-space: nowrap;
	padding: 0.5rem 1rem 0.7rem;
	letter-spacing: 0.07em;
}
.comBtn .centerTxt {
    margin-bottom: 2.4rem;
    color: #3E3E3E;
    text-align: center;
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    display: block;
}
.comBtn .large {
    margin: 0 auto;
    width: 45.9rem;
    height: 7.6rem;
    font-size: 2.3rem;
}
.comBtn .large img {
    width: 2.8rem;
}
@media all and (min-width: 897px) {
	.comBtn a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
    .comBtn .centerTxt {
        font-size: 2rem;
        line-height: 1.3;
    }
    .comBtn .large {
        width: 34.9rem;
        max-width: 100%;
        height: 6rem;
        font-size: 1.8rem;
    }
    .comBtn .large img {
        width: 2.2rem;
    }
	.comBtn a {
		border-width: 1px;
	}
	ul.comBtn {
		gap: 0.5rem;
	}
	.comBtn.big {
		gap: 1rem;
	}
	.comBtn.big a {
		width: 16.9rem;
		height: 4.5rem;
		font-size: 1.3rem;
		box-shadow: 0.2068rem 0.2068rem 0.6893rem 0 rgba(0, 0, 0, 0.15);
	}
	.comBtn.big img {
		width: 1.3rem;
		margin: -0.4rem 0.7rem 0 0;
	}
	.comBtn .txt {
		font-size: 0.9rem;
		top: -1.2rem;
		padding: 0.5rem 0.7rem 0.5rem;
	}
}


/* comTtl */
.comTtl {
    margin-bottom: 5.4rem;
    width: fit-content;
    color: #5F5BFF;
    font-size: 1.5rem !important;
    font-weight: 700;
    letter-spacing: 0.05em;
    font-family: "Poppins", sans-serif;
    position: relative;
    line-height: 1.5 !important;
}
.comTtl::after {
    width: 5rem;
    height: 1px;
    content: "";
    position: absolute;
    left: calc(100% + 2rem);
    top: 50%;
    transform: translateY(-50%);
    background: currentColor;
}
@media all and (min-width: 897px) {
    .comTtl.mid {
        margin: 0 auto 5.8rem;
        transform: translateX(-3.5rem);
    }
}
@media all and (max-width: 896px) {
    .comTtl {
        margin-bottom: 4.2rem;
        font-size: 1.2rem !important;
    }
    .comTtl::after {
        width: 3.7rem;
        left: calc(100% + 1.5rem);
    }
}


/* headLine01 */
.headLine01 {
    margin-bottom: 2.7rem;
    color: #454545;
    font-size: 3.4rem;
}
@media all and (min-width: 897px) {
    .headLine01.mid {
        margin-bottom: 7.4rem;
        text-align: center;
        line-height: 1.3;
    }
}
@media all and (max-width: 896px) {
    .headLine01 {
        margin-bottom: 2.1rem;
        font-size: 2.5rem;
    }
    
}

/* lineTxt */
.lineTxt {
	font-weight: 700;
	background: url("../img/common/line.jpg") repeat-x left bottom 0.2rem;
}