.osusume-txt p@charset "utf-8";
/* CSS Document */

body {
    -webkit-text-size-adjust: 100%;
}
h1 
{ 
font-size:12px;
font-weight: normal;
	font-family:YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
} 

h2,h3,h4,h5,p,b{
font-family:YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";

}	

img {
max-width: 100%; 
height: auto;
}
#page-top{
	position: absolute;
	bottom: 10px;
	right: 10px;
	z-index: 1000;
}


.br-sp{
		display:block;
	}
	
	.br-pc{
		display:none;
	}
	
.style1 {
	font-size: 22px;
	font-weight: bold;
}
.siteLogo img{
	width: 200px;
}
.main-contents{
	width: 90%;
	margin: auto;
}
.maintxt{
	width: 90%;
	margin: auto;
}
.maintxt h1{
	 font-size:24px;
	line-height: 140%;
	padding: 10px 0;
}
.maintxt p{
	font-size: 15px;
	line-height: 170%;
	padding-top: 10px;
}
.ca_honbun{
	font-size: 20px;

}



.slide-pc{
	display: none;
}
.slide-sp{
	display: block;
}


.title h2{
	font-size:20px;
}

.ff-reason{
  background-color: #f7f5ef;
	position: relative;
	z-index: 100;
	padding: 10px 0;
}
	
.reason-box{
	display: flex;
    align-items: center;
    margin: 0 10px;
    position: relative;
    top: -30px;

}

