* {
    margin:0;
    padding:0;
    outline:0;
    vertical-align:baseline;
	box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6, p {
	margin: 0;
}

address, em, cite, dfn, var {
  font-style: normal;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}

p {
    margin-top: 0;
}

hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

ul {
	list-style:none;
	padding:0;
}
li {
	padding:0;
}

input[type="submit"] {
  -webkit-appearance: none;
  border-radius: 0;
}

table {
  border-collapse: collapse;
}

table th{
  vertical-align:top;
}

input, select {
    vertical-align:middle;
}

a{
	text-decoration:none;
	color:#0000e4;
	font-weight: bold;
}

a {
    -webkit-tap-highlight-color:transparent;
}

a:hover{
	color: #3c5460;
}

.clearfix:after {
	content: ".";
	display: block;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0; 
	clear: both;
	visibility: hidden; 
	overflow: hidden;
}

a img {
    border-style:none;
}

img{
	height: auto;
	width: 100%;
	vertical-align: bottom;
}


html,body {  
	-webkit-text-size-adjust: 100%; 
} 

body { width:100%; 
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#282c2d;
	background:#fff;
}


.fa-star,.fa-star-half-alt{
	color: #ffcc33;
}

.fa-heart{
	color: #ff0996;
}

.pink{
	color: #ff0996;
	font-weight: bold;
}

.green{
	color: #06c655;
	font-weight: bold;
}

.red{
	color: #f10000;
	font-weight: bold;
}


.center {
	margin:0px auto;
	text-align:center;
}

.b{
	font-weight:bold;
}

#wrap img {
 vertical-align:bottom;
}

#wrap{
	margin:0 auto;
	overflow-x: hidden;
}

.txt{
	text-align: center;
	padding: 4% 2%;
	font-size: 4.0vmin;
	line-height: 8.0vmin;
}


.txt2{
	color: #f10000;
}

.txt3{
	color: #ff0996;
	font-weight: bold;
	font-size: 5.0vmin;
	background: linear-gradient(transparent 60%, #ffe933 0%);
}

.txt4{
	color: #06c655;
	font-weight: bold;
	font-size: 6.0vmin;
}

.slide{
	margin: 2% 5%;
	padding: 4%;
	background: #fff;
	border: 1px solid #ededed;
}

.slide2{
	float: left;
	width: 30%;
}

.slide2 img{
	border-radius: 50%;
	border:2px solid #ededed;
}

.slide3{
	margin-left: 31%;
	padding: 3% 1%;
    font-size: 3.8vmin;
    line-height: 6.6vmin;
	font-weight: bold;
}

.slide3 span{
	color: #ff0996;
	font-size: 6.0vmin;
}

.btn{
	margin: 2% auto 0;
	text-align: center;
	background: url(../images/arrow.svg) #06c655 right 10px center no-repeat;
    background-size: 10px;
    font-size: 4.5vmin;
    line-height: 5.5vmin;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	width: 100%;
	border-radius: 5.0em;
}

.btn a{
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 4% 0;
}

.swiper-container{
	margin:0 0 6%;
	padding-bottom: 5%;
}

.swiper-pagination{
	bottom:0%!important;
}


.title{
	color: #fff;
	padding: 2%;
    font-size: 6.0vmin;
    line-height: 7.0vmin;
	font-weight: bold;
	background: #000;
}

.rank{
	margin: 2% 0;
	padding: 2% 1%;
	border-bottom:2px dotted #ededed;
}

.rank table{
	width: 100%;
}

.rank td{
	padding: 1% 1%;
	vertical-align: middle;
}


.rank2{
	width: 25%;
}

.rank2 img{
	border-radius: 50%;
	border:2px solid #ededed;
}

.rank3{
	width: 50%;
	font-size: 3.5vmin;
    line-height: 4.5vmin;
	font-weight: bold;
}

.rank4{
	width: 25%;
}

.btn2{
	margin: 0;
	text-align: center;
	background: #06c655;
    font-size: 3.5vmin;
    line-height: 4.5vmin;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	width: 100%;
	border-radius: 10px;
}

.btn2 a{
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 14% 1%;
}

.r-txt{
	padding: 0 4%;
	font-size: 3.6vmin;
	line-height: 5.2vmin;
}

.banner{
	margin: 4% 2%;
}


.thoughts{
	padding: 2%;
	font-size: 4.2vmin;
    line-height: 5.2vmin;
	text-align: center;
	color: #fff;
	font-weight: bold;
	background: #ff0996;
	margin: 0 2%;

}

.thoughts02{
	background: #fff;
	padding: 2%;
    font-size: 4.0vmin;
    line-height: 5.8vmin;
	border: 2px solid #ff0996;
	margin: 0 2%;
}

.thoughts03{
	font-weight: bold;
	margin: 2% 0;
}

.thoughts03 p{
	padding-left:2em;
	text-indent:-0.7em;
}

.btn3{
	margin: 4% auto;
	text-align: center;
	background: url(../images/arrow.svg?2) #06c655 right 10px center no-repeat;
    background-size: 10px;
    font-size: 4.5vmin;
    line-height: 5.5vmin;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	width: 92%;
	border-radius: 5.0em;
}

.btn3 a{
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 5% 0;
}

.btn3 { animation: dokidoki 1.5s infinite;}
@keyframes dokidoki {
    0% {transform: scale(1.05);}
    5% {transform: scale(1);}
    50%{-webkit-transform: scale(1.05);}
    55%{transform: scale(1);}
    90%{-webkit-transform: scale(1.05);}
    95%{transform: scale(1);}
    100%{-webkit-transform: scale(1.05);}
}


/* ---------------------------------------------------------------------
Footer
--------------------------------------------------------------------- */


#footer{
	width: 100%;
	background:#000;
    font-size: 3.5vmin;
	color:#fff;
}

.footer-area{
	margin:0 auto;
	padding:2%;
	text-align:center;

}

	