@charset "utf-8";
#form .inner, #contents .confirm .inner, #contents .completion .inner {
	max-width: 1050px;
	margin: 0 auto 40px;
	background-color: #FFF;
	border-radius: 10px;
	padding: 40px 55px 20px;
	box-sizing: border-box;
}
@media screen and (min-width: 768px) {
	#form .inner.searchInfo {
		padding: 30px 55px 1px;
	}
	#form .inner.identificationDoc {
		padding: 40px 55px 30px;
	}
}
@media screen and (max-width: 767px) {
	#form .inner, #contents .confirm .inner, #contents .completion .inner {
		margin: 0 0 30px;
		border-radius: 0;
		padding: 30px 6% 20px;
	}
	#form .inner.customerInfo {
		padding: 30px 6% 10px;
	}
	#form .inner.searchInfo {
		padding: 20px 6% 1px;
	}
	#form .inner.formBtnContainer {
		padding: 6% 6% 20px;
	}
}
/*---------------------- contentsInner ----------------------*/
@media screen and (min-width: 768px) {
	#contents .contentsInner.inclStep {
		max-width: 1240px;
		margin: auto;
		position: relative;
	}
	#contents .contentsInner.confirm, #contents .contentsInner.completion {
		padding: 34px 0 0;
	}
	#contents .contentsInner .formStep {
		position: absolute;
		top: 0;
		left: 0;
	}
	#contents .contentsInner .formStep.fix, #contents .contentsInner.confirm .formStep, #contents .contentsInner.completion .formStep {
		position: fixed;
		top: 100px;
		left: 50%;
		margin-left: -620px;
	}
	#contents .contentsInner .formStep img.sp {
		display: none;
	}
	#contents .contentsInner .contentsMain {
		margin-left: 190px;
	}
}
@media screen and (max-width: 767px) {
	#contents .contentsInner.inclStep {
		position: relative;
		padding: 60px 0 0;
	}
	#contents .contentsInner.confirm, #contents .contentsInner.completion {
		padding: 60px 0 0;
	}
	#contents .contentsInner .formStep {
		padding: 15px 0 0;
		height: 60px;
		width: 100%;
		box-sizing: border-box;
		background-color: #F8F8F8;
		position: absolute;
		top: 0;
		left: 0;
	}
	#contents .contentsInner .formStep.fix, #contents .contentsInner.confirm .formStep, #contents .contentsInner.completion .formStep {
		position: fixed;
		z-index: 998;
		top: 60px;
		left: 0;
	}
	#contents .contentsInner .formStep img.pc {
		display: none;
	}
	#contents .contentsInner .formStep img.sp {
		display: block;
		margin: auto;
		height: 30px;
		width: auto;
	}
}
/*---------------------- packList ----------------------*/
#packList {
	max-width: 1050px;
	margin: 0 auto 40px;
	background-color: #FFF;
	border-radius: 10px;
	padding: 0 55px 1px;
	box-sizing: border-box;
}
#packList h2 {
	font-size: 23px;
	font-weight: 500;
	background-image: url(../images/form_pack_list_icon01.svg);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 35px;
}
#packList .btn {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.035em;
	color: #FFF;
	text-align: center;
	line-height: 60px;
	border-radius: 30px;
	background-color: #139D8D;
	display: block;
}
#packList .btn span {
	font-weight: 500;
}
#packList .packListInner table {
	font-size: 14px;
}
#packList .packListInner table thead th {
	vertical-align: middle;
	text-align: center;
	border: 1px solid #ADADAD;
	box-sizing: border-box;
	background-color: #F8F8F8;
}
#packList .packListInner table thead tr:first-of-type th {
	font-weight: 500;
	color: #FFF;
	background-color: #707070;
}
#packList .packListInner table thead tr:first-of-type th:first-of-type {
	color: #333;
	background-color: #F8F8F8;
	width: 34%;
}
#packList .packListInner table thead td {
	vertical-align: middle;
	text-align: center;
	border: 1px solid #ADADAD;
	box-sizing: border-box;
	background-color: #E6E6E6;
	width: 22%;
}
#packList .packListInner table tbody tr:nth-child(odd) {
	background-color: #FFF;
}
#packList .packListInner table tbody tr:nth-child(even) {
	background-color: #F8F8F8;
}
#packList .packListInner table tbody th {
	font-size: 13px;
	vertical-align: middle;
	text-align: left;
	border: 1px solid #ADADAD;
	box-sizing: border-box;
	padding-left: 50px;
	background-repeat: no-repeat;
}
#packList .packListInner table tbody tr th.service01 {
	background-image: url(../images/form_pack_list_service_icon01.svg);
	background-position: left 20px center;
}
#packList .packListInner table tbody tr th.service02 {
	background-image: url(../images/form_pack_list_service_icon02.svg);
	background-position: left 16px center;
}
#packList .packListInner table tbody tr th.service03 {
	background-image: url(../images/form_pack_list_service_icon03.svg);
	background-position: left 19px center;
}
#packList .packListInner table tbody tr th.service04 {
	background-image: url(../images/form_pack_list_service_icon04.svg);
	background-position: left 14px center;
}
#packList .packListInner table tbody tr th.service05 {
	background-image: url(../images/form_pack_list_service_icon05.svg);
	background-position: left 14px center;
}
#packList .packListInner table tbody tr th.service06 {
	background-image: url(../images/form_pack_list_service_icon06.svg);
	background-position: left 10px center;
}
#packList .packListInner table tbody tr th.service07 {
	background-image: url(../images/form_pack_list_service_icon07.svg);
	background-position: left 18px center;
}
#packList .packListInner table tbody tr th.service08 {
	background-image: url(../images/form_pack_list_service_icon08.svg);
	background-position: left 20px center;
}
#packList .packListInner table tbody tr th.service09 {
	background-image: url(../images/form_pack_list_service_icon09.svg);
	background-position: left 14px center;
}
#packList .packListInner table tbody tr th.service10 {
	background-image: url(../images/form_pack_list_service_icon10.svg);
	background-position: left 18px center;
}
#packList .packListInner table tbody tr th.service11 {
	background-image: url(../images/form_pack_list_service_icon11.svg);
	background-position: left 20px center;
}
#packList .packListInner table tbody tr th.service12 {
	background-image: url(../images/form_pack_list_service_icon12.svg);
	background-position: left 15px center;
}
#packList .packListInner table tbody tr th.service13 {
	background-image: url(../images/form_pack_list_service_icon13.svg);
	background-position: left 15px center;
}
#packList .packListInner table tbody td {
	vertical-align: middle;
	text-align: center;
	border: 1px solid #DEDEDE;
	box-sizing: border-box;
}
#packList .packListInner table tbody td .circle {
	color: #139D8D;
	font-size: 20px;
}
#packList .packListInner table tbody td .none {
	display: block;
	border-top: 1px solid #DEDEDE;
	width: 25px;
	margin: auto;
}
@media screen and (min-width: 768px) {
	#packList .head {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
		padding: 50px 0;
		width: 810px;
	}
	#packList h2 {
		line-height: 60px;
	}
	#packList .btn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		position: relative;
		overflow: hidden;
		cursor: pointer;
		width: 400px;
	}
	#packList .btn.bottom {
		margin: 45px auto 50px;
	}
	#packList .btn span {
		width: 100%;
		height: 100%;
		z-index: 10;
	}
	#packList .btn span::before {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		width: 0;
		display: block;
		z-index: -1;
		background-color: #0F8477;
		transition: 0.3s;
	}
	#packList .btn span:hover::before {
		width: 100%;
	}
	#packList .packListInner {
		background-color: #F8F8F8;
		border-radius: 10px;
		padding: 30px 0;
	}
	#packList .packListInner table {
		width: 800px;
		margin: auto;
	}
	#packList .packListInner table thead th {
		height: 40px;
	}
	#packList .packListInner table thead td {
		height: 40px;
	}
	#packList .packListInner table tbody th {
		height: 40px;
	}
	#packList .packListInner table tbody td {
		height: 40px;
	}
	#packList .packListInner .capText {
		width: 800px;
		margin: 5px auto 0;
		font-size: 15px;
		color: #616161;
		text-align: right;
	}
}
@media screen and (max-width: 767px) {
	#packList {
		margin: 0 0 30px;
		border-radius: 0;
		padding: 0 6% 5px;
	}
	#packList .head {
		padding: 30px 0;
	}
	#packList h2 {
		font-size: 20px;
		background-position: left top 3px;
		background-size: 24px;
		padding-left: 28px;
		margin: 0 0 20px;
	}
	#packList .btn {
		line-height: 50px;
		border-radius: 25px;
		width: 80%;
		margin: auto;
	}
	#packList .btn.bottom {
		margin: 30px auto 35px;
	}
	#packList .packListInner table {
		font-size: 10px;
	}
	#packList .packListInner table thead th {
		padding: 5px;
	}
	#packList .packListInner table thead td {
		padding: 5px;
	}
	#packList .packListInner table tbody th {
		font-size: 10px;
		padding: 5px 5px 5px 35px;
	}
	#packList .packListInner table tbody tr th.service01 {
		background-position: left 12px center;
		background-size: 11px;
	}
	#packList .packListInner table tbody tr th.service02 {
		background-position: left 10px center;
		background-size: 16px;
	}
	#packList .packListInner table tbody tr th.service03 {
		background-position: left 12px center;
		background-size: 12px;
	}
	#packList .packListInner table tbody tr th.service04 {
		background-position: left 9px center;
		background-size: 17px;
	}
	#packList .packListInner table tbody tr th.service05 {
		background-position: left 8px center;
		background-size: 19px;
	}
	#packList .packListInner table tbody tr th.service06 {
		background-position: left 5px center;
		background-size: 24px;
	}
	#packList .packListInner table tbody tr th.service07 {
		background-position: left 10px center;
		background-size: 15px;
	}
	#packList .packListInner table tbody tr th.service08 {
		background-position: left 11px center;
		background-size: 13px;
	}
	#packList .packListInner table tbody tr th.service09 {
		background-position: left 8px center;
		background-size: 19px;
	}
	#packList .packListInner table tbody tr th.service10 {
		background-position: left 11px center;
		background-size: 14px;
	}
	#packList .packListInner table tbody tr th.service11 {
		background-position: left 11px center;
		background-size: 13px;
	}
	#packList .packListInner table tbody tr th.service12 {
		background-position: left 10px center;
		background-size: 16px;
	}
	#packList .packListInner table tbody tr th.service13 {
		background-position: left 9px center;
		background-size: 18px;
	}
	#packList .packListInner table tbody td {
		padding: 5px;
	}
	#packList .packListInner .capText {
		text-align: right;
		font-size: 13px;
		margin: 5px 0 0;
	}
}
/*---------------------- rentalPrice ----------------------*/
#rentalPrice {
	max-width: 1050px;
	margin: 0 auto 40px;
	background-color: #FFF;
	border-radius: 10px;
	padding: 0 55px 1px;
	box-sizing: border-box;
}
#rentalPrice h2 {
	font-size: 23px;
	font-weight: 500;
	background-image: url(../images/form_rental_price_icon01.svg);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 35px;
}
#rentalPrice .btn {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.035em;
	color: #FFF;
	text-align: center;
	line-height: 60px;
	border-radius: 30px;
	background-color: #139D8D;
	display: block;
}
#rentalPrice .btn span {
	font-weight: 500;
}
#rentalPrice .rentalPriceTable h3 {
	font-size: 18px;
	margin: 0 0 10px;
}
#rentalPrice .rentalPriceInner table {
	width: 100%;
}
#rentalPrice .rentalPriceInner table thead th {
	font-size: 17px;
	height: 40px;
	vertical-align: middle;
	text-align: center;
	border: 1px solid #ADADAD;
	box-sizing: border-box;
	background-color: #D8D8D8;
}
#rentalPrice .rentalPriceInner .rows2 table thead th {
	width: 50%;
}
#rentalPrice .rentalPriceInner table tbody th {
	font-size: 17px;
	height: 40px;
	vertical-align: middle;
	text-align: center;
	border: 1px solid #ADADAD;
	box-sizing: border-box;
	background-color: #F8F8F8;
}
#rentalPrice .rentalPriceInner table tbody td {
	font-size: 18px;
	height: 40px;
	color: #585858;
	vertical-align: middle;
	text-align: right;
	border: 1px solid #DEDEDE;
	box-sizing: border-box;
	background-color: #FFF;
	padding-right: 10px;
}
#rentalPrice .rentalPriceInner table tbody td span {
	font-size: 14px;
	font-weight: 300;
	color: #707070;
}
#rentalPrice .capText {
	font-size: 12px;
	letter-spacing: 0.015em;
	color: #586264;
	line-height: 1.6;
	margin: 10px 0 0;
}
@media screen and (min-width: 768px) {
	#rentalPrice .head {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
		padding: 50px 0;
		width: 810px;
	}
	#rentalPrice h2 {
		line-height: 60px;
	}
	#rentalPrice .btn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		position: relative;
		overflow: hidden;
		cursor: pointer;
		width: 400px;
	}
	#rentalPrice .btn.bottom {
		margin: 45px auto 50px;
	}
	#rentalPrice .btn span {
		width: 100%;
		height: 100%;
		z-index: 10;
	}
	#rentalPrice .btn span::before {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		width: 0;
		display: block;
		z-index: -1;
		background-color: #0F8477;
		transition: 0.3s;
	}
	#rentalPrice .btn span:hover::before {
		width: 100%;
	}
	#rentalPrice .rentalPriceInner {
		background-color: #F8F8F8;
		border-radius: 10px;
		padding: 30px 10px 30px 70px;
	}
	#rentalPrice .rentalPriceTable {
		width: 500px;
	}
	#rentalPrice .rentalPriceInner table thead th {
		width: 90px;
	}
	#rentalPrice .rentalPriceInner table thead th:first-of-type {
		width: 100px;
	}
}
@media screen and (max-width: 767px) {
	#rentalPrice {
		margin: 0 0 30px;
		border-radius: 0;
		padding: 0 6% 5px;
	}
	#rentalPrice .head {
		padding: 30px 0;
	}
	#rentalPrice h2 {
		font-size: 20px;
		background-position: left top 3px;
		background-size: 24px;
		padding-left: 28px;
		margin: 0 0 20px;
	}
	#rentalPrice .btn {
		line-height: 50px;
		border-radius: 25px;
		width: 80%;
		margin: auto;
	}
	#rentalPrice .btn.bottom {
		margin: 30px auto 35px;
	}
	#rentalPrice .rentalPriceInner table thead th {
		font-size: 13px;
		height: 36px;
	}
	#rentalPrice .rentalPriceInner .rows2 table thead th {
		width: 50%;
	}
	#rentalPrice .rentalPriceInner table tbody th {
		font-size: 13px;
		height: 36px;
	}
	#rentalPrice .rentalPriceInner table tbody td {
		font-size: 14px;
		height: 36px;
	}
	#rentalPrice .rentalPriceInner table tbody td span {
		font-size: 10px;
	}
	#rentalPrice .capText {
		font-size: 10px;
	}
}
/*---------------------- rentalInfo ----------------------*/
#form .inner.rentalInfo h2 {
	font-size: 33px;
	font-weight: 700;
	line-height: 40px;
	border-left: 4px solid #139D8D;
	padding-left: 15px;
	margin: 0 0 35px;
}
#form .rentalInfo dl {
	border-top: 1px solid #DEDEDE;
}
#form .rentalInfo dt {
	font-size: 18px;
	font-weight: 700;
	color: #139D8D;
	padding: 15px 0 0;
	margin: 0 0 25px;
}
#form .rentalInfo dt span {
	font-size: 16px;
	font-weight: 700;
	color: #139D8D;
	display: inline-block;
	line-height: 40px;
	letter-spacing: 0.045em;
	width: 40px;
	text-align: center;
	border: 2px solid #139D8D;
	border-radius: 50%;
	margin-right: 15px;
}
#form .rentalInfo dt p.link a {
	font-size: 12px;
	font-weight: 400;
	color: #139D8D;
	text-decoration: none;
}
@media screen and (min-width: 768px) {
	#form .rentalInfo dl {
		margin: 0 0 40px;
	}
	#form .rentalInfo dl.selectTraffic, #form .rentalInfo dl.selectPack, #form .rentalInfo dl.selectPeriod, #form .rentalInfo dl.selectOption {
		margin: 0 0 10px;
	}
	#form .rentalInfo dl.selectDevice {
		margin: 0 0 15px;
	}
	#form .rentalInfo dt {
		position: relative;
	}
	#form .rentalInfo dt p.link {
		position: absolute;
		right: 0;
		top: 20px;
	}
	#form .rentalInfo dd {
		padding-left: 60px;
	}
}
@media screen and (max-width: 767px) {
	#form .inner.rentalInfo h2 {
		font-size: 28px;
		line-height: 35px;
		margin: 0 0 25px;
	}
	#form .rentalInfo dl {
		margin: 0 0 20px;
	}
	#form .rentalInfo dl.inputQuantity {
		margin: 0 0 40px;
	}
	#form .rentalInfo dt {
		font-size: 16px;
		margin: 0 0 20px;
	}
	#form .rentalInfo dt span {
		font-size: 14px;
		line-height: 38px;
		width: 38px;
	}
	#form .rentalInfo dt p.link {
		margin-top: -10px;
		margin-left: 58px;
	}
}
/*---------------------- rentalInfo radio button / check box ----------------------*/
#form .rentalInfo dl dd ul.radioBtn, #form .rentalInfo dl dd ul.checkBox, #form .customerInfo dl dd ul.radioBtn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#form .rentalInfo dl dd ul.radioBtn.mhidden, #form .rentalInfo dl dd ul.checkBox.mhidden, #form .customerInfo dl dd ul.radioBtn.mhidden {
	margin: 0 0 -25px;
}
#form .rentalInfo dl dd ul.radioBtn li, #form .rentalInfo dl dd ul.checkBox li, #form .customerInfo dl dd ul.radioBtn li {
	list-style: none;
}
#form .rentalInfo dl dd ul.radioBtn li input, #form .rentalInfo dl dd ul.checkBox li input, #form .customerInfo dl dd ul.radioBtn li input {
	display: none;
}
#form .rentalInfo dl dd ul.radioBtn li label, #form .rentalInfo dl dd ul.checkBox li label, #form .customerInfo dl dd ul.radioBtn li label {
	display: inline-block;
	position: relative;
	cursor: pointer;
	border: 1px solid #DEDEDE;
	border-radius: 10px;
	text-align: center;
	box-sizing: border-box;
}
#form .rentalInfo dl dd ul.radioBtn li label:before, #form .rentalInfo dl dd ul.checkBox li label:before, #form .customerInfo dl dd ul.radioBtn li label:before {
	position: absolute;
	content: "";
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 1px solid #DEDEDE;
	background-color: #FFFFFF;
}
#form .rentalInfo dl dd ul.radioBtn li input[type="radio"]:checked + label, #form .rentalInfo dl dd ul.checkBox li input[type="checkbox"]:checked + label, #form .customerInfo dl dd ul.radioBtn li input[type="radio"]:checked + label {
	background-color: #F5FAF8;
	border: 1px solid #139D8D;
}
#form .rentalInfo dl dd ul.radioBtn li input[type="radio"]:checked + label:after, #form .rentalInfo dl dd ul.checkBox li input[type="checkbox"]:checked + label:after, #form .customerInfo dl dd ul.radioBtn li input[type="radio"]:checked + label:after {
	position: absolute;
	content: "";
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #139D8D;
}
#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li:nth-child(4n) {
	margin-right: 0;
}
#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li label {
	padding: 20px 0 25px;
}
#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li label:before {
	top: 10px;
	left: 10px;
}
#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li input[type="radio"]:checked + label:after {
	top: 16px;
	left: 16px;
}
#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li label .icon {
	margin: 0 0 15px;
	display: block;
}
#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li label .text1 {
	font-size: 12px;
	font-weight: 700;
	color: #139D8D;
	margin: 0 0 10px;
	display: block;
}
#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li label .text2 {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.4;
	display: block;
}
#form .rentalInfo dl.selectTraffic dd ul.radioBtn li label {
	padding: 15px 0 15px 40px;
}
#form .rentalInfo dl.selectTraffic dd ul.radioBtn li label:before {
	top: 50%;
	margin-top: -15px;
	left: 10px;
}
#form .rentalInfo dl.selectTraffic dd ul.radioBtn li input[type="radio"]:checked + label:after {
	top: 50%;
	margin-top: -9px;
	left: 16px;
}
#form .rentalInfo dl.selectTraffic dd ul.radioBtn li label .text1 {
	font-size: 12px;
	font-weight: 700;
	color: #139D8D;
	display: block;
	margin: 0 0 5px;
}
#form .rentalInfo dl.selectTraffic dd ul.radioBtn li label .text1.sizeSmall {
	font-size: 10px;
}
#form .rentalInfo dl.selectTraffic dd ul.radioBtn li label .text2 {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.2;
	display: block;
}
#form .rentalInfo dl.selectPeriod dd ul.radioBtn li label {
	padding: 20px 0;
	font-size: 16px;
	font-weight: 500;
}
#form .rentalInfo dl.selectPeriod dd ul.radioBtn li label:before {
	top: 50%;
	margin-top: -15px;
	left: 10px;
}
#form .rentalInfo dl.selectPeriod dd ul.radioBtn li input[type="radio"]:checked + label:after {
	top: 50%;
	margin-top: -9px;
	left: 16px;
}
#form .rentalInfo dl.selectDevice dd ul.radioBtn li label {
	padding: 25px 0 10px;
}
#form .rentalInfo dl.selectDevice dd ul.radioBtn li label:before {
	top: 10px;
	left: 10px;
}
#form .rentalInfo dl.selectDevice dd ul.radioBtn li input[type="radio"]:checked + label:after {
	top: 16px;
	left: 16px;
}
#form .rentalInfo dl.selectDevice dd ul.radioBtn li label .photo {
	margin: 0 0 5px;
	display: block;
}
#form .rentalInfo dl.selectDevice dd ul.radioBtn li label .photo img {
	width: 100px;
	height: 150px;
}
#form .rentalInfo dl.selectDevice dd ul.radioBtn li label .text1 {
	font-size: 14px;
	font-weight: 700;
	display: block;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label {
	text-align: left;
	padding: 15px 0 0 55px;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label:before {
	top: 50%;
	margin-top: -15px;
	left: 10px;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li input[type="checkbox"]:checked + label:after {
	top: 50%;
	margin-top: -9px;
	left: 16px;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option1"] {
	background-image: url(../../common/images/form_option_icon01.svg);
	background-repeat: no-repeat;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option2"] {
	background-image: url(../../common/images/form_option_icon02.svg);
	background-repeat: no-repeat;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option3"] {
	background-image: url(../../common/images/form_option_icon03.svg);
	background-repeat: no-repeat;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option4"] {
	background-image: url(../../common/images/form_option_icon04.svg);
	background-repeat: no-repeat;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option5"] {
	background-image: url(../../common/images/form_option_icon05.svg);
	background-repeat: no-repeat;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option6"] {
	background-image: url(../../common/images/form_option_icon06.svg);
	background-repeat: no-repeat;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option7"] {
	background-image: url(../../common/images/form_option_icon07.svg);
	background-repeat: no-repeat;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option8"] {
	background-image: url(../../common/images/form_option_icon08.svg);
	background-repeat: no-repeat;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option9"] {
	background-image: url(../../common/images/form_option_icon09.svg);
	background-repeat: no-repeat;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option10"] {
	background-image: url(../../common/images/form_option_icon05.svg);
	background-repeat: no-repeat;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label .text1 {
	font-size: 13px;
	font-weight: 700;
	color: #139D8D;
	display: block;
	margin: 0 0 10px;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label .text2 {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	display: block;
	margin: 0 0 20px;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label .text2.sizeMedium {
	font-size: 14px;
	margin: 0 0 10px;
}
#form .rentalInfo dl.selectOption dd ul.checkBox li label .text3 {
	font-size: 12px;
	line-height: 1.4;
	color: #707070;
	display: block;
}
#form .rentalInfo dl.selectPack dd ul.radioBtn li label {
	padding: 20px 0;
	font-size: 16px;
	font-weight: 500;
}
#form .rentalInfo dl.selectPack dd ul.radioBtn li label:before {
	top: 50%;
	margin-top: -15px;
	left: 10px;
}
#form .rentalInfo dl.selectPack dd ul.radioBtn li input[type="radio"]:checked + label:after {
	top: 50%;
	margin-top: -9px;
	left: 16px;
}
#form .rentalInfo dl.inputQuantity dd input[type="text"] {
	display: inline-block;
	font-size: 18px;
	border: 1px solid #DEDEDE;
	border-radius: 5px;
	height: 45px;
	padding: 6px 16px;
	box-sizing: border-box;
	width: 135px;
	vertical-align: bottom;
	margin-right: 10px;
}
#form .rentalInfo dl.inputQuantity dd span {
	font-size: 14px;
	font-weight: 400;
}
#form .rentalInfo dl.selectDelivdate dd .capText {
	margin: -10px 0 30px;
}
#form .rentalInfo dl.selectDelivdate dd .capText p {
	font-size: 13px;
}
@media screen and (min-width: 768px) {
	#form .rentalInfo dl dd ul.radioBtn li, #form .rentalInfo dl dd ul.checkBox li {
		margin-right: 30px;
	}
	#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li {
		margin-right: 25px;
	}
	#form .rentalInfo dl.selectTraffic dd ul.radioBtn li {
		margin-bottom: 30px;
	}
	#form .rentalInfo dl.selectPack dd ul.radioBtn li {
		margin-bottom: 30px;
	}
	#form .rentalInfo dl.selectPeriod dd ul.radioBtn li {
		margin-bottom: 30px;
	}
	#form .rentalInfo dl.selectDevice dd ul.radioBtn li {
		margin-right: 25px;
		margin-bottom: 25px;
	}
	#form .rentalInfo dl.selectDevice dd ul.radioBtn li:nth-child(4n) {
		margin-right: 0;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li {
		margin-bottom: 30px;
	}
	#form .rentalInfo dl dd ul.radioBtn li label, #form .rentalInfo dl dd ul.checkBox li label {
		width: 260px;
	}
	#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li label, #form .rentalInfo dl.selectDevice dd ul.radioBtn li label {
		width: 200px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label {
		height: 140px;
	}
	#form .rentalInfo dl dd ul.radioBtn li label:hover, #form .rentalInfo dl dd ul.checkBox li label:hover {
		background-color: #F8F8F8;
		border: 1px solid #F8F8F8;
		transition: 0.3s;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option1"] {
		background-position: bottom 20px right 8px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option2"] {
		background-position: bottom 22px right 14px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option3"] {
		background-position: bottom 20px right 20px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option4"] {
		background-position: bottom 20px right 20px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option5"] {
		background-position: bottom 30px right 8px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option6"] {
		background-position: bottom 26px right 12px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option7"] {
		background-position: bottom 20px right 20px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option8"] {
		background-position: bottom 24px right 16px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option9"] {
		background-position: bottom 18px right 14px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option10"] {
		background-position: bottom 30px right 8px;
	}
}
@media screen and (max-width: 767px) {
	#form .rentalInfo dl dd ul.radioBtn, #form .rentalInfo dl dd ul.checkBox {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	#form .rentalInfo dl dd ul.radioBtn li, #form .rentalInfo dl dd ul.checkBox li {
		width: 47%;
		margin-bottom: 6%;
	}
	#form .rentalInfo dl dd ul.radioBtn li label, #form .rentalInfo dl dd ul.checkBox li label {
		width: 100%;
	}
	#form .rentalInfo dl dd ul.radioBtn li label:before, #form .rentalInfo dl dd ul.checkBox li label:before {
		width: 22px;
		height: 22px;
	}
	#form .rentalInfo dl dd ul.radioBtn li input[type="radio"]:checked + label:after, #form .rentalInfo dl dd ul.checkBox li input[type="checkbox"]:checked + label:after {
		width: 14px;
		height: 14px;
	}
	#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li label {
		padding: 20px 0 20px;
	}
	#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li input[type="radio"]:checked + label:after {
		top: 15px;
		left: 15px;
	}
	#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li label .text1 {
		font-size: 10px;
	}
	#form .rentalInfo dl.selectCallingPlan dd ul.radioBtn li label .text2 {
		font-size: 14px;
	}
	#form .rentalInfo dl.selectTraffic dd ul.radioBtn li label {
		padding: 15px 0 15px 35px;
	}
	#form .rentalInfo dl.selectTraffic dd ul.radioBtn li label:before {
		margin-top: -12px;
	}
	#form .rentalInfo dl.selectTraffic dd ul.radioBtn li input[type="radio"]:checked + label:after {
		margin-top: -7px;
		left: 15px;
	}
	#form .rentalInfo dl.selectTraffic dd ul.radioBtn li label .text1 {
		font-size: 10px;
		line-height: 1.4;
	}
	#form .rentalInfo dl.selectTraffic dd ul.radioBtn li label .text2 {
		font-size: 15px;
	}
	#form .rentalInfo dl.selectTraffic.tablet dd ul.radioBtn li label .text2 {
		font-size: 11px;
	}
	#form .rentalInfo dl.selectPeriod dd ul.radioBtn li label {
		padding: 15px 0 15px 20px;
		font-size: 15px;
	}
	#form .rentalInfo dl.selectPeriod dd ul.radioBtn li label:before {
		margin-top: -12px;
	}
	#form .rentalInfo dl.selectPeriod dd ul.radioBtn li input[type="radio"]:checked + label:after {
		margin-top: -7px;
		left: 15px;
	}
	#form .rentalInfo dl.selectDevice dd ul.radioBtn li label {
		padding: 20px 0 10px;
	}
	#form .rentalInfo dl.selectDevice dd ul.radioBtn li input[type="radio"]:checked + label:after {
		top: 15px;
		left: 15px;
	}
	#form .rentalInfo dl.selectDevice dd ul.radioBtn li label .photo {
		margin: 0;
	}
	#form .rentalInfo dl.selectDevice dd ul.radioBtn li label .text1 {
		font-size: 11px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li {
		width: 100%;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label {
		padding: 15px 0 15px 55px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label:before {
		margin-top: -12px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li input[type="checkbox"]:checked + label:after {
		margin-top: -7px;
		left: 15px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option1"] {
		background-position: center right 8px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option2"] {
		background-position: center right 23px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option3"] {
		background-position: center right 26px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option4"] {
		background-position: center right 26px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option5"] {
		background-position: center right 8px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option6"] {
		background-position: center right 19px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option7"] {
		background-position: center right 26px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option8"] {
		background-position: center right 20px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option9"] {
		background-position: center right 24px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label[for="option10"] {
		background-position: center right 8px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label .text1 {
		margin: 0 0 5px;
	}
	#form .rentalInfo dl.selectOption dd ul.checkBox li label .text2 {
		margin: 0 0 10px;
	}
	#form .rentalInfo dl.selectPack dd ul.radioBtn li label {
		padding: 15px 0 15px 20px;
		font-size: 15px;
	}
	#form .rentalInfo dl.selectPack dd ul.radioBtn li label:before {
		margin-top: -12px;
	}
	#form .rentalInfo dl.selectPack dd ul.radioBtn li input[type="radio"]:checked + label:after {
		margin-top: -7px;
		left: 15px;
	}
	#form .rentalInfo dl.selectDelivdate dd .capText {
		margin: -10px 0 20px;
	}
}
/*---------------------- rentalInfo date ----------------------*/
#form .rentalInfo dl dd input.date {
	background-image: url(../../common/images/form_calendar_icon.svg);
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 30px;
	padding: 20px 0 20px 70px;
	border: 1px solid #DEDEDE;
	border-radius: 10px;
	cursor: pointer;
	width: 170px;
	font-size: 20px;
	font-weight: 700;
	color: #139D8D;
}
#form .rentalInfo dl dd input.date::placeholder {
	font-size: 16px;
	color: #333;
	font-weight: 500;
}
@media screen and (min-width: 768px) {
	#form .rentalInfo dl dd input.date:hover {
		background-color: #F8F8F8;
		border: 1px solid #F8F8F8;
		transition: 0.3s;
	}
}
/*---------------------- rentalInfo datepicker ----------------------*/
.ui-datepicker {
	font-size: 20px;
	z-index: 1000 !important;
}
.ui-datepicker .ui-datepicker-header {
	background-color: #F5FAF8;
}
.ui-datepicker td span, .ui-datepicker td a {
	padding: 0.65em 0;
	text-align: center;
}
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
	border: 1px solid #dcdcdc;
	background: #fafafa;
	color: #666;
}
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight, .ui-state-default.ui-state-hover {
	border: 1px solid #dcdcdc;
	background: #fafafa;
	color: #666;
}
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover {
	border: 1px solid #dcdcdc;
	background: #139D8D;
	color: #fff;
}
@media screen and (max-width: 767px) {
	.ui-datepicker {
		width: calc(100% - 12%);
		box-sizing: border-box;
	}
}
/*---------------------- customerInfo / searchInfo ----------------------*/
#form .inner.customerInfo .title {
	border-bottom: 1px solid #DEDEDE;
	padding-bottom: 40px;
}
#form .inner.customerInfo h3 {
	font-size: 21px;
	font-weight: 700;
	line-height: 35px;
	border-left: 4px solid #139D8D;
	padding-left: 15px;
}
#form .inner.searchInfo p.comment {
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	color: #139D8D;
}
#form .inner.customerInfo dl {
	margin: 40px 0;
}
#form .inner.searchInfo dl {
	margin: 20px 0;
}
#form .inner.customerInfo dl.selectRegistration {
	border-top: 1px solid #DEDEDE;
	padding: 30px 0 0;
}
#form .inner.customerInfo dl dt, #form .inner.searchInfo dl dt {
	font-size: 14px;
	font-weight: 700;
}
#form .inner.customerInfo dl dt .required, #form .inner.searchInfo dl dt .required {
	font-size: 14px;
	font-weight: 500;
	color: #EF5C5C;
	line-height: 24px;
	width: 65px;
	border-radius: 12px;
	background-color: #F8F8F8;
	display: inline-block;
	text-align: center;
	margin-right: 20px;
}
#form .inner.customerInfo dl.inputUpfile.registration dt .required {
	display: none;
}
#form .inner.customerInfo dl.inputUpfile.registration dt .required.active {
	display: inline-block;
}
#form .inner.customerInfo dl dd input[type="text"], #form .inner.customerInfo dl dd input[type="tel"], #form .inner.customerInfo dl dd input[type="email"], #form .inner.searchInfo dl dd input[type="text"] {
	display: inline-block;
	font-size: 18px;
	vertical-align: middle;
	border: 1px solid #DEDEDE;
	border-radius: 5px;
	height: 45px;
	padding: 6px 16px;
	box-sizing: border-box;
}
#form .inner.customerInfo dl dd textarea {
	display: inline-block;
	font-size: 18px;
	vertical-align: middle;
	border: 1px solid #DEDEDE;
	border-radius: 5px;
	padding: 10px 16px;
	box-sizing: border-box;
}
#form .inner.customerInfo dl dd input[type="text"]::placeholder, #form .inner.customerInfo dl dd input[type="tel"]::placeholder, #form .inner.customerInfo dl dd input[type="email"]::placeholder, #form .inner.customerInfo dl dd textarea::placeholder {
	font-size: 14px;
	color: #C6C6C6;
	font-weight: 400;
}
#form .inner.customerInfo dl dd .selectPref {
	position: relative;
}
#form .inner.customerInfo dl dd select {
	display: inline-block;
	font-size: 16px;
	border: 1px solid #DEDEDE;
	border-radius: 5px;
	height: 45px;
	padding: 6px 30px 6px 16px;
	box-sizing: border-box;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
}
#form .inner.customerInfo dl dd select::-ms-expand {
	display: none;
}
#form .inner.customerInfo dl dd .selectPref::after {
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 2px #707070;
	border-right: solid 2px #707070;
	position: absolute;
	right: 15px;
	top: 50%;
	margin-top: -9px;
	transform: rotate(135deg);
}
#form .inner.customerInfo dl dd .capText {
	font-size: 14px;
	margin-left: 15px;
}
#form .inner.customerInfo dl dd .capText2 {
	font-size: 14px;
	margin: 10px 0 0;
	text-indent: -1em;
	padding-left: 1em;
}
#form .inner.customerInfo dl dd .inputAddressTitle {
	font-size: 13px;
	color: #3B4043;
	margin: 0 0 5px;
}
#form .inner.customerInfo dl dd .inputAddressSec {
	margin: 0 0 25px;
}
#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0 0 -20px;
}
#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li {
	list-style: none;
}
#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li input {
	display: none;
}
#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li label {
	display: inline-block;
	position: relative;
	cursor: pointer;
	border: 1px solid #DEDEDE;
	border-radius: 10px;
	text-align: center;
	box-sizing: border-box;
	padding: 15px 0;
	font-size: 16px;
	font-weight: 500;
}
#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li label:before {
	position: absolute;
	content: "";
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 1px solid #DEDEDE;
	background-color: #FFFFFF;
	top: 50%;
	margin-top: -15px;
	left: 10px;
}
#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li input[type="radio"]:checked + label {
	background-color: #F5FAF8;
	border: 1px solid #139D8D;
}
#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li input[type="radio"]:checked + label:after {
	position: absolute;
	content: "";
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #139D8D;
	top: 50%;
	margin-top: -9px;
	left: 16px;
}
@media screen and (min-width: 768px) {
	#form .inner.customerInfo dl, #form .inner.searchInfo dl {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	#form .inner.customerInfo dl.inputAddress, #form .inner.customerInfo dl.inputMessage, #form .inner.searchInfo dl.selectSearchEngine {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	#form .inner.customerInfo dl dt, #form .inner.searchInfo dl dt {
		width: 220px;
		box-sizing: border-box;
		text-align: right;
		padding-right: 30px;
	}
	#form .inner.searchInfo dl.selectSearchEngine dt {
		padding-top: 10px;
	}
	#form .inner.customerInfo dl dd, #form .inner.searchInfo dl dd {
		width: calc(100% - 220px);
		box-sizing: border-box;
	}
	#form .inner.customerInfo dl.inputName dd input, #form .inner.customerInfo dl.inputKana dd input, #form .inner.customerInfo .inputZipcode input, #form .inner.customerInfo dl.inputAddress dd .selectPref {
		width: 200px;
	}
	#form .inner.customerInfo dl.inputName dd input:first-of-type, #form .inner.customerInfo dl.inputKana dd input:first-of-type {
		margin-right: 20px;
	}
	#form .inner.customerInfo dl.inputCname dd input, #form .inner.customerInfo dl.inputDname dd input, #form .inner.customerInfo dl.inputAddress2 dd input, #form .inner.customerInfo dl.inputAddress3 dd input, #form .inner.customerInfo dl.inputAddress4 dd input, #form .inner.customerInfo dl.inputEmail dd input, #form .inner.customerInfo dl.inputEmail2 dd input, #form .inner.customerInfo .inputAddress2 input, #form .inner.customerInfo .inputAddress3 input, #form .inner.searchInfo .searchWord input {
		width: 500px;
	}
	#form .inner.customerInfo dl.inputClientcode dd input, #form .inner.customerInfo dl.inputTel dd input, #form .inner.customerInfo dl.inputCnumber dd input {
		width: 300px;
	}
	#form .inner.customerInfo dl.inputMessage dd textarea {
		width: 500px;
		height: 135px;
		vertical-align: top;
	}
	#form .inner.customerInfo dl.selectRegistration dt {
		margin: 0 0 35px;
	}
	#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li {
		margin-right: 30px;
	}
	#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li label {
		width: 260px;
	}
}
@media screen and (max-width: 767px) {
	#form .inner.customerInfo .title {
		padding-bottom: 25px;
	}
	#form .inner.customerInfo h3 {
		font-size: 16px;
		line-height: 30px;
	}
	#form .inner.searchInfo p.comment {
		font-size: 13px;
	}
	#form .inner.customerInfo dl {
		margin: 30px 0;
	}
	#form .inner.searchInfo dl {
		margin: 20px 0;
	}
	#form .inner.customerInfo dl.selectRegistration {
		padding: 20px 0 0;
	}
	#form .inner.customerInfo dl dt, #form .inner.searchInfo dl dt {
		margin: 0 0 15px;
	}
	#form .inner.customerInfo dl dt .required, #form .inner.searchInfo dl dt .required {
		margin-right: 15px;
	}
	#form .inner.customerInfo dl dd input[type="text"], #form .inner.customerInfo dl dd input[type="tel"], #form .inner.customerInfo dl dd input[type="email"], #form .inner.searchInfo dl dd input[type="text"] {
		width: 100%;
	}
	#form .inner.customerInfo dl.inputName dd input:first-of-type, #form .inner.customerInfo dl.inputKana dd input:first-of-type {
		margin-bottom: 15px;
	}
	#form .inner.customerInfo dl.inputMessage dd textarea {
		width: 100%;
		height: 200px;
	}
	#form .inner.customerInfo dl dd .capText {
		margin-top: 5px;
		margin-left: 5px;
		display: block;
	}
	#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin: 0 0 -20px;
	}
	#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li {
		width: 47%;
	}
	#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li label {
		width: 100%;
		padding: 10px 0 10px 25px;
		font-size: 15px;
	}
	#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li label:before {
		width: 22px;
		height: 22px;
		margin-top: -12px;
	}
	#form .inner.customerInfo dl.selectRegistration dd ul.radioBtn li input[type="radio"]:checked + label:after {
		width: 14px;
		height: 14px;
		margin-top: -7px;
		left: 15px;
	}
}
/*---------------------- searchInfo radio button ----------------------*/
#form .searchInfo dl dd ul.radioBtn {
	display: flex;
	flex-wrap: wrap;
}
#form .searchInfo dl dd ul.radioBtn.mhidden {
	margin: 0 0 -25px;
}
#form .searchInfo dl dd ul.radioBtn li {
	list-style: none;
}
#form .searchInfo dl dd ul.radioBtn li input {
	display: none;
}
#form .searchInfo dl dd ul.radioBtn li label {
	display: inline-block;
	position: relative;
	cursor: pointer;
	border: 1px solid #DEDEDE;
	border-radius: 10px;
	text-align: center;
	box-sizing: border-box;
}
#form .searchInfo dl dd ul.radioBtn li label:before {
	position: absolute;
	content: "";
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 1px solid #DEDEDE;
	background-color: #FFFFFF;
}
#form .searchInfo dl dd ul.radioBtn li input[type="radio"]:checked + label {
	background-color: #F5FAF8;
	border: 1px solid #139D8D;
}
#form .searchInfo dl dd ul.radioBtn li input[type="radio"]:checked + label:after {
	position: absolute;
	content: "";
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #139D8D;
}
#form .searchInfo dl.selectSearchEngine dd ul.radioBtn li label {
	padding: 15px 0;
	font-size: 16px;
	font-weight: 500;
}
#form .searchInfo dl.selectSearchEngine dd ul.radioBtn li label:before {
	top: 50%;
	margin-top: -15px;
	left: 10px;
}
#form .searchInfo dl.selectSearchEngine dd ul.radioBtn li input[type="radio"]:checked + label:after {
	top: 50%;
	margin-top: -9px;
	left: 16px;
}
@media screen and (min-width: 768px) {
	#form .searchInfo dl.selectSearchEngine dd ul.radioBtn li {
		margin-right: 20px;
		margin-bottom: 20px;
	}
	#form .searchInfo dl dd ul.radioBtn li label {
		width: 240px;
	}
	#form .searchInfo dl dd ul.radioBtn li label:hover {
		background-color: #F8F8F8;
		border: 1px solid #F8F8F8;
		transition: 0.3s;
	}
}
@media screen and (max-width: 767px) {
	#form .searchInfo dl dd ul.radioBtn {
		display: flex;
		flex-wrap: wrap;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	#form .searchInfo dl dd ul.radioBtn li {
		width: 47%;
		margin-bottom: 6%;
	}
	#form .searchInfo dl dd ul.radioBtn li label {
		width: 100%;
	}
	#form .searchInfo dl dd ul.radioBtn li label:before {
		width: 22px;
		height: 22px;
	}
	#form .searchInfo dl dd ul.radioBtn li input[type="radio"]:checked + label:after {
		width: 14px;
		height: 14px;
	}
	#form .searchInfo dl.selectSearchEngine dd ul.radioBtn li label {
		padding: 10px 0 10px 20px;
		font-size: 15px;
	}
	#form .searchInfo dl.selectSearchEngine dd ul.radioBtn li label:before {
		margin-top: -12px;
	}
	#form .searchInfo dl.selectSearchEngine dd ul.radioBtn li input[type="radio"]:checked + label:after {
		margin-top: -7px;
		left: 15px;
	}
}
/*---------------------- identificationDoc ----------------------*/
#form .inner.identificationDoc .title {
	border-bottom: 1px solid #DEDEDE;
	padding-bottom: 30px;
	margin: 0 0 20px;
}
#form .inner.identificationDoc h3 {
	font-size: 21px;
	font-weight: 700;
	line-height: 35px;
	border-left: 4px solid #139D8D;
	padding-left: 15px;
}
#form .inner.identificationDoc .notes {
	margin: 0 0 30px;
}
#form .inner.identificationDoc .notes h4 {
	font-weight: 700;
	color: #CE0C0C;
	margin: 0 0 5px;
}
#form .inner.identificationDoc .notes li {
	font-size: 12px;
	list-style-type: none;
	text-indent: -1em;
	padding-left: 1em;
	margin: 0 0 5px;
}
#form .inner.identificationDoc .inputUpfile {
	border: 1px solid #DEDEDE;
	border-radius: 10px;
	margin: 0 0 10px;
}
#form .inner.identificationDoc dl dt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	box-sizing: border-box;
}
#form .inner.identificationDoc dl dt .required {
	font-size: 14px;
	font-weight: 500;
	color: #EF5C5C;
	line-height: 24px;
	width: 65px;
	border-radius: 12px;
	background-color: #F8F8F8;
	display: inline-block;
	text-align: center;
	margin-right: 20px;
}
#form .inner.identificationDoc dl dt p {
	font-size: 14px;
	font-weight: 700;
	color: #3B4043;
	line-height: 1.8;
}
#form .inner.identificationDoc dl dd {
	padding: 20px 0;
}
@media screen and (min-width: 768px) {
	#form .inner.identificationDoc .inputUpfile {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	#form .inner.identificationDoc dl dt {
		width: 360px;
		padding-left: 45px;
	}
}
@media screen and (max-width: 767px) {
	#form .inner.identificationDoc .title {
		padding-bottom: 25px;
	}
	#form .inner.identificationDoc h3 {
		font-size: 16px;
		line-height: 30px;
	}
	#form .inner.identificationDoc dl dt {
		padding: 15px;
	}
	#form .inner.identificationDoc dl dd {
		padding: 0 15px 15px;
	}
}
/*---------------------- inputUpfile ----------------------*/
#form .inputUpfile .upfileContainer {
	border: 2px solid #F8F8F8;
	border-radius: 10px;
	background-color: #F8F8F8;
	box-sizing: border-box;
}
#form .inputUpfile .upfileContainer.active {
	border: 2px solid #139D8D;
	background-color: #F5FAF8;
}
#form .inputUpfile .upfileContainer .desc .text .text1 {
	font-weight: 700;
	margin: 0 0 5px;
}
#form .inputUpfile .upfileContainer .desc .text .text2 {
	font-size: 12px;
	line-height: 1.8;
	color: #707070;
}
#form .inputUpfile .upfileContainer .upfileBtnContainer input {
	visibility: hidden;
	height: 0;
	width: 0;
}
#form .inputUpfile .upfileContainer .upfileBtnContainer label {
	font-size: 15px;
	font-weight: 700;
	color: #FFF;
	background-color: #139A8A;
	border-radius: 5px;
	width: 200px;
	line-height: 50px;
	height: 50px;
	padding-left: 55px;
	display: inline-block;
	box-sizing: border-box;
	background-image: url(../../common/images/form_file_icon01.svg);
	background-repeat: no-repeat;
	background-position: top 16px left 35px;
}
#form .inputUpfile .upfileContainer .upfileBtnContainer .upfileName {
	font-size: 14px;
}
@media screen and (min-width: 768px) {
	#form .inputUpfile .upfileContainer {
		width: 550px;
		padding: 20px 0 20px 50px;
	}
	#form .inputUpfile .upfileContainer .desc {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		margin: 0 0 15px;
	}
	#form .inputUpfile .upfileContainer .desc .icon {
		width: 85px;
	}
	#form .inputUpfile .upfileContainer .upfileBtnContainer {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	#form .inputUpfile .upfileContainer .upfileBtnContainer .upfileName {
		width: calc(100% - 240px);
		margin-left: 20px;
	}
}
@media screen and (max-width: 767px) {
	#form .inputUpfile .upfileContainer {
		padding: 6%;
	}
	#form .inputUpfile .upfileContainer .desc {
		text-align: center;
	}
	#form .inputUpfile .upfileContainer .desc .icon {
		margin: 0 0 5px;
	}
	#form .inputUpfile .upfileContainer .desc .text {
		margin: 0 0 10px;
	}
	#form .inputUpfile .upfileContainer .upfileBtnContainer {
		text-align: center;
	}
	#form .inputUpfile .upfileContainer .upfileBtnContainer label {
		text-align: left;
	}
	#form .inputUpfile .upfileContainer .upfileBtnContainer .upfileName {
		display: block;
		margin: 10px 0 0;
	}
}
/*---------------------- agreecheckContainer ----------------------*/
#form .inner .agreecheckContainer {
	background-color: #F8F8F8;
	text-align: center;
	padding: 45px 0;
}
#form .inner .agreecheckContainerInner {
	display: inline-block;
}
#form .inner .agreecheckContainer p {
	display: inline-block;
	position: relative;
	padding-left: 50px;
	line-height: 30px;
}
#form .inner .agreecheckContainer p input {
	display: none;
}
#form .inner .agreecheckContainer p label {
	position: absolute;
	content: "";
	width: 30px;
	height: 30px;
	border-radius: 50%;
	border: 3px solid #139D8D;
	background-color: #FFFFFF;
	top: 50%;
	margin-top: -18px;
	left: 0;
}
#form .inner .agreecheckContainer p input[type="checkbox"]:checked + label:after {
	position: absolute;
	content: "";
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #139D8D;
	top: 50%;
	margin-top: -10px;
	left: 5px;
}
#form .inner .agreecheckContainer p a {
	color: #139D8D;
	text-decoration: underline;
}
@media screen and (min-width: 768px) {
	#form .inner .agreecheckContainer p a:hover {
		text-decoration: none;
	}
}
@media screen and (max-width: 767px) {
	#form .inner .agreecheckContainer {
		padding: 15px 0;
	}
	#form .inner .agreecheckContainer p {
		padding-left: 35px;
		line-height: 26px;
		font-size: 12px;
		margin-right: -30px;
	}
	#form .inner .agreecheckContainer p label {
		width: 20px;
		height: 20px;
		margin-top: -13px;
	}
	#form .inner .agreecheckContainer p input[type="checkbox"]:checked + label:after {
		width: 14px;
		height: 14px;
		margin-top: -7px;
		left: 3px;
	}
}
/*---------------------- Button ----------------------*/
#form .button {
	text-align: center;
	margin: 35px 0 20px;
}
#contents .confirm .button {
	margin: 35px 0 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