.reason-p{
	width: 50%;
    height: 30%;
}
.reason-no{
	position: absolute;
	top:-20px;
	font-size: 40px;
	text-align: left;
	font-family:YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.reason-txt{
	position: relative;
	width:50%;
	padding-left: 10px;
}

.reason-txt h3{
	font-size: 25px;
	padding-bottom: 5px;
	line-height: 130%;
	text-align: center;
}
.reason-txt p{
	padding-top: 10px;
	font-size: 20px;
	line-height: 140%;
	text-align: center;
}
.reason-midashi-icon img{
   width: 15%;
	padding-right: 5px;
}


.fl-1{
	position: absolute;
	top: 10px;
	right: 10px;
}
.fl-2{
	position: absolute;
	bottom: 5px;
	left:0px;
}
.fl-2 img{
	width: 90%;
}
.no{
	position: absolute;
	top: -20px;
	font-size: 10px;
	font-weight: 500;
}

.contents-back {
	position: relative;
	background-color: #f7f5ef;
	height: 130px;
	width: 80%;
	margin-top: 30px;
	margin-left: auto;
	margin-bottom: 80px;
}
.contents-back-l {
	position: relative;
	background-color: #f7f5ef;
	height: 130px;
	width: 80%;
	margin-top: 10px;
	margin-right: auto;
	margin-bottom:80px;
}
.contents-p{
	margin-top: 10px;
}

.contents-p img{
	margin: auto;
	width: 390px;
	padding: 5px;
    border: 1px solid black;	
	}
.contents-box{
    position: absolute;
	left: -40px;
	display: flex;
	align-items: flex-end;
	width:100%;
	margin: 0 auto;
	padding-top: 30px;
	
}
.contents-box-l{
    position: absolute;
	right: -40px;
	display: flex;
	align-items: flex-end;
	width:100%;
	margin: 0 auto;
	padding-top: 30px;
	
}
.contents-txt{
	position: absolute;
	top: 40px;
	left: -70px;
	text-align: left;
	width: 65%;
}
.contents-txt h2{
	font-size: 22px;
	line-height: 130%;
	padding-bottom: 5px;
}
.contents-txt p{
	font-size: 18px;
	line-height: 150%;
}
.contents-txt-l{
	position: absolute;
	top: 40px;
	right: -70px;
	text-align: left;
	width: 65%;
}
.contents-txt-l h2{
	font-size: 22px;
	line-height: 130%;
	padding-bottom: 5px;
}
.contents-txt-l p{
	font-size: 18px;
	line-height: 150%;
}
.contents-midashi {
	position: absolute;
	top: -20px;
	right: 20px;
}

.contents-midashi img{
	width: 50%;
}


.contents-midashi-l {
	position: absolute;
	top:-20px;
}

.contents-midashi-l img{
	width: 50%;
}

.refill {
    width: 100%;
	position: relative;
	margin-top: 50px;
}
.refill img{
	width: auto;
	margin: auto;
}
.refill p{
    position: absolute;
    top: 50%;
    left: 80%;
    bottom: 10%;
    margin: 0;
    font-size: 18px;
    line-height: 100%;
    width: 40%;
    height: 70%;
    transform: translate(-60%, -60%);
    text-align: left;
}

.refill strong{
 text-align: right;
 
    }
.refill a{
 text-align: right;
     }


/*new css 240*/
/* デフォルト（PC用）の設定 */
.pc-only {
  display: block; /* PCでは表示する */
}
.sp-only {
  display: none;  /* スマホ用は非表示にする */
}

/* 画面幅が768px以下（スマホサイズ）の場合 */
@media (max-width: 768px) {
  .pc-only {
    display: none;  /* PC用を非表示にする */
  }
  .sp-only {
    display: block; /* スマホ用を表示する */
  }
}

/*new css 240  END*/



/*人気ランキングsmp*/
.ranking_h2{
    position: absolute;
    top: 10%;
    left: 20%;
    margin-top: 0px;
    }
.ranking_h2 h2{
    font-size: 21pt;
    margin-top: -44px;
    
    }
    
.ranking_bg{
        position: relative;
    }

.ranking02{
    display: flex;
    position: absolute;
    width: 65%;
    top: 58%;
    left: 47%;
     bottom: 82%;
    transform: translate(-50%, -50%);
    }





/* スマホ用を表示する */
.ranking01{
    display: flex;
    position: absolute;
    width: 90%;
    top: 28%;
    left: 44%;
   /* bottom: 82%;*/
    transform: translate(-50%, -50%);
    }




.r-01{
    width: 80%;
    height: 250px;
    margin-top: 100px;
    margin-left: 91px;
    margin-right: 10px;
    margin-bottom: -50px;
    padding: 10px;

      }
.r-01 p{
    font-size: 15px;
    line-height: 18px;
    } 
.r-02 {
width: 45%;
  height: 80%;
  margin-top: 67px;
  margin-left: -9px;
  margin-right: 105px;
  margin-bottom: -10px;

  }
.r-02 p{
    font-size: 15px;
    line-height: 18px;
    }    
   
.r-03 {
width: 45%;
  height: 78%;
  margin-top: 67px;
  margin-right: -69px;

    }
.r-03 p{
    font-size: 15px;
    line-height: 18px;
    } 
/*人気ランキングsmpここまで*/

/*インスタ紹介smp*/
.insta_h2{
    position: absolute;
    left: 30px;
    right: 10%;
    top: 10%;
    text-align: center;
    vertical-align: middle;
 }

.insta_h2 h2{
        font-size:21pt;
    
    }
    .insta-back {
     position: relative;
     margin: auto;
    width: 100%;  
      }
    .instaall{
    width: 100%;
    display: flex;
    align-items:flex-start;
    position: absolute;
    margin-left: -10%;
    top: 20%;
    left: 50%;
    bottom: 5%;
    bottom: 5%;
    transform: translate(-50%, -50%);
        
}  
.shoukai {
    width: 100%;
    position: absolute;
    display: flex;
    margin: 20px;
    top: 70%;
}

.shoukai img {
padding: 5px;
}
.sho1 {
    width: 100%;
    margin-right: 5px;
}

.sho2 {
    width: 100%;
    margin-right: 5px;
}
.sho3 {
    width: 100%;
    margin-right: 5px;
}


/*インスタ紹介smpここまで*/  
    
  

.osusume {
	display: flex;
	align-items: flex-end;
	width: 100%;
	margin: auto;
	margin-top: 40px;
	
}
.osusume-tbox{
	position: relative;
	width: 100%;
	padding: 0px;
}
.waku{
    position: absolute;
    top: 10%;
    }

.waku02{
    position: absolute;
    width: 60%;
    top: 10%;
    }

.osusume-txt {
    position: absolute;
    width: 80%;
    top: 55%;
    left: 35%;
    transform: translate(-50%, -50%);
}
.osusume-txt h3{
	font-size:21px;
	padding-top: 10px;
}
.osusume-txt p{
    font-size: 24px;
    padding: 3px;
    line-height: 150%;
}

.osusume-p{
	width: 50%;
	position: relative;
	margin-right: 10px;
}
.osusume-p img{
	position: relative;
	z-index: 1000;
}
.osusume-p{
 position: absolute;
	bottom:-50px;
    left: -30px;
    width: 70%;
    height:50%;
	z-index: 1;
	background: #f2f2f2;
}

.osusume-button2{
    text-align: center;
	 width: 200px;
    padding-left: 50px;
    padding-right: 50px;
	margin-top:10px;
	border: 1px solid black;
	border-radius: 5px;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-size: 18px;
}

.contents-01 table{
    width: 100%;/* 幅指定 */
    table-layout: fixed;
}
.contents-01 td{
    width:　50%;/* 幅指定 */
    table-layout: fixed;
    margin: 5px;
    padding: 10px;
    font-size: 15px;
}


.contents-img01{
  margin: 10px;
}



/*前回ボタン*/
.osusume-button{
	width: 90%;
	margin-top: 10px;
	border: 1px solid black;
	border-radius: 20px;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-size: 18px;
}

.Size{
	text-align: center;
	margin-top: 55px;
}
.Size h3{
	font-size: 20px;
	padding-bottom: 10px;
}
.SML {
	width: 80%;
	display: flex;
	justify-content: space-around;
	margin: auto;
}
.SML img{
	width: 100%;
}

.footer-img{
    display: block;
    width: 70%;
}

@media screen and (min-width: 780px) {
	/* 960px以上に適用されるCSS（PC用） */
.osusume-button2{
    text-align: center;
	width: 250px;
    margin:auto;
	border: 1px solid black;
	border-radius: 5px;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-size: 18px;
}
	
	.slide-sp{
		display: none;
	}
	.slide-pc{
		display: block;
	}
	.br-sp{
		display:none;
	}
	
	.br-pc{
		display: block;
	}
	
.siteLogo img{
	width: 315px;
}
.main-contents{
	max-width: 780px;
	margin: auto;
}
	
.maintxt h1{
	 font-size:27px;
	line-height: 140%;
}
.maintxt p{
	font-size:18px;
	line-height: 170%;
	padding-top: 10px;
}
.title h2{
	font-size:25px;
}
	
.ff-reason{
  background-color: #f7f5ef;
	position: relative;
	z-index: 100;
	width: 980px;
	padding: 10px 0;
}

.reason-txt h3{
	text-align: center;
	font-size: 23px;
	padding-bottom: 10px;  
    }
    
    
.reason-txt p{
	text-align: center;
	padding-top: 15px;
	font-size: 22px;
	line-height: 150%;
}
.contents-back {
	position: relative;
	background-color: #f7f5ef;
	height: 230px;
	width: 80%;
	margin-left: auto;
	margin-top: 50px;
}
.contents-back-l {
	position: relative;
	background-color: #f7f5ef;
	height: 230px;
	width: 80%;
	margin-right: auto;
	margin-top: 50px;
}
.contents-p{
	padding-top: auto;
	}
	
.contents-p img{
	margin: auto;
	width:  auto;
	padding: auto;
    border: 1px solid black;	
	}

.contents-box{
    position: absolute;
	left: -40px;
	display: flex;
	align-items: flex-end;
	width:100%;
	margin: 0 auto;
	padding-top: 30px;
	
}
.contents-txt{
	position: absolute;
	top:120px;
	left: -50px;
	text-align: left;
	width: 55%;
}
.contents-txt h2{
	font-size:23px;
	line-height: 130%;
	padding-bottom: 5px;
}
.contents-txt p{
	font-size:20px;
	line-height: 150%;
}
	
.contents-txt-l{
	position: absolute;
	top:120px;
	right: -50px;
	text-align: left;
	width: 60%;
}
.contents-txt-l h2{
	font-size:23px;
	line-height: 130%;
	padding-bottom: 5px;
}
.contents-txt-l p{
	font-size:20px;
	line-height: 150%;
}
.contents-midashi {
	position: absolute;
	top: -30px;
	right: 100px;
}

.contents-midashi img{
	width: 75%;
}
	

.contents-midashi-l {
	position: absolute;
	top: 10px;
	left: 50px;
}
.contents-midashi-l img{
	width:60%;
}
    
.contents-01 table{
    width:  780px;/* 幅指定 */
}
.contents-01 td{
    width:　50%;/* 幅指定 */
}
    
.osusume {
    text-align: center;
	display: flex;
	align-items: flex-end;
	width:780px;
	margin: auto;
		}

.osusume-txt {
   position: absolute;
    width: 80%;
    left: 35%;
    /* bottom: 50%; */
    transform: translate(-50%, -50%);
}
.osusume-tbox{
	position: relative;
	width:100%;
    padding-left: 20px;
    margin-left:  20px;
}
    
.waku{
    position: absolute;
    top: 10%;
    }

.waku02{
    position: absolute;
    top: 10%;
    left: -5%;
    }
.osusume-p{
	width: 50%;
	position: relative;
	margin-right: 30px;
}	
.osusume-txt h3{
	font-size: 25px;
}
.osusume-txt p{
    font-size: 24px;
    padding: 3px;0   line-height: 60%;
    font-style: normal;
    font-weight: normal;
	}
.osusume-button{
	width: 90%;
	border: 1.5px solid black;
	border-radius: 25px;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-size: 20px;
	padding: 10px;
	margin-top: auto;
}
    
.refill {
    width: 980px;
	position: relative;
	margin-top: 50px;
}
.refill img{
	width: auto;
	margin: auto;
}
.refill p{
    position: absolute;
    top: 60%;
    left: 80%;
    bottom: 20%;
    margin: 0;
    font-size: 21px;
    line-height: 100%;
    width: 40%;
    height: 70%;
    transform: translate(-60%, -60%);
    text-align: left;
}

.refill strong{
 text-align: right;
 
    }
.refill a{
 text-align: right;
 
    }

    
    /*人気ランキングPC*/
.ranking_bg{
        position: relative;
        width: 980px;
        margin: auto;
        }
 .ranking_h2{
    position: absolute;
    left: 30%;
    margin-top: -50px;
    }  

    
   /*PC用のランキング1表示内容*/
.ranking01pc{
    display: flex;
   /* align-items: center;*/
    position: absolute;
    width: 77%;
   top: 45%; /* */
    left: 50%;
    bottom: 10%;
    transform: translate(-50%, -50%);
}
    }

    }
