@charset "utf-8";

/***************************************
　　　　　　 基本設定
***************************************/
body {
    width: 100%;
	margin:0 auto;
	padding:0;
}

*{
	padding:0;
	margin:0;
}

img{
	max-width: 100%;
	/*image-rendering: -webkit-optimize-contrast;*/
}

.PC { display: none !important; }
.SP { display: block !important; }

#warpper{
	width:100%;
	overflow: hidden;
}


/***************************************
　　　　　　 header
***************************************/
header{
	width:100%;
	margin:0 auto;
}

header .inner{
	width: 92%;
	margin: 3% auto;
}

header .h-flex{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#h-left{ width:45%; }
#h-right{ width:45%; }


/***************************************
　　　　　　コンテンツ
***************************************/
#main{
	width: 100%;
	margin: 0 auto;
}
#main-visual{
	width: 100%;
	margin:0 auto;
	background: url("../images/main_sp.jpg") no-repeat;
	background-size: contain;
	position: relative
}
#main-visual::before{
	content: "";
	display: block;
	padding-top: 92%;
  }

#main-contents{
	width: 100%;
	margin: 0 auto;
	padding: 5% 0 0 0;
	background: #dbeb6f;
}
.main-otoiawase{
	width: 90%;
	margin:5% auto;
}
.mo_tit{
	margin: 0 auto 5% auto;
	text-align: center;
	font-size: 1.6em;
	font-weight: bold;
	color:#2c2928;
}
.mo_txt{
	text-align: center;
	font-size: 0.8em;
	font-weight: bold;
	color:#2c2928;
}
.mo_box{
	margin:5% auto 0 auto;
	padding: 6% 5%;
	background: #FFF;
}
.mo_box p{ text-align: center;}
.mo_tel{
	margin: 0 auto 5% auto;
	text-align: center;
	font-size: 1.2em;
	font-weight: bold;
	color:#2c2928;
}
.mc-img{
	width: 90%;
	margin:5% auto 0 auto;
}


/***	customer
************************************/
#customer{
	width: 100%;
	margin: 0 auto;
	padding: 10% 0 10% 0; /*15% 0 10% 0*/
}

#customer h2{
	width: 90%;
	margin: 0 auto;
	text-align: center;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 160%;
	color: #2c2928;
}
#customer h2 > span{ color: #da1e79; }

#customer-example{
	width: 90%;
	margin: 5% auto 10% auto;
}

#customer h3{
	width: 90%;
	margin: 0 auto;
	text-align: center;
	font-size: 1.4em;
	font-weight: bold;
	line-height: 160%;
	color: #2c2928;
}

#customer-review{
	width: 90%;
	margin:8% auto;
}
.customer-review_left{ 
	width: 100%;
	margin: 0 auto 8% auto;
}
.customer-review_right{ 
	width: 100%;
	margin: 0 auto;
}
.cr-slide {}
.cr-slide img{ width: 100%; }

#customer-review-list{
	width: 90%;
	margin:15% auto 0 auto;
}
.cr-list img{ width: 100%; }


/***	attention
************************************/
#attention{
	width: 100%;
	margin: 0 auto;
}

#attention .inner{
	width: 90%;
	margin: 0 auto;
}

h2.attention-tit{
	width: 90%;
	margin: 5% auto;
	padding: 6% 5% 4% 5%;
	background: #fff500;
	text-align: center;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 140%;
	color: #43403f;
}
h2.attention-tit span{ font-size: 0.7em; }

.attention-flex{
	width: 100%;
	margin: 0 auto 5% auto;
}

.attention-flex_left{
	width: 100%;
	margin: 0 auto 15% auto;
	text-align: center;
}

.attention-flex_right{
	width: 100%;
	margin: 0 auto 15% auto;
	text-align: center;
}

