html {
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: aliased;
}
body {
	margin: 0;
	padding: 0;
	background-color:#fff;
	font: 16px/1.5 "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
}
h1 {
	font-size: 32px;
	font-weight: 100;
	text-align: center;
}
h2 {
	font-size: 28px;
	font-weight: 100;
	text-align: center;
}

#label{
	font-size:24px;
}
#no-label {
	list-style: none;
}

a {
	color: #f77564;
}
a:hover {
	color: #333;
}
a, a:hover {
	-o-transition: color 0.25s ease-in;
	-webkit-transition: color 0.25s ease-in;
	-moz-transition: color 0.25s ease-in;
	transition: color 0.25s ease-in;
}
section, article, header {
	display: block;
	float: left;
	width: 100%;
}
.container{ 
	text-align:center;
	margin-top:100px;

}
#label{
	font-size:24px;
}
h2 {
	color: #787878;
	font-size: 3.061vw;
	font-weight: 100;
	line-height: 1em;
	text-align: center;
	margin-bottom: 2.551vw;
}
@media screen and (min-width:992px) {
	h2 {
		font-size: 2.333vw;
		margin-bottom: 2.083vw;
	}
}
@media screen and (min-width:1200px) {
	h2 {
		font-size: 28px;
		margin-bottom: 25px;
	}
}
@media screen and (max-width: 1024px) { 
	.container{ 
		width:100%;
	}
}
@media screen and (max-width: 896px) { 
	.container{ 
		width:100%;
	}
}
@media screen and (max-width: 480px) { 
	.container{ 
		width:100%;
	}
}


/* header-nav */
.header-nav{
	background-color: #fff;
	box-shadow: 0 10px 10px rgb(0 0 0 / 10%);
}

/* navbar-brand */
.navbar-brand img{
	width: 36vw;
}
@media screen and (min-width:992px) {
	.navbar-brand img{
		width:22.5vw;
	}
}
@media screen and (min-width:1200px) {
	.navbar-brand img{
		width:270px;
	}
}

/* 共通 row */
.syoumeisyo-main-row {
	margin: 60px 0 0 0px;
}

/* 共通 ラジオボタンの色 */
.form-check-input:checked {
		background-color: #00b0f0;
		border-color: #00b0f0;
}

/* 共通 小項目左のタイトル */
.syoumeisyo-main-right-inner-label{
	width: 135px;
}

/* 共通 小項目左のタイトル 複数行 */
.syoumeisyo-main-right label.multiple-lines{
 padding: 10px 15px 0 0;
}

/* 共通 各小項目の行 */
.input-line{
	margin: 0 0 10px;
}

/* 共通 チェックボックス */
.check-area{
	min-height: 1.5rem;
	padding-left: 1.5em;
	margin-bottom: 0;
}

/* 共通 inputを最大幅まで伸ばす */
.input-large{
	flex: 1;
	width: 100%;
}


/* syoumeisyo-main-left */
.syoumeisyo-main-left{
	background-color: #f7f7f7;
	padding: 21px 0 0 0;
	width: 250px;
}

.syoumeisyo-main-left ul{
	list-style-type: none;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}

.syoumeisyo-main-left ul li{
	border-bottom:1px solid #efefef;
	text-align: left;
	padding: 15px 50px;
}

.syoumeisyo-main-left ul li a{
	color: #787878;
	text-decoration: none;
}

.syoumeisyo-main-left ul li a.current{
	color: #00b0f0;
}

.syoumeisyo-main-left-logo{
	text-align: center;
	padding: 0 0 50px;
	width: 100%;
}


/* syoumeisyo-main-right */
/* 入力列（右列）の共通 */
.syoumeisyo-main-right{
		padding: 4.082vw 2vw 0;
}
@media screen and (min-width:992px) {
	.syoumeisyo-main-right{
		padding: 3.333vw 0 0 4.583vw;
	}
}
@media screen and (min-width:1200px) {
	.syoumeisyo-main-right{
		padding: 40px 0 0 55px;
	}
}

.syoumeisyo-main-right-inner{
	margin: 0 auto;
	width: 98%;
}
@media screen and (min-width:992px) {
	.syoumeisyo-main-right-inner{
		margin: 0 auto 0 0;
		max-width: 620px;
		width: 80%;
	}
}


/* 入力列（右列）の共通のh2 */
.syoumeisyo-main-right h2{
		color: #000;
		font-size: 3.061vw;
		text-align: left;
		margin: 0 0 3.061vw 0;
	}
