/*申し込みステップ*/
.subscribe_step{
	overflow:hidden;
	text-align:center;
	line-height:1.5;
	position:relative;
}
.subscribe_step:after{
	display:block;
	content:"";
	position:absolute;
	left:50%;
	margin-left:-33.33333333333333%;
	width:66.66666666666666%;
	height:2px;
	background:#2e95d0;
	z-index:0;
}
.subscribe_step_box{
	float:left;
	width:33.33333333333333%;
	color:#2e95d0;
	position:relative;
}
.subscribe_step_box.current{
	color:#ff9600;
}
.subscribe_step_box:after{
	display:block;
	content:"";
	position:absolute;
	left:50%;
	margin-left:-12px;
	width:24px;
	height:24px;
	background:#fff;
	border:4px solid #2e95d0;
	-webkit-border-radius:12px;
	-moz-border-radius:12px;
	-ms-border-radius:12px;
	-o-border-radius:12px;
	border-radius:12px;
	z-index:1;
}
.subscribe_step_box.current:after{
	background:#ff9600;
	border:none;
	-webkit-border-radius:12px;
	-moz-border-radius:12px;
	-ms-border-radius:12px;
	-o-border-radius:12px;
	border-radius:12px;
	z-index:1;
}

/*入力・確認*/
.subscribe_description{
	clear:both;
	line-height:1.5;
	font-weight:normal;
}
.subscribe_tab{
	overflow:hidden;
}
.subscribe_tab dd,.subscribe_tab dt{
	line-height:1.5;
	-webkit-box-sizing:content-box;
	-moz-box-sizing:content-box;
	-ms-box-sizing:content-box;
	-o-box-sizing:content-box;
	box-sizing:content-box;
}
.subscribe_tab dt{
	clear:both;
	overflow:hidden;
}
.subscribe_tab dt span.st_tit{
	display:block;
	float:left;
}
.subscribe_tab dt span.required{
	display:block;
	float:right;
	font-size:1rem;
	border:1px solid #F30;
	color:#F30;
	padding:0 5px;
	-webkit-border-radius:2px;
	-moz-border-radius:2px;
	-ms-border-radius:2px;
	-o-border-radius:2px;
	border-radius:2px;
}
.subscribe_tab dd{
	font-weight:normal;
}
.subscribe_tab dd a{
	text-decoration:underline;
}
.subscribe_tab dd p{
	margin-bottom:10px;
}
.subscribe_tab dd p:last-of-type{
	margin-bottom:-1px;
}
.st_description,.error{
	font-size:1.2rem !important;
	padding:5px !important;
}
.st_description{
	background:#EEE;
}
.attention{
    background:#FFEFEA !important;
    color:#F30 !important;
}
.error{
	margin-top:10px;
	background:#FFEFEA !important;
	color:#F30 !important;
}
.subscribe_tab input[type=text],.subscribe_tab input[type=email]{
	border:1px solid #999;
	padding:5px;
}
.subscribe_tab select{
	border:1px solid #999;
	padding:5px;
	background:#fff url(../images/product/icon_selectbox.svg) 95% center no-repeat;
}
.st_name,.st_address1_1{
	overflow:hidden;
}
.st_name label{
	display:block;
	float:left;
	padding-top:7px;
}
.st_name input[type=text]{
	float:left;
}
.st_address1_1 label{
	display:block;
	float:left;
	padding-top:7px;
}
.st_address1_1 input[type=text]{
	float:left;
}
.st_address1_1 input:nth-of-type(2){
	float:left;
	border:1px solid #000;
	text-align:center;
	font-weight:bold;
	-webkit-border-radius:2px;
	-moz-border-radius:2px;
	-ms-border-radius:2px;
	-o-border-radius:2px;
	border-radius:2px;
}
.st_address1_1 input:nth-of-type(3){
	float:left;
	text-align:center;
	font-weight:bold;
	-webkit-border-radius:2px;
	-moz-border-radius:2px;
	-ms-border-radius:2px;
	-o-border-radius:2px;
	border-radius:2px;
	background:#000;
	color:#fff;
}
.st_address1_2{
	clear:both;
}
.st_anotherplace{
	padding-top:15px;
	margin-top:20px;
	border-top:1px solid #e0e0e0;
}
.st_phone input:nth-of-type(1){
	width:20%;
}
.st_phone input:nth-of-type(2),.st_phone input:nth-of-type(3){
	width:25%;
}
.st_choise input{
	width:40%;
}
.st_question textarea{
	border:1px solid #999;
	padding:5px;
	width:95%;
}
.st_anotherchoise,.st_others{
	overflow:hidden;
}
.st_anotherchoise label,.st_others label{
	display:block;
	float:left;
	margin-right:4%;
}
.st_goconfirm{
	padding:1px;
	background:#ff9600;
	-webkit-border-radius:2px;
	-moz-border-radius:2px;
	-ms-border-radius:2px;
	-o-border-radius:2px;
	border-radius:2px;
}
.st_goconfirm:hover{
	background:#2e95d0;
}
.st_goconfirm:hover input{
	background:#2e95d0 url(../images/subscribe/arrow_right.svg) 95% center no-repeat;
}
.st_goconfirm input{
	display:block;
	width:100%;
	border:2px solid #fff;
	color:#fff;
	text-align:center;
	padding:25px 0;
	background:#ff9600 url(../images/subscribe/arrow_right.svg) 95% center no-repeat;
	cursor:pointer;
}