h3.attention-flex_tit{
	margin: 0 auto 5% auto;
	padding: 6% 6% 4% 6%;
	text-align: left;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 160%;
	color: #2c2928;
	background:#f9f8e1;
	border-radius: 12px;
}
h3.attention-flex_tit span{ color: #da1e79; }

.attention-txt{
	width: 70%;
	margin: 15% auto 5% auto;
	text-align: center;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 160%;
	color: #2c2928;
}
.attention-txt span{ color: #da1e79; }

.attention-shop{ margin: 8% auto; }
.attention-shop_flex{
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}

.attention-shop_box{
	width: 45%;
	margin: 0 2.5% 5% 2.5%;
}
.attention-shop_box p{
	margin: 8% auto 0 auto;
	text-align: left;
	font-size: 0.8em;
	font-weight: 900;
}

.attention-shop_txt{
	width: 100%;
	margin: 8% auto 0 auto;
	line-height: 160%;
}
.attention-shop_txt p{ margin-bottom: 5%; }

.attention_img{
	width: 100%;
	margin: 15% auto;
}



/***	otoiawase
************************************/
.otoiawase{
	width: 80%;
	margin: 0 auto 15% auto;
	padding: 8% 5% 8% 5%;
	border: 2px solid #01a73c;
	border-radius: 12px;
	text-align: center;
}

.otoiawase p{
	width: 90%;
	margin: 0 auto 5% auto;
	text-align:center;
	font-size: 1.1em;
	line-height: 160%;
	font-weight: 900;
}

.otoiawase-btn{ width: 100%; }



/***	campaign
************************************/
#campaign{
	width: 100%;
	margin: 0 auto;
	padding: 15% 0 10% 0;
	background: #fff0f1;
}
#campaign h2{
	width: 80%;
	margin: 0 auto;
	text-align: center;
	font-size: 1.6em;
	font-weight: 900;
	line-height: 160%;
	color: #2c2928;
}

#campaign-flex{
	width: 100%;
	margin: 5% auto 0 auto;
}

.campaign-flex_left{
	width: 90%;
	margin: 0 auto 5% auto;
}
.campaign-flex_right{ 
	width: 90%;
	margin: 0 auto;
}

.campaign-flex_right p{ 
	margin-top: 10%;
	font-weight: bold;
	text-align: center;
	color: #2c2928;
}
.campaign-flex_right a{
	color: #01a73c !important;
	text-decoration:underline !important;
}



/***	voice
************************************/
#voice{
	width: 100%;
	margin: 15% auto;
}
#voice h2{
	width: 90%;
	margin: 0 auto;
}

#voice-list{
	width: 90%;
	margin: 10% auto 20% auto;
}
.voice-slide img{ width: 100%; }

#voice-img{
	width: 90%;
	margin: 10% auto;
}



/***	no1
************************************/
#no1{
	width:100%;
	margin:0 auto;
	padding-bottom: 15%;
	background:#DCF084;
}

#no1 h2{
	width: 100%;
	margin: 0 auto 5% auto
}

#no1 .inner{
	width:96%;
	margin:0 auto;
}

.repletion{
	margin:0 auto;
	text-align:right;
	font-size:9px;
}

.no1-box{
	width:100%;
	margin:5% auto;
	background:#FFF;
	border-radius: 8px;
}

.no1-box img{ 
	min-width:100%;
	border-radius: 8px 8px 0 0;
}

.no1-left01,.no1-right02,no1-left03{ display:none; }
	
.no1-right01,.no1-left02,.no1-right03{
	background: #FFF;
	padding: 7% 5%;
	text-align: left;
	line-height: 2em;
	border-radius: 0 0 12px 12px;
}

.no1-head{ display:none; }


#no1-otoiawase{
	width:100%;
	margin:8% auto 3% auto;
}

#no1-otoiawase a{
	width: 90%;
	margin:0 auto;
	padding:3% 0;
	color: #FFF;
	background-color: #DA1E79;
	box-shadow: 0 6px 0 #B70A65;
	border-radius: 100vh;
	display:block;
	font-size:18px;
	font-weight:900;
	text-align:center;
	text-decoration:none;
	line-height:1.3em;
	position:relative;
}

