@charset "utf-8";
/* CSS Document */
.sns{
	color: #b31687;
	background: url("../images/bg_002.png");
	background-size: contain;
	text-align: center;
}
@media all and (max-width: 768px) {
	.sns{
		background: url("../images/bg_002.png") top;
		background-size: auto;
	}
}

/*----------------------------------
	mv
------------------------------------*/
.sns .mv{
	text-align: center;
	color: #fff;
	background: url("../images/bg_001.png") no-repeat bottom;
}
.sns .mv h1{
	display: inline-block;
	position: relative;
	padding-inline: 30px;
	letter-spacing: 3px;
}
.sns .mv h1::before,
.sns .mv h1::after{
	position: absolute;
	content: "";
	height: 100%;
	width: 3px;
	background: #fff;
	top: 0;
}
.sns .mv h1::before{
	left: 0;
	transform: rotate(-40deg);
}
.sns .mv h1::after{
	right: 0;
	transform: rotate(40deg);
}
.sns .mv .card{
	display: flex;
	gap: 20px;
	align-items: baseline;
}
.sns .mv .card .main{
	order: 3;
}
.sns .mv .card .sub:nth-child(2){
	order: 1;
}
.sns .mv .card .sub:nth-child(3){
	order: 2;
}
.sns .mv .card .sub:nth-child(4){
	order: 4;
}
.sns .mv .card .sub:nth-child(5){
	order: 5;
}
.sns .mv .x-large{
	position: relative;
	font-weight: bold;
	font-size: 2rem !important;
	padding-inline: 30px;
	display: inline-block;
}
.sns .mv .x-large::before,
.sns .mv .x-large::after{
	position: absolute;
	content: "";
	height: 100%;
	width: 3px;
	background: #fff;
	top: 0;
	display: inline-block;
}
.sns .mv .x-large::before{
	left: 0;
	transform: rotate(40deg);
}
.sns .mv .x-large::after{
	right: 0;
	transform: rotate(-40deg);
}
.sns .color-p{
	font-weight: bold;
	font-size: 1.7rem;
	color: #b31687;
	padding-bottom: 1.2rem;
}
@media all and (max-width: 768px) {
	.sns .mv h1{
		padding-inline: 10px;
	}
	.sns .mv h1::before,
	.sns .mv h1::after{
		height: 50px;
		bottom: 0;
		top: auto;
	}
	.sns .mv .card{
		justify-content: center;
		flex-wrap: wrap;
	}
	.sns .mv .card .main{
		order: 1;
		width: 50%;
	}
	.sns .mv .card .sub:nth-child(2){
		order: 2;
	}
	.sns .mv .card .sub:nth-child(3){
		order: 3;
	}
	.sns .mv .card .sub{
		width: 47%;
	}
	.sns .mv .x-large{
		padding-inline: 10px;
		margin-bottom: 10px;
		font-size: 1.8rem !important;
	}
	.sns .mv .x-large::before,
	.sns .mv .x-large::after{
		height: 50px;
	}
}
/*----------------------------------
	nayami
------------------------------------*/
.sns .nayami ul{
	display: flex;
	justify-content: center;
	gap: 20px;
}
.sns .nayami li{
	width: 27%;
}
.sns .nayami li:nth-child(2){
	margin-top: 20px;
}
.sns .nayami .x-large{
	font-size: 2.6rem !important;
	letter-spacing: 2px;
}
@media all and (max-width: 768px) {
	.sns .nayami ul{
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.sns .nayami li{
		width: 60%;
	}
	.sns .nayami li:nth-child(2){
		margin: -7rem 0 0 8.8rem;
	}
	.sns .nayami li:nth-child(3){
		margin-top: -3rem;
	}
	.sns .nayami .x-large{
		font-size: 1.8rem !important;
	}
}
/*----------------------------------
	bg-p
------------------------------------*/
.sns .bg-p{
	background: url("../images/bg_003.png");
	position: relative;
	padding: 3rem 0 1.5rem;
}
.sns .bg-p::before {
	position: absolute;
	content: "";
	display: inline-block;
	width: 60px;
	height: 35px;
	background: #fff;
	clip-path: polygon(0 0, 100% 0%, 50% 100%);
	top: 0;
	left: 47%;
}
.sns .bg-p p{
	color: #fff;
	font-weight: bold;
	font-size: 2.5rem;
	margin: 0;
	letter-spacing: 3px;
}
@media all and (max-width: 768px) {
	.sns .bg-p p{
		font-size: 2rem;
	}
	.sns .bg-p::before {
		left: 42%;
	}
}
/*----------------------------------
	support
------------------------------------*/
.sns .support{
	padding: 2rem 0;
}
.sns .support h2{
	font-size: 2.2rem;
}
.sns .support h2 span{
	font-size: 1.5rem;
	display: block;
}
.sns .support ul{
	display: flex;
	justify-content: center;
	margin-top: 4rem;
}
.sns .support li{
	width: 33%;
	border-right: 2px solid #b31687;
}
.sns .support li:last-child{
	border: none;
}
.sns .support li img{
	width: auto;
	height: 70px;
}
.sns .support li dl{
	font-weight: bold;
	margin-top: 1.5rem;
}
.sns .support li dt{
	font-size: 1.3rem;
	background: #fff57f;
	display: inline;
	padding: 0 4px;
}
.sns .support li dd{
	margin-top: 1rem;
}
@media all and (max-width: 768px) {
	.sns .support h2{
		font-size: 1.8rem;
	}
	.sns .support ul{
		flex-wrap: wrap;
		margin-top: 0;
	}
	.sns .support li{
		width: 100%;
		border-bottom: 2px solid #b31687;
		border-right: 0;
		padding: 2rem 0;
	}
}
/*----------------------------------
	site
------------------------------------*/
.sns .site{
	margin-bottom: -7rem;
	padding-bottom: 2rem;
}
.sns .site ul{
	justify-content: center;
	gap: 100px;
	margin-top: 4rem;
}
.sns .site li{
	width: 45%;
}
.cta_btn_p a{
	background: #ff1165;
}
@media all and (max-width: 768px) {
	.sns .site ul{
		gap: 50px;
	}
	.sns .site{
		margin-top: 0;
	}
}