@charset "utf-8";
/* CSS Document */

#formWrap {
	width:95%;
	margin:0 auto;
}

form a{
	text-decoration: underline;
}
form a:hover{
	text-decoration: none;
}

/*郵便番号
----------------------------------*/
/*赤い文字*/
.zip-em{
	font-size:80%;
	color:#C56062;
	margin-bottom:1.5em;
}

.zip-code{
	width:100%;
	position: relative;
}
.zip-code a{
	background:url("../images/icon-link.svg")no-repeat left center;
	padding-left:2em;
	background-size:contain;
	position:absolute;
	top:0.5em;
	left:20em;
}

/*テーブル設定
---------------------------------------------------------------------------*/
/*テーブル*/
.formTable {
	width: 100%;
	table-layout: fixed;
	margin: 40px 0 20px;
	background: #fff;	/*背景色*/
	border-collapse: collapse;
}

.formTable tr{
	border-bottom:1px solid #999;
}

 .formTable td, .formTable th {
	border-top: 1px solid #999;	/*テーブルの枠線の幅、線種、色*/
	padding: 20px;	/*ボックス内の余白*/
	word-break: break-all;
line-height:1.5em;
}
/*左側ボックス*/
.formTable th {
	width: 20%;	/*幅*/
	text-align: center;	/*センタリング*/
	font-weight: normal;
	background: #eee;	/*背景色*/
}

/*必須のアイコンのtd*/
.formTable .must-icon{
	width:8%;
}

/*左側ボックス*/
.formTable th {
	width: 20%;	/*幅*/
	text-align:left;
	font-weight: normal;
	/*background: #eee;	/*背景色*/
}

.formTable th span
{
    float: right;
}