#no1-otoiawase a::after{
	content:url("../images/bnr_icn.png");
	display: inline-block;
	position: absolute;
	top: 40%;
	right: 10%;
}



/*		about-yume
**********************************/
#about-yume{
	width:100%;
	margin:0 auto;
	padding:5% 0 0 0;
	background:#FFF;
}

.about-yume_box{
	width:100%;
	margin:0 auto;
	padding:3% 0;
	background:#FFF;
}

.about-yume-left{
	width: 80%;
	text-align: center;
	margin: 0 auto 5% auto;
}

.about-yume-right{
	width: 85%;
	margin: 0 auto;
	text-align: left;
	font-size: 14px;
	line-height: 1.8em;
}

.about-yume-right p{ margin-bottom:10px; }

.about-yume-foot{
	max-width:100%;
	background:url("../images/about_bk_sp.png")no-repeat;
	background-size:cover;
}

.about-yume-foot::before{
	content:"";
	display: block;
	padding-top:48%;
}


/***************************************
　　　　　　 form
***************************************/
#form{
	width:100%;
	margin:0 auto;
	padding:15% 0 5% 0;
	background:url("../images/form_bk.png");
}

#form h2{
	width:94%;
	margin:0 auto;
}

.form-tel{
	width:96%;
	margin:5% auto 10% auto;
}

.form-tel-tit{
	margin:2% auto !important;
	font-size:1.4em;
	font-weight:900;
	text-align:center;
}

.form-tel-right{
	width:96%;
	margin:0 auto !important;
	text-align:center;
}

.form-tel-right img{
	width:85%;
	margin:0 auto !important;
}

.tel-text{
	font-size:0.9em;
	font-weight:900;
	text-align:center;
	margin:3% auto;
}

#form .inner{
	width: 96%;
	margin: 5% auto;
	padding: 2% 0 5% 0;
	background: #90C31E;
}

.form-tit{
	width: 90%;
	margin: 5% auto;
}

.form-wrap{
	width:96%;
	margin:5% auto 0 auto;
	padding-bottom: 1%;
	background:#FFF;
}

.form-wrap h3{
	margin: 0 auto 8% auto;
	padding: 3% 0;
	background: #F4F9E9;
	font-size: 18px;
	font-weight: 900;
	text-align: center;
}

.form-sec{
	width: 90%;
	margin: 3% auto;
	padding: 2% 0 2% 2%;
}

.fs-left,.fs-left02{
	width:100%;
	margin-bottom:2%;
	font-size:1.1em;
	font-weight:900;
	color:#000;
	font-family:"Hiragino Maru Gothic ProN W4", sans-serif;
}

.fs-left::before{
	content:'必須';
	display: inline-block;
	width:40px;
	margin-right:3%;
	padding: 2% 0;
	font-size:0.7em;
	font-weight:900;
	text-align: center;
	color:#FFF;
	background:#4AA34A;
	border-radius:8px;
	vertical-align:middle;
}

.fs-left02::before{
	content:'任意';
	display: inline-block;
	width:40px;
	margin-right:3%;
	padding: 2% 0;
	font-size:0.7em;
	font-weight:900;
	text-align: center;
	color:#FFF;
	background:#ACACAC;
	border-radius:8px;
	vertical-align:middle;
}

.fs-right{
	width:100%;
	margin:0 auto;
}

.form-end{
	width: 90%;
	margin: 15px auto;
	font-size: 12px;
	text-align: left;
	line-height: 180%;
}

.form-end > a:link{
	color:#01A73C;
	text-decoration: underline;
}

input{
	max-width:100%;
	height:40px;
	background:#FFFFE4;
	border-radius: 8px;
}

input[type="date"] {
	height:40px;
	color:#000;
	border-radius: 8px;
}

input[type="text"] {
	width:100% !important;
	height:40px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 8px;
}

input[type="tel"] {
	width:100% !important;
	height:40px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 8px;
}