@media screen and (min-width:992px) {
	.syoumeisyo-main-right h2{
		font-size: 2vw;
		margin: 0 0 2.5vw 0;
	}
}
@media screen and (min-width:1200px) {
	.syoumeisyo-main-right h2{
		font-size: 24px;
		margin: 0 0 30px 0;
	}
}


/* 入力列（右列）の共通のh3 */
.syoumeisyo-main-right h3{
	background-color: #f7f7f7;
	font-size: 2.857vw;
	padding: 0.51vw 1.02vw;
}
@media screen and (min-width:992px) {
	.syoumeisyo-main-right h3{
		font-size: 1.837vw;
		padding: 0.51vw 1.02vw;
	}
}
@media screen and (min-width:1200px) {
	.syoumeisyo-main-right h3{
		font-size: 20px;
		padding: 5px 15px;
	}
}


/* 工事場所 */
.kouzibasyo label{
	font-size: 14px;
	padding: 0 15px 0 0;
}

.kouzibasyo-right{
	flex: 1;
	width: 100%;
}

.kouzibasyo-right .input-address{
	flex: 1;
	width: 100%;
}
@media screen and (min-width:992px) {
	.kouzibasyo-right .input-address{
		margin: 0 0 0 5px;
		width: 190px;
	}
}

.select-city{
	flex: 1;
	margin: 0 0 5px 0;
//	width: 190px;
}
@media screen and (min-width:992px) {
	.select-city{
		margin: 0;
	}
}


/* 工事日 */
.kouzibi{
	margin: 0 auto 30px 0;
}

.kouzibi label{
	font-size: 14px;
	padding: 0 15px 0 0;
}

.input-calendar{
	width: 220px;
}

.cal{
	position: absolute;
	margin: -33px 0 0 190px;
}

.redio-situation{
	padding: 8px 0 0 0;
	width: 190px;
}
@media screen and (min-width:992px) {
	.redio-situation{
		width: 100%;
	}
}

.redio-ampm{
	border-bottom: 1px solid #ddd;
	padding: 5px 0 0;
	width: 400px;
}
@media screen and (min-width:992px) {
	.redio-ampm{
		border-bottom: 0;
		padding: 8px 0 0 10px;
	}
}


/* ガス証明発行依頼者 */
.hakkouiraisya{
	margin: 0 auto 3.061vw;
}
@media screen and (min-width:992px) {
	.hakkouiraisya{
		margin: 0 auto 30px 0;
	}
}

.hakkouiraisya label{
	font-size: 14px;
	padding: 0 15px 0 0;
}


/* 施工会社 */
.sekougaisya{
	margin: 0 auto 3.061vw;
}
@media screen and (min-width:992px) {
	.sekougaisya{
		margin: 0 auto 30px 0;
	}
}

.sekougaisya label{
	font-size: 14px;
	padding: 0 15px 0 0;
}


/* 工事名称 */
.koujimeisyou{
	margin: 0 auto 3.061vw;
}
@media screen and (min-width:992px) {
	.koujimeisyou{
		margin: 0 auto 30px 0;
	}
}


/* 工事の内容 */
.koujinaiyou{
	margin: 0 auto 3.061vw;
}
@media screen and (min-width:992px) {
	.koujinaiyou{
		margin: 0 auto 30px 0;
	}
}

.koujinaiyou label{
	font-size: 14px;
	padding: 0 15px 0 0;
}


/* 工事の内容 共通 */
.kussaku-input{
	width: 50%;
}
@media screen and (min-width:768px) {
	.kussaku-input{
		width: 80%;
	}
}
@media screen and (min-width:992px) {
	.kussaku-input{
		width: 200px;
	}
}

span.kussaku-first{
	font-size: 14px;
	margin-right: 10px;
}

span.kussaku-end{
	font-size: 14px;
	margin-left: 10px;
}

.ml66{
	margin-left: 66px;
}


/* 工事の内容 上下水道工事他 */
.jyougesuidou-check{
	padding: 5px 0 0 0;
}


/* 工事の内容 排水管工事 */
.haisuikan-right{
	flex:1;
	width: 100%;
}

label.haisuikan-label{
	padding: 9px 15px 0 0;
}

.haisuikan-line{
	margin: 0 0 10px;
}

.haisuikan-shikisetsu .check-area{
	margin-right: 0;
}
.haisuikan-shikisetsutorikae .check-area{
	margin-right: 0;
}
.haisuikan-shikisetsutorikae .check-area label{
	padding: 0;
} 

.haisuikan-shikisetsu,
.haisuikan-shikisetsutorikae{
	width:auto;
}
@media screen and (min-width:992px) {
	.haisuikan-shikisetsu,
	.haisuikan-shikisetsutorikae{
		width:110px;
	}
}

