@charset "utf-8";

@-ms-viewport {
    width: device-width;
}

/* check
*{
	border:1px solid #FF0000;
}
*/

/* clearfix
------------------------------------------------*/
.clearfix { *zoom:1; }
.clearfix:before,
.clearfix:after {
	display: table;
	content:"";
	line-height: 0;
}
.clearfix:after { clear: both; }

/* 全体
------------------------------------------------*/
body{
	margin: 0;
	padding: 0;
    font-family: YakuHanJP, 'Noto Sans JP', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	font-feature-settings: "palt";
	font-weight: 400;
	background:#ffffff;
	position: relative;
	width: 100%;
}

.wrapper{
	width:100%;
	margin: 0 auto;
	overflow: hidden;
	background: #ffffff;
	position: relative;
}

@media screen and (min-width:641px){
	.wrapper{
		width: 640px;
	}
}

/* hover
------------------------------------------------*/
a:hover img {
  opacity: 0.9;
  filter: alpha(opacity=90);
  -moz-opacity: 0.9;
}
a:hover {
  opacity: 0.9;
  filter: alpha(opacity=90);
  -moz-opacity: 0.9;
}
input[type="image"]:hover {
  opacity: 0.9;
  filter: alpha(opacity=90);
  -moz-opacity: 0.9;
}

/* レイアウト
------------------------------------------------*/
img{
	width: 100%;
	margin: 0 auto;
}

/* 登録エリア（小）
------------------------------------------------*/
.lp_entry_mini{
	width: 100%;
    height: 0;
    /* (画像の高さ / 画像の横幅) × 100 */
    padding-top: 76%;
    background: url(../img/t_lp_section_01.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
	position: relative;
}
.lp_entry_mini a img{
	position: absolute;
	right: 1.5em;
	bottom: 1em;
	width: 45%;
}
@media screen and (min-width:641px){
	.lp_entry_mini a img{
		right: 3.5em;
	bottom: 1em;
}
}

/* 登録エリア
------------------------------------------------*/
.lp_entry{
	width: 100%;
    height: 0;
    /* (画像の高さ / 画像の横幅) × 100 */
    padding-top: 115.7%;
    background: url(../img/t_lp_section_04.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
	position: relative;
}
.lp_entry a img{
	position: absolute;
	left: 50%;
	bottom: 3em;
	transform: translateX(-50%);
	width: 80%;
}
@media screen and (min-width:641px){
	.lp_entry a img{
	bottom: 5em;
	width: 80%;
}
}

/* Zoom Repeat Animation */
@keyframes zoomRepeat {
    0% {
        transform: scale(1);
    }
    30% {
        transform: scale(1.1, 1.1);
    }
    60% {
        transform: scale(1);
    }
    100% {
        transform: scale(1);
    }
}

.animated_zoomRepeat {
    animation: zoomRepeat 1.3s ease-in-out infinite;
}

/* 登録エリア（下部固定）
------------------------------------------------*/
.lp_entry_fixed {
    position: fixed;
    bottom: -200px; /* 初期状態で画面外に隠す */
    left: 0;
    width: 100%;
    text-align: center;
    transition: bottom 0.5s ease; /* スムーズな出現アニメーション */
}

.lp_entry_fixed.show {
    bottom: 10px; /* 出現時に画面下に固定 */
}

.lp_entry_fixed a img{
	max-width:600px;
	width: 95%;
	display: inline;
}