input[type="email"] {
	width:100% !important;
	height:40px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 8px;
}

select{ 
	color:#000;
	height:40px;
}
.sl-width{ width: 100px; }

textarea {
    width: 100% !important;
    height: 100px !important;
	border-radius: 8px;
}

ul.form-list{
	list-style:none;
	margin:0;
	padding:0;
}

ul.form-list > li{
	width: calc(45% - 6px);
	margin: 3px;
}

ul.form-list2{
	list-style:none;
	margin:0;
	padding:0;
}

ul.form-list2 > li{ margin:0 0 2% 0; }


/******** 確認画面 ********/
.form-wrap table{
	width:100%;
	margin:0 auto;
	border:none !important;
}

.form-wrap th{
	width: 97%;
	display: inline-block;
	padding: 0 0 2% 3%;
	vertical-align: middle;
	text-align: left;
	font-size: 14px;
	font-weight: 900;
}

.form-wrap td{
	width: 97%;
	display: inline-block;
	margin-bottom: 5%;
	padding: 0 0 0 3%;
	font-size: 14px;
}

.bg{ background:#F3F3F3; }
.bno{ border: none !important; }

.button02 {
	display: inline-block !important;
	font-size : 18px !important;
	font-weight: 900;
	text-align: center !important;
	cursor: pointer !important;
	padding: 5% 17% 5% 5% !important;
	background: #DA1E79 !important;
	color: #ffffff !important;
	line-height: 1em !important;
	transition: .3s !important;
	border: 2px solid #DA1E79 !important;
	position:relative;
}

.button02::after{
	content:url("../images/button02_icn.png");
	display: inline-block;
	position: absolute;
    top: 27%;
    right: 5%;
}
.button02:hover { opacity: 0.6; }

.b-span{
	margin-right:15px;
	padding:5px 8px;
	background:#FFF;
	font-size: 22px;
	font-weight: 900;
	color: #DA1E79;
	border-radius: 4px;
}



/***************************************
		side
***************************************/
#foot-btn{
	position:fixed;
	bottom:10px;
	z-index:99999;
	display:none;
}

#foot-btn ul{
	width:96%;
	margin:0 auto;
}

#foot-btn ul li{
	width:20%;
	margin-right:2%;
	display:inline-block;
	vertical-align:bottom;
}

#foot-btn ul li:nth-child(2){
	width:76%;
	display:inline-block;
	margin-right:0;
	filter:drop-shadow(2px 2px 5px rgba(0,0,0,0.6));
}


#side-btn{ display: none !important; }
.side-btn_contetns{ display: none !important; }
.s-btn_active{ display: none !important; }
.img-on{ display: none !important;}
.img-off{ display: none !important;}
.close-btn{ display: none !important; }



/***************************************
		scroll
***************************************/
.fade {
    opacity : 0;
    transform : translate(0, 50px);
    transition : all 500ms;
}
 
.fade.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}


/***************************************
		footer
***************************************/
footer{
	width:100%;
	margin: 0 auto;
	padding:3% 0;
	background:#DA1E79;
}

.footer_inner{
	width:96%;
	margin:0 auto;
	text-align:center;
	font-size:10px;
	color:#FFF;
}

/***************************************
		thanks
***************************************/
#thanks_contents{
	width:80%;
	margin:10% auto;
	padding:10% 5%;
	background: #fffced;
	border-radius: 18px;
}

.thanks_box{
	width:96%;
	margin: 0 auto;
}

.thanks_box p{
	line-height: 180%;
    text-align: center;
}

.thanks-txt > h3{
	width:96%;
	margin: 5% auto !important;
	text-align: center;
	color: #f00;
	font-size: 1.8em;
	font-weight: 900;	
}

.thanks-txt{
	width:90%;
	margin:5% auto;
}

.thanks-txt p{
	line-height: 180%;
	text-align: left;
	margin-bottom: 10px;
}

.thanks-img{
	width:50%;
	margin:0 auto;
}