#form .button button, #contents .confirm .button button {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.035em;
	text-align: center;
	margin: 0 25px;
	line-height: 60px;
	height: 60px;
	border-radius: 30px;
	cursor: pointer;
	border-style: none;
	background-color: #aaaaaa;
	color: #FFFFFF;
}
#form .button button#submit, #contents .confirm .button button#submit {
	background-color: #139D8D;
}
@media screen and (min-width: 768px) {
	#contents .confirm .button {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	#form .button button, #contents .confirm .button button {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		position: relative;
		overflow: hidden;
		width: 400px;
	}
	#form .inner.formBtnContainer .button button {
		margin: 0 auto;
	}
	#form .button button span, #contents .confirm .button button span {
		width: 100%;
		height: 100%;
		color: #FFFFFF;
		z-index: 10;
	}
	#form .button button span:before, #contents .confirm .button button span:before {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		width: 0;
		display: block;
		background-color: #969696;
		z-index: -1;
		transition: 0.3s;
	}
	#form .button button span:hover:before, #contents .confirm .button button span:hover:before {
		width: 100%;
	}
	#form .button button#submit span:before, #contents .confirm .button button#submit span:hover:before {
		background-color: #0F8477;
	}
}
@media screen and (max-width: 767px) {
	#form .button {
		text-align: center;
		margin: 30px 0 15px;
	}
	#contents .confirm .button {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin: 30px 0 15px;
	}
	#form .button button, #contents .confirm .button button {
		margin: 0;
		line-height: 50px;
		height: 50px;
		border-radius: 25px;
		width: 46%;
	}
	#form .inner.formBtnContainer .button button {
		width: 80%;
	}
}
/*---------------------- validationEngine ----------------------*/
#form .formError .formErrorContent {
	padding: 0;
	margin: 0;
}
#form .error-message:last-of-type .formError .formErrorContent, #form dd > .error-message:last-of-type, #form #promptaddress1 .formError .formErrorContent, #form .inputUpfile .upfileContainer .error-message .formError .formErrorContent {
	margin: 0 0 10px;
}
#form .formError .formErrorContent {
	width: 100%;
}
#form .formError.inline .formErrorContent {
	font-size: 14px;
}
@media screen and (max-width: 767px) {
	#form .formError.inline .formErrorContent {
		font-size: 12px;
	}
}
/*---------------------- 確認・エラー画面(check,error) ----------------------*/
#contents .confirm .inner h1 {
	font-size: 33px;
	font-weight: 700;
	text-align: center;
	color: #139D8D;
	margin: 0 0 35px;
}
#contents .confirm table {
	width: 100%;
	border-top: 1px solid #DEDEDE;
	line-height: 2.0;
}
#contents .confirm table th {
	font-weight: 700;
}
#contents .confirm table td a.zmPreview {
	display: none;
}
#contents strong.error {
	color: #FF0000;
}
#contents .message {
	text-align: center;
	margin: 0 0 30px;
}
@media screen and (min-width: 768px) {
	#contents .confirm table th {
		white-space: nowrap;
		border-bottom: 1px solid #DEDEDE;
		padding: 20px 40px;
	}
	#contents .confirm table td {
		width: 100%;
		border-bottom: 1px solid #DEDEDE;
		padding: 20px;
	}
}
@media screen and (max-width: 767px) {
	#contents .confirm .inner h1 {
		font-size: 28px;
		margin: 0 0 25px;
	}
	#contents .message {
		margin: 0 0 20px;
	}
	#contents .confirm table th {
		display: block;
		padding: 10px 0 0;
		text-align: left;
	}
	#contents .confirm table td {
		display: block;
		border-bottom: 1px solid #DEDEDE;
		padding: 10px 0 15px;
	}
}
/*---------------------- 送信完了(completion.html) ----------------------*/
#contents .completion .inner h1 {
	font-size: 33px;
	font-weight: 700;
	color: #139D8D;
	text-align: center;
	margin: 0 0 35px;
}
#contents .completion .inner p {
	font-size: 18px;
	font-weight: 700;
	line-height: 2.0;
	text-align: center;
	margin: 0 0 40px;
}
@media screen and (max-width: 767px) {
	#contents .completion .inner h1 {
		font-size: 28px;
		margin: 0 0 30px;
	}
	#contents .completion .inner p {
		font-size: 14px;
		margin: 0 0 20px;
	}
}