@charset "utf-8";

/*====================================================

FileName:resform.css
レスポンシブフォーム

====================================================== */

/* PC表示 */
@media screen and (min-width: 641px) {
	.sp {
		display: none;
	}
	.sp2 {
		display: none;
	}
	.pc {
		display: inline-block;
	}
	.pc2 {
		display: block;
	}

	#top_txt {
		margin: 0px 15px 30px;
		background: #ffffff;
	}

	#top_txt p.pc {
		margin: 10px 0 10px;
	}

	#form_tbl {
		margin: 0 15px 0;
		padding: 0;
		box-sizing: border-box;
		overflow: hidden;
	}

	#form_tbl:not(:first-of-type) {
		margin-top: 2rem;
	}

	#form_tbl dl {
		text-align: left;
		/* background: #fdf0e0; */
		border-top: 1px solid #dcdcdc;
	}
	#form_tbl dt {
		width: 30%;
		padding: 10px 0 10px 30px;
		float: left;
		color: #222222;
		/* background: url(../common/images/ico_sqare.gif) 12px 18px no-repeat, #f6f6f6; */
		box-sizing: border-box;
		font-weight: bold;
		border-top: 1px solid #dcdcdc;
		/* border-bottom: 1px solid #dcdcdc; */
	}
	a {
		text-decoration: none;
	}

	#form_tbl dd {
		width: 66%;
		margin-left: 0;
		padding: 10px 0 10px 20px;
		float: left;
		background: #ffffff;
		border-top: 1px solid #dcdcdc;
		border-left: 5px solid #fdf0e0;
		/* border-bottom: 1px solid #dcdcdc; */
	}

	.wrapper__document#wrapper #form_tbl dd {
		width: 67%;
	}

	#form_tbl .form_tbl_title__wrap {
		background-color: #f6f6f6;
		padding: 0.5rem 1rem;
	}

	#form_tbl .form_tbl_title__wrap .form_tbl_title {
		font-size: 1rem;
		font-weight: bold;
		text-align: center;
	}

	#form_tbl .form_tbl_title__wrap .form_tbl_title__notion {
		font-size: 0.75rem;
		font-weight: bold;
		text-align: right;
	}

	#form_tbl p.font_s {
		margin-top: 5px;
		font-size: 12px;
		font-weight: normal;
	}
	#form_tbl p.font_ss {
		margin-top: 0;
		font-size: 11px;
		font-weight: normal;
	}
	#form_tbl dd div.add:nth-child(2) {
		margin: 10px 0;
	}

	/* ページによって異なる箇所 */
	#form_tbl div.material_kind strong {
		clear: both;
		display: block;
		margin: 30px 0 2px;
	}
	#form_tbl div.material_kind:first-child strong {
		margin-top: 0;
	}
	#form_tbl div.material_kind p {
		float: left;
	}
	#form_tbl div.material_kind p label {
		margin-right: 15px;
	}

	#form_tbl p.hearing_kind {
		margin: 2px 0;
	}
	#form_tbl p.hearing_kind:first-child {
		margin: 0 0 2px;
	}

	#address3,
	#facility {
		padding: 3px;
		font-size: 14px;
	}

	#address3,
	#address4 {
		margin-left: 20px;
	}
	#address5 {
		margin-left: 8px;
	}

	.w01 {
		width: 340px;
		padding: 3px;
		font-size: 14px;
	}
	.w02 {
		width: 50px;
		padding: 3px;
		font-size: 14px;
	}
	.w03 {
		width: 430px;
		padding: 3px;
		font-size: 14px;
	}

	.wrapper__document#wrapper #form_tbl select {
		padding: 0.25rem;
	}

	#form_tbl input[type="checkbox"],
	#form_tbl input[type="radio"],
	#privacy {
		vertical-align: -2px;
	}

	div.form_privacy {
		margin: 30px 20px 20px;
		border: solid 1px #ddd;
	}
	div.form_privacy div {
		padding: 25px 20px 20px 25px;
		height: 240px;
		overflow: auto;
	}
	div.form_privacy h5 {
		font-weight: normal;
		margin-bottom: 10px;
	}
	div.form_privacy dl {
		margin-bottom: 20px;
	}
	div.form_privacy dt {
		margin-top: 10px;
	}

	p.form_link_txt {
		margin: 30px 15px;
		padding: 0;
	}

	#form_tbl dd p.mb10 {
		margin-bottom: 0;
	}
}