.r-01pc {
    width: 780px;
    height: 250px;
    margin-top: 20px;
    margin-left: 80px;
    margin-right: 10px;
    margin-bottom: 0px;
    padding: 10px;
    min-width: 0px;

}
.r-01pc p{
    font-size: 17px;
    line-height: 20px;
    } 
.ranking02pc{
    display: flex;
    position: absolute;
    width: 90%;
    left: 50%;
    bottom: 60%;
    transform: translate(-50%, -50%);
    top: 60%;
}
.r-02pc {
width: 300px;
    height: 300px;
    margin-top: 60px;
    margin-left: 30px;
    margin-right: 16px;
    margin-bottom: -70px;
    padding: 10px;
}
.r-02pc p{
    font-size: 17px;
    line-height: 20px;
    } 

.r-03pc {
    width: 300px;
    height: 300px;
    margin-top: 60px;
    margin-left: 150px;
    margin-right: 16px;
    margin-bottom: -70px;
    padding: 10px;
}
 .r-03pc p{
    font-size: 17px;
    line-height: 20px;
    }    

    
/*人気ランキングPCここまで*/
    
/*インスタ紹介PC*/
    .insta-back {
        display: block;
        position: relative;
        width: 100%;
       }
 .insta_bg{
        position: relative;
        width: 980px;
        margin: auto;
        }
 .insta_h2{
    position: absolute;
    left: 14%;
    top: -5px;
    margin: auto;
     vertical-align:middle;
    }  

    .instaall{
    max-width: 780px;
    display: flex;
    align-items: flex-start;
    position: absolute;
    margin-left: -10%;
    /* align-items: center; */
    top: 23%;
    left: 50%;
    bottom: 50%;
    transform: translate(-50%, -50%);
    margin: auto;
    
}
.instacontents01 {
    position: relative;
    width: 360px;
    height: auto;
    margin-left: 10px;
    margin-bottom: 50px;
    padding: 10px;
}
    
 .instacontents02 {
     position: relative;
    width: 360px;
    margin-left: 10px;
    margin-bottom: 73px;
    padding: 10px;
}
/*
    .insta-sliderbox{
    position: absolute;
    margin-top: 50%;
    top: 20%;
    left: 0%;
    bottom: 10%;
    }
*/
.shoukai {
    max-width: 780px;
    display: flex;
    position: absolute;
    top: 82%;
    left: 50%;
 bottom: -5%; 
    transform: translate(-50%, -50%);
}

.shoukai img {
padding: 5px;
}
.sho1 {
    width:30%;
    margin-right: 5px;
}

.sho2 {
    width:30%;
    margin-right: 5px;
}
.sho3 {
    width:30%;
    margin-right: 5px;
}

/*インスタ紹介PCここまで*/    
    

.Size h3{
	font-size: 20px;
	padding-bottom: 10px;
}
.SML {
	width: 50%;
	display: flex;
	justify-content: space-around;
	margin: auto;
}	
