@charset "UTF-8";

html,body{
	overflow-x: hidden;
}
#footer .inner a.presentBtn.pc,
img.pc{
	display: none;
}
a.hover:hover,
button.hover:hover,
input.hover:hover{
	opacity: 1;
}

#main{
	width: 100%;
	display: block;
	margin: 0 auto;
}
#main .movie,
#main .message,
#main .share{
	display: block;
	width: auto;
	padding: 0;
	margin: 0 0 8vw;
}
#main .movie .wrap{
	width: 100vw;
	min-height: 56vw;
}
#main .movie .wrap iframe{
	width: 100vw;
	height: 56vw;
}
#main .movie .wrap .soundSelect{
	width: 100vw;
	height: 56vw;
	background-size: 100% auto;
}
#main .movie .wrap .soundSelect p.title{
	width: 70.2666vw;
	height: 10.1333vw;
	margin: 4vw auto 6.6666vw;
	background-image: url("../img/txt_main_movie01_sp.png");
	background-size: auto 100%
}
#main .movie .wrap .soundSelect dl{
	width: 61.3333vw;
	margin: 0 auto;
	text-align: center;
}
#main .movie .wrap .soundSelect dl dt{
	margin: 0 0 16vw;
	color: #9c9c9c;
	font-size: 3.7333vw;
}
#main .movie .wrap .soundSelect dl dd{
	font-size: 3.7333vw;
}

#main .message{
	padding: 17.3333vw 0 0;
}
#main .message .wrap{
	width: 84vw;
	min-height: 1px;
	margin: 0 auto;
	padding: 2.6666vw;
}
#main .message .wrap:after{
	height: 17.3333vw;
	top: -17.3333vw;
	background-size: auto 100%;
}
#main .message .target,
#main .message.noDate .target{
	margin: 0 0 2.6666vw;
	font-size: 5.3333vw;
}
#main .message .birthday,
#main .message.noName .birthday{
	margin: 0 0 2.6666vw;
	font-size: 8vw;
}
#main .message .m,
#main .message.noName.noDate .m{
	width: 70.6666vw;
	height: 4.8vw;
	margin: 0 auto;
	background-image: url("../img/txt_main_message_sp.png");
	background-size: auto 100%;
}
#main .share .wrap:after{
	display: none;
}
#main .share .wrap{
	width: 84vw;
	min-height: 1px;
	margin: 0 auto;
	padding: 2.6666vw;
}
#main .share h2{
	width: 53.3333vw;
	height: 4.6666vw;
	margin: 0 auto 2.6666vw;
	background-size: auto 100%;
}
#main .share p.shareURL{
	min-height: 1px;
	padding: 4vw;
	margin: 0 0 2.6666vw;
	font-size: 3.2vw;
}
#main .share p.copy button{
	height: 9.3333vw;
	border-radius: 5px;
	background-size: 40.6666vw auto;
}

#aside{
	width: 84vw;
	margin: 0 auto 10.6666vw;
}
#aside ul{
	margin: 0 0 6vw;
}
#aside ul li{
	margin: 0 4vw;
}
#aside ul li a{
	width: 10vw;
	height: 10vw;
	background-size: 10vw auto;
}
#aside h2{
	margin: 0 0 4vw;
}
#aside h2 img{
	width: 65.3333vw;
}
#aside p.presentBtn a img{
	max-width: 100%;
}

#header{
	width: 100%;
	height: 16.6666vw;
	margin: 0 0 5.3333vw;
}
#header .logo{
	width: 13.3333vw;
	height: auto;
	margin: 0 0 0 3.3333vw;
}
#header .logo img{
	width: 13.3333vw;
	height: auto;
}
#header h1{
	width: 70vw;
	right: 8vw;
	font-size: 3.73333vw;
	line-height: 120%;
}

#footer{
	min-width:1px;
	width: 100%;
	height: auto;
	background: #dddddd;
	border-top: 1px solid #FFF;
}
#footer .dotline{
	width: 100%;
	margin-bottom: 11%!important;
}
#footer .inner{
	position: relative;
	padding-bottom: 12%;
	width: 90%;
	margin: 0 auto 0 5%;
}
#footer .inner p{
	margin-bottom: 34px;
}
#footer .inner p img{
	width:100%;
	height: auto;
}
#footer .inner .presentBtn{
	background: url(../img/sp_footer_present_btn.gif) 0 0 no-repeat;
	width: 580px;
	height: 0;
	padding-top: 13.27%;
	background-size: contain;
	position: static;
}
#footer .inner2{
	position: relative;
	width: 100%;
	margin: 0 auto 0 auto;
}
#footer .inner2 p,
#footer .inner2 div{
	overflow: hidden;
	text-indent: -99999px;
	display: block;
}

#footer .inner2 .ttl{
	width:64.53%;
	height: 0;
	padding-top: 8.9%;
	background: url(../img/happy_drive_ttl_sp.png) no-repeat;
	background-size: 100% auto;
	margin: 5% auto 0 auto;
}
#footer .inner2 .txt{
	width:52.96%;
	height: 0;
	padding-top: 12.03%;
	background: url(../img/happy_drive_txt_sp.png) no-repeat;
	background-size: 100% auto;
	margin: 4% 0 0 38%;
}
#footer .inner2 .icon{
	width:29.84%;
	height: 0;
	padding-top: 24.12%;
	background: url(../img/happy_drive_icon_sp.png) no-repeat;
	background-size: 100% auto;
	position: absolute;
	top:inherit;
	bottom: -5px;
	left: 7.2%;
}
#footer .inner2 .btn{
	width: 100%;
	margin: 2% 0 0 38%;
}
#footer .inner2 .btn a{
	display: block;
	width: 53.28%;
	height: 0;
	padding-top: 7.03%;
	background: url(../img/happy_drive_btn_sp.png) no-repeat;
	background-size: 100% auto;
}

.ex_form{
	width: 90vw;
	height: 70vw;
	padding: 5.3333vw;
	margin: -35vw 0 0 -45vw;
}
.ex_form form{
	display: block;
}
.ex_form form label{
	margin: 0 0 2.6666vw;
	font-size: 4vw;
	color: #222;
}
.ex_form form input[type="text"],
.ex_form form select{
	margin-top: 0;
	height: 12vw;
	font-size: 4vw;
}
.ex_form form .form_name{
	box-sizing: border-box;
	float: none;
	width: 100%;
}
.ex_form form .form_name input{
	width: 100%;
}
.ex_form form .form_name input:focus::-webkit-input-placeholder { color:transparent; }
.ex_form form .form_name input:focus:-moz-placeholder { color:transparent; }
.ex_form form .form_name input:focus::-moz-placeholder { color:transparent; }
.ex_form form .form_birthday{
	margin-top: 4vw;
	float: none;
	width: 100%;
}
.ex_form form .form_birthday select{
	float: left;
	width: 20vw;
	margin: 0 2vw 0 0;
}
.ex_form form .form_birthday select[name=d]{
	float: left;
}
.ex_form form input[type="submit"]{
	width: 100%;
	padding: 2.666vw;
	font-size: 5.0666vw;
	margin: 5.3333vw auto 0;
}