/* SP表示 */
@media screen and (max-width: 640px) {
	.sp {
		display: inline-block;
	}
	.sp2 {
		display: block;
	}
	.pc {
		display: none;
	}
	.pc2 {
		display: none;
	}

	#top_txt {
		padding: 20px 20px 30px;
		background: #ffffff;
		font-size: 24px;
		line-height: 150%;
		max-height: 999999px;
	}

	#top_txt p.sp {
		margin: 10px 0 10px;
		display: block;
		text-indent: -1em;
		margin-left: 1em;
		max-height: 999999px;
	}

	#form_tbl {
		width: 100%;
		margin: 0;
		padding: 0;
		overflow: hidden;
	}

	#form_tbl .form_tbl_title__wrap {
		background-color: #f6f6f6;
		padding: 0.5rem 1rem;
		margin: 0.5rem 0;
	}

	#form_tbl .form_tbl_title__wrap .form_tbl_title {
		font-size: 1rem;
		font-weight: bold;
		text-align: center;
	}

	#form_tbl .form_tbl_title__wrap .form_tbl_title__notion {
		font-size: 0.75rem;
		font-weight: bold;
		text-align: center;
	}
	#form_tbl dl {
		width: 100%;
		margin: 0;
		overflow: hidden;
		border: none;
	}
	#form_tbl dt {
		padding: 10px 45px;
		font-size: 28px;
		background: url(../common/images/sp/ico_sqare_sp.gif) 10px 26px no-repeat,
			#f6f6f6;
		border-bottom: solid 5px #ffe7c7;
		border-right: none;
		max-height: 999999px;
	}

	#form_tbl dd {
		padding: 10px 25px 20px 20px;
		font-size: 26px;
		line-height: 150%;
		border-bottom: solid 1px #dcdcdc;
		background: #ffffff;
		max-height: 999999px;
	}

	#form_tbl dd div.border1 {
		margin: 20px 50px;
		padding: 33px 0;
		text-align: center;
		border: 1px solid #888888;
		border-radius: 1em;
	}
	#form_tbl dd div.border1 span {
		margin: 30px 0;
		padding: 35px 40px;
		max-height: 999999px;
	}
	#form_tbl dd div.border1 span:last-child {
		padding-left: 70px;
		padding-right: 20px;
		border-left: 1px solid #888888;
		max-height: 999999px;
	}

	#form_tbl p.font_s {
		margin: -15px 0 0 25px;
		font-size: 22px;
		font-weight: normal;
		max-height: 999999px;
	}
	#form_tbl p.font_ss {
		margin: 5px 0 0 0;
		font-size: 22px;
		font-weight: normal;
		max-height: 999999px;
	}
	#form_tbl dd div:nth-child(2) {
		margin: 10px 0;
		max-height: 999999px;
	}

	/* ページによって異なる箇所 */
	#form_tbl div.material_kind strong {
		clear: both;
		display: block;
		margin: 10px 0 0;
	}
	#form_tbl div.material_kind:first-child strong {
		margin-top: 0;
	}
	#form_tbl div.material_kind p {
	}
	#form_tbl div.material_kind p label {
		margin-right: 15px;
	}

	#form_tbl p.hearing_kind {
		margin: 2px 0;
	}
	#form_tbl p.hearing_kind:first-child {
		margin: 0 0 2px;
	}

	#addbtn {
		margin-left: 20px;
		margin-bottom: 13px;
		padding: 15px;
		font-size: 28px;
		max-height: 999999px;
	}

	div.add strong {
		margin-left: 20px;
		max-height: 999999px;
	}

	#facility {
		margin: 10px 20px 30px;
		padding: 15px;
		font-size: 28px;
		border: 1px solid #888888;
		max-height: 999999px;
	}

	#address3 {
		display: block;
		margin: 10px 20px 30px;
		padding: 15px;
		font-size: 28px;
		border: 1px solid #888888;
		max-height: 999999px;
	}

	#address3,
	#address4 {
		margin-top: 5px;
		margin-left: 20px;
		max-height: 999999px;
	}
	#address5 {
		margin-top: 0;
		margin-left: 20px;
		max-height: 999999px;
	}

	.w01 {
		width: 85%;
		margin: 20px;
		padding: 15px;
		font-size: 28px;
		border: 1px solid #888888;
		max-height: 999999px;
	}
	.w02 {
		width: 15%;
		margin: 20px;
		padding: 15px;
		font-size: 28px;
		border: 1px solid #888888;
		max-height: 999999px;
	}
	.w03 {
		width: 85%;
		margin: 20px;
		height: 450px;
		padding: 15px;
		font-size: 28px;
		border: 1px solid #888888;
		max-height: 999999px;
	}

	:disabled {
		background-color: #bbbbbb;
	}

	.wrapper__document#wrapper #form_tbl select {
		padding: 1rem;
		font-size: 2rem;
	}

	#form_tbl input[type="checkbox"],
	#form_tbl input[type="radio"],
	#privacy {
		width: 25px;
		height: 25px;
		vertical-align: -3px;
	}

	div.form_privacy {
		margin: 30px 20px 20px;
		border: solid 1px #ddd;
		-webkit-text-size-adjust: 100%; /* for iOS */
	}
	div.form_privacy div {
		padding: 10px 10px 15px;
		height: 240px;
		font-size: 20px;
		line-height: 140%;
		overflow: auto;
		max-height: 999999px;
	}
	div.form_privacy h5 {
		font-weight: normal;
		margin-bottom: 10px;
		font-size: 22px;
		max-height: 999999px;
	}
	div.form_privacy dl {
		margin-bottom: 20px;
	}
	div.form_privacy dt {
		margin-top: 10px;
	}

	p.form_link_txt {
		margin: 30px 20px;
		padding: 0;
		font-size: 26px;
		max-height: 999999px;
	}

	div.btnBox input {
		display: block;
	}

	div.btnBox img {
		margin-top: 20px;
	}

	p.agree {
		font-size: 26px;
	}

	#form_tbl .form_tbl_title__wrap .form_tbl_title.form_tbl_title_procedure {
		font-size: 28px;
	}
}
