@charset "utf-8";

h2{
	font-size:2.5rem;
	font-weight: 800;
	line-height: 1;
	text-align: center;
	margin-bottom:80px;
}

section{
	width:min(95%,1300px);
	margin:80px auto;
}

@media screen and (max-width: 420px){
	h2{
		line-height: 1.4;
	}
}

/*--------------------------


	特長

--------------------------*/

#point ul{
	width:1300px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap:30px;
	flex-wrap: wrap;
}

#point li{
	width:calc(50% - 30px);
	/*width:500px;*/
	display: flex;
}

#point li .no{
	width:80px;
	height: 80px;
	line-height: 80px;
	aspect-ratio:1/1;
	background-color: #000;
	font-size:80px;
	font-weight: 800;
	color:#fff;
	border-radius: 50%/50%;
	text-align: center;
}

#point li .text{
	flex:1;
	line-height: 1.6;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-left:20px;
}

#point li .text strong{
	font-size:1.8rem;
	line-height: 1;
}

#point li .text strong.s_font{
	font-size:1.2rem;
}


/*-------------------------------

	レスポンシブ

-------------------------------*/

@media screen and (max-width: 890px){
	#point ul{
		display: block;
	}
	
	#point li{
		width:100%;
		margin-bottom:30px;
	}
}

@media screen and (max-width: 420px){
	#point li .no{
		width:50px;
		height: 50px;
		line-height: 50px;
		font-size:40px;
	}
	
	#point li .text strong:not(.s_font){
		font-size:6vw;
	}
}

/*--------------------------


	例

--------------------------*/

#ex{
	width:100%;
	text-align: center;
	margin-top:60px;
}

#ex h3{
	display:flex;
	align-items: center;
	
}

#ex h3 span{
	font-size:2rem;
	line-height: 1;
}

#ex h3::before,
#ex h3::after{
	content: '';
	flex:1;
	height: 1px;
	border-top:1px solid #000;
	border-bottom:1px solid #000;
}

#ex h3::before{
	margin-right: 10px;
}

#ex h3::after{
	margin-left: 10px;
}

#ex p{
	margin:50px 0;
}

#ex .inner{
	width:100%;
	display: flex;
	gap:10px;
	flex-wrap: wrap;
}

#ex .item{
	width:calc((100%/3) - 10px);
	padding:5px;
	border:1px solid #ccc;
	border-radius: 3px;
}

#ex .photo{
	width:min(100%,285px);
	height: 200px;
	line-height: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	margin:0 auto;
	
}

#ex .photo img{
	width:100%;
	height: auto;
}

#ex dl{
	line-height: 1.4;
}

#ex dt{
	font-size:1.5rem;
	font-weight: 700;
	margin-bottom:5px;
}

#ex dd p{
	margin:0;
}

#ex dd .pay{
	font-weight: 700;
	font-size:2rem;
	color:#FD0108;
}

#ex dd .ex{
	display: inline-block;
	background-color: #000;
	color:#fff;
	border-radius: 3px;
	line-height: 1;
	padding:2px 8px;
	font-size:0.95rem;
	margin-bottom:10px;
	font-weight: 700;
}

#ex dd .monthly{
	font-size:0.9rem;
	display: inline-block;
	background-color: #FD0108;
	color:#fff;
	border-radius: 3px;
	margin-right:20px;
	line-height: 1;
	padding:2px 8px;
}

#ex ul.chu{
	text-align: left;
	font-size:0.95rem;
	margin-top:15px;
}

#ex ul.chu li{
	padding-left:1em;
	text-indent: -1em;
}


/*-------------------------------

	レスポンシブ

-------------------------------*/

@media screen and (max-width: 890px){
	#ex .item{
		width:calc(50% - 10px);
	}
}

@media screen and (max-width: 420px){
	#ex h3 span{
		font-size:2rem;
		line-height: 1.4;
	}

	#ex .item{
		width:100%;
	}
	
	#ex .photo{
		width:150px;
		height: auto;
		padding:30px 0;
	}
	
	
	#ex p{
		margin:20px 0;
		padding:0 10px;
		text-align: left;
	}
}


/*--------------------------


	クレジット

--------------------------*/

#credit{
	margin-top:80px;
	text-align: center;
}

#credit h3{
	width:100%;
	background-color: #000;
	border-radius: 5px;
	font-size:2.3rem;
	color:#fff;
	font-weight: 700;
	line-height: 1;
	padding:10px 0;
	margin-bottom:60px;
}

#credit h3 .s-font{
	font-size:1.15rem;
}

#risoku{
	display: inline-block;
	font-size: 2.3rem;
	font-weight: 700;
	margin:40px 0 50px 0;
	line-height: 1.4;
}

#risoku strong{
	font-size:3.3rem;
	font-weight: 700;
	margin-left:5px;
}

#risoku p.chu{
	padding-left:1em!important;
	text-indent: -1em;
	font-size:1rem;
	line-height: 1.4;
	font-weight: 500;
}

#credit .eximage{
	width:min(100%,550px);
	margin:0 auto;
	line-height: 0;
}

#credit .eximage img{
	width:100%;
	height: auto;
}

#aftershiharai{
	margin-top:40px;
}

#aftershiharai h4,
#credit .ex h4{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom:50px;
}

#aftershiharai h4 span,
#credit .ex h4 span{
	font-size:2rem;
}


#aftershiharai h4::before,
#aftershiharai h4::after,
#credit .ex h4::before,
#credit .ex h4::after{
	content: '';
	flex:1;
	max-width:100px;
	height: 1px;
	border-top:1px solid #000;
	border-bottom:1px solid #000;
}

#aftershiharai h4::before,
#credit .ex h4::before
{
	margin-right: 10px;
}

#aftershiharai h4::after,
#credit .ex  h4::after{
	margin-left: 10px;
}

#flow{
	width:min(100%,770px);
	margin:0 auto;
}

#flow img{
	width:100%;
	height: auto;
}

@media screen and (max-width: 420px){
	#risoku strong{
		font-size:2rem;
	}
	
	#risoku p.chu{
		text-align: left;
	}
}

