@charset "utf-8";

/* -------------------------------------------------------------------------

		form styles
		
		フォーム部分のスタイル
		・ページ全体を囲むarticleタグにクラス名form_contentを付ける
		・例外としてクーポン券ページでも使用（colorboxで表示する部分にフォームパーツがあるため）
		
------------------------------------------------------------------------- */

/* form
------------------------------------------------- */
.noscript {
	background-color:#6d578f;
	width:100%;
	margin:0 auto;
	z-index:100 !important;
	text-align:center;
}

.noscript p{
	padding:20px;
	color:#fff;
}


ul.require_attention{
	line-height:1.8em;
	/*padding-bottom:40px;*/
	/*フォーム復活したら戻す*/
	/*border-bottom:1px solid #ddd;*/
}
ul.require_attention p{
	font-size:116%;
	margin-bottom:5px;
}
.require{
	margin:0 10px;
	padding:2px 3px;
	background-color:#6d578f;
	color:#fff;
	font-size:77%;
	*display:inline-block;
	*zoom:1;
	white-space: nowrap;
	position:relative;
}
.form_block{
	overflow:hidden;
	width:100%;
	border-bottom:1px solid #ddd;
}
.form_block_label{
	float:left;
	width:25%;
	margin:25px 0;
	padding-right:20px;
	text-align:left;
	font-weight:bold;
	position:relative;
}
.form_block_label span{
	font-weight:normal;
	text-align:right;
	position:absolute;
	right:30px;
}
.form_block_content{
	overflow:hidden;
}
.form_block input,
.form_block select,
.form_block textarea,
.form_question input,
.form_question select,
.form_question textarea{
	padding:5px;
}
.form_block input[type="text"],
.form_block input[type="number"],
.form_block input[type="tel"],
.form_block input[type="email"],
.form_block input[type="password"],
.form_block select,
.form_block textarea,
.form_question input[type="text"],
.form_question select,
.form_question textarea{
	background-color:#f5f5f5;
	border:none;
}
.wpcf7c-conf {
	background-color:#fff !important;
}
.form_block textarea{
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-ms-box-sizing:border-box;
	-o-box-sizing:border-box;
	box-sizing:border-box;
	width: 100%;
}
.form_block input[type="radio"],
.form_block input[type="checkbox"],
.form_question input[type="radio"],
.form_question input[type="checkbox"]{
	margin-right:5px;
	line-height:1em;
	padding:1px;
	zoom: 1;
}
.form_block input[type="radio"],
.form_question input[type="radio"]{
	position:relative;
	top:-1px;
	left:1px;
}
.form_block input[type=number]::-webkit-inner-spin-button,
.form_block input[type=number]::-webkit-outer-spin-button{
    -webkit-appearance: none;
}
.form_block input.input_year{
    width: 4.6em;
}
.form_block select.birthday_mont,
.form_block select.birthday_day{
	width:2em;
}
.form_block.single_column .form_block_label,
.form_block.single_column .form_block_content
{
	width: 100%;
}
.form_block.single_column .form_block_label{
	text-align: left;
	margin-bottom: 10px;
}
.form_block.single_column .form_block_content{
	padding-bottom: 20px;
}
.wpcf7c-conf {
	background-color:#fff !important;
}
.wpcf7c-conf-hidden {
	color: #000 !important;
}
label.pointer{
	cursor: pointer;
}

.signin .form_block_label{
	width:30%;
}
.required_char{
	padding-bottom:5px;
	font-size:85%;
	display: inline;
	white-space: nowrap;
}
.form_parts_wrapper{
	overflow:hidden;
	margin:20px 0;
}
.form_parts_label{
	float:left;
	width:15%;
	text-align:left;
}
.form_parts_input{
	overflow:hidden;
}
.top_error_msg{
	color: #ED5858;
	margin-bottom: 20px;
	text-align: center;
	font-size:108%;
	font-weight:bold;
}

.contact_item .wpcf7-list-item {
	display: block;
}

.form_privacy{
	padding:30px 0;
}
.attention_wrapper{
	background: #efefef;
	padding: 20px;
}
.attention_wrapper .attention_title{
	font-size: 100%;
	font-weight: bold;
	padding: 0;
	margin-bottom: 10px;
}

.attention_wrapper li{
	margin:5px;
	line-height:1.5;
}

.attention_icon_block{
	overflow:hidden;
	margin:0 0 20px;
	color:#ED5858;
}

.attention_icon_block span:before{
	font-size:3em;
	float:left;
	display:block;
	top:25px;
}

.attention_icon_block p{
	float:left;
	margin-left:50px;
	font-weight:bold;
	line-height:1.4;
}

