@import url(https://fonts.googleapis.com/css?family=Open+Sans);

body{
  width:100%;
  margin:0;
}
#estimateconatiner{
  max-width:1920px;
  width:100%;
  background:#F0F8FF;
}
#estimateconatiner p.chuui{
    font-size: .5ex;
    color: blue;
    font-weight: 900;
    margin: 10px;
    background: yellow;
    padding-left: 10px;
}
.mitsumori-block{
  max-width:1200px;
  width:100%;
  margin:auto;
}
.mitsumori-block dl{
  display: flex;
  flex-wrap: wrap;
  width:100%;
  margin:auto;
}
.mitsumori-block dt{
  width: calc(30% - (5px*2));
    background: #e5e5e5;
	padding: 5px;
	display: flex;
	align-items: center;
	font-weight:600;
}
.mitsumori-block dt:hover{
	background: #eee;
}
.mitsumori-block dd{
  width:calc(70% - (5px * 2) );
  background:#eee;
  padding:5px;
  margin:0;
}

.mitsumori-block dt,
.mitsumori-block dd{
	border-bottom:1px solid #ccc;
}
.mitsumori-block dd dl dd{
	border-bottom:none;
}
.mitsumori-block dt.sennasi,
.mitsumori-block dd.sennasi{
	border-bottom:none;
}

.mitsumori-block dl dd ul{
  margin:0;
  padding:0;
  list-style:none;
}
.mitsumori-block dl dd ul li{
	margin-bottom:10px;
	margin-top:10px;
}
.mitsumori-block dl dd ul li.yoko{
  display:inline-block;
  margin-right:10px;
}
.mitsumori-block dd dl dt{
  width:0%;
  display:none;
}
.mitsumori-block dd dl dd{
  width:100%;
}
#estimateconatiner input,
#estimateconatiner select{
  font-size:16px;
  border:1px solid #eee;
	margin:2px 0 2px;
	letter-spacing: 1px;
}
#estimateconatiner select,
#estimateconatiner input[type="text"],
#estimateconatiner input[type="email"],
#estimateconatiner input[type="tel"],
#estimateconatiner input[type="number"]{
	padding:5px;
	width:180px;
}

#estimateconatiner input[name="text-500"],
#estimateconatiner input[name="text-501"],
#estimateconatiner input[name="text-502"],
#estimateconatiner input[name="text-503"]{
	width:90%;
	box-sizing:border-box;
}

#estimateconatiner input[type="number"],
#estimateconatiner input[type="date"]{
	background:#fff;
}
#estimateconatiner input[name="date-681"],
#estimateconatiner input[name="date-682"]{
	width:140px;
}

#estimateconatiner input[type="email"],
#estimateconatiner input[type="tel"],
#estimateconatiner input[name="dantai"]{
	width:220px;
}

#estimateconatiner input[name="basho"]{
  width:100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#estimateconatiner span.wpcf7-form-control-wrap.acceptance-997{
	margin: 10px 5px 0px;
    display: block;
}

#estimateconatiner select.timeselect{
	width:60px;
	font-size:16px;
	background:#fff;
}

span.select-wrap {
  position: relative;
  width: 250px;
  margin: 0;
  padding: 0;
}

.CFBox{
	display:flex;
	flex-wrap:wrap;
}

.left50{
	width:50%;
	display: flex;
    align-items: center;
}
.right50{
	width:50%;
}


.left60{
	width:60%;
	display: flex;
    align-items: center;
}
.right40{
	width:40%;
}

span.select-wrap::after {
    content: "";
    pointer-events: none;
    position: absolute;
    display: block;
    width: .5em;
    height: .5em;
    top: 50%;
    right: 8px;
    /* margin-top: -3px; */
    border-bottom: 2px solid #555;
    border-right: 2px solid #555;
    transform: rotate(
45deg
) translateY(-50%);
    transform-origin: 50% 0;
    box-sizing: border-box;
}

span.date-wrap {
  position: relative;
  width: 250px;
  margin: 0;
  padding: 0;
}
span.date-wrap::after {
	content: "\f073";
	  font-family: "Font Awesome 5 Free";
  font-weight: 900;
    pointer-events: none;
    position: absolute;
    display: block;
    width: .5em;
    height: .5em;
    top: 10%;
    right:19px;
    /* margin-top: -3px; */
    border-bottom: 2px solid #555;
    border-right: 2px solid #555;
    box-sizing: border-box;
}
span.ninzu-wrap {
  position: relative;
  width: 250px;
  margin: 0;
  padding: 0;
}
span.ninzu-wrap::after {
	content: "名";
  font-weight: 900;
    pointer-events: none;
    position: absolute;
    display: block;
    top: 10%;
    right:19px;
    /* margin-top: -3px; */
    box-sizing: border-box;
}
span.ryoukin-wrap {
  position: relative;
  width: 250px;
  margin: 0;
  padding: 0;
}
span.ryoukin-wrap::after {
	content: "円";
  font-weight: 900;
    pointer-events: none;
    position: absolute;
    display: block;
    top: 10%;
    right:19px;
    /* margin-top: -3px; */
    box-sizing: border-box;
}

@media screen and (max-width: 640px) {
  .mitsumori-block dt,
  .mitsumori-block dd{
		width:100%;
		padding:2px;
		border-bottom:none;
  }
  #estimateconatiner input[name="number"]{
    width:30%;
	}
	.mitsumori-block dt{
		height:30px;
		font-weight:600;
		pointer-events: none;
		padding:5px;
	}
	.mitsumori-block dt.tatenasi{
		height:0px;
		padding:0px;
	}
}


/*Checkboxes styles*/
#estimateconatiner input[type="checkbox"] { display: none; }