/* 工事の内容 下水本管工事 */
.gesuikan-right{
	flex:1;
	width: 100%;
}

.gesuikan-line{
	margin: 0 0 10px;
}

.gesuikan-shikisetsu,
.gesuikan-shikisetsutorikae,
.gesuikan-sonota{
	width:auto;
}
@media screen and (min-width:992px) {
	.gesuikan-shikisetsu,
	.gesuikan-shikisetsutorikae,
	.gesuikan-sonota{
		width:110px;
	}
}

.gesuikan-shikisetsu .check-area{
	margin-right: 0;
}
.gesuikan-shikisetsutorikae .check-area{
	margin-right: 0;
}
.gesuikan-sonota .check-area{
	margin-right: 0;
}

.gesuikan-shikisetsutorikae.check-area label{
	padding: 0;
}


/* 工事の内容 側溝工事 */
.sokkou-line{
	margin: 0 0 10px;
}

.sokkoukouji-right{
	flex:1;
}

.sokkou-sonota{
	width:110px;
}

.sokkou-fukasa label{
	font-size: 14px;
	padding: 0 0 0 0;
}

.sokkou-L,
.sokkou-U{
	width:auto;
}
@media screen and (min-width:992px) {
	.sokkou-L,
	.sokkou-U{
		width:110px;
	}
}

.sokkou-fukasa{
	width:110px;
}

label.sokkou-douro_label{
	padding: 0;
}

.sokkou-line input.sokkou-douro_input{
	margin-left: auto;
	float: none;
}

.douro-check-area{
	padding: 0;
	margin: 0 10px 0 0;
}
@media screen and (min-width:768px) {
	.douro-check-area{
		margin: 0 15px 0 0;
	}
}
@media screen and (min-width:992px) {
	.douro-check-area{
		min-height: 1.3rem;
		padding-left: 1.3em;
		margin: 0 5px 0 0;
	}
}


/* 工事の内容 舗装工事 拡幅 */
.hosou-line{
	margin: 0 0 10px;
}

.hosou-sessaku,
.hosou-kussaku,
.hosou-sonota{
	width:auto;
}
@media screen and (min-width:992px) {
	.hosou-sessaku,
	.hosou-kussaku,
	.hosou-sonota{
		width:110px;
	}
}


/* 工事の内容 道路拡幅工事 */
.hosou-kakuhuku{
	width:110px;
}

.hosou-kakuhuku{
	padding: 6px 0 0;
}

.hosou-kakuhuku label{
	font-size: 14px;
	padding: 0 0 0 0;
}


/* 工事の内容 交差点 */
.kousaten-line{
	margin: 0 0 10px;
}


/* 工事の内容 ガードレール */
.guardrail-check{
	padding: 5px 0 0 0;
}


/* 工事の内容 設置工事 */
.settchi-kussaku{
	width:115px;
}


/* 工事の内容 */
.tempsyorui{
	margin: 0 auto 3.061vw;
}
@media screen and (min-width:992px) {
	.tempsyorui{
		margin: 0 auto 30px 0;
	}
}


/* 添付書類 地図 */
.map-input{
	margin: 0 0 5px 0;
	width: 170px;
}
@media screen and (min-width:992px) {
	.map-input{
		margin: 0;
		width: 170px;
	}
}

.tempsyorui label {
		font-size: 14px;
		padding: 0 15px 0 0;
}

.map-upload{
	margin: 0;
	width: 170px;
}
@media screen and (min-width:992px) {
	.map-upload{
		margin: 0 0 0 30px;
		width: 170px;
	}
}

.btn-input{
		color: #fff;
		background-color: #7190a0;
		border-color: #7190a0;
}

.btn-input:hover{
		color: #fff;
		background-color: #4d616c;
		border-color: #4d616c;
}

.btn-submit{
	background-color: #00b0f0;
	border-color: #00b0f0;
	width: 100%;
}
.btn-submit:hover{
	background-color: #005a7b;
	border-color: #005a7b;
	width: 100%;
}

label.multiple-lines-map{
	padding: 10px 15px 0 0;
}
@media screen and (min-width:992px) {
	label.multiple-lines-map{
		padding: 0;
	}
}

.map-submit{
	padding: 5.04vw 0;
}
@media screen and (min-width:992px) {
	.map-submit{
		padding: 50px 0;
	}
}