.attention_icon_block p em{
	font-size:138.5%;
	font-style:normal;
}
.pass_display{
	font-size: 2em;
	word-break: break-all;
}
.mailremind_error{
	margin-top:30px;
}
.mailremind_error .error,
.mailremind_error .message{
	width:100%;
	text-align:center;
}
.send_btn{
    margin: 40px auto 20px;
    max-width: 420px;
    text-align: center;
    width: 100%;
}
.btn_topback{
    margin: 40px auto 60px;
    max-width: 230px;
    text-align: center;
    width: 100%;
}
.btn_signal{
    margin: 40px auto 60px;
    max-width: 420px;
    text-align: center;
    width: 100%;
}
.btn_bihaku{
	text-align:center;
}
.send_btn input{
	background:url(../img/contact/btn_proceed.png) no-repeat center;
	width:100%;
	max-width:420px;
	background-color:#6d578f;
	padding:15px 0;
	border:none;
	color: #6d578f;
	font-size:123.1%;
	line-height:1.6em;
	text-indent: -9999px;
	cursor:pointer;
}
.send_btn input:hover,
.btn_topback p.btn_topback_p:hover
.btn_bihaku p.btn_topback_p:hover,
.btn_inquire input:hover,
.btn_entry input:hover{
	background-color:#b6abc7;
}
.btn_topback p{
	background:url(../img/contact/btn_topback.png) no-repeat center;
	width:100%;
	max-width:230px;
	background-color:#6d578f;
	border:none;
	font-size:123.1%;
	padding:15px 0;
	line-height:1.6em;
	text-indent: -9999px;
	cursor:pointer;
}
.btn_signal p{
	background:url(../img/contact/btn_signal.png) no-repeat center;
	width:100%;
	background-color:#b6abc7;
	border:none;
	font-size:123.1%;
	padding:15px 0;
	line-height:1.6em;
	text-indent: -9999px;
	cursor:pointer;
}
.btn_bihaku p.bihaku{
	display:inline-block;
	background:url(../img/contact/btn_bihaku_thanks.png) no-repeat center;
	width:100%;
	max-width:485px;
	background-color:#6d578f;
	border:none;
	font-size:123.1%;
	padding:15px 0;
	line-height:1.6em;
	text-indent: -9999px;
	cursor:pointer;
	margin:0 5px 10px;
}
.btn_bihaku p.topback{
	display:inline-block;
	background:url(../img/contact/btn_topback.png) no-repeat center;
	width:100%;
	max-width:230px;
	background-color:#6d578f;
	border:none;
	font-size:123.1%;
	padding:15px 0;
	line-height:1.6em;
	text-indent: -9999px;
	cursor:pointer;
	margin:0 5px 10px;
}
@media screen and (max-width: 600px){
.btn_bihaku p.bihaku{
	display:inline-block;
	background:url(../img/contact/btn_bihaku_thanks.png) no-repeat center;
	-webkit-background-size:100% auto;
	-moz-background-size:100% auto;
	background-size:100% auto;
	width:100%;
	max-width:485px;
	background-color:#6d578f;
	border:none;
	font-size:123.1%;
	padding:15px 0;
	line-height:1.6em;
	text-indent: -9999px;
	cursor:pointer;
	margin:0 5px 10px;
}
}
.send_btn_group{
	margin: 40px auto 60px;
    max-width: 420px;
    text-align: center;
    width: 100%;
}
.btn_inquire input{
	background:url(../img/contact/btn_inquire.png) no-repeat center;
	width:100%;
	max-width:194px;
	background-color:#6d578f;
	padding:15px 0;
	border:none;
	color: #6d578f;
	font-size:123.1%;
	line-height:1.6em;
	text-indent: -9999px;
	cursor: pointer;
}
.btn_entry input{
	background:url(../img/contact/btn_entry.png) no-repeat center;
	width:100%;
	max-width:194px;
	background-color:#6d578f;
	padding:15px 0;
	border:none;
	color: #6d578f;
	font-size:123.1%;
	line-height:1.6em;
	text-indent: -9999px;
	cursor: pointer;
}
.btn_back input{
	background:url(../img/contact/btn_back.png) no-repeat center;
	width:100%;
	max-width:194px;
	background-color:#666666;
	padding:15px 0;
	border:none;
	font-size:123.1%;
	line-height:1.6em;
	text-indent: -9999px;
	float: left;
	cursor: pointer;
	margin-right: 32px;
}
.btn_back input:hover{
	background-color:#999999;
}


/* 表組みレイアウト */
.confirm{
	width: 100%;
	padding: 20px 0 0;
}
.confirm .lt_head{
	white-space: nowrap;
	padding: 20px 0;
}
.confirm .lt_data{
	float: right;
	padding: 20px 0;
}
.layout_table .lt_head{
	clear: both;
	width: 35%;
	margin-right: -39%;
	float: left;
	font-weight:bold;
}
.layout_table .lt_head span{
	font-weight:normal;
}
.layout_table .lt_data .inner{
    margin-left: 22%;
}
.confirm .lt_data{
	width: 100%;
	border-bottom: 1px solid #ddd;
}