#estimateconatiner input[type="checkbox"] + label {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 20px;
  font: 14px/20px 'Open Sans', Arial, sans-serif;
  color: #000;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

#estimateconatiner input[type="checkbox"] + label:last-child { margin-bottom: 0; padding-bottom:2px; }

#estimateconatiner input[type="checkbox"] + label:before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  border: 1px solid #555;
  position: absolute;
  left: 0;
  top: 0;
  opacity: .6;
  -webkit-transition: all .12s, border-color .08s;
  transition: all .12s, border-color .08s;
}

#estimateconatiner input[type="checkbox"]:checked + label:before {
  width: 10px;
  top: -5px;
  left: 5px;
  border-radius: 0;
  border: 2px solid #005FFF;
  opacity: 1;
  border-top-color: transparent;
  border-left-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* チェックボックス */
.wpcf7 #estimateconatiner input[type=checkbox] {
  display: none;
}
.wpcf7 #estimateconatiner input[type=checkbox] + span {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 20px;
  font: 14px/20px 'Open Sans', Arial, sans-serif;
  color: #000;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
.wpcf7 #estimateconatiner input[type=checkbox] + span::before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  border: 1px solid #555;
  position: absolute;
  left: 0;
  top: 5px;
  opacity: .6;
  -webkit-transition: all .12s, border-color .08s;
  transition: all .12s, border-color .08s;
}

.wpcf7 #estimateconatiner input[type=checkbox]:checked + span::before {
  width: 10px;
  top: 1px;
  left: 5px;
  border-radius: 0;
  border: 2px solid #005FFF;
  opacity: 1;
  border-top-color: transparent;
  border-left-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#estimateconatiner input[type="checkbox"] + span:last-child { margin-bottom: 0; padding-top:5px;padding-bottom:5px;margin-left: 5px;margin-top: 5px; }

#estimateconatiner .wpcf7-list-item{
	margin: 0;
}
#estimateconatiner span.wpcf7-form-control.wpcf7-checkbox{
	background-color:inherit;
	display: flex;
    align-items: center;
}

/* セレクト */
.wpcf7-form-control.wpcf7-select{
	background:#fff;
}


.wpcf7-form-control{
	background:#fff;
}


.wpcf7 textarea {
    background-color: #fff;
    color: #000;
    width: 90%;
    height: auto;
	font-size: 16px;
	border:1px solid #eee;
}


#estimateconatiner .wpcf7-form-control.wpcf7-submit{
	width:80%;
	margin:auto;
	font-size:20px;
	padding:10px 5px;
	background:#AA0000;
	color:#fff;
	border-radius:20px;
}
#estimateconatiner input[type="submit"]:disabled{
	background:#AA0000;
	color:#fff;
		border-radius:20px;
	opacity:.6;
}
	
@media screen and (max-width: 640px) {
	#estimateconatiner .wpcf7-form-control.wpcf7-submit{
		width:90%;
		margin:auto;
	}
}

#estimateconatiner span.require{
	font-size: 10px;
    padding: 5px;
    background: #ff9393;
    color: #fff;
    border-radius: 2px;
    margin-right: 5px;
    position: relative;
	margin-left: 5px;
}

#estimateconatiner span.optional{
	font-size: 10px;
    padding: 5px;
    background: #93c9ff;
    color: #fff;
    border-radius: 2px;
    margin-right: 5px;
    position: relative;
    margin-left: 5px;
}



#estimateconatiner h4 {
    font-size: 1.15em;
	margin: 2rem 1rem 1rem;
}

.kinyuhouhou{
	font-size:12px;
	color:#666;
	padding-left:1em;
}

#estimateconatiner ::placeholder{
  color: rgba(0,0,0,0.25);
	font-weight:bold;
	font-size:14px;
}


/* ラジオボタン */
.wpcf7 #estimateconatiner input[type=radio] {
  display: none;
}
.wpcf7 #estimateconatiner input[type=radio] + span {
  cursor: pointer;
  position: relative;
  margin: 0; 
  padding: 0 1em 0 1.8em;
  font-size: inherit;
  box-sizing: border-box;
  transition: opacity .25s ease;
}
.wpcf7 #estimateconatiner input[type=radio] + span::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  border: 1px solid #ababab;
  border-radius: 50%;
  background-color: transparent;
  box-sizing: border-box;
  transition: opacity .25s ease;
}
.wpcf7 #estimateconatiner input[type=radio] + span::after {
  content: "";
  opacity: 0;
  display: block;
  position: absolute;
  top: -0.1em;
  left: 0.5em;
  width: 0.3em;
  height: .85em;
  border-bottom: 2px solid #005FFF;
  border-right: 2px solid #005FFF;
  box-sizing: border-box;
  transform: rotate(40deg);
  transition: opacity .25s ease;
  z-index: 1;
}
.wpcf7 #estimateconatiner input[type=radio]:checked + span {
  color: inherit;
  transition: opacity .25s ease;
}
.wpcf7 #estimateconatiner input[type=radio]:checked + span::after {
  opacity: 1;
  transition: opacity .25s ease;
}

#estimateconatiner span.wpcf7-form-control.wpcf7-radio{
	background-color:inherit;
    align-items: center;
}

span.wpcf7-form-control{
	display:flex;
}

span.wpcf7-form-control#wrap{
	display:flex;
	flex-wrap:wrap;
}


@media screen and (max-width: 640px) {
span.wpcf7-form-control#wrap span.wpcf7-list-item {
		margin-bottom: .5em; 
	}
	
	.wpcf7 #estimateconatiner input[type=radio] + span{
		margin-left:.5em;
	}
}