@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100..900&family=Noto+Sans+JP:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
*:focus {
  outline: none;
}

hr{
	margin: 0;
}

#fg_wrap{
    width: 100%;
	text-align: center;
	margin: 0% auto;
	color: #333333;
    display: block;
    font-weight: 400;
    overflow: hidden;
    font-family: 'Noto Sans JP', sans-serif;
    -webkit-animation: fadein 1.2s forwards ease;
    animation: fadein 1.2s forwards ease;
    letter-spacing: 1.6px;
	font-feature-settings: "palt";
	background: #f7f7f7;
}
@keyframes fadein {
		  0% {
			  opacity: 0;
		  }
		  100% {
			  opacity: 1;
			  transform: translate(0);
		  }
}

#fg_wrap img{
    width: 100%;
    line-height:0;
    vertical-align: bottom;
    border: none;
}


/************************************************************
                main 
************************************************************/
#fg_head {
    max-width: 1000px;
	width: 100%;
	margin: 0 auto;
    position: relative;
	background: #ffffff;
}

.feature_section{
	border: 1px solid #e36c9a;
	position: relative;
	margin: 10% auto 8%;
	width: 80%;
	display: flex;
}

.feature_section .title{
	position: absolute;
	top: -7%;
	left: 50%;
	transform: translateX(-50%);
	font-family: "playfair-display", serif;
	font-size: 25px;
}

.feature_section .title span{
	background: #ffffff;
	padding: 0 30px;
}

.feature_section .feature_box{
	width: 50%;
	padding: 5%;
}

.feature_section .feature_box img{
	width: 90px!important;
}

.feature_section .feature_box .feature_name{
	font-family: futura-pt, sans-serif;
	font-weight: 500;
	margin: 10px;
	font-size: 20px;
}

.feature_section .feature_box .feature_name span{
	font-size: 12px;
}

.feature_section .feature_box .feature_txt{
	text-align: left;
	font-size: 14px;
	letter-spacing: 2.5px;
}

.feature_section .feature_box .feature_txt span{
	font-size: 16px;
}

.other_section{
	display: flex;
	margin: 0 auto 5%;
	width: 80%;
	column-gap: 3%;
}

.other_section .styline_box,
.other_section .review_box{
	position: relative;
	border-top: 1px solid #e36c9a;
	padding: 5% 3%;
	width: 50%;
}

.other_section .styline_box .title,
.other_section .review_box .title{
	position: absolute;
	top: -3%;
	left: 50%;
	transform: translateX(-50%);
	font-family: "playfair-display", serif;
	font-size: 20px;
}

.other_section .styline_box .title span,
.other_section .review_box .title span{
	background: #ffffff;
	padding: 0 15px;
}

.other_section .txt{
	text-align: left;
	margin-top: 5%;
	font-size: 14px;
	letter-spacing: 2.5px;
}

.footer{
	width: 100%;
	background: #e98eb1;
    color: #FFFFFF;
    font-size: 15px;
    text-align: center;
    padding: 1% 0;
    position: relative;
    margin: 0 auto;
    font-weight: 300;
}

.sp {
	display:none;
}
.pc{
    display: block;
}

/************************************************************
                SP
************************************************************/

@media only screen and (max-width:768px){
	#fg_wrap {
		width: 100%;
        margin: 0% auto;
		text-align: center;
        padding: 0;
    }

    .feature_section{
        width: 90%;
		margin: 15% auto;
    }
	
    .feature_section .title {
        font-size: 20px;
		width: 100%;
		top: -6%;
    }	
	
	 .feature_section .feature_box img {
        padding: 10% 5%;
    }
	
    .feature_section .feature_box img {
        width: 60px !important;
    }
	
    .feature_section .feature_box .feature_name {
        font-size: 14px;
		margin: 5px 0 10px;
    }
	
    .feature_section .feature_box .feature_name span {
        font-size: 10px;
    }
	
    .feature_section .feature_box .feature_txt {
        font-size: 12px;
    }	
	
    .other_section {
        display: block;
		width: 90%;
    }
	
    .other_section .txt {
        font-size: 12px;
    }	
	
    .other_section .styline_box,
	.other_section .review_box {
            width: auto;
    }
	
	.other_section .styline_box .title,
	.other_section .review_box .title {
        font-size: 20px;
    }	
	
	.other_section .review_box .title {
        top: -4%;
    }	
	
    .other_section .styline_box,
	.other_section .review_box {
        padding: 5% 7%;
		margin-bottom: 15%;
    }	
	
    .other_section .styline_box img,
	.other_section .review_box img {
        margin-top: 7%;
    }
	
	.footer{
		font-size: 13px;
        font-weight: 300;
        margin: 0% auto 0;
    }
	
    .pc {
		display:none;
	}
	.sp {
		display:block;
		width: 100%;
	}
	
}