@charset "utf-8";


/* ===================================================================
 Reset
=================================================================== */

*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
html { font-size: 62.5%; /* 10px */ overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td {
 margin: 0; padding: 0; border: 0; font-weight: normal; font-size: 100%; vertical-align:baseline; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
article, header, footer, aside, figure, figcaption, nav, section { display:block; }
body { line-height: 1; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }
ol, ul { list-style: none; list-style-type: none; }

/* ===================================================================
 Style
=================================================================== */
body { width:100%; padding:0; margin:0 auto; text-align: center; font-size: 14px; letter-spacing:0.05em; line-height:1.2;background-color: #E6F1F2; color:#111;
 font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;}
#wrap { width: 100%; margin: 0 auto;}

img { -ms-interpolation-mode: bicubic; border: 0; vertical-align: middle;}
a,
a:visited { color: #333; text-decoration: underline; }
a:hover { color: #999; text-decoration: underline; opacity:0.75; filter: alpha(opacity=75); -webkit-transition: all .3s; transition: all .3s; }

small { }
p { }

/* ヘッダー
-------------------------------------------------- */
header { width:100%; max-width:680px; margin: 0 auto; background:#FFF; border-right:1px solid #333; border-left:1px solid #333;  }
header:after { content:" "; display:block; clear:both;}
.head { width: 96%; max-width:680px; margin: 0 auto;}
.head h1 { float: left; width:40%; text-align:left;}
.head .add { float: right; width:60%; font-size:13px; text-align:right; padding-top:10px;}

@media only screen and (max-width: 639px) {
	.head h1 { float:none; width:100%; margin:0 auto;}
	.head .add { float:none; width:100%; margin:0 auto; text-align:center;}
}

/* タイトル
-------------------------------------------------- */
h2 { margin: 0 auto; text-align:center; padding: 0; color:#000; font-size:32px; letter-spacing:0.02em; font-weight: normal; line-height:1; }
h2 img { max-width:100%;}

/* 見出し
-------------------------------------------------- */
h3 { font-weight:bold; font-size:20px; margin-top:40px; margin-bottom:10px; }
.page-complete h3 { font-size:26px; margin-top:50px; }


/* メインボックス
-------------------------------------------------- */
.main { background-color:#fff; width:100%; max-width:680px; padding:20px 0 ; margin: 0 auto; border:1px solid #333; border-top:none;}
.main p { text-align:left; margin:0 15px 10px 15px;}

.main .entry { border:2px solid #F00; width:95%; margin:10px auto; padding:10px;}
.main .entry p { margin:0; color:#F00; font-size:16px; font-weight:bold; text-align:center; line-height:150%;}
.main .entry p strong { padding:0 5px; background:#FF9;}


/* ===================================================================
 フォーム
=================================================================== */

.formWrap { width:96%; max-width:680px; margin:0 auto 30px auto; text-align:center;}
.formWrap p { margin: 0 auto 1em auto; padding: 0; text-align: left;}
.formWrap em { font-style: normal; font-weight: bold; color: #D80000;}


/* Table
-------------------------------------------------- */
.formTable { width:100%; font-size: 14px; background-color: #FFF; margin:5px auto 20px auto; border-collapse: collapse; }
.formTable:after { content:" "; display:block; clear:both;} 
.formTable em { font-size:13px; font-weight:bold; color:#F00; font-style:normal; }
.formTable th,
.formTable td { text-align:left; border:1px solid #CCC; vertical-align: top; font-size:16px;}
.formTable th { width: 30%; padding: 10px 10px 10px 20px; text-align: left; vertical-align: middle; color:#484848;
 background: #FDEFD9 url(parts/ico.gif) no-repeat 7px 48%;}
.formTable td { padding:15px 10px 10px 10px;}
.formTable.secure td { vertical-align: middle;}

.formTable th span { font-size: 12px; }

/* 必須 */
.formTable th span { float:right; margin: 0 0 0 8px; padding: 3px 4px; background: #F00; color: #FFF;
 font-size: 11px; font-weight: normal; line-height:1;
 vertical-align: middle; display: inline-block;}


@media only screen and (max-width: 639px){
	.formTable { width: 100%; }
	.formTable th { width: 100%; display: block; border-top: none; padding: 7px 10px 7px 20px; }
	.formTable td { width: 100%; display: block; border-top: none; padding: 12px 10px 12px 10px; }
	.formTable tr th { border-bottom: none; }
	.formTable tr:first-child th { border-top: 1px solid #999; }
}



/* Form fields, general styles first.
-------------------------------------------------- */
btn, input, select, textarea { margin: 0 0 2px 0; vertical-align: baseline; font-size:16px;}
btn, input { line-height: normal;}

btn,
html input[type="btn"],
input[type="reset"],
input[type="submit"] { -webkit-appearance: btn; cursor: pointer;}
btn[disabled],
input[disabled] { cursor: default;}
input[type="checkbox"],
input[type="radio"] { padding: 0;}

label { margin-right:0.5em;}

button, textarea, select, input[type="text"], input[type="tel"], input[type="email"] { border: 1px solid #BBB; font-family: inherit; }
input, textarea { color: #141412;}
input:focus, textarea:focus { border: 1px solid #BBB!important; outline: 0; background-color: #FFFEE9!important;}

form input[type="text"], input[type="tel"], input[type="email"], form textarea{ width: 99%; }
form input[type="text"].input_m,
form input[type="tel"].input_m,
form input[type="email"].input_m { width: 50%;}
form input[type="text"].input_s,
form input[type="tel"].input_s,
form input[type="email"].input_s { width: 30%;}
form input[type="text"].input_xs,
form input[type="tel"].input_xs,
form input[type="email"].input_xs { width: 20%;}
@media only screen and (max-width: 639px){
	form input[type="text"].input_m,
	form input[type="tel"].input_m,
	form input[type="email"].input_m {width: 100%;}
	form input[type="text"].input_s,
	form input[type="tel"].input_s,
	form input[type="email"].input_s {width: 50%;}
	form input[type="text"].input_xs,
	form input[type="tel"].input_xs,
	form input[type="email"].input_xs {width: 30%;}
}

/* Buttons
-------------------------------------------------- */
button,
input[type="submit"],
input[type="button"],
input[type="reset"] {
padding: 13px 20px 10px!important;
border-radius: 5px;
letter-spacing:0.1em; line-height:1; text-decoration: none;
display: inline-block;
}

@media only screen and (max-width: 639px){
	button,
	input[type="submit"],
	input[type="button"],
	input[type="reset"] {
		padding: 13px 13px 11px!important;  }
}


button,
input[type="submit"],
input[type="button"],
input[type="reset"] {
 background: #FFF; border: 1px solid #BBB; font-size: 16px!important; color: #111; 
 background: -moz-linear-gradient(top, #FFF, #EEE);
 background: -webkit-linear-gradient(top, #FFF, #EEE);
 background: linear-gradient(to bottom, #FFF, #EEE);
}

button,
input[type="button"][name=back]{
 background: #FFF; border: 1px solid #BBB; font-size: 14px!important; color: #111; 
 background: -moz-linear-gradient(top, #FFF, #EEE);
 background: -webkit-linear-gradient(top, #FFF, #EEE);
 background: linear-gradient(to bottom, #FFF, #EEE);
}

button:hover,
button:focus,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:focus,
input[type="button"]:focus,
input[type="reset"]:focus {
filter: alpha(opacity=70); -moz-opacity:0.70; opacity:0.70;
-webkit-transition: all .3s; transition: all .3s;
}

button:active,
input[type="submit"]:active,
input[type="button"]:active,
input[type="reset"]:active {
filter: alpha(opacity=70); -moz-opacity:0.70; opacity:0.70;
-webkit-transition: all .3s; transition: all .3s;
}

#submit-wraper.is-disabled input[type="submit"],
#submit-wraper.is-disabled input[type="submit"]:hover,
#submit-wraper.is-disabled input[type="submit"]:focus,
#submit-wraper.is-disabled input[type="submit"]:active
{
background-color: #D8D8D8 !important;
border: 1px solid #D8D8D8;
cursor: default;
filter: alpha(opacity=100); -moz-opacity:1; opacity: 1;
}


/* エラー
-------------------------------------------------- */
.errMsgMain { border: #f12 2px solid; color: #f12; padding: 10px 30px 0 30px; margin-bottom: 30px;}
.errMsgMain ul{ padding: 15px; margin: 0!important; text-align: left; color: #f12; font-size: 100%; font-weight: bold;}
.errtxt-main-wrap {}
.errtxt-main-wrap p {}

@media only screen and (max-width: 639px){
	.errMsgMain { margin: 0 auto 20px; padding: 5px 10px; }
}

form .errtxt { background: url("./parts/ico_error.gif") no-repeat 0 1px; font-size: 90%; margin-bottom: 5px!important; padding: 4px 5px 3px 5px;}
form .errtxt span { display: block; color: #E8541F; font-weight: bold; line-height: 0.8; padding-left: 18px;}
form input.error,
form select.error,
form textarea.error,
form input[type="checkbox"].error + label,
form input[type="radio"].error + label { background-color: #fff1f1; border: 1px solid #eecfcf;}

/* parts
-------------------------------------------------- */


/* パンくず
-------------------------------------------------- */
.progress { margin: 30px 0;}
.progress {
	margin-bottom: 20px;
	overflow: hidden;
	background-color: #CCC;
	border-radius: 4px;
	height: 30px;
}
.progress li { list-style: none; display:table-cell; position:relative; background:#CCC; }

.progress li.progress-bar.current:last-child:before,
.progress li.progress-bar.current:last-child:after{
  display:none;
}

.progress li.progress-bar.current:before,
.progress li.progress-bar.current:after{
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  margin: auto;
}

.progress li.progress-bar.current:before{
  top:-15px;
  right:-1em;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  border-width: 30px 0 30px 1em;
  z-index: 10;
}

.progress li.progress-bar.current:after{
  top:-15px;
  right:-.8em;
  border-style: solid;
  border-color: transparent transparent transparent #9A961C;
  border-width: 30px 0 30px 1em;
  z-index: 10;
}

.progress-bar { float: left; width: 0; height: 100%; line-height:30px;
 color: #fff; text-align: center; background-color: #CCC;
 -webkit-transition: width .6s ease; -o-transition: width .6s ease; transition: width .6s ease;
}
.progress-bar.current { width: 40%; background-color: #9A961C;}
.progress-bar.no-current1 {width:30%; background-color:#CCC;}
.progress-bar.no-current2 {width:30%; background-color:#CCC;}

/* */
.heigth_em10 { height: 10em;}

/* プライバシーポリシー
-------------------------------------------------- */
.privacy_policy{ margin: 30px auto 30px auto; width: 100%; font-size:90%; }
.privacy_policy h3{ margin:0 auto 10px auto; font-size:18px; }
.privacy_policy p { }

.acceptance { margin-top: 5px; padding: 10px; height: 200px; background-color: #F9F9F9; border: 1px solid #E5E5E5; overflow-y: scroll;}
.acceptance ol { margin: 0; padding: 0; font-weight: normal; list-style:none;}
.acceptance li { font-weight: normal;}
.acceptance h4 { margin-top: 18px; margin-bottom: 4px;}

@media only screen and (max-width: 639px){
	.privacy_policy{ width: 100%; }
}


/* Copyright
-------------------------------------------------- */
footer { padding:10px 0 ; margin:0 auto; }
footer a, footer a:hover { color: #555; }
.copyright { font-size:11px; color:#555;}