/*完了*/
.subscribe_complete h2{
	color:#ff9600;
	line-height:1.5;
	margin-bottom:15px;
}
.subscribe_complete p{
	line-height:1.5;
	margin-bottom:35px;
}
.st_backtotop a{
	-webkit-border-radius:2px;
	-moz-border-radius:2px;
	-ms-border-radius:2px;
	-o-border-radius:2px;
	border-radius:2px;
	display:block;
	width:100%;
	border:2px solid #000;
	text-align:center;
}


@media screen and (min-width: 641px) {

/*申し込みステップ*/
.subscribe_step{
	padding:25px 0 45px;
	font-size:1.5rem;
}
.subscribe_step:after{
	top:91px;
}
.subscribe_step_box{
	padding-bottom:40px;
}
.subscribe_step_box:after{
	top:55px;
}

/*入力・確認*/
.subscribe_description{
	font-size:1.4rem;
	margin-bottom:30px;
}
	.subscribe_description_mt{
	margin-top:55px;
}
.subscribe_tab{
	font-size:1.5rem;
}
.subscribe_tab dd,.subscribe_tab dt{
	float:left;
	padding:20px 0;
}
.subscribe_tab dt{
	width:23.75%;
	background:#e1f1fa;
	padding-left:3.125%;
}
.subscribe_tab dd{
	width:70%;
	padding-left:3.125%;
}
.subscribe_tab dd,.subscribe_tab dt{
	border-bottom:1px solid #e0e0e0;
}
.subscribe_tab dt span.required{
	margin-right:10.41666666666667%;
}
.st_name label{
	width:9%;
}
.st_name input[type=text]{
	width:34%;
	margin-right:4%;
}
.st_address1_1 label{
	width:5%;
}
.st_address1_1 input[type=text]{
	width:20%;
}
.st_address1_1 input:nth-of-type(2){
	margin-left:2%;
	font-size:1.4rem;
	padding:6px 11px;
}
.st_address1_1 input:nth-of-type(3){
	margin-left:2%;
	font-size:1.4rem;
	padding:7px 12px;
}
.st_address1_3 input[type=text]{
	width:80%;
}
.st_email input{
	width:80%;
}
.st_question textarea{
	height:150px;
}
.st_goconfirm{
	margin:55px auto 0;
	width:75%;
}
.st_goconfirm input{
	font-size:2.3rem;
}
.result_confirm{
	margin-bottom:35px;
}

/*完了*/
.subscribe_complete h2{
	font-size:24px;
}
.subscribe_complete p{
	font-size:1.4rem;
}
.st_backtotop a{
	font-size:1.6rem;
	padding:15px 0;
	width:150px;
}

}
@media screen and (max-width: 640px) {

/*申し込みステップ*/
.subscribe_step{
	padding:5px 0 45px;
	font-size:1rem;
}
.subscribe_step:after{
	top:56px;
}
.subscribe_step_box{
	padding-bottom:15px;
}
.subscribe_step_box:after{
	top:40px;
}

/*入力・確認*/
.subscribe_description{
	font-size:1.2rem;
	margin-bottom:20px;
}
	.subscribe_description_mt{
	margin-top:15px;
}
.subscribe_tab{
	font-size:1.2rem;
}
.subscribe_tab dt{
	padding:7px;
}
.subscribe_tab dd{
	padding:25px 0;
}
.subscribe_tab dt{
	background:#e5f6ff;
	border-bottom:1px solid #2e95d0;
	color:#2e95d0;
}
.subscribe_tab dt span.required{
	margin-top:2px;
}
.st_name label{
	width:10%;
}
.st_name input[type=text]{
	width:30%;
	margin-right:3%;
}
.st_address1_1 label{
	width:5%;
}
.st_address1_1 input[type=text]{
	width:27%;
}
.st_address1_1 input:nth-of-type(2){
	margin-left:2%;
	font-size:1rem;
	padding:4px 7px;
	margin-top:3px;
}
.st_address1_1 input:nth-of-type(3){
	margin-left:2%;
	font-size:1rem;
	padding:5px 8px;
	margin-top:3px;
}
.st_address1_3 input[type=text]{
	width:95%;
}
.st_email input{
	width:95%;
}
.st_question textarea{
	height:100px;
}
.st_goconfirm{
	margin:15px auto 0;
	width:100%;
}
.st_goconfirm input{
	font-size:1.8rem;
}
.confirm_tab dd{
	padding:15px 0;
}
.result_confirm{
	margin-bottom:20px;
}

/*完了*/
.subscribe_complete h2{
	font-size:18px;
}
.subscribe_complete p{
	font-size:1.2rem;
}
.st_backtotop a{
	font-size:1.4rem;
	padding:10px 0;
	width:100px;
}

}