#label{
	font-size:24px;
}
h2 {
	color: #787878;
	font-size: 3.061vw;
	font-weight: 100;
	line-height: 1em;
	text-align: center;
	margin-bottom: 2.551vw;
}
@media screen and (min-width:992px) {
	h2 {
		font-size: 2.333vw;
		margin-bottom: 2.083vw;
	}
}
@media screen and (min-width:1200px) {
	h2 {
		font-size: 28px;
		margin-bottom: 25px;
	}
}
@media screen and (max-width: 1024px) { 
	.container{ 
		width:100%;
	}
}
@media screen and (max-width: 896px) { 
	.container{ 
		width:100%;
	}
}
@media screen and (max-width: 480px) { 

	.container{ 
		width:100%;
	}
}


/* header-nav */
.header-nav{
	background-color: #fff;
	box-shadow: 0 10px 10px rgb(0 0 0 / 10%);
}

/* navbar-brand */
.navbar-brand img{
	width: 36vw;
}
@media screen and (min-width:992px) {
	.navbar-brand img{
		width:22.5vw;
	}
}
@media screen and (min-width:1200px) {
	.navbar-brand img{
		width:270px;
	}
}

/* 共通 row */
.syoumeisyo-main-row {
	margin: 60px 0 0 0px;
}

/* syoumeisyo-main-left */
.syoumeisyo-main-left{
	background-color: #f7f7f7;
	padding: 21px 0 0 0;
	width: 250px;
}

.syoumeisyo-main-left ul{
	list-style-type: none;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}

.syoumeisyo-main-left ul li{
	border-bottom:1px solid #efefef;
	text-align: left;
	padding: 15px 50px;
}

.syoumeisyo-main-left ul li a{
	color: #787878;
	text-decoration: none;
}

.syoumeisyo-main-left ul li a.current{
	color: #00b0f0;
}

.syoumeisyo-main-left-logo{
	text-align: center;
	padding: 0 0 50px;
	width: 100%;
}


/* syoumeisyo-main-right */
/* 入力列（右列）の共通 */
.syoumeisyo-main-right{
		padding: 4.082vw 2vw 0;
}
@media screen and (min-width:992px) {
	.syoumeisyo-main-right{
		padding: 3.333vw 0 0 4.583vw;
	}
}
@media screen and (min-width:1200px) {
	.syoumeisyo-main-right{
		padding: 40px 0 0 55px;
	}
}

.syoumeisyo-main-right-inner{
	margin: 0 auto;
	width: 98%;
}
@media screen and (min-width:992px) {
	.syoumeisyo-main-right-inner{
		margin: 0 auto 0 0;
		max-width: 620px;
		width: 80%;
	}
}


/* 入力列（右列）の共通のh2 */
.syoumeisyo-main-right h2{
		color: #000;
		font-size: 3.061vw;
		text-align: left;
		margin: 0 0 3.061vw 0;
	}
@media screen and (min-width:992px) {
	.syoumeisyo-main-right h2{
		font-size: 2vw;
		margin: 0 0 2.5vw 0;
	}
}
@media screen and (min-width:1200px) {
	.syoumeisyo-main-right h2{
		font-size: 24px;
		margin: 0 0 30px 0;
	}
}

/* 各種帳票類ダウンロード */
.report-download .lead{
	font-size: 1.4px;
	margin: 0;
}
@media screen and (min-width:992px) {
	.report-download .lead{
		font-size: 16px;
	}
}

.excel-link,
.pdf-link{
	text-align: center;
	text-decoration: none;
}
.excel-link div,
.pdf-link div{
	color: #000;
	font-size: 1.633vw;
}
@media screen and (min-width:992px) {
	.excel-link div,
	.pdf-link div{
		font-size: 16px;
	}
}

.syoumeisyo-download{
	margin: 0;
	padding: 50px 0;
	max-width: 380px;;
}
@media screen and (min-width:992px) {
	.syoumeisyo-download{
		margin: 0 0 210px;
	}
}

.syoumeisyo-area{
	margin: 0 0 50px;
}

#label{
	font-size:24px;
}
h2 {
	color: #787878;
	font-size: 3.061vw;
	font-weight: 100;
	line-height: 1em;
	text-align: center;
	margin-bottom: 2.551vw;
}
@media screen and (min-width:992px) {
	h2 {
		font-size: 2.333vw;
		margin-bottom: 2.083vw;
	}
}
@media screen and (min-width:1200px) {
	h2 {
		font-size: 28px;
		margin-bottom: 25px;
	}
}
@media screen and (max-width: 1024px) { 
	.container{ 
		width:100%;
	}
}
@media screen and (max-width: 896px) { 
	.container{ 
		width:100%;
	}
}
@media screen and (max-width: 480px) { 

	.container{ 
		width:100%;
	}
}


