@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.jpg");
	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: 4%;	
}

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

.jitsuha{
	width: 100%;
	margin-top: 2%;		
}

.hamigaki_premium_kiji_02{
	width: 70%;
	margin: 0 auto;
	margin-top: 4%;	
}




.chakusyoku{
	width: 88%;
	margin: 0 auto;
	margin-top: 3%;	
}

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

.hamigaki_premium_kiji_03{
	width: 66%;
	margin: 0 auto;
	margin-top: 4%;		
}

.deai{
	width: 90%;
	margin: 0 auto;
	margin-top: 4%;			
}

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

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

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

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


.hamigaki_premium_kiji_04{
	width: 94.41%;
	margin: 0 auto;
	margin-top: 6%;
}

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

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

.hamigaki_kiji_P{
	width: 70%;
	margin: 0 auto;
	margin-top: 4%;		
}

.sarani{
	width: 70%;
	margin: 0 auto;
	margin-top: 2%;		
}


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

.seibun{
	width: 100%;
	margin-top: 1%;			
}


.hamigaki_premium_kiji_04-2{
	width: 70%;
	margin: 0 auto;
	margin-top: 6%;
}


.graph2{
	width: 88%;
	margin: 0 auto;
	margin-top: 2%;			
}

.yobou{
	width: 98%;
	margin: 0 auto;
	margin-top: 3%;		
}

.hamigaki_premium_kiji_06{
	width: 70%;
	margin: 0 auto;
	margin-top: 3%;	
}

.torichu{
	width: 100%;
	margin-top: 1%;			
}

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

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

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

.anshin{
	width: 94.41%;
	margin: 0 auto;
	margin-top: 6%;			
}


.hamigaki_premium_kiji_07{
	width: 88%;
	margin: 0 auto;
	margin-top: 6%;		
}

.sanbai{
	width: 98%;
	margin: 0 auto;
	margin-top: 2%;		
}

.tennen{
	width: 96%;
	margin: 0 auto;
	margin-top: 7%;			
}

.shiro{
	width: 100%;
	background-color: #ffffff;
}

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


.cta1{
	width: 100%;
}

.cta2{
	width: 100%;
	margin-top: 3%;		
}


.torichu2{
	width: 97%;
	margin: 0 auto;
	margin-top: 1%;	
	padding-bottom: 3%;
}



.footer{
	width: 100%;
	background-color: #C7001B;
	text-align: center;
	padding-top: 5%;
	padding-bottom: 10%;
	color: #ffffff;
}

.logo {
	width: 50%;
	margin: 7% auto;
}

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

.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: 10px;
	left: 2.5%;
    opacity: 0;
   visibility: hidden;

}

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

.btn{
	width: 50%;
}

.flexcont{
	display: flex;
	width: 93%;
	margin: 0 auto;
	justify-content: center;
	margin-top: 3%;
}

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


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


/*アニメーション用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%);
  }
}


.kirari{
display:inline-block;
position:relative;
overflow:hidden;
}
 
.kirari:after {
content:"";
height:100%;
width:30px;
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;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}
