@charset "utf-8";
/* CSS Document */

/* PC & SP */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, section, summary, time, mark, audio, video, hr {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
}

.html{
overflow: scroll;
overflow-x: hidden;
}

body  {
  box-sizing: border-box;
  overflow-x: hidden; 
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  vertical-align: bottom;
  max-width: 100%;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}

p{
    text-align: center;
}


.wrap{
	max-width: 640px;
	margin: 0 auto;
	background-image: url("../img/bg.png");
	background-size: 100%;
	background-repeat:repeat;
}

.ttl{
	width: 97%;
	margin: 0 auto;
	padding-top: 3%;
}

.fv{
	width: 94.41%;
	margin: 0 auto;
	margin-top: 3%;
}

.arrow{
	width: 50%;
	margin: 0 auto;
	margin-top: 10%;	
}

.arrow2{
	width: 50%;
	margin: 0 auto;
	margin-top: 4%;	
}

.story{
	width: 100%;
	margin-top: 7%;
}

.itsunomani{
	width: 80%;
	margin: 0 auto;
	margin-top: 3%;	
}

.seitai{
	width: 85%;
	margin: 0 auto;
	margin-top: 7%;		
}

.seitai2{
	width: 64%;
	margin: 0 auto;
	margin-top: 3%;		
}

.kiji_02{
	width: 64%;
	margin: 0 auto;
	margin-top: 3%;			
}


.houhou{
	margin: 0 auto;
	margin-top: 3%;			
}

.akiraka{
	margin: 0 auto;	
	width: 50%;
	margin-top: 7%;			
}

.kiji_03{
	width: 64%;
	margin: 0 auto;
	margin-top: 7%;			
}

.sns{
	margin: 0 auto;	
	width: 74%;
	margin-top: 7%;	
}


.onaka_kiji_graph{
	margin: 0 auto;	
	width: 90%;
	margin-top: 7%;		
}

.akirame{
	margin: 0 auto;	
	width: 90%;
	margin-top: 7%;			
}

.rouhou{
	margin: 0 auto;	
	width: 90%;
	margin-top: 7%;		
}

.goukei{
	margin: 0 auto;	
	width: 100%;
	margin-top: 7%;			
}

.poli{
	margin: 0 auto;	
	width: 90%;
	margin-top: 7%;		
}

.merihari{
	width: 70%;
	margin: 0 auto;
	margin-top: 7%;		
}

.girls{
	margin: 0 auto;	
	width: 90%;
	margin-top: 7%;	
}

.kiji_04{
	width: 70%;
	margin: 0 auto;
	margin-top: 7%;			
}

.urawaza{
	width: 70%;
	margin: 0 auto;
	margin-top: 7%;		
}

.imadake{
	margin: 0 auto;	
	width: 93%;
	margin-top: 7%;		
}

.case{
	width: 96%;
	margin: 0 auto;
	margin-top: 4%;			
}

.hanbai{
	margin: 0 auto;	
	width: 88%;
	margin-top: 7%;			
}


.store{
	margin: 0 auto;	
	width: 85%;
	margin-top: 7%;			
}

.btn{
	margin: 0 auto;	
	width: 90%;
	margin-top: 3%;		
}

.kinou{
	margin: 0 auto;	
	width: 93%;
	margin-top: 7%;			
}

.footerlink{
	width: 90%;
	margin: 0 auto;
	margin-top: 3%;
	font-size: 1em;
	text-align: center;
}

.copyright{
	font-size: 0.8em;
	margin-top: 3%;	
	margin-bottom: 3%;
	padding-bottom: 30%;

}


.fixed{
	text-align: center;
	width: 100%;
	margin: 0 auto;
}

.ftbtn{
	width: 95%;
	position: fixed;
	bottom: 0;
	left: 2.5%;
    opacity: 0;
   visibility: hidden;

}

.active{
  opacity: 1;
  visibility: visible;
}



/*アニメーション用CSS*/
.updown{
  /* アニメーションの名前 */
  animation-name:UpDown;
  /* アニメーションの１回分の長さ */
  animation-duration: 0.5s;
  /* アニメーションの回数 */
  animation-iteration-count: infinite;
  /* アニメーションの進行具合 */
  animation-timing-function: ease-in-out;
  /* アニメーション再生の向き */
  animation-direction: alternate;
}
  /* アニメーションの設定 */
@keyframes UpDown{
  /* 開始地点 */
  0%{
  /* Y軸0px */
  transform: translateY(0);
  }
  /* 終了地点 */
  100%{
  /* Y軸50px */
  transform: translateY(18%);
  }
}


.refrection{

position:relative;
overflow:hidden;
}
 
.refrection:after {
content:"";
height:100%;
width:8%;
position:absolute;
top:-180px;
left:0;
background-color: #fff;
opacity:0;
-webkit-transform: rotate(45deg);
-webkit-animation: reflection 2s ease-in-out infinite;
}
 
@keyframes reflection {
0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}


.anim-box.poyopoyo {
  animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
}

.anim-box2.poyopoyo {
  animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
}

.anim-box3.poyopoyo {
  animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}