.layout_table .lt_head.single_column,
.layout_table .lt_data.single_column
{
	float:none;
	width:100%;
	text-align:left;
}
.layout_table .lt_head.single_column{
	padding: 0 0 10px;
}
.confirm .lt_data.single_column
{
	padding: 0 0 20px;
}
.layout_table .lt_data.single_column .inner{
	margin-left: 0;
}

.layout_table_min dt{
	float:left;
	width:6em;
	padding-right:10px;
}
.layout_table_min dt,
.layout_table_min dd
{	margin-bottom: 10px;}

.form_block select:disabled{
	-webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
}

div.wpcf7-validation-errors {
	background-color: #ef4b4b;
	color: #fff;
	text-align: center;
	border: none !important;
}

div.wpcf7-response-output {
	padding: 0.5em 0 !important;
}

.enquete_detail_area {
	height: 100px;
}

@media screen and (min-width: 481px) and (max-width: 968px) {
	.form_block_label,
	.form_block_label span
	{
		position:static;
	}
	
	.form_block input,
	.form_block select{
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		-ms-box-sizing:border-box;
		-o-box-sizing:border-box;
		box-sizing:border-box;
	}
	.form_block input[size="6"],
	.form_block input[size="13"]
	{
		width:30%;
	}		
	.form_block .w_max,
	.form_block input[size="12"],
	.form_block input[size="24"],
	.form_block input[size="34"],
	.form_block input[size="56"],
	.form_block input[size="70"]{
		width:100%;
	}	
	.form_block select.input_year,
	.form_block select.select_month,
	.form_block select.select_day{
		width:5.5em;
		border:none;
	}		
	.form_block_label,
	.form_parts_label
	{
		float:none;
		width:100%;
		text-align:left;
	}
	.form_block_label{
		margin:0 0 20px;
		padding-top:20px;
	}		
	.form_parts_label{
		font-weight:bold;
		font-size:100%;
		margin:0 0 5px;
	}	
	.form_parts_wrapper{
		margin:0 0 20px 0;
	}
	.question_wrapper{
		padding:20px;
	}	
	.form_block select{
		-moz-appearance:button;
		appearance:button;
		padding-right:28px;
	}
	.layout_table .lt_data .inner {
		margin-left: 26%;
	}
	.check dt.lt_head{
		padding-bottom:0 !important;
	}
}
@media screen and (max-width: 480px){
	.form_block_label,
	.form_block_label span
	{
		position:static;
	}
	.form_block input[size="12"],
	.form_block input[size="24"],
	.form_block input[size="34"],
	.form_block input[size="56"],
	.form_block input[size="70"]{
		width:100%;
	}	
	.form_block select.input_year,
	.form_block select.select_month,
	.form_block select.select_day,
	.form_block select.address1{
		width:4em;
		border:none;
		-webkit-appearance: button;
		-moz-appearance: button;
		appearance: button;
		background:#f5f5f5 url(../img/common/select_menu_arrow.gif) no-repeat;
		background-size:15px 30px;
		background-position: right center;
	}
	.form_block_label,
	.form_parts_label
	{
		float:none;
		width:100%;
		text-align:left;
	}
	.form_parts_wrapper{
		margin:0 0 20px 0;
	}
	.form_block_label{
		margin:0 0 20px;
		padding-top:20px;
	}
	.form_block input[size="6"],
	.form_block input[size="13"]
	{
		width:30%;
	}
	.layout_table .lt_data .inner{
    margin-left: 0;
	}
	.check .lt_head{
		float:none !important;
		padding-bottom:0 !important;
	}
	.check .lt_data .inner{
		margin-left:0;
	}
	.send_btn {
    margin: 30px auto 10px auto;
	}
	.prev_btn{
	margin-right:0;
	}
	.send_btn input{ background-size: 230px;}
	.btn_topback p{	background-size: 146px;}
	.btn_inquire input{	background-size: 112px;}
	.btn_signal p{	background-size: 230px;}
	.btn_back input{ background-size: 130px;}
	.btn_back input{
		margin-bottom:10px;
	}
	.btn_inquire input,
	.btn_back input{
	max-width:100%;
	}
	.form_block input[type="number"],
	.form_block input[type="tel"],
	.form_block input[type="email"],
	.form_block input[type="password"],
	.form_block select,
	.form_block textarea,
	.form_question input[type="text"],
	.form_question select,
	.form_question textarea{
		width:100%;
	}
}