/* header-nav */
.header-nav{
	background-color: #fff;
	box-shadow: 0 10px 10px rgb(0 0 0 / 10%);
}

/* navbar-brand */
.navbar-brand img{
	width: 36vw;
}
@media screen and (min-width:992px) {
	.navbar-brand img{
		width:22.5vw;
	}
}
@media screen and (min-width:1200px) {
	.navbar-brand img{
		width:270px;
	}
}

/* 共通 row */
.syoumeisyo-main-row {
	margin: 60px 0 0 0px;
}

/* 共通 ラジオボタンの色 */
.form-check-input:checked {
		background-color: #00b0f0;
		border-color: #00b0f0;
}

/* 共通 小項目左のタイトル */
.syoumeisyo-main-right-inner-label{
	width: 135px;
}

/* 共通 小項目左のタイトル 複数行 */
.syoumeisyo-main-right label.multiple-lines{
 padding: 10px 15px 0 0;
}

/* 共通 各小項目の行 */
.input-line20{
	margin: 0 0 20px;
}

/* 共通 チェックボックス */
.check-area{
	min-height: 1.5rem;
	padding-left: 1.5em;
	margin-bottom: 0;
}

/* 共通 inputを最大幅まで伸ばす */
.input-large{
	flex: 1;
	width: 100%;
}

/* syoumeisyo-main-left */
.syoumeisyo-main-left{
	background-color: #f7f7f7;
	padding: 21px 0 0 0;
	width: 250px;
}

.syoumeisyo-main-left ul{
	list-style-type: none;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}

.syoumeisyo-main-left ul li{
	border-bottom:1px solid #efefef;
	text-align: left;
	padding: 15px 50px;
}

.syoumeisyo-main-left ul li a{
	color: #787878;
	text-decoration: none;
}

.syoumeisyo-main-left ul li a.current{
	color: #00b0f0;
}

.syoumeisyo-main-left-logo{
	text-align: center;
	padding: 0 0 50px;
	width: 100%;
}


/* syoumeisyo-main-right */
/* 入力列（右列）の共通 */
.syoumeisyo-main-right{
		padding: 4.082vw 2vw 0;
}
@media screen and (min-width:992px) {
	.syoumeisyo-main-right{
		padding: 3.333vw 0 0 4.583vw;
	}
}
@media screen and (min-width:1200px) {
	.syoumeisyo-main-right{
		padding: 40px 0 0 55px;
	}
}

.syoumeisyo-main-right-inner{
	margin: 0 auto;
	width: 98%;
}
@media screen and (min-width:992px) {
	.syoumeisyo-main-right-inner{
		margin: 0 auto 0 0;
		max-width: 620px;
		width: 80%;
	}
}


/* 入力列（右列）の共通のh2 */
.syoumeisyo-main-right h2{
		color: #000;
		font-size: 3.061vw;
		text-align: left;
		margin: 0 0 3.061vw 0;
	}
@media screen and (min-width:992px) {
	.syoumeisyo-main-right h2{
		font-size: 2vw;
		margin: 0 0 2.5vw 0;
	}
}
@media screen and (min-width:1200px) {
	.syoumeisyo-main-right h2{
		font-size: 28px;
		margin: 0 0 30px 0;
	}
}


/* 入力列（右列）の共通のh3 */
.syoumeisyo-main-right h3{
	font-size: 2.857vw;
	padding: 0.51vw 1.02vw;
}
@media screen and (min-width:992px) {
	.syoumeisyo-main-right h3{
		font-size: 1.837vw;
		padding: 0.51vw 1.02vw;
	}
}
@media screen and (min-width:1200px) {
	.syoumeisyo-main-right h3{
		font-size: 20px;
		padding: 5px 15px;
	}
}


/* 着工予定連絡 */
.construction-schedule{
		margin: 0 auto 54.082vw 0;
		max-width: 620px;
	}
@media screen and (min-width:992px) {
	.construction-schedule{
		margin: 0 auto 530px 0;
	}
}

.construction-schedule .lead{
	font-size: 14px;
	padding: 10px 0 10px;
}
@media screen and (min-width:992px) {
	.construction-schedule .lead{
		font-size: 16px;
	}
}

.construction-cal{
	position: absolute;
	margin: -33px 0 0 89.344vw;
}
@media screen and (min-width:620px) {
	.construction-cal{
		margin: -33px 0 0 565px;
	}
}

.btn-submit{
	background-color: #00b0f0;
	border-color: #00b0f0;
	width: 100%;
}
.btn-submit:hover{
	background-color: #005a7b;
	border-color: #005a7b;
	width: 100%;
}