/*table.formTable th, table.formTable td {
	width:auto;
	display:block;
	line-height:2.0em;
}
table.formTable th {
	margin-top:5px;
	border-bottom:0;
}*/
input[type="text"] {
	/*width:100%;*/
	padding:5px;
	margin:5px 0;
	font-size:100%;
	display:block;
	border:solid 1px #ccc!important;
	font-family:YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
textarea {
	width:99%;
	padding:5px;
	margin:5px 0;
	font-size:1.0em;
	font-family:YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	display:block;
	border:solid 1px #ccc!important;
	font-weight:normal;
}

select {
		padding:5px;
	margin:10px 0;
	font-size:100%;
	border:solid 1px #ccc!important;
	color:#606060;
	font-family:YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

input[type="submit"], input[type="reset"] {
	display:block;
	width:100%;
	height:60px;
	
}

input[type="submit"]{
	-webkit-appearance: none;/*safair用*/
	border-radius: 0;/*safair用*/
	background:#839694!important;
	width:250px!important;
	color:#fff!important;
	display:block;
	position:relative;
	margin:60px auto;
	padding:10px 0;
	height:auto;
	font-weight:bold;
	font-size:120%;
	border-radius:60px!important;
	transition: .3s;
	border:none;
	font-family:YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

input[type="submit"]:hover {
  /*マウスオーバー*/
	background:#808080!important;
}

input[type="button"]{
	-webkit-appearance: none;/*safair用*/
	border-radius: 0;/*safair用*/
	background:#cccccc!important;
	width:160px!important;
	color:#fff!important;
	display:block;
	position:relative;
	margin:60px auto;
	padding:10px 0;
	height:auto;
	font-weight:bold;
	font-size:120%;
	border-radius:60px!important;
	transition: .3s;
	border:none;
	font-family:YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
input[type="button"]:hover {
  /*マウスオーバー*/
	background:#70A5C8!important;
}

input[type="radio"]{
	margin:10px 0;
}

#s1{
	margin:10px;
	padding:10px;
}
/*奇数行の背景をライトグレーに*/
#s1 option:nth-child(2n+1){
background:#eee;
}

/*必須*/
.must{
	padding:0px 5px;
	margin:0 5px;
	border-radius:10px;
	background:#B70A0A;
	color:#fff;
	font-size:70%;
	display:inline-block;
	line-height:1.8em;
}

.icon-right{
	float:right;
}
.wl {display:none;}
.ws {display:none;}

.comment{
	margin:40px 0;
	font-size:120%;
}
/*プライバシーポリシーの枠
-------------------------------------------------*/
.privacy{
	width:96%;
	margin:0 0 40px 0;
	padding:20px;
	overflow:auto;
	height:400px;
	background:#F4F4F4;
}
.privacy ul{
	width:100%;
	float:left;
	padding-left:20px;
}
.privacy ul li{
	list-style-type:decimal;
}
.privacy-title{
	font-weight:bold;
}
.privacy-title-top{
	font-weight:bold;
	color:#0387b1;
	font-size:120%;
}


/*ステップ
------------------------------*/
.progressbar {
    position: relative;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
	padding:40px 0 0;
}
.progressbar li {
    position: relative;
    list-style-type: none;
    text-align: center;
    text-transform: uppercase;
    width: 33.333%;
    color: #999999;
    font-weight: bold;
    counter-increment: steps;
}
.progressbar li:before {
    display: block;
    width: 26px;
    height: 26px;
    margin: 7px auto 20px auto;
    content: '';
    line-height: 26px;
    font-size: 12px;
    text-align: center;
    border-radius: 50%;
    background-color: #dddddd;
    content: counter(steps);
}
.progressbar li:after {
    position: absolute;
    z-index: -1;
    top: 15px;
    left: -50%;
    width: 100%;
    height: 2px;
    content: '';
    background-color: #dddddd;
}
.progressbar li:first-child:after {
    content: none;
}
.progressbar li.active,
.progressbar li.complete{
    color: #839694;
}
.progressbar li.active:before,
.progressbar li.complete:before {
    background-color: #839694;
    color: #FFF;
}
.progressbar li.active:after,
.progressbar li.complete:after {
    background-color: #839694;
}


/*画面幅900px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:900px){

/*ta1設定
---------------------------------------------------------------------------*/
/*ta1テーブル*/
.formTable {
	width: 100%;
	table-layout: fixed;
	margin: 40px 0 20px;
	background: #fff;	/*背景色*/
	/*border-bottom:1px solid #999;*/
	border:none;
}
	
/*必須のアイコンのtd*/
.formTable .must-icon{
	width:10%;
}

/*プライバシーポリシーの枠
-------------------------------------------------*/
.privacy{
	width:90%;
	margin:0 0 40px 0;
	padding:20px;
	overflow:auto;
	height:400px;
	background:#F4F4F4;
}
	
input[type="submit"]{
	background:#0068b7!important;
	width:50%!important;
	color:#fff!important;
	display:block;
	position:relative;
	margin:40px auto;
	height:60px;
	font-weight:bold;
	font-size:120%;
	border-radius:10px;
	transition: .3s;
	line-height:1.5em;
}
	
/*ステップ
--------------------------*/
.progressbar .item {
    font-size: 11px;
    line-height: 1.4;
    padding: 10px 0;
}
.progressbar .item:not(:last-child)::before,
.progressbar .item:not(:last-child)::after {
    border-width: 25px;
    border-left-width: 12px;
}
}	





/*画面幅600px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:600px){
	
/*ta1設定
---------------------------------------------------------------------------*/
/*ta1テーブル*/
.formTable {
	width: 100%;
	margin: 20px 0;
	background: #fff;	/*背景色*/
	/*border-bottom:1px solid #999;*/
	border:none;
}
	
.formTable, .formTable td, .formTable th {
	/*border-top: 1px solid #999;	/*テーブルの枠線の幅、線種、色*/
	border:none;
	padding: 5px 5px;	/*ボックス内の余白*/
	word-break: break-all;
line-height:1.5em;
}

/*左側ボックス*/
.formTable th {
	/*width: 100px;	/*幅*/
	text-align: center;	/*センタリング*/
	font-weight: normal;
	/*background: #eee;	/*背景色*/
}
	
input[type="file"] {
	font-size:90%;
}
	
input[type="submit"]{
	background:#0068b7!important;
	width:100%!important;
	}
	
input[type="text"], textarea {
	width:90%;
	padding:5px;
	margin:10px;
	font-size:100%;
	/*display:block;*/
}
	
	

	
/*必須*/
.must{
	padding:0px 5px;
	margin:5px;
	border-radius:10px;
	background:#B70A0A;
	color:#fff;
	font-size:70%;
	display:inline-block;
	line-height:1.8em;
}
	
.wl {display:inline; width: 100%;}
.ws {display:inline; width: 100%;}
	
/*プライバシーポリシーの枠
-------------------------------------------------*/
.privacy{
	width:85%;
	margin:0 0 40px 0;
	padding:20px;
	overflow:auto;
	height:400px;
	background:#F4F4F4;
}
	
/*郵便番号
	-------------------------------*/
.zip-em{
	margin-left:20px;
}
.zip-code{
	padding-bottom:10px;
}
.zip-code a{
	background:url("../images/icon-link.svg")no-repeat left center;
	padding-left:2em;
	background-size:contain;
	position:static;
	margin-left:20px;
}
	
}