@charset "utf-8";

/*-------------------------------------------------------------------------------------------------------------------------------
* contact 
------------------------------------------------------------------------------------------------------------------------------- */
.error{
	display: block;
	color: #F00;
}

/* box01 */
.box01 li{
	margin-bottom: 2em;
}
@media all and (min-width: 768px) {
	.box01{
		display: table;
		margin: 0 auto;
		padding-bottom: 20px;
	}
	.box01 li{
		line-height: 2;
	}
}

/* tel */
.tel{
	background: #ededed;
	padding: 15px 20px;
	text-align: center;
}
.tel h2{
	font-size: 16px;
	margin-bottom: 5px;
}
.tel dl dt img{
	width: 240px;
}
.tel dl dd{
	margin-top: 10px;
	font-size: 12px;
}
@media all and (min-width: 768px) {
	.tel{
		padding: 40px 20px;
	}
	.tel h2{
		font-size: 24px;
	}
	.tel dl dt img{
		width: 400px;
	}
	.tel dl dd{
		margin-top: 20px;
		font-size: 15px;
	}
}

/* web */
.web{
	padding: 40px 0 0;
}
.web h2{
	margin-bottom: 15px;
	text-align: center;
	font-size: 16px;
	line-height: 1.4;
}
.web .table01{
	width: 100%;
	margin-top: 10px;
}
.web .table01 th{
	display: block;
	width: 100%;
	padding: 10px;
	background: #ededed;
	font-weight: normal;
}
.web .table01 th.required{
	background: url(../img/icon01.svg) no-repeat center right 10px;
	background-size: 33px;
	background-color: #ededed;
}
.web .table01 td{
	display: block;
	width: 100%;
	padding: 10px 0 20px;
}
.web .table01 .txt_ex{
	padding: 5px 10px 0;
	color: #666666;
}
.web .btn01{
	margin: 20px 0;
}
.web .btn02 li:first-child{
	margin-bottom: 15px;
}
@media all and (min-width: 768px) {
	.web{
		padding: 100px 0 0;
	}
	.web h2{
		font-size: 24px;
	}
	.web .table01{
		border-top: 1px solid #d1d1d1;
	}
	.web .table01 th{
		display: table-cell;
		vertical-align: middle;
		text-align: left;
		width: 315px;
		padding: 20px;
		background: #ededed;
		border-bottom: 1px solid #d1d1d1;
	}
	.web .table01 th.required{
		background: url(../img/icon01.svg) no-repeat center right 20px;
		background-size: 45px;
		background-color: #ededed;
	}
	.web .table01 td{
		display: table-cell;
		vertical-align: middle;
		width: 665px;
		padding: 20px;
		border-bottom: 1px solid #d1d1d1;
	}
	.web .table01 td ul{
		overflow: hidden;
	}
	.web .table01 .box_in{
		float: left;
		width: 400px;
		padding-right: 20px;
	}
	.web .table01 .txt_ex{
		float: left;
		width: 225px;
		font-size: 15px;
		padding: 5px 10px;
	}
	.web .table01 .ind{
		display: block;
		padding-left: 2em;
		text-indent: -2em;
		line-height: 1.3;
	}
	.web .btn01{
		width: 530px;
		margin: 50px auto 30px;
	}
	.web .btn02{
		width: 700px;
		margin: 0 auto;
		overflow: hidden;
	}
	.web .btn02 li{
		float: right;
		width: 340px;
	}
	.web .btn02 li:first-child{
		margin-left: 20px;
	}
	.web .txt01{
		text-align: center;
	}
}


/* formタグ
===================================================================== */
input[type="text"] {
	box-sizing: border-box;
	width: 100%;
	padding: 10px;
	font-size: 16px;
	border-radius: 0;
}
input[type="number"] {
	box-sizing: border-box;
	width: 100%;
	padding: 10px;
	font-size: 16px;
	border-radius: 0;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
input[type="number"] {
	-moz-appearance: textfield;
}
select{
	padding: 10px;
	border-radius: 0;
	font-size: 16px;
}
textarea{
	box-sizing: border-box;
	width: 100%;
	padding: 10px;
	height: 170px;
	border-radius: 0;
	font-size: 16px;
}
button{
	box-sizing: border-box;
	width: 100%;
	padding: 13px;
	background: #FFF;
	border: 2px solid #014099;
	border-radius: 0;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.1em;
	color: #014099;
	cursor: pointer;
}
button.arrowR{
	background: url(../../common/img/btn_arrow01_sp.png) no-repeat center right 20px #FFF;
	background-size: 21px 10px;
}
button.arrowL{
	background: url(../../common/img/btn_arrow03_sp.png) no-repeat center left 20px #FFF;
	background-size: 21px 10px;
}

@media all and (min-width: 768px) {
	button{
		font-size: 18px;
		padding: 18px;
	}
	button.arrowR{
		background: url(../../common/img/btn_arrow01.png) no-repeat center right 20px #FFF;
		background-size: 45px 12px;
	}
	button.arrowL{
		background: url(../../common/img/btn_arrow03.png) no-repeat center left 20px #FFF;
		background-size: 45px 12px;
	}
}


/*-------------------------------------------------------------------------------------------------------------------------------
* comfirm 
------------------------------------------------------------------------------------------------------------------------------- */
.web.comfirm{
	padding: 0;
}
.web.comfirm h3{
	text-align: center;
	font-size: 16px;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}
.web.comfirm h3 span{
	padding-bottom: 5px;
	border-bottom: 1px solid #000;
}
.web.comfirm .table01{
	border-bottom: 1px solid #d1d1d1;
}
.comfirm_txt01{
	margin: 0 0 20px;
}
.comfirm_txt02{
	margin: 20px 0;
}
@media all and (min-width: 768px) {
	.web.comfirm{
		padding: 0;
	}
	.web.comfirm h3{
		font-size: 24px;
		margin-top: -20px;
		margin-bottom: 50px;
	}
	.comfirm_txt01{
		text-align: center;
		margin: 0 0 50px;
	}
	.comfirm_txt02{
		text-align: center;
		margin: 50px 0 40px;
	}
}


/*-------------------------------------------------------------------------------------------------------------------------------
* complete 
------------------------------------------------------------------------------------------------------------------------------- */
.complete_txt01{
	padding: 0 0 100px;
	text-align: center;
}
@media all and (min-width: 768px) {
	.complete_txt01{
		line-height: 2;
		padding: 0 0 250px;
		text-align: center;
	}
}


