@charset "utf-8";


/* common
-----------------------------------------------*/
div#contents{
	overflow:visible;
}

/* inquiry
-----------------------------------------------*/
p#outline:after{
	width:calc(100% - 10px - 30px);
	content:"";
	display:block;
	margin:30px auto;
	padding:calc(100%*0.0511 - 10px*0.0511 - 60px*0.0511 + 30px) 30px 30px;
	border:5px #ebebeb solid;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:calc(100% - 60px) auto;
	background-image:url(../../inquiry/img/flow1.png);
}
#inquiry_confirm p#outline:after{background-image:url(../../inquiry/img/flow2.png);}
#inquiry_thanks  p#outline:after{background-image:url(../../inquiry/img/flow3.png);}


/* form
-----------------------------------------------*/

dl#form{
	max-width:1024px;
	margin:10px auto 30px;
	padding-bottom:30px;
	letter-spacing:-0.4em;
	border-top:1px #ccc solid;
}
dl#form dt,
dl#form dd{
	display:inline-block;
	*display:inline;
	margin-top:10px;
	padding-top:24px;
	vertical-align:top;
	letter-spacing:normal;
	zoom:1;
	border-top:1px #ccc solid;
}
dl#form dt:nth-child(2),
dl#form dd:nth-child(3){
	border-top:none;
}
dl#form dt{
	width:45%;
	min-height:26px;
	padding:10px 5% 0 0;
	padding-left: calc(3em + 20px);
	text-indent: calc(-3em - 20px);
}
dl#form dt:before{
	width:3em;
	content:"必須";
	display:inline-block;
	margin:0 10px 0 0;
	padding:13px 5px;
	color:white;
	text-align:center;
	text-indent: 0;
	border-radius:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	-ms-border-radius:5px;
	background-color:#006cb5;
}
dl#form dt.option:before{
	content:"任意";
	background-color:#afafaf;
}
dl#form dd{
	width:55%;
}
dl#form h2.ttl{
	margin:90px 0 60px;
	padding:15px 0 15px 20px;
	font-size:24px;
	font-weight:bold;
	line-height:1;
	letter-spacing:normal;
	border-left:5px #006cb5 solid;
}
dl#form dd input[type="text"],textarea,select{
	width:100%;
	margin-bottom:1px;
	padding:10px;
	font-size:100%;
	border:3px #e1e1e1 solid;
	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
}
dl#form dd select{
	width:auto;
	max-width:100%;
}
dl#form dd input#zip{
	width:10em;
	margin:0 10px 10px 0;
}
dl#form dd select#pref{
	width:10em;
	margin-bottom:10px;
	padding:10px 10px 7px;
	background-color:white;
}

dl#form dd span.radio,
dl#form dd span.checkbox{
	display:block;
	margin-right:15px;
	margin-bottom:5px;
	white-space:nowrap;
}
dl#form dd input[type="radio"],
dl#form dd input[type="checkbox"]{
	width: 24px;
	height: 24px;
	margin-top:-5px;
}
dl#form dd input[type="checkbox"]{
	margin-top:-1px;
}
@media screen and (max-width: 1054px){
	dl#form dt{
	}
	dl#form dd{
	}
	dl#form dd input[type="text"],textarea{
	}
}
@media screen and (max-width: 730px){
	dl#form dt{
		width:auto;
		display:block;
		margin: 15px 0;
		padding:15px 0 0 65px;
		background-position:left 18px;
	}
	dl#form dt.option{
		background-position:left 18px;
	}
	dl#form dd{
		width:100%;
		margin-top:0;
		padding-top:0;
		border-top:none;
	}
}
@media screen and (max-width: 420px){
	dl#form h2.ttl {
	  font-size: 20px;
	}
}


/* privacy*/
input#policy{
	margin-left:0;
}
label[for="policy"] {
	display:inline-block;
	margin-bottom:5px;
}


/* submit */
div#submit{
	width: 100vw;
	margin: 30px 0 60px calc(-50vw + 50%);
	padding:45px 30px 40px;
	background-color:#ebebeb;
}



.button {
	width:100%;
	max-width:480px;
	display:block;
	margin:0 auto 20px;
	padding:20px 30px;
	color:#006cb5;
	font-size:18px;
	text-align:center;
	text-decoration:underline;
	line-height:1;
	border:1px #006cb5 solid;
	border-radius:calc(0.5em + 20px);
	-webkit-border-radius:calc(0.5em + 20px);
	-moz-border-radius:calc(0.5em + 20px);
	-ms-border-radius:calc(0.5em + 20px);
	cursor: pointer;
	transition: all 0.3s linear;
	background-color: #fff;
}
.button:hover {
	color:#fff;
	text-decoration:none;
	border:1px #ff6400 solid;
	background: #ff6400;
}
div#submit p.note{
	font-size:16px;
	text-align:center;
}
@media screen and (max-width: 510px){
	.button {
		min-width:240px;
		padding:12px 15px 9px;
	}
}

/* errer */
p.err{
	margin:30px auto;
	padding:20px;
	color:red;
	font-size:20px;
	font-weight:bold;
	text-align:center;
	border:5px #e1e1e1 solid;
	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
}

/* thanks */
p.thanks{
	text-align:center;
}


/* inquiry
============================================================*/
#inquiry_form dl#form dt:nth-child(9),
#inquiry_form dl#form dd:nth-child(10){
	border-top:none;
}


/* newsletter
============================================================